Upload initial implementation for wrt support 64/147564/7
authorYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 5 Sep 2017 02:03:16 +0000 (11:03 +0900)
committerSungsik Han <ss440.han@samsung.com>
Tue, 12 Sep 2017 04:50:43 +0000 (04:50 +0000)
This uploads initial components such as launcher, installer,
extension, app_repos, and sample apps.

Note that they are implementations, excepting wrt core functionality.

Change-Id: I4a56305ca87d0c4b4df263aa9b1ce4fa084f00e6
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
704 files changed:
wrt/wrt_support/apps_repo/database.json [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/config.xml [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/css/button.css [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/css/style.css [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/font/TizenSansRegular.ttf [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/icon.png [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/image/bg.jpg [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/index.html [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/main.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/package.json [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/src/extension_manager.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/src/extension_server.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/src/main.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/extensions_settings/src/was_key_event_handler.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/assets/js/was_key_event_handler.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/config.xml [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/css/style.css [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/icon.png [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/images/bg.jpg [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/index.html [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/js/installer.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/installer/js/restServer.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/assets/js/three.min.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/assets/js/was_key_event_handler.js [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/assets/textures/crate.gif [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/config.xml [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/icon.png [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/index.html [new file with mode: 0644]
wrt/wrt_support/apps_repo/webgl/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/alarm/AlarmAbsolute.js [new file with mode: 0644]
wrt/wrt_support/extensions_repo/alarm/AlarmRelative.js [new file with mode: 0644]
wrt/wrt_support/extensions_repo/alarm/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/banner_slide/banner_slide.js [new file with mode: 0644]
wrt/wrt_support/extensions_repo/banner_slide/deep-minified.html [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/img/a17.png [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/img/gear_s2.jpg [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/img/loading.gif [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/img/soscon.jpg [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/img/tizen_z3.jpg [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/js/jquery-1.9.1.min.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.debug.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.min.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.min.js.bak [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.mini.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/no-jquery.html [new file with mode: 0755]
wrt/wrt_support/extensions_repo/banner_slide/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/banner_slide/with-jquery.html [new file with mode: 0755]
wrt/wrt_support/extensions_repo/chrome_installer/extractor.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/chrome_installer/installmanager.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/chrome_installer/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/chrome_installer/parser.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/iframe_banner_ads/IFrameBannerAds.htm [new file with mode: 0644]
wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_1.htm [new file with mode: 0644]
wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_2.htm [new file with mode: 0644]
wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_3.htm [new file with mode: 0644]
wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_style.css [new file with mode: 0644]
wrt/wrt_support/extensions_repo/iframe_banner_ads/iframe_banner_ads.js [new file with mode: 0644]
wrt/wrt_support/extensions_repo/iframe_banner_ads/image/gear_s2.jpg [new file with mode: 0755]
wrt/wrt_support/extensions_repo/iframe_banner_ads/image/soscon.jpg [new file with mode: 0755]
wrt/wrt_support/extensions_repo/iframe_banner_ads/image/tizen_z3.jpg [new file with mode: 0755]
wrt/wrt_support/extensions_repo/iframe_banner_ads/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/launcher_new/launcher_new.js [new file with mode: 0644]
wrt/wrt_support/extensions_repo/launcher_new/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/ticker_test/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/ticker_test/ticker_test.js [new file with mode: 0644]
wrt/wrt_support/extensions_repo/webos_installer/extractor.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/webos_installer/installmanager.js [new file with mode: 0755]
wrt/wrt_support/extensions_repo/webos_installer/package.json [new file with mode: 0644]
wrt/wrt_support/extensions_repo/webos_installer/parser.js [new file with mode: 0755]
wrt/wrt_support/extensions_settings/config.xml [new file with mode: 0644]
wrt/wrt_support/extensions_settings/css/button.css [new file with mode: 0644]
wrt/wrt_support/extensions_settings/css/style.css [new file with mode: 0644]
wrt/wrt_support/extensions_settings/font/TizenSansRegular.ttf [new file with mode: 0644]
wrt/wrt_support/extensions_settings/icon.png [new file with mode: 0644]
wrt/wrt_support/extensions_settings/image/bg.jpg [new file with mode: 0644]
wrt/wrt_support/extensions_settings/index.html [new file with mode: 0755]
wrt/wrt_support/extensions_settings/main.js [new file with mode: 0644]
wrt/wrt_support/extensions_settings/package.json [new file with mode: 0755]
wrt/wrt_support/extensions_settings/src/extension_manager.js [new file with mode: 0755]
wrt/wrt_support/extensions_settings/src/extension_server.js [new file with mode: 0755]
wrt/wrt_support/extensions_settings/src/main.js [new file with mode: 0755]
wrt/wrt_support/extensions_settings/src/was_key_event_handler.js [new file with mode: 0644]
wrt/wrt_support/installer/database/db/db_installer_extension.json [new file with mode: 0755]
wrt/wrt_support/installer/database/installer_extension.js [new file with mode: 0755]
wrt/wrt_support/installer/js/OWR_InstallerManager/index.js [new file with mode: 0755]
wrt/wrt_support/installer/js/OWR_InstallerManager/package.json [new file with mode: 0755]
wrt/wrt_support/installer/js/database.js [new file with mode: 0755]
wrt/wrt_support/installer/js/extension/tizen/extractor.js [new file with mode: 0755]
wrt/wrt_support/installer/js/extension/tizen/installmanager.js [new file with mode: 0755]
wrt/wrt_support/installer/js/extension/tizen/packageManager.js [new file with mode: 0755]
wrt/wrt_support/installer/js/extension/tizen/parser.js [new file with mode: 0755]
wrt/wrt_support/installer/js/installManager.js [new file with mode: 0755]
wrt/wrt_support/installer/js/installer.js [new file with mode: 0755]
wrt/wrt_support/installer/js/packageManager.js [new file with mode: 0755]
wrt/wrt_support/installer/js/uninstallManager.js [new file with mode: 0755]
wrt/wrt_support/installer/manager.js [new file with mode: 0755]
wrt/wrt_support/installer/package.json [new file with mode: 0755]
wrt/wrt_support/sample/installer/assets/js/was_key_event_handler.js [new file with mode: 0644]
wrt/wrt_support/sample/installer/config.xml [new file with mode: 0644]
wrt/wrt_support/sample/installer/css/style.css [new file with mode: 0644]
wrt/wrt_support/sample/installer/icon.png [new file with mode: 0644]
wrt/wrt_support/sample/installer/images/bg.jpg [new file with mode: 0644]
wrt/wrt_support/sample/installer/index.html [new file with mode: 0644]
wrt/wrt_support/sample/installer/installer.wgt [new file with mode: 0644]
wrt/wrt_support/sample/installer/js/installer.js [new file with mode: 0755]
wrt/wrt_support/sample/installer/js/restServer.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/css/ie.css [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/css/launcher.css [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/css/reset.css [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/bar_bottom.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/bar_top.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/bar_top_link.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/trans_black.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/trans_white.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/window_buttons.gif [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/window_content.gif [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/gui/window_corner.gif [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_computer.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_disc.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_documents.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_drive.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_home.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_remote.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_music.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_network.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_page.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_photo.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_server.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_system.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_trash.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_vpn.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_computer.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_desktop.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_disc.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_drive.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_network.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_recycle.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_computer.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_disc.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_drive.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_network.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/icons/icon_uninstall.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/images/misc/album_cover.jpg [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/misc/firehost.png [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/images/misc/samsung.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/images/misc/samsung_small.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/images/misc/wallpaper.jpg [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/LICENSE.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/README.md [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/example.html [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-monitor.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-table.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/bin-metal.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/book-open-list.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/cassette.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/magnifier-zoom-actual-equal.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/receipt-text.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/shopping-basket.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/screenshot.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/jquery.contextmenu.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/jquery.contextmenu.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/context-menu/simplecontextmenu.jquery.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/assets/js/jquery.desktop.js [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/js/jquery.js [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/js/jquery.ui.js [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/js/launcher.js [new file with mode: 0755]
wrt/wrt_support/sample/launcher/assets/js/was_key_event_handler.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/backbone/.bower.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/backbone/LICENSE [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/backbone/backbone-min.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/backbone/backbone-min.map [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/backbone/backbone.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/backbone/bower.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/.bower.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/MIT-LICENSE.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/bower.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.min.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.min.map [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/jsonp.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/load.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/parseJSON.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/parseXML.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/script.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/var/nonce.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/var/rquery.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/xhr.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/attr.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/classes.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/prop.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/support.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/val.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/callbacks.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/core.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/access.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/init.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/parseHTML.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/ready.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/var/rsingleTag.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/addGetHookIf.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/curCSS.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/defaultDisplay.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/hiddenVisibleSelectors.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/support.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/swap.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/cssExpand.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/getStyles.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/isHidden.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/rmargin.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/rnumnonpx.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/data.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/Data.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/accepts.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/var/data_priv.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/var/data_user.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/deferred.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/deprecated.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/dimensions.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects/Tween.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects/animatedSelector.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/event.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/ajax.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/alias.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/support.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/exports/amd.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/exports/global.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/intro.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/jquery.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/_evalUrl.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/support.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/var/rcheckableType.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/offset.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/outro.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/queue.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/queue/delay.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector-native.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector-sizzle.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/serialize.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.min.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.min.map [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing/findFilter.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing/var/rneedsContext.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/arr.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/class2type.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/concat.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/hasOwn.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/indexOf.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/pnum.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/push.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/rnotwhite.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/slice.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/strundefined.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/support.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/toString.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/jquery/src/wrap.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/.bower.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/LICENSE [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/README.md [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/bower.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/underscore-min.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/underscore-min.map [new file with mode: 0644]
wrt/wrt_support/sample/launcher/bower_components/underscore/underscore.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/css/desktop.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/css/launcher.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/css/reset.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/db.json [new file with mode: 0644]
wrt/wrt_support/sample/launcher/index.html [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.cs-CZ.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.de-DE.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.en-CA.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.en-US.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.fr-FR.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.he-IL.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.hr-HR.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.hu-HU.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.it-IT.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.ja-JP.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.lt.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.ru-RU.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.sa-IN.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqx-all.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxangular.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxbulletchart.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxbuttongroup.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxbuttons.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxcalendar.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.annotations.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.api.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.core.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.rangeselector.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.waterfall.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxcheckbox.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxcolorpicker.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxcombobox.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxcomplexinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxcore.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdata.export.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdata.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdatatable.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdate.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdatetimeinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdocking.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdockinglayout.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdockpanel.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdragdrop.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdraw.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdropdownbutton.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxdropdownlist.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxeditor.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxexpander.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxfileupload.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxformattedinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgauge.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.aggregates.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.columnsreorder.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.columnsresize.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.edit.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.export.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.filter.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.grouping.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.pager.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.selection.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.sort.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.storage.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxknockout.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxlayout.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxlistbox.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxlistmenu.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxloader.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxmaskedinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxmenu.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxnavbar.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxnavigationbar.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxnotification.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxnumberinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxpanel.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxpasswordinput.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxpopover.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxprogressbar.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxradiobutton.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxrangeselector.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxrating.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxresponse.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxresponsivepanel.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxribbon.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxscheduler.api.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxscheduler.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxscrollbar.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxscrollview.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxslider.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxsplitter.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxswitchbutton.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtabs.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtagcloud.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtextarea.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtoolbar.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtooltip.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtouch.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtree.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtreegrid.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxtreemap.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxvalidator.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/jqxwindow.js [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backImage.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backgroundTop.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black_horizontal.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover_horizontal.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed_horizontal.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blueenergy.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkblue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluehover.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluepressed.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/black_gradient.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/blackbackground.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue_indeterminate.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_disabled.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_disabled.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue_indeterminate.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-hue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-saturation.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-hue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation-overlay.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_30_cccccc_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_50_5c5c5c_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_20_555555_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_0078a3_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_ffc73d_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_gloss-wave_25_333333_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_highlight-soft_80_eeeeee_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_25_000000_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_30_f58400_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_222222_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_4b8e0b_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_a83300_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_cccccc_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_ffffff_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkred_gradient.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/drag.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/dragcancel.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/error.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/filter.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-transparent.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-transparent.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-transparent.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-transparent.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-transparent.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-transparent.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/info.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-small_0_aaaaaa_40x40.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_15_444444_40x40.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_95_ffdc2e_40x40.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_glass_55_fbf5d0_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-hard_30_285c00_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_33_3a8104_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_50_4eb305_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_60_4ca20b_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_inset-soft_10_285c00_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_4eb305_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_72b42d_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_cd0a0a_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_ffffff_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-first.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-last.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_18_b81900_40x40.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_20_666666_40x40.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_flat_10_000000_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_f6f6f6_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_fdf5ce_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_65_ffffff_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_gloss-wave_35_f6a828_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_100_eeeeee_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_75_ffe45c_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_222222_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_228ef1_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ef8c08_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffd27a_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffffff_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader-small.gif [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader.gif [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/mail.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/menubutton.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right - Copy.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/multi-arrow.gif [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-down.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-first.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-last.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-left.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-right.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-up.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_aaaaaa_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_eeeeee_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_c0402a_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_eeeeee_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_100_f8f8f8_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_35_dddddd_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_60_eeeeee_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-hard_75_999999_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-soft_50_c9c9c9_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_3383bb_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_454545_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_70b2e1_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_999999_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_fbc856_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-lightblue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-yellow.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-blue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-lightblue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-yellow.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pointer.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_classic.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_darkblue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_shinyblack.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_summer.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_down.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_up.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_gradient.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-first.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-last.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_0_aaaaaa_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_55_fbec88_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_75_d0e5f5_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_85_dfeffc_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_95_fef1ec_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_gloss-wave_55_5c9ccc_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_fcfdfd_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_217bc0_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_2e83ff_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_469bdd_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_6da8d5_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_cd0a0a_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_d8e7f3_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_f9bd01_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_black.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_disabled.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_indeterminate.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_hover.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_normal.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_disabled.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_0_aaaaaa_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_75_ffffff_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_55_fbf9ee_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_65_ffffff_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_dadada_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_95_fef1ec_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_222222_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_2e83ff_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_454545_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_888888_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_cd0a0a_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortasc.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortascbutton.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdesc.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdescbutton.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortremove.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_disabled.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_hover.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_55_999999_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_75_aaaaaa_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_45_0078ae_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_55_f8da4e_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_75_79c9ec_1x400.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_45_e14f1c_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_50_6eac2c_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_75_2191c0_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_inset-hard_100_fcfdfd_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_0078ae_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_056b93_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_d8e7f3_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_e0fdff_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f5e175_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f7a50d_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_fcd113_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/stripes.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/success.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ReadMe.txt [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_diagonals-medium_20_d34d17_40x40.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_30_cccccc_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_50_5c5c5c_40x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_45_817865_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_90_fff9e5_500x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_highlight-soft_100_feeebd_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_inset-soft_30_ffffff_1x100.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_3d3d3d_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_bd7b00_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_d19405_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_eb990f_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ed9f26_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_fadc7a_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ffe180_256x240.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/tick.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/time.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_classic.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_darkblue.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_shinyblack.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_summer.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/warning.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_indeterminate_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_white.png [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.android.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.arctic.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.base.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.black.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.blackberry.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.bootstrap.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.classic.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.darkblue.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.energyblue.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.fresh.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.glacier.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.highcontrast.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.metro.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.metrodark.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.mobile.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.office.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.orange.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.shinyblack.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.summer.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-darkness.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-le-frog.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-lightness.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-overcast.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-redmond.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-smoothness.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-start.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-sunny.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.web.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.windowsphone.css [new file with mode: 0644]
wrt/wrt_support/sample/launcher/templates/launcher.html [new file with mode: 0644]
wrt/wrt_support/sample/launcher/templates/menu.html [new file with mode: 0644]
wrt/wrt_support/sample/launcher/templates/popover.html [new file with mode: 0644]
wrt/wrt_support/sample/launcher/templates/webapp.html [new file with mode: 0644]
wrt/wrt_support/sample/wgt/extensions_settings.wgt [new file with mode: 0644]
wrt/wrt_support/sample/wgt/icon/icon_default.png [new file with mode: 0644]
wrt/wrt_support/sample/wgt/icon/icon_extensions_settings.png [new file with mode: 0644]
wrt/wrt_support/sample/wgt/icon/icon_webgl.png [new file with mode: 0755]
wrt/wrt_support/sample/wgt/webgl.wgt [new file with mode: 0644]

diff --git a/wrt/wrt_support/apps_repo/database.json b/wrt/wrt_support/apps_repo/database.json
new file mode 100644 (file)
index 0000000..02c2359
--- /dev/null
@@ -0,0 +1 @@
+[{"app_id":"0123456789.ANYTHING","version":"1.0.0","content":"index.html","icon":"icon.png","name":"installer","type":"packaged","localeInfo":[{"locale":"default","name":"installer"}],"_id":"73dcc29053524fd3b6512061eccea2e1"},{"app_id":"0123456789.ANYTHING","version":"1.0.0","content":"index.html","icon":"icon.png","name":"webgl","type":"packaged","localeInfo":[{"locale":"default","name":"webgl"},{"locale":"en-us","name":"Web GL"},{"locale":"ko-kr","name":"웹 지엘"},{"locale":"jp-jp","name":"ウェブ GL"}],"_id":"9692aaf7360d4c09b4011a4bc0f2a521"},{"app_id":"0123456789.ANYTHING","version":"1.0.0","content":"index.html","icon":"icon.png","name":"extensions_settings","type":"packaged","localeInfo":[{"locale":"default","name":"extensions_settings"}],"_id":"00ddf6ddab574372b68a2b48db17f088"}]
\ No newline at end of file
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/config.xml b/wrt/wrt_support/apps_repo/extensions_settings/config.xml
new file mode 100644 (file)
index 0000000..1f836a9
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/Caph2TestSuite" version="1.0.0" viewmodes="maximized">
+    <tizen:application id="0123456789.ANYTHING" package="0123456789" required_version="2.2"/>
+    <access origin="*" subdomains="true"/>
+    <content src="index.html"/>
+    <feature name="http://tizen.org/feature/screen.size.all"/>
+    <icon src="icon.png"/>
+    <name>extensions_settings</name>
+</widget>
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/css/button.css b/wrt/wrt_support/apps_repo/extensions_settings/css/button.css
new file mode 100644 (file)
index 0000000..fd3c6fe
--- /dev/null
@@ -0,0 +1,698 @@
+/**
+ * Chunky 3D Web Buttons
+ *
+ * Inspiration was taken from:
+ * - http://www.premiumpixels.com/freebies/chunky-3d-webbuttons-psd/
+ */
+
+@font-face {
+  font-family: 'TizenSansRegular';
+  src: url('../font/TizenSansRegular.ttf');
+}
+/**
+ * Shadow
+ */
+a.button::before {
+    -webkit-border-radius: 3px;
+    -moz-border-radius: 3px;
+    -webkit-box-shadow: #959595 0 2px 5px;
+    -moz-box-shadow: #959595 0 2px 5px;
+    border-radius: 3px;
+    box-shadow: #959595 0 2px 5px;
+    content: "";
+    display: block;
+    height: 100%;
+    left: 0;
+    margin: 2px 2px 2px 2px;
+    padding: 2px 0 0;
+    position: absolute;
+    top: 0;
+    width: 100%; }
+    
+a.button:active::before { padding: 1px 0 0; }
+
+/**
+ * Grey
+ */
+a.button {
+    -moz-box-shadow: inset 0 0 0 1px #63ad0d;
+    -webkit-box-shadow: inset 0 0 0 1px #63ad0d;
+    -moz-border-radius: 3px;
+    -webkit-border-radius: 3px;
+    background: #eee;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#eee), to(#e2e2e2));
+    background: -moz-linear-gradient(#eee, #e2e2e2);
+    background: linear-gradient(#eee, #e2e2e2);
+    border: solid 1px #d0d0d0;
+    border-bottom: solid 3px #b2b1b1;
+    border-radius: 3px;
+    box-shadow: inset 0 0 0 1px #f5f5f5;
+    color: #555;
+    display: inline-block;
+    font: bold 11px TizenSansRegular;
+    /*font: bold 12px Arial, Helvetica, Clean, sans-serif;*/
+    padding: 10px 10px;
+    position: relative;
+    text-align: center;
+    text-decoration: none;
+    text-shadow: 0 1px 0 #fafafa; }
+    
+a.button:hover {
+    background: #e4e4e4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e4e4e4), to(#ededed));
+    background: -moz-linear-gradient(#e4e4e4, #ededed);
+    background: linear-gradient(#e4e4e4, #ededed);
+    border: solid 1px #c2c2c2;
+    border-bottom: solid 3px #b2b1b1;
+    box-shadow: inset 0 0 0 1px #efefef; }
+    
+a.button:active {
+    background: #dfdfdf;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dfdfdf), to(#e3e3e3));
+    background: -moz-linear-gradient(#dfdfdf, #e3e3e3);
+    background: linear-gradient(#dfdfdf, #e3e3e3);
+    border: solid 1px #959595;
+    box-shadow: inset 0 10px 15px 0 #c4c4c4;
+    top:2px;}
+
+/**
+ * Pink
+ */
+a.button.pink {
+    background: #f997b0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f997b0), to(#f56778));
+    background: -moz-linear-gradient(#f997b0, #f56778);
+    background: linear-gradient(#f997b0, #f56778);
+    border: solid 1px #ee8090;
+    border-bottom: solid 3px #cb5462;
+    box-shadow: inset 0 0 0 1px #fbc1d0;
+    color: #913944;
+    text-shadow: 0 1px 0 #f9a0ad; }
+    
+a.button.pink:hover {
+    background: #f57184;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f57184), to(#f78297));
+    background: -moz-linear-gradient(#f57184, #f78297);
+    background: linear-gradient(#f57184, #f78297);
+    border: solid 1px #e26272;
+    border-bottom: solid 3px #cb5462;
+    box-shadow: inset 0 0 0 1px #f9aab5; }
+    
+a.button.pink:active {
+    background: #f06a7c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f06a7c), to(#f56c7e));
+    background: -moz-linear-gradient(#f06a7c, #f56c7e);
+    background: linear-gradient(#f06a7c, #f56c7e);
+    border: solid 1px #a14753;
+    box-shadow: inset 0 10px 15px 0 #d45d6d; }
+    
+/**
+ * Blue
+ */
+a.button.blue {
+    background: #abe4f8;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#abe4f8), to(#74d0f4));
+    background: -moz-linear-gradient(#abe4f8, #74d0f4);
+    background: linear-gradient(#abe4f8, #74d0f4);
+    border: solid 1px #8cc5d9;
+    border-bottom: solid 3px #589cb6;
+    box-shadow: inset 0 0 0 1px #cdeffb;
+    color: #42788e;
+    text-shadow: 0 1px 0 #b6e6f9; }
+    
+a.button.blue:hover {
+    background: #80d4f5;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#80d4f5), to(#92dbf6));
+    background: -moz-linear-gradient(#80d4f5, #92dbf6);
+    background: linear-gradient(#80d4f5, #92dbf6);
+    border: solid 1px #79acbe;
+    border-bottom: solid 3px #589cb6;
+    box-shadow: inset 0 0 0 1px #b2e6f8; }
+    
+a.button.blue:active {
+    background: #89d2ee;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#89d2ee), to(#84cae6));
+    background: -moz-linear-gradient(#89d2ee, #84cae6);
+    background: linear-gradient(#89d2ee, #84cae6);
+    border: solid 1px #5c8d9f;
+    box-shadow: inset 0 10px 15px 0 #79b9d2; }
+    
+/**
+ * Green
+ */
+a.button.green {
+    background: #cae285;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#cae285), to(#a3cd5a));
+    background: -moz-linear-gradient(#cae285, #a3cd5a);
+    background: linear-gradient(#cae285, #a3cd5a);
+    border: solid 1px #aad063;
+    border-bottom: solid 3px #799545;
+    box-shadow: inset 0 0 0 1px #e0eeb6;
+    color: #5d7731;
+    text-shadow: 0 1px 0 #d0e5a4; }
+    
+a.button.green:hover {
+    background: #abd164;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#abd164), to(#b9d972));
+    background: -moz-linear-gradient(#abd164, #b9d972);
+    background: linear-gradient(#abd164, #b9d972);
+    border: solid 1px #98b85b;
+    border-bottom: solid 3px #799545;
+    box-shadow: inset 0 0 0 1px #cce3a1; }
+    
+a.button.green:active {
+    background: #a4cb5d;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#a4cb5d), to(#9ec45a));
+    background: -moz-linear-gradient(#a4cb5d, #9ec45a);
+    background: linear-gradient(#a4cb5d, #9ec45a);
+    border: solid 1px #6e883f;
+    box-shadow: inset 0 10px 15px 0 #90b352; }
+    
+/**
+ * Teal
+ */
+a.button.teal {
+    background: #b7f2f4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#b7f2f4), to(#81e8eb));
+    background: -moz-linear-gradient(#b7f2f4, #81e8eb);
+    background: linear-gradient(#b7f2f4, #81e8eb);
+    border: solid 1px #87d3d5;
+    border-bottom: solid 3px #4fa7aa;
+    box-shadow: inset 0 0 0 1px #d4f8f8;
+    color: #437b7d;
+    text-shadow: 0 1px 0 #bef3f5; }
+    
+a.button.teal:hover {
+    background: #8deaed;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#8deaed), to(#9fedf0));
+    background: -moz-linear-gradient(#8deaed, #9fedf0);
+    background: linear-gradient(#8deaed, #9fedf0);
+    border: solid 1px #79c5c7;
+    border-bottom: solid 3px #4fa7aa;
+    box-shadow: inset 0 0 0 1px #b9f2f5; }
+    
+a.button.teal:active {
+    background: #84e4e7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#84e4e7), to(#80dcdf));
+    background: -moz-linear-gradient(#84e4e7, #80dcdf);
+    background: linear-gradient(#84e4e7, #80dcdf);
+    border: solid 1px #58999b;
+    box-shadow: inset 0 10px 15px 0 #75c9cc; }
+    
+/**
+ * Black
+ */
+a.button.black {
+    background: #656565;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#656565), to(#444));
+    background: -moz-linear-gradient(#656565, #444);
+    background: linear-gradient(#656565, #444);
+    border: solid 1px #535353;
+    border-bottom: solid 3px #414141;
+    box-shadow: inset 0 0 0 1px #939393;
+    color: #fff;
+    text-shadow: 0 1px 0 #2f2f2f; }
+    
+a.button.black:hover {
+    background: #4c4c4c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#4c4c4c), to(#565656));
+    background: -moz-linear-gradient(#4c4c4c, #565656);
+    background: linear-gradient(#4c4c4c, #565656);
+    border: solid 1px #464646;
+    border-bottom: solid 3px #414141;
+    box-shadow: inset 0 0 0 1px #818181; }
+    
+a.button.black:active {
+    background: #474747;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#474747), to(#444));
+    background: -moz-linear-gradient(#474747, #444);
+    background: linear-gradient(#474747, #444);
+    border: solid 1px #2f2f2f;
+    box-shadow: inset 0 10px 15px 0 #3e3e3e; }
+    
+/**
+ * Dark Grey
+ */
+a.button.dark_grey {
+    background: #d1d1d1;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#d1d1d1), to(#afafaf));
+    background: -moz-linear-gradient(#d1d1d1, #afafaf);
+    background: linear-gradient(#d1d1d1, #afafaf);
+    border: solid 1px #b4b4b4;
+    border-bottom: solid 3px #878787;
+    box-shadow: inset 0 0 0 1px #e3e3e3;
+    color: #555;
+    text-shadow: 0 1px 0 #d6d6d6; }
+    
+a.button.dark_grey:hover {
+    background: #b7b7b7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#b7b7b7), to(#c2c2c2));
+    background: -moz-linear-gradient(#b7b7b7, #c2c2c2);
+    background: linear-gradient(#b7b7b7, #c2c2c2);
+    border: solid 1px #a2a2a2;
+    border-bottom: solid 3px #878787;
+    box-shadow: inset 0 0 0 1px #d4d4d4; }
+    
+a.button.dark_grey:active {
+    background: #afafaf;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#afafaf), to(#a9a9a9));
+    background: -moz-linear-gradient(#afafaf, #a9a9a9);
+    background: linear-gradient(#afafaf, #a9a9a9);
+    border: solid 1px #757575;
+    box-shadow: inset 0 10px 15px 0 #9a9a9a; }
+    
+/**
+ * Orange
+ */
+a.button.orange {
+    background: #feda71;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#feda71), to(#febe4d));
+    background: -moz-linear-gradient(#feda71, #febe4d);
+    background: linear-gradient(#feda71, #febe4d);
+    border: solid 1px #eab551;
+    border-bottom: solid 3px #b98a37;
+    box-shadow: inset 0 0 0 1px #fee9aa;
+    color: #996633;
+    text-shadow: 0 1px 0 #fedd9b; }
+    
+a.button.orange:hover {
+    background: #fec455;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fec455), to(#fecd61));
+    background: -moz-linear-gradient(#fec455, #fecd61);
+    background: linear-gradient(#fec455, #fecd61);
+    border: solid 1px #e6a93d;
+    border-bottom: solid 3px #b98a37;
+    box-shadow: inset 0 0 0 1px #fedb98; }
+    
+a.button.orange:active {
+    background: #f9bd4f;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f9bd4f), to(#f0b64d));
+    background: -moz-linear-gradient(#f9bd4f, #f0b64d);
+    background: linear-gradient(#f9bd4f, #f0b64d);
+    border: solid 1px #a77f35;
+    box-shadow: inset 0 10px 15px 0 #dba646; }
+    
+/**
+ * Purple
+ */
+a.button.purple {
+    background: #e8c4e4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e8c4e4), to(#d698d0));
+    background: -moz-linear-gradient(#e8c4e4, #d698d0);
+    background: linear-gradient(#e8c4e4, #d698d0);
+    border: solid 1px #da9fd4;
+    border-bottom: solid 3px #946890;
+    box-shadow: inset 0 0 0 1px #f2dcef;
+    color: #7b5777;
+    text-shadow: 0 1px 0 #eacae6; }
+    
+a.button.purple:hover {
+    background: #daa2d4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#daa2d4), to(#e0b1db));
+    background: -moz-linear-gradient(#daa2d4, #e0b1db);
+    background: linear-gradient(#daa2d4, #e0b1db);
+    border: solid 1px #ca91c4;
+    border-bottom: solid 3px #946890;
+    box-shadow: inset 0 0 0 1px #e9c7e6; }
+    
+a.button.purple:active {
+    background: #d49ace;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#d49ace), to(#cc94c6));
+    background: -moz-linear-gradient(#d49ace, #cc94c6);
+    background: linear-gradient(#d49ace, #cc94c6);
+    border: solid 1px #8e678a;
+    box-shadow: inset 0 10px 15px 0 #ba87b5; }
+    
+/**
+ * Blue Alt
+ */
+a.button.blue_alt {
+    background: #becbd6;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#becbd6), to(#8da5b7));
+    background: -moz-linear-gradient(#becbd6, #8da5b7);
+    background: linear-gradient(#becbd6, #8da5b7);
+    border: solid 1px #a1aeb7;
+    border-bottom: solid 3px #62727e;
+    box-shadow: inset 0 0 0 1px #d8e0e6;
+    color: #515f6a;
+    text-shadow: 0 1px 0 #c4d0da; }
+    
+a.button.blue_alt:hover {
+    background: #97adbd;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#97adbd), to(#a8bac8));
+    background: -moz-linear-gradient(#97adbd, #a8bac8);
+    background: linear-gradient(#97adbd, #a8bac8);
+    border: solid 1px #96a2ab;
+    border-bottom: solid 3px #62727e;
+    box-shadow: inset 0 0 0 1px #c0ced7; }
+    
+a.button.blue_alt:active {
+    background: #8fa6b6;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#8fa6b6), to(#8aa0b0));
+    background: -moz-linear-gradient(#8fa6b6, #8aa0b0);
+    background: linear-gradient(#8fa6b6, #8aa0b0);
+    border: solid 1px #606f7a;
+    box-shadow: inset 0 10px 15px 0 #7e92a1; }
+    
+/**
+ * Crisp
+ */
+a.button.crisp {
+    background: #c38b66;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#c38b66), to(#9d6741));
+    background: -moz-linear-gradient(#c38b66, #9d6741);
+    background: linear-gradient(#c38b66, #9d6741);
+    border: solid 1px #422213;
+    border-bottom: solid 3px #33180d;
+    box-shadow: inset 0 0 0 1px #b98c62;
+    color: #fff;
+    text-shadow: 0 1px 0 #7b502e; }
+    
+a.button.crisp:hover {
+    background: #9d6741;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#9d6741), to(#c38b66));
+    background: -moz-linear-gradient(#9d6741, #c38b66);
+    background: linear-gradient(#9d6741, #c38b66);
+    border: solid 1px #422213;
+    border-bottom: solid 3px #33180d;
+    box-shadow: inset 0 0 0 1px #b98c62; }
+    
+a.button.crisp:active {
+    background: #9d6741;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#9d6741), to(#c38b66));
+    background: -moz-linear-gradient(#9d6741, #c38b66);
+    background: linear-gradient(#9d6741, #c38b66);
+    border: solid 1px #422213;
+    box-shadow: inset 0 10px 15px 0 #7b502e; }
+    
+/**
+ * Forrst - Special Edition
+ */
+a.button.forrst {
+    background: #4a7746;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#4a7746), to(#335d30));
+    background: -moz-linear-gradient(#4a7746, #335d30);
+    background: linear-gradient(#4a7746, #335d30);
+    border: solid 1px #1b3013;
+    border-bottom: solid 3px #0a1608;
+    box-shadow: inset 0 0 0 1px #53864f;
+    color: #142413;
+    text-shadow: 0 1px 0 #4b7b47; }
+    
+a.button.forrst:hover {
+    background: #335d30;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#335d30), to(#4a7746));
+    background: -moz-linear-gradient(#335d30, #4a7746);
+    background: linear-gradient(#335d30, #4a7746);
+    border: solid 1px #1b3013;
+    border-bottom: solid 3px #0a1608;
+    box-shadow: inset 0 0 0 1px #53864f; }
+    
+a.button.forrst:active {
+    background: #335d30;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#335d30), to(#4a7746));
+    background: -moz-linear-gradient(#335d30, #4a7746);
+    background: linear-gradient(#335d30, #4a7746);
+    border: solid 1px #1b3013;
+    box-shadow: inset 0 10px 15px 0 #294a16; }
+    
+/**
+ * Dribbble - Special Edition
+ */
+a.button.dribbble {
+    background: #f1a4c1;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f1a4c1), to(#e675a0));
+    background: -moz-linear-gradient(#f1a4c1, #e675a0);
+    background: linear-gradient(#f1a4c1, #e675a0);
+    border: solid 1px #e98eb0;
+    border-bottom: solid 3px #cc4a79;
+    box-shadow: inset 0 0 0 1px #f6c2d7;
+    color: #fff;
+    text-shadow: 0 1px 0 #d64570; }
+    
+a.button.dribbble:hover {
+    background: #e675a0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e675a0), to(#f1a4c1));
+    background: -moz-linear-gradient(#e675a0, #f1a4c1);
+    background: linear-gradient(#e675a0, #f1a4c1);
+    border: solid 1px #e98eb0;
+    border-bottom: solid 3px #cc4a79;
+    box-shadow: inset 0 0 0 1px #f6c2d7; }
+    
+a.button.dribbble:active {
+    background: #e675a0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e675a0), to(#f1a4c1));
+    background: -moz-linear-gradient(#e675a0, #f1a4c1);
+    background: linear-gradient(#e675a0, #f1a4c1);
+    border: solid 1px #e98eb0;
+    box-shadow: inset 0 10px 15px 0 #e05285; }
+    
+/**
+ * Twitter - Special Edition
+ */
+a.button.twitter {
+    background: #9fd6fa;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#9fd6fa), to(#6bb9f7));
+    background: -moz-linear-gradient(#9fd6fa, #6bb9f7);
+    background: linear-gradient(#9fd6fa, #6bb9f7);
+    border: solid 1px #72bdf4;
+    border-bottom: solid 3px #4a9de1;
+    box-shadow: inset 0 0 0 1px #bfe4fc;
+    color: #fff;
+    text-shadow: 0 1px 0 #4598f3; }
+    
+a.button.twitter:hover {
+    background: #6bb9f7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#6bb9f7), to(#9fd6fa));
+    background: -moz-linear-gradient(#6bb9f7, #9fd6fa);
+    background: linear-gradient(#6bb9f7, #9fd6fa);
+    border: solid 1px #72bdf4;
+    border-bottom: solid 3px #4a9de1;
+    box-shadow: inset 0 0 0 1px #bfe4fc; }
+    
+a.button.twitter:active {
+    background: #6bb9f7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#6bb9f7), to(#9fd6fa));
+    background: -moz-linear-gradient(#6bb9f7, #9fd6fa);
+    background: linear-gradient(#6bb9f7, #9fd6fa);
+    border: solid 1px #72bdf4;
+    box-shadow: inset 0 10px 15px 0 #50aaf3; }
+    
+/**
+ * Facebook - Special Edition
+ */
+a.button.facebook {
+    background: #99b6df;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#99b6df), to(#638ec8));
+    background: -moz-linear-gradient(#99b6df, #638ec8);
+    background: linear-gradient(#99b6df, #638ec8);
+    border: solid 1px #6d94ce;
+    border-bottom: solid 3px #3867ac;
+    box-shadow: inset 0 0 0 1px #bbcfeb;
+    color: #fff;
+    text-shadow: 0 1px 0 #3c61ab; }
+    
+a.button.facebook:hover {
+    background: #638ec8;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#638ec8), to(#99b6df));
+    background: -moz-linear-gradient(#638ec8, #99b6df);
+    background: linear-gradient(#638ec8, #99b6df);
+    border: solid 1px #6d94ce;
+    border-bottom: solid 3px #3867ac;
+    box-shadow: inset 0 0 0 1px #bbcfeb; }
+    
+a.button.facebook:active {
+    background: #638ec8;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#638ec8), to(#99b6df));
+    background: -moz-linear-gradient(#638ec8, #99b6df);
+    background: linear-gradient(#638ec8, #99b6df);
+    border: solid 1px #6d94ce;
+    box-shadow: inset 0 10px 15px 0 #4176c4; }
+    
+/**
+ * LoveDSGN - Special Edition
+ */
+a.button.lovedsgn {
+    background: #f3c1e6;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f3c1e6), to(#de66c0));
+    background: -moz-linear-gradient(#f3c1e6, #de66c0);
+    background: linear-gradient(#f3c1e6, #de66c0);
+    border: solid 1px #cd5daf;
+    border-bottom: solid 3px #ce5eb0;
+    box-shadow: inset 0 0 0 1px #e998d3;
+    color: #fff;
+    text-shadow: 0 1px 0 #ce5eb0; }
+    
+a.button.lovedsgn:hover {
+    background: #de66c0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#de66c0), to(#f3c1e6));
+    background: -moz-linear-gradient(#de66c0, #f3c1e6);
+    background: linear-gradient(#de66c0, #f3c1e6);
+    border: solid 1px #cd5daf;
+    border-bottom: solid 3px #ce5eb0;
+    box-shadow: inset 0 0 0 1px #e998d3; }
+    
+a.button.lovedsgn:active {
+    background: #de66c0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#de66c0), to(#f3c1e6));
+    background: -moz-linear-gradient(#de66c0, #f3c1e6);
+    background: linear-gradient(#de66c0, #f3c1e6);
+    border: solid 1px #cd5daf;
+    box-shadow: inset 0 10px 15px 0 #ce5eb0; }
+    
+/**
+ * XBOX - Special Edition
+ */
+a.button.xbox {
+    background: #c4e125;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#c4e125), to(#88a819));
+    background: -moz-linear-gradient(#c4e125, #88a819);
+    background: linear-gradient(#c4e125, #88a819);
+    border: solid 1px #829c15;
+    border-bottom: solid 3px #819d15;
+    box-shadow: inset 0 0 0 1px #c6da7b;
+    color: #fff;
+    text-shadow: 0 1px 0 #819d15; }
+    
+a.button.xbox:hover {
+    background: #88a819;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#88a819), to(#c4e125));
+    background: -moz-linear-gradient(#88a819, #c4e125);
+    background: linear-gradient(#88a819, #c4e125);
+    border: solid 1px #829c15;
+    border-bottom: solid 3px #819d15;
+    box-shadow: inset 0 0 0 1px #c6da7b; }
+    
+a.button.xbox:active {
+    background: #88a819;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#88a819), to(#c4e125));
+    background: -moz-linear-gradient(#88a819, #c4e125);
+    background: linear-gradient(#88a819, #c4e125);
+    border: solid 1px #829c15;
+    box-shadow: inset 0 10px 15px 0 #819d15; }
+    
+/**
+ * devART - Special Edition
+ */
+a.button.devart {
+    background: #729e85;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#729e85), to(#486d5c));
+    background: -moz-linear-gradient(#729e85, #486d5c);
+    background: linear-gradient(#729e85, #486d5c);
+    border: solid 1px #236036;
+    border-bottom: solid 3px #225f33;
+    box-shadow: inset 0 0 0 1px #90a59c;
+    color: #fff;
+    text-shadow: 0 1px 0 #225f33; }
+    
+a.button.devart:hover {
+    background: #486d5c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#486d5c), to(#729e85));
+    background: -moz-linear-gradient(#486d5c, #729e85);
+    background: linear-gradient(#486d5c, #729e85);
+    border: solid 1px #236036;
+    border-bottom: solid 3px #225f33;
+    box-shadow: inset 0 0 0 1px #90a59c; }
+    
+a.button.devart:active {
+    background: #486d5c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#486d5c), to(#729e85));
+    background: -moz-linear-gradient(#486d5c, #729e85);
+    background: linear-gradient(#486d5c, #729e85);
+    border: solid 1px #236036;
+    box-shadow: inset 0 10px 15px 0 #225f33; }
+    
+/**
+ * Designmoo - Special Edition
+ */
+a.button.dsgnmoo {
+    background: #f97779;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f97779), to(#ce2424));
+    background: -moz-linear-gradient(#f97779, #ce2424);
+    background: linear-gradient(#f97779, #ce2424);
+    border: solid 1px #be2424;
+    border-bottom: solid 3px #bd2524;
+    box-shadow: inset 0 0 0 1px #e67e7b;
+    color: #fff;
+    text-shadow: 0 1px 0 #bd2524; }
+    
+a.button.dsgnmoo:hover {
+    background: #ce2424;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#ce2424), to(#f97779));
+    background: -moz-linear-gradient(#ce2424, #f97779);
+    background: linear-gradient(#ce2424, #f97779);
+    border: solid 1px #be2424;
+    border-bottom: solid 3px #bd2524;
+    box-shadow: inset 0 0 0 1px #e67e7b; }
+    
+a.button.dsgnmoo:active {
+    background: #ce2424;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#ce2424), to(#f97779));
+    background: -moz-linear-gradient(#ce2424, #f97779);
+    background: linear-gradient(#ce2424, #f97779);
+    border: solid 1px #be2424;
+    box-shadow: inset 0 10px 15px 0 #bd2524; }
+    
+/**
+ * RSS Feed - Special Edition
+ */
+a.button.rss {
+    background: #f6c696;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f6c696), to(#e9893d));
+    background: -moz-linear-gradient(#f6c696, #e9893d);
+    background: linear-gradient(#f6c696, #e9893d);
+    border: solid 1px #a1681b;
+    border-bottom: solid 3px #a1671d;
+    box-shadow: inset 0 0 0 1px #f1bb8f;
+    color: #fff;
+    text-shadow: 0 1px 0 #a1671d; }
+    
+a.button.rss:hover {
+    background: #e9893d;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e9893d), to(#f6c696));
+    background: -moz-linear-gradient(#e9893d, #f6c696);
+    background: linear-gradient(#e9893d, #f6c696);
+    border: solid 1px #a1681b;
+    border-bottom: solid 3px #a1671d;
+    box-shadow: inset 0 0 0 1px #f1bb8f; }
+    
+a.button.rss:active {
+    background: #e9893d;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e9893d), to(#f6c696));
+    background: -moz-linear-gradient(#e9893d, #f6c696);
+    background: linear-gradient(#e9893d, #f6c696);
+    border: solid 1px #a1681b;
+    box-shadow: inset 0 10px 15px 0 #a1671d; }
+    
+/**
+ * Yahoo - Special Edition
+ */
+a.button.yahoo {
+    background: #be95b7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#be95b7), to(#5f396a));
+    background: -moz-linear-gradient(#be95b7, #5f396a);
+    background: linear-gradient(#be95b7, #5f396a);
+    border: solid 1px #4b2a55;
+    border-bottom: solid 3px #4d2955;
+    box-shadow: inset 0 0 0 1px #9c83a1;
+    color: #fff;
+    text-shadow: 0 1px 0 #4d2955; }
+    
+a.button.yahoo:hover {
+    background: #5f396a;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#5f396a), to(#be95b7));
+    background: -moz-linear-gradient(#5f396a, #be95b7);
+    background: linear-gradient(#5f396a, #be95b7);
+    border: solid 1px #4b2a55;
+    border-bottom: solid 3px #4d2955;
+    box-shadow: inset 0 0 0 1px #9c83a1; }
+    
+a.button.yahoo:active {
+    background: #5f396a;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#5f396a), to(#be95b7));
+    background: -moz-linear-gradient(#5f396a, #be95b7);
+    background: linear-gradient(#5f396a, #be95b7);
+    border: solid 1px #4b2a55;
+    box-shadow: inset 0 10px 15px 0 #4d2955; }
+
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/css/style.css b/wrt/wrt_support/apps_repo/extensions_settings/css/style.css
new file mode 100644 (file)
index 0000000..90f15f6
--- /dev/null
@@ -0,0 +1,134 @@
+@font-face {
+    font-family: 'TizenSansRegular';
+    src: url("../font/TizenSansRegular.ttf");
+}
+
+body {
+    background-image: url("../image/bg.jpg");
+    /* font-family: 'TizenSansRegular'; */
+}
+
+.frame {
+    text-align: -webkit-center;
+    margin: 2%;
+}
+
+.title {
+    color: whitesmoke;
+    font-size: 2.5em;
+    width: 660px;
+    text-align:center;
+    font-weight:bold;
+    margin-top:50px;
+    margin-bottom:20px;
+}
+
+.footer {
+    width:640px;
+    text-align:right;
+}
+
+.extList {
+       margin:10px 0px;padding:3px;
+       width:640px;
+       border:1px solid #000000;
+       
+       -moz-border-radius-bottomleft:5px;
+       -webkit-border-bottom-left-radius:5px;
+       border-bottom-left-radius:5px;
+       
+       -moz-border-radius-bottomright:5px;
+       -webkit-border-bottom-right-radius:5px;
+       border-bottom-right-radius:5px;
+       
+       -moz-border-radius-topright:5px;
+       -webkit-border-top-right-radius:5px;
+       border-top-right-radius:5px;
+       
+       -moz-border-radius-topleft:5px;
+       -webkit-border-top-left-radius:5px;
+       border-top-left-radius:5px;
+}.extList table{
+    border-collapse: collapse;
+        border-spacing: 0;
+       width:100%;
+       height:100%;
+       margin:0px;padding:0px;
+}.extList tr:last-child td:last-child {
+       -moz-border-radius-bottomright:5px;
+       -webkit-border-bottom-right-radius:5px;
+       border-bottom-right-radius:5px;
+}
+.extList table tr:first-child td:first-child {
+       -moz-border-radius-topleft:5px;
+       -webkit-border-top-left-radius:5px;
+       border-top-left-radius:5px;
+        text-align:left;
+}
+.extList table tr:first-child td:last-child {
+       -moz-border-radius-topright:5px;
+       -webkit-border-top-right-radius:5px;
+       border-top-right-radius:5px;
+        text-align:right;
+}.extList tr:last-child td:first-child{
+       -moz-border-radius-bottomleft:5px;
+       -webkit-border-bottom-left-radius:5px;
+       border-bottom-left-radius:5px;
+}.extList tr:hover td{
+       background-color:#9b9b9b;
+}
+.extList td{
+       vertical-align:middle;
+               background:-o-linear-gradient(bottom, #ffffff 5%, #eeeeee 100%);        background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #eeeeee) ); 
+       background:-moz-linear-gradient( center top, #ffffff 5%, #eeeeee 100% );
+       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#eeeeee");      background: -o-linear-gradient(top,#ffffff,eeeeee);
+
+       background-color:#ffffff;
+
+       border:1px solid #000000;
+       border-width:0px 1px 1px 0px;
+       text-align:left;
+       padding:7px;
+       font-size:14px;
+       color:#000000;
+
+        height:40px;
+}.extList tr:last-child td{
+       border-width:0px 1px 0px 0px;
+}
+.extList tr td:last-child{
+       border-width:0px 0px 1px 0px;
+        text-align:center;
+        width:140px;
+}
+.extList tr:last-child td:last-child{
+       border-width:0px 0px 0px 0px;
+}
+.extList tr:first-child td{
+               background:-o-linear-gradient(bottom, #777777 5%, #444444 100%);        background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #777777), color-stop(1, #444444) );
+       background:-moz-linear-gradient( center top, #777777 5%, #444444 100% );
+       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#777777", endColorstr="#444444");      background: -o-linear-gradient(top,#777777,444444);
+
+       background-color:#777777;
+       border:0px solid #000000;
+       text-align:center;
+       border-width:0px 0px 1px 1px;
+       font-size:14px;
+       font-weight:bold;
+       color:#ffffff;
+
+        height:20px;
+}
+.extList tr:first-child:hover td{
+       background:-o-linear-gradient(bottom, #777777 5%, #444444 100%);        background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #777777), color-stop(1, #444444) );
+       background:-moz-linear-gradient( center top, #777777 5%, #444444 100% );
+       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#777777", endColorstr="#444444");      background: -o-linear-gradient(top,#777777,444444);
+
+       background-color:#777777;
+}
+.extList tr:first-child td:first-child{
+       border-width:0px 0px 1px 0px;
+}
+.extList tr:first-child td:last-child{
+       border-width:0px 0px 1px 1px;
+}
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/font/TizenSansRegular.ttf b/wrt/wrt_support/apps_repo/extensions_settings/font/TizenSansRegular.ttf
new file mode 100644 (file)
index 0000000..7e98c96
Binary files /dev/null and b/wrt/wrt_support/apps_repo/extensions_settings/font/TizenSansRegular.ttf differ
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/icon.png b/wrt/wrt_support/apps_repo/extensions_settings/icon.png
new file mode 100644 (file)
index 0000000..6275fd8
Binary files /dev/null and b/wrt/wrt_support/apps_repo/extensions_settings/icon.png differ
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/image/bg.jpg b/wrt/wrt_support/apps_repo/extensions_settings/image/bg.jpg
new file mode 100644 (file)
index 0000000..ab5d8ee
Binary files /dev/null and b/wrt/wrt_support/apps_repo/extensions_settings/image/bg.jpg differ
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/index.html b/wrt/wrt_support/apps_repo/extensions_settings/index.html
new file mode 100644 (file)
index 0000000..30eb412
--- /dev/null
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="UTF-8" name="viewport" content="width=device-width, user-scalable=no">
+    <title>Extensions Settings</title>
+    <link rel="stylesheet" type="text/css" href="css/style.css"/>
+    <link rel="stylesheet" type="text/css" href="css/button.css"/>
+    <script src='src/was_key_event_handler.js'></script>
+  </head>
+  <body>
+    <div class='frame'>
+      <div class='title'>Extensions Settings</div>
+      <div id='repoDiv' class='extList'></div>
+      <div id='serverrepoDiv' class='extList'></div>
+      <div id='extDiv' class='extList'></div>
+      <script src='src/main.js'></script>
+      <div class='footer'>
+        <a onclick='refreshServerRepoList()' class="button orange">search SERVER REPO</a>
+        <a onclick='refreshRepoList()' class="button orange">refresh REPO LIST</a>
+        <a onclick='refreshExtensionsList()' class="button orange">refresh EXTENSIONS LIST</a>
+      </div>
+    </div>
+  </body>
+</html>
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/main.js b/wrt/wrt_support/apps_repo/extensions_settings/main.js
new file mode 100644 (file)
index 0000000..c596830
--- /dev/null
@@ -0,0 +1,39 @@
+var app = require('app');  // Module to control application life.
+var BrowserWindow = require('browser-window');  // Module to create native browser window.
+
+// Report crashes to our server.
+require('crash-reporter').start();
+
+// Keep a global reference of the window object, if you don't, the window will
+// be closed automatically when the JavaScript object is garbage collected.
+var mainWindow = null;
+
+// Quit when all windows are closed.
+app.on('window-all-closed', function() {
+  // On OS X it is common for applications and their menu bar
+  // to stay active until the user quits explicitly with Cmd + Q
+  if (process.platform != 'darwin') {
+    app.quit();
+  }
+});
+
+// This method will be called when Electron has finished
+// initialization and is ready to create browser windows.
+app.on('ready', function() {
+  // Create the browser window.
+  mainWindow = new BrowserWindow({width: 800, height: 600});
+
+  // and load the index.html of the app.
+  mainWindow.loadUrl('file://' + __dirname + '/index.html');
+
+  // Open the DevTools.
+  mainWindow.openDevTools();
+
+  // Emitted when the window is closed.
+  mainWindow.on('closed', function() {
+    // Dereference the window object, usually you would store windows
+    // in an array if your app supports multi windows, this is the time
+    // when you should delete the corresponding element.
+    mainWindow = null;
+  });
+});
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/package.json b/wrt/wrt_support/apps_repo/extensions_settings/package.json
new file mode 100644 (file)
index 0000000..f70c25b
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "name": "demo",
+  "version": "0.1.0",
+  "main": "main.js",
+  "devDependencies": {
+    "fs-extra": "0.24.0",
+    "mkdirp": "0.5.1",
+    "rimraf": "2.4.3",
+    "unzip": "0.1.11",
+    "underscore": "1.8.3"
+  }
+}
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/src/extension_manager.js b/wrt/wrt_support/apps_repo/extensions_settings/src/extension_manager.js
new file mode 100644 (file)
index 0000000..dca4291
--- /dev/null
@@ -0,0 +1,405 @@
+// This file is forked from wrt/src/extension_manager.js //
+
+(function() {
+  var MANIFEST_FILE = 'package.json';
+  var PRELOAD_JS_FILE = 'preload.js';
+  var EXTENSIONS_DB_FILE = 'extensions_db.json';
+  var T_WRT = 'WRT', T_API = 'API';
+
+  var fs = require('fs');
+  var path = require('path');
+  var util = require('util');
+  var mkdirp = require('mkdirp');
+
+  var ipc = require('ipc');
+  var IPC_EXTENSIONS_INSTALLED = 'ipc:extensions:installed';
+  var IPC_EXTENSIONS_UNINSTALLED = 'ipc:extensions:uninstalled';
+  var IPC_EXTENSIONS_ACTIVATE = 'ipc:extensions:activate';
+  var IPC_EXTENSIONS_DEACTIVATE = 'ipc:extensions:deactivate';
+
+  var WAS_EXTENSIONS_REPO = process.env.WAS_EXTENSIONS_REPO;
+  if (!WAS_EXTENSIONS_REPO) {
+    console.log("WARNING! WAS_EXTENSIONS_REPO not set - extensions cannot be loaded");
+    WAS_EXTENSIONS_REPO = path.join(__dirname, 'extensions_repo');
+    console.log("Temporarily set WAS_EXTENSIONS_REPO=" + WAS_EXTENSIONS_REPO);
+  }
+  var WAS_EXTENSIONS_PATH = process.env.WAS_EXTENSIONS_PATH;
+  if (!WAS_EXTENSIONS_PATH) {
+    console.log("WARNING! WAS_EXTENSIONS_PATH not set - extensions cannot be loaded");
+    WAS_EXTENSIONS_PATH = path.join(__dirname, 'extensions');
+    console.log("Temporarily set WAS_EXTENSIONS_PATH=" + WAS_EXTENSIONS_PATH);
+  }
+  var WAS_INSTALLER_EXT_PATH = process.env.WAS_INSTALLER_EXT_PATH;
+  if (!WAS_INSTALLER_EXT_PATH) {
+    console.log("WARNING! WAS_INSTALLER_EXT_PATH not set - extensions for installer cannot be loaded");
+    WAS_INSTALLER_EXT_PATH = path.join(__dirname, 'installer', 'extension');
+    console.log("Temporarily set WAS_INSTALLER_EXT_PATH=" + WAS_INSTALLER_EXT_PATH);
+  }
+
+  /* deep copy solution */
+  var mkdir = function(dir) {
+    // making directory without exception if exists
+    try {
+      fs.mkdirSync(dir, 0755);
+    } catch(e) {
+      throw e;
+    }
+  };
+
+  var copyDir = function(src, dest) {
+    try {
+      mkdir(dest);
+    } catch (e) {
+      console.log('copyDir error - ' + e);
+      return false;
+    }
+    var files = fs.readdirSync(src);
+    for (var i = 0; i < files.length; i++) {
+      var current = fs.lstatSync(path.join(src, files[i]));
+      if (current.isDirectory()) {
+        copyDir(path.join(src, files[i]), path.join(dest, files[i]));
+      } else if (current.isSymbolicLink()) {
+        var symlink = fs.readlinkSync(path.join(src, files[i]));
+        fs.symlinkSync(symlink, path.join(dest, files[i]));
+      } else {
+        copy(path.join(src, files[i]), path.join(dest, files[i]));
+      }
+    }
+    return true;
+  };
+
+  var copy = function(src, dest) {
+    var oldFile = fs.createReadStream(src);
+    var newFile = fs.createWriteStream(dest);
+    oldFile.pipe(newFile);
+  };
+  /* deep copy solution */
+
+  /* mkdir -p solution */
+  var ensureDir = function(dir_path) {
+    try {
+      var stats = fs.statSync(dir_path);
+    } catch (e) {
+      console.log('dir_path not exist >> mkdir -p');
+      mkdirp.sync(dir_path);
+    }
+  };
+  /* mkdir -p solution */
+
+  ExtensionManager = (function() {
+    function ExtensionManager(ext_path) {
+      if (!ext_path) ext_path = WAS_EXTENSIONS_PATH;
+      this.repo_list_ = [];
+      this.ext_path_ = ext_path;
+      this.extensions_list_ = [];
+      this.extensions_ = null;
+      this.extensions_API_ = null;
+
+      // check this.ext_path_ //
+      ensureDir(this.ext_path_);
+    }
+
+    ExtensionManager.prototype.printAPIs = function() {
+      console.log("==========printAPIs==========");
+      for (namespace in this.extensions_API_) {
+        console.log("namespace: " + namespace);
+        for (entry_symbol in this.extensions_API_[namespace]) {
+          console.log("extensions_API["+namespace+"]["+entry_symbol+"] = " + this.extensions_API_[namespace][entry_symbol]);
+        }
+      }
+      console.log("==========printAPIs==========");
+    }
+
+    /* installer - load list from repo_path */
+    ExtensionManager.prototype.loadRepoListFromPath = function(repo_path) {
+      if (!repo_path) repo_path = WAS_EXTENSIONS_REPO;
+      console.log('LoadRepoListFromPath : ' + repo_path);
+      var repo_list = [];
+      var filenames;
+      try {
+        filenames = fs.readdirSync(repo_path);
+      } catch (e) {
+        console.log('LoadRepoListFromPath - error : ' + e);
+        return false;
+      }
+      if (filenames) {
+        for (i in filenames) {
+          var filename = filenames[i];
+          var filepath = path.join(repo_path, filename);
+          if (fs.statSync(filepath).isDirectory())
+            repo_list[filename] = filepath;
+        }
+      }
+      this.repo_list_ = repo_list;
+      return true;
+    }
+
+    /* installer - install name to exp_path + get manifest info + insert DB */
+    ExtensionManager.prototype.installRepoItem = function(name, srcPath, cbfunc) {
+      var src_path = '';
+      if(typeof srcPath === 'function') {
+        cbfunc = srcPath;
+        srcPath = undefined;
+      }
+      if(srcPath != undefined){
+        console.log('ExtensionManager.prototype.installRepoItem srcPath=' + srcPath);
+        src_path = srcPath;
+      } else {
+        src_path = this.repo_list_[name];
+      }
+      var dest_path = path.join(this.ext_path_, name);
+      var ext_in_repo = this.loadExtensionFromPath(src_path);
+      if (ext_in_repo.type.toUpperCase() === 'INSTALLER') {
+        ensureDir(WAS_INSTALLER_EXT_PATH);
+        dest_path = path.join(WAS_INSTALLER_EXT_PATH, name);
+        delete ext_in_repo;
+      }
+      var res = copyDir(src_path, dest_path);
+      if (!res) return;
+
+      // get manifest info + insert DB
+      var timerCallback = function(ext_manager, dest_path) {
+        console.log('InstallRepoItem : installed in ' + dest_path);
+        var extension = ext_manager.loadExtensionFromPath(dest_path);
+        if (extension && ext_manager.extensions_list_) {
+          ext_manager.extensions_list_.push(extension);
+          ext_manager.build(true);
+          if (extension.type && extension.type.toUpperCase() === 'API') {
+            ext_manager.generateJsFromAPIs();
+          }
+          ext_manager.saveJsonDB();
+
+          ipc.send(IPC_EXTENSIONS_INSTALLED, extension.name);
+        } else {
+          console.log('InstallRepoItem - error : extension = ' + extension + ' extensions_list_=' + ext_manager.extensions_list_);
+        }
+        cbfunc();
+      }
+      setTimeout(timerCallback, 500, this, dest_path);
+    }
+
+    ExtensionManager.prototype.uninstallExtension = function(extension) {
+      var rimraf = require('rimraf');
+      rimraf.sync(extension.path);
+      var _ = require('underscore');
+      //this.extensions_list_ = _.without(this.extensions_list_, extension);
+      this.extensions_list_ = _.without(this.extensions_list_, _.findWhere(this.extensions_list_, {"name": extension.name}));
+      this.build(true);
+      if (extension.type && extension.type.toUpperCase() == 'API') {
+        this.generateJsFromAPIs();
+      }
+      this.saveJsonDB();
+
+      ipc.send(IPC_EXTENSIONS_UNINSTALLED, extension.name);
+    }
+
+    /* installer - get manifest info from path */
+    ExtensionManager.prototype.loadExtensionFromPath = function(ext_path) {
+      var manifest_obj;
+      try {
+        var manifest_path = path.join(ext_path, MANIFEST_FILE);
+        var manifest_json = fs.readFileSync(manifest_path);
+        manifest_obj = JSON.parse(manifest_json);
+      } catch(e) {
+        console.log('LoadExtensionFromPath - error : ' + e);
+        return null;
+      }
+      var extension = new Object();
+      extension.name = manifest_obj.name;
+      extension.version = manifest_obj.version;
+      extension.description = manifest_obj.description;
+      console.log(extension.name + " = " + extension.description);
+      extension.path = ext_path;
+      if (manifest_obj.type)
+        extension.type = manifest_obj.type;
+      else
+        extension.type = 'WRT';
+      extension.activate = true; // activate by default
+      return extension;
+    }
+
+    ExtensionManager.prototype.loadExtensionsListFromPath = function() {
+      console.log('LoadExtensionsListFromPath : ' + this.ext_path_);
+      var extensions_list = [];
+      var filenames;
+
+      try {
+        filenames = fs.readdirSync(this.ext_path_);
+      } catch (e) {
+        console.log('LoadExtensionsListFromPath - fs.readdirSync error : ' + e);
+        return false;
+      }
+      if (filenames) {
+        for (i in filenames) {
+          var filename = filenames[i];
+          var filepath = path.join(this.ext_path_, filename);
+          var stats = fs.statSync(filepath);
+          if (stats.isDirectory()) {
+            var extension = this.loadExtensionFromPath(filepath);
+            if (extension)
+              extensions_list.push(extension);
+          }
+        }
+      }
+      this.extensions_list_ = extensions_list;
+      return true;
+    }
+
+    ExtensionManager.prototype.loadJsonDB = function(db_path) {
+      if (!db_path) db_path = path.join(this.ext_path_, EXTENSIONS_DB_FILE);
+      console.log('LoadJsonDB : ' + db_path);
+      var extensions_list;
+      try {
+        extensions_list = JSON.parse(fs.readFileSync(db_path));
+        this.extensions_list_ = extensions_list;
+      } catch(e) {
+        console.log('LoadJsonDB - open error : ' + e);
+        this.loadExtensionsListFromPath();
+        this.build(true);
+        this.generateJsFromAPIs();
+        this.saveJsonDB();
+      }
+      return true;
+    }
+
+    ExtensionManager.prototype.saveJsonDB = function(db_path) {
+      if (!db_path) db_path = path.join(this.ext_path_, EXTENSIONS_DB_FILE);
+      console.log('SaveJsonDB : ' + db_path + ' JSON=' + JSON.stringify(this.extensions_list_));
+      var fd;
+      try {
+        fd = fs.openSync(db_path, 'w');
+      } catch(e) {
+        console.log('SaveJsonDB - open error : ' + e);
+        return false;
+      }
+      fs.writeSync(fd, JSON.stringify(this.extensions_list_));
+      fs.closeSync(fd);
+      return true;
+    }
+
+    ExtensionManager.prototype.generateJsFromAPIs = function(js_path) {
+      if (!js_path) js_path = path.join(this.ext_path_, PRELOAD_JS_FILE);
+      console.log('GenerateJsFromAPIs : ' + js_path);
+      var fd;
+      try {
+        fd = fs.openSync(js_path, 'w');
+      } catch(e) {
+        console.log('GenerateJsFromAPIs - open error : ' + e);
+        return false;
+      }
+      // Introduction Comments & preset
+      var comments = "// Auto-generated code by extensions_installer\n// Generated from “entry_points” field in package.json\n// var <entry_points_symbol> = <entry_points_class>;\n";
+      var preset = "\nvar EXTENSIONS_PATH = process.env.WAS_EXTENSIONS_PATH;\n";
+      fs.writeSync(fd, comments+preset);
+
+      // namespace
+      for (namespace in this.extensions_API_) {
+        if (namespace != "_default_") {
+          fs.writeSync(fd, "\n//namespace\n");
+          fs.writeSync(fd, "var "+namespace+" = new Object();\n");
+
+          // namespace.entry_points
+          fs.writeSync(fd, "\n//namespace.entry_points\n");
+          for (entry_symbol in this.extensions_API_[namespace]) {
+            fs.writeSync(fd, namespace+"."+entry_symbol+" = require('"+this.extensions_API_[namespace][entry_symbol]+"');\n");
+          }
+          // attach to root
+          fs.writeSync(fd, "\n//attach to window\n");
+          fs.writeSync(fd, "window."+namespace+" = "+namespace+";\n");
+        } else { // '_default_'
+          // entry_points and attach to root
+          fs.writeSync(fd, "\n//default namespace - entry_points and attach to window\n");
+          for (entry_symbol in this.extensions_API_[namespace]) {
+            fs.writeSync(fd, "window."+entry_symbol+" = require('"+this.extensions_API_[namespace][entry_symbol]+"');\n");
+          }
+        }
+      }
+      fs.closeSync(fd);
+      return true;
+    }
+
+    ExtensionManager.prototype.build = function(skipLoadDB) {
+      if (!skipLoadDB)
+        this.loadJsonDB();
+      console.log('BUILD(' + skipLoadDB + ') : ' + this.ext_path_);
+      var extensions = [];
+      var extensions_API= [];
+      var filenames;
+      try {
+        filenames = fs.readdirSync(this.ext_path_);
+      } catch (e) {
+        console.log(e);
+      }
+      if (this.extensions_list_) {
+        for (i in this.extensions_list_) {
+          var extension = this.extensions_list_[i];
+          if (extension.activate == false) continue;
+          var manifest_obj, manifest_path = path.join(extension.path, MANIFEST_FILE);
+          try {
+            manifest_obj = JSON.parse(fs.readFileSync(manifest_path));
+            if (manifest_obj.type && manifest_obj.type.toUpperCase() === 'API') {
+              var namespace = manifest_obj.namespace;
+              if (!namespace) namespace = '_default_';
+              if (!extensions_API[namespace]) extensions_API[namespace] = [];
+
+              for (entry_it in manifest_obj.entry_points) {
+                for (entry_symbol in manifest_obj.entry_points[entry_it]) {
+                  var module_path = manifest_obj.entry_points[entry_it][entry_symbol];
+                  console.log('> entry_symbol: ' + entry_symbol + ' module_path: ' + module_path);
+                  if (extensions_API[namespace][entry_symbol]) {
+                    console.log('extensions_API[' + namespace + '][' + entry_symbol + '] already registered :' + extensions_API[namespace][entry_symbol]);
+                    continue;
+                  }
+                  extensions_API[namespace][entry_symbol] = path.join(extension.path, module_path);
+                }
+              }
+            } else {
+              if (!extensions[T_WRT]) extensions[T_WRT] = [];
+              if (extensions[T_WRT][manifest_obj.name]) {
+                console.log('extensions[WRT][' + manifest_obj.name + '] already registered : ' + extensions[WRT][manifest_obj.name]);
+                continue;
+              }
+              extensions[T_WRT][manifest_obj.name] = path.join(extension.path, manifest_obj.main);
+            }
+          } catch(e) {
+            console.log('Error - ' + e);
+          }
+        }
+      }
+      if (this.extensions_ != null) {
+        delete this.extensions_;
+        this.extensions_ = null;
+      }
+      if (this.extensions_API_ != null) {
+        delete this.extensions_API_;
+        this.extensions_API_ = null;
+      }
+      this.extensions_ = extensions;
+      this.extensions_API_ = extensions_API;
+      return this.extensions_;
+    };
+
+    ExtensionManager.prototype.activate = function(name) {
+      ipc.send(IPC_EXTENSIONS_ACTIVATE, name);
+    };
+
+    ExtensionManager.prototype.deactivate = function(name) {
+      ipc.send(IPC_EXTENSIONS_DEACTIVATE, name);
+    };
+
+    ExtensionManager.getManifestFile = function() {
+      return MANIFEST_FILE;
+    };
+
+    ExtensionManager.getPreloadJsFile = function() {
+      return PRELOAD_JS_FILE;
+    };
+
+    return ExtensionManager;
+
+  })();
+
+  module.exports = ExtensionManager;
+
+}).call(this);
+
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/src/extension_server.js b/wrt/wrt_support/apps_repo/extensions_settings/src/extension_server.js
new file mode 100644 (file)
index 0000000..cb23cce
--- /dev/null
@@ -0,0 +1,135 @@
+var fs = require('fs'),
+    path = require('path'),
+    http = require('http'),
+    crypto = require('crypto'),
+    unzip = require('unzip'),
+    HOSTSERVER = 'http://10.251.43.156:52273/';
+
+function randomValue(len) {
+        return crypto.randomBytes(Math.ceil(len/2))
+        .toString('hex')
+        .slice(0, len);
+    }
+
+module.exports = {
+    getRepoList : function(callbackfunc){
+        var arrAppInfos = [];
+        var request = new XMLHttpRequest();
+        request.onreadystatechange = function (event) {
+            if(request.readyState == 4) {
+                if(request.status == 200) {
+                    var str = request.responseText;
+                    console.log(str);
+                    var objson = JSON.parse(str);
+                    console.log(objson.apps.length);
+                    //console.log(JSON.stringify(objson.apps[0]));
+
+                    for(var i=0; i<objson.apps.length; i++){
+                      var appInfo = {};
+                      // appName
+                      if(objson.apps[i].name == undefined){
+                        appInfo.title = 'No Title';
+                      } else {
+                        appInfo.title = objson.apps[i].name;
+                      }
+                      // appVersion
+                      if(objson.apps[i].name == undefined){
+                        appInfo.version = 'No VerInfo';
+                      } else {
+                        appInfo.version = objson.apps[i].latestVersion.version;
+                      }
+
+                      /*/ appDescription
+                      if(objson.apps[i].description == undefined){
+                        appInfo.version = 'No DescriptionInfo';
+                      } else {
+                        appInfo.description = objson.apps[i].description;
+                      }*/
+                      //console.log(JSON.stringify(appInfo));
+                      arrAppInfos.push(appInfo);
+                    }
+                    //console.log(JSON.stringify(arrAppInfos));
+                    callbackfunc(arrAppInfos);
+                }
+            }
+        };
+        request.open('GET', HOSTSERVER + 'exts', true);
+        request.send();
+    },
+
+    download: function(passedSelf, callbackfunc, version){
+        var name = passedSelf.repo_name;
+        var version = passedSelf.version;
+        console.log('download ~~~' + name + ' ' + version);
+
+        var version_key = '',
+            verChange = false;
+        if( version != undefined) {
+            version_key = '/' + version;
+            verChange = true;
+        }
+
+        var filePath = './temp_extension/' + name + '.zip';
+        var httpOptions = {
+            hostname: '10.251.43.156',
+            port: '52273',
+            path: '/exts/' + name + version_key + '?get=package',
+            method: 'GET'
+        };
+
+        var reqGet = http.request(httpOptions, function (response){
+            var statusCode = response.statusCode;
+
+            if(statusCode == 404 || statusCode == 403)
+            {
+                console.log('statusCode = ' + statusCode);
+            } else {
+                var idx = 0;
+                //console.log(JSON.stringify(response));
+                for(var p in response.headers){
+                  console.log(p);
+                }
+
+                var len = parseInt(response.headers["content-length"]);
+                console.log(len);
+                var body = new Buffer(len);
+
+                response.setEncoding('binary');
+
+                response.on('data', function(chunk){
+                    console.log('res data !!!');
+                    body.write(chunk, idx, 'binary');
+                    idx += chunk.length;
+                });
+
+                response.on('end', function(){
+                    console.log('res end !!!');
+                    var fileStream = fs.createWriteStream(filePath);
+                    fileStream.write(body);
+                    callbackfunc(filePath, verChange, passedSelf);
+                });
+            }
+        });
+        reqGet.on('error', function(err){
+            console.log(err);
+        });
+        reqGet.end();
+    },
+
+    findUnzipedFolderPath: function(filePath, name){
+        return path.join(filePath.split(name + '.zip')[0], '');
+    },
+
+    unzipExtPackage: function(passedSelf, destPath, zipPackage, callback) {
+        fs.createReadStream(zipPackage).pipe(unzip.Extract({path: destPath}).on('close', function () {
+            if(typeof callback === 'function') {
+                console.log('Unzip OK ..!!');
+                var unzipFolderPath = path.join(zipPackage.split('.zip')[0], '');
+                var name = path.join(unzipFolderPath.split('/')[1],'');
+                console.log('unzipExtPackage: ' + name +' ' + unzipFolderPath);
+                return callback(passedSelf, name, unzipFolderPath);
+            }
+                callback("ERROR");
+        }));
+    },
+};
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/src/main.js b/wrt/wrt_support/apps_repo/extensions_settings/src/main.js
new file mode 100644 (file)
index 0000000..3e3c5c3
--- /dev/null
@@ -0,0 +1,238 @@
+var ExtensionManager = require('./src/extension_manager.js');
+var extension_manager = new ExtensionManager();
+
+var ExtensionServer = require('./src/extension_server.js');
+
+var activate = function(extension) {
+  console.log('activate : ' + extension.name);
+  extension.activate = true;
+  extension_manager.activate(extension.name);
+  if (extension.type.toUpperCase() === 'API') {
+    extension_manager.build(true);
+    extension_manager.generateJsFromAPIs();
+  }
+  extension_manager.saveJsonDB();
+}
+var deactivate = function(extension) {
+  console.log('deactivate : ' + extension.name);
+  extension.activate = false;
+  extension_manager.deactivate(extension.name);
+  if (extension.type.toUpperCase() === 'API') {
+    extension_manager.build(true);
+    extension_manager.generateJsFromAPIs();
+  }
+  extension_manager.saveJsonDB();
+}
+
+var repoDiv = document.getElementById('repoDiv');
+var serverrepoDiv = document.getElementById('serverrepoDiv');
+var extDiv = document.getElementById('extDiv');
+
+//document.body.appendChild(repoDiv);
+//document.body.appendChild(extDiv);
+
+var checkINSTALL = function(name) {
+  for (i in extension_manager.extensions_list_) {
+    var extension = extension_manager.extensions_list_[i];
+    if(name == extension.name) return false;
+  }
+  return true;
+}
+
+var installRepoItem = function(repo_name, path, cbfunc) {
+  console.log('install ' + repo_name + ' path= ' + path);
+  extension_manager.installRepoItem(repo_name, path, cbfunc);
+}
+
+var uninstallExtension = function(extension) {
+  console.log('uninstall ' + extension.name);
+  extension_manager.uninstallExtension(extension);
+}
+
+var refreshAllList = function() {
+  refreshRepoList();
+  refreshExtensionsList();
+}
+
+var refreshRepoList = function() {
+  repoDiv.innerText = "";
+
+  var table = document.createElement('table');
+  var tr = document.createElement('tr');
+  var td_1 = document.createElement('td');
+  var td_2 = document.createElement('td');
+  tr.appendChild(td_1);
+  tr.appendChild(td_2);
+  td_1.textContent = 'REPO lists';
+  table.appendChild(tr);
+
+  extension_manager.loadRepoListFromPath();
+  extension_manager.loadJsonDB();
+
+  for (name in extension_manager.repo_list_) {
+    var repo_path = extension_manager.repo_list_[name];
+    var extension = extension_manager.loadExtensionFromPath(repo_path);
+    var contents = '<b>' + name + '</b><br><font size=1>v' + extension.version + '<br>' + extension.description + '</font>';
+
+    tr = document.createElement('tr');
+    td_1 = document.createElement('td');
+    td_2 = document.createElement('td');
+    tr.appendChild(td_1);
+    tr.appendChild(td_2);
+    var div = document.createElement('div');
+    //div.innerHTML = contents;
+    var button = document.createElement('a');
+    if (checkINSTALL(name)) {
+      button.setAttribute('class', 'button black');
+      button.textContent = 'INSTALL';
+      button.repo_name = name;
+      button.onclick = function(ev) {
+        installRepoItem(this.repo_name, refreshAllList);
+      };
+    } else {
+      button.setAttribute('class', 'button dark_grey');
+      button.textContent = 'INSTALLED';
+    }
+    //td_1.appendChild(contents);
+    td_1.innerHTML = contents;
+    td_2.appendChild(button);
+    table.appendChild(tr);
+  }
+  repoDiv.appendChild(table);
+}
+
+var refreshExtensionsList = function() {
+  extDiv.innerText = "";
+
+  var table = document.createElement('table');
+  var tr = document.createElement('tr');
+  var td_1 = document.createElement('td');
+  var td_2 = document.createElement('td');
+  tr.appendChild(td_1);
+  tr.appendChild(td_2);
+  td_1.textContent = 'EXTENSIONS lists';
+  table.appendChild(tr);
+
+  extension_manager.loadJsonDB();
+
+  for (i in extension_manager.extensions_list_) {
+    var extension = extension_manager.extensions_list_[i];
+    tr = document.createElement('tr');
+    td_1 = document.createElement('td');
+    td_2 = document.createElement('td');
+    tr.appendChild(td_1);
+    tr.appendChild(td_2);
+    var div = document.createElement('div');
+    var contents = '<b>' + extension.name + '</b>';
+    var button = document.createElement('a');
+    if (extension.type.toUpperCase() === 'INSTALLER') {
+      button.setAttribute('class', 'button dark_grey');
+      button.textContent = 'INSTALLED';
+    } else {
+      button.setAttribute('class', 'button black');
+      var btnContent = 'DEACTIVATE';
+      if (!extension.activate) btnContent = 'ACTIVATE';
+        button.textContent = btnContent;
+      button.extension = extension;
+      button.onclick = function(ev) {
+        if (this.textContent == 'ACTIVATE') {
+          activate(this.extension);
+          this.textContent = 'DEACTIVATE';
+        } else {
+          deactivate(this.extension);
+          this.textContent = 'ACTIVATE';
+        }
+      };
+    }
+    // delete button
+    var button2 = document.createElement('a');
+    button2.setAttribute('class', 'button dsgnmoo');
+    button2.textContent = 'X';
+    button2.extension = extension;
+    button2.onclick = function(ev) {
+      uninstallExtension(this.extension)
+      setTimeout(function(){
+        refreshAllList();
+        refreshServerRepoList();
+      }, 1000);
+    }
+
+    //td_1.appendChild(content);
+    td_1.innerHTML = contents;
+    td_2.appendChild(button);
+    td_2.appendChild(button2);
+    table.appendChild(tr);
+  }
+  extDiv.appendChild(table);
+}
+
+var refreshServerRepoList = function() {
+  ExtensionServer.getRepoList(makeserverRepoListcb);
+}
+
+var makeserverRepoListcb = function(repoList) {
+  console.log('refreshServerRepoList');
+  serverrepoDiv.innerText = "";
+
+  var table = document.createElement('table');
+  var tr = document.createElement('tr');
+  var td_1 = document.createElement('td');
+  var td_2 = document.createElement('td');
+  tr.appendChild(td_1);
+  tr.appendChild(td_2);
+  td_1.textContent = 'SERVER REPO lists';
+  table.appendChild(tr);
+
+  extension_manager.loadJsonDB();
+
+  for (var i=0; i<repoList.length; i++) {
+    var name = repoList[i].title;
+    var contents = '<b>' + name + '</b><br><font size=1>v' + repoList[i].version + '</font>'; // + '<br>' + extension.description + '</font>';
+
+    tr = document.createElement('tr');
+    td_1 = document.createElement('td');
+    td_2 = document.createElement('td');
+    tr.appendChild(td_1);
+    tr.appendChild(td_2);
+    var div = document.createElement('div');
+    //div.innerHTML = contents;
+    var button = document.createElement('a');
+    if (checkINSTALL(name)) {
+      button.setAttribute('class', 'button black');
+      button.textContent = 'INSTALL';
+      button.repo_name = name;
+      button.onclick = function(ev) {
+        console.log("***********Click install button! *****");
+        ExtensionServer.download(this, execAfterDownloadcb);
+      };
+    } else {
+      button.setAttribute('class', 'button dark_grey');
+      button.textContent = 'INSTALLED';
+    }
+
+    td_1.innerHTML = contents;
+    td_2.appendChild(button);
+    table.appendChild(tr);
+  }
+
+  serverrepoDiv.appendChild(table);
+}
+
+var execAfterDownloadcb = function(filePath, verChange, passedSelf){
+  console.log('execAfterDownloadcb: ' + filePath);
+  var unzipedFolderPath = ExtensionServer.findUnzipedFolderPath(filePath, passedSelf.repo_name);
+  ExtensionServer.unzipExtPackage(passedSelf, unzipedFolderPath, filePath, execAfterUnzipcb);  // extract: function(destPath, zipPackage, callback)
+}
+
+var execAfterUnzipcb = function(passedSelf, name, unzipedFolderPath) {
+  console.log('execAfterUnzipcb: ');
+  installRepoItem(name, unzipedFolderPath, function(){
+    passedSelf.setAttribute('class', 'button dark_grey');
+    passedSelf.textContent = 'INSTALLED';
+    refreshAllList();
+  });
+}
+
+refreshRepoList();
+refreshServerRepoList();
+refreshExtensionsList();
diff --git a/wrt/wrt_support/apps_repo/extensions_settings/src/was_key_event_handler.js b/wrt/wrt_support/apps_repo/extensions_settings/src/was_key_event_handler.js
new file mode 100644 (file)
index 0000000..48c127f
--- /dev/null
@@ -0,0 +1,18 @@
+(function() {
+    window.addEventListener('keydown', function(e) {
+        if (e.keyCode == 27) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+    window.addEventListener('mousedown', function(e) {
+        if (e.which == 3) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+})()
\ No newline at end of file
diff --git a/wrt/wrt_support/apps_repo/installer/assets/js/was_key_event_handler.js b/wrt/wrt_support/apps_repo/installer/assets/js/was_key_event_handler.js
new file mode 100644 (file)
index 0000000..48c127f
--- /dev/null
@@ -0,0 +1,18 @@
+(function() {
+    window.addEventListener('keydown', function(e) {
+        if (e.keyCode == 27) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+    window.addEventListener('mousedown', function(e) {
+        if (e.which == 3) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+})()
\ No newline at end of file
diff --git a/wrt/wrt_support/apps_repo/installer/config.xml b/wrt/wrt_support/apps_repo/installer/config.xml
new file mode 100644 (file)
index 0000000..1e07258
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/Caph2TestSuite" version="1.0.0" viewmodes="maximized">
+    <tizen:application id="0123456789.ANYTHING" package="0123456789" required_version="2.2"/>
+    <access origin="*" subdomains="true"/>
+    <content src="index.html"/>
+    <feature name="http://tizen.org/feature/screen.size.all"/>
+    <icon src="icon.png"/>
+    <name>installer</name>
+</widget>
diff --git a/wrt/wrt_support/apps_repo/installer/css/style.css b/wrt/wrt_support/apps_repo/installer/css/style.css
new file mode 100644 (file)
index 0000000..2556ec8
--- /dev/null
@@ -0,0 +1,105 @@
+body {
+    background-image: url("../images/bg.jpg");
+}
+
+.header {
+    margin-top: 5.56%;
+    margin-bottom: 1.85%;
+    color: white;
+}
+
+h1 {
+    text-align: center;
+}
+
+ul, p {
+    margin: 3px 0 3px 0;
+    -webkit-user-select: none;
+    user-select: none;
+    cursor: default;
+}
+
+ul {
+    padding-left: 25px;
+}
+
+.contents {
+    background-color: white;
+    width: 42.7%;
+    margin-top: 25px;
+    margin-left: auto;
+    margin-right: auto;
+    padding-bottom: 10px;
+    border-radius: 8px;
+    box-shadow: 10px 10px 5px gray;
+}
+
+.mobile {
+    width: 94%
+}
+
+.searchButton {
+    text-align: center;
+    cursor: pointer;
+    margin-top: 25px;
+    margin-left: auto;
+    margin-right: auto;
+    padding: 8px 15px 6px 15px;
+    font-size: 16px;
+    font-weight: bold;
+    color: #387bbe;
+    width: 42.7%;
+    border: solid 1px #387bbe;
+    border-radius: 5px;
+}
+
+.container {
+    display: -webkit-flex;
+    display: flex;
+    padding-top: 20px;
+    padding-left: 10px;
+    padding-bottom: 10px;
+    width: 97.56%;
+}
+
+.innerContainer {
+    display: -webkit-flex;
+    display: flex;
+    padding-left: 10px;
+    width: 97.56%;
+    font-size: 12px;
+}
+
+.icon {
+    width: 64px;
+    height: 64px;
+}
+
+.title {
+    font-size: 16px;
+    font-weight: bold;
+}
+
+.status {
+    cursor: pointer;
+    margin: 15px 10px 15px 10px;
+    padding: 8px 15px 6px 15px;
+    font-size: 16px;
+    font-weight: bold;
+    color: #387bbe;
+    border: solid 1px #387bbe;
+    border-radius: 5px;
+}
+
+.status.installed {
+    color: #007020;
+    border-color: #007020;
+}
+
+.divider {
+    width: 96.34%;
+    margin: 10px 0 0 2%;
+    border: 0;
+    border-top: 1px solid lightgray;
+    border-bottom: 1px solid #ffffff;
+}
diff --git a/wrt/wrt_support/apps_repo/installer/icon.png b/wrt/wrt_support/apps_repo/installer/icon.png
new file mode 100644 (file)
index 0000000..325539d
Binary files /dev/null and b/wrt/wrt_support/apps_repo/installer/icon.png differ
diff --git a/wrt/wrt_support/apps_repo/installer/images/bg.jpg b/wrt/wrt_support/apps_repo/installer/images/bg.jpg
new file mode 100644 (file)
index 0000000..ab5d8ee
Binary files /dev/null and b/wrt/wrt_support/apps_repo/installer/images/bg.jpg differ
diff --git a/wrt/wrt_support/apps_repo/installer/index.html b/wrt/wrt_support/apps_repo/installer/index.html
new file mode 100644 (file)
index 0000000..e7537b1
--- /dev/null
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, user-scalable=no">
+    <script type="text/javascript" src="./assets/js/was_key_event_handler.js"></script>
+    <link rel="stylesheet" href="css/style.css" type="text/css">
+    <title>Installer</title>
+</head>
+<body>
+
+</body>
+<script type="text/javascript" src="js/installer.js"></script>
+</html>
\ No newline at end of file
diff --git a/wrt/wrt_support/apps_repo/installer/js/installer.js b/wrt/wrt_support/apps_repo/installer/js/installer.js
new file mode 100644 (file)
index 0000000..6fa2bec
--- /dev/null
@@ -0,0 +1,342 @@
+(function () {
+    var fs = require('fs'),
+        path = require('path'),
+        InstallManager = require(path.join('..', '..', 'installer', 'manager.js')),
+        installedAppList = null,
+        WAS_EXTENSIONS_PATH = path.join('..', '..', 'extensions');
+
+    var restServer = require('./js/restServer.js');
+
+    var body = document.body,
+        header = document.createElement('div'),
+        h1 = document.createElement('h1'),
+        contents = document.createElement('div'),
+        contentsRest = document.createElement('div');
+
+    var searchRestButton = document.createElement('p');
+    addClass(searchRestButton, 'searchButton');
+    var isDisplayRest = false;
+    searchRestButton.addEventListener('click', function () {
+        var arrayTitle;
+        if(isDisplayRest) {
+            console.log("Already displayed the REST server contents!!");
+            return;
+        } else {
+            isDisplayRest = true;
+        }
+
+        restServer.search(function(arrayAppInfo){
+            console.log(JSON.stringify(arrayAppInfo));
+            var firstFlag = false;
+            for(var i=0; i<arrayAppInfo.length; i++){
+                console.log(arrayAppInfo[i].title);
+                createOne(contentsRest, {
+                    title: arrayAppInfo[i].title,
+                    icon: 'icon_' + arrayAppInfo[i].title + '.png',
+                    version: arrayAppInfo[i].version,
+                    pkg: '.wgt_RESTServer'
+                }, firstFlag);
+
+                if (!firstFlag) {
+                    firstFlag = true;
+                }
+            }
+        });
+    });
+    searchRestButton.innerHTML = 'Search - REST TEST Server';
+
+    addClass(header, 'header');
+    h1.innerHTML = 'WAS App Store';
+    header.appendChild(h1);
+    addClass(contents, 'contents');
+    addClass(contentsRest, 'contents');
+
+    if (window.innerHeight > window.innerWidth) {
+        addClass(searchRestButton, 'mobile');
+        addClass(contents, 'mobile');
+        addClass(contentsRest, 'mobile');
+    }
+
+    body.appendChild(header);
+    body.appendChild(contents);
+    body.appendChild(searchRestButton);
+    body.appendChild(contentsRest);
+
+    if (process.env.WAS_INSTALLER_PATH) {
+        InstallManager = require(path.join(process.env.WAS_INSTALLER_PATH, 'manager.js'));
+    }
+    if (process.env.WAS_EXTENSIONS_PATH) {
+        WAS_EXTENSIONS_PATH = process.env.WAS_EXTENSIONS_PATH;
+    }
+
+    var installManager = new InstallManager();
+
+    fs.readdir(path.join('sample', 'wgt'), function (err, files) {
+        var extname,
+            title = null,
+            firstFlag = false;
+
+        installedAppList = getInstalledAppList();
+
+        for (var i = 0, length = files.length; i < length; i++) {
+            extname = path.extname(files[i]);
+            if (extname === '.wgt' ||
+                isWebosInstallerInstalled() && extname === '.ipk' ||
+                isChromeInstallerInstalled() && extname === '.crx') {
+                title = path.basename(files[i], extname);
+
+                createOne(contents, {
+                    title: title,
+                    icon: 'icon_' + title + '.png',
+                    version: '1.0.0',
+                    pkg: extname
+                }, firstFlag);
+
+                if (!firstFlag) {
+                    firstFlag = true;
+                }
+                //packageList.push(files[i]);
+            }
+        }
+        indexList = i;
+    });
+
+    function createOne (parent, options, divider) {
+        var WAS_SAMPLE_PATH = process.env.WAS_SAMPLE_PATH,
+            container = document.createElement('div'),
+            innerContainer = document.createElement('div'),
+            icon = document.createElement('img'),
+            ul = document.createElement('ul'),
+            title = document.createElement('p'),
+            version = document.createElement('p'),
+            description = document.createElement('p'),
+            status = document.createElement('p');
+
+        addClass(container, 'container');
+
+        addClass(innerContainer, 'innerContainer');
+
+        addClass(icon, 'icon');
+        var icon_src;
+        if (WAS_SAMPLE_PATH) {
+            icon_src = path.join(WAS_SAMPLE_PATH, 'wgt', 'icon', options.icon);
+        } else {
+            icon_src = path.join('..', '..', 'sample', 'wgt', 'icon', options.icon);
+        }
+        fs.stat(icon_src, function (err, stats) {
+            if (err) {
+                icon.src = icon_src.replace(options.icon, 'icon_default.png');
+            } else {
+                icon.src = icon_src;
+            }
+        });
+
+        addClass(title, 'title');
+        title.innerHTML = options.title;
+
+        version.innerHTML = 'version ' + options.version;
+
+        description.innerHTML = 'package format ' + options.pkg;
+
+        addClass(status, 'status');
+        addClass(status, options.pkg);
+        status.id = options.title;
+        status.versionElement = version;
+        changeStatus(status, options.title);
+        status.addEventListener('click', function () {
+            var self = this,
+                className = self.className,
+                pkgName = '.wgt';
+
+            if (!isInstalled(self.id)) {
+                console.log('install ' + self.id + ' ..!!');
+                self.innerHTML = '......';
+                if (className.indexOf('ipk') > -1) {
+                    pkgName = '.ipk';
+                } else if (className.indexOf('crx') > -1) {
+                    pkgName = '.crx';
+                }
+
+                if (className.indexOf('REST') > -1) {
+                    pkgName = '.wgt';
+                    console.log('Start install from REST server : ' + self.id);
+                    restServer.download(self, function (webappPkgPath){
+                        console.log(webappPkgPath);
+                        installManager.control({i: webappPkgPath}, function () {
+                            installedAppList.push(self.id);
+                            changeStatus(self, self.id);
+                        });
+                    });
+                } else {
+                    installManager.control({i: path.join('sample', 'wgt', self.id + pkgName)}, function () {
+                        installedAppList.push(self.id);
+                        changeStatus(self, self.id);
+                    });
+                }
+            } else {
+                console.log('uninstall ' + self.id + ' ..!!');
+                self.innerHTML = '......';
+                installManager.control({r: self.id}, function () {
+                    installedAppList.splice(installedAppList.indexOf(self.id), 1);
+                    changeStatus(self, self.id);
+                });
+            }
+        });
+
+        version.id = options.title;
+        version.versionElement = version;
+        version.container = container;
+        version.displayAllVersion = false;
+
+        if(options.pkg === '.wgt_RESTServer') {
+            version.addEventListener('click', function () {
+                var self = this;
+                console.log("Click version text ! REST Server!! " + ", " + self.id);
+                if(version.displayAllVersion == false){
+                    restServer.showVersions(self.id, function(arrVer){
+                        console.log(arrVer);
+                        addVersionButton(self, arrVer);
+                    });
+                    version.displayAllVersion = true;
+                }
+            });
+        }
+
+        innerContainer.appendChild(icon);
+        ul.appendChild(title);
+        ul.appendChild(version);
+        ul.appendChild(description);
+        innerContainer.appendChild(ul);
+
+        container.appendChild(innerContainer);
+        container.appendChild(status);
+
+        if (divider) {
+            var div = document.createElement('div');
+            addClass(div, 'divider');
+            parent.appendChild(div);
+        }
+
+        parent.appendChild(container);
+    }
+
+
+    function addVersionButton(passedSelf, arrVer){
+        console.log('addVersionButton arrVer.length = '+arrVer.length);
+        var verButton = [];
+        for(var i=0; i<arrVer.length; i++){
+            var str = arrVer[i];
+
+            if(i == 0){
+                passedSelf.innerHTML = 'version';
+            }
+
+            passedSelf.innerHTML += '  ' + str;
+
+            verButton[i] = document.createElement('p');
+            addClass(verButton[i], 'status');
+            verButton[i].id = passedSelf.id;
+            verButton[i].innerHTML = str;
+            verButton[i].versionElement = passedSelf;
+
+            verButton[i].addEventListener('click', function(string){
+                    return  function () {
+                        var butself = this;
+                        butself.version = string;
+                        butself.id = passedSelf.id;
+                        butself.innerHTML = '......';
+                        downloadFromServer(butself, true);
+                    }
+                }(str)
+            );
+            (passedSelf.container).appendChild(verButton[i]);
+        }
+    }
+
+    function downloadFromServer(buttonSelf, versionChange){
+        console.log('Start installFromServer !! **** ');
+        restServer.download(buttonSelf, installFromLocalPath)
+    }
+
+    function installFromLocalPath(filePath, versionChange, passedSelf){
+        var version = passedSelf.version;
+        installManager.control({i: filePath}, function () {
+            if(versionChange  === true){
+                (passedSelf.versionElement).innerHTML = 'version ' + version;
+            } else {
+                installedAppList.push(passedSelf.id);
+                console.log("installedAppList push OK!!");
+            }
+            changeStatus(passedSelf, passedSelf.id);
+            console.log("changeStatus pass OK!!");
+        });
+    }
+
+    function changeStatus (element, title) {
+        console.log(title);
+        if (isInstalled(title)) {
+            element.innerHTML = 'installed';
+            addClass(element, 'installed');
+        } else {
+            element.innerHTML = 'install';
+            removeClass(element, 'installed');
+        }
+    }
+
+    function isInstalled (title) {
+        if (installedAppList !== null) {
+            for (var i = 0, length = installedAppList.length; i < length; i++) {
+                if (installedAppList[i] === title) {
+                    return true;
+                }
+            }
+        }
+    }
+
+    function getInstalledAppList () {
+        return installManager.control({list:true});
+    }
+
+    function isWebosInstallerInstalled () {
+        var extensions_db = path.join(WAS_EXTENSIONS_PATH, 'extensions_db.json');
+        try {
+            var data = JSON.parse(fs.readFileSync(extensions_db));
+        } catch (e) {
+            return false;
+        }
+
+        for (var i = 0, length = data.length; i < length; i++) {
+            console.log(data[i].name);
+            if (data[i].name === 'webos_installer') {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    function isChromeInstallerInstalled () {
+        var extensions_db = path.join(WAS_EXTENSIONS_PATH, 'extensions_db.json');
+        try {
+            var data = JSON.parse(fs.readFileSync(extensions_db));
+        } catch (e) {
+            return false;
+        }
+
+        for (var i = 0, length = data.length; i < length; i++) {
+            console.log(data[i].name);
+            if (data[i].name === 'chrome_installer') {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    function addClass(element, className) {
+        element.className += " " + className;
+    }
+
+    function removeClass(element, className) {
+        var check = new RegExp("(\\s|^)" + className + "(\\s|$)");
+        element.className = element.className.replace(check, " ").trim();
+    }
+})();
diff --git a/wrt/wrt_support/apps_repo/installer/js/restServer.js b/wrt/wrt_support/apps_repo/installer/js/restServer.js
new file mode 100644 (file)
index 0000000..e90bc63
--- /dev/null
@@ -0,0 +1,144 @@
+
+var fs = require('fs'),
+    path = require('path'),
+    http = require('http'),
+    HOSTSERVER = 'http://10.251.43.156:52273/';
+
+module.exports = {
+
+    search: function(callbackfunc){
+        var arrAppInfos = [];
+        var request = new XMLHttpRequest();
+        request.onreadystatechange = function (event) {
+            if(request.readyState == 4) {
+                if(request.status == 200) {
+                    var str = request.responseText;
+                    console.log(str);
+                    var objson = JSON.parse(str);
+                    console.log(objson.apps.length);
+                    //console.log(JSON.stringify(objson.apps[0]));
+
+                    for(var i=0; i<objson.apps.length; i++){
+                      var appInfo = {};
+                      // appName
+                      if(objson.apps[i].name == undefined){
+                        appInfo.title = 'No Title';
+                      } else {
+                        appInfo.title = objson.apps[i].name;
+                      }
+                      // appVersion
+                      if(objson.apps[i].name == undefined){
+                        appInfo.version = 'No VerInfo';
+                      } else {
+                        appInfo.version = objson.apps[i].latestVersion.version;
+                      }
+
+                      /*/ appDescription
+                      if(objson.apps[i].description == undefined){
+                        appInfo.version = 'No DescriptionInfo';
+                      } else {
+                        appInfo.description = objson.apps[i].description;
+                      }*/
+                      console.log(JSON.stringify(appInfo));
+                      arrAppInfos.push(appInfo);
+                    }
+                    console.log(JSON.stringify(arrAppInfos));
+                    callbackfunc(arrAppInfos);
+                }
+            }
+        };
+        request.open('GET', HOSTSERVER + 'apps', false);
+        request.send();
+    },
+
+/*
+    download: function(name){
+        var filePath = './temp_webapp/' + name + '.wgt';
+
+        var request = new XMLHttpRequest();
+        request.open('GET', HOSTSERVER + 'apps/' + name + '?package=true', false);
+        request.send();
+        //console.log(request.responseText);
+        var fileStream = fs.createWriteStream(filePath);
+        fileStream.write(request.response);
+
+        return filePath;
+    },
+*/
+
+    download: function(passedSelf, callbackfunc, version){
+        var name = passedSelf.id;
+        var version = passedSelf.version;
+        console.log('download ~~~' + name + ' ' + version + ' ' + callbackfunc);
+
+        var version_key = '',
+            verChange = false;
+        if( version != undefined) {
+            version_key = '/' + version;
+            verChange = true;
+        }
+
+        var filePath = './temp_webapp/' + name + '.wgt';
+        var httpOptions = {
+            hostname: '10.251.43.156',
+            port: '52273',
+            path: '/apps/' + name + version_key + '?get=package',
+            method: 'GET'
+        };
+
+        var reqGet = http.request(httpOptions, function (response){
+            var statusCode = response.statusCode;
+
+            if(statusCode == 404 || statusCode == 403)
+            {
+                console.log('statusCode = ' + statusCode);
+            } else {
+                var idx = 0;
+                //console.log(JSON.stringify(response));
+                for(var p in response.headers){
+                  console.log(p);
+                }
+
+                var len = parseInt(response.headers["content-length"]);
+                console.log(len);
+                var body = new Buffer(len);
+
+                response.setEncoding('binary');
+
+                response.on('data', function(chunk){
+                    console.log('res data !!!');
+                    body.write(chunk, idx, 'binary');
+                    idx += chunk.length;
+                });
+
+                response.on('end', function(){
+                    console.log('res end !!!');
+                    var fileStream = fs.createWriteStream(filePath);
+                    fileStream.write(body);
+                    callbackfunc(filePath, verChange, passedSelf);
+                });
+            }
+        });
+        reqGet.on('error', function(err){
+            console.log(err);
+        });
+        reqGet.end();
+    },
+
+    showVersions: function(name, callbackfunc){
+      console.log('showVersions ~~~');
+      var request = new XMLHttpRequest();
+      request.onreadystatechange = function (event) {
+          if(request.readyState == 4) {
+              if(request.status == 200) {
+                var str = request.responseText;
+                console.log(typeof str + ' ' + str);
+                var arr = JSON.parse(str);
+                callbackfunc(arr);
+              }
+          }
+      };
+      request.open('GET', HOSTSERVER + 'apps/' + name + '?get=versions', true);
+      request.send();
+    },
+};
diff --git a/wrt/wrt_support/apps_repo/webgl/assets/js/three.min.js b/wrt/wrt_support/apps_repo/webgl/assets/js/three.min.js
new file mode 100644 (file)
index 0000000..bd820fe
--- /dev/null
@@ -0,0 +1,870 @@
+// threejs.org/license
+'use strict';var THREE={REVISION:"73"};"function"===typeof define&&define.amd?define("three",THREE):"undefined"!==typeof exports&&"undefined"!==typeof module&&(module.exports=THREE);
+void 0!==self.requestAnimationFrame&&void 0!==self.cancelAnimationFrame||function(){for(var a=0,b=["ms","moz","webkit","o"],c=0;c<b.length&&!self.requestAnimationFrame;++c)self.requestAnimationFrame=self[b[c]+"RequestAnimationFrame"],self.cancelAnimationFrame=self[b[c]+"CancelAnimationFrame"]||self[b[c]+"CancelRequestAnimationFrame"];void 0===self.requestAnimationFrame&&void 0!==self.setTimeout&&(self.requestAnimationFrame=function(b){var c=Date.now(),g=Math.max(0,16-(c-a)),f=self.setTimeout(function(){b(c+
+g)},g);a=c+g;return f});void 0===self.cancelAnimationFrame&&void 0!==self.clearTimeout&&(self.cancelAnimationFrame=function(a){self.clearTimeout(a)})}();void 0===self.performance&&(self.performance={});void 0===self.performance.now&&function(){var a=Date.now();self.performance.now=function(){return Date.now()-a}}();void 0===Number.EPSILON&&(Number.EPSILON=Math.pow(2,-52));void 0===Math.sign&&(Math.sign=function(a){return 0>a?-1:0<a?1:+a});
+void 0===Function.prototype.name&&void 0!==Object.defineProperty&&Object.defineProperty(Function.prototype,"name",{get:function(){return this.toString().match(/^\s*function\s*(\S*)\s*\(/)[1]}});THREE.MOUSE={LEFT:0,MIDDLE:1,RIGHT:2};THREE.CullFaceNone=0;THREE.CullFaceBack=1;THREE.CullFaceFront=2;THREE.CullFaceFrontBack=3;THREE.FrontFaceDirectionCW=0;THREE.FrontFaceDirectionCCW=1;THREE.BasicShadowMap=0;THREE.PCFShadowMap=1;THREE.PCFSoftShadowMap=2;THREE.FrontSide=0;THREE.BackSide=1;
+THREE.DoubleSide=2;THREE.FlatShading=1;THREE.SmoothShading=2;THREE.NoColors=0;THREE.FaceColors=1;THREE.VertexColors=2;THREE.NoBlending=0;THREE.NormalBlending=1;THREE.AdditiveBlending=2;THREE.SubtractiveBlending=3;THREE.MultiplyBlending=4;THREE.CustomBlending=5;THREE.AddEquation=100;THREE.SubtractEquation=101;THREE.ReverseSubtractEquation=102;THREE.MinEquation=103;THREE.MaxEquation=104;THREE.ZeroFactor=200;THREE.OneFactor=201;THREE.SrcColorFactor=202;THREE.OneMinusSrcColorFactor=203;
+THREE.SrcAlphaFactor=204;THREE.OneMinusSrcAlphaFactor=205;THREE.DstAlphaFactor=206;THREE.OneMinusDstAlphaFactor=207;THREE.DstColorFactor=208;THREE.OneMinusDstColorFactor=209;THREE.SrcAlphaSaturateFactor=210;THREE.NeverDepth=0;THREE.AlwaysDepth=1;THREE.LessDepth=2;THREE.LessEqualDepth=3;THREE.EqualDepth=4;THREE.GreaterEqualDepth=5;THREE.GreaterDepth=6;THREE.NotEqualDepth=7;THREE.MultiplyOperation=0;THREE.MixOperation=1;THREE.AddOperation=2;THREE.UVMapping=300;THREE.CubeReflectionMapping=301;
+THREE.CubeRefractionMapping=302;THREE.EquirectangularReflectionMapping=303;THREE.EquirectangularRefractionMapping=304;THREE.SphericalReflectionMapping=305;THREE.RepeatWrapping=1E3;THREE.ClampToEdgeWrapping=1001;THREE.MirroredRepeatWrapping=1002;THREE.NearestFilter=1003;THREE.NearestMipMapNearestFilter=1004;THREE.NearestMipMapLinearFilter=1005;THREE.LinearFilter=1006;THREE.LinearMipMapNearestFilter=1007;THREE.LinearMipMapLinearFilter=1008;THREE.UnsignedByteType=1009;THREE.ByteType=1010;
+THREE.ShortType=1011;THREE.UnsignedShortType=1012;THREE.IntType=1013;THREE.UnsignedIntType=1014;THREE.FloatType=1015;THREE.HalfFloatType=1025;THREE.UnsignedShort4444Type=1016;THREE.UnsignedShort5551Type=1017;THREE.UnsignedShort565Type=1018;THREE.AlphaFormat=1019;THREE.RGBFormat=1020;THREE.RGBAFormat=1021;THREE.LuminanceFormat=1022;THREE.LuminanceAlphaFormat=1023;THREE.RGBEFormat=THREE.RGBAFormat;THREE.RGB_S3TC_DXT1_Format=2001;THREE.RGBA_S3TC_DXT1_Format=2002;THREE.RGBA_S3TC_DXT3_Format=2003;
+THREE.RGBA_S3TC_DXT5_Format=2004;THREE.RGB_PVRTC_4BPPV1_Format=2100;THREE.RGB_PVRTC_2BPPV1_Format=2101;THREE.RGBA_PVRTC_4BPPV1_Format=2102;THREE.RGBA_PVRTC_2BPPV1_Format=2103;THREE.LoopOnce=2200;THREE.LoopRepeat=2201;THREE.LoopPingPong=2202;
+THREE.Projector=function(){console.error("THREE.Projector has been moved to /examples/js/renderers/Projector.js.");this.projectVector=function(a,b){console.warn("THREE.Projector: .projectVector() is now vector.project().");a.project(b)};this.unprojectVector=function(a,b){console.warn("THREE.Projector: .unprojectVector() is now vector.unproject().");a.unproject(b)};this.pickingRay=function(a,b){console.error("THREE.Projector: .pickingRay() is now raycaster.setFromCamera().")}};
+THREE.CanvasRenderer=function(){console.error("THREE.CanvasRenderer has been moved to /examples/js/renderers/CanvasRenderer.js");this.domElement=document.createElement("canvas");this.clear=function(){};this.render=function(){};this.setClearColor=function(){};this.setSize=function(){}};THREE.Color=function(a){return 3===arguments.length?this.fromArray(arguments):this.set(a)};
+THREE.Color.prototype={constructor:THREE.Color,r:1,g:1,b:1,set:function(a){a instanceof THREE.Color?this.copy(a):"number"===typeof a?this.setHex(a):"string"===typeof a&&this.setStyle(a);return this},setHex:function(a){a=Math.floor(a);this.r=(a>>16&255)/255;this.g=(a>>8&255)/255;this.b=(a&255)/255;return this},setRGB:function(a,b,c){this.r=a;this.g=b;this.b=c;return this},setHSL:function(){function a(a,c,d){0>d&&(d+=1);1<d&&(d-=1);return d<1/6?a+6*(c-a)*d:.5>d?c:d<2/3?a+6*(c-a)*(2/3-d):a}return function(b,
+c,d){b=THREE.Math.euclideanModulo(b,1);c=THREE.Math.clamp(c,0,1);d=THREE.Math.clamp(d,0,1);0===c?this.r=this.g=this.b=d:(c=.5>=d?d*(1+c):d+c-d*c,d=2*d-c,this.r=a(d,c,b+1/3),this.g=a(d,c,b),this.b=a(d,c,b-1/3));return this}}(),setStyle:function(a){function b(b){void 0!==b&&1>parseFloat(b)&&console.warn("THREE.Color: Alpha component of "+a+" will be ignored.")}var c;if(c=/^((?:rgb|hsl)a?)\(\s*([^\)]*)\)/.exec(a)){var d=c[2];switch(c[1]){case "rgb":case "rgba":if(c=/^(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(d))return this.r=
+Math.min(255,parseInt(c[1],10))/255,this.g=Math.min(255,parseInt(c[2],10))/255,this.b=Math.min(255,parseInt(c[3],10))/255,b(c[5]),this;if(c=/^(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(d))return this.r=Math.min(100,parseInt(c[1],10))/100,this.g=Math.min(100,parseInt(c[2],10))/100,this.b=Math.min(100,parseInt(c[3],10))/100,b(c[5]),this;break;case "hsl":case "hsla":if(c=/^([0-9]*\.?[0-9]+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(d)){var d=parseFloat(c[1])/
+360,e=parseInt(c[2],10)/100,g=parseInt(c[3],10)/100;b(c[5]);return this.setHSL(d,e,g)}}}else if(c=/^\#([A-Fa-f0-9]+)$/.exec(a)){c=c[1];d=c.length;if(3===d)return this.r=parseInt(c.charAt(0)+c.charAt(0),16)/255,this.g=parseInt(c.charAt(1)+c.charAt(1),16)/255,this.b=parseInt(c.charAt(2)+c.charAt(2),16)/255,this;if(6===d)return this.r=parseInt(c.charAt(0)+c.charAt(1),16)/255,this.g=parseInt(c.charAt(2)+c.charAt(3),16)/255,this.b=parseInt(c.charAt(4)+c.charAt(5),16)/255,this}a&&0<a.length&&(c=THREE.ColorKeywords[a],
+void 0!==c?this.setHex(c):console.warn("THREE.Color: Unknown color "+a));return this},clone:function(){return new this.constructor(this.r,this.g,this.b)},copy:function(a){this.r=a.r;this.g=a.g;this.b=a.b;return this},copyGammaToLinear:function(a,b){void 0===b&&(b=2);this.r=Math.pow(a.r,b);this.g=Math.pow(a.g,b);this.b=Math.pow(a.b,b);return this},copyLinearToGamma:function(a,b){void 0===b&&(b=2);var c=0<b?1/b:1;this.r=Math.pow(a.r,c);this.g=Math.pow(a.g,c);this.b=Math.pow(a.b,c);return this},convertGammaToLinear:function(){var a=
+this.r,b=this.g,c=this.b;this.r=a*a;this.g=b*b;this.b=c*c;return this},convertLinearToGamma:function(){this.r=Math.sqrt(this.r);this.g=Math.sqrt(this.g);this.b=Math.sqrt(this.b);return this},getHex:function(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0},getHexString:function(){return("000000"+this.getHex().toString(16)).slice(-6)},getHSL:function(a){a=a||{h:0,s:0,l:0};var b=this.r,c=this.g,d=this.b,e=Math.max(b,c,d),g=Math.min(b,c,d),f,h=(g+e)/2;if(g===e)g=f=0;else{var l=e-g,g=.5>=h?l/(e+g):
+l/(2-e-g);switch(e){case b:f=(c-d)/l+(c<d?6:0);break;case c:f=(d-b)/l+2;break;case d:f=(b-c)/l+4}f/=6}a.h=f;a.s=g;a.l=h;return a},getStyle:function(){return"rgb("+(255*this.r|0)+","+(255*this.g|0)+","+(255*this.b|0)+")"},offsetHSL:function(a,b,c){var d=this.getHSL();d.h+=a;d.s+=b;d.l+=c;this.setHSL(d.h,d.s,d.l);return this},add:function(a){this.r+=a.r;this.g+=a.g;this.b+=a.b;return this},addColors:function(a,b){this.r=a.r+b.r;this.g=a.g+b.g;this.b=a.b+b.b;return this},addScalar:function(a){this.r+=
+a;this.g+=a;this.b+=a;return this},multiply:function(a){this.r*=a.r;this.g*=a.g;this.b*=a.b;return this},multiplyScalar:function(a){this.r*=a;this.g*=a;this.b*=a;return this},lerp:function(a,b){this.r+=(a.r-this.r)*b;this.g+=(a.g-this.g)*b;this.b+=(a.b-this.b)*b;return this},equals:function(a){return a.r===this.r&&a.g===this.g&&a.b===this.b},fromArray:function(a,b){void 0===b&&(b=0);this.r=a[b];this.g=a[b+1];this.b=a[b+2];return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=
+this.r;a[b+1]=this.g;a[b+2]=this.b;return a}};
+THREE.ColorKeywords={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,
+darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,
+grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,
+lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,
+palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,
+tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};THREE.Quaternion=function(a,b,c,d){this._x=a||0;this._y=b||0;this._z=c||0;this._w=void 0!==d?d:1};
+THREE.Quaternion.prototype={constructor:THREE.Quaternion,get x(){return this._x},set x(a){this._x=a;this.onChangeCallback()},get y(){return this._y},set y(a){this._y=a;this.onChangeCallback()},get z(){return this._z},set z(a){this._z=a;this.onChangeCallback()},get w(){return this._w},set w(a){this._w=a;this.onChangeCallback()},set:function(a,b,c,d){this._x=a;this._y=b;this._z=c;this._w=d;this.onChangeCallback();return this},clone:function(){return new this.constructor(this._x,this._y,this._z,this._w)},
+copy:function(a){this._x=a.x;this._y=a.y;this._z=a.z;this._w=a.w;this.onChangeCallback();return this},setFromEuler:function(a,b){if(!1===a instanceof THREE.Euler)throw Error("THREE.Quaternion: .setFromEuler() now expects a Euler rotation rather than a Vector3 and order.");var c=Math.cos(a._x/2),d=Math.cos(a._y/2),e=Math.cos(a._z/2),g=Math.sin(a._x/2),f=Math.sin(a._y/2),h=Math.sin(a._z/2),l=a.order;"XYZ"===l?(this._x=g*d*e+c*f*h,this._y=c*f*e-g*d*h,this._z=c*d*h+g*f*e,this._w=c*d*e-g*f*h):"YXZ"===
+l?(this._x=g*d*e+c*f*h,this._y=c*f*e-g*d*h,this._z=c*d*h-g*f*e,this._w=c*d*e+g*f*h):"ZXY"===l?(this._x=g*d*e-c*f*h,this._y=c*f*e+g*d*h,this._z=c*d*h+g*f*e,this._w=c*d*e-g*f*h):"ZYX"===l?(this._x=g*d*e-c*f*h,this._y=c*f*e+g*d*h,this._z=c*d*h-g*f*e,this._w=c*d*e+g*f*h):"YZX"===l?(this._x=g*d*e+c*f*h,this._y=c*f*e+g*d*h,this._z=c*d*h-g*f*e,this._w=c*d*e-g*f*h):"XZY"===l&&(this._x=g*d*e-c*f*h,this._y=c*f*e-g*d*h,this._z=c*d*h+g*f*e,this._w=c*d*e+g*f*h);if(!1!==b)this.onChangeCallback();return this},setFromAxisAngle:function(a,
+b){var c=b/2,d=Math.sin(c);this._x=a.x*d;this._y=a.y*d;this._z=a.z*d;this._w=Math.cos(c);this.onChangeCallback();return this},setFromRotationMatrix:function(a){var b=a.elements,c=b[0];a=b[4];var d=b[8],e=b[1],g=b[5],f=b[9],h=b[2],l=b[6],b=b[10],k=c+g+b;0<k?(c=.5/Math.sqrt(k+1),this._w=.25/c,this._x=(l-f)*c,this._y=(d-h)*c,this._z=(e-a)*c):c>g&&c>b?(c=2*Math.sqrt(1+c-g-b),this._w=(l-f)/c,this._x=.25*c,this._y=(a+e)/c,this._z=(d+h)/c):g>b?(c=2*Math.sqrt(1+g-c-b),this._w=(d-h)/c,this._x=(a+e)/c,this._y=
+.25*c,this._z=(f+l)/c):(c=2*Math.sqrt(1+b-c-g),this._w=(e-a)/c,this._x=(d+h)/c,this._y=(f+l)/c,this._z=.25*c);this.onChangeCallback();return this},setFromUnitVectors:function(){var a,b;return function(c,d){void 0===a&&(a=new THREE.Vector3);b=c.dot(d)+1;1E-6>b?(b=0,Math.abs(c.x)>Math.abs(c.z)?a.set(-c.y,c.x,0):a.set(0,-c.z,c.y)):a.crossVectors(c,d);this._x=a.x;this._y=a.y;this._z=a.z;this._w=b;this.normalize();return this}}(),inverse:function(){this.conjugate().normalize();return this},conjugate:function(){this._x*=
+-1;this._y*=-1;this._z*=-1;this.onChangeCallback();return this},dot:function(a){return this._x*a._x+this._y*a._y+this._z*a._z+this._w*a._w},lengthSq:function(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var a=this.length();0===a?(this._z=this._y=this._x=0,this._w=1):(a=1/a,this._x*=a,this._y*=a,this._z*=a,this._w*=a);this.onChangeCallback();return this},
+multiply:function(a,b){return void 0!==b?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(a,b)):this.multiplyQuaternions(this,a)},multiplyQuaternions:function(a,b){var c=a._x,d=a._y,e=a._z,g=a._w,f=b._x,h=b._y,l=b._z,k=b._w;this._x=c*k+g*f+d*l-e*h;this._y=d*k+g*h+e*f-c*l;this._z=e*k+g*l+c*h-d*f;this._w=g*k-c*f-d*h-e*l;this.onChangeCallback();return this},multiplyVector3:function(a){console.warn("THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead.");
+return a.applyQuaternion(this)},slerp:function(a,b){if(0===b)return this;if(1===b)return this.copy(a);var c=this._x,d=this._y,e=this._z,g=this._w,f=g*a._w+c*a._x+d*a._y+e*a._z;0>f?(this._w=-a._w,this._x=-a._x,this._y=-a._y,this._z=-a._z,f=-f):this.copy(a);if(1<=f)return this._w=g,this._x=c,this._y=d,this._z=e,this;var h=Math.acos(f),l=Math.sqrt(1-f*f);if(.001>Math.abs(l))return this._w=.5*(g+this._w),this._x=.5*(c+this._x),this._y=.5*(d+this._y),this._z=.5*(e+this._z),this;f=Math.sin((1-b)*h)/l;h=
+Math.sin(b*h)/l;this._w=g*f+this._w*h;this._x=c*f+this._x*h;this._y=d*f+this._y*h;this._z=e*f+this._z*h;this.onChangeCallback();return this},equals:function(a){return a._x===this._x&&a._y===this._y&&a._z===this._z&&a._w===this._w},fromArray:function(a,b){void 0===b&&(b=0);this._x=a[b];this._y=a[b+1];this._z=a[b+2];this._w=a[b+3];this.onChangeCallback();return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this._x;a[b+1]=this._y;a[b+2]=this._z;a[b+3]=this._w;return a},onChange:function(a){this.onChangeCallback=
+a;return this},onChangeCallback:function(){}};THREE.Quaternion.slerp=function(a,b,c,d){return c.copy(a).slerp(b,d)};THREE.Vector2=function(a,b){this.x=a||0;this.y=b||0};
+THREE.Vector2.prototype={constructor:THREE.Vector2,get width(){return this.x},set width(a){this.x=a},get height(){return this.y},set height(a){this.y=a},set:function(a,b){this.x=a;this.y=b;return this},setX:function(a){this.x=a;return this},setY:function(a){this.y=a;return this},setComponent:function(a,b){switch(a){case 0:this.x=b;break;case 1:this.y=b;break;default:throw Error("index is out of range: "+a);}},getComponent:function(a){switch(a){case 0:return this.x;case 1:return this.y;default:throw Error("index is out of range: "+
+a);}},clone:function(){return new this.constructor(this.x,this.y)},copy:function(a){this.x=a.x;this.y=a.y;return this},add:function(a,b){if(void 0!==b)return console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(a,b);this.x+=a.x;this.y+=a.y;return this},addScalar:function(a){this.x+=a;this.y+=a;return this},addVectors:function(a,b){this.x=a.x+b.x;this.y=a.y+b.y;return this},addScaledVector:function(a,b){this.x+=a.x*b;this.y+=a.y*b;return this},
+sub:function(a,b){if(void 0!==b)return console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(a,b);this.x-=a.x;this.y-=a.y;return this},subScalar:function(a){this.x-=a;this.y-=a;return this},subVectors:function(a,b){this.x=a.x-b.x;this.y=a.y-b.y;return this},multiply:function(a){this.x*=a.x;this.y*=a.y;return this},multiplyScalar:function(a){isFinite(a)?(this.x*=a,this.y*=a):this.y=this.x=0;return this},divide:function(a){this.x/=a.x;
+this.y/=a.y;return this},divideScalar:function(a){return this.multiplyScalar(1/a)},min:function(a){this.x=Math.min(this.x,a.x);this.y=Math.min(this.y,a.y);return this},max:function(a){this.x=Math.max(this.x,a.x);this.y=Math.max(this.y,a.y);return this},clamp:function(a,b){this.x=Math.max(a.x,Math.min(b.x,this.x));this.y=Math.max(a.y,Math.min(b.y,this.y));return this},clampScalar:function(){var a,b;return function(c,d){void 0===a&&(a=new THREE.Vector2,b=new THREE.Vector2);a.set(c,c);b.set(d,d);return this.clamp(a,
+b)}}(),clampLength:function(a,b){var c=this.length();this.multiplyScalar(Math.max(a,Math.min(b,c))/c);return this},floor:function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this},ceil:function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this},round:function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this},roundToZero:function(){this.x=0>this.x?Math.ceil(this.x):Math.floor(this.x);this.y=0>this.y?Math.ceil(this.y):Math.floor(this.y);return this},negate:function(){this.x=
+-this.x;this.y=-this.y;return this},dot:function(a){return this.x*a.x+this.y*a.y},lengthSq:function(){return this.x*this.x+this.y*this.y},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)},normalize:function(){return this.divideScalar(this.length())},distanceTo:function(a){return Math.sqrt(this.distanceToSquared(a))},distanceToSquared:function(a){var b=this.x-a.x;a=this.y-a.y;return b*b+a*a},setLength:function(a){return this.multiplyScalar(a/
+this.length())},lerp:function(a,b){this.x+=(a.x-this.x)*b;this.y+=(a.y-this.y)*b;return this},lerpVectors:function(a,b,c){this.subVectors(b,a).multiplyScalar(c).add(a);return this},equals:function(a){return a.x===this.x&&a.y===this.y},fromArray:function(a,b){void 0===b&&(b=0);this.x=a[b];this.y=a[b+1];return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this.x;a[b+1]=this.y;return a},fromAttribute:function(a,b,c){void 0===c&&(c=0);b=b*a.itemSize+c;this.x=a.array[b];this.y=
+a.array[b+1];return this},rotateAround:function(a,b){var c=Math.cos(b),d=Math.sin(b),e=this.x-a.x,g=this.y-a.y;this.x=e*c-g*d+a.x;this.y=e*d+g*c+a.y;return this}};THREE.Vector3=function(a,b,c){this.x=a||0;this.y=b||0;this.z=c||0};
+THREE.Vector3.prototype={constructor:THREE.Vector3,set:function(a,b,c){this.x=a;this.y=b;this.z=c;return this},setX:function(a){this.x=a;return this},setY:function(a){this.y=a;return this},setZ:function(a){this.z=a;return this},setComponent:function(a,b){switch(a){case 0:this.x=b;break;case 1:this.y=b;break;case 2:this.z=b;break;default:throw Error("index is out of range: "+a);}},getComponent:function(a){switch(a){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error("index is out of range: "+
+a);}},clone:function(){return new this.constructor(this.x,this.y,this.z)},copy:function(a){this.x=a.x;this.y=a.y;this.z=a.z;return this},add:function(a,b){if(void 0!==b)return console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(a,b);this.x+=a.x;this.y+=a.y;this.z+=a.z;return this},addScalar:function(a){this.x+=a;this.y+=a;this.z+=a;return this},addVectors:function(a,b){this.x=a.x+b.x;this.y=a.y+b.y;this.z=a.z+b.z;return this},addScaledVector:function(a,
+b){this.x+=a.x*b;this.y+=a.y*b;this.z+=a.z*b;return this},sub:function(a,b){if(void 0!==b)return console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(a,b);this.x-=a.x;this.y-=a.y;this.z-=a.z;return this},subScalar:function(a){this.x-=a;this.y-=a;this.z-=a;return this},subVectors:function(a,b){this.x=a.x-b.x;this.y=a.y-b.y;this.z=a.z-b.z;return this},multiply:function(a,b){if(void 0!==b)return console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),
+this.multiplyVectors(a,b);this.x*=a.x;this.y*=a.y;this.z*=a.z;return this},multiplyScalar:function(a){isFinite(a)?(this.x*=a,this.y*=a,this.z*=a):this.z=this.y=this.x=0;return this},multiplyVectors:function(a,b){this.x=a.x*b.x;this.y=a.y*b.y;this.z=a.z*b.z;return this},applyEuler:function(){var a;return function(b){!1===b instanceof THREE.Euler&&console.error("THREE.Vector3: .applyEuler() now expects a Euler rotation rather than a Vector3 and order.");void 0===a&&(a=new THREE.Quaternion);this.applyQuaternion(a.setFromEuler(b));
+return this}}(),applyAxisAngle:function(){var a;return function(b,c){void 0===a&&(a=new THREE.Quaternion);this.applyQuaternion(a.setFromAxisAngle(b,c));return this}}(),applyMatrix3:function(a){var b=this.x,c=this.y,d=this.z;a=a.elements;this.x=a[0]*b+a[3]*c+a[6]*d;this.y=a[1]*b+a[4]*c+a[7]*d;this.z=a[2]*b+a[5]*c+a[8]*d;return this},applyMatrix4:function(a){var b=this.x,c=this.y,d=this.z;a=a.elements;this.x=a[0]*b+a[4]*c+a[8]*d+a[12];this.y=a[1]*b+a[5]*c+a[9]*d+a[13];this.z=a[2]*b+a[6]*c+a[10]*d+a[14];
+return this},applyProjection:function(a){var b=this.x,c=this.y,d=this.z;a=a.elements;var e=1/(a[3]*b+a[7]*c+a[11]*d+a[15]);this.x=(a[0]*b+a[4]*c+a[8]*d+a[12])*e;this.y=(a[1]*b+a[5]*c+a[9]*d+a[13])*e;this.z=(a[2]*b+a[6]*c+a[10]*d+a[14])*e;return this},applyQuaternion:function(a){var b=this.x,c=this.y,d=this.z,e=a.x,g=a.y,f=a.z;a=a.w;var h=a*b+g*d-f*c,l=a*c+f*b-e*d,k=a*d+e*c-g*b,b=-e*b-g*c-f*d;this.x=h*a+b*-e+l*-f-k*-g;this.y=l*a+b*-g+k*-e-h*-f;this.z=k*a+b*-f+h*-g-l*-e;return this},project:function(){var a;
+return function(b){void 0===a&&(a=new THREE.Matrix4);a.multiplyMatrices(b.projectionMatrix,a.getInverse(b.matrixWorld));return this.applyProjection(a)}}(),unproject:function(){var a;return function(b){void 0===a&&(a=new THREE.Matrix4);a.multiplyMatrices(b.matrixWorld,a.getInverse(b.projectionMatrix));return this.applyProjection(a)}}(),transformDirection:function(a){var b=this.x,c=this.y,d=this.z;a=a.elements;this.x=a[0]*b+a[4]*c+a[8]*d;this.y=a[1]*b+a[5]*c+a[9]*d;this.z=a[2]*b+a[6]*c+a[10]*d;this.normalize();
+return this},divide:function(a){this.x/=a.x;this.y/=a.y;this.z/=a.z;return this},divideScalar:function(a){return this.multiplyScalar(1/a)},min:function(a){this.x=Math.min(this.x,a.x);this.y=Math.min(this.y,a.y);this.z=Math.min(this.z,a.z);return this},max:function(a){this.x=Math.max(this.x,a.x);this.y=Math.max(this.y,a.y);this.z=Math.max(this.z,a.z);return this},clamp:function(a,b){this.x=Math.max(a.x,Math.min(b.x,this.x));this.y=Math.max(a.y,Math.min(b.y,this.y));this.z=Math.max(a.z,Math.min(b.z,
+this.z));return this},clampScalar:function(){var a,b;return function(c,d){void 0===a&&(a=new THREE.Vector3,b=new THREE.Vector3);a.set(c,c,c);b.set(d,d,d);return this.clamp(a,b)}}(),clampLength:function(a,b){var c=this.length();this.multiplyScalar(Math.max(a,Math.min(b,c))/c);return this},floor:function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);this.z=Math.floor(this.z);return this},ceil:function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);this.z=Math.ceil(this.z);return this},
+round:function(){this.x=Math.round(this.x);this.y=Math.round(this.y);this.z=Math.round(this.z);return this},roundToZero:function(){this.x=0>this.x?Math.ceil(this.x):Math.floor(this.x);this.y=0>this.y?Math.ceil(this.y):Math.floor(this.y);this.z=0>this.z?Math.ceil(this.z):Math.floor(this.z);return this},negate:function(){this.x=-this.x;this.y=-this.y;this.z=-this.z;return this},dot:function(a){return this.x*a.x+this.y*a.y+this.z*a.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},
+length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length())},setLength:function(a){return this.multiplyScalar(a/this.length())},lerp:function(a,b){this.x+=(a.x-this.x)*b;this.y+=(a.y-this.y)*b;this.z+=(a.z-this.z)*b;return this},lerpVectors:function(a,b,c){this.subVectors(b,a).multiplyScalar(c).add(a);return this},cross:function(a,b){if(void 0!==
+b)return console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(a,b);var c=this.x,d=this.y,e=this.z;this.x=d*a.z-e*a.y;this.y=e*a.x-c*a.z;this.z=c*a.y-d*a.x;return this},crossVectors:function(a,b){var c=a.x,d=a.y,e=a.z,g=b.x,f=b.y,h=b.z;this.x=d*h-e*f;this.y=e*g-c*h;this.z=c*f-d*g;return this},projectOnVector:function(){var a,b;return function(c){void 0===a&&(a=new THREE.Vector3);a.copy(c).normalize();b=this.dot(a);return this.copy(a).multiplyScalar(b)}}(),
+projectOnPlane:function(){var a;return function(b){void 0===a&&(a=new THREE.Vector3);a.copy(this).projectOnVector(b);return this.sub(a)}}(),reflect:function(){var a;return function(b){void 0===a&&(a=new THREE.Vector3);return this.sub(a.copy(b).multiplyScalar(2*this.dot(b)))}}(),angleTo:function(a){a=this.dot(a)/(this.length()*a.length());return Math.acos(THREE.Math.clamp(a,-1,1))},distanceTo:function(a){return Math.sqrt(this.distanceToSquared(a))},distanceToSquared:function(a){var b=this.x-a.x,c=
+this.y-a.y;a=this.z-a.z;return b*b+c*c+a*a},setEulerFromRotationMatrix:function(a,b){console.error("THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.")},setEulerFromQuaternion:function(a,b){console.error("THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.")},getPositionFromMatrix:function(a){console.warn("THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition().");return this.setFromMatrixPosition(a)},
+getScaleFromMatrix:function(a){console.warn("THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale().");return this.setFromMatrixScale(a)},getColumnFromMatrix:function(a,b){console.warn("THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn().");return this.setFromMatrixColumn(a,b)},setFromMatrixPosition:function(a){this.x=a.elements[12];this.y=a.elements[13];this.z=a.elements[14];return this},setFromMatrixScale:function(a){var b=this.set(a.elements[0],
+a.elements[1],a.elements[2]).length(),c=this.set(a.elements[4],a.elements[5],a.elements[6]).length();a=this.set(a.elements[8],a.elements[9],a.elements[10]).length();this.x=b;this.y=c;this.z=a;return this},setFromMatrixColumn:function(a,b){var c=4*a,d=b.elements;this.x=d[c];this.y=d[c+1];this.z=d[c+2];return this},equals:function(a){return a.x===this.x&&a.y===this.y&&a.z===this.z},fromArray:function(a,b){void 0===b&&(b=0);this.x=a[b];this.y=a[b+1];this.z=a[b+2];return this},toArray:function(a,b){void 0===
+a&&(a=[]);void 0===b&&(b=0);a[b]=this.x;a[b+1]=this.y;a[b+2]=this.z;return a},fromAttribute:function(a,b,c){void 0===c&&(c=0);b=b*a.itemSize+c;this.x=a.array[b];this.y=a.array[b+1];this.z=a.array[b+2];return this}};THREE.Vector4=function(a,b,c,d){this.x=a||0;this.y=b||0;this.z=c||0;this.w=void 0!==d?d:1};
+THREE.Vector4.prototype={constructor:THREE.Vector4,set:function(a,b,c,d){this.x=a;this.y=b;this.z=c;this.w=d;return this},setX:function(a){this.x=a;return this},setY:function(a){this.y=a;return this},setZ:function(a){this.z=a;return this},setW:function(a){this.w=a;return this},setComponent:function(a,b){switch(a){case 0:this.x=b;break;case 1:this.y=b;break;case 2:this.z=b;break;case 3:this.w=b;break;default:throw Error("index is out of range: "+a);}},getComponent:function(a){switch(a){case 0:return this.x;
+case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error("index is out of range: "+a);}},clone:function(){return new this.constructor(this.x,this.y,this.z,this.w)},copy:function(a){this.x=a.x;this.y=a.y;this.z=a.z;this.w=void 0!==a.w?a.w:1;return this},add:function(a,b){if(void 0!==b)return console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(a,b);this.x+=a.x;this.y+=a.y;this.z+=a.z;this.w+=a.w;return this},
+addScalar:function(a){this.x+=a;this.y+=a;this.z+=a;this.w+=a;return this},addVectors:function(a,b){this.x=a.x+b.x;this.y=a.y+b.y;this.z=a.z+b.z;this.w=a.w+b.w;return this},addScaledVector:function(a,b){this.x+=a.x*b;this.y+=a.y*b;this.z+=a.z*b;this.w+=a.w*b;return this},sub:function(a,b){if(void 0!==b)return console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(a,b);this.x-=a.x;this.y-=a.y;this.z-=a.z;this.w-=a.w;return this},subScalar:function(a){this.x-=
+a;this.y-=a;this.z-=a;this.w-=a;return this},subVectors:function(a,b){this.x=a.x-b.x;this.y=a.y-b.y;this.z=a.z-b.z;this.w=a.w-b.w;return this},multiplyScalar:function(a){isFinite(a)?(this.x*=a,this.y*=a,this.z*=a,this.w*=a):this.w=this.z=this.y=this.x=0;return this},applyMatrix4:function(a){var b=this.x,c=this.y,d=this.z,e=this.w;a=a.elements;this.x=a[0]*b+a[4]*c+a[8]*d+a[12]*e;this.y=a[1]*b+a[5]*c+a[9]*d+a[13]*e;this.z=a[2]*b+a[6]*c+a[10]*d+a[14]*e;this.w=a[3]*b+a[7]*c+a[11]*d+a[15]*e;return this},
+divideScalar:function(a){return this.multiplyScalar(1/a)},setAxisAngleFromQuaternion:function(a){this.w=2*Math.acos(a.w);var b=Math.sqrt(1-a.w*a.w);1E-4>b?(this.x=1,this.z=this.y=0):(this.x=a.x/b,this.y=a.y/b,this.z=a.z/b);return this},setAxisAngleFromRotationMatrix:function(a){var b,c,d;a=a.elements;var e=a[0];d=a[4];var g=a[8],f=a[1],h=a[5],l=a[9];c=a[2];b=a[6];var k=a[10];if(.01>Math.abs(d-f)&&.01>Math.abs(g-c)&&.01>Math.abs(l-b)){if(.1>Math.abs(d+f)&&.1>Math.abs(g+c)&&.1>Math.abs(l+b)&&.1>Math.abs(e+
+h+k-3))return this.set(1,0,0,0),this;a=Math.PI;e=(e+1)/2;h=(h+1)/2;k=(k+1)/2;d=(d+f)/4;g=(g+c)/4;l=(l+b)/4;e>h&&e>k?.01>e?(b=0,d=c=.707106781):(b=Math.sqrt(e),c=d/b,d=g/b):h>k?.01>h?(b=.707106781,c=0,d=.707106781):(c=Math.sqrt(h),b=d/c,d=l/c):.01>k?(c=b=.707106781,d=0):(d=Math.sqrt(k),b=g/d,c=l/d);this.set(b,c,d,a);return this}a=Math.sqrt((b-l)*(b-l)+(g-c)*(g-c)+(f-d)*(f-d));.001>Math.abs(a)&&(a=1);this.x=(b-l)/a;this.y=(g-c)/a;this.z=(f-d)/a;this.w=Math.acos((e+h+k-1)/2);return this},min:function(a){this.x=
+Math.min(this.x,a.x);this.y=Math.min(this.y,a.y);this.z=Math.min(this.z,a.z);this.w=Math.min(this.w,a.w);return this},max:function(a){this.x=Math.max(this.x,a.x);this.y=Math.max(this.y,a.y);this.z=Math.max(this.z,a.z);this.w=Math.max(this.w,a.w);return this},clamp:function(a,b){this.x=Math.max(a.x,Math.min(b.x,this.x));this.y=Math.max(a.y,Math.min(b.y,this.y));this.z=Math.max(a.z,Math.min(b.z,this.z));this.w=Math.max(a.w,Math.min(b.w,this.w));return this},clampScalar:function(){var a,b;return function(c,
+d){void 0===a&&(a=new THREE.Vector4,b=new THREE.Vector4);a.set(c,c,c,c);b.set(d,d,d,d);return this.clamp(a,b)}}(),floor:function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);this.z=Math.floor(this.z);this.w=Math.floor(this.w);return this},ceil:function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);this.z=Math.ceil(this.z);this.w=Math.ceil(this.w);return this},round:function(){this.x=Math.round(this.x);this.y=Math.round(this.y);this.z=Math.round(this.z);this.w=Math.round(this.w);return this},
+roundToZero:function(){this.x=0>this.x?Math.ceil(this.x):Math.floor(this.x);this.y=0>this.y?Math.ceil(this.y):Math.floor(this.y);this.z=0>this.z?Math.ceil(this.z):Math.floor(this.z);this.w=0>this.w?Math.ceil(this.w):Math.floor(this.w);return this},negate:function(){this.x=-this.x;this.y=-this.y;this.z=-this.z;this.w=-this.w;return this},dot:function(a){return this.x*a.x+this.y*a.y+this.z*a.z+this.w*a.w},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w},length:function(){return Math.sqrt(this.x*
+this.x+this.y*this.y+this.z*this.z+this.w*this.w)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)},normalize:function(){return this.divideScalar(this.length())},setLength:function(a){return this.multiplyScalar(a/this.length())},lerp:function(a,b){this.x+=(a.x-this.x)*b;this.y+=(a.y-this.y)*b;this.z+=(a.z-this.z)*b;this.w+=(a.w-this.w)*b;return this},lerpVectors:function(a,b,c){this.subVectors(b,a).multiplyScalar(c).add(a);return this},equals:function(a){return a.x===
+this.x&&a.y===this.y&&a.z===this.z&&a.w===this.w},fromArray:function(a,b){void 0===b&&(b=0);this.x=a[b];this.y=a[b+1];this.z=a[b+2];this.w=a[b+3];return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this.x;a[b+1]=this.y;a[b+2]=this.z;a[b+3]=this.w;return a},fromAttribute:function(a,b,c){void 0===c&&(c=0);b=b*a.itemSize+c;this.x=a.array[b];this.y=a.array[b+1];this.z=a.array[b+2];this.w=a.array[b+3];return this}};
+THREE.Euler=function(a,b,c,d){this._x=a||0;this._y=b||0;this._z=c||0;this._order=d||THREE.Euler.DefaultOrder};THREE.Euler.RotationOrders="XYZ YZX ZXY XZY YXZ ZYX".split(" ");THREE.Euler.DefaultOrder="XYZ";
+THREE.Euler.prototype={constructor:THREE.Euler,get x(){return this._x},set x(a){this._x=a;this.onChangeCallback()},get y(){return this._y},set y(a){this._y=a;this.onChangeCallback()},get z(){return this._z},set z(a){this._z=a;this.onChangeCallback()},get order(){return this._order},set order(a){this._order=a;this.onChangeCallback()},set:function(a,b,c,d){this._x=a;this._y=b;this._z=c;this._order=d||this._order;this.onChangeCallback();return this},clone:function(){return new this.constructor(this._x,
+this._y,this._z,this._order)},copy:function(a){this._x=a._x;this._y=a._y;this._z=a._z;this._order=a._order;this.onChangeCallback();return this},setFromRotationMatrix:function(a,b,c){var d=THREE.Math.clamp,e=a.elements;a=e[0];var g=e[4],f=e[8],h=e[1],l=e[5],k=e[9],m=e[2],p=e[6],e=e[10];b=b||this._order;"XYZ"===b?(this._y=Math.asin(d(f,-1,1)),.99999>Math.abs(f)?(this._x=Math.atan2(-k,e),this._z=Math.atan2(-g,a)):(this._x=Math.atan2(p,l),this._z=0)):"YXZ"===b?(this._x=Math.asin(-d(k,-1,1)),.99999>Math.abs(k)?
+(this._y=Math.atan2(f,e),this._z=Math.atan2(h,l)):(this._y=Math.atan2(-m,a),this._z=0)):"ZXY"===b?(this._x=Math.asin(d(p,-1,1)),.99999>Math.abs(p)?(this._y=Math.atan2(-m,e),this._z=Math.atan2(-g,l)):(this._y=0,this._z=Math.atan2(h,a))):"ZYX"===b?(this._y=Math.asin(-d(m,-1,1)),.99999>Math.abs(m)?(this._x=Math.atan2(p,e),this._z=Math.atan2(h,a)):(this._x=0,this._z=Math.atan2(-g,l))):"YZX"===b?(this._z=Math.asin(d(h,-1,1)),.99999>Math.abs(h)?(this._x=Math.atan2(-k,l),this._y=Math.atan2(-m,a)):(this._x=
+0,this._y=Math.atan2(f,e))):"XZY"===b?(this._z=Math.asin(-d(g,-1,1)),.99999>Math.abs(g)?(this._x=Math.atan2(p,l),this._y=Math.atan2(f,a)):(this._x=Math.atan2(-k,e),this._y=0)):console.warn("THREE.Euler: .setFromRotationMatrix() given unsupported order: "+b);this._order=b;if(!1!==c)this.onChangeCallback();return this},setFromQuaternion:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Matrix4);a.makeRotationFromQuaternion(b);this.setFromRotationMatrix(a,c,d);return this}}(),setFromVector3:function(a,
+b){return this.set(a.x,a.y,a.z,b||this._order)},reorder:function(){var a=new THREE.Quaternion;return function(b){a.setFromEuler(this);this.setFromQuaternion(a,b)}}(),equals:function(a){return a._x===this._x&&a._y===this._y&&a._z===this._z&&a._order===this._order},fromArray:function(a){this._x=a[0];this._y=a[1];this._z=a[2];void 0!==a[3]&&(this._order=a[3]);this.onChangeCallback();return this},toArray:function(a,b){void 0===a&&(a=[]);void 0===b&&(b=0);a[b]=this._x;a[b+1]=this._y;a[b+2]=this._z;a[b+
+3]=this._order;return a},toVector3:function(a){return a?a.set(this._x,this._y,this._z):new THREE.Vector3(this._x,this._y,this._z)},onChange:function(a){this.onChangeCallback=a;return this},onChangeCallback:function(){}};THREE.Line3=function(a,b){this.start=void 0!==a?a:new THREE.Vector3;this.end=void 0!==b?b:new THREE.Vector3};
+THREE.Line3.prototype={constructor:THREE.Line3,set:function(a,b){this.start.copy(a);this.end.copy(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.start.copy(a.start);this.end.copy(a.end);return this},center:function(a){return(a||new THREE.Vector3).addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(a){return(a||new THREE.Vector3).subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},
+at:function(a,b){var c=b||new THREE.Vector3;return this.delta(c).multiplyScalar(a).add(this.start)},closestPointToPointParameter:function(){var a=new THREE.Vector3,b=new THREE.Vector3;return function(c,d){a.subVectors(c,this.start);b.subVectors(this.end,this.start);var e=b.dot(b),e=b.dot(a)/e;d&&(e=THREE.Math.clamp(e,0,1));return e}}(),closestPointToPoint:function(a,b,c){a=this.closestPointToPointParameter(a,b);c=c||new THREE.Vector3;return this.delta(c).multiplyScalar(a).add(this.start)},applyMatrix4:function(a){this.start.applyMatrix4(a);
+this.end.applyMatrix4(a);return this},equals:function(a){return a.start.equals(this.start)&&a.end.equals(this.end)}};THREE.Box2=function(a,b){this.min=void 0!==a?a:new THREE.Vector2(Infinity,Infinity);this.max=void 0!==b?b:new THREE.Vector2(-Infinity,-Infinity)};
+THREE.Box2.prototype={constructor:THREE.Box2,set:function(a,b){this.min.copy(a);this.max.copy(b);return this},setFromPoints:function(a){this.makeEmpty();for(var b=0,c=a.length;b<c;b++)this.expandByPoint(a[b]);return this},setFromCenterAndSize:function(){var a=new THREE.Vector2;return function(b,c){var d=a.copy(c).multiplyScalar(.5);this.min.copy(b).sub(d);this.max.copy(b).add(d);return this}}(),clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.min.copy(a.min);this.max.copy(a.max);
+return this},makeEmpty:function(){this.min.x=this.min.y=Infinity;this.max.x=this.max.y=-Infinity;return this},empty:function(){return this.max.x<this.min.x||this.max.y<this.min.y},center:function(a){return(a||new THREE.Vector2).addVectors(this.min,this.max).multiplyScalar(.5)},size:function(a){return(a||new THREE.Vector2).subVectors(this.max,this.min)},expandByPoint:function(a){this.min.min(a);this.max.max(a);return this},expandByVector:function(a){this.min.sub(a);this.max.add(a);return this},expandByScalar:function(a){this.min.addScalar(-a);
+this.max.addScalar(a);return this},containsPoint:function(a){return a.x<this.min.x||a.x>this.max.x||a.y<this.min.y||a.y>this.max.y?!1:!0},containsBox:function(a){return this.min.x<=a.min.x&&a.max.x<=this.max.x&&this.min.y<=a.min.y&&a.max.y<=this.max.y?!0:!1},getParameter:function(a,b){return(b||new THREE.Vector2).set((a.x-this.min.x)/(this.max.x-this.min.x),(a.y-this.min.y)/(this.max.y-this.min.y))},isIntersectionBox:function(a){return a.max.x<this.min.x||a.min.x>this.max.x||a.max.y<this.min.y||a.min.y>
+this.max.y?!1:!0},clampPoint:function(a,b){return(b||new THREE.Vector2).copy(a).clamp(this.min,this.max)},distanceToPoint:function(){var a=new THREE.Vector2;return function(b){return a.copy(b).clamp(this.min,this.max).sub(b).length()}}(),intersect:function(a){this.min.max(a.min);this.max.min(a.max);return this},union:function(a){this.min.min(a.min);this.max.max(a.max);return this},translate:function(a){this.min.add(a);this.max.add(a);return this},equals:function(a){return a.min.equals(this.min)&&
+a.max.equals(this.max)}};THREE.Box3=function(a,b){this.min=void 0!==a?a:new THREE.Vector3(Infinity,Infinity,Infinity);this.max=void 0!==b?b:new THREE.Vector3(-Infinity,-Infinity,-Infinity)};
+THREE.Box3.prototype={constructor:THREE.Box3,set:function(a,b){this.min.copy(a);this.max.copy(b);return this},setFromPoints:function(a){this.makeEmpty();for(var b=0,c=a.length;b<c;b++)this.expandByPoint(a[b]);return this},setFromCenterAndSize:function(){var a=new THREE.Vector3;return function(b,c){var d=a.copy(c).multiplyScalar(.5);this.min.copy(b).sub(d);this.max.copy(b).add(d);return this}}(),setFromObject:function(){var a=new THREE.Vector3;return function(b){var c=this;b.updateMatrixWorld(!0);
+this.makeEmpty();b.traverse(function(b){var e=b.geometry;if(void 0!==e)if(e instanceof THREE.Geometry)for(var g=e.vertices,e=0,f=g.length;e<f;e++)a.copy(g[e]),a.applyMatrix4(b.matrixWorld),c.expandByPoint(a);else if(e instanceof THREE.BufferGeometry&&void 0!==e.attributes.position)for(g=e.attributes.position.array,e=0,f=g.length;e<f;e+=3)a.set(g[e],g[e+1],g[e+2]),a.applyMatrix4(b.matrixWorld),c.expandByPoint(a)});return this}}(),clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.min.copy(a.min);
+this.max.copy(a.max);return this},makeEmpty:function(){this.min.x=this.min.y=this.min.z=Infinity;this.max.x=this.max.y=this.max.z=-Infinity;return this},empty:function(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z},center:function(a){return(a||new THREE.Vector3).addVectors(this.min,this.max).multiplyScalar(.5)},size:function(a){return(a||new THREE.Vector3).subVectors(this.max,this.min)},expandByPoint:function(a){this.min.min(a);this.max.max(a);return this},expandByVector:function(a){this.min.sub(a);
+this.max.add(a);return this},expandByScalar:function(a){this.min.addScalar(-a);this.max.addScalar(a);return this},containsPoint:function(a){return a.x<this.min.x||a.x>this.max.x||a.y<this.min.y||a.y>this.max.y||a.z<this.min.z||a.z>this.max.z?!1:!0},containsBox:function(a){return this.min.x<=a.min.x&&a.max.x<=this.max.x&&this.min.y<=a.min.y&&a.max.y<=this.max.y&&this.min.z<=a.min.z&&a.max.z<=this.max.z?!0:!1},getParameter:function(a,b){return(b||new THREE.Vector3).set((a.x-this.min.x)/(this.max.x-
+this.min.x),(a.y-this.min.y)/(this.max.y-this.min.y),(a.z-this.min.z)/(this.max.z-this.min.z))},isIntersectionBox:function(a){return a.max.x<this.min.x||a.min.x>this.max.x||a.max.y<this.min.y||a.min.y>this.max.y||a.max.z<this.min.z||a.min.z>this.max.z?!1:!0},clampPoint:function(a,b){return(b||new THREE.Vector3).copy(a).clamp(this.min,this.max)},distanceToPoint:function(){var a=new THREE.Vector3;return function(b){return a.copy(b).clamp(this.min,this.max).sub(b).length()}}(),getBoundingSphere:function(){var a=
+new THREE.Vector3;return function(b){b=b||new THREE.Sphere;b.center=this.center();b.radius=.5*this.size(a).length();return b}}(),intersect:function(a){this.min.max(a.min);this.max.min(a.max);return this},union:function(a){this.min.min(a.min);this.max.max(a.max);return this},applyMatrix4:function(){var a=[new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3,new THREE.Vector3];return function(b){a[0].set(this.min.x,this.min.y,
+this.min.z).applyMatrix4(b);a[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(b);a[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(b);a[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(b);a[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(b);a[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(b);a[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(b);a[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(b);this.makeEmpty();this.setFromPoints(a);return this}}(),translate:function(a){this.min.add(a);
+this.max.add(a);return this},equals:function(a){return a.min.equals(this.min)&&a.max.equals(this.max)}};THREE.Matrix3=function(){this.elements=new Float32Array([1,0,0,0,1,0,0,0,1]);0<arguments.length&&console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")};
+THREE.Matrix3.prototype={constructor:THREE.Matrix3,set:function(a,b,c,d,e,g,f,h,l){var k=this.elements;k[0]=a;k[3]=b;k[6]=c;k[1]=d;k[4]=e;k[7]=g;k[2]=f;k[5]=h;k[8]=l;return this},identity:function(){this.set(1,0,0,0,1,0,0,0,1);return this},clone:function(){return(new this.constructor).fromArray(this.elements)},copy:function(a){a=a.elements;this.set(a[0],a[3],a[6],a[1],a[4],a[7],a[2],a[5],a[8]);return this},multiplyVector3:function(a){console.warn("THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead.");
+return a.applyMatrix3(this)},multiplyVector3Array:function(a){console.warn("THREE.Matrix3: .multiplyVector3Array() has been renamed. Use matrix.applyToVector3Array( array ) instead.");return this.applyToVector3Array(a)},applyToVector3Array:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Vector3);void 0===c&&(c=0);void 0===d&&(d=b.length);for(var e=0;e<d;e+=3,c+=3)a.fromArray(b,c),a.applyMatrix3(this),a.toArray(b,c);return b}}(),applyToBuffer:function(){var a;return function(b,c,d){void 0===
+a&&(a=new THREE.Vector3);void 0===c&&(c=0);void 0===d&&(d=b.length/b.itemSize);for(var e=0;e<d;e++,c++)a.x=b.getX(c),a.y=b.getY(c),a.z=b.getZ(c),a.applyMatrix3(this),b.setXYZ(a.x,a.y,a.z);return b}}(),multiplyScalar:function(a){var b=this.elements;b[0]*=a;b[3]*=a;b[6]*=a;b[1]*=a;b[4]*=a;b[7]*=a;b[2]*=a;b[5]*=a;b[8]*=a;return this},determinant:function(){var a=this.elements,b=a[0],c=a[1],d=a[2],e=a[3],g=a[4],f=a[5],h=a[6],l=a[7],a=a[8];return b*g*a-b*f*l-c*e*a+c*f*h+d*e*l-d*g*h},getInverse:function(a,
+b){var c=a.elements,d=this.elements;d[0]=c[10]*c[5]-c[6]*c[9];d[1]=-c[10]*c[1]+c[2]*c[9];d[2]=c[6]*c[1]-c[2]*c[5];d[3]=-c[10]*c[4]+c[6]*c[8];d[4]=c[10]*c[0]-c[2]*c[8];d[5]=-c[6]*c[0]+c[2]*c[4];d[6]=c[9]*c[4]-c[5]*c[8];d[7]=-c[9]*c[0]+c[1]*c[8];d[8]=c[5]*c[0]-c[1]*c[4];c=c[0]*d[0]+c[1]*d[3]+c[2]*d[6];if(0===c){if(b)throw Error("Matrix3.getInverse(): can't invert matrix, determinant is 0");console.warn("Matrix3.getInverse(): can't invert matrix, determinant is 0");this.identity();return this}this.multiplyScalar(1/
+c);return this},transpose:function(){var a,b=this.elements;a=b[1];b[1]=b[3];b[3]=a;a=b[2];b[2]=b[6];b[6]=a;a=b[5];b[5]=b[7];b[7]=a;return this},flattenToArrayOffset:function(a,b){var c=this.elements;a[b]=c[0];a[b+1]=c[1];a[b+2]=c[2];a[b+3]=c[3];a[b+4]=c[4];a[b+5]=c[5];a[b+6]=c[6];a[b+7]=c[7];a[b+8]=c[8];return a},getNormalMatrix:function(a){this.getInverse(a).transpose();return this},transposeIntoArray:function(a){var b=this.elements;a[0]=b[0];a[1]=b[3];a[2]=b[6];a[3]=b[1];a[4]=b[4];a[5]=b[7];a[6]=
+b[2];a[7]=b[5];a[8]=b[8];return this},fromArray:function(a){this.elements.set(a);return this},toArray:function(){var a=this.elements;return[a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8]]}};THREE.Matrix4=function(){this.elements=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);0<arguments.length&&console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")};
+THREE.Matrix4.prototype={constructor:THREE.Matrix4,set:function(a,b,c,d,e,g,f,h,l,k,m,p,n,q,s,t){var v=this.elements;v[0]=a;v[4]=b;v[8]=c;v[12]=d;v[1]=e;v[5]=g;v[9]=f;v[13]=h;v[2]=l;v[6]=k;v[10]=m;v[14]=p;v[3]=n;v[7]=q;v[11]=s;v[15]=t;return this},identity:function(){this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);return this},clone:function(){return(new THREE.Matrix4).fromArray(this.elements)},copy:function(a){this.elements.set(a.elements);return this},extractPosition:function(a){console.warn("THREE.Matrix4: .extractPosition() has been renamed to .copyPosition().");
+return this.copyPosition(a)},copyPosition:function(a){var b=this.elements;a=a.elements;b[12]=a[12];b[13]=a[13];b[14]=a[14];return this},extractBasis:function(a,b,c){var d=this.elements;a.set(d[0],d[1],d[2]);b.set(d[4],d[5],d[6]);c.set(d[8],d[9],d[10]);return this},makeBasis:function(a,b,c){this.set(a.x,b.x,c.x,0,a.y,b.y,c.y,0,a.z,b.z,c.z,0,0,0,0,1);return this},extractRotation:function(){var a;return function(b){void 0===a&&(a=new THREE.Vector3);var c=this.elements;b=b.elements;var d=1/a.set(b[0],
+b[1],b[2]).length(),e=1/a.set(b[4],b[5],b[6]).length(),g=1/a.set(b[8],b[9],b[10]).length();c[0]=b[0]*d;c[1]=b[1]*d;c[2]=b[2]*d;c[4]=b[4]*e;c[5]=b[5]*e;c[6]=b[6]*e;c[8]=b[8]*g;c[9]=b[9]*g;c[10]=b[10]*g;return this}}(),makeRotationFromEuler:function(a){!1===a instanceof THREE.Euler&&console.error("THREE.Matrix: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");var b=this.elements,c=a.x,d=a.y,e=a.z,g=Math.cos(c),c=Math.sin(c),f=Math.cos(d),d=Math.sin(d),h=Math.cos(e),
+e=Math.sin(e);if("XYZ"===a.order){a=g*h;var l=g*e,k=c*h,m=c*e;b[0]=f*h;b[4]=-f*e;b[8]=d;b[1]=l+k*d;b[5]=a-m*d;b[9]=-c*f;b[2]=m-a*d;b[6]=k+l*d;b[10]=g*f}else"YXZ"===a.order?(a=f*h,l=f*e,k=d*h,m=d*e,b[0]=a+m*c,b[4]=k*c-l,b[8]=g*d,b[1]=g*e,b[5]=g*h,b[9]=-c,b[2]=l*c-k,b[6]=m+a*c,b[10]=g*f):"ZXY"===a.order?(a=f*h,l=f*e,k=d*h,m=d*e,b[0]=a-m*c,b[4]=-g*e,b[8]=k+l*c,b[1]=l+k*c,b[5]=g*h,b[9]=m-a*c,b[2]=-g*d,b[6]=c,b[10]=g*f):"ZYX"===a.order?(a=g*h,l=g*e,k=c*h,m=c*e,b[0]=f*h,b[4]=k*d-l,b[8]=a*d+m,b[1]=f*e,b[5]=
+m*d+a,b[9]=l*d-k,b[2]=-d,b[6]=c*f,b[10]=g*f):"YZX"===a.order?(a=g*f,l=g*d,k=c*f,m=c*d,b[0]=f*h,b[4]=m-a*e,b[8]=k*e+l,b[1]=e,b[5]=g*h,b[9]=-c*h,b[2]=-d*h,b[6]=l*e+k,b[10]=a-m*e):"XZY"===a.order&&(a=g*f,l=g*d,k=c*f,m=c*d,b[0]=f*h,b[4]=-e,b[8]=d*h,b[1]=a*e+m,b[5]=g*h,b[9]=l*e-k,b[2]=k*e-l,b[6]=c*h,b[10]=m*e+a);b[3]=0;b[7]=0;b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1;return this},setRotationFromQuaternion:function(a){console.warn("THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion().");
+return this.makeRotationFromQuaternion(a)},makeRotationFromQuaternion:function(a){var b=this.elements,c=a.x,d=a.y,e=a.z,g=a.w,f=c+c,h=d+d,l=e+e;a=c*f;var k=c*h,c=c*l,m=d*h,d=d*l,e=e*l,f=g*f,h=g*h,g=g*l;b[0]=1-(m+e);b[4]=k-g;b[8]=c+h;b[1]=k+g;b[5]=1-(a+e);b[9]=d-f;b[2]=c-h;b[6]=d+f;b[10]=1-(a+m);b[3]=0;b[7]=0;b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1;return this},lookAt:function(){var a,b,c;return function(d,e,g){void 0===a&&(a=new THREE.Vector3);void 0===b&&(b=new THREE.Vector3);void 0===c&&(c=new THREE.Vector3);
+var f=this.elements;c.subVectors(d,e).normalize();0===c.lengthSq()&&(c.z=1);a.crossVectors(g,c).normalize();0===a.lengthSq()&&(c.x+=1E-4,a.crossVectors(g,c).normalize());b.crossVectors(c,a);f[0]=a.x;f[4]=b.x;f[8]=c.x;f[1]=a.y;f[5]=b.y;f[9]=c.y;f[2]=a.z;f[6]=b.z;f[10]=c.z;return this}}(),multiply:function(a,b){return void 0!==b?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(a,b)):this.multiplyMatrices(this,a)},
+multiplyMatrices:function(a,b){var c=a.elements,d=b.elements,e=this.elements,g=c[0],f=c[4],h=c[8],l=c[12],k=c[1],m=c[5],p=c[9],n=c[13],q=c[2],s=c[6],t=c[10],v=c[14],u=c[3],w=c[7],D=c[11],c=c[15],x=d[0],B=d[4],y=d[8],z=d[12],A=d[1],J=d[5],F=d[9],C=d[13],N=d[2],L=d[6],Q=d[10],M=d[14],K=d[3],E=d[7],O=d[11],d=d[15];e[0]=g*x+f*A+h*N+l*K;e[4]=g*B+f*J+h*L+l*E;e[8]=g*y+f*F+h*Q+l*O;e[12]=g*z+f*C+h*M+l*d;e[1]=k*x+m*A+p*N+n*K;e[5]=k*B+m*J+p*L+n*E;e[9]=k*y+m*F+p*Q+n*O;e[13]=k*z+m*C+p*M+n*d;e[2]=q*x+s*A+t*N+v*
+K;e[6]=q*B+s*J+t*L+v*E;e[10]=q*y+s*F+t*Q+v*O;e[14]=q*z+s*C+t*M+v*d;e[3]=u*x+w*A+D*N+c*K;e[7]=u*B+w*J+D*L+c*E;e[11]=u*y+w*F+D*Q+c*O;e[15]=u*z+w*C+D*M+c*d;return this},multiplyToArray:function(a,b,c){var d=this.elements;this.multiplyMatrices(a,b);c[0]=d[0];c[1]=d[1];c[2]=d[2];c[3]=d[3];c[4]=d[4];c[5]=d[5];c[6]=d[6];c[7]=d[7];c[8]=d[8];c[9]=d[9];c[10]=d[10];c[11]=d[11];c[12]=d[12];c[13]=d[13];c[14]=d[14];c[15]=d[15];return this},multiplyScalar:function(a){var b=this.elements;b[0]*=a;b[4]*=a;b[8]*=a;
+b[12]*=a;b[1]*=a;b[5]*=a;b[9]*=a;b[13]*=a;b[2]*=a;b[6]*=a;b[10]*=a;b[14]*=a;b[3]*=a;b[7]*=a;b[11]*=a;b[15]*=a;return this},multiplyVector3:function(a){console.warn("THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) or vector.applyProjection( matrix ) instead.");return a.applyProjection(this)},multiplyVector4:function(a){console.warn("THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead.");return a.applyMatrix4(this)},multiplyVector3Array:function(a){console.warn("THREE.Matrix4: .multiplyVector3Array() has been renamed. Use matrix.applyToVector3Array( array ) instead.");
+return this.applyToVector3Array(a)},applyToVector3Array:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Vector3);void 0===c&&(c=0);void 0===d&&(d=b.length);for(var e=0;e<d;e+=3,c+=3)a.fromArray(b,c),a.applyMatrix4(this),a.toArray(b,c);return b}}(),applyToBuffer:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Vector3);void 0===c&&(c=0);void 0===d&&(d=b.length/b.itemSize);for(var e=0;e<d;e++,c++)a.x=b.getX(c),a.y=b.getY(c),a.z=b.getZ(c),a.applyMatrix4(this),b.setXYZ(a.x,
+a.y,a.z);return b}}(),rotateAxis:function(a){console.warn("THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead.");a.transformDirection(this)},crossVector:function(a){console.warn("THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead.");return a.applyMatrix4(this)},determinant:function(){var a=this.elements,b=a[0],c=a[4],d=a[8],e=a[12],g=a[1],f=a[5],h=a[9],l=a[13],k=a[2],m=a[6],p=a[10],n=a[14];return a[3]*(+e*h*m-d*l*
+m-e*f*p+c*l*p+d*f*n-c*h*n)+a[7]*(+b*h*n-b*l*p+e*g*p-d*g*n+d*l*k-e*h*k)+a[11]*(+b*l*m-b*f*n-e*g*m+c*g*n+e*f*k-c*l*k)+a[15]*(-d*f*k-b*h*m+b*f*p+d*g*m-c*g*p+c*h*k)},transpose:function(){var a=this.elements,b;b=a[1];a[1]=a[4];a[4]=b;b=a[2];a[2]=a[8];a[8]=b;b=a[6];a[6]=a[9];a[9]=b;b=a[3];a[3]=a[12];a[12]=b;b=a[7];a[7]=a[13];a[13]=b;b=a[11];a[11]=a[14];a[14]=b;return this},flattenToArrayOffset:function(a,b){var c=this.elements;a[b]=c[0];a[b+1]=c[1];a[b+2]=c[2];a[b+3]=c[3];a[b+4]=c[4];a[b+5]=c[5];a[b+6]=
+c[6];a[b+7]=c[7];a[b+8]=c[8];a[b+9]=c[9];a[b+10]=c[10];a[b+11]=c[11];a[b+12]=c[12];a[b+13]=c[13];a[b+14]=c[14];a[b+15]=c[15];return a},getPosition:function(){var a;return function(){void 0===a&&(a=new THREE.Vector3);console.warn("THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead.");var b=this.elements;return a.set(b[12],b[13],b[14])}}(),setPosition:function(a){var b=this.elements;b[12]=a.x;b[13]=a.y;b[14]=a.z;return this},getInverse:function(a,b){var c=
+this.elements,d=a.elements,e=d[0],g=d[4],f=d[8],h=d[12],l=d[1],k=d[5],m=d[9],p=d[13],n=d[2],q=d[6],s=d[10],t=d[14],v=d[3],u=d[7],w=d[11],d=d[15];c[0]=m*t*u-p*s*u+p*q*w-k*t*w-m*q*d+k*s*d;c[4]=h*s*u-f*t*u-h*q*w+g*t*w+f*q*d-g*s*d;c[8]=f*p*u-h*m*u+h*k*w-g*p*w-f*k*d+g*m*d;c[12]=h*m*q-f*p*q-h*k*s+g*p*s+f*k*t-g*m*t;c[1]=p*s*v-m*t*v-p*n*w+l*t*w+m*n*d-l*s*d;c[5]=f*t*v-h*s*v+h*n*w-e*t*w-f*n*d+e*s*d;c[9]=h*m*v-f*p*v-h*l*w+e*p*w+f*l*d-e*m*d;c[13]=f*p*n-h*m*n+h*l*s-e*p*s-f*l*t+e*m*t;c[2]=k*t*v-p*q*v+p*n*u-l*t*
+u-k*n*d+l*q*d;c[6]=h*q*v-g*t*v-h*n*u+e*t*u+g*n*d-e*q*d;c[10]=g*p*v-h*k*v+h*l*u-e*p*u-g*l*d+e*k*d;c[14]=h*k*n-g*p*n-h*l*q+e*p*q+g*l*t-e*k*t;c[3]=m*q*v-k*s*v-m*n*u+l*s*u+k*n*w-l*q*w;c[7]=g*s*v-f*q*v+f*n*u-e*s*u-g*n*w+e*q*w;c[11]=f*k*v-g*m*v-f*l*u+e*m*u+g*l*w-e*k*w;c[15]=g*m*n-f*k*n+f*l*q-e*m*q-g*l*s+e*k*s;c=e*c[0]+l*c[4]+n*c[8]+v*c[12];if(0===c){if(b)throw Error("THREE.Matrix4.getInverse(): can't invert matrix, determinant is 0");console.warn("THREE.Matrix4.getInverse(): can't invert matrix, determinant is 0");
+this.identity();return this}this.multiplyScalar(1/c);return this},translate:function(a){console.error("THREE.Matrix4: .translate() has been removed.")},rotateX:function(a){console.error("THREE.Matrix4: .rotateX() has been removed.")},rotateY:function(a){console.error("THREE.Matrix4: .rotateY() has been removed.")},rotateZ:function(a){console.error("THREE.Matrix4: .rotateZ() has been removed.")},rotateByAxis:function(a,b){console.error("THREE.Matrix4: .rotateByAxis() has been removed.")},scale:function(a){var b=
+this.elements,c=a.x,d=a.y;a=a.z;b[0]*=c;b[4]*=d;b[8]*=a;b[1]*=c;b[5]*=d;b[9]*=a;b[2]*=c;b[6]*=d;b[10]*=a;b[3]*=c;b[7]*=d;b[11]*=a;return this},getMaxScaleOnAxis:function(){var a=this.elements;return Math.sqrt(Math.max(a[0]*a[0]+a[1]*a[1]+a[2]*a[2],a[4]*a[4]+a[5]*a[5]+a[6]*a[6],a[8]*a[8]+a[9]*a[9]+a[10]*a[10]))},makeTranslation:function(a,b,c){this.set(1,0,0,a,0,1,0,b,0,0,1,c,0,0,0,1);return this},makeRotationX:function(a){var b=Math.cos(a);a=Math.sin(a);this.set(1,0,0,0,0,b,-a,0,0,a,b,0,0,0,0,1);
+return this},makeRotationY:function(a){var b=Math.cos(a);a=Math.sin(a);this.set(b,0,a,0,0,1,0,0,-a,0,b,0,0,0,0,1);return this},makeRotationZ:function(a){var b=Math.cos(a);a=Math.sin(a);this.set(b,-a,0,0,a,b,0,0,0,0,1,0,0,0,0,1);return this},makeRotationAxis:function(a,b){var c=Math.cos(b),d=Math.sin(b),e=1-c,g=a.x,f=a.y,h=a.z,l=e*g,k=e*f;this.set(l*g+c,l*f-d*h,l*h+d*f,0,l*f+d*h,k*f+c,k*h-d*g,0,l*h-d*f,k*h+d*g,e*h*h+c,0,0,0,0,1);return this},makeScale:function(a,b,c){this.set(a,0,0,0,0,b,0,0,0,0,c,
+0,0,0,0,1);return this},compose:function(a,b,c){this.makeRotationFromQuaternion(b);this.scale(c);this.setPosition(a);return this},decompose:function(){var a,b;return function(c,d,e){void 0===a&&(a=new THREE.Vector3);void 0===b&&(b=new THREE.Matrix4);var g=this.elements,f=a.set(g[0],g[1],g[2]).length(),h=a.set(g[4],g[5],g[6]).length(),l=a.set(g[8],g[9],g[10]).length();0>this.determinant()&&(f=-f);c.x=g[12];c.y=g[13];c.z=g[14];b.elements.set(this.elements);c=1/f;var g=1/h,k=1/l;b.elements[0]*=c;b.elements[1]*=
+c;b.elements[2]*=c;b.elements[4]*=g;b.elements[5]*=g;b.elements[6]*=g;b.elements[8]*=k;b.elements[9]*=k;b.elements[10]*=k;d.setFromRotationMatrix(b);e.x=f;e.y=h;e.z=l;return this}}(),makeFrustum:function(a,b,c,d,e,g){var f=this.elements;f[0]=2*e/(b-a);f[4]=0;f[8]=(b+a)/(b-a);f[12]=0;f[1]=0;f[5]=2*e/(d-c);f[9]=(d+c)/(d-c);f[13]=0;f[2]=0;f[6]=0;f[10]=-(g+e)/(g-e);f[14]=-2*g*e/(g-e);f[3]=0;f[7]=0;f[11]=-1;f[15]=0;return this},makePerspective:function(a,b,c,d){a=c*Math.tan(THREE.Math.degToRad(.5*a));
+var e=-a;return this.makeFrustum(e*b,a*b,e,a,c,d)},makeOrthographic:function(a,b,c,d,e,g){var f=this.elements,h=b-a,l=c-d,k=g-e;f[0]=2/h;f[4]=0;f[8]=0;f[12]=-((b+a)/h);f[1]=0;f[5]=2/l;f[9]=0;f[13]=-((c+d)/l);f[2]=0;f[6]=0;f[10]=-2/k;f[14]=-((g+e)/k);f[3]=0;f[7]=0;f[11]=0;f[15]=1;return this},equals:function(a){var b=this.elements;a=a.elements;for(var c=0;16>c;c++)if(b[c]!==a[c])return!1;return!0},fromArray:function(a){this.elements.set(a);return this},toArray:function(){var a=this.elements;return[a[0],
+a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15]]}};THREE.Ray=function(a,b){this.origin=void 0!==a?a:new THREE.Vector3;this.direction=void 0!==b?b:new THREE.Vector3};
+THREE.Ray.prototype={constructor:THREE.Ray,set:function(a,b){this.origin.copy(a);this.direction.copy(b);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.origin.copy(a.origin);this.direction.copy(a.direction);return this},at:function(a,b){return(b||new THREE.Vector3).copy(this.direction).multiplyScalar(a).add(this.origin)},recast:function(){var a=new THREE.Vector3;return function(b){this.origin.copy(this.at(b,a));return this}}(),closestPointToPoint:function(a,
+b){var c=b||new THREE.Vector3;c.subVectors(a,this.origin);var d=c.dot(this.direction);return 0>d?c.copy(this.origin):c.copy(this.direction).multiplyScalar(d).add(this.origin)},distanceToPoint:function(a){return Math.sqrt(this.distanceSqToPoint(a))},distanceSqToPoint:function(){var a=new THREE.Vector3;return function(b){var c=a.subVectors(b,this.origin).dot(this.direction);if(0>c)return this.origin.distanceToSquared(b);a.copy(this.direction).multiplyScalar(c).add(this.origin);return a.distanceToSquared(b)}}(),
+distanceSqToSegment:function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Vector3;return function(d,e,g,f){a.copy(d).add(e).multiplyScalar(.5);b.copy(e).sub(d).normalize();c.copy(this.origin).sub(a);var h=.5*d.distanceTo(e),l=-this.direction.dot(b),k=c.dot(this.direction),m=-c.dot(b),p=c.lengthSq(),n=Math.abs(1-l*l),q;0<n?(d=l*m-k,e=l*k-m,q=h*n,0<=d?e>=-q?e<=q?(h=1/n,d*=h,e*=h,l=d*(d+l*e+2*k)+e*(l*d+e+2*m)+p):(e=h,d=Math.max(0,-(l*e+k)),l=-d*d+e*(e+2*m)+p):(e=-h,d=Math.max(0,-(l*e+k)),
+l=-d*d+e*(e+2*m)+p):e<=-q?(d=Math.max(0,-(-l*h+k)),e=0<d?-h:Math.min(Math.max(-h,-m),h),l=-d*d+e*(e+2*m)+p):e<=q?(d=0,e=Math.min(Math.max(-h,-m),h),l=e*(e+2*m)+p):(d=Math.max(0,-(l*h+k)),e=0<d?h:Math.min(Math.max(-h,-m),h),l=-d*d+e*(e+2*m)+p)):(e=0<l?-h:h,d=Math.max(0,-(l*e+k)),l=-d*d+e*(e+2*m)+p);g&&g.copy(this.direction).multiplyScalar(d).add(this.origin);f&&f.copy(b).multiplyScalar(e).add(a);return l}}(),isIntersectionSphere:function(a){return this.distanceToPoint(a.center)<=a.radius},intersectSphere:function(){var a=
+new THREE.Vector3;return function(b,c){a.subVectors(b.center,this.origin);var d=a.dot(this.direction),e=a.dot(a)-d*d,g=b.radius*b.radius;if(e>g)return null;g=Math.sqrt(g-e);e=d-g;d+=g;return 0>e&&0>d?null:0>e?this.at(d,c):this.at(e,c)}}(),isIntersectionPlane:function(a){var b=a.distanceToPoint(this.origin);return 0===b||0>a.normal.dot(this.direction)*b?!0:!1},distanceToPlane:function(a){var b=a.normal.dot(this.direction);if(0===b)return 0===a.distanceToPoint(this.origin)?0:null;a=-(this.origin.dot(a.normal)+
+a.constant)/b;return 0<=a?a:null},intersectPlane:function(a,b){var c=this.distanceToPlane(a);return null===c?null:this.at(c,b)},isIntersectionBox:function(){var a=new THREE.Vector3;return function(b){return null!==this.intersectBox(b,a)}}(),intersectBox:function(a,b){var c,d,e,g,f;d=1/this.direction.x;g=1/this.direction.y;f=1/this.direction.z;var h=this.origin;0<=d?(c=(a.min.x-h.x)*d,d*=a.max.x-h.x):(c=(a.max.x-h.x)*d,d*=a.min.x-h.x);0<=g?(e=(a.min.y-h.y)*g,g*=a.max.y-h.y):(e=(a.max.y-h.y)*g,g*=a.min.y-
+h.y);if(c>g||e>d)return null;if(e>c||c!==c)c=e;if(g<d||d!==d)d=g;0<=f?(e=(a.min.z-h.z)*f,f*=a.max.z-h.z):(e=(a.max.z-h.z)*f,f*=a.min.z-h.z);if(c>f||e>d)return null;if(e>c||c!==c)c=e;if(f<d||d!==d)d=f;return 0>d?null:this.at(0<=c?c:d,b)},intersectTriangle:function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Vector3,d=new THREE.Vector3;return function(e,g,f,h,l){b.subVectors(g,e);c.subVectors(f,e);d.crossVectors(b,c);g=this.direction.dot(d);if(0<g){if(h)return null;h=1}else if(0>g)h=-1,
+g=-g;else return null;a.subVectors(this.origin,e);e=h*this.direction.dot(c.crossVectors(a,c));if(0>e)return null;f=h*this.direction.dot(b.cross(a));if(0>f||e+f>g)return null;e=-h*a.dot(d);return 0>e?null:this.at(e/g,l)}}(),applyMatrix4:function(a){this.direction.add(this.origin).applyMatrix4(a);this.origin.applyMatrix4(a);this.direction.sub(this.origin);this.direction.normalize();return this},equals:function(a){return a.origin.equals(this.origin)&&a.direction.equals(this.direction)}};
+THREE.Sphere=function(a,b){this.center=void 0!==a?a:new THREE.Vector3;this.radius=void 0!==b?b:0};
+THREE.Sphere.prototype={constructor:THREE.Sphere,set:function(a,b){this.center.copy(a);this.radius=b;return this},setFromPoints:function(){var a=new THREE.Box3;return function(b,c){var d=this.center;void 0!==c?d.copy(c):a.setFromPoints(b).center(d);for(var e=0,g=0,f=b.length;g<f;g++)e=Math.max(e,d.distanceToSquared(b[g]));this.radius=Math.sqrt(e);return this}}(),clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.center.copy(a.center);this.radius=a.radius;return this},
+empty:function(){return 0>=this.radius},containsPoint:function(a){return a.distanceToSquared(this.center)<=this.radius*this.radius},distanceToPoint:function(a){return a.distanceTo(this.center)-this.radius},intersectsSphere:function(a){var b=this.radius+a.radius;return a.center.distanceToSquared(this.center)<=b*b},clampPoint:function(a,b){var c=this.center.distanceToSquared(a),d=b||new THREE.Vector3;d.copy(a);c>this.radius*this.radius&&(d.sub(this.center).normalize(),d.multiplyScalar(this.radius).add(this.center));
+return d},getBoundingBox:function(a){a=a||new THREE.Box3;a.set(this.center,this.center);a.expandByScalar(this.radius);return a},applyMatrix4:function(a){this.center.applyMatrix4(a);this.radius*=a.getMaxScaleOnAxis();return this},translate:function(a){this.center.add(a);return this},equals:function(a){return a.center.equals(this.center)&&a.radius===this.radius}};
+THREE.Frustum=function(a,b,c,d,e,g){this.planes=[void 0!==a?a:new THREE.Plane,void 0!==b?b:new THREE.Plane,void 0!==c?c:new THREE.Plane,void 0!==d?d:new THREE.Plane,void 0!==e?e:new THREE.Plane,void 0!==g?g:new THREE.Plane]};
+THREE.Frustum.prototype={constructor:THREE.Frustum,set:function(a,b,c,d,e,g){var f=this.planes;f[0].copy(a);f[1].copy(b);f[2].copy(c);f[3].copy(d);f[4].copy(e);f[5].copy(g);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){for(var b=this.planes,c=0;6>c;c++)b[c].copy(a.planes[c]);return this},setFromMatrix:function(a){var b=this.planes,c=a.elements;a=c[0];var d=c[1],e=c[2],g=c[3],f=c[4],h=c[5],l=c[6],k=c[7],m=c[8],p=c[9],n=c[10],q=c[11],s=c[12],t=c[13],v=c[14],
+c=c[15];b[0].setComponents(g-a,k-f,q-m,c-s).normalize();b[1].setComponents(g+a,k+f,q+m,c+s).normalize();b[2].setComponents(g+d,k+h,q+p,c+t).normalize();b[3].setComponents(g-d,k-h,q-p,c-t).normalize();b[4].setComponents(g-e,k-l,q-n,c-v).normalize();b[5].setComponents(g+e,k+l,q+n,c+v).normalize();return this},intersectsObject:function(){var a=new THREE.Sphere;return function(b){var c=b.geometry;null===c.boundingSphere&&c.computeBoundingSphere();a.copy(c.boundingSphere);a.applyMatrix4(b.matrixWorld);
+return this.intersectsSphere(a)}}(),intersectsSphere:function(a){var b=this.planes,c=a.center;a=-a.radius;for(var d=0;6>d;d++)if(b[d].distanceToPoint(c)<a)return!1;return!0},intersectsBox:function(){var a=new THREE.Vector3,b=new THREE.Vector3;return function(c){for(var d=this.planes,e=0;6>e;e++){var g=d[e];a.x=0<g.normal.x?c.min.x:c.max.x;b.x=0<g.normal.x?c.max.x:c.min.x;a.y=0<g.normal.y?c.min.y:c.max.y;b.y=0<g.normal.y?c.max.y:c.min.y;a.z=0<g.normal.z?c.min.z:c.max.z;b.z=0<g.normal.z?c.max.z:c.min.z;
+var f=g.distanceToPoint(a),g=g.distanceToPoint(b);if(0>f&&0>g)return!1}return!0}}(),containsPoint:function(a){for(var b=this.planes,c=0;6>c;c++)if(0>b[c].distanceToPoint(a))return!1;return!0}};THREE.Plane=function(a,b){this.normal=void 0!==a?a:new THREE.Vector3(1,0,0);this.constant=void 0!==b?b:0};
+THREE.Plane.prototype={constructor:THREE.Plane,set:function(a,b){this.normal.copy(a);this.constant=b;return this},setComponents:function(a,b,c,d){this.normal.set(a,b,c);this.constant=d;return this},setFromNormalAndCoplanarPoint:function(a,b){this.normal.copy(a);this.constant=-b.dot(this.normal);return this},setFromCoplanarPoints:function(){var a=new THREE.Vector3,b=new THREE.Vector3;return function(c,d,e){d=a.subVectors(e,d).cross(b.subVectors(c,d)).normalize();this.setFromNormalAndCoplanarPoint(d,
+c);return this}}(),clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.normal.copy(a.normal);this.constant=a.constant;return this},normalize:function(){var a=1/this.normal.length();this.normal.multiplyScalar(a);this.constant*=a;return this},negate:function(){this.constant*=-1;this.normal.negate();return this},distanceToPoint:function(a){return this.normal.dot(a)+this.constant},distanceToSphere:function(a){return this.distanceToPoint(a.center)-a.radius},projectPoint:function(a,
+b){return this.orthoPoint(a,b).sub(a).negate()},orthoPoint:function(a,b){var c=this.distanceToPoint(a);return(b||new THREE.Vector3).copy(this.normal).multiplyScalar(c)},isIntersectionLine:function(a){var b=this.distanceToPoint(a.start);a=this.distanceToPoint(a.end);return 0>b&&0<a||0>a&&0<b},intersectLine:function(){var a=new THREE.Vector3;return function(b,c){var d=c||new THREE.Vector3,e=b.delta(a),g=this.normal.dot(e);if(0===g){if(0===this.distanceToPoint(b.start))return d.copy(b.start)}else return g=
+-(b.start.dot(this.normal)+this.constant)/g,0>g||1<g?void 0:d.copy(e).multiplyScalar(g).add(b.start)}}(),coplanarPoint:function(a){return(a||new THREE.Vector3).copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Matrix3;return function(d,e){var g=e||c.getNormalMatrix(d),g=a.copy(this.normal).applyMatrix3(g),f=this.coplanarPoint(b);f.applyMatrix4(d);this.setFromNormalAndCoplanarPoint(g,f);return this}}(),translate:function(a){this.constant-=
+a.dot(this.normal);return this},equals:function(a){return a.normal.equals(this.normal)&&a.constant===this.constant}};
+THREE.Math={generateUUID:function(){var a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),b=Array(36),c=0,d;return function(){for(var e=0;36>e;e++)8===e||13===e||18===e||23===e?b[e]="-":14===e?b[e]="4":(2>=c&&(c=33554432+16777216*Math.random()|0),d=c&15,c>>=4,b[e]=a[19===e?d&3|8:d]);return b.join("")}}(),clamp:function(a,b,c){return Math.max(b,Math.min(c,a))},euclideanModulo:function(a,b){return(a%b+b)%b},mapLinear:function(a,b,c,d,e){return d+(a-b)*(e-d)/(c-b)},smoothstep:function(a,
+b,c){if(a<=b)return 0;if(a>=c)return 1;a=(a-b)/(c-b);return a*a*(3-2*a)},smootherstep:function(a,b,c){if(a<=b)return 0;if(a>=c)return 1;a=(a-b)/(c-b);return a*a*a*(a*(6*a-15)+10)},random16:function(){return(65280*Math.random()+255*Math.random())/65535},randInt:function(a,b){return a+Math.floor(Math.random()*(b-a+1))},randFloat:function(a,b){return a+Math.random()*(b-a)},randFloatSpread:function(a){return a*(.5-Math.random())},degToRad:function(){var a=Math.PI/180;return function(b){return b*a}}(),
+radToDeg:function(){var a=180/Math.PI;return function(b){return b*a}}(),isPowerOfTwo:function(a){return 0===(a&a-1)&&0!==a},nearestPowerOfTwo:function(a){return Math.pow(2,Math.round(Math.log(a)/Math.LN2))},nextPowerOfTwo:function(a){a--;a|=a>>1;a|=a>>2;a|=a>>4;a|=a>>8;a|=a>>16;a++;return a}};
+THREE.Spline=function(a){function b(a,b,c,d,e,g,f){a=.5*(c-a);d=.5*(d-b);return(2*(b-c)+a+d)*f+(-3*(b-c)-2*a-d)*g+a*e+b}this.points=a;var c=[],d={x:0,y:0,z:0},e,g,f,h,l,k,m,p,n;this.initFromArray=function(a){this.points=[];for(var b=0;b<a.length;b++)this.points[b]={x:a[b][0],y:a[b][1],z:a[b][2]}};this.getPoint=function(a){e=(this.points.length-1)*a;g=Math.floor(e);f=e-g;c[0]=0===g?g:g-1;c[1]=g;c[2]=g>this.points.length-2?this.points.length-1:g+1;c[3]=g>this.points.length-3?this.points.length-1:g+
+2;k=this.points[c[0]];m=this.points[c[1]];p=this.points[c[2]];n=this.points[c[3]];h=f*f;l=f*h;d.x=b(k.x,m.x,p.x,n.x,f,h,l);d.y=b(k.y,m.y,p.y,n.y,f,h,l);d.z=b(k.z,m.z,p.z,n.z,f,h,l);return d};this.getControlPointsArray=function(){var a,b,c=this.points.length,d=[];for(a=0;a<c;a++)b=this.points[a],d[a]=[b.x,b.y,b.z];return d};this.getLength=function(a){var b,c,d,e=b=b=0,g=new THREE.Vector3,f=new THREE.Vector3,h=[],l=0;h[0]=0;a||(a=100);c=this.points.length*a;g.copy(this.points[0]);for(a=1;a<c;a++)b=
+a/c,d=this.getPoint(b),f.copy(d),l+=f.distanceTo(g),g.copy(d),b*=this.points.length-1,b=Math.floor(b),b!==e&&(h[b]=l,e=b);h[h.length]=l;return{chunks:h,total:l}};this.reparametrizeByArcLength=function(a){var b,c,d,e,g,f,h=[],l=new THREE.Vector3,k=this.getLength();h.push(l.copy(this.points[0]).clone());for(b=1;b<this.points.length;b++){c=k.chunks[b]-k.chunks[b-1];f=Math.ceil(a*c/k.total);e=(b-1)/(this.points.length-1);g=b/(this.points.length-1);for(c=1;c<f-1;c++)d=e+1/f*c*(g-e),d=this.getPoint(d),
+h.push(l.copy(d).clone());h.push(l.copy(this.points[b]).clone())}this.points=h}};THREE.Triangle=function(a,b,c){this.a=void 0!==a?a:new THREE.Vector3;this.b=void 0!==b?b:new THREE.Vector3;this.c=void 0!==c?c:new THREE.Vector3};THREE.Triangle.normal=function(){var a=new THREE.Vector3;return function(b,c,d,e){e=e||new THREE.Vector3;e.subVectors(d,c);a.subVectors(b,c);e.cross(a);b=e.lengthSq();return 0<b?e.multiplyScalar(1/Math.sqrt(b)):e.set(0,0,0)}}();
+THREE.Triangle.barycoordFromPoint=function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Vector3;return function(d,e,g,f,h){a.subVectors(f,e);b.subVectors(g,e);c.subVectors(d,e);d=a.dot(a);e=a.dot(b);g=a.dot(c);var l=b.dot(b);f=b.dot(c);var k=d*l-e*e;h=h||new THREE.Vector3;if(0===k)return h.set(-2,-1,-1);k=1/k;l=(l*g-e*f)*k;d=(d*f-e*g)*k;return h.set(1-l-d,d,l)}}();
+THREE.Triangle.containsPoint=function(){var a=new THREE.Vector3;return function(b,c,d,e){b=THREE.Triangle.barycoordFromPoint(b,c,d,e,a);return 0<=b.x&&0<=b.y&&1>=b.x+b.y}}();
+THREE.Triangle.prototype={constructor:THREE.Triangle,set:function(a,b,c){this.a.copy(a);this.b.copy(b);this.c.copy(c);return this},setFromPointsAndIndices:function(a,b,c,d){this.a.copy(a[b]);this.b.copy(a[c]);this.c.copy(a[d]);return this},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.a.copy(a.a);this.b.copy(a.b);this.c.copy(a.c);return this},area:function(){var a=new THREE.Vector3,b=new THREE.Vector3;return function(){a.subVectors(this.c,this.b);b.subVectors(this.a,
+this.b);return.5*a.cross(b).length()}}(),midpoint:function(a){return(a||new THREE.Vector3).addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)},normal:function(a){return THREE.Triangle.normal(this.a,this.b,this.c,a)},plane:function(a){return(a||new THREE.Plane).setFromCoplanarPoints(this.a,this.b,this.c)},barycoordFromPoint:function(a,b){return THREE.Triangle.barycoordFromPoint(a,this.a,this.b,this.c,b)},containsPoint:function(a){return THREE.Triangle.containsPoint(a,this.a,this.b,this.c)},
+equals:function(a){return a.a.equals(this.a)&&a.b.equals(this.b)&&a.c.equals(this.c)}};THREE.Channels=function(){this.mask=1};THREE.Channels.prototype={constructor:THREE.Channels,set:function(a){this.mask=1<<a},enable:function(a){this.mask|=1<<a},toggle:function(a){this.mask^=1<<a},disable:function(a){this.mask&=~(1<<a)}};THREE.Clock=function(a){this.autoStart=void 0!==a?a:!0;this.elapsedTime=this.oldTime=this.startTime=0;this.running=!1};
+THREE.Clock.prototype={constructor:THREE.Clock,start:function(){this.oldTime=this.startTime=self.performance.now();this.running=!0},stop:function(){this.getElapsedTime();this.running=!1},getElapsedTime:function(){this.getDelta();return this.elapsedTime},getDelta:function(){var a=0;this.autoStart&&!this.running&&this.start();if(this.running){var b=self.performance.now(),a=.001*(b-this.oldTime);this.oldTime=b;this.elapsedTime+=a}return a}};THREE.EventDispatcher=function(){};
+THREE.EventDispatcher.prototype={constructor:THREE.EventDispatcher,apply:function(a){a.addEventListener=THREE.EventDispatcher.prototype.addEventListener;a.hasEventListener=THREE.EventDispatcher.prototype.hasEventListener;a.removeEventListener=THREE.EventDispatcher.prototype.removeEventListener;a.dispatchEvent=THREE.EventDispatcher.prototype.dispatchEvent},addEventListener:function(a,b){void 0===this._listeners&&(this._listeners={});var c=this._listeners;void 0===c[a]&&(c[a]=[]);-1===c[a].indexOf(b)&&
+c[a].push(b)},hasEventListener:function(a,b){if(void 0===this._listeners)return!1;var c=this._listeners;return void 0!==c[a]&&-1!==c[a].indexOf(b)?!0:!1},removeEventListener:function(a,b){if(void 0!==this._listeners){var c=this._listeners[a];if(void 0!==c){var d=c.indexOf(b);-1!==d&&c.splice(d,1)}}},dispatchEvent:function(a){if(void 0!==this._listeners){var b=this._listeners[a.type];if(void 0!==b){a.target=this;for(var c=[],d=b.length,e=0;e<d;e++)c[e]=b[e];for(e=0;e<d;e++)c[e].call(this,a)}}}};
+(function(a){function b(a,b){return a.distance-b.distance}function c(a,b,g,f){if(!1!==a.visible&&(a.raycast(b,g),!0===f)){a=a.children;f=0;for(var h=a.length;f<h;f++)c(a[f],b,g,!0)}}a.Raycaster=function(b,c,g,f){this.ray=new a.Ray(b,c);this.near=g||0;this.far=f||Infinity;this.params={Mesh:{},Line:{},LOD:{},Points:{threshold:1},Sprite:{}};Object.defineProperties(this.params,{PointCloud:{get:function(){console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points.");return this.Points}}})};
+a.Raycaster.prototype={constructor:a.Raycaster,linePrecision:1,set:function(a,b){this.ray.set(a,b)},setFromCamera:function(b,c){c instanceof a.PerspectiveCamera?(this.ray.origin.setFromMatrixPosition(c.matrixWorld),this.ray.direction.set(b.x,b.y,.5).unproject(c).sub(this.ray.origin).normalize()):c instanceof a.OrthographicCamera?(this.ray.origin.set(b.x,b.y,-1).unproject(c),this.ray.direction.set(0,0,-1).transformDirection(c.matrixWorld)):console.error("THREE.Raycaster: Unsupported camera type.")},
+intersectObject:function(a,e){var g=[];c(a,this,g,e);g.sort(b);return g},intersectObjects:function(a,e){var g=[];if(!1===Array.isArray(a))return console.warn("THREE.Raycaster.intersectObjects: objects is not an Array."),g;for(var f=0,h=a.length;f<h;f++)c(a[f],this,g,e);g.sort(b);return g}}})(THREE);
+THREE.Object3D=function(){Object.defineProperty(this,"id",{value:THREE.Object3DIdCount++});this.uuid=THREE.Math.generateUUID();this.name="";this.type="Object3D";this.parent=null;this.channels=new THREE.Channels;this.children=[];this.up=THREE.Object3D.DefaultUp.clone();var a=new THREE.Vector3,b=new THREE.Euler,c=new THREE.Quaternion,d=new THREE.Vector3(1,1,1);b.onChange(function(){c.setFromEuler(b,!1)});c.onChange(function(){b.setFromQuaternion(c,void 0,!1)});Object.defineProperties(this,{position:{enumerable:!0,
+value:a},rotation:{enumerable:!0,value:b},quaternion:{enumerable:!0,value:c},scale:{enumerable:!0,value:d},modelViewMatrix:{value:new THREE.Matrix4},normalMatrix:{value:new THREE.Matrix3}});this.rotationAutoUpdate=!0;this.matrix=new THREE.Matrix4;this.matrixWorld=new THREE.Matrix4;this.matrixAutoUpdate=THREE.Object3D.DefaultMatrixAutoUpdate;this.matrixWorldNeedsUpdate=!1;this.visible=!0;this.receiveShadow=this.castShadow=!1;this.frustumCulled=!0;this.renderOrder=0;this.userData={}};
+THREE.Object3D.DefaultUp=new THREE.Vector3(0,1,0);THREE.Object3D.DefaultMatrixAutoUpdate=!0;
+THREE.Object3D.prototype={constructor:THREE.Object3D,get eulerOrder(){console.warn("THREE.Object3D: .eulerOrder is now .rotation.order.");return this.rotation.order},set eulerOrder(a){console.warn("THREE.Object3D: .eulerOrder is now .rotation.order.");this.rotation.order=a},get useQuaternion(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")},set useQuaternion(a){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")},set renderDepth(a){console.warn("THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.")},
+applyMatrix:function(a){this.matrix.multiplyMatrices(a,this.matrix);this.matrix.decompose(this.position,this.quaternion,this.scale)},setRotationFromAxisAngle:function(a,b){this.quaternion.setFromAxisAngle(a,b)},setRotationFromEuler:function(a){this.quaternion.setFromEuler(a,!0)},setRotationFromMatrix:function(a){this.quaternion.setFromRotationMatrix(a)},setRotationFromQuaternion:function(a){this.quaternion.copy(a)},rotateOnAxis:function(){var a=new THREE.Quaternion;return function(b,c){a.setFromAxisAngle(b,
+c);this.quaternion.multiply(a);return this}}(),rotateX:function(){var a=new THREE.Vector3(1,0,0);return function(b){return this.rotateOnAxis(a,b)}}(),rotateY:function(){var a=new THREE.Vector3(0,1,0);return function(b){return this.rotateOnAxis(a,b)}}(),rotateZ:function(){var a=new THREE.Vector3(0,0,1);return function(b){return this.rotateOnAxis(a,b)}}(),translateOnAxis:function(){var a=new THREE.Vector3;return function(b,c){a.copy(b).applyQuaternion(this.quaternion);this.position.add(a.multiplyScalar(c));
+return this}}(),translate:function(a,b){console.warn("THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead.");return this.translateOnAxis(b,a)},translateX:function(){var a=new THREE.Vector3(1,0,0);return function(b){return this.translateOnAxis(a,b)}}(),translateY:function(){var a=new THREE.Vector3(0,1,0);return function(b){return this.translateOnAxis(a,b)}}(),translateZ:function(){var a=new THREE.Vector3(0,0,1);return function(b){return this.translateOnAxis(a,
+b)}}(),localToWorld:function(a){return a.applyMatrix4(this.matrixWorld)},worldToLocal:function(){var a=new THREE.Matrix4;return function(b){return b.applyMatrix4(a.getInverse(this.matrixWorld))}}(),lookAt:function(){var a=new THREE.Matrix4;return function(b){a.lookAt(b,this.position,this.up);this.quaternion.setFromRotationMatrix(a)}}(),add:function(a){if(1<arguments.length){for(var b=0;b<arguments.length;b++)this.add(arguments[b]);return this}if(a===this)return console.error("THREE.Object3D.add: object can't be added as a child of itself.",
+a),this;a instanceof THREE.Object3D?(null!==a.parent&&a.parent.remove(a),a.parent=this,a.dispatchEvent({type:"added"}),this.children.push(a)):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",a);return this},remove:function(a){if(1<arguments.length)for(var b=0;b<arguments.length;b++)this.remove(arguments[b]);b=this.children.indexOf(a);-1!==b&&(a.parent=null,a.dispatchEvent({type:"removed"}),this.children.splice(b,1))},getChildByName:function(a){console.warn("THREE.Object3D: .getChildByName() has been renamed to .getObjectByName().");
+return this.getObjectByName(a)},getObjectById:function(a){return this.getObjectByProperty("id",a)},getObjectByName:function(a){return this.getObjectByProperty("name",a)},getObjectByProperty:function(a,b){if(this[a]===b)return this;for(var c=0,d=this.children.length;c<d;c++){var e=this.children[c].getObjectByProperty(a,b);if(void 0!==e)return e}},getWorldPosition:function(a){a=a||new THREE.Vector3;this.updateMatrixWorld(!0);return a.setFromMatrixPosition(this.matrixWorld)},getWorldQuaternion:function(){var a=
+new THREE.Vector3,b=new THREE.Vector3;return function(c){c=c||new THREE.Quaternion;this.updateMatrixWorld(!0);this.matrixWorld.decompose(a,c,b);return c}}(),getWorldRotation:function(){var a=new THREE.Quaternion;return function(b){b=b||new THREE.Euler;this.getWorldQuaternion(a);return b.setFromQuaternion(a,this.rotation.order,!1)}}(),getWorldScale:function(){var a=new THREE.Vector3,b=new THREE.Quaternion;return function(c){c=c||new THREE.Vector3;this.updateMatrixWorld(!0);this.matrixWorld.decompose(a,
+b,c);return c}}(),getWorldDirection:function(){var a=new THREE.Quaternion;return function(b){b=b||new THREE.Vector3;this.getWorldQuaternion(a);return b.set(0,0,1).applyQuaternion(a)}}(),raycast:function(){},traverse:function(a){a(this);for(var b=this.children,c=0,d=b.length;c<d;c++)b[c].traverse(a)},traverseVisible:function(a){if(!1!==this.visible){a(this);for(var b=this.children,c=0,d=b.length;c<d;c++)b[c].traverseVisible(a)}},traverseAncestors:function(a){var b=this.parent;null!==b&&(a(b),b.traverseAncestors(a))},
+updateMatrix:function(){this.matrix.compose(this.position,this.quaternion,this.scale);this.matrixWorldNeedsUpdate=!0},updateMatrixWorld:function(a){!0===this.matrixAutoUpdate&&this.updateMatrix();if(!0===this.matrixWorldNeedsUpdate||!0===a)null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,a=!0;for(var b=0,c=this.children.length;b<c;b++)this.children[b].updateMatrixWorld(a)},toJSON:function(a){function b(a){var b=
+[],c;for(c in a){var d=a[c];delete d.metadata;b.push(d)}return b}var c=void 0===a,d={};c&&(a={geometries:{},materials:{},textures:{},images:{}},d.metadata={version:4.4,type:"Object",generator:"Object3D.toJSON"});var e={};e.uuid=this.uuid;e.type=this.type;""!==this.name&&(e.name=this.name);"{}"!==JSON.stringify(this.userData)&&(e.userData=this.userData);!0===this.castShadow&&(e.castShadow=!0);!0===this.receiveShadow&&(e.receiveShadow=!0);!1===this.visible&&(e.visible=!1);e.matrix=this.matrix.toArray();
+void 0!==this.geometry&&(void 0===a.geometries[this.geometry.uuid]&&(a.geometries[this.geometry.uuid]=this.geometry.toJSON(a)),e.geometry=this.geometry.uuid);void 0!==this.material&&(void 0===a.materials[this.material.uuid]&&(a.materials[this.material.uuid]=this.material.toJSON(a)),e.material=this.material.uuid);if(0<this.children.length){e.children=[];for(var g=0;g<this.children.length;g++)e.children.push(this.children[g].toJSON(a).object)}if(c){var c=b(a.geometries),g=b(a.materials),f=b(a.textures);
+a=b(a.images);0<c.length&&(d.geometries=c);0<g.length&&(d.materials=g);0<f.length&&(d.textures=f);0<a.length&&(d.images=a)}d.object=e;return d},clone:function(a){return(new this.constructor).copy(this,a)},copy:function(a,b){void 0===b&&(b=!0);this.name=a.name;this.up.copy(a.up);this.position.copy(a.position);this.quaternion.copy(a.quaternion);this.scale.copy(a.scale);this.rotationAutoUpdate=a.rotationAutoUpdate;this.matrix.copy(a.matrix);this.matrixWorld.copy(a.matrixWorld);this.matrixAutoUpdate=
+a.matrixAutoUpdate;this.matrixWorldNeedsUpdate=a.matrixWorldNeedsUpdate;this.visible=a.visible;this.castShadow=a.castShadow;this.receiveShadow=a.receiveShadow;this.frustumCulled=a.frustumCulled;this.renderOrder=a.renderOrder;this.userData=JSON.parse(JSON.stringify(a.userData));if(!0===b)for(var c=0;c<a.children.length;c++)this.add(a.children[c].clone());return this}};THREE.EventDispatcher.prototype.apply(THREE.Object3D.prototype);THREE.Object3DIdCount=0;
+THREE.Face3=function(a,b,c,d,e,g){this.a=a;this.b=b;this.c=c;this.normal=d instanceof THREE.Vector3?d:new THREE.Vector3;this.vertexNormals=Array.isArray(d)?d:[];this.color=e instanceof THREE.Color?e:new THREE.Color;this.vertexColors=Array.isArray(e)?e:[];this.materialIndex=void 0!==g?g:0};
+THREE.Face3.prototype={constructor:THREE.Face3,clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.a=a.a;this.b=a.b;this.c=a.c;this.normal.copy(a.normal);this.color.copy(a.color);this.materialIndex=a.materialIndex;for(var b=0,c=a.vertexNormals.length;b<c;b++)this.vertexNormals[b]=a.vertexNormals[b].clone();b=0;for(c=a.vertexColors.length;b<c;b++)this.vertexColors[b]=a.vertexColors[b].clone();return this}};
+THREE.Face4=function(a,b,c,d,e,g,f){console.warn("THREE.Face4 has been removed. A THREE.Face3 will be created instead.");return new THREE.Face3(a,b,c,e,g,f)};THREE.BufferAttribute=function(a,b){this.uuid=THREE.Math.generateUUID();this.array=a;this.itemSize=b;this.dynamic=!1;this.updateRange={offset:0,count:-1};this.version=0};
+THREE.BufferAttribute.prototype={constructor:THREE.BufferAttribute,get length(){console.warn("THREE.BufferAttribute: .length has been deprecated. Please use .count.");return this.array.length},get count(){return this.array.length/this.itemSize},set needsUpdate(a){!0===a&&this.version++},setDynamic:function(a){this.dynamic=a;return this},copy:function(a){this.array=new a.array.constructor(a.array);this.itemSize=a.itemSize;this.dynamic=a.dynamic;return this},copyAt:function(a,b,c){a*=this.itemSize;
+c*=b.itemSize;for(var d=0,e=this.itemSize;d<e;d++)this.array[a+d]=b.array[c+d];return this},copyArray:function(a){this.array.set(a);return this},copyColorsArray:function(a){for(var b=this.array,c=0,d=0,e=a.length;d<e;d++){var g=a[d];void 0===g&&(console.warn("THREE.BufferAttribute.copyColorsArray(): color is undefined",d),g=new THREE.Color);b[c++]=g.r;b[c++]=g.g;b[c++]=g.b}return this},copyIndicesArray:function(a){for(var b=this.array,c=0,d=0,e=a.length;d<e;d++){var g=a[d];b[c++]=g.a;b[c++]=g.b;b[c++]=
+g.c}return this},copyVector2sArray:function(a){for(var b=this.array,c=0,d=0,e=a.length;d<e;d++){var g=a[d];void 0===g&&(console.warn("THREE.BufferAttribute.copyVector2sArray(): vector is undefined",d),g=new THREE.Vector2);b[c++]=g.x;b[c++]=g.y}return this},copyVector3sArray:function(a){for(var b=this.array,c=0,d=0,e=a.length;d<e;d++){var g=a[d];void 0===g&&(console.warn("THREE.BufferAttribute.copyVector3sArray(): vector is undefined",d),g=new THREE.Vector3);b[c++]=g.x;b[c++]=g.y;b[c++]=g.z}return this},
+copyVector4sArray:function(a){for(var b=this.array,c=0,d=0,e=a.length;d<e;d++){var g=a[d];void 0===g&&(console.warn("THREE.BufferAttribute.copyVector4sArray(): vector is undefined",d),g=new THREE.Vector4);b[c++]=g.x;b[c++]=g.y;b[c++]=g.z;b[c++]=g.w}return this},set:function(a,b){void 0===b&&(b=0);this.array.set(a,b);return this},getX:function(a){return this.array[a*this.itemSize]},setX:function(a,b){this.array[a*this.itemSize]=b;return this},getY:function(a){return this.array[a*this.itemSize+1]},
+setY:function(a,b){this.array[a*this.itemSize+1]=b;return this},getZ:function(a){return this.array[a*this.itemSize+2]},setZ:function(a,b){this.array[a*this.itemSize+2]=b;return this},getW:function(a){return this.array[a*this.itemSize+3]},setW:function(a,b){this.array[a*this.itemSize+3]=b;return this},setXY:function(a,b,c){a*=this.itemSize;this.array[a+0]=b;this.array[a+1]=c;return this},setXYZ:function(a,b,c,d){a*=this.itemSize;this.array[a+0]=b;this.array[a+1]=c;this.array[a+2]=d;return this},setXYZW:function(a,
+b,c,d,e){a*=this.itemSize;this.array[a+0]=b;this.array[a+1]=c;this.array[a+2]=d;this.array[a+3]=e;return this},clone:function(){return(new this.constructor).copy(this)}};THREE.Int8Attribute=function(a,b){return new THREE.BufferAttribute(new Int8Array(a),b)};THREE.Uint8Attribute=function(a,b){return new THREE.BufferAttribute(new Uint8Array(a),b)};THREE.Uint8ClampedAttribute=function(a,b){return new THREE.BufferAttribute(new Uint8ClampedArray(a),b)};
+THREE.Int16Attribute=function(a,b){return new THREE.BufferAttribute(new Int16Array(a),b)};THREE.Uint16Attribute=function(a,b){return new THREE.BufferAttribute(new Uint16Array(a),b)};THREE.Int32Attribute=function(a,b){return new THREE.BufferAttribute(new Int32Array(a),b)};THREE.Uint32Attribute=function(a,b){return new THREE.BufferAttribute(new Uint32Array(a),b)};THREE.Float32Attribute=function(a,b){return new THREE.BufferAttribute(new Float32Array(a),b)};
+THREE.Float64Attribute=function(a,b){return new THREE.BufferAttribute(new Float64Array(a),b)};THREE.DynamicBufferAttribute=function(a,b){console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setDynamic( true ) instead.");return(new THREE.BufferAttribute(a,b)).setDynamic(!0)};THREE.InstancedBufferAttribute=function(a,b,c){THREE.BufferAttribute.call(this,a,b);this.meshPerAttribute=c||1};THREE.InstancedBufferAttribute.prototype=Object.create(THREE.BufferAttribute.prototype);
+THREE.InstancedBufferAttribute.prototype.constructor=THREE.InstancedBufferAttribute;THREE.InstancedBufferAttribute.prototype.copy=function(a){THREE.BufferAttribute.prototype.copy.call(this,a);this.meshPerAttribute=a.meshPerAttribute;return this};THREE.InterleavedBuffer=function(a,b){this.uuid=THREE.Math.generateUUID();this.array=a;this.stride=b;this.dynamic=!1;this.updateRange={offset:0,count:-1};this.version=0};
+THREE.InterleavedBuffer.prototype={constructor:THREE.InterleavedBuffer,get length(){return this.array.length},get count(){return this.array.length/this.stride},set needsUpdate(a){!0===a&&this.version++},setDynamic:function(a){this.dynamic=a;return this},copy:function(a){this.array=new a.array.constructor(a.array);this.stride=a.stride;this.dynamic=a.dynamic},copyAt:function(a,b,c){a*=this.stride;c*=b.stride;for(var d=0,e=this.stride;d<e;d++)this.array[a+d]=b.array[c+d];return this},set:function(a,
+b){void 0===b&&(b=0);this.array.set(a,b);return this},clone:function(){return(new this.constructor).copy(this)}};THREE.InstancedInterleavedBuffer=function(a,b,c){THREE.InterleavedBuffer.call(this,a,b);this.meshPerAttribute=c||1};THREE.InstancedInterleavedBuffer.prototype=Object.create(THREE.InterleavedBuffer.prototype);THREE.InstancedInterleavedBuffer.prototype.constructor=THREE.InstancedInterleavedBuffer;
+THREE.InstancedInterleavedBuffer.prototype.copy=function(a){THREE.InterleavedBuffer.prototype.copy.call(this,a);this.meshPerAttribute=a.meshPerAttribute;return this};THREE.InterleavedBufferAttribute=function(a,b,c){this.uuid=THREE.Math.generateUUID();this.data=a;this.itemSize=b;this.offset=c};
+THREE.InterleavedBufferAttribute.prototype={constructor:THREE.InterleavedBufferAttribute,get length(){console.warn("THREE.BufferAttribute: .length has been deprecated. Please use .count.");return this.array.length},get count(){return this.data.array.length/this.data.stride},setX:function(a,b){this.data.array[a*this.data.stride+this.offset]=b;return this},setY:function(a,b){this.data.array[a*this.data.stride+this.offset+1]=b;return this},setZ:function(a,b){this.data.array[a*this.data.stride+this.offset+
+2]=b;return this},setW:function(a,b){this.data.array[a*this.data.stride+this.offset+3]=b;return this},getX:function(a){return this.data.array[a*this.data.stride+this.offset]},getY:function(a){return this.data.array[a*this.data.stride+this.offset+1]},getZ:function(a){return this.data.array[a*this.data.stride+this.offset+2]},getW:function(a){return this.data.array[a*this.data.stride+this.offset+3]},setXY:function(a,b,c){a=a*this.data.stride+this.offset;this.data.array[a+0]=b;this.data.array[a+1]=c;
+return this},setXYZ:function(a,b,c,d){a=a*this.data.stride+this.offset;this.data.array[a+0]=b;this.data.array[a+1]=c;this.data.array[a+2]=d;return this},setXYZW:function(a,b,c,d,e){a=a*this.data.stride+this.offset;this.data.array[a+0]=b;this.data.array[a+1]=c;this.data.array[a+2]=d;this.data.array[a+3]=e;return this}};
+THREE.Geometry=function(){Object.defineProperty(this,"id",{value:THREE.GeometryIdCount++});this.uuid=THREE.Math.generateUUID();this.name="";this.type="Geometry";this.vertices=[];this.colors=[];this.faces=[];this.faceVertexUvs=[[]];this.morphTargets=[];this.morphNormals=[];this.skinWeights=[];this.skinIndices=[];this.lineDistances=[];this.boundingSphere=this.boundingBox=null;this.groupsNeedUpdate=this.lineDistancesNeedUpdate=this.colorsNeedUpdate=this.normalsNeedUpdate=this.uvsNeedUpdate=this.elementsNeedUpdate=
+this.verticesNeedUpdate=!1};
+THREE.Geometry.prototype={constructor:THREE.Geometry,applyMatrix:function(a){for(var b=(new THREE.Matrix3).getNormalMatrix(a),c=0,d=this.vertices.length;c<d;c++)this.vertices[c].applyMatrix4(a);c=0;for(d=this.faces.length;c<d;c++){a=this.faces[c];a.normal.applyMatrix3(b).normalize();for(var e=0,g=a.vertexNormals.length;e<g;e++)a.vertexNormals[e].applyMatrix3(b).normalize()}null!==this.boundingBox&&this.computeBoundingBox();null!==this.boundingSphere&&this.computeBoundingSphere();this.normalsNeedUpdate=
+this.verticesNeedUpdate=!0},rotateX:function(){var a;return function(b){void 0===a&&(a=new THREE.Matrix4);a.makeRotationX(b);this.applyMatrix(a);return this}}(),rotateY:function(){var a;return function(b){void 0===a&&(a=new THREE.Matrix4);a.makeRotationY(b);this.applyMatrix(a);return this}}(),rotateZ:function(){var a;return function(b){void 0===a&&(a=new THREE.Matrix4);a.makeRotationZ(b);this.applyMatrix(a);return this}}(),translate:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Matrix4);
+a.makeTranslation(b,c,d);this.applyMatrix(a);return this}}(),scale:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Matrix4);a.makeScale(b,c,d);this.applyMatrix(a);return this}}(),lookAt:function(){var a;return function(b){void 0===a&&(a=new THREE.Object3D);a.lookAt(b);a.updateMatrix();this.applyMatrix(a.matrix)}}(),fromBufferGeometry:function(a){function b(a,b,d){var e=void 0!==f?[m[a].clone(),m[b].clone(),m[d].clone()]:[],g=void 0!==h?[c.colors[a].clone(),c.colors[b].clone(),c.colors[d].clone()]:
+[],e=new THREE.Face3(a,b,d,e,g);c.faces.push(e);void 0!==l&&c.faceVertexUvs[0].push([p[a].clone(),p[b].clone(),p[d].clone()]);void 0!==k&&c.faceVertexUvs[1].push([n[a].clone(),n[b].clone(),n[d].clone()])}var c=this,d=null!==a.index?a.index.array:void 0,e=a.attributes,g=e.position.array,f=void 0!==e.normal?e.normal.array:void 0,h=void 0!==e.color?e.color.array:void 0,l=void 0!==e.uv?e.uv.array:void 0,k=void 0!==e.uv2?e.uv2.array:void 0;void 0!==k&&(this.faceVertexUvs[1]=[]);for(var m=[],p=[],n=[],
+q=e=0;e<g.length;e+=3,q+=2)c.vertices.push(new THREE.Vector3(g[e],g[e+1],g[e+2])),void 0!==f&&m.push(new THREE.Vector3(f[e],f[e+1],f[e+2])),void 0!==h&&c.colors.push(new THREE.Color(h[e],h[e+1],h[e+2])),void 0!==l&&p.push(new THREE.Vector2(l[q],l[q+1])),void 0!==k&&n.push(new THREE.Vector2(k[q],k[q+1]));if(void 0!==d)if(g=a.groups,0<g.length)for(e=0;e<g.length;e++)for(var q=g[e],s=q.start,t=q.count,q=s,s=s+t;q<s;q+=3)b(d[q],d[q+1],d[q+2]);else for(e=0;e<d.length;e+=3)b(d[e],d[e+1],d[e+2]);else for(e=
+0;e<g.length/3;e+=3)b(e,e+1,e+2);this.computeFaceNormals();null!==a.boundingBox&&(this.boundingBox=a.boundingBox.clone());null!==a.boundingSphere&&(this.boundingSphere=a.boundingSphere.clone());return this},center:function(){this.computeBoundingBox();var a=this.boundingBox.center().negate();this.translate(a.x,a.y,a.z);return a},normalize:function(){this.computeBoundingSphere();var a=this.boundingSphere.center,b=this.boundingSphere.radius,b=0===b?1:1/b,c=new THREE.Matrix4;c.set(b,0,0,-b*a.x,0,b,0,
+-b*a.y,0,0,b,-b*a.z,0,0,0,1);this.applyMatrix(c);return this},computeFaceNormals:function(){for(var a=new THREE.Vector3,b=new THREE.Vector3,c=0,d=this.faces.length;c<d;c++){var e=this.faces[c],g=this.vertices[e.a],f=this.vertices[e.b];a.subVectors(this.vertices[e.c],f);b.subVectors(g,f);a.cross(b);a.normalize();e.normal.copy(a)}},computeVertexNormals:function(a){var b,c,d;d=Array(this.vertices.length);b=0;for(c=this.vertices.length;b<c;b++)d[b]=new THREE.Vector3;if(a){var e,g,f,h=new THREE.Vector3,
+l=new THREE.Vector3;a=0;for(b=this.faces.length;a<b;a++)c=this.faces[a],e=this.vertices[c.a],g=this.vertices[c.b],f=this.vertices[c.c],h.subVectors(f,g),l.subVectors(e,g),h.cross(l),d[c.a].add(h),d[c.b].add(h),d[c.c].add(h)}else for(a=0,b=this.faces.length;a<b;a++)c=this.faces[a],d[c.a].add(c.normal),d[c.b].add(c.normal),d[c.c].add(c.normal);b=0;for(c=this.vertices.length;b<c;b++)d[b].normalize();a=0;for(b=this.faces.length;a<b;a++)c=this.faces[a],e=c.vertexNormals,3===e.length?(e[0].copy(d[c.a]),
+e[1].copy(d[c.b]),e[2].copy(d[c.c])):(e[0]=d[c.a].clone(),e[1]=d[c.b].clone(),e[2]=d[c.c].clone())},computeMorphNormals:function(){var a,b,c,d,e;c=0;for(d=this.faces.length;c<d;c++)for(e=this.faces[c],e.__originalFaceNormal?e.__originalFaceNormal.copy(e.normal):e.__originalFaceNormal=e.normal.clone(),e.__originalVertexNormals||(e.__originalVertexNormals=[]),a=0,b=e.vertexNormals.length;a<b;a++)e.__originalVertexNormals[a]?e.__originalVertexNormals[a].copy(e.vertexNormals[a]):e.__originalVertexNormals[a]=
+e.vertexNormals[a].clone();var g=new THREE.Geometry;g.faces=this.faces;a=0;for(b=this.morphTargets.length;a<b;a++){if(!this.morphNormals[a]){this.morphNormals[a]={};this.morphNormals[a].faceNormals=[];this.morphNormals[a].vertexNormals=[];e=this.morphNormals[a].faceNormals;var f=this.morphNormals[a].vertexNormals,h,l;c=0;for(d=this.faces.length;c<d;c++)h=new THREE.Vector3,l={a:new THREE.Vector3,b:new THREE.Vector3,c:new THREE.Vector3},e.push(h),f.push(l)}f=this.morphNormals[a];g.vertices=this.morphTargets[a].vertices;
+g.computeFaceNormals();g.computeVertexNormals();c=0;for(d=this.faces.length;c<d;c++)e=this.faces[c],h=f.faceNormals[c],l=f.vertexNormals[c],h.copy(e.normal),l.a.copy(e.vertexNormals[0]),l.b.copy(e.vertexNormals[1]),l.c.copy(e.vertexNormals[2])}c=0;for(d=this.faces.length;c<d;c++)e=this.faces[c],e.normal=e.__originalFaceNormal,e.vertexNormals=e.__originalVertexNormals},computeTangents:function(){console.warn("THREE.Geometry: .computeTangents() has been removed.")},computeLineDistances:function(){for(var a=
+0,b=this.vertices,c=0,d=b.length;c<d;c++)0<c&&(a+=b[c].distanceTo(b[c-1])),this.lineDistances[c]=a},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new THREE.Box3);this.boundingBox.setFromPoints(this.vertices)},computeBoundingSphere:function(){null===this.boundingSphere&&(this.boundingSphere=new THREE.Sphere);this.boundingSphere.setFromPoints(this.vertices)},merge:function(a,b,c){if(!1===a instanceof THREE.Geometry)console.error("THREE.Geometry.merge(): geometry not an instance of THREE.Geometry.",
+a);else{var d,e=this.vertices.length,g=this.vertices,f=a.vertices,h=this.faces,l=a.faces,k=this.faceVertexUvs[0];a=a.faceVertexUvs[0];void 0===c&&(c=0);void 0!==b&&(d=(new THREE.Matrix3).getNormalMatrix(b));for(var m=0,p=f.length;m<p;m++){var n=f[m].clone();void 0!==b&&n.applyMatrix4(b);g.push(n)}m=0;for(p=l.length;m<p;m++){var f=l[m],q,s=f.vertexNormals,t=f.vertexColors,n=new THREE.Face3(f.a+e,f.b+e,f.c+e);n.normal.copy(f.normal);void 0!==d&&n.normal.applyMatrix3(d).normalize();b=0;for(g=s.length;b<
+g;b++)q=s[b].clone(),void 0!==d&&q.applyMatrix3(d).normalize(),n.vertexNormals.push(q);n.color.copy(f.color);b=0;for(g=t.length;b<g;b++)q=t[b],n.vertexColors.push(q.clone());n.materialIndex=f.materialIndex+c;h.push(n)}m=0;for(p=a.length;m<p;m++)if(c=a[m],d=[],void 0!==c){b=0;for(g=c.length;b<g;b++)d.push(c[b].clone());k.push(d)}}},mergeMesh:function(a){!1===a instanceof THREE.Mesh?console.error("THREE.Geometry.mergeMesh(): mesh not an instance of THREE.Mesh.",a):(a.matrixAutoUpdate&&a.updateMatrix(),
+this.merge(a.geometry,a.matrix))},mergeVertices:function(){var a={},b=[],c=[],d,e=Math.pow(10,4),g,f;g=0;for(f=this.vertices.length;g<f;g++)d=this.vertices[g],d=Math.round(d.x*e)+"_"+Math.round(d.y*e)+"_"+Math.round(d.z*e),void 0===a[d]?(a[d]=g,b.push(this.vertices[g]),c[g]=b.length-1):c[g]=c[a[d]];a=[];g=0;for(f=this.faces.length;g<f;g++)for(e=this.faces[g],e.a=c[e.a],e.b=c[e.b],e.c=c[e.c],e=[e.a,e.b,e.c],d=0;3>d;d++)if(e[d]===e[(d+1)%3]){a.push(g);break}for(g=a.length-1;0<=g;g--)for(e=a[g],this.faces.splice(e,
+1),c=0,f=this.faceVertexUvs.length;c<f;c++)this.faceVertexUvs[c].splice(e,1);g=this.vertices.length-b.length;this.vertices=b;return g},sortFacesByMaterialIndex:function(){for(var a=this.faces,b=a.length,c=0;c<b;c++)a[c]._id=c;a.sort(function(a,b){return a.materialIndex-b.materialIndex});var d=this.faceVertexUvs[0],e=this.faceVertexUvs[1],g,f;d&&d.length===b&&(g=[]);e&&e.length===b&&(f=[]);for(c=0;c<b;c++){var h=a[c]._id;g&&g.push(d[h]);f&&f.push(e[h])}g&&(this.faceVertexUvs[0]=g);f&&(this.faceVertexUvs[1]=
+f)},toJSON:function(){function a(a,b,c){return c?a|1<<b:a&~(1<<b)}function b(a){var b=a.x.toString()+a.y.toString()+a.z.toString();if(void 0!==k[b])return k[b];k[b]=l.length/3;l.push(a.x,a.y,a.z);return k[b]}function c(a){var b=a.r.toString()+a.g.toString()+a.b.toString();if(void 0!==p[b])return p[b];p[b]=m.length;m.push(a.getHex());return p[b]}function d(a){var b=a.x.toString()+a.y.toString();if(void 0!==q[b])return q[b];q[b]=n.length/2;n.push(a.x,a.y);return q[b]}var e={metadata:{version:4.4,type:"Geometry",
+generator:"Geometry.toJSON"}};e.uuid=this.uuid;e.type=this.type;""!==this.name&&(e.name=this.name);if(void 0!==this.parameters){var g=this.parameters,f;for(f in g)void 0!==g[f]&&(e[f]=g[f]);return e}g=[];for(f=0;f<this.vertices.length;f++){var h=this.vertices[f];g.push(h.x,h.y,h.z)}var h=[],l=[],k={},m=[],p={},n=[],q={};for(f=0;f<this.faces.length;f++){var s=this.faces[f],t=void 0!==this.faceVertexUvs[0][f],v=0<s.normal.length(),u=0<s.vertexNormals.length,w=1!==s.color.r||1!==s.color.g||1!==s.color.b,
+D=0<s.vertexColors.length,x=0,x=a(x,0,0),x=a(x,1,!1),x=a(x,2,!1),x=a(x,3,t),x=a(x,4,v),x=a(x,5,u),x=a(x,6,w),x=a(x,7,D);h.push(x);h.push(s.a,s.b,s.c);t&&(t=this.faceVertexUvs[0][f],h.push(d(t[0]),d(t[1]),d(t[2])));v&&h.push(b(s.normal));u&&(v=s.vertexNormals,h.push(b(v[0]),b(v[1]),b(v[2])));w&&h.push(c(s.color));D&&(s=s.vertexColors,h.push(c(s[0]),c(s[1]),c(s[2])))}e.data={};e.data.vertices=g;e.data.normals=l;0<m.length&&(e.data.colors=m);0<n.length&&(e.data.uvs=[n]);e.data.faces=h;return e},clone:function(){return(new this.constructor).copy(this)},
+copy:function(a){this.vertices=[];this.faces=[];this.faceVertexUvs=[[]];for(var b=a.vertices,c=0,d=b.length;c<d;c++)this.vertices.push(b[c].clone());b=a.faces;c=0;for(d=b.length;c<d;c++)this.faces.push(b[c].clone());c=0;for(d=a.faceVertexUvs.length;c<d;c++){b=a.faceVertexUvs[c];void 0===this.faceVertexUvs[c]&&(this.faceVertexUvs[c]=[]);for(var e=0,g=b.length;e<g;e++){for(var f=b[e],h=[],l=0,k=f.length;l<k;l++)h.push(f[l].clone());this.faceVertexUvs[c].push(h)}}return this},dispose:function(){this.dispatchEvent({type:"dispose"})}};
+THREE.EventDispatcher.prototype.apply(THREE.Geometry.prototype);THREE.GeometryIdCount=0;
+THREE.DirectGeometry=function(){Object.defineProperty(this,"id",{value:THREE.GeometryIdCount++});this.uuid=THREE.Math.generateUUID();this.name="";this.type="DirectGeometry";this.indices=[];this.vertices=[];this.normals=[];this.colors=[];this.uvs=[];this.uvs2=[];this.groups=[];this.morphTargets={};this.skinWeights=[];this.skinIndices=[];this.boundingSphere=this.boundingBox=null;this.groupsNeedUpdate=this.uvsNeedUpdate=this.colorsNeedUpdate=this.normalsNeedUpdate=this.verticesNeedUpdate=!1};
+THREE.DirectGeometry.prototype={constructor:THREE.DirectGeometry,computeBoundingBox:THREE.Geometry.prototype.computeBoundingBox,computeBoundingSphere:THREE.Geometry.prototype.computeBoundingSphere,computeFaceNormals:function(){console.warn("THREE.DirectGeometry: computeFaceNormals() is not a method of this type of geometry.")},computeVertexNormals:function(){console.warn("THREE.DirectGeometry: computeVertexNormals() is not a method of this type of geometry.")},computeGroups:function(a){var b,c=[],
+d;a=a.faces;for(var e=0;e<a.length;e++){var g=a[e];g.materialIndex!==d&&(d=g.materialIndex,void 0!==b&&(b.count=3*e-b.start,c.push(b)),b={start:3*e,materialIndex:d})}void 0!==b&&(b.count=3*e-b.start,c.push(b));this.groups=c},fromGeometry:function(a){var b=a.faces,c=a.vertices,d=a.faceVertexUvs,e=d[0]&&0<d[0].length,g=d[1]&&0<d[1].length,f=a.morphTargets,h=f.length;if(0<h){for(var l=[],k=0;k<h;k++)l[k]=[];this.morphTargets.position=l}var m=a.morphNormals,p=m.length;if(0<p){for(var n=[],k=0;k<p;k++)n[k]=
+[];this.morphTargets.normal=n}for(var q=a.skinIndices,s=a.skinWeights,t=q.length===c.length,v=s.length===c.length,k=0;k<b.length;k++){var u=b[k];this.vertices.push(c[u.a],c[u.b],c[u.c]);var w=u.vertexNormals;3===w.length?this.normals.push(w[0],w[1],w[2]):(w=u.normal,this.normals.push(w,w,w));w=u.vertexColors;3===w.length?this.colors.push(w[0],w[1],w[2]):(w=u.color,this.colors.push(w,w,w));!0===e&&(w=d[0][k],void 0!==w?this.uvs.push(w[0],w[1],w[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv ",
+k),this.uvs.push(new THREE.Vector2,new THREE.Vector2,new THREE.Vector2)));!0===g&&(w=d[1][k],void 0!==w?this.uvs2.push(w[0],w[1],w[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv2 ",k),this.uvs2.push(new THREE.Vector2,new THREE.Vector2,new THREE.Vector2)));for(w=0;w<h;w++){var D=f[w].vertices;l[w].push(D[u.a],D[u.b],D[u.c])}for(w=0;w<p;w++)D=m[w].vertexNormals[k],n[w].push(D.a,D.b,D.c);t&&this.skinIndices.push(q[u.a],q[u.b],q[u.c]);v&&this.skinWeights.push(s[u.a],s[u.b],
+s[u.c])}this.computeGroups(a);this.verticesNeedUpdate=a.verticesNeedUpdate;this.normalsNeedUpdate=a.normalsNeedUpdate;this.colorsNeedUpdate=a.colorsNeedUpdate;this.uvsNeedUpdate=a.uvsNeedUpdate;this.groupsNeedUpdate=a.groupsNeedUpdate;return this},dispose:function(){this.dispatchEvent({type:"dispose"})}};THREE.EventDispatcher.prototype.apply(THREE.DirectGeometry.prototype);
+THREE.BufferGeometry=function(){Object.defineProperty(this,"id",{value:THREE.GeometryIdCount++});this.uuid=THREE.Math.generateUUID();this.name="";this.type="BufferGeometry";this.index=null;this.attributes={};this.morphAttributes={};this.groups=[];this.boundingSphere=this.boundingBox=null;this.drawRange={start:0,count:Infinity}};
+THREE.BufferGeometry.prototype={constructor:THREE.BufferGeometry,addIndex:function(a){console.warn("THREE.BufferGeometry: .addIndex() has been renamed to .setIndex().");this.setIndex(a)},getIndex:function(){return this.index},setIndex:function(a){this.index=a},addAttribute:function(a,b,c){!1===b instanceof THREE.BufferAttribute&&!1===b instanceof THREE.InterleavedBufferAttribute?(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.addAttribute(a,new THREE.BufferAttribute(b,
+c))):"index"===a?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(b)):this.attributes[a]=b},getAttribute:function(a){return this.attributes[a]},removeAttribute:function(a){delete this.attributes[a]},get drawcalls(){console.error("THREE.BufferGeometry: .drawcalls has been renamed to .groups.");return this.groups},get offsets(){console.warn("THREE.BufferGeometry: .offsets has been renamed to .groups.");return this.groups},addDrawCall:function(a,
+b,c){void 0!==c&&console.warn("THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset.");console.warn("THREE.BufferGeometry: .addDrawCall() is now .addGroup().");this.addGroup(a,b)},clearDrawCalls:function(){console.warn("THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups().");this.clearGroups()},addGroup:function(a,b,c){this.groups.push({start:a,count:b,materialIndex:void 0!==c?c:0})},clearGroups:function(){this.groups=[]},setDrawRange:function(a,b){this.drawRange.start=a;this.drawRange.count=
+b},applyMatrix:function(a){var b=this.attributes.position;void 0!==b&&(a.applyToVector3Array(b.array),b.needsUpdate=!0);b=this.attributes.normal;void 0!==b&&((new THREE.Matrix3).getNormalMatrix(a).applyToVector3Array(b.array),b.needsUpdate=!0);null!==this.boundingBox&&this.computeBoundingBox();null!==this.boundingSphere&&this.computeBoundingSphere()},rotateX:function(){var a;return function(b){void 0===a&&(a=new THREE.Matrix4);a.makeRotationX(b);this.applyMatrix(a);return this}}(),rotateY:function(){var a;
+return function(b){void 0===a&&(a=new THREE.Matrix4);a.makeRotationY(b);this.applyMatrix(a);return this}}(),rotateZ:function(){var a;return function(b){void 0===a&&(a=new THREE.Matrix4);a.makeRotationZ(b);this.applyMatrix(a);return this}}(),translate:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Matrix4);a.makeTranslation(b,c,d);this.applyMatrix(a);return this}}(),scale:function(){var a;return function(b,c,d){void 0===a&&(a=new THREE.Matrix4);a.makeScale(b,c,d);this.applyMatrix(a);
+return this}}(),lookAt:function(){var a;return function(b){void 0===a&&(a=new THREE.Object3D);a.lookAt(b);a.updateMatrix();this.applyMatrix(a.matrix)}}(),center:function(){this.computeBoundingBox();var a=this.boundingBox.center().negate();this.translate(a.x,a.y,a.z);return a},setFromObject:function(a){var b=a.geometry;if(a instanceof THREE.Points||a instanceof THREE.Line){a=new THREE.Float32Attribute(3*b.vertices.length,3);var c=new THREE.Float32Attribute(3*b.colors.length,3);this.addAttribute("position",
+a.copyVector3sArray(b.vertices));this.addAttribute("color",c.copyColorsArray(b.colors));b.lineDistances&&b.lineDistances.length===b.vertices.length&&(a=new THREE.Float32Attribute(b.lineDistances.length,1),this.addAttribute("lineDistance",a.copyArray(b.lineDistances)));null!==b.boundingSphere&&(this.boundingSphere=b.boundingSphere.clone());null!==b.boundingBox&&(this.boundingBox=b.boundingBox.clone())}else a instanceof THREE.Mesh&&b instanceof THREE.Geometry&&this.fromGeometry(b);return this},updateFromObject:function(a){var b=
+a.geometry;if(a instanceof THREE.Mesh){var c=b.__directGeometry;if(void 0===c)return this.fromGeometry(b);c.verticesNeedUpdate=b.verticesNeedUpdate;c.normalsNeedUpdate=b.normalsNeedUpdate;c.colorsNeedUpdate=b.colorsNeedUpdate;c.uvsNeedUpdate=b.uvsNeedUpdate;c.groupsNeedUpdate=b.groupsNeedUpdate;b.verticesNeedUpdate=!1;b.normalsNeedUpdate=!1;b.colorsNeedUpdate=!1;b.uvsNeedUpdate=!1;b.groupsNeedUpdate=!1;b=c}!0===b.verticesNeedUpdate&&(c=this.attributes.position,void 0!==c&&(c.copyVector3sArray(b.vertices),
+c.needsUpdate=!0),b.verticesNeedUpdate=!1);!0===b.normalsNeedUpdate&&(c=this.attributes.normal,void 0!==c&&(c.copyVector3sArray(b.normals),c.needsUpdate=!0),b.normalsNeedUpdate=!1);!0===b.colorsNeedUpdate&&(c=this.attributes.color,void 0!==c&&(c.copyColorsArray(b.colors),c.needsUpdate=!0),b.colorsNeedUpdate=!1);b.uvsNeedUpdate&&(c=this.attributes.uv,void 0!==c&&(c.copyVector2sArray(b.uvs),c.needsUpdate=!0),b.uvsNeedUpdate=!1);b.lineDistancesNeedUpdate&&(c=this.attributes.lineDistance,void 0!==c&&
+(c.copyArray(b.lineDistances),c.needsUpdate=!0),b.lineDistancesNeedUpdate=!1);b.groupsNeedUpdate&&(b.computeGroups(a.geometry),this.groups=b.groups,b.groupsNeedUpdate=!1);return this},fromGeometry:function(a){a.__directGeometry=(new THREE.DirectGeometry).fromGeometry(a);return this.fromDirectGeometry(a.__directGeometry)},fromDirectGeometry:function(a){var b=new Float32Array(3*a.vertices.length);this.addAttribute("position",(new THREE.BufferAttribute(b,3)).copyVector3sArray(a.vertices));0<a.normals.length&&
+(b=new Float32Array(3*a.normals.length),this.addAttribute("normal",(new THREE.BufferAttribute(b,3)).copyVector3sArray(a.normals)));0<a.colors.length&&(b=new Float32Array(3*a.colors.length),this.addAttribute("color",(new THREE.BufferAttribute(b,3)).copyColorsArray(a.colors)));0<a.uvs.length&&(b=new Float32Array(2*a.uvs.length),this.addAttribute("uv",(new THREE.BufferAttribute(b,2)).copyVector2sArray(a.uvs)));0<a.uvs2.length&&(b=new Float32Array(2*a.uvs2.length),this.addAttribute("uv2",(new THREE.BufferAttribute(b,
+2)).copyVector2sArray(a.uvs2)));0<a.indices.length&&(b=new (65535<a.vertices.length?Uint32Array:Uint16Array)(3*a.indices.length),this.setIndex((new THREE.BufferAttribute(b,1)).copyIndicesArray(a.indices)));this.groups=a.groups;for(var c in a.morphTargets){for(var b=[],d=a.morphTargets[c],e=0,g=d.length;e<g;e++){var f=d[e],h=new THREE.Float32Attribute(3*f.length,3);b.push(h.copyVector3sArray(f))}this.morphAttributes[c]=b}0<a.skinIndices.length&&(c=new THREE.Float32Attribute(4*a.skinIndices.length,
+4),this.addAttribute("skinIndex",c.copyVector4sArray(a.skinIndices)));0<a.skinWeights.length&&(c=new THREE.Float32Attribute(4*a.skinWeights.length,4),this.addAttribute("skinWeight",c.copyVector4sArray(a.skinWeights)));null!==a.boundingSphere&&(this.boundingSphere=a.boundingSphere.clone());null!==a.boundingBox&&(this.boundingBox=a.boundingBox.clone());return this},computeBoundingBox:function(){var a=new THREE.Vector3;return function(){null===this.boundingBox&&(this.boundingBox=new THREE.Box3);var b=
+this.attributes.position.array;if(b){var c=this.boundingBox;c.makeEmpty();for(var d=0,e=b.length;d<e;d+=3)a.fromArray(b,d),c.expandByPoint(a)}if(void 0===b||0===b.length)this.boundingBox.min.set(0,0,0),this.boundingBox.max.set(0,0,0);(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox: Computed min/max have NaN values. The "position" attribute is likely to have NaN values.',this)}}(),computeBoundingSphere:function(){var a=
+new THREE.Box3,b=new THREE.Vector3;return function(){null===this.boundingSphere&&(this.boundingSphere=new THREE.Sphere);var c=this.attributes.position.array;if(c){a.makeEmpty();for(var d=this.boundingSphere.center,e=0,g=c.length;e<g;e+=3)b.fromArray(c,e),a.expandByPoint(b);a.center(d);for(var f=0,e=0,g=c.length;e<g;e+=3)b.fromArray(c,e),f=Math.max(f,d.distanceToSquared(b));this.boundingSphere.radius=Math.sqrt(f);isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',
+this)}}}(),computeFaceNormals:function(){},computeVertexNormals:function(){var a=this.index,b=this.attributes,c=this.groups;if(b.position){var d=b.position.array;if(void 0===b.normal)this.addAttribute("normal",new THREE.BufferAttribute(new Float32Array(d.length),3));else for(var e=b.normal.array,g=0,f=e.length;g<f;g++)e[g]=0;var e=b.normal.array,h,l,k,m=new THREE.Vector3,p=new THREE.Vector3,n=new THREE.Vector3,q=new THREE.Vector3,s=new THREE.Vector3;if(a){a=a.array;0===c.length&&this.addGroup(0,a.length);
+for(var t=0,v=c.length;t<v;++t)for(g=c[t],f=g.start,h=g.count,g=f,f+=h;g<f;g+=3)h=3*a[g+0],l=3*a[g+1],k=3*a[g+2],m.fromArray(d,h),p.fromArray(d,l),n.fromArray(d,k),q.subVectors(n,p),s.subVectors(m,p),q.cross(s),e[h]+=q.x,e[h+1]+=q.y,e[h+2]+=q.z,e[l]+=q.x,e[l+1]+=q.y,e[l+2]+=q.z,e[k]+=q.x,e[k+1]+=q.y,e[k+2]+=q.z}else for(g=0,f=d.length;g<f;g+=9)m.fromArray(d,g),p.fromArray(d,g+3),n.fromArray(d,g+6),q.subVectors(n,p),s.subVectors(m,p),q.cross(s),e[g]=q.x,e[g+1]=q.y,e[g+2]=q.z,e[g+3]=q.x,e[g+4]=q.y,
+e[g+5]=q.z,e[g+6]=q.x,e[g+7]=q.y,e[g+8]=q.z;this.normalizeNormals();b.normal.needsUpdate=!0}},computeTangents:function(){console.warn("THREE.BufferGeometry: .computeTangents() has been removed.")},computeOffsets:function(a){console.warn("THREE.BufferGeometry: .computeOffsets() has been removed.")},merge:function(a,b){if(!1===a instanceof THREE.BufferGeometry)console.error("THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.",a);else{void 0===b&&(b=0);var c=this.attributes,
+d;for(d in c)if(void 0!==a.attributes[d])for(var e=c[d].array,g=a.attributes[d],f=g.array,h=0,g=g.itemSize*b;h<f.length;h++,g++)e[g]=f[h];return this}},normalizeNormals:function(){for(var a=this.attributes.normal.array,b,c,d,e=0,g=a.length;e<g;e+=3)b=a[e],c=a[e+1],d=a[e+2],b=1/Math.sqrt(b*b+c*c+d*d),a[e]*=b,a[e+1]*=b,a[e+2]*=b},toJSON:function(){var a={metadata:{version:4.4,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};a.uuid=this.uuid;a.type=this.type;""!==this.name&&(a.name=this.name);
+if(void 0!==this.parameters){var b=this.parameters,c;for(c in b)void 0!==b[c]&&(a[c]=b[c]);return a}a.data={attributes:{}};var d=this.index;null!==d&&(b=Array.prototype.slice.call(d.array),a.data.index={type:d.array.constructor.name,array:b});d=this.attributes;for(c in d){var e=d[c],b=Array.prototype.slice.call(e.array);a.data.attributes[c]={itemSize:e.itemSize,type:e.array.constructor.name,array:b}}c=this.groups;0<c.length&&(a.data.groups=JSON.parse(JSON.stringify(c)));c=this.boundingSphere;null!==
+c&&(a.data.boundingSphere={center:c.center.toArray(),radius:c.radius});return a},clone:function(){return(new this.constructor).copy(this)},copy:function(a){var b=a.index;null!==b&&this.setIndex(b.clone());var b=a.attributes,c;for(c in b)this.addAttribute(c,b[c].clone());a=a.groups;c=0;for(b=a.length;c<b;c++){var d=a[c];this.addGroup(d.start,d.count)}return this},dispose:function(){this.dispatchEvent({type:"dispose"})}};THREE.EventDispatcher.prototype.apply(THREE.BufferGeometry.prototype);
+THREE.BufferGeometry.MaxIndex=65535;THREE.InstancedBufferGeometry=function(){THREE.BufferGeometry.call(this);this.type="InstancedBufferGeometry";this.maxInstancedCount=void 0};THREE.InstancedBufferGeometry.prototype=Object.create(THREE.BufferGeometry.prototype);THREE.InstancedBufferGeometry.prototype.constructor=THREE.InstancedBufferGeometry;THREE.InstancedBufferGeometry.prototype.addGroup=function(a,b,c){this.groups.push({start:a,count:b,instances:c})};
+THREE.InstancedBufferGeometry.prototype.copy=function(a){var b=a.index;null!==b&&this.setIndex(b.clone());var b=a.attributes,c;for(c in b)this.addAttribute(c,b[c].clone());a=a.groups;c=0;for(b=a.length;c<b;c++){var d=a[c];this.addGroup(d.start,d.count,d.instances)}return this};THREE.EventDispatcher.prototype.apply(THREE.InstancedBufferGeometry.prototype);
+THREE.AnimationAction=function(a,b,c,d,e){if(void 0===a)throw Error("clip is null");this.clip=a;this.localRoot=null;this.startTime=b||0;this.timeScale=c||1;this.weight=d||1;this.loop=e||THREE.LoopRepeat;this.loopCount=0;this.enabled=!0;this.actionTime=-this.startTime;this.clipTime=0;this.propertyBindings=[]};
+THREE.AnimationAction.prototype={constructor:THREE.AnimationAction,setLocalRoot:function(a){this.localRoot=a;return this},updateTime:function(a){var b=this.clipTime,c=this.loopCount,d=this.clip.duration;this.actionTime+=a;if(this.loop===THREE.LoopOnce)return this.loopCount=0,this.clipTime=Math.min(Math.max(this.actionTime,0),d),this.clipTime!==b&&(this.clipTime===d?this.mixer.dispatchEvent({type:"finished",action:this,direction:1}):0===this.clipTime&&this.mixer.dispatchEvent({type:"finished",action:this,
+direction:-1})),this.clipTime;this.loopCount=Math.floor(this.actionTime/d);a=this.actionTime-this.loopCount*d;a%=d;this.loop==THREE.LoopPingPong&&1===Math.abs(this.loopCount%2)&&(a=d-a);this.clipTime=a;this.loopCount!==c&&this.mixer.dispatchEvent({type:"loop",action:this,loopDelta:this.loopCount-this.loopCount});return this.clipTime},syncWith:function(a){this.actionTime=a.actionTime;this.timeScale=a.timeScale;return this},warpToDuration:function(a){this.timeScale=this.clip.duration/a;return this},
+init:function(a){this.clipTime=a-this.startTime;return this},update:function(a){this.updateTime(a);return this.clip.getAt(this.clipTime)},getTimeScaleAt:function(a){return this.timeScale.getAt?this.timeScale.getAt(a):this.timeScale},getWeightAt:function(a){return this.weight.getAt?this.weight.getAt(a):this.weight}};
+THREE.AnimationClip=function(a,b,c){this.name=a;this.tracks=c;this.duration=void 0!==b?b:-1;if(0>this.duration)for(a=0;a<this.tracks.length;a++)b=this.tracks[a],this.duration=Math.max(b.keys[b.keys.length-1].time);this.trim();this.optimize();this.results=[]};
+THREE.AnimationClip.prototype={constructor:THREE.AnimationClip,getAt:function(a){a=Math.max(0,Math.min(a,this.duration));for(var b=0;b<this.tracks.length;b++)this.results[b]=this.tracks[b].getAt(a);return this.results},trim:function(){for(var a=0;a<this.tracks.length;a++)this.tracks[a].trim(0,this.duration);return this},optimize:function(){for(var a=0;a<this.tracks.length;a++)this.tracks[a].optimize();return this}};
+THREE.AnimationClip.CreateFromMorphTargetSequence=function(a,b,c){for(var d=b.length,e=[],g=0;g<d;g++){var f=[];f.push({time:(g+d-1)%d,value:0});f.push({time:g,value:1});f.push({time:(g+1)%d,value:0});f.sort(THREE.KeyframeTrack.keyComparer);0===f[0].time&&f.push({time:d,value:f[0].value});e.push((new THREE.NumberKeyframeTrack(".morphTargetInfluences["+b[g].name+"]",f)).scale(1/c))}return new THREE.AnimationClip(a,-1,e)};
+THREE.AnimationClip.findByName=function(a,b){for(var c=0;c<a.length;c++)if(a[c].name===b)return a[c];return null};THREE.AnimationClip.CreateClipsFromMorphTargetSequences=function(a,b){for(var c={},d=/^([\w-]*?)([\d]+)$/,e=0,g=a.length;e<g;e++){var f=a[e],h=f.name.match(d);if(h&&1<h.length){var l=h[1];(h=c[l])||(c[l]=h=[]);h.push(f)}}d=[];for(l in c)d.push(THREE.AnimationClip.CreateFromMorphTargetSequence(l,c[l],b));return d};
+THREE.AnimationClip.parse=function(a){for(var b=[],c=0;c<a.tracks.length;c++)b.push(THREE.KeyframeTrack.parse(a.tracks[c]).scale(1/a.fps));return new THREE.AnimationClip(a.name,a.duration,b)};
+THREE.AnimationClip.parseAnimation=function(a,b,c){if(!a)return console.error("  no animation in JSONLoader data"),null;var d=function(a,b,c,d,e){for(var g=[],f=0;f<b.length;f++){var h=b[f];void 0!==h[c]&&g.push({time:h.time,value:e(h)})}return 0<g.length?new d(a,g):null},e=[],g=a.name||"default",f=a.length||-1,h=a.fps||30;a=a.hierarchy||[];for(var l=0;l<a.length;l++){var k=a[l].keys;if(k&&0!=k.length)if(k[0].morphTargets){for(var f={},m=0;m<k.length;m++)if(k[m].morphTargets)for(var p=0;p<k[m].morphTargets.length;p++)f[k[m].morphTargets[p]]=
+-1;for(var n in f){for(var q=[],p=0;p<k[m].morphTargets.length;p++){var s=k[m];q.push({time:s.time,value:s.morphTarget===n?1:0})}e.push(new THREE.NumberKeyframeTrack(c+".morphTargetInfluence["+n+"]",q))}f=f.length*(h||1)}else m=c+".bones["+b[l].name+"]",(p=d(m+".position",k,"pos",THREE.VectorKeyframeTrack,function(a){return(new THREE.Vector3).fromArray(a.pos)}))&&e.push(p),(p=d(m+".quaternion",k,"rot",THREE.QuaternionKeyframeTrack,function(a){return a.rot.slerp?a.rot.clone():(new THREE.Quaternion).fromArray(a.rot)}))&&
+e.push(p),(k=d(m+".scale",k,"scl",THREE.VectorKeyframeTrack,function(a){return(new THREE.Vector3).fromArray(a.scl)}))&&e.push(k)}return 0===e.length?null:new THREE.AnimationClip(g,f,e)};THREE.AnimationMixer=function(a){this.root=a;this.time=0;this.timeScale=1;this.actions=[];this.propertyBindingMap={}};
+THREE.AnimationMixer.prototype={constructor:THREE.AnimationMixer,addAction:function(a){this.actions.push(a);a.init(this.time);a.mixer=this;for(var b=a.clip.tracks,c=a.localRoot||this.root,d=0;d<b.length;d++){var e=b[d],g=c.uuid+"-"+e.name,f=this.propertyBindingMap[g];void 0===f&&(f=new THREE.PropertyBinding(c,e.name),this.propertyBindingMap[g]=f);a.propertyBindings.push(f);f.referenceCount+=1}},removeAllActions:function(){for(var a=0;a<this.actions.length;a++)this.actions[a].mixer=null;for(var b in this.propertyBindingMap)this.propertyBindingMap[b].unbind();
+this.actions=[];this.propertyBindingMap={};return this},removeAction:function(a){var b=this.actions.indexOf(a);-1!==b&&(this.actions.splice(b,1),a.mixer=null);b=a.localRoot||this.root;a=a.clip.tracks;for(var c=0;c<a.length;c++){var d=b.uuid+"-"+a[c].name,e=this.propertyBindingMap[d];e.referenceCount-=1;0>=e.referenceCount&&(e.unbind(),delete this.propertyBindingMap[d])}return this},findActionByName:function(a){for(var b=0;b<this.actions.length;b++)if(this.actions[b].name===a)return this.actions[b];
+return null},play:function(a,b){a.startTime=this.time;this.addAction(a);return this},fadeOut:function(a,b){var c=[];c.push({time:this.time,value:1});c.push({time:this.time+b,value:0});a.weight=new THREE.NumberKeyframeTrack("weight",c);return this},fadeIn:function(a,b){var c=[];c.push({time:this.time,value:0});c.push({time:this.time+b,value:1});a.weight=new THREE.NumberKeyframeTrack("weight",c);return this},warp:function(a,b,c,d){var e=[];e.push({time:this.time,value:b});e.push({time:this.time+d,value:c});
+a.timeScale=new THREE.NumberKeyframeTrack("timeScale",e);return this},crossFade:function(a,b,c,d){this.fadeOut(a,c);this.fadeIn(b,c);if(d){d=a.clip.duration/b.clip.duration;var e=1/d;this.warp(a,1,d,c);this.warp(b,e,1,c)}return this},update:function(a){a*=this.timeScale;this.time+=a;for(var b=0;b<this.actions.length;b++){var c=this.actions[b],d=c.getWeightAt(this.time),e=c.getTimeScaleAt(this.time),e=c.update(a*e);if(!(0>=c.weight)&&c.enabled)for(var g=0;g<e.length;g++)c.propertyBindings[g].accumulate(e[g],
+d)}for(var f in this.propertyBindingMap)this.propertyBindingMap[f].apply();return this}};THREE.EventDispatcher.prototype.apply(THREE.AnimationMixer.prototype);
+THREE.AnimationUtils={getEqualsFunc:function(a){return a.equals?function(a,c){return a.equals(c)}:function(a,c){return a===c}},clone:function(a){if("object"===typeof a){if(a.clone)return a.clone();console.error("can not figure out how to copy exemplarValue",a)}return a},lerp:function(a,b,c,d){return THREE.AnimationUtils.getLerpFunc(a,d)(a,b,c)},lerp_object:function(a,b,c){return a.lerp(b,c)},slerp_object:function(a,b,c){return a.slerp(b,c)},lerp_number:function(a,b,c){return a*(1-c)+b*c},lerp_boolean:function(a,
+b,c){return.5>c?a:b},lerp_boolean_immediate:function(a,b,c){return a},lerp_string:function(a,b,c){return.5>c?a:b},lerp_string_immediate:function(a,b,c){return a},getLerpFunc:function(a,b){if(void 0===a||null===a)throw Error("examplarValue is null");switch(typeof a){case "object":if(a.lerp)return THREE.AnimationUtils.lerp_object;if(a.slerp)return THREE.AnimationUtils.slerp_object;break;case "number":return THREE.AnimationUtils.lerp_number;case "boolean":return b?THREE.AnimationUtils.lerp_boolean:THREE.AnimationUtils.lerp_boolean_immediate;
+case "string":return b?THREE.AnimationUtils.lerp_string:THREE.AnimationUtils.lerp_string_immediate}}};THREE.KeyframeTrack=function(a,b){if(void 0===a)throw Error("track name is undefined");if(void 0===b||0===b.length)throw Error("no keys in track named "+a);this.name=a;this.keys=b;this.lastIndex=0;this.validate();this.optimize()};
+THREE.KeyframeTrack.prototype={constructor:THREE.KeyframeTrack,getAt:function(a){for(;this.lastIndex<this.keys.length&&a>=this.keys[this.lastIndex].time;)this.lastIndex++;for(;0<this.lastIndex&&a<this.keys[this.lastIndex-1].time;)this.lastIndex--;if(this.lastIndex>=this.keys.length)return this.setResult(this.keys[this.keys.length-1].value),this.result;if(0===this.lastIndex)return this.setResult(this.keys[0].value),this.result;var b=this.keys[this.lastIndex-1];this.setResult(b.value);if(b.constantToNext)return this.result;
+var c=this.keys[this.lastIndex];return this.result=this.lerpValues(this.result,c.value,(a-b.time)/(c.time-b.time))},shift:function(a){if(0!==a)for(var b=0;b<this.keys.length;b++)this.keys[b].time+=a;return this},scale:function(a){if(1!==a)for(var b=0;b<this.keys.length;b++)this.keys[b].time*=a;return this},trim:function(a,b){for(var c=0,d=1;d<this.keys.length;d++)this.keys[d]<=a&&c++;for(var e=0,d=this.keys.length-2;0<d;d++)if(this.keys[d]>=b)e++;else break;0<c+e&&(this.keys=this.keys.splice(c,this.keys.length-
+e-c));return this},validate:function(){var a=null;if(0===this.keys.length)console.error("  track is empty, no keys",this);else{for(var b=0;b<this.keys.length;b++){var c=this.keys[b];if(!c){console.error("  key is null in track",this,b);return}if("number"!==typeof c.time||isNaN(c.time)){console.error("  key.time is not a valid number",this,b,c);return}if(void 0===c.value||null===c.value){console.error("  key.value is null in track",this,b,c);return}if(a&&a.time>c.time){console.error("  key.time is less than previous key time, out of order keys",
+this,b,c,a);return}a=c}return this}},optimize:function(){var a=[],b=this.keys[0];a.push(b);THREE.AnimationUtils.getEqualsFunc(b.value);for(var c=1;c<this.keys.length-1;c++){var d=this.keys[c],e=this.keys[c+1];b.time===d.time||this.compareValues(b.value,d.value)&&this.compareValues(d.value,e.value)||(b.constantToNext=this.compareValues(b.value,d.value),a.push(d),b=d)}a.push(this.keys[this.keys.length-1]);this.keys=a;return this}};THREE.KeyframeTrack.keyComparer=function(a,b){return a.time-b.time};
+THREE.KeyframeTrack.parse=function(a){if(void 0===a.type)throw Error("track type undefined, can not parse");return THREE.KeyframeTrack.GetTrackTypeForTypeName(a.type).parse(a)};
+THREE.KeyframeTrack.GetTrackTypeForTypeName=function(a){switch(a.toLowerCase()){case "vector":case "vector2":case "vector3":case "vector4":return THREE.VectorKeyframeTrack;case "quaternion":return THREE.QuaternionKeyframeTrack;case "integer":case "scalar":case "double":case "float":case "number":return THREE.NumberKeyframeTrack;case "bool":case "boolean":return THREE.BooleanKeyframeTrack;case "string":return THREE.StringKeyframeTrack}throw Error("Unsupported typeName: "+a);};
+THREE.PropertyBinding=function(a,b){this.rootNode=a;this.trackName=b;this.referenceCount=0;this.originalValue=null;var c=THREE.PropertyBinding.parseTrackName(b);this.directoryName=c.directoryName;this.nodeName=c.nodeName;this.objectName=c.objectName;this.objectIndex=c.objectIndex;this.propertyName=c.propertyName;this.propertyIndex=c.propertyIndex;this.node=THREE.PropertyBinding.findNode(a,this.nodeName)||a;this.cumulativeValue=null;this.cumulativeWeight=0};
+THREE.PropertyBinding.prototype={constructor:THREE.PropertyBinding,reset:function(){this.cumulativeValue=null;this.cumulativeWeight=0},accumulate:function(a,b){this.isBound||this.bind();0===this.cumulativeWeight?0<b&&(null===this.cumulativeValue&&(this.cumulativeValue=THREE.AnimationUtils.clone(a)),this.cumulativeWeight=b):(this.cumulativeValue=this.lerpValue(this.cumulativeValue,a,b/(this.cumulativeWeight+b)),this.cumulativeWeight+=b)},unbind:function(){this.isBound&&(this.setValue(this.originalValue),
+this.triggerDirty=this.equalsValue=this.lerpValue=this.getValue=this.setValue=null,this.isBound=!1)},bind:function(){if(!this.isBound){var a=this.node;if(a){if(this.objectName){if("materials"===this.objectName){if(!a.material){console.error("  can not bind to material as node does not have a material",this);return}if(!a.material.materials){console.error("  can not bind to material.materials as node.material does not have a materials array",this);return}a=a.material.materials}else if("bones"===this.objectName){if(!a.skeleton){console.error("  can not bind to bones as node does not have a skeleton",
+this);return}for(var a=a.skeleton.bones,b=0;b<a.length;b++)if(a[b].name===this.objectIndex){this.objectIndex=b;break}}else{if(void 0===a[this.objectName]){console.error("  can not bind to objectName of node, undefined",this);return}a=a[this.objectName]}if(void 0!==this.objectIndex){if(void 0===a[this.objectIndex]){console.error("  trying to bind to objectIndex of objectName, but is undefined:",this,a);return}a=a[this.objectIndex]}}var c=a[this.propertyName];if(c){if(void 0!==this.propertyIndex){if("morphTargetInfluences"===
+this.propertyName)for(a.geometry||console.error("  can not bind to morphTargetInfluences becasuse node does not have a geometry",this),a.geometry.morphTargets||console.error("  can not bind to morphTargetInfluences becasuse node does not have a geometry.morphTargets",this),b=0;b<this.node.geometry.morphTargets.length;b++)if(a.geometry.morphTargets[b].name===this.propertyIndex){this.propertyIndex=b;break}this.setValue=function(a){return this.equalsValue(c[this.propertyIndex],a)?!1:(c[this.propertyIndex]=
+a,!0)};this.getValue=function(){return c[this.propertyIndex]}}else c.copy?(this.setValue=function(a){return this.equalsValue(c,a)?!1:(c.copy(a),!0)},this.getValue=function(){return c}):(this.setValue=function(b){return this.equalsValue(a[this.propertyName],b)?!1:(a[this.propertyName]=b,!0)},this.getValue=function(){return a[this.propertyName]});void 0!==a.needsUpdate?this.triggerDirty=function(){this.node.needsUpdate=!0}:void 0!==a.matrixWorldNeedsUpdate&&(this.triggerDirty=function(){a.matrixWorldNeedsUpdate=
+!0});this.originalValue=this.getValue();this.equalsValue=THREE.AnimationUtils.getEqualsFunc(this.originalValue);this.lerpValue=THREE.AnimationUtils.getLerpFunc(this.originalValue,!0);this.isBound=!0}else console.error("  trying to update property for track: "+this.nodeName+"."+this.propertyName+" but it wasn't found.",a)}else console.error("  trying to update node for track: "+this.trackName+" but it wasn't found.")}},apply:function(){this.isBound||this.bind();if(0<this.cumulativeWeight){if(1>this.cumulativeWeight){var a=
+1-this.cumulativeWeight;this.cumulativeValue=this.lerpValue(this.cumulativeValue,this.originalValue,a/(this.cumulativeWeight+a))}this.setValue(this.cumulativeValue)&&this.triggerDirty&&this.triggerDirty();this.cumulativeValue=null;this.cumulativeWeight=0}}};
+THREE.PropertyBinding.parseTrackName=function(a){var b=/^(([\w]+\/)*)([\w-\d]+)?(\.([\w]+)(\[([\w\d\[\]\_. ]+)\])?)?(\.([\w.]+)(\[([\w\d\[\]\_. ]+)\])?)$/,c=b.exec(a);if(!c)throw Error("cannot parse trackName at all: "+a);c.index===b.lastIndex&&b.lastIndex++;b={directoryName:c[1],nodeName:c[3],objectName:c[5],objectIndex:c[7],propertyName:c[9],propertyIndex:c[11]};if(null===b.propertyName||0===b.propertyName.length)throw Error("can not parse propertyName from trackName: "+a);return b};
+THREE.PropertyBinding.findNode=function(a,b){function c(a){for(var c=0;c<a.bones.length;c++){var d=a.bones[c];if(d.name===b)return d}return null}function d(a){for(var c=0;c<a.length;c++){var e=a[c];if(e.name===b||e.uuid===b||(e=d(e.children)))return e}return null}if(!b||""===b||"root"===b||"."===b||-1===b||b===a.name||b===a.uuid)return a;if(a.skeleton){var e=c(a.skeleton);if(e)return e}return a.children&&(e=d(a.children))?e:null};
+THREE.VectorKeyframeTrack=function(a,b){THREE.KeyframeTrack.call(this,a,b);this.result=this.keys[0].value.clone()};THREE.VectorKeyframeTrack.prototype=Object.create(THREE.KeyframeTrack.prototype);THREE.VectorKeyframeTrack.prototype.constructor=THREE.VectorKeyframeTrack;THREE.VectorKeyframeTrack.prototype.setResult=function(a){this.result.copy(a)};THREE.VectorKeyframeTrack.prototype.lerpValues=function(a,b,c){return a.lerp(b,c)};THREE.VectorKeyframeTrack.prototype.compareValues=function(a,b){return a.equals(b)};
+THREE.VectorKeyframeTrack.prototype.clone=function(){for(var a=[],b=0;b<this.keys.length;b++){var c=this.keys[b];a.push({time:c.time,value:c.value.clone()})}return new THREE.VectorKeyframeTrack(this.name,a)};THREE.VectorKeyframeTrack.parse=function(a){for(var b=THREE["Vector"+a.keys[0].value.length],c=[],d=0;d<a.keys.length;d++){var e=a.keys[d];c.push({value:(new b).fromArray(e.value),time:e.time})}return new THREE.VectorKeyframeTrack(a.name,c)};
+THREE.QuaternionKeyframeTrack=function(a,b){THREE.KeyframeTrack.call(this,a,b);this.result=this.keys[0].value.clone()};THREE.QuaternionKeyframeTrack.prototype=Object.create(THREE.KeyframeTrack.prototype);THREE.QuaternionKeyframeTrack.prototype.constructor=THREE.QuaternionKeyframeTrack;THREE.QuaternionKeyframeTrack.prototype.setResult=function(a){this.result.copy(a)};THREE.QuaternionKeyframeTrack.prototype.lerpValues=function(a,b,c){return a.slerp(b,c)};
+THREE.QuaternionKeyframeTrack.prototype.compareValues=function(a,b){return a.equals(b)};THREE.QuaternionKeyframeTrack.prototype.multiply=function(a){for(var b=0;b<this.keys.length;b++)this.keys[b].value.multiply(a);return this};THREE.QuaternionKeyframeTrack.prototype.clone=function(){for(var a=[],b=0;b<this.keys.length;b++){var c=this.keys[b];a.push({time:c.time,value:c.value.clone()})}return new THREE.QuaternionKeyframeTrack(this.name,a)};
+THREE.QuaternionKeyframeTrack.parse=function(a){for(var b=[],c=0;c<a.keys.length;c++){var d=a.keys[c];b.push({value:(new THREE.Quaternion).fromArray(d.value),time:d.time})}return new THREE.QuaternionKeyframeTrack(a.name,b)};THREE.StringKeyframeTrack=function(a,b){THREE.KeyframeTrack.call(this,a,b);this.result=this.keys[0].value};THREE.StringKeyframeTrack.prototype=Object.create(THREE.KeyframeTrack.prototype);THREE.StringKeyframeTrack.prototype.constructor=THREE.StringKeyframeTrack;
+THREE.StringKeyframeTrack.prototype.setResult=function(a){this.result=a};THREE.StringKeyframeTrack.prototype.lerpValues=function(a,b,c){return 1>c?a:b};THREE.StringKeyframeTrack.prototype.compareValues=function(a,b){return a===b};THREE.StringKeyframeTrack.prototype.clone=function(){for(var a=[],b=0;b<this.keys.length;b++){var c=this.keys[b];a.push({time:c.time,value:c.value})}return new THREE.StringKeyframeTrack(this.name,a)};
+THREE.StringKeyframeTrack.parse=function(a){return new THREE.StringKeyframeTrack(a.name,a.keys)};THREE.BooleanKeyframeTrack=function(a,b){THREE.KeyframeTrack.call(this,a,b);this.result=this.keys[0].value};THREE.BooleanKeyframeTrack.prototype=Object.create(THREE.KeyframeTrack.prototype);THREE.BooleanKeyframeTrack.prototype.constructor=THREE.BooleanKeyframeTrack;THREE.BooleanKeyframeTrack.prototype.setResult=function(a){this.result=a};
+THREE.BooleanKeyframeTrack.prototype.lerpValues=function(a,b,c){return 1>c?a:b};THREE.BooleanKeyframeTrack.prototype.compareValues=function(a,b){return a===b};THREE.BooleanKeyframeTrack.prototype.clone=function(){for(var a=[],b=0;b<this.keys.length;b++){var c=this.keys[b];a.push({time:c.time,value:c.value})}return new THREE.BooleanKeyframeTrack(this.name,a)};THREE.BooleanKeyframeTrack.parse=function(a){return new THREE.BooleanKeyframeTrack(a.name,a.keys)};
+THREE.NumberKeyframeTrack=function(a,b){THREE.KeyframeTrack.call(this,a,b);this.result=this.keys[0].value};THREE.NumberKeyframeTrack.prototype=Object.create(THREE.KeyframeTrack.prototype);THREE.NumberKeyframeTrack.prototype.constructor=THREE.NumberKeyframeTrack;THREE.NumberKeyframeTrack.prototype.setResult=function(a){this.result=a};THREE.NumberKeyframeTrack.prototype.lerpValues=function(a,b,c){return a*(1-c)+b*c};THREE.NumberKeyframeTrack.prototype.compareValues=function(a,b){return a===b};
+THREE.NumberKeyframeTrack.prototype.clone=function(){for(var a=[],b=0;b<this.keys.length;b++){var c=this.keys[b];a.push({time:c.time,value:c.value})}return new THREE.NumberKeyframeTrack(this.name,a)};THREE.NumberKeyframeTrack.parse=function(a){return new THREE.NumberKeyframeTrack(a.name,a.keys)};THREE.Camera=function(){THREE.Object3D.call(this);this.type="Camera";this.matrixWorldInverse=new THREE.Matrix4;this.projectionMatrix=new THREE.Matrix4};THREE.Camera.prototype=Object.create(THREE.Object3D.prototype);
+THREE.Camera.prototype.constructor=THREE.Camera;THREE.Camera.prototype.getWorldDirection=function(){var a=new THREE.Quaternion;return function(b){b=b||new THREE.Vector3;this.getWorldQuaternion(a);return b.set(0,0,-1).applyQuaternion(a)}}();THREE.Camera.prototype.lookAt=function(){var a=new THREE.Matrix4;return function(b){a.lookAt(this.position,b,this.up);this.quaternion.setFromRotationMatrix(a)}}();THREE.Camera.prototype.clone=function(){return(new this.constructor).copy(this)};
+THREE.Camera.prototype.copy=function(a){THREE.Object3D.prototype.copy.call(this,a);this.matrixWorldInverse.copy(a.matrixWorldInverse);this.projectionMatrix.copy(a.projectionMatrix);return this};
+THREE.CubeCamera=function(a,b,c){THREE.Object3D.call(this);this.type="CubeCamera";var d=new THREE.PerspectiveCamera(90,1,a,b);d.up.set(0,-1,0);d.lookAt(new THREE.Vector3(1,0,0));this.add(d);var e=new THREE.PerspectiveCamera(90,1,a,b);e.up.set(0,-1,0);e.lookAt(new THREE.Vector3(-1,0,0));this.add(e);var g=new THREE.PerspectiveCamera(90,1,a,b);g.up.set(0,0,1);g.lookAt(new THREE.Vector3(0,1,0));this.add(g);var f=new THREE.PerspectiveCamera(90,1,a,b);f.up.set(0,0,-1);f.lookAt(new THREE.Vector3(0,-1,0));
+this.add(f);var h=new THREE.PerspectiveCamera(90,1,a,b);h.up.set(0,-1,0);h.lookAt(new THREE.Vector3(0,0,1));this.add(h);var l=new THREE.PerspectiveCamera(90,1,a,b);l.up.set(0,-1,0);l.lookAt(new THREE.Vector3(0,0,-1));this.add(l);this.renderTarget=new THREE.WebGLRenderTargetCube(c,c,{format:THREE.RGBFormat,magFilter:THREE.LinearFilter,minFilter:THREE.LinearFilter});this.updateCubeMap=function(a,b){null===this.parent&&this.updateMatrixWorld();var c=this.renderTarget,n=c.texture.generateMipmaps;c.texture.generateMipmaps=
+!1;c.activeCubeFace=0;a.render(b,d,c);c.activeCubeFace=1;a.render(b,e,c);c.activeCubeFace=2;a.render(b,g,c);c.activeCubeFace=3;a.render(b,f,c);c.activeCubeFace=4;a.render(b,h,c);c.texture.generateMipmaps=n;c.activeCubeFace=5;a.render(b,l,c);a.setRenderTarget(null)}};THREE.CubeCamera.prototype=Object.create(THREE.Object3D.prototype);THREE.CubeCamera.prototype.constructor=THREE.CubeCamera;
+THREE.OrthographicCamera=function(a,b,c,d,e,g){THREE.Camera.call(this);this.type="OrthographicCamera";this.zoom=1;this.left=a;this.right=b;this.top=c;this.bottom=d;this.near=void 0!==e?e:.1;this.far=void 0!==g?g:2E3;this.updateProjectionMatrix()};THREE.OrthographicCamera.prototype=Object.create(THREE.Camera.prototype);THREE.OrthographicCamera.prototype.constructor=THREE.OrthographicCamera;
+THREE.OrthographicCamera.prototype.updateProjectionMatrix=function(){var a=(this.right-this.left)/(2*this.zoom),b=(this.top-this.bottom)/(2*this.zoom),c=(this.right+this.left)/2,d=(this.top+this.bottom)/2;this.projectionMatrix.makeOrthographic(c-a,c+a,d+b,d-b,this.near,this.far)};THREE.OrthographicCamera.prototype.copy=function(a){THREE.Camera.prototype.copy.call(this,a);this.left=a.left;this.right=a.right;this.top=a.top;this.bottom=a.bottom;this.near=a.near;this.far=a.far;this.zoom=a.zoom;return this};
+THREE.OrthographicCamera.prototype.toJSON=function(a){a=THREE.Object3D.prototype.toJSON.call(this,a);a.object.zoom=this.zoom;a.object.left=this.left;a.object.right=this.right;a.object.top=this.top;a.object.bottom=this.bottom;a.object.near=this.near;a.object.far=this.far;return a};THREE.PerspectiveCamera=function(a,b,c,d){THREE.Camera.call(this);this.type="PerspectiveCamera";this.zoom=1;this.fov=void 0!==a?a:50;this.aspect=void 0!==b?b:1;this.near=void 0!==c?c:.1;this.far=void 0!==d?d:2E3;this.updateProjectionMatrix()};
+THREE.PerspectiveCamera.prototype=Object.create(THREE.Camera.prototype);THREE.PerspectiveCamera.prototype.constructor=THREE.PerspectiveCamera;THREE.PerspectiveCamera.prototype.setLens=function(a,b){void 0===b&&(b=24);this.fov=2*THREE.Math.radToDeg(Math.atan(b/(2*a)));this.updateProjectionMatrix()};THREE.PerspectiveCamera.prototype.setViewOffset=function(a,b,c,d,e,g){this.fullWidth=a;this.fullHeight=b;this.x=c;this.y=d;this.width=e;this.height=g;this.updateProjectionMatrix()};
+THREE.PerspectiveCamera.prototype.updateProjectionMatrix=function(){var a=THREE.Math.radToDeg(2*Math.atan(Math.tan(.5*THREE.Math.degToRad(this.fov))/this.zoom));if(this.fullWidth){var b=this.fullWidth/this.fullHeight,a=Math.tan(THREE.Math.degToRad(.5*a))*this.near,c=-a,d=b*c,b=Math.abs(b*a-d),c=Math.abs(a-c);this.projectionMatrix.makeFrustum(d+this.x*b/this.fullWidth,d+(this.x+this.width)*b/this.fullWidth,a-(this.y+this.height)*c/this.fullHeight,a-this.y*c/this.fullHeight,this.near,this.far)}else this.projectionMatrix.makePerspective(a,
+this.aspect,this.near,this.far)};THREE.PerspectiveCamera.prototype.copy=function(a){THREE.Camera.prototype.copy.call(this,a);this.fov=a.fov;this.aspect=a.aspect;this.near=a.near;this.far=a.far;this.zoom=a.zoom;return this};THREE.PerspectiveCamera.prototype.toJSON=function(a){a=THREE.Object3D.prototype.toJSON.call(this,a);a.object.zoom=this.zoom;a.object.fov=this.fov;a.object.aspect=this.aspect;a.object.near=this.near;a.object.far=this.far;return a};
+THREE.Light=function(a){THREE.Object3D.call(this);this.type="Light";this.color=new THREE.Color(a);this.receiveShadow=void 0};THREE.Light.prototype=Object.create(THREE.Object3D.prototype);THREE.Light.prototype.constructor=THREE.Light;
+Object.defineProperties(THREE.Light.prototype,{onlyShadow:{set:function(a){console.warn("THREE.Light: .onlyShadow has been removed.")}},shadowCameraFov:{set:function(a){this.shadow.camera.fov=a}},shadowCameraLeft:{set:function(a){this.shadow.camera.left=a}},shadowCameraRight:{set:function(a){this.shadow.camera.right=a}},shadowCameraTop:{set:function(a){this.shadow.camera.top=a}},shadowCameraBottom:{set:function(a){this.shadow.camera.bottom=a}},shadowCameraNear:{set:function(a){this.shadow.camera.near=
+a}},shadowCameraFar:{set:function(a){this.shadow.camera.far=a}},shadowCameraVisible:{set:function(a){console.warn("THREE.Light: .shadowCameraVisible has been removed. Use new THREE.CameraHelper( light.shadow ) instead.")}},shadowBias:{set:function(a){this.shadow.bias=a}},shadowDarkness:{set:function(a){this.shadow.darkness=a}},shadowMapWidth:{set:function(a){this.shadow.mapSize.width=a}},shadowMapHeight:{set:function(a){this.shadow.mapSize.height=a}}});
+THREE.Light.prototype.copy=function(a){THREE.Object3D.prototype.copy.call(this,a);this.color.copy(a.color);return this};
+THREE.Light.prototype.toJSON=function(a){a=THREE.Object3D.prototype.toJSON.call(this,a);a.object.color=this.color.getHex();void 0!==this.groundColor&&(a.object.groundColor=this.groundColor.getHex());void 0!==this.intensity&&(a.object.intensity=this.intensity);void 0!==this.distance&&(a.object.distance=this.distance);void 0!==this.angle&&(a.object.angle=this.angle);void 0!==this.decay&&(a.object.decay=this.decay);void 0!==this.exponent&&(a.object.exponent=this.exponent);return a};
+THREE.LightShadow=function(a){this.camera=a;this.bias=0;this.darkness=1;this.mapSize=new THREE.Vector2(512,512);this.matrix=this.map=null};THREE.LightShadow.prototype={constructor:THREE.LightShadow,copy:function(a){this.camera=a.camera.clone();this.bias=a.bias;this.darkness=a.darkness;this.mapSize.copy(a.mapSize)},clone:function(){return(new this.constructor).copy(this)}};THREE.AmbientLight=function(a){THREE.Light.call(this,a);this.type="AmbientLight";this.castShadow=void 0};
+THREE.AmbientLight.prototype=Object.create(THREE.Light.prototype);THREE.AmbientLight.prototype.constructor=THREE.AmbientLight;THREE.DirectionalLight=function(a,b){THREE.Light.call(this,a);this.type="DirectionalLight";this.position.set(0,1,0);this.updateMatrix();this.target=new THREE.Object3D;this.intensity=void 0!==b?b:1;this.shadow=new THREE.LightShadow(new THREE.OrthographicCamera(-500,500,500,-500,50,5E3))};THREE.DirectionalLight.prototype=Object.create(THREE.Light.prototype);
+THREE.DirectionalLight.prototype.constructor=THREE.DirectionalLight;THREE.DirectionalLight.prototype.copy=function(a){THREE.Light.prototype.copy.call(this,a);this.intensity=a.intensity;this.target=a.target.clone();this.shadow=a.shadow.clone();return this};THREE.HemisphereLight=function(a,b,c){THREE.Light.call(this,a);this.type="HemisphereLight";this.castShadow=void 0;this.position.set(0,1,0);this.updateMatrix();this.groundColor=new THREE.Color(b);this.intensity=void 0!==c?c:1};
+THREE.HemisphereLight.prototype=Object.create(THREE.Light.prototype);THREE.HemisphereLight.prototype.constructor=THREE.HemisphereLight;THREE.HemisphereLight.prototype.copy=function(a){THREE.Light.prototype.copy.call(this,a);this.groundColor.copy(a.groundColor);this.intensity=a.intensity;return this};
+THREE.PointLight=function(a,b,c,d){THREE.Light.call(this,a);this.type="PointLight";this.intensity=void 0!==b?b:1;this.distance=void 0!==c?c:0;this.decay=void 0!==d?d:1;this.shadow=new THREE.LightShadow(new THREE.PerspectiveCamera(90,1,1,500))};THREE.PointLight.prototype=Object.create(THREE.Light.prototype);THREE.PointLight.prototype.constructor=THREE.PointLight;
+THREE.PointLight.prototype.copy=function(a){THREE.Light.prototype.copy.call(this,a);this.intensity=a.intensity;this.distance=a.distance;this.decay=a.decay;this.shadow=a.shadow.clone();return this};
+THREE.SpotLight=function(a,b,c,d,e,g){THREE.Light.call(this,a);this.type="SpotLight";this.position.set(0,1,0);this.updateMatrix();this.target=new THREE.Object3D;this.intensity=void 0!==b?b:1;this.distance=void 0!==c?c:0;this.angle=void 0!==d?d:Math.PI/3;this.exponent=void 0!==e?e:10;this.decay=void 0!==g?g:1;this.shadow=new THREE.LightShadow(new THREE.PerspectiveCamera(50,1,50,5E3))};THREE.SpotLight.prototype=Object.create(THREE.Light.prototype);THREE.SpotLight.prototype.constructor=THREE.SpotLight;
+THREE.SpotLight.prototype.copy=function(a){THREE.Light.prototype.copy.call(this,a);this.intensity=a.intensity;this.distance=a.distance;this.angle=a.angle;this.exponent=a.exponent;this.decay=a.decay;this.target=a.target.clone();this.shadow=a.shadow.clone();return this};THREE.Cache={enabled:!1,files:{},add:function(a,b){!1!==this.enabled&&(this.files[a]=b)},get:function(a){if(!1!==this.enabled)return this.files[a]},remove:function(a){delete this.files[a]},clear:function(){this.files={}}};
+THREE.Loader=function(){this.onLoadStart=function(){};this.onLoadProgress=function(){};this.onLoadComplete=function(){}};
+THREE.Loader.prototype={constructor:THREE.Loader,crossOrigin:void 0,extractUrlBase:function(a){a=a.split("/");if(1===a.length)return"./";a.pop();return a.join("/")+"/"},initMaterials:function(a,b,c){for(var d=[],e=0;e<a.length;++e)d[e]=this.createMaterial(a[e],b,c);return d},createMaterial:function(){var a,b,c;return function(d,e,g){function f(a,c,d,f,l){a=e+a;var k=THREE.Loader.Handlers.get(a);null!==k?a=k.load(a):(b.setCrossOrigin(g),a=b.load(a));void 0!==c&&(a.repeat.fromArray(c),1!==c[0]&&(a.wrapS=
+THREE.RepeatWrapping),1!==c[1]&&(a.wrapT=THREE.RepeatWrapping));void 0!==d&&a.offset.fromArray(d);void 0!==f&&("repeat"===f[0]&&(a.wrapS=THREE.RepeatWrapping),"mirror"===f[0]&&(a.wrapS=THREE.MirroredRepeatWrapping),"repeat"===f[1]&&(a.wrapT=THREE.RepeatWrapping),"mirror"===f[1]&&(a.wrapT=THREE.MirroredRepeatWrapping));void 0!==l&&(a.anisotropy=l);c=THREE.Math.generateUUID();h[c]=a;return c}void 0===a&&(a=new THREE.Color);void 0===b&&(b=new THREE.TextureLoader);void 0===c&&(c=new THREE.MaterialLoader);
+var h={},l={uuid:THREE.Math.generateUUID(),type:"MeshLambertMaterial"},k;for(k in d){var m=d[k];switch(k){case "DbgColor":l.color=m;break;case "DbgIndex":case "opticalDensity":case "illumination":break;case "DbgName":l.name=m;break;case "blending":l.blending=THREE[m];break;case "colorDiffuse":l.color=a.fromArray(m).getHex();break;case "colorSpecular":l.specular=a.fromArray(m).getHex();break;case "colorEmissive":l.emissive=a.fromArray(m).getHex();break;case "specularCoef":l.shininess=m;break;case "shading":"basic"===
+m.toLowerCase()&&(l.type="MeshBasicMaterial");"phong"===m.toLowerCase()&&(l.type="MeshPhongMaterial");break;case "mapDiffuse":l.map=f(m,d.mapDiffuseRepeat,d.mapDiffuseOffset,d.mapDiffuseWrap,d.mapDiffuseAnisotropy);break;case "mapDiffuseRepeat":case "mapDiffuseOffset":case "mapDiffuseWrap":case "mapDiffuseAnisotropy":break;case "mapLight":l.lightMap=f(m,d.mapLightRepeat,d.mapLightOffset,d.mapLightWrap,d.mapLightAnisotropy);break;case "mapLightRepeat":case "mapLightOffset":case "mapLightWrap":case "mapLightAnisotropy":break;
+case "mapAO":l.aoMap=f(m,d.mapAORepeat,d.mapAOOffset,d.mapAOWrap,d.mapAOAnisotropy);break;case "mapAORepeat":case "mapAOOffset":case "mapAOWrap":case "mapAOAnisotropy":break;case "mapBump":l.bumpMap=f(m,d.mapBumpRepeat,d.mapBumpOffset,d.mapBumpWrap,d.mapBumpAnisotropy);break;case "mapBumpScale":l.bumpScale=m;break;case "mapBumpRepeat":case "mapBumpOffset":case "mapBumpWrap":case "mapBumpAnisotropy":break;case "mapNormal":l.normalMap=f(m,d.mapNormalRepeat,d.mapNormalOffset,d.mapNormalWrap,d.mapNormalAnisotropy);
+break;case "mapNormalFactor":l.normalScale=[m,m];break;case "mapNormalRepeat":case "mapNormalOffset":case "mapNormalWrap":case "mapNormalAnisotropy":break;case "mapSpecular":l.specularMap=f(m,d.mapSpecularRepeat,d.mapSpecularOffset,d.mapSpecularWrap,d.mapSpecularAnisotropy);break;case "mapSpecularRepeat":case "mapSpecularOffset":case "mapSpecularWrap":case "mapSpecularAnisotropy":break;case "mapAlpha":l.alphaMap=f(m,d.mapAlphaRepeat,d.mapAlphaOffset,d.mapAlphaWrap,d.mapAlphaAnisotropy);break;case "mapAlphaRepeat":case "mapAlphaOffset":case "mapAlphaWrap":case "mapAlphaAnisotropy":break;
+case "flipSided":l.side=THREE.BackSide;break;case "doubleSided":l.side=THREE.DoubleSide;break;case "transparency":console.warn("THREE.Loader: transparency has been renamed to opacity");l.opacity=m;break;case "opacity":case "transparent":case "depthTest":case "depthWrite":case "transparent":case "visible":case "wireframe":l[k]=m;break;case "vertexColors":!0===m&&(l.vertexColors=THREE.VertexColors);"face"===m&&(l.vertexColors=THREE.FaceColors);break;default:console.error("Loader.createMaterial: Unsupported",
+k,m)}}"MeshPhongMaterial"!==l.type&&delete l.specular;1>l.opacity&&(l.transparent=!0);c.setTextures(h);return c.parse(l)}}()};THREE.Loader.Handlers={handlers:[],add:function(a,b){this.handlers.push(a,b)},get:function(a){for(var b=this.handlers,c=0,d=b.length;c<d;c+=2){var e=b[c+1];if(b[c].test(a))return e}return null}};THREE.XHRLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager};
+THREE.XHRLoader.prototype={constructor:THREE.XHRLoader,load:function(a,b,c,d){var e=this,g=THREE.Cache.get(a);if(void 0!==g)return b&&setTimeout(function(){b(g)},0),g;var f=new XMLHttpRequest;f.open("GET",a,!0);f.addEventListener("load",function(c){c=c.target.response;THREE.Cache.add(a,c);b&&b(c);e.manager.itemEnd(a)},!1);void 0!==c&&f.addEventListener("progress",function(a){c(a)},!1);f.addEventListener("error",function(b){d&&d(b);e.manager.itemError(a)},!1);void 0!==this.crossOrigin&&(f.crossOrigin=
+this.crossOrigin);void 0!==this.responseType&&(f.responseType=this.responseType);void 0!==this.withCredentials&&(f.withCredentials=this.withCredentials);f.send(null);e.manager.itemStart(a);return f},setResponseType:function(a){this.responseType=a},setCrossOrigin:function(a){this.crossOrigin=a},setWithCredentials:function(a){this.withCredentials=a}};THREE.ImageLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager};
+THREE.ImageLoader.prototype={constructor:THREE.ImageLoader,load:function(a,b,c,d){var e=this,g=THREE.Cache.get(a);if(void 0!==g)return e.manager.itemStart(a),b?setTimeout(function(){b(g);e.manager.itemEnd(a)},0):e.manager.itemEnd(a),g;var f=document.createElement("img");f.addEventListener("load",function(c){THREE.Cache.add(a,this);b&&b(this);e.manager.itemEnd(a)},!1);void 0!==c&&f.addEventListener("progress",function(a){c(a)},!1);f.addEventListener("error",function(b){d&&d(b);e.manager.itemError(a)},
+!1);void 0!==this.crossOrigin&&(f.crossOrigin=this.crossOrigin);e.manager.itemStart(a);f.src=a;return f},setCrossOrigin:function(a){this.crossOrigin=a}};THREE.JSONLoader=function(a){"boolean"===typeof a&&(console.warn("THREE.JSONLoader: showStatus parameter has been removed from constructor."),a=void 0);this.manager=void 0!==a?a:THREE.DefaultLoadingManager;this.withCredentials=!1};
+THREE.JSONLoader.prototype={constructor:THREE.JSONLoader,get statusDomElement(){void 0===this._statusDomElement&&(this._statusDomElement=document.createElement("div"));console.warn("THREE.JSONLoader: .statusDomElement has been removed.");return this._statusDomElement},load:function(a,b,c,d){var e=this,g=this.texturePath&&"string"===typeof this.texturePath?this.texturePath:THREE.Loader.prototype.extractUrlBase(a);c=new THREE.XHRLoader(this.manager);c.setCrossOrigin(this.crossOrigin);c.setWithCredentials(this.withCredentials);
+c.load(a,function(c){c=JSON.parse(c);var d=c.metadata;if(void 0!==d){if("object"===d.type){console.error("THREE.JSONLoader: "+a+" should be loaded with THREE.ObjectLoader instead.");return}if("scene"===d.type){console.error("THREE.JSONLoader: "+a+" should be loaded with THREE.SceneLoader instead.");return}}c=e.parse(c,g);b(c.geometry,c.materials)})},setCrossOrigin:function(a){this.crossOrigin=a},setTexturePath:function(a){this.texturePath=a},parse:function(a,b){var c=new THREE.Geometry,d=void 0!==
+a.scale?1/a.scale:1;(function(b){var d,f,h,l,k,m,p,n,q,s,t,v,u,w=a.faces;m=a.vertices;var D=a.normals,x=a.colors,B=0;if(void 0!==a.uvs){for(d=0;d<a.uvs.length;d++)a.uvs[d].length&&B++;for(d=0;d<B;d++)c.faceVertexUvs[d]=[]}l=0;for(k=m.length;l<k;)d=new THREE.Vector3,d.x=m[l++]*b,d.y=m[l++]*b,d.z=m[l++]*b,c.vertices.push(d);l=0;for(k=w.length;l<k;)if(b=w[l++],q=b&1,h=b&2,d=b&8,p=b&16,s=b&32,m=b&64,b&=128,q){q=new THREE.Face3;q.a=w[l];q.b=w[l+1];q.c=w[l+3];t=new THREE.Face3;t.a=w[l+1];t.b=w[l+2];t.c=
+w[l+3];l+=4;h&&(h=w[l++],q.materialIndex=h,t.materialIndex=h);h=c.faces.length;if(d)for(d=0;d<B;d++)for(v=a.uvs[d],c.faceVertexUvs[d][h]=[],c.faceVertexUvs[d][h+1]=[],f=0;4>f;f++)n=w[l++],u=v[2*n],n=v[2*n+1],u=new THREE.Vector2(u,n),2!==f&&c.faceVertexUvs[d][h].push(u),0!==f&&c.faceVertexUvs[d][h+1].push(u);p&&(p=3*w[l++],q.normal.set(D[p++],D[p++],D[p]),t.normal.copy(q.normal));if(s)for(d=0;4>d;d++)p=3*w[l++],s=new THREE.Vector3(D[p++],D[p++],D[p]),2!==d&&q.vertexNormals.push(s),0!==d&&t.vertexNormals.push(s);
+m&&(m=w[l++],m=x[m],q.color.setHex(m),t.color.setHex(m));if(b)for(d=0;4>d;d++)m=w[l++],m=x[m],2!==d&&q.vertexColors.push(new THREE.Color(m)),0!==d&&t.vertexColors.push(new THREE.Color(m));c.faces.push(q);c.faces.push(t)}else{q=new THREE.Face3;q.a=w[l++];q.b=w[l++];q.c=w[l++];h&&(h=w[l++],q.materialIndex=h);h=c.faces.length;if(d)for(d=0;d<B;d++)for(v=a.uvs[d],c.faceVertexUvs[d][h]=[],f=0;3>f;f++)n=w[l++],u=v[2*n],n=v[2*n+1],u=new THREE.Vector2(u,n),c.faceVertexUvs[d][h].push(u);p&&(p=3*w[l++],q.normal.set(D[p++],
+D[p++],D[p]));if(s)for(d=0;3>d;d++)p=3*w[l++],s=new THREE.Vector3(D[p++],D[p++],D[p]),q.vertexNormals.push(s);m&&(m=w[l++],q.color.setHex(x[m]));if(b)for(d=0;3>d;d++)m=w[l++],q.vertexColors.push(new THREE.Color(x[m]));c.faces.push(q)}})(d);(function(){var b=void 0!==a.influencesPerVertex?a.influencesPerVertex:2;if(a.skinWeights)for(var d=0,f=a.skinWeights.length;d<f;d+=b)c.skinWeights.push(new THREE.Vector4(a.skinWeights[d],1<b?a.skinWeights[d+1]:0,2<b?a.skinWeights[d+2]:0,3<b?a.skinWeights[d+3]:
+0));if(a.skinIndices)for(d=0,f=a.skinIndices.length;d<f;d+=b)c.skinIndices.push(new THREE.Vector4(a.skinIndices[d],1<b?a.skinIndices[d+1]:0,2<b?a.skinIndices[d+2]:0,3<b?a.skinIndices[d+3]:0));c.bones=a.bones;c.bones&&0<c.bones.length&&(c.skinWeights.length!==c.skinIndices.length||c.skinIndices.length!==c.vertices.length)&&console.warn("When skinning, number of vertices ("+c.vertices.length+"), skinIndices ("+c.skinIndices.length+"), and skinWeights ("+c.skinWeights.length+") should match.")})();(function(b){if(void 0!==
+a.morphTargets)for(var d=0,f=a.morphTargets.length;d<f;d++){c.morphTargets[d]={};c.morphTargets[d].name=a.morphTargets[d].name;c.morphTargets[d].vertices=[];for(var h=c.morphTargets[d].vertices,l=a.morphTargets[d].vertices,k=0,m=l.length;k<m;k+=3){var p=new THREE.Vector3;p.x=l[k]*b;p.y=l[k+1]*b;p.z=l[k+2]*b;h.push(p)}}if(void 0!==a.morphColors&&0<a.morphColors.length)for(console.warn('THREE.JSONLoader: "morphColors" no longer supported. Using them as face colors.'),b=c.faces,h=a.morphColors[0].colors,
+d=0,f=b.length;d<f;d++)b[d].color.fromArray(h,3*d)})(d);(function(){var b=[],d=[];void 0!==a.animation&&d.push(a.animation);void 0!==a.animations&&(a.animations.length?d=d.concat(a.animations):d.push(a.animations));for(var f=0;f<d.length;f++){var h=THREE.AnimationClip.parseAnimation(d[f],c.bones);h&&b.push(h)}c.morphTargets&&(d=THREE.AnimationClip.CreateClipsFromMorphTargetSequences(c.morphTargets,10),b=b.concat(d));0<b.length&&(c.animations=b)})();c.computeFaceNormals();c.computeBoundingSphere();
+if(void 0===a.materials||0===a.materials.length)return{geometry:c};d=THREE.Loader.prototype.initMaterials(a.materials,b,this.crossOrigin);return{geometry:c,materials:d}}};
+THREE.LoadingManager=function(a,b,c){var d=this,e=!1,g=0,f=0;this.onStart=void 0;this.onLoad=a;this.onProgress=b;this.onError=c;this.itemStart=function(a){f++;if(!1===e&&void 0!==d.onStart)d.onStart(a,g,f);e=!0};this.itemEnd=function(a){g++;if(void 0!==d.onProgress)d.onProgress(a,g,f);if(g===f&&(e=!1,void 0!==d.onLoad))d.onLoad()};this.itemError=function(a){if(void 0!==d.onError)d.onError(a)}};THREE.DefaultLoadingManager=new THREE.LoadingManager;
+THREE.BufferGeometryLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager};
+THREE.BufferGeometryLoader.prototype={constructor:THREE.BufferGeometryLoader,load:function(a,b,c,d){var e=this,g=new THREE.XHRLoader(e.manager);g.setCrossOrigin(this.crossOrigin);g.load(a,function(a){b(e.parse(JSON.parse(a)))},c,d)},setCrossOrigin:function(a){this.crossOrigin=a},parse:function(a){var b=new THREE.BufferGeometry,c=a.data.index;void 0!==c&&(c=new self[c.type](c.array),b.setIndex(new THREE.BufferAttribute(c,1)));var d=a.data.attributes,e;for(e in d){var g=d[e],c=new self[g.type](g.array);
+b.addAttribute(e,new THREE.BufferAttribute(c,g.itemSize))}e=a.data.groups||a.data.drawcalls||a.data.offsets;if(void 0!==e)for(c=0,d=e.length;c!==d;++c)g=e[c],b.addGroup(g.start,g.count);a=a.data.boundingSphere;void 0!==a&&(e=new THREE.Vector3,void 0!==a.center&&e.fromArray(a.center),b.boundingSphere=new THREE.Sphere(e,a.radius));return b}};THREE.MaterialLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager;this.textures={}};
+THREE.MaterialLoader.prototype={constructor:THREE.MaterialLoader,load:function(a,b,c,d){var e=this,g=new THREE.XHRLoader(e.manager);g.setCrossOrigin(this.crossOrigin);g.load(a,function(a){b(e.parse(JSON.parse(a)))},c,d)},setCrossOrigin:function(a){this.crossOrigin=a},setTextures:function(a){this.textures=a},getTexture:function(a){var b=this.textures;void 0===b[a]&&console.warn("THREE.MaterialLoader: Undefined texture",a);return b[a]},parse:function(a){var b=new THREE[a.type];b.uuid=a.uuid;void 0!==
+a.name&&(b.name=a.name);void 0!==a.color&&b.color.setHex(a.color);void 0!==a.emissive&&b.emissive.setHex(a.emissive);void 0!==a.specular&&b.specular.setHex(a.specular);void 0!==a.shininess&&(b.shininess=a.shininess);void 0!==a.uniforms&&(b.uniforms=a.uniforms);void 0!==a.vertexShader&&(b.vertexShader=a.vertexShader);void 0!==a.fragmentShader&&(b.fragmentShader=a.fragmentShader);void 0!==a.vertexColors&&(b.vertexColors=a.vertexColors);void 0!==a.shading&&(b.shading=a.shading);void 0!==a.blending&&
+(b.blending=a.blending);void 0!==a.side&&(b.side=a.side);void 0!==a.opacity&&(b.opacity=a.opacity);void 0!==a.transparent&&(b.transparent=a.transparent);void 0!==a.alphaTest&&(b.alphaTest=a.alphaTest);void 0!==a.depthTest&&(b.depthTest=a.depthTest);void 0!==a.depthWrite&&(b.depthWrite=a.depthWrite);void 0!==a.wireframe&&(b.wireframe=a.wireframe);void 0!==a.wireframeLinewidth&&(b.wireframeLinewidth=a.wireframeLinewidth);void 0!==a.size&&(b.size=a.size);void 0!==a.sizeAttenuation&&(b.sizeAttenuation=
+a.sizeAttenuation);void 0!==a.map&&(b.map=this.getTexture(a.map));void 0!==a.alphaMap&&(b.alphaMap=this.getTexture(a.alphaMap),b.transparent=!0);void 0!==a.bumpMap&&(b.bumpMap=this.getTexture(a.bumpMap));void 0!==a.bumpScale&&(b.bumpScale=a.bumpScale);void 0!==a.normalMap&&(b.normalMap=this.getTexture(a.normalMap));a.normalScale&&(b.normalScale=new THREE.Vector2(a.normalScale,a.normalScale));void 0!==a.displacementMap&&(b.displacementMap=this.getTexture(a.displacementMap));void 0!==a.displacementScale&&
+(b.displacementScale=a.displacementScale);void 0!==a.displacementBias&&(b.displacementBias=a.displacementBias);void 0!==a.specularMap&&(b.specularMap=this.getTexture(a.specularMap));void 0!==a.envMap&&(b.envMap=this.getTexture(a.envMap),b.combine=THREE.MultiplyOperation);a.reflectivity&&(b.reflectivity=a.reflectivity);void 0!==a.lightMap&&(b.lightMap=this.getTexture(a.lightMap));void 0!==a.lightMapIntensity&&(b.lightMapIntensity=a.lightMapIntensity);void 0!==a.aoMap&&(b.aoMap=this.getTexture(a.aoMap));
+void 0!==a.aoMapIntensity&&(b.aoMapIntensity=a.aoMapIntensity);if(void 0!==a.materials)for(var c=0,d=a.materials.length;c<d;c++)b.materials.push(this.parse(a.materials[c]));return b}};THREE.ObjectLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager;this.texturePath=""};
+THREE.ObjectLoader.prototype={constructor:THREE.ObjectLoader,load:function(a,b,c,d){""===this.texturePath&&(this.texturePath=a.substring(0,a.lastIndexOf("/")+1));var e=this,g=new THREE.XHRLoader(e.manager);g.setCrossOrigin(this.crossOrigin);g.load(a,function(a){e.parse(JSON.parse(a),b)},c,d)},setTexturePath:function(a){this.texturePath=a},setCrossOrigin:function(a){this.crossOrigin=a},parse:function(a,b){var c=this.parseGeometries(a.geometries),d=this.parseImages(a.images,function(){void 0!==b&&b(e)}),
+d=this.parseTextures(a.textures,d),d=this.parseMaterials(a.materials,d),e=this.parseObject(a.object,c,d);a.animations&&(e.animations=this.parseAnimations(a.animations));void 0!==a.images&&0!==a.images.length||void 0===b||b(e);return e},parseGeometries:function(a){var b={};if(void 0!==a)for(var c=new THREE.JSONLoader,d=new THREE.BufferGeometryLoader,e=0,g=a.length;e<g;e++){var f,h=a[e];switch(h.type){case "PlaneGeometry":case "PlaneBufferGeometry":f=new THREE[h.type](h.width,h.height,h.widthSegments,
+h.heightSegments);break;case "BoxGeometry":case "CubeGeometry":f=new THREE.BoxGeometry(h.width,h.height,h.depth,h.widthSegments,h.heightSegments,h.depthSegments);break;case "CircleBufferGeometry":f=new THREE.CircleBufferGeometry(h.radius,h.segments,h.thetaStart,h.thetaLength);break;case "CircleGeometry":f=new THREE.CircleGeometry(h.radius,h.segments,h.thetaStart,h.thetaLength);break;case "CylinderGeometry":f=new THREE.CylinderGeometry(h.radiusTop,h.radiusBottom,h.height,h.radialSegments,h.heightSegments,
+h.openEnded,h.thetaStart,h.thetaLength);break;case "SphereGeometry":f=new THREE.SphereGeometry(h.radius,h.widthSegments,h.heightSegments,h.phiStart,h.phiLength,h.thetaStart,h.thetaLength);break;case "SphereBufferGeometry":f=new THREE.SphereBufferGeometry(h.radius,h.widthSegments,h.heightSegments,h.phiStart,h.phiLength,h.thetaStart,h.thetaLength);break;case "DodecahedronGeometry":f=new THREE.DodecahedronGeometry(h.radius,h.detail);break;case "IcosahedronGeometry":f=new THREE.IcosahedronGeometry(h.radius,
+h.detail);break;case "OctahedronGeometry":f=new THREE.OctahedronGeometry(h.radius,h.detail);break;case "TetrahedronGeometry":f=new THREE.TetrahedronGeometry(h.radius,h.detail);break;case "RingGeometry":f=new THREE.RingGeometry(h.innerRadius,h.outerRadius,h.thetaSegments,h.phiSegments,h.thetaStart,h.thetaLength);break;case "TorusGeometry":f=new THREE.TorusGeometry(h.radius,h.tube,h.radialSegments,h.tubularSegments,h.arc);break;case "TorusKnotGeometry":f=new THREE.TorusKnotGeometry(h.radius,h.tube,
+h.radialSegments,h.tubularSegments,h.p,h.q,h.heightScale);break;case "BufferGeometry":f=d.parse(h);break;case "Geometry":f=c.parse(h.data,this.texturePath).geometry;break;default:console.warn('THREE.ObjectLoader: Unsupported geometry type "'+h.type+'"');continue}f.uuid=h.uuid;void 0!==h.name&&(f.name=h.name);b[h.uuid]=f}return b},parseMaterials:function(a,b){var c={};if(void 0!==a){var d=new THREE.MaterialLoader;d.setTextures(b);for(var e=0,g=a.length;e<g;e++){var f=d.parse(a[e]);c[f.uuid]=f}}return c},
+parseAnimations:function(a){for(var b=[],c=0;c<a.length;c++){var d=THREE.AnimationClip.parse(a[c]);b.push(d)}return b},parseImages:function(a,b){function c(a){d.manager.itemStart(a);return f.load(a,function(){d.manager.itemEnd(a)})}var d=this,e={};if(void 0!==a&&0<a.length){var g=new THREE.LoadingManager(b),f=new THREE.ImageLoader(g);f.setCrossOrigin(this.crossOrigin);for(var g=0,h=a.length;g<h;g++){var l=a[g],k=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(l.url)?l.url:d.texturePath+l.url;e[l.uuid]=c(k)}}return e},
+parseTextures:function(a,b){function c(a){if("number"===typeof a)return a;console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",a);return THREE[a]}var d={};if(void 0!==a)for(var e=0,g=a.length;e<g;e++){var f=a[e];void 0===f.image&&console.warn('THREE.ObjectLoader: No "image" specified for',f.uuid);void 0===b[f.image]&&console.warn("THREE.ObjectLoader: Undefined image",f.image);var h=new THREE.Texture(b[f.image]);h.needsUpdate=!0;h.uuid=f.uuid;void 0!==f.name&&(h.name=
+f.name);void 0!==f.mapping&&(h.mapping=c(f.mapping));void 0!==f.offset&&(h.offset=new THREE.Vector2(f.offset[0],f.offset[1]));void 0!==f.repeat&&(h.repeat=new THREE.Vector2(f.repeat[0],f.repeat[1]));void 0!==f.minFilter&&(h.minFilter=c(f.minFilter));void 0!==f.magFilter&&(h.magFilter=c(f.magFilter));void 0!==f.anisotropy&&(h.anisotropy=f.anisotropy);Array.isArray(f.wrap)&&(h.wrapS=c(f.wrap[0]),h.wrapT=c(f.wrap[1]));d[f.uuid]=h}return d},parseObject:function(){var a=new THREE.Matrix4;return function(b,
+c,d){function e(a){void 0===c[a]&&console.warn("THREE.ObjectLoader: Undefined geometry",a);return c[a]}function g(a){if(void 0!==a)return void 0===d[a]&&console.warn("THREE.ObjectLoader: Undefined material",a),d[a]}var f;switch(b.type){case "Scene":f=new THREE.Scene;break;case "PerspectiveCamera":f=new THREE.PerspectiveCamera(b.fov,b.aspect,b.near,b.far);break;case "OrthographicCamera":f=new THREE.OrthographicCamera(b.left,b.right,b.top,b.bottom,b.near,b.far);break;case "AmbientLight":f=new THREE.AmbientLight(b.color);
+break;case "DirectionalLight":f=new THREE.DirectionalLight(b.color,b.intensity);break;case "PointLight":f=new THREE.PointLight(b.color,b.intensity,b.distance,b.decay);break;case "SpotLight":f=new THREE.SpotLight(b.color,b.intensity,b.distance,b.angle,b.exponent,b.decay);break;case "HemisphereLight":f=new THREE.HemisphereLight(b.color,b.groundColor,b.intensity);break;case "Mesh":f=new THREE.Mesh(e(b.geometry),g(b.material));break;case "LOD":f=new THREE.LOD;break;case "Line":f=new THREE.Line(e(b.geometry),
+g(b.material),b.mode);break;case "PointCloud":case "Points":f=new THREE.Points(e(b.geometry),g(b.material));break;case "Sprite":f=new THREE.Sprite(g(b.material));break;case "Group":f=new THREE.Group;break;default:f=new THREE.Object3D}f.uuid=b.uuid;void 0!==b.name&&(f.name=b.name);void 0!==b.matrix?(a.fromArray(b.matrix),a.decompose(f.position,f.quaternion,f.scale)):(void 0!==b.position&&f.position.fromArray(b.position),void 0!==b.rotation&&f.rotation.fromArray(b.rotation),void 0!==b.scale&&f.scale.fromArray(b.scale));
+void 0!==b.castShadow&&(f.castShadow=b.castShadow);void 0!==b.receiveShadow&&(f.receiveShadow=b.receiveShadow);void 0!==b.visible&&(f.visible=b.visible);void 0!==b.userData&&(f.userData=b.userData);if(void 0!==b.children)for(var h in b.children)f.add(this.parseObject(b.children[h],c,d));if("LOD"===b.type){b=b.levels;for(var l=0;l<b.length;l++){var k=b[l];h=f.getObjectByProperty("uuid",k.object);void 0!==h&&f.addLevel(h,k.distance)}}return f}}()};
+THREE.TextureLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager};THREE.TextureLoader.prototype={constructor:THREE.TextureLoader,load:function(a,b,c,d){var e=new THREE.Texture,g=new THREE.ImageLoader(this.manager);g.setCrossOrigin(this.crossOrigin);g.load(a,function(a){e.image=a;e.needsUpdate=!0;void 0!==b&&b(e)},c,d);return e},setCrossOrigin:function(a){this.crossOrigin=a}};THREE.CubeTextureLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager};
+THREE.CubeTextureLoader.prototype={constructor:THREE.CubeTextureLoader,load:function(a,b,c,d){function e(c){f.load(a[c],function(a){g.images[c]=a;h++;6===h&&(g.needsUpdate=!0,b&&b(g))},void 0,d)}var g=new THREE.CubeTexture([]),f=new THREE.ImageLoader;f.setCrossOrigin(this.crossOrigin);var h=0;for(c=0;c<a.length;++c)e(c);return g},setCrossOrigin:function(a){this.crossOrigin=a}};
+THREE.DataTextureLoader=THREE.BinaryTextureLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager;this._parser=null};
+THREE.BinaryTextureLoader.prototype={constructor:THREE.BinaryTextureLoader,load:function(a,b,c,d){var e=this,g=new THREE.DataTexture,f=new THREE.XHRLoader(this.manager);f.setCrossOrigin(this.crossOrigin);f.setResponseType("arraybuffer");f.load(a,function(a){if(a=e._parser(a))void 0!==a.image?g.image=a.image:void 0!==a.data&&(g.image.width=a.width,g.image.height=a.height,g.image.data=a.data),g.wrapS=void 0!==a.wrapS?a.wrapS:THREE.ClampToEdgeWrapping,g.wrapT=void 0!==a.wrapT?a.wrapT:THREE.ClampToEdgeWrapping,
+g.magFilter=void 0!==a.magFilter?a.magFilter:THREE.LinearFilter,g.minFilter=void 0!==a.minFilter?a.minFilter:THREE.LinearMipMapLinearFilter,g.anisotropy=void 0!==a.anisotropy?a.anisotropy:1,void 0!==a.format&&(g.format=a.format),void 0!==a.type&&(g.type=a.type),void 0!==a.mipmaps&&(g.mipmaps=a.mipmaps),1===a.mipmapCount&&(g.minFilter=THREE.LinearFilter),g.needsUpdate=!0,b&&b(g,a)},c,d);return g},setCrossOrigin:function(a){this.crossOrigin=a}};
+THREE.CompressedTextureLoader=function(a){this.manager=void 0!==a?a:THREE.DefaultLoadingManager;this._parser=null};
+THREE.CompressedTextureLoader.prototype={constructor:THREE.CompressedTextureLoader,load:function(a,b,c,d){var e=this,g=[],f=new THREE.CompressedTexture;f.image=g;var h=new THREE.XHRLoader(this.manager);h.setCrossOrigin(this.crossOrigin);h.setResponseType("arraybuffer");if(Array.isArray(a))for(var l=0,k=function(k){h.load(a[k],function(a){a=e._parser(a,!0);g[k]={width:a.width,height:a.height,format:a.format,mipmaps:a.mipmaps};l+=1;6===l&&(1===a.mipmapCount&&(f.minFilter=THREE.LinearFilter),f.format=
+a.format,f.needsUpdate=!0,b&&b(f))},c,d)},m=0,p=a.length;m<p;++m)k(m);else h.load(a,function(a){a=e._parser(a,!0);if(a.isCubemap)for(var c=a.mipmaps.length/a.mipmapCount,d=0;d<c;d++){g[d]={mipmaps:[]};for(var h=0;h<a.mipmapCount;h++)g[d].mipmaps.push(a.mipmaps[d*a.mipmapCount+h]),g[d].format=a.format,g[d].width=a.width,g[d].height=a.height}else f.image.width=a.width,f.image.height=a.height,f.mipmaps=a.mipmaps;1===a.mipmapCount&&(f.minFilter=THREE.LinearFilter);f.format=a.format;f.needsUpdate=!0;b&&
+b(f)},c,d);return f},setCrossOrigin:function(a){this.crossOrigin=a}};
+THREE.Material=function(){Object.defineProperty(this,"id",{value:THREE.MaterialIdCount++});this.uuid=THREE.Math.generateUUID();this.name="";this.type="Material";this.side=THREE.FrontSide;this.opacity=1;this.transparent=!1;this.blending=THREE.NormalBlending;this.blendSrc=THREE.SrcAlphaFactor;this.blendDst=THREE.OneMinusSrcAlphaFactor;this.blendEquation=THREE.AddEquation;this.blendEquationAlpha=this.blendDstAlpha=this.blendSrcAlpha=null;this.depthFunc=THREE.LessEqualDepth;this.colorWrite=this.depthWrite=
+this.depthTest=!0;this.precision=null;this.polygonOffset=!1;this.overdraw=this.alphaTest=this.polygonOffsetUnits=this.polygonOffsetFactor=0;this._needsUpdate=this.visible=!0};
+THREE.Material.prototype={constructor:THREE.Material,get needsUpdate(){return this._needsUpdate},set needsUpdate(a){!0===a&&this.update();this._needsUpdate=a},setValues:function(a){if(void 0!==a)for(var b in a){var c=a[b];if(void 0===c)console.warn("THREE.Material: '"+b+"' parameter is undefined.");else{var d=this[b];void 0===d?console.warn("THREE."+this.type+": '"+b+"' is not a property of this material."):d instanceof THREE.Color?d.set(c):d instanceof THREE.Vector3&&c instanceof THREE.Vector3?d.copy(c):
+this[b]="overdraw"===b?Number(c):c}}},toJSON:function(a){var b={metadata:{version:4.4,type:"Material",generator:"Material.toJSON"}};b.uuid=this.uuid;b.type=this.type;""!==this.name&&(b.name=this.name);this.color instanceof THREE.Color&&(b.color=this.color.getHex());this.emissive instanceof THREE.Color&&(b.emissive=this.emissive.getHex());this.specular instanceof THREE.Color&&(b.specular=this.specular.getHex());void 0!==this.shininess&&(b.shininess=this.shininess);this.map instanceof THREE.Texture&&
+(b.map=this.map.toJSON(a).uuid);this.alphaMap instanceof THREE.Texture&&(b.alphaMap=this.alphaMap.toJSON(a).uuid);this.lightMap instanceof THREE.Texture&&(b.lightMap=this.lightMap.toJSON(a).uuid);this.bumpMap instanceof THREE.Texture&&(b.bumpMap=this.bumpMap.toJSON(a).uuid,b.bumpScale=this.bumpScale);this.normalMap instanceof THREE.Texture&&(b.normalMap=this.normalMap.toJSON(a).uuid,b.normalScale=this.normalScale);this.displacementMap instanceof THREE.Texture&&(b.displacementMap=this.displacementMap.toJSON(a).uuid,
+b.displacementScale=this.displacementScale,b.displacementBias=this.displacementBias);this.specularMap instanceof THREE.Texture&&(b.specularMap=this.specularMap.toJSON(a).uuid);this.envMap instanceof THREE.Texture&&(b.envMap=this.envMap.toJSON(a).uuid,b.reflectivity=this.reflectivity);void 0!==this.size&&(b.size=this.size);void 0!==this.sizeAttenuation&&(b.sizeAttenuation=this.sizeAttenuation);void 0!==this.vertexColors&&this.vertexColors!==THREE.NoColors&&(b.vertexColors=this.vertexColors);void 0!==
+this.shading&&this.shading!==THREE.SmoothShading&&(b.shading=this.shading);void 0!==this.blending&&this.blending!==THREE.NormalBlending&&(b.blending=this.blending);void 0!==this.side&&this.side!==THREE.FrontSide&&(b.side=this.side);1>this.opacity&&(b.opacity=this.opacity);!0===this.transparent&&(b.transparent=this.transparent);0<this.alphaTest&&(b.alphaTest=this.alphaTest);!0===this.wireframe&&(b.wireframe=this.wireframe);1<this.wireframeLinewidth&&(b.wireframeLinewidth=this.wireframeLinewidth);return b},
+clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.name=a.name;this.side=a.side;this.opacity=a.opacity;this.transparent=a.transparent;this.blending=a.blending;this.blendSrc=a.blendSrc;this.blendDst=a.blendDst;this.blendEquation=a.blendEquation;this.blendSrcAlpha=a.blendSrcAlpha;this.blendDstAlpha=a.blendDstAlpha;this.blendEquationAlpha=a.blendEquationAlpha;this.depthFunc=a.depthFunc;this.depthTest=a.depthTest;this.depthWrite=a.depthWrite;this.precision=a.precision;this.polygonOffset=
+a.polygonOffset;this.polygonOffsetFactor=a.polygonOffsetFactor;this.polygonOffsetUnits=a.polygonOffsetUnits;this.alphaTest=a.alphaTest;this.overdraw=a.overdraw;this.visible=a.visible;return this},update:function(){this.dispatchEvent({type:"update"})},dispose:function(){this.dispatchEvent({type:"dispose"})},get wrapAround(){console.warn("THREE."+this.type+": .wrapAround has been removed.")},set wrapAround(a){console.warn("THREE."+this.type+": .wrapAround has been removed.")},get wrapRGB(){console.warn("THREE."+
+this.type+": .wrapRGB has been removed.");return new THREE.Color}};THREE.EventDispatcher.prototype.apply(THREE.Material.prototype);THREE.MaterialIdCount=0;THREE.LineBasicMaterial=function(a){THREE.Material.call(this);this.type="LineBasicMaterial";this.color=new THREE.Color(16777215);this.linewidth=1;this.linejoin=this.linecap="round";this.vertexColors=THREE.NoColors;this.fog=!0;this.setValues(a)};THREE.LineBasicMaterial.prototype=Object.create(THREE.Material.prototype);
+THREE.LineBasicMaterial.prototype.constructor=THREE.LineBasicMaterial;THREE.LineBasicMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.linewidth=a.linewidth;this.linecap=a.linecap;this.linejoin=a.linejoin;this.vertexColors=a.vertexColors;this.fog=a.fog;return this};
+THREE.LineDashedMaterial=function(a){THREE.Material.call(this);this.type="LineDashedMaterial";this.color=new THREE.Color(16777215);this.scale=this.linewidth=1;this.dashSize=3;this.gapSize=1;this.vertexColors=!1;this.fog=!0;this.setValues(a)};THREE.LineDashedMaterial.prototype=Object.create(THREE.Material.prototype);THREE.LineDashedMaterial.prototype.constructor=THREE.LineDashedMaterial;
+THREE.LineDashedMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.linewidth=a.linewidth;this.scale=a.scale;this.dashSize=a.dashSize;this.gapSize=a.gapSize;this.vertexColors=a.vertexColors;this.fog=a.fog;return this};
+THREE.MeshBasicMaterial=function(a){THREE.Material.call(this);this.type="MeshBasicMaterial";this.color=new THREE.Color(16777215);this.aoMap=this.map=null;this.aoMapIntensity=1;this.envMap=this.alphaMap=this.specularMap=null;this.combine=THREE.MultiplyOperation;this.reflectivity=1;this.refractionRatio=.98;this.fog=!0;this.shading=THREE.SmoothShading;this.wireframe=!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.vertexColors=THREE.NoColors;this.morphTargets=this.skinning=
+!1;this.setValues(a)};THREE.MeshBasicMaterial.prototype=Object.create(THREE.Material.prototype);THREE.MeshBasicMaterial.prototype.constructor=THREE.MeshBasicMaterial;
+THREE.MeshBasicMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.map=a.map;this.aoMap=a.aoMap;this.aoMapIntensity=a.aoMapIntensity;this.specularMap=a.specularMap;this.alphaMap=a.alphaMap;this.envMap=a.envMap;this.combine=a.combine;this.reflectivity=a.reflectivity;this.refractionRatio=a.refractionRatio;this.fog=a.fog;this.shading=a.shading;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;
+this.wireframeLinejoin=a.wireframeLinejoin;this.vertexColors=a.vertexColors;this.skinning=a.skinning;this.morphTargets=a.morphTargets;return this};
+THREE.MeshLambertMaterial=function(a){THREE.Material.call(this);this.type="MeshLambertMaterial";this.color=new THREE.Color(16777215);this.emissive=new THREE.Color(0);this.envMap=this.alphaMap=this.specularMap=this.map=null;this.combine=THREE.MultiplyOperation;this.reflectivity=1;this.refractionRatio=.98;this.fog=!0;this.wireframe=!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.vertexColors=THREE.NoColors;this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)};
+THREE.MeshLambertMaterial.prototype=Object.create(THREE.Material.prototype);THREE.MeshLambertMaterial.prototype.constructor=THREE.MeshLambertMaterial;
+THREE.MeshLambertMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.emissive.copy(a.emissive);this.map=a.map;this.specularMap=a.specularMap;this.alphaMap=a.alphaMap;this.envMap=a.envMap;this.combine=a.combine;this.reflectivity=a.reflectivity;this.refractionRatio=a.refractionRatio;this.fog=a.fog;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;this.wireframeLinejoin=a.wireframeLinejoin;
+this.vertexColors=a.vertexColors;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};
+THREE.MeshPhongMaterial=function(a){THREE.Material.call(this);this.type="MeshPhongMaterial";this.color=new THREE.Color(16777215);this.emissive=new THREE.Color(0);this.specular=new THREE.Color(1118481);this.shininess=30;this.metal=!1;this.lightMap=this.map=null;this.lightMapIntensity=1;this.aoMap=null;this.aoMapIntensity=1;this.bumpMap=this.emissiveMap=null;this.bumpScale=1;this.normalMap=null;this.normalScale=new THREE.Vector2(1,1);this.displacementMap=null;this.displacementScale=1;this.displacementBias=
+0;this.envMap=this.alphaMap=this.specularMap=null;this.combine=THREE.MultiplyOperation;this.reflectivity=1;this.refractionRatio=.98;this.fog=!0;this.shading=THREE.SmoothShading;this.wireframe=!1;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.vertexColors=THREE.NoColors;this.morphNormals=this.morphTargets=this.skinning=!1;this.setValues(a)};THREE.MeshPhongMaterial.prototype=Object.create(THREE.Material.prototype);THREE.MeshPhongMaterial.prototype.constructor=THREE.MeshPhongMaterial;
+THREE.MeshPhongMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.emissive.copy(a.emissive);this.specular.copy(a.specular);this.shininess=a.shininess;this.metal=a.metal;this.map=a.map;this.lightMap=a.lightMap;this.lightMapIntensity=a.lightMapIntensity;this.aoMap=a.aoMap;this.aoMapIntensity=a.aoMapIntensity;this.emissiveMap=a.emissiveMap;this.bumpMap=a.bumpMap;this.bumpScale=a.bumpScale;this.normalMap=a.normalMap;this.normalScale.copy(a.normalScale);
+this.displacementMap=a.displacementMap;this.displacementScale=a.displacementScale;this.displacementBias=a.displacementBias;this.specularMap=a.specularMap;this.alphaMap=a.alphaMap;this.envMap=a.envMap;this.combine=a.combine;this.reflectivity=a.reflectivity;this.refractionRatio=a.refractionRatio;this.fog=a.fog;this.shading=a.shading;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.wireframeLinecap=a.wireframeLinecap;this.wireframeLinejoin=a.wireframeLinejoin;this.vertexColors=
+a.vertexColors;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=a.morphNormals;return this};THREE.MeshDepthMaterial=function(a){THREE.Material.call(this);this.type="MeshDepthMaterial";this.wireframe=this.morphTargets=!1;this.wireframeLinewidth=1;this.setValues(a)};THREE.MeshDepthMaterial.prototype=Object.create(THREE.Material.prototype);THREE.MeshDepthMaterial.prototype.constructor=THREE.MeshDepthMaterial;
+THREE.MeshDepthMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;return this};THREE.MeshNormalMaterial=function(a){THREE.Material.call(this,a);this.type="MeshNormalMaterial";this.wireframe=!1;this.wireframeLinewidth=1;this.morphTargets=!1;this.setValues(a)};THREE.MeshNormalMaterial.prototype=Object.create(THREE.Material.prototype);THREE.MeshNormalMaterial.prototype.constructor=THREE.MeshNormalMaterial;
+THREE.MeshNormalMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;return this};THREE.MultiMaterial=function(a){this.uuid=THREE.Math.generateUUID();this.type="MultiMaterial";this.materials=a instanceof Array?a:[];this.visible=!0};
+THREE.MultiMaterial.prototype={constructor:THREE.MultiMaterial,toJSON:function(){for(var a={metadata:{version:4.2,type:"material",generator:"MaterialExporter"},uuid:this.uuid,type:this.type,materials:[]},b=0,c=this.materials.length;b<c;b++)a.materials.push(this.materials[b].toJSON());a.visible=this.visible;return a},clone:function(){for(var a=new this.constructor,b=0;b<this.materials.length;b++)a.materials.push(this.materials[b].clone());a.visible=this.visible;return a}};THREE.MeshFaceMaterial=THREE.MultiMaterial;
+THREE.PointsMaterial=function(a){THREE.Material.call(this);this.type="PointsMaterial";this.color=new THREE.Color(16777215);this.map=null;this.size=1;this.sizeAttenuation=!0;this.vertexColors=THREE.NoColors;this.fog=!0;this.setValues(a)};THREE.PointsMaterial.prototype=Object.create(THREE.Material.prototype);THREE.PointsMaterial.prototype.constructor=THREE.PointsMaterial;
+THREE.PointsMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.map=a.map;this.size=a.size;this.sizeAttenuation=a.sizeAttenuation;this.vertexColors=a.vertexColors;this.fog=a.fog;return this};THREE.PointCloudMaterial=function(a){console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial.");return new THREE.PointsMaterial(a)};
+THREE.ParticleBasicMaterial=function(a){console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial.");return new THREE.PointsMaterial(a)};THREE.ParticleSystemMaterial=function(a){console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial.");return new THREE.PointsMaterial(a)};
+THREE.ShaderMaterial=function(a){THREE.Material.call(this);this.type="ShaderMaterial";this.defines={};this.uniforms={};this.vertexShader="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}";this.fragmentShader="void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}";this.shading=THREE.SmoothShading;this.linewidth=1;this.wireframe=!1;this.wireframeLinewidth=1;this.lights=this.fog=!1;this.vertexColors=THREE.NoColors;this.derivatives=this.morphNormals=
+this.morphTargets=this.skinning=!1;this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]};this.index0AttributeName=void 0;void 0!==a&&(void 0!==a.attributes&&console.error("THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead."),this.setValues(a))};THREE.ShaderMaterial.prototype=Object.create(THREE.Material.prototype);THREE.ShaderMaterial.prototype.constructor=THREE.ShaderMaterial;
+THREE.ShaderMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.fragmentShader=a.fragmentShader;this.vertexShader=a.vertexShader;this.uniforms=THREE.UniformsUtils.clone(a.uniforms);this.attributes=a.attributes;this.defines=a.defines;this.shading=a.shading;this.wireframe=a.wireframe;this.wireframeLinewidth=a.wireframeLinewidth;this.fog=a.fog;this.lights=a.lights;this.vertexColors=a.vertexColors;this.skinning=a.skinning;this.morphTargets=a.morphTargets;this.morphNormals=
+a.morphNormals;this.derivatives=a.derivatives;return this};THREE.ShaderMaterial.prototype.toJSON=function(a){a=THREE.Material.prototype.toJSON.call(this,a);a.uniforms=this.uniforms;a.attributes=this.attributes;a.vertexShader=this.vertexShader;a.fragmentShader=this.fragmentShader;return a};THREE.RawShaderMaterial=function(a){THREE.ShaderMaterial.call(this,a);this.type="RawShaderMaterial"};THREE.RawShaderMaterial.prototype=Object.create(THREE.ShaderMaterial.prototype);
+THREE.RawShaderMaterial.prototype.constructor=THREE.RawShaderMaterial;THREE.SpriteMaterial=function(a){THREE.Material.call(this);this.type="SpriteMaterial";this.color=new THREE.Color(16777215);this.map=null;this.rotation=0;this.fog=!1;this.setValues(a)};THREE.SpriteMaterial.prototype=Object.create(THREE.Material.prototype);THREE.SpriteMaterial.prototype.constructor=THREE.SpriteMaterial;
+THREE.SpriteMaterial.prototype.copy=function(a){THREE.Material.prototype.copy.call(this,a);this.color.copy(a.color);this.map=a.map;this.rotation=a.rotation;this.fog=a.fog;return this};
+THREE.Texture=function(a,b,c,d,e,g,f,h,l){Object.defineProperty(this,"id",{value:THREE.TextureIdCount++});this.uuid=THREE.Math.generateUUID();this.sourceFile=this.name="";this.image=void 0!==a?a:THREE.Texture.DEFAULT_IMAGE;this.mipmaps=[];this.mapping=void 0!==b?b:THREE.Texture.DEFAULT_MAPPING;this.wrapS=void 0!==c?c:THREE.ClampToEdgeWrapping;this.wrapT=void 0!==d?d:THREE.ClampToEdgeWrapping;this.magFilter=void 0!==e?e:THREE.LinearFilter;this.minFilter=void 0!==g?g:THREE.LinearMipMapLinearFilter;
+this.anisotropy=void 0!==l?l:1;this.format=void 0!==f?f:THREE.RGBAFormat;this.type=void 0!==h?h:THREE.UnsignedByteType;this.offset=new THREE.Vector2(0,0);this.repeat=new THREE.Vector2(1,1);this.generateMipmaps=!0;this.premultiplyAlpha=!1;this.flipY=!0;this.unpackAlignment=4;this.version=0;this.onUpdate=null};THREE.Texture.DEFAULT_IMAGE=void 0;THREE.Texture.DEFAULT_MAPPING=THREE.UVMapping;
+THREE.Texture.prototype={constructor:THREE.Texture,set needsUpdate(a){!0===a&&this.version++},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.image=a.image;this.mipmaps=a.mipmaps.slice(0);this.mapping=a.mapping;this.wrapS=a.wrapS;this.wrapT=a.wrapT;this.magFilter=a.magFilter;this.minFilter=a.minFilter;this.anisotropy=a.anisotropy;this.format=a.format;this.type=a.type;this.offset.copy(a.offset);this.repeat.copy(a.repeat);this.generateMipmaps=a.generateMipmaps;this.premultiplyAlpha=
+a.premultiplyAlpha;this.flipY=a.flipY;this.unpackAlignment=a.unpackAlignment;return this},toJSON:function(a){if(void 0!==a.textures[this.uuid])return a.textures[this.uuid];var b={metadata:{version:4.4,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],wrap:[this.wrapS,this.wrapT],minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy};if(void 0!==this.image){var c=
+this.image;void 0===c.uuid&&(c.uuid=THREE.Math.generateUUID());if(void 0===a.images[c.uuid]){var d=a.images,e=c.uuid,g=c.uuid,f;void 0!==c.toDataURL?f=c:(f=document.createElement("canvas"),f.width=c.width,f.height=c.height,f.getContext("2d").drawImage(c,0,0,c.width,c.height));f=2048<f.width||2048<f.height?f.toDataURL("image/jpeg",.6):f.toDataURL("image/png");d[e]={uuid:g,url:f}}b.image=c.uuid}return a.textures[this.uuid]=b},dispose:function(){this.dispatchEvent({type:"dispose"})},transformUv:function(a){if(this.mapping===
+THREE.UVMapping){a.multiply(this.repeat);a.add(this.offset);if(0>a.x||1<a.x)switch(this.wrapS){case THREE.RepeatWrapping:a.x-=Math.floor(a.x);break;case THREE.ClampToEdgeWrapping:a.x=0>a.x?0:1;break;case THREE.MirroredRepeatWrapping:1===Math.abs(Math.floor(a.x)%2)?a.x=Math.ceil(a.x)-a.x:a.x-=Math.floor(a.x)}if(0>a.y||1<a.y)switch(this.wrapT){case THREE.RepeatWrapping:a.y-=Math.floor(a.y);break;case THREE.ClampToEdgeWrapping:a.y=0>a.y?0:1;break;case THREE.MirroredRepeatWrapping:1===Math.abs(Math.floor(a.y)%
+2)?a.y=Math.ceil(a.y)-a.y:a.y-=Math.floor(a.y)}this.flipY&&(a.y=1-a.y)}}};THREE.EventDispatcher.prototype.apply(THREE.Texture.prototype);THREE.TextureIdCount=0;THREE.CanvasTexture=function(a,b,c,d,e,g,f,h,l){THREE.Texture.call(this,a,b,c,d,e,g,f,h,l);this.needsUpdate=!0};THREE.CanvasTexture.prototype=Object.create(THREE.Texture.prototype);THREE.CanvasTexture.prototype.constructor=THREE.CanvasTexture;
+THREE.CubeTexture=function(a,b,c,d,e,g,f,h,l){b=void 0!==b?b:THREE.CubeReflectionMapping;THREE.Texture.call(this,a,b,c,d,e,g,f,h,l);this.images=a;this.flipY=!1};THREE.CubeTexture.prototype=Object.create(THREE.Texture.prototype);THREE.CubeTexture.prototype.constructor=THREE.CubeTexture;THREE.CubeTexture.prototype.copy=function(a){THREE.Texture.prototype.copy.call(this,a);this.images=a.images;return this};
+THREE.CompressedTexture=function(a,b,c,d,e,g,f,h,l,k,m){THREE.Texture.call(this,null,g,f,h,l,k,d,e,m);this.image={width:b,height:c};this.mipmaps=a;this.generateMipmaps=this.flipY=!1};THREE.CompressedTexture.prototype=Object.create(THREE.Texture.prototype);THREE.CompressedTexture.prototype.constructor=THREE.CompressedTexture;
+THREE.DataTexture=function(a,b,c,d,e,g,f,h,l,k,m){THREE.Texture.call(this,null,g,f,h,l,k,d,e,m);this.image={data:a,width:b,height:c};this.magFilter=void 0!==l?l:THREE.NearestFilter;this.minFilter=void 0!==k?k:THREE.NearestFilter;this.generateMipmaps=this.flipY=!1};THREE.DataTexture.prototype=Object.create(THREE.Texture.prototype);THREE.DataTexture.prototype.constructor=THREE.DataTexture;
+THREE.VideoTexture=function(a,b,c,d,e,g,f,h,l){function k(){requestAnimationFrame(k);a.readyState===a.HAVE_ENOUGH_DATA&&(m.needsUpdate=!0)}THREE.Texture.call(this,a,b,c,d,e,g,f,h,l);this.generateMipmaps=!1;var m=this;k()};THREE.VideoTexture.prototype=Object.create(THREE.Texture.prototype);THREE.VideoTexture.prototype.constructor=THREE.VideoTexture;THREE.Group=function(){THREE.Object3D.call(this);this.type="Group"};THREE.Group.prototype=Object.create(THREE.Object3D.prototype);
+THREE.Group.prototype.constructor=THREE.Group;THREE.Points=function(a,b){THREE.Object3D.call(this);this.type="Points";this.geometry=void 0!==a?a:new THREE.Geometry;this.material=void 0!==b?b:new THREE.PointsMaterial({color:16777215*Math.random()})};THREE.Points.prototype=Object.create(THREE.Object3D.prototype);THREE.Points.prototype.constructor=THREE.Points;
+THREE.Points.prototype.raycast=function(){var a=new THREE.Matrix4,b=new THREE.Ray;return function(c,d){function e(a,e){var f=b.distanceSqToPoint(a);if(f<l){var h=b.closestPointToPoint(a);h.applyMatrix4(g.matrixWorld);var k=c.ray.origin.distanceTo(h);k<c.near||k>c.far||d.push({distance:k,distanceToRay:Math.sqrt(f),point:h.clone(),index:e,face:null,object:g})}}var g=this,f=g.geometry,h=c.params.Points.threshold;a.getInverse(this.matrixWorld);b.copy(c.ray).applyMatrix4(a);if(null===f.boundingBox||!1!==
+b.isIntersectionBox(f.boundingBox)){var h=h/((this.scale.x+this.scale.y+this.scale.z)/3),l=h*h,h=new THREE.Vector3;if(f instanceof THREE.BufferGeometry){var k=f.index,f=f.attributes.position.array;if(null!==k)for(var m=k.array,k=0,p=m.length;k<p;k++){var n=m[k];h.fromArray(f,3*n);e(h,n)}else for(k=0,m=f.length/3;k<m;k++)h.fromArray(f,3*k),e(h,k)}else for(h=f.vertices,k=0,m=h.length;k<m;k++)e(h[k],k)}}}();THREE.Points.prototype.clone=function(){return(new this.constructor(this.geometry,this.material)).copy(this)};
+THREE.PointCloud=function(a,b){console.warn("THREE.PointCloud has been renamed to THREE.Points.");return new THREE.Points(a,b)};THREE.ParticleSystem=function(a,b){console.warn("THREE.ParticleSystem has been renamed to THREE.Points.");return new THREE.Points(a,b)};
+THREE.Line=function(a,b,c){if(1===c)return console.warn("THREE.Line: parameter THREE.LinePieces no longer supported. Created THREE.LineSegments instead."),new THREE.LineSegments(a,b);THREE.Object3D.call(this);this.type="Line";this.geometry=void 0!==a?a:new THREE.Geometry;this.material=void 0!==b?b:new THREE.LineBasicMaterial({color:16777215*Math.random()})};THREE.Line.prototype=Object.create(THREE.Object3D.prototype);THREE.Line.prototype.constructor=THREE.Line;
+THREE.Line.prototype.raycast=function(){var a=new THREE.Matrix4,b=new THREE.Ray,c=new THREE.Sphere;return function(d,e){var g=d.linePrecision,g=g*g,f=this.geometry;null===f.boundingSphere&&f.computeBoundingSphere();c.copy(f.boundingSphere);c.applyMatrix4(this.matrixWorld);if(!1!==d.ray.isIntersectionSphere(c)){a.getInverse(this.matrixWorld);b.copy(d.ray).applyMatrix4(a);var h=new THREE.Vector3,l=new THREE.Vector3,k=new THREE.Vector3,m=new THREE.Vector3,p=this instanceof THREE.LineSegments?2:1;if(f instanceof
+THREE.BufferGeometry){var n=f.index,q=f.attributes;if(null!==n)for(var f=n.array,q=q.position.array,n=0,s=f.length-1;n<s;n+=p){var t=f[n+1];h.fromArray(q,3*f[n]);l.fromArray(q,3*t);t=b.distanceSqToSegment(h,l,m,k);t>g||(m.applyMatrix4(this.matrixWorld),t=d.ray.origin.distanceTo(m),t<d.near||t>d.far||e.push({distance:t,point:k.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this}))}else for(q=q.position.array,n=0,s=q.length/3-1;n<s;n+=p)h.fromArray(q,3*n),l.fromArray(q,
+3*n+3),t=b.distanceSqToSegment(h,l,m,k),t>g||(m.applyMatrix4(this.matrixWorld),t=d.ray.origin.distanceTo(m),t<d.near||t>d.far||e.push({distance:t,point:k.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this}))}else if(f instanceof THREE.Geometry)for(h=f.vertices,l=h.length,n=0;n<l-1;n+=p)t=b.distanceSqToSegment(h[n],h[n+1],m,k),t>g||(m.applyMatrix4(this.matrixWorld),t=d.ray.origin.distanceTo(m),t<d.near||t>d.far||e.push({distance:t,point:k.clone().applyMatrix4(this.matrixWorld),
+index:n,face:null,faceIndex:null,object:this}))}}}();THREE.Line.prototype.clone=function(){return(new this.constructor(this.geometry,this.material)).copy(this)};THREE.LineStrip=0;THREE.LinePieces=1;THREE.LineSegments=function(a,b){THREE.Line.call(this,a,b);this.type="LineSegments"};THREE.LineSegments.prototype=Object.create(THREE.Line.prototype);THREE.LineSegments.prototype.constructor=THREE.LineSegments;
+THREE.Mesh=function(a,b){THREE.Object3D.call(this);this.type="Mesh";this.geometry=void 0!==a?a:new THREE.Geometry;this.material=void 0!==b?b:new THREE.MeshBasicMaterial({color:16777215*Math.random()});this.updateMorphTargets()};THREE.Mesh.prototype=Object.create(THREE.Object3D.prototype);THREE.Mesh.prototype.constructor=THREE.Mesh;
+THREE.Mesh.prototype.updateMorphTargets=function(){if(void 0!==this.geometry.morphTargets&&0<this.geometry.morphTargets.length){this.morphTargetBase=-1;this.morphTargetInfluences=[];this.morphTargetDictionary={};for(var a=0,b=this.geometry.morphTargets.length;a<b;a++)this.morphTargetInfluences.push(0),this.morphTargetDictionary[this.geometry.morphTargets[a].name]=a}};
+THREE.Mesh.prototype.getMorphTargetIndexByName=function(a){if(void 0!==this.morphTargetDictionary[a])return this.morphTargetDictionary[a];console.warn("THREE.Mesh.getMorphTargetIndexByName: morph target "+a+" does not exist. Returning 0.");return 0};
+THREE.Mesh.prototype.raycast=function(){function a(a,b,c,d,e,f,g){THREE.Triangle.barycoordFromPoint(a,b,c,d,t);e.multiplyScalar(t.x);f.multiplyScalar(t.y);g.multiplyScalar(t.z);e.add(f).add(g);return e.clone()}function b(a,b,c,d,e,f,g){var h=a.material;if(null===(h.side===THREE.BackSide?c.intersectTriangle(f,e,d,!0,g):c.intersectTriangle(d,e,f,h.side!==THREE.DoubleSide,g)))return null;u.copy(g);u.applyMatrix4(a.matrixWorld);c=b.ray.origin.distanceTo(u);return c<b.near||c>b.far?null:{distance:c,point:u.clone(),
+object:a}}function c(c,d,e,g,k,m,p,u){f.fromArray(g,3*m);h.fromArray(g,3*p);l.fromArray(g,3*u);if(c=b(c,d,e,f,h,l,v))k&&(n.fromArray(k,2*m),q.fromArray(k,2*p),s.fromArray(k,2*u),c.uv=a(v,f,h,l,n,q,s)),c.face=new THREE.Face3(m,p,u,THREE.Triangle.normal(f,h,l)),c.faceIndex=m;return c}var d=new THREE.Matrix4,e=new THREE.Ray,g=new THREE.Sphere,f=new THREE.Vector3,h=new THREE.Vector3,l=new THREE.Vector3,k=new THREE.Vector3,m=new THREE.Vector3,p=new THREE.Vector3,n=new THREE.Vector2,q=new THREE.Vector2,
+s=new THREE.Vector2,t=new THREE.Vector3,v=new THREE.Vector3,u=new THREE.Vector3;return function(u,t){var x=this.geometry,B=this.material;if(void 0!==B){null===x.boundingSphere&&x.computeBoundingSphere();var y=this.matrixWorld;g.copy(x.boundingSphere);g.applyMatrix4(y);if(!1!==u.ray.isIntersectionSphere(g)&&(d.getInverse(y),e.copy(u.ray).applyMatrix4(d),null===x.boundingBox||!1!==e.isIntersectionBox(x.boundingBox))){var z,A;if(x instanceof THREE.BufferGeometry){var J,F,B=x.index,y=x.attributes,x=y.position.array;
+void 0!==y.uv&&(z=y.uv.array);if(null!==B)for(var y=B.array,C=0,N=y.length;C<N;C+=3){if(B=y[C],J=y[C+1],F=y[C+2],A=c(this,u,e,x,z,B,J,F))A.faceIndex=Math.floor(C/3),t.push(A)}else for(C=0,N=x.length;C<N;C+=9)if(B=C/3,J=B+1,F=B+2,A=c(this,u,e,x,z,B,J,F))A.index=B,t.push(A)}else if(x instanceof THREE.Geometry){var L,Q,y=B instanceof THREE.MeshFaceMaterial,C=!0===y?B.materials:null,N=x.vertices;J=x.faces;F=x.faceVertexUvs[0];0<F.length&&(z=F);for(var M=0,K=J.length;M<K;M++){var E=J[M];A=!0===y?C[E.materialIndex]:
+B;if(void 0!==A){F=N[E.a];L=N[E.b];Q=N[E.c];if(!0===A.morphTargets){A=x.morphTargets;var O=this.morphTargetInfluences;f.set(0,0,0);h.set(0,0,0);l.set(0,0,0);for(var T=0,H=A.length;T<H;T++){var R=O[T];if(0!==R){var G=A[T].vertices;f.addScaledVector(k.subVectors(G[E.a],F),R);h.addScaledVector(m.subVectors(G[E.b],L),R);l.addScaledVector(p.subVectors(G[E.c],Q),R)}}f.add(F);h.add(L);l.add(Q);F=f;L=h;Q=l}if(A=b(this,u,e,F,L,Q,v))z&&(O=z[M],n.copy(O[0]),q.copy(O[1]),s.copy(O[2]),A.uv=a(v,F,L,Q,n,q,s)),A.face=
+E,A.faceIndex=M,t.push(A)}}}}}}}();THREE.Mesh.prototype.clone=function(){return(new this.constructor(this.geometry,this.material)).copy(this)};THREE.Bone=function(a){THREE.Object3D.call(this);this.type="Bone";this.skin=a};THREE.Bone.prototype=Object.create(THREE.Object3D.prototype);THREE.Bone.prototype.constructor=THREE.Bone;THREE.Bone.prototype.copy=function(a){THREE.Object3D.prototype.copy.call(this,a);this.skin=a.skin;return this};
+THREE.Skeleton=function(a,b,c){this.useVertexTexture=void 0!==c?c:!0;this.identityMatrix=new THREE.Matrix4;a=a||[];this.bones=a.slice(0);this.useVertexTexture?(a=Math.sqrt(4*this.bones.length),a=THREE.Math.nextPowerOfTwo(Math.ceil(a)),this.boneTextureHeight=this.boneTextureWidth=a=Math.max(a,4),this.boneMatrices=new Float32Array(this.boneTextureWidth*this.boneTextureHeight*4),this.boneTexture=new THREE.DataTexture(this.boneMatrices,this.boneTextureWidth,this.boneTextureHeight,THREE.RGBAFormat,THREE.FloatType)):
+this.boneMatrices=new Float32Array(16*this.bones.length);if(void 0===b)this.calculateInverses();else if(this.bones.length===b.length)this.boneInverses=b.slice(0);else for(console.warn("THREE.Skeleton bonInverses is the wrong length."),this.boneInverses=[],b=0,a=this.bones.length;b<a;b++)this.boneInverses.push(new THREE.Matrix4)};
+THREE.Skeleton.prototype.calculateInverses=function(){this.boneInverses=[];for(var a=0,b=this.bones.length;a<b;a++){var c=new THREE.Matrix4;this.bones[a]&&c.getInverse(this.bones[a].matrixWorld);this.boneInverses.push(c)}};
+THREE.Skeleton.prototype.pose=function(){for(var a,b=0,c=this.bones.length;b<c;b++)(a=this.bones[b])&&a.matrixWorld.getInverse(this.boneInverses[b]);b=0;for(c=this.bones.length;b<c;b++)if(a=this.bones[b])a.parent?(a.matrix.getInverse(a.parent.matrixWorld),a.matrix.multiply(a.matrixWorld)):a.matrix.copy(a.matrixWorld),a.matrix.decompose(a.position,a.quaternion,a.scale)};
+THREE.Skeleton.prototype.update=function(){var a=new THREE.Matrix4;return function(){for(var b=0,c=this.bones.length;b<c;b++)a.multiplyMatrices(this.bones[b]?this.bones[b].matrixWorld:this.identityMatrix,this.boneInverses[b]),a.flattenToArrayOffset(this.boneMatrices,16*b);this.useVertexTexture&&(this.boneTexture.needsUpdate=!0)}}();THREE.Skeleton.prototype.clone=function(){return new THREE.Skeleton(this.bones,this.boneInverses,this.useVertexTexture)};
+THREE.SkinnedMesh=function(a,b,c){THREE.Mesh.call(this,a,b);this.type="SkinnedMesh";this.bindMode="attached";this.bindMatrix=new THREE.Matrix4;this.bindMatrixInverse=new THREE.Matrix4;a=[];if(this.geometry&&void 0!==this.geometry.bones){for(var d,e=0,g=this.geometry.bones.length;e<g;++e)d=this.geometry.bones[e],b=new THREE.Bone(this),a.push(b),b.name=d.name,b.position.fromArray(d.pos),b.quaternion.fromArray(d.rotq),void 0!==d.scl&&b.scale.fromArray(d.scl);e=0;for(g=this.geometry.bones.length;e<g;++e)d=
+this.geometry.bones[e],-1!==d.parent&&null!==d.parent?a[d.parent].add(a[e]):this.add(a[e])}this.normalizeSkinWeights();this.updateMatrixWorld(!0);this.bind(new THREE.Skeleton(a,void 0,c),this.matrixWorld)};THREE.SkinnedMesh.prototype=Object.create(THREE.Mesh.prototype);THREE.SkinnedMesh.prototype.constructor=THREE.SkinnedMesh;
+THREE.SkinnedMesh.prototype.bind=function(a,b){this.skeleton=a;void 0===b&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),b=this.matrixWorld);this.bindMatrix.copy(b);this.bindMatrixInverse.getInverse(b)};THREE.SkinnedMesh.prototype.pose=function(){this.skeleton.pose()};
+THREE.SkinnedMesh.prototype.normalizeSkinWeights=function(){if(this.geometry instanceof THREE.Geometry)for(var a=0;a<this.geometry.skinIndices.length;a++){var b=this.geometry.skinWeights[a],c=1/b.lengthManhattan();Infinity!==c?b.multiplyScalar(c):b.set(1)}};
+THREE.SkinnedMesh.prototype.updateMatrixWorld=function(a){THREE.Mesh.prototype.updateMatrixWorld.call(this,!0);"attached"===this.bindMode?this.bindMatrixInverse.getInverse(this.matrixWorld):"detached"===this.bindMode?this.bindMatrixInverse.getInverse(this.bindMatrix):console.warn("THREE.SkinnedMesh unrecognized bindMode: "+this.bindMode)};THREE.SkinnedMesh.prototype.clone=function(){return(new this.constructor(this.geometry,this.material,this.useVertexTexture)).copy(this)};
+THREE.LOD=function(){THREE.Object3D.call(this);this.type="LOD";Object.defineProperties(this,{levels:{enumerable:!0,value:[]},objects:{get:function(){console.warn("THREE.LOD: .objects has been renamed to .levels.");return this.levels}}})};THREE.LOD.prototype=Object.create(THREE.Object3D.prototype);THREE.LOD.prototype.constructor=THREE.LOD;
+THREE.LOD.prototype.addLevel=function(a,b){void 0===b&&(b=0);b=Math.abs(b);for(var c=this.levels,d=0;d<c.length&&!(b<c[d].distance);d++);c.splice(d,0,{distance:b,object:a});this.add(a)};THREE.LOD.prototype.getObjectForDistance=function(a){for(var b=this.levels,c=1,d=b.length;c<d&&!(a<b[c].distance);c++);return b[c-1].object};
+THREE.LOD.prototype.raycast=function(){var a=new THREE.Vector3;return function(b,c){a.setFromMatrixPosition(this.matrixWorld);var d=b.ray.origin.distanceTo(a);this.getObjectForDistance(d).raycast(b,c)}}();
+THREE.LOD.prototype.update=function(){var a=new THREE.Vector3,b=new THREE.Vector3;return function(c){var d=this.levels;if(1<d.length){a.setFromMatrixPosition(c.matrixWorld);b.setFromMatrixPosition(this.matrixWorld);c=a.distanceTo(b);d[0].object.visible=!0;for(var e=1,g=d.length;e<g;e++)if(c>=d[e].distance)d[e-1].object.visible=!1,d[e].object.visible=!0;else break;for(;e<g;e++)d[e].object.visible=!1}}}();
+THREE.LOD.prototype.copy=function(a){THREE.Object3D.prototype.copy.call(this,a,!1);a=a.levels;for(var b=0,c=a.length;b<c;b++){var d=a[b];this.addLevel(d.object.clone(),d.distance)}return this};THREE.LOD.prototype.toJSON=function(a){a=THREE.Object3D.prototype.toJSON.call(this,a);a.object.levels=[];for(var b=this.levels,c=0,d=b.length;c<d;c++){var e=b[c];a.object.levels.push({object:e.object.uuid,distance:e.distance})}return a};
+THREE.Sprite=function(){var a=new Uint16Array([0,1,2,0,2,3]),b=new Float32Array([-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0]),c=new Float32Array([0,0,1,0,1,1,0,1]),d=new THREE.BufferGeometry;d.setIndex(new THREE.BufferAttribute(a,1));d.addAttribute("position",new THREE.BufferAttribute(b,3));d.addAttribute("uv",new THREE.BufferAttribute(c,2));return function(a){THREE.Object3D.call(this);this.type="Sprite";this.geometry=d;this.material=void 0!==a?a:new THREE.SpriteMaterial}}();THREE.Sprite.prototype=Object.create(THREE.Object3D.prototype);
+THREE.Sprite.prototype.constructor=THREE.Sprite;THREE.Sprite.prototype.raycast=function(){var a=new THREE.Vector3;return function(b,c){a.setFromMatrixPosition(this.matrixWorld);var d=b.ray.distanceSqToPoint(a);d>this.scale.x*this.scale.y||c.push({distance:Math.sqrt(d),point:this.position,face:null,object:this})}}();THREE.Sprite.prototype.clone=function(){return(new this.constructor(this.material)).copy(this)};THREE.Particle=THREE.Sprite;
+THREE.LensFlare=function(a,b,c,d,e){THREE.Object3D.call(this);this.lensFlares=[];this.positionScreen=new THREE.Vector3;this.customUpdateCallback=void 0;void 0!==a&&this.add(a,b,c,d,e)};THREE.LensFlare.prototype=Object.create(THREE.Object3D.prototype);THREE.LensFlare.prototype.constructor=THREE.LensFlare;
+THREE.LensFlare.prototype.add=function(a,b,c,d,e,g){void 0===b&&(b=-1);void 0===c&&(c=0);void 0===g&&(g=1);void 0===e&&(e=new THREE.Color(16777215));void 0===d&&(d=THREE.NormalBlending);c=Math.min(c,Math.max(0,c));this.lensFlares.push({texture:a,size:b,distance:c,x:0,y:0,z:0,scale:1,rotation:0,opacity:g,color:e,blending:d})};
+THREE.LensFlare.prototype.updateLensFlares=function(){var a,b=this.lensFlares.length,c,d=2*-this.positionScreen.x,e=2*-this.positionScreen.y;for(a=0;a<b;a++)c=this.lensFlares[a],c.x=this.positionScreen.x+d*c.distance,c.y=this.positionScreen.y+e*c.distance,c.wantedRotation=c.x*Math.PI*.25,c.rotation+=.25*(c.wantedRotation-c.rotation)};
+THREE.LensFlare.prototype.copy=function(a){THREE.Object3D.prototype.copy.call(this,a);this.positionScreen.copy(a.positionScreen);this.customUpdateCallback=a.customUpdateCallback;for(var b=0,c=a.lensFlares.length;b<c;b++)this.lensFlares.push(a.lensFlares[b]);return this};THREE.Scene=function(){THREE.Object3D.call(this);this.type="Scene";this.overrideMaterial=this.fog=null;this.autoUpdate=!0};THREE.Scene.prototype=Object.create(THREE.Object3D.prototype);THREE.Scene.prototype.constructor=THREE.Scene;
+THREE.Scene.prototype.copy=function(a){THREE.Object3D.prototype.copy.call(this,a);null!==a.fog&&(this.fog=a.fog.clone());null!==a.overrideMaterial&&(this.overrideMaterial=a.overrideMaterial.clone());this.autoUpdate=a.autoUpdate;this.matrixAutoUpdate=a.matrixAutoUpdate;return this};THREE.Fog=function(a,b,c){this.name="";this.color=new THREE.Color(a);this.near=void 0!==b?b:1;this.far=void 0!==c?c:1E3};THREE.Fog.prototype.clone=function(){return new THREE.Fog(this.color.getHex(),this.near,this.far)};
+THREE.FogExp2=function(a,b){this.name="";this.color=new THREE.Color(a);this.density=void 0!==b?b:2.5E-4};THREE.FogExp2.prototype.clone=function(){return new THREE.FogExp2(this.color.getHex(),this.density)};THREE.ShaderChunk={};THREE.ShaderChunk.alphamap_fragment="#ifdef USE_ALPHAMAP\n\n\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\n\n#endif\n";THREE.ShaderChunk.alphamap_pars_fragment="#ifdef USE_ALPHAMAP\n\n\tuniform sampler2D alphaMap;\n\n#endif\n";THREE.ShaderChunk.alphatest_fragment="#ifdef ALPHATEST\n\n\tif ( diffuseColor.a < ALPHATEST ) discard;\n\n#endif\n";
+THREE.ShaderChunk.aomap_fragment="#ifdef USE_AOMAP\n\n\ttotalAmbientLight *= ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\n\n#endif\n";THREE.ShaderChunk.aomap_pars_fragment="#ifdef USE_AOMAP\n\n\tuniform sampler2D aoMap;\n\tuniform float aoMapIntensity;\n\n#endif";THREE.ShaderChunk.begin_vertex="\nvec3 transformed = vec3( position );\n";THREE.ShaderChunk.beginnormal_vertex="\nvec3 objectNormal = vec3( normal );\n";THREE.ShaderChunk.bumpmap_pars_fragment="#ifdef USE_BUMPMAP\n\n\tuniform sampler2D bumpMap;\n\tuniform float bumpScale;\n\n\n\n\tvec2 dHdxy_fwd() {\n\n\t\tvec2 dSTdx = dFdx( vUv );\n\t\tvec2 dSTdy = dFdy( vUv );\n\n\t\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\n\t\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\n\t\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\n\n\t\treturn vec2( dBx, dBy );\n\n\t}\n\n\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy ) {\n\n\t\tvec3 vSigmaX = dFdx( surf_pos );\n\t\tvec3 vSigmaY = dFdy( surf_pos );\n\t\tvec3 vN = surf_norm;\n\t\tvec3 R1 = cross( vSigmaY, vN );\n\t\tvec3 R2 = cross( vN, vSigmaX );\n\n\t\tfloat fDet = dot( vSigmaX, R1 );\n\n\t\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n\t\treturn normalize( abs( fDet ) * surf_norm - vGrad );\n\n\t}\n\n#endif\n";
+THREE.ShaderChunk.color_fragment="#ifdef USE_COLOR\n\n\tdiffuseColor.rgb *= vColor;\n\n#endif";THREE.ShaderChunk.color_pars_fragment="#ifdef USE_COLOR\n\n\tvarying vec3 vColor;\n\n#endif\n";THREE.ShaderChunk.color_pars_vertex="#ifdef USE_COLOR\n\n\tvarying vec3 vColor;\n\n#endif";THREE.ShaderChunk.color_vertex="#ifdef USE_COLOR\n\n\tvColor.xyz = color.xyz;\n\n#endif";THREE.ShaderChunk.common="#define PI 3.14159\n#define PI2 6.28318\n#define RECIPROCAL_PI2 0.15915494\n#define LOG2 1.442695\n#define EPSILON 1e-6\n\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#define whiteCompliment(a) ( 1.0 - saturate( a ) )\n\nvec3 transformDirection( in vec3 normal, in mat4 matrix ) {\n\n\treturn normalize( ( matrix * vec4( normal, 0.0 ) ).xyz );\n\n}\n\nvec3 inverseTransformDirection( in vec3 normal, in mat4 matrix ) {\n\n\treturn normalize( ( vec4( normal, 0.0 ) * matrix ).xyz );\n\n}\n\nvec3 projectOnPlane(in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\n\tfloat distance = dot( planeNormal, point - pointOnPlane );\n\n\treturn - distance * planeNormal + point;\n\n}\n\nfloat sideOfPlane( in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\n\treturn sign( dot( point - pointOnPlane, planeNormal ) );\n\n}\n\nvec3 linePlaneIntersect( in vec3 pointOnLine, in vec3 lineDirection, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\n\treturn lineDirection * ( dot( planeNormal, pointOnPlane - pointOnLine ) / dot( planeNormal, lineDirection ) ) + pointOnLine;\n\n}\n\nfloat calcLightAttenuation( float lightDistance, float cutoffDistance, float decayExponent ) {\n\n\tif ( decayExponent > 0.0 ) {\n\n\t  return pow( saturate( -lightDistance / cutoffDistance + 1.0 ), decayExponent );\n\n\t}\n\n\treturn 1.0;\n\n}\n\nvec3 F_Schlick( in vec3 specularColor, in float dotLH ) {\n\n\n\tfloat fresnel = exp2( ( -5.55437 * dotLH - 6.98316 ) * dotLH );\n\n\treturn ( 1.0 - specularColor ) * fresnel + specularColor;\n\n}\n\nfloat G_BlinnPhong_Implicit( /* in float dotNL, in float dotNV */ ) {\n\n\n\treturn 0.25;\n\n}\n\nfloat D_BlinnPhong( in float shininess, in float dotNH ) {\n\n\n\treturn ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n\n}\n\nvec3 BRDF_BlinnPhong( in vec3 specularColor, in float shininess, in vec3 normal, in vec3 lightDir, in vec3 viewDir ) {\n\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotLH = saturate( dot( lightDir, halfDir ) );\n\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\n\tfloat G = G_BlinnPhong_Implicit( /* dotNL, dotNV */ );\n\n\tfloat D = D_BlinnPhong( shininess, dotNH );\n\n\treturn F * G * D;\n\n}\n\nvec3 inputToLinear( in vec3 a ) {\n\n\t#ifdef GAMMA_INPUT\n\n\t\treturn pow( a, vec3( float( GAMMA_FACTOR ) ) );\n\n\t#else\n\n\t\treturn a;\n\n\t#endif\n\n}\n\nvec3 linearToOutput( in vec3 a ) {\n\n\t#ifdef GAMMA_OUTPUT\n\n\t\treturn pow( a, vec3( 1.0 / float( GAMMA_FACTOR ) ) );\n\n\t#else\n\n\t\treturn a;\n\n\t#endif\n\n}\n";
+THREE.ShaderChunk.defaultnormal_vertex="#ifdef FLIP_SIDED\n\n\tobjectNormal = -objectNormal;\n\n#endif\n\nvec3 transformedNormal = normalMatrix * objectNormal;\n";THREE.ShaderChunk.displacementmap_vertex="#ifdef USE_DISPLACEMENTMAP\n\n\ttransformed += normal * ( texture2D( displacementMap, uv ).x * displacementScale + displacementBias );\n\n#endif\n";THREE.ShaderChunk.displacementmap_pars_vertex="#ifdef USE_DISPLACEMENTMAP\n\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n\n#endif\n";
+THREE.ShaderChunk.emissivemap_fragment="#ifdef USE_EMISSIVEMAP\n\n\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\n\n\temissiveColor.rgb = inputToLinear( emissiveColor.rgb );\n\n\ttotalEmissiveLight *= emissiveColor.rgb;\n\n#endif\n";THREE.ShaderChunk.emissivemap_pars_fragment="#ifdef USE_EMISSIVEMAP\n\n\tuniform sampler2D emissiveMap;\n\n#endif\n";THREE.ShaderChunk.envmap_fragment="#ifdef USE_ENVMAP\n\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\n\t\tvec3 cameraToVertex = normalize( vWorldPosition - cameraPosition );\n\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\n\t\t\tvec3 reflectVec = reflect( cameraToVertex, worldNormal );\n\n\t\t#else\n\n\t\t\tvec3 reflectVec = refract( cameraToVertex, worldNormal, refractionRatio );\n\n\t\t#endif\n\n\t#else\n\n\t\tvec3 reflectVec = vReflect;\n\n\t#endif\n\n\t#ifdef DOUBLE_SIDED\n\t\tfloat flipNormal = ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t#else\n\t\tfloat flipNormal = 1.0;\n\t#endif\n\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, flipNormal * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\n\t#elif defined( ENVMAP_TYPE_EQUIREC )\n\t\tvec2 sampleUV;\n\t\tsampleUV.y = saturate( flipNormal * reflectVec.y * 0.5 + 0.5 );\n\t\tsampleUV.x = atan( flipNormal * reflectVec.z, flipNormal * reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n\t\tvec4 envColor = texture2D( envMap, sampleUV );\n\n\t#elif defined( ENVMAP_TYPE_SPHERE )\n\t\tvec3 reflectView = flipNormal * normalize((viewMatrix * vec4( reflectVec, 0.0 )).xyz + vec3(0.0,0.0,1.0));\n\t\tvec4 envColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5 );\n\t#endif\n\n\tenvColor.xyz = inputToLinear( envColor.xyz );\n\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\n\t#endif\n\n#endif\n";
+THREE.ShaderChunk.envmap_pars_fragment="#ifdef USE_ENVMAP\n\n\tuniform float reflectivity;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\tuniform float flipEnvMap;\n\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\n\t\tuniform float refractionRatio;\n\n\t#else\n\n\t\tvarying vec3 vReflect;\n\n\t#endif\n\n#endif\n";THREE.ShaderChunk.envmap_pars_vertex="#if defined( USE_ENVMAP ) && ! defined( USE_BUMPMAP ) && ! defined( USE_NORMALMAP ) && ! defined( PHONG )\n\n\tvarying vec3 vReflect;\n\n\tuniform float refractionRatio;\n\n#endif\n";
+THREE.ShaderChunk.envmap_vertex="#if defined( USE_ENVMAP ) && ! defined( USE_BUMPMAP ) && ! defined( USE_NORMALMAP ) && ! defined( PHONG )\n\n\tvec3 cameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\n\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\n\t#ifdef ENVMAP_MODE_REFLECTION\n\n\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\n\t#else\n\n\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\n\t#endif\n\n#endif\n";
+THREE.ShaderChunk.fog_fragment="#ifdef USE_FOG\n\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\n\t\tfloat depth = gl_FragDepthEXT / gl_FragCoord.w;\n\n\t#else\n\n\t\tfloat depth = gl_FragCoord.z / gl_FragCoord.w;\n\n\t#endif\n\n\t#ifdef FOG_EXP2\n\n\t\tfloat fogFactor = whiteCompliment( exp2( - fogDensity * fogDensity * depth * depth * LOG2 ) );\n\n\t#else\n\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, depth );\n\n\t#endif\n\t\n\toutgoingLight = mix( outgoingLight, fogColor, fogFactor );\n\n#endif";
+THREE.ShaderChunk.fog_pars_fragment="#ifdef USE_FOG\n\n\tuniform vec3 fogColor;\n\n\t#ifdef FOG_EXP2\n\n\t\tuniform float fogDensity;\n\n\t#else\n\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n\n#endif";THREE.ShaderChunk.hemilight_fragment="#if MAX_HEMI_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_HEMI_LIGHTS; i ++ ) {\n\n\t\tvec3 lightDir = hemisphereLightDirection[ i ];\n\n\t\tfloat dotProduct = dot( normal, lightDir );\n\n\t\tfloat hemiDiffuseWeight = 0.5 * dotProduct + 0.5;\n\n\t\tvec3 lightColor = mix( hemisphereLightGroundColor[ i ], hemisphereLightSkyColor[ i ], hemiDiffuseWeight );\n\n\t\ttotalAmbientLight += lightColor;\n\n\t}\n\n#endif\n\n";
+THREE.ShaderChunk.lightmap_fragment="#ifdef USE_LIGHTMAP\n\n\ttotalAmbientLight += texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n\n#endif\n";THREE.ShaderChunk.lightmap_pars_fragment="#ifdef USE_LIGHTMAP\n\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n\n#endif";THREE.ShaderChunk.lights_lambert_pars_vertex="#if MAX_DIR_LIGHTS > 0\n\n\tuniform vec3 directionalLightColor[ MAX_DIR_LIGHTS ];\n\tuniform vec3 directionalLightDirection[ MAX_DIR_LIGHTS ];\n\n#endif\n\n#if MAX_HEMI_LIGHTS > 0\n\n\tuniform vec3 hemisphereLightSkyColor[ MAX_HEMI_LIGHTS ];\n\tuniform vec3 hemisphereLightGroundColor[ MAX_HEMI_LIGHTS ];\n\tuniform vec3 hemisphereLightDirection[ MAX_HEMI_LIGHTS ];\n\n#endif\n\n#if MAX_POINT_LIGHTS > 0\n\n\tuniform vec3 pointLightColor[ MAX_POINT_LIGHTS ];\n\tuniform vec3 pointLightPosition[ MAX_POINT_LIGHTS ];\n\tuniform float pointLightDistance[ MAX_POINT_LIGHTS ];\n\tuniform float pointLightDecay[ MAX_POINT_LIGHTS ];\n\n#endif\n\n#if MAX_SPOT_LIGHTS > 0\n\n\tuniform vec3 spotLightColor[ MAX_SPOT_LIGHTS ];\n\tuniform vec3 spotLightPosition[ MAX_SPOT_LIGHTS ];\n\tuniform vec3 spotLightDirection[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightDistance[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightAngleCos[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightExponent[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightDecay[ MAX_SPOT_LIGHTS ];\n\n#endif\n";
+THREE.ShaderChunk.lights_lambert_vertex="vLightFront = vec3( 0.0 );\n\n#ifdef DOUBLE_SIDED\n\n\tvLightBack = vec3( 0.0 );\n\n#endif\n\nvec3 normal = normalize( transformedNormal );\n\n#if MAX_POINT_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {\n\n\t\tvec3 lightColor = pointLightColor[ i ];\n\n\t\tvec3 lVector = pointLightPosition[ i ] - mvPosition.xyz;\n\t\tvec3 lightDir = normalize( lVector );\n\n\n\t\tfloat attenuation = calcLightAttenuation( length( lVector ), pointLightDistance[ i ], pointLightDecay[ i ] );\n\n\n\t\tfloat dotProduct = dot( normal, lightDir );\n\n\t\tvLightFront += lightColor * attenuation * saturate( dotProduct );\n\n\t\t#ifdef DOUBLE_SIDED\n\n\t\t\tvLightBack += lightColor * attenuation * saturate( - dotProduct );\n\n\t\t#endif\n\n\t}\n\n#endif\n\n#if MAX_SPOT_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_SPOT_LIGHTS; i ++ ) {\n\n\t\tvec3 lightColor = spotLightColor[ i ];\n\n\t\tvec3 lightPosition = spotLightPosition[ i ];\n\t\tvec3 lVector = lightPosition - mvPosition.xyz;\n\t\tvec3 lightDir = normalize( lVector );\n\n\t\tfloat spotEffect = dot( spotLightDirection[ i ], lightDir );\n\n\t\tif ( spotEffect > spotLightAngleCos[ i ] ) {\n\n\t\t\tspotEffect = saturate( pow( saturate( spotEffect ), spotLightExponent[ i ] ) );\n\n\n\t\t\tfloat attenuation = calcLightAttenuation( length( lVector ), spotLightDistance[ i ], spotLightDecay[ i ] );\n\n\t\t\tattenuation *= spotEffect;\n\n\n\t\t\tfloat dotProduct = dot( normal, lightDir );\n\n\t\t\tvLightFront += lightColor * attenuation * saturate( dotProduct );\n\n\t\t\t#ifdef DOUBLE_SIDED\n\n\t\t\t\tvLightBack += lightColor * attenuation * saturate( - dotProduct );\n\n\t\t\t#endif\n\n\t\t}\n\n\t}\n\n#endif\n\n#if MAX_DIR_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_DIR_LIGHTS; i ++ ) {\n\n\t\tvec3 lightColor = directionalLightColor[ i ];\n\n\t\tvec3 lightDir = directionalLightDirection[ i ];\n\n\n\t\tfloat dotProduct = dot( normal, lightDir );\n\n\t\tvLightFront += lightColor * saturate( dotProduct );\n\n\t\t#ifdef DOUBLE_SIDED\n\n\t\t\tvLightBack += lightColor * saturate( - dotProduct );\n\n\t\t#endif\n\n\t}\n\n#endif\n\n#if MAX_HEMI_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_HEMI_LIGHTS; i ++ ) {\n\n\t\tvec3 lightDir = hemisphereLightDirection[ i ];\n\n\n\t\tfloat dotProduct = dot( normal, lightDir );\n\n\t\tfloat hemiDiffuseWeight = 0.5 * dotProduct + 0.5;\n\n\t\tvLightFront += mix( hemisphereLightGroundColor[ i ], hemisphereLightSkyColor[ i ], hemiDiffuseWeight );\n\n\t\t#ifdef DOUBLE_SIDED\n\n\t\t\tfloat hemiDiffuseWeightBack = - 0.5 * dotProduct + 0.5;\n\n\t\t\tvLightBack += mix( hemisphereLightGroundColor[ i ], hemisphereLightSkyColor[ i ], hemiDiffuseWeightBack );\n\n\t\t#endif\n\n\t}\n\n#endif\n";
+THREE.ShaderChunk.lights_phong_fragment="vec3 viewDir = normalize( vViewPosition );\n\nvec3 totalDiffuseLight = vec3( 0.0 );\nvec3 totalSpecularLight = vec3( 0.0 );\n\n#if MAX_POINT_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {\n\n\t\tvec3 lightColor = pointLightColor[ i ];\n\n\t\tvec3 lightPosition = pointLightPosition[ i ];\n\t\tvec3 lVector = lightPosition + vViewPosition.xyz;\n\t\tvec3 lightDir = normalize( lVector );\n\n\n\t\tfloat attenuation = calcLightAttenuation( length( lVector ), pointLightDistance[ i ], pointLightDecay[ i ] );\n\n\n\t\tfloat cosineTerm = saturate( dot( normal, lightDir ) );\n\n\t\ttotalDiffuseLight += lightColor * attenuation * cosineTerm;\n\n\n\t\tvec3 brdf = BRDF_BlinnPhong( specular, shininess, normal, lightDir, viewDir );\n\n\t\ttotalSpecularLight += brdf * specularStrength * lightColor * attenuation * cosineTerm;\n\n\n\t}\n\n#endif\n\n#if MAX_SPOT_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_SPOT_LIGHTS; i ++ ) {\n\n\t\tvec3 lightColor = spotLightColor[ i ];\n\n\t\tvec3 lightPosition = spotLightPosition[ i ];\n\t\tvec3 lVector = lightPosition + vViewPosition.xyz;\n\t\tvec3 lightDir = normalize( lVector );\n\n\t\tfloat spotEffect = dot( spotLightDirection[ i ], lightDir );\n\n\t\tif ( spotEffect > spotLightAngleCos[ i ] ) {\n\n\t\t\tspotEffect = saturate( pow( saturate( spotEffect ), spotLightExponent[ i ] ) );\n\n\n\t\t\tfloat attenuation = calcLightAttenuation( length( lVector ), spotLightDistance[ i ], spotLightDecay[ i ] );\n\n\t\t\tattenuation *= spotEffect;\n\n\n\t\t\tfloat cosineTerm = saturate( dot( normal, lightDir ) );\n\n\t\t\ttotalDiffuseLight += lightColor * attenuation * cosineTerm;\n\n\n\t\t\tvec3 brdf = BRDF_BlinnPhong( specular, shininess, normal, lightDir, viewDir );\n\n\t\t\ttotalSpecularLight += brdf * specularStrength * lightColor * attenuation * cosineTerm;\n\n\t\t}\n\n\t}\n\n#endif\n\n#if MAX_DIR_LIGHTS > 0\n\n\tfor ( int i = 0; i < MAX_DIR_LIGHTS; i ++ ) {\n\n\t\tvec3 lightColor = directionalLightColor[ i ];\n\n\t\tvec3 lightDir = directionalLightDirection[ i ];\n\n\n\t\tfloat cosineTerm = saturate( dot( normal, lightDir ) );\n\n\t\ttotalDiffuseLight += lightColor * cosineTerm;\n\n\n\t\tvec3 brdf = BRDF_BlinnPhong( specular, shininess, normal, lightDir, viewDir );\n\n\t\ttotalSpecularLight += brdf * specularStrength * lightColor * cosineTerm;\n\n\t}\n\n#endif\n";
+THREE.ShaderChunk.lights_phong_pars_fragment="uniform vec3 ambientLightColor;\n\n#if MAX_DIR_LIGHTS > 0\n\n\tuniform vec3 directionalLightColor[ MAX_DIR_LIGHTS ];\n\tuniform vec3 directionalLightDirection[ MAX_DIR_LIGHTS ];\n\n#endif\n\n#if MAX_HEMI_LIGHTS > 0\n\n\tuniform vec3 hemisphereLightSkyColor[ MAX_HEMI_LIGHTS ];\n\tuniform vec3 hemisphereLightGroundColor[ MAX_HEMI_LIGHTS ];\n\tuniform vec3 hemisphereLightDirection[ MAX_HEMI_LIGHTS ];\n\n#endif\n\n#if MAX_POINT_LIGHTS > 0\n\n\tuniform vec3 pointLightColor[ MAX_POINT_LIGHTS ];\n\n\tuniform vec3 pointLightPosition[ MAX_POINT_LIGHTS ];\n\tuniform float pointLightDistance[ MAX_POINT_LIGHTS ];\n\tuniform float pointLightDecay[ MAX_POINT_LIGHTS ];\n\n#endif\n\n#if MAX_SPOT_LIGHTS > 0\n\n\tuniform vec3 spotLightColor[ MAX_SPOT_LIGHTS ];\n\tuniform vec3 spotLightPosition[ MAX_SPOT_LIGHTS ];\n\tuniform vec3 spotLightDirection[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightAngleCos[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightExponent[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightDistance[ MAX_SPOT_LIGHTS ];\n\tuniform float spotLightDecay[ MAX_SPOT_LIGHTS ];\n\n#endif\n\n#if MAX_SPOT_LIGHTS > 0 || defined( USE_ENVMAP )\n\n\tvarying vec3 vWorldPosition;\n\n#endif\n\nvarying vec3 vViewPosition;\n\n#ifndef FLAT_SHADED\n\n\tvarying vec3 vNormal;\n\n#endif\n";
+THREE.ShaderChunk.lights_phong_pars_vertex="#if MAX_SPOT_LIGHTS > 0 || defined( USE_ENVMAP )\n\n\tvarying vec3 vWorldPosition;\n\n#endif\n\n#if MAX_POINT_LIGHTS > 0\n\n\tuniform vec3 pointLightPosition[ MAX_POINT_LIGHTS ];\n\n#endif\n";THREE.ShaderChunk.lights_phong_vertex="#if MAX_SPOT_LIGHTS > 0 || defined( USE_ENVMAP )\n\n\tvWorldPosition = worldPosition.xyz;\n\n#endif\n";THREE.ShaderChunk.linear_to_gamma_fragment="\n\toutgoingLight = linearToOutput( outgoingLight );\n";
+THREE.ShaderChunk.logdepthbuf_fragment="#if defined(USE_LOGDEPTHBUF) && defined(USE_LOGDEPTHBUF_EXT)\n\n\tgl_FragDepthEXT = log2(vFragDepth) * logDepthBufFC * 0.5;\n\n#endif";THREE.ShaderChunk.logdepthbuf_pars_fragment="#ifdef USE_LOGDEPTHBUF\n\n\tuniform float logDepthBufFC;\n\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\n\t\tvarying float vFragDepth;\n\n\t#endif\n\n#endif\n";THREE.ShaderChunk.logdepthbuf_pars_vertex="#ifdef USE_LOGDEPTHBUF\n\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\n\t\tvarying float vFragDepth;\n\n\t#endif\n\n\tuniform float logDepthBufFC;\n\n#endif";
+THREE.ShaderChunk.logdepthbuf_vertex="#ifdef USE_LOGDEPTHBUF\n\n\tgl_Position.z = log2(max( EPSILON, gl_Position.w + 1.0 )) * logDepthBufFC;\n\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\n\t\tvFragDepth = 1.0 + gl_Position.w;\n\n#else\n\n\t\tgl_Position.z = (gl_Position.z - 1.0) * gl_Position.w;\n\n\t#endif\n\n#endif";THREE.ShaderChunk.map_fragment="#ifdef USE_MAP\n\n\tvec4 texelColor = texture2D( map, vUv );\n\n\ttexelColor.xyz = inputToLinear( texelColor.xyz );\n\n\tdiffuseColor *= texelColor;\n\n#endif\n";
+THREE.ShaderChunk.map_pars_fragment="#ifdef USE_MAP\n\n\tuniform sampler2D map;\n\n#endif";THREE.ShaderChunk.map_particle_fragment="#ifdef USE_MAP\n\n\tdiffuseColor *= texture2D( map, vec2( gl_PointCoord.x, 1.0 - gl_PointCoord.y ) * offsetRepeat.zw + offsetRepeat.xy );\n\n#endif\n";THREE.ShaderChunk.map_particle_pars_fragment="#ifdef USE_MAP\n\n\tuniform vec4 offsetRepeat;\n\tuniform sampler2D map;\n\n#endif\n";THREE.ShaderChunk.morphnormal_vertex="#ifdef USE_MORPHNORMALS\n\n\tobjectNormal += ( morphNormal0 - normal ) * morphTargetInfluences[ 0 ];\n\tobjectNormal += ( morphNormal1 - normal ) * morphTargetInfluences[ 1 ];\n\tobjectNormal += ( morphNormal2 - normal ) * morphTargetInfluences[ 2 ];\n\tobjectNormal += ( morphNormal3 - normal ) * morphTargetInfluences[ 3 ];\n\n#endif\n";
+THREE.ShaderChunk.morphtarget_pars_vertex="#ifdef USE_MORPHTARGETS\n\n\t#ifndef USE_MORPHNORMALS\n\n\tuniform float morphTargetInfluences[ 8 ];\n\n\t#else\n\n\tuniform float morphTargetInfluences[ 4 ];\n\n\t#endif\n\n#endif";THREE.ShaderChunk.morphtarget_vertex="#ifdef USE_MORPHTARGETS\n\n\ttransformed += ( morphTarget0 - position ) * morphTargetInfluences[ 0 ];\n\ttransformed += ( morphTarget1 - position ) * morphTargetInfluences[ 1 ];\n\ttransformed += ( morphTarget2 - position ) * morphTargetInfluences[ 2 ];\n\ttransformed += ( morphTarget3 - position ) * morphTargetInfluences[ 3 ];\n\n\t#ifndef USE_MORPHNORMALS\n\n\ttransformed += ( morphTarget4 - position ) * morphTargetInfluences[ 4 ];\n\ttransformed += ( morphTarget5 - position ) * morphTargetInfluences[ 5 ];\n\ttransformed += ( morphTarget6 - position ) * morphTargetInfluences[ 6 ];\n\ttransformed += ( morphTarget7 - position ) * morphTargetInfluences[ 7 ];\n\n\t#endif\n\n#endif\n";
+THREE.ShaderChunk.normal_phong_fragment="#ifndef FLAT_SHADED\n\n\tvec3 normal = normalize( vNormal );\n\n\t#ifdef DOUBLE_SIDED\n\n\t\tnormal = normal * ( -1.0 + 2.0 * float( gl_FrontFacing ) );\n\n\t#endif\n\n#else\n\n\tvec3 fdx = dFdx( vViewPosition );\n\tvec3 fdy = dFdy( vViewPosition );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n\n#endif\n\n#ifdef USE_NORMALMAP\n\n\tnormal = perturbNormal2Arb( -vViewPosition, normal );\n\n#elif defined( USE_BUMPMAP )\n\n\tnormal = perturbNormalArb( -vViewPosition, normal, dHdxy_fwd() );\n\n#endif\n\n";
+THREE.ShaderChunk.normalmap_pars_fragment="#ifdef USE_NORMALMAP\n\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n\n\n\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm ) {\n\n\t\tvec3 q0 = dFdx( eye_pos.xyz );\n\t\tvec3 q1 = dFdy( eye_pos.xyz );\n\t\tvec2 st0 = dFdx( vUv.st );\n\t\tvec2 st1 = dFdy( vUv.st );\n\n\t\tvec3 S = normalize( q0 * st1.t - q1 * st0.t );\n\t\tvec3 T = normalize( -q0 * st1.s + q1 * st0.s );\n\t\tvec3 N = normalize( surf_norm );\n\n\t\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t\tmapN.xy = normalScale * mapN.xy;\n\t\tmat3 tsn = mat3( S, T, N );\n\t\treturn normalize( tsn * mapN );\n\n\t}\n\n#endif\n";
+THREE.ShaderChunk.project_vertex="#ifdef USE_SKINNING\n\n\tvec4 mvPosition = modelViewMatrix * skinned;\n\n#else\n\n\tvec4 mvPosition = modelViewMatrix * vec4( transformed, 1.0 );\n\n#endif\n\ngl_Position = projectionMatrix * mvPosition;\n";THREE.ShaderChunk.shadowmap_fragment="#ifdef USE_SHADOWMAP\n\n\tfor ( int i = 0; i < MAX_SHADOWS; i ++ ) {\n\n\t\tfloat texelSizeY =  1.0 / shadowMapSize[ i ].y;\n\n\t\tfloat shadow = 0.0;\n\n#if defined( POINT_LIGHT_SHADOWS )\n\n\t\tbool isPointLight = shadowDarkness[ i ] < 0.0;\n\n\t\tif ( isPointLight ) {\n\n\t\t\tfloat realShadowDarkness = abs( shadowDarkness[ i ] );\n\n\t\t\tvec3 lightToPosition = vShadowCoord[ i ].xyz;\n\n\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT )\n\n\t\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t\tfloat dp = length( lightToPosition );\n\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D, texelSizeY ) ), shadowBias[ i ], shadow );\n\n\n\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tconst float Dr = 1.25;\n\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tconst float Dr = 2.25;\n\t#endif\n\n\t\t\tfloat os = Dr *  2.0 * texelSizeY;\n\n\t\t\tconst vec3 Gsd = vec3( - 1, 0, 1 );\n\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zzz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zxz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xxz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xzz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zzx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zxx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xxx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xzx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zzy * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zxy * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xxy * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xzy * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zyz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xyz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.zyx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.xyx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.yzz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.yxz * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.yxx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D + Gsd.yzx * os, texelSizeY ) ), shadowBias[ i ], shadow );\n\n\t\t\tshadow *= realShadowDarkness * ( 1.0 / 21.0 );\n\n\t#else \n\t\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t\tfloat dp = length( lightToPosition );\n\n\t\t\tadjustShadowValue1K( dp, texture2D( shadowMap[ i ], cubeToUV( bd3D, texelSizeY ) ), shadowBias[ i ], shadow );\n\n\t\t\tshadow *= realShadowDarkness;\n\n\t#endif\n\n\t\t} else {\n\n#endif \n\t\t\tfloat texelSizeX =  1.0 / shadowMapSize[ i ].x;\n\n\t\t\tvec3 shadowCoord = vShadowCoord[ i ].xyz / vShadowCoord[ i ].w;\n\n\n\t\t\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\n\t\t\tbool inFrustum = all( inFrustumVec );\n\n\t\t\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\n\n\t\t\tbool frustumTest = all( frustumTestVec );\n\n\t\t\tif ( frustumTest ) {\n\n\t#if defined( SHADOWMAP_TYPE_PCF )\n\n\n\t\t\t\t/*\n\t\t\t\t\tfor ( float y = -1.25; y <= 1.25; y += 1.25 )\n\t\t\t\t\t\tfor ( float x = -1.25; x <= 1.25; x += 1.25 ) {\n\t\t\t\t\t\t\tvec4 rgbaDepth = texture2D( shadowMap[ i ], vec2( x * xPixelOffset, y * yPixelOffset ) + shadowCoord.xy );\n\t\t\t\t\t\t\tfloat fDepth = unpackDepth( rgbaDepth );\n\t\t\t\t\t\t\tif ( fDepth < shadowCoord.z )\n\t\t\t\t\t\t\t\tshadow += 1.0;\n\t\t\t\t\t}\n\t\t\t\t\tshadow /= 9.0;\n\t\t\t\t*/\n\n\t\t\t\tshadowCoord.z += shadowBias[ i ];\n\n\t\t\t\tconst float ShadowDelta = 1.0 / 9.0;\n\n\t\t\t\tfloat xPixelOffset = texelSizeX;\n\t\t\t\tfloat yPixelOffset = texelSizeY;\n\n\t\t\t\tfloat dx0 = - 1.25 * xPixelOffset;\n\t\t\t\tfloat dy0 = - 1.25 * yPixelOffset;\n\t\t\t\tfloat dx1 = 1.25 * xPixelOffset;\n\t\t\t\tfloat dy1 = 1.25 * yPixelOffset;\n\n\t\t\t\tfloat fDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx0, dy0 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( 0.0, dy0 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx1, dy0 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx0, 0.0 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx1, 0.0 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx0, dy1 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( 0.0, dy1 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tfDepth = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx1, dy1 ) ) );\n\t\t\t\tif ( fDepth < shadowCoord.z ) shadow += ShadowDelta;\n\n\t\t\t\tshadow *= shadowDarkness[ i ];\n\n\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\n\n\t\t\t\tshadowCoord.z += shadowBias[ i ];\n\n\t\t\t\tfloat xPixelOffset = texelSizeX;\n\t\t\t\tfloat yPixelOffset = texelSizeY;\n\n\t\t\t\tfloat dx0 = - 1.0 * xPixelOffset;\n\t\t\t\tfloat dy0 = - 1.0 * yPixelOffset;\n\t\t\t\tfloat dx1 = 1.0 * xPixelOffset;\n\t\t\t\tfloat dy1 = 1.0 * yPixelOffset;\n\n\t\t\t\tmat3 shadowKernel;\n\t\t\t\tmat3 depthKernel;\n\n\t\t\t\tdepthKernel[ 0 ][ 0 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx0, dy0 ) ) );\n\t\t\t\tdepthKernel[ 0 ][ 1 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx0, 0.0 ) ) );\n\t\t\t\tdepthKernel[ 0 ][ 2 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx0, dy1 ) ) );\n\t\t\t\tdepthKernel[ 1 ][ 0 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( 0.0, dy0 ) ) );\n\t\t\t\tdepthKernel[ 1 ][ 1 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy ) );\n\t\t\t\tdepthKernel[ 1 ][ 2 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( 0.0, dy1 ) ) );\n\t\t\t\tdepthKernel[ 2 ][ 0 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx1, dy0 ) ) );\n\t\t\t\tdepthKernel[ 2 ][ 1 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx1, 0.0 ) ) );\n\t\t\t\tdepthKernel[ 2 ][ 2 ] = unpackDepth( texture2D( shadowMap[ i ], shadowCoord.xy + vec2( dx1, dy1 ) ) );\n\n\t\t\t\tvec3 shadowZ = vec3( shadowCoord.z );\n\t\t\t\tshadowKernel[ 0 ] = vec3( lessThan( depthKernel[ 0 ], shadowZ ) );\n\t\t\t\tshadowKernel[ 0 ] *= vec3( 0.25 );\n\n\t\t\t\tshadowKernel[ 1 ] = vec3( lessThan( depthKernel[ 1 ], shadowZ ) );\n\t\t\t\tshadowKernel[ 1 ] *= vec3( 0.25 );\n\n\t\t\t\tshadowKernel[ 2 ] = vec3( lessThan( depthKernel[ 2 ], shadowZ ) );\n\t\t\t\tshadowKernel[ 2 ] *= vec3( 0.25 );\n\n\t\t\t\tvec2 fractionalCoord = 1.0 - fract( shadowCoord.xy * shadowMapSize[ i ].xy );\n\n\t\t\t\tshadowKernel[ 0 ] = mix( shadowKernel[ 1 ], shadowKernel[ 0 ], fractionalCoord.x );\n\t\t\t\tshadowKernel[ 1 ] = mix( shadowKernel[ 2 ], shadowKernel[ 1 ], fractionalCoord.x );\n\n\t\t\t\tvec4 shadowValues;\n\t\t\t\tshadowValues.x = mix( shadowKernel[ 0 ][ 1 ], shadowKernel[ 0 ][ 0 ], fractionalCoord.y );\n\t\t\t\tshadowValues.y = mix( shadowKernel[ 0 ][ 2 ], shadowKernel[ 0 ][ 1 ], fractionalCoord.y );\n\t\t\t\tshadowValues.z = mix( shadowKernel[ 1 ][ 1 ], shadowKernel[ 1 ][ 0 ], fractionalCoord.y );\n\t\t\t\tshadowValues.w = mix( shadowKernel[ 1 ][ 2 ], shadowKernel[ 1 ][ 1 ], fractionalCoord.y );\n\n\t\t\t\tshadow = dot( shadowValues, vec4( 1.0 ) ) * shadowDarkness[ i ];\n\n\t#else \n\t\t\t\tshadowCoord.z += shadowBias[ i ];\n\n\t\t\t\tvec4 rgbaDepth = texture2D( shadowMap[ i ], shadowCoord.xy );\n\t\t\t\tfloat fDepth = unpackDepth( rgbaDepth );\n\n\t\t\t\tif ( fDepth < shadowCoord.z )\n\t\t\t\t\tshadow = shadowDarkness[ i ];\n\n\t#endif\n\n\t\t\t}\n\n#ifdef SHADOWMAP_DEBUG\n\n\t\t\tif ( inFrustum ) {\n\n\t\t\t\tif ( i == 0 ) {\n\n\t\t\t\t\toutgoingLight *= vec3( 1.0, 0.5, 0.0 );\n\n\t\t\t\t} else if ( i == 1 ) {\n\n\t\t\t\t\toutgoingLight *= vec3( 0.0, 1.0, 0.8 );\n\n\t\t\t\t} else {\n\n\t\t\t\t\toutgoingLight *= vec3( 0.0, 0.5, 1.0 );\n\n\t\t\t\t}\n\n\t\t\t}\n\n#endif\n\n#if defined( POINT_LIGHT_SHADOWS )\n\n\t\t}\n\n#endif\n\n\t\tshadowMask = shadowMask * vec3( 1.0 - shadow );\n\n\t}\n\n#endif\n";
+THREE.ShaderChunk.shadowmap_pars_fragment="#ifdef USE_SHADOWMAP\n\n\tuniform sampler2D shadowMap[ MAX_SHADOWS ];\n\tuniform vec2 shadowMapSize[ MAX_SHADOWS ];\n\n\tuniform float shadowDarkness[ MAX_SHADOWS ];\n\tuniform float shadowBias[ MAX_SHADOWS ];\n\n\tvarying vec4 vShadowCoord[ MAX_SHADOWS ];\n\n\tfloat unpackDepth( const in vec4 rgba_depth ) {\n\n\t\tconst vec4 bit_shift = vec4( 1.0 / ( 256.0 * 256.0 * 256.0 ), 1.0 / ( 256.0 * 256.0 ), 1.0 / 256.0, 1.0 );\n\t\tfloat depth = dot( rgba_depth, bit_shift );\n\t\treturn depth;\n\n\t}\n\n\t#if defined(POINT_LIGHT_SHADOWS)\n\n\n\t\tvoid adjustShadowValue1K( const float testDepth, const vec4 textureData, const float bias, inout float shadowValue ) {\n\n\t\t\tconst vec4 bitSh = vec4( 1.0 / ( 256.0 * 256.0 * 256.0 ), 1.0 / ( 256.0 * 256.0 ), 1.0 / 256.0, 1.0 );\n\t\t\tif ( testDepth >= dot( textureData, bitSh ) * 1000.0 + bias )\n\t\t\t\tshadowValue += 1.0;\n\n\t\t}\n\n\n\t\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\n\n\t\t\tvec3 absV = abs( v );\n\n\n\t\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\t\tabsV *= scaleToCube;\n\n\n\t\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\n\n\n\t\t\tvec2 planar = v.xy;\n\n\t\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\t\tfloat almostOne = 1.0 - almostATexel;\n\n\t\t\tif ( absV.z >= almostOne ) {\n\n\t\t\t\tif ( v.z > 0.0 )\n\t\t\t\t\tplanar.x = 4.0 - v.x;\n\n\t\t\t} else if ( absV.x >= almostOne ) {\n\n\t\t\t\tfloat signX = sign( v.x );\n\t\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\n\t\t\t} else if ( absV.y >= almostOne ) {\n\n\t\t\t\tfloat signY = sign( v.y );\n\t\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\t\tplanar.y = v.z * signY - 2.0;\n\n\t\t\t}\n\n\n\t\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\n\t\t}\n\n\t#endif\n\n#endif\n";
+THREE.ShaderChunk.shadowmap_pars_vertex="#ifdef USE_SHADOWMAP\n\n\tuniform float shadowDarkness[ MAX_SHADOWS ];\n\tuniform mat4 shadowMatrix[ MAX_SHADOWS ];\n\tvarying vec4 vShadowCoord[ MAX_SHADOWS ];\n\n#endif";THREE.ShaderChunk.shadowmap_vertex="#ifdef USE_SHADOWMAP\n\n\tfor ( int i = 0; i < MAX_SHADOWS; i ++ ) {\n\n\t\t\tvShadowCoord[ i ] = shadowMatrix[ i ] * worldPosition;\n\n\t}\n\n#endif";THREE.ShaderChunk.skinbase_vertex="#ifdef USE_SKINNING\n\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n\n#endif";
+THREE.ShaderChunk.skinning_pars_vertex="#ifdef USE_SKINNING\n\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\n\t#ifdef BONE_TEXTURE\n\n\t\tuniform sampler2D boneTexture;\n\t\tuniform int boneTextureWidth;\n\t\tuniform int boneTextureHeight;\n\n\t\tmat4 getBoneMatrix( const in float i ) {\n\n\t\t\tfloat j = i * 4.0;\n\t\t\tfloat x = mod( j, float( boneTextureWidth ) );\n\t\t\tfloat y = floor( j / float( boneTextureWidth ) );\n\n\t\t\tfloat dx = 1.0 / float( boneTextureWidth );\n\t\t\tfloat dy = 1.0 / float( boneTextureHeight );\n\n\t\t\ty = dy * ( y + 0.5 );\n\n\t\t\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\n\t\t\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\n\t\t\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\n\t\t\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\n\n\t\t\tmat4 bone = mat4( v1, v2, v3, v4 );\n\n\t\t\treturn bone;\n\n\t\t}\n\n\t#else\n\n\t\tuniform mat4 boneGlobalMatrices[ MAX_BONES ];\n\n\t\tmat4 getBoneMatrix( const in float i ) {\n\n\t\t\tmat4 bone = boneGlobalMatrices[ int(i) ];\n\t\t\treturn bone;\n\n\t\t}\n\n\t#endif\n\n#endif\n";
+THREE.ShaderChunk.skinning_vertex="#ifdef USE_SKINNING\n\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\tskinned  = bindMatrixInverse * skinned;\n\n#endif\n";THREE.ShaderChunk.skinnormal_vertex="#ifdef USE_SKINNING\n\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix  = bindMatrixInverse * skinMatrix * bindMatrix;\n\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\n#endif\n";
+THREE.ShaderChunk.specularmap_fragment="float specularStrength;\n\n#ifdef USE_SPECULARMAP\n\n\tvec4 texelSpecular = texture2D( specularMap, vUv );\n\tspecularStrength = texelSpecular.r;\n\n#else\n\n\tspecularStrength = 1.0;\n\n#endif";THREE.ShaderChunk.specularmap_pars_fragment="#ifdef USE_SPECULARMAP\n\n\tuniform sampler2D specularMap;\n\n#endif";THREE.ShaderChunk.uv2_pars_fragment="#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\n\tvarying vec2 vUv2;\n\n#endif";
+THREE.ShaderChunk.uv2_pars_vertex="#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\n\tattribute vec2 uv2;\n\tvarying vec2 vUv2;\n\n#endif";THREE.ShaderChunk.uv2_vertex="#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\n\tvUv2 = uv2;\n\n#endif";THREE.ShaderChunk.uv_pars_fragment="#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP )\n\n\tvarying vec2 vUv;\n\n#endif";
+THREE.ShaderChunk.uv_pars_vertex="#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP )\n\n\tvarying vec2 vUv;\n\tuniform vec4 offsetRepeat;\n\n#endif\n";THREE.ShaderChunk.uv_vertex="#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP )\n\n\tvUv = uv * offsetRepeat.zw + offsetRepeat.xy;\n\n#endif";
+THREE.ShaderChunk.worldpos_vertex="#if defined( USE_ENVMAP ) || defined( PHONG ) || defined( LAMBERT ) || defined ( USE_SHADOWMAP )\n\n\t#ifdef USE_SKINNING\n\n\t\tvec4 worldPosition = modelMatrix * skinned;\n\n\t#else\n\n\t\tvec4 worldPosition = modelMatrix * vec4( transformed, 1.0 );\n\n\t#endif\n\n#endif\n";
+THREE.UniformsUtils={merge:function(a){for(var b={},c=0;c<a.length;c++){var d=this.clone(a[c]),e;for(e in d)b[e]=d[e]}return b},clone:function(a){var b={},c;for(c in a){b[c]={};for(var d in a[c]){var e=a[c][d];e instanceof THREE.Color||e instanceof THREE.Vector2||e instanceof THREE.Vector3||e instanceof THREE.Vector4||e instanceof THREE.Matrix3||e instanceof THREE.Matrix4||e instanceof THREE.Texture?b[c][d]=e.clone():Array.isArray(e)?b[c][d]=e.slice():b[c][d]=e}}return b}};
+THREE.UniformsLib={common:{diffuse:{type:"c",value:new THREE.Color(15658734)},opacity:{type:"f",value:1},map:{type:"t",value:null},offsetRepeat:{type:"v4",value:new THREE.Vector4(0,0,1,1)},specularMap:{type:"t",value:null},alphaMap:{type:"t",value:null},envMap:{type:"t",value:null},flipEnvMap:{type:"f",value:-1},reflectivity:{type:"f",value:1},refractionRatio:{type:"f",value:.98}},aomap:{aoMap:{type:"t",value:null},aoMapIntensity:{type:"f",value:1}},lightmap:{lightMap:{type:"t",value:null},lightMapIntensity:{type:"f",
+value:1}},emissivemap:{emissiveMap:{type:"t",value:null}},bumpmap:{bumpMap:{type:"t",value:null},bumpScale:{type:"f",value:1}},normalmap:{normalMap:{type:"t",value:null},normalScale:{type:"v2",value:new THREE.Vector2(1,1)}},displacementmap:{displacementMap:{type:"t",value:null},displacementScale:{type:"f",value:1},displacementBias:{type:"f",value:0}},fog:{fogDensity:{type:"f",value:2.5E-4},fogNear:{type:"f",value:1},fogFar:{type:"f",value:2E3},fogColor:{type:"c",value:new THREE.Color(16777215)}},
+lights:{ambientLightColor:{type:"fv",value:[]},directionalLightDirection:{type:"fv",value:[]},directionalLightColor:{type:"fv",value:[]},hemisphereLightDirection:{type:"fv",value:[]},hemisphereLightSkyColor:{type:"fv",value:[]},hemisphereLightGroundColor:{type:"fv",value:[]},pointLightColor:{type:"fv",value:[]},pointLightPosition:{type:"fv",value:[]},pointLightDistance:{type:"fv1",value:[]},pointLightDecay:{type:"fv1",value:[]},spotLightColor:{type:"fv",value:[]},spotLightPosition:{type:"fv",value:[]},
+spotLightDirection:{type:"fv",value:[]},spotLightDistance:{type:"fv1",value:[]},spotLightAngleCos:{type:"fv1",value:[]},spotLightExponent:{type:"fv1",value:[]},spotLightDecay:{type:"fv1",value:[]}},points:{psColor:{type:"c",value:new THREE.Color(15658734)},opacity:{type:"f",value:1},size:{type:"f",value:1},scale:{type:"f",value:1},map:{type:"t",value:null},offsetRepeat:{type:"v4",value:new THREE.Vector4(0,0,1,1)},fogDensity:{type:"f",value:2.5E-4},fogNear:{type:"f",value:1},fogFar:{type:"f",value:2E3},
+fogColor:{type:"c",value:new THREE.Color(16777215)}},shadowmap:{shadowMap:{type:"tv",value:[]},shadowMapSize:{type:"v2v",value:[]},shadowBias:{type:"fv1",value:[]},shadowDarkness:{type:"fv1",value:[]},shadowMatrix:{type:"m4v",value:[]}}};
+THREE.ShaderLib={basic:{uniforms:THREE.UniformsUtils.merge([THREE.UniformsLib.common,THREE.UniformsLib.aomap,THREE.UniformsLib.fog,THREE.UniformsLib.shadowmap]),vertexShader:[THREE.ShaderChunk.common,THREE.ShaderChunk.uv_pars_vertex,THREE.ShaderChunk.uv2_pars_vertex,THREE.ShaderChunk.envmap_pars_vertex,THREE.ShaderChunk.color_pars_vertex,THREE.ShaderChunk.morphtarget_pars_vertex,THREE.ShaderChunk.skinning_pars_vertex,THREE.ShaderChunk.shadowmap_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,
+"void main() {",THREE.ShaderChunk.uv_vertex,THREE.ShaderChunk.uv2_vertex,THREE.ShaderChunk.color_vertex,THREE.ShaderChunk.skinbase_vertex,"\t#ifdef USE_ENVMAP",THREE.ShaderChunk.beginnormal_vertex,THREE.ShaderChunk.morphnormal_vertex,THREE.ShaderChunk.skinnormal_vertex,THREE.ShaderChunk.defaultnormal_vertex,"\t#endif",THREE.ShaderChunk.begin_vertex,THREE.ShaderChunk.morphtarget_vertex,THREE.ShaderChunk.skinning_vertex,THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.logdepthbuf_vertex,THREE.ShaderChunk.worldpos_vertex,
+THREE.ShaderChunk.envmap_vertex,THREE.ShaderChunk.shadowmap_vertex,"}"].join("\n"),fragmentShader:["uniform vec3 diffuse;\nuniform float opacity;",THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_fragment,THREE.ShaderChunk.uv_pars_fragment,THREE.ShaderChunk.uv2_pars_fragment,THREE.ShaderChunk.map_pars_fragment,THREE.ShaderChunk.alphamap_pars_fragment,THREE.ShaderChunk.aomap_pars_fragment,THREE.ShaderChunk.envmap_pars_fragment,THREE.ShaderChunk.fog_pars_fragment,THREE.ShaderChunk.shadowmap_pars_fragment,
+THREE.ShaderChunk.specularmap_pars_fragment,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tvec3 totalAmbientLight = vec3( 1.0 );\n\tvec3 shadowMask = vec3( 1.0 );",THREE.ShaderChunk.logdepthbuf_fragment,THREE.ShaderChunk.map_fragment,THREE.ShaderChunk.color_fragment,THREE.ShaderChunk.alphamap_fragment,THREE.ShaderChunk.alphatest_fragment,THREE.ShaderChunk.specularmap_fragment,THREE.ShaderChunk.aomap_fragment,
+THREE.ShaderChunk.shadowmap_fragment,"\toutgoingLight = diffuseColor.rgb * totalAmbientLight * shadowMask;",THREE.ShaderChunk.envmap_fragment,THREE.ShaderChunk.linear_to_gamma_fragment,THREE.ShaderChunk.fog_fragment,"\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n}"].join("\n")},lambert:{uniforms:THREE.UniformsUtils.merge([THREE.UniformsLib.common,THREE.UniformsLib.fog,THREE.UniformsLib.lights,THREE.UniformsLib.shadowmap,{emissive:{type:"c",value:new THREE.Color(0)}}]),vertexShader:["#define LAMBERT\nvarying vec3 vLightFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n#endif",
+THREE.ShaderChunk.common,THREE.ShaderChunk.uv_pars_vertex,THREE.ShaderChunk.uv2_pars_vertex,THREE.ShaderChunk.envmap_pars_vertex,THREE.ShaderChunk.lights_lambert_pars_vertex,THREE.ShaderChunk.color_pars_vertex,THREE.ShaderChunk.morphtarget_pars_vertex,THREE.ShaderChunk.skinning_pars_vertex,THREE.ShaderChunk.shadowmap_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {",THREE.ShaderChunk.uv_vertex,THREE.ShaderChunk.uv2_vertex,THREE.ShaderChunk.color_vertex,THREE.ShaderChunk.beginnormal_vertex,
+THREE.ShaderChunk.morphnormal_vertex,THREE.ShaderChunk.skinbase_vertex,THREE.ShaderChunk.skinnormal_vertex,THREE.ShaderChunk.defaultnormal_vertex,THREE.ShaderChunk.begin_vertex,THREE.ShaderChunk.morphtarget_vertex,THREE.ShaderChunk.skinning_vertex,THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.logdepthbuf_vertex,THREE.ShaderChunk.worldpos_vertex,THREE.ShaderChunk.envmap_vertex,THREE.ShaderChunk.lights_lambert_vertex,THREE.ShaderChunk.shadowmap_vertex,"}"].join("\n"),fragmentShader:["uniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\nuniform vec3 ambientLightColor;\nvarying vec3 vLightFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n#endif",
+THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_fragment,THREE.ShaderChunk.uv_pars_fragment,THREE.ShaderChunk.uv2_pars_fragment,THREE.ShaderChunk.map_pars_fragment,THREE.ShaderChunk.alphamap_pars_fragment,THREE.ShaderChunk.envmap_pars_fragment,THREE.ShaderChunk.fog_pars_fragment,THREE.ShaderChunk.shadowmap_pars_fragment,THREE.ShaderChunk.specularmap_pars_fragment,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tvec3 totalAmbientLight = ambientLightColor;\n\tvec3 shadowMask = vec3( 1.0 );",
+THREE.ShaderChunk.logdepthbuf_fragment,THREE.ShaderChunk.map_fragment,THREE.ShaderChunk.color_fragment,THREE.ShaderChunk.alphamap_fragment,THREE.ShaderChunk.alphatest_fragment,THREE.ShaderChunk.specularmap_fragment,THREE.ShaderChunk.shadowmap_fragment,"\t#ifdef DOUBLE_SIDED\n\t\tif ( gl_FrontFacing )\n\t\t\toutgoingLight += diffuseColor.rgb * ( vLightFront * shadowMask + totalAmbientLight ) + emissive;\n\t\telse\n\t\t\toutgoingLight += diffuseColor.rgb * ( vLightBack * shadowMask + totalAmbientLight ) + emissive;\n\t#else\n\t\toutgoingLight += diffuseColor.rgb * ( vLightFront * shadowMask + totalAmbientLight ) + emissive;\n\t#endif",
+THREE.ShaderChunk.envmap_fragment,THREE.ShaderChunk.linear_to_gamma_fragment,THREE.ShaderChunk.fog_fragment,"\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n}"].join("\n")},phong:{uniforms:THREE.UniformsUtils.merge([THREE.UniformsLib.common,THREE.UniformsLib.aomap,THREE.UniformsLib.lightmap,THREE.UniformsLib.emissivemap,THREE.UniformsLib.bumpmap,THREE.UniformsLib.normalmap,THREE.UniformsLib.displacementmap,THREE.UniformsLib.fog,THREE.UniformsLib.lights,THREE.UniformsLib.shadowmap,{emissive:{type:"c",
+value:new THREE.Color(0)},specular:{type:"c",value:new THREE.Color(1118481)},shininess:{type:"f",value:30}}]),vertexShader:["#define PHONG\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif",THREE.ShaderChunk.common,THREE.ShaderChunk.uv_pars_vertex,THREE.ShaderChunk.uv2_pars_vertex,THREE.ShaderChunk.displacementmap_pars_vertex,THREE.ShaderChunk.envmap_pars_vertex,THREE.ShaderChunk.lights_phong_pars_vertex,THREE.ShaderChunk.color_pars_vertex,THREE.ShaderChunk.morphtarget_pars_vertex,
+THREE.ShaderChunk.skinning_pars_vertex,THREE.ShaderChunk.shadowmap_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {",THREE.ShaderChunk.uv_vertex,THREE.ShaderChunk.uv2_vertex,THREE.ShaderChunk.color_vertex,THREE.ShaderChunk.beginnormal_vertex,THREE.ShaderChunk.morphnormal_vertex,THREE.ShaderChunk.skinbase_vertex,THREE.ShaderChunk.skinnormal_vertex,THREE.ShaderChunk.defaultnormal_vertex,"#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n#endif",THREE.ShaderChunk.begin_vertex,
+THREE.ShaderChunk.displacementmap_vertex,THREE.ShaderChunk.morphtarget_vertex,THREE.ShaderChunk.skinning_vertex,THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.logdepthbuf_vertex,"\tvViewPosition = - mvPosition.xyz;",THREE.ShaderChunk.worldpos_vertex,THREE.ShaderChunk.envmap_vertex,THREE.ShaderChunk.lights_phong_vertex,THREE.ShaderChunk.shadowmap_vertex,"}"].join("\n"),fragmentShader:["#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;",
+THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_fragment,THREE.ShaderChunk.uv_pars_fragment,THREE.ShaderChunk.uv2_pars_fragment,THREE.ShaderChunk.map_pars_fragment,THREE.ShaderChunk.alphamap_pars_fragment,THREE.ShaderChunk.aomap_pars_fragment,THREE.ShaderChunk.lightmap_pars_fragment,THREE.ShaderChunk.emissivemap_pars_fragment,THREE.ShaderChunk.envmap_pars_fragment,THREE.ShaderChunk.fog_pars_fragment,THREE.ShaderChunk.lights_phong_pars_fragment,THREE.ShaderChunk.shadowmap_pars_fragment,THREE.ShaderChunk.bumpmap_pars_fragment,
+THREE.ShaderChunk.normalmap_pars_fragment,THREE.ShaderChunk.specularmap_pars_fragment,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tvec3 totalAmbientLight = ambientLightColor;\n\tvec3 totalEmissiveLight = emissive;\n\tvec3 shadowMask = vec3( 1.0 );",THREE.ShaderChunk.logdepthbuf_fragment,THREE.ShaderChunk.map_fragment,THREE.ShaderChunk.color_fragment,THREE.ShaderChunk.alphamap_fragment,THREE.ShaderChunk.alphatest_fragment,
+THREE.ShaderChunk.specularmap_fragment,THREE.ShaderChunk.normal_phong_fragment,THREE.ShaderChunk.lightmap_fragment,THREE.ShaderChunk.hemilight_fragment,THREE.ShaderChunk.aomap_fragment,THREE.ShaderChunk.emissivemap_fragment,THREE.ShaderChunk.lights_phong_fragment,THREE.ShaderChunk.shadowmap_fragment,"totalDiffuseLight *= shadowMask;\ntotalSpecularLight *= shadowMask;\n#ifdef METAL\n\toutgoingLight += diffuseColor.rgb * ( totalDiffuseLight + totalAmbientLight ) * specular + totalSpecularLight + totalEmissiveLight;\n#else\n\toutgoingLight += diffuseColor.rgb * ( totalDiffuseLight + totalAmbientLight ) + totalSpecularLight + totalEmissiveLight;\n#endif",
+THREE.ShaderChunk.envmap_fragment,THREE.ShaderChunk.linear_to_gamma_fragment,THREE.ShaderChunk.fog_fragment,"\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n}"].join("\n")},points:{uniforms:THREE.UniformsUtils.merge([THREE.UniformsLib.points,THREE.UniformsLib.shadowmap]),vertexShader:["uniform float size;\nuniform float scale;",THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_vertex,THREE.ShaderChunk.shadowmap_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {",THREE.ShaderChunk.color_vertex,
+"\tvec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\n\t#ifdef USE_SIZEATTENUATION\n\t\tgl_PointSize = size * ( scale / length( mvPosition.xyz ) );\n\t#else\n\t\tgl_PointSize = size;\n\t#endif\n\tgl_Position = projectionMatrix * mvPosition;",THREE.ShaderChunk.logdepthbuf_vertex,THREE.ShaderChunk.worldpos_vertex,THREE.ShaderChunk.shadowmap_vertex,"}"].join("\n"),fragmentShader:["uniform vec3 psColor;\nuniform float opacity;",THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_fragment,THREE.ShaderChunk.map_particle_pars_fragment,
+THREE.ShaderChunk.fog_pars_fragment,THREE.ShaderChunk.shadowmap_pars_fragment,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( psColor, opacity );\n\tvec3 shadowMask = vec3( 1.0 );",THREE.ShaderChunk.logdepthbuf_fragment,THREE.ShaderChunk.map_particle_fragment,THREE.ShaderChunk.color_fragment,THREE.ShaderChunk.alphatest_fragment,THREE.ShaderChunk.shadowmap_fragment,"\toutgoingLight = diffuseColor.rgb * shadowMask;",THREE.ShaderChunk.fog_fragment,
+"\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n}"].join("\n")},dashed:{uniforms:THREE.UniformsUtils.merge([THREE.UniformsLib.common,THREE.UniformsLib.fog,{scale:{type:"f",value:1},dashSize:{type:"f",value:1},totalSize:{type:"f",value:2}}]),vertexShader:["uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;",THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {",THREE.ShaderChunk.color_vertex,"\tvLineDistance = scale * lineDistance;\n\tvec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\n\tgl_Position = projectionMatrix * mvPosition;",
+THREE.ShaderChunk.logdepthbuf_vertex,"}"].join("\n"),fragmentShader:["uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;",THREE.ShaderChunk.common,THREE.ShaderChunk.color_pars_fragment,THREE.ShaderChunk.fog_pars_fragment,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );",
+THREE.ShaderChunk.logdepthbuf_fragment,THREE.ShaderChunk.color_fragment,"\toutgoingLight = diffuseColor.rgb;",THREE.ShaderChunk.fog_fragment,"\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n}"].join("\n")},depth:{uniforms:{mNear:{type:"f",value:1},mFar:{type:"f",value:2E3},opacity:{type:"f",value:1}},vertexShader:[THREE.ShaderChunk.common,THREE.ShaderChunk.morphtarget_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {",THREE.ShaderChunk.begin_vertex,THREE.ShaderChunk.morphtarget_vertex,
+THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.logdepthbuf_vertex,"}"].join("\n"),fragmentShader:["uniform float mNear;\nuniform float mFar;\nuniform float opacity;",THREE.ShaderChunk.common,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {",THREE.ShaderChunk.logdepthbuf_fragment,"\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tfloat depth = gl_FragDepthEXT / gl_FragCoord.w;\n\t#else\n\t\tfloat depth = gl_FragCoord.z / gl_FragCoord.w;\n\t#endif\n\tfloat color = 1.0 - smoothstep( mNear, mFar, depth );\n\tgl_FragColor = vec4( vec3( color ), opacity );\n}"].join("\n")},
+normal:{uniforms:{opacity:{type:"f",value:1}},vertexShader:["varying vec3 vNormal;",THREE.ShaderChunk.common,THREE.ShaderChunk.morphtarget_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {\n\tvNormal = normalize( normalMatrix * normal );",THREE.ShaderChunk.begin_vertex,THREE.ShaderChunk.morphtarget_vertex,THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.logdepthbuf_vertex,"}"].join("\n"),fragmentShader:["uniform float opacity;\nvarying vec3 vNormal;",THREE.ShaderChunk.common,
+THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tgl_FragColor = vec4( 0.5 * normalize( vNormal ) + 0.5, opacity );",THREE.ShaderChunk.logdepthbuf_fragment,"}"].join("\n")},cube:{uniforms:{tCube:{type:"t",value:null},tFlip:{type:"f",value:-1}},vertexShader:["varying vec3 vWorldPosition;",THREE.ShaderChunk.common,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {\n\tvWorldPosition = transformDirection( position, modelMatrix );\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );",
+THREE.ShaderChunk.logdepthbuf_vertex,"}"].join("\n"),fragmentShader:["uniform samplerCube tCube;\nuniform float tFlip;\nvarying vec3 vWorldPosition;",THREE.ShaderChunk.common,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\n\tgl_FragColor = textureCube( tCube, vec3( tFlip * vWorldPosition.x, vWorldPosition.yz ) );",THREE.ShaderChunk.logdepthbuf_fragment,"}"].join("\n")},equirect:{uniforms:{tEquirect:{type:"t",value:null},tFlip:{type:"f",value:-1}},vertexShader:["varying vec3 vWorldPosition;",
+THREE.ShaderChunk.common,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {\n\tvWorldPosition = transformDirection( position, modelMatrix );\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );",THREE.ShaderChunk.logdepthbuf_vertex,"}"].join("\n"),fragmentShader:["uniform sampler2D tEquirect;\nuniform float tFlip;\nvarying vec3 vWorldPosition;",THREE.ShaderChunk.common,THREE.ShaderChunk.logdepthbuf_pars_fragment,"void main() {\nvec3 direction = normalize( vWorldPosition );\nvec2 sampleUV;\nsampleUV.y = saturate( tFlip * direction.y * -0.5 + 0.5 );\nsampleUV.x = atan( direction.z, direction.x ) * RECIPROCAL_PI2 + 0.5;\ngl_FragColor = texture2D( tEquirect, sampleUV );",
+THREE.ShaderChunk.logdepthbuf_fragment,"}"].join("\n")},depthRGBA:{uniforms:{},vertexShader:[THREE.ShaderChunk.common,THREE.ShaderChunk.morphtarget_pars_vertex,THREE.ShaderChunk.skinning_pars_vertex,THREE.ShaderChunk.logdepthbuf_pars_vertex,"void main() {",THREE.ShaderChunk.skinbase_vertex,THREE.ShaderChunk.begin_vertex,THREE.ShaderChunk.morphtarget_vertex,THREE.ShaderChunk.skinning_vertex,THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.logdepthbuf_vertex,"}"].join("\n"),fragmentShader:[THREE.ShaderChunk.common,
+THREE.ShaderChunk.logdepthbuf_pars_fragment,"vec4 pack_depth( const in float depth ) {\n\tconst vec4 bit_shift = vec4( 256.0 * 256.0 * 256.0, 256.0 * 256.0, 256.0, 1.0 );\n\tconst vec4 bit_mask = vec4( 0.0, 1.0 / 256.0, 1.0 / 256.0, 1.0 / 256.0 );\n\tvec4 res = mod( depth * bit_shift * vec4( 255 ), vec4( 256 ) ) / vec4( 255 );\n\tres -= res.xxyz * bit_mask;\n\treturn res;\n}\nvoid main() {",THREE.ShaderChunk.logdepthbuf_fragment,"\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tgl_FragData[ 0 ] = pack_depth( gl_FragDepthEXT );\n\t#else\n\t\tgl_FragData[ 0 ] = pack_depth( gl_FragCoord.z );\n\t#endif\n}"].join("\n")},
+distanceRGBA:{uniforms:{lightPos:{type:"v3",value:new THREE.Vector3(0,0,0)}},vertexShader:["varying vec4 vWorldPosition;",THREE.ShaderChunk.common,THREE.ShaderChunk.morphtarget_pars_vertex,THREE.ShaderChunk.skinning_pars_vertex,"void main() {",THREE.ShaderChunk.skinbase_vertex,THREE.ShaderChunk.begin_vertex,THREE.ShaderChunk.morphtarget_vertex,THREE.ShaderChunk.skinning_vertex,THREE.ShaderChunk.project_vertex,THREE.ShaderChunk.worldpos_vertex,"vWorldPosition = worldPosition;\n}"].join("\n"),fragmentShader:["uniform vec3 lightPos;\nvarying vec4 vWorldPosition;",
+THREE.ShaderChunk.common,"vec4 pack1K ( float depth ) {\n   depth /= 1000.0;\n   const vec4 bitSh = vec4( 256.0 * 256.0 * 256.0, 256.0 * 256.0, 256.0, 1.0 );\n\tconst vec4 bitMsk = vec4( 0.0, 1.0 / 256.0, 1.0 / 256.0, 1.0 / 256.0 );\n\tvec4 res = fract( depth * bitSh );\n\tres -= res.xxyz * bitMsk;\n\treturn res; \n}\nfloat unpack1K ( vec4 color ) {\n\tconst vec4 bitSh = vec4( 1.0 / ( 256.0 * 256.0 * 256.0 ), 1.0 / ( 256.0 * 256.0 ), 1.0 / 256.0, 1.0 );\n\treturn dot( color, bitSh ) * 1000.0;\n}\nvoid main () {\n\tgl_FragColor = pack1K( length( vWorldPosition.xyz - lightPos.xyz ) );\n}"].join("\n")}};
+THREE.WebGLRenderer=function(a){function b(a,b,c,d){!0===G&&(a*=d,b*=d,c*=d);r.clearColor(a,b,c,d)}function c(){I.init();r.viewport(na,oa,pa,qa);b(U.r,U.g,U.b,X)}function d(){ra=Aa=null;sa="";ta=-1;wa=!0;I.reset()}function e(a){a.preventDefault();d();c();W.clear()}function g(a){a=a.target;a.removeEventListener("dispose",g);a:{var b=W.get(a);if(a.image&&b.__image__webglTextureCube)r.deleteTexture(b.__image__webglTextureCube);else{if(void 0===b.__webglInit)break a;r.deleteTexture(b.__webglTexture)}W.delete(a)}la.textures--}
+function f(a){a=a.target;a.removeEventListener("dispose",f);var b=W.get(a),c=W.get(a.texture);if(a&&void 0!==c.__webglTexture){r.deleteTexture(c.__webglTexture);if(a instanceof THREE.WebGLRenderTargetCube)for(c=0;6>c;c++)r.deleteFramebuffer(b.__webglFramebuffer[c]),r.deleteRenderbuffer(b.__webglRenderbuffer[c]);else r.deleteFramebuffer(b.__webglFramebuffer),r.deleteRenderbuffer(b.__webglRenderbuffer);W.delete(a.texture);W.delete(a)}la.textures--}function h(a){a=a.target;a.removeEventListener("dispose",
+h);l(a);W.delete(a)}function l(a){var b=W.get(a).program;a.program=void 0;void 0!==b&&ua.releaseProgram(b)}function k(a,b){return b[0]-a[0]}function m(a,b){return a.object.renderOrder!==b.object.renderOrder?a.object.renderOrder-b.object.renderOrder:a.material.id!==b.material.id?a.material.id-b.material.id:a.z!==b.z?a.z-b.z:a.id-b.id}function p(a,b){return a.object.renderOrder!==b.object.renderOrder?a.object.renderOrder-b.object.renderOrder:a.z!==b.z?b.z-a.z:a.id-b.id}function n(a,b,c,d,e){var f;c.transparent?
+(d=Z,f=++fa):(d=ca,f=++ga);f=d[f];void 0!==f?(f.id=a.id,f.object=a,f.geometry=b,f.material=c,f.z=V.z,f.group=e):(f={id:a.id,object:a,geometry:b,material:c,z:V.z,group:e},d.push(f))}function q(a,b){if(!1!==a.visible){if(0!==(a.channels.mask&b.channels.mask))if(a instanceof THREE.Light)da.push(a);else if(a instanceof THREE.Sprite)ea.push(a);else if(a instanceof THREE.LensFlare)ja.push(a);else if(a instanceof THREE.ImmediateRenderObject)!0===aa.sortObjects&&(V.setFromMatrixPosition(a.matrixWorld),V.applyProjection(xa)),
+n(a,null,a.material,V.z,null);else if(a instanceof THREE.Mesh||a instanceof THREE.Line||a instanceof THREE.Points)if(a instanceof THREE.SkinnedMesh&&a.skeleton.update(),!1===a.frustumCulled||!0===Ba.intersectsObject(a)){var c=a.material;if(!0===c.visible){!0===aa.sortObjects&&(V.setFromMatrixPosition(a.matrixWorld),V.applyProjection(xa));var d=va.update(a);if(c instanceof THREE.MeshFaceMaterial)for(var e=d.groups,f=c.materials,c=0,g=e.length;c<g;c++){var h=e[c],l=f[h.materialIndex];!0===l.visible&&
+n(a,d,l,V.z,h)}else n(a,d,c,V.z,null)}}d=a.children;c=0;for(g=d.length;c<g;c++)q(d[c],b)}}function s(a,b,c,d,e){for(var f=0,g=a.length;f<g;f++){var h=a[f],l=h.object,k=h.geometry,n=void 0===e?h.material:e,h=h.group;l.modelViewMatrix.multiplyMatrices(b.matrixWorldInverse,l.matrixWorld);l.normalMatrix.getNormalMatrix(l.modelViewMatrix);if(l instanceof THREE.ImmediateRenderObject){t(n);var m=v(b,c,d,n,l);sa="";l.render(function(a){aa.renderBufferImmediate(a,m,n)})}else aa.renderBufferDirect(b,c,d,k,
+n,l,h)}}function t(a){a.side!==THREE.DoubleSide?I.enable(r.CULL_FACE):I.disable(r.CULL_FACE);I.setFlipSided(a.side===THREE.BackSide);!0===a.transparent?I.setBlending(a.blending,a.blendEquation,a.blendSrc,a.blendDst,a.blendEquationAlpha,a.blendSrcAlpha,a.blendDstAlpha):I.setBlending(THREE.NoBlending);I.setDepthFunc(a.depthFunc);I.setDepthTest(a.depthTest);I.setDepthWrite(a.depthWrite);I.setColorWrite(a.colorWrite);I.setPolygonOffset(a.polygonOffset,a.polygonOffsetFactor,a.polygonOffsetUnits)}function v(a,
+b,c,d,e){ya=0;var f=W.get(d);if(d.needsUpdate||!f.program){a:{var g=W.get(d),k=ua.getParameters(d,b,c,e),n=ua.getProgramCode(d,k),m=g.program,q=!0;if(void 0===m)d.addEventListener("dispose",h);else if(m.code!==n)l(d);else if(void 0!==k.shaderID)break a;else q=!1;q&&(k.shaderID?(m=THREE.ShaderLib[k.shaderID],g.__webglShader={name:d.type,uniforms:THREE.UniformsUtils.clone(m.uniforms),vertexShader:m.vertexShader,fragmentShader:m.fragmentShader}):g.__webglShader={name:d.type,uniforms:d.uniforms,vertexShader:d.vertexShader,
+fragmentShader:d.fragmentShader},d.__webglShader=g.__webglShader,m=ua.acquireProgram(d,k,n),g.program=m,d.program=m);k=m.getAttributes();if(d.morphTargets)for(n=d.numSupportedMorphTargets=0;n<aa.maxMorphTargets;n++)0<=k["morphTarget"+n]&&d.numSupportedMorphTargets++;if(d.morphNormals)for(n=d.numSupportedMorphNormals=0;n<aa.maxMorphNormals;n++)0<=k["morphNormal"+n]&&d.numSupportedMorphNormals++;g.uniformsList=[];var k=g.program.getUniforms(),p;for(p in g.__webglShader.uniforms)(n=k[p])&&g.uniformsList.push([g.__webglShader.uniforms[p],
+n])}d.needsUpdate=!1}n=m=q=!1;g=f.program;p=g.getUniforms();k=f.__webglShader.uniforms;g.id!==Aa&&(r.useProgram(g.program),Aa=g.id,n=m=q=!0);d.id!==ta&&(-1===ta&&(n=!0),ta=d.id,m=!0);if(q||a!==ra)r.uniformMatrix4fv(p.projectionMatrix,!1,a.projectionMatrix.elements),ha.logarithmicDepthBuffer&&r.uniform1f(p.logDepthBufFC,2/(Math.log(a.far+1)/Math.LN2)),a!==ra&&(ra=a),(d instanceof THREE.ShaderMaterial||d instanceof THREE.MeshPhongMaterial||d.envMap)&&void 0!==p.cameraPosition&&(V.setFromMatrixPosition(a.matrixWorld),
+r.uniform3f(p.cameraPosition,V.x,V.y,V.z)),(d instanceof THREE.MeshPhongMaterial||d instanceof THREE.MeshLambertMaterial||d instanceof THREE.MeshBasicMaterial||d instanceof THREE.ShaderMaterial||d.skinning)&&void 0!==p.viewMatrix&&r.uniformMatrix4fv(p.viewMatrix,!1,a.matrixWorldInverse.elements);d.skinning&&(e.bindMatrix&&void 0!==p.bindMatrix&&r.uniformMatrix4fv(p.bindMatrix,!1,e.bindMatrix.elements),e.bindMatrixInverse&&void 0!==p.bindMatrixInverse&&r.uniformMatrix4fv(p.bindMatrixInverse,!1,e.bindMatrixInverse.elements),
+ha.floatVertexTextures&&e.skeleton&&e.skeleton.useVertexTexture?(void 0!==p.boneTexture&&(q=w(),r.uniform1i(p.boneTexture,q),aa.setTexture(e.skeleton.boneTexture,q)),void 0!==p.boneTextureWidth&&r.uniform1i(p.boneTextureWidth,e.skeleton.boneTextureWidth),void 0!==p.boneTextureHeight&&r.uniform1i(p.boneTextureHeight,e.skeleton.boneTextureHeight)):e.skeleton&&e.skeleton.boneMatrices&&void 0!==p.boneGlobalMatrices&&r.uniformMatrix4fv(p.boneGlobalMatrices,!1,e.skeleton.boneMatrices));if(m){c&&d.fog&&
+(k.fogColor.value=c.color,c instanceof THREE.Fog?(k.fogNear.value=c.near,k.fogFar.value=c.far):c instanceof THREE.FogExp2&&(k.fogDensity.value=c.density));if(d instanceof THREE.MeshPhongMaterial||d instanceof THREE.MeshLambertMaterial||d.lights){if(wa){var n=!0,s,t=q=0,x=0,v,F,C,y=Ca,E=a.matrixWorldInverse,B=y.directional.colors,K=y.directional.positions,O=y.point.colors,N=y.point.positions,M=y.point.distances,G=y.point.decays,J=y.spot.colors,H=y.spot.positions,Q=y.spot.distances,I=y.spot.directions,
+da=y.spot.anglesCos,T=y.spot.exponents,R=y.spot.decays,Z=y.hemi.skyColors,ga=y.hemi.groundColors,S=y.hemi.positions,ca=0,U=0,ea=0,fa=0,ja=0,ma=0,X=0,$=0,ba=s=0;c=C=ba=0;for(m=b.length;c<m;c++)s=b[c],v=s.color,F=s.intensity,C=s.distance,s instanceof THREE.AmbientLight?s.visible&&(q+=v.r,t+=v.g,x+=v.b):s instanceof THREE.DirectionalLight?(ja+=1,s.visible&&(Y.setFromMatrixPosition(s.matrixWorld),V.setFromMatrixPosition(s.target.matrixWorld),Y.sub(V),Y.transformDirection(E),s=3*ca,K[s+0]=Y.x,K[s+1]=Y.y,
+K[s+2]=Y.z,D(B,s,v,F),ca+=1)):s instanceof THREE.PointLight?(ma+=1,s.visible&&(ba=3*U,D(O,ba,v,F),V.setFromMatrixPosition(s.matrixWorld),V.applyMatrix4(E),N[ba+0]=V.x,N[ba+1]=V.y,N[ba+2]=V.z,M[U]=C,G[U]=0===s.distance?0:s.decay,U+=1)):s instanceof THREE.SpotLight?(X+=1,s.visible&&(ba=3*ea,D(J,ba,v,F),Y.setFromMatrixPosition(s.matrixWorld),V.copy(Y).applyMatrix4(E),H[ba+0]=V.x,H[ba+1]=V.y,H[ba+2]=V.z,Q[ea]=C,V.setFromMatrixPosition(s.target.matrixWorld),Y.sub(V),Y.transformDirection(E),I[ba+0]=Y.x,
+I[ba+1]=Y.y,I[ba+2]=Y.z,da[ea]=Math.cos(s.angle),T[ea]=s.exponent,R[ea]=0===s.distance?0:s.decay,ea+=1)):s instanceof THREE.HemisphereLight&&($+=1,s.visible&&(Y.setFromMatrixPosition(s.matrixWorld),Y.transformDirection(E),C=3*fa,S[C+0]=Y.x,S[C+1]=Y.y,S[C+2]=Y.z,v=s.color,s=s.groundColor,D(Z,C,v,F),D(ga,C,s,F),fa+=1));c=3*ca;for(m=Math.max(B.length,3*ja);c<m;c++)B[c]=0;c=3*U;for(m=Math.max(O.length,3*ma);c<m;c++)O[c]=0;c=3*ea;for(m=Math.max(J.length,3*X);c<m;c++)J[c]=0;c=3*fa;for(m=Math.max(Z.length,
+3*$);c<m;c++)Z[c]=0;c=3*fa;for(m=Math.max(ga.length,3*$);c<m;c++)ga[c]=0;y.directional.length=ca;y.point.length=U;y.spot.length=ea;y.hemi.length=fa;y.ambient[0]=q;y.ambient[1]=t;y.ambient[2]=x;wa=!1}n?(n=Ca,k.ambientLightColor.value=n.ambient,k.directionalLightColor.value=n.directional.colors,k.directionalLightDirection.value=n.directional.positions,k.pointLightColor.value=n.point.colors,k.pointLightPosition.value=n.point.positions,k.pointLightDistance.value=n.point.distances,k.pointLightDecay.value=
+n.point.decays,k.spotLightColor.value=n.spot.colors,k.spotLightPosition.value=n.spot.positions,k.spotLightDistance.value=n.spot.distances,k.spotLightDirection.value=n.spot.directions,k.spotLightAngleCos.value=n.spot.anglesCos,k.spotLightExponent.value=n.spot.exponents,k.spotLightDecay.value=n.spot.decays,k.hemisphereLightSkyColor.value=n.hemi.skyColors,k.hemisphereLightGroundColor.value=n.hemi.groundColors,k.hemisphereLightDirection.value=n.hemi.positions,u(k,!0)):u(k,!1)}if(d instanceof THREE.MeshBasicMaterial||
+d instanceof THREE.MeshLambertMaterial||d instanceof THREE.MeshPhongMaterial){k.opacity.value=d.opacity;k.diffuse.value=d.color;d.emissive&&(k.emissive.value=d.emissive);k.map.value=d.map;k.specularMap.value=d.specularMap;k.alphaMap.value=d.alphaMap;d.aoMap&&(k.aoMap.value=d.aoMap,k.aoMapIntensity.value=d.aoMapIntensity);var P;d.map?P=d.map:d.specularMap?P=d.specularMap:d.displacementMap?P=d.displacementMap:d.normalMap?P=d.normalMap:d.bumpMap?P=d.bumpMap:d.alphaMap?P=d.alphaMap:d.emissiveMap&&(P=
+d.emissiveMap);void 0!==P&&(P instanceof THREE.WebGLRenderTarget&&(P=P.texture),n=P.offset,P=P.repeat,k.offsetRepeat.value.set(n.x,n.y,P.x,P.y));k.envMap.value=d.envMap;k.flipEnvMap.value=d.envMap instanceof THREE.WebGLRenderTargetCube?1:-1;k.reflectivity.value=d.reflectivity;k.refractionRatio.value=d.refractionRatio}d instanceof THREE.LineBasicMaterial?(k.diffuse.value=d.color,k.opacity.value=d.opacity):d instanceof THREE.LineDashedMaterial?(k.diffuse.value=d.color,k.opacity.value=d.opacity,k.dashSize.value=
+d.dashSize,k.totalSize.value=d.dashSize+d.gapSize,k.scale.value=d.scale):d instanceof THREE.PointsMaterial?(k.psColor.value=d.color,k.opacity.value=d.opacity,k.size.value=d.size,k.scale.value=L.height/2,k.map.value=d.map,null!==d.map&&(a=d.map.offset,P=d.map.repeat,k.offsetRepeat.value.set(a.x,a.y,P.x,P.y))):d instanceof THREE.MeshPhongMaterial?(k.specular.value=d.specular,k.shininess.value=Math.max(d.shininess,1E-4),d.lightMap&&(k.lightMap.value=d.lightMap,k.lightMapIntensity.value=d.lightMapIntensity),
+d.emissiveMap&&(k.emissiveMap.value=d.emissiveMap),d.bumpMap&&(k.bumpMap.value=d.bumpMap,k.bumpScale.value=d.bumpScale),d.normalMap&&(k.normalMap.value=d.normalMap,k.normalScale.value.copy(d.normalScale)),d.displacementMap&&(k.displacementMap.value=d.displacementMap,k.displacementScale.value=d.displacementScale,k.displacementBias.value=d.displacementBias)):d instanceof THREE.MeshDepthMaterial?(k.mNear.value=a.near,k.mFar.value=a.far,k.opacity.value=d.opacity):d instanceof THREE.MeshNormalMaterial&&
+(k.opacity.value=d.opacity);if(e.receiveShadow&&!d._shadowPass&&k.shadowMatrix)for(a=d=0,P=b.length;a<P;a++)n=b[a],!0===n.castShadow&&(n instanceof THREE.PointLight||n instanceof THREE.SpotLight||n instanceof THREE.DirectionalLight)&&(c=n.shadow,n instanceof THREE.PointLight?(V.setFromMatrixPosition(n.matrixWorld).negate(),c.matrix.identity().setPosition(V),k.shadowDarkness.value[d]=-c.darkness):k.shadowDarkness.value[d]=c.darkness,k.shadowMatrix.value[d]=c.matrix,k.shadowMap.value[d]=c.map,k.shadowMapSize.value[d]=
+c.mapSize,k.shadowBias.value[d]=c.bias,d++);b=f.uniformsList;f=0;for(d=b.length;f<d;f++)if(a=b[f][0],!1!==a.needsUpdate)switch(k=a.type,c=a.value,P=b[f][1],k){case "1i":r.uniform1i(P,c);break;case "1f":r.uniform1f(P,c);break;case "2f":r.uniform2f(P,c[0],c[1]);break;case "3f":r.uniform3f(P,c[0],c[1],c[2]);break;case "4f":r.uniform4f(P,c[0],c[1],c[2],c[3]);break;case "1iv":r.uniform1iv(P,c);break;case "3iv":r.uniform3iv(P,c);break;case "1fv":r.uniform1fv(P,c);break;case "2fv":r.uniform2fv(P,c);break;
+case "3fv":r.uniform3fv(P,c);break;case "4fv":r.uniform4fv(P,c);break;case "Matrix3fv":r.uniformMatrix3fv(P,!1,c);break;case "Matrix4fv":r.uniformMatrix4fv(P,!1,c);break;case "i":r.uniform1i(P,c);break;case "f":r.uniform1f(P,c);break;case "v2":r.uniform2f(P,c.x,c.y);break;case "v3":r.uniform3f(P,c.x,c.y,c.z);break;case "v4":r.uniform4f(P,c.x,c.y,c.z,c.w);break;case "c":r.uniform3f(P,c.r,c.g,c.b);break;case "iv1":r.uniform1iv(P,c);break;case "iv":r.uniform3iv(P,c);break;case "fv1":r.uniform1fv(P,c);
+break;case "fv":r.uniform3fv(P,c);break;case "v2v":void 0===a._array&&(a._array=new Float32Array(2*c.length));m=k=0;for(n=c.length;k<n;k++,m+=2)a._array[m+0]=c[k].x,a._array[m+1]=c[k].y;r.uniform2fv(P,a._array);break;case "v3v":void 0===a._array&&(a._array=new Float32Array(3*c.length));m=k=0;for(n=c.length;k<n;k++,m+=3)a._array[m+0]=c[k].x,a._array[m+1]=c[k].y,a._array[m+2]=c[k].z;r.uniform3fv(P,a._array);break;case "v4v":void 0===a._array&&(a._array=new Float32Array(4*c.length));m=k=0;for(n=c.length;k<
+n;k++,m+=4)a._array[m+0]=c[k].x,a._array[m+1]=c[k].y,a._array[m+2]=c[k].z,a._array[m+3]=c[k].w;r.uniform4fv(P,a._array);break;case "m3":r.uniformMatrix3fv(P,!1,c.elements);break;case "m3v":void 0===a._array&&(a._array=new Float32Array(9*c.length));k=0;for(n=c.length;k<n;k++)c[k].flattenToArrayOffset(a._array,9*k);r.uniformMatrix3fv(P,!1,a._array);break;case "m4":r.uniformMatrix4fv(P,!1,c.elements);break;case "m4v":void 0===a._array&&(a._array=new Float32Array(16*c.length));k=0;for(n=c.length;k<n;k++)c[k].flattenToArrayOffset(a._array,
+16*k);r.uniformMatrix4fv(P,!1,a._array);break;case "t":m=w();r.uniform1i(P,m);if(!c)continue;c instanceof THREE.CubeTexture||Array.isArray(c.image)&&6===c.image.length?z(c,m):c instanceof THREE.WebGLRenderTargetCube?A(c.texture,m):c instanceof THREE.WebGLRenderTarget?aa.setTexture(c.texture,m):aa.setTexture(c,m);break;case "tv":void 0===a._array&&(a._array=[]);k=0;for(n=a.value.length;k<n;k++)a._array[k]=w();r.uniform1iv(P,a._array);k=0;for(n=a.value.length;k<n;k++)c=a.value[k],m=a._array[k],c&&(c instanceof
+THREE.CubeTexture||c.image instanceof Array&&6===c.image.length?z(c,m):c instanceof THREE.WebGLRenderTarget?aa.setTexture(c.texture,m):c instanceof THREE.WebGLRenderTargetCube?A(c.texture,m):aa.setTexture(c,m));break;default:console.warn("THREE.WebGLRenderer: Unknown uniform type: "+k)}}r.uniformMatrix4fv(p.modelViewMatrix,!1,e.modelViewMatrix.elements);p.normalMatrix&&r.uniformMatrix3fv(p.normalMatrix,!1,e.normalMatrix.elements);void 0!==p.modelMatrix&&r.uniformMatrix4fv(p.modelMatrix,!1,e.matrixWorld.elements);
+return g}function u(a,b){a.ambientLightColor.needsUpdate=b;a.directionalLightColor.needsUpdate=b;a.directionalLightDirection.needsUpdate=b;a.pointLightColor.needsUpdate=b;a.pointLightPosition.needsUpdate=b;a.pointLightDistance.needsUpdate=b;a.pointLightDecay.needsUpdate=b;a.spotLightColor.needsUpdate=b;a.spotLightPosition.needsUpdate=b;a.spotLightDistance.needsUpdate=b;a.spotLightDirection.needsUpdate=b;a.spotLightAngleCos.needsUpdate=b;a.spotLightExponent.needsUpdate=b;a.spotLightDecay.needsUpdate=
+b;a.hemisphereLightSkyColor.needsUpdate=b;a.hemisphereLightGroundColor.needsUpdate=b;a.hemisphereLightDirection.needsUpdate=b}function w(){var a=ya;a>=ha.maxTextures&&console.warn("WebGLRenderer: trying to use "+a+" texture units while this GPU supports only "+ha.maxTextures);ya+=1;return a}function D(a,b,c,d){a[b+0]=c.r*d;a[b+1]=c.g*d;a[b+2]=c.b*d}function x(a,b,c){c?(r.texParameteri(a,r.TEXTURE_WRAP_S,N(b.wrapS)),r.texParameteri(a,r.TEXTURE_WRAP_T,N(b.wrapT)),r.texParameteri(a,r.TEXTURE_MAG_FILTER,
+N(b.magFilter)),r.texParameteri(a,r.TEXTURE_MIN_FILTER,N(b.minFilter))):(r.texParameteri(a,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(a,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),b.wrapS===THREE.ClampToEdgeWrapping&&b.wrapT===THREE.ClampToEdgeWrapping||console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.",b),r.texParameteri(a,r.TEXTURE_MAG_FILTER,C(b.magFilter)),r.texParameteri(a,r.TEXTURE_MIN_FILTER,C(b.minFilter)),
+b.minFilter!==THREE.NearestFilter&&b.minFilter!==THREE.LinearFilter&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.",b));!(c=S.get("EXT_texture_filter_anisotropic"))||b.type===THREE.FloatType&&null===S.get("OES_texture_float_linear")||b.type===THREE.HalfFloatType&&null===S.get("OES_texture_half_float_linear")||!(1<b.anisotropy||W.get(b).__currentAnisotropy)||(r.texParameterf(a,c.TEXTURE_MAX_ANISOTROPY_EXT,
+Math.min(b.anisotropy,aa.getMaxAnisotropy())),W.get(b).__currentAnisotropy=b.anisotropy)}function B(a,b){if(a.width>b||a.height>b){var c=b/Math.max(a.width,a.height),d=document.createElement("canvas");d.width=Math.floor(a.width*c);d.height=Math.floor(a.height*c);d.getContext("2d").drawImage(a,0,0,a.width,a.height,0,0,d.width,d.height);console.warn("THREE.WebGLRenderer: image is too big ("+a.width+"x"+a.height+"). Resized to "+d.width+"x"+d.height,a);return d}return a}function y(a){return THREE.Math.isPowerOfTwo(a.width)&&
+THREE.Math.isPowerOfTwo(a.height)}function z(a,b){var c=W.get(a);if(6===a.image.length)if(0<a.version&&c.__version!==a.version){c.__image__webglTextureCube||(a.addEventListener("dispose",g),c.__image__webglTextureCube=r.createTexture(),la.textures++);I.activeTexture(r.TEXTURE0+b);I.bindTexture(r.TEXTURE_CUBE_MAP,c.__image__webglTextureCube);r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,a.flipY);for(var d=a instanceof THREE.CompressedTexture,e=a.image[0]instanceof THREE.DataTexture,f=[],h=0;6>h;h++)f[h]=!aa.autoScaleCubemaps||
+d||e?e?a.image[h].image:a.image[h]:B(a.image[h],ha.maxCubemapSize);var k=y(f[0]),l=N(a.format),n=N(a.type);x(r.TEXTURE_CUBE_MAP,a,k);for(h=0;6>h;h++)if(d)for(var m,q=f[h].mipmaps,p=0,s=q.length;p<s;p++)m=q[p],a.format!==THREE.RGBAFormat&&a.format!==THREE.RGBFormat?-1<I.getCompressedTextureFormats().indexOf(l)?I.compressedTexImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+h,p,l,m.width,m.height,0,m.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setCubeTexture()"):
+I.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+h,p,l,m.width,m.height,0,l,n,m.data);else e?I.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+h,0,l,f[h].width,f[h].height,0,l,n,f[h].data):I.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+h,0,l,l,n,f[h]);a.generateMipmaps&&k&&r.generateMipmap(r.TEXTURE_CUBE_MAP);c.__version=a.version;if(a.onUpdate)a.onUpdate(a)}else I.activeTexture(r.TEXTURE0+b),I.bindTexture(r.TEXTURE_CUBE_MAP,c.__image__webglTextureCube)}function A(a,b){I.activeTexture(r.TEXTURE0+b);I.bindTexture(r.TEXTURE_CUBE_MAP,
+W.get(a).__webglTexture)}function J(a,b,c){r.bindFramebuffer(r.FRAMEBUFFER,a);r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,c,W.get(b.texture).__webglTexture,0)}function F(a,b){r.bindRenderbuffer(r.RENDERBUFFER,a);b.depthBuffer&&!b.stencilBuffer?(r.renderbufferStorage(r.RENDERBUFFER,r.DEPTH_COMPONENT16,b.width,b.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,a)):b.depthBuffer&&b.stencilBuffer?(r.renderbufferStorage(r.RENDERBUFFER,r.DEPTH_STENCIL,b.width,
+b.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.RENDERBUFFER,a)):r.renderbufferStorage(r.RENDERBUFFER,r.RGBA4,b.width,b.height)}function C(a){return a===THREE.NearestFilter||a===THREE.NearestMipMapNearestFilter||a===THREE.NearestMipMapLinearFilter?r.NEAREST:r.LINEAR}function N(a){var b;if(a===THREE.RepeatWrapping)return r.REPEAT;if(a===THREE.ClampToEdgeWrapping)return r.CLAMP_TO_EDGE;if(a===THREE.MirroredRepeatWrapping)return r.MIRRORED_REPEAT;if(a===THREE.NearestFilter)return r.NEAREST;
+if(a===THREE.NearestMipMapNearestFilter)return r.NEAREST_MIPMAP_NEAREST;if(a===THREE.NearestMipMapLinearFilter)return r.NEAREST_MIPMAP_LINEAR;if(a===THREE.LinearFilter)return r.LINEAR;if(a===THREE.LinearMipMapNearestFilter)return r.LINEAR_MIPMAP_NEAREST;if(a===THREE.LinearMipMapLinearFilter)return r.LINEAR_MIPMAP_LINEAR;if(a===THREE.UnsignedByteType)return r.UNSIGNED_BYTE;if(a===THREE.UnsignedShort4444Type)return r.UNSIGNED_SHORT_4_4_4_4;if(a===THREE.UnsignedShort5551Type)return r.UNSIGNED_SHORT_5_5_5_1;
+if(a===THREE.UnsignedShort565Type)return r.UNSIGNED_SHORT_5_6_5;if(a===THREE.ByteType)return r.BYTE;if(a===THREE.ShortType)return r.SHORT;if(a===THREE.UnsignedShortType)return r.UNSIGNED_SHORT;if(a===THREE.IntType)return r.INT;if(a===THREE.UnsignedIntType)return r.UNSIGNED_INT;if(a===THREE.FloatType)return r.FLOAT;b=S.get("OES_texture_half_float");if(null!==b&&a===THREE.HalfFloatType)return b.HALF_FLOAT_OES;if(a===THREE.AlphaFormat)return r.ALPHA;if(a===THREE.RGBFormat)return r.RGB;if(a===THREE.RGBAFormat)return r.RGBA;
+if(a===THREE.LuminanceFormat)return r.LUMINANCE;if(a===THREE.LuminanceAlphaFormat)return r.LUMINANCE_ALPHA;if(a===THREE.AddEquation)return r.FUNC_ADD;if(a===THREE.SubtractEquation)return r.FUNC_SUBTRACT;if(a===THREE.ReverseSubtractEquation)return r.FUNC_REVERSE_SUBTRACT;if(a===THREE.ZeroFactor)return r.ZERO;if(a===THREE.OneFactor)return r.ONE;if(a===THREE.SrcColorFactor)return r.SRC_COLOR;if(a===THREE.OneMinusSrcColorFactor)return r.ONE_MINUS_SRC_COLOR;if(a===THREE.SrcAlphaFactor)return r.SRC_ALPHA;
+if(a===THREE.OneMinusSrcAlphaFactor)return r.ONE_MINUS_SRC_ALPHA;if(a===THREE.DstAlphaFactor)return r.DST_ALPHA;if(a===THREE.OneMinusDstAlphaFactor)return r.ONE_MINUS_DST_ALPHA;if(a===THREE.DstColorFactor)return r.DST_COLOR;if(a===THREE.OneMinusDstColorFactor)return r.ONE_MINUS_DST_COLOR;if(a===THREE.SrcAlphaSaturateFactor)return r.SRC_ALPHA_SATURATE;b=S.get("WEBGL_compressed_texture_s3tc");if(null!==b){if(a===THREE.RGB_S3TC_DXT1_Format)return b.COMPRESSED_RGB_S3TC_DXT1_EXT;if(a===THREE.RGBA_S3TC_DXT1_Format)return b.COMPRESSED_RGBA_S3TC_DXT1_EXT;
+if(a===THREE.RGBA_S3TC_DXT3_Format)return b.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(a===THREE.RGBA_S3TC_DXT5_Format)return b.COMPRESSED_RGBA_S3TC_DXT5_EXT}b=S.get("WEBGL_compressed_texture_pvrtc");if(null!==b){if(a===THREE.RGB_PVRTC_4BPPV1_Format)return b.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(a===THREE.RGB_PVRTC_2BPPV1_Format)return b.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(a===THREE.RGBA_PVRTC_4BPPV1_Format)return b.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(a===THREE.RGBA_PVRTC_2BPPV1_Format)return b.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}b=
+S.get("EXT_blend_minmax");if(null!==b){if(a===THREE.MinEquation)return b.MIN_EXT;if(a===THREE.MaxEquation)return b.MAX_EXT}return 0}console.log("THREE.WebGLRenderer",THREE.REVISION);a=a||{};var L=void 0!==a.canvas?a.canvas:document.createElement("canvas"),Q=void 0!==a.context?a.context:null,M=L.width,K=L.height,E=1,O=void 0!==a.alpha?a.alpha:!1,T=void 0!==a.depth?a.depth:!0,H=void 0!==a.stencil?a.stencil:!0,R=void 0!==a.antialias?a.antialias:!1,G=void 0!==a.premultipliedAlpha?a.premultipliedAlpha:
+!0,ia=void 0!==a.preserveDrawingBuffer?a.preserveDrawingBuffer:!1,U=new THREE.Color(0),X=0,da=[],ca=[],ga=-1,Z=[],fa=-1,ma=new Float32Array(8),ea=[],ja=[];this.domElement=L;this.context=null;this.sortObjects=this.autoClearStencil=this.autoClearDepth=this.autoClearColor=this.autoClear=!0;this.gammaFactor=2;this.gammaOutput=this.gammaInput=!1;this.maxMorphTargets=8;this.maxMorphNormals=4;this.autoScaleCubemaps=!0;var aa=this,Aa=null,za=null,ta=-1,sa="",ra=null,ya=0,na=0,oa=0,pa=L.width,qa=L.height,
+Da=0,Ea=0,Ba=new THREE.Frustum,xa=new THREE.Matrix4,V=new THREE.Vector3,Y=new THREE.Vector3,wa=!0,Ca={ambient:[0,0,0],directional:{length:0,colors:[],positions:[]},point:{length:0,colors:[],positions:[],distances:[],decays:[]},spot:{length:0,colors:[],positions:[],distances:[],directions:[],anglesCos:[],exponents:[],decays:[]},hemi:{length:0,skyColors:[],groundColors:[],positions:[]}},la={geometries:0,textures:0},ka={calls:0,vertices:0,faces:0,points:0};this.info={render:ka,memory:la,programs:null};
+var r;try{O={alpha:O,depth:T,stencil:H,antialias:R,premultipliedAlpha:G,preserveDrawingBuffer:ia};r=Q||L.getContext("webgl",O)||L.getContext("experimental-webgl",O);if(null===r){if(null!==L.getContext("webgl"))throw"Error creating WebGL context with your selected attributes.";throw"Error creating WebGL context.";}L.addEventListener("webglcontextlost",e,!1)}catch(Fa){console.error("THREE.WebGLRenderer: "+Fa)}var S=new THREE.WebGLExtensions(r);S.get("OES_texture_float");S.get("OES_texture_float_linear");
+S.get("OES_texture_half_float");S.get("OES_texture_half_float_linear");S.get("OES_standard_derivatives");S.get("ANGLE_instanced_arrays");S.get("OES_element_index_uint")&&(THREE.BufferGeometry.MaxIndex=4294967296);var ha=new THREE.WebGLCapabilities(r,S,a),I=new THREE.WebGLState(r,S,N),W=new THREE.WebGLProperties,va=new THREE.WebGLObjects(r,W,this.info),ua=new THREE.WebGLPrograms(this,ha);this.info.programs=ua.programs;var Ga=new THREE.WebGLBufferRenderer(r,S,ka),Ha=new THREE.WebGLIndexedBufferRenderer(r,
+S,ka);c();this.context=r;this.capabilities=ha;this.extensions=S;this.state=I;var $=new THREE.WebGLShadowMap(this,da,va);this.shadowMap=$;var Ia=new THREE.SpritePlugin(this,ea),Ja=new THREE.LensFlarePlugin(this,ja);this.getContext=function(){return r};this.getContextAttributes=function(){return r.getContextAttributes()};this.forceContextLoss=function(){S.get("WEBGL_lose_context").loseContext()};this.getMaxAnisotropy=function(){var a;return function(){if(void 0!==a)return a;var b=S.get("EXT_texture_filter_anisotropic");
+return a=null!==b?r.getParameter(b.MAX_TEXTURE_MAX_ANISOTROPY_EXT):0}}();this.getPrecision=function(){return ha.precision};this.getPixelRatio=function(){return E};this.setPixelRatio=function(a){void 0!==a&&(E=a)};this.getSize=function(){return{width:M,height:K}};this.setSize=function(a,b,c){M=a;K=b;L.width=a*E;L.height=b*E;!1!==c&&(L.style.width=a+"px",L.style.height=b+"px");this.setViewport(0,0,a,b)};this.setViewport=function(a,b,c,d){na=a*E;oa=b*E;pa=c*E;qa=d*E;r.viewport(na,oa,pa,qa)};this.getViewport=
+function(a){a.x=na/E;a.y=oa/E;a.z=pa/E;a.w=qa/E};this.setScissor=function(a,b,c,d){r.scissor(a*E,b*E,c*E,d*E)};this.enableScissorTest=function(a){I.setScissorTest(a)};this.getClearColor=function(){return U};this.setClearColor=function(a,c){U.set(a);X=void 0!==c?c:1;b(U.r,U.g,U.b,X)};this.getClearAlpha=function(){return X};this.setClearAlpha=function(a){X=a;b(U.r,U.g,U.b,X)};this.clear=function(a,b,c){var d=0;if(void 0===a||a)d|=r.COLOR_BUFFER_BIT;if(void 0===b||b)d|=r.DEPTH_BUFFER_BIT;if(void 0===
+c||c)d|=r.STENCIL_BUFFER_BIT;r.clear(d)};this.clearColor=function(){r.clear(r.COLOR_BUFFER_BIT)};this.clearDepth=function(){r.clear(r.DEPTH_BUFFER_BIT)};this.clearStencil=function(){r.clear(r.STENCIL_BUFFER_BIT)};this.clearTarget=function(a,b,c,d){this.setRenderTarget(a);this.clear(b,c,d)};this.resetGLState=d;this.dispose=function(){L.removeEventListener("webglcontextlost",e,!1)};this.renderBufferImmediate=function(a,b,c){I.initAttributes();var d=W.get(a);a.hasPositions&&!d.position&&(d.position=
+r.createBuffer());a.hasNormals&&!d.normal&&(d.normal=r.createBuffer());a.hasUvs&&!d.uv&&(d.uv=r.createBuffer());a.hasColors&&!d.color&&(d.color=r.createBuffer());b=b.getAttributes();a.hasPositions&&(r.bindBuffer(r.ARRAY_BUFFER,d.position),r.bufferData(r.ARRAY_BUFFER,a.positionArray,r.DYNAMIC_DRAW),I.enableAttribute(b.position),r.vertexAttribPointer(b.position,3,r.FLOAT,!1,0,0));if(a.hasNormals){r.bindBuffer(r.ARRAY_BUFFER,d.normal);if("MeshPhongMaterial"!==c.type&&c.shading===THREE.FlatShading)for(var e=
+0,f=3*a.count;e<f;e+=9){var g=a.normalArray,h=(g[e+0]+g[e+3]+g[e+6])/3,k=(g[e+1]+g[e+4]+g[e+7])/3,l=(g[e+2]+g[e+5]+g[e+8])/3;g[e+0]=h;g[e+1]=k;g[e+2]=l;g[e+3]=h;g[e+4]=k;g[e+5]=l;g[e+6]=h;g[e+7]=k;g[e+8]=l}r.bufferData(r.ARRAY_BUFFER,a.normalArray,r.DYNAMIC_DRAW);I.enableAttribute(b.normal);r.vertexAttribPointer(b.normal,3,r.FLOAT,!1,0,0)}a.hasUvs&&c.map&&(r.bindBuffer(r.ARRAY_BUFFER,d.uv),r.bufferData(r.ARRAY_BUFFER,a.uvArray,r.DYNAMIC_DRAW),I.enableAttribute(b.uv),r.vertexAttribPointer(b.uv,2,r.FLOAT,
+!1,0,0));a.hasColors&&c.vertexColors!==THREE.NoColors&&(r.bindBuffer(r.ARRAY_BUFFER,d.color),r.bufferData(r.ARRAY_BUFFER,a.colorArray,r.DYNAMIC_DRAW),I.enableAttribute(b.color),r.vertexAttribPointer(b.color,3,r.FLOAT,!1,0,0));I.disableUnusedAttributes();r.drawArrays(r.TRIANGLES,0,a.count);a.count=0};this.renderBufferDirect=function(a,b,c,d,e,f,g){t(e);var h=v(a,b,c,e,f),l=!1;a=d.id+"_"+h.id+"_"+e.wireframe;a!==sa&&(sa=a,l=!0);b=f.morphTargetInfluences;if(void 0!==b){a=[];c=0;for(l=b.length;c<l;c++){var n=
+b[c];a.push([n,c])}a.sort(k);8<a.length&&(a.length=8);var m=d.morphAttributes;c=0;for(l=a.length;c<l;c++)n=a[c],ma[c]=n[0],0!==n[0]?(b=n[1],!0===e.morphTargets&&m.position&&d.addAttribute("morphTarget"+c,m.position[b]),!0===e.morphNormals&&m.normal&&d.addAttribute("morphNormal"+c,m.normal[b])):(!0===e.morphTargets&&d.removeAttribute("morphTarget"+c),!0===e.morphNormals&&d.removeAttribute("morphNormal"+c));a=h.getUniforms();null!==a.morphTargetInfluences&&r.uniform1fv(a.morphTargetInfluences,ma);l=
+!0}b=d.index;c=d.attributes.position;!0===e.wireframe&&(b=va.getWireframeAttribute(d));null!==b?(a=Ha,a.setIndex(b)):a=Ga;if(l){a:{var l=void 0,q;if(d instanceof THREE.InstancedBufferGeometry&&(q=S.get("ANGLE_instanced_arrays"),null===q)){console.error("THREE.WebGLRenderer.setupVertexAttributes: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");break a}void 0===l&&(l=0);I.initAttributes();var n=d.attributes,h=h.getAttributes(),m=e.defaultAttributeValues,
+p;for(p in h){var s=h[p];if(0<=s){var u=n[p];if(void 0!==u){var w=u.itemSize,x=va.getAttributeBuffer(u);if(u instanceof THREE.InterleavedBufferAttribute){var F=u.data,D=F.stride,u=u.offset;F instanceof THREE.InstancedInterleavedBuffer?(I.enableAttributeAndDivisor(s,F.meshPerAttribute,q),void 0===d.maxInstancedCount&&(d.maxInstancedCount=F.meshPerAttribute*F.count)):I.enableAttribute(s);r.bindBuffer(r.ARRAY_BUFFER,x);r.vertexAttribPointer(s,w,r.FLOAT,!1,D*F.array.BYTES_PER_ELEMENT,(l*D+u)*F.array.BYTES_PER_ELEMENT)}else u instanceof
+THREE.InstancedBufferAttribute?(I.enableAttributeAndDivisor(s,u.meshPerAttribute,q),void 0===d.maxInstancedCount&&(d.maxInstancedCount=u.meshPerAttribute*u.count)):I.enableAttribute(s),r.bindBuffer(r.ARRAY_BUFFER,x),r.vertexAttribPointer(s,w,r.FLOAT,!1,0,l*w*4)}else if(void 0!==m&&(w=m[p],void 0!==w))switch(w.length){case 2:r.vertexAttrib2fv(s,w);break;case 3:r.vertexAttrib3fv(s,w);break;case 4:r.vertexAttrib4fv(s,w);break;default:r.vertexAttrib1fv(s,w)}}}I.disableUnusedAttributes()}null!==b&&r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,
+va.getAttributeBuffer(b))}q=Infinity;null!==b?q=b.count:void 0!==c&&(q=c.count);p=d.drawRange.start;b=d.drawRange.count;c=null!==g?g.start:0;l=null!==g?g.count:Infinity;g=Math.max(0,p,c);q=Math.min(0+q,p+b,c+l)-1;q=Math.max(0,q-g+1);f instanceof THREE.Mesh?(!0===e.wireframe?(I.setLineWidth(e.wireframeLinewidth*E),a.setMode(r.LINES)):a.setMode(r.TRIANGLES),d instanceof THREE.InstancedBufferGeometry&&0<d.maxInstancedCount?a.renderInstances(d):a.render(g,q)):f instanceof THREE.Line?(d=e.linewidth,void 0===
+d&&(d=1),I.setLineWidth(d*E),f instanceof THREE.LineSegments?a.setMode(r.LINES):a.setMode(r.LINE_STRIP),a.render(g,q)):f instanceof THREE.Points&&(a.setMode(r.POINTS),a.render(g,q))};this.render=function(a,b,c,d){if(!1===b instanceof THREE.Camera)console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");else{var e=a.fog;sa="";ta=-1;ra=null;wa=!0;!0===a.autoUpdate&&a.updateMatrixWorld();null===b.parent&&b.updateMatrixWorld();b.matrixWorldInverse.getInverse(b.matrixWorld);
+xa.multiplyMatrices(b.projectionMatrix,b.matrixWorldInverse);Ba.setFromMatrix(xa);da.length=0;fa=ga=-1;ea.length=0;ja.length=0;q(a,b);ca.length=ga+1;Z.length=fa+1;!0===aa.sortObjects&&(ca.sort(m),Z.sort(p));$.render(a);ka.calls=0;ka.vertices=0;ka.faces=0;ka.points=0;this.setRenderTarget(c);(this.autoClear||d)&&this.clear(this.autoClearColor,this.autoClearDepth,this.autoClearStencil);a.overrideMaterial?(d=a.overrideMaterial,s(ca,b,da,e,d),s(Z,b,da,e,d)):(I.setBlending(THREE.NoBlending),s(ca,b,da,e),
+s(Z,b,da,e));Ia.render(a,b);Ja.render(a,b,Da,Ea);c&&(a=c.texture,b=y(c),a.generateMipmaps&&b&&a.minFilter!==THREE.NearestFilter&&a.minFilter!==THREE.LinearFilter&&(a=c instanceof THREE.WebGLRenderTargetCube?r.TEXTURE_CUBE_MAP:r.TEXTURE_2D,c=W.get(c.texture).__webglTexture,I.bindTexture(a,c),r.generateMipmap(a),I.bindTexture(a,null)));I.setDepthTest(!0);I.setDepthWrite(!0);I.setColorWrite(!0)}};this.setFaceCulling=function(a,b){a===THREE.CullFaceNone?I.disable(r.CULL_FACE):(b===THREE.FrontFaceDirectionCW?
+r.frontFace(r.CW):r.frontFace(r.CCW),a===THREE.CullFaceBack?r.cullFace(r.BACK):a===THREE.CullFaceFront?r.cullFace(r.FRONT):r.cullFace(r.FRONT_AND_BACK),I.enable(r.CULL_FACE))};this.setTexture=function(a,b){var c=W.get(a);if(0<a.version&&c.__version!==a.version){var d=a.image;if(void 0===d)console.warn("THREE.WebGLRenderer: Texture marked for update but image is undefined",a);else if(!1===d.complete)console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete",a);else{void 0===
+c.__webglInit&&(c.__webglInit=!0,a.addEventListener("dispose",g),c.__webglTexture=r.createTexture(),la.textures++);I.activeTexture(r.TEXTURE0+b);I.bindTexture(r.TEXTURE_2D,c.__webglTexture);r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,a.flipY);r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,a.premultiplyAlpha);r.pixelStorei(r.UNPACK_ALIGNMENT,a.unpackAlignment);a.image=B(a.image,ha.maxTextureSize);if((a.wrapS!==THREE.ClampToEdgeWrapping||a.wrapT!==THREE.ClampToEdgeWrapping||a.minFilter!==THREE.NearestFilter&&
+a.minFilter!==THREE.LinearFilter)&&!1===y(a.image)){d=a.image;if(d instanceof HTMLImageElement||d instanceof HTMLCanvasElement){var e=document.createElement("canvas");e.width=THREE.Math.nearestPowerOfTwo(d.width);e.height=THREE.Math.nearestPowerOfTwo(d.height);e.getContext("2d").drawImage(d,0,0,e.width,e.height);console.warn("THREE.WebGLRenderer: image is not power of two ("+d.width+"x"+d.height+"). Resized to "+e.width+"x"+e.height,d);d=e}a.image=d}var f=a.image,d=y(f),e=N(a.format),h=N(a.type);
+x(r.TEXTURE_2D,a,d);var k=a.mipmaps;if(a instanceof THREE.DataTexture)if(0<k.length&&d){for(var l=0,n=k.length;l<n;l++)f=k[l],I.texImage2D(r.TEXTURE_2D,l,e,f.width,f.height,0,e,h,f.data);a.generateMipmaps=!1}else I.texImage2D(r.TEXTURE_2D,0,e,f.width,f.height,0,e,h,f.data);else if(a instanceof THREE.CompressedTexture)for(l=0,n=k.length;l<n;l++)f=k[l],a.format!==THREE.RGBAFormat&&a.format!==THREE.RGBFormat?-1<I.getCompressedTextureFormats().indexOf(e)?I.compressedTexImage2D(r.TEXTURE_2D,l,e,f.width,
+f.height,0,f.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):I.texImage2D(r.TEXTURE_2D,l,e,f.width,f.height,0,e,h,f.data);else if(0<k.length&&d){l=0;for(n=k.length;l<n;l++)f=k[l],I.texImage2D(r.TEXTURE_2D,l,e,e,h,f);a.generateMipmaps=!1}else I.texImage2D(r.TEXTURE_2D,0,e,e,h,a.image);a.generateMipmaps&&d&&r.generateMipmap(r.TEXTURE_2D);c.__version=a.version;if(a.onUpdate)a.onUpdate(a)}}else I.activeTexture(r.TEXTURE0+b),I.bindTexture(r.TEXTURE_2D,
+c.__webglTexture)};this.setRenderTarget=function(a){var b=a instanceof THREE.WebGLRenderTargetCube;if(a&&void 0===W.get(a).__webglFramebuffer){var c=W.get(a),d=W.get(a.texture);void 0===a.depthBuffer&&(a.depthBuffer=!0);void 0===a.stencilBuffer&&(a.stencilBuffer=!0);a.addEventListener("dispose",f);d.__webglTexture=r.createTexture();la.textures++;var e=y(a),g=N(a.texture.format),h=N(a.texture.type);if(b){c.__webglFramebuffer=[];c.__webglRenderbuffer=[];I.bindTexture(r.TEXTURE_CUBE_MAP,d.__webglTexture);
+x(r.TEXTURE_CUBE_MAP,a.texture,e);for(d=0;6>d;d++)c.__webglFramebuffer[d]=r.createFramebuffer(),c.__webglRenderbuffer[d]=r.createRenderbuffer(),I.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+d,0,g,a.width,a.height,0,g,h,null),J(c.__webglFramebuffer[d],a,r.TEXTURE_CUBE_MAP_POSITIVE_X+d),F(c.__webglRenderbuffer[d],a);a.texture.generateMipmaps&&e&&r.generateMipmap(r.TEXTURE_CUBE_MAP)}else c.__webglFramebuffer=r.createFramebuffer(),c.__webglRenderbuffer=a.shareDepthFrom?a.shareDepthFrom.__webglRenderbuffer:
+r.createRenderbuffer(),I.bindTexture(r.TEXTURE_2D,d.__webglTexture),x(r.TEXTURE_2D,a.texture,e),I.texImage2D(r.TEXTURE_2D,0,g,a.width,a.height,0,g,h,null),J(c.__webglFramebuffer,a,r.TEXTURE_2D),a.shareDepthFrom?a.depthBuffer&&!a.stencilBuffer?r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,c.__webglRenderbuffer):a.depthBuffer&&a.stencilBuffer&&r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.RENDERBUFFER,c.__webglRenderbuffer):F(c.__webglRenderbuffer,
+a),a.texture.generateMipmaps&&e&&r.generateMipmap(r.TEXTURE_2D);b?I.bindTexture(r.TEXTURE_CUBE_MAP,null):I.bindTexture(r.TEXTURE_2D,null);r.bindRenderbuffer(r.RENDERBUFFER,null);r.bindFramebuffer(r.FRAMEBUFFER,null)}a?(c=W.get(a),d=b?c.__webglFramebuffer[a.activeCubeFace]:c.__webglFramebuffer,c=a.width,e=a.height,h=g=0):(d=null,c=pa,e=qa,g=na,h=oa);d!==za&&(r.bindFramebuffer(r.FRAMEBUFFER,d),r.viewport(g,h,c,e),za=d);b&&(d=W.get(a.texture),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,
+r.TEXTURE_CUBE_MAP_POSITIVE_X+a.activeCubeFace,d.__webglTexture,0));Da=c;Ea=e};this.readRenderTargetPixels=function(a,b,c,d,e,f){if(!1===a instanceof THREE.WebGLRenderTarget)console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");else{var g=W.get(a).__webglFramebuffer;if(g){var h=!1;g!==za&&(r.bindFramebuffer(r.FRAMEBUFFER,g),h=!0);try{var k=a.texture;k.format!==THREE.RGBAFormat&&N(k.format)!==r.getParameter(r.IMPLEMENTATION_COLOR_READ_FORMAT)?console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format."):
+k.type===THREE.UnsignedByteType||N(k.type)===r.getParameter(r.IMPLEMENTATION_COLOR_READ_TYPE)||k.type===THREE.FloatType&&S.get("WEBGL_color_buffer_float")||k.type===THREE.HalfFloatType&&S.get("EXT_color_buffer_half_float")?r.checkFramebufferStatus(r.FRAMEBUFFER)===r.FRAMEBUFFER_COMPLETE?r.readPixels(b,c,d,e,N(k.format),N(k.type),f):console.error("THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete."):console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.")}finally{h&&
+r.bindFramebuffer(r.FRAMEBUFFER,za)}}}};this.supportsFloatTextures=function(){console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' ).");return S.get("OES_texture_float")};this.supportsHalfFloatTextures=function(){console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' ).");return S.get("OES_texture_half_float")};this.supportsStandardDerivatives=function(){console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' ).");
+return S.get("OES_standard_derivatives")};this.supportsCompressedTextureS3TC=function(){console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' ).");return S.get("WEBGL_compressed_texture_s3tc")};this.supportsCompressedTexturePVRTC=function(){console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' ).");return S.get("WEBGL_compressed_texture_pvrtc")};this.supportsBlendMinMax=
+function(){console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' ).");return S.get("EXT_blend_minmax")};this.supportsVertexTextures=function(){return ha.vertexTextures};this.supportsInstancedArrays=function(){console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' ).");return S.get("ANGLE_instanced_arrays")};this.initMaterial=function(){console.warn("THREE.WebGLRenderer: .initMaterial() has been removed.")};
+this.addPrePlugin=function(){console.warn("THREE.WebGLRenderer: .addPrePlugin() has been removed.")};this.addPostPlugin=function(){console.warn("THREE.WebGLRenderer: .addPostPlugin() has been removed.")};this.updateShadowMap=function(){console.warn("THREE.WebGLRenderer: .updateShadowMap() has been removed.")};Object.defineProperties(this,{shadowMapEnabled:{get:function(){return $.enabled},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled.");$.enabled=a}},
+shadowMapType:{get:function(){return $.type},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type.");$.type=a}},shadowMapCullFace:{get:function(){return $.cullFace},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapCullFace is now .shadowMap.cullFace.");$.cullFace=a}},shadowMapDebug:{get:function(){return $.debug},set:function(a){console.warn("THREE.WebGLRenderer: .shadowMapDebug is now .shadowMap.debug.");$.debug=a}}})};
+THREE.WebGLRenderTarget=function(a,b,c){this.uuid=THREE.Math.generateUUID();this.width=a;this.height=b;c=c||{};void 0===c.minFilter&&(c.minFilter=THREE.LinearFilter);this.texture=new THREE.Texture(void 0,void 0,c.wrapS,c.wrapT,c.magFilter,c.minFilter,c.format,c.type,c.anisotropy);this.depthBuffer=void 0!==c.depthBuffer?c.depthBuffer:!0;this.stencilBuffer=void 0!==c.stencilBuffer?c.stencilBuffer:!0;this.shareDepthFrom=void 0!==c.shareDepthFrom?c.shareDepthFrom:null};
+THREE.WebGLRenderTarget.prototype={constructor:THREE.WebGLRenderTarget,get wrapS(){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.");return this.texture.wrapS},set wrapS(a){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.");this.texture.wrapS=a},get wrapT(){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.");return this.texture.wrapT},set wrapT(a){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.");this.texture.wrapT=a},
+get magFilter(){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.");return this.texture.magFilter},set magFilter(a){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.");this.texture.magFilter=a},get minFilter(){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.");return this.texture.minFilter},set minFilter(a){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.");this.texture.minFilter=a},get anisotropy(){console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.");
+return this.texture.anisotropy},set anisotropy(a){console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.");this.texture.anisotropy=a},get offset(){console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset.");return this.texture.offset},set offset(a){console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset.");this.texture.offset=a},get repeat(){console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat.");return this.texture.repeat},set repeat(a){console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat.");
+this.texture.repeat=a},get format(){console.warn("THREE.WebGLRenderTarget: .format is now .texture.format.");return this.texture.format},set format(a){console.warn("THREE.WebGLRenderTarget: .format is now .texture.format.");this.texture.format=a},get type(){console.warn("THREE.WebGLRenderTarget: .type is now .texture.type.");return this.texture.type},set type(a){console.warn("THREE.WebGLRenderTarget: .type is now .texture.type.");this.texture.type=a},get generateMipmaps(){console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.");
+return this.texture.generateMipmaps},set generateMipmaps(a){console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.");this.texture.generateMipmaps=a},setSize:function(a,b){if(this.width!==a||this.height!==b)this.width=a,this.height=b,this.dispose()},clone:function(){return(new this.constructor).copy(this)},copy:function(a){this.width=a.width;this.height=a.height;this.texture=a.texture.clone();this.depthBuffer=a.depthBuffer;this.stencilBuffer=a.stencilBuffer;this.shareDepthFrom=
+a.shareDepthFrom;return this},dispose:function(){this.dispatchEvent({type:"dispose"})}};THREE.EventDispatcher.prototype.apply(THREE.WebGLRenderTarget.prototype);THREE.WebGLRenderTargetCube=function(a,b,c){THREE.WebGLRenderTarget.call(this,a,b,c);this.activeCubeFace=0};THREE.WebGLRenderTargetCube.prototype=Object.create(THREE.WebGLRenderTarget.prototype);THREE.WebGLRenderTargetCube.prototype.constructor=THREE.WebGLRenderTargetCube;
+THREE.WebGLBufferRenderer=function(a,b,c){var d;this.setMode=function(a){d=a};this.render=function(b,g){a.drawArrays(d,b,g);c.calls++;c.vertices+=g;d===a.TRIANGLES&&(c.faces+=g/3)};this.renderInstances=function(a){var c=b.get("ANGLE_instanced_arrays");if(null===c)console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");else{var f=a.attributes.position;f instanceof THREE.InterleavedBufferAttribute?c.drawArraysInstancedANGLE(d,
+0,f.data.count,a.maxInstancedCount):c.drawArraysInstancedANGLE(d,0,f.count,a.maxInstancedCount)}}};
+THREE.WebGLIndexedBufferRenderer=function(a,b,c){var d,e,g;this.setMode=function(a){d=a};this.setIndex=function(c){c.array instanceof Uint32Array&&b.get("OES_element_index_uint")?(e=a.UNSIGNED_INT,g=4):(e=a.UNSIGNED_SHORT,g=2)};this.render=function(b,h){a.drawElements(d,h,e,b*g);c.calls++;c.vertices+=h;d===a.TRIANGLES&&(c.faces+=h/3)};this.renderInstances=function(a){var c=b.get("ANGLE_instanced_arrays");null===c?console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays."):
+c.drawElementsInstancedANGLE(d,a.index.array.length,e,0,a.maxInstancedCount)}};
+THREE.WebGLExtensions=function(a){var b={};this.get=function(c){if(void 0!==b[c])return b[c];var d;switch(c){case "EXT_texture_filter_anisotropic":d=a.getExtension("EXT_texture_filter_anisotropic")||a.getExtension("MOZ_EXT_texture_filter_anisotropic")||a.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case "WEBGL_compressed_texture_s3tc":d=a.getExtension("WEBGL_compressed_texture_s3tc")||a.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||a.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");
+break;case "WEBGL_compressed_texture_pvrtc":d=a.getExtension("WEBGL_compressed_texture_pvrtc")||a.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:d=a.getExtension(c)}null===d&&console.warn("THREE.WebGLRenderer: "+c+" extension not supported.");return b[c]=d}};
+THREE.WebGLCapabilities=function(a,b,c){function d(b){if("highp"===b){if(0<a.getShaderPrecisionFormat(a.VERTEX_SHADER,a.HIGH_FLOAT).precision&&0<a.getShaderPrecisionFormat(a.FRAGMENT_SHADER,a.HIGH_FLOAT).precision)return"highp";b="mediump"}return"mediump"===b&&0<a.getShaderPrecisionFormat(a.VERTEX_SHADER,a.MEDIUM_FLOAT).precision&&0<a.getShaderPrecisionFormat(a.FRAGMENT_SHADER,a.MEDIUM_FLOAT).precision?"mediump":"lowp"}this.getMaxPrecision=d;this.precision=void 0!==c.precision?c.precision:"highp";
+this.logarithmicDepthBuffer=void 0!==c.logarithmicDepthBuffer?c.logarithmicDepthBuffer:!1;this.maxTextures=a.getParameter(a.MAX_TEXTURE_IMAGE_UNITS);this.maxVertexTextures=a.getParameter(a.MAX_VERTEX_TEXTURE_IMAGE_UNITS);this.maxTextureSize=a.getParameter(a.MAX_TEXTURE_SIZE);this.maxCubemapSize=a.getParameter(a.MAX_CUBE_MAP_TEXTURE_SIZE);this.maxAttributes=a.getParameter(a.MAX_VERTEX_ATTRIBS);this.maxVertexUniforms=a.getParameter(a.MAX_VERTEX_UNIFORM_VECTORS);this.maxVaryings=a.getParameter(a.MAX_VARYING_VECTORS);
+this.maxFragmentUniforms=a.getParameter(a.MAX_FRAGMENT_UNIFORM_VECTORS);this.vertexTextures=0<this.maxVertexTextures;this.floatFragmentTextures=!!b.get("OES_texture_float");this.floatVertexTextures=this.vertexTextures&&this.floatFragmentTextures;c=d(this.precision);c!==this.precision&&(console.warn("THREE.WebGLRenderer:",this.precision,"not supported, using",c,"instead."),this.precision=c);this.logarithmicDepthBuffer&&(this.logarithmicDepthBuffer=!!b.get("EXT_frag_depth"))};
+THREE.WebGLGeometries=function(a,b,c){function d(a){a=a.target;var h=g[a.id].attributes,l;for(l in h)e(h[l]);a.removeEventListener("dispose",d);delete g[a.id];l=b.get(a);l.wireframe&&e(l.wireframe);c.memory.geometries--}function e(c){var d;d=c instanceof THREE.InterleavedBufferAttribute?b.get(c.data).__webglBuffer:b.get(c).__webglBuffer;void 0!==d&&(a.deleteBuffer(d),c instanceof THREE.InterleavedBufferAttribute?b.delete(c.data):b.delete(c))}var g={};this.get=function(a){var b=a.geometry;if(void 0!==
+g[b.id])return g[b.id];b.addEventListener("dispose",d);var e;b instanceof THREE.BufferGeometry?e=b:b instanceof THREE.Geometry&&(void 0===b._bufferGeometry&&(b._bufferGeometry=(new THREE.BufferGeometry).setFromObject(a)),e=b._bufferGeometry);g[b.id]=e;c.memory.geometries++;return e}};
+THREE.WebGLObjects=function(a,b,c){function d(c,d){var e=c instanceof THREE.InterleavedBufferAttribute?c.data:c,g=b.get(e);void 0===g.__webglBuffer?(g.__webglBuffer=a.createBuffer(),a.bindBuffer(d,g.__webglBuffer),a.bufferData(d,e.array,e.dynamic?a.DYNAMIC_DRAW:a.STATIC_DRAW),g.version=e.version):g.version!==e.version&&(a.bindBuffer(d,g.__webglBuffer),!1===e.dynamic||-1===e.updateRange.count?a.bufferSubData(d,0,e.array):0===e.updateRange.count?console.error("THREE.WebGLObjects.updateBuffer: dynamic THREE.BufferAttribute marked as needsUpdate but updateRange.count is 0, ensure you are using set methods or updating manually."):
+(a.bufferSubData(d,e.updateRange.offset*e.array.BYTES_PER_ELEMENT,e.array.subarray(e.updateRange.offset,e.updateRange.offset+e.updateRange.count)),e.updateRange.count=0),g.version=e.version)}function e(a,b,c){if(b>c){var d=b;b=c;c=d}d=a[b];return void 0===d?(a[b]=[c],!0):-1===d.indexOf(c)?(d.push(c),!0):!1}var g=new THREE.WebGLGeometries(a,b,c);this.getAttributeBuffer=function(a){return a instanceof THREE.InterleavedBufferAttribute?b.get(a.data).__webglBuffer:b.get(a).__webglBuffer};this.getWireframeAttribute=
+function(c){var g=b.get(c);if(void 0!==g.wireframe)return g.wireframe;var l=[],k=c.index,m=c.attributes;c=m.position;if(null!==k)for(var m={},k=k.array,p=0,n=k.length;p<n;p+=3){var q=k[p+0],s=k[p+1],t=k[p+2];e(m,q,s)&&l.push(q,s);e(m,s,t)&&l.push(s,t);e(m,t,q)&&l.push(t,q)}else for(k=m.position.array,p=0,n=k.length/3-1;p<n;p+=3)q=p+0,s=p+1,t=p+2,l.push(q,s,s,t,t,q);l=new THREE.BufferAttribute(new (65535<c.count?Uint32Array:Uint16Array)(l),1);d(l,a.ELEMENT_ARRAY_BUFFER);return g.wireframe=l};this.update=
+function(b){var c=g.get(b);b.geometry instanceof THREE.Geometry&&c.updateFromObject(b);b=c.index;var e=c.attributes;null!==b&&d(b,a.ELEMENT_ARRAY_BUFFER);for(var k in e)d(e[k],a.ARRAY_BUFFER);b=c.morphAttributes;for(k in b)for(var e=b[k],m=0,p=e.length;m<p;m++)d(e[m],a.ARRAY_BUFFER);return c}};
+THREE.WebGLProgram=function(){function a(a){var b=[],c;for(c in a){var f=a[c];!1!==f&&b.push("#define "+c+" "+f)}return b.join("\n")}function b(a){return""!==a}var c=0;return function(d,e,g,f){var h=d.context,l=g.defines,k=g.__webglShader.vertexShader,m=g.__webglShader.fragmentShader,p="SHADOWMAP_TYPE_BASIC";f.shadowMapType===THREE.PCFShadowMap?p="SHADOWMAP_TYPE_PCF":f.shadowMapType===THREE.PCFSoftShadowMap&&(p="SHADOWMAP_TYPE_PCF_SOFT");var n="ENVMAP_TYPE_CUBE",q="ENVMAP_MODE_REFLECTION",s="ENVMAP_BLENDING_MULTIPLY";
+if(f.envMap){switch(g.envMap.mapping){case THREE.CubeReflectionMapping:case THREE.CubeRefractionMapping:n="ENVMAP_TYPE_CUBE";break;case THREE.EquirectangularReflectionMapping:case THREE.EquirectangularRefractionMapping:n="ENVMAP_TYPE_EQUIREC";break;case THREE.SphericalReflectionMapping:n="ENVMAP_TYPE_SPHERE"}switch(g.envMap.mapping){case THREE.CubeRefractionMapping:case THREE.EquirectangularRefractionMapping:q="ENVMAP_MODE_REFRACTION"}switch(g.combine){case THREE.MultiplyOperation:s="ENVMAP_BLENDING_MULTIPLY";
+break;case THREE.MixOperation:s="ENVMAP_BLENDING_MIX";break;case THREE.AddOperation:s="ENVMAP_BLENDING_ADD"}}var t=0<d.gammaFactor?d.gammaFactor:1,v=a(l),u=h.createProgram();g instanceof THREE.RawShaderMaterial?d=l="":(l=["precision "+f.precision+" float;","precision "+f.precision+" int;","#define SHADER_NAME "+g.__webglShader.name,v,f.supportsVertexTextures?"#define VERTEX_TEXTURES":"",d.gammaInput?"#define GAMMA_INPUT":"",d.gammaOutput?"#define GAMMA_OUTPUT":"","#define GAMMA_FACTOR "+t,"#define MAX_DIR_LIGHTS "+
+f.maxDirLights,"#define MAX_POINT_LIGHTS "+f.maxPointLights,"#define MAX_SPOT_LIGHTS "+f.maxSpotLights,"#define MAX_HEMI_LIGHTS "+f.maxHemiLights,"#define MAX_SHADOWS "+f.maxShadows,"#define MAX_BONES "+f.maxBones,f.map?"#define USE_MAP":"",f.envMap?"#define USE_ENVMAP":"",f.envMap?"#define "+q:"",f.lightMap?"#define USE_LIGHTMAP":"",f.aoMap?"#define USE_AOMAP":"",f.emissiveMap?"#define USE_EMISSIVEMAP":"",f.bumpMap?"#define USE_BUMPMAP":"",f.normalMap?"#define USE_NORMALMAP":"",f.displacementMap&&
+f.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",f.specularMap?"#define USE_SPECULARMAP":"",f.alphaMap?"#define USE_ALPHAMAP":"",f.vertexColors?"#define USE_COLOR":"",f.flatShading?"#define FLAT_SHADED":"",f.skinning?"#define USE_SKINNING":"",f.useVertexTexture?"#define BONE_TEXTURE":"",f.morphTargets?"#define USE_MORPHTARGETS":"",f.morphNormals&&!1===f.flatShading?"#define USE_MORPHNORMALS":"",f.doubleSided?"#define DOUBLE_SIDED":"",f.flipSided?"#define FLIP_SIDED":"",f.shadowMapEnabled?
+"#define USE_SHADOWMAP":"",f.shadowMapEnabled?"#define "+p:"",f.shadowMapDebug?"#define SHADOWMAP_DEBUG":"",0<f.pointLightShadows?"#define POINT_LIGHT_SHADOWS":"",f.sizeAttenuation?"#define USE_SIZEATTENUATION":"",f.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",f.logarithmicDepthBuffer&&d.extensions.get("EXT_frag_depth")?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;",
+"uniform vec3 cameraPosition;","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_COLOR","\tattribute vec3 color;","#endif","#ifdef USE_MORPHTARGETS","\tattribute vec3 morphTarget0;","\tattribute vec3 morphTarget1;","\tattribute vec3 morphTarget2;","\tattribute vec3 morphTarget3;","\t#ifdef USE_MORPHNORMALS","\t\tattribute vec3 morphNormal0;","\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;",
+"\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(b).join("\n"),d=[f.bumpMap||f.normalMap||f.flatShading||g.derivatives?"#extension GL_OES_standard_derivatives : enable":"",f.logarithmicDepthBuffer&&d.extensions.get("EXT_frag_depth")?"#extension GL_EXT_frag_depth : enable":"","precision "+f.precision+" float;","precision "+
+f.precision+" int;","#define SHADER_NAME "+g.__webglShader.name,v,"#define MAX_DIR_LIGHTS "+f.maxDirLights,"#define MAX_POINT_LIGHTS "+f.maxPointLights,"#define MAX_SPOT_LIGHTS "+f.maxSpotLights,"#define MAX_HEMI_LIGHTS "+f.maxHemiLights,"#define MAX_SHADOWS "+f.maxShadows,f.alphaTest?"#define ALPHATEST "+f.alphaTest:"",d.gammaInput?"#define GAMMA_INPUT":"",d.gammaOutput?"#define GAMMA_OUTPUT":"","#define GAMMA_FACTOR "+t,f.useFog&&f.fog?"#define USE_FOG":"",f.useFog&&f.fogExp?"#define FOG_EXP2":
+"",f.map?"#define USE_MAP":"",f.envMap?"#define USE_ENVMAP":"",f.envMap?"#define "+n:"",f.envMap?"#define "+q:"",f.envMap?"#define "+s:"",f.lightMap?"#define USE_LIGHTMAP":"",f.aoMap?"#define USE_AOMAP":"",f.emissiveMap?"#define USE_EMISSIVEMAP":"",f.bumpMap?"#define USE_BUMPMAP":"",f.normalMap?"#define USE_NORMALMAP":"",f.specularMap?"#define USE_SPECULARMAP":"",f.alphaMap?"#define USE_ALPHAMAP":"",f.vertexColors?"#define USE_COLOR":"",f.flatShading?"#define FLAT_SHADED":"",f.metal?"#define METAL":
+"",f.doubleSided?"#define DOUBLE_SIDED":"",f.flipSided?"#define FLIP_SIDED":"",f.shadowMapEnabled?"#define USE_SHADOWMAP":"",f.shadowMapEnabled?"#define "+p:"",f.shadowMapDebug?"#define SHADOWMAP_DEBUG":"",0<f.pointLightShadows?"#define POINT_LIGHT_SHADOWS":"",f.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",f.logarithmicDepthBuffer&&d.extensions.get("EXT_frag_depth")?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","\n"].filter(b).join("\n"));m=d+m;
+k=THREE.WebGLShader(h,h.VERTEX_SHADER,l+k);m=THREE.WebGLShader(h,h.FRAGMENT_SHADER,m);h.attachShader(u,k);h.attachShader(u,m);void 0!==g.index0AttributeName?h.bindAttribLocation(u,0,g.index0AttributeName):!0===f.morphTargets&&h.bindAttribLocation(u,0,"position");h.linkProgram(u);f=h.getProgramInfoLog(u);p=h.getShaderInfoLog(k);n=h.getShaderInfoLog(m);s=q=!0;if(!1===h.getProgramParameter(u,h.LINK_STATUS))q=!1,console.error("THREE.WebGLProgram: shader error: ",h.getError(),"gl.VALIDATE_STATUS",h.getProgramParameter(u,
+h.VALIDATE_STATUS),"gl.getProgramInfoLog",f,p,n);else if(""!==f)console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",f);else if(""===p||""===n)s=!1;s&&(this.diagnostics={runnable:q,material:g,programLog:f,vertexShader:{log:p,prefix:l},fragmentShader:{log:n,prefix:d}});h.deleteShader(k);h.deleteShader(m);var w;this.getUniforms=function(){if(void 0===w){for(var a={},b=h.getProgramParameter(u,h.ACTIVE_UNIFORMS),c=0;c<b;c++){var d=h.getActiveUniform(u,c).name,e=h.getUniformLocation(u,d),f=d.lastIndexOf("[0]");
+-1!==f&&f===d.length-3&&(a[d.substr(0,f)]=e);a[d]=e}w=a}return w};var D;this.getAttributes=function(){if(void 0===D){for(var a={},b=h.getProgramParameter(u,h.ACTIVE_ATTRIBUTES),c=0;c<b;c++){var d=h.getActiveAttrib(u,c).name;a[d]=h.getAttribLocation(u,d)}D=a}return D};this.destroy=function(){h.deleteProgram(u);this.program=void 0};Object.defineProperties(this,{uniforms:{get:function(){console.warn("THREE.WebGLProgram: .uniforms is now .getUniforms().");return this.getUniforms()}},attributes:{get:function(){console.warn("THREE.WebGLProgram: .attributes is now .getAttributes().");
+return this.getAttributes()}}});this.id=c++;this.code=e;this.usedTimes=1;this.program=u;this.vertexShader=k;this.fragmentShader=m;return this}}();
+THREE.WebGLPrograms=function(a,b){var c=[],d={MeshDepthMaterial:"depth",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points"},e="precision supportsVertexTextures map envMap envMapMode lightMap aoMap emissiveMap bumpMap normalMap displacementMap specularMap alphaMap combine vertexColors fog useFog fogExp flatShading sizeAttenuation logarithmicDepthBuffer skinning maxBones useVertexTexture morphTargets morphNormals maxMorphTargets maxMorphNormals maxDirLights maxPointLights maxSpotLights maxHemiLights maxShadows shadowMapEnabled pointLightShadows shadowMapType shadowMapDebug alphaTest metal doubleSided flipSided".split(" ");this.getParameters=
+function(c,e,h,l){var k,m,p,n,q,s=d[c.type];k=q=n=p=m=0;for(var t=e.length;k<t;k++){var v=e[k];!1!==v.visible&&(v instanceof THREE.DirectionalLight&&m++,v instanceof THREE.PointLight&&p++,v instanceof THREE.SpotLight&&n++,v instanceof THREE.HemisphereLight&&q++)}for(var v=k=t=0,u=e.length;v<u;v++){var w=e[v];w.castShadow&&((w instanceof THREE.SpotLight||w instanceof THREE.DirectionalLight)&&t++,w instanceof THREE.PointLight&&(t++,k++))}e=t;b.floatVertexTextures&&l&&l.skeleton&&l.skeleton.useVertexTexture?
+t=1024:(t=Math.floor((b.maxVertexUniforms-20)/4),void 0!==l&&l instanceof THREE.SkinnedMesh&&(t=Math.min(l.skeleton.bones.length,t),t<l.skeleton.bones.length&&console.warn("WebGLRenderer: too many bones - "+l.skeleton.bones.length+", this GPU supports just "+t+" (try OpenGL instead of ANGLE)")));v=a.getPrecision();null!==c.precision&&(v=b.getMaxPrecision(c.precision),v!==c.precision&&console.warn("THREE.WebGLRenderer.initMaterial:",c.precision,"not supported, using",v,"instead."));return{shaderID:s,
+precision:v,supportsVertexTextures:b.vertexTextures,map:!!c.map,envMap:!!c.envMap,envMapMode:c.envMap&&c.envMap.mapping,lightMap:!!c.lightMap,aoMap:!!c.aoMap,emissiveMap:!!c.emissiveMap,bumpMap:!!c.bumpMap,normalMap:!!c.normalMap,displacementMap:!!c.displacementMap,specularMap:!!c.specularMap,alphaMap:!!c.alphaMap,combine:c.combine,vertexColors:c.vertexColors,fog:h,useFog:c.fog,fogExp:h instanceof THREE.FogExp2,flatShading:c.shading===THREE.FlatShading,sizeAttenuation:c.sizeAttenuation,logarithmicDepthBuffer:b.logarithmicDepthBuffer,
+skinning:c.skinning,maxBones:t,useVertexTexture:b.floatVertexTextures&&l&&l.skeleton&&l.skeleton.useVertexTexture,morphTargets:c.morphTargets,morphNormals:c.morphNormals,maxMorphTargets:a.maxMorphTargets,maxMorphNormals:a.maxMorphNormals,maxDirLights:m,maxPointLights:p,maxSpotLights:n,maxHemiLights:q,maxShadows:e,pointLightShadows:k,shadowMapEnabled:a.shadowMap.enabled&&l.receiveShadow&&0<e,shadowMapType:a.shadowMap.type,shadowMapDebug:a.shadowMap.debug,alphaTest:c.alphaTest,metal:c.metal,doubleSided:c.side===
+THREE.DoubleSide,flipSided:c.side===THREE.BackSide}};this.getProgramCode=function(a,b){var c=[];b.shaderID?c.push(b.shaderID):(c.push(a.fragmentShader),c.push(a.vertexShader));if(void 0!==a.defines)for(var d in a.defines)c.push(d),c.push(a.defines[d]);for(d=0;d<e.length;d++){var k=e[d];c.push(k);c.push(b[k])}return c.join()};this.acquireProgram=function(b,d,e){for(var l,k=0,m=c.length;k<m;k++){var p=c[k];if(p.code===e){l=p;++l.usedTimes;break}}void 0===l&&(l=new THREE.WebGLProgram(a,e,b,d),c.push(l));
+return l};this.releaseProgram=function(a){if(0===--a.usedTimes){var b=c.indexOf(a);c[b]=c[c.length-1];c.pop();a.destroy()}};this.programs=c};THREE.WebGLProperties=function(){var a={};this.get=function(b){b=b.uuid;var c=a[b];void 0===c&&(c={},a[b]=c);return c};this.delete=function(b){delete a[b.uuid]};this.clear=function(){a={}}};
+THREE.WebGLShader=function(){function a(a){a=a.split("\n");for(var c=0;c<a.length;c++)a[c]=c+1+": "+a[c];return a.join("\n")}return function(b,c,d){var e=b.createShader(c);b.shaderSource(e,d);b.compileShader(e);!1===b.getShaderParameter(e,b.COMPILE_STATUS)&&console.error("THREE.WebGLShader: Shader couldn't compile.");""!==b.getShaderInfoLog(e)&&console.warn("THREE.WebGLShader: gl.getShaderInfoLog()",c===b.VERTEX_SHADER?"vertex":"fragment",b.getShaderInfoLog(e),a(d));return e}}();
+THREE.WebGLShadowMap=function(a,b,c){function d(a,b,c,d){var e=a.geometry,f=null,f=n,g=a.customDepthMaterial;c&&(f=q,g=a.customDistanceMaterial);g?f=g:(a=a instanceof THREE.SkinnedMesh&&b.skinning,g=0,void 0!==e.morphTargets&&0<e.morphTargets.length&&b.morphTargets&&(g|=1),a&&(g|=2),f=f[g]);f.visible=b.visible;f.wireframe=b.wireframe;f.wireframeLinewidth=b.wireframeLinewidth;c&&void 0!==f.uniforms.lightPos&&f.uniforms.lightPos.value.copy(d);return f}function e(a,b){if(!1!==a.visible){(a instanceof
+THREE.Mesh||a instanceof THREE.Line||a instanceof THREE.Points)&&a.castShadow&&(!1===a.frustumCulled||!0===h.intersectsObject(a))&&!0===a.material.visible&&(a.modelViewMatrix.multiplyMatrices(b.matrixWorldInverse,a.matrixWorld),p.push(a));for(var c=a.children,d=0,f=c.length;d<f;d++)e(c[d],b)}}var g=a.context,f=a.state,h=new THREE.Frustum,l=new THREE.Matrix4;new THREE.Vector3;new THREE.Vector3;for(var k=new THREE.Vector3,m=new THREE.Vector3,p=[],n=Array(4),q=Array(4),s=[new THREE.Vector3(1,0,0),new THREE.Vector3(-1,
+0,0),new THREE.Vector3(0,0,1),new THREE.Vector3(0,0,-1),new THREE.Vector3(0,1,0),new THREE.Vector3(0,-1,0)],t=[new THREE.Vector3(0,1,0),new THREE.Vector3(0,1,0),new THREE.Vector3(0,1,0),new THREE.Vector3(0,1,0),new THREE.Vector3(0,0,1),new THREE.Vector3(0,0,-1)],v=[new THREE.Vector4,new THREE.Vector4,new THREE.Vector4,new THREE.Vector4,new THREE.Vector4,new THREE.Vector4],u=new THREE.Vector4,w=THREE.ShaderLib.depthRGBA,D=THREE.UniformsUtils.clone(w.uniforms),x=THREE.ShaderLib.distanceRGBA,B=THREE.UniformsUtils.clone(x.uniforms),
+y=0;4!==y;++y){var z=0!==(y&1),A=0!==(y&2),J=new THREE.ShaderMaterial({uniforms:D,vertexShader:w.vertexShader,fragmentShader:w.fragmentShader,morphTargets:z,skinning:A});J._shadowPass=!0;n[y]=J;z=new THREE.ShaderMaterial({uniforms:B,vertexShader:x.vertexShader,fragmentShader:x.fragmentShader,morphTargets:z,skinning:A});z._shadowPass=!0;q[y]=z}var F=this;this.enabled=!1;this.autoUpdate=!0;this.needsUpdate=!1;this.type=THREE.PCFShadowMap;this.cullFace=THREE.CullFaceFront;this.render=function(n){var q,
+w;if(!1!==F.enabled&&(!1!==F.autoUpdate||!1!==F.needsUpdate)){g.clearColor(1,1,1,1);f.disable(g.BLEND);f.enable(g.CULL_FACE);g.frontFace(g.CCW);g.cullFace(F.cullFace===THREE.CullFaceFront?g.FRONT:g.BACK);f.setDepthTest(!0);a.getViewport(u);for(var x=0,D=b.length;x<D;x++){var y=b[x];if(!0===y.castShadow){var z=y.shadow,B=z.camera,A=z.mapSize;if(y instanceof THREE.PointLight){q=6;w=!0;var H=A.x/4,J=A.y/2;v[0].set(2*H,J,H,J);v[1].set(0,J,H,J);v[2].set(3*H,J,H,J);v[3].set(H,J,H,J);v[4].set(3*H,0,H,J);
+v[5].set(H,0,H,J)}else q=1,w=!1;null===z.map&&(H=THREE.LinearFilter,F.type===THREE.PCFSoftShadowMap&&(H=THREE.NearestFilter),z.map=new THREE.WebGLRenderTarget(A.x,A.y,{minFilter:H,magFilter:H,format:THREE.RGBAFormat}),z.matrix=new THREE.Matrix4,y instanceof THREE.SpotLight&&(B.aspect=A.x/A.y),B.updateProjectionMatrix());A=z.map;z=z.matrix;m.setFromMatrixPosition(y.matrixWorld);B.position.copy(m);a.setRenderTarget(A);a.clear();for(A=0;A<q;A++)for(w?(k.copy(B.position),k.add(s[A]),B.up.copy(t[A]),B.lookAt(k),
+H=v[A],a.setViewport(H.x,H.y,H.z,H.w)):(k.setFromMatrixPosition(y.target.matrixWorld),B.lookAt(k)),B.updateMatrixWorld(),B.matrixWorldInverse.getInverse(B.matrixWorld),z.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),z.multiply(B.projectionMatrix),z.multiply(B.matrixWorldInverse),l.multiplyMatrices(B.projectionMatrix,B.matrixWorldInverse),h.setFromMatrix(l),p.length=0,e(n,B),H=0,J=p.length;H<J;H++){var G=p[H],ia=c.update(G),U=G.material;if(U instanceof THREE.MeshFaceMaterial)for(var X=ia.groups,U=U.materials,
+da=0,ca=X.length;da<ca;da++){var ga=X[da],Z=U[ga.materialIndex];!0===Z.visible&&(Z=d(G,Z,w,m),a.renderBufferDirect(B,b,null,ia,Z,G,ga))}else Z=d(G,U,w,m),a.renderBufferDirect(B,b,null,ia,Z,G,null)}a.resetGLState()}}a.setViewport(u.x,u.y,u.z,u.w);n=a.getClearColor();q=a.getClearAlpha();a.setClearColor(n,q);f.enable(g.BLEND);F.cullFace===THREE.CullFaceFront&&g.cullFace(g.BACK);a.resetGLState();F.needsUpdate=!1}}};
+THREE.WebGLState=function(a,b,c){var d=this,e=new Uint8Array(16),g=new Uint8Array(16),f=new Uint8Array(16),h={},l=null,k=null,m=null,p=null,n=null,q=null,s=null,t=null,v=null,u=null,w=null,D=null,x=null,B=null,y=null,z=a.getParameter(a.MAX_TEXTURE_IMAGE_UNITS),A=void 0,J={};this.init=function(){a.clearColor(0,0,0,1);a.clearDepth(1);a.clearStencil(0);this.enable(a.DEPTH_TEST);a.depthFunc(a.LEQUAL);a.frontFace(a.CCW);a.cullFace(a.BACK);this.enable(a.CULL_FACE);this.enable(a.BLEND);a.blendEquation(a.FUNC_ADD);
+a.blendFunc(a.SRC_ALPHA,a.ONE_MINUS_SRC_ALPHA)};this.initAttributes=function(){for(var a=0,b=e.length;a<b;a++)e[a]=0};this.enableAttribute=function(c){e[c]=1;0===g[c]&&(a.enableVertexAttribArray(c),g[c]=1);0!==f[c]&&(b.get("ANGLE_instanced_arrays").vertexAttribDivisorANGLE(c,0),f[c]=0)};this.enableAttributeAndDivisor=function(b,c,d){e[b]=1;0===g[b]&&(a.enableVertexAttribArray(b),g[b]=1);f[b]!==c&&(d.vertexAttribDivisorANGLE(b,c),f[b]=c)};this.disableUnusedAttributes=function(){for(var b=0,c=g.length;b<
+c;b++)g[b]!==e[b]&&(a.disableVertexAttribArray(b),g[b]=0)};this.enable=function(b){!0!==h[b]&&(a.enable(b),h[b]=!0)};this.disable=function(b){!1!==h[b]&&(a.disable(b),h[b]=!1)};this.getCompressedTextureFormats=function(){if(null===l&&(l=[],b.get("WEBGL_compressed_texture_pvrtc")||b.get("WEBGL_compressed_texture_s3tc")))for(var c=a.getParameter(a.COMPRESSED_TEXTURE_FORMATS),d=0;d<c.length;d++)l.push(c[d]);return l};this.setBlending=function(b,d,e,f,g,h,l){b!==k&&(b===THREE.NoBlending?this.disable(a.BLEND):
+b===THREE.AdditiveBlending?(this.enable(a.BLEND),a.blendEquation(a.FUNC_ADD),a.blendFunc(a.SRC_ALPHA,a.ONE)):b===THREE.SubtractiveBlending?(this.enable(a.BLEND),a.blendEquation(a.FUNC_ADD),a.blendFunc(a.ZERO,a.ONE_MINUS_SRC_COLOR)):b===THREE.MultiplyBlending?(this.enable(a.BLEND),a.blendEquation(a.FUNC_ADD),a.blendFunc(a.ZERO,a.SRC_COLOR)):b===THREE.CustomBlending?this.enable(a.BLEND):(this.enable(a.BLEND),a.blendEquationSeparate(a.FUNC_ADD,a.FUNC_ADD),a.blendFuncSeparate(a.SRC_ALPHA,a.ONE_MINUS_SRC_ALPHA,
+a.ONE,a.ONE_MINUS_SRC_ALPHA)),k=b);if(b===THREE.CustomBlending){g=g||d;h=h||e;l=l||f;if(d!==m||g!==q)a.blendEquationSeparate(c(d),c(g)),m=d,q=g;if(e!==p||f!==n||h!==s||l!==t)a.blendFuncSeparate(c(e),c(f),c(h),c(l)),p=e,n=f,s=h,t=l}else t=s=q=n=p=m=null};this.setDepthFunc=function(b){if(v!==b){if(b)switch(b){case THREE.NeverDepth:a.depthFunc(a.NEVER);break;case THREE.AlwaysDepth:a.depthFunc(a.ALWAYS);break;case THREE.LessDepth:a.depthFunc(a.LESS);break;case THREE.LessEqualDepth:a.depthFunc(a.LEQUAL);
+break;case THREE.EqualDepth:a.depthFunc(a.EQUAL);break;case THREE.GreaterEqualDepth:a.depthFunc(a.GEQUAL);break;case THREE.GreaterDepth:a.depthFunc(a.GREATER);break;case THREE.NotEqualDepth:a.depthFunc(a.NOTEQUAL);break;default:a.depthFunc(a.LEQUAL)}else a.depthFunc(a.LEQUAL);v=b}};this.setDepthTest=function(b){b?this.enable(a.DEPTH_TEST):this.disable(a.DEPTH_TEST)};this.setDepthWrite=function(b){u!==b&&(a.depthMask(b),u=b)};this.setColorWrite=function(b){w!==b&&(a.colorMask(b,b,b,b),w=b)};this.setFlipSided=
+function(b){D!==b&&(b?a.frontFace(a.CW):a.frontFace(a.CCW),D=b)};this.setLineWidth=function(b){b!==x&&(a.lineWidth(b),x=b)};this.setPolygonOffset=function(b,c,d){b?this.enable(a.POLYGON_OFFSET_FILL):this.disable(a.POLYGON_OFFSET_FILL);!b||B===c&&y===d||(a.polygonOffset(c,d),B=c,y=d)};this.setScissorTest=function(b){b?this.enable(a.SCISSOR_TEST):this.disable(a.SCISSOR_TEST)};this.activeTexture=function(b){void 0===b&&(b=a.TEXTURE0+z-1);A!==b&&(a.activeTexture(b),A=b)};this.bindTexture=function(b,c){void 0===
+A&&d.activeTexture();var e=J[A];void 0===e&&(e={type:void 0,texture:void 0},J[A]=e);if(e.type!==b||e.texture!==c)a.bindTexture(b,c),e.type=b,e.texture=c};this.compressedTexImage2D=function(){try{a.compressedTexImage2D.apply(a,arguments)}catch(b){console.error(b)}};this.texImage2D=function(){try{a.texImage2D.apply(a,arguments)}catch(b){console.error(b)}};this.reset=function(){for(var b=0;b<g.length;b++)1===g[b]&&(a.disableVertexAttribArray(b),g[b]=0);h={};D=w=u=k=l=null}};
+THREE.LensFlarePlugin=function(a,b){var c,d,e,g,f,h,l,k,m,p,n=a.context,q=a.state,s,t,v,u,w,D;this.render=function(x,B,y,z){if(0!==b.length){x=new THREE.Vector3;var A=z/y,J=.5*y,F=.5*z,C=16/z,N=new THREE.Vector2(C*A,C),L=new THREE.Vector3(1,1,0),Q=new THREE.Vector2(1,1);if(void 0===v){var C=new Float32Array([-1,-1,0,0,1,-1,1,0,1,1,1,1,-1,1,0,1]),M=new Uint16Array([0,1,2,0,2,3]);s=n.createBuffer();t=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,s);n.bufferData(n.ARRAY_BUFFER,C,n.STATIC_DRAW);n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,
+t);n.bufferData(n.ELEMENT_ARRAY_BUFFER,M,n.STATIC_DRAW);w=n.createTexture();D=n.createTexture();q.bindTexture(n.TEXTURE_2D,w);n.texImage2D(n.TEXTURE_2D,0,n.RGB,16,16,0,n.RGB,n.UNSIGNED_BYTE,null);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.NEAREST);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.NEAREST);q.bindTexture(n.TEXTURE_2D,D);n.texImage2D(n.TEXTURE_2D,0,
+n.RGBA,16,16,0,n.RGBA,n.UNSIGNED_BYTE,null);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.NEAREST);n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.NEAREST);var C=(u=0<n.getParameter(n.MAX_VERTEX_TEXTURE_IMAGE_UNITS))?{vertexShader:"uniform lowp int renderType;\nuniform vec3 screenPosition;\nuniform vec2 scale;\nuniform float rotation;\nuniform sampler2D occlusionMap;\nattribute vec2 position;\nattribute vec2 uv;\nvarying vec2 vUV;\nvarying float vVisibility;\nvoid main() {\nvUV = uv;\nvec2 pos = position;\nif ( renderType == 2 ) {\nvec4 visibility = texture2D( occlusionMap, vec2( 0.1, 0.1 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.1 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.1 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.9 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.1, 0.9 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) );\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.5 ) );\nvVisibility =        visibility.r / 9.0;\nvVisibility *= 1.0 - visibility.g / 9.0;\nvVisibility *=       visibility.b / 9.0;\nvVisibility *= 1.0 - visibility.a / 9.0;\npos.x = cos( rotation ) * position.x - sin( rotation ) * position.y;\npos.y = sin( rotation ) * position.x + cos( rotation ) * position.y;\n}\ngl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 );\n}",
+fragmentShader:"uniform lowp int renderType;\nuniform sampler2D map;\nuniform float opacity;\nuniform vec3 color;\nvarying vec2 vUV;\nvarying float vVisibility;\nvoid main() {\nif ( renderType == 0 ) {\ngl_FragColor = vec4( 1.0, 0.0, 1.0, 0.0 );\n} else if ( renderType == 1 ) {\ngl_FragColor = texture2D( map, vUV );\n} else {\nvec4 texture = texture2D( map, vUV );\ntexture.a *= opacity * vVisibility;\ngl_FragColor = texture;\ngl_FragColor.rgb *= color;\n}\n}"}:{vertexShader:"uniform lowp int renderType;\nuniform vec3 screenPosition;\nuniform vec2 scale;\nuniform float rotation;\nattribute vec2 position;\nattribute vec2 uv;\nvarying vec2 vUV;\nvoid main() {\nvUV = uv;\nvec2 pos = position;\nif ( renderType == 2 ) {\npos.x = cos( rotation ) * position.x - sin( rotation ) * position.y;\npos.y = sin( rotation ) * position.x + cos( rotation ) * position.y;\n}\ngl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 );\n}",
+fragmentShader:"precision mediump float;\nuniform lowp int renderType;\nuniform sampler2D map;\nuniform sampler2D occlusionMap;\nuniform float opacity;\nuniform vec3 color;\nvarying vec2 vUV;\nvoid main() {\nif ( renderType == 0 ) {\ngl_FragColor = vec4( texture2D( map, vUV ).rgb, 0.0 );\n} else if ( renderType == 1 ) {\ngl_FragColor = texture2D( map, vUV );\n} else {\nfloat visibility = texture2D( occlusionMap, vec2( 0.5, 0.1 ) ).a;\nvisibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) ).a;\nvisibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) ).a;\nvisibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) ).a;\nvisibility = ( 1.0 - visibility / 4.0 );\nvec4 texture = texture2D( map, vUV );\ntexture.a *= opacity * visibility;\ngl_FragColor = texture;\ngl_FragColor.rgb *= color;\n}\n}"},
+M=n.createProgram(),K=n.createShader(n.FRAGMENT_SHADER),E=n.createShader(n.VERTEX_SHADER),O="precision "+a.getPrecision()+" float;\n";n.shaderSource(K,O+C.fragmentShader);n.shaderSource(E,O+C.vertexShader);n.compileShader(K);n.compileShader(E);n.attachShader(M,K);n.attachShader(M,E);n.linkProgram(M);v=M;m=n.getAttribLocation(v,"position");p=n.getAttribLocation(v,"uv");c=n.getUniformLocation(v,"renderType");d=n.getUniformLocation(v,"map");e=n.getUniformLocation(v,"occlusionMap");g=n.getUniformLocation(v,
+"opacity");f=n.getUniformLocation(v,"color");h=n.getUniformLocation(v,"scale");l=n.getUniformLocation(v,"rotation");k=n.getUniformLocation(v,"screenPosition")}n.useProgram(v);q.initAttributes();q.enableAttribute(m);q.enableAttribute(p);q.disableUnusedAttributes();n.uniform1i(e,0);n.uniform1i(d,1);n.bindBuffer(n.ARRAY_BUFFER,s);n.vertexAttribPointer(m,2,n.FLOAT,!1,16,0);n.vertexAttribPointer(p,2,n.FLOAT,!1,16,8);n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,t);q.disable(n.CULL_FACE);n.depthMask(!1);M=0;for(K=
+b.length;M<K;M++)if(C=16/z,N.set(C*A,C),E=b[M],x.set(E.matrixWorld.elements[12],E.matrixWorld.elements[13],E.matrixWorld.elements[14]),x.applyMatrix4(B.matrixWorldInverse),x.applyProjection(B.projectionMatrix),L.copy(x),Q.x=L.x*J+J,Q.y=L.y*F+F,u||0<Q.x&&Q.x<y&&0<Q.y&&Q.y<z){q.activeTexture(n.TEXTURE0);q.bindTexture(n.TEXTURE_2D,null);q.activeTexture(n.TEXTURE1);q.bindTexture(n.TEXTURE_2D,w);n.copyTexImage2D(n.TEXTURE_2D,0,n.RGB,Q.x-8,Q.y-8,16,16,0);n.uniform1i(c,0);n.uniform2f(h,N.x,N.y);n.uniform3f(k,
+L.x,L.y,L.z);q.disable(n.BLEND);q.enable(n.DEPTH_TEST);n.drawElements(n.TRIANGLES,6,n.UNSIGNED_SHORT,0);q.activeTexture(n.TEXTURE0);q.bindTexture(n.TEXTURE_2D,D);n.copyTexImage2D(n.TEXTURE_2D,0,n.RGBA,Q.x-8,Q.y-8,16,16,0);n.uniform1i(c,1);q.disable(n.DEPTH_TEST);q.activeTexture(n.TEXTURE1);q.bindTexture(n.TEXTURE_2D,w);n.drawElements(n.TRIANGLES,6,n.UNSIGNED_SHORT,0);E.positionScreen.copy(L);E.customUpdateCallback?E.customUpdateCallback(E):E.updateLensFlares();n.uniform1i(c,2);q.enable(n.BLEND);for(var O=
+0,T=E.lensFlares.length;O<T;O++){var H=E.lensFlares[O];.001<H.opacity&&.001<H.scale&&(L.x=H.x,L.y=H.y,L.z=H.z,C=H.size*H.scale/z,N.x=C*A,N.y=C,n.uniform3f(k,L.x,L.y,L.z),n.uniform2f(h,N.x,N.y),n.uniform1f(l,H.rotation),n.uniform1f(g,H.opacity),n.uniform3f(f,H.color.r,H.color.g,H.color.b),q.setBlending(H.blending,H.blendEquation,H.blendSrc,H.blendDst),a.setTexture(H.texture,1),n.drawElements(n.TRIANGLES,6,n.UNSIGNED_SHORT,0))}}q.enable(n.CULL_FACE);q.enable(n.DEPTH_TEST);n.depthMask(!0);a.resetGLState()}}};
+THREE.SpritePlugin=function(a,b){var c,d,e,g,f,h,l,k,m,p,n,q,s,t,v,u,w;function D(a,b){return a.z!==b.z?b.z-a.z:b.id-a.id}var x=a.context,B=a.state,y,z,A,J,F=new THREE.Vector3,C=new THREE.Quaternion,N=new THREE.Vector3;this.render=function(L,Q){if(0!==b.length){if(void 0===A){var M=new Float32Array([-.5,-.5,0,0,.5,-.5,1,0,.5,.5,1,1,-.5,.5,0,1]),K=new Uint16Array([0,1,2,0,2,3]);y=x.createBuffer();z=x.createBuffer();x.bindBuffer(x.ARRAY_BUFFER,y);x.bufferData(x.ARRAY_BUFFER,M,x.STATIC_DRAW);x.bindBuffer(x.ELEMENT_ARRAY_BUFFER,
+z);x.bufferData(x.ELEMENT_ARRAY_BUFFER,K,x.STATIC_DRAW);var M=x.createProgram(),K=x.createShader(x.VERTEX_SHADER),E=x.createShader(x.FRAGMENT_SHADER);x.shaderSource(K,["precision "+a.getPrecision()+" float;","uniform mat4 modelViewMatrix;\nuniform mat4 projectionMatrix;\nuniform float rotation;\nuniform vec2 scale;\nuniform vec2 uvOffset;\nuniform vec2 uvScale;\nattribute vec2 position;\nattribute vec2 uv;\nvarying vec2 vUV;\nvoid main() {\nvUV = uvOffset + uv * uvScale;\nvec2 alignedPosition = position * scale;\nvec2 rotatedPosition;\nrotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\nrotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\nvec4 finalPosition;\nfinalPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\nfinalPosition.xy += rotatedPosition;\nfinalPosition = projectionMatrix * finalPosition;\ngl_Position = finalPosition;\n}"].join("\n"));
+x.shaderSource(E,["precision "+a.getPrecision()+" float;","uniform vec3 color;\nuniform sampler2D map;\nuniform float opacity;\nuniform int fogType;\nuniform vec3 fogColor;\nuniform float fogDensity;\nuniform float fogNear;\nuniform float fogFar;\nuniform float alphaTest;\nvarying vec2 vUV;\nvoid main() {\nvec4 texture = texture2D( map, vUV );\nif ( texture.a < alphaTest ) discard;\ngl_FragColor = vec4( color * texture.xyz, texture.a * opacity );\nif ( fogType > 0 ) {\nfloat depth = gl_FragCoord.z / gl_FragCoord.w;\nfloat fogFactor = 0.0;\nif ( fogType == 1 ) {\nfogFactor = smoothstep( fogNear, fogFar, depth );\n} else {\nconst float LOG2 = 1.442695;\nfogFactor = exp2( - fogDensity * fogDensity * depth * depth * LOG2 );\nfogFactor = 1.0 - clamp( fogFactor, 0.0, 1.0 );\n}\ngl_FragColor = mix( gl_FragColor, vec4( fogColor, gl_FragColor.w ), fogFactor );\n}\n}"].join("\n"));
+x.compileShader(K);x.compileShader(E);x.attachShader(M,K);x.attachShader(M,E);x.linkProgram(M);A=M;u=x.getAttribLocation(A,"position");w=x.getAttribLocation(A,"uv");c=x.getUniformLocation(A,"uvOffset");d=x.getUniformLocation(A,"uvScale");e=x.getUniformLocation(A,"rotation");g=x.getUniformLocation(A,"scale");f=x.getUniformLocation(A,"color");h=x.getUniformLocation(A,"map");l=x.getUniformLocation(A,"opacity");k=x.getUniformLocation(A,"modelViewMatrix");m=x.getUniformLocation(A,"projectionMatrix");p=
+x.getUniformLocation(A,"fogType");n=x.getUniformLocation(A,"fogDensity");q=x.getUniformLocation(A,"fogNear");s=x.getUniformLocation(A,"fogFar");t=x.getUniformLocation(A,"fogColor");v=x.getUniformLocation(A,"alphaTest");M=document.createElement("canvas");M.width=8;M.height=8;K=M.getContext("2d");K.fillStyle="white";K.fillRect(0,0,8,8);J=new THREE.Texture(M);J.needsUpdate=!0}x.useProgram(A);B.initAttributes();B.enableAttribute(u);B.enableAttribute(w);B.disableUnusedAttributes();B.disable(x.CULL_FACE);
+B.enable(x.BLEND);x.bindBuffer(x.ARRAY_BUFFER,y);x.vertexAttribPointer(u,2,x.FLOAT,!1,16,0);x.vertexAttribPointer(w,2,x.FLOAT,!1,16,8);x.bindBuffer(x.ELEMENT_ARRAY_BUFFER,z);x.uniformMatrix4fv(m,!1,Q.projectionMatrix.elements);B.activeTexture(x.TEXTURE0);x.uniform1i(h,0);K=M=0;(E=L.fog)?(x.uniform3f(t,E.color.r,E.color.g,E.color.b),E instanceof THREE.Fog?(x.uniform1f(q,E.near),x.uniform1f(s,E.far),x.uniform1i(p,1),K=M=1):E instanceof THREE.FogExp2&&(x.uniform1f(n,E.density),x.uniform1i(p,2),K=M=2)):
+(x.uniform1i(p,0),K=M=0);for(var E=0,O=b.length;E<O;E++){var T=b[E];T.modelViewMatrix.multiplyMatrices(Q.matrixWorldInverse,T.matrixWorld);T.z=-T.modelViewMatrix.elements[14]}b.sort(D);for(var H=[],E=0,O=b.length;E<O;E++){var T=b[E],R=T.material;x.uniform1f(v,R.alphaTest);x.uniformMatrix4fv(k,!1,T.modelViewMatrix.elements);T.matrixWorld.decompose(F,C,N);H[0]=N.x;H[1]=N.y;T=0;L.fog&&R.fog&&(T=K);M!==T&&(x.uniform1i(p,T),M=T);null!==R.map?(x.uniform2f(c,R.map.offset.x,R.map.offset.y),x.uniform2f(d,
+R.map.repeat.x,R.map.repeat.y)):(x.uniform2f(c,0,0),x.uniform2f(d,1,1));x.uniform1f(l,R.opacity);x.uniform3f(f,R.color.r,R.color.g,R.color.b);x.uniform1f(e,R.rotation);x.uniform2fv(g,H);B.setBlending(R.blending,R.blendEquation,R.blendSrc,R.blendDst);B.setDepthTest(R.depthTest);B.setDepthWrite(R.depthWrite);R.map&&R.map.image&&R.map.image.width?a.setTexture(R.map,0):a.setTexture(J,0);x.drawElements(x.TRIANGLES,6,x.UNSIGNED_SHORT,0)}B.enable(x.CULL_FACE);a.resetGLState()}}};
+THREE.CurveUtils={tangentQuadraticBezier:function(a,b,c,d){return 2*(1-a)*(c-b)+2*a*(d-c)},tangentCubicBezier:function(a,b,c,d,e){return-3*b*(1-a)*(1-a)+3*c*(1-a)*(1-a)-6*a*c*(1-a)+6*a*d*(1-a)-3*a*a*d+3*a*a*e},tangentSpline:function(a,b,c,d,e){return 6*a*a-6*a+(3*a*a-4*a+1)+(-6*a*a+6*a)+(3*a*a-2*a)},interpolate:function(a,b,c,d,e){a=.5*(c-a);d=.5*(d-b);var g=e*e;return(2*b-2*c+a+d)*e*g+(-3*b+3*c-2*a-d)*g+a*e+b}};
+THREE.GeometryUtils={merge:function(a,b,c){console.warn("THREE.GeometryUtils: .merge() has been moved to Geometry. Use geometry.merge( geometry2, matrix, materialIndexOffset ) instead.");var d;b instanceof THREE.Mesh&&(b.matrixAutoUpdate&&b.updateMatrix(),d=b.matrix,b=b.geometry);a.merge(b,d,c)},center:function(a){console.warn("THREE.GeometryUtils: .center() has been moved to Geometry. Use geometry.center() instead.");return a.center()}};
+THREE.ImageUtils={crossOrigin:void 0,loadTexture:function(a,b,c,d){console.warn("THREE.ImageUtils.loadTexture is being deprecated. Use THREE.TextureLoader() instead.");var e=new THREE.TextureLoader;e.setCrossOrigin(this.crossOrigin);a=e.load(a,c,void 0,d);b&&(a.mapping=b);return a},loadTextureCube:function(a,b,c,d){console.warn("THREE.ImageUtils.loadTextureCube is being deprecated. Use THREE.CubeTextureLoader() instead.");var e=new THREE.CubeTextureLoader;e.setCrossOrigin(this.crossOrigin);a=e.load(a,
+c,void 0,d);b&&(a.mapping=b);return a},loadCompressedTexture:function(){console.error("THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.")},loadCompressedTextureCube:function(){console.error("THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.")}};
+THREE.SceneUtils={createMultiMaterialObject:function(a,b){for(var c=new THREE.Group,d=0,e=b.length;d<e;d++)c.add(new THREE.Mesh(a,b[d]));return c},detach:function(a,b,c){a.applyMatrix(b.matrixWorld);b.remove(a);c.add(a)},attach:function(a,b,c){var d=new THREE.Matrix4;d.getInverse(c.matrixWorld);a.applyMatrix(d);b.remove(a);c.add(a)}};
+THREE.ShapeUtils={area:function(a){for(var b=a.length,c=0,d=b-1,e=0;e<b;d=e++)c+=a[d].x*a[e].y-a[e].x*a[d].y;return.5*c},triangulate:function(){return function(a,b){var c=a.length;if(3>c)return null;var d=[],e=[],g=[],f,h,l;if(0<THREE.ShapeUtils.area(a))for(h=0;h<c;h++)e[h]=h;else for(h=0;h<c;h++)e[h]=c-1-h;var k=2*c;for(h=c-1;2<c;){if(0>=k--){console.warn("THREE.ShapeUtils: Unable to triangulate polygon! in triangulate()");break}f=h;c<=f&&(f=0);h=f+1;c<=h&&(h=0);l=h+1;c<=l&&(l=0);var m;a:{var p=
+m=void 0,n=void 0,q=void 0,s=void 0,t=void 0,v=void 0,u=void 0,w=void 0,p=a[e[f]].x,n=a[e[f]].y,q=a[e[h]].x,s=a[e[h]].y,t=a[e[l]].x,v=a[e[l]].y;if(Number.EPSILON>(q-p)*(v-n)-(s-n)*(t-p))m=!1;else{var D=void 0,x=void 0,B=void 0,y=void 0,z=void 0,A=void 0,J=void 0,F=void 0,C=void 0,N=void 0,C=F=J=w=u=void 0,D=t-q,x=v-s,B=p-t,y=n-v,z=q-p,A=s-n;for(m=0;m<c;m++)if(u=a[e[m]].x,w=a[e[m]].y,!(u===p&&w===n||u===q&&w===s||u===t&&w===v)&&(J=u-p,F=w-n,C=u-q,N=w-s,u-=t,w-=v,C=D*N-x*C,J=z*F-A*J,F=B*w-y*u,C>=-Number.EPSILON&&
+F>=-Number.EPSILON&&J>=-Number.EPSILON)){m=!1;break a}m=!0}}if(m){d.push([a[e[f]],a[e[h]],a[e[l]]]);g.push([e[f],e[h],e[l]]);f=h;for(l=h+1;l<c;f++,l++)e[f]=e[l];c--;k=2*c}}return b?g:d}}(),triangulateShape:function(a,b){function c(a,b,c){return a.x!==b.x?a.x<b.x?a.x<=c.x&&c.x<=b.x:b.x<=c.x&&c.x<=a.x:a.y<b.y?a.y<=c.y&&c.y<=b.y:b.y<=c.y&&c.y<=a.y}function d(a,b,d,e,f){var g=b.x-a.x,h=b.y-a.y,k=e.x-d.x,l=e.y-d.y,m=a.x-d.x,p=a.y-d.y,z=h*k-g*l,A=h*m-g*p;if(Math.abs(z)>Number.EPSILON){if(0<z){if(0>A||A>
+z)return[];k=l*m-k*p;if(0>k||k>z)return[]}else{if(0<A||A<z)return[];k=l*m-k*p;if(0<k||k<z)return[]}if(0===k)return!f||0!==A&&A!==z?[a]:[];if(k===z)return!f||0!==A&&A!==z?[b]:[];if(0===A)return[d];if(A===z)return[e];f=k/z;return[{x:a.x+f*g,y:a.y+f*h}]}if(0!==A||l*m!==k*p)return[];h=0===g&&0===h;k=0===k&&0===l;if(h&&k)return a.x!==d.x||a.y!==d.y?[]:[a];if(h)return c(d,e,a)?[a]:[];if(k)return c(a,b,d)?[d]:[];0!==g?(a.x<b.x?(g=a,k=a.x,h=b,a=b.x):(g=b,k=b.x,h=a,a=a.x),d.x<e.x?(b=d,z=d.x,l=e,d=e.x):(b=
+e,z=e.x,l=d,d=d.x)):(a.y<b.y?(g=a,k=a.y,h=b,a=b.y):(g=b,k=b.y,h=a,a=a.y),d.y<e.y?(b=d,z=d.y,l=e,d=e.y):(b=e,z=e.y,l=d,d=d.y));return k<=z?a<z?[]:a===z?f?[]:[b]:a<=d?[b,h]:[b,l]:k>d?[]:k===d?f?[]:[g]:a<=d?[g,h]:[g,l]}function e(a,b,c,d){var e=b.x-a.x,f=b.y-a.y;b=c.x-a.x;c=c.y-a.y;var g=d.x-a.x;d=d.y-a.y;a=e*c-f*b;e=e*d-f*g;return Math.abs(a)>Number.EPSILON?(b=g*c-d*b,0<a?0<=e&&0<=b:0<=e||0<=b):0<e}var g,f,h,l,k,m={};h=a.concat();g=0;for(f=b.length;g<f;g++)Array.prototype.push.apply(h,b[g]);g=0;for(f=
+h.length;g<f;g++)k=h[g].x+":"+h[g].y,void 0!==m[k]&&console.warn("THREE.Shape: Duplicate point",k),m[k]=g;g=function(a,b){function c(a,b){var d=h.length-1,f=a-1;0>f&&(f=d);var g=a+1;g>d&&(g=0);d=e(h[a],h[f],h[g],k[b]);if(!d)return!1;d=k.length-1;f=b-1;0>f&&(f=d);g=b+1;g>d&&(g=0);return(d=e(k[b],k[f],k[g],h[a]))?!0:!1}function f(a,b){var c,e;for(c=0;c<h.length;c++)if(e=c+1,e%=h.length,e=d(a,b,h[c],h[e],!0),0<e.length)return!0;return!1}function g(a,c){var e,f,h,k;for(e=0;e<l.length;e++)for(f=b[l[e]],
+h=0;h<f.length;h++)if(k=h+1,k%=f.length,k=d(a,c,f[h],f[k],!0),0<k.length)return!0;return!1}var h=a.concat(),k,l=[],m,p,y,z,A,J=[],F,C,N,L=0;for(m=b.length;L<m;L++)l.push(L);F=0;for(var Q=2*l.length;0<l.length;){Q--;if(0>Q){console.log("Infinite Loop! Holes left:"+l.length+", Probably Hole outside Shape!");break}for(p=F;p<h.length;p++){y=h[p];m=-1;for(L=0;L<l.length;L++)if(z=l[L],A=y.x+":"+y.y+":"+z,void 0===J[A]){k=b[z];for(C=0;C<k.length;C++)if(z=k[C],c(p,C)&&!f(y,z)&&!g(y,z)){m=C;l.splice(L,1);
+F=h.slice(0,p+1);z=h.slice(p);C=k.slice(m);N=k.slice(0,m+1);h=F.concat(C).concat(N).concat(z);F=p;break}if(0<=m)break;J[A]=!0}if(0<=m)break}}return h}(a,b);var p=THREE.ShapeUtils.triangulate(g,!1);g=0;for(f=p.length;g<f;g++)for(l=p[g],h=0;3>h;h++)k=l[h].x+":"+l[h].y,k=m[k],void 0!==k&&(l[h]=k);return p.concat()},isClockWise:function(a){return 0>THREE.ShapeUtils.area(a)},b2:function(){return function(a,b,c,d){var e=1-a;return e*e*b+2*(1-a)*a*c+a*a*d}}(),b3:function(){return function(a,b,c,d,e){var g=
+1-a,f=1-a;return g*g*g*b+3*f*f*a*c+3*(1-a)*a*a*d+a*a*a*e}}()};THREE.Audio=function(a){THREE.Object3D.call(this);this.type="Audio";this.context=a.context;this.source=this.context.createBufferSource();this.source.onended=this.onEnded.bind(this);this.gain=this.context.createGain();this.gain.connect(this.context.destination);this.panner=this.context.createPanner();this.panner.connect(this.gain);this.autoplay=!1;this.startTime=0;this.playbackRate=1;this.isPlaying=!1};THREE.Audio.prototype=Object.create(THREE.Object3D.prototype);
+THREE.Audio.prototype.constructor=THREE.Audio;THREE.Audio.prototype.load=function(a){var b=this,c=new XMLHttpRequest;c.open("GET",a,!0);c.responseType="arraybuffer";c.onload=function(a){b.context.decodeAudioData(this.response,function(a){b.source.buffer=a;b.autoplay&&b.play()})};c.send();return this};
+THREE.Audio.prototype.play=function(){if(!0===this.isPlaying)console.warn("THREE.Audio: Audio is already playing.");else{var a=this.context.createBufferSource();a.buffer=this.source.buffer;a.loop=this.source.loop;a.onended=this.source.onended;a.start(0,this.startTime);a.playbackRate.value=this.playbackRate;this.isPlaying=!0;this.source=a;this.connect()}};THREE.Audio.prototype.pause=function(){this.source.stop();this.startTime=this.context.currentTime};
+THREE.Audio.prototype.stop=function(){this.source.stop();this.startTime=0};THREE.Audio.prototype.connect=function(){void 0!==this.filter?(this.source.connect(this.filter),this.filter.connect(this.panner)):this.source.connect(this.panner)};THREE.Audio.prototype.disconnect=function(){void 0!==this.filter?(this.source.disconnect(this.filter),this.filter.disconnect(this.panner)):this.source.disconnect(this.panner)};
+THREE.Audio.prototype.setFilter=function(a){!0===this.isPlaying?(this.disconnect(),this.filter=a,this.connect()):this.filter=a};THREE.Audio.prototype.getFilter=function(){return this.filter};THREE.Audio.prototype.setPlaybackRate=function(a){this.playbackRate=a;!0===this.isPlaying&&(this.source.playbackRate.value=this.playbackRate)};THREE.Audio.prototype.getPlaybackRate=function(){return this.playbackRate};THREE.Audio.prototype.onEnded=function(){this.isPlaying=!1};
+THREE.Audio.prototype.setLoop=function(a){this.source.loop=a};THREE.Audio.prototype.getLoop=function(){return this.source.loop};THREE.Audio.prototype.setRefDistance=function(a){this.panner.refDistance=a};THREE.Audio.prototype.getRefDistance=function(){return this.panner.refDistance};THREE.Audio.prototype.setRolloffFactor=function(a){this.panner.rolloffFactor=a};THREE.Audio.prototype.getRolloffFactor=function(){return this.panner.rolloffFactor};
+THREE.Audio.prototype.setVolume=function(a){this.gain.gain.value=a};THREE.Audio.prototype.getVolume=function(){return this.gain.gain.value};THREE.Audio.prototype.updateMatrixWorld=function(){var a=new THREE.Vector3;return function(b){THREE.Object3D.prototype.updateMatrixWorld.call(this,b);a.setFromMatrixPosition(this.matrixWorld);this.panner.setPosition(a.x,a.y,a.z)}}();THREE.AudioListener=function(){THREE.Object3D.call(this);this.type="AudioListener";this.context=new (window.AudioContext||window.webkitAudioContext)};
+THREE.AudioListener.prototype=Object.create(THREE.Object3D.prototype);THREE.AudioListener.prototype.constructor=THREE.AudioListener;
+THREE.AudioListener.prototype.updateMatrixWorld=function(){var a=new THREE.Vector3,b=new THREE.Quaternion,c=new THREE.Vector3,d=new THREE.Vector3;return function(e){THREE.Object3D.prototype.updateMatrixWorld.call(this,e);e=this.context.listener;var g=this.up;this.matrixWorld.decompose(a,b,c);d.set(0,0,-1).applyQuaternion(b);e.setPosition(a.x,a.y,a.z);e.setOrientation(d.x,d.y,d.z,g.x,g.y,g.z)}}();THREE.Curve=function(){};
+THREE.Curve.prototype={constructor:THREE.Curve,getPoint:function(a){console.warn("THREE.Curve: Warning, getPoint() not implemented!");return null},getPointAt:function(a){a=this.getUtoTmapping(a);return this.getPoint(a)},getPoints:function(a){a||(a=5);var b,c=[];for(b=0;b<=a;b++)c.push(this.getPoint(b/a));return c},getSpacedPoints:function(a){a||(a=5);var b,c=[];for(b=0;b<=a;b++)c.push(this.getPointAt(b/a));return c},getLength:function(){var a=this.getLengths();return a[a.length-1]},getLengths:function(a){a||
+(a=this.__arcLengthDivisions?this.__arcLengthDivisions:200);if(this.cacheArcLengths&&this.cacheArcLengths.length===a+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;var b=[],c,d=this.getPoint(0),e,g=0;b.push(0);for(e=1;e<=a;e++)c=this.getPoint(e/a),g+=c.distanceTo(d),b.push(g),d=c;return this.cacheArcLengths=b},updateArcLengths:function(){this.needsUpdate=!0;this.getLengths()},getUtoTmapping:function(a,b){var c=this.getLengths(),d=0,e=c.length,g;g=b?b:a*c[e-1];for(var f=0,h=e-
+1,l;f<=h;)if(d=Math.floor(f+(h-f)/2),l=c[d]-g,0>l)f=d+1;else if(0<l)h=d-1;else{h=d;break}d=h;if(c[d]===g)return d/(e-1);f=c[d];return c=(d+(g-f)/(c[d+1]-f))/(e-1)},getTangent:function(a){var b=a-1E-4;a+=1E-4;0>b&&(b=0);1<a&&(a=1);b=this.getPoint(b);return this.getPoint(a).clone().sub(b).normalize()},getTangentAt:function(a){a=this.getUtoTmapping(a);return this.getTangent(a)}};THREE.Curve.Utils=THREE.CurveUtils;
+THREE.Curve.create=function(a,b){a.prototype=Object.create(THREE.Curve.prototype);a.prototype.constructor=a;a.prototype.getPoint=b;return a};THREE.CurvePath=function(){this.curves=[];this.autoClose=!1};THREE.CurvePath.prototype=Object.create(THREE.Curve.prototype);THREE.CurvePath.prototype.constructor=THREE.CurvePath;THREE.CurvePath.prototype.add=function(a){this.curves.push(a)};
+THREE.CurvePath.prototype.closePath=function(){var a=this.curves[0].getPoint(0),b=this.curves[this.curves.length-1].getPoint(1);a.equals(b)||this.curves.push(new THREE.LineCurve(b,a))};THREE.CurvePath.prototype.getPoint=function(a){for(var b=a*this.getLength(),c=this.getCurveLengths(),d=0;d<c.length;){if(c[d]>=b)return a=this.curves[d],b=1-(c[d]-b)/a.getLength(),a.getPointAt(b);d++}return null};THREE.CurvePath.prototype.getLength=function(){var a=this.getCurveLengths();return a[a.length-1]};
+THREE.CurvePath.prototype.getCurveLengths=function(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var a=[],b=0,c=0,d=this.curves.length;c<d;c++)b+=this.curves[c].getLength(),a.push(b);return this.cacheLengths=a};THREE.CurvePath.prototype.createPointsGeometry=function(a){a=this.getPoints(a,!0);return this.createGeometry(a)};THREE.CurvePath.prototype.createSpacedPointsGeometry=function(a){a=this.getSpacedPoints(a,!0);return this.createGeometry(a)};
+THREE.CurvePath.prototype.createGeometry=function(a){for(var b=new THREE.Geometry,c=0,d=a.length;c<d;c++){var e=a[c];b.vertices.push(new THREE.Vector3(e.x,e.y,e.z||0))}return b};THREE.Path=function(a){THREE.CurvePath.call(this);this.actions=[];a&&this.fromPoints(a)};THREE.Path.prototype=Object.create(THREE.CurvePath.prototype);THREE.Path.prototype.constructor=THREE.Path;THREE.Path.prototype.fromPoints=function(a){this.moveTo(a[0].x,a[0].y);for(var b=1,c=a.length;b<c;b++)this.lineTo(a[b].x,a[b].y)};
+THREE.Path.prototype.moveTo=function(a,b){this.actions.push({action:"moveTo",args:[a,b]})};THREE.Path.prototype.lineTo=function(a,b){var c=this.actions[this.actions.length-1].args,c=new THREE.LineCurve(new THREE.Vector2(c[c.length-2],c[c.length-1]),new THREE.Vector2(a,b));this.curves.push(c);this.actions.push({action:"lineTo",args:[a,b]})};
+THREE.Path.prototype.quadraticCurveTo=function(a,b,c,d){var e=this.actions[this.actions.length-1].args,e=new THREE.QuadraticBezierCurve(new THREE.Vector2(e[e.length-2],e[e.length-1]),new THREE.Vector2(a,b),new THREE.Vector2(c,d));this.curves.push(e);this.actions.push({action:"quadraticCurveTo",args:[a,b,c,d]})};
+THREE.Path.prototype.bezierCurveTo=function(a,b,c,d,e,g){var f=this.actions[this.actions.length-1].args,f=new THREE.CubicBezierCurve(new THREE.Vector2(f[f.length-2],f[f.length-1]),new THREE.Vector2(a,b),new THREE.Vector2(c,d),new THREE.Vector2(e,g));this.curves.push(f);this.actions.push({action:"bezierCurveTo",args:[a,b,c,d,e,g]})};
+THREE.Path.prototype.splineThru=function(a){var b=Array.prototype.slice.call(arguments),c=this.actions[this.actions.length-1].args,c=[new THREE.Vector2(c[c.length-2],c[c.length-1])];Array.prototype.push.apply(c,a);c=new THREE.SplineCurve(c);this.curves.push(c);this.actions.push({action:"splineThru",args:b})};THREE.Path.prototype.arc=function(a,b,c,d,e,g){var f=this.actions[this.actions.length-1].args;this.absarc(a+f[f.length-2],b+f[f.length-1],c,d,e,g)};
+THREE.Path.prototype.absarc=function(a,b,c,d,e,g){this.absellipse(a,b,c,c,d,e,g)};THREE.Path.prototype.ellipse=function(a,b,c,d,e,g,f,h){var l=this.actions[this.actions.length-1].args;this.absellipse(a+l[l.length-2],b+l[l.length-1],c,d,e,g,f,h)};THREE.Path.prototype.absellipse=function(a,b,c,d,e,g,f,h){var l=[a,b,c,d,e,g,f,h||0];a=new THREE.EllipseCurve(a,b,c,d,e,g,f,h);this.curves.push(a);a=a.getPoint(1);l.push(a.x);l.push(a.y);this.actions.push({action:"ellipse",args:l})};
+THREE.Path.prototype.getSpacedPoints=function(a,b){a||(a=40);for(var c=[],d=0;d<a;d++)c.push(this.getPoint(d/a));return c};
+THREE.Path.prototype.getPoints=function(a,b){a=a||12;for(var c=THREE.ShapeUtils.b2,d=THREE.ShapeUtils.b3,e=[],g,f,h,l,k,m,p,n,q,s,t=0,v=this.actions.length;t<v;t++){q=this.actions[t];var u=q.args;switch(q.action){case "moveTo":e.push(new THREE.Vector2(u[0],u[1]));break;case "lineTo":e.push(new THREE.Vector2(u[0],u[1]));break;case "quadraticCurveTo":g=u[2];f=u[3];k=u[0];m=u[1];0<e.length?(q=e[e.length-1],p=q.x,n=q.y):(q=this.actions[t-1].args,p=q[q.length-2],n=q[q.length-1]);for(u=1;u<=a;u++)s=u/a,
+q=c(s,p,k,g),s=c(s,n,m,f),e.push(new THREE.Vector2(q,s));break;case "bezierCurveTo":g=u[4];f=u[5];k=u[0];m=u[1];h=u[2];l=u[3];0<e.length?(q=e[e.length-1],p=q.x,n=q.y):(q=this.actions[t-1].args,p=q[q.length-2],n=q[q.length-1]);for(u=1;u<=a;u++)s=u/a,q=d(s,p,k,h,g),s=d(s,n,m,l,f),e.push(new THREE.Vector2(q,s));break;case "splineThru":q=this.actions[t-1].args;s=[new THREE.Vector2(q[q.length-2],q[q.length-1])];q=a*u[0].length;s=s.concat(u[0]);s=new THREE.SplineCurve(s);for(u=1;u<=q;u++)e.push(s.getPointAt(u/
+q));break;case "arc":g=u[0];f=u[1];m=u[2];h=u[3];q=u[4];k=!!u[5];p=q-h;n=2*a;for(u=1;u<=n;u++)s=u/n,k||(s=1-s),s=h+s*p,q=g+m*Math.cos(s),s=f+m*Math.sin(s),e.push(new THREE.Vector2(q,s));break;case "ellipse":g=u[0];f=u[1];m=u[2];l=u[3];h=u[4];q=u[5];k=!!u[6];var w=u[7];p=q-h;n=2*a;var D,x;0!==w&&(D=Math.cos(w),x=Math.sin(w));for(u=1;u<=n;u++){s=u/n;k||(s=1-s);s=h+s*p;q=g+m*Math.cos(s);s=f+l*Math.sin(s);if(0!==w){var B=q;q=(B-g)*D-(s-f)*x+g;s=(B-g)*x+(s-f)*D+f}e.push(new THREE.Vector2(q,s))}}}c=e[e.length-
+1];Math.abs(c.x-e[0].x)<Number.EPSILON&&Math.abs(c.y-e[0].y)<Number.EPSILON&&e.splice(e.length-1,1);b&&e.push(e[0]);return e};
+THREE.Path.prototype.toShapes=function(a,b){function c(a){for(var b=[],c=0,d=a.length;c<d;c++){var e=a[c],f=new THREE.Shape;f.actions=e.actions;f.curves=e.curves;b.push(f)}return b}function d(a,b){for(var c=b.length,d=!1,e=c-1,f=0;f<c;e=f++){var g=b[e],h=b[f],k=h.x-g.x,l=h.y-g.y;if(Math.abs(l)>Number.EPSILON){if(0>l&&(g=b[f],k=-k,h=b[e],l=-l),!(a.y<g.y||a.y>h.y))if(a.y===g.y){if(a.x===g.x)return!0}else{e=l*(a.x-g.x)-k*(a.y-g.y);if(0===e)return!0;0>e||(d=!d)}}else if(a.y===g.y&&(h.x<=a.x&&a.x<=g.x||
+g.x<=a.x&&a.x<=h.x))return!0}return d}var e=THREE.ShapeUtils.isClockWise,g=function(a){for(var b=[],c=new THREE.Path,d=0,e=a.length;d<e;d++){var f=a[d],g=f.args,f=f.action;"moveTo"===f&&0!==c.actions.length&&(b.push(c),c=new THREE.Path);c[f].apply(c,g)}0!==c.actions.length&&b.push(c);return b}(this.actions);if(0===g.length)return[];if(!0===b)return c(g);var f,h,l,k=[];if(1===g.length)return h=g[0],l=new THREE.Shape,l.actions=h.actions,l.curves=h.curves,k.push(l),k;var m=!e(g[0].getPoints()),m=a?!m:
+m;l=[];var p=[],n=[],q=0,s;p[q]=void 0;n[q]=[];for(var t=0,v=g.length;t<v;t++)h=g[t],s=h.getPoints(),f=e(s),(f=a?!f:f)?(!m&&p[q]&&q++,p[q]={s:new THREE.Shape,p:s},p[q].s.actions=h.actions,p[q].s.curves=h.curves,m&&q++,n[q]=[]):n[q].push({h:h,p:s[0]});if(!p[0])return c(g);if(1<p.length){t=!1;h=[];e=0;for(g=p.length;e<g;e++)l[e]=[];e=0;for(g=p.length;e<g;e++)for(f=n[e],m=0;m<f.length;m++){q=f[m];s=!0;for(v=0;v<p.length;v++)d(q.p,p[v].p)&&(e!==v&&h.push({froms:e,tos:v,hole:m}),s?(s=!1,l[v].push(q)):
+t=!0);s&&l[e].push(q)}0<h.length&&(t||(n=l))}t=0;for(e=p.length;t<e;t++)for(l=p[t].s,k.push(l),h=n[t],g=0,f=h.length;g<f;g++)l.holes.push(h[g].h);return k};THREE.Shape=function(){THREE.Path.apply(this,arguments);this.holes=[]};THREE.Shape.prototype=Object.create(THREE.Path.prototype);THREE.Shape.prototype.constructor=THREE.Shape;THREE.Shape.prototype.extrude=function(a){return new THREE.ExtrudeGeometry(this,a)};THREE.Shape.prototype.makeGeometry=function(a){return new THREE.ShapeGeometry(this,a)};
+THREE.Shape.prototype.getPointsHoles=function(a){for(var b=[],c=0,d=this.holes.length;c<d;c++)b[c]=this.holes[c].getPoints(a);return b};THREE.Shape.prototype.extractAllPoints=function(a){return{shape:this.getPoints(a),holes:this.getPointsHoles(a)}};THREE.Shape.prototype.extractPoints=function(a){return this.extractAllPoints(a)};THREE.Shape.Utils=THREE.ShapeUtils;THREE.LineCurve=function(a,b){this.v1=a;this.v2=b};THREE.LineCurve.prototype=Object.create(THREE.Curve.prototype);
+THREE.LineCurve.prototype.constructor=THREE.LineCurve;THREE.LineCurve.prototype.getPoint=function(a){var b=this.v2.clone().sub(this.v1);b.multiplyScalar(a).add(this.v1);return b};THREE.LineCurve.prototype.getPointAt=function(a){return this.getPoint(a)};THREE.LineCurve.prototype.getTangent=function(a){return this.v2.clone().sub(this.v1).normalize()};THREE.QuadraticBezierCurve=function(a,b,c){this.v0=a;this.v1=b;this.v2=c};THREE.QuadraticBezierCurve.prototype=Object.create(THREE.Curve.prototype);
+THREE.QuadraticBezierCurve.prototype.constructor=THREE.QuadraticBezierCurve;THREE.QuadraticBezierCurve.prototype.getPoint=function(a){var b=THREE.ShapeUtils.b2;return new THREE.Vector2(b(a,this.v0.x,this.v1.x,this.v2.x),b(a,this.v0.y,this.v1.y,this.v2.y))};THREE.QuadraticBezierCurve.prototype.getTangent=function(a){var b=THREE.CurveUtils.tangentQuadraticBezier;return(new THREE.Vector2(b(a,this.v0.x,this.v1.x,this.v2.x),b(a,this.v0.y,this.v1.y,this.v2.y))).normalize()};
+THREE.CubicBezierCurve=function(a,b,c,d){this.v0=a;this.v1=b;this.v2=c;this.v3=d};THREE.CubicBezierCurve.prototype=Object.create(THREE.Curve.prototype);THREE.CubicBezierCurve.prototype.constructor=THREE.CubicBezierCurve;THREE.CubicBezierCurve.prototype.getPoint=function(a){var b=THREE.ShapeUtils.b3;return new THREE.Vector2(b(a,this.v0.x,this.v1.x,this.v2.x,this.v3.x),b(a,this.v0.y,this.v1.y,this.v2.y,this.v3.y))};
+THREE.CubicBezierCurve.prototype.getTangent=function(a){var b=THREE.CurveUtils.tangentCubicBezier;return(new THREE.Vector2(b(a,this.v0.x,this.v1.x,this.v2.x,this.v3.x),b(a,this.v0.y,this.v1.y,this.v2.y,this.v3.y))).normalize()};THREE.SplineCurve=function(a){this.points=void 0==a?[]:a};THREE.SplineCurve.prototype=Object.create(THREE.Curve.prototype);THREE.SplineCurve.prototype.constructor=THREE.SplineCurve;
+THREE.SplineCurve.prototype.getPoint=function(a){var b=this.points;a*=b.length-1;var c=Math.floor(a);a-=c;var d=b[0===c?c:c-1],e=b[c],g=b[c>b.length-2?b.length-1:c+1],b=b[c>b.length-3?b.length-1:c+2],c=THREE.CurveUtils.interpolate;return new THREE.Vector2(c(d.x,e.x,g.x,b.x,a),c(d.y,e.y,g.y,b.y,a))};THREE.EllipseCurve=function(a,b,c,d,e,g,f,h){this.aX=a;this.aY=b;this.xRadius=c;this.yRadius=d;this.aStartAngle=e;this.aEndAngle=g;this.aClockwise=f;this.aRotation=h||0};THREE.EllipseCurve.prototype=Object.create(THREE.Curve.prototype);
+THREE.EllipseCurve.prototype.constructor=THREE.EllipseCurve;
+THREE.EllipseCurve.prototype.getPoint=function(a){var b=this.aEndAngle-this.aStartAngle;0>b&&(b+=2*Math.PI);b>2*Math.PI&&(b-=2*Math.PI);b=!0===this.aClockwise?this.aEndAngle+(1-a)*(2*Math.PI-b):this.aStartAngle+a*b;a=this.aX+this.xRadius*Math.cos(b);var c=this.aY+this.yRadius*Math.sin(b);if(0!==this.aRotation){var b=Math.cos(this.aRotation),d=Math.sin(this.aRotation),e=a;a=(e-this.aX)*b-(c-this.aY)*d+this.aX;c=(e-this.aX)*d+(c-this.aY)*b+this.aY}return new THREE.Vector2(a,c)};
+THREE.ArcCurve=function(a,b,c,d,e,g){THREE.EllipseCurve.call(this,a,b,c,c,d,e,g)};THREE.ArcCurve.prototype=Object.create(THREE.EllipseCurve.prototype);THREE.ArcCurve.prototype.constructor=THREE.ArcCurve;THREE.LineCurve3=THREE.Curve.create(function(a,b){this.v1=a;this.v2=b},function(a){var b=new THREE.Vector3;b.subVectors(this.v2,this.v1);b.multiplyScalar(a);b.add(this.v1);return b});
+THREE.QuadraticBezierCurve3=THREE.Curve.create(function(a,b,c){this.v0=a;this.v1=b;this.v2=c},function(a){var b=THREE.ShapeUtils.b2;return new THREE.Vector3(b(a,this.v0.x,this.v1.x,this.v2.x),b(a,this.v0.y,this.v1.y,this.v2.y),b(a,this.v0.z,this.v1.z,this.v2.z))});
+THREE.CubicBezierCurve3=THREE.Curve.create(function(a,b,c,d){this.v0=a;this.v1=b;this.v2=c;this.v3=d},function(a){var b=THREE.ShapeUtils.b3;return new THREE.Vector3(b(a,this.v0.x,this.v1.x,this.v2.x,this.v3.x),b(a,this.v0.y,this.v1.y,this.v2.y,this.v3.y),b(a,this.v0.z,this.v1.z,this.v2.z,this.v3.z))});
+THREE.SplineCurve3=THREE.Curve.create(function(a){console.warn("THREE.SplineCurve3 will be deprecated. Please use THREE.CatmullRomCurve3");this.points=void 0==a?[]:a},function(a){var b=this.points;a*=b.length-1;var c=Math.floor(a);a-=c;var d=b[0==c?c:c-1],e=b[c],g=b[c>b.length-2?b.length-1:c+1],b=b[c>b.length-3?b.length-1:c+2],c=THREE.CurveUtils.interpolate;return new THREE.Vector3(c(d.x,e.x,g.x,b.x,a),c(d.y,e.y,g.y,b.y,a),c(d.z,e.z,g.z,b.z,a))});
+THREE.CatmullRomCurve3=function(){function a(){}var b=new THREE.Vector3,c=new a,d=new a,e=new a;a.prototype.init=function(a,b,c,d){this.c0=a;this.c1=c;this.c2=-3*a+3*b-2*c-d;this.c3=2*a-2*b+c+d};a.prototype.initNonuniformCatmullRom=function(a,b,c,d,e,m,p){a=((b-a)/e-(c-a)/(e+m)+(c-b)/m)*m;d=((c-b)/m-(d-b)/(m+p)+(d-c)/p)*m;this.init(b,c,a,d)};a.prototype.initCatmullRom=function(a,b,c,d,e){this.init(b,c,e*(c-a),e*(d-b))};a.prototype.calc=function(a){var b=a*a;return this.c0+this.c1*a+this.c2*b+this.c3*
+b*a};return THREE.Curve.create(function(a){this.points=a||[]},function(a){var f=this.points,h,l;l=f.length;2>l&&console.log("duh, you need at least 2 points");a*=l-1;h=Math.floor(a);a-=h;0===a&&h===l-1&&(h=l-2,a=1);var k,m,p;0===h?(b.subVectors(f[0],f[1]).add(f[0]),k=b):k=f[h-1];m=f[h];p=f[h+1];h+2<l?f=f[h+2]:(b.subVectors(f[l-1],f[l-2]).add(f[l-2]),f=b);if(void 0===this.type||"centripetal"===this.type||"chordal"===this.type){var n="chordal"===this.type?.5:.25;l=Math.pow(k.distanceToSquared(m),n);
+h=Math.pow(m.distanceToSquared(p),n);n=Math.pow(p.distanceToSquared(f),n);1E-4>h&&(h=1);1E-4>l&&(l=h);1E-4>n&&(n=h);c.initNonuniformCatmullRom(k.x,m.x,p.x,f.x,l,h,n);d.initNonuniformCatmullRom(k.y,m.y,p.y,f.y,l,h,n);e.initNonuniformCatmullRom(k.z,m.z,p.z,f.z,l,h,n)}else"catmullrom"===this.type&&(l=void 0!==this.tension?this.tension:.5,c.initCatmullRom(k.x,m.x,p.x,f.x,l),d.initCatmullRom(k.y,m.y,p.y,f.y,l),e.initCatmullRom(k.z,m.z,p.z,f.z,l));return new THREE.Vector3(c.calc(a),d.calc(a),e.calc(a))})}();
+THREE.ClosedSplineCurve3=THREE.Curve.create(function(a){this.points=void 0==a?[]:a},function(a){var b=this.points;a*=b.length-0;var c=Math.floor(a);a-=c;var c=c+(0<c?0:(Math.floor(Math.abs(c)/b.length)+1)*b.length),d=b[(c-1)%b.length],e=b[c%b.length],g=b[(c+1)%b.length],b=b[(c+2)%b.length],c=THREE.CurveUtils.interpolate;return new THREE.Vector3(c(d.x,e.x,g.x,b.x,a),c(d.y,e.y,g.y,b.y,a),c(d.z,e.z,g.z,b.z,a))});
+THREE.BoxGeometry=function(a,b,c,d,e,g){function f(a,b,c,d,e,f,g,t){var v,u=h.widthSegments,w=h.heightSegments,D=e/2,x=f/2,B=h.vertices.length;if("x"===a&&"y"===b||"y"===a&&"x"===b)v="z";else if("x"===a&&"z"===b||"z"===a&&"x"===b)v="y",w=h.depthSegments;else if("z"===a&&"y"===b||"y"===a&&"z"===b)v="x",u=h.depthSegments;var y=u+1,z=w+1,A=e/u,J=f/w,F=new THREE.Vector3;F[v]=0<g?1:-1;for(e=0;e<z;e++)for(f=0;f<y;f++){var C=new THREE.Vector3;C[a]=(f*A-D)*c;C[b]=(e*J-x)*d;C[v]=g;h.vertices.push(C)}for(e=
+0;e<w;e++)for(f=0;f<u;f++)x=f+y*e,a=f+y*(e+1),b=f+1+y*(e+1),c=f+1+y*e,d=new THREE.Vector2(f/u,1-e/w),g=new THREE.Vector2(f/u,1-(e+1)/w),v=new THREE.Vector2((f+1)/u,1-(e+1)/w),D=new THREE.Vector2((f+1)/u,1-e/w),x=new THREE.Face3(x+B,a+B,c+B),x.normal.copy(F),x.vertexNormals.push(F.clone(),F.clone(),F.clone()),x.materialIndex=t,h.faces.push(x),h.faceVertexUvs[0].push([d,g,D]),x=new THREE.Face3(a+B,b+B,c+B),x.normal.copy(F),x.vertexNormals.push(F.clone(),F.clone(),F.clone()),x.materialIndex=t,h.faces.push(x),
+h.faceVertexUvs[0].push([g.clone(),v,D.clone()])}THREE.Geometry.call(this);this.type="BoxGeometry";this.parameters={width:a,height:b,depth:c,widthSegments:d,heightSegments:e,depthSegments:g};this.widthSegments=d||1;this.heightSegments=e||1;this.depthSegments=g||1;var h=this;d=a/2;e=b/2;g=c/2;f("z","y",-1,-1,c,b,d,0);f("z","y",1,-1,c,b,-d,1);f("x","z",1,1,a,c,e,2);f("x","z",1,-1,a,c,-e,3);f("x","y",1,-1,a,b,g,4);f("x","y",-1,-1,a,b,-g,5);this.mergeVertices()};THREE.BoxGeometry.prototype=Object.create(THREE.Geometry.prototype);
+THREE.BoxGeometry.prototype.constructor=THREE.BoxGeometry;THREE.BoxGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.BoxGeometry(a.width,a.height,a.depth,a.widthSegments,a.heightSegments,a.depthSegments)};THREE.CubeGeometry=THREE.BoxGeometry;THREE.CircleGeometry=function(a,b,c,d){THREE.Geometry.call(this);this.type="CircleGeometry";this.parameters={radius:a,segments:b,thetaStart:c,thetaLength:d};this.fromBufferGeometry(new THREE.CircleBufferGeometry(a,b,c,d))};
+THREE.CircleGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.CircleGeometry.prototype.constructor=THREE.CircleGeometry;THREE.CircleGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.CircleGeometry(a.radius,a.segments,a.thetaStart,a.thetaLength)};
+THREE.CircleBufferGeometry=function(a,b,c,d){THREE.BufferGeometry.call(this);this.type="CircleBufferGeometry";this.parameters={radius:a,segments:b,thetaStart:c,thetaLength:d};a=a||50;b=void 0!==b?Math.max(3,b):8;c=void 0!==c?c:0;d=void 0!==d?d:2*Math.PI;var e=b+2,g=new Float32Array(3*e),f=new Float32Array(3*e),e=new Float32Array(2*e);f[2]=1;e[0]=.5;e[1]=.5;for(var h=0,l=3,k=2;h<=b;h++,l+=3,k+=2){var m=c+h/b*d;g[l]=a*Math.cos(m);g[l+1]=a*Math.sin(m);f[l+2]=1;e[k]=(g[l]/a+1)/2;e[k+1]=(g[l+1]/a+1)/2}c=
+[];for(l=1;l<=b;l++)c.push(l,l+1,0);this.setIndex(new THREE.BufferAttribute(new Uint16Array(c),1));this.addAttribute("position",new THREE.BufferAttribute(g,3));this.addAttribute("normal",new THREE.BufferAttribute(f,3));this.addAttribute("uv",new THREE.BufferAttribute(e,2));this.boundingSphere=new THREE.Sphere(new THREE.Vector3,a)};THREE.CircleBufferGeometry.prototype=Object.create(THREE.BufferGeometry.prototype);THREE.CircleBufferGeometry.prototype.constructor=THREE.CircleBufferGeometry;
+THREE.CircleBufferGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.CircleBufferGeometry(a.radius,a.segments,a.thetaStart,a.thetaLength)};
+THREE.CylinderGeometry=function(a,b,c,d,e,g,f,h){THREE.Geometry.call(this);this.type="CylinderGeometry";this.parameters={radiusTop:a,radiusBottom:b,height:c,radialSegments:d,heightSegments:e,openEnded:g,thetaStart:f,thetaLength:h};a=void 0!==a?a:20;b=void 0!==b?b:20;c=void 0!==c?c:100;d=d||8;e=e||1;g=void 0!==g?g:!1;f=void 0!==f?f:0;h=void 0!==h?h:2*Math.PI;var l=c/2,k,m,p=[],n=[];for(m=0;m<=e;m++){var q=[],s=[],t=m/e,v=t*(b-a)+a;for(k=0;k<=d;k++){var u=k/d,w=new THREE.Vector3;w.x=v*Math.sin(u*h+
+f);w.y=-t*c+l;w.z=v*Math.cos(u*h+f);this.vertices.push(w);q.push(this.vertices.length-1);s.push(new THREE.Vector2(u,1-t))}p.push(q);n.push(s)}c=(b-a)/c;for(k=0;k<d;k++)for(0!==a?(f=this.vertices[p[0][k]].clone(),h=this.vertices[p[0][k+1]].clone()):(f=this.vertices[p[1][k]].clone(),h=this.vertices[p[1][k+1]].clone()),f.setY(Math.sqrt(f.x*f.x+f.z*f.z)*c).normalize(),h.setY(Math.sqrt(h.x*h.x+h.z*h.z)*c).normalize(),m=0;m<e;m++){var q=p[m][k],s=p[m+1][k],t=p[m+1][k+1],v=p[m][k+1],u=f.clone(),w=f.clone(),
+D=h.clone(),x=h.clone(),B=n[m][k].clone(),y=n[m+1][k].clone(),z=n[m+1][k+1].clone(),A=n[m][k+1].clone();this.faces.push(new THREE.Face3(q,s,v,[u,w,x]));this.faceVertexUvs[0].push([B,y,A]);this.faces.push(new THREE.Face3(s,t,v,[w.clone(),D,x.clone()]));this.faceVertexUvs[0].push([y.clone(),z,A.clone()])}if(!1===g&&0<a)for(this.vertices.push(new THREE.Vector3(0,l,0)),k=0;k<d;k++)q=p[0][k],s=p[0][k+1],t=this.vertices.length-1,u=new THREE.Vector3(0,1,0),w=new THREE.Vector3(0,1,0),D=new THREE.Vector3(0,
+1,0),B=n[0][k].clone(),y=n[0][k+1].clone(),z=new THREE.Vector2(y.x,0),this.faces.push(new THREE.Face3(q,s,t,[u,w,D],void 0,1)),this.faceVertexUvs[0].push([B,y,z]);if(!1===g&&0<b)for(this.vertices.push(new THREE.Vector3(0,-l,0)),k=0;k<d;k++)q=p[e][k+1],s=p[e][k],t=this.vertices.length-1,u=new THREE.Vector3(0,-1,0),w=new THREE.Vector3(0,-1,0),D=new THREE.Vector3(0,-1,0),B=n[e][k+1].clone(),y=n[e][k].clone(),z=new THREE.Vector2(y.x,1),this.faces.push(new THREE.Face3(q,s,t,[u,w,D],void 0,2)),this.faceVertexUvs[0].push([B,
+y,z]);this.computeFaceNormals()};THREE.CylinderGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.CylinderGeometry.prototype.constructor=THREE.CylinderGeometry;THREE.CylinderGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.CylinderGeometry(a.radiusTop,a.radiusBottom,a.height,a.radialSegments,a.heightSegments,a.openEnded,a.thetaStart,a.thetaLength)};
+THREE.EdgesGeometry=function(a,b){function c(a,b){return a-b}THREE.BufferGeometry.call(this);var d=Math.cos(THREE.Math.degToRad(void 0!==b?b:1)),e=[0,0],g={},f=["a","b","c"],h;a instanceof THREE.BufferGeometry?(h=new THREE.Geometry,h.fromBufferGeometry(a)):h=a.clone();h.mergeVertices();h.computeFaceNormals();var l=h.vertices;h=h.faces;for(var k=0,m=h.length;k<m;k++)for(var p=h[k],n=0;3>n;n++){e[0]=p[f[n]];e[1]=p[f[(n+1)%3]];e.sort(c);var q=e.toString();void 0===g[q]?g[q]={vert1:e[0],vert2:e[1],face1:k,
+face2:void 0}:g[q].face2=k}e=[];for(q in g)if(f=g[q],void 0===f.face2||h[f.face1].normal.dot(h[f.face2].normal)<=d)k=l[f.vert1],e.push(k.x),e.push(k.y),e.push(k.z),k=l[f.vert2],e.push(k.x),e.push(k.y),e.push(k.z);this.addAttribute("position",new THREE.BufferAttribute(new Float32Array(e),3))};THREE.EdgesGeometry.prototype=Object.create(THREE.BufferGeometry.prototype);THREE.EdgesGeometry.prototype.constructor=THREE.EdgesGeometry;
+THREE.ExtrudeGeometry=function(a,b){"undefined"!==typeof a&&(THREE.Geometry.call(this),this.type="ExtrudeGeometry",a=Array.isArray(a)?a:[a],this.addShapeList(a,b),this.computeFaceNormals())};THREE.ExtrudeGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.ExtrudeGeometry.prototype.constructor=THREE.ExtrudeGeometry;THREE.ExtrudeGeometry.prototype.addShapeList=function(a,b){for(var c=a.length,d=0;d<c;d++)this.addShape(a[d],b)};
+THREE.ExtrudeGeometry.prototype.addShape=function(a,b){function c(a,b,c){b||console.error("THREE.ExtrudeGeometry: vec does not exist");return b.clone().multiplyScalar(c).add(a)}function d(a,b,c){var d=1,d=a.x-b.x,e=a.y-b.y,f=c.x-a.x,g=c.y-a.y,h=d*d+e*e;if(Math.abs(d*g-e*f)>Number.EPSILON){var k=Math.sqrt(h),l=Math.sqrt(f*f+g*g),h=b.x-e/k;b=b.y+d/k;f=((c.x-g/l-h)*g-(c.y+f/l-b)*f)/(d*g-e*f);c=h+d*f-a.x;a=b+e*f-a.y;d=c*c+a*a;if(2>=d)return new THREE.Vector2(c,a);d=Math.sqrt(d/2)}else a=!1,d>Number.EPSILON?
+f>Number.EPSILON&&(a=!0):d<-Number.EPSILON?f<-Number.EPSILON&&(a=!0):Math.sign(e)===Math.sign(g)&&(a=!0),a?(c=-e,a=d,d=Math.sqrt(h)):(c=d,a=e,d=Math.sqrt(h/2));return new THREE.Vector2(c/d,a/d)}function e(a,b){var c,d;for(G=a.length;0<=--G;){c=G;d=G-1;0>d&&(d=a.length-1);for(var e=0,f=q+2*m,e=0;e<f;e++){var g=T*e,h=T*(e+1),k=b+c+g,g=b+d+g,l=b+d+h,h=b+c+h,k=k+F,g=g+F,l=l+F,h=h+F;J.faces.push(new THREE.Face3(k,g,h,null,null,1));J.faces.push(new THREE.Face3(g,l,h,null,null,1));k=u.generateSideWallUV(J,
+k,g,l,h);J.faceVertexUvs[0].push([k[0],k[1],k[3]]);J.faceVertexUvs[0].push([k[1],k[2],k[3]])}}}function g(a,b,c){J.vertices.push(new THREE.Vector3(a,b,c))}function f(a,b,c){a+=F;b+=F;c+=F;J.faces.push(new THREE.Face3(a,b,c,null,null,0));a=u.generateTopUV(J,a,b,c);J.faceVertexUvs[0].push(a)}var h=void 0!==b.amount?b.amount:100,l=void 0!==b.bevelThickness?b.bevelThickness:6,k=void 0!==b.bevelSize?b.bevelSize:l-2,m=void 0!==b.bevelSegments?b.bevelSegments:3,p=void 0!==b.bevelEnabled?b.bevelEnabled:!0,
+n=void 0!==b.curveSegments?b.curveSegments:12,q=void 0!==b.steps?b.steps:1,s=b.extrudePath,t,v=!1,u=void 0!==b.UVGenerator?b.UVGenerator:THREE.ExtrudeGeometry.WorldUVGenerator,w,D,x,B;s&&(t=s.getSpacedPoints(q),v=!0,p=!1,w=void 0!==b.frames?b.frames:new THREE.TubeGeometry.FrenetFrames(s,q,!1),D=new THREE.Vector3,x=new THREE.Vector3,B=new THREE.Vector3);p||(k=l=m=0);var y,z,A,J=this,F=this.vertices.length,s=a.extractPoints(n),n=s.shape,C=s.holes;if(s=!THREE.ShapeUtils.isClockWise(n)){n=n.reverse();
+z=0;for(A=C.length;z<A;z++)y=C[z],THREE.ShapeUtils.isClockWise(y)&&(C[z]=y.reverse());s=!1}var N=THREE.ShapeUtils.triangulateShape(n,C),L=n;z=0;for(A=C.length;z<A;z++)y=C[z],n=n.concat(y);var Q,M,K,E,O,T=n.length,H,R=N.length,s=[],G=0;K=L.length;Q=K-1;for(M=G+1;G<K;G++,Q++,M++)Q===K&&(Q=0),M===K&&(M=0),s[G]=d(L[G],L[Q],L[M]);var ia=[],U,X=s.concat();z=0;for(A=C.length;z<A;z++){y=C[z];U=[];G=0;K=y.length;Q=K-1;for(M=G+1;G<K;G++,Q++,M++)Q===K&&(Q=0),M===K&&(M=0),U[G]=d(y[G],y[Q],y[M]);ia.push(U);X=
+X.concat(U)}for(Q=0;Q<m;Q++){K=Q/m;E=l*(1-K);M=k*Math.sin(K*Math.PI/2);G=0;for(K=L.length;G<K;G++)O=c(L[G],s[G],M),g(O.x,O.y,-E);z=0;for(A=C.length;z<A;z++)for(y=C[z],U=ia[z],G=0,K=y.length;G<K;G++)O=c(y[G],U[G],M),g(O.x,O.y,-E)}M=k;for(G=0;G<T;G++)O=p?c(n[G],X[G],M):n[G],v?(x.copy(w.normals[0]).multiplyScalar(O.x),D.copy(w.binormals[0]).multiplyScalar(O.y),B.copy(t[0]).add(x).add(D),g(B.x,B.y,B.z)):g(O.x,O.y,0);for(K=1;K<=q;K++)for(G=0;G<T;G++)O=p?c(n[G],X[G],M):n[G],v?(x.copy(w.normals[K]).multiplyScalar(O.x),
+D.copy(w.binormals[K]).multiplyScalar(O.y),B.copy(t[K]).add(x).add(D),g(B.x,B.y,B.z)):g(O.x,O.y,h/q*K);for(Q=m-1;0<=Q;Q--){K=Q/m;E=l*(1-K);M=k*Math.sin(K*Math.PI/2);G=0;for(K=L.length;G<K;G++)O=c(L[G],s[G],M),g(O.x,O.y,h+E);z=0;for(A=C.length;z<A;z++)for(y=C[z],U=ia[z],G=0,K=y.length;G<K;G++)O=c(y[G],U[G],M),v?g(O.x,O.y+t[q-1].y,t[q-1].x+E):g(O.x,O.y,h+E)}(function(){if(p){var a;a=0*T;for(G=0;G<R;G++)H=N[G],f(H[2]+a,H[1]+a,H[0]+a);a=q+2*m;a*=T;for(G=0;G<R;G++)H=N[G],f(H[0]+a,H[1]+a,H[2]+a)}else{for(G=
+0;G<R;G++)H=N[G],f(H[2],H[1],H[0]);for(G=0;G<R;G++)H=N[G],f(H[0]+T*q,H[1]+T*q,H[2]+T*q)}})();(function(){var a=0;e(L,a);a+=L.length;z=0;for(A=C.length;z<A;z++)y=C[z],e(y,a),a+=y.length})()};
+THREE.ExtrudeGeometry.WorldUVGenerator={generateTopUV:function(a,b,c,d){a=a.vertices;b=a[b];c=a[c];d=a[d];return[new THREE.Vector2(b.x,b.y),new THREE.Vector2(c.x,c.y),new THREE.Vector2(d.x,d.y)]},generateSideWallUV:function(a,b,c,d,e){a=a.vertices;b=a[b];c=a[c];d=a[d];e=a[e];return.01>Math.abs(b.y-c.y)?[new THREE.Vector2(b.x,1-b.z),new THREE.Vector2(c.x,1-c.z),new THREE.Vector2(d.x,1-d.z),new THREE.Vector2(e.x,1-e.z)]:[new THREE.Vector2(b.y,1-b.z),new THREE.Vector2(c.y,1-c.z),new THREE.Vector2(d.y,
+1-d.z),new THREE.Vector2(e.y,1-e.z)]}};THREE.ShapeGeometry=function(a,b){THREE.Geometry.call(this);this.type="ShapeGeometry";!1===Array.isArray(a)&&(a=[a]);this.addShapeList(a,b);this.computeFaceNormals()};THREE.ShapeGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.ShapeGeometry.prototype.constructor=THREE.ShapeGeometry;THREE.ShapeGeometry.prototype.addShapeList=function(a,b){for(var c=0,d=a.length;c<d;c++)this.addShape(a[c],b);return this};
+THREE.ShapeGeometry.prototype.addShape=function(a,b){void 0===b&&(b={});var c=b.material,d=void 0===b.UVGenerator?THREE.ExtrudeGeometry.WorldUVGenerator:b.UVGenerator,e,g,f,h=this.vertices.length;e=a.extractPoints(void 0!==b.curveSegments?b.curveSegments:12);var l=e.shape,k=e.holes;if(!THREE.ShapeUtils.isClockWise(l))for(l=l.reverse(),e=0,g=k.length;e<g;e++)f=k[e],THREE.ShapeUtils.isClockWise(f)&&(k[e]=f.reverse());var m=THREE.ShapeUtils.triangulateShape(l,k);e=0;for(g=k.length;e<g;e++)f=k[e],l=l.concat(f);
+k=l.length;g=m.length;for(e=0;e<k;e++)f=l[e],this.vertices.push(new THREE.Vector3(f.x,f.y,0));for(e=0;e<g;e++)k=m[e],l=k[0]+h,f=k[1]+h,k=k[2]+h,this.faces.push(new THREE.Face3(l,f,k,null,null,c)),this.faceVertexUvs[0].push(d.generateTopUV(this,l,f,k))};
+THREE.LatheGeometry=function(a,b,c,d){THREE.Geometry.call(this);this.type="LatheGeometry";this.parameters={points:a,segments:b,phiStart:c,phiLength:d};b=b||12;c=c||0;d=d||2*Math.PI;for(var e=1/(a.length-1),g=1/b,f=0,h=b;f<=h;f++)for(var l=c+f*g*d,k=Math.cos(l),m=Math.sin(l),l=0,p=a.length;l<p;l++){var n=a[l],q=new THREE.Vector3;q.x=k*n.x-m*n.y;q.y=m*n.x+k*n.y;q.z=n.z;this.vertices.push(q)}c=a.length;f=0;for(h=b;f<h;f++)for(l=0,p=a.length-1;l<p;l++){b=m=l+c*f;d=m+c;var k=m+1+c,m=m+1,n=f*g,q=l*e,s=
+n+g,t=q+e;this.faces.push(new THREE.Face3(b,d,m));this.faceVertexUvs[0].push([new THREE.Vector2(n,q),new THREE.Vector2(s,q),new THREE.Vector2(n,t)]);this.faces.push(new THREE.Face3(d,k,m));this.faceVertexUvs[0].push([new THREE.Vector2(s,q),new THREE.Vector2(s,t),new THREE.Vector2(n,t)])}this.mergeVertices();this.computeFaceNormals();this.computeVertexNormals()};THREE.LatheGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.LatheGeometry.prototype.constructor=THREE.LatheGeometry;
+THREE.PlaneGeometry=function(a,b,c,d){THREE.Geometry.call(this);this.type="PlaneGeometry";this.parameters={width:a,height:b,widthSegments:c,heightSegments:d};this.fromBufferGeometry(new THREE.PlaneBufferGeometry(a,b,c,d))};THREE.PlaneGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.PlaneGeometry.prototype.constructor=THREE.PlaneGeometry;THREE.PlaneGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.PlaneGeometry(a.width,a.height,a.widthSegments,a.heightSegments)};
+THREE.PlaneBufferGeometry=function(a,b,c,d){THREE.BufferGeometry.call(this);this.type="PlaneBufferGeometry";this.parameters={width:a,height:b,widthSegments:c,heightSegments:d};var e=a/2,g=b/2;c=Math.floor(c)||1;d=Math.floor(d)||1;var f=c+1,h=d+1,l=a/c,k=b/d;b=new Float32Array(f*h*3);a=new Float32Array(f*h*3);for(var m=new Float32Array(f*h*2),p=0,n=0,q=0;q<h;q++)for(var s=q*k-g,t=0;t<f;t++)b[p]=t*l-e,b[p+1]=-s,a[p+2]=1,m[n]=t/c,m[n+1]=1-q/d,p+=3,n+=2;p=0;e=new (65535<b.length/3?Uint32Array:Uint16Array)(c*
+d*6);for(q=0;q<d;q++)for(t=0;t<c;t++)g=t+f*(q+1),h=t+1+f*(q+1),l=t+1+f*q,e[p]=t+f*q,e[p+1]=g,e[p+2]=l,e[p+3]=g,e[p+4]=h,e[p+5]=l,p+=6;this.setIndex(new THREE.BufferAttribute(e,1));this.addAttribute("position",new THREE.BufferAttribute(b,3));this.addAttribute("normal",new THREE.BufferAttribute(a,3));this.addAttribute("uv",new THREE.BufferAttribute(m,2))};THREE.PlaneBufferGeometry.prototype=Object.create(THREE.BufferGeometry.prototype);THREE.PlaneBufferGeometry.prototype.constructor=THREE.PlaneBufferGeometry;
+THREE.PlaneBufferGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.PlaneBufferGeometry(a.width,a.height,a.widthSegments,a.heightSegments)};
+THREE.RingGeometry=function(a,b,c,d,e,g){THREE.Geometry.call(this);this.type="RingGeometry";this.parameters={innerRadius:a,outerRadius:b,thetaSegments:c,phiSegments:d,thetaStart:e,thetaLength:g};a=a||0;b=b||50;e=void 0!==e?e:0;g=void 0!==g?g:2*Math.PI;c=void 0!==c?Math.max(3,c):8;d=void 0!==d?Math.max(1,d):8;var f,h=[],l=a,k=(b-a)/d;for(a=0;a<d+1;a++){for(f=0;f<c+1;f++){var m=new THREE.Vector3,p=e+f/c*g;m.x=l*Math.cos(p);m.y=l*Math.sin(p);this.vertices.push(m);h.push(new THREE.Vector2((m.x/b+1)/2,
+(m.y/b+1)/2))}l+=k}b=new THREE.Vector3(0,0,1);for(a=0;a<d;a++)for(e=a*(c+1),f=0;f<c;f++)g=p=f+e,k=p+c+1,m=p+c+2,this.faces.push(new THREE.Face3(g,k,m,[b.clone(),b.clone(),b.clone()])),this.faceVertexUvs[0].push([h[g].clone(),h[k].clone(),h[m].clone()]),g=p,k=p+c+2,m=p+1,this.faces.push(new THREE.Face3(g,k,m,[b.clone(),b.clone(),b.clone()])),this.faceVertexUvs[0].push([h[g].clone(),h[k].clone(),h[m].clone()]);this.computeFaceNormals();this.boundingSphere=new THREE.Sphere(new THREE.Vector3,l)};
+THREE.RingGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.RingGeometry.prototype.constructor=THREE.RingGeometry;THREE.RingGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.RingGeometry(a.innerRadius,a.outerRadius,a.thetaSegments,a.phiSegments,a.thetaStart,a.thetaLength)};
+THREE.SphereGeometry=function(a,b,c,d,e,g,f){THREE.Geometry.call(this);this.type="SphereGeometry";this.parameters={radius:a,widthSegments:b,heightSegments:c,phiStart:d,phiLength:e,thetaStart:g,thetaLength:f};this.fromBufferGeometry(new THREE.SphereBufferGeometry(a,b,c,d,e,g,f))};THREE.SphereGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.SphereGeometry.prototype.constructor=THREE.SphereGeometry;
+THREE.SphereGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.SphereGeometry(a.radius,a.widthSegments,a.heightSegments,a.phiStart,a.phiLength,a.thetaStart,a.thetaLength)};
+THREE.SphereBufferGeometry=function(a,b,c,d,e,g,f){THREE.BufferGeometry.call(this);this.type="SphereBufferGeometry";this.parameters={radius:a,widthSegments:b,heightSegments:c,phiStart:d,phiLength:e,thetaStart:g,thetaLength:f};a=a||50;b=Math.max(3,Math.floor(b)||8);c=Math.max(2,Math.floor(c)||6);d=void 0!==d?d:0;e=void 0!==e?e:2*Math.PI;g=void 0!==g?g:0;f=void 0!==f?f:Math.PI;for(var h=g+f,l=(b+1)*(c+1),k=new THREE.BufferAttribute(new Float32Array(3*l),3),m=new THREE.BufferAttribute(new Float32Array(3*
+l),3),l=new THREE.BufferAttribute(new Float32Array(2*l),2),p=0,n=[],q=new THREE.Vector3,s=0;s<=c;s++){for(var t=[],v=s/c,u=0;u<=b;u++){var w=u/b,D=-a*Math.cos(d+w*e)*Math.sin(g+v*f),x=a*Math.cos(g+v*f),B=a*Math.sin(d+w*e)*Math.sin(g+v*f);q.set(D,x,B).normalize();k.setXYZ(p,D,x,B);m.setXYZ(p,q.x,q.y,q.z);l.setXY(p,w,1-v);t.push(p);p++}n.push(t)}d=[];for(s=0;s<c;s++)for(u=0;u<b;u++)e=n[s][u+1],f=n[s][u],p=n[s+1][u],q=n[s+1][u+1],(0!==s||0<g)&&d.push(e,f,q),(s!==c-1||h<Math.PI)&&d.push(f,p,q);this.setIndex(new (65535<
+k.count?THREE.Uint32Attribute:THREE.Uint16Attribute)(d,1));this.addAttribute("position",k);this.addAttribute("normal",m);this.addAttribute("uv",l);this.boundingSphere=new THREE.Sphere(new THREE.Vector3,a)};THREE.SphereBufferGeometry.prototype=Object.create(THREE.BufferGeometry.prototype);THREE.SphereBufferGeometry.prototype.constructor=THREE.SphereBufferGeometry;
+THREE.SphereBufferGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.SphereBufferGeometry(a.radius,a.widthSegments,a.heightSegments,a.phiStart,a.phiLength,a.thetaStart,a.thetaLength)};
+THREE.TorusGeometry=function(a,b,c,d,e){THREE.Geometry.call(this);this.type="TorusGeometry";this.parameters={radius:a,tube:b,radialSegments:c,tubularSegments:d,arc:e};a=a||100;b=b||40;c=c||8;d=d||6;e=e||2*Math.PI;for(var g=new THREE.Vector3,f=[],h=[],l=0;l<=c;l++)for(var k=0;k<=d;k++){var m=k/d*e,p=l/c*Math.PI*2;g.x=a*Math.cos(m);g.y=a*Math.sin(m);var n=new THREE.Vector3;n.x=(a+b*Math.cos(p))*Math.cos(m);n.y=(a+b*Math.cos(p))*Math.sin(m);n.z=b*Math.sin(p);this.vertices.push(n);f.push(new THREE.Vector2(k/
+d,l/c));h.push(n.clone().sub(g).normalize())}for(l=1;l<=c;l++)for(k=1;k<=d;k++)a=(d+1)*l+k-1,b=(d+1)*(l-1)+k-1,e=(d+1)*(l-1)+k,g=(d+1)*l+k,m=new THREE.Face3(a,b,g,[h[a].clone(),h[b].clone(),h[g].clone()]),this.faces.push(m),this.faceVertexUvs[0].push([f[a].clone(),f[b].clone(),f[g].clone()]),m=new THREE.Face3(b,e,g,[h[b].clone(),h[e].clone(),h[g].clone()]),this.faces.push(m),this.faceVertexUvs[0].push([f[b].clone(),f[e].clone(),f[g].clone()]);this.computeFaceNormals()};
+THREE.TorusGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.TorusGeometry.prototype.constructor=THREE.TorusGeometry;THREE.TorusGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.TorusGeometry(a.radius,a.tube,a.radialSegments,a.tubularSegments,a.arc)};
+THREE.TorusKnotGeometry=function(a,b,c,d,e,g,f){function h(a,b,c,d,e){var f=Math.cos(a),g=Math.sin(a);a*=b/c;b=Math.cos(a);f*=d*(2+b)*.5;g=d*(2+b)*g*.5;d=e*d*Math.sin(a)*.5;return new THREE.Vector3(f,g,d)}THREE.Geometry.call(this);this.type="TorusKnotGeometry";this.parameters={radius:a,tube:b,radialSegments:c,tubularSegments:d,p:e,q:g,heightScale:f};a=a||100;b=b||40;c=c||64;d=d||8;e=e||2;g=g||3;f=f||1;for(var l=Array(c),k=new THREE.Vector3,m=new THREE.Vector3,p=new THREE.Vector3,n=0;n<c;++n){l[n]=
+Array(d);var q=n/c*2*e*Math.PI,s=h(q,g,e,a,f),q=h(q+.01,g,e,a,f);k.subVectors(q,s);m.addVectors(q,s);p.crossVectors(k,m);m.crossVectors(p,k);p.normalize();m.normalize();for(q=0;q<d;++q){var t=q/d*2*Math.PI,v=-b*Math.cos(t),t=b*Math.sin(t),u=new THREE.Vector3;u.x=s.x+v*m.x+t*p.x;u.y=s.y+v*m.y+t*p.y;u.z=s.z+v*m.z+t*p.z;l[n][q]=this.vertices.push(u)-1}}for(n=0;n<c;++n)for(q=0;q<d;++q)e=(n+1)%c,g=(q+1)%d,a=l[n][q],b=l[e][q],e=l[e][g],g=l[n][g],f=new THREE.Vector2(n/c,q/d),k=new THREE.Vector2((n+1)/c,
+q/d),m=new THREE.Vector2((n+1)/c,(q+1)/d),p=new THREE.Vector2(n/c,(q+1)/d),this.faces.push(new THREE.Face3(a,b,g)),this.faceVertexUvs[0].push([f,k,p]),this.faces.push(new THREE.Face3(b,e,g)),this.faceVertexUvs[0].push([k.clone(),m,p.clone()]);this.computeFaceNormals();this.computeVertexNormals()};THREE.TorusKnotGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.TorusKnotGeometry.prototype.constructor=THREE.TorusKnotGeometry;
+THREE.TorusKnotGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.TorusKnotGeometry(a.radius,a.tube,a.radialSegments,a.tubularSegments,a.p,a.q,a.heightScale)};
+THREE.TubeGeometry=function(a,b,c,d,e,g){THREE.Geometry.call(this);this.type="TubeGeometry";this.parameters={path:a,segments:b,radius:c,radialSegments:d,closed:e,taper:g};b=b||64;c=c||1;d=d||8;e=e||!1;g=g||THREE.TubeGeometry.NoTaper;var f=[],h,l,k=b+1,m,p,n,q,s,t=new THREE.Vector3,v,u,w;v=new THREE.TubeGeometry.FrenetFrames(a,b,e);u=v.normals;w=v.binormals;this.tangents=v.tangents;this.normals=u;this.binormals=w;for(v=0;v<k;v++)for(f[v]=[],m=v/(k-1),s=a.getPointAt(m),h=u[v],l=w[v],n=c*g(m),m=0;m<
+d;m++)p=m/d*2*Math.PI,q=-n*Math.cos(p),p=n*Math.sin(p),t.copy(s),t.x+=q*h.x+p*l.x,t.y+=q*h.y+p*l.y,t.z+=q*h.z+p*l.z,f[v][m]=this.vertices.push(new THREE.Vector3(t.x,t.y,t.z))-1;for(v=0;v<b;v++)for(m=0;m<d;m++)g=e?(v+1)%b:v+1,k=(m+1)%d,a=f[v][m],c=f[g][m],g=f[g][k],k=f[v][k],t=new THREE.Vector2(v/b,m/d),u=new THREE.Vector2((v+1)/b,m/d),w=new THREE.Vector2((v+1)/b,(m+1)/d),h=new THREE.Vector2(v/b,(m+1)/d),this.faces.push(new THREE.Face3(a,c,k)),this.faceVertexUvs[0].push([t,u,h]),this.faces.push(new THREE.Face3(c,
+g,k)),this.faceVertexUvs[0].push([u.clone(),w,h.clone()]);this.computeFaceNormals();this.computeVertexNormals()};THREE.TubeGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.TubeGeometry.prototype.constructor=THREE.TubeGeometry;THREE.TubeGeometry.prototype.clone=function(){return new this.constructor(this.parameters.path,this.parameters.segments,this.parameters.radius,this.parameters.radialSegments,this.parameters.closed,this.parameters.taper)};THREE.TubeGeometry.NoTaper=function(a){return 1};
+THREE.TubeGeometry.SinusoidalTaper=function(a){return Math.sin(Math.PI*a)};
+THREE.TubeGeometry.FrenetFrames=function(a,b,c){var d=new THREE.Vector3,e=[],g=[],f=[],h=new THREE.Vector3,l=new THREE.Matrix4;b+=1;var k,m,p;this.tangents=e;this.normals=g;this.binormals=f;for(k=0;k<b;k++)m=k/(b-1),e[k]=a.getTangentAt(m),e[k].normalize();g[0]=new THREE.Vector3;f[0]=new THREE.Vector3;a=Number.MAX_VALUE;k=Math.abs(e[0].x);m=Math.abs(e[0].y);p=Math.abs(e[0].z);k<=a&&(a=k,d.set(1,0,0));m<=a&&(a=m,d.set(0,1,0));p<=a&&d.set(0,0,1);h.crossVectors(e[0],d).normalize();g[0].crossVectors(e[0],
+h);f[0].crossVectors(e[0],g[0]);for(k=1;k<b;k++)g[k]=g[k-1].clone(),f[k]=f[k-1].clone(),h.crossVectors(e[k-1],e[k]),h.length()>Number.EPSILON&&(h.normalize(),d=Math.acos(THREE.Math.clamp(e[k-1].dot(e[k]),-1,1)),g[k].applyMatrix4(l.makeRotationAxis(h,d))),f[k].crossVectors(e[k],g[k]);if(c)for(d=Math.acos(THREE.Math.clamp(g[0].dot(g[b-1]),-1,1)),d/=b-1,0<e[0].dot(h.crossVectors(g[0],g[b-1]))&&(d=-d),k=1;k<b;k++)g[k].applyMatrix4(l.makeRotationAxis(e[k],d*k)),f[k].crossVectors(e[k],g[k])};
+THREE.PolyhedronGeometry=function(a,b,c,d){function e(a){var b=a.normalize().clone();b.index=l.vertices.push(b)-1;var c=Math.atan2(a.z,-a.x)/2/Math.PI+.5;a=Math.atan2(-a.y,Math.sqrt(a.x*a.x+a.z*a.z))/Math.PI+.5;b.uv=new THREE.Vector2(c,1-a);return b}function g(a,b,c,d){d=new THREE.Face3(a.index,b.index,c.index,[a.clone(),b.clone(),c.clone()],void 0,d);l.faces.push(d);v.copy(a).add(b).add(c).divideScalar(3);d=Math.atan2(v.z,-v.x);l.faceVertexUvs[0].push([h(a.uv,a,d),h(b.uv,b,d),h(c.uv,c,d)])}function f(a,
+b){for(var c=Math.pow(2,b),d=e(l.vertices[a.a]),f=e(l.vertices[a.b]),h=e(l.vertices[a.c]),k=[],n=a.materialIndex,m=0;m<=c;m++){k[m]=[];for(var p=e(d.clone().lerp(h,m/c)),q=e(f.clone().lerp(h,m/c)),s=c-m,t=0;t<=s;t++)k[m][t]=0===t&&m===c?p:e(p.clone().lerp(q,t/s))}for(m=0;m<c;m++)for(t=0;t<2*(c-m)-1;t++)d=Math.floor(t/2),0===t%2?g(k[m][d+1],k[m+1][d],k[m][d],n):g(k[m][d+1],k[m+1][d+1],k[m+1][d],n)}function h(a,b,c){0>c&&1===a.x&&(a=new THREE.Vector2(a.x-1,a.y));0===b.x&&0===b.z&&(a=new THREE.Vector2(c/
+2/Math.PI+.5,a.y));return a.clone()}THREE.Geometry.call(this);this.type="PolyhedronGeometry";this.parameters={vertices:a,indices:b,radius:c,detail:d};c=c||1;d=d||0;for(var l=this,k=0,m=a.length;k<m;k+=3)e(new THREE.Vector3(a[k],a[k+1],a[k+2]));a=this.vertices;for(var p=[],n=k=0,m=b.length;k<m;k+=3,n++){var q=a[b[k]],s=a[b[k+1]],t=a[b[k+2]];p[n]=new THREE.Face3(q.index,s.index,t.index,[q.clone(),s.clone(),t.clone()],void 0,n)}for(var v=new THREE.Vector3,k=0,m=p.length;k<m;k++)f(p[k],d);k=0;for(m=this.faceVertexUvs[0].length;k<
+m;k++)b=this.faceVertexUvs[0][k],d=b[0].x,a=b[1].x,p=b[2].x,n=Math.max(d,a,p),q=Math.min(d,a,p),.9<n&&.1>q&&(.2>d&&(b[0].x+=1),.2>a&&(b[1].x+=1),.2>p&&(b[2].x+=1));k=0;for(m=this.vertices.length;k<m;k++)this.vertices[k].multiplyScalar(c);this.mergeVertices();this.computeFaceNormals();this.boundingSphere=new THREE.Sphere(new THREE.Vector3,c)};THREE.PolyhedronGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.PolyhedronGeometry.prototype.constructor=THREE.PolyhedronGeometry;
+THREE.PolyhedronGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.PolyhedronGeometry(a.vertices,a.indices,a.radius,a.detail)};
+THREE.DodecahedronGeometry=function(a,b){var c=(1+Math.sqrt(5))/2,d=1/c;THREE.PolyhedronGeometry.call(this,[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-d,-c,0,-d,c,0,d,-c,0,d,c,-d,-c,0,-d,c,0,d,-c,0,d,c,0,-c,0,-d,c,0,-d,-c,0,d,c,0,d],[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,
+12,14,1,14,5,1,5,9],a,b);this.type="DodecahedronGeometry";this.parameters={radius:a,detail:b}};THREE.DodecahedronGeometry.prototype=Object.create(THREE.PolyhedronGeometry.prototype);THREE.DodecahedronGeometry.prototype.constructor=THREE.DodecahedronGeometry;THREE.DodecahedronGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.DodecahedronGeometry(a.radius,a.detail)};
+THREE.IcosahedronGeometry=function(a,b){var c=(1+Math.sqrt(5))/2;THREE.PolyhedronGeometry.call(this,[-1,c,0,1,c,0,-1,-c,0,1,-c,0,0,-1,c,0,1,c,0,-1,-c,0,1,-c,c,0,-1,c,0,1,-c,0,-1,-c,0,1],[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],a,b);this.type="IcosahedronGeometry";this.parameters={radius:a,detail:b}};THREE.IcosahedronGeometry.prototype=Object.create(THREE.PolyhedronGeometry.prototype);
+THREE.IcosahedronGeometry.prototype.constructor=THREE.IcosahedronGeometry;THREE.IcosahedronGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.IcosahedronGeometry(a.radius,a.detail)};THREE.OctahedronGeometry=function(a,b){THREE.PolyhedronGeometry.call(this,[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],a,b);this.type="OctahedronGeometry";this.parameters={radius:a,detail:b}};THREE.OctahedronGeometry.prototype=Object.create(THREE.PolyhedronGeometry.prototype);
+THREE.OctahedronGeometry.prototype.constructor=THREE.OctahedronGeometry;THREE.OctahedronGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.OctahedronGeometry(a.radius,a.detail)};THREE.TetrahedronGeometry=function(a,b){THREE.PolyhedronGeometry.call(this,[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],a,b);this.type="TetrahedronGeometry";this.parameters={radius:a,detail:b}};THREE.TetrahedronGeometry.prototype=Object.create(THREE.PolyhedronGeometry.prototype);
+THREE.TetrahedronGeometry.prototype.constructor=THREE.TetrahedronGeometry;THREE.TetrahedronGeometry.prototype.clone=function(){var a=this.parameters;return new THREE.TetrahedronGeometry(a.radius,a.detail)};
+THREE.ParametricGeometry=function(a,b,c){THREE.Geometry.call(this);this.type="ParametricGeometry";this.parameters={func:a,slices:b,stacks:c};var d=this.vertices,e=this.faces,g=this.faceVertexUvs[0],f,h,l,k,m=b+1;for(f=0;f<=c;f++)for(k=f/c,h=0;h<=b;h++)l=h/b,l=a(l,k),d.push(l);var p,n,q,s;for(f=0;f<c;f++)for(h=0;h<b;h++)a=f*m+h,d=f*m+h+1,k=(f+1)*m+h+1,l=(f+1)*m+h,p=new THREE.Vector2(h/b,f/c),n=new THREE.Vector2((h+1)/b,f/c),q=new THREE.Vector2((h+1)/b,(f+1)/c),s=new THREE.Vector2(h/b,(f+1)/c),e.push(new THREE.Face3(a,
+d,l)),g.push([p,n,s]),e.push(new THREE.Face3(d,k,l)),g.push([n.clone(),q,s.clone()]);this.computeFaceNormals();this.computeVertexNormals()};THREE.ParametricGeometry.prototype=Object.create(THREE.Geometry.prototype);THREE.ParametricGeometry.prototype.constructor=THREE.ParametricGeometry;
+THREE.WireframeGeometry=function(a){function b(a,b){return a-b}THREE.BufferGeometry.call(this);var c=[0,0],d={},e=["a","b","c"];if(a instanceof THREE.Geometry){var g=a.vertices,f=a.faces,h=0,l=new Uint32Array(6*f.length);a=0;for(var k=f.length;a<k;a++)for(var m=f[a],p=0;3>p;p++){c[0]=m[e[p]];c[1]=m[e[(p+1)%3]];c.sort(b);var n=c.toString();void 0===d[n]&&(l[2*h]=c[0],l[2*h+1]=c[1],d[n]=!0,h++)}c=new Float32Array(6*h);a=0;for(k=h;a<k;a++)for(p=0;2>p;p++)d=g[l[2*a+p]],h=6*a+3*p,c[h+0]=d.x,c[h+1]=d.y,
+c[h+2]=d.z;this.addAttribute("position",new THREE.BufferAttribute(c,3))}else if(a instanceof THREE.BufferGeometry){if(null!==a.index){k=a.index.array;g=a.attributes.position;e=a.drawcalls;h=0;0===e.length&&a.addGroup(0,k.length);l=new Uint32Array(2*k.length);f=0;for(m=e.length;f<m;++f){a=e[f];p=a.start;n=a.count;a=p;for(var q=p+n;a<q;a+=3)for(p=0;3>p;p++)c[0]=k[a+p],c[1]=k[a+(p+1)%3],c.sort(b),n=c.toString(),void 0===d[n]&&(l[2*h]=c[0],l[2*h+1]=c[1],d[n]=!0,h++)}c=new Float32Array(6*h);a=0;for(k=
+h;a<k;a++)for(p=0;2>p;p++)h=6*a+3*p,d=l[2*a+p],c[h+0]=g.getX(d),c[h+1]=g.getY(d),c[h+2]=g.getZ(d)}else for(g=a.attributes.position.array,h=g.length/3,l=h/3,c=new Float32Array(6*h),a=0,k=l;a<k;a++)for(p=0;3>p;p++)h=18*a+6*p,l=9*a+3*p,c[h+0]=g[l],c[h+1]=g[l+1],c[h+2]=g[l+2],d=9*a+(p+1)%3*3,c[h+3]=g[d],c[h+4]=g[d+1],c[h+5]=g[d+2];this.addAttribute("position",new THREE.BufferAttribute(c,3))}};THREE.WireframeGeometry.prototype=Object.create(THREE.BufferGeometry.prototype);
+THREE.WireframeGeometry.prototype.constructor=THREE.WireframeGeometry;THREE.AxisHelper=function(a){a=a||1;var b=new Float32Array([0,0,0,a,0,0,0,0,0,0,a,0,0,0,0,0,0,a]),c=new Float32Array([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1]);a=new THREE.BufferGeometry;a.addAttribute("position",new THREE.BufferAttribute(b,3));a.addAttribute("color",new THREE.BufferAttribute(c,3));b=new THREE.LineBasicMaterial({vertexColors:THREE.VertexColors});THREE.LineSegments.call(this,a,b)};THREE.AxisHelper.prototype=Object.create(THREE.LineSegments.prototype);
+THREE.AxisHelper.prototype.constructor=THREE.AxisHelper;
+THREE.ArrowHelper=function(){var a=new THREE.Geometry;a.vertices.push(new THREE.Vector3(0,0,0),new THREE.Vector3(0,1,0));var b=new THREE.CylinderGeometry(0,.5,1,5,1);b.translate(0,-.5,0);return function(c,d,e,g,f,h){THREE.Object3D.call(this);void 0===g&&(g=16776960);void 0===e&&(e=1);void 0===f&&(f=.2*e);void 0===h&&(h=.2*f);this.position.copy(d);f<e&&(this.line=new THREE.Line(a,new THREE.LineBasicMaterial({color:g})),this.line.matrixAutoUpdate=!1,this.add(this.line));this.cone=new THREE.Mesh(b,new THREE.MeshBasicMaterial({color:g}));
+this.cone.matrixAutoUpdate=!1;this.add(this.cone);this.setDirection(c);this.setLength(e,f,h)}}();THREE.ArrowHelper.prototype=Object.create(THREE.Object3D.prototype);THREE.ArrowHelper.prototype.constructor=THREE.ArrowHelper;THREE.ArrowHelper.prototype.setDirection=function(){var a=new THREE.Vector3,b;return function(c){.99999<c.y?this.quaternion.set(0,0,0,1):-.99999>c.y?this.quaternion.set(1,0,0,0):(a.set(c.z,0,-c.x).normalize(),b=Math.acos(c.y),this.quaternion.setFromAxisAngle(a,b))}}();
+THREE.ArrowHelper.prototype.setLength=function(a,b,c){void 0===b&&(b=.2*a);void 0===c&&(c=.2*b);b<a&&(this.line.scale.set(1,a-b,1),this.line.updateMatrix());this.cone.scale.set(c,b,c);this.cone.position.y=a;this.cone.updateMatrix()};THREE.ArrowHelper.prototype.setColor=function(a){void 0!==this.line&&this.line.material.color.set(a);this.cone.material.color.set(a)};
+THREE.BoxHelper=function(a){var b=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),c=new Float32Array(24),d=new THREE.BufferGeometry;d.setIndex(new THREE.BufferAttribute(b,1));d.addAttribute("position",new THREE.BufferAttribute(c,3));THREE.LineSegments.call(this,d,new THREE.LineBasicMaterial({color:16776960}));void 0!==a&&this.update(a)};THREE.BoxHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.BoxHelper.prototype.constructor=THREE.BoxHelper;
+THREE.BoxHelper.prototype.update=function(){var a=new THREE.Box3;return function(b){a.setFromObject(b);if(!a.empty()){b=a.min;var c=a.max,d=this.geometry.attributes.position,e=d.array;e[0]=c.x;e[1]=c.y;e[2]=c.z;e[3]=b.x;e[4]=c.y;e[5]=c.z;e[6]=b.x;e[7]=b.y;e[8]=c.z;e[9]=c.x;e[10]=b.y;e[11]=c.z;e[12]=c.x;e[13]=c.y;e[14]=b.z;e[15]=b.x;e[16]=c.y;e[17]=b.z;e[18]=b.x;e[19]=b.y;e[20]=b.z;e[21]=c.x;e[22]=b.y;e[23]=b.z;d.needsUpdate=!0;this.geometry.computeBoundingSphere()}}}();
+THREE.BoundingBoxHelper=function(a,b){var c=void 0!==b?b:8947848;this.object=a;this.box=new THREE.Box3;THREE.Mesh.call(this,new THREE.BoxGeometry(1,1,1),new THREE.MeshBasicMaterial({color:c,wireframe:!0}))};THREE.BoundingBoxHelper.prototype=Object.create(THREE.Mesh.prototype);THREE.BoundingBoxHelper.prototype.constructor=THREE.BoundingBoxHelper;THREE.BoundingBoxHelper.prototype.update=function(){this.box.setFromObject(this.object);this.box.size(this.scale);this.box.center(this.position)};
+THREE.CameraHelper=function(a){function b(a,b,d){c(a,d);c(b,d)}function c(a,b){d.vertices.push(new THREE.Vector3);d.colors.push(new THREE.Color(b));void 0===g[a]&&(g[a]=[]);g[a].push(d.vertices.length-1)}var d=new THREE.Geometry,e=new THREE.LineBasicMaterial({color:16777215,vertexColors:THREE.FaceColors}),g={};b("n1","n2",16755200);b("n2","n4",16755200);b("n4","n3",16755200);b("n3","n1",16755200);b("f1","f2",16755200);b("f2","f4",16755200);b("f4","f3",16755200);b("f3","f1",16755200);b("n1","f1",16755200);
+b("n2","f2",16755200);b("n3","f3",16755200);b("n4","f4",16755200);b("p","n1",16711680);b("p","n2",16711680);b("p","n3",16711680);b("p","n4",16711680);b("u1","u2",43775);b("u2","u3",43775);b("u3","u1",43775);b("c","t",16777215);b("p","c",3355443);b("cn1","cn2",3355443);b("cn3","cn4",3355443);b("cf1","cf2",3355443);b("cf3","cf4",3355443);THREE.LineSegments.call(this,d,e);this.camera=a;this.camera.updateProjectionMatrix();this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1;this.pointMap=g;this.update()};
+THREE.CameraHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.CameraHelper.prototype.constructor=THREE.CameraHelper;
+THREE.CameraHelper.prototype.update=function(){function a(a,f,h,l){d.set(f,h,l).unproject(e);a=c[a];if(void 0!==a)for(f=0,h=a.length;f<h;f++)b.vertices[a[f]].copy(d)}var b,c,d=new THREE.Vector3,e=new THREE.Camera;return function(){b=this.geometry;c=this.pointMap;e.projectionMatrix.copy(this.camera.projectionMatrix);a("c",0,0,-1);a("t",0,0,1);a("n1",-1,-1,-1);a("n2",1,-1,-1);a("n3",-1,1,-1);a("n4",1,1,-1);a("f1",-1,-1,1);a("f2",1,-1,1);a("f3",-1,1,1);a("f4",1,1,1);a("u1",.7,1.1,-1);a("u2",-.7,1.1,
+-1);a("u3",0,2,-1);a("cf1",-1,0,1);a("cf2",1,0,1);a("cf3",0,-1,1);a("cf4",0,1,1);a("cn1",-1,0,-1);a("cn2",1,0,-1);a("cn3",0,-1,-1);a("cn4",0,1,-1);b.verticesNeedUpdate=!0}}();
+THREE.DirectionalLightHelper=function(a,b){THREE.Object3D.call(this);this.light=a;this.light.updateMatrixWorld();this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1;b=b||1;var c=new THREE.Geometry;c.vertices.push(new THREE.Vector3(-b,b,0),new THREE.Vector3(b,b,0),new THREE.Vector3(b,-b,0),new THREE.Vector3(-b,-b,0),new THREE.Vector3(-b,b,0));var d=new THREE.LineBasicMaterial({fog:!1});d.color.copy(this.light.color).multiplyScalar(this.light.intensity);this.lightPlane=new THREE.Line(c,d);this.add(this.lightPlane);
+c=new THREE.Geometry;c.vertices.push(new THREE.Vector3,new THREE.Vector3);d=new THREE.LineBasicMaterial({fog:!1});d.color.copy(this.light.color).multiplyScalar(this.light.intensity);this.targetLine=new THREE.Line(c,d);this.add(this.targetLine);this.update()};THREE.DirectionalLightHelper.prototype=Object.create(THREE.Object3D.prototype);THREE.DirectionalLightHelper.prototype.constructor=THREE.DirectionalLightHelper;
+THREE.DirectionalLightHelper.prototype.dispose=function(){this.lightPlane.geometry.dispose();this.lightPlane.material.dispose();this.targetLine.geometry.dispose();this.targetLine.material.dispose()};
+THREE.DirectionalLightHelper.prototype.update=function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Vector3;return function(){a.setFromMatrixPosition(this.light.matrixWorld);b.setFromMatrixPosition(this.light.target.matrixWorld);c.subVectors(b,a);this.lightPlane.lookAt(c);this.lightPlane.material.color.copy(this.light.color).multiplyScalar(this.light.intensity);this.targetLine.geometry.vertices[1].copy(c);this.targetLine.geometry.verticesNeedUpdate=!0;this.targetLine.material.color.copy(this.lightPlane.material.color)}}();
+THREE.EdgesHelper=function(a,b,c){b=void 0!==b?b:16777215;THREE.LineSegments.call(this,new THREE.EdgesGeometry(a.geometry,c),new THREE.LineBasicMaterial({color:b}));this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1};THREE.EdgesHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.EdgesHelper.prototype.constructor=THREE.EdgesHelper;
+THREE.FaceNormalsHelper=function(a,b,c,d){this.object=a;this.size=void 0!==b?b:1;a=void 0!==c?c:16776960;d=void 0!==d?d:1;b=0;c=this.object.geometry;c instanceof THREE.Geometry?b=c.faces.length:console.warn("THREE.FaceNormalsHelper: only THREE.Geometry is supported. Use THREE.VertexNormalsHelper, instead.");c=new THREE.BufferGeometry;b=new THREE.Float32Attribute(6*b,3);c.addAttribute("position",b);THREE.LineSegments.call(this,c,new THREE.LineBasicMaterial({color:a,linewidth:d}));this.matrixAutoUpdate=
+!1;this.update()};THREE.FaceNormalsHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.FaceNormalsHelper.prototype.constructor=THREE.FaceNormalsHelper;
+THREE.FaceNormalsHelper.prototype.update=function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Matrix3;return function(){this.object.updateMatrixWorld(!0);c.getNormalMatrix(this.object.matrixWorld);for(var d=this.object.matrixWorld,e=this.geometry.attributes.position,g=this.object.geometry,f=g.vertices,g=g.faces,h=0,l=0,k=g.length;l<k;l++){var m=g[l],p=m.normal;a.copy(f[m.a]).add(f[m.b]).add(f[m.c]).divideScalar(3).applyMatrix4(d);b.copy(p).applyMatrix3(c).normalize().multiplyScalar(this.size).add(a);
+e.setXYZ(h,a.x,a.y,a.z);h+=1;e.setXYZ(h,b.x,b.y,b.z);h+=1}e.needsUpdate=!0;return this}}();
+THREE.GridHelper=function(a,b){var c=new THREE.Geometry,d=new THREE.LineBasicMaterial({vertexColors:THREE.VertexColors});this.color1=new THREE.Color(4473924);this.color2=new THREE.Color(8947848);for(var e=-a;e<=a;e+=b){c.vertices.push(new THREE.Vector3(-a,0,e),new THREE.Vector3(a,0,e),new THREE.Vector3(e,0,-a),new THREE.Vector3(e,0,a));var g=0===e?this.color1:this.color2;c.colors.push(g,g,g,g)}THREE.LineSegments.call(this,c,d)};THREE.GridHelper.prototype=Object.create(THREE.LineSegments.prototype);
+THREE.GridHelper.prototype.constructor=THREE.GridHelper;THREE.GridHelper.prototype.setColors=function(a,b){this.color1.set(a);this.color2.set(b);this.geometry.colorsNeedUpdate=!0};
+THREE.HemisphereLightHelper=function(a,b){THREE.Object3D.call(this);this.light=a;this.light.updateMatrixWorld();this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1;this.colors=[new THREE.Color,new THREE.Color];var c=new THREE.SphereGeometry(b,4,2);c.rotateX(-Math.PI/2);for(var d=0;8>d;d++)c.faces[d].color=this.colors[4>d?0:1];d=new THREE.MeshBasicMaterial({vertexColors:THREE.FaceColors,wireframe:!0});this.lightSphere=new THREE.Mesh(c,d);this.add(this.lightSphere);this.update()};
+THREE.HemisphereLightHelper.prototype=Object.create(THREE.Object3D.prototype);THREE.HemisphereLightHelper.prototype.constructor=THREE.HemisphereLightHelper;THREE.HemisphereLightHelper.prototype.dispose=function(){this.lightSphere.geometry.dispose();this.lightSphere.material.dispose()};
+THREE.HemisphereLightHelper.prototype.update=function(){var a=new THREE.Vector3;return function(){this.colors[0].copy(this.light.color).multiplyScalar(this.light.intensity);this.colors[1].copy(this.light.groundColor).multiplyScalar(this.light.intensity);this.lightSphere.lookAt(a.setFromMatrixPosition(this.light.matrixWorld).negate());this.lightSphere.geometry.colorsNeedUpdate=!0}}();
+THREE.PointLightHelper=function(a,b){this.light=a;this.light.updateMatrixWorld();var c=new THREE.SphereGeometry(b,4,2),d=new THREE.MeshBasicMaterial({wireframe:!0,fog:!1});d.color.copy(this.light.color).multiplyScalar(this.light.intensity);THREE.Mesh.call(this,c,d);this.matrix=this.light.matrixWorld;this.matrixAutoUpdate=!1};THREE.PointLightHelper.prototype=Object.create(THREE.Mesh.prototype);THREE.PointLightHelper.prototype.constructor=THREE.PointLightHelper;
+THREE.PointLightHelper.prototype.dispose=function(){this.geometry.dispose();this.material.dispose()};THREE.PointLightHelper.prototype.update=function(){this.material.color.copy(this.light.color).multiplyScalar(this.light.intensity)};
+THREE.SkeletonHelper=function(a){this.bones=this.getBoneList(a);for(var b=new THREE.Geometry,c=0;c<this.bones.length;c++)this.bones[c].parent instanceof THREE.Bone&&(b.vertices.push(new THREE.Vector3),b.vertices.push(new THREE.Vector3),b.colors.push(new THREE.Color(0,0,1)),b.colors.push(new THREE.Color(0,1,0)));b.dynamic=!0;c=new THREE.LineBasicMaterial({vertexColors:THREE.VertexColors,depthTest:!1,depthWrite:!1,transparent:!0});THREE.LineSegments.call(this,b,c);this.root=a;this.matrix=a.matrixWorld;
+this.matrixAutoUpdate=!1;this.update()};THREE.SkeletonHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.SkeletonHelper.prototype.constructor=THREE.SkeletonHelper;THREE.SkeletonHelper.prototype.getBoneList=function(a){var b=[];a instanceof THREE.Bone&&b.push(a);for(var c=0;c<a.children.length;c++)b.push.apply(b,this.getBoneList(a.children[c]));return b};
+THREE.SkeletonHelper.prototype.update=function(){for(var a=this.geometry,b=(new THREE.Matrix4).getInverse(this.root.matrixWorld),c=new THREE.Matrix4,d=0,e=0;e<this.bones.length;e++){var g=this.bones[e];g.parent instanceof THREE.Bone&&(c.multiplyMatrices(b,g.matrixWorld),a.vertices[d].setFromMatrixPosition(c),c.multiplyMatrices(b,g.parent.matrixWorld),a.vertices[d+1].setFromMatrixPosition(c),d+=2)}a.verticesNeedUpdate=!0;a.computeBoundingSphere()};
+THREE.SpotLightHelper=function(a){THREE.Object3D.call(this);this.light=a;this.light.updateMatrixWorld();this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1;a=new THREE.CylinderGeometry(0,1,1,8,1,!0);a.translate(0,-.5,0);a.rotateX(-Math.PI/2);var b=new THREE.MeshBasicMaterial({wireframe:!0,fog:!1});this.cone=new THREE.Mesh(a,b);this.add(this.cone);this.update()};THREE.SpotLightHelper.prototype=Object.create(THREE.Object3D.prototype);THREE.SpotLightHelper.prototype.constructor=THREE.SpotLightHelper;
+THREE.SpotLightHelper.prototype.dispose=function(){this.cone.geometry.dispose();this.cone.material.dispose()};THREE.SpotLightHelper.prototype.update=function(){var a=new THREE.Vector3,b=new THREE.Vector3;return function(){var c=this.light.distance?this.light.distance:1E4,d=c*Math.tan(this.light.angle);this.cone.scale.set(d,d,c);a.setFromMatrixPosition(this.light.matrixWorld);b.setFromMatrixPosition(this.light.target.matrixWorld);this.cone.lookAt(b.sub(a));this.cone.material.color.copy(this.light.color).multiplyScalar(this.light.intensity)}}();
+THREE.VertexNormalsHelper=function(a,b,c,d){this.object=a;this.size=void 0!==b?b:1;a=void 0!==c?c:16711680;d=void 0!==d?d:1;b=0;c=this.object.geometry;c instanceof THREE.Geometry?b=3*c.faces.length:c instanceof THREE.BufferGeometry&&(b=c.attributes.normal.count);c=new THREE.BufferGeometry;b=new THREE.Float32Attribute(6*b,3);c.addAttribute("position",b);THREE.LineSegments.call(this,c,new THREE.LineBasicMaterial({color:a,linewidth:d}));this.matrixAutoUpdate=!1;this.update()};
+THREE.VertexNormalsHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.VertexNormalsHelper.prototype.constructor=THREE.VertexNormalsHelper;
+THREE.VertexNormalsHelper.prototype.update=function(){var a=new THREE.Vector3,b=new THREE.Vector3,c=new THREE.Matrix3;return function(){var d=["a","b","c"];this.object.updateMatrixWorld(!0);c.getNormalMatrix(this.object.matrixWorld);var e=this.object.matrixWorld,g=this.geometry.attributes.position,f=this.object.geometry;if(f instanceof THREE.Geometry)for(var h=f.vertices,l=f.faces,k=f=0,m=l.length;k<m;k++)for(var p=l[k],n=0,q=p.vertexNormals.length;n<q;n++){var s=p.vertexNormals[n];a.copy(h[p[d[n]]]).applyMatrix4(e);
+b.copy(s).applyMatrix3(c).normalize().multiplyScalar(this.size).add(a);g.setXYZ(f,a.x,a.y,a.z);f+=1;g.setXYZ(f,b.x,b.y,b.z);f+=1}else if(f instanceof THREE.BufferGeometry)for(d=f.attributes.position,h=f.attributes.normal,n=f=0,q=d.count;n<q;n++)a.set(d.getX(n),d.getY(n),d.getZ(n)).applyMatrix4(e),b.set(h.getX(n),h.getY(n),h.getZ(n)),b.applyMatrix3(c).normalize().multiplyScalar(this.size).add(a),g.setXYZ(f,a.x,a.y,a.z),f+=1,g.setXYZ(f,b.x,b.y,b.z),f+=1;g.needsUpdate=!0;return this}}();
+THREE.WireframeHelper=function(a,b){var c=void 0!==b?b:16777215;THREE.LineSegments.call(this,new THREE.WireframeGeometry(a.geometry),new THREE.LineBasicMaterial({color:c}));this.matrix=a.matrixWorld;this.matrixAutoUpdate=!1};THREE.WireframeHelper.prototype=Object.create(THREE.LineSegments.prototype);THREE.WireframeHelper.prototype.constructor=THREE.WireframeHelper;THREE.ImmediateRenderObject=function(a){THREE.Object3D.call(this);this.material=a;this.render=function(a){}};
+THREE.ImmediateRenderObject.prototype=Object.create(THREE.Object3D.prototype);THREE.ImmediateRenderObject.prototype.constructor=THREE.ImmediateRenderObject;THREE.MorphBlendMesh=function(a,b){THREE.Mesh.call(this,a,b);this.animationsMap={};this.animationsList=[];var c=this.geometry.morphTargets.length;this.createAnimation("__default",0,c-1,c/1);this.setAnimationWeight("__default",1)};THREE.MorphBlendMesh.prototype=Object.create(THREE.Mesh.prototype);THREE.MorphBlendMesh.prototype.constructor=THREE.MorphBlendMesh;
+THREE.MorphBlendMesh.prototype.createAnimation=function(a,b,c,d){b={start:b,end:c,length:c-b+1,fps:d,duration:(c-b)/d,lastFrame:0,currentFrame:0,active:!1,time:0,direction:1,weight:1,directionBackwards:!1,mirroredLoop:!1};this.animationsMap[a]=b;this.animationsList.push(b)};
+THREE.MorphBlendMesh.prototype.autoCreateAnimations=function(a){for(var b=/([a-z]+)_?(\d+)/,c,d={},e=this.geometry,g=0,f=e.morphTargets.length;g<f;g++){var h=e.morphTargets[g].name.match(b);if(h&&1<h.length){var l=h[1];d[l]||(d[l]={start:Infinity,end:-Infinity});h=d[l];g<h.start&&(h.start=g);g>h.end&&(h.end=g);c||(c=l)}}for(l in d)h=d[l],this.createAnimation(l,h.start,h.end,a);this.firstAnimation=c};
+THREE.MorphBlendMesh.prototype.setAnimationDirectionForward=function(a){if(a=this.animationsMap[a])a.direction=1,a.directionBackwards=!1};THREE.MorphBlendMesh.prototype.setAnimationDirectionBackward=function(a){if(a=this.animationsMap[a])a.direction=-1,a.directionBackwards=!0};THREE.MorphBlendMesh.prototype.setAnimationFPS=function(a,b){var c=this.animationsMap[a];c&&(c.fps=b,c.duration=(c.end-c.start)/c.fps)};
+THREE.MorphBlendMesh.prototype.setAnimationDuration=function(a,b){var c=this.animationsMap[a];c&&(c.duration=b,c.fps=(c.end-c.start)/c.duration)};THREE.MorphBlendMesh.prototype.setAnimationWeight=function(a,b){var c=this.animationsMap[a];c&&(c.weight=b)};THREE.MorphBlendMesh.prototype.setAnimationTime=function(a,b){var c=this.animationsMap[a];c&&(c.time=b)};THREE.MorphBlendMesh.prototype.getAnimationTime=function(a){var b=0;if(a=this.animationsMap[a])b=a.time;return b};
+THREE.MorphBlendMesh.prototype.getAnimationDuration=function(a){var b=-1;if(a=this.animationsMap[a])b=a.duration;return b};THREE.MorphBlendMesh.prototype.playAnimation=function(a){var b=this.animationsMap[a];b?(b.time=0,b.active=!0):console.warn("THREE.MorphBlendMesh: animation["+a+"] undefined in .playAnimation()")};THREE.MorphBlendMesh.prototype.stopAnimation=function(a){if(a=this.animationsMap[a])a.active=!1};
+THREE.MorphBlendMesh.prototype.update=function(a){for(var b=0,c=this.animationsList.length;b<c;b++){var d=this.animationsList[b];if(d.active){var e=d.duration/d.length;d.time+=d.direction*a;if(d.mirroredLoop){if(d.time>d.duration||0>d.time)d.direction*=-1,d.time>d.duration&&(d.time=d.duration,d.directionBackwards=!0),0>d.time&&(d.time=0,d.directionBackwards=!1)}else d.time%=d.duration,0>d.time&&(d.time+=d.duration);var g=d.start+THREE.Math.clamp(Math.floor(d.time/e),0,d.length-1),f=d.weight;g!==d.currentFrame&&
+(this.morphTargetInfluences[d.lastFrame]=0,this.morphTargetInfluences[d.currentFrame]=1*f,this.morphTargetInfluences[g]=0,d.lastFrame=d.currentFrame,d.currentFrame=g);e=d.time%e/e;d.directionBackwards&&(e=1-e);d.currentFrame!==d.lastFrame?(this.morphTargetInfluences[d.currentFrame]=e*f,this.morphTargetInfluences[d.lastFrame]=(1-e)*f):this.morphTargetInfluences[d.currentFrame]=f}}};
diff --git a/wrt/wrt_support/apps_repo/webgl/assets/js/was_key_event_handler.js b/wrt/wrt_support/apps_repo/webgl/assets/js/was_key_event_handler.js
new file mode 100644 (file)
index 0000000..83d5d6c
--- /dev/null
@@ -0,0 +1,19 @@
+(function() {
+    window.addEventListener('keydown', function(e) {
+        if (e.keyCode == 27) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+    document.addEventListener('keydown', function(e) {
+        if (e.keyCode == 116) {
+            e.preventDefault();
+            e.stopPropagation();
+            console.log("F5");
+            var launcher = require('remote').getCurrentWindow();
+            launcher.reload();
+        }
+    })
+})()
\ No newline at end of file
diff --git a/wrt/wrt_support/apps_repo/webgl/assets/textures/crate.gif b/wrt/wrt_support/apps_repo/webgl/assets/textures/crate.gif
new file mode 100644 (file)
index 0000000..d9b475d
Binary files /dev/null and b/wrt/wrt_support/apps_repo/webgl/assets/textures/crate.gif differ
diff --git a/wrt/wrt_support/apps_repo/webgl/config.xml b/wrt/wrt_support/apps_repo/webgl/config.xml
new file mode 100644 (file)
index 0000000..61d3788
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/Caph2TestSuite" version="1.0.0" viewmodes="maximized">
+    <tizen:application id="0123456789.ANYTHING" package="0123456789" required_version="2.2"/>
+    <access origin="*" subdomains="true"/>
+    <content src="index.html"/>
+    <feature name="http://tizen.org/feature/screen.size.all"/>
+    <icon src="icon.png"/>
+    <name>webgl</name>
+    <name xml:lang="en-us">Web GL</name>
+    <name xml:lang="ko-kr">웹 지엘</name>
+    <name xml:lang="jp-jp">ウェブ GL</name>
+</widget>
diff --git a/wrt/wrt_support/apps_repo/webgl/icon.png b/wrt/wrt_support/apps_repo/webgl/icon.png
new file mode 100644 (file)
index 0000000..d97c01d
Binary files /dev/null and b/wrt/wrt_support/apps_repo/webgl/icon.png differ
diff --git a/wrt/wrt_support/apps_repo/webgl/index.html b/wrt/wrt_support/apps_repo/webgl/index.html
new file mode 100644 (file)
index 0000000..f82fa3e
--- /dev/null
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <title>three.js webgl - geometry - cube</title>
+    <meta charset="UTF-8" name="viewport" content="width=device-width, user-scalable=no">
+    <style>
+        body {
+            margin: 0px;
+            background-color: #000000;
+            overflow: hidden;
+        }
+    </style>
+    <script type="text/javascript" src="./assets/js/was_key_event_handler.js"></script>
+</head>
+<body>
+
+<script src="./assets/js/three.min.js"></script>
+
+<script>
+
+    var camera, scene, renderer;
+    var mesh;
+
+    init();
+    animate();
+
+    function init() {
+
+        camera = new THREE.PerspectiveCamera( 70, window.innerWidth / window.innerHeight, 1, 1000 );
+        camera.position.z = 400;
+
+        scene = new THREE.Scene();
+
+        var texture = THREE.ImageUtils.loadTexture( 'assets/textures/crate.gif' );
+
+        var geometry = new THREE.BoxGeometry( 200, 200, 200 );
+        var material = new THREE.MeshBasicMaterial( { map: texture } );
+
+        mesh = new THREE.Mesh( geometry, material );
+        scene.add( mesh );
+
+        renderer = new THREE.WebGLRenderer();
+        renderer.setPixelRatio( window.devicePixelRatio );
+        renderer.setSize( window.innerWidth, window.innerHeight );
+        document.body.appendChild( renderer.domElement );
+
+        //
+
+        window.addEventListener( 'resize', onWindowResize, false );
+
+    }
+
+    function onWindowResize() {
+
+        camera.aspect = window.innerWidth / window.innerHeight;
+        camera.updateProjectionMatrix();
+
+        renderer.setSize( window.innerWidth, window.innerHeight );
+
+    }
+
+    function animate() {
+
+        requestAnimationFrame( animate );
+
+        mesh.rotation.x += 0.005;
+        mesh.rotation.y += 0.01;
+
+        renderer.render( scene, camera );
+
+    }
+
+</script>
+
+</body>
+</html>
diff --git a/wrt/wrt_support/apps_repo/webgl/package.json b/wrt/wrt_support/apps_repo/webgl/package.json
new file mode 100644 (file)
index 0000000..61d3788
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/Caph2TestSuite" version="1.0.0" viewmodes="maximized">
+    <tizen:application id="0123456789.ANYTHING" package="0123456789" required_version="2.2"/>
+    <access origin="*" subdomains="true"/>
+    <content src="index.html"/>
+    <feature name="http://tizen.org/feature/screen.size.all"/>
+    <icon src="icon.png"/>
+    <name>webgl</name>
+    <name xml:lang="en-us">Web GL</name>
+    <name xml:lang="ko-kr">웹 지엘</name>
+    <name xml:lang="jp-jp">ウェブ GL</name>
+</widget>
diff --git a/wrt/wrt_support/extensions_repo/alarm/AlarmAbsolute.js b/wrt/wrt_support/extensions_repo/alarm/AlarmAbsolute.js
new file mode 100644 (file)
index 0000000..eaa9fb0
--- /dev/null
@@ -0,0 +1,30 @@
+(function() {
+  AlarmAbsolute = (function() {
+    function AlarmAbsolute(date, periodOrDaysOfWeek) {
+      console.log('AlarmAbsolute(' +date+') : path=' + __dirname);
+      this.date_ = date;
+    }
+
+    AlarmAbsolute.prototype.getNextScheduledDate = function() {
+      console.log('AlarmAbsolute.getNextScheduledDate() called!');
+      var seconds = 9999;
+      return new Date(seconds * 1000);
+    };
+
+    AlarmAbsolute.activate = function(emitter) {
+      console.log('==AlarmAbsolute.activate==');
+      // do nothing for API
+    }
+
+    AlarmAbsolute.deactivate = function(emitter) {
+      console.log('==AlarmAbsolute.deactivate==');
+      // do nothing for API
+    }
+
+    return AlarmAbsolute;
+
+  })();
+
+  module.exports = AlarmAbsolute;
+
+}).call(this);
diff --git a/wrt/wrt_support/extensions_repo/alarm/AlarmRelative.js b/wrt/wrt_support/extensions_repo/alarm/AlarmRelative.js
new file mode 100644 (file)
index 0000000..4870924
--- /dev/null
@@ -0,0 +1,30 @@
+(function() {
+  AlarmRelative = (function() {
+    function AlarmRelative(date, periodOrDaysOfWeek) {
+      console.log('AlarmRelative(' +date+') : path=' + __dirname);
+      this.date_ = date;
+    }
+
+    AlarmRelative.prototype.getNextScheduledDate = function() {
+      console.log('AlarmRelative.getNextScheduledDate() called!');
+      var seconds = 9999;
+      return new Date(seconds * 1000);
+    };
+
+    AlarmRelative.activate = function(emitter) {
+      console.log('==AlarmRelative.activate==');
+      // do nothing for API
+    }
+
+    AlarmRelative.deactivate = function(emitter) {
+      console.log('==AlarmRelative.deactivate==');
+      // do nothing for API
+    }
+
+    return AlarmRelative;
+
+  })();
+
+  module.exports = AlarmRelative;
+
+}).call(this);
diff --git a/wrt/wrt_support/extensions_repo/alarm/package.json b/wrt/wrt_support/extensions_repo/alarm/package.json
new file mode 100644 (file)
index 0000000..7310d08
--- /dev/null
@@ -0,0 +1,13 @@
+{
+  "name": "alarm",
+  "version": "0.0.0",
+  "main": "Alarm",
+  "description": "Sample extension for API type",
+  "repository": "localhost",
+  "type": "API",
+  "namespace": "tizen",
+  "entry_points": [
+    { "AlarmAbsolute": "AlarmAbsolute" },
+    { "AlarmRelative": "AlarmRelative" }
+  ]
+}
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/banner_slide.js b/wrt/wrt_support/extensions_repo/banner_slide/banner_slide.js
new file mode 100644 (file)
index 0000000..23aa99f
--- /dev/null
@@ -0,0 +1,58 @@
+(function() {
+  var path = require('path');
+  var BrowserWindow = require('browser-window');
+  var TRIGGER_EVENT = 'was:webcontents:did-finish-load';
+
+  BannerSlide = (function() {
+    function BannerSlide(window_id) {
+      this.window_id_ = window_id;
+    }
+
+    BannerSlide.prototype.show = function() {
+      var win = BrowserWindow.fromId(this.window_id_);
+      var title = win.getTitle().toUpperCase();
+      console.log("BannerSlide - " + title);
+      if (title == "LAUNCHER" || title == "INSTALLER" || title == "EXTENSIONS SETTINGS") return;
+      var jsCode = "var tickerDiv = document.createElement('div'); tickerDiv.style.position = 'fixed'; tickerDiv.style.bottom = '10px'; tickerDiv.style.left = tickerDiv.style.right = '0px'; tickerDiv.style.width = '100%'; tickerDiv.style.zIndex = '999'; tickerDiv.setAttribute('align', 'center'); document.body.appendChild(tickerDiv); tickerDiv.onclick = function() { console.log('tickerDiv.onclick'); tickerDiv.style.display = 'none'};";
+      var iframeHtmlPath, iframeHtml = path.join(process.env.WAS_EXTENSIONS_PATH, 'banner_slide', 'no-jquery.html');
+      // for Windows
+      if (!process.env.TARGET || process.env.TARGET == "WINDOW")
+        iframeHtmlPath = iframeHtml.replace(/\\/g, "\\\\");
+      else
+        iframeHtmlPath = iframeHtml;
+      console.log("BannerSlide - iframeHtmlPath = " + iframeHtmlPath);
+      var iframeCode = "{ var iframe = document.createElement('iframe'); iframe.setAttribute('src', '"+ iframeHtmlPath + "'); iframe.setAttribute('width', '480'); iframe.setAttribute('height', '80'); iframe.setAttribute('frameborder', '0'); iframe.setAttribute('scrolling', 'no'); iframe.setAttribute('marginwidth', '0'); iframe.setAttribute('marginheight', '0'); tickerDiv.appendChild(iframe); }";
+      win.webContents.executeJavaScript(jsCode + iframeCode);
+    };
+
+    BannerSlide.listener = function(window_id) {
+      console.log('BannerSlide triggered!!');
+      var banner = new BannerSlide(window_id);
+      banner.show();
+    }
+
+    BannerSlide.activate = function(emitter) {
+      console.log('==BannerSlide.activate==');
+      if (emitter && emitter.on) {
+        emitter.on(TRIGGER_EVENT, BannerSlide.listener);
+      } else {
+        console.log('emitter.on not defined');
+      }
+    }
+
+    BannerSlide.deactivate = function(emitter) {
+      console.log('==BannerSlide.deactivate==');
+      if (emitter && emitter.removeListener) {
+        emitter.removeListener(TRIGGER_EVENT, BannerSlide.listener);
+      } else {
+        console.log('emitter.removeListener not defined');
+      }
+    }
+
+    return BannerSlide;
+
+  })();
+
+  module.exports = BannerSlide;
+
+}).call(this);
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/deep-minified.html b/wrt/wrt_support/extensions_repo/banner_slide/deep-minified.html
new file mode 100755 (executable)
index 0000000..9fdad52
--- /dev/null
@@ -0,0 +1,83 @@
+<!DOCTYPE html>\r
+<html>\r
+<head>\r
+    <meta charset="utf-8">\r
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">\r
+    <title></title>\r
+</head>\r
+<body style="padding:0px; margin:0px; background-color:#fff;">\r
+\r
+<!-- #region Jssor Slider Begin -->\r
+\r
+<!-- Jssor Slider is free under MIT license. -->\r
+<!-- Development Reference http://www.jssor.com/development. -->\r
+<!-- Jssor Slider Maker Start At $5 http://www.jssor.com/slider-maker. -->\r
+\r
+<!-- This demo works independently without any other javascript library. -->\r
+\r
+<script>\r
+\r
++function(f,g,b,j,c,i,k){/*! Jssor */
+new(function(){});var d=f.$JssorEasing$={oc:function(a){return-b.cos(a*b.PI)/2+.5},Od:function(a){return a},Me:function(a){return a*a},Nd:function(a){return-a*(a-2)},jf:function(a){return(a*=2)<1?1/2*a*a:-1/2*(--a*(a-2)-1)},hf:function(a){return a*a*a},cf:function(a){return(a-=1)*a*a+1},bf:function(a){return(a*=2)<1?1/2*a*a*a:1/2*((a-=2)*a*a+2)},af:function(a){return a*a*a*a},Xe:function(a){return-((a-=1)*a*a*a-1)},Re:function(a){return(a*=2)<1?1/2*a*a*a*a:-1/2*((a-=2)*a*a*a-2)},Qe:function(a){return a*a*a*a*a},Oe:function(a){return(a-=1)*a*a*a*a+1},pe:function(a){return(a*=2)<1?1/2*a*a*a*a*a:1/2*((a-=2)*a*a*a*a+2)},kf:function(a){return 1-b.cos(a*b.PI/2)},fe:function(a){return b.sin(a*b.PI/2)},de:function(a){return-1/2*(b.cos(b.PI*a)-1)},ee:function(a){return a==0?0:b.pow(2,10*(a-1))},le:function(a){return a==1?1:-b.pow(2,-10*a)+1},ie:function(a){return a==0||a==1?a:(a*=2)<1?1/2*b.pow(2,10*(a-1)):1/2*(-b.pow(2,-10*--a)+2)},Sd:function(a){return-(b.sqrt(1-a*a)-1)},ne:function(a){return b.sqrt(1-(a-=1)*a)},ge:function(a){return(a*=2)<1?-1/2*(b.sqrt(1-a*a)-1):1/2*(b.sqrt(1-(a-=2)*a)+1)},he:function(a){if(!a||a==1)return a;var c=.3,d=.075;return-(b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c))},me:function(a){if(!a||a==1)return a;var c=.3,d=.075;return b.pow(2,-10*a)*b.sin((a-d)*2*b.PI/c)+1},Wd:function(a){if(!a||a==1)return a;var c=.45,d=.1125;return(a*=2)<1?-.5*b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c):b.pow(2,-10*(a-=1))*b.sin((a-d)*2*b.PI/c)*.5+1},Zd:function(a){var b=1.70158;return a*a*((b+1)*a-b)},ke:function(a){var b=1.70158;return(a-=1)*a*((b+1)*a+b)+1},ae:function(a){var b=1.70158;return(a*=2)<1?1/2*a*a*(((b*=1.525)+1)*a-b):1/2*((a-=2)*a*(((b*=1.525)+1)*a+b)+2)},Sc:function(a){return 1-d.yc(1-a)},yc:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375},lf:function(a){return a<1/2?d.Sc(a*2)*.5:d.yc(a*2-1)*.5+.5},Af:function(){return 1-b.abs(1)},nf:function(a){return 1-b.cos(a*b.PI*2)},Kg:function(a){return b.sin(a*b.PI*2)},Og:function(a){return 1-((a*=2)<1?(a=1-a)*a*a:(a-=1)*a*a)},Pg:function(a){return(a*=2)<1?a*a*a:(a=2-a)*a*a}},e=f.$Jease$={Ug:d.oc,Nc:d.Od,jg:d.Me,wg:d.Nd,xg:d.jf,lc:d.hf,yg:d.cf,Ag:d.bf,Bg:d.af,Dg:d.Xe,zg:d.Re,sg:d.Qe,qg:d.Oe,pg:d.pe,og:d.kf,ng:d.fe,mg:d.de,lg:d.ee,kg:d.le,Xg:d.ie,Vg:d.Sd,Tg:d.ne,Sg:d.ge,Ng:d.he,Mg:d.me,gg:d.Wd,Uf:d.Zd,Df:d.ke,Cf:d.ae,hg:d.Sc,xf:d.yc,wf:d.lf,vf:d.Af,tf:d.nf,If:d.Kg,Kf:d.Og,eg:d.Pg};f.$JssorDirection$={};var a=f.$Jssor$=new function(){var e=this,Ab=/\S+/g,S=1,tb=2,Z=3,wb=4,db=5,I,s=0,l=0,q=0,J=0,C=0,B=navigator,ib=B.appName,n=B.userAgent;function Jb(){if(!I){I={Pf:"ontouchstart"in f||"createTouch"in g};var a;if(B.pointerEnabled||(a=B.msPointerEnabled))I.Pd=a?"msTouchAction":"touchAction"}return I}function t(i){if(!s){s=-1;if(ib=="Microsoft Internet Explorer"&&!!f.attachEvent&&!!f.ActiveXObject){var e=n.indexOf("MSIE");s=S;q=o(n.substring(e+5,n.indexOf(";",e)));/*@cc_on J=@_jscript_version@*/;l=g.documentMode||q}else if(ib=="Netscape"&&!!f.addEventListener){var d=n.indexOf("Firefox"),b=n.indexOf("Safari"),h=n.indexOf("Chrome"),c=n.indexOf("AppleWebKit");if(d>=0){s=tb;l=o(n.substring(d+8))}else if(b>=0){var j=n.substring(0,b).lastIndexOf("/");s=h>=0?wb:Z;l=o(n.substring(j+1,b))}else{var a=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/i.exec(n);if(a){s=S;l=q=o(a[1])}}if(c>=0)C=o(n.substring(c+12))}else{var a=/(opera)(?:.*version|)[ \/]([\w.]+)/i.exec(n);if(a){s=db;l=o(a[2])}}}return i==s}function p(){return t(S)}function N(){return p()&&(l<6||g.compatMode=="BackCompat")}function vb(){return t(Z)}function cb(){return t(db)}function ob(){return vb()&&C>534&&C<535}function L(){return p()&&l<9}function qb(a){var b;return function(d){if(!b){b=a;var c=a.substr(0,1).toUpperCase()+a.substr(1);m([a].concat(["WebKit","ms","Moz","O","webkit"]),function(g,f){var e=a;if(f)e=g+c;if(d.style[e]!=k)return b=e})}return b}}var pb=qb("transform");function hb(a){return{}.toString.call(a)}var H;function Gb(){if(!H){H={};m(["Boolean","Number","String","Function","Array","Date","RegExp","Object"],function(a){H["[object "+a+"]"]=a.toLowerCase()})}return H}function m(a,d){if(hb(a)=="[object Array]"){for(var b=0;b<a.length;b++)if(d(a[b],b,a))return c}else for(var e in a)if(d(a[e],e,a))return c}function z(a){return a==j?String(a):Gb()[hb(a)]||"object"}function fb(a){for(var b in a)return c}function x(a){try{return z(a)=="object"&&!a.nodeType&&a!=a.window&&(!a.constructor||{}.hasOwnProperty.call(a.constructor.prototype,"isPrototypeOf"))}catch(b){}}function w(a,b){return{x:a,y:b}}function lb(b,a){setTimeout(b,a||0)}function F(b,d,c){var a=!b||b=="inherit"?"":b;m(d,function(c){var b=c.exec(a);if(b){var d=a.substr(0,b.index),e=a.substr(b.lastIndex+1,a.length-(b.lastIndex+1));a=d+e}});a=c+(a.indexOf(" ")!=0?" ":"")+a;return a}function sb(b,a){if(l<9)b.style.filter=a}function Cb(g,a,i){if(!J||J<9){var d=a.sb,f=a.tb,j=(a.s||0)%360,h="";if(j||d!=k||f!=k){if(d==k)d=1;if(f==k)f=1;var c=e.Tf(j/180*b.PI,d||1,f||1),i=e.Vf(c,a.db,a.ab);e.Xf(g,i.y);e.Yf(g,i.x);h="progid:DXImageTransform.Microsoft.Matrix(M11="+c[0][0]+", M12="+c[0][1]+", M21="+c[1][0]+", M22="+c[1][1]+", SizingMethod='auto expand')"}var m=g.style.filter,n=new RegExp(/[\s]*progid:DXImageTransform\.Microsoft\.Matrix\([^\)]*\)/g),l=F(m,[n],h);sb(g,l)}}e.Zf=Jb;e.Jd=p;e.ag=vb;e.Hc=cb;e.bb=L;e.Dd=function(){return l};e.cg=function(){t();return C};e.L=lb;function V(a){a.constructor===V.caller&&a.zd&&a.zd.apply(a,V.caller.arguments)}e.zd=V;e.pb=function(a){if(e.xd(a))a=g.getElementById(a);return a};function r(a){return a||f.event}e.wd=r;e.nc=function(a){a=r(a);return a.target||a.srcElement||g};e.Ld=function(a){a=r(a);return{x:a.pageX||a.clientX||0,y:a.pageY||a.clientY||0}};function A(c,d,a){if(a!==k)c.style[d]=a==k?"":a;else{var b=c.currentStyle||c.style;a=b[d];if(a==""&&f.getComputedStyle){b=c.ownerDocument.defaultView.getComputedStyle(c,j);b&&(a=b.getPropertyValue(d)||b[d])}return a}}function X(b,c,a,d){if(a!=k){if(a==j)a="";else d&&(a+="px");A(b,c,a)}else return o(A(b,c))}function h(c,a){var d=a?X:A,b;if(a&4)b=qb(c);return function(e,f){return d(e,b?b(e):c,f,a&2)}}function Db(b){if(p()&&q<9){var a=/opacity=([^)]*)/.exec(b.style.filter||"");return a?o(a[1])/100:1}else return o(b.style.opacity||"1")}function Fb(c,a,f){if(p()&&q<9){var h=c.style.filter||"",i=new RegExp(/[\s]*alpha\([^\)]*\)/g),e=b.round(100*a),d="";if(e<100||f)d="alpha(opacity="+e+") ";var g=F(h,[i],d);sb(c,g)}else c.style.opacity=a==1?"":b.round(a*100)/100}var yb={s:["rotate"],Gb:["rotateX"],Cb:["rotateY"],sb:["scaleX",2],tb:["scaleY",2],Mb:["translateX",1],Kb:["translateY",1],Ob:["translateZ",1],Lb:["skewX"],Nb:["skewY"]};function nb(e,c){if(p()&&l&&l<10){delete c.Gb;delete c.Cb}var d=pb(e);if(d){var b="";a.c(c,function(e,c){var a=yb[c];if(a){var d=a[1]||0;b+=(b?" ":"")+a[0]+"("+e+(["deg","px",""])[d]+")"}});e.style[d]=b}}e.Jf=function(b,a){if(ob())lb(e.J(j,nb,b,a));else(L()?Cb:nb)(b,a)};e.vd=h("transformOrigin",4);e.Hf=h("backfaceVisibility",4);e.of=h("transformStyle",4);e.pf=h("perspective",6);e.qf=h("perspectiveOrigin",4);e.rf=function(a,c){if(p()&&q<9||q<10&&N())a.style.zoom=c==1?"":c;else{var b=pb(a);if(b){var f="scale("+c+")",e=a.style[b],g=new RegExp(/[\s]*scale\(.*?\)/g),d=F(e,[g],f);a.style[b]=d}}};var bb=0,ub=0;e.sf=function(b,a){return L()?function(){var g=c,d=N()?b.document.body:b.document.documentElement;if(d){var f=d.offsetWidth-bb,e=d.offsetHeight-ub;if(f||e){bb+=f;ub+=e}else g=i}g&&a()}:a};e.gc=function(b,a){return function(c){c=r(c);var f=c.type,d=c.relatedTarget||(f=="mouseout"?c.toElement:c.fromElement);(!d||d!==a&&!e.uf(a,d))&&b(c)}};e.e=function(a,d,b,c){a=e.pb(a);if(a.addEventListener){d=="mousewheel"&&a.addEventListener("DOMMouseScroll",b,c);a.addEventListener(d,b,c)}else if(a.attachEvent){a.attachEvent("on"+d,b);c&&a.setCapture&&a.setCapture()}};e.T=function(a,c,d,b){a=e.pb(a);if(a.removeEventListener){c=="mousewheel"&&a.removeEventListener("DOMMouseScroll",d,b);a.removeEventListener(c,d,b)}else if(a.detachEvent){a.detachEvent("on"+c,d);b&&a.releaseCapture&&a.releaseCapture()}};e.Qb=function(a){a=r(a);a.preventDefault&&a.preventDefault();a.cancel=c;a.returnValue=i};e.yf=function(a){a=r(a);a.stopPropagation&&a.stopPropagation();a.cancelBubble=c};e.J=function(d,c){var a=[].slice.call(arguments,2),b=function(){var b=a.concat([].slice.call(arguments,0));return c.apply(d,b)};return b};e.zf=function(a,b){if(b==k)return a.textContent||a.innerText;var c=g.createTextNode(b);e.xc(a);a.appendChild(c)};e.Q=function(d,c){for(var b=[],a=d.firstChild;a;a=a.nextSibling)(c||a.nodeType==1)&&b.push(a);return b};function gb(a,c,e,b){b=b||"u";for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(R(a,b)==c)return a;if(!e){var d=gb(a,c,e,b);if(d)return d}}}e.C=gb;function P(a,d,f,b){b=b||"u";var c=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){R(a,b)==d&&c.push(a);if(!f){var e=P(a,d,f,b);if(e.length)c=c.concat(e)}}return c}function ab(a,c,d){for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(a.tagName==c)return a;if(!d){var b=ab(a,c,d);if(b)return b}}}e.ig=ab;function rb(a,c,e){var b=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){(!c||a.tagName==c)&&b.push(a);if(!e){var d=rb(a,c,e);if(d.length)b=b.concat(d)}}return b}e.Ff=rb;e.Gf=function(b,a){return b.getElementsByTagName(a)};function y(){var e=arguments,d,c,b,a,g=1&e[0],f=1+g;d=e[f-1]||{};for(;f<e.length;f++)if(c=e[f])for(b in c){a=c[b];if(a!==k){a=c[b];var h=d[b];d[b]=g&&(x(h)||x(a))?y(g,{},h,a):a}}return d}e.n=y;function W(f,g){var d={},c,a,b;for(c in f){a=f[c];b=g[c];if(a!==b){var e;if(x(a)&&x(b)){a=W(a,b);e=!fb(a)}!e&&(d[c]=a)}}return d}e.md=function(a){return z(a)=="function"};e.Dc=function(a){return z(a)=="array"};e.xd=function(a){return z(a)=="string"};e.fc=function(a){return!isNaN(o(a))&&isFinite(a)};e.c=m;e.vg=x;function O(a){return g.createElement(a)}e.ob=function(){return O("DIV")};e.Lg=function(){return O("SPAN")};e.rd=function(){};function T(b,c,a){if(a==k)return b.getAttribute(c);b.setAttribute(c,a)}function R(a,b){return T(a,b)||T(a,"data-"+b)}e.A=T;e.i=R;function u(b,a){if(a==k)return b.className;b.className=a}e.Zc=u;function kb(b){var a={};m(b,function(b){a[b]=b});return a}function mb(b,a){return b.match(a||Ab)}function M(b,a){return kb(mb(b||"",a))}e.Rg=mb;function Y(b,c){var a="";m(c,function(c){a&&(a+=b);a+=c});return a}function E(a,c,b){u(a,Y(" ",y(W(M(u(a)),M(c)),M(b))))}e.ld=function(a){return a.parentNode};e.S=function(a){e.mb(a,"none")};e.z=function(a,b){e.mb(a,b?"none":"")};e.Wg=function(b,a){b.removeAttribute(a)};e.Fg=function(){return p()&&l<10};e.Gg=function(d,c){if(c)d.style.clip="rect("+b.round(c.g)+"px "+b.round(c.p)+"px "+b.round(c.q)+"px "+b.round(c.f)+"px)";else{var g=d.style.cssText,f=[new RegExp(/[\s]*clip: rect\(.*?\)[;]?/i),new RegExp(/[\s]*cliptop: .*?[;]?/i),new RegExp(/[\s]*clipright: .*?[;]?/i),new RegExp(/[\s]*clipbottom: .*?[;]?/i),new RegExp(/[\s]*clipleft: .*?[;]?/i)],e=F(g,f,"");a.dc(d,e)}};e.Y=function(){return+new Date};e.H=function(b,a){b.appendChild(a)};e.cc=function(b,a,c){(c||a.parentNode).insertBefore(b,a)};e.Ab=function(a,b){(b||a.parentNode).removeChild(a)};e.Cg=function(a,b){m(a,function(a){e.Ab(a,b)})};e.xc=function(a){e.Cg(e.Q(a,c),a)};e.Eg=function(a,b){var c=e.ld(a);b&1&&e.F(a,(e.j(c)-e.j(a))/2);b&2&&e.E(a,(e.l(c)-e.l(a))/2)};e.bc=function(b,a){return parseInt(b,a||10)};var o=parseFloat;e.kc=o;e.uf=function(b,a){var c=g.body;while(a&&b!==a&&c!==a)try{a=a.parentNode}catch(d){return i}return b===a};function U(d,c,b){var a=d.cloneNode(!c);!b&&e.Wg(a,"id");return a}e.V=U;e.Bb=function(f,g){var a=new Image;function b(f,c){e.T(a,"load",b);e.T(a,"abort",d);e.T(a,"error",d);g&&g(a,c)}function d(a){b(a,c)}if(cb()&&l<11.6||!f)b(!f);else{e.e(a,"load",b);e.e(a,"abort",d);e.e(a,"error",d);a.src=f}};e.ug=function(d,a,f){var c=d.length+1;function b(b){c--;if(a&&b&&b.src==a.src)a=b;!c&&f&&f(a)}m(d,function(a){e.Bb(a.src,b)});b()};e.td=function(b,g,i,h){if(h)b=U(b);var c=P(b,g);if(!c.length)c=a.Gf(b,g);for(var f=c.length-1;f>-1;f--){var d=c[f],e=U(i);u(e,u(d));a.dc(e,d.style.cssText);a.cc(e,d);a.Ab(d)}return b};function Hb(b){var l=this,p="",r=["av","pv","ds","dn"],f=[],q,j=0,h=0,d=0;function i(){E(b,q,f[d||j||h&2||h]);a.W(b,"pointer-events",d?"none":"")}function c(){j=0;i();e.T(g,"mouseup",c);e.T(g,"touchend",c);e.T(g,"touchcancel",c)}function o(a){if(d)e.Qb(a);else{j=4;i();e.e(g,"mouseup",c);e.e(g,"touchend",c);e.e(g,"touchcancel",c)}}l.Cd=function(a){if(a===k)return h;h=a&2||a&1;i()};l.yd=function(a){if(a===k)return!d;d=a?0:3;i()};l.K=b=e.pb(b);var n=a.Rg(u(b));if(n)p=n.shift();m(r,function(a){f.push(p+a)});q=Y(" ",f);f.unshift("");e.e(b,"mousedown",o);e.e(b,"touchstart",o)}e.Pb=function(a){return new Hb(a)};e.W=A;e.ub=h("overflow");e.E=h("top",2);e.F=h("left",2);e.j=h("width",2);e.l=h("height",2);e.Yf=h("marginLeft",2);e.Xf=h("marginTop",2);e.D=h("position");e.mb=h("display");e.G=h("zIndex",1);e.Eb=function(b,a,c){if(a!=k)Fb(b,a,c);else return Db(b)};e.dc=function(a,b){if(b!=k)a.style.cssText=b;else return a.style.cssText};var Q={o:e.Eb,g:e.E,f:e.F,O:e.j,P:e.l,Jb:e.D,R:e.G},K;function G(){if(!K)K=y({a:e.Gg,B:e.Jf},Q);return K}function eb(){var a={};a.B=a.B;a.B=a.s;a.B=a.Gb;a.B=a.Cb;a.B=a.Lb;a.B=a.Nb;a.B=a.Mb;a.B=a.Kb;a.B=a.Ob;return G()}e.Td=G;e.Hd=eb;e.Ud=function(c,b){G();var a={};m(b,function(d,b){if(Q[b])a[b]=Q[b](c)});return a};e.hb=function(c,b){var a=G();m(b,function(d,b){a[b]&&a[b](c,d)})};e.je=function(b,a){eb();e.hb(b,a)};var D=new function(){var a=this;function b(d,g){for(var j=d[0].length,i=d.length,h=g[0].length,f=[],c=0;c<i;c++)for(var k=f[c]=[],b=0;b<h;b++){for(var e=0,a=0;a<j;a++)e+=d[c][a]*g[a][b];k[b]=e}return f}a.sb=function(b,c){return a.Bd(b,c,0)};a.tb=function(b,c){return a.Bd(b,0,c)};a.Bd=function(a,c,d){return b(a,[[c,0],[0,d]])};a.Yb=function(d,c){var a=b(d,[[c.x],[c.y]]);return w(a[0][0],a[1][0])}};e.Tf=function(d,a,c){var e=b.cos(d),f=b.sin(d);return[[e*a,-f*c],[f*a,e*c]]};e.Vf=function(d,c,a){var e=D.Yb(d,w(-c/2,-a/2)),f=D.Yb(d,w(c/2,-a/2)),g=D.Yb(d,w(c/2,a/2)),h=D.Yb(d,w(-c/2,a/2));return w(b.min(e.x,f.x,g.x,h.x)+c/2,b.min(e.y,f.y,g.y,h.y)+a/2)};var zb={k:1,sb:1,tb:1,s:0,Gb:0,Cb:0,Mb:0,Kb:0,Ob:0,Lb:0,Nb:0};e.pc=function(b){var c=b||{};if(b)if(a.md(b))c={lb:c};else if(a.md(b.a))c.a={lb:b.a};return c};function jb(c,a){var b={};m(c,function(c,d){var f=c;if(a[d]!=k)if(e.fc(c))f=c+a[d];else f=jb(c,a[d]);b[d]=f});return b}e.Vd=jb;e.sd=function(h,i,w,n,y,z,o){var c=i;if(h){c={};for(var g in i){var A=z[g]||1,v=y[g]||[0,1],e=(w-v[0])/v[1];e=b.min(b.max(e,0),1);e=e*A;var u=b.floor(e);if(e!=u)e-=u;var l=n.lb||d.oc,m,B=h[g],q=i[g];if(a.fc(q)){l=n[g]||l;var x=l(e);m=B+q*x}else{m=a.n({Hb:{}},h[g]);a.c(q.Hb||q,function(d,a){if(n.a)l=n.a[a]||n.a.lb||l;var c=l(e),b=d*c;m.Hb[a]=b;m[a]+=b})}c[g]=m}var t,f={db:o.db,ab:o.ab};a.c(zb,function(d,a){t=t||i[a];var b=c[a];if(b!=k){if(b!=d)f[a]=b;delete c[a]}else if(h[a]!=k&&h[a]!=d)f[a]=h[a]});if(i.k&&f.k){f.sb=f.k;f.tb=f.k}c.B=f}if(i.a&&o.fb){var p=c.a.Hb,s=(p.g||0)+(p.q||0),r=(p.f||0)+(p.p||0);c.f=(c.f||0)+r;c.g=(c.g||0)+s;c.a.f-=r;c.a.p-=r;c.a.g-=s;c.a.q-=s}if(c.a&&a.Fg()&&!c.a.g&&!c.a.f&&c.a.p==o.db&&c.a.q==o.ab)c.a=j;return c}};function m(){var b=this,d=[];function i(a,b){d.push({tc:a,uc:b})}function h(b,c){a.c(d,function(a,e){a.tc==b&&a.uc===c&&d.splice(e,1)})}b.Ib=b.addEventListener=i;b.removeEventListener=h;b.m=function(b){var c=[].slice.call(arguments,1);a.c(d,function(a){a.tc==b&&a.uc.apply(f,c)})}}var l=f.$JssorAnimator$=function(y,C,k,O,L,K){y=y||0;var d=this,q,n,o,u,z=0,G,H,F,B,x=0,h=0,m=0,D,l,g,e,p,w=[],A;function N(a){g+=a;e+=a;l+=a;h+=a;m+=a;x+=a}function t(n){var f=n;if(p&&(f>=e||f<=g))f=((f-g)%p+p)%p+g;if(!D||u||h!=f){var i=b.min(f,e);i=b.max(i,g);if(!D||u||i!=m){if(K){var j=(i-l)/(C||1);if(k.Ac)j=1-j;var o=a.sd(L,K,j,G,F,H,k);a.c(o,function(b,a){A[a]&&A[a](O,b)})}d.Cc(m-l,i-l);m=i;a.c(w,function(b,c){var a=n<h?w[w.length-c-1]:b;a.v(m-x)});var r=h,q=m;h=f;D=c;d.Xb(r,q)}}}function E(a,c,d){c&&a.N(e);if(!d){g=b.min(g,a.Jc()+x);e=b.max(e,a.eb()+x)}w.push(a)}var r=f.requestAnimationFrame||f.webkitRequestAnimationFrame||f.mozRequestAnimationFrame||f.msRequestAnimationFrame;if(a.ag()&&a.Dd()<7)r=j;r=r||function(b){a.L(b,k.ib)};function I(){if(q){var d=a.Y(),e=b.min(d-z,k.cd),c=h+e*o;z=d;if(c*o>=n*o)c=n;t(c);if(!u&&c*o>=n*o)J(B);else r(I)}}function s(f,i,j){if(!q){q=c;u=j;B=i;f=b.max(f,g);f=b.min(f,e);n=f;o=n<h?-1:1;d.nd();z=a.Y();r(I)}}function J(a){if(q){u=q=B=i;d.Rc();a&&a()}}d.qd=function(a,b,c){s(a?h+a:e,b,c)};d.pd=s;d.qb=J;d.Pe=function(a){s(a)};d.gb=function(){return h};d.kd=function(){return n};d.Fb=function(){return m};d.v=t;d.fb=function(a){t(h+a)};d.fd=function(){return q};d.We=function(a){p=a};d.N=N;d.I=function(a,b){E(a,0,b)};d.zc=function(a){E(a,1)};d.Ye=function(a){e+=a};d.Jc=function(){return g};d.eb=function(){return e};d.Xb=d.nd=d.Rc=d.Cc=a.rd;d.wc=a.Y();k=a.n({ib:16,cd:50},k);p=k.Xc;A=a.n({},a.Td(),k.vc);g=l=y;e=y+C;H=k.Wb||{};F=k.Db||{};G=a.pc(k.u)};var o=f.$JssorSlideshowFormations$=new function(){var h=this;function g(b,a,c){c.push(a);b[a]=b[a]||[];b[a].push(c)}h.ze=function(d){for(var e=[],a,c=0;c<d.cb;c++)for(a=0;a<d.r;a++)g(e,b.ceil(1e5*b.random())%13,[c,a]);return e}},s=f.$JssorSlideshowRunner$=function(n,s,q,t,y){var f=this,u,g,e,x=0,w=t.te,r,h=8;function k(g,f){var e={ib:f,kb:1,L:0,r:1,cb:1,o:0,k:0,a:0,fb:i,Ub:i,Ac:i,ue:o.ze,Ed:{ve:0,we:0},u:d.oc,Wb:{},Tb:[],Db:{}};a.n(e,g);e.u=a.pc(e.u);e.xe=b.ceil(e.kb/e.ib);e.ye=function(b,a){b/=e.r;a/=e.cb;var f=b+"x"+a;if(!e.Tb[f]){e.Tb[f]={O:b,P:a};for(var c=0;c<e.r;c++)for(var d=0;d<e.cb;d++)e.Tb[f][d+","+c]={g:d*a,p:c*b+b,q:d*a+a,f:c*b}}return e.Tb[f]};if(e.Ic){e.Ic=k(e.Ic,f);e.Ub=c}return e}function p(A,h,d,v,n,l){var y=this,t,u={},j={},m=[],f,e,r,p=d.Ed.ve||0,q=d.Ed.we||0,g=d.ye(n,l),o=B(d),C=o.length-1,s=d.kb+d.L*C,w=v+s,k=d.Ub,x;w+=50;function B(a){var b=a.ue(a);return a.Ac?b.reverse():b}y.Tc=w;y.Sb=function(c){c-=v;var e=c<s;if(e||x){x=e;if(!k)c=s-c;var f=b.ceil(c/d.ib);a.c(j,function(c,e){var d=b.max(f,c.Ae);d=b.min(d,c.length-1);if(c.Fd!=d){if(!c.Fd&&!k)a.z(m[e]);else d==c.Ke&&k&&a.S(m[e]);c.Fd=d;a.je(m[e],c[d])}})}};h=a.V(h);if(a.bb()){var D=!h["no-image"],z=a.Ff(h);a.c(z,function(b){(D||b["jssor-slider"])&&a.Eb(b,a.Eb(b),c)})}a.c(o,function(h,m){a.c(h,function(G){var K=G[0],J=G[1],v=K+","+J,o=i,s=i,x=i;if(p&&J%2){if(p&3)o=!o;if(p&12)s=!s;if(p&16)x=!x}if(q&&K%2){if(q&3)o=!o;if(q&12)s=!s;if(q&16)x=!x}d.g=d.g||d.a&4;d.q=d.q||d.a&8;d.f=d.f||d.a&1;d.p=d.p||d.a&2;var E=s?d.q:d.g,B=s?d.g:d.q,D=o?d.p:d.f,C=o?d.f:d.p;d.a=E||B||D||C;r={};e={g:0,f:0,o:1,O:n,P:l};f=a.n({},e);t=a.n({},g[v]);if(d.o)e.o=2-d.o;if(d.R){e.R=d.R;f.R=0}var I=d.r*d.cb>1||d.a;if(d.k||d.s){var H=c;if(a.bb())if(d.r*d.cb>1)H=i;else I=i;if(H){e.k=d.k?d.k-1:1;f.k=1;if(a.bb()||a.Hc())e.k=b.min(e.k,2);var N=d.s||0;e.s=N*360*(x?-1:1);f.s=0}}if(I){var h=t.Hb={};if(d.a){var w=d.Be||1;if(E&&B){h.g=g.P/2*w;h.q=-h.g}else if(E)h.q=-g.P*w;else if(B)h.g=g.P*w;if(D&&C){h.f=g.O/2*w;h.p=-h.f}else if(D)h.p=-g.O*w;else if(C)h.f=g.O*w}r.a=t;f.a=g[v]}var L=o?1:-1,M=s?1:-1;if(d.x)e.f+=n*d.x*L;if(d.y)e.g+=l*d.y*M;a.c(e,function(b,c){if(a.fc(b))if(b!=f[c])r[c]=b-f[c]});u[v]=k?f:e;var F=d.xe,A=b.round(m*d.L/d.ib);j[v]=new Array(A);j[v].Ae=A;j[v].Ke=A+F-1;for(var z=0;z<=F;z++){var y=a.sd(f,r,z/F,d.u,d.Db,d.Wb,{fb:d.fb,db:n,ab:l});y.R=y.R||1;j[v].push(y)}})});o.reverse();a.c(o,function(b){a.c(b,function(c){var f=c[0],e=c[1],d=f+","+e,b=h;if(e||f)b=a.V(h);a.hb(b,u[d]);a.ub(b,"hidden");a.D(b,"absolute");A.Ce(b);m[d]=b;a.z(b,!k)})})}function v(){var a=this,b=0;l.call(a,0,u);a.Xb=function(c,a){if(a-b>h){b=a;e&&e.Sb(a);g&&g.Sb(a)}};a.Z=r}f.De=function(){var a=0,c=t.X,d=c.length;if(w)a=x++%d;else a=b.floor(b.random()*d);c[a]&&(c[a].rb=a);return c[a]};f.Ee=function(w,x,j,l,a){r=a;a=k(a,h);var i=l.Qd,d=j.Qd;i["no-image"]=!l.Rb;d["no-image"]=!j.Rb;var m=i,o=d,v=a,c=a.Ic||k({},h);if(!a.Ub){m=d;o=i}var t=c.N||0;g=new p(n,o,c,b.max(t-c.ib,0),s,q);e=new p(n,m,v,b.max(c.ib-t,0),s,q);g.Sb(0);e.Sb(0);u=b.max(g.Tc,e.Tc);f.rb=w};f.vb=function(){n.vb();g=j;e=j};f.Ge=function(){var a=j;if(e)a=new v;return a};if(a.bb()||a.Hc()||y&&a.cg()<537)h=16;m.call(f);l.call(f,-1e7,1e7)},h=f.$JssorSlider$=function(p,cc){var o=this;function yc(){var a=this;l.call(a,-1e8,2e8);a.Ie=function(){var c=a.Fb(),d=b.floor(c),f=t(d),e=c-b.floor(c);return{rb:f,Je:d,Jb:e}};a.Xb=function(d,a){var e=b.floor(a);if(e!=a&&a>d)e++;Rb(e,c);o.m(h.Ef,t(a),t(d),a,d)}}function xc(){var b=this;l.call(b,0,0,{Xc:r});a.c(C,function(a){D&1&&a.We(r);b.zc(a);a.N(ib/Yb)})}function wc(){var a=this,b=Tb.K;l.call(a,-1,2,{u:d.Od,vc:{Jb:Xb},Xc:r},b,{Jb:1},{Jb:-2});a.ic=b}function jc(n,m){var a=this,d,f,g,k,b;l.call(a,-1e8,2e8,{cd:100});a.nd=function(){M=c;S=j;o.m(h.He,t(w.gb()),w.gb())};a.Rc=function(){M=i;k=i;var a=w.Ie();o.m(h.se,t(w.gb()),w.gb());!a.Jb&&Ac(a.Je,s)};a.Xb=function(i,h){var a;if(k)a=b;else{a=f;if(g){var c=h/g;a=e.re(c)*(f-d)+d}}w.v(a)};a.Vb=function(b,e,c,h){d=b;f=e;g=c;w.v(b);a.v(0);a.pd(c,h)};a.qe=function(d){k=c;b=d;a.qd(d,j,c)};a.Le=function(a){b=a};w=new yc;w.I(n);w.I(m)}function lc(){var c=this,b=Vb();a.G(b,0);a.W(b,"pointerEvents","none");c.K=b;c.Ce=function(c){a.H(b,c);a.z(b)};c.vb=function(){a.S(b);a.xc(b)}}function vc(n,f){var d=this,q,L,v,k,y=[],x,B,W,G,Q,F,g,w,p;l.call(d,-u,u+1,{});function E(b){q&&q.nb();T(n,b,0);F=c;q=new I.M(n,I,a.kc(a.i(n,"idle"))||ic);q.v(0)}function Z(){q.wc<I.wc&&E()}function M(p,r,n){if(!G){G=c;if(k&&n){var g=n.width,b=n.height,m=g,l=b;if(g&&b&&e.yb){if(e.yb&3&&(!(e.yb&4)||g>K||b>J)){var j=i,q=K/J*b/g;if(e.yb&1)j=q>1;else if(e.yb&2)j=q<1;m=j?g*J/b:K;l=j?J:b*K/g}a.j(k,m);a.l(k,l);a.E(k,(J-l)/2);a.F(k,(K-m)/2)}a.D(k,"absolute");o.m(h.Ne,f)}}a.S(r);p&&p(d)}function Y(b,c,e,g){if(g==S&&s==f&&N)if(!zc){var a=t(b);A.Ee(a,f,c,d,e);c.gf();U.N(a-U.Jc()-1);U.v(a);z.Vb(b,b,0)}}function cb(b){if(b==S&&s==f){if(!g){var a=j;if(A)if(A.rb==f)a=A.Ge();else A.vb();Z();g=new sc(n,f,a,q);g.hd(p)}!g.fd()&&g.sc()}}function R(h,c,i){if(h==f){if(h!=c)C[c]&&C[c].ef();else!i&&g&&g.df();p&&p.yd();var k=S=a.Y();d.Bb(a.J(j,cb,k))}else{var m=b.abs(f-h),l=u+e.Ze-1;(!Q||m<=l)&&d.Bb()}}function db(){if(s==f&&g){g.qb();p&&p.oe();p&&p.Ve();g.gd()}}function eb(){s==f&&g&&g.qb()}function ab(a){!P&&o.m(h.Ue,f,a)}function O(){p=w.pInstance;g&&g.hd(p)}d.Bb=function(d,b){b=b||v;if(y.length&&!G){a.z(b);if(!W){W=c;o.m(h.Te,f);a.c(y,function(b){if(!a.A(b,"src")){b.src=a.i(b,"src2");a.mb(b,b["display-origin"])}})}a.ug(y,k,a.J(j,M,d,b))}else M(d,b)};d.Se=function(){var h=f;if(e.od<0)h-=r;var c=h+e.od*qc;if(D&2)c=t(c);if(!(D&1))c=b.max(0,b.min(c,r-u));if(c!=f){if(A){var d=A.De(r);if(d){var i=S=a.Y(),g=C[t(c)];return g.Bb(a.J(j,Y,c,g,d,i),v)}}bb(c)}};d.Fc=function(){R(f,f,c)};d.ef=function(){p&&p.oe();p&&p.Ve();d.dd();g&&g.Rd();g=j;E()};d.gf=function(){a.S(n)};d.dd=function(){a.z(n)};d.ce=function(){p&&p.yd()};function T(b,d,e){if(a.A(b,"jssor-slider"))return;if(!F){if(b.tagName=="IMG"){y.push(b);if(!a.A(b,"src")){Q=c;b["display-origin"]=a.mb(b);a.S(b)}}a.bb()&&a.G(b,(a.G(b)||0)+1)}var f=a.Q(b);a.c(f,function(f){var h=f.tagName,j=a.i(f,"u");if(j=="player"&&!w){w=f;if(w.pInstance)O();else a.e(w,"dataavailable",O)}if(j=="caption"){if(d){a.vd(f,a.i(f,"to"));a.Hf(f,a.i(f,"bf"));a.of(f,"preserve-3d")}else if(!a.Jd()){var g=a.V(f,i,c);a.cc(g,f,b);a.Ab(f,b);f=g;d=c}}else if(!F&&!e&&!k){if(h=="A"){if(a.i(f,"u")=="image")k=a.ig(f,"IMG");else k=a.C(f,"image",c);if(k){x=f;a.mb(x,"block");a.hb(x,V);B=a.V(x,c);a.D(x,"relative");a.Eb(B,0);a.W(B,"backgroundColor","#000")}}else if(h=="IMG"&&a.i(f,"u")=="image")k=f;if(k){k.border=0;a.hb(k,V)}}T(f,d,e+1)})}d.Cc=function(c,b){var a=u-b;Xb(L,a)};d.rb=f;m.call(d);a.pf(n,a.i(n,"p"));a.qf(n,a.i(n,"po"));var H=a.C(n,"thumb",c);if(H){d.be=a.V(H);a.S(H)}a.z(n);v=a.V(fb);a.G(v,1e3);a.e(n,"click",ab);E(c);d.Rb=k;d.Vc=B;d.Qd=n;d.ic=L=n;a.H(L,v);o.Ib(203,R);o.Ib(28,eb);o.Ib(24,db)}function sc(y,f,p,q){var b=this,m=0,u=0,g,j,e,d,k,t,r,n=C[f];l.call(b,0,0);function v(){a.xc(L);Zb&&k&&n.Vc&&a.H(L,n.Vc);a.z(L,!k&&n.Rb)}function w(){b.sc()}function x(a){r=a;b.qb();b.sc()}b.sc=function(){var a=b.Fb();if(!B&&!M&&!r&&s==f){if(!a){if(g&&!k){k=c;b.gd(c);o.m(h.Xd,f,m,u,g,d)}v()}var i,p=h.Wc;if(a!=d)if(a==e)i=d;else if(a==j)i=e;else if(!a)i=j;else i=b.kd();o.m(p,f,a,m,j,e,d);var l=N&&(!E||F);if(a==d)(e!=d&&!(E&12)||l)&&n.Se();else(l||a!=e)&&b.pd(i,w)}};b.df=function(){e==d&&e==b.Fb()&&b.v(j)};b.Rd=function(){A&&A.rb==f&&A.vb();var a=b.Fb();a<d&&o.m(h.Wc,f,-a-1,m,j,e,d)};b.gd=function(b){p&&a.ub(jb,b&&p.Z.Yg?"":"hidden")};b.Cc=function(b,a){if(k&&a>=g){k=i;v();n.dd();A.vb();o.m(h.Yd,f,m,u,g,d)}o.m(h.Ig,f,a,m,j,e,d)};b.hd=function(a){if(a&&!t){t=a;a.Ib($JssorPlayer$.ff,x)}};p&&b.zc(p);g=b.eb();b.zc(q);j=g+q.Zb;e=g+q.ac;d=b.eb()}function Xb(g,f){var e=x>0?x:eb,c=zb*f*(e&1),d=Ab*f*(e>>1&1);c=b.round(c);d=b.round(d);a.F(g,c);a.E(g,d)}function Nb(){pb=M;Ib=z.kd();G=w.gb()}function ec(){Nb();if(B||!F&&E&12){z.qb();o.m(h.Hg)}}function bc(f){if(!B&&(F||!(E&12))&&!z.fd()){var c=w.gb(),a=b.ceil(G);if(f&&b.abs(H)>=e.Md){a=b.ceil(c);a+=hb}if(!(D&1))a=b.min(r-u,b.max(a,0));var d=b.abs(a-c);d=1-b.pow(1-d,5);if(!P&&pb)z.Pe(Ib);else if(c==a){sb.ce();sb.Fc()}else z.Vb(c,a,d*Sb)}}function Hb(b){!a.i(a.nc(b),"nodrag")&&a.Qb(b)}function oc(a){Wb(a,1)}function Wb(b,d){b=a.wd(b);var k=a.nc(b);if(!O&&!a.i(k,"nodrag")&&pc()&&(!d||b.touches.length==1)){B=c;yb=i;S=j;a.e(g,d?"touchmove":"mousemove",Bb);a.Y();P=0;ec();if(!pb)x=0;if(d){var f=b.touches[0];ub=f.clientX;vb=f.clientY}else{var e=a.Ld(b);ub=e.x;vb=e.y}H=0;gb=0;hb=0;o.m(h.tg,t(G),G,b)}}function Bb(e){if(B){e=a.wd(e);var f;if(e.type!="mousemove"){var l=e.touches[0];f={x:l.clientX,y:l.clientY}}else f=a.Ld(e);if(f){var j=f.x-ub,k=f.y-vb;if(b.floor(G)!=G)x=x||eb&O;if((j||k)&&!x){if(O==3)if(b.abs(k)>b.abs(j))x=2;else x=1;else x=O;if(mb&&x==1&&b.abs(k)-b.abs(j)>3)yb=c}if(x){var d=k,i=Ab;if(x==1){d=j;i=zb}if(!(D&1)){if(d>0){var g=i*s,h=d-g;if(h>0)d=g+b.sqrt(h)*5}if(d<0){var g=i*(r-u-s),h=-d-g;if(h>0)d=-g-b.sqrt(h)*5}}if(H-gb<-2)hb=0;else if(H-gb>2)hb=-1;gb=H;H=d;rb=G-H/i/(Y||1);if(H&&x&&!yb){a.Qb(e);if(!M)z.qe(rb);else z.Le(rb)}}}}}function ab(){nc();if(B){B=i;a.Y();a.T(g,"mousemove",Bb);a.T(g,"touchmove",Bb);P=H;z.qb();var b=w.gb();o.m(h.rg,t(b),b,t(G),G);E&12&&Nb();bc(c)}}function fc(c){if(P){a.yf(c);var b=a.nc(c);while(b&&v!==b){b.tagName=="A"&&a.Qb(c);try{b=b.parentNode}catch(d){break}}}}function hc(a){C[s];s=t(a);sb=C[s];Rb(a);return s}function Ac(a,b){x=0;hc(a);o.m(h.Qg,t(a),b)}function Rb(b,c){wb=b;a.c(T,function(a){a.Bc(t(b),b,c)})}function pc(){var b=h.jd||0,a=X;if(mb)a&1&&(a&=1);h.jd|=a;return O=a&~b}function nc(){if(O){h.jd&=~X;O=0}}function Vb(){var b=a.ob();a.hb(b,V);a.D(b,"absolute");return b}function t(a){return(a%r+r)%r}function gc(a,c){if(c)if(!D){a=b.min(b.max(a+wb,0),r-u);c=i}else if(D&2){a=t(a+wb);c=i}bb(a,e.Ec,c)}function xb(){a.c(T,function(a){a.Gc(a.ec.eh<=F)})}function Cc(){if(!F){F=1;xb();if(!B){E&12&&bc();E&3&&C[s].Fc()}}}function Bc(){if(F){F=0;xb();B||!(E&12)||ec()}}function Dc(){V={O:K,P:J,g:0,f:0};a.c(Q,function(b){a.hb(b,V);a.D(b,"absolute");a.ub(b,"hidden");a.S(b)});a.hb(fb,V)}function ob(b,a){bb(b,a,c)}function bb(g,f,l){if(Pb&&(!B&&(F||!(E&12))||e.Uc)){M=c;B=i;z.qb();if(f==k)f=Sb;var d=Cb.Fb(),a=g;if(l){a=d+g;if(g>0)a=b.ceil(a);else a=b.floor(a)}if(D&2)a=t(a);if(!(D&1))a=b.max(0,b.min(a,r-u));var j=(a-d)%r;a=d+j;var h=d==a?0:f*b.abs(j);h=b.min(h,f*u*1.5);z.Vb(d,a,h||1)}}o.Jg=bb;o.qd=function(){if(!N){N=c;C[s]&&C[s].Fc()}};o.dg=function(){return P};function W(){return a.j(y||p)}function lb(){return a.l(y||p)}o.db=W;o.ab=lb;function Eb(c,d){if(c==k)return a.j(p);if(!y){var b=a.ob(g);a.Zc(b,a.Zc(p));a.dc(b,a.dc(p));a.mb(b,"block");a.D(b,"relative");a.E(b,0);a.F(b,0);a.ub(b,"visible");y=a.ob(g);a.D(y,"absolute");a.E(y,0);a.F(y,0);a.j(y,a.j(p));a.l(y,a.l(p));a.vd(y,"0 0");a.H(y,b);var h=a.Q(p);a.H(p,y);a.W(p,"backgroundImage","");a.c(h,function(c){a.H(a.i(c,"noscale")?p:b,c);a.i(c,"autocenter")&&Jb.push(c)})}Y=c/(d?a.l:a.j)(y);a.rf(y,Y);var f=d?Y*W():c,e=d?c:Y*lb();a.j(p,f);a.l(p,e);a.c(Jb,function(b){var c=a.bc(a.i(b,"autocenter"));a.Eg(b,c)})}o.bg=Eb;o.Id=function(a){var d=b.ceil(t(ib/Yb)),c=t(a-s+d);if(c>u){if(a-s>r/2)a-=r;else if(a-s<=-r/2)a+=r}else a=s+c-d;return a};m.call(o);o.K=p=a.pb(p);var e=a.n({yb:0,Ze:1,Lc:1,Kc:0,Mc:i,hc:1,Uc:c,od:1,Yc:3e3,ad:1,Ec:500,re:d.Nd,Md:20,bd:0,r:1,Oc:0,Of:1,Qc:1,id:1},cc);if(e.Nf!=k)e.Yc=e.Nf;if(e.Pc!=k)e.r=e.Pc;if(e.Mf!=k)e.Oc=e.Mf;var eb=e.Qc&3,qc=(e.Qc&4)/-4||1,kb=e.Bf,I=a.n({M:q,Lf:1,mf:1},e.Zg);I.X=I.X||I.ch;var Fb=e.Qf,Z=e.Rf,db=e.Sf,R=!e.Of,y,v=a.C(p,"slides",R),fb=a.C(p,"loading",R)||a.ob(g),Lb=a.C(p,"navigator",R),dc=a.C(p,"arrowleft",R),ac=a.C(p,"arrowright",R),Kb=a.C(p,"thumbnavigator",R),mc=a.j(v),kc=a.l(v),V,Q=[],rc=a.Q(v);a.c(rc,function(b){if(b.tagName=="DIV"&&!a.i(b,"u"))Q.push(b);else a.bb()&&a.G(b,(a.G(b)||0)+1)});var s=-1,wb,sb,r=Q.length,K=e.fg||mc,J=e.Wf||kc,Ub=e.bd,zb=K+Ub,Ab=J+Ub,Yb=eb&1?zb:Ab,u=b.min(e.r,r),jb,x,O,yb,T=[],Ob,Qb,Mb,Zb,zc,N,E=e.ad,ic=e.Yc,Sb=e.Ec,qb,tb,ib,Pb=u<r,D=Pb?e.hc:0,X,P,F=1,M,B,S,ub=0,vb=0,H,gb,hb,Cb,w,U,z,Tb=new lc,Y,Jb=[];N=e.Mc;o.ec=cc;Dc();a.A(p,"jssor-slider",c);a.G(v,a.G(v)||0);a.D(v,"absolute");jb=a.V(v,c);a.cc(jb,v);if(kb){Zb=kb.dh;qb=kb.M;tb=u==1&&r>1&&qb&&(!a.Jd()||a.Dd()>=8)}ib=tb||u>=r||!(D&1)?0:e.Oc;X=(u>1||ib?eb:-1)&e.id;var Gb=v,C=[],A,L,Db=a.Zf(),mb=Db.Pf,G,pb,Ib,rb;Db.Pd&&a.W(Gb,Db.Pd,([j,"pan-y","pan-x","none"])[X]||"");U=new wc;if(tb)A=new qb(Tb,K,J,kb,mb);a.H(jb,U.ic);a.ub(v,"hidden");L=Vb();a.W(L,"backgroundColor","#000");a.Eb(L,0);a.cc(L,Gb.firstChild,Gb);for(var cb=0;cb<Q.length;cb++){var tc=Q[cb],uc=new vc(tc,cb);C.push(uc)}a.S(fb);Cb=new xc;z=new jc(Cb,U);if(X){a.e(v,"mousedown",Wb);a.e(v,"touchstart",oc);a.e(v,"dragstart",Hb);a.e(v,"selectstart",Hb);a.e(g,"mouseup",ab);a.e(g,"touchend",ab);a.e(g,"touchcancel",ab);a.e(f,"blur",ab)}E&=mb?10:5;if(Lb&&Fb){Ob=new Fb.M(Lb,Fb,W(),lb());T.push(Ob)}if(Z&&dc&&ac){Z.hc=D;Z.r=u;Qb=new Z.M(dc,ac,Z,W(),lb());T.push(Qb)}if(Kb&&db){db.Kc=e.Kc;Mb=new db.M(Kb,db);T.push(Mb)}a.c(T,function(a){a.mc(r,C,fb);a.Ib(n.jc,gc)});a.W(p,"visibility","visible");Eb(W());a.e(v,"click",fc);a.e(p,"mouseout",a.gc(Cc,p));a.e(p,"mouseover",a.gc(Bc,p));xb();e.Lc&&a.e(g,"keydown",function(a){if(a.keyCode==37)ob(-e.Lc);else a.keyCode==39&&ob(e.Lc)});var nb=e.Kc;if(!(D&1))nb=b.max(0,b.min(nb,r-u));z.Vb(nb,nb,0)};h.Ue=21;h.tg=22;h.rg=23;h.He=24;h.se=25;h.Te=26;h.Ne=27;h.Hg=28;h.Ef=202;h.Qg=203;h.Xd=206;h.Yd=207;h.Ig=208;h.Wc=209;var n={jc:1},r=f.$JssorBulletNavigator$=function(e,C){var f=this;m.call(f);e=a.pb(e);var s,A,z,r,l=0,d,o,k,w,x,h,g,q,p,B=[],y=[];function v(a){a!=-1&&y[a].Cd(a==l)}function t(a){f.m(n.jc,a*o)}f.K=e;f.Bc=function(a){if(a!=r){var d=l,c=b.floor(a/o);l=c;r=a;v(d);v(c)}};f.Gc=function(b){a.z(e,b)};var u;f.mc=function(D){if(!u){s=b.ceil(D/o);l=0;var n=q+w,r=p+x,m=b.ceil(s/k)-1;A=q+n*(!h?m:k-1);z=p+r*(h?m:k-1);a.j(e,A);a.l(e,z);for(var f=0;f<s;f++){var C=a.Lg();a.zf(C,f+1);var i=a.td(g,"numbertemplate",C,c);a.D(i,"absolute");var v=f%(m+1);a.F(i,!h?n*v:f%k*n);a.E(i,h?r*v:b.floor(f/(m+1))*r);a.H(e,i);B[f]=i;d.zb&1&&a.e(i,"click",a.J(j,t,f));d.zb&2&&a.e(i,"mouseover",a.gc(a.J(j,t,f),i));y[f]=a.Pb(i)}u=c}};f.ec=d=a.n({qc:10,rc:10,wb:1,zb:1},C);g=a.C(e,"prototype");q=a.j(g);p=a.l(g);a.Ab(g,e);o=d.ed||1;k=d.Ad||1;w=d.qc;x=d.rc;h=d.wb-1;d.Kd==i&&a.A(e,"noscale",c);d.U&&a.A(e,"autocenter",d.U)},t=f.$JssorArrowNavigator$=function(b,g,h){var d=this;m.call(d);var r,q,e,f,k;a.j(b);a.l(b);function l(a){d.m(n.jc,a,c)}function p(c){a.z(b,c||!h.hc&&e==0);a.z(g,c||!h.hc&&e>=q-h.r);r=c}d.Bc=function(b,a,c){if(c)e=a;else{e=b;p(r)}};d.Gc=p;var o;d.mc=function(d){q=d;e=0;if(!o){a.e(b,"click",a.J(j,l,-k));a.e(g,"click",a.J(j,l,k));a.Pb(b);a.Pb(g);o=c}};d.ec=f=a.n({ed:1},h);k=f.ed;if(f.Kd==i){a.A(b,"noscale",c);a.A(g,"noscale",c)}if(f.U){a.A(b,"autocenter",f.U);a.A(g,"autocenter",f.U)}},p=f.$JssorThumbnailNavigator$=function(g,C){var l=this,A,q,d,w=[],y,x,e,r,s,v,u,p,t,f,o;m.call(l);g=a.pb(g);function B(m,f){var g=this,b,k,i;function p(){k.Cd(q==f)}function h(d){if(d||!t.dg()){var a=e-f%e,b=t.Id((f+a)/e-1),c=b*e+e-a;l.m(n.jc,c)}}g.rb=f;g.ud=p;i=m.be||m.Rb||a.ob();g.ic=b=a.td(o,"thumbnailtemplate",i,c);k=a.Pb(b);d.zb&1&&a.e(b,"click",a.J(j,h,0));d.zb&2&&a.e(b,"mouseover",a.gc(a.J(j,h,1),b))}l.Bc=function(c,d,f){var a=q;q=c;a!=-1&&w[a].ud();w[c].ud();!f&&t.Jg(t.Id(b.floor(d/e)))};l.Gc=function(b){a.z(g,b)};var z;l.mc=function(D,C){if(!z){A=D;b.ceil(A/e);q=-1;p=b.min(p,C.length);var j=d.wb&1,m=v+(v+r)*(e-1)*(1-j),l=u+(u+s)*(e-1)*j,o=m+(m+r)*(p-1)*j,n=l+(l+s)*(p-1)*(1-j);a.D(f,"absolute");a.ub(f,"hidden");d.U&1&&a.F(f,(y-o)/2);d.U&2&&a.E(f,(x-n)/2);a.j(f,o);a.l(f,n);var k=[];a.c(C,function(l,g){var h=new B(l,g),d=h.ic,c=b.floor(g/e),i=g%e;a.F(d,(v+r)*i*(1-j));a.E(d,(u+s)*i*j);if(!k[c]){k[c]=a.ob();a.H(f,k[c])}a.H(k[c],d);w.push(h)});var E=a.n({Mc:i,Uc:i,fg:m,Wf:l,bd:r*j+s*(1-j),Md:12,Ec:200,ad:1,Qc:d.wb,id:d.bh||d.ah?0:d.wb},d);t=new h(g,E);z=c}};l.ec=d=a.n({qc:0,rc:0,r:1,wb:1,U:3,zb:1},C);if(d.Pc!=k)d.r=d.Pc;if(d.cb!=k)d.Ad=d.cb;y=a.j(g);x=a.l(g);f=a.C(g,"slides",c);o=a.C(f,"prototype");v=a.j(o);u=a.l(o);a.Ab(o,f);e=d.Ad||1;r=d.qc;s=d.rc;p=d.r;d.Kd==i&&a.A(g,"noscale",c)};function q(e,d,c){var b=this;l.call(b,0,c);b.nb=a.rd;b.Zb=0;b.ac=c}f.$JssorCaptionSlider$=function(h,f,i){var c=this;l.call(c,0,0);var e,d;function g(p,h,f){var c=this,g,n=f?h.Lf:h.mf,e=h.X,o={Z:"t",L:"d",kb:"du",x:"x",y:"y",s:"r",k:"z",o:"f",xb:"b"},d={lb:function(b,a){if(!isNaN(a.jb))b=a.jb;else b*=a.Fe;return b},o:function(b,a){return this.lb(b-1,a)}};d.k=d.o;l.call(c,0,0);function j(r,m){var l=[],i,k=[],c=[];function h(c,d){var b={};a.c(o,function(g,h){var e=a.i(c,g+(d||""));if(e){var f={};if(g=="t")f.jb=e;else if(e.indexOf("%")+1)f.Fe=a.kc(e)/100;else f.jb=a.kc(e);b[h]=f}});return b}function p(){return e[b.floor(b.random()*e.length)]}function g(f){var h;if(f=="*")h=p();else if(f){var d=e[a.bc(f)]||e[f];if(a.Dc(d)){if(f!=i){i=f;c[f]=0;k[f]=d[b.floor(b.random()*d.length)]}else c[f]++;d=k[f];if(a.Dc(d)){d=d.length&&d[c[f]%d.length];if(a.Dc(d))d=d[b.floor(b.random()*d.length)]}}h=d;if(a.xd(h))h=g(h)}return h}var q=a.Q(r);a.c(q,function(b){var c=[];c.K=b;var e=a.i(b,"u")=="caption";a.c(f?[0,3]:[2],function(l,o){if(e){var k,f;if(l!=2||!a.i(b,"t3")){f=h(b,l);if(l==2&&!f.Z){f.L=f.L||{jb:0};f=a.n(h(b,0),f)}}if(f&&f.Z){k=g(f.Z.jb);if(k){var i=a.n({L:0},k);a.c(f,function(c,a){var b=(d[a]||d.lb).apply(d,[i[a],f[a]]);if(!isNaN(b))i[a]=b});if(!o)if(f.xb)i.xb=f.xb.jb||0;else if(n&2)i.xb=0}}c.push(i)}if(m%2&&!o)c.Q=j(b,m+1)});l.push(c)});return l}function m(w,c,z){var g={u:c.u,Wb:c.Wb,Db:c.Db,Ac:f&&!z},m=w,r=a.ld(w),k=a.j(m),j=a.l(m),y=a.j(r),x=a.l(r),h={},e={},i=c.Be||1;if(c.o)e.o=1-c.o;g.db=k;g.ab=j;if(c.k||c.s){e.k=(c.k||2)-2;if(a.bb()||a.Hc())e.k=b.min(e.k,1);h.k=1;var B=c.s||0;e.s=B*360;h.s=0}else if(c.a){var s={g:0,p:k,q:j,f:0},v=a.n({},s),d=v.Hb={},u=c.a&4,p=c.a&8,t=c.a&1,q=c.a&2;if(u&&p){d.g=j/2*i;d.q=-d.g}else if(u)d.q=-j*i;else if(p)d.g=j*i;if(t&&q){d.f=k/2*i;d.p=-d.f}else if(t)d.p=-k*i;else if(q)d.f=k*i;g.fb=c.fb;e.a=v;h.a=s}var n=0,o=0;if(c.x)n-=y*c.x;if(c.y)o-=x*c.y;if(n||o||g.fb){e.f=n;e.g=o}var A=c.kb;h=a.n(h,a.Ud(m,e));g.vc=a.Hd();return new l(c.L,A,g,m,h,e)}function i(b,d){a.c(d,function(d){var a,h=d.K,f=d[0],j=d[1];if(f){a=m(h,f);f.xb==k&&a.N(b);b=a.eb()}b=i(b,d.Q);if(j){var e=m(h,j,1);e.N(b);c.I(e);g.I(e)}a&&c.I(a)});return b}c.nb=function(){c.v(c.eb()*(f||0));g.v(0)};g=new l(0,0);i(0,n?j(p,1):[])}c.nb=function(){d.nb();e.nb()};e=new g(h,f,1);c.Zb=e.eb();c.ac=c.Zb+i;d=new g(h,f);d.N(c.ac);c.I(d);c.I(e)};f.$JssorCaptionSlideo$=function(n,g,m){var b=this,o,h={},i=g.X,d=new l(0,0);l.call(b,0,0);function j(d,c){var b={};a.c(d,function(d,f){var e=h[f];if(e){if(a.vg(d))d=j(d,c||f=="e");else if(c)if(a.fc(d))d=o[d];b[e]=d}});return b}function k(e,c){var b=[],d=a.Q(e);a.c(d,function(d){var h=a.i(d,"u")=="caption";if(h){var e=a.i(d,"t"),g=i[a.bc(e)]||i[e],f={K:d,Z:g};b.push(f)}if(c<5)b=b.concat(k(d,c+1))});return b}function r(c,e,b){a.c(e,function(f){var e=j(f),h={u:a.pc(e.u),vc:a.Hd(),db:b.O,ab:b.P},g=new l(f.b,f.d,h,c,b,e);d.I(g);b=a.Vd(b,e)});return b}function q(b){a.c(b,function(c){var b=c.K,e=a.j(b),d=a.l(b),f={f:a.F(b),g:a.E(b),o:1,R:a.G(b)||0,s:0,Gb:0,Cb:0,sb:1,tb:1,Mb:0,Kb:0,Ob:0,Lb:0,Nb:0,O:e,P:d,a:{g:0,p:e,q:d,f:0}};r(b,c.Z,f)})}function t(g,f,h){var e=g.b-f;if(e){var a=new l(f,e);a.I(d,c);a.N(h);b.I(a)}b.Ye(g.d);return e}function s(f){var c=d.Jc(),e=0;a.c(f,function(d,f){d=a.n({d:m},d);t(d,c,e);c=d.b;e+=d.d;if(!f||d.t==2){b.Zb=c;b.ac=c+d.d}})}b.nb=function(){b.v(-1,c)};o=[e.Ug,e.Nc,e.jg,e.wg,e.xg,e.lc,e.yg,e.Ag,e.Bg,e.Dg,e.zg,e.sg,e.qg,e.pg,e.og,e.ng,e.mg,e.lg,e.kg,e.Xg,e.Vg,e.Tg,e.Sg,e.Ng,e.Mg,e.gg,e.Uf,e.Df,e.Cf,e.hg,e.xf,e.wf,e.vf,e.tf,e.If,e.Kf,e.eg];var u={g:"y",f:"x",q:"m",p:"t",s:"r",Gb:"rX",Cb:"rY",sb:"sX",tb:"sY",Mb:"tX",Kb:"tY",Ob:"tZ",Lb:"kX",Nb:"kY",o:"o",u:"e",R:"i",a:"c"};a.c(u,function(b,a){h[b]=a});q(k(n,1));d.v(-1);var p=g.fh||[],f=[].concat(p[a.bc(a.i(n,"b"))]||[]);f.push({b:d.eb(),d:f.length?0:m});s(f);b.v(-1)};jssor_1_slider_init=function(){var i=[{kb:1200,x:-.3,Db:{f:[.3,.7]},u:{f:e.lc,o:e.Nc},o:2},{kb:1200,x:.3,Ub:c,u:{f:e.lc,o:e.Nc},o:2}],j={Mc:c,Bf:{M:s,X:i,te:1},Rf:{M:t},Qf:{M:r},Sf:{M:p,r:1,Oc:0}},g=new h("jssor_1",j);function d(){var a=g.K.parentNode.clientWidth;if(a){a=b.min(a,600);g.bg(a)}else f.setTimeout(d,30)}d();a.e(f,"load",d);a.e(f,"resize",a.sf(f,d));a.e(f,"orientationchange",d)}}(window,document,Math,null,true,false)\r
+\r
+</script>\r
+\r
+<style>\r
+\r
+.jssorb01{position:absolute}.jssorb01 div,.jssorb01 div:hover,.jssorb01 .av{position:absolute;width:12px;height:12px;filter:alpha(opacity=70);opacity:.7;overflow:hidden;cursor:pointer;border:#000 1px solid}.jssorb01 div{background-color:gray}.jssorb01 div:hover,.jssorb01 .av:hover{background-color:#d3d3d3}.jssorb01 .av{background-color:#fff}.jssorb01 .dn,.jssorb01 .dn:hover{background-color:#555}.jssora05l,.jssora05r{display:block;position:absolute;width:40px;height:40px;cursor:pointer;background:url('img/a17.png') no-repeat;overflow:hidden}.jssora05l{background-position:-10px -40px}.jssora05r{background-position:-70px -40px}.jssora05l:hover{background-position:-130px -40px}.jssora05r:hover{background-position:-190px -40px}.jssora05l.jssora05ldn{background-position:-250px -40px}.jssora05r.jssora05rdn{background-position:-310px -40px}.jssort09-600-45 .p{position:absolute;top:0;left:0;width:600px;height:45px}.jssort09-600-45 .t{font-family:verdana;font-weight:normal;position:absolute;width:100%;height:100%;top:0;left:0;color:#fff;line-height:45px;font-size:20px;padding-left:10px}\r
+\r
+</style>\r
+\r
+\r
+<div id="jssor_1" style="position: relative; margin: 0 auto; top: 0px; left: 0px; width: 480px; height: 80px; overflow: hidden; visibility: hidden;">\r
+<!-- Loading Screen -->\r
+<div data-u="loading" style="position: absolute; top: 0px; left: 0px;">\r
+<div style="filter: alpha(opacity=70); opacity: 0.7; position: absolute; display: block; top: 0px; left: 0px; width: 100%; height: 100%;"></div>\r
+<div style="position:absolute;display:block;background:url('img/loading.gif') no-repeat center center;top:0px;left:0px;width:100%;height:100%;"></div>\r
+</div>\r
+<div data-u="slides" style="cursor: default; position: relative; top: 0px; left: 0px; width: 480px; height: 80px; overflow: hidden;">\r
+<div style="display: none;">\r
+<img data-u="image" src="img/gear_s2.jpg" />\r
+</div>\r
+<div style="display: none;">\r
+<img data-u="image" src="img/tizen_z3.jpg" />\r
+<div data-u="thumb">Did you drag by either horizontal or vertical?</div>\r
+</div>\r
+<div style="display: none;">\r
+<img data-u="image" src="img/soscon.jpg" />\r
+<div data-u="thumb">Do you notice navigator responses when drag?</div>\r
+</div>\r
+</div>\r
+<!-- Thumbnail Navigator -->\r
+<!--\r
+<div data-u="thumbnavigator" class="jssort09-600-45" style="position:absolute;bottom:0px;left:0px;width:600px;height:45px;">\r
+<div style="position: absolute; top: 0; left: 0; width: 100%; height:100%; background-color: #000; filter:alpha(opacity=40.0); opacity:0.4;"></div>\r
+-->\r
+<!-- Thumbnail Item Skin Begin -->\r
+<div data-u="slides" style="cursor: default;">\r
+<div data-u="prototype" class="p">\r
+<div data-u="thumbnailtemplate" class="t"></div>\r
+</div>\r
+</div>\r
+<!-- Thumbnail Item Skin End -->\r
+</div>\r
+<!-- Bullet Navigator -->\r
+<!--\r
+<div data-u="navigator" class="jssorb01" style="bottom:16px;right:10px;">\r
+<div data-u="prototype" style="width:12px;height:12px;"></div>\r
+-->\r
+</div>\r
+<!-- Arrow Navigator -->\r
+<!--\r
+<span data-u="arrowleft" class="jssora05l" style="top:123px;left:8px;width:40px;height:40px;" data-autocenter="2"></span>\r
+<span data-u="arrowright" class="jssora05r" style="top:123px;right:8px;width:40px;height:40px;" data-autocenter="2"></span>\r
+<a href="http://www.jssor.com" style="display:none">Jssor Slider</a>\r
+-->\r
+</div>\r
+<script>\r
+jssor_1_slider_init();\r
+</script>\r
+\r
+<!-- #endregion Jssor Slider End -->\r
+</body>\r
+</html>\r
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/img/a17.png b/wrt/wrt_support/extensions_repo/banner_slide/img/a17.png
new file mode 100755 (executable)
index 0000000..fea4e21
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/banner_slide/img/a17.png differ
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/img/gear_s2.jpg b/wrt/wrt_support/extensions_repo/banner_slide/img/gear_s2.jpg
new file mode 100755 (executable)
index 0000000..59b4659
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/banner_slide/img/gear_s2.jpg differ
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/img/loading.gif b/wrt/wrt_support/extensions_repo/banner_slide/img/loading.gif
new file mode 100755 (executable)
index 0000000..6ae5343
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/banner_slide/img/loading.gif differ
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/img/soscon.jpg b/wrt/wrt_support/extensions_repo/banner_slide/img/soscon.jpg
new file mode 100755 (executable)
index 0000000..4820b3d
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/banner_slide/img/soscon.jpg differ
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/img/tizen_z3.jpg b/wrt/wrt_support/extensions_repo/banner_slide/img/tizen_z3.jpg
new file mode 100755 (executable)
index 0000000..da3fc30
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/banner_slide/img/tizen_z3.jpg differ
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/js/jquery-1.9.1.min.js b/wrt/wrt_support/extensions_repo/banner_slide/js/jquery-1.9.1.min.js
new file mode 100755 (executable)
index 0000000..2c99f0b
--- /dev/null
@@ -0,0 +1,20 @@
+\r
+/*! jQuery v1.9.1 | (c) 2005, 2012 jQuery Foundation, Inc. | jquery.org/license\r
+//@ sourceMappingURL=jquery.min.map\r
+*/\r
+(function (e, t) {\r
+    var n, r, i = typeof t, o = e.document, a = e.location, s = e.jQuery, u = e.$, l = {}, c = [], p = "1.9.1", f = c.concat, d = c.push, h = c.slice, g = c.indexOf, m = l.toString, y = l.hasOwnProperty, v = p.trim, b = function (e, t) { return new b.fn.init(e, t, r) }, x = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, w = /\S+/g, T = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, N = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/, C = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, k = /^[\],:{}\s]*$/, E = /(?:^|:|,)(?:\s*\[)+/g, S = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, A = /"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g, j = /^-ms-/, D = /-([\da-z])/gi, L = function (e, t) { return t.toUpperCase() }, H = function (e) { (o.addEventListener || "load" === e.type || "complete" === o.readyState) && (q(), b.ready()) }, q = function () { o.addEventListener ? (o.removeEventListener("DOMContentLoaded", H, !1), e.removeEventListener("load", H, !1)) : (o.detachEvent("onreadystatechange", H), e.detachEvent("onload", H)) }; b.fn = b.prototype = { jquery: p, constructor: b, init: function (e, n, r) { var i, a; if (!e) return this; if ("string" == typeof e) { if (i = "<" === e.charAt(0) && ">" === e.charAt(e.length - 1) && e.length >= 3 ? [null, e, null] : N.exec(e), !i || !i[1] && n) return !n || n.jquery ? (n || r).find(e) : this.constructor(n).find(e); if (i[1]) { if (n = n instanceof b ? n[0] : n, b.merge(this, b.parseHTML(i[1], n && n.nodeType ? n.ownerDocument || n : o, !0)), C.test(i[1]) && b.isPlainObject(n)) for (i in n) b.isFunction(this[i]) ? this[i](n[i]) : this.attr(i, n[i]); return this } if (a = o.getElementById(i[2]), a && a.parentNode) { if (a.id !== i[2]) return r.find(e); this.length = 1, this[0] = a } return this.context = o, this.selector = e, this } return e.nodeType ? (this.context = this[0] = e, this.length = 1, this) : b.isFunction(e) ? r.ready(e) : (e.selector !== t && (this.selector = e.selector, this.context = e.context), b.makeArray(e, this)) }, selector: "", length: 0, size: function () { return this.length }, toArray: function () { return h.call(this) }, get: function (e) { return null == e ? this.toArray() : 0 > e ? this[this.length + e] : this[e] }, pushStack: function (e) { var t = b.merge(this.constructor(), e); return t.prevObject = this, t.context = this.context, t }, each: function (e, t) { return b.each(this, e, t) }, ready: function (e) { return b.ready.promise().done(e), this }, slice: function () { return this.pushStack(h.apply(this, arguments)) }, first: function () { return this.eq(0) }, last: function () { return this.eq(-1) }, eq: function (e) { var t = this.length, n = +e + (0 > e ? t : 0); return this.pushStack(n >= 0 && t > n ? [this[n]] : []) }, map: function (e) { return this.pushStack(b.map(this, function (t, n) { return e.call(t, n, t) })) }, end: function () { return this.prevObject || this.constructor(null) }, push: d, sort: [].sort, splice: [].splice }, b.fn.init.prototype = b.fn, b.extend = b.fn.extend = function () { var e, n, r, i, o, a, s = arguments[0] || {}, u = 1, l = arguments.length, c = !1; for ("boolean" == typeof s && (c = s, s = arguments[1] || {}, u = 2), "object" == typeof s || b.isFunction(s) || (s = {}), l === u && (s = this, --u); l > u; u++) if (null != (o = arguments[u])) for (i in o) e = s[i], r = o[i], s !== r && (c && r && (b.isPlainObject(r) || (n = b.isArray(r))) ? (n ? (n = !1, a = e && b.isArray(e) ? e : []) : a = e && b.isPlainObject(e) ? e : {}, s[i] = b.extend(c, a, r)) : r !== t && (s[i] = r)); return s }, b.extend({ noConflict: function (t) { return e.$ === b && (e.$ = u), t && e.jQuery === b && (e.jQuery = s), b }, isReady: !1, readyWait: 1, holdReady: function (e) { e ? b.readyWait++ : b.ready(!0) }, ready: function (e) { if (e === !0 ? ! --b.readyWait : !b.isReady) { if (!o.body) return setTimeout(b.ready); b.isReady = !0, e !== !0 && --b.readyWait > 0 || (n.resolveWith(o, [b]), b.fn.trigger && b(o).trigger("ready").off("ready")) } }, isFunction: function (e) { return "function" === b.type(e) }, isArray: Array.isArray || function (e) { return "array" === b.type(e) }, isWindow: function (e) { return null != e && e == e.window }, isNumeric: function (e) { return !isNaN(parseFloat(e)) && isFinite(e) }, type: function (e) { return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? l[m.call(e)] || "object" : typeof e }, isPlainObject: function (e) { if (!e || "object" !== b.type(e) || e.nodeType || b.isWindow(e)) return !1; try { if (e.constructor && !y.call(e, "constructor") && !y.call(e.constructor.prototype, "isPrototypeOf")) return !1 } catch (n) { return !1 } var r; for (r in e); return r === t || y.call(e, r) }, isEmptyObject: function (e) { var t; for (t in e) return !1; return !0 }, error: function (e) { throw Error(e) }, parseHTML: function (e, t, n) { if (!e || "string" != typeof e) return null; "boolean" == typeof t && (n = t, t = !1), t = t || o; var r = C.exec(e), i = !n && []; return r ? [t.createElement(r[1])] : (r = b.buildFragment([e], t, i), i && b(i).remove(), b.merge([], r.childNodes)) }, parseJSON: function (n) { return e.JSON && e.JSON.parse ? e.JSON.parse(n) : null === n ? n : "string" == typeof n && (n = b.trim(n), n && k.test(n.replace(S, "@").replace(A, "]").replace(E, ""))) ? Function("return " + n)() : (b.error("Invalid JSON: " + n), t) }, parseXML: function (n) { var r, i; if (!n || "string" != typeof n) return null; try { e.DOMParser ? (i = new DOMParser, r = i.parseFromString(n, "text/xml")) : (r = new ActiveXObject("Microsoft.XMLDOM"), r.async = "false", r.loadXML(n)) } catch (o) { r = t } return r && r.documentElement && !r.getElementsByTagName("parsererror").length || b.error("Invalid XML: " + n), r }, noop: function () { }, globalEval: function (t) { t && b.trim(t) && (e.execScript || function (t) { e.eval.call(e, t) })(t) }, camelCase: function (e) { return e.replace(j, "ms-").replace(D, L) }, nodeName: function (e, t) { return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase() }, each: function (e, t, n) { var r, i = 0, o = e.length, a = M(e); if (n) { if (a) { for (; o > i; i++) if (r = t.apply(e[i], n), r === !1) break } else for (i in e) if (r = t.apply(e[i], n), r === !1) break } else if (a) { for (; o > i; i++) if (r = t.call(e[i], i, e[i]), r === !1) break } else for (i in e) if (r = t.call(e[i], i, e[i]), r === !1) break; return e }, trim: v && !v.call("\ufeff\u00a0") ? function (e) { return null == e ? "" : v.call(e) } : function (e) { return null == e ? "" : (e + "").replace(T, "") }, makeArray: function (e, t) { var n = t || []; return null != e && (M(Object(e)) ? b.merge(n, "string" == typeof e ? [e] : e) : d.call(n, e)), n }, inArray: function (e, t, n) { var r; if (t) { if (g) return g.call(t, e, n); for (r = t.length, n = n ? 0 > n ? Math.max(0, r + n) : n : 0; r > n; n++) if (n in t && t[n] === e) return n } return -1 }, merge: function (e, n) { var r = n.length, i = e.length, o = 0; if ("number" == typeof r) for (; r > o; o++) e[i++] = n[o]; else while (n[o] !== t) e[i++] = n[o++]; return e.length = i, e }, grep: function (e, t, n) { var r, i = [], o = 0, a = e.length; for (n = !!n; a > o; o++) r = !!t(e[o], o), n !== r && i.push(e[o]); return i }, map: function (e, t, n) { var r, i = 0, o = e.length, a = M(e), s = []; if (a) for (; o > i; i++) r = t(e[i], i, n), null != r && (s[s.length] = r); else for (i in e) r = t(e[i], i, n), null != r && (s[s.length] = r); return f.apply([], s) }, guid: 1, proxy: function (e, n) { var r, i, o; return "string" == typeof n && (o = e[n], n = e, e = o), b.isFunction(e) ? (r = h.call(arguments, 2), i = function () { return e.apply(n || this, r.concat(h.call(arguments))) }, i.guid = e.guid = e.guid || b.guid++, i) : t }, access: function (e, n, r, i, o, a, s) { var u = 0, l = e.length, c = null == r; if ("object" === b.type(r)) { o = !0; for (u in r) b.access(e, n, u, r[u], !0, a, s) } else if (i !== t && (o = !0, b.isFunction(i) || (s = !0), c && (s ? (n.call(e, i), n = null) : (c = n, n = function (e, t, n) { return c.call(b(e), n) })), n)) for (; l > u; u++) n(e[u], r, s ? i : i.call(e[u], u, n(e[u], r))); return o ? e : c ? n.call(e) : l ? n(e[0], r) : a }, now: function () { return (new Date).getTime() } }), b.ready.promise = function (t) { if (!n) if (n = b.Deferred(), "complete" === o.readyState) setTimeout(b.ready); else if (o.addEventListener) o.addEventListener("DOMContentLoaded", H, !1), e.addEventListener("load", H, !1); else { o.attachEvent("onreadystatechange", H), e.attachEvent("onload", H); var r = !1; try { r = null == e.frameElement && o.documentElement } catch (i) { } r && r.doScroll && function a() { if (!b.isReady) { try { r.doScroll("left") } catch (e) { return setTimeout(a, 50) } q(), b.ready() } } () } return n.promise(t) }, b.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (e, t) { l["[object " + t + "]"] = t.toLowerCase() }); function M(e) { var t = e.length, n = b.type(e); return b.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === n || "function" !== n && (0 === t || "number" == typeof t && t > 0 && t - 1 in e) } r = b(o); var _ = {}; function F(e) { var t = _[e] = {}; return b.each(e.match(w) || [], function (e, n) { t[n] = !0 }), t } b.Callbacks = function (e) { e = "string" == typeof e ? _[e] || F(e) : b.extend({}, e); var n, r, i, o, a, s, u = [], l = !e.once && [], c = function (t) { for (r = e.memory && t, i = !0, a = s || 0, s = 0, o = u.length, n = !0; u && o > a; a++) if (u[a].apply(t[0], t[1]) === !1 && e.stopOnFalse) { r = !1; break } n = !1, u && (l ? l.length && c(l.shift()) : r ? u = [] : p.disable()) }, p = { add: function () { if (u) { var t = u.length; (function i(t) { b.each(t, function (t, n) { var r = b.type(n); "function" === r ? e.unique && p.has(n) || u.push(n) : n && n.length && "string" !== r && i(n) }) })(arguments), n ? o = u.length : r && (s = t, c(r)) } return this }, remove: function () { return u && b.each(arguments, function (e, t) { var r; while ((r = b.inArray(t, u, r)) > -1) u.splice(r, 1), n && (o >= r && o--, a >= r && a--) }), this }, has: function (e) { return e ? b.inArray(e, u) > -1 : !(!u || !u.length) }, empty: function () { return u = [], this }, disable: function () { return u = l = r = t, this }, disabled: function () { return !u }, lock: function () { return l = t, r || p.disable(), this }, locked: function () { return !l }, fireWith: function (e, t) { return t = t || [], t = [e, t.slice ? t.slice() : t], !u || i && !l || (n ? l.push(t) : c(t)), this }, fire: function () { return p.fireWith(this, arguments), this }, fired: function () { return !!i } }; return p }, b.extend({ Deferred: function (e) { var t = [["resolve", "done", b.Callbacks("once memory"), "resolved"], ["reject", "fail", b.Callbacks("once memory"), "rejected"], ["notify", "progress", b.Callbacks("memory")]], n = "pending", r = { state: function () { return n }, always: function () { return i.done(arguments).fail(arguments), this }, then: function () { var e = arguments; return b.Deferred(function (n) { b.each(t, function (t, o) { var a = o[0], s = b.isFunction(e[t]) && e[t]; i[o[1]](function () { var e = s && s.apply(this, arguments); e && b.isFunction(e.promise) ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[a + "With"](this === r ? n.promise() : this, s ? [e] : arguments) }) }), e = null }).promise() }, promise: function (e) { return null != e ? b.extend(e, r) : r } }, i = {}; return r.pipe = r.then, b.each(t, function (e, o) { var a = o[2], s = o[3]; r[o[1]] = a.add, s && a.add(function () { n = s }, t[1 ^ e][2].disable, t[2][2].lock), i[o[0]] = function () { return i[o[0] + "With"](this === i ? r : this, arguments), this }, i[o[0] + "With"] = a.fireWith }), r.promise(i), e && e.call(i, i), i }, when: function (e) { var t = 0, n = h.call(arguments), r = n.length, i = 1 !== r || e && b.isFunction(e.promise) ? r : 0, o = 1 === i ? e : b.Deferred(), a = function (e, t, n) { return function (r) { t[e] = this, n[e] = arguments.length > 1 ? h.call(arguments) : r, n === s ? o.notifyWith(t, n) : --i || o.resolveWith(t, n) } }, s, u, l; if (r > 1) for (s = Array(r), u = Array(r), l = Array(r); r > t; t++) n[t] && b.isFunction(n[t].promise) ? n[t].promise().done(a(t, l, n)).fail(o.reject).progress(a(t, u, s)) : --i; return i || o.resolveWith(l, n), o.promise() } }), b.support = function () { var t, n, r, a, s, u, l, c, p, f, d = o.createElement("div"); if (d.setAttribute("className", "t"), d.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", n = d.getElementsByTagName("*"), r = d.getElementsByTagName("a")[0], !n || !r || !n.length) return {}; s = o.createElement("select"), l = s.appendChild(o.createElement("option")), a = d.getElementsByTagName("input")[0], r.style.cssText = "top:1px;float:left;opacity:.5", t = { getSetAttribute: "t" !== d.className, leadingWhitespace: 3 === d.firstChild.nodeType, tbody: !d.getElementsByTagName("tbody").length, htmlSerialize: !!d.getElementsByTagName("link").length, style: /top/.test(r.getAttribute("style")), hrefNormalized: "/a" === r.getAttribute("href"), opacity: /^0.5/.test(r.style.opacity), cssFloat: !!r.style.cssFloat, checkOn: !!a.value, optSelected: l.selected, enctype: !!o.createElement("form").enctype, html5Clone: "<:nav></:nav>" !== o.createElement("nav").cloneNode(!0).outerHTML, boxModel: "CSS1Compat" === o.compatMode, deleteExpando: !0, noCloneEvent: !0, inlineBlockNeedsLayout: !1, shrinkWrapBlocks: !1, reliableMarginRight: !0, boxSizingReliable: !0, pixelPosition: !1 }, a.checked = !0, t.noCloneChecked = a.cloneNode(!0).checked, s.disabled = !0, t.optDisabled = !l.disabled; try { delete d.test } catch (h) { t.deleteExpando = !1 } a = o.createElement("input"), a.setAttribute("value", ""), t.input = "" === a.getAttribute("value"), a.value = "t", a.setAttribute("type", "radio"), t.radioValue = "t" === a.value, a.setAttribute("checked", "t"), a.setAttribute("name", "t"), u = o.createDocumentFragment(), u.appendChild(a), t.appendChecked = a.checked, t.checkClone = u.cloneNode(!0).cloneNode(!0).lastChild.checked, d.attachEvent && (d.attachEvent("onclick", function () { t.noCloneEvent = !1 }), d.cloneNode(!0).click()); for (f in { submit: !0, change: !0, focusin: !0 }) d.setAttribute(c = "on" + f, "t"), t[f + "Bubbles"] = c in e || d.attributes[c].expando === !1; return d.style.backgroundClip = "content-box", d.cloneNode(!0).style.backgroundClip = "", t.clearCloneStyle = "content-box" === d.style.backgroundClip, b(function () { var n, r, a, s = "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;", u = o.getElementsByTagName("body")[0]; u && (n = o.createElement("div"), n.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px", u.appendChild(n).appendChild(d), d.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", a = d.getElementsByTagName("td"), a[0].style.cssText = "padding:0;margin:0;border:0;display:none", p = 0 === a[0].offsetHeight, a[0].style.display = "", a[1].style.display = "none", t.reliableHiddenOffsets = p && 0 === a[0].offsetHeight, d.innerHTML = "", d.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;", t.boxSizing = 4 === d.offsetWidth, t.doesNotIncludeMarginInBodyOffset = 1 !== u.offsetTop, e.getComputedStyle && (t.pixelPosition = "1%" !== (e.getComputedStyle(d, null) || {}).top, t.boxSizingReliable = "4px" === (e.getComputedStyle(d, null) || { width: "4px" }).width, r = d.appendChild(o.createElement("div")), r.style.cssText = d.style.cssText = s, r.style.marginRight = r.style.width = "0", d.style.width = "1px", t.reliableMarginRight = !parseFloat((e.getComputedStyle(r, null) || {}).marginRight)), typeof d.style.zoom !== i && (d.innerHTML = "", d.style.cssText = s + "width:1px;padding:1px;display:inline;zoom:1", t.inlineBlockNeedsLayout = 3 === d.offsetWidth, d.style.display = "block", d.innerHTML = "<div></div>", d.firstChild.style.width = "5px", t.shrinkWrapBlocks = 3 !== d.offsetWidth, t.inlineBlockNeedsLayout && (u.style.zoom = 1)), u.removeChild(n), n = d = a = r = null) }), n = s = u = l = r = a = null, t } (); var O = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, B = /([A-Z])/g; function P(e, n, r, i) { if (b.acceptData(e)) { var o, a, s = b.expando, u = "string" == typeof n, l = e.nodeType, p = l ? b.cache : e, f = l ? e[s] : e[s] && s; if (f && p[f] && (i || p[f].data) || !u || r !== t) return f || (l ? e[s] = f = c.pop() || b.guid++ : f = s), p[f] || (p[f] = {}, l || (p[f].toJSON = b.noop)), ("object" == typeof n || "function" == typeof n) && (i ? p[f] = b.extend(p[f], n) : p[f].data = b.extend(p[f].data, n)), o = p[f], i || (o.data || (o.data = {}), o = o.data), r !== t && (o[b.camelCase(n)] = r), u ? (a = o[n], null == a && (a = o[b.camelCase(n)])) : a = o, a } } function R(e, t, n) { if (b.acceptData(e)) { var r, i, o, a = e.nodeType, s = a ? b.cache : e, u = a ? e[b.expando] : b.expando; if (s[u]) { if (t && (o = n ? s[u] : s[u].data)) { b.isArray(t) ? t = t.concat(b.map(t, b.camelCase)) : t in o ? t = [t] : (t = b.camelCase(t), t = t in o ? [t] : t.split(" ")); for (r = 0, i = t.length; i > r; r++) delete o[t[r]]; if (!(n ? $ : b.isEmptyObject)(o)) return } (n || (delete s[u].data, $(s[u]))) && (a ? b.cleanData([e], !0) : b.support.deleteExpando || s != s.window ? delete s[u] : s[u] = null) } } } b.extend({ cache: {}, expando: "jQuery" + (p + Math.random()).replace(/\D/g, ""), noData: { embed: !0, object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", applet: !0 }, hasData: function (e) { return e = e.nodeType ? b.cache[e[b.expando]] : e[b.expando], !!e && !$(e) }, data: function (e, t, n) { return P(e, t, n) }, removeData: function (e, t) { return R(e, t) }, _data: function (e, t, n) { return P(e, t, n, !0) }, _removeData: function (e, t) { return R(e, t, !0) }, acceptData: function (e) { if (e.nodeType && 1 !== e.nodeType && 9 !== e.nodeType) return !1; var t = e.nodeName && b.noData[e.nodeName.toLowerCase()]; return !t || t !== !0 && e.getAttribute("classid") === t } }), b.fn.extend({ data: function (e, n) { var r, i, o = this[0], a = 0, s = null; if (e === t) { if (this.length && (s = b.data(o), 1 === o.nodeType && !b._data(o, "parsedAttrs"))) { for (r = o.attributes; r.length > a; a++) i = r[a].name, i.indexOf("data-") || (i = b.camelCase(i.slice(5)), W(o, i, s[i])); b._data(o, "parsedAttrs", !0) } return s } return "object" == typeof e ? this.each(function () { b.data(this, e) }) : b.access(this, function (n) { return n === t ? o ? W(o, e, b.data(o, e)) : null : (this.each(function () { b.data(this, e, n) }), t) }, null, n, arguments.length > 1, null, !0) }, removeData: function (e) { return this.each(function () { b.removeData(this, e) }) } }); function W(e, n, r) { if (r === t && 1 === e.nodeType) { var i = "data-" + n.replace(B, "-$1").toLowerCase(); if (r = e.getAttribute(i), "string" == typeof r) { try { r = "true" === r ? !0 : "false" === r ? !1 : "null" === r ? null : +r + "" === r ? +r : O.test(r) ? b.parseJSON(r) : r } catch (o) { } b.data(e, n, r) } else r = t } return r } function $(e) { var t; for (t in e) if (("data" !== t || !b.isEmptyObject(e[t])) && "toJSON" !== t) return !1; return !0 } b.extend({ queue: function (e, n, r) { var i; return e ? (n = (n || "fx") + "queue", i = b._data(e, n), r && (!i || b.isArray(r) ? i = b._data(e, n, b.makeArray(r)) : i.push(r)), i || []) : t }, dequeue: function (e, t) { t = t || "fx"; var n = b.queue(e, t), r = n.length, i = n.shift(), o = b._queueHooks(e, t), a = function () { b.dequeue(e, t) }; "inprogress" === i && (i = n.shift(), r--), o.cur = i, i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, a, o)), !r && o && o.empty.fire() }, _queueHooks: function (e, t) { var n = t + "queueHooks"; return b._data(e, n) || b._data(e, n, { empty: b.Callbacks("once memory").add(function () { b._removeData(e, t + "queue"), b._removeData(e, n) }) }) } }), b.fn.extend({ queue: function (e, n) { var r = 2; return "string" != typeof e && (n = e, e = "fx", r--), r > arguments.length ? b.queue(this[0], e) : n === t ? this : this.each(function () { var t = b.queue(this, e, n); b._queueHooks(this, e), "fx" === e && "inprogress" !== t[0] && b.dequeue(this, e) }) }, dequeue: function (e) { return this.each(function () { b.dequeue(this, e) }) }, delay: function (e, t) { return e = b.fx ? b.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function (t, n) { var r = setTimeout(t, e); n.stop = function () { clearTimeout(r) } }) }, clearQueue: function (e) { return this.queue(e || "fx", []) }, promise: function (e, n) { var r, i = 1, o = b.Deferred(), a = this, s = this.length, u = function () { --i || o.resolveWith(a, [a]) }; "string" != typeof e && (n = e, e = t), e = e || "fx"; while (s--) r = b._data(a[s], e + "queueHooks"), r && r.empty && (i++, r.empty.add(u)); return u(), o.promise(n) } }); var I, z, X = /[\t\r\n]/g, U = /\r/g, V = /^(?:input|select|textarea|button|object)$/i, Y = /^(?:a|area)$/i, J = /^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i, G = /^(?:checked|selected)$/i, Q = b.support.getSetAttribute, K = b.support.input; b.fn.extend({ attr: function (e, t) { return b.access(this, b.attr, e, t, arguments.length > 1) }, removeAttr: function (e) { return this.each(function () { b.removeAttr(this, e) }) }, prop: function (e, t) { return b.access(this, b.prop, e, t, arguments.length > 1) }, removeProp: function (e) { return e = b.propFix[e] || e, this.each(function () { try { this[e] = t, delete this[e] } catch (n) { } }) }, addClass: function (e) { var t, n, r, i, o, a = 0, s = this.length, u = "string" == typeof e && e; if (b.isFunction(e)) return this.each(function (t) { b(this).addClass(e.call(this, t, this.className)) }); if (u) for (t = (e || "").match(w) || []; s > a; a++) if (n = this[a], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(X, " ") : " ")) { o = 0; while (i = t[o++]) 0 > r.indexOf(" " + i + " ") && (r += i + " "); n.className = b.trim(r) } return this }, removeClass: function (e) { var t, n, r, i, o, a = 0, s = this.length, u = 0 === arguments.length || "string" == typeof e && e; if (b.isFunction(e)) return this.each(function (t) { b(this).removeClass(e.call(this, t, this.className)) }); if (u) for (t = (e || "").match(w) || []; s > a; a++) if (n = this[a], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(X, " ") : "")) { o = 0; while (i = t[o++]) while (r.indexOf(" " + i + " ") >= 0) r = r.replace(" " + i + " ", " "); n.className = e ? b.trim(r) : "" } return this }, toggleClass: function (e, t) { var n = typeof e, r = "boolean" == typeof t; return b.isFunction(e) ? this.each(function (n) { b(this).toggleClass(e.call(this, n, this.className, t), t) }) : this.each(function () { if ("string" === n) { var o, a = 0, s = b(this), u = t, l = e.match(w) || []; while (o = l[a++]) u = r ? u : !s.hasClass(o), s[u ? "addClass" : "removeClass"](o) } else (n === i || "boolean" === n) && (this.className && b._data(this, "__className__", this.className), this.className = this.className || e === !1 ? "" : b._data(this, "__className__") || "") }) }, hasClass: function (e) { var t = " " + e + " ", n = 0, r = this.length; for (; r > n; n++) if (1 === this[n].nodeType && (" " + this[n].className + " ").replace(X, " ").indexOf(t) >= 0) return !0; return !1 }, val: function (e) { var n, r, i, o = this[0]; { if (arguments.length) return i = b.isFunction(e), this.each(function (n) { var o, a = b(this); 1 === this.nodeType && (o = i ? e.call(this, n, a.val()) : e, null == o ? o = "" : "number" == typeof o ? o += "" : b.isArray(o) && (o = b.map(o, function (e) { return null == e ? "" : e + "" })), r = b.valHooks[this.type] || b.valHooks[this.nodeName.toLowerCase()], r && "set" in r && r.set(this, o, "value") !== t || (this.value = o)) }); if (o) return r = b.valHooks[o.type] || b.valHooks[o.nodeName.toLowerCase()], r && "get" in r && (n = r.get(o, "value")) !== t ? n : (n = o.value, "string" == typeof n ? n.replace(U, "") : null == n ? "" : n) } } }), b.extend({ valHooks: { option: { get: function (e) { var t = e.attributes.value; return !t || t.specified ? e.value : e.text } }, select: { get: function (e) { var t, n, r = e.options, i = e.selectedIndex, o = "select-one" === e.type || 0 > i, a = o ? null : [], s = o ? i + 1 : r.length, u = 0 > i ? s : o ? i : 0; for (; s > u; u++) if (n = r[u], !(!n.selected && u !== i || (b.support.optDisabled ? n.disabled : null !== n.getAttribute("disabled")) || n.parentNode.disabled && b.nodeName(n.parentNode, "optgroup"))) { if (t = b(n).val(), o) return t; a.push(t) } return a }, set: function (e, t) { var n = b.makeArray(t); return b(e).find("option").each(function () { this.selected = b.inArray(b(this).val(), n) >= 0 }), n.length || (e.selectedIndex = -1), n } } }, attr: function (e, n, r) { var o, a, s, u = e.nodeType; if (e && 3 !== u && 8 !== u && 2 !== u) return typeof e.getAttribute === i ? b.prop(e, n, r) : (a = 1 !== u || !b.isXMLDoc(e), a && (n = n.toLowerCase(), o = b.attrHooks[n] || (J.test(n) ? z : I)), r === t ? o && a && "get" in o && null !== (s = o.get(e, n)) ? s : (typeof e.getAttribute !== i && (s = e.getAttribute(n)), null == s ? t : s) : null !== r ? o && a && "set" in o && (s = o.set(e, r, n)) !== t ? s : (e.setAttribute(n, r + ""), r) : (b.removeAttr(e, n), t)) }, removeAttr: function (e, t) { var n, r, i = 0, o = t && t.match(w); if (o && 1 === e.nodeType) while (n = o[i++]) r = b.propFix[n] || n, J.test(n) ? !Q && G.test(n) ? e[b.camelCase("default-" + n)] = e[r] = !1 : e[r] = !1 : b.attr(e, n, ""), e.removeAttribute(Q ? n : r) }, attrHooks: { type: { set: function (e, t) { if (!b.support.radioValue && "radio" === t && b.nodeName(e, "input")) { var n = e.value; return e.setAttribute("type", t), n && (e.value = n), t } } } }, propFix: { tabindex: "tabIndex", readonly: "readOnly", "for": "htmlFor", "class": "className", maxlength: "maxLength", cellspacing: "cellSpacing", cellpadding: "cellPadding", rowspan: "rowSpan", colspan: "colSpan", usemap: "useMap", frameborder: "frameBorder", contenteditable: "contentEditable" }, prop: function (e, n, r) { var i, o, a, s = e.nodeType; if (e && 3 !== s && 8 !== s && 2 !== s) return a = 1 !== s || !b.isXMLDoc(e), a && (n = b.propFix[n] || n, o = b.propHooks[n]), r !== t ? o && "set" in o && (i = o.set(e, r, n)) !== t ? i : e[n] = r : o && "get" in o && null !== (i = o.get(e, n)) ? i : e[n] }, propHooks: { tabIndex: { get: function (e) { var n = e.getAttributeNode("tabindex"); return n && n.specified ? parseInt(n.value, 10) : V.test(e.nodeName) || Y.test(e.nodeName) && e.href ? 0 : t } }} }), z = { get: function (e, n) { var r = b.prop(e, n), i = "boolean" == typeof r && e.getAttribute(n), o = "boolean" == typeof r ? K && Q ? null != i : G.test(n) ? e[b.camelCase("default-" + n)] : !!i : e.getAttributeNode(n); return o && o.value !== !1 ? n.toLowerCase() : t }, set: function (e, t, n) { return t === !1 ? b.removeAttr(e, n) : K && Q || !G.test(n) ? e.setAttribute(!Q && b.propFix[n] || n, n) : e[b.camelCase("default-" + n)] = e[n] = !0, n } }, K && Q || (b.attrHooks.value = { get: function (e, n) { var r = e.getAttributeNode(n); return b.nodeName(e, "input") ? e.defaultValue : r && r.specified ? r.value : t }, set: function (e, n, r) { return b.nodeName(e, "input") ? (e.defaultValue = n, t) : I && I.set(e, n, r) } }), Q || (I = b.valHooks.button = { get: function (e, n) { var r = e.getAttributeNode(n); return r && ("id" === n || "name" === n || "coords" === n ? "" !== r.value : r.specified) ? r.value : t }, set: function (e, n, r) { var i = e.getAttributeNode(r); return i || e.setAttributeNode(i = e.ownerDocument.createAttribute(r)), i.value = n += "", "value" === r || n === e.getAttribute(r) ? n : t } }, b.attrHooks.contenteditable = { get: I.get, set: function (e, t, n) { I.set(e, "" === t ? !1 : t, n) } }, b.each(["width", "height"], function (e, n) { b.attrHooks[n] = b.extend(b.attrHooks[n], { set: function (e, r) { return "" === r ? (e.setAttribute(n, "auto"), r) : t } }) })), b.support.hrefNormalized || (b.each(["href", "src", "width", "height"], function (e, n) { b.attrHooks[n] = b.extend(b.attrHooks[n], { get: function (e) { var r = e.getAttribute(n, 2); return null == r ? t : r } }) }), b.each(["href", "src"], function (e, t) { b.propHooks[t] = { get: function (e) { return e.getAttribute(t, 4) } } })), b.support.style || (b.attrHooks.style = { get: function (e) { return e.style.cssText || t }, set: function (e, t) { return e.style.cssText = t + "" } }), b.support.optSelected || (b.propHooks.selected = b.extend(b.propHooks.selected, { get: function (e) { var t = e.parentNode; return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null } })), b.support.enctype || (b.propFix.enctype = "encoding"), b.support.checkOn || b.each(["radio", "checkbox"], function () { b.valHooks[this] = { get: function (e) { return null === e.getAttribute("value") ? "on" : e.value } } }), b.each(["radio", "checkbox"], function () { b.valHooks[this] = b.extend(b.valHooks[this], { set: function (e, n) { return b.isArray(n) ? e.checked = b.inArray(b(e).val(), n) >= 0 : t } }) }); var Z = /^(?:input|select|textarea)$/i, et = /^key/, tt = /^(?:mouse|contextmenu)|click/, nt = /^(?:focusinfocus|focusoutblur)$/, rt = /^([^.]*)(?:\.(.+)|)$/; function it() { return !0 } function ot() { return !1 } b.event = { global: {}, add: function (e, n, r, o, a) { var s, u, l, c, p, f, d, h, g, m, y, v = b._data(e); if (v) { r.handler && (c = r, r = c.handler, a = c.selector), r.guid || (r.guid = b.guid++), (u = v.events) || (u = v.events = {}), (f = v.handle) || (f = v.handle = function (e) { return typeof b === i || e && b.event.triggered === e.type ? t : b.event.dispatch.apply(f.elem, arguments) }, f.elem = e), n = (n || "").match(w) || [""], l = n.length; while (l--) s = rt.exec(n[l]) || [], g = y = s[1], m = (s[2] || "").split(".").sort(), p = b.event.special[g] || {}, g = (a ? p.delegateType : p.bindType) || g, p = b.event.special[g] || {}, d = b.extend({ type: g, origType: y, data: o, handler: r, guid: r.guid, selector: a, needsContext: a && b.expr.match.needsContext.test(a), namespace: m.join(".") }, c), (h = u[g]) || (h = u[g] = [], h.delegateCount = 0, p.setup && p.setup.call(e, o, m, f) !== !1 || (e.addEventListener ? e.addEventListener(g, f, !1) : e.attachEvent && e.attachEvent("on" + g, f))), p.add && (p.add.call(e, d), d.handler.guid || (d.handler.guid = r.guid)), a ? h.splice(h.delegateCount++, 0, d) : h.push(d), b.event.global[g] = !0; e = null } }, remove: function (e, t, n, r, i) { var o, a, s, u, l, c, p, f, d, h, g, m = b.hasData(e) && b._data(e); if (m && (c = m.events)) { t = (t || "").match(w) || [""], l = t.length; while (l--) if (s = rt.exec(t[l]) || [], d = g = s[1], h = (s[2] || "").split(".").sort(), d) { p = b.event.special[d] || {}, d = (r ? p.delegateType : p.bindType) || d, f = c[d] || [], s = s[2] && RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), u = o = f.length; while (o--) a = f[o], !i && g !== a.origType || n && n.guid !== a.guid || s && !s.test(a.namespace) || r && r !== a.selector && ("**" !== r || !a.selector) || (f.splice(o, 1), a.selector && f.delegateCount--, p.remove && p.remove.call(e, a)); u && !f.length && (p.teardown && p.teardown.call(e, h, m.handle) !== !1 || b.removeEvent(e, d, m.handle), delete c[d]) } else for (d in c) b.event.remove(e, d + t[l], n, r, !0); b.isEmptyObject(c) && (delete m.handle, b._removeData(e, "events")) } }, trigger: function (n, r, i, a) { var s, u, l, c, p, f, d, h = [i || o], g = y.call(n, "type") ? n.type : n, m = y.call(n, "namespace") ? n.namespace.split(".") : []; if (l = f = i = i || o, 3 !== i.nodeType && 8 !== i.nodeType && !nt.test(g + b.event.triggered) && (g.indexOf(".") >= 0 && (m = g.split("."), g = m.shift(), m.sort()), u = 0 > g.indexOf(":") && "on" + g, n = n[b.expando] ? n : new b.Event(g, "object" == typeof n && n), n.isTrigger = !0, n.namespace = m.join("."), n.namespace_re = n.namespace ? RegExp("(^|\\.)" + m.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, n.result = t, n.target || (n.target = i), r = null == r ? [n] : b.makeArray(r, [n]), p = b.event.special[g] || {}, a || !p.trigger || p.trigger.apply(i, r) !== !1)) { if (!a && !p.noBubble && !b.isWindow(i)) { for (c = p.delegateType || g, nt.test(c + g) || (l = l.parentNode); l; l = l.parentNode) h.push(l), f = l; f === (i.ownerDocument || o) && h.push(f.defaultView || f.parentWindow || e) } d = 0; while ((l = h[d++]) && !n.isPropagationStopped()) n.type = d > 1 ? c : p.bindType || g, s = (b._data(l, "events") || {})[n.type] && b._data(l, "handle"), s && s.apply(l, r), s = u && l[u], s && b.acceptData(l) && s.apply && s.apply(l, r) === !1 && n.preventDefault(); if (n.type = g, !(a || n.isDefaultPrevented() || p._default && p._default.apply(i.ownerDocument, r) !== !1 || "click" === g && b.nodeName(i, "a") || !b.acceptData(i) || !u || !i[g] || b.isWindow(i))) { f = i[u], f && (i[u] = null), b.event.triggered = g; try { i[g]() } catch (v) { } b.event.triggered = t, f && (i[u] = f) } return n.result } }, dispatch: function (e) { e = b.event.fix(e); var n, r, i, o, a, s = [], u = h.call(arguments), l = (b._data(this, "events") || {})[e.type] || [], c = b.event.special[e.type] || {}; if (u[0] = e, e.delegateTarget = this, !c.preDispatch || c.preDispatch.call(this, e) !== !1) { s = b.event.handlers.call(this, e, l), n = 0; while ((o = s[n++]) && !e.isPropagationStopped()) { e.currentTarget = o.elem, a = 0; while ((i = o.handlers[a++]) && !e.isImmediatePropagationStopped()) (!e.namespace_re || e.namespace_re.test(i.namespace)) && (e.handleObj = i, e.data = i.data, r = ((b.event.special[i.origType] || {}).handle || i.handler).apply(o.elem, u), r !== t && (e.result = r) === !1 && (e.preventDefault(), e.stopPropagation())) } return c.postDispatch && c.postDispatch.call(this, e), e.result } }, handlers: function (e, n) { var r, i, o, a, s = [], u = n.delegateCount, l = e.target; if (u && l.nodeType && (!e.button || "click" !== e.type)) for (; l != this; l = l.parentNode || this) if (1 === l.nodeType && (l.disabled !== !0 || "click" !== e.type)) { for (o = [], a = 0; u > a; a++) i = n[a], r = i.selector + " ", o[r] === t && (o[r] = i.needsContext ? b(r, this).index(l) >= 0 : b.find(r, this, null, [l]).length), o[r] && o.push(i); o.length && s.push({ elem: l, handlers: o }) } return n.length > u && s.push({ elem: this, handlers: n.slice(u) }), s }, fix: function (e) { if (e[b.expando]) return e; var t, n, r, i = e.type, a = e, s = this.fixHooks[i]; s || (this.fixHooks[i] = s = tt.test(i) ? this.mouseHooks : et.test(i) ? this.keyHooks : {}), r = s.props ? this.props.concat(s.props) : this.props, e = new b.Event(a), t = r.length; while (t--) n = r[t], e[n] = a[n]; return e.target || (e.target = a.srcElement || o), 3 === e.target.nodeType && (e.target = e.target.parentNode), e.metaKey = !!e.metaKey, s.filter ? s.filter(e, a) : e }, props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), fixHooks: {}, keyHooks: { props: "char charCode key keyCode".split(" "), filter: function (e, t) { return null == e.which && (e.which = null != t.charCode ? t.charCode : t.keyCode), e } }, mouseHooks: { props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "), filter: function (e, n) { var r, i, a, s = n.button, u = n.fromElement; return null == e.pageX && null != n.clientX && (i = e.target.ownerDocument || o, a = i.documentElement, r = i.body, e.pageX = n.clientX + (a && a.scrollLeft || r && r.scrollLeft || 0) - (a && a.clientLeft || r && r.clientLeft || 0), e.pageY = n.clientY + (a && a.scrollTop || r && r.scrollTop || 0) - (a && a.clientTop || r && r.clientTop || 0)), !e.relatedTarget && u && (e.relatedTarget = u === e.target ? n.toElement : u), e.which || s === t || (e.which = 1 & s ? 1 : 2 & s ? 3 : 4 & s ? 2 : 0), e } }, special: { load: { noBubble: !0 }, click: { trigger: function () { return b.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : t } }, focus: { trigger: function () { if (this !== o.activeElement && this.focus) try { return this.focus(), !1 } catch (e) { } }, delegateType: "focusin" }, blur: { trigger: function () { return this === o.activeElement && this.blur ? (this.blur(), !1) : t }, delegateType: "focusout" }, beforeunload: { postDispatch: function (e) { e.result !== t && (e.originalEvent.returnValue = e.result) } } }, simulate: function (e, t, n, r) { var i = b.extend(new b.Event, n, { type: e, isSimulated: !0, originalEvent: {} }); r ? b.event.trigger(i, null, t) : b.event.dispatch.call(t, i), i.isDefaultPrevented() && n.preventDefault() } }, b.removeEvent = o.removeEventListener ? function (e, t, n) { e.removeEventListener && e.removeEventListener(t, n, !1) } : function (e, t, n) { var r = "on" + t; e.detachEvent && (typeof e[r] === i && (e[r] = null), e.detachEvent(r, n)) }, b.Event = function (e, n) { return this instanceof b.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || e.returnValue === !1 || e.getPreventDefault && e.getPreventDefault() ? it : ot) : this.type = e, n && b.extend(this, n), this.timeStamp = e && e.timeStamp || b.now(), this[b.expando] = !0, t) : new b.Event(e, n) }, b.Event.prototype = { isDefaultPrevented: ot, isPropagationStopped: ot, isImmediatePropagationStopped: ot, preventDefault: function () { var e = this.originalEvent; this.isDefaultPrevented = it, e && (e.preventDefault ? e.preventDefault() : e.returnValue = !1) }, stopPropagation: function () { var e = this.originalEvent; this.isPropagationStopped = it, e && (e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0) }, stopImmediatePropagation: function () { this.isImmediatePropagationStopped = it, this.stopPropagation() } }, b.each({ mouseenter: "mouseover", mouseleave: "mouseout" }, function (e, t) {\r
+        b.event.special[e] = { delegateType: t, bindType: t, handle: function (e) {\r
+            var n, r = this, i = e.relatedTarget, o = e.handleObj;\r
+            return (!i || i !== r && !b.contains(r, i)) && (e.type = o.origType, n = o.handler.apply(this, arguments), e.type = t), n\r
+        } \r
+        }\r
+    }), b.support.submitBubbles || (b.event.special.submit = { setup: function () { return b.nodeName(this, "form") ? !1 : (b.event.add(this, "click._submit keypress._submit", function (e) { var n = e.target, r = b.nodeName(n, "input") || b.nodeName(n, "button") ? n.form : t; r && !b._data(r, "submitBubbles") && (b.event.add(r, "submit._submit", function (e) { e._submit_bubble = !0 }), b._data(r, "submitBubbles", !0)) }), t) }, postDispatch: function (e) { e._submit_bubble && (delete e._submit_bubble, this.parentNode && !e.isTrigger && b.event.simulate("submit", this.parentNode, e, !0)) }, teardown: function () { return b.nodeName(this, "form") ? !1 : (b.event.remove(this, "._submit"), t) } }), b.support.changeBubbles || (b.event.special.change = { setup: function () { return Z.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (b.event.add(this, "propertychange._change", function (e) { "checked" === e.originalEvent.propertyName && (this._just_changed = !0) }), b.event.add(this, "click._change", function (e) { this._just_changed && !e.isTrigger && (this._just_changed = !1), b.event.simulate("change", this, e, !0) })), !1) : (b.event.add(this, "beforeactivate._change", function (e) { var t = e.target; Z.test(t.nodeName) && !b._data(t, "changeBubbles") && (b.event.add(t, "change._change", function (e) { !this.parentNode || e.isSimulated || e.isTrigger || b.event.simulate("change", this.parentNode, e, !0) }), b._data(t, "changeBubbles", !0)) }), t) }, handle: function (e) { var n = e.target; return this !== n || e.isSimulated || e.isTrigger || "radio" !== n.type && "checkbox" !== n.type ? e.handleObj.handler.apply(this, arguments) : t }, teardown: function () { return b.event.remove(this, "._change"), !Z.test(this.nodeName) } }), b.support.focusinBubbles || b.each({ focus: "focusin", blur: "focusout" }, function (e, t) { var n = 0, r = function (e) { b.event.simulate(t, e.target, b.event.fix(e), !0) }; b.event.special[t] = { setup: function () { 0 === n++ && o.addEventListener(e, r, !0) }, teardown: function () { 0 === --n && o.removeEventListener(e, r, !0) } } }), b.fn.extend({ on: function (e, n, r, i, o) { var a, s; if ("object" == typeof e) { "string" != typeof n && (r = r || n, n = t); for (a in e) this.on(a, n, r, e[a], o); return this } if (null == r && null == i ? (i = n, r = n = t) : null == i && ("string" == typeof n ? (i = r, r = t) : (i = r, r = n, n = t)), i === !1) i = ot; else if (!i) return this; return 1 === o && (s = i, i = function (e) { return b().off(e), s.apply(this, arguments) }, i.guid = s.guid || (s.guid = b.guid++)), this.each(function () { b.event.add(this, e, i, r, n) }) }, one: function (e, t, n, r) { return this.on(e, t, n, r, 1) }, off: function (e, n, r) { var i, o; if (e && e.preventDefault && e.handleObj) return i = e.handleObj, b(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this; if ("object" == typeof e) { for (o in e) this.off(o, n, e[o]); return this } return (n === !1 || "function" == typeof n) && (r = n, n = t), r === !1 && (r = ot), this.each(function () { b.event.remove(this, e, r, n) }) }, bind: function (e, t, n) { return this.on(e, null, t, n) }, unbind: function (e, t) { return this.off(e, null, t) }, delegate: function (e, t, n, r) { return this.on(t, e, n, r) }, undelegate: function (e, t, n) { return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n) }, trigger: function (e, t) { return this.each(function () { b.event.trigger(e, t, this) }) }, triggerHandler: function (e, n) { var r = this[0]; return r ? b.event.trigger(e, n, r, !0) : t } }), function (e, t) { var n, r, i, o, a, s, u, l, c, p, f, d, h, g, m, y, v, x = "sizzle" + -new Date, w = e.document, T = {}, N = 0, C = 0, k = it(), E = it(), S = it(), A = typeof t, j = 1 << 31, D = [], L = D.pop, H = D.push, q = D.slice, M = D.indexOf || function (e) { var t = 0, n = this.length; for (; n > t; t++) if (this[t] === e) return t; return -1 }, _ = "[\\x20\\t\\r\\n\\f]", F = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", O = F.replace("w", "w#"), B = "([*^$|!~]?=)", P = "\\[" + _ + "*(" + F + ")" + _ + "*(?:" + B + _ + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + O + ")|)|)" + _ + "*\\]", R = ":(" + F + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + P.replace(3, 8) + ")*)|.*)\\)|)", W = RegExp("^" + _ + "+|((?:^|[^\\\\])(?:\\\\.)*)" + _ + "+$", "g"), $ = RegExp("^" + _ + "*," + _ + "*"), I = RegExp("^" + _ + "*([\\x20\\t\\r\\n\\f>+~])" + _ + "*"), z = RegExp(R), X = RegExp("^" + O + "$"), U = { ID: RegExp("^#(" + F + ")"), CLASS: RegExp("^\\.(" + F + ")"), NAME: RegExp("^\\[name=['\"]?(" + F + ")['\"]?\\]"), TAG: RegExp("^(" + F.replace("w", "w*") + ")"), ATTR: RegExp("^" + P), PSEUDO: RegExp("^" + R), CHILD: RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + _ + "*(even|odd|(([+-]|)(\\d*)n|)" + _ + "*(?:([+-]|)" + _ + "*(\\d+)|))" + _ + "*\\)|)", "i"), needsContext: RegExp("^" + _ + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + _ + "*((?:-\\d)?\\d*)" + _ + "*\\)|)(?=[^-]|$)", "i") }, V = /[\x20\t\r\n\f]*[+~]/, Y = /^[^{]+\{\s*\[native code/, J = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, G = /^(?:input|select|textarea|button)$/i, Q = /^h\d$/i, K = /'|\\/g, Z = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g, et = /\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g, tt = function (e, t) { var n = "0x" + t - 65536; return n !== n ? t : 0 > n ? String.fromCharCode(n + 65536) : String.fromCharCode(55296 | n >> 10, 56320 | 1023 & n) }; try { q.call(w.documentElement.childNodes, 0)[0].nodeType } catch (nt) { q = function (e) { var t, n = []; while (t = this[e++]) n.push(t); return n } } function rt(e) { return Y.test(e + "") } function it() { var e, t = []; return e = function (n, r) { return t.push(n += " ") > i.cacheLength && delete e[t.shift()], e[n] = r } } function ot(e) { return e[x] = !0, e } function at(e) { var t = p.createElement("div"); try { return e(t) } catch (n) { return !1 } finally { t = null } } function st(e, t, n, r) { var i, o, a, s, u, l, f, g, m, v; if ((t ? t.ownerDocument || t : w) !== p && c(t), t = t || p, n = n || [], !e || "string" != typeof e) return n; if (1 !== (s = t.nodeType) && 9 !== s) return []; if (!d && !r) { if (i = J.exec(e)) if (a = i[1]) { if (9 === s) { if (o = t.getElementById(a), !o || !o.parentNode) return n; if (o.id === a) return n.push(o), n } else if (t.ownerDocument && (o = t.ownerDocument.getElementById(a)) && y(t, o) && o.id === a) return n.push(o), n } else { if (i[2]) return H.apply(n, q.call(t.getElementsByTagName(e), 0)), n; if ((a = i[3]) && T.getByClassName && t.getElementsByClassName) return H.apply(n, q.call(t.getElementsByClassName(a), 0)), n } if (T.qsa && !h.test(e)) { if (f = !0, g = x, m = t, v = 9 === s && e, 1 === s && "object" !== t.nodeName.toLowerCase()) { l = ft(e), (f = t.getAttribute("id")) ? g = f.replace(K, "\\$&") : t.setAttribute("id", g), g = "[id='" + g + "'] ", u = l.length; while (u--) l[u] = g + dt(l[u]); m = V.test(e) && t.parentNode || t, v = l.join(",") } if (v) try { return H.apply(n, q.call(m.querySelectorAll(v), 0)), n } catch (b) { } finally { f || t.removeAttribute("id") } } } return wt(e.replace(W, "$1"), t, n, r) } a = st.isXML = function (e) { var t = e && (e.ownerDocument || e).documentElement; return t ? "HTML" !== t.nodeName : !1 }, c = st.setDocument = function (e) { var n = e ? e.ownerDocument || e : w; return n !== p && 9 === n.nodeType && n.documentElement ? (p = n, f = n.documentElement, d = a(n), T.tagNameNoComments = at(function (e) { return e.appendChild(n.createComment("")), !e.getElementsByTagName("*").length }), T.attributes = at(function (e) { e.innerHTML = "<select></select>"; var t = typeof e.lastChild.getAttribute("multiple"); return "boolean" !== t && "string" !== t }), T.getByClassName = at(function (e) { return e.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>", e.getElementsByClassName && e.getElementsByClassName("e").length ? (e.lastChild.className = "e", 2 === e.getElementsByClassName("e").length) : !1 }), T.getByName = at(function (e) { e.id = x + 0, e.innerHTML = "<a name='" + x + "'></a><div name='" + x + "'></div>", f.insertBefore(e, f.firstChild); var t = n.getElementsByName && n.getElementsByName(x).length === 2 + n.getElementsByName(x + 0).length; return T.getIdNotName = !n.getElementById(x), f.removeChild(e), t }), i.attrHandle = at(function (e) { return e.innerHTML = "<a href='#'></a>", e.firstChild && typeof e.firstChild.getAttribute !== A && "#" === e.firstChild.getAttribute("href") }) ? {} : { href: function (e) { return e.getAttribute("href", 2) }, type: function (e) { return e.getAttribute("type") } }, T.getIdNotName ? (i.find.ID = function (e, t) { if (typeof t.getElementById !== A && !d) { var n = t.getElementById(e); return n && n.parentNode ? [n] : [] } }, i.filter.ID = function (e) { var t = e.replace(et, tt); return function (e) { return e.getAttribute("id") === t } }) : (i.find.ID = function (e, n) { if (typeof n.getElementById !== A && !d) { var r = n.getElementById(e); return r ? r.id === e || typeof r.getAttributeNode !== A && r.getAttributeNode("id").value === e ? [r] : t : [] } }, i.filter.ID = function (e) { var t = e.replace(et, tt); return function (e) { var n = typeof e.getAttributeNode !== A && e.getAttributeNode("id"); return n && n.value === t } }), i.find.TAG = T.tagNameNoComments ? function (e, n) { return typeof n.getElementsByTagName !== A ? n.getElementsByTagName(e) : t } : function (e, t) { var n, r = [], i = 0, o = t.getElementsByTagName(e); if ("*" === e) { while (n = o[i++]) 1 === n.nodeType && r.push(n); return r } return o }, i.find.NAME = T.getByName && function (e, n) { return typeof n.getElementsByName !== A ? n.getElementsByName(name) : t }, i.find.CLASS = T.getByClassName && function (e, n) { return typeof n.getElementsByClassName === A || d ? t : n.getElementsByClassName(e) }, g = [], h = [":focus"], (T.qsa = rt(n.querySelectorAll)) && (at(function (e) { e.innerHTML = "<select><option selected=''></option></select>", e.querySelectorAll("[selected]").length || h.push("\\[" + _ + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)"), e.querySelectorAll(":checked").length || h.push(":checked") }), at(function (e) { e.innerHTML = "<input type='hidden' i=''/>", e.querySelectorAll("[i^='']").length && h.push("[*^$]=" + _ + "*(?:\"\"|'')"), e.querySelectorAll(":enabled").length || h.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), h.push(",.*:") })), (T.matchesSelector = rt(m = f.matchesSelector || f.mozMatchesSelector || f.webkitMatchesSelector || f.oMatchesSelector || f.msMatchesSelector)) && at(function (e) { T.disconnectedMatch = m.call(e, "div"), m.call(e, "[s!='']:x"), g.push("!=", R) }), h = RegExp(h.join("|")), g = RegExp(g.join("|")), y = rt(f.contains) || f.compareDocumentPosition ? function (e, t) { var n = 9 === e.nodeType ? e.documentElement : e, r = t && t.parentNode; return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r))) } : function (e, t) { if (t) while (t = t.parentNode) if (t === e) return !0; return !1 }, v = f.compareDocumentPosition ? function (e, t) { var r; return e === t ? (u = !0, 0) : (r = t.compareDocumentPosition && e.compareDocumentPosition && e.compareDocumentPosition(t)) ? 1 & r || e.parentNode && 11 === e.parentNode.nodeType ? e === n || y(w, e) ? -1 : t === n || y(w, t) ? 1 : 0 : 4 & r ? -1 : 1 : e.compareDocumentPosition ? -1 : 1 } : function (e, t) { var r, i = 0, o = e.parentNode, a = t.parentNode, s = [e], l = [t]; if (e === t) return u = !0, 0; if (!o || !a) return e === n ? -1 : t === n ? 1 : o ? -1 : a ? 1 : 0; if (o === a) return ut(e, t); r = e; while (r = r.parentNode) s.unshift(r); r = t; while (r = r.parentNode) l.unshift(r); while (s[i] === l[i]) i++; return i ? ut(s[i], l[i]) : s[i] === w ? -1 : l[i] === w ? 1 : 0 }, u = !1, [0, 0].sort(v), T.detectDuplicates = u, p) : p }, st.matches = function (e, t) { return st(e, null, null, t) }, st.matchesSelector = function (e, t) { if ((e.ownerDocument || e) !== p && c(e), t = t.replace(Z, "='$1']"), !(!T.matchesSelector || d || g && g.test(t) || h.test(t))) try { var n = m.call(e, t); if (n || T.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n } catch (r) { } return st(t, p, null, [e]).length > 0 }, st.contains = function (e, t) { return (e.ownerDocument || e) !== p && c(e), y(e, t) }, st.attr = function (e, t) { var n; return (e.ownerDocument || e) !== p && c(e), d || (t = t.toLowerCase()), (n = i.attrHandle[t]) ? n(e) : d || T.attributes ? e.getAttribute(t) : ((n = e.getAttributeNode(t)) || e.getAttribute(t)) && e[t] === !0 ? t : n && n.specified ? n.value : null }, st.error = function (e) { throw Error("Syntax error, unrecognized expression: " + e) }, st.uniqueSort = function (e) { var t, n = [], r = 1, i = 0; if (u = !T.detectDuplicates, e.sort(v), u) { for (; t = e[r]; r++) t === e[r - 1] && (i = n.push(r)); while (i--) e.splice(n[i], 1) } return e }; function ut(e, t) { var n = t && e, r = n && (~t.sourceIndex || j) - (~e.sourceIndex || j); if (r) return r; if (n) while (n = n.nextSibling) if (n === t) return -1; return e ? 1 : -1 } function lt(e) { return function (t) { var n = t.nodeName.toLowerCase(); return "input" === n && t.type === e } } function ct(e) { return function (t) { var n = t.nodeName.toLowerCase(); return ("input" === n || "button" === n) && t.type === e } } function pt(e) { return ot(function (t) { return t = +t, ot(function (n, r) { var i, o = e([], n.length, t), a = o.length; while (a--) n[i = o[a]] && (n[i] = !(r[i] = n[i])) }) }) } o = st.getText = function (e) { var t, n = "", r = 0, i = e.nodeType; if (i) { if (1 === i || 9 === i || 11 === i) { if ("string" == typeof e.textContent) return e.textContent; for (e = e.firstChild; e; e = e.nextSibling) n += o(e) } else if (3 === i || 4 === i) return e.nodeValue } else for (; t = e[r]; r++) n += o(t); return n }, i = st.selectors = { cacheLength: 50, createPseudo: ot, match: U, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling"} }, preFilter: { ATTR: function (e) { return e[1] = e[1].replace(et, tt), e[3] = (e[4] || e[5] || "").replace(et, tt), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4) }, CHILD: function (e) { return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || st.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && st.error(e[0]), e }, PSEUDO: function (e) { var t, n = !e[5] && e[2]; return U.CHILD.test(e[0]) ? null : (e[4] ? e[2] = e[4] : n && z.test(n) && (t = ft(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3)) } }, filter: { TAG: function (e) { return "*" === e ? function () { return !0 } : (e = e.replace(et, tt).toLowerCase(), function (t) { return t.nodeName && t.nodeName.toLowerCase() === e }) }, CLASS: function (e) { var t = k[e + " "]; return t || (t = RegExp("(^|" + _ + ")" + e + "(" + _ + "|$)")) && k(e, function (e) { return t.test(e.className || typeof e.getAttribute !== A && e.getAttribute("class") || "") }) }, ATTR: function (e, t, n) { return function (r) { var i = st.attr(r, e); return null == i ? "!=" === t : t ? (i += "", "=" === t ? i === n : "!=" === t ? i !== n : "^=" === t ? n && 0 === i.indexOf(n) : "*=" === t ? n && i.indexOf(n) > -1 : "$=" === t ? n && i.slice(-n.length) === n : "~=" === t ? (" " + i + " ").indexOf(n) > -1 : "|=" === t ? i === n || i.slice(0, n.length + 1) === n + "-" : !1) : !0 } }, CHILD: function (e, t, n, r, i) { var o = "nth" !== e.slice(0, 3), a = "last" !== e.slice(-4), s = "of-type" === t; return 1 === r && 0 === i ? function (e) { return !!e.parentNode } : function (t, n, u) { var l, c, p, f, d, h, g = o !== a ? "nextSibling" : "previousSibling", m = t.parentNode, y = s && t.nodeName.toLowerCase(), v = !u && !s; if (m) { if (o) { while (g) { p = t; while (p = p[g]) if (s ? p.nodeName.toLowerCase() === y : 1 === p.nodeType) return !1; h = g = "only" === e && !h && "nextSibling" } return !0 } if (h = [a ? m.firstChild : m.lastChild], a && v) { c = m[x] || (m[x] = {}), l = c[e] || [], d = l[0] === N && l[1], f = l[0] === N && l[2], p = d && m.childNodes[d]; while (p = ++d && p && p[g] || (f = d = 0) || h.pop()) if (1 === p.nodeType && ++f && p === t) { c[e] = [N, d, f]; break } } else if (v && (l = (t[x] || (t[x] = {}))[e]) && l[0] === N) f = l[1]; else while (p = ++d && p && p[g] || (f = d = 0) || h.pop()) if ((s ? p.nodeName.toLowerCase() === y : 1 === p.nodeType) && ++f && (v && ((p[x] || (p[x] = {}))[e] = [N, f]), p === t)) break; return f -= i, f === r || 0 === f % r && f / r >= 0 } } }, PSEUDO: function (e, t) { var n, r = i.pseudos[e] || i.setFilters[e.toLowerCase()] || st.error("unsupported pseudo: " + e); return r[x] ? r(t) : r.length > 1 ? (n = [e, e, "", t], i.setFilters.hasOwnProperty(e.toLowerCase()) ? ot(function (e, n) { var i, o = r(e, t), a = o.length; while (a--) i = M.call(e, o[a]), e[i] = !(n[i] = o[a]) }) : function (e) { return r(e, 0, n) }) : r } }, pseudos: { not: ot(function (e) { var t = [], n = [], r = s(e.replace(W, "$1")); return r[x] ? ot(function (e, t, n, i) { var o, a = r(e, null, i, []), s = e.length; while (s--) (o = a[s]) && (e[s] = !(t[s] = o)) }) : function (e, i, o) { return t[0] = e, r(t, null, o, n), !n.pop() } }), has: ot(function (e) { return function (t) { return st(e, t).length > 0 } }), contains: ot(function (e) { return function (t) { return (t.textContent || t.innerText || o(t)).indexOf(e) > -1 } }), lang: ot(function (e) { return X.test(e || "") || st.error("unsupported lang: " + e), e = e.replace(et, tt).toLowerCase(), function (t) { var n; do if (n = d ? t.getAttribute("xml:lang") || t.getAttribute("lang") : t.lang) return n = n.toLowerCase(), n === e || 0 === n.indexOf(e + "-"); while ((t = t.parentNode) && 1 === t.nodeType); return !1 } }), target: function (t) { var n = e.location && e.location.hash; return n && n.slice(1) === t.id }, root: function (e) { return e === f }, focus: function (e) { return e === p.activeElement && (!p.hasFocus || p.hasFocus()) && !!(e.type || e.href || ~e.tabIndex) }, enabled: function (e) { return e.disabled === !1 }, disabled: function (e) { return e.disabled === !0 }, checked: function (e) { var t = e.nodeName.toLowerCase(); return "input" === t && !!e.checked || "option" === t && !!e.selected }, selected: function (e) { return e.parentNode && e.parentNode.selectedIndex, e.selected === !0 }, empty: function (e) { for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeName > "@" || 3 === e.nodeType || 4 === e.nodeType) return !1; return !0 }, parent: function (e) { return !i.pseudos.empty(e) }, header: function (e) { return Q.test(e.nodeName) }, input: function (e) { return G.test(e.nodeName) }, button: function (e) { var t = e.nodeName.toLowerCase(); return "input" === t && "button" === e.type || "button" === t }, text: function (e) { var t; return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || t.toLowerCase() === e.type) }, first: pt(function () { return [0] }), last: pt(function (e, t) { return [t - 1] }), eq: pt(function (e, t, n) { return [0 > n ? n + t : n] }), even: pt(function (e, t) { var n = 0; for (; t > n; n += 2) e.push(n); return e }), odd: pt(function (e, t) { var n = 1; for (; t > n; n += 2) e.push(n); return e }), lt: pt(function (e, t, n) { var r = 0 > n ? n + t : n; for (; --r >= 0; ) e.push(r); return e }), gt: pt(function (e, t, n) { var r = 0 > n ? n + t : n; for (; t > ++r; ) e.push(r); return e })} }; for (n in { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) i.pseudos[n] = lt(n); for (n in { submit: !0, reset: !0 }) i.pseudos[n] = ct(n); function ft(e, t) { var n, r, o, a, s, u, l, c = E[e + " "]; if (c) return t ? 0 : c.slice(0); s = e, u = [], l = i.preFilter; while (s) { (!n || (r = $.exec(s))) && (r && (s = s.slice(r[0].length) || s), u.push(o = [])), n = !1, (r = I.exec(s)) && (n = r.shift(), o.push({ value: n, type: r[0].replace(W, " ") }), s = s.slice(n.length)); for (a in i.filter) !(r = U[a].exec(s)) || l[a] && !(r = l[a](r)) || (n = r.shift(), o.push({ value: n, type: a, matches: r }), s = s.slice(n.length)); if (!n) break } return t ? s.length : s ? st.error(e) : E(e, u).slice(0) } function dt(e) { var t = 0, n = e.length, r = ""; for (; n > t; t++) r += e[t].value; return r } function ht(e, t, n) { var i = t.dir, o = n && "parentNode" === i, a = C++; return t.first ? function (t, n, r) { while (t = t[i]) if (1 === t.nodeType || o) return e(t, n, r) } : function (t, n, s) { var u, l, c, p = N + " " + a; if (s) { while (t = t[i]) if ((1 === t.nodeType || o) && e(t, n, s)) return !0 } else while (t = t[i]) if (1 === t.nodeType || o) if (c = t[x] || (t[x] = {}), (l = c[i]) && l[0] === p) { if ((u = l[1]) === !0 || u === r) return u === !0 } else if (l = c[i] = [p], l[1] = e(t, n, s) || r, l[1] === !0) return !0 } } function gt(e) { return e.length > 1 ? function (t, n, r) { var i = e.length; while (i--) if (!e[i](t, n, r)) return !1; return !0 } : e[0] } function mt(e, t, n, r, i) { var o, a = [], s = 0, u = e.length, l = null != t; for (; u > s; s++) (o = e[s]) && (!n || n(o, r, i)) && (a.push(o), l && t.push(s)); return a } function yt(e, t, n, r, i, o) { return r && !r[x] && (r = yt(r)), i && !i[x] && (i = yt(i, o)), ot(function (o, a, s, u) { var l, c, p, f = [], d = [], h = a.length, g = o || xt(t || "*", s.nodeType ? [s] : s, []), m = !e || !o && t ? g : mt(g, f, e, s, u), y = n ? i || (o ? e : h || r) ? [] : a : m; if (n && n(m, y, s, u), r) { l = mt(y, d), r(l, [], s, u), c = l.length; while (c--) (p = l[c]) && (y[d[c]] = !(m[d[c]] = p)) } if (o) { if (i || e) { if (i) { l = [], c = y.length; while (c--) (p = y[c]) && l.push(m[c] = p); i(null, y = [], l, u) } c = y.length; while (c--) (p = y[c]) && (l = i ? M.call(o, p) : f[c]) > -1 && (o[l] = !(a[l] = p)) } } else y = mt(y === a ? y.splice(h, y.length) : y), i ? i(null, a, y, u) : H.apply(a, y) }) } function vt(e) { var t, n, r, o = e.length, a = i.relative[e[0].type], s = a || i.relative[" "], u = a ? 1 : 0, c = ht(function (e) { return e === t }, s, !0), p = ht(function (e) { return M.call(t, e) > -1 }, s, !0), f = [function (e, n, r) { return !a && (r || n !== l) || ((t = n).nodeType ? c(e, n, r) : p(e, n, r)) } ]; for (; o > u; u++) if (n = i.relative[e[u].type]) f = [ht(gt(f), n)]; else { if (n = i.filter[e[u].type].apply(null, e[u].matches), n[x]) { for (r = ++u; o > r; r++) if (i.relative[e[r].type]) break; return yt(u > 1 && gt(f), u > 1 && dt(e.slice(0, u - 1)).replace(W, "$1"), n, r > u && vt(e.slice(u, r)), o > r && vt(e = e.slice(r)), o > r && dt(e)) } f.push(n) } return gt(f) } function bt(e, t) { var n = 0, o = t.length > 0, a = e.length > 0, s = function (s, u, c, f, d) { var h, g, m, y = [], v = 0, b = "0", x = s && [], w = null != d, T = l, C = s || a && i.find.TAG("*", d && u.parentNode || u), k = N += null == T ? 1 : Math.random() || .1; for (w && (l = u !== p && u, r = n); null != (h = C[b]); b++) { if (a && h) { g = 0; while (m = e[g++]) if (m(h, u, c)) { f.push(h); break } w && (N = k, r = ++n) } o && ((h = !m && h) && v--, s && x.push(h)) } if (v += b, o && b !== v) { g = 0; while (m = t[g++]) m(x, y, u, c); if (s) { if (v > 0) while (b--) x[b] || y[b] || (y[b] = L.call(f)); y = mt(y) } H.apply(f, y), w && !s && y.length > 0 && v + t.length > 1 && st.uniqueSort(f) } return w && (N = k, l = T), x }; return o ? ot(s) : s } s = st.compile = function (e, t) { var n, r = [], i = [], o = S[e + " "]; if (!o) { t || (t = ft(e)), n = t.length; while (n--) o = vt(t[n]), o[x] ? r.push(o) : i.push(o); o = S(e, bt(i, r)) } return o }; function xt(e, t, n) { var r = 0, i = t.length; for (; i > r; r++) st(e, t[r], n); return n } function wt(e, t, n, r) { var o, a, u, l, c, p = ft(e); if (!r && 1 === p.length) { if (a = p[0] = p[0].slice(0), a.length > 2 && "ID" === (u = a[0]).type && 9 === t.nodeType && !d && i.relative[a[1].type]) { if (t = i.find.ID(u.matches[0].replace(et, tt), t)[0], !t) return n; e = e.slice(a.shift().value.length) } o = U.needsContext.test(e) ? 0 : a.length; while (o--) { if (u = a[o], i.relative[l = u.type]) break; if ((c = i.find[l]) && (r = c(u.matches[0].replace(et, tt), V.test(a[0].type) && t.parentNode || t))) { if (a.splice(o, 1), e = r.length && dt(a), !e) return H.apply(n, q.call(r, 0)), n; break } } } return s(e, p)(r, t, d, n, V.test(e)), n } i.pseudos.nth = i.pseudos.eq; function Tt() { } i.filters = Tt.prototype = i.pseudos, i.setFilters = new Tt, c(), st.attr = b.attr, b.find = st, b.expr = st.selectors, b.expr[":"] = b.expr.pseudos, b.unique = st.uniqueSort, b.text = st.getText, b.isXMLDoc = st.isXML, b.contains = st.contains } (e); var at = /Until$/, st = /^(?:parents|prev(?:Until|All))/, ut = /^.[^:#\[\.,]*$/, lt = b.expr.match.needsContext, ct = { children: !0, contents: !0, next: !0, prev: !0 }; b.fn.extend({ find: function (e) { var t, n, r, i = this.length; if ("string" != typeof e) return r = this, this.pushStack(b(e).filter(function () { for (t = 0; i > t; t++) if (b.contains(r[t], this)) return !0 })); for (n = [], t = 0; i > t; t++) b.find(e, this[t], n); return n = this.pushStack(i > 1 ? b.unique(n) : n), n.selector = (this.selector ? this.selector + " " : "") + e, n }, has: function (e) { var t, n = b(e, this), r = n.length; return this.filter(function () { for (t = 0; r > t; t++) if (b.contains(this, n[t])) return !0 }) }, not: function (e) { return this.pushStack(ft(this, e, !1)) }, filter: function (e) { return this.pushStack(ft(this, e, !0)) }, is: function (e) { return !!e && ("string" == typeof e ? lt.test(e) ? b(e, this.context).index(this[0]) >= 0 : b.filter(e, this).length > 0 : this.filter(e).length > 0) }, closest: function (e, t) { var n, r = 0, i = this.length, o = [], a = lt.test(e) || "string" != typeof e ? b(e, t || this.context) : 0; for (; i > r; r++) { n = this[r]; while (n && n.ownerDocument && n !== t && 11 !== n.nodeType) { if (a ? a.index(n) > -1 : b.find.matchesSelector(n, e)) { o.push(n); break } n = n.parentNode } } return this.pushStack(o.length > 1 ? b.unique(o) : o) }, index: function (e) { return e ? "string" == typeof e ? b.inArray(this[0], b(e)) : b.inArray(e.jquery ? e[0] : e, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 }, add: function (e, t) { var n = "string" == typeof e ? b(e, t) : b.makeArray(e && e.nodeType ? [e] : e), r = b.merge(this.get(), n); return this.pushStack(b.unique(r)) }, addBack: function (e) { return this.add(null == e ? this.prevObject : this.prevObject.filter(e)) } }), b.fn.andSelf = b.fn.addBack; function pt(e, t) { do e = e[t]; while (e && 1 !== e.nodeType); return e } b.each({ parent: function (e) { var t = e.parentNode; return t && 11 !== t.nodeType ? t : null }, parents: function (e) { return b.dir(e, "parentNode") }, parentsUntil: function (e, t, n) { return b.dir(e, "parentNode", n) }, next: function (e) { return pt(e, "nextSibling") }, prev: function (e) { return pt(e, "previousSibling") }, nextAll: function (e) { return b.dir(e, "nextSibling") }, prevAll: function (e) { return b.dir(e, "previousSibling") }, nextUntil: function (e, t, n) { return b.dir(e, "nextSibling", n) }, prevUntil: function (e, t, n) { return b.dir(e, "previousSibling", n) }, siblings: function (e) { return b.sibling((e.parentNode || {}).firstChild, e) }, children: function (e) { return b.sibling(e.firstChild) }, contents: function (e) { return b.nodeName(e, "iframe") ? e.contentDocument || e.contentWindow.document : b.merge([], e.childNodes) } }, function (e, t) { b.fn[e] = function (n, r) { var i = b.map(this, t, n); return at.test(e) || (r = n), r && "string" == typeof r && (i = b.filter(r, i)), i = this.length > 1 && !ct[e] ? b.unique(i) : i, this.length > 1 && st.test(e) && (i = i.reverse()), this.pushStack(i) } }), b.extend({ filter: function (e, t, n) { return n && (e = ":not(" + e + ")"), 1 === t.length ? b.find.matchesSelector(t[0], e) ? [t[0]] : [] : b.find.matches(e, t) }, dir: function (e, n, r) { var i = [], o = e[n]; while (o && 9 !== o.nodeType && (r === t || 1 !== o.nodeType || !b(o).is(r))) 1 === o.nodeType && i.push(o), o = o[n]; return i }, sibling: function (e, t) { var n = []; for (; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e); return n } }); function ft(e, t, n) { if (t = t || 0, b.isFunction(t)) return b.grep(e, function (e, r) { var i = !!t.call(e, r, e); return i === n }); if (t.nodeType) return b.grep(e, function (e) { return e === t === n }); if ("string" == typeof t) { var r = b.grep(e, function (e) { return 1 === e.nodeType }); if (ut.test(t)) return b.filter(t, r, !n); t = b.filter(t, r) } return b.grep(e, function (e) { return b.inArray(e, t) >= 0 === n }) } function dt(e) { var t = ht.split("|"), n = e.createDocumentFragment(); if (n.createElement) while (t.length) n.createElement(t.pop()); return n } var ht = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", gt = / jQuery\d+="(?:null|\d+)"/g, mt = RegExp("<(?:" + ht + ")[\\s/>]", "i"), yt = /^\s+/, vt = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, bt = /<([\w:]+)/, xt = /<tbody/i, wt = /<|&#?\w+;/, Tt = /<(?:script|style|link)/i, Nt = /^(?:checkbox|radio)$/i, Ct = /checked\s*(?:[^=]|=\s*.checked.)/i, kt = /^$|\/(?:java|ecma)script/i, Et = /^true\/(.*)/, St = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, At = { option: [1, "<select multiple='multiple'>", "</select>"], legend: [1, "<fieldset>", "</fieldset>"], area: [1, "<map>", "</map>"], param: [1, "<object>", "</object>"], thead: [1, "<table>", "</table>"], tr: [2, "<table><tbody>", "</tbody></table>"], col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], _default: b.support.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"] }, jt = dt(o), Dt = jt.appendChild(o.createElement("div")); At.optgroup = At.option, At.tbody = At.tfoot = At.colgroup = At.caption = At.thead, At.th = At.td, b.fn.extend({ text: function (e) { return b.access(this, function (e) { return e === t ? b.text(this) : this.empty().append((this[0] && this[0].ownerDocument || o).createTextNode(e)) }, null, e, arguments.length) }, wrapAll: function (e) { if (b.isFunction(e)) return this.each(function (t) { b(this).wrapAll(e.call(this, t)) }); if (this[0]) { var t = b(e, this[0].ownerDocument).eq(0).clone(!0); this[0].parentNode && t.insertBefore(this[0]), t.map(function () { var e = this; while (e.firstChild && 1 === e.firstChild.nodeType) e = e.firstChild; return e }).append(this) } return this }, wrapInner: function (e) { return b.isFunction(e) ? this.each(function (t) { b(this).wrapInner(e.call(this, t)) }) : this.each(function () { var t = b(this), n = t.contents(); n.length ? n.wrapAll(e) : t.append(e) }) }, wrap: function (e) { var t = b.isFunction(e); return this.each(function (n) { b(this).wrapAll(t ? e.call(this, n) : e) }) }, unwrap: function () { return this.parent().each(function () { b.nodeName(this, "body") || b(this).replaceWith(this.childNodes) }).end() }, append: function () { return this.domManip(arguments, !0, function (e) { (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.appendChild(e) }) }, prepend: function () { return this.domManip(arguments, !0, function (e) { (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.insertBefore(e, this.firstChild) }) }, before: function () { return this.domManip(arguments, !1, function (e) { this.parentNode && this.parentNode.insertBefore(e, this) }) }, after: function () { return this.domManip(arguments, !1, function (e) { this.parentNode && this.parentNode.insertBefore(e, this.nextSibling) }) }, remove: function (e, t) { var n, r = 0; for (; null != (n = this[r]); r++) (!e || b.filter(e, [n]).length > 0) && (t || 1 !== n.nodeType || b.cleanData(Ot(n)), n.parentNode && (t && b.contains(n.ownerDocument, n) && Mt(Ot(n, "script")), n.parentNode.removeChild(n))); return this }, empty: function () { var e, t = 0; for (; null != (e = this[t]); t++) { 1 === e.nodeType && b.cleanData(Ot(e, !1)); while (e.firstChild) e.removeChild(e.firstChild); e.options && b.nodeName(e, "select") && (e.options.length = 0) } return this }, clone: function (e, t) { return e = null == e ? !1 : e, t = null == t ? e : t, this.map(function () { return b.clone(this, e, t) }) }, html: function (e) { return b.access(this, function (e) { var n = this[0] || {}, r = 0, i = this.length; if (e === t) return 1 === n.nodeType ? n.innerHTML.replace(gt, "") : t; if (!("string" != typeof e || Tt.test(e) || !b.support.htmlSerialize && mt.test(e) || !b.support.leadingWhitespace && yt.test(e) || At[(bt.exec(e) || ["", ""])[1].toLowerCase()])) { e = e.replace(vt, "<$1></$2>"); try { for (; i > r; r++) n = this[r] || {}, 1 === n.nodeType && (b.cleanData(Ot(n, !1)), n.innerHTML = e); n = 0 } catch (o) { } } n && this.empty().append(e) }, null, e, arguments.length) }, replaceWith: function (e) { var t = b.isFunction(e); return t || "string" == typeof e || (e = b(e).not(this).detach()), this.domManip([e], !0, function (e) { var t = this.nextSibling, n = this.parentNode; n && (b(this).remove(), n.insertBefore(e, t)) }) }, detach: function (e) { return this.remove(e, !0) }, domManip: function (e, n, r) { e = f.apply([], e); var i, o, a, s, u, l, c = 0, p = this.length, d = this, h = p - 1, g = e[0], m = b.isFunction(g); if (m || !(1 >= p || "string" != typeof g || b.support.checkClone) && Ct.test(g)) return this.each(function (i) { var o = d.eq(i); m && (e[0] = g.call(this, i, n ? o.html() : t)), o.domManip(e, n, r) }); if (p && (l = b.buildFragment(e, this[0].ownerDocument, !1, this), i = l.firstChild, 1 === l.childNodes.length && (l = i), i)) { for (n = n && b.nodeName(i, "tr"), s = b.map(Ot(l, "script"), Ht), a = s.length; p > c; c++) o = l, c !== h && (o = b.clone(o, !0, !0), a && b.merge(s, Ot(o, "script"))), r.call(n && b.nodeName(this[c], "table") ? Lt(this[c], "tbody") : this[c], o, c); if (a) for (u = s[s.length - 1].ownerDocument, b.map(s, qt), c = 0; a > c; c++) o = s[c], kt.test(o.type || "") && !b._data(o, "globalEval") && b.contains(u, o) && (o.src ? b.ajax({ url: o.src, type: "GET", dataType: "script", async: !1, global: !1, "throws": !0 }) : b.globalEval((o.text || o.textContent || o.innerHTML || "").replace(St, ""))); l = i = null } return this } }); function Lt(e, t) { return e.getElementsByTagName(t)[0] || e.appendChild(e.ownerDocument.createElement(t)) } function Ht(e) { var t = e.getAttributeNode("type"); return e.type = (t && t.specified) + "/" + e.type, e } function qt(e) { var t = Et.exec(e.type); return t ? e.type = t[1] : e.removeAttribute("type"), e } function Mt(e, t) { var n, r = 0; for (; null != (n = e[r]); r++) b._data(n, "globalEval", !t || b._data(t[r], "globalEval")) } function _t(e, t) { if (1 === t.nodeType && b.hasData(e)) { var n, r, i, o = b._data(e), a = b._data(t, o), s = o.events; if (s) { delete a.handle, a.events = {}; for (n in s) for (r = 0, i = s[n].length; i > r; r++) b.event.add(t, n, s[n][r]) } a.data && (a.data = b.extend({}, a.data)) } } function Ft(e, t) { var n, r, i; if (1 === t.nodeType) { if (n = t.nodeName.toLowerCase(), !b.support.noCloneEvent && t[b.expando]) { i = b._data(t); for (r in i.events) b.removeEvent(t, r, i.handle); t.removeAttribute(b.expando) } "script" === n && t.text !== e.text ? (Ht(t).text = e.text, qt(t)) : "object" === n ? (t.parentNode && (t.outerHTML = e.outerHTML), b.support.html5Clone && e.innerHTML && !b.trim(t.innerHTML) && (t.innerHTML = e.innerHTML)) : "input" === n && Nt.test(e.type) ? (t.defaultChecked = t.checked = e.checked, t.value !== e.value && (t.value = e.value)) : "option" === n ? t.defaultSelected = t.selected = e.defaultSelected : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue) } } b.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (e, t) { b.fn[e] = function (e) { var n, r = 0, i = [], o = b(e), a = o.length - 1; for (; a >= r; r++) n = r === a ? this : this.clone(!0), b(o[r])[t](n), d.apply(i, n.get()); return this.pushStack(i) } }); function Ot(e, n) { var r, o, a = 0, s = typeof e.getElementsByTagName !== i ? e.getElementsByTagName(n || "*") : typeof e.querySelectorAll !== i ? e.querySelectorAll(n || "*") : t; if (!s) for (s = [], r = e.childNodes || e; null != (o = r[a]); a++) !n || b.nodeName(o, n) ? s.push(o) : b.merge(s, Ot(o, n)); return n === t || n && b.nodeName(e, n) ? b.merge([e], s) : s } function Bt(e) { Nt.test(e.type) && (e.defaultChecked = e.checked) } b.extend({ clone: function (e, t, n) { var r, i, o, a, s, u = b.contains(e.ownerDocument, e); if (b.support.html5Clone || b.isXMLDoc(e) || !mt.test("<" + e.nodeName + ">") ? o = e.cloneNode(!0) : (Dt.innerHTML = e.outerHTML, Dt.removeChild(o = Dt.firstChild)), !(b.support.noCloneEvent && b.support.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || b.isXMLDoc(e))) for (r = Ot(o), s = Ot(e), a = 0; null != (i = s[a]); ++a) r[a] && Ft(i, r[a]); if (t) if (n) for (s = s || Ot(e), r = r || Ot(o), a = 0; null != (i = s[a]); a++) _t(i, r[a]); else _t(e, o); return r = Ot(o, "script"), r.length > 0 && Mt(r, !u && Ot(e, "script")), r = s = i = null, o }, buildFragment: function (e, t, n, r) {\r
+        var i, o, a, s, u, l, c, p = e.length, f = dt(t), d = [], h = 0; for (; p > h; h++) if (o = e[h], o || 0 === o) if ("object" === b.type(o)) b.merge(d, o.nodeType ? [o] : o); else if (wt.test(o)) {\r
+            s = s || f.appendChild(t.createElement("div")), u = (bt.exec(o) || ["", ""])[1].toLowerCase(), c = At[u] || At._default, s.innerHTML = c[1] + o.replace(vt, "<$1></$2>") + c[2], i = c[0]; while (i--) s = s.lastChild; if (!b.support.leadingWhitespace && yt.test(o) && d.push(t.createTextNode(yt.exec(o)[0])), !b.support.tbody) {\r
+                o = "table" !== u || xt.test(o) ? "<table>" !== c[1] || xt.test(o) ? 0 : s : s.firstChild, i = o && o.childNodes.length; while (i--) b.nodeName(l = o.childNodes[i], "tbody") && !l.childNodes.length && o.removeChild(l)\r
+            } b.merge(d, s.childNodes), s.textContent = ""; while (s.firstChild) s.removeChild(s.firstChild); s = f.lastChild\r
+        } else d.push(t.createTextNode(o)); s && f.removeChild(s), b.support.appendChecked || b.grep(Ot(d, "input"), Bt), h = 0; while (o = d[h++]) if ((!r || -1 === b.inArray(o, r)) && (a = b.contains(o.ownerDocument, o), s = Ot(f.appendChild(o), "script"), a && Mt(s), n)) { i = 0; while (o = s[i++]) kt.test(o.type || "") && n.push(o) } return s = null, f\r
+    }, cleanData: function (e, t) { var n, r, o, a, s = 0, u = b.expando, l = b.cache, p = b.support.deleteExpando, f = b.event.special; for (; null != (n = e[s]); s++) if ((t || b.acceptData(n)) && (o = n[u], a = o && l[o])) { if (a.events) for (r in a.events) f[r] ? b.event.remove(n, r) : b.removeEvent(n, r, a.handle); l[o] && (delete l[o], p ? delete n[u] : typeof n.removeAttribute !== i ? n.removeAttribute(u) : n[u] = null, c.push(o)) } } \r
+    }); var Pt, Rt, Wt, $t = /alpha\([^)]*\)/i, It = /opacity\s*=\s*([^)]*)/, zt = /^(top|right|bottom|left)$/, Xt = /^(none|table(?!-c[ea]).+)/, Ut = /^margin/, Vt = RegExp("^(" + x + ")(.*)$", "i"), Yt = RegExp("^(" + x + ")(?!px)[a-z%]+$", "i"), Jt = RegExp("^([+-])=(" + x + ")", "i"), Gt = { BODY: "block" }, Qt = { position: "absolute", visibility: "hidden", display: "block" }, Kt = { letterSpacing: 0, fontWeight: 400 }, Zt = ["Top", "Right", "Bottom", "Left"], en = ["Webkit", "O", "Moz", "ms"]; function tn(e, t) { if (t in e) return t; var n = t.charAt(0).toUpperCase() + t.slice(1), r = t, i = en.length; while (i--) if (t = en[i] + n, t in e) return t; return r } function nn(e, t) { return e = t || e, "none" === b.css(e, "display") || !b.contains(e.ownerDocument, e) } function rn(e, t) { var n, r, i, o = [], a = 0, s = e.length; for (; s > a; a++) r = e[a], r.style && (o[a] = b._data(r, "olddisplay"), n = r.style.display, t ? (o[a] || "none" !== n || (r.style.display = ""), "" === r.style.display && nn(r) && (o[a] = b._data(r, "olddisplay", un(r.nodeName)))) : o[a] || (i = nn(r), (n && "none" !== n || !i) && b._data(r, "olddisplay", i ? n : b.css(r, "display")))); for (a = 0; s > a; a++) r = e[a], r.style && (t && "none" !== r.style.display && "" !== r.style.display || (r.style.display = t ? o[a] || "" : "none")); return e } b.fn.extend({ css: function (e, n) { return b.access(this, function (e, n, r) { var i, o, a = {}, s = 0; if (b.isArray(n)) { for (o = Rt(e), i = n.length; i > s; s++) a[n[s]] = b.css(e, n[s], !1, o); return a } return r !== t ? b.style(e, n, r) : b.css(e, n) }, e, n, arguments.length > 1) }, show: function () { return rn(this, !0) }, hide: function () { return rn(this) }, toggle: function (e) { var t = "boolean" == typeof e; return this.each(function () { (t ? e : nn(this)) ? b(this).show() : b(this).hide() }) } }), b.extend({ cssHooks: { opacity: { get: function (e, t) { if (t) { var n = Wt(e, "opacity"); return "" === n ? "1" : n } } } }, cssNumber: { columnCount: !0, fillOpacity: !0, fontWeight: !0, lineHeight: !0, opacity: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0 }, cssProps: { "float": b.support.cssFloat ? "cssFloat" : "styleFloat" }, style: function (e, n, r, i) { if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { var o, a, s, u = b.camelCase(n), l = e.style; if (n = b.cssProps[u] || (b.cssProps[u] = tn(l, u)), s = b.cssHooks[n] || b.cssHooks[u], r === t) return s && "get" in s && (o = s.get(e, !1, i)) !== t ? o : l[n]; if (a = typeof r, "string" === a && (o = Jt.exec(r)) && (r = (o[1] + 1) * o[2] + parseFloat(b.css(e, n)), a = "number"), !(null == r || "number" === a && isNaN(r) || ("number" !== a || b.cssNumber[u] || (r += "px"), b.support.clearCloneStyle || "" !== r || 0 !== n.indexOf("background") || (l[n] = "inherit"), s && "set" in s && (r = s.set(e, r, i)) === t))) try { l[n] = r } catch (c) { } } }, css: function (e, n, r, i) { var o, a, s, u = b.camelCase(n); return n = b.cssProps[u] || (b.cssProps[u] = tn(e.style, u)), s = b.cssHooks[n] || b.cssHooks[u], s && "get" in s && (a = s.get(e, !0, r)), a === t && (a = Wt(e, n, i)), "normal" === a && n in Kt && (a = Kt[n]), "" === r || r ? (o = parseFloat(a), r === !0 || b.isNumeric(o) ? o || 0 : a) : a }, swap: function (e, t, n, r) { var i, o, a = {}; for (o in t) a[o] = e.style[o], e.style[o] = t[o]; i = n.apply(e, r || []); for (o in t) e.style[o] = a[o]; return i } }), e.getComputedStyle ? (Rt = function (t) { return e.getComputedStyle(t, null) }, Wt = function (e, n, r) { var i, o, a, s = r || Rt(e), u = s ? s.getPropertyValue(n) || s[n] : t, l = e.style; return s && ("" !== u || b.contains(e.ownerDocument, e) || (u = b.style(e, n)), Yt.test(u) && Ut.test(n) && (i = l.width, o = l.minWidth, a = l.maxWidth, l.minWidth = l.maxWidth = l.width = u, u = s.width, l.width = i, l.minWidth = o, l.maxWidth = a)), u }) : o.documentElement.currentStyle && (Rt = function (e) { return e.currentStyle }, Wt = function (e, n, r) { var i, o, a, s = r || Rt(e), u = s ? s[n] : t, l = e.style; return null == u && l && l[n] && (u = l[n]), Yt.test(u) && !zt.test(n) && (i = l.left, o = e.runtimeStyle, a = o && o.left, a && (o.left = e.currentStyle.left), l.left = "fontSize" === n ? "1em" : u, u = l.pixelLeft + "px", l.left = i, a && (o.left = a)), "" === u ? "auto" : u }); function on(e, t, n) { var r = Vt.exec(t); return r ? Math.max(0, r[1] - (n || 0)) + (r[2] || "px") : t } function an(e, t, n, r, i) { var o = n === (r ? "border" : "content") ? 4 : "width" === t ? 1 : 0, a = 0; for (; 4 > o; o += 2) "margin" === n && (a += b.css(e, n + Zt[o], !0, i)), r ? ("content" === n && (a -= b.css(e, "padding" + Zt[o], !0, i)), "margin" !== n && (a -= b.css(e, "border" + Zt[o] + "Width", !0, i))) : (a += b.css(e, "padding" + Zt[o], !0, i), "padding" !== n && (a += b.css(e, "border" + Zt[o] + "Width", !0, i))); return a } function sn(e, t, n) { var r = !0, i = "width" === t ? e.offsetWidth : e.offsetHeight, o = Rt(e), a = b.support.boxSizing && "border-box" === b.css(e, "boxSizing", !1, o); if (0 >= i || null == i) { if (i = Wt(e, t, o), (0 > i || null == i) && (i = e.style[t]), Yt.test(i)) return i; r = a && (b.support.boxSizingReliable || i === e.style[t]), i = parseFloat(i) || 0 } return i + an(e, t, n || (a ? "border" : "content"), r, o) + "px" } function un(e) { var t = o, n = Gt[e]; return n || (n = ln(e, t), "none" !== n && n || (Pt = (Pt || b("<iframe frameborder='0' width='0' height='0'/>").css("cssText", "display:block !important")).appendTo(t.documentElement), t = (Pt[0].contentWindow || Pt[0].contentDocument).document, t.write("<!doctype html><html><body>"), t.close(), n = ln(e, t), Pt.detach()), Gt[e] = n), n } function ln(e, t) { var n = b(t.createElement(e)).appendTo(t.body), r = b.css(n[0], "display"); return n.remove(), r } b.each(["height", "width"], function (e, n) { b.cssHooks[n] = { get: function (e, r, i) { return r ? 0 === e.offsetWidth && Xt.test(b.css(e, "display")) ? b.swap(e, Qt, function () { return sn(e, n, i) }) : sn(e, n, i) : t }, set: function (e, t, r) { var i = r && Rt(e); return on(e, t, r ? an(e, n, r, b.support.boxSizing && "border-box" === b.css(e, "boxSizing", !1, i), i) : 0) } } }), b.support.opacity || (b.cssHooks.opacity = { get: function (e, t) { return It.test((t && e.currentStyle ? e.currentStyle.filter : e.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : t ? "1" : "" }, set: function (e, t) { var n = e.style, r = e.currentStyle, i = b.isNumeric(t) ? "alpha(opacity=" + 100 * t + ")" : "", o = r && r.filter || n.filter || ""; n.zoom = 1, (t >= 1 || "" === t) && "" === b.trim(o.replace($t, "")) && n.removeAttribute && (n.removeAttribute("filter"), "" === t || r && !r.filter) || (n.filter = $t.test(o) ? o.replace($t, i) : o + " " + i) } }), b(function () { b.support.reliableMarginRight || (b.cssHooks.marginRight = { get: function (e, n) { return n ? b.swap(e, { display: "inline-block" }, Wt, [e, "marginRight"]) : t } }), !b.support.pixelPosition && b.fn.position && b.each(["top", "left"], function (e, n) { b.cssHooks[n] = { get: function (e, r) { return r ? (r = Wt(e, n), Yt.test(r) ? b(e).position()[n] + "px" : r) : t } } }) }), b.expr && b.expr.filters && (b.expr.filters.hidden = function (e) { return 0 >= e.offsetWidth && 0 >= e.offsetHeight || !b.support.reliableHiddenOffsets && "none" === (e.style && e.style.display || b.css(e, "display")) }, b.expr.filters.visible = function (e) { return !b.expr.filters.hidden(e) }), b.each({ margin: "", padding: "", border: "Width" }, function (e, t) { b.cssHooks[e + t] = { expand: function (n) { var r = 0, i = {}, o = "string" == typeof n ? n.split(" ") : [n]; for (; 4 > r; r++) i[e + Zt[r] + t] = o[r] || o[r - 2] || o[0]; return i } }, Ut.test(e) || (b.cssHooks[e + t].set = on) }); var cn = /%20/g, pn = /\[\]$/, fn = /\r?\n/g, dn = /^(?:submit|button|image|reset|file)$/i, hn = /^(?:input|select|textarea|keygen)/i; b.fn.extend({ serialize: function () { return b.param(this.serializeArray()) }, serializeArray: function () { return this.map(function () { var e = b.prop(this, "elements"); return e ? b.makeArray(e) : this }).filter(function () { var e = this.type; return this.name && !b(this).is(":disabled") && hn.test(this.nodeName) && !dn.test(e) && (this.checked || !Nt.test(e)) }).map(function (e, t) { var n = b(this).val(); return null == n ? null : b.isArray(n) ? b.map(n, function (e) { return { name: t.name, value: e.replace(fn, "\r\n")} }) : { name: t.name, value: n.replace(fn, "\r\n")} }).get() } }), b.param = function (e, n) { var r, i = [], o = function (e, t) { t = b.isFunction(t) ? t() : null == t ? "" : t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t) }; if (n === t && (n = b.ajaxSettings && b.ajaxSettings.traditional), b.isArray(e) || e.jquery && !b.isPlainObject(e)) b.each(e, function () { o(this.name, this.value) }); else for (r in e) gn(r, e[r], n, o); return i.join("&").replace(cn, "+") }; function gn(e, t, n, r) { var i; if (b.isArray(t)) b.each(t, function (t, i) { n || pn.test(e) ? r(e, i) : gn(e + "[" + ("object" == typeof i ? t : "") + "]", i, n, r) }); else if (n || "object" !== b.type(t)) r(e, t); else for (i in t) gn(e + "[" + i + "]", t[i], n, r) } b.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function (e, t) { b.fn[t] = function (e, n) { return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t) } }), b.fn.hover = function (e, t) { return this.mouseenter(e).mouseleave(t || e) }; var mn, yn, vn = b.now(), bn = /\?/, xn = /#.*$/, wn = /([?&])_=[^&]*/, Tn = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm, Nn = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, Cn = /^(?:GET|HEAD)$/, kn = /^\/\//, En = /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, Sn = b.fn.load, An = {}, jn = {}, Dn = "*/".concat("*"); try { yn = a.href } catch (Ln) { yn = o.createElement("a"), yn.href = "", yn = yn.href } mn = En.exec(yn.toLowerCase()) || []; function Hn(e) { return function (t, n) { "string" != typeof t && (n = t, t = "*"); var r, i = 0, o = t.toLowerCase().match(w) || []; if (b.isFunction(n)) while (r = o[i++]) "+" === r[0] ? (r = r.slice(1) || "*", (e[r] = e[r] || []).unshift(n)) : (e[r] = e[r] || []).push(n) } } function qn(e, n, r, i) { var o = {}, a = e === jn; function s(u) { var l; return o[u] = !0, b.each(e[u] || [], function (e, u) { var c = u(n, r, i); return "string" != typeof c || a || o[c] ? a ? !(l = c) : t : (n.dataTypes.unshift(c), s(c), !1) }), l } return s(n.dataTypes[0]) || !o["*"] && s("*") } function Mn(e, n) { var r, i, o = b.ajaxSettings.flatOptions || {}; for (i in n) n[i] !== t && ((o[i] ? e : r || (r = {}))[i] = n[i]); return r && b.extend(!0, e, r), e } b.fn.load = function (e, n, r) { if ("string" != typeof e && Sn) return Sn.apply(this, arguments); var i, o, a, s = this, u = e.indexOf(" "); return u >= 0 && (i = e.slice(u, e.length), e = e.slice(0, u)), b.isFunction(n) ? (r = n, n = t) : n && "object" == typeof n && (a = "POST"), s.length > 0 && b.ajax({ url: e, type: a, dataType: "html", data: n }).done(function (e) { o = arguments, s.html(i ? b("<div>").append(b.parseHTML(e)).find(i) : e) }).complete(r && function (e, t) { s.each(r, o || [e.responseText, t, e]) }), this }, b.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) { b.fn[t] = function (e) { return this.on(t, e) } }), b.each(["get", "post"], function (e, n) { b[n] = function (e, r, i, o) { return b.isFunction(r) && (o = o || i, i = r, r = t), b.ajax({ url: e, type: n, dataType: o, data: r, success: i }) } }), b.extend({ active: 0, lastModified: {}, etag: {}, ajaxSettings: { url: yn, type: "GET", isLocal: Nn.test(mn[1]), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": Dn, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" }, contents: { xml: /xml/, html: /html/, json: /json/ }, responseFields: { xml: "responseXML", text: "responseText" }, converters: { "* text": e.String, "text html": !0, "text json": b.parseJSON, "text xml": b.parseXML }, flatOptions: { url: !0, context: !0} }, ajaxSetup: function (e, t) { return t ? Mn(Mn(e, b.ajaxSettings), t) : Mn(b.ajaxSettings, e) }, ajaxPrefilter: Hn(An), ajaxTransport: Hn(jn), ajax: function (e, n) { "object" == typeof e && (n = e, e = t), n = n || {}; var r, i, o, a, s, u, l, c, p = b.ajaxSetup({}, n), f = p.context || p, d = p.context && (f.nodeType || f.jquery) ? b(f) : b.event, h = b.Deferred(), g = b.Callbacks("once memory"), m = p.statusCode || {}, y = {}, v = {}, x = 0, T = "canceled", N = { readyState: 0, getResponseHeader: function (e) { var t; if (2 === x) { if (!c) { c = {}; while (t = Tn.exec(a)) c[t[1].toLowerCase()] = t[2] } t = c[e.toLowerCase()] } return null == t ? null : t }, getAllResponseHeaders: function () { return 2 === x ? a : null }, setRequestHeader: function (e, t) { var n = e.toLowerCase(); return x || (e = v[n] = v[n] || e, y[e] = t), this }, overrideMimeType: function (e) { return x || (p.mimeType = e), this }, statusCode: function (e) { var t; if (e) if (2 > x) for (t in e) m[t] = [m[t], e[t]]; else N.always(e[N.status]); return this }, abort: function (e) { var t = e || T; return l && l.abort(t), k(0, t), this } }; if (h.promise(N).complete = g.add, N.success = N.done, N.error = N.fail, p.url = ((e || p.url || yn) + "").replace(xn, "").replace(kn, mn[1] + "//"), p.type = n.method || n.type || p.method || p.type, p.dataTypes = b.trim(p.dataType || "*").toLowerCase().match(w) || [""], null == p.crossDomain && (r = En.exec(p.url.toLowerCase()), p.crossDomain = !(!r || r[1] === mn[1] && r[2] === mn[2] && (r[3] || ("http:" === r[1] ? 80 : 443)) == (mn[3] || ("http:" === mn[1] ? 80 : 443)))), p.data && p.processData && "string" != typeof p.data && (p.data = b.param(p.data, p.traditional)), qn(An, p, n, N), 2 === x) return N; u = p.global, u && 0 === b.active++ && b.event.trigger("ajaxStart"), p.type = p.type.toUpperCase(), p.hasContent = !Cn.test(p.type), o = p.url, p.hasContent || (p.data && (o = p.url += (bn.test(o) ? "&" : "?") + p.data, delete p.data), p.cache === !1 && (p.url = wn.test(o) ? o.replace(wn, "$1_=" + vn++) : o + (bn.test(o) ? "&" : "?") + "_=" + vn++)), p.ifModified && (b.lastModified[o] && N.setRequestHeader("If-Modified-Since", b.lastModified[o]), b.etag[o] && N.setRequestHeader("If-None-Match", b.etag[o])), (p.data && p.hasContent && p.contentType !== !1 || n.contentType) && N.setRequestHeader("Content-Type", p.contentType), N.setRequestHeader("Accept", p.dataTypes[0] && p.accepts[p.dataTypes[0]] ? p.accepts[p.dataTypes[0]] + ("*" !== p.dataTypes[0] ? ", " + Dn + "; q=0.01" : "") : p.accepts["*"]); for (i in p.headers) N.setRequestHeader(i, p.headers[i]); if (p.beforeSend && (p.beforeSend.call(f, N, p) === !1 || 2 === x)) return N.abort(); T = "abort"; for (i in { success: 1, error: 1, complete: 1 }) N[i](p[i]); if (l = qn(jn, p, n, N)) { N.readyState = 1, u && d.trigger("ajaxSend", [N, p]), p.async && p.timeout > 0 && (s = setTimeout(function () { N.abort("timeout") }, p.timeout)); try { x = 1, l.send(y, k) } catch (C) { if (!(2 > x)) throw C; k(-1, C) } } else k(-1, "No Transport"); function k(e, n, r, i) { var c, y, v, w, T, C = n; 2 !== x && (x = 2, s && clearTimeout(s), l = t, a = i || "", N.readyState = e > 0 ? 4 : 0, r && (w = _n(p, N, r)), e >= 200 && 300 > e || 304 === e ? (p.ifModified && (T = N.getResponseHeader("Last-Modified"), T && (b.lastModified[o] = T), T = N.getResponseHeader("etag"), T && (b.etag[o] = T)), 204 === e ? (c = !0, C = "nocontent") : 304 === e ? (c = !0, C = "notmodified") : (c = Fn(p, w), C = c.state, y = c.data, v = c.error, c = !v)) : (v = C, (e || !C) && (C = "error", 0 > e && (e = 0))), N.status = e, N.statusText = (n || C) + "", c ? h.resolveWith(f, [y, C, N]) : h.rejectWith(f, [N, C, v]), N.statusCode(m), m = t, u && d.trigger(c ? "ajaxSuccess" : "ajaxError", [N, p, c ? y : v]), g.fireWith(f, [N, C]), u && (d.trigger("ajaxComplete", [N, p]), --b.active || b.event.trigger("ajaxStop"))) } return N }, getScript: function (e, n) { return b.get(e, t, n, "script") }, getJSON: function (e, t, n) { return b.get(e, t, n, "json") } }); function _n(e, n, r) { var i, o, a, s, u = e.contents, l = e.dataTypes, c = e.responseFields; for (s in c) s in r && (n[c[s]] = r[s]); while ("*" === l[0]) l.shift(), o === t && (o = e.mimeType || n.getResponseHeader("Content-Type")); if (o) for (s in u) if (u[s] && u[s].test(o)) { l.unshift(s); break } if (l[0] in r) a = l[0]; else { for (s in r) { if (!l[0] || e.converters[s + " " + l[0]]) { a = s; break } i || (i = s) } a = a || i } return a ? (a !== l[0] && l.unshift(a), r[a]) : t } function Fn(e, t) { var n, r, i, o, a = {}, s = 0, u = e.dataTypes.slice(), l = u[0]; if (e.dataFilter && (t = e.dataFilter(t, e.dataType)), u[1]) for (i in e.converters) a[i.toLowerCase()] = e.converters[i]; for (; r = u[++s]; ) if ("*" !== r) { if ("*" !== l && l !== r) { if (i = a[l + " " + r] || a["* " + r], !i) for (n in a) if (o = n.split(" "), o[1] === r && (i = a[l + " " + o[0]] || a["* " + o[0]])) { i === !0 ? i = a[n] : a[n] !== !0 && (r = o[0], u.splice(s--, 0, r)); break } if (i !== !0) if (i && e["throws"]) t = i(t); else try { t = i(t) } catch (c) { return { state: "parsererror", error: i ? c : "No conversion from " + l + " to " + r} } } l = r } return { state: "success", data: t} } b.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /(?:java|ecma)script/ }, converters: { "text script": function (e) { return b.globalEval(e), e } } }), b.ajaxPrefilter("script", function (e) { e.cache === t && (e.cache = !1), e.crossDomain && (e.type = "GET", e.global = !1) }), b.ajaxTransport("script", function (e) { if (e.crossDomain) { var n, r = o.head || b("head")[0] || o.documentElement; return { send: function (t, i) { n = o.createElement("script"), n.async = !0, e.scriptCharset && (n.charset = e.scriptCharset), n.src = e.url, n.onload = n.onreadystatechange = function (e, t) { (t || !n.readyState || /loaded|complete/.test(n.readyState)) && (n.onload = n.onreadystatechange = null, n.parentNode && n.parentNode.removeChild(n), n = null, t || i(200, "success")) }, r.insertBefore(n, r.firstChild) }, abort: function () { n && n.onload(t, !0) } } } }); var On = [], Bn = /(=)\?(?=&|$)|\?\?/; b.ajaxSetup({ jsonp: "callback", jsonpCallback: function () { var e = On.pop() || b.expando + "_" + vn++; return this[e] = !0, e } }), b.ajaxPrefilter("json jsonp", function (n, r, i) { var o, a, s, u = n.jsonp !== !1 && (Bn.test(n.url) ? "url" : "string" == typeof n.data && !(n.contentType || "").indexOf("application/x-www-form-urlencoded") && Bn.test(n.data) && "data"); return u || "jsonp" === n.dataTypes[0] ? (o = n.jsonpCallback = b.isFunction(n.jsonpCallback) ? n.jsonpCallback() : n.jsonpCallback, u ? n[u] = n[u].replace(Bn, "$1" + o) : n.jsonp !== !1 && (n.url += (bn.test(n.url) ? "&" : "?") + n.jsonp + "=" + o), n.converters["script json"] = function () { return s || b.error(o + " was not called"), s[0] }, n.dataTypes[0] = "json", a = e[o], e[o] = function () { s = arguments }, i.always(function () { e[o] = a, n[o] && (n.jsonpCallback = r.jsonpCallback, On.push(o)), s && b.isFunction(a) && a(s[0]), s = a = t }), "script") : t }); var Pn, Rn, Wn = 0, $n = e.ActiveXObject && function () { var e; for (e in Pn) Pn[e](t, !0) }; function In() { try { return new e.XMLHttpRequest } catch (t) { } } function zn() { try { return new e.ActiveXObject("Microsoft.XMLHTTP") } catch (t) { } } b.ajaxSettings.xhr = e.ActiveXObject ? function () { return !this.isLocal && In() || zn() } : In, Rn = b.ajaxSettings.xhr(), b.support.cors = !!Rn && "withCredentials" in Rn, Rn = b.support.ajax = !!Rn, Rn && b.ajaxTransport(function (n) { if (!n.crossDomain || b.support.cors) { var r; return { send: function (i, o) { var a, s, u = n.xhr(); if (n.username ? u.open(n.type, n.url, n.async, n.username, n.password) : u.open(n.type, n.url, n.async), n.xhrFields) for (s in n.xhrFields) u[s] = n.xhrFields[s]; n.mimeType && u.overrideMimeType && u.overrideMimeType(n.mimeType), n.crossDomain || i["X-Requested-With"] || (i["X-Requested-With"] = "XMLHttpRequest"); try { for (s in i) u.setRequestHeader(s, i[s]) } catch (l) { } u.send(n.hasContent && n.data || null), r = function (e, i) { var s, l, c, p; try { if (r && (i || 4 === u.readyState)) if (r = t, a && (u.onreadystatechange = b.noop, $n && delete Pn[a]), i) 4 !== u.readyState && u.abort(); else { p = {}, s = u.status, l = u.getAllResponseHeaders(), "string" == typeof u.responseText && (p.text = u.responseText); try { c = u.statusText } catch (f) { c = "" } s || !n.isLocal || n.crossDomain ? 1223 === s && (s = 204) : s = p.text ? 200 : 404 } } catch (d) { i || o(-1, d) } p && o(s, c, p, l) }, n.async ? 4 === u.readyState ? setTimeout(r) : (a = ++Wn, $n && (Pn || (Pn = {}, b(e).unload($n)), Pn[a] = r), u.onreadystatechange = r) : r() }, abort: function () { r && r(t, !0) } } } }); var Xn, Un, Vn = /^(?:toggle|show|hide)$/, Yn = RegExp("^(?:([+-])=|)(" + x + ")([a-z%]*)$", "i"), Jn = /queueHooks$/, Gn = [nr], Qn = { "*": [function (e, t) { var n, r, i = this.createTween(e, t), o = Yn.exec(t), a = i.cur(), s = +a || 0, u = 1, l = 20; if (o) { if (n = +o[2], r = o[3] || (b.cssNumber[e] ? "" : "px"), "px" !== r && s) { s = b.css(i.elem, e, !0) || n || 1; do u = u || ".5", s /= u, b.style(i.elem, e, s + r); while (u !== (u = i.cur() / a) && 1 !== u && --l) } i.unit = r, i.start = s, i.end = o[1] ? s + (o[1] + 1) * n : n } return i } ] }; function Kn() { return setTimeout(function () { Xn = t }), Xn = b.now() } function Zn(e, t) { b.each(t, function (t, n) { var r = (Qn[t] || []).concat(Qn["*"]), i = 0, o = r.length; for (; o > i; i++) if (r[i].call(e, t, n)) return }) } function er(e, t, n) { var r, i, o = 0, a = Gn.length, s = b.Deferred().always(function () { delete u.elem }), u = function () { if (i) return !1; var t = Xn || Kn(), n = Math.max(0, l.startTime + l.duration - t), r = n / l.duration || 0, o = 1 - r, a = 0, u = l.tweens.length; for (; u > a; a++) l.tweens[a].run(o); return s.notifyWith(e, [l, o, n]), 1 > o && u ? n : (s.resolveWith(e, [l]), !1) }, l = s.promise({ elem: e, props: b.extend({}, t), opts: b.extend(!0, { specialEasing: {} }, n), originalProperties: t, originalOptions: n, startTime: Xn || Kn(), duration: n.duration, tweens: [], createTween: function (t, n) { var r = b.Tween(e, l.opts, t, n, l.opts.specialEasing[t] || l.opts.easing); return l.tweens.push(r), r }, stop: function (t) { var n = 0, r = t ? l.tweens.length : 0; if (i) return this; for (i = !0; r > n; n++) l.tweens[n].run(1); return t ? s.resolveWith(e, [l, t]) : s.rejectWith(e, [l, t]), this } }), c = l.props; for (tr(c, l.opts.specialEasing); a > o; o++) if (r = Gn[o].call(l, e, c, l.opts)) return r; return Zn(l, c), b.isFunction(l.opts.start) && l.opts.start.call(e, l), b.fx.timer(b.extend(u, { elem: e, anim: l, queue: l.opts.queue })), l.progress(l.opts.progress).done(l.opts.done, l.opts.complete).fail(l.opts.fail).always(l.opts.always) } function tr(e, t) { var n, r, i, o, a; for (i in e) if (r = b.camelCase(i), o = t[r], n = e[i], b.isArray(n) && (o = n[1], n = e[i] = n[0]), i !== r && (e[r] = n, delete e[i]), a = b.cssHooks[r], a && "expand" in a) { n = a.expand(n), delete e[r]; for (i in n) i in e || (e[i] = n[i], t[i] = o) } else t[r] = o } b.Animation = b.extend(er, { tweener: function (e, t) { b.isFunction(e) ? (t = e, e = ["*"]) : e = e.split(" "); var n, r = 0, i = e.length; for (; i > r; r++) n = e[r], Qn[n] = Qn[n] || [], Qn[n].unshift(t) }, prefilter: function (e, t) { t ? Gn.unshift(e) : Gn.push(e) } }); function nr(e, t, n) { var r, i, o, a, s, u, l, c, p, f = this, d = e.style, h = {}, g = [], m = e.nodeType && nn(e); n.queue || (c = b._queueHooks(e, "fx"), null == c.unqueued && (c.unqueued = 0, p = c.empty.fire, c.empty.fire = function () { c.unqueued || p() }), c.unqueued++, f.always(function () { f.always(function () { c.unqueued--, b.queue(e, "fx").length || c.empty.fire() }) })), 1 === e.nodeType && ("height" in t || "width" in t) && (n.overflow = [d.overflow, d.overflowX, d.overflowY], "inline" === b.css(e, "display") && "none" === b.css(e, "float") && (b.support.inlineBlockNeedsLayout && "inline" !== un(e.nodeName) ? d.zoom = 1 : d.display = "inline-block")), n.overflow && (d.overflow = "hidden", b.support.shrinkWrapBlocks || f.always(function () { d.overflow = n.overflow[0], d.overflowX = n.overflow[1], d.overflowY = n.overflow[2] })); for (i in t) if (a = t[i], Vn.exec(a)) { if (delete t[i], u = u || "toggle" === a, a === (m ? "hide" : "show")) continue; g.push(i) } if (o = g.length) { s = b._data(e, "fxshow") || b._data(e, "fxshow", {}), "hidden" in s && (m = s.hidden), u && (s.hidden = !m), m ? b(e).show() : f.done(function () { b(e).hide() }), f.done(function () { var t; b._removeData(e, "fxshow"); for (t in h) b.style(e, t, h[t]) }); for (i = 0; o > i; i++) r = g[i], l = f.createTween(r, m ? s[r] : 0), h[r] = s[r] || b.style(e, r), r in s || (s[r] = l.start, m && (l.end = l.start, l.start = "width" === r || "height" === r ? 1 : 0)) } } function rr(e, t, n, r, i) { return new rr.prototype.init(e, t, n, r, i) } b.Tween = rr, rr.prototype = { constructor: rr, init: function (e, t, n, r, i, o) { this.elem = e, this.prop = n, this.easing = i || "swing", this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = o || (b.cssNumber[n] ? "" : "px") }, cur: function () { var e = rr.propHooks[this.prop]; return e && e.get ? e.get(this) : rr.propHooks._default.get(this) }, run: function (e) { var t, n = rr.propHooks[this.prop]; return this.pos = t = this.options.duration ? b.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : rr.propHooks._default.set(this), this } }, rr.prototype.init.prototype = rr.prototype, rr.propHooks = { _default: { get: function (e) { var t; return null == e.elem[e.prop] || e.elem.style && null != e.elem.style[e.prop] ? (t = b.css(e.elem, e.prop, ""), t && "auto" !== t ? t : 0) : e.elem[e.prop] }, set: function (e) { b.fx.step[e.prop] ? b.fx.step[e.prop](e) : e.elem.style && (null != e.elem.style[b.cssProps[e.prop]] || b.cssHooks[e.prop]) ? b.style(e.elem, e.prop, e.now + e.unit) : e.elem[e.prop] = e.now } } }, rr.propHooks.scrollTop = rr.propHooks.scrollLeft = { set: function (e) { e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now) } }, b.each(["toggle", "show", "hide"], function (e, t) { var n = b.fn[t]; b.fn[t] = function (e, r, i) { return null == e || "boolean" == typeof e ? n.apply(this, arguments) : this.animate(ir(t, !0), e, r, i) } }), b.fn.extend({ fadeTo: function (e, t, n, r) { return this.filter(nn).css("opacity", 0).show().end().animate({ opacity: t }, e, n, r) }, animate: function (e, t, n, r) { var i = b.isEmptyObject(e), o = b.speed(t, n, r), a = function () { var t = er(this, b.extend({}, e), o); a.finish = function () { t.stop(!0) }, (i || b._data(this, "finish")) && t.stop(!0) }; return a.finish = a, i || o.queue === !1 ? this.each(a) : this.queue(o.queue, a) }, stop: function (e, n, r) { var i = function (e) { var t = e.stop; delete e.stop, t(r) }; return "string" != typeof e && (r = n, n = e, e = t), n && e !== !1 && this.queue(e || "fx", []), this.each(function () { var t = !0, n = null != e && e + "queueHooks", o = b.timers, a = b._data(this); if (n) a[n] && a[n].stop && i(a[n]); else for (n in a) a[n] && a[n].stop && Jn.test(n) && i(a[n]); for (n = o.length; n--; ) o[n].elem !== this || null != e && o[n].queue !== e || (o[n].anim.stop(r), t = !1, o.splice(n, 1)); (t || !r) && b.dequeue(this, e) }) }, finish: function (e) { return e !== !1 && (e = e || "fx"), this.each(function () { var t, n = b._data(this), r = n[e + "queue"], i = n[e + "queueHooks"], o = b.timers, a = r ? r.length : 0; for (n.finish = !0, b.queue(this, e, []), i && i.cur && i.cur.finish && i.cur.finish.call(this), t = o.length; t--; ) o[t].elem === this && o[t].queue === e && (o[t].anim.stop(!0), o.splice(t, 1)); for (t = 0; a > t; t++) r[t] && r[t].finish && r[t].finish.call(this); delete n.finish }) } }); function ir(e, t) { var n, r = { height: e }, i = 0; for (t = t ? 1 : 0; 4 > i; i += 2 - t) n = Zt[i], r["margin" + n] = r["padding" + n] = e; return t && (r.opacity = r.width = e), r } b.each({ slideDown: ir("show"), slideUp: ir("hide"), slideToggle: ir("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle"} }, function (e, t) { b.fn[e] = function (e, n, r) { return this.animate(t, e, n, r) } }), b.speed = function (e, t, n) { var r = e && "object" == typeof e ? b.extend({}, e) : { complete: n || !n && t || b.isFunction(e) && e, duration: e, easing: n && t || t && !b.isFunction(t) && t }; return r.duration = b.fx.off ? 0 : "number" == typeof r.duration ? r.duration : r.duration in b.fx.speeds ? b.fx.speeds[r.duration] : b.fx.speeds._default, (null == r.queue || r.queue === !0) && (r.queue = "fx"), r.old = r.complete, r.complete = function () { b.isFunction(r.old) && r.old.call(this), r.queue && b.dequeue(this, r.queue) }, r }, b.easing = { linear: function (e) { return e }, swing: function (e) { return .5 - Math.cos(e * Math.PI) / 2 } }, b.timers = [], b.fx = rr.prototype.init, b.fx.tick = function () { var e, n = b.timers, r = 0; for (Xn = b.now(); n.length > r; r++) e = n[r], e() || n[r] !== e || n.splice(r--, 1); n.length || b.fx.stop(), Xn = t }, b.fx.timer = function (e) { e() && b.timers.push(e) && b.fx.start() }, b.fx.interval = 13, b.fx.start = function () { Un || (Un = setInterval(b.fx.tick, b.fx.interval)) }, b.fx.stop = function () { clearInterval(Un), Un = null }, b.fx.speeds = { slow: 600, fast: 200, _default: 400 }, b.fx.step = {}, b.expr && b.expr.filters && (b.expr.filters.animated = function (e) { return b.grep(b.timers, function (t) { return e === t.elem }).length }), b.fn.offset = function (e) { if (arguments.length) return e === t ? this : this.each(function (t) { b.offset.setOffset(this, e, t) }); var n, r, o = { top: 0, left: 0 }, a = this[0], s = a && a.ownerDocument; if (s) return n = s.documentElement, b.contains(n, a) ? (typeof a.getBoundingClientRect !== i && (o = a.getBoundingClientRect()), r = or(s), { top: o.top + (r.pageYOffset || n.scrollTop) - (n.clientTop || 0), left: o.left + (r.pageXOffset || n.scrollLeft) - (n.clientLeft || 0) }) : o }, b.offset = { setOffset: function (e, t, n) { var r = b.css(e, "position"); "static" === r && (e.style.position = "relative"); var i = b(e), o = i.offset(), a = b.css(e, "top"), s = b.css(e, "left"), u = ("absolute" === r || "fixed" === r) && b.inArray("auto", [a, s]) > -1, l = {}, c = {}, p, f; u ? (c = i.position(), p = c.top, f = c.left) : (p = parseFloat(a) || 0, f = parseFloat(s) || 0), b.isFunction(t) && (t = t.call(e, n, o)), null != t.top && (l.top = t.top - o.top + p), null != t.left && (l.left = t.left - o.left + f), "using" in t ? t.using.call(e, l) : i.css(l) } }, b.fn.extend({ position: function () { if (this[0]) { var e, t, n = { top: 0, left: 0 }, r = this[0]; return "fixed" === b.css(r, "position") ? t = r.getBoundingClientRect() : (e = this.offsetParent(), t = this.offset(), b.nodeName(e[0], "html") || (n = e.offset()), n.top += b.css(e[0], "borderTopWidth", !0), n.left += b.css(e[0], "borderLeftWidth", !0)), { top: t.top - n.top - b.css(r, "marginTop", !0), left: t.left - n.left - b.css(r, "marginLeft", !0)} } }, offsetParent: function () { return this.map(function () { var e = this.offsetParent || o.documentElement; while (e && !b.nodeName(e, "html") && "static" === b.css(e, "position")) e = e.offsetParent; return e || o.documentElement }) } }), b.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function (e, n) { var r = /Y/.test(n); b.fn[e] = function (i) { return b.access(this, function (e, i, o) { var a = or(e); return o === t ? a ? n in a ? a[n] : a.document.documentElement[i] : e[i] : (a ? a.scrollTo(r ? b(a).scrollLeft() : o, r ? o : b(a).scrollTop()) : e[i] = o, t) }, e, i, arguments.length, null) } }); function or(e) { return b.isWindow(e) ? e : 9 === e.nodeType ? e.defaultView || e.parentWindow : !1 } b.each({ Height: "height", Width: "width" }, function (e, n) { b.each({ padding: "inner" + e, content: n, "": "outer" + e }, function (r, i) { b.fn[i] = function (i, o) { var a = arguments.length && (r || "boolean" != typeof i), s = r || (i === !0 || o === !0 ? "margin" : "border"); return b.access(this, function (n, r, i) { var o; return b.isWindow(n) ? n.document.documentElement["client" + e] : 9 === n.nodeType ? (o = n.documentElement, Math.max(n.body["scroll" + e], o["scroll" + e], n.body["offset" + e], o["offset" + e], o["client" + e])) : i === t ? b.css(n, r, s) : b.style(n, r, i, s) }, n, a ? i : t, a, null) } }) }), e.jQuery = e.$ = b, "function" == typeof define && define.amd && define.amd.jQuery && define("jquery", [], function () { return b })\r
+})(window);
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.debug.js b/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.debug.js
new file mode 100755 (executable)
index 0000000..4c74984
--- /dev/null
@@ -0,0 +1,2 @@
+/*! Jssor */
+var $JssorDebug$=new function(){this.$DebugMode=true;this.$Log=function(c,d){var a=window.console||{},b=this.$DebugMode;if(b&&a.log)a.log(c);else b&&d&&alert(c)};this.$Error=function(b,d){var c=window.console||{},a=this.$DebugMode;if(a&&c.error)c.error(b);else a&&alert(b);if(a)throw d||new Error(b);};this.$Fail=function(a){throw new Error(a);};this.$Assert=function(b,c){var a=this.$DebugMode;if(a)if(!b)throw new Error("Assert failed "+c||"");};this.$Trace=function(c){var a=window.console||{},b=this.$DebugMode;b&&a.log&&a.log(c)};this.$Execute=function(b){var a=this.$DebugMode;a&&b()};this.$LiveStamp=function(c,d){var b=this.$DebugMode;if(b){var a=document.createElement("DIV");a.setAttribute("id",d);c.$Live=a}};this.$C_AbstractProperty=function(){throw new Error("The property is abstract, it should be implemented by subclass.");};this.$C_AbstractMethod=function(){throw new Error("The method is abstract, it should be implemented by subclass.");};function a(b){if(b.constructor===a.caller)throw new Error("Cannot create instance of an abstract class.");}this.$C_AbstractClass=a},$JssorEasing$=window.$JssorEasing$={$EaseSwing:function(a){return-Math.cos(a*Math.PI)/2+.5},$EaseLinear:function(a){return a},$EaseInQuad:function(a){return a*a},$EaseOutQuad:function(a){return-a*(a-2)},$EaseInOutQuad:function(a){return(a*=2)<1?1/2*a*a:-1/2*(--a*(a-2)-1)},$EaseInCubic:function(a){return a*a*a},$EaseOutCubic:function(a){return(a-=1)*a*a+1},$EaseInOutCubic:function(a){return(a*=2)<1?1/2*a*a*a:1/2*((a-=2)*a*a+2)},$EaseInQuart:function(a){return a*a*a*a},$EaseOutQuart:function(a){return-((a-=1)*a*a*a-1)},$EaseInOutQuart:function(a){return(a*=2)<1?1/2*a*a*a*a:-1/2*((a-=2)*a*a*a-2)},$EaseInQuint:function(a){return a*a*a*a*a},$EaseOutQuint:function(a){return(a-=1)*a*a*a*a+1},$EaseInOutQuint:function(a){return(a*=2)<1?1/2*a*a*a*a*a:1/2*((a-=2)*a*a*a*a+2)},$EaseInSine:function(a){return 1-Math.cos(a*Math.PI/2)},$EaseOutSine:function(a){return Math.sin(a*Math.PI/2)},$EaseInOutSine:function(a){return-1/2*(Math.cos(Math.PI*a)-1)},$EaseInExpo:function(a){return a==0?0:Math.pow(2,10*(a-1))},$EaseOutExpo:function(a){return a==1?1:-Math.pow(2,-10*a)+1},$EaseInOutExpo:function(a){return a==0||a==1?a:(a*=2)<1?1/2*Math.pow(2,10*(a-1)):1/2*(-Math.pow(2,-10*--a)+2)},$EaseInCirc:function(a){return-(Math.sqrt(1-a*a)-1)},$EaseOutCirc:function(a){return Math.sqrt(1-(a-=1)*a)},$EaseInOutCirc:function(a){return(a*=2)<1?-1/2*(Math.sqrt(1-a*a)-1):1/2*(Math.sqrt(1-(a-=2)*a)+1)},$EaseInElastic:function(a){if(!a||a==1)return a;var b=.3,c=.075;return-(Math.pow(2,10*(a-=1))*Math.sin((a-c)*2*Math.PI/b))},$EaseOutElastic:function(a){if(!a||a==1)return a;var b=.3,c=.075;return Math.pow(2,-10*a)*Math.sin((a-c)*2*Math.PI/b)+1},$EaseInOutElastic:function(a){if(!a||a==1)return a;var b=.45,c=.1125;return(a*=2)<1?-.5*Math.pow(2,10*(a-=1))*Math.sin((a-c)*2*Math.PI/b):Math.pow(2,-10*(a-=1))*Math.sin((a-c)*2*Math.PI/b)*.5+1},$EaseInBack:function(a){var b=1.70158;return a*a*((b+1)*a-b)},$EaseOutBack:function(a){var b=1.70158;return(a-=1)*a*((b+1)*a+b)+1},$EaseInOutBack:function(a){var b=1.70158;return(a*=2)<1?1/2*a*a*(((b*=1.525)+1)*a-b):1/2*((a-=2)*a*(((b*=1.525)+1)*a+b)+2)},$EaseInBounce:function(a){return 1-$JssorEasing$.$EaseOutBounce(1-a)},$EaseOutBounce:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375},$EaseInOutBounce:function(a){return a<1/2?$JssorEasing$.$EaseInBounce(a*2)*.5:$JssorEasing$.$EaseOutBounce(a*2-1)*.5+.5},$EaseGoBack:function(a){return 1-Math.abs(2-1)},$EaseInWave:function(a){return 1-Math.cos(a*Math.PI*2)},$EaseOutWave:function(a){return Math.sin(a*Math.PI*2)},$EaseOutJump:function(a){return 1-((a*=2)<1?(a=1-a)*a*a:(a-=1)*a*a)},$EaseInJump:function(a){return(a*=2)<1?a*a*a:(a=2-a)*a*a}},$Jease$=window.$Jease$={$Swing:$JssorEasing$.$EaseSwing,$Linear:$JssorEasing$.$EaseLinear,$InQuad:$JssorEasing$.$EaseInQuad,$OutQuad:$JssorEasing$.$EaseOutQuad,$InOutQuad:$JssorEasing$.$EaseInOutQuad,$InCubic:$JssorEasing$.$EaseInCubic,$OutCubic:$JssorEasing$.$EaseOutCubic,$InOutCubic:$JssorEasing$.$EaseInOutCubic,$InQuart:$JssorEasing$.$EaseInQuart,$OutQuart:$JssorEasing$.$EaseOutQuart,$InOutQuart:$JssorEasing$.$EaseInOutQuart,$InQuint:$JssorEasing$.$EaseInQuint,$OutQuint:$JssorEasing$.$EaseOutQuint,$InOutQuint:$JssorEasing$.$EaseInOutQuint,$InSine:$JssorEasing$.$EaseInSine,$OutSine:$JssorEasing$.$EaseOutSine,$InOutSine:$JssorEasing$.$EaseInOutSine,$InExpo:$JssorEasing$.$EaseInExpo,$OutExpo:$JssorEasing$.$EaseOutExpo,$InOutExpo:$JssorEasing$.$EaseInOutExpo,$InCirc:$JssorEasing$.$EaseInCirc,$OutCirc:$JssorEasing$.$EaseOutCirc,$InOutCirc:$JssorEasing$.$EaseInOutCirc,$InElastic:$JssorEasing$.$EaseInElastic,$OutElastic:$JssorEasing$.$EaseOutElastic,$InOutElastic:$JssorEasing$.$EaseInOutElastic,$InBack:$JssorEasing$.$EaseInBack,$OutBack:$JssorEasing$.$EaseOutBack,$InOutBack:$JssorEasing$.$EaseInOutBack,$InBounce:$JssorEasing$.$EaseInBounce,$OutBounce:$JssorEasing$.$EaseOutBounce,$InOutBounce:$JssorEasing$.$EaseInOutBounce,$GoBack:$JssorEasing$.$EaseGoBack,$InWave:$JssorEasing$.$EaseInWave,$OutWave:$JssorEasing$.$EaseOutWave,$OutJump:$JssorEasing$.$EaseOutJump,$InJump:$JssorEasing$.$EaseInJump},$JssorDirection$=window.$JssorDirection$={$TO_LEFT:1,$TO_RIGHT:2,$TO_TOP:4,$TO_BOTTOM:8,$HORIZONTAL:3,$VERTICAL:12,$GetDirectionHorizontal:function(a){return a&3},$GetDirectionVertical:function(a){return a&12},$IsHorizontal:function(a){return a&3},$IsVertical:function(a){return a&12}},$JssorKeyCode$={$BACKSPACE:8,$COMMA:188,$DELETE:46,$DOWN:40,$END:35,$ENTER:13,$ESCAPE:27,$HOME:36,$LEFT:37,$NUMPAD_ADD:107,$NUMPAD_DECIMAL:110,$NUMPAD_DIVIDE:111,$NUMPAD_ENTER:108,$NUMPAD_MULTIPLY:106,$NUMPAD_SUBTRACT:109,$PAGE_DOWN:34,$PAGE_UP:33,$PERIOD:190,$RIGHT:39,$SPACE:32,$TAB:9,$UP:38},$JssorServices$={},$Jssor$=window.$Jssor$=new function(){var a=this,qb=/\S+/g,J=1,W=2,ab=3,Z=4,eb=5,z,j=0,c=0,h=0,A=0,t=0,p=navigator,jb=p.appName,e=p.userAgent,m=document.documentElement;function zb(){if(!z){z={$Touchable:"ontouchstart"in window||"createTouch"in document};var a;if(p.pointerEnabled||(a=p.msPointerEnabled))z.$TouchActionAttr=a?"msTouchAction":"touchAction"}return z}function k(l){if(!j){j=-1;if(jb=="Microsoft Internet Explorer"&&!!window.attachEvent&&!!window.ActiveXObject){var i=e.indexOf("MSIE");j=J;h=f(e.substring(i+5,e.indexOf(";",i)));/*@cc_on A=@_jscript_version@*/;c=document.documentMode||h}else if(jb=="Netscape"&&!!window.addEventListener){var g=e.indexOf("Firefox"),b=e.indexOf("Safari"),k=e.indexOf("Chrome"),d=e.indexOf("AppleWebKit");if(g>=0){j=W;c=f(e.substring(g+8))}else if(b>=0){var m=e.substring(0,b).lastIndexOf("/");j=k>=0?Z:ab;c=f(e.substring(m+1,b))}else{var a=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/i.exec(e);if(a){j=J;c=h=f(a[1])}}if(d>=0)t=f(e.substring(d+12))}else{var a=/(opera)(?:.*version|)[ \/]([\w.]+)/i.exec(e);if(a){j=eb;c=f(a[2])}}}return l==j}function g(){return k(J)}function E(){return g()&&(c<6||document.compatMode=="BackCompat")}function rb(){return k(W)}function Y(){return k(ab)}function ub(){return k(Z)}function db(){return k(eb)}function R(){return Y()&&t>534&&t<535}function C(){return g()&&c<9}function T(a){var b;return function(e){if(!b){b=a;var c=a.substr(0,1).toUpperCase()+a.substr(1);d([a].concat(["WebKit","ms","Moz","O","webkit"]),function(g,f){var d=a;if(f)d=g+c;if(e.style[d]!=undefined)return b=d})}return b}}var S=T("transform");function ib(a){return{}.toString.call(a)}var y;function wb(){if(!y){y={};d(["Boolean","Number","String","Function","Array","Date","RegExp","Object"],function(a){y["[object "+a+"]"]=a.toLowerCase()})}return y}function d(a,c){if(ib(a)=="[object Array]"){for(var b=0;b<a.length;b++)if(c(a[b],b,a))return true}else for(var d in a)if(c(a[d],d,a))return true}function r(a){return a==null?String(a):wb()[ib(a)]||"object"}function gb(a){for(var b in a)return true}function o(a){try{return r(a)=="object"&&!a.nodeType&&a!=a.window&&(!a.constructor||{}.hasOwnProperty.call(a.constructor.prototype,"isPrototypeOf"))}catch(b){}}function n(a,b){return{x:a,y:b}}function mb(b,a){setTimeout(b,a||0)}function w(b,e,c){var a=!b||b=="inherit"?"":b;d(e,function(c){var b=c.exec(a);if(b){var d=a.substr(0,b.index),e=a.substr(b.lastIndex+1,a.length-(b.lastIndex+1));a=d+e}});a=c+(a.indexOf(" ")!=0?" ":"")+a;return a}function V(b,a){if(c<9)b.style.filter=a}function sb(f,b,h){if(!A||A<9){var d=b.$ScaleX,e=b.$ScaleY,i=(b.$Rotate||0)%360,g="";if(i||d!=undefined||e!=undefined){if(d==undefined)d=1;if(e==undefined)e=1;var c=a.$CreateMatrix(i/180*Math.PI,d||1,e||1),h=a.$GetMatrixOffset(c,b.$OriginalWidth,b.$OriginalHeight);a.$CssMarginTop(f,h.y);a.$CssMarginLeft(f,h.x);g="progid:DXImageTransform.Microsoft.Matrix(M11="+c[0][0]+", M12="+c[0][1]+", M21="+c[1][0]+", M22="+c[1][1]+", SizingMethod='auto expand')"}var k=f.style.filter,l=new RegExp(/[\s]*progid:DXImageTransform\.Microsoft\.Matrix\([^\)]*\)/g),j=w(k,[l],g);V(f,j)}}a.$Device=zb;a.$IsBrowserIE=g;a.$IsBrowserIeQuirks=E;a.$IsBrowserFireFox=rb;a.$IsBrowserSafari=Y;a.$IsBrowserChrome=ub;a.$IsBrowserOpera=db;a.$IsBrowserBadTransform=R;a.$IsBrowserIe9Earlier=C;a.$BrowserVersion=function(){return c};a.$BrowserEngineVersion=function(){return h||c};a.$WebKitVersion=function(){k();return t};a.$Delay=mb;a.$Inherit=function(a,b){b.call(a);return q({},a)};function M(a){a.constructor===M.caller&&a.$Construct&&a.$Construct.apply(a,M.caller.arguments)}a.$Construct=M;a.$GetElement=function(b){if(a.$IsString(b))b=document.getElementById(b);return b};function i(a){return a||window.event}a.$GetEvent=i;a.$EvtSrc=function(a){a=i(a);return a.target||a.srcElement||document};a.$EvtTarget=function(a){a=i(a);return a.relatedTarget||a.toElement};a.$EvtWhich=function(a){a=i(a);return a.which||([0,1,3,0,2])[a.button]||a.charCode||a.keyCode};a.$MousePosition=function(a){a=i(a);return{x:a.pageX||a.clientX||0,y:a.pageY||a.clientY||0}};a.$PageScroll=function(){var a=document.body;return{x:(window.pageXOffset||m.scrollLeft||a.scrollLeft||0)-(m.clientLeft||a.clientLeft||0),y:(window.pageYOffset||m.scrollTop||a.scrollTop||0)-(m.clientTop||a.clientTop||0)}};a.$WindowSize=function(){var a=document.body;return{x:a.clientWidth||m.clientWidth,y:a.clientHeight||m.clientHeight}};function s(c,d,a){if(a!==undefined)c.style[d]=a==undefined?"":a;else{var b=c.currentStyle||c.style;a=b[d];if(a==""&&window.getComputedStyle){b=c.ownerDocument.defaultView.getComputedStyle(c,null);b&&(a=b.getPropertyValue(d)||b[d])}return a}}function O(b,c,a,d){if(a!=undefined){if(a==null)a="";else d&&(a+="px");s(b,c,a)}else return f(s(b,c))}function Ab(b,c,a){return O(b,c,a,true)}function b(c,a){var d=a?O:s,b;if(a&4)b=T(c);return function(e,f){return d(e,b?b(e):c,f,a&2)}}function tb(b){if(g()&&h<9){var a=/opacity=([^)]*)/.exec(b.style.filter||"");return a?f(a[1])/100:1}else return f(b.style.opacity||"1")}function vb(b,a,e){if(g()&&h<9){var i=b.style.filter||"",j=new RegExp(/[\s]*alpha\([^\)]*\)/g),d=Math.round(100*a),c="";if(d<100||e)c="alpha(opacity="+d+") ";var f=w(i,[j],c);V(b,f)}else b.style.opacity=a==1?"":Math.round(a*100)/100}var ob={$Rotate:["rotate"],$RotateX:["rotateX"],$RotateY:["rotateY"],$ScaleX:["scaleX",2],$ScaleY:["scaleY",2],$TranslateX:["translateX",1],$TranslateY:["translateY",1],$TranslateZ:["translateZ",1],$SkewX:["skewX"],$SkewY:["skewY"]};function Q(e,b){if(g()&&c&&c<10){delete b.$RotateX;delete b.$RotateY}var d=S(e);if(d){var a="";$Jssor$.$Each(b,function(e,c){var b=ob[c];if(b){var d=b[1]||0;a+=(a?" ":"")+b[0]+"("+e+(["deg","px",""])[d]+")"}});e.style[d]=a}}a.$SetStyleTransform=function(c,b){if(R())mb(a.$CreateCallback(null,Q,c,b));else(C()?sb:Q)(c,b)};a.$CssTransformOrigin=b("transformOrigin",4);a.$CssBackfaceVisibility=b("backfaceVisibility",4);a.$CssTransformStyle=b("transformStyle",4);a.$CssPerspective=b("perspective",6);a.$CssPerspectiveOrigin=b("perspectiveOrigin",4);a.$CssScale=function(a,c){if(g()&&h<9||h<10&&E())a.style.zoom=c==1?"":c;else{var b=S(a);if(b){var f="scale("+c+")",e=a.style[b],i=new RegExp(/[\s]*scale\(.*?\)/g),d=w(e,[i],f);a.style[b]=d}}};var cb=0,X=0;a.$WindowResizeFilter=function(b,a){return C()?function(){var f=true,c=E()?b.document.body:b.document.documentElement;if(c){var e=c.offsetWidth-cb,d=c.offsetHeight-X;if(e||d){cb+=e;X+=d}else f=false}f&&a()}:a};a.$MouseOverOutFilter=function(c,b){$JssorDebug$.$Execute(function(){if(!b)throw new Error('Null reference, parameter "target".');});return function(d){d=i(d);var f=d.type,e=d.relatedTarget||(f=="mouseout"?d.toElement:d.fromElement);(!e||e!==b&&!a.$IsChild(b,e))&&c(d)}};a.$AddEvent=function(b,e,c,d){b=a.$GetElement(b);$JssorDebug$.$Execute(function(){!b&&$JssorDebug$.$Fail("Parameter 'elmt' not specified.");!c&&$JssorDebug$.$Fail("Parameter 'handler' not specified.");!b.addEventListener&&!b.attachEvent&&$JssorDebug$.$Fail("Unable to attach event handler, no known technique.")});if(b.addEventListener){e=="mousewheel"&&b.addEventListener("DOMMouseScroll",c,d);b.addEventListener(e,c,d)}else if(b.attachEvent){b.attachEvent("on"+e,c);d&&b.setCapture&&b.setCapture()}};a.$RemoveEvent=function(b,d,e,c){b=a.$GetElement(b);if(b.removeEventListener){d=="mousewheel"&&b.removeEventListener("DOMMouseScroll",e,c);b.removeEventListener(d,e,c)}else if(b.detachEvent){b.detachEvent("on"+d,e);c&&b.releaseCapture&&b.releaseCapture()}};a.$FireEvent=function(b,c){$JssorDebug$.$Execute(function(){!document.createEvent&&!document.createEventObject&&$JssorDebug$.$Fail("Unable to fire event, no known technique.");!b.dispatchEvent&&!b.fireEvent&&$JssorDebug$.$Fail("Unable to fire event, no known technique.")});var a;if(document.createEvent){a=document.createEvent("HTMLEvents");a.initEvent(c,false,false);b.dispatchEvent(a)}else{var d="on"+c;a=document.createEventObject();b.fireEvent(d,a)}};a.$CancelEvent=function(a){a=i(a);a.preventDefault&&a.preventDefault();a.cancel=true;a.returnValue=false};a.$StopEvent=function(a){a=i(a);a.stopPropagation&&a.stopPropagation();a.cancelBubble=true};a.$CreateCallback=function(d,c){var a=[].slice.call(arguments,2),b=function(){var b=a.concat([].slice.call(arguments,0));return c.apply(d,b)};return b};a.$InnerText=function(b,c){if(c==undefined)return b.textContent||b.innerText;var d=document.createTextNode(c);a.$Empty(b);b.appendChild(d)};a.$InnerHtml=function(a,b){if(b==undefined)return a.innerHTML;a.innerHTML=b};a.$GetClientRect=function(b){var a=b.getBoundingClientRect();return{x:a.left,y:a.top,w:a.right-a.left,h:a.bottom-a.top}};a.$ClearInnerHtml=function(a){a.innerHTML=""};a.$EncodeHtml=function(c){var b=a.$CreateDiv();a.$InnerText(b,c);return a.$InnerHtml(b)};a.$DecodeHtml=function(c){var b=a.$CreateDiv();a.$InnerHtml(b,c);return a.$InnerText(b)};a.$SelectElement=function(c){var b;if(window.getSelection)b=window.getSelection();var a=null;if(document.createRange){a=document.createRange();a.selectNode(c)}else{a=document.body.createTextRange();a.moveToElementText(c);a.select()}b&&b.addRange(a)};a.$DeselectElements=function(){if(document.selection)document.selection.empty();else window.getSelection&&window.getSelection().removeAllRanges()};a.$Children=function(d,c){for(var b=[],a=d.firstChild;a;a=a.nextSibling)(c||a.nodeType==1)&&b.push(a);return b};function hb(a,c,e,b){b=b||"u";for(a=a?a.firstChild:null;a;a=a.nextSibling)if(a.nodeType==1){if(I(a,b)==c)return a;if(!e){var d=hb(a,c,e,b);if(d)return d}}}a.$FindChild=hb;function G(a,d,f,b){b=b||"u";var c=[];for(a=a?a.firstChild:null;a;a=a.nextSibling)if(a.nodeType==1){I(a,b)==d&&c.push(a);if(!f){var e=G(a,d,f,b);if(e.length)c=c.concat(e)}}return c}a.$FindChildren=G;function bb(a,c,d){for(a=a?a.firstChild:null;a;a=a.nextSibling)if(a.nodeType==1){if(a.tagName==c)return a;if(!d){var b=bb(a,c,d);if(b)return b}}}a.$FindChildByTag=bb;function U(a,c,e){var b=[];for(a=a?a.firstChild:null;a;a=a.nextSibling)if(a.nodeType==1){(!c||a.tagName==c)&&b.push(a);if(!e){var d=U(a,c,e);if(d.length)b=b.concat(d)}}return b}a.$FindChildrenByTag=U;a.$GetElementsByTag=function(b,a){return b.getElementsByTagName(a)};function q(){var e=arguments,d,c,b,a,g=1&e[0],f=1+g;d=e[f-1]||{};for(;f<e.length;f++)if(c=e[f])for(b in c){a=c[b];if(a!==undefined){a=c[b];var h=d[b];d[b]=g&&(o(h)||o(a))?q(g,{},h,a):a}}return d}a.$Extend=q;function N(g,f){$JssorDebug$.$Assert(f);var d={},c,a,b;for(c in g){a=g[c];b=f[c];if(a!==b){var e;if(o(a)&&o(b)){a=N(a,b);e=!gb(a)}!e&&(d[c]=a)}}return d}a.$Unextend=N;a.$IsFunction=function(a){return r(a)=="function"};a.$IsArray=function(a){return r(a)=="array"};a.$IsString=function(a){return r(a)=="string"};a.$IsNumeric=function(a){return!isNaN(f(a))&&isFinite(a)};a.$Type=r;a.$Each=d;a.$IsNotEmpty=gb;a.$IsPlainObject=o;function F(a){return document.createElement(a)}a.$CreateElement=F;a.$CreateDiv=function(){return F("DIV")};a.$CreateSpan=function(){return F("SPAN")};a.$EmptyFunction=function(){};function K(b,c,a){if(a==undefined)return b.getAttribute(c);b.setAttribute(c,a)}function I(a,b){return K(a,b)||K(a,"data-"+b)}a.$Attribute=K;a.$AttributeEx=I;function l(b,a){if(a==undefined)return b.className;b.className=a}a.$ClassName=l;function lb(b){var a={};d(b,function(b){a[b]=b});return a}function yb(b){var a=[];d(b,function(b){a.push(b)});return a}function nb(b,a){return b.match(a||qb)}function D(b,a){return lb(nb(b||"",a))}a.$ToHash=lb;a.$FromHash=yb;a.$Split=nb;function P(b,c){var a="";d(c,function(c){a&&(a+=b);a+=c});return a}function v(a,c,b){l(a,P(" ",q(N(D(l(a)),D(c)),D(b))))}a.$Join=P;a.$AddClass=function(b,a){v(b,null,a)};a.$RemoveClass=v;a.$ReplaceClass=v;a.$ParentNode=function(a){return a.parentNode};a.$HideElement=function(b){a.$CssDisplay(b,"none")};a.$EnableElement=function(b,c){if(c)a.$Attribute(b,"disabled",true);else a.$RemoveAttribute(b,"disabled")};a.$HideElements=function(c){for(var b=0;b<c.length;b++)a.$HideElement(c[b])};a.$ShowElement=function(b,c){a.$CssDisplay(b,c?"none":"")};a.$ShowElements=function(c,d){for(var b=0;b<c.length;b++)a.$ShowElement(c[b],d)};a.$RemoveAttribute=function(b,a){b.removeAttribute(a)};a.$CanClearClip=function(){return g()&&c<10};a.$SetStyleClip=function(b,a){if(a)b.style.clip="rect("+Math.round(a.$Top)+"px "+Math.round(a.$Right)+"px "+Math.round(a.$Bottom)+"px "+Math.round(a.$Left)+"px)";else{var e=b.style.cssText,d=[new RegExp(/[\s]*clip: rect\(.*?\)[;]?/i),new RegExp(/[\s]*cliptop: .*?[;]?/i),new RegExp(/[\s]*clipright: .*?[;]?/i),new RegExp(/[\s]*clipbottom: .*?[;]?/i),new RegExp(/[\s]*clipleft: .*?[;]?/i)],c=w(e,d,"");$Jssor$.$CssCssText(b,c)}};a.$GetNow=function(){return+new Date};a.$AppendChild=function(b,a){b.appendChild(a)};a.$AppendChildren=function(c,b){d(b,function(b){a.$AppendChild(c,b)})};a.$InsertBefore=function(b,a,c){(c||a.parentNode).insertBefore(b,a)};a.$InsertAfter=function(c,b,d){a.$InsertBefore(c,b.nextSibling,d||b.parentNode)};a.$InsertAdjacentHtml=function(b,a,c){b.insertAdjacentHTML(a,c)};a.$RemoveElement=function(a,b){(b||a.parentNode).removeChild(a)};a.$RemoveElements=function(b,c){d(b,function(b){a.$RemoveElement(b,c)})};a.$Empty=function(b){a.$RemoveElements(a.$Children(b,true),b)};a.$CenterElement=function(b,c){var d=a.$ParentNode(b);c&1&&a.$CssLeft(b,(a.$CssWidth(d)-a.$CssWidth(b))/2);c&2&&a.$CssTop(b,(a.$CssHeight(d)-a.$CssHeight(b))/2)};a.$ParseInt=function(b,a){return parseInt(b,a||10)};var f=parseFloat;a.$ParseFloat=f;a.$IsChild=function(b,a){var c=document.body;while(a&&b!==a&&c!==a)try{a=a.parentNode}catch(d){return false}return b===a};function L(e,d,c){var b=e.cloneNode(!d);!c&&a.$RemoveAttribute(b,"id");return b}a.$CloneNode=L;a.$LoadImage=function(f,g){var b=new Image;function d(f,c){a.$RemoveEvent(b,"load",d);a.$RemoveEvent(b,"abort",e);a.$RemoveEvent(b,"error",e);g&&g(b,c)}function e(a){d(a,true)}if(db()&&c<11.6||!f)d(!f);else{a.$AddEvent(b,"load",d);a.$AddEvent(b,"abort",e);a.$AddEvent(b,"error",e);b.src=f}};a.$LoadImages=function(f,b,g){var e=f.length+1;function c(a){e--;if(b&&a&&a.src==b.src)b=a;!e&&g&&g(b)}d(f,function(b){a.$LoadImage(b.src,c)});c()};a.$BuildElement=function(a,f,h,g){if(g)a=L(a);var b=G(a,f);if(!b.length)b=$Jssor$.$GetElementsByTag(a,f);for(var e=b.length-1;e>-1;e--){var c=b[e],d=L(h);l(d,l(c));$Jssor$.$CssCssText(d,c.style.cssText);$Jssor$.$InsertBefore(d,c);$Jssor$.$RemoveElement(c)}return a};function xb(b){var j=this,n="",p=["av","pv","ds","dn"],f=[],o,i=0,g=0,e=0;function h(){v(b,o,f[e||i||g&2||g]);$Jssor$.$Css(b,"pointer-events",e?"none":"")}function c(){i=0;h();a.$RemoveEvent(document,"mouseup",c);a.$RemoveEvent(document,"touchend",c);a.$RemoveEvent(document,"touchcancel",c)}function m(b){if(e)a.$CancelEvent(b);else{i=4;h();a.$AddEvent(document,"mouseup",c);a.$AddEvent(document,"touchend",c);a.$AddEvent(document,"touchcancel",c)}}j.$Selected=function(a){if(a===undefined)return g;g=a&2||a&1;h()};j.$Enable=function(a){if(a===undefined)return!e;e=a?0:3;h()};j.$Elmt=b=a.$GetElement(b);var k=$Jssor$.$Split(l(b));if(k)n=k.shift();d(p,function(a){f.push(n+a)});o=P(" ",f);f.unshift("");a.$AddEvent(b,"mousedown",m);a.$AddEvent(b,"touchstart",m)}a.$Buttonize=function(a){return new xb(a)};a.$Css=s;a.$CssN=O;a.$CssP=Ab;a.$CssOverflow=b("overflow");a.$CssTop=b("top",2);a.$CssLeft=b("left",2);a.$CssWidth=b("width",2);a.$CssHeight=b("height",2);a.$CssMarginLeft=b("marginLeft",2);a.$CssMarginTop=b("marginTop",2);a.$CssPosition=b("position");a.$CssDisplay=b("display");a.$CssZIndex=b("zIndex",1);a.$CssFloat=function(b,a){return s(b,g()?"styleFloat":"cssFloat",a)};a.$CssOpacity=function(b,a,c){if(a!=undefined)vb(b,a,c);else return tb(b)};a.$CssCssText=function(a,b){if(b!=undefined)a.style.cssText=b;else return a.style.cssText};var H={$Opacity:a.$CssOpacity,$Top:a.$CssTop,$Left:a.$CssLeft,$Width:a.$CssWidth,$Height:a.$CssHeight,$Position:a.$CssPosition,$Display:a.$CssDisplay,$ZIndex:a.$CssZIndex},B;function x(){if(!B)B=q({$MarginTop:a.$CssMarginTop,$MarginLeft:a.$CssMarginLeft,$Clip:a.$SetStyleClip,$Transform:a.$SetStyleTransform},H);return B}function fb(){var a={};a.$Transform=a.$Transform;a.$Transform=a.$Rotate;a.$Transform=a.$RotateX;a.$Transform=a.$RotateY;a.$Transform=a.$SkewX;a.$Transform=a.$SkewY;a.$Transform=a.$TranslateX;a.$Transform=a.$TranslateY;a.$Transform=a.$TranslateZ;return x()}a.$StyleSetter=x;a.$StyleSetterEx=fb;a.$GetStyles=function(c,b){x();var a={};d(b,function(d,b){if(H[b])a[b]=H[b](c)});return a};a.$SetStyles=function(c,b){var a=x();d(b,function(d,b){a[b]&&a[b](c,d)})};a.$SetStylesEx=function(c,b){fb();a.$SetStyles(c,b)};var u=new function(){var a=this;function b(d,g){for(var j=d[0].length,i=d.length,h=g[0].length,f=[],c=0;c<i;c++)for(var k=f[c]=[],b=0;b<h;b++){for(var e=0,a=0;a<j;a++)e+=d[c][a]*g[a][b];k[b]=e}return f}a.$ScaleX=function(b,c){return a.$ScaleXY(b,c,0)};a.$ScaleY=function(b,c){return a.$ScaleXY(b,0,c)};a.$ScaleXY=function(a,c,d){return b(a,[[c,0],[0,d]])};a.$TransformPoint=function(d,c){var a=b(d,[[c.x],[c.y]]);return n(a[0][0],a[1][0])}};a.$CreateMatrix=function(c,a,b){var d=Math.cos(c),e=Math.sin(c);return[[d*a,-e*b],[e*a,d*b]]};a.$GetMatrixOffset=function(c,b,a){var d=u.$TransformPoint(c,n(-b/2,-a/2)),e=u.$TransformPoint(c,n(b/2,-a/2)),f=u.$TransformPoint(c,n(b/2,a/2)),g=u.$TransformPoint(c,n(-b/2,a/2));return n(Math.min(d.x,e.x,f.x,g.x)+b/2,Math.min(d.y,e.y,f.y,g.y)+a/2)};var pb={$Zoom:1,$ScaleX:1,$ScaleY:1,$Rotate:0,$RotateX:0,$RotateY:0,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0};a.$FormatEasings=function(a){var b=a||{};if(a)if($Jssor$.$IsFunction(a))b={$Default:b};else if($Jssor$.$IsFunction(a.$Clip))b.$Clip={$Default:a.$Clip};return b};function kb(e,b){var c={};d(e,function(d,e){var f=d;if(b[e]!=undefined)if(a.$IsNumeric(d))f=d+b[e];else f=kb(d,b[e]);c[e]=f});return c}a.$AddDif=kb;a.$Cast=function(e,f,r,i,t,u,j){var a=f;if(e){a={};for(var d in f){var v=u[d]||1,q=t[d]||[0,1],b=(r-q[0])/q[1];b=Math.min(Math.max(b,0),1);b=b*v;var p=Math.floor(b);if(b!=p)b-=p;var g=i.$Default||$JssorEasing$.$EaseSwing,h,w=e[d],l=f[d];if($Jssor$.$IsNumeric(l)){g=i[d]||g;var s=g(b);h=w+l*s}else{h=$Jssor$.$Extend({$Offset:{}},e[d]);$Jssor$.$Each(l.$Offset||l,function(e,a){if(i.$Clip)g=i.$Clip[a]||i.$Clip.$Default||g;var d=g(b),c=e*d;h.$Offset[a]=c;h[a]+=c})}a[d]=h}var o,c={$OriginalWidth:j.$OriginalWidth,$OriginalHeight:j.$OriginalHeight};$Jssor$.$Each(pb,function(g,b){o=o||f[b];var d=a[b];if(d!=undefined){if(d!=g)c[b]=d;delete a[b]}else if(e[b]!=undefined&&e[b]!=g)c[b]=e[b]});if(f.$Zoom&&c.$Zoom){c.$ScaleX=c.$Zoom;c.$ScaleY=c.$Zoom}a.$Transform=c}if(f.$Clip&&j.$Move){var k=a.$Clip.$Offset,n=(k.$Top||0)+(k.$Bottom||0),m=(k.$Left||0)+(k.$Right||0);a.$Left=(a.$Left||0)+m;a.$Top=(a.$Top||0)+n;a.$Clip.$Left-=m;a.$Clip.$Right-=m;a.$Clip.$Top-=n;a.$Clip.$Bottom-=n}if(a.$Clip&&$Jssor$.$CanClearClip()&&!a.$Clip.$Top&&!a.$Clip.$Left&&a.$Clip.$Right==j.$OriginalWidth&&a.$Clip.$Bottom==j.$OriginalHeight)a.$Clip=null;return a}};function $JssorObject$(){var a=this,c=[],b=[];function g(a,b){$JssorDebug$.$Execute(function(){if(a==undefined||a==null)throw new Error("param 'eventName' is null or empty.");if(typeof b!="function")throw"param 'handler' must be a function.";$Jssor$.$Each(c,function(c){if(c.$EventName==a&&c.$Handler===b)throw new Error("The handler listened to the event already, cannot listen to the same event of the same object with the same handler twice.");})});c.push({$EventName:a,$Handler:b})}function f(a,b){$JssorDebug$.$Execute(function(){if(a==undefined||a==null)throw new Error("param 'eventName' is null or empty.");if(typeof b!="function")throw"param 'handler' must be a function.";});$Jssor$.$Each(c,function(d,e){d.$EventName==a&&d.$Handler===b&&c.splice(e,1)})}function e(){c=[]}function d(){$Jssor$.$Each(b,function(a){$Jssor$.$RemoveEvent(a.$Obj,a.$EventName,a.$Handler)});b=[]}a.$Listen=function(d,a,c,e){$JssorDebug$.$Execute(function(){if(!d)throw new Error("param 'obj' is null or empty.");if(a==undefined||a==null)throw new Error("param 'eventName' is null or empty.");if(typeof c!="function")throw"param 'handler' must be a function.";$Jssor$.$Each(b,function(b){if(b.$Obj===d&&b.$EventName==a&&b.$Handler===c)throw new Error("The handler listened to the event already, cannot listen to the same event of the same object with the same handler twice.");})});$Jssor$.$AddEvent(d,a,c,e);b.push({$Obj:d,$EventName:a,$Handler:c})};a.$Unlisten=function(d,a,c){$JssorDebug$.$Execute(function(){if(!d)throw new Error("param 'obj' is null or empty.");if(a==undefined||a==null)throw new Error("param 'eventName' is null or empty.");if(typeof c!="function")throw"param 'handler' must be a function.";});$Jssor$.$Each(b,function(e,f){if(e.$Obj===d&&e.$EventName==a&&e.$Handler===c){$Jssor$.$RemoveEvent(d,a,c);b.splice(f,1)}})};a.$UnlistenAll=d;a.$On=a.addEventListener=g;a.$Off=a.removeEventListener=f;a.$TriggerEvent=function(a){var b=[].slice.call(arguments,1);$Jssor$.$Each(c,function(c){c.$EventName==a&&c.$Handler.apply(window,b)})};a.$Destroy=function(){d();e();for(var b in a)delete a[b]};$JssorDebug$.$C_AbstractClass(a)}var $JssorAnimator$=window.$JssorAnimator$=function(s,x,d,J,D,v){s=s||0;var a=this,k,H,h,i,q,t=0,C,E,B,w,r=0,e=0,g=0,y,f,m,c,b,j,n=[],u;function I(a){c+=a;b+=a;f+=a;m+=a;e+=a;g+=a;r+=a}function p(l){var h=l;if(j&&(h>=b||h<=c))h=((h-c)%j+j)%j+c;if(!y||q||e!=h){var i=Math.min(h,b);i=Math.max(i,c);if(!y||q||i!=g){if(v){var k=(i-f)/(x||1);if(d.$Reverse)k=1-k;var m=$Jssor$.$Cast(D,v,k,C,B,E,d);$Jssor$.$Each(m,function(b,a){u[a]&&u[a](J,b)})}a.$OnInnerOffsetChange(g-f,i-f);g=i;$Jssor$.$Each(n,function(b,c){var a=l<e?n[n.length-c-1]:b;a.$GoToPosition(g-r)});var p=e,o=g;e=h;y=true;a.$OnPositionChange(p,o)}}}function z(a,d,e){$JssorDebug$.$Execute(function(){d!==0&&d!==1&&$JssorDebug$.$Fail("Argument out of range, the value of 'combineMode' should be either 0 or 1.")});d&&a.$Shift(b);if(!e){c=Math.min(c,a.$GetPosition_OuterBegin()+r);b=Math.max(b,a.$GetPosition_OuterEnd()+r)}n.push(a)}var l=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame;if($Jssor$.$IsBrowserSafari()&&$Jssor$.$BrowserVersion()<7)l=null;l=l||function(a){$Jssor$.$Delay(a,d.$Interval)};function F(){if(k){var b=$Jssor$.$GetNow(),c=Math.min(b-t,d.$IntervalMax),a=e+c*i;t=b;if(a*i>=h*i)a=h;p(a);if(!q&&a*i>=h*i)G(w);else l(F)}}function o(d,f,g){if(!k){k=true;q=g;w=f;d=Math.max(d,c);d=Math.min(d,b);h=d;i=h<e?-1:1;a.$OnStart();t=$Jssor$.$GetNow();l(F)}}function G(b){if(k){q=k=w=false;a.$OnStop();b&&b()}}a.$Play=function(a,c,d){o(a?e+a:b,c,d)};a.$PlayToPosition=o;a.$PlayToBegin=function(a,b){o(c,a,b)};a.$PlayToEnd=function(a,c){o(b,a,c)};a.$Stop=G;a.$Continue=function(a){o(a)};a.$GetPosition=function(){return e};a.$GetPlayToPosition=function(){return h};a.$GetPosition_Display=function(){return g};a.$GoToPosition=p;a.$GoToBegin=function(){p(c,true)};a.$GoToEnd=function(){p(b,true)};a.$Move=function(a){p(e+a)};a.$CombineMode=function(){return H};a.$GetDuration=function(){return x};a.$IsPlaying=function(){return k};a.$IsOnTheWay=function(){return e>f&&e<=m};a.$SetLoopLength=function(a){j=a};a.$Shift=I;a.$Join=z;a.$Combine=function(a,b){z(a,0,b)};a.$Chain=function(a){z(a,1)};a.$Expand=function(a){b+=a};a.$GetPosition_InnerBegin=function(){return f};a.$GetPosition_InnerEnd=function(){return m};a.$GetPosition_OuterBegin=function(){return c};a.$GetPosition_OuterEnd=function(){return b};a.$OnPositionChange=a.$OnStart=a.$OnStop=a.$OnInnerOffsetChange=$Jssor$.$EmptyFunction;a.$Version=$Jssor$.$GetNow();$JssorDebug$.$Execute(function(){a.$NestedAnimators=n;a.$FromStyles=D;a.$DifStyles=v});d=$Jssor$.$Extend({$Interval:16,$IntervalMax:50},d);$JssorDebug$.$Execute(function(){d=$Jssor$.$Extend({$LoopLength:undefined,$Setter:undefined,$Easing:undefined},d)});j=d.$LoopLength;u=$Jssor$.$Extend({},$Jssor$.$StyleSetter(),d.$Setter);c=f=s;b=m=s+x;E=d.$Round||{};B=d.$During||{};C=$Jssor$.$FormatEasings(d.$Easing)};function $JssorPlayerClass$(){var b=this,a=[];function c(a){var f=this,c,b=[];function d(f){var e=$Jssor$.$EvtSrc(f);c=e.pInstance;$Jssor$.$RemoveEvent(e,"dataavailable",d);$Jssor$.$Each(b,function(a){a!=c&&a.$Remove()});a.pTagName=c.tagName;b=null}function e(c){var e;if(!c.pInstance){var f=$Jssor$.$AttributeEx(c,"pHandler");if($JssorPlayer$[f]){$Jssor$.$AddEvent(c,"dataavailable",d);e=new $JssorPlayer$[f](a,c);b.push(e);$JssorDebug$.$Execute(function(){$Jssor$.$Type(e.$Remove)!="function"&&$JssorDebug$.$Fail("'pRemove' interface not implemented for player handler '"+f+"'.")})}}return e}f.$InitPlayerController=function(){if(!a.pInstance&&!e(a)){var b=$Jssor$.$Children(a);$Jssor$.$Each(b,function(a){e(a)})}}}b.$EVT_SWITCH=21;b.$FetchPlayers=function(b){b=b||document.body;var d=$Jssor$.$FindChildren(b,"player");$Jssor$.$Each(d,function(b){if(!a[b.pId]){b.pId=a.length;a.push(new c(b))}var d=a[b.pId];d.$InitPlayerController()})}}var $JssorSlideshowFormations$=window.$JssorSlideshowFormations$=new function(){var f=this,b=0,a=1,d=2,c=3,q=1,p=2,r=4,o=8,u=256,v=512,t=1024,s=2048,h=s+q,g=s+p,m=v+q,k=v+p,l=u+r,i=u+o,j=t+r,n=t+o;function w(a){return(a&p)==p}function x(a){return(a&r)==r}function e(b,a,c){c.push(a);b[a]=b[a]||[];b[a].push(c)}f.$FormationStraight=function(n){for(var d=n.$Cols,f=n.$Rows,s=n.$Assembly,t=n.$Count,r=[],a=0,b=0,p=d-1,q=f-1,o=t-1,c,b=0;b<f;b++)for(a=0;a<d;a++){switch(s){case h:c=o-(a*f+(q-b));break;case j:c=o-(b*d+(p-a));break;case m:c=o-(a*f+b);case l:c=o-(b*d+a);break;case g:c=a*f+b;break;case i:c=b*d+(p-a);break;case k:c=a*f+(q-b);break;default:c=b*d+a}e(r,c,[b,a])}return r};f.$FormationSwirl=function(p){var w=p.$Cols,x=p.$Rows,A=p.$Assembly,v=p.$Count,z=[],y=[],t=0,f=0,n=0,q=w-1,r=x-1,s,o,u=0;switch(A){case h:f=q;n=0;o=[d,a,c,b];break;case j:f=0;n=r;o=[b,c,a,d];break;case m:f=q;n=r;o=[c,a,d,b];break;case l:f=q;n=r;o=[a,c,b,d];break;case g:f=0;n=0;o=[d,b,c,a];break;case i:f=q;n=0;o=[a,d,b,c];break;case k:f=0;n=r;o=[c,b,d,a];break;default:f=0;n=0;o=[b,d,a,c]}t=0;while(t<v){s=n+","+f;if(f>=0&&f<w&&n>=0&&n<x&&!y[s]){y[s]=true;e(z,t++,[n,f])}else switch(o[u++%o.length]){case b:f--;break;case d:n--;break;case a:f++;break;case c:n++}switch(o[u%o.length]){case b:f++;break;case d:n++;break;case a:f--;break;case c:n--}}return z};f.$FormationZigZag=function(p){var w=p.$Cols,x=p.$Rows,z=p.$Assembly,v=p.$Count,t=[],u=0,f=0,n=0,q=w-1,r=x-1,y,o,s=0;switch(z){case h:f=q;n=0;o=[d,a,c,a];break;case j:f=0;n=r;o=[b,c,a,c];break;case m:f=q;n=r;o=[c,a,d,a];break;case l:f=q;n=r;o=[a,c,b,c];break;case g:f=0;n=0;o=[d,b,c,b];break;case i:f=q;n=0;o=[a,d,b,d];break;case k:f=0;n=r;o=[c,b,d,b];break;default:f=0;n=0;o=[b,d,a,d]}u=0;while(u<v){y=n+","+f;if(f>=0&&f<w&&n>=0&&n<x&&typeof t[y]=="undefined"){e(t,u++,[n,f]);switch(o[s%o.length]){case b:f++;break;case d:n++;break;case a:f--;break;case c:n--}}else{switch(o[s++%o.length]){case b:f--;break;case d:n--;break;case a:f++;break;case c:n++}switch(o[s++%o.length]){case b:f++;break;case d:n++;break;case a:f--;break;case c:n--}}}return t};f.$FormationStraightStairs=function(q){var u=q.$Cols,v=q.$Rows,f=q.$Assembly,t=q.$Count,r=[],s=0,c=0,d=0,o=u-1,p=v-1,z=t-1;switch(f){case h:case k:case m:case g:var a=0,b=0;break;case i:case j:case l:case n:var a=o,b=0;break;default:f=n;var a=o,b=0}c=a;d=b;while(s<t){if(x(f)||w(f))e(r,z-s++,[d,c]);else e(r,s++,[d,c]);switch(f){case h:case k:c--;d++;break;case m:case g:c++;d--;break;case i:case j:c--;d--;break;case n:case l:default:c++;d++}if(c<0||d<0||c>o||d>p){switch(f){case h:case k:a++;break;case i:case j:case m:case g:b++;break;case n:case l:default:a--}if(a<0||b<0||a>o||b>p){switch(f){case h:case k:a=o;b++;break;case m:case g:b=p;a++;break;case i:case j:b=p;a--;break;case n:case l:default:a=0;b++}if(b>p)b=p;else if(b<0)b=0;else if(a>o)a=o;else if(a<0)a=0}d=b;c=a}}return r};f.$FormationSquare=function(h){var a=h.$Cols||1,b=h.$Rows||1,i=[],c,d,f,g,j;f=a<b?(b-a)/2:0;g=a>b?(a-b)/2:0;j=Math.round(Math.max(a/2,b/2))+1;for(c=0;c<a;c++)for(d=0;d<b;d++)e(i,j-Math.min(c+1+f,d+1+g,a-c+f,b-d+g),[d,c]);return i};f.$FormationRectangle=function(f){var c=f.$Cols||1,d=f.$Rows||1,g=[],a,b,h;h=Math.round(Math.min(c/2,d/2))+1;for(a=0;a<c;a++)for(b=0;b<d;b++)e(g,h-Math.min(a+1,b+1,c-a,d-b),[b,a]);return g};f.$FormationRandom=function(c){for(var d=[],a,b=0;b<c.$Rows;b++)for(a=0;a<c.$Cols;a++)e(d,Math.ceil(1e5*Math.random())%13,[b,a]);return d};f.$FormationCircle=function(c){for(var d=c.$Cols||1,f=c.$Rows||1,g=[],a,h=d/2-.5,i=f/2-.5,b=0;b<d;b++)for(a=0;a<f;a++)e(g,Math.round(Math.sqrt(Math.pow(b-h,2)+Math.pow(a-i,2))),[a,b]);return g};f.$FormationCross=function(c){for(var d=c.$Cols||1,f=c.$Rows||1,g=[],a,h=d/2-.5,i=f/2-.5,b=0;b<d;b++)for(a=0;a<f;a++)e(g,Math.round(Math.min(Math.abs(b-h),Math.abs(a-i))),[a,b]);return g};f.$FormationRectangleCross=function(f){for(var g=f.$Cols||1,h=f.$Rows||1,i=[],a,c=g/2-.5,d=h/2-.5,j=Math.max(c,d)+1,b=0;b<g;b++)for(a=0;a<h;a++)e(i,Math.round(j-Math.max(c-Math.abs(b-c),d-Math.abs(a-d)))-1,[a,b]);return i}},$JssorSlideshowRunner$=window.$JssorSlideshowRunner$=function(f,j,h,k,p){var c=this,l,b,a,o=0,n=k.$TransitionsOrder,i,d=8;function e(c,b){var a={$Interval:b,$Duration:1,$Delay:0,$Cols:1,$Rows:1,$Opacity:0,$Zoom:0,$Clip:0,$Move:false,$SlideOut:false,$Reverse:false,$Formation:$JssorSlideshowFormations$.$FormationRandom,$Assembly:1032,$ChessMode:{$Column:0,$Row:0},$Easing:$JssorEasing$.$EaseSwing,$Round:{},$Blocks:[],$During:{}};$Jssor$.$Extend(a,c);a.$Count=a.$Cols*a.$Rows;a.$Easing=$Jssor$.$FormatEasings(a.$Easing);a.$FramesCount=Math.ceil(a.$Duration/a.$Interval);a.$GetBlocks=function(c,b){c/=a.$Cols;b/=a.$Rows;var f=c+"x"+b;if(!a.$Blocks[f]){a.$Blocks[f]={$Width:c,$Height:b};for(var d=0;d<a.$Cols;d++)for(var e=0;e<a.$Rows;e++)a.$Blocks[f][e+","+d]={$Top:e*b,$Right:d*c+c,$Bottom:e*b+b,$Left:d*c}}return a.$Blocks[f]};if(a.$Brother){a.$Brother=e(a.$Brother,b);a.$SlideOut=true}return a}function g(w,e,a,r,j,h){var u=this,p,q={},f={},i=[],c,b,n,l=a.$ChessMode.$Column||0,m=a.$ChessMode.$Row||0,d=a.$GetBlocks(j,h),k=x(a),y=k.length-1,o=a.$Duration+a.$Delay*y,s=r+o,g=a.$SlideOut,t;s+=50;function x(a){var b=a.$Formation(a);return a.$Reverse?b.reverse():b}u.$EndTime=s;u.$ShowFrame=function(b){b-=r;var c=b<o;if(c||t){t=c;if(!g)b=o-b;var d=Math.ceil(b/a.$Interval);$Jssor$.$Each(f,function(a,c){var b=Math.max(d,a.$Min);b=Math.min(b,a.length-1);if(a.$LastFrameIndex!=b){if(!a.$LastFrameIndex&&!g)$Jssor$.$ShowElement(i[c]);else b==a.$Max&&g&&$Jssor$.$HideElement(i[c]);a.$LastFrameIndex=b;$Jssor$.$SetStylesEx(i[c],a[b])}})}};e=$Jssor$.$CloneNode(e);if($Jssor$.$IsBrowserIe9Earlier()){var z=!e["no-image"],v=$Jssor$.$FindChildrenByTag(e);$Jssor$.$Each(v,function(a){(z||a["jssor-slider"])&&$Jssor$.$CssOpacity(a,$Jssor$.$CssOpacity(a),true)})}$Jssor$.$Each(k,function(e,i){$Jssor$.$Each(e,function(C){var G=C[0],F=C[1],r=G+","+F,k=false,o=false,t=false;if(l&&F%2){if(l&3)k=!k;if(l&12)o=!o;if(l&16)t=!t}if(m&&G%2){if(m&3)k=!k;if(m&12)o=!o;if(m&16)t=!t}a.$Top=a.$Top||a.$Clip&4;a.$Bottom=a.$Bottom||a.$Clip&8;a.$Left=a.$Left||a.$Clip&1;a.$Right=a.$Right||a.$Clip&2;var y=o?a.$Bottom:a.$Top,v=o?a.$Top:a.$Bottom,x=k?a.$Right:a.$Left,w=k?a.$Left:a.$Right;a.$Clip=y||v||x||w;n={};b={$Top:0,$Left:0,$Opacity:1,$Width:j,$Height:h};c=$Jssor$.$Extend({},b);p=$Jssor$.$Extend({},d[r]);if(a.$Opacity)b.$Opacity=2-a.$Opacity;if(a.$ZIndex){b.$ZIndex=a.$ZIndex;c.$ZIndex=0}var E=a.$Cols*a.$Rows>1||a.$Clip;if(a.$Zoom||a.$Rotate){var D=true;if($Jssor$.$IsBrowserIe9Earlier())if(a.$Cols*a.$Rows>1)D=false;else E=false;if(D){b.$Zoom=a.$Zoom?a.$Zoom-1:1;c.$Zoom=1;if($Jssor$.$IsBrowserIe9Earlier()||$Jssor$.$IsBrowserOpera())b.$Zoom=Math.min(b.$Zoom,2);var J=a.$Rotate||0;b.$Rotate=J*360*(t?-1:1);c.$Rotate=0}}if(E){var e=p.$Offset={};if(a.$Clip){var s=a.$ScaleClip||1;if(y&&v){e.$Top=d.$Height/2*s;e.$Bottom=-e.$Top}else if(y)e.$Bottom=-d.$Height*s;else if(v)e.$Top=d.$Height*s;if(x&&w){e.$Left=d.$Width/2*s;e.$Right=-e.$Left}else if(x)e.$Right=-d.$Width*s;else if(w)e.$Left=d.$Width*s}n.$Clip=p;c.$Clip=d[r]}var H=k?1:-1,I=o?1:-1;if(a.x)b.$Left+=j*a.x*H;if(a.y)b.$Top+=h*a.y*I;$Jssor$.$Each(b,function(a,b){if($Jssor$.$IsNumeric(a))if(a!=c[b])n[b]=a-c[b]});q[r]=g?c:b;var z=a.$FramesCount,u=Math.round(i*a.$Delay/a.$Interval);f[r]=new Array(u);f[r].$Min=u;f[r].$Max=u+z-1;for(var B=0;B<=z;B++){var A=$Jssor$.$Cast(c,n,B/z,a.$Easing,a.$During,a.$Round,{$Move:a.$Move,$OriginalWidth:j,$OriginalHeight:h});A.$ZIndex=A.$ZIndex||1;f[r].push(A)}})});k.reverse();$Jssor$.$Each(k,function(a){$Jssor$.$Each(a,function(b){var f=b[0],d=b[1],c=f+","+d,a=e;if(d||f)a=$Jssor$.$CloneNode(e);$Jssor$.$SetStyles(a,q[c]);$Jssor$.$CssOverflow(a,"hidden");$Jssor$.$CssPosition(a,"absolute");w.$AddClipElement(a);i[c]=a;$Jssor$.$ShowElement(a,!g)})})}function m(){var c=this,e=0;$JssorAnimator$.call(c,0,l);c.$OnPositionChange=function(f,c){if(c-e>d){e=c;a&&a.$ShowFrame(c);b&&b.$ShowFrame(c)}};c.$Transition=i}c.$GetTransition=function(){var a=0,b=k.$Transitions,c=b.length;if(n)a=o++%c;else a=Math.floor(Math.random()*c);b[a]&&(b[a].$Index=a);return b[a]};c.$Initialize=function(x,y,p,s,k){$JssorDebug$.$Execute(function(){b&&$JssorDebug$.$Fail("slideshow runner has not been cleared.")});i=k;k=e(k,d);var o=s.$Item,n=p.$Item;o["no-image"]=!s.$Image;n["no-image"]=!p.$Image;var t=o,u=n,w=k,m=k.$Brother||e({},d);if(!k.$SlideOut){t=n;u=o}var v=m.$Shift||0;b=new g(f,u,m,Math.max(v-m.$Interval,0),j,h);a=new g(f,t,w,Math.max(m.$Interval-v,0),j,h);b.$ShowFrame(0);a.$ShowFrame(0);l=Math.max(b.$EndTime,a.$EndTime);c.$Index=x};c.$Clear=function(){f.$Clear();b=null;a=null};c.$GetProcessor=function(){var b=null;if(a)b=new m;return b};if($Jssor$.$IsBrowserIe9Earlier()||$Jssor$.$IsBrowserOpera()||p&&$Jssor$.$WebKitVersion()<537)d=16;$JssorObject$.call(c);$JssorAnimator$.call(c,-1e7,1e7)},$JssorSlider$=window.$JssorSlider$=function(c,Vb){var b=this;function tc(){var a=this;$JssorAnimator$.call(a,-1e8,2e8);a.$GetCurrentSlideInfo=function(){var b=a.$GetPosition_Display(),c=Math.floor(b),e=f(c),d=b-Math.floor(b);return{$Index:e,$VirtualIndex:c,$Position:d}};a.$OnPositionChange=function(c,a){var d=Math.floor(a);if(d!=a&&a>c)d++;Mb(d,true);b.$TriggerEvent($JssorSlider$.$EVT_POSITION_CHANGE,f(a),f(c),a,c)}}function sc(){var a=this;$JssorAnimator$.call(a,0,0,{$LoopLength:d});$Jssor$.$Each(o,function(b){p&1&&b.$SetLoopLength(d);a.$Chain(b);b.$Shift(T/Sb)})}function rc(){var a=this,b=ob.$Elmt;$JssorAnimator$.call(a,-1,2,{$Easing:$JssorEasing$.$EaseLinear,$Setter:{$Position:Rb},$LoopLength:d},b,{$Position:1},{$Position:-2});a.$Wrapper=b;$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(ob.$Elmt,"debug-id","slide_container")})}function fc(m,l){var c=this,g,h,j,k,d;$JssorAnimator$.call(c,-1e8,2e8,{$IntervalMax:100});c.$OnStart=function(){E=true;J=null;b.$TriggerEvent($JssorSlider$.$EVT_SWIPE_START,f(i.$GetPosition()),i.$GetPosition())};c.$OnStop=function(){E=false;k=false;var a=i.$GetCurrentSlideInfo();b.$TriggerEvent($JssorSlider$.$EVT_SWIPE_END,f(i.$GetPosition()),i.$GetPosition());!a.$Position&&vc(a.$VirtualIndex,e)};c.$OnPositionChange=function(f,e){var b;if(k)b=d;else{b=h;if(j){var c=e/j;b=a.$SlideEasing(c)*(h-g)+g}}i.$GoToPosition(b)};c.$PlayCarousel=function(a,d,b,e){$JssorDebug$.$Execute(function(){c.$IsPlaying()&&$JssorDebug$.$Fail("The carousel is already playing.")});g=a;h=d;j=b;i.$GoToPosition(a);c.$GoToPosition(0);c.$PlayToPosition(b,e)};c.$StandBy=function(a){k=true;d=a;c.$Play(a,null,true)};c.$SetStandByPosition=function(a){d=a};c.$MoveCarouselTo=function(a){i.$GoToPosition(a)};i=new tc;i.$Combine(m);i.$Combine(l)}function gc(){var b=this,a=Pb();$Jssor$.$CssZIndex(a,0);$Jssor$.$Css(a,"pointerEvents","none");b.$Elmt=a;b.$AddClipElement=function(b){$Jssor$.$AppendChild(a,b);$Jssor$.$ShowElement(a)};b.$Clear=function(){$Jssor$.$HideElement(a);$Jssor$.$Empty(a)}}function qc(j,i){var c=this,q,u,r,g,w=[],t,z,Q,D,I,C,k,s,n,O;$JssorAnimator$.call(c,-h,h+1,{$SlideItemAnimator:true});function A(a){q&&q.$Revert();P(j,a,0);C=true;q=new v.$Class(j,v,$Jssor$.$ParseFloat($Jssor$.$AttributeEx(j,"idle"))||ec);$JssorDebug$.$LiveStamp(q,"caption_slider_"+Db);$JssorDebug$.$Execute(function(){Db++});q.$GoToPosition(0)}function S(){q.$Version<v.$Version&&A()}function G(l,n,k){if(!D){D=true;if(g&&k){var e=k.width,d=k.height,j=e,h=d;if(e&&d&&a.$FillMode){if(a.$FillMode&3&&(!(a.$FillMode&4)||e>y||d>x)){var f=false,m=y/x*d/e;if(a.$FillMode&1)f=m>1;else if(a.$FillMode&2)f=m<1;j=f?e*x/d:y;h=f?x:d*y/e}$Jssor$.$CssWidth(g,j);$Jssor$.$CssHeight(g,h);$Jssor$.$CssTop(g,(x-h)/2);$Jssor$.$CssLeft(g,(y-j)/2)}$Jssor$.$CssPosition(g,"absolute");b.$TriggerEvent($JssorSlider$.$EVT_LOAD_END,i)}}$Jssor$.$HideElement(n);l&&l(c)}function R(b,d,g,h){if(h==J&&e==i&&F)if(!uc){var a=f(b);m.$Initialize(a,i,d,c,g);d.$HideContentForSlideshow();L.$Shift(a-L.$GetPosition_OuterBegin()-1);L.$GoToPosition(a);l.$PlayCarousel(b,b,0)}}function U(b){if(b==J&&e==i){if(!k){var a=null;if(m)if(m.$Index==i)a=m.$GetProcessor();else m.$Clear();S();k=new nc(j,i,a,q);k.$SetPlayer(n)}!k.$IsPlaying()&&k.$Replay()}}function K(d,b,e){if(d==i){if(d!=b)o[b]&&o[b].$ParkOut();else!e&&k&&k.$AdjustIdleOnPark();n&&n.$Enable();var f=J=$Jssor$.$GetNow();c.$LoadImage($Jssor$.$CreateCallback(null,U,f))}else{var j=Math.abs(i-d),g=h+a.$LazyLoading-1;(!I||j<=g)&&c.$LoadImage()}}function V(){if(e==i&&k){k.$Stop();n&&n.$Quit();n&&n.$Disable();k.$OpenSlideshowPanel()}}function W(){e==i&&k&&k.$Stop()}function T(a){!B&&b.$TriggerEvent($JssorSlider$.$EVT_CLICK,i,a)}function H(){n=s.pInstance;k&&k.$SetPlayer(n)}c.$LoadImage=function(c,a){a=a||r;if(w.length&&!D){$Jssor$.$ShowElement(a);if(!Q){Q=true;b.$TriggerEvent($JssorSlider$.$EVT_LOAD_START,i);$Jssor$.$Each(w,function(a){if(!$Jssor$.$Attribute(a,"src")){a.src=$Jssor$.$AttributeEx(a,"src2");$Jssor$.$CssDisplay(a,a["display-origin"])}})}$Jssor$.$LoadImages(w,g,$Jssor$.$CreateCallback(null,G,c,a))}else G(c,a)};c.$GoForNextSlide=function(){var g=i;if(a.$AutoPlaySteps<0)g-=d;var b=g+a.$AutoPlaySteps*lc;if(p&2)b=f(b);if(!(p&1))b=Math.max(0,Math.min(b,d-h));if(b!=i){if(m){var c=m.$GetTransition(d);if(c){var j=J=$Jssor$.$GetNow(),e=o[f(b)];return e.$LoadImage($Jssor$.$CreateCallback(null,R,b,e,c,j),r)}}bb(b)}};c.$TryActivate=function(){K(i,i,true)};c.$ParkOut=function(){n&&n.$Quit();n&&n.$Disable();c.$UnhideContentForSlideshow();k&&k.$Abort();k=null;A()};c.$StampSlideItemElements=function(a){a=O+"_"+a;$JssorDebug$.$Execute(function(){g&&$Jssor$.$Attribute(g,"debug-id",a+"_slide_item_image_id");$Jssor$.$Attribute(j,"debug-id",a+"_slide_item_item_id")});$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(u,"debug-id",a+"_slide_item_wrapper_id")});$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(r,"debug-id",a+"_loading_container_id")})};c.$HideContentForSlideshow=function(){$Jssor$.$HideElement(j)};c.$UnhideContentForSlideshow=function(){$Jssor$.$ShowElement(j)};c.$EnablePlayer=function(){n&&n.$Enable()};function P(a,b,c){$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(a,"jssor-slider")&&$JssorDebug$.$Log("Child slider found.")});if($Jssor$.$Attribute(a,"jssor-slider"))return;if(!C){if(a.tagName=="IMG"){w.push(a);if(!$Jssor$.$Attribute(a,"src")){I=true;a["display-origin"]=$Jssor$.$CssDisplay(a);$Jssor$.$HideElement(a)}}$Jssor$.$IsBrowserIe9Earlier()&&$Jssor$.$CssZIndex(a,($Jssor$.$CssZIndex(a)||0)+1)}var d=$Jssor$.$Children(a);$Jssor$.$Each(d,function(d){var f=d.tagName,h=$Jssor$.$AttributeEx(d,"u");if(h=="player"&&!s){s=d;if(s.pInstance)H();else $Jssor$.$AddEvent(s,"dataavailable",H)}if(h=="caption"){if(b){$Jssor$.$CssTransformOrigin(d,$Jssor$.$AttributeEx(d,"to"));$Jssor$.$CssBackfaceVisibility(d,$Jssor$.$AttributeEx(d,"bf"));$Jssor$.$CssTransformStyle(d,"preserve-3d")}else if(!$Jssor$.$IsBrowserIE()){var e=$Jssor$.$CloneNode(d,false,true);$Jssor$.$InsertBefore(e,d,a);$Jssor$.$RemoveElement(d,a);d=e;b=true}}else if(!C&&!c&&!g){if(f=="A"){if($Jssor$.$AttributeEx(d,"u")=="image"){g=$Jssor$.$FindChildByTag(d,"IMG");$JssorDebug$.$Execute(function(){!g&&$JssorDebug$.$Error("slide html code definition error, no 'IMG' found in a 'image with link' slide.\r\n"+a.outerHTML)})}else g=$Jssor$.$FindChild(d,"image",true);if(g){t=d;$Jssor$.$CssDisplay(t,"block");$Jssor$.$SetStyles(t,M);z=$Jssor$.$CloneNode(t,true);$Jssor$.$CssPosition(t,"relative");$Jssor$.$CssOpacity(z,0);$Jssor$.$Css(z,"backgroundColor","#000")}}else if(f=="IMG"&&$Jssor$.$AttributeEx(d,"u")=="image")g=d;if(g){g.border=0;$Jssor$.$SetStyles(g,M)}}P(d,b,c+1)})}c.$OnInnerOffsetChange=function(c,b){var a=h-b;Rb(u,a)};c.$Index=i;$JssorObject$.call(c);$Jssor$.$CssPerspective(j,$Jssor$.$AttributeEx(j,"p"));$Jssor$.$CssPerspectiveOrigin(j,$Jssor$.$AttributeEx(j,"po"));var E=$Jssor$.$FindChild(j,"thumb",true);if(E){c.$Thumb=$Jssor$.$CloneNode(E);$Jssor$.$HideElement(E)}$Jssor$.$ShowElement(j);r=$Jssor$.$CloneNode(N);$Jssor$.$CssZIndex(r,1e3);$Jssor$.$AddEvent(j,"click",T);A(true);c.$Image=g;c.$Link=z;c.$Item=j;c.$Wrapper=u=j;$Jssor$.$AppendChild(u,r);b.$On(203,K);b.$On(28,W);b.$On(24,V);$JssorDebug$.$Execute(function(){O=cc++});$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(u,"debug-id","slide-"+i)})}function nc(y,f,l,p){var a=this,j=0,u=0,g,h,d,c,i,t,s,k=o[f];$JssorAnimator$.call(a,0,0);function v(){$Jssor$.$Empty(C);Tb&&i&&k.$Link&&$Jssor$.$AppendChild(C,k.$Link);$Jssor$.$ShowElement(C,!i&&k.$Image)}function w(){a.$Replay()}function x(b){s=b;a.$Stop();a.$Replay()}a.$Replay=function(){var l=a.$GetPosition_Display();if(!n&&!E&&!s&&e==f){if(!l){if(g&&!i){i=true;a.$OpenSlideshowPanel(true);b.$TriggerEvent($JssorSlider$.$EVT_SLIDESHOW_START,f,j,u,g,c)}v()}var m,p=$JssorSlider$.$EVT_STATE_CHANGE;if(l!=c)if(l==d)m=c;else if(l==h)m=d;else if(!l)m=h;else m=a.$GetPlayToPosition();b.$TriggerEvent(p,f,l,j,h,d,c);var o=F&&(!q||r);if(l==c)(d!=c&&!(q&12)||o)&&k.$GoForNextSlide();else(o||l!=d)&&a.$PlayToPosition(m,w)}};a.$AdjustIdleOnPark=function(){d==c&&d==a.$GetPosition_Display()&&a.$GoToPosition(h)};a.$Abort=function(){m&&m.$Index==f&&m.$Clear();var e=a.$GetPosition_Display();e<c&&b.$TriggerEvent($JssorSlider$.$EVT_STATE_CHANGE,f,-e-1,j,h,d,c)};a.$OpenSlideshowPanel=function(a){l&&$Jssor$.$CssOverflow(V,a&&l.$Transition.$Outside?"":"hidden")};a.$OnInnerOffsetChange=function(e,a){if(i&&a>=g){i=false;v();k.$UnhideContentForSlideshow();m.$Clear();b.$TriggerEvent($JssorSlider$.$EVT_SLIDESHOW_END,f,j,u,g,c)}b.$TriggerEvent($JssorSlider$.$EVT_PROGRESS_CHANGE,f,a,j,h,d,c)};a.$SetPlayer=function(a){if(a&&!t){t=a;a.$On($JssorPlayer$.$EVT_SWITCH,x)}};l&&a.$Chain(l);g=a.$GetPosition_OuterEnd();a.$Chain(p);h=g+p.$IdleBegin;d=g+p.$IdleEnd;c=a.$GetPosition_OuterEnd()}function Rb(e,d){var c=j>0?j:H,a=sb*d*(c&1),b=tb*d*(c>>1&1);a=Math.round(a);b=Math.round(b);$Jssor$.$CssLeft(e,a);$Jssor$.$CssTop(e,b)}function Ib(){fb=E;Bb=l.$GetPlayToPosition();s=i.$GetPosition()}function Wb(){Ib();if(n||!r&&q&12){l.$Stop();b.$TriggerEvent($JssorSlider$.$EVT_FREEZE)}}function Ub(f){if(!n&&(r||!(q&12))&&!l.$IsPlaying()){var c=i.$GetPosition(),b=Math.ceil(s);if(f&&Math.abs(t)>=a.$MinDragOffsetToSlide){b=Math.ceil(c);b+=S}if(!(p&1))b=Math.min(d-h,Math.max(b,0));var e=Math.abs(b-c);e=1-Math.pow(1-e,5);if(!B&&fb)l.$Continue(Bb);else if(c==b){kb.$EnablePlayer();kb.$TryActivate()}else l.$PlayCarousel(c,b,e*Nb)}}function Ab(a){!$Jssor$.$AttributeEx($Jssor$.$EvtSrc(a),"nodrag")&&$Jssor$.$CancelEvent(a)}function jc(a){Qb(a,1)}function Qb(a,c){a=$Jssor$.$GetEvent(a);var g=$Jssor$.$EvtSrc(a);if(!z&&!$Jssor$.$AttributeEx(g,"nodrag")&&kc()&&(!c||a.touches.length==1)){n=true;rb=false;J=null;$Jssor$.$AddEvent(document,c?"touchmove":"mousemove",vb);$Jssor$.$GetNow();B=0;Wb();if(!fb)j=0;if(c){var e=a.touches[0];mb=e.clientX;nb=e.clientY}else{var d=$Jssor$.$MousePosition(a);mb=d.x;nb=d.y}t=0;R=0;S=0;b.$TriggerEvent($JssorSlider$.$EVT_DRAG_START,f(s),s,a)}}function vb(b){if(n){b=$Jssor$.$GetEvent(b);var c;if(b.type!="mousemove"){var o=b.touches[0];c={x:o.clientX,y:o.clientY}}else c=$Jssor$.$MousePosition(b);if(c){var k=c.x-mb,m=c.y-nb;if(Math.floor(s)!=s)j=j||H&z;if((k||m)&&!j){if(z==3)if(Math.abs(m)>Math.abs(k))j=2;else j=1;else j=z;if(X&&j==1&&Math.abs(m)-Math.abs(k)>3)rb=true}if(j){var a=m,i=tb;if(j==1){a=k;i=sb}if(!(p&1)){if(a>0){var f=i*e,g=a-f;if(g>0)a=f+Math.sqrt(g)*5}if(a<0){var f=i*(d-h-e),g=-a-f;if(g>0)a=-f-Math.sqrt(g)*5}}if(t-R<-2)S=0;else if(t-R>2)S=-1;R=t;t=a;jb=s-t/i/(Q||1);if(t&&j&&!rb){$Jssor$.$CancelEvent(b);if(!E)l.$StandBy(jb);else l.$SetStandByPosition(jb)}}}}}function ab(){hc();if(n){n=false;$Jssor$.$GetNow();$Jssor$.$RemoveEvent(document,"mousemove",vb);$Jssor$.$RemoveEvent(document,"touchmove",vb);B=t;l.$Stop();var a=i.$GetPosition();b.$TriggerEvent($JssorSlider$.$EVT_DRAG_END,f(a),a,f(s),s);q&12&&Ib();Ub(true)}}function ac(b){if(B){$Jssor$.$StopEvent(b);var a=$Jssor$.$EvtSrc(b);while(a&&g!==a){a.tagName=="A"&&$Jssor$.$CancelEvent(b);try{a=a.parentNode}catch(c){break}}}}function dc(a){o[e];e=f(a);kb=o[e];Mb(a);return e}function vc(a,c){j=0;dc(a);b.$TriggerEvent($JssorSlider$.$EVT_PARK,f(a),c)}function Mb(a,b){pb=a;$Jssor$.$Each(K,function(c){c.$SetCurrentIndex(f(a),a,b)})}function kc(){var b=$JssorSlider$.$DragRegistry||0,a=P;if(X)a&1&&(a&=1);$JssorSlider$.$DragRegistry|=a;return z=a&~b}function hc(){if(z){$JssorSlider$.$DragRegistry&=~P;z=0}}function Pb(){var a=$Jssor$.$CreateDiv();$Jssor$.$SetStyles(a,M);$Jssor$.$CssPosition(a,"absolute");return a}function f(a){return(a%d+d)%d}function bc(b,c){if(c)if(!p){b=Math.min(Math.max(b+pb,0),d-h);c=false}else if(p&2){b=f(b+pb);c=false}bb(b,a.$SlideDuration,c)}function qb(){$Jssor$.$Each(K,function(a){a.$Show(a.$Options.$ChanceToShow<=r)})}function Yb(){if(!r){r=1;qb();if(!n){q&12&&Ub();q&3&&o[e].$TryActivate()}}}function Xb(){if(r){r=0;qb();n||!(q&12)||Wb()}}function Zb(){M={$Width:y,$Height:x,$Top:0,$Left:0};$Jssor$.$Each(D,function(a){$Jssor$.$SetStyles(a,M);$Jssor$.$CssPosition(a,"absolute");$Jssor$.$CssOverflow(a,"hidden");$Jssor$.$HideElement(a)});$Jssor$.$SetStyles(N,M)}function Z(b,a){bb(b,a,true)}function bb(g,e,k){if(Kb&&(!n&&(r||!(q&12))||a.$NaviQuitDrag)){E=true;n=false;l.$Stop();if(e==undefined)e=Nb;var c=xb.$GetPosition_Display(),b=g;if(k){b=c+g;if(g>0)b=Math.ceil(b);else b=Math.floor(b)}if(p&2)b=f(b);if(!(p&1))b=Math.max(0,Math.min(b,d-h));var j=(b-c)%d;b=c+j;var i=c==b?0:e*Math.abs(j);i=Math.min(i,e*h*1.5);l.$PlayCarousel(c,b,i||1)}}b.$PlayTo=bb;b.$GoTo=function(a){i.$GoToPosition(a)};b.$Next=function(){Z(1)};b.$Prev=function(){Z(-1)};b.$Pause=function(){F=false};b.$Play=function(){if(!F){F=true;o[e]&&o[e].$TryActivate()}};b.$SetSlideshowTransitions=function(b){$JssorDebug$.$Execute(function(){(!b||!b.length)&&$JssorDebug$.$Error("Can not set slideshow transitions, no transitions specified.")});a.$SlideshowOptions.$Transitions=b};b.$SetCaptionTransitions=function(a){$JssorDebug$.$Execute(function(){(!a||!a.length)&&$JssorDebug$.$Error("Can not set caption transitions, no transitions specified")});v.$Transitions=a;v.$Version=$Jssor$.$GetNow()};b.$SlidesCount=function(){return D.length};b.$CurrentIndex=function(){return e};b.$IsAutoPlaying=function(){return F};b.$IsDragging=function(){return n};b.$IsSliding=function(){return E};b.$IsMouseOver=function(){return!r};b.$LastDragSucceded=function(){return B};function O(){return $Jssor$.$CssWidth(k||c)}function W(){return $Jssor$.$CssHeight(k||c)}b.$OriginalWidth=b.$GetOriginalWidth=O;b.$OriginalHeight=b.$GetOriginalHeight=W;function zb(d,e){if(d==undefined)return $Jssor$.$CssWidth(c);if(!k){$JssorDebug$.$Execute(function(){var b=$Jssor$.$Css(c,"width"),a=$Jssor$.$Css(c,"height"),e=$Jssor$.$CssP(c,"width"),d=$Jssor$.$CssP(c,"height");(!b||b.indexOf("px")==-1)&&$JssorDebug$.$Fail("Cannot scale jssor slider, 'width' of 'outer container' not specified. Please specify 'width' in pixel. e.g. 'width: 600px;'");(!a||a.indexOf("px")==-1)&&$JssorDebug$.$Fail("Cannot scale jssor slider, 'height' of 'outer container' not specified. Please specify 'height' in pixel. e.g. 'height: 300px;'");b.indexOf("%")!=-1&&$JssorDebug$.$Fail("Cannot scale jssor slider, 'width' of 'outer container' not valid. Please specify 'width' in pixel. e.g. 'width: 600px;'");a.indexOf("%")!=-1&&$JssorDebug$.$Fail("Cannot scale jssor slider, 'height' of 'outer container' not valid. Please specify 'height' in pixel. e.g. 'height: 300px;'");!e&&$JssorDebug$.$Fail("Cannot scale jssor slider, 'width' of 'outer container' not valid. 'width' of 'outer container' should be positive number. e.g. 'width: 600px;'");!d&&$JssorDebug$.$Fail("Cannot scale jssor slider, 'height' of 'outer container' not valid. 'height' of 'outer container' should be positive number. e.g. 'height: 300px;'")});var a=$Jssor$.$CreateDiv(document);$Jssor$.$ClassName(a,$Jssor$.$ClassName(c));$Jssor$.$CssCssText(a,$Jssor$.$CssCssText(c));$Jssor$.$CssDisplay(a,"block");$Jssor$.$CssPosition(a,"relative");$Jssor$.$CssTop(a,0);$Jssor$.$CssLeft(a,0);$Jssor$.$CssOverflow(a,"visible");k=$Jssor$.$CreateDiv(document);$Jssor$.$CssPosition(k,"absolute");$Jssor$.$CssTop(k,0);$Jssor$.$CssLeft(k,0);$Jssor$.$CssWidth(k,$Jssor$.$CssWidth(c));$Jssor$.$CssHeight(k,$Jssor$.$CssHeight(c));$Jssor$.$CssTransformOrigin(k,"0 0");$Jssor$.$AppendChild(k,a);var h=$Jssor$.$Children(c);$Jssor$.$AppendChild(c,k);$Jssor$.$Css(c,"backgroundImage","");$Jssor$.$Each(h,function(b){$Jssor$.$AppendChild($Jssor$.$AttributeEx(b,"noscale")?c:a,b);$Jssor$.$AttributeEx(b,"autocenter")&&Cb.push(b)})}$JssorDebug$.$Execute(function(){(!d||d<0)&&$JssorDebug$.$Fail("'$ScaleWidth' error, 'dimension' should be positive value.")});$JssorDebug$.$Execute(function(){if(!Eb)Eb=b.$Elmt.scrollWidth});Q=d/(e?$Jssor$.$CssHeight:$Jssor$.$CssWidth)(k);$Jssor$.$CssScale(k,Q);var g=e?Q*O():d,f=e?d:Q*W();$Jssor$.$CssWidth(c,g);$Jssor$.$CssHeight(c,f);$Jssor$.$Each(Cb,function(a){var b=$Jssor$.$ParseInt($Jssor$.$AttributeEx(a,"autocenter"));$Jssor$.$CenterElement(a,b)})}b.$ScaleHeight=b.$GetScaleHeight=function(a){if(a==undefined)return $Jssor$.$CssHeight(c);zb(a,true)};b.$ScaleWidth=b.$SetScaleWidth=b.$GetScaleWidth=zb;b.$GetVirtualIndex=function(a){var c=Math.ceil(f(T/Sb)),b=f(a-e+c);if(b>h){if(a-e>d/2)a-=d;else if(a-e<=-d/2)a+=d}else a=e+b-c;return a};$JssorObject$.call(b);$JssorDebug$.$Execute(function(){var a=$Jssor$.$GetElement(c);!a&&$JssorDebug$.$Fail("Outer container '"+c+"' not found.")});b.$Elmt=c=$Jssor$.$GetElement(c);var Eb,Db=1,a=$Jssor$.$Extend({$FillMode:0,$LazyLoading:1,$ArrowKeyNavigation:1,$StartIndex:0,$AutoPlay:false,$Loop:1,$NaviQuitDrag:true,$AutoPlaySteps:1,$AutoPlayInterval:3e3,$PauseOnHover:1,$SlideDuration:500,$SlideEasing:$JssorEasing$.$EaseOutQuad,$MinDragOffsetToSlide:20,$SlideSpacing:0,$Cols:1,$Align:0,$UISearchMode:1,$PlayOrientation:1,$DragOrientation:1},Vb);if(a.$Idle!=undefined)a.$AutoPlayInterval=a.$Idle;if(a.$DisplayPieces!=undefined)a.$Cols=a.$DisplayPieces;if(a.$ParkingPosition!=undefined)a.$Align=a.$ParkingPosition;$JssorDebug$.$Execute(function(){a=$Jssor$.$Extend({$SlideWidth:undefined,$SlideHeight:undefined,$SlideshowOptions:undefined,$CaptionSliderOptions:undefined,$BulletNavigatorOptions:undefined,$ArrowNavigatorOptions:undefined,$ThumbnailNavigatorOptions:undefined},a)});var H=a.$PlayOrientation&3,lc=(a.$PlayOrientation&4)/-4||1,w=a.$SlideshowOptions,v=$Jssor$.$Extend({$Class:$JssorCaptionSliderBase$,$PlayInMode:1,$PlayOutMode:1},a.$CaptionSliderOptions);v.$Transitions=v.$Transitions||v.$CaptionTransitions;var G=a.$BulletNavigatorOptions,u=a.$ArrowNavigatorOptions,A=a.$ThumbnailNavigatorOptions;$JssorDebug$.$Execute(function(){w&&!w.$Class&&$JssorDebug$.$Fail("Option $SlideshowOptions error, class not specified.")});$JssorDebug$.$Execute(function(){a.$CaptionSliderOptions&&!a.$CaptionSliderOptions.$Class&&$JssorDebug$.$Fail("Option $CaptionSliderOptions error, class not specified.")});$JssorDebug$.$Execute(function(){G&&!G.$Class&&$JssorDebug$.$Fail("Option $BulletNavigatorOptions error, class not specified.")});$JssorDebug$.$Execute(function(){u&&!u.$Class&&$JssorDebug$.$Fail("Option $ArrowNavigatorOptions error, class not specified.")});$JssorDebug$.$Execute(function(){A&&!A.$Class&&$JssorDebug$.$Fail("Option $ThumbnailNavigatorOptions error, class not specified.")});var I=!a.$UISearchMode,k,g=$Jssor$.$FindChild(c,"slides",I),N=$Jssor$.$FindChild(c,"loading",I)||$Jssor$.$CreateDiv(document),eb=$Jssor$.$FindChild(c,"navigator",I),wb=$Jssor$.$FindChild(c,"arrowleft",I),ub=$Jssor$.$FindChild(c,"arrowright",I),db=$Jssor$.$FindChild(c,"thumbnavigator",I);$JssorDebug$.$Execute(function(){if(eb&&!G)throw new Error("Bullet navigator container defined but $BulletNavigatorOptions not specified.");if((wb||ub)&&!u)throw new Error("arrowleft or arrowright defined, but $ArrowNavigatorOptions not specified.");if(db&&!A)throw new Error("Thumbnail navigator container defined, but $ThumbnailNavigatorOptions not specified.");});var hb=$Jssor$.$CssWidth(g),gb=$Jssor$.$CssHeight(g);$JssorDebug$.$Execute(function(){isNaN(hb)&&$JssorDebug$.$Fail("Width of slides container wrong specification, it should be specified in pixel (like style='width: 600px;').");hb==undefined&&$JssorDebug$.$Fail("Width of slides container not specified, it should be specified in pixel (like style='width: 600px;').");isNaN(gb)&&$JssorDebug$.$Fail("Height of slides container wrong specification, it should be specified in pixel (like style='height: 300px;').");gb==undefined&&$JssorDebug$.$Fail("Height of slides container not specified, it should be specified in pixel (like style='height: 300px;').");var c=$Jssor$.$CssOverflow(g),a=$Jssor$.$Css(g,"overflowX"),b=$Jssor$.$Css(g,"overflowY");c!="hidden"&&(a!="hidden"||b!="hidden")&&$JssorDebug$.$Fail("Overflow of slides container wrong specification, it should be specified as 'hidden' (style='overflow:hidden;').")});$JssorDebug$.$Execute(function(){!$Jssor$.$IsNumeric(a.$Cols)&&$JssorDebug$.$Fail("Option $Cols error, it should be a numeric value and greater than or equal to 1.");a.$Cols<1&&$JssorDebug$.$Fail("Option $Cols error, it should be greater than or equal to 1.");a.$Cols>1&&a.$DragOrientation&&a.$DragOrientation!=H&&$JssorDebug$.$Fail("Option $DragOrientation error, it should be 0 or the same of $PlayOrientation when $Cols is greater than 1.");!$Jssor$.$IsNumeric(a.$Align)&&$JssorDebug$.$Fail("Option $Align error, it should be a numeric value.");a.$Align&&a.$DragOrientation&&a.$DragOrientation!=H&&$JssorDebug$.$Fail("Option $DragOrientation error, it should be 0 or the same of $PlayOrientation when $Align is not equal to 0.")});var M,D=[],mc=$Jssor$.$Children(g);$Jssor$.$Each(mc,function(a){if(a.tagName=="DIV"&&!$Jssor$.$AttributeEx(a,"u"))D.push(a);else $Jssor$.$IsBrowserIe9Earlier()&&$Jssor$.$CssZIndex(a,($Jssor$.$CssZIndex(a)||0)+1)});$JssorDebug$.$Execute(function(){D.length<1&&$JssorDebug$.$Error("Slides html code definition error, there must be at least 1 slide to initialize a slider.")});var cc=0,e=-1,pb,kb,d=D.length,y=a.$SlideWidth||hb,x=a.$SlideHeight||gb,Ob=a.$SlideSpacing,sb=y+Ob,tb=x+Ob,Sb=H&1?sb:tb,h=Math.min(a.$Cols,d),V,j,z,rb,K=[],Jb,Lb,Hb,Tb,uc,F,q=a.$PauseOnHover,ec=a.$AutoPlayInterval,Nb=a.$SlideDuration,ib,lb,T,Kb=h<d,p=Kb?a.$Loop:0,P,B,r=1,E,n,J,mb=0,nb=0,t,R,S,xb,i,L,l,ob=new gc,Q,Cb=[];F=a.$AutoPlay;b.$Options=Vb;Zb();$Jssor$.$Attribute(c,"jssor-slider",true);$Jssor$.$CssZIndex(g,$Jssor$.$CssZIndex(g)||0);$Jssor$.$CssPosition(g,"absolute");V=$Jssor$.$CloneNode(g,true);$Jssor$.$InsertBefore(V,g);if(w){Tb=w.$ShowLink;ib=w.$Class;$JssorDebug$.$Execute(function(){(!w.$Transitions||!w.$Transitions.length)&&$JssorDebug$.$Error("Invalid '$SlideshowOptions', no '$Transitions' specified.")});lb=h==1&&d>1&&ib&&(!$Jssor$.$IsBrowserIE()||$Jssor$.$BrowserVersion()>=8)}T=lb||h>=d||!(p&1)?0:a.$Align;P=(h>1||T?H:-1)&a.$DragOrientation;var U=g,o=[],m,C,yb=$Jssor$.$Device(),X=yb.$Touchable,s,fb,Bb,jb;yb.$TouchActionAttr&&$Jssor$.$Css(U,yb.$TouchActionAttr,([null,"pan-y","pan-x","none"])[P]||"");L=new rc;if(lb)m=new ib(ob,y,x,w,X);$Jssor$.$AppendChild(V,L.$Wrapper);$Jssor$.$CssOverflow(g,"hidden");C=Pb();$Jssor$.$Css(C,"backgroundColor","#000");$Jssor$.$CssOpacity(C,0);$Jssor$.$InsertBefore(C,U.firstChild,U);for(var cb=0;cb<D.length;cb++){var oc=D[cb],pc=new qc(oc,cb);o.push(pc)}$Jssor$.$HideElement(N);$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(N,"debug-id","loading-container")});xb=new sc;l=new fc(xb,L);$JssorDebug$.$Execute(function(){$Jssor$.$Attribute(U,"debug-id","slide-board")});if(P){$Jssor$.$AddEvent(g,"mousedown",Qb);$Jssor$.$AddEvent(g,"touchstart",jc);$Jssor$.$AddEvent(g,"dragstart",Ab);$Jssor$.$AddEvent(g,"selectstart",Ab);$Jssor$.$AddEvent(document,"mouseup",ab);$Jssor$.$AddEvent(document,"touchend",ab);$Jssor$.$AddEvent(document,"touchcancel",ab);$Jssor$.$AddEvent(window,"blur",ab)}q&=X?10:5;if(eb&&G){Jb=new G.$Class(eb,G,O(),W());K.push(Jb)}if(u&&wb&&ub){u.$Loop=p;u.$Cols=h;Lb=new u.$Class(wb,ub,u,O(),W());K.push(Lb)}if(db&&A){A.$StartIndex=a.$StartIndex;Hb=new A.$Class(db,A);K.push(Hb)}$Jssor$.$Each(K,function(a){a.$Reset(d,o,N);a.$On($JssorNavigatorEvents$.$NAVIGATIONREQUEST,bc)});$Jssor$.$Css(c,"visibility","visible");zb(O());$Jssor$.$AddEvent(g,"click",ac);$Jssor$.$AddEvent(c,"mouseout",$Jssor$.$MouseOverOutFilter(Yb,c));$Jssor$.$AddEvent(c,"mouseover",$Jssor$.$MouseOverOutFilter(Xb,c));qb();a.$ArrowKeyNavigation&&$Jssor$.$AddEvent(document,"keydown",function(b){if(b.keyCode==37)Z(-a.$ArrowKeyNavigation);else b.keyCode==39&&Z(a.$ArrowKeyNavigation)});var Y=a.$StartIndex;if(!(p&1))Y=Math.max(0,Math.min(Y,d-h));l.$PlayCarousel(Y,Y,0)};$JssorSlider$.$EVT_CLICK=21;$JssorSlider$.$EVT_DRAG_START=22;$JssorSlider$.$EVT_DRAG_END=23;$JssorSlider$.$EVT_SWIPE_START=24;$JssorSlider$.$EVT_SWIPE_END=25;$JssorSlider$.$EVT_LOAD_START=26;$JssorSlider$.$EVT_LOAD_END=27;$JssorSlider$.$EVT_FREEZE=28;$JssorSlider$.$EVT_POSITION_CHANGE=202;$JssorSlider$.$EVT_PARK=203;$JssorSlider$.$EVT_SLIDESHOW_START=206;$JssorSlider$.$EVT_SLIDESHOW_END=207;$JssorSlider$.$EVT_PROGRESS_CHANGE=208;$JssorSlider$.$EVT_STATE_CHANGE=209;var $JssorNavigatorEvents$={$NAVIGATIONREQUEST:1,$INDEXCHANGE:2,$RESET:3},$JssorBulletNavigator$=window.$JssorBulletNavigator$=function(b,v){var d=this;$JssorObject$.call(d);b=$Jssor$.$GetElement(b);var l,t,s,k,g=0,a,h,f,p,q,e,c,j,i,u=[],r=[];function o(a){a!=-1&&r[a].$Selected(a==g)}function m(a){d.$TriggerEvent($JssorNavigatorEvents$.$NAVIGATIONREQUEST,a*h)}d.$Elmt=b;d.$GetCurrentIndex=function(){return k};d.$SetCurrentIndex=function(a){if(a!=k){var c=g,b=Math.floor(a/h);g=b;k=a;o(c);o(b)}};d.$Show=function(a){$Jssor$.$ShowElement(b,a)};var n;d.$Reset=function(A){if(!n){l=Math.ceil(A/h);g=0;var v=j+p,x=i+q,o=Math.ceil(l/f)-1;t=j+v*(!e?o:f-1);s=i+x*(e?o:f-1);$Jssor$.$CssWidth(b,t);$Jssor$.$CssHeight(b,s);for(var d=0;d<l;d++){var z=$Jssor$.$CreateSpan();$Jssor$.$InnerText(z,d+1);var k=$Jssor$.$BuildElement(c,"numbertemplate",z,true);$Jssor$.$CssPosition(k,"absolute");var y=d%(o+1);$Jssor$.$CssLeft(k,!e?v*y:d%f*v);$Jssor$.$CssTop(k,e?x*y:Math.floor(d/(o+1))*x);$Jssor$.$AppendChild(b,k);u[d]=k;a.$ActionMode&1&&$Jssor$.$AddEvent(k,"click",$Jssor$.$CreateCallback(null,m,d));a.$ActionMode&2&&$Jssor$.$AddEvent(k,"mouseover",$Jssor$.$MouseOverOutFilter($Jssor$.$CreateCallback(null,m,d),k));r[d]=$Jssor$.$Buttonize(k)}n=true}};d.$Options=a=$Jssor$.$Extend({$SpacingX:10,$SpacingY:10,$Orientation:1,$ActionMode:1},v);$JssorDebug$.$Execute(function(){a=$Jssor$.$Extend({$Steps:undefined,$Lanes:undefined},a)});c=$Jssor$.$FindChild(b,"prototype");$JssorDebug$.$Execute(function(){!c&&$JssorDebug$.$Fail("Navigator item prototype not defined.");isNaN($Jssor$.$CssWidth(c))&&$JssorDebug$.$Fail("Width of 'navigator item prototype' not specified.");isNaN($Jssor$.$CssHeight(c))&&$JssorDebug$.$Fail("Height of 'navigator item prototype' not specified.")});j=$Jssor$.$CssWidth(c);i=$Jssor$.$CssHeight(c);$Jssor$.$RemoveElement(c,b);h=a.$Steps||1;f=a.$Lanes||1;p=a.$SpacingX;q=a.$SpacingY;e=a.$Orientation-1;a.$Scale==false&&$Jssor$.$Attribute(b,"noscale",true);a.$AutoCenter&&$Jssor$.$Attribute(b,"autocenter",a.$AutoCenter)},$JssorArrowNavigator$=window.$JssorArrowNavigator$=function(a,b,f){var c=this;$JssorObject$.call(c);$JssorDebug$.$Execute(function(){!a&&$JssorDebug$.$Fail("Option '$ArrowNavigatorOptions' spepcified, but UI 'arrowleft' not defined. Define 'arrowleft' to enable direct navigation, or remove option '$ArrowNavigatorOptions' to disable direct navigation.");!b&&$JssorDebug$.$Fail("Option '$ArrowNavigatorOptions' spepcified, but UI 'arrowright' not defined. Define 'arrowright' to enable direct navigation, or remove option '$ArrowNavigatorOptions' to disable direct navigation.");isNaN($Jssor$.$CssWidth(a))&&$JssorDebug$.$Fail("Width of 'arrow left' not specified.");isNaN($Jssor$.$CssWidth(b))&&$JssorDebug$.$Fail("Width of 'arrow right' not specified.");isNaN($Jssor$.$CssHeight(a))&&$JssorDebug$.$Fail("Height of 'arrow left' not specified.");isNaN($Jssor$.$CssHeight(b))&&$JssorDebug$.$Fail("Height of 'arrow right' not specified.")});var l,k,d,e,g;$Jssor$.$CssWidth(a);$Jssor$.$CssHeight(a);function h(a){c.$TriggerEvent($JssorNavigatorEvents$.$NAVIGATIONREQUEST,a,true)}function j(c){$Jssor$.$ShowElement(a,c||!f.$Loop&&d==0);$Jssor$.$ShowElement(b,c||!f.$Loop&&d>=k-f.$Cols);l=c}c.$GetCurrentIndex=function(){return d};c.$SetCurrentIndex=function(b,a,c){if(c)d=a;else{d=b;j(l)}};c.$Show=j;var i;c.$Reset=function(c){k=c;d=0;if(!i){$Jssor$.$AddEvent(a,"click",$Jssor$.$CreateCallback(null,h,-g));$Jssor$.$AddEvent(b,"click",$Jssor$.$CreateCallback(null,h,g));$Jssor$.$Buttonize(a);$Jssor$.$Buttonize(b);i=true}};c.$Options=e=$Jssor$.$Extend({$Steps:1},f);g=e.$Steps;if(e.$Scale==false){$Jssor$.$Attribute(a,"noscale",true);$Jssor$.$Attribute(b,"noscale",true)}if(e.$AutoCenter){$Jssor$.$Attribute(a,"autocenter",e.$AutoCenter);$Jssor$.$Attribute(b,"autocenter",e.$AutoCenter)}},$JssorThumbnailNavigator$=window.$JssorThumbnailNavigator$=function(d,t){var e=this,r,h,a,n=[],p,o,b,i,j,m,l,g,k,c,f;$JssorObject$.call(e);d=$Jssor$.$GetElement(d);function s(m,d){var g=this,c,l,j;function n(){l.$Selected(h==d)}function i(g){if(g||!k.$LastDragSucceded()){var a=b-d%b,c=k.$GetVirtualIndex((d+a)/b-1),f=c*b+b-a;e.$TriggerEvent($JssorNavigatorEvents$.$NAVIGATIONREQUEST,f)}}$JssorDebug$.$Execute(function(){g.$Wrapper=undefined});g.$Index=d;g.$Highlight=n;j=m.$Thumb||m.$Image||$Jssor$.$CreateDiv();g.$Wrapper=c=$Jssor$.$BuildElement(f,"thumbnailtemplate",j,true);l=$Jssor$.$Buttonize(c);a.$ActionMode&1&&$Jssor$.$AddEvent(c,"click",$Jssor$.$CreateCallback(null,i,0));a.$ActionMode&2&&$Jssor$.$AddEvent(c,"mouseover",$Jssor$.$MouseOverOutFilter($Jssor$.$CreateCallback(null,i,1),c))}e.$GetCurrentIndex=function(){return h};e.$SetCurrentIndex=function(c,d,e){var a=h;h=c;a!=-1&&n[a].$Highlight();n[c].$Highlight();!e&&k.$PlayTo(k.$GetVirtualIndex(Math.floor(d/b)))};e.$Show=function(a){$Jssor$.$ShowElement(d,a)};var q;e.$Reset=function(A,y){if(!q){r=A;Math.ceil(r/b);h=-1;g=Math.min(g,y.length);var e=a.$Orientation&1,v=m+(m+i)*(b-1)*(1-e),t=l+(l+j)*(b-1)*e,x=v+(v+i)*(g-1)*e,w=t+(t+j)*(g-1)*(1-e);$Jssor$.$CssPosition(c,"absolute");$Jssor$.$CssOverflow(c,"hidden");a.$AutoCenter&1&&$Jssor$.$CssLeft(c,(p-x)/2);a.$AutoCenter&2&&$Jssor$.$CssTop(c,(o-w)/2);$Jssor$.$CssWidth(c,x);$Jssor$.$CssHeight(c,w);var f=[];$Jssor$.$Each(y,function(o,g){var h=new s(o,g),d=h.$Wrapper,a=Math.floor(g/b),k=g%b;$Jssor$.$CssLeft(d,(m+i)*k*(1-e));$Jssor$.$CssTop(d,(l+j)*k*e);if(!f[a]){f[a]=$Jssor$.$CreateDiv();$Jssor$.$AppendChild(c,f[a])}$Jssor$.$AppendChild(f[a],d);n.push(h)});var z=$Jssor$.$Extend({$AutoPlay:false,$NaviQuitDrag:false,$SlideWidth:v,$SlideHeight:t,$SlideSpacing:i*e+j*(1-e),$MinDragOffsetToSlide:12,$SlideDuration:200,$PauseOnHover:1,$PlayOrientation:a.$Orientation,$DragOrientation:a.$NoDrag||a.$DisableDrag?0:a.$Orientation},a);k=new $JssorSlider$(d,z);q=true}};e.$Options=a=$Jssor$.$Extend({$SpacingX:0,$SpacingY:0,$Cols:1,$Orientation:1,$AutoCenter:3,$ActionMode:1},t);if(a.$DisplayPieces!=undefined)a.$Cols=a.$DisplayPieces;if(a.$Rows!=undefined)a.$Lanes=a.$Rows;$JssorDebug$.$Execute(function(){a=$Jssor$.$Extend({$Lanes:undefined,$Width:undefined,$Height:undefined},a)});p=$Jssor$.$CssWidth(d);o=$Jssor$.$CssHeight(d);$JssorDebug$.$Execute(function(){!p&&$JssorDebug$.$Fail("width of 'thumbnavigator' container not specified.");!o&&$JssorDebug$.$Fail("height of 'thumbnavigator' container not specified.")});c=$Jssor$.$FindChild(d,"slides",true);f=$Jssor$.$FindChild(c,"prototype");$JssorDebug$.$Execute(function(){!f&&$JssorDebug$.$Fail("prototype of 'thumbnavigator' not defined.")});m=$Jssor$.$CssWidth(f);l=$Jssor$.$CssHeight(f);$Jssor$.$RemoveElement(f,c);b=a.$Lanes||1;i=a.$SpacingX;j=a.$SpacingY;g=a.$Cols;a.$Scale==false&&$Jssor$.$Attribute(d,"noscale",true)};function $JssorCaptionSliderBase$(d,c,b){var a=this;$JssorAnimator$.call(a,0,b);a.$Revert=$Jssor$.$EmptyFunction;a.$IdleBegin=0;a.$IdleEnd=b}var $JssorCaptionSlider$=window.$JssorCaptionSlider$=function(f,d,g){$JssorDebug$.$Execute(function(){!d.$Transitions&&$JssorDebug$.$Error("'$CaptionSliderOptions' option error, '$CaptionSliderOptions.$Transitions' not specified.")});var a=this;$JssorAnimator$.call(a,0,0);var c,b;function e(l,f,d){var a=this,e,j=d?f.$PlayInMode:f.$PlayOutMode,c=f.$Transitions,k={$Transition:"t",$Delay:"d",$Duration:"du",x:"x",y:"y",$Rotate:"r",$Zoom:"z",$Opacity:"f",$BeginTime:"b"},b={$Default:function(b,a){if(!isNaN(a.$Value))b=a.$Value;else b*=a.$Percent;return b},$Opacity:function(b,a){return this.$Default(b-1,a)}};b.$Zoom=b.$Opacity;$JssorAnimator$.call(a,0,0);function h(p,m){var l=[],g,i=[],a=[];function f(b,c){var a={};$Jssor$.$Each(k,function(f,g){var d=$Jssor$.$AttributeEx(b,f+(c||""));if(d){var e={};if(f=="t")e.$Value=d;else if(d.indexOf("%")+1)e.$Percent=$Jssor$.$ParseFloat(d)/100;else e.$Value=$Jssor$.$ParseFloat(d);a[g]=e}});return a}function n(){return c[Math.floor(Math.random()*c.length)]}function e(d){var f;if(d=="*")f=n();else if(d){var b=c[$Jssor$.$ParseInt(d)]||c[d];if($Jssor$.$IsArray(b)){if(d!=g){g=d;a[d]=0;i[d]=b[Math.floor(Math.random()*b.length)]}else a[d]++;b=i[d];if($Jssor$.$IsArray(b)){b=b.length&&b[a[d]%b.length];if($Jssor$.$IsArray(b))b=b[Math.floor(Math.random()*b.length)]}}f=b;if($Jssor$.$IsString(f))f=e(f)}return f}var o=$Jssor$.$Children(p);$Jssor$.$Each(o,function(a){var c=[];c.$Elmt=a;var g=$Jssor$.$AttributeEx(a,"u")=="caption";$Jssor$.$Each(d?[0,3]:[2],function(l,n){if(g){var k,d;if(l!=2||!$Jssor$.$AttributeEx(a,"t3")){d=f(a,l);if(l==2&&!d.$Transition){d.$Delay=d.$Delay||{$Value:0};d=$Jssor$.$Extend(f(a,0),d)}}if(d&&d.$Transition){k=e(d.$Transition.$Value);if(k){var i=$Jssor$.$Extend({$Delay:0},k);$Jssor$.$Each(d,function(e,a){var c=(b[a]||b.$Default).apply(b,[i[a],d[a]]);if(!isNaN(c))i[a]=c});if(!n)if(d.$BeginTime)i.$BeginTime=d.$BeginTime.$Value||0;else if(j&2)i.$BeginTime=0}}c.push(i)}if(m%2&&!n)c.$Children=h(a,m+1)});l.push(c)});return l}function i(t,a,w){var e={$Easing:a.$Easing,$Round:a.$Round,$During:a.$During,$Reverse:d&&!w},j=t,o=$Jssor$.$ParentNode(t),i=$Jssor$.$CssWidth(j),h=$Jssor$.$CssHeight(j),v=$Jssor$.$CssWidth(o),u=$Jssor$.$CssHeight(o),f={},c={},g=a.$ScaleClip||1;if(a.$Opacity)c.$Opacity=1-a.$Opacity;e.$OriginalWidth=i;e.$OriginalHeight=h;if(a.$Zoom||a.$Rotate){c.$Zoom=(a.$Zoom||2)-2;if($Jssor$.$IsBrowserIe9Earlier()||$Jssor$.$IsBrowserOpera())c.$Zoom=Math.min(c.$Zoom,1);f.$Zoom=1;var y=a.$Rotate||0;c.$Rotate=y*360;f.$Rotate=0}else if(a.$Clip){var p={$Top:0,$Right:i,$Bottom:h,$Left:0},s=$Jssor$.$Extend({},p),b=s.$Offset={},r=a.$Clip&4,m=a.$Clip&8,q=a.$Clip&1,n=a.$Clip&2;if(r&&m){b.$Top=h/2*g;b.$Bottom=-b.$Top}else if(r)b.$Bottom=-h*g;else if(m)b.$Top=h*g;if(q&&n){b.$Left=i/2*g;b.$Right=-b.$Left}else if(q)b.$Right=-i*g;else if(n)b.$Left=i*g;e.$Move=a.$Move;c.$Clip=s;f.$Clip=p}var k=0,l=0;if(a.x)k-=v*a.x;if(a.y)l-=u*a.y;if(k||l||e.$Move){c.$Left=k;c.$Top=l}var x=a.$Duration;f=$Jssor$.$Extend(f,$Jssor$.$GetStyles(j,c));e.$Setter=$Jssor$.$StyleSetterEx();return new $JssorAnimator$(a.$Delay,x,e,j,f,c)}function g(b,c){$Jssor$.$Each(c,function(c,l){$JssorDebug$.$Execute(function(){if(c.length){var f=$Jssor$.$CssTop(c.$Elmt),e=$Jssor$.$CssLeft(c.$Elmt),d=$Jssor$.$CssWidth(c.$Elmt),b=$Jssor$.$CssHeight(c.$Elmt),a=null;if(isNaN(f))a="Style 'top' for caption not specified. Please always specify caption like 'position: absolute; top: ...px; left: ...px; width: ...px; height: ...px;'.";else if(isNaN(e))a="Style 'left' not specified. Please always specify caption like 'position: absolute; top: ...px; left: ...px; width: ...px; height: ...px;'.";else if(isNaN(d))a="Style 'width' not specified. Please always specify caption like 'position: absolute; top: ...px; left: ...px; width: ...px; height: ...px;'.";else if(isNaN(b))a="Style 'height' not specified. Please always specify caption like 'position: absolute; top: ...px; left: ...px; width: ...px; height: ...px;'.";a&&$JssorDebug$.$Error("Caption "+(l+1)+" definition error, \r\n"+a+"\r\n"+c.$Elmt.outerHTML)}});var d,j=c.$Elmt,h=c[0],k=c[1];if(h){d=i(j,h);$JssorDebug$.$Execute(function(){d.$CaptionAnimator=true});h.$BeginTime==undefined&&d.$Shift(b);b=d.$GetPosition_OuterEnd()}b=g(b,c.$Children);if(k){var f=i(j,k,1);$JssorDebug$.$Execute(function(){f.$CaptionAnimator=true});f.$Shift(b);a.$Combine(f);e.$Combine(f)}d&&a.$Combine(d)});return b}a.$Revert=function(){a.$GoToPosition(a.$GetPosition_OuterEnd()*(d||0));e.$GoToPosition(0)};e=new $JssorAnimator$(0,0);g(0,j?h(l,1):[])}a.$Revert=function(){b.$Revert();c.$Revert()};c=new e(f,d,1);a.$IdleBegin=c.$GetPosition_OuterEnd();a.$IdleEnd=a.$IdleBegin+g;b=new e(f,d);b.$Shift(a.$IdleEnd);a.$Combine(b);a.$Combine(c)},$JssorCaptionSlideo$=window.$JssorCaptionSlideo$=function(j,c,i){$JssorDebug$.$Execute(function(){if(!c.$Transitions)$JssorDebug$.$Error("'$CaptionSlideoOptions' option error, '$CaptionSlideoOptions.$Transitions' not specified.");else!$Jssor$.$IsArray(c.$Transitions)&&$JssorDebug$.$Error("'$CaptionSlideoOptions' option error, '$CaptionSlideoOptions.$Transitions' is not an array.")});var a=this,k,e={},f=c.$Transitions,b=new $JssorAnimator$(0,0);$JssorAnimator$.call(a,0,0);function g(c,b){var a={};$Jssor$.$Each(c,function(c,f){var d=e[f];if(d){if($Jssor$.$IsPlainObject(c))c=g(c,b||f=="e");else if(b)if($Jssor$.$IsNumeric(c))c=k[c];a[d]=c}});return a}function h(d,b){var a=[],c=$Jssor$.$Children(d);$Jssor$.$Each(c,function(c){var i=$Jssor$.$AttributeEx(c,"u")=="caption";if(i){var d=$Jssor$.$AttributeEx(c,"t"),g=f[$Jssor$.$ParseInt(d)]||f[d],e={$Elmt:c,$Transition:g};a.push(e)}if(b<5)a=a.concat(h(c,b+1))});return a}function n(c,d,a){$Jssor$.$Each(d,function(e){var d=g(e),h={$Easing:$Jssor$.$FormatEasings(d.$Easing),$Setter:$Jssor$.$StyleSetterEx(),$OriginalWidth:a.$Width,$OriginalHeight:a.$Height},f=new $JssorAnimator$(e.b,e.d,h,c,a,d);$JssorDebug$.$Execute(function(){f.$CaptionAnimator=true});b.$Combine(f);a=$Jssor$.$AddDif(a,d)});return a}function m(a){$Jssor$.$Each(a,function(a,f){$JssorDebug$.$Execute(function(){if(a.length){var g=$Jssor$.$CssTop(a.$Elmt),e=$Jssor$.$CssLeft(a.$Elmt),d=$Jssor$.$CssWidth(a.$Elmt),c=$Jssor$.$CssHeight(a.$Elmt),b=null;if(isNaN(g))b="style 'top' not specified";else if(isNaN(e))b="style 'left' not specified";else if(isNaN(d))b="style 'width' not specified";else if(isNaN(c))b="style 'height' not specified";if(b)throw new Error("Caption "+(f+1)+" definition error, "+b+".\r\n"+a.$Elmt.outerHTML);}});var b=a.$Elmt,d=$Jssor$.$CssWidth(b),c=$Jssor$.$CssHeight(b),e={$Left:$Jssor$.$CssLeft(b),$Top:$Jssor$.$CssTop(b),$Opacity:1,$ZIndex:$Jssor$.$CssZIndex(b)||0,$Rotate:0,$RotateX:0,$RotateY:0,$ScaleX:1,$ScaleY:1,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0,$Width:d,$Height:c,$Clip:{$Top:0,$Right:d,$Bottom:c,$Left:0}};n(b,a.$Transition,e)})}function p(f,e,g){var d=f.b-e;if(d){var c=new $JssorAnimator$(e,d);$JssorDebug$.$Execute(function(){c.$TrunckedAnimator=true});c.$Combine(b,true);c.$Shift(g);a.$Combine(c)}a.$Expand(f.d);return d}function o(e){var c=b.$GetPosition_OuterBegin(),d=0;$Jssor$.$Each(e,function(b,e){b=$Jssor$.$Extend({d:i},b);p(b,c,d);c=b.b;d+=b.d;if(!e||b.t==2){a.$IdleBegin=c;a.$IdleEnd=c+b.d}})}a.$Revert=function(){a.$GoToPosition(-1,true)};$JssorDebug$.$Execute(function(){a.$CaptionSlider=true;b.$InnerAnimator=true});k=[$Jease$.$Swing,$Jease$.$Linear,$Jease$.$InQuad,$Jease$.$OutQuad,$Jease$.$InOutQuad,$Jease$.$InCubic,$Jease$.$OutCubic,$Jease$.$InOutCubic,$Jease$.$InQuart,$Jease$.$OutQuart,$Jease$.$InOutQuart,$Jease$.$InQuint,$Jease$.$OutQuint,$Jease$.$InOutQuint,$Jease$.$InSine,$Jease$.$OutSine,$Jease$.$InOutSine,$Jease$.$InExpo,$Jease$.$OutExpo,$Jease$.$InOutExpo,$Jease$.$InCirc,$Jease$.$OutCirc,$Jease$.$InOutCirc,$Jease$.$InElastic,$Jease$.$OutElastic,$Jease$.$InOutElastic,$Jease$.$InBack,$Jease$.$OutBack,$Jease$.$InOutBack,$Jease$.$InBounce,$Jease$.$OutBounce,$Jease$.$InOutBounce,$Jease$.$GoBack,$Jease$.$InWave,$Jease$.$OutWave,$Jease$.$OutJump,$Jease$.$InJump];var q={$Top:"y",$Left:"x",$Bottom:"m",$Right:"t",$Rotate:"r",$RotateX:"rX",$RotateY:"rY",$ScaleX:"sX",$ScaleY:"sY",$TranslateX:"tX",$TranslateY:"tY",$TranslateZ:"tZ",$SkewX:"kX",$SkewY:"kY",$Opacity:"o",$Easing:"e",$ZIndex:"i",$Clip:"c"};$Jssor$.$Each(q,function(b,a){e[b]=a});m(h(j,1));b.$GoToPosition(-1);var l=c.$Breaks||[],d=[].concat(l[$Jssor$.$ParseInt($Jssor$.$AttributeEx(j,"b"))]||[]);d.push({b:b.$GetPosition_OuterEnd(),d:d.length?0:i});o(d);a.$GoToPosition(-1)}
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.min.js b/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.min.js
new file mode 100755 (executable)
index 0000000..75b131d
--- /dev/null
@@ -0,0 +1,2 @@
+(function(g,e,b,j,c,i,k){/*! Jssor */
+new(function(){this.$DebugMode=c;this.$Log=function(c,d){var a=g.console||{},b=this.$DebugMode;if(b&&a.log)a.log(c);else b&&d&&alert(c)};this.$Error=function(b,d){var c=g.console||{},a=this.$DebugMode;if(a&&c.error)c.error(b);else a&&alert(b);if(a)throw d||new Error(b);};this.$Fail=function(a){throw new Error(a);};this.$Assert=function(b,c){var a=this.$DebugMode;if(a)if(!b)throw new Error("Assert failed "+c||"");};this.$Trace=function(c){var a=g.console||{},b=this.$DebugMode;b&&a.log&&a.log(c)};this.$Execute=function(b){var a=this.$DebugMode;a&&b()};this.$LiveStamp=function(c,d){var b=this.$DebugMode;if(b){var a=e.createElement("DIV");a.setAttribute("id",d);c.$Live=a}};this.$C_AbstractProperty=function(){throw new Error("The property is abstract, it should be implemented by subclass.");};this.$C_AbstractMethod=function(){throw new Error("The method is abstract, it should be implemented by subclass.");};function a(b){if(b.constructor===a.caller)throw new Error("Cannot create instance of an abstract class.");}this.$C_AbstractClass=a});var d=g.$JssorEasing$={$EaseSwing:function(a){return-b.cos(a*b.PI)/2+.5},$EaseLinear:function(a){return a},$EaseInQuad:function(a){return a*a},$EaseOutQuad:function(a){return-a*(a-2)},$EaseInOutQuad:function(a){return(a*=2)<1?1/2*a*a:-1/2*(--a*(a-2)-1)},$EaseInCubic:function(a){return a*a*a},$EaseOutCubic:function(a){return(a-=1)*a*a+1},$EaseInOutCubic:function(a){return(a*=2)<1?1/2*a*a*a:1/2*((a-=2)*a*a+2)},$EaseInQuart:function(a){return a*a*a*a},$EaseOutQuart:function(a){return-((a-=1)*a*a*a-1)},$EaseInOutQuart:function(a){return(a*=2)<1?1/2*a*a*a*a:-1/2*((a-=2)*a*a*a-2)},$EaseInQuint:function(a){return a*a*a*a*a},$EaseOutQuint:function(a){return(a-=1)*a*a*a*a+1},$EaseInOutQuint:function(a){return(a*=2)<1?1/2*a*a*a*a*a:1/2*((a-=2)*a*a*a*a+2)},$EaseInSine:function(a){return 1-b.cos(a*b.PI/2)},$EaseOutSine:function(a){return b.sin(a*b.PI/2)},$EaseInOutSine:function(a){return-1/2*(b.cos(b.PI*a)-1)},$EaseInExpo:function(a){return a==0?0:b.pow(2,10*(a-1))},$EaseOutExpo:function(a){return a==1?1:-b.pow(2,-10*a)+1},$EaseInOutExpo:function(a){return a==0||a==1?a:(a*=2)<1?1/2*b.pow(2,10*(a-1)):1/2*(-b.pow(2,-10*--a)+2)},$EaseInCirc:function(a){return-(b.sqrt(1-a*a)-1)},$EaseOutCirc:function(a){return b.sqrt(1-(a-=1)*a)},$EaseInOutCirc:function(a){return(a*=2)<1?-1/2*(b.sqrt(1-a*a)-1):1/2*(b.sqrt(1-(a-=2)*a)+1)},$EaseInElastic:function(a){if(!a||a==1)return a;var c=.3,d=.075;return-(b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c))},$EaseOutElastic:function(a){if(!a||a==1)return a;var c=.3,d=.075;return b.pow(2,-10*a)*b.sin((a-d)*2*b.PI/c)+1},$EaseInOutElastic:function(a){if(!a||a==1)return a;var c=.45,d=.1125;return(a*=2)<1?-.5*b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c):b.pow(2,-10*(a-=1))*b.sin((a-d)*2*b.PI/c)*.5+1},$EaseInBack:function(a){var b=1.70158;return a*a*((b+1)*a-b)},$EaseOutBack:function(a){var b=1.70158;return(a-=1)*a*((b+1)*a+b)+1},$EaseInOutBack:function(a){var b=1.70158;return(a*=2)<1?1/2*a*a*(((b*=1.525)+1)*a-b):1/2*((a-=2)*a*(((b*=1.525)+1)*a+b)+2)},$EaseInBounce:function(a){return 1-d.$EaseOutBounce(1-a)},$EaseOutBounce:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375},$EaseInOutBounce:function(a){return a<1/2?d.$EaseInBounce(a*2)*.5:d.$EaseOutBounce(a*2-1)*.5+.5},$EaseGoBack:function(a){return 1-b.abs(2-1)},$EaseInWave:function(a){return 1-b.cos(a*b.PI*2)},$EaseOutWave:function(a){return b.sin(a*b.PI*2)},$EaseOutJump:function(a){return 1-((a*=2)<1?(a=1-a)*a*a:(a-=1)*a*a)},$EaseInJump:function(a){return(a*=2)<1?a*a*a:(a=2-a)*a*a}},f=g.$Jease$={$Swing:d.$EaseSwing,$Linear:d.$EaseLinear,$InQuad:d.$EaseInQuad,$OutQuad:d.$EaseOutQuad,$InOutQuad:d.$EaseInOutQuad,$InCubic:d.$EaseInCubic,$OutCubic:d.$EaseOutCubic,$InOutCubic:d.$EaseInOutCubic,$InQuart:d.$EaseInQuart,$OutQuart:d.$EaseOutQuart,$InOutQuart:d.$EaseInOutQuart,$InQuint:d.$EaseInQuint,$OutQuint:d.$EaseOutQuint,$InOutQuint:d.$EaseInOutQuint,$InSine:d.$EaseInSine,$OutSine:d.$EaseOutSine,$InOutSine:d.$EaseInOutSine,$InExpo:d.$EaseInExpo,$OutExpo:d.$EaseOutExpo,$InOutExpo:d.$EaseInOutExpo,$InCirc:d.$EaseInCirc,$OutCirc:d.$EaseOutCirc,$InOutCirc:d.$EaseInOutCirc,$InElastic:d.$EaseInElastic,$OutElastic:d.$EaseOutElastic,$InOutElastic:d.$EaseInOutElastic,$InBack:d.$EaseInBack,$OutBack:d.$EaseOutBack,$InOutBack:d.$EaseInOutBack,$InBounce:d.$EaseInBounce,$OutBounce:d.$EaseOutBounce,$InOutBounce:d.$EaseInOutBounce,$GoBack:d.$EaseGoBack,$InWave:d.$EaseInWave,$OutWave:d.$EaseOutWave,$OutJump:d.$EaseOutJump,$InJump:d.$EaseInJump};g.$JssorDirection$={$TO_LEFT:1,$TO_RIGHT:2,$TO_TOP:4,$TO_BOTTOM:8,$HORIZONTAL:3,$VERTICAL:12,$GetDirectionHorizontal:function(a){return a&3},$GetDirectionVertical:function(a){return a&12},$IsHorizontal:function(a){return a&3},$IsVertical:function(a){return a&12}};var a=g.$Jssor$=new function(){var f=this,zb=/\S+/g,S=1,fb=2,jb=3,ib=4,nb=5,I,s=0,l=0,q=0,J=0,C=0,y=navigator,sb=y.appName,n=y.userAgent,v=e.documentElement;function Ib(){if(!I){I={$Touchable:"ontouchstart"in g||"createTouch"in e};var a;if(y.pointerEnabled||(a=y.msPointerEnabled))I.$TouchActionAttr=a?"msTouchAction":"touchAction"}return I}function t(i){if(!s){s=-1;if(sb=="Microsoft Internet Explorer"&&!!g.attachEvent&&!!g.ActiveXObject){var f=n.indexOf("MSIE");s=S;q=o(n.substring(f+5,n.indexOf(";",f)));/*@cc_on J=@_jscript_version@*/;l=e.documentMode||q}else if(sb=="Netscape"&&!!g.addEventListener){var d=n.indexOf("Firefox"),b=n.indexOf("Safari"),h=n.indexOf("Chrome"),c=n.indexOf("AppleWebKit");if(d>=0){s=fb;l=o(n.substring(d+8))}else if(b>=0){var j=n.substring(0,b).lastIndexOf("/");s=h>=0?ib:jb;l=o(n.substring(j+1,b))}else{var a=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/i.exec(n);if(a){s=S;l=q=o(a[1])}}if(c>=0)C=o(n.substring(c+12))}else{var a=/(opera)(?:.*version|)[ \/]([\w.]+)/i.exec(n);if(a){s=nb;l=o(a[2])}}}return i==s}function p(){return t(S)}function N(){return p()&&(l<6||e.compatMode=="BackCompat")}function Ab(){return t(fb)}function hb(){return t(jb)}function Db(){return t(ib)}function mb(){return t(nb)}function ab(){return hb()&&C>534&&C<535}function L(){return p()&&l<9}function cb(a){var b;return function(d){if(!b){b=a;var c=a.substr(0,1).toUpperCase()+a.substr(1);m([a].concat(["WebKit","ms","Moz","O","webkit"]),function(g,f){var e=a;if(f)e=g+c;if(d.style[e]!=k)return b=e})}return b}}var bb=cb("transform");function rb(a){return{}.toString.call(a)}var H;function Fb(){if(!H){H={};m(["Boolean","Number","String","Function","Array","Date","RegExp","Object"],function(a){H["[object "+a+"]"]=a.toLowerCase()})}return H}function m(a,d){if(rb(a)=="[object Array]"){for(var b=0;b<a.length;b++)if(d(a[b],b,a))return c}else for(var e in a)if(d(a[e],e,a))return c}function A(a){return a==j?String(a):Fb()[rb(a)]||"object"}function pb(a){for(var b in a)return c}function x(a){try{return A(a)=="object"&&!a.nodeType&&a!=a.window&&(!a.constructor||{}.hasOwnProperty.call(a.constructor.prototype,"isPrototypeOf"))}catch(b){}}function w(a,b){return{x:a,y:b}}function vb(b,a){setTimeout(b,a||0)}function F(b,d,c){var a=!b||b=="inherit"?"":b;m(d,function(c){var b=c.exec(a);if(b){var d=a.substr(0,b.index),e=a.substr(b.lastIndex+1,a.length-(b.lastIndex+1));a=d+e}});a=c+(a.indexOf(" ")!=0?" ":"")+a;return a}function eb(b,a){if(l<9)b.style.filter=a}function Bb(g,a,i){if(!J||J<9){var d=a.$ScaleX,e=a.$ScaleY,j=(a.$Rotate||0)%360,h="";if(j||d!=k||e!=k){if(d==k)d=1;if(e==k)e=1;var c=f.$CreateMatrix(j/180*b.PI,d||1,e||1),i=f.$GetMatrixOffset(c,a.$OriginalWidth,a.$OriginalHeight);f.$CssMarginTop(g,i.y);f.$CssMarginLeft(g,i.x);h="progid:DXImageTransform.Microsoft.Matrix(M11="+c[0][0]+", M12="+c[0][1]+", M21="+c[1][0]+", M22="+c[1][1]+", SizingMethod='auto expand')"}var m=g.style.filter,n=new RegExp(/[\s]*progid:DXImageTransform\.Microsoft\.Matrix\([^\)]*\)/g),l=F(m,[n],h);eb(g,l)}}f.$Device=Ib;f.$IsBrowserIE=p;f.$IsBrowserIeQuirks=N;f.$IsBrowserFireFox=Ab;f.$IsBrowserSafari=hb;f.$IsBrowserChrome=Db;f.$IsBrowserOpera=mb;f.$IsBrowserBadTransform=ab;f.$IsBrowserIe9Earlier=L;f.$BrowserVersion=function(){return l};f.$BrowserEngineVersion=function(){return q||l};f.$WebKitVersion=function(){t();return C};f.$Delay=vb;f.$Inherit=function(a,b){b.call(a);return z({},a)};function V(a){a.constructor===V.caller&&a.$Construct&&a.$Construct.apply(a,V.caller.arguments)}f.$Construct=V;f.$GetElement=function(a){if(f.$IsString(a))a=e.getElementById(a);return a};function r(a){return a||g.event}f.$GetEvent=r;f.$EvtSrc=function(a){a=r(a);return a.target||a.srcElement||e};f.$EvtTarget=function(a){a=r(a);return a.relatedTarget||a.toElement};f.$EvtWhich=function(a){a=r(a);return a.which||([0,1,3,0,2])[a.button]||a.charCode||a.keyCode};f.$MousePosition=function(a){a=r(a);return{x:a.pageX||a.clientX||0,y:a.pageY||a.clientY||0}};f.$PageScroll=function(){var a=e.body;return{x:(g.pageXOffset||v.scrollLeft||a.scrollLeft||0)-(v.clientLeft||a.clientLeft||0),y:(g.pageYOffset||v.scrollTop||a.scrollTop||0)-(v.clientTop||a.clientTop||0)}};f.$WindowSize=function(){var a=e.body;return{x:a.clientWidth||v.clientWidth,y:a.clientHeight||v.clientHeight}};function B(c,d,a){if(a!==k)c.style[d]=a==k?"":a;else{var b=c.currentStyle||c.style;a=b[d];if(a==""&&g.getComputedStyle){b=c.ownerDocument.defaultView.getComputedStyle(c,j);b&&(a=b.getPropertyValue(d)||b[d])}return a}}function X(b,c,a,d){if(a!=k){if(a==j)a="";else d&&(a+="px");B(b,c,a)}else return o(B(b,c))}function Jb(b,d,a){return X(b,d,a,c)}function h(c,a){var d=a?X:B,b;if(a&4)b=cb(c);return function(e,f){return d(e,b?b(e):c,f,a&2)}}function Cb(b){if(p()&&q<9){var a=/opacity=([^)]*)/.exec(b.style.filter||"");return a?o(a[1])/100:1}else return o(b.style.opacity||"1")}function Eb(c,a,f){if(p()&&q<9){var h=c.style.filter||"",i=new RegExp(/[\s]*alpha\([^\)]*\)/g),e=b.round(100*a),d="";if(e<100||f)d="alpha(opacity="+e+") ";var g=F(h,[i],d);eb(c,g)}else c.style.opacity=a==1?"":b.round(a*100)/100}var xb={$Rotate:["rotate"],$RotateX:["rotateX"],$RotateY:["rotateY"],$ScaleX:["scaleX",2],$ScaleY:["scaleY",2],$TranslateX:["translateX",1],$TranslateY:["translateY",1],$TranslateZ:["translateZ",1],$SkewX:["skewX"],$SkewY:["skewY"]};function Z(e,c){if(p()&&l&&l<10){delete c.$RotateX;delete c.$RotateY}var d=bb(e);if(d){var b="";a.$Each(c,function(e,c){var a=xb[c];if(a){var d=a[1]||0;b+=(b?" ":"")+a[0]+"("+e+(["deg","px",""])[d]+")"}});e.style[d]=b}}f.$SetStyleTransform=function(b,a){if(ab())vb(f.$CreateCallback(j,Z,b,a));else(L()?Bb:Z)(b,a)};f.$CssTransformOrigin=h("transformOrigin",4);f.$CssBackfaceVisibility=h("backfaceVisibility",4);f.$CssTransformStyle=h("transformStyle",4);f.$CssPerspective=h("perspective",6);f.$CssPerspectiveOrigin=h("perspectiveOrigin",4);f.$CssScale=function(a,c){if(p()&&q<9||q<10&&N())a.style.zoom=c==1?"":c;else{var b=bb(a);if(b){var f="scale("+c+")",e=a.style[b],g=new RegExp(/[\s]*scale\(.*?\)/g),d=F(e,[g],f);a.style[b]=d}}};var lb=0,gb=0;f.$WindowResizeFilter=function(b,a){return L()?function(){var g=c,d=N()?b.document.body:b.document.documentElement;if(d){var f=d.offsetWidth-lb,e=d.offsetHeight-gb;if(f||e){lb+=f;gb+=e}else g=i}g&&a()}:a};f.$MouseOverOutFilter=function(b,a){return function(c){c=r(c);var e=c.type,d=c.relatedTarget||(e=="mouseout"?c.toElement:c.fromElement);(!d||d!==a&&!f.$IsChild(a,d))&&b(c)}};f.$AddEvent=function(a,c,d,b){a=f.$GetElement(a);if(a.addEventListener){c=="mousewheel"&&a.addEventListener("DOMMouseScroll",d,b);a.addEventListener(c,d,b)}else if(a.attachEvent){a.attachEvent("on"+c,d);b&&a.setCapture&&a.setCapture()}};f.$RemoveEvent=function(a,c,d,b){a=f.$GetElement(a);if(a.removeEventListener){c=="mousewheel"&&a.removeEventListener("DOMMouseScroll",d,b);a.removeEventListener(c,d,b)}else if(a.detachEvent){a.detachEvent("on"+c,d);b&&a.releaseCapture&&a.releaseCapture()}};f.$FireEvent=function(c,b){var a;if(e.createEvent){a=e.createEvent("HTMLEvents");a.initEvent(b,i,i);c.dispatchEvent(a)}else{var d="on"+b;a=e.createEventObject();c.fireEvent(d,a)}};f.$CancelEvent=function(a){a=r(a);a.preventDefault&&a.preventDefault();a.cancel=c;a.returnValue=i};f.$StopEvent=function(a){a=r(a);a.stopPropagation&&a.stopPropagation();a.cancelBubble=c};f.$CreateCallback=function(d,c){var a=[].slice.call(arguments,2),b=function(){var b=a.concat([].slice.call(arguments,0));return c.apply(d,b)};return b};f.$InnerText=function(a,b){if(b==k)return a.textContent||a.innerText;var c=e.createTextNode(b);f.$Empty(a);a.appendChild(c)};f.$InnerHtml=function(a,b){if(b==k)return a.innerHTML;a.innerHTML=b};f.$GetClientRect=function(b){var a=b.getBoundingClientRect();return{x:a.left,y:a.top,w:a.right-a.left,h:a.bottom-a.top}};f.$ClearInnerHtml=function(a){a.innerHTML=""};f.$EncodeHtml=function(b){var a=f.$CreateDiv();f.$InnerText(a,b);return f.$InnerHtml(a)};f.$DecodeHtml=function(b){var a=f.$CreateDiv();f.$InnerHtml(a,b);return f.$InnerText(a)};f.$SelectElement=function(c){var b;if(g.getSelection)b=g.getSelection();var a=j;if(e.createRange){a=e.createRange();a.selectNode(c)}else{a=e.body.createTextRange();a.moveToElementText(c);a.select()}b&&b.addRange(a)};f.$DeselectElements=function(){if(e.selection)e.selection.empty();else g.getSelection&&g.getSelection().removeAllRanges()};f.$Children=function(d,c){for(var b=[],a=d.firstChild;a;a=a.nextSibling)(c||a.nodeType==1)&&b.push(a);return b};function qb(a,c,e,b){b=b||"u";for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(R(a,b)==c)return a;if(!e){var d=qb(a,c,e,b);if(d)return d}}}f.$FindChild=qb;function P(a,d,f,b){b=b||"u";var c=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){R(a,b)==d&&c.push(a);if(!f){var e=P(a,d,f,b);if(e.length)c=c.concat(e)}}return c}function kb(a,c,d){for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(a.tagName==c)return a;if(!d){var b=kb(a,c,d);if(b)return b}}}f.$FindChildByTag=kb;function db(a,c,e){var b=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){(!c||a.tagName==c)&&b.push(a);if(!e){var d=db(a,c,e);if(d.length)b=b.concat(d)}}return b}f.$FindChildrenByTag=db;f.$GetElementsByTag=function(b,a){return b.getElementsByTagName(a)};function z(){var e=arguments,d,c,b,a,g=1&e[0],f=1+g;d=e[f-1]||{};for(;f<e.length;f++)if(c=e[f])for(b in c){a=c[b];if(a!==k){a=c[b];var h=d[b];d[b]=g&&(x(h)||x(a))?z(g,{},h,a):a}}return d}f.$Extend=z;function W(f,g){var d={},c,a,b;for(c in f){a=f[c];b=g[c];if(a!==b){var e;if(x(a)&&x(b)){a=W(a,b);e=!pb(a)}!e&&(d[c]=a)}}return d}f.$Unextend=W;f.$IsFunction=function(a){return A(a)=="function"};f.$IsArray=function(a){return A(a)=="array"};f.$IsString=function(a){return A(a)=="string"};f.$IsNumeric=function(a){return!isNaN(o(a))&&isFinite(a)};f.$Type=A;f.$Each=m;f.$IsNotEmpty=pb;f.$IsPlainObject=x;function O(a){return e.createElement(a)}f.$CreateElement=O;f.$CreateDiv=function(){return O("DIV")};f.$CreateSpan=function(){return O("SPAN")};f.$EmptyFunction=function(){};function T(b,c,a){if(a==k)return b.getAttribute(c);b.setAttribute(c,a)}function R(a,b){return T(a,b)||T(a,"data-"+b)}f.$Attribute=T;f.$AttributeEx=R;function u(b,a){if(a==k)return b.className;b.className=a}f.$ClassName=u;function ub(b){var a={};m(b,function(b){a[b]=b});return a}function Hb(b){var a=[];m(b,function(b){a.push(b)});return a}function wb(b,a){return b.match(a||zb)}function M(b,a){return ub(wb(b||"",a))}f.$ToHash=ub;f.$FromHash=Hb;f.$Split=wb;function Y(b,c){var a="";m(c,function(c){a&&(a+=b);a+=c});return a}function E(a,c,b){u(a,Y(" ",z(W(M(u(a)),M(c)),M(b))))}f.$Join=Y;f.$AddClass=function(b,a){E(b,j,a)};f.$RemoveClass=E;f.$ReplaceClass=E;f.$ParentNode=function(a){return a.parentNode};f.$HideElement=function(a){f.$CssDisplay(a,"none")};f.$EnableElement=function(a,b){if(b)f.$Attribute(a,"disabled",c);else f.$RemoveAttribute(a,"disabled")};f.$HideElements=function(b){for(var a=0;a<b.length;a++)f.$HideElement(b[a])};f.$ShowElement=function(a,b){f.$CssDisplay(a,b?"none":"")};f.$ShowElements=function(b,c){for(var a=0;a<b.length;a++)f.$ShowElement(b[a],c)};f.$RemoveAttribute=function(b,a){b.removeAttribute(a)};f.$CanClearClip=function(){return p()&&l<10};f.$SetStyleClip=function(d,c){if(c)d.style.clip="rect("+b.round(c.$Top)+"px "+b.round(c.$Right)+"px "+b.round(c.$Bottom)+"px "+b.round(c.$Left)+"px)";else{var g=d.style.cssText,f=[new RegExp(/[\s]*clip: rect\(.*?\)[;]?/i),new RegExp(/[\s]*cliptop: .*?[;]?/i),new RegExp(/[\s]*clipright: .*?[;]?/i),new RegExp(/[\s]*clipbottom: .*?[;]?/i),new RegExp(/[\s]*clipleft: .*?[;]?/i)],e=F(g,f,"");a.$CssCssText(d,e)}};f.$GetNow=function(){return+new Date};f.$AppendChild=function(b,a){b.appendChild(a)};f.$AppendChildren=function(b,a){m(a,function(a){f.$AppendChild(b,a)})};f.$InsertBefore=function(b,a,c){(c||a.parentNode).insertBefore(b,a)};f.$InsertAfter=function(b,a,c){f.$InsertBefore(b,a.nextSibling,c||a.parentNode)};f.$InsertAdjacentHtml=function(b,a,c){b.insertAdjacentHTML(a,c)};f.$RemoveElement=function(a,b){(b||a.parentNode).removeChild(a)};f.$RemoveElements=function(a,b){m(a,function(a){f.$RemoveElement(a,b)})};f.$Empty=function(a){f.$RemoveElements(f.$Children(a,c),a)};f.$CenterElement=function(a,b){var c=f.$ParentNode(a);b&1&&f.$CssLeft(a,(f.$CssWidth(c)-f.$CssWidth(a))/2);b&2&&f.$CssTop(a,(f.$CssHeight(c)-f.$CssHeight(a))/2)};f.$ParseInt=function(b,a){return parseInt(b,a||10)};var o=parseFloat;f.$ParseFloat=o;f.$IsChild=function(b,a){var c=e.body;while(a&&b!==a&&c!==a)try{a=a.parentNode}catch(d){return i}return b===a};function U(d,c,b){var a=d.cloneNode(!c);!b&&f.$RemoveAttribute(a,"id");return a}f.$CloneNode=U;f.$LoadImage=function(e,g){var a=new Image;function b(e,c){f.$RemoveEvent(a,"load",b);f.$RemoveEvent(a,"abort",d);f.$RemoveEvent(a,"error",d);g&&g(a,c)}function d(a){b(a,c)}if(mb()&&l<11.6||!e)b(!e);else{f.$AddEvent(a,"load",b);f.$AddEvent(a,"abort",d);f.$AddEvent(a,"error",d);a.src=e}};f.$LoadImages=function(d,a,e){var c=d.length+1;function b(b){c--;if(a&&b&&b.src==a.src)a=b;!c&&e&&e(a)}m(d,function(a){f.$LoadImage(a.src,b)});b()};f.$BuildElement=function(b,g,i,h){if(h)b=U(b);var c=P(b,g);if(!c.length)c=a.$GetElementsByTag(b,g);for(var f=c.length-1;f>-1;f--){var d=c[f],e=U(i);u(e,u(d));a.$CssCssText(e,d.style.cssText);a.$InsertBefore(e,d);a.$RemoveElement(d)}return b};function Gb(b){var l=this,p="",r=["av","pv","ds","dn"],g=[],q,j=0,h=0,d=0;function i(){E(b,q,g[d||j||h&2||h]);a.$Css(b,"pointer-events",d?"none":"")}function c(){j=0;i();f.$RemoveEvent(e,"mouseup",c);f.$RemoveEvent(e,"touchend",c);f.$RemoveEvent(e,"touchcancel",c)}function o(a){if(d)f.$CancelEvent(a);else{j=4;i();f.$AddEvent(e,"mouseup",c);f.$AddEvent(e,"touchend",c);f.$AddEvent(e,"touchcancel",c)}}l.$Selected=function(a){if(a===k)return h;h=a&2||a&1;i()};l.$Enable=function(a){if(a===k)return!d;d=a?0:3;i()};l.$Elmt=b=f.$GetElement(b);var n=a.$Split(u(b));if(n)p=n.shift();m(r,function(a){g.push(p+a)});q=Y(" ",g);g.unshift("");f.$AddEvent(b,"mousedown",o);f.$AddEvent(b,"touchstart",o)}f.$Buttonize=function(a){return new Gb(a)};f.$Css=B;f.$CssN=X;f.$CssP=Jb;f.$CssOverflow=h("overflow");f.$CssTop=h("top",2);f.$CssLeft=h("left",2);f.$CssWidth=h("width",2);f.$CssHeight=h("height",2);f.$CssMarginLeft=h("marginLeft",2);f.$CssMarginTop=h("marginTop",2);f.$CssPosition=h("position");f.$CssDisplay=h("display");f.$CssZIndex=h("zIndex",1);f.$CssFloat=function(b,a){return B(b,p()?"styleFloat":"cssFloat",a)};f.$CssOpacity=function(b,a,c){if(a!=k)Eb(b,a,c);else return Cb(b)};f.$CssCssText=function(a,b){if(b!=k)a.style.cssText=b;else return a.style.cssText};var Q={$Opacity:f.$CssOpacity,$Top:f.$CssTop,$Left:f.$CssLeft,$Width:f.$CssWidth,$Height:f.$CssHeight,$Position:f.$CssPosition,$Display:f.$CssDisplay,$ZIndex:f.$CssZIndex},K;function G(){if(!K)K=z({$MarginTop:f.$CssMarginTop,$MarginLeft:f.$CssMarginLeft,$Clip:f.$SetStyleClip,$Transform:f.$SetStyleTransform},Q);return K}function ob(){var a={};a.$Transform=a.$Transform;a.$Transform=a.$Rotate;a.$Transform=a.$RotateX;a.$Transform=a.$RotateY;a.$Transform=a.$SkewX;a.$Transform=a.$SkewY;a.$Transform=a.$TranslateX;a.$Transform=a.$TranslateY;a.$Transform=a.$TranslateZ;return G()}f.$StyleSetter=G;f.$StyleSetterEx=ob;f.$GetStyles=function(c,b){G();var a={};m(b,function(d,b){if(Q[b])a[b]=Q[b](c)});return a};f.$SetStyles=function(c,b){var a=G();m(b,function(d,b){a[b]&&a[b](c,d)})};f.$SetStylesEx=function(b,a){ob();f.$SetStyles(b,a)};var D=new function(){var a=this;function b(d,g){for(var j=d[0].length,i=d.length,h=g[0].length,f=[],c=0;c<i;c++)for(var k=f[c]=[],b=0;b<h;b++){for(var e=0,a=0;a<j;a++)e+=d[c][a]*g[a][b];k[b]=e}return f}a.$ScaleX=function(b,c){return a.$ScaleXY(b,c,0)};a.$ScaleY=function(b,c){return a.$ScaleXY(b,0,c)};a.$ScaleXY=function(a,c,d){return b(a,[[c,0],[0,d]])};a.$TransformPoint=function(d,c){var a=b(d,[[c.x],[c.y]]);return w(a[0][0],a[1][0])}};f.$CreateMatrix=function(d,a,c){var e=b.cos(d),f=b.sin(d);return[[e*a,-f*c],[f*a,e*c]]};f.$GetMatrixOffset=function(d,c,a){var e=D.$TransformPoint(d,w(-c/2,-a/2)),f=D.$TransformPoint(d,w(c/2,-a/2)),g=D.$TransformPoint(d,w(c/2,a/2)),h=D.$TransformPoint(d,w(-c/2,a/2));return w(b.min(e.x,f.x,g.x,h.x)+c/2,b.min(e.y,f.y,g.y,h.y)+a/2)};var yb={$Zoom:1,$ScaleX:1,$ScaleY:1,$Rotate:0,$RotateX:0,$RotateY:0,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0};f.$FormatEasings=function(b){var c=b||{};if(b)if(a.$IsFunction(b))c={$Default:c};else if(a.$IsFunction(b.$Clip))c.$Clip={$Default:b.$Clip};return c};function tb(c,a){var b={};m(c,function(c,d){var e=c;if(a[d]!=k)if(f.$IsNumeric(c))e=c+a[d];else e=tb(c,a[d]);b[d]=e});return b}f.$AddDif=tb;f.$Cast=function(h,i,w,n,y,z,o){var c=i;if(h){c={};for(var g in i){var A=z[g]||1,v=y[g]||[0,1],e=(w-v[0])/v[1];e=b.min(b.max(e,0),1);e=e*A;var u=b.floor(e);if(e!=u)e-=u;var l=n.$Default||d.$EaseSwing,m,B=h[g],q=i[g];if(a.$IsNumeric(q)){l=n[g]||l;var x=l(e);m=B+q*x}else{m=a.$Extend({$Offset:{}},h[g]);a.$Each(q.$Offset||q,function(d,a){if(n.$Clip)l=n.$Clip[a]||n.$Clip.$Default||l;var c=l(e),b=d*c;m.$Offset[a]=b;m[a]+=b})}c[g]=m}var t,f={$OriginalWidth:o.$OriginalWidth,$OriginalHeight:o.$OriginalHeight};a.$Each(yb,function(d,a){t=t||i[a];var b=c[a];if(b!=k){if(b!=d)f[a]=b;delete c[a]}else if(h[a]!=k&&h[a]!=d)f[a]=h[a]});if(i.$Zoom&&f.$Zoom){f.$ScaleX=f.$Zoom;f.$ScaleY=f.$Zoom}c.$Transform=f}if(i.$Clip&&o.$Move){var p=c.$Clip.$Offset,s=(p.$Top||0)+(p.$Bottom||0),r=(p.$Left||0)+(p.$Right||0);c.$Left=(c.$Left||0)+r;c.$Top=(c.$Top||0)+s;c.$Clip.$Left-=r;c.$Clip.$Right-=r;c.$Clip.$Top-=s;c.$Clip.$Bottom-=s}if(c.$Clip&&a.$CanClearClip()&&!c.$Clip.$Top&&!c.$Clip.$Left&&c.$Clip.$Right==o.$OriginalWidth&&c.$Clip.$Bottom==o.$OriginalHeight)c.$Clip=j;return c}};function m(){var b=this,d=[],c=[];function i(a,b){d.push({$EventName:a,$Handler:b})}function h(b,c){a.$Each(d,function(a,e){a.$EventName==b&&a.$Handler===c&&d.splice(e,1)})}function f(){d=[]}function e(){a.$Each(c,function(b){a.$RemoveEvent(b.$Obj,b.$EventName,b.$Handler)});c=[]}b.$Listen=function(e,b,d,f){a.$AddEvent(e,b,d,f);c.push({$Obj:e,$EventName:b,$Handler:d})};b.$Unlisten=function(e,b,d){a.$Each(c,function(f,g){if(f.$Obj===e&&f.$EventName==b&&f.$Handler===d){a.$RemoveEvent(e,b,d);c.splice(g,1)}})};b.$UnlistenAll=e;b.$On=b.addEventListener=i;b.$Off=b.removeEventListener=h;b.$TriggerEvent=function(b){var c=[].slice.call(arguments,1);a.$Each(d,function(a){a.$EventName==b&&a.$Handler.apply(g,c)})};b.$Destroy=function(){e();f();for(var a in b)delete b[a]}}var l=g.$JssorAnimator$=function(y,C,k,P,N,J){y=y||0;var d=this,q,M,n,o,v,z=0,H,I,G,B,x=0,h=0,m=0,D,l,s,f,e,p,w=[],A;function O(a){f+=a;e+=a;l+=a;s+=a;h+=a;m+=a;x+=a}function u(n){var g=n;if(p&&(g>=e||g<=f))g=((g-f)%p+p)%p+f;if(!D||v||h!=g){var i=b.min(g,e);i=b.max(i,f);if(!D||v||i!=m){if(J){var j=(i-l)/(C||1);if(k.$Reverse)j=1-j;var o=a.$Cast(N,J,j,H,G,I,k);a.$Each(o,function(b,a){A[a]&&A[a](P,b)})}d.$OnInnerOffsetChange(m-l,i-l);m=i;a.$Each(w,function(b,c){var a=n<h?w[w.length-c-1]:b;a.$GoToPosition(m-x)});var r=h,q=m;h=g;D=c;d.$OnPositionChange(r,q)}}}function E(a,c,d){c&&a.$Shift(e);if(!d){f=b.min(f,a.$GetPosition_OuterBegin()+x);e=b.max(e,a.$GetPosition_OuterEnd()+x)}w.push(a)}var r=g.requestAnimationFrame||g.webkitRequestAnimationFrame||g.mozRequestAnimationFrame||g.msRequestAnimationFrame;if(a.$IsBrowserSafari()&&a.$BrowserVersion()<7)r=j;r=r||function(b){a.$Delay(b,k.$Interval)};function K(){if(q){var d=a.$GetNow(),e=b.min(d-z,k.$IntervalMax),c=h+e*o;z=d;if(c*o>=n*o)c=n;u(c);if(!v&&c*o>=n*o)L(B);else r(K)}}function t(g,i,j){if(!q){q=c;v=j;B=i;g=b.max(g,f);g=b.min(g,e);n=g;o=n<h?-1:1;d.$OnStart();z=a.$GetNow();r(K)}}function L(a){if(q){v=q=B=i;d.$OnStop();a&&a()}}d.$Play=function(a,b,c){t(a?h+a:e,b,c)};d.$PlayToPosition=t;d.$PlayToBegin=function(a,b){t(f,a,b)};d.$PlayToEnd=function(a,b){t(e,a,b)};d.$Stop=L;d.$Continue=function(a){t(a)};d.$GetPosition=function(){return h};d.$GetPlayToPosition=function(){return n};d.$GetPosition_Display=function(){return m};d.$GoToPosition=u;d.$GoToBegin=function(){u(f,c)};d.$GoToEnd=function(){u(e,c)};d.$Move=function(a){u(h+a)};d.$CombineMode=function(){return M};d.$GetDuration=function(){return C};d.$IsPlaying=function(){return q};d.$IsOnTheWay=function(){return h>l&&h<=s};d.$SetLoopLength=function(a){p=a};d.$Shift=O;d.$Join=E;d.$Combine=function(a,b){E(a,0,b)};d.$Chain=function(a){E(a,1)};d.$Expand=function(a){e+=a};d.$GetPosition_InnerBegin=function(){return l};d.$GetPosition_InnerEnd=function(){return s};d.$GetPosition_OuterBegin=function(){return f};d.$GetPosition_OuterEnd=function(){return e};d.$OnPositionChange=d.$OnStart=d.$OnStop=d.$OnInnerOffsetChange=a.$EmptyFunction;d.$Version=a.$GetNow();k=a.$Extend({$Interval:16,$IntervalMax:50},k);p=k.$LoopLength;A=a.$Extend({},a.$StyleSetter(),k.$Setter);f=l=y;e=s=y+C;I=k.$Round||{};G=k.$During||{};H=a.$FormatEasings(k.$Easing)};var o=g.$JssorSlideshowFormations$=new function(){var h=this,d=0,a=1,f=2,e=3,s=1,r=2,t=4,q=8,w=256,x=512,v=1024,u=2048,j=u+s,i=u+r,o=x+s,m=x+r,n=w+t,k=w+q,l=v+t,p=v+q;function y(a){return(a&r)==r}function z(a){return(a&t)==t}function g(b,a,c){c.push(a);b[a]=b[a]||[];b[a].push(c)}h.$FormationStraight=function(f){for(var d=f.$Cols,e=f.$Rows,s=f.$Assembly,t=f.$Count,r=[],a=0,b=0,p=d-1,q=e-1,h=t-1,c,b=0;b<e;b++)for(a=0;a<d;a++){switch(s){case j:c=h-(a*e+(q-b));break;case l:c=h-(b*d+(p-a));break;case o:c=h-(a*e+b);case n:c=h-(b*d+a);break;case i:c=a*e+b;break;case k:c=b*d+(p-a);break;case m:c=a*e+(q-b);break;default:c=b*d+a}g(r,c,[b,a])}return r};h.$FormationSwirl=function(q){var x=q.$Cols,y=q.$Rows,B=q.$Assembly,w=q.$Count,A=[],z=[],u=0,b=0,h=0,r=x-1,s=y-1,t,p,v=0;switch(B){case j:b=r;h=0;p=[f,a,e,d];break;case l:b=0;h=s;p=[d,e,a,f];break;case o:b=r;h=s;p=[e,a,f,d];break;case n:b=r;h=s;p=[a,e,d,f];break;case i:b=0;h=0;p=[f,d,e,a];break;case k:b=r;h=0;p=[a,f,d,e];break;case m:b=0;h=s;p=[e,d,f,a];break;default:b=0;h=0;p=[d,f,a,e]}u=0;while(u<w){t=h+","+b;if(b>=0&&b<x&&h>=0&&h<y&&!z[t]){z[t]=c;g(A,u++,[h,b])}else switch(p[v++%p.length]){case d:b--;break;case f:h--;break;case a:b++;break;case e:h++}switch(p[v%p.length]){case d:b++;break;case f:h++;break;case a:b--;break;case e:h--}}return A};h.$FormationZigZag=function(p){var w=p.$Cols,x=p.$Rows,z=p.$Assembly,v=p.$Count,t=[],u=0,b=0,c=0,q=w-1,r=x-1,y,h,s=0;switch(z){case j:b=q;c=0;h=[f,a,e,a];break;case l:b=0;c=r;h=[d,e,a,e];break;case o:b=q;c=r;h=[e,a,f,a];break;case n:b=q;c=r;h=[a,e,d,e];break;case i:b=0;c=0;h=[f,d,e,d];break;case k:b=q;c=0;h=[a,f,d,f];break;case m:b=0;c=r;h=[e,d,f,d];break;default:b=0;c=0;h=[d,f,a,f]}u=0;while(u<v){y=c+","+b;if(b>=0&&b<w&&c>=0&&c<x&&typeof t[y]=="undefined"){g(t,u++,[c,b]);switch(h[s%h.length]){case d:b++;break;case f:c++;break;case a:b--;break;case e:c--}}else{switch(h[s++%h.length]){case d:b--;break;case f:c--;break;case a:b++;break;case e:c++}switch(h[s++%h.length]){case d:b++;break;case f:c++;break;case a:b--;break;case e:c--}}}return t};h.$FormationStraightStairs=function(q){var u=q.$Cols,v=q.$Rows,e=q.$Assembly,t=q.$Count,r=[],s=0,c=0,d=0,f=u-1,h=v-1,x=t-1;switch(e){case j:case m:case o:case i:var a=0,b=0;break;case k:case l:case n:case p:var a=f,b=0;break;default:e=p;var a=f,b=0}c=a;d=b;while(s<t){if(z(e)||y(e))g(r,x-s++,[d,c]);else g(r,s++,[d,c]);switch(e){case j:case m:c--;d++;break;case o:case i:c++;d--;break;case k:case l:c--;d--;break;case p:case n:default:c++;d++}if(c<0||d<0||c>f||d>h){switch(e){case j:case m:a++;break;case k:case l:case o:case i:b++;break;case p:case n:default:a--}if(a<0||b<0||a>f||b>h){switch(e){case j:case m:a=f;b++;break;case o:case i:b=h;a++;break;case k:case l:b=h;a--;break;case p:case n:default:a=0;b++}if(b>h)b=h;else if(b<0)b=0;else if(a>f)a=f;else if(a<0)a=0}d=b;c=a}}return r};h.$FormationSquare=function(i){var a=i.$Cols||1,c=i.$Rows||1,j=[],d,e,f,h,k;f=a<c?(c-a)/2:0;h=a>c?(a-c)/2:0;k=b.round(b.max(a/2,c/2))+1;for(d=0;d<a;d++)for(e=0;e<c;e++)g(j,k-b.min(d+1+f,e+1+h,a-d+f,c-e+h),[e,d]);return j};h.$FormationRectangle=function(f){var d=f.$Cols||1,e=f.$Rows||1,h=[],a,c,i;i=b.round(b.min(d/2,e/2))+1;for(a=0;a<d;a++)for(c=0;c<e;c++)g(h,i-b.min(a+1,c+1,d-a,e-c),[c,a]);return h};h.$FormationRandom=function(d){for(var e=[],a,c=0;c<d.$Rows;c++)for(a=0;a<d.$Cols;a++)g(e,b.ceil(1e5*b.random())%13,[c,a]);return e};h.$FormationCircle=function(d){for(var e=d.$Cols||1,f=d.$Rows||1,h=[],a,i=e/2-.5,j=f/2-.5,c=0;c<e;c++)for(a=0;a<f;a++)g(h,b.round(b.sqrt(b.pow(c-i,2)+b.pow(a-j,2))),[a,c]);return h};h.$FormationCross=function(d){for(var e=d.$Cols||1,f=d.$Rows||1,h=[],a,i=e/2-.5,j=f/2-.5,c=0;c<e;c++)for(a=0;a<f;a++)g(h,b.round(b.min(b.abs(c-i),b.abs(a-j))),[a,c]);return h};h.$FormationRectangleCross=function(f){for(var h=f.$Cols||1,i=f.$Rows||1,j=[],a,d=h/2-.5,e=i/2-.5,k=b.max(d,e)+1,c=0;c<h;c++)for(a=0;a<i;a++)g(j,b.round(k-b.max(d-b.abs(c-d),e-b.abs(a-e)))-1,[a,c]);return j}};g.$JssorSlideshowRunner$=function(n,s,q,t,y){var f=this,u,g,e,x=0,w=t.$TransitionsOrder,r,h=8;function k(g,f){var e={$Interval:f,$Duration:1,$Delay:0,$Cols:1,$Rows:1,$Opacity:0,$Zoom:0,$Clip:0,$Move:i,$SlideOut:i,$Reverse:i,$Formation:o.$FormationRandom,$Assembly:1032,$ChessMode:{$Column:0,$Row:0},$Easing:d.$EaseSwing,$Round:{},$Blocks:[],$During:{}};a.$Extend(e,g);e.$Count=e.$Cols*e.$Rows;e.$Easing=a.$FormatEasings(e.$Easing);e.$FramesCount=b.ceil(e.$Duration/e.$Interval);e.$GetBlocks=function(b,a){b/=e.$Cols;a/=e.$Rows;var f=b+"x"+a;if(!e.$Blocks[f]){e.$Blocks[f]={$Width:b,$Height:a};for(var c=0;c<e.$Cols;c++)for(var d=0;d<e.$Rows;d++)e.$Blocks[f][d+","+c]={$Top:d*a,$Right:c*b+b,$Bottom:d*a+a,$Left:c*b}}return e.$Blocks[f]};if(e.$Brother){e.$Brother=k(e.$Brother,f);e.$SlideOut=c}return e}function p(A,h,d,v,n,l){var y=this,t,u={},j={},m=[],f,e,r,p=d.$ChessMode.$Column||0,q=d.$ChessMode.$Row||0,g=d.$GetBlocks(n,l),o=B(d),C=o.length-1,s=d.$Duration+d.$Delay*C,w=v+s,k=d.$SlideOut,x;w+=50;function B(a){var b=a.$Formation(a);return a.$Reverse?b.reverse():b}y.$EndTime=w;y.$ShowFrame=function(c){c-=v;var e=c<s;if(e||x){x=e;if(!k)c=s-c;var f=b.ceil(c/d.$Interval);a.$Each(j,function(c,e){var d=b.max(f,c.$Min);d=b.min(d,c.length-1);if(c.$LastFrameIndex!=d){if(!c.$LastFrameIndex&&!k)a.$ShowElement(m[e]);else d==c.$Max&&k&&a.$HideElement(m[e]);c.$LastFrameIndex=d;a.$SetStylesEx(m[e],c[d])}})}};h=a.$CloneNode(h);if(a.$IsBrowserIe9Earlier()){var D=!h["no-image"],z=a.$FindChildrenByTag(h);a.$Each(z,function(b){(D||b["jssor-slider"])&&a.$CssOpacity(b,a.$CssOpacity(b),c)})}a.$Each(o,function(h,m){a.$Each(h,function(G){var K=G[0],J=G[1],v=K+","+J,o=i,s=i,x=i;if(p&&J%2){if(p&3)o=!o;if(p&12)s=!s;if(p&16)x=!x}if(q&&K%2){if(q&3)o=!o;if(q&12)s=!s;if(q&16)x=!x}d.$Top=d.$Top||d.$Clip&4;d.$Bottom=d.$Bottom||d.$Clip&8;d.$Left=d.$Left||d.$Clip&1;d.$Right=d.$Right||d.$Clip&2;var C=s?d.$Bottom:d.$Top,z=s?d.$Top:d.$Bottom,B=o?d.$Right:d.$Left,A=o?d.$Left:d.$Right;d.$Clip=C||z||B||A;r={};e={$Top:0,$Left:0,$Opacity:1,$Width:n,$Height:l};f=a.$Extend({},e);t=a.$Extend({},g[v]);if(d.$Opacity)e.$Opacity=2-d.$Opacity;if(d.$ZIndex){e.$ZIndex=d.$ZIndex;f.$ZIndex=0}var I=d.$Cols*d.$Rows>1||d.$Clip;if(d.$Zoom||d.$Rotate){var H=c;if(a.$IsBrowserIe9Earlier())if(d.$Cols*d.$Rows>1)H=i;else I=i;if(H){e.$Zoom=d.$Zoom?d.$Zoom-1:1;f.$Zoom=1;if(a.$IsBrowserIe9Earlier()||a.$IsBrowserOpera())e.$Zoom=b.min(e.$Zoom,2);var N=d.$Rotate||0;e.$Rotate=N*360*(x?-1:1);f.$Rotate=0}}if(I){var h=t.$Offset={};if(d.$Clip){var w=d.$ScaleClip||1;if(C&&z){h.$Top=g.$Height/2*w;h.$Bottom=-h.$Top}else if(C)h.$Bottom=-g.$Height*w;else if(z)h.$Top=g.$Height*w;if(B&&A){h.$Left=g.$Width/2*w;h.$Right=-h.$Left}else if(B)h.$Right=-g.$Width*w;else if(A)h.$Left=g.$Width*w}r.$Clip=t;f.$Clip=g[v]}var L=o?1:-1,M=s?1:-1;if(d.x)e.$Left+=n*d.x*L;if(d.y)e.$Top+=l*d.y*M;a.$Each(e,function(b,c){if(a.$IsNumeric(b))if(b!=f[c])r[c]=b-f[c]});u[v]=k?f:e;var D=d.$FramesCount,y=b.round(m*d.$Delay/d.$Interval);j[v]=new Array(y);j[v].$Min=y;j[v].$Max=y+D-1;for(var F=0;F<=D;F++){var E=a.$Cast(f,r,F/D,d.$Easing,d.$During,d.$Round,{$Move:d.$Move,$OriginalWidth:n,$OriginalHeight:l});E.$ZIndex=E.$ZIndex||1;j[v].push(E)}})});o.reverse();a.$Each(o,function(b){a.$Each(b,function(c){var f=c[0],e=c[1],d=f+","+e,b=h;if(e||f)b=a.$CloneNode(h);a.$SetStyles(b,u[d]);a.$CssOverflow(b,"hidden");a.$CssPosition(b,"absolute");A.$AddClipElement(b);m[d]=b;a.$ShowElement(b,!k)})})}function v(){var a=this,b=0;l.call(a,0,u);a.$OnPositionChange=function(c,a){if(a-b>h){b=a;e&&e.$ShowFrame(a);g&&g.$ShowFrame(a)}};a.$Transition=r}f.$GetTransition=function(){var a=0,c=t.$Transitions,d=c.length;if(w)a=x++%d;else a=b.floor(b.random()*d);c[a]&&(c[a].$Index=a);return c[a]};f.$Initialize=function(w,x,j,l,a){r=a;a=k(a,h);var i=l.$Item,d=j.$Item;i["no-image"]=!l.$Image;d["no-image"]=!j.$Image;var m=i,o=d,v=a,c=a.$Brother||k({},h);if(!a.$SlideOut){m=d;o=i}var t=c.$Shift||0;g=new p(n,o,c,b.max(t-c.$Interval,0),s,q);e=new p(n,m,v,b.max(c.$Interval-t,0),s,q);g.$ShowFrame(0);e.$ShowFrame(0);u=b.max(g.$EndTime,e.$EndTime);f.$Index=w};f.$Clear=function(){n.$Clear();g=j;e=j};f.$GetProcessor=function(){var a=j;if(e)a=new v;return a};if(a.$IsBrowserIe9Earlier()||a.$IsBrowserOpera()||y&&a.$WebKitVersion()<537)h=16;m.call(f);l.call(f,-1e7,1e7)};var h=g.$JssorSlider$=function(q,fc){var o=this;function Ec(){var a=this;l.call(a,-1e8,2e8);a.$GetCurrentSlideInfo=function(){var c=a.$GetPosition_Display(),d=b.floor(c),f=t(d),e=c-b.floor(c);return{$Index:f,$VirtualIndex:d,$Position:e}};a.$OnPositionChange=function(d,a){var e=b.floor(a);if(e!=a&&a>d)e++;Ub(e,c);o.$TriggerEvent(h.$EVT_POSITION_CHANGE,t(a),t(d),a,d)}}function Dc(){var b=this;l.call(b,0,0,{$LoopLength:r});a.$Each(C,function(a){D&1&&a.$SetLoopLength(r);b.$Chain(a);a.$Shift(fb/bc)})}function Cc(){var a=this,b=Tb.$Elmt;l.call(a,-1,2,{$Easing:d.$EaseLinear,$Setter:{$Position:Zb},$LoopLength:r},b,{$Position:1},{$Position:-2});a.$Wrapper=b}function qc(n,m){var a=this,d,e,g,k,b;l.call(a,-1e8,2e8,{$IntervalMax:100});a.$OnStart=function(){O=c;R=j;o.$TriggerEvent(h.$EVT_SWIPE_START,t(w.$GetPosition()),w.$GetPosition())};a.$OnStop=function(){O=i;k=i;var a=w.$GetCurrentSlideInfo();o.$TriggerEvent(h.$EVT_SWIPE_END,t(w.$GetPosition()),w.$GetPosition());!a.$Position&&Gc(a.$VirtualIndex,s)};a.$OnPositionChange=function(i,h){var a;if(k)a=b;else{a=e;if(g){var c=h/g;a=f.$SlideEasing(c)*(e-d)+d}}w.$GoToPosition(a)};a.$PlayCarousel=function(b,f,c,h){d=b;e=f;g=c;w.$GoToPosition(b);a.$GoToPosition(0);a.$PlayToPosition(c,h)};a.$StandBy=function(d){k=c;b=d;a.$Play(d,j,c)};a.$SetStandByPosition=function(a){b=a};a.$MoveCarouselTo=function(a){w.$GoToPosition(a)};w=new Ec;w.$Combine(n);w.$Combine(m)}function rc(){var c=this,b=Xb();a.$CssZIndex(b,0);a.$Css(b,"pointerEvents","none");c.$Elmt=b;c.$AddClipElement=function(c){a.$AppendChild(b,c);a.$ShowElement(b)};c.$Clear=function(){a.$HideElement(b);a.$Empty(b)}}function Bc(k,e){var d=this,q,H,x,n,y=[],w,B,W,G,Q,F,g,v,p,eb;l.call(d,-u,u+1,{$SlideItemAnimator:c});function E(b){q&&q.$Revert();T(k,b,0);F=c;q=new I.$Class(k,I,a.$ParseFloat(a.$AttributeEx(k,"idle"))||pc);q.$GoToPosition(0)}function Y(){q.$Version<I.$Version&&E()}function N(p,r,m){if(!G){G=c;if(n&&m){var g=m.width,b=m.height,l=g,k=b;if(g&&b&&f.$FillMode){if(f.$FillMode&3&&(!(f.$FillMode&4)||g>K||b>J)){var j=i,q=K/J*b/g;if(f.$FillMode&1)j=q>1;else if(f.$FillMode&2)j=q<1;l=j?g*J/b:K;k=j?J:b*K/g}a.$CssWidth(n,l);a.$CssHeight(n,k);a.$CssTop(n,(J-k)/2);a.$CssLeft(n,(K-l)/2)}a.$CssPosition(n,"absolute");o.$TriggerEvent(h.$EVT_LOAD_END,e)}}a.$HideElement(r);p&&p(d)}function X(b,c,f,g){if(g==R&&s==e&&P)if(!Fc){var a=t(b);A.$Initialize(a,e,c,d,f);c.$HideContentForSlideshow();U.$Shift(a-U.$GetPosition_OuterBegin()-1);U.$GoToPosition(a);z.$PlayCarousel(b,b,0)}}function ab(b){if(b==R&&s==e){if(!g){var a=j;if(A)if(A.$Index==e)a=A.$GetProcessor();else A.$Clear();Y();g=new yc(k,e,a,q);g.$SetPlayer(p)}!g.$IsPlaying()&&g.$Replay()}}function S(h,c,i){if(h==e){if(h!=c)C[c]&&C[c].$ParkOut();else!i&&g&&g.$AdjustIdleOnPark();p&&p.$Enable();var k=R=a.$GetNow();d.$LoadImage(a.$CreateCallback(j,ab,k))}else{var m=b.abs(e-h),l=u+f.$LazyLoading-1;(!Q||m<=l)&&d.$LoadImage()}}function bb(){if(s==e&&g){g.$Stop();p&&p.$Quit();p&&p.$Disable();g.$OpenSlideshowPanel()}}function db(){s==e&&g&&g.$Stop()}function Z(a){!M&&o.$TriggerEvent(h.$EVT_CLICK,e,a)}function O(){p=v.pInstance;g&&g.$SetPlayer(p)}d.$LoadImage=function(d,b){b=b||x;if(y.length&&!G){a.$ShowElement(b);if(!W){W=c;o.$TriggerEvent(h.$EVT_LOAD_START,e);a.$Each(y,function(b){if(!a.$Attribute(b,"src")){b.src=a.$AttributeEx(b,"src2");a.$CssDisplay(b,b["display-origin"])}})}a.$LoadImages(y,n,a.$CreateCallback(j,N,d,b))}else N(d,b)};d.$GoForNextSlide=function(){var h=e;if(f.$AutoPlaySteps<0)h-=r;var c=h+f.$AutoPlaySteps*wc;if(D&2)c=t(c);if(!(D&1))c=b.max(0,b.min(c,r-u));if(c!=e){if(A){var d=A.$GetTransition(r);if(d){var i=R=a.$GetNow(),g=C[t(c)];return g.$LoadImage(a.$CreateCallback(j,X,c,g,d,i),x)}}nb(c)}};d.$TryActivate=function(){S(e,e,c)};d.$ParkOut=function(){p&&p.$Quit();p&&p.$Disable();d.$UnhideContentForSlideshow();g&&g.$Abort();g=j;E()};d.$StampSlideItemElements=function(a){a=eb+"_"+a};d.$HideContentForSlideshow=function(){a.$HideElement(k)};d.$UnhideContentForSlideshow=function(){a.$ShowElement(k)};d.$EnablePlayer=function(){p&&p.$Enable()};function T(b,d,e){if(a.$Attribute(b,"jssor-slider"))return;if(!F){if(b.tagName=="IMG"){y.push(b);if(!a.$Attribute(b,"src")){Q=c;b["display-origin"]=a.$CssDisplay(b);a.$HideElement(b)}}a.$IsBrowserIe9Earlier()&&a.$CssZIndex(b,(a.$CssZIndex(b)||0)+1)}var f=a.$Children(b);a.$Each(f,function(f){var h=f.tagName,j=a.$AttributeEx(f,"u");if(j=="player"&&!v){v=f;if(v.pInstance)O();else a.$AddEvent(v,"dataavailable",O)}if(j=="caption"){if(d){a.$CssTransformOrigin(f,a.$AttributeEx(f,"to"));a.$CssBackfaceVisibility(f,a.$AttributeEx(f,"bf"));a.$CssTransformStyle(f,"preserve-3d")}else if(!a.$IsBrowserIE()){var g=a.$CloneNode(f,i,c);a.$InsertBefore(g,f,b);a.$RemoveElement(f,b);f=g;d=c}}else if(!F&&!e&&!n){if(h=="A"){if(a.$AttributeEx(f,"u")=="image")n=a.$FindChildByTag(f,"IMG");else n=a.$FindChild(f,"image",c);if(n){w=f;a.$CssDisplay(w,"block");a.$SetStyles(w,V);B=a.$CloneNode(w,c);a.$CssPosition(w,"relative");a.$CssOpacity(B,0);a.$Css(B,"backgroundColor","#000")}}else if(h=="IMG"&&a.$AttributeEx(f,"u")=="image")n=f;if(n){n.border=0;a.$SetStyles(n,V)}}T(f,d,e+1)})}d.$OnInnerOffsetChange=function(c,b){var a=u-b;Zb(H,a)};d.$Index=e;m.call(d);a.$CssPerspective(k,a.$AttributeEx(k,"p"));a.$CssPerspectiveOrigin(k,a.$AttributeEx(k,"po"));var L=a.$FindChild(k,"thumb",c);if(L){d.$Thumb=a.$CloneNode(L);a.$HideElement(L)}a.$ShowElement(k);x=a.$CloneNode(cb);a.$CssZIndex(x,1e3);a.$AddEvent(k,"click",Z);E(c);d.$Image=n;d.$Link=B;d.$Item=k;d.$Wrapper=H=k;a.$AppendChild(H,x);o.$On(203,S);o.$On(28,db);o.$On(24,bb)}function yc(y,f,p,q){var b=this,m=0,u=0,g,j,e,d,k,t,r,n=C[f];l.call(b,0,0);function v(){a.$Empty(N);dc&&k&&n.$Link&&a.$AppendChild(N,n.$Link);a.$ShowElement(N,!k&&n.$Image)}function w(){b.$Replay()}function x(a){r=a;b.$Stop();b.$Replay()}b.$Replay=function(){var a=b.$GetPosition_Display();if(!B&&!O&&!r&&s==f){if(!a){if(g&&!k){k=c;b.$OpenSlideshowPanel(c);o.$TriggerEvent(h.$EVT_SLIDESHOW_START,f,m,u,g,d)}v()}var i,p=h.$EVT_STATE_CHANGE;if(a!=d)if(a==e)i=d;else if(a==j)i=e;else if(!a)i=j;else i=b.$GetPlayToPosition();o.$TriggerEvent(p,f,a,m,j,e,d);var l=P&&(!E||F);if(a==d)(e!=d&&!(E&12)||l)&&n.$GoForNextSlide();else(l||a!=e)&&b.$PlayToPosition(i,w)}};b.$AdjustIdleOnPark=function(){e==d&&e==b.$GetPosition_Display()&&b.$GoToPosition(j)};b.$Abort=function(){A&&A.$Index==f&&A.$Clear();var a=b.$GetPosition_Display();a<d&&o.$TriggerEvent(h.$EVT_STATE_CHANGE,f,-a-1,m,j,e,d)};b.$OpenSlideshowPanel=function(b){p&&a.$CssOverflow(hb,b&&p.$Transition.$Outside?"":"hidden")};b.$OnInnerOffsetChange=function(b,a){if(k&&a>=g){k=i;v();n.$UnhideContentForSlideshow();A.$Clear();o.$TriggerEvent(h.$EVT_SLIDESHOW_END,f,m,u,g,d)}o.$TriggerEvent(h.$EVT_PROGRESS_CHANGE,f,a,m,j,e,d)};b.$SetPlayer=function(a){if(a&&!t){t=a;a.$On($JssorPlayer$.$EVT_SWITCH,x)}};p&&b.$Chain(p);g=b.$GetPosition_OuterEnd();b.$Chain(q);j=g+q.$IdleBegin;e=g+q.$IdleEnd;d=b.$GetPosition_OuterEnd()}function Zb(g,f){var e=x>0?x:gb,c=Bb*f*(e&1),d=Cb*f*(e>>1&1);c=b.round(c);d=b.round(d);a.$CssLeft(g,c);a.$CssTop(g,d)}function Pb(){pb=O;Kb=z.$GetPlayToPosition();G=w.$GetPosition()}function gc(){Pb();if(B||!F&&E&12){z.$Stop();o.$TriggerEvent(h.$EVT_FREEZE)}}function ec(e){if(!B&&(F||!(E&12))&&!z.$IsPlaying()){var c=w.$GetPosition(),a=b.ceil(G);if(e&&b.abs(H)>=f.$MinDragOffsetToSlide){a=b.ceil(c);a+=eb}if(!(D&1))a=b.min(r-u,b.max(a,0));var d=b.abs(a-c);d=1-b.pow(1-d,5);if(!M&&pb)z.$Continue(Kb);else if(c==a){tb.$EnablePlayer();tb.$TryActivate()}else z.$PlayCarousel(c,a,d*Vb)}}function Ib(b){!a.$AttributeEx(a.$EvtSrc(b),"nodrag")&&a.$CancelEvent(b)}function uc(a){Yb(a,1)}function Yb(b,d){b=a.$GetEvent(b);var k=a.$EvtSrc(b);if(!L&&!a.$AttributeEx(k,"nodrag")&&vc()&&(!d||b.touches.length==1)){B=c;Ab=i;R=j;a.$AddEvent(e,d?"touchmove":"mousemove",Db);a.$GetNow();M=0;gc();if(!pb)x=0;if(d){var g=b.touches[0];vb=g.clientX;wb=g.clientY}else{var f=a.$MousePosition(b);vb=f.x;wb=f.y}H=0;bb=0;eb=0;o.$TriggerEvent(h.$EVT_DRAG_START,t(G),G,b)}}function Db(e){if(B){e=a.$GetEvent(e);var f;if(e.type!="mousemove"){var l=e.touches[0];f={x:l.clientX,y:l.clientY}}else f=a.$MousePosition(e);if(f){var j=f.x-vb,k=f.y-wb;if(b.floor(G)!=G)x=x||gb&L;if((j||k)&&!x){if(L==3)if(b.abs(k)>b.abs(j))x=2;else x=1;else x=L;if(jb&&x==1&&b.abs(k)-b.abs(j)>3)Ab=c}if(x){var d=k,i=Cb;if(x==1){d=j;i=Bb}if(!(D&1)){if(d>0){var g=i*s,h=d-g;if(h>0)d=g+b.sqrt(h)*5}if(d<0){var g=i*(r-u-s),h=-d-g;if(h>0)d=-g-b.sqrt(h)*5}}if(H-bb<-2)eb=0;else if(H-bb>2)eb=-1;bb=H;H=d;sb=G-H/i/(Z||1);if(H&&x&&!Ab){a.$CancelEvent(e);if(!O)z.$StandBy(sb);else z.$SetStandByPosition(sb)}}}}}function mb(){sc();if(B){B=i;a.$GetNow();a.$RemoveEvent(e,"mousemove",Db);a.$RemoveEvent(e,"touchmove",Db);M=H;z.$Stop();var b=w.$GetPosition();o.$TriggerEvent(h.$EVT_DRAG_END,t(b),b,t(G),G);E&12&&Pb();ec(c)}}function kc(c){if(M){a.$StopEvent(c);var b=a.$EvtSrc(c);while(b&&v!==b){b.tagName=="A"&&a.$CancelEvent(c);try{b=b.parentNode}catch(d){break}}}}function oc(a){C[s];s=t(a);tb=C[s];Ub(a);return s}function Gc(a,b){x=0;oc(a);o.$TriggerEvent(h.$EVT_PARK,t(a),b)}function Ub(b,c){yb=b;a.$Each(S,function(a){a.$SetCurrentIndex(t(b),b,c)})}function vc(){var b=h.$DragRegistry||0,a=Y;if(jb)a&1&&(a&=1);h.$DragRegistry|=a;return L=a&~b}function sc(){if(L){h.$DragRegistry&=~Y;L=0}}function Xb(){var b=a.$CreateDiv();a.$SetStyles(b,V);a.$CssPosition(b,"absolute");return b}function t(a){return(a%r+r)%r}function lc(a,c){if(c)if(!D){a=b.min(b.max(a+yb,0),r-u);c=i}else if(D&2){a=t(a+yb);c=i}nb(a,f.$SlideDuration,c)}function zb(){a.$Each(S,function(a){a.$Show(a.$Options.$ChanceToShow<=F)})}function ic(){if(!F){F=1;zb();if(!B){E&12&&ec();E&3&&C[s].$TryActivate()}}}function hc(){if(F){F=0;zb();B||!(E&12)||gc()}}function jc(){V={$Width:K,$Height:J,$Top:0,$Left:0};a.$Each(T,function(b){a.$SetStyles(b,V);a.$CssPosition(b,"absolute");a.$CssOverflow(b,"hidden");a.$HideElement(b)});a.$SetStyles(cb,V)}function lb(b,a){nb(b,a,c)}function nb(g,e,l){if(Rb&&(!B&&(F||!(E&12))||f.$NaviQuitDrag)){O=c;B=i;z.$Stop();if(e==k)e=Vb;var d=Eb.$GetPosition_Display(),a=g;if(l){a=d+g;if(g>0)a=b.ceil(a);else a=b.floor(a)}if(D&2)a=t(a);if(!(D&1))a=b.max(0,b.min(a,r-u));var j=(a-d)%r;a=d+j;var h=d==a?0:e*b.abs(j);h=b.min(h,e*u*1.5);z.$PlayCarousel(d,a,h||1)}}o.$PlayTo=nb;o.$GoTo=function(a){w.$GoToPosition(a)};o.$Next=function(){lb(1)};o.$Prev=function(){lb(-1)};o.$Pause=function(){P=i};o.$Play=function(){if(!P){P=c;C[s]&&C[s].$TryActivate()}};o.$SetSlideshowTransitions=function(a){f.$SlideshowOptions.$Transitions=a};o.$SetCaptionTransitions=function(b){I.$Transitions=b;I.$Version=a.$GetNow()};o.$SlidesCount=function(){return T.length};o.$CurrentIndex=function(){return s};o.$IsAutoPlaying=function(){return P};o.$IsDragging=function(){return B};o.$IsSliding=function(){return O};o.$IsMouseOver=function(){return!F};o.$LastDragSucceded=function(){return M};function X(){return a.$CssWidth(y||q)}function ib(){return a.$CssHeight(y||q)}o.$OriginalWidth=o.$GetOriginalWidth=X;o.$OriginalHeight=o.$GetOriginalHeight=ib;function Gb(c,d){if(c==k)return a.$CssWidth(q);if(!y){var b=a.$CreateDiv(e);a.$ClassName(b,a.$ClassName(q));a.$CssCssText(b,a.$CssCssText(q));a.$CssDisplay(b,"block");a.$CssPosition(b,"relative");a.$CssTop(b,0);a.$CssLeft(b,0);a.$CssOverflow(b,"visible");y=a.$CreateDiv(e);a.$CssPosition(y,"absolute");a.$CssTop(y,0);a.$CssLeft(y,0);a.$CssWidth(y,a.$CssWidth(q));a.$CssHeight(y,a.$CssHeight(q));a.$CssTransformOrigin(y,"0 0");a.$AppendChild(y,b);var h=a.$Children(q);a.$AppendChild(q,y);a.$Css(q,"backgroundImage","");a.$Each(h,function(c){a.$AppendChild(a.$AttributeEx(c,"noscale")?q:b,c);a.$AttributeEx(c,"autocenter")&&Lb.push(c)})}Z=c/(d?a.$CssHeight:a.$CssWidth)(y);a.$CssScale(y,Z);var g=d?Z*X():c,f=d?c:Z*ib();a.$CssWidth(q,g);a.$CssHeight(q,f);a.$Each(Lb,function(b){var c=a.$ParseInt(a.$AttributeEx(b,"autocenter"));a.$CenterElement(b,c)})}o.$ScaleHeight=o.$GetScaleHeight=function(b){if(b==k)return a.$CssHeight(q);Gb(b,c)};o.$ScaleWidth=o.$SetScaleWidth=o.$GetScaleWidth=Gb;o.$GetVirtualIndex=function(a){var d=b.ceil(t(fb/bc)),c=t(a-s+d);if(c>u){if(a-s>r/2)a-=r;else if(a-s<=-r/2)a+=r}else a=s+c-d;return a};m.call(o);o.$Elmt=q=a.$GetElement(q);var f=a.$Extend({$FillMode:0,$LazyLoading:1,$ArrowKeyNavigation:1,$StartIndex:0,$AutoPlay:i,$Loop:1,$NaviQuitDrag:c,$AutoPlaySteps:1,$AutoPlayInterval:1e3,$PauseOnHover:1,$SlideDuration:500,$SlideEasing:d.$EaseOutQuad,$MinDragOffsetToSlide:20,$SlideSpacing:0,$Cols:1,$Align:0,$UISearchMode:1,$PlayOrientation:1,$DragOrientation:1},fc);if(f.$Idle!=k)f.$AutoPlayInterval=f.$Idle;if(f.$DisplayPieces!=k)f.$Cols=f.$DisplayPieces;if(f.$ParkingPosition!=k)f.$Align=f.$ParkingPosition;var gb=f.$PlayOrientation&3,wc=(f.$PlayOrientation&4)/-4||1,db=f.$SlideshowOptions,I=a.$Extend({$Class:p,$PlayInMode:1,$PlayOutMode:1},f.$CaptionSliderOptions);I.$Transitions=I.$Transitions||I.$CaptionTransitions;var qb=f.$BulletNavigatorOptions,W=f.$ArrowNavigatorOptions,ab=f.$ThumbnailNavigatorOptions,Q=!f.$UISearchMode,y,v=a.$FindChild(q,"slides",Q),cb=a.$FindChild(q,"loading",Q)||a.$CreateDiv(e),Jb=a.$FindChild(q,"navigator",Q),cc=a.$FindChild(q,"arrowleft",Q),ac=a.$FindChild(q,"arrowright",Q),Hb=a.$FindChild(q,"thumbnavigator",Q),nc=a.$CssWidth(v),mc=a.$CssHeight(v),V,T=[],xc=a.$Children(v);a.$Each(xc,function(b){if(b.tagName=="DIV"&&!a.$AttributeEx(b,"u"))T.push(b);else a.$IsBrowserIe9Earlier()&&a.$CssZIndex(b,(a.$CssZIndex(b)||0)+1)});var s=-1,yb,tb,r=T.length,K=f.$SlideWidth||nc,J=f.$SlideHeight||mc,Wb=f.$SlideSpacing,Bb=K+Wb,Cb=J+Wb,bc=gb&1?Bb:Cb,u=b.min(f.$Cols,r),hb,x,L,Ab,S=[],Qb,Sb,Ob,dc,Fc,P,E=f.$PauseOnHover,pc=f.$AutoPlayInterval,Vb=f.$SlideDuration,rb,ub,fb,Rb=u<r,D=Rb?f.$Loop:0,Y,M,F=1,O,B,R,vb=0,wb=0,H,bb,eb,Eb,w,U,z,Tb=new rc,Z,Lb=[];P=f.$AutoPlay;o.$Options=fc;jc();a.$Attribute(q,"jssor-slider",c);a.$CssZIndex(v,a.$CssZIndex(v)||0);a.$CssPosition(v,"absolute");hb=a.$CloneNode(v,c);a.$InsertBefore(hb,v);if(db){dc=db.$ShowLink;rb=db.$Class;ub=u==1&&r>1&&rb&&(!a.$IsBrowserIE()||a.$BrowserVersion()>=8)}fb=ub||u>=r||!(D&1)?0:f.$Align;Y=(u>1||fb?gb:-1)&f.$DragOrientation;var xb=v,C=[],A,N,Fb=a.$Device(),jb=Fb.$Touchable,G,pb,Kb,sb;Fb.$TouchActionAttr&&a.$Css(xb,Fb.$TouchActionAttr,([j,"pan-y","pan-x","none"])[Y]||"");U=new Cc;if(ub)A=new rb(Tb,K,J,db,jb);a.$AppendChild(hb,U.$Wrapper);a.$CssOverflow(v,"hidden");N=Xb();a.$Css(N,"backgroundColor","#000");a.$CssOpacity(N,0);a.$InsertBefore(N,xb.firstChild,xb);for(var ob=0;ob<T.length;ob++){var zc=T[ob],Ac=new Bc(zc,ob);C.push(Ac)}a.$HideElement(cb);Eb=new Dc;z=new qc(Eb,U);if(Y){a.$AddEvent(v,"mousedown",Yb);a.$AddEvent(v,"touchstart",uc);a.$AddEvent(v,"dragstart",Ib);a.$AddEvent(v,"selectstart",Ib);a.$AddEvent(e,"mouseup",mb);a.$AddEvent(e,"touchend",mb);a.$AddEvent(e,"touchcancel",mb);a.$AddEvent(g,"blur",mb)}E&=jb?10:5;if(Jb&&qb){Qb=new qb.$Class(Jb,qb,X(),ib());S.push(Qb)}if(W&&cc&&ac){W.$Loop=D;W.$Cols=u;Sb=new W.$Class(cc,ac,W,X(),ib());S.push(Sb)}if(Hb&&ab){ab.$StartIndex=f.$StartIndex;Ob=new ab.$Class(Hb,ab);S.push(Ob)}a.$Each(S,function(a){a.$Reset(r,C,cb);a.$On(n.$NAVIGATIONREQUEST,lc)});a.$Css(q,"visibility","visible");Gb(X());a.$AddEvent(v,"click",kc);a.$AddEvent(q,"mouseout",a.$MouseOverOutFilter(ic,q));a.$AddEvent(q,"mouseover",a.$MouseOverOutFilter(hc,q));zb();f.$ArrowKeyNavigation&&a.$AddEvent(e,"keydown",function(a){if(a.keyCode==37)lb(-f.$ArrowKeyNavigation);else a.keyCode==39&&lb(f.$ArrowKeyNavigation)});var kb=f.$StartIndex;if(!(D&1))kb=b.max(0,b.min(kb,r-u));z.$PlayCarousel(kb,kb,0)};h.$EVT_CLICK=21;h.$EVT_DRAG_START=22;h.$EVT_DRAG_END=23;h.$EVT_SWIPE_START=24;h.$EVT_SWIPE_END=25;h.$EVT_LOAD_START=26;h.$EVT_LOAD_END=27;h.$EVT_FREEZE=28;h.$EVT_POSITION_CHANGE=202;h.$EVT_PARK=203;h.$EVT_SLIDESHOW_START=206;h.$EVT_SLIDESHOW_END=207;h.$EVT_PROGRESS_CHANGE=208;h.$EVT_STATE_CHANGE=209;var n={$NAVIGATIONREQUEST:1,$INDEXCHANGE:2,$RESET:3};g.$JssorBulletNavigator$=function(e,C){var f=this;m.call(f);e=a.$GetElement(e);var s,A,z,r,l=0,d,o,k,w,x,h,g,q,p,B=[],y=[];function v(a){a!=-1&&y[a].$Selected(a==l)}function t(a){f.$TriggerEvent(n.$NAVIGATIONREQUEST,a*o)}f.$Elmt=e;f.$GetCurrentIndex=function(){return r};f.$SetCurrentIndex=function(a){if(a!=r){var d=l,c=b.floor(a/o);l=c;r=a;v(d);v(c)}};f.$Show=function(b){a.$ShowElement(e,b)};var u;f.$Reset=function(E){if(!u){s=b.ceil(E/o);l=0;var n=q+w,r=p+x,m=b.ceil(s/k)-1;A=q+n*(!h?m:k-1);z=p+r*(h?m:k-1);a.$CssWidth(e,A);a.$CssHeight(e,z);for(var f=0;f<s;f++){var C=a.$CreateSpan();a.$InnerText(C,f+1);var i=a.$BuildElement(g,"numbertemplate",C,c);a.$CssPosition(i,"absolute");var v=f%(m+1);a.$CssLeft(i,!h?n*v:f%k*n);a.$CssTop(i,h?r*v:b.floor(f/(m+1))*r);a.$AppendChild(e,i);B[f]=i;d.$ActionMode&1&&a.$AddEvent(i,"click",a.$CreateCallback(j,t,f));d.$ActionMode&2&&a.$AddEvent(i,"mouseover",a.$MouseOverOutFilter(a.$CreateCallback(j,t,f),i));y[f]=a.$Buttonize(i)}u=c}};f.$Options=d=a.$Extend({$SpacingX:10,$SpacingY:10,$Orientation:1,$ActionMode:1},C);g=a.$FindChild(e,"prototype");q=a.$CssWidth(g);p=a.$CssHeight(g);a.$RemoveElement(g,e);o=d.$Steps||1;k=d.$Lanes||1;w=d.$SpacingX;x=d.$SpacingY;h=d.$Orientation-1;d.$Scale==i&&a.$Attribute(e,"noscale",c);d.$AutoCenter&&a.$Attribute(e,"autocenter",d.$AutoCenter)};g.$JssorArrowNavigator$=function(b,g,h){var d=this;m.call(d);var r,q,e,f,k;a.$CssWidth(b);a.$CssHeight(b);function l(a){d.$TriggerEvent(n.$NAVIGATIONREQUEST,a,c)}function p(c){a.$ShowElement(b,c||!h.$Loop&&e==0);a.$ShowElement(g,c||!h.$Loop&&e>=q-h.$Cols);r=c}d.$GetCurrentIndex=function(){return e};d.$SetCurrentIndex=function(b,a,c){if(c)e=a;else{e=b;p(r)}};d.$Show=p;var o;d.$Reset=function(d){q=d;e=0;if(!o){a.$AddEvent(b,"click",a.$CreateCallback(j,l,-k));a.$AddEvent(g,"click",a.$CreateCallback(j,l,k));a.$Buttonize(b);a.$Buttonize(g);o=c}};d.$Options=f=a.$Extend({$Steps:1},h);k=f.$Steps;if(f.$Scale==i){a.$Attribute(b,"noscale",c);a.$Attribute(g,"noscale",c)}if(f.$AutoCenter){a.$Attribute(b,"autocenter",f.$AutoCenter);a.$Attribute(g,"autocenter",f.$AutoCenter)}};g.$JssorThumbnailNavigator$=function(g,C){var l=this,z,q,d,w=[],A,y,e,r,s,v,u,p,t,f,o;m.call(l);g=a.$GetElement(g);function B(m,f){var g=this,b,k,i;function p(){k.$Selected(q==f)}function h(d){if(d||!t.$LastDragSucceded()){var a=e-f%e,b=t.$GetVirtualIndex((f+a)/e-1),c=b*e+e-a;l.$TriggerEvent(n.$NAVIGATIONREQUEST,c)}}g.$Index=f;g.$Highlight=p;i=m.$Thumb||m.$Image||a.$CreateDiv();g.$Wrapper=b=a.$BuildElement(o,"thumbnailtemplate",i,c);k=a.$Buttonize(b);d.$ActionMode&1&&a.$AddEvent(b,"click",a.$CreateCallback(j,h,0));d.$ActionMode&2&&a.$AddEvent(b,"mouseover",a.$MouseOverOutFilter(a.$CreateCallback(j,h,1),b))}l.$GetCurrentIndex=function(){return q};l.$SetCurrentIndex=function(c,d,f){var a=q;q=c;a!=-1&&w[a].$Highlight();w[c].$Highlight();!f&&t.$PlayTo(t.$GetVirtualIndex(b.floor(d/e)))};l.$Show=function(b){a.$ShowElement(g,b)};var x;l.$Reset=function(F,C){if(!x){z=F;b.ceil(z/e);q=-1;p=b.min(p,C.length);var j=d.$Orientation&1,m=v+(v+r)*(e-1)*(1-j),l=u+(u+s)*(e-1)*j,o=m+(m+r)*(p-1)*j,n=l+(l+s)*(p-1)*(1-j);a.$CssPosition(f,"absolute");a.$CssOverflow(f,"hidden");d.$AutoCenter&1&&a.$CssLeft(f,(A-o)/2);d.$AutoCenter&2&&a.$CssTop(f,(y-n)/2);a.$CssWidth(f,o);a.$CssHeight(f,n);var k=[];a.$Each(C,function(l,g){var h=new B(l,g),d=h.$Wrapper,c=b.floor(g/e),i=g%e;a.$CssLeft(d,(v+r)*i*(1-j));a.$CssTop(d,(u+s)*i*j);if(!k[c]){k[c]=a.$CreateDiv();a.$AppendChild(f,k[c])}a.$AppendChild(k[c],d);w.push(h)});var E=a.$Extend({$AutoPlay:i,$NaviQuitDrag:i,$SlideWidth:m,$SlideHeight:l,$SlideSpacing:r*j+s*(1-j),$MinDragOffsetToSlide:12,$SlideDuration:200,$PauseOnHover:1,$PlayOrientation:d.$Orientation,$DragOrientation:d.$NoDrag||d.$DisableDrag?0:d.$Orientation},d);t=new h(g,E);x=c}};l.$Options=d=a.$Extend({$SpacingX:0,$SpacingY:0,$Cols:1,$Orientation:1,$AutoCenter:3,$ActionMode:1},C);if(d.$DisplayPieces!=k)d.$Cols=d.$DisplayPieces;if(d.$Rows!=k)d.$Lanes=d.$Rows;A=a.$CssWidth(g);y=a.$CssHeight(g);f=a.$FindChild(g,"slides",c);o=a.$FindChild(f,"prototype");v=a.$CssWidth(o);u=a.$CssHeight(o);a.$RemoveElement(o,f);e=d.$Lanes||1;r=d.$SpacingX;s=d.$SpacingY;p=d.$Cols;d.$Scale==i&&a.$Attribute(g,"noscale",c)};function p(e,d,c){var b=this;l.call(b,0,c);b.$Revert=a.$EmptyFunction;b.$IdleBegin=0;b.$IdleEnd=c}g.$JssorCaptionSlider$=function(h,f,i){var c=this;l.call(c,0,0);var e,d;function g(p,h,f){var c=this,g,n=f?h.$PlayInMode:h.$PlayOutMode,e=h.$Transitions,o={$Transition:"t",$Delay:"d",$Duration:"du",x:"x",y:"y",$Rotate:"r",$Zoom:"z",$Opacity:"f",$BeginTime:"b"},d={$Default:function(b,a){if(!isNaN(a.$Value))b=a.$Value;else b*=a.$Percent;return b},$Opacity:function(b,a){return this.$Default(b-1,a)}};d.$Zoom=d.$Opacity;l.call(c,0,0);function j(r,m){var l=[],i,k=[],c=[];function h(c,d){var b={};a.$Each(o,function(g,h){var e=a.$AttributeEx(c,g+(d||""));if(e){var f={};if(g=="t")f.$Value=e;else if(e.indexOf("%")+1)f.$Percent=a.$ParseFloat(e)/100;else f.$Value=a.$ParseFloat(e);b[h]=f}});return b}function p(){return e[b.floor(b.random()*e.length)]}function g(f){var h;if(f=="*")h=p();else if(f){var d=e[a.$ParseInt(f)]||e[f];if(a.$IsArray(d)){if(f!=i){i=f;c[f]=0;k[f]=d[b.floor(b.random()*d.length)]}else c[f]++;d=k[f];if(a.$IsArray(d)){d=d.length&&d[c[f]%d.length];if(a.$IsArray(d))d=d[b.floor(b.random()*d.length)]}}h=d;if(a.$IsString(h))h=g(h)}return h}var q=a.$Children(r);a.$Each(q,function(b){var c=[];c.$Elmt=b;var e=a.$AttributeEx(b,"u")=="caption";a.$Each(f?[0,3]:[2],function(l,o){if(e){var k,f;if(l!=2||!a.$AttributeEx(b,"t3")){f=h(b,l);if(l==2&&!f.$Transition){f.$Delay=f.$Delay||{$Value:0};f=a.$Extend(h(b,0),f)}}if(f&&f.$Transition){k=g(f.$Transition.$Value);if(k){var i=a.$Extend({$Delay:0},k);a.$Each(f,function(c,a){var b=(d[a]||d.$Default).apply(d,[i[a],f[a]]);if(!isNaN(b))i[a]=b});if(!o)if(f.$BeginTime)i.$BeginTime=f.$BeginTime.$Value||0;else if(n&2)i.$BeginTime=0}}c.push(i)}if(m%2&&!o)c.$Children=j(b,m+1)});l.push(c)});return l}function m(w,c,z){var g={$Easing:c.$Easing,$Round:c.$Round,$During:c.$During,$Reverse:f&&!z},m=w,r=a.$ParentNode(w),k=a.$CssWidth(m),j=a.$CssHeight(m),y=a.$CssWidth(r),x=a.$CssHeight(r),h={},e={},i=c.$ScaleClip||1;if(c.$Opacity)e.$Opacity=1-c.$Opacity;g.$OriginalWidth=k;g.$OriginalHeight=j;if(c.$Zoom||c.$Rotate){e.$Zoom=(c.$Zoom||2)-2;if(a.$IsBrowserIe9Earlier()||a.$IsBrowserOpera())e.$Zoom=b.min(e.$Zoom,1);h.$Zoom=1;var B=c.$Rotate||0;e.$Rotate=B*360;h.$Rotate=0}else if(c.$Clip){var s={$Top:0,$Right:k,$Bottom:j,$Left:0},v=a.$Extend({},s),d=v.$Offset={},u=c.$Clip&4,p=c.$Clip&8,t=c.$Clip&1,q=c.$Clip&2;if(u&&p){d.$Top=j/2*i;d.$Bottom=-d.$Top}else if(u)d.$Bottom=-j*i;else if(p)d.$Top=j*i;if(t&&q){d.$Left=k/2*i;d.$Right=-d.$Left}else if(t)d.$Right=-k*i;else if(q)d.$Left=k*i;g.$Move=c.$Move;e.$Clip=v;h.$Clip=s}var n=0,o=0;if(c.x)n-=y*c.x;if(c.y)o-=x*c.y;if(n||o||g.$Move){e.$Left=n;e.$Top=o}var A=c.$Duration;h=a.$Extend(h,a.$GetStyles(m,e));g.$Setter=a.$StyleSetterEx();return new l(c.$Delay,A,g,m,h,e)}function i(b,d){a.$Each(d,function(d){var a,h=d.$Elmt,e=d[0],j=d[1];if(e){a=m(h,e);e.$BeginTime==k&&a.$Shift(b);b=a.$GetPosition_OuterEnd()}b=i(b,d.$Children);if(j){var f=m(h,j,1);f.$Shift(b);c.$Combine(f);g.$Combine(f)}a&&c.$Combine(a)});return b}c.$Revert=function(){c.$GoToPosition(c.$GetPosition_OuterEnd()*(f||0));g.$GoToPosition(0)};g=new l(0,0);i(0,n?j(p,1):[])}c.$Revert=function(){d.$Revert();e.$Revert()};e=new g(h,f,1);c.$IdleBegin=e.$GetPosition_OuterEnd();c.$IdleEnd=c.$IdleBegin+i;d=new g(h,f);d.$Shift(c.$IdleEnd);c.$Combine(d);c.$Combine(e)};g.$JssorCaptionSlideo$=function(n,g,m){var b=this,o,h={},i=g.$Transitions,d=new l(0,0);l.call(b,0,0);function j(d,c){var b={};a.$Each(d,function(d,f){var e=h[f];if(e){if(a.$IsPlainObject(d))d=j(d,c||f=="e");else if(c)if(a.$IsNumeric(d))d=o[d];b[e]=d}});return b}function k(e,c){var b=[],d=a.$Children(e);a.$Each(d,function(d){var h=a.$AttributeEx(d,"u")=="caption";if(h){var e=a.$AttributeEx(d,"t"),g=i[a.$ParseInt(e)]||i[e],f={$Elmt:d,$Transition:g};b.push(f)}if(c<5)b=b.concat(k(d,c+1))});return b}function r(c,e,b){a.$Each(e,function(f){var e=j(f),g={$Easing:a.$FormatEasings(e.$Easing),$Setter:a.$StyleSetterEx(),$OriginalWidth:b.$Width,$OriginalHeight:b.$Height},h=new l(f.b,f.d,g,c,b,e);d.$Combine(h);b=a.$AddDif(b,e)});return b}function q(b){a.$Each(b,function(e){var b=e.$Elmt,d=a.$CssWidth(b),c=a.$CssHeight(b),f={$Left:a.$CssLeft(b),$Top:a.$CssTop(b),$Opacity:1,$ZIndex:a.$CssZIndex(b)||0,$Rotate:0,$RotateX:0,$RotateY:0,$ScaleX:1,$ScaleY:1,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0,$Width:d,$Height:c,$Clip:{$Top:0,$Right:d,$Bottom:c,$Left:0}};r(b,e.$Transition,f)})}function t(g,f,h){var e=g.b-f;if(e){var a=new l(f,e);a.$Combine(d,c);a.$Shift(h);b.$Combine(a)}b.$Expand(g.d);return e}function s(f){var c=d.$GetPosition_OuterBegin(),e=0;a.$Each(f,function(d,f){d=a.$Extend({d:m},d);t(d,c,e);c=d.b;e+=d.d;if(!f||d.t==2){b.$IdleBegin=c;b.$IdleEnd=c+d.d}})}b.$Revert=function(){b.$GoToPosition(-1,c)};o=[f.$Swing,f.$Linear,f.$InQuad,f.$OutQuad,f.$InOutQuad,f.$InCubic,f.$OutCubic,f.$InOutCubic,f.$InQuart,f.$OutQuart,f.$InOutQuart,f.$InQuint,f.$OutQuint,f.$InOutQuint,f.$InSine,f.$OutSine,f.$InOutSine,f.$InExpo,f.$OutExpo,f.$InOutExpo,f.$InCirc,f.$OutCirc,f.$InOutCirc,f.$InElastic,f.$OutElastic,f.$InOutElastic,f.$InBack,f.$OutBack,f.$InOutBack,f.$InBounce,f.$OutBounce,f.$InOutBounce,f.$GoBack,f.$InWave,f.$OutWave,f.$OutJump,f.$InJump];var u={$Top:"y",$Left:"x",$Bottom:"m",$Right:"t",$Rotate:"r",$RotateX:"rX",$RotateY:"rY",$ScaleX:"sX",$ScaleY:"sY",$TranslateX:"tX",$TranslateY:"tY",$TranslateZ:"tZ",$SkewX:"kX",$SkewY:"kY",$Opacity:"o",$Easing:"e",$ZIndex:"i",$Clip:"c"};a.$Each(u,function(b,a){h[b]=a});q(k(n,1));d.$GoToPosition(-1);var p=g.$Breaks||[],e=[].concat(p[a.$ParseInt(a.$AttributeEx(n,"b"))]||[]);e.push({b:d.$GetPosition_OuterEnd(),d:e.length?0:m});s(e);b.$GoToPosition(-1)}})(window,document,Math,null,true,false)
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.min.js.bak b/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.min.js.bak
new file mode 100755 (executable)
index 0000000..d9d07d7
--- /dev/null
@@ -0,0 +1,2 @@
+(function(g,e,b,j,c,i,k){/*! Jssor */
+new(function(){this.$DebugMode=c;this.$Log=function(c,d){var a=g.console||{},b=this.$DebugMode;if(b&&a.log)a.log(c);else b&&d&&alert(c)};this.$Error=function(b,d){var c=g.console||{},a=this.$DebugMode;if(a&&c.error)c.error(b);else a&&alert(b);if(a)throw d||new Error(b);};this.$Fail=function(a){throw new Error(a);};this.$Assert=function(b,c){var a=this.$DebugMode;if(a)if(!b)throw new Error("Assert failed "+c||"");};this.$Trace=function(c){var a=g.console||{},b=this.$DebugMode;b&&a.log&&a.log(c)};this.$Execute=function(b){var a=this.$DebugMode;a&&b()};this.$LiveStamp=function(c,d){var b=this.$DebugMode;if(b){var a=e.createElement("DIV");a.setAttribute("id",d);c.$Live=a}};this.$C_AbstractProperty=function(){throw new Error("The property is abstract, it should be implemented by subclass.");};this.$C_AbstractMethod=function(){throw new Error("The method is abstract, it should be implemented by subclass.");};function a(b){if(b.constructor===a.caller)throw new Error("Cannot create instance of an abstract class.");}this.$C_AbstractClass=a});var d=g.$JssorEasing$={$EaseSwing:function(a){return-b.cos(a*b.PI)/2+.5},$EaseLinear:function(a){return a},$EaseInQuad:function(a){return a*a},$EaseOutQuad:function(a){return-a*(a-2)},$EaseInOutQuad:function(a){return(a*=2)<1?1/2*a*a:-1/2*(--a*(a-2)-1)},$EaseInCubic:function(a){return a*a*a},$EaseOutCubic:function(a){return(a-=1)*a*a+1},$EaseInOutCubic:function(a){return(a*=2)<1?1/2*a*a*a:1/2*((a-=2)*a*a+2)},$EaseInQuart:function(a){return a*a*a*a},$EaseOutQuart:function(a){return-((a-=1)*a*a*a-1)},$EaseInOutQuart:function(a){return(a*=2)<1?1/2*a*a*a*a:-1/2*((a-=2)*a*a*a-2)},$EaseInQuint:function(a){return a*a*a*a*a},$EaseOutQuint:function(a){return(a-=1)*a*a*a*a+1},$EaseInOutQuint:function(a){return(a*=2)<1?1/2*a*a*a*a*a:1/2*((a-=2)*a*a*a*a+2)},$EaseInSine:function(a){return 1-b.cos(a*b.PI/2)},$EaseOutSine:function(a){return b.sin(a*b.PI/2)},$EaseInOutSine:function(a){return-1/2*(b.cos(b.PI*a)-1)},$EaseInExpo:function(a){return a==0?0:b.pow(2,10*(a-1))},$EaseOutExpo:function(a){return a==1?1:-b.pow(2,-10*a)+1},$EaseInOutExpo:function(a){return a==0||a==1?a:(a*=2)<1?1/2*b.pow(2,10*(a-1)):1/2*(-b.pow(2,-10*--a)+2)},$EaseInCirc:function(a){return-(b.sqrt(1-a*a)-1)},$EaseOutCirc:function(a){return b.sqrt(1-(a-=1)*a)},$EaseInOutCirc:function(a){return(a*=2)<1?-1/2*(b.sqrt(1-a*a)-1):1/2*(b.sqrt(1-(a-=2)*a)+1)},$EaseInElastic:function(a){if(!a||a==1)return a;var c=.3,d=.075;return-(b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c))},$EaseOutElastic:function(a){if(!a||a==1)return a;var c=.3,d=.075;return b.pow(2,-10*a)*b.sin((a-d)*2*b.PI/c)+1},$EaseInOutElastic:function(a){if(!a||a==1)return a;var c=.45,d=.1125;return(a*=2)<1?-.5*b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c):b.pow(2,-10*(a-=1))*b.sin((a-d)*2*b.PI/c)*.5+1},$EaseInBack:function(a){var b=1.70158;return a*a*((b+1)*a-b)},$EaseOutBack:function(a){var b=1.0;return(a-=1)*a*((b+1)*a+b)+1},$EaseInOutBack:function(a){var b=1.70158;return(a*=2)<1?1/2*a*a*(((b*=1.525)+1)*a-b):1/2*((a-=2)*a*(((b*=1.525)+1)*a+b)+2)},$EaseInBounce:function(a){return 1-d.$EaseOutBounce(1-a)},$EaseOutBounce:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375},$EaseInOutBounce:function(a){return a<1/2?d.$EaseInBounce(a*2)*.5:d.$EaseOutBounce(a*2-1)*.5+.5},$EaseGoBack:function(a){return 1-b.abs(2-1)},$EaseInWave:function(a){return 1-b.cos(a*b.PI*2)},$EaseOutWave:function(a){return b.sin(a*b.PI*2)},$EaseOutJump:function(a){return 1-((a*=2)<1?(a=1-a)*a*a:(a-=1)*a*a)},$EaseInJump:function(a){return(a*=2)<1?a*a*a:(a=2-a)*a*a}},f=g.$Jease$={$Swing:d.$EaseSwing,$Linear:d.$EaseLinear,$InQuad:d.$EaseInQuad,$OutQuad:d.$EaseOutQuad,$InOutQuad:d.$EaseInOutQuad,$InCubic:d.$EaseInCubic,$OutCubic:d.$EaseOutCubic,$InOutCubic:d.$EaseInOutCubic,$InQuart:d.$EaseInQuart,$OutQuart:d.$EaseOutQuart,$InOutQuart:d.$EaseInOutQuart,$InQuint:d.$EaseInQuint,$OutQuint:d.$EaseOutQuint,$InOutQuint:d.$EaseInOutQuint,$InSine:d.$EaseInSine,$OutSine:d.$EaseOutSine,$InOutSine:d.$EaseInOutSine,$InExpo:d.$EaseInExpo,$OutExpo:d.$EaseOutExpo,$InOutExpo:d.$EaseInOutExpo,$InCirc:d.$EaseInCirc,$OutCirc:d.$EaseOutCirc,$InOutCirc:d.$EaseInOutCirc,$InElastic:d.$EaseInElastic,$OutElastic:d.$EaseOutElastic,$InOutElastic:d.$EaseInOutElastic,$InBack:d.$EaseInBack,$OutBack:d.$EaseOutBack,$InOutBack:d.$EaseInOutBack,$InBounce:d.$EaseInBounce,$OutBounce:d.$EaseOutBounce,$InOutBounce:d.$EaseInOutBounce,$GoBack:d.$EaseGoBack,$InWave:d.$EaseInWave,$OutWave:d.$EaseOutWave,$OutJump:d.$EaseOutJump,$InJump:d.$EaseInJump};g.$JssorDirection$={$TO_LEFT:1,$TO_RIGHT:2,$TO_TOP:4,$TO_BOTTOM:8,$HORIZONTAL:3,$VERTICAL:12,$GetDirectionHorizontal:function(a){return a&3},$GetDirectionVertical:function(a){return a&12},$IsHorizontal:function(a){return a&3},$IsVertical:function(a){return a&12}};var a=g.$Jssor$=new function(){var f=this,zb=/\S+/g,S=1,fb=2,jb=3,ib=4,nb=5,I,s=0,l=0,q=0,J=0,C=0,y=navigator,sb=y.appName,n=y.userAgent,v=e.documentElement;function Ib(){if(!I){I={$Touchable:"ontouchstart"in g||"createTouch"in e};var a;if(y.pointerEnabled||(a=y.msPointerEnabled))I.$TouchActionAttr=a?"msTouchAction":"touchAction"}return I}function t(i){if(!s){s=-1;if(sb=="Microsoft Internet Explorer"&&!!g.attachEvent&&!!g.ActiveXObject){var f=n.indexOf("MSIE");s=S;q=o(n.substring(f+5,n.indexOf(";",f)));/*@cc_on J=@_jscript_version@*/;l=e.documentMode||q}else if(sb=="Netscape"&&!!g.addEventListener){var d=n.indexOf("Firefox"),b=n.indexOf("Safari"),h=n.indexOf("Chrome"),c=n.indexOf("AppleWebKit");if(d>=0){s=fb;l=o(n.substring(d+8))}else if(b>=0){var j=n.substring(0,b).lastIndexOf("/");s=h>=0?ib:jb;l=o(n.substring(j+1,b))}else{var a=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/i.exec(n);if(a){s=S;l=q=o(a[1])}}if(c>=0)C=o(n.substring(c+12))}else{var a=/(opera)(?:.*version|)[ \/]([\w.]+)/i.exec(n);if(a){s=nb;l=o(a[2])}}}return i==s}function p(){return t(S)}function N(){return p()&&(l<6||e.compatMode=="BackCompat")}function Ab(){return t(fb)}function hb(){return t(jb)}function Db(){return t(ib)}function mb(){return t(nb)}function ab(){return hb()&&C>534&&C<535}function L(){return p()&&l<9}function cb(a){var b;return function(d){if(!b){b=a;var c=a.substr(0,1).toUpperCase()+a.substr(1);m([a].concat(["WebKit","ms","Moz","O","webkit"]),function(g,f){var e=a;if(f)e=g+c;if(d.style[e]!=k)return b=e})}return b}}var bb=cb("transform");function rb(a){return{}.toString.call(a)}var H;function Fb(){if(!H){H={};m(["Boolean","Number","String","Function","Array","Date","RegExp","Object"],function(a){H["[object "+a+"]"]=a.toLowerCase()})}return H}function m(a,d){if(rb(a)=="[object Array]"){for(var b=0;b<a.length;b++)if(d(a[b],b,a))return c}else for(var e in a)if(d(a[e],e,a))return c}function A(a){return a==j?String(a):Fb()[rb(a)]||"object"}function pb(a){for(var b in a)return c}function x(a){try{return A(a)=="object"&&!a.nodeType&&a!=a.window&&(!a.constructor||{}.hasOwnProperty.call(a.constructor.prototype,"isPrototypeOf"))}catch(b){}}function w(a,b){return{x:a,y:b}}function vb(b,a){setTimeout(b,a||0)}function F(b,d,c){var a=!b||b=="inherit"?"":b;m(d,function(c){var b=c.exec(a);if(b){var d=a.substr(0,b.index),e=a.substr(b.lastIndex+1,a.length-(b.lastIndex+1));a=d+e}});a=c+(a.indexOf(" ")!=0?" ":"")+a;return a}function eb(b,a){if(l<9)b.style.filter=a}function Bb(g,a,i){if(!J||J<9){var d=a.$ScaleX,e=a.$ScaleY,j=(a.$Rotate||0)%360,h="";if(j||d!=k||e!=k){if(d==k)d=1;if(e==k)e=1;var c=f.$CreateMatrix(j/180*b.PI,d||1,e||1),i=f.$GetMatrixOffset(c,a.$OriginalWidth,a.$OriginalHeight);f.$CssMarginTop(g,i.y);f.$CssMarginLeft(g,i.x);h="progid:DXImageTransform.Microsoft.Matrix(M11="+c[0][0]+", M12="+c[0][1]+", M21="+c[1][0]+", M22="+c[1][1]+", SizingMethod='auto expand')"}var m=g.style.filter,n=new RegExp(/[\s]*progid:DXImageTransform\.Microsoft\.Matrix\([^\)]*\)/g),l=F(m,[n],h);eb(g,l)}}f.$Device=Ib;f.$IsBrowserIE=p;f.$IsBrowserIeQuirks=N;f.$IsBrowserFireFox=Ab;f.$IsBrowserSafari=hb;f.$IsBrowserChrome=Db;f.$IsBrowserOpera=mb;f.$IsBrowserBadTransform=ab;f.$IsBrowserIe9Earlier=L;f.$BrowserVersion=function(){return l};f.$BrowserEngineVersion=function(){return q||l};f.$WebKitVersion=function(){t();return C};f.$Delay=vb;f.$Inherit=function(a,b){b.call(a);return z({},a)};function V(a){a.constructor===V.caller&&a.$Construct&&a.$Construct.apply(a,V.caller.arguments)}f.$Construct=V;f.$GetElement=function(a){if(f.$IsString(a))a=e.getElementById(a);return a};function r(a){return a||g.event}f.$GetEvent=r;f.$EvtSrc=function(a){a=r(a);return a.target||a.srcElement||e};f.$EvtTarget=function(a){a=r(a);return a.relatedTarget||a.toElement};f.$EvtWhich=function(a){a=r(a);return a.which||([0,1,3,0,2])[a.button]||a.charCode||a.keyCode};f.$MousePosition=function(a){a=r(a);return{x:a.pageX||a.clientX||0,y:a.pageY||a.clientY||0}};f.$PageScroll=function(){var a=e.body;return{x:(g.pageXOffset||v.scrollLeft||a.scrollLeft||0)-(v.clientLeft||a.clientLeft||0),y:(g.pageYOffset||v.scrollTop||a.scrollTop||0)-(v.clientTop||a.clientTop||0)}};f.$WindowSize=function(){var a=e.body;return{x:a.clientWidth||v.clientWidth,y:a.clientHeight||v.clientHeight}};function B(c,d,a){if(a!==k)c.style[d]=a==k?"":a;else{var b=c.currentStyle||c.style;a=b[d];if(a==""&&g.getComputedStyle){b=c.ownerDocument.defaultView.getComputedStyle(c,j);b&&(a=b.getPropertyValue(d)||b[d])}return a}}function X(b,c,a,d){if(a!=k){if(a==j)a="";else d&&(a+="px");B(b,c,a)}else return o(B(b,c))}function Jb(b,d,a){return X(b,d,a,c)}function h(c,a){var d=a?X:B,b;if(a&4)b=cb(c);return function(e,f){return d(e,b?b(e):c,f,a&2)}}function Cb(b){if(p()&&q<9){var a=/opacity=([^)]*)/.exec(b.style.filter||"");return a?o(a[1])/100:1}else return o(b.style.opacity||"1")}function Eb(c,a,f){if(p()&&q<9){var h=c.style.filter||"",i=new RegExp(/[\s]*alpha\([^\)]*\)/g),e=b.round(100*a),d="";if(e<100||f)d="alpha(opacity="+e+") ";var g=F(h,[i],d);eb(c,g)}else c.style.opacity=a==1?"":b.round(a*100)/100}var xb={$Rotate:["rotate"],$RotateX:["rotateX"],$RotateY:["rotateY"],$ScaleX:["scaleX",2],$ScaleY:["scaleY",2],$TranslateX:["translateX",1],$TranslateY:["translateY",1],$TranslateZ:["translateZ",1],$SkewX:["skewX"],$SkewY:["skewY"]};function Z(e,c){if(p()&&l&&l<10){delete c.$RotateX;delete c.$RotateY}var d=bb(e);if(d){var b="";a.$Each(c,function(e,c){var a=xb[c];if(a){var d=a[1]||0;b+=(b?" ":"")+a[0]+"("+e+(["deg","px",""])[d]+")"}});e.style[d]=b}}f.$SetStyleTransform=function(b,a){if(ab())vb(f.$CreateCallback(j,Z,b,a));else(L()?Bb:Z)(b,a)};f.$CssTransformOrigin=h("transformOrigin",4);f.$CssBackfaceVisibility=h("backfaceVisibility",4);f.$CssTransformStyle=h("transformStyle",4);f.$CssPerspective=h("perspective",6);f.$CssPerspectiveOrigin=h("perspectiveOrigin",4);f.$CssScale=function(a,c){if(p()&&q<9||q<10&&N())a.style.zoom=c==1?"":c;else{var b=bb(a);if(b){var f="scale("+c+")",e=a.style[b],g=new RegExp(/[\s]*scale\(.*?\)/g),d=F(e,[g],f);a.style[b]=d}}};var lb=0,gb=0;f.$WindowResizeFilter=function(b,a){return L()?function(){var g=c,d=N()?b.document.body:b.document.documentElement;if(d){var f=d.offsetWidth-lb,e=d.offsetHeight-gb;if(f||e){lb+=f;gb+=e}else g=i}g&&a()}:a};f.$MouseOverOutFilter=function(b,a){return function(c){c=r(c);var e=c.type,d=c.relatedTarget||(e=="mouseout"?c.toElement:c.fromElement);(!d||d!==a&&!f.$IsChild(a,d))&&b(c)}};f.$AddEvent=function(a,c,d,b){a=f.$GetElement(a);if(a.addEventListener){c=="mousewheel"&&a.addEventListener("DOMMouseScroll",d,b);a.addEventListener(c,d,b)}else if(a.attachEvent){a.attachEvent("on"+c,d);b&&a.setCapture&&a.setCapture()}};f.$RemoveEvent=function(a,c,d,b){a=f.$GetElement(a);if(a.removeEventListener){c=="mousewheel"&&a.removeEventListener("DOMMouseScroll",d,b);a.removeEventListener(c,d,b)}else if(a.detachEvent){a.detachEvent("on"+c,d);b&&a.releaseCapture&&a.releaseCapture()}};f.$FireEvent=function(c,b){var a;if(e.createEvent){a=e.createEvent("HTMLEvents");a.initEvent(b,i,i);c.dispatchEvent(a)}else{var d="on"+b;a=e.createEventObject();c.fireEvent(d,a)}};f.$CancelEvent=function(a){a=r(a);a.preventDefault&&a.preventDefault();a.cancel=c;a.returnValue=i};f.$StopEvent=function(a){a=r(a);a.stopPropagation&&a.stopPropagation();a.cancelBubble=c};f.$CreateCallback=function(d,c){var a=[].slice.call(arguments,2),b=function(){var b=a.concat([].slice.call(arguments,0));return c.apply(d,b)};return b};f.$InnerText=function(a,b){if(b==k)return a.textContent||a.innerText;var c=e.createTextNode(b);f.$Empty(a);a.appendChild(c)};f.$InnerHtml=function(a,b){if(b==k)return a.innerHTML;a.innerHTML=b};f.$GetClientRect=function(b){var a=b.getBoundingClientRect();return{x:a.left,y:a.top,w:a.right-a.left,h:a.bottom-a.top}};f.$ClearInnerHtml=function(a){a.innerHTML=""};f.$EncodeHtml=function(b){var a=f.$CreateDiv();f.$InnerText(a,b);return f.$InnerHtml(a)};f.$DecodeHtml=function(b){var a=f.$CreateDiv();f.$InnerHtml(a,b);return f.$InnerText(a)};f.$SelectElement=function(c){var b;if(g.getSelection)b=g.getSelection();var a=j;if(e.createRange){a=e.createRange();a.selectNode(c)}else{a=e.body.createTextRange();a.moveToElementText(c);a.select()}b&&b.addRange(a)};f.$DeselectElements=function(){if(e.selection)e.selection.empty();else g.getSelection&&g.getSelection().removeAllRanges()};f.$Children=function(d,c){for(var b=[],a=d.firstChild;a;a=a.nextSibling)(c||a.nodeType==1)&&b.push(a);return b};function qb(a,c,e,b){b=b||"u";for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(R(a,b)==c)return a;if(!e){var d=qb(a,c,e,b);if(d)return d}}}f.$FindChild=qb;function P(a,d,f,b){b=b||"u";var c=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){R(a,b)==d&&c.push(a);if(!f){var e=P(a,d,f,b);if(e.length)c=c.concat(e)}}return c}function kb(a,c,d){for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(a.tagName==c)return a;if(!d){var b=kb(a,c,d);if(b)return b}}}f.$FindChildByTag=kb;function db(a,c,e){var b=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){(!c||a.tagName==c)&&b.push(a);if(!e){var d=db(a,c,e);if(d.length)b=b.concat(d)}}return b}f.$FindChildrenByTag=db;f.$GetElementsByTag=function(b,a){return b.getElementsByTagName(a)};function z(){var e=arguments,d,c,b,a,g=1&e[0],f=1+g;d=e[f-1]||{};for(;f<e.length;f++)if(c=e[f])for(b in c){a=c[b];if(a!==k){a=c[b];var h=d[b];d[b]=g&&(x(h)||x(a))?z(g,{},h,a):a}}return d}f.$Extend=z;function W(f,g){var d={},c,a,b;for(c in f){a=f[c];b=g[c];if(a!==b){var e;if(x(a)&&x(b)){a=W(a,b);e=!pb(a)}!e&&(d[c]=a)}}return d}f.$Unextend=W;f.$IsFunction=function(a){return A(a)=="function"};f.$IsArray=function(a){return A(a)=="array"};f.$IsString=function(a){return A(a)=="string"};f.$IsNumeric=function(a){return!isNaN(o(a))&&isFinite(a)};f.$Type=A;f.$Each=m;f.$IsNotEmpty=pb;f.$IsPlainObject=x;function O(a){return e.createElement(a)}f.$CreateElement=O;f.$CreateDiv=function(){return O("DIV")};f.$CreateSpan=function(){return O("SPAN")};f.$EmptyFunction=function(){};function T(b,c,a){if(a==k)return b.getAttribute(c);b.setAttribute(c,a)}function R(a,b){return T(a,b)||T(a,"data-"+b)}f.$Attribute=T;f.$AttributeEx=R;function u(b,a){if(a==k)return b.className;b.className=a}f.$ClassName=u;function ub(b){var a={};m(b,function(b){a[b]=b});return a}function Hb(b){var a=[];m(b,function(b){a.push(b)});return a}function wb(b,a){return b.match(a||zb)}function M(b,a){return ub(wb(b||"",a))}f.$ToHash=ub;f.$FromHash=Hb;f.$Split=wb;function Y(b,c){var a="";m(c,function(c){a&&(a+=b);a+=c});return a}function E(a,c,b){u(a,Y(" ",z(W(M(u(a)),M(c)),M(b))))}f.$Join=Y;f.$AddClass=function(b,a){E(b,j,a)};f.$RemoveClass=E;f.$ReplaceClass=E;f.$ParentNode=function(a){return a.parentNode};f.$HideElement=function(a){f.$CssDisplay(a,"none")};f.$EnableElement=function(a,b){if(b)f.$Attribute(a,"disabled",c);else f.$RemoveAttribute(a,"disabled")};f.$HideElements=function(b){for(var a=0;a<b.length;a++)f.$HideElement(b[a])};f.$ShowElement=function(a,b){f.$CssDisplay(a,b?"none":"")};f.$ShowElements=function(b,c){for(var a=0;a<b.length;a++)f.$ShowElement(b[a],c)};f.$RemoveAttribute=function(b,a){b.removeAttribute(a)};f.$CanClearClip=function(){return p()&&l<10};f.$SetStyleClip=function(d,c){if(c)d.style.clip="rect("+b.round(c.$Top)+"px "+b.round(c.$Right)+"px "+b.round(c.$Bottom)+"px "+b.round(c.$Left)+"px)";else{var g=d.style.cssText,f=[new RegExp(/[\s]*clip: rect\(.*?\)[;]?/i),new RegExp(/[\s]*cliptop: .*?[;]?/i),new RegExp(/[\s]*clipright: .*?[;]?/i),new RegExp(/[\s]*clipbottom: .*?[;]?/i),new RegExp(/[\s]*clipleft: .*?[;]?/i)],e=F(g,f,"");a.$CssCssText(d,e)}};f.$GetNow=function(){return+new Date};f.$AppendChild=function(b,a){b.appendChild(a)};f.$AppendChildren=function(b,a){m(a,function(a){f.$AppendChild(b,a)})};f.$InsertBefore=function(b,a,c){(c||a.parentNode).insertBefore(b,a)};f.$InsertAfter=function(b,a,c){f.$InsertBefore(b,a.nextSibling,c||a.parentNode)};f.$InsertAdjacentHtml=function(b,a,c){b.insertAdjacentHTML(a,c)};f.$RemoveElement=function(a,b){(b||a.parentNode).removeChild(a)};f.$RemoveElements=function(a,b){m(a,function(a){f.$RemoveElement(a,b)})};f.$Empty=function(a){f.$RemoveElements(f.$Children(a,c),a)};f.$CenterElement=function(a,b){var c=f.$ParentNode(a);b&1&&f.$CssLeft(a,(f.$CssWidth(c)-f.$CssWidth(a))/2);b&2&&f.$CssTop(a,(f.$CssHeight(c)-f.$CssHeight(a))/2)};f.$ParseInt=function(b,a){return parseInt(b,a||10)};var o=parseFloat;f.$ParseFloat=o;f.$IsChild=function(b,a){var c=e.body;while(a&&b!==a&&c!==a)try{a=a.parentNode}catch(d){return i}return b===a};function U(d,c,b){var a=d.cloneNode(!c);!b&&f.$RemoveAttribute(a,"id");return a}f.$CloneNode=U;f.$LoadImage=function(e,g){var a=new Image;function b(e,c){f.$RemoveEvent(a,"load",b);f.$RemoveEvent(a,"abort",d);f.$RemoveEvent(a,"error",d);g&&g(a,c)}function d(a){b(a,c)}if(mb()&&l<11.6||!e)b(!e);else{f.$AddEvent(a,"load",b);f.$AddEvent(a,"abort",d);f.$AddEvent(a,"error",d);a.src=e}};f.$LoadImages=function(d,a,e){var c=d.length+1;function b(b){c--;if(a&&b&&b.src==a.src)a=b;!c&&e&&e(a)}m(d,function(a){f.$LoadImage(a.src,b)});b()};f.$BuildElement=function(b,g,i,h){if(h)b=U(b);var c=P(b,g);if(!c.length)c=a.$GetElementsByTag(b,g);for(var f=c.length-1;f>-1;f--){var d=c[f],e=U(i);u(e,u(d));a.$CssCssText(e,d.style.cssText);a.$InsertBefore(e,d);a.$RemoveElement(d)}return b};function Gb(b){var l=this,p="",r=["av","pv","ds","dn"],g=[],q,j=0,h=0,d=0;function i(){E(b,q,g[d||j||h&2||h]);a.$Css(b,"pointer-events",d?"none":"")}function c(){j=0;i();f.$RemoveEvent(e,"mouseup",c);f.$RemoveEvent(e,"touchend",c);f.$RemoveEvent(e,"touchcancel",c)}function o(a){if(d)f.$CancelEvent(a);else{j=4;i();f.$AddEvent(e,"mouseup",c);f.$AddEvent(e,"touchend",c);f.$AddEvent(e,"touchcancel",c)}}l.$Selected=function(a){if(a===k)return h;h=a&2||a&1;i()};l.$Enable=function(a){if(a===k)return!d;d=a?0:3;i()};l.$Elmt=b=f.$GetElement(b);var n=a.$Split(u(b));if(n)p=n.shift();m(r,function(a){g.push(p+a)});q=Y(" ",g);g.unshift("");f.$AddEvent(b,"mousedown",o);f.$AddEvent(b,"touchstart",o)}f.$Buttonize=function(a){return new Gb(a)};f.$Css=B;f.$CssN=X;f.$CssP=Jb;f.$CssOverflow=h("overflow");f.$CssTop=h("top",2);f.$CssLeft=h("left",2);f.$CssWidth=h("width",2);f.$CssHeight=h("height",2);f.$CssMarginLeft=h("marginLeft",2);f.$CssMarginTop=h("marginTop",2);f.$CssPosition=h("position");f.$CssDisplay=h("display");f.$CssZIndex=h("zIndex",1);f.$CssFloat=function(b,a){return B(b,p()?"styleFloat":"cssFloat",a)};f.$CssOpacity=function(b,a,c){if(a!=k)Eb(b,a,c);else return Cb(b)};f.$CssCssText=function(a,b){if(b!=k)a.style.cssText=b;else return a.style.cssText};var Q={$Opacity:f.$CssOpacity,$Top:f.$CssTop,$Left:f.$CssLeft,$Width:f.$CssWidth,$Height:f.$CssHeight,$Position:f.$CssPosition,$Display:f.$CssDisplay,$ZIndex:f.$CssZIndex},K;function G(){if(!K)K=z({$MarginTop:f.$CssMarginTop,$MarginLeft:f.$CssMarginLeft,$Clip:f.$SetStyleClip,$Transform:f.$SetStyleTransform},Q);return K}function ob(){var a={};a.$Transform=a.$Transform;a.$Transform=a.$Rotate;a.$Transform=a.$RotateX;a.$Transform=a.$RotateY;a.$Transform=a.$SkewX;a.$Transform=a.$SkewY;a.$Transform=a.$TranslateX;a.$Transform=a.$TranslateY;a.$Transform=a.$TranslateZ;return G()}f.$StyleSetter=G;f.$StyleSetterEx=ob;f.$GetStyles=function(c,b){G();var a={};m(b,function(d,b){if(Q[b])a[b]=Q[b](c)});return a};f.$SetStyles=function(c,b){var a=G();m(b,function(d,b){a[b]&&a[b](c,d)})};f.$SetStylesEx=function(b,a){ob();f.$SetStyles(b,a)};var D=new function(){var a=this;function b(d,g){for(var j=d[0].length,i=d.length,h=g[0].length,f=[],c=0;c<i;c++)for(var k=f[c]=[],b=0;b<h;b++){for(var e=0,a=0;a<j;a++)e+=d[c][a]*g[a][b];k[b]=e}return f}a.$ScaleX=function(b,c){return a.$ScaleXY(b,c,0)};a.$ScaleY=function(b,c){return a.$ScaleXY(b,0,c)};a.$ScaleXY=function(a,c,d){return b(a,[[c,0],[0,d]])};a.$TransformPoint=function(d,c){var a=b(d,[[c.x],[c.y]]);return w(a[0][0],a[1][0])}};f.$CreateMatrix=function(d,a,c){var e=b.cos(d),f=b.sin(d);return[[e*a,-f*c],[f*a,e*c]]};f.$GetMatrixOffset=function(d,c,a){var e=D.$TransformPoint(d,w(-c/2,-a/2)),f=D.$TransformPoint(d,w(c/2,-a/2)),g=D.$TransformPoint(d,w(c/2,a/2)),h=D.$TransformPoint(d,w(-c/2,a/2));return w(b.min(e.x,f.x,g.x,h.x)+c/2,b.min(e.y,f.y,g.y,h.y)+a/2)};var yb={$Zoom:1,$ScaleX:1,$ScaleY:1,$Rotate:0,$RotateX:0,$RotateY:0,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0};f.$FormatEasings=function(b){var c=b||{};if(b)if(a.$IsFunction(b))c={$Default:c};else if(a.$IsFunction(b.$Clip))c.$Clip={$Default:b.$Clip};return c};function tb(c,a){var b={};m(c,function(c,d){var e=c;if(a[d]!=k)if(f.$IsNumeric(c))e=c+a[d];else e=tb(c,a[d]);b[d]=e});return b}f.$AddDif=tb;f.$Cast=function(h,i,w,n,y,z,o){var c=i;if(h){c={};for(var g in i){var A=z[g]||1,v=y[g]||[0,1],e=(w-v[0])/v[1];e=b.min(b.max(e,0),1);e=e*A;var u=b.floor(e);if(e!=u)e-=u;var l=n.$Default||d.$EaseSwing,m,B=h[g],q=i[g];if(a.$IsNumeric(q)){l=n[g]||l;var x=l(e);m=B+q*x}else{m=a.$Extend({$Offset:{}},h[g]);a.$Each(q.$Offset||q,function(d,a){if(n.$Clip)l=n.$Clip[a]||n.$Clip.$Default||l;var c=l(e),b=d*c;m.$Offset[a]=b;m[a]+=b})}c[g]=m}var t,f={$OriginalWidth:o.$OriginalWidth,$OriginalHeight:o.$OriginalHeight};a.$Each(yb,function(d,a){t=t||i[a];var b=c[a];if(b!=k){if(b!=d)f[a]=b;delete c[a]}else if(h[a]!=k&&h[a]!=d)f[a]=h[a]});if(i.$Zoom&&f.$Zoom){f.$ScaleX=f.$Zoom;f.$ScaleY=f.$Zoom}c.$Transform=f}if(i.$Clip&&o.$Move){var p=c.$Clip.$Offset,s=(p.$Top||0)+(p.$Bottom||0),r=(p.$Left||0)+(p.$Right||0);c.$Left=(c.$Left||0)+r;c.$Top=(c.$Top||0)+s;c.$Clip.$Left-=r;c.$Clip.$Right-=r;c.$Clip.$Top-=s;c.$Clip.$Bottom-=s}if(c.$Clip&&a.$CanClearClip()&&!c.$Clip.$Top&&!c.$Clip.$Left&&c.$Clip.$Right==o.$OriginalWidth&&c.$Clip.$Bottom==o.$OriginalHeight)c.$Clip=j;return c}};function m(){var b=this,d=[],c=[];function i(a,b){d.push({$EventName:a,$Handler:b})}function h(b,c){a.$Each(d,function(a,e){a.$EventName==b&&a.$Handler===c&&d.splice(e,1)})}function f(){d=[]}function e(){a.$Each(c,function(b){a.$RemoveEvent(b.$Obj,b.$EventName,b.$Handler)});c=[]}b.$Listen=function(e,b,d,f){a.$AddEvent(e,b,d,f);c.push({$Obj:e,$EventName:b,$Handler:d})};b.$Unlisten=function(e,b,d){a.$Each(c,function(f,g){if(f.$Obj===e&&f.$EventName==b&&f.$Handler===d){a.$RemoveEvent(e,b,d);c.splice(g,1)}})};b.$UnlistenAll=e;b.$On=b.addEventListener=i;b.$Off=b.removeEventListener=h;b.$TriggerEvent=function(b){var c=[].slice.call(arguments,1);a.$Each(d,function(a){a.$EventName==b&&a.$Handler.apply(g,c)})};b.$Destroy=function(){e();f();for(var a in b)delete b[a]}}var l=g.$JssorAnimator$=function(y,C,k,P,N,J){y=y||0;var d=this,q,M,n,o,v,z=0,H,I,G,B,x=0,h=0,m=0,D,l,s,f,e,p,w=[],A;function O(a){f+=a;e+=a;l+=a;s+=a;h+=a;m+=a;x+=a}function u(n){var g=n;if(p&&(g>=e||g<=f))g=((g-f)%p+p)%p+f;if(!D||v||h!=g){var i=b.min(g,e);i=b.max(i,f);if(!D||v||i!=m){if(J){var j=(i-l)/(C||1);if(k.$Reverse)j=1-j;var o=a.$Cast(N,J,j,H,G,I,k);a.$Each(o,function(b,a){A[a]&&A[a](P,b)})}d.$OnInnerOffsetChange(m-l,i-l);m=i;a.$Each(w,function(b,c){var a=n<h?w[w.length-c-1]:b;a.$GoToPosition(m-x)});var r=h,q=m;h=g;D=c;d.$OnPositionChange(r,q)}}}function E(a,c,d){c&&a.$Shift(e);if(!d){f=b.min(f,a.$GetPosition_OuterBegin()+x);e=b.max(e,a.$GetPosition_OuterEnd()+x)}w.push(a)}var r=g.requestAnimationFrame||g.webkitRequestAnimationFrame||g.mozRequestAnimationFrame||g.msRequestAnimationFrame;if(a.$IsBrowserSafari()&&a.$BrowserVersion()<7)r=j;r=r||function(b){a.$Delay(b,k.$Interval)};function K(){if(q){var d=a.$GetNow(),e=b.min(d-z,k.$IntervalMax),c=h+e*o;z=d;if(c*o>=n*o)c=n;u(c);if(!v&&c*o>=n*o)L(B);else r(K)}}function t(g,i,j){if(!q){q=c;v=j;B=i;g=b.max(g,f);g=b.min(g,e);n=g;o=n<h?-1:1;d.$OnStart();z=a.$GetNow();r(K)}}function L(a){if(q){v=q=B=i;d.$OnStop();a&&a()}}d.$Play=function(a,b,c){t(a?h+a:e,b,c)};d.$PlayToPosition=t;d.$PlayToBegin=function(a,b){t(f,a,b)};d.$PlayToEnd=function(a,b){t(e,a,b)};d.$Stop=L;d.$Continue=function(a){t(a)};d.$GetPosition=function(){return h};d.$GetPlayToPosition=function(){return n};d.$GetPosition_Display=function(){return m};d.$GoToPosition=u;d.$GoToBegin=function(){u(f,c)};d.$GoToEnd=function(){u(e,c)};d.$Move=function(a){u(h+a)};d.$CombineMode=function(){return M};d.$GetDuration=function(){return C};d.$IsPlaying=function(){return q};d.$IsOnTheWay=function(){return h>l&&h<=s};d.$SetLoopLength=function(a){p=a};d.$Shift=O;d.$Join=E;d.$Combine=function(a,b){E(a,0,b)};d.$Chain=function(a){E(a,1)};d.$Expand=function(a){e+=a};d.$GetPosition_InnerBegin=function(){return l};d.$GetPosition_InnerEnd=function(){return s};d.$GetPosition_OuterBegin=function(){return f};d.$GetPosition_OuterEnd=function(){return e};d.$OnPositionChange=d.$OnStart=d.$OnStop=d.$OnInnerOffsetChange=a.$EmptyFunction;d.$Version=a.$GetNow();k=a.$Extend({$Interval:16,$IntervalMax:50},k);p=k.$LoopLength;A=a.$Extend({},a.$StyleSetter(),k.$Setter);f=l=y;e=s=y+C;I=k.$Round||{};G=k.$During||{};H=a.$FormatEasings(k.$Easing)};var o=g.$JssorSlideshowFormations$=new function(){var h=this,d=0,a=1,f=2,e=3,s=1,r=2,t=4,q=8,w=256,x=512,v=1024,u=2048,j=u+s,i=u+r,o=x+s,m=x+r,n=w+t,k=w+q,l=v+t,p=v+q;function y(a){return(a&r)==r}function z(a){return(a&t)==t}function g(b,a,c){c.push(a);b[a]=b[a]||[];b[a].push(c)}h.$FormationStraight=function(f){for(var d=f.$Cols,e=f.$Rows,s=f.$Assembly,t=f.$Count,r=[],a=0,b=0,p=d-1,q=e-1,h=t-1,c,b=0;b<e;b++)for(a=0;a<d;a++){switch(s){case j:c=h-(a*e+(q-b));break;case l:c=h-(b*d+(p-a));break;case o:c=h-(a*e+b);case n:c=h-(b*d+a);break;case i:c=a*e+b;break;case k:c=b*d+(p-a);break;case m:c=a*e+(q-b);break;default:c=b*d+a}g(r,c,[b,a])}return r};h.$FormationSwirl=function(q){var x=q.$Cols,y=q.$Rows,B=q.$Assembly,w=q.$Count,A=[],z=[],u=0,b=0,h=0,r=x-1,s=y-1,t,p,v=0;switch(B){case j:b=r;h=0;p=[f,a,e,d];break;case l:b=0;h=s;p=[d,e,a,f];break;case o:b=r;h=s;p=[e,a,f,d];break;case n:b=r;h=s;p=[a,e,d,f];break;case i:b=0;h=0;p=[f,d,e,a];break;case k:b=r;h=0;p=[a,f,d,e];break;case m:b=0;h=s;p=[e,d,f,a];break;default:b=0;h=0;p=[d,f,a,e]}u=0;while(u<w){t=h+","+b;if(b>=0&&b<x&&h>=0&&h<y&&!z[t]){z[t]=c;g(A,u++,[h,b])}else switch(p[v++%p.length]){case d:b--;break;case f:h--;break;case a:b++;break;case e:h++}switch(p[v%p.length]){case d:b++;break;case f:h++;break;case a:b--;break;case e:h--}}return A};h.$FormationZigZag=function(p){var w=p.$Cols,x=p.$Rows,z=p.$Assembly,v=p.$Count,t=[],u=0,b=0,c=0,q=w-1,r=x-1,y,h,s=0;switch(z){case j:b=q;c=0;h=[f,a,e,a];break;case l:b=0;c=r;h=[d,e,a,e];break;case o:b=q;c=r;h=[e,a,f,a];break;case n:b=q;c=r;h=[a,e,d,e];break;case i:b=0;c=0;h=[f,d,e,d];break;case k:b=q;c=0;h=[a,f,d,f];break;case m:b=0;c=r;h=[e,d,f,d];break;default:b=0;c=0;h=[d,f,a,f]}u=0;while(u<v){y=c+","+b;if(b>=0&&b<w&&c>=0&&c<x&&typeof t[y]=="undefined"){g(t,u++,[c,b]);switch(h[s%h.length]){case d:b++;break;case f:c++;break;case a:b--;break;case e:c--}}else{switch(h[s++%h.length]){case d:b--;break;case f:c--;break;case a:b++;break;case e:c++}switch(h[s++%h.length]){case d:b++;break;case f:c++;break;case a:b--;break;case e:c--}}}return t};h.$FormationStraightStairs=function(q){var u=q.$Cols,v=q.$Rows,e=q.$Assembly,t=q.$Count,r=[],s=0,c=0,d=0,f=u-1,h=v-1,x=t-1;switch(e){case j:case m:case o:case i:var a=0,b=0;break;case k:case l:case n:case p:var a=f,b=0;break;default:e=p;var a=f,b=0}c=a;d=b;while(s<t){if(z(e)||y(e))g(r,x-s++,[d,c]);else g(r,s++,[d,c]);switch(e){case j:case m:c--;d++;break;case o:case i:c++;d--;break;case k:case l:c--;d--;break;case p:case n:default:c++;d++}if(c<0||d<0||c>f||d>h){switch(e){case j:case m:a++;break;case k:case l:case o:case i:b++;break;case p:case n:default:a--}if(a<0||b<0||a>f||b>h){switch(e){case j:case m:a=f;b++;break;case o:case i:b=h;a++;break;case k:case l:b=h;a--;break;case p:case n:default:a=0;b++}if(b>h)b=h;else if(b<0)b=0;else if(a>f)a=f;else if(a<0)a=0}d=b;c=a}}return r};h.$FormationSquare=function(i){var a=i.$Cols||1,c=i.$Rows||1,j=[],d,e,f,h,k;f=a<c?(c-a)/2:0;h=a>c?(a-c)/2:0;k=b.round(b.max(a/2,c/2))+1;for(d=0;d<a;d++)for(e=0;e<c;e++)g(j,k-b.min(d+1+f,e+1+h,a-d+f,c-e+h),[e,d]);return j};h.$FormationRectangle=function(f){var d=f.$Cols||1,e=f.$Rows||1,h=[],a,c,i;i=b.round(b.min(d/2,e/2))+1;for(a=0;a<d;a++)for(c=0;c<e;c++)g(h,i-b.min(a+1,c+1,d-a,e-c),[c,a]);return h};h.$FormationRandom=function(d){for(var e=[],a,c=0;c<d.$Rows;c++)for(a=0;a<d.$Cols;a++)g(e,b.ceil(1e5*b.random())%13,[c,a]);return e};h.$FormationCircle=function(d){for(var e=d.$Cols||1,f=d.$Rows||1,h=[],a,i=e/2-.5,j=f/2-.5,c=0;c<e;c++)for(a=0;a<f;a++)g(h,b.round(b.sqrt(b.pow(c-i,2)+b.pow(a-j,2))),[a,c]);return h};h.$FormationCross=function(d){for(var e=d.$Cols||1,f=d.$Rows||1,h=[],a,i=e/2-.5,j=f/2-.5,c=0;c<e;c++)for(a=0;a<f;a++)g(h,b.round(b.min(b.abs(c-i),b.abs(a-j))),[a,c]);return h};h.$FormationRectangleCross=function(f){for(var h=f.$Cols||1,i=f.$Rows||1,j=[],a,d=h/2-.5,e=i/2-.5,k=b.max(d,e)+1,c=0;c<h;c++)for(a=0;a<i;a++)g(j,b.round(k-b.max(d-b.abs(c-d),e-b.abs(a-e)))-1,[a,c]);return j}};g.$JssorSlideshowRunner$=function(n,s,q,t,y){var f=this,u,g,e,x=0,w=t.$TransitionsOrder,r,h=8;function k(g,f){var e={$Interval:f,$Duration:1,$Delay:0,$Cols:1,$Rows:1,$Opacity:0,$Zoom:0,$Clip:0,$Move:i,$SlideOut:i,$Reverse:i,$Formation:o.$FormationRandom,$Assembly:1032,$ChessMode:{$Column:0,$Row:0},$Easing:d.$EaseSwing,$Round:{},$Blocks:[],$During:{}};a.$Extend(e,g);e.$Count=e.$Cols*e.$Rows;e.$Easing=a.$FormatEasings(e.$Easing);e.$FramesCount=b.ceil(e.$Duration/e.$Interval);e.$GetBlocks=function(b,a){b/=e.$Cols;a/=e.$Rows;var f=b+"x"+a;if(!e.$Blocks[f]){e.$Blocks[f]={$Width:b,$Height:a};for(var c=0;c<e.$Cols;c++)for(var d=0;d<e.$Rows;d++)e.$Blocks[f][d+","+c]={$Top:d*a,$Right:c*b+b,$Bottom:d*a+a,$Left:c*b}}return e.$Blocks[f]};if(e.$Brother){e.$Brother=k(e.$Brother,f);e.$SlideOut=c}return e}function p(A,h,d,v,n,l){var y=this,t,u={},j={},m=[],f,e,r,p=d.$ChessMode.$Column||0,q=d.$ChessMode.$Row||0,g=d.$GetBlocks(n,l),o=B(d),C=o.length-1,s=d.$Duration+d.$Delay*C,w=v+s,k=d.$SlideOut,x;w+=50;function B(a){var b=a.$Formation(a);return a.$Reverse?b.reverse():b}y.$EndTime=w;y.$ShowFrame=function(c){c-=v;var e=c<s;if(e||x){x=e;if(!k)c=s-c;var f=b.ceil(c/d.$Interval);a.$Each(j,function(c,e){var d=b.max(f,c.$Min);d=b.min(d,c.length-1);if(c.$LastFrameIndex!=d){if(!c.$LastFrameIndex&&!k)a.$ShowElement(m[e]);else d==c.$Max&&k&&a.$HideElement(m[e]);c.$LastFrameIndex=d;a.$SetStylesEx(m[e],c[d])}})}};h=a.$CloneNode(h);if(a.$IsBrowserIe9Earlier()){var D=!h["no-image"],z=a.$FindChildrenByTag(h);a.$Each(z,function(b){(D||b["jssor-slider"])&&a.$CssOpacity(b,a.$CssOpacity(b),c)})}a.$Each(o,function(h,m){a.$Each(h,function(G){var K=G[0],J=G[1],v=K+","+J,o=i,s=i,x=i;if(p&&J%2){if(p&3)o=!o;if(p&12)s=!s;if(p&16)x=!x}if(q&&K%2){if(q&3)o=!o;if(q&12)s=!s;if(q&16)x=!x}d.$Top=d.$Top||d.$Clip&4;d.$Bottom=d.$Bottom||d.$Clip&8;d.$Left=d.$Left||d.$Clip&1;d.$Right=d.$Right||d.$Clip&2;var C=s?d.$Bottom:d.$Top,z=s?d.$Top:d.$Bottom,B=o?d.$Right:d.$Left,A=o?d.$Left:d.$Right;d.$Clip=C||z||B||A;r={};e={$Top:0,$Left:0,$Opacity:1,$Width:n,$Height:l};f=a.$Extend({},e);t=a.$Extend({},g[v]);if(d.$Opacity)e.$Opacity=2-d.$Opacity;if(d.$ZIndex){e.$ZIndex=d.$ZIndex;f.$ZIndex=0}var I=d.$Cols*d.$Rows>1||d.$Clip;if(d.$Zoom||d.$Rotate){var H=c;if(a.$IsBrowserIe9Earlier())if(d.$Cols*d.$Rows>1)H=i;else I=i;if(H){e.$Zoom=d.$Zoom?d.$Zoom-1:1;f.$Zoom=1;if(a.$IsBrowserIe9Earlier()||a.$IsBrowserOpera())e.$Zoom=b.min(e.$Zoom,2);var N=d.$Rotate||0;e.$Rotate=N*360*(x?-1:1);f.$Rotate=0}}if(I){var h=t.$Offset={};if(d.$Clip){var w=d.$ScaleClip||1;if(C&&z){h.$Top=g.$Height/2*w;h.$Bottom=-h.$Top}else if(C)h.$Bottom=-g.$Height*w;else if(z)h.$Top=g.$Height*w;if(B&&A){h.$Left=g.$Width/2*w;h.$Right=-h.$Left}else if(B)h.$Right=-g.$Width*w;else if(A)h.$Left=g.$Width*w}r.$Clip=t;f.$Clip=g[v]}var L=o?1:-1,M=s?1:-1;if(d.x)e.$Left+=n*d.x*L;if(d.y)e.$Top+=l*d.y*M;a.$Each(e,function(b,c){if(a.$IsNumeric(b))if(b!=f[c])r[c]=b-f[c]});u[v]=k?f:e;var D=d.$FramesCount,y=b.round(m*d.$Delay/d.$Interval);j[v]=new Array(y);j[v].$Min=y;j[v].$Max=y+D-1;for(var F=0;F<=D;F++){var E=a.$Cast(f,r,F/D,d.$Easing,d.$During,d.$Round,{$Move:d.$Move,$OriginalWidth:n,$OriginalHeight:l});E.$ZIndex=E.$ZIndex||1;j[v].push(E)}})});o.reverse();a.$Each(o,function(b){a.$Each(b,function(c){var f=c[0],e=c[1],d=f+","+e,b=h;if(e||f)b=a.$CloneNode(h);a.$SetStyles(b,u[d]);a.$CssOverflow(b,"hidden");a.$CssPosition(b,"absolute");A.$AddClipElement(b);m[d]=b;a.$ShowElement(b,!k)})})}function v(){var a=this,b=0;l.call(a,0,u);a.$OnPositionChange=function(c,a){if(a-b>h){b=a;e&&e.$ShowFrame(a);g&&g.$ShowFrame(a)}};a.$Transition=r}f.$GetTransition=function(){var a=0,c=t.$Transitions,d=c.length;if(w)a=x++%d;else a=b.floor(b.random()*d);c[a]&&(c[a].$Index=a);return c[a]};f.$Initialize=function(w,x,j,l,a){r=a;a=k(a,h);var i=l.$Item,d=j.$Item;i["no-image"]=!l.$Image;d["no-image"]=!j.$Image;var m=i,o=d,v=a,c=a.$Brother||k({},h);if(!a.$SlideOut){m=d;o=i}var t=c.$Shift||0;g=new p(n,o,c,b.max(t-c.$Interval,0),s,q);e=new p(n,m,v,b.max(c.$Interval-t,0),s,q);g.$ShowFrame(0);e.$ShowFrame(0);u=b.max(g.$EndTime,e.$EndTime);f.$Index=w};f.$Clear=function(){n.$Clear();g=j;e=j};f.$GetProcessor=function(){var a=j;if(e)a=new v;return a};if(a.$IsBrowserIe9Earlier()||a.$IsBrowserOpera()||y&&a.$WebKitVersion()<537)h=16;m.call(f);l.call(f,-1e7,1e7)};var h=g.$JssorSlider$=function(q,fc){var o=this;function Ec(){var a=this;l.call(a,-1e8,2e8);a.$GetCurrentSlideInfo=function(){var c=a.$GetPosition_Display(),d=b.floor(c),f=t(d),e=c-b.floor(c);return{$Index:f,$VirtualIndex:d,$Position:e}};a.$OnPositionChange=function(d,a){var e=b.floor(a);if(e!=a&&a>d)e++;Ub(e,c);o.$TriggerEvent(h.$EVT_POSITION_CHANGE,t(a),t(d),a,d)}}function Dc(){var b=this;l.call(b,0,0,{$LoopLength:r});a.$Each(C,function(a){D&1&&a.$SetLoopLength(r);b.$Chain(a);a.$Shift(fb/bc)})}function Cc(){var a=this,b=Tb.$Elmt;l.call(a,-1,2,{$Easing:d.$EaseLinear,$Setter:{$Position:Zb},$LoopLength:r},b,{$Position:1},{$Position:-2});a.$Wrapper=b}function qc(n,m){var a=this,d,e,g,k,b;l.call(a,-1e8,2e8,{$IntervalMax:100});a.$OnStart=function(){O=c;R=j;o.$TriggerEvent(h.$EVT_SWIPE_START,t(w.$GetPosition()),w.$GetPosition())};a.$OnStop=function(){O=i;k=i;var a=w.$GetCurrentSlideInfo();o.$TriggerEvent(h.$EVT_SWIPE_END,t(w.$GetPosition()),w.$GetPosition());!a.$Position&&Gc(a.$VirtualIndex,s)};a.$OnPositionChange=function(i,h){var a;if(k)a=b;else{a=e;if(g){var c=h/g;a=f.$SlideEasing(c)*(e-d)+d}}w.$GoToPosition(a)};a.$PlayCarousel=function(b,f,c,h){d=b;e=f;g=c;w.$GoToPosition(b);a.$GoToPosition(0);a.$PlayToPosition(c,h)};a.$StandBy=function(d){k=c;b=d;a.$Play(d,j,c)};a.$SetStandByPosition=function(a){b=a};a.$MoveCarouselTo=function(a){w.$GoToPosition(a)};w=new Ec;w.$Combine(n);w.$Combine(m)}function rc(){var c=this,b=Xb();a.$CssZIndex(b,0);a.$Css(b,"pointerEvents","none");c.$Elmt=b;c.$AddClipElement=function(c){a.$AppendChild(b,c);a.$ShowElement(b)};c.$Clear=function(){a.$HideElement(b);a.$Empty(b)}}function Bc(k,e){var d=this,q,H,x,n,y=[],w,B,W,G,Q,F,g,v,p,eb;l.call(d,-u,u+1,{$SlideItemAnimator:c});function E(b){q&&q.$Revert();T(k,b,0);F=c;q=new I.$Class(k,I,a.$ParseFloat(a.$AttributeEx(k,"idle"))||pc);q.$GoToPosition(0)}function Y(){q.$Version<I.$Version&&E()}function N(p,r,m){if(!G){G=c;if(n&&m){var g=m.width,b=m.height,l=g,k=b;if(g&&b&&f.$FillMode){if(f.$FillMode&3&&(!(f.$FillMode&4)||g>K||b>J)){var j=i,q=K/J*b/g;if(f.$FillMode&1)j=q>1;else if(f.$FillMode&2)j=q<1;l=j?g*J/b:K;k=j?J:b*K/g}a.$CssWidth(n,l);a.$CssHeight(n,k);a.$CssTop(n,(J-k)/2);a.$CssLeft(n,(K-l)/2)}a.$CssPosition(n,"absolute");o.$TriggerEvent(h.$EVT_LOAD_END,e)}}a.$HideElement(r);p&&p(d)}function X(b,c,f,g){if(g==R&&s==e&&P)if(!Fc){var a=t(b);A.$Initialize(a,e,c,d,f);c.$HideContentForSlideshow();U.$Shift(a-U.$GetPosition_OuterBegin()-1);U.$GoToPosition(a);z.$PlayCarousel(b,b,0)}}function ab(b){if(b==R&&s==e){if(!g){var a=j;if(A)if(A.$Index==e)a=A.$GetProcessor();else A.$Clear();Y();g=new yc(k,e,a,q);g.$SetPlayer(p)}!g.$IsPlaying()&&g.$Replay()}}function S(h,c,i){if(h==e){if(h!=c)C[c]&&C[c].$ParkOut();else!i&&g&&g.$AdjustIdleOnPark();p&&p.$Enable();var k=R=a.$GetNow();d.$LoadImage(a.$CreateCallback(j,ab,k))}else{var m=b.abs(e-h),l=u+f.$LazyLoading-1;(!Q||m<=l)&&d.$LoadImage()}}function bb(){if(s==e&&g){g.$Stop();p&&p.$Quit();p&&p.$Disable();g.$OpenSlideshowPanel()}}function db(){s==e&&g&&g.$Stop()}function Z(a){!M&&o.$TriggerEvent(h.$EVT_CLICK,e,a)}function O(){p=v.pInstance;g&&g.$SetPlayer(p)}d.$LoadImage=function(d,b){b=b||x;if(y.length&&!G){a.$ShowElement(b);if(!W){W=c;o.$TriggerEvent(h.$EVT_LOAD_START,e);a.$Each(y,function(b){if(!a.$Attribute(b,"src")){b.src=a.$AttributeEx(b,"src2");a.$CssDisplay(b,b["display-origin"])}})}a.$LoadImages(y,n,a.$CreateCallback(j,N,d,b))}else N(d,b)};d.$GoForNextSlide=function(){var h=e;if(f.$AutoPlaySteps<0)h-=r;var c=h+f.$AutoPlaySteps*wc;if(D&2)c=t(c);if(!(D&1))c=b.max(0,b.min(c,r-u));if(c!=e){if(A){var d=A.$GetTransition(r);if(d){var i=R=a.$GetNow(),g=C[t(c)];return g.$LoadImage(a.$CreateCallback(j,X,c,g,d,i),x)}}nb(c)}};d.$TryActivate=function(){S(e,e,c)};d.$ParkOut=function(){p&&p.$Quit();p&&p.$Disable();d.$UnhideContentForSlideshow();g&&g.$Abort();g=j;E()};d.$StampSlideItemElements=function(a){a=eb+"_"+a};d.$HideContentForSlideshow=function(){a.$HideElement(k)};d.$UnhideContentForSlideshow=function(){a.$ShowElement(k)};d.$EnablePlayer=function(){p&&p.$Enable()};function T(b,d,e){if(a.$Attribute(b,"jssor-slider"))return;if(!F){if(b.tagName=="IMG"){y.push(b);if(!a.$Attribute(b,"src")){Q=c;b["display-origin"]=a.$CssDisplay(b);a.$HideElement(b)}}a.$IsBrowserIe9Earlier()&&a.$CssZIndex(b,(a.$CssZIndex(b)||0)+1)}var f=a.$Children(b);a.$Each(f,function(f){var h=f.tagName,j=a.$AttributeEx(f,"u");if(j=="player"&&!v){v=f;if(v.pInstance)O();else a.$AddEvent(v,"dataavailable",O)}if(j=="caption"){if(d){a.$CssTransformOrigin(f,a.$AttributeEx(f,"to"));a.$CssBackfaceVisibility(f,a.$AttributeEx(f,"bf"));a.$CssTransformStyle(f,"preserve-3d")}else if(!a.$IsBrowserIE()){var g=a.$CloneNode(f,i,c);a.$InsertBefore(g,f,b);a.$RemoveElement(f,b);f=g;d=c}}else if(!F&&!e&&!n){if(h=="A"){if(a.$AttributeEx(f,"u")=="image")n=a.$FindChildByTag(f,"IMG");else n=a.$FindChild(f,"image",c);if(n){w=f;a.$CssDisplay(w,"block");a.$SetStyles(w,V);B=a.$CloneNode(w,c);a.$CssPosition(w,"relative");a.$CssOpacity(B,0);a.$Css(B,"backgroundColor","#000")}}else if(h=="IMG"&&a.$AttributeEx(f,"u")=="image")n=f;if(n){n.border=0;a.$SetStyles(n,V)}}T(f,d,e+1)})}d.$OnInnerOffsetChange=function(c,b){var a=u-b;Zb(H,a)};d.$Index=e;m.call(d);a.$CssPerspective(k,a.$AttributeEx(k,"p"));a.$CssPerspectiveOrigin(k,a.$AttributeEx(k,"po"));var L=a.$FindChild(k,"thumb",c);if(L){d.$Thumb=a.$CloneNode(L);a.$HideElement(L)}a.$ShowElement(k);x=a.$CloneNode(cb);a.$CssZIndex(x,1e3);a.$AddEvent(k,"click",Z);E(c);d.$Image=n;d.$Link=B;d.$Item=k;d.$Wrapper=H=k;a.$AppendChild(H,x);o.$On(203,S);o.$On(28,db);o.$On(24,bb)}function yc(y,f,p,q){var b=this,m=0,u=0,g,j,e,d,k,t,r,n=C[f];l.call(b,0,0);function v(){a.$Empty(N);dc&&k&&n.$Link&&a.$AppendChild(N,n.$Link);a.$ShowElement(N,!k&&n.$Image)}function w(){b.$Replay()}function x(a){r=a;b.$Stop();b.$Replay()}b.$Replay=function(){var a=b.$GetPosition_Display();if(!B&&!O&&!r&&s==f){if(!a){if(g&&!k){k=c;b.$OpenSlideshowPanel(c);o.$TriggerEvent(h.$EVT_SLIDESHOW_START,f,m,u,g,d)}v()}var i,p=h.$EVT_STATE_CHANGE;if(a!=d)if(a==e)i=d;else if(a==j)i=e;else if(!a)i=j;else i=b.$GetPlayToPosition();o.$TriggerEvent(p,f,a,m,j,e,d);var l=P&&(!E||F);if(a==d)(e!=d&&!(E&12)||l)&&n.$GoForNextSlide();else(l||a!=e)&&b.$PlayToPosition(i,w)}};b.$AdjustIdleOnPark=function(){e==d&&e==b.$GetPosition_Display()&&b.$GoToPosition(j)};b.$Abort=function(){A&&A.$Index==f&&A.$Clear();var a=b.$GetPosition_Display();a<d&&o.$TriggerEvent(h.$EVT_STATE_CHANGE,f,-a-1,m,j,e,d)};b.$OpenSlideshowPanel=function(b){p&&a.$CssOverflow(hb,b&&p.$Transition.$Outside?"":"hidden")};b.$OnInnerOffsetChange=function(b,a){if(k&&a>=g){k=i;v();n.$UnhideContentForSlideshow();A.$Clear();o.$TriggerEvent(h.$EVT_SLIDESHOW_END,f,m,u,g,d)}o.$TriggerEvent(h.$EVT_PROGRESS_CHANGE,f,a,m,j,e,d)};b.$SetPlayer=function(a){if(a&&!t){t=a;a.$On($JssorPlayer$.$EVT_SWITCH,x)}};p&&b.$Chain(p);g=b.$GetPosition_OuterEnd();b.$Chain(q);j=g+q.$IdleBegin;e=g+q.$IdleEnd;d=b.$GetPosition_OuterEnd()}function Zb(g,f){var e=x>0?x:gb,c=Bb*f*(e&1),d=Cb*f*(e>>1&1);c=b.round(c);d=b.round(d);a.$CssLeft(g,c);a.$CssTop(g,d)}function Pb(){pb=O;Kb=z.$GetPlayToPosition();G=w.$GetPosition()}function gc(){Pb();if(B||!F&&E&12){z.$Stop();o.$TriggerEvent(h.$EVT_FREEZE)}}function ec(e){if(!B&&(F||!(E&12))&&!z.$IsPlaying()){var c=w.$GetPosition(),a=b.ceil(G);if(e&&b.abs(H)>=f.$MinDragOffsetToSlide){a=b.ceil(c);a+=eb}if(!(D&1))a=b.min(r-u,b.max(a,0));var d=b.abs(a-c);d=1-b.pow(1-d,5);if(!M&&pb)z.$Continue(Kb);else if(c==a){tb.$EnablePlayer();tb.$TryActivate()}else z.$PlayCarousel(c,a,d*Vb)}}function Ib(b){!a.$AttributeEx(a.$EvtSrc(b),"nodrag")&&a.$CancelEvent(b)}function uc(a){Yb(a,1)}function Yb(b,d){b=a.$GetEvent(b);var k=a.$EvtSrc(b);if(!L&&!a.$AttributeEx(k,"nodrag")&&vc()&&(!d||b.touches.length==1)){B=c;Ab=i;R=j;a.$AddEvent(e,d?"touchmove":"mousemove",Db);a.$GetNow();M=0;gc();if(!pb)x=0;if(d){var g=b.touches[0];vb=g.clientX;wb=g.clientY}else{var f=a.$MousePosition(b);vb=f.x;wb=f.y}H=0;bb=0;eb=0;o.$TriggerEvent(h.$EVT_DRAG_START,t(G),G,b)}}function Db(e){if(B){e=a.$GetEvent(e);var f;if(e.type!="mousemove"){var l=e.touches[0];f={x:l.clientX,y:l.clientY}}else f=a.$MousePosition(e);if(f){var j=f.x-vb,k=f.y-wb;if(b.floor(G)!=G)x=x||gb&L;if((j||k)&&!x){if(L==3)if(b.abs(k)>b.abs(j))x=2;else x=1;else x=L;if(jb&&x==1&&b.abs(k)-b.abs(j)>3)Ab=c}if(x){var d=k,i=Cb;if(x==1){d=j;i=Bb}if(!(D&1)){if(d>0){var g=i*s,h=d-g;if(h>0)d=g+b.sqrt(h)*5}if(d<0){var g=i*(r-u-s),h=-d-g;if(h>0)d=-g-b.sqrt(h)*5}}if(H-bb<-2)eb=0;else if(H-bb>2)eb=-1;bb=H;H=d;sb=G-H/i/(Z||1);if(H&&x&&!Ab){a.$CancelEvent(e);if(!O)z.$StandBy(sb);else z.$SetStandByPosition(sb)}}}}}function mb(){sc();if(B){B=i;a.$GetNow();a.$RemoveEvent(e,"mousemove",Db);a.$RemoveEvent(e,"touchmove",Db);M=H;z.$Stop();var b=w.$GetPosition();o.$TriggerEvent(h.$EVT_DRAG_END,t(b),b,t(G),G);E&12&&Pb();ec(c)}}function kc(c){if(M){a.$StopEvent(c);var b=a.$EvtSrc(c);while(b&&v!==b){b.tagName=="A"&&a.$CancelEvent(c);try{b=b.parentNode}catch(d){break}}}}function oc(a){C[s];s=t(a);tb=C[s];Ub(a);return s}function Gc(a,b){x=0;oc(a);o.$TriggerEvent(h.$EVT_PARK,t(a),b)}function Ub(b,c){yb=b;a.$Each(S,function(a){a.$SetCurrentIndex(t(b),b,c)})}function vc(){var b=h.$DragRegistry||0,a=Y;if(jb)a&1&&(a&=1);h.$DragRegistry|=a;return L=a&~b}function sc(){if(L){h.$DragRegistry&=~Y;L=0}}function Xb(){var b=a.$CreateDiv();a.$SetStyles(b,V);a.$CssPosition(b,"absolute");return b}function t(a){return(a%r+r)%r}function lc(a,c){if(c)if(!D){a=b.min(b.max(a+yb,0),r-u);c=i}else if(D&2){a=t(a+yb);c=i}nb(a,f.$SlideDuration,c)}function zb(){a.$Each(S,function(a){a.$Show(a.$Options.$ChanceToShow<=F)})}function ic(){if(!F){F=1;zb();if(!B){E&12&&ec();E&3&&C[s].$TryActivate()}}}function hc(){if(F){F=0;zb();B||!(E&12)||gc()}}function jc(){V={$Width:K,$Height:J,$Top:0,$Left:0};a.$Each(T,function(b){a.$SetStyles(b,V);a.$CssPosition(b,"absolute");a.$CssOverflow(b,"hidden");a.$HideElement(b)});a.$SetStyles(cb,V)}function lb(b,a){nb(b,a,c)}function nb(g,e,l){if(Rb&&(!B&&(F||!(E&12))||f.$NaviQuitDrag)){O=c;B=i;z.$Stop();if(e==k)e=Vb;var d=Eb.$GetPosition_Display(),a=g;if(l){a=d+g;if(g>0)a=b.ceil(a);else a=b.floor(a)}if(D&2)a=t(a);if(!(D&1))a=b.max(0,b.min(a,r-u));var j=(a-d)%r;a=d+j;var h=d==a?0:e*b.abs(j);h=b.min(h,e*u*1.5);z.$PlayCarousel(d,a,h||1)}}o.$PlayTo=nb;o.$GoTo=function(a){w.$GoToPosition(a)};o.$Next=function(){lb(1)};o.$Prev=function(){lb(-1)};o.$Pause=function(){P=i};o.$Play=function(){if(!P){P=c;C[s]&&C[s].$TryActivate()}};o.$SetSlideshowTransitions=function(a){f.$SlideshowOptions.$Transitions=a};o.$SetCaptionTransitions=function(b){I.$Transitions=b;I.$Version=a.$GetNow()};o.$SlidesCount=function(){return T.length};o.$CurrentIndex=function(){return s};o.$IsAutoPlaying=function(){return P};o.$IsDragging=function(){return B};o.$IsSliding=function(){return O};o.$IsMouseOver=function(){return!F};o.$LastDragSucceded=function(){return M};function X(){return a.$CssWidth(y||q)}function ib(){return a.$CssHeight(y||q)}o.$OriginalWidth=o.$GetOriginalWidth=X;o.$OriginalHeight=o.$GetOriginalHeight=ib;function Gb(c,d){if(c==k)return a.$CssWidth(q);if(!y){var b=a.$CreateDiv(e);a.$ClassName(b,a.$ClassName(q));a.$CssCssText(b,a.$CssCssText(q));a.$CssDisplay(b,"block");a.$CssPosition(b,"relative");a.$CssTop(b,0);a.$CssLeft(b,0);a.$CssOverflow(b,"visible");y=a.$CreateDiv(e);a.$CssPosition(y,"absolute");a.$CssTop(y,0);a.$CssLeft(y,0);a.$CssWidth(y,a.$CssWidth(q));a.$CssHeight(y,a.$CssHeight(q));a.$CssTransformOrigin(y,"0 0");a.$AppendChild(y,b);var h=a.$Children(q);a.$AppendChild(q,y);a.$Css(q,"backgroundImage","");a.$Each(h,function(c){a.$AppendChild(a.$AttributeEx(c,"noscale")?q:b,c);a.$AttributeEx(c,"autocenter")&&Lb.push(c)})}Z=c/(d?a.$CssHeight:a.$CssWidth)(y);a.$CssScale(y,Z);var g=d?Z*X():c,f=d?c:Z*ib();a.$CssWidth(q,g);a.$CssHeight(q,f);a.$Each(Lb,function(b){var c=a.$ParseInt(a.$AttributeEx(b,"autocenter"));a.$CenterElement(b,c)})}o.$ScaleHeight=o.$GetScaleHeight=function(b){if(b==k)return a.$CssHeight(q);Gb(b,c)};o.$ScaleWidth=o.$SetScaleWidth=o.$GetScaleWidth=Gb;o.$GetVirtualIndex=function(a){var d=b.ceil(t(fb/bc)),c=t(a-s+d);if(c>u){if(a-s>r/2)a-=r;else if(a-s<=-r/2)a+=r}else a=s+c-d;return a};m.call(o);o.$Elmt=q=a.$GetElement(q);var f=a.$Extend({$FillMode:0,$LazyLoading:1,$ArrowKeyNavigation:1,$StartIndex:0,$AutoPlay:i,$Loop:1,$NaviQuitDrag:c,$AutoPlaySteps:1,$AutoPlayInterval:3e3,$PauseOnHover:1,$SlideDuration:500,$SlideEasing:d.$EaseOutQuad,$MinDragOffsetToSlide:20,$SlideSpacing:0,$Cols:1,$Align:0,$UISearchMode:1,$PlayOrientation:1,$DragOrientation:1},fc);if(f.$Idle!=k)f.$AutoPlayInterval=f.$Idle;if(f.$DisplayPieces!=k)f.$Cols=f.$DisplayPieces;if(f.$ParkingPosition!=k)f.$Align=f.$ParkingPosition;var gb=f.$PlayOrientation&3,wc=(f.$PlayOrientation&4)/-4||1,db=f.$SlideshowOptions,I=a.$Extend({$Class:p,$PlayInMode:1,$PlayOutMode:1},f.$CaptionSliderOptions);I.$Transitions=I.$Transitions||I.$CaptionTransitions;var qb=f.$BulletNavigatorOptions,W=f.$ArrowNavigatorOptions,ab=f.$ThumbnailNavigatorOptions,Q=!f.$UISearchMode,y,v=a.$FindChild(q,"slides",Q),cb=a.$FindChild(q,"loading",Q)||a.$CreateDiv(e),Jb=a.$FindChild(q,"navigator",Q),cc=a.$FindChild(q,"arrowleft",Q),ac=a.$FindChild(q,"arrowright",Q),Hb=a.$FindChild(q,"thumbnavigator",Q),nc=a.$CssWidth(v),mc=a.$CssHeight(v),V,T=[],xc=a.$Children(v);a.$Each(xc,function(b){if(b.tagName=="DIV"&&!a.$AttributeEx(b,"u"))T.push(b);else a.$IsBrowserIe9Earlier()&&a.$CssZIndex(b,(a.$CssZIndex(b)||0)+1)});var s=-1,yb,tb,r=T.length,K=f.$SlideWidth||nc,J=f.$SlideHeight||mc,Wb=f.$SlideSpacing,Bb=K+Wb,Cb=J+Wb,bc=gb&1?Bb:Cb,u=b.min(f.$Cols,r),hb,x,L,Ab,S=[],Qb,Sb,Ob,dc,Fc,P,E=f.$PauseOnHover,pc=f.$AutoPlayInterval,Vb=f.$SlideDuration,rb,ub,fb,Rb=u<r,D=Rb?f.$Loop:0,Y,M,F=1,O,B,R,vb=0,wb=0,H,bb,eb,Eb,w,U,z,Tb=new rc,Z,Lb=[];P=f.$AutoPlay;o.$Options=fc;jc();a.$Attribute(q,"jssor-slider",c);a.$CssZIndex(v,a.$CssZIndex(v)||0);a.$CssPosition(v,"absolute");hb=a.$CloneNode(v,c);a.$InsertBefore(hb,v);if(db){dc=db.$ShowLink;rb=db.$Class;ub=u==1&&r>1&&rb&&(!a.$IsBrowserIE()||a.$BrowserVersion()>=8)}fb=ub||u>=r||!(D&1)?0:f.$Align;Y=(u>1||fb?gb:-1)&f.$DragOrientation;var xb=v,C=[],A,N,Fb=a.$Device(),jb=Fb.$Touchable,G,pb,Kb,sb;Fb.$TouchActionAttr&&a.$Css(xb,Fb.$TouchActionAttr,([j,"pan-y","pan-x","none"])[Y]||"");U=new Cc;if(ub)A=new rb(Tb,K,J,db,jb);a.$AppendChild(hb,U.$Wrapper);a.$CssOverflow(v,"hidden");N=Xb();a.$Css(N,"backgroundColor","#000");a.$CssOpacity(N,0);a.$InsertBefore(N,xb.firstChild,xb);for(var ob=0;ob<T.length;ob++){var zc=T[ob],Ac=new Bc(zc,ob);C.push(Ac)}a.$HideElement(cb);Eb=new Dc;z=new qc(Eb,U);if(Y){a.$AddEvent(v,"mousedown",Yb);a.$AddEvent(v,"touchstart",uc);a.$AddEvent(v,"dragstart",Ib);a.$AddEvent(v,"selectstart",Ib);a.$AddEvent(e,"mouseup",mb);a.$AddEvent(e,"touchend",mb);a.$AddEvent(e,"touchcancel",mb);a.$AddEvent(g,"blur",mb)}E&=jb?10:5;if(Jb&&qb){Qb=new qb.$Class(Jb,qb,X(),ib());S.push(Qb)}if(W&&cc&&ac){W.$Loop=D;W.$Cols=u;Sb=new W.$Class(cc,ac,W,X(),ib());S.push(Sb)}if(Hb&&ab){ab.$StartIndex=f.$StartIndex;Ob=new ab.$Class(Hb,ab);S.push(Ob)}a.$Each(S,function(a){a.$Reset(r,C,cb);a.$On(n.$NAVIGATIONREQUEST,lc)});a.$Css(q,"visibility","visible");Gb(X());a.$AddEvent(v,"click",kc);a.$AddEvent(q,"mouseout",a.$MouseOverOutFilter(ic,q));a.$AddEvent(q,"mouseover",a.$MouseOverOutFilter(hc,q));zb();f.$ArrowKeyNavigation&&a.$AddEvent(e,"keydown",function(a){if(a.keyCode==37)lb(-f.$ArrowKeyNavigation);else a.keyCode==39&&lb(f.$ArrowKeyNavigation)});var kb=f.$StartIndex;if(!(D&1))kb=b.max(0,b.min(kb,r-u));z.$PlayCarousel(kb,kb,0)};h.$EVT_CLICK=21;h.$EVT_DRAG_START=22;h.$EVT_DRAG_END=23;h.$EVT_SWIPE_START=24;h.$EVT_SWIPE_END=25;h.$EVT_LOAD_START=26;h.$EVT_LOAD_END=27;h.$EVT_FREEZE=28;h.$EVT_POSITION_CHANGE=202;h.$EVT_PARK=203;h.$EVT_SLIDESHOW_START=206;h.$EVT_SLIDESHOW_END=207;h.$EVT_PROGRESS_CHANGE=208;h.$EVT_STATE_CHANGE=209;var n={$NAVIGATIONREQUEST:1,$INDEXCHANGE:2,$RESET:3};g.$JssorBulletNavigator$=function(e,C){var f=this;m.call(f);e=a.$GetElement(e);var s,A,z,r,l=0,d,o,k,w,x,h,g,q,p,B=[],y=[];function v(a){a!=-1&&y[a].$Selected(a==l)}function t(a){f.$TriggerEvent(n.$NAVIGATIONREQUEST,a*o)}f.$Elmt=e;f.$GetCurrentIndex=function(){return r};f.$SetCurrentIndex=function(a){if(a!=r){var d=l,c=b.floor(a/o);l=c;r=a;v(d);v(c)}};f.$Show=function(b){a.$ShowElement(e,b)};var u;f.$Reset=function(E){if(!u){s=b.ceil(E/o);l=0;var n=q+w,r=p+x,m=b.ceil(s/k)-1;A=q+n*(!h?m:k-1);z=p+r*(h?m:k-1);a.$CssWidth(e,A);a.$CssHeight(e,z);for(var f=0;f<s;f++){var C=a.$CreateSpan();a.$InnerText(C,f+1);var i=a.$BuildElement(g,"numbertemplate",C,c);a.$CssPosition(i,"absolute");var v=f%(m+1);a.$CssLeft(i,!h?n*v:f%k*n);a.$CssTop(i,h?r*v:b.floor(f/(m+1))*r);a.$AppendChild(e,i);B[f]=i;d.$ActionMode&1&&a.$AddEvent(i,"click",a.$CreateCallback(j,t,f));d.$ActionMode&2&&a.$AddEvent(i,"mouseover",a.$MouseOverOutFilter(a.$CreateCallback(j,t,f),i));y[f]=a.$Buttonize(i)}u=c}};f.$Options=d=a.$Extend({$SpacingX:10,$SpacingY:10,$Orientation:1,$ActionMode:1},C);g=a.$FindChild(e,"prototype");q=a.$CssWidth(g);p=a.$CssHeight(g);a.$RemoveElement(g,e);o=d.$Steps||1;k=d.$Lanes||1;w=d.$SpacingX;x=d.$SpacingY;h=d.$Orientation-1;d.$Scale==i&&a.$Attribute(e,"noscale",c);d.$AutoCenter&&a.$Attribute(e,"autocenter",d.$AutoCenter)};g.$JssorArrowNavigator$=function(b,g,h){var d=this;m.call(d);var r,q,e,f,k;a.$CssWidth(b);a.$CssHeight(b);function l(a){d.$TriggerEvent(n.$NAVIGATIONREQUEST,a,c)}function p(c){a.$ShowElement(b,c||!h.$Loop&&e==0);a.$ShowElement(g,c||!h.$Loop&&e>=q-h.$Cols);r=c}d.$GetCurrentIndex=function(){return e};d.$SetCurrentIndex=function(b,a,c){if(c)e=a;else{e=b;p(r)}};d.$Show=p;var o;d.$Reset=function(d){q=d;e=0;if(!o){a.$AddEvent(b,"click",a.$CreateCallback(j,l,-k));a.$AddEvent(g,"click",a.$CreateCallback(j,l,k));a.$Buttonize(b);a.$Buttonize(g);o=c}};d.$Options=f=a.$Extend({$Steps:1},h);k=f.$Steps;if(f.$Scale==i){a.$Attribute(b,"noscale",c);a.$Attribute(g,"noscale",c)}if(f.$AutoCenter){a.$Attribute(b,"autocenter",f.$AutoCenter);a.$Attribute(g,"autocenter",f.$AutoCenter)}};g.$JssorThumbnailNavigator$=function(g,C){var l=this,z,q,d,w=[],A,y,e,r,s,v,u,p,t,f,o;m.call(l);g=a.$GetElement(g);function B(m,f){var g=this,b,k,i;function p(){k.$Selected(q==f)}function h(d){if(d||!t.$LastDragSucceded()){var a=e-f%e,b=t.$GetVirtualIndex((f+a)/e-1),c=b*e+e-a;l.$TriggerEvent(n.$NAVIGATIONREQUEST,c)}}g.$Index=f;g.$Highlight=p;i=m.$Thumb||m.$Image||a.$CreateDiv();g.$Wrapper=b=a.$BuildElement(o,"thumbnailtemplate",i,c);k=a.$Buttonize(b);d.$ActionMode&1&&a.$AddEvent(b,"click",a.$CreateCallback(j,h,0));d.$ActionMode&2&&a.$AddEvent(b,"mouseover",a.$MouseOverOutFilter(a.$CreateCallback(j,h,1),b))}l.$GetCurrentIndex=function(){return q};l.$SetCurrentIndex=function(c,d,f){var a=q;q=c;a!=-1&&w[a].$Highlight();w[c].$Highlight();!f&&t.$PlayTo(t.$GetVirtualIndex(b.floor(d/e)))};l.$Show=function(b){a.$ShowElement(g,b)};var x;l.$Reset=function(F,C){if(!x){z=F;b.ceil(z/e);q=-1;p=b.min(p,C.length);var j=d.$Orientation&1,m=v+(v+r)*(e-1)*(1-j),l=u+(u+s)*(e-1)*j,o=m+(m+r)*(p-1)*j,n=l+(l+s)*(p-1)*(1-j);a.$CssPosition(f,"absolute");a.$CssOverflow(f,"hidden");d.$AutoCenter&1&&a.$CssLeft(f,(A-o)/2);d.$AutoCenter&2&&a.$CssTop(f,(y-n)/2);a.$CssWidth(f,o);a.$CssHeight(f,n);var k=[];a.$Each(C,function(l,g){var h=new B(l,g),d=h.$Wrapper,c=b.floor(g/e),i=g%e;a.$CssLeft(d,(v+r)*i*(1-j));a.$CssTop(d,(u+s)*i*j);if(!k[c]){k[c]=a.$CreateDiv();a.$AppendChild(f,k[c])}a.$AppendChild(k[c],d);w.push(h)});var E=a.$Extend({$AutoPlay:i,$NaviQuitDrag:i,$SlideWidth:m,$SlideHeight:l,$SlideSpacing:r*j+s*(1-j),$MinDragOffsetToSlide:12,$SlideDuration:200,$PauseOnHover:1,$PlayOrientation:d.$Orientation,$DragOrientation:d.$NoDrag||d.$DisableDrag?0:d.$Orientation},d);t=new h(g,E);x=c}};l.$Options=d=a.$Extend({$SpacingX:0,$SpacingY:0,$Cols:1,$Orientation:1,$AutoCenter:3,$ActionMode:1},C);if(d.$DisplayPieces!=k)d.$Cols=d.$DisplayPieces;if(d.$Rows!=k)d.$Lanes=d.$Rows;A=a.$CssWidth(g);y=a.$CssHeight(g);f=a.$FindChild(g,"slides",c);o=a.$FindChild(f,"prototype");v=a.$CssWidth(o);u=a.$CssHeight(o);a.$RemoveElement(o,f);e=d.$Lanes||1;r=d.$SpacingX;s=d.$SpacingY;p=d.$Cols;d.$Scale==i&&a.$Attribute(g,"noscale",c)};function p(e,d,c){var b=this;l.call(b,0,c);b.$Revert=a.$EmptyFunction;b.$IdleBegin=0;b.$IdleEnd=c}g.$JssorCaptionSlider$=function(h,f,i){var c=this;l.call(c,0,0);var e,d;function g(p,h,f){var c=this,g,n=f?h.$PlayInMode:h.$PlayOutMode,e=h.$Transitions,o={$Transition:"t",$Delay:"d",$Duration:"du",x:"x",y:"y",$Rotate:"r",$Zoom:"z",$Opacity:"f",$BeginTime:"b"},d={$Default:function(b,a){if(!isNaN(a.$Value))b=a.$Value;else b*=a.$Percent;return b},$Opacity:function(b,a){return this.$Default(b-1,a)}};d.$Zoom=d.$Opacity;l.call(c,0,0);function j(r,m){var l=[],i,k=[],c=[];function h(c,d){var b={};a.$Each(o,function(g,h){var e=a.$AttributeEx(c,g+(d||""));if(e){var f={};if(g=="t")f.$Value=e;else if(e.indexOf("%")+1)f.$Percent=a.$ParseFloat(e)/100;else f.$Value=a.$ParseFloat(e);b[h]=f}});return b}function p(){return e[b.floor(b.random()*e.length)]}function g(f){var h;if(f=="*")h=p();else if(f){var d=e[a.$ParseInt(f)]||e[f];if(a.$IsArray(d)){if(f!=i){i=f;c[f]=0;k[f]=d[b.floor(b.random()*d.length)]}else c[f]++;d=k[f];if(a.$IsArray(d)){d=d.length&&d[c[f]%d.length];if(a.$IsArray(d))d=d[b.floor(b.random()*d.length)]}}h=d;if(a.$IsString(h))h=g(h)}return h}var q=a.$Children(r);a.$Each(q,function(b){var c=[];c.$Elmt=b;var e=a.$AttributeEx(b,"u")=="caption";a.$Each(f?[0,3]:[2],function(l,o){if(e){var k,f;if(l!=2||!a.$AttributeEx(b,"t3")){f=h(b,l);if(l==2&&!f.$Transition){f.$Delay=f.$Delay||{$Value:0};f=a.$Extend(h(b,0),f)}}if(f&&f.$Transition){k=g(f.$Transition.$Value);if(k){var i=a.$Extend({$Delay:0},k);a.$Each(f,function(c,a){var b=(d[a]||d.$Default).apply(d,[i[a],f[a]]);if(!isNaN(b))i[a]=b});if(!o)if(f.$BeginTime)i.$BeginTime=f.$BeginTime.$Value||0;else if(n&2)i.$BeginTime=0}}c.push(i)}if(m%2&&!o)c.$Children=j(b,m+1)});l.push(c)});return l}function m(w,c,z){var g={$Easing:c.$Easing,$Round:c.$Round,$During:c.$During,$Reverse:f&&!z},m=w,r=a.$ParentNode(w),k=a.$CssWidth(m),j=a.$CssHeight(m),y=a.$CssWidth(r),x=a.$CssHeight(r),h={},e={},i=c.$ScaleClip||1;if(c.$Opacity)e.$Opacity=1-c.$Opacity;g.$OriginalWidth=k;g.$OriginalHeight=j;if(c.$Zoom||c.$Rotate){e.$Zoom=(c.$Zoom||2)-2;if(a.$IsBrowserIe9Earlier()||a.$IsBrowserOpera())e.$Zoom=b.min(e.$Zoom,1);h.$Zoom=1;var B=c.$Rotate||0;e.$Rotate=B*360;h.$Rotate=0}else if(c.$Clip){var s={$Top:0,$Right:k,$Bottom:j,$Left:0},v=a.$Extend({},s),d=v.$Offset={},u=c.$Clip&4,p=c.$Clip&8,t=c.$Clip&1,q=c.$Clip&2;if(u&&p){d.$Top=j/2*i;d.$Bottom=-d.$Top}else if(u)d.$Bottom=-j*i;else if(p)d.$Top=j*i;if(t&&q){d.$Left=k/2*i;d.$Right=-d.$Left}else if(t)d.$Right=-k*i;else if(q)d.$Left=k*i;g.$Move=c.$Move;e.$Clip=v;h.$Clip=s}var n=0,o=0;if(c.x)n-=y*c.x;if(c.y)o-=x*c.y;if(n||o||g.$Move){e.$Left=n;e.$Top=o}var A=c.$Duration;h=a.$Extend(h,a.$GetStyles(m,e));g.$Setter=a.$StyleSetterEx();return new l(c.$Delay,A,g,m,h,e)}function i(b,d){a.$Each(d,function(d){var a,h=d.$Elmt,e=d[0],j=d[1];if(e){a=m(h,e);e.$BeginTime==k&&a.$Shift(b);b=a.$GetPosition_OuterEnd()}b=i(b,d.$Children);if(j){var f=m(h,j,1);f.$Shift(b);c.$Combine(f);g.$Combine(f)}a&&c.$Combine(a)});return b}c.$Revert=function(){c.$GoToPosition(c.$GetPosition_OuterEnd()*(f||0));g.$GoToPosition(0)};g=new l(0,0);i(0,n?j(p,1):[])}c.$Revert=function(){d.$Revert();e.$Revert()};e=new g(h,f,1);c.$IdleBegin=e.$GetPosition_OuterEnd();c.$IdleEnd=c.$IdleBegin+i;d=new g(h,f);d.$Shift(c.$IdleEnd);c.$Combine(d);c.$Combine(e)};g.$JssorCaptionSlideo$=function(n,g,m){var b=this,o,h={},i=g.$Transitions,d=new l(0,0);l.call(b,0,0);function j(d,c){var b={};a.$Each(d,function(d,f){var e=h[f];if(e){if(a.$IsPlainObject(d))d=j(d,c||f=="e");else if(c)if(a.$IsNumeric(d))d=o[d];b[e]=d}});return b}function k(e,c){var b=[],d=a.$Children(e);a.$Each(d,function(d){var h=a.$AttributeEx(d,"u")=="caption";if(h){var e=a.$AttributeEx(d,"t"),g=i[a.$ParseInt(e)]||i[e],f={$Elmt:d,$Transition:g};b.push(f)}if(c<5)b=b.concat(k(d,c+1))});return b}function r(c,e,b){a.$Each(e,function(f){var e=j(f),g={$Easing:a.$FormatEasings(e.$Easing),$Setter:a.$StyleSetterEx(),$OriginalWidth:b.$Width,$OriginalHeight:b.$Height},h=new l(f.b,f.d,g,c,b,e);d.$Combine(h);b=a.$AddDif(b,e)});return b}function q(b){a.$Each(b,function(e){var b=e.$Elmt,d=a.$CssWidth(b),c=a.$CssHeight(b),f={$Left:a.$CssLeft(b),$Top:a.$CssTop(b),$Opacity:1,$ZIndex:a.$CssZIndex(b)||0,$Rotate:0,$RotateX:0,$RotateY:0,$ScaleX:1,$ScaleY:1,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0,$Width:d,$Height:c,$Clip:{$Top:0,$Right:d,$Bottom:c,$Left:0}};r(b,e.$Transition,f)})}function t(g,f,h){var e=g.b-f;if(e){var a=new l(f,e);a.$Combine(d,c);a.$Shift(h);b.$Combine(a)}b.$Expand(g.d);return e}function s(f){var c=d.$GetPosition_OuterBegin(),e=0;a.$Each(f,function(d,f){d=a.$Extend({d:m},d);t(d,c,e);c=d.b;e+=d.d;if(!f||d.t==2){b.$IdleBegin=c;b.$IdleEnd=c+d.d}})}b.$Revert=function(){b.$GoToPosition(-1,c)};o=[f.$Swing,f.$Linear,f.$InQuad,f.$OutQuad,f.$InOutQuad,f.$InCubic,f.$OutCubic,f.$InOutCubic,f.$InQuart,f.$OutQuart,f.$InOutQuart,f.$InQuint,f.$OutQuint,f.$InOutQuint,f.$InSine,f.$OutSine,f.$InOutSine,f.$InExpo,f.$OutExpo,f.$InOutExpo,f.$InCirc,f.$OutCirc,f.$InOutCirc,f.$InElastic,f.$OutElastic,f.$InOutElastic,f.$InBack,f.$OutBack,f.$InOutBack,f.$InBounce,f.$OutBounce,f.$InOutBounce,f.$GoBack,f.$InWave,f.$OutWave,f.$OutJump,f.$InJump];var u={$Top:"y",$Left:"x",$Bottom:"m",$Right:"t",$Rotate:"r",$RotateX:"rX",$RotateY:"rY",$ScaleX:"sX",$ScaleY:"sY",$TranslateX:"tX",$TranslateY:"tY",$TranslateZ:"tZ",$SkewX:"kX",$SkewY:"kY",$Opacity:"o",$Easing:"e",$ZIndex:"i",$Clip:"c"};a.$Each(u,function(b,a){h[b]=a});q(k(n,1));d.$GoToPosition(-1);var p=g.$Breaks||[],e=[].concat(p[a.$ParseInt(a.$AttributeEx(n,"b"))]||[]);e.push({b:d.$GetPosition_OuterEnd(),d:e.length?0:m});s(e);b.$GoToPosition(-1)}})(window,document,Math,null,true,false)
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.mini.js b/wrt/wrt_support/extensions_repo/banner_slide/js/jssor.slider.mini.js
new file mode 100755 (executable)
index 0000000..21dbd32
--- /dev/null
@@ -0,0 +1,2 @@
+(function(g,e,b,j,c,i,k){/*! Jssor */
+new(function(){});var d=g.$JssorEasing$={$EaseSwing:function(a){return-b.cos(a*b.PI)/2+.5},$EaseLinear:function(a){return a},$EaseInQuad:function(a){return a*a},$EaseOutQuad:function(a){return-a*(a-2)},$EaseInOutQuad:function(a){return(a*=2)<1?1/2*a*a:-1/2*(--a*(a-2)-1)},$EaseInCubic:function(a){return a*a*a},$EaseOutCubic:function(a){return(a-=1)*a*a+1},$EaseInOutCubic:function(a){return(a*=2)<1?1/2*a*a*a:1/2*((a-=2)*a*a+2)},$EaseInQuart:function(a){return a*a*a*a},$EaseOutQuart:function(a){return-((a-=1)*a*a*a-1)},$EaseInOutQuart:function(a){return(a*=2)<1?1/2*a*a*a*a:-1/2*((a-=2)*a*a*a-2)},$EaseInQuint:function(a){return a*a*a*a*a},$EaseOutQuint:function(a){return(a-=1)*a*a*a*a+1},$EaseInOutQuint:function(a){return(a*=2)<1?1/2*a*a*a*a*a:1/2*((a-=2)*a*a*a*a+2)},$EaseInSine:function(a){return 1-b.cos(a*b.PI/2)},$EaseOutSine:function(a){return b.sin(a*b.PI/2)},$EaseInOutSine:function(a){return-1/2*(b.cos(b.PI*a)-1)},$EaseInExpo:function(a){return a==0?0:b.pow(2,10*(a-1))},$EaseOutExpo:function(a){return a==1?1:-b.pow(2,-10*a)+1},$EaseInOutExpo:function(a){return a==0||a==1?a:(a*=2)<1?1/2*b.pow(2,10*(a-1)):1/2*(-b.pow(2,-10*--a)+2)},$EaseInCirc:function(a){return-(b.sqrt(1-a*a)-1)},$EaseOutCirc:function(a){return b.sqrt(1-(a-=1)*a)},$EaseInOutCirc:function(a){return(a*=2)<1?-1/2*(b.sqrt(1-a*a)-1):1/2*(b.sqrt(1-(a-=2)*a)+1)},$EaseInElastic:function(a){if(!a||a==1)return a;var c=.3,d=.075;return-(b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c))},$EaseOutElastic:function(a){if(!a||a==1)return a;var c=.3,d=.075;return b.pow(2,-10*a)*b.sin((a-d)*2*b.PI/c)+1},$EaseInOutElastic:function(a){if(!a||a==1)return a;var c=.45,d=.1125;return(a*=2)<1?-.5*b.pow(2,10*(a-=1))*b.sin((a-d)*2*b.PI/c):b.pow(2,-10*(a-=1))*b.sin((a-d)*2*b.PI/c)*.5+1},$EaseInBack:function(a){var b=1.70158;return a*a*((b+1)*a-b)},$EaseOutBack:function(a){var b=1.70158;return(a-=1)*a*((b+1)*a+b)+1},$EaseInOutBack:function(a){var b=1.70158;return(a*=2)<1?1/2*a*a*(((b*=1.525)+1)*a-b):1/2*((a-=2)*a*(((b*=1.525)+1)*a+b)+2)},$EaseInBounce:function(a){return 1-d.$EaseOutBounce(1-a)},$EaseOutBounce:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375},$EaseInOutBounce:function(a){return a<1/2?d.$EaseInBounce(a*2)*.5:d.$EaseOutBounce(a*2-1)*.5+.5},$EaseGoBack:function(a){return 1-b.abs(2-1)},$EaseInWave:function(a){return 1-b.cos(a*b.PI*2)},$EaseOutWave:function(a){return b.sin(a*b.PI*2)},$EaseOutJump:function(a){return 1-((a*=2)<1?(a=1-a)*a*a:(a-=1)*a*a)},$EaseInJump:function(a){return(a*=2)<1?a*a*a:(a=2-a)*a*a}},f=g.$Jease$={$Swing:d.$EaseSwing,$Linear:d.$EaseLinear,$InQuad:d.$EaseInQuad,$OutQuad:d.$EaseOutQuad,$InOutQuad:d.$EaseInOutQuad,$InCubic:d.$EaseInCubic,$OutCubic:d.$EaseOutCubic,$InOutCubic:d.$EaseInOutCubic,$InQuart:d.$EaseInQuart,$OutQuart:d.$EaseOutQuart,$InOutQuart:d.$EaseInOutQuart,$InQuint:d.$EaseInQuint,$OutQuint:d.$EaseOutQuint,$InOutQuint:d.$EaseInOutQuint,$InSine:d.$EaseInSine,$OutSine:d.$EaseOutSine,$InOutSine:d.$EaseInOutSine,$InExpo:d.$EaseInExpo,$OutExpo:d.$EaseOutExpo,$InOutExpo:d.$EaseInOutExpo,$InCirc:d.$EaseInCirc,$OutCirc:d.$EaseOutCirc,$InOutCirc:d.$EaseInOutCirc,$InElastic:d.$EaseInElastic,$OutElastic:d.$EaseOutElastic,$InOutElastic:d.$EaseInOutElastic,$InBack:d.$EaseInBack,$OutBack:d.$EaseOutBack,$InOutBack:d.$EaseInOutBack,$InBounce:d.$EaseInBounce,$OutBounce:d.$EaseOutBounce,$InOutBounce:d.$EaseInOutBounce,$GoBack:d.$EaseGoBack,$InWave:d.$EaseInWave,$OutWave:d.$EaseOutWave,$OutJump:d.$EaseOutJump,$InJump:d.$EaseInJump};var a=new function(){var f=this,zb=/\S+/g,S=1,fb=2,jb=3,ib=4,nb=5,I,s=0,l=0,q=0,J=0,C=0,y=navigator,sb=y.appName,n=y.userAgent;function Ib(){if(!I){I={Rg:"ontouchstart"in g||"createTouch"in e};var a;if(y.pointerEnabled||(a=y.msPointerEnabled))I.Bd=a?"msTouchAction":"touchAction"}return I}function t(i){if(!s){s=-1;if(sb=="Microsoft Internet Explorer"&&!!g.attachEvent&&!!g.ActiveXObject){var f=n.indexOf("MSIE");s=S;q=o(n.substring(f+5,n.indexOf(";",f)));/*@cc_on J=@_jscript_version@*/;l=e.documentMode||q}else if(sb=="Netscape"&&!!g.addEventListener){var d=n.indexOf("Firefox"),b=n.indexOf("Safari"),h=n.indexOf("Chrome"),c=n.indexOf("AppleWebKit");if(d>=0){s=fb;l=o(n.substring(d+8))}else if(b>=0){var j=n.substring(0,b).lastIndexOf("/");s=h>=0?ib:jb;l=o(n.substring(j+1,b))}else{var a=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/i.exec(n);if(a){s=S;l=q=o(a[1])}}if(c>=0)C=o(n.substring(c+12))}else{var a=/(opera)(?:.*version|)[ \/]([\w.]+)/i.exec(n);if(a){s=nb;l=o(a[2])}}}return i==s}function p(){return t(S)}function N(){return p()&&(l<6||e.compatMode=="BackCompat")}function hb(){return t(jb)}function mb(){return t(nb)}function ab(){return hb()&&C>534&&C<535}function L(){return p()&&l<9}function cb(a){var b;return function(d){if(!b){b=a;var c=a.substr(0,1).toUpperCase()+a.substr(1);m([a].concat(["WebKit","ms","Moz","O","webkit"]),function(g,f){var e=a;if(f)e=g+c;if(d.style[e]!=k)return b=e})}return b}}var bb=cb("transform");function rb(a){return{}.toString.call(a)}var H;function Fb(){if(!H){H={};m(["Boolean","Number","String","Function","Array","Date","RegExp","Object"],function(a){H["[object "+a+"]"]=a.toLowerCase()})}return H}function m(a,d){if(rb(a)=="[object Array]"){for(var b=0;b<a.length;b++)if(d(a[b],b,a))return c}else for(var e in a)if(d(a[e],e,a))return c}function A(a){return a==j?String(a):Fb()[rb(a)]||"object"}function pb(a){for(var b in a)return c}function x(a){try{return A(a)=="object"&&!a.nodeType&&a!=a.window&&(!a.constructor||{}.hasOwnProperty.call(a.constructor.prototype,"isPrototypeOf"))}catch(b){}}function w(a,b){return{x:a,y:b}}function vb(b,a){setTimeout(b,a||0)}function F(b,d,c){var a=!b||b=="inherit"?"":b;m(d,function(c){var b=c.exec(a);if(b){var d=a.substr(0,b.index),e=a.substr(b.lastIndex+1,a.length-(b.lastIndex+1));a=d+e}});a=c+(a.indexOf(" ")!=0?" ":"")+a;return a}function eb(b,a){if(l<9)b.style.filter=a}function Bb(g,a,i){if(!J||J<9){var d=a.$ScaleX,e=a.$ScaleY,j=(a.$Rotate||0)%360,h="";if(j||d!=k||e!=k){if(d==k)d=1;if(e==k)e=1;var c=f.Tg(j/180*b.PI,d||1,e||1),i=f.Og(c,a.$OriginalWidth,a.$OriginalHeight);f.Dd(g,i.y);f.Id(g,i.x);h="progid:DXImageTransform.Microsoft.Matrix(M11="+c[0][0]+", M12="+c[0][1]+", M21="+c[1][0]+", M22="+c[1][1]+", SizingMethod='auto expand')"}var m=g.style.filter,n=new RegExp(/[\s]*progid:DXImageTransform\.Microsoft\.Matrix\([^\)]*\)/g),l=F(m,[n],h);eb(g,l)}}f.Pg=Ib;f.Jd=p;f.Ng=hb;f.tc=mb;f.V=L;f.sd=function(){return l};f.ng=function(){t();return C};f.$Delay=vb;function V(a){a.constructor===V.caller&&a.xd&&a.xd.apply(a,V.caller.arguments)}f.xd=V;f.qb=function(a){if(f.ud(a))a=e.getElementById(a);return a};function r(a){return a||g.event}f.vd=r;f.yc=function(a){a=r(a);return a.target||a.srcElement||e};f.Qd=function(a){a=r(a);return{x:a.pageX||a.clientX||0,y:a.pageY||a.clientY||0}};function B(c,d,a){if(a!==k)c.style[d]=a==k?"":a;else{var b=c.currentStyle||c.style;a=b[d];if(a==""&&g.getComputedStyle){b=c.ownerDocument.defaultView.getComputedStyle(c,j);b&&(a=b.getPropertyValue(d)||b[d])}return a}}function X(b,c,a,d){if(a!=k){if(a==j)a="";else d&&(a+="px");B(b,c,a)}else return o(B(b,c))}function h(c,a){var d=a?X:B,b;if(a&4)b=cb(c);return function(e,f){return d(e,b?b(e):c,f,a&2)}}function Cb(b){if(p()&&q<9){var a=/opacity=([^)]*)/.exec(b.style.filter||"");return a?o(a[1])/100:1}else return o(b.style.opacity||"1")}function Eb(c,a,f){if(p()&&q<9){var h=c.style.filter||"",i=new RegExp(/[\s]*alpha\([^\)]*\)/g),e=b.round(100*a),d="";if(e<100||f)d="alpha(opacity="+e+") ";var g=F(h,[i],d);eb(c,g)}else c.style.opacity=a==1?"":b.round(a*100)/100}var xb={$Rotate:["rotate"],$RotateX:["rotateX"],$RotateY:["rotateY"],$ScaleX:["scaleX",2],$ScaleY:["scaleY",2],$TranslateX:["translateX",1],$TranslateY:["translateY",1],$TranslateZ:["translateZ",1],$SkewX:["skewX"],$SkewY:["skewY"]};function Z(e,c){if(p()&&l&&l<10){delete c.$RotateX;delete c.$RotateY}var d=bb(e);if(d){var b="";a.c(c,function(e,c){var a=xb[c];if(a){var d=a[1]||0;b+=(b?" ":"")+a[0]+"("+e+(["deg","px",""])[d]+")"}});e.style[d]=b}}f.jg=function(b,a){if(ab())vb(f.K(j,Z,b,a));else(L()?Bb:Z)(b,a)};f.Sc=h("transformOrigin",4);f.ig=h("backfaceVisibility",4);f.kg=h("transformStyle",4);f.mg=h("perspective",6);f.lg=h("perspectiveOrigin",4);f.sg=function(a,c){if(p()&&q<9||q<10&&N())a.style.zoom=c==1?"":c;else{var b=bb(a);if(b){var f="scale("+c+")",e=a.style[b],g=new RegExp(/[\s]*scale\(.*?\)/g),d=F(e,[g],f);a.style[b]=d}}};f.Ib=function(b,a){return function(c){c=r(c);var e=c.type,d=c.relatedTarget||(e=="mouseout"?c.toElement:c.fromElement);(!d||d!==a&&!f.zg(a,d))&&b(c)}};f.e=function(a,c,d,b){a=f.qb(a);if(a.addEventListener){c=="mousewheel"&&a.addEventListener("DOMMouseScroll",d,b);a.addEventListener(c,d,b)}else if(a.attachEvent){a.attachEvent("on"+c,d);b&&a.setCapture&&a.setCapture()}};f.R=function(a,c,d,b){a=f.qb(a);if(a.removeEventListener){c=="mousewheel"&&a.removeEventListener("DOMMouseScroll",d,b);a.removeEventListener(c,d,b)}else if(a.detachEvent){a.detachEvent("on"+c,d);b&&a.releaseCapture&&a.releaseCapture()}};f.bc=function(a){a=r(a);a.preventDefault&&a.preventDefault();a.cancel=c;a.returnValue=i};f.Kg=function(a){a=r(a);a.stopPropagation&&a.stopPropagation();a.cancelBubble=c};f.K=function(d,c){var a=[].slice.call(arguments,2),b=function(){var b=a.concat([].slice.call(arguments,0));return c.apply(d,b)};return b};f.ug=function(a,b){if(b==k)return a.textContent||a.innerText;var c=e.createTextNode(b);f.sc(a);a.appendChild(c)};f.O=function(d,c){for(var b=[],a=d.firstChild;a;a=a.nextSibling)(c||a.nodeType==1)&&b.push(a);return b};function qb(a,c,e,b){b=b||"u";for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(R(a,b)==c)return a;if(!e){var d=qb(a,c,e,b);if(d)return d}}}f.D=qb;function P(a,d,f,b){b=b||"u";var c=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){R(a,b)==d&&c.push(a);if(!f){var e=P(a,d,f,b);if(e.length)c=c.concat(e)}}return c}function kb(a,c,d){for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){if(a.tagName==c)return a;if(!d){var b=kb(a,c,d);if(b)return b}}}f.xg=kb;function db(a,c,e){var b=[];for(a=a?a.firstChild:j;a;a=a.nextSibling)if(a.nodeType==1){(!c||a.tagName==c)&&b.push(a);if(!e){var d=db(a,c,e);if(d.length)b=b.concat(d)}}return b}f.vg=db;f.tg=function(b,a){return b.getElementsByTagName(a)};function z(){var e=arguments,d,c,b,a,g=1&e[0],f=1+g;d=e[f-1]||{};for(;f<e.length;f++)if(c=e[f])for(b in c){a=c[b];if(a!==k){a=c[b];var h=d[b];d[b]=g&&(x(h)||x(a))?z(g,{},h,a):a}}return d}f.p=z;function W(f,g){var d={},c,a,b;for(c in f){a=f[c];b=g[c];if(a!==b){var e;if(x(a)&&x(b)){a=W(a,b);e=!pb(a)}!e&&(d[c]=a)}}return d}f.fd=function(a){return A(a)=="function"};f.uc=function(a){return A(a)=="array"};f.ud=function(a){return A(a)=="string"};f.Zb=function(a){return!isNaN(o(a))&&isFinite(a)};f.c=m;f.yg=x;function O(a){return e.createElement(a)}f.mb=function(){return O("DIV")};f.Cg=function(){return O("SPAN")};f.kd=function(){};function T(b,c,a){if(a==k)return b.getAttribute(c);b.setAttribute(c,a)}function R(a,b){return T(a,b)||T(a,"data-"+b)}f.C=T;f.j=R;function u(b,a){if(a==k)return b.className;b.className=a}f.Zc=u;function ub(b){var a={};m(b,function(b){a[b]=b});return a}function wb(b,a){return b.match(a||zb)}function M(b,a){return ub(wb(b||"",a))}f.Bg=wb;function Y(b,c){var a="";m(c,function(c){a&&(a+=b);a+=c});return a}function E(a,c,b){u(a,Y(" ",z(W(M(u(a)),M(c)),M(b))))}f.Yc=function(a){return a.parentNode};f.S=function(a){f.Y(a,"none")};f.A=function(a,b){f.Y(a,b?"none":"")};f.qg=function(b,a){b.removeAttribute(a)};f.rg=function(){return p()&&l<10};f.pg=function(d,c){if(c)d.style.clip="rect("+b.round(c.$Top)+"px "+b.round(c.$Right)+"px "+b.round(c.$Bottom)+"px "+b.round(c.$Left)+"px)";else{var g=d.style.cssText,f=[new RegExp(/[\s]*clip: rect\(.*?\)[;]?/i),new RegExp(/[\s]*cliptop: .*?[;]?/i),new RegExp(/[\s]*clipright: .*?[;]?/i),new RegExp(/[\s]*clipbottom: .*?[;]?/i),new RegExp(/[\s]*clipleft: .*?[;]?/i)],e=F(g,f,"");a.Nb(d,e)}};f.T=function(){return+new Date};f.H=function(b,a){b.appendChild(a)};f.Pb=function(b,a,c){(c||a.parentNode).insertBefore(b,a)};f.Hb=function(a,b){(b||a.parentNode).removeChild(a)};f.Jg=function(a,b){m(a,function(a){f.Hb(a,b)})};f.sc=function(a){f.Jg(f.O(a,c),a)};f.Oe=function(a,b){var c=f.Yc(a);b&1&&f.E(a,(f.l(c)-f.l(a))/2);b&2&&f.G(a,(f.m(c)-f.m(a))/2)};f.Kb=function(b,a){return parseInt(b,a||10)};var o=parseFloat;f.Nc=o;f.zg=function(b,a){var c=e.body;while(a&&b!==a&&c!==a)try{a=a.parentNode}catch(d){return i}return b===a};function U(d,c,b){var a=d.cloneNode(!c);!b&&f.qg(a,"id");return a}f.X=U;f.Cb=function(e,g){var a=new Image;function b(e,c){f.R(a,"load",b);f.R(a,"abort",d);f.R(a,"error",d);g&&g(a,c)}function d(a){b(a,c)}if(mb()&&l<11.6||!e)b(!e);else{f.e(a,"load",b);f.e(a,"abort",d);f.e(a,"error",d);a.src=e}};f.Ud=function(d,a,e){var c=d.length+1;function b(b){c--;if(a&&b&&b.src==a.src)a=b;!c&&e&&e(a)}m(d,function(a){f.Cb(a.src,b)});b()};f.Xc=function(b,g,i,h){if(h)b=U(b);var c=P(b,g);if(!c.length)c=a.tg(b,g);for(var f=c.length-1;f>-1;f--){var d=c[f],e=U(i);u(e,u(d));a.Nb(e,d.style.cssText);a.Pb(e,d);a.Hb(d)}return b};function Gb(b){var l=this,p="",r=["av","pv","ds","dn"],g=[],q,j=0,h=0,d=0;function i(){E(b,q,g[d||j||h&2||h]);a.W(b,"pointer-events",d?"none":"")}function c(){j=0;i();f.R(e,"mouseup",c);f.R(e,"touchend",c);f.R(e,"touchcancel",c)}function o(a){if(d)f.bc(a);else{j=4;i();f.e(e,"mouseup",c);f.e(e,"touchend",c);f.e(e,"touchcancel",c)}}l.jd=function(a){if(a===k)return h;h=a&2||a&1;i()};l.$Enable=function(a){if(a===k)return!d;d=a?0:3;i()};l.$Elmt=b=f.qb(b);var n=a.Bg(u(b));if(n)p=n.shift();m(r,function(a){g.push(p+a)});q=Y(" ",g);g.unshift("");f.e(b,"mousedown",o);f.e(b,"touchstart",o)}f.ac=function(a){return new Gb(a)};f.W=B;f.ib=h("overflow");f.G=h("top",2);f.E=h("left",2);f.l=h("width",2);f.m=h("height",2);f.Id=h("marginLeft",2);f.Dd=h("marginTop",2);f.z=h("position");f.Y=h("display");f.J=h("zIndex",1);f.Ab=function(b,a,c){if(a!=k)Eb(b,a,c);else return Cb(b)};f.Nb=function(a,b){if(b!=k)a.style.cssText=b;else return a.style.cssText};var Q={$Opacity:f.Ab,$Top:f.G,$Left:f.E,N:f.l,P:f.m,Bb:f.z,Kh:f.Y,$ZIndex:f.J},K;function G(){if(!K)K=z({Mh:f.Dd,Lh:f.Id,$Clip:f.pg,B:f.jg},Q);return K}function ob(){var a={};a.B=a.B;a.B=a.$Rotate;a.B=a.$RotateX;a.B=a.$RotateY;a.B=a.$SkewX;a.B=a.$SkewY;a.B=a.$TranslateX;a.B=a.$TranslateY;a.B=a.$TranslateZ;return G()}f.ne=G;f.Pc=ob;f.xe=function(c,b){G();var a={};m(b,function(d,b){if(Q[b])a[b]=Q[b](c)});return a};f.bb=function(c,b){var a=G();m(b,function(d,b){a[b]&&a[b](c,d)})};f.Wd=function(b,a){ob();f.bb(b,a)};var D=new function(){var a=this;function b(d,g){for(var j=d[0].length,i=d.length,h=g[0].length,f=[],c=0;c<i;c++)for(var k=f[c]=[],b=0;b<h;b++){for(var e=0,a=0;a<j;a++)e+=d[c][a]*g[a][b];k[b]=e}return f}a.$ScaleX=function(b,c){return a.Vc(b,c,0)};a.$ScaleY=function(b,c){return a.Vc(b,0,c)};a.Vc=function(a,c,d){return b(a,[[c,0],[0,d]])};a.Ub=function(d,c){var a=b(d,[[c.x],[c.y]]);return w(a[0][0],a[1][0])}};f.Tg=function(d,a,c){var e=b.cos(d),f=b.sin(d);return[[e*a,-f*c],[f*a,e*c]]};f.Og=function(d,c,a){var e=D.Ub(d,w(-c/2,-a/2)),f=D.Ub(d,w(c/2,-a/2)),g=D.Ub(d,w(c/2,a/2)),h=D.Ub(d,w(-c/2,a/2));return w(b.min(e.x,f.x,g.x,h.x)+c/2,b.min(e.y,f.y,g.y,h.y)+a/2)};var yb={$Zoom:1,$ScaleX:1,$ScaleY:1,$Rotate:0,$RotateX:0,$RotateY:0,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0};f.Lc=function(b){var c=b||{};if(b)if(a.fd(b))c={kb:c};else if(a.fd(b.$Clip))c.$Clip={kb:b.$Clip};return c};function tb(c,a){var b={};m(c,function(c,d){var e=c;if(a[d]!=k)if(f.Zb(c))e=c+a[d];else e=tb(c,a[d]);b[d]=e});return b}f.Je=tb;f.Kd=function(h,i,w,n,y,z,o){var c=i;if(h){c={};for(var g in i){var A=z[g]||1,v=y[g]||[0,1],e=(w-v[0])/v[1];e=b.min(b.max(e,0),1);e=e*A;var u=b.floor(e);if(e!=u)e-=u;var l=n.kb||d.$EaseSwing,m,B=h[g],q=i[g];if(a.Zb(q)){l=n[g]||l;var x=l(e);m=B+q*x}else{m=a.p({wb:{}},h[g]);a.c(q.wb||q,function(d,a){if(n.$Clip)l=n.$Clip[a]||n.$Clip.kb||l;var c=l(e),b=d*c;m.wb[a]=b;m[a]+=b})}c[g]=m}var t,f={$OriginalWidth:o.$OriginalWidth,$OriginalHeight:o.$OriginalHeight};a.c(yb,function(d,a){t=t||i[a];var b=c[a];if(b!=k){if(b!=d)f[a]=b;delete c[a]}else if(h[a]!=k&&h[a]!=d)f[a]=h[a]});if(i.$Zoom&&f.$Zoom){f.$ScaleX=f.$Zoom;f.$ScaleY=f.$Zoom}c.B=f}if(i.$Clip&&o.$Move){var p=c.$Clip.wb,s=(p.$Top||0)+(p.$Bottom||0),r=(p.$Left||0)+(p.$Right||0);c.$Left=(c.$Left||0)+r;c.$Top=(c.$Top||0)+s;c.$Clip.$Left-=r;c.$Clip.$Right-=r;c.$Clip.$Top-=s;c.$Clip.$Bottom-=s}if(c.$Clip&&a.rg()&&!c.$Clip.$Top&&!c.$Clip.$Left&&c.$Clip.$Right==o.$OriginalWidth&&c.$Clip.$Bottom==o.$OriginalHeight)c.$Clip=j;return c}};function m(){var b=this,d=[];function i(a,b){d.push({vc:a,Ec:b})}function h(b,c){a.c(d,function(a,e){a.vc==b&&a.Ec===c&&d.splice(e,1)})}b.$On=b.addEventListener=i;b.$Off=b.removeEventListener=h;b.n=function(b){var c=[].slice.call(arguments,1);a.c(d,function(a){a.vc==b&&a.Ec.apply(g,c)})}}var l=function(y,C,k,P,N,J){y=y||0;var d=this,q,n,o,v,z=0,H,I,G,B,x=0,h=0,m=0,D,l,f,e,p,w=[],A;function O(a){f+=a;e+=a;l+=a;h+=a;m+=a;x+=a}function u(n){var g=n;if(p&&(g>=e||g<=f))g=((g-f)%p+p)%p+f;if(!D||v||h!=g){var i=b.min(g,e);i=b.max(i,f);if(!D||v||i!=m){if(J){var j=(i-l)/(C||1);if(k.$Reverse)j=1-j;var o=a.Kd(N,J,j,H,G,I,k);a.c(o,function(b,a){A[a]&&A[a](P,b)})}d.Ic(m-l,i-l);m=i;a.c(w,function(b,c){var a=n<h?w[w.length-c-1]:b;a.v(m-x)});var r=h,q=m;h=g;D=c;d.Qb(r,q)}}}function E(a,c,d){c&&a.$Shift(e);if(!d){f=b.min(f,a.Fc()+x);e=b.max(e,a.gb()+x)}w.push(a)}var r=g.requestAnimationFrame||g.webkitRequestAnimationFrame||g.mozRequestAnimationFrame||g.msRequestAnimationFrame;if(a.Ng()&&a.sd()<7)r=j;r=r||function(b){a.$Delay(b,k.$Interval)};function K(){if(q){var d=a.T(),e=b.min(d-z,k.Uc),c=h+e*o;z=d;if(c*o>=n*o)c=n;u(c);if(!v&&c*o>=n*o)L(B);else r(K)}}function t(g,i,j){if(!q){q=c;v=j;B=i;g=b.max(g,f);g=b.min(g,e);n=g;o=n<h?-1:1;d.Od();z=a.T();r(K)}}function L(a){if(q){v=q=B=i;d.Ld();a&&a()}}d.$Play=function(a,b,c){t(a?h+a:e,b,c)};d.Cd=t;d.rb=L;d.Ke=function(a){t(a)};d.db=function(){return h};d.Sd=function(){return n};d.yb=function(){return m};d.v=u;d.$Move=function(a){u(h+a)};d.$IsPlaying=function(){return q};d.Ae=function(a){p=a};d.$Shift=O;d.I=function(a,b){E(a,0,b)};d.Oc=function(a){E(a,1)};d.ye=function(a){e+=a};d.Fc=function(){return f};d.gb=function(){return e};d.Qb=d.Od=d.Ld=d.Ic=a.kd;d.rc=a.T();k=a.p({$Interval:16,Uc:50},k);p=k.Tc;A=a.p({},a.ne(),k.xc);f=l=y;e=y+C;I=k.$Round||{};G=k.$During||{};H=a.Lc(k.$Easing)};var o=g.$JssorSlideshowFormations$=new function(){var h=this,d=0,a=1,f=2,e=3,s=1,r=2,t=4,q=8,w=256,x=512,v=1024,u=2048,j=u+s,i=u+r,o=x+s,m=x+r,n=w+t,k=w+q,l=v+t,p=v+q;function y(a){return(a&r)==r}function z(a){return(a&t)==t}function g(b,a,c){c.push(a);b[a]=b[a]||[];b[a].push(c)}h.$FormationStraight=function(f){for(var d=f.$Cols,e=f.$Rows,s=f.$Assembly,t=f.hc,r=[],a=0,b=0,p=d-1,q=e-1,h=t-1,c,b=0;b<e;b++)for(a=0;a<d;a++){switch(s){case j:c=h-(a*e+(q-b));break;case l:c=h-(b*d+(p-a));break;case o:c=h-(a*e+b);case n:c=h-(b*d+a);break;case i:c=a*e+b;break;case k:c=b*d+(p-a);break;case m:c=a*e+(q-b);break;default:c=b*d+a}g(r,c,[b,a])}return r};h.$FormationSwirl=function(q){var x=q.$Cols,y=q.$Rows,B=q.$Assembly,w=q.hc,A=[],z=[],u=0,b=0,h=0,r=x-1,s=y-1,t,p,v=0;switch(B){case j:b=r;h=0;p=[f,a,e,d];break;case l:b=0;h=s;p=[d,e,a,f];break;case o:b=r;h=s;p=[e,a,f,d];break;case n:b=r;h=s;p=[a,e,d,f];break;case i:b=0;h=0;p=[f,d,e,a];break;case k:b=r;h=0;p=[a,f,d,e];break;case m:b=0;h=s;p=[e,d,f,a];break;default:b=0;h=0;p=[d,f,a,e]}u=0;while(u<w){t=h+","+b;if(b>=0&&b<x&&h>=0&&h<y&&!z[t]){z[t]=c;g(A,u++,[h,b])}else switch(p[v++%p.length]){case d:b--;break;case f:h--;break;case a:b++;break;case e:h++}switch(p[v%p.length]){case d:b++;break;case f:h++;break;case a:b--;break;case e:h--}}return A};h.$FormationZigZag=function(p){var w=p.$Cols,x=p.$Rows,z=p.$Assembly,v=p.hc,t=[],u=0,b=0,c=0,q=w-1,r=x-1,y,h,s=0;switch(z){case j:b=q;c=0;h=[f,a,e,a];break;case l:b=0;c=r;h=[d,e,a,e];break;case o:b=q;c=r;h=[e,a,f,a];break;case n:b=q;c=r;h=[a,e,d,e];break;case i:b=0;c=0;h=[f,d,e,d];break;case k:b=q;c=0;h=[a,f,d,f];break;case m:b=0;c=r;h=[e,d,f,d];break;default:b=0;c=0;h=[d,f,a,f]}u=0;while(u<v){y=c+","+b;if(b>=0&&b<w&&c>=0&&c<x&&typeof t[y]=="undefined"){g(t,u++,[c,b]);switch(h[s%h.length]){case d:b++;break;case f:c++;break;case a:b--;break;case e:c--}}else{switch(h[s++%h.length]){case d:b--;break;case f:c--;break;case a:b++;break;case e:c++}switch(h[s++%h.length]){case d:b++;break;case f:c++;break;case a:b--;break;case e:c--}}}return t};h.$FormationStraightStairs=function(q){var u=q.$Cols,v=q.$Rows,e=q.$Assembly,t=q.hc,r=[],s=0,c=0,d=0,f=u-1,h=v-1,x=t-1;switch(e){case j:case m:case o:case i:var a=0,b=0;break;case k:case l:case n:case p:var a=f,b=0;break;default:e=p;var a=f,b=0}c=a;d=b;while(s<t){if(z(e)||y(e))g(r,x-s++,[d,c]);else g(r,s++,[d,c]);switch(e){case j:case m:c--;d++;break;case o:case i:c++;d--;break;case k:case l:c--;d--;break;case p:case n:default:c++;d++}if(c<0||d<0||c>f||d>h){switch(e){case j:case m:a++;break;case k:case l:case o:case i:b++;break;case p:case n:default:a--}if(a<0||b<0||a>f||b>h){switch(e){case j:case m:a=f;b++;break;case o:case i:b=h;a++;break;case k:case l:b=h;a--;break;case p:case n:default:a=0;b++}if(b>h)b=h;else if(b<0)b=0;else if(a>f)a=f;else if(a<0)a=0}d=b;c=a}}return r};h.$FormationSquare=function(i){var a=i.$Cols||1,c=i.$Rows||1,j=[],d,e,f,h,k;f=a<c?(c-a)/2:0;h=a>c?(a-c)/2:0;k=b.round(b.max(a/2,c/2))+1;for(d=0;d<a;d++)for(e=0;e<c;e++)g(j,k-b.min(d+1+f,e+1+h,a-d+f,c-e+h),[e,d]);return j};h.$FormationRectangle=function(f){var d=f.$Cols||1,e=f.$Rows||1,h=[],a,c,i;i=b.round(b.min(d/2,e/2))+1;for(a=0;a<d;a++)for(c=0;c<e;c++)g(h,i-b.min(a+1,c+1,d-a,e-c),[c,a]);return h};h.$FormationRandom=function(d){for(var e=[],a,c=0;c<d.$Rows;c++)for(a=0;a<d.$Cols;a++)g(e,b.ceil(1e5*b.random())%13,[c,a]);return e};h.$FormationCircle=function(d){for(var e=d.$Cols||1,f=d.$Rows||1,h=[],a,i=e/2-.5,j=f/2-.5,c=0;c<e;c++)for(a=0;a<f;a++)g(h,b.round(b.sqrt(b.pow(c-i,2)+b.pow(a-j,2))),[a,c]);return h};h.$FormationCross=function(d){for(var e=d.$Cols||1,f=d.$Rows||1,h=[],a,i=e/2-.5,j=f/2-.5,c=0;c<e;c++)for(a=0;a<f;a++)g(h,b.round(b.min(b.abs(c-i),b.abs(a-j))),[a,c]);return h};h.$FormationRectangleCross=function(f){for(var h=f.$Cols||1,i=f.$Rows||1,j=[],a,d=h/2-.5,e=i/2-.5,k=b.max(d,e)+1,c=0;c<h;c++)for(a=0;a<i;a++)g(j,b.round(k-b.max(d-b.abs(c-d),e-b.abs(a-e)))-1,[a,c]);return j}};g.$JssorSlideshowRunner$=function(n,s,q,t,y){var f=this,u,g,e,x=0,w=t.$TransitionsOrder,r,h=8;function k(g,f){var e={$Interval:f,$Duration:1,$Delay:0,$Cols:1,$Rows:1,$Opacity:0,$Zoom:0,$Clip:0,$Move:i,$SlideOut:i,$Reverse:i,$Formation:o.$FormationRandom,$Assembly:1032,$ChessMode:{$Column:0,$Row:0},$Easing:d.$EaseSwing,$Round:{},Ob:[],$During:{}};a.p(e,g);e.hc=e.$Cols*e.$Rows;e.$Easing=a.Lc(e.$Easing);e.fe=b.ceil(e.$Duration/e.$Interval);e.ie=function(b,a){b/=e.$Cols;a/=e.$Rows;var f=b+"x"+a;if(!e.Ob[f]){e.Ob[f]={N:b,P:a};for(var c=0;c<e.$Cols;c++)for(var d=0;d<e.$Rows;d++)e.Ob[f][d+","+c]={$Top:d*a,$Right:c*b+b,$Bottom:d*a+a,$Left:c*b}}return e.Ob[f]};if(e.$Brother){e.$Brother=k(e.$Brother,f);e.$SlideOut=c}return e}function p(A,h,d,v,n,l){var y=this,t,u={},j={},m=[],f,e,r,p=d.$ChessMode.$Column||0,q=d.$ChessMode.$Row||0,g=d.ie(n,l),o=B(d),C=o.length-1,s=d.$Duration+d.$Delay*C,w=v+s,k=d.$SlideOut,x;w+=50;function B(a){var b=a.$Formation(a);return a.$Reverse?b.reverse():b}y.td=w;y.Vb=function(c){c-=v;var e=c<s;if(e||x){x=e;if(!k)c=s-c;var f=b.ceil(c/d.$Interval);a.c(j,function(c,e){var d=b.max(f,c.ue);d=b.min(d,c.length-1);if(c.Rc!=d){if(!c.Rc&&!k)a.A(m[e]);else d==c.me&&k&&a.S(m[e]);c.Rc=d;a.Wd(m[e],c[d])}})}};h=a.X(h);if(a.V()){var D=!h["no-image"],z=a.vg(h);a.c(z,function(b){(D||b["jssor-slider"])&&a.Ab(b,a.Ab(b),c)})}a.c(o,function(h,m){a.c(h,function(G){var K=G[0],J=G[1],v=K+","+J,o=i,s=i,x=i;if(p&&J%2){if(p&3)o=!o;if(p&12)s=!s;if(p&16)x=!x}if(q&&K%2){if(q&3)o=!o;if(q&12)s=!s;if(q&16)x=!x}d.$Top=d.$Top||d.$Clip&4;d.$Bottom=d.$Bottom||d.$Clip&8;d.$Left=d.$Left||d.$Clip&1;d.$Right=d.$Right||d.$Clip&2;var C=s?d.$Bottom:d.$Top,z=s?d.$Top:d.$Bottom,B=o?d.$Right:d.$Left,A=o?d.$Left:d.$Right;d.$Clip=C||z||B||A;r={};e={$Top:0,$Left:0,$Opacity:1,N:n,P:l};f=a.p({},e);t=a.p({},g[v]);if(d.$Opacity)e.$Opacity=2-d.$Opacity;if(d.$ZIndex){e.$ZIndex=d.$ZIndex;f.$ZIndex=0}var I=d.$Cols*d.$Rows>1||d.$Clip;if(d.$Zoom||d.$Rotate){var H=c;if(a.V())if(d.$Cols*d.$Rows>1)H=i;else I=i;if(H){e.$Zoom=d.$Zoom?d.$Zoom-1:1;f.$Zoom=1;if(a.V()||a.tc())e.$Zoom=b.min(e.$Zoom,2);var N=d.$Rotate||0;e.$Rotate=N*360*(x?-1:1);f.$Rotate=0}}if(I){var h=t.wb={};if(d.$Clip){var w=d.$ScaleClip||1;if(C&&z){h.$Top=g.P/2*w;h.$Bottom=-h.$Top}else if(C)h.$Bottom=-g.P*w;else if(z)h.$Top=g.P*w;if(B&&A){h.$Left=g.N/2*w;h.$Right=-h.$Left}else if(B)h.$Right=-g.N*w;else if(A)h.$Left=g.N*w}r.$Clip=t;f.$Clip=g[v]}var L=o?1:-1,M=s?1:-1;if(d.x)e.$Left+=n*d.x*L;if(d.y)e.$Top+=l*d.y*M;a.c(e,function(b,c){if(a.Zb(b))if(b!=f[c])r[c]=b-f[c]});u[v]=k?f:e;var D=d.fe,y=b.round(m*d.$Delay/d.$Interval);j[v]=new Array(y);j[v].ue=y;j[v].me=y+D-1;for(var F=0;F<=D;F++){var E=a.Kd(f,r,F/D,d.$Easing,d.$During,d.$Round,{$Move:d.$Move,$OriginalWidth:n,$OriginalHeight:l});E.$ZIndex=E.$ZIndex||1;j[v].push(E)}})});o.reverse();a.c(o,function(b){a.c(b,function(c){var f=c[0],e=c[1],d=f+","+e,b=h;if(e||f)b=a.X(h);a.bb(b,u[d]);a.ib(b,"hidden");a.z(b,"absolute");A.se(b);m[d]=b;a.A(b,!k)})})}function v(){var a=this,b=0;l.call(a,0,u);a.Qb=function(c,a){if(a-b>h){b=a;e&&e.Vb(a);g&&g.Vb(a)}};a.ab=r}f.Ie=function(){var a=0,c=t.$Transitions,d=c.length;if(w)a=x++%d;else a=b.floor(b.random()*d);c[a]&&(c[a].nb=a);return c[a]};f.Ne=function(w,x,j,l,a){r=a;a=k(a,h);var i=l.Wc,d=j.Wc;i["no-image"]=!l.cc;d["no-image"]=!j.cc;var m=i,o=d,v=a,c=a.$Brother||k({},h);if(!a.$SlideOut){m=d;o=i}var t=c.$Shift||0;g=new p(n,o,c,b.max(t-c.$Interval,0),s,q);e=new p(n,m,v,b.max(c.$Interval-t,0),s,q);g.Vb(0);e.Vb(0);u=b.max(g.td,e.td);f.nb=w};f.Db=function(){n.Db();g=j;e=j};f.de=function(){var a=j;if(e)a=new v;return a};if(a.V()||a.tc()||y&&a.ng()<537)h=16;m.call(f);l.call(f,-1e7,1e7)};var h=g.$JssorSlider$=function(q,fc){var o=this;function Ec(){var a=this;l.call(a,-1e8,2e8);a.ge=function(){var c=a.yb(),d=b.floor(c),f=t(d),e=c-b.floor(c);return{nb:f,ce:d,Bb:e}};a.Qb=function(d,a){var e=b.floor(a);if(e!=a&&a>d)e++;Ub(e,c);o.n(h.$EVT_POSITION_CHANGE,t(a),t(d),a,d)}}function Dc(){var b=this;l.call(b,0,0,{Tc:r});a.c(C,function(a){D&1&&a.Ae(r);b.Oc(a);a.$Shift(fb/bc)})}function Cc(){var a=this,b=Tb.$Elmt;l.call(a,-1,2,{$Easing:d.$EaseLinear,xc:{Bb:Zb},Tc:r},b,{Bb:1},{Bb:-2});a.Mb=b}function qc(n,m){var a=this,d,e,g,k,b;l.call(a,-1e8,2e8,{Uc:100});a.Od=function(){O=c;R=j;o.n(h.$EVT_SWIPE_START,t(w.db()),w.db())};a.Ld=function(){O=i;k=i;var a=w.ge();o.n(h.$EVT_SWIPE_END,t(w.db()),w.db());!a.Bb&&Gc(a.ce,s)};a.Qb=function(i,h){var a;if(k)a=b;else{a=e;if(g){var c=h/g;a=f.$SlideEasing(c)*(e-d)+d}}w.v(a)};a.ic=function(b,f,c,h){d=b;e=f;g=c;w.v(b);a.v(0);a.Cd(c,h)};a.je=function(d){k=c;b=d;a.$Play(d,j,c)};a.le=function(a){b=a};w=new Ec;w.I(n);w.I(m)}function rc(){var c=this,b=Xb();a.J(b,0);a.W(b,"pointerEvents","none");c.$Elmt=b;c.se=function(c){a.H(b,c);a.A(b)};c.Db=function(){a.S(b);a.sc(b)}}function Bc(k,e){var d=this,q,H,x,n,y=[],w,B,W,G,Q,F,g,v,p;l.call(d,-u,u+1,{});function E(b){q&&q.jb();T(k,b,0);F=c;q=new I.$Class(k,I,a.Nc(a.j(k,"idle"))||pc);q.v(0)}function Y(){q.rc<I.rc&&E()}function N(p,r,m){if(!G){G=c;if(n&&m){var g=m.width,b=m.height,l=g,k=b;if(g&&b&&f.$FillMode){if(f.$FillMode&3&&(!(f.$FillMode&4)||g>K||b>J)){var j=i,q=K/J*b/g;if(f.$FillMode&1)j=q>1;else if(f.$FillMode&2)j=q<1;l=j?g*J/b:K;k=j?J:b*K/g}a.l(n,l);a.m(n,k);a.G(n,(J-k)/2);a.E(n,(K-l)/2)}a.z(n,"absolute");o.n(h.$EVT_LOAD_END,e)}}a.S(r);p&&p(d)}function X(b,c,f,g){if(g==R&&s==e&&P)if(!Fc){var a=t(b);A.Ne(a,e,c,d,f);c.be();U.$Shift(a-U.Fc()-1);U.v(a);z.ic(b,b,0)}}function ab(b){if(b==R&&s==e){if(!g){var a=j;if(A)if(A.nb==e)a=A.de();else A.Db();Y();g=new yc(k,e,a,q);g.gd(p)}!g.$IsPlaying()&&g.wc()}}function S(h,c,i){if(h==e){if(h!=c)C[c]&&C[c].Be();else!i&&g&&g.Le();p&&p.$Enable();var k=R=a.T();d.Cb(a.K(j,ab,k))}else{var m=b.abs(e-h),l=u+f.$LazyLoading-1;(!Q||m<=l)&&d.Cb()}}function bb(){if(s==e&&g){g.rb();p&&p.$Quit();p&&p.$Disable();g.nd()}}function db(){s==e&&g&&g.rb()}function Z(a){!M&&o.n(h.$EVT_CLICK,e,a)}function O(){p=v.pInstance;g&&g.gd(p)}d.Cb=function(d,b){b=b||x;if(y.length&&!G){a.A(b);if(!W){W=c;o.n(h.$EVT_LOAD_START,e);a.c(y,function(b){if(!a.C(b,"src")){b.src=a.j(b,"src2");a.Y(b,b["display-origin"])}})}a.Ud(y,n,a.K(j,N,d,b))}else N(d,b)};d.ze=function(){var h=e;if(f.$AutoPlaySteps<0)h-=r;var c=h+f.$AutoPlaySteps*wc;if(D&2)c=t(c);if(!(D&1))c=b.max(0,b.min(c,r-u));if(c!=e){if(A){var d=A.Ie(r);if(d){var i=R=a.T(),g=C[t(c)];return g.Cb(a.K(j,X,c,g,d,i),x)}}nb(c)}};d.pc=function(){S(e,e,c)};d.Be=function(){p&&p.$Quit();p&&p.$Disable();d.od();g&&g.he();g=j;E()};d.be=function(){a.S(k)};d.od=function(){a.A(k)};d.Yd=function(){p&&p.$Enable()};function T(b,d,e){if(a.C(b,"jssor-slider"))return;if(!F){if(b.tagName=="IMG"){y.push(b);if(!a.C(b,"src")){Q=c;b["display-origin"]=a.Y(b);a.S(b)}}a.V()&&a.J(b,(a.J(b)||0)+1)}var f=a.O(b);a.c(f,function(f){var h=f.tagName,j=a.j(f,"u");if(j=="player"&&!v){v=f;if(v.pInstance)O();else a.e(v,"dataavailable",O)}if(j=="caption"){if(d){a.Sc(f,a.j(f,"to"));a.ig(f,a.j(f,"bf"));a.kg(f,"preserve-3d")}else if(!a.Jd()){var g=a.X(f,i,c);a.Pb(g,f,b);a.Hb(f,b);f=g;d=c}}else if(!F&&!e&&!n){if(h=="A"){if(a.j(f,"u")=="image")n=a.xg(f,"IMG");else n=a.D(f,"image",c);if(n){w=f;a.Y(w,"block");a.bb(w,V);B=a.X(w,c);a.z(w,"relative");a.Ab(B,0);a.W(B,"backgroundColor","#000")}}else if(h=="IMG"&&a.j(f,"u")=="image")n=f;if(n){n.border=0;a.bb(n,V)}}T(f,d,e+1)})}d.Ic=function(c,b){var a=u-b;Zb(H,a)};d.nb=e;m.call(d);a.mg(k,a.j(k,"p"));a.lg(k,a.j(k,"po"));var L=a.D(k,"thumb",c);if(L){d.Ee=a.X(L);a.S(L)}a.A(k);x=a.X(cb);a.J(x,1e3);a.e(k,"click",Z);E(c);d.cc=n;d.Ad=B;d.Wc=k;d.Mb=H=k;a.H(H,x);o.$On(203,S);o.$On(28,db);o.$On(24,bb)}function yc(y,f,p,q){var b=this,m=0,u=0,g,j,e,d,k,t,r,n=C[f];l.call(b,0,0);function v(){a.sc(N);dc&&k&&n.Ad&&a.H(N,n.Ad);a.A(N,!k&&n.cc)}function w(){b.wc()}function x(a){r=a;b.rb();b.wc()}b.wc=function(){var a=b.yb();if(!B&&!O&&!r&&s==f){if(!a){if(g&&!k){k=c;b.nd(c);o.n(h.$EVT_SLIDESHOW_START,f,m,u,g,d)}v()}var i,p=h.$EVT_STATE_CHANGE;if(a!=d)if(a==e)i=d;else if(a==j)i=e;else if(!a)i=j;else i=b.Sd();o.n(p,f,a,m,j,e,d);var l=P&&(!E||F);if(a==d)(e!=d&&!(E&12)||l)&&n.ze();else(l||a!=e)&&b.Cd(i,w)}};b.Le=function(){e==d&&e==b.yb()&&b.v(j)};b.he=function(){A&&A.nb==f&&A.Db();var a=b.yb();a<d&&o.n(h.$EVT_STATE_CHANGE,f,-a-1,m,j,e,d)};b.nd=function(b){p&&a.ib(hb,b&&p.ab.$Outside?"":"hidden")};b.Ic=function(b,a){if(k&&a>=g){k=i;v();n.od();A.Db();o.n(h.$EVT_SLIDESHOW_END,f,m,u,g,d)}o.n(h.$EVT_PROGRESS_CHANGE,f,a,m,j,e,d)};b.gd=function(a){if(a&&!t){t=a;a.$On($JssorPlayer$.Ce,x)}};p&&b.Oc(p);g=b.gb();b.Oc(q);j=g+q.dc;e=g+q.Yb;d=b.gb()}function Zb(g,f){var e=x>0?x:gb,c=Bb*f*(e&1),d=Cb*f*(e>>1&1);c=b.round(c);d=b.round(d);a.E(g,c);a.G(g,d)}function Pb(){pb=O;Kb=z.Sd();G=w.db()}function gc(){Pb();if(B||!F&&E&12){z.rb();o.n(h.De)}}function ec(e){if(!B&&(F||!(E&12))&&!z.$IsPlaying()){var c=w.db(),a=b.ceil(G);if(e&&b.abs(H)>=f.$MinDragOffsetToSlide){a=b.ceil(c);a+=eb}if(!(D&1))a=b.min(r-u,b.max(a,0));var d=b.abs(a-c);d=1-b.pow(1-d,5);if(!M&&pb)z.Ke(Kb);else if(c==a){tb.Yd();tb.pc()}else z.ic(c,a,d*Vb)}}function Ib(b){!a.j(a.yc(b),"nodrag")&&a.bc(b)}function uc(a){Yb(a,1)}function Yb(b,d){b=a.vd(b);var k=a.yc(b);if(!L&&!a.j(k,"nodrag")&&vc()&&(!d||b.touches.length==1)){B=c;Ab=i;R=j;a.e(e,d?"touchmove":"mousemove",Db);a.T();M=0;gc();if(!pb)x=0;if(d){var g=b.touches[0];vb=g.clientX;wb=g.clientY}else{var f=a.Qd(b);vb=f.x;wb=f.y}H=0;bb=0;eb=0;o.n(h.$EVT_DRAG_START,t(G),G,b)}}function Db(e){if(B){e=a.vd(e);var f;if(e.type!="mousemove"){var l=e.touches[0];f={x:l.clientX,y:l.clientY}}else f=a.Qd(e);if(f){var j=f.x-vb,k=f.y-wb;if(b.floor(G)!=G)x=x||gb&L;if((j||k)&&!x){if(L==3)if(b.abs(k)>b.abs(j))x=2;else x=1;else x=L;if(jb&&x==1&&b.abs(k)-b.abs(j)>3)Ab=c}if(x){var d=k,i=Cb;if(x==1){d=j;i=Bb}if(!(D&1)){if(d>0){var g=i*s,h=d-g;if(h>0)d=g+b.sqrt(h)*5}if(d<0){var g=i*(r-u-s),h=-d-g;if(h>0)d=-g-b.sqrt(h)*5}}if(H-bb<-2)eb=0;else if(H-bb>2)eb=-1;bb=H;H=d;sb=G-H/i/(Z||1);if(H&&x&&!Ab){a.bc(e);if(!O)z.je(sb);else z.le(sb)}}}}}function mb(){sc();if(B){B=i;a.T();a.R(e,"mousemove",Db);a.R(e,"touchmove",Db);M=H;z.rb();var b=w.db();o.n(h.$EVT_DRAG_END,t(b),b,t(G),G);E&12&&Pb();ec(c)}}function kc(c){if(M){a.Kg(c);var b=a.yc(c);while(b&&v!==b){b.tagName=="A"&&a.bc(c);try{b=b.parentNode}catch(d){break}}}}function oc(a){C[s];s=t(a);tb=C[s];Ub(a);return s}function Gc(a,b){x=0;oc(a);o.n(h.$EVT_PARK,t(a),b)}function Ub(b,c){yb=b;a.c(S,function(a){a.Mc(t(b),b,c)})}function vc(){var b=h.ed||0,a=Y;if(jb)a&1&&(a&=1);h.ed|=a;return L=a&~b}function sc(){if(L){h.ed&=~Y;L=0}}function Xb(){var b=a.mb();a.bb(b,V);a.z(b,"absolute");return b}function t(a){return(a%r+r)%r}function lc(a,c){if(c)if(!D){a=b.min(b.max(a+yb,0),r-u);c=i}else if(D&2){a=t(a+yb);c=i}nb(a,f.$SlideDuration,c)}function zb(){a.c(S,function(a){a.Jc(a.Jb.$ChanceToShow<=F)})}function ic(){if(!F){F=1;zb();if(!B){E&12&&ec();E&3&&C[s].pc()}}}function hc(){if(F){F=0;zb();B||!(E&12)||gc()}}function jc(){V={N:K,P:J,$Top:0,$Left:0};a.c(T,function(b){a.bb(b,V);a.z(b,"absolute");a.ib(b,"hidden");a.S(b)});a.bb(cb,V)}function lb(b,a){nb(b,a,c)}function nb(g,e,l){if(Rb&&(!B&&(F||!(E&12))||f.$NaviQuitDrag)){O=c;B=i;z.rb();if(e==k)e=Vb;var d=Eb.yb(),a=g;if(l){a=d+g;if(g>0)a=b.ceil(a);else a=b.floor(a)}if(D&2)a=t(a);if(!(D&1))a=b.max(0,b.min(a,r-u));var j=(a-d)%r;a=d+j;var h=d==a?0:e*b.abs(j);h=b.min(h,e*u*1.5);z.ic(d,a,h||1)}}o.$PlayTo=nb;o.$GoTo=function(a){w.v(a)};o.$Next=function(){lb(1)};o.$Prev=function(){lb(-1)};o.$Pause=function(){P=i};o.$Play=function(){if(!P){P=c;C[s]&&C[s].pc()}};o.$SetSlideshowTransitions=function(a){f.$SlideshowOptions.$Transitions=a};o.$SetCaptionTransitions=function(b){I.$Transitions=b;I.rc=a.T()};o.$SlidesCount=function(){return T.length};o.$CurrentIndex=function(){return s};o.$IsAutoPlaying=function(){return P};o.$IsDragging=function(){return B};o.$IsSliding=function(){return O};o.$IsMouseOver=function(){return!F};o.$LastDragSucceded=function(){return M};function X(){return a.l(y||q)}function ib(){return a.m(y||q)}o.$OriginalWidth=o.$GetOriginalWidth=X;o.$OriginalHeight=o.$GetOriginalHeight=ib;function Gb(c,d){if(c==k)return a.l(q);if(!y){var b=a.mb(e);a.Zc(b,a.Zc(q));a.Nb(b,a.Nb(q));a.Y(b,"block");a.z(b,"relative");a.G(b,0);a.E(b,0);a.ib(b,"visible");y=a.mb(e);a.z(y,"absolute");a.G(y,0);a.E(y,0);a.l(y,a.l(q));a.m(y,a.m(q));a.Sc(y,"0 0");a.H(y,b);var h=a.O(q);a.H(q,y);a.W(q,"backgroundImage","");a.c(h,function(c){a.H(a.j(c,"noscale")?q:b,c);a.j(c,"autocenter")&&Lb.push(c)})}Z=c/(d?a.m:a.l)(y);a.sg(y,Z);var g=d?Z*X():c,f=d?c:Z*ib();a.l(q,g);a.m(q,f);a.c(Lb,function(b){var c=a.Kb(a.j(b,"autocenter"));a.Oe(b,c)})}o.$ScaleHeight=o.$GetScaleHeight=function(b){if(b==k)return a.m(q);Gb(b,c)};o.$ScaleWidth=o.$SetScaleWidth=o.$GetScaleWidth=Gb;o.Ed=function(a){var d=b.ceil(t(fb/bc)),c=t(a-s+d);if(c>u){if(a-s>r/2)a-=r;else if(a-s<=-r/2)a+=r}else a=s+c-d;return a};m.call(o);o.$Elmt=q=a.qb(q);var f=a.p({$FillMode:0,$LazyLoading:1,$ArrowKeyNavigation:1,$StartIndex:0,$AutoPlay:i,$Loop:1,$NaviQuitDrag:c,$AutoPlaySteps:1,$AutoPlayInterval:3e3,$PauseOnHover:1,$SlideDuration:500,$SlideEasing:d.$EaseOutQuad,$MinDragOffsetToSlide:20,$SlideSpacing:0,$Cols:1,$Align:0,$UISearchMode:1,$PlayOrientation:1,$DragOrientation:1},fc);if(f.$Idle!=k)f.$AutoPlayInterval=f.$Idle;if(f.$DisplayPieces!=k)f.$Cols=f.$DisplayPieces;if(f.$ParkingPosition!=k)f.$Align=f.$ParkingPosition;var gb=f.$PlayOrientation&3,wc=(f.$PlayOrientation&4)/-4||1,db=f.$SlideshowOptions,I=a.p({$Class:p,$PlayInMode:1,$PlayOutMode:1},f.$CaptionSliderOptions);I.$Transitions=I.$Transitions||I.$CaptionTransitions;var qb=f.$BulletNavigatorOptions,W=f.$ArrowNavigatorOptions,ab=f.$ThumbnailNavigatorOptions,Q=!f.$UISearchMode,y,v=a.D(q,"slides",Q),cb=a.D(q,"loading",Q)||a.mb(e),Jb=a.D(q,"navigator",Q),cc=a.D(q,"arrowleft",Q),ac=a.D(q,"arrowright",Q),Hb=a.D(q,"thumbnavigator",Q),nc=a.l(v),mc=a.m(v),V,T=[],xc=a.O(v);a.c(xc,function(b){if(b.tagName=="DIV"&&!a.j(b,"u"))T.push(b);else a.V()&&a.J(b,(a.J(b)||0)+1)});var s=-1,yb,tb,r=T.length,K=f.$SlideWidth||nc,J=f.$SlideHeight||mc,Wb=f.$SlideSpacing,Bb=K+Wb,Cb=J+Wb,bc=gb&1?Bb:Cb,u=b.min(f.$Cols,r),hb,x,L,Ab,S=[],Qb,Sb,Ob,dc,Fc,P,E=f.$PauseOnHover,pc=f.$AutoPlayInterval,Vb=f.$SlideDuration,rb,ub,fb,Rb=u<r,D=Rb?f.$Loop:0,Y,M,F=1,O,B,R,vb=0,wb=0,H,bb,eb,Eb,w,U,z,Tb=new rc,Z,Lb=[];P=f.$AutoPlay;o.Jb=fc;jc();a.C(q,"jssor-slider",c);a.J(v,a.J(v)||0);a.z(v,"absolute");hb=a.X(v,c);a.Pb(hb,v);if(db){dc=db.$ShowLink;rb=db.$Class;ub=u==1&&r>1&&rb&&(!a.Jd()||a.sd()>=8)}fb=ub||u>=r||!(D&1)?0:f.$Align;Y=(u>1||fb?gb:-1)&f.$DragOrientation;var xb=v,C=[],A,N,Fb=a.Pg(),jb=Fb.Rg,G,pb,Kb,sb;Fb.Bd&&a.W(xb,Fb.Bd,([j,"pan-y","pan-x","none"])[Y]||"");U=new Cc;if(ub)A=new rb(Tb,K,J,db,jb);a.H(hb,U.Mb);a.ib(v,"hidden");N=Xb();a.W(N,"backgroundColor","#000");a.Ab(N,0);a.Pb(N,xb.firstChild,xb);for(var ob=0;ob<T.length;ob++){var zc=T[ob],Ac=new Bc(zc,ob);C.push(Ac)}a.S(cb);Eb=new Dc;z=new qc(Eb,U);if(Y){a.e(v,"mousedown",Yb);a.e(v,"touchstart",uc);a.e(v,"dragstart",Ib);a.e(v,"selectstart",Ib);a.e(e,"mouseup",mb);a.e(e,"touchend",mb);a.e(e,"touchcancel",mb);a.e(g,"blur",mb)}E&=jb?10:5;if(Jb&&qb){Qb=new qb.$Class(Jb,qb,X(),ib());S.push(Qb)}if(W&&cc&&ac){W.$Loop=D;W.$Cols=u;Sb=new W.$Class(cc,ac,W,X(),ib());S.push(Sb)}if(Hb&&ab){ab.$StartIndex=f.$StartIndex;Ob=new ab.$Class(Hb,ab);S.push(Ob)}a.c(S,function(a){a.Gc(r,C,cb);a.$On(n.fc,lc)});a.W(q,"visibility","visible");Gb(X());a.e(v,"click",kc);a.e(q,"mouseout",a.Ib(ic,q));a.e(q,"mouseover",a.Ib(hc,q));zb();f.$ArrowKeyNavigation&&a.e(e,"keydown",function(a){if(a.keyCode==37)lb(-f.$ArrowKeyNavigation);else a.keyCode==39&&lb(f.$ArrowKeyNavigation)});var kb=f.$StartIndex;if(!(D&1))kb=b.max(0,b.min(kb,r-u));z.ic(kb,kb,0)};h.$EVT_CLICK=21;h.$EVT_DRAG_START=22;h.$EVT_DRAG_END=23;h.$EVT_SWIPE_START=24;h.$EVT_SWIPE_END=25;h.$EVT_LOAD_START=26;h.$EVT_LOAD_END=27;h.De=28;h.$EVT_POSITION_CHANGE=202;h.$EVT_PARK=203;h.$EVT_SLIDESHOW_START=206;h.$EVT_SLIDESHOW_END=207;h.$EVT_PROGRESS_CHANGE=208;h.$EVT_STATE_CHANGE=209;var n={fc:1};g.$JssorBulletNavigator$=function(e,C){var f=this;m.call(f);e=a.qb(e);var s,A,z,r,l=0,d,o,k,w,x,h,g,q,p,B=[],y=[];function v(a){a!=-1&&y[a].jd(a==l)}function t(a){f.n(n.fc,a*o)}f.$Elmt=e;f.Mc=function(a){if(a!=r){var d=l,c=b.floor(a/o);l=c;r=a;v(d);v(c)}};f.Jc=function(b){a.A(e,b)};var u;f.Gc=function(E){if(!u){s=b.ceil(E/o);l=0;var n=q+w,r=p+x,m=b.ceil(s/k)-1;A=q+n*(!h?m:k-1);z=p+r*(h?m:k-1);a.l(e,A);a.m(e,z);for(var f=0;f<s;f++){var C=a.Cg();a.ug(C,f+1);var i=a.Xc(g,"numbertemplate",C,c);a.z(i,"absolute");var v=f%(m+1);a.E(i,!h?n*v:f%k*n);a.G(i,h?r*v:b.floor(f/(m+1))*r);a.H(e,i);B[f]=i;d.$ActionMode&1&&a.e(i,"click",a.K(j,t,f));d.$ActionMode&2&&a.e(i,"mouseover",a.Ib(a.K(j,t,f),i));y[f]=a.ac(i)}u=c}};f.Jb=d=a.p({$SpacingX:10,$SpacingY:10,$Orientation:1,$ActionMode:1},C);g=a.D(e,"prototype");q=a.l(g);p=a.m(g);a.Hb(g,e);o=d.$Steps||1;k=d.$Lanes||1;w=d.$SpacingX;x=d.$SpacingY;h=d.$Orientation-1;d.$Scale==i&&a.C(e,"noscale",c);d.$AutoCenter&&a.C(e,"autocenter",d.$AutoCenter)};g.$JssorArrowNavigator$=function(b,g,h){var d=this;m.call(d);var r,q,e,f,k;a.l(b);a.m(b);function l(a){d.n(n.fc,a,c)}function p(c){a.A(b,c||!h.$Loop&&e==0);a.A(g,c||!h.$Loop&&e>=q-h.$Cols);r=c}d.Mc=function(b,a,c){if(c)e=a;else{e=b;p(r)}};d.Jc=p;var o;d.Gc=function(d){q=d;e=0;if(!o){a.e(b,"click",a.K(j,l,-k));a.e(g,"click",a.K(j,l,k));a.ac(b);a.ac(g);o=c}};d.Jb=f=a.p({$Steps:1},h);k=f.$Steps;if(f.$Scale==i){a.C(b,"noscale",c);a.C(g,"noscale",c)}if(f.$AutoCenter){a.C(b,"autocenter",f.$AutoCenter);a.C(g,"autocenter",f.$AutoCenter)}};g.$JssorThumbnailNavigator$=function(g,C){var l=this,z,q,d,w=[],A,y,e,r,s,v,u,p,t,f,o;m.call(l);g=a.qb(g);function B(m,f){var g=this,b,k,i;function p(){k.jd(q==f)}function h(d){if(d||!t.$LastDragSucceded()){var a=e-f%e,b=t.Ed((f+a)/e-1),c=b*e+e-a;l.n(n.fc,c)}}g.nb=f;g.bd=p;i=m.Ee||m.cc||a.mb();g.Mb=b=a.Xc(o,"thumbnailtemplate",i,c);k=a.ac(b);d.$ActionMode&1&&a.e(b,"click",a.K(j,h,0));d.$ActionMode&2&&a.e(b,"mouseover",a.Ib(a.K(j,h,1),b))}l.Mc=function(c,d,f){var a=q;q=c;a!=-1&&w[a].bd();w[c].bd();!f&&t.$PlayTo(t.Ed(b.floor(d/e)))};l.Jc=function(b){a.A(g,b)};var x;l.Gc=function(F,C){if(!x){z=F;b.ceil(z/e);q=-1;p=b.min(p,C.length);var j=d.$Orientation&1,m=v+(v+r)*(e-1)*(1-j),l=u+(u+s)*(e-1)*j,o=m+(m+r)*(p-1)*j,n=l+(l+s)*(p-1)*(1-j);a.z(f,"absolute");a.ib(f,"hidden");d.$AutoCenter&1&&a.E(f,(A-o)/2);d.$AutoCenter&2&&a.G(f,(y-n)/2);a.l(f,o);a.m(f,n);var k=[];a.c(C,function(l,g){var h=new B(l,g),d=h.Mb,c=b.floor(g/e),i=g%e;a.E(d,(v+r)*i*(1-j));a.G(d,(u+s)*i*j);if(!k[c]){k[c]=a.mb();a.H(f,k[c])}a.H(k[c],d);w.push(h)});var E=a.p({$AutoPlay:i,$NaviQuitDrag:i,$SlideWidth:m,$SlideHeight:l,$SlideSpacing:r*j+s*(1-j),$MinDragOffsetToSlide:12,$SlideDuration:200,$PauseOnHover:1,$PlayOrientation:d.$Orientation,$DragOrientation:d.$NoDrag||d.$DisableDrag?0:d.$Orientation},d);t=new h(g,E);x=c}};l.Jb=d=a.p({$SpacingX:0,$SpacingY:0,$Cols:1,$Orientation:1,$AutoCenter:3,$ActionMode:1},C);if(d.$DisplayPieces!=k)d.$Cols=d.$DisplayPieces;if(d.$Rows!=k)d.$Lanes=d.$Rows;A=a.l(g);y=a.m(g);f=a.D(g,"slides",c);o=a.D(f,"prototype");v=a.l(o);u=a.m(o);a.Hb(o,f);e=d.$Lanes||1;r=d.$SpacingX;s=d.$SpacingY;p=d.$Cols;d.$Scale==i&&a.C(g,"noscale",c)};function p(e,d,c){var b=this;l.call(b,0,c);b.jb=a.kd;b.dc=0;b.Yb=c}g.$JssorCaptionSlider$=function(h,f,i){var c=this;l.call(c,0,0);var e,d;function g(p,h,f){var c=this,g,n=f?h.$PlayInMode:h.$PlayOutMode,e=h.$Transitions,o={ab:"t",$Delay:"d",$Duration:"du",x:"x",y:"y",$Rotate:"r",$Zoom:"z",$Opacity:"f",Gb:"b"},d={kb:function(b,a){if(!isNaN(a.sb))b=a.sb;else b*=a.Kf;return b},$Opacity:function(b,a){return this.kb(b-1,a)}};d.$Zoom=d.$Opacity;l.call(c,0,0);function j(r,m){var l=[],i,k=[],c=[];function h(c,d){var b={};a.c(o,function(g,h){var e=a.j(c,g+(d||""));if(e){var f={};if(g=="t")f.sb=e;else if(e.indexOf("%")+1)f.Kf=a.Nc(e)/100;else f.sb=a.Nc(e);b[h]=f}});return b}function p(){return e[b.floor(b.random()*e.length)]}function g(f){var h;if(f=="*")h=p();else if(f){var d=e[a.Kb(f)]||e[f];if(a.uc(d)){if(f!=i){i=f;c[f]=0;k[f]=d[b.floor(b.random()*d.length)]}else c[f]++;d=k[f];if(a.uc(d)){d=d.length&&d[c[f]%d.length];if(a.uc(d))d=d[b.floor(b.random()*d.length)]}}h=d;if(a.ud(h))h=g(h)}return h}var q=a.O(r);a.c(q,function(b){var c=[];c.$Elmt=b;var e=a.j(b,"u")=="caption";a.c(f?[0,3]:[2],function(l,o){if(e){var k,f;if(l!=2||!a.j(b,"t3")){f=h(b,l);if(l==2&&!f.ab){f.$Delay=f.$Delay||{sb:0};f=a.p(h(b,0),f)}}if(f&&f.ab){k=g(f.ab.sb);if(k){var i=a.p({$Delay:0},k);a.c(f,function(c,a){var b=(d[a]||d.kb).apply(d,[i[a],f[a]]);if(!isNaN(b))i[a]=b});if(!o)if(f.Gb)i.Gb=f.Gb.sb||0;else if(n&2)i.Gb=0}}c.push(i)}if(m%2&&!o)c.O=j(b,m+1)});l.push(c)});return l}function m(w,c,z){var g={$Easing:c.$Easing,$Round:c.$Round,$During:c.$During,$Reverse:f&&!z},m=w,r=a.Yc(w),k=a.l(m),j=a.m(m),y=a.l(r),x=a.m(r),h={},e={},i=c.$ScaleClip||1;if(c.$Opacity)e.$Opacity=1-c.$Opacity;g.$OriginalWidth=k;g.$OriginalHeight=j;if(c.$Zoom||c.$Rotate){e.$Zoom=(c.$Zoom||2)-2;if(a.V()||a.tc())e.$Zoom=b.min(e.$Zoom,1);h.$Zoom=1;var B=c.$Rotate||0;e.$Rotate=B*360;h.$Rotate=0}else if(c.$Clip){var s={$Top:0,$Right:k,$Bottom:j,$Left:0},v=a.p({},s),d=v.wb={},u=c.$Clip&4,p=c.$Clip&8,t=c.$Clip&1,q=c.$Clip&2;if(u&&p){d.$Top=j/2*i;d.$Bottom=-d.$Top}else if(u)d.$Bottom=-j*i;else if(p)d.$Top=j*i;if(t&&q){d.$Left=k/2*i;d.$Right=-d.$Left}else if(t)d.$Right=-k*i;else if(q)d.$Left=k*i;g.$Move=c.$Move;e.$Clip=v;h.$Clip=s}var n=0,o=0;if(c.x)n-=y*c.x;if(c.y)o-=x*c.y;if(n||o||g.$Move){e.$Left=n;e.$Top=o}var A=c.$Duration;h=a.p(h,a.xe(m,e));g.xc=a.Pc();return new l(c.$Delay,A,g,m,h,e)}function i(b,d){a.c(d,function(d){var a,h=d.$Elmt,e=d[0],j=d[1];if(e){a=m(h,e);e.Gb==k&&a.$Shift(b);b=a.gb()}b=i(b,d.O);if(j){var f=m(h,j,1);f.$Shift(b);c.I(f);g.I(f)}a&&c.I(a)});return b}c.jb=function(){c.v(c.gb()*(f||0));g.v(0)};g=new l(0,0);i(0,n?j(p,1):[])}c.jb=function(){d.jb();e.jb()};e=new g(h,f,1);c.dc=e.gb();c.Yb=c.dc+i;d=new g(h,f);d.$Shift(c.Yb);c.I(d);c.I(e)};g.$JssorCaptionSlideo$=function(n,g,m){var b=this,o,h={},i=g.$Transitions,d=new l(0,0);l.call(b,0,0);function j(d,c){var b={};a.c(d,function(d,f){var e=h[f];if(e){if(a.yg(d))d=j(d,c||f=="e");else if(c)if(a.Zb(d))d=o[d];b[e]=d}});return b}function k(e,c){var b=[],d=a.O(e);a.c(d,function(d){var h=a.j(d,"u")=="caption";if(h){var e=a.j(d,"t"),g=i[a.Kb(e)]||i[e],f={$Elmt:d,ab:g};b.push(f)}if(c<5)b=b.concat(k(d,c+1))});return b}function r(c,e,b){a.c(e,function(f){var e=j(f),g={$Easing:a.Lc(e.$Easing),xc:a.Pc(),$OriginalWidth:b.N,$OriginalHeight:b.P},h=new l(f.b,f.d,g,c,b,e);d.I(h);b=a.Je(b,e)});return b}function q(b){a.c(b,function(e){var b=e.$Elmt,d=a.l(b),c=a.m(b),f={$Left:a.E(b),$Top:a.G(b),$Opacity:1,$ZIndex:a.J(b)||0,$Rotate:0,$RotateX:0,$RotateY:0,$ScaleX:1,$ScaleY:1,$TranslateX:0,$TranslateY:0,$TranslateZ:0,$SkewX:0,$SkewY:0,N:d,P:c,$Clip:{$Top:0,$Right:d,$Bottom:c,$Left:0}};r(b,e.ab,f)})}function t(g,f,h){var e=g.b-f;if(e){var a=new l(f,e);a.I(d,c);a.$Shift(h);b.I(a)}b.ye(g.d);return e}function s(f){var c=d.Fc(),e=0;a.c(f,function(d,f){d=a.p({d:m},d);t(d,c,e);c=d.b;e+=d.d;if(!f||d.t==2){b.dc=c;b.Yb=c+d.d}})}b.jb=function(){b.v(-1,c)};o=[f.$Swing,f.$Linear,f.$InQuad,f.$OutQuad,f.$InOutQuad,f.$InCubic,f.$OutCubic,f.$InOutCubic,f.$InQuart,f.$OutQuart,f.$InOutQuart,f.$InQuint,f.$OutQuint,f.$InOutQuint,f.$InSine,f.$OutSine,f.$InOutSine,f.$InExpo,f.$OutExpo,f.$InOutExpo,f.$InCirc,f.$OutCirc,f.$InOutCirc,f.$InElastic,f.$OutElastic,f.$InOutElastic,f.$InBack,f.$OutBack,f.$InOutBack,f.$InBounce,f.$OutBounce,f.$InOutBounce,f.$GoBack,f.$InWave,f.$OutWave,f.$OutJump,f.$InJump];var u={$Top:"y",$Left:"x",$Bottom:"m",$Right:"t",$Rotate:"r",$RotateX:"rX",$RotateY:"rY",$ScaleX:"sX",$ScaleY:"sY",$TranslateX:"tX",$TranslateY:"tY",$TranslateZ:"tZ",$SkewX:"kX",$SkewY:"kY",$Opacity:"o",$Easing:"e",$ZIndex:"i",$Clip:"c"};a.c(u,function(b,a){h[b]=a});q(k(n,1));d.v(-1);var p=g.$Breaks||[],e=[].concat(p[a.Kb(a.j(n,"b"))]||[]);e.push({b:d.gb(),d:e.length?0:m});s(e);b.v(-1)}})(window,document,Math,null,true,false)
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/no-jquery.html b/wrt/wrt_support/extensions_repo/banner_slide/no-jquery.html
new file mode 100755 (executable)
index 0000000..cbada91
--- /dev/null
@@ -0,0 +1,175 @@
+<!DOCTYPE html>\r
+<html>\r
+<head>\r
+    <meta charset="utf-8">\r
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">\r
+    <title></title>\r
+</head>\r
+<body style="padding:0px; margin:0px; background-color:#fff;">\r
+\r
+    <!-- #region Jssor Slider Begin -->\r
+\r
+    <!-- Jssor Slider is free under MIT license. -->\r
+    <!-- Development Reference http://www.jssor.com/development. -->\r
+    <!-- Jssor Slider Maker Start At $5 http://www.jssor.com/slider-maker. -->\r
+\r
+    <!-- This demo works independently without any other javascript library. -->\r
+\r
+    <script type="text/javascript" src="js/jssor.slider.min.js"></script>\r
+    <!-- use jssor.slider.debug.js instead for release -->\r
+    <script>\r
+        jssor_1_slider_init = function() {\r
+            \r
+            var jssor_1_SlideshowTransitions = [\r
+              {$Duration:500,x:-0.3,$During:{$Left:[0.0,1.0]},$Easing:{$Left:$Jease$.$InCubic,$Opacity:$Jease$.$Linear},$Opacity:2}\r
+            ];\r
+            \r
+            var jssor_1_options = {\r
+              $AutoPlay: true,\r
+              $SlideshowOptions: {\r
+                $Class: $JssorSlideshowRunner$,\r
+                $Transitions: jssor_1_SlideshowTransitions,\r
+                $TransitionsOrder: 1\r
+              },\r
+              $ArrowNavigatorOptions: {\r
+                $Class: $JssorArrowNavigator$\r
+              },\r
+              $BulletNavigatorOptions: {\r
+                $Class: $JssorBulletNavigator$\r
+              },\r
+              $ThumbnailNavigatorOptions: {\r
+                $Class: $JssorThumbnailNavigator$,\r
+                $Cols: 1,\r
+                $Align: 0\r
+              }\r
+            };\r
+            \r
+            var jssor_1_slider = new $JssorSlider$("jssor_1", jssor_1_options);\r
+            \r
+            //responsive code begin\r
+            //you can remove responsive code if you don't want the slider scales while window resizes\r
+            function ScaleSlider() {\r
+                var refSize = jssor_1_slider.$Elmt.parentNode.clientWidth;\r
+                if (refSize) {\r
+                    refSize = Math.min(refSize, 480);\r
+                    jssor_1_slider.$ScaleWidth(refSize);\r
+                }\r
+                else {\r
+                    window.setTimeout(ScaleSlider, 30);\r
+                }\r
+            }\r
+            ScaleSlider();\r
+            $Jssor$.$AddEvent(window, "load", ScaleSlider);\r
+            $Jssor$.$AddEvent(window, "resize", $Jssor$.$WindowResizeFilter(window, ScaleSlider));\r
+            $Jssor$.$AddEvent(window, "orientationchange", ScaleSlider);\r
+            //responsive code end\r
+        };\r
+    </script>\r
+\r
+    <style>\r
+        \r
+        /* jssor slider bullet navigator skin 01 css */\r
+        /*\r
+        .jssorb01 div           (normal)\r
+        .jssorb01 div:hover     (normal mouseover)\r
+        .jssorb01 .av           (active)\r
+        .jssorb01 .av:hover     (active mouseover)\r
+        .jssorb01 .dn           (mousedown)\r
+        */\r
+        .jssorb01 {\r
+            position: absolute;\r
+        }\r
+        .jssorb01 div, .jssorb01 div:hover, .jssorb01 .av {\r
+            position: absolute;\r
+            /* size of bullet elment */\r
+            width: 12px;\r
+            height: 12px;\r
+            filter: alpha(opacity=70);\r
+            opacity: .7;\r
+            overflow: hidden;\r
+            cursor: pointer;\r
+            border: #000 1px solid;\r
+        }\r
+        .jssorb01 div { background-color: gray; }\r
+        .jssorb01 div:hover, .jssorb01 .av:hover { background-color: #d3d3d3; }\r
+        .jssorb01 .av { background-color: #fff; }\r
+        .jssorb01 .dn, .jssorb01 .dn:hover { background-color: #555555; }\r
+\r
+        /* jssor slider arrow navigator skin 05 css */\r
+        /*\r
+        .jssora05l                  (normal)\r
+        .jssora05r                  (normal)\r
+        .jssora05l:hover            (normal mouseover)\r
+        .jssora05r:hover            (normal mouseover)\r
+        .jssora05l.jssora05ldn      (mousedown)\r
+        .jssora05r.jssora05rdn      (mousedown)\r
+        */\r
+        .jssora05l, .jssora05r {\r
+            display: block;\r
+            position: absolute;\r
+            /* size of arrow element */\r
+            width: 40px;\r
+            height: 40px;\r
+            cursor: pointer;\r
+            background: url('img/a17.png') no-repeat;\r
+            overflow: hidden;\r
+        }\r
+        .jssora05l { background-position: -10px -40px; }\r
+        .jssora05r { background-position: -70px -40px; }\r
+        .jssora05l:hover { background-position: -130px -40px; }\r
+        .jssora05r:hover { background-position: -190px -40px; }\r
+        .jssora05l.jssora05ldn { background-position: -250px -40px; }\r
+        .jssora05r.jssora05rdn { background-position: -310px -40px; }\r
+\r
+        /* jssor slider thumbnail navigator skin 09 css */\r
+        \r
+        .jssort09-600-45 .p {\r
+            position: absolute;\r
+            top: 0;\r
+            left: 0;\r
+            width: 600px;\r
+            height: 45px;\r
+        }\r
+        \r
+        .jssort09-600-45 .t {\r
+            font-family: verdana;\r
+            font-weight: normal;\r
+            position: absolute;\r
+            width: 100%;\r
+            height: 100%;\r
+            top: 0;\r
+            left: 0;\r
+            color:#fff;\r
+            line-height: 45px;\r
+            font-size: 20px;\r
+            padding-left: 10px;\r
+        }\r
+        \r
+    </style>\r
+\r
+\r
+    <div id="jssor_1" style="position: relative; margin: 0 auto; top: 0px; left: 0px; width: 480px; height: 80px; overflow: hidden; visibility: hidden;">\r
+        <!-- Loading Screen -->\r
+        <div data-u="loading" style="position: absolute; top: 0px; left: 0px;">\r
+            <div style="filter: alpha(opacity=70); opacity: 0.7; position: absolute; display: block; top: 0px; left: 0px; width: 100%; height: 100%;"></div>\r
+            <div style="position:absolute;display:block;background:url('img/loading.gif') no-repeat center center;top:0px;left:0px;width:100%;height:100%;"></div>\r
+        </div>\r
+        <div data-u="slides" style="cursor: default; position: relative; top: 0px; left: 0px; width: 480px; height: 80px; overflow: hidden;">\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/gear_s2.jpg" />\r
+            </div>\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/tizen_z3.jpg" />\r
+            </div>\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/soscon.jpg" />\r
+            </div>\r
+        </div>\r
+    </div>\r
+    <script>\r
+        jssor_1_slider_init();\r
+    </script>\r
+\r
+    <!-- #endregion Jssor Slider End -->\r
+</body>\r
+</html>\r
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/package.json b/wrt/wrt_support/extensions_repo/banner_slide/package.json
new file mode 100644 (file)
index 0000000..178c200
--- /dev/null
@@ -0,0 +1,11 @@
+{
+  "name": "banner_slide",
+  "version": "0.0.0",
+  "main": "banner_slide",
+  "description": "Banner Slider by Jssor",
+  "repository": "localhost",
+  "developer": {
+    "name": "Jssor",
+    "url": "http://www.jssor.com"
+  }
+}
diff --git a/wrt/wrt_support/extensions_repo/banner_slide/with-jquery.html b/wrt/wrt_support/extensions_repo/banner_slide/with-jquery.html
new file mode 100755 (executable)
index 0000000..a00f98f
--- /dev/null
@@ -0,0 +1,200 @@
+<!DOCTYPE html>\r
+<html>\r
+<head>\r
+    <meta charset="utf-8">\r
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">\r
+    <title></title>\r
+</head>\r
+<body style="padding:0px; margin:0px; background-color:#fff;">\r
+\r
+    <!-- #region Jssor Slider Begin -->\r
+\r
+    <!-- Jssor Slider is free under MIT license. -->\r
+    <!-- Development Reference http://www.jssor.com/development. -->\r
+    <!-- Jssor Slider Maker Start At $5 http://www.jssor.com/slider-maker. -->\r
+\r
+    <!-- This demo works with jquery library -->\r
+\r
+    <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>\r
+    <script type="text/javascript" src="js/jssor.slider.mini.js"></script>\r
+    <!-- use jssor.slider.debug.js instead for release -->\r
+    <script>\r
+        jQuery(document).ready(function ($) {\r
+            \r
+            var jssor_1_SlideshowTransitions = [\r
+              {$Duration:1200,x:-0.3,$During:{$Left:[0.3,0.7]},$Easing:{$Left:$Jease$.$InCubic,$Opacity:$Jease$.$Linear},$Opacity:2},\r
+              {$Duration:1200,x:0.3,$SlideOut:true,$Easing:{$Left:$Jease$.$InCubic,$Opacity:$Jease$.$Linear},$Opacity:2}\r
+            ];\r
+            \r
+            var jssor_1_options = {\r
+              $AutoPlay: true,\r
+              $SlideshowOptions: {\r
+                $Class: $JssorSlideshowRunner$,\r
+                $Transitions: jssor_1_SlideshowTransitions,\r
+                $TransitionsOrder: 1\r
+              },\r
+              $ArrowNavigatorOptions: {\r
+                $Class: $JssorArrowNavigator$\r
+              },\r
+              $BulletNavigatorOptions: {\r
+                $Class: $JssorBulletNavigator$\r
+              },\r
+              $ThumbnailNavigatorOptions: {\r
+                $Class: $JssorThumbnailNavigator$,\r
+                $Cols: 1,\r
+                $Align: 0\r
+              }\r
+            };\r
+            \r
+            var jssor_1_slider = new $JssorSlider$("jssor_1", jssor_1_options);\r
+            \r
+            //responsive code begin\r
+            //you can remove responsive code if you don't want the slider scales while window resizes\r
+            function ScaleSlider() {\r
+                var refSize = jssor_1_slider.$Elmt.parentNode.clientWidth;\r
+                if (refSize) {\r
+                    refSize = Math.min(refSize, 600);\r
+                    jssor_1_slider.$ScaleWidth(refSize);\r
+                }\r
+                else {\r
+                    window.setTimeout(ScaleSlider, 30);\r
+                }\r
+            }\r
+            ScaleSlider();\r
+            $(window).bind("load", ScaleSlider);\r
+            $(window).bind("resize", ScaleSlider);\r
+            $(window).bind("orientationchange", ScaleSlider);\r
+            //responsive code end\r
+        });\r
+    </script>\r
+\r
+    <style>\r
+        \r
+        /* jssor slider bullet navigator skin 01 css */\r
+        /*\r
+        .jssorb01 div           (normal)\r
+        .jssorb01 div:hover     (normal mouseover)\r
+        .jssorb01 .av           (active)\r
+        .jssorb01 .av:hover     (active mouseover)\r
+        .jssorb01 .dn           (mousedown)\r
+        */\r
+        .jssorb01 {\r
+            position: absolute;\r
+        }\r
+        .jssorb01 div, .jssorb01 div:hover, .jssorb01 .av {\r
+            position: absolute;\r
+            /* size of bullet elment */\r
+            width: 12px;\r
+            height: 12px;\r
+            filter: alpha(opacity=70);\r
+            opacity: .7;\r
+            overflow: hidden;\r
+            cursor: pointer;\r
+            border: #000 1px solid;\r
+        }\r
+        .jssorb01 div { background-color: gray; }\r
+        .jssorb01 div:hover, .jssorb01 .av:hover { background-color: #d3d3d3; }\r
+        .jssorb01 .av { background-color: #fff; }\r
+        .jssorb01 .dn, .jssorb01 .dn:hover { background-color: #555555; }\r
+\r
+        /* jssor slider arrow navigator skin 05 css */\r
+        /*\r
+        .jssora05l                  (normal)\r
+        .jssora05r                  (normal)\r
+        .jssora05l:hover            (normal mouseover)\r
+        .jssora05r:hover            (normal mouseover)\r
+        .jssora05l.jssora05ldn      (mousedown)\r
+        .jssora05r.jssora05rdn      (mousedown)\r
+        */\r
+        .jssora05l, .jssora05r {\r
+            display: block;\r
+            position: absolute;\r
+            /* size of arrow element */\r
+            width: 40px;\r
+            height: 40px;\r
+            cursor: pointer;\r
+            background: url('img/a17.png') no-repeat;\r
+            overflow: hidden;\r
+        }\r
+        .jssora05l { background-position: -10px -40px; }\r
+        .jssora05r { background-position: -70px -40px; }\r
+        .jssora05l:hover { background-position: -130px -40px; }\r
+        .jssora05r:hover { background-position: -190px -40px; }\r
+        .jssora05l.jssora05ldn { background-position: -250px -40px; }\r
+        .jssora05r.jssora05rdn { background-position: -310px -40px; }\r
+\r
+        /* jssor slider thumbnail navigator skin 09 css */\r
+        \r
+        .jssort09-600-45 .p {\r
+            position: absolute;\r
+            top: 0;\r
+            left: 0;\r
+            width: 600px;\r
+            height: 45px;\r
+        }\r
+        \r
+        .jssort09-600-45 .t {\r
+            font-family: verdana;\r
+            font-weight: normal;\r
+            position: absolute;\r
+            width: 100%;\r
+            height: 100%;\r
+            top: 0;\r
+            left: 0;\r
+            color:#fff;\r
+            line-height: 45px;\r
+            font-size: 20px;\r
+            padding-left: 10px;\r
+        }\r
+        \r
+    </style>\r
+\r
+\r
+    <div id="jssor_1" style="position: relative; margin: 0 auto; top: 0px; left: 0px; width: 600px; height: 300px; overflow: hidden; visibility: hidden;">\r
+        <!-- Loading Screen -->\r
+        <div data-u="loading" style="position: absolute; top: 0px; left: 0px;">\r
+            <div style="filter: alpha(opacity=70); opacity: 0.7; position: absolute; display: block; top: 0px; left: 0px; width: 100%; height: 100%;"></div>\r
+            <div style="position:absolute;display:block;background:url('img/loading.gif') no-repeat center center;top:0px;left:0px;width:100%;height:100%;"></div>\r
+        </div>\r
+        <div data-u="slides" style="cursor: default; position: relative; top: 0px; left: 0px; width: 600px; height: 300px; overflow: hidden;">\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/01.jpg" />\r
+                <div data-u="thumb">Do you notice it is draggable by mouse/finger?</div>\r
+            </div>\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/02.jpg" />\r
+                <div data-u="thumb">Did you drag by either horizontal or vertical?</div>\r
+            </div>\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/03.jpg" />\r
+                <div data-u="thumb">Do you notice navigator responses when drag?</div>\r
+            </div>\r
+            <div style="display: none;">\r
+                <img data-u="image" src="img/04.jpg" />\r
+                <div data-u="thumb">Do you notice arrow responses when click?</div>\r
+            </div>\r
+        </div>\r
+        <!-- Thumbnail Navigator -->\r
+        <div data-u="thumbnavigator" class="jssort09-600-45" style="position:absolute;bottom:0px;left:0px;width:600px;height:45px;">\r
+            <div style="position: absolute; top: 0; left: 0; width: 100%; height:100%; background-color: #000; filter:alpha(opacity=40.0); opacity:0.4;"></div>\r
+            <!-- Thumbnail Item Skin Begin -->\r
+            <div data-u="slides" style="cursor: default;">\r
+                <div data-u="prototype" class="p">\r
+                    <div data-u="thumbnailtemplate" class="t"></div>\r
+                </div>\r
+            </div>\r
+            <!-- Thumbnail Item Skin End -->\r
+        </div>\r
+        <!-- Bullet Navigator -->\r
+        <div data-u="navigator" class="jssorb01" style="bottom:16px;right:10px;">\r
+            <div data-u="prototype" style="width:12px;height:12px;"></div>\r
+        </div>\r
+        <!-- Arrow Navigator -->\r
+        <span data-u="arrowleft" class="jssora05l" style="top:123px;left:8px;width:40px;height:40px;" data-autocenter="2"></span>\r
+        <span data-u="arrowright" class="jssora05r" style="top:123px;right:8px;width:40px;height:40px;" data-autocenter="2"></span>\r
+        <a href="http://www.jssor.com" style="display:none">Jssor Slider</a>\r
+    </div>\r
+\r
+    <!-- #endregion Jssor Slider End -->\r
+</body>\r
+</html>\r
diff --git a/wrt/wrt_support/extensions_repo/chrome_installer/extractor.js b/wrt/wrt_support/extensions_repo/chrome_installer/extractor.js
new file mode 100755 (executable)
index 0000000..674fc56
--- /dev/null
@@ -0,0 +1,13 @@
+var fs = require('fs'),
+    unzip = require('unzip');
+
+module.exports = {
+    extract: function(destPath, appPackage, callback) {
+        var spawn = require('child_process').spawn;
+        var child = spawn('unzip', [appPackage,'-d', destPath]);
+        child.on('close', function () {
+            return callback(null);
+        });
+
+    }
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/chrome_installer/installmanager.js b/wrt/wrt_support/extensions_repo/chrome_installer/installmanager.js
new file mode 100755 (executable)
index 0000000..973185d
--- /dev/null
@@ -0,0 +1,39 @@
+'use strict';
+
+var path = require('path');
+
+var parser = require("./parser.js"),
+    extractor = require("./extractor.js"),
+    OWR_InstallerManager = require('../../OWR_InstallerManager'); // [Need fixed] the module should move to node_modules
+
+class WGT_InstallerManger extends OWR_InstallerManager {
+    constructor(config) {
+        super(config);
+    }
+
+    extractPackage(callback) {
+        var self = this;
+        extractor.extract(this.config.Path.temp, this.config.Path.package, function (error) {
+            if(error != undefined)
+                callback(error);
+            else
+                callback(null, self.config.Path.temp);
+        });
+    }
+
+    getApplicationData(callback) {
+        var self = this;
+        parser.parseApplicationData(path.join(this.config.Path.extractApp, 'manifest.json'), function (applicationData) {
+            callback(null, applicationData);
+        });
+    }
+
+    getPrivilegesData(callback) {
+        var self = this;
+        parser.parsePrivilegesData(path.join(this.config.Path.extractApp, 'manifest.json'), function (privilegesData) {
+            callback(null, privilegesData);
+        });
+    }
+}
+
+module.exports = WGT_InstallerManger;
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/chrome_installer/package.json b/wrt/wrt_support/extensions_repo/chrome_installer/package.json
new file mode 100644 (file)
index 0000000..152fa07
--- /dev/null
@@ -0,0 +1,8 @@
+{
+  "name": "chrome_installer",
+  "version": "0.0.1",
+  "main": "chrome_Installer",
+  "description": "Chrome installer extension",
+  "repository": "localhost",
+  "type": "installer"
+}
diff --git a/wrt/wrt_support/extensions_repo/chrome_installer/parser.js b/wrt/wrt_support/extensions_repo/chrome_installer/parser.js
new file mode 100755 (executable)
index 0000000..1f04890
--- /dev/null
@@ -0,0 +1,76 @@
+var fs = require('fs'),
+    crypto = require('crypto');
+
+function randomValue (len) {
+    return crypto.randomBytes(Math.ceil(len/2))
+        .toString('hex')
+        .slice(0, len);
+}
+
+function createApplicationData (data) {
+    var result ={
+        app_id: randomValue(10),
+        name: data.name,
+        version: data.version,
+        icon: data.icons["128"],
+    }
+
+    result.name = result.name.replace(/ /g, '');
+
+    if (data.app != undefined
+        && data.app.launch != undefined
+        && data.app.launch.web_url != undefined) {
+        result.content = data.app.launch.web_url;
+        result.type = 'hosted';
+    }else{
+        if(data.app != undefined
+            && data.app.launch != undefined
+            && data.app.launch.local_path != undefined){
+            result.content = data.app.launch.local_path;
+        }else{
+            result.content = 'main.html';
+        }
+        result.type = 'packaged';
+    }
+
+    return result;
+}
+
+function createPrivilegesData (data) {
+    var result ={};
+    var type='packaged';
+
+    if (data.app != undefined
+        && data.app.launch != undefined
+        && data.app.launch.web_url != undefined) {
+        type = 'hosted';
+    }
+
+    if(type != 'hosted'){
+        var permissions = data['permissions'];
+        result.privileges = [];
+
+        if( permissions != undefined && Array.isArray(permissions) ){
+            for (index in permissions){
+                result.privileges.push(permissions[index]);
+            }
+        }
+    }
+
+    return result;
+}
+
+module.exports = {
+    parseApplicationData : function (path, callback) {
+        var result = require(path);
+        if(typeof callback === 'function') {
+            callback(createApplicationData(result));
+        }
+    },
+    parsePrivilegesData : function (path, callback) {
+        var result = require(path);
+        if(typeof callback === 'function') {
+            callback(createPrivilegesData(result));
+        }
+    }
+};
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/IFrameBannerAds.htm b/wrt/wrt_support/extensions_repo/iframe_banner_ads/IFrameBannerAds.htm
new file mode 100644 (file)
index 0000000..b74eb27
--- /dev/null
@@ -0,0 +1,18 @@
+<html>
+<head>
+<title>IFrame Banner Ads</title>
+<style>
+body { font-family: Arial, Helvetica; background-color:none transparent; 
+color:rgb(255,255,255) }
+</style>
+</head>
+<body>
+<div width="100%" align="center">
+<iframe src="ad_1.htm" width="640px" height="80" 
+frameborder="0" marginwidth="0" marginheight="0" scrolling="no">
+Your browser does not support the IFRAME tag.
+</iframe>
+</div>
+<h1 align="center">Welcome to My Web Site!</h1>
+</body>
+</html>
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_1.htm b/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_1.htm
new file mode 100644 (file)
index 0000000..b987879
--- /dev/null
@@ -0,0 +1,14 @@
+<html>
+<head>
+<title>This is Advertisement 1</title>
+<link rel="stylesheet" type="text/css" href="ad_style.css">
+<meta http-equiv="refresh" content="1.5;URL=ad_2.htm">
+<meta http-equiv="Page-Exit" content="revealTrans(Duration=1.0,Transition=23)">
+</head>
+<body>
+<p align="center">
+<img border="0" src="image/gear_s2.jpg">
+</p>
+</body>
+</html>
+       
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_2.htm b/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_2.htm
new file mode 100644 (file)
index 0000000..e1307d9
--- /dev/null
@@ -0,0 +1,14 @@
+<html>
+<head>
+<title>This is Advertisement 2</title>
+<link rel="stylesheet" type="text/css" href="ad_style.css">
+<meta http-equiv="refresh" content="1.5;URL=ad_3.htm">
+<meta http-equiv="Page-Exit" content="revealTrans(Duration=1.0,Transition=23)">
+</head>
+<body>
+<p align="center">
+<img border="0" src="image/tizen_z3.jpg">
+</p>
+</body>
+</html>
+       
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_3.htm b/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_3.htm
new file mode 100644 (file)
index 0000000..cf2dfe7
--- /dev/null
@@ -0,0 +1,13 @@
+<html>
+<head>
+<title>This is Advertisement 3</title>
+<link rel="stylesheet" type="text/css" href="ad_style.css">
+<meta http-equiv="refresh" content="1.5;URL=ad_1.htm">
+<meta http-equiv="Page-Exit" content="revealTrans(Duration=1.0,Transition=23)">
+</head>
+<body>
+<p align="center">
+<img border="0" src="image/soscon.jpg">
+</p>
+</body>
+</html>
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_style.css b/wrt/wrt_support/extensions_repo/iframe_banner_ads/ad_style.css
new file mode 100644 (file)
index 0000000..91bcc8f
--- /dev/null
@@ -0,0 +1,4 @@
+a:link { color: rgb(0,102,153); }
+a:visited { color: rgb(0,153,102); } 
+a:active { color: rgb(0,102,102); }
+body { font-family: Arial, Helvetica; background-color:none transparent; }
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/iframe_banner_ads.js b/wrt/wrt_support/extensions_repo/iframe_banner_ads/iframe_banner_ads.js
new file mode 100644 (file)
index 0000000..03d02ef
--- /dev/null
@@ -0,0 +1,58 @@
+(function() {
+  var path = require('path');
+  var BrowserWindow = require('browser-window');
+  var TRIGGER_EVENT = 'was:webcontents:did-finish-load';
+
+  IFrameBannerAds = (function() {
+    function IFrameBannerAds(window_id) {
+      this.window_id_ = window_id;
+    }
+
+    IFrameBannerAds.prototype.show = function() {
+      var win = BrowserWindow.fromId(this.window_id_);
+      var title = win.getTitle().toUpperCase();
+      console.log("IFrameBannerAds - " + title);
+      if (title == "LAUNCHER" || title == "INSTALLER" || title == "EXTENSIONS SETTINGS") return;
+      var jsCode = "var tickerDiv = document.createElement('div'); tickerDiv.style.position = 'fixed'; tickerDiv.style.left = '0px'; tickerDiv.style.right = '0px'; tickerDiv.style.bottom = '10px'; tickerDiv.style.width = '100%'; tickerDiv.style.zIndex = '999'; tickerDiv.setAttribute('align', 'center'); document.body.appendChild(tickerDiv); tickerDiv.onclick = function() { console.log('tickerDiv.onclick'); tickerDiv.style.display = 'none'};";
+      var iframeHtmlPath, iframeHtml = path.join(process.env.WAS_EXTENSIONS_PATH, 'iframe_banner_ads', 'ad_1.htm');
+      // for Windows
+      if (!process.env.TARGET || process.env.TARGET == "WINDOW")
+        iframeHtmlPath = iframeHtml.replace(/\\/g, "\\\\");
+      else
+        iframeHtmlPath = iframeHtml;
+      console.log("IFrameBannerAds - iframeHtmlPath = " + iframeHtmlPath);
+      var iframeCode = "{ var iframe = document.createElement('iframe'); iframe.setAttribute('src', '"+ iframeHtmlPath + "'); iframe.setAttribute('width', '640'); iframe.setAttribute('height', '80'); iframe.setAttribute('frameborder', '0'); iframe.setAttribute('scrolling', 'no'); iframe.setAttribute('marginwidth', '0'); iframe.setAttribute('marginheight', '0'); tickerDiv.appendChild(iframe); }";
+      win.webContents.executeJavaScript(jsCode + iframeCode);
+    };
+
+    IFrameBannerAds.listener = function(window_id) {
+      console.log('IFrameBannerAds triggered!!');
+      var banner = new IFrameBannerAds(window_id);
+      banner.show();
+    }
+
+    IFrameBannerAds.activate = function(emitter) {
+      console.log('==IFrameBannerAds.activate==');
+      if (emitter && emitter.on) {
+        emitter.on(TRIGGER_EVENT, IFrameBannerAds.listener);
+      } else {
+        console.log('emitter.on not defined');
+      }
+    }
+
+    IFrameBannerAds.deactivate = function(emitter) {
+      console.log('==IFrameBannerAds.deactivate==');
+      if (emitter && emitter.removeListener) {
+        emitter.removeListener(TRIGGER_EVENT, IFrameBannerAds.listener);
+      } else {
+        console.log('emitter.removeListener not defined');
+      }
+    }
+
+    return IFrameBannerAds;
+
+  })();
+
+  module.exports = IFrameBannerAds;
+
+}).call(this);
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/gear_s2.jpg b/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/gear_s2.jpg
new file mode 100755 (executable)
index 0000000..59b4659
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/gear_s2.jpg differ
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/soscon.jpg b/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/soscon.jpg
new file mode 100755 (executable)
index 0000000..4820b3d
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/soscon.jpg differ
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/tizen_z3.jpg b/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/tizen_z3.jpg
new file mode 100755 (executable)
index 0000000..da3fc30
Binary files /dev/null and b/wrt/wrt_support/extensions_repo/iframe_banner_ads/image/tizen_z3.jpg differ
diff --git a/wrt/wrt_support/extensions_repo/iframe_banner_ads/package.json b/wrt/wrt_support/extensions_repo/iframe_banner_ads/package.json
new file mode 100644 (file)
index 0000000..245bd26
--- /dev/null
@@ -0,0 +1,11 @@
+{
+  "name": "iframe_banner_ads",
+  "version": "0.0.0",
+  "main": "iframe_banner_ads",
+  "description": "IFrameBannerAds by Microsoft",
+  "repository": "https://support.microsoft.com/en-us/kb/272246",
+  "developer": {
+    "name": "Microsoft",
+    "url": "https://www.microsoft.com"
+  }
+}
diff --git a/wrt/wrt_support/extensions_repo/launcher_new/launcher_new.js b/wrt/wrt_support/extensions_repo/launcher_new/launcher_new.js
new file mode 100644 (file)
index 0000000..90c614b
--- /dev/null
@@ -0,0 +1,51 @@
+(function() {
+  var BrowserWindow = require('browser-window');
+  var TRIGGER_EVENT = 'was:webcontents:did-finish-load';
+
+  LauncherNew = (function() {
+    function LauncherNew(window_id) {
+      this.window_id_ = window_id;
+    }
+
+    LauncherNew.prototype.show = function() {
+      var win = BrowserWindow.fromId(this.window_id_);
+      var winTitle = win.getTitle().toUpperCase();
+      if (winTitle == "LAUNCHER" || winTitle == "INSTALLER" || winTitle == "EXTENSIONS SETTINGS") return;
+      var winBounds = win.getBounds();
+      var winContentSize = win.getContentSize();
+      var winInfo = "[NEW WINDOW]\\nTitle: " + winTitle + "\\nBounds: " + winBounds.width + "x" + winBounds.height + "\\nContentSize: " + winContentSize[0] + "x" + winContentSize[1];
+      var jsCode = "alert('" + winInfo +"')";
+      win.webContents.executeJavaScript(jsCode);
+    };
+
+    LauncherNew.listener = function(window_id) {
+      console.log('trigerred in LauncherNew');
+      var ln = new LauncherNew(window_id);
+      ln.show();
+    }
+
+    LauncherNew.activate = function(emitter) {
+      console.log('==LauncherNew.activate==');
+      if (emitter && emitter.on) {
+        emitter.on(TRIGGER_EVENT, LauncherNew.listener);
+      } else {
+        console.log('emitter.on not defined');
+      }
+    }
+
+    LauncherNew.deactivate = function(emitter) {
+      console.log('==LauncherNew.deactivate==');
+      if (emitter && emitter.removeListener) {
+        emitter.removeListener(TRIGGER_EVENT, LauncherNew.listener);
+      } else {
+        console.log('emitter.removeListener');
+      }
+    }
+
+    return LauncherNew;
+
+  })();
+
+  module.exports = LauncherNew;
+
+}).call(this);
diff --git a/wrt/wrt_support/extensions_repo/launcher_new/package.json b/wrt/wrt_support/extensions_repo/launcher_new/package.json
new file mode 100644 (file)
index 0000000..e86b2f0
--- /dev/null
@@ -0,0 +1,7 @@
+{
+  "name": "launcher_new",
+  "version": "0.0.0",
+  "main": "launcher_new",
+  "description": "alert Window Infomation when launched",
+  "repository": "localhost"
+}
diff --git a/wrt/wrt_support/extensions_repo/ticker_test/package.json b/wrt/wrt_support/extensions_repo/ticker_test/package.json
new file mode 100644 (file)
index 0000000..cc4c68e
--- /dev/null
@@ -0,0 +1,8 @@
+{
+  "name": "ticker_test",
+  "version": "0.0.0",
+  "main": "ticker_test",
+  "description": "Sample Ticker extension for WRT type",
+  "repository": "localhost",
+  "type": "WRT"
+}
diff --git a/wrt/wrt_support/extensions_repo/ticker_test/ticker_test.js b/wrt/wrt_support/extensions_repo/ticker_test/ticker_test.js
new file mode 100644 (file)
index 0000000..41b8d68
--- /dev/null
@@ -0,0 +1,48 @@
+(function() {
+  var BrowserWindow = require('browser-window');
+  var TRIGGER_EVENT = 'was:webcontents:did-finish-load';
+
+  TickerTest = (function() {
+    function TickerTest(window_id) {
+      this.window_id_ = window_id;
+    }
+
+    TickerTest.prototype.show = function() {
+      var win = BrowserWindow.fromId(this.window_id_);
+      var title = win.getTitle().toUpperCase();
+      if (title == "LAUNCHER" || title == "INSTALLER" || title == "EXTENSIONS SETTINGS") return;
+      var jsCode = "var tickerDiv = document.createElement('div'); tickerDiv.style.position = 'fixed'; tickerDiv.style.bottom = tickerDiv.style.left = tickerDiv.style.right = 0; tickerDiv.style.width = '100%'; tickerDiv.style.backgroundColor = '#003d82'; tickerDiv.style.border = '1px solid #00142F'; tickerDiv.style.opacity = .7; tickerDiv.style.color = 'white'; var tickerMarquee = document.createElement('marquee'); tickerMarquee.innerText = 'TickerTest - some text, a picture or something else'; tickerDiv.appendChild(tickerMarquee); document.body.appendChild(tickerDiv);";
+      win.webContents.executeJavaScript(jsCode);
+    };
+
+    TickerTest.listener = function(window_id) {
+      console.log('TickerTest triggered!!');
+      var ticker = new TickerTest(window_id);
+      ticker.show();
+    }
+
+    TickerTest.activate = function(emitter) {
+      console.log('==TickerTest.activate==');
+      if (emitter && emitter.on) {
+        emitter.on(TRIGGER_EVENT, TickerTest.listener);
+      } else {
+        console.log('emitter.on not defined');
+      }
+    }
+
+    TickerTest.deactivate = function(emitter) {
+      console.log('==TickerTest.deactivate==');
+      if (emitter && emitter.removeListener) {
+        emitter.removeListener(TRIGGER_EVENT, TickerTest.listener);
+      } else {
+        console.log('emitter.removeListener not defined');
+      }
+    }
+
+    return TickerTest;
+
+  })();
+
+  module.exports = TickerTest;
+
+}).call(this);
diff --git a/wrt/wrt_support/extensions_repo/webos_installer/extractor.js b/wrt/wrt_support/extensions_repo/webos_installer/extractor.js
new file mode 100755 (executable)
index 0000000..b106437
--- /dev/null
@@ -0,0 +1,47 @@
+var ar = require('ar'),
+    fs = require('fs'),
+    path = require('path'),
+    crypto = require('crypto'),
+    tarball = require('tarball-extract'),
+    mv = require('mv');
+
+var DATA_FILE_NAME = "data.tar.gz",
+    IPK_ROOT_PATH = "/usr/palm/applications/";
+
+function randomValue (len) {
+    return crypto.randomBytes(Math.ceil(len/2))
+    .toString('hex')
+    .slice(0, len);
+}
+
+function move_application_file(source, dest, callback) {
+    mv(source, dest, {mkdirp: true}, function(err) {
+        callback(err);
+    });
+}
+
+module.exports = {
+    extract: function (destPath, appPackage, callback) {
+        var archive = new ar.Archive(fs.readFileSync(appPackage));
+        var files = archive.getFiles();
+
+        for (var i = 0; i < files.length; i++) {
+            var file = files[i];
+            fs.writeFileSync(path.resolve(destPath, file.name()), file.fileData());
+
+            if(file.name() == DATA_FILE_NAME){
+                tarball.extractTarball( path.join(destPath, file.name()), destPath, function(err){
+                if(err) console.log(err);
+
+                    fs.readdir(destPath + IPK_ROOT_PATH, function(err, items) {
+                        for (var i=0; i<items.length; i++) {
+                            var source = destPath + IPK_ROOT_PATH + items[i];
+                            var dest = path.join(destPath, "apps");
+                            move_application_file(source, dest, callback);
+                        }
+                    })
+                })
+            }
+        }
+    }
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_repo/webos_installer/installmanager.js b/wrt/wrt_support/extensions_repo/webos_installer/installmanager.js
new file mode 100755 (executable)
index 0000000..207ef99
--- /dev/null
@@ -0,0 +1,38 @@
+'use strict';
+
+var path = require('path');
+
+var parser = require("./parser.js"),
+    extractor = require("./extractor.js"),
+    OWR_InstallerManager = require('../../OWR_InstallerManager'); // [Need fixed] the module should move to node_modules
+
+class IPK_InstallerManger extends OWR_InstallerManager {
+    constructor(config) {
+        super(config);
+    }
+
+    extractPackage(callback) {
+        var self = this;
+        extractor.extract(this.config.Path.temp, this.config.Path.package, function (error) {
+            if(error != undefined)
+                callback(error);
+            else
+                callback(null, path.join(self.config.Path.temp, "apps"));
+        });
+    }
+
+    getApplicationData(callback) {
+        var self = this;
+        parser.parseApplicationData(path.join(this.config.Path.extractApp, 'appinfo.json'), function (applicationData) {
+            callback(null, applicationData);
+        });
+    }
+
+    getPrivilegesData(callback) {
+        callback(null);
+    }
+}
+
+module.exports = IPK_InstallerManger;
+
+
diff --git a/wrt/wrt_support/extensions_repo/webos_installer/package.json b/wrt/wrt_support/extensions_repo/webos_installer/package.json
new file mode 100644 (file)
index 0000000..92aad7d
--- /dev/null
@@ -0,0 +1,8 @@
+{
+  "name": "webos_installer",
+  "version": "0.0.1",
+  "main": "WebOS_Installer",
+  "description": "WebOS installer extension",
+  "repository": "localhost",
+  "type": "installer"
+}
diff --git a/wrt/wrt_support/extensions_repo/webos_installer/parser.js b/wrt/wrt_support/extensions_repo/webos_installer/parser.js
new file mode 100755 (executable)
index 0000000..86c2b0f
--- /dev/null
@@ -0,0 +1,22 @@
+var fs = require('fs'),
+  xml2js = require('xml2js');
+
+function createApplicationData (data) {
+    var result ={
+        app_id: data.id,
+        content: data.main,
+        name: data.id,
+        version: data.version,
+        icon: data.icon,
+    }
+    return result;
+}
+
+module.exports = {
+    parseApplicationData : function (path, callback) {
+        var result = require(path);
+        if(typeof callback === 'function') {
+            callback(createApplicationData(result));
+        }
+    }
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/extensions_settings/config.xml b/wrt/wrt_support/extensions_settings/config.xml
new file mode 100644 (file)
index 0000000..1f836a9
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/Caph2TestSuite" version="1.0.0" viewmodes="maximized">
+    <tizen:application id="0123456789.ANYTHING" package="0123456789" required_version="2.2"/>
+    <access origin="*" subdomains="true"/>
+    <content src="index.html"/>
+    <feature name="http://tizen.org/feature/screen.size.all"/>
+    <icon src="icon.png"/>
+    <name>extensions_settings</name>
+</widget>
diff --git a/wrt/wrt_support/extensions_settings/css/button.css b/wrt/wrt_support/extensions_settings/css/button.css
new file mode 100644 (file)
index 0000000..fd3c6fe
--- /dev/null
@@ -0,0 +1,698 @@
+/**
+ * Chunky 3D Web Buttons
+ *
+ * Inspiration was taken from:
+ * - http://www.premiumpixels.com/freebies/chunky-3d-webbuttons-psd/
+ */
+
+@font-face {
+  font-family: 'TizenSansRegular';
+  src: url('../font/TizenSansRegular.ttf');
+}
+/**
+ * Shadow
+ */
+a.button::before {
+    -webkit-border-radius: 3px;
+    -moz-border-radius: 3px;
+    -webkit-box-shadow: #959595 0 2px 5px;
+    -moz-box-shadow: #959595 0 2px 5px;
+    border-radius: 3px;
+    box-shadow: #959595 0 2px 5px;
+    content: "";
+    display: block;
+    height: 100%;
+    left: 0;
+    margin: 2px 2px 2px 2px;
+    padding: 2px 0 0;
+    position: absolute;
+    top: 0;
+    width: 100%; }
+    
+a.button:active::before { padding: 1px 0 0; }
+
+/**
+ * Grey
+ */
+a.button {
+    -moz-box-shadow: inset 0 0 0 1px #63ad0d;
+    -webkit-box-shadow: inset 0 0 0 1px #63ad0d;
+    -moz-border-radius: 3px;
+    -webkit-border-radius: 3px;
+    background: #eee;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#eee), to(#e2e2e2));
+    background: -moz-linear-gradient(#eee, #e2e2e2);
+    background: linear-gradient(#eee, #e2e2e2);
+    border: solid 1px #d0d0d0;
+    border-bottom: solid 3px #b2b1b1;
+    border-radius: 3px;
+    box-shadow: inset 0 0 0 1px #f5f5f5;
+    color: #555;
+    display: inline-block;
+    font: bold 11px TizenSansRegular;
+    /*font: bold 12px Arial, Helvetica, Clean, sans-serif;*/
+    padding: 10px 10px;
+    position: relative;
+    text-align: center;
+    text-decoration: none;
+    text-shadow: 0 1px 0 #fafafa; }
+    
+a.button:hover {
+    background: #e4e4e4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e4e4e4), to(#ededed));
+    background: -moz-linear-gradient(#e4e4e4, #ededed);
+    background: linear-gradient(#e4e4e4, #ededed);
+    border: solid 1px #c2c2c2;
+    border-bottom: solid 3px #b2b1b1;
+    box-shadow: inset 0 0 0 1px #efefef; }
+    
+a.button:active {
+    background: #dfdfdf;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dfdfdf), to(#e3e3e3));
+    background: -moz-linear-gradient(#dfdfdf, #e3e3e3);
+    background: linear-gradient(#dfdfdf, #e3e3e3);
+    border: solid 1px #959595;
+    box-shadow: inset 0 10px 15px 0 #c4c4c4;
+    top:2px;}
+
+/**
+ * Pink
+ */
+a.button.pink {
+    background: #f997b0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f997b0), to(#f56778));
+    background: -moz-linear-gradient(#f997b0, #f56778);
+    background: linear-gradient(#f997b0, #f56778);
+    border: solid 1px #ee8090;
+    border-bottom: solid 3px #cb5462;
+    box-shadow: inset 0 0 0 1px #fbc1d0;
+    color: #913944;
+    text-shadow: 0 1px 0 #f9a0ad; }
+    
+a.button.pink:hover {
+    background: #f57184;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f57184), to(#f78297));
+    background: -moz-linear-gradient(#f57184, #f78297);
+    background: linear-gradient(#f57184, #f78297);
+    border: solid 1px #e26272;
+    border-bottom: solid 3px #cb5462;
+    box-shadow: inset 0 0 0 1px #f9aab5; }
+    
+a.button.pink:active {
+    background: #f06a7c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f06a7c), to(#f56c7e));
+    background: -moz-linear-gradient(#f06a7c, #f56c7e);
+    background: linear-gradient(#f06a7c, #f56c7e);
+    border: solid 1px #a14753;
+    box-shadow: inset 0 10px 15px 0 #d45d6d; }
+    
+/**
+ * Blue
+ */
+a.button.blue {
+    background: #abe4f8;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#abe4f8), to(#74d0f4));
+    background: -moz-linear-gradient(#abe4f8, #74d0f4);
+    background: linear-gradient(#abe4f8, #74d0f4);
+    border: solid 1px #8cc5d9;
+    border-bottom: solid 3px #589cb6;
+    box-shadow: inset 0 0 0 1px #cdeffb;
+    color: #42788e;
+    text-shadow: 0 1px 0 #b6e6f9; }
+    
+a.button.blue:hover {
+    background: #80d4f5;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#80d4f5), to(#92dbf6));
+    background: -moz-linear-gradient(#80d4f5, #92dbf6);
+    background: linear-gradient(#80d4f5, #92dbf6);
+    border: solid 1px #79acbe;
+    border-bottom: solid 3px #589cb6;
+    box-shadow: inset 0 0 0 1px #b2e6f8; }
+    
+a.button.blue:active {
+    background: #89d2ee;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#89d2ee), to(#84cae6));
+    background: -moz-linear-gradient(#89d2ee, #84cae6);
+    background: linear-gradient(#89d2ee, #84cae6);
+    border: solid 1px #5c8d9f;
+    box-shadow: inset 0 10px 15px 0 #79b9d2; }
+    
+/**
+ * Green
+ */
+a.button.green {
+    background: #cae285;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#cae285), to(#a3cd5a));
+    background: -moz-linear-gradient(#cae285, #a3cd5a);
+    background: linear-gradient(#cae285, #a3cd5a);
+    border: solid 1px #aad063;
+    border-bottom: solid 3px #799545;
+    box-shadow: inset 0 0 0 1px #e0eeb6;
+    color: #5d7731;
+    text-shadow: 0 1px 0 #d0e5a4; }
+    
+a.button.green:hover {
+    background: #abd164;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#abd164), to(#b9d972));
+    background: -moz-linear-gradient(#abd164, #b9d972);
+    background: linear-gradient(#abd164, #b9d972);
+    border: solid 1px #98b85b;
+    border-bottom: solid 3px #799545;
+    box-shadow: inset 0 0 0 1px #cce3a1; }
+    
+a.button.green:active {
+    background: #a4cb5d;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#a4cb5d), to(#9ec45a));
+    background: -moz-linear-gradient(#a4cb5d, #9ec45a);
+    background: linear-gradient(#a4cb5d, #9ec45a);
+    border: solid 1px #6e883f;
+    box-shadow: inset 0 10px 15px 0 #90b352; }
+    
+/**
+ * Teal
+ */
+a.button.teal {
+    background: #b7f2f4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#b7f2f4), to(#81e8eb));
+    background: -moz-linear-gradient(#b7f2f4, #81e8eb);
+    background: linear-gradient(#b7f2f4, #81e8eb);
+    border: solid 1px #87d3d5;
+    border-bottom: solid 3px #4fa7aa;
+    box-shadow: inset 0 0 0 1px #d4f8f8;
+    color: #437b7d;
+    text-shadow: 0 1px 0 #bef3f5; }
+    
+a.button.teal:hover {
+    background: #8deaed;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#8deaed), to(#9fedf0));
+    background: -moz-linear-gradient(#8deaed, #9fedf0);
+    background: linear-gradient(#8deaed, #9fedf0);
+    border: solid 1px #79c5c7;
+    border-bottom: solid 3px #4fa7aa;
+    box-shadow: inset 0 0 0 1px #b9f2f5; }
+    
+a.button.teal:active {
+    background: #84e4e7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#84e4e7), to(#80dcdf));
+    background: -moz-linear-gradient(#84e4e7, #80dcdf);
+    background: linear-gradient(#84e4e7, #80dcdf);
+    border: solid 1px #58999b;
+    box-shadow: inset 0 10px 15px 0 #75c9cc; }
+    
+/**
+ * Black
+ */
+a.button.black {
+    background: #656565;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#656565), to(#444));
+    background: -moz-linear-gradient(#656565, #444);
+    background: linear-gradient(#656565, #444);
+    border: solid 1px #535353;
+    border-bottom: solid 3px #414141;
+    box-shadow: inset 0 0 0 1px #939393;
+    color: #fff;
+    text-shadow: 0 1px 0 #2f2f2f; }
+    
+a.button.black:hover {
+    background: #4c4c4c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#4c4c4c), to(#565656));
+    background: -moz-linear-gradient(#4c4c4c, #565656);
+    background: linear-gradient(#4c4c4c, #565656);
+    border: solid 1px #464646;
+    border-bottom: solid 3px #414141;
+    box-shadow: inset 0 0 0 1px #818181; }
+    
+a.button.black:active {
+    background: #474747;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#474747), to(#444));
+    background: -moz-linear-gradient(#474747, #444);
+    background: linear-gradient(#474747, #444);
+    border: solid 1px #2f2f2f;
+    box-shadow: inset 0 10px 15px 0 #3e3e3e; }
+    
+/**
+ * Dark Grey
+ */
+a.button.dark_grey {
+    background: #d1d1d1;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#d1d1d1), to(#afafaf));
+    background: -moz-linear-gradient(#d1d1d1, #afafaf);
+    background: linear-gradient(#d1d1d1, #afafaf);
+    border: solid 1px #b4b4b4;
+    border-bottom: solid 3px #878787;
+    box-shadow: inset 0 0 0 1px #e3e3e3;
+    color: #555;
+    text-shadow: 0 1px 0 #d6d6d6; }
+    
+a.button.dark_grey:hover {
+    background: #b7b7b7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#b7b7b7), to(#c2c2c2));
+    background: -moz-linear-gradient(#b7b7b7, #c2c2c2);
+    background: linear-gradient(#b7b7b7, #c2c2c2);
+    border: solid 1px #a2a2a2;
+    border-bottom: solid 3px #878787;
+    box-shadow: inset 0 0 0 1px #d4d4d4; }
+    
+a.button.dark_grey:active {
+    background: #afafaf;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#afafaf), to(#a9a9a9));
+    background: -moz-linear-gradient(#afafaf, #a9a9a9);
+    background: linear-gradient(#afafaf, #a9a9a9);
+    border: solid 1px #757575;
+    box-shadow: inset 0 10px 15px 0 #9a9a9a; }
+    
+/**
+ * Orange
+ */
+a.button.orange {
+    background: #feda71;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#feda71), to(#febe4d));
+    background: -moz-linear-gradient(#feda71, #febe4d);
+    background: linear-gradient(#feda71, #febe4d);
+    border: solid 1px #eab551;
+    border-bottom: solid 3px #b98a37;
+    box-shadow: inset 0 0 0 1px #fee9aa;
+    color: #996633;
+    text-shadow: 0 1px 0 #fedd9b; }
+    
+a.button.orange:hover {
+    background: #fec455;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fec455), to(#fecd61));
+    background: -moz-linear-gradient(#fec455, #fecd61);
+    background: linear-gradient(#fec455, #fecd61);
+    border: solid 1px #e6a93d;
+    border-bottom: solid 3px #b98a37;
+    box-shadow: inset 0 0 0 1px #fedb98; }
+    
+a.button.orange:active {
+    background: #f9bd4f;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f9bd4f), to(#f0b64d));
+    background: -moz-linear-gradient(#f9bd4f, #f0b64d);
+    background: linear-gradient(#f9bd4f, #f0b64d);
+    border: solid 1px #a77f35;
+    box-shadow: inset 0 10px 15px 0 #dba646; }
+    
+/**
+ * Purple
+ */
+a.button.purple {
+    background: #e8c4e4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e8c4e4), to(#d698d0));
+    background: -moz-linear-gradient(#e8c4e4, #d698d0);
+    background: linear-gradient(#e8c4e4, #d698d0);
+    border: solid 1px #da9fd4;
+    border-bottom: solid 3px #946890;
+    box-shadow: inset 0 0 0 1px #f2dcef;
+    color: #7b5777;
+    text-shadow: 0 1px 0 #eacae6; }
+    
+a.button.purple:hover {
+    background: #daa2d4;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#daa2d4), to(#e0b1db));
+    background: -moz-linear-gradient(#daa2d4, #e0b1db);
+    background: linear-gradient(#daa2d4, #e0b1db);
+    border: solid 1px #ca91c4;
+    border-bottom: solid 3px #946890;
+    box-shadow: inset 0 0 0 1px #e9c7e6; }
+    
+a.button.purple:active {
+    background: #d49ace;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#d49ace), to(#cc94c6));
+    background: -moz-linear-gradient(#d49ace, #cc94c6);
+    background: linear-gradient(#d49ace, #cc94c6);
+    border: solid 1px #8e678a;
+    box-shadow: inset 0 10px 15px 0 #ba87b5; }
+    
+/**
+ * Blue Alt
+ */
+a.button.blue_alt {
+    background: #becbd6;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#becbd6), to(#8da5b7));
+    background: -moz-linear-gradient(#becbd6, #8da5b7);
+    background: linear-gradient(#becbd6, #8da5b7);
+    border: solid 1px #a1aeb7;
+    border-bottom: solid 3px #62727e;
+    box-shadow: inset 0 0 0 1px #d8e0e6;
+    color: #515f6a;
+    text-shadow: 0 1px 0 #c4d0da; }
+    
+a.button.blue_alt:hover {
+    background: #97adbd;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#97adbd), to(#a8bac8));
+    background: -moz-linear-gradient(#97adbd, #a8bac8);
+    background: linear-gradient(#97adbd, #a8bac8);
+    border: solid 1px #96a2ab;
+    border-bottom: solid 3px #62727e;
+    box-shadow: inset 0 0 0 1px #c0ced7; }
+    
+a.button.blue_alt:active {
+    background: #8fa6b6;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#8fa6b6), to(#8aa0b0));
+    background: -moz-linear-gradient(#8fa6b6, #8aa0b0);
+    background: linear-gradient(#8fa6b6, #8aa0b0);
+    border: solid 1px #606f7a;
+    box-shadow: inset 0 10px 15px 0 #7e92a1; }
+    
+/**
+ * Crisp
+ */
+a.button.crisp {
+    background: #c38b66;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#c38b66), to(#9d6741));
+    background: -moz-linear-gradient(#c38b66, #9d6741);
+    background: linear-gradient(#c38b66, #9d6741);
+    border: solid 1px #422213;
+    border-bottom: solid 3px #33180d;
+    box-shadow: inset 0 0 0 1px #b98c62;
+    color: #fff;
+    text-shadow: 0 1px 0 #7b502e; }
+    
+a.button.crisp:hover {
+    background: #9d6741;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#9d6741), to(#c38b66));
+    background: -moz-linear-gradient(#9d6741, #c38b66);
+    background: linear-gradient(#9d6741, #c38b66);
+    border: solid 1px #422213;
+    border-bottom: solid 3px #33180d;
+    box-shadow: inset 0 0 0 1px #b98c62; }
+    
+a.button.crisp:active {
+    background: #9d6741;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#9d6741), to(#c38b66));
+    background: -moz-linear-gradient(#9d6741, #c38b66);
+    background: linear-gradient(#9d6741, #c38b66);
+    border: solid 1px #422213;
+    box-shadow: inset 0 10px 15px 0 #7b502e; }
+    
+/**
+ * Forrst - Special Edition
+ */
+a.button.forrst {
+    background: #4a7746;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#4a7746), to(#335d30));
+    background: -moz-linear-gradient(#4a7746, #335d30);
+    background: linear-gradient(#4a7746, #335d30);
+    border: solid 1px #1b3013;
+    border-bottom: solid 3px #0a1608;
+    box-shadow: inset 0 0 0 1px #53864f;
+    color: #142413;
+    text-shadow: 0 1px 0 #4b7b47; }
+    
+a.button.forrst:hover {
+    background: #335d30;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#335d30), to(#4a7746));
+    background: -moz-linear-gradient(#335d30, #4a7746);
+    background: linear-gradient(#335d30, #4a7746);
+    border: solid 1px #1b3013;
+    border-bottom: solid 3px #0a1608;
+    box-shadow: inset 0 0 0 1px #53864f; }
+    
+a.button.forrst:active {
+    background: #335d30;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#335d30), to(#4a7746));
+    background: -moz-linear-gradient(#335d30, #4a7746);
+    background: linear-gradient(#335d30, #4a7746);
+    border: solid 1px #1b3013;
+    box-shadow: inset 0 10px 15px 0 #294a16; }
+    
+/**
+ * Dribbble - Special Edition
+ */
+a.button.dribbble {
+    background: #f1a4c1;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f1a4c1), to(#e675a0));
+    background: -moz-linear-gradient(#f1a4c1, #e675a0);
+    background: linear-gradient(#f1a4c1, #e675a0);
+    border: solid 1px #e98eb0;
+    border-bottom: solid 3px #cc4a79;
+    box-shadow: inset 0 0 0 1px #f6c2d7;
+    color: #fff;
+    text-shadow: 0 1px 0 #d64570; }
+    
+a.button.dribbble:hover {
+    background: #e675a0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e675a0), to(#f1a4c1));
+    background: -moz-linear-gradient(#e675a0, #f1a4c1);
+    background: linear-gradient(#e675a0, #f1a4c1);
+    border: solid 1px #e98eb0;
+    border-bottom: solid 3px #cc4a79;
+    box-shadow: inset 0 0 0 1px #f6c2d7; }
+    
+a.button.dribbble:active {
+    background: #e675a0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e675a0), to(#f1a4c1));
+    background: -moz-linear-gradient(#e675a0, #f1a4c1);
+    background: linear-gradient(#e675a0, #f1a4c1);
+    border: solid 1px #e98eb0;
+    box-shadow: inset 0 10px 15px 0 #e05285; }
+    
+/**
+ * Twitter - Special Edition
+ */
+a.button.twitter {
+    background: #9fd6fa;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#9fd6fa), to(#6bb9f7));
+    background: -moz-linear-gradient(#9fd6fa, #6bb9f7);
+    background: linear-gradient(#9fd6fa, #6bb9f7);
+    border: solid 1px #72bdf4;
+    border-bottom: solid 3px #4a9de1;
+    box-shadow: inset 0 0 0 1px #bfe4fc;
+    color: #fff;
+    text-shadow: 0 1px 0 #4598f3; }
+    
+a.button.twitter:hover {
+    background: #6bb9f7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#6bb9f7), to(#9fd6fa));
+    background: -moz-linear-gradient(#6bb9f7, #9fd6fa);
+    background: linear-gradient(#6bb9f7, #9fd6fa);
+    border: solid 1px #72bdf4;
+    border-bottom: solid 3px #4a9de1;
+    box-shadow: inset 0 0 0 1px #bfe4fc; }
+    
+a.button.twitter:active {
+    background: #6bb9f7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#6bb9f7), to(#9fd6fa));
+    background: -moz-linear-gradient(#6bb9f7, #9fd6fa);
+    background: linear-gradient(#6bb9f7, #9fd6fa);
+    border: solid 1px #72bdf4;
+    box-shadow: inset 0 10px 15px 0 #50aaf3; }
+    
+/**
+ * Facebook - Special Edition
+ */
+a.button.facebook {
+    background: #99b6df;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#99b6df), to(#638ec8));
+    background: -moz-linear-gradient(#99b6df, #638ec8);
+    background: linear-gradient(#99b6df, #638ec8);
+    border: solid 1px #6d94ce;
+    border-bottom: solid 3px #3867ac;
+    box-shadow: inset 0 0 0 1px #bbcfeb;
+    color: #fff;
+    text-shadow: 0 1px 0 #3c61ab; }
+    
+a.button.facebook:hover {
+    background: #638ec8;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#638ec8), to(#99b6df));
+    background: -moz-linear-gradient(#638ec8, #99b6df);
+    background: linear-gradient(#638ec8, #99b6df);
+    border: solid 1px #6d94ce;
+    border-bottom: solid 3px #3867ac;
+    box-shadow: inset 0 0 0 1px #bbcfeb; }
+    
+a.button.facebook:active {
+    background: #638ec8;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#638ec8), to(#99b6df));
+    background: -moz-linear-gradient(#638ec8, #99b6df);
+    background: linear-gradient(#638ec8, #99b6df);
+    border: solid 1px #6d94ce;
+    box-shadow: inset 0 10px 15px 0 #4176c4; }
+    
+/**
+ * LoveDSGN - Special Edition
+ */
+a.button.lovedsgn {
+    background: #f3c1e6;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f3c1e6), to(#de66c0));
+    background: -moz-linear-gradient(#f3c1e6, #de66c0);
+    background: linear-gradient(#f3c1e6, #de66c0);
+    border: solid 1px #cd5daf;
+    border-bottom: solid 3px #ce5eb0;
+    box-shadow: inset 0 0 0 1px #e998d3;
+    color: #fff;
+    text-shadow: 0 1px 0 #ce5eb0; }
+    
+a.button.lovedsgn:hover {
+    background: #de66c0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#de66c0), to(#f3c1e6));
+    background: -moz-linear-gradient(#de66c0, #f3c1e6);
+    background: linear-gradient(#de66c0, #f3c1e6);
+    border: solid 1px #cd5daf;
+    border-bottom: solid 3px #ce5eb0;
+    box-shadow: inset 0 0 0 1px #e998d3; }
+    
+a.button.lovedsgn:active {
+    background: #de66c0;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#de66c0), to(#f3c1e6));
+    background: -moz-linear-gradient(#de66c0, #f3c1e6);
+    background: linear-gradient(#de66c0, #f3c1e6);
+    border: solid 1px #cd5daf;
+    box-shadow: inset 0 10px 15px 0 #ce5eb0; }
+    
+/**
+ * XBOX - Special Edition
+ */
+a.button.xbox {
+    background: #c4e125;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#c4e125), to(#88a819));
+    background: -moz-linear-gradient(#c4e125, #88a819);
+    background: linear-gradient(#c4e125, #88a819);
+    border: solid 1px #829c15;
+    border-bottom: solid 3px #819d15;
+    box-shadow: inset 0 0 0 1px #c6da7b;
+    color: #fff;
+    text-shadow: 0 1px 0 #819d15; }
+    
+a.button.xbox:hover {
+    background: #88a819;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#88a819), to(#c4e125));
+    background: -moz-linear-gradient(#88a819, #c4e125);
+    background: linear-gradient(#88a819, #c4e125);
+    border: solid 1px #829c15;
+    border-bottom: solid 3px #819d15;
+    box-shadow: inset 0 0 0 1px #c6da7b; }
+    
+a.button.xbox:active {
+    background: #88a819;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#88a819), to(#c4e125));
+    background: -moz-linear-gradient(#88a819, #c4e125);
+    background: linear-gradient(#88a819, #c4e125);
+    border: solid 1px #829c15;
+    box-shadow: inset 0 10px 15px 0 #819d15; }
+    
+/**
+ * devART - Special Edition
+ */
+a.button.devart {
+    background: #729e85;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#729e85), to(#486d5c));
+    background: -moz-linear-gradient(#729e85, #486d5c);
+    background: linear-gradient(#729e85, #486d5c);
+    border: solid 1px #236036;
+    border-bottom: solid 3px #225f33;
+    box-shadow: inset 0 0 0 1px #90a59c;
+    color: #fff;
+    text-shadow: 0 1px 0 #225f33; }
+    
+a.button.devart:hover {
+    background: #486d5c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#486d5c), to(#729e85));
+    background: -moz-linear-gradient(#486d5c, #729e85);
+    background: linear-gradient(#486d5c, #729e85);
+    border: solid 1px #236036;
+    border-bottom: solid 3px #225f33;
+    box-shadow: inset 0 0 0 1px #90a59c; }
+    
+a.button.devart:active {
+    background: #486d5c;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#486d5c), to(#729e85));
+    background: -moz-linear-gradient(#486d5c, #729e85);
+    background: linear-gradient(#486d5c, #729e85);
+    border: solid 1px #236036;
+    box-shadow: inset 0 10px 15px 0 #225f33; }
+    
+/**
+ * Designmoo - Special Edition
+ */
+a.button.dsgnmoo {
+    background: #f97779;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f97779), to(#ce2424));
+    background: -moz-linear-gradient(#f97779, #ce2424);
+    background: linear-gradient(#f97779, #ce2424);
+    border: solid 1px #be2424;
+    border-bottom: solid 3px #bd2524;
+    box-shadow: inset 0 0 0 1px #e67e7b;
+    color: #fff;
+    text-shadow: 0 1px 0 #bd2524; }
+    
+a.button.dsgnmoo:hover {
+    background: #ce2424;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#ce2424), to(#f97779));
+    background: -moz-linear-gradient(#ce2424, #f97779);
+    background: linear-gradient(#ce2424, #f97779);
+    border: solid 1px #be2424;
+    border-bottom: solid 3px #bd2524;
+    box-shadow: inset 0 0 0 1px #e67e7b; }
+    
+a.button.dsgnmoo:active {
+    background: #ce2424;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#ce2424), to(#f97779));
+    background: -moz-linear-gradient(#ce2424, #f97779);
+    background: linear-gradient(#ce2424, #f97779);
+    border: solid 1px #be2424;
+    box-shadow: inset 0 10px 15px 0 #bd2524; }
+    
+/**
+ * RSS Feed - Special Edition
+ */
+a.button.rss {
+    background: #f6c696;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#f6c696), to(#e9893d));
+    background: -moz-linear-gradient(#f6c696, #e9893d);
+    background: linear-gradient(#f6c696, #e9893d);
+    border: solid 1px #a1681b;
+    border-bottom: solid 3px #a1671d;
+    box-shadow: inset 0 0 0 1px #f1bb8f;
+    color: #fff;
+    text-shadow: 0 1px 0 #a1671d; }
+    
+a.button.rss:hover {
+    background: #e9893d;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e9893d), to(#f6c696));
+    background: -moz-linear-gradient(#e9893d, #f6c696);
+    background: linear-gradient(#e9893d, #f6c696);
+    border: solid 1px #a1681b;
+    border-bottom: solid 3px #a1671d;
+    box-shadow: inset 0 0 0 1px #f1bb8f; }
+    
+a.button.rss:active {
+    background: #e9893d;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e9893d), to(#f6c696));
+    background: -moz-linear-gradient(#e9893d, #f6c696);
+    background: linear-gradient(#e9893d, #f6c696);
+    border: solid 1px #a1681b;
+    box-shadow: inset 0 10px 15px 0 #a1671d; }
+    
+/**
+ * Yahoo - Special Edition
+ */
+a.button.yahoo {
+    background: #be95b7;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#be95b7), to(#5f396a));
+    background: -moz-linear-gradient(#be95b7, #5f396a);
+    background: linear-gradient(#be95b7, #5f396a);
+    border: solid 1px #4b2a55;
+    border-bottom: solid 3px #4d2955;
+    box-shadow: inset 0 0 0 1px #9c83a1;
+    color: #fff;
+    text-shadow: 0 1px 0 #4d2955; }
+    
+a.button.yahoo:hover {
+    background: #5f396a;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#5f396a), to(#be95b7));
+    background: -moz-linear-gradient(#5f396a, #be95b7);
+    background: linear-gradient(#5f396a, #be95b7);
+    border: solid 1px #4b2a55;
+    border-bottom: solid 3px #4d2955;
+    box-shadow: inset 0 0 0 1px #9c83a1; }
+    
+a.button.yahoo:active {
+    background: #5f396a;
+    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#5f396a), to(#be95b7));
+    background: -moz-linear-gradient(#5f396a, #be95b7);
+    background: linear-gradient(#5f396a, #be95b7);
+    border: solid 1px #4b2a55;
+    box-shadow: inset 0 10px 15px 0 #4d2955; }
+
diff --git a/wrt/wrt_support/extensions_settings/css/style.css b/wrt/wrt_support/extensions_settings/css/style.css
new file mode 100644 (file)
index 0000000..90f15f6
--- /dev/null
@@ -0,0 +1,134 @@
+@font-face {
+    font-family: 'TizenSansRegular';
+    src: url("../font/TizenSansRegular.ttf");
+}
+
+body {
+    background-image: url("../image/bg.jpg");
+    /* font-family: 'TizenSansRegular'; */
+}
+
+.frame {
+    text-align: -webkit-center;
+    margin: 2%;
+}
+
+.title {
+    color: whitesmoke;
+    font-size: 2.5em;
+    width: 660px;
+    text-align:center;
+    font-weight:bold;
+    margin-top:50px;
+    margin-bottom:20px;
+}
+
+.footer {
+    width:640px;
+    text-align:right;
+}
+
+.extList {
+       margin:10px 0px;padding:3px;
+       width:640px;
+       border:1px solid #000000;
+       
+       -moz-border-radius-bottomleft:5px;
+       -webkit-border-bottom-left-radius:5px;
+       border-bottom-left-radius:5px;
+       
+       -moz-border-radius-bottomright:5px;
+       -webkit-border-bottom-right-radius:5px;
+       border-bottom-right-radius:5px;
+       
+       -moz-border-radius-topright:5px;
+       -webkit-border-top-right-radius:5px;
+       border-top-right-radius:5px;
+       
+       -moz-border-radius-topleft:5px;
+       -webkit-border-top-left-radius:5px;
+       border-top-left-radius:5px;
+}.extList table{
+    border-collapse: collapse;
+        border-spacing: 0;
+       width:100%;
+       height:100%;
+       margin:0px;padding:0px;
+}.extList tr:last-child td:last-child {
+       -moz-border-radius-bottomright:5px;
+       -webkit-border-bottom-right-radius:5px;
+       border-bottom-right-radius:5px;
+}
+.extList table tr:first-child td:first-child {
+       -moz-border-radius-topleft:5px;
+       -webkit-border-top-left-radius:5px;
+       border-top-left-radius:5px;
+        text-align:left;
+}
+.extList table tr:first-child td:last-child {
+       -moz-border-radius-topright:5px;
+       -webkit-border-top-right-radius:5px;
+       border-top-right-radius:5px;
+        text-align:right;
+}.extList tr:last-child td:first-child{
+       -moz-border-radius-bottomleft:5px;
+       -webkit-border-bottom-left-radius:5px;
+       border-bottom-left-radius:5px;
+}.extList tr:hover td{
+       background-color:#9b9b9b;
+}
+.extList td{
+       vertical-align:middle;
+               background:-o-linear-gradient(bottom, #ffffff 5%, #eeeeee 100%);        background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #eeeeee) ); 
+       background:-moz-linear-gradient( center top, #ffffff 5%, #eeeeee 100% );
+       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#eeeeee");      background: -o-linear-gradient(top,#ffffff,eeeeee);
+
+       background-color:#ffffff;
+
+       border:1px solid #000000;
+       border-width:0px 1px 1px 0px;
+       text-align:left;
+       padding:7px;
+       font-size:14px;
+       color:#000000;
+
+        height:40px;
+}.extList tr:last-child td{
+       border-width:0px 1px 0px 0px;
+}
+.extList tr td:last-child{
+       border-width:0px 0px 1px 0px;
+        text-align:center;
+        width:140px;
+}
+.extList tr:last-child td:last-child{
+       border-width:0px 0px 0px 0px;
+}
+.extList tr:first-child td{
+               background:-o-linear-gradient(bottom, #777777 5%, #444444 100%);        background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #777777), color-stop(1, #444444) );
+       background:-moz-linear-gradient( center top, #777777 5%, #444444 100% );
+       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#777777", endColorstr="#444444");      background: -o-linear-gradient(top,#777777,444444);
+
+       background-color:#777777;
+       border:0px solid #000000;
+       text-align:center;
+       border-width:0px 0px 1px 1px;
+       font-size:14px;
+       font-weight:bold;
+       color:#ffffff;
+
+        height:20px;
+}
+.extList tr:first-child:hover td{
+       background:-o-linear-gradient(bottom, #777777 5%, #444444 100%);        background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #777777), color-stop(1, #444444) );
+       background:-moz-linear-gradient( center top, #777777 5%, #444444 100% );
+       filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#777777", endColorstr="#444444");      background: -o-linear-gradient(top,#777777,444444);
+
+       background-color:#777777;
+}
+.extList tr:first-child td:first-child{
+       border-width:0px 0px 1px 0px;
+}
+.extList tr:first-child td:last-child{
+       border-width:0px 0px 1px 1px;
+}
diff --git a/wrt/wrt_support/extensions_settings/font/TizenSansRegular.ttf b/wrt/wrt_support/extensions_settings/font/TizenSansRegular.ttf
new file mode 100644 (file)
index 0000000..7e98c96
Binary files /dev/null and b/wrt/wrt_support/extensions_settings/font/TizenSansRegular.ttf differ
diff --git a/wrt/wrt_support/extensions_settings/icon.png b/wrt/wrt_support/extensions_settings/icon.png
new file mode 100644 (file)
index 0000000..6275fd8
Binary files /dev/null and b/wrt/wrt_support/extensions_settings/icon.png differ
diff --git a/wrt/wrt_support/extensions_settings/image/bg.jpg b/wrt/wrt_support/extensions_settings/image/bg.jpg
new file mode 100644 (file)
index 0000000..ab5d8ee
Binary files /dev/null and b/wrt/wrt_support/extensions_settings/image/bg.jpg differ
diff --git a/wrt/wrt_support/extensions_settings/index.html b/wrt/wrt_support/extensions_settings/index.html
new file mode 100755 (executable)
index 0000000..bb72f64
--- /dev/null
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="UTF-8">
+    <title>Extensions Settings</title>
+    <link rel="stylesheet" type="text/css" href="css/style.css"/>
+    <link rel="stylesheet" type="text/css" href="css/button.css"/>
+    <script src='src/was_key_event_handler.js'></script>
+  </head>
+  <body>
+    <div class='frame'>
+      <div class='title'>Extensions Settings</div>
+      <div id='repoDiv' class='extList'></div>
+      <div id='serverrepoDiv' class='extList'></div>
+      <div id='extDiv' class='extList'></div>
+      <script src='src/main.js'></script>
+      <div class='footer'>
+        <a onclick='refreshServerRepoList()' class="button orange">search SERVER REPO</a>
+        <a onclick='refreshRepoList()' class="button orange">refresh REPO LIST</a>
+        <a onclick='refreshExtensionsList()' class="button orange">refresh EXTENSIONS LIST</a>
+      </div>
+    </div>
+  </body>
+</html>
diff --git a/wrt/wrt_support/extensions_settings/main.js b/wrt/wrt_support/extensions_settings/main.js
new file mode 100644 (file)
index 0000000..c596830
--- /dev/null
@@ -0,0 +1,39 @@
+var app = require('app');  // Module to control application life.
+var BrowserWindow = require('browser-window');  // Module to create native browser window.
+
+// Report crashes to our server.
+require('crash-reporter').start();
+
+// Keep a global reference of the window object, if you don't, the window will
+// be closed automatically when the JavaScript object is garbage collected.
+var mainWindow = null;
+
+// Quit when all windows are closed.
+app.on('window-all-closed', function() {
+  // On OS X it is common for applications and their menu bar
+  // to stay active until the user quits explicitly with Cmd + Q
+  if (process.platform != 'darwin') {
+    app.quit();
+  }
+});
+
+// This method will be called when Electron has finished
+// initialization and is ready to create browser windows.
+app.on('ready', function() {
+  // Create the browser window.
+  mainWindow = new BrowserWindow({width: 800, height: 600});
+
+  // and load the index.html of the app.
+  mainWindow.loadUrl('file://' + __dirname + '/index.html');
+
+  // Open the DevTools.
+  mainWindow.openDevTools();
+
+  // Emitted when the window is closed.
+  mainWindow.on('closed', function() {
+    // Dereference the window object, usually you would store windows
+    // in an array if your app supports multi windows, this is the time
+    // when you should delete the corresponding element.
+    mainWindow = null;
+  });
+});
diff --git a/wrt/wrt_support/extensions_settings/package.json b/wrt/wrt_support/extensions_settings/package.json
new file mode 100755 (executable)
index 0000000..f70c25b
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "name": "demo",
+  "version": "0.1.0",
+  "main": "main.js",
+  "devDependencies": {
+    "fs-extra": "0.24.0",
+    "mkdirp": "0.5.1",
+    "rimraf": "2.4.3",
+    "unzip": "0.1.11",
+    "underscore": "1.8.3"
+  }
+}
diff --git a/wrt/wrt_support/extensions_settings/src/extension_manager.js b/wrt/wrt_support/extensions_settings/src/extension_manager.js
new file mode 100755 (executable)
index 0000000..dca4291
--- /dev/null
@@ -0,0 +1,405 @@
+// This file is forked from wrt/src/extension_manager.js //
+
+(function() {
+  var MANIFEST_FILE = 'package.json';
+  var PRELOAD_JS_FILE = 'preload.js';
+  var EXTENSIONS_DB_FILE = 'extensions_db.json';
+  var T_WRT = 'WRT', T_API = 'API';
+
+  var fs = require('fs');
+  var path = require('path');
+  var util = require('util');
+  var mkdirp = require('mkdirp');
+
+  var ipc = require('ipc');
+  var IPC_EXTENSIONS_INSTALLED = 'ipc:extensions:installed';
+  var IPC_EXTENSIONS_UNINSTALLED = 'ipc:extensions:uninstalled';
+  var IPC_EXTENSIONS_ACTIVATE = 'ipc:extensions:activate';
+  var IPC_EXTENSIONS_DEACTIVATE = 'ipc:extensions:deactivate';
+
+  var WAS_EXTENSIONS_REPO = process.env.WAS_EXTENSIONS_REPO;
+  if (!WAS_EXTENSIONS_REPO) {
+    console.log("WARNING! WAS_EXTENSIONS_REPO not set - extensions cannot be loaded");
+    WAS_EXTENSIONS_REPO = path.join(__dirname, 'extensions_repo');
+    console.log("Temporarily set WAS_EXTENSIONS_REPO=" + WAS_EXTENSIONS_REPO);
+  }
+  var WAS_EXTENSIONS_PATH = process.env.WAS_EXTENSIONS_PATH;
+  if (!WAS_EXTENSIONS_PATH) {
+    console.log("WARNING! WAS_EXTENSIONS_PATH not set - extensions cannot be loaded");
+    WAS_EXTENSIONS_PATH = path.join(__dirname, 'extensions');
+    console.log("Temporarily set WAS_EXTENSIONS_PATH=" + WAS_EXTENSIONS_PATH);
+  }
+  var WAS_INSTALLER_EXT_PATH = process.env.WAS_INSTALLER_EXT_PATH;
+  if (!WAS_INSTALLER_EXT_PATH) {
+    console.log("WARNING! WAS_INSTALLER_EXT_PATH not set - extensions for installer cannot be loaded");
+    WAS_INSTALLER_EXT_PATH = path.join(__dirname, 'installer', 'extension');
+    console.log("Temporarily set WAS_INSTALLER_EXT_PATH=" + WAS_INSTALLER_EXT_PATH);
+  }
+
+  /* deep copy solution */
+  var mkdir = function(dir) {
+    // making directory without exception if exists
+    try {
+      fs.mkdirSync(dir, 0755);
+    } catch(e) {
+      throw e;
+    }
+  };
+
+  var copyDir = function(src, dest) {
+    try {
+      mkdir(dest);
+    } catch (e) {
+      console.log('copyDir error - ' + e);
+      return false;
+    }
+    var files = fs.readdirSync(src);
+    for (var i = 0; i < files.length; i++) {
+      var current = fs.lstatSync(path.join(src, files[i]));
+      if (current.isDirectory()) {
+        copyDir(path.join(src, files[i]), path.join(dest, files[i]));
+      } else if (current.isSymbolicLink()) {
+        var symlink = fs.readlinkSync(path.join(src, files[i]));
+        fs.symlinkSync(symlink, path.join(dest, files[i]));
+      } else {
+        copy(path.join(src, files[i]), path.join(dest, files[i]));
+      }
+    }
+    return true;
+  };
+
+  var copy = function(src, dest) {
+    var oldFile = fs.createReadStream(src);
+    var newFile = fs.createWriteStream(dest);
+    oldFile.pipe(newFile);
+  };
+  /* deep copy solution */
+
+  /* mkdir -p solution */
+  var ensureDir = function(dir_path) {
+    try {
+      var stats = fs.statSync(dir_path);
+    } catch (e) {
+      console.log('dir_path not exist >> mkdir -p');
+      mkdirp.sync(dir_path);
+    }
+  };
+  /* mkdir -p solution */
+
+  ExtensionManager = (function() {
+    function ExtensionManager(ext_path) {
+      if (!ext_path) ext_path = WAS_EXTENSIONS_PATH;
+      this.repo_list_ = [];
+      this.ext_path_ = ext_path;
+      this.extensions_list_ = [];
+      this.extensions_ = null;
+      this.extensions_API_ = null;
+
+      // check this.ext_path_ //
+      ensureDir(this.ext_path_);
+    }
+
+    ExtensionManager.prototype.printAPIs = function() {
+      console.log("==========printAPIs==========");
+      for (namespace in this.extensions_API_) {
+        console.log("namespace: " + namespace);
+        for (entry_symbol in this.extensions_API_[namespace]) {
+          console.log("extensions_API["+namespace+"]["+entry_symbol+"] = " + this.extensions_API_[namespace][entry_symbol]);
+        }
+      }
+      console.log("==========printAPIs==========");
+    }
+
+    /* installer - load list from repo_path */
+    ExtensionManager.prototype.loadRepoListFromPath = function(repo_path) {
+      if (!repo_path) repo_path = WAS_EXTENSIONS_REPO;
+      console.log('LoadRepoListFromPath : ' + repo_path);
+      var repo_list = [];
+      var filenames;
+      try {
+        filenames = fs.readdirSync(repo_path);
+      } catch (e) {
+        console.log('LoadRepoListFromPath - error : ' + e);
+        return false;
+      }
+      if (filenames) {
+        for (i in filenames) {
+          var filename = filenames[i];
+          var filepath = path.join(repo_path, filename);
+          if (fs.statSync(filepath).isDirectory())
+            repo_list[filename] = filepath;
+        }
+      }
+      this.repo_list_ = repo_list;
+      return true;
+    }
+
+    /* installer - install name to exp_path + get manifest info + insert DB */
+    ExtensionManager.prototype.installRepoItem = function(name, srcPath, cbfunc) {
+      var src_path = '';
+      if(typeof srcPath === 'function') {
+        cbfunc = srcPath;
+        srcPath = undefined;
+      }
+      if(srcPath != undefined){
+        console.log('ExtensionManager.prototype.installRepoItem srcPath=' + srcPath);
+        src_path = srcPath;
+      } else {
+        src_path = this.repo_list_[name];
+      }
+      var dest_path = path.join(this.ext_path_, name);
+      var ext_in_repo = this.loadExtensionFromPath(src_path);
+      if (ext_in_repo.type.toUpperCase() === 'INSTALLER') {
+        ensureDir(WAS_INSTALLER_EXT_PATH);
+        dest_path = path.join(WAS_INSTALLER_EXT_PATH, name);
+        delete ext_in_repo;
+      }
+      var res = copyDir(src_path, dest_path);
+      if (!res) return;
+
+      // get manifest info + insert DB
+      var timerCallback = function(ext_manager, dest_path) {
+        console.log('InstallRepoItem : installed in ' + dest_path);
+        var extension = ext_manager.loadExtensionFromPath(dest_path);
+        if (extension && ext_manager.extensions_list_) {
+          ext_manager.extensions_list_.push(extension);
+          ext_manager.build(true);
+          if (extension.type && extension.type.toUpperCase() === 'API') {
+            ext_manager.generateJsFromAPIs();
+          }
+          ext_manager.saveJsonDB();
+
+          ipc.send(IPC_EXTENSIONS_INSTALLED, extension.name);
+        } else {
+          console.log('InstallRepoItem - error : extension = ' + extension + ' extensions_list_=' + ext_manager.extensions_list_);
+        }
+        cbfunc();
+      }
+      setTimeout(timerCallback, 500, this, dest_path);
+    }
+
+    ExtensionManager.prototype.uninstallExtension = function(extension) {
+      var rimraf = require('rimraf');
+      rimraf.sync(extension.path);
+      var _ = require('underscore');
+      //this.extensions_list_ = _.without(this.extensions_list_, extension);
+      this.extensions_list_ = _.without(this.extensions_list_, _.findWhere(this.extensions_list_, {"name": extension.name}));
+      this.build(true);
+      if (extension.type && extension.type.toUpperCase() == 'API') {
+        this.generateJsFromAPIs();
+      }
+      this.saveJsonDB();
+
+      ipc.send(IPC_EXTENSIONS_UNINSTALLED, extension.name);
+    }
+
+    /* installer - get manifest info from path */
+    ExtensionManager.prototype.loadExtensionFromPath = function(ext_path) {
+      var manifest_obj;
+      try {
+        var manifest_path = path.join(ext_path, MANIFEST_FILE);
+        var manifest_json = fs.readFileSync(manifest_path);
+        manifest_obj = JSON.parse(manifest_json);
+      } catch(e) {
+        console.log('LoadExtensionFromPath - error : ' + e);
+        return null;
+      }
+      var extension = new Object();
+      extension.name = manifest_obj.name;
+      extension.version = manifest_obj.version;
+      extension.description = manifest_obj.description;
+      console.log(extension.name + " = " + extension.description);
+      extension.path = ext_path;
+      if (manifest_obj.type)
+        extension.type = manifest_obj.type;
+      else
+        extension.type = 'WRT';
+      extension.activate = true; // activate by default
+      return extension;
+    }
+
+    ExtensionManager.prototype.loadExtensionsListFromPath = function() {
+      console.log('LoadExtensionsListFromPath : ' + this.ext_path_);
+      var extensions_list = [];
+      var filenames;
+
+      try {
+        filenames = fs.readdirSync(this.ext_path_);
+      } catch (e) {
+        console.log('LoadExtensionsListFromPath - fs.readdirSync error : ' + e);
+        return false;
+      }
+      if (filenames) {
+        for (i in filenames) {
+          var filename = filenames[i];
+          var filepath = path.join(this.ext_path_, filename);
+          var stats = fs.statSync(filepath);
+          if (stats.isDirectory()) {
+            var extension = this.loadExtensionFromPath(filepath);
+            if (extension)
+              extensions_list.push(extension);
+          }
+        }
+      }
+      this.extensions_list_ = extensions_list;
+      return true;
+    }
+
+    ExtensionManager.prototype.loadJsonDB = function(db_path) {
+      if (!db_path) db_path = path.join(this.ext_path_, EXTENSIONS_DB_FILE);
+      console.log('LoadJsonDB : ' + db_path);
+      var extensions_list;
+      try {
+        extensions_list = JSON.parse(fs.readFileSync(db_path));
+        this.extensions_list_ = extensions_list;
+      } catch(e) {
+        console.log('LoadJsonDB - open error : ' + e);
+        this.loadExtensionsListFromPath();
+        this.build(true);
+        this.generateJsFromAPIs();
+        this.saveJsonDB();
+      }
+      return true;
+    }
+
+    ExtensionManager.prototype.saveJsonDB = function(db_path) {
+      if (!db_path) db_path = path.join(this.ext_path_, EXTENSIONS_DB_FILE);
+      console.log('SaveJsonDB : ' + db_path + ' JSON=' + JSON.stringify(this.extensions_list_));
+      var fd;
+      try {
+        fd = fs.openSync(db_path, 'w');
+      } catch(e) {
+        console.log('SaveJsonDB - open error : ' + e);
+        return false;
+      }
+      fs.writeSync(fd, JSON.stringify(this.extensions_list_));
+      fs.closeSync(fd);
+      return true;
+    }
+
+    ExtensionManager.prototype.generateJsFromAPIs = function(js_path) {
+      if (!js_path) js_path = path.join(this.ext_path_, PRELOAD_JS_FILE);
+      console.log('GenerateJsFromAPIs : ' + js_path);
+      var fd;
+      try {
+        fd = fs.openSync(js_path, 'w');
+      } catch(e) {
+        console.log('GenerateJsFromAPIs - open error : ' + e);
+        return false;
+      }
+      // Introduction Comments & preset
+      var comments = "// Auto-generated code by extensions_installer\n// Generated from “entry_points” field in package.json\n// var <entry_points_symbol> = <entry_points_class>;\n";
+      var preset = "\nvar EXTENSIONS_PATH = process.env.WAS_EXTENSIONS_PATH;\n";
+      fs.writeSync(fd, comments+preset);
+
+      // namespace
+      for (namespace in this.extensions_API_) {
+        if (namespace != "_default_") {
+          fs.writeSync(fd, "\n//namespace\n");
+          fs.writeSync(fd, "var "+namespace+" = new Object();\n");
+
+          // namespace.entry_points
+          fs.writeSync(fd, "\n//namespace.entry_points\n");
+          for (entry_symbol in this.extensions_API_[namespace]) {
+            fs.writeSync(fd, namespace+"."+entry_symbol+" = require('"+this.extensions_API_[namespace][entry_symbol]+"');\n");
+          }
+          // attach to root
+          fs.writeSync(fd, "\n//attach to window\n");
+          fs.writeSync(fd, "window."+namespace+" = "+namespace+";\n");
+        } else { // '_default_'
+          // entry_points and attach to root
+          fs.writeSync(fd, "\n//default namespace - entry_points and attach to window\n");
+          for (entry_symbol in this.extensions_API_[namespace]) {
+            fs.writeSync(fd, "window."+entry_symbol+" = require('"+this.extensions_API_[namespace][entry_symbol]+"');\n");
+          }
+        }
+      }
+      fs.closeSync(fd);
+      return true;
+    }
+
+    ExtensionManager.prototype.build = function(skipLoadDB) {
+      if (!skipLoadDB)
+        this.loadJsonDB();
+      console.log('BUILD(' + skipLoadDB + ') : ' + this.ext_path_);
+      var extensions = [];
+      var extensions_API= [];
+      var filenames;
+      try {
+        filenames = fs.readdirSync(this.ext_path_);
+      } catch (e) {
+        console.log(e);
+      }
+      if (this.extensions_list_) {
+        for (i in this.extensions_list_) {
+          var extension = this.extensions_list_[i];
+          if (extension.activate == false) continue;
+          var manifest_obj, manifest_path = path.join(extension.path, MANIFEST_FILE);
+          try {
+            manifest_obj = JSON.parse(fs.readFileSync(manifest_path));
+            if (manifest_obj.type && manifest_obj.type.toUpperCase() === 'API') {
+              var namespace = manifest_obj.namespace;
+              if (!namespace) namespace = '_default_';
+              if (!extensions_API[namespace]) extensions_API[namespace] = [];
+
+              for (entry_it in manifest_obj.entry_points) {
+                for (entry_symbol in manifest_obj.entry_points[entry_it]) {
+                  var module_path = manifest_obj.entry_points[entry_it][entry_symbol];
+                  console.log('> entry_symbol: ' + entry_symbol + ' module_path: ' + module_path);
+                  if (extensions_API[namespace][entry_symbol]) {
+                    console.log('extensions_API[' + namespace + '][' + entry_symbol + '] already registered :' + extensions_API[namespace][entry_symbol]);
+                    continue;
+                  }
+                  extensions_API[namespace][entry_symbol] = path.join(extension.path, module_path);
+                }
+              }
+            } else {
+              if (!extensions[T_WRT]) extensions[T_WRT] = [];
+              if (extensions[T_WRT][manifest_obj.name]) {
+                console.log('extensions[WRT][' + manifest_obj.name + '] already registered : ' + extensions[WRT][manifest_obj.name]);
+                continue;
+              }
+              extensions[T_WRT][manifest_obj.name] = path.join(extension.path, manifest_obj.main);
+            }
+          } catch(e) {
+            console.log('Error - ' + e);
+          }
+        }
+      }
+      if (this.extensions_ != null) {
+        delete this.extensions_;
+        this.extensions_ = null;
+      }
+      if (this.extensions_API_ != null) {
+        delete this.extensions_API_;
+        this.extensions_API_ = null;
+      }
+      this.extensions_ = extensions;
+      this.extensions_API_ = extensions_API;
+      return this.extensions_;
+    };
+
+    ExtensionManager.prototype.activate = function(name) {
+      ipc.send(IPC_EXTENSIONS_ACTIVATE, name);
+    };
+
+    ExtensionManager.prototype.deactivate = function(name) {
+      ipc.send(IPC_EXTENSIONS_DEACTIVATE, name);
+    };
+
+    ExtensionManager.getManifestFile = function() {
+      return MANIFEST_FILE;
+    };
+
+    ExtensionManager.getPreloadJsFile = function() {
+      return PRELOAD_JS_FILE;
+    };
+
+    return ExtensionManager;
+
+  })();
+
+  module.exports = ExtensionManager;
+
+}).call(this);
+
diff --git a/wrt/wrt_support/extensions_settings/src/extension_server.js b/wrt/wrt_support/extensions_settings/src/extension_server.js
new file mode 100755 (executable)
index 0000000..cb23cce
--- /dev/null
@@ -0,0 +1,135 @@
+var fs = require('fs'),
+    path = require('path'),
+    http = require('http'),
+    crypto = require('crypto'),
+    unzip = require('unzip'),
+    HOSTSERVER = 'http://10.251.43.156:52273/';
+
+function randomValue(len) {
+        return crypto.randomBytes(Math.ceil(len/2))
+        .toString('hex')
+        .slice(0, len);
+    }
+
+module.exports = {
+    getRepoList : function(callbackfunc){
+        var arrAppInfos = [];
+        var request = new XMLHttpRequest();
+        request.onreadystatechange = function (event) {
+            if(request.readyState == 4) {
+                if(request.status == 200) {
+                    var str = request.responseText;
+                    console.log(str);
+                    var objson = JSON.parse(str);
+                    console.log(objson.apps.length);
+                    //console.log(JSON.stringify(objson.apps[0]));
+
+                    for(var i=0; i<objson.apps.length; i++){
+                      var appInfo = {};
+                      // appName
+                      if(objson.apps[i].name == undefined){
+                        appInfo.title = 'No Title';
+                      } else {
+                        appInfo.title = objson.apps[i].name;
+                      }
+                      // appVersion
+                      if(objson.apps[i].name == undefined){
+                        appInfo.version = 'No VerInfo';
+                      } else {
+                        appInfo.version = objson.apps[i].latestVersion.version;
+                      }
+
+                      /*/ appDescription
+                      if(objson.apps[i].description == undefined){
+                        appInfo.version = 'No DescriptionInfo';
+                      } else {
+                        appInfo.description = objson.apps[i].description;
+                      }*/
+                      //console.log(JSON.stringify(appInfo));
+                      arrAppInfos.push(appInfo);
+                    }
+                    //console.log(JSON.stringify(arrAppInfos));
+                    callbackfunc(arrAppInfos);
+                }
+            }
+        };
+        request.open('GET', HOSTSERVER + 'exts', true);
+        request.send();
+    },
+
+    download: function(passedSelf, callbackfunc, version){
+        var name = passedSelf.repo_name;
+        var version = passedSelf.version;
+        console.log('download ~~~' + name + ' ' + version);
+
+        var version_key = '',
+            verChange = false;
+        if( version != undefined) {
+            version_key = '/' + version;
+            verChange = true;
+        }
+
+        var filePath = './temp_extension/' + name + '.zip';
+        var httpOptions = {
+            hostname: '10.251.43.156',
+            port: '52273',
+            path: '/exts/' + name + version_key + '?get=package',
+            method: 'GET'
+        };
+
+        var reqGet = http.request(httpOptions, function (response){
+            var statusCode = response.statusCode;
+
+            if(statusCode == 404 || statusCode == 403)
+            {
+                console.log('statusCode = ' + statusCode);
+            } else {
+                var idx = 0;
+                //console.log(JSON.stringify(response));
+                for(var p in response.headers){
+                  console.log(p);
+                }
+
+                var len = parseInt(response.headers["content-length"]);
+                console.log(len);
+                var body = new Buffer(len);
+
+                response.setEncoding('binary');
+
+                response.on('data', function(chunk){
+                    console.log('res data !!!');
+                    body.write(chunk, idx, 'binary');
+                    idx += chunk.length;
+                });
+
+                response.on('end', function(){
+                    console.log('res end !!!');
+                    var fileStream = fs.createWriteStream(filePath);
+                    fileStream.write(body);
+                    callbackfunc(filePath, verChange, passedSelf);
+                });
+            }
+        });
+        reqGet.on('error', function(err){
+            console.log(err);
+        });
+        reqGet.end();
+    },
+
+    findUnzipedFolderPath: function(filePath, name){
+        return path.join(filePath.split(name + '.zip')[0], '');
+    },
+
+    unzipExtPackage: function(passedSelf, destPath, zipPackage, callback) {
+        fs.createReadStream(zipPackage).pipe(unzip.Extract({path: destPath}).on('close', function () {
+            if(typeof callback === 'function') {
+                console.log('Unzip OK ..!!');
+                var unzipFolderPath = path.join(zipPackage.split('.zip')[0], '');
+                var name = path.join(unzipFolderPath.split('/')[1],'');
+                console.log('unzipExtPackage: ' + name +' ' + unzipFolderPath);
+                return callback(passedSelf, name, unzipFolderPath);
+            }
+                callback("ERROR");
+        }));
+    },
+};
diff --git a/wrt/wrt_support/extensions_settings/src/main.js b/wrt/wrt_support/extensions_settings/src/main.js
new file mode 100755 (executable)
index 0000000..3e3c5c3
--- /dev/null
@@ -0,0 +1,238 @@
+var ExtensionManager = require('./src/extension_manager.js');
+var extension_manager = new ExtensionManager();
+
+var ExtensionServer = require('./src/extension_server.js');
+
+var activate = function(extension) {
+  console.log('activate : ' + extension.name);
+  extension.activate = true;
+  extension_manager.activate(extension.name);
+  if (extension.type.toUpperCase() === 'API') {
+    extension_manager.build(true);
+    extension_manager.generateJsFromAPIs();
+  }
+  extension_manager.saveJsonDB();
+}
+var deactivate = function(extension) {
+  console.log('deactivate : ' + extension.name);
+  extension.activate = false;
+  extension_manager.deactivate(extension.name);
+  if (extension.type.toUpperCase() === 'API') {
+    extension_manager.build(true);
+    extension_manager.generateJsFromAPIs();
+  }
+  extension_manager.saveJsonDB();
+}
+
+var repoDiv = document.getElementById('repoDiv');
+var serverrepoDiv = document.getElementById('serverrepoDiv');
+var extDiv = document.getElementById('extDiv');
+
+//document.body.appendChild(repoDiv);
+//document.body.appendChild(extDiv);
+
+var checkINSTALL = function(name) {
+  for (i in extension_manager.extensions_list_) {
+    var extension = extension_manager.extensions_list_[i];
+    if(name == extension.name) return false;
+  }
+  return true;
+}
+
+var installRepoItem = function(repo_name, path, cbfunc) {
+  console.log('install ' + repo_name + ' path= ' + path);
+  extension_manager.installRepoItem(repo_name, path, cbfunc);
+}
+
+var uninstallExtension = function(extension) {
+  console.log('uninstall ' + extension.name);
+  extension_manager.uninstallExtension(extension);
+}
+
+var refreshAllList = function() {
+  refreshRepoList();
+  refreshExtensionsList();
+}
+
+var refreshRepoList = function() {
+  repoDiv.innerText = "";
+
+  var table = document.createElement('table');
+  var tr = document.createElement('tr');
+  var td_1 = document.createElement('td');
+  var td_2 = document.createElement('td');
+  tr.appendChild(td_1);
+  tr.appendChild(td_2);
+  td_1.textContent = 'REPO lists';
+  table.appendChild(tr);
+
+  extension_manager.loadRepoListFromPath();
+  extension_manager.loadJsonDB();
+
+  for (name in extension_manager.repo_list_) {
+    var repo_path = extension_manager.repo_list_[name];
+    var extension = extension_manager.loadExtensionFromPath(repo_path);
+    var contents = '<b>' + name + '</b><br><font size=1>v' + extension.version + '<br>' + extension.description + '</font>';
+
+    tr = document.createElement('tr');
+    td_1 = document.createElement('td');
+    td_2 = document.createElement('td');
+    tr.appendChild(td_1);
+    tr.appendChild(td_2);
+    var div = document.createElement('div');
+    //div.innerHTML = contents;
+    var button = document.createElement('a');
+    if (checkINSTALL(name)) {
+      button.setAttribute('class', 'button black');
+      button.textContent = 'INSTALL';
+      button.repo_name = name;
+      button.onclick = function(ev) {
+        installRepoItem(this.repo_name, refreshAllList);
+      };
+    } else {
+      button.setAttribute('class', 'button dark_grey');
+      button.textContent = 'INSTALLED';
+    }
+    //td_1.appendChild(contents);
+    td_1.innerHTML = contents;
+    td_2.appendChild(button);
+    table.appendChild(tr);
+  }
+  repoDiv.appendChild(table);
+}
+
+var refreshExtensionsList = function() {
+  extDiv.innerText = "";
+
+  var table = document.createElement('table');
+  var tr = document.createElement('tr');
+  var td_1 = document.createElement('td');
+  var td_2 = document.createElement('td');
+  tr.appendChild(td_1);
+  tr.appendChild(td_2);
+  td_1.textContent = 'EXTENSIONS lists';
+  table.appendChild(tr);
+
+  extension_manager.loadJsonDB();
+
+  for (i in extension_manager.extensions_list_) {
+    var extension = extension_manager.extensions_list_[i];
+    tr = document.createElement('tr');
+    td_1 = document.createElement('td');
+    td_2 = document.createElement('td');
+    tr.appendChild(td_1);
+    tr.appendChild(td_2);
+    var div = document.createElement('div');
+    var contents = '<b>' + extension.name + '</b>';
+    var button = document.createElement('a');
+    if (extension.type.toUpperCase() === 'INSTALLER') {
+      button.setAttribute('class', 'button dark_grey');
+      button.textContent = 'INSTALLED';
+    } else {
+      button.setAttribute('class', 'button black');
+      var btnContent = 'DEACTIVATE';
+      if (!extension.activate) btnContent = 'ACTIVATE';
+        button.textContent = btnContent;
+      button.extension = extension;
+      button.onclick = function(ev) {
+        if (this.textContent == 'ACTIVATE') {
+          activate(this.extension);
+          this.textContent = 'DEACTIVATE';
+        } else {
+          deactivate(this.extension);
+          this.textContent = 'ACTIVATE';
+        }
+      };
+    }
+    // delete button
+    var button2 = document.createElement('a');
+    button2.setAttribute('class', 'button dsgnmoo');
+    button2.textContent = 'X';
+    button2.extension = extension;
+    button2.onclick = function(ev) {
+      uninstallExtension(this.extension)
+      setTimeout(function(){
+        refreshAllList();
+        refreshServerRepoList();
+      }, 1000);
+    }
+
+    //td_1.appendChild(content);
+    td_1.innerHTML = contents;
+    td_2.appendChild(button);
+    td_2.appendChild(button2);
+    table.appendChild(tr);
+  }
+  extDiv.appendChild(table);
+}
+
+var refreshServerRepoList = function() {
+  ExtensionServer.getRepoList(makeserverRepoListcb);
+}
+
+var makeserverRepoListcb = function(repoList) {
+  console.log('refreshServerRepoList');
+  serverrepoDiv.innerText = "";
+
+  var table = document.createElement('table');
+  var tr = document.createElement('tr');
+  var td_1 = document.createElement('td');
+  var td_2 = document.createElement('td');
+  tr.appendChild(td_1);
+  tr.appendChild(td_2);
+  td_1.textContent = 'SERVER REPO lists';
+  table.appendChild(tr);
+
+  extension_manager.loadJsonDB();
+
+  for (var i=0; i<repoList.length; i++) {
+    var name = repoList[i].title;
+    var contents = '<b>' + name + '</b><br><font size=1>v' + repoList[i].version + '</font>'; // + '<br>' + extension.description + '</font>';
+
+    tr = document.createElement('tr');
+    td_1 = document.createElement('td');
+    td_2 = document.createElement('td');
+    tr.appendChild(td_1);
+    tr.appendChild(td_2);
+    var div = document.createElement('div');
+    //div.innerHTML = contents;
+    var button = document.createElement('a');
+    if (checkINSTALL(name)) {
+      button.setAttribute('class', 'button black');
+      button.textContent = 'INSTALL';
+      button.repo_name = name;
+      button.onclick = function(ev) {
+        console.log("***********Click install button! *****");
+        ExtensionServer.download(this, execAfterDownloadcb);
+      };
+    } else {
+      button.setAttribute('class', 'button dark_grey');
+      button.textContent = 'INSTALLED';
+    }
+
+    td_1.innerHTML = contents;
+    td_2.appendChild(button);
+    table.appendChild(tr);
+  }
+
+  serverrepoDiv.appendChild(table);
+}
+
+var execAfterDownloadcb = function(filePath, verChange, passedSelf){
+  console.log('execAfterDownloadcb: ' + filePath);
+  var unzipedFolderPath = ExtensionServer.findUnzipedFolderPath(filePath, passedSelf.repo_name);
+  ExtensionServer.unzipExtPackage(passedSelf, unzipedFolderPath, filePath, execAfterUnzipcb);  // extract: function(destPath, zipPackage, callback)
+}
+
+var execAfterUnzipcb = function(passedSelf, name, unzipedFolderPath) {
+  console.log('execAfterUnzipcb: ');
+  installRepoItem(name, unzipedFolderPath, function(){
+    passedSelf.setAttribute('class', 'button dark_grey');
+    passedSelf.textContent = 'INSTALLED';
+    refreshAllList();
+  });
+}
+
+refreshRepoList();
+refreshServerRepoList();
+refreshExtensionsList();
diff --git a/wrt/wrt_support/extensions_settings/src/was_key_event_handler.js b/wrt/wrt_support/extensions_settings/src/was_key_event_handler.js
new file mode 100644 (file)
index 0000000..48c127f
--- /dev/null
@@ -0,0 +1,18 @@
+(function() {
+    window.addEventListener('keydown', function(e) {
+        if (e.keyCode == 27) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+    window.addEventListener('mousedown', function(e) {
+        if (e.which == 3) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+})()
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/database/db/db_installer_extension.json b/wrt/wrt_support/installer/database/db/db_installer_extension.json
new file mode 100755 (executable)
index 0000000..bb2f6f3
--- /dev/null
@@ -0,0 +1 @@
+[{"name":"tizen","path":"tizen","supported_type":["wgt"],"_id":"74ae255610004c32b9683b1a2a1e5875"},{"name":"webos","path":"webos_installer","supported_type":["ipk"],"_id":"dd79307eb4db455892"},{"name":"chrome","path":"chrome_installer","supported_type":["crx"],"_id":"f026247802384dbb892e03110960d654"}]
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/database/installer_extension.js b/wrt/wrt_support/installer/database/installer_extension.js
new file mode 100755 (executable)
index 0000000..eafa132
--- /dev/null
@@ -0,0 +1,66 @@
+var fs = require('fs'),
+    path = require('path'),
+    diskdb = require('diskdb');
+
+var DATABASE_NAME = "db_installer_extension";
+var DATABASE_FILE = DATABASE_NAME+".json";
+
+module.exports = {
+    update: function (dbPath, data) {
+        if (fs.statSync(dbPath).isDirectory()) {
+            diskdb.connect(dbPath, [DATABASE_NAME]);
+
+            var database = diskdb[DATABASE_NAME],
+            contents = database.find(),
+            appName = typeof data === 'object' ? appName = data.name : data;
+
+            for (var i = 0, len = contents.length; i < len; i++) {
+                if (appName === contents[i].name) {
+                    database.remove({name: contents[i].name});
+                }
+            }
+
+            if (typeof data === 'object') {
+              database.save(data);
+            }
+        }
+    },
+
+    getExtensionList : function (dbPath) {
+        var databaseFile = path.join(dbPath, DATABASE_FILE);
+        if (fs.statSync(databaseFile).isFile()) {
+            diskdb.connect(dbPath, [DATABASE_NAME]);
+
+            var database = diskdb[DATABASE_NAME],
+            contents = database.find(),
+            list = [];
+
+            for (var i = 0, length = contents.length; i < length; i++){
+                list.push(contents[i].name);
+            }
+
+            return list;
+        }
+    },
+    searchInstaller : function (dbPath, app_type) {
+        var databaseFile = path.join(dbPath, DATABASE_FILE);
+        if (fs.statSync(databaseFile).isFile()) {
+            diskdb.connect(dbPath, [DATABASE_NAME]);
+
+            var database = diskdb[DATABASE_NAME],
+            contents = database.find(),
+            list = [];
+
+            for (var i = 0, length = contents.length; i < length; i++){
+                var supported_type = contents[i].supported_type;
+
+                if(Array.isArray(supported_type)){
+                    if(supported_type.indexOf(app_type) >=0 ){
+                        return contents[i];
+                    }
+                }
+            }
+            return null;
+        }
+    },
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/OWR_InstallerManager/index.js b/wrt/wrt_support/installer/js/OWR_InstallerManager/index.js
new file mode 100755 (executable)
index 0000000..598ee95
--- /dev/null
@@ -0,0 +1,21 @@
+'use strict';
+
+class OWR_InstallManager{
+    constructor(config) {
+       this.config = config;
+       this.applicationData = null;
+       this.privilegesData = null;
+    }
+
+    extractPackage(packagePath, callback) {
+        this.packagePath = packagePath;
+    }
+
+    getApplicationData(callback) {
+    }
+
+    getPrivilegesData(callback) {
+    }
+}
+
+module.exports = OWR_InstallManager;
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/OWR_InstallerManager/package.json b/wrt/wrt_support/installer/js/OWR_InstallerManager/package.json
new file mode 100755 (executable)
index 0000000..8217385
--- /dev/null
@@ -0,0 +1,6 @@
+{
+    "name": "OWR_InstallerManager",
+    "version": "0.0.1",
+    "description": "",
+    "main": "index.js"
+}
diff --git a/wrt/wrt_support/installer/js/database.js b/wrt/wrt_support/installer/js/database.js
new file mode 100755 (executable)
index 0000000..56fc68d
--- /dev/null
@@ -0,0 +1,66 @@
+var fs = require('fs'),
+    path = require('path'),
+    diskdb = require('diskdb');
+
+module.exports = {
+    update: function (installPath, data) {
+        if (fs.statSync(installPath).isDirectory()) {
+            diskdb.connect(installPath, ['database']);
+
+            var database = diskdb.database,
+            contents = database.find(),
+            appName = typeof data === 'object' ? appName = data.name : data;
+
+            for (var i = 0, len = contents.length; i < len; i++) {
+                if (appName === contents[i].name) {
+                    database.remove({name: contents[i].name});
+                }
+            }
+
+            if (typeof data === 'object') {
+              database.save(data);
+            }
+        }
+    },
+
+    getList: function (installPath) {
+        var databaseFile = path.join(installPath, 'database.json');
+        if (fs.statSync(databaseFile).isFile()) {
+            diskdb.connect(installPath, ['database']);
+
+            var database = diskdb.database,
+            contents = database.find(),
+            list = [],
+            appPath;
+
+            for (var i = 0, length = contents.length; i < length; i++){
+                appPath = path.join(installPath, contents[i].name);
+
+                if (fs.statSync(appPath).isDirectory()) {
+                    list.push(contents[i].name);
+                }
+            }
+
+            return list;
+        }
+    },
+
+    getData: function (installPath, key) {
+        var databaseFile = path.join(installPath, 'database.json');
+        if (fs.statSync(databaseFile).isFile()) {
+            diskdb.connect(installPath, ['database']);
+
+            var database = diskdb.database,
+                contents = database.find(),
+                appPath;
+
+            for (var i = 0, length = contents.length; i < length; i++){
+                appPath = path.join(installPath, contents[i].name);
+
+                if (fs.statSync(appPath).isDirectory() && contents[i].name === key) {
+                    return contents[i];
+                }
+            }
+        }
+    }
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/extension/tizen/extractor.js b/wrt/wrt_support/installer/js/extension/tizen/extractor.js
new file mode 100755 (executable)
index 0000000..5516690
--- /dev/null
@@ -0,0 +1,20 @@
+var fs = require('fs'),
+    crypto = require('crypto'),
+    unzip = require('unzip');
+
+function randomValue(len) {
+    return crypto.randomBytes(Math.ceil(len/2))
+    .toString('hex')
+    .slice(0, len);
+}
+
+module.exports = {
+    extract: function(destPath, appPackage, callback) {
+        fs.createReadStream(appPackage).pipe(unzip.Extract({path: destPath}).on('close', function () {
+            if(typeof callback === 'function') {
+                return callback(null);
+            }
+                callback("Fail extract Tizen web app!");
+        }));
+    }
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/extension/tizen/installmanager.js b/wrt/wrt_support/installer/js/extension/tizen/installmanager.js
new file mode 100755 (executable)
index 0000000..779f6a1
--- /dev/null
@@ -0,0 +1,39 @@
+'use strict';
+
+var path = require('path');
+
+var parser = require("./parser.js"),
+    extractor = require("./extractor.js"),
+    OWR_InstallerManager = require('../../OWR_InstallerManager'); // [Need fixed] the module should move to node_modules
+
+class WGT_InstallerManger extends OWR_InstallerManager {
+    constructor(config) {
+        super(config);
+    }
+
+    extractPackage(callback) {
+        var self = this;
+        extractor.extract(this.config.Path.temp, this.config.Path.package, function (error) {
+            if(error != undefined)
+                callback(error);
+            else
+                callback(null, self.config.Path.temp);
+        });
+    }
+
+    getApplicationData(callback) {
+        var self = this;
+        parser.parseApplicationData(path.join(this.config.Path.extractApp, 'config.xml'), function (applicationData) {
+            callback(null, applicationData);
+        });
+    }
+
+    getPrivilegesData(callback) {
+        var self = this;
+        parser.parsePrivilegesData(path.join(this.config.Path.extractApp, 'config.xml'), function (privilegesData) {
+            callback(null, privilegesData);
+        });
+    }
+}
+
+module.exports = WGT_InstallerManger;
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/extension/tizen/packageManager.js b/wrt/wrt_support/installer/js/extension/tizen/packageManager.js
new file mode 100755 (executable)
index 0000000..d09031c
--- /dev/null
@@ -0,0 +1,35 @@
+'use strict';
+
+var path = require('path'),
+    fs = require('fs'),
+    parser = require('./parser.js');
+
+class WGT_PackageManager {
+    constructor(config) {
+    }
+
+    createPackage(packagePath, callback) {
+        var configFile = path.join(packagePath, 'config.xml');
+        this.exists(configFile, 'config.xml is not exist');
+
+        var zip = new AdmZip();
+        zip.addLocalFolder(packagePath);
+
+        parser.parse(configFile, function (result) {
+            var name = result.name;
+            zip.writeZip(name + '.wgt');
+            console.log('Packaging OK ..!!');
+            callback(null);
+        });
+    }
+
+    exists (file, msg) {
+        fs.exists(file, function (exists) {
+            if(!exists) {
+                throw new Error(msg);
+            }
+        });
+    }
+}
+
+module.exports = WGT_PackageManager;
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/extension/tizen/parser.js b/wrt/wrt_support/installer/js/extension/tizen/parser.js
new file mode 100755 (executable)
index 0000000..dac0092
--- /dev/null
@@ -0,0 +1,84 @@
+var fs = require('fs'),
+    xml2js = require('xml2js');
+
+function createApplicationData (data) {
+    var result = {
+        app_id: data.widget["tizen:application"][0]['$'].id,
+        version: data.widget["$"].version,
+        content: data.widget.content[0]['$'].src,
+        icon: data.widget.icon[0]['$'].src,
+        name: data.widget.name[0],
+        type: 'packaged'
+    };
+    result.localeInfo = [];
+
+    if (data.widget.name.length > 1) {
+        for (var i = 0; i < data.widget.name.length; i++) {
+            if (typeof(data.widget.name[i]) === 'string') {
+                result.localeInfo.push({locale: 'default', name: data.widget.name[i]});
+            } else if (typeof(data.widget.name[i]) === 'object') {
+                result.localeInfo.push({locale: data.widget.name[i]['$']['xml:lang'], name: data.widget.name[i]['_']});
+            }
+        }
+    } else {
+        result.localeInfo.push({locale: 'default', name: data.widget.name[0]});
+    }
+
+    if (result.content.indexOf('http') > -1) {
+        result.type = 'hosted';
+    }
+
+    return result;
+}
+
+function createPrivilegesData (data) {
+    var result = {};
+    var content = data.widget.content[0]['$'].src;
+    var type = 'packaged';
+
+    if (content.indexOf('http') > -1) {
+        type = 'hosted';
+    }
+
+    if(type != 'hosted'){
+        var privileges = data.widget['tizen:privilege'];
+        result.privileges = [];
+
+        if( privileges != undefined && Array.isArray(privileges) ){
+            for (index in privileges){
+                result.privileges.push(privileges[index]["$"].name);
+            }
+        }
+    }
+
+    return result;
+}
+
+module.exports = {
+    parseApplicationData : function (path, callback) {
+        var parser = new xml2js.Parser();
+
+        parser.addListener('end', function (result) {
+            if(typeof callback === 'function') {
+                callback(createApplicationData(result));
+            }
+        });
+
+        fs.readFile(path, function (err, data) {
+            parser.parseString(data);
+        });
+    },
+    parsePrivilegesData : function (path, callback) {
+        var parser = new xml2js.Parser();
+
+        parser.addListener('end', function (result) {
+            if(typeof callback === 'function') {
+                callback(createPrivilegesData(result));
+            }
+        });
+
+        fs.readFile(path, function (err, data) {
+            parser.parseString(data);
+        });
+    }
+};
diff --git a/wrt/wrt_support/installer/js/installManager.js b/wrt/wrt_support/installer/js/installManager.js
new file mode 100755 (executable)
index 0000000..46b2e36
--- /dev/null
@@ -0,0 +1,124 @@
+'use strict';
+
+var path = require('path'),
+    os = require('os'),
+    fs = require('fs'),
+    crypto = require('crypto'),
+    series = require('run-series'),
+    database = require("./database.js"),
+    rimraf = require('rimraf');
+
+var tempBase = path.join(os.tmpdir(), 'owrt'),
+    installer = require("./installer.js"),
+    db_installer_extension = require('../database/installer_extension.js');
+
+class InstallManager{
+
+    constructor(config) {
+        this.config = config;
+        this.createTempPath();
+        this.delegator = this.initDelegator(config);
+        this.tasks = this.createTasks(config, this.delegator);
+    }
+
+    runInstall(){
+        series(this.tasks, function (err, result) {
+        });
+    }
+
+    initDelegator(config) {
+        var extension_path = "./extension";
+
+        if(config.format == undefined)
+            config.format = 'wgt';
+
+        var installer = db_installer_extension.searchInstaller(this.config.Path.installdb, config.format);
+        if(installer == null) {
+             throw new Error("It is not supported this package format.");
+        }
+
+        var DelegatorClass = require(extension_path + "/" + installer.path + "/installmanager.js");
+        return new DelegatorClass(config);
+    }
+
+    createTasks(config, delegator) {
+
+        var self = this;
+
+        return [
+            function (cb) {
+                delegator.extractPackage(function(error, extractAppPath){
+                    if(error != undefined)
+                        throw new Error("Error extract Package. Messsage : "+ error);
+
+                    console.log('[Success] extract package ..!!');
+                    delegator.config.Path.extractApp = extractAppPath;
+                    cb(null);
+                });
+            },
+            function (cb) {
+                delegator.getApplicationData(function(error, applicationData){
+                    if(error != undefined)
+                        throw new Error("[Error] Fail getApplicationData. Messsage : "+ error);
+
+                    console.log('[Success] parsing ApplicationData ..!!');
+                    delegator.applicationData = applicationData;
+                    cb(null);
+                });
+            },
+            function (cb) {
+                delegator.getPrivilegesData(function(error, privilegesData){
+                    if(error != undefined)
+                        throw new Error("[Error] Fail getPrivilegesData. Messsage : "+ error);
+
+                    console.log('[Success] parsing PrivilegesData ..!!');
+                    delegator.privilegesData = privilegesData;
+                    cb(null);
+                });
+            },
+            function (cb) {
+                var appName = delegator.applicationData.name;
+                installer.install(self.config.Path.extractApp, path.join(config.Path.install, appName), function(error){
+
+                    if(error != undefined)
+                        throw new Error("[Error] Fail Install Application. Messsage : "+ error);
+
+                    console.log('[Success] install Application ..!!');
+                    cb(null);
+                });
+            },
+            function (cb) {
+                self.removeTemp(config.Path.temp, null);
+                cb(null);
+            },
+            function (cb) {
+                database.update(config.Path.install, delegator.applicationData);
+                cb(null);
+            }
+        ];
+    }
+
+    removeTemp(path, err) {
+        rimraf(path, function () {
+            if (err) {
+                throw err
+            }
+        });
+    }
+
+    createTempPath () {
+        var tempPath;
+        if (!fs.existsSync(tempBase)) fs.mkdirSync(tempBase);
+        tempPath = path.join(tempBase, this.randomValue(6));
+        if (!fs.existsSync(tempPath)) fs.mkdirSync(tempPath);
+        this.config.Path.temp = tempPath;
+    }
+
+    randomValue (len) {
+    return crypto.randomBytes(Math.ceil(len/2))
+        .toString('hex')
+        .slice(0, len);
+    }
+}
+
+module.exports = InstallManager;
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/installer.js b/wrt/wrt_support/installer/js/installer.js
new file mode 100755 (executable)
index 0000000..ec06723
--- /dev/null
@@ -0,0 +1,24 @@
+var fs = require('fs'),
+    path = require('path'),
+    rimraf = require('rimraf'),
+    mv = require('mv');
+
+function moveApp (srcPath, destPath, callback) {
+    mv(srcPath, destPath, {mkdirp: true}, function(err) {
+        callback(err, destPath);
+    });
+}
+
+module.exports = {
+    install: function (srcPath, destPath, callback) {
+        fs.stat(destPath, function (err, stats) {
+            if (!err) {
+                rimraf(destPath, function () {
+                    moveApp(srcPath, destPath, callback);
+                });
+            } else {
+                moveApp(srcPath, destPath, callback);
+            }
+        });
+    }
+};
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/packageManager.js b/wrt/wrt_support/installer/js/packageManager.js
new file mode 100755 (executable)
index 0000000..676d036
--- /dev/null
@@ -0,0 +1,51 @@
+'use strict';
+
+var path = require('path'),
+    os = require('os'),
+    fs = require('fs'),
+    series = require('run-series'),
+    db_installer_extension = require('../database/installer_extension.js');
+
+class PackageManager{
+
+    constructor(config) {
+        this.config = config;
+        this.delegator = this.initDelegator(config);
+        this.tasks = this.createTasks(config, this.delegator);
+    }
+
+    runPackage(){
+        series(this.tasks, function (err, result) {
+            console.log(result);
+        });
+    }
+
+    initDelegator(config) {
+        var extension_path = "./extension";
+
+        if(config.format == undefined)
+            config.format = 'wgt';
+
+        var installer = db_installer_extension.searchInstaller(this.config.Path.installdb, config.format);
+        if(installer == null) {
+             throw new Error("It is not supported this package format.");
+        }
+
+        var DelegatorClass = require(extension_path + "/packageManager.js");
+        return new DelegatorClass(config);
+    }
+
+    createTasks(config, delegator) {
+        var self = this;
+        return [
+            function (cb) {
+                delegator.createPackage(config.Path.packagePath, function(error){
+                //if(!error)
+                    cb(error);
+                });
+            }
+        ];
+    }
+}
+
+module.exports = PackageManager;
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/js/uninstallManager.js b/wrt/wrt_support/installer/js/uninstallManager.js
new file mode 100755 (executable)
index 0000000..2fff063
--- /dev/null
@@ -0,0 +1,51 @@
+'use strict';
+
+var fs = require('fs'),
+    rimraf = require('rimraf'),
+    series = require('run-series'),
+    database = require("./database.js");
+
+class UnInstallManager{
+
+    constructor(config) {
+        this.config = config;
+        this.tasks = this.createTasks(config, this.delegator);
+    }
+
+    runUninstall(){
+        series(this.tasks, function (err, result) {
+        });
+    }
+
+    createTasks(config, delegator) {
+    var self = this;
+
+    return [
+            function (cb) {
+                self.uninstall(config.Path.application, function(error){
+                    cb(error);
+                });
+            },
+            function (cb) {
+                database.update(config.Path.install, config.packageName);
+                cb(null);
+            }
+        ];
+    }
+
+    uninstall(installPath, callback){
+        fs.stat(installPath, function (err, stats) {
+            if (!err) {
+                rimraf(installPath, function () {
+                    console.log('Uninstall OK ..!!');
+                    callback(err);
+                });
+            }
+            else {
+                callback(err);
+            }
+        });
+    }
+}
+
+module.exports = UnInstallManager;
diff --git a/wrt/wrt_support/installer/manager.js b/wrt/wrt_support/installer/manager.js
new file mode 100755 (executable)
index 0000000..bc5223b
--- /dev/null
@@ -0,0 +1,125 @@
+#!/usr/bin/env node
+'use strict';
+
+var path = require('path'),
+    os = require('os'),
+    fs = require('fs'),
+    yargs = require('yargs');
+
+var command = yargs.argv;
+
+var InstallManager = require("./js/installManager.js"),
+    UninstallManager = require("./js/uninstallManager.js"),
+    PackageManager = require("./js/packageManager.js"),
+    database = require("./js/database.js");
+
+class Manager {
+    constructor() {
+        this.config = {};
+        this.config.Path = {};
+        this.config.Path.install = process.env.WAS_APPS_REPO;
+
+        if (!this.config.Path.install){
+            console.log("WARNING! WAS_APPS_REPO not set - apps cannot be loaded");
+            this.config.Path.install = path.join(__dirname.split('installer')[0], 'apps_repo');
+            console.log("Temporarily set WAS_EXTENSIONS_PATH=" + this.config.Path.install);
+        }
+        if (!process.env.WAS_HOME){
+            this.config.Path.installdb = path.join(__dirname.split('installer')[0], 'installer','database','db');
+        }else{
+            this.config.Path.installdb = path.join(process.env.WAS_HOME, 'installer','database','db');
+        }
+    }
+
+    control(command, completeCB) {
+
+        if (command.list)
+            return this.getList();
+        else if (command.pkg)
+            this.packaging(command.pkg);
+        else if (command.i)
+            this.installPackage(command.i);
+        else if (command.r)
+            this.removePackage(command.r);
+        else
+            this.printHelp();
+
+        if (completeCB)
+            completeCB();
+    }
+
+    installPackage(packagePath) {
+        var self = this;
+
+        fs.stat(packagePath, function (err, stats) {
+            if (err) {
+              throw new Error("Package file is not exists.");
+            }
+
+            if (stats.isFile()){
+                self.config.Path.package = packagePath;
+                self.config.format = self.getExtension(packagePath);
+
+                var installManager = new InstallManager(self.config);
+                installManager.runInstall();
+
+            } else {
+                throw new Error("It is not file or correct package format.");
+            }
+        });
+    }
+
+    getList() {
+        console.log(database.getList(this.config.Path.install));
+        return database.getList(this.config.Path.install);
+    }
+
+    packaging(packagePath) {
+        if (fs.statSync(packagePath).isDirectory()) {
+            this.config.Path.package = packagePath;
+            var packageManager = new PackageManager(this.config);
+            packageManager.runPackage();
+        }
+    }
+
+    removePackage(packageName) {
+        var self = this;
+
+        if (database.getList(this.config.Path.install).indexOf(packageName) > -1){
+        var appPath = path.join(this.config.Path.install, packageName);
+        fs.stat(appPath, function (err, stats) {
+            if (err) {
+              throw new Error("Fail. It is not installed application.");
+            }
+
+            self.config.Path.application = appPath;
+            self.config.packageName = packageName;
+
+            var unInstallManager = new UninstallManager(self.config);
+            unInstallManager.runUninstall();
+
+        });
+        }else {
+          throw new Error("Fail. It is not installed application.");
+        }
+    }
+
+    printHelp() {
+        console.log("\n Parameter\n\n" +
+        " install: -i path / package file\n" +
+        " uninstall: -r app name\n" +
+        " get installed app list: --list\n" +
+        " packaging: --pkg path\n");
+    }
+
+    getExtension(filename) {
+        var ext = path.extname(filename||'').split('.');
+        return ext[ext.length - 1];
+    }
+
+}
+
+var manager = new Manager();
+manager.control(command);
+
+module.exports = Manager;
\ No newline at end of file
diff --git a/wrt/wrt_support/installer/package.json b/wrt/wrt_support/installer/package.json
new file mode 100755 (executable)
index 0000000..9117b9f
--- /dev/null
@@ -0,0 +1,17 @@
+{
+    "name": "wgt_installer",
+    "version": "0.1.0",
+    "devDependencies": {
+         "yargs": "3.25.0",
+        "run-series": "1.1.2",
+        "unzip": "0.1.11",
+        "xml2js": "0.4.12",
+        "mkdirp": "0.5.1",
+        "rimraf": "2.4.3",
+        "mv": "2.1.1",
+        "adm-zip": "0.4.7",
+        "diskdb": "0.1.14",
+        "ar": "*",
+        "tarball-extract": "*"
+    }
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/installer/assets/js/was_key_event_handler.js b/wrt/wrt_support/sample/installer/assets/js/was_key_event_handler.js
new file mode 100644 (file)
index 0000000..48c127f
--- /dev/null
@@ -0,0 +1,18 @@
+(function() {
+    window.addEventListener('keydown', function(e) {
+        if (e.keyCode == 27) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+    window.addEventListener('mousedown', function(e) {
+        if (e.which == 3) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+})()
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/installer/config.xml b/wrt/wrt_support/sample/installer/config.xml
new file mode 100644 (file)
index 0000000..1e07258
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/Caph2TestSuite" version="1.0.0" viewmodes="maximized">
+    <tizen:application id="0123456789.ANYTHING" package="0123456789" required_version="2.2"/>
+    <access origin="*" subdomains="true"/>
+    <content src="index.html"/>
+    <feature name="http://tizen.org/feature/screen.size.all"/>
+    <icon src="icon.png"/>
+    <name>installer</name>
+</widget>
diff --git a/wrt/wrt_support/sample/installer/css/style.css b/wrt/wrt_support/sample/installer/css/style.css
new file mode 100644 (file)
index 0000000..2556ec8
--- /dev/null
@@ -0,0 +1,105 @@
+body {
+    background-image: url("../images/bg.jpg");
+}
+
+.header {
+    margin-top: 5.56%;
+    margin-bottom: 1.85%;
+    color: white;
+}
+
+h1 {
+    text-align: center;
+}
+
+ul, p {
+    margin: 3px 0 3px 0;
+    -webkit-user-select: none;
+    user-select: none;
+    cursor: default;
+}
+
+ul {
+    padding-left: 25px;
+}
+
+.contents {
+    background-color: white;
+    width: 42.7%;
+    margin-top: 25px;
+    margin-left: auto;
+    margin-right: auto;
+    padding-bottom: 10px;
+    border-radius: 8px;
+    box-shadow: 10px 10px 5px gray;
+}
+
+.mobile {
+    width: 94%
+}
+
+.searchButton {
+    text-align: center;
+    cursor: pointer;
+    margin-top: 25px;
+    margin-left: auto;
+    margin-right: auto;
+    padding: 8px 15px 6px 15px;
+    font-size: 16px;
+    font-weight: bold;
+    color: #387bbe;
+    width: 42.7%;
+    border: solid 1px #387bbe;
+    border-radius: 5px;
+}
+
+.container {
+    display: -webkit-flex;
+    display: flex;
+    padding-top: 20px;
+    padding-left: 10px;
+    padding-bottom: 10px;
+    width: 97.56%;
+}
+
+.innerContainer {
+    display: -webkit-flex;
+    display: flex;
+    padding-left: 10px;
+    width: 97.56%;
+    font-size: 12px;
+}
+
+.icon {
+    width: 64px;
+    height: 64px;
+}
+
+.title {
+    font-size: 16px;
+    font-weight: bold;
+}
+
+.status {
+    cursor: pointer;
+    margin: 15px 10px 15px 10px;
+    padding: 8px 15px 6px 15px;
+    font-size: 16px;
+    font-weight: bold;
+    color: #387bbe;
+    border: solid 1px #387bbe;
+    border-radius: 5px;
+}
+
+.status.installed {
+    color: #007020;
+    border-color: #007020;
+}
+
+.divider {
+    width: 96.34%;
+    margin: 10px 0 0 2%;
+    border: 0;
+    border-top: 1px solid lightgray;
+    border-bottom: 1px solid #ffffff;
+}
diff --git a/wrt/wrt_support/sample/installer/icon.png b/wrt/wrt_support/sample/installer/icon.png
new file mode 100644 (file)
index 0000000..325539d
Binary files /dev/null and b/wrt/wrt_support/sample/installer/icon.png differ
diff --git a/wrt/wrt_support/sample/installer/images/bg.jpg b/wrt/wrt_support/sample/installer/images/bg.jpg
new file mode 100644 (file)
index 0000000..ab5d8ee
Binary files /dev/null and b/wrt/wrt_support/sample/installer/images/bg.jpg differ
diff --git a/wrt/wrt_support/sample/installer/index.html b/wrt/wrt_support/sample/installer/index.html
new file mode 100644 (file)
index 0000000..e7537b1
--- /dev/null
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta name="viewport" content="width=device-width, user-scalable=no">
+    <script type="text/javascript" src="./assets/js/was_key_event_handler.js"></script>
+    <link rel="stylesheet" href="css/style.css" type="text/css">
+    <title>Installer</title>
+</head>
+<body>
+
+</body>
+<script type="text/javascript" src="js/installer.js"></script>
+</html>
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/installer/installer.wgt b/wrt/wrt_support/sample/installer/installer.wgt
new file mode 100644 (file)
index 0000000..3996317
Binary files /dev/null and b/wrt/wrt_support/sample/installer/installer.wgt differ
diff --git a/wrt/wrt_support/sample/installer/js/installer.js b/wrt/wrt_support/sample/installer/js/installer.js
new file mode 100755 (executable)
index 0000000..6fa2bec
--- /dev/null
@@ -0,0 +1,342 @@
+(function () {
+    var fs = require('fs'),
+        path = require('path'),
+        InstallManager = require(path.join('..', '..', 'installer', 'manager.js')),
+        installedAppList = null,
+        WAS_EXTENSIONS_PATH = path.join('..', '..', 'extensions');
+
+    var restServer = require('./js/restServer.js');
+
+    var body = document.body,
+        header = document.createElement('div'),
+        h1 = document.createElement('h1'),
+        contents = document.createElement('div'),
+        contentsRest = document.createElement('div');
+
+    var searchRestButton = document.createElement('p');
+    addClass(searchRestButton, 'searchButton');
+    var isDisplayRest = false;
+    searchRestButton.addEventListener('click', function () {
+        var arrayTitle;
+        if(isDisplayRest) {
+            console.log("Already displayed the REST server contents!!");
+            return;
+        } else {
+            isDisplayRest = true;
+        }
+
+        restServer.search(function(arrayAppInfo){
+            console.log(JSON.stringify(arrayAppInfo));
+            var firstFlag = false;
+            for(var i=0; i<arrayAppInfo.length; i++){
+                console.log(arrayAppInfo[i].title);
+                createOne(contentsRest, {
+                    title: arrayAppInfo[i].title,
+                    icon: 'icon_' + arrayAppInfo[i].title + '.png',
+                    version: arrayAppInfo[i].version,
+                    pkg: '.wgt_RESTServer'
+                }, firstFlag);
+
+                if (!firstFlag) {
+                    firstFlag = true;
+                }
+            }
+        });
+    });
+    searchRestButton.innerHTML = 'Search - REST TEST Server';
+
+    addClass(header, 'header');
+    h1.innerHTML = 'WAS App Store';
+    header.appendChild(h1);
+    addClass(contents, 'contents');
+    addClass(contentsRest, 'contents');
+
+    if (window.innerHeight > window.innerWidth) {
+        addClass(searchRestButton, 'mobile');
+        addClass(contents, 'mobile');
+        addClass(contentsRest, 'mobile');
+    }
+
+    body.appendChild(header);
+    body.appendChild(contents);
+    body.appendChild(searchRestButton);
+    body.appendChild(contentsRest);
+
+    if (process.env.WAS_INSTALLER_PATH) {
+        InstallManager = require(path.join(process.env.WAS_INSTALLER_PATH, 'manager.js'));
+    }
+    if (process.env.WAS_EXTENSIONS_PATH) {
+        WAS_EXTENSIONS_PATH = process.env.WAS_EXTENSIONS_PATH;
+    }
+
+    var installManager = new InstallManager();
+
+    fs.readdir(path.join('sample', 'wgt'), function (err, files) {
+        var extname,
+            title = null,
+            firstFlag = false;
+
+        installedAppList = getInstalledAppList();
+
+        for (var i = 0, length = files.length; i < length; i++) {
+            extname = path.extname(files[i]);
+            if (extname === '.wgt' ||
+                isWebosInstallerInstalled() && extname === '.ipk' ||
+                isChromeInstallerInstalled() && extname === '.crx') {
+                title = path.basename(files[i], extname);
+
+                createOne(contents, {
+                    title: title,
+                    icon: 'icon_' + title + '.png',
+                    version: '1.0.0',
+                    pkg: extname
+                }, firstFlag);
+
+                if (!firstFlag) {
+                    firstFlag = true;
+                }
+                //packageList.push(files[i]);
+            }
+        }
+        indexList = i;
+    });
+
+    function createOne (parent, options, divider) {
+        var WAS_SAMPLE_PATH = process.env.WAS_SAMPLE_PATH,
+            container = document.createElement('div'),
+            innerContainer = document.createElement('div'),
+            icon = document.createElement('img'),
+            ul = document.createElement('ul'),
+            title = document.createElement('p'),
+            version = document.createElement('p'),
+            description = document.createElement('p'),
+            status = document.createElement('p');
+
+        addClass(container, 'container');
+
+        addClass(innerContainer, 'innerContainer');
+
+        addClass(icon, 'icon');
+        var icon_src;
+        if (WAS_SAMPLE_PATH) {
+            icon_src = path.join(WAS_SAMPLE_PATH, 'wgt', 'icon', options.icon);
+        } else {
+            icon_src = path.join('..', '..', 'sample', 'wgt', 'icon', options.icon);
+        }
+        fs.stat(icon_src, function (err, stats) {
+            if (err) {
+                icon.src = icon_src.replace(options.icon, 'icon_default.png');
+            } else {
+                icon.src = icon_src;
+            }
+        });
+
+        addClass(title, 'title');
+        title.innerHTML = options.title;
+
+        version.innerHTML = 'version ' + options.version;
+
+        description.innerHTML = 'package format ' + options.pkg;
+
+        addClass(status, 'status');
+        addClass(status, options.pkg);
+        status.id = options.title;
+        status.versionElement = version;
+        changeStatus(status, options.title);
+        status.addEventListener('click', function () {
+            var self = this,
+                className = self.className,
+                pkgName = '.wgt';
+
+            if (!isInstalled(self.id)) {
+                console.log('install ' + self.id + ' ..!!');
+                self.innerHTML = '......';
+                if (className.indexOf('ipk') > -1) {
+                    pkgName = '.ipk';
+                } else if (className.indexOf('crx') > -1) {
+                    pkgName = '.crx';
+                }
+
+                if (className.indexOf('REST') > -1) {
+                    pkgName = '.wgt';
+                    console.log('Start install from REST server : ' + self.id);
+                    restServer.download(self, function (webappPkgPath){
+                        console.log(webappPkgPath);
+                        installManager.control({i: webappPkgPath}, function () {
+                            installedAppList.push(self.id);
+                            changeStatus(self, self.id);
+                        });
+                    });
+                } else {
+                    installManager.control({i: path.join('sample', 'wgt', self.id + pkgName)}, function () {
+                        installedAppList.push(self.id);
+                        changeStatus(self, self.id);
+                    });
+                }
+            } else {
+                console.log('uninstall ' + self.id + ' ..!!');
+                self.innerHTML = '......';
+                installManager.control({r: self.id}, function () {
+                    installedAppList.splice(installedAppList.indexOf(self.id), 1);
+                    changeStatus(self, self.id);
+                });
+            }
+        });
+
+        version.id = options.title;
+        version.versionElement = version;
+        version.container = container;
+        version.displayAllVersion = false;
+
+        if(options.pkg === '.wgt_RESTServer') {
+            version.addEventListener('click', function () {
+                var self = this;
+                console.log("Click version text ! REST Server!! " + ", " + self.id);
+                if(version.displayAllVersion == false){
+                    restServer.showVersions(self.id, function(arrVer){
+                        console.log(arrVer);
+                        addVersionButton(self, arrVer);
+                    });
+                    version.displayAllVersion = true;
+                }
+            });
+        }
+
+        innerContainer.appendChild(icon);
+        ul.appendChild(title);
+        ul.appendChild(version);
+        ul.appendChild(description);
+        innerContainer.appendChild(ul);
+
+        container.appendChild(innerContainer);
+        container.appendChild(status);
+
+        if (divider) {
+            var div = document.createElement('div');
+            addClass(div, 'divider');
+            parent.appendChild(div);
+        }
+
+        parent.appendChild(container);
+    }
+
+
+    function addVersionButton(passedSelf, arrVer){
+        console.log('addVersionButton arrVer.length = '+arrVer.length);
+        var verButton = [];
+        for(var i=0; i<arrVer.length; i++){
+            var str = arrVer[i];
+
+            if(i == 0){
+                passedSelf.innerHTML = 'version';
+            }
+
+            passedSelf.innerHTML += '  ' + str;
+
+            verButton[i] = document.createElement('p');
+            addClass(verButton[i], 'status');
+            verButton[i].id = passedSelf.id;
+            verButton[i].innerHTML = str;
+            verButton[i].versionElement = passedSelf;
+
+            verButton[i].addEventListener('click', function(string){
+                    return  function () {
+                        var butself = this;
+                        butself.version = string;
+                        butself.id = passedSelf.id;
+                        butself.innerHTML = '......';
+                        downloadFromServer(butself, true);
+                    }
+                }(str)
+            );
+            (passedSelf.container).appendChild(verButton[i]);
+        }
+    }
+
+    function downloadFromServer(buttonSelf, versionChange){
+        console.log('Start installFromServer !! **** ');
+        restServer.download(buttonSelf, installFromLocalPath)
+    }
+
+    function installFromLocalPath(filePath, versionChange, passedSelf){
+        var version = passedSelf.version;
+        installManager.control({i: filePath}, function () {
+            if(versionChange  === true){
+                (passedSelf.versionElement).innerHTML = 'version ' + version;
+            } else {
+                installedAppList.push(passedSelf.id);
+                console.log("installedAppList push OK!!");
+            }
+            changeStatus(passedSelf, passedSelf.id);
+            console.log("changeStatus pass OK!!");
+        });
+    }
+
+    function changeStatus (element, title) {
+        console.log(title);
+        if (isInstalled(title)) {
+            element.innerHTML = 'installed';
+            addClass(element, 'installed');
+        } else {
+            element.innerHTML = 'install';
+            removeClass(element, 'installed');
+        }
+    }
+
+    function isInstalled (title) {
+        if (installedAppList !== null) {
+            for (var i = 0, length = installedAppList.length; i < length; i++) {
+                if (installedAppList[i] === title) {
+                    return true;
+                }
+            }
+        }
+    }
+
+    function getInstalledAppList () {
+        return installManager.control({list:true});
+    }
+
+    function isWebosInstallerInstalled () {
+        var extensions_db = path.join(WAS_EXTENSIONS_PATH, 'extensions_db.json');
+        try {
+            var data = JSON.parse(fs.readFileSync(extensions_db));
+        } catch (e) {
+            return false;
+        }
+
+        for (var i = 0, length = data.length; i < length; i++) {
+            console.log(data[i].name);
+            if (data[i].name === 'webos_installer') {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    function isChromeInstallerInstalled () {
+        var extensions_db = path.join(WAS_EXTENSIONS_PATH, 'extensions_db.json');
+        try {
+            var data = JSON.parse(fs.readFileSync(extensions_db));
+        } catch (e) {
+            return false;
+        }
+
+        for (var i = 0, length = data.length; i < length; i++) {
+            console.log(data[i].name);
+            if (data[i].name === 'chrome_installer') {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    function addClass(element, className) {
+        element.className += " " + className;
+    }
+
+    function removeClass(element, className) {
+        var check = new RegExp("(\\s|^)" + className + "(\\s|$)");
+        element.className = element.className.replace(check, " ").trim();
+    }
+})();
diff --git a/wrt/wrt_support/sample/installer/js/restServer.js b/wrt/wrt_support/sample/installer/js/restServer.js
new file mode 100644 (file)
index 0000000..e90bc63
--- /dev/null
@@ -0,0 +1,144 @@
+
+var fs = require('fs'),
+    path = require('path'),
+    http = require('http'),
+    HOSTSERVER = 'http://10.251.43.156:52273/';
+
+module.exports = {
+
+    search: function(callbackfunc){
+        var arrAppInfos = [];
+        var request = new XMLHttpRequest();
+        request.onreadystatechange = function (event) {
+            if(request.readyState == 4) {
+                if(request.status == 200) {
+                    var str = request.responseText;
+                    console.log(str);
+                    var objson = JSON.parse(str);
+                    console.log(objson.apps.length);
+                    //console.log(JSON.stringify(objson.apps[0]));
+
+                    for(var i=0; i<objson.apps.length; i++){
+                      var appInfo = {};
+                      // appName
+                      if(objson.apps[i].name == undefined){
+                        appInfo.title = 'No Title';
+                      } else {
+                        appInfo.title = objson.apps[i].name;
+                      }
+                      // appVersion
+                      if(objson.apps[i].name == undefined){
+                        appInfo.version = 'No VerInfo';
+                      } else {
+                        appInfo.version = objson.apps[i].latestVersion.version;
+                      }
+
+                      /*/ appDescription
+                      if(objson.apps[i].description == undefined){
+                        appInfo.version = 'No DescriptionInfo';
+                      } else {
+                        appInfo.description = objson.apps[i].description;
+                      }*/
+                      console.log(JSON.stringify(appInfo));
+                      arrAppInfos.push(appInfo);
+                    }
+                    console.log(JSON.stringify(arrAppInfos));
+                    callbackfunc(arrAppInfos);
+                }
+            }
+        };
+        request.open('GET', HOSTSERVER + 'apps', false);
+        request.send();
+    },
+
+/*
+    download: function(name){
+        var filePath = './temp_webapp/' + name + '.wgt';
+
+        var request = new XMLHttpRequest();
+        request.open('GET', HOSTSERVER + 'apps/' + name + '?package=true', false);
+        request.send();
+        //console.log(request.responseText);
+        var fileStream = fs.createWriteStream(filePath);
+        fileStream.write(request.response);
+
+        return filePath;
+    },
+*/
+
+    download: function(passedSelf, callbackfunc, version){
+        var name = passedSelf.id;
+        var version = passedSelf.version;
+        console.log('download ~~~' + name + ' ' + version + ' ' + callbackfunc);
+
+        var version_key = '',
+            verChange = false;
+        if( version != undefined) {
+            version_key = '/' + version;
+            verChange = true;
+        }
+
+        var filePath = './temp_webapp/' + name + '.wgt';
+        var httpOptions = {
+            hostname: '10.251.43.156',
+            port: '52273',
+            path: '/apps/' + name + version_key + '?get=package',
+            method: 'GET'
+        };
+
+        var reqGet = http.request(httpOptions, function (response){
+            var statusCode = response.statusCode;
+
+            if(statusCode == 404 || statusCode == 403)
+            {
+                console.log('statusCode = ' + statusCode);
+            } else {
+                var idx = 0;
+                //console.log(JSON.stringify(response));
+                for(var p in response.headers){
+                  console.log(p);
+                }
+
+                var len = parseInt(response.headers["content-length"]);
+                console.log(len);
+                var body = new Buffer(len);
+
+                response.setEncoding('binary');
+
+                response.on('data', function(chunk){
+                    console.log('res data !!!');
+                    body.write(chunk, idx, 'binary');
+                    idx += chunk.length;
+                });
+
+                response.on('end', function(){
+                    console.log('res end !!!');
+                    var fileStream = fs.createWriteStream(filePath);
+                    fileStream.write(body);
+                    callbackfunc(filePath, verChange, passedSelf);
+                });
+            }
+        });
+        reqGet.on('error', function(err){
+            console.log(err);
+        });
+        reqGet.end();
+    },
+
+    showVersions: function(name, callbackfunc){
+      console.log('showVersions ~~~');
+      var request = new XMLHttpRequest();
+      request.onreadystatechange = function (event) {
+          if(request.readyState == 4) {
+              if(request.status == 200) {
+                var str = request.responseText;
+                console.log(typeof str + ' ' + str);
+                var arr = JSON.parse(str);
+                callbackfunc(arr);
+              }
+          }
+      };
+      request.open('GET', HOSTSERVER + 'apps/' + name + '?get=versions', true);
+      request.send();
+    },
+};
diff --git a/wrt/wrt_support/sample/launcher/assets/css/ie.css b/wrt/wrt_support/sample/launcher/assets/css/ie.css
new file mode 100755 (executable)
index 0000000..244ca44
--- /dev/null
@@ -0,0 +1,26 @@
+.window.ui-draggable-dragging {
+  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
+  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=50)';
+}
+
+.window_full.ui-draggable-dragging {
+  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
+  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
+}
+
+#bar_bottom {
+  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
+  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=80)';
+}
+
+table.data tbody tr td {
+  border-top: 1px solid #eee;
+}
+
+table.data tbody tr:first-child td {
+  border-top-width: 0;
+}
+
+img {
+  -ms-interpolation-mode: bicubic;
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/assets/css/launcher.css b/wrt/wrt_support/sample/launcher/assets/css/launcher.css
new file mode 100755 (executable)
index 0000000..b7a790b
--- /dev/null
@@ -0,0 +1,531 @@
+/* `Basic HTML
+----------------------------------------------------------------------------------------------------*/
+
+* {
+  cursor: default;
+}
+
+html,
+body {
+  overflow: hidden;
+}
+
+body {
+  background: #222;
+  font: 12px/1 'Lucida Grande', Arial, 'Liberation Sans', FreeSans, sans-serif;
+}
+
+a {
+  text-decoration: none;
+}
+
+li {
+  list-style: none;
+}
+
+/* `Misc
+----------------------------------------------------------------------------------------------------*/
+
+.abs {
+  position: absolute !important;
+  top: auto;
+  left: auto;
+  right: auto;
+  bottom: auto;
+}
+
+.align_center {
+  text-align: center;
+}
+
+.align_right {
+  text-align: right;
+}
+
+.float_left {
+  float: left;
+}
+
+.float_right {
+  float: right;
+}
+
+.ui-resizable-se {
+  background: url(../images/gui/window_corner.gif) no-repeat right bottom;
+  font-size: 0;
+  overflow: hidden;
+  width: 15px;
+  height: 15px;
+  right: 0;
+  bottom: 0;
+}
+
+div.ui-resizable-handle {
+  display: none !important;
+  visibility: hidden !important;
+}
+
+/* `Icons
+----------------------------------------------------------------------------------------------------*/
+
+.icon {
+  background: url(../images/gui/trans_white.png) no-repeat -99999px -99999px;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 1.3;
+  /*padding: 6px 1px 6px;*/
+  padding: 0px;
+  text-align: center;
+  text-shadow: #000 0 1px 2px;
+  width: 80px;
+}
+
+.icon.active {
+  background: url(../images/gui/trans_black.png);
+}
+
+.icon img {
+  background: url(../images/gui/trans_black.png) no-repeat -99999px -99999px;
+  display: block;
+  margin: 0 auto 5px;
+  width: 64px;
+  height: 64px;
+  /*width: 32px;
+  height: 32px;*/
+}
+
+.icon:hover,
+.icon.ui-draggable-dragging {
+  background-position: 0 0;
+  background-repeat: repeat;
+  border: 1px solid #fff;
+  padding: 5px 0 5px;
+}
+
+.icon.ui-draggable-dragging {
+  z-index: 20;
+}
+
+/* `Windows
+----------------------------------------------------------------------------------------------------*/
+
+.window {
+  background: #fff;
+  border: 1px solid #000;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #000;
+  display: none;
+  width: 700px;
+  height: 300px;
+  top: 30px;
+  left: 120px;
+  z-index: 2;
+}
+
+.window.window_stack,
+.window.ui-draggable-dragging {
+  z-index: 10;
+}
+
+.window.ui-draggable-dragging {
+  opacity: 0.5;
+}
+
+.window.ui-draggable-dragging .window_content,
+.window.ui-draggable-dragging .window_bottom {
+  display: none;
+}
+
+.window_full.ui-draggable-dragging {
+  opacity: 1;
+}
+
+.window_full.ui-draggable-dragging .window_content,
+.window_full.ui-draggable-dragging .window_bottom {
+  display: block;
+}
+
+.window_full {
+  border: 0;
+  border-radius: 0;
+  -moz-border-radius: 0;
+  -webkit-border-radius: 0;
+  -webkit-background-clip: padding-box;
+  width: 100%;
+  height: 100%;
+}
+
+.window_full .ui-resizable-se {
+  display: none;
+}
+
+.window_top {
+  background: #333 url(../images/gui/bar_bottom.png) repeat-x;
+  border-top-left-radius: 5px;
+  border-top-right-radius: 5px;
+  -moz-border-radius-topleft: 5px;
+  -moz-border-radius-topright: 5px;
+  -webkit-border-top-left-radius: 5px;
+  -webkit-border-top-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  font-weight: bold;
+  overflow: hidden;
+  line-height: 30px;
+  padding: 0 10px;
+  text-shadow: #000 0 1px 1px;
+  height: 30px;
+}
+
+.window_top img {
+  float: left;
+  margin: 6px 5px 0 0;
+}
+
+.window_bottom {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-top: 1px solid #bbb;
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 20px;
+  overflow: hidden;
+  text-align: center;
+  text-shadow: #fff 0 1px 1px;
+  height: 20px;
+  left: 1px;
+  right: 1px;
+  bottom: 1px;
+}
+
+.window_min,
+.window_resize,
+.window_close {
+  background: url(../images/gui/window_buttons.gif) no-repeat;
+  border-radius: 2px;
+  -moz-border-radius: 2px;
+  -webkit-border-radius: 2px;
+  -webkit-background-clip: padding-box;
+  float: left;
+  font-size: 0;
+  margin: 6px 0 0 5px;
+  width: 28px;
+  height: 15px;
+}
+
+.window_min:hover {
+  background-position: 0 -15px;
+}
+
+.window_resize {
+  background-position: -28px 0;
+}
+
+.window_resize:hover {
+  background-position: -28px -15px;
+}
+
+.window_close {
+  background-position: -56px 0;
+}
+
+.window_close:hover {
+  background-position: -56px -15px;
+  box-shadow: #f00 0 0 10px;
+  -moz-box-shadow: #f00 0 0 10px;
+  -webkit-box-shadow: #f00 0 0 10px;
+}
+
+.window_min:hover,
+.window_resize:hover {
+  box-shadow: #09f 0 0 10px;
+  -moz-box-shadow: #09f 0 0 10px;
+  -webkit-box-shadow: #09f 0 0 10px;
+}
+
+.window_inner {
+  padding: 1px;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+}
+
+.window_content {
+  background: url(../images/gui/window_content.gif) repeat-y;
+  line-height: 1.5;
+  overflow: auto;
+  top: 32px;
+  left: 1px;
+  right: 1px;
+  bottom: 23px;
+}
+
+.window_aside {
+  float: left;
+  font-size: 11px;
+  padding: 10px 12px 10px 10px;
+  width: 150px;
+}
+
+.window_main {
+  background: #fff;
+  margin: 0 0 0 173px;
+  min-height: 100%;
+}
+
+.window_full .window_top,
+.window_full .window_bottom {
+  border-radius: 0;
+  -moz-border-radius: 0;
+  -webkit-border-radius: 0;
+  -webkit-background-clip: padding-box;
+}
+
+.window_full .window_inner {
+  bottom: -1px;
+}
+
+/* `Table >> Data
+----------------------------------------------------------------------------------------------------*/
+
+table.data {
+  width: 100%;
+  white-space: nowrap;
+}
+
+table.data th,
+table.data td {
+  padding: 5px 10px;
+  vertical-align: middle;
+}
+
+table.data th {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-left: 1px solid #fff;
+  border-bottom: 1px solid #fff;
+  font-weight: bold;
+  text-shadow: #fff 0 1px 1px;
+  white-space: nowrap;
+}
+
+table.data th:first-child {
+  border-left: 0;
+}
+
+table.data img {
+  display: block;
+}
+
+table.data tbody tr:nth-child(even) td {
+  background: #def;
+}
+
+table.data tbody tr.active td {
+  background: #06c url(../images/gui/bar_top_link.png) repeat-x;
+  color: #fff;
+}
+
+th.shrink {
+  width: 1%;
+}
+
+/* `Bar >> Top + Bottom
+----------------------------------------------------------------------------------------------------*/
+
+#bar_top,
+#bar_bottom {
+  font-weight: bold;
+  padding: 0 10px;
+  left: 0;
+  right: 0;
+}
+
+#bar_top {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-bottom: 1px solid #333;
+  color: #999;
+  line-height: 25px;
+  padding-right: 20px;
+  text-shadow: #fff 0 1px 1px;
+  height: 25px;
+  top: 0;
+}
+
+#bar_bottom {
+  background: #333 url(../images/gui/bar_bottom.png) repeat-x;
+  border-top: 1px solid #fff;
+  color: #fff;
+  font-size: 13px;
+  line-height: 30px;
+  opacity: 0.8;
+  overflow: hidden;
+  padding-top: 5px;
+  padding-bottom: 5px;
+  text-shadow: #000 0 1px 1px;
+  height: 30px;
+  bottom: 0;
+}
+
+/* `Bar >> Links
+----------------------------------------------------------------------------------------------------*/
+
+#bar_top li,
+#bar_bottom li {
+  float: left;
+}
+
+#bar_top li a,
+#bar_bottom li a {
+  display: block;
+  padding: 0 10px;
+}
+
+#bar_top li a {
+  background-image: url(../images/gui/bar_top_link.png);
+  background-repeat: no-repeat;
+  background-position: -99999px -99999px;
+  color: #000;
+  overflow: hidden;
+  height: 25px;
+  min-height: 1px;
+}
+
+#bar_top a.active {
+  background-color: #06c;
+  background-position: 0 0;
+  background-repeat: repeat-x;
+  color: #fff;
+  text-shadow: none;
+}
+
+#bar_top ul.menu {
+  background: #eee;
+  border: 1px solid #333;
+  border-top-width: 0;
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  display: none;
+  font-weight: normal;
+  margin: 1px 0 0 -1px;
+  padding: 1px 1px 0;
+  position: absolute;
+  min-width: 200px;
+  z-index: 30;
+}
+
+#bar_top ul.menu li {
+  float: none;
+}
+
+#bar_top ul.menu a {
+  background: #fff;
+  border-bottom: 1px solid #eee;
+  min-width: 180px;
+}
+
+#bar_top ul.menu li:last-child a {
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+}
+
+#bar_top ul.menu a:hover {
+  background: #06c url(../images/gui/bar_top_link.png) repeat-x;
+  color: #fff;
+  text-shadow: none;
+}
+
+#bar_bottom li {
+  display: none;
+  margin: 0 0 10px 5px;
+  min-width: 150px;
+}
+
+#bar_bottom li a {
+  background: #333;
+}
+
+#bar_bottom a {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  overflow: hidden;
+  padding: 0 10px;
+  height: 30px;
+}
+
+#bar_bottom a:hover {
+  background: #000;
+}
+
+#bar_bottom a:active {
+  background: #c60;
+  border: 1px solid #fff;
+  padding: 0 9px;
+}
+
+#bar_bottom li a img {
+  float: left;
+  margin: 4px 5px 0 -5px;
+}
+
+#bar_bottom .float_left img,
+#bar_bottom .float_right img {
+  display: block;
+  padding: 4px 0 0;
+}
+
+/* `Wrapper + Wallpaper + Desktop
+----------------------------------------------------------------------------------------------------*/
+
+#wallpaper {
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  width: 100%;
+  height: 100%;
+}
+
+#desktop {
+  overflow: hidden;
+  top: 26px;
+  left: 0;
+  right: 0;
+  bottom: 41px;
+}
+
+#wrapper {
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  min-width: 700px;
+  min-height: 500px;
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/assets/css/reset.css b/wrt/wrt_support/sample/launcher/assets/css/reset.css
new file mode 100755 (executable)
index 0000000..87b7f36
--- /dev/null
@@ -0,0 +1,202 @@
+/* `XHTML, HTML4, HTML5 Reset
+----------------------------------------------------------------------------------------------------*/
+
+a,
+abbr,
+acronym,
+address,
+applet,
+article,
+aside,
+audio,
+b,
+big,
+blockquote,
+body,
+canvas,
+caption,
+center,
+cite,
+code,
+dd,
+del,
+details,
+dfn,
+dialog,
+div,
+dl,
+dt,
+em,
+embed,
+fieldset,
+figcaption,
+figure,
+font,
+footer,
+form,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+header,
+hgroup,
+hr,
+html,
+i,
+iframe,
+img,
+ins,
+kbd,
+label,
+legend,
+li,
+mark,
+menu,
+meter,
+nav,
+object,
+ol,
+output,
+p,
+pre,
+progress,
+q,
+rp,
+rt,
+ruby,
+s,
+samp,
+section,
+small,
+span,
+strike,
+strong,
+sub,
+summary,
+sup,
+table,
+tbody,
+td,
+tfoot,
+th,
+thead,
+time,
+tr,
+tt,
+u,
+ul,
+var,
+video,
+xmp {
+  border: 0;
+  margin: 0;
+  padding: 0;
+  font-size: 100%;
+}
+
+html,
+body {
+  height: 100%;
+}
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+menu,
+nav,
+section {
+/*
+  Override the default (display: inline) for
+  browsers that do not recognize HTML5 tags.
+
+  IE8 (and lower) requires a shiv:
+  http://ejohn.org/blog/html5-shiv
+*/
+  display: block;
+}
+
+b,
+strong {
+/*
+  Makes browsers agree.
+  IE + Opera = font-weight: bold.
+  Gecko + WebKit = font-weight: bolder.
+*/
+  font-weight: bold;
+}
+
+img {
+  color: transparent;
+  font-size: 0;
+  vertical-align: middle;
+/*
+  For IE.
+  http://css-tricks.com/ie-fix-bicubic-scaling-for-images
+*/
+  -ms-interpolation-mode: bicubic;
+}
+
+li {
+/*
+  For IE6 + IE7.
+*/
+  display: list-item;
+}
+
+table {
+  border-collapse: collapse;
+  border-spacing: 0;
+}
+
+th,
+td,
+caption {
+  font-weight: normal;
+  vertical-align: top;
+  text-align: left;
+}
+
+q {
+  quotes: none;
+}
+
+q:before,
+q:after {
+  content: '';
+  content: none;
+}
+
+sub,
+sup,
+small {
+  font-size: 75%;
+}
+
+sub,
+sup {
+  line-height: 0;
+  position: relative;
+  vertical-align: baseline;
+}
+
+sub {
+  bottom: -0.25em;
+}
+
+sup {
+  top: -0.5em;
+}
+
+svg {
+/*
+  For IE9.
+*/
+  overflow: hidden;
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/bar_bottom.png b/wrt/wrt_support/sample/launcher/assets/images/gui/bar_bottom.png
new file mode 100755 (executable)
index 0000000..427cdfe
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/bar_bottom.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/bar_top.png b/wrt/wrt_support/sample/launcher/assets/images/gui/bar_top.png
new file mode 100755 (executable)
index 0000000..05e8ec4
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/bar_top.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/bar_top_link.png b/wrt/wrt_support/sample/launcher/assets/images/gui/bar_top_link.png
new file mode 100755 (executable)
index 0000000..4c925f9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/bar_top_link.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/trans_black.png b/wrt/wrt_support/sample/launcher/assets/images/gui/trans_black.png
new file mode 100755 (executable)
index 0000000..43af3d3
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/trans_black.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/trans_white.png b/wrt/wrt_support/sample/launcher/assets/images/gui/trans_white.png
new file mode 100755 (executable)
index 0000000..fe464ac
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/trans_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/window_buttons.gif b/wrt/wrt_support/sample/launcher/assets/images/gui/window_buttons.gif
new file mode 100755 (executable)
index 0000000..fc336d4
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/window_buttons.gif differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/window_content.gif b/wrt/wrt_support/sample/launcher/assets/images/gui/window_content.gif
new file mode 100755 (executable)
index 0000000..daff5af
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/window_content.gif differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/gui/window_corner.gif b/wrt/wrt_support/sample/launcher/assets/images/gui/window_corner.gif
new file mode 100755 (executable)
index 0000000..bc8ce33
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/gui/window_corner.gif differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_computer.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_computer.png
new file mode 100755 (executable)
index 0000000..368eb92
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_computer.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_disc.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_disc.png
new file mode 100755 (executable)
index 0000000..c750718
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_disc.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_documents.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_documents.png
new file mode 100755 (executable)
index 0000000..d1f13f5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_documents.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_drive.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_drive.png
new file mode 100755 (executable)
index 0000000..73e5ef0
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_drive.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder.png
new file mode 100755 (executable)
index 0000000..c2df22f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_home.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_home.png
new file mode 100755 (executable)
index 0000000..11d5525
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_home.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_remote.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_remote.png
new file mode 100755 (executable)
index 0000000..54da743
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_folder_remote.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_music.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_music.png
new file mode 100755 (executable)
index 0000000..6d893cb
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_music.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_network.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_network.png
new file mode 100755 (executable)
index 0000000..9a101c3
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_network.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_page.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_page.png
new file mode 100755 (executable)
index 0000000..b6774f9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_page.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_photo.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_photo.png
new file mode 100755 (executable)
index 0000000..ba1412c
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_photo.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_server.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_server.png
new file mode 100755 (executable)
index 0000000..3224cc8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_server.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_system.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_system.png
new file mode 100755 (executable)
index 0000000..cbc44c9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_system.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_trash.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_trash.png
new file mode 100755 (executable)
index 0000000..a118838
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_trash.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_vpn.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_vpn.png
new file mode 100755 (executable)
index 0000000..b9a5547
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_16_vpn.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_computer.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_computer.png
new file mode 100755 (executable)
index 0000000..75a46cc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_computer.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_desktop.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_desktop.png
new file mode 100755 (executable)
index 0000000..f192b72
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_desktop.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_disc.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_disc.png
new file mode 100755 (executable)
index 0000000..cb50903
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_disc.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_drive.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_drive.png
new file mode 100755 (executable)
index 0000000..d605cd5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_drive.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_network.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_network.png
new file mode 100755 (executable)
index 0000000..60dfeb1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_network.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_recycle.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_recycle.png
new file mode 100755 (executable)
index 0000000..8bafd86
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_22_recycle.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_computer.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_computer.png
new file mode 100755 (executable)
index 0000000..a903abf
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_computer.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_disc.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_disc.png
new file mode 100755 (executable)
index 0000000..edfc641
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_disc.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_drive.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_drive.png
new file mode 100755 (executable)
index 0000000..e036c16
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_drive.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_network.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_network.png
new file mode 100755 (executable)
index 0000000..e2ed52e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_32_network.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/icons/icon_uninstall.png b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_uninstall.png
new file mode 100644 (file)
index 0000000..32d23ff
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/icons/icon_uninstall.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/misc/album_cover.jpg b/wrt/wrt_support/sample/launcher/assets/images/misc/album_cover.jpg
new file mode 100755 (executable)
index 0000000..86d737f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/misc/album_cover.jpg differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/misc/firehost.png b/wrt/wrt_support/sample/launcher/assets/images/misc/firehost.png
new file mode 100755 (executable)
index 0000000..b870d23
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/misc/firehost.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/misc/samsung.png b/wrt/wrt_support/sample/launcher/assets/images/misc/samsung.png
new file mode 100644 (file)
index 0000000..014a9d7
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/misc/samsung.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/misc/samsung_small.png b/wrt/wrt_support/sample/launcher/assets/images/misc/samsung_small.png
new file mode 100644 (file)
index 0000000..f75ddb5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/misc/samsung_small.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/images/misc/wallpaper.jpg b/wrt/wrt_support/sample/launcher/assets/images/misc/wallpaper.jpg
new file mode 100644 (file)
index 0000000..ab5d8ee
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/images/misc/wallpaper.jpg differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/LICENSE.txt b/wrt/wrt_support/sample/launcher/assets/js/context-menu/LICENSE.txt
new file mode 100644 (file)
index 0000000..dee3f66
--- /dev/null
@@ -0,0 +1,19 @@
+Copyright (c) 2011, Joe Walnes
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/README.md b/wrt/wrt_support/sample/launcher/assets/js/context-menu/README.md
new file mode 100644 (file)
index 0000000..bfdbc7b
--- /dev/null
@@ -0,0 +1,80 @@
+A Simple Good Looking Context Menu, for jQuery
+==============================================
+
+Yes, there are [loads](http://plugins.jquery.com/plugin-tags/context-menu) of context menu
+plugins already. But they require a fair amount of work to make them look good.
+
+This one is easy to use, small, and looks good.
+
+Demo
+----
+
+* http://joewalnes.github.com/jquery-simple-context-menu/example.html
+
+Features
+--------
+
+* Tiny library. Only dependency is jQuery.
+* Simple API.
+* Looks good out of the box, with no additional tweaking.
+* Designed to look and behave like a standard Windows context menu.
+* There's so little code, it should be easy to add your own custom features.
+
+The menu looks like this:
+
+![Screenshot](https://github.com/joewalnes/jquery-simple-context-menu/raw/master/demo/screenshot.png)
+
+
+Installation
+------------
+
+Include the files `jquery.contextmenu.css` and `jquery.contextmenu.js` in your page `<head>`. You also need jQuery. It is recommended that you use the [HTML 5 DOCTYPE](http://ejohn.org/blog/html5-doctype/) to ensure rendering consistency.
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+         <script src="jquery-1.6.2.min.js"></script> 
+         <script src="jquery.contextmenu.js"></script> 
+         <link rel="stylesheet" href="jquery.contextmenu.css">
+         ... rest of your stuff ...
+
+You can get the files from here:
+
+* <https://github.com/joewalnes/jquery-simple-context-menu/raw/master/jquery.contextmenu.js>
+* <https://github.com/joewalnes/jquery-simple-context-menu/raw/master/jquery.contextmenu.css>
+
+Usage
+-----
+
+The plugin introduces a `contextPopup()` method to the jQuery object.
+
+Assuming you have an element that you'd like to bind a context menu to:
+
+    <div id="mythingy">hello</div>
+
+You can wire up a context menu like this:
+
+    $('#mythingy').contextPopup({
+      title: 'My Popup Menu',
+      items: [
+        {label:'Some Item',     icon:'icons/shopping-basket.png', action:function() { alert('clicked 1') } },
+        {label:'Another Thing', icon:'icons/receipt-text.png',    action:function() { alert('clicked 2') } },
+        null, /* null can be used to add a separator to the menu items */
+        {label:'Blah Blah',     icon:'icons/book-open-list.png',  action:function() { alert('clicked 3') }, isEnabled:function() { return false; } },
+      ]});
+
+The 'isEnabled' function is optional.  By default all items are enabled.
+
+Icons
+-----
+
+The icons should be 16x16 pixels. I recommend the [Fugue icon set](http://p.yusukekamiyamane.com/) (shadowless).
+
+
+kthxbye
+
+-[joe](http://joewalnes.com)
+
+
+[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/joewalnes/jquery-simple-context-menu/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
+
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/example.html b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/example.html
new file mode 100644 (file)
index 0000000..6bdac65
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <script src="http://code.jquery.com/jquery-1.11.2.min.js"></script>
+    <script src="../jquery.contextmenu.js"></script>
+    <link rel="stylesheet" href="../jquery.contextmenu.css">
+    <script>
+      $(function() {
+        $('#mythingy').contextPopup({
+          title: 'My Popup Menu',
+          items: [
+            {label:'Some Item',     icon:'icons/shopping-basket.png',             action:function() { alert('clicked 1') } },
+            {label:'Another Thing', icon:'icons/receipt-text.png',                action:function() { alert('clicked 2') } },
+            {label:'Blah Blah',     icon:'icons/book-open-list.png',              action:function() { alert('clicked 3') } },
+            null, // divider
+            {label:'Sheep',         icon:'icons/application-monitor.png',         action:function() { alert('clicked 4') } },
+            {label:'Cheese',        icon:'icons/bin-metal.png',                   action:function() { alert('clicked 5') } },
+            {label:'Bacon',         icon:'icons/magnifier-zoom-actual-equal.png', action:function() { alert('clicked 6') } },
+            null, // divider
+            {label:'Onwards',       icon:'icons/application-table.png',           action:function() { alert('clicked 7') } },
+            {label:'Flutters',      icon:'icons/cassette.png',                    action:function() { alert('clicked 8') } }
+          ]
+        });
+      });
+    </script>
+  </head>
+  <body style="background-color:#000000; color:#ffffff; font-family:arial,sans-serif">
+
+    <div id="mythingy" style="width:500px; height: 500px; margin: 10px; border:2px dashed #666666; padding:6px">
+      right click in this box to show custom context menu 
+    </div>
+
+    right click out of the box to show the standard browser menu (if you're trying to view-source, right click here)
+  </body>
+</html>
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-monitor.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-monitor.png
new file mode 100644 (file)
index 0000000..bef89c0
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-monitor.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-table.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-table.png
new file mode 100644 (file)
index 0000000..91e0791
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/application-table.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/bin-metal.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/bin-metal.png
new file mode 100644 (file)
index 0000000..75f968a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/bin-metal.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/book-open-list.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/book-open-list.png
new file mode 100644 (file)
index 0000000..ec5562e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/book-open-list.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/cassette.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/cassette.png
new file mode 100644 (file)
index 0000000..117bc98
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/cassette.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/magnifier-zoom-actual-equal.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/magnifier-zoom-actual-equal.png
new file mode 100644 (file)
index 0000000..14a1fd5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/magnifier-zoom-actual-equal.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/receipt-text.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/receipt-text.png
new file mode 100644 (file)
index 0000000..1db8105
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/receipt-text.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/shopping-basket.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/shopping-basket.png
new file mode 100644 (file)
index 0000000..22b66f3
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/icons/shopping-basket.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/screenshot.png b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/screenshot.png
new file mode 100644 (file)
index 0000000..4a0d4a5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/assets/js/context-menu/demo/screenshot.png differ
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/jquery.contextmenu.css b/wrt/wrt_support/sample/launcher/assets/js/context-menu/jquery.contextmenu.css
new file mode 100644 (file)
index 0000000..348731c
--- /dev/null
@@ -0,0 +1,101 @@
+
+.contextMenuPlugin {
+  -webkit-user-select: none;
+  display: none;
+  font-family: tahoma, arial, sans-serif;
+  font-size: 11px;
+  position: absolute;
+  left: 100px;
+  top: 100px;
+  min-width: 100px;
+  list-style-type: none;
+  margin: 0;
+  padding: 0;
+  background-color: #f7f3f7;
+  border: 2px solid #f7f7f7;
+  outline: 1px solid #949694;
+}
+
+.contextMenuPlugin > li {
+  margin: 0 0 0 0;
+  padding: 1px;
+  background-repeat: no-repeat;
+}
+
+.contextMenuPlugin > li > a {
+  position: relative;
+  display: block;
+  padding: 3px 3px 3px 28px;
+  color: ButtonText;
+  text-decoration: none;
+  margin: 1px;
+}
+
+.contextMenuPlugin > li > a img {
+  position: absolute;
+  left: 3px;
+  margin-top: -2px;
+  width: 16px;
+  height: 16px;
+}
+.contextMenuPlugin > li > a:hover {
+  border: 1px solid #fffbff;
+  outline: 1px solid #b5d3ff;
+  margin: 0;
+  background: -moz-linear-gradient(top, rgba(239,239,255,0.5) 0%, rgba(223,223,255,0.5) 100%); /* FF3.6+ */
+  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(239,239,255,0.5)), color-stop(100%,rgba(223,223,255,0.5))); /* Chrome,Safari4+ */
+  background: -webkit-linear-gradient(top, rgba(239,239,255,0.5) 0%,rgba(223,223,255,0.5) 100%); /* Chrome10+,Safari5.1+ */
+  background: -o-linear-gradient(top, rgba(239,239,255,0.5) 0%,rgba(223,223,255,0.5) 100%); /* Opera11.10+ */
+  background: -ms-linear-gradient(top, rgba(239,239,255,0.5) 0%,rgba(223,223,255,0.5) 100%); /* IE10+ */
+  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80efefff', endColorstr='#80dfdfff',GradientType=0 ); /* IE6-9 */
+  background: linear-gradient(top, rgba(239,239,255,0.5) 0%,rgba(223,223,255,0.5) 100%); /* W3C */
+  cursor: default;
+}
+
+.contextMenuPlugin > li.disabled {
+  pointer-events: none;
+}
+
+.contextMenuPlugin > li.disabled a {
+  color: grey;
+}
+
+.contextMenuPlugin > li.disabled > a:hover {
+  border: none;
+  outline: none;
+}
+
+.contextMenuPlugin > li.divider {
+  border-top: 1px solid #e7e3e7;
+  border-bottom: 1px solid #ffffff;
+  height: 0;
+  padding: 0;
+  margin: 5px 0 5px 27px;
+}
+
+.contextMenuPlugin > .header {
+  background: rgb(90,90,90); /* Old browsers */
+  background: -moz-linear-gradient(top, rgba(90,90,90,1) 0%, rgba(20,20,20,1) 100%); /* FF3.6+ */
+  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(90,90,90,1)), color-stop(100%,rgba(20,20,20,1))); /* Chrome,Safari4+ */
+  background: -webkit-linear-gradient(top, rgba(90,90,90,1) 0%,rgba(20,20,20,1) 100%); /* Chrome10+,Safari5.1+ */
+  background: -o-linear-gradient(top, rgba(90,90,90,1) 0%,rgba(20,20,20,1) 100%); /* Opera11.10+ */
+  background: -ms-linear-gradient(top, rgba(90,90,90,1) 0%,rgba(20,20,20,1) 100%); /* IE10+ */
+  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5a5a5a', endColorstr='#141414',GradientType=0 ); /* IE6-9 */
+  background: linear-gradient(top, rgba(90,90,90,1) 0%,rgba(20,20,20,1) 100%); /* W3C */
+  position: relative;
+  cursor: default;
+  padding: 3px 3px 3px 3px;
+  color: #ffffff;
+}
+
+.contextMenuPlugin > .gutterLine {
+  position: absolute;
+  border-left: 1px solid #e7e3e7;
+  border-right: 1px solid #ffffff;
+  width: 0;
+  top: 0;
+  bottom: 0;
+  left: 26px;
+  z-index: 0;
+}
+
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/jquery.contextmenu.js b/wrt/wrt_support/sample/launcher/assets/js/context-menu/jquery.contextmenu.js
new file mode 100644 (file)
index 0000000..3d5419b
--- /dev/null
@@ -0,0 +1,116 @@
+/**
+ * jQuery plugin for Pretty looking right click context menu.
+ *
+ * Requires popup.js and popup.css to be included in your page. And jQuery, obviously.
+ *
+ * Usage:
+ *
+ *   $('.something').contextPopup({
+ *     title: 'Some title',
+ *     items: [
+ *       {label:'My Item', icon:'/some/icon1.png', action:function() { alert('hi'); }},
+ *       {label:'Item #2', icon:'/some/icon2.png', action:function() { alert('yo'); }},
+ *       null, // divider
+ *       {label:'Blahhhh', icon:'/some/icon3.png', action:function() { alert('bye'); }, isEnabled: function() { return false; }},
+ *     ]
+ *   });
+ *
+ * Icon needs to be 16x16. I recommend the Fugue icon set from: http://p.yusukekamiyamane.com/ 
+ *
+ * - Joe Walnes, 2011 http://joewalnes.com/
+ *   https://github.com/joewalnes/jquery-simple-context-menu
+ *
+ * MIT License: https://github.com/joewalnes/jquery-simple-context-menu/blob/master/LICENSE.txt
+ */
+jQuery.fn.contextPopup = function(menuData) {
+       // Define default settings
+       var settings = {
+               contextMenuClass: 'contextMenuPlugin',
+        linkClickerClass: 'contextMenuLink',
+               gutterLineClass: 'gutterLine',
+               headerClass: 'header',
+               seperatorClass: 'divider',
+               title: '',
+               items: []
+       };
+       
+       // merge them
+       $.extend(settings, menuData);
+
+  // Build popup menu HTML
+  function createMenu(e) {
+    var menu = $('<ul class="' + settings.contextMenuClass + '"><div class="' + settings.gutterLineClass + '"></div></ul>')
+      .appendTo(document.body);
+    if (settings.title) {
+      $('<li class="' + settings.headerClass + '"></li>').text(settings.title).appendTo(menu);
+    }
+    settings.items.forEach(function(item) {
+      if (item) {
+        var rowCode = '<li><a href="#" class="'+settings.linkClickerClass+'"><span class="itemTitle"></span></a></li>';
+        // if(item.icon)
+        //   rowCode += '<img>';
+        // rowCode +=  '<span></span></a></li>';
+        var row = $(rowCode).appendTo(menu);
+        if(item.icon){
+          var icon = $('<img>');
+          icon.attr('src', item.icon);
+          icon.insertBefore(row.find('.itemTitle'));
+        }
+        row.find('.itemTitle').text(item.label);
+          
+        if (item.isEnabled != undefined && !item.isEnabled()) {
+            row.addClass('disabled');
+        } else if (item.action) {
+            row.find('.'+settings.linkClickerClass).click(function () { item.action(e); });
+        }
+
+      } else {
+        $('<li class="' + settings.seperatorClass + '"></li>').appendTo(menu);
+      }
+    });
+    menu.find('.' + settings.headerClass ).text(settings.title);
+    return menu;
+  }
+
+  // On contextmenu event (right click)
+  this.on('contextmenu', function(e) {
+    var menu = createMenu(e)
+      .show();
+    
+    var left = e.pageX + 5, /* nudge to the right, so the pointer is covering the title */
+        top = e.pageY;
+    if (top + menu.height() >= $(window).height()) {
+        top -= menu.height();
+    }
+    if (left + menu.width() >= $(window).width()) {
+        left -= menu.width();
+    }
+
+    // Create and show menu
+    menu.css({zIndex:1000001, left:left, top:top})
+      .on('contextmenu', function() { return false; });
+
+    // Cover rest of page with invisible div that when clicked will cancel the popup.
+    var bg = $('<div></div>')
+      .css({left:0, top:0, width:'100%', height:'100%', position:'absolute', zIndex:1000000})
+      .appendTo(document.body)
+      .on('contextmenu click', function() {
+        // If click or right click anywhere else on page: remove clean up.
+        bg.remove();
+        menu.remove();
+        return false;
+      });
+
+    // When clicking on a link in menu: clean up (in addition to handlers on link already)
+    menu.find('a').click(function() {
+      bg.remove();
+      menu.remove();
+    });
+
+    // Cancel event, so real browser popup doesn't appear.
+    return false;
+  });
+
+  return this;
+};
+
diff --git a/wrt/wrt_support/sample/launcher/assets/js/context-menu/simplecontextmenu.jquery.json b/wrt/wrt_support/sample/launcher/assets/js/context-menu/simplecontextmenu.jquery.json
new file mode 100644 (file)
index 0000000..cf2071c
--- /dev/null
@@ -0,0 +1,33 @@
+{
+  "name": "simplecontextmenu",
+  "version": "1.3.2",
+  "title": "Simple Context Menu",
+  "description": "Very simple to use, good looking right click context menu.",
+  "author": {
+    "name": "Joe Walnes",
+    "email": "joe@walnes.com",
+    "url": "http://joewalnes.com/"
+  },
+  "keywords": [
+    "ui",
+    "menu",
+    "contextmenu",
+    "context-menu",
+    "rightclick",
+    "right-click"
+  ],
+  "dependencies": {
+    "jquery": ">=1.3"
+  },
+  "licenses": [
+    {
+      "type": "MIT",
+      "url": "https://raw.github.com/joewalnes/jquery-simple-context-menu/master/LICENSE.txt"
+    }
+  ],
+  "homepage": "https://github.com/joewalnes/jquery-simple-context-menu",
+  "docs": "https://github.com/joewalnes/jquery-simple-context-menu",
+  "demo": "http://joewalnes.github.com/jquery-simple-context-menu/example.html",
+  "download": "https://github.com/joewalnes/jquery-simple-context-menu/archive/master.zip",
+  "bugs": "https://github.com/joewalnes/jquery-simple-context-menu/issues"
+}
diff --git a/wrt/wrt_support/sample/launcher/assets/js/jquery.desktop.js b/wrt/wrt_support/sample/launcher/assets/js/jquery.desktop.js
new file mode 100755 (executable)
index 0000000..2d73cdd
--- /dev/null
@@ -0,0 +1,363 @@
+//
+// Namespace - Module Pattern.
+//
+var JQD = (function($, window, document, undefined) {
+  // Expose innards of JQD.
+  return {
+    go: function() {
+      for (var i in JQD.init) {
+        JQD.init[i]();
+      }
+    },
+    init: {
+      frame_breaker: function() {
+        if (window.location !== window.top.location) {
+          window.top.location = window.location;
+        }
+      },
+      //
+      // Initialize the clock.
+      //
+      clock: function() {
+        var clock = $('#clock');
+
+        if (!clock.length) {
+          return;
+        }
+
+        // Date variables.
+        var date_obj = new Date();
+        var hour = date_obj.getHours();
+        var minute = date_obj.getMinutes();
+        var day = date_obj.getDate();
+        var year = date_obj.getFullYear();
+        var suffix = 'AM';
+
+        // Array for weekday.
+        var weekday = [
+          'Sunday',
+          'Monday',
+          'Tuesday',
+          'Wednesday',
+          'Thursday',
+          'Friday',
+          'Saturday'
+        ];
+
+        // Array for month.
+        var month = [
+          'January',
+          'February',
+          'March',
+          'April',
+          'May',
+          'June',
+          'July',
+          'August',
+          'September',
+          'October',
+          'November',
+          'December'
+        ];
+
+        // Assign weekday, month, date, year.
+        weekday = weekday[date_obj.getDay()];
+        month = month[date_obj.getMonth()];
+
+        // AM or PM?
+        if (hour >= 12) {
+          suffix = 'PM';
+        }
+
+        // Convert to 12-hour.
+        if (hour > 12) {
+          hour = hour - 12;
+        }
+        else if (hour === 0) {
+          // Display 12:XX instead of 0:XX.
+          hour = 12;
+        }
+
+        // Leading zero, if needed.
+        if (minute < 10) {
+          minute = '0' + minute;
+        }
+
+        // Build two HTML strings.
+        var clock_time = weekday + ' ' + hour + ':' + minute + ' ' + suffix;
+        var clock_date = month + ' ' + day + ', ' + year;
+
+        // Shove in the HTML.
+        clock.html(clock_time).attr('title', clock_date);
+
+        // Update every 60 seconds.
+        setTimeout(JQD.init.clock, 60000);
+      },
+      //
+      // Initialize the desktop.
+      //
+      desktop: function() {
+        // Alias to document.
+        var d = $(document);
+
+        // Cancel mousedown.
+        d.mousedown(function(ev) {
+          var tags = [
+            'a',
+            'button',
+            'input',
+            'select',
+            'textarea',
+            'tr'
+          ].join(',');
+
+          if (!$(ev.target).closest(tags).length) {
+            JQD.util.clear_active();
+            ev.preventDefault();
+            ev.stopPropagation();
+          }
+        });
+
+        // Cancel right-click.
+        d.on('contextmenu', function() {
+          return false;
+        });
+
+        // Relative or remote links?
+        d.on('click', 'a', function(ev) {
+          var url = $(this).attr('href');
+          this.blur();
+
+          if (url.match(/^#/)) {
+            ev.preventDefault();
+            ev.stopPropagation();
+          }
+          else {
+            $(this).attr('target', '_blank');
+          }
+        });
+
+        // Make top menus active.
+        d.on('mousedown', 'a.menu_trigger', function() {
+          if ($(this).next('ul.menu').is(':hidden')) {
+            JQD.util.clear_active();
+            $(this).addClass('active').next('ul.menu').show();
+          }
+          else {
+            JQD.util.clear_active();
+          }
+        });
+
+        // Transfer focus, if already open.
+        d.on('mouseenter', 'a.menu_trigger', function() {
+          if ($('ul.menu').is(':visible')) {
+            JQD.util.clear_active();
+            $(this).addClass('active').next('ul.menu').show();
+          }
+        });
+
+        // Cancel single-click.
+        d.on('mousedown', 'a.icon', function() {
+          // Highlight the icon.
+          JQD.util.clear_active();
+          $(this).addClass('active');
+        });
+
+        // Respond to double-click.
+        d.on('dblclick', 'a.icon', function() {
+          // Get the link's target.
+          var x = $(this).attr('href');
+          var y = $(x).find('a').attr('href');
+
+          // Show the taskbar button.
+          if ($(x).is(':hidden')) {
+            $(x).remove().appendTo('#dock');
+            $(x).show('fast');
+          }
+
+          // Bring window to front.
+          JQD.util.window_flat();
+          $(y).addClass('window_stack').show();
+        });
+
+        // Make icons draggable.
+        d.on('mouseenter', 'a.icon', function() {
+          $(this).off('mouseenter').draggable({
+            revert: true,
+            containment: 'parent'
+          });
+        });
+
+        // Taskbar buttons.
+        d.on('click', '#dock a', function() {
+          // Get the link's target.
+          var x = $($(this).attr('href'));
+
+          // Hide, if visible.
+          if (x.is(':visible')) {
+            x.hide();
+          }
+          else {
+            // Bring window to front.
+            JQD.util.window_flat();
+            x.show().addClass('window_stack');
+          }
+        });
+
+        // Focus active window.
+        d.on('mousedown', 'div.window', function() {
+          // Bring window to front.
+          JQD.util.window_flat();
+          $(this).addClass('window_stack');
+        });
+
+        // Make windows draggable.
+        d.on('mouseenter', 'div.window', function() {
+          $(this).off('mouseenter').draggable({
+            // Confine to desktop.
+            // Movable via top bar only.
+            cancel: 'a',
+            containment: 'parent',
+            handle: 'div.window_top'
+          }).resizable({
+            containment: 'parent',
+            minWidth: 400,
+            minHeight: 200
+          });
+        });
+
+        // Double-click top bar to resize, ala Windows OS.
+        d.on('dblclick', 'div.window_top', function() {
+          JQD.util.window_resize(this);
+        });
+
+        // Double click top bar icon to close, ala Windows OS.
+        d.on('dblclick', 'div.window_top img', function() {
+          // Traverse to the close button, and hide its taskbar button.
+          $($(this).closest('div.window_top').find('a.window_close').attr('href')).hide('fast');
+
+          // Close the window itself.
+          $(this).closest('div.window').hide();
+
+          // Stop propagation to window's top bar.
+          return false;
+        });
+
+        // Minimize the window.
+        d.on('click', 'a.window_min', function() {
+          $(this).closest('div.window').hide();
+        });
+
+        // Maximize or restore the window.
+        d.on('click', 'a.window_resize', function() {
+          JQD.util.window_resize(this);
+        });
+
+        // Close the window.
+        d.on('click', 'a.window_close', function() {
+          $(this).closest('div.window').hide();
+          $($(this).attr('href')).hide('fast');
+        });
+
+        // Show desktop button, ala Windows OS.
+        d.on('mousedown', '#show_desktop', function() {
+          // If any windows are visible, hide all.
+          if ($('div.window:visible').length) {
+            $('div.window').hide();
+          }
+          else {
+            // Otherwise, reveal hidden windows that are open.
+            $('#dock li:visible a').each(function() {
+              $($(this).attr('href')).show();
+            });
+          }
+        });
+
+        $('table.data').each(function() {
+          // Add zebra striping, ala Mac OS X.
+          $(this).find('tbody tr:odd').addClass('zebra');
+        });
+
+        d.on('mousedown', 'table.data tr', function() {
+          // Clear active state.
+          JQD.util.clear_active();
+
+          // Highlight row, ala Mac OS X.
+          $(this).closest('tr').addClass('active');
+        });
+      },
+      wallpaper: function() {
+        // Add wallpaper last, to prevent blocking.
+        if ($('#desktop').length) {
+          $('body').prepend('<img id="wallpaper" class="abs" src="assets/images/misc/wallpaper.jpg" />');
+        }
+      }
+    },
+    util: {
+      //
+      // Clear active states, hide menus.
+      //
+      clear_active: function() {
+        $('a.active, tr.active').removeClass('active');
+        $('ul.menu').hide();
+      },
+      //
+      // Zero out window z-index.
+      //
+      window_flat: function() {
+        $('div.window').removeClass('window_stack');
+      },
+      //
+      // Resize modal window.
+      //
+      window_resize: function(el) {
+        // Nearest parent window.
+        var win = $(el).closest('div.window');
+
+        // Is it maximized already?
+        if (win.hasClass('window_full')) {
+          // Restore window position.
+          win.removeClass('window_full').css({
+            'top': win.attr('data-t'),
+            'left': win.attr('data-l'),
+            'right': win.attr('data-r'),
+            'bottom': win.attr('data-b'),
+            'width': win.attr('data-w'),
+            'height': win.attr('data-h')
+          });
+        }
+        else {
+          win.attr({
+            // Save window position.
+            'data-t': win.css('top'),
+            'data-l': win.css('left'),
+            'data-r': win.css('right'),
+            'data-b': win.css('bottom'),
+            'data-w': win.css('width'),
+            'data-h': win.css('height')
+          }).addClass('window_full').css({
+            // Maximize dimensions.
+            'top': '0',
+            'left': '0',
+            'right': '0',
+            'bottom': '0',
+            'width': '100%',
+            'height': '100%'
+          });
+        }
+
+        // Bring window to front.
+        JQD.util.window_flat();
+        win.addClass('window_stack');
+      }
+    }
+  };
+// Pass in jQuery.
+})(jQuery, this, this.document);
+
+//
+// Kick things off.
+//
+jQuery(document).ready(function() {
+  JQD.go();
+});
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/assets/js/jquery.js b/wrt/wrt_support/sample/launcher/assets/js/jquery.js
new file mode 100755 (executable)
index 0000000..026bcfa
--- /dev/null
@@ -0,0 +1,3373 @@
+/*! jQuery v1.11.0 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ ! function(a, b) {
+    "object" == typeof module && "object" == typeof module.exports ? module.exports = a.document ? b(a, !0) : function(a) {
+        if (!a.document) throw new Error("jQuery requires a window with a document");
+        return b(a)
+    } : b(a)
+}("undefined" != typeof window ? window : this, function(a, b) {
+    var c = [],
+        d = c.slice,
+        e = c.concat,
+        f = c.push,
+        g = c.indexOf,
+        h = {},
+        i = h.toString,
+        j = h.hasOwnProperty,
+        k = "".trim,
+        l = {},
+        m = "1.11.0",
+        n = function(a, b) {
+            return new n.fn.init(a, b)
+        },
+        o = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
+        p = /^-ms-/,
+        q = /-([\da-z])/gi,
+        r = function(a, b) {
+            return b.toUpperCase()
+        };
+    n.fn = n.prototype = {
+        jquery: m,
+        constructor: n,
+        selector: "",
+        length: 0,
+        toArray: function() {
+            return d.call(this)
+        },
+        get: function(a) {
+            return null != a ? 0 > a ? this[a + this.length] : this[a] : d.call(this)
+        },
+        pushStack: function(a) {
+            var b = n.merge(this.constructor(), a);
+            return b.prevObject = this, b.context = this.context, b
+        },
+        each: function(a, b) {
+            return n.each(this, a, b)
+        },
+        map: function(a) {
+            return this.pushStack(n.map(this, function(b, c) {
+                return a.call(b, c, b)
+            }))
+        },
+        slice: function() {
+            return this.pushStack(d.apply(this, arguments))
+        },
+        first: function() {
+            return this.eq(0)
+        },
+        last: function() {
+            return this.eq(-1)
+        },
+        eq: function(a) {
+            var b = this.length,
+                c = +a + (0 > a ? b : 0);
+            return this.pushStack(c >= 0 && b > c ? [this[c]] : [])
+        },
+        end: function() {
+            return this.prevObject || this.constructor(null)
+        },
+        push: f,
+        sort: c.sort,
+        splice: c.splice
+    }, n.extend = n.fn.extend = function() {
+        var a, b, c, d, e, f, g = arguments[0] || {},
+            h = 1,
+            i = arguments.length,
+            j = !1;
+        for ("boolean" == typeof g && (j = g, g = arguments[h] || {}, h++), "object" == typeof g || n.isFunction(g) || (g = {}), h === i && (g = this, h--); i > h; h++)
+            if (null != (e = arguments[h]))
+                for (d in e) a = g[d], c = e[d], g !== c && (j && c && (n.isPlainObject(c) || (b = n.isArray(c))) ? (b ? (b = !1, f = a && n.isArray(a) ? a : []) : f = a && n.isPlainObject(a) ? a : {}, g[d] = n.extend(j, f, c)) : void 0 !== c && (g[d] = c));
+        return g
+    }, n.extend({
+        expando: "jQuery" + (m + Math.random()).replace(/\D/g, ""),
+        isReady: !0,
+        error: function(a) {
+            throw new Error(a)
+        },
+        noop: function() {},
+        isFunction: function(a) {
+            return "function" === n.type(a)
+        },
+        isArray: Array.isArray || function(a) {
+            return "array" === n.type(a)
+        },
+        isWindow: function(a) {
+            return null != a && a == a.window
+        },
+        isNumeric: function(a) {
+            return a - parseFloat(a) >= 0
+        },
+        isEmptyObject: function(a) {
+            var b;
+            for (b in a) return !1;
+            return !0
+        },
+        isPlainObject: function(a) {
+            var b;
+            if (!a || "object" !== n.type(a) || a.nodeType || n.isWindow(a)) return !1;
+            try {
+                if (a.constructor && !j.call(a, "constructor") && !j.call(a.constructor.prototype, "isPrototypeOf")) return !1
+            } catch (c) {
+                return !1
+            }
+            if (l.ownLast)
+                for (b in a) return j.call(a, b);
+            for (b in a);
+            return void 0 === b || j.call(a, b)
+        },
+        type: function(a) {
+            return null == a ? a + "" : "object" == typeof a || "function" == typeof a ? h[i.call(a)] || "object" : typeof a
+        },
+        globalEval: function(b) {
+            b && n.trim(b) && (a.execScript || function(b) {
+                a.eval.call(a, b)
+            })(b)
+        },
+        camelCase: function(a) {
+            return a.replace(p, "ms-").replace(q, r)
+        },
+        nodeName: function(a, b) {
+            return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase()
+        },
+        each: function(a, b, c) {
+            var d, e = 0,
+                f = a.length,
+                g = s(a);
+            if (c) {
+                if (g) {
+                    for (; f > e; e++)
+                        if (d = b.apply(a[e], c), d === !1) break
+                } else
+                    for (e in a)
+                        if (d = b.apply(a[e], c), d === !1) break
+            } else if (g) {
+                for (; f > e; e++)
+                    if (d = b.call(a[e], e, a[e]), d === !1) break
+            } else
+                for (e in a)
+                    if (d = b.call(a[e], e, a[e]), d === !1) break;
+            return a
+        },
+        trim: k && !k.call("\ufeff\xa0") ? function(a) {
+            return null == a ? "" : k.call(a)
+        } : function(a) {
+            return null == a ? "" : (a + "").replace(o, "")
+        },
+        makeArray: function(a, b) {
+            var c = b || [];
+            return null != a && (s(Object(a)) ? n.merge(c, "string" == typeof a ? [a] : a) : f.call(c, a)), c
+        },
+        inArray: function(a, b, c) {
+            var d;
+            if (b) {
+                if (g) return g.call(b, a, c);
+                for (d = b.length, c = c ? 0 > c ? Math.max(0, d + c) : c : 0; d > c; c++)
+                    if (c in b && b[c] === a) return c
+            }
+            return -1
+        },
+        merge: function(a, b) {
+            var c = +b.length,
+                d = 0,
+                e = a.length;
+            while (c > d) a[e++] = b[d++];
+            if (c !== c)
+                while (void 0 !== b[d]) a[e++] = b[d++];
+            return a.length = e, a
+        },
+        grep: function(a, b, c) {
+            for (var d, e = [], f = 0, g = a.length, h = !c; g > f; f++) d = !b(a[f], f), d !== h && e.push(a[f]);
+            return e
+        },
+        map: function(a, b, c) {
+            var d, f = 0,
+                g = a.length,
+                h = s(a),
+                i = [];
+            if (h)
+                for (; g > f; f++) d = b(a[f], f, c), null != d && i.push(d);
+            else
+                for (f in a) d = b(a[f], f, c), null != d && i.push(d);
+            return e.apply([], i)
+        },
+        guid: 1,
+        proxy: function(a, b) {
+            var c, e, f;
+            return "string" == typeof b && (f = a[b], b = a, a = f), n.isFunction(a) ? (c = d.call(arguments, 2), e = function() {
+                return a.apply(b || this, c.concat(d.call(arguments)))
+            }, e.guid = a.guid = a.guid || n.guid++, e) : void 0
+        },
+        now: function() {
+            return +new Date
+        },
+        support: l
+    }), n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(a, b) {
+        h["[object " + b + "]"] = b.toLowerCase()
+    });
+
+    function s(a) {
+        var b = a.length,
+            c = n.type(a);
+        return "function" === c || n.isWindow(a) ? !1 : 1 === a.nodeType && b ? !0 : "array" === c || 0 === b || "number" == typeof b && b > 0 && b - 1 in a
+    }
+    var t = function(a) {
+        var b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s = "sizzle" + -new Date,
+            t = a.document,
+            u = 0,
+            v = 0,
+            w = eb(),
+            x = eb(),
+            y = eb(),
+            z = function(a, b) {
+                return a === b && (j = !0), 0
+            },
+            A = "undefined",
+            B = 1 << 31,
+            C = {}.hasOwnProperty,
+            D = [],
+            E = D.pop,
+            F = D.push,
+            G = D.push,
+            H = D.slice,
+            I = D.indexOf || function(a) {
+                for (var b = 0, c = this.length; c > b; b++)
+                    if (this[b] === a) return b;
+                return -1
+            },
+            J = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
+            K = "[\\x20\\t\\r\\n\\f]",
+            L = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
+            M = L.replace("w", "w#"),
+            N = "\\[" + K + "*(" + L + ")" + K + "*(?:([*^$|!~]?=)" + K + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + M + ")|)|)" + K + "*\\]",
+            O = ":(" + L + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + N.replace(3, 8) + ")*)|.*)\\)|)",
+            P = new RegExp("^" + K + "+|((?:^|[^\\\\])(?:\\\\.)*)" + K + "+$", "g"),
+            Q = new RegExp("^" + K + "*," + K + "*"),
+            R = new RegExp("^" + K + "*([>+~]|" + K + ")" + K + "*"),
+            S = new RegExp("=" + K + "*([^\\]'\"]*?)" + K + "*\\]", "g"),
+            T = new RegExp(O),
+            U = new RegExp("^" + M + "$"),
+            V = {
+                ID: new RegExp("^#(" + L + ")"),
+                CLASS: new RegExp("^\\.(" + L + ")"),
+                TAG: new RegExp("^(" + L.replace("w", "w*") + ")"),
+                ATTR: new RegExp("^" + N),
+                PSEUDO: new RegExp("^" + O),
+                CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + K + "*(even|odd|(([+-]|)(\\d*)n|)" + K + "*(?:([+-]|)" + K + "*(\\d+)|))" + K + "*\\)|)", "i"),
+                bool: new RegExp("^(?:" + J + ")$", "i"),
+                needsContext: new RegExp("^" + K + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + K + "*((?:-\\d)?\\d*)" + K + "*\\)|)(?=[^-]|$)", "i")
+            },
+            W = /^(?:input|select|textarea|button)$/i,
+            X = /^h\d$/i,
+            Y = /^[^{]+\{\s*\[native \w/,
+            Z = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
+            $ = /[+~]/,
+            _ = /'|\\/g,
+            ab = new RegExp("\\\\([\\da-f]{1,6}" + K + "?|(" + K + ")|.)", "ig"),
+            bb = function(a, b, c) {
+                var d = "0x" + b - 65536;
+                return d !== d || c ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode(d >> 10 | 55296, 1023 & d | 56320)
+            };
+        try {
+            G.apply(D = H.call(t.childNodes), t.childNodes), D[t.childNodes.length].nodeType
+        } catch (cb) {
+            G = {
+                apply: D.length ? function(a, b) {
+                    F.apply(a, H.call(b))
+                } : function(a, b) {
+                    var c = a.length,
+                        d = 0;
+                    while (a[c++] = b[d++]);
+                    a.length = c - 1
+                }
+            }
+        }
+
+        function db(a, b, d, e) {
+            var f, g, h, i, j, m, p, q, u, v;
+            if ((b ? b.ownerDocument || b : t) !== l && k(b), b = b || l, d = d || [], !a || "string" != typeof a) return d;
+            if (1 !== (i = b.nodeType) && 9 !== i) return [];
+            if (n && !e) {
+                if (f = Z.exec(a))
+                    if (h = f[1]) {
+                        if (9 === i) {
+                            if (g = b.getElementById(h), !g || !g.parentNode) return d;
+                            if (g.id === h) return d.push(g), d
+                        } else if (b.ownerDocument && (g = b.ownerDocument.getElementById(h)) && r(b, g) && g.id === h) return d.push(g), d
+                    } else {
+                        if (f[2]) return G.apply(d, b.getElementsByTagName(a)), d;
+                        if ((h = f[3]) && c.getElementsByClassName && b.getElementsByClassName) return G.apply(d, b.getElementsByClassName(h)), d
+                    }
+                if (c.qsa && (!o || !o.test(a))) {
+                    if (q = p = s, u = b, v = 9 === i && a, 1 === i && "object" !== b.nodeName.toLowerCase()) {
+                        m = ob(a), (p = b.getAttribute("id")) ? q = p.replace(_, "\\$&") : b.setAttribute("id", q), q = "[id='" + q + "'] ", j = m.length;
+                        while (j--) m[j] = q + pb(m[j]);
+                        u = $.test(a) && mb(b.parentNode) || b, v = m.join(",")
+                    }
+                    if (v) try {
+                        return G.apply(d, u.querySelectorAll(v)), d
+                    } catch (w) {} finally {
+                        p || b.removeAttribute("id")
+                    }
+                }
+            }
+            return xb(a.replace(P, "$1"), b, d, e)
+        }
+
+        function eb() {
+            var a = [];
+
+            function b(c, e) {
+                return a.push(c + " ") > d.cacheLength && delete b[a.shift()], b[c + " "] = e
+            }
+            return b
+        }
+
+        function fb(a) {
+            return a[s] = !0, a
+        }
+
+        function gb(a) {
+            var b = l.createElement("div");
+            try {
+                return !!a(b)
+            } catch (c) {
+                return !1
+            } finally {
+                b.parentNode && b.parentNode.removeChild(b), b = null
+            }
+        }
+
+        function hb(a, b) {
+            var c = a.split("|"),
+                e = a.length;
+            while (e--) d.attrHandle[c[e]] = b
+        }
+
+        function ib(a, b) {
+            var c = b && a,
+                d = c && 1 === a.nodeType && 1 === b.nodeType && (~b.sourceIndex || B) - (~a.sourceIndex || B);
+            if (d) return d;
+            if (c)
+                while (c = c.nextSibling)
+                    if (c === b) return -1;
+            return a ? 1 : -1
+        }
+
+        function jb(a) {
+            return function(b) {
+                var c = b.nodeName.toLowerCase();
+                return "input" === c && b.type === a
+            }
+        }
+
+        function kb(a) {
+            return function(b) {
+                var c = b.nodeName.toLowerCase();
+                return ("input" === c || "button" === c) && b.type === a
+            }
+        }
+
+        function lb(a) {
+            return fb(function(b) {
+                return b = +b, fb(function(c, d) {
+                    var e, f = a([], c.length, b),
+                        g = f.length;
+                    while (g--) c[e = f[g]] && (c[e] = !(d[e] = c[e]))
+                })
+            })
+        }
+
+        function mb(a) {
+            return a && typeof a.getElementsByTagName !== A && a
+        }
+        c = db.support = {}, f = db.isXML = function(a) {
+            var b = a && (a.ownerDocument || a).documentElement;
+            return b ? "HTML" !== b.nodeName : !1
+        }, k = db.setDocument = function(a) {
+            var b, e = a ? a.ownerDocument || a : t,
+                g = e.defaultView;
+            return e !== l && 9 === e.nodeType && e.documentElement ? (l = e, m = e.documentElement, n = !f(e), g && g !== g.top && (g.addEventListener ? g.addEventListener("unload", function() {
+                k()
+            }, !1) : g.attachEvent && g.attachEvent("onunload", function() {
+                k()
+            })), c.attributes = gb(function(a) {
+                return a.className = "i", !a.getAttribute("className")
+            }), c.getElementsByTagName = gb(function(a) {
+                return a.appendChild(e.createComment("")), !a.getElementsByTagName("*").length
+            }), c.getElementsByClassName = Y.test(e.getElementsByClassName) && gb(function(a) {
+                return a.innerHTML = "<div class='a'></div><div class='a i'></div>", a.firstChild.className = "i", 2 === a.getElementsByClassName("i").length
+            }), c.getById = gb(function(a) {
+                return m.appendChild(a).id = s, !e.getElementsByName || !e.getElementsByName(s).length
+            }), c.getById ? (d.find.ID = function(a, b) {
+                if (typeof b.getElementById !== A && n) {
+                    var c = b.getElementById(a);
+                    return c && c.parentNode ? [c] : []
+                }
+            }, d.filter.ID = function(a) {
+                var b = a.replace(ab, bb);
+                return function(a) {
+                    return a.getAttribute("id") === b
+                }
+            }) : (delete d.find.ID, d.filter.ID = function(a) {
+                var b = a.replace(ab, bb);
+                return function(a) {
+                    var c = typeof a.getAttributeNode !== A && a.getAttributeNode("id");
+                    return c && c.value === b
+                }
+            }), d.find.TAG = c.getElementsByTagName ? function(a, b) {
+                return typeof b.getElementsByTagName !== A ? b.getElementsByTagName(a) : void 0
+            } : function(a, b) {
+                var c, d = [],
+                    e = 0,
+                    f = b.getElementsByTagName(a);
+                if ("*" === a) {
+                    while (c = f[e++]) 1 === c.nodeType && d.push(c);
+                    return d
+                }
+                return f
+            }, d.find.CLASS = c.getElementsByClassName && function(a, b) {
+                return typeof b.getElementsByClassName !== A && n ? b.getElementsByClassName(a) : void 0
+            }, p = [], o = [], (c.qsa = Y.test(e.querySelectorAll)) && (gb(function(a) {
+                a.innerHTML = "<select t=''><option selected=''></option></select>", a.querySelectorAll("[t^='']").length && o.push("[*^$]=" + K + "*(?:''|\"\")"), a.querySelectorAll("[selected]").length || o.push("\\[" + K + "*(?:value|" + J + ")"), a.querySelectorAll(":checked").length || o.push(":checked")
+            }), gb(function(a) {
+                var b = e.createElement("input");
+                b.setAttribute("type", "hidden"), a.appendChild(b).setAttribute("name", "D"), a.querySelectorAll("[name=d]").length && o.push("name" + K + "*[*^$|!~]?="), a.querySelectorAll(":enabled").length || o.push(":enabled", ":disabled"), a.querySelectorAll("*,:x"), o.push(",.*:")
+            })), (c.matchesSelector = Y.test(q = m.webkitMatchesSelector || m.mozMatchesSelector || m.oMatchesSelector || m.msMatchesSelector)) && gb(function(a) {
+                c.disconnectedMatch = q.call(a, "div"), q.call(a, "[s!='']:x"), p.push("!=", O)
+            }), o = o.length && new RegExp(o.join("|")), p = p.length && new RegExp(p.join("|")), b = Y.test(m.compareDocumentPosition), r = b || Y.test(m.contains) ? function(a, b) {
+                var c = 9 === a.nodeType ? a.documentElement : a,
+                    d = b && b.parentNode;
+                return a === d || !(!d || 1 !== d.nodeType || !(c.contains ? c.contains(d) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d)))
+            } : function(a, b) {
+                if (b)
+                    while (b = b.parentNode)
+                        if (b === a) return !0;
+                return !1
+            }, z = b ? function(a, b) {
+                if (a === b) return j = !0, 0;
+                var d = !a.compareDocumentPosition - !b.compareDocumentPosition;
+                return d ? d : (d = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1, 1 & d || !c.sortDetached && b.compareDocumentPosition(a) === d ? a === e || a.ownerDocument === t && r(t, a) ? -1 : b === e || b.ownerDocument === t && r(t, b) ? 1 : i ? I.call(i, a) - I.call(i, b) : 0 : 4 & d ? -1 : 1)
+            } : function(a, b) {
+                if (a === b) return j = !0, 0;
+                var c, d = 0,
+                    f = a.parentNode,
+                    g = b.parentNode,
+                    h = [a],
+                    k = [b];
+                if (!f || !g) return a === e ? -1 : b === e ? 1 : f ? -1 : g ? 1 : i ? I.call(i, a) - I.call(i, b) : 0;
+                if (f === g) return ib(a, b);
+                c = a;
+                while (c = c.parentNode) h.unshift(c);
+                c = b;
+                while (c = c.parentNode) k.unshift(c);
+                while (h[d] === k[d]) d++;
+                return d ? ib(h[d], k[d]) : h[d] === t ? -1 : k[d] === t ? 1 : 0
+            }, e) : l
+        }, db.matches = function(a, b) {
+            return db(a, null, null, b)
+        }, db.matchesSelector = function(a, b) {
+            if ((a.ownerDocument || a) !== l && k(a), b = b.replace(S, "='$1']"), !(!c.matchesSelector || !n || p && p.test(b) || o && o.test(b))) try {
+                var d = q.call(a, b);
+                if (d || c.disconnectedMatch || a.document && 11 !== a.document.nodeType) return d
+            } catch (e) {}
+            return db(b, l, null, [a]).length > 0
+        }, db.contains = function(a, b) {
+            return (a.ownerDocument || a) !== l && k(a), r(a, b)
+        }, db.attr = function(a, b) {
+            (a.ownerDocument || a) !== l && k(a);
+            var e = d.attrHandle[b.toLowerCase()],
+                f = e && C.call(d.attrHandle, b.toLowerCase()) ? e(a, b, !n) : void 0;
+            return void 0 !== f ? f : c.attributes || !n ? a.getAttribute(b) : (f = a.getAttributeNode(b)) && f.specified ? f.value : null
+        }, db.error = function(a) {
+            throw new Error("Syntax error, unrecognized expression: " + a)
+        }, db.uniqueSort = function(a) {
+            var b, d = [],
+                e = 0,
+                f = 0;
+            if (j = !c.detectDuplicates, i = !c.sortStable && a.slice(0), a.sort(z), j) {
+                while (b = a[f++]) b === a[f] && (e = d.push(f));
+                while (e--) a.splice(d[e], 1)
+            }
+            return i = null, a
+        }, e = db.getText = function(a) {
+            var b, c = "",
+                d = 0,
+                f = a.nodeType;
+            if (f) {
+                if (1 === f || 9 === f || 11 === f) {
+                    if ("string" == typeof a.textContent) return a.textContent;
+                    for (a = a.firstChild; a; a = a.nextSibling) c += e(a)
+                } else if (3 === f || 4 === f) return a.nodeValue
+            } else
+                while (b = a[d++]) c += e(b);
+            return c
+        }, d = db.selectors = {
+            cacheLength: 50,
+            createPseudo: fb,
+            match: V,
+            attrHandle: {},
+            find: {},
+            relative: {
+                ">": {
+                    dir: "parentNode",
+                    first: !0
+                },
+                " ": {
+                    dir: "parentNode"
+                },
+                "+": {
+                    dir: "previousSibling",
+                    first: !0
+                },
+                "~": {
+                    dir: "previousSibling"
+                }
+            },
+            preFilter: {
+                ATTR: function(a) {
+                    return a[1] = a[1].replace(ab, bb), a[3] = (a[4] || a[5] || "").replace(ab, bb), "~=" === a[2] && (a[3] = " " + a[3] + " "), a.slice(0, 4)
+                },
+                CHILD: function(a) {
+                    return a[1] = a[1].toLowerCase(), "nth" === a[1].slice(0, 3) ? (a[3] || db.error(a[0]), a[4] = +(a[4] ? a[5] + (a[6] || 1) : 2 * ("even" === a[3] || "odd" === a[3])), a[5] = +(a[7] + a[8] || "odd" === a[3])) : a[3] && db.error(a[0]), a
+                },
+                PSEUDO: function(a) {
+                    var b, c = !a[5] && a[2];
+                    return V.CHILD.test(a[0]) ? null : (a[3] && void 0 !== a[4] ? a[2] = a[4] : c && T.test(c) && (b = ob(c, !0)) && (b = c.indexOf(")", c.length - b) - c.length) && (a[0] = a[0].slice(0, b), a[2] = c.slice(0, b)), a.slice(0, 3))
+                }
+            },
+            filter: {
+                TAG: function(a) {
+                    var b = a.replace(ab, bb).toLowerCase();
+                    return "*" === a ? function() {
+                        return !0
+                    } : function(a) {
+                        return a.nodeName && a.nodeName.toLowerCase() === b
+                    }
+                },
+                CLASS: function(a) {
+                    var b = w[a + " "];
+                    return b || (b = new RegExp("(^|" + K + ")" + a + "(" + K + "|$)")) && w(a, function(a) {
+                        return b.test("string" == typeof a.className && a.className || typeof a.getAttribute !== A && a.getAttribute("class") || "")
+                    })
+                },
+                ATTR: function(a, b, c) {
+                    return function(d) {
+                        var e = db.attr(d, a);
+                        return null == e ? "!=" === b : b ? (e += "", "=" === b ? e === c : "!=" === b ? e !== c : "^=" === b ? c && 0 === e.indexOf(c) : "*=" === b ? c && e.indexOf(c) > -1 : "$=" === b ? c && e.slice(-c.length) === c : "~=" === b ? (" " + e + " ").indexOf(c) > -1 : "|=" === b ? e === c || e.slice(0, c.length + 1) === c + "-" : !1) : !0
+                    }
+                },
+                CHILD: function(a, b, c, d, e) {
+                    var f = "nth" !== a.slice(0, 3),
+                        g = "last" !== a.slice(-4),
+                        h = "of-type" === b;
+                    return 1 === d && 0 === e ? function(a) {
+                        return !!a.parentNode
+                    } : function(b, c, i) {
+                        var j, k, l, m, n, o, p = f !== g ? "nextSibling" : "previousSibling",
+                            q = b.parentNode,
+                            r = h && b.nodeName.toLowerCase(),
+                            t = !i && !h;
+                        if (q) {
+                            if (f) {
+                                while (p) {
+                                    l = b;
+                                    while (l = l[p])
+                                        if (h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) return !1;
+                                    o = p = "only" === a && !o && "nextSibling"
+                                }
+                                return !0
+                            }
+                            if (o = [g ? q.firstChild : q.lastChild], g && t) {
+                                k = q[s] || (q[s] = {}), j = k[a] || [], n = j[0] === u && j[1], m = j[0] === u && j[2], l = n && q.childNodes[n];
+                                while (l = ++n && l && l[p] || (m = n = 0) || o.pop())
+                                    if (1 === l.nodeType && ++m && l === b) {
+                                        k[a] = [u, n, m];
+                                        break
+                                    }
+                            } else if (t && (j = (b[s] || (b[s] = {}))[a]) && j[0] === u) m = j[1];
+                            else
+                                while (l = ++n && l && l[p] || (m = n = 0) || o.pop())
+                                    if ((h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) && ++m && (t && ((l[s] || (l[s] = {}))[a] = [u, m]), l === b)) break;
+                            return m -= e, m === d || m % d === 0 && m / d >= 0
+                        }
+                    }
+                },
+                PSEUDO: function(a, b) {
+                    var c, e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || db.error("unsupported pseudo: " + a);
+                    return e[s] ? e(b) : e.length > 1 ? (c = [a, a, "", b], d.setFilters.hasOwnProperty(a.toLowerCase()) ? fb(function(a, c) {
+                        var d, f = e(a, b),
+                            g = f.length;
+                        while (g--) d = I.call(a, f[g]), a[d] = !(c[d] = f[g])
+                    }) : function(a) {
+                        return e(a, 0, c)
+                    }) : e
+                }
+            },
+            pseudos: {
+                not: fb(function(a) {
+                    var b = [],
+                        c = [],
+                        d = g(a.replace(P, "$1"));
+                    return d[s] ? fb(function(a, b, c, e) {
+                        var f, g = d(a, null, e, []),
+                            h = a.length;
+                        while (h--)(f = g[h]) && (a[h] = !(b[h] = f))
+                    }) : function(a, e, f) {
+                        return b[0] = a, d(b, null, f, c), !c.pop()
+                    }
+                }),
+                has: fb(function(a) {
+                    return function(b) {
+                        return db(a, b).length > 0
+                    }
+                }),
+                contains: fb(function(a) {
+                    return function(b) {
+                        return (b.textContent || b.innerText || e(b)).indexOf(a) > -1
+                    }
+                }),
+                lang: fb(function(a) {
+                    return U.test(a || "") || db.error("unsupported lang: " + a), a = a.replace(ab, bb).toLowerCase(),
+                        function(b) {
+                            var c;
+                            do
+                                if (c = n ? b.lang : b.getAttribute("xml:lang") || b.getAttribute("lang")) return c = c.toLowerCase(), c === a || 0 === c.indexOf(a + "-");
+                            while ((b = b.parentNode) && 1 === b.nodeType);
+                            return !1
+                        }
+                }),
+                target: function(b) {
+                    var c = a.location && a.location.hash;
+                    return c && c.slice(1) === b.id
+                },
+                root: function(a) {
+                    return a === m
+                },
+                focus: function(a) {
+                    return a === l.activeElement && (!l.hasFocus || l.hasFocus()) && !!(a.type || a.href || ~a.tabIndex)
+                },
+                enabled: function(a) {
+                    return a.disabled === !1
+                },
+                disabled: function(a) {
+                    return a.disabled === !0
+                },
+                checked: function(a) {
+                    var b = a.nodeName.toLowerCase();
+                    return "input" === b && !!a.checked || "option" === b && !!a.selected
+                },
+                selected: function(a) {
+                    return a.parentNode && a.parentNode.selectedIndex, a.selected === !0
+                },
+                empty: function(a) {
+                    for (a = a.firstChild; a; a = a.nextSibling)
+                        if (a.nodeType < 6) return !1;
+                    return !0
+                },
+                parent: function(a) {
+                    return !d.pseudos.empty(a)
+                },
+                header: function(a) {
+                    return X.test(a.nodeName)
+                },
+                input: function(a) {
+                    return W.test(a.nodeName)
+                },
+                button: function(a) {
+                    var b = a.nodeName.toLowerCase();
+                    return "input" === b && "button" === a.type || "button" === b
+                },
+                text: function(a) {
+                    var b;
+                    return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase())
+                },
+                first: lb(function() {
+                    return [0]
+                }),
+                last: lb(function(a, b) {
+                    return [b - 1]
+                }),
+                eq: lb(function(a, b, c) {
+                    return [0 > c ? c + b : c]
+                }),
+                even: lb(function(a, b) {
+                    for (var c = 0; b > c; c += 2) a.push(c);
+                    return a
+                }),
+                odd: lb(function(a, b) {
+                    for (var c = 1; b > c; c += 2) a.push(c);
+                    return a
+                }),
+                lt: lb(function(a, b, c) {
+                    for (var d = 0 > c ? c + b : c; --d >= 0;) a.push(d);
+                    return a
+                }),
+                gt: lb(function(a, b, c) {
+                    for (var d = 0 > c ? c + b : c; ++d < b;) a.push(d);
+                    return a
+                })
+            }
+        }, d.pseudos.nth = d.pseudos.eq;
+        for (b in {
+                radio: !0,
+                checkbox: !0,
+                file: !0,
+                password: !0,
+                image: !0
+            }) d.pseudos[b] = jb(b);
+        for (b in {
+                submit: !0,
+                reset: !0
+            }) d.pseudos[b] = kb(b);
+
+        function nb() {}
+        nb.prototype = d.filters = d.pseudos, d.setFilters = new nb;
+
+        function ob(a, b) {
+            var c, e, f, g, h, i, j, k = x[a + " "];
+            if (k) return b ? 0 : k.slice(0);
+            h = a, i = [], j = d.preFilter;
+            while (h) {
+                (!c || (e = Q.exec(h))) && (e && (h = h.slice(e[0].length) || h), i.push(f = [])), c = !1, (e = R.exec(h)) && (c = e.shift(), f.push({
+                    value: c,
+                    type: e[0].replace(P, " ")
+                }), h = h.slice(c.length));
+                for (g in d.filter) !(e = V[g].exec(h)) || j[g] && !(e = j[g](e)) || (c = e.shift(), f.push({
+                    value: c,
+                    type: g,
+                    matches: e
+                }), h = h.slice(c.length));
+                if (!c) break
+            }
+            return b ? h.length : h ? db.error(a) : x(a, i).slice(0)
+        }
+
+        function pb(a) {
+            for (var b = 0, c = a.length, d = ""; c > b; b++) d += a[b].value;
+            return d
+        }
+
+        function qb(a, b, c) {
+            var d = b.dir,
+                e = c && "parentNode" === d,
+                f = v++;
+            return b.first ? function(b, c, f) {
+                while (b = b[d])
+                    if (1 === b.nodeType || e) return a(b, c, f)
+            } : function(b, c, g) {
+                var h, i, j = [u, f];
+                if (g) {
+                    while (b = b[d])
+                        if ((1 === b.nodeType || e) && a(b, c, g)) return !0
+                } else
+                    while (b = b[d])
+                        if (1 === b.nodeType || e) {
+                            if (i = b[s] || (b[s] = {}), (h = i[d]) && h[0] === u && h[1] === f) return j[2] = h[2];
+                            if (i[d] = j, j[2] = a(b, c, g)) return !0
+                        }
+            }
+        }
+
+        function rb(a) {
+            return a.length > 1 ? function(b, c, d) {
+                var e = a.length;
+                while (e--)
+                    if (!a[e](b, c, d)) return !1;
+                return !0
+            } : a[0]
+        }
+
+        function sb(a, b, c, d, e) {
+            for (var f, g = [], h = 0, i = a.length, j = null != b; i > h; h++)(f = a[h]) && (!c || c(f, d, e)) && (g.push(f), j && b.push(h));
+            return g
+        }
+
+        function tb(a, b, c, d, e, f) {
+            return d && !d[s] && (d = tb(d)), e && !e[s] && (e = tb(e, f)), fb(function(f, g, h, i) {
+                var j, k, l, m = [],
+                    n = [],
+                    o = g.length,
+                    p = f || wb(b || "*", h.nodeType ? [h] : h, []),
+                    q = !a || !f && b ? p : sb(p, m, a, h, i),
+                    r = c ? e || (f ? a : o || d) ? [] : g : q;
+                if (c && c(q, r, h, i), d) {
+                    j = sb(r, n), d(j, [], h, i), k = j.length;
+                    while (k--)(l = j[k]) && (r[n[k]] = !(q[n[k]] = l))
+                }
+                if (f) {
+                    if (e || a) {
+                        if (e) {
+                            j = [], k = r.length;
+                            while (k--)(l = r[k]) && j.push(q[k] = l);
+                            e(null, r = [], j, i)
+                        }
+                        k = r.length;
+                        while (k--)(l = r[k]) && (j = e ? I.call(f, l) : m[k]) > -1 && (f[j] = !(g[j] = l))
+                    }
+                } else r = sb(r === g ? r.splice(o, r.length) : r), e ? e(null, g, r, i) : G.apply(g, r)
+            })
+        }
+
+        function ub(a) {
+            for (var b, c, e, f = a.length, g = d.relative[a[0].type], i = g || d.relative[" "], j = g ? 1 : 0, k = qb(function(a) {
+                    return a === b
+                }, i, !0), l = qb(function(a) {
+                    return I.call(b, a) > -1
+                }, i, !0), m = [function(a, c, d) {
+                    return !g && (d || c !== h) || ((b = c).nodeType ? k(a, c, d) : l(a, c, d))
+                }]; f > j; j++)
+                if (c = d.relative[a[j].type]) m = [qb(rb(m), c)];
+                else {
+                    if (c = d.filter[a[j].type].apply(null, a[j].matches), c[s]) {
+                        for (e = ++j; f > e; e++)
+                            if (d.relative[a[e].type]) break;
+                        return tb(j > 1 && rb(m), j > 1 && pb(a.slice(0, j - 1).concat({
+                            value: " " === a[j - 2].type ? "*" : ""
+                        })).replace(P, "$1"), c, e > j && ub(a.slice(j, e)), f > e && ub(a = a.slice(e)), f > e && pb(a))
+                    }
+                    m.push(c)
+                }
+            return rb(m)
+        }
+
+        function vb(a, b) {
+            var c = b.length > 0,
+                e = a.length > 0,
+                f = function(f, g, i, j, k) {
+                    var m, n, o, p = 0,
+                        q = "0",
+                        r = f && [],
+                        s = [],
+                        t = h,
+                        v = f || e && d.find.TAG("*", k),
+                        w = u += null == t ? 1 : Math.random() || .1,
+                        x = v.length;
+                    for (k && (h = g !== l && g); q !== x && null != (m = v[q]); q++) {
+                        if (e && m) {
+                            n = 0;
+                            while (o = a[n++])
+                                if (o(m, g, i)) {
+                                    j.push(m);
+                                    break
+                                }
+                            k && (u = w)
+                        }
+                        c && ((m = !o && m) && p--, f && r.push(m))
+                    }
+                    if (p += q, c && q !== p) {
+                        n = 0;
+                        while (o = b[n++]) o(r, s, g, i);
+                        if (f) {
+                            if (p > 0)
+                                while (q--) r[q] || s[q] || (s[q] = E.call(j));
+                            s = sb(s)
+                        }
+                        G.apply(j, s), k && !f && s.length > 0 && p + b.length > 1 && db.uniqueSort(j)
+                    }
+                    return k && (u = w, h = t), r
+                };
+            return c ? fb(f) : f
+        }
+        g = db.compile = function(a, b) {
+            var c, d = [],
+                e = [],
+                f = y[a + " "];
+            if (!f) {
+                b || (b = ob(a)), c = b.length;
+                while (c--) f = ub(b[c]), f[s] ? d.push(f) : e.push(f);
+                f = y(a, vb(e, d))
+            }
+            return f
+        };
+
+        function wb(a, b, c) {
+            for (var d = 0, e = b.length; e > d; d++) db(a, b[d], c);
+            return c
+        }
+
+        function xb(a, b, e, f) {
+            var h, i, j, k, l, m = ob(a);
+            if (!f && 1 === m.length) {
+                if (i = m[0] = m[0].slice(0), i.length > 2 && "ID" === (j = i[0]).type && c.getById && 9 === b.nodeType && n && d.relative[i[1].type]) {
+                    if (b = (d.find.ID(j.matches[0].replace(ab, bb), b) || [])[0], !b) return e;
+                    a = a.slice(i.shift().value.length)
+                }
+                h = V.needsContext.test(a) ? 0 : i.length;
+                while (h--) {
+                    if (j = i[h], d.relative[k = j.type]) break;
+                    if ((l = d.find[k]) && (f = l(j.matches[0].replace(ab, bb), $.test(i[0].type) && mb(b.parentNode) || b))) {
+                        if (i.splice(h, 1), a = f.length && pb(i), !a) return G.apply(e, f), e;
+                        break
+                    }
+                }
+            }
+            return g(a, m)(f, b, !n, e, $.test(a) && mb(b.parentNode) || b), e
+        }
+        return c.sortStable = s.split("").sort(z).join("") === s, c.detectDuplicates = !!j, k(), c.sortDetached = gb(function(a) {
+            return 1 & a.compareDocumentPosition(l.createElement("div"))
+        }), gb(function(a) {
+            return a.innerHTML = "<a href='#'></a>", "#" === a.firstChild.getAttribute("href")
+        }) || hb("type|href|height|width", function(a, b, c) {
+            return c ? void 0 : a.getAttribute(b, "type" === b.toLowerCase() ? 1 : 2)
+        }), c.attributes && gb(function(a) {
+            return a.innerHTML = "<input/>", a.firstChild.setAttribute("value", ""), "" === a.firstChild.getAttribute("value")
+        }) || hb("value", function(a, b, c) {
+            return c || "input" !== a.nodeName.toLowerCase() ? void 0 : a.defaultValue
+        }), gb(function(a) {
+            return null == a.getAttribute("disabled")
+        }) || hb(J, function(a, b, c) {
+            var d;
+            return c ? void 0 : a[b] === !0 ? b.toLowerCase() : (d = a.getAttributeNode(b)) && d.specified ? d.value : null
+        }), db
+    }(a);
+    n.find = t, n.expr = t.selectors, n.expr[":"] = n.expr.pseudos, n.unique = t.uniqueSort, n.text = t.getText, n.isXMLDoc = t.isXML, n.contains = t.contains;
+    var u = n.expr.match.needsContext,
+        v = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
+        w = /^.[^:#\[\.,]*$/;
+
+    function x(a, b, c) {
+        if (n.isFunction(b)) return n.grep(a, function(a, d) {
+            return !!b.call(a, d, a) !== c
+        });
+        if (b.nodeType) return n.grep(a, function(a) {
+            return a === b !== c
+        });
+        if ("string" == typeof b) {
+            if (w.test(b)) return n.filter(b, a, c);
+            b = n.filter(b, a)
+        }
+        return n.grep(a, function(a) {
+            return n.inArray(a, b) >= 0 !== c
+        })
+    }
+    n.filter = function(a, b, c) {
+        var d = b[0];
+        return c && (a = ":not(" + a + ")"), 1 === b.length && 1 === d.nodeType ? n.find.matchesSelector(d, a) ? [d] : [] : n.find.matches(a, n.grep(b, function(a) {
+            return 1 === a.nodeType
+        }))
+    }, n.fn.extend({
+        find: function(a) {
+            var b, c = [],
+                d = this,
+                e = d.length;
+            if ("string" != typeof a) return this.pushStack(n(a).filter(function() {
+                for (b = 0; e > b; b++)
+                    if (n.contains(d[b], this)) return !0
+            }));
+            for (b = 0; e > b; b++) n.find(a, d[b], c);
+            return c = this.pushStack(e > 1 ? n.unique(c) : c), c.selector = this.selector ? this.selector + " " + a : a, c
+        },
+        filter: function(a) {
+            return this.pushStack(x(this, a || [], !1))
+        },
+        not: function(a) {
+            return this.pushStack(x(this, a || [], !0))
+        },
+        is: function(a) {
+            return !!x(this, "string" == typeof a && u.test(a) ? n(a) : a || [], !1).length
+        }
+    });
+    var y, z = a.document,
+        A = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
+        B = n.fn.init = function(a, b) {
+            var c, d;
+            if (!a) return this;
+            if ("string" == typeof a) {
+                if (c = "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && a.length >= 3 ? [null, a, null] : A.exec(a), !c || !c[1] && b) return !b || b.jquery ? (b || y).find(a) : this.constructor(b).find(a);
+                if (c[1]) {
+                    if (b = b instanceof n ? b[0] : b, n.merge(this, n.parseHTML(c[1], b && b.nodeType ? b.ownerDocument || b : z, !0)), v.test(c[1]) && n.isPlainObject(b))
+                        for (c in b) n.isFunction(this[c]) ? this[c](b[c]) : this.attr(c, b[c]);
+                    return this
+                }
+                if (d = z.getElementById(c[2]), d && d.parentNode) {
+                    if (d.id !== c[2]) return y.find(a);
+                    this.length = 1, this[0] = d
+                }
+                return this.context = z, this.selector = a, this
+            }
+            return a.nodeType ? (this.context = this[0] = a, this.length = 1, this) : n.isFunction(a) ? "undefined" != typeof y.ready ? y.ready(a) : a(n) : (void 0 !== a.selector && (this.selector = a.selector, this.context = a.context), n.makeArray(a, this))
+        };
+    B.prototype = n.fn, y = n(z);
+    var C = /^(?:parents|prev(?:Until|All))/,
+        D = {
+            children: !0,
+            contents: !0,
+            next: !0,
+            prev: !0
+        };
+    n.extend({
+        dir: function(a, b, c) {
+            var d = [],
+                e = a[b];
+            while (e && 9 !== e.nodeType && (void 0 === c || 1 !== e.nodeType || !n(e).is(c))) 1 === e.nodeType && d.push(e), e = e[b];
+            return d
+        },
+        sibling: function(a, b) {
+            for (var c = []; a; a = a.nextSibling) 1 === a.nodeType && a !== b && c.push(a);
+            return c
+        }
+    }), n.fn.extend({
+        has: function(a) {
+            var b, c = n(a, this),
+                d = c.length;
+            return this.filter(function() {
+                for (b = 0; d > b; b++)
+                    if (n.contains(this, c[b])) return !0
+            })
+        },
+        closest: function(a, b) {
+            for (var c, d = 0, e = this.length, f = [], g = u.test(a) || "string" != typeof a ? n(a, b || this.context) : 0; e > d; d++)
+                for (c = this[d]; c && c !== b; c = c.parentNode)
+                    if (c.nodeType < 11 && (g ? g.index(c) > -1 : 1 === c.nodeType && n.find.matchesSelector(c, a))) {
+                        f.push(c);
+                        break
+                    }
+            return this.pushStack(f.length > 1 ? n.unique(f) : f)
+        },
+        index: function(a) {
+            return a ? "string" == typeof a ? n.inArray(this[0], n(a)) : n.inArray(a.jquery ? a[0] : a, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
+        },
+        add: function(a, b) {
+            return this.pushStack(n.unique(n.merge(this.get(), n(a, b))))
+        },
+        addBack: function(a) {
+            return this.add(null == a ? this.prevObject : this.prevObject.filter(a))
+        }
+    });
+
+    function E(a, b) {
+        do a = a[b]; while (a && 1 !== a.nodeType);
+        return a
+    }
+    n.each({
+        parent: function(a) {
+            var b = a.parentNode;
+            return b && 11 !== b.nodeType ? b : null
+        },
+        parents: function(a) {
+            return n.dir(a, "parentNode")
+        },
+        parentsUntil: function(a, b, c) {
+            return n.dir(a, "parentNode", c)
+        },
+        next: function(a) {
+            return E(a, "nextSibling")
+        },
+        prev: function(a) {
+            return E(a, "previousSibling")
+        },
+        nextAll: function(a) {
+            return n.dir(a, "nextSibling")
+        },
+        prevAll: function(a) {
+            return n.dir(a, "previousSibling")
+        },
+        nextUntil: function(a, b, c) {
+            return n.dir(a, "nextSibling", c)
+        },
+        prevUntil: function(a, b, c) {
+            return n.dir(a, "previousSibling", c)
+        },
+        siblings: function(a) {
+            return n.sibling((a.parentNode || {}).firstChild, a)
+        },
+        children: function(a) {
+            return n.sibling(a.firstChild)
+        },
+        contents: function(a) {
+            return n.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : n.merge([], a.childNodes)
+        }
+    }, function(a, b) {
+        n.fn[a] = function(c, d) {
+            var e = n.map(this, b, c);
+            return "Until" !== a.slice(-5) && (d = c), d && "string" == typeof d && (e = n.filter(d, e)), this.length > 1 && (D[a] || (e = n.unique(e)), C.test(a) && (e = e.reverse())), this.pushStack(e)
+        }
+    });
+    var F = /\S+/g,
+        G = {};
+
+    function H(a) {
+        var b = G[a] = {};
+        return n.each(a.match(F) || [], function(a, c) {
+            b[c] = !0
+        }), b
+    }
+    n.Callbacks = function(a) {
+        a = "string" == typeof a ? G[a] || H(a) : n.extend({}, a);
+        var b, c, d, e, f, g, h = [],
+            i = !a.once && [],
+            j = function(l) {
+                for (c = a.memory && l, d = !0, f = g || 0, g = 0, e = h.length, b = !0; h && e > f; f++)
+                    if (h[f].apply(l[0], l[1]) === !1 && a.stopOnFalse) {
+                        c = !1;
+                        break
+                    }
+                b = !1, h && (i ? i.length && j(i.shift()) : c ? h = [] : k.disable())
+            },
+            k = {
+                add: function() {
+                    if (h) {
+                        var d = h.length;
+                        ! function f(b) {
+                            n.each(b, function(b, c) {
+                                var d = n.type(c);
+                                "function" === d ? a.unique && k.has(c) || h.push(c) : c && c.length && "string" !== d && f(c)
+                            })
+                        }(arguments), b ? e = h.length : c && (g = d, j(c))
+                    }
+                    return this
+                },
+                remove: function() {
+                    return h && n.each(arguments, function(a, c) {
+                        var d;
+                        while ((d = n.inArray(c, h, d)) > -1) h.splice(d, 1), b && (e >= d && e--, f >= d && f--)
+                    }), this
+                },
+                has: function(a) {
+                    return a ? n.inArray(a, h) > -1 : !(!h || !h.length)
+                },
+                empty: function() {
+                    return h = [], e = 0, this
+                },
+                disable: function() {
+                    return h = i = c = void 0, this
+                },
+                disabled: function() {
+                    return !h
+                },
+                lock: function() {
+                    return i = void 0, c || k.disable(), this
+                },
+                locked: function() {
+                    return !i
+                },
+                fireWith: function(a, c) {
+                    return !h || d && !i || (c = c || [], c = [a, c.slice ? c.slice() : c], b ? i.push(c) : j(c)), this
+                },
+                fire: function() {
+                    return k.fireWith(this, arguments), this
+                },
+                fired: function() {
+                    return !!d
+                }
+            };
+        return k
+    }, n.extend({
+        Deferred: function(a) {
+            var b = [
+                    ["resolve", "done", n.Callbacks("once memory"), "resolved"],
+                    ["reject", "fail", n.Callbacks("once memory"), "rejected"],
+                    ["notify", "progress", n.Callbacks("memory")]
+                ],
+                c = "pending",
+                d = {
+                    state: function() {
+                        return c
+                    },
+                    always: function() {
+                        return e.done(arguments).fail(arguments), this
+                    },
+                    then: function() {
+                        var a = arguments;
+                        return n.Deferred(function(c) {
+                            n.each(b, function(b, f) {
+                                var g = n.isFunction(a[b]) && a[b];
+                                e[f[1]](function() {
+                                    var a = g && g.apply(this, arguments);
+                                    a && n.isFunction(a.promise) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[f[0] + "With"](this === d ? c.promise() : this, g ? [a] : arguments)
+                                })
+                            }), a = null
+                        }).promise()
+                    },
+                    promise: function(a) {
+                        return null != a ? n.extend(a, d) : d
+                    }
+                },
+                e = {};
+            return d.pipe = d.then, n.each(b, function(a, f) {
+                var g = f[2],
+                    h = f[3];
+                d[f[1]] = g.add, h && g.add(function() {
+                    c = h
+                }, b[1 ^ a][2].disable, b[2][2].lock), e[f[0]] = function() {
+                    return e[f[0] + "With"](this === e ? d : this, arguments), this
+                }, e[f[0] + "With"] = g.fireWith
+            }), d.promise(e), a && a.call(e, e), e
+        },
+        when: function(a) {
+            var b = 0,
+                c = d.call(arguments),
+                e = c.length,
+                f = 1 !== e || a && n.isFunction(a.promise) ? e : 0,
+                g = 1 === f ? a : n.Deferred(),
+                h = function(a, b, c) {
+                    return function(e) {
+                        b[a] = this, c[a] = arguments.length > 1 ? d.call(arguments) : e, c === i ? g.notifyWith(b, c) : --f || g.resolveWith(b, c)
+                    }
+                },
+                i, j, k;
+            if (e > 1)
+                for (i = new Array(e), j = new Array(e), k = new Array(e); e > b; b++) c[b] && n.isFunction(c[b].promise) ? c[b].promise().done(h(b, k, c)).fail(g.reject).progress(h(b, j, i)) : --f;
+            return f || g.resolveWith(k, c), g.promise()
+        }
+    });
+    var I;
+    n.fn.ready = function(a) {
+        return n.ready.promise().done(a), this
+    }, n.extend({
+        isReady: !1,
+        readyWait: 1,
+        holdReady: function(a) {
+            a ? n.readyWait++ : n.ready(!0)
+        },
+        ready: function(a) {
+            if (a === !0 ? !--n.readyWait : !n.isReady) {
+                if (!z.body) return setTimeout(n.ready);
+                n.isReady = !0, a !== !0 && --n.readyWait > 0 || (I.resolveWith(z, [n]), n.fn.trigger && n(z).trigger("ready").off("ready"))
+            }
+        }
+    });
+
+    function J() {
+        z.addEventListener ? (z.removeEventListener("DOMContentLoaded", K, !1), a.removeEventListener("load", K, !1)) : (z.detachEvent("onreadystatechange", K), a.detachEvent("onload", K))
+    }
+
+    function K() {
+        (z.addEventListener || "load" === event.type || "complete" === z.readyState) && (J(), n.ready())
+    }
+    n.ready.promise = function(b) {
+        if (!I)
+            if (I = n.Deferred(), "complete" === z.readyState) setTimeout(n.ready);
+            else if (z.addEventListener) z.addEventListener("DOMContentLoaded", K, !1), a.addEventListener("load", K, !1);
+        else {
+            z.attachEvent("onreadystatechange", K), a.attachEvent("onload", K);
+            var c = !1;
+            try {
+                c = null == a.frameElement && z.documentElement
+            } catch (d) {}
+            c && c.doScroll && ! function e() {
+                if (!n.isReady) {
+                    try {
+                        c.doScroll("left")
+                    } catch (a) {
+                        return setTimeout(e, 50)
+                    }
+                    J(), n.ready()
+                }
+            }()
+        }
+        return I.promise(b)
+    };
+    var L = "undefined",
+        M;
+    for (M in n(l)) break;
+    l.ownLast = "0" !== M, l.inlineBlockNeedsLayout = !1, n(function() {
+            var a, b, c = z.getElementsByTagName("body")[0];
+            c && (a = z.createElement("div"), a.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px", b = z.createElement("div"), c.appendChild(a).appendChild(b), typeof b.style.zoom !== L && (b.style.cssText = "border:0;margin:0;width:1px;padding:1px;display:inline;zoom:1", (l.inlineBlockNeedsLayout = 3 === b.offsetWidth) && (c.style.zoom = 1)), c.removeChild(a), a = b = null)
+        }),
+        function() {
+            var a = z.createElement("div");
+            if (null == l.deleteExpando) {
+                l.deleteExpando = !0;
+                try {
+                    delete a.test
+                } catch (b) {
+                    l.deleteExpando = !1
+                }
+            }
+            a = null
+        }(), n.acceptData = function(a) {
+            var b = n.noData[(a.nodeName + " ").toLowerCase()],
+                c = +a.nodeType || 1;
+            return 1 !== c && 9 !== c ? !1 : !b || b !== !0 && a.getAttribute("classid") === b
+        };
+    var N = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
+        O = /([A-Z])/g;
+
+    function P(a, b, c) {
+        if (void 0 === c && 1 === a.nodeType) {
+            var d = "data-" + b.replace(O, "-$1").toLowerCase();
+            if (c = a.getAttribute(d), "string" == typeof c) {
+                try {
+                    c = "true" === c ? !0 : "false" === c ? !1 : "null" === c ? null : +c + "" === c ? +c : N.test(c) ? n.parseJSON(c) : c
+                } catch (e) {}
+                n.data(a, b, c)
+            } else c = void 0
+        }
+        return c
+    }
+
+    function Q(a) {
+        var b;
+        for (b in a)
+            if (("data" !== b || !n.isEmptyObject(a[b])) && "toJSON" !== b) return !1;
+        return !0
+    }
+
+    function R(a, b, d, e) {
+        if (n.acceptData(a)) {
+            var f, g, h = n.expando,
+                i = a.nodeType,
+                j = i ? n.cache : a,
+                k = i ? a[h] : a[h] && h;
+            if (k && j[k] && (e || j[k].data) || void 0 !== d || "string" != typeof b) return k || (k = i ? a[h] = c.pop() || n.guid++ : h), j[k] || (j[k] = i ? {} : {
+                toJSON: n.noop
+            }), ("object" == typeof b || "function" == typeof b) && (e ? j[k] = n.extend(j[k], b) : j[k].data = n.extend(j[k].data, b)), g = j[k], e || (g.data || (g.data = {}), g = g.data), void 0 !== d && (g[n.camelCase(b)] = d), "string" == typeof b ? (f = g[b], null == f && (f = g[n.camelCase(b)])) : f = g, f
+        }
+    }
+
+    function S(a, b, c) {
+        if (n.acceptData(a)) {
+            var d, e, f = a.nodeType,
+                g = f ? n.cache : a,
+                h = f ? a[n.expando] : n.expando;
+            if (g[h]) {
+                if (b && (d = c ? g[h] : g[h].data)) {
+                    n.isArray(b) ? b = b.concat(n.map(b, n.camelCase)) : b in d ? b = [b] : (b = n.camelCase(b), b = b in d ? [b] : b.split(" ")), e = b.length;
+                    while (e--) delete d[b[e]];
+                    if (c ? !Q(d) : !n.isEmptyObject(d)) return
+                }(c || (delete g[h].data, Q(g[h]))) && (f ? n.cleanData([a], !0) : l.deleteExpando || g != g.window ? delete g[h] : g[h] = null)
+            }
+        }
+    }
+    n.extend({
+        cache: {},
+        noData: {
+            "applet ": !0,
+            "embed ": !0,
+            "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
+        },
+        hasData: function(a) {
+            return a = a.nodeType ? n.cache[a[n.expando]] : a[n.expando], !!a && !Q(a)
+        },
+        data: function(a, b, c) {
+            return R(a, b, c)
+        },
+        removeData: function(a, b) {
+            return S(a, b)
+        },
+        _data: function(a, b, c) {
+            return R(a, b, c, !0)
+        },
+        _removeData: function(a, b) {
+            return S(a, b, !0)
+        }
+    }), n.fn.extend({
+        data: function(a, b) {
+            var c, d, e, f = this[0],
+                g = f && f.attributes;
+            if (void 0 === a) {
+                if (this.length && (e = n.data(f), 1 === f.nodeType && !n._data(f, "parsedAttrs"))) {
+                    c = g.length;
+                    while (c--) d = g[c].name, 0 === d.indexOf("data-") && (d = n.camelCase(d.slice(5)), P(f, d, e[d]));
+                    n._data(f, "parsedAttrs", !0)
+                }
+                return e
+            }
+            return "object" == typeof a ? this.each(function() {
+                n.data(this, a)
+            }) : arguments.length > 1 ? this.each(function() {
+                n.data(this, a, b)
+            }) : f ? P(f, a, n.data(f, a)) : void 0
+        },
+        removeData: function(a) {
+            return this.each(function() {
+                n.removeData(this, a)
+            })
+        }
+    }), n.extend({
+        queue: function(a, b, c) {
+            var d;
+            return a ? (b = (b || "fx") + "queue", d = n._data(a, b), c && (!d || n.isArray(c) ? d = n._data(a, b, n.makeArray(c)) : d.push(c)), d || []) : void 0
+        },
+        dequeue: function(a, b) {
+            b = b || "fx";
+            var c = n.queue(a, b),
+                d = c.length,
+                e = c.shift(),
+                f = n._queueHooks(a, b),
+                g = function() {
+                    n.dequeue(a, b)
+                };
+            "inprogress" === e && (e = c.shift(), d--), e && ("fx" === b && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)), !d && f && f.empty.fire()
+        },
+        _queueHooks: function(a, b) {
+            var c = b + "queueHooks";
+            return n._data(a, c) || n._data(a, c, {
+                empty: n.Callbacks("once memory").add(function() {
+                    n._removeData(a, b + "queue"), n._removeData(a, c)
+                })
+            })
+        }
+    }), n.fn.extend({
+        queue: function(a, b) {
+            var c = 2;
+            return "string" != typeof a && (b = a, a = "fx", c--), arguments.length < c ? n.queue(this[0], a) : void 0 === b ? this : this.each(function() {
+                var c = n.queue(this, a, b);
+                n._queueHooks(this, a), "fx" === a && "inprogress" !== c[0] && n.dequeue(this, a)
+            })
+        },
+        dequeue: function(a) {
+            return this.each(function() {
+                n.dequeue(this, a)
+            })
+        },
+        clearQueue: function(a) {
+            return this.queue(a || "fx", [])
+        },
+        promise: function(a, b) {
+            var c, d = 1,
+                e = n.Deferred(),
+                f = this,
+                g = this.length,
+                h = function() {
+                    --d || e.resolveWith(f, [f])
+                };
+            "string" != typeof a && (b = a, a = void 0), a = a || "fx";
+            while (g--) c = n._data(f[g], a + "queueHooks"), c && c.empty && (d++, c.empty.add(h));
+            return h(), e.promise(b)
+        }
+    });
+    var T = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
+        U = ["Top", "Right", "Bottom", "Left"],
+        V = function(a, b) {
+            return a = b || a, "none" === n.css(a, "display") || !n.contains(a.ownerDocument, a)
+        },
+        W = n.access = function(a, b, c, d, e, f, g) {
+            var h = 0,
+                i = a.length,
+                j = null == c;
+            if ("object" === n.type(c)) {
+                e = !0;
+                for (h in c) n.access(a, b, h, c[h], !0, f, g)
+            } else if (void 0 !== d && (e = !0, n.isFunction(d) || (g = !0), j && (g ? (b.call(a, d), b = null) : (j = b, b = function(a, b, c) {
+                    return j.call(n(a), c)
+                })), b))
+                for (; i > h; h++) b(a[h], c, g ? d : d.call(a[h], h, b(a[h], c)));
+            return e ? a : j ? b.call(a) : i ? b(a[0], c) : f
+        },
+        X = /^(?:checkbox|radio)$/i;
+    ! function() {
+        var a = z.createDocumentFragment(),
+            b = z.createElement("div"),
+            c = z.createElement("input");
+        if (b.setAttribute("className", "t"), b.innerHTML = "  <link/><table></table><a href='/a'>a</a>", l.leadingWhitespace = 3 === b.firstChild.nodeType, l.tbody = !b.getElementsByTagName("tbody").length, l.htmlSerialize = !!b.getElementsByTagName("link").length, l.html5Clone = "<:nav></:nav>" !== z.createElement("nav").cloneNode(!0).outerHTML, c.type = "checkbox", c.checked = !0, a.appendChild(c), l.appendChecked = c.checked, b.innerHTML = "<textarea>x</textarea>", l.noCloneChecked = !!b.cloneNode(!0).lastChild.defaultValue, a.appendChild(b), b.innerHTML = "<input type='radio' checked='checked' name='t'/>", l.checkClone = b.cloneNode(!0).cloneNode(!0).lastChild.checked, l.noCloneEvent = !0, b.attachEvent && (b.attachEvent("onclick", function() {
+                l.noCloneEvent = !1
+            }), b.cloneNode(!0).click()), null == l.deleteExpando) {
+            l.deleteExpando = !0;
+            try {
+                delete b.test
+            } catch (d) {
+                l.deleteExpando = !1
+            }
+        }
+        a = b = c = null
+    }(),
+    function() {
+        var b, c, d = z.createElement("div");
+        for (b in {
+                submit: !0,
+                change: !0,
+                focusin: !0
+            }) c = "on" + b, (l[b + "Bubbles"] = c in a) || (d.setAttribute(c, "t"), l[b + "Bubbles"] = d.attributes[c].expando === !1);
+        d = null
+    }();
+    var Y = /^(?:input|select|textarea)$/i,
+        Z = /^key/,
+        $ = /^(?:mouse|contextmenu)|click/,
+        _ = /^(?:focusinfocus|focusoutblur)$/,
+        ab = /^([^.]*)(?:\.(.+)|)$/;
+
+    function bb() {
+        return !0
+    }
+
+    function cb() {
+        return !1
+    }
+
+    function db() {
+        try {
+            return z.activeElement
+        } catch (a) {}
+    }
+    n.event = {
+        global: {},
+        add: function(a, b, c, d, e) {
+            var f, g, h, i, j, k, l, m, o, p, q, r = n._data(a);
+            if (r) {
+                c.handler && (i = c, c = i.handler, e = i.selector), c.guid || (c.guid = n.guid++), (g = r.events) || (g = r.events = {}), (k = r.handle) || (k = r.handle = function(a) {
+                    return typeof n === L || a && n.event.triggered === a.type ? void 0 : n.event.dispatch.apply(k.elem, arguments)
+                }, k.elem = a), b = (b || "").match(F) || [""], h = b.length;
+                while (h--) f = ab.exec(b[h]) || [], o = q = f[1], p = (f[2] || "").split(".").sort(), o && (j = n.event.special[o] || {}, o = (e ? j.delegateType : j.bindType) || o, j = n.event.special[o] || {}, l = n.extend({
+                    type: o,
+                    origType: q,
+                    data: d,
+                    handler: c,
+                    guid: c.guid,
+                    selector: e,
+                    needsContext: e && n.expr.match.needsContext.test(e),
+                    namespace: p.join(".")
+                }, i), (m = g[o]) || (m = g[o] = [], m.delegateCount = 0, j.setup && j.setup.call(a, d, p, k) !== !1 || (a.addEventListener ? a.addEventListener(o, k, !1) : a.attachEvent && a.attachEvent("on" + o, k))), j.add && (j.add.call(a, l), l.handler.guid || (l.handler.guid = c.guid)), e ? m.splice(m.delegateCount++, 0, l) : m.push(l), n.event.global[o] = !0);
+                a = null
+            }
+        },
+        remove: function(a, b, c, d, e) {
+            var f, g, h, i, j, k, l, m, o, p, q, r = n.hasData(a) && n._data(a);
+            if (r && (k = r.events)) {
+                b = (b || "").match(F) || [""], j = b.length;
+                while (j--)
+                    if (h = ab.exec(b[j]) || [], o = q = h[1], p = (h[2] || "").split(".").sort(), o) {
+                        l = n.event.special[o] || {}, o = (d ? l.delegateType : l.bindType) || o, m = k[o] || [], h = h[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), i = f = m.length;
+                        while (f--) g = m[f], !e && q !== g.origType || c && c.guid !== g.guid || h && !h.test(g.namespace) || d && d !== g.selector && ("**" !== d || !g.selector) || (m.splice(f, 1), g.selector && m.delegateCount--, l.remove && l.remove.call(a, g));
+                        i && !m.length && (l.teardown && l.teardown.call(a, p, r.handle) !== !1 || n.removeEvent(a, o, r.handle), delete k[o])
+                    } else
+                        for (o in k) n.event.remove(a, o + b[j], c, d, !0);
+                n.isEmptyObject(k) && (delete r.handle, n._removeData(a, "events"))
+            }
+        },
+        trigger: function(b, c, d, e) {
+            var f, g, h, i, k, l, m, o = [d || z],
+                p = j.call(b, "type") ? b.type : b,
+                q = j.call(b, "namespace") ? b.namespace.split(".") : [];
+            if (h = l = d = d || z, 3 !== d.nodeType && 8 !== d.nodeType && !_.test(p + n.event.triggered) && (p.indexOf(".") >= 0 && (q = p.split("."), p = q.shift(), q.sort()), g = p.indexOf(":") < 0 && "on" + p, b = b[n.expando] ? b : new n.Event(p, "object" == typeof b && b), b.isTrigger = e ? 2 : 3, b.namespace = q.join("."), b.namespace_re = b.namespace ? new RegExp("(^|\\.)" + q.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, b.result = void 0, b.target || (b.target = d), c = null == c ? [b] : n.makeArray(c, [b]), k = n.event.special[p] || {}, e || !k.trigger || k.trigger.apply(d, c) !== !1)) {
+                if (!e && !k.noBubble && !n.isWindow(d)) {
+                    for (i = k.delegateType || p, _.test(i + p) || (h = h.parentNode); h; h = h.parentNode) o.push(h), l = h;
+                    l === (d.ownerDocument || z) && o.push(l.defaultView || l.parentWindow || a)
+                }
+                m = 0;
+                while ((h = o[m++]) && !b.isPropagationStopped()) b.type = m > 1 ? i : k.bindType || p, f = (n._data(h, "events") || {})[b.type] && n._data(h, "handle"), f && f.apply(h, c), f = g && h[g], f && f.apply && n.acceptData(h) && (b.result = f.apply(h, c), b.result === !1 && b.preventDefault());
+                if (b.type = p, !e && !b.isDefaultPrevented() && (!k._default || k._default.apply(o.pop(), c) === !1) && n.acceptData(d) && g && d[p] && !n.isWindow(d)) {
+                    l = d[g], l && (d[g] = null), n.event.triggered = p;
+                    try {
+                        d[p]()
+                    } catch (r) {}
+                    n.event.triggered = void 0, l && (d[g] = l)
+                }
+                return b.result
+            }
+        },
+        dispatch: function(a) {
+            a = n.event.fix(a);
+            var b, c, e, f, g, h = [],
+                i = d.call(arguments),
+                j = (n._data(this, "events") || {})[a.type] || [],
+                k = n.event.special[a.type] || {};
+            if (i[0] = a, a.delegateTarget = this, !k.preDispatch || k.preDispatch.call(this, a) !== !1) {
+                h = n.event.handlers.call(this, a, j), b = 0;
+                while ((f = h[b++]) && !a.isPropagationStopped()) {
+                    a.currentTarget = f.elem, g = 0;
+                    while ((e = f.handlers[g++]) && !a.isImmediatePropagationStopped())(!a.namespace_re || a.namespace_re.test(e.namespace)) && (a.handleObj = e, a.data = e.data, c = ((n.event.special[e.origType] || {}).handle || e.handler).apply(f.elem, i), void 0 !== c && (a.result = c) === !1 && (a.preventDefault(), a.stopPropagation()))
+                }
+                return k.postDispatch && k.postDispatch.call(this, a), a.result
+            }
+        },
+        handlers: function(a, b) {
+            var c, d, e, f, g = [],
+                h = b.delegateCount,
+                i = a.target;
+            if (h && i.nodeType && (!a.button || "click" !== a.type))
+                for (; i != this; i = i.parentNode || this)
+                    if (1 === i.nodeType && (i.disabled !== !0 || "click" !== a.type)) {
+                        for (e = [], f = 0; h > f; f++) d = b[f], c = d.selector + " ", void 0 === e[c] && (e[c] = d.needsContext ? n(c, this).index(i) >= 0 : n.find(c, this, null, [i]).length), e[c] && e.push(d);
+                        e.length && g.push({
+                            elem: i,
+                            handlers: e
+                        })
+                    }
+            return h < b.length && g.push({
+                elem: this,
+                handlers: b.slice(h)
+            }), g
+        },
+        fix: function(a) {
+            if (a[n.expando]) return a;
+            var b, c, d, e = a.type,
+                f = a,
+                g = this.fixHooks[e];
+            g || (this.fixHooks[e] = g = $.test(e) ? this.mouseHooks : Z.test(e) ? this.keyHooks : {}), d = g.props ? this.props.concat(g.props) : this.props, a = new n.Event(f), b = d.length;
+            while (b--) c = d[b], a[c] = f[c];
+            return a.target || (a.target = f.srcElement || z), 3 === a.target.nodeType && (a.target = a.target.parentNode), a.metaKey = !!a.metaKey, g.filter ? g.filter(a, f) : a
+        },
+        props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
+        fixHooks: {},
+        keyHooks: {
+            props: "char charCode key keyCode".split(" "),
+            filter: function(a, b) {
+                return null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode), a
+            }
+        },
+        mouseHooks: {
+            props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
+            filter: function(a, b) {
+                var c, d, e, f = b.button,
+                    g = b.fromElement;
+                return null == a.pageX && null != b.clientX && (d = a.target.ownerDocument || z, e = d.documentElement, c = d.body, a.pageX = b.clientX + (e && e.scrollLeft || c && c.scrollLeft || 0) - (e && e.clientLeft || c && c.clientLeft || 0), a.pageY = b.clientY + (e && e.scrollTop || c && c.scrollTop || 0) - (e && e.clientTop || c && c.clientTop || 0)), !a.relatedTarget && g && (a.relatedTarget = g === a.target ? b.toElement : g), a.which || void 0 === f || (a.which = 1 & f ? 1 : 2 & f ? 3 : 4 & f ? 2 : 0), a
+            }
+        },
+        special: {
+            load: {
+                noBubble: !0
+            },
+            focus: {
+                trigger: function() {
+                    if (this !== db() && this.focus) try {
+                        return this.focus(), !1
+                    } catch (a) {}
+                },
+                delegateType: "focusin"
+            },
+            blur: {
+                trigger: function() {
+                    return this === db() && this.blur ? (this.blur(), !1) : void 0
+                },
+                delegateType: "focusout"
+            },
+            click: {
+                trigger: function() {
+                    return n.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0
+                },
+                _default: function(a) {
+                    return n.nodeName(a.target, "a")
+                }
+            },
+            beforeunload: {
+                postDispatch: function(a) {
+                    void 0 !== a.result && (a.originalEvent.returnValue = a.result)
+                }
+            }
+        },
+        simulate: function(a, b, c, d) {
+            var e = n.extend(new n.Event, c, {
+                type: a,
+                isSimulated: !0,
+                originalEvent: {}
+            });
+            d ? n.event.trigger(e, null, b) : n.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault()
+        }
+    }, n.removeEvent = z.removeEventListener ? function(a, b, c) {
+        a.removeEventListener && a.removeEventListener(b, c, !1)
+    } : function(a, b, c) {
+        var d = "on" + b;
+        a.detachEvent && (typeof a[d] === L && (a[d] = null), a.detachEvent(d, c))
+    }, n.Event = function(a, b) {
+        return this instanceof n.Event ? (a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || void 0 === a.defaultPrevented && (a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault()) ? bb : cb) : this.type = a, b && n.extend(this, b), this.timeStamp = a && a.timeStamp || n.now(), void(this[n.expando] = !0)) : new n.Event(a, b)
+    }, n.Event.prototype = {
+        isDefaultPrevented: cb,
+        isPropagationStopped: cb,
+        isImmediatePropagationStopped: cb,
+        preventDefault: function() {
+            var a = this.originalEvent;
+            this.isDefaultPrevented = bb, a && (a.preventDefault ? a.preventDefault() : a.returnValue = !1)
+        },
+        stopPropagation: function() {
+            var a = this.originalEvent;
+            this.isPropagationStopped = bb, a && (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0)
+        },
+        stopImmediatePropagation: function() {
+            this.isImmediatePropagationStopped = bb, this.stopPropagation()
+        }
+    }, n.each({
+        mouseenter: "mouseover",
+        mouseleave: "mouseout"
+    }, function(a, b) {
+        n.event.special[a] = {
+            delegateType: b,
+            bindType: b,
+            handle: function(a) {
+                var c, d = this,
+                    e = a.relatedTarget,
+                    f = a.handleObj;
+                return (!e || e !== d && !n.contains(d, e)) && (a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b), c
+            }
+        }
+    }), l.submitBubbles || (n.event.special.submit = {
+        setup: function() {
+            return n.nodeName(this, "form") ? !1 : void n.event.add(this, "click._submit keypress._submit", function(a) {
+                var b = a.target,
+                    c = n.nodeName(b, "input") || n.nodeName(b, "button") ? b.form : void 0;
+                c && !n._data(c, "submitBubbles") && (n.event.add(c, "submit._submit", function(a) {
+                    a._submit_bubble = !0
+                }), n._data(c, "submitBubbles", !0))
+            })
+        },
+        postDispatch: function(a) {
+            a._submit_bubble && (delete a._submit_bubble, this.parentNode && !a.isTrigger && n.event.simulate("submit", this.parentNode, a, !0))
+        },
+        teardown: function() {
+            return n.nodeName(this, "form") ? !1 : void n.event.remove(this, "._submit")
+        }
+    }), l.changeBubbles || (n.event.special.change = {
+        setup: function() {
+            return Y.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (n.event.add(this, "propertychange._change", function(a) {
+                "checked" === a.originalEvent.propertyName && (this._just_changed = !0)
+            }), n.event.add(this, "click._change", function(a) {
+                this._just_changed && !a.isTrigger && (this._just_changed = !1), n.event.simulate("change", this, a, !0)
+            })), !1) : void n.event.add(this, "beforeactivate._change", function(a) {
+                var b = a.target;
+                Y.test(b.nodeName) && !n._data(b, "changeBubbles") && (n.event.add(b, "change._change", function(a) {
+                    !this.parentNode || a.isSimulated || a.isTrigger || n.event.simulate("change", this.parentNode, a, !0)
+                }), n._data(b, "changeBubbles", !0))
+            })
+        },
+        handle: function(a) {
+            var b = a.target;
+            return this !== b || a.isSimulated || a.isTrigger || "radio" !== b.type && "checkbox" !== b.type ? a.handleObj.handler.apply(this, arguments) : void 0
+        },
+        teardown: function() {
+            return n.event.remove(this, "._change"), !Y.test(this.nodeName)
+        }
+    }), l.focusinBubbles || n.each({
+        focus: "focusin",
+        blur: "focusout"
+    }, function(a, b) {
+        var c = function(a) {
+            n.event.simulate(b, a.target, n.event.fix(a), !0)
+        };
+        n.event.special[b] = {
+            setup: function() {
+                var d = this.ownerDocument || this,
+                    e = n._data(d, b);
+                e || d.addEventListener(a, c, !0), n._data(d, b, (e || 0) + 1)
+            },
+            teardown: function() {
+                var d = this.ownerDocument || this,
+                    e = n._data(d, b) - 1;
+                e ? n._data(d, b, e) : (d.removeEventListener(a, c, !0), n._removeData(d, b))
+            }
+        }
+    }), n.fn.extend({
+        on: function(a, b, c, d, e) {
+            var f, g;
+            if ("object" == typeof a) {
+                "string" != typeof b && (c = c || b, b = void 0);
+                for (f in a) this.on(f, b, c, a[f], e);
+                return this
+            }
+            if (null == c && null == d ? (d = b, c = b = void 0) : null == d && ("string" == typeof b ? (d = c, c = void 0) : (d = c, c = b, b = void 0)), d === !1) d = cb;
+            else if (!d) return this;
+            return 1 === e && (g = d, d = function(a) {
+                return n().off(a), g.apply(this, arguments)
+            }, d.guid = g.guid || (g.guid = n.guid++)), this.each(function() {
+                n.event.add(this, a, d, c, b)
+            })
+        },
+        one: function(a, b, c, d) {
+            return this.on(a, b, c, d, 1)
+        },
+        off: function(a, b, c) {
+            var d, e;
+            if (a && a.preventDefault && a.handleObj) return d = a.handleObj, n(a.delegateTarget).off(d.namespace ? d.origType + "." + d.namespace : d.origType, d.selector, d.handler), this;
+            if ("object" == typeof a) {
+                for (e in a) this.off(e, b, a[e]);
+                return this
+            }
+            return (b === !1 || "function" == typeof b) && (c = b, b = void 0), c === !1 && (c = cb), this.each(function() {
+                n.event.remove(this, a, c, b)
+            })
+        },
+        trigger: function(a, b) {
+            return this.each(function() {
+                n.event.trigger(a, b, this)
+            })
+        },
+        triggerHandler: function(a, b) {
+            var c = this[0];
+            return c ? n.event.trigger(a, b, c, !0) : void 0
+        }
+    });
+
+    function eb(a) {
+        var b = fb.split("|"),
+            c = a.createDocumentFragment();
+        if (c.createElement)
+            while (b.length) c.createElement(b.pop());
+        return c
+    }
+    var fb = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
+        gb = / jQuery\d+="(?:null|\d+)"/g,
+        hb = new RegExp("<(?:" + fb + ")[\\s/>]", "i"),
+        ib = /^\s+/,
+        jb = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
+        kb = /<([\w:]+)/,
+        lb = /<tbody/i,
+        mb = /<|&#?\w+;/,
+        nb = /<(?:script|style|link)/i,
+        ob = /checked\s*(?:[^=]|=\s*.checked.)/i,
+        pb = /^$|\/(?:java|ecma)script/i,
+        qb = /^true\/(.*)/,
+        rb = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
+        sb = {
+            option: [1, "<select multiple='multiple'>", "</select>"],
+            legend: [1, "<fieldset>", "</fieldset>"],
+            area: [1, "<map>", "</map>"],
+            param: [1, "<object>", "</object>"],
+            thead: [1, "<table>", "</table>"],
+            tr: [2, "<table><tbody>", "</tbody></table>"],
+            col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
+            td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
+            _default: l.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
+        },
+        tb = eb(z),
+        ub = tb.appendChild(z.createElement("div"));
+    sb.optgroup = sb.option, sb.tbody = sb.tfoot = sb.colgroup = sb.caption = sb.thead, sb.th = sb.td;
+
+    function vb(a, b) {
+        var c, d, e = 0,
+            f = typeof a.getElementsByTagName !== L ? a.getElementsByTagName(b || "*") : typeof a.querySelectorAll !== L ? a.querySelectorAll(b || "*") : void 0;
+        if (!f)
+            for (f = [], c = a.childNodes || a; null != (d = c[e]); e++) !b || n.nodeName(d, b) ? f.push(d) : n.merge(f, vb(d, b));
+        return void 0 === b || b && n.nodeName(a, b) ? n.merge([a], f) : f
+    }
+
+    function wb(a) {
+        X.test(a.type) && (a.defaultChecked = a.checked)
+    }
+
+    function xb(a, b) {
+        return n.nodeName(a, "table") && n.nodeName(11 !== b.nodeType ? b : b.firstChild, "tr") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a
+    }
+
+    function yb(a) {
+        return a.type = (null !== n.find.attr(a, "type")) + "/" + a.type, a
+    }
+
+    function zb(a) {
+        var b = qb.exec(a.type);
+        return b ? a.type = b[1] : a.removeAttribute("type"), a
+    }
+
+    function Ab(a, b) {
+        for (var c, d = 0; null != (c = a[d]); d++) n._data(c, "globalEval", !b || n._data(b[d], "globalEval"))
+    }
+
+    function Bb(a, b) {
+        if (1 === b.nodeType && n.hasData(a)) {
+            var c, d, e, f = n._data(a),
+                g = n._data(b, f),
+                h = f.events;
+            if (h) {
+                delete g.handle, g.events = {};
+                for (c in h)
+                    for (d = 0, e = h[c].length; e > d; d++) n.event.add(b, c, h[c][d])
+            }
+            g.data && (g.data = n.extend({}, g.data))
+        }
+    }
+
+    function Cb(a, b) {
+        var c, d, e;
+        if (1 === b.nodeType) {
+            if (c = b.nodeName.toLowerCase(), !l.noCloneEvent && b[n.expando]) {
+                e = n._data(b);
+                for (d in e.events) n.removeEvent(b, d, e.handle);
+                b.removeAttribute(n.expando)
+            }
+            "script" === c && b.text !== a.text ? (yb(b).text = a.text, zb(b)) : "object" === c ? (b.parentNode && (b.outerHTML = a.outerHTML), l.html5Clone && a.innerHTML && !n.trim(b.innerHTML) && (b.innerHTML = a.innerHTML)) : "input" === c && X.test(a.type) ? (b.defaultChecked = b.checked = a.checked, b.value !== a.value && (b.value = a.value)) : "option" === c ? b.defaultSelected = b.selected = a.defaultSelected : ("input" === c || "textarea" === c) && (b.defaultValue = a.defaultValue)
+        }
+    }
+    n.extend({
+        clone: function(a, b, c) {
+            var d, e, f, g, h, i = n.contains(a.ownerDocument, a);
+            if (l.html5Clone || n.isXMLDoc(a) || !hb.test("<" + a.nodeName + ">") ? f = a.cloneNode(!0) : (ub.innerHTML = a.outerHTML, ub.removeChild(f = ub.firstChild)), !(l.noCloneEvent && l.noCloneChecked || 1 !== a.nodeType && 11 !== a.nodeType || n.isXMLDoc(a)))
+                for (d = vb(f), h = vb(a), g = 0; null != (e = h[g]); ++g) d[g] && Cb(e, d[g]);
+            if (b)
+                if (c)
+                    for (h = h || vb(a), d = d || vb(f), g = 0; null != (e = h[g]); g++) Bb(e, d[g]);
+                else Bb(a, f);
+            return d = vb(f, "script"), d.length > 0 && Ab(d, !i && vb(a, "script")), d = h = e = null, f
+        },
+        buildFragment: function(a, b, c, d) {
+            for (var e, f, g, h, i, j, k, m = a.length, o = eb(b), p = [], q = 0; m > q; q++)
+                if (f = a[q], f || 0 === f)
+                    if ("object" === n.type(f)) n.merge(p, f.nodeType ? [f] : f);
+                    else if (mb.test(f)) {
+                h = h || o.appendChild(b.createElement("div")), i = (kb.exec(f) || ["", ""])[1].toLowerCase(), k = sb[i] || sb._default, h.innerHTML = k[1] + f.replace(jb, "<$1></$2>") + k[2], e = k[0];
+                while (e--) h = h.lastChild;
+                if (!l.leadingWhitespace && ib.test(f) && p.push(b.createTextNode(ib.exec(f)[0])), !l.tbody) {
+                    f = "table" !== i || lb.test(f) ? "<table>" !== k[1] || lb.test(f) ? 0 : h : h.firstChild, e = f && f.childNodes.length;
+                    while (e--) n.nodeName(j = f.childNodes[e], "tbody") && !j.childNodes.length && f.removeChild(j)
+                }
+                n.merge(p, h.childNodes), h.textContent = "";
+                while (h.firstChild) h.removeChild(h.firstChild);
+                h = o.lastChild
+            } else p.push(b.createTextNode(f));
+            h && o.removeChild(h), l.appendChecked || n.grep(vb(p, "input"), wb), q = 0;
+            while (f = p[q++])
+                if ((!d || -1 === n.inArray(f, d)) && (g = n.contains(f.ownerDocument, f), h = vb(o.appendChild(f), "script"), g && Ab(h), c)) {
+                    e = 0;
+                    while (f = h[e++]) pb.test(f.type || "") && c.push(f)
+                }
+            return h = null, o
+        },
+        cleanData: function(a, b) {
+            for (var d, e, f, g, h = 0, i = n.expando, j = n.cache, k = l.deleteExpando, m = n.event.special; null != (d = a[h]); h++)
+                if ((b || n.acceptData(d)) && (f = d[i], g = f && j[f])) {
+                    if (g.events)
+                        for (e in g.events) m[e] ? n.event.remove(d, e) : n.removeEvent(d, e, g.handle);
+                    j[f] && (delete j[f], k ? delete d[i] : typeof d.removeAttribute !== L ? d.removeAttribute(i) : d[i] = null, c.push(f))
+                }
+        }
+    }), n.fn.extend({
+        text: function(a) {
+            return W(this, function(a) {
+                return void 0 === a ? n.text(this) : this.empty().append((this[0] && this[0].ownerDocument || z).createTextNode(a))
+            }, null, a, arguments.length)
+        },
+        append: function() {
+            return this.domManip(arguments, function(a) {
+                if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
+                    var b = xb(this, a);
+                    b.appendChild(a)
+                }
+            })
+        },
+        prepend: function() {
+            return this.domManip(arguments, function(a) {
+                if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
+                    var b = xb(this, a);
+                    b.insertBefore(a, b.firstChild)
+                }
+            })
+        },
+        before: function() {
+            return this.domManip(arguments, function(a) {
+                this.parentNode && this.parentNode.insertBefore(a, this)
+            })
+        },
+        after: function() {
+            return this.domManip(arguments, function(a) {
+                this.parentNode && this.parentNode.insertBefore(a, this.nextSibling)
+            })
+        },
+        remove: function(a, b) {
+            for (var c, d = a ? n.filter(a, this) : this, e = 0; null != (c = d[e]); e++) b || 1 !== c.nodeType || n.cleanData(vb(c)), c.parentNode && (b && n.contains(c.ownerDocument, c) && Ab(vb(c, "script")), c.parentNode.removeChild(c));
+            return this
+        },
+        empty: function() {
+            for (var a, b = 0; null != (a = this[b]); b++) {
+                1 === a.nodeType && n.cleanData(vb(a, !1));
+                while (a.firstChild) a.removeChild(a.firstChild);
+                a.options && n.nodeName(a, "select") && (a.options.length = 0)
+            }
+            return this
+        },
+        clone: function(a, b) {
+            return a = null == a ? !1 : a, b = null == b ? a : b, this.map(function() {
+                return n.clone(this, a, b)
+            })
+        },
+        html: function(a) {
+            return W(this, function(a) {
+                var b = this[0] || {},
+                    c = 0,
+                    d = this.length;
+                if (void 0 === a) return 1 === b.nodeType ? b.innerHTML.replace(gb, "") : void 0;
+                if (!("string" != typeof a || nb.test(a) || !l.htmlSerialize && hb.test(a) || !l.leadingWhitespace && ib.test(a) || sb[(kb.exec(a) || ["", ""])[1].toLowerCase()])) {
+                    a = a.replace(jb, "<$1></$2>");
+                    try {
+                        for (; d > c; c++) b = this[c] || {}, 1 === b.nodeType && (n.cleanData(vb(b, !1)), b.innerHTML = a);
+                        b = 0
+                    } catch (e) {}
+                }
+                b && this.empty().append(a)
+            }, null, a, arguments.length)
+        },
+        replaceWith: function() {
+            var a = arguments[0];
+            return this.domManip(arguments, function(b) {
+                a = this.parentNode, n.cleanData(vb(this)), a && a.replaceChild(b, this)
+            }), a && (a.length || a.nodeType) ? this : this.remove()
+        },
+        detach: function(a) {
+            return this.remove(a, !0)
+        },
+        domManip: function(a, b) {
+            a = e.apply([], a);
+            var c, d, f, g, h, i, j = 0,
+                k = this.length,
+                m = this,
+                o = k - 1,
+                p = a[0],
+                q = n.isFunction(p);
+            if (q || k > 1 && "string" == typeof p && !l.checkClone && ob.test(p)) return this.each(function(c) {
+                var d = m.eq(c);
+                q && (a[0] = p.call(this, c, d.html())), d.domManip(a, b)
+            });
+            if (k && (i = n.buildFragment(a, this[0].ownerDocument, !1, this), c = i.firstChild, 1 === i.childNodes.length && (i = c), c)) {
+                for (g = n.map(vb(i, "script"), yb), f = g.length; k > j; j++) d = i, j !== o && (d = n.clone(d, !0, !0), f && n.merge(g, vb(d, "script"))), b.call(this[j], d, j);
+                if (f)
+                    for (h = g[g.length - 1].ownerDocument, n.map(g, zb), j = 0; f > j; j++) d = g[j], pb.test(d.type || "") && !n._data(d, "globalEval") && n.contains(h, d) && (d.src ? n._evalUrl && n._evalUrl(d.src) : n.globalEval((d.text || d.textContent || d.innerHTML || "").replace(rb, "")));
+                i = c = null
+            }
+            return this
+        }
+    }), n.each({
+        appendTo: "append",
+        prependTo: "prepend",
+        insertBefore: "before",
+        insertAfter: "after",
+        replaceAll: "replaceWith"
+    }, function(a, b) {
+        n.fn[a] = function(a) {
+            for (var c, d = 0, e = [], g = n(a), h = g.length - 1; h >= d; d++) c = d === h ? this : this.clone(!0), n(g[d])[b](c), f.apply(e, c.get());
+            return this.pushStack(e)
+        }
+    });
+    var Db, Eb = {};
+
+    function Fb(b, c) {
+        var d = n(c.createElement(b)).appendTo(c.body),
+            e = a.getDefaultComputedStyle ? a.getDefaultComputedStyle(d[0]).display : n.css(d[0], "display");
+        return d.detach(), e
+    }
+
+    function Gb(a) {
+        var b = z,
+            c = Eb[a];
+        return c || (c = Fb(a, b), "none" !== c && c || (Db = (Db || n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement), b = (Db[0].contentWindow || Db[0].contentDocument).document, b.write(), b.close(), c = Fb(a, b), Db.detach()), Eb[a] = c), c
+    }! function() {
+        var a, b, c = z.createElement("div"),
+            d = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;padding:0;margin:0;border:0";
+        c.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = c.getElementsByTagName("a")[0], a.style.cssText = "float:left;opacity:.5", l.opacity = /^0.5/.test(a.style.opacity), l.cssFloat = !!a.style.cssFloat, c.style.backgroundClip = "content-box", c.cloneNode(!0).style.backgroundClip = "", l.clearCloneStyle = "content-box" === c.style.backgroundClip, a = c = null, l.shrinkWrapBlocks = function() {
+            var a, c, e, f;
+            if (null == b) {
+                if (a = z.getElementsByTagName("body")[0], !a) return;
+                f = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px", c = z.createElement("div"), e = z.createElement("div"), a.appendChild(c).appendChild(e), b = !1, typeof e.style.zoom !== L && (e.style.cssText = d + ";width:1px;padding:1px;zoom:1", e.innerHTML = "<div></div>", e.firstChild.style.width = "5px", b = 3 !== e.offsetWidth), a.removeChild(c), a = c = e = null
+            }
+            return b
+        }
+    }();
+    var Hb = /^margin/,
+        Ib = new RegExp("^(" + T + ")(?!px)[a-z%]+$", "i"),
+        Jb, Kb, Lb = /^(top|right|bottom|left)$/;
+    a.getComputedStyle ? (Jb = function(a) {
+        return a.ownerDocument.defaultView.getComputedStyle(a, null)
+    }, Kb = function(a, b, c) {
+        var d, e, f, g, h = a.style;
+        return c = c || Jb(a), g = c ? c.getPropertyValue(b) || c[b] : void 0, c && ("" !== g || n.contains(a.ownerDocument, a) || (g = n.style(a, b)), Ib.test(g) && Hb.test(b) && (d = h.width, e = h.minWidth, f = h.maxWidth, h.minWidth = h.maxWidth = h.width = g, g = c.width, h.width = d, h.minWidth = e, h.maxWidth = f)), void 0 === g ? g : g + ""
+    }) : z.documentElement.currentStyle && (Jb = function(a) {
+        return a.currentStyle
+    }, Kb = function(a, b, c) {
+        var d, e, f, g, h = a.style;
+        return c = c || Jb(a), g = c ? c[b] : void 0, null == g && h && h[b] && (g = h[b]), Ib.test(g) && !Lb.test(b) && (d = h.left, e = a.runtimeStyle, f = e && e.left, f && (e.left = a.currentStyle.left), h.left = "fontSize" === b ? "1em" : g, g = h.pixelLeft + "px", h.left = d, f && (e.left = f)), void 0 === g ? g : g + "" || "auto"
+    });
+
+    function Mb(a, b) {
+        return {
+            get: function() {
+                var c = a();
+                if (null != c) return c ? void delete this.get : (this.get = b).apply(this, arguments)
+            }
+        }
+    }! function() {
+        var b, c, d, e, f, g, h = z.createElement("div"),
+            i = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px",
+            j = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;padding:0;margin:0;border:0";
+        h.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", b = h.getElementsByTagName("a")[0], b.style.cssText = "float:left;opacity:.5", l.opacity = /^0.5/.test(b.style.opacity), l.cssFloat = !!b.style.cssFloat, h.style.backgroundClip = "content-box", h.cloneNode(!0).style.backgroundClip = "", l.clearCloneStyle = "content-box" === h.style.backgroundClip, b = h = null, n.extend(l, {
+            reliableHiddenOffsets: function() {
+                if (null != c) return c;
+                var a, b, d, e = z.createElement("div"),
+                    f = z.getElementsByTagName("body")[0];
+                if (f) return e.setAttribute("className", "t"), e.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = z.createElement("div"), a.style.cssText = i, f.appendChild(a).appendChild(e), e.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", b = e.getElementsByTagName("td"), b[0].style.cssText = "padding:0;margin:0;border:0;display:none", d = 0 === b[0].offsetHeight, b[0].style.display = "", b[1].style.display = "none", c = d && 0 === b[0].offsetHeight, f.removeChild(a), e = f = null, c
+            },
+            boxSizing: function() {
+                return null == d && k(), d
+            },
+            boxSizingReliable: function() {
+                return null == e && k(), e
+            },
+            pixelPosition: function() {
+                return null == f && k(), f
+            },
+            reliableMarginRight: function() {
+                var b, c, d, e;
+                if (null == g && a.getComputedStyle) {
+                    if (b = z.getElementsByTagName("body")[0], !b) return;
+                    c = z.createElement("div"), d = z.createElement("div"), c.style.cssText = i, b.appendChild(c).appendChild(d), e = d.appendChild(z.createElement("div")), e.style.cssText = d.style.cssText = j, e.style.marginRight = e.style.width = "0", d.style.width = "1px", g = !parseFloat((a.getComputedStyle(e, null) || {}).marginRight), b.removeChild(c)
+                }
+                return g
+            }
+        });
+
+        function k() {
+            var b, c, h = z.getElementsByTagName("body")[0];
+            h && (b = z.createElement("div"), c = z.createElement("div"), b.style.cssText = i, h.appendChild(b).appendChild(c), c.style.cssText = "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;display:block;padding:1px;border:1px;width:4px;margin-top:1%;top:1%", n.swap(h, null != h.style.zoom ? {
+                zoom: 1
+            } : {}, function() {
+                d = 4 === c.offsetWidth
+            }), e = !0, f = !1, g = !0, a.getComputedStyle && (f = "1%" !== (a.getComputedStyle(c, null) || {}).top, e = "4px" === (a.getComputedStyle(c, null) || {
+                width: "4px"
+            }).width), h.removeChild(b), c = h = null)
+        }
+    }(), n.swap = function(a, b, c, d) {
+        var e, f, g = {};
+        for (f in b) g[f] = a.style[f], a.style[f] = b[f];
+        e = c.apply(a, d || []);
+        for (f in b) a.style[f] = g[f];
+        return e
+    };
+    var Nb = /alpha\([^)]*\)/i,
+        Ob = /opacity\s*=\s*([^)]*)/,
+        Pb = /^(none|table(?!-c[ea]).+)/,
+        Qb = new RegExp("^(" + T + ")(.*)$", "i"),
+        Rb = new RegExp("^([+-])=(" + T + ")", "i"),
+        Sb = {
+            position: "absolute",
+            visibility: "hidden",
+            display: "block"
+        },
+        Tb = {
+            letterSpacing: 0,
+            fontWeight: 400
+        },
+        Ub = ["Webkit", "O", "Moz", "ms"];
+
+    function Vb(a, b) {
+        if (b in a) return b;
+        var c = b.charAt(0).toUpperCase() + b.slice(1),
+            d = b,
+            e = Ub.length;
+        while (e--)
+            if (b = Ub[e] + c, b in a) return b;
+        return d
+    }
+
+    function Wb(a, b) {
+        for (var c, d, e, f = [], g = 0, h = a.length; h > g; g++) d = a[g], d.style && (f[g] = n._data(d, "olddisplay"), c = d.style.display, b ? (f[g] || "none" !== c || (d.style.display = ""), "" === d.style.display && V(d) && (f[g] = n._data(d, "olddisplay", Gb(d.nodeName)))) : f[g] || (e = V(d), (c && "none" !== c || !e) && n._data(d, "olddisplay", e ? c : n.css(d, "display"))));
+        for (g = 0; h > g; g++) d = a[g], d.style && (b && "none" !== d.style.display && "" !== d.style.display || (d.style.display = b ? f[g] || "" : "none"));
+        return a
+    }
+
+    function Xb(a, b, c) {
+        var d = Qb.exec(b);
+        return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b
+    }
+
+    function Yb(a, b, c, d, e) {
+        for (var f = c === (d ? "border" : "content") ? 4 : "width" === b ? 1 : 0, g = 0; 4 > f; f += 2) "margin" === c && (g += n.css(a, c + U[f], !0, e)), d ? ("content" === c && (g -= n.css(a, "padding" + U[f], !0, e)), "margin" !== c && (g -= n.css(a, "border" + U[f] + "Width", !0, e))) : (g += n.css(a, "padding" + U[f], !0, e), "padding" !== c && (g += n.css(a, "border" + U[f] + "Width", !0, e)));
+        return g
+    }
+
+    function Zb(a, b, c) {
+        var d = !0,
+            e = "width" === b ? a.offsetWidth : a.offsetHeight,
+            f = Jb(a),
+            g = l.boxSizing() && "border-box" === n.css(a, "boxSizing", !1, f);
+        if (0 >= e || null == e) {
+            if (e = Kb(a, b, f), (0 > e || null == e) && (e = a.style[b]), Ib.test(e)) return e;
+            d = g && (l.boxSizingReliable() || e === a.style[b]), e = parseFloat(e) || 0
+        }
+        return e + Yb(a, b, c || (g ? "border" : "content"), d, f) + "px"
+    }
+    n.extend({
+        cssHooks: {
+            opacity: {
+                get: function(a, b) {
+                    if (b) {
+                        var c = Kb(a, "opacity");
+                        return "" === c ? "1" : c
+                    }
+                }
+            }
+        },
+        cssNumber: {
+            columnCount: !0,
+            fillOpacity: !0,
+            fontWeight: !0,
+            lineHeight: !0,
+            opacity: !0,
+            order: !0,
+            orphans: !0,
+            widows: !0,
+            zIndex: !0,
+            zoom: !0
+        },
+        cssProps: {
+            "float": l.cssFloat ? "cssFloat" : "styleFloat"
+        },
+        style: function(a, b, c, d) {
+            if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) {
+                var e, f, g, h = n.camelCase(b),
+                    i = a.style;
+                if (b = n.cssProps[h] || (n.cssProps[h] = Vb(i, h)), g = n.cssHooks[b] || n.cssHooks[h], void 0 === c) return g && "get" in g && void 0 !== (e = g.get(a, !1, d)) ? e : i[b];
+                if (f = typeof c, "string" === f && (e = Rb.exec(c)) && (c = (e[1] + 1) * e[2] + parseFloat(n.css(a, b)), f = "number"), null != c && c === c && ("number" !== f || n.cssNumber[h] || (c += "px"), l.clearCloneStyle || "" !== c || 0 !== b.indexOf("background") || (i[b] = "inherit"), !(g && "set" in g && void 0 === (c = g.set(a, c, d))))) try {
+                    i[b] = "", i[b] = c
+                } catch (j) {}
+            }
+        },
+        css: function(a, b, c, d) {
+            var e, f, g, h = n.camelCase(b);
+            return b = n.cssProps[h] || (n.cssProps[h] = Vb(a.style, h)), g = n.cssHooks[b] || n.cssHooks[h], g && "get" in g && (f = g.get(a, !0, c)), void 0 === f && (f = Kb(a, b, d)), "normal" === f && b in Tb && (f = Tb[b]), "" === c || c ? (e = parseFloat(f), c === !0 || n.isNumeric(e) ? e || 0 : f) : f
+        }
+    }), n.each(["height", "width"], function(a, b) {
+        n.cssHooks[b] = {
+            get: function(a, c, d) {
+                return c ? 0 === a.offsetWidth && Pb.test(n.css(a, "display")) ? n.swap(a, Sb, function() {
+                    return Zb(a, b, d)
+                }) : Zb(a, b, d) : void 0
+            },
+            set: function(a, c, d) {
+                var e = d && Jb(a);
+                return Xb(a, c, d ? Yb(a, b, d, l.boxSizing() && "border-box" === n.css(a, "boxSizing", !1, e), e) : 0)
+            }
+        }
+    }), l.opacity || (n.cssHooks.opacity = {
+        get: function(a, b) {
+            return Ob.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : b ? "1" : ""
+        },
+        set: function(a, b) {
+            var c = a.style,
+                d = a.currentStyle,
+                e = n.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : "",
+                f = d && d.filter || c.filter || "";
+            c.zoom = 1, (b >= 1 || "" === b) && "" === n.trim(f.replace(Nb, "")) && c.removeAttribute && (c.removeAttribute("filter"), "" === b || d && !d.filter) || (c.filter = Nb.test(f) ? f.replace(Nb, e) : f + " " + e)
+        }
+    }), n.cssHooks.marginRight = Mb(l.reliableMarginRight, function(a, b) {
+        return b ? n.swap(a, {
+            display: "inline-block"
+        }, Kb, [a, "marginRight"]) : void 0
+    }), n.each({
+        margin: "",
+        padding: "",
+        border: "Width"
+    }, function(a, b) {
+        n.cssHooks[a + b] = {
+            expand: function(c) {
+                for (var d = 0, e = {}, f = "string" == typeof c ? c.split(" ") : [c]; 4 > d; d++) e[a + U[d] + b] = f[d] || f[d - 2] || f[0];
+                return e
+            }
+        }, Hb.test(a) || (n.cssHooks[a + b].set = Xb)
+    }), n.fn.extend({
+        css: function(a, b) {
+            return W(this, function(a, b, c) {
+                var d, e, f = {},
+                    g = 0;
+                if (n.isArray(b)) {
+                    for (d = Jb(a), e = b.length; e > g; g++) f[b[g]] = n.css(a, b[g], !1, d);
+                    return f
+                }
+                return void 0 !== c ? n.style(a, b, c) : n.css(a, b)
+            }, a, b, arguments.length > 1)
+        },
+        show: function() {
+            return Wb(this, !0)
+        },
+        hide: function() {
+            return Wb(this)
+        },
+        toggle: function(a) {
+            return "boolean" == typeof a ? a ? this.show() : this.hide() : this.each(function() {
+                V(this) ? n(this).show() : n(this).hide()
+            })
+        }
+    });
+
+    function $b(a, b, c, d, e) {
+        return new $b.prototype.init(a, b, c, d, e)
+    }
+    n.Tween = $b, $b.prototype = {
+        constructor: $b,
+        init: function(a, b, c, d, e, f) {
+            this.elem = a, this.prop = c, this.easing = e || "swing", this.options = b, this.start = this.now = this.cur(), this.end = d, this.unit = f || (n.cssNumber[c] ? "" : "px")
+        },
+        cur: function() {
+            var a = $b.propHooks[this.prop];
+            return a && a.get ? a.get(this) : $b.propHooks._default.get(this)
+        },
+        run: function(a) {
+            var b, c = $b.propHooks[this.prop];
+            return this.pos = b = this.options.duration ? n.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration) : a, this.now = (this.end - this.start) * b + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), c && c.set ? c.set(this) : $b.propHooks._default.set(this), this
+        }
+    }, $b.prototype.init.prototype = $b.prototype, $b.propHooks = {
+        _default: {
+            get: function(a) {
+                var b;
+                return null == a.elem[a.prop] || a.elem.style && null != a.elem.style[a.prop] ? (b = n.css(a.elem, a.prop, ""), b && "auto" !== b ? b : 0) : a.elem[a.prop]
+            },
+            set: function(a) {
+                n.fx.step[a.prop] ? n.fx.step[a.prop](a) : a.elem.style && (null != a.elem.style[n.cssProps[a.prop]] || n.cssHooks[a.prop]) ? n.style(a.elem, a.prop, a.now + a.unit) : a.elem[a.prop] = a.now
+            }
+        }
+    }, $b.propHooks.scrollTop = $b.propHooks.scrollLeft = {
+        set: function(a) {
+            a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now)
+        }
+    }, n.easing = {
+        linear: function(a) {
+            return a
+        },
+        swing: function(a) {
+            return .5 - Math.cos(a * Math.PI) / 2
+        }
+    }, n.fx = $b.prototype.init, n.fx.step = {};
+    var _b, ac, bc = /^(?:toggle|show|hide)$/,
+        cc = new RegExp("^(?:([+-])=|)(" + T + ")([a-z%]*)$", "i"),
+        dc = /queueHooks$/,
+        ec = [jc],
+        fc = {
+            "*": [function(a, b) {
+                var c = this.createTween(a, b),
+                    d = c.cur(),
+                    e = cc.exec(b),
+                    f = e && e[3] || (n.cssNumber[a] ? "" : "px"),
+                    g = (n.cssNumber[a] || "px" !== f && +d) && cc.exec(n.css(c.elem, a)),
+                    h = 1,
+                    i = 20;
+                if (g && g[3] !== f) {
+                    f = f || g[3], e = e || [], g = +d || 1;
+                    do h = h || ".5", g /= h, n.style(c.elem, a, g + f); while (h !== (h = c.cur() / d) && 1 !== h && --i)
+                }
+                return e && (g = c.start = +g || +d || 0, c.unit = f, c.end = e[1] ? g + (e[1] + 1) * e[2] : +e[2]), c
+            }]
+        };
+
+    function gc() {
+        return setTimeout(function() {
+            _b = void 0
+        }), _b = n.now()
+    }
+
+    function hc(a, b) {
+        var c, d = {
+                height: a
+            },
+            e = 0;
+        for (b = b ? 1 : 0; 4 > e; e += 2 - b) c = U[e], d["margin" + c] = d["padding" + c] = a;
+        return b && (d.opacity = d.width = a), d
+    }
+
+    function ic(a, b, c) {
+        for (var d, e = (fc[b] || []).concat(fc["*"]), f = 0, g = e.length; g > f; f++)
+            if (d = e[f].call(c, b, a)) return d
+    }
+
+    function jc(a, b, c) {
+        var d, e, f, g, h, i, j, k, m = this,
+            o = {},
+            p = a.style,
+            q = a.nodeType && V(a),
+            r = n._data(a, "fxshow");
+        c.queue || (h = n._queueHooks(a, "fx"), null == h.unqueued && (h.unqueued = 0, i = h.empty.fire, h.empty.fire = function() {
+            h.unqueued || i()
+        }), h.unqueued++, m.always(function() {
+            m.always(function() {
+                h.unqueued--, n.queue(a, "fx").length || h.empty.fire()
+            })
+        })), 1 === a.nodeType && ("height" in b || "width" in b) && (c.overflow = [p.overflow, p.overflowX, p.overflowY], j = n.css(a, "display"), k = Gb(a.nodeName), "none" === j && (j = k), "inline" === j && "none" === n.css(a, "float") && (l.inlineBlockNeedsLayout && "inline" !== k ? p.zoom = 1 : p.display = "inline-block")), c.overflow && (p.overflow = "hidden", l.shrinkWrapBlocks() || m.always(function() {
+            p.overflow = c.overflow[0], p.overflowX = c.overflow[1], p.overflowY = c.overflow[2]
+        }));
+        for (d in b)
+            if (e = b[d], bc.exec(e)) {
+                if (delete b[d], f = f || "toggle" === e, e === (q ? "hide" : "show")) {
+                    if ("show" !== e || !r || void 0 === r[d]) continue;
+                    q = !0
+                }
+                o[d] = r && r[d] || n.style(a, d)
+            }
+        if (!n.isEmptyObject(o)) {
+            r ? "hidden" in r && (q = r.hidden) : r = n._data(a, "fxshow", {}), f && (r.hidden = !q), q ? n(a).show() : m.done(function() {
+                n(a).hide()
+            }), m.done(function() {
+                var b;
+                n._removeData(a, "fxshow");
+                for (b in o) n.style(a, b, o[b])
+            });
+            for (d in o) g = ic(q ? r[d] : 0, d, m), d in r || (r[d] = g.start, q && (g.end = g.start, g.start = "width" === d || "height" === d ? 1 : 0))
+        }
+    }
+
+    function kc(a, b) {
+        var c, d, e, f, g;
+        for (c in a)
+            if (d = n.camelCase(c), e = b[d], f = a[c], n.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = n.cssHooks[d], g && "expand" in g) {
+                f = g.expand(f), delete a[d];
+                for (c in f) c in a || (a[c] = f[c], b[c] = e)
+            } else b[d] = e
+    }
+
+    function lc(a, b, c) {
+        var d, e, f = 0,
+            g = ec.length,
+            h = n.Deferred().always(function() {
+                delete i.elem
+            }),
+            i = function() {
+                if (e) return !1;
+                for (var b = _b || gc(), c = Math.max(0, j.startTime + j.duration - b), d = c / j.duration || 0, f = 1 - d, g = 0, i = j.tweens.length; i > g; g++) j.tweens[g].run(f);
+                return h.notifyWith(a, [j, f, c]), 1 > f && i ? c : (h.resolveWith(a, [j]), !1)
+            },
+            j = h.promise({
+                elem: a,
+                props: n.extend({}, b),
+                opts: n.extend(!0, {
+                    specialEasing: {}
+                }, c),
+                originalProperties: b,
+                originalOptions: c,
+                startTime: _b || gc(),
+                duration: c.duration,
+                tweens: [],
+                createTween: function(b, c) {
+                    var d = n.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing);
+                    return j.tweens.push(d), d
+                },
+                stop: function(b) {
+                    var c = 0,
+                        d = b ? j.tweens.length : 0;
+                    if (e) return this;
+                    for (e = !0; d > c; c++) j.tweens[c].run(1);
+                    return b ? h.resolveWith(a, [j, b]) : h.rejectWith(a, [j, b]), this
+                }
+            }),
+            k = j.props;
+        for (kc(k, j.opts.specialEasing); g > f; f++)
+            if (d = ec[f].call(j, a, k, j.opts)) return d;
+        return n.map(k, ic, j), n.isFunction(j.opts.start) && j.opts.start.call(a, j), n.fx.timer(n.extend(i, {
+            elem: a,
+            anim: j,
+            queue: j.opts.queue
+        })), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always)
+    }
+    n.Animation = n.extend(lc, {
+            tweener: function(a, b) {
+                n.isFunction(a) ? (b = a, a = ["*"]) : a = a.split(" ");
+                for (var c, d = 0, e = a.length; e > d; d++) c = a[d], fc[c] = fc[c] || [], fc[c].unshift(b)
+            },
+            prefilter: function(a, b) {
+                b ? ec.unshift(a) : ec.push(a)
+            }
+        }), n.speed = function(a, b, c) {
+            var d = a && "object" == typeof a ? n.extend({}, a) : {
+                complete: c || !c && b || n.isFunction(a) && a,
+                duration: a,
+                easing: c && b || b && !n.isFunction(b) && b
+            };
+            return d.duration = n.fx.off ? 0 : "number" == typeof d.duration ? d.duration : d.duration in n.fx.speeds ? n.fx.speeds[d.duration] : n.fx.speeds._default, (null == d.queue || d.queue === !0) && (d.queue = "fx"), d.old = d.complete, d.complete = function() {
+                n.isFunction(d.old) && d.old.call(this), d.queue && n.dequeue(this, d.queue)
+            }, d
+        }, n.fn.extend({
+            fadeTo: function(a, b, c, d) {
+                return this.filter(V).css("opacity", 0).show().end().animate({
+                    opacity: b
+                }, a, c, d)
+            },
+            animate: function(a, b, c, d) {
+                var e = n.isEmptyObject(a),
+                    f = n.speed(b, c, d),
+                    g = function() {
+                        var b = lc(this, n.extend({}, a), f);
+                        (e || n._data(this, "finish")) && b.stop(!0)
+                    };
+                return g.finish = g, e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g)
+            },
+            stop: function(a, b, c) {
+                var d = function(a) {
+                    var b = a.stop;
+                    delete a.stop, b(c)
+                };
+                return "string" != typeof a && (c = b, b = a, a = void 0), b && a !== !1 && this.queue(a || "fx", []), this.each(function() {
+                    var b = !0,
+                        e = null != a && a + "queueHooks",
+                        f = n.timers,
+                        g = n._data(this);
+                    if (e) g[e] && g[e].stop && d(g[e]);
+                    else
+                        for (e in g) g[e] && g[e].stop && dc.test(e) && d(g[e]);
+                    for (e = f.length; e--;) f[e].elem !== this || null != a && f[e].queue !== a || (f[e].anim.stop(c), b = !1, f.splice(e, 1));
+                    (b || !c) && n.dequeue(this, a)
+                })
+            },
+            finish: function(a) {
+                return a !== !1 && (a = a || "fx"), this.each(function() {
+                    var b, c = n._data(this),
+                        d = c[a + "queue"],
+                        e = c[a + "queueHooks"],
+                        f = n.timers,
+                        g = d ? d.length : 0;
+                    for (c.finish = !0, n.queue(this, a, []), e && e.stop && e.stop.call(this, !0), b = f.length; b--;) f[b].elem === this && f[b].queue === a && (f[b].anim.stop(!0), f.splice(b, 1));
+                    for (b = 0; g > b; b++) d[b] && d[b].finish && d[b].finish.call(this);
+                    delete c.finish
+                })
+            }
+        }), n.each(["toggle", "show", "hide"], function(a, b) {
+            var c = n.fn[b];
+            n.fn[b] = function(a, d, e) {
+                return null == a || "boolean" == typeof a ? c.apply(this, arguments) : this.animate(hc(b, !0), a, d, e)
+            }
+        }), n.each({
+            slideDown: hc("show"),
+            slideUp: hc("hide"),
+            slideToggle: hc("toggle"),
+            fadeIn: {
+                opacity: "show"
+            },
+            fadeOut: {
+                opacity: "hide"
+            },
+            fadeToggle: {
+                opacity: "toggle"
+            }
+        }, function(a, b) {
+            n.fn[a] = function(a, c, d) {
+                return this.animate(b, a, c, d)
+            }
+        }), n.timers = [], n.fx.tick = function() {
+            var a, b = n.timers,
+                c = 0;
+            for (_b = n.now(); c < b.length; c++) a = b[c], a() || b[c] !== a || b.splice(c--, 1);
+            b.length || n.fx.stop(), _b = void 0
+        }, n.fx.timer = function(a) {
+            n.timers.push(a), a() ? n.fx.start() : n.timers.pop()
+        }, n.fx.interval = 13, n.fx.start = function() {
+            ac || (ac = setInterval(n.fx.tick, n.fx.interval))
+        }, n.fx.stop = function() {
+            clearInterval(ac), ac = null
+        }, n.fx.speeds = {
+            slow: 600,
+            fast: 200,
+            _default: 400
+        }, n.fn.delay = function(a, b) {
+            return a = n.fx ? n.fx.speeds[a] || a : a, b = b || "fx", this.queue(b, function(b, c) {
+                var d = setTimeout(b, a);
+                c.stop = function() {
+                    clearTimeout(d)
+                }
+            })
+        },
+        function() {
+            var a, b, c, d, e = z.createElement("div");
+            e.setAttribute("className", "t"), e.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = e.getElementsByTagName("a")[0], c = z.createElement("select"), d = c.appendChild(z.createElement("option")), b = e.getElementsByTagName("input")[0], a.style.cssText = "top:1px", l.getSetAttribute = "t" !== e.className, l.style = /top/.test(a.getAttribute("style")), l.hrefNormalized = "/a" === a.getAttribute("href"), l.checkOn = !!b.value, l.optSelected = d.selected, l.enctype = !!z.createElement("form").enctype, c.disabled = !0, l.optDisabled = !d.disabled, b = z.createElement("input"), b.setAttribute("value", ""), l.input = "" === b.getAttribute("value"), b.value = "t", b.setAttribute("type", "radio"), l.radioValue = "t" === b.value, a = b = c = d = e = null
+        }();
+    var mc = /\r/g;
+    n.fn.extend({
+        val: function(a) {
+            var b, c, d, e = this[0]; {
+                if (arguments.length) return d = n.isFunction(a), this.each(function(c) {
+                    var e;
+                    1 === this.nodeType && (e = d ? a.call(this, c, n(this).val()) : a, null == e ? e = "" : "number" == typeof e ? e += "" : n.isArray(e) && (e = n.map(e, function(a) {
+                        return null == a ? "" : a + ""
+                    })), b = n.valHooks[this.type] || n.valHooks[this.nodeName.toLowerCase()], b && "set" in b && void 0 !== b.set(this, e, "value") || (this.value = e))
+                });
+                if (e) return b = n.valHooks[e.type] || n.valHooks[e.nodeName.toLowerCase()], b && "get" in b && void 0 !== (c = b.get(e, "value")) ? c : (c = e.value, "string" == typeof c ? c.replace(mc, "") : null == c ? "" : c)
+            }
+        }
+    }), n.extend({
+        valHooks: {
+            option: {
+                get: function(a) {
+                    var b = n.find.attr(a, "value");
+                    return null != b ? b : n.text(a)
+                }
+            },
+            select: {
+                get: function(a) {
+                    for (var b, c, d = a.options, e = a.selectedIndex, f = "select-one" === a.type || 0 > e, g = f ? null : [], h = f ? e + 1 : d.length, i = 0 > e ? h : f ? e : 0; h > i; i++)
+                        if (c = d[i], !(!c.selected && i !== e || (l.optDisabled ? c.disabled : null !== c.getAttribute("disabled")) || c.parentNode.disabled && n.nodeName(c.parentNode, "optgroup"))) {
+                            if (b = n(c).val(), f) return b;
+                            g.push(b)
+                        }
+                    return g
+                },
+                set: function(a, b) {
+                    var c, d, e = a.options,
+                        f = n.makeArray(b),
+                        g = e.length;
+                    while (g--)
+                        if (d = e[g], n.inArray(n.valHooks.option.get(d), f) >= 0) try {
+                            d.selected = c = !0
+                        } catch (h) {
+                            d.scrollHeight
+                        } else d.selected = !1;
+                    return c || (a.selectedIndex = -1), e
+                }
+            }
+        }
+    }), n.each(["radio", "checkbox"], function() {
+        n.valHooks[this] = {
+            set: function(a, b) {
+                return n.isArray(b) ? a.checked = n.inArray(n(a).val(), b) >= 0 : void 0
+            }
+        }, l.checkOn || (n.valHooks[this].get = function(a) {
+            return null === a.getAttribute("value") ? "on" : a.value
+        })
+    });
+    var nc, oc, pc = n.expr.attrHandle,
+        qc = /^(?:checked|selected)$/i,
+        rc = l.getSetAttribute,
+        sc = l.input;
+    n.fn.extend({
+        attr: function(a, b) {
+            return W(this, n.attr, a, b, arguments.length > 1)
+        },
+        removeAttr: function(a) {
+            return this.each(function() {
+                n.removeAttr(this, a)
+            })
+        }
+    }), n.extend({
+        attr: function(a, b, c) {
+            var d, e, f = a.nodeType;
+            if (a && 3 !== f && 8 !== f && 2 !== f) return typeof a.getAttribute === L ? n.prop(a, b, c) : (1 === f && n.isXMLDoc(a) || (b = b.toLowerCase(), d = n.attrHooks[b] || (n.expr.match.bool.test(b) ? oc : nc)), void 0 === c ? d && "get" in d && null !== (e = d.get(a, b)) ? e : (e = n.find.attr(a, b), null == e ? void 0 : e) : null !== c ? d && "set" in d && void 0 !== (e = d.set(a, c, b)) ? e : (a.setAttribute(b, c + ""), c) : void n.removeAttr(a, b))
+        },
+        removeAttr: function(a, b) {
+            var c, d, e = 0,
+                f = b && b.match(F);
+            if (f && 1 === a.nodeType)
+                while (c = f[e++]) d = n.propFix[c] || c, n.expr.match.bool.test(c) ? sc && rc || !qc.test(c) ? a[d] = !1 : a[n.camelCase("default-" + c)] = a[d] = !1 : n.attr(a, c, ""), a.removeAttribute(rc ? c : d)
+        },
+        attrHooks: {
+            type: {
+                set: function(a, b) {
+                    if (!l.radioValue && "radio" === b && n.nodeName(a, "input")) {
+                        var c = a.value;
+                        return a.setAttribute("type", b), c && (a.value = c), b
+                    }
+                }
+            }
+        }
+    }), oc = {
+        set: function(a, b, c) {
+            return b === !1 ? n.removeAttr(a, c) : sc && rc || !qc.test(c) ? a.setAttribute(!rc && n.propFix[c] || c, c) : a[n.camelCase("default-" + c)] = a[c] = !0, c
+        }
+    }, n.each(n.expr.match.bool.source.match(/\w+/g), function(a, b) {
+        var c = pc[b] || n.find.attr;
+        pc[b] = sc && rc || !qc.test(b) ? function(a, b, d) {
+            var e, f;
+            return d || (f = pc[b], pc[b] = e, e = null != c(a, b, d) ? b.toLowerCase() : null, pc[b] = f), e
+        } : function(a, b, c) {
+            return c ? void 0 : a[n.camelCase("default-" + b)] ? b.toLowerCase() : null
+        }
+    }), sc && rc || (n.attrHooks.value = {
+        set: function(a, b, c) {
+            return n.nodeName(a, "input") ? void(a.defaultValue = b) : nc && nc.set(a, b, c)
+        }
+    }), rc || (nc = {
+        set: function(a, b, c) {
+            var d = a.getAttributeNode(c);
+            return d || a.setAttributeNode(d = a.ownerDocument.createAttribute(c)), d.value = b += "", "value" === c || b === a.getAttribute(c) ? b : void 0
+        }
+    }, pc.id = pc.name = pc.coords = function(a, b, c) {
+        var d;
+        return c ? void 0 : (d = a.getAttributeNode(b)) && "" !== d.value ? d.value : null
+    }, n.valHooks.button = {
+        get: function(a, b) {
+            var c = a.getAttributeNode(b);
+            return c && c.specified ? c.value : void 0
+        },
+        set: nc.set
+    }, n.attrHooks.contenteditable = {
+        set: function(a, b, c) {
+            nc.set(a, "" === b ? !1 : b, c)
+        }
+    }, n.each(["width", "height"], function(a, b) {
+        n.attrHooks[b] = {
+            set: function(a, c) {
+                return "" === c ? (a.setAttribute(b, "auto"), c) : void 0
+            }
+        }
+    })), l.style || (n.attrHooks.style = {
+        get: function(a) {
+            return a.style.cssText || void 0
+        },
+        set: function(a, b) {
+            return a.style.cssText = b + ""
+        }
+    });
+    var tc = /^(?:input|select|textarea|button|object)$/i,
+        uc = /^(?:a|area)$/i;
+    n.fn.extend({
+        prop: function(a, b) {
+            return W(this, n.prop, a, b, arguments.length > 1)
+        },
+        removeProp: function(a) {
+            return a = n.propFix[a] || a, this.each(function() {
+                try {
+                    this[a] = void 0, delete this[a]
+                } catch (b) {}
+            })
+        }
+    }), n.extend({
+        propFix: {
+            "for": "htmlFor",
+            "class": "className"
+        },
+        prop: function(a, b, c) {
+            var d, e, f, g = a.nodeType;
+            if (a && 3 !== g && 8 !== g && 2 !== g) return f = 1 !== g || !n.isXMLDoc(a), f && (b = n.propFix[b] || b, e = n.propHooks[b]), void 0 !== c ? e && "set" in e && void 0 !== (d = e.set(a, c, b)) ? d : a[b] = c : e && "get" in e && null !== (d = e.get(a, b)) ? d : a[b]
+        },
+        propHooks: {
+            tabIndex: {
+                get: function(a) {
+                    var b = n.find.attr(a, "tabindex");
+                    return b ? parseInt(b, 10) : tc.test(a.nodeName) || uc.test(a.nodeName) && a.href ? 0 : -1
+                }
+            }
+        }
+    }), l.hrefNormalized || n.each(["href", "src"], function(a, b) {
+        n.propHooks[b] = {
+            get: function(a) {
+                return a.getAttribute(b, 4)
+            }
+        }
+    }), l.optSelected || (n.propHooks.selected = {
+        get: function(a) {
+            var b = a.parentNode;
+            return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null
+        }
+    }), n.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() {
+        n.propFix[this.toLowerCase()] = this
+    }), l.enctype || (n.propFix.enctype = "encoding");
+    var vc = /[\t\r\n\f]/g;
+    n.fn.extend({
+        addClass: function(a) {
+            var b, c, d, e, f, g, h = 0,
+                i = this.length,
+                j = "string" == typeof a && a;
+            if (n.isFunction(a)) return this.each(function(b) {
+                n(this).addClass(a.call(this, b, this.className))
+            });
+            if (j)
+                for (b = (a || "").match(F) || []; i > h; h++)
+                    if (c = this[h], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(vc, " ") : " ")) {
+                        f = 0;
+                        while (e = b[f++]) d.indexOf(" " + e + " ") < 0 && (d += e + " ");
+                        g = n.trim(d), c.className !== g && (c.className = g)
+                    }
+            return this
+        },
+        removeClass: function(a) {
+            var b, c, d, e, f, g, h = 0,
+                i = this.length,
+                j = 0 === arguments.length || "string" == typeof a && a;
+            if (n.isFunction(a)) return this.each(function(b) {
+                n(this).removeClass(a.call(this, b, this.className))
+            });
+            if (j)
+                for (b = (a || "").match(F) || []; i > h; h++)
+                    if (c = this[h], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(vc, " ") : "")) {
+                        f = 0;
+                        while (e = b[f++])
+                            while (d.indexOf(" " + e + " ") >= 0) d = d.replace(" " + e + " ", " ");
+                        g = a ? n.trim(d) : "", c.className !== g && (c.className = g)
+                    }
+            return this
+        },
+        toggleClass: function(a, b) {
+            var c = typeof a;
+            return "boolean" == typeof b && "string" === c ? b ? this.addClass(a) : this.removeClass(a) : this.each(n.isFunction(a) ? function(c) {
+                n(this).toggleClass(a.call(this, c, this.className, b), b)
+            } : function() {
+                if ("string" === c) {
+                    var b, d = 0,
+                        e = n(this),
+                        f = a.match(F) || [];
+                    while (b = f[d++]) e.hasClass(b) ? e.removeClass(b) : e.addClass(b)
+                } else(c === L || "boolean" === c) && (this.className && n._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : n._data(this, "__className__") || "")
+            })
+        },
+        hasClass: function(a) {
+            for (var b = " " + a + " ", c = 0, d = this.length; d > c; c++)
+                if (1 === this[c].nodeType && (" " + this[c].className + " ").replace(vc, " ").indexOf(b) >= 0) return !0;
+            return !1
+        }
+    }), n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(a, b) {
+        n.fn[b] = function(a, c) {
+            return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b)
+        }
+    }), n.fn.extend({
+        hover: function(a, b) {
+            return this.mouseenter(a).mouseleave(b || a)
+        },
+        bind: function(a, b, c) {
+            return this.on(a, null, b, c)
+        },
+        unbind: function(a, b) {
+            return this.off(a, null, b)
+        },
+        delegate: function(a, b, c, d) {
+            return this.on(b, a, c, d)
+        },
+        undelegate: function(a, b, c) {
+            return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", c)
+        }
+    });
+    var wc = n.now(),
+        xc = /\?/,
+        yc = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;
+    n.parseJSON = function(b) {
+        if (a.JSON && a.JSON.parse) return a.JSON.parse(b + "");
+        var c, d = null,
+            e = n.trim(b + "");
+        return e && !n.trim(e.replace(yc, function(a, b, e, f) {
+            return c && b && (d = 0), 0 === d ? a : (c = e || b, d += !f - !e, "")
+        })) ? Function("return " + e)() : n.error("Invalid JSON: " + b)
+    }, n.parseXML = function(b) {
+        var c, d;
+        if (!b || "string" != typeof b) return null;
+        try {
+            a.DOMParser ? (d = new DOMParser, c = d.parseFromString(b, "text/xml")) : (c = new ActiveXObject("Microsoft.XMLDOM"), c.async = "false", c.loadXML(b))
+        } catch (e) {
+            c = void 0
+        }
+        return c && c.documentElement && !c.getElementsByTagName("parsererror").length || n.error("Invalid XML: " + b), c
+    };
+    var zc, Ac, Bc = /#.*$/,
+        Cc = /([?&])_=[^&]*/,
+        Dc = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
+        Ec = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
+        Fc = /^(?:GET|HEAD)$/,
+        Gc = /^\/\//,
+        Hc = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
+        Ic = {},
+        Jc = {},
+        Kc = "*/".concat("*");
+    try {
+        Ac = location.href
+    } catch (Lc) {
+        Ac = z.createElement("a"), Ac.href = "", Ac = Ac.href
+    }
+    zc = Hc.exec(Ac.toLowerCase()) || [];
+
+    function Mc(a) {
+        return function(b, c) {
+            "string" != typeof b && (c = b, b = "*");
+            var d, e = 0,
+                f = b.toLowerCase().match(F) || [];
+            if (n.isFunction(c))
+                while (d = f[e++]) "+" === d.charAt(0) ? (d = d.slice(1) || "*", (a[d] = a[d] || []).unshift(c)) : (a[d] = a[d] || []).push(c)
+        }
+    }
+
+    function Nc(a, b, c, d) {
+        var e = {},
+            f = a === Jc;
+
+        function g(h) {
+            var i;
+            return e[h] = !0, n.each(a[h] || [], function(a, h) {
+                var j = h(b, c, d);
+                return "string" != typeof j || f || e[j] ? f ? !(i = j) : void 0 : (b.dataTypes.unshift(j), g(j), !1)
+            }), i
+        }
+        return g(b.dataTypes[0]) || !e["*"] && g("*")
+    }
+
+    function Oc(a, b) {
+        var c, d, e = n.ajaxSettings.flatOptions || {};
+        for (d in b) void 0 !== b[d] && ((e[d] ? a : c || (c = {}))[d] = b[d]);
+        return c && n.extend(!0, a, c), a
+    }
+
+    function Pc(a, b, c) {
+        var d, e, f, g, h = a.contents,
+            i = a.dataTypes;
+        while ("*" === i[0]) i.shift(), void 0 === e && (e = a.mimeType || b.getResponseHeader("Content-Type"));
+        if (e)
+            for (g in h)
+                if (h[g] && h[g].test(e)) {
+                    i.unshift(g);
+                    break
+                }
+        if (i[0] in c) f = i[0];
+        else {
+            for (g in c) {
+                if (!i[0] || a.converters[g + " " + i[0]]) {
+                    f = g;
+                    break
+                }
+                d || (d = g)
+            }
+            f = f || d
+        }
+        return f ? (f !== i[0] && i.unshift(f), c[f]) : void 0
+    }
+
+    function Qc(a, b, c, d) {
+        var e, f, g, h, i, j = {},
+            k = a.dataTypes.slice();
+        if (k[1])
+            for (g in a.converters) j[g.toLowerCase()] = a.converters[g];
+        f = k.shift();
+        while (f)
+            if (a.responseFields[f] && (c[a.responseFields[f]] = b), !i && d && a.dataFilter && (b = a.dataFilter(b, a.dataType)), i = f, f = k.shift())
+                if ("*" === f) f = i;
+                else if ("*" !== i && i !== f) {
+            if (g = j[i + " " + f] || j["* " + f], !g)
+                for (e in j)
+                    if (h = e.split(" "), h[1] === f && (g = j[i + " " + h[0]] || j["* " + h[0]])) {
+                        g === !0 ? g = j[e] : j[e] !== !0 && (f = h[0], k.unshift(h[1]));
+                        break
+                    }
+            if (g !== !0)
+                if (g && a["throws"]) b = g(b);
+                else try {
+                    b = g(b)
+                } catch (l) {
+                    return {
+                        state: "parsererror",
+                        error: g ? l : "No conversion from " + i + " to " + f
+                    }
+                }
+        }
+        return {
+            state: "success",
+            data: b
+        }
+    }
+    n.extend({
+        active: 0,
+        lastModified: {},
+        etag: {},
+        ajaxSettings: {
+            url: Ac,
+            type: "GET",
+            isLocal: Ec.test(zc[1]),
+            global: !0,
+            processData: !0,
+            async: !0,
+            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+            accepts: {
+                "*": Kc,
+                text: "text/plain",
+                html: "text/html",
+                xml: "application/xml, text/xml",
+                json: "application/json, text/javascript"
+            },
+            contents: {
+                xml: /xml/,
+                html: /html/,
+                json: /json/
+            },
+            responseFields: {
+                xml: "responseXML",
+                text: "responseText",
+                json: "responseJSON"
+            },
+            converters: {
+                "* text": String,
+                "text html": !0,
+                "text json": n.parseJSON,
+                "text xml": n.parseXML
+            },
+            flatOptions: {
+                url: !0,
+                context: !0
+            }
+        },
+        ajaxSetup: function(a, b) {
+            return b ? Oc(Oc(a, n.ajaxSettings), b) : Oc(n.ajaxSettings, a)
+        },
+        ajaxPrefilter: Mc(Ic),
+        ajaxTransport: Mc(Jc),
+        ajax: function(a, b) {
+            "object" == typeof a && (b = a, a = void 0), b = b || {};
+            var c, d, e, f, g, h, i, j, k = n.ajaxSetup({}, b),
+                l = k.context || k,
+                m = k.context && (l.nodeType || l.jquery) ? n(l) : n.event,
+                o = n.Deferred(),
+                p = n.Callbacks("once memory"),
+                q = k.statusCode || {},
+                r = {},
+                s = {},
+                t = 0,
+                u = "canceled",
+                v = {
+                    readyState: 0,
+                    getResponseHeader: function(a) {
+                        var b;
+                        if (2 === t) {
+                            if (!j) {
+                                j = {};
+                                while (b = Dc.exec(f)) j[b[1].toLowerCase()] = b[2]
+                            }
+                            b = j[a.toLowerCase()]
+                        }
+                        return null == b ? null : b
+                    },
+                    getAllResponseHeaders: function() {
+                        return 2 === t ? f : null
+                    },
+                    setRequestHeader: function(a, b) {
+                        var c = a.toLowerCase();
+                        return t || (a = s[c] = s[c] || a, r[a] = b), this
+                    },
+                    overrideMimeType: function(a) {
+                        return t || (k.mimeType = a), this
+                    },
+                    statusCode: function(a) {
+                        var b;
+                        if (a)
+                            if (2 > t)
+                                for (b in a) q[b] = [q[b], a[b]];
+                            else v.always(a[v.status]);
+                        return this
+                    },
+                    abort: function(a) {
+                        var b = a || u;
+                        return i && i.abort(b), x(0, b), this
+                    }
+                };
+            if (o.promise(v).complete = p.add, v.success = v.done, v.error = v.fail, k.url = ((a || k.url || Ac) + "").replace(Bc, "").replace(Gc, zc[1] + "//"), k.type = b.method || b.type || k.method || k.type, k.dataTypes = n.trim(k.dataType || "*").toLowerCase().match(F) || [""], null == k.crossDomain && (c = Hc.exec(k.url.toLowerCase()), k.crossDomain = !(!c || c[1] === zc[1] && c[2] === zc[2] && (c[3] || ("http:" === c[1] ? "80" : "443")) === (zc[3] || ("http:" === zc[1] ? "80" : "443")))), k.data && k.processData && "string" != typeof k.data && (k.data = n.param(k.data, k.traditional)), Nc(Ic, k, b, v), 2 === t) return v;
+            h = k.global, h && 0 === n.active++ && n.event.trigger("ajaxStart"), k.type = k.type.toUpperCase(), k.hasContent = !Fc.test(k.type), e = k.url, k.hasContent || (k.data && (e = k.url += (xc.test(e) ? "&" : "?") + k.data, delete k.data), k.cache === !1 && (k.url = Cc.test(e) ? e.replace(Cc, "$1_=" + wc++) : e + (xc.test(e) ? "&" : "?") + "_=" + wc++)), k.ifModified && (n.lastModified[e] && v.setRequestHeader("If-Modified-Since", n.lastModified[e]), n.etag[e] && v.setRequestHeader("If-None-Match", n.etag[e])), (k.data && k.hasContent && k.contentType !== !1 || b.contentType) && v.setRequestHeader("Content-Type", k.contentType), v.setRequestHeader("Accept", k.dataTypes[0] && k.accepts[k.dataTypes[0]] ? k.accepts[k.dataTypes[0]] + ("*" !== k.dataTypes[0] ? ", " + Kc + "; q=0.01" : "") : k.accepts["*"]);
+            for (d in k.headers) v.setRequestHeader(d, k.headers[d]);
+            if (k.beforeSend && (k.beforeSend.call(l, v, k) === !1 || 2 === t)) return v.abort();
+            u = "abort";
+            for (d in {
+                    success: 1,
+                    error: 1,
+                    complete: 1
+                }) v[d](k[d]);
+            if (i = Nc(Jc, k, b, v)) {
+                v.readyState = 1, h && m.trigger("ajaxSend", [v, k]), k.async && k.timeout > 0 && (g = setTimeout(function() {
+                    v.abort("timeout")
+                }, k.timeout));
+                try {
+                    t = 1, i.send(r, x)
+                } catch (w) {
+                    if (!(2 > t)) throw w;
+                    x(-1, w)
+                }
+            } else x(-1, "No Transport");
+
+            function x(a, b, c, d) {
+                var j, r, s, u, w, x = b;
+                2 !== t && (t = 2, g && clearTimeout(g), i = void 0, f = d || "", v.readyState = a > 0 ? 4 : 0, j = a >= 200 && 300 > a || 304 === a, c && (u = Pc(k, v, c)), u = Qc(k, u, v, j), j ? (k.ifModified && (w = v.getResponseHeader("Last-Modified"), w && (n.lastModified[e] = w), w = v.getResponseHeader("etag"), w && (n.etag[e] = w)), 204 === a || "HEAD" === k.type ? x = "nocontent" : 304 === a ? x = "notmodified" : (x = u.state, r = u.data, s = u.error, j = !s)) : (s = x, (a || !x) && (x = "error", 0 > a && (a = 0))), v.status = a, v.statusText = (b || x) + "", j ? o.resolveWith(l, [r, x, v]) : o.rejectWith(l, [v, x, s]), v.statusCode(q), q = void 0, h && m.trigger(j ? "ajaxSuccess" : "ajaxError", [v, k, j ? r : s]), p.fireWith(l, [v, x]), h && (m.trigger("ajaxComplete", [v, k]), --n.active || n.event.trigger("ajaxStop")))
+            }
+            return v
+        },
+        getJSON: function(a, b, c) {
+            return n.get(a, b, c, "json")
+        },
+        getScript: function(a, b) {
+            return n.get(a, void 0, b, "script")
+        }
+    }), n.each(["get", "post"], function(a, b) {
+        n[b] = function(a, c, d, e) {
+            return n.isFunction(c) && (e = e || d, d = c, c = void 0), n.ajax({
+                url: a,
+                type: b,
+                dataType: e,
+                data: c,
+                success: d
+            })
+        }
+    }), n.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(a, b) {
+        n.fn[b] = function(a) {
+            return this.on(b, a)
+        }
+    }), n._evalUrl = function(a) {
+        return n.ajax({
+            url: a,
+            type: "GET",
+            dataType: "script",
+            async: !1,
+            global: !1,
+            "throws": !0
+        })
+    }, n.fn.extend({
+        wrapAll: function(a) {
+            if (n.isFunction(a)) return this.each(function(b) {
+                n(this).wrapAll(a.call(this, b))
+            });
+            if (this[0]) {
+                var b = n(a, this[0].ownerDocument).eq(0).clone(!0);
+                this[0].parentNode && b.insertBefore(this[0]), b.map(function() {
+                    var a = this;
+                    while (a.firstChild && 1 === a.firstChild.nodeType) a = a.firstChild;
+                    return a
+                }).append(this)
+            }
+            return this
+        },
+        wrapInner: function(a) {
+            return this.each(n.isFunction(a) ? function(b) {
+                n(this).wrapInner(a.call(this, b))
+            } : function() {
+                var b = n(this),
+                    c = b.contents();
+                c.length ? c.wrapAll(a) : b.append(a)
+            })
+        },
+        wrap: function(a) {
+            var b = n.isFunction(a);
+            return this.each(function(c) {
+                n(this).wrapAll(b ? a.call(this, c) : a)
+            })
+        },
+        unwrap: function() {
+            return this.parent().each(function() {
+                n.nodeName(this, "body") || n(this).replaceWith(this.childNodes)
+            }).end()
+        }
+    }), n.expr.filters.hidden = function(a) {
+        return a.offsetWidth <= 0 && a.offsetHeight <= 0 || !l.reliableHiddenOffsets() && "none" === (a.style && a.style.display || n.css(a, "display"))
+    }, n.expr.filters.visible = function(a) {
+        return !n.expr.filters.hidden(a)
+    };
+    var Rc = /%20/g,
+        Sc = /\[\]$/,
+        Tc = /\r?\n/g,
+        Uc = /^(?:submit|button|image|reset|file)$/i,
+        Vc = /^(?:input|select|textarea|keygen)/i;
+
+    function Wc(a, b, c, d) {
+        var e;
+        if (n.isArray(b)) n.each(b, function(b, e) {
+            c || Sc.test(a) ? d(a, e) : Wc(a + "[" + ("object" == typeof e ? b : "") + "]", e, c, d)
+        });
+        else if (c || "object" !== n.type(b)) d(a, b);
+        else
+            for (e in b) Wc(a + "[" + e + "]", b[e], c, d)
+    }
+    n.param = function(a, b) {
+        var c, d = [],
+            e = function(a, b) {
+                b = n.isFunction(b) ? b() : null == b ? "" : b, d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
+            };
+        if (void 0 === b && (b = n.ajaxSettings && n.ajaxSettings.traditional), n.isArray(a) || a.jquery && !n.isPlainObject(a)) n.each(a, function() {
+            e(this.name, this.value)
+        });
+        else
+            for (c in a) Wc(c, a[c], b, e);
+        return d.join("&").replace(Rc, "+")
+    }, n.fn.extend({
+        serialize: function() {
+            return n.param(this.serializeArray())
+        },
+        serializeArray: function() {
+            return this.map(function() {
+                var a = n.prop(this, "elements");
+                return a ? n.makeArray(a) : this
+            }).filter(function() {
+                var a = this.type;
+                return this.name && !n(this).is(":disabled") && Vc.test(this.nodeName) && !Uc.test(a) && (this.checked || !X.test(a))
+            }).map(function(a, b) {
+                var c = n(this).val();
+                return null == c ? null : n.isArray(c) ? n.map(c, function(a) {
+                    return {
+                        name: b.name,
+                        value: a.replace(Tc, "\r\n")
+                    }
+                }) : {
+                    name: b.name,
+                    value: c.replace(Tc, "\r\n")
+                }
+            }).get()
+        }
+    }), n.ajaxSettings.xhr = void 0 !== a.ActiveXObject ? function() {
+        return !this.isLocal && /^(get|post|head|put|delete|options)$/i.test(this.type) && $c() || _c()
+    } : $c;
+    var Xc = 0,
+        Yc = {},
+        Zc = n.ajaxSettings.xhr();
+    a.ActiveXObject && n(a).on("unload", function() {
+        for (var a in Yc) Yc[a](void 0, !0)
+    }), l.cors = !!Zc && "withCredentials" in Zc, Zc = l.ajax = !!Zc, Zc && n.ajaxTransport(function(a) {
+        if (!a.crossDomain || l.cors) {
+            var b;
+            return {
+                send: function(c, d) {
+                    var e, f = a.xhr(),
+                        g = ++Xc;
+                    if (f.open(a.type, a.url, a.async, a.username, a.password), a.xhrFields)
+                        for (e in a.xhrFields) f[e] = a.xhrFields[e];
+                    a.mimeType && f.overrideMimeType && f.overrideMimeType(a.mimeType), a.crossDomain || c["X-Requested-With"] || (c["X-Requested-With"] = "XMLHttpRequest");
+                    for (e in c) void 0 !== c[e] && f.setRequestHeader(e, c[e] + "");
+                    f.send(a.hasContent && a.data || null), b = function(c, e) {
+                        var h, i, j;
+                        if (b && (e || 4 === f.readyState))
+                            if (delete Yc[g], b = void 0, f.onreadystatechange = n.noop, e) 4 !== f.readyState && f.abort();
+                            else {
+                                j = {}, h = f.status, "string" == typeof f.responseText && (j.text = f.responseText);
+                                try {
+                                    i = f.statusText
+                                } catch (k) {
+                                    i = ""
+                                }
+                                h || !a.isLocal || a.crossDomain ? 1223 === h && (h = 204) : h = j.text ? 200 : 404
+                            }
+                        j && d(h, i, j, f.getAllResponseHeaders())
+                    }, a.async ? 4 === f.readyState ? setTimeout(b) : f.onreadystatechange = Yc[g] = b : b()
+                },
+                abort: function() {
+                    b && b(void 0, !0)
+                }
+            }
+        }
+    });
+
+    function $c() {
+        try {
+            return new a.XMLHttpRequest
+        } catch (b) {}
+    }
+
+    function _c() {
+        try {
+            return new a.ActiveXObject("Microsoft.XMLHTTP")
+        } catch (b) {}
+    }
+    n.ajaxSetup({
+        accepts: {
+            script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
+        },
+        contents: {
+            script: /(?:java|ecma)script/
+        },
+        converters: {
+            "text script": function(a) {
+                return n.globalEval(a), a
+            }
+        }
+    }), n.ajaxPrefilter("script", function(a) {
+        void 0 === a.cache && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1)
+    }), n.ajaxTransport("script", function(a) {
+        if (a.crossDomain) {
+            var b, c = z.head || n("head")[0] || z.documentElement;
+            return {
+                send: function(d, e) {
+                    b = z.createElement("script"), b.async = !0, a.scriptCharset && (b.charset = a.scriptCharset), b.src = a.url, b.onload = b.onreadystatechange = function(a, c) {
+                        (c || !b.readyState || /loaded|complete/.test(b.readyState)) && (b.onload = b.onreadystatechange = null, b.parentNode && b.parentNode.removeChild(b), b = null, c || e(200, "success"))
+                    }, c.insertBefore(b, c.firstChild)
+                },
+                abort: function() {
+                    b && b.onload(void 0, !0)
+                }
+            }
+        }
+    });
+    var ad = [],
+        bd = /(=)\?(?=&|$)|\?\?/;
+    n.ajaxSetup({
+        jsonp: "callback",
+        jsonpCallback: function() {
+            var a = ad.pop() || n.expando + "_" + wc++;
+            return this[a] = !0, a
+        }
+    }), n.ajaxPrefilter("json jsonp", function(b, c, d) {
+        var e, f, g, h = b.jsonp !== !1 && (bd.test(b.url) ? "url" : "string" == typeof b.data && !(b.contentType || "").indexOf("application/x-www-form-urlencoded") && bd.test(b.data) && "data");
+        return h || "jsonp" === b.dataTypes[0] ? (e = b.jsonpCallback = n.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback, h ? b[h] = b[h].replace(bd, "$1" + e) : b.jsonp !== !1 && (b.url += (xc.test(b.url) ? "&" : "?") + b.jsonp + "=" + e), b.converters["script json"] = function() {
+            return g || n.error(e + " was not called"), g[0]
+        }, b.dataTypes[0] = "json", f = a[e], a[e] = function() {
+            g = arguments
+        }, d.always(function() {
+            a[e] = f, b[e] && (b.jsonpCallback = c.jsonpCallback, ad.push(e)), g && n.isFunction(f) && f(g[0]), g = f = void 0
+        }), "script") : void 0
+    }), n.parseHTML = function(a, b, c) {
+        if (!a || "string" != typeof a) return null;
+        "boolean" == typeof b && (c = b, b = !1), b = b || z;
+        var d = v.exec(a),
+            e = !c && [];
+        return d ? [b.createElement(d[1])] : (d = n.buildFragment([a], b, e), e && e.length && n(e).remove(), n.merge([], d.childNodes))
+    };
+    var cd = n.fn.load;
+    n.fn.load = function(a, b, c) {
+        if ("string" != typeof a && cd) return cd.apply(this, arguments);
+        var d, e, f, g = this,
+            h = a.indexOf(" ");
+        return h >= 0 && (d = a.slice(h, a.length), a = a.slice(0, h)), n.isFunction(b) ? (c = b, b = void 0) : b && "object" == typeof b && (f = "POST"), g.length > 0 && n.ajax({
+            url: a,
+            type: f,
+            dataType: "html",
+            data: b
+        }).done(function(a) {
+            e = arguments, g.html(d ? n("<div>").append(n.parseHTML(a)).find(d) : a)
+        }).complete(c && function(a, b) {
+            g.each(c, e || [a.responseText, b, a])
+        }), this
+    }, n.expr.filters.animated = function(a) {
+        return n.grep(n.timers, function(b) {
+            return a === b.elem
+        }).length
+    };
+    var dd = a.document.documentElement;
+
+    function ed(a) {
+        return n.isWindow(a) ? a : 9 === a.nodeType ? a.defaultView || a.parentWindow : !1
+    }
+    n.offset = {
+        setOffset: function(a, b, c) {
+            var d, e, f, g, h, i, j, k = n.css(a, "position"),
+                l = n(a),
+                m = {};
+            "static" === k && (a.style.position = "relative"), h = l.offset(), f = n.css(a, "top"), i = n.css(a, "left"), j = ("absolute" === k || "fixed" === k) && n.inArray("auto", [f, i]) > -1, j ? (d = l.position(), g = d.top, e = d.left) : (g = parseFloat(f) || 0, e = parseFloat(i) || 0), n.isFunction(b) && (b = b.call(a, c, h)), null != b.top && (m.top = b.top - h.top + g), null != b.left && (m.left = b.left - h.left + e), "using" in b ? b.using.call(a, m) : l.css(m)
+        }
+    }, n.fn.extend({
+        offset: function(a) {
+            if (arguments.length) return void 0 === a ? this : this.each(function(b) {
+                n.offset.setOffset(this, a, b)
+            });
+            var b, c, d = {
+                    top: 0,
+                    left: 0
+                },
+                e = this[0],
+                f = e && e.ownerDocument;
+            if (f) return b = f.documentElement, n.contains(b, e) ? (typeof e.getBoundingClientRect !== L && (d = e.getBoundingClientRect()), c = ed(f), {
+                top: d.top + (c.pageYOffset || b.scrollTop) - (b.clientTop || 0),
+                left: d.left + (c.pageXOffset || b.scrollLeft) - (b.clientLeft || 0)
+            }) : d
+        },
+        position: function() {
+            if (this[0]) {
+                var a, b, c = {
+                        top: 0,
+                        left: 0
+                    },
+                    d = this[0];
+                return "fixed" === n.css(d, "position") ? b = d.getBoundingClientRect() : (a = this.offsetParent(), b = this.offset(), n.nodeName(a[0], "html") || (c = a.offset()), c.top += n.css(a[0], "borderTopWidth", !0), c.left += n.css(a[0], "borderLeftWidth", !0)), {
+                    top: b.top - c.top - n.css(d, "marginTop", !0),
+                    left: b.left - c.left - n.css(d, "marginLeft", !0)
+                }
+            }
+        },
+        offsetParent: function() {
+            return this.map(function() {
+                var a = this.offsetParent || dd;
+                while (a && !n.nodeName(a, "html") && "static" === n.css(a, "position")) a = a.offsetParent;
+                return a || dd
+            })
+        }
+    }), n.each({
+        scrollLeft: "pageXOffset",
+        scrollTop: "pageYOffset"
+    }, function(a, b) {
+        var c = /Y/.test(b);
+        n.fn[a] = function(d) {
+            return W(this, function(a, d, e) {
+                var f = ed(a);
+                return void 0 === e ? f ? b in f ? f[b] : f.document.documentElement[d] : a[d] : void(f ? f.scrollTo(c ? n(f).scrollLeft() : e, c ? e : n(f).scrollTop()) : a[d] = e)
+            }, a, d, arguments.length, null)
+        }
+    }), n.each(["top", "left"], function(a, b) {
+        n.cssHooks[b] = Mb(l.pixelPosition, function(a, c) {
+            return c ? (c = Kb(a, b), Ib.test(c) ? n(a).position()[b] + "px" : c) : void 0
+        })
+    }), n.each({
+        Height: "height",
+        Width: "width"
+    }, function(a, b) {
+        n.each({
+            padding: "inner" + a,
+            content: b,
+            "": "outer" + a
+        }, function(c, d) {
+            n.fn[d] = function(d, e) {
+                var f = arguments.length && (c || "boolean" != typeof d),
+                    g = c || (d === !0 || e === !0 ? "margin" : "border");
+                return W(this, function(b, c, d) {
+                    var e;
+                    return n.isWindow(b) ? b.document.documentElement["client" + a] : 9 === b.nodeType ? (e = b.documentElement, Math.max(b.body["scroll" + a], e["scroll" + a], b.body["offset" + a], e["offset" + a], e["client" + a])) : void 0 === d ? n.css(b, c, g) : n.style(b, c, d, g)
+                }, b, f ? d : void 0, f, null)
+            }
+        })
+    }), n.fn.size = function() {
+        return this.length
+    }, n.fn.andSelf = n.fn.addBack, "function" == typeof define && define.amd && define("jquery", [], function() {
+        return n
+    });
+    var fd = a.jQuery,
+        gd = a.$;
+    return n.noConflict = function(b) {
+        return a.$ === n && (a.$ = gd), b && a.jQuery === n && (a.jQuery = fd), n
+    }, typeof b === L && (a.jQuery = a.$ = n), n
+});
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/assets/js/jquery.ui.js b/wrt/wrt_support/sample/launcher/assets/js/jquery.ui.js
new file mode 100755 (executable)
index 0000000..89bfca2
--- /dev/null
@@ -0,0 +1,6 @@
+/*! jQuery UI - v1.10.4 - 2014-03-19
+* http://jqueryui.com
+* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.draggable.js, jquery.ui.resizable.js
+* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
+var jQuery = require('./bower_components/jquery/dist/jquery.min.js');
+(function(e,t){function i(t,i){var s,a,o,r=t.nodeName.toLowerCase();return"area"===r?(s=t.parentNode,a=s.name,t.href&&a&&"map"===s.nodeName.toLowerCase()?(o=e("img[usemap=#"+a+"]")[0],!!o&&n(o)):!1):(/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||i:i)&&n(t)}function n(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}var s=0,a=/^ui-id-\d+$/;e.ui=e.ui||{},e.extend(e.ui,{version:"1.10.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({focus:function(t){return function(i,n){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),n&&n.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),scrollParent:function(){var t;return t=e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(i){if(i!==t)return this.css("zIndex",i);if(this.length)for(var n,s,a=e(this[0]);a.length&&a[0]!==document;){if(n=a.css("position"),("absolute"===n||"relative"===n||"fixed"===n)&&(s=parseInt(a.css("zIndex"),10),!isNaN(s)&&0!==s))return s;a=a.parent()}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++s)})},removeUniqueId:function(){return this.each(function(){a.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,n){return!!e.data(t,n[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),s=isNaN(n);return(s||n>=0)&&i(t,!s)}}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(i,n){function s(t,i,n,s){return e.each(a,function(){i-=parseFloat(e.css(t,"padding"+this))||0,n&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var a="Width"===n?["Left","Right"]:["Top","Bottom"],o=n.toLowerCase(),r={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+n]=function(i){return i===t?r["inner"+n].call(this):this.each(function(){e(this).css(o,s(this,i)+"px")})},e.fn["outer"+n]=function(t,i){return"number"!=typeof t?r["outer"+n].call(this,t):this.each(function(){e(this).css(o,s(this,t,!0,i)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.support.selectstart="onselectstart"in document.createElement("div"),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,i,n){var s,a=e.ui[t].prototype;for(s in n)a.plugins[s]=a.plugins[s]||[],a.plugins[s].push([i,n[s]])},call:function(e,t,i){var n,s=e.plugins[t];if(s&&e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType)for(n=0;s.length>n;n++)e.options[s[n][0]]&&s[n][1].apply(e.element,i)}},hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var n=i&&"left"===i?"scrollLeft":"scrollTop",s=!1;return t[n]>0?!0:(t[n]=1,s=t[n]>0,t[n]=0,s)}})})(jQuery);(function(t,e){var i=0,s=Array.prototype.slice,n=t.cleanData;t.cleanData=function(e){for(var i,s=0;null!=(i=e[s]);s++)try{t(i).triggerHandler("remove")}catch(o){}n(e)},t.widget=function(i,s,n){var o,a,r,h,l={},c=i.split(".")[0];i=i.split(".")[1],o=c+"-"+i,n||(n=s,s=t.Widget),t.expr[":"][o.toLowerCase()]=function(e){return!!t.data(e,o)},t[c]=t[c]||{},a=t[c][i],r=t[c][i]=function(t,i){return this._createWidget?(arguments.length&&this._createWidget(t,i),e):new r(t,i)},t.extend(r,a,{version:n.version,_proto:t.extend({},n),_childConstructors:[]}),h=new s,h.options=t.widget.extend({},h.options),t.each(n,function(i,n){return t.isFunction(n)?(l[i]=function(){var t=function(){return s.prototype[i].apply(this,arguments)},e=function(t){return s.prototype[i].apply(this,t)};return function(){var i,s=this._super,o=this._superApply;return this._super=t,this._superApply=e,i=n.apply(this,arguments),this._super=s,this._superApply=o,i}}(),e):(l[i]=n,e)}),r.prototype=t.widget.extend(h,{widgetEventPrefix:a?h.widgetEventPrefix||i:i},l,{constructor:r,namespace:c,widgetName:i,widgetFullName:o}),a?(t.each(a._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,r,i._proto)}),delete a._childConstructors):s._childConstructors.push(r),t.widget.bridge(i,r)},t.widget.extend=function(i){for(var n,o,a=s.call(arguments,1),r=0,h=a.length;h>r;r++)for(n in a[r])o=a[r][n],a[r].hasOwnProperty(n)&&o!==e&&(i[n]=t.isPlainObject(o)?t.isPlainObject(i[n])?t.widget.extend({},i[n],o):t.widget.extend({},o):o);return i},t.widget.bridge=function(i,n){var o=n.prototype.widgetFullName||i;t.fn[i]=function(a){var r="string"==typeof a,h=s.call(arguments,1),l=this;return a=!r&&h.length?t.widget.extend.apply(null,[a].concat(h)):a,r?this.each(function(){var s,n=t.data(this,o);return n?t.isFunction(n[a])&&"_"!==a.charAt(0)?(s=n[a].apply(n,h),s!==n&&s!==e?(l=s&&s.jquery?l.pushStack(s.get()):s,!1):e):t.error("no such method '"+a+"' for "+i+" widget instance"):t.error("cannot call methods on "+i+" prior to initialization; "+"attempted to call method '"+a+"'")}):this.each(function(){var e=t.data(this,o);e?e.option(a||{})._init():t.data(this,o,new n(a,this))}),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this.bindings=t(),this.hoverable=t(),this.focusable=t(),s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:t.noop,_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(t.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:t.noop,widget:function(){return this.element},option:function(i,s){var n,o,a,r=i;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof i)if(r={},n=i.split("."),i=n.shift(),n.length){for(o=r[i]=t.widget.extend({},this.options[i]),a=0;n.length-1>a;a++)o[n[a]]=o[n[a]]||{},o=o[n[a]];if(i=n.pop(),1===arguments.length)return o[i]===e?null:o[i];o[i]=s}else{if(1===arguments.length)return this.options[i]===e?null:this.options[i];r[i]=s}return this._setOptions(r),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return this.options[t]=e,"disabled"===t&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!e).attr("aria-disabled",e),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(i,s,n){var o,a=this;"boolean"!=typeof i&&(n=s,s=i,i=!1),n?(s=o=t(s),this.bindings=this.bindings.add(s)):(n=s,s=this.element,o=this.widget()),t.each(n,function(n,r){function h(){return i||a.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof r?a[r]:r).apply(a,arguments):e}"string"!=typeof r&&(h.guid=r.guid=r.guid||h.guid||t.guid++);var l=n.match(/^(\w+)\s*(.*)$/),c=l[1]+a.eventNamespace,u=l[2];u?o.delegate(u,c,h):s.bind(c,h)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.unbind(e).undelegate(e)},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){t(e.currentTarget).addClass("ui-state-hover")},mouseleave:function(e){t(e.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){t(e.currentTarget).addClass("ui-state-focus")},focusout:function(e){t(e.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}})})(jQuery);(function(t){var e=!1;t(document).mouseup(function(){e=!1}),t.widget("ui.mouse",{version:"1.10.4",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.bind("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).bind("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):undefined}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&t(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(i){if(!e){this._mouseStarted&&this._mouseUp(i),this._mouseDownEvent=i;var s=this,n=1===i.which,a="string"==typeof this.options.cancel&&i.target.nodeName?t(i.target).closest(this.options.cancel).length:!1;return n&&!a&&this._mouseCapture(i)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){s.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(i)&&this._mouseDelayMet(i)&&(this._mouseStarted=this._mouseStart(i)!==!1,!this._mouseStarted)?(i.preventDefault(),!0):(!0===t.data(i.target,this.widgetName+".preventClickEvent")&&t.removeData(i.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return s._mouseMove(t)},this._mouseUpDelegate=function(t){return s._mouseUp(t)},t(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),i.preventDefault(),e=!0,!0)):!0}},_mouseMove:function(e){return t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button?this._mouseUp(e):this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){return t(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),!1},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})(jQuery);(function(t,e){function i(t,e,i){return[parseFloat(t[0])*(p.test(t[0])?e/100:1),parseFloat(t[1])*(p.test(t[1])?i/100:1)]}function s(e,i){return parseInt(t.css(e,i),10)||0}function n(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}t.ui=t.ui||{};var a,o=Math.max,r=Math.abs,l=Math.round,h=/left|center|right/,c=/top|center|bottom/,u=/[\+\-]\d+(\.[\d]+)?%?/,d=/^\w+/,p=/%$/,f=t.fn.position;t.position={scrollbarWidth:function(){if(a!==e)return a;var i,s,n=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=n.children()[0];return t("body").append(n),i=o.offsetWidth,n.css("overflow","scroll"),s=o.offsetWidth,i===s&&(s=n[0].clientWidth),n.remove(),a=i-s},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.width<e.element[0].scrollWidth,a="scroll"===s||"auto"===s&&e.height<e.element[0].scrollHeight;return{width:a?t.position.scrollbarWidth():0,height:n?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var i=t(e||window),s=t.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType;return{element:i,isWindow:s,isDocument:n,offset:i.offset()||{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:s?i.width():i.outerWidth(),height:s?i.height():i.outerHeight()}}},t.fn.position=function(e){if(!e||!e.of)return f.apply(this,arguments);e=t.extend({},e);var a,p,g,m,v,_,b=t(e.of),y=t.position.getWithinInfo(e.within),k=t.position.getScrollInfo(y),w=(e.collision||"flip").split(" "),D={};return _=n(b),b[0].preventDefault&&(e.at="left top"),p=_.width,g=_.height,m=_.offset,v=t.extend({},m),t.each(["my","at"],function(){var t,i,s=(e[this]||"").split(" ");1===s.length&&(s=h.test(s[0])?s.concat(["center"]):c.test(s[0])?["center"].concat(s):["center","center"]),s[0]=h.test(s[0])?s[0]:"center",s[1]=c.test(s[1])?s[1]:"center",t=u.exec(s[0]),i=u.exec(s[1]),D[this]=[t?t[0]:0,i?i[0]:0],e[this]=[d.exec(s[0])[0],d.exec(s[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===e.at[0]?v.left+=p:"center"===e.at[0]&&(v.left+=p/2),"bottom"===e.at[1]?v.top+=g:"center"===e.at[1]&&(v.top+=g/2),a=i(D.at,p,g),v.left+=a[0],v.top+=a[1],this.each(function(){var n,h,c=t(this),u=c.outerWidth(),d=c.outerHeight(),f=s(this,"marginLeft"),_=s(this,"marginTop"),x=u+f+s(this,"marginRight")+k.width,C=d+_+s(this,"marginBottom")+k.height,M=t.extend({},v),T=i(D.my,c.outerWidth(),c.outerHeight());"right"===e.my[0]?M.left-=u:"center"===e.my[0]&&(M.left-=u/2),"bottom"===e.my[1]?M.top-=d:"center"===e.my[1]&&(M.top-=d/2),M.left+=T[0],M.top+=T[1],t.support.offsetFractions||(M.left=l(M.left),M.top=l(M.top)),n={marginLeft:f,marginTop:_},t.each(["left","top"],function(i,s){t.ui.position[w[i]]&&t.ui.position[w[i]][s](M,{targetWidth:p,targetHeight:g,elemWidth:u,elemHeight:d,collisionPosition:n,collisionWidth:x,collisionHeight:C,offset:[a[0]+T[0],a[1]+T[1]],my:e.my,at:e.at,within:y,elem:c})}),e.using&&(h=function(t){var i=m.left-M.left,s=i+p-u,n=m.top-M.top,a=n+g-d,l={target:{element:b,left:m.left,top:m.top,width:p,height:g},element:{element:c,left:M.left,top:M.top,width:u,height:d},horizontal:0>s?"left":i>0?"right":"center",vertical:0>a?"top":n>0?"bottom":"middle"};u>p&&p>r(i+s)&&(l.horizontal="center"),d>g&&g>r(n+a)&&(l.vertical="middle"),l.important=o(r(i),r(s))>o(r(n),r(a))?"horizontal":"vertical",e.using.call(this,t,l)}),c.offset(t.extend(M,{using:h}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,l=n-r,h=r+e.collisionWidth-a-n;e.collisionWidth>a?l>0&&0>=h?(i=t.left+l+e.collisionWidth-a-n,t.left+=l-i):t.left=h>0&&0>=l?n:l>h?n+a-e.collisionWidth:n:l>0?t.left+=l:h>0?t.left-=h:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,l=n-r,h=r+e.collisionHeight-a-n;e.collisionHeight>a?l>0&&0>=h?(i=t.top+l+e.collisionHeight-a-n,t.top+=l-i):t.top=h>0&&0>=l?n:l>h?n+a-e.collisionHeight:n:l>0?t.top+=l:h>0?t.top-=h:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,a=n.offset.left+n.scrollLeft,o=n.width,l=n.isWindow?n.scrollLeft:n.offset.left,h=t.left-e.collisionPosition.marginLeft,c=h-l,u=h+e.collisionWidth-o-l,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-o-a,(0>i||r(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-l,(s>0||u>r(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,a=n.offset.top+n.scrollTop,o=n.height,l=n.isWindow?n.scrollTop:n.offset.top,h=t.top-e.collisionPosition.marginTop,c=h-l,u=h+e.collisionHeight-o-l,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,g=-2*e.offset[1];0>c?(s=t.top+p+f+g+e.collisionHeight-o-a,t.top+p+f+g>c&&(0>s||r(c)>s)&&(t.top+=p+f+g)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+g-l,t.top+p+f+g>u&&(i>0||u>r(i))&&(t.top+=p+f+g))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}},function(){var e,i,s,n,a,o=document.getElementsByTagName("body")[0],r=document.createElement("div");e=document.createElement(o?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},o&&t.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(a in s)e.style[a]=s[a];e.appendChild(r),i=o||document.documentElement,i.insertBefore(e,i.firstChild),r.style.cssText="position: absolute; left: 10.7432222px;",n=t(r).offset().left,t.support.offsetFractions=n>10&&11>n,e.innerHTML="",i.removeChild(e)}()})(jQuery);(function(t){t.widget("ui.draggable",t.ui.mouse,{version:"1.10.4",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},_destroy:function(){this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy()},_mouseCapture:function(e){var i=this.options;return this.helper||i.disabled||t(e.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(e),this.handle?(t(i.iframeFix===!0?"iframe":i.iframeFix).each(function(){t("<div class='ui-draggable-iframeFix' style='background: #fff;'></div>").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(t(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(e){var i=this.options;return this.helper=this._createHelper(e),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),t.ui.ddmanager&&(t.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,t.extend(this.offset,{click:{left:e.pageX-this.offset.left,top:e.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(e),this.originalPageX=e.pageX,this.originalPageY=e.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",e)===!1?(this._clear(),!1):(this._cacheHelperProportions(),t.ui.ddmanager&&!i.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e),this._mouseDrag(e,!0),t.ui.ddmanager&&t.ui.ddmanager.dragStart(this,e),!0)},_mouseDrag:function(e,i){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(e),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",e,s)===!1)return this._mouseUp({}),!1;this.position=s.position}return this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),t.ui.ddmanager&&t.ui.ddmanager.drag(this,e),!1},_mouseStop:function(e){var i=this,s=!1;return t.ui.ddmanager&&!this.options.dropBehaviour&&(s=t.ui.ddmanager.drop(this,e)),this.dropped&&(s=this.dropped,this.dropped=!1),"original"!==this.options.helper||t.contains(this.element[0].ownerDocument,this.element[0])?("invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||t.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?t(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",e)!==!1&&i._clear()}):this._trigger("stop",e)!==!1&&this._clear(),!1):!1},_mouseUp:function(e){return t("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),t.ui.ddmanager&&t.ui.ddmanager.dragStop(this,e),t.ui.mouse.prototype._mouseUp.call(this,e)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(e){return this.options.handle?!!t(e.target).closest(this.element.find(this.options.handle)).length:!0},_createHelper:function(e){var i=this.options,s=t.isFunction(i.helper)?t(i.helper.apply(this.element[0],[e])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return s.parents("body").length||s.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s[0]===this.element[0]||/(fixed|absolute)/.test(s.css("position"))||s.css("position","absolute"),s},_adjustOffsetFromHelper:function(e){"string"==typeof e&&(e=e.split(" ")),t.isArray(e)&&(e={left:+e[0],top:+e[1]||0}),"left"in e&&(this.offset.click.left=e.left+this.margins.left),"right"in e&&(this.offset.click.left=this.helperProportions.width-e.right+this.margins.left),"top"in e&&(this.offset.click.top=e.top+this.margins.top),"bottom"in e&&(this.offset.click.top=this.helperProportions.height-e.bottom+this.margins.top)},_getParentOffset:function(){var e=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])&&(e.left+=this.scrollParent.scrollLeft(),e.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&t.ui.ie)&&(e={top:0,left:0}),{top:e.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:e.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var t=this.element.position();return{top:t.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:t.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e,i,s,n=this.options;return n.containment?"window"===n.containment?(this.containment=[t(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,t(window).scrollLeft()+t(window).width()-this.helperProportions.width-this.margins.left,t(window).scrollTop()+(t(window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],undefined):"document"===n.containment?(this.containment=[0,0,t(document).width()-this.helperProportions.width-this.margins.left,(t(document).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],undefined):n.containment.constructor===Array?(this.containment=n.containment,undefined):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=t(n.containment),s=i[0],s&&(e="hidden"!==i.css("overflow"),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(e?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(e?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=i),undefined):(this.containment=null,undefined)},_convertPositionTo:function(e,i){i||(i=this.position);var s="absolute"===e?1:-1,n="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent;return this.offset.scroll||(this.offset.scroll={top:n.scrollTop(),left:n.scrollLeft()}),{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top)*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)*s}},_generatePosition:function(e){var i,s,n,a,o=this.options,r="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,l=e.pageX,h=e.pageY;return this.offset.scroll||(this.offset.scroll={top:r.scrollTop(),left:r.scrollLeft()}),this.originalPosition&&(this.containment&&(this.relative_container?(s=this.relative_container.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,e.pageX-this.offset.click.left<i[0]&&(l=i[0]+this.offset.click.left),e.pageY-this.offset.click.top<i[1]&&(h=i[1]+this.offset.click.top),e.pageX-this.offset.click.left>i[2]&&(l=i[2]+this.offset.click.left),e.pageY-this.offset.click.top>i[3]&&(h=i[3]+this.offset.click.top)),o.grid&&(n=o.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/o.grid[1])*o.grid[1]:this.originalPageY,h=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-o.grid[1]:n+o.grid[1]:n,a=o.grid[0]?this.originalPageX+Math.round((l-this.originalPageX)/o.grid[0])*o.grid[0]:this.originalPageX,l=i?a-this.offset.click.left>=i[0]||a-this.offset.click.left>i[2]?a:a-this.offset.click.left>=i[0]?a-o.grid[0]:a+o.grid[0]:a)),{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top),left:l-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(e,i,s){return s=s||this._uiHash(),t.ui.plugin.call(this,e,[i,s]),"drag"===e&&(this.positionAbs=this._convertPositionTo("absolute")),t.Widget.prototype._trigger.call(this,e,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),t.ui.plugin.add("draggable","connectToSortable",{start:function(e,i){var s=t(this).data("ui-draggable"),n=s.options,a=t.extend({},i,{item:s.element});s.sortables=[],t(n.connectToSortable).each(function(){var i=t.data(this,"ui-sortable");i&&!i.options.disabled&&(s.sortables.push({instance:i,shouldRevert:i.options.revert}),i.refreshPositions(),i._trigger("activate",e,a))})},stop:function(e,i){var s=t(this).data("ui-draggable"),n=t.extend({},i,{item:s.element});t.each(s.sortables,function(){this.instance.isOver?(this.instance.isOver=0,s.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(e),this.instance.options.helper=this.instance.options._helper,"original"===s.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",e,n))})},drag:function(e,i){var s=t(this).data("ui-draggable"),n=this;t.each(s.sortables,function(){var a=!1,o=this;this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(a=!0,t.each(s.sortables,function(){return this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this!==o&&this.instance._intersectsWith(this.instance.containerCache)&&t.contains(o.instance.element[0],this.instance.element[0])&&(a=!1),a})),a?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=t(n).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return i.helper[0]},e.target=this.instance.currentItem[0],this.instance._mouseCapture(e,!0),this.instance._mouseStart(e,!0,!0),this.instance.offset.click.top=s.offset.click.top,this.instance.offset.click.left=s.offset.click.left,this.instance.offset.parent.left-=s.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=s.offset.parent.top-this.instance.offset.parent.top,s._trigger("toSortable",e),s.dropped=this.instance.element,s.currentItem=s.element,this.instance.fromOutside=s),this.instance.currentItem&&this.instance._mouseDrag(e)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",e,this.instance._uiHash(this.instance)),this.instance._mouseStop(e,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),s._trigger("fromSortable",e),s.dropped=!1)})}}),t.ui.plugin.add("draggable","cursor",{start:function(){var e=t("body"),i=t(this).data("ui-draggable").options;e.css("cursor")&&(i._cursor=e.css("cursor")),e.css("cursor",i.cursor)},stop:function(){var e=t(this).data("ui-draggable").options;e._cursor&&t("body").css("cursor",e._cursor)}}),t.ui.plugin.add("draggable","opacity",{start:function(e,i){var s=t(i.helper),n=t(this).data("ui-draggable").options;s.css("opacity")&&(n._opacity=s.css("opacity")),s.css("opacity",n.opacity)},stop:function(e,i){var s=t(this).data("ui-draggable").options;s._opacity&&t(i.helper).css("opacity",s._opacity)}}),t.ui.plugin.add("draggable","scroll",{start:function(){var e=t(this).data("ui-draggable");e.scrollParent[0]!==document&&"HTML"!==e.scrollParent[0].tagName&&(e.overflowOffset=e.scrollParent.offset())},drag:function(e){var i=t(this).data("ui-draggable"),s=i.options,n=!1;i.scrollParent[0]!==document&&"HTML"!==i.scrollParent[0].tagName?(s.axis&&"x"===s.axis||(i.overflowOffset.top+i.scrollParent[0].offsetHeight-e.pageY<s.scrollSensitivity?i.scrollParent[0].scrollTop=n=i.scrollParent[0].scrollTop+s.scrollSpeed:e.pageY-i.overflowOffset.top<s.scrollSensitivity&&(i.scrollParent[0].scrollTop=n=i.scrollParent[0].scrollTop-s.scrollSpeed)),s.axis&&"y"===s.axis||(i.overflowOffset.left+i.scrollParent[0].offsetWidth-e.pageX<s.scrollSensitivity?i.scrollParent[0].scrollLeft=n=i.scrollParent[0].scrollLeft+s.scrollSpeed:e.pageX-i.overflowOffset.left<s.scrollSensitivity&&(i.scrollParent[0].scrollLeft=n=i.scrollParent[0].scrollLeft-s.scrollSpeed))):(s.axis&&"x"===s.axis||(e.pageY-t(document).scrollTop()<s.scrollSensitivity?n=t(document).scrollTop(t(document).scrollTop()-s.scrollSpeed):t(window).height()-(e.pageY-t(document).scrollTop())<s.scrollSensitivity&&(n=t(document).scrollTop(t(document).scrollTop()+s.scrollSpeed))),s.axis&&"y"===s.axis||(e.pageX-t(document).scrollLeft()<s.scrollSensitivity?n=t(document).scrollLeft(t(document).scrollLeft()-s.scrollSpeed):t(window).width()-(e.pageX-t(document).scrollLeft())<s.scrollSensitivity&&(n=t(document).scrollLeft(t(document).scrollLeft()+s.scrollSpeed)))),n!==!1&&t.ui.ddmanager&&!s.dropBehaviour&&t.ui.ddmanager.prepareOffsets(i,e)}}),t.ui.plugin.add("draggable","snap",{start:function(){var e=t(this).data("ui-draggable"),i=e.options;e.snapElements=[],t(i.snap.constructor!==String?i.snap.items||":data(ui-draggable)":i.snap).each(function(){var i=t(this),s=i.offset();this!==e.element[0]&&e.snapElements.push({item:this,width:i.outerWidth(),height:i.outerHeight(),top:s.top,left:s.left})})},drag:function(e,i){var s,n,a,o,r,l,h,c,u,d,p=t(this).data("ui-draggable"),g=p.options,f=g.snapTolerance,m=i.offset.left,_=m+p.helperProportions.width,v=i.offset.top,b=v+p.helperProportions.height;for(u=p.snapElements.length-1;u>=0;u--)r=p.snapElements[u].left,l=r+p.snapElements[u].width,h=p.snapElements[u].top,c=h+p.snapElements[u].height,r-f>_||m>l+f||h-f>b||v>c+f||!t.contains(p.snapElements[u].item.ownerDocument,p.snapElements[u].item)?(p.snapElements[u].snapping&&p.options.snap.release&&p.options.snap.release.call(p.element,e,t.extend(p._uiHash(),{snapItem:p.snapElements[u].item})),p.snapElements[u].snapping=!1):("inner"!==g.snapMode&&(s=f>=Math.abs(h-b),n=f>=Math.abs(c-v),a=f>=Math.abs(r-_),o=f>=Math.abs(l-m),s&&(i.position.top=p._convertPositionTo("relative",{top:h-p.helperProportions.height,left:0}).top-p.margins.top),n&&(i.position.top=p._convertPositionTo("relative",{top:c,left:0}).top-p.margins.top),a&&(i.position.left=p._convertPositionTo("relative",{top:0,left:r-p.helperProportions.width}).left-p.margins.left),o&&(i.position.left=p._convertPositionTo("relative",{top:0,left:l}).left-p.margins.left)),d=s||n||a||o,"outer"!==g.snapMode&&(s=f>=Math.abs(h-v),n=f>=Math.abs(c-b),a=f>=Math.abs(r-m),o=f>=Math.abs(l-_),s&&(i.position.top=p._convertPositionTo("relative",{top:h,left:0}).top-p.margins.top),n&&(i.position.top=p._convertPositionTo("relative",{top:c-p.helperProportions.height,left:0}).top-p.margins.top),a&&(i.position.left=p._convertPositionTo("relative",{top:0,left:r}).left-p.margins.left),o&&(i.position.left=p._convertPositionTo("relative",{top:0,left:l-p.helperProportions.width}).left-p.margins.left)),!p.snapElements[u].snapping&&(s||n||a||o||d)&&p.options.snap.snap&&p.options.snap.snap.call(p.element,e,t.extend(p._uiHash(),{snapItem:p.snapElements[u].item})),p.snapElements[u].snapping=s||n||a||o||d)}}),t.ui.plugin.add("draggable","stack",{start:function(){var e,i=this.data("ui-draggable").options,s=t.makeArray(t(i.stack)).sort(function(e,i){return(parseInt(t(e).css("zIndex"),10)||0)-(parseInt(t(i).css("zIndex"),10)||0)});s.length&&(e=parseInt(t(s[0]).css("zIndex"),10)||0,t(s).each(function(i){t(this).css("zIndex",e+i)}),this.css("zIndex",e+s.length))}}),t.ui.plugin.add("draggable","zIndex",{start:function(e,i){var s=t(i.helper),n=t(this).data("ui-draggable").options;s.css("zIndex")&&(n._zIndex=s.css("zIndex")),s.css("zIndex",n.zIndex)},stop:function(e,i){var s=t(this).data("ui-draggable").options;s._zIndex&&t(i.helper).css("zIndex",s._zIndex)}})})(jQuery);(function(t){function e(t){return parseInt(t,10)||0}function i(t){return!isNaN(parseInt(t,10))}t.widget("ui.resizable",t.ui.mouse,{version:"1.10.4",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_create:function(){var e,i,s,n,a,o=this,r=this.options;if(this.element.addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!r.aspectRatio,aspectRatio:r.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:r.helper||r.ghost||r.animate?r.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(t("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.data("ui-resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=r.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),e=this.handles.split(","),this.handles={},i=0;e.length>i;i++)s=t.trim(e[i]),a="ui-resizable-"+s,n=t("<div class='ui-resizable-handle "+a+"'></div>"),n.css({zIndex:r.zIndex}),"se"===s&&n.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(n);this._renderAxis=function(e){var i,s,n,a;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String&&(this.handles[i]=t(this.handles[i],this.element).show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(s=t(this.handles[i],this.element),a=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,a),this._proportionallyResize()),t(this.handles[i]).length},this._renderAxis(this.element),this._handles=t(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){o.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),o.axis=n&&n[1]?n[1]:"se")}),r.autoHide&&(this._handles.hide(),t(this.element).addClass("ui-resizable-autohide").mouseenter(function(){r.disabled||(t(this).removeClass("ui-resizable-autohide"),o._handles.show())}).mouseleave(function(){r.disabled||o.resizing||(t(this).addClass("ui-resizable-autohide"),o._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(i){var s,n,a,o=this.options,r=this.element.position(),h=this.element;return this.resizing=!0,/absolute/.test(h.css("position"))?h.css({position:"absolute",top:h.css("top"),left:h.css("left")}):h.is(".ui-draggable")&&h.css({position:"absolute",top:r.top,left:r.left}),this._renderProxy(),s=e(this.helper.css("left")),n=e(this.helper.css("top")),o.containment&&(s+=t(o.containment).scrollLeft()||0,n+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:s,top:n},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:h.width(),height:h.height()},this.originalSize=this._helper?{width:h.outerWidth(),height:h.outerHeight()}:{width:h.width(),height:h.height()},this.originalPosition={left:s,top:n},this.sizeDiff={width:h.outerWidth()-h.width(),height:h.outerHeight()-h.height()},this.originalMousePosition={left:i.pageX,top:i.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,a=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===a?this.axis+"-resize":a),h.addClass("ui-resizable-resizing"),this._propagate("start",i),!0},_mouseDrag:function(e){var i,s=this.helper,n={},a=this.originalMousePosition,o=this.axis,r=this.position.top,h=this.position.left,l=this.size.width,c=this.size.height,u=e.pageX-a.left||0,d=e.pageY-a.top||0,p=this._change[o];return p?(i=p.apply(this,[e,u,d]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),this.position.top!==r&&(n.top=this.position.top+"px"),this.position.left!==h&&(n.left=this.position.left+"px"),this.size.width!==l&&(n.width=this.size.width+"px"),this.size.height!==c&&(n.height=this.size.height+"px"),s.css(n),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(n)||this._trigger("resize",e,this.ui()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,a,o,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&t.ui.hasScroll(i[0],"left")?0:c.sizeDiff.height,a=s?0:c.sizeDiff.width,o={width:c.helper.width()-a,height:c.helper.height()-n},r=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null,h=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(o,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(t){var e,s,n,a,o,r=this.options;o={minWidth:i(r.minWidth)?r.minWidth:0,maxWidth:i(r.maxWidth)?r.maxWidth:1/0,minHeight:i(r.minHeight)?r.minHeight:0,maxHeight:i(r.maxHeight)?r.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,n=o.minWidth/this.aspectRatio,s=o.maxHeight*this.aspectRatio,a=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),n>o.minHeight&&(o.minHeight=n),o.maxWidth>s&&(o.maxWidth=s),o.maxHeight>a&&(o.maxHeight=a)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),i(t.left)&&(this.position.left=t.left),i(t.top)&&(this.position.top=t.top),i(t.height)&&(this.size.height=t.height),i(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,s=this.size,n=this.axis;return i(t.height)?t.width=t.height*this.aspectRatio:i(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===n&&(t.left=e.left+(s.width-t.width),t.top=null),"nw"===n&&(t.top=e.top+(s.height-t.height),t.left=e.left+(s.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,s=this.axis,n=i(t.width)&&e.maxWidth&&e.maxWidth<t.width,a=i(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=i(t.width)&&e.minWidth&&e.minWidth>t.width,r=i(t.height)&&e.minHeight&&e.minHeight>t.height,h=this.originalPosition.left+this.originalSize.width,l=this.position.top+this.size.height,c=/sw|nw|w/.test(s),u=/nw|ne|n/.test(s);return o&&(t.width=e.minWidth),r&&(t.height=e.minHeight),n&&(t.width=e.maxWidth),a&&(t.height=e.maxHeight),o&&c&&(t.left=h-e.minWidth),n&&c&&(t.left=h-e.maxWidth),r&&u&&(t.top=l-e.minHeight),a&&u&&(t.top=l-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_proportionallyResize:function(){if(this._proportionallyResizeElements.length){var t,e,i,s,n,a=this.helper||this.element;for(t=0;this._proportionallyResizeElements.length>t;t++){if(n=this._proportionallyResizeElements[t],!this.borderDif)for(this.borderDif=[],i=[n.css("borderTopWidth"),n.css("borderRightWidth"),n.css("borderBottomWidth"),n.css("borderLeftWidth")],s=[n.css("paddingTop"),n.css("paddingRight"),n.css("paddingBottom"),n.css("paddingLeft")],e=0;i.length>e;e++)this.borderDif[e]=(parseInt(i[e],10)||0)+(parseInt(s[e],10)||0);n.css({height:a.height()-this.borderDif[0]-this.borderDif[2]||0,width:a.width()-this.borderDif[1]-this.borderDif[3]||0})}}},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("<div style='overflow:hidden;'></div>"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).data("ui-resizable"),s=i.options,n=i._proportionallyResizeElements,a=n.length&&/textarea/i.test(n[0].nodeName),o=a&&t.ui.hasScroll(n[0],"left")?0:i.sizeDiff.height,r=a?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-o},l=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,c=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var i,s,n,a,o,r,h,l=t(this).data("ui-resizable"),c=l.options,u=l.element,d=c.containment,p=d instanceof t?d.get(0):/parent/.test(d)?u.parent().get(0):d;p&&(l.containerElement=t(p),/document/.test(d)||d===document?(l.containerOffset={left:0,top:0},l.containerPosition={left:0,top:0},l.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(i=t(p),s=[],t(["Top","Right","Left","Bottom"]).each(function(t,n){s[t]=e(i.css("padding"+n))}),l.containerOffset=i.offset(),l.containerPosition=i.position(),l.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},n=l.containerOffset,a=l.containerSize.height,o=l.containerSize.width,r=t.ui.hasScroll(p,"left")?p.scrollWidth:o,h=t.ui.hasScroll(p)?p.scrollHeight:a,l.parentData={element:p,left:n.left,top:n.top,width:r,height:h}))},resize:function(e){var i,s,n,a,o=t(this).data("ui-resizable"),r=o.options,h=o.containerOffset,l=o.position,c=o._aspectRatio||e.shiftKey,u={top:0,left:0},d=o.containerElement;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(o._helper?h.left:0)&&(o.size.width=o.size.width+(o._helper?o.position.left-h.left:o.position.left-u.left),c&&(o.size.height=o.size.width/o.aspectRatio),o.position.left=r.helper?h.left:0),l.top<(o._helper?h.top:0)&&(o.size.height=o.size.height+(o._helper?o.position.top-h.top:o.position.top),c&&(o.size.width=o.size.height*o.aspectRatio),o.position.top=o._helper?h.top:0),o.offset.left=o.parentData.left+o.position.left,o.offset.top=o.parentData.top+o.position.top,i=Math.abs((o._helper?o.offset.left-u.left:o.offset.left-u.left)+o.sizeDiff.width),s=Math.abs((o._helper?o.offset.top-u.top:o.offset.top-h.top)+o.sizeDiff.height),n=o.containerElement.get(0)===o.element.parent().get(0),a=/relative|absolute/.test(o.containerElement.css("position")),n&&a&&(i-=Math.abs(o.parentData.left)),i+o.size.width>=o.parentData.width&&(o.size.width=o.parentData.width-i,c&&(o.size.height=o.size.width/o.aspectRatio)),s+o.size.height>=o.parentData.height&&(o.size.height=o.parentData.height-s,c&&(o.size.width=o.size.height*o.aspectRatio))},stop:function(){var e=t(this).data("ui-resizable"),i=e.options,s=e.containerOffset,n=e.containerPosition,a=e.containerElement,o=t(e.helper),r=o.offset(),h=o.outerWidth()-e.sizeDiff.width,l=o.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(a.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(a.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).data("ui-resizable"),i=e.options,s=function(e){t(e).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseInt(e.width(),10),height:parseInt(e.height(),10),left:parseInt(e.css("left"),10),top:parseInt(e.css("top"),10)})})};"object"!=typeof i.alsoResize||i.alsoResize.parentNode?s(i.alsoResize):i.alsoResize.length?(i.alsoResize=i.alsoResize[0],s(i.alsoResize)):t.each(i.alsoResize,function(t){s(t)})},resize:function(e,i){var s=t(this).data("ui-resizable"),n=s.options,a=s.originalSize,o=s.originalPosition,r={height:s.size.height-a.height||0,width:s.size.width-a.width||0,top:s.position.top-o.top||0,left:s.position.left-o.left||0},h=function(e,s){t(e).each(function(){var e=t(this),n=t(this).data("ui-resizable-alsoresize"),a={},o=s&&s.length?s:e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(n[e]||0)+(r[e]||0);i&&i>=0&&(a[e]=i||null)}),e.css(a)})};"object"!=typeof n.alsoResize||n.alsoResize.nodeType?h(n.alsoResize):t.each(n.alsoResize,function(t,e){h(t,e)})},stop:function(){t(this).removeData("resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).data("ui-resizable"),i=e.options,s=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:""),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).data("ui-resizable");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).data("ui-resizable");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e=t(this).data("ui-resizable"),i=e.options,s=e.size,n=e.originalSize,a=e.originalPosition,o=e.axis,r="number"==typeof i.grid?[i.grid,i.grid]:i.grid,h=r[0]||1,l=r[1]||1,c=Math.round((s.width-n.width)/h)*h,u=Math.round((s.height-n.height)/l)*l,d=n.width+c,p=n.height+u,f=i.maxWidth&&d>i.maxWidth,g=i.maxHeight&&p>i.maxHeight,m=i.minWidth&&i.minWidth>d,v=i.minHeight&&i.minHeight>p;i.grid=r,m&&(d+=h),v&&(p+=l),f&&(d-=h),g&&(p-=l),/^(se|s|e)$/.test(o)?(e.size.width=d,e.size.height=p):/^(ne)$/.test(o)?(e.size.width=d,e.size.height=p,e.position.top=a.top-u):/^(sw)$/.test(o)?(e.size.width=d,e.size.height=p,e.position.left=a.left-c):(p-l>0?(e.size.height=p,e.position.top=a.top-u):(e.size.height=l,e.position.top=a.top+n.height-l),d-h>0?(e.size.width=d,e.position.left=a.left-c):(e.size.width=h,e.position.left=a.left+n.width-h))}})})(jQuery);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/assets/js/launcher.js b/wrt/wrt_support/sample/launcher/assets/js/launcher.js
new file mode 100755 (executable)
index 0000000..1f9cf86
--- /dev/null
@@ -0,0 +1,367 @@
+$ = require('./bower_components/jquery/dist/jquery.min.js');
+$(function() {
+    var launcher = {},
+        path = require('path'),
+        ipc = require('ipc'),
+        remote = require('remote'),
+        WAS_EVENT =  remote.require('./event_define'),
+        InstallManager = require('../../installer/manager.js'),
+        installManager = new InstallManager();
+    Backbone.$ = $;
+    TemplateManager = {
+        templates: {},
+        get: function(id, callback) {
+            var template = this.templates[id];
+            if (template) {
+                callback(template);
+            } else {
+                var that = this;
+                $.get("./templates/" + id + ".html", function(template) {
+                    var $tmpl = $(template);
+                    that.templates[id] = $tmpl;
+                    callback($tmpl);
+                });
+            }
+        }
+    };
+    launcher.execPath = remote.process.execPath;
+    launcher.webapp_left_start_position = 20;
+    launcher.webapp_top_start_position = 20;
+    launcher.webapp_width = 80;
+    launcher.webapp_height = 80;
+    launcher.webapp_gap = 80;
+    launcher.webapp_left_margin = launcher.webapp_gap * 2;
+    launcher.webapp_top_margin = launcher.webapp_gap * 2;
+    launcher.webapp_position_unit = 'px';
+    launcher.webapp_package_install_path = process.env.WAS_APPS_REPO;
+    if (!launcher.webapp_package_install_path) {
+        launcher.webapp_package_install_path = path.join('..', '..', 'apps_repo');
+    }
+    launcher.webapp_count = 0;
+    launcher.templates_path = "./templates/";
+    launcher.template_extention = ".html";
+    launcher.installed_package_db_name = 'database.json';
+    launcher.WebApp = Backbone.Model.extend({
+        defaults: {
+            name: '',
+            icon: '',
+            // path: ''
+        },
+        initialize: function() {
+            // _.bindAll(this);
+        },
+    });
+    launcher.WebAppList = Backbone.Collection.extend({
+        url: path.join(launcher.webapp_package_install_path, launcher.installed_package_db_name),
+        model: launcher.WebApp,
+        initialize: function() {}
+    });
+    launcher.WebAppMenuView = Backbone.View.extend({
+        tagName: 'li',
+        template: 'menu',
+        events: {
+            'click .menu_item': "menu_open"
+        },
+        initialize: function(options) {
+            _.extend(this, options);
+            _.bindAll(this, 'menu_open');
+            // this.model.bind("change", this.render, this);
+            this.model.on("remove", this.remove, this);
+            this.render(options);
+        },
+        render: function(options) {
+            var self = this;
+            TemplateManager.get(this.template, function(template) {
+                var html = _.template($(template).html());
+                $(self.el).html(html(self.model.toJSON()));
+                $(".app_menu").append(self.el);
+            });
+            return this;
+        },
+        remove: function() {
+            this.$el.remove();
+        },
+        menu_open: function(e) {
+            console.log("menu_open")
+            e.preventDefault();
+            e.stopPropagation();
+            var options = {};
+            options.packageName = this.model.get('name');
+            ipc.send('open', options);
+        }
+    });
+    launcher.WasMenuView = Backbone.View.extend({
+        tagName: 'li',
+        template: 'menu',
+        events: {
+            'click .menu_item': "was_menu_open"
+        },
+        initialize: function(options) {
+            _.extend(this, options);
+            _.bindAll(this, 'was_menu_open');
+            // this.model.bind("change", this.render, this);
+            this.render(options);
+        },
+        render: function(options) {
+            var self = this;
+            TemplateManager.get(this.template, function(template) {
+                var html = _.template($(template).html());
+                $(self.el).html(html(self.model.toJSON()));
+                $(".was_menu").append(self.el);
+            });
+            return this;
+        },
+        was_menu_open: function(e) {
+            var name = this.model.get('name');
+            console.log(name);
+            console.log("was_menu_open")
+            e.preventDefault();
+            e.stopPropagation();
+            if (name === "exit") {
+                var launcher = remote.getCurrentWindow();
+                launcher.close();
+            }
+            //     options.packageName = this.model.get('name');
+            //     ipc.send('open', options);
+        }
+    });
+    launcher.WebAppView = Backbone.View.extend({
+        // el: '.desktop',
+        tagName: 'a',
+        template: 'webapp',
+        count: 0,
+        attributes: function() {
+            return {
+                "id": this.model.cid,
+                "class": "abs icon ui-draggable",
+                "style": this.getPostion(),
+                "href": "#icon_dock_computer"
+            };
+        },
+        getPostion: function() {
+            var left,
+                top;
+            // top = (launcher.webapp_top_start_position + launcher.webapp_count * launcher.webapp_top_margin) + launcher.webapp_position_unit;
+            top = (launcher.webapp_top_start_position + this.checkHeightBoundary() * launcher.webapp_top_margin) + launcher.webapp_position_unit;
+            left = (launcher.webapp_left_start_position + this.checkWidthBoundary() * launcher.webapp_left_margin) + launcher.webapp_position_unit;
+            position = ["left:", left, ";", "top:", top].join('');
+            console.log("position : " + position);
+            launcher.webapp_count++;
+            return position;
+        },
+        initialize: function(options) {
+            _.extend(this, options);
+            _.bindAll(this, 'open', 'getPostion');
+            this.model.on("remove", this.remove, this);
+            // this.model.bind("change", this.render, this);
+            var self = this;
+            TemplateManager.get(this.template, function(template) {
+                var template_data = {},
+                    html = null;
+                template_data.icon = path.join(launcher.webapp_package_install_path, self.model.get('name'), self.model.get('icon'));
+                template_data.name = self.model.get('name');
+                console.log("!!!! icon : " + template_data.icon);
+                html = _.template($(template).html());
+                self.$el.html(html(template_data));
+                self.$el.on('click', function(e) {
+                    self.open(e);
+                });
+                self.render(options);
+            });
+        },
+        checkWidthBoundary: function() {
+            console.log("launcher.webapp_count: "  + launcher.webapp_count);
+            console.log("launcher.launcherApp.desktop_max_width_app_num: "  + launcherApp.desktop_max_height_app_num);
+            console.log("checkWidthBoundary : " +  launcher.webapp_count / launcherApp.desktop_max_height_app_num) ;
+            return parseInt(launcher.webapp_count / launcherApp.desktop_max_height_app_num );
+        },
+        checkHeightBoundary: function() {
+            console.log("checkHeightBoundary : " +  launcher.webapp_count % launcherApp.desktop_max_height_app_num ) ;
+            return launcher.webapp_count % launcherApp.desktop_max_height_app_num;
+        },
+        remove: function() {
+            console.log("webapp model removed" + this.model.get("name"));
+            this.$el.remove();
+        },
+        render: function(options) {
+            // console.log("WebappView : " + JSON.stringify(this.model));
+            $(".desktop").append(this.$el);
+            new launcher.PopOverView(options);
+            return this;
+        },
+        open: function(e) {
+            console.log("open");
+            e.preventDefault();
+            e.stopPropagation();
+            var options = {};
+            options.packageName = this.model.get('name');
+            options.type = this.model.get('type');
+            options.content = this.model.get('content');
+
+            ipc.send('open', options);
+        }
+    });
+    launcher.PopOverView = Backbone.View.extend({
+        template: 'popover',
+        initialize: function(options) {
+            _.extend(this, options);
+            this.render();
+        },
+        render: function() {
+            var package_name = this.model.get("name"),
+                model = this.model,
+                cid = "#" + this.model.cid;
+            $(cid).contextPopup({
+                title: 'Context menu',
+                items: [{
+                    label: 'Remove',
+                    icon: './assets/images/icons/icon_uninstall.png',
+                    action: function() {
+                        alert("Delete " + package_name + " ?")
+                        installManager.control({
+                            r: package_name
+                        }, function() {
+                            console.log("Deleted model :" + model.get('name'));
+                            model.destroy();
+                        });
+                    }
+                },
+                    null, /* null can be used to add a separator to the menu items */ {
+                        label: 'infomation',
+                        icon: './assets/images/icons/icon_16_computer.png',
+                        action: function() {
+                            alert('clicked 3')
+                        },
+                        isEnabled: function() {
+                            return false;
+                        }
+                    },
+                ]
+            });
+        }
+    });
+    launcher.LauncherView = Backbone.View.extend({
+        el: 'body',
+        // events: {
+        //     "dblclick #desktop": "closeLauncher"
+        // },
+        template: 'launcher',
+        initialize: function(options) {
+            _.extend(this, options);
+            _.bindAll(this, 'addOne', 'addAll', 'change', 'closeLauncher',"remove");
+            this.webapplist = new launcher.WebAppList();
+            this.webapplist.on({
+                'add': this.addOne,
+                'reset': this.addAll,
+                'change': this.change,
+                'remove': this.remove,
+                'update': this.update,
+            });
+            this.render();
+            this.setupWasHome();
+        },
+        render: function() {
+            var self = this;
+            TemplateManager.get(this.template, function(template) {
+                var html = _.template($(template).html());
+                self.$el.html(html);
+                self.addWasMenu();
+                self.desktop_width = $('.desktop').width() - launcher.webapp_left_start_position * 2;
+                self.desktop_height = $('.desktop').height() - launcher.webapp_top_start_position * 2;
+                self.desktop_max_width_app_num = parseInt(self.desktop_width / (launcher.webapp_width + launcher.webapp_gap));
+                self.desktop_max_height_app_num = parseInt(self.desktop_height / (launcher.webapp_height + launcher.webapp_gap));
+                console.log("desktop_width : " + self.desktop_width);
+                console.log("desktop_height : " + self.desktop_height);
+                console.log("desktop_max_width_app_num : " + self.desktop_max_width_app_num);
+                console.log("desktop_max_height_app_num : " + self.desktop_max_height_app_num);
+                self.webapplist.fetch();
+            });
+            return this;
+        },
+        addWasMenu: function() {
+            console.log("addWasMenu")
+            var sysinfo = new launcher.WebApp({
+                    "name": "system infom"
+                }),
+                exit = new launcher.WebApp({
+                    "name": "exit"
+                })
+            new launcher.WasMenuView({
+                model: sysinfo
+            });
+            new launcher.WasMenuView({
+                model: exit
+            });
+        },
+        addOne: function(webapp) {
+            console.log("addOne");
+            new launcher.WebAppView({
+                model: webapp
+            });
+            new launcher.WebAppMenuView({
+                model: webapp
+            })
+        },
+        addAll: function(webapplist) {
+            console.log("reset");
+            webapplist.fetch();
+            if(this.webapplist_length_backup < webapplist.length){
+                console.log("Something is installed");
+            }else {
+                console.log("Sample app is closed");
+                launcher.webapp_count = 0;
+            }
+            $(".desktop").html("");
+            $(".app_menu").html("");
+
+        },
+        remove: function() {
+            console.log("removed : " + this.webapplist.length);
+            launcher.webapp_count = this.webapplist.length;
+        },
+        update: function(webapplist) {
+            console.log("update : " + webapplist.length)
+            this.webapplist_length_backup = webapplist.length;
+            console.log("webapplist_length_backup : " + this.webapplist_length_backup)
+        },
+        change: function(webapplist) {
+            console.log("change");
+            this.webapplist.each(this.addOne);
+        },
+        setupWasHome: function() {
+            if (!process.env.WAS_HOME) {
+                var home
+                if (process.platform === 'win32') {
+                    home = process.env.USERPROFILE
+                } else {
+                    home = process.env.HOME
+                }
+                var wasHome = path.join(home, '.was')
+                try {
+                    wasHome = fs.realpathSync(wasHome)
+                } catch (error) {
+                    // Ignore since the path might just not exist yet.
+                    console.warn("Need ENV value for setting of setupWasHome")
+                }
+                process.env.WAS_HOME = wasHome
+            }
+        },
+        closeLauncher: function(e) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = remote.getCurrentWindow();
+            launcher.close();
+        },
+        webAppListUpdate: function() {
+            this.webapplist.reset();
+        }
+    });
+    // Backbone.sync = function(method, model) {
+    //     console.log(method + ":" + JSON.stringify(model));
+    // };
+    var launcherApp = new launcher.LauncherView();
+    ipc.on(WAS_EVENT.LAUNCHER.UPDATE, function() {
+        console.log(WAS_EVENT.LAUNCHER.UPDATE);
+        launcherApp.webAppListUpdate()
+    })
+});
diff --git a/wrt/wrt_support/sample/launcher/assets/js/was_key_event_handler.js b/wrt/wrt_support/sample/launcher/assets/js/was_key_event_handler.js
new file mode 100644 (file)
index 0000000..83d5d6c
--- /dev/null
@@ -0,0 +1,19 @@
+(function() {
+    window.addEventListener('keydown', function(e) {
+        if (e.keyCode == 27) {
+            e.preventDefault();
+            e.stopPropagation();
+            var launcher = require('remote').getCurrentWindow();
+            launcher.close();
+        }
+    })
+    document.addEventListener('keydown', function(e) {
+        if (e.keyCode == 116) {
+            e.preventDefault();
+            e.stopPropagation();
+            console.log("F5");
+            var launcher = require('remote').getCurrentWindow();
+            launcher.reload();
+        }
+    })
+})()
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/backbone/.bower.json b/wrt/wrt_support/sample/launcher/bower_components/backbone/.bower.json
new file mode 100644 (file)
index 0000000..61ac8c0
--- /dev/null
@@ -0,0 +1,33 @@
+{
+  "name": "backbone",
+  "main": "backbone.js",
+  "dependencies": {
+    "underscore": ">=1.7.0"
+  },
+  "ignore": [
+    "docs",
+    "examples",
+    "test",
+    "*.yml",
+    "*.html",
+    "*.ico",
+    "*.md",
+    "CNAME",
+    ".*",
+    "karma.*",
+    "component.json",
+    "package.json"
+  ],
+  "homepage": "https://github.com/jashkenas/backbone",
+  "version": "1.2.3",
+  "_release": "1.2.3",
+  "_resolution": {
+    "type": "version",
+    "tag": "1.2.3",
+    "commit": "05fde9e201f7e2137796663081105cd6dad12a98"
+  },
+  "_source": "https://github.com/jashkenas/backbone.git",
+  "_target": "~1.2.3",
+  "_originalSource": "backbone",
+  "_direct": true
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/backbone/LICENSE b/wrt/wrt_support/sample/launcher/bower_components/backbone/LICENSE
new file mode 100644 (file)
index 0000000..184d1b9
--- /dev/null
@@ -0,0 +1,22 @@
+Copyright (c) 2010-2015 Jeremy Ashkenas, DocumentCloud
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/wrt_support/sample/launcher/bower_components/backbone/backbone-min.js b/wrt/wrt_support/sample/launcher/bower_components/backbone/backbone-min.js
new file mode 100644 (file)
index 0000000..1a1f708
--- /dev/null
@@ -0,0 +1,2 @@
+(function(t){var e=typeof self=="object"&&self.self==self&&self||typeof global=="object"&&global.global==global&&global;if(typeof define==="function"&&define.amd){define(["underscore","jquery","exports"],function(i,r,n){e.Backbone=t(e,n,i,r)})}else if(typeof exports!=="undefined"){var i=require("underscore"),r;try{r=require("jquery")}catch(n){}t(e,exports,i,r)}else{e.Backbone=t(e,{},e._,e.jQuery||e.Zepto||e.ender||e.$)}})(function(t,e,i,r){var n=t.Backbone;var s=Array.prototype.slice;e.VERSION="1.2.3";e.$=r;e.noConflict=function(){t.Backbone=n;return this};e.emulateHTTP=false;e.emulateJSON=false;var a=function(t,e,r){switch(t){case 1:return function(){return i[e](this[r])};case 2:return function(t){return i[e](this[r],t)};case 3:return function(t,n){return i[e](this[r],h(t,this),n)};case 4:return function(t,n,s){return i[e](this[r],h(t,this),n,s)};default:return function(){var t=s.call(arguments);t.unshift(this[r]);return i[e].apply(i,t)}}};var o=function(t,e,r){i.each(e,function(e,n){if(i[n])t.prototype[n]=a(e,n,r)})};var h=function(t,e){if(i.isFunction(t))return t;if(i.isObject(t)&&!e._isModel(t))return u(t);if(i.isString(t))return function(e){return e.get(t)};return t};var u=function(t){var e=i.matches(t);return function(t){return e(t.attributes)}};var l=e.Events={};var c=/\s+/;var f=function(t,e,r,n,s){var a=0,o;if(r&&typeof r==="object"){if(n!==void 0&&"context"in s&&s.context===void 0)s.context=n;for(o=i.keys(r);a<o.length;a++){e=f(t,e,o[a],r[o[a]],s)}}else if(r&&c.test(r)){for(o=r.split(c);a<o.length;a++){e=t(e,o[a],n,s)}}else{e=t(e,r,n,s)}return e};l.on=function(t,e,i){return d(this,t,e,i)};var d=function(t,e,i,r,n){t._events=f(v,t._events||{},e,i,{context:r,ctx:t,listening:n});if(n){var s=t._listeners||(t._listeners={});s[n.id]=n}return t};l.listenTo=function(t,e,r){if(!t)return this;var n=t._listenId||(t._listenId=i.uniqueId("l"));var s=this._listeningTo||(this._listeningTo={});var a=s[n];if(!a){var o=this._listenId||(this._listenId=i.uniqueId("l"));a=s[n]={obj:t,objId:n,id:o,listeningTo:s,count:0}}d(t,e,r,this,a);return this};var v=function(t,e,i,r){if(i){var n=t[e]||(t[e]=[]);var s=r.context,a=r.ctx,o=r.listening;if(o)o.count++;n.push({callback:i,context:s,ctx:s||a,listening:o})}return t};l.off=function(t,e,i){if(!this._events)return this;this._events=f(g,this._events,t,e,{context:i,listeners:this._listeners});return this};l.stopListening=function(t,e,r){var n=this._listeningTo;if(!n)return this;var s=t?[t._listenId]:i.keys(n);for(var a=0;a<s.length;a++){var o=n[s[a]];if(!o)break;o.obj.off(e,r,this)}if(i.isEmpty(n))this._listeningTo=void 0;return this};var g=function(t,e,r,n){if(!t)return;var s=0,a;var o=n.context,h=n.listeners;if(!e&&!r&&!o){var u=i.keys(h);for(;s<u.length;s++){a=h[u[s]];delete h[a.id];delete a.listeningTo[a.objId]}return}var l=e?[e]:i.keys(t);for(;s<l.length;s++){e=l[s];var c=t[e];if(!c)break;var f=[];for(var d=0;d<c.length;d++){var v=c[d];if(r&&r!==v.callback&&r!==v.callback._callback||o&&o!==v.context){f.push(v)}else{a=v.listening;if(a&&--a.count===0){delete h[a.id];delete a.listeningTo[a.objId]}}}if(f.length){t[e]=f}else{delete t[e]}}if(i.size(t))return t};l.once=function(t,e,r){var n=f(p,{},t,e,i.bind(this.off,this));return this.on(n,void 0,r)};l.listenToOnce=function(t,e,r){var n=f(p,{},e,r,i.bind(this.stopListening,this,t));return this.listenTo(t,n)};var p=function(t,e,r,n){if(r){var s=t[e]=i.once(function(){n(e,s);r.apply(this,arguments)});s._callback=r}return t};l.trigger=function(t){if(!this._events)return this;var e=Math.max(0,arguments.length-1);var i=Array(e);for(var r=0;r<e;r++)i[r]=arguments[r+1];f(m,this._events,t,void 0,i);return this};var m=function(t,e,i,r){if(t){var n=t[e];var s=t.all;if(n&&s)s=s.slice();if(n)_(n,r);if(s)_(s,[e].concat(r))}return t};var _=function(t,e){var i,r=-1,n=t.length,s=e[0],a=e[1],o=e[2];switch(e.length){case 0:while(++r<n)(i=t[r]).callback.call(i.ctx);return;case 1:while(++r<n)(i=t[r]).callback.call(i.ctx,s);return;case 2:while(++r<n)(i=t[r]).callback.call(i.ctx,s,a);return;case 3:while(++r<n)(i=t[r]).callback.call(i.ctx,s,a,o);return;default:while(++r<n)(i=t[r]).callback.apply(i.ctx,e);return}};l.bind=l.on;l.unbind=l.off;i.extend(e,l);var y=e.Model=function(t,e){var r=t||{};e||(e={});this.cid=i.uniqueId(this.cidPrefix);this.attributes={};if(e.collection)this.collection=e.collection;if(e.parse)r=this.parse(r,e)||{};r=i.defaults({},r,i.result(this,"defaults"));this.set(r,e);this.changed={};this.initialize.apply(this,arguments)};i.extend(y.prototype,l,{changed:null,validationError:null,idAttribute:"id",cidPrefix:"c",initialize:function(){},toJSON:function(t){return i.clone(this.attributes)},sync:function(){return e.sync.apply(this,arguments)},get:function(t){return this.attributes[t]},escape:function(t){return i.escape(this.get(t))},has:function(t){return this.get(t)!=null},matches:function(t){return!!i.iteratee(t,this)(this.attributes)},set:function(t,e,r){if(t==null)return this;var n;if(typeof t==="object"){n=t;r=e}else{(n={})[t]=e}r||(r={});if(!this._validate(n,r))return false;var s=r.unset;var a=r.silent;var o=[];var h=this._changing;this._changing=true;if(!h){this._previousAttributes=i.clone(this.attributes);this.changed={}}var u=this.attributes;var l=this.changed;var c=this._previousAttributes;for(var f in n){e=n[f];if(!i.isEqual(u[f],e))o.push(f);if(!i.isEqual(c[f],e)){l[f]=e}else{delete l[f]}s?delete u[f]:u[f]=e}this.id=this.get(this.idAttribute);if(!a){if(o.length)this._pending=r;for(var d=0;d<o.length;d++){this.trigger("change:"+o[d],this,u[o[d]],r)}}if(h)return this;if(!a){while(this._pending){r=this._pending;this._pending=false;this.trigger("change",this,r)}}this._pending=false;this._changing=false;return this},unset:function(t,e){return this.set(t,void 0,i.extend({},e,{unset:true}))},clear:function(t){var e={};for(var r in this.attributes)e[r]=void 0;return this.set(e,i.extend({},t,{unset:true}))},hasChanged:function(t){if(t==null)return!i.isEmpty(this.changed);return i.has(this.changed,t)},changedAttributes:function(t){if(!t)return this.hasChanged()?i.clone(this.changed):false;var e=this._changing?this._previousAttributes:this.attributes;var r={};for(var n in t){var s=t[n];if(i.isEqual(e[n],s))continue;r[n]=s}return i.size(r)?r:false},previous:function(t){if(t==null||!this._previousAttributes)return null;return this._previousAttributes[t]},previousAttributes:function(){return i.clone(this._previousAttributes)},fetch:function(t){t=i.extend({parse:true},t);var e=this;var r=t.success;t.success=function(i){var n=t.parse?e.parse(i,t):i;if(!e.set(n,t))return false;if(r)r.call(t.context,e,i,t);e.trigger("sync",e,i,t)};z(this,t);return this.sync("read",this,t)},save:function(t,e,r){var n;if(t==null||typeof t==="object"){n=t;r=e}else{(n={})[t]=e}r=i.extend({validate:true,parse:true},r);var s=r.wait;if(n&&!s){if(!this.set(n,r))return false}else{if(!this._validate(n,r))return false}var a=this;var o=r.success;var h=this.attributes;r.success=function(t){a.attributes=h;var e=r.parse?a.parse(t,r):t;if(s)e=i.extend({},n,e);if(e&&!a.set(e,r))return false;if(o)o.call(r.context,a,t,r);a.trigger("sync",a,t,r)};z(this,r);if(n&&s)this.attributes=i.extend({},h,n);var u=this.isNew()?"create":r.patch?"patch":"update";if(u==="patch"&&!r.attrs)r.attrs=n;var l=this.sync(u,this,r);this.attributes=h;return l},destroy:function(t){t=t?i.clone(t):{};var e=this;var r=t.success;var n=t.wait;var s=function(){e.stopListening();e.trigger("destroy",e,e.collection,t)};t.success=function(i){if(n)s();if(r)r.call(t.context,e,i,t);if(!e.isNew())e.trigger("sync",e,i,t)};var a=false;if(this.isNew()){i.defer(t.success)}else{z(this,t);a=this.sync("delete",this,t)}if(!n)s();return a},url:function(){var t=i.result(this,"urlRoot")||i.result(this.collection,"url")||F();if(this.isNew())return t;var e=this.get(this.idAttribute);return t.replace(/[^\/]$/,"$&/")+encodeURIComponent(e)},parse:function(t,e){return t},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return!this.has(this.idAttribute)},isValid:function(t){return this._validate({},i.defaults({validate:true},t))},_validate:function(t,e){if(!e.validate||!this.validate)return true;t=i.extend({},this.attributes,t);var r=this.validationError=this.validate(t,e)||null;if(!r)return true;this.trigger("invalid",this,r,i.extend(e,{validationError:r}));return false}});var b={keys:1,values:1,pairs:1,invert:1,pick:0,omit:0,chain:1,isEmpty:1};o(y,b,"attributes");var x=e.Collection=function(t,e){e||(e={});if(e.model)this.model=e.model;if(e.comparator!==void 0)this.comparator=e.comparator;this._reset();this.initialize.apply(this,arguments);if(t)this.reset(t,i.extend({silent:true},e))};var w={add:true,remove:true,merge:true};var E={add:true,remove:false};var k=function(t,e,i){i=Math.min(Math.max(i,0),t.length);var r=Array(t.length-i);var n=e.length;for(var s=0;s<r.length;s++)r[s]=t[s+i];for(s=0;s<n;s++)t[s+i]=e[s];for(s=0;s<r.length;s++)t[s+n+i]=r[s]};i.extend(x.prototype,l,{model:y,initialize:function(){},toJSON:function(t){return this.map(function(e){return e.toJSON(t)})},sync:function(){return e.sync.apply(this,arguments)},add:function(t,e){return this.set(t,i.extend({merge:false},e,E))},remove:function(t,e){e=i.extend({},e);var r=!i.isArray(t);t=r?[t]:i.clone(t);var n=this._removeModels(t,e);if(!e.silent&&n)this.trigger("update",this,e);return r?n[0]:n},set:function(t,e){if(t==null)return;e=i.defaults({},e,w);if(e.parse&&!this._isModel(t))t=this.parse(t,e);var r=!i.isArray(t);t=r?[t]:t.slice();var n=e.at;if(n!=null)n=+n;if(n<0)n+=this.length+1;var s=[];var a=[];var o=[];var h={};var u=e.add;var l=e.merge;var c=e.remove;var f=false;var d=this.comparator&&n==null&&e.sort!==false;var v=i.isString(this.comparator)?this.comparator:null;var g;for(var p=0;p<t.length;p++){g=t[p];var m=this.get(g);if(m){if(l&&g!==m){var _=this._isModel(g)?g.attributes:g;if(e.parse)_=m.parse(_,e);m.set(_,e);if(d&&!f)f=m.hasChanged(v)}if(!h[m.cid]){h[m.cid]=true;s.push(m)}t[p]=m}else if(u){g=t[p]=this._prepareModel(g,e);if(g){a.push(g);this._addReference(g,e);h[g.cid]=true;s.push(g)}}}if(c){for(p=0;p<this.length;p++){g=this.models[p];if(!h[g.cid])o.push(g)}if(o.length)this._removeModels(o,e)}var y=false;var b=!d&&u&&c;if(s.length&&b){y=this.length!=s.length||i.some(this.models,function(t,e){return t!==s[e]});this.models.length=0;k(this.models,s,0);this.length=this.models.length}else if(a.length){if(d)f=true;k(this.models,a,n==null?this.length:n);this.length=this.models.length}if(f)this.sort({silent:true});if(!e.silent){for(p=0;p<a.length;p++){if(n!=null)e.index=n+p;g=a[p];g.trigger("add",g,this,e)}if(f||y)this.trigger("sort",this,e);if(a.length||o.length)this.trigger("update",this,e)}return r?t[0]:t},reset:function(t,e){e=e?i.clone(e):{};for(var r=0;r<this.models.length;r++){this._removeReference(this.models[r],e)}e.previousModels=this.models;this._reset();t=this.add(t,i.extend({silent:true},e));if(!e.silent)this.trigger("reset",this,e);return t},push:function(t,e){return this.add(t,i.extend({at:this.length},e))},pop:function(t){var e=this.at(this.length-1);return this.remove(e,t)},unshift:function(t,e){return this.add(t,i.extend({at:0},e))},shift:function(t){var e=this.at(0);return this.remove(e,t)},slice:function(){return s.apply(this.models,arguments)},get:function(t){if(t==null)return void 0;var e=this.modelId(this._isModel(t)?t.attributes:t);return this._byId[t]||this._byId[e]||this._byId[t.cid]},at:function(t){if(t<0)t+=this.length;return this.models[t]},where:function(t,e){return this[e?"find":"filter"](t)},findWhere:function(t){return this.where(t,true)},sort:function(t){var e=this.comparator;if(!e)throw new Error("Cannot sort a set without a comparator");t||(t={});var r=e.length;if(i.isFunction(e))e=i.bind(e,this);if(r===1||i.isString(e)){this.models=this.sortBy(e)}else{this.models.sort(e)}if(!t.silent)this.trigger("sort",this,t);return this},pluck:function(t){return i.invoke(this.models,"get",t)},fetch:function(t){t=i.extend({parse:true},t);var e=t.success;var r=this;t.success=function(i){var n=t.reset?"reset":"set";r[n](i,t);if(e)e.call(t.context,r,i,t);r.trigger("sync",r,i,t)};z(this,t);return this.sync("read",this,t)},create:function(t,e){e=e?i.clone(e):{};var r=e.wait;t=this._prepareModel(t,e);if(!t)return false;if(!r)this.add(t,e);var n=this;var s=e.success;e.success=function(t,e,i){if(r)n.add(t,i);if(s)s.call(i.context,t,e,i)};t.save(null,e);return t},parse:function(t,e){return t},clone:function(){return new this.constructor(this.models,{model:this.model,comparator:this.comparator})},modelId:function(t){return t[this.model.prototype.idAttribute||"id"]},_reset:function(){this.length=0;this.models=[];this._byId={}},_prepareModel:function(t,e){if(this._isModel(t)){if(!t.collection)t.collection=this;return t}e=e?i.clone(e):{};e.collection=this;var r=new this.model(t,e);if(!r.validationError)return r;this.trigger("invalid",this,r.validationError,e);return false},_removeModels:function(t,e){var i=[];for(var r=0;r<t.length;r++){var n=this.get(t[r]);if(!n)continue;var s=this.indexOf(n);this.models.splice(s,1);this.length--;if(!e.silent){e.index=s;n.trigger("remove",n,this,e)}i.push(n);this._removeReference(n,e)}return i.length?i:false},_isModel:function(t){return t instanceof y},_addReference:function(t,e){this._byId[t.cid]=t;var i=this.modelId(t.attributes);if(i!=null)this._byId[i]=t;t.on("all",this._onModelEvent,this)},_removeReference:function(t,e){delete this._byId[t.cid];var i=this.modelId(t.attributes);if(i!=null)delete this._byId[i];if(this===t.collection)delete t.collection;t.off("all",this._onModelEvent,this)},_onModelEvent:function(t,e,i,r){if((t==="add"||t==="remove")&&i!==this)return;if(t==="destroy")this.remove(e,r);if(t==="change"){var n=this.modelId(e.previousAttributes());var s=this.modelId(e.attributes);if(n!==s){if(n!=null)delete this._byId[n];if(s!=null)this._byId[s]=e}}this.trigger.apply(this,arguments)}});var S={forEach:3,each:3,map:3,collect:3,reduce:4,foldl:4,inject:4,reduceRight:4,foldr:4,find:3,detect:3,filter:3,select:3,reject:3,every:3,all:3,some:3,any:3,include:3,includes:3,contains:3,invoke:0,max:3,min:3,toArray:1,size:1,first:3,head:3,take:3,initial:3,rest:3,tail:3,drop:3,last:3,without:0,difference:0,indexOf:3,shuffle:1,lastIndexOf:3,isEmpty:1,chain:1,sample:3,partition:3,groupBy:3,countBy:3,sortBy:3,indexBy:3};o(x,S,"models");var I=e.View=function(t){this.cid=i.uniqueId("view");i.extend(this,i.pick(t,P));this._ensureElement();this.initialize.apply(this,arguments)};var T=/^(\S+)\s*(.*)$/;var P=["model","collection","el","id","attributes","className","tagName","events"];i.extend(I.prototype,l,{tagName:"div",$:function(t){return this.$el.find(t)},initialize:function(){},render:function(){return this},remove:function(){this._removeElement();this.stopListening();return this},_removeElement:function(){this.$el.remove()},setElement:function(t){this.undelegateEvents();this._setElement(t);this.delegateEvents();return this},_setElement:function(t){this.$el=t instanceof e.$?t:e.$(t);this.el=this.$el[0]},delegateEvents:function(t){t||(t=i.result(this,"events"));if(!t)return this;this.undelegateEvents();for(var e in t){var r=t[e];if(!i.isFunction(r))r=this[r];if(!r)continue;var n=e.match(T);this.delegate(n[1],n[2],i.bind(r,this))}return this},delegate:function(t,e,i){this.$el.on(t+".delegateEvents"+this.cid,e,i);return this},undelegateEvents:function(){if(this.$el)this.$el.off(".delegateEvents"+this.cid);return this},undelegate:function(t,e,i){this.$el.off(t+".delegateEvents"+this.cid,e,i);return this},_createElement:function(t){return document.createElement(t)},_ensureElement:function(){if(!this.el){var t=i.extend({},i.result(this,"attributes"));if(this.id)t.id=i.result(this,"id");if(this.className)t["class"]=i.result(this,"className");this.setElement(this._createElement(i.result(this,"tagName")));this._setAttributes(t)}else{this.setElement(i.result(this,"el"))}},_setAttributes:function(t){this.$el.attr(t)}});e.sync=function(t,r,n){var s=H[t];i.defaults(n||(n={}),{emulateHTTP:e.emulateHTTP,emulateJSON:e.emulateJSON});var a={type:s,dataType:"json"};if(!n.url){a.url=i.result(r,"url")||F()}if(n.data==null&&r&&(t==="create"||t==="update"||t==="patch")){a.contentType="application/json";a.data=JSON.stringify(n.attrs||r.toJSON(n))}if(n.emulateJSON){a.contentType="application/x-www-form-urlencoded";a.data=a.data?{model:a.data}:{}}if(n.emulateHTTP&&(s==="PUT"||s==="DELETE"||s==="PATCH")){a.type="POST";if(n.emulateJSON)a.data._method=s;var o=n.beforeSend;n.beforeSend=function(t){t.setRequestHeader("X-HTTP-Method-Override",s);if(o)return o.apply(this,arguments)}}if(a.type!=="GET"&&!n.emulateJSON){a.processData=false}var h=n.error;n.error=function(t,e,i){n.textStatus=e;n.errorThrown=i;if(h)h.call(n.context,t,e,i)};var u=n.xhr=e.ajax(i.extend(a,n));r.trigger("request",r,u,n);return u};var H={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};e.ajax=function(){return e.$.ajax.apply(e.$,arguments)};var $=e.Router=function(t){t||(t={});if(t.routes)this.routes=t.routes;this._bindRoutes();this.initialize.apply(this,arguments)};var A=/\((.*?)\)/g;var C=/(\(\?)?:\w+/g;var R=/\*\w+/g;var j=/[\-{}\[\]+?.,\\\^$|#\s]/g;i.extend($.prototype,l,{initialize:function(){},route:function(t,r,n){if(!i.isRegExp(t))t=this._routeToRegExp(t);if(i.isFunction(r)){n=r;r=""}if(!n)n=this[r];var s=this;e.history.route(t,function(i){var a=s._extractParameters(t,i);if(s.execute(n,a,r)!==false){s.trigger.apply(s,["route:"+r].concat(a));s.trigger("route",r,a);e.history.trigger("route",s,r,a)}});return this},execute:function(t,e,i){if(t)t.apply(this,e)},navigate:function(t,i){e.history.navigate(t,i);return this},_bindRoutes:function(){if(!this.routes)return;this.routes=i.result(this,"routes");var t,e=i.keys(this.routes);while((t=e.pop())!=null){this.route(t,this.routes[t])}},_routeToRegExp:function(t){t=t.replace(j,"\\$&").replace(A,"(?:$1)?").replace(C,function(t,e){return e?t:"([^/?]+)"}).replace(R,"([^?]*?)");return new RegExp("^"+t+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(t,e){var r=t.exec(e).slice(1);return i.map(r,function(t,e){if(e===r.length-1)return t||null;return t?decodeURIComponent(t):null})}});var M=e.History=function(){this.handlers=[];this.checkUrl=i.bind(this.checkUrl,this);if(typeof window!=="undefined"){this.location=window.location;this.history=window.history}};var N=/^[#\/]|\s+$/g;var O=/^\/+|\/+$/g;var U=/#.*$/;M.started=false;i.extend(M.prototype,l,{interval:50,atRoot:function(){var t=this.location.pathname.replace(/[^\/]$/,"$&/");return t===this.root&&!this.getSearch()},matchRoot:function(){var t=this.decodeFragment(this.location.pathname);var e=t.slice(0,this.root.length-1)+"/";return e===this.root},decodeFragment:function(t){return decodeURI(t.replace(/%25/g,"%2525"))},getSearch:function(){var t=this.location.href.replace(/#.*/,"").match(/\?.+/);return t?t[0]:""},getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getPath:function(){var t=this.decodeFragment(this.location.pathname+this.getSearch()).slice(this.root.length-1);return t.charAt(0)==="/"?t.slice(1):t},getFragment:function(t){if(t==null){if(this._usePushState||!this._wantsHashChange){t=this.getPath()}else{t=this.getHash()}}return t.replace(N,"")},start:function(t){if(M.started)throw new Error("Backbone.history has already been started");M.started=true;this.options=i.extend({root:"/"},this.options,t);this.root=this.options.root;this._wantsHashChange=this.options.hashChange!==false;this._hasHashChange="onhashchange"in window&&(document.documentMode===void 0||document.documentMode>7);this._useHashChange=this._wantsHashChange&&this._hasHashChange;this._wantsPushState=!!this.options.pushState;this._hasPushState=!!(this.history&&this.history.pushState);this._usePushState=this._wantsPushState&&this._hasPushState;this.fragment=this.getFragment();this.root=("/"+this.root+"/").replace(O,"/");if(this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot()){var e=this.root.slice(0,-1)||"/";this.location.replace(e+"#"+this.getPath());return true}else if(this._hasPushState&&this.atRoot()){this.navigate(this.getHash(),{replace:true})}}if(!this._hasHashChange&&this._wantsHashChange&&!this._usePushState){this.iframe=document.createElement("iframe");this.iframe.src="javascript:0";this.iframe.style.display="none";this.iframe.tabIndex=-1;var r=document.body;var n=r.insertBefore(this.iframe,r.firstChild).contentWindow;n.document.open();n.document.close();n.location.hash="#"+this.fragment}var s=window.addEventListener||function(t,e){return attachEvent("on"+t,e)};if(this._usePushState){s("popstate",this.checkUrl,false)}else if(this._useHashChange&&!this.iframe){s("hashchange",this.checkUrl,false)}else if(this._wantsHashChange){this._checkUrlInterval=setInterval(this.checkUrl,this.interval)}if(!this.options.silent)return this.loadUrl()},stop:function(){var t=window.removeEventListener||function(t,e){return detachEvent("on"+t,e)};if(this._usePushState){t("popstate",this.checkUrl,false)}else if(this._useHashChange&&!this.iframe){t("hashchange",this.checkUrl,false)}if(this.iframe){document.body.removeChild(this.iframe);this.iframe=null}if(this._checkUrlInterval)clearInterval(this._checkUrlInterval);M.started=false},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();if(e===this.fragment&&this.iframe){e=this.getHash(this.iframe.contentWindow)}if(e===this.fragment)return false;if(this.iframe)this.navigate(e);this.loadUrl()},loadUrl:function(t){if(!this.matchRoot())return false;t=this.fragment=this.getFragment(t);return i.some(this.handlers,function(e){if(e.route.test(t)){e.callback(t);return true}})},navigate:function(t,e){if(!M.started)return false;if(!e||e===true)e={trigger:!!e};t=this.getFragment(t||"");var i=this.root;if(t===""||t.charAt(0)==="?"){i=i.slice(0,-1)||"/"}var r=i+t;t=this.decodeFragment(t.replace(U,""));if(this.fragment===t)return;this.fragment=t;if(this._usePushState){this.history[e.replace?"replaceState":"pushState"]({},document.title,r)}else if(this._wantsHashChange){this._updateHash(this.location,t,e.replace);if(this.iframe&&t!==this.getHash(this.iframe.contentWindow)){var n=this.iframe.contentWindow;if(!e.replace){n.document.open();n.document.close()}this._updateHash(n.location,t,e.replace)}}else{return this.location.assign(r)}if(e.trigger)return this.loadUrl(t)},_updateHash:function(t,e,i){if(i){var r=t.href.replace(/(javascript:|#).*$/,"");t.replace(r+"#"+e)}else{t.hash="#"+e}}});e.history=new M;var q=function(t,e){var r=this;var n;if(t&&i.has(t,"constructor")){n=t.constructor}else{n=function(){return r.apply(this,arguments)}}i.extend(n,r,e);var s=function(){this.constructor=n};s.prototype=r.prototype;n.prototype=new s;if(t)i.extend(n.prototype,t);n.__super__=r.prototype;return n};y.extend=x.extend=$.extend=I.extend=M.extend=q;var F=function(){throw new Error('A "url" property or function must be specified')};var z=function(t,e){var i=e.error;e.error=function(r){if(i)i.call(e.context,t,r,e);t.trigger("error",t,r,e)}};return e});
+//# sourceMappingURL=backbone-min.map
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/backbone/backbone-min.map b/wrt/wrt_support/sample/launcher/bower_components/backbone/backbone-min.map
new file mode 100644 (file)
index 0000000..b728f9b
--- /dev/null
@@ -0,0 +1 @@
+{"version":3,"file":"backbone-min.js","sources":["backbone.js"],"names":["factory","root","self","global","define","amd","_","$","exports","Backbone","require","e","jQuery","Zepto","ender","previousBackbone","slice","Array","prototype","VERSION","noConflict","this","emulateHTTP","emulateJSON","addMethod","length","method","attribute","value","iteratee","context","cb","defaultVal","args","call","arguments","unshift","apply","addUnderscoreMethods","Class","methods","each","instance","isFunction","isObject","_isModel","modelMatcher","isString","model","get","attrs","matcher","matches","attributes","Events","eventSplitter","eventsApi","events","name","callback","opts","i","names","keys","test","split","on","internalOn","obj","listening","_events","onApi","ctx","listeners","_listeners","id","listenTo","_listenId","uniqueId","listeningTo","_listeningTo","thisId","objId","count","options","handlers","push","off","offApi","stopListening","ids","isEmpty","remaining","j","handler","_callback","size","once","onceMap","bind","listenToOnce","map","offer","trigger","Math","max","triggerApi","objEvents","allEvents","all","triggerEvents","concat","ev","l","a1","a2","a3","unbind","extend","Model","cid","cidPrefix","collection","parse","defaults","result","set","changed","initialize","validationError","idAttribute","toJSON","clone","sync","attr","escape","has","key","val","_validate","unset","silent","changes","changing","_changing","_previousAttributes","current","prev","isEqual","_pending","clear","hasChanged","changedAttributes","diff","old","previous","previousAttributes","fetch","success","resp","serverAttrs","wrapError","save","validate","wait","isNew","patch","xhr","destroy","defer","url","base","urlError","replace","encodeURIComponent","constructor","isValid","error","modelMethods","values","pairs","invert","pick","omit","chain","Collection","models","comparator","_reset","reset","setOptions","add","remove","merge","addOptions","splice","array","insert","at","min","tail","singular","isArray","removed","_removeModels","toAdd","toRemove","modelMap","sort","sortable","sortAttr","existing","_prepareModel","_addReference","orderChanged","some","index","_removeReference","previousModels","pop","shift","modelId","_byId","where","first","findWhere","Error","sortBy","pluck","invoke","create","callbackOpts","indexOf","_onModelEvent","event","prevId","collectionMethods","forEach","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","any","include","includes","contains","toArray","head","take","initial","rest","drop","last","without","difference","shuffle","lastIndexOf","sample","partition","groupBy","countBy","indexBy","View","viewOptions","_ensureElement","delegateEventSplitter","tagName","selector","$el","render","_removeElement","setElement","element","undelegateEvents","_setElement","delegateEvents","el","match","delegate","eventName","listener","undelegate","_createElement","document","createElement","className","_setAttributes","type","methodMap","params","dataType","data","contentType","JSON","stringify","_method","beforeSend","setRequestHeader","processData","textStatus","errorThrown","ajax","update","delete","read","Router","routes","_bindRoutes","optionalParam","namedParam","splatParam","escapeRegExp","route","isRegExp","_routeToRegExp","router","history","fragment","_extractParameters","execute","navigate","optional","RegExp","exec","param","decodeURIComponent","History","checkUrl","window","location","routeStripper","rootStripper","pathStripper","started","interval","atRoot","path","pathname","getSearch","matchRoot","decodeFragment","decodeURI","href","getHash","getPath","charAt","getFragment","_usePushState","_wantsHashChange","start","hashChange","_hasHashChange","documentMode","_useHashChange","_wantsPushState","pushState","_hasPushState","iframe","src","style","display","tabIndex","body","iWindow","insertBefore","firstChild","contentWindow","open","close","hash","addEventListener","attachEvent","_checkUrlInterval","setInterval","loadUrl","stop","removeEventListener","detachEvent","removeChild","clearInterval","title","_updateHash","assign","protoProps","staticProps","parent","child","Surrogate","__super__"],"mappings":"CAOC,SAASA,GAIR,GAAIC,SAAeC,OAAQ,UAAYA,KAAKA,MAAQA,MAAQA,YAC1CC,SAAU,UAAYA,OAAOA,QAAUA,QAAUA,MAGnE,UAAWC,UAAW,YAAcA,OAAOC,IAAK,CAC9CD,QAAQ,aAAc,SAAU,WAAY,SAASE,EAAGC,EAAGC,GAGzDP,EAAKQ,SAAWT,EAAQC,EAAMO,EAASF,EAAGC,SAIvC,UAAWC,WAAY,YAAa,CACzC,GAAIF,GAAII,QAAQ,cAAeH,CAC/B,KAAMA,EAAIG,QAAQ,UAAa,MAAMC,IACrCX,EAAQC,EAAMO,QAASF,EAAGC,OAGrB,CACLN,EAAKQ,SAAWT,EAAQC,KAAUA,EAAKK,EAAIL,EAAKW,QAAUX,EAAKY,OAASZ,EAAKa,OAASb,EAAKM,MAG7F,SAASN,EAAMQ,EAAUH,EAAGC,GAO5B,GAAIQ,GAAmBd,EAAKQ,QAG5B,IAAIO,GAAQC,MAAMC,UAAUF,KAG5BP,GAASU,QAAU,OAInBV,GAASF,EAAIA,CAIbE,GAASW,WAAa,WACpBnB,EAAKQ,SAAWM,CAChB,OAAOM,MAMTZ,GAASa,YAAc,KAMvBb,GAASc,YAAc,KASvB,IAAIC,GAAY,SAASC,EAAQC,EAAQC,GACvC,OAAQF,GACN,IAAK,GAAG,MAAO,YACb,MAAOnB,GAAEoB,GAAQL,KAAKM,IAExB,KAAK,GAAG,MAAO,UAASC,GACtB,MAAOtB,GAAEoB,GAAQL,KAAKM,GAAYC,GAEpC,KAAK,GAAG,MAAO,UAASC,EAAUC,GAChC,MAAOxB,GAAEoB,GAAQL,KAAKM,GAAYI,EAAGF,EAAUR,MAAOS,GAExD,KAAK,GAAG,MAAO,UAASD,EAAUG,EAAYF,GAC5C,MAAOxB,GAAEoB,GAAQL,KAAKM,GAAYI,EAAGF,EAAUR,MAAOW,EAAYF,GAEpE,SAAS,MAAO,YACd,GAAIG,GAAOjB,EAAMkB,KAAKC,UACtBF,GAAKG,QAAQf,KAAKM,GAClB,OAAOrB,GAAEoB,GAAQW,MAAM/B,EAAG2B,KAIhC,IAAIK,GAAuB,SAASC,EAAOC,EAASb,GAClDrB,EAAEmC,KAAKD,EAAS,SAASf,EAAQC,GAC/B,GAAIpB,EAAEoB,GAASa,EAAMrB,UAAUQ,GAAUF,EAAUC,EAAQC,EAAQC,KAKvE,IAAII,GAAK,SAASF,EAAUa,GAC1B,GAAIpC,EAAEqC,WAAWd,GAAW,MAAOA,EACnC,IAAIvB,EAAEsC,SAASf,KAAca,EAASG,SAAShB,GAAW,MAAOiB,GAAajB,EAC9E,IAAIvB,EAAEyC,SAASlB,GAAW,MAAO,UAASmB,GAAS,MAAOA,GAAMC,IAAIpB,GACpE,OAAOA,GAET,IAAIiB,GAAe,SAASI,GAC1B,GAAIC,GAAU7C,EAAE8C,QAAQF,EACxB,OAAO,UAASF,GACd,MAAOG,GAAQH,EAAMK,aAiBzB,IAAIC,GAAS7C,EAAS6C,SAGtB,IAAIC,GAAgB,KAKpB,IAAIC,GAAY,SAAS3B,EAAU4B,EAAQC,EAAMC,EAAUC,GACzD,GAAIC,GAAI,EAAGC,CACX,IAAIJ,SAAeA,KAAS,SAAU,CAEpC,GAAIC,QAAkB,IAAK,WAAaC,IAAQA,EAAK9B,cAAiB,GAAG8B,EAAK9B,QAAU6B,CACxF,KAAKG,EAAQxD,EAAEyD,KAAKL,GAAOG,EAAIC,EAAMrC,OAASoC,IAAK,CACjDJ,EAASD,EAAU3B,EAAU4B,EAAQK,EAAMD,GAAIH,EAAKI,EAAMD,IAAKD,QAE5D,IAAIF,GAAQH,EAAcS,KAAKN,GAAO,CAE3C,IAAKI,EAAQJ,EAAKO,MAAMV,GAAgBM,EAAIC,EAAMrC,OAAQoC,IAAK,CAC7DJ,EAAS5B,EAAS4B,EAAQK,EAAMD,GAAIF,EAAUC,QAE3C,CAELH,EAAS5B,EAAS4B,EAAQC,EAAMC,EAAUC,GAE5C,MAAOH,GAKTH,GAAOY,GAAK,SAASR,EAAMC,EAAU7B,GACnC,MAAOqC,GAAW9C,KAAMqC,EAAMC,EAAU7B,GAI1C,IAAIqC,GAAa,SAASC,EAAKV,EAAMC,EAAU7B,EAASuC,GACtDD,EAAIE,QAAUd,EAAUe,EAAOH,EAAIE,YAAeZ,EAAMC,GACpD7B,QAASA,EACT0C,IAAKJ,EACLC,UAAWA,GAGf,IAAIA,EAAW,CACb,GAAII,GAAYL,EAAIM,aAAeN,EAAIM,cACvCD,GAAUJ,EAAUM,IAAMN,EAG5B,MAAOD,GAMTd,GAAOsB,SAAY,SAASR,EAAKV,EAAMC,GACrC,IAAKS,EAAK,MAAO/C,KACjB,IAAIsD,GAAKP,EAAIS,YAAcT,EAAIS,UAAYvE,EAAEwE,SAAS,KACtD,IAAIC,GAAc1D,KAAK2D,eAAiB3D,KAAK2D,gBAC7C,IAAIX,GAAYU,EAAYJ,EAI5B,KAAKN,EAAW,CACd,GAAIY,GAAS5D,KAAKwD,YAAcxD,KAAKwD,UAAYvE,EAAEwE,SAAS,KAC5DT,GAAYU,EAAYJ,IAAOP,IAAKA,EAAKc,MAAOP,EAAIA,GAAIM,EAAQF,YAAaA,EAAaI,MAAO,GAInGhB,EAAWC,EAAKV,EAAMC,EAAUtC,KAAMgD,EACtC,OAAOhD,MAIT,IAAIkD,GAAQ,SAASd,EAAQC,EAAMC,EAAUyB,GAC3C,GAAIzB,EAAU,CACZ,GAAI0B,GAAW5B,EAAOC,KAAUD,EAAOC,MACvC,IAAI5B,GAAUsD,EAAQtD,QAAS0C,EAAMY,EAAQZ,IAAKH,EAAYe,EAAQf,SACtE,IAAIA,EAAWA,EAAUc,OAEzBE,GAASC,MAAO3B,SAAUA,EAAU7B,QAASA,EAAS0C,IAAK1C,GAAW0C,EAAKH,UAAWA,IAExF,MAAOZ,GAOTH,GAAOiC,IAAO,SAAS7B,EAAMC,EAAU7B,GACrC,IAAKT,KAAKiD,QAAS,MAAOjD,KAC1BA,MAAKiD,QAAUd,EAAUgC,EAAQnE,KAAKiD,QAASZ,EAAMC,GACjD7B,QAASA,EACT2C,UAAWpD,KAAKqD,YAEpB,OAAOrD,MAKTiC,GAAOmC,cAAiB,SAASrB,EAAKV,EAAMC,GAC1C,GAAIoB,GAAc1D,KAAK2D,YACvB,KAAKD,EAAa,MAAO1D,KAEzB,IAAIqE,GAAMtB,GAAOA,EAAIS,WAAavE,EAAEyD,KAAKgB,EAEzC,KAAK,GAAIlB,GAAI,EAAGA,EAAI6B,EAAIjE,OAAQoC,IAAK,CACnC,GAAIQ,GAAYU,EAAYW,EAAI7B,GAIhC,KAAKQ,EAAW,KAEhBA,GAAUD,IAAImB,IAAI7B,EAAMC,EAAUtC,MAEpC,GAAIf,EAAEqF,QAAQZ,GAAc1D,KAAK2D,iBAAoB,EAErD,OAAO3D,MAIT,IAAImE,GAAS,SAAS/B,EAAQC,EAAMC,EAAUyB,GAC5C,IAAK3B,EAAQ,MAEb,IAAII,GAAI,EAAGQ,CACX,IAAIvC,GAAUsD,EAAQtD,QAAS2C,EAAYW,EAAQX,SAGnD,KAAKf,IAASC,IAAa7B,EAAS,CAClC,GAAI4D,GAAMpF,EAAEyD,KAAKU,EACjB,MAAOZ,EAAI6B,EAAIjE,OAAQoC,IAAK,CAC1BQ,EAAYI,EAAUiB,EAAI7B,UACnBY,GAAUJ,EAAUM,UACpBN,GAAUU,YAAYV,EAAUa,OAEzC,OAGF,GAAIpB,GAAQJ,GAAQA,GAAQpD,EAAEyD,KAAKN,EACnC,MAAOI,EAAIC,EAAMrC,OAAQoC,IAAK,CAC5BH,EAAOI,EAAMD,EACb,IAAIwB,GAAW5B,EAAOC,EAGtB,KAAK2B,EAAU,KAGf,IAAIO,KACJ,KAAK,GAAIC,GAAI,EAAGA,EAAIR,EAAS5D,OAAQoE,IAAK,CACxC,GAAIC,GAAUT,EAASQ,EACvB,IACElC,GAAYA,IAAamC,EAAQnC,UAC/BA,IAAamC,EAAQnC,SAASoC,WAC5BjE,GAAWA,IAAYgE,EAAQhE,QACnC,CACA8D,EAAUN,KAAKQ,OACV,CACLzB,EAAYyB,EAAQzB,SACpB,IAAIA,KAAeA,EAAUc,QAAU,EAAG,OACjCV,GAAUJ,EAAUM,UACpBN,GAAUU,YAAYV,EAAUa,SAM7C,GAAIU,EAAUnE,OAAQ,CACpBgC,EAAOC,GAAQkC,MACV,OACEnC,GAAOC,IAGlB,GAAIpD,EAAE0F,KAAKvC,GAAS,MAAOA,GAO7BH,GAAO2C,KAAQ,SAASvC,EAAMC,EAAU7B,GAEtC,GAAI2B,GAASD,EAAU0C,KAAaxC,EAAMC,EAAUrD,EAAE6F,KAAK9E,KAAKkE,IAAKlE,MACrE,OAAOA,MAAK6C,GAAGT,MAAa,GAAG3B,GAIjCwB,GAAO8C,aAAgB,SAAShC,EAAKV,EAAMC,GAEzC,GAAIF,GAASD,EAAU0C,KAAaxC,EAAMC,EAAUrD,EAAE6F,KAAK9E,KAAKoE,cAAepE,KAAM+C,GACrF,OAAO/C,MAAKuD,SAASR,EAAKX,GAK5B,IAAIyC,GAAU,SAASG,EAAK3C,EAAMC,EAAU2C,GAC1C,GAAI3C,EAAU,CACZ,GAAIsC,GAAOI,EAAI3C,GAAQpD,EAAE2F,KAAK,WAC5BK,EAAM5C,EAAMuC,EACZtC,GAAStB,MAAMhB,KAAMc,YAEvB8D,GAAKF,UAAYpC,EAEnB,MAAO0C,GAOT/C,GAAOiD,QAAW,SAAS7C,GACzB,IAAKrC,KAAKiD,QAAS,MAAOjD,KAE1B,IAAII,GAAS+E,KAAKC,IAAI,EAAGtE,UAAUV,OAAS,EAC5C,IAAIQ,GAAOhB,MAAMQ,EACjB,KAAK,GAAIoC,GAAI,EAAGA,EAAIpC,EAAQoC,IAAK5B,EAAK4B,GAAK1B,UAAU0B,EAAI,EAEzDL,GAAUkD,EAAYrF,KAAKiD,QAASZ,MAAW,GAAGzB,EAClD,OAAOZ,MAIT,IAAIqF,GAAa,SAASC,EAAWjD,EAAM3B,EAAIE,GAC7C,GAAI0E,EAAW,CACb,GAAIlD,GAASkD,EAAUjD,EACvB,IAAIkD,GAAYD,EAAUE,GAC1B,IAAIpD,GAAUmD,EAAWA,EAAYA,EAAU5F,OAC/C,IAAIyC,EAAQqD,EAAcrD,EAAQxB,EAClC,IAAI2E,EAAWE,EAAcF,GAAYlD,GAAMqD,OAAO9E,IAExD,MAAO0E,GAMT,IAAIG,GAAgB,SAASrD,EAAQxB,GACnC,GAAI+E,GAAInD,GAAK,EAAGoD,EAAIxD,EAAOhC,OAAQyF,EAAKjF,EAAK,GAAIkF,EAAKlF,EAAK,GAAImF,EAAKnF,EAAK,EACzE,QAAQA,EAAKR,QACX,IAAK,GAAG,QAASoC,EAAIoD,GAAID,EAAKvD,EAAOI,IAAIF,SAASzB,KAAK8E,EAAGxC,IAAM,OAChE,KAAK,GAAG,QAASX,EAAIoD,GAAID,EAAKvD,EAAOI,IAAIF,SAASzB,KAAK8E,EAAGxC,IAAK0C,EAAK,OACpE,KAAK,GAAG,QAASrD,EAAIoD,GAAID,EAAKvD,EAAOI,IAAIF,SAASzB,KAAK8E,EAAGxC,IAAK0C,EAAIC,EAAK,OACxE,KAAK,GAAG,QAAStD,EAAIoD,GAAID,EAAKvD,EAAOI,IAAIF,SAASzB,KAAK8E,EAAGxC,IAAK0C,EAAIC,EAAIC,EAAK,OAC5E,SAAS,QAASvD,EAAIoD,GAAID,EAAKvD,EAAOI,IAAIF,SAAStB,MAAM2E,EAAGxC,IAAKvC,EAAO,SAK5EqB,GAAO6C,KAAS7C,EAAOY,EACvBZ,GAAO+D,OAAS/D,EAAOiC,GAIvBjF,GAAEgH,OAAO7G,EAAU6C,EAYnB,IAAIiE,GAAQ9G,EAAS8G,MAAQ,SAASlE,EAAY+B,GAChD,GAAIlC,GAAQG,KACZ+B,KAAYA,KACZ/D,MAAKmG,IAAMlH,EAAEwE,SAASzD,KAAKoG,UAC3BpG,MAAKgC,aACL,IAAI+B,EAAQsC,WAAYrG,KAAKqG,WAAatC,EAAQsC,UAClD,IAAItC,EAAQuC,MAAOzE,EAAQ7B,KAAKsG,MAAMzE,EAAOkC,MAC7ClC,GAAQ5C,EAAEsH,YAAa1E,EAAO5C,EAAEuH,OAAOxG,KAAM,YAC7CA,MAAKyG,IAAI5E,EAAOkC,EAChB/D,MAAK0G,UACL1G,MAAK2G,WAAW3F,MAAMhB,KAAMc,WAI9B7B,GAAEgH,OAAOC,EAAMrG,UAAWoC,GAGxByE,QAAS,KAGTE,gBAAiB,KAIjBC,YAAa,KAIbT,UAAW,IAIXO,WAAY,aAGZG,OAAQ,SAAS/C,GACf,MAAO9E,GAAE8H,MAAM/G,KAAKgC,aAKtBgF,KAAM,WACJ,MAAO5H,GAAS4H,KAAKhG,MAAMhB,KAAMc,YAInCc,IAAK,SAASqF,GACZ,MAAOjH,MAAKgC,WAAWiF,IAIzBC,OAAQ,SAASD,GACf,MAAOhI,GAAEiI,OAAOlH,KAAK4B,IAAIqF,KAK3BE,IAAK,SAASF,GACZ,MAAOjH,MAAK4B,IAAIqF,IAAS,MAI3BlF,QAAS,SAASF,GAChB,QAAS5C,EAAEuB,SAASqB,EAAO7B,MAAMA,KAAKgC,aAMxCyE,IAAK,SAASW,EAAKC,EAAKtD,GACtB,GAAIqD,GAAO,KAAM,MAAOpH,KAGxB,IAAI6B,EACJ,UAAWuF,KAAQ,SAAU,CAC3BvF,EAAQuF,CACRrD,GAAUsD,MACL,EACJxF,MAAYuF,GAAOC,EAGtBtD,IAAYA,KAGZ,KAAK/D,KAAKsH,UAAUzF,EAAOkC,GAAU,MAAO,MAG5C,IAAIwD,GAAaxD,EAAQwD,KACzB,IAAIC,GAAazD,EAAQyD,MACzB,IAAIC,KACJ,IAAIC,GAAa1H,KAAK2H,SACtB3H,MAAK2H,UAAY,IAEjB,KAAKD,EAAU,CACb1H,KAAK4H,oBAAsB3I,EAAE8H,MAAM/G,KAAKgC,WACxChC,MAAK0G,WAGP,GAAImB,GAAU7H,KAAKgC,UACnB,IAAI0E,GAAU1G,KAAK0G,OACnB,IAAIoB,GAAU9H,KAAK4H,mBAGnB,KAAK,GAAIX,KAAQpF,GAAO,CACtBwF,EAAMxF,EAAMoF,EACZ,KAAKhI,EAAE8I,QAAQF,EAAQZ,GAAOI,GAAMI,EAAQxD,KAAKgD,EACjD,KAAKhI,EAAE8I,QAAQD,EAAKb,GAAOI,GAAM,CAC/BX,EAAQO,GAAQI,MACX,OACEX,GAAQO,GAEjBM,QAAeM,GAAQZ,GAAQY,EAAQZ,GAAQI,EAIjDrH,KAAKsD,GAAKtD,KAAK4B,IAAI5B,KAAK6G,YAGxB,KAAKW,EAAQ,CACX,GAAIC,EAAQrH,OAAQJ,KAAKgI,SAAWjE,CACpC,KAAK,GAAIvB,GAAI,EAAGA,EAAIiF,EAAQrH,OAAQoC,IAAK,CACvCxC,KAAKkF,QAAQ,UAAYuC,EAAQjF,GAAIxC,KAAM6H,EAAQJ,EAAQjF,IAAKuB,IAMpE,GAAI2D,EAAU,MAAO1H,KACrB,KAAKwH,EAAQ,CACX,MAAOxH,KAAKgI,SAAU,CACpBjE,EAAU/D,KAAKgI,QACfhI,MAAKgI,SAAW,KAChBhI,MAAKkF,QAAQ,SAAUlF,KAAM+D,IAGjC/D,KAAKgI,SAAW,KAChBhI,MAAK2H,UAAY,KACjB,OAAO3H,OAKTuH,MAAO,SAASN,EAAMlD,GACpB,MAAO/D,MAAKyG,IAAIQ,MAAW,GAAGhI,EAAEgH,UAAWlC,GAAUwD,MAAO,SAI9DU,MAAO,SAASlE,GACd,GAAIlC,KACJ,KAAK,GAAIuF,KAAOpH,MAAKgC,WAAYH,EAAMuF,OAAY,EACnD,OAAOpH,MAAKyG,IAAI5E,EAAO5C,EAAEgH,UAAWlC,GAAUwD,MAAO,SAKvDW,WAAY,SAASjB,GACnB,GAAIA,GAAQ,KAAM,OAAQhI,EAAEqF,QAAQtE,KAAK0G,QACzC,OAAOzH,GAAEkI,IAAInH,KAAK0G,QAASO,IAS7BkB,kBAAmB,SAASC,GAC1B,IAAKA,EAAM,MAAOpI,MAAKkI,aAAejJ,EAAE8H,MAAM/G,KAAK0G,SAAW,KAC9D,IAAI2B,GAAMrI,KAAK2H,UAAY3H,KAAK4H,oBAAsB5H,KAAKgC,UAC3D,IAAI0E,KACJ,KAAK,GAAIO,KAAQmB,GAAM,CACrB,GAAIf,GAAMe,EAAKnB,EACf,IAAIhI,EAAE8I,QAAQM,EAAIpB,GAAOI,GAAM,QAC/BX,GAAQO,GAAQI,EAElB,MAAOpI,GAAE0F,KAAK+B,GAAWA,EAAU,OAKrC4B,SAAU,SAASrB,GACjB,GAAIA,GAAQ,OAASjH,KAAK4H,oBAAqB,MAAO,KACtD,OAAO5H,MAAK4H,oBAAoBX,IAKlCsB,mBAAoB,WAClB,MAAOtJ,GAAE8H,MAAM/G,KAAK4H,sBAKtBY,MAAO,SAASzE,GACdA,EAAU9E,EAAEgH,QAAQK,MAAO,MAAOvC,EAClC,IAAIpC,GAAQ3B,IACZ,IAAIyI,GAAU1E,EAAQ0E,OACtB1E,GAAQ0E,QAAU,SAASC,GACzB,GAAIC,GAAc5E,EAAQuC,MAAQ3E,EAAM2E,MAAMoC,EAAM3E,GAAW2E,CAC/D,KAAK/G,EAAM8E,IAAIkC,EAAa5E,GAAU,MAAO,MAC7C,IAAI0E,EAASA,EAAQ5H,KAAKkD,EAAQtD,QAASkB,EAAO+G,EAAM3E,EACxDpC,GAAMuD,QAAQ,OAAQvD,EAAO+G,EAAM3E,GAErC6E,GAAU5I,KAAM+D,EAChB,OAAO/D,MAAKgH,KAAK,OAAQhH,KAAM+D,IAMjC8E,KAAM,SAASzB,EAAKC,EAAKtD,GAEvB,GAAIlC,EACJ,IAAIuF,GAAO,YAAeA,KAAQ,SAAU,CAC1CvF,EAAQuF,CACRrD,GAAUsD,MACL,EACJxF,MAAYuF,GAAOC,EAGtBtD,EAAU9E,EAAEgH,QAAQ6C,SAAU,KAAMxC,MAAO,MAAOvC,EAClD,IAAIgF,GAAOhF,EAAQgF,IAKnB,IAAIlH,IAAUkH,EAAM,CAClB,IAAK/I,KAAKyG,IAAI5E,EAAOkC,GAAU,MAAO,WACjC,CACL,IAAK/D,KAAKsH,UAAUzF,EAAOkC,GAAU,MAAO,OAK9C,GAAIpC,GAAQ3B,IACZ,IAAIyI,GAAU1E,EAAQ0E,OACtB,IAAIzG,GAAahC,KAAKgC,UACtB+B,GAAQ0E,QAAU,SAASC,GAEzB/G,EAAMK,WAAaA,CACnB,IAAI2G,GAAc5E,EAAQuC,MAAQ3E,EAAM2E,MAAMoC,EAAM3E,GAAW2E,CAC/D,IAAIK,EAAMJ,EAAc1J,EAAEgH,UAAWpE,EAAO8G,EAC5C,IAAIA,IAAgBhH,EAAM8E,IAAIkC,EAAa5E,GAAU,MAAO,MAC5D,IAAI0E,EAASA,EAAQ5H,KAAKkD,EAAQtD,QAASkB,EAAO+G,EAAM3E,EACxDpC,GAAMuD,QAAQ,OAAQvD,EAAO+G,EAAM3E,GAErC6E,GAAU5I,KAAM+D,EAGhB,IAAIlC,GAASkH,EAAM/I,KAAKgC,WAAa/C,EAAEgH,UAAWjE,EAAYH,EAE9D,IAAIxB,GAASL,KAAKgJ,QAAU,SAAYjF,EAAQkF,MAAQ,QAAU,QAClE,IAAI5I,IAAW,UAAY0D,EAAQlC,MAAOkC,EAAQlC,MAAQA,CAC1D,IAAIqH,GAAMlJ,KAAKgH,KAAK3G,EAAQL,KAAM+D,EAGlC/D,MAAKgC,WAAaA,CAElB,OAAOkH,IAMTC,QAAS,SAASpF,GAChBA,EAAUA,EAAU9E,EAAE8H,MAAMhD,KAC5B,IAAIpC,GAAQ3B,IACZ,IAAIyI,GAAU1E,EAAQ0E,OACtB,IAAIM,GAAOhF,EAAQgF,IAEnB,IAAII,GAAU,WACZxH,EAAMyC,eACNzC,GAAMuD,QAAQ,UAAWvD,EAAOA,EAAM0E,WAAYtC,GAGpDA,GAAQ0E,QAAU,SAASC,GACzB,GAAIK,EAAMI,GACV,IAAIV,EAASA,EAAQ5H,KAAKkD,EAAQtD,QAASkB,EAAO+G,EAAM3E,EACxD,KAAKpC,EAAMqH,QAASrH,EAAMuD,QAAQ,OAAQvD,EAAO+G,EAAM3E,GAGzD,IAAImF,GAAM,KACV,IAAIlJ,KAAKgJ,QAAS,CAChB/J,EAAEmK,MAAMrF,EAAQ0E,aACX,CACLG,EAAU5I,KAAM+D,EAChBmF,GAAMlJ,KAAKgH,KAAK,SAAUhH,KAAM+D,GAElC,IAAKgF,EAAMI,GACX,OAAOD,IAMTG,IAAK,WACH,GAAIC,GACFrK,EAAEuH,OAAOxG,KAAM,YACff,EAAEuH,OAAOxG,KAAKqG,WAAY,QAC1BkD,GACF,IAAIvJ,KAAKgJ,QAAS,MAAOM,EACzB,IAAIhG,GAAKtD,KAAK4B,IAAI5B,KAAK6G,YACvB,OAAOyC,GAAKE,QAAQ,SAAU,OAASC,mBAAmBnG,IAK5DgD,MAAO,SAASoC,EAAM3E,GACpB,MAAO2E,IAIT3B,MAAO,WACL,MAAO,IAAI/G,MAAK0J,YAAY1J,KAAKgC,aAInCgH,MAAO,WACL,OAAQhJ,KAAKmH,IAAInH,KAAK6G,cAIxB8C,QAAS,SAAS5F,GAChB,MAAO/D,MAAKsH,aAAcrI,EAAEsH,UAAUuC,SAAU,MAAO/E,KAKzDuD,UAAW,SAASzF,EAAOkC,GACzB,IAAKA,EAAQ+E,WAAa9I,KAAK8I,SAAU,MAAO,KAChDjH,GAAQ5C,EAAEgH,UAAWjG,KAAKgC,WAAYH,EACtC,IAAI+H,GAAQ5J,KAAK4G,gBAAkB5G,KAAK8I,SAASjH,EAAOkC,IAAY,IACpE,KAAK6F,EAAO,MAAO,KACnB5J,MAAKkF,QAAQ,UAAWlF,KAAM4J,EAAO3K,EAAEgH,OAAOlC,GAAU6C,gBAAiBgD,IACzE,OAAO,SAOX,IAAIC,IAAiBnH,KAAM,EAAGoH,OAAQ,EAAGC,MAAO,EAAGC,OAAQ,EAAGC,KAAM,EAChEC,KAAM,EAAGC,MAAO,EAAG7F,QAAS,EAGhCrD,GAAqBiF,EAAO2D,EAAc,aAe1C,IAAIO,GAAahL,EAASgL,WAAa,SAASC,EAAQtG,GACtDA,IAAYA,KACZ,IAAIA,EAAQpC,MAAO3B,KAAK2B,MAAQoC,EAAQpC,KACxC,IAAIoC,EAAQuG,iBAAoB,GAAGtK,KAAKsK,WAAavG,EAAQuG,UAC7DtK,MAAKuK,QACLvK,MAAK2G,WAAW3F,MAAMhB,KAAMc,UAC5B,IAAIuJ,EAAQrK,KAAKwK,MAAMH,EAAQpL,EAAEgH,QAAQuB,OAAQ,MAAOzD,IAI1D,IAAI0G,IAAcC,IAAK,KAAMC,OAAQ,KAAMC,MAAO,KAClD,IAAIC,IAAcH,IAAK,KAAMC,OAAQ,MAGrC,IAAIG,GAAS,SAASC,EAAOC,EAAQC,GACnCA,EAAK9F,KAAK+F,IAAI/F,KAAKC,IAAI6F,EAAI,GAAIF,EAAM3K,OACrC,IAAI+K,GAAOvL,MAAMmL,EAAM3K,OAAS6K,EAChC,IAAI7K,GAAS4K,EAAO5K,MACpB,KAAK,GAAIoC,GAAI,EAAGA,EAAI2I,EAAK/K,OAAQoC,IAAK2I,EAAK3I,GAAKuI,EAAMvI,EAAIyI,EAC1D,KAAKzI,EAAI,EAAGA,EAAIpC,EAAQoC,IAAKuI,EAAMvI,EAAIyI,GAAMD,EAAOxI,EACpD,KAAKA,EAAI,EAAGA,EAAI2I,EAAK/K,OAAQoC,IAAKuI,EAAMvI,EAAIpC,EAAS6K,GAAME,EAAK3I,GAIlEvD,GAAEgH,OAAOmE,EAAWvK,UAAWoC,GAI7BN,MAAOuE,EAIPS,WAAY,aAIZG,OAAQ,SAAS/C,GACf,MAAO/D,MAAKgF,IAAI,SAASrD,GAAS,MAAOA,GAAMmF,OAAO/C,MAIxDiD,KAAM,WACJ,MAAO5H,GAAS4H,KAAKhG,MAAMhB,KAAMc,YAMnC4J,IAAK,SAASL,EAAQtG,GACpB,MAAO/D,MAAKyG,IAAI4D,EAAQpL,EAAEgH,QAAQ2E,MAAO,OAAQ7G,EAAS8G,KAI5DF,OAAQ,SAASN,EAAQtG,GACvBA,EAAU9E,EAAEgH,UAAWlC,EACvB,IAAIqH,IAAYnM,EAAEoM,QAAQhB,EAC1BA,GAASe,GAAYf,GAAUpL,EAAE8H,MAAMsD,EACvC,IAAIiB,GAAUtL,KAAKuL,cAAclB,EAAQtG,EACzC,KAAKA,EAAQyD,QAAU8D,EAAStL,KAAKkF,QAAQ,SAAUlF,KAAM+D,EAC7D,OAAOqH,GAAWE,EAAQ,GAAKA,GAOjC7E,IAAK,SAAS4D,EAAQtG,GACpB,GAAIsG,GAAU,KAAM,MAEpBtG,GAAU9E,EAAEsH,YAAaxC,EAAS0G,EAClC,IAAI1G,EAAQuC,QAAUtG,KAAKwB,SAAS6I,GAASA,EAASrK,KAAKsG,MAAM+D,EAAQtG,EAEzE,IAAIqH,IAAYnM,EAAEoM,QAAQhB,EAC1BA,GAASe,GAAYf,GAAUA,EAAO1K,OAEtC,IAAIsL,GAAKlH,EAAQkH,EACjB,IAAIA,GAAM,KAAMA,GAAMA,CACtB,IAAIA,EAAK,EAAGA,GAAMjL,KAAKI,OAAS,CAEhC,IAAIqG,KACJ,IAAI+E,KACJ,IAAIC,KACJ,IAAIC,KAEJ,IAAIhB,GAAM3G,EAAQ2G,GAClB,IAAIE,GAAQ7G,EAAQ6G,KACpB,IAAID,GAAS5G,EAAQ4G,MAErB,IAAIgB,GAAO,KACX,IAAIC,GAAW5L,KAAKsK,YAAeW,GAAM,MAASlH,EAAQ4H,OAAS,KACnE,IAAIE,GAAW5M,EAAEyC,SAAS1B,KAAKsK,YAActK,KAAKsK,WAAa,IAI/D,IAAI3I,EACJ,KAAK,GAAIa,GAAI,EAAGA,EAAI6H,EAAOjK,OAAQoC,IAAK,CACtCb,EAAQ0I,EAAO7H,EAIf,IAAIsJ,GAAW9L,KAAK4B,IAAID,EACxB,IAAImK,EAAU,CACZ,GAAIlB,GAASjJ,IAAUmK,EAAU,CAC/B,GAAIjK,GAAQ7B,KAAKwB,SAASG,GAASA,EAAMK,WAAaL,CACtD,IAAIoC,EAAQuC,MAAOzE,EAAQiK,EAASxF,MAAMzE,EAAOkC,EACjD+H,GAASrF,IAAI5E,EAAOkC,EACpB,IAAI6H,IAAaD,EAAMA,EAAOG,EAAS5D,WAAW2D,GAEpD,IAAKH,EAASI,EAAS3F,KAAM,CAC3BuF,EAASI,EAAS3F,KAAO,IACzBM,GAAIxC,KAAK6H,GAEXzB,EAAO7H,GAAKsJ,MAGP,IAAIpB,EAAK,CACd/I,EAAQ0I,EAAO7H,GAAKxC,KAAK+L,cAAcpK,EAAOoC,EAC9C,IAAIpC,EAAO,CACT6J,EAAMvH,KAAKtC,EACX3B,MAAKgM,cAAcrK,EAAOoC,EAC1B2H,GAAS/J,EAAMwE,KAAO,IACtBM,GAAIxC,KAAKtC,KAMf,GAAIgJ,EAAQ,CACV,IAAKnI,EAAI,EAAGA,EAAIxC,KAAKI,OAAQoC,IAAK,CAChCb,EAAQ3B,KAAKqK,OAAO7H,EACpB,KAAKkJ,EAAS/J,EAAMwE,KAAMsF,EAASxH,KAAKtC,GAE1C,GAAI8J,EAASrL,OAAQJ,KAAKuL,cAAcE,EAAU1H,GAIpD,GAAIkI,GAAe,KACnB,IAAIzC,IAAWoC,GAAYlB,GAAOC,CAClC,IAAIlE,EAAIrG,QAAUoJ,EAAS,CACzByC,EAAejM,KAAKI,QAAUqG,EAAIrG,QAAUnB,EAAEiN,KAAKlM,KAAKqK,OAAQ,SAAS1I,EAAOwK,GAC9E,MAAOxK,KAAU8E,EAAI0F,IAEvBnM,MAAKqK,OAAOjK,OAAS,CACrB0K,GAAO9K,KAAKqK,OAAQ5D,EAAK,EACzBzG,MAAKI,OAASJ,KAAKqK,OAAOjK,WACrB,IAAIoL,EAAMpL,OAAQ,CACvB,GAAIwL,EAAUD,EAAO,IACrBb,GAAO9K,KAAKqK,OAAQmB,EAAOP,GAAM,KAAOjL,KAAKI,OAAS6K,EACtDjL,MAAKI,OAASJ,KAAKqK,OAAOjK,OAI5B,GAAIuL,EAAM3L,KAAK2L,MAAMnE,OAAQ,MAG7B,KAAKzD,EAAQyD,OAAQ,CACnB,IAAKhF,EAAI,EAAGA,EAAIgJ,EAAMpL,OAAQoC,IAAK,CACjC,GAAIyI,GAAM,KAAMlH,EAAQoI,MAAQlB,EAAKzI,CACrCb,GAAQ6J,EAAMhJ,EACdb,GAAMuD,QAAQ,MAAOvD,EAAO3B,KAAM+D,GAEpC,GAAI4H,GAAQM,EAAcjM,KAAKkF,QAAQ,OAAQlF,KAAM+D,EACrD,IAAIyH,EAAMpL,QAAUqL,EAASrL,OAAQJ,KAAKkF,QAAQ,SAAUlF,KAAM+D,GAIpE,MAAOqH,GAAWf,EAAO,GAAKA,GAOhCG,MAAO,SAASH,EAAQtG,GACtBA,EAAUA,EAAU9E,EAAE8H,MAAMhD,KAC5B,KAAK,GAAIvB,GAAI,EAAGA,EAAIxC,KAAKqK,OAAOjK,OAAQoC,IAAK,CAC3CxC,KAAKoM,iBAAiBpM,KAAKqK,OAAO7H,GAAIuB,GAExCA,EAAQsI,eAAiBrM,KAAKqK,MAC9BrK,MAAKuK,QACLF,GAASrK,KAAK0K,IAAIL,EAAQpL,EAAEgH,QAAQuB,OAAQ,MAAOzD,GACnD,KAAKA,EAAQyD,OAAQxH,KAAKkF,QAAQ,QAASlF,KAAM+D,EACjD,OAAOsG,IAITpG,KAAM,SAAStC,EAAOoC,GACpB,MAAO/D,MAAK0K,IAAI/I,EAAO1C,EAAEgH,QAAQgF,GAAIjL,KAAKI,QAAS2D,KAIrDuI,IAAK,SAASvI,GACZ,GAAIpC,GAAQ3B,KAAKiL,GAAGjL,KAAKI,OAAS,EAClC,OAAOJ,MAAK2K,OAAOhJ,EAAOoC,IAI5BhD,QAAS,SAASY,EAAOoC,GACvB,MAAO/D,MAAK0K,IAAI/I,EAAO1C,EAAEgH,QAAQgF,GAAI,GAAIlH,KAI3CwI,MAAO,SAASxI,GACd,GAAIpC,GAAQ3B,KAAKiL,GAAG,EACpB,OAAOjL,MAAK2K,OAAOhJ,EAAOoC,IAI5BpE,MAAO,WACL,MAAOA,GAAMqB,MAAMhB,KAAKqK,OAAQvJ,YAIlCc,IAAK,SAASmB,GACZ,GAAIA,GAAO,KAAM,WAAY,EAC7B,IAAIO,GAAKtD,KAAKwM,QAAQxM,KAAKwB,SAASuB,GAAOA,EAAIf,WAAae,EAC5D,OAAO/C,MAAKyM,MAAM1J,IAAQ/C,KAAKyM,MAAMnJ,IAAOtD,KAAKyM,MAAM1J,EAAIoD,MAI7D8E,GAAI,SAASkB,GACX,GAAIA,EAAQ,EAAGA,GAASnM,KAAKI,MAC7B,OAAOJ,MAAKqK,OAAO8B,IAKrBO,MAAO,SAAS7K,EAAO8K,GACrB,MAAO3M,MAAK2M,EAAQ,OAAS,UAAU9K,IAKzC+K,UAAW,SAAS/K,GAClB,MAAO7B,MAAK0M,MAAM7K,EAAO,OAM3B8J,KAAM,SAAS5H,GACb,GAAIuG,GAAatK,KAAKsK,UACtB,KAAKA,EAAY,KAAM,IAAIuC,OAAM,yCACjC9I,KAAYA,KAEZ,IAAI3D,GAASkK,EAAWlK,MACxB,IAAInB,EAAEqC,WAAWgJ,GAAaA,EAAarL,EAAE6F,KAAKwF,EAAYtK,KAG9D,IAAII,IAAW,GAAKnB,EAAEyC,SAAS4I,GAAa,CAC1CtK,KAAKqK,OAASrK,KAAK8M,OAAOxC,OACrB,CACLtK,KAAKqK,OAAOsB,KAAKrB,GAEnB,IAAKvG,EAAQyD,OAAQxH,KAAKkF,QAAQ,OAAQlF,KAAM+D,EAChD,OAAO/D,OAIT+M,MAAO,SAAS9F,GACd,MAAOhI,GAAE+N,OAAOhN,KAAKqK,OAAQ,MAAOpD,IAMtCuB,MAAO,SAASzE,GACdA,EAAU9E,EAAEgH,QAAQK,MAAO,MAAOvC,EAClC,IAAI0E,GAAU1E,EAAQ0E,OACtB,IAAIpC,GAAarG,IACjB+D,GAAQ0E,QAAU,SAASC,GACzB,GAAIrI,GAAS0D,EAAQyG,MAAQ,QAAU,KACvCnE,GAAWhG,GAAQqI,EAAM3E,EACzB,IAAI0E,EAASA,EAAQ5H,KAAKkD,EAAQtD,QAAS4F,EAAYqC,EAAM3E,EAC7DsC,GAAWnB,QAAQ,OAAQmB,EAAYqC,EAAM3E,GAE/C6E,GAAU5I,KAAM+D,EAChB,OAAO/D,MAAKgH,KAAK,OAAQhH,KAAM+D,IAMjCkJ,OAAQ,SAAStL,EAAOoC,GACtBA,EAAUA,EAAU9E,EAAE8H,MAAMhD,KAC5B,IAAIgF,GAAOhF,EAAQgF,IACnBpH,GAAQ3B,KAAK+L,cAAcpK,EAAOoC,EAClC,KAAKpC,EAAO,MAAO,MACnB,KAAKoH,EAAM/I,KAAK0K,IAAI/I,EAAOoC,EAC3B,IAAIsC,GAAarG,IACjB,IAAIyI,GAAU1E,EAAQ0E,OACtB1E,GAAQ0E,QAAU,SAAS9G,EAAO+G,EAAMwE,GACtC,GAAInE,EAAM1C,EAAWqE,IAAI/I,EAAOuL,EAChC,IAAIzE,EAASA,EAAQ5H,KAAKqM,EAAazM,QAASkB,EAAO+G,EAAMwE,GAE/DvL,GAAMkH,KAAK,KAAM9E,EACjB,OAAOpC,IAKT2E,MAAO,SAASoC,EAAM3E,GACpB,MAAO2E,IAIT3B,MAAO,WACL,MAAO,IAAI/G,MAAK0J,YAAY1J,KAAKqK,QAC/B1I,MAAO3B,KAAK2B,MACZ2I,WAAYtK,KAAKsK,cAKrBkC,QAAS,SAAU3K,GACjB,MAAOA,GAAM7B,KAAK2B,MAAM9B,UAAUgH,aAAe,OAKnD0D,OAAQ,WACNvK,KAAKI,OAAS,CACdJ,MAAKqK,SACLrK,MAAKyM,UAKPV,cAAe,SAASlK,EAAOkC,GAC7B,GAAI/D,KAAKwB,SAASK,GAAQ,CACxB,IAAKA,EAAMwE,WAAYxE,EAAMwE,WAAarG,IAC1C,OAAO6B,GAETkC,EAAUA,EAAU9E,EAAE8H,MAAMhD,KAC5BA,GAAQsC,WAAarG,IACrB,IAAI2B,GAAQ,GAAI3B,MAAK2B,MAAME,EAAOkC,EAClC,KAAKpC,EAAMiF,gBAAiB,MAAOjF,EACnC3B,MAAKkF,QAAQ,UAAWlF,KAAM2B,EAAMiF,gBAAiB7C,EACrD,OAAO,QAITwH,cAAe,SAASlB,EAAQtG,GAC9B,GAAIuH,KACJ,KAAK,GAAI9I,GAAI,EAAGA,EAAI6H,EAAOjK,OAAQoC,IAAK,CACtC,GAAIb,GAAQ3B,KAAK4B,IAAIyI,EAAO7H,GAC5B,KAAKb,EAAO,QAEZ,IAAIwK,GAAQnM,KAAKmN,QAAQxL,EACzB3B,MAAKqK,OAAOS,OAAOqB,EAAO,EAC1BnM,MAAKI,QAEL,KAAK2D,EAAQyD,OAAQ,CACnBzD,EAAQoI,MAAQA,CAChBxK,GAAMuD,QAAQ,SAAUvD,EAAO3B,KAAM+D,GAGvCuH,EAAQrH,KAAKtC,EACb3B,MAAKoM,iBAAiBzK,EAAOoC,GAE/B,MAAOuH,GAAQlL,OAASkL,EAAU,OAKpC9J,SAAU,SAAUG,GAClB,MAAOA,aAAiBuE,IAI1B8F,cAAe,SAASrK,EAAOoC,GAC7B/D,KAAKyM,MAAM9K,EAAMwE,KAAOxE,CACxB,IAAI2B,GAAKtD,KAAKwM,QAAQ7K,EAAMK,WAC5B,IAAIsB,GAAM,KAAMtD,KAAKyM,MAAMnJ,GAAM3B,CACjCA,GAAMkB,GAAG,MAAO7C,KAAKoN,cAAepN,OAItCoM,iBAAkB,SAASzK,EAAOoC,SACzB/D,MAAKyM,MAAM9K,EAAMwE,IACxB,IAAI7C,GAAKtD,KAAKwM,QAAQ7K,EAAMK,WAC5B,IAAIsB,GAAM,WAAatD,MAAKyM,MAAMnJ,EAClC,IAAItD,OAAS2B,EAAM0E,iBAAmB1E,GAAM0E,UAC5C1E,GAAMuC,IAAI,MAAOlE,KAAKoN,cAAepN,OAOvCoN,cAAe,SAASC,EAAO1L,EAAO0E,EAAYtC,GAChD,IAAKsJ,IAAU,OAASA,IAAU,WAAahH,IAAerG,KAAM,MACpE,IAAIqN,IAAU,UAAWrN,KAAK2K,OAAOhJ,EAAOoC,EAC5C,IAAIsJ,IAAU,SAAU,CACtB,GAAIC,GAAStN,KAAKwM,QAAQ7K,EAAM4G,qBAChC,IAAIjF,GAAKtD,KAAKwM,QAAQ7K,EAAMK,WAC5B,IAAIsL,IAAWhK,EAAI,CACjB,GAAIgK,GAAU,WAAatN,MAAKyM,MAAMa,EACtC,IAAIhK,GAAM,KAAMtD,KAAKyM,MAAMnJ,GAAM3B,GAGrC3B,KAAKkF,QAAQlE,MAAMhB,KAAMc,aAQ7B,IAAIyM,IAAsBC,QAAS,EAAGpM,KAAM,EAAG4D,IAAK,EAAGyI,QAAS,EAAGC,OAAQ,EACvEC,MAAO,EAAGC,OAAQ,EAAGC,YAAa,EAAGC,MAAO,EAAGC,KAAM,EAAGC,OAAQ,EAAGC,OAAQ,EAC3EC,OAAQ,EAAGC,OAAQ,EAAGC,MAAO,EAAG5I,IAAK,EAAG0G,KAAM,EAAGmC,IAAK,EAAGC,QAAS,EAAGC,SAAU,EAC/EC,SAAU,EAAGxB,OAAQ,EAAG5H,IAAK,EAAG8F,IAAK,EAAGuD,QAAS,EAAG9J,KAAM,EAAGgI,MAAO,EACpE+B,KAAM,EAAGC,KAAM,EAAGC,QAAS,EAAGC,KAAM,EAAG1D,KAAM,EAAG2D,KAAM,EAAGC,KAAM,EAC/DC,QAAS,EAAGC,WAAY,EAAG9B,QAAS,EAAG+B,QAAS,EAAGC,YAAa,EAChE7K,QAAS,EAAG6F,MAAO,EAAGiF,OAAQ,EAAGC,UAAW,EAAGC,QAAS,EAAGC,QAAS,EACpEzC,OAAQ,EAAG0C,QAAS,EAGxBvO,GAAqBmJ,EAAYmD,EAAmB,SAepD,IAAIkC,GAAOrQ,EAASqQ,KAAO,SAAS1L,GAClC/D,KAAKmG,IAAMlH,EAAEwE,SAAS,OACtBxE,GAAEgH,OAAOjG,KAAMf,EAAEgL,KAAKlG,EAAS2L,GAC/B1P,MAAK2P,gBACL3P,MAAK2G,WAAW3F,MAAMhB,KAAMc,WAI9B,IAAI8O,GAAwB,gBAG5B,IAAIF,IAAe,QAAS,aAAc,KAAM,KAAM,aAAc,YAAa,UAAW,SAG5FzQ,GAAEgH,OAAOwJ,EAAK5P,UAAWoC,GAGvB4N,QAAS,MAIT3Q,EAAG,SAAS4Q,GACV,MAAO9P,MAAK+P,IAAIhC,KAAK+B,IAKvBnJ,WAAY,aAKZqJ,OAAQ,WACN,MAAOhQ,OAKT2K,OAAQ,WACN3K,KAAKiQ,gBACLjQ,MAAKoE,eACL,OAAOpE,OAMTiQ,eAAgB,WACdjQ,KAAK+P,IAAIpF,UAKXuF,WAAY,SAASC,GACnBnQ,KAAKoQ,kBACLpQ,MAAKqQ,YAAYF,EACjBnQ,MAAKsQ,gBACL,OAAOtQ,OAQTqQ,YAAa,SAASE,GACpBvQ,KAAK+P,IAAMQ,YAAcnR,GAASF,EAAIqR,EAAKnR,EAASF,EAAEqR,EACtDvQ,MAAKuQ,GAAKvQ,KAAK+P,IAAI,IAgBrBO,eAAgB,SAASlO,GACvBA,IAAWA,EAASnD,EAAEuH,OAAOxG,KAAM,UACnC,KAAKoC,EAAQ,MAAOpC,KACpBA,MAAKoQ,kBACL,KAAK,GAAIhJ,KAAOhF,GAAQ,CACtB,GAAI/B,GAAS+B,EAAOgF,EACpB,KAAKnI,EAAEqC,WAAWjB,GAASA,EAASL,KAAKK,EACzC,KAAKA,EAAQ,QACb,IAAImQ,GAAQpJ,EAAIoJ,MAAMZ,EACtB5P,MAAKyQ,SAASD,EAAM,GAAIA,EAAM,GAAIvR,EAAE6F,KAAKzE,EAAQL,OAEnD,MAAOA,OAMTyQ,SAAU,SAASC,EAAWZ,EAAUa,GACtC3Q,KAAK+P,IAAIlN,GAAG6N,EAAY,kBAAoB1Q,KAAKmG,IAAK2J,EAAUa,EAChE,OAAO3Q,OAMToQ,iBAAkB,WAChB,GAAIpQ,KAAK+P,IAAK/P,KAAK+P,IAAI7L,IAAI,kBAAoBlE,KAAKmG,IACpD,OAAOnG,OAKT4Q,WAAY,SAASF,EAAWZ,EAAUa,GACxC3Q,KAAK+P,IAAI7L,IAAIwM,EAAY,kBAAoB1Q,KAAKmG,IAAK2J,EAAUa,EACjE,OAAO3Q,OAKT6Q,eAAgB,SAAShB,GACvB,MAAOiB,UAASC,cAAclB,IAOhCF,eAAgB,WACd,IAAK3P,KAAKuQ,GAAI,CACZ,GAAI1O,GAAQ5C,EAAEgH,UAAWhH,EAAEuH,OAAOxG,KAAM,cACxC,IAAIA,KAAKsD,GAAIzB,EAAMyB,GAAKrE,EAAEuH,OAAOxG,KAAM,KACvC,IAAIA,KAAKgR,UAAWnP,EAAM,SAAW5C,EAAEuH,OAAOxG,KAAM,YACpDA,MAAKkQ,WAAWlQ,KAAK6Q,eAAe5R,EAAEuH,OAAOxG,KAAM,YACnDA,MAAKiR,eAAepP,OACf,CACL7B,KAAKkQ,WAAWjR,EAAEuH,OAAOxG,KAAM,SAMnCiR,eAAgB,SAASjP,GACvBhC,KAAK+P,IAAI9I,KAAKjF,KAuBlB5C,GAAS4H,KAAO,SAAS3G,EAAQsB,EAAOoC,GACtC,GAAImN,GAAOC,EAAU9Q,EAGrBpB,GAAEsH,SAASxC,IAAYA,OACrB9D,YAAab,EAASa,YACtBC,YAAad,EAASc,aAIxB,IAAIkR,IAAUF,KAAMA,EAAMG,SAAU,OAGpC,KAAKtN,EAAQsF,IAAK,CAChB+H,EAAO/H,IAAMpK,EAAEuH,OAAO7E,EAAO,QAAU4H,IAIzC,GAAIxF,EAAQuN,MAAQ,MAAQ3P,IAAUtB,IAAW,UAAYA,IAAW,UAAYA,IAAW,SAAU,CACvG+Q,EAAOG,YAAc,kBACrBH,GAAOE,KAAOE,KAAKC,UAAU1N,EAAQlC,OAASF,EAAMmF,OAAO/C,IAI7D,GAAIA,EAAQ7D,YAAa,CACvBkR,EAAOG,YAAc,mCACrBH,GAAOE,KAAOF,EAAOE,MAAQ3P,MAAOyP,EAAOE,SAK7C,GAAIvN,EAAQ9D,cAAgBiR,IAAS,OAASA,IAAS,UAAYA,IAAS,SAAU,CACpFE,EAAOF,KAAO,MACd,IAAInN,EAAQ7D,YAAakR,EAAOE,KAAKI,QAAUR,CAC/C,IAAIS,GAAa5N,EAAQ4N,UACzB5N,GAAQ4N,WAAa,SAASzI,GAC5BA,EAAI0I,iBAAiB,yBAA0BV,EAC/C,IAAIS,EAAY,MAAOA,GAAW3Q,MAAMhB,KAAMc,YAKlD,GAAIsQ,EAAOF,OAAS,QAAUnN,EAAQ7D,YAAa,CACjDkR,EAAOS,YAAc,MAIvB,GAAIjI,GAAQ7F,EAAQ6F,KACpB7F,GAAQ6F,MAAQ,SAASV,EAAK4I,EAAYC,GACxChO,EAAQ+N,WAAaA,CACrB/N,GAAQgO,YAAcA,CACtB,IAAInI,EAAOA,EAAM/I,KAAKkD,EAAQtD,QAASyI,EAAK4I,EAAYC,GAI1D,IAAI7I,GAAMnF,EAAQmF,IAAM9J,EAAS4S,KAAK/S,EAAEgH,OAAOmL,EAAQrN,GACvDpC,GAAMuD,QAAQ,UAAWvD,EAAOuH,EAAKnF,EACrC,OAAOmF,GAIT,IAAIiI,IACFlE,OAAU,OACVgF,OAAU,MACVhJ,MAAU,QACViJ,SAAU,SACVC,KAAU,MAKZ/S,GAAS4S,KAAO,WACd,MAAO5S,GAASF,EAAE8S,KAAKhR,MAAM5B,EAASF,EAAG4B,WAQ3C,IAAIsR,GAAShT,EAASgT,OAAS,SAASrO,GACtCA,IAAYA,KACZ,IAAIA,EAAQsO,OAAQrS,KAAKqS,OAAStO,EAAQsO,MAC1CrS,MAAKsS,aACLtS,MAAK2G,WAAW3F,MAAMhB,KAAMc,WAK9B,IAAIyR,GAAgB,YACpB,IAAIC,GAAgB,cACpB,IAAIC,GAAgB,QACpB,IAAIC,GAAgB,0BAGpBzT,GAAEgH,OAAOmM,EAAOvS,UAAWoC,GAIzB0E,WAAY,aAQZgM,MAAO,SAASA,EAAOtQ,EAAMC,GAC3B,IAAKrD,EAAE2T,SAASD,GAAQA,EAAQ3S,KAAK6S,eAAeF,EACpD,IAAI1T,EAAEqC,WAAWe,GAAO,CACtBC,EAAWD,CACXA,GAAO,GAET,IAAKC,EAAUA,EAAWtC,KAAKqC,EAC/B,IAAIyQ,GAAS9S,IACbZ,GAAS2T,QAAQJ,MAAMA,EAAO,SAASK,GACrC,GAAIpS,GAAOkS,EAAOG,mBAAmBN,EAAOK,EAC5C,IAAIF,EAAOI,QAAQ5Q,EAAU1B,EAAMyB,KAAU,MAAO,CAClDyQ,EAAO5N,QAAQlE,MAAM8R,GAAS,SAAWzQ,GAAMqD,OAAO9E,GACtDkS,GAAO5N,QAAQ,QAAS7C,EAAMzB,EAC9BxB,GAAS2T,QAAQ7N,QAAQ,QAAS4N,EAAQzQ,EAAMzB,KAGpD,OAAOZ,OAKTkT,QAAS,SAAS5Q,EAAU1B,EAAMyB,GAChC,GAAIC,EAAUA,EAAStB,MAAMhB,KAAMY,IAIrCuS,SAAU,SAASH,EAAUjP,GAC3B3E,EAAS2T,QAAQI,SAASH,EAAUjP,EACpC,OAAO/D,OAMTsS,YAAa,WACX,IAAKtS,KAAKqS,OAAQ,MAClBrS,MAAKqS,OAASpT,EAAEuH,OAAOxG,KAAM,SAC7B,IAAI2S,GAAON,EAASpT,EAAEyD,KAAK1C,KAAKqS,OAChC,QAAQM,EAAQN,EAAO/F,QAAU,KAAM,CACrCtM,KAAK2S,MAAMA,EAAO3S,KAAKqS,OAAOM,MAMlCE,eAAgB,SAASF,GACvBA,EAAQA,EAAMnJ,QAAQkJ,EAAc,QACtBlJ,QAAQ+I,EAAe,WACvB/I,QAAQgJ,EAAY,SAAShC,EAAO4C,GACnC,MAAOA,GAAW5C,EAAQ,aAE3BhH,QAAQiJ,EAAY,WAClC,OAAO,IAAIY,QAAO,IAAMV,EAAQ,yBAMlCM,mBAAoB,SAASN,EAAOK,GAClC,GAAI5B,GAASuB,EAAMW,KAAKN,GAAUrT,MAAM,EACxC,OAAOV,GAAE+F,IAAIoM,EAAQ,SAASmC,EAAO/Q,GAEnC,GAAIA,IAAM4O,EAAOhR,OAAS,EAAG,MAAOmT,IAAS,IAC7C,OAAOA,GAAQC,mBAAmBD,GAAS,SAcjD,IAAIE,GAAUrU,EAASqU,QAAU,WAC/BzT,KAAKgE,WACLhE,MAAK0T,SAAWzU,EAAE6F,KAAK9E,KAAK0T,SAAU1T,KAGtC,UAAW2T,UAAW,YAAa,CACjC3T,KAAK4T,SAAWD,OAAOC,QACvB5T,MAAK+S,QAAUY,OAAOZ,SAK1B,IAAIc,GAAgB,cAGpB,IAAIC,GAAe,YAGnB,IAAIC,GAAe,MAGnBN,GAAQO,QAAU,KAGlB/U,GAAEgH,OAAOwN,EAAQ5T,UAAWoC,GAI1BgS,SAAU,GAGVC,OAAQ,WACN,GAAIC,GAAOnU,KAAK4T,SAASQ,SAAS5K,QAAQ,SAAU,MACpD,OAAO2K,KAASnU,KAAKpB,OAASoB,KAAKqU,aAIrCC,UAAW,WACT,GAAIH,GAAOnU,KAAKuU,eAAevU,KAAK4T,SAASQ,SAC7C,IAAIxV,GAAOuV,EAAKxU,MAAM,EAAGK,KAAKpB,KAAKwB,OAAS,GAAK,GACjD,OAAOxB,KAASoB,KAAKpB,MAMvB2V,eAAgB,SAASvB,GACvB,MAAOwB,WAAUxB,EAASxJ,QAAQ,OAAQ,WAK5C6K,UAAW,WACT,GAAI7D,GAAQxQ,KAAK4T,SAASa,KAAKjL,QAAQ,MAAO,IAAIgH,MAAM,OACxD,OAAOA,GAAQA,EAAM,GAAK,IAK5BkE,QAAS,SAASf,GAChB,GAAInD,IAASmD,GAAU3T,MAAM4T,SAASa,KAAKjE,MAAM,SACjD,OAAOA,GAAQA,EAAM,GAAK,IAI5BmE,QAAS,WACP,GAAIR,GAAOnU,KAAKuU,eACdvU,KAAK4T,SAASQ,SAAWpU,KAAKqU,aAC9B1U,MAAMK,KAAKpB,KAAKwB,OAAS,EAC3B,OAAO+T,GAAKS,OAAO,KAAO,IAAMT,EAAKxU,MAAM,GAAKwU,GAIlDU,YAAa,SAAS7B,GACpB,GAAIA,GAAY,KAAM,CACpB,GAAIhT,KAAK8U,gBAAkB9U,KAAK+U,iBAAkB,CAChD/B,EAAWhT,KAAK2U,cACX,CACL3B,EAAWhT,KAAK0U,WAGpB,MAAO1B,GAASxJ,QAAQqK,EAAe,KAKzCmB,MAAO,SAASjR,GACd,GAAI0P,EAAQO,QAAS,KAAM,IAAInH,OAAM,4CACrC4G,GAAQO,QAAU,IAIlBhU,MAAK+D,QAAmB9E,EAAEgH,QAAQrH,KAAM,KAAMoB,KAAK+D,QAASA,EAC5D/D,MAAKpB,KAAmBoB,KAAK+D,QAAQnF,IACrCoB,MAAK+U,iBAAmB/U,KAAK+D,QAAQkR,aAAe,KACpDjV,MAAKkV,eAAmB,gBAAkBvB,UAAW7C,SAASqE,mBAAsB,IAAKrE,SAASqE,aAAe,EACjHnV,MAAKoV,eAAmBpV,KAAK+U,kBAAoB/U,KAAKkV,cACtDlV,MAAKqV,kBAAqBrV,KAAK+D,QAAQuR,SACvCtV,MAAKuV,iBAAsBvV,KAAK+S,SAAW/S,KAAK+S,QAAQuC,UACxDtV,MAAK8U,cAAmB9U,KAAKqV,iBAAmBrV,KAAKuV,aACrDvV,MAAKgT,SAAmBhT,KAAK6U,aAG7B7U,MAAKpB,MAAQ,IAAMoB,KAAKpB,KAAO,KAAK4K,QAAQsK,EAAc,IAI1D,IAAI9T,KAAK+U,kBAAoB/U,KAAKqV,gBAAiB,CAIjD,IAAKrV,KAAKuV,gBAAkBvV,KAAKkU,SAAU,CACzC,GAAItV,GAAOoB,KAAKpB,KAAKe,MAAM,GAAI,IAAM,GACrCK,MAAK4T,SAASpK,QAAQ5K,EAAO,IAAMoB,KAAK2U,UAExC,OAAO,UAIF,IAAI3U,KAAKuV,eAAiBvV,KAAKkU,SAAU,CAC9ClU,KAAKmT,SAASnT,KAAK0U,WAAYlL,QAAS,QAQ5C,IAAKxJ,KAAKkV,gBAAkBlV,KAAK+U,mBAAqB/U,KAAK8U,cAAe,CACxE9U,KAAKwV,OAAS1E,SAASC,cAAc,SACrC/Q,MAAKwV,OAAOC,IAAM,cAClBzV,MAAKwV,OAAOE,MAAMC,QAAU,MAC5B3V,MAAKwV,OAAOI,UAAY,CACxB,IAAIC,GAAO/E,SAAS+E,IAEpB,IAAIC,GAAUD,EAAKE,aAAa/V,KAAKwV,OAAQK,EAAKG,YAAYC,aAC9DH,GAAQhF,SAASoF,MACjBJ,GAAQhF,SAASqF,OACjBL,GAAQlC,SAASwC,KAAO,IAAMpW,KAAKgT,SAIrC,GAAIqD,GAAmB1C,OAAO0C,kBAAoB,SAAU3F,EAAWC,GACrE,MAAO2F,aAAY,KAAO5F,EAAWC,GAKvC,IAAI3Q,KAAK8U,cAAe,CACtBuB,EAAiB,WAAYrW,KAAK0T,SAAU,WACvC,IAAI1T,KAAKoV,iBAAmBpV,KAAKwV,OAAQ,CAC9Ca,EAAiB,aAAcrW,KAAK0T,SAAU,WACzC,IAAI1T,KAAK+U,iBAAkB,CAChC/U,KAAKuW,kBAAoBC,YAAYxW,KAAK0T,SAAU1T,KAAKiU,UAG3D,IAAKjU,KAAK+D,QAAQyD,OAAQ,MAAOxH,MAAKyW,WAKxCC,KAAM,WAEJ,GAAIC,GAAsBhD,OAAOgD,qBAAuB,SAAUjG,EAAWC,GAC3E,MAAOiG,aAAY,KAAOlG,EAAWC,GAIvC,IAAI3Q,KAAK8U,cAAe,CACtB6B,EAAoB,WAAY3W,KAAK0T,SAAU,WAC1C,IAAI1T,KAAKoV,iBAAmBpV,KAAKwV,OAAQ,CAC9CmB,EAAoB,aAAc3W,KAAK0T,SAAU,OAInD,GAAI1T,KAAKwV,OAAQ,CACf1E,SAAS+E,KAAKgB,YAAY7W,KAAKwV,OAC/BxV,MAAKwV,OAAS,KAIhB,GAAIxV,KAAKuW,kBAAmBO,cAAc9W,KAAKuW,kBAC/C9C,GAAQO,QAAU,OAKpBrB,MAAO,SAASA,EAAOrQ,GACrBtC,KAAKgE,SAASjD,SAAS4R,MAAOA,EAAOrQ,SAAUA,KAKjDoR,SAAU,SAASpU,GACjB,GAAIuI,GAAU7H,KAAK6U,aAInB,IAAIhN,IAAY7H,KAAKgT,UAAYhT,KAAKwV,OAAQ,CAC5C3N,EAAU7H,KAAK0U,QAAQ1U,KAAKwV,OAAOS,eAGrC,GAAIpO,IAAY7H,KAAKgT,SAAU,MAAO,MACtC,IAAIhT,KAAKwV,OAAQxV,KAAKmT,SAAStL,EAC/B7H,MAAKyW,WAMPA,QAAS,SAASzD,GAEhB,IAAKhT,KAAKsU,YAAa,MAAO,MAC9BtB,GAAWhT,KAAKgT,SAAWhT,KAAK6U,YAAY7B,EAC5C,OAAO/T,GAAEiN,KAAKlM,KAAKgE,SAAU,SAASS,GACpC,GAAIA,EAAQkO,MAAMhQ,KAAKqQ,GAAW,CAChCvO,EAAQnC,SAAS0Q,EACjB,OAAO,UAYbG,SAAU,SAASH,EAAUjP,GAC3B,IAAK0P,EAAQO,QAAS,MAAO,MAC7B,KAAKjQ,GAAWA,IAAY,KAAMA,GAAWmB,UAAWnB,EAGxDiP,GAAWhT,KAAK6U,YAAY7B,GAAY,GAGxC,IAAIpU,GAAOoB,KAAKpB,IAChB,IAAIoU,IAAa,IAAMA,EAAS4B,OAAO,KAAO,IAAK,CACjDhW,EAAOA,EAAKe,MAAM,GAAI,IAAM,IAE9B,GAAI0J,GAAMzK,EAAOoU,CAGjBA,GAAWhT,KAAKuU,eAAevB,EAASxJ,QAAQuK,EAAc,IAE9D,IAAI/T,KAAKgT,WAAaA,EAAU,MAChChT,MAAKgT,SAAWA,CAGhB,IAAIhT,KAAK8U,cAAe,CACtB9U,KAAK+S,QAAQhP,EAAQyF,QAAU,eAAiB,gBAAiBsH,SAASiG,MAAO1N,OAI5E,IAAIrJ,KAAK+U,iBAAkB,CAChC/U,KAAKgX,YAAYhX,KAAK4T,SAAUZ,EAAUjP,EAAQyF,QAClD,IAAIxJ,KAAKwV,QAAWxC,IAAahT,KAAK0U,QAAQ1U,KAAKwV,OAAOS,eAAiB,CACzE,GAAIH,GAAU9V,KAAKwV,OAAOS,aAK1B,KAAKlS,EAAQyF,QAAS,CACpBsM,EAAQhF,SAASoF,MACjBJ,GAAQhF,SAASqF,QAGnBnW,KAAKgX,YAAYlB,EAAQlC,SAAUZ,EAAUjP,EAAQyF,cAKlD,CACL,MAAOxJ,MAAK4T,SAASqD,OAAO5N,GAE9B,GAAItF,EAAQmB,QAAS,MAAOlF,MAAKyW,QAAQzD,IAK3CgE,YAAa,SAASpD,EAAUZ,EAAUxJ,GACxC,GAAIA,EAAS,CACX,GAAIiL,GAAOb,EAASa,KAAKjL,QAAQ,qBAAsB,GACvDoK,GAASpK,QAAQiL,EAAO,IAAMzB,OACzB,CAELY,EAASwC,KAAO,IAAMpD,KAO5B5T,GAAS2T,QAAU,GAAIU,EAQvB,IAAIxN,GAAS,SAASiR,EAAYC,GAChC,GAAIC,GAASpX,IACb,IAAIqX,EAKJ,IAAIH,GAAcjY,EAAEkI,IAAI+P,EAAY,eAAgB,CAClDG,EAAQH,EAAWxN,gBACd,CACL2N,EAAQ,WAAY,MAAOD,GAAOpW,MAAMhB,KAAMc,YAIhD7B,EAAEgH,OAAOoR,EAAOD,EAAQD,EAIxB,IAAIG,GAAY,WAAYtX,KAAK0J,YAAc2N,EAC/CC,GAAUzX,UAAYuX,EAAOvX,SAC7BwX,GAAMxX,UAAY,GAAIyX,EAItB,IAAIJ,EAAYjY,EAAEgH,OAAOoR,EAAMxX,UAAWqX,EAI1CG,GAAME,UAAYH,EAAOvX,SAEzB,OAAOwX,GAITnR,GAAMD,OAASmE,EAAWnE,OAASmM,EAAOnM,OAASwJ,EAAKxJ,OAASwN,EAAQxN,OAASA,CAGlF,IAAIsD,GAAW,WACb,KAAM,IAAIsD,OAAM,kDAIlB,IAAIjE,GAAY,SAASjH,EAAOoC,GAC9B,GAAI6F,GAAQ7F,EAAQ6F,KACpB7F,GAAQ6F,MAAQ,SAASlB,GACvB,GAAIkB,EAAOA,EAAM/I,KAAKkD,EAAQtD,QAASkB,EAAO+G,EAAM3E,EACpDpC,GAAMuD,QAAQ,QAASvD,EAAO+G,EAAM3E,IAIxC,OAAO3E"}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/backbone/backbone.js b/wrt/wrt_support/sample/launcher/bower_components/backbone/backbone.js
new file mode 100644 (file)
index 0000000..c924965
--- /dev/null
@@ -0,0 +1,1894 @@
+//     Backbone.js 1.2.3
+
+//     (c) 2010-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+//     Backbone may be freely distributed under the MIT license.
+//     For all details and documentation:
+//     http://backbonejs.org
+
+(function(factory) {
+
+  // Establish the root object, `window` (`self`) in the browser, or `global` on the server.
+  // We use `self` instead of `window` for `WebWorker` support.
+  var root = (typeof self == 'object' && self.self == self && self) ||
+            (typeof global == 'object' && global.global == global && global);
+
+  // Set up Backbone appropriately for the environment. Start with AMD.
+  if (typeof define === 'function' && define.amd) {
+    define(['underscore', 'jquery', 'exports'], function(_, $, exports) {
+      // Export global even in AMD case in case this script is loaded with
+      // others that may still expect a global Backbone.
+      root.Backbone = factory(root, exports, _, $);
+    });
+
+  // Next for Node.js or CommonJS. jQuery may not be needed as a module.
+  } else if (typeof exports !== 'undefined') {
+    var _ = require('underscore'), $;
+    try { $ = require('jquery'); } catch(e) {}
+    factory(root, exports, _, $);
+
+  // Finally, as a browser global.
+  } else {
+    root.Backbone = factory(root, {}, root._, (root.jQuery || root.Zepto || root.ender || root.$));
+  }
+
+}(function(root, Backbone, _, $) {
+
+  // Initial Setup
+  // -------------
+
+  // Save the previous value of the `Backbone` variable, so that it can be
+  // restored later on, if `noConflict` is used.
+  var previousBackbone = root.Backbone;
+
+  // Create a local reference to a common array method we'll want to use later.
+  var slice = Array.prototype.slice;
+
+  // Current version of the library. Keep in sync with `package.json`.
+  Backbone.VERSION = '1.2.3';
+
+  // For Backbone's purposes, jQuery, Zepto, Ender, or My Library (kidding) owns
+  // the `$` variable.
+  Backbone.$ = $;
+
+  // Runs Backbone.js in *noConflict* mode, returning the `Backbone` variable
+  // to its previous owner. Returns a reference to this Backbone object.
+  Backbone.noConflict = function() {
+    root.Backbone = previousBackbone;
+    return this;
+  };
+
+  // Turn on `emulateHTTP` to support legacy HTTP servers. Setting this option
+  // will fake `"PATCH"`, `"PUT"` and `"DELETE"` requests via the `_method` parameter and
+  // set a `X-Http-Method-Override` header.
+  Backbone.emulateHTTP = false;
+
+  // Turn on `emulateJSON` to support legacy servers that can't deal with direct
+  // `application/json` requests ... this will encode the body as
+  // `application/x-www-form-urlencoded` instead and will send the model in a
+  // form param named `model`.
+  Backbone.emulateJSON = false;
+
+  // Proxy Backbone class methods to Underscore functions, wrapping the model's
+  // `attributes` object or collection's `models` array behind the scenes.
+  //
+  // collection.filter(function(model) { return model.get('age') > 10 });
+  // collection.each(this.addView);
+  //
+  // `Function#apply` can be slow so we use the method's arg count, if we know it.
+  var addMethod = function(length, method, attribute) {
+    switch (length) {
+      case 1: return function() {
+        return _[method](this[attribute]);
+      };
+      case 2: return function(value) {
+        return _[method](this[attribute], value);
+      };
+      case 3: return function(iteratee, context) {
+        return _[method](this[attribute], cb(iteratee, this), context);
+      };
+      case 4: return function(iteratee, defaultVal, context) {
+        return _[method](this[attribute], cb(iteratee, this), defaultVal, context);
+      };
+      default: return function() {
+        var args = slice.call(arguments);
+        args.unshift(this[attribute]);
+        return _[method].apply(_, args);
+      };
+    }
+  };
+  var addUnderscoreMethods = function(Class, methods, attribute) {
+    _.each(methods, function(length, method) {
+      if (_[method]) Class.prototype[method] = addMethod(length, method, attribute);
+    });
+  };
+
+  // Support `collection.sortBy('attr')` and `collection.findWhere({id: 1})`.
+  var cb = function(iteratee, instance) {
+    if (_.isFunction(iteratee)) return iteratee;
+    if (_.isObject(iteratee) && !instance._isModel(iteratee)) return modelMatcher(iteratee);
+    if (_.isString(iteratee)) return function(model) { return model.get(iteratee); };
+    return iteratee;
+  };
+  var modelMatcher = function(attrs) {
+    var matcher = _.matches(attrs);
+    return function(model) {
+      return matcher(model.attributes);
+    };
+  };
+
+  // Backbone.Events
+  // ---------------
+
+  // A module that can be mixed in to *any object* in order to provide it with
+  // a custom event channel. You may bind a callback to an event with `on` or
+  // remove with `off`; `trigger`-ing an event fires all callbacks in
+  // succession.
+  //
+  //     var object = {};
+  //     _.extend(object, Backbone.Events);
+  //     object.on('expand', function(){ alert('expanded'); });
+  //     object.trigger('expand');
+  //
+  var Events = Backbone.Events = {};
+
+  // Regular expression used to split event strings.
+  var eventSplitter = /\s+/;
+
+  // Iterates over the standard `event, callback` (as well as the fancy multiple
+  // space-separated events `"change blur", callback` and jQuery-style event
+  // maps `{event: callback}`).
+  var eventsApi = function(iteratee, events, name, callback, opts) {
+    var i = 0, names;
+    if (name && typeof name === 'object') {
+      // Handle event maps.
+      if (callback !== void 0 && 'context' in opts && opts.context === void 0) opts.context = callback;
+      for (names = _.keys(name); i < names.length ; i++) {
+        events = eventsApi(iteratee, events, names[i], name[names[i]], opts);
+      }
+    } else if (name && eventSplitter.test(name)) {
+      // Handle space separated event names by delegating them individually.
+      for (names = name.split(eventSplitter); i < names.length; i++) {
+        events = iteratee(events, names[i], callback, opts);
+      }
+    } else {
+      // Finally, standard events.
+      events = iteratee(events, name, callback, opts);
+    }
+    return events;
+  };
+
+  // Bind an event to a `callback` function. Passing `"all"` will bind
+  // the callback to all events fired.
+  Events.on = function(name, callback, context) {
+    return internalOn(this, name, callback, context);
+  };
+
+  // Guard the `listening` argument from the public API.
+  var internalOn = function(obj, name, callback, context, listening) {
+    obj._events = eventsApi(onApi, obj._events || {}, name, callback, {
+        context: context,
+        ctx: obj,
+        listening: listening
+    });
+
+    if (listening) {
+      var listeners = obj._listeners || (obj._listeners = {});
+      listeners[listening.id] = listening;
+    }
+
+    return obj;
+  };
+
+  // Inversion-of-control versions of `on`. Tell *this* object to listen to
+  // an event in another object... keeping track of what it's listening to
+  // for easier unbinding later.
+  Events.listenTo =  function(obj, name, callback) {
+    if (!obj) return this;
+    var id = obj._listenId || (obj._listenId = _.uniqueId('l'));
+    var listeningTo = this._listeningTo || (this._listeningTo = {});
+    var listening = listeningTo[id];
+
+    // This object is not listening to any other events on `obj` yet.
+    // Setup the necessary references to track the listening callbacks.
+    if (!listening) {
+      var thisId = this._listenId || (this._listenId = _.uniqueId('l'));
+      listening = listeningTo[id] = {obj: obj, objId: id, id: thisId, listeningTo: listeningTo, count: 0};
+    }
+
+    // Bind callbacks on obj, and keep track of them on listening.
+    internalOn(obj, name, callback, this, listening);
+    return this;
+  };
+
+  // The reducing API that adds a callback to the `events` object.
+  var onApi = function(events, name, callback, options) {
+    if (callback) {
+      var handlers = events[name] || (events[name] = []);
+      var context = options.context, ctx = options.ctx, listening = options.listening;
+      if (listening) listening.count++;
+
+      handlers.push({ callback: callback, context: context, ctx: context || ctx, listening: listening });
+    }
+    return events;
+  };
+
+  // Remove one or many callbacks. If `context` is null, removes all
+  // callbacks with that function. If `callback` is null, removes all
+  // callbacks for the event. If `name` is null, removes all bound
+  // callbacks for all events.
+  Events.off =  function(name, callback, context) {
+    if (!this._events) return this;
+    this._events = eventsApi(offApi, this._events, name, callback, {
+        context: context,
+        listeners: this._listeners
+    });
+    return this;
+  };
+
+  // Tell this object to stop listening to either specific events ... or
+  // to every object it's currently listening to.
+  Events.stopListening =  function(obj, name, callback) {
+    var listeningTo = this._listeningTo;
+    if (!listeningTo) return this;
+
+    var ids = obj ? [obj._listenId] : _.keys(listeningTo);
+
+    for (var i = 0; i < ids.length; i++) {
+      var listening = listeningTo[ids[i]];
+
+      // If listening doesn't exist, this object is not currently
+      // listening to obj. Break out early.
+      if (!listening) break;
+
+      listening.obj.off(name, callback, this);
+    }
+    if (_.isEmpty(listeningTo)) this._listeningTo = void 0;
+
+    return this;
+  };
+
+  // The reducing API that removes a callback from the `events` object.
+  var offApi = function(events, name, callback, options) {
+    if (!events) return;
+
+    var i = 0, listening;
+    var context = options.context, listeners = options.listeners;
+
+    // Delete all events listeners and "drop" events.
+    if (!name && !callback && !context) {
+      var ids = _.keys(listeners);
+      for (; i < ids.length; i++) {
+        listening = listeners[ids[i]];
+        delete listeners[listening.id];
+        delete listening.listeningTo[listening.objId];
+      }
+      return;
+    }
+
+    var names = name ? [name] : _.keys(events);
+    for (; i < names.length; i++) {
+      name = names[i];
+      var handlers = events[name];
+
+      // Bail out if there are no events stored.
+      if (!handlers) break;
+
+      // Replace events if there are any remaining.  Otherwise, clean up.
+      var remaining = [];
+      for (var j = 0; j < handlers.length; j++) {
+        var handler = handlers[j];
+        if (
+          callback && callback !== handler.callback &&
+            callback !== handler.callback._callback ||
+              context && context !== handler.context
+        ) {
+          remaining.push(handler);
+        } else {
+          listening = handler.listening;
+          if (listening && --listening.count === 0) {
+            delete listeners[listening.id];
+            delete listening.listeningTo[listening.objId];
+          }
+        }
+      }
+
+      // Update tail event if the list has any events.  Otherwise, clean up.
+      if (remaining.length) {
+        events[name] = remaining;
+      } else {
+        delete events[name];
+      }
+    }
+    if (_.size(events)) return events;
+  };
+
+  // Bind an event to only be triggered a single time. After the first time
+  // the callback is invoked, its listener will be removed. If multiple events
+  // are passed in using the space-separated syntax, the handler will fire
+  // once for each event, not once for a combination of all events.
+  Events.once =  function(name, callback, context) {
+    // Map the event into a `{event: once}` object.
+    var events = eventsApi(onceMap, {}, name, callback, _.bind(this.off, this));
+    return this.on(events, void 0, context);
+  };
+
+  // Inversion-of-control versions of `once`.
+  Events.listenToOnce =  function(obj, name, callback) {
+    // Map the event into a `{event: once}` object.
+    var events = eventsApi(onceMap, {}, name, callback, _.bind(this.stopListening, this, obj));
+    return this.listenTo(obj, events);
+  };
+
+  // Reduces the event callbacks into a map of `{event: onceWrapper}`.
+  // `offer` unbinds the `onceWrapper` after it has been called.
+  var onceMap = function(map, name, callback, offer) {
+    if (callback) {
+      var once = map[name] = _.once(function() {
+        offer(name, once);
+        callback.apply(this, arguments);
+      });
+      once._callback = callback;
+    }
+    return map;
+  };
+
+  // Trigger one or many events, firing all bound callbacks. Callbacks are
+  // passed the same arguments as `trigger` is, apart from the event name
+  // (unless you're listening on `"all"`, which will cause your callback to
+  // receive the true name of the event as the first argument).
+  Events.trigger =  function(name) {
+    if (!this._events) return this;
+
+    var length = Math.max(0, arguments.length - 1);
+    var args = Array(length);
+    for (var i = 0; i < length; i++) args[i] = arguments[i + 1];
+
+    eventsApi(triggerApi, this._events, name, void 0, args);
+    return this;
+  };
+
+  // Handles triggering the appropriate event callbacks.
+  var triggerApi = function(objEvents, name, cb, args) {
+    if (objEvents) {
+      var events = objEvents[name];
+      var allEvents = objEvents.all;
+      if (events && allEvents) allEvents = allEvents.slice();
+      if (events) triggerEvents(events, args);
+      if (allEvents) triggerEvents(allEvents, [name].concat(args));
+    }
+    return objEvents;
+  };
+
+  // A difficult-to-believe, but optimized internal dispatch function for
+  // triggering events. Tries to keep the usual cases speedy (most internal
+  // Backbone events have 3 arguments).
+  var triggerEvents = function(events, args) {
+    var ev, i = -1, l = events.length, a1 = args[0], a2 = args[1], a3 = args[2];
+    switch (args.length) {
+      case 0: while (++i < l) (ev = events[i]).callback.call(ev.ctx); return;
+      case 1: while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1); return;
+      case 2: while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1, a2); return;
+      case 3: while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1, a2, a3); return;
+      default: while (++i < l) (ev = events[i]).callback.apply(ev.ctx, args); return;
+    }
+  };
+
+  // Aliases for backwards compatibility.
+  Events.bind   = Events.on;
+  Events.unbind = Events.off;
+
+  // Allow the `Backbone` object to serve as a global event bus, for folks who
+  // want global "pubsub" in a convenient place.
+  _.extend(Backbone, Events);
+
+  // Backbone.Model
+  // --------------
+
+  // Backbone **Models** are the basic data object in the framework --
+  // frequently representing a row in a table in a database on your server.
+  // A discrete chunk of data and a bunch of useful, related methods for
+  // performing computations and transformations on that data.
+
+  // Create a new model with the specified attributes. A client id (`cid`)
+  // is automatically generated and assigned for you.
+  var Model = Backbone.Model = function(attributes, options) {
+    var attrs = attributes || {};
+    options || (options = {});
+    this.cid = _.uniqueId(this.cidPrefix);
+    this.attributes = {};
+    if (options.collection) this.collection = options.collection;
+    if (options.parse) attrs = this.parse(attrs, options) || {};
+    attrs = _.defaults({}, attrs, _.result(this, 'defaults'));
+    this.set(attrs, options);
+    this.changed = {};
+    this.initialize.apply(this, arguments);
+  };
+
+  // Attach all inheritable methods to the Model prototype.
+  _.extend(Model.prototype, Events, {
+
+    // A hash of attributes whose current and previous value differ.
+    changed: null,
+
+    // The value returned during the last failed validation.
+    validationError: null,
+
+    // The default name for the JSON `id` attribute is `"id"`. MongoDB and
+    // CouchDB users may want to set this to `"_id"`.
+    idAttribute: 'id',
+
+    // The prefix is used to create the client id which is used to identify models locally.
+    // You may want to override this if you're experiencing name clashes with model ids.
+    cidPrefix: 'c',
+
+    // Initialize is an empty function by default. Override it with your own
+    // initialization logic.
+    initialize: function(){},
+
+    // Return a copy of the model's `attributes` object.
+    toJSON: function(options) {
+      return _.clone(this.attributes);
+    },
+
+    // Proxy `Backbone.sync` by default -- but override this if you need
+    // custom syncing semantics for *this* particular model.
+    sync: function() {
+      return Backbone.sync.apply(this, arguments);
+    },
+
+    // Get the value of an attribute.
+    get: function(attr) {
+      return this.attributes[attr];
+    },
+
+    // Get the HTML-escaped value of an attribute.
+    escape: function(attr) {
+      return _.escape(this.get(attr));
+    },
+
+    // Returns `true` if the attribute contains a value that is not null
+    // or undefined.
+    has: function(attr) {
+      return this.get(attr) != null;
+    },
+
+    // Special-cased proxy to underscore's `_.matches` method.
+    matches: function(attrs) {
+      return !!_.iteratee(attrs, this)(this.attributes);
+    },
+
+    // Set a hash of model attributes on the object, firing `"change"`. This is
+    // the core primitive operation of a model, updating the data and notifying
+    // anyone who needs to know about the change in state. The heart of the beast.
+    set: function(key, val, options) {
+      if (key == null) return this;
+
+      // Handle both `"key", value` and `{key: value}` -style arguments.
+      var attrs;
+      if (typeof key === 'object') {
+        attrs = key;
+        options = val;
+      } else {
+        (attrs = {})[key] = val;
+      }
+
+      options || (options = {});
+
+      // Run validation.
+      if (!this._validate(attrs, options)) return false;
+
+      // Extract attributes and options.
+      var unset      = options.unset;
+      var silent     = options.silent;
+      var changes    = [];
+      var changing   = this._changing;
+      this._changing = true;
+
+      if (!changing) {
+        this._previousAttributes = _.clone(this.attributes);
+        this.changed = {};
+      }
+
+      var current = this.attributes;
+      var changed = this.changed;
+      var prev    = this._previousAttributes;
+
+      // For each `set` attribute, update or delete the current value.
+      for (var attr in attrs) {
+        val = attrs[attr];
+        if (!_.isEqual(current[attr], val)) changes.push(attr);
+        if (!_.isEqual(prev[attr], val)) {
+          changed[attr] = val;
+        } else {
+          delete changed[attr];
+        }
+        unset ? delete current[attr] : current[attr] = val;
+      }
+
+      // Update the `id`.
+      this.id = this.get(this.idAttribute);
+
+      // Trigger all relevant attribute changes.
+      if (!silent) {
+        if (changes.length) this._pending = options;
+        for (var i = 0; i < changes.length; i++) {
+          this.trigger('change:' + changes[i], this, current[changes[i]], options);
+        }
+      }
+
+      // You might be wondering why there's a `while` loop here. Changes can
+      // be recursively nested within `"change"` events.
+      if (changing) return this;
+      if (!silent) {
+        while (this._pending) {
+          options = this._pending;
+          this._pending = false;
+          this.trigger('change', this, options);
+        }
+      }
+      this._pending = false;
+      this._changing = false;
+      return this;
+    },
+
+    // Remove an attribute from the model, firing `"change"`. `unset` is a noop
+    // if the attribute doesn't exist.
+    unset: function(attr, options) {
+      return this.set(attr, void 0, _.extend({}, options, {unset: true}));
+    },
+
+    // Clear all attributes on the model, firing `"change"`.
+    clear: function(options) {
+      var attrs = {};
+      for (var key in this.attributes) attrs[key] = void 0;
+      return this.set(attrs, _.extend({}, options, {unset: true}));
+    },
+
+    // Determine if the model has changed since the last `"change"` event.
+    // If you specify an attribute name, determine if that attribute has changed.
+    hasChanged: function(attr) {
+      if (attr == null) return !_.isEmpty(this.changed);
+      return _.has(this.changed, attr);
+    },
+
+    // Return an object containing all the attributes that have changed, or
+    // false if there are no changed attributes. Useful for determining what
+    // parts of a view need to be updated and/or what attributes need to be
+    // persisted to the server. Unset attributes will be set to undefined.
+    // You can also pass an attributes object to diff against the model,
+    // determining if there *would be* a change.
+    changedAttributes: function(diff) {
+      if (!diff) return this.hasChanged() ? _.clone(this.changed) : false;
+      var old = this._changing ? this._previousAttributes : this.attributes;
+      var changed = {};
+      for (var attr in diff) {
+        var val = diff[attr];
+        if (_.isEqual(old[attr], val)) continue;
+        changed[attr] = val;
+      }
+      return _.size(changed) ? changed : false;
+    },
+
+    // Get the previous value of an attribute, recorded at the time the last
+    // `"change"` event was fired.
+    previous: function(attr) {
+      if (attr == null || !this._previousAttributes) return null;
+      return this._previousAttributes[attr];
+    },
+
+    // Get all of the attributes of the model at the time of the previous
+    // `"change"` event.
+    previousAttributes: function() {
+      return _.clone(this._previousAttributes);
+    },
+
+    // Fetch the model from the server, merging the response with the model's
+    // local attributes. Any changed attributes will trigger a "change" event.
+    fetch: function(options) {
+      options = _.extend({parse: true}, options);
+      var model = this;
+      var success = options.success;
+      options.success = function(resp) {
+        var serverAttrs = options.parse ? model.parse(resp, options) : resp;
+        if (!model.set(serverAttrs, options)) return false;
+        if (success) success.call(options.context, model, resp, options);
+        model.trigger('sync', model, resp, options);
+      };
+      wrapError(this, options);
+      return this.sync('read', this, options);
+    },
+
+    // Set a hash of model attributes, and sync the model to the server.
+    // If the server returns an attributes hash that differs, the model's
+    // state will be `set` again.
+    save: function(key, val, options) {
+      // Handle both `"key", value` and `{key: value}` -style arguments.
+      var attrs;
+      if (key == null || typeof key === 'object') {
+        attrs = key;
+        options = val;
+      } else {
+        (attrs = {})[key] = val;
+      }
+
+      options = _.extend({validate: true, parse: true}, options);
+      var wait = options.wait;
+
+      // If we're not waiting and attributes exist, save acts as
+      // `set(attr).save(null, opts)` with validation. Otherwise, check if
+      // the model will be valid when the attributes, if any, are set.
+      if (attrs && !wait) {
+        if (!this.set(attrs, options)) return false;
+      } else {
+        if (!this._validate(attrs, options)) return false;
+      }
+
+      // After a successful server-side save, the client is (optionally)
+      // updated with the server-side state.
+      var model = this;
+      var success = options.success;
+      var attributes = this.attributes;
+      options.success = function(resp) {
+        // Ensure attributes are restored during synchronous saves.
+        model.attributes = attributes;
+        var serverAttrs = options.parse ? model.parse(resp, options) : resp;
+        if (wait) serverAttrs = _.extend({}, attrs, serverAttrs);
+        if (serverAttrs && !model.set(serverAttrs, options)) return false;
+        if (success) success.call(options.context, model, resp, options);
+        model.trigger('sync', model, resp, options);
+      };
+      wrapError(this, options);
+
+      // Set temporary attributes if `{wait: true}` to properly find new ids.
+      if (attrs && wait) this.attributes = _.extend({}, attributes, attrs);
+
+      var method = this.isNew() ? 'create' : (options.patch ? 'patch' : 'update');
+      if (method === 'patch' && !options.attrs) options.attrs = attrs;
+      var xhr = this.sync(method, this, options);
+
+      // Restore attributes.
+      this.attributes = attributes;
+
+      return xhr;
+    },
+
+    // Destroy this model on the server if it was already persisted.
+    // Optimistically removes the model from its collection, if it has one.
+    // If `wait: true` is passed, waits for the server to respond before removal.
+    destroy: function(options) {
+      options = options ? _.clone(options) : {};
+      var model = this;
+      var success = options.success;
+      var wait = options.wait;
+
+      var destroy = function() {
+        model.stopListening();
+        model.trigger('destroy', model, model.collection, options);
+      };
+
+      options.success = function(resp) {
+        if (wait) destroy();
+        if (success) success.call(options.context, model, resp, options);
+        if (!model.isNew()) model.trigger('sync', model, resp, options);
+      };
+
+      var xhr = false;
+      if (this.isNew()) {
+        _.defer(options.success);
+      } else {
+        wrapError(this, options);
+        xhr = this.sync('delete', this, options);
+      }
+      if (!wait) destroy();
+      return xhr;
+    },
+
+    // Default URL for the model's representation on the server -- if you're
+    // using Backbone's restful methods, override this to change the endpoint
+    // that will be called.
+    url: function() {
+      var base =
+        _.result(this, 'urlRoot') ||
+        _.result(this.collection, 'url') ||
+        urlError();
+      if (this.isNew()) return base;
+      var id = this.get(this.idAttribute);
+      return base.replace(/[^\/]$/, '$&/') + encodeURIComponent(id);
+    },
+
+    // **parse** converts a response into the hash of attributes to be `set` on
+    // the model. The default implementation is just to pass the response along.
+    parse: function(resp, options) {
+      return resp;
+    },
+
+    // Create a new model with identical attributes to this one.
+    clone: function() {
+      return new this.constructor(this.attributes);
+    },
+
+    // A model is new if it has never been saved to the server, and lacks an id.
+    isNew: function() {
+      return !this.has(this.idAttribute);
+    },
+
+    // Check if the model is currently in a valid state.
+    isValid: function(options) {
+      return this._validate({}, _.defaults({validate: true}, options));
+    },
+
+    // Run validation against the next complete set of model attributes,
+    // returning `true` if all is well. Otherwise, fire an `"invalid"` event.
+    _validate: function(attrs, options) {
+      if (!options.validate || !this.validate) return true;
+      attrs = _.extend({}, this.attributes, attrs);
+      var error = this.validationError = this.validate(attrs, options) || null;
+      if (!error) return true;
+      this.trigger('invalid', this, error, _.extend(options, {validationError: error}));
+      return false;
+    }
+
+  });
+
+  // Underscore methods that we want to implement on the Model, mapped to the
+  // number of arguments they take.
+  var modelMethods = { keys: 1, values: 1, pairs: 1, invert: 1, pick: 0,
+      omit: 0, chain: 1, isEmpty: 1 };
+
+  // Mix in each Underscore method as a proxy to `Model#attributes`.
+  addUnderscoreMethods(Model, modelMethods, 'attributes');
+
+  // Backbone.Collection
+  // -------------------
+
+  // If models tend to represent a single row of data, a Backbone Collection is
+  // more analogous to a table full of data ... or a small slice or page of that
+  // table, or a collection of rows that belong together for a particular reason
+  // -- all of the messages in this particular folder, all of the documents
+  // belonging to this particular author, and so on. Collections maintain
+  // indexes of their models, both in order, and for lookup by `id`.
+
+  // Create a new **Collection**, perhaps to contain a specific type of `model`.
+  // If a `comparator` is specified, the Collection will maintain
+  // its models in sort order, as they're added and removed.
+  var Collection = Backbone.Collection = function(models, options) {
+    options || (options = {});
+    if (options.model) this.model = options.model;
+    if (options.comparator !== void 0) this.comparator = options.comparator;
+    this._reset();
+    this.initialize.apply(this, arguments);
+    if (models) this.reset(models, _.extend({silent: true}, options));
+  };
+
+  // Default options for `Collection#set`.
+  var setOptions = {add: true, remove: true, merge: true};
+  var addOptions = {add: true, remove: false};
+
+  // Splices `insert` into `array` at index `at`.
+  var splice = function(array, insert, at) {
+    at = Math.min(Math.max(at, 0), array.length);
+    var tail = Array(array.length - at);
+    var length = insert.length;
+    for (var i = 0; i < tail.length; i++) tail[i] = array[i + at];
+    for (i = 0; i < length; i++) array[i + at] = insert[i];
+    for (i = 0; i < tail.length; i++) array[i + length + at] = tail[i];
+  };
+
+  // Define the Collection's inheritable methods.
+  _.extend(Collection.prototype, Events, {
+
+    // The default model for a collection is just a **Backbone.Model**.
+    // This should be overridden in most cases.
+    model: Model,
+
+    // Initialize is an empty function by default. Override it with your own
+    // initialization logic.
+    initialize: function(){},
+
+    // The JSON representation of a Collection is an array of the
+    // models' attributes.
+    toJSON: function(options) {
+      return this.map(function(model) { return model.toJSON(options); });
+    },
+
+    // Proxy `Backbone.sync` by default.
+    sync: function() {
+      return Backbone.sync.apply(this, arguments);
+    },
+
+    // Add a model, or list of models to the set. `models` may be Backbone
+    // Models or raw JavaScript objects to be converted to Models, or any
+    // combination of the two.
+    add: function(models, options) {
+      return this.set(models, _.extend({merge: false}, options, addOptions));
+    },
+
+    // Remove a model, or a list of models from the set.
+    remove: function(models, options) {
+      options = _.extend({}, options);
+      var singular = !_.isArray(models);
+      models = singular ? [models] : _.clone(models);
+      var removed = this._removeModels(models, options);
+      if (!options.silent && removed) this.trigger('update', this, options);
+      return singular ? removed[0] : removed;
+    },
+
+    // Update a collection by `set`-ing a new list of models, adding new ones,
+    // removing models that are no longer present, and merging models that
+    // already exist in the collection, as necessary. Similar to **Model#set**,
+    // the core operation for updating the data contained by the collection.
+    set: function(models, options) {
+      if (models == null) return;
+
+      options = _.defaults({}, options, setOptions);
+      if (options.parse && !this._isModel(models)) models = this.parse(models, options);
+
+      var singular = !_.isArray(models);
+      models = singular ? [models] : models.slice();
+
+      var at = options.at;
+      if (at != null) at = +at;
+      if (at < 0) at += this.length + 1;
+
+      var set = [];
+      var toAdd = [];
+      var toRemove = [];
+      var modelMap = {};
+
+      var add = options.add;
+      var merge = options.merge;
+      var remove = options.remove;
+
+      var sort = false;
+      var sortable = this.comparator && (at == null) && options.sort !== false;
+      var sortAttr = _.isString(this.comparator) ? this.comparator : null;
+
+      // Turn bare objects into model references, and prevent invalid models
+      // from being added.
+      var model;
+      for (var i = 0; i < models.length; i++) {
+        model = models[i];
+
+        // If a duplicate is found, prevent it from being added and
+        // optionally merge it into the existing model.
+        var existing = this.get(model);
+        if (existing) {
+          if (merge && model !== existing) {
+            var attrs = this._isModel(model) ? model.attributes : model;
+            if (options.parse) attrs = existing.parse(attrs, options);
+            existing.set(attrs, options);
+            if (sortable && !sort) sort = existing.hasChanged(sortAttr);
+          }
+          if (!modelMap[existing.cid]) {
+            modelMap[existing.cid] = true;
+            set.push(existing);
+          }
+          models[i] = existing;
+
+        // If this is a new, valid model, push it to the `toAdd` list.
+        } else if (add) {
+          model = models[i] = this._prepareModel(model, options);
+          if (model) {
+            toAdd.push(model);
+            this._addReference(model, options);
+            modelMap[model.cid] = true;
+            set.push(model);
+          }
+        }
+      }
+
+      // Remove stale models.
+      if (remove) {
+        for (i = 0; i < this.length; i++) {
+          model = this.models[i];
+          if (!modelMap[model.cid]) toRemove.push(model);
+        }
+        if (toRemove.length) this._removeModels(toRemove, options);
+      }
+
+      // See if sorting is needed, update `length` and splice in new models.
+      var orderChanged = false;
+      var replace = !sortable && add && remove;
+      if (set.length && replace) {
+        orderChanged = this.length != set.length || _.some(this.models, function(model, index) {
+          return model !== set[index];
+        });
+        this.models.length = 0;
+        splice(this.models, set, 0);
+        this.length = this.models.length;
+      } else if (toAdd.length) {
+        if (sortable) sort = true;
+        splice(this.models, toAdd, at == null ? this.length : at);
+        this.length = this.models.length;
+      }
+
+      // Silently sort the collection if appropriate.
+      if (sort) this.sort({silent: true});
+
+      // Unless silenced, it's time to fire all appropriate add/sort events.
+      if (!options.silent) {
+        for (i = 0; i < toAdd.length; i++) {
+          if (at != null) options.index = at + i;
+          model = toAdd[i];
+          model.trigger('add', model, this, options);
+        }
+        if (sort || orderChanged) this.trigger('sort', this, options);
+        if (toAdd.length || toRemove.length) this.trigger('update', this, options);
+      }
+
+      // Return the added (or merged) model (or models).
+      return singular ? models[0] : models;
+    },
+
+    // When you have more items than you want to add or remove individually,
+    // you can reset the entire set with a new list of models, without firing
+    // any granular `add` or `remove` events. Fires `reset` when finished.
+    // Useful for bulk operations and optimizations.
+    reset: function(models, options) {
+      options = options ? _.clone(options) : {};
+      for (var i = 0; i < this.models.length; i++) {
+        this._removeReference(this.models[i], options);
+      }
+      options.previousModels = this.models;
+      this._reset();
+      models = this.add(models, _.extend({silent: true}, options));
+      if (!options.silent) this.trigger('reset', this, options);
+      return models;
+    },
+
+    // Add a model to the end of the collection.
+    push: function(model, options) {
+      return this.add(model, _.extend({at: this.length}, options));
+    },
+
+    // Remove a model from the end of the collection.
+    pop: function(options) {
+      var model = this.at(this.length - 1);
+      return this.remove(model, options);
+    },
+
+    // Add a model to the beginning of the collection.
+    unshift: function(model, options) {
+      return this.add(model, _.extend({at: 0}, options));
+    },
+
+    // Remove a model from the beginning of the collection.
+    shift: function(options) {
+      var model = this.at(0);
+      return this.remove(model, options);
+    },
+
+    // Slice out a sub-array of models from the collection.
+    slice: function() {
+      return slice.apply(this.models, arguments);
+    },
+
+    // Get a model from the set by id.
+    get: function(obj) {
+      if (obj == null) return void 0;
+      var id = this.modelId(this._isModel(obj) ? obj.attributes : obj);
+      return this._byId[obj] || this._byId[id] || this._byId[obj.cid];
+    },
+
+    // Get the model at the given index.
+    at: function(index) {
+      if (index < 0) index += this.length;
+      return this.models[index];
+    },
+
+    // Return models with matching attributes. Useful for simple cases of
+    // `filter`.
+    where: function(attrs, first) {
+      return this[first ? 'find' : 'filter'](attrs);
+    },
+
+    // Return the first model with matching attributes. Useful for simple cases
+    // of `find`.
+    findWhere: function(attrs) {
+      return this.where(attrs, true);
+    },
+
+    // Force the collection to re-sort itself. You don't need to call this under
+    // normal circumstances, as the set will maintain sort order as each item
+    // is added.
+    sort: function(options) {
+      var comparator = this.comparator;
+      if (!comparator) throw new Error('Cannot sort a set without a comparator');
+      options || (options = {});
+
+      var length = comparator.length;
+      if (_.isFunction(comparator)) comparator = _.bind(comparator, this);
+
+      // Run sort based on type of `comparator`.
+      if (length === 1 || _.isString(comparator)) {
+        this.models = this.sortBy(comparator);
+      } else {
+        this.models.sort(comparator);
+      }
+      if (!options.silent) this.trigger('sort', this, options);
+      return this;
+    },
+
+    // Pluck an attribute from each model in the collection.
+    pluck: function(attr) {
+      return _.invoke(this.models, 'get', attr);
+    },
+
+    // Fetch the default set of models for this collection, resetting the
+    // collection when they arrive. If `reset: true` is passed, the response
+    // data will be passed through the `reset` method instead of `set`.
+    fetch: function(options) {
+      options = _.extend({parse: true}, options);
+      var success = options.success;
+      var collection = this;
+      options.success = function(resp) {
+        var method = options.reset ? 'reset' : 'set';
+        collection[method](resp, options);
+        if (success) success.call(options.context, collection, resp, options);
+        collection.trigger('sync', collection, resp, options);
+      };
+      wrapError(this, options);
+      return this.sync('read', this, options);
+    },
+
+    // Create a new instance of a model in this collection. Add the model to the
+    // collection immediately, unless `wait: true` is passed, in which case we
+    // wait for the server to agree.
+    create: function(model, options) {
+      options = options ? _.clone(options) : {};
+      var wait = options.wait;
+      model = this._prepareModel(model, options);
+      if (!model) return false;
+      if (!wait) this.add(model, options);
+      var collection = this;
+      var success = options.success;
+      options.success = function(model, resp, callbackOpts) {
+        if (wait) collection.add(model, callbackOpts);
+        if (success) success.call(callbackOpts.context, model, resp, callbackOpts);
+      };
+      model.save(null, options);
+      return model;
+    },
+
+    // **parse** converts a response into a list of models to be added to the
+    // collection. The default implementation is just to pass it through.
+    parse: function(resp, options) {
+      return resp;
+    },
+
+    // Create a new collection with an identical list of models as this one.
+    clone: function() {
+      return new this.constructor(this.models, {
+        model: this.model,
+        comparator: this.comparator
+      });
+    },
+
+    // Define how to uniquely identify models in the collection.
+    modelId: function (attrs) {
+      return attrs[this.model.prototype.idAttribute || 'id'];
+    },
+
+    // Private method to reset all internal state. Called when the collection
+    // is first initialized or reset.
+    _reset: function() {
+      this.length = 0;
+      this.models = [];
+      this._byId  = {};
+    },
+
+    // Prepare a hash of attributes (or other model) to be added to this
+    // collection.
+    _prepareModel: function(attrs, options) {
+      if (this._isModel(attrs)) {
+        if (!attrs.collection) attrs.collection = this;
+        return attrs;
+      }
+      options = options ? _.clone(options) : {};
+      options.collection = this;
+      var model = new this.model(attrs, options);
+      if (!model.validationError) return model;
+      this.trigger('invalid', this, model.validationError, options);
+      return false;
+    },
+
+    // Internal method called by both remove and set.
+    _removeModels: function(models, options) {
+      var removed = [];
+      for (var i = 0; i < models.length; i++) {
+        var model = this.get(models[i]);
+        if (!model) continue;
+
+        var index = this.indexOf(model);
+        this.models.splice(index, 1);
+        this.length--;
+
+        if (!options.silent) {
+          options.index = index;
+          model.trigger('remove', model, this, options);
+        }
+
+        removed.push(model);
+        this._removeReference(model, options);
+      }
+      return removed.length ? removed : false;
+    },
+
+    // Method for checking whether an object should be considered a model for
+    // the purposes of adding to the collection.
+    _isModel: function (model) {
+      return model instanceof Model;
+    },
+
+    // Internal method to create a model's ties to a collection.
+    _addReference: function(model, options) {
+      this._byId[model.cid] = model;
+      var id = this.modelId(model.attributes);
+      if (id != null) this._byId[id] = model;
+      model.on('all', this._onModelEvent, this);
+    },
+
+    // Internal method to sever a model's ties to a collection.
+    _removeReference: function(model, options) {
+      delete this._byId[model.cid];
+      var id = this.modelId(model.attributes);
+      if (id != null) delete this._byId[id];
+      if (this === model.collection) delete model.collection;
+      model.off('all', this._onModelEvent, this);
+    },
+
+    // Internal method called every time a model in the set fires an event.
+    // Sets need to update their indexes when models change ids. All other
+    // events simply proxy through. "add" and "remove" events that originate
+    // in other collections are ignored.
+    _onModelEvent: function(event, model, collection, options) {
+      if ((event === 'add' || event === 'remove') && collection !== this) return;
+      if (event === 'destroy') this.remove(model, options);
+      if (event === 'change') {
+        var prevId = this.modelId(model.previousAttributes());
+        var id = this.modelId(model.attributes);
+        if (prevId !== id) {
+          if (prevId != null) delete this._byId[prevId];
+          if (id != null) this._byId[id] = model;
+        }
+      }
+      this.trigger.apply(this, arguments);
+    }
+
+  });
+
+  // Underscore methods that we want to implement on the Collection.
+  // 90% of the core usefulness of Backbone Collections is actually implemented
+  // right here:
+  var collectionMethods = { forEach: 3, each: 3, map: 3, collect: 3, reduce: 4,
+      foldl: 4, inject: 4, reduceRight: 4, foldr: 4, find: 3, detect: 3, filter: 3,
+      select: 3, reject: 3, every: 3, all: 3, some: 3, any: 3, include: 3, includes: 3,
+      contains: 3, invoke: 0, max: 3, min: 3, toArray: 1, size: 1, first: 3,
+      head: 3, take: 3, initial: 3, rest: 3, tail: 3, drop: 3, last: 3,
+      without: 0, difference: 0, indexOf: 3, shuffle: 1, lastIndexOf: 3,
+      isEmpty: 1, chain: 1, sample: 3, partition: 3, groupBy: 3, countBy: 3,
+      sortBy: 3, indexBy: 3};
+
+  // Mix in each Underscore method as a proxy to `Collection#models`.
+  addUnderscoreMethods(Collection, collectionMethods, 'models');
+
+  // Backbone.View
+  // -------------
+
+  // Backbone Views are almost more convention than they are actual code. A View
+  // is simply a JavaScript object that represents a logical chunk of UI in the
+  // DOM. This might be a single item, an entire list, a sidebar or panel, or
+  // even the surrounding frame which wraps your whole app. Defining a chunk of
+  // UI as a **View** allows you to define your DOM events declaratively, without
+  // having to worry about render order ... and makes it easy for the view to
+  // react to specific changes in the state of your models.
+
+  // Creating a Backbone.View creates its initial element outside of the DOM,
+  // if an existing element is not provided...
+  var View = Backbone.View = function(options) {
+    this.cid = _.uniqueId('view');
+    _.extend(this, _.pick(options, viewOptions));
+    this._ensureElement();
+    this.initialize.apply(this, arguments);
+  };
+
+  // Cached regex to split keys for `delegate`.
+  var delegateEventSplitter = /^(\S+)\s*(.*)$/;
+
+  // List of view options to be set as properties.
+  var viewOptions = ['model', 'collection', 'el', 'id', 'attributes', 'className', 'tagName', 'events'];
+
+  // Set up all inheritable **Backbone.View** properties and methods.
+  _.extend(View.prototype, Events, {
+
+    // The default `tagName` of a View's element is `"div"`.
+    tagName: 'div',
+
+    // jQuery delegate for element lookup, scoped to DOM elements within the
+    // current view. This should be preferred to global lookups where possible.
+    $: function(selector) {
+      return this.$el.find(selector);
+    },
+
+    // Initialize is an empty function by default. Override it with your own
+    // initialization logic.
+    initialize: function(){},
+
+    // **render** is the core function that your view should override, in order
+    // to populate its element (`this.el`), with the appropriate HTML. The
+    // convention is for **render** to always return `this`.
+    render: function() {
+      return this;
+    },
+
+    // Remove this view by taking the element out of the DOM, and removing any
+    // applicable Backbone.Events listeners.
+    remove: function() {
+      this._removeElement();
+      this.stopListening();
+      return this;
+    },
+
+    // Remove this view's element from the document and all event listeners
+    // attached to it. Exposed for subclasses using an alternative DOM
+    // manipulation API.
+    _removeElement: function() {
+      this.$el.remove();
+    },
+
+    // Change the view's element (`this.el` property) and re-delegate the
+    // view's events on the new element.
+    setElement: function(element) {
+      this.undelegateEvents();
+      this._setElement(element);
+      this.delegateEvents();
+      return this;
+    },
+
+    // Creates the `this.el` and `this.$el` references for this view using the
+    // given `el`. `el` can be a CSS selector or an HTML string, a jQuery
+    // context or an element. Subclasses can override this to utilize an
+    // alternative DOM manipulation API and are only required to set the
+    // `this.el` property.
+    _setElement: function(el) {
+      this.$el = el instanceof Backbone.$ ? el : Backbone.$(el);
+      this.el = this.$el[0];
+    },
+
+    // Set callbacks, where `this.events` is a hash of
+    //
+    // *{"event selector": "callback"}*
+    //
+    //     {
+    //       'mousedown .title':  'edit',
+    //       'click .button':     'save',
+    //       'click .open':       function(e) { ... }
+    //     }
+    //
+    // pairs. Callbacks will be bound to the view, with `this` set properly.
+    // Uses event delegation for efficiency.
+    // Omitting the selector binds the event to `this.el`.
+    delegateEvents: function(events) {
+      events || (events = _.result(this, 'events'));
+      if (!events) return this;
+      this.undelegateEvents();
+      for (var key in events) {
+        var method = events[key];
+        if (!_.isFunction(method)) method = this[method];
+        if (!method) continue;
+        var match = key.match(delegateEventSplitter);
+        this.delegate(match[1], match[2], _.bind(method, this));
+      }
+      return this;
+    },
+
+    // Add a single event listener to the view's element (or a child element
+    // using `selector`). This only works for delegate-able events: not `focus`,
+    // `blur`, and not `change`, `submit`, and `reset` in Internet Explorer.
+    delegate: function(eventName, selector, listener) {
+      this.$el.on(eventName + '.delegateEvents' + this.cid, selector, listener);
+      return this;
+    },
+
+    // Clears all callbacks previously bound to the view by `delegateEvents`.
+    // You usually don't need to use this, but may wish to if you have multiple
+    // Backbone views attached to the same DOM element.
+    undelegateEvents: function() {
+      if (this.$el) this.$el.off('.delegateEvents' + this.cid);
+      return this;
+    },
+
+    // A finer-grained `undelegateEvents` for removing a single delegated event.
+    // `selector` and `listener` are both optional.
+    undelegate: function(eventName, selector, listener) {
+      this.$el.off(eventName + '.delegateEvents' + this.cid, selector, listener);
+      return this;
+    },
+
+    // Produces a DOM element to be assigned to your view. Exposed for
+    // subclasses using an alternative DOM manipulation API.
+    _createElement: function(tagName) {
+      return document.createElement(tagName);
+    },
+
+    // Ensure that the View has a DOM element to render into.
+    // If `this.el` is a string, pass it through `$()`, take the first
+    // matching element, and re-assign it to `el`. Otherwise, create
+    // an element from the `id`, `className` and `tagName` properties.
+    _ensureElement: function() {
+      if (!this.el) {
+        var attrs = _.extend({}, _.result(this, 'attributes'));
+        if (this.id) attrs.id = _.result(this, 'id');
+        if (this.className) attrs['class'] = _.result(this, 'className');
+        this.setElement(this._createElement(_.result(this, 'tagName')));
+        this._setAttributes(attrs);
+      } else {
+        this.setElement(_.result(this, 'el'));
+      }
+    },
+
+    // Set attributes from a hash on this view's element.  Exposed for
+    // subclasses using an alternative DOM manipulation API.
+    _setAttributes: function(attributes) {
+      this.$el.attr(attributes);
+    }
+
+  });
+
+  // Backbone.sync
+  // -------------
+
+  // Override this function to change the manner in which Backbone persists
+  // models to the server. You will be passed the type of request, and the
+  // model in question. By default, makes a RESTful Ajax request
+  // to the model's `url()`. Some possible customizations could be:
+  //
+  // * Use `setTimeout` to batch rapid-fire updates into a single request.
+  // * Send up the models as XML instead of JSON.
+  // * Persist models via WebSockets instead of Ajax.
+  //
+  // Turn on `Backbone.emulateHTTP` in order to send `PUT` and `DELETE` requests
+  // as `POST`, with a `_method` parameter containing the true HTTP method,
+  // as well as all requests with the body as `application/x-www-form-urlencoded`
+  // instead of `application/json` with the model in a param named `model`.
+  // Useful when interfacing with server-side languages like **PHP** that make
+  // it difficult to read the body of `PUT` requests.
+  Backbone.sync = function(method, model, options) {
+    var type = methodMap[method];
+
+    // Default options, unless specified.
+    _.defaults(options || (options = {}), {
+      emulateHTTP: Backbone.emulateHTTP,
+      emulateJSON: Backbone.emulateJSON
+    });
+
+    // Default JSON-request options.
+    var params = {type: type, dataType: 'json'};
+
+    // Ensure that we have a URL.
+    if (!options.url) {
+      params.url = _.result(model, 'url') || urlError();
+    }
+
+    // Ensure that we have the appropriate request data.
+    if (options.data == null && model && (method === 'create' || method === 'update' || method === 'patch')) {
+      params.contentType = 'application/json';
+      params.data = JSON.stringify(options.attrs || model.toJSON(options));
+    }
+
+    // For older servers, emulate JSON by encoding the request into an HTML-form.
+    if (options.emulateJSON) {
+      params.contentType = 'application/x-www-form-urlencoded';
+      params.data = params.data ? {model: params.data} : {};
+    }
+
+    // For older servers, emulate HTTP by mimicking the HTTP method with `_method`
+    // And an `X-HTTP-Method-Override` header.
+    if (options.emulateHTTP && (type === 'PUT' || type === 'DELETE' || type === 'PATCH')) {
+      params.type = 'POST';
+      if (options.emulateJSON) params.data._method = type;
+      var beforeSend = options.beforeSend;
+      options.beforeSend = function(xhr) {
+        xhr.setRequestHeader('X-HTTP-Method-Override', type);
+        if (beforeSend) return beforeSend.apply(this, arguments);
+      };
+    }
+
+    // Don't process data on a non-GET request.
+    if (params.type !== 'GET' && !options.emulateJSON) {
+      params.processData = false;
+    }
+
+    // Pass along `textStatus` and `errorThrown` from jQuery.
+    var error = options.error;
+    options.error = function(xhr, textStatus, errorThrown) {
+      options.textStatus = textStatus;
+      options.errorThrown = errorThrown;
+      if (error) error.call(options.context, xhr, textStatus, errorThrown);
+    };
+
+    // Make the request, allowing the user to override any Ajax options.
+    var xhr = options.xhr = Backbone.ajax(_.extend(params, options));
+    model.trigger('request', model, xhr, options);
+    return xhr;
+  };
+
+  // Map from CRUD to HTTP for our default `Backbone.sync` implementation.
+  var methodMap = {
+    'create': 'POST',
+    'update': 'PUT',
+    'patch':  'PATCH',
+    'delete': 'DELETE',
+    'read':   'GET'
+  };
+
+  // Set the default implementation of `Backbone.ajax` to proxy through to `$`.
+  // Override this if you'd like to use a different library.
+  Backbone.ajax = function() {
+    return Backbone.$.ajax.apply(Backbone.$, arguments);
+  };
+
+  // Backbone.Router
+  // ---------------
+
+  // Routers map faux-URLs to actions, and fire events when routes are
+  // matched. Creating a new one sets its `routes` hash, if not set statically.
+  var Router = Backbone.Router = function(options) {
+    options || (options = {});
+    if (options.routes) this.routes = options.routes;
+    this._bindRoutes();
+    this.initialize.apply(this, arguments);
+  };
+
+  // Cached regular expressions for matching named param parts and splatted
+  // parts of route strings.
+  var optionalParam = /\((.*?)\)/g;
+  var namedParam    = /(\(\?)?:\w+/g;
+  var splatParam    = /\*\w+/g;
+  var escapeRegExp  = /[\-{}\[\]+?.,\\\^$|#\s]/g;
+
+  // Set up all inheritable **Backbone.Router** properties and methods.
+  _.extend(Router.prototype, Events, {
+
+    // Initialize is an empty function by default. Override it with your own
+    // initialization logic.
+    initialize: function(){},
+
+    // Manually bind a single named route to a callback. For example:
+    //
+    //     this.route('search/:query/p:num', 'search', function(query, num) {
+    //       ...
+    //     });
+    //
+    route: function(route, name, callback) {
+      if (!_.isRegExp(route)) route = this._routeToRegExp(route);
+      if (_.isFunction(name)) {
+        callback = name;
+        name = '';
+      }
+      if (!callback) callback = this[name];
+      var router = this;
+      Backbone.history.route(route, function(fragment) {
+        var args = router._extractParameters(route, fragment);
+        if (router.execute(callback, args, name) !== false) {
+          router.trigger.apply(router, ['route:' + name].concat(args));
+          router.trigger('route', name, args);
+          Backbone.history.trigger('route', router, name, args);
+        }
+      });
+      return this;
+    },
+
+    // Execute a route handler with the provided parameters.  This is an
+    // excellent place to do pre-route setup or post-route cleanup.
+    execute: function(callback, args, name) {
+      if (callback) callback.apply(this, args);
+    },
+
+    // Simple proxy to `Backbone.history` to save a fragment into the history.
+    navigate: function(fragment, options) {
+      Backbone.history.navigate(fragment, options);
+      return this;
+    },
+
+    // Bind all defined routes to `Backbone.history`. We have to reverse the
+    // order of the routes here to support behavior where the most general
+    // routes can be defined at the bottom of the route map.
+    _bindRoutes: function() {
+      if (!this.routes) return;
+      this.routes = _.result(this, 'routes');
+      var route, routes = _.keys(this.routes);
+      while ((route = routes.pop()) != null) {
+        this.route(route, this.routes[route]);
+      }
+    },
+
+    // Convert a route string into a regular expression, suitable for matching
+    // against the current location hash.
+    _routeToRegExp: function(route) {
+      route = route.replace(escapeRegExp, '\\$&')
+                   .replace(optionalParam, '(?:$1)?')
+                   .replace(namedParam, function(match, optional) {
+                     return optional ? match : '([^/?]+)';
+                   })
+                   .replace(splatParam, '([^?]*?)');
+      return new RegExp('^' + route + '(?:\\?([\\s\\S]*))?$');
+    },
+
+    // Given a route, and a URL fragment that it matches, return the array of
+    // extracted decoded parameters. Empty or unmatched parameters will be
+    // treated as `null` to normalize cross-browser behavior.
+    _extractParameters: function(route, fragment) {
+      var params = route.exec(fragment).slice(1);
+      return _.map(params, function(param, i) {
+        // Don't decode the search params.
+        if (i === params.length - 1) return param || null;
+        return param ? decodeURIComponent(param) : null;
+      });
+    }
+
+  });
+
+  // Backbone.History
+  // ----------------
+
+  // Handles cross-browser history management, based on either
+  // [pushState](http://diveintohtml5.info/history.html) and real URLs, or
+  // [onhashchange](https://developer.mozilla.org/en-US/docs/DOM/window.onhashchange)
+  // and URL fragments. If the browser supports neither (old IE, natch),
+  // falls back to polling.
+  var History = Backbone.History = function() {
+    this.handlers = [];
+    this.checkUrl = _.bind(this.checkUrl, this);
+
+    // Ensure that `History` can be used outside of the browser.
+    if (typeof window !== 'undefined') {
+      this.location = window.location;
+      this.history = window.history;
+    }
+  };
+
+  // Cached regex for stripping a leading hash/slash and trailing space.
+  var routeStripper = /^[#\/]|\s+$/g;
+
+  // Cached regex for stripping leading and trailing slashes.
+  var rootStripper = /^\/+|\/+$/g;
+
+  // Cached regex for stripping urls of hash.
+  var pathStripper = /#.*$/;
+
+  // Has the history handling already been started?
+  History.started = false;
+
+  // Set up all inheritable **Backbone.History** properties and methods.
+  _.extend(History.prototype, Events, {
+
+    // The default interval to poll for hash changes, if necessary, is
+    // twenty times a second.
+    interval: 50,
+
+    // Are we at the app root?
+    atRoot: function() {
+      var path = this.location.pathname.replace(/[^\/]$/, '$&/');
+      return path === this.root && !this.getSearch();
+    },
+
+    // Does the pathname match the root?
+    matchRoot: function() {
+      var path = this.decodeFragment(this.location.pathname);
+      var root = path.slice(0, this.root.length - 1) + '/';
+      return root === this.root;
+    },
+
+    // Unicode characters in `location.pathname` are percent encoded so they're
+    // decoded for comparison. `%25` should not be decoded since it may be part
+    // of an encoded parameter.
+    decodeFragment: function(fragment) {
+      return decodeURI(fragment.replace(/%25/g, '%2525'));
+    },
+
+    // In IE6, the hash fragment and search params are incorrect if the
+    // fragment contains `?`.
+    getSearch: function() {
+      var match = this.location.href.replace(/#.*/, '').match(/\?.+/);
+      return match ? match[0] : '';
+    },
+
+    // Gets the true hash value. Cannot use location.hash directly due to bug
+    // in Firefox where location.hash will always be decoded.
+    getHash: function(window) {
+      var match = (window || this).location.href.match(/#(.*)$/);
+      return match ? match[1] : '';
+    },
+
+    // Get the pathname and search params, without the root.
+    getPath: function() {
+      var path = this.decodeFragment(
+        this.location.pathname + this.getSearch()
+      ).slice(this.root.length - 1);
+      return path.charAt(0) === '/' ? path.slice(1) : path;
+    },
+
+    // Get the cross-browser normalized URL fragment from the path or hash.
+    getFragment: function(fragment) {
+      if (fragment == null) {
+        if (this._usePushState || !this._wantsHashChange) {
+          fragment = this.getPath();
+        } else {
+          fragment = this.getHash();
+        }
+      }
+      return fragment.replace(routeStripper, '');
+    },
+
+    // Start the hash change handling, returning `true` if the current URL matches
+    // an existing route, and `false` otherwise.
+    start: function(options) {
+      if (History.started) throw new Error('Backbone.history has already been started');
+      History.started = true;
+
+      // Figure out the initial configuration. Do we need an iframe?
+      // Is pushState desired ... is it available?
+      this.options          = _.extend({root: '/'}, this.options, options);
+      this.root             = this.options.root;
+      this._wantsHashChange = this.options.hashChange !== false;
+      this._hasHashChange   = 'onhashchange' in window && (document.documentMode === void 0 || document.documentMode > 7);
+      this._useHashChange   = this._wantsHashChange && this._hasHashChange;
+      this._wantsPushState  = !!this.options.pushState;
+      this._hasPushState    = !!(this.history && this.history.pushState);
+      this._usePushState    = this._wantsPushState && this._hasPushState;
+      this.fragment         = this.getFragment();
+
+      // Normalize root to always include a leading and trailing slash.
+      this.root = ('/' + this.root + '/').replace(rootStripper, '/');
+
+      // Transition from hashChange to pushState or vice versa if both are
+      // requested.
+      if (this._wantsHashChange && this._wantsPushState) {
+
+        // If we've started off with a route from a `pushState`-enabled
+        // browser, but we're currently in a browser that doesn't support it...
+        if (!this._hasPushState && !this.atRoot()) {
+          var root = this.root.slice(0, -1) || '/';
+          this.location.replace(root + '#' + this.getPath());
+          // Return immediately as browser will do redirect to new url
+          return true;
+
+        // Or if we've started out with a hash-based route, but we're currently
+        // in a browser where it could be `pushState`-based instead...
+        } else if (this._hasPushState && this.atRoot()) {
+          this.navigate(this.getHash(), {replace: true});
+        }
+
+      }
+
+      // Proxy an iframe to handle location events if the browser doesn't
+      // support the `hashchange` event, HTML5 history, or the user wants
+      // `hashChange` but not `pushState`.
+      if (!this._hasHashChange && this._wantsHashChange && !this._usePushState) {
+        this.iframe = document.createElement('iframe');
+        this.iframe.src = 'javascript:0';
+        this.iframe.style.display = 'none';
+        this.iframe.tabIndex = -1;
+        var body = document.body;
+        // Using `appendChild` will throw on IE < 9 if the document is not ready.
+        var iWindow = body.insertBefore(this.iframe, body.firstChild).contentWindow;
+        iWindow.document.open();
+        iWindow.document.close();
+        iWindow.location.hash = '#' + this.fragment;
+      }
+
+      // Add a cross-platform `addEventListener` shim for older browsers.
+      var addEventListener = window.addEventListener || function (eventName, listener) {
+        return attachEvent('on' + eventName, listener);
+      };
+
+      // Depending on whether we're using pushState or hashes, and whether
+      // 'onhashchange' is supported, determine how we check the URL state.
+      if (this._usePushState) {
+        addEventListener('popstate', this.checkUrl, false);
+      } else if (this._useHashChange && !this.iframe) {
+        addEventListener('hashchange', this.checkUrl, false);
+      } else if (this._wantsHashChange) {
+        this._checkUrlInterval = setInterval(this.checkUrl, this.interval);
+      }
+
+      if (!this.options.silent) return this.loadUrl();
+    },
+
+    // Disable Backbone.history, perhaps temporarily. Not useful in a real app,
+    // but possibly useful for unit testing Routers.
+    stop: function() {
+      // Add a cross-platform `removeEventListener` shim for older browsers.
+      var removeEventListener = window.removeEventListener || function (eventName, listener) {
+        return detachEvent('on' + eventName, listener);
+      };
+
+      // Remove window listeners.
+      if (this._usePushState) {
+        removeEventListener('popstate', this.checkUrl, false);
+      } else if (this._useHashChange && !this.iframe) {
+        removeEventListener('hashchange', this.checkUrl, false);
+      }
+
+      // Clean up the iframe if necessary.
+      if (this.iframe) {
+        document.body.removeChild(this.iframe);
+        this.iframe = null;
+      }
+
+      // Some environments will throw when clearing an undefined interval.
+      if (this._checkUrlInterval) clearInterval(this._checkUrlInterval);
+      History.started = false;
+    },
+
+    // Add a route to be tested when the fragment changes. Routes added later
+    // may override previous routes.
+    route: function(route, callback) {
+      this.handlers.unshift({route: route, callback: callback});
+    },
+
+    // Checks the current URL to see if it has changed, and if it has,
+    // calls `loadUrl`, normalizing across the hidden iframe.
+    checkUrl: function(e) {
+      var current = this.getFragment();
+
+      // If the user pressed the back button, the iframe's hash will have
+      // changed and we should use that for comparison.
+      if (current === this.fragment && this.iframe) {
+        current = this.getHash(this.iframe.contentWindow);
+      }
+
+      if (current === this.fragment) return false;
+      if (this.iframe) this.navigate(current);
+      this.loadUrl();
+    },
+
+    // Attempt to load the current URL fragment. If a route succeeds with a
+    // match, returns `true`. If no defined routes matches the fragment,
+    // returns `false`.
+    loadUrl: function(fragment) {
+      // If the root doesn't match, no routes can match either.
+      if (!this.matchRoot()) return false;
+      fragment = this.fragment = this.getFragment(fragment);
+      return _.some(this.handlers, function(handler) {
+        if (handler.route.test(fragment)) {
+          handler.callback(fragment);
+          return true;
+        }
+      });
+    },
+
+    // Save a fragment into the hash history, or replace the URL state if the
+    // 'replace' option is passed. You are responsible for properly URL-encoding
+    // the fragment in advance.
+    //
+    // The options object can contain `trigger: true` if you wish to have the
+    // route callback be fired (not usually desirable), or `replace: true`, if
+    // you wish to modify the current URL without adding an entry to the history.
+    navigate: function(fragment, options) {
+      if (!History.started) return false;
+      if (!options || options === true) options = {trigger: !!options};
+
+      // Normalize the fragment.
+      fragment = this.getFragment(fragment || '');
+
+      // Don't include a trailing slash on the root.
+      var root = this.root;
+      if (fragment === '' || fragment.charAt(0) === '?') {
+        root = root.slice(0, -1) || '/';
+      }
+      var url = root + fragment;
+
+      // Strip the hash and decode for matching.
+      fragment = this.decodeFragment(fragment.replace(pathStripper, ''));
+
+      if (this.fragment === fragment) return;
+      this.fragment = fragment;
+
+      // If pushState is available, we use it to set the fragment as a real URL.
+      if (this._usePushState) {
+        this.history[options.replace ? 'replaceState' : 'pushState']({}, document.title, url);
+
+      // If hash changes haven't been explicitly disabled, update the hash
+      // fragment to store history.
+      } else if (this._wantsHashChange) {
+        this._updateHash(this.location, fragment, options.replace);
+        if (this.iframe && (fragment !== this.getHash(this.iframe.contentWindow))) {
+          var iWindow = this.iframe.contentWindow;
+
+          // Opening and closing the iframe tricks IE7 and earlier to push a
+          // history entry on hash-tag change.  When replace is true, we don't
+          // want this.
+          if (!options.replace) {
+            iWindow.document.open();
+            iWindow.document.close();
+          }
+
+          this._updateHash(iWindow.location, fragment, options.replace);
+        }
+
+      // If you've told us that you explicitly don't want fallback hashchange-
+      // based history, then `navigate` becomes a page refresh.
+      } else {
+        return this.location.assign(url);
+      }
+      if (options.trigger) return this.loadUrl(fragment);
+    },
+
+    // Update the hash location, either replacing the current entry, or adding
+    // a new one to the browser history.
+    _updateHash: function(location, fragment, replace) {
+      if (replace) {
+        var href = location.href.replace(/(javascript:|#).*$/, '');
+        location.replace(href + '#' + fragment);
+      } else {
+        // Some browsers require that `hash` contains a leading #.
+        location.hash = '#' + fragment;
+      }
+    }
+
+  });
+
+  // Create the default Backbone.history.
+  Backbone.history = new History;
+
+  // Helpers
+  // -------
+
+  // Helper function to correctly set up the prototype chain for subclasses.
+  // Similar to `goog.inherits`, but uses a hash of prototype properties and
+  // class properties to be extended.
+  var extend = function(protoProps, staticProps) {
+    var parent = this;
+    var child;
+
+    // The constructor function for the new subclass is either defined by you
+    // (the "constructor" property in your `extend` definition), or defaulted
+    // by us to simply call the parent constructor.
+    if (protoProps && _.has(protoProps, 'constructor')) {
+      child = protoProps.constructor;
+    } else {
+      child = function(){ return parent.apply(this, arguments); };
+    }
+
+    // Add static properties to the constructor function, if supplied.
+    _.extend(child, parent, staticProps);
+
+    // Set the prototype chain to inherit from `parent`, without calling
+    // `parent` constructor function.
+    var Surrogate = function(){ this.constructor = child; };
+    Surrogate.prototype = parent.prototype;
+    child.prototype = new Surrogate;
+
+    // Add prototype properties (instance properties) to the subclass,
+    // if supplied.
+    if (protoProps) _.extend(child.prototype, protoProps);
+
+    // Set a convenience property in case the parent's prototype is needed
+    // later.
+    child.__super__ = parent.prototype;
+
+    return child;
+  };
+
+  // Set up inheritance for the model, collection, router, view and history.
+  Model.extend = Collection.extend = Router.extend = View.extend = History.extend = extend;
+
+  // Throw an error when a URL is needed, and none is supplied.
+  var urlError = function() {
+    throw new Error('A "url" property or function must be specified');
+  };
+
+  // Wrap an optional error callback with a fallback error event.
+  var wrapError = function(model, options) {
+    var error = options.error;
+    options.error = function(resp) {
+      if (error) error.call(options.context, model, resp, options);
+      model.trigger('error', model, resp, options);
+    };
+  };
+
+  return Backbone;
+
+}));
diff --git a/wrt/wrt_support/sample/launcher/bower_components/backbone/bower.json b/wrt/wrt_support/sample/launcher/bower_components/backbone/bower.json
new file mode 100644 (file)
index 0000000..9cbf57b
--- /dev/null
@@ -0,0 +1,8 @@
+{
+  "name"          : "backbone",
+  "main"          : "backbone.js",
+  "dependencies"  : {
+    "underscore"  : ">=1.7.0"
+  },
+  "ignore"        : ["docs", "examples", "test", "*.yml", "*.html", "*.ico", "*.md", "CNAME", ".*", "karma.*", "component.json", "package.json"]
+}
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/.bower.json b/wrt/wrt_support/sample/launcher/bower_components/jquery/.bower.json
new file mode 100644 (file)
index 0000000..8ede223
--- /dev/null
@@ -0,0 +1,39 @@
+{
+  "name": "jquery",
+  "version": "2.1.4",
+  "main": "dist/jquery.js",
+  "license": "MIT",
+  "ignore": [
+    "**/.*",
+    "build",
+    "dist/cdn",
+    "speed",
+    "test",
+    "*.md",
+    "AUTHORS.txt",
+    "Gruntfile.js",
+    "package.json"
+  ],
+  "devDependencies": {
+    "sizzle": "2.1.1-jquery.2.1.2",
+    "requirejs": "2.1.10",
+    "qunit": "1.14.0",
+    "sinon": "1.8.1"
+  },
+  "keywords": [
+    "jquery",
+    "javascript",
+    "library"
+  ],
+  "homepage": "https://github.com/jquery/jquery",
+  "_release": "2.1.4",
+  "_resolution": {
+    "type": "version",
+    "tag": "2.1.4",
+    "commit": "7751e69b615c6eca6f783a81e292a55725af6b85"
+  },
+  "_source": "https://github.com/jquery/jquery.git",
+  "_target": "~2.1.4",
+  "_originalSource": "jquery",
+  "_direct": true
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/MIT-LICENSE.txt b/wrt/wrt_support/sample/launcher/bower_components/jquery/MIT-LICENSE.txt
new file mode 100644 (file)
index 0000000..cdd31b5
--- /dev/null
@@ -0,0 +1,21 @@
+Copyright 2014 jQuery Foundation and other contributors
+http://jquery.com/
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/bower.json b/wrt/wrt_support/sample/launcher/bower_components/jquery/bower.json
new file mode 100644 (file)
index 0000000..0c80cd5
--- /dev/null
@@ -0,0 +1,28 @@
+{
+  "name": "jquery",
+  "version": "2.1.4",
+  "main": "dist/jquery.js",
+  "license": "MIT",
+  "ignore": [
+    "**/.*",
+    "build",
+    "dist/cdn",
+    "speed",
+    "test",
+    "*.md",
+    "AUTHORS.txt",
+    "Gruntfile.js",
+    "package.json"
+  ],
+  "devDependencies": {
+    "sizzle": "2.1.1-jquery.2.1.2",
+    "requirejs": "2.1.10",
+    "qunit": "1.14.0",
+    "sinon": "1.8.1"
+  },
+  "keywords": [
+    "jquery",
+    "javascript",
+    "library"
+  ]
+}
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.js
new file mode 100644 (file)
index 0000000..eed1777
--- /dev/null
@@ -0,0 +1,9210 @@
+/*!
+ * jQuery JavaScript Library v2.1.4
+ * http://jquery.com/
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ *
+ * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2015-04-28T16:01Z
+ */
+
+(function( global, factory ) {
+
+       if ( typeof module === "object" && typeof module.exports === "object" ) {
+               // For CommonJS and CommonJS-like environments where a proper `window`
+               // is present, execute the factory and get jQuery.
+               // For environments that do not have a `window` with a `document`
+               // (such as Node.js), expose a factory as module.exports.
+               // This accentuates the need for the creation of a real `window`.
+               // e.g. var jQuery = require("jquery")(window);
+               // See ticket #14549 for more info.
+               module.exports = global.document ?
+                       factory( global, true ) :
+                       function( w ) {
+                               if ( !w.document ) {
+                                       throw new Error( "jQuery requires a window with a document" );
+                               }
+                               return factory( w );
+                       };
+       } else {
+               factory( global );
+       }
+
+// Pass this if window is not defined yet
+}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
+
+// Support: Firefox 18+
+// Can't be in strict mode, several libs including ASP.NET trace
+// the stack via arguments.caller.callee and Firefox dies if
+// you try to trace through "use strict" call chains. (#13335)
+//
+
+var arr = [];
+
+var slice = arr.slice;
+
+var concat = arr.concat;
+
+var push = arr.push;
+
+var indexOf = arr.indexOf;
+
+var class2type = {};
+
+var toString = class2type.toString;
+
+var hasOwn = class2type.hasOwnProperty;
+
+var support = {};
+
+
+
+var
+       // Use the correct document accordingly with window argument (sandbox)
+       document = window.document,
+
+       version = "2.1.4",
+
+       // Define a local copy of jQuery
+       jQuery = function( selector, context ) {
+               // The jQuery object is actually just the init constructor 'enhanced'
+               // Need init if jQuery is called (just allow error to be thrown if not included)
+               return new jQuery.fn.init( selector, context );
+       },
+
+       // Support: Android<4.1
+       // Make sure we trim BOM and NBSP
+       rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
+
+       // Matches dashed string for camelizing
+       rmsPrefix = /^-ms-/,
+       rdashAlpha = /-([\da-z])/gi,
+
+       // Used by jQuery.camelCase as callback to replace()
+       fcamelCase = function( all, letter ) {
+               return letter.toUpperCase();
+       };
+
+jQuery.fn = jQuery.prototype = {
+       // The current version of jQuery being used
+       jquery: version,
+
+       constructor: jQuery,
+
+       // Start with an empty selector
+       selector: "",
+
+       // The default length of a jQuery object is 0
+       length: 0,
+
+       toArray: function() {
+               return slice.call( this );
+       },
+
+       // Get the Nth element in the matched element set OR
+       // Get the whole matched element set as a clean array
+       get: function( num ) {
+               return num != null ?
+
+                       // Return just the one element from the set
+                       ( num < 0 ? this[ num + this.length ] : this[ num ] ) :
+
+                       // Return all the elements in a clean array
+                       slice.call( this );
+       },
+
+       // Take an array of elements and push it onto the stack
+       // (returning the new matched element set)
+       pushStack: function( elems ) {
+
+               // Build a new jQuery matched element set
+               var ret = jQuery.merge( this.constructor(), elems );
+
+               // Add the old object onto the stack (as a reference)
+               ret.prevObject = this;
+               ret.context = this.context;
+
+               // Return the newly-formed element set
+               return ret;
+       },
+
+       // Execute a callback for every element in the matched set.
+       // (You can seed the arguments with an array of args, but this is
+       // only used internally.)
+       each: function( callback, args ) {
+               return jQuery.each( this, callback, args );
+       },
+
+       map: function( callback ) {
+               return this.pushStack( jQuery.map(this, function( elem, i ) {
+                       return callback.call( elem, i, elem );
+               }));
+       },
+
+       slice: function() {
+               return this.pushStack( slice.apply( this, arguments ) );
+       },
+
+       first: function() {
+               return this.eq( 0 );
+       },
+
+       last: function() {
+               return this.eq( -1 );
+       },
+
+       eq: function( i ) {
+               var len = this.length,
+                       j = +i + ( i < 0 ? len : 0 );
+               return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] );
+       },
+
+       end: function() {
+               return this.prevObject || this.constructor(null);
+       },
+
+       // For internal use only.
+       // Behaves like an Array's method, not like a jQuery method.
+       push: push,
+       sort: arr.sort,
+       splice: arr.splice
+};
+
+jQuery.extend = jQuery.fn.extend = function() {
+       var options, name, src, copy, copyIsArray, clone,
+               target = arguments[0] || {},
+               i = 1,
+               length = arguments.length,
+               deep = false;
+
+       // Handle a deep copy situation
+       if ( typeof target === "boolean" ) {
+               deep = target;
+
+               // Skip the boolean and the target
+               target = arguments[ i ] || {};
+               i++;
+       }
+
+       // Handle case when target is a string or something (possible in deep copy)
+       if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
+               target = {};
+       }
+
+       // Extend jQuery itself if only one argument is passed
+       if ( i === length ) {
+               target = this;
+               i--;
+       }
+
+       for ( ; i < length; i++ ) {
+               // Only deal with non-null/undefined values
+               if ( (options = arguments[ i ]) != null ) {
+                       // Extend the base object
+                       for ( name in options ) {
+                               src = target[ name ];
+                               copy = options[ name ];
+
+                               // Prevent never-ending loop
+                               if ( target === copy ) {
+                                       continue;
+                               }
+
+                               // Recurse if we're merging plain objects or arrays
+                               if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
+                                       if ( copyIsArray ) {
+                                               copyIsArray = false;
+                                               clone = src && jQuery.isArray(src) ? src : [];
+
+                                       } else {
+                                               clone = src && jQuery.isPlainObject(src) ? src : {};
+                                       }
+
+                                       // Never move original objects, clone them
+                                       target[ name ] = jQuery.extend( deep, clone, copy );
+
+                               // Don't bring in undefined values
+                               } else if ( copy !== undefined ) {
+                                       target[ name ] = copy;
+                               }
+                       }
+               }
+       }
+
+       // Return the modified object
+       return target;
+};
+
+jQuery.extend({
+       // Unique for each copy of jQuery on the page
+       expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
+
+       // Assume jQuery is ready without the ready module
+       isReady: true,
+
+       error: function( msg ) {
+               throw new Error( msg );
+       },
+
+       noop: function() {},
+
+       isFunction: function( obj ) {
+               return jQuery.type(obj) === "function";
+       },
+
+       isArray: Array.isArray,
+
+       isWindow: function( obj ) {
+               return obj != null && obj === obj.window;
+       },
+
+       isNumeric: function( obj ) {
+               // parseFloat NaNs numeric-cast false positives (null|true|false|"")
+               // ...but misinterprets leading-number strings, particularly hex literals ("0x...")
+               // subtraction forces infinities to NaN
+               // adding 1 corrects loss of precision from parseFloat (#15100)
+               return !jQuery.isArray( obj ) && (obj - parseFloat( obj ) + 1) >= 0;
+       },
+
+       isPlainObject: function( obj ) {
+               // Not plain objects:
+               // - Any object or value whose internal [[Class]] property is not "[object Object]"
+               // - DOM nodes
+               // - window
+               if ( jQuery.type( obj ) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
+                       return false;
+               }
+
+               if ( obj.constructor &&
+                               !hasOwn.call( obj.constructor.prototype, "isPrototypeOf" ) ) {
+                       return false;
+               }
+
+               // If the function hasn't returned already, we're confident that
+               // |obj| is a plain object, created by {} or constructed with new Object
+               return true;
+       },
+
+       isEmptyObject: function( obj ) {
+               var name;
+               for ( name in obj ) {
+                       return false;
+               }
+               return true;
+       },
+
+       type: function( obj ) {
+               if ( obj == null ) {
+                       return obj + "";
+               }
+               // Support: Android<4.0, iOS<6 (functionish RegExp)
+               return typeof obj === "object" || typeof obj === "function" ?
+                       class2type[ toString.call(obj) ] || "object" :
+                       typeof obj;
+       },
+
+       // Evaluates a script in a global context
+       globalEval: function( code ) {
+               var script,
+                       indirect = eval;
+
+               code = jQuery.trim( code );
+
+               if ( code ) {
+                       // If the code includes a valid, prologue position
+                       // strict mode pragma, execute code by injecting a
+                       // script tag into the document.
+                       if ( code.indexOf("use strict") === 1 ) {
+                               script = document.createElement("script");
+                               script.text = code;
+                               document.head.appendChild( script ).parentNode.removeChild( script );
+                       } else {
+                       // Otherwise, avoid the DOM node creation, insertion
+                       // and removal by using an indirect global eval
+                               indirect( code );
+                       }
+               }
+       },
+
+       // Convert dashed to camelCase; used by the css and data modules
+       // Support: IE9-11+
+       // Microsoft forgot to hump their vendor prefix (#9572)
+       camelCase: function( string ) {
+               return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
+       },
+
+       nodeName: function( elem, name ) {
+               return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
+       },
+
+       // args is for internal usage only
+       each: function( obj, callback, args ) {
+               var value,
+                       i = 0,
+                       length = obj.length,
+                       isArray = isArraylike( obj );
+
+               if ( args ) {
+                       if ( isArray ) {
+                               for ( ; i < length; i++ ) {
+                                       value = callback.apply( obj[ i ], args );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       } else {
+                               for ( i in obj ) {
+                                       value = callback.apply( obj[ i ], args );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       }
+
+               // A special, fast, case for the most common use of each
+               } else {
+                       if ( isArray ) {
+                               for ( ; i < length; i++ ) {
+                                       value = callback.call( obj[ i ], i, obj[ i ] );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       } else {
+                               for ( i in obj ) {
+                                       value = callback.call( obj[ i ], i, obj[ i ] );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       }
+               }
+
+               return obj;
+       },
+
+       // Support: Android<4.1
+       trim: function( text ) {
+               return text == null ?
+                       "" :
+                       ( text + "" ).replace( rtrim, "" );
+       },
+
+       // results is for internal usage only
+       makeArray: function( arr, results ) {
+               var ret = results || [];
+
+               if ( arr != null ) {
+                       if ( isArraylike( Object(arr) ) ) {
+                               jQuery.merge( ret,
+                                       typeof arr === "string" ?
+                                       [ arr ] : arr
+                               );
+                       } else {
+                               push.call( ret, arr );
+                       }
+               }
+
+               return ret;
+       },
+
+       inArray: function( elem, arr, i ) {
+               return arr == null ? -1 : indexOf.call( arr, elem, i );
+       },
+
+       merge: function( first, second ) {
+               var len = +second.length,
+                       j = 0,
+                       i = first.length;
+
+               for ( ; j < len; j++ ) {
+                       first[ i++ ] = second[ j ];
+               }
+
+               first.length = i;
+
+               return first;
+       },
+
+       grep: function( elems, callback, invert ) {
+               var callbackInverse,
+                       matches = [],
+                       i = 0,
+                       length = elems.length,
+                       callbackExpect = !invert;
+
+               // Go through the array, only saving the items
+               // that pass the validator function
+               for ( ; i < length; i++ ) {
+                       callbackInverse = !callback( elems[ i ], i );
+                       if ( callbackInverse !== callbackExpect ) {
+                               matches.push( elems[ i ] );
+                       }
+               }
+
+               return matches;
+       },
+
+       // arg is for internal usage only
+       map: function( elems, callback, arg ) {
+               var value,
+                       i = 0,
+                       length = elems.length,
+                       isArray = isArraylike( elems ),
+                       ret = [];
+
+               // Go through the array, translating each of the items to their new values
+               if ( isArray ) {
+                       for ( ; i < length; i++ ) {
+                               value = callback( elems[ i ], i, arg );
+
+                               if ( value != null ) {
+                                       ret.push( value );
+                               }
+                       }
+
+               // Go through every key on the object,
+               } else {
+                       for ( i in elems ) {
+                               value = callback( elems[ i ], i, arg );
+
+                               if ( value != null ) {
+                                       ret.push( value );
+                               }
+                       }
+               }
+
+               // Flatten any nested arrays
+               return concat.apply( [], ret );
+       },
+
+       // A global GUID counter for objects
+       guid: 1,
+
+       // Bind a function to a context, optionally partially applying any
+       // arguments.
+       proxy: function( fn, context ) {
+               var tmp, args, proxy;
+
+               if ( typeof context === "string" ) {
+                       tmp = fn[ context ];
+                       context = fn;
+                       fn = tmp;
+               }
+
+               // Quick check to determine if target is callable, in the spec
+               // this throws a TypeError, but we will just return undefined.
+               if ( !jQuery.isFunction( fn ) ) {
+                       return undefined;
+               }
+
+               // Simulated bind
+               args = slice.call( arguments, 2 );
+               proxy = function() {
+                       return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
+               };
+
+               // Set the guid of unique handler to the same of original handler, so it can be removed
+               proxy.guid = fn.guid = fn.guid || jQuery.guid++;
+
+               return proxy;
+       },
+
+       now: Date.now,
+
+       // jQuery.support is not used in Core but other projects attach their
+       // properties to it so it needs to exist.
+       support: support
+});
+
+// Populate the class2type map
+jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) {
+       class2type[ "[object " + name + "]" ] = name.toLowerCase();
+});
+
+function isArraylike( obj ) {
+
+       // Support: iOS 8.2 (not reproducible in simulator)
+       // `in` check used to prevent JIT error (gh-2145)
+       // hasOwn isn't used here due to false negatives
+       // regarding Nodelist length in IE
+       var length = "length" in obj && obj.length,
+               type = jQuery.type( obj );
+
+       if ( type === "function" || jQuery.isWindow( obj ) ) {
+               return false;
+       }
+
+       if ( obj.nodeType === 1 && length ) {
+               return true;
+       }
+
+       return type === "array" || length === 0 ||
+               typeof length === "number" && length > 0 && ( length - 1 ) in obj;
+}
+var Sizzle =
+/*!
+ * Sizzle CSS Selector Engine v2.2.0-pre
+ * http://sizzlejs.com/
+ *
+ * Copyright 2008, 2014 jQuery Foundation, Inc. and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2014-12-16
+ */
+(function( window ) {
+
+var i,
+       support,
+       Expr,
+       getText,
+       isXML,
+       tokenize,
+       compile,
+       select,
+       outermostContext,
+       sortInput,
+       hasDuplicate,
+
+       // Local document vars
+       setDocument,
+       document,
+       docElem,
+       documentIsHTML,
+       rbuggyQSA,
+       rbuggyMatches,
+       matches,
+       contains,
+
+       // Instance-specific data
+       expando = "sizzle" + 1 * new Date(),
+       preferredDoc = window.document,
+       dirruns = 0,
+       done = 0,
+       classCache = createCache(),
+       tokenCache = createCache(),
+       compilerCache = createCache(),
+       sortOrder = function( a, b ) {
+               if ( a === b ) {
+                       hasDuplicate = true;
+               }
+               return 0;
+       },
+
+       // General-purpose constants
+       MAX_NEGATIVE = 1 << 31,
+
+       // Instance methods
+       hasOwn = ({}).hasOwnProperty,
+       arr = [],
+       pop = arr.pop,
+       push_native = arr.push,
+       push = arr.push,
+       slice = arr.slice,
+       // Use a stripped-down indexOf as it's faster than native
+       // http://jsperf.com/thor-indexof-vs-for/5
+       indexOf = function( list, elem ) {
+               var i = 0,
+                       len = list.length;
+               for ( ; i < len; i++ ) {
+                       if ( list[i] === elem ) {
+                               return i;
+                       }
+               }
+               return -1;
+       },
+
+       booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
+
+       // Regular expressions
+
+       // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace
+       whitespace = "[\\x20\\t\\r\\n\\f]",
+       // http://www.w3.org/TR/css3-syntax/#characters
+       characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
+
+       // Loosely modeled on CSS identifier characters
+       // An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors
+       // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
+       identifier = characterEncoding.replace( "w", "w#" ),
+
+       // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
+       attributes = "\\[" + whitespace + "*(" + characterEncoding + ")(?:" + whitespace +
+               // Operator (capture 2)
+               "*([*^$|!~]?=)" + whitespace +
+               // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
+               "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
+               "*\\]",
+
+       pseudos = ":(" + characterEncoding + ")(?:\\((" +
+               // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
+               // 1. quoted (capture 3; capture 4 or capture 5)
+               "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
+               // 2. simple (capture 6)
+               "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
+               // 3. anything else (capture 2)
+               ".*" +
+               ")\\)|)",
+
+       // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
+       rwhitespace = new RegExp( whitespace + "+", "g" ),
+       rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
+
+       rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
+       rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ),
+
+       rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ),
+
+       rpseudo = new RegExp( pseudos ),
+       ridentifier = new RegExp( "^" + identifier + "$" ),
+
+       matchExpr = {
+               "ID": new RegExp( "^#(" + characterEncoding + ")" ),
+               "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ),
+               "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ),
+               "ATTR": new RegExp( "^" + attributes ),
+               "PSEUDO": new RegExp( "^" + pseudos ),
+               "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +
+                       "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
+                       "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
+               "bool": new RegExp( "^(?:" + booleans + ")$", "i" ),
+               // For use in libraries implementing .is()
+               // We use this for POS matching in `select`
+               "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +
+                       whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
+       },
+
+       rinputs = /^(?:input|select|textarea|button)$/i,
+       rheader = /^h\d$/i,
+
+       rnative = /^[^{]+\{\s*\[native \w/,
+
+       // Easily-parseable/retrievable ID or TAG or CLASS selectors
+       rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
+
+       rsibling = /[+~]/,
+       rescape = /'|\\/g,
+
+       // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters
+       runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ),
+       funescape = function( _, escaped, escapedWhitespace ) {
+               var high = "0x" + escaped - 0x10000;
+               // NaN means non-codepoint
+               // Support: Firefox<24
+               // Workaround erroneous numeric interpretation of +"0x"
+               return high !== high || escapedWhitespace ?
+                       escaped :
+                       high < 0 ?
+                               // BMP codepoint
+                               String.fromCharCode( high + 0x10000 ) :
+                               // Supplemental Plane codepoint (surrogate pair)
+                               String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
+       },
+
+       // Used for iframes
+       // See setDocument()
+       // Removing the function wrapper causes a "Permission Denied"
+       // error in IE
+       unloadHandler = function() {
+               setDocument();
+       };
+
+// Optimize for push.apply( _, NodeList )
+try {
+       push.apply(
+               (arr = slice.call( preferredDoc.childNodes )),
+               preferredDoc.childNodes
+       );
+       // Support: Android<4.0
+       // Detect silently failing push.apply
+       arr[ preferredDoc.childNodes.length ].nodeType;
+} catch ( e ) {
+       push = { apply: arr.length ?
+
+               // Leverage slice if possible
+               function( target, els ) {
+                       push_native.apply( target, slice.call(els) );
+               } :
+
+               // Support: IE<9
+               // Otherwise append directly
+               function( target, els ) {
+                       var j = target.length,
+                               i = 0;
+                       // Can't trust NodeList.length
+                       while ( (target[j++] = els[i++]) ) {}
+                       target.length = j - 1;
+               }
+       };
+}
+
+function Sizzle( selector, context, results, seed ) {
+       var match, elem, m, nodeType,
+               // QSA vars
+               i, groups, old, nid, newContext, newSelector;
+
+       if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
+               setDocument( context );
+       }
+
+       context = context || document;
+       results = results || [];
+       nodeType = context.nodeType;
+
+       if ( typeof selector !== "string" || !selector ||
+               nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {
+
+               return results;
+       }
+
+       if ( !seed && documentIsHTML ) {
+
+               // Try to shortcut find operations when possible (e.g., not under DocumentFragment)
+               if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {
+                       // Speed-up: Sizzle("#ID")
+                       if ( (m = match[1]) ) {
+                               if ( nodeType === 9 ) {
+                                       elem = context.getElementById( m );
+                                       // Check parentNode to catch when Blackberry 4.6 returns
+                                       // nodes that are no longer in the document (jQuery #6963)
+                                       if ( elem && elem.parentNode ) {
+                                               // Handle the case where IE, Opera, and Webkit return items
+                                               // by name instead of ID
+                                               if ( elem.id === m ) {
+                                                       results.push( elem );
+                                                       return results;
+                                               }
+                                       } else {
+                                               return results;
+                                       }
+                               } else {
+                                       // Context is not a document
+                                       if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) &&
+                                               contains( context, elem ) && elem.id === m ) {
+                                               results.push( elem );
+                                               return results;
+                                       }
+                               }
+
+                       // Speed-up: Sizzle("TAG")
+                       } else if ( match[2] ) {
+                               push.apply( results, context.getElementsByTagName( selector ) );
+                               return results;
+
+                       // Speed-up: Sizzle(".CLASS")
+                       } else if ( (m = match[3]) && support.getElementsByClassName ) {
+                               push.apply( results, context.getElementsByClassName( m ) );
+                               return results;
+                       }
+               }
+
+               // QSA path
+               if ( support.qsa && (!rbuggyQSA || !rbuggyQSA.test( selector )) ) {
+                       nid = old = expando;
+                       newContext = context;
+                       newSelector = nodeType !== 1 && selector;
+
+                       // qSA works strangely on Element-rooted queries
+                       // We can work around this by specifying an extra ID on the root
+                       // and working up from there (Thanks to Andrew Dupont for the technique)
+                       // IE 8 doesn't work on object elements
+                       if ( nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
+                               groups = tokenize( selector );
+
+                               if ( (old = context.getAttribute("id")) ) {
+                                       nid = old.replace( rescape, "\\$&" );
+                               } else {
+                                       context.setAttribute( "id", nid );
+                               }
+                               nid = "[id='" + nid + "'] ";
+
+                               i = groups.length;
+                               while ( i-- ) {
+                                       groups[i] = nid + toSelector( groups[i] );
+                               }
+                               newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context;
+                               newSelector = groups.join(",");
+                       }
+
+                       if ( newSelector ) {
+                               try {
+                                       push.apply( results,
+                                               newContext.querySelectorAll( newSelector )
+                                       );
+                                       return results;
+                               } catch(qsaError) {
+                               } finally {
+                                       if ( !old ) {
+                                               context.removeAttribute("id");
+                                       }
+                               }
+                       }
+               }
+       }
+
+       // All others
+       return select( selector.replace( rtrim, "$1" ), context, results, seed );
+}
+
+/**
+ * Create key-value caches of limited size
+ * @returns {Function(string, Object)} Returns the Object data after storing it on itself with
+ *     property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
+ *     deleting the oldest entry
+ */
+function createCache() {
+       var keys = [];
+
+       function cache( key, value ) {
+               // Use (key + " ") to avoid collision with native prototype properties (see Issue #157)
+               if ( keys.push( key + " " ) > Expr.cacheLength ) {
+                       // Only keep the most recent entries
+                       delete cache[ keys.shift() ];
+               }
+               return (cache[ key + " " ] = value);
+       }
+       return cache;
+}
+
+/**
+ * Mark a function for special use by Sizzle
+ * @param {Function} fn The function to mark
+ */
+function markFunction( fn ) {
+       fn[ expando ] = true;
+       return fn;
+}
+
+/**
+ * Support testing using an element
+ * @param {Function} fn Passed the created div and expects a boolean result
+ */
+function assert( fn ) {
+       var div = document.createElement("div");
+
+       try {
+               return !!fn( div );
+       } catch (e) {
+               return false;
+       } finally {
+               // Remove from its parent by default
+               if ( div.parentNode ) {
+                       div.parentNode.removeChild( div );
+               }
+               // release memory in IE
+               div = null;
+       }
+}
+
+/**
+ * Adds the same handler for all of the specified attrs
+ * @param {String} attrs Pipe-separated list of attributes
+ * @param {Function} handler The method that will be applied
+ */
+function addHandle( attrs, handler ) {
+       var arr = attrs.split("|"),
+               i = attrs.length;
+
+       while ( i-- ) {
+               Expr.attrHandle[ arr[i] ] = handler;
+       }
+}
+
+/**
+ * Checks document order of two siblings
+ * @param {Element} a
+ * @param {Element} b
+ * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b
+ */
+function siblingCheck( a, b ) {
+       var cur = b && a,
+               diff = cur && a.nodeType === 1 && b.nodeType === 1 &&
+                       ( ~b.sourceIndex || MAX_NEGATIVE ) -
+                       ( ~a.sourceIndex || MAX_NEGATIVE );
+
+       // Use IE sourceIndex if available on both nodes
+       if ( diff ) {
+               return diff;
+       }
+
+       // Check if b follows a
+       if ( cur ) {
+               while ( (cur = cur.nextSibling) ) {
+                       if ( cur === b ) {
+                               return -1;
+                       }
+               }
+       }
+
+       return a ? 1 : -1;
+}
+
+/**
+ * Returns a function to use in pseudos for input types
+ * @param {String} type
+ */
+function createInputPseudo( type ) {
+       return function( elem ) {
+               var name = elem.nodeName.toLowerCase();
+               return name === "input" && elem.type === type;
+       };
+}
+
+/**
+ * Returns a function to use in pseudos for buttons
+ * @param {String} type
+ */
+function createButtonPseudo( type ) {
+       return function( elem ) {
+               var name = elem.nodeName.toLowerCase();
+               return (name === "input" || name === "button") && elem.type === type;
+       };
+}
+
+/**
+ * Returns a function to use in pseudos for positionals
+ * @param {Function} fn
+ */
+function createPositionalPseudo( fn ) {
+       return markFunction(function( argument ) {
+               argument = +argument;
+               return markFunction(function( seed, matches ) {
+                       var j,
+                               matchIndexes = fn( [], seed.length, argument ),
+                               i = matchIndexes.length;
+
+                       // Match elements found at the specified indexes
+                       while ( i-- ) {
+                               if ( seed[ (j = matchIndexes[i]) ] ) {
+                                       seed[j] = !(matches[j] = seed[j]);
+                               }
+                       }
+               });
+       });
+}
+
+/**
+ * Checks a node for validity as a Sizzle context
+ * @param {Element|Object=} context
+ * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
+ */
+function testContext( context ) {
+       return context && typeof context.getElementsByTagName !== "undefined" && context;
+}
+
+// Expose support vars for convenience
+support = Sizzle.support = {};
+
+/**
+ * Detects XML nodes
+ * @param {Element|Object} elem An element or a document
+ * @returns {Boolean} True iff elem is a non-HTML XML node
+ */
+isXML = Sizzle.isXML = function( elem ) {
+       // documentElement is verified for cases where it doesn't yet exist
+       // (such as loading iframes in IE - #4833)
+       var documentElement = elem && (elem.ownerDocument || elem).documentElement;
+       return documentElement ? documentElement.nodeName !== "HTML" : false;
+};
+
+/**
+ * Sets document-related variables once based on the current document
+ * @param {Element|Object} [doc] An element or document object to use to set the document
+ * @returns {Object} Returns the current document
+ */
+setDocument = Sizzle.setDocument = function( node ) {
+       var hasCompare, parent,
+               doc = node ? node.ownerDocument || node : preferredDoc;
+
+       // If no document and documentElement is available, return
+       if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {
+               return document;
+       }
+
+       // Set our document
+       document = doc;
+       docElem = doc.documentElement;
+       parent = doc.defaultView;
+
+       // Support: IE>8
+       // If iframe document is assigned to "document" variable and if iframe has been reloaded,
+       // IE will throw "permission denied" error when accessing "document" variable, see jQuery #13936
+       // IE6-8 do not support the defaultView property so parent will be undefined
+       if ( parent && parent !== parent.top ) {
+               // IE11 does not have attachEvent, so all must suffer
+               if ( parent.addEventListener ) {
+                       parent.addEventListener( "unload", unloadHandler, false );
+               } else if ( parent.attachEvent ) {
+                       parent.attachEvent( "onunload", unloadHandler );
+               }
+       }
+
+       /* Support tests
+       ---------------------------------------------------------------------- */
+       documentIsHTML = !isXML( doc );
+
+       /* Attributes
+       ---------------------------------------------------------------------- */
+
+       // Support: IE<8
+       // Verify that getAttribute really returns attributes and not properties
+       // (excepting IE8 booleans)
+       support.attributes = assert(function( div ) {
+               div.className = "i";
+               return !div.getAttribute("className");
+       });
+
+       /* getElement(s)By*
+       ---------------------------------------------------------------------- */
+
+       // Check if getElementsByTagName("*") returns only elements
+       support.getElementsByTagName = assert(function( div ) {
+               div.appendChild( doc.createComment("") );
+               return !div.getElementsByTagName("*").length;
+       });
+
+       // Support: IE<9
+       support.getElementsByClassName = rnative.test( doc.getElementsByClassName );
+
+       // Support: IE<10
+       // Check if getElementById returns elements by name
+       // The broken getElementById methods don't pick up programatically-set names,
+       // so use a roundabout getElementsByName test
+       support.getById = assert(function( div ) {
+               docElem.appendChild( div ).id = expando;
+               return !doc.getElementsByName || !doc.getElementsByName( expando ).length;
+       });
+
+       // ID find and filter
+       if ( support.getById ) {
+               Expr.find["ID"] = function( id, context ) {
+                       if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
+                               var m = context.getElementById( id );
+                               // Check parentNode to catch when Blackberry 4.6 returns
+                               // nodes that are no longer in the document #6963
+                               return m && m.parentNode ? [ m ] : [];
+                       }
+               };
+               Expr.filter["ID"] = function( id ) {
+                       var attrId = id.replace( runescape, funescape );
+                       return function( elem ) {
+                               return elem.getAttribute("id") === attrId;
+                       };
+               };
+       } else {
+               // Support: IE6/7
+               // getElementById is not reliable as a find shortcut
+               delete Expr.find["ID"];
+
+               Expr.filter["ID"] =  function( id ) {
+                       var attrId = id.replace( runescape, funescape );
+                       return function( elem ) {
+                               var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
+                               return node && node.value === attrId;
+                       };
+               };
+       }
+
+       // Tag
+       Expr.find["TAG"] = support.getElementsByTagName ?
+               function( tag, context ) {
+                       if ( typeof context.getElementsByTagName !== "undefined" ) {
+                               return context.getElementsByTagName( tag );
+
+                       // DocumentFragment nodes don't have gEBTN
+                       } else if ( support.qsa ) {
+                               return context.querySelectorAll( tag );
+                       }
+               } :
+
+               function( tag, context ) {
+                       var elem,
+                               tmp = [],
+                               i = 0,
+                               // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too
+                               results = context.getElementsByTagName( tag );
+
+                       // Filter out possible comments
+                       if ( tag === "*" ) {
+                               while ( (elem = results[i++]) ) {
+                                       if ( elem.nodeType === 1 ) {
+                                               tmp.push( elem );
+                                       }
+                               }
+
+                               return tmp;
+                       }
+                       return results;
+               };
+
+       // Class
+       Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) {
+               if ( documentIsHTML ) {
+                       return context.getElementsByClassName( className );
+               }
+       };
+
+       /* QSA/matchesSelector
+       ---------------------------------------------------------------------- */
+
+       // QSA and matchesSelector support
+
+       // matchesSelector(:active) reports false when true (IE9/Opera 11.5)
+       rbuggyMatches = [];
+
+       // qSa(:focus) reports false when true (Chrome 21)
+       // We allow this because of a bug in IE8/9 that throws an error
+       // whenever `document.activeElement` is accessed on an iframe
+       // So, we allow :focus to pass through QSA all the time to avoid the IE error
+       // See http://bugs.jquery.com/ticket/13378
+       rbuggyQSA = [];
+
+       if ( (support.qsa = rnative.test( doc.querySelectorAll )) ) {
+               // Build QSA regex
+               // Regex strategy adopted from Diego Perini
+               assert(function( div ) {
+                       // Select is set to empty string on purpose
+                       // This is to test IE's treatment of not explicitly
+                       // setting a boolean content attribute,
+                       // since its presence should be enough
+                       // http://bugs.jquery.com/ticket/12359
+                       docElem.appendChild( div ).innerHTML = "<a id='" + expando + "'></a>" +
+                               "<select id='" + expando + "-\f]' msallowcapture=''>" +
+                               "<option selected=''></option></select>";
+
+                       // Support: IE8, Opera 11-12.16
+                       // Nothing should be selected when empty strings follow ^= or $= or *=
+                       // The test attribute must be unknown in Opera but "safe" for WinRT
+                       // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
+                       if ( div.querySelectorAll("[msallowcapture^='']").length ) {
+                               rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
+                       }
+
+                       // Support: IE8
+                       // Boolean attributes and "value" are not treated correctly
+                       if ( !div.querySelectorAll("[selected]").length ) {
+                               rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
+                       }
+
+                       // Support: Chrome<29, Android<4.2+, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.7+
+                       if ( !div.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
+                               rbuggyQSA.push("~=");
+                       }
+
+                       // Webkit/Opera - :checked should return selected option elements
+                       // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+                       // IE8 throws error here and will not see later tests
+                       if ( !div.querySelectorAll(":checked").length ) {
+                               rbuggyQSA.push(":checked");
+                       }
+
+                       // Support: Safari 8+, iOS 8+
+                       // https://bugs.webkit.org/show_bug.cgi?id=136851
+                       // In-page `selector#id sibing-combinator selector` fails
+                       if ( !div.querySelectorAll( "a#" + expando + "+*" ).length ) {
+                               rbuggyQSA.push(".#.+[+~]");
+                       }
+               });
+
+               assert(function( div ) {
+                       // Support: Windows 8 Native Apps
+                       // The type and name attributes are restricted during .innerHTML assignment
+                       var input = doc.createElement("input");
+                       input.setAttribute( "type", "hidden" );
+                       div.appendChild( input ).setAttribute( "name", "D" );
+
+                       // Support: IE8
+                       // Enforce case-sensitivity of name attribute
+                       if ( div.querySelectorAll("[name=d]").length ) {
+                               rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" );
+                       }
+
+                       // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
+                       // IE8 throws error here and will not see later tests
+                       if ( !div.querySelectorAll(":enabled").length ) {
+                               rbuggyQSA.push( ":enabled", ":disabled" );
+                       }
+
+                       // Opera 10-11 does not throw on post-comma invalid pseudos
+                       div.querySelectorAll("*,:x");
+                       rbuggyQSA.push(",.*:");
+               });
+       }
+
+       if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
+               docElem.webkitMatchesSelector ||
+               docElem.mozMatchesSelector ||
+               docElem.oMatchesSelector ||
+               docElem.msMatchesSelector) )) ) {
+
+               assert(function( div ) {
+                       // Check to see if it's possible to do matchesSelector
+                       // on a disconnected node (IE 9)
+                       support.disconnectedMatch = matches.call( div, "div" );
+
+                       // This should fail with an exception
+                       // Gecko does not error, returns false instead
+                       matches.call( div, "[s!='']:x" );
+                       rbuggyMatches.push( "!=", pseudos );
+               });
+       }
+
+       rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") );
+       rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") );
+
+       /* Contains
+       ---------------------------------------------------------------------- */
+       hasCompare = rnative.test( docElem.compareDocumentPosition );
+
+       // Element contains another
+       // Purposefully does not implement inclusive descendent
+       // As in, an element does not contain itself
+       contains = hasCompare || rnative.test( docElem.contains ) ?
+               function( a, b ) {
+                       var adown = a.nodeType === 9 ? a.documentElement : a,
+                               bup = b && b.parentNode;
+                       return a === bup || !!( bup && bup.nodeType === 1 && (
+                               adown.contains ?
+                                       adown.contains( bup ) :
+                                       a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
+                       ));
+               } :
+               function( a, b ) {
+                       if ( b ) {
+                               while ( (b = b.parentNode) ) {
+                                       if ( b === a ) {
+                                               return true;
+                                       }
+                               }
+                       }
+                       return false;
+               };
+
+       /* Sorting
+       ---------------------------------------------------------------------- */
+
+       // Document order sorting
+       sortOrder = hasCompare ?
+       function( a, b ) {
+
+               // Flag for duplicate removal
+               if ( a === b ) {
+                       hasDuplicate = true;
+                       return 0;
+               }
+
+               // Sort on method existence if only one input has compareDocumentPosition
+               var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
+               if ( compare ) {
+                       return compare;
+               }
+
+               // Calculate position if both inputs belong to the same document
+               compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?
+                       a.compareDocumentPosition( b ) :
+
+                       // Otherwise we know they are disconnected
+                       1;
+
+               // Disconnected nodes
+               if ( compare & 1 ||
+                       (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {
+
+                       // Choose the first element that is related to our preferred document
+                       if ( a === doc || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {
+                               return -1;
+                       }
+                       if ( b === doc || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {
+                               return 1;
+                       }
+
+                       // Maintain original order
+                       return sortInput ?
+                               ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+                               0;
+               }
+
+               return compare & 4 ? -1 : 1;
+       } :
+       function( a, b ) {
+               // Exit early if the nodes are identical
+               if ( a === b ) {
+                       hasDuplicate = true;
+                       return 0;
+               }
+
+               var cur,
+                       i = 0,
+                       aup = a.parentNode,
+                       bup = b.parentNode,
+                       ap = [ a ],
+                       bp = [ b ];
+
+               // Parentless nodes are either documents or disconnected
+               if ( !aup || !bup ) {
+                       return a === doc ? -1 :
+                               b === doc ? 1 :
+                               aup ? -1 :
+                               bup ? 1 :
+                               sortInput ?
+                               ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+                               0;
+
+               // If the nodes are siblings, we can do a quick check
+               } else if ( aup === bup ) {
+                       return siblingCheck( a, b );
+               }
+
+               // Otherwise we need full lists of their ancestors for comparison
+               cur = a;
+               while ( (cur = cur.parentNode) ) {
+                       ap.unshift( cur );
+               }
+               cur = b;
+               while ( (cur = cur.parentNode) ) {
+                       bp.unshift( cur );
+               }
+
+               // Walk down the tree looking for a discrepancy
+               while ( ap[i] === bp[i] ) {
+                       i++;
+               }
+
+               return i ?
+                       // Do a sibling check if the nodes have a common ancestor
+                       siblingCheck( ap[i], bp[i] ) :
+
+                       // Otherwise nodes in our document sort first
+                       ap[i] === preferredDoc ? -1 :
+                       bp[i] === preferredDoc ? 1 :
+                       0;
+       };
+
+       return doc;
+};
+
+Sizzle.matches = function( expr, elements ) {
+       return Sizzle( expr, null, null, elements );
+};
+
+Sizzle.matchesSelector = function( elem, expr ) {
+       // Set document vars if needed
+       if ( ( elem.ownerDocument || elem ) !== document ) {
+               setDocument( elem );
+       }
+
+       // Make sure that attribute selectors are quoted
+       expr = expr.replace( rattributeQuotes, "='$1']" );
+
+       if ( support.matchesSelector && documentIsHTML &&
+               ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&
+               ( !rbuggyQSA     || !rbuggyQSA.test( expr ) ) ) {
+
+               try {
+                       var ret = matches.call( elem, expr );
+
+                       // IE 9's matchesSelector returns false on disconnected nodes
+                       if ( ret || support.disconnectedMatch ||
+                                       // As well, disconnected nodes are said to be in a document
+                                       // fragment in IE 9
+                                       elem.document && elem.document.nodeType !== 11 ) {
+                               return ret;
+                       }
+               } catch (e) {}
+       }
+
+       return Sizzle( expr, document, null, [ elem ] ).length > 0;
+};
+
+Sizzle.contains = function( context, elem ) {
+       // Set document vars if needed
+       if ( ( context.ownerDocument || context ) !== document ) {
+               setDocument( context );
+       }
+       return contains( context, elem );
+};
+
+Sizzle.attr = function( elem, name ) {
+       // Set document vars if needed
+       if ( ( elem.ownerDocument || elem ) !== document ) {
+               setDocument( elem );
+       }
+
+       var fn = Expr.attrHandle[ name.toLowerCase() ],
+               // Don't get fooled by Object.prototype properties (jQuery #13807)
+               val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
+                       fn( elem, name, !documentIsHTML ) :
+                       undefined;
+
+       return val !== undefined ?
+               val :
+               support.attributes || !documentIsHTML ?
+                       elem.getAttribute( name ) :
+                       (val = elem.getAttributeNode(name)) && val.specified ?
+                               val.value :
+                               null;
+};
+
+Sizzle.error = function( msg ) {
+       throw new Error( "Syntax error, unrecognized expression: " + msg );
+};
+
+/**
+ * Document sorting and removing duplicates
+ * @param {ArrayLike} results
+ */
+Sizzle.uniqueSort = function( results ) {
+       var elem,
+               duplicates = [],
+               j = 0,
+               i = 0;
+
+       // Unless we *know* we can detect duplicates, assume their presence
+       hasDuplicate = !support.detectDuplicates;
+       sortInput = !support.sortStable && results.slice( 0 );
+       results.sort( sortOrder );
+
+       if ( hasDuplicate ) {
+               while ( (elem = results[i++]) ) {
+                       if ( elem === results[ i ] ) {
+                               j = duplicates.push( i );
+                       }
+               }
+               while ( j-- ) {
+                       results.splice( duplicates[ j ], 1 );
+               }
+       }
+
+       // Clear input after sorting to release objects
+       // See https://github.com/jquery/sizzle/pull/225
+       sortInput = null;
+
+       return results;
+};
+
+/**
+ * Utility function for retrieving the text value of an array of DOM nodes
+ * @param {Array|Element} elem
+ */
+getText = Sizzle.getText = function( elem ) {
+       var node,
+               ret = "",
+               i = 0,
+               nodeType = elem.nodeType;
+
+       if ( !nodeType ) {
+               // If no nodeType, this is expected to be an array
+               while ( (node = elem[i++]) ) {
+                       // Do not traverse comment nodes
+                       ret += getText( node );
+               }
+       } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
+               // Use textContent for elements
+               // innerText usage removed for consistency of new lines (jQuery #11153)
+               if ( typeof elem.textContent === "string" ) {
+                       return elem.textContent;
+               } else {
+                       // Traverse its children
+                       for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+                               ret += getText( elem );
+                       }
+               }
+       } else if ( nodeType === 3 || nodeType === 4 ) {
+               return elem.nodeValue;
+       }
+       // Do not include comment or processing instruction nodes
+
+       return ret;
+};
+
+Expr = Sizzle.selectors = {
+
+       // Can be adjusted by the user
+       cacheLength: 50,
+
+       createPseudo: markFunction,
+
+       match: matchExpr,
+
+       attrHandle: {},
+
+       find: {},
+
+       relative: {
+               ">": { dir: "parentNode", first: true },
+               " ": { dir: "parentNode" },
+               "+": { dir: "previousSibling", first: true },
+               "~": { dir: "previousSibling" }
+       },
+
+       preFilter: {
+               "ATTR": function( match ) {
+                       match[1] = match[1].replace( runescape, funescape );
+
+                       // Move the given value to match[3] whether quoted or unquoted
+                       match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
+
+                       if ( match[2] === "~=" ) {
+                               match[3] = " " + match[3] + " ";
+                       }
+
+                       return match.slice( 0, 4 );
+               },
+
+               "CHILD": function( match ) {
+                       /* matches from matchExpr["CHILD"]
+                               1 type (only|nth|...)
+                               2 what (child|of-type)
+                               3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
+                               4 xn-component of xn+y argument ([+-]?\d*n|)
+                               5 sign of xn-component
+                               6 x of xn-component
+                               7 sign of y-component
+                               8 y of y-component
+                       */
+                       match[1] = match[1].toLowerCase();
+
+                       if ( match[1].slice( 0, 3 ) === "nth" ) {
+                               // nth-* requires argument
+                               if ( !match[3] ) {
+                                       Sizzle.error( match[0] );
+                               }
+
+                               // numeric x and y parameters for Expr.filter.CHILD
+                               // remember that false/true cast respectively to 0/1
+                               match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) );
+                               match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" );
+
+                       // other types prohibit arguments
+                       } else if ( match[3] ) {
+                               Sizzle.error( match[0] );
+                       }
+
+                       return match;
+               },
+
+               "PSEUDO": function( match ) {
+                       var excess,
+                               unquoted = !match[6] && match[2];
+
+                       if ( matchExpr["CHILD"].test( match[0] ) ) {
+                               return null;
+                       }
+
+                       // Accept quoted arguments as-is
+                       if ( match[3] ) {
+                               match[2] = match[4] || match[5] || "";
+
+                       // Strip excess characters from unquoted arguments
+                       } else if ( unquoted && rpseudo.test( unquoted ) &&
+                               // Get excess from tokenize (recursively)
+                               (excess = tokenize( unquoted, true )) &&
+                               // advance to the next closing parenthesis
+                               (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
+
+                               // excess is a negative index
+                               match[0] = match[0].slice( 0, excess );
+                               match[2] = unquoted.slice( 0, excess );
+                       }
+
+                       // Return only captures needed by the pseudo filter method (type and argument)
+                       return match.slice( 0, 3 );
+               }
+       },
+
+       filter: {
+
+               "TAG": function( nodeNameSelector ) {
+                       var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
+                       return nodeNameSelector === "*" ?
+                               function() { return true; } :
+                               function( elem ) {
+                                       return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
+                               };
+               },
+
+               "CLASS": function( className ) {
+                       var pattern = classCache[ className + " " ];
+
+                       return pattern ||
+                               (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
+                               classCache( className, function( elem ) {
+                                       return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" );
+                               });
+               },
+
+               "ATTR": function( name, operator, check ) {
+                       return function( elem ) {
+                               var result = Sizzle.attr( elem, name );
+
+                               if ( result == null ) {
+                                       return operator === "!=";
+                               }
+                               if ( !operator ) {
+                                       return true;
+                               }
+
+                               result += "";
+
+                               return operator === "=" ? result === check :
+                                       operator === "!=" ? result !== check :
+                                       operator === "^=" ? check && result.indexOf( check ) === 0 :
+                                       operator === "*=" ? check && result.indexOf( check ) > -1 :
+                                       operator === "$=" ? check && result.slice( -check.length ) === check :
+                                       operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 :
+                                       operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" :
+                                       false;
+                       };
+               },
+
+               "CHILD": function( type, what, argument, first, last ) {
+                       var simple = type.slice( 0, 3 ) !== "nth",
+                               forward = type.slice( -4 ) !== "last",
+                               ofType = what === "of-type";
+
+                       return first === 1 && last === 0 ?
+
+                               // Shortcut for :nth-*(n)
+                               function( elem ) {
+                                       return !!elem.parentNode;
+                               } :
+
+                               function( elem, context, xml ) {
+                                       var cache, outerCache, node, diff, nodeIndex, start,
+                                               dir = simple !== forward ? "nextSibling" : "previousSibling",
+                                               parent = elem.parentNode,
+                                               name = ofType && elem.nodeName.toLowerCase(),
+                                               useCache = !xml && !ofType;
+
+                                       if ( parent ) {
+
+                                               // :(first|last|only)-(child|of-type)
+                                               if ( simple ) {
+                                                       while ( dir ) {
+                                                               node = elem;
+                                                               while ( (node = node[ dir ]) ) {
+                                                                       if ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) {
+                                                                               return false;
+                                                                       }
+                                                               }
+                                                               // Reverse direction for :only-* (if we haven't yet done so)
+                                                               start = dir = type === "only" && !start && "nextSibling";
+                                                       }
+                                                       return true;
+                                               }
+
+                                               start = [ forward ? parent.firstChild : parent.lastChild ];
+
+                                               // non-xml :nth-child(...) stores cache data on `parent`
+                                               if ( forward && useCache ) {
+                                                       // Seek `elem` from a previously-cached index
+                                                       outerCache = parent[ expando ] || (parent[ expando ] = {});
+                                                       cache = outerCache[ type ] || [];
+                                                       nodeIndex = cache[0] === dirruns && cache[1];
+                                                       diff = cache[0] === dirruns && cache[2];
+                                                       node = nodeIndex && parent.childNodes[ nodeIndex ];
+
+                                                       while ( (node = ++nodeIndex && node && node[ dir ] ||
+
+                                                               // Fallback to seeking `elem` from the start
+                                                               (diff = nodeIndex = 0) || start.pop()) ) {
+
+                                                               // When found, cache indexes on `parent` and break
+                                                               if ( node.nodeType === 1 && ++diff && node === elem ) {
+                                                                       outerCache[ type ] = [ dirruns, nodeIndex, diff ];
+                                                                       break;
+                                                               }
+                                                       }
+
+                                               // Use previously-cached element index if available
+                                               } else if ( useCache && (cache = (elem[ expando ] || (elem[ expando ] = {}))[ type ]) && cache[0] === dirruns ) {
+                                                       diff = cache[1];
+
+                                               // xml :nth-child(...) or :nth-last-child(...) or :nth(-last)?-of-type(...)
+                                               } else {
+                                                       // Use the same loop as above to seek `elem` from the start
+                                                       while ( (node = ++nodeIndex && node && node[ dir ] ||
+                                                               (diff = nodeIndex = 0) || start.pop()) ) {
+
+                                                               if ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) {
+                                                                       // Cache the index of each encountered element
+                                                                       if ( useCache ) {
+                                                                               (node[ expando ] || (node[ expando ] = {}))[ type ] = [ dirruns, diff ];
+                                                                       }
+
+                                                                       if ( node === elem ) {
+                                                                               break;
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+
+                                               // Incorporate the offset, then check against cycle size
+                                               diff -= last;
+                                               return diff === first || ( diff % first === 0 && diff / first >= 0 );
+                                       }
+                               };
+               },
+
+               "PSEUDO": function( pseudo, argument ) {
+                       // pseudo-class names are case-insensitive
+                       // http://www.w3.org/TR/selectors/#pseudo-classes
+                       // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
+                       // Remember that setFilters inherits from pseudos
+                       var args,
+                               fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
+                                       Sizzle.error( "unsupported pseudo: " + pseudo );
+
+                       // The user may use createPseudo to indicate that
+                       // arguments are needed to create the filter function
+                       // just as Sizzle does
+                       if ( fn[ expando ] ) {
+                               return fn( argument );
+                       }
+
+                       // But maintain support for old signatures
+                       if ( fn.length > 1 ) {
+                               args = [ pseudo, pseudo, "", argument ];
+                               return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
+                                       markFunction(function( seed, matches ) {
+                                               var idx,
+                                                       matched = fn( seed, argument ),
+                                                       i = matched.length;
+                                               while ( i-- ) {
+                                                       idx = indexOf( seed, matched[i] );
+                                                       seed[ idx ] = !( matches[ idx ] = matched[i] );
+                                               }
+                                       }) :
+                                       function( elem ) {
+                                               return fn( elem, 0, args );
+                                       };
+                       }
+
+                       return fn;
+               }
+       },
+
+       pseudos: {
+               // Potentially complex pseudos
+               "not": markFunction(function( selector ) {
+                       // Trim the selector passed to compile
+                       // to avoid treating leading and trailing
+                       // spaces as combinators
+                       var input = [],
+                               results = [],
+                               matcher = compile( selector.replace( rtrim, "$1" ) );
+
+                       return matcher[ expando ] ?
+                               markFunction(function( seed, matches, context, xml ) {
+                                       var elem,
+                                               unmatched = matcher( seed, null, xml, [] ),
+                                               i = seed.length;
+
+                                       // Match elements unmatched by `matcher`
+                                       while ( i-- ) {
+                                               if ( (elem = unmatched[i]) ) {
+                                                       seed[i] = !(matches[i] = elem);
+                                               }
+                                       }
+                               }) :
+                               function( elem, context, xml ) {
+                                       input[0] = elem;
+                                       matcher( input, null, xml, results );
+                                       // Don't keep the element (issue #299)
+                                       input[0] = null;
+                                       return !results.pop();
+                               };
+               }),
+
+               "has": markFunction(function( selector ) {
+                       return function( elem ) {
+                               return Sizzle( selector, elem ).length > 0;
+                       };
+               }),
+
+               "contains": markFunction(function( text ) {
+                       text = text.replace( runescape, funescape );
+                       return function( elem ) {
+                               return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
+                       };
+               }),
+
+               // "Whether an element is represented by a :lang() selector
+               // is based solely on the element's language value
+               // being equal to the identifier C,
+               // or beginning with the identifier C immediately followed by "-".
+               // The matching of C against the element's language value is performed case-insensitively.
+               // The identifier C does not have to be a valid language name."
+               // http://www.w3.org/TR/selectors/#lang-pseudo
+               "lang": markFunction( function( lang ) {
+                       // lang value must be a valid identifier
+                       if ( !ridentifier.test(lang || "") ) {
+                               Sizzle.error( "unsupported lang: " + lang );
+                       }
+                       lang = lang.replace( runescape, funescape ).toLowerCase();
+                       return function( elem ) {
+                               var elemLang;
+                               do {
+                                       if ( (elemLang = documentIsHTML ?
+                                               elem.lang :
+                                               elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) {
+
+                                               elemLang = elemLang.toLowerCase();
+                                               return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
+                                       }
+                               } while ( (elem = elem.parentNode) && elem.nodeType === 1 );
+                               return false;
+                       };
+               }),
+
+               // Miscellaneous
+               "target": function( elem ) {
+                       var hash = window.location && window.location.hash;
+                       return hash && hash.slice( 1 ) === elem.id;
+               },
+
+               "root": function( elem ) {
+                       return elem === docElem;
+               },
+
+               "focus": function( elem ) {
+                       return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
+               },
+
+               // Boolean properties
+               "enabled": function( elem ) {
+                       return elem.disabled === false;
+               },
+
+               "disabled": function( elem ) {
+                       return elem.disabled === true;
+               },
+
+               "checked": function( elem ) {
+                       // In CSS3, :checked should return both checked and selected elements
+                       // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+                       var nodeName = elem.nodeName.toLowerCase();
+                       return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
+               },
+
+               "selected": function( elem ) {
+                       // Accessing this property makes selected-by-default
+                       // options in Safari work properly
+                       if ( elem.parentNode ) {
+                               elem.parentNode.selectedIndex;
+                       }
+
+                       return elem.selected === true;
+               },
+
+               // Contents
+               "empty": function( elem ) {
+                       // http://www.w3.org/TR/selectors/#empty-pseudo
+                       // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
+                       //   but not by others (comment: 8; processing instruction: 7; etc.)
+                       // nodeType < 6 works because attributes (2) do not appear as children
+                       for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+                               if ( elem.nodeType < 6 ) {
+                                       return false;
+                               }
+                       }
+                       return true;
+               },
+
+               "parent": function( elem ) {
+                       return !Expr.pseudos["empty"]( elem );
+               },
+
+               // Element/input types
+               "header": function( elem ) {
+                       return rheader.test( elem.nodeName );
+               },
+
+               "input": function( elem ) {
+                       return rinputs.test( elem.nodeName );
+               },
+
+               "button": function( elem ) {
+                       var name = elem.nodeName.toLowerCase();
+                       return name === "input" && elem.type === "button" || name === "button";
+               },
+
+               "text": function( elem ) {
+                       var attr;
+                       return elem.nodeName.toLowerCase() === "input" &&
+                               elem.type === "text" &&
+
+                               // Support: IE<8
+                               // New HTML5 attribute values (e.g., "search") appear with elem.type === "text"
+                               ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" );
+               },
+
+               // Position-in-collection
+               "first": createPositionalPseudo(function() {
+                       return [ 0 ];
+               }),
+
+               "last": createPositionalPseudo(function( matchIndexes, length ) {
+                       return [ length - 1 ];
+               }),
+
+               "eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
+                       return [ argument < 0 ? argument + length : argument ];
+               }),
+
+               "even": createPositionalPseudo(function( matchIndexes, length ) {
+                       var i = 0;
+                       for ( ; i < length; i += 2 ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               }),
+
+               "odd": createPositionalPseudo(function( matchIndexes, length ) {
+                       var i = 1;
+                       for ( ; i < length; i += 2 ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               }),
+
+               "lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+                       var i = argument < 0 ? argument + length : argument;
+                       for ( ; --i >= 0; ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               }),
+
+               "gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+                       var i = argument < 0 ? argument + length : argument;
+                       for ( ; ++i < length; ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               })
+       }
+};
+
+Expr.pseudos["nth"] = Expr.pseudos["eq"];
+
+// Add button/input type pseudos
+for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
+       Expr.pseudos[ i ] = createInputPseudo( i );
+}
+for ( i in { submit: true, reset: true } ) {
+       Expr.pseudos[ i ] = createButtonPseudo( i );
+}
+
+// Easy API for creating new setFilters
+function setFilters() {}
+setFilters.prototype = Expr.filters = Expr.pseudos;
+Expr.setFilters = new setFilters();
+
+tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
+       var matched, match, tokens, type,
+               soFar, groups, preFilters,
+               cached = tokenCache[ selector + " " ];
+
+       if ( cached ) {
+               return parseOnly ? 0 : cached.slice( 0 );
+       }
+
+       soFar = selector;
+       groups = [];
+       preFilters = Expr.preFilter;
+
+       while ( soFar ) {
+
+               // Comma and first run
+               if ( !matched || (match = rcomma.exec( soFar )) ) {
+                       if ( match ) {
+                               // Don't consume trailing commas as valid
+                               soFar = soFar.slice( match[0].length ) || soFar;
+                       }
+                       groups.push( (tokens = []) );
+               }
+
+               matched = false;
+
+               // Combinators
+               if ( (match = rcombinators.exec( soFar )) ) {
+                       matched = match.shift();
+                       tokens.push({
+                               value: matched,
+                               // Cast descendant combinators to space
+                               type: match[0].replace( rtrim, " " )
+                       });
+                       soFar = soFar.slice( matched.length );
+               }
+
+               // Filters
+               for ( type in Expr.filter ) {
+                       if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
+                               (match = preFilters[ type ]( match ))) ) {
+                               matched = match.shift();
+                               tokens.push({
+                                       value: matched,
+                                       type: type,
+                                       matches: match
+                               });
+                               soFar = soFar.slice( matched.length );
+                       }
+               }
+
+               if ( !matched ) {
+                       break;
+               }
+       }
+
+       // Return the length of the invalid excess
+       // if we're just parsing
+       // Otherwise, throw an error or return tokens
+       return parseOnly ?
+               soFar.length :
+               soFar ?
+                       Sizzle.error( selector ) :
+                       // Cache the tokens
+                       tokenCache( selector, groups ).slice( 0 );
+};
+
+function toSelector( tokens ) {
+       var i = 0,
+               len = tokens.length,
+               selector = "";
+       for ( ; i < len; i++ ) {
+               selector += tokens[i].value;
+       }
+       return selector;
+}
+
+function addCombinator( matcher, combinator, base ) {
+       var dir = combinator.dir,
+               checkNonElements = base && dir === "parentNode",
+               doneName = done++;
+
+       return combinator.first ?
+               // Check against closest ancestor/preceding element
+               function( elem, context, xml ) {
+                       while ( (elem = elem[ dir ]) ) {
+                               if ( elem.nodeType === 1 || checkNonElements ) {
+                                       return matcher( elem, context, xml );
+                               }
+                       }
+               } :
+
+               // Check against all ancestor/preceding elements
+               function( elem, context, xml ) {
+                       var oldCache, outerCache,
+                               newCache = [ dirruns, doneName ];
+
+                       // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching
+                       if ( xml ) {
+                               while ( (elem = elem[ dir ]) ) {
+                                       if ( elem.nodeType === 1 || checkNonElements ) {
+                                               if ( matcher( elem, context, xml ) ) {
+                                                       return true;
+                                               }
+                                       }
+                               }
+                       } else {
+                               while ( (elem = elem[ dir ]) ) {
+                                       if ( elem.nodeType === 1 || checkNonElements ) {
+                                               outerCache = elem[ expando ] || (elem[ expando ] = {});
+                                               if ( (oldCache = outerCache[ dir ]) &&
+                                                       oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {
+
+                                                       // Assign to newCache so results back-propagate to previous elements
+                                                       return (newCache[ 2 ] = oldCache[ 2 ]);
+                                               } else {
+                                                       // Reuse newcache so results back-propagate to previous elements
+                                                       outerCache[ dir ] = newCache;
+
+                                                       // A match means we're done; a fail means we have to keep checking
+                                                       if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {
+                                                               return true;
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               };
+}
+
+function elementMatcher( matchers ) {
+       return matchers.length > 1 ?
+               function( elem, context, xml ) {
+                       var i = matchers.length;
+                       while ( i-- ) {
+                               if ( !matchers[i]( elem, context, xml ) ) {
+                                       return false;
+                               }
+                       }
+                       return true;
+               } :
+               matchers[0];
+}
+
+function multipleContexts( selector, contexts, results ) {
+       var i = 0,
+               len = contexts.length;
+       for ( ; i < len; i++ ) {
+               Sizzle( selector, contexts[i], results );
+       }
+       return results;
+}
+
+function condense( unmatched, map, filter, context, xml ) {
+       var elem,
+               newUnmatched = [],
+               i = 0,
+               len = unmatched.length,
+               mapped = map != null;
+
+       for ( ; i < len; i++ ) {
+               if ( (elem = unmatched[i]) ) {
+                       if ( !filter || filter( elem, context, xml ) ) {
+                               newUnmatched.push( elem );
+                               if ( mapped ) {
+                                       map.push( i );
+                               }
+                       }
+               }
+       }
+
+       return newUnmatched;
+}
+
+function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
+       if ( postFilter && !postFilter[ expando ] ) {
+               postFilter = setMatcher( postFilter );
+       }
+       if ( postFinder && !postFinder[ expando ] ) {
+               postFinder = setMatcher( postFinder, postSelector );
+       }
+       return markFunction(function( seed, results, context, xml ) {
+               var temp, i, elem,
+                       preMap = [],
+                       postMap = [],
+                       preexisting = results.length,
+
+                       // Get initial elements from seed or context
+                       elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
+
+                       // Prefilter to get matcher input, preserving a map for seed-results synchronization
+                       matcherIn = preFilter && ( seed || !selector ) ?
+                               condense( elems, preMap, preFilter, context, xml ) :
+                               elems,
+
+                       matcherOut = matcher ?
+                               // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
+                               postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
+
+                                       // ...intermediate processing is necessary
+                                       [] :
+
+                                       // ...otherwise use results directly
+                                       results :
+                               matcherIn;
+
+               // Find primary matches
+               if ( matcher ) {
+                       matcher( matcherIn, matcherOut, context, xml );
+               }
+
+               // Apply postFilter
+               if ( postFilter ) {
+                       temp = condense( matcherOut, postMap );
+                       postFilter( temp, [], context, xml );
+
+                       // Un-match failing elements by moving them back to matcherIn
+                       i = temp.length;
+                       while ( i-- ) {
+                               if ( (elem = temp[i]) ) {
+                                       matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
+                               }
+                       }
+               }
+
+               if ( seed ) {
+                       if ( postFinder || preFilter ) {
+                               if ( postFinder ) {
+                                       // Get the final matcherOut by condensing this intermediate into postFinder contexts
+                                       temp = [];
+                                       i = matcherOut.length;
+                                       while ( i-- ) {
+                                               if ( (elem = matcherOut[i]) ) {
+                                                       // Restore matcherIn since elem is not yet a final match
+                                                       temp.push( (matcherIn[i] = elem) );
+                                               }
+                                       }
+                                       postFinder( null, (matcherOut = []), temp, xml );
+                               }
+
+                               // Move matched elements from seed to results to keep them synchronized
+                               i = matcherOut.length;
+                               while ( i-- ) {
+                                       if ( (elem = matcherOut[i]) &&
+                                               (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {
+
+                                               seed[temp] = !(results[temp] = elem);
+                                       }
+                               }
+                       }
+
+               // Add elements to results, through postFinder if defined
+               } else {
+                       matcherOut = condense(
+                               matcherOut === results ?
+                                       matcherOut.splice( preexisting, matcherOut.length ) :
+                                       matcherOut
+                       );
+                       if ( postFinder ) {
+                               postFinder( null, results, matcherOut, xml );
+                       } else {
+                               push.apply( results, matcherOut );
+                       }
+               }
+       });
+}
+
+function matcherFromTokens( tokens ) {
+       var checkContext, matcher, j,
+               len = tokens.length,
+               leadingRelative = Expr.relative[ tokens[0].type ],
+               implicitRelative = leadingRelative || Expr.relative[" "],
+               i = leadingRelative ? 1 : 0,
+
+               // The foundational matcher ensures that elements are reachable from top-level context(s)
+               matchContext = addCombinator( function( elem ) {
+                       return elem === checkContext;
+               }, implicitRelative, true ),
+               matchAnyContext = addCombinator( function( elem ) {
+                       return indexOf( checkContext, elem ) > -1;
+               }, implicitRelative, true ),
+               matchers = [ function( elem, context, xml ) {
+                       var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
+                               (checkContext = context).nodeType ?
+                                       matchContext( elem, context, xml ) :
+                                       matchAnyContext( elem, context, xml ) );
+                       // Avoid hanging onto element (issue #299)
+                       checkContext = null;
+                       return ret;
+               } ];
+
+       for ( ; i < len; i++ ) {
+               if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
+                       matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
+               } else {
+                       matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
+
+                       // Return special upon seeing a positional matcher
+                       if ( matcher[ expando ] ) {
+                               // Find the next relative operator (if any) for proper handling
+                               j = ++i;
+                               for ( ; j < len; j++ ) {
+                                       if ( Expr.relative[ tokens[j].type ] ) {
+                                               break;
+                                       }
+                               }
+                               return setMatcher(
+                                       i > 1 && elementMatcher( matchers ),
+                                       i > 1 && toSelector(
+                                               // If the preceding token was a descendant combinator, insert an implicit any-element `*`
+                                               tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" })
+                                       ).replace( rtrim, "$1" ),
+                                       matcher,
+                                       i < j && matcherFromTokens( tokens.slice( i, j ) ),
+                                       j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
+                                       j < len && toSelector( tokens )
+                               );
+                       }
+                       matchers.push( matcher );
+               }
+       }
+
+       return elementMatcher( matchers );
+}
+
+function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
+       var bySet = setMatchers.length > 0,
+               byElement = elementMatchers.length > 0,
+               superMatcher = function( seed, context, xml, results, outermost ) {
+                       var elem, j, matcher,
+                               matchedCount = 0,
+                               i = "0",
+                               unmatched = seed && [],
+                               setMatched = [],
+                               contextBackup = outermostContext,
+                               // We must always have either seed elements or outermost context
+                               elems = seed || byElement && Expr.find["TAG"]( "*", outermost ),
+                               // Use integer dirruns iff this is the outermost matcher
+                               dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),
+                               len = elems.length;
+
+                       if ( outermost ) {
+                               outermostContext = context !== document && context;
+                       }
+
+                       // Add elements passing elementMatchers directly to results
+                       // Keep `i` a string if there are no elements so `matchedCount` will be "00" below
+                       // Support: IE<9, Safari
+                       // Tolerate NodeList properties (IE: "length"; Safari: <number>) matching elements by id
+                       for ( ; i !== len && (elem = elems[i]) != null; i++ ) {
+                               if ( byElement && elem ) {
+                                       j = 0;
+                                       while ( (matcher = elementMatchers[j++]) ) {
+                                               if ( matcher( elem, context, xml ) ) {
+                                                       results.push( elem );
+                                                       break;
+                                               }
+                                       }
+                                       if ( outermost ) {
+                                               dirruns = dirrunsUnique;
+                                       }
+                               }
+
+                               // Track unmatched elements for set filters
+                               if ( bySet ) {
+                                       // They will have gone through all possible matchers
+                                       if ( (elem = !matcher && elem) ) {
+                                               matchedCount--;
+                                       }
+
+                                       // Lengthen the array for every element, matched or not
+                                       if ( seed ) {
+                                               unmatched.push( elem );
+                                       }
+                               }
+                       }
+
+                       // Apply set filters to unmatched elements
+                       matchedCount += i;
+                       if ( bySet && i !== matchedCount ) {
+                               j = 0;
+                               while ( (matcher = setMatchers[j++]) ) {
+                                       matcher( unmatched, setMatched, context, xml );
+                               }
+
+                               if ( seed ) {
+                                       // Reintegrate element matches to eliminate the need for sorting
+                                       if ( matchedCount > 0 ) {
+                                               while ( i-- ) {
+                                                       if ( !(unmatched[i] || setMatched[i]) ) {
+                                                               setMatched[i] = pop.call( results );
+                                                       }
+                                               }
+                                       }
+
+                                       // Discard index placeholder values to get only actual matches
+                                       setMatched = condense( setMatched );
+                               }
+
+                               // Add matches to results
+                               push.apply( results, setMatched );
+
+                               // Seedless set matches succeeding multiple successful matchers stipulate sorting
+                               if ( outermost && !seed && setMatched.length > 0 &&
+                                       ( matchedCount + setMatchers.length ) > 1 ) {
+
+                                       Sizzle.uniqueSort( results );
+                               }
+                       }
+
+                       // Override manipulation of globals by nested matchers
+                       if ( outermost ) {
+                               dirruns = dirrunsUnique;
+                               outermostContext = contextBackup;
+                       }
+
+                       return unmatched;
+               };
+
+       return bySet ?
+               markFunction( superMatcher ) :
+               superMatcher;
+}
+
+compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
+       var i,
+               setMatchers = [],
+               elementMatchers = [],
+               cached = compilerCache[ selector + " " ];
+
+       if ( !cached ) {
+               // Generate a function of recursive functions that can be used to check each element
+               if ( !match ) {
+                       match = tokenize( selector );
+               }
+               i = match.length;
+               while ( i-- ) {
+                       cached = matcherFromTokens( match[i] );
+                       if ( cached[ expando ] ) {
+                               setMatchers.push( cached );
+                       } else {
+                               elementMatchers.push( cached );
+                       }
+               }
+
+               // Cache the compiled function
+               cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
+
+               // Save selector and tokenization
+               cached.selector = selector;
+       }
+       return cached;
+};
+
+/**
+ * A low-level selection function that works with Sizzle's compiled
+ *  selector functions
+ * @param {String|Function} selector A selector or a pre-compiled
+ *  selector function built with Sizzle.compile
+ * @param {Element} context
+ * @param {Array} [results]
+ * @param {Array} [seed] A set of elements to match against
+ */
+select = Sizzle.select = function( selector, context, results, seed ) {
+       var i, tokens, token, type, find,
+               compiled = typeof selector === "function" && selector,
+               match = !seed && tokenize( (selector = compiled.selector || selector) );
+
+       results = results || [];
+
+       // Try to minimize operations if there is no seed and only one group
+       if ( match.length === 1 ) {
+
+               // Take a shortcut and set the context if the root selector is an ID
+               tokens = match[0] = match[0].slice( 0 );
+               if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
+                               support.getById && context.nodeType === 9 && documentIsHTML &&
+                               Expr.relative[ tokens[1].type ] ) {
+
+                       context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
+                       if ( !context ) {
+                               return results;
+
+                       // Precompiled matchers will still verify ancestry, so step up a level
+                       } else if ( compiled ) {
+                               context = context.parentNode;
+                       }
+
+                       selector = selector.slice( tokens.shift().value.length );
+               }
+
+               // Fetch a seed set for right-to-left matching
+               i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
+               while ( i-- ) {
+                       token = tokens[i];
+
+                       // Abort if we hit a combinator
+                       if ( Expr.relative[ (type = token.type) ] ) {
+                               break;
+                       }
+                       if ( (find = Expr.find[ type ]) ) {
+                               // Search, expanding context for leading sibling combinators
+                               if ( (seed = find(
+                                       token.matches[0].replace( runescape, funescape ),
+                                       rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
+                               )) ) {
+
+                                       // If seed is empty or no tokens remain, we can return early
+                                       tokens.splice( i, 1 );
+                                       selector = seed.length && toSelector( tokens );
+                                       if ( !selector ) {
+                                               push.apply( results, seed );
+                                               return results;
+                                       }
+
+                                       break;
+                               }
+                       }
+               }
+       }
+
+       // Compile and execute a filtering function if one is not provided
+       // Provide `match` to avoid retokenization if we modified the selector above
+       ( compiled || compile( selector, match ) )(
+               seed,
+               context,
+               !documentIsHTML,
+               results,
+               rsibling.test( selector ) && testContext( context.parentNode ) || context
+       );
+       return results;
+};
+
+// One-time assignments
+
+// Sort stability
+support.sortStable = expando.split("").sort( sortOrder ).join("") === expando;
+
+// Support: Chrome 14-35+
+// Always assume duplicates if they aren't passed to the comparison function
+support.detectDuplicates = !!hasDuplicate;
+
+// Initialize against the default document
+setDocument();
+
+// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)
+// Detached nodes confoundingly follow *each other*
+support.sortDetached = assert(function( div1 ) {
+       // Should return 1, but returns 4 (following)
+       return div1.compareDocumentPosition( document.createElement("div") ) & 1;
+});
+
+// Support: IE<8
+// Prevent attribute/property "interpolation"
+// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
+if ( !assert(function( div ) {
+       div.innerHTML = "<a href='#'></a>";
+       return div.firstChild.getAttribute("href") === "#" ;
+}) ) {
+       addHandle( "type|href|height|width", function( elem, name, isXML ) {
+               if ( !isXML ) {
+                       return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 );
+               }
+       });
+}
+
+// Support: IE<9
+// Use defaultValue in place of getAttribute("value")
+if ( !support.attributes || !assert(function( div ) {
+       div.innerHTML = "<input/>";
+       div.firstChild.setAttribute( "value", "" );
+       return div.firstChild.getAttribute( "value" ) === "";
+}) ) {
+       addHandle( "value", function( elem, name, isXML ) {
+               if ( !isXML && elem.nodeName.toLowerCase() === "input" ) {
+                       return elem.defaultValue;
+               }
+       });
+}
+
+// Support: IE<9
+// Use getAttributeNode to fetch booleans when getAttribute lies
+if ( !assert(function( div ) {
+       return div.getAttribute("disabled") == null;
+}) ) {
+       addHandle( booleans, function( elem, name, isXML ) {
+               var val;
+               if ( !isXML ) {
+                       return elem[ name ] === true ? name.toLowerCase() :
+                                       (val = elem.getAttributeNode( name )) && val.specified ?
+                                       val.value :
+                               null;
+               }
+       });
+}
+
+return Sizzle;
+
+})( window );
+
+
+
+jQuery.find = Sizzle;
+jQuery.expr = Sizzle.selectors;
+jQuery.expr[":"] = jQuery.expr.pseudos;
+jQuery.unique = Sizzle.uniqueSort;
+jQuery.text = Sizzle.getText;
+jQuery.isXMLDoc = Sizzle.isXML;
+jQuery.contains = Sizzle.contains;
+
+
+
+var rneedsContext = jQuery.expr.match.needsContext;
+
+var rsingleTag = (/^<(\w+)\s*\/?>(?:<\/\1>|)$/);
+
+
+
+var risSimple = /^.[^:#\[\.,]*$/;
+
+// Implement the identical functionality for filter and not
+function winnow( elements, qualifier, not ) {
+       if ( jQuery.isFunction( qualifier ) ) {
+               return jQuery.grep( elements, function( elem, i ) {
+                       /* jshint -W018 */
+                       return !!qualifier.call( elem, i, elem ) !== not;
+               });
+
+       }
+
+       if ( qualifier.nodeType ) {
+               return jQuery.grep( elements, function( elem ) {
+                       return ( elem === qualifier ) !== not;
+               });
+
+       }
+
+       if ( typeof qualifier === "string" ) {
+               if ( risSimple.test( qualifier ) ) {
+                       return jQuery.filter( qualifier, elements, not );
+               }
+
+               qualifier = jQuery.filter( qualifier, elements );
+       }
+
+       return jQuery.grep( elements, function( elem ) {
+               return ( indexOf.call( qualifier, elem ) >= 0 ) !== not;
+       });
+}
+
+jQuery.filter = function( expr, elems, not ) {
+       var elem = elems[ 0 ];
+
+       if ( not ) {
+               expr = ":not(" + expr + ")";
+       }
+
+       return elems.length === 1 && elem.nodeType === 1 ?
+               jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] :
+               jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
+                       return elem.nodeType === 1;
+               }));
+};
+
+jQuery.fn.extend({
+       find: function( selector ) {
+               var i,
+                       len = this.length,
+                       ret = [],
+                       self = this;
+
+               if ( typeof selector !== "string" ) {
+                       return this.pushStack( jQuery( selector ).filter(function() {
+                               for ( i = 0; i < len; i++ ) {
+                                       if ( jQuery.contains( self[ i ], this ) ) {
+                                               return true;
+                                       }
+                               }
+                       }) );
+               }
+
+               for ( i = 0; i < len; i++ ) {
+                       jQuery.find( selector, self[ i ], ret );
+               }
+
+               // Needed because $( selector, context ) becomes $( context ).find( selector )
+               ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret );
+               ret.selector = this.selector ? this.selector + " " + selector : selector;
+               return ret;
+       },
+       filter: function( selector ) {
+               return this.pushStack( winnow(this, selector || [], false) );
+       },
+       not: function( selector ) {
+               return this.pushStack( winnow(this, selector || [], true) );
+       },
+       is: function( selector ) {
+               return !!winnow(
+                       this,
+
+                       // If this is a positional/relative selector, check membership in the returned set
+                       // so $("p:first").is("p:last") won't return true for a doc with two "p".
+                       typeof selector === "string" && rneedsContext.test( selector ) ?
+                               jQuery( selector ) :
+                               selector || [],
+                       false
+               ).length;
+       }
+});
+
+
+// Initialize a jQuery object
+
+
+// A central reference to the root jQuery(document)
+var rootjQuery,
+
+       // A simple way to check for HTML strings
+       // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
+       // Strict HTML recognition (#11290: must start with <)
+       rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
+
+       init = jQuery.fn.init = function( selector, context ) {
+               var match, elem;
+
+               // HANDLE: $(""), $(null), $(undefined), $(false)
+               if ( !selector ) {
+                       return this;
+               }
+
+               // Handle HTML strings
+               if ( typeof selector === "string" ) {
+                       if ( selector[0] === "<" && selector[ selector.length - 1 ] === ">" && selector.length >= 3 ) {
+                               // Assume that strings that start and end with <> are HTML and skip the regex check
+                               match = [ null, selector, null ];
+
+                       } else {
+                               match = rquickExpr.exec( selector );
+                       }
+
+                       // Match html or make sure no context is specified for #id
+                       if ( match && (match[1] || !context) ) {
+
+                               // HANDLE: $(html) -> $(array)
+                               if ( match[1] ) {
+                                       context = context instanceof jQuery ? context[0] : context;
+
+                                       // Option to run scripts is true for back-compat
+                                       // Intentionally let the error be thrown if parseHTML is not present
+                                       jQuery.merge( this, jQuery.parseHTML(
+                                               match[1],
+                                               context && context.nodeType ? context.ownerDocument || context : document,
+                                               true
+                                       ) );
+
+                                       // HANDLE: $(html, props)
+                                       if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) {
+                                               for ( match in context ) {
+                                                       // Properties of context are called as methods if possible
+                                                       if ( jQuery.isFunction( this[ match ] ) ) {
+                                                               this[ match ]( context[ match ] );
+
+                                                       // ...and otherwise set as attributes
+                                                       } else {
+                                                               this.attr( match, context[ match ] );
+                                                       }
+                                               }
+                                       }
+
+                                       return this;
+
+                               // HANDLE: $(#id)
+                               } else {
+                                       elem = document.getElementById( match[2] );
+
+                                       // Support: Blackberry 4.6
+                                       // gEBID returns nodes no longer in the document (#6963)
+                                       if ( elem && elem.parentNode ) {
+                                               // Inject the element directly into the jQuery object
+                                               this.length = 1;
+                                               this[0] = elem;
+                                       }
+
+                                       this.context = document;
+                                       this.selector = selector;
+                                       return this;
+                               }
+
+                       // HANDLE: $(expr, $(...))
+                       } else if ( !context || context.jquery ) {
+                               return ( context || rootjQuery ).find( selector );
+
+                       // HANDLE: $(expr, context)
+                       // (which is just equivalent to: $(context).find(expr)
+                       } else {
+                               return this.constructor( context ).find( selector );
+                       }
+
+               // HANDLE: $(DOMElement)
+               } else if ( selector.nodeType ) {
+                       this.context = this[0] = selector;
+                       this.length = 1;
+                       return this;
+
+               // HANDLE: $(function)
+               // Shortcut for document ready
+               } else if ( jQuery.isFunction( selector ) ) {
+                       return typeof rootjQuery.ready !== "undefined" ?
+                               rootjQuery.ready( selector ) :
+                               // Execute immediately if ready is not present
+                               selector( jQuery );
+               }
+
+               if ( selector.selector !== undefined ) {
+                       this.selector = selector.selector;
+                       this.context = selector.context;
+               }
+
+               return jQuery.makeArray( selector, this );
+       };
+
+// Give the init function the jQuery prototype for later instantiation
+init.prototype = jQuery.fn;
+
+// Initialize central reference
+rootjQuery = jQuery( document );
+
+
+var rparentsprev = /^(?:parents|prev(?:Until|All))/,
+       // Methods guaranteed to produce a unique set when starting from a unique set
+       guaranteedUnique = {
+               children: true,
+               contents: true,
+               next: true,
+               prev: true
+       };
+
+jQuery.extend({
+       dir: function( elem, dir, until ) {
+               var matched = [],
+                       truncate = until !== undefined;
+
+               while ( (elem = elem[ dir ]) && elem.nodeType !== 9 ) {
+                       if ( elem.nodeType === 1 ) {
+                               if ( truncate && jQuery( elem ).is( until ) ) {
+                                       break;
+                               }
+                               matched.push( elem );
+                       }
+               }
+               return matched;
+       },
+
+       sibling: function( n, elem ) {
+               var matched = [];
+
+               for ( ; n; n = n.nextSibling ) {
+                       if ( n.nodeType === 1 && n !== elem ) {
+                               matched.push( n );
+                       }
+               }
+
+               return matched;
+       }
+});
+
+jQuery.fn.extend({
+       has: function( target ) {
+               var targets = jQuery( target, this ),
+                       l = targets.length;
+
+               return this.filter(function() {
+                       var i = 0;
+                       for ( ; i < l; i++ ) {
+                               if ( jQuery.contains( this, targets[i] ) ) {
+                                       return true;
+                               }
+                       }
+               });
+       },
+
+       closest: function( selectors, context ) {
+               var cur,
+                       i = 0,
+                       l = this.length,
+                       matched = [],
+                       pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ?
+                               jQuery( selectors, context || this.context ) :
+                               0;
+
+               for ( ; i < l; i++ ) {
+                       for ( cur = this[i]; cur && cur !== context; cur = cur.parentNode ) {
+                               // Always skip document fragments
+                               if ( cur.nodeType < 11 && (pos ?
+                                       pos.index(cur) > -1 :
+
+                                       // Don't pass non-elements to Sizzle
+                                       cur.nodeType === 1 &&
+                                               jQuery.find.matchesSelector(cur, selectors)) ) {
+
+                                       matched.push( cur );
+                                       break;
+                               }
+                       }
+               }
+
+               return this.pushStack( matched.length > 1 ? jQuery.unique( matched ) : matched );
+       },
+
+       // Determine the position of an element within the set
+       index: function( elem ) {
+
+               // No argument, return index in parent
+               if ( !elem ) {
+                       return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;
+               }
+
+               // Index in selector
+               if ( typeof elem === "string" ) {
+                       return indexOf.call( jQuery( elem ), this[ 0 ] );
+               }
+
+               // Locate the position of the desired element
+               return indexOf.call( this,
+
+                       // If it receives a jQuery object, the first element is used
+                       elem.jquery ? elem[ 0 ] : elem
+               );
+       },
+
+       add: function( selector, context ) {
+               return this.pushStack(
+                       jQuery.unique(
+                               jQuery.merge( this.get(), jQuery( selector, context ) )
+                       )
+               );
+       },
+
+       addBack: function( selector ) {
+               return this.add( selector == null ?
+                       this.prevObject : this.prevObject.filter(selector)
+               );
+       }
+});
+
+function sibling( cur, dir ) {
+       while ( (cur = cur[dir]) && cur.nodeType !== 1 ) {}
+       return cur;
+}
+
+jQuery.each({
+       parent: function( elem ) {
+               var parent = elem.parentNode;
+               return parent && parent.nodeType !== 11 ? parent : null;
+       },
+       parents: function( elem ) {
+               return jQuery.dir( elem, "parentNode" );
+       },
+       parentsUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "parentNode", until );
+       },
+       next: function( elem ) {
+               return sibling( elem, "nextSibling" );
+       },
+       prev: function( elem ) {
+               return sibling( elem, "previousSibling" );
+       },
+       nextAll: function( elem ) {
+               return jQuery.dir( elem, "nextSibling" );
+       },
+       prevAll: function( elem ) {
+               return jQuery.dir( elem, "previousSibling" );
+       },
+       nextUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "nextSibling", until );
+       },
+       prevUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "previousSibling", until );
+       },
+       siblings: function( elem ) {
+               return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem );
+       },
+       children: function( elem ) {
+               return jQuery.sibling( elem.firstChild );
+       },
+       contents: function( elem ) {
+               return elem.contentDocument || jQuery.merge( [], elem.childNodes );
+       }
+}, function( name, fn ) {
+       jQuery.fn[ name ] = function( until, selector ) {
+               var matched = jQuery.map( this, fn, until );
+
+               if ( name.slice( -5 ) !== "Until" ) {
+                       selector = until;
+               }
+
+               if ( selector && typeof selector === "string" ) {
+                       matched = jQuery.filter( selector, matched );
+               }
+
+               if ( this.length > 1 ) {
+                       // Remove duplicates
+                       if ( !guaranteedUnique[ name ] ) {
+                               jQuery.unique( matched );
+                       }
+
+                       // Reverse order for parents* and prev-derivatives
+                       if ( rparentsprev.test( name ) ) {
+                               matched.reverse();
+                       }
+               }
+
+               return this.pushStack( matched );
+       };
+});
+var rnotwhite = (/\S+/g);
+
+
+
+// String to Object options format cache
+var optionsCache = {};
+
+// Convert String-formatted options into Object-formatted ones and store in cache
+function createOptions( options ) {
+       var object = optionsCache[ options ] = {};
+       jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) {
+               object[ flag ] = true;
+       });
+       return object;
+}
+
+/*
+ * Create a callback list using the following parameters:
+ *
+ *     options: an optional list of space-separated options that will change how
+ *                     the callback list behaves or a more traditional option object
+ *
+ * By default a callback list will act like an event callback list and can be
+ * "fired" multiple times.
+ *
+ * Possible options:
+ *
+ *     once:                   will ensure the callback list can only be fired once (like a Deferred)
+ *
+ *     memory:                 will keep track of previous values and will call any callback added
+ *                                     after the list has been fired right away with the latest "memorized"
+ *                                     values (like a Deferred)
+ *
+ *     unique:                 will ensure a callback can only be added once (no duplicate in the list)
+ *
+ *     stopOnFalse:    interrupt callings when a callback returns false
+ *
+ */
+jQuery.Callbacks = function( options ) {
+
+       // Convert options from String-formatted to Object-formatted if needed
+       // (we check in cache first)
+       options = typeof options === "string" ?
+               ( optionsCache[ options ] || createOptions( options ) ) :
+               jQuery.extend( {}, options );
+
+       var // Last fire value (for non-forgettable lists)
+               memory,
+               // Flag to know if list was already fired
+               fired,
+               // Flag to know if list is currently firing
+               firing,
+               // First callback to fire (used internally by add and fireWith)
+               firingStart,
+               // End of the loop when firing
+               firingLength,
+               // Index of currently firing callback (modified by remove if needed)
+               firingIndex,
+               // Actual callback list
+               list = [],
+               // Stack of fire calls for repeatable lists
+               stack = !options.once && [],
+               // Fire callbacks
+               fire = function( data ) {
+                       memory = options.memory && data;
+                       fired = true;
+                       firingIndex = firingStart || 0;
+                       firingStart = 0;
+                       firingLength = list.length;
+                       firing = true;
+                       for ( ; list && firingIndex < firingLength; firingIndex++ ) {
+                               if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) {
+                                       memory = false; // To prevent further calls using add
+                                       break;
+                               }
+                       }
+                       firing = false;
+                       if ( list ) {
+                               if ( stack ) {
+                                       if ( stack.length ) {
+                                               fire( stack.shift() );
+                                       }
+                               } else if ( memory ) {
+                                       list = [];
+                               } else {
+                                       self.disable();
+                               }
+                       }
+               },
+               // Actual Callbacks object
+               self = {
+                       // Add a callback or a collection of callbacks to the list
+                       add: function() {
+                               if ( list ) {
+                                       // First, we save the current length
+                                       var start = list.length;
+                                       (function add( args ) {
+                                               jQuery.each( args, function( _, arg ) {
+                                                       var type = jQuery.type( arg );
+                                                       if ( type === "function" ) {
+                                                               if ( !options.unique || !self.has( arg ) ) {
+                                                                       list.push( arg );
+                                                               }
+                                                       } else if ( arg && arg.length && type !== "string" ) {
+                                                               // Inspect recursively
+                                                               add( arg );
+                                                       }
+                                               });
+                                       })( arguments );
+                                       // Do we need to add the callbacks to the
+                                       // current firing batch?
+                                       if ( firing ) {
+                                               firingLength = list.length;
+                                       // With memory, if we're not firing then
+                                       // we should call right away
+                                       } else if ( memory ) {
+                                               firingStart = start;
+                                               fire( memory );
+                                       }
+                               }
+                               return this;
+                       },
+                       // Remove a callback from the list
+                       remove: function() {
+                               if ( list ) {
+                                       jQuery.each( arguments, function( _, arg ) {
+                                               var index;
+                                               while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
+                                                       list.splice( index, 1 );
+                                                       // Handle firing indexes
+                                                       if ( firing ) {
+                                                               if ( index <= firingLength ) {
+                                                                       firingLength--;
+                                                               }
+                                                               if ( index <= firingIndex ) {
+                                                                       firingIndex--;
+                                                               }
+                                                       }
+                                               }
+                                       });
+                               }
+                               return this;
+                       },
+                       // Check if a given callback is in the list.
+                       // If no argument is given, return whether or not list has callbacks attached.
+                       has: function( fn ) {
+                               return fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length );
+                       },
+                       // Remove all callbacks from the list
+                       empty: function() {
+                               list = [];
+                               firingLength = 0;
+                               return this;
+                       },
+                       // Have the list do nothing anymore
+                       disable: function() {
+                               list = stack = memory = undefined;
+                               return this;
+                       },
+                       // Is it disabled?
+                       disabled: function() {
+                               return !list;
+                       },
+                       // Lock the list in its current state
+                       lock: function() {
+                               stack = undefined;
+                               if ( !memory ) {
+                                       self.disable();
+                               }
+                               return this;
+                       },
+                       // Is it locked?
+                       locked: function() {
+                               return !stack;
+                       },
+                       // Call all callbacks with the given context and arguments
+                       fireWith: function( context, args ) {
+                               if ( list && ( !fired || stack ) ) {
+                                       args = args || [];
+                                       args = [ context, args.slice ? args.slice() : args ];
+                                       if ( firing ) {
+                                               stack.push( args );
+                                       } else {
+                                               fire( args );
+                                       }
+                               }
+                               return this;
+                       },
+                       // Call all the callbacks with the given arguments
+                       fire: function() {
+                               self.fireWith( this, arguments );
+                               return this;
+                       },
+                       // To know if the callbacks have already been called at least once
+                       fired: function() {
+                               return !!fired;
+                       }
+               };
+
+       return self;
+};
+
+
+jQuery.extend({
+
+       Deferred: function( func ) {
+               var tuples = [
+                               // action, add listener, listener list, final state
+                               [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ],
+                               [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ],
+                               [ "notify", "progress", jQuery.Callbacks("memory") ]
+                       ],
+                       state = "pending",
+                       promise = {
+                               state: function() {
+                                       return state;
+                               },
+                               always: function() {
+                                       deferred.done( arguments ).fail( arguments );
+                                       return this;
+                               },
+                               then: function( /* fnDone, fnFail, fnProgress */ ) {
+                                       var fns = arguments;
+                                       return jQuery.Deferred(function( newDefer ) {
+                                               jQuery.each( tuples, function( i, tuple ) {
+                                                       var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];
+                                                       // deferred[ done | fail | progress ] for forwarding actions to newDefer
+                                                       deferred[ tuple[1] ](function() {
+                                                               var returned = fn && fn.apply( this, arguments );
+                                                               if ( returned && jQuery.isFunction( returned.promise ) ) {
+                                                                       returned.promise()
+                                                                               .done( newDefer.resolve )
+                                                                               .fail( newDefer.reject )
+                                                                               .progress( newDefer.notify );
+                                                               } else {
+                                                                       newDefer[ tuple[ 0 ] + "With" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments );
+                                                               }
+                                                       });
+                                               });
+                                               fns = null;
+                                       }).promise();
+                               },
+                               // Get a promise for this deferred
+                               // If obj is provided, the promise aspect is added to the object
+                               promise: function( obj ) {
+                                       return obj != null ? jQuery.extend( obj, promise ) : promise;
+                               }
+                       },
+                       deferred = {};
+
+               // Keep pipe for back-compat
+               promise.pipe = promise.then;
+
+               // Add list-specific methods
+               jQuery.each( tuples, function( i, tuple ) {
+                       var list = tuple[ 2 ],
+                               stateString = tuple[ 3 ];
+
+                       // promise[ done | fail | progress ] = list.add
+                       promise[ tuple[1] ] = list.add;
+
+                       // Handle state
+                       if ( stateString ) {
+                               list.add(function() {
+                                       // state = [ resolved | rejected ]
+                                       state = stateString;
+
+                               // [ reject_list | resolve_list ].disable; progress_list.lock
+                               }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );
+                       }
+
+                       // deferred[ resolve | reject | notify ]
+                       deferred[ tuple[0] ] = function() {
+                               deferred[ tuple[0] + "With" ]( this === deferred ? promise : this, arguments );
+                               return this;
+                       };
+                       deferred[ tuple[0] + "With" ] = list.fireWith;
+               });
+
+               // Make the deferred a promise
+               promise.promise( deferred );
+
+               // Call given func if any
+               if ( func ) {
+                       func.call( deferred, deferred );
+               }
+
+               // All done!
+               return deferred;
+       },
+
+       // Deferred helper
+       when: function( subordinate /* , ..., subordinateN */ ) {
+               var i = 0,
+                       resolveValues = slice.call( arguments ),
+                       length = resolveValues.length,
+
+                       // the count of uncompleted subordinates
+                       remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0,
+
+                       // the master Deferred. If resolveValues consist of only a single Deferred, just use that.
+                       deferred = remaining === 1 ? subordinate : jQuery.Deferred(),
+
+                       // Update function for both resolve and progress values
+                       updateFunc = function( i, contexts, values ) {
+                               return function( value ) {
+                                       contexts[ i ] = this;
+                                       values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
+                                       if ( values === progressValues ) {
+                                               deferred.notifyWith( contexts, values );
+                                       } else if ( !( --remaining ) ) {
+                                               deferred.resolveWith( contexts, values );
+                                       }
+                               };
+                       },
+
+                       progressValues, progressContexts, resolveContexts;
+
+               // Add listeners to Deferred subordinates; treat others as resolved
+               if ( length > 1 ) {
+                       progressValues = new Array( length );
+                       progressContexts = new Array( length );
+                       resolveContexts = new Array( length );
+                       for ( ; i < length; i++ ) {
+                               if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {
+                                       resolveValues[ i ].promise()
+                                               .done( updateFunc( i, resolveContexts, resolveValues ) )
+                                               .fail( deferred.reject )
+                                               .progress( updateFunc( i, progressContexts, progressValues ) );
+                               } else {
+                                       --remaining;
+                               }
+                       }
+               }
+
+               // If we're not waiting on anything, resolve the master
+               if ( !remaining ) {
+                       deferred.resolveWith( resolveContexts, resolveValues );
+               }
+
+               return deferred.promise();
+       }
+});
+
+
+// The deferred used on DOM ready
+var readyList;
+
+jQuery.fn.ready = function( fn ) {
+       // Add the callback
+       jQuery.ready.promise().done( fn );
+
+       return this;
+};
+
+jQuery.extend({
+       // Is the DOM ready to be used? Set to true once it occurs.
+       isReady: false,
+
+       // A counter to track how many items to wait for before
+       // the ready event fires. See #6781
+       readyWait: 1,
+
+       // Hold (or release) the ready event
+       holdReady: function( hold ) {
+               if ( hold ) {
+                       jQuery.readyWait++;
+               } else {
+                       jQuery.ready( true );
+               }
+       },
+
+       // Handle when the DOM is ready
+       ready: function( wait ) {
+
+               // Abort if there are pending holds or we're already ready
+               if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
+                       return;
+               }
+
+               // Remember that the DOM is ready
+               jQuery.isReady = true;
+
+               // If a normal DOM Ready event fired, decrement, and wait if need be
+               if ( wait !== true && --jQuery.readyWait > 0 ) {
+                       return;
+               }
+
+               // If there are functions bound, to execute
+               readyList.resolveWith( document, [ jQuery ] );
+
+               // Trigger any bound ready events
+               if ( jQuery.fn.triggerHandler ) {
+                       jQuery( document ).triggerHandler( "ready" );
+                       jQuery( document ).off( "ready" );
+               }
+       }
+});
+
+/**
+ * The ready event handler and self cleanup method
+ */
+function completed() {
+       document.removeEventListener( "DOMContentLoaded", completed, false );
+       window.removeEventListener( "load", completed, false );
+       jQuery.ready();
+}
+
+jQuery.ready.promise = function( obj ) {
+       if ( !readyList ) {
+
+               readyList = jQuery.Deferred();
+
+               // Catch cases where $(document).ready() is called after the browser event has already occurred.
+               // We once tried to use readyState "interactive" here, but it caused issues like the one
+               // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15
+               if ( document.readyState === "complete" ) {
+                       // Handle it asynchronously to allow scripts the opportunity to delay ready
+                       setTimeout( jQuery.ready );
+
+               } else {
+
+                       // Use the handy event callback
+                       document.addEventListener( "DOMContentLoaded", completed, false );
+
+                       // A fallback to window.onload, that will always work
+                       window.addEventListener( "load", completed, false );
+               }
+       }
+       return readyList.promise( obj );
+};
+
+// Kick off the DOM ready check even if the user does not
+jQuery.ready.promise();
+
+
+
+
+// Multifunctional method to get and set values of a collection
+// The value/s can optionally be executed if it's a function
+var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
+       var i = 0,
+               len = elems.length,
+               bulk = key == null;
+
+       // Sets many values
+       if ( jQuery.type( key ) === "object" ) {
+               chainable = true;
+               for ( i in key ) {
+                       jQuery.access( elems, fn, i, key[i], true, emptyGet, raw );
+               }
+
+       // Sets one value
+       } else if ( value !== undefined ) {
+               chainable = true;
+
+               if ( !jQuery.isFunction( value ) ) {
+                       raw = true;
+               }
+
+               if ( bulk ) {
+                       // Bulk operations run against the entire set
+                       if ( raw ) {
+                               fn.call( elems, value );
+                               fn = null;
+
+                       // ...except when executing function values
+                       } else {
+                               bulk = fn;
+                               fn = function( elem, key, value ) {
+                                       return bulk.call( jQuery( elem ), value );
+                               };
+                       }
+               }
+
+               if ( fn ) {
+                       for ( ; i < len; i++ ) {
+                               fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) );
+                       }
+               }
+       }
+
+       return chainable ?
+               elems :
+
+               // Gets
+               bulk ?
+                       fn.call( elems ) :
+                       len ? fn( elems[0], key ) : emptyGet;
+};
+
+
+/**
+ * Determines whether an object can have data
+ */
+jQuery.acceptData = function( owner ) {
+       // Accepts only:
+       //  - Node
+       //    - Node.ELEMENT_NODE
+       //    - Node.DOCUMENT_NODE
+       //  - Object
+       //    - Any
+       /* jshint -W018 */
+       return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
+};
+
+
+function Data() {
+       // Support: Android<4,
+       // Old WebKit does not have Object.preventExtensions/freeze method,
+       // return new empty object instead with no [[set]] accessor
+       Object.defineProperty( this.cache = {}, 0, {
+               get: function() {
+                       return {};
+               }
+       });
+
+       this.expando = jQuery.expando + Data.uid++;
+}
+
+Data.uid = 1;
+Data.accepts = jQuery.acceptData;
+
+Data.prototype = {
+       key: function( owner ) {
+               // We can accept data for non-element nodes in modern browsers,
+               // but we should not, see #8335.
+               // Always return the key for a frozen object.
+               if ( !Data.accepts( owner ) ) {
+                       return 0;
+               }
+
+               var descriptor = {},
+                       // Check if the owner object already has a cache key
+                       unlock = owner[ this.expando ];
+
+               // If not, create one
+               if ( !unlock ) {
+                       unlock = Data.uid++;
+
+                       // Secure it in a non-enumerable, non-writable property
+                       try {
+                               descriptor[ this.expando ] = { value: unlock };
+                               Object.defineProperties( owner, descriptor );
+
+                       // Support: Android<4
+                       // Fallback to a less secure definition
+                       } catch ( e ) {
+                               descriptor[ this.expando ] = unlock;
+                               jQuery.extend( owner, descriptor );
+                       }
+               }
+
+               // Ensure the cache object
+               if ( !this.cache[ unlock ] ) {
+                       this.cache[ unlock ] = {};
+               }
+
+               return unlock;
+       },
+       set: function( owner, data, value ) {
+               var prop,
+                       // There may be an unlock assigned to this node,
+                       // if there is no entry for this "owner", create one inline
+                       // and set the unlock as though an owner entry had always existed
+                       unlock = this.key( owner ),
+                       cache = this.cache[ unlock ];
+
+               // Handle: [ owner, key, value ] args
+               if ( typeof data === "string" ) {
+                       cache[ data ] = value;
+
+               // Handle: [ owner, { properties } ] args
+               } else {
+                       // Fresh assignments by object are shallow copied
+                       if ( jQuery.isEmptyObject( cache ) ) {
+                               jQuery.extend( this.cache[ unlock ], data );
+                       // Otherwise, copy the properties one-by-one to the cache object
+                       } else {
+                               for ( prop in data ) {
+                                       cache[ prop ] = data[ prop ];
+                               }
+                       }
+               }
+               return cache;
+       },
+       get: function( owner, key ) {
+               // Either a valid cache is found, or will be created.
+               // New caches will be created and the unlock returned,
+               // allowing direct access to the newly created
+               // empty data object. A valid owner object must be provided.
+               var cache = this.cache[ this.key( owner ) ];
+
+               return key === undefined ?
+                       cache : cache[ key ];
+       },
+       access: function( owner, key, value ) {
+               var stored;
+               // In cases where either:
+               //
+               //   1. No key was specified
+               //   2. A string key was specified, but no value provided
+               //
+               // Take the "read" path and allow the get method to determine
+               // which value to return, respectively either:
+               //
+               //   1. The entire cache object
+               //   2. The data stored at the key
+               //
+               if ( key === undefined ||
+                               ((key && typeof key === "string") && value === undefined) ) {
+
+                       stored = this.get( owner, key );
+
+                       return stored !== undefined ?
+                               stored : this.get( owner, jQuery.camelCase(key) );
+               }
+
+               // [*]When the key is not a string, or both a key and value
+               // are specified, set or extend (existing objects) with either:
+               //
+               //   1. An object of properties
+               //   2. A key and value
+               //
+               this.set( owner, key, value );
+
+               // Since the "set" path can have two possible entry points
+               // return the expected data based on which path was taken[*]
+               return value !== undefined ? value : key;
+       },
+       remove: function( owner, key ) {
+               var i, name, camel,
+                       unlock = this.key( owner ),
+                       cache = this.cache[ unlock ];
+
+               if ( key === undefined ) {
+                       this.cache[ unlock ] = {};
+
+               } else {
+                       // Support array or space separated string of keys
+                       if ( jQuery.isArray( key ) ) {
+                               // If "name" is an array of keys...
+                               // When data is initially created, via ("key", "val") signature,
+                               // keys will be converted to camelCase.
+                               // Since there is no way to tell _how_ a key was added, remove
+                               // both plain key and camelCase key. #12786
+                               // This will only penalize the array argument path.
+                               name = key.concat( key.map( jQuery.camelCase ) );
+                       } else {
+                               camel = jQuery.camelCase( key );
+                               // Try the string as a key before any manipulation
+                               if ( key in cache ) {
+                                       name = [ key, camel ];
+                               } else {
+                                       // If a key with the spaces exists, use it.
+                                       // Otherwise, create an array by matching non-whitespace
+                                       name = camel;
+                                       name = name in cache ?
+                                               [ name ] : ( name.match( rnotwhite ) || [] );
+                               }
+                       }
+
+                       i = name.length;
+                       while ( i-- ) {
+                               delete cache[ name[ i ] ];
+                       }
+               }
+       },
+       hasData: function( owner ) {
+               return !jQuery.isEmptyObject(
+                       this.cache[ owner[ this.expando ] ] || {}
+               );
+       },
+       discard: function( owner ) {
+               if ( owner[ this.expando ] ) {
+                       delete this.cache[ owner[ this.expando ] ];
+               }
+       }
+};
+var data_priv = new Data();
+
+var data_user = new Data();
+
+
+
+//     Implementation Summary
+//
+//     1. Enforce API surface and semantic compatibility with 1.9.x branch
+//     2. Improve the module's maintainability by reducing the storage
+//             paths to a single mechanism.
+//     3. Use the same single mechanism to support "private" and "user" data.
+//     4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData)
+//     5. Avoid exposing implementation details on user objects (eg. expando properties)
+//     6. Provide a clear path for implementation upgrade to WeakMap in 2014
+
+var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
+       rmultiDash = /([A-Z])/g;
+
+function dataAttr( elem, key, data ) {
+       var name;
+
+       // If nothing was found internally, try to fetch any
+       // data from the HTML5 data-* attribute
+       if ( data === undefined && elem.nodeType === 1 ) {
+               name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();
+               data = elem.getAttribute( name );
+
+               if ( typeof data === "string" ) {
+                       try {
+                               data = data === "true" ? true :
+                                       data === "false" ? false :
+                                       data === "null" ? null :
+                                       // Only convert to a number if it doesn't change the string
+                                       +data + "" === data ? +data :
+                                       rbrace.test( data ) ? jQuery.parseJSON( data ) :
+                                       data;
+                       } catch( e ) {}
+
+                       // Make sure we set the data so it isn't changed later
+                       data_user.set( elem, key, data );
+               } else {
+                       data = undefined;
+               }
+       }
+       return data;
+}
+
+jQuery.extend({
+       hasData: function( elem ) {
+               return data_user.hasData( elem ) || data_priv.hasData( elem );
+       },
+
+       data: function( elem, name, data ) {
+               return data_user.access( elem, name, data );
+       },
+
+       removeData: function( elem, name ) {
+               data_user.remove( elem, name );
+       },
+
+       // TODO: Now that all calls to _data and _removeData have been replaced
+       // with direct calls to data_priv methods, these can be deprecated.
+       _data: function( elem, name, data ) {
+               return data_priv.access( elem, name, data );
+       },
+
+       _removeData: function( elem, name ) {
+               data_priv.remove( elem, name );
+       }
+});
+
+jQuery.fn.extend({
+       data: function( key, value ) {
+               var i, name, data,
+                       elem = this[ 0 ],
+                       attrs = elem && elem.attributes;
+
+               // Gets all values
+               if ( key === undefined ) {
+                       if ( this.length ) {
+                               data = data_user.get( elem );
+
+                               if ( elem.nodeType === 1 && !data_priv.get( elem, "hasDataAttrs" ) ) {
+                                       i = attrs.length;
+                                       while ( i-- ) {
+
+                                               // Support: IE11+
+                                               // The attrs elements can be null (#14894)
+                                               if ( attrs[ i ] ) {
+                                                       name = attrs[ i ].name;
+                                                       if ( name.indexOf( "data-" ) === 0 ) {
+                                                               name = jQuery.camelCase( name.slice(5) );
+                                                               dataAttr( elem, name, data[ name ] );
+                                                       }
+                                               }
+                                       }
+                                       data_priv.set( elem, "hasDataAttrs", true );
+                               }
+                       }
+
+                       return data;
+               }
+
+               // Sets multiple values
+               if ( typeof key === "object" ) {
+                       return this.each(function() {
+                               data_user.set( this, key );
+                       });
+               }
+
+               return access( this, function( value ) {
+                       var data,
+                               camelKey = jQuery.camelCase( key );
+
+                       // The calling jQuery object (element matches) is not empty
+                       // (and therefore has an element appears at this[ 0 ]) and the
+                       // `value` parameter was not undefined. An empty jQuery object
+                       // will result in `undefined` for elem = this[ 0 ] which will
+                       // throw an exception if an attempt to read a data cache is made.
+                       if ( elem && value === undefined ) {
+                               // Attempt to get data from the cache
+                               // with the key as-is
+                               data = data_user.get( elem, key );
+                               if ( data !== undefined ) {
+                                       return data;
+                               }
+
+                               // Attempt to get data from the cache
+                               // with the key camelized
+                               data = data_user.get( elem, camelKey );
+                               if ( data !== undefined ) {
+                                       return data;
+                               }
+
+                               // Attempt to "discover" the data in
+                               // HTML5 custom data-* attrs
+                               data = dataAttr( elem, camelKey, undefined );
+                               if ( data !== undefined ) {
+                                       return data;
+                               }
+
+                               // We tried really hard, but the data doesn't exist.
+                               return;
+                       }
+
+                       // Set the data...
+                       this.each(function() {
+                               // First, attempt to store a copy or reference of any
+                               // data that might've been store with a camelCased key.
+                               var data = data_user.get( this, camelKey );
+
+                               // For HTML5 data-* attribute interop, we have to
+                               // store property names with dashes in a camelCase form.
+                               // This might not apply to all properties...*
+                               data_user.set( this, camelKey, value );
+
+                               // *... In the case of properties that might _actually_
+                               // have dashes, we need to also store a copy of that
+                               // unchanged property.
+                               if ( key.indexOf("-") !== -1 && data !== undefined ) {
+                                       data_user.set( this, key, value );
+                               }
+                       });
+               }, null, value, arguments.length > 1, null, true );
+       },
+
+       removeData: function( key ) {
+               return this.each(function() {
+                       data_user.remove( this, key );
+               });
+       }
+});
+
+
+jQuery.extend({
+       queue: function( elem, type, data ) {
+               var queue;
+
+               if ( elem ) {
+                       type = ( type || "fx" ) + "queue";
+                       queue = data_priv.get( elem, type );
+
+                       // Speed up dequeue by getting out quickly if this is just a lookup
+                       if ( data ) {
+                               if ( !queue || jQuery.isArray( data ) ) {
+                                       queue = data_priv.access( elem, type, jQuery.makeArray(data) );
+                               } else {
+                                       queue.push( data );
+                               }
+                       }
+                       return queue || [];
+               }
+       },
+
+       dequeue: function( elem, type ) {
+               type = type || "fx";
+
+               var queue = jQuery.queue( elem, type ),
+                       startLength = queue.length,
+                       fn = queue.shift(),
+                       hooks = jQuery._queueHooks( elem, type ),
+                       next = function() {
+                               jQuery.dequeue( elem, type );
+                       };
+
+               // If the fx queue is dequeued, always remove the progress sentinel
+               if ( fn === "inprogress" ) {
+                       fn = queue.shift();
+                       startLength--;
+               }
+
+               if ( fn ) {
+
+                       // Add a progress sentinel to prevent the fx queue from being
+                       // automatically dequeued
+                       if ( type === "fx" ) {
+                               queue.unshift( "inprogress" );
+                       }
+
+                       // Clear up the last queue stop function
+                       delete hooks.stop;
+                       fn.call( elem, next, hooks );
+               }
+
+               if ( !startLength && hooks ) {
+                       hooks.empty.fire();
+               }
+       },
+
+       // Not public - generate a queueHooks object, or return the current one
+       _queueHooks: function( elem, type ) {
+               var key = type + "queueHooks";
+               return data_priv.get( elem, key ) || data_priv.access( elem, key, {
+                       empty: jQuery.Callbacks("once memory").add(function() {
+                               data_priv.remove( elem, [ type + "queue", key ] );
+                       })
+               });
+       }
+});
+
+jQuery.fn.extend({
+       queue: function( type, data ) {
+               var setter = 2;
+
+               if ( typeof type !== "string" ) {
+                       data = type;
+                       type = "fx";
+                       setter--;
+               }
+
+               if ( arguments.length < setter ) {
+                       return jQuery.queue( this[0], type );
+               }
+
+               return data === undefined ?
+                       this :
+                       this.each(function() {
+                               var queue = jQuery.queue( this, type, data );
+
+                               // Ensure a hooks for this queue
+                               jQuery._queueHooks( this, type );
+
+                               if ( type === "fx" && queue[0] !== "inprogress" ) {
+                                       jQuery.dequeue( this, type );
+                               }
+                       });
+       },
+       dequeue: function( type ) {
+               return this.each(function() {
+                       jQuery.dequeue( this, type );
+               });
+       },
+       clearQueue: function( type ) {
+               return this.queue( type || "fx", [] );
+       },
+       // Get a promise resolved when queues of a certain type
+       // are emptied (fx is the type by default)
+       promise: function( type, obj ) {
+               var tmp,
+                       count = 1,
+                       defer = jQuery.Deferred(),
+                       elements = this,
+                       i = this.length,
+                       resolve = function() {
+                               if ( !( --count ) ) {
+                                       defer.resolveWith( elements, [ elements ] );
+                               }
+                       };
+
+               if ( typeof type !== "string" ) {
+                       obj = type;
+                       type = undefined;
+               }
+               type = type || "fx";
+
+               while ( i-- ) {
+                       tmp = data_priv.get( elements[ i ], type + "queueHooks" );
+                       if ( tmp && tmp.empty ) {
+                               count++;
+                               tmp.empty.add( resolve );
+                       }
+               }
+               resolve();
+               return defer.promise( obj );
+       }
+});
+var pnum = (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source;
+
+var cssExpand = [ "Top", "Right", "Bottom", "Left" ];
+
+var isHidden = function( elem, el ) {
+               // isHidden might be called from jQuery#filter function;
+               // in that case, element will be second argument
+               elem = el || elem;
+               return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem );
+       };
+
+var rcheckableType = (/^(?:checkbox|radio)$/i);
+
+
+
+(function() {
+       var fragment = document.createDocumentFragment(),
+               div = fragment.appendChild( document.createElement( "div" ) ),
+               input = document.createElement( "input" );
+
+       // Support: Safari<=5.1
+       // Check state lost if the name is set (#11217)
+       // Support: Windows Web Apps (WWA)
+       // `name` and `type` must use .setAttribute for WWA (#14901)
+       input.setAttribute( "type", "radio" );
+       input.setAttribute( "checked", "checked" );
+       input.setAttribute( "name", "t" );
+
+       div.appendChild( input );
+
+       // Support: Safari<=5.1, Android<4.2
+       // Older WebKit doesn't clone checked state correctly in fragments
+       support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;
+
+       // Support: IE<=11+
+       // Make sure textarea (and checkbox) defaultValue is properly cloned
+       div.innerHTML = "<textarea>x</textarea>";
+       support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;
+})();
+var strundefined = typeof undefined;
+
+
+
+support.focusinBubbles = "onfocusin" in window;
+
+
+var
+       rkeyEvent = /^key/,
+       rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/,
+       rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
+       rtypenamespace = /^([^.]*)(?:\.(.+)|)$/;
+
+function returnTrue() {
+       return true;
+}
+
+function returnFalse() {
+       return false;
+}
+
+function safeActiveElement() {
+       try {
+               return document.activeElement;
+       } catch ( err ) { }
+}
+
+/*
+ * Helper functions for managing events -- not part of the public interface.
+ * Props to Dean Edwards' addEvent library for many of the ideas.
+ */
+jQuery.event = {
+
+       global: {},
+
+       add: function( elem, types, handler, data, selector ) {
+
+               var handleObjIn, eventHandle, tmp,
+                       events, t, handleObj,
+                       special, handlers, type, namespaces, origType,
+                       elemData = data_priv.get( elem );
+
+               // Don't attach events to noData or text/comment nodes (but allow plain objects)
+               if ( !elemData ) {
+                       return;
+               }
+
+               // Caller can pass in an object of custom data in lieu of the handler
+               if ( handler.handler ) {
+                       handleObjIn = handler;
+                       handler = handleObjIn.handler;
+                       selector = handleObjIn.selector;
+               }
+
+               // Make sure that the handler has a unique ID, used to find/remove it later
+               if ( !handler.guid ) {
+                       handler.guid = jQuery.guid++;
+               }
+
+               // Init the element's event structure and main handler, if this is the first
+               if ( !(events = elemData.events) ) {
+                       events = elemData.events = {};
+               }
+               if ( !(eventHandle = elemData.handle) ) {
+                       eventHandle = elemData.handle = function( e ) {
+                               // Discard the second event of a jQuery.event.trigger() and
+                               // when an event is called after a page has unloaded
+                               return typeof jQuery !== strundefined && jQuery.event.triggered !== e.type ?
+                                       jQuery.event.dispatch.apply( elem, arguments ) : undefined;
+                       };
+               }
+
+               // Handle multiple events separated by a space
+               types = ( types || "" ).match( rnotwhite ) || [ "" ];
+               t = types.length;
+               while ( t-- ) {
+                       tmp = rtypenamespace.exec( types[t] ) || [];
+                       type = origType = tmp[1];
+                       namespaces = ( tmp[2] || "" ).split( "." ).sort();
+
+                       // There *must* be a type, no attaching namespace-only handlers
+                       if ( !type ) {
+                               continue;
+                       }
+
+                       // If event changes its type, use the special event handlers for the changed type
+                       special = jQuery.event.special[ type ] || {};
+
+                       // If selector defined, determine special event api type, otherwise given type
+                       type = ( selector ? special.delegateType : special.bindType ) || type;
+
+                       // Update special based on newly reset type
+                       special = jQuery.event.special[ type ] || {};
+
+                       // handleObj is passed to all event handlers
+                       handleObj = jQuery.extend({
+                               type: type,
+                               origType: origType,
+                               data: data,
+                               handler: handler,
+                               guid: handler.guid,
+                               selector: selector,
+                               needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
+                               namespace: namespaces.join(".")
+                       }, handleObjIn );
+
+                       // Init the event handler queue if we're the first
+                       if ( !(handlers = events[ type ]) ) {
+                               handlers = events[ type ] = [];
+                               handlers.delegateCount = 0;
+
+                               // Only use addEventListener if the special events handler returns false
+                               if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
+                                       if ( elem.addEventListener ) {
+                                               elem.addEventListener( type, eventHandle, false );
+                                       }
+                               }
+                       }
+
+                       if ( special.add ) {
+                               special.add.call( elem, handleObj );
+
+                               if ( !handleObj.handler.guid ) {
+                                       handleObj.handler.guid = handler.guid;
+                               }
+                       }
+
+                       // Add to the element's handler list, delegates in front
+                       if ( selector ) {
+                               handlers.splice( handlers.delegateCount++, 0, handleObj );
+                       } else {
+                               handlers.push( handleObj );
+                       }
+
+                       // Keep track of which events have ever been used, for event optimization
+                       jQuery.event.global[ type ] = true;
+               }
+
+       },
+
+       // Detach an event or set of events from an element
+       remove: function( elem, types, handler, selector, mappedTypes ) {
+
+               var j, origCount, tmp,
+                       events, t, handleObj,
+                       special, handlers, type, namespaces, origType,
+                       elemData = data_priv.hasData( elem ) && data_priv.get( elem );
+
+               if ( !elemData || !(events = elemData.events) ) {
+                       return;
+               }
+
+               // Once for each type.namespace in types; type may be omitted
+               types = ( types || "" ).match( rnotwhite ) || [ "" ];
+               t = types.length;
+               while ( t-- ) {
+                       tmp = rtypenamespace.exec( types[t] ) || [];
+                       type = origType = tmp[1];
+                       namespaces = ( tmp[2] || "" ).split( "." ).sort();
+
+                       // Unbind all events (on this namespace, if provided) for the element
+                       if ( !type ) {
+                               for ( type in events ) {
+                                       jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
+                               }
+                               continue;
+                       }
+
+                       special = jQuery.event.special[ type ] || {};
+                       type = ( selector ? special.delegateType : special.bindType ) || type;
+                       handlers = events[ type ] || [];
+                       tmp = tmp[2] && new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" );
+
+                       // Remove matching events
+                       origCount = j = handlers.length;
+                       while ( j-- ) {
+                               handleObj = handlers[ j ];
+
+                               if ( ( mappedTypes || origType === handleObj.origType ) &&
+                                       ( !handler || handler.guid === handleObj.guid ) &&
+                                       ( !tmp || tmp.test( handleObj.namespace ) ) &&
+                                       ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) {
+                                       handlers.splice( j, 1 );
+
+                                       if ( handleObj.selector ) {
+                                               handlers.delegateCount--;
+                                       }
+                                       if ( special.remove ) {
+                                               special.remove.call( elem, handleObj );
+                                       }
+                               }
+                       }
+
+                       // Remove generic event handler if we removed something and no more handlers exist
+                       // (avoids potential for endless recursion during removal of special event handlers)
+                       if ( origCount && !handlers.length ) {
+                               if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
+                                       jQuery.removeEvent( elem, type, elemData.handle );
+                               }
+
+                               delete events[ type ];
+                       }
+               }
+
+               // Remove the expando if it's no longer used
+               if ( jQuery.isEmptyObject( events ) ) {
+                       delete elemData.handle;
+                       data_priv.remove( elem, "events" );
+               }
+       },
+
+       trigger: function( event, data, elem, onlyHandlers ) {
+
+               var i, cur, tmp, bubbleType, ontype, handle, special,
+                       eventPath = [ elem || document ],
+                       type = hasOwn.call( event, "type" ) ? event.type : event,
+                       namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split(".") : [];
+
+               cur = tmp = elem = elem || document;
+
+               // Don't do events on text and comment nodes
+               if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
+                       return;
+               }
+
+               // focus/blur morphs to focusin/out; ensure we're not firing them right now
+               if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
+                       return;
+               }
+
+               if ( type.indexOf(".") >= 0 ) {
+                       // Namespaced trigger; create a regexp to match event type in handle()
+                       namespaces = type.split(".");
+                       type = namespaces.shift();
+                       namespaces.sort();
+               }
+               ontype = type.indexOf(":") < 0 && "on" + type;
+
+               // Caller can pass in a jQuery.Event object, Object, or just an event type string
+               event = event[ jQuery.expando ] ?
+                       event :
+                       new jQuery.Event( type, typeof event === "object" && event );
+
+               // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)
+               event.isTrigger = onlyHandlers ? 2 : 3;
+               event.namespace = namespaces.join(".");
+               event.namespace_re = event.namespace ?
+                       new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ) :
+                       null;
+
+               // Clean up the event in case it is being reused
+               event.result = undefined;
+               if ( !event.target ) {
+                       event.target = elem;
+               }
+
+               // Clone any incoming data and prepend the event, creating the handler arg list
+               data = data == null ?
+                       [ event ] :
+                       jQuery.makeArray( data, [ event ] );
+
+               // Allow special events to draw outside the lines
+               special = jQuery.event.special[ type ] || {};
+               if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {
+                       return;
+               }
+
+               // Determine event propagation path in advance, per W3C events spec (#9951)
+               // Bubble up to document, then to window; watch for a global ownerDocument var (#9724)
+               if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {
+
+                       bubbleType = special.delegateType || type;
+                       if ( !rfocusMorph.test( bubbleType + type ) ) {
+                               cur = cur.parentNode;
+                       }
+                       for ( ; cur; cur = cur.parentNode ) {
+                               eventPath.push( cur );
+                               tmp = cur;
+                       }
+
+                       // Only add window if we got to document (e.g., not plain obj or detached DOM)
+                       if ( tmp === (elem.ownerDocument || document) ) {
+                               eventPath.push( tmp.defaultView || tmp.parentWindow || window );
+                       }
+               }
+
+               // Fire handlers on the event path
+               i = 0;
+               while ( (cur = eventPath[i++]) && !event.isPropagationStopped() ) {
+
+                       event.type = i > 1 ?
+                               bubbleType :
+                               special.bindType || type;
+
+                       // jQuery handler
+                       handle = ( data_priv.get( cur, "events" ) || {} )[ event.type ] && data_priv.get( cur, "handle" );
+                       if ( handle ) {
+                               handle.apply( cur, data );
+                       }
+
+                       // Native handler
+                       handle = ontype && cur[ ontype ];
+                       if ( handle && handle.apply && jQuery.acceptData( cur ) ) {
+                               event.result = handle.apply( cur, data );
+                               if ( event.result === false ) {
+                                       event.preventDefault();
+                               }
+                       }
+               }
+               event.type = type;
+
+               // If nobody prevented the default action, do it now
+               if ( !onlyHandlers && !event.isDefaultPrevented() ) {
+
+                       if ( (!special._default || special._default.apply( eventPath.pop(), data ) === false) &&
+                               jQuery.acceptData( elem ) ) {
+
+                               // Call a native DOM method on the target with the same name name as the event.
+                               // Don't do default actions on window, that's where global variables be (#6170)
+                               if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) {
+
+                                       // Don't re-trigger an onFOO event when we call its FOO() method
+                                       tmp = elem[ ontype ];
+
+                                       if ( tmp ) {
+                                               elem[ ontype ] = null;
+                                       }
+
+                                       // Prevent re-triggering of the same event, since we already bubbled it above
+                                       jQuery.event.triggered = type;
+                                       elem[ type ]();
+                                       jQuery.event.triggered = undefined;
+
+                                       if ( tmp ) {
+                                               elem[ ontype ] = tmp;
+                                       }
+                               }
+                       }
+               }
+
+               return event.result;
+       },
+
+       dispatch: function( event ) {
+
+               // Make a writable jQuery.Event from the native event object
+               event = jQuery.event.fix( event );
+
+               var i, j, ret, matched, handleObj,
+                       handlerQueue = [],
+                       args = slice.call( arguments ),
+                       handlers = ( data_priv.get( this, "events" ) || {} )[ event.type ] || [],
+                       special = jQuery.event.special[ event.type ] || {};
+
+               // Use the fix-ed jQuery.Event rather than the (read-only) native event
+               args[0] = event;
+               event.delegateTarget = this;
+
+               // Call the preDispatch hook for the mapped type, and let it bail if desired
+               if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
+                       return;
+               }
+
+               // Determine handlers
+               handlerQueue = jQuery.event.handlers.call( this, event, handlers );
+
+               // Run delegates first; they may want to stop propagation beneath us
+               i = 0;
+               while ( (matched = handlerQueue[ i++ ]) && !event.isPropagationStopped() ) {
+                       event.currentTarget = matched.elem;
+
+                       j = 0;
+                       while ( (handleObj = matched.handlers[ j++ ]) && !event.isImmediatePropagationStopped() ) {
+
+                               // Triggered event must either 1) have no namespace, or 2) have namespace(s)
+                               // a subset or equal to those in the bound event (both can have no namespace).
+                               if ( !event.namespace_re || event.namespace_re.test( handleObj.namespace ) ) {
+
+                                       event.handleObj = handleObj;
+                                       event.data = handleObj.data;
+
+                                       ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler )
+                                                       .apply( matched.elem, args );
+
+                                       if ( ret !== undefined ) {
+                                               if ( (event.result = ret) === false ) {
+                                                       event.preventDefault();
+                                                       event.stopPropagation();
+                                               }
+                                       }
+                               }
+                       }
+               }
+
+               // Call the postDispatch hook for the mapped type
+               if ( special.postDispatch ) {
+                       special.postDispatch.call( this, event );
+               }
+
+               return event.result;
+       },
+
+       handlers: function( event, handlers ) {
+               var i, matches, sel, handleObj,
+                       handlerQueue = [],
+                       delegateCount = handlers.delegateCount,
+                       cur = event.target;
+
+               // Find delegate handlers
+               // Black-hole SVG <use> instance trees (#13180)
+               // Avoid non-left-click bubbling in Firefox (#3861)
+               if ( delegateCount && cur.nodeType && (!event.button || event.type !== "click") ) {
+
+                       for ( ; cur !== this; cur = cur.parentNode || this ) {
+
+                               // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)
+                               if ( cur.disabled !== true || event.type !== "click" ) {
+                                       matches = [];
+                                       for ( i = 0; i < delegateCount; i++ ) {
+                                               handleObj = handlers[ i ];
+
+                                               // Don't conflict with Object.prototype properties (#13203)
+                                               sel = handleObj.selector + " ";
+
+                                               if ( matches[ sel ] === undefined ) {
+                                                       matches[ sel ] = handleObj.needsContext ?
+                                                               jQuery( sel, this ).index( cur ) >= 0 :
+                                                               jQuery.find( sel, this, null, [ cur ] ).length;
+                                               }
+                                               if ( matches[ sel ] ) {
+                                                       matches.push( handleObj );
+                                               }
+                                       }
+                                       if ( matches.length ) {
+                                               handlerQueue.push({ elem: cur, handlers: matches });
+                                       }
+                               }
+                       }
+               }
+
+               // Add the remaining (directly-bound) handlers
+               if ( delegateCount < handlers.length ) {
+                       handlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) });
+               }
+
+               return handlerQueue;
+       },
+
+       // Includes some event props shared by KeyEvent and MouseEvent
+       props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
+
+       fixHooks: {},
+
+       keyHooks: {
+               props: "char charCode key keyCode".split(" "),
+               filter: function( event, original ) {
+
+                       // Add which for key events
+                       if ( event.which == null ) {
+                               event.which = original.charCode != null ? original.charCode : original.keyCode;
+                       }
+
+                       return event;
+               }
+       },
+
+       mouseHooks: {
+               props: "button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
+               filter: function( event, original ) {
+                       var eventDoc, doc, body,
+                               button = original.button;
+
+                       // Calculate pageX/Y if missing and clientX/Y available
+                       if ( event.pageX == null && original.clientX != null ) {
+                               eventDoc = event.target.ownerDocument || document;
+                               doc = eventDoc.documentElement;
+                               body = eventDoc.body;
+
+                               event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 );
+                               event.pageY = original.clientY + ( doc && doc.scrollTop  || body && body.scrollTop  || 0 ) - ( doc && doc.clientTop  || body && body.clientTop  || 0 );
+                       }
+
+                       // Add which for click: 1 === left; 2 === middle; 3 === right
+                       // Note: button is not normalized, so don't use it
+                       if ( !event.which && button !== undefined ) {
+                               event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );
+                       }
+
+                       return event;
+               }
+       },
+
+       fix: function( event ) {
+               if ( event[ jQuery.expando ] ) {
+                       return event;
+               }
+
+               // Create a writable copy of the event object and normalize some properties
+               var i, prop, copy,
+                       type = event.type,
+                       originalEvent = event,
+                       fixHook = this.fixHooks[ type ];
+
+               if ( !fixHook ) {
+                       this.fixHooks[ type ] = fixHook =
+                               rmouseEvent.test( type ) ? this.mouseHooks :
+                               rkeyEvent.test( type ) ? this.keyHooks :
+                               {};
+               }
+               copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;
+
+               event = new jQuery.Event( originalEvent );
+
+               i = copy.length;
+               while ( i-- ) {
+                       prop = copy[ i ];
+                       event[ prop ] = originalEvent[ prop ];
+               }
+
+               // Support: Cordova 2.5 (WebKit) (#13255)
+               // All events should have a target; Cordova deviceready doesn't
+               if ( !event.target ) {
+                       event.target = document;
+               }
+
+               // Support: Safari 6.0+, Chrome<28
+               // Target should not be a text node (#504, #13143)
+               if ( event.target.nodeType === 3 ) {
+                       event.target = event.target.parentNode;
+               }
+
+               return fixHook.filter ? fixHook.filter( event, originalEvent ) : event;
+       },
+
+       special: {
+               load: {
+                       // Prevent triggered image.load events from bubbling to window.load
+                       noBubble: true
+               },
+               focus: {
+                       // Fire native event if possible so blur/focus sequence is correct
+                       trigger: function() {
+                               if ( this !== safeActiveElement() && this.focus ) {
+                                       this.focus();
+                                       return false;
+                               }
+                       },
+                       delegateType: "focusin"
+               },
+               blur: {
+                       trigger: function() {
+                               if ( this === safeActiveElement() && this.blur ) {
+                                       this.blur();
+                                       return false;
+                               }
+                       },
+                       delegateType: "focusout"
+               },
+               click: {
+                       // For checkbox, fire native event so checked state will be right
+                       trigger: function() {
+                               if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) {
+                                       this.click();
+                                       return false;
+                               }
+                       },
+
+                       // For cross-browser consistency, don't fire native .click() on links
+                       _default: function( event ) {
+                               return jQuery.nodeName( event.target, "a" );
+                       }
+               },
+
+               beforeunload: {
+                       postDispatch: function( event ) {
+
+                               // Support: Firefox 20+
+                               // Firefox doesn't alert if the returnValue field is not set.
+                               if ( event.result !== undefined && event.originalEvent ) {
+                                       event.originalEvent.returnValue = event.result;
+                               }
+                       }
+               }
+       },
+
+       simulate: function( type, elem, event, bubble ) {
+               // Piggyback on a donor event to simulate a different one.
+               // Fake originalEvent to avoid donor's stopPropagation, but if the
+               // simulated event prevents default then we do the same on the donor.
+               var e = jQuery.extend(
+                       new jQuery.Event(),
+                       event,
+                       {
+                               type: type,
+                               isSimulated: true,
+                               originalEvent: {}
+                       }
+               );
+               if ( bubble ) {
+                       jQuery.event.trigger( e, null, elem );
+               } else {
+                       jQuery.event.dispatch.call( elem, e );
+               }
+               if ( e.isDefaultPrevented() ) {
+                       event.preventDefault();
+               }
+       }
+};
+
+jQuery.removeEvent = function( elem, type, handle ) {
+       if ( elem.removeEventListener ) {
+               elem.removeEventListener( type, handle, false );
+       }
+};
+
+jQuery.Event = function( src, props ) {
+       // Allow instantiation without the 'new' keyword
+       if ( !(this instanceof jQuery.Event) ) {
+               return new jQuery.Event( src, props );
+       }
+
+       // Event object
+       if ( src && src.type ) {
+               this.originalEvent = src;
+               this.type = src.type;
+
+               // Events bubbling up the document may have been marked as prevented
+               // by a handler lower down the tree; reflect the correct value.
+               this.isDefaultPrevented = src.defaultPrevented ||
+                               src.defaultPrevented === undefined &&
+                               // Support: Android<4.0
+                               src.returnValue === false ?
+                       returnTrue :
+                       returnFalse;
+
+       // Event type
+       } else {
+               this.type = src;
+       }
+
+       // Put explicitly provided properties onto the event object
+       if ( props ) {
+               jQuery.extend( this, props );
+       }
+
+       // Create a timestamp if incoming event doesn't have one
+       this.timeStamp = src && src.timeStamp || jQuery.now();
+
+       // Mark it as fixed
+       this[ jQuery.expando ] = true;
+};
+
+// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
+// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
+jQuery.Event.prototype = {
+       isDefaultPrevented: returnFalse,
+       isPropagationStopped: returnFalse,
+       isImmediatePropagationStopped: returnFalse,
+
+       preventDefault: function() {
+               var e = this.originalEvent;
+
+               this.isDefaultPrevented = returnTrue;
+
+               if ( e && e.preventDefault ) {
+                       e.preventDefault();
+               }
+       },
+       stopPropagation: function() {
+               var e = this.originalEvent;
+
+               this.isPropagationStopped = returnTrue;
+
+               if ( e && e.stopPropagation ) {
+                       e.stopPropagation();
+               }
+       },
+       stopImmediatePropagation: function() {
+               var e = this.originalEvent;
+
+               this.isImmediatePropagationStopped = returnTrue;
+
+               if ( e && e.stopImmediatePropagation ) {
+                       e.stopImmediatePropagation();
+               }
+
+               this.stopPropagation();
+       }
+};
+
+// Create mouseenter/leave events using mouseover/out and event-time checks
+// Support: Chrome 15+
+jQuery.each({
+       mouseenter: "mouseover",
+       mouseleave: "mouseout",
+       pointerenter: "pointerover",
+       pointerleave: "pointerout"
+}, function( orig, fix ) {
+       jQuery.event.special[ orig ] = {
+               delegateType: fix,
+               bindType: fix,
+
+               handle: function( event ) {
+                       var ret,
+                               target = this,
+                               related = event.relatedTarget,
+                               handleObj = event.handleObj;
+
+                       // For mousenter/leave call the handler if related is outside the target.
+                       // NB: No relatedTarget if the mouse left/entered the browser window
+                       if ( !related || (related !== target && !jQuery.contains( target, related )) ) {
+                               event.type = handleObj.origType;
+                               ret = handleObj.handler.apply( this, arguments );
+                               event.type = fix;
+                       }
+                       return ret;
+               }
+       };
+});
+
+// Support: Firefox, Chrome, Safari
+// Create "bubbling" focus and blur events
+if ( !support.focusinBubbles ) {
+       jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
+
+               // Attach a single capturing handler on the document while someone wants focusin/focusout
+               var handler = function( event ) {
+                               jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true );
+                       };
+
+               jQuery.event.special[ fix ] = {
+                       setup: function() {
+                               var doc = this.ownerDocument || this,
+                                       attaches = data_priv.access( doc, fix );
+
+                               if ( !attaches ) {
+                                       doc.addEventListener( orig, handler, true );
+                               }
+                               data_priv.access( doc, fix, ( attaches || 0 ) + 1 );
+                       },
+                       teardown: function() {
+                               var doc = this.ownerDocument || this,
+                                       attaches = data_priv.access( doc, fix ) - 1;
+
+                               if ( !attaches ) {
+                                       doc.removeEventListener( orig, handler, true );
+                                       data_priv.remove( doc, fix );
+
+                               } else {
+                                       data_priv.access( doc, fix, attaches );
+                               }
+                       }
+               };
+       });
+}
+
+jQuery.fn.extend({
+
+       on: function( types, selector, data, fn, /*INTERNAL*/ one ) {
+               var origFn, type;
+
+               // Types can be a map of types/handlers
+               if ( typeof types === "object" ) {
+                       // ( types-Object, selector, data )
+                       if ( typeof selector !== "string" ) {
+                               // ( types-Object, data )
+                               data = data || selector;
+                               selector = undefined;
+                       }
+                       for ( type in types ) {
+                               this.on( type, selector, data, types[ type ], one );
+                       }
+                       return this;
+               }
+
+               if ( data == null && fn == null ) {
+                       // ( types, fn )
+                       fn = selector;
+                       data = selector = undefined;
+               } else if ( fn == null ) {
+                       if ( typeof selector === "string" ) {
+                               // ( types, selector, fn )
+                               fn = data;
+                               data = undefined;
+                       } else {
+                               // ( types, data, fn )
+                               fn = data;
+                               data = selector;
+                               selector = undefined;
+                       }
+               }
+               if ( fn === false ) {
+                       fn = returnFalse;
+               } else if ( !fn ) {
+                       return this;
+               }
+
+               if ( one === 1 ) {
+                       origFn = fn;
+                       fn = function( event ) {
+                               // Can use an empty set, since event contains the info
+                               jQuery().off( event );
+                               return origFn.apply( this, arguments );
+                       };
+                       // Use same guid so caller can remove using origFn
+                       fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
+               }
+               return this.each( function() {
+                       jQuery.event.add( this, types, fn, data, selector );
+               });
+       },
+       one: function( types, selector, data, fn ) {
+               return this.on( types, selector, data, fn, 1 );
+       },
+       off: function( types, selector, fn ) {
+               var handleObj, type;
+               if ( types && types.preventDefault && types.handleObj ) {
+                       // ( event )  dispatched jQuery.Event
+                       handleObj = types.handleObj;
+                       jQuery( types.delegateTarget ).off(
+                               handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType,
+                               handleObj.selector,
+                               handleObj.handler
+                       );
+                       return this;
+               }
+               if ( typeof types === "object" ) {
+                       // ( types-object [, selector] )
+                       for ( type in types ) {
+                               this.off( type, selector, types[ type ] );
+                       }
+                       return this;
+               }
+               if ( selector === false || typeof selector === "function" ) {
+                       // ( types [, fn] )
+                       fn = selector;
+                       selector = undefined;
+               }
+               if ( fn === false ) {
+                       fn = returnFalse;
+               }
+               return this.each(function() {
+                       jQuery.event.remove( this, types, fn, selector );
+               });
+       },
+
+       trigger: function( type, data ) {
+               return this.each(function() {
+                       jQuery.event.trigger( type, data, this );
+               });
+       },
+       triggerHandler: function( type, data ) {
+               var elem = this[0];
+               if ( elem ) {
+                       return jQuery.event.trigger( type, data, elem, true );
+               }
+       }
+});
+
+
+var
+       rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
+       rtagName = /<([\w:]+)/,
+       rhtml = /<|&#?\w+;/,
+       rnoInnerhtml = /<(?:script|style|link)/i,
+       // checked="checked" or checked
+       rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
+       rscriptType = /^$|\/(?:java|ecma)script/i,
+       rscriptTypeMasked = /^true\/(.*)/,
+       rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
+
+       // We have to close these tags to support XHTML (#13200)
+       wrapMap = {
+
+               // Support: IE9
+               option: [ 1, "<select multiple='multiple'>", "</select>" ],
+
+               thead: [ 1, "<table>", "</table>" ],
+               col: [ 2, "<table><colgroup>", "</colgroup></table>" ],
+               tr: [ 2, "<table><tbody>", "</tbody></table>" ],
+               td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
+
+               _default: [ 0, "", "" ]
+       };
+
+// Support: IE9
+wrapMap.optgroup = wrapMap.option;
+
+wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+wrapMap.th = wrapMap.td;
+
+// Support: 1.x compatibility
+// Manipulating tables requires a tbody
+function manipulationTarget( elem, content ) {
+       return jQuery.nodeName( elem, "table" ) &&
+               jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ?
+
+               elem.getElementsByTagName("tbody")[0] ||
+                       elem.appendChild( elem.ownerDocument.createElement("tbody") ) :
+               elem;
+}
+
+// Replace/restore the type attribute of script elements for safe DOM manipulation
+function disableScript( elem ) {
+       elem.type = (elem.getAttribute("type") !== null) + "/" + elem.type;
+       return elem;
+}
+function restoreScript( elem ) {
+       var match = rscriptTypeMasked.exec( elem.type );
+
+       if ( match ) {
+               elem.type = match[ 1 ];
+       } else {
+               elem.removeAttribute("type");
+       }
+
+       return elem;
+}
+
+// Mark scripts as having already been evaluated
+function setGlobalEval( elems, refElements ) {
+       var i = 0,
+               l = elems.length;
+
+       for ( ; i < l; i++ ) {
+               data_priv.set(
+                       elems[ i ], "globalEval", !refElements || data_priv.get( refElements[ i ], "globalEval" )
+               );
+       }
+}
+
+function cloneCopyEvent( src, dest ) {
+       var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events;
+
+       if ( dest.nodeType !== 1 ) {
+               return;
+       }
+
+       // 1. Copy private data: events, handlers, etc.
+       if ( data_priv.hasData( src ) ) {
+               pdataOld = data_priv.access( src );
+               pdataCur = data_priv.set( dest, pdataOld );
+               events = pdataOld.events;
+
+               if ( events ) {
+                       delete pdataCur.handle;
+                       pdataCur.events = {};
+
+                       for ( type in events ) {
+                               for ( i = 0, l = events[ type ].length; i < l; i++ ) {
+                                       jQuery.event.add( dest, type, events[ type ][ i ] );
+                               }
+                       }
+               }
+       }
+
+       // 2. Copy user data
+       if ( data_user.hasData( src ) ) {
+               udataOld = data_user.access( src );
+               udataCur = jQuery.extend( {}, udataOld );
+
+               data_user.set( dest, udataCur );
+       }
+}
+
+function getAll( context, tag ) {
+       var ret = context.getElementsByTagName ? context.getElementsByTagName( tag || "*" ) :
+                       context.querySelectorAll ? context.querySelectorAll( tag || "*" ) :
+                       [];
+
+       return tag === undefined || tag && jQuery.nodeName( context, tag ) ?
+               jQuery.merge( [ context ], ret ) :
+               ret;
+}
+
+// Fix IE bugs, see support tests
+function fixInput( src, dest ) {
+       var nodeName = dest.nodeName.toLowerCase();
+
+       // Fails to persist the checked state of a cloned checkbox or radio button.
+       if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
+               dest.checked = src.checked;
+
+       // Fails to return the selected option to the default selected state when cloning options
+       } else if ( nodeName === "input" || nodeName === "textarea" ) {
+               dest.defaultValue = src.defaultValue;
+       }
+}
+
+jQuery.extend({
+       clone: function( elem, dataAndEvents, deepDataAndEvents ) {
+               var i, l, srcElements, destElements,
+                       clone = elem.cloneNode( true ),
+                       inPage = jQuery.contains( elem.ownerDocument, elem );
+
+               // Fix IE cloning issues
+               if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&
+                               !jQuery.isXMLDoc( elem ) ) {
+
+                       // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2
+                       destElements = getAll( clone );
+                       srcElements = getAll( elem );
+
+                       for ( i = 0, l = srcElements.length; i < l; i++ ) {
+                               fixInput( srcElements[ i ], destElements[ i ] );
+                       }
+               }
+
+               // Copy the events from the original to the clone
+               if ( dataAndEvents ) {
+                       if ( deepDataAndEvents ) {
+                               srcElements = srcElements || getAll( elem );
+                               destElements = destElements || getAll( clone );
+
+                               for ( i = 0, l = srcElements.length; i < l; i++ ) {
+                                       cloneCopyEvent( srcElements[ i ], destElements[ i ] );
+                               }
+                       } else {
+                               cloneCopyEvent( elem, clone );
+                       }
+               }
+
+               // Preserve script evaluation history
+               destElements = getAll( clone, "script" );
+               if ( destElements.length > 0 ) {
+                       setGlobalEval( destElements, !inPage && getAll( elem, "script" ) );
+               }
+
+               // Return the cloned set
+               return clone;
+       },
+
+       buildFragment: function( elems, context, scripts, selection ) {
+               var elem, tmp, tag, wrap, contains, j,
+                       fragment = context.createDocumentFragment(),
+                       nodes = [],
+                       i = 0,
+                       l = elems.length;
+
+               for ( ; i < l; i++ ) {
+                       elem = elems[ i ];
+
+                       if ( elem || elem === 0 ) {
+
+                               // Add nodes directly
+                               if ( jQuery.type( elem ) === "object" ) {
+                                       // Support: QtWebKit, PhantomJS
+                                       // push.apply(_, arraylike) throws on ancient WebKit
+                                       jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );
+
+                               // Convert non-html into a text node
+                               } else if ( !rhtml.test( elem ) ) {
+                                       nodes.push( context.createTextNode( elem ) );
+
+                               // Convert html into DOM nodes
+                               } else {
+                                       tmp = tmp || fragment.appendChild( context.createElement("div") );
+
+                                       // Deserialize a standard representation
+                                       tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase();
+                                       wrap = wrapMap[ tag ] || wrapMap._default;
+                                       tmp.innerHTML = wrap[ 1 ] + elem.replace( rxhtmlTag, "<$1></$2>" ) + wrap[ 2 ];
+
+                                       // Descend through wrappers to the right content
+                                       j = wrap[ 0 ];
+                                       while ( j-- ) {
+                                               tmp = tmp.lastChild;
+                                       }
+
+                                       // Support: QtWebKit, PhantomJS
+                                       // push.apply(_, arraylike) throws on ancient WebKit
+                                       jQuery.merge( nodes, tmp.childNodes );
+
+                                       // Remember the top-level container
+                                       tmp = fragment.firstChild;
+
+                                       // Ensure the created nodes are orphaned (#12392)
+                                       tmp.textContent = "";
+                               }
+                       }
+               }
+
+               // Remove wrapper from fragment
+               fragment.textContent = "";
+
+               i = 0;
+               while ( (elem = nodes[ i++ ]) ) {
+
+                       // #4087 - If origin and destination elements are the same, and this is
+                       // that element, do not do anything
+                       if ( selection && jQuery.inArray( elem, selection ) !== -1 ) {
+                               continue;
+                       }
+
+                       contains = jQuery.contains( elem.ownerDocument, elem );
+
+                       // Append to fragment
+                       tmp = getAll( fragment.appendChild( elem ), "script" );
+
+                       // Preserve script evaluation history
+                       if ( contains ) {
+                               setGlobalEval( tmp );
+                       }
+
+                       // Capture executables
+                       if ( scripts ) {
+                               j = 0;
+                               while ( (elem = tmp[ j++ ]) ) {
+                                       if ( rscriptType.test( elem.type || "" ) ) {
+                                               scripts.push( elem );
+                                       }
+                               }
+                       }
+               }
+
+               return fragment;
+       },
+
+       cleanData: function( elems ) {
+               var data, elem, type, key,
+                       special = jQuery.event.special,
+                       i = 0;
+
+               for ( ; (elem = elems[ i ]) !== undefined; i++ ) {
+                       if ( jQuery.acceptData( elem ) ) {
+                               key = elem[ data_priv.expando ];
+
+                               if ( key && (data = data_priv.cache[ key ]) ) {
+                                       if ( data.events ) {
+                                               for ( type in data.events ) {
+                                                       if ( special[ type ] ) {
+                                                               jQuery.event.remove( elem, type );
+
+                                                       // This is a shortcut to avoid jQuery.event.remove's overhead
+                                                       } else {
+                                                               jQuery.removeEvent( elem, type, data.handle );
+                                                       }
+                                               }
+                                       }
+                                       if ( data_priv.cache[ key ] ) {
+                                               // Discard any remaining `private` data
+                                               delete data_priv.cache[ key ];
+                                       }
+                               }
+                       }
+                       // Discard any remaining `user` data
+                       delete data_user.cache[ elem[ data_user.expando ] ];
+               }
+       }
+});
+
+jQuery.fn.extend({
+       text: function( value ) {
+               return access( this, function( value ) {
+                       return value === undefined ?
+                               jQuery.text( this ) :
+                               this.empty().each(function() {
+                                       if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+                                               this.textContent = value;
+                                       }
+                               });
+               }, null, value, arguments.length );
+       },
+
+       append: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+                               var target = manipulationTarget( this, elem );
+                               target.appendChild( elem );
+                       }
+               });
+       },
+
+       prepend: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+                               var target = manipulationTarget( this, elem );
+                               target.insertBefore( elem, target.firstChild );
+                       }
+               });
+       },
+
+       before: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.parentNode ) {
+                               this.parentNode.insertBefore( elem, this );
+                       }
+               });
+       },
+
+       after: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.parentNode ) {
+                               this.parentNode.insertBefore( elem, this.nextSibling );
+                       }
+               });
+       },
+
+       remove: function( selector, keepData /* Internal Use Only */ ) {
+               var elem,
+                       elems = selector ? jQuery.filter( selector, this ) : this,
+                       i = 0;
+
+               for ( ; (elem = elems[i]) != null; i++ ) {
+                       if ( !keepData && elem.nodeType === 1 ) {
+                               jQuery.cleanData( getAll( elem ) );
+                       }
+
+                       if ( elem.parentNode ) {
+                               if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) {
+                                       setGlobalEval( getAll( elem, "script" ) );
+                               }
+                               elem.parentNode.removeChild( elem );
+                       }
+               }
+
+               return this;
+       },
+
+       empty: function() {
+               var elem,
+                       i = 0;
+
+               for ( ; (elem = this[i]) != null; i++ ) {
+                       if ( elem.nodeType === 1 ) {
+
+                               // Prevent memory leaks
+                               jQuery.cleanData( getAll( elem, false ) );
+
+                               // Remove any remaining nodes
+                               elem.textContent = "";
+                       }
+               }
+
+               return this;
+       },
+
+       clone: function( dataAndEvents, deepDataAndEvents ) {
+               dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
+               deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
+
+               return this.map(function() {
+                       return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
+               });
+       },
+
+       html: function( value ) {
+               return access( this, function( value ) {
+                       var elem = this[ 0 ] || {},
+                               i = 0,
+                               l = this.length;
+
+                       if ( value === undefined && elem.nodeType === 1 ) {
+                               return elem.innerHTML;
+                       }
+
+                       // See if we can take a shortcut and just use innerHTML
+                       if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
+                               !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) {
+
+                               value = value.replace( rxhtmlTag, "<$1></$2>" );
+
+                               try {
+                                       for ( ; i < l; i++ ) {
+                                               elem = this[ i ] || {};
+
+                                               // Remove element nodes and prevent memory leaks
+                                               if ( elem.nodeType === 1 ) {
+                                                       jQuery.cleanData( getAll( elem, false ) );
+                                                       elem.innerHTML = value;
+                                               }
+                                       }
+
+                                       elem = 0;
+
+                               // If using innerHTML throws an exception, use the fallback method
+                               } catch( e ) {}
+                       }
+
+                       if ( elem ) {
+                               this.empty().append( value );
+                       }
+               }, null, value, arguments.length );
+       },
+
+       replaceWith: function() {
+               var arg = arguments[ 0 ];
+
+               // Make the changes, replacing each context element with the new content
+               this.domManip( arguments, function( elem ) {
+                       arg = this.parentNode;
+
+                       jQuery.cleanData( getAll( this ) );
+
+                       if ( arg ) {
+                               arg.replaceChild( elem, this );
+                       }
+               });
+
+               // Force removal if there was no new content (e.g., from empty arguments)
+               return arg && (arg.length || arg.nodeType) ? this : this.remove();
+       },
+
+       detach: function( selector ) {
+               return this.remove( selector, true );
+       },
+
+       domManip: function( args, callback ) {
+
+               // Flatten any nested arrays
+               args = concat.apply( [], args );
+
+               var fragment, first, scripts, hasScripts, node, doc,
+                       i = 0,
+                       l = this.length,
+                       set = this,
+                       iNoClone = l - 1,
+                       value = args[ 0 ],
+                       isFunction = jQuery.isFunction( value );
+
+               // We can't cloneNode fragments that contain checked, in WebKit
+               if ( isFunction ||
+                               ( l > 1 && typeof value === "string" &&
+                                       !support.checkClone && rchecked.test( value ) ) ) {
+                       return this.each(function( index ) {
+                               var self = set.eq( index );
+                               if ( isFunction ) {
+                                       args[ 0 ] = value.call( this, index, self.html() );
+                               }
+                               self.domManip( args, callback );
+                       });
+               }
+
+               if ( l ) {
+                       fragment = jQuery.buildFragment( args, this[ 0 ].ownerDocument, false, this );
+                       first = fragment.firstChild;
+
+                       if ( fragment.childNodes.length === 1 ) {
+                               fragment = first;
+                       }
+
+                       if ( first ) {
+                               scripts = jQuery.map( getAll( fragment, "script" ), disableScript );
+                               hasScripts = scripts.length;
+
+                               // Use the original fragment for the last item instead of the first because it can end up
+                               // being emptied incorrectly in certain situations (#8070).
+                               for ( ; i < l; i++ ) {
+                                       node = fragment;
+
+                                       if ( i !== iNoClone ) {
+                                               node = jQuery.clone( node, true, true );
+
+                                               // Keep references to cloned scripts for later restoration
+                                               if ( hasScripts ) {
+                                                       // Support: QtWebKit
+                                                       // jQuery.merge because push.apply(_, arraylike) throws
+                                                       jQuery.merge( scripts, getAll( node, "script" ) );
+                                               }
+                                       }
+
+                                       callback.call( this[ i ], node, i );
+                               }
+
+                               if ( hasScripts ) {
+                                       doc = scripts[ scripts.length - 1 ].ownerDocument;
+
+                                       // Reenable scripts
+                                       jQuery.map( scripts, restoreScript );
+
+                                       // Evaluate executable scripts on first document insertion
+                                       for ( i = 0; i < hasScripts; i++ ) {
+                                               node = scripts[ i ];
+                                               if ( rscriptType.test( node.type || "" ) &&
+                                                       !data_priv.access( node, "globalEval" ) && jQuery.contains( doc, node ) ) {
+
+                                                       if ( node.src ) {
+                                                               // Optional AJAX dependency, but won't run scripts if not present
+                                                               if ( jQuery._evalUrl ) {
+                                                                       jQuery._evalUrl( node.src );
+                                                               }
+                                                       } else {
+                                                               jQuery.globalEval( node.textContent.replace( rcleanScript, "" ) );
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       }
+});
+
+jQuery.each({
+       appendTo: "append",
+       prependTo: "prepend",
+       insertBefore: "before",
+       insertAfter: "after",
+       replaceAll: "replaceWith"
+}, function( name, original ) {
+       jQuery.fn[ name ] = function( selector ) {
+               var elems,
+                       ret = [],
+                       insert = jQuery( selector ),
+                       last = insert.length - 1,
+                       i = 0;
+
+               for ( ; i <= last; i++ ) {
+                       elems = i === last ? this : this.clone( true );
+                       jQuery( insert[ i ] )[ original ]( elems );
+
+                       // Support: QtWebKit
+                       // .get() because push.apply(_, arraylike) throws
+                       push.apply( ret, elems.get() );
+               }
+
+               return this.pushStack( ret );
+       };
+});
+
+
+var iframe,
+       elemdisplay = {};
+
+/**
+ * Retrieve the actual display of a element
+ * @param {String} name nodeName of the element
+ * @param {Object} doc Document object
+ */
+// Called only from within defaultDisplay
+function actualDisplay( name, doc ) {
+       var style,
+               elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ),
+
+               // getDefaultComputedStyle might be reliably used only on attached element
+               display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ?
+
+                       // Use of this method is a temporary fix (more like optimization) until something better comes along,
+                       // since it was removed from specification and supported only in FF
+                       style.display : jQuery.css( elem[ 0 ], "display" );
+
+       // We don't have any data stored on the element,
+       // so use "detach" method as fast way to get rid of the element
+       elem.detach();
+
+       return display;
+}
+
+/**
+ * Try to determine the default display value of an element
+ * @param {String} nodeName
+ */
+function defaultDisplay( nodeName ) {
+       var doc = document,
+               display = elemdisplay[ nodeName ];
+
+       if ( !display ) {
+               display = actualDisplay( nodeName, doc );
+
+               // If the simple way fails, read from inside an iframe
+               if ( display === "none" || !display ) {
+
+                       // Use the already-created iframe if possible
+                       iframe = (iframe || jQuery( "<iframe frameborder='0' width='0' height='0'/>" )).appendTo( doc.documentElement );
+
+                       // Always write a new HTML skeleton so Webkit and Firefox don't choke on reuse
+                       doc = iframe[ 0 ].contentDocument;
+
+                       // Support: IE
+                       doc.write();
+                       doc.close();
+
+                       display = actualDisplay( nodeName, doc );
+                       iframe.detach();
+               }
+
+               // Store the correct default display
+               elemdisplay[ nodeName ] = display;
+       }
+
+       return display;
+}
+var rmargin = (/^margin/);
+
+var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" );
+
+var getStyles = function( elem ) {
+               // Support: IE<=11+, Firefox<=30+ (#15098, #14150)
+               // IE throws on elements created in popups
+               // FF meanwhile throws on frame elements through "defaultView.getComputedStyle"
+               if ( elem.ownerDocument.defaultView.opener ) {
+                       return elem.ownerDocument.defaultView.getComputedStyle( elem, null );
+               }
+
+               return window.getComputedStyle( elem, null );
+       };
+
+
+
+function curCSS( elem, name, computed ) {
+       var width, minWidth, maxWidth, ret,
+               style = elem.style;
+
+       computed = computed || getStyles( elem );
+
+       // Support: IE9
+       // getPropertyValue is only needed for .css('filter') (#12537)
+       if ( computed ) {
+               ret = computed.getPropertyValue( name ) || computed[ name ];
+       }
+
+       if ( computed ) {
+
+               if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) {
+                       ret = jQuery.style( elem, name );
+               }
+
+               // Support: iOS < 6
+               // A tribute to the "awesome hack by Dean Edwards"
+               // iOS < 6 (at least) returns percentage for a larger set of values, but width seems to be reliably pixels
+               // this is against the CSSOM draft spec: http://dev.w3.org/csswg/cssom/#resolved-values
+               if ( rnumnonpx.test( ret ) && rmargin.test( name ) ) {
+
+                       // Remember the original values
+                       width = style.width;
+                       minWidth = style.minWidth;
+                       maxWidth = style.maxWidth;
+
+                       // Put in the new values to get a computed value out
+                       style.minWidth = style.maxWidth = style.width = ret;
+                       ret = computed.width;
+
+                       // Revert the changed values
+                       style.width = width;
+                       style.minWidth = minWidth;
+                       style.maxWidth = maxWidth;
+               }
+       }
+
+       return ret !== undefined ?
+               // Support: IE
+               // IE returns zIndex value as an integer.
+               ret + "" :
+               ret;
+}
+
+
+function addGetHookIf( conditionFn, hookFn ) {
+       // Define the hook, we'll check on the first run if it's really needed.
+       return {
+               get: function() {
+                       if ( conditionFn() ) {
+                               // Hook not needed (or it's not possible to use it due
+                               // to missing dependency), remove it.
+                               delete this.get;
+                               return;
+                       }
+
+                       // Hook needed; redefine it so that the support test is not executed again.
+                       return (this.get = hookFn).apply( this, arguments );
+               }
+       };
+}
+
+
+(function() {
+       var pixelPositionVal, boxSizingReliableVal,
+               docElem = document.documentElement,
+               container = document.createElement( "div" ),
+               div = document.createElement( "div" );
+
+       if ( !div.style ) {
+               return;
+       }
+
+       // Support: IE9-11+
+       // Style of cloned element affects source element cloned (#8908)
+       div.style.backgroundClip = "content-box";
+       div.cloneNode( true ).style.backgroundClip = "";
+       support.clearCloneStyle = div.style.backgroundClip === "content-box";
+
+       container.style.cssText = "border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;" +
+               "position:absolute";
+       container.appendChild( div );
+
+       // Executing both pixelPosition & boxSizingReliable tests require only one layout
+       // so they're executed at the same time to save the second computation.
+       function computePixelPositionAndBoxSizingReliable() {
+               div.style.cssText =
+                       // Support: Firefox<29, Android 2.3
+                       // Vendor-prefix box-sizing
+                       "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;" +
+                       "box-sizing:border-box;display:block;margin-top:1%;top:1%;" +
+                       "border:1px;padding:1px;width:4px;position:absolute";
+               div.innerHTML = "";
+               docElem.appendChild( container );
+
+               var divStyle = window.getComputedStyle( div, null );
+               pixelPositionVal = divStyle.top !== "1%";
+               boxSizingReliableVal = divStyle.width === "4px";
+
+               docElem.removeChild( container );
+       }
+
+       // Support: node.js jsdom
+       // Don't assume that getComputedStyle is a property of the global object
+       if ( window.getComputedStyle ) {
+               jQuery.extend( support, {
+                       pixelPosition: function() {
+
+                               // This test is executed only once but we still do memoizing
+                               // since we can use the boxSizingReliable pre-computing.
+                               // No need to check if the test was already performed, though.
+                               computePixelPositionAndBoxSizingReliable();
+                               return pixelPositionVal;
+                       },
+                       boxSizingReliable: function() {
+                               if ( boxSizingReliableVal == null ) {
+                                       computePixelPositionAndBoxSizingReliable();
+                               }
+                               return boxSizingReliableVal;
+                       },
+                       reliableMarginRight: function() {
+
+                               // Support: Android 2.3
+                               // Check if div with explicit width and no margin-right incorrectly
+                               // gets computed margin-right based on width of container. (#3333)
+                               // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
+                               // This support function is only executed once so no memoizing is needed.
+                               var ret,
+                                       marginDiv = div.appendChild( document.createElement( "div" ) );
+
+                               // Reset CSS: box-sizing; display; margin; border; padding
+                               marginDiv.style.cssText = div.style.cssText =
+                                       // Support: Firefox<29, Android 2.3
+                                       // Vendor-prefix box-sizing
+                                       "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" +
+                                       "box-sizing:content-box;display:block;margin:0;border:0;padding:0";
+                               marginDiv.style.marginRight = marginDiv.style.width = "0";
+                               div.style.width = "1px";
+                               docElem.appendChild( container );
+
+                               ret = !parseFloat( window.getComputedStyle( marginDiv, null ).marginRight );
+
+                               docElem.removeChild( container );
+                               div.removeChild( marginDiv );
+
+                               return ret;
+                       }
+               });
+       }
+})();
+
+
+// A method for quickly swapping in/out CSS properties to get correct calculations.
+jQuery.swap = function( elem, options, callback, args ) {
+       var ret, name,
+               old = {};
+
+       // Remember the old values, and insert the new ones
+       for ( name in options ) {
+               old[ name ] = elem.style[ name ];
+               elem.style[ name ] = options[ name ];
+       }
+
+       ret = callback.apply( elem, args || [] );
+
+       // Revert the old values
+       for ( name in options ) {
+               elem.style[ name ] = old[ name ];
+       }
+
+       return ret;
+};
+
+
+var
+       // Swappable if display is none or starts with table except "table", "table-cell", or "table-caption"
+       // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
+       rdisplayswap = /^(none|table(?!-c[ea]).+)/,
+       rnumsplit = new RegExp( "^(" + pnum + ")(.*)$", "i" ),
+       rrelNum = new RegExp( "^([+-])=(" + pnum + ")", "i" ),
+
+       cssShow = { position: "absolute", visibility: "hidden", display: "block" },
+       cssNormalTransform = {
+               letterSpacing: "0",
+               fontWeight: "400"
+       },
+
+       cssPrefixes = [ "Webkit", "O", "Moz", "ms" ];
+
+// Return a css property mapped to a potentially vendor prefixed property
+function vendorPropName( style, name ) {
+
+       // Shortcut for names that are not vendor prefixed
+       if ( name in style ) {
+               return name;
+       }
+
+       // Check for vendor prefixed names
+       var capName = name[0].toUpperCase() + name.slice(1),
+               origName = name,
+               i = cssPrefixes.length;
+
+       while ( i-- ) {
+               name = cssPrefixes[ i ] + capName;
+               if ( name in style ) {
+                       return name;
+               }
+       }
+
+       return origName;
+}
+
+function setPositiveNumber( elem, value, subtract ) {
+       var matches = rnumsplit.exec( value );
+       return matches ?
+               // Guard against undefined "subtract", e.g., when used as in cssHooks
+               Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || "px" ) :
+               value;
+}
+
+function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
+       var i = extra === ( isBorderBox ? "border" : "content" ) ?
+               // If we already have the right measurement, avoid augmentation
+               4 :
+               // Otherwise initialize for horizontal or vertical properties
+               name === "width" ? 1 : 0,
+
+               val = 0;
+
+       for ( ; i < 4; i += 2 ) {
+               // Both box models exclude margin, so add it if we want it
+               if ( extra === "margin" ) {
+                       val += jQuery.css( elem, extra + cssExpand[ i ], true, styles );
+               }
+
+               if ( isBorderBox ) {
+                       // border-box includes padding, so remove it if we want content
+                       if ( extra === "content" ) {
+                               val -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
+                       }
+
+                       // At this point, extra isn't border nor margin, so remove border
+                       if ( extra !== "margin" ) {
+                               val -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
+                       }
+               } else {
+                       // At this point, extra isn't content, so add padding
+                       val += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
+
+                       // At this point, extra isn't content nor padding, so add border
+                       if ( extra !== "padding" ) {
+                               val += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
+                       }
+               }
+       }
+
+       return val;
+}
+
+function getWidthOrHeight( elem, name, extra ) {
+
+       // Start with offset property, which is equivalent to the border-box value
+       var valueIsBorderBox = true,
+               val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
+               styles = getStyles( elem ),
+               isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
+
+       // Some non-html elements return undefined for offsetWidth, so check for null/undefined
+       // svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
+       // MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668
+       if ( val <= 0 || val == null ) {
+               // Fall back to computed then uncomputed css if necessary
+               val = curCSS( elem, name, styles );
+               if ( val < 0 || val == null ) {
+                       val = elem.style[ name ];
+               }
+
+               // Computed unit is not pixels. Stop here and return.
+               if ( rnumnonpx.test(val) ) {
+                       return val;
+               }
+
+               // Check for style in case a browser which returns unreliable values
+               // for getComputedStyle silently falls back to the reliable elem.style
+               valueIsBorderBox = isBorderBox &&
+                       ( support.boxSizingReliable() || val === elem.style[ name ] );
+
+               // Normalize "", auto, and prepare for extra
+               val = parseFloat( val ) || 0;
+       }
+
+       // Use the active box-sizing model to add/subtract irrelevant styles
+       return ( val +
+               augmentWidthOrHeight(
+                       elem,
+                       name,
+                       extra || ( isBorderBox ? "border" : "content" ),
+                       valueIsBorderBox,
+                       styles
+               )
+       ) + "px";
+}
+
+function showHide( elements, show ) {
+       var display, elem, hidden,
+               values = [],
+               index = 0,
+               length = elements.length;
+
+       for ( ; index < length; index++ ) {
+               elem = elements[ index ];
+               if ( !elem.style ) {
+                       continue;
+               }
+
+               values[ index ] = data_priv.get( elem, "olddisplay" );
+               display = elem.style.display;
+               if ( show ) {
+                       // Reset the inline display of this element to learn if it is
+                       // being hidden by cascaded rules or not
+                       if ( !values[ index ] && display === "none" ) {
+                               elem.style.display = "";
+                       }
+
+                       // Set elements which have been overridden with display: none
+                       // in a stylesheet to whatever the default browser style is
+                       // for such an element
+                       if ( elem.style.display === "" && isHidden( elem ) ) {
+                               values[ index ] = data_priv.access( elem, "olddisplay", defaultDisplay(elem.nodeName) );
+                       }
+               } else {
+                       hidden = isHidden( elem );
+
+                       if ( display !== "none" || !hidden ) {
+                               data_priv.set( elem, "olddisplay", hidden ? display : jQuery.css( elem, "display" ) );
+                       }
+               }
+       }
+
+       // Set the display of most of the elements in a second loop
+       // to avoid the constant reflow
+       for ( index = 0; index < length; index++ ) {
+               elem = elements[ index ];
+               if ( !elem.style ) {
+                       continue;
+               }
+               if ( !show || elem.style.display === "none" || elem.style.display === "" ) {
+                       elem.style.display = show ? values[ index ] || "" : "none";
+               }
+       }
+
+       return elements;
+}
+
+jQuery.extend({
+
+       // Add in style property hooks for overriding the default
+       // behavior of getting and setting a style property
+       cssHooks: {
+               opacity: {
+                       get: function( elem, computed ) {
+                               if ( computed ) {
+
+                                       // We should always get a number back from opacity
+                                       var ret = curCSS( elem, "opacity" );
+                                       return ret === "" ? "1" : ret;
+                               }
+                       }
+               }
+       },
+
+       // Don't automatically add "px" to these possibly-unitless properties
+       cssNumber: {
+               "columnCount": true,
+               "fillOpacity": true,
+               "flexGrow": true,
+               "flexShrink": true,
+               "fontWeight": true,
+               "lineHeight": true,
+               "opacity": true,
+               "order": true,
+               "orphans": true,
+               "widows": true,
+               "zIndex": true,
+               "zoom": true
+       },
+
+       // Add in properties whose names you wish to fix before
+       // setting or getting the value
+       cssProps: {
+               "float": "cssFloat"
+       },
+
+       // Get and set the style property on a DOM Node
+       style: function( elem, name, value, extra ) {
+
+               // Don't set styles on text and comment nodes
+               if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
+                       return;
+               }
+
+               // Make sure that we're working with the right name
+               var ret, type, hooks,
+                       origName = jQuery.camelCase( name ),
+                       style = elem.style;
+
+               name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( style, origName ) );
+
+               // Gets hook for the prefixed version, then unprefixed version
+               hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+               // Check if we're setting a value
+               if ( value !== undefined ) {
+                       type = typeof value;
+
+                       // Convert "+=" or "-=" to relative numbers (#7345)
+                       if ( type === "string" && (ret = rrelNum.exec( value )) ) {
+                               value = ( ret[1] + 1 ) * ret[2] + parseFloat( jQuery.css( elem, name ) );
+                               // Fixes bug #9237
+                               type = "number";
+                       }
+
+                       // Make sure that null and NaN values aren't set (#7116)
+                       if ( value == null || value !== value ) {
+                               return;
+                       }
+
+                       // If a number, add 'px' to the (except for certain CSS properties)
+                       if ( type === "number" && !jQuery.cssNumber[ origName ] ) {
+                               value += "px";
+                       }
+
+                       // Support: IE9-11+
+                       // background-* props affect original clone's values
+                       if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) {
+                               style[ name ] = "inherit";
+                       }
+
+                       // If a hook was provided, use that value, otherwise just set the specified value
+                       if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value, extra )) !== undefined ) {
+                               style[ name ] = value;
+                       }
+
+               } else {
+                       // If a hook was provided get the non-computed value from there
+                       if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {
+                               return ret;
+                       }
+
+                       // Otherwise just get the value from the style object
+                       return style[ name ];
+               }
+       },
+
+       css: function( elem, name, extra, styles ) {
+               var val, num, hooks,
+                       origName = jQuery.camelCase( name );
+
+               // Make sure that we're working with the right name
+               name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( elem.style, origName ) );
+
+               // Try prefixed name followed by the unprefixed name
+               hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+               // If a hook was provided get the computed value from there
+               if ( hooks && "get" in hooks ) {
+                       val = hooks.get( elem, true, extra );
+               }
+
+               // Otherwise, if a way to get the computed value exists, use that
+               if ( val === undefined ) {
+                       val = curCSS( elem, name, styles );
+               }
+
+               // Convert "normal" to computed value
+               if ( val === "normal" && name in cssNormalTransform ) {
+                       val = cssNormalTransform[ name ];
+               }
+
+               // Make numeric if forced or a qualifier was provided and val looks numeric
+               if ( extra === "" || extra ) {
+                       num = parseFloat( val );
+                       return extra === true || jQuery.isNumeric( num ) ? num || 0 : val;
+               }
+               return val;
+       }
+});
+
+jQuery.each([ "height", "width" ], function( i, name ) {
+       jQuery.cssHooks[ name ] = {
+               get: function( elem, computed, extra ) {
+                       if ( computed ) {
+
+                               // Certain elements can have dimension info if we invisibly show them
+                               // but it must have a current display style that would benefit
+                               return rdisplayswap.test( jQuery.css( elem, "display" ) ) && elem.offsetWidth === 0 ?
+                                       jQuery.swap( elem, cssShow, function() {
+                                               return getWidthOrHeight( elem, name, extra );
+                                       }) :
+                                       getWidthOrHeight( elem, name, extra );
+                       }
+               },
+
+               set: function( elem, value, extra ) {
+                       var styles = extra && getStyles( elem );
+                       return setPositiveNumber( elem, value, extra ?
+                               augmentWidthOrHeight(
+                                       elem,
+                                       name,
+                                       extra,
+                                       jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
+                                       styles
+                               ) : 0
+                       );
+               }
+       };
+});
+
+// Support: Android 2.3
+jQuery.cssHooks.marginRight = addGetHookIf( support.reliableMarginRight,
+       function( elem, computed ) {
+               if ( computed ) {
+                       return jQuery.swap( elem, { "display": "inline-block" },
+                               curCSS, [ elem, "marginRight" ] );
+               }
+       }
+);
+
+// These hooks are used by animate to expand properties
+jQuery.each({
+       margin: "",
+       padding: "",
+       border: "Width"
+}, function( prefix, suffix ) {
+       jQuery.cssHooks[ prefix + suffix ] = {
+               expand: function( value ) {
+                       var i = 0,
+                               expanded = {},
+
+                               // Assumes a single number if not a string
+                               parts = typeof value === "string" ? value.split(" ") : [ value ];
+
+                       for ( ; i < 4; i++ ) {
+                               expanded[ prefix + cssExpand[ i ] + suffix ] =
+                                       parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
+                       }
+
+                       return expanded;
+               }
+       };
+
+       if ( !rmargin.test( prefix ) ) {
+               jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
+       }
+});
+
+jQuery.fn.extend({
+       css: function( name, value ) {
+               return access( this, function( elem, name, value ) {
+                       var styles, len,
+                               map = {},
+                               i = 0;
+
+                       if ( jQuery.isArray( name ) ) {
+                               styles = getStyles( elem );
+                               len = name.length;
+
+                               for ( ; i < len; i++ ) {
+                                       map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );
+                               }
+
+                               return map;
+                       }
+
+                       return value !== undefined ?
+                               jQuery.style( elem, name, value ) :
+                               jQuery.css( elem, name );
+               }, name, value, arguments.length > 1 );
+       },
+       show: function() {
+               return showHide( this, true );
+       },
+       hide: function() {
+               return showHide( this );
+       },
+       toggle: function( state ) {
+               if ( typeof state === "boolean" ) {
+                       return state ? this.show() : this.hide();
+               }
+
+               return this.each(function() {
+                       if ( isHidden( this ) ) {
+                               jQuery( this ).show();
+                       } else {
+                               jQuery( this ).hide();
+                       }
+               });
+       }
+});
+
+
+function Tween( elem, options, prop, end, easing ) {
+       return new Tween.prototype.init( elem, options, prop, end, easing );
+}
+jQuery.Tween = Tween;
+
+Tween.prototype = {
+       constructor: Tween,
+       init: function( elem, options, prop, end, easing, unit ) {
+               this.elem = elem;
+               this.prop = prop;
+               this.easing = easing || "swing";
+               this.options = options;
+               this.start = this.now = this.cur();
+               this.end = end;
+               this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );
+       },
+       cur: function() {
+               var hooks = Tween.propHooks[ this.prop ];
+
+               return hooks && hooks.get ?
+                       hooks.get( this ) :
+                       Tween.propHooks._default.get( this );
+       },
+       run: function( percent ) {
+               var eased,
+                       hooks = Tween.propHooks[ this.prop ];
+
+               if ( this.options.duration ) {
+                       this.pos = eased = jQuery.easing[ this.easing ](
+                               percent, this.options.duration * percent, 0, 1, this.options.duration
+                       );
+               } else {
+                       this.pos = eased = percent;
+               }
+               this.now = ( this.end - this.start ) * eased + this.start;
+
+               if ( this.options.step ) {
+                       this.options.step.call( this.elem, this.now, this );
+               }
+
+               if ( hooks && hooks.set ) {
+                       hooks.set( this );
+               } else {
+                       Tween.propHooks._default.set( this );
+               }
+               return this;
+       }
+};
+
+Tween.prototype.init.prototype = Tween.prototype;
+
+Tween.propHooks = {
+       _default: {
+               get: function( tween ) {
+                       var result;
+
+                       if ( tween.elem[ tween.prop ] != null &&
+                               (!tween.elem.style || tween.elem.style[ tween.prop ] == null) ) {
+                               return tween.elem[ tween.prop ];
+                       }
+
+                       // Passing an empty string as a 3rd parameter to .css will automatically
+                       // attempt a parseFloat and fallback to a string if the parse fails.
+                       // Simple values such as "10px" are parsed to Float;
+                       // complex values such as "rotate(1rad)" are returned as-is.
+                       result = jQuery.css( tween.elem, tween.prop, "" );
+                       // Empty strings, null, undefined and "auto" are converted to 0.
+                       return !result || result === "auto" ? 0 : result;
+               },
+               set: function( tween ) {
+                       // Use step hook for back compat.
+                       // Use cssHook if its there.
+                       // Use .style if available and use plain properties where available.
+                       if ( jQuery.fx.step[ tween.prop ] ) {
+                               jQuery.fx.step[ tween.prop ]( tween );
+                       } else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || jQuery.cssHooks[ tween.prop ] ) ) {
+                               jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
+                       } else {
+                               tween.elem[ tween.prop ] = tween.now;
+                       }
+               }
+       }
+};
+
+// Support: IE9
+// Panic based approach to setting things on disconnected nodes
+Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
+       set: function( tween ) {
+               if ( tween.elem.nodeType && tween.elem.parentNode ) {
+                       tween.elem[ tween.prop ] = tween.now;
+               }
+       }
+};
+
+jQuery.easing = {
+       linear: function( p ) {
+               return p;
+       },
+       swing: function( p ) {
+               return 0.5 - Math.cos( p * Math.PI ) / 2;
+       }
+};
+
+jQuery.fx = Tween.prototype.init;
+
+// Back Compat <1.8 extension point
+jQuery.fx.step = {};
+
+
+
+
+var
+       fxNow, timerId,
+       rfxtypes = /^(?:toggle|show|hide)$/,
+       rfxnum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ),
+       rrun = /queueHooks$/,
+       animationPrefilters = [ defaultPrefilter ],
+       tweeners = {
+               "*": [ function( prop, value ) {
+                       var tween = this.createTween( prop, value ),
+                               target = tween.cur(),
+                               parts = rfxnum.exec( value ),
+                               unit = parts && parts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
+
+                               // Starting value computation is required for potential unit mismatches
+                               start = ( jQuery.cssNumber[ prop ] || unit !== "px" && +target ) &&
+                                       rfxnum.exec( jQuery.css( tween.elem, prop ) ),
+                               scale = 1,
+                               maxIterations = 20;
+
+                       if ( start && start[ 3 ] !== unit ) {
+                               // Trust units reported by jQuery.css
+                               unit = unit || start[ 3 ];
+
+                               // Make sure we update the tween properties later on
+                               parts = parts || [];
+
+                               // Iteratively approximate from a nonzero starting point
+                               start = +target || 1;
+
+                               do {
+                                       // If previous iteration zeroed out, double until we get *something*.
+                                       // Use string for doubling so we don't accidentally see scale as unchanged below
+                                       scale = scale || ".5";
+
+                                       // Adjust and apply
+                                       start = start / scale;
+                                       jQuery.style( tween.elem, prop, start + unit );
+
+                               // Update scale, tolerating zero or NaN from tween.cur(),
+                               // break the loop if scale is unchanged or perfect, or if we've just had enough
+                               } while ( scale !== (scale = tween.cur() / target) && scale !== 1 && --maxIterations );
+                       }
+
+                       // Update tween properties
+                       if ( parts ) {
+                               start = tween.start = +start || +target || 0;
+                               tween.unit = unit;
+                               // If a +=/-= token was provided, we're doing a relative animation
+                               tween.end = parts[ 1 ] ?
+                                       start + ( parts[ 1 ] + 1 ) * parts[ 2 ] :
+                                       +parts[ 2 ];
+                       }
+
+                       return tween;
+               } ]
+       };
+
+// Animations created synchronously will run synchronously
+function createFxNow() {
+       setTimeout(function() {
+               fxNow = undefined;
+       });
+       return ( fxNow = jQuery.now() );
+}
+
+// Generate parameters to create a standard animation
+function genFx( type, includeWidth ) {
+       var which,
+               i = 0,
+               attrs = { height: type };
+
+       // If we include width, step value is 1 to do all cssExpand values,
+       // otherwise step value is 2 to skip over Left and Right
+       includeWidth = includeWidth ? 1 : 0;
+       for ( ; i < 4 ; i += 2 - includeWidth ) {
+               which = cssExpand[ i ];
+               attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
+       }
+
+       if ( includeWidth ) {
+               attrs.opacity = attrs.width = type;
+       }
+
+       return attrs;
+}
+
+function createTween( value, prop, animation ) {
+       var tween,
+               collection = ( tweeners[ prop ] || [] ).concat( tweeners[ "*" ] ),
+               index = 0,
+               length = collection.length;
+       for ( ; index < length; index++ ) {
+               if ( (tween = collection[ index ].call( animation, prop, value )) ) {
+
+                       // We're done with this property
+                       return tween;
+               }
+       }
+}
+
+function defaultPrefilter( elem, props, opts ) {
+       /* jshint validthis: true */
+       var prop, value, toggle, tween, hooks, oldfire, display, checkDisplay,
+               anim = this,
+               orig = {},
+               style = elem.style,
+               hidden = elem.nodeType && isHidden( elem ),
+               dataShow = data_priv.get( elem, "fxshow" );
+
+       // Handle queue: false promises
+       if ( !opts.queue ) {
+               hooks = jQuery._queueHooks( elem, "fx" );
+               if ( hooks.unqueued == null ) {
+                       hooks.unqueued = 0;
+                       oldfire = hooks.empty.fire;
+                       hooks.empty.fire = function() {
+                               if ( !hooks.unqueued ) {
+                                       oldfire();
+                               }
+                       };
+               }
+               hooks.unqueued++;
+
+               anim.always(function() {
+                       // Ensure the complete handler is called before this completes
+                       anim.always(function() {
+                               hooks.unqueued--;
+                               if ( !jQuery.queue( elem, "fx" ).length ) {
+                                       hooks.empty.fire();
+                               }
+                       });
+               });
+       }
+
+       // Height/width overflow pass
+       if ( elem.nodeType === 1 && ( "height" in props || "width" in props ) ) {
+               // Make sure that nothing sneaks out
+               // Record all 3 overflow attributes because IE9-10 do not
+               // change the overflow attribute when overflowX and
+               // overflowY are set to the same value
+               opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];
+
+               // Set display property to inline-block for height/width
+               // animations on inline elements that are having width/height animated
+               display = jQuery.css( elem, "display" );
+
+               // Test default display if display is currently "none"
+               checkDisplay = display === "none" ?
+                       data_priv.get( elem, "olddisplay" ) || defaultDisplay( elem.nodeName ) : display;
+
+               if ( checkDisplay === "inline" && jQuery.css( elem, "float" ) === "none" ) {
+                       style.display = "inline-block";
+               }
+       }
+
+       if ( opts.overflow ) {
+               style.overflow = "hidden";
+               anim.always(function() {
+                       style.overflow = opts.overflow[ 0 ];
+                       style.overflowX = opts.overflow[ 1 ];
+                       style.overflowY = opts.overflow[ 2 ];
+               });
+       }
+
+       // show/hide pass
+       for ( prop in props ) {
+               value = props[ prop ];
+               if ( rfxtypes.exec( value ) ) {
+                       delete props[ prop ];
+                       toggle = toggle || value === "toggle";
+                       if ( value === ( hidden ? "hide" : "show" ) ) {
+
+                               // If there is dataShow left over from a stopped hide or show and we are going to proceed with show, we should pretend to be hidden
+                               if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) {
+                                       hidden = true;
+                               } else {
+                                       continue;
+                               }
+                       }
+                       orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
+
+               // Any non-fx value stops us from restoring the original display value
+               } else {
+                       display = undefined;
+               }
+       }
+
+       if ( !jQuery.isEmptyObject( orig ) ) {
+               if ( dataShow ) {
+                       if ( "hidden" in dataShow ) {
+                               hidden = dataShow.hidden;
+                       }
+               } else {
+                       dataShow = data_priv.access( elem, "fxshow", {} );
+               }
+
+               // Store state if its toggle - enables .stop().toggle() to "reverse"
+               if ( toggle ) {
+                       dataShow.hidden = !hidden;
+               }
+               if ( hidden ) {
+                       jQuery( elem ).show();
+               } else {
+                       anim.done(function() {
+                               jQuery( elem ).hide();
+                       });
+               }
+               anim.done(function() {
+                       var prop;
+
+                       data_priv.remove( elem, "fxshow" );
+                       for ( prop in orig ) {
+                               jQuery.style( elem, prop, orig[ prop ] );
+                       }
+               });
+               for ( prop in orig ) {
+                       tween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );
+
+                       if ( !( prop in dataShow ) ) {
+                               dataShow[ prop ] = tween.start;
+                               if ( hidden ) {
+                                       tween.end = tween.start;
+                                       tween.start = prop === "width" || prop === "height" ? 1 : 0;
+                               }
+                       }
+               }
+
+       // If this is a noop like .hide().hide(), restore an overwritten display value
+       } else if ( (display === "none" ? defaultDisplay( elem.nodeName ) : display) === "inline" ) {
+               style.display = display;
+       }
+}
+
+function propFilter( props, specialEasing ) {
+       var index, name, easing, value, hooks;
+
+       // camelCase, specialEasing and expand cssHook pass
+       for ( index in props ) {
+               name = jQuery.camelCase( index );
+               easing = specialEasing[ name ];
+               value = props[ index ];
+               if ( jQuery.isArray( value ) ) {
+                       easing = value[ 1 ];
+                       value = props[ index ] = value[ 0 ];
+               }
+
+               if ( index !== name ) {
+                       props[ name ] = value;
+                       delete props[ index ];
+               }
+
+               hooks = jQuery.cssHooks[ name ];
+               if ( hooks && "expand" in hooks ) {
+                       value = hooks.expand( value );
+                       delete props[ name ];
+
+                       // Not quite $.extend, this won't overwrite existing keys.
+                       // Reusing 'index' because we have the correct "name"
+                       for ( index in value ) {
+                               if ( !( index in props ) ) {
+                                       props[ index ] = value[ index ];
+                                       specialEasing[ index ] = easing;
+                               }
+                       }
+               } else {
+                       specialEasing[ name ] = easing;
+               }
+       }
+}
+
+function Animation( elem, properties, options ) {
+       var result,
+               stopped,
+               index = 0,
+               length = animationPrefilters.length,
+               deferred = jQuery.Deferred().always( function() {
+                       // Don't match elem in the :animated selector
+                       delete tick.elem;
+               }),
+               tick = function() {
+                       if ( stopped ) {
+                               return false;
+                       }
+                       var currentTime = fxNow || createFxNow(),
+                               remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),
+                               // Support: Android 2.3
+                               // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)
+                               temp = remaining / animation.duration || 0,
+                               percent = 1 - temp,
+                               index = 0,
+                               length = animation.tweens.length;
+
+                       for ( ; index < length ; index++ ) {
+                               animation.tweens[ index ].run( percent );
+                       }
+
+                       deferred.notifyWith( elem, [ animation, percent, remaining ]);
+
+                       if ( percent < 1 && length ) {
+                               return remaining;
+                       } else {
+                               deferred.resolveWith( elem, [ animation ] );
+                               return false;
+                       }
+               },
+               animation = deferred.promise({
+                       elem: elem,
+                       props: jQuery.extend( {}, properties ),
+                       opts: jQuery.extend( true, { specialEasing: {} }, options ),
+                       originalProperties: properties,
+                       originalOptions: options,
+                       startTime: fxNow || createFxNow(),
+                       duration: options.duration,
+                       tweens: [],
+                       createTween: function( prop, end ) {
+                               var tween = jQuery.Tween( elem, animation.opts, prop, end,
+                                               animation.opts.specialEasing[ prop ] || animation.opts.easing );
+                               animation.tweens.push( tween );
+                               return tween;
+                       },
+                       stop: function( gotoEnd ) {
+                               var index = 0,
+                                       // If we are going to the end, we want to run all the tweens
+                                       // otherwise we skip this part
+                                       length = gotoEnd ? animation.tweens.length : 0;
+                               if ( stopped ) {
+                                       return this;
+                               }
+                               stopped = true;
+                               for ( ; index < length ; index++ ) {
+                                       animation.tweens[ index ].run( 1 );
+                               }
+
+                               // Resolve when we played the last frame; otherwise, reject
+                               if ( gotoEnd ) {
+                                       deferred.resolveWith( elem, [ animation, gotoEnd ] );
+                               } else {
+                                       deferred.rejectWith( elem, [ animation, gotoEnd ] );
+                               }
+                               return this;
+                       }
+               }),
+               props = animation.props;
+
+       propFilter( props, animation.opts.specialEasing );
+
+       for ( ; index < length ; index++ ) {
+               result = animationPrefilters[ index ].call( animation, elem, props, animation.opts );
+               if ( result ) {
+                       return result;
+               }
+       }
+
+       jQuery.map( props, createTween, animation );
+
+       if ( jQuery.isFunction( animation.opts.start ) ) {
+               animation.opts.start.call( elem, animation );
+       }
+
+       jQuery.fx.timer(
+               jQuery.extend( tick, {
+                       elem: elem,
+                       anim: animation,
+                       queue: animation.opts.queue
+               })
+       );
+
+       // attach callbacks from options
+       return animation.progress( animation.opts.progress )
+               .done( animation.opts.done, animation.opts.complete )
+               .fail( animation.opts.fail )
+               .always( animation.opts.always );
+}
+
+jQuery.Animation = jQuery.extend( Animation, {
+
+       tweener: function( props, callback ) {
+               if ( jQuery.isFunction( props ) ) {
+                       callback = props;
+                       props = [ "*" ];
+               } else {
+                       props = props.split(" ");
+               }
+
+               var prop,
+                       index = 0,
+                       length = props.length;
+
+               for ( ; index < length ; index++ ) {
+                       prop = props[ index ];
+                       tweeners[ prop ] = tweeners[ prop ] || [];
+                       tweeners[ prop ].unshift( callback );
+               }
+       },
+
+       prefilter: function( callback, prepend ) {
+               if ( prepend ) {
+                       animationPrefilters.unshift( callback );
+               } else {
+                       animationPrefilters.push( callback );
+               }
+       }
+});
+
+jQuery.speed = function( speed, easing, fn ) {
+       var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
+               complete: fn || !fn && easing ||
+                       jQuery.isFunction( speed ) && speed,
+               duration: speed,
+               easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing
+       };
+
+       opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration :
+               opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default;
+
+       // Normalize opt.queue - true/undefined/null -> "fx"
+       if ( opt.queue == null || opt.queue === true ) {
+               opt.queue = "fx";
+       }
+
+       // Queueing
+       opt.old = opt.complete;
+
+       opt.complete = function() {
+               if ( jQuery.isFunction( opt.old ) ) {
+                       opt.old.call( this );
+               }
+
+               if ( opt.queue ) {
+                       jQuery.dequeue( this, opt.queue );
+               }
+       };
+
+       return opt;
+};
+
+jQuery.fn.extend({
+       fadeTo: function( speed, to, easing, callback ) {
+
+               // Show any hidden elements after setting opacity to 0
+               return this.filter( isHidden ).css( "opacity", 0 ).show()
+
+                       // Animate to the value specified
+                       .end().animate({ opacity: to }, speed, easing, callback );
+       },
+       animate: function( prop, speed, easing, callback ) {
+               var empty = jQuery.isEmptyObject( prop ),
+                       optall = jQuery.speed( speed, easing, callback ),
+                       doAnimation = function() {
+                               // Operate on a copy of prop so per-property easing won't be lost
+                               var anim = Animation( this, jQuery.extend( {}, prop ), optall );
+
+                               // Empty animations, or finishing resolves immediately
+                               if ( empty || data_priv.get( this, "finish" ) ) {
+                                       anim.stop( true );
+                               }
+                       };
+                       doAnimation.finish = doAnimation;
+
+               return empty || optall.queue === false ?
+                       this.each( doAnimation ) :
+                       this.queue( optall.queue, doAnimation );
+       },
+       stop: function( type, clearQueue, gotoEnd ) {
+               var stopQueue = function( hooks ) {
+                       var stop = hooks.stop;
+                       delete hooks.stop;
+                       stop( gotoEnd );
+               };
+
+               if ( typeof type !== "string" ) {
+                       gotoEnd = clearQueue;
+                       clearQueue = type;
+                       type = undefined;
+               }
+               if ( clearQueue && type !== false ) {
+                       this.queue( type || "fx", [] );
+               }
+
+               return this.each(function() {
+                       var dequeue = true,
+                               index = type != null && type + "queueHooks",
+                               timers = jQuery.timers,
+                               data = data_priv.get( this );
+
+                       if ( index ) {
+                               if ( data[ index ] && data[ index ].stop ) {
+                                       stopQueue( data[ index ] );
+                               }
+                       } else {
+                               for ( index in data ) {
+                                       if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
+                                               stopQueue( data[ index ] );
+                                       }
+                               }
+                       }
+
+                       for ( index = timers.length; index--; ) {
+                               if ( timers[ index ].elem === this && (type == null || timers[ index ].queue === type) ) {
+                                       timers[ index ].anim.stop( gotoEnd );
+                                       dequeue = false;
+                                       timers.splice( index, 1 );
+                               }
+                       }
+
+                       // Start the next in the queue if the last step wasn't forced.
+                       // Timers currently will call their complete callbacks, which
+                       // will dequeue but only if they were gotoEnd.
+                       if ( dequeue || !gotoEnd ) {
+                               jQuery.dequeue( this, type );
+                       }
+               });
+       },
+       finish: function( type ) {
+               if ( type !== false ) {
+                       type = type || "fx";
+               }
+               return this.each(function() {
+                       var index,
+                               data = data_priv.get( this ),
+                               queue = data[ type + "queue" ],
+                               hooks = data[ type + "queueHooks" ],
+                               timers = jQuery.timers,
+                               length = queue ? queue.length : 0;
+
+                       // Enable finishing flag on private data
+                       data.finish = true;
+
+                       // Empty the queue first
+                       jQuery.queue( this, type, [] );
+
+                       if ( hooks && hooks.stop ) {
+                               hooks.stop.call( this, true );
+                       }
+
+                       // Look for any active animations, and finish them
+                       for ( index = timers.length; index--; ) {
+                               if ( timers[ index ].elem === this && timers[ index ].queue === type ) {
+                                       timers[ index ].anim.stop( true );
+                                       timers.splice( index, 1 );
+                               }
+                       }
+
+                       // Look for any animations in the old queue and finish them
+                       for ( index = 0; index < length; index++ ) {
+                               if ( queue[ index ] && queue[ index ].finish ) {
+                                       queue[ index ].finish.call( this );
+                               }
+                       }
+
+                       // Turn off finishing flag
+                       delete data.finish;
+               });
+       }
+});
+
+jQuery.each([ "toggle", "show", "hide" ], function( i, name ) {
+       var cssFn = jQuery.fn[ name ];
+       jQuery.fn[ name ] = function( speed, easing, callback ) {
+               return speed == null || typeof speed === "boolean" ?
+                       cssFn.apply( this, arguments ) :
+                       this.animate( genFx( name, true ), speed, easing, callback );
+       };
+});
+
+// Generate shortcuts for custom animations
+jQuery.each({
+       slideDown: genFx("show"),
+       slideUp: genFx("hide"),
+       slideToggle: genFx("toggle"),
+       fadeIn: { opacity: "show" },
+       fadeOut: { opacity: "hide" },
+       fadeToggle: { opacity: "toggle" }
+}, function( name, props ) {
+       jQuery.fn[ name ] = function( speed, easing, callback ) {
+               return this.animate( props, speed, easing, callback );
+       };
+});
+
+jQuery.timers = [];
+jQuery.fx.tick = function() {
+       var timer,
+               i = 0,
+               timers = jQuery.timers;
+
+       fxNow = jQuery.now();
+
+       for ( ; i < timers.length; i++ ) {
+               timer = timers[ i ];
+               // Checks the timer has not already been removed
+               if ( !timer() && timers[ i ] === timer ) {
+                       timers.splice( i--, 1 );
+               }
+       }
+
+       if ( !timers.length ) {
+               jQuery.fx.stop();
+       }
+       fxNow = undefined;
+};
+
+jQuery.fx.timer = function( timer ) {
+       jQuery.timers.push( timer );
+       if ( timer() ) {
+               jQuery.fx.start();
+       } else {
+               jQuery.timers.pop();
+       }
+};
+
+jQuery.fx.interval = 13;
+
+jQuery.fx.start = function() {
+       if ( !timerId ) {
+               timerId = setInterval( jQuery.fx.tick, jQuery.fx.interval );
+       }
+};
+
+jQuery.fx.stop = function() {
+       clearInterval( timerId );
+       timerId = null;
+};
+
+jQuery.fx.speeds = {
+       slow: 600,
+       fast: 200,
+       // Default speed
+       _default: 400
+};
+
+
+// Based off of the plugin by Clint Helfers, with permission.
+// http://blindsignals.com/index.php/2009/07/jquery-delay/
+jQuery.fn.delay = function( time, type ) {
+       time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
+       type = type || "fx";
+
+       return this.queue( type, function( next, hooks ) {
+               var timeout = setTimeout( next, time );
+               hooks.stop = function() {
+                       clearTimeout( timeout );
+               };
+       });
+};
+
+
+(function() {
+       var input = document.createElement( "input" ),
+               select = document.createElement( "select" ),
+               opt = select.appendChild( document.createElement( "option" ) );
+
+       input.type = "checkbox";
+
+       // Support: iOS<=5.1, Android<=4.2+
+       // Default value for a checkbox should be "on"
+       support.checkOn = input.value !== "";
+
+       // Support: IE<=11+
+       // Must access selectedIndex to make default options select
+       support.optSelected = opt.selected;
+
+       // Support: Android<=2.3
+       // Options inside disabled selects are incorrectly marked as disabled
+       select.disabled = true;
+       support.optDisabled = !opt.disabled;
+
+       // Support: IE<=11+
+       // An input loses its value after becoming a radio
+       input = document.createElement( "input" );
+       input.value = "t";
+       input.type = "radio";
+       support.radioValue = input.value === "t";
+})();
+
+
+var nodeHook, boolHook,
+       attrHandle = jQuery.expr.attrHandle;
+
+jQuery.fn.extend({
+       attr: function( name, value ) {
+               return access( this, jQuery.attr, name, value, arguments.length > 1 );
+       },
+
+       removeAttr: function( name ) {
+               return this.each(function() {
+                       jQuery.removeAttr( this, name );
+               });
+       }
+});
+
+jQuery.extend({
+       attr: function( elem, name, value ) {
+               var hooks, ret,
+                       nType = elem.nodeType;
+
+               // don't get/set attributes on text, comment and attribute nodes
+               if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
+                       return;
+               }
+
+               // Fallback to prop when attributes are not supported
+               if ( typeof elem.getAttribute === strundefined ) {
+                       return jQuery.prop( elem, name, value );
+               }
+
+               // All attributes are lowercase
+               // Grab necessary hook if one is defined
+               if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
+                       name = name.toLowerCase();
+                       hooks = jQuery.attrHooks[ name ] ||
+                               ( jQuery.expr.match.bool.test( name ) ? boolHook : nodeHook );
+               }
+
+               if ( value !== undefined ) {
+
+                       if ( value === null ) {
+                               jQuery.removeAttr( elem, name );
+
+                       } else if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
+                               return ret;
+
+                       } else {
+                               elem.setAttribute( name, value + "" );
+                               return value;
+                       }
+
+               } else if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
+                       return ret;
+
+               } else {
+                       ret = jQuery.find.attr( elem, name );
+
+                       // Non-existent attributes return null, we normalize to undefined
+                       return ret == null ?
+                               undefined :
+                               ret;
+               }
+       },
+
+       removeAttr: function( elem, value ) {
+               var name, propName,
+                       i = 0,
+                       attrNames = value && value.match( rnotwhite );
+
+               if ( attrNames && elem.nodeType === 1 ) {
+                       while ( (name = attrNames[i++]) ) {
+                               propName = jQuery.propFix[ name ] || name;
+
+                               // Boolean attributes get special treatment (#10870)
+                               if ( jQuery.expr.match.bool.test( name ) ) {
+                                       // Set corresponding property to false
+                                       elem[ propName ] = false;
+                               }
+
+                               elem.removeAttribute( name );
+                       }
+               }
+       },
+
+       attrHooks: {
+               type: {
+                       set: function( elem, value ) {
+                               if ( !support.radioValue && value === "radio" &&
+                                       jQuery.nodeName( elem, "input" ) ) {
+                                       var val = elem.value;
+                                       elem.setAttribute( "type", value );
+                                       if ( val ) {
+                                               elem.value = val;
+                                       }
+                                       return value;
+                               }
+                       }
+               }
+       }
+});
+
+// Hooks for boolean attributes
+boolHook = {
+       set: function( elem, value, name ) {
+               if ( value === false ) {
+                       // Remove boolean attributes when set to false
+                       jQuery.removeAttr( elem, name );
+               } else {
+                       elem.setAttribute( name, name );
+               }
+               return name;
+       }
+};
+jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) {
+       var getter = attrHandle[ name ] || jQuery.find.attr;
+
+       attrHandle[ name ] = function( elem, name, isXML ) {
+               var ret, handle;
+               if ( !isXML ) {
+                       // Avoid an infinite loop by temporarily removing this function from the getter
+                       handle = attrHandle[ name ];
+                       attrHandle[ name ] = ret;
+                       ret = getter( elem, name, isXML ) != null ?
+                               name.toLowerCase() :
+                               null;
+                       attrHandle[ name ] = handle;
+               }
+               return ret;
+       };
+});
+
+
+
+
+var rfocusable = /^(?:input|select|textarea|button)$/i;
+
+jQuery.fn.extend({
+       prop: function( name, value ) {
+               return access( this, jQuery.prop, name, value, arguments.length > 1 );
+       },
+
+       removeProp: function( name ) {
+               return this.each(function() {
+                       delete this[ jQuery.propFix[ name ] || name ];
+               });
+       }
+});
+
+jQuery.extend({
+       propFix: {
+               "for": "htmlFor",
+               "class": "className"
+       },
+
+       prop: function( elem, name, value ) {
+               var ret, hooks, notxml,
+                       nType = elem.nodeType;
+
+               // Don't get/set properties on text, comment and attribute nodes
+               if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
+                       return;
+               }
+
+               notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
+
+               if ( notxml ) {
+                       // Fix name and attach hooks
+                       name = jQuery.propFix[ name ] || name;
+                       hooks = jQuery.propHooks[ name ];
+               }
+
+               if ( value !== undefined ) {
+                       return hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ?
+                               ret :
+                               ( elem[ name ] = value );
+
+               } else {
+                       return hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ?
+                               ret :
+                               elem[ name ];
+               }
+       },
+
+       propHooks: {
+               tabIndex: {
+                       get: function( elem ) {
+                               return elem.hasAttribute( "tabindex" ) || rfocusable.test( elem.nodeName ) || elem.href ?
+                                       elem.tabIndex :
+                                       -1;
+                       }
+               }
+       }
+});
+
+if ( !support.optSelected ) {
+       jQuery.propHooks.selected = {
+               get: function( elem ) {
+                       var parent = elem.parentNode;
+                       if ( parent && parent.parentNode ) {
+                               parent.parentNode.selectedIndex;
+                       }
+                       return null;
+               }
+       };
+}
+
+jQuery.each([
+       "tabIndex",
+       "readOnly",
+       "maxLength",
+       "cellSpacing",
+       "cellPadding",
+       "rowSpan",
+       "colSpan",
+       "useMap",
+       "frameBorder",
+       "contentEditable"
+], function() {
+       jQuery.propFix[ this.toLowerCase() ] = this;
+});
+
+
+
+
+var rclass = /[\t\r\n\f]/g;
+
+jQuery.fn.extend({
+       addClass: function( value ) {
+               var classes, elem, cur, clazz, j, finalValue,
+                       proceed = typeof value === "string" && value,
+                       i = 0,
+                       len = this.length;
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function( j ) {
+                               jQuery( this ).addClass( value.call( this, j, this.className ) );
+                       });
+               }
+
+               if ( proceed ) {
+                       // The disjunction here is for better compressibility (see removeClass)
+                       classes = ( value || "" ).match( rnotwhite ) || [];
+
+                       for ( ; i < len; i++ ) {
+                               elem = this[ i ];
+                               cur = elem.nodeType === 1 && ( elem.className ?
+                                       ( " " + elem.className + " " ).replace( rclass, " " ) :
+                                       " "
+                               );
+
+                               if ( cur ) {
+                                       j = 0;
+                                       while ( (clazz = classes[j++]) ) {
+                                               if ( cur.indexOf( " " + clazz + " " ) < 0 ) {
+                                                       cur += clazz + " ";
+                                               }
+                                       }
+
+                                       // only assign if different to avoid unneeded rendering.
+                                       finalValue = jQuery.trim( cur );
+                                       if ( elem.className !== finalValue ) {
+                                               elem.className = finalValue;
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       removeClass: function( value ) {
+               var classes, elem, cur, clazz, j, finalValue,
+                       proceed = arguments.length === 0 || typeof value === "string" && value,
+                       i = 0,
+                       len = this.length;
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function( j ) {
+                               jQuery( this ).removeClass( value.call( this, j, this.className ) );
+                       });
+               }
+               if ( proceed ) {
+                       classes = ( value || "" ).match( rnotwhite ) || [];
+
+                       for ( ; i < len; i++ ) {
+                               elem = this[ i ];
+                               // This expression is here for better compressibility (see addClass)
+                               cur = elem.nodeType === 1 && ( elem.className ?
+                                       ( " " + elem.className + " " ).replace( rclass, " " ) :
+                                       ""
+                               );
+
+                               if ( cur ) {
+                                       j = 0;
+                                       while ( (clazz = classes[j++]) ) {
+                                               // Remove *all* instances
+                                               while ( cur.indexOf( " " + clazz + " " ) >= 0 ) {
+                                                       cur = cur.replace( " " + clazz + " ", " " );
+                                               }
+                                       }
+
+                                       // Only assign if different to avoid unneeded rendering.
+                                       finalValue = value ? jQuery.trim( cur ) : "";
+                                       if ( elem.className !== finalValue ) {
+                                               elem.className = finalValue;
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       toggleClass: function( value, stateVal ) {
+               var type = typeof value;
+
+               if ( typeof stateVal === "boolean" && type === "string" ) {
+                       return stateVal ? this.addClass( value ) : this.removeClass( value );
+               }
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function( i ) {
+                               jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );
+                       });
+               }
+
+               return this.each(function() {
+                       if ( type === "string" ) {
+                               // Toggle individual class names
+                               var className,
+                                       i = 0,
+                                       self = jQuery( this ),
+                                       classNames = value.match( rnotwhite ) || [];
+
+                               while ( (className = classNames[ i++ ]) ) {
+                                       // Check each className given, space separated list
+                                       if ( self.hasClass( className ) ) {
+                                               self.removeClass( className );
+                                       } else {
+                                               self.addClass( className );
+                                       }
+                               }
+
+                       // Toggle whole class name
+                       } else if ( type === strundefined || type === "boolean" ) {
+                               if ( this.className ) {
+                                       // store className if set
+                                       data_priv.set( this, "__className__", this.className );
+                               }
+
+                               // If the element has a class name or if we're passed `false`,
+                               // then remove the whole classname (if there was one, the above saved it).
+                               // Otherwise bring back whatever was previously saved (if anything),
+                               // falling back to the empty string if nothing was stored.
+                               this.className = this.className || value === false ? "" : data_priv.get( this, "__className__" ) || "";
+                       }
+               });
+       },
+
+       hasClass: function( selector ) {
+               var className = " " + selector + " ",
+                       i = 0,
+                       l = this.length;
+               for ( ; i < l; i++ ) {
+                       if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
+                               return true;
+                       }
+               }
+
+               return false;
+       }
+});
+
+
+
+
+var rreturn = /\r/g;
+
+jQuery.fn.extend({
+       val: function( value ) {
+               var hooks, ret, isFunction,
+                       elem = this[0];
+
+               if ( !arguments.length ) {
+                       if ( elem ) {
+                               hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];
+
+                               if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) {
+                                       return ret;
+                               }
+
+                               ret = elem.value;
+
+                               return typeof ret === "string" ?
+                                       // Handle most common string cases
+                                       ret.replace(rreturn, "") :
+                                       // Handle cases where value is null/undef or number
+                                       ret == null ? "" : ret;
+                       }
+
+                       return;
+               }
+
+               isFunction = jQuery.isFunction( value );
+
+               return this.each(function( i ) {
+                       var val;
+
+                       if ( this.nodeType !== 1 ) {
+                               return;
+                       }
+
+                       if ( isFunction ) {
+                               val = value.call( this, i, jQuery( this ).val() );
+                       } else {
+                               val = value;
+                       }
+
+                       // Treat null/undefined as ""; convert numbers to string
+                       if ( val == null ) {
+                               val = "";
+
+                       } else if ( typeof val === "number" ) {
+                               val += "";
+
+                       } else if ( jQuery.isArray( val ) ) {
+                               val = jQuery.map( val, function( value ) {
+                                       return value == null ? "" : value + "";
+                               });
+                       }
+
+                       hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
+
+                       // If set returns undefined, fall back to normal setting
+                       if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) {
+                               this.value = val;
+                       }
+               });
+       }
+});
+
+jQuery.extend({
+       valHooks: {
+               option: {
+                       get: function( elem ) {
+                               var val = jQuery.find.attr( elem, "value" );
+                               return val != null ?
+                                       val :
+                                       // Support: IE10-11+
+                                       // option.text throws exceptions (#14686, #14858)
+                                       jQuery.trim( jQuery.text( elem ) );
+                       }
+               },
+               select: {
+                       get: function( elem ) {
+                               var value, option,
+                                       options = elem.options,
+                                       index = elem.selectedIndex,
+                                       one = elem.type === "select-one" || index < 0,
+                                       values = one ? null : [],
+                                       max = one ? index + 1 : options.length,
+                                       i = index < 0 ?
+                                               max :
+                                               one ? index : 0;
+
+                               // Loop through all the selected options
+                               for ( ; i < max; i++ ) {
+                                       option = options[ i ];
+
+                                       // IE6-9 doesn't update selected after form reset (#2551)
+                                       if ( ( option.selected || i === index ) &&
+                                                       // Don't return options that are disabled or in a disabled optgroup
+                                                       ( support.optDisabled ? !option.disabled : option.getAttribute( "disabled" ) === null ) &&
+                                                       ( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
+
+                                               // Get the specific value for the option
+                                               value = jQuery( option ).val();
+
+                                               // We don't need an array for one selects
+                                               if ( one ) {
+                                                       return value;
+                                               }
+
+                                               // Multi-Selects return an array
+                                               values.push( value );
+                                       }
+                               }
+
+                               return values;
+                       },
+
+                       set: function( elem, value ) {
+                               var optionSet, option,
+                                       options = elem.options,
+                                       values = jQuery.makeArray( value ),
+                                       i = options.length;
+
+                               while ( i-- ) {
+                                       option = options[ i ];
+                                       if ( (option.selected = jQuery.inArray( option.value, values ) >= 0) ) {
+                                               optionSet = true;
+                                       }
+                               }
+
+                               // Force browsers to behave consistently when non-matching value is set
+                               if ( !optionSet ) {
+                                       elem.selectedIndex = -1;
+                               }
+                               return values;
+                       }
+               }
+       }
+});
+
+// Radios and checkboxes getter/setter
+jQuery.each([ "radio", "checkbox" ], function() {
+       jQuery.valHooks[ this ] = {
+               set: function( elem, value ) {
+                       if ( jQuery.isArray( value ) ) {
+                               return ( elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0 );
+                       }
+               }
+       };
+       if ( !support.checkOn ) {
+               jQuery.valHooks[ this ].get = function( elem ) {
+                       return elem.getAttribute("value") === null ? "on" : elem.value;
+               };
+       }
+});
+
+
+
+
+// Return jQuery for attributes-only inclusion
+
+
+jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
+       "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
+       "change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) {
+
+       // Handle event binding
+       jQuery.fn[ name ] = function( data, fn ) {
+               return arguments.length > 0 ?
+                       this.on( name, null, data, fn ) :
+                       this.trigger( name );
+       };
+});
+
+jQuery.fn.extend({
+       hover: function( fnOver, fnOut ) {
+               return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
+       },
+
+       bind: function( types, data, fn ) {
+               return this.on( types, null, data, fn );
+       },
+       unbind: function( types, fn ) {
+               return this.off( types, null, fn );
+       },
+
+       delegate: function( selector, types, data, fn ) {
+               return this.on( types, selector, data, fn );
+       },
+       undelegate: function( selector, types, fn ) {
+               // ( namespace ) or ( selector, types [, fn] )
+               return arguments.length === 1 ? this.off( selector, "**" ) : this.off( types, selector || "**", fn );
+       }
+});
+
+
+var nonce = jQuery.now();
+
+var rquery = (/\?/);
+
+
+
+// Support: Android 2.3
+// Workaround failure to string-cast null input
+jQuery.parseJSON = function( data ) {
+       return JSON.parse( data + "" );
+};
+
+
+// Cross-browser xml parsing
+jQuery.parseXML = function( data ) {
+       var xml, tmp;
+       if ( !data || typeof data !== "string" ) {
+               return null;
+       }
+
+       // Support: IE9
+       try {
+               tmp = new DOMParser();
+               xml = tmp.parseFromString( data, "text/xml" );
+       } catch ( e ) {
+               xml = undefined;
+       }
+
+       if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) {
+               jQuery.error( "Invalid XML: " + data );
+       }
+       return xml;
+};
+
+
+var
+       rhash = /#.*$/,
+       rts = /([?&])_=[^&]*/,
+       rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,
+       // #7653, #8125, #8152: local protocol detection
+       rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
+       rnoContent = /^(?:GET|HEAD)$/,
+       rprotocol = /^\/\//,
+       rurl = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
+
+       /* Prefilters
+        * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
+        * 2) These are called:
+        *    - BEFORE asking for a transport
+        *    - AFTER param serialization (s.data is a string if s.processData is true)
+        * 3) key is the dataType
+        * 4) the catchall symbol "*" can be used
+        * 5) execution will start with transport dataType and THEN continue down to "*" if needed
+        */
+       prefilters = {},
+
+       /* Transports bindings
+        * 1) key is the dataType
+        * 2) the catchall symbol "*" can be used
+        * 3) selection will start with transport dataType and THEN go to "*" if needed
+        */
+       transports = {},
+
+       // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
+       allTypes = "*/".concat( "*" ),
+
+       // Document location
+       ajaxLocation = window.location.href,
+
+       // Segment location into parts
+       ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];
+
+// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
+function addToPrefiltersOrTransports( structure ) {
+
+       // dataTypeExpression is optional and defaults to "*"
+       return function( dataTypeExpression, func ) {
+
+               if ( typeof dataTypeExpression !== "string" ) {
+                       func = dataTypeExpression;
+                       dataTypeExpression = "*";
+               }
+
+               var dataType,
+                       i = 0,
+                       dataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || [];
+
+               if ( jQuery.isFunction( func ) ) {
+                       // For each dataType in the dataTypeExpression
+                       while ( (dataType = dataTypes[i++]) ) {
+                               // Prepend if requested
+                               if ( dataType[0] === "+" ) {
+                                       dataType = dataType.slice( 1 ) || "*";
+                                       (structure[ dataType ] = structure[ dataType ] || []).unshift( func );
+
+                               // Otherwise append
+                               } else {
+                                       (structure[ dataType ] = structure[ dataType ] || []).push( func );
+                               }
+                       }
+               }
+       };
+}
+
+// Base inspection function for prefilters and transports
+function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {
+
+       var inspected = {},
+               seekingTransport = ( structure === transports );
+
+       function inspect( dataType ) {
+               var selected;
+               inspected[ dataType ] = true;
+               jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
+                       var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
+                       if ( typeof dataTypeOrTransport === "string" && !seekingTransport && !inspected[ dataTypeOrTransport ] ) {
+                               options.dataTypes.unshift( dataTypeOrTransport );
+                               inspect( dataTypeOrTransport );
+                               return false;
+                       } else if ( seekingTransport ) {
+                               return !( selected = dataTypeOrTransport );
+                       }
+               });
+               return selected;
+       }
+
+       return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
+}
+
+// A special extend for ajax options
+// that takes "flat" options (not to be deep extended)
+// Fixes #9887
+function ajaxExtend( target, src ) {
+       var key, deep,
+               flatOptions = jQuery.ajaxSettings.flatOptions || {};
+
+       for ( key in src ) {
+               if ( src[ key ] !== undefined ) {
+                       ( flatOptions[ key ] ? target : ( deep || (deep = {}) ) )[ key ] = src[ key ];
+               }
+       }
+       if ( deep ) {
+               jQuery.extend( true, target, deep );
+       }
+
+       return target;
+}
+
+/* Handles responses to an ajax request:
+ * - finds the right dataType (mediates between content-type and expected dataType)
+ * - returns the corresponding response
+ */
+function ajaxHandleResponses( s, jqXHR, responses ) {
+
+       var ct, type, finalDataType, firstDataType,
+               contents = s.contents,
+               dataTypes = s.dataTypes;
+
+       // Remove auto dataType and get content-type in the process
+       while ( dataTypes[ 0 ] === "*" ) {
+               dataTypes.shift();
+               if ( ct === undefined ) {
+                       ct = s.mimeType || jqXHR.getResponseHeader("Content-Type");
+               }
+       }
+
+       // Check if we're dealing with a known content-type
+       if ( ct ) {
+               for ( type in contents ) {
+                       if ( contents[ type ] && contents[ type ].test( ct ) ) {
+                               dataTypes.unshift( type );
+                               break;
+                       }
+               }
+       }
+
+       // Check to see if we have a response for the expected dataType
+       if ( dataTypes[ 0 ] in responses ) {
+               finalDataType = dataTypes[ 0 ];
+       } else {
+               // Try convertible dataTypes
+               for ( type in responses ) {
+                       if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
+                               finalDataType = type;
+                               break;
+                       }
+                       if ( !firstDataType ) {
+                               firstDataType = type;
+                       }
+               }
+               // Or just use first one
+               finalDataType = finalDataType || firstDataType;
+       }
+
+       // If we found a dataType
+       // We add the dataType to the list if needed
+       // and return the corresponding response
+       if ( finalDataType ) {
+               if ( finalDataType !== dataTypes[ 0 ] ) {
+                       dataTypes.unshift( finalDataType );
+               }
+               return responses[ finalDataType ];
+       }
+}
+
+/* Chain conversions given the request and the original response
+ * Also sets the responseXXX fields on the jqXHR instance
+ */
+function ajaxConvert( s, response, jqXHR, isSuccess ) {
+       var conv2, current, conv, tmp, prev,
+               converters = {},
+               // Work with a copy of dataTypes in case we need to modify it for conversion
+               dataTypes = s.dataTypes.slice();
+
+       // Create converters map with lowercased keys
+       if ( dataTypes[ 1 ] ) {
+               for ( conv in s.converters ) {
+                       converters[ conv.toLowerCase() ] = s.converters[ conv ];
+               }
+       }
+
+       current = dataTypes.shift();
+
+       // Convert to each sequential dataType
+       while ( current ) {
+
+               if ( s.responseFields[ current ] ) {
+                       jqXHR[ s.responseFields[ current ] ] = response;
+               }
+
+               // Apply the dataFilter if provided
+               if ( !prev && isSuccess && s.dataFilter ) {
+                       response = s.dataFilter( response, s.dataType );
+               }
+
+               prev = current;
+               current = dataTypes.shift();
+
+               if ( current ) {
+
+               // There's only work to do if current dataType is non-auto
+                       if ( current === "*" ) {
+
+                               current = prev;
+
+                       // Convert response if prev dataType is non-auto and differs from current
+                       } else if ( prev !== "*" && prev !== current ) {
+
+                               // Seek a direct converter
+                               conv = converters[ prev + " " + current ] || converters[ "* " + current ];
+
+                               // If none found, seek a pair
+                               if ( !conv ) {
+                                       for ( conv2 in converters ) {
+
+                                               // If conv2 outputs current
+                                               tmp = conv2.split( " " );
+                                               if ( tmp[ 1 ] === current ) {
+
+                                                       // If prev can be converted to accepted input
+                                                       conv = converters[ prev + " " + tmp[ 0 ] ] ||
+                                                               converters[ "* " + tmp[ 0 ] ];
+                                                       if ( conv ) {
+                                                               // Condense equivalence converters
+                                                               if ( conv === true ) {
+                                                                       conv = converters[ conv2 ];
+
+                                                               // Otherwise, insert the intermediate dataType
+                                                               } else if ( converters[ conv2 ] !== true ) {
+                                                                       current = tmp[ 0 ];
+                                                                       dataTypes.unshift( tmp[ 1 ] );
+                                                               }
+                                                               break;
+                                                       }
+                                               }
+                                       }
+                               }
+
+                               // Apply converter (if not an equivalence)
+                               if ( conv !== true ) {
+
+                                       // Unless errors are allowed to bubble, catch and return them
+                                       if ( conv && s[ "throws" ] ) {
+                                               response = conv( response );
+                                       } else {
+                                               try {
+                                                       response = conv( response );
+                                               } catch ( e ) {
+                                                       return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current };
+                                               }
+                                       }
+                               }
+                       }
+               }
+       }
+
+       return { state: "success", data: response };
+}
+
+jQuery.extend({
+
+       // Counter for holding the number of active queries
+       active: 0,
+
+       // Last-Modified header cache for next request
+       lastModified: {},
+       etag: {},
+
+       ajaxSettings: {
+               url: ajaxLocation,
+               type: "GET",
+               isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
+               global: true,
+               processData: true,
+               async: true,
+               contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+               /*
+               timeout: 0,
+               data: null,
+               dataType: null,
+               username: null,
+               password: null,
+               cache: null,
+               throws: false,
+               traditional: false,
+               headers: {},
+               */
+
+               accepts: {
+                       "*": allTypes,
+                       text: "text/plain",
+                       html: "text/html",
+                       xml: "application/xml, text/xml",
+                       json: "application/json, text/javascript"
+               },
+
+               contents: {
+                       xml: /xml/,
+                       html: /html/,
+                       json: /json/
+               },
+
+               responseFields: {
+                       xml: "responseXML",
+                       text: "responseText",
+                       json: "responseJSON"
+               },
+
+               // Data converters
+               // Keys separate source (or catchall "*") and destination types with a single space
+               converters: {
+
+                       // Convert anything to text
+                       "* text": String,
+
+                       // Text to html (true = no transformation)
+                       "text html": true,
+
+                       // Evaluate text as a json expression
+                       "text json": jQuery.parseJSON,
+
+                       // Parse text as xml
+                       "text xml": jQuery.parseXML
+               },
+
+               // For options that shouldn't be deep extended:
+               // you can add your own custom options here if
+               // and when you create one that shouldn't be
+               // deep extended (see ajaxExtend)
+               flatOptions: {
+                       url: true,
+                       context: true
+               }
+       },
+
+       // Creates a full fledged settings object into target
+       // with both ajaxSettings and settings fields.
+       // If target is omitted, writes into ajaxSettings.
+       ajaxSetup: function( target, settings ) {
+               return settings ?
+
+                       // Building a settings object
+                       ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :
+
+                       // Extending ajaxSettings
+                       ajaxExtend( jQuery.ajaxSettings, target );
+       },
+
+       ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
+       ajaxTransport: addToPrefiltersOrTransports( transports ),
+
+       // Main method
+       ajax: function( url, options ) {
+
+               // If url is an object, simulate pre-1.5 signature
+               if ( typeof url === "object" ) {
+                       options = url;
+                       url = undefined;
+               }
+
+               // Force options to be an object
+               options = options || {};
+
+               var transport,
+                       // URL without anti-cache param
+                       cacheURL,
+                       // Response headers
+                       responseHeadersString,
+                       responseHeaders,
+                       // timeout handle
+                       timeoutTimer,
+                       // Cross-domain detection vars
+                       parts,
+                       // To know if global events are to be dispatched
+                       fireGlobals,
+                       // Loop variable
+                       i,
+                       // Create the final options object
+                       s = jQuery.ajaxSetup( {}, options ),
+                       // Callbacks context
+                       callbackContext = s.context || s,
+                       // Context for global events is callbackContext if it is a DOM node or jQuery collection
+                       globalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ?
+                               jQuery( callbackContext ) :
+                               jQuery.event,
+                       // Deferreds
+                       deferred = jQuery.Deferred(),
+                       completeDeferred = jQuery.Callbacks("once memory"),
+                       // Status-dependent callbacks
+                       statusCode = s.statusCode || {},
+                       // Headers (they are sent all at once)
+                       requestHeaders = {},
+                       requestHeadersNames = {},
+                       // The jqXHR state
+                       state = 0,
+                       // Default abort message
+                       strAbort = "canceled",
+                       // Fake xhr
+                       jqXHR = {
+                               readyState: 0,
+
+                               // Builds headers hashtable if needed
+                               getResponseHeader: function( key ) {
+                                       var match;
+                                       if ( state === 2 ) {
+                                               if ( !responseHeaders ) {
+                                                       responseHeaders = {};
+                                                       while ( (match = rheaders.exec( responseHeadersString )) ) {
+                                                               responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
+                                                       }
+                                               }
+                                               match = responseHeaders[ key.toLowerCase() ];
+                                       }
+                                       return match == null ? null : match;
+                               },
+
+                               // Raw string
+                               getAllResponseHeaders: function() {
+                                       return state === 2 ? responseHeadersString : null;
+                               },
+
+                               // Caches the header
+                               setRequestHeader: function( name, value ) {
+                                       var lname = name.toLowerCase();
+                                       if ( !state ) {
+                                               name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;
+                                               requestHeaders[ name ] = value;
+                                       }
+                                       return this;
+                               },
+
+                               // Overrides response content-type header
+                               overrideMimeType: function( type ) {
+                                       if ( !state ) {
+                                               s.mimeType = type;
+                                       }
+                                       return this;
+                               },
+
+                               // Status-dependent callbacks
+                               statusCode: function( map ) {
+                                       var code;
+                                       if ( map ) {
+                                               if ( state < 2 ) {
+                                                       for ( code in map ) {
+                                                               // Lazy-add the new callback in a way that preserves old ones
+                                                               statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
+                                                       }
+                                               } else {
+                                                       // Execute the appropriate callbacks
+                                                       jqXHR.always( map[ jqXHR.status ] );
+                                               }
+                                       }
+                                       return this;
+                               },
+
+                               // Cancel the request
+                               abort: function( statusText ) {
+                                       var finalText = statusText || strAbort;
+                                       if ( transport ) {
+                                               transport.abort( finalText );
+                                       }
+                                       done( 0, finalText );
+                                       return this;
+                               }
+                       };
+
+               // Attach deferreds
+               deferred.promise( jqXHR ).complete = completeDeferred.add;
+               jqXHR.success = jqXHR.done;
+               jqXHR.error = jqXHR.fail;
+
+               // Remove hash character (#7531: and string promotion)
+               // Add protocol if not provided (prefilters might expect it)
+               // Handle falsy url in the settings object (#10093: consistency with old signature)
+               // We also use the url parameter if available
+               s.url = ( ( url || s.url || ajaxLocation ) + "" ).replace( rhash, "" )
+                       .replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
+
+               // Alias method option to type as per ticket #12004
+               s.type = options.method || options.type || s.method || s.type;
+
+               // Extract dataTypes list
+               s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().match( rnotwhite ) || [ "" ];
+
+               // A cross-domain request is in order when we have a protocol:host:port mismatch
+               if ( s.crossDomain == null ) {
+                       parts = rurl.exec( s.url.toLowerCase() );
+                       s.crossDomain = !!( parts &&
+                               ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||
+                                       ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? "80" : "443" ) ) !==
+                                               ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? "80" : "443" ) ) )
+                       );
+               }
+
+               // Convert data if not already a string
+               if ( s.data && s.processData && typeof s.data !== "string" ) {
+                       s.data = jQuery.param( s.data, s.traditional );
+               }
+
+               // Apply prefilters
+               inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
+
+               // If request was aborted inside a prefilter, stop there
+               if ( state === 2 ) {
+                       return jqXHR;
+               }
+
+               // We can fire global events as of now if asked to
+               // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)
+               fireGlobals = jQuery.event && s.global;
+
+               // Watch for a new set of requests
+               if ( fireGlobals && jQuery.active++ === 0 ) {
+                       jQuery.event.trigger("ajaxStart");
+               }
+
+               // Uppercase the type
+               s.type = s.type.toUpperCase();
+
+               // Determine if request has content
+               s.hasContent = !rnoContent.test( s.type );
+
+               // Save the URL in case we're toying with the If-Modified-Since
+               // and/or If-None-Match header later on
+               cacheURL = s.url;
+
+               // More options handling for requests with no content
+               if ( !s.hasContent ) {
+
+                       // If data is available, append data to url
+                       if ( s.data ) {
+                               cacheURL = ( s.url += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data );
+                               // #9682: remove data so that it's not used in an eventual retry
+                               delete s.data;
+                       }
+
+                       // Add anti-cache in url if needed
+                       if ( s.cache === false ) {
+                               s.url = rts.test( cacheURL ) ?
+
+                                       // If there is already a '_' parameter, set its value
+                                       cacheURL.replace( rts, "$1_=" + nonce++ ) :
+
+                                       // Otherwise add one to the end
+                                       cacheURL + ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + nonce++;
+                       }
+               }
+
+               // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+               if ( s.ifModified ) {
+                       if ( jQuery.lastModified[ cacheURL ] ) {
+                               jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
+                       }
+                       if ( jQuery.etag[ cacheURL ] ) {
+                               jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
+                       }
+               }
+
+               // Set the correct header, if data is being sent
+               if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
+                       jqXHR.setRequestHeader( "Content-Type", s.contentType );
+               }
+
+               // Set the Accepts header for the server, depending on the dataType
+               jqXHR.setRequestHeader(
+                       "Accept",
+                       s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
+                               s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
+                               s.accepts[ "*" ]
+               );
+
+               // Check for headers option
+               for ( i in s.headers ) {
+                       jqXHR.setRequestHeader( i, s.headers[ i ] );
+               }
+
+               // Allow custom headers/mimetypes and early abort
+               if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
+                       // Abort if not done already and return
+                       return jqXHR.abort();
+               }
+
+               // Aborting is no longer a cancellation
+               strAbort = "abort";
+
+               // Install callbacks on deferreds
+               for ( i in { success: 1, error: 1, complete: 1 } ) {
+                       jqXHR[ i ]( s[ i ] );
+               }
+
+               // Get transport
+               transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
+
+               // If no transport, we auto-abort
+               if ( !transport ) {
+                       done( -1, "No Transport" );
+               } else {
+                       jqXHR.readyState = 1;
+
+                       // Send global event
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
+                       }
+                       // Timeout
+                       if ( s.async && s.timeout > 0 ) {
+                               timeoutTimer = setTimeout(function() {
+                                       jqXHR.abort("timeout");
+                               }, s.timeout );
+                       }
+
+                       try {
+                               state = 1;
+                               transport.send( requestHeaders, done );
+                       } catch ( e ) {
+                               // Propagate exception as error if not done
+                               if ( state < 2 ) {
+                                       done( -1, e );
+                               // Simply rethrow otherwise
+                               } else {
+                                       throw e;
+                               }
+                       }
+               }
+
+               // Callback for when everything is done
+               function done( status, nativeStatusText, responses, headers ) {
+                       var isSuccess, success, error, response, modified,
+                               statusText = nativeStatusText;
+
+                       // Called once
+                       if ( state === 2 ) {
+                               return;
+                       }
+
+                       // State is "done" now
+                       state = 2;
+
+                       // Clear timeout if it exists
+                       if ( timeoutTimer ) {
+                               clearTimeout( timeoutTimer );
+                       }
+
+                       // Dereference transport for early garbage collection
+                       // (no matter how long the jqXHR object will be used)
+                       transport = undefined;
+
+                       // Cache response headers
+                       responseHeadersString = headers || "";
+
+                       // Set readyState
+                       jqXHR.readyState = status > 0 ? 4 : 0;
+
+                       // Determine if successful
+                       isSuccess = status >= 200 && status < 300 || status === 304;
+
+                       // Get response data
+                       if ( responses ) {
+                               response = ajaxHandleResponses( s, jqXHR, responses );
+                       }
+
+                       // Convert no matter what (that way responseXXX fields are always set)
+                       response = ajaxConvert( s, response, jqXHR, isSuccess );
+
+                       // If successful, handle type chaining
+                       if ( isSuccess ) {
+
+                               // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+                               if ( s.ifModified ) {
+                                       modified = jqXHR.getResponseHeader("Last-Modified");
+                                       if ( modified ) {
+                                               jQuery.lastModified[ cacheURL ] = modified;
+                                       }
+                                       modified = jqXHR.getResponseHeader("etag");
+                                       if ( modified ) {
+                                               jQuery.etag[ cacheURL ] = modified;
+                                       }
+                               }
+
+                               // if no content
+                               if ( status === 204 || s.type === "HEAD" ) {
+                                       statusText = "nocontent";
+
+                               // if not modified
+                               } else if ( status === 304 ) {
+                                       statusText = "notmodified";
+
+                               // If we have data, let's convert it
+                               } else {
+                                       statusText = response.state;
+                                       success = response.data;
+                                       error = response.error;
+                                       isSuccess = !error;
+                               }
+                       } else {
+                               // Extract error from statusText and normalize for non-aborts
+                               error = statusText;
+                               if ( status || !statusText ) {
+                                       statusText = "error";
+                                       if ( status < 0 ) {
+                                               status = 0;
+                                       }
+                               }
+                       }
+
+                       // Set data for the fake xhr object
+                       jqXHR.status = status;
+                       jqXHR.statusText = ( nativeStatusText || statusText ) + "";
+
+                       // Success/Error
+                       if ( isSuccess ) {
+                               deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
+                       } else {
+                               deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
+                       }
+
+                       // Status-dependent callbacks
+                       jqXHR.statusCode( statusCode );
+                       statusCode = undefined;
+
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
+                                       [ jqXHR, s, isSuccess ? success : error ] );
+                       }
+
+                       // Complete
+                       completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
+
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
+                               // Handle the global AJAX counter
+                               if ( !( --jQuery.active ) ) {
+                                       jQuery.event.trigger("ajaxStop");
+                               }
+                       }
+               }
+
+               return jqXHR;
+       },
+
+       getJSON: function( url, data, callback ) {
+               return jQuery.get( url, data, callback, "json" );
+       },
+
+       getScript: function( url, callback ) {
+               return jQuery.get( url, undefined, callback, "script" );
+       }
+});
+
+jQuery.each( [ "get", "post" ], function( i, method ) {
+       jQuery[ method ] = function( url, data, callback, type ) {
+               // Shift arguments if data argument was omitted
+               if ( jQuery.isFunction( data ) ) {
+                       type = type || callback;
+                       callback = data;
+                       data = undefined;
+               }
+
+               return jQuery.ajax({
+                       url: url,
+                       type: method,
+                       dataType: type,
+                       data: data,
+                       success: callback
+               });
+       };
+});
+
+
+jQuery._evalUrl = function( url ) {
+       return jQuery.ajax({
+               url: url,
+               type: "GET",
+               dataType: "script",
+               async: false,
+               global: false,
+               "throws": true
+       });
+};
+
+
+jQuery.fn.extend({
+       wrapAll: function( html ) {
+               var wrap;
+
+               if ( jQuery.isFunction( html ) ) {
+                       return this.each(function( i ) {
+                               jQuery( this ).wrapAll( html.call(this, i) );
+                       });
+               }
+
+               if ( this[ 0 ] ) {
+
+                       // The elements to wrap the target around
+                       wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );
+
+                       if ( this[ 0 ].parentNode ) {
+                               wrap.insertBefore( this[ 0 ] );
+                       }
+
+                       wrap.map(function() {
+                               var elem = this;
+
+                               while ( elem.firstElementChild ) {
+                                       elem = elem.firstElementChild;
+                               }
+
+                               return elem;
+                       }).append( this );
+               }
+
+               return this;
+       },
+
+       wrapInner: function( html ) {
+               if ( jQuery.isFunction( html ) ) {
+                       return this.each(function( i ) {
+                               jQuery( this ).wrapInner( html.call(this, i) );
+                       });
+               }
+
+               return this.each(function() {
+                       var self = jQuery( this ),
+                               contents = self.contents();
+
+                       if ( contents.length ) {
+                               contents.wrapAll( html );
+
+                       } else {
+                               self.append( html );
+                       }
+               });
+       },
+
+       wrap: function( html ) {
+               var isFunction = jQuery.isFunction( html );
+
+               return this.each(function( i ) {
+                       jQuery( this ).wrapAll( isFunction ? html.call(this, i) : html );
+               });
+       },
+
+       unwrap: function() {
+               return this.parent().each(function() {
+                       if ( !jQuery.nodeName( this, "body" ) ) {
+                               jQuery( this ).replaceWith( this.childNodes );
+                       }
+               }).end();
+       }
+});
+
+
+jQuery.expr.filters.hidden = function( elem ) {
+       // Support: Opera <= 12.12
+       // Opera reports offsetWidths and offsetHeights less than zero on some elements
+       return elem.offsetWidth <= 0 && elem.offsetHeight <= 0;
+};
+jQuery.expr.filters.visible = function( elem ) {
+       return !jQuery.expr.filters.hidden( elem );
+};
+
+
+
+
+var r20 = /%20/g,
+       rbracket = /\[\]$/,
+       rCRLF = /\r?\n/g,
+       rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,
+       rsubmittable = /^(?:input|select|textarea|keygen)/i;
+
+function buildParams( prefix, obj, traditional, add ) {
+       var name;
+
+       if ( jQuery.isArray( obj ) ) {
+               // Serialize array item.
+               jQuery.each( obj, function( i, v ) {
+                       if ( traditional || rbracket.test( prefix ) ) {
+                               // Treat each array item as a scalar.
+                               add( prefix, v );
+
+                       } else {
+                               // Item is non-scalar (array or object), encode its numeric index.
+                               buildParams( prefix + "[" + ( typeof v === "object" ? i : "" ) + "]", v, traditional, add );
+                       }
+               });
+
+       } else if ( !traditional && jQuery.type( obj ) === "object" ) {
+               // Serialize object item.
+               for ( name in obj ) {
+                       buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
+               }
+
+       } else {
+               // Serialize scalar item.
+               add( prefix, obj );
+       }
+}
+
+// Serialize an array of form elements or a set of
+// key/values into a query string
+jQuery.param = function( a, traditional ) {
+       var prefix,
+               s = [],
+               add = function( key, value ) {
+                       // If value is a function, invoke it and return its value
+                       value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value );
+                       s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
+               };
+
+       // Set traditional to true for jQuery <= 1.3.2 behavior.
+       if ( traditional === undefined ) {
+               traditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;
+       }
+
+       // If an array was passed in, assume that it is an array of form elements.
+       if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
+               // Serialize the form elements
+               jQuery.each( a, function() {
+                       add( this.name, this.value );
+               });
+
+       } else {
+               // If traditional, encode the "old" way (the way 1.3.2 or older
+               // did it), otherwise encode params recursively.
+               for ( prefix in a ) {
+                       buildParams( prefix, a[ prefix ], traditional, add );
+               }
+       }
+
+       // Return the resulting serialization
+       return s.join( "&" ).replace( r20, "+" );
+};
+
+jQuery.fn.extend({
+       serialize: function() {
+               return jQuery.param( this.serializeArray() );
+       },
+       serializeArray: function() {
+               return this.map(function() {
+                       // Can add propHook for "elements" to filter or add form elements
+                       var elements = jQuery.prop( this, "elements" );
+                       return elements ? jQuery.makeArray( elements ) : this;
+               })
+               .filter(function() {
+                       var type = this.type;
+
+                       // Use .is( ":disabled" ) so that fieldset[disabled] works
+                       return this.name && !jQuery( this ).is( ":disabled" ) &&
+                               rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
+                               ( this.checked || !rcheckableType.test( type ) );
+               })
+               .map(function( i, elem ) {
+                       var val = jQuery( this ).val();
+
+                       return val == null ?
+                               null :
+                               jQuery.isArray( val ) ?
+                                       jQuery.map( val, function( val ) {
+                                               return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+                                       }) :
+                                       { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+               }).get();
+       }
+});
+
+
+jQuery.ajaxSettings.xhr = function() {
+       try {
+               return new XMLHttpRequest();
+       } catch( e ) {}
+};
+
+var xhrId = 0,
+       xhrCallbacks = {},
+       xhrSuccessStatus = {
+               // file protocol always yields status code 0, assume 200
+               0: 200,
+               // Support: IE9
+               // #1450: sometimes IE returns 1223 when it should be 204
+               1223: 204
+       },
+       xhrSupported = jQuery.ajaxSettings.xhr();
+
+// Support: IE9
+// Open requests must be manually aborted on unload (#5280)
+// See https://support.microsoft.com/kb/2856746 for more info
+if ( window.attachEvent ) {
+       window.attachEvent( "onunload", function() {
+               for ( var key in xhrCallbacks ) {
+                       xhrCallbacks[ key ]();
+               }
+       });
+}
+
+support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported );
+support.ajax = xhrSupported = !!xhrSupported;
+
+jQuery.ajaxTransport(function( options ) {
+       var callback;
+
+       // Cross domain only allowed if supported through XMLHttpRequest
+       if ( support.cors || xhrSupported && !options.crossDomain ) {
+               return {
+                       send: function( headers, complete ) {
+                               var i,
+                                       xhr = options.xhr(),
+                                       id = ++xhrId;
+
+                               xhr.open( options.type, options.url, options.async, options.username, options.password );
+
+                               // Apply custom fields if provided
+                               if ( options.xhrFields ) {
+                                       for ( i in options.xhrFields ) {
+                                               xhr[ i ] = options.xhrFields[ i ];
+                                       }
+                               }
+
+                               // Override mime type if needed
+                               if ( options.mimeType && xhr.overrideMimeType ) {
+                                       xhr.overrideMimeType( options.mimeType );
+                               }
+
+                               // X-Requested-With header
+                               // For cross-domain requests, seeing as conditions for a preflight are
+                               // akin to a jigsaw puzzle, we simply never set it to be sure.
+                               // (it can always be set on a per-request basis or even using ajaxSetup)
+                               // For same-domain requests, won't change header if already provided.
+                               if ( !options.crossDomain && !headers["X-Requested-With"] ) {
+                                       headers["X-Requested-With"] = "XMLHttpRequest";
+                               }
+
+                               // Set headers
+                               for ( i in headers ) {
+                                       xhr.setRequestHeader( i, headers[ i ] );
+                               }
+
+                               // Callback
+                               callback = function( type ) {
+                                       return function() {
+                                               if ( callback ) {
+                                                       delete xhrCallbacks[ id ];
+                                                       callback = xhr.onload = xhr.onerror = null;
+
+                                                       if ( type === "abort" ) {
+                                                               xhr.abort();
+                                                       } else if ( type === "error" ) {
+                                                               complete(
+                                                                       // file: protocol always yields status 0; see #8605, #14207
+                                                                       xhr.status,
+                                                                       xhr.statusText
+                                                               );
+                                                       } else {
+                                                               complete(
+                                                                       xhrSuccessStatus[ xhr.status ] || xhr.status,
+                                                                       xhr.statusText,
+                                                                       // Support: IE9
+                                                                       // Accessing binary-data responseText throws an exception
+                                                                       // (#11426)
+                                                                       typeof xhr.responseText === "string" ? {
+                                                                               text: xhr.responseText
+                                                                       } : undefined,
+                                                                       xhr.getAllResponseHeaders()
+                                                               );
+                                                       }
+                                               }
+                                       };
+                               };
+
+                               // Listen to events
+                               xhr.onload = callback();
+                               xhr.onerror = callback("error");
+
+                               // Create the abort callback
+                               callback = xhrCallbacks[ id ] = callback("abort");
+
+                               try {
+                                       // Do send the request (this may raise an exception)
+                                       xhr.send( options.hasContent && options.data || null );
+                               } catch ( e ) {
+                                       // #14683: Only rethrow if this hasn't been notified as an error yet
+                                       if ( callback ) {
+                                               throw e;
+                                       }
+                               }
+                       },
+
+                       abort: function() {
+                               if ( callback ) {
+                                       callback();
+                               }
+                       }
+               };
+       }
+});
+
+
+
+
+// Install script dataType
+jQuery.ajaxSetup({
+       accepts: {
+               script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
+       },
+       contents: {
+               script: /(?:java|ecma)script/
+       },
+       converters: {
+               "text script": function( text ) {
+                       jQuery.globalEval( text );
+                       return text;
+               }
+       }
+});
+
+// Handle cache's special case and crossDomain
+jQuery.ajaxPrefilter( "script", function( s ) {
+       if ( s.cache === undefined ) {
+               s.cache = false;
+       }
+       if ( s.crossDomain ) {
+               s.type = "GET";
+       }
+});
+
+// Bind script tag hack transport
+jQuery.ajaxTransport( "script", function( s ) {
+       // This transport only deals with cross domain requests
+       if ( s.crossDomain ) {
+               var script, callback;
+               return {
+                       send: function( _, complete ) {
+                               script = jQuery("<script>").prop({
+                                       async: true,
+                                       charset: s.scriptCharset,
+                                       src: s.url
+                               }).on(
+                                       "load error",
+                                       callback = function( evt ) {
+                                               script.remove();
+                                               callback = null;
+                                               if ( evt ) {
+                                                       complete( evt.type === "error" ? 404 : 200, evt.type );
+                                               }
+                                       }
+                               );
+                               document.head.appendChild( script[ 0 ] );
+                       },
+                       abort: function() {
+                               if ( callback ) {
+                                       callback();
+                               }
+                       }
+               };
+       }
+});
+
+
+
+
+var oldCallbacks = [],
+       rjsonp = /(=)\?(?=&|$)|\?\?/;
+
+// Default jsonp settings
+jQuery.ajaxSetup({
+       jsonp: "callback",
+       jsonpCallback: function() {
+               var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) );
+               this[ callback ] = true;
+               return callback;
+       }
+});
+
+// Detect, normalize options and install callbacks for jsonp requests
+jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
+
+       var callbackName, overwritten, responseContainer,
+               jsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?
+                       "url" :
+                       typeof s.data === "string" && !( s.contentType || "" ).indexOf("application/x-www-form-urlencoded") && rjsonp.test( s.data ) && "data"
+               );
+
+       // Handle iff the expected data type is "jsonp" or we have a parameter to set
+       if ( jsonProp || s.dataTypes[ 0 ] === "jsonp" ) {
+
+               // Get callback name, remembering preexisting value associated with it
+               callbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ?
+                       s.jsonpCallback() :
+                       s.jsonpCallback;
+
+               // Insert callback into url or form data
+               if ( jsonProp ) {
+                       s[ jsonProp ] = s[ jsonProp ].replace( rjsonp, "$1" + callbackName );
+               } else if ( s.jsonp !== false ) {
+                       s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName;
+               }
+
+               // Use data converter to retrieve json after script execution
+               s.converters["script json"] = function() {
+                       if ( !responseContainer ) {
+                               jQuery.error( callbackName + " was not called" );
+                       }
+                       return responseContainer[ 0 ];
+               };
+
+               // force json dataType
+               s.dataTypes[ 0 ] = "json";
+
+               // Install callback
+               overwritten = window[ callbackName ];
+               window[ callbackName ] = function() {
+                       responseContainer = arguments;
+               };
+
+               // Clean-up function (fires after converters)
+               jqXHR.always(function() {
+                       // Restore preexisting value
+                       window[ callbackName ] = overwritten;
+
+                       // Save back as free
+                       if ( s[ callbackName ] ) {
+                               // make sure that re-using the options doesn't screw things around
+                               s.jsonpCallback = originalSettings.jsonpCallback;
+
+                               // save the callback name for future use
+                               oldCallbacks.push( callbackName );
+                       }
+
+                       // Call if it was a function and we have a response
+                       if ( responseContainer && jQuery.isFunction( overwritten ) ) {
+                               overwritten( responseContainer[ 0 ] );
+                       }
+
+                       responseContainer = overwritten = undefined;
+               });
+
+               // Delegate to script
+               return "script";
+       }
+});
+
+
+
+
+// data: string of html
+// context (optional): If specified, the fragment will be created in this context, defaults to document
+// keepScripts (optional): If true, will include scripts passed in the html string
+jQuery.parseHTML = function( data, context, keepScripts ) {
+       if ( !data || typeof data !== "string" ) {
+               return null;
+       }
+       if ( typeof context === "boolean" ) {
+               keepScripts = context;
+               context = false;
+       }
+       context = context || document;
+
+       var parsed = rsingleTag.exec( data ),
+               scripts = !keepScripts && [];
+
+       // Single tag
+       if ( parsed ) {
+               return [ context.createElement( parsed[1] ) ];
+       }
+
+       parsed = jQuery.buildFragment( [ data ], context, scripts );
+
+       if ( scripts && scripts.length ) {
+               jQuery( scripts ).remove();
+       }
+
+       return jQuery.merge( [], parsed.childNodes );
+};
+
+
+// Keep a copy of the old load method
+var _load = jQuery.fn.load;
+
+/**
+ * Load a url into a page
+ */
+jQuery.fn.load = function( url, params, callback ) {
+       if ( typeof url !== "string" && _load ) {
+               return _load.apply( this, arguments );
+       }
+
+       var selector, type, response,
+               self = this,
+               off = url.indexOf(" ");
+
+       if ( off >= 0 ) {
+               selector = jQuery.trim( url.slice( off ) );
+               url = url.slice( 0, off );
+       }
+
+       // If it's a function
+       if ( jQuery.isFunction( params ) ) {
+
+               // We assume that it's the callback
+               callback = params;
+               params = undefined;
+
+       // Otherwise, build a param string
+       } else if ( params && typeof params === "object" ) {
+               type = "POST";
+       }
+
+       // If we have elements to modify, make the request
+       if ( self.length > 0 ) {
+               jQuery.ajax({
+                       url: url,
+
+                       // if "type" variable is undefined, then "GET" method will be used
+                       type: type,
+                       dataType: "html",
+                       data: params
+               }).done(function( responseText ) {
+
+                       // Save response for use in complete callback
+                       response = arguments;
+
+                       self.html( selector ?
+
+                               // If a selector was specified, locate the right elements in a dummy div
+                               // Exclude scripts to avoid IE 'Permission Denied' errors
+                               jQuery("<div>").append( jQuery.parseHTML( responseText ) ).find( selector ) :
+
+                               // Otherwise use the full result
+                               responseText );
+
+               }).complete( callback && function( jqXHR, status ) {
+                       self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] );
+               });
+       }
+
+       return this;
+};
+
+
+
+
+// Attach a bunch of functions for handling common AJAX events
+jQuery.each( [ "ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend" ], function( i, type ) {
+       jQuery.fn[ type ] = function( fn ) {
+               return this.on( type, fn );
+       };
+});
+
+
+
+
+jQuery.expr.filters.animated = function( elem ) {
+       return jQuery.grep(jQuery.timers, function( fn ) {
+               return elem === fn.elem;
+       }).length;
+};
+
+
+
+
+var docElem = window.document.documentElement;
+
+/**
+ * Gets a window from an element
+ */
+function getWindow( elem ) {
+       return jQuery.isWindow( elem ) ? elem : elem.nodeType === 9 && elem.defaultView;
+}
+
+jQuery.offset = {
+       setOffset: function( elem, options, i ) {
+               var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
+                       position = jQuery.css( elem, "position" ),
+                       curElem = jQuery( elem ),
+                       props = {};
+
+               // Set position first, in-case top/left are set even on static elem
+               if ( position === "static" ) {
+                       elem.style.position = "relative";
+               }
+
+               curOffset = curElem.offset();
+               curCSSTop = jQuery.css( elem, "top" );
+               curCSSLeft = jQuery.css( elem, "left" );
+               calculatePosition = ( position === "absolute" || position === "fixed" ) &&
+                       ( curCSSTop + curCSSLeft ).indexOf("auto") > -1;
+
+               // Need to be able to calculate position if either
+               // top or left is auto and position is either absolute or fixed
+               if ( calculatePosition ) {
+                       curPosition = curElem.position();
+                       curTop = curPosition.top;
+                       curLeft = curPosition.left;
+
+               } else {
+                       curTop = parseFloat( curCSSTop ) || 0;
+                       curLeft = parseFloat( curCSSLeft ) || 0;
+               }
+
+               if ( jQuery.isFunction( options ) ) {
+                       options = options.call( elem, i, curOffset );
+               }
+
+               if ( options.top != null ) {
+                       props.top = ( options.top - curOffset.top ) + curTop;
+               }
+               if ( options.left != null ) {
+                       props.left = ( options.left - curOffset.left ) + curLeft;
+               }
+
+               if ( "using" in options ) {
+                       options.using.call( elem, props );
+
+               } else {
+                       curElem.css( props );
+               }
+       }
+};
+
+jQuery.fn.extend({
+       offset: function( options ) {
+               if ( arguments.length ) {
+                       return options === undefined ?
+                               this :
+                               this.each(function( i ) {
+                                       jQuery.offset.setOffset( this, options, i );
+                               });
+               }
+
+               var docElem, win,
+                       elem = this[ 0 ],
+                       box = { top: 0, left: 0 },
+                       doc = elem && elem.ownerDocument;
+
+               if ( !doc ) {
+                       return;
+               }
+
+               docElem = doc.documentElement;
+
+               // Make sure it's not a disconnected DOM node
+               if ( !jQuery.contains( docElem, elem ) ) {
+                       return box;
+               }
+
+               // Support: BlackBerry 5, iOS 3 (original iPhone)
+               // If we don't have gBCR, just use 0,0 rather than error
+               if ( typeof elem.getBoundingClientRect !== strundefined ) {
+                       box = elem.getBoundingClientRect();
+               }
+               win = getWindow( doc );
+               return {
+                       top: box.top + win.pageYOffset - docElem.clientTop,
+                       left: box.left + win.pageXOffset - docElem.clientLeft
+               };
+       },
+
+       position: function() {
+               if ( !this[ 0 ] ) {
+                       return;
+               }
+
+               var offsetParent, offset,
+                       elem = this[ 0 ],
+                       parentOffset = { top: 0, left: 0 };
+
+               // Fixed elements are offset from window (parentOffset = {top:0, left: 0}, because it is its only offset parent
+               if ( jQuery.css( elem, "position" ) === "fixed" ) {
+                       // Assume getBoundingClientRect is there when computed position is fixed
+                       offset = elem.getBoundingClientRect();
+
+               } else {
+                       // Get *real* offsetParent
+                       offsetParent = this.offsetParent();
+
+                       // Get correct offsets
+                       offset = this.offset();
+                       if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) {
+                               parentOffset = offsetParent.offset();
+                       }
+
+                       // Add offsetParent borders
+                       parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true );
+                       parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true );
+               }
+
+               // Subtract parent offsets and element margins
+               return {
+                       top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
+                       left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true )
+               };
+       },
+
+       offsetParent: function() {
+               return this.map(function() {
+                       var offsetParent = this.offsetParent || docElem;
+
+                       while ( offsetParent && ( !jQuery.nodeName( offsetParent, "html" ) && jQuery.css( offsetParent, "position" ) === "static" ) ) {
+                               offsetParent = offsetParent.offsetParent;
+                       }
+
+                       return offsetParent || docElem;
+               });
+       }
+});
+
+// Create scrollLeft and scrollTop methods
+jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
+       var top = "pageYOffset" === prop;
+
+       jQuery.fn[ method ] = function( val ) {
+               return access( this, function( elem, method, val ) {
+                       var win = getWindow( elem );
+
+                       if ( val === undefined ) {
+                               return win ? win[ prop ] : elem[ method ];
+                       }
+
+                       if ( win ) {
+                               win.scrollTo(
+                                       !top ? val : window.pageXOffset,
+                                       top ? val : window.pageYOffset
+                               );
+
+                       } else {
+                               elem[ method ] = val;
+                       }
+               }, method, val, arguments.length, null );
+       };
+});
+
+// Support: Safari<7+, Chrome<37+
+// Add the top/left cssHooks using jQuery.fn.position
+// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
+// Blink bug: https://code.google.com/p/chromium/issues/detail?id=229280
+// getComputedStyle returns percent when specified for top/left/bottom/right;
+// rather than make the css module depend on the offset module, just check for it here
+jQuery.each( [ "top", "left" ], function( i, prop ) {
+       jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
+               function( elem, computed ) {
+                       if ( computed ) {
+                               computed = curCSS( elem, prop );
+                               // If curCSS returns percentage, fallback to offset
+                               return rnumnonpx.test( computed ) ?
+                                       jQuery( elem ).position()[ prop ] + "px" :
+                                       computed;
+                       }
+               }
+       );
+});
+
+
+// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
+jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
+       jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, function( defaultExtra, funcName ) {
+               // Margin is only for outerHeight, outerWidth
+               jQuery.fn[ funcName ] = function( margin, value ) {
+                       var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
+                               extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );
+
+                       return access( this, function( elem, type, value ) {
+                               var doc;
+
+                               if ( jQuery.isWindow( elem ) ) {
+                                       // As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there
+                                       // isn't a whole lot we can do. See pull request at this URL for discussion:
+                                       // https://github.com/jquery/jquery/pull/764
+                                       return elem.document.documentElement[ "client" + name ];
+                               }
+
+                               // Get document width or height
+                               if ( elem.nodeType === 9 ) {
+                                       doc = elem.documentElement;
+
+                                       // Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],
+                                       // whichever is greatest
+                                       return Math.max(
+                                               elem.body[ "scroll" + name ], doc[ "scroll" + name ],
+                                               elem.body[ "offset" + name ], doc[ "offset" + name ],
+                                               doc[ "client" + name ]
+                                       );
+                               }
+
+                               return value === undefined ?
+                                       // Get width or height on the element, requesting but not forcing parseFloat
+                                       jQuery.css( elem, type, extra ) :
+
+                                       // Set width or height on the element
+                                       jQuery.style( elem, type, value, extra );
+                       }, type, chainable ? margin : undefined, chainable, null );
+               };
+       });
+});
+
+
+// The number of elements contained in the matched element set
+jQuery.fn.size = function() {
+       return this.length;
+};
+
+jQuery.fn.andSelf = jQuery.fn.addBack;
+
+
+
+
+// Register as a named AMD module, since jQuery can be concatenated with other
+// files that may use define, but not via a proper concatenation script that
+// understands anonymous AMD modules. A named AMD is safest and most robust
+// way to register. Lowercase jquery is used because AMD module names are
+// derived from file names, and jQuery is normally delivered in a lowercase
+// file name. Do this after creating the global so that if an AMD module wants
+// to call noConflict to hide this version of jQuery, it will work.
+
+// Note that for maximum portability, libraries that are not jQuery should
+// declare themselves as anonymous modules, and avoid setting a global if an
+// AMD loader is present. jQuery is a special case. For more information, see
+// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon
+
+if ( typeof define === "function" && define.amd ) {
+       define( "jquery", [], function() {
+               return jQuery;
+       });
+}
+
+
+
+
+var
+       // Map over jQuery in case of overwrite
+       _jQuery = window.jQuery,
+
+       // Map over the $ in case of overwrite
+       _$ = window.$;
+
+jQuery.noConflict = function( deep ) {
+       if ( window.$ === jQuery ) {
+               window.$ = _$;
+       }
+
+       if ( deep && window.jQuery === jQuery ) {
+               window.jQuery = _jQuery;
+       }
+
+       return jQuery;
+};
+
+// Expose jQuery and $ identifiers, even in AMD
+// (#7102#comment:10, https://github.com/jquery/jquery/pull/557)
+// and CommonJS for browser emulators (#13566)
+if ( typeof noGlobal === strundefined ) {
+       window.jQuery = window.$ = jQuery;
+}
+
+
+
+
+return jQuery;
+
+}));
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.min.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.min.js
new file mode 100644 (file)
index 0000000..fad9ab1
--- /dev/null
@@ -0,0 +1,5 @@
+/*! jQuery v2.1.4 | (c) 2005, 2015 jQuery Foundation, Inc. | jquery.org/license */
+!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l=a.document,m="2.1.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!n.isArray(a)&&a-parseFloat(a)+1>=0},isPlainObject:function(a){return"object"!==n.type(a)||a.nodeType||n.isWindow(a)?!1:a.constructor&&!j.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=l.createElement("script"),b.text=a,l.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:g.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(e=d.call(arguments,2),f=function(){return a.apply(b||this,e.concat(d.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:k}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b="length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,aa=/[+~]/,ba=/'|\\/g,ca=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),da=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ea=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fa){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(ba,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+ra(o[l]);w=aa.test(a)&&pa(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",ea,!1):e.attachEvent&&e.attachEvent("onunload",ea)),p=!f(g),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?la(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ca,da),a[3]=(a[3]||a[4]||a[5]||"").replace(ca,da),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ca,da).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(ca,da),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return W.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(ca,da).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:oa(function(){return[0]}),last:oa(function(a,b){return[b-1]}),eq:oa(function(a,b,c){return[0>c?c+b:c]}),even:oa(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:oa(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:oa(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:oa(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=ma(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=na(b);function qa(){}qa.prototype=d.filters=d.pseudos,d.setFilters=new qa,g=ga.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?ga.error(a):z(a,i).slice(0)};function ra(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sa(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function ta(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ua(a,b,c){for(var d=0,e=b.length;e>d;d++)ga(a,b[d],c);return c}function va(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wa(a,b,c,d,e,f){return d&&!d[u]&&(d=wa(d)),e&&!e[u]&&(e=wa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ua(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:va(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=va(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=va(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sa(function(a){return a===b},h,!0),l=sa(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sa(ta(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wa(i>1&&ta(m),i>1&&ra(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xa(a.slice(i,e)),f>e&&xa(a=a.slice(e)),f>e&&ra(a))}m.push(c)}return ta(m)}function ya(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=va(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&ga.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,ya(e,d)),f.selector=a}return f},i=ga.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ca,da),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ca,da),aa.test(j[0].type)&&pa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&ra(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,aa.test(a)&&pa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ja(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:l,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=l.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=l,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};A.prototype=n.fn,y=n(l);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?g.call(n(a),this[0]):g.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(C[a]||n.unique(e),B.test(a)&&e.reverse()),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(b=a.memory&&l,c=!0,g=e||0,e=0,f=h.length,d=!0;h&&f>g;g++)if(h[g].apply(l[0],l[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,h&&(i?i.length&&j(i.shift()):b?h=[]:k.disable())},k={add:function(){if(h){var c=h.length;!function g(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&g(c)})}(arguments),d?f=h.length:b&&(e=c,j(b))}return this},remove:function(){return h&&n.each(arguments,function(a,b){var c;while((c=n.inArray(b,h,c))>-1)h.splice(c,1),d&&(f>=c&&f--,g>=c&&g--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],f=0,this},disable:function(){return h=i=b=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,b||k.disable(),this},locked:function(){return!i},fireWith:function(a,b){return!h||c&&!i||(b=b||[],b=[a,b.slice?b.slice():b],d?i.push(b):j(b)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!c}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(H.resolveWith(l,[n]),n.fn.triggerHandler&&(n(l).triggerHandler("ready"),n(l).off("ready"))))}});function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}n.ready.promise=function(b){return H||(H=n.Deferred(),"complete"===l.readyState?setTimeout(n.ready):(l.addEventListener("DOMContentLoaded",I,!1),a.addEventListener("load",I,!1))),H.promise(b)},n.ready.promise();var J=n.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)n.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};n.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+K.uid++}K.uid=1,K.accepts=n.acceptData,K.prototype={key:function(a){if(!K.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=K.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,n.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(n.isEmptyObject(f))n.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(E)||[])),c=d.length;while(c--)delete g[d[c]]}},hasData:function(a){return!n.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var L=new K,M=new K,N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}M.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return M.hasData(a)||L.hasData(a)},data:function(a,b,c){
+return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b)},_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=M.get(f),1===f.nodeType&&!L.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));L.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){M.set(this,a)}):J(this,function(b){var c,d=n.camelCase(a);if(f&&void 0===b){if(c=M.get(f,a),void 0!==c)return c;if(c=M.get(f,d),void 0!==c)return c;if(c=P(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=M.get(this,d);M.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&M.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){M.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=L.get(a,b),c&&(!d||n.isArray(c)?d=L.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return L.get(a,c)||L.access(a,c,{empty:n.Callbacks("once memory").add(function(){L.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?n.queue(this[0],a):void 0===b?this:this.each(function(){var c=n.queue(this,a,b);n._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&n.dequeue(this,a)})},dequeue:function(a){return this.each(function(){n.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=n.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=L.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var Q=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,R=["Top","Right","Bottom","Left"],S=function(a,b){return a=b||a,"none"===n.css(a,"display")||!n.contains(a.ownerDocument,a)},T=/^(?:checkbox|radio)$/i;!function(){var a=l.createDocumentFragment(),b=a.appendChild(l.createElement("div")),c=l.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var U="undefined";k.focusinBubbles="onfocusin"in a;var V=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,X=/^(?:focusinfocus|focusoutblur)$/,Y=/^([^.]*)(?:\.(.+)|)$/;function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return typeof n!==U&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(E)||[""],j=b.length;while(j--)h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.hasData(a)&&L.get(a);if(r&&(i=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&(delete r.handle,L.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,m,o,p=[d||l],q=j.call(b,"type")?b.type:b,r=j.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||l,3!==d.nodeType&&8!==d.nodeType&&!X.test(q+n.event.triggered)&&(q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),k=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=r.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},e||!o.trigger||o.trigger.apply(d,c)!==!1)){if(!e&&!o.noBubble&&!n.isWindow(d)){for(i=o.delegateType||q,X.test(i+q)||(g=g.parentNode);g;g=g.parentNode)p.push(g),h=g;h===(d.ownerDocument||l)&&p.push(h.defaultView||h.parentWindow||a)}f=0;while((g=p[f++])&&!b.isPropagationStopped())b.type=f>1?i:o.bindType||q,m=(L.get(g,"events")||{})[b.type]&&L.get(g,"handle"),m&&m.apply(g,c),m=k&&g[k],m&&m.apply&&n.acceptData(g)&&(b.result=m.apply(g,c),b.result===!1&&b.preventDefault());return b.type=q,e||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!n.acceptData(d)||k&&n.isFunction(d[q])&&!n.isWindow(d)&&(h=d[k],h&&(d[k]=null),n.event.triggered=q,d[q](),n.event.triggered=void 0,h&&(d[k]=h)),b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(L.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(g.namespace))&&(a.handleObj=g,a.data=g.data,e=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(a.result=e)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>=0:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button;return null==a.pageX&&null!=b.clientX&&(c=a.target.ownerDocument||l,d=c.documentElement,e=c.body,a.pageX=b.clientX+(d&&d.scrollLeft||e&&e.scrollLeft||0)-(d&&d.clientLeft||e&&e.clientLeft||0),a.pageY=b.clientY+(d&&d.scrollTop||e&&e.scrollTop||0)-(d&&d.clientTop||e&&e.clientTop||0)),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},fix:function(a){if(a[n.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];g||(this.fixHooks[e]=g=W.test(e)?this.mouseHooks:V.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new n.Event(f),b=d.length;while(b--)c=d[b],a[c]=f[c];return a.target||(a.target=l),3===a.target.nodeType&&(a.target=a.target.parentNode),g.filter?g.filter(a,f):a},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==_()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===_()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&n.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(a){return n.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=n.extend(new n.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?n.event.trigger(e,null,b):n.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},n.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)},n.Event=function(a,b){return this instanceof n.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?Z:$):this.type=a,b&&n.extend(this,b),this.timeStamp=a&&a.timeStamp||n.now(),void(this[n.expando]=!0)):new n.Event(a,b)},n.Event.prototype={isDefaultPrevented:$,isPropagationStopped:$,isImmediatePropagationStopped:$,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=Z,a&&a.preventDefault&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=Z,a&&a.stopPropagation&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=Z,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},n.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){n.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!n.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.focusinBubbles||n.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){n.event.simulate(b,a.target,n.event.fix(a),!0)};n.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=L.access(d,b);e||d.addEventListener(a,c,!0),L.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=L.access(d,b)-1;e?L.access(d,b,e):(d.removeEventListener(a,c,!0),L.remove(d,b))}}}),n.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(g in a)this.on(g,b,c,a[g],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=$;else if(!d)return this;return 1===e&&(f=d,d=function(a){return n().off(a),f.apply(this,arguments)},d.guid=f.guid||(f.guid=n.guid++)),this.each(function(){n.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,n(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=$),this.each(function(){n.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){n.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?n.event.trigger(a,b,c,!0):void 0}});var aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,ba=/<([\w:]+)/,ca=/<|&#?\w+;/,da=/<(?:script|style|link)/i,ea=/checked\s*(?:[^=]|=\s*.checked.)/i,fa=/^$|\/(?:java|ecma)script/i,ga=/^true\/(.*)/,ha=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,ia={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ia.optgroup=ia.option,ia.tbody=ia.tfoot=ia.colgroup=ia.caption=ia.thead,ia.th=ia.td;function ja(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function ka(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function la(a){var b=ga.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function ma(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function na(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function oa(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pa(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}n.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=oa(h),f=oa(a),d=0,e=f.length;e>d;d++)pa(f[d],g[d]);if(b)if(c)for(f=f||oa(a),g=g||oa(h),d=0,e=f.length;e>d;d++)na(f[d],g[d]);else na(a,h);return g=oa(h,"script"),g.length>0&&ma(g,!i&&oa(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,o=a.length;o>m;m++)if(e=a[m],e||0===e)if("object"===n.type(e))n.merge(l,e.nodeType?[e]:e);else if(ca.test(e)){f=f||k.appendChild(b.createElement("div")),g=(ba.exec(e)||["",""])[1].toLowerCase(),h=ia[g]||ia._default,f.innerHTML=h[1]+e.replace(aa,"<$1></$2>")+h[2],j=h[0];while(j--)f=f.lastChild;n.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));k.textContent="",m=0;while(e=l[m++])if((!d||-1===n.inArray(e,d))&&(i=n.contains(e.ownerDocument,e),f=oa(k.appendChild(e),"script"),i&&ma(f),c)){j=0;while(e=f[j++])fa.test(e.type||"")&&c.push(e)}return k},cleanData:function(a){for(var b,c,d,e,f=n.event.special,g=0;void 0!==(c=a[g]);g++){if(n.acceptData(c)&&(e=c[L.expando],e&&(b=L.cache[e]))){if(b.events)for(d in b.events)f[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);L.cache[e]&&delete L.cache[e]}delete M.cache[c[M.expando]]}}}),n.fn.extend({text:function(a){return J(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(oa(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&ma(oa(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(oa(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return J(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!da.test(a)&&!ia[(ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(aa,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(oa(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(oa(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,m=this,o=l-1,p=a[0],q=n.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&ea.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(c=n.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(f=n.map(oa(c,"script"),ka),g=f.length;l>j;j++)h=c,j!==o&&(h=n.clone(h,!0,!0),g&&n.merge(f,oa(h,"script"))),b.call(this[j],h,j);if(g)for(i=f[f.length-1].ownerDocument,n.map(f,la),j=0;g>j;j++)h=f[j],fa.test(h.type||"")&&!L.access(h,"globalEval")&&n.contains(i,h)&&(h.src?n._evalUrl&&n._evalUrl(h.src):n.globalEval(h.textContent.replace(ha,"")))}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),g=e.length-1,h=0;g>=h;h++)c=h===g?this:this.clone(!0),n(e[h])[b](c),f.apply(d,c.get());return this.pushStack(d)}});var qa,ra={};function sa(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function ta(a){var b=l,c=ra[a];return c||(c=sa(a,b),"none"!==c&&c||(qa=(qa||n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=qa[0].contentDocument,b.write(),b.close(),c=sa(a,b),qa.detach()),ra[a]=c),c}var ua=/^margin/,va=new RegExp("^("+Q+")(?!px)[a-z%]+$","i"),wa=function(b){return b.ownerDocument.defaultView.opener?b.ownerDocument.defaultView.getComputedStyle(b,null):a.getComputedStyle(b,null)};function xa(a,b,c){var d,e,f,g,h=a.style;return c=c||wa(a),c&&(g=c.getPropertyValue(b)||c[b]),c&&(""!==g||n.contains(a.ownerDocument,a)||(g=n.style(a,b)),va.test(g)&&ua.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function ya(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}!function(){var b,c,d=l.documentElement,e=l.createElement("div"),f=l.createElement("div");if(f.style){f.style.backgroundClip="content-box",f.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===f.style.backgroundClip,e.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",e.appendChild(f);function g(){f.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",f.innerHTML="",d.appendChild(e);var g=a.getComputedStyle(f,null);b="1%"!==g.top,c="4px"===g.width,d.removeChild(e)}a.getComputedStyle&&n.extend(k,{pixelPosition:function(){return g(),b},boxSizingReliable:function(){return null==c&&g(),c},reliableMarginRight:function(){var b,c=f.appendChild(l.createElement("div"));return c.style.cssText=f.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",f.style.width="1px",d.appendChild(e),b=!parseFloat(a.getComputedStyle(c,null).marginRight),d.removeChild(e),f.removeChild(c),b}})}}(),n.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var za=/^(none|table(?!-c[ea]).+)/,Aa=new RegExp("^("+Q+")(.*)$","i"),Ba=new RegExp("^([+-])=("+Q+")","i"),Ca={position:"absolute",visibility:"hidden",display:"block"},Da={letterSpacing:"0",fontWeight:"400"},Ea=["Webkit","O","Moz","ms"];function Fa(a,b){if(b in a)return b;var c=b[0].toUpperCase()+b.slice(1),d=b,e=Ea.length;while(e--)if(b=Ea[e]+c,b in a)return b;return d}function Ga(a,b,c){var d=Aa.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Ha(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=n.css(a,c+R[f],!0,e)),d?("content"===c&&(g-=n.css(a,"padding"+R[f],!0,e)),"margin"!==c&&(g-=n.css(a,"border"+R[f]+"Width",!0,e))):(g+=n.css(a,"padding"+R[f],!0,e),"padding"!==c&&(g+=n.css(a,"border"+R[f]+"Width",!0,e)));return g}function Ia(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=wa(a),g="border-box"===n.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=xa(a,b,f),(0>e||null==e)&&(e=a.style[b]),va.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Ha(a,b,c||(g?"border":"content"),d,f)+"px"}function Ja(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=L.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&S(d)&&(f[g]=L.access(d,"olddisplay",ta(d.nodeName)))):(e=S(d),"none"===c&&e||L.set(d,"olddisplay",e?c:n.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}n.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=xa(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=n.camelCase(b),i=a.style;return b=n.cssProps[h]||(n.cssProps[h]=Fa(i,h)),g=n.cssHooks[b]||n.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=Ba.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(n.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||n.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=n.camelCase(b);return b=n.cssProps[h]||(n.cssProps[h]=Fa(a.style,h)),g=n.cssHooks[b]||n.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=xa(a,b,d)),"normal"===e&&b in Da&&(e=Da[b]),""===c||c?(f=parseFloat(e),c===!0||n.isNumeric(f)?f||0:e):e}}),n.each(["height","width"],function(a,b){n.cssHooks[b]={get:function(a,c,d){return c?za.test(n.css(a,"display"))&&0===a.offsetWidth?n.swap(a,Ca,function(){return Ia(a,b,d)}):Ia(a,b,d):void 0},set:function(a,c,d){var e=d&&wa(a);return Ga(a,c,d?Ha(a,b,d,"border-box"===n.css(a,"boxSizing",!1,e),e):0)}}}),n.cssHooks.marginRight=ya(k.reliableMarginRight,function(a,b){return b?n.swap(a,{display:"inline-block"},xa,[a,"marginRight"]):void 0}),n.each({margin:"",padding:"",border:"Width"},function(a,b){n.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+R[d]+b]=f[d]||f[d-2]||f[0];return e}},ua.test(a)||(n.cssHooks[a+b].set=Ga)}),n.fn.extend({css:function(a,b){return J(this,function(a,b,c){var d,e,f={},g=0;if(n.isArray(b)){for(d=wa(a),e=b.length;e>g;g++)f[b[g]]=n.css(a,b[g],!1,d);return f}return void 0!==c?n.style(a,b,c):n.css(a,b)},a,b,arguments.length>1)},show:function(){return Ja(this,!0)},hide:function(){return Ja(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){S(this)?n(this).show():n(this).hide()})}});function Ka(a,b,c,d,e){return new Ka.prototype.init(a,b,c,d,e)}n.Tween=Ka,Ka.prototype={constructor:Ka,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(n.cssNumber[c]?"":"px")},cur:function(){var a=Ka.propHooks[this.prop];return a&&a.get?a.get(this):Ka.propHooks._default.get(this)},run:function(a){var b,c=Ka.propHooks[this.prop];return this.options.duration?this.pos=b=n.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Ka.propHooks._default.set(this),this}},Ka.prototype.init.prototype=Ka.prototype,Ka.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=n.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){n.fx.step[a.prop]?n.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[n.cssProps[a.prop]]||n.cssHooks[a.prop])?n.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Ka.propHooks.scrollTop=Ka.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},n.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},n.fx=Ka.prototype.init,n.fx.step={};var La,Ma,Na=/^(?:toggle|show|hide)$/,Oa=new RegExp("^(?:([+-])=|)("+Q+")([a-z%]*)$","i"),Pa=/queueHooks$/,Qa=[Va],Ra={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=Oa.exec(b),f=e&&e[3]||(n.cssNumber[a]?"":"px"),g=(n.cssNumber[a]||"px"!==f&&+d)&&Oa.exec(n.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,n.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};function Sa(){return setTimeout(function(){La=void 0}),La=n.now()}function Ta(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=R[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function Ua(a,b,c){for(var d,e=(Ra[b]||[]).concat(Ra["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function Va(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},o=a.style,p=a.nodeType&&S(a),q=L.get(a,"fxshow");c.queue||(h=n._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,n.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=n.css(a,"display"),k="none"===j?L.get(a,"olddisplay")||ta(a.nodeName):j,"inline"===k&&"none"===n.css(a,"float")&&(o.display="inline-block")),c.overflow&&(o.overflow="hidden",l.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],Na.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}m[d]=q&&q[d]||n.style(a,d)}else j=void 0;if(n.isEmptyObject(m))"inline"===("none"===j?ta(a.nodeName):j)&&(o.display=j);else{q?"hidden"in q&&(p=q.hidden):q=L.access(a,"fxshow",{}),f&&(q.hidden=!p),p?n(a).show():l.done(function(){n(a).hide()}),l.done(function(){var b;L.remove(a,"fxshow");for(b in m)n.style(a,b,m[b])});for(d in m)g=Ua(p?q[d]:0,d,l),d in q||(q[d]=g.start,p&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function Wa(a,b){var c,d,e,f,g;for(c in a)if(d=n.camelCase(c),e=b[d],f=a[c],n.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=n.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function Xa(a,b,c){var d,e,f=0,g=Qa.length,h=n.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=La||Sa(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:n.extend({},b),opts:n.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:La||Sa(),duration:c.duration,tweens:[],createTween:function(b,c){var d=n.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(Wa(k,j.opts.specialEasing);g>f;f++)if(d=Qa[f].call(j,a,k,j.opts))return d;return n.map(k,Ua,j),n.isFunction(j.opts.start)&&j.opts.start.call(a,j),n.fx.timer(n.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}n.Animation=n.extend(Xa,{tweener:function(a,b){n.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],Ra[c]=Ra[c]||[],Ra[c].unshift(b)},prefilter:function(a,b){b?Qa.unshift(a):Qa.push(a)}}),n.speed=function(a,b,c){var d=a&&"object"==typeof a?n.extend({},a):{complete:c||!c&&b||n.isFunction(a)&&a,duration:a,easing:c&&b||b&&!n.isFunction(b)&&b};return d.duration=n.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in n.fx.speeds?n.fx.speeds[d.duration]:n.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){n.isFunction(d.old)&&d.old.call(this),d.queue&&n.dequeue(this,d.queue)},d},n.fn.extend({fadeTo:function(a,b,c,d){return this.filter(S).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=n.isEmptyObject(a),f=n.speed(b,c,d),g=function(){var b=Xa(this,n.extend({},a),f);(e||L.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=n.timers,g=L.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&Pa.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&n.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=L.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=n.timers,g=d?d.length:0;for(c.finish=!0,n.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),n.each(["toggle","show","hide"],function(a,b){var c=n.fn[b];n.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(Ta(b,!0),a,d,e)}}),n.each({slideDown:Ta("show"),slideUp:Ta("hide"),slideToggle:Ta("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){n.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),n.timers=[],n.fx.tick=function(){var a,b=0,c=n.timers;for(La=n.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||n.fx.stop(),La=void 0},n.fx.timer=function(a){n.timers.push(a),a()?n.fx.start():n.timers.pop()},n.fx.interval=13,n.fx.start=function(){Ma||(Ma=setInterval(n.fx.tick,n.fx.interval))},n.fx.stop=function(){clearInterval(Ma),Ma=null},n.fx.speeds={slow:600,fast:200,_default:400},n.fn.delay=function(a,b){return a=n.fx?n.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a=l.createElement("input"),b=l.createElement("select"),c=b.appendChild(l.createElement("option"));a.type="checkbox",k.checkOn=""!==a.value,k.optSelected=c.selected,b.disabled=!0,k.optDisabled=!c.disabled,a=l.createElement("input"),a.value="t",a.type="radio",k.radioValue="t"===a.value}();var Ya,Za,$a=n.expr.attrHandle;n.fn.extend({attr:function(a,b){return J(this,n.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){n.removeAttr(this,a)})}}),n.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===U?n.prop(a,b,c):(1===f&&n.isXMLDoc(a)||(b=b.toLowerCase(),d=n.attrHooks[b]||(n.expr.match.bool.test(b)?Za:Ya)),
+void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=n.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void n.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)while(c=f[e++])d=n.propFix[c]||c,n.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&n.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),Za={set:function(a,b,c){return b===!1?n.removeAttr(a,c):a.setAttribute(c,c),c}},n.each(n.expr.match.bool.source.match(/\w+/g),function(a,b){var c=$a[b]||n.find.attr;$a[b]=function(a,b,d){var e,f;return d||(f=$a[b],$a[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,$a[b]=f),e}});var _a=/^(?:input|select|textarea|button)$/i;n.fn.extend({prop:function(a,b){return J(this,n.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[n.propFix[a]||a]})}}),n.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!n.isXMLDoc(a),f&&(b=n.propFix[b]||b,e=n.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){return a.hasAttribute("tabindex")||_a.test(a.nodeName)||a.href?a.tabIndex:-1}}}}),k.optSelected||(n.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null}}),n.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){n.propFix[this.toLowerCase()]=this});var ab=/[\t\r\n\f]/g;n.fn.extend({addClass:function(a){var b,c,d,e,f,g,h="string"==typeof a&&a,i=0,j=this.length;if(n.isFunction(a))return this.each(function(b){n(this).addClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(E)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(ab," "):" ")){f=0;while(e=b[f++])d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=n.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0===arguments.length||"string"==typeof a&&a,i=0,j=this.length;if(n.isFunction(a))return this.each(function(b){n(this).removeClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(E)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(ab," "):"")){f=0;while(e=b[f++])while(d.indexOf(" "+e+" ")>=0)d=d.replace(" "+e+" "," ");g=a?n.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(n.isFunction(a)?function(c){n(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c){var b,d=0,e=n(this),f=a.match(E)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else(c===U||"boolean"===c)&&(this.className&&L.set(this,"__className__",this.className),this.className=this.className||a===!1?"":L.get(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(ab," ").indexOf(b)>=0)return!0;return!1}});var bb=/\r/g;n.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=n.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,n(this).val()):a,null==e?e="":"number"==typeof e?e+="":n.isArray(e)&&(e=n.map(e,function(a){return null==a?"":a+""})),b=n.valHooks[this.type]||n.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=n.valHooks[e.type]||n.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(bb,""):null==c?"":c)}}}),n.extend({valHooks:{option:{get:function(a){var b=n.find.attr(a,"value");return null!=b?b:n.trim(n.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&n.nodeName(c.parentNode,"optgroup"))){if(b=n(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=n.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=n.inArray(d.value,f)>=0)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),n.each(["radio","checkbox"],function(){n.valHooks[this]={set:function(a,b){return n.isArray(b)?a.checked=n.inArray(n(a).val(),b)>=0:void 0}},k.checkOn||(n.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})}),n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){n.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),n.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var cb=n.now(),db=/\?/;n.parseJSON=function(a){return JSON.parse(a+"")},n.parseXML=function(a){var b,c;if(!a||"string"!=typeof a)return null;try{c=new DOMParser,b=c.parseFromString(a,"text/xml")}catch(d){b=void 0}return(!b||b.getElementsByTagName("parsererror").length)&&n.error("Invalid XML: "+a),b};var eb=/#.*$/,fb=/([?&])_=[^&]*/,gb=/^(.*?):[ \t]*([^\r\n]*)$/gm,hb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,ib=/^(?:GET|HEAD)$/,jb=/^\/\//,kb=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,lb={},mb={},nb="*/".concat("*"),ob=a.location.href,pb=kb.exec(ob.toLowerCase())||[];function qb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(n.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function rb(a,b,c,d){var e={},f=a===mb;function g(h){var i;return e[h]=!0,n.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function sb(a,b){var c,d,e=n.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&n.extend(!0,a,d),a}function tb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function ub(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}n.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ob,type:"GET",isLocal:hb.test(pb[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":nb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":n.parseJSON,"text xml":n.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?sb(sb(a,n.ajaxSettings),b):sb(n.ajaxSettings,a)},ajaxPrefilter:qb(lb),ajaxTransport:qb(mb),ajax:function(a,b){"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=n.ajaxSetup({},b),l=k.context||k,m=k.context&&(l.nodeType||l.jquery)?n(l):n.event,o=n.Deferred(),p=n.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!f){f={};while(b=gb.exec(e))f[b[1].toLowerCase()]=b[2]}b=f[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?e:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return c&&c.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||ob)+"").replace(eb,"").replace(jb,pb[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=n.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(h=kb.exec(k.url.toLowerCase()),k.crossDomain=!(!h||h[1]===pb[1]&&h[2]===pb[2]&&(h[3]||("http:"===h[1]?"80":"443"))===(pb[3]||("http:"===pb[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=n.param(k.data,k.traditional)),rb(lb,k,b,v),2===t)return v;i=n.event&&k.global,i&&0===n.active++&&n.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!ib.test(k.type),d=k.url,k.hasContent||(k.data&&(d=k.url+=(db.test(d)?"&":"?")+k.data,delete k.data),k.cache===!1&&(k.url=fb.test(d)?d.replace(fb,"$1_="+cb++):d+(db.test(d)?"&":"?")+"_="+cb++)),k.ifModified&&(n.lastModified[d]&&v.setRequestHeader("If-Modified-Since",n.lastModified[d]),n.etag[d]&&v.setRequestHeader("If-None-Match",n.etag[d])),(k.data&&k.hasContent&&k.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+nb+"; q=0.01":""):k.accepts["*"]);for(j in k.headers)v.setRequestHeader(j,k.headers[j]);if(k.beforeSend&&(k.beforeSend.call(l,v,k)===!1||2===t))return v.abort();u="abort";for(j in{success:1,error:1,complete:1})v[j](k[j]);if(c=rb(mb,k,b,v)){v.readyState=1,i&&m.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,c.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");function x(a,b,f,h){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),c=void 0,e=h||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,f&&(u=tb(k,v,f)),u=ub(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(n.lastModified[d]=w),w=v.getResponseHeader("etag"),w&&(n.etag[d]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,i&&m.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),i&&(m.trigger("ajaxComplete",[v,k]),--n.active||n.event.trigger("ajaxStop")))}return v},getJSON:function(a,b,c){return n.get(a,b,c,"json")},getScript:function(a,b){return n.get(a,void 0,b,"script")}}),n.each(["get","post"],function(a,b){n[b]=function(a,c,d,e){return n.isFunction(c)&&(e=e||d,d=c,c=void 0),n.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),n._evalUrl=function(a){return n.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},n.fn.extend({wrapAll:function(a){var b;return n.isFunction(a)?this.each(function(b){n(this).wrapAll(a.call(this,b))}):(this[0]&&(b=n(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return this.each(n.isFunction(a)?function(b){n(this).wrapInner(a.call(this,b))}:function(){var b=n(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=n.isFunction(a);return this.each(function(c){n(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){n.nodeName(this,"body")||n(this).replaceWith(this.childNodes)}).end()}}),n.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0},n.expr.filters.visible=function(a){return!n.expr.filters.hidden(a)};var vb=/%20/g,wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(n.isArray(b))n.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==n.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}n.param=function(a,b){var c,d=[],e=function(a,b){b=n.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=n.ajaxSettings&&n.ajaxSettings.traditional),n.isArray(a)||a.jquery&&!n.isPlainObject(a))n.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&").replace(vb,"+")},n.fn.extend({serialize:function(){return n.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=n.prop(this,"elements");return a?n.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!n(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!T.test(a))}).map(function(a,b){var c=n(this).val();return null==c?null:n.isArray(c)?n.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}}),n.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(a){}};var Bb=0,Cb={},Db={0:200,1223:204},Eb=n.ajaxSettings.xhr();a.attachEvent&&a.attachEvent("onunload",function(){for(var a in Cb)Cb[a]()}),k.cors=!!Eb&&"withCredentials"in Eb,k.ajax=Eb=!!Eb,n.ajaxTransport(function(a){var b;return k.cors||Eb&&!a.crossDomain?{send:function(c,d){var e,f=a.xhr(),g=++Bb;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)f.setRequestHeader(e,c[e]);b=function(a){return function(){b&&(delete Cb[g],b=f.onload=f.onerror=null,"abort"===a?f.abort():"error"===a?d(f.status,f.statusText):d(Db[f.status]||f.status,f.statusText,"string"==typeof f.responseText?{text:f.responseText}:void 0,f.getAllResponseHeaders()))}},f.onload=b(),f.onerror=b("error"),b=Cb[g]=b("abort");try{f.send(a.hasContent&&a.data||null)}catch(h){if(b)throw h}},abort:function(){b&&b()}}:void 0}),n.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return n.globalEval(a),a}}}),n.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),n.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(d,e){b=n("<script>").prop({async:!0,charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&e("error"===a.type?404:200,a.type)}),l.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Fb=[],Gb=/(=)\?(?=&|$)|\?\?/;n.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Fb.pop()||n.expando+"_"+cb++;return this[a]=!0,a}}),n.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Gb.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Gb.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=n.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Gb,"$1"+e):b.jsonp!==!1&&(b.url+=(db.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||n.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Fb.push(e)),g&&n.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),n.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||l;var d=v.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=n.buildFragment([a],b,e),e&&e.length&&n(e).remove(),n.merge([],d.childNodes))};var Hb=n.fn.load;n.fn.load=function(a,b,c){if("string"!=typeof a&&Hb)return Hb.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=n.trim(a.slice(h)),a=a.slice(0,h)),n.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&n.ajax({url:a,type:e,dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?n("<div>").append(n.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,f||[a.responseText,b,a])}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};var Ib=a.document.documentElement;function Jb(a){return n.isWindow(a)?a:9===a.nodeType&&a.defaultView}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d=this[0],e={top:0,left:0},f=d&&d.ownerDocument;if(f)return b=f.documentElement,n.contains(b,d)?(typeof d.getBoundingClientRect!==U&&(e=d.getBoundingClientRect()),c=Jb(f),{top:e.top+c.pageYOffset-b.clientTop,left:e.left+c.pageXOffset-b.clientLeft}):e},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===n.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(d=a.offset()),d.top+=n.css(a[0],"borderTopWidth",!0),d.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-n.css(c,"marginTop",!0),left:b.left-d.left-n.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||Ib;while(a&&!n.nodeName(a,"html")&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Ib})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b,c){var d="pageYOffset"===c;n.fn[b]=function(e){return J(this,function(b,e,f){var g=Jb(b);return void 0===f?g?g[c]:b[e]:void(g?g.scrollTo(d?a.pageXOffset:f,d?f:a.pageYOffset):b[e]=f)},b,e,arguments.length,null)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=ya(k.pixelPosition,function(a,c){return c?(c=xa(a,b),va.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return J(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.size=function(){return this.length},n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var Kb=a.jQuery,Lb=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=Lb),b&&a.jQuery===n&&(a.jQuery=Kb),n},typeof b===U&&(a.jQuery=a.$=n),n});
+//# sourceMappingURL=jquery.min.map
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.min.map b/wrt/wrt_support/sample/launcher/bower_components/jquery/dist/jquery.min.map
new file mode 100644 (file)
index 0000000..95fc122
--- /dev/null
@@ -0,0 +1 @@
+{"version":3,"file":"jquery.min.js","sources":["jquery.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","arr","slice","concat","push","indexOf","class2type","toString","hasOwn","hasOwnProperty","support","version","jQuery","selector","context","fn","init","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","toUpperCase","prototype","jquery","constructor","length","toArray","call","get","num","pushStack","elems","ret","merge","prevObject","each","callback","args","map","elem","i","apply","arguments","first","eq","last","len","j","end","sort","splice","extend","options","name","src","copy","copyIsArray","clone","target","deep","isFunction","isPlainObject","isArray","undefined","expando","Math","random","replace","isReady","error","msg","noop","obj","type","Array","isWindow","isNumeric","parseFloat","nodeType","isEmptyObject","globalEval","code","script","indirect","eval","trim","createElement","text","head","appendChild","parentNode","removeChild","camelCase","string","nodeName","toLowerCase","value","isArraylike","makeArray","results","Object","inArray","second","grep","invert","callbackInverse","matches","callbackExpect","arg","guid","proxy","tmp","now","Date","split","Sizzle","Expr","getText","isXML","tokenize","compile","select","outermostContext","sortInput","hasDuplicate","setDocument","docElem","documentIsHTML","rbuggyQSA","rbuggyMatches","contains","preferredDoc","dirruns","done","classCache","createCache","tokenCache","compilerCache","sortOrder","a","b","MAX_NEGATIVE","pop","push_native","list","booleans","whitespace","characterEncoding","identifier","attributes","pseudos","rwhitespace","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","rquickExpr","rsibling","rescape","runescape","funescape","_","escaped","escapedWhitespace","high","String","fromCharCode","unloadHandler","childNodes","e","els","seed","match","m","groups","old","nid","newContext","newSelector","ownerDocument","exec","getElementById","id","getElementsByTagName","getElementsByClassName","qsa","test","getAttribute","setAttribute","toSelector","testContext","join","querySelectorAll","qsaError","removeAttribute","keys","cache","key","cacheLength","shift","markFunction","assert","div","addHandle","attrs","handler","attrHandle","siblingCheck","cur","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createPositionalPseudo","argument","matchIndexes","documentElement","node","hasCompare","parent","doc","defaultView","top","addEventListener","attachEvent","className","createComment","getById","getElementsByName","find","filter","attrId","getAttributeNode","tag","innerHTML","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","unshift","expr","elements","attr","val","specified","uniqueSort","duplicates","detectDuplicates","sortStable","textContent","firstChild","nodeValue","selectors","createPseudo","relative",">","dir"," ","+","~","preFilter","excess","unquoted","nodeNameSelector","pattern","operator","check","result","what","simple","forward","ofType","xml","outerCache","nodeIndex","start","useCache","lastChild","pseudo","setFilters","idx","matched","not","matcher","unmatched","has","innerText","lang","elemLang","hash","location","root","focus","activeElement","hasFocus","href","tabIndex","enabled","disabled","checked","selected","selectedIndex","empty","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","tokens","soFar","preFilters","cached","addCombinator","combinator","base","checkNonElements","doneName","oldCache","newCache","elementMatcher","matchers","multipleContexts","contexts","condense","newUnmatched","mapped","setMatcher","postFilter","postFinder","postSelector","temp","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","implicitRelative","matchContext","matchAnyContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","dirrunsUnique","token","compiled","div1","defaultValue","unique","isXMLDoc","rneedsContext","rsingleTag","risSimple","winnow","qualifier","self","is","rootjQuery","parseHTML","ready","rparentsprev","guaranteedUnique","children","contents","next","prev","until","truncate","sibling","n","targets","l","closest","pos","index","prevAll","add","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","siblings","contentDocument","reverse","rnotwhite","optionsCache","createOptions","object","flag","Callbacks","memory","fired","firing","firingStart","firingLength","firingIndex","stack","once","fire","data","stopOnFalse","disable","remove","lock","locked","fireWith","Deferred","func","tuples","state","promise","always","deferred","fail","then","fns","newDefer","tuple","returned","resolve","reject","progress","notify","pipe","stateString","when","subordinate","resolveValues","remaining","updateFunc","values","progressValues","notifyWith","resolveWith","progressContexts","resolveContexts","readyList","readyWait","holdReady","hold","wait","triggerHandler","off","completed","removeEventListener","readyState","setTimeout","access","chainable","emptyGet","raw","bulk","acceptData","owner","Data","defineProperty","uid","accepts","descriptor","unlock","defineProperties","set","prop","stored","camel","hasData","discard","data_priv","data_user","rbrace","rmultiDash","dataAttr","parseJSON","removeData","_data","_removeData","camelKey","queue","dequeue","startLength","hooks","_queueHooks","stop","setter","clearQueue","count","defer","pnum","source","cssExpand","isHidden","el","css","rcheckableType","fragment","createDocumentFragment","checkClone","cloneNode","noCloneChecked","strundefined","focusinBubbles","rkeyEvent","rmouseEvent","rfocusMorph","rtypenamespace","returnTrue","returnFalse","safeActiveElement","err","event","types","handleObjIn","eventHandle","events","t","handleObj","special","handlers","namespaces","origType","elemData","handle","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","trigger","onlyHandlers","bubbleType","ontype","eventPath","Event","isTrigger","namespace_re","noBubble","parentWindow","isPropagationStopped","preventDefault","isDefaultPrevented","_default","fix","handlerQueue","delegateTarget","preDispatch","currentTarget","isImmediatePropagationStopped","stopPropagation","postDispatch","sel","props","fixHooks","keyHooks","original","which","charCode","keyCode","mouseHooks","eventDoc","body","pageX","clientX","scrollLeft","clientLeft","pageY","clientY","scrollTop","clientTop","originalEvent","fixHook","load","blur","click","beforeunload","returnValue","simulate","bubble","isSimulated","defaultPrevented","timeStamp","stopImmediatePropagation","mouseenter","mouseleave","pointerenter","pointerleave","orig","related","relatedTarget","attaches","on","one","origFn","rxhtmlTag","rtagName","rhtml","rnoInnerhtml","rchecked","rscriptType","rscriptTypeMasked","rcleanScript","wrapMap","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","manipulationTarget","content","disableScript","restoreScript","setGlobalEval","refElements","cloneCopyEvent","dest","pdataOld","pdataCur","udataOld","udataCur","getAll","fixInput","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","buildFragment","scripts","selection","wrap","nodes","createTextNode","cleanData","append","domManip","prepend","insertBefore","before","after","keepData","html","replaceWith","replaceChild","detach","hasScripts","iNoClone","_evalUrl","appendTo","prependTo","insertAfter","replaceAll","insert","iframe","elemdisplay","actualDisplay","style","display","getDefaultComputedStyle","defaultDisplay","write","close","rmargin","rnumnonpx","getStyles","opener","getComputedStyle","curCSS","computed","width","minWidth","maxWidth","getPropertyValue","addGetHookIf","conditionFn","hookFn","pixelPositionVal","boxSizingReliableVal","container","backgroundClip","clearCloneStyle","cssText","computePixelPositionAndBoxSizingReliable","divStyle","pixelPosition","boxSizingReliable","reliableMarginRight","marginDiv","marginRight","swap","rdisplayswap","rnumsplit","rrelNum","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","cssPrefixes","vendorPropName","capName","origName","setPositiveNumber","subtract","max","augmentWidthOrHeight","extra","isBorderBox","styles","getWidthOrHeight","valueIsBorderBox","offsetWidth","offsetHeight","showHide","show","hidden","cssHooks","opacity","cssNumber","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","cssProps","float","margin","padding","border","prefix","suffix","expand","expanded","parts","hide","toggle","Tween","easing","unit","propHooks","run","percent","eased","duration","step","tween","fx","linear","p","swing","cos","PI","fxNow","timerId","rfxtypes","rfxnum","rrun","animationPrefilters","defaultPrefilter","tweeners","*","createTween","scale","maxIterations","createFxNow","genFx","includeWidth","height","animation","collection","opts","oldfire","checkDisplay","anim","dataShow","unqueued","overflow","overflowX","overflowY","propFilter","specialEasing","Animation","properties","stopped","tick","currentTime","startTime","tweens","originalProperties","originalOptions","gotoEnd","rejectWith","timer","complete","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","interval","setInterval","clearInterval","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","optDisabled","radioValue","nodeHook","boolHook","removeAttr","nType","attrHooks","propName","attrNames","propFix","getter","rfocusable","removeProp","for","class","notxml","hasAttribute","rclass","addClass","classes","clazz","finalValue","proceed","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","hover","fnOver","fnOut","bind","unbind","delegate","undelegate","nonce","rquery","JSON","parse","parseXML","DOMParser","parseFromString","rhash","rts","rheaders","rlocalProtocol","rnoContent","rprotocol","rurl","prefilters","transports","allTypes","ajaxLocation","ajaxLocParts","addToPrefiltersOrTransports","structure","dataTypeExpression","dataType","dataTypes","inspectPrefiltersOrTransports","jqXHR","inspected","seekingTransport","inspect","prefilterOrFactory","dataTypeOrTransport","ajaxExtend","flatOptions","ajaxSettings","ajaxHandleResponses","s","responses","ct","finalDataType","firstDataType","mimeType","getResponseHeader","converters","ajaxConvert","response","isSuccess","conv2","current","conv","responseFields","dataFilter","active","lastModified","etag","url","isLocal","processData","async","contentType","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","transport","cacheURL","responseHeadersString","responseHeaders","timeoutTimer","fireGlobals","callbackContext","globalEventContext","completeDeferred","statusCode","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","lname","overrideMimeType","status","abort","statusText","finalText","success","method","crossDomain","param","traditional","hasContent","ifModified","headers","beforeSend","send","nativeStatusText","modified","getJSON","getScript","throws","wrapAll","firstElementChild","wrapInner","unwrap","visible","r20","rbracket","rCRLF","rsubmitterTypes","rsubmittable","buildParams","v","encodeURIComponent","serialize","serializeArray","xhr","XMLHttpRequest","xhrId","xhrCallbacks","xhrSuccessStatus",1223,"xhrSupported","cors","open","username","xhrFields","onload","onerror","responseText","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","keepScripts","parsed","_load","params","animated","getWindow","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","left","using","win","box","getBoundingClientRect","pageYOffset","pageXOffset","offsetParent","parentOffset","scrollTo","Height","Width","defaultExtra","funcName","size","andSelf","define","amd","_jQuery","_$","$","noConflict"],"mappings":";CAcC,SAAUA,EAAQC,GAEK,gBAAXC,SAAiD,gBAAnBA,QAAOC,QAQhDD,OAAOC,QAAUH,EAAOI,SACvBH,EAASD,GAAQ,GACjB,SAAUK,GACT,IAAMA,EAAED,SACP,KAAM,IAAIE,OAAO,2CAElB,OAAOL,GAASI,IAGlBJ,EAASD,IAIS,mBAAXO,QAAyBA,OAASC,KAAM,SAAUD,EAAQE,GAQnE,GAAIC,MAEAC,EAAQD,EAAIC,MAEZC,EAASF,EAAIE,OAEbC,EAAOH,EAAIG,KAEXC,EAAUJ,EAAII,QAEdC,KAEAC,EAAWD,EAAWC,SAEtBC,EAASF,EAAWG,eAEpBC,KAMHf,EAAWG,EAAOH,SAElBgB,EAAU,QAGVC,EAAS,SAAUC,EAAUC,GAG5B,MAAO,IAAIF,GAAOG,GAAGC,KAAMH,EAAUC,IAKtCG,EAAQ,qCAGRC,EAAY,QACZC,EAAa,eAGbC,EAAa,SAAUC,EAAKC,GAC3B,MAAOA,GAAOC,cAGhBX,GAAOG,GAAKH,EAAOY,WAElBC,OAAQd,EAERe,YAAad,EAGbC,SAAU,GAGVc,OAAQ,EAERC,QAAS,WACR,MAAO1B,GAAM2B,KAAM9B,OAKpB+B,IAAK,SAAUC,GACd,MAAc,OAAPA,EAGE,EAANA,EAAUhC,KAAMgC,EAAMhC,KAAK4B,QAAW5B,KAAMgC,GAG9C7B,EAAM2B,KAAM9B,OAKdiC,UAAW,SAAUC,GAGpB,GAAIC,GAAMtB,EAAOuB,MAAOpC,KAAK2B,cAAeO,EAO5C,OAJAC,GAAIE,WAAarC,KACjBmC,EAAIpB,QAAUf,KAAKe,QAGZoB,GAMRG,KAAM,SAAUC,EAAUC,GACzB,MAAO3B,GAAOyB,KAAMtC,KAAMuC,EAAUC,IAGrCC,IAAK,SAAUF,GACd,MAAOvC,MAAKiC,UAAWpB,EAAO4B,IAAIzC,KAAM,SAAU0C,EAAMC,GACvD,MAAOJ,GAAST,KAAMY,EAAMC,EAAGD,OAIjCvC,MAAO,WACN,MAAOH,MAAKiC,UAAW9B,EAAMyC,MAAO5C,KAAM6C,aAG3CC,MAAO,WACN,MAAO9C,MAAK+C,GAAI,IAGjBC,KAAM,WACL,MAAOhD,MAAK+C,GAAI,KAGjBA,GAAI,SAAUJ,GACb,GAAIM,GAAMjD,KAAK4B,OACdsB,GAAKP,GAAU,EAAJA,EAAQM,EAAM,EAC1B,OAAOjD,MAAKiC,UAAWiB,GAAK,GAASD,EAAJC,GAAYlD,KAAKkD,SAGnDC,IAAK,WACJ,MAAOnD,MAAKqC,YAAcrC,KAAK2B,YAAY,OAK5CtB,KAAMA,EACN+C,KAAMlD,EAAIkD,KACVC,OAAQnD,EAAImD,QAGbxC,EAAOyC,OAASzC,EAAOG,GAAGsC,OAAS,WAClC,GAAIC,GAASC,EAAMC,EAAKC,EAAMC,EAAaC,EAC1CC,EAAShB,UAAU,OACnBF,EAAI,EACJf,EAASiB,UAAUjB,OACnBkC,GAAO,CAsBR,KAnBuB,iBAAXD,KACXC,EAAOD,EAGPA,EAAShB,UAAWF,OACpBA,KAIsB,gBAAXkB,IAAwBhD,EAAOkD,WAAWF,KACrDA,MAIIlB,IAAMf,IACViC,EAAS7D,KACT2C,KAGWf,EAAJe,EAAYA,IAEnB,GAAmC,OAA7BY,EAAUV,UAAWF,IAE1B,IAAMa,IAAQD,GACbE,EAAMI,EAAQL,GACdE,EAAOH,EAASC,GAGXK,IAAWH,IAKXI,GAAQJ,IAAU7C,EAAOmD,cAAcN,KAAUC,EAAc9C,EAAOoD,QAAQP,MAC7EC,GACJA,GAAc,EACdC,EAAQH,GAAO5C,EAAOoD,QAAQR,GAAOA,MAGrCG,EAAQH,GAAO5C,EAAOmD,cAAcP,GAAOA,KAI5CI,EAAQL,GAAS3C,EAAOyC,OAAQQ,EAAMF,EAAOF,IAGzBQ,SAATR,IACXG,EAAQL,GAASE,GAOrB,OAAOG,IAGRhD,EAAOyC,QAENa,QAAS,UAAavD,EAAUwD,KAAKC,UAAWC,QAAS,MAAO,IAGhEC,SAAS,EAETC,MAAO,SAAUC,GAChB,KAAM,IAAI3E,OAAO2E,IAGlBC,KAAM,aAENX,WAAY,SAAUY,GACrB,MAA4B,aAArB9D,EAAO+D,KAAKD,IAGpBV,QAASY,MAAMZ,QAEfa,SAAU,SAAUH,GACnB,MAAc,OAAPA,GAAeA,IAAQA,EAAI5E,QAGnCgF,UAAW,SAAUJ,GAKpB,OAAQ9D,EAAOoD,QAASU,IAAUA,EAAMK,WAAYL,GAAQ,GAAM,GAGnEX,cAAe,SAAUW,GAKxB,MAA4B,WAAvB9D,EAAO+D,KAAMD,IAAsBA,EAAIM,UAAYpE,EAAOiE,SAAUH,IACjE,EAGHA,EAAIhD,cACNlB,EAAOqB,KAAM6C,EAAIhD,YAAYF,UAAW,kBACnC,GAKD,GAGRyD,cAAe,SAAUP,GACxB,GAAInB,EACJ,KAAMA,IAAQmB,GACb,OAAO,CAER,QAAO,GAGRC,KAAM,SAAUD,GACf,MAAY,OAAPA,EACGA,EAAM,GAGQ,gBAARA,IAAmC,kBAARA,GACxCpE,EAAYC,EAASsB,KAAK6C,KAAU,eAC7BA,IAITQ,WAAY,SAAUC,GACrB,GAAIC,GACHC,EAAWC,IAEZH,GAAOvE,EAAO2E,KAAMJ,GAEfA,IAIgC,IAA/BA,EAAK9E,QAAQ,eACjB+E,EAASzF,EAAS6F,cAAc,UAChCJ,EAAOK,KAAON,EACdxF,EAAS+F,KAAKC,YAAaP,GAASQ,WAAWC,YAAaT,IAI5DC,EAAUF,KAQbW,UAAW,SAAUC,GACpB,MAAOA,GAAO1B,QAASnD,EAAW,OAAQmD,QAASlD,EAAYC,IAGhE4E,SAAU,SAAUvD,EAAMc,GACzB,MAAOd,GAAKuD,UAAYvD,EAAKuD,SAASC,gBAAkB1C,EAAK0C,eAI9D5D,KAAM,SAAUqC,EAAKpC,EAAUC,GAC9B,GAAI2D,GACHxD,EAAI,EACJf,EAAS+C,EAAI/C,OACbqC,EAAUmC,EAAazB,EAExB,IAAKnC,GACJ,GAAKyB,GACJ,KAAYrC,EAAJe,EAAYA,IAGnB,GAFAwD,EAAQ5D,EAASK,MAAO+B,EAAKhC,GAAKH,GAE7B2D,KAAU,EACd,UAIF,KAAMxD,IAAKgC,GAGV,GAFAwB,EAAQ5D,EAASK,MAAO+B,EAAKhC,GAAKH,GAE7B2D,KAAU,EACd,UAOH,IAAKlC,GACJ,KAAYrC,EAAJe,EAAYA,IAGnB,GAFAwD,EAAQ5D,EAAST,KAAM6C,EAAKhC,GAAKA,EAAGgC,EAAKhC,IAEpCwD,KAAU,EACd,UAIF,KAAMxD,IAAKgC,GAGV,GAFAwB,EAAQ5D,EAAST,KAAM6C,EAAKhC,GAAKA,EAAGgC,EAAKhC,IAEpCwD,KAAU,EACd,KAMJ,OAAOxB,IAIRa,KAAM,SAAUE,GACf,MAAe,OAARA,EACN,IACEA,EAAO,IAAKpB,QAASpD,EAAO,KAIhCmF,UAAW,SAAUnG,EAAKoG,GACzB,GAAInE,GAAMmE,KAaV,OAXY,OAAPpG,IACCkG,EAAaG,OAAOrG,IACxBW,EAAOuB,MAAOD,EACE,gBAARjC,IACLA,GAAQA,GAGXG,EAAKyB,KAAMK,EAAKjC,IAIXiC,GAGRqE,QAAS,SAAU9D,EAAMxC,EAAKyC,GAC7B,MAAc,OAAPzC,EAAc,GAAKI,EAAQwB,KAAM5B,EAAKwC,EAAMC,IAGpDP,MAAO,SAAUU,EAAO2D,GAKvB,IAJA,GAAIxD,IAAOwD,EAAO7E,OACjBsB,EAAI,EACJP,EAAIG,EAAMlB,OAECqB,EAAJC,EAASA,IAChBJ,EAAOH,KAAQ8D,EAAQvD,EAKxB,OAFAJ,GAAMlB,OAASe,EAERG,GAGR4D,KAAM,SAAUxE,EAAOK,EAAUoE,GAShC,IARA,GAAIC,GACHC,KACAlE,EAAI,EACJf,EAASM,EAAMN,OACfkF,GAAkBH,EAIP/E,EAAJe,EAAYA,IACnBiE,GAAmBrE,EAAUL,EAAOS,GAAKA,GACpCiE,IAAoBE,GACxBD,EAAQxG,KAAM6B,EAAOS,GAIvB,OAAOkE,IAIRpE,IAAK,SAAUP,EAAOK,EAAUwE,GAC/B,GAAIZ,GACHxD,EAAI,EACJf,EAASM,EAAMN,OACfqC,EAAUmC,EAAalE,GACvBC,IAGD,IAAK8B,EACJ,KAAYrC,EAAJe,EAAYA,IACnBwD,EAAQ5D,EAAUL,EAAOS,GAAKA,EAAGoE,GAEnB,MAATZ,GACJhE,EAAI9B,KAAM8F,OAMZ,KAAMxD,IAAKT,GACViE,EAAQ5D,EAAUL,EAAOS,GAAKA,EAAGoE,GAEnB,MAATZ,GACJhE,EAAI9B,KAAM8F,EAMb,OAAO/F,GAAOwC,SAAWT,IAI1B6E,KAAM,EAINC,MAAO,SAAUjG,EAAID,GACpB,GAAImG,GAAK1E,EAAMyE,CAUf,OARwB,gBAAZlG,KACXmG,EAAMlG,EAAID,GACVA,EAAUC,EACVA,EAAKkG,GAKArG,EAAOkD,WAAY/C,IAKzBwB,EAAOrC,EAAM2B,KAAMe,UAAW,GAC9BoE,EAAQ,WACP,MAAOjG,GAAG4B,MAAO7B,GAAWf,KAAMwC,EAAKpC,OAAQD,EAAM2B,KAAMe,cAI5DoE,EAAMD,KAAOhG,EAAGgG,KAAOhG,EAAGgG,MAAQnG,EAAOmG,OAElCC,GAZC/C,QAeTiD,IAAKC,KAAKD,IAIVxG,QAASA,IAIVE,EAAOyB,KAAK,gEAAgE+E,MAAM,KAAM,SAAS1E,EAAGa,GACnGjD,EAAY,WAAaiD,EAAO,KAAQA,EAAK0C,eAG9C,SAASE,GAAazB,GAMrB,GAAI/C,GAAS,UAAY+C,IAAOA,EAAI/C,OACnCgD,EAAO/D,EAAO+D,KAAMD,EAErB,OAAc,aAATC,GAAuB/D,EAAOiE,SAAUH,IACrC,EAGc,IAAjBA,EAAIM,UAAkBrD,GACnB,EAGQ,UAATgD,GAA+B,IAAXhD,GACR,gBAAXA,IAAuBA,EAAS,GAAOA,EAAS,IAAO+C,GAEhE,GAAI2C,GAWJ,SAAWvH,GAEX,GAAI4C,GACHhC,EACA4G,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACApI,EACAqI,EACAC,EACAC,EACAC,EACAvB,EACAwB,EAGAlE,EAAU,SAAW,EAAI,GAAIiD,MAC7BkB,EAAevI,EAAOH,SACtB2I,EAAU,EACVC,EAAO,EACPC,EAAaC,KACbC,EAAaD,KACbE,EAAgBF,KAChBG,EAAY,SAAUC,EAAGC,GAIxB,MAHKD,KAAMC,IACVhB,GAAe,GAET,GAIRiB,EAAe,GAAK,GAGpBvI,KAAcC,eACdR,KACA+I,EAAM/I,EAAI+I,IACVC,EAAchJ,EAAIG,KAClBA,EAAOH,EAAIG,KACXF,EAAQD,EAAIC,MAGZG,EAAU,SAAU6I,EAAMzG,GAGzB,IAFA,GAAIC,GAAI,EACPM,EAAMkG,EAAKvH,OACAqB,EAAJN,EAASA,IAChB,GAAKwG,EAAKxG,KAAOD,EAChB,MAAOC,EAGT,OAAO,IAGRyG,EAAW,6HAKXC,EAAa,sBAEbC,EAAoB,mCAKpBC,EAAaD,EAAkBhF,QAAS,IAAK,MAG7CkF,EAAa,MAAQH,EAAa,KAAOC,EAAoB,OAASD,EAErE,gBAAkBA,EAElB,2DAA6DE,EAAa,OAASF,EACnF,OAEDI,EAAU,KAAOH,EAAoB,wFAKPE,EAAa,eAM3CE,EAAc,GAAIC,QAAQN,EAAa,IAAK,KAC5CnI,EAAQ,GAAIyI,QAAQ,IAAMN,EAAa,8BAAgCA,EAAa,KAAM,KAE1FO,EAAS,GAAID,QAAQ,IAAMN,EAAa,KAAOA,EAAa,KAC5DQ,EAAe,GAAIF,QAAQ,IAAMN,EAAa,WAAaA,EAAa,IAAMA,EAAa,KAE3FS,EAAmB,GAAIH,QAAQ,IAAMN,EAAa,iBAAmBA,EAAa,OAAQ,KAE1FU,EAAU,GAAIJ,QAAQF,GACtBO,EAAc,GAAIL,QAAQ,IAAMJ,EAAa,KAE7CU,GACCC,GAAM,GAAIP,QAAQ,MAAQL,EAAoB,KAC9Ca,MAAS,GAAIR,QAAQ,QAAUL,EAAoB,KACnDc,IAAO,GAAIT,QAAQ,KAAOL,EAAkBhF,QAAS,IAAK,MAAS,KACnE+F,KAAQ,GAAIV,QAAQ,IAAMH,GAC1Bc,OAAU,GAAIX,QAAQ,IAAMF,GAC5Bc,MAAS,GAAIZ,QAAQ,yDAA2DN,EAC/E,+BAAiCA,EAAa,cAAgBA,EAC9D,aAAeA,EAAa,SAAU,KACvCmB,KAAQ,GAAIb,QAAQ,OAASP,EAAW,KAAM,KAG9CqB,aAAgB,GAAId,QAAQ,IAAMN,EAAa,mDAC9CA,EAAa,mBAAqBA,EAAa,mBAAoB,MAGrEqB,EAAU,sCACVC,EAAU,SAEVC,EAAU,yBAGVC,EAAa,mCAEbC,GAAW,OACXC,GAAU,QAGVC,GAAY,GAAIrB,QAAQ,qBAAuBN,EAAa,MAAQA,EAAa,OAAQ,MACzF4B,GAAY,SAAUC,EAAGC,EAASC,GACjC,GAAIC,GAAO,KAAOF,EAAU,KAI5B,OAAOE,KAASA,GAAQD,EACvBD,EACO,EAAPE,EAECC,OAAOC,aAAcF,EAAO,OAE5BC,OAAOC,aAAcF,GAAQ,GAAK,MAAe,KAAPA,EAAe,QAO5DG,GAAgB,WACfxD,IAIF,KACC3H,EAAKuC,MACH1C,EAAMC,EAAM2B,KAAMwG,EAAamD,YAChCnD,EAAamD,YAIdvL,EAAKoI,EAAamD,WAAW7J,QAASqD,SACrC,MAAQyG,IACTrL,GAASuC,MAAO1C,EAAI0B,OAGnB,SAAUiC,EAAQ8H,GACjBzC,EAAYtG,MAAOiB,EAAQ1D,EAAM2B,KAAK6J,KAKvC,SAAU9H,EAAQ8H,GACjB,GAAIzI,GAAIW,EAAOjC,OACde,EAAI,CAEL,OAASkB,EAAOX,KAAOyI,EAAIhJ,MAC3BkB,EAAOjC,OAASsB,EAAI,IAKvB,QAASoE,IAAQxG,EAAUC,EAASuF,EAASsF,GAC5C,GAAIC,GAAOnJ,EAAMoJ,EAAG7G,EAEnBtC,EAAGoJ,EAAQC,EAAKC,EAAKC,EAAYC,CAUlC,KAROpL,EAAUA,EAAQqL,eAAiBrL,EAAUuH,KAAmB1I,GACtEoI,EAAajH,GAGdA,EAAUA,GAAWnB,EACrB0G,EAAUA,MACVrB,EAAWlE,EAAQkE,SAEM,gBAAbnE,KAA0BA,GACxB,IAAbmE,GAA+B,IAAbA,GAA+B,KAAbA,EAEpC,MAAOqB,EAGR,KAAMsF,GAAQ1D,EAAiB,CAG9B,GAAkB,KAAbjD,IAAoB4G,EAAQhB,EAAWwB,KAAMvL,IAEjD,GAAMgL,EAAID,EAAM,IACf,GAAkB,IAAb5G,EAAiB,CAIrB,GAHAvC,EAAO3B,EAAQuL,eAAgBR,IAG1BpJ,IAAQA,EAAKmD,WAQjB,MAAOS,EALP,IAAK5D,EAAK6J,KAAOT,EAEhB,MADAxF,GAAQjG,KAAMqC,GACP4D,MAOT,IAAKvF,EAAQqL,gBAAkB1J,EAAO3B,EAAQqL,cAAcE,eAAgBR,KAC3EzD,EAAUtH,EAAS2B,IAAUA,EAAK6J,KAAOT,EAEzC,MADAxF,GAAQjG,KAAMqC,GACP4D,MAKH,CAAA,GAAKuF,EAAM,GAEjB,MADAxL,GAAKuC,MAAO0D,EAASvF,EAAQyL,qBAAsB1L,IAC5CwF,CAGD,KAAMwF,EAAID,EAAM,KAAOlL,EAAQ8L,uBAErC,MADApM,GAAKuC,MAAO0D,EAASvF,EAAQ0L,uBAAwBX,IAC9CxF,EAKT,GAAK3F,EAAQ+L,OAASvE,IAAcA,EAAUwE,KAAM7L,IAAc,CASjE,GARAmL,EAAMD,EAAM7H,EACZ+H,EAAanL,EACboL,EAA2B,IAAblH,GAAkBnE,EAMd,IAAbmE,GAAqD,WAAnClE,EAAQkF,SAASC,cAA6B,CACpE6F,EAASrE,EAAU5G,IAEbkL,EAAMjL,EAAQ6L,aAAa,OAChCX,EAAMD,EAAI1H,QAASyG,GAAS,QAE5BhK,EAAQ8L,aAAc,KAAMZ,GAE7BA,EAAM,QAAUA,EAAM,MAEtBtJ,EAAIoJ,EAAOnK,MACX,OAAQe,IACPoJ,EAAOpJ,GAAKsJ,EAAMa,GAAYf,EAAOpJ,GAEtCuJ,GAAapB,GAAS6B,KAAM7L,IAAciM,GAAahM,EAAQ8E,aAAgB9E,EAC/EoL,EAAcJ,EAAOiB,KAAK,KAG3B,GAAKb,EACJ,IAIC,MAHA9L,GAAKuC,MAAO0D,EACX4F,EAAWe,iBAAkBd,IAEvB7F,EACN,MAAM4G,IACN,QACKlB,GACLjL,EAAQoM,gBAAgB,QAQ7B,MAAOvF,GAAQ9G,EAASwD,QAASpD,EAAO,MAAQH,EAASuF,EAASsF,GASnE,QAASlD,MACR,GAAI0E,KAEJ,SAASC,GAAOC,EAAKnH,GAMpB,MAJKiH,GAAK/M,KAAMiN,EAAM,KAAQ/F,EAAKgG,mBAE3BF,GAAOD,EAAKI,SAEZH,EAAOC,EAAM,KAAQnH,EAE9B,MAAOkH,GAOR,QAASI,IAAczM,GAEtB,MADAA,GAAImD,IAAY,EACTnD,EAOR,QAAS0M,IAAQ1M,GAChB,GAAI2M,GAAM/N,EAAS6F,cAAc,MAEjC,KACC,QAASzE,EAAI2M,GACZ,MAAOjC,GACR,OAAO,EACN,QAEIiC,EAAI9H,YACR8H,EAAI9H,WAAWC,YAAa6H,GAG7BA,EAAM,MASR,QAASC,IAAWC,EAAOC,GAC1B,GAAI5N,GAAM2N,EAAMxG,MAAM,KACrB1E,EAAIkL,EAAMjM,MAEX,OAAQe,IACP4E,EAAKwG,WAAY7N,EAAIyC,IAAOmL,EAU9B,QAASE,IAAclF,EAAGC,GACzB,GAAIkF,GAAMlF,GAAKD,EACdoF,EAAOD,GAAsB,IAAfnF,EAAE7D,UAAiC,IAAf8D,EAAE9D,YAChC8D,EAAEoF,aAAenF,KACjBF,EAAEqF,aAAenF,EAGtB,IAAKkF,EACJ,MAAOA,EAIR,IAAKD,EACJ,MAASA,EAAMA,EAAIG,YAClB,GAAKH,IAAQlF,EACZ,MAAO,EAKV,OAAOD,GAAI,EAAI,GAOhB,QAASuF,IAAmBzJ,GAC3B,MAAO,UAAUlC,GAChB,GAAIc,GAAOd,EAAKuD,SAASC,aACzB,OAAgB,UAAT1C,GAAoBd,EAAKkC,OAASA,GAQ3C,QAAS0J,IAAoB1J,GAC5B,MAAO,UAAUlC,GAChB,GAAIc,GAAOd,EAAKuD,SAASC,aACzB,QAAiB,UAAT1C,GAA6B,WAATA,IAAsBd,EAAKkC,OAASA,GAQlE,QAAS2J,IAAwBvN,GAChC,MAAOyM,IAAa,SAAUe,GAE7B,MADAA,IAAYA,EACLf,GAAa,SAAU7B,EAAM/E,GACnC,GAAI3D,GACHuL,EAAezN,KAAQ4K,EAAKhK,OAAQ4M,GACpC7L,EAAI8L,EAAa7M,MAGlB,OAAQe,IACFiJ,EAAO1I,EAAIuL,EAAa9L,MAC5BiJ,EAAK1I,KAAO2D,EAAQ3D,GAAK0I,EAAK1I,SAYnC,QAAS6J,IAAahM,GACrB,MAAOA,IAAmD,mBAAjCA,GAAQyL,sBAAwCzL,EAI1EJ,EAAU2G,GAAO3G,WAOjB8G,EAAQH,GAAOG,MAAQ,SAAU/E,GAGhC,GAAIgM,GAAkBhM,IAASA,EAAK0J,eAAiB1J,GAAMgM,eAC3D,OAAOA,GAA+C,SAA7BA,EAAgBzI,UAAsB,GAQhE+B,EAAcV,GAAOU,YAAc,SAAU2G,GAC5C,GAAIC,GAAYC,EACfC,EAAMH,EAAOA,EAAKvC,eAAiBuC,EAAOrG,CAG3C,OAAKwG,KAAQlP,GAA6B,IAAjBkP,EAAI7J,UAAmB6J,EAAIJ,iBAKpD9O,EAAWkP,EACX7G,EAAU6G,EAAIJ,gBACdG,EAASC,EAAIC,YAMRF,GAAUA,IAAWA,EAAOG,MAE3BH,EAAOI,iBACXJ,EAAOI,iBAAkB,SAAUzD,IAAe,GACvCqD,EAAOK,aAClBL,EAAOK,YAAa,WAAY1D,KAMlCtD,GAAkBT,EAAOqH,GAQzBnO,EAAQ6I,WAAakE,GAAO,SAAUC,GAErC,MADAA,GAAIwB,UAAY,KACRxB,EAAIf,aAAa,eAO1BjM,EAAQ6L,qBAAuBkB,GAAO,SAAUC,GAE/C,MADAA,GAAI/H,YAAakJ,EAAIM,cAAc,MAC3BzB,EAAInB,qBAAqB,KAAK5K,SAIvCjB,EAAQ8L,uBAAyB7B,EAAQ+B,KAAMmC,EAAIrC,wBAMnD9L,EAAQ0O,QAAU3B,GAAO,SAAUC,GAElC,MADA1F,GAAQrC,YAAa+H,GAAMpB,GAAKpI,GACxB2K,EAAIQ,oBAAsBR,EAAIQ,kBAAmBnL,GAAUvC,SAI/DjB,EAAQ0O,SACZ9H,EAAKgI,KAAS,GAAI,SAAUhD,EAAIxL,GAC/B,GAAuC,mBAA3BA,GAAQuL,gBAAkCpE,EAAiB,CACtE,GAAI4D,GAAI/K,EAAQuL,eAAgBC,EAGhC,OAAOT,IAAKA,EAAEjG,YAAeiG,QAG/BvE,EAAKiI,OAAW,GAAI,SAAUjD,GAC7B,GAAIkD,GAASlD,EAAGjI,QAAS0G,GAAWC,GACpC,OAAO,UAAUvI,GAChB,MAAOA,GAAKkK,aAAa,QAAU6C,YAM9BlI,GAAKgI,KAAS,GAErBhI,EAAKiI,OAAW,GAAK,SAAUjD,GAC9B,GAAIkD,GAASlD,EAAGjI,QAAS0G,GAAWC,GACpC,OAAO,UAAUvI,GAChB,GAAIiM,GAAwC,mBAA1BjM,GAAKgN,kBAAoChN,EAAKgN,iBAAiB,KACjF,OAAOf,IAAQA,EAAKxI,QAAUsJ,KAMjClI,EAAKgI,KAAU,IAAI5O,EAAQ6L,qBAC1B,SAAUmD,EAAK5O,GACd,MAA6C,mBAAjCA,GAAQyL,qBACZzL,EAAQyL,qBAAsBmD,GAG1BhP,EAAQ+L,IACZ3L,EAAQkM,iBAAkB0C,GAD3B,QAKR,SAAUA,EAAK5O,GACd,GAAI2B,GACHwE,KACAvE,EAAI,EAEJ2D,EAAUvF,EAAQyL,qBAAsBmD,EAGzC,IAAa,MAARA,EAAc,CAClB,MAASjN,EAAO4D,EAAQ3D,KACA,IAAlBD,EAAKuC,UACTiC,EAAI7G,KAAMqC,EAIZ,OAAOwE,GAER,MAAOZ,IAITiB,EAAKgI,KAAY,MAAI5O,EAAQ8L,wBAA0B,SAAU0C,EAAWpO,GAC3E,MAAKmH,GACGnH,EAAQ0L,uBAAwB0C,GADxC,QAWD/G,KAOAD,MAEMxH,EAAQ+L,IAAM9B,EAAQ+B,KAAMmC,EAAI7B,qBAGrCS,GAAO,SAAUC,GAMhB1F,EAAQrC,YAAa+H,GAAMiC,UAAY,UAAYzL,EAAU,qBAC3CA,EAAU,iEAOvBwJ,EAAIV,iBAAiB,wBAAwBrL,QACjDuG,EAAU9H,KAAM,SAAWgJ,EAAa,gBAKnCsE,EAAIV,iBAAiB,cAAcrL,QACxCuG,EAAU9H,KAAM,MAAQgJ,EAAa,aAAeD,EAAW,KAI1DuE,EAAIV,iBAAkB,QAAU9I,EAAU,MAAOvC,QACtDuG,EAAU9H,KAAK,MAMVsN,EAAIV,iBAAiB,YAAYrL,QACtCuG,EAAU9H,KAAK,YAMVsN,EAAIV,iBAAkB,KAAO9I,EAAU,MAAOvC,QACnDuG,EAAU9H,KAAK,cAIjBqN,GAAO,SAAUC,GAGhB,GAAIkC,GAAQf,EAAIrJ,cAAc,QAC9BoK,GAAMhD,aAAc,OAAQ,UAC5Bc,EAAI/H,YAAaiK,GAAQhD,aAAc,OAAQ,KAI1Cc,EAAIV,iBAAiB,YAAYrL,QACrCuG,EAAU9H,KAAM,OAASgJ,EAAa,eAKjCsE,EAAIV,iBAAiB,YAAYrL,QACtCuG,EAAU9H,KAAM,WAAY,aAI7BsN,EAAIV,iBAAiB,QACrB9E,EAAU9H,KAAK,YAIXM,EAAQmP,gBAAkBlF,EAAQ+B,KAAO9F,EAAUoB,EAAQpB,SAChEoB,EAAQ8H,uBACR9H,EAAQ+H,oBACR/H,EAAQgI,kBACRhI,EAAQiI,qBAERxC,GAAO,SAAUC,GAGhBhN,EAAQwP,kBAAoBtJ,EAAQ/E,KAAM6L,EAAK,OAI/C9G,EAAQ/E,KAAM6L,EAAK,aACnBvF,EAAc/H,KAAM,KAAMoJ,KAI5BtB,EAAYA,EAAUvG,QAAU,GAAI+H,QAAQxB,EAAU6E,KAAK,MAC3D5E,EAAgBA,EAAcxG,QAAU,GAAI+H,QAAQvB,EAAc4E,KAAK,MAIvE4B,EAAahE,EAAQ+B,KAAM1E,EAAQmI,yBAKnC/H,EAAWuG,GAAchE,EAAQ+B,KAAM1E,EAAQI,UAC9C,SAAUS,EAAGC,GACZ,GAAIsH,GAAuB,IAAfvH,EAAE7D,SAAiB6D,EAAE4F,gBAAkB5F,EAClDwH,EAAMvH,GAAKA,EAAElD,UACd,OAAOiD,KAAMwH,MAAWA,GAAwB,IAAjBA,EAAIrL,YAClCoL,EAAMhI,SACLgI,EAAMhI,SAAUiI,GAChBxH,EAAEsH,yBAA8D,GAAnCtH,EAAEsH,wBAAyBE,MAG3D,SAAUxH,EAAGC,GACZ,GAAKA,EACJ,MAASA,EAAIA,EAAElD,WACd,GAAKkD,IAAMD,EACV,OAAO,CAIV,QAAO,GAOTD,EAAY+F,EACZ,SAAU9F,EAAGC,GAGZ,GAAKD,IAAMC,EAEV,MADAhB,IAAe,EACR,CAIR,IAAIwI,IAAWzH,EAAEsH,yBAA2BrH,EAAEqH,uBAC9C,OAAKG,GACGA,GAIRA,GAAYzH,EAAEsD,eAAiBtD,MAAUC,EAAEqD,eAAiBrD,GAC3DD,EAAEsH,wBAAyBrH,GAG3B,EAGc,EAAVwH,IACF5P,EAAQ6P,cAAgBzH,EAAEqH,wBAAyBtH,KAAQyH,EAGxDzH,IAAMgG,GAAOhG,EAAEsD,gBAAkB9D,GAAgBD,EAASC,EAAcQ,GACrE,GAEHC,IAAM+F,GAAO/F,EAAEqD,gBAAkB9D,GAAgBD,EAASC,EAAcS,GACrE,EAIDjB,EACJxH,EAASwH,EAAWgB,GAAMxI,EAASwH,EAAWiB,GAChD,EAGe,EAAVwH,EAAc,GAAK,IAE3B,SAAUzH,EAAGC,GAEZ,GAAKD,IAAMC,EAEV,MADAhB,IAAe,EACR,CAGR,IAAIkG,GACHtL,EAAI,EACJ8N,EAAM3H,EAAEjD,WACRyK,EAAMvH,EAAElD,WACR6K,GAAO5H,GACP6H,GAAO5H,EAGR,KAAM0H,IAAQH,EACb,MAAOxH,KAAMgG,EAAM,GAClB/F,IAAM+F,EAAM,EACZ2B,EAAM,GACNH,EAAM,EACNxI,EACExH,EAASwH,EAAWgB,GAAMxI,EAASwH,EAAWiB,GAChD,CAGK,IAAK0H,IAAQH,EACnB,MAAOtC,IAAclF,EAAGC,EAIzBkF,GAAMnF,CACN,OAASmF,EAAMA,EAAIpI,WAClB6K,EAAGE,QAAS3C,EAEbA,GAAMlF,CACN,OAASkF,EAAMA,EAAIpI,WAClB8K,EAAGC,QAAS3C,EAIb,OAAQyC,EAAG/N,KAAOgO,EAAGhO,GACpBA,GAGD,OAAOA,GAENqL,GAAc0C,EAAG/N,GAAIgO,EAAGhO,IAGxB+N,EAAG/N,KAAO2F,EAAe,GACzBqI,EAAGhO,KAAO2F,EAAe,EACzB,GAGKwG,GA1WClP,GA6WT0H,GAAOT,QAAU,SAAUgK,EAAMC,GAChC,MAAOxJ,IAAQuJ,EAAM,KAAM,KAAMC,IAGlCxJ,GAAOwI,gBAAkB,SAAUpN,EAAMmO,GASxC,IAPOnO,EAAK0J,eAAiB1J,KAAW9C,GACvCoI,EAAatF,GAIdmO,EAAOA,EAAKvM,QAASwF,EAAkB,aAElCnJ,EAAQmP,kBAAmB5H,GAC5BE,GAAkBA,EAAcuE,KAAMkE,IACtC1I,GAAkBA,EAAUwE,KAAMkE,IAErC,IACC,GAAI1O,GAAM0E,EAAQ/E,KAAMY,EAAMmO,EAG9B,IAAK1O,GAAOxB,EAAQwP,mBAGlBzN,EAAK9C,UAAuC,KAA3B8C,EAAK9C,SAASqF,SAChC,MAAO9C,GAEP,MAAOuJ,IAGV,MAAOpE,IAAQuJ,EAAMjR,EAAU,MAAQ8C,IAASd,OAAS,GAG1D0F,GAAOe,SAAW,SAAUtH,EAAS2B,GAKpC,OAHO3B,EAAQqL,eAAiBrL,KAAcnB,GAC7CoI,EAAajH,GAEPsH,EAAUtH,EAAS2B,IAG3B4E,GAAOyJ,KAAO,SAAUrO,EAAMc,IAEtBd,EAAK0J,eAAiB1J,KAAW9C,GACvCoI,EAAatF,EAGd,IAAI1B,GAAKuG,EAAKwG,WAAYvK,EAAK0C,eAE9B8K,EAAMhQ,GAAMP,EAAOqB,KAAMyF,EAAKwG,WAAYvK,EAAK0C,eAC9ClF,EAAI0B,EAAMc,GAAO0E,GACjBhE,MAEF,OAAeA,UAAR8M,EACNA,EACArQ,EAAQ6I,aAAetB,EACtBxF,EAAKkK,aAAcpJ,IAClBwN,EAAMtO,EAAKgN,iBAAiBlM,KAAUwN,EAAIC,UAC1CD,EAAI7K,MACJ,MAGJmB,GAAO9C,MAAQ,SAAUC,GACxB,KAAM,IAAI3E,OAAO,0CAA4C2E,IAO9D6C,GAAO4J,WAAa,SAAU5K,GAC7B,GAAI5D,GACHyO,KACAjO,EAAI,EACJP,EAAI,CAOL,IAJAoF,GAAgBpH,EAAQyQ,iBACxBtJ,GAAanH,EAAQ0Q,YAAc/K,EAAQnG,MAAO,GAClDmG,EAAQlD,KAAMyF,GAETd,EAAe,CACnB,MAASrF,EAAO4D,EAAQ3D,KAClBD,IAAS4D,EAAS3D,KACtBO,EAAIiO,EAAW9Q,KAAMsC,GAGvB,OAAQO,IACPoD,EAAQjD,OAAQ8N,EAAYjO,GAAK,GAQnC,MAFA4E,GAAY,KAELxB,GAORkB,EAAUF,GAAOE,QAAU,SAAU9E,GACpC,GAAIiM,GACHxM,EAAM,GACNQ,EAAI,EACJsC,EAAWvC,EAAKuC,QAEjB,IAAMA,GAMC,GAAkB,IAAbA,GAA+B,IAAbA,GAA+B,KAAbA,EAAkB,CAGjE,GAAiC,gBAArBvC,GAAK4O,YAChB,MAAO5O,GAAK4O,WAGZ,KAAM5O,EAAOA,EAAK6O,WAAY7O,EAAMA,EAAOA,EAAK0L,YAC/CjM,GAAOqF,EAAS9E,OAGZ,IAAkB,IAAbuC,GAA+B,IAAbA,EAC7B,MAAOvC,GAAK8O,cAhBZ,OAAS7C,EAAOjM,EAAKC,KAEpBR,GAAOqF,EAASmH,EAkBlB,OAAOxM,IAGRoF,EAAOD,GAAOmK,WAGblE,YAAa,GAEbmE,aAAcjE,GAEd5B,MAAO5B,EAEP8D,cAEAwB,QAEAoC,UACCC,KAAOC,IAAK,aAAc/O,OAAO,GACjCgP,KAAOD,IAAK,cACZE,KAAOF,IAAK,kBAAmB/O,OAAO,GACtCkP,KAAOH,IAAK,oBAGbI,WACC5H,KAAQ,SAAUwB,GAUjB,MATAA,GAAM,GAAKA,EAAM,GAAGvH,QAAS0G,GAAWC,IAGxCY,EAAM,IAAOA,EAAM,IAAMA,EAAM,IAAMA,EAAM,IAAM,IAAKvH,QAAS0G,GAAWC,IAExD,OAAbY,EAAM,KACVA,EAAM,GAAK,IAAMA,EAAM,GAAK,KAGtBA,EAAM1L,MAAO,EAAG,IAGxBoK,MAAS,SAAUsB,GA6BlB,MAlBAA,GAAM,GAAKA,EAAM,GAAG3F,cAEY,QAA3B2F,EAAM,GAAG1L,MAAO,EAAG,IAEjB0L,EAAM,IACXvE,GAAO9C,MAAOqH,EAAM,IAKrBA,EAAM,KAAQA,EAAM,GAAKA,EAAM,IAAMA,EAAM,IAAM,GAAK,GAAmB,SAAbA,EAAM,IAA8B,QAAbA,EAAM,KACzFA,EAAM,KAAUA,EAAM,GAAKA,EAAM,IAAqB,QAAbA,EAAM,KAGpCA,EAAM,IACjBvE,GAAO9C,MAAOqH,EAAM,IAGdA,GAGRvB,OAAU,SAAUuB,GACnB,GAAIqG,GACHC,GAAYtG,EAAM,IAAMA,EAAM,EAE/B,OAAK5B,GAAiB,MAAE0C,KAAMd,EAAM,IAC5B,MAIHA,EAAM,GACVA,EAAM,GAAKA,EAAM,IAAMA,EAAM,IAAM,GAGxBsG,GAAYpI,EAAQ4C,KAAMwF,KAEpCD,EAASxK,EAAUyK,GAAU,MAE7BD,EAASC,EAAS7R,QAAS,IAAK6R,EAASvQ,OAASsQ,GAAWC,EAASvQ,UAGvEiK,EAAM,GAAKA,EAAM,GAAG1L,MAAO,EAAG+R,GAC9BrG,EAAM,GAAKsG,EAAShS,MAAO,EAAG+R,IAIxBrG,EAAM1L,MAAO,EAAG,MAIzBqP,QAECpF,IAAO,SAAUgI,GAChB,GAAInM,GAAWmM,EAAiB9N,QAAS0G,GAAWC,IAAY/E,aAChE,OAA4B,MAArBkM,EACN,WAAa,OAAO,GACpB,SAAU1P,GACT,MAAOA,GAAKuD,UAAYvD,EAAKuD,SAASC,gBAAkBD,IAI3DkE,MAAS,SAAUgF,GAClB,GAAIkD,GAAU5J,EAAY0G,EAAY,IAEtC,OAAOkD,KACLA,EAAU,GAAI1I,QAAQ,MAAQN,EAAa,IAAM8F,EAAY,IAAM9F,EAAa,SACjFZ,EAAY0G,EAAW,SAAUzM,GAChC,MAAO2P,GAAQ1F,KAAgC,gBAAnBjK,GAAKyM,WAA0BzM,EAAKyM,WAA0C,mBAAtBzM,GAAKkK,cAAgClK,EAAKkK,aAAa,UAAY,OAI1JvC,KAAQ,SAAU7G,EAAM8O,EAAUC,GACjC,MAAO,UAAU7P,GAChB,GAAI8P,GAASlL,GAAOyJ,KAAMrO,EAAMc,EAEhC,OAAe,OAAVgP,EACgB,OAAbF,EAEFA,GAINE,GAAU,GAEU,MAAbF,EAAmBE,IAAWD,EACvB,OAAbD,EAAoBE,IAAWD,EAClB,OAAbD,EAAoBC,GAAqC,IAA5BC,EAAOlS,QAASiS,GAChC,OAAbD,EAAoBC,GAASC,EAAOlS,QAASiS,GAAU,GAC1C,OAAbD,EAAoBC,GAASC,EAAOrS,OAAQoS,EAAM3Q,UAAa2Q,EAClD,OAAbD,GAAsB,IAAME,EAAOlO,QAASoF,EAAa,KAAQ,KAAMpJ,QAASiS,GAAU,GAC7E,OAAbD,EAAoBE,IAAWD,GAASC,EAAOrS,MAAO,EAAGoS,EAAM3Q,OAAS,KAAQ2Q,EAAQ,KACxF,IAZO,IAgBVhI,MAAS,SAAU3F,EAAM6N,EAAMjE,EAAU1L,EAAOE,GAC/C,GAAI0P,GAAgC,QAAvB9N,EAAKzE,MAAO,EAAG,GAC3BwS,EAA+B,SAArB/N,EAAKzE,MAAO,IACtByS,EAAkB,YAATH,CAEV,OAAiB,KAAV3P,GAAwB,IAATE,EAGrB,SAAUN,GACT,QAASA,EAAKmD,YAGf,SAAUnD,EAAM3B,EAAS8R,GACxB,GAAIxF,GAAOyF,EAAYnE,EAAMT,EAAM6E,EAAWC,EAC7CnB,EAAMa,IAAWC,EAAU,cAAgB,kBAC3C9D,EAASnM,EAAKmD,WACdrC,EAAOoP,GAAUlQ,EAAKuD,SAASC,cAC/B+M,GAAYJ,IAAQD,CAErB,IAAK/D,EAAS,CAGb,GAAK6D,EAAS,CACb,MAAQb,EAAM,CACblD,EAAOjM,CACP,OAASiM,EAAOA,EAAMkD,GACrB,GAAKe,EAASjE,EAAK1I,SAASC,gBAAkB1C,EAAyB,IAAlBmL,EAAK1J,SACzD,OAAO,CAIT+N,GAAQnB,EAAe,SAATjN,IAAoBoO,GAAS,cAE5C,OAAO,EAMR,GAHAA,GAAUL,EAAU9D,EAAO0C,WAAa1C,EAAOqE,WAG1CP,GAAWM,EAAW,CAE1BH,EAAajE,EAAQ1K,KAAc0K,EAAQ1K,OAC3CkJ,EAAQyF,EAAYlO,OACpBmO,EAAY1F,EAAM,KAAO9E,GAAW8E,EAAM,GAC1Ca,EAAOb,EAAM,KAAO9E,GAAW8E,EAAM,GACrCsB,EAAOoE,GAAalE,EAAOpD,WAAYsH,EAEvC,OAASpE,IAASoE,GAAapE,GAAQA,EAAMkD,KAG3C3D,EAAO6E,EAAY,IAAMC,EAAM/J,MAGhC,GAAuB,IAAlB0F,EAAK1J,YAAoBiJ,GAAQS,IAASjM,EAAO,CACrDoQ,EAAYlO,IAAW2D,EAASwK,EAAW7E,EAC3C,YAKI,IAAK+E,IAAa5F,GAAS3K,EAAMyB,KAAczB,EAAMyB,QAAkBS,KAAWyI,EAAM,KAAO9E,EACrG2F,EAAOb,EAAM,OAKb,OAASsB,IAASoE,GAAapE,GAAQA,EAAMkD,KAC3C3D,EAAO6E,EAAY,IAAMC,EAAM/J,MAEhC,IAAO2J,EAASjE,EAAK1I,SAASC,gBAAkB1C,EAAyB,IAAlBmL,EAAK1J,aAAsBiJ,IAE5E+E,KACHtE,EAAMxK,KAAcwK,EAAMxK,QAAkBS,IAAW2D,EAAS2F,IAG7DS,IAASjM,GACb,KAQJ,OADAwL,IAAQlL,EACDkL,IAASpL,GAAWoL,EAAOpL,IAAU,GAAKoL,EAAOpL,GAAS,KAKrEwH,OAAU,SAAU6I,EAAQ3E,GAK3B,GAAIhM,GACHxB,EAAKuG,EAAKkC,QAAS0J,IAAY5L,EAAK6L,WAAYD,EAAOjN,gBACtDoB,GAAO9C,MAAO,uBAAyB2O,EAKzC,OAAKnS,GAAImD,GACDnD,EAAIwN,GAIPxN,EAAGY,OAAS,GAChBY,GAAS2Q,EAAQA,EAAQ,GAAI3E,GACtBjH,EAAK6L,WAAW1S,eAAgByS,EAAOjN,eAC7CuH,GAAa,SAAU7B,EAAM/E,GAC5B,GAAIwM,GACHC,EAAUtS,EAAI4K,EAAM4C,GACpB7L,EAAI2Q,EAAQ1R,MACb,OAAQe,IACP0Q,EAAM/S,EAASsL,EAAM0H,EAAQ3Q,IAC7BiJ,EAAMyH,KAAWxM,EAASwM,GAAQC,EAAQ3Q,MAG5C,SAAUD,GACT,MAAO1B,GAAI0B,EAAM,EAAGF,KAIhBxB,IAITyI,SAEC8J,IAAO9F,GAAa,SAAU3M,GAI7B,GAAI+O,MACHvJ,KACAkN,EAAU7L,EAAS7G,EAASwD,QAASpD,EAAO,MAE7C,OAAOsS,GAASrP,GACfsJ,GAAa,SAAU7B,EAAM/E,EAAS9F,EAAS8R,GAC9C,GAAInQ,GACH+Q,EAAYD,EAAS5H,EAAM,KAAMiH,MACjClQ,EAAIiJ,EAAKhK,MAGV,OAAQe,KACDD,EAAO+Q,EAAU9Q,MACtBiJ,EAAKjJ,KAAOkE,EAAQlE,GAAKD,MAI5B,SAAUA,EAAM3B,EAAS8R,GAKxB,MAJAhD,GAAM,GAAKnN,EACX8Q,EAAS3D,EAAO,KAAMgD,EAAKvM,GAE3BuJ,EAAM,GAAK,MACHvJ,EAAQ2C,SAInByK,IAAOjG,GAAa,SAAU3M,GAC7B,MAAO,UAAU4B,GAChB,MAAO4E,IAAQxG,EAAU4B,GAAOd,OAAS,KAI3CyG,SAAYoF,GAAa,SAAU/H,GAElC,MADAA,GAAOA,EAAKpB,QAAS0G,GAAWC,IACzB,SAAUvI,GAChB,OAASA,EAAK4O,aAAe5O,EAAKiR,WAAanM,EAAS9E,IAASpC,QAASoF,GAAS,MAWrFkO,KAAQnG,GAAc,SAAUmG,GAM/B,MAJM5J,GAAY2C,KAAKiH,GAAQ,KAC9BtM,GAAO9C,MAAO,qBAAuBoP,GAEtCA,EAAOA,EAAKtP,QAAS0G,GAAWC,IAAY/E,cACrC,SAAUxD,GAChB,GAAImR,EACJ,GACC,IAAMA,EAAW3L,EAChBxF,EAAKkR,KACLlR,EAAKkK,aAAa,aAAelK,EAAKkK,aAAa,QAGnD,MADAiH,GAAWA,EAAS3N,cACb2N,IAAaD,GAA2C,IAAnCC,EAASvT,QAASsT,EAAO,YAE5ClR,EAAOA,EAAKmD,aAAiC,IAAlBnD,EAAKuC,SAC3C,QAAO,KAKTpB,OAAU,SAAUnB,GACnB,GAAIoR,GAAO/T,EAAOgU,UAAYhU,EAAOgU,SAASD,IAC9C,OAAOA,IAAQA,EAAK3T,MAAO,KAAQuC,EAAK6J,IAGzCyH,KAAQ,SAAUtR,GACjB,MAAOA,KAASuF,GAGjBgM,MAAS,SAAUvR,GAClB,MAAOA,KAAS9C,EAASsU,iBAAmBtU,EAASuU,UAAYvU,EAASuU,gBAAkBzR,EAAKkC,MAAQlC,EAAK0R,OAAS1R,EAAK2R,WAI7HC,QAAW,SAAU5R,GACpB,MAAOA,GAAK6R,YAAa,GAG1BA,SAAY,SAAU7R,GACrB,MAAOA,GAAK6R,YAAa,GAG1BC,QAAW,SAAU9R,GAGpB,GAAIuD,GAAWvD,EAAKuD,SAASC,aAC7B,OAAqB,UAAbD,KAA0BvD,EAAK8R,SAA0B,WAAbvO,KAA2BvD,EAAK+R,UAGrFA,SAAY,SAAU/R,GAOrB,MAJKA,GAAKmD,YACTnD,EAAKmD,WAAW6O,cAGVhS,EAAK+R,YAAa,GAI1BE,MAAS,SAAUjS,GAKlB,IAAMA,EAAOA,EAAK6O,WAAY7O,EAAMA,EAAOA,EAAK0L,YAC/C,GAAK1L,EAAKuC,SAAW,EACpB,OAAO,CAGT,QAAO,GAGR4J,OAAU,SAAUnM,GACnB,OAAQ6E,EAAKkC,QAAe,MAAG/G,IAIhCkS,OAAU,SAAUlS,GACnB,MAAOiI,GAAQgC,KAAMjK,EAAKuD,WAG3B4J,MAAS,SAAUnN,GAClB,MAAOgI,GAAQiC,KAAMjK,EAAKuD,WAG3B4O,OAAU,SAAUnS,GACnB,GAAIc,GAAOd,EAAKuD,SAASC,aACzB,OAAgB,UAAT1C,GAAkC,WAAdd,EAAKkC,MAA8B,WAATpB,GAGtDkC,KAAQ,SAAUhD,GACjB,GAAIqO,EACJ,OAAuC,UAAhCrO,EAAKuD,SAASC,eACN,SAAdxD,EAAKkC,OAImC,OAArCmM,EAAOrO,EAAKkK,aAAa,UAA2C,SAAvBmE,EAAK7K,gBAIvDpD,MAASyL,GAAuB,WAC/B,OAAS,KAGVvL,KAAQuL,GAAuB,SAAUE,EAAc7M,GACtD,OAASA,EAAS,KAGnBmB,GAAMwL,GAAuB,SAAUE,EAAc7M,EAAQ4M,GAC5D,OAAoB,EAAXA,EAAeA,EAAW5M,EAAS4M,KAG7CsG,KAAQvG,GAAuB,SAAUE,EAAc7M,GAEtD,IADA,GAAIe,GAAI,EACIf,EAAJe,EAAYA,GAAK,EACxB8L,EAAapO,KAAMsC,EAEpB,OAAO8L,KAGRsG,IAAOxG,GAAuB,SAAUE,EAAc7M,GAErD,IADA,GAAIe,GAAI,EACIf,EAAJe,EAAYA,GAAK,EACxB8L,EAAapO,KAAMsC,EAEpB,OAAO8L,KAGRuG,GAAMzG,GAAuB,SAAUE,EAAc7M,EAAQ4M,GAE5D,IADA,GAAI7L,GAAe,EAAX6L,EAAeA,EAAW5M,EAAS4M,IACjC7L,GAAK,GACd8L,EAAapO,KAAMsC,EAEpB,OAAO8L,KAGRwG,GAAM1G,GAAuB,SAAUE,EAAc7M,EAAQ4M,GAE5D,IADA,GAAI7L,GAAe,EAAX6L,EAAeA,EAAW5M,EAAS4M,IACjC7L,EAAIf,GACb6M,EAAapO,KAAMsC,EAEpB,OAAO8L,OAKVlH,EAAKkC,QAAa,IAAIlC,EAAKkC,QAAY,EAGvC,KAAM9G,KAAOuS,OAAO,EAAMC,UAAU,EAAMC,MAAM,EAAMC,UAAU,EAAMC,OAAO,GAC5E/N,EAAKkC,QAAS9G,GAAM0L,GAAmB1L,EAExC,KAAMA,KAAO4S,QAAQ,EAAMC,OAAO,GACjCjO,EAAKkC,QAAS9G,GAAM2L,GAAoB3L,EAIzC,SAASyQ,OACTA,GAAW3R,UAAY8F,EAAKkO,QAAUlO,EAAKkC,QAC3ClC,EAAK6L,WAAa,GAAIA,IAEtB1L,EAAWJ,GAAOI,SAAW,SAAU5G,EAAU4U,GAChD,GAAIpC,GAASzH,EAAO8J,EAAQ/Q,EAC3BgR,EAAO7J,EAAQ8J,EACfC,EAASnN,EAAY7H,EAAW,IAEjC,IAAKgV,EACJ,MAAOJ,GAAY,EAAII,EAAO3V,MAAO,EAGtCyV,GAAQ9U,EACRiL,KACA8J,EAAatO,EAAK0K,SAElB,OAAQ2D,EAAQ,GAGTtC,IAAYzH,EAAQjC,EAAOyC,KAAMuJ,OACjC/J,IAEJ+J,EAAQA,EAAMzV,MAAO0L,EAAM,GAAGjK,SAAYgU,GAE3C7J,EAAO1L,KAAOsV,OAGfrC,GAAU,GAGJzH,EAAQhC,EAAawC,KAAMuJ,MAChCtC,EAAUzH,EAAM2B,QAChBmI,EAAOtV,MACN8F,MAAOmN,EAEP1O,KAAMiH,EAAM,GAAGvH,QAASpD,EAAO,OAEhC0U,EAAQA,EAAMzV,MAAOmT,EAAQ1R,QAI9B,KAAMgD,IAAQ2C,GAAKiI,SACZ3D,EAAQ5B,EAAWrF,GAAOyH,KAAMuJ,KAAcC,EAAYjR,MAC9DiH,EAAQgK,EAAYjR,GAAQiH,MAC7ByH,EAAUzH,EAAM2B,QAChBmI,EAAOtV,MACN8F,MAAOmN,EACP1O,KAAMA,EACNiC,QAASgF,IAEV+J,EAAQA,EAAMzV,MAAOmT,EAAQ1R,QAI/B,KAAM0R,EACL,MAOF,MAAOoC,GACNE,EAAMhU,OACNgU,EACCtO,GAAO9C,MAAO1D,GAEd6H,EAAY7H,EAAUiL,GAAS5L,MAAO,GAGzC,SAAS2M,IAAY6I,GAIpB,IAHA,GAAIhT,GAAI,EACPM,EAAM0S,EAAO/T,OACbd,EAAW,GACAmC,EAAJN,EAASA,IAChB7B,GAAY6U,EAAOhT,GAAGwD,KAEvB,OAAOrF,GAGR,QAASiV,IAAevC,EAASwC,EAAYC,GAC5C,GAAIpE,GAAMmE,EAAWnE,IACpBqE,EAAmBD,GAAgB,eAARpE,EAC3BsE,EAAW3N,GAEZ,OAAOwN,GAAWlT,MAEjB,SAAUJ,EAAM3B,EAAS8R,GACxB,MAASnQ,EAAOA,EAAMmP,GACrB,GAAuB,IAAlBnP,EAAKuC,UAAkBiR,EAC3B,MAAO1C,GAAS9Q,EAAM3B,EAAS8R,IAMlC,SAAUnQ,EAAM3B,EAAS8R,GACxB,GAAIuD,GAAUtD,EACbuD,GAAa9N,EAAS4N,EAGvB,IAAKtD,GACJ,MAASnQ,EAAOA,EAAMmP,GACrB,IAAuB,IAAlBnP,EAAKuC,UAAkBiR,IACtB1C,EAAS9Q,EAAM3B,EAAS8R,GAC5B,OAAO,MAKV,OAASnQ,EAAOA,EAAMmP,GACrB,GAAuB,IAAlBnP,EAAKuC,UAAkBiR,EAAmB,CAE9C,GADApD,EAAapQ,EAAMyB,KAAczB,EAAMyB,QACjCiS,EAAWtD,EAAYjB,KAC5BuE,EAAU,KAAQ7N,GAAW6N,EAAU,KAAQD,EAG/C,MAAQE,GAAU,GAAMD,EAAU,EAMlC,IAHAtD,EAAYjB,GAAQwE,EAGdA,EAAU,GAAM7C,EAAS9Q,EAAM3B,EAAS8R,GAC7C,OAAO,IASf,QAASyD,IAAgBC,GACxB,MAAOA,GAAS3U,OAAS,EACxB,SAAUc,EAAM3B,EAAS8R,GACxB,GAAIlQ,GAAI4T,EAAS3U,MACjB,OAAQe,IACP,IAAM4T,EAAS5T,GAAID,EAAM3B,EAAS8R,GACjC,OAAO,CAGT,QAAO,GAER0D,EAAS,GAGX,QAASC,IAAkB1V,EAAU2V,EAAUnQ,GAG9C,IAFA,GAAI3D,GAAI,EACPM,EAAMwT,EAAS7U,OACJqB,EAAJN,EAASA,IAChB2E,GAAQxG,EAAU2V,EAAS9T,GAAI2D,EAEhC,OAAOA,GAGR,QAASoQ,IAAUjD,EAAWhR,EAAK+M,EAAQzO,EAAS8R,GAOnD,IANA,GAAInQ,GACHiU,KACAhU,EAAI,EACJM,EAAMwQ,EAAU7R,OAChBgV,EAAgB,MAAPnU,EAEEQ,EAAJN,EAASA,KACVD,EAAO+Q,EAAU9Q,OAChB6M,GAAUA,EAAQ9M,EAAM3B,EAAS8R,MACtC8D,EAAatW,KAAMqC,GACdkU,GACJnU,EAAIpC,KAAMsC,GAMd,OAAOgU,GAGR,QAASE,IAAY5E,EAAWnR,EAAU0S,EAASsD,EAAYC,EAAYC,GAO1E,MANKF,KAAeA,EAAY3S,KAC/B2S,EAAaD,GAAYC,IAErBC,IAAeA,EAAY5S,KAC/B4S,EAAaF,GAAYE,EAAYC,IAE/BvJ,GAAa,SAAU7B,EAAMtF,EAASvF,EAAS8R,GACrD,GAAIoE,GAAMtU,EAAGD,EACZwU,KACAC,KACAC,EAAc9Q,EAAQ1E,OAGtBM,EAAQ0J,GAAQ4K,GAAkB1V,GAAY,IAAKC,EAAQkE,UAAalE,GAAYA,MAGpFsW,GAAYpF,IAAerG,GAAS9K,EAEnCoB,EADAwU,GAAUxU,EAAOgV,EAAQjF,EAAWlR,EAAS8R,GAG9CyE,EAAa9D,EAEZuD,IAAgBnL,EAAOqG,EAAYmF,GAAeN,MAMjDxQ,EACD+Q,CAQF,IALK7D,GACJA,EAAS6D,EAAWC,EAAYvW,EAAS8R,GAIrCiE,EAAa,CACjBG,EAAOP,GAAUY,EAAYH,GAC7BL,EAAYG,KAAUlW,EAAS8R,GAG/BlQ,EAAIsU,EAAKrV,MACT,OAAQe,KACDD,EAAOuU,EAAKtU,MACjB2U,EAAYH,EAAQxU,MAAS0U,EAAWF,EAAQxU,IAAOD,IAK1D,GAAKkJ,GACJ,GAAKmL,GAAc9E,EAAY,CAC9B,GAAK8E,EAAa,CAEjBE,KACAtU,EAAI2U,EAAW1V,MACf,OAAQe,KACDD,EAAO4U,EAAW3U,KAEvBsU,EAAK5W,KAAOgX,EAAU1U,GAAKD,EAG7BqU,GAAY,KAAOO,KAAkBL,EAAMpE,GAI5ClQ,EAAI2U,EAAW1V,MACf,OAAQe,KACDD,EAAO4U,EAAW3U,MACtBsU,EAAOF,EAAazW,EAASsL,EAAMlJ,GAASwU,EAAOvU,IAAM,KAE1DiJ,EAAKqL,KAAU3Q,EAAQ2Q,GAAQvU,SAOlC4U,GAAaZ,GACZY,IAAehR,EACdgR,EAAWjU,OAAQ+T,EAAaE,EAAW1V,QAC3C0V,GAEGP,EACJA,EAAY,KAAMzQ,EAASgR,EAAYzE,GAEvCxS,EAAKuC,MAAO0D,EAASgR,KAMzB,QAASC,IAAmB5B,GAwB3B,IAvBA,GAAI6B,GAAchE,EAAStQ,EAC1BD,EAAM0S,EAAO/T,OACb6V,EAAkBlQ,EAAKoK,SAAUgE,EAAO,GAAG/Q,MAC3C8S,EAAmBD,GAAmBlQ,EAAKoK,SAAS,KACpDhP,EAAI8U,EAAkB,EAAI,EAG1BE,EAAe5B,GAAe,SAAUrT,GACvC,MAAOA,KAAS8U,GACdE,GAAkB,GACrBE,EAAkB7B,GAAe,SAAUrT,GAC1C,MAAOpC,GAASkX,EAAc9U,GAAS,IACrCgV,GAAkB,GACrBnB,GAAa,SAAU7T,EAAM3B,EAAS8R,GACrC,GAAI1Q,IAASsV,IAAqB5E,GAAO9R,IAAY8G,MACnD2P,EAAezW,GAASkE,SACxB0S,EAAcjV,EAAM3B,EAAS8R,GAC7B+E,EAAiBlV,EAAM3B,EAAS8R,GAGlC,OADA2E,GAAe,KACRrV,IAGGc,EAAJN,EAASA,IAChB,GAAM6Q,EAAUjM,EAAKoK,SAAUgE,EAAOhT,GAAGiC,MACxC2R,GAAaR,GAAcO,GAAgBC,GAAY/C,QACjD,CAIN,GAHAA,EAAUjM,EAAKiI,OAAQmG,EAAOhT,GAAGiC,MAAOhC,MAAO,KAAM+S,EAAOhT,GAAGkE,SAG1D2M,EAASrP,GAAY,CAGzB,IADAjB,IAAMP,EACMM,EAAJC,EAASA,IAChB,GAAKqE,EAAKoK,SAAUgE,EAAOzS,GAAG0B,MAC7B,KAGF,OAAOiS,IACNlU,EAAI,GAAK2T,GAAgBC,GACzB5T,EAAI,GAAKmK,GAER6I,EAAOxV,MAAO,EAAGwC,EAAI,GAAIvC,QAAS+F,MAAgC,MAAzBwP,EAAQhT,EAAI,GAAIiC,KAAe,IAAM,MAC7EN,QAASpD,EAAO,MAClBsS,EACItQ,EAAJP,GAAS4U,GAAmB5B,EAAOxV,MAAOwC,EAAGO,IACzCD,EAAJC,GAAWqU,GAAoB5B,EAASA,EAAOxV,MAAO+C,IAClDD,EAAJC,GAAW4J,GAAY6I,IAGzBY,EAASlW,KAAMmT,GAIjB,MAAO8C,IAAgBC,GAGxB,QAASsB,IAA0BC,EAAiBC,GACnD,GAAIC,GAAQD,EAAYnW,OAAS,EAChCqW,EAAYH,EAAgBlW,OAAS,EACrCsW,EAAe,SAAUtM,EAAM7K,EAAS8R,EAAKvM,EAAS6R,GACrD,GAAIzV,GAAMQ,EAAGsQ,EACZ4E,EAAe,EACfzV,EAAI,IACJ8Q,EAAY7H,MACZyM,KACAC,EAAgBzQ,EAEhB3F,EAAQ0J,GAAQqM,GAAa1Q,EAAKgI,KAAU,IAAG,IAAK4I,GAEpDI,EAAiBhQ,GAA4B,MAAjB+P,EAAwB,EAAIlU,KAAKC,UAAY,GACzEpB,EAAMf,EAAMN,MAUb,KARKuW,IACJtQ,EAAmB9G,IAAYnB,GAAYmB,GAOpC4B,IAAMM,GAA4B,OAApBP,EAAOR,EAAMS,IAAaA,IAAM,CACrD,GAAKsV,GAAavV,EAAO,CACxBQ,EAAI,CACJ,OAASsQ,EAAUsE,EAAgB5U,KAClC,GAAKsQ,EAAS9Q,EAAM3B,EAAS8R,GAAQ,CACpCvM,EAAQjG,KAAMqC,EACd,OAGGyV,IACJ5P,EAAUgQ,GAKPP,KAEEtV,GAAQ8Q,GAAW9Q,IACxB0V,IAIIxM,GACJ6H,EAAUpT,KAAMqC,IAOnB,GADA0V,GAAgBzV,EACXqV,GAASrV,IAAMyV,EAAe,CAClClV,EAAI,CACJ,OAASsQ,EAAUuE,EAAY7U,KAC9BsQ,EAASC,EAAW4E,EAAYtX,EAAS8R,EAG1C,IAAKjH,EAAO,CAEX,GAAKwM,EAAe,EACnB,MAAQzV,IACA8Q,EAAU9Q,IAAM0V,EAAW1V,KACjC0V,EAAW1V,GAAKsG,EAAInH,KAAMwE,GAM7B+R,GAAa3B,GAAU2B,GAIxBhY,EAAKuC,MAAO0D,EAAS+R,GAGhBF,IAAcvM,GAAQyM,EAAWzW,OAAS,GAC5CwW,EAAeL,EAAYnW,OAAW,GAExC0F,GAAO4J,WAAY5K,GAUrB,MALK6R,KACJ5P,EAAUgQ,EACV1Q,EAAmByQ,GAGb7E,EAGT,OAAOuE,GACNvK,GAAcyK,GACdA,EA+KF,MA5KAvQ,GAAUL,GAAOK,QAAU,SAAU7G,EAAU+K,GAC9C,GAAIlJ,GACHoV,KACAD,KACAhC,EAASlN,EAAe9H,EAAW,IAEpC,KAAMgV,EAAS,CAERjK,IACLA,EAAQnE,EAAU5G,IAEnB6B,EAAIkJ,EAAMjK,MACV,OAAQe,IACPmT,EAASyB,GAAmB1L,EAAMlJ,IAC7BmT,EAAQ3R,GACZ4T,EAAY1X,KAAMyV,GAElBgC,EAAgBzX,KAAMyV,EAKxBA,GAASlN,EAAe9H,EAAU+W,GAA0BC,EAAiBC,IAG7EjC,EAAOhV,SAAWA,EAEnB,MAAOgV,IAYRlO,EAASN,GAAOM,OAAS,SAAU9G,EAAUC,EAASuF,EAASsF,GAC9D,GAAIjJ,GAAGgT,EAAQ6C,EAAO5T,EAAM2K,EAC3BkJ,EAA+B,kBAAb3X,IAA2BA,EAC7C+K,GAASD,GAAQlE,EAAW5G,EAAW2X,EAAS3X,UAAYA,EAK7D,IAHAwF,EAAUA,MAGY,IAAjBuF,EAAMjK,OAAe,CAIzB,GADA+T,EAAS9J,EAAM,GAAKA,EAAM,GAAG1L,MAAO,GAC/BwV,EAAO/T,OAAS,GAAkC,QAA5B4W,EAAQ7C,EAAO,IAAI/Q,MAC5CjE,EAAQ0O,SAAgC,IAArBtO,EAAQkE,UAAkBiD,GAC7CX,EAAKoK,SAAUgE,EAAO,GAAG/Q,MAAS,CAGnC,GADA7D,GAAYwG,EAAKgI,KAAS,GAAGiJ,EAAM3R,QAAQ,GAAGvC,QAAQ0G,GAAWC,IAAYlK,QAAkB,IACzFA,EACL,MAAOuF,EAGImS,KACX1X,EAAUA,EAAQ8E,YAGnB/E,EAAWA,EAASX,MAAOwV,EAAOnI,QAAQrH,MAAMvE,QAIjDe,EAAIsH,EAAwB,aAAE0C,KAAM7L,GAAa,EAAI6U,EAAO/T,MAC5D,OAAQe,IAAM,CAIb,GAHA6V,EAAQ7C,EAAOhT,GAGV4E,EAAKoK,SAAW/M,EAAO4T,EAAM5T,MACjC,KAED,KAAM2K,EAAOhI,EAAKgI,KAAM3K,MAEjBgH,EAAO2D,EACZiJ,EAAM3R,QAAQ,GAAGvC,QAAS0G,GAAWC,IACrCH,GAAS6B,KAAMgJ,EAAO,GAAG/Q,OAAUmI,GAAahM,EAAQ8E,aAAgB9E,IACpE,CAKJ,GAFA4U,EAAOtS,OAAQV,EAAG,GAClB7B,EAAW8K,EAAKhK,QAAUkL,GAAY6I,IAChC7U,EAEL,MADAT,GAAKuC,MAAO0D,EAASsF,GACdtF,CAGR,SAeJ,OAPEmS,GAAY9Q,EAAS7G,EAAU+K,IAChCD,EACA7K,GACCmH,EACD5B,EACAwE,GAAS6B,KAAM7L,IAAciM,GAAahM,EAAQ8E,aAAgB9E,GAE5DuF,GAMR3F,EAAQ0Q,WAAalN,EAAQkD,MAAM,IAAIjE,KAAMyF,GAAYmE,KAAK,MAAQ7I,EAItExD,EAAQyQ,mBAAqBrJ,EAG7BC,IAIArH,EAAQ6P,aAAe9C,GAAO,SAAUgL,GAEvC,MAAuE,GAAhEA,EAAKtI,wBAAyBxQ,EAAS6F,cAAc,UAMvDiI,GAAO,SAAUC,GAEtB,MADAA,GAAIiC,UAAY,mBAC+B,MAAxCjC,EAAI4D,WAAW3E,aAAa,WAEnCgB,GAAW,yBAA0B,SAAUlL,EAAMc,EAAMiE,GAC1D,MAAMA,GAAN,OACQ/E,EAAKkK,aAAcpJ,EAA6B,SAAvBA,EAAK0C,cAA2B,EAAI,KAOjEvF,EAAQ6I,YAAekE,GAAO,SAAUC,GAG7C,MAFAA,GAAIiC,UAAY,WAChBjC,EAAI4D,WAAW1E,aAAc,QAAS,IACY,KAA3Cc,EAAI4D,WAAW3E,aAAc,YAEpCgB,GAAW,QAAS,SAAUlL,EAAMc,EAAMiE,GACzC,MAAMA,IAAyC,UAAhC/E,EAAKuD,SAASC,cAA7B,OACQxD,EAAKiW,eAOTjL,GAAO,SAAUC,GACtB,MAAuC,OAAhCA,EAAIf,aAAa,eAExBgB,GAAWxE,EAAU,SAAU1G,EAAMc,EAAMiE,GAC1C,GAAIuJ,EACJ,OAAMvJ,GAAN,OACQ/E,EAAMc,MAAW,EAAOA,EAAK0C,eACjC8K,EAAMtO,EAAKgN,iBAAkBlM,KAAWwN,EAAIC,UAC7CD,EAAI7K,MACL,OAKGmB,IAEHvH,EAIJc,GAAO0O,KAAOjI,EACdzG,EAAOgQ,KAAOvJ,EAAOmK,UACrB5Q,EAAOgQ,KAAK,KAAOhQ,EAAOgQ,KAAKpH,QAC/B5I,EAAO+X,OAAStR,EAAO4J,WACvBrQ,EAAO6E,KAAO4B,EAAOE,QACrB3G,EAAOgY,SAAWvR,EAAOG,MACzB5G,EAAOwH,SAAWf,EAAOe,QAIzB,IAAIyQ,GAAgBjY,EAAOgQ,KAAKhF,MAAMpB,aAElCsO,EAAa,6BAIbC,EAAY,gBAGhB,SAASC,GAAQnI,EAAUoI,EAAW3F,GACrC,GAAK1S,EAAOkD,WAAYmV,GACvB,MAAOrY,GAAO6F,KAAMoK,EAAU,SAAUpO,EAAMC,GAE7C,QAASuW,EAAUpX,KAAMY,EAAMC,EAAGD,KAAW6Q,GAK/C,IAAK2F,EAAUjU,SACd,MAAOpE,GAAO6F,KAAMoK,EAAU,SAAUpO,GACvC,MAASA,KAASwW,IAAgB3F,GAKpC,IAA0B,gBAAd2F,GAAyB,CACpC,GAAKF,EAAUrM,KAAMuM,GACpB,MAAOrY,GAAO2O,OAAQ0J,EAAWpI,EAAUyC,EAG5C2F,GAAYrY,EAAO2O,OAAQ0J,EAAWpI,GAGvC,MAAOjQ,GAAO6F,KAAMoK,EAAU,SAAUpO,GACvC,MAASpC,GAAQwB,KAAMoX,EAAWxW,IAAU,IAAQ6Q,IAItD1S,EAAO2O,OAAS,SAAUqB,EAAM3O,EAAOqR,GACtC,GAAI7Q,GAAOR,EAAO,EAMlB,OAJKqR,KACJ1C,EAAO,QAAUA,EAAO,KAGD,IAAjB3O,EAAMN,QAAkC,IAAlBc,EAAKuC,SACjCpE,EAAO0O,KAAKO,gBAAiBpN,EAAMmO,IAAWnO,MAC9C7B,EAAO0O,KAAK1I,QAASgK,EAAMhQ,EAAO6F,KAAMxE,EAAO,SAAUQ,GACxD,MAAyB,KAAlBA,EAAKuC,aAIfpE,EAAOG,GAAGsC,QACTiM,KAAM,SAAUzO,GACf,GAAI6B,GACHM,EAAMjD,KAAK4B,OACXO,KACAgX,EAAOnZ,IAER,IAAyB,gBAAbc,GACX,MAAOd,MAAKiC,UAAWpB,EAAQC,GAAW0O,OAAO,WAChD,IAAM7M,EAAI,EAAOM,EAAJN,EAASA,IACrB,GAAK9B,EAAOwH,SAAU8Q,EAAMxW,GAAK3C,MAChC,OAAO,IAMX,KAAM2C,EAAI,EAAOM,EAAJN,EAASA,IACrB9B,EAAO0O,KAAMzO,EAAUqY,EAAMxW,GAAKR,EAMnC,OAFAA,GAAMnC,KAAKiC,UAAWgB,EAAM,EAAIpC,EAAO+X,OAAQzW,GAAQA,GACvDA,EAAIrB,SAAWd,KAAKc,SAAWd,KAAKc,SAAW,IAAMA,EAAWA,EACzDqB,GAERqN,OAAQ,SAAU1O,GACjB,MAAOd,MAAKiC,UAAWgX,EAAOjZ,KAAMc,OAAgB,KAErDyS,IAAK,SAAUzS,GACd,MAAOd,MAAKiC,UAAWgX,EAAOjZ,KAAMc,OAAgB,KAErDsY,GAAI,SAAUtY,GACb,QAASmY,EACRjZ,KAIoB,gBAAbc,IAAyBgY,EAAcnM,KAAM7L,GACnDD,EAAQC,GACRA,OACD,GACCc,SASJ,IAAIyX,GAKHxO,EAAa,sCAEb5J,EAAOJ,EAAOG,GAAGC,KAAO,SAAUH,EAAUC,GAC3C,GAAI8K,GAAOnJ,CAGX,KAAM5B,EACL,MAAOd,KAIR,IAAyB,gBAAbc,GAAwB,CAUnC,GAPC+K,EAFoB,MAAhB/K,EAAS,IAAkD,MAApCA,EAAUA,EAASc,OAAS,IAAed,EAASc,QAAU,GAE/E,KAAMd,EAAU,MAGlB+J,EAAWwB,KAAMvL,IAIrB+K,IAAUA,EAAM,IAAO9K,EAgDrB,OAAMA,GAAWA,EAAQW,QACtBX,GAAWsY,GAAa9J,KAAMzO,GAKhCd,KAAK2B,YAAaZ,GAAUwO,KAAMzO,EAnDzC,IAAK+K,EAAM,GAAK,CAYf,GAXA9K,EAAUA,YAAmBF,GAASE,EAAQ,GAAKA,EAInDF,EAAOuB,MAAOpC,KAAMa,EAAOyY,UAC1BzN,EAAM,GACN9K,GAAWA,EAAQkE,SAAWlE,EAAQqL,eAAiBrL,EAAUnB,GACjE,IAIImZ,EAAWpM,KAAMd,EAAM,KAAQhL,EAAOmD,cAAejD,GACzD,IAAM8K,IAAS9K,GAETF,EAAOkD,WAAY/D,KAAM6L,IAC7B7L,KAAM6L,GAAS9K,EAAS8K,IAIxB7L,KAAK+Q,KAAMlF,EAAO9K,EAAS8K,GAK9B,OAAO7L,MAgBP,MAZA0C,GAAO9C,EAAS0M,eAAgBT,EAAM,IAIjCnJ,GAAQA,EAAKmD,aAEjB7F,KAAK4B,OAAS,EACd5B,KAAK,GAAK0C,GAGX1C,KAAKe,QAAUnB,EACfI,KAAKc,SAAWA,EACTd,KAcH,MAAKc,GAASmE,UACpBjF,KAAKe,QAAUf,KAAK,GAAKc,EACzBd,KAAK4B,OAAS,EACP5B,MAIIa,EAAOkD,WAAYjD,GACK,mBAArBuY,GAAWE,MACxBF,EAAWE,MAAOzY,GAElBA,EAAUD,IAGeqD,SAAtBpD,EAASA,WACbd,KAAKc,SAAWA,EAASA,SACzBd,KAAKe,QAAUD,EAASC,SAGlBF,EAAOwF,UAAWvF,EAAUd,OAIrCiB,GAAKQ,UAAYZ,EAAOG,GAGxBqY,EAAaxY,EAAQjB,EAGrB,IAAI4Z,GAAe,iCAElBC,GACCC,UAAU,EACVC,UAAU,EACVC,MAAM,EACNC,MAAM,EAGRhZ,GAAOyC,QACNuO,IAAK,SAAUnP,EAAMmP,EAAKiI,GACzB,GAAIxG,MACHyG,EAAqB7V,SAAV4V,CAEZ,QAASpX,EAAOA,EAAMmP,KAA4B,IAAlBnP,EAAKuC,SACpC,GAAuB,IAAlBvC,EAAKuC,SAAiB,CAC1B,GAAK8U,GAAYlZ,EAAQ6B,GAAO0W,GAAIU,GACnC,KAEDxG,GAAQjT,KAAMqC,GAGhB,MAAO4Q,IAGR0G,QAAS,SAAUC,EAAGvX,GAGrB,IAFA,GAAI4Q,MAEI2G,EAAGA,EAAIA,EAAE7L,YACI,IAAf6L,EAAEhV,UAAkBgV,IAAMvX,GAC9B4Q,EAAQjT,KAAM4Z,EAIhB,OAAO3G,MAITzS,EAAOG,GAAGsC,QACToQ,IAAK,SAAU7P,GACd,GAAIqW,GAAUrZ,EAAQgD,EAAQ7D,MAC7Bma,EAAID,EAAQtY,MAEb,OAAO5B,MAAKwP,OAAO,WAElB,IADA,GAAI7M,GAAI,EACIwX,EAAJxX,EAAOA,IACd,GAAK9B,EAAOwH,SAAUrI,KAAMka,EAAQvX,IACnC,OAAO,KAMXyX,QAAS,SAAU3I,EAAW1Q,GAS7B,IARA,GAAIkN,GACHtL,EAAI,EACJwX,EAAIna,KAAK4B,OACT0R,KACA+G,EAAMvB,EAAcnM,KAAM8E,IAAoC,gBAAdA,GAC/C5Q,EAAQ4Q,EAAW1Q,GAAWf,KAAKe,SACnC,EAEUoZ,EAAJxX,EAAOA,IACd,IAAMsL,EAAMjO,KAAK2C,GAAIsL,GAAOA,IAAQlN,EAASkN,EAAMA,EAAIpI,WAEtD,GAAKoI,EAAIhJ,SAAW,KAAOoV,EAC1BA,EAAIC,MAAMrM,GAAO,GAGA,IAAjBA,EAAIhJ,UACHpE,EAAO0O,KAAKO,gBAAgB7B,EAAKwD,IAAc,CAEhD6B,EAAQjT,KAAM4N,EACd,OAKH,MAAOjO,MAAKiC,UAAWqR,EAAQ1R,OAAS,EAAIf,EAAO+X,OAAQtF,GAAYA,IAIxEgH,MAAO,SAAU5X,GAGhB,MAAMA,GAKe,gBAATA,GACJpC,EAAQwB,KAAMjB,EAAQ6B,GAAQ1C,KAAM,IAIrCM,EAAQwB,KAAM9B,KAGpB0C,EAAKhB,OAASgB,EAAM,GAAMA,GAZjB1C,KAAM,IAAOA,KAAM,GAAI6F,WAAe7F,KAAK8C,QAAQyX,UAAU3Y,OAAS,IAgBjF4Y,IAAK,SAAU1Z,EAAUC,GACxB,MAAOf,MAAKiC,UACXpB,EAAO+X,OACN/X,EAAOuB,MAAOpC,KAAK+B,MAAOlB,EAAQC,EAAUC,OAK/C0Z,QAAS,SAAU3Z,GAClB,MAAOd,MAAKwa,IAAiB,MAAZ1Z,EAChBd,KAAKqC,WAAarC,KAAKqC,WAAWmN,OAAO1O,MAK5C,SAASkZ,GAAS/L,EAAK4D,GACtB,OAAS5D,EAAMA,EAAI4D,KAA0B,IAAjB5D,EAAIhJ,UAChC,MAAOgJ,GAGRpN,EAAOyB,MACNuM,OAAQ,SAAUnM,GACjB,GAAImM,GAASnM,EAAKmD,UAClB,OAAOgJ,IAA8B,KAApBA,EAAO5J,SAAkB4J,EAAS,MAEpD6L,QAAS,SAAUhY,GAClB,MAAO7B,GAAOgR,IAAKnP,EAAM,eAE1BiY,aAAc,SAAUjY,EAAMC,EAAGmX,GAChC,MAAOjZ,GAAOgR,IAAKnP,EAAM,aAAcoX,IAExCF,KAAM,SAAUlX,GACf,MAAOsX,GAAStX,EAAM,gBAEvBmX,KAAM,SAAUnX,GACf,MAAOsX,GAAStX,EAAM,oBAEvBkY,QAAS,SAAUlY,GAClB,MAAO7B,GAAOgR,IAAKnP,EAAM,gBAE1B6X,QAAS,SAAU7X,GAClB,MAAO7B,GAAOgR,IAAKnP,EAAM,oBAE1BmY,UAAW,SAAUnY,EAAMC,EAAGmX,GAC7B,MAAOjZ,GAAOgR,IAAKnP,EAAM,cAAeoX,IAEzCgB,UAAW,SAAUpY,EAAMC,EAAGmX,GAC7B,MAAOjZ,GAAOgR,IAAKnP,EAAM,kBAAmBoX,IAE7CiB,SAAU,SAAUrY,GACnB,MAAO7B,GAAOmZ,SAAWtX,EAAKmD,gBAAmB0L,WAAY7O,IAE9DgX,SAAU,SAAUhX,GACnB,MAAO7B,GAAOmZ,QAAStX,EAAK6O,aAE7BoI,SAAU,SAAUjX,GACnB,MAAOA,GAAKsY,iBAAmBna,EAAOuB,SAAWM,EAAK+I,cAErD,SAAUjI,EAAMxC,GAClBH,EAAOG,GAAIwC,GAAS,SAAUsW,EAAOhZ,GACpC,GAAIwS,GAAUzS,EAAO4B,IAAKzC,KAAMgB,EAAI8Y,EAsBpC,OApB0B,UAArBtW,EAAKrD,MAAO,MAChBW,EAAWgZ,GAGPhZ,GAAgC,gBAAbA,KACvBwS,EAAUzS,EAAO2O,OAAQ1O,EAAUwS,IAG/BtT,KAAK4B,OAAS,IAEZ6X,EAAkBjW,IACvB3C,EAAO+X,OAAQtF,GAIXkG,EAAa7M,KAAMnJ,IACvB8P,EAAQ2H,WAIHjb,KAAKiC,UAAWqR,KAGzB,IAAI4H,GAAY,OAKZC,IAGJ,SAASC,GAAe7X,GACvB,GAAI8X,GAASF,EAAc5X,KAI3B,OAHA1C,GAAOyB,KAAMiB,EAAQsI,MAAOqP,OAAmB,SAAUhQ,EAAGoQ,GAC3DD,EAAQC,IAAS,IAEXD,EAyBRxa,EAAO0a,UAAY,SAAUhY,GAI5BA,EAA6B,gBAAZA,GACd4X,EAAc5X,IAAa6X,EAAe7X,GAC5C1C,EAAOyC,UAAYC,EAEpB,IACCiY,GAEAC,EAEAC,EAEAC,EAEAC,EAEAC,EAEA1S,KAEA2S,GAASvY,EAAQwY,SAEjBC,EAAO,SAAUC,GAOhB,IANAT,EAASjY,EAAQiY,QAAUS,EAC3BR,GAAQ,EACRI,EAAcF,GAAe,EAC7BA,EAAc,EACdC,EAAezS,EAAKvH,OACpB8Z,GAAS,EACDvS,GAAsByS,EAAdC,EAA4BA,IAC3C,GAAK1S,EAAM0S,GAAcjZ,MAAOqZ,EAAM,GAAKA,EAAM,OAAU,GAAS1Y,EAAQ2Y,YAAc,CACzFV,GAAS,CACT,OAGFE,GAAS,EACJvS,IACC2S,EACCA,EAAMla,QACVoa,EAAMF,EAAMtO,SAEFgO,EACXrS,KAEAgQ,EAAKgD,YAKRhD,GAECqB,IAAK,WACJ,GAAKrR,EAAO,CAEX,GAAI6J,GAAQ7J,EAAKvH,QACjB,QAAU4Y,GAAKhY,GACd3B,EAAOyB,KAAME,EAAM,SAAU0I,EAAGnE,GAC/B,GAAInC,GAAO/D,EAAO+D,KAAMmC,EACV,cAATnC,EACErB,EAAQqV,QAAWO,EAAKzF,IAAK3M,IAClCoC,EAAK9I,KAAM0G,GAEDA,GAAOA,EAAInF,QAAmB,WAATgD,GAEhC4V,EAAKzT,MAGJlE,WAGC6Y,EACJE,EAAezS,EAAKvH,OAGT4Z,IACXG,EAAc3I,EACdgJ,EAAMR,IAGR,MAAOxb,OAGRoc,OAAQ,WAkBP,MAjBKjT,IACJtI,EAAOyB,KAAMO,UAAW,SAAUqI,EAAGnE,GACpC,GAAIuT,EACJ,QAAUA,EAAQzZ,EAAO2F,QAASO,EAAKoC,EAAMmR,IAAY,GACxDnR,EAAK9F,OAAQiX,EAAO,GAEfoB,IACUE,GAATtB,GACJsB,IAEaC,GAATvB,GACJuB,OAME7b,MAIR0T,IAAK,SAAU1S,GACd,MAAOA,GAAKH,EAAO2F,QAASxF,EAAImI,GAAS,MAASA,IAAQA,EAAKvH,SAGhE+S,MAAO,WAGN,MAFAxL,MACAyS,EAAe,EACR5b,MAGRmc,QAAS,WAER,MADAhT,GAAO2S,EAAQN,EAAStX,OACjBlE,MAGRuU,SAAU,WACT,OAAQpL,GAGTkT,KAAM,WAKL,MAJAP,GAAQ5X,OACFsX,GACLrC,EAAKgD,UAECnc,MAGRsc,OAAQ,WACP,OAAQR,GAGTS,SAAU,SAAUxb,EAASyB,GAU5B,OATK2G,GAAWsS,IAASK,IACxBtZ,EAAOA,MACPA,GAASzB,EAASyB,EAAKrC,MAAQqC,EAAKrC,QAAUqC,GACzCkZ,EACJI,EAAMzb,KAAMmC,GAEZwZ,EAAMxZ,IAGDxC,MAGRgc,KAAM,WAEL,MADA7C,GAAKoD,SAAUvc,KAAM6C,WACd7C,MAGRyb,MAAO,WACN,QAASA,GAIZ,OAAOtC,IAIRtY,EAAOyC,QAENkZ,SAAU,SAAUC,GACnB,GAAIC,KAEA,UAAW,OAAQ7b,EAAO0a,UAAU,eAAgB,aACpD,SAAU,OAAQ1a,EAAO0a,UAAU,eAAgB,aACnD,SAAU,WAAY1a,EAAO0a,UAAU,YAE1CoB,EAAQ,UACRC,GACCD,MAAO,WACN,MAAOA,IAERE,OAAQ,WAEP,MADAC,GAAStU,KAAM3F,WAAYka,KAAMla,WAC1B7C,MAERgd,KAAM,WACL,GAAIC,GAAMpa,SACV,OAAOhC,GAAO2b,SAAS,SAAUU,GAChCrc,EAAOyB,KAAMoa,EAAQ,SAAU/Z,EAAGwa,GACjC,GAAInc,GAAKH,EAAOkD,WAAYkZ,EAAKta,KAASsa,EAAKta,EAE/Cma,GAAUK,EAAM,IAAK,WACpB,GAAIC,GAAWpc,GAAMA,EAAG4B,MAAO5C,KAAM6C,UAChCua,IAAYvc,EAAOkD,WAAYqZ,EAASR,SAC5CQ,EAASR,UACPpU,KAAM0U,EAASG,SACfN,KAAMG,EAASI,QACfC,SAAUL,EAASM,QAErBN,EAAUC,EAAO,GAAM,QAAUnd,OAAS4c,EAAUM,EAASN,UAAY5c,KAAMgB,GAAOoc,GAAava,eAItGoa,EAAM,OACJL,WAIJA,QAAS,SAAUjY,GAClB,MAAc,OAAPA,EAAc9D,EAAOyC,OAAQqB,EAAKiY,GAAYA,IAGvDE,IAwCD,OArCAF,GAAQa,KAAOb,EAAQI,KAGvBnc,EAAOyB,KAAMoa,EAAQ,SAAU/Z,EAAGwa,GACjC,GAAIhU,GAAOgU,EAAO,GACjBO,EAAcP,EAAO,EAGtBP,GAASO,EAAM,IAAOhU,EAAKqR,IAGtBkD,GACJvU,EAAKqR,IAAI,WAERmC,EAAQe,GAGNhB,EAAY,EAAJ/Z,GAAS,GAAIwZ,QAASO,EAAQ,GAAK,GAAIL,MAInDS,EAAUK,EAAM,IAAO,WAEtB,MADAL,GAAUK,EAAM,GAAK,QAAUnd,OAAS8c,EAAWF,EAAU5c,KAAM6C,WAC5D7C,MAER8c,EAAUK,EAAM,GAAK,QAAWhU,EAAKoT,WAItCK,EAAQA,QAASE,GAGZL,GACJA,EAAK3a,KAAMgb,EAAUA,GAIfA,GAIRa,KAAM,SAAUC,GACf,GAAIjb,GAAI,EACPkb,EAAgB1d,EAAM2B,KAAMe,WAC5BjB,EAASic,EAAcjc,OAGvBkc,EAAuB,IAAXlc,GAAkBgc,GAAe/c,EAAOkD,WAAY6Z,EAAYhB,SAAchb,EAAS,EAGnGkb,EAAyB,IAAdgB,EAAkBF,EAAc/c,EAAO2b,WAGlDuB,EAAa,SAAUpb,EAAG8T,EAAUuH,GACnC,MAAO,UAAU7X,GAChBsQ,EAAU9T,GAAM3C,KAChBge,EAAQrb,GAAME,UAAUjB,OAAS,EAAIzB,EAAM2B,KAAMe,WAAcsD,EAC1D6X,IAAWC,EACfnB,EAASoB,WAAYzH,EAAUuH,KACfF,GAChBhB,EAASqB,YAAa1H,EAAUuH,KAKnCC,EAAgBG,EAAkBC,CAGnC,IAAKzc,EAAS,EAIb,IAHAqc,EAAiB,GAAIpZ,OAAOjD,GAC5Bwc,EAAmB,GAAIvZ,OAAOjD,GAC9Byc,EAAkB,GAAIxZ,OAAOjD,GACjBA,EAAJe,EAAYA,IACdkb,EAAelb,IAAO9B,EAAOkD,WAAY8Z,EAAelb,GAAIia,SAChEiB,EAAelb,GAAIia,UACjBpU,KAAMuV,EAAYpb,EAAG0b,EAAiBR,IACtCd,KAAMD,EAASQ,QACfC,SAAUQ,EAAYpb,EAAGyb,EAAkBH,MAE3CH,CAUL,OAJMA,IACLhB,EAASqB,YAAaE,EAAiBR,GAGjCf,EAASF,YAMlB,IAAI0B,EAEJzd,GAAOG,GAAGuY,MAAQ,SAAUvY,GAI3B,MAFAH,GAAO0Y,MAAMqD,UAAUpU,KAAMxH,GAEtBhB,MAGRa,EAAOyC,QAENiB,SAAS,EAITga,UAAW,EAGXC,UAAW,SAAUC,GACfA,EACJ5d,EAAO0d,YAEP1d,EAAO0Y,OAAO,IAKhBA,MAAO,SAAUmF,IAGXA,KAAS,IAAS7d,EAAO0d,UAAY1d,EAAO0D,WAKjD1D,EAAO0D,SAAU,EAGZma,KAAS,KAAU7d,EAAO0d,UAAY,IAK3CD,EAAUH,YAAave,GAAYiB,IAG9BA,EAAOG,GAAG2d,iBACd9d,EAAQjB,GAAW+e,eAAgB,SACnC9d,EAAQjB,GAAWgf,IAAK,cAQ3B,SAASC,KACRjf,EAASkf,oBAAqB,mBAAoBD,GAAW,GAC7D9e,EAAO+e,oBAAqB,OAAQD,GAAW,GAC/Che,EAAO0Y,QAGR1Y,EAAO0Y,MAAMqD,QAAU,SAAUjY,GAqBhC,MApBM2Z,KAELA,EAAYzd,EAAO2b,WAKU,aAAxB5c,EAASmf,WAEbC,WAAYne,EAAO0Y,QAKnB3Z,EAASqP,iBAAkB,mBAAoB4P,GAAW,GAG1D9e,EAAOkP,iBAAkB,OAAQ4P,GAAW,KAGvCP,EAAU1B,QAASjY,IAI3B9D,EAAO0Y,MAAMqD,SAOb,IAAIqC,GAASpe,EAAOoe,OAAS,SAAU/c,EAAOlB,EAAIsM,EAAKnH,EAAO+Y,EAAWC,EAAUC,GAClF,GAAIzc,GAAI,EACPM,EAAMf,EAAMN,OACZyd,EAAc,MAAP/R,CAGR,IAA4B,WAAvBzM,EAAO+D,KAAM0I,GAAqB,CACtC4R,GAAY,CACZ,KAAMvc,IAAK2K,GACVzM,EAAOoe,OAAQ/c,EAAOlB,EAAI2B,EAAG2K,EAAI3K,IAAI,EAAMwc,EAAUC,OAIhD,IAAelb,SAAViC,IACX+Y,GAAY,EAENre,EAAOkD,WAAYoC,KACxBiZ,GAAM,GAGFC,IAECD,GACJpe,EAAGc,KAAMI,EAAOiE,GAChBnF,EAAK,OAILqe,EAAOre,EACPA,EAAK,SAAU0B,EAAM4K,EAAKnH,GACzB,MAAOkZ,GAAKvd,KAAMjB,EAAQ6B,GAAQyD,MAKhCnF,GACJ,KAAYiC,EAAJN,EAASA,IAChB3B,EAAIkB,EAAMS,GAAI2K,EAAK8R,EAAMjZ,EAAQA,EAAMrE,KAAMI,EAAMS,GAAIA,EAAG3B,EAAIkB,EAAMS,GAAI2K,IAK3E,OAAO4R,GACNhd,EAGAmd,EACCre,EAAGc,KAAMI,GACTe,EAAMjC,EAAIkB,EAAM,GAAIoL,GAAQ6R,EAO/Bte,GAAOye,WAAa,SAAUC,GAQ7B,MAA0B,KAAnBA,EAAMta,UAAqC,IAAnBsa,EAAMta,YAAsBsa,EAAMta,SAIlE,SAASua,KAIRjZ,OAAOkZ,eAAgBzf,KAAKqN,SAAY,GACvCtL,IAAK,WACJ,YAIF/B,KAAKmE,QAAUtD,EAAOsD,QAAUqb,EAAKE,MAGtCF,EAAKE,IAAM,EACXF,EAAKG,QAAU9e,EAAOye,WAEtBE,EAAK/d,WACJ6L,IAAK,SAAUiS,GAId,IAAMC,EAAKG,QAASJ,GACnB,MAAO,EAGR,IAAIK,MAEHC,EAASN,EAAOvf,KAAKmE,QAGtB,KAAM0b,EAAS,CACdA,EAASL,EAAKE,KAGd,KACCE,EAAY5f,KAAKmE,UAAcgC,MAAO0Z,GACtCtZ,OAAOuZ,iBAAkBP,EAAOK,GAI/B,MAAQlU,GACTkU,EAAY5f,KAAKmE,SAAY0b,EAC7Bhf,EAAOyC,OAAQic,EAAOK,IASxB,MAJM5f,MAAKqN,MAAOwS,KACjB7f,KAAKqN,MAAOwS,OAGNA,GAERE,IAAK,SAAUR,EAAOtD,EAAM9V,GAC3B,GAAI6Z,GAIHH,EAAS7f,KAAKsN,IAAKiS,GACnBlS,EAAQrN,KAAKqN,MAAOwS,EAGrB,IAAqB,gBAAT5D,GACX5O,EAAO4O,GAAS9V,MAKhB,IAAKtF,EAAOqE,cAAemI,GAC1BxM,EAAOyC,OAAQtD,KAAKqN,MAAOwS,GAAU5D,OAGrC,KAAM+D,IAAQ/D,GACb5O,EAAO2S,GAAS/D,EAAM+D,EAIzB,OAAO3S,IAERtL,IAAK,SAAUwd,EAAOjS,GAKrB,GAAID,GAAQrN,KAAKqN,MAAOrN,KAAKsN,IAAKiS,GAElC,OAAerb,UAARoJ,EACND,EAAQA,EAAOC,IAEjB2R,OAAQ,SAAUM,EAAOjS,EAAKnH,GAC7B,GAAI8Z,EAYJ,OAAa/b,UAARoJ,GACDA,GAAsB,gBAARA,IAA+BpJ,SAAViC,GAEtC8Z,EAASjgB,KAAK+B,IAAKwd,EAAOjS,GAERpJ,SAAX+b,EACNA,EAASjgB,KAAK+B,IAAKwd,EAAO1e,EAAOkF,UAAUuH,MAS7CtN,KAAK+f,IAAKR,EAAOjS,EAAKnH,GAILjC,SAAViC,EAAsBA,EAAQmH,IAEtC8O,OAAQ,SAAUmD,EAAOjS,GACxB,GAAI3K,GAAGa,EAAM0c,EACZL,EAAS7f,KAAKsN,IAAKiS,GACnBlS,EAAQrN,KAAKqN,MAAOwS,EAErB,IAAa3b,SAARoJ,EACJtN,KAAKqN,MAAOwS,UAEN,CAEDhf,EAAOoD,QAASqJ,GAOpB9J,EAAO8J,EAAIlN,OAAQkN,EAAI7K,IAAK5B,EAAOkF,aAEnCma,EAAQrf,EAAOkF,UAAWuH,GAErBA,IAAOD,GACX7J,GAAS8J,EAAK4S,IAId1c,EAAO0c,EACP1c,EAAOA,IAAQ6J,IACZ7J,GAAWA,EAAKqI,MAAOqP,SAI5BvY,EAAIa,EAAK5B,MACT,OAAQe,UACA0K,GAAO7J,EAAMb,MAIvBwd,QAAS,SAAUZ,GAClB,OAAQ1e,EAAOqE,cACdlF,KAAKqN,MAAOkS,EAAOvf,KAAKmE,gBAG1Bic,QAAS,SAAUb,GACbA,EAAOvf,KAAKmE,gBACTnE,MAAKqN,MAAOkS,EAAOvf,KAAKmE,WAIlC,IAAIkc,GAAY,GAAIb,GAEhBc,EAAY,GAAId,GAchBe,EAAS,gCACZC,EAAa,UAEd,SAASC,GAAU/d,EAAM4K,EAAK2O,GAC7B,GAAIzY,EAIJ,IAAcU,SAAT+X,GAAwC,IAAlBvZ,EAAKuC,SAI/B,GAHAzB,EAAO,QAAU8J,EAAIhJ,QAASkc,EAAY,OAAQta,cAClD+V,EAAOvZ,EAAKkK,aAAcpJ,GAEL,gBAATyY,GAAoB,CAC/B,IACCA,EAAgB,SAATA,GAAkB,EACf,UAATA,GAAmB,EACV,SAATA,EAAkB,MAEjBA,EAAO,KAAOA,GAAQA,EACvBsE,EAAO5T,KAAMsP,GAASpb,EAAO6f,UAAWzE,GACxCA,EACA,MAAOvQ,IAGT4U,EAAUP,IAAKrd,EAAM4K,EAAK2O,OAE1BA,GAAO/X,MAGT,OAAO+X,GAGRpb,EAAOyC,QACN6c,QAAS,SAAUzd,GAClB,MAAO4d,GAAUH,QAASzd,IAAU2d,EAAUF,QAASzd,IAGxDuZ,KAAM,SAAUvZ,EAAMc,EAAMyY;AAC3B,MAAOqE,GAAUrB,OAAQvc,EAAMc,EAAMyY,IAGtC0E,WAAY,SAAUje,EAAMc,GAC3B8c,EAAUlE,OAAQ1Z,EAAMc,IAKzBod,MAAO,SAAUle,EAAMc,EAAMyY,GAC5B,MAAOoE,GAAUpB,OAAQvc,EAAMc,EAAMyY,IAGtC4E,YAAa,SAAUne,EAAMc,GAC5B6c,EAAUjE,OAAQ1Z,EAAMc,MAI1B3C,EAAOG,GAAGsC,QACT2Y,KAAM,SAAU3O,EAAKnH,GACpB,GAAIxD,GAAGa,EAAMyY,EACZvZ,EAAO1C,KAAM,GACb6N,EAAQnL,GAAQA,EAAK8G,UAGtB,IAAatF,SAARoJ,EAAoB,CACxB,GAAKtN,KAAK4B,SACTqa,EAAOqE,EAAUve,IAAKW,GAEC,IAAlBA,EAAKuC,WAAmBob,EAAUte,IAAKW,EAAM,iBAAmB,CACpEC,EAAIkL,EAAMjM,MACV,OAAQe,IAIFkL,EAAOlL,KACXa,EAAOqK,EAAOlL,GAAIa,KACe,IAA5BA,EAAKlD,QAAS,WAClBkD,EAAO3C,EAAOkF,UAAWvC,EAAKrD,MAAM,IACpCsgB,EAAU/d,EAAMc,EAAMyY,EAAMzY,KAI/B6c,GAAUN,IAAKrd,EAAM,gBAAgB,GAIvC,MAAOuZ,GAIR,MAAoB,gBAAR3O,GACJtN,KAAKsC,KAAK,WAChBge,EAAUP,IAAK/f,KAAMsN,KAIhB2R,EAAQjf,KAAM,SAAUmG,GAC9B,GAAI8V,GACH6E,EAAWjgB,EAAOkF,UAAWuH,EAO9B,IAAK5K,GAAkBwB,SAAViC,EAAb,CAIC,GADA8V,EAAOqE,EAAUve,IAAKW,EAAM4K,GACdpJ,SAAT+X,EACJ,MAAOA,EAMR,IADAA,EAAOqE,EAAUve,IAAKW,EAAMoe,GACd5c,SAAT+X,EACJ,MAAOA,EAMR,IADAA,EAAOwE,EAAU/d,EAAMoe,EAAU5c,QACnBA,SAAT+X,EACJ,MAAOA,OAQTjc,MAAKsC,KAAK,WAGT,GAAI2Z,GAAOqE,EAAUve,IAAK/B,KAAM8gB,EAKhCR,GAAUP,IAAK/f,KAAM8gB,EAAU3a,GAKL,KAArBmH,EAAIhN,QAAQ,MAAwB4D,SAAT+X,GAC/BqE,EAAUP,IAAK/f,KAAMsN,EAAKnH,MAG1B,KAAMA,EAAOtD,UAAUjB,OAAS,EAAG,MAAM,IAG7C+e,WAAY,SAAUrT,GACrB,MAAOtN,MAAKsC,KAAK,WAChBge,EAAUlE,OAAQpc,KAAMsN,QAM3BzM,EAAOyC,QACNyd,MAAO,SAAUre,EAAMkC,EAAMqX,GAC5B,GAAI8E,EAEJ,OAAKre,IACJkC,GAASA,GAAQ,MAAS,QAC1Bmc,EAAQV,EAAUte,IAAKW,EAAMkC,GAGxBqX,KACE8E,GAASlgB,EAAOoD,QAASgY,GAC9B8E,EAAQV,EAAUpB,OAAQvc,EAAMkC,EAAM/D,EAAOwF,UAAU4V,IAEvD8E,EAAM1gB,KAAM4b,IAGP8E,OAZR,QAgBDC,QAAS,SAAUte,EAAMkC,GACxBA,EAAOA,GAAQ,IAEf,IAAImc,GAAQlgB,EAAOkgB,MAAOre,EAAMkC,GAC/Bqc,EAAcF,EAAMnf,OACpBZ,EAAK+f,EAAMvT,QACX0T,EAAQrgB,EAAOsgB,YAAaze,EAAMkC,GAClCgV,EAAO,WACN/Y,EAAOmgB,QAASte,EAAMkC,GAIZ,gBAAP5D,IACJA,EAAK+f,EAAMvT,QACXyT,KAGIjgB,IAIU,OAAT4D,GACJmc,EAAMnQ,QAAS,oBAITsQ,GAAME,KACbpgB,EAAGc,KAAMY,EAAMkX,EAAMsH,KAGhBD,GAAeC,GACpBA,EAAMvM,MAAMqH,QAKdmF,YAAa,SAAUze,EAAMkC,GAC5B,GAAI0I,GAAM1I,EAAO,YACjB,OAAOyb,GAAUte,IAAKW,EAAM4K,IAAS+S,EAAUpB,OAAQvc,EAAM4K,GAC5DqH,MAAO9T,EAAO0a,UAAU,eAAef,IAAI,WAC1C6F,EAAUjE,OAAQ1Z,GAAQkC,EAAO,QAAS0I,WAM9CzM,EAAOG,GAAGsC,QACTyd,MAAO,SAAUnc,EAAMqX,GACtB,GAAIoF,GAAS,CAQb,OANqB,gBAATzc,KACXqX,EAAOrX,EACPA,EAAO,KACPyc,KAGIxe,UAAUjB,OAASyf,EAChBxgB,EAAOkgB,MAAO/gB,KAAK,GAAI4E,GAGfV,SAAT+X,EACNjc,KACAA,KAAKsC,KAAK,WACT,GAAIye,GAAQlgB,EAAOkgB,MAAO/gB,KAAM4E,EAAMqX,EAGtCpb,GAAOsgB,YAAanhB,KAAM4E,GAEZ,OAATA,GAA8B,eAAbmc,EAAM,IAC3BlgB,EAAOmgB,QAAShhB,KAAM4E,MAI1Boc,QAAS,SAAUpc,GAClB,MAAO5E,MAAKsC,KAAK,WAChBzB,EAAOmgB,QAAShhB,KAAM4E,MAGxB0c,WAAY,SAAU1c,GACrB,MAAO5E,MAAK+gB,MAAOnc,GAAQ,UAI5BgY,QAAS,SAAUhY,EAAMD,GACxB,GAAIuC,GACHqa,EAAQ,EACRC,EAAQ3gB,EAAO2b,WACf1L,EAAW9Q,KACX2C,EAAI3C,KAAK4B,OACTyb,EAAU,aACCkE,GACTC,EAAMrD,YAAarN,GAAYA,IAIb,iBAATlM,KACXD,EAAMC,EACNA,EAAOV,QAERU,EAAOA,GAAQ,IAEf,OAAQjC,IACPuE,EAAMmZ,EAAUte,IAAK+O,EAAUnO,GAAKiC,EAAO,cACtCsC,GAAOA,EAAIyN,QACf4M,IACAra,EAAIyN,MAAM6F,IAAK6C,GAIjB,OADAA,KACOmE,EAAM5E,QAASjY,KAGxB,IAAI8c,GAAO,sCAAwCC,OAE/CC,GAAc,MAAO,QAAS,SAAU,QAExCC,EAAW,SAAUlf,EAAMmf,GAI7B,MADAnf,GAAOmf,GAAMnf,EAC4B,SAAlC7B,EAAOihB,IAAKpf,EAAM,aAA2B7B,EAAOwH,SAAU3F,EAAK0J,cAAe1J,IAGvFqf,EAAiB,yBAIrB,WACC,GAAIC,GAAWpiB,EAASqiB,yBACvBtU,EAAMqU,EAASpc,YAAahG,EAAS6F,cAAe,QACpDoK,EAAQjQ,EAAS6F,cAAe,QAMjCoK,GAAMhD,aAAc,OAAQ,SAC5BgD,EAAMhD,aAAc,UAAW,WAC/BgD,EAAMhD,aAAc,OAAQ,KAE5Bc,EAAI/H,YAAaiK,GAIjBlP,EAAQuhB,WAAavU,EAAIwU,WAAW,GAAOA,WAAW,GAAOjP,UAAUsB,QAIvE7G,EAAIiC,UAAY,yBAChBjP,EAAQyhB,iBAAmBzU,EAAIwU,WAAW,GAAOjP,UAAUyF,eAE5D,IAAI0J,GAAe,WAInB1hB,GAAQ2hB,eAAiB,aAAeviB,EAGxC,IACCwiB,GAAY,OACZC,EAAc,uCACdC,EAAc,kCACdC,EAAiB,sBAElB,SAASC,KACR,OAAO,EAGR,QAASC,KACR,OAAO,EAGR,QAASC,KACR,IACC,MAAOjjB,GAASsU,cACf,MAAQ4O,KAOXjiB,EAAOkiB,OAENvjB,UAEAgb,IAAK,SAAU9X,EAAMsgB,EAAOlV,EAASmO,EAAMnb,GAE1C,GAAImiB,GAAaC,EAAahc,EAC7Bic,EAAQC,EAAGC,EACXC,EAASC,EAAU3e,EAAM4e,EAAYC,EACrCC,EAAWrD,EAAUte,IAAKW,EAG3B,IAAMghB,EAAN,CAKK5V,EAAQA,UACZmV,EAAcnV,EACdA,EAAUmV,EAAYnV,QACtBhN,EAAWmiB,EAAYniB,UAIlBgN,EAAQ9G,OACb8G,EAAQ9G,KAAOnG,EAAOmG,SAIhBmc,EAASO,EAASP,UACxBA,EAASO,EAASP,YAEZD,EAAcQ,EAASC,UAC7BT,EAAcQ,EAASC,OAAS,SAAUjY,GAGzC,aAAc7K,KAAWwhB,GAAgBxhB,EAAOkiB,MAAMa,YAAclY,EAAE9G,KACrE/D,EAAOkiB,MAAMc,SAASjhB,MAAOF,EAAMG,WAAcqB,SAKpD8e,GAAUA,GAAS,IAAKnX,MAAOqP,KAAiB,IAChDkI,EAAIJ,EAAMphB,MACV,OAAQwhB,IACPlc,EAAMwb,EAAerW,KAAM2W,EAAMI,QACjCxe,EAAO6e,EAAWvc,EAAI,GACtBsc,GAAetc,EAAI,IAAM,IAAKG,MAAO,KAAMjE,OAGrCwB,IAKN0e,EAAUziB,EAAOkiB,MAAMO,QAAS1e,OAGhCA,GAAS9D,EAAWwiB,EAAQQ,aAAeR,EAAQS,WAAcnf,EAGjE0e,EAAUziB,EAAOkiB,MAAMO,QAAS1e,OAGhCye,EAAYxiB,EAAOyC,QAClBsB,KAAMA,EACN6e,SAAUA,EACVxH,KAAMA,EACNnO,QAASA,EACT9G,KAAM8G,EAAQ9G,KACdlG,SAAUA,EACV2J,aAAc3J,GAAYD,EAAOgQ,KAAKhF,MAAMpB,aAAakC,KAAM7L,GAC/DkjB,UAAWR,EAAWxW,KAAK,MACzBiW,IAGIM,EAAWJ,EAAQve,MACzB2e,EAAWJ,EAAQve,MACnB2e,EAASU,cAAgB,EAGnBX,EAAQY,OAASZ,EAAQY,MAAMpiB,KAAMY,EAAMuZ,EAAMuH,EAAYN,MAAkB,GAC/ExgB,EAAKuM,kBACTvM,EAAKuM,iBAAkBrK,EAAMse,GAAa,IAKxCI,EAAQ9I,MACZ8I,EAAQ9I,IAAI1Y,KAAMY,EAAM2gB,GAElBA,EAAUvV,QAAQ9G,OACvBqc,EAAUvV,QAAQ9G,KAAO8G,EAAQ9G,OAK9BlG,EACJyiB,EAASlgB,OAAQkgB,EAASU,gBAAiB,EAAGZ,GAE9CE,EAASljB,KAAMgjB,GAIhBxiB,EAAOkiB,MAAMvjB,OAAQoF,IAAS,KAMhCwX,OAAQ,SAAU1Z,EAAMsgB,EAAOlV,EAAShN,EAAUqjB,GAEjD,GAAIjhB,GAAGkhB,EAAWld,EACjBic,EAAQC,EAAGC,EACXC,EAASC,EAAU3e,EAAM4e,EAAYC,EACrCC,EAAWrD,EAAUF,QAASzd,IAAU2d,EAAUte,IAAKW,EAExD,IAAMghB,IAAcP,EAASO,EAASP,QAAtC,CAKAH,GAAUA,GAAS,IAAKnX,MAAOqP,KAAiB,IAChDkI,EAAIJ,EAAMphB,MACV,OAAQwhB,IAMP,GALAlc,EAAMwb,EAAerW,KAAM2W,EAAMI,QACjCxe,EAAO6e,EAAWvc,EAAI,GACtBsc,GAAetc,EAAI,IAAM,IAAKG,MAAO,KAAMjE,OAGrCwB,EAAN,CAOA0e,EAAUziB,EAAOkiB,MAAMO,QAAS1e,OAChCA,GAAS9D,EAAWwiB,EAAQQ,aAAeR,EAAQS,WAAcnf,EACjE2e,EAAWJ,EAAQve,OACnBsC,EAAMA,EAAI,IAAM,GAAIyC,QAAQ,UAAY6Z,EAAWxW,KAAK,iBAAmB,WAG3EoX,EAAYlhB,EAAIqgB,EAAS3hB,MACzB,OAAQsB,IACPmgB,EAAYE,EAAUrgB,IAEfihB,GAAeV,IAAaJ,EAAUI,UACzC3V,GAAWA,EAAQ9G,OAASqc,EAAUrc,MACtCE,IAAOA,EAAIyF,KAAM0W,EAAUW,YAC3BljB,GAAYA,IAAauiB,EAAUviB,WAAyB,OAAbA,IAAqBuiB,EAAUviB,YACjFyiB,EAASlgB,OAAQH,EAAG,GAEfmgB,EAAUviB,UACdyiB,EAASU,gBAELX,EAAQlH,QACZkH,EAAQlH,OAAOta,KAAMY,EAAM2gB,GAOzBe,KAAcb,EAAS3hB,SACrB0hB,EAAQe,UAAYf,EAAQe,SAASviB,KAAMY,EAAM8gB,EAAYE,EAASC,WAAa,GACxF9iB,EAAOyjB,YAAa5hB,EAAMkC,EAAM8e,EAASC,cAGnCR,GAAQve,QAtCf,KAAMA,IAAQue,GACbtiB,EAAOkiB,MAAM3G,OAAQ1Z,EAAMkC,EAAOoe,EAAOI,GAAKtV,EAAShN,GAAU,EA0C/DD,GAAOqE,cAAeie,WACnBO,GAASC,OAChBtD,EAAUjE,OAAQ1Z,EAAM,aAI1B6hB,QAAS,SAAUxB,EAAO9G,EAAMvZ,EAAM8hB,GAErC,GAAI7hB,GAAGsL,EAAK/G,EAAKud,EAAYC,EAAQf,EAAQL,EAC5CqB,GAAcjiB,GAAQ9C,GACtBgF,EAAOnE,EAAOqB,KAAMihB,EAAO,QAAWA,EAAMne,KAAOme,EACnDS,EAAa/iB,EAAOqB,KAAMihB,EAAO,aAAgBA,EAAMiB,UAAU3c,MAAM,OAKxE,IAHA4G,EAAM/G,EAAMxE,EAAOA,GAAQ9C,EAGJ,IAAlB8C,EAAKuC,UAAoC,IAAlBvC,EAAKuC,WAK5Bwd,EAAY9V,KAAM/H,EAAO/D,EAAOkiB,MAAMa,aAItChf,EAAKtE,QAAQ,MAAQ,IAEzBkjB,EAAa5e,EAAKyC,MAAM,KACxBzC,EAAO4e,EAAWhW,QAClBgW,EAAWpgB,QAEZshB,EAAS9f,EAAKtE,QAAQ,KAAO,GAAK,KAAOsE,EAGzCme,EAAQA,EAAOliB,EAAOsD,SACrB4e,EACA,GAAIliB,GAAO+jB,MAAOhgB,EAAuB,gBAAVme,IAAsBA,GAGtDA,EAAM8B,UAAYL,EAAe,EAAI,EACrCzB,EAAMiB,UAAYR,EAAWxW,KAAK,KAClC+V,EAAM+B,aAAe/B,EAAMiB,UAC1B,GAAIra,QAAQ,UAAY6Z,EAAWxW,KAAK,iBAAmB,WAC3D,KAGD+V,EAAMvQ,OAAStO,OACT6e,EAAMlf,SACXkf,EAAMlf,OAASnB,GAIhBuZ,EAAe,MAARA,GACJ8G,GACFliB,EAAOwF,UAAW4V,GAAQ8G,IAG3BO,EAAUziB,EAAOkiB,MAAMO,QAAS1e,OAC1B4f,IAAgBlB,EAAQiB,SAAWjB,EAAQiB,QAAQ3hB,MAAOF,EAAMuZ,MAAW,GAAjF,CAMA,IAAMuI,IAAiBlB,EAAQyB,WAAalkB,EAAOiE,SAAUpC,GAAS,CAMrE,IAJA+hB,EAAanB,EAAQQ,cAAgBlf,EAC/B6d,EAAY9V,KAAM8X,EAAa7f,KACpCqJ,EAAMA,EAAIpI,YAEHoI,EAAKA,EAAMA,EAAIpI,WACtB8e,EAAUtkB,KAAM4N,GAChB/G,EAAM+G,CAIF/G,MAASxE,EAAK0J,eAAiBxM,IACnC+kB,EAAUtkB,KAAM6G,EAAI6H,aAAe7H,EAAI8d,cAAgBjlB,GAKzD4C,EAAI,CACJ,QAASsL,EAAM0W,EAAUhiB,QAAUogB,EAAMkC,uBAExClC,EAAMne,KAAOjC,EAAI,EAChB8hB,EACAnB,EAAQS,UAAYnf,EAGrB+e,GAAWtD,EAAUte,IAAKkM,EAAK,eAAoB8U,EAAMne,OAAUyb,EAAUte,IAAKkM,EAAK,UAClF0V,GACJA,EAAO/gB,MAAOqL,EAAKgO,GAIpB0H,EAASe,GAAUzW,EAAKyW,GACnBf,GAAUA,EAAO/gB,OAAS/B,EAAOye,WAAYrR,KACjD8U,EAAMvQ,OAASmR,EAAO/gB,MAAOqL,EAAKgO,GAC7B8G,EAAMvQ,UAAW,GACrBuQ,EAAMmC,iBAmCT,OA/BAnC,GAAMne,KAAOA,EAGP4f,GAAiBzB,EAAMoC,sBAErB7B,EAAQ8B,UAAY9B,EAAQ8B,SAASxiB,MAAO+hB,EAAU1b,MAAOgT,MAAW,IAC9Epb,EAAOye,WAAY5c,IAIdgiB,GAAU7jB,EAAOkD,WAAYrB,EAAMkC,MAAa/D,EAAOiE,SAAUpC,KAGrEwE,EAAMxE,EAAMgiB,GAEPxd,IACJxE,EAAMgiB,GAAW,MAIlB7jB,EAAOkiB,MAAMa,UAAYhf,EACzBlC,EAAMkC,KACN/D,EAAOkiB,MAAMa,UAAY1f,OAEpBgD,IACJxE,EAAMgiB,GAAWxd,IAMd6b,EAAMvQ,SAGdqR,SAAU,SAAUd,GAGnBA,EAAQliB,EAAOkiB,MAAMsC,IAAKtC,EAE1B,IAAIpgB,GAAGO,EAAGf,EAAKmR,EAAS+P,EACvBiC,KACA9iB,EAAOrC,EAAM2B,KAAMe,WACnB0gB,GAAalD,EAAUte,IAAK/B,KAAM,eAAoB+iB,EAAMne,UAC5D0e,EAAUziB,EAAOkiB,MAAMO,QAASP,EAAMne,SAOvC,IAJApC,EAAK,GAAKugB,EACVA,EAAMwC,eAAiBvlB,MAGlBsjB,EAAQkC,aAAelC,EAAQkC,YAAY1jB,KAAM9B,KAAM+iB,MAAY,EAAxE,CAKAuC,EAAezkB,EAAOkiB,MAAMQ,SAASzhB,KAAM9B,KAAM+iB,EAAOQ,GAGxD5gB,EAAI,CACJ,QAAS2Q,EAAUgS,EAAc3iB,QAAWogB,EAAMkC,uBAAyB,CAC1ElC,EAAM0C,cAAgBnS,EAAQ5Q,KAE9BQ,EAAI,CACJ,QAASmgB,EAAY/P,EAAQiQ,SAAUrgB,QAAW6f,EAAM2C,kCAIjD3C,EAAM+B,cAAgB/B,EAAM+B,aAAanY,KAAM0W,EAAUW,cAE9DjB,EAAMM,UAAYA,EAClBN,EAAM9G,KAAOoH,EAAUpH,KAEvB9Z,IAAStB,EAAOkiB,MAAMO,QAASD,EAAUI,eAAkBE,QAAUN,EAAUvV,SAC5ElL,MAAO0Q,EAAQ5Q,KAAMF,GAEX0B,SAAR/B,IACE4gB,EAAMvQ,OAASrQ,MAAS,IAC7B4gB,EAAMmC,iBACNnC,EAAM4C,oBAYX,MAJKrC,GAAQsC,cACZtC,EAAQsC,aAAa9jB,KAAM9B,KAAM+iB,GAG3BA,EAAMvQ,SAGd+Q,SAAU,SAAUR,EAAOQ,GAC1B,GAAI5gB,GAAGkE,EAASgf,EAAKxC,EACpBiC,KACArB,EAAgBV,EAASU,cACzBhW,EAAM8U,EAAMlf,MAKb,IAAKogB,GAAiBhW,EAAIhJ,YAAc8d,EAAMlO,QAAyB,UAAfkO,EAAMne,MAE7D,KAAQqJ,IAAQjO,KAAMiO,EAAMA,EAAIpI,YAAc7F,KAG7C,GAAKiO,EAAIsG,YAAa,GAAuB,UAAfwO,EAAMne,KAAmB,CAEtD,IADAiC,KACMlE,EAAI,EAAOshB,EAAJthB,EAAmBA,IAC/B0gB,EAAYE,EAAU5gB,GAGtBkjB,EAAMxC,EAAUviB,SAAW,IAEHoD,SAAnB2C,EAASgf,KACbhf,EAASgf,GAAQxC,EAAU5Y,aAC1B5J,EAAQglB,EAAK7lB,MAAOsa,MAAOrM,IAAS,EACpCpN,EAAO0O,KAAMsW,EAAK7lB,KAAM,MAAQiO,IAAQrM,QAErCiF,EAASgf,IACbhf,EAAQxG,KAAMgjB,EAGXxc,GAAQjF,QACZ0jB,EAAajlB,MAAOqC,KAAMuL,EAAKsV,SAAU1c,IAW7C,MAJKod,GAAgBV,EAAS3hB,QAC7B0jB,EAAajlB,MAAOqC,KAAM1C,KAAMujB,SAAUA,EAASpjB,MAAO8jB,KAGpDqB,GAIRQ,MAAO,wHAAwHze,MAAM,KAErI0e,YAEAC,UACCF,MAAO,4BAA4Bze,MAAM,KACzCmI,OAAQ,SAAUuT,EAAOkD,GAOxB,MAJoB,OAAflD,EAAMmD,QACVnD,EAAMmD,MAA6B,MAArBD,EAASE,SAAmBF,EAASE,SAAWF,EAASG,SAGjErD,IAITsD,YACCP,MAAO,uFAAuFze,MAAM,KACpGmI,OAAQ,SAAUuT,EAAOkD,GACxB,GAAIK,GAAUxX,EAAKyX,EAClB1R,EAASoR,EAASpR,MAkBnB,OAfoB,OAAfkO,EAAMyD,OAAqC,MAApBP,EAASQ,UACpCH,EAAWvD,EAAMlf,OAAOuI,eAAiBxM,EACzCkP,EAAMwX,EAAS5X,gBACf6X,EAAOD,EAASC,KAEhBxD,EAAMyD,MAAQP,EAASQ,SAAY3X,GAAOA,EAAI4X,YAAcH,GAAQA,EAAKG,YAAc,IAAQ5X,GAAOA,EAAI6X,YAAcJ,GAAQA,EAAKI,YAAc,GACnJ5D,EAAM6D,MAAQX,EAASY,SAAY/X,GAAOA,EAAIgY,WAAcP,GAAQA,EAAKO,WAAc,IAAQhY,GAAOA,EAAIiY,WAAcR,GAAQA,EAAKQ,WAAc,IAK9IhE,EAAMmD,OAAoBhiB,SAAX2Q,IACpBkO,EAAMmD,MAAmB,EAATrR,EAAa,EAAe,EAATA,EAAa,EAAe,EAATA,EAAa,EAAI,GAGjEkO,IAITsC,IAAK,SAAUtC,GACd,GAAKA,EAAOliB,EAAOsD,SAClB,MAAO4e,EAIR,IAAIpgB,GAAGqd,EAAMtc,EACZkB,EAAOme,EAAMne,KACboiB,EAAgBjE,EAChBkE,EAAUjnB,KAAK+lB,SAAUnhB,EAEpBqiB,KACLjnB,KAAK+lB,SAAUnhB,GAASqiB,EACvBzE,EAAY7V,KAAM/H,GAAS5E,KAAKqmB,WAChC9D,EAAU5V,KAAM/H,GAAS5E,KAAKgmB,aAGhCtiB,EAAOujB,EAAQnB,MAAQ9lB,KAAK8lB,MAAM1lB,OAAQ6mB,EAAQnB,OAAU9lB,KAAK8lB,MAEjE/C,EAAQ,GAAIliB,GAAO+jB,MAAOoC,GAE1BrkB,EAAIe,EAAK9B,MACT,OAAQe,IACPqd,EAAOtc,EAAMf,GACbogB,EAAO/C,GAASgH,EAAehH,EAehC,OAVM+C,GAAMlf,SACXkf,EAAMlf,OAASjE,GAKe,IAA1BmjB,EAAMlf,OAAOoB,WACjB8d,EAAMlf,OAASkf,EAAMlf,OAAOgC,YAGtBohB,EAAQzX,OAASyX,EAAQzX,OAAQuT,EAAOiE,GAAkBjE,GAGlEO,SACC4D,MAECnC,UAAU,GAEX9Q,OAECsQ,QAAS,WACR,MAAKvkB,QAAS6iB,KAAuB7iB,KAAKiU,OACzCjU,KAAKiU,SACE,GAFR,QAKD6P,aAAc,WAEfqD,MACC5C,QAAS,WACR,MAAKvkB,QAAS6iB,KAAuB7iB,KAAKmnB,MACzCnnB,KAAKmnB,QACE,GAFR,QAKDrD,aAAc,YAEfsD,OAEC7C,QAAS,WACR,MAAmB,aAAdvkB,KAAK4E,MAAuB5E,KAAKonB,OAASvmB,EAAOoF,SAAUjG,KAAM,UACrEA,KAAKonB,SACE,GAFR,QAODhC,SAAU,SAAUrC,GACnB,MAAOliB,GAAOoF,SAAU8c,EAAMlf,OAAQ,OAIxCwjB,cACCzB,aAAc,SAAU7C,GAID7e,SAAjB6e,EAAMvQ,QAAwBuQ,EAAMiE,gBACxCjE,EAAMiE,cAAcM,YAAcvE,EAAMvQ,WAM5C+U,SAAU,SAAU3iB,EAAMlC,EAAMqgB,EAAOyE,GAItC,GAAI9b,GAAI7K,EAAOyC,OACd,GAAIzC,GAAO+jB,MACX7B,GAECne,KAAMA,EACN6iB,aAAa,EACbT,kBAGGQ,GACJ3mB,EAAOkiB,MAAMwB,QAAS7Y,EAAG,KAAMhJ,GAE/B7B,EAAOkiB,MAAMc,SAAS/hB,KAAMY,EAAMgJ,GAE9BA,EAAEyZ,sBACNpC,EAAMmC,mBAKTrkB,EAAOyjB,YAAc,SAAU5hB,EAAMkC,EAAM+e,GACrCjhB,EAAKoc,qBACTpc,EAAKoc,oBAAqBla,EAAM+e,GAAQ,IAI1C9iB,EAAO+jB,MAAQ,SAAUnhB,EAAKqiB,GAE7B,MAAO9lB,gBAAgBa,GAAO+jB,OAKzBnhB,GAAOA,EAAImB,MACf5E,KAAKgnB,cAAgBvjB,EACrBzD,KAAK4E,KAAOnB,EAAImB,KAIhB5E,KAAKmlB,mBAAqB1hB,EAAIikB,kBACHxjB,SAAzBT,EAAIikB,kBAEJjkB,EAAI6jB,eAAgB,EACrB3E,EACAC,GAID5iB,KAAK4E,KAAOnB,EAIRqiB,GACJjlB,EAAOyC,OAAQtD,KAAM8lB,GAItB9lB,KAAK2nB,UAAYlkB,GAAOA,EAAIkkB,WAAa9mB,EAAOsG,WAGhDnH,KAAMa,EAAOsD,UAAY,IA/BjB,GAAItD,GAAO+jB,MAAOnhB,EAAKqiB,IAoChCjlB,EAAO+jB,MAAMnjB,WACZ0jB,mBAAoBvC,EACpBqC,qBAAsBrC,EACtB8C,8BAA+B9C,EAE/BsC,eAAgB,WACf,GAAIxZ,GAAI1L,KAAKgnB,aAEbhnB,MAAKmlB,mBAAqBxC,EAErBjX,GAAKA,EAAEwZ,gBACXxZ,EAAEwZ,kBAGJS,gBAAiB,WAChB,GAAIja,GAAI1L,KAAKgnB,aAEbhnB,MAAKilB,qBAAuBtC,EAEvBjX,GAAKA,EAAEia,iBACXja,EAAEia,mBAGJiC,yBAA0B,WACzB,GAAIlc,GAAI1L,KAAKgnB,aAEbhnB,MAAK0lB,8BAAgC/C,EAEhCjX,GAAKA,EAAEkc,0BACXlc,EAAEkc,2BAGH5nB,KAAK2lB,oBAMP9kB,EAAOyB,MACNulB,WAAY,YACZC,WAAY,WACZC,aAAc,cACdC,aAAc,cACZ,SAAUC,EAAM5C,GAClBxkB,EAAOkiB,MAAMO,QAAS2E,IACrBnE,aAAcuB,EACdtB,SAAUsB,EAEV1B,OAAQ,SAAUZ,GACjB,GAAI5gB,GACH0B,EAAS7D,KACTkoB,EAAUnF,EAAMoF,cAChB9E,EAAYN,EAAMM,SASnB,SALM6E,GAAYA,IAAYrkB,IAAWhD,EAAOwH,SAAUxE,EAAQqkB,MACjEnF,EAAMne,KAAOye,EAAUI,SACvBthB,EAAMkhB,EAAUvV,QAAQlL,MAAO5C,KAAM6C,WACrCkgB,EAAMne,KAAOygB,GAEPljB,MAOJxB,EAAQ2hB,gBACbzhB,EAAOyB,MAAO2R,MAAO,UAAWkT,KAAM,YAAc,SAAUc,EAAM5C,GAGnE,GAAIvX,GAAU,SAAUiV,GACtBliB,EAAOkiB,MAAMwE,SAAUlC,EAAKtC,EAAMlf,OAAQhD,EAAOkiB,MAAMsC,IAAKtC,IAAS,GAGvEliB,GAAOkiB,MAAMO,QAAS+B,IACrBnB,MAAO,WACN,GAAIpV,GAAM9O,KAAKoM,eAAiBpM,KAC/BooB,EAAW/H,EAAUpB,OAAQnQ,EAAKuW,EAE7B+C,IACLtZ,EAAIG,iBAAkBgZ,EAAMna,GAAS,GAEtCuS,EAAUpB,OAAQnQ,EAAKuW,GAAO+C,GAAY,GAAM,IAEjD/D,SAAU,WACT,GAAIvV,GAAM9O,KAAKoM,eAAiBpM,KAC/BooB,EAAW/H,EAAUpB,OAAQnQ,EAAKuW,GAAQ,CAErC+C,GAKL/H,EAAUpB,OAAQnQ,EAAKuW,EAAK+C,IAJ5BtZ,EAAIgQ,oBAAqBmJ,EAAMna,GAAS,GACxCuS,EAAUjE,OAAQtN,EAAKuW,QAU5BxkB,EAAOG,GAAGsC,QAET+kB,GAAI,SAAUrF,EAAOliB,EAAUmb,EAAMjb,EAAiBsnB,GACrD,GAAIC,GAAQ3jB,CAGZ,IAAsB,gBAAVoe,GAAqB,CAEP,gBAAbliB,KAEXmb,EAAOA,GAAQnb,EACfA,EAAWoD,OAEZ,KAAMU,IAAQoe,GACbhjB,KAAKqoB,GAAIzjB,EAAM9D,EAAUmb,EAAM+G,EAAOpe,GAAQ0jB,EAE/C,OAAOtoB,MAmBR,GAhBa,MAARic,GAAsB,MAANjb,GAEpBA,EAAKF,EACLmb,EAAOnb,EAAWoD,QACD,MAANlD,IACc,gBAAbF,IAEXE,EAAKib,EACLA,EAAO/X,SAGPlD,EAAKib,EACLA,EAAOnb,EACPA,EAAWoD,SAGRlD,KAAO,EACXA,EAAK4hB,MACC,KAAM5hB,EACZ,MAAOhB,KAaR,OAVa,KAARsoB,IACJC,EAASvnB,EACTA,EAAK,SAAU+hB,GAGd,MADAliB,KAAS+d,IAAKmE,GACPwF,EAAO3lB,MAAO5C,KAAM6C,YAG5B7B,EAAGgG,KAAOuhB,EAAOvhB,OAAUuhB,EAAOvhB,KAAOnG,EAAOmG,SAE1ChH,KAAKsC,KAAM,WACjBzB,EAAOkiB,MAAMvI,IAAKxa,KAAMgjB,EAAOhiB,EAAIib,EAAMnb,MAG3CwnB,IAAK,SAAUtF,EAAOliB,EAAUmb,EAAMjb,GACrC,MAAOhB,MAAKqoB,GAAIrF,EAAOliB,EAAUmb,EAAMjb,EAAI,IAE5C4d,IAAK,SAAUoE,EAAOliB,EAAUE,GAC/B,GAAIqiB,GAAWze,CACf,IAAKoe,GAASA,EAAMkC,gBAAkBlC,EAAMK,UAQ3C,MANAA,GAAYL,EAAMK,UAClBxiB,EAAQmiB,EAAMuC,gBAAiB3G,IAC9ByE,EAAUW,UAAYX,EAAUI,SAAW,IAAMJ,EAAUW,UAAYX,EAAUI,SACjFJ,EAAUviB,SACVuiB,EAAUvV,SAEJ9N,IAER,IAAsB,gBAAVgjB,GAAqB,CAEhC,IAAMpe,IAAQoe,GACbhjB,KAAK4e,IAAKha,EAAM9D,EAAUkiB,EAAOpe,GAElC,OAAO5E,MAUR,OARKc,KAAa,GAA6B,kBAAbA,MAEjCE,EAAKF,EACLA,EAAWoD,QAEPlD,KAAO,IACXA,EAAK4hB,GAEC5iB,KAAKsC,KAAK,WAChBzB,EAAOkiB,MAAM3G,OAAQpc,KAAMgjB,EAAOhiB,EAAIF,MAIxCyjB,QAAS,SAAU3f,EAAMqX,GACxB,MAAOjc,MAAKsC,KAAK,WAChBzB,EAAOkiB,MAAMwB,QAAS3f,EAAMqX,EAAMjc,SAGpC2e,eAAgB,SAAU/Z,EAAMqX,GAC/B,GAAIvZ,GAAO1C,KAAK,EAChB,OAAK0C,GACG7B,EAAOkiB,MAAMwB,QAAS3f,EAAMqX,EAAMvZ,GAAM,GADhD,SAOF,IACC8lB,IAAY,0EACZC,GAAW,YACXC,GAAQ,YACRC,GAAe,0BAEfC,GAAW,oCACXC,GAAc,4BACdC,GAAoB,cACpBC,GAAe,2CAGfC,IAGCC,QAAU,EAAG,+BAAgC,aAE7CC,OAAS,EAAG,UAAW,YACvBC,KAAO,EAAG,oBAAqB,uBAC/BC,IAAM,EAAG,iBAAkB,oBAC3BC,IAAM,EAAG,qBAAsB,yBAE/BjE,UAAY,EAAG,GAAI,IAIrB4D,IAAQM,SAAWN,GAAQC,OAE3BD,GAAQO,MAAQP,GAAQQ,MAAQR,GAAQS,SAAWT,GAAQU,QAAUV,GAAQE,MAC7EF,GAAQW,GAAKX,GAAQK,EAIrB,SAASO,IAAoBlnB,EAAMmnB,GAClC,MAAOhpB,GAAOoF,SAAUvD,EAAM,UAC7B7B,EAAOoF,SAA+B,KAArB4jB,EAAQ5kB,SAAkB4kB,EAAUA,EAAQtY,WAAY,MAEzE7O,EAAK8J,qBAAqB,SAAS,IAClC9J,EAAKkD,YAAalD,EAAK0J,cAAc3G,cAAc,UACpD/C,EAIF,QAASonB,IAAepnB,GAEvB,MADAA,GAAKkC,MAAsC,OAA9BlC,EAAKkK,aAAa,SAAoB,IAAMlK,EAAKkC,KACvDlC,EAER,QAASqnB,IAAernB,GACvB,GAAImJ,GAAQid,GAAkBzc,KAAM3J,EAAKkC,KAQzC,OANKiH,GACJnJ,EAAKkC,KAAOiH,EAAO,GAEnBnJ,EAAKyK,gBAAgB,QAGfzK,EAIR,QAASsnB,IAAe9nB,EAAO+nB,GAI9B,IAHA,GAAItnB,GAAI,EACPwX,EAAIjY,EAAMN,OAECuY,EAAJxX,EAAOA,IACd0d,EAAUN,IACT7d,EAAOS,GAAK,cAAesnB,GAAe5J,EAAUte,IAAKkoB,EAAatnB,GAAK,eAK9E,QAASunB,IAAgBzmB,EAAK0mB,GAC7B,GAAIxnB,GAAGwX,EAAGvV,EAAMwlB,EAAUC,EAAUC,EAAUC,EAAUpH,CAExD,IAAuB,IAAlBgH,EAAKllB,SAAV,CAKA,GAAKob,EAAUF,QAAS1c,KACvB2mB,EAAW/J,EAAUpB,OAAQxb,GAC7B4mB,EAAWhK,EAAUN,IAAKoK,EAAMC,GAChCjH,EAASiH,EAASjH,QAEJ,OACNkH,GAAS1G,OAChB0G,EAASlH,SAET,KAAMve,IAAQue,GACb,IAAMxgB,EAAI,EAAGwX,EAAIgJ,EAAQve,GAAOhD,OAAYuY,EAAJxX,EAAOA,IAC9C9B,EAAOkiB,MAAMvI,IAAK2P,EAAMvlB,EAAMue,EAAQve,GAAQjC,IAO7C2d,EAAUH,QAAS1c,KACvB6mB,EAAWhK,EAAUrB,OAAQxb,GAC7B8mB,EAAW1pB,EAAOyC,UAAYgnB,GAE9BhK,EAAUP,IAAKoK,EAAMI,KAIvB,QAASC,IAAQzpB,EAAS4O,GACzB,GAAIxN,GAAMpB,EAAQyL,qBAAuBzL,EAAQyL,qBAAsBmD,GAAO,KAC5E5O,EAAQkM,iBAAmBlM,EAAQkM,iBAAkB0C,GAAO,OAG9D,OAAezL,UAARyL,GAAqBA,GAAO9O,EAAOoF,SAAUlF,EAAS4O,GAC5D9O,EAAOuB,OAASrB,GAAWoB,GAC3BA,EAIF,QAASsoB,IAAUhnB,EAAK0mB,GACvB,GAAIlkB,GAAWkkB,EAAKlkB,SAASC,aAGX,WAAbD,GAAwB8b,EAAepV,KAAMlJ,EAAImB,MACrDulB,EAAK3V,QAAU/Q,EAAI+Q,SAGK,UAAbvO,GAAqC,aAAbA,KACnCkkB,EAAKxR,aAAelV,EAAIkV,cAI1B9X,EAAOyC,QACNM,MAAO,SAAUlB,EAAMgoB,EAAeC,GACrC,GAAIhoB,GAAGwX,EAAGyQ,EAAaC,EACtBjnB,EAAQlB,EAAKyf,WAAW,GACxB2I,EAASjqB,EAAOwH,SAAU3F,EAAK0J,cAAe1J,EAG/C,MAAM/B,EAAQyhB,gBAAsC,IAAlB1f,EAAKuC,UAAoC,KAAlBvC,EAAKuC,UAC3DpE,EAAOgY,SAAUnW,IAMnB,IAHAmoB,EAAeL,GAAQ5mB,GACvBgnB,EAAcJ,GAAQ9nB,GAEhBC,EAAI,EAAGwX,EAAIyQ,EAAYhpB,OAAYuY,EAAJxX,EAAOA,IAC3C8nB,GAAUG,EAAajoB,GAAKkoB,EAAcloB,GAK5C,IAAK+nB,EACJ,GAAKC,EAIJ,IAHAC,EAAcA,GAAeJ,GAAQ9nB,GACrCmoB,EAAeA,GAAgBL,GAAQ5mB,GAEjCjB,EAAI,EAAGwX,EAAIyQ,EAAYhpB,OAAYuY,EAAJxX,EAAOA,IAC3CunB,GAAgBU,EAAajoB,GAAKkoB,EAAcloB,QAGjDunB,IAAgBxnB,EAAMkB,EAWxB,OANAinB,GAAeL,GAAQ5mB,EAAO,UACzBinB,EAAajpB,OAAS,GAC1BooB,GAAea,GAAeC,GAAUN,GAAQ9nB,EAAM,WAIhDkB,GAGRmnB,cAAe,SAAU7oB,EAAOnB,EAASiqB,EAASC,GAOjD,IANA,GAAIvoB,GAAMwE,EAAKyI,EAAKub,EAAM7iB,EAAUnF,EACnC8e,EAAWjhB,EAAQkhB,yBACnBkJ,KACAxoB,EAAI,EACJwX,EAAIjY,EAAMN,OAECuY,EAAJxX,EAAOA,IAGd,GAFAD,EAAOR,EAAOS,GAETD,GAAiB,IAATA,EAGZ,GAA6B,WAAxB7B,EAAO+D,KAAMlC,GAGjB7B,EAAOuB,MAAO+oB,EAAOzoB,EAAKuC,UAAavC,GAASA,OAG1C,IAAMgmB,GAAM/b,KAAMjK,GAIlB,CACNwE,EAAMA,GAAO8a,EAASpc,YAAa7E,EAAQ0E,cAAc,QAGzDkK,GAAQ8Y,GAASpc,KAAM3J,KAAY,GAAI,KAAQ,GAAIwD,cACnDglB,EAAOlC,GAASrZ,IAASqZ,GAAQ5D,SACjCle,EAAI0I,UAAYsb,EAAM,GAAMxoB,EAAK4B,QAASkkB,GAAW,aAAgB0C,EAAM,GAG3EhoB,EAAIgoB,EAAM,EACV,OAAQhoB,IACPgE,EAAMA,EAAIgM,SAKXrS,GAAOuB,MAAO+oB,EAAOjkB,EAAIuE,YAGzBvE,EAAM8a,EAASzQ,WAGfrK,EAAIoK,YAAc,OAzBlB6Z,GAAM9qB,KAAMU,EAAQqqB,eAAgB1oB,GA+BvCsf,GAAS1Q,YAAc,GAEvB3O,EAAI,CACJ,OAASD,EAAOyoB,EAAOxoB,KAItB,KAAKsoB,GAAmD,KAAtCpqB,EAAO2F,QAAS9D,EAAMuoB,MAIxC5iB,EAAWxH,EAAOwH,SAAU3F,EAAK0J,cAAe1J,GAGhDwE,EAAMsjB,GAAQxI,EAASpc,YAAalD,GAAQ,UAGvC2F,GACJ2hB,GAAe9iB,GAIX8jB,GAAU,CACd9nB,EAAI,CACJ,OAASR,EAAOwE,EAAKhE,KACf2lB,GAAYlc,KAAMjK,EAAKkC,MAAQ,KACnComB,EAAQ3qB,KAAMqC,GAMlB,MAAOsf,IAGRqJ,UAAW,SAAUnpB,GAKpB,IAJA,GAAI+Z,GAAMvZ,EAAMkC,EAAM0I,EACrBgW,EAAUziB,EAAOkiB,MAAMO,QACvB3gB,EAAI,EAE2BuB,UAAvBxB,EAAOR,EAAOS,IAAoBA,IAAM,CAChD,GAAK9B,EAAOye,WAAY5c,KACvB4K,EAAM5K,EAAM2d,EAAUlc,SAEjBmJ,IAAQ2O,EAAOoE,EAAUhT,MAAOC,KAAS,CAC7C,GAAK2O,EAAKkH,OACT,IAAMve,IAAQqX,GAAKkH,OACbG,EAAS1e,GACb/D,EAAOkiB,MAAM3G,OAAQ1Z,EAAMkC,GAI3B/D,EAAOyjB,YAAa5hB,EAAMkC,EAAMqX,EAAK0H,OAInCtD,GAAUhT,MAAOC,UAEd+S,GAAUhT,MAAOC,SAKpBgT,GAAUjT,MAAO3K,EAAM4d,EAAUnc,cAK3CtD,EAAOG,GAAGsC,QACToC,KAAM,SAAUS,GACf,MAAO8Y,GAAQjf,KAAM,SAAUmG,GAC9B,MAAiBjC,UAAViC,EACNtF,EAAO6E,KAAM1F,MACbA,KAAK2U,QAAQrS,KAAK,YACM,IAAlBtC,KAAKiF,UAAoC,KAAlBjF,KAAKiF,UAAqC,IAAlBjF,KAAKiF,YACxDjF,KAAKsR,YAAcnL,MAGpB,KAAMA,EAAOtD,UAAUjB,SAG3B0pB,OAAQ,WACP,MAAOtrB,MAAKurB,SAAU1oB,UAAW,SAAUH,GAC1C,GAAuB,IAAlB1C,KAAKiF,UAAoC,KAAlBjF,KAAKiF,UAAqC,IAAlBjF,KAAKiF,SAAiB,CACzE,GAAIpB,GAAS+lB,GAAoB5pB,KAAM0C,EACvCmB,GAAO+B,YAAalD,OAKvB8oB,QAAS,WACR,MAAOxrB,MAAKurB,SAAU1oB,UAAW,SAAUH,GAC1C,GAAuB,IAAlB1C,KAAKiF,UAAoC,KAAlBjF,KAAKiF,UAAqC,IAAlBjF,KAAKiF,SAAiB,CACzE,GAAIpB,GAAS+lB,GAAoB5pB,KAAM0C,EACvCmB,GAAO4nB,aAAc/oB,EAAMmB,EAAO0N,gBAKrCma,OAAQ,WACP,MAAO1rB,MAAKurB,SAAU1oB,UAAW,SAAUH,GACrC1C,KAAK6F,YACT7F,KAAK6F,WAAW4lB,aAAc/oB,EAAM1C,SAKvC2rB,MAAO,WACN,MAAO3rB,MAAKurB,SAAU1oB,UAAW,SAAUH,GACrC1C,KAAK6F,YACT7F,KAAK6F,WAAW4lB,aAAc/oB,EAAM1C,KAAKoO,gBAK5CgO,OAAQ,SAAUtb,EAAU8qB,GAK3B,IAJA,GAAIlpB,GACHR,EAAQpB,EAAWD,EAAO2O,OAAQ1O,EAAUd,MAASA,KACrD2C,EAAI,EAEwB,OAApBD,EAAOR,EAAMS,IAAaA,IAC5BipB,GAA8B,IAAlBlpB,EAAKuC,UACtBpE,EAAOwqB,UAAWb,GAAQ9nB,IAGtBA,EAAKmD,aACJ+lB,GAAY/qB,EAAOwH,SAAU3F,EAAK0J,cAAe1J,IACrDsnB,GAAeQ,GAAQ9nB,EAAM,WAE9BA,EAAKmD,WAAWC,YAAapD,GAI/B,OAAO1C,OAGR2U,MAAO,WAIN,IAHA,GAAIjS,GACHC,EAAI,EAEuB,OAAnBD,EAAO1C,KAAK2C,IAAaA,IACV,IAAlBD,EAAKuC,WAGTpE,EAAOwqB,UAAWb,GAAQ9nB,GAAM,IAGhCA,EAAK4O,YAAc,GAIrB,OAAOtR,OAGR4D,MAAO,SAAU8mB,EAAeC,GAI/B,MAHAD,GAAiC,MAAjBA,GAAwB,EAAQA,EAChDC,EAAyC,MAArBA,EAA4BD,EAAgBC,EAEzD3qB,KAAKyC,IAAI,WACf,MAAO5B,GAAO+C,MAAO5D,KAAM0qB,EAAeC,MAI5CkB,KAAM,SAAU1lB,GACf,MAAO8Y,GAAQjf,KAAM,SAAUmG,GAC9B,GAAIzD,GAAO1C,KAAM,OAChB2C,EAAI,EACJwX,EAAIna,KAAK4B,MAEV,IAAesC,SAAViC,GAAyC,IAAlBzD,EAAKuC,SAChC,MAAOvC,GAAKkN,SAIb,IAAsB,gBAAVzJ,KAAuBwiB,GAAahc,KAAMxG,KACpD6iB,IAAWP,GAASpc,KAAMlG,KAAa,GAAI,KAAQ,GAAID,eAAkB,CAE1EC,EAAQA,EAAM7B,QAASkkB,GAAW,YAElC,KACC,KAAYrO,EAAJxX,EAAOA,IACdD,EAAO1C,KAAM2C,OAGU,IAAlBD,EAAKuC,WACTpE,EAAOwqB,UAAWb,GAAQ9nB,GAAM,IAChCA,EAAKkN,UAAYzJ,EAInBzD,GAAO,EAGN,MAAOgJ,KAGLhJ,GACJ1C,KAAK2U,QAAQ2W,OAAQnlB,IAEpB,KAAMA,EAAOtD,UAAUjB,SAG3BkqB,YAAa,WACZ,GAAI/kB,GAAMlE,UAAW,EAcrB,OAXA7C,MAAKurB,SAAU1oB,UAAW,SAAUH,GACnCqE,EAAM/G,KAAK6F,WAEXhF,EAAOwqB,UAAWb,GAAQxqB,OAErB+G,GACJA,EAAIglB,aAAcrpB,EAAM1C,QAKnB+G,IAAQA,EAAInF,QAAUmF,EAAI9B,UAAYjF,KAAOA,KAAKoc,UAG1D4P,OAAQ,SAAUlrB,GACjB,MAAOd,MAAKoc,OAAQtb,GAAU,IAG/ByqB,SAAU,SAAU/oB,EAAMD,GAGzBC,EAAOpC,EAAOwC,SAAWJ,EAEzB,IAAIwf,GAAUlf,EAAOkoB,EAASiB,EAAYtd,EAAMG,EAC/CnM,EAAI,EACJwX,EAAIna,KAAK4B,OACTme,EAAM/f,KACNksB,EAAW/R,EAAI,EACfhU,EAAQ3D,EAAM,GACduB,EAAalD,EAAOkD,WAAYoC,EAGjC,IAAKpC,GACDoW,EAAI,GAAsB,gBAAVhU,KAChBxF,EAAQuhB,YAAc0G,GAASjc,KAAMxG,GACxC,MAAOnG,MAAKsC,KAAK,SAAUgY,GAC1B,GAAInB,GAAO4G,EAAIhd,GAAIuX,EACdvW,KACJvB,EAAM,GAAM2D,EAAMrE,KAAM9B,KAAMsa,EAAOnB,EAAK0S,SAE3C1S,EAAKoS,SAAU/oB,EAAMD,IAIvB,IAAK4X,IACJ6H,EAAWnhB,EAAOkqB,cAAevoB,EAAMxC,KAAM,GAAIoM,eAAe,EAAOpM,MACvE8C,EAAQkf,EAASzQ,WAEmB,IAA/ByQ,EAASvW,WAAW7J,SACxBogB,EAAWlf,GAGPA,GAAQ,CAMZ,IALAkoB,EAAUnqB,EAAO4B,IAAK+nB,GAAQxI,EAAU,UAAY8H,IACpDmC,EAAajB,EAAQppB,OAITuY,EAAJxX,EAAOA,IACdgM,EAAOqT,EAEFrf,IAAMupB,IACVvd,EAAO9N,EAAO+C,MAAO+K,GAAM,GAAM,GAG5Bsd,GAGJprB,EAAOuB,MAAO4oB,EAASR,GAAQ7b,EAAM,YAIvCpM,EAAST,KAAM9B,KAAM2C,GAAKgM,EAAMhM,EAGjC,IAAKspB,EAOJ,IANAnd,EAAMkc,EAASA,EAAQppB,OAAS,GAAIwK,cAGpCvL,EAAO4B,IAAKuoB,EAASjB,IAGfpnB,EAAI,EAAOspB,EAAJtpB,EAAgBA,IAC5BgM,EAAOqc,EAASroB,GACXkmB,GAAYlc,KAAMgC,EAAK/J,MAAQ,MAClCyb,EAAUpB,OAAQtQ,EAAM,eAAkB9N,EAAOwH,SAAUyG,EAAKH,KAE5DA,EAAKlL,IAEJ5C,EAAOsrB,UACXtrB,EAAOsrB,SAAUxd,EAAKlL,KAGvB5C,EAAOsE,WAAYwJ,EAAK2C,YAAYhN,QAASykB,GAAc,MAQjE,MAAO/oB,SAITa,EAAOyB,MACN8pB,SAAU,SACVC,UAAW,UACXZ,aAAc,SACda,YAAa,QACbC,WAAY,eACV,SAAU/oB,EAAMyiB,GAClBplB,EAAOG,GAAIwC,GAAS,SAAU1C,GAO7B,IANA,GAAIoB,GACHC,KACAqqB,EAAS3rB,EAAQC,GACjBkC,EAAOwpB,EAAO5qB,OAAS,EACvBe,EAAI,EAEQK,GAALL,EAAWA,IAClBT,EAAQS,IAAMK,EAAOhD,KAAOA,KAAK4D,OAAO,GACxC/C,EAAQ2rB,EAAQ7pB,IAAOsjB,GAAY/jB,GAInC7B,EAAKuC,MAAOT,EAAKD,EAAMH,MAGxB,OAAO/B,MAAKiC,UAAWE,KAKzB,IAAIsqB,IACHC,KAQD,SAASC,IAAenpB,EAAMsL,GAC7B,GAAI8d,GACHlqB,EAAO7B,EAAQiO,EAAIrJ,cAAejC,IAAS4oB,SAAUtd,EAAIyX,MAGzDsG,EAAU9sB,EAAO+sB,0BAA6BF,EAAQ7sB,EAAO+sB,wBAAyBpqB,EAAM,KAI3FkqB,EAAMC,QAAUhsB,EAAOihB,IAAKpf,EAAM,GAAK,UAMzC,OAFAA,GAAKspB,SAEEa,EAOR,QAASE,IAAgB9mB,GACxB,GAAI6I,GAAMlP,EACTitB,EAAUH,GAAazmB,EA0BxB,OAxBM4mB,KACLA,EAAUF,GAAe1mB,EAAU6I,GAGlB,SAAZ+d,GAAuBA,IAG3BJ,IAAUA,IAAU5rB,EAAQ,mDAAoDurB,SAAUtd,EAAIJ,iBAG9FI,EAAM2d,GAAQ,GAAIzR,gBAGlBlM,EAAIke,QACJle,EAAIme,QAEJJ,EAAUF,GAAe1mB,EAAU6I,GACnC2d,GAAOT,UAIRU,GAAazmB,GAAa4mB,GAGpBA,EAER,GAAIK,IAAU,UAEVC,GAAY,GAAIxjB,QAAQ,KAAO8X,EAAO,kBAAmB,KAEzD2L,GAAY,SAAU1qB,GAIxB,MAAKA,GAAK0J,cAAc2C,YAAYse,OAC5B3qB,EAAK0J,cAAc2C,YAAYue,iBAAkB5qB,EAAM,MAGxD3C,EAAOutB,iBAAkB5qB,EAAM,MAKxC,SAAS6qB,IAAQ7qB,EAAMc,EAAMgqB,GAC5B,GAAIC,GAAOC,EAAUC,EAAUxrB,EAC9ByqB,EAAQlqB,EAAKkqB,KAsCd,OApCAY,GAAWA,GAAYJ,GAAW1qB,GAI7B8qB,IACJrrB,EAAMqrB,EAASI,iBAAkBpqB,IAAUgqB,EAAUhqB,IAGjDgqB,IAES,KAARrrB,GAAetB,EAAOwH,SAAU3F,EAAK0J,cAAe1J,KACxDP,EAAMtB,EAAO+rB,MAAOlqB,EAAMc,IAOtB2pB,GAAUxgB,KAAMxK,IAAS+qB,GAAQvgB,KAAMnJ,KAG3CiqB,EAAQb,EAAMa,MACdC,EAAWd,EAAMc,SACjBC,EAAWf,EAAMe,SAGjBf,EAAMc,SAAWd,EAAMe,SAAWf,EAAMa,MAAQtrB,EAChDA,EAAMqrB,EAASC,MAGfb,EAAMa,MAAQA,EACdb,EAAMc,SAAWA,EACjBd,EAAMe,SAAWA,IAIJzpB,SAAR/B,EAGNA,EAAM,GACNA,EAIF,QAAS0rB,IAAcC,EAAaC,GAEnC,OACChsB,IAAK,WACJ,MAAK+rB,gBAGG9tB,MAAK+B,KAKL/B,KAAK+B,IAAMgsB,GAAQnrB,MAAO5C,KAAM6C,cAM3C,WACC,GAAImrB,GAAkBC,EACrBhmB,EAAUrI,EAAS8O,gBACnBwf,EAAYtuB,EAAS6F,cAAe,OACpCkI,EAAM/N,EAAS6F,cAAe,MAE/B,IAAMkI,EAAIif,MAAV,CAMAjf,EAAIif,MAAMuB,eAAiB,cAC3BxgB,EAAIwU,WAAW,GAAOyK,MAAMuB,eAAiB,GAC7CxtB,EAAQytB,gBAA+C,gBAA7BzgB,EAAIif,MAAMuB,eAEpCD,EAAUtB,MAAMyB,QAAU,gFAE1BH,EAAUtoB,YAAa+H,EAIvB,SAAS2gB,KACR3gB,EAAIif,MAAMyB,QAGT,uKAGD1gB,EAAIiC,UAAY,GAChB3H,EAAQrC,YAAasoB,EAErB,IAAIK,GAAWxuB,EAAOutB,iBAAkB3f,EAAK,KAC7CqgB,GAAoC,OAAjBO,EAASvf,IAC5Bif,EAA0C,QAAnBM,EAASd,MAEhCxlB,EAAQnC,YAAaooB,GAKjBnuB,EAAOutB,kBACXzsB,EAAOyC,OAAQ3C,GACd6tB,cAAe,WAMd,MADAF,KACON,GAERS,kBAAmB,WAIlB,MAH6B,OAAxBR,GACJK,IAEML,GAERS,oBAAqB,WAOpB,GAAIvsB,GACHwsB,EAAYhhB,EAAI/H,YAAahG,EAAS6F,cAAe,OAiBtD,OAdAkpB,GAAU/B,MAAMyB,QAAU1gB,EAAIif,MAAMyB,QAGnC,8HAEDM,EAAU/B,MAAMgC,YAAcD,EAAU/B,MAAMa,MAAQ,IACtD9f,EAAIif,MAAMa,MAAQ,MAClBxlB,EAAQrC,YAAasoB,GAErB/rB,GAAO6C,WAAYjF,EAAOutB,iBAAkBqB,EAAW,MAAOC,aAE9D3mB,EAAQnC,YAAaooB,GACrBvgB,EAAI7H,YAAa6oB,GAEVxsB,SAQXtB,EAAOguB,KAAO,SAAUnsB,EAAMa,EAAShB,EAAUC,GAChD,GAAIL,GAAKqB,EACRwI,IAGD,KAAMxI,IAAQD,GACbyI,EAAKxI,GAASd,EAAKkqB,MAAOppB,GAC1Bd,EAAKkqB,MAAOppB,GAASD,EAASC,EAG/BrB,GAAMI,EAASK,MAAOF,EAAMF,MAG5B,KAAMgB,IAAQD,GACbb,EAAKkqB,MAAOppB,GAASwI,EAAKxI,EAG3B,OAAOrB,GAIR,IAGC2sB,IAAe,4BACfC,GAAY,GAAIplB,QAAQ,KAAO8X,EAAO,SAAU,KAChDuN,GAAU,GAAIrlB,QAAQ,YAAc8X,EAAO,IAAK,KAEhDwN,IAAYC,SAAU,WAAYC,WAAY,SAAUtC,QAAS,SACjEuC,IACCC,cAAe,IACfC,WAAY,OAGbC,IAAgB,SAAU,IAAK,MAAO,KAGvC,SAASC,IAAgB5C,EAAOppB,GAG/B,GAAKA,IAAQopB,GACZ,MAAOppB,EAIR,IAAIisB,GAAUjsB,EAAK,GAAGhC,cAAgBgC,EAAKrD,MAAM,GAChDuvB,EAAWlsB,EACXb,EAAI4sB,GAAY3tB,MAEjB,OAAQe,IAEP,GADAa,EAAO+rB,GAAa5sB,GAAM8sB,EACrBjsB,IAAQopB,GACZ,MAAOppB,EAIT,OAAOksB,GAGR,QAASC,IAAmBjtB,EAAMyD,EAAOypB,GACxC,GAAI/oB,GAAUkoB,GAAU1iB,KAAMlG,EAC9B,OAAOU,GAENzC,KAAKyrB,IAAK,EAAGhpB,EAAS,IAAQ+oB,GAAY,KAAU/oB,EAAS,IAAO,MACpEV,EAGF,QAAS2pB,IAAsBptB,EAAMc,EAAMusB,EAAOC,EAAaC,GAS9D,IARA,GAAIttB,GAAIotB,KAAYC,EAAc,SAAW,WAE5C,EAES,UAATxsB,EAAmB,EAAI,EAEvBwN,EAAM,EAEK,EAAJrO,EAAOA,GAAK,EAEJ,WAAVotB,IACJ/e,GAAOnQ,EAAOihB,IAAKpf,EAAMqtB,EAAQpO,EAAWhf,IAAK,EAAMstB,IAGnDD,GAEW,YAAVD,IACJ/e,GAAOnQ,EAAOihB,IAAKpf,EAAM,UAAYif,EAAWhf,IAAK,EAAMstB,IAI7C,WAAVF,IACJ/e,GAAOnQ,EAAOihB,IAAKpf,EAAM,SAAWif,EAAWhf,GAAM,SAAS,EAAMstB,MAIrEjf,GAAOnQ,EAAOihB,IAAKpf,EAAM,UAAYif,EAAWhf,IAAK,EAAMstB,GAG5C,YAAVF,IACJ/e,GAAOnQ,EAAOihB,IAAKpf,EAAM,SAAWif,EAAWhf,GAAM,SAAS,EAAMstB,IAKvE,OAAOjf,GAGR,QAASkf,IAAkBxtB,EAAMc,EAAMusB,GAGtC,GAAII,IAAmB,EACtBnf,EAAe,UAATxN,EAAmBd,EAAK0tB,YAAc1tB,EAAK2tB,aACjDJ,EAAS7C,GAAW1qB,GACpBstB,EAAiE,eAAnDnvB,EAAOihB,IAAKpf,EAAM,aAAa,EAAOutB,EAKrD,IAAY,GAAPjf,GAAmB,MAAPA,EAAc,CAQ9B,GANAA,EAAMuc,GAAQ7qB,EAAMc,EAAMysB,IACf,EAANjf,GAAkB,MAAPA,KACfA,EAAMtO,EAAKkqB,MAAOppB,IAId2pB,GAAUxgB,KAAKqE,GACnB,MAAOA,EAKRmf,GAAmBH,IAChBrvB,EAAQ8tB,qBAAuBzd,IAAQtO,EAAKkqB,MAAOppB,IAGtDwN,EAAMhM,WAAYgM,IAAS,EAI5B,MAASA,GACR8e,GACCptB,EACAc,EACAusB,IAAWC,EAAc,SAAW,WACpCG,EACAF,GAEE,KAGL,QAASK,IAAUxf,EAAUyf,GAM5B,IALA,GAAI1D,GAASnqB,EAAM8tB,EAClBxS,KACA1D,EAAQ,EACR1Y,EAASkP,EAASlP,OAEHA,EAAR0Y,EAAgBA,IACvB5X,EAAOoO,EAAUwJ,GACX5X,EAAKkqB,QAIX5O,EAAQ1D,GAAU+F,EAAUte,IAAKW,EAAM,cACvCmqB,EAAUnqB,EAAKkqB,MAAMC,QAChB0D,GAGEvS,EAAQ1D,IAAuB,SAAZuS,IACxBnqB,EAAKkqB,MAAMC,QAAU,IAMM,KAAvBnqB,EAAKkqB,MAAMC,SAAkBjL,EAAUlf,KAC3Csb,EAAQ1D,GAAU+F,EAAUpB,OAAQvc,EAAM,aAAcqqB,GAAerqB,EAAKuD,cAG7EuqB,EAAS5O,EAAUlf,GAEF,SAAZmqB,GAAuB2D,GAC3BnQ,EAAUN,IAAKrd,EAAM,aAAc8tB,EAAS3D,EAAUhsB,EAAOihB,IAAKpf,EAAM,aAO3E,KAAM4X,EAAQ,EAAW1Y,EAAR0Y,EAAgBA,IAChC5X,EAAOoO,EAAUwJ,GACX5X,EAAKkqB,QAGL2D,GAA+B,SAAvB7tB,EAAKkqB,MAAMC,SAA6C,KAAvBnqB,EAAKkqB,MAAMC,UACzDnqB,EAAKkqB,MAAMC,QAAU0D,EAAOvS,EAAQ1D,IAAW,GAAK,QAItD,OAAOxJ,GAGRjQ,EAAOyC,QAINmtB,UACCC,SACC3uB,IAAK,SAAUW,EAAM8qB,GACpB,GAAKA,EAAW,CAGf,GAAIrrB,GAAMorB,GAAQ7qB,EAAM,UACxB,OAAe,KAARP,EAAa,IAAMA,MAO9BwuB,WACCC,aAAe,EACfC,aAAe,EACfC,UAAY,EACZC,YAAc,EACdzB,YAAc,EACd0B,YAAc,EACdN,SAAW,EACXO,OAAS,EACTC,SAAW,EACXC,QAAU,EACVC,QAAU,EACVC,MAAQ,GAKTC,UACCC,QAAS,YAIV3E,MAAO,SAAUlqB,EAAMc,EAAM2C,EAAO4pB,GAGnC,GAAMrtB,GAA0B,IAAlBA,EAAKuC,UAAoC,IAAlBvC,EAAKuC,UAAmBvC,EAAKkqB,MAAlE,CAKA,GAAIzqB,GAAKyC,EAAMsc,EACdwO,EAAW7uB,EAAOkF,UAAWvC,GAC7BopB,EAAQlqB,EAAKkqB,KAQd,OANAppB,GAAO3C,EAAOywB,SAAU5B,KAAgB7uB,EAAOywB,SAAU5B,GAAaF,GAAgB5C,EAAO8C,IAG7FxO,EAAQrgB,EAAO4vB,SAAUjtB,IAAU3C,EAAO4vB,SAAUf,GAGrCxrB,SAAViC,EAiCC+a,GAAS,OAASA,IAAqDhd,UAA3C/B,EAAM+e,EAAMnf,IAAKW,GAAM,EAAOqtB,IACvD5tB,EAIDyqB,EAAOppB,IArCdoB,QAAcuB,GAGA,WAATvB,IAAsBzC,EAAM6sB,GAAQ3iB,KAAMlG,MAC9CA,GAAUhE,EAAI,GAAK,GAAMA,EAAI,GAAK6C,WAAYnE,EAAOihB,IAAKpf,EAAMc,IAEhEoB,EAAO,UAIM,MAATuB,GAAiBA,IAAUA,IAKlB,WAATvB,GAAsB/D,EAAO8vB,UAAWjB,KAC5CvpB,GAAS,MAKJxF,EAAQytB,iBAA6B,KAAVjoB,GAAiD,IAAjC3C,EAAKlD,QAAS,gBAC9DssB,EAAOppB,GAAS,WAIX0d,GAAW,OAASA,IAAwDhd,UAA7CiC,EAAQ+a,EAAMnB,IAAKrd,EAAMyD,EAAO4pB,MACpEnD,EAAOppB,GAAS2C,IAjBjB,UA+BF2b,IAAK,SAAUpf,EAAMc,EAAMusB,EAAOE,GACjC,GAAIjf,GAAKhP,EAAKkf,EACbwO,EAAW7uB,EAAOkF,UAAWvC,EAwB9B,OArBAA,GAAO3C,EAAOywB,SAAU5B,KAAgB7uB,EAAOywB,SAAU5B,GAAaF,GAAgB9sB,EAAKkqB,MAAO8C,IAGlGxO,EAAQrgB,EAAO4vB,SAAUjtB,IAAU3C,EAAO4vB,SAAUf,GAG/CxO,GAAS,OAASA,KACtBlQ,EAAMkQ,EAAMnf,IAAKW,GAAM,EAAMqtB,IAIjB7rB,SAAR8M,IACJA,EAAMuc,GAAQ7qB,EAAMc,EAAMysB,IAId,WAARjf,GAAoBxN,IAAQ4rB,MAChCpe,EAAMoe,GAAoB5rB,IAIZ,KAAVusB,GAAgBA,GACpB/tB,EAAMgD,WAAYgM,GACX+e,KAAU,GAAQlvB,EAAOkE,UAAW/C,GAAQA,GAAO,EAAIgP,GAExDA,KAITnQ,EAAOyB,MAAO,SAAU,SAAW,SAAUK,EAAGa,GAC/C3C,EAAO4vB,SAAUjtB,IAChBzB,IAAK,SAAUW,EAAM8qB,EAAUuC,GAC9B,MAAKvC,GAIGsB,GAAaniB,KAAM9L,EAAOihB,IAAKpf,EAAM,aAAsC,IAArBA,EAAK0tB,YACjEvvB,EAAOguB,KAAMnsB,EAAMusB,GAAS,WAC3B,MAAOiB,IAAkBxtB,EAAMc,EAAMusB,KAEtCG,GAAkBxtB,EAAMc,EAAMusB,GARhC,QAYDhQ,IAAK,SAAUrd,EAAMyD,EAAO4pB,GAC3B,GAAIE,GAASF,GAAS3C,GAAW1qB,EACjC,OAAOitB,IAAmBjtB,EAAMyD,EAAO4pB,EACtCD,GACCptB,EACAc,EACAusB,EACmD,eAAnDlvB,EAAOihB,IAAKpf,EAAM,aAAa,EAAOutB,GACtCA,GACG,OAORpvB,EAAO4vB,SAAS7B,YAAcf,GAAcltB,EAAQ+tB,oBACnD,SAAUhsB,EAAM8qB,GACf,MAAKA,GACG3sB,EAAOguB,KAAMnsB,GAAQmqB,QAAW,gBACtCU,IAAU7qB,EAAM,gBAFlB,SAQF7B,EAAOyB,MACNkvB,OAAQ,GACRC,QAAS,GACTC,OAAQ,SACN,SAAUC,EAAQC,GACpB/wB,EAAO4vB,SAAUkB,EAASC,IACzBC,OAAQ,SAAU1rB,GAOjB,IANA,GAAIxD,GAAI,EACPmvB,KAGAC,EAAyB,gBAAV5rB,GAAqBA,EAAMkB,MAAM,MAASlB,GAE9C,EAAJxD,EAAOA,IACdmvB,EAAUH,EAAShQ,EAAWhf,GAAMivB,GACnCG,EAAOpvB,IAAOovB,EAAOpvB,EAAI,IAAOovB,EAAO,EAGzC,OAAOD,KAIH5E,GAAQvgB,KAAMglB,KACnB9wB,EAAO4vB,SAAUkB,EAASC,GAAS7R,IAAM4P,MAI3C9uB,EAAOG,GAAGsC,QACTwe,IAAK,SAAUte,EAAM2C,GACpB,MAAO8Y,GAAQjf,KAAM,SAAU0C,EAAMc,EAAM2C,GAC1C,GAAI8pB,GAAQhtB,EACXR,KACAE,EAAI,CAEL,IAAK9B,EAAOoD,QAAST,GAAS,CAI7B,IAHAysB,EAAS7C,GAAW1qB,GACpBO,EAAMO,EAAK5B,OAECqB,EAAJN,EAASA,IAChBF,EAAKe,EAAMb,IAAQ9B,EAAOihB,IAAKpf,EAAMc,EAAMb,IAAK,EAAOstB,EAGxD,OAAOxtB,GAGR,MAAiByB,UAAViC,EACNtF,EAAO+rB,MAAOlqB,EAAMc,EAAM2C,GAC1BtF,EAAOihB,IAAKpf,EAAMc,IACjBA,EAAM2C,EAAOtD,UAAUjB,OAAS,IAEpC2uB,KAAM,WACL,MAAOD,IAAUtwB,MAAM,IAExBgyB,KAAM,WACL,MAAO1B,IAAUtwB,OAElBiyB,OAAQ,SAAUtV,GACjB,MAAsB,iBAAVA,GACJA,EAAQ3c,KAAKuwB,OAASvwB,KAAKgyB,OAG5BhyB,KAAKsC,KAAK,WACXsf,EAAU5hB,MACda,EAAQb,MAAOuwB,OAEf1vB,EAAQb,MAAOgyB,WAOnB,SAASE,IAAOxvB,EAAMa,EAASyc,EAAM7c,EAAKgvB,GACzC,MAAO,IAAID,IAAMzwB,UAAUR,KAAMyB,EAAMa,EAASyc,EAAM7c,EAAKgvB,GAE5DtxB,EAAOqxB,MAAQA,GAEfA,GAAMzwB,WACLE,YAAauwB,GACbjxB,KAAM,SAAUyB,EAAMa,EAASyc,EAAM7c,EAAKgvB,EAAQC,GACjDpyB,KAAK0C,KAAOA,EACZ1C,KAAKggB,KAAOA,EACZhgB,KAAKmyB,OAASA,GAAU,QACxBnyB,KAAKuD,QAAUA,EACfvD,KAAKgT,MAAQhT,KAAKmH,IAAMnH,KAAKiO,MAC7BjO,KAAKmD,IAAMA,EACXnD,KAAKoyB,KAAOA,IAAUvxB,EAAO8vB,UAAW3Q,GAAS,GAAK,OAEvD/R,IAAK,WACJ,GAAIiT,GAAQgR,GAAMG,UAAWryB,KAAKggB,KAElC,OAAOkB,IAASA,EAAMnf,IACrBmf,EAAMnf,IAAK/B,MACXkyB,GAAMG,UAAUjN,SAASrjB,IAAK/B,OAEhCsyB,IAAK,SAAUC,GACd,GAAIC,GACHtR,EAAQgR,GAAMG,UAAWryB,KAAKggB,KAoB/B,OAlBKhgB,MAAKuD,QAAQkvB,SACjBzyB,KAAKqa,IAAMmY,EAAQ3xB,EAAOsxB,OAAQnyB,KAAKmyB,QACtCI,EAASvyB,KAAKuD,QAAQkvB,SAAWF,EAAS,EAAG,EAAGvyB,KAAKuD,QAAQkvB,UAG9DzyB,KAAKqa,IAAMmY,EAAQD,EAEpBvyB,KAAKmH,KAAQnH,KAAKmD,IAAMnD,KAAKgT,OAAUwf,EAAQxyB,KAAKgT,MAE/ChT,KAAKuD,QAAQmvB,MACjB1yB,KAAKuD,QAAQmvB,KAAK5wB,KAAM9B,KAAK0C,KAAM1C,KAAKmH,IAAKnH,MAGzCkhB,GAASA,EAAMnB,IACnBmB,EAAMnB,IAAK/f,MAEXkyB,GAAMG,UAAUjN,SAASrF,IAAK/f,MAExBA,OAITkyB,GAAMzwB,UAAUR,KAAKQ,UAAYywB,GAAMzwB,UAEvCywB,GAAMG,WACLjN,UACCrjB,IAAK,SAAU4wB,GACd,GAAIngB,EAEJ,OAAiC,OAA5BmgB,EAAMjwB,KAAMiwB,EAAM3S,OACpB2S,EAAMjwB,KAAKkqB,OAA2C,MAAlC+F,EAAMjwB,KAAKkqB,MAAO+F,EAAM3S,OAQ/CxN,EAAS3R,EAAOihB,IAAK6Q,EAAMjwB,KAAMiwB,EAAM3S,KAAM,IAErCxN,GAAqB,SAAXA,EAAwBA,EAAJ,GAT9BmgB,EAAMjwB,KAAMiwB,EAAM3S,OAW3BD,IAAK,SAAU4S,GAIT9xB,EAAO+xB,GAAGF,KAAMC,EAAM3S,MAC1Bnf,EAAO+xB,GAAGF,KAAMC,EAAM3S,MAAQ2S,GACnBA,EAAMjwB,KAAKkqB,QAAgE,MAArD+F,EAAMjwB,KAAKkqB,MAAO/rB,EAAOywB,SAAUqB,EAAM3S,QAAoBnf,EAAO4vB,SAAUkC,EAAM3S,OACrHnf,EAAO+rB,MAAO+F,EAAMjwB,KAAMiwB,EAAM3S,KAAM2S,EAAMxrB,IAAMwrB,EAAMP,MAExDO,EAAMjwB,KAAMiwB,EAAM3S,MAAS2S,EAAMxrB,OAQrC+qB,GAAMG,UAAUvL,UAAYoL,GAAMG,UAAU3L,YAC3C3G,IAAK,SAAU4S,GACTA,EAAMjwB,KAAKuC,UAAY0tB,EAAMjwB,KAAKmD,aACtC8sB,EAAMjwB,KAAMiwB,EAAM3S,MAAS2S,EAAMxrB,OAKpCtG,EAAOsxB,QACNU,OAAQ,SAAUC,GACjB,MAAOA,IAERC,MAAO,SAAUD,GAChB,MAAO,GAAM1uB,KAAK4uB,IAAKF,EAAI1uB,KAAK6uB,IAAO,IAIzCpyB,EAAO+xB,GAAKV,GAAMzwB,UAAUR,KAG5BJ,EAAO+xB,GAAGF,OAKV,IACCQ,IAAOC,GACPC,GAAW,yBACXC,GAAS,GAAI1pB,QAAQ,iBAAmB8X,EAAO,cAAe,KAC9D6R,GAAO,cACPC,IAAwBC,IACxBC,IACCC,KAAO,SAAU1T,EAAM7Z,GACtB,GAAIwsB,GAAQ3yB,KAAK2zB,YAAa3T,EAAM7Z,GACnCtC,EAAS8uB,EAAM1kB,MACf8jB,EAAQsB,GAAOhnB,KAAMlG,GACrBisB,EAAOL,GAASA,EAAO,KAASlxB,EAAO8vB,UAAW3Q,GAAS,GAAK,MAGhEhN,GAAUnS,EAAO8vB,UAAW3Q,IAAmB,OAAToS,IAAkBvuB,IACvDwvB,GAAOhnB,KAAMxL,EAAOihB,IAAK6Q,EAAMjwB,KAAMsd,IACtC4T,EAAQ,EACRC,EAAgB,EAEjB,IAAK7gB,GAASA,EAAO,KAAQof,EAAO,CAEnCA,EAAOA,GAAQpf,EAAO,GAGtB+e,EAAQA,MAGR/e,GAASnP,GAAU,CAEnB,GAGC+vB,GAAQA,GAAS,KAGjB5gB,GAAgB4gB,EAChB/yB,EAAO+rB,MAAO+F,EAAMjwB,KAAMsd,EAAMhN,EAAQof,SAI/BwB,KAAWA,EAAQjB,EAAM1kB,MAAQpK,IAAqB,IAAV+vB,KAAiBC,GAaxE,MATK9B,KACJ/e,EAAQ2f,EAAM3f,OAASA,IAAUnP,GAAU,EAC3C8uB,EAAMP,KAAOA,EAEbO,EAAMxvB,IAAM4uB,EAAO,GAClB/e,GAAU+e,EAAO,GAAM,GAAMA,EAAO,IACnCA,EAAO,IAGHY,IAKV,SAASmB,MAIR,MAHA9U,YAAW,WACVkU,GAAQhvB,SAEAgvB,GAAQryB,EAAOsG,MAIzB,QAAS4sB,IAAOnvB,EAAMovB,GACrB,GAAI9N,GACHvjB,EAAI,EACJkL,GAAUomB,OAAQrvB,EAKnB,KADAovB,EAAeA,EAAe,EAAI,EACtB,EAAJrxB,EAAQA,GAAK,EAAIqxB,EACxB9N,EAAQvE,EAAWhf,GACnBkL,EAAO,SAAWqY,GAAUrY,EAAO,UAAYqY,GAAUthB,CAO1D,OAJKovB,KACJnmB,EAAM6iB,QAAU7iB,EAAM4f,MAAQ7oB,GAGxBiJ,EAGR,QAAS8lB,IAAaxtB,EAAO6Z,EAAMkU,GAKlC,IAJA,GAAIvB,GACHwB,GAAeV,GAAUzT,QAAe5f,OAAQqzB,GAAU,MAC1DnZ,EAAQ,EACR1Y,EAASuyB,EAAWvyB,OACLA,EAAR0Y,EAAgBA,IACvB,GAAMqY,EAAQwB,EAAY7Z,GAAQxY,KAAMoyB,EAAWlU,EAAM7Z,GAGxD,MAAOwsB,GAKV,QAASa,IAAkB9wB,EAAMojB,EAAOsO,GAEvC,GAAIpU,GAAM7Z,EAAO8rB,EAAQU,EAAOzR,EAAOmT,EAASxH,EAASyH,EACxDC,EAAOv0B,KACPioB,KACA2E,EAAQlqB,EAAKkqB,MACb4D,EAAS9tB,EAAKuC,UAAY2c,EAAUlf,GACpC8xB,EAAWnU,EAAUte,IAAKW,EAAM,SAG3B0xB,GAAKrT,QACVG,EAAQrgB,EAAOsgB,YAAaze,EAAM,MACX,MAAlBwe,EAAMuT,WACVvT,EAAMuT,SAAW,EACjBJ,EAAUnT,EAAMvM,MAAMqH,KACtBkF,EAAMvM,MAAMqH,KAAO,WACZkF,EAAMuT,UACXJ,MAIHnT,EAAMuT,WAENF,EAAK1X,OAAO,WAEX0X,EAAK1X,OAAO,WACXqE,EAAMuT,WACA5zB,EAAOkgB,MAAOre,EAAM,MAAOd,QAChCsf,EAAMvM,MAAMqH,YAOO,IAAlBtZ,EAAKuC,WAAoB,UAAY6gB,IAAS,SAAWA,MAK7DsO,EAAKM,UAAa9H,EAAM8H,SAAU9H,EAAM+H,UAAW/H,EAAMgI,WAIzD/H,EAAUhsB,EAAOihB,IAAKpf,EAAM,WAG5B4xB,EAA2B,SAAZzH,EACdxM,EAAUte,IAAKW,EAAM,eAAkBqqB,GAAgBrqB,EAAKuD,UAAa4mB,EAEpD,WAAjByH,GAA6D,SAAhCzzB,EAAOihB,IAAKpf,EAAM,WACnDkqB,EAAMC,QAAU,iBAIbuH,EAAKM,WACT9H,EAAM8H,SAAW,SACjBH,EAAK1X,OAAO,WACX+P,EAAM8H,SAAWN,EAAKM,SAAU,GAChC9H,EAAM+H,UAAYP,EAAKM,SAAU,GACjC9H,EAAMgI,UAAYR,EAAKM,SAAU,KAKnC,KAAM1U,IAAQ8F,GAEb,GADA3f,EAAQ2f,EAAO9F,GACVoT,GAAS/mB,KAAMlG,GAAU,CAG7B,SAFO2f,GAAO9F,GACdiS,EAASA,GAAoB,WAAV9rB,EACdA,KAAYqqB,EAAS,OAAS,QAAW,CAG7C,GAAe,SAAVrqB,IAAoBquB,GAAiCtwB,SAArBswB,EAAUxU,GAG9C,QAFAwQ,IAAS,EAKXvI,EAAMjI,GAASwU,GAAYA,EAAUxU,IAAUnf,EAAO+rB,MAAOlqB,EAAMsd,OAInE6M,GAAU3oB,MAIZ,IAAMrD,EAAOqE,cAAe+iB,GAyCqD,YAAxD,SAAZ4E,EAAqBE,GAAgBrqB,EAAKuD,UAAa4mB,KACnED,EAAMC,QAAUA,OA1CoB,CAC/B2H,EACC,UAAYA,KAChBhE,EAASgE,EAAShE,QAGnBgE,EAAWnU,EAAUpB,OAAQvc,EAAM,aAI/BuvB,IACJuC,EAAShE,QAAUA,GAEfA,EACJ3vB,EAAQ6B,GAAO6tB,OAEfgE,EAAK/rB,KAAK,WACT3H,EAAQ6B,GAAOsvB,SAGjBuC,EAAK/rB,KAAK,WACT,GAAIwX,EAEJK,GAAUjE,OAAQ1Z,EAAM,SACxB,KAAMsd,IAAQiI,GACbpnB,EAAO+rB,MAAOlqB,EAAMsd,EAAMiI,EAAMjI,KAGlC,KAAMA,IAAQiI,GACb0K,EAAQgB,GAAanD,EAASgE,EAAUxU,GAAS,EAAGA,EAAMuU,GAElDvU,IAAQwU,KACfA,EAAUxU,GAAS2S,EAAM3f,MACpBwd,IACJmC,EAAMxvB,IAAMwvB,EAAM3f,MAClB2f,EAAM3f,MAAiB,UAATgN,GAA6B,WAATA,EAAoB,EAAI,KAW/D,QAAS6U,IAAY/O,EAAOgP,GAC3B,GAAIxa,GAAO9W,EAAM2uB,EAAQhsB,EAAO+a,CAGhC,KAAM5G,IAASwL,GAed,GAdAtiB,EAAO3C,EAAOkF,UAAWuU,GACzB6X,EAAS2C,EAAetxB,GACxB2C,EAAQ2f,EAAOxL,GACVzZ,EAAOoD,QAASkC,KACpBgsB,EAAShsB,EAAO,GAChBA,EAAQ2f,EAAOxL,GAAUnU,EAAO,IAG5BmU,IAAU9W,IACdsiB,EAAOtiB,GAAS2C,QACT2f,GAAOxL,IAGf4G,EAAQrgB,EAAO4vB,SAAUjtB,GACpB0d,GAAS,UAAYA,GAAQ,CACjC/a,EAAQ+a,EAAM2Q,OAAQ1rB,SACf2f,GAAOtiB,EAId,KAAM8W,IAASnU,GACNmU,IAASwL,KAChBA,EAAOxL,GAAUnU,EAAOmU,GACxBwa,EAAexa,GAAU6X,OAI3B2C,GAAetxB,GAAS2uB,EAK3B,QAAS4C,IAAWryB,EAAMsyB,EAAYzxB,GACrC,GAAIiP,GACHyiB,EACA3a,EAAQ,EACR1Y,EAAS2xB,GAAoB3xB,OAC7Bkb,EAAWjc,EAAO2b,WAAWK,OAAQ,iBAE7BqY,GAAKxyB,OAEbwyB,EAAO,WACN,GAAKD,EACJ,OAAO,CAWR,KATA,GAAIE,GAAcjC,IAASY,KAC1BhW,EAAY1Z,KAAKyrB,IAAK,EAAGqE,EAAUkB,UAAYlB,EAAUzB,SAAW0C,GAGpEle,EAAO6G,EAAYoW,EAAUzB,UAAY,EACzCF,EAAU,EAAItb,EACdqD,EAAQ,EACR1Y,EAASsyB,EAAUmB,OAAOzzB,OAEXA,EAAR0Y,EAAiBA,IACxB4Z,EAAUmB,OAAQ/a,GAAQgY,IAAKC,EAKhC,OAFAzV,GAASoB,WAAYxb,GAAQwxB,EAAW3B,EAASzU,IAElC,EAAVyU,GAAe3wB,EACZkc,GAEPhB,EAASqB,YAAazb,GAAQwxB,KACvB,IAGTA,EAAYpX,EAASF,SACpBla,KAAMA,EACNojB,MAAOjlB,EAAOyC,UAAY0xB,GAC1BZ,KAAMvzB,EAAOyC,QAAQ,GAAQwxB,kBAAqBvxB,GAClD+xB,mBAAoBN,EACpBO,gBAAiBhyB,EACjB6xB,UAAWlC,IAASY,KACpBrB,SAAUlvB,EAAQkvB,SAClB4C,UACA1B,YAAa,SAAU3T,EAAM7c,GAC5B,GAAIwvB,GAAQ9xB,EAAOqxB,MAAOxvB,EAAMwxB,EAAUE,KAAMpU,EAAM7c,EACpD+wB,EAAUE,KAAKU,cAAe9U,IAAUkU,EAAUE,KAAKjC,OAEzD,OADA+B,GAAUmB,OAAOh1B,KAAMsyB,GAChBA,GAERvR,KAAM,SAAUoU,GACf,GAAIlb,GAAQ,EAGX1Y,EAAS4zB,EAAUtB,EAAUmB,OAAOzzB,OAAS,CAC9C,IAAKqzB,EACJ,MAAOj1B,KAGR,KADAi1B,GAAU,EACMrzB,EAAR0Y,EAAiBA,IACxB4Z,EAAUmB,OAAQ/a,GAAQgY,IAAK,EAShC,OALKkD,GACJ1Y,EAASqB,YAAazb,GAAQwxB,EAAWsB,IAEzC1Y,EAAS2Y,WAAY/yB,GAAQwxB,EAAWsB,IAElCx1B,QAGT8lB,EAAQoO,EAAUpO,KAInB,KAFA+O,GAAY/O,EAAOoO,EAAUE,KAAKU,eAElBlzB,EAAR0Y,EAAiBA,IAExB,GADA9H,EAAS+gB,GAAqBjZ,GAAQxY,KAAMoyB,EAAWxxB,EAAMojB,EAAOoO,EAAUE,MAE7E,MAAO5hB,EAmBT,OAfA3R,GAAO4B,IAAKqjB,EAAO6N,GAAaO,GAE3BrzB,EAAOkD,WAAYmwB,EAAUE,KAAKphB,QACtCkhB,EAAUE,KAAKphB,MAAMlR,KAAMY,EAAMwxB,GAGlCrzB,EAAO+xB,GAAG8C,MACT70B,EAAOyC,OAAQ4xB,GACdxyB,KAAMA,EACN6xB,KAAML,EACNnT,MAAOmT,EAAUE,KAAKrT,SAKjBmT,EAAU3W,SAAU2W,EAAUE,KAAK7W,UACxC/U,KAAM0rB,EAAUE,KAAK5rB,KAAM0rB,EAAUE,KAAKuB,UAC1C5Y,KAAMmX,EAAUE,KAAKrX,MACrBF,OAAQqX,EAAUE,KAAKvX,QAG1Bhc,EAAOk0B,UAAYl0B,EAAOyC,OAAQyxB,IAEjCa,QAAS,SAAU9P,EAAOvjB,GACpB1B,EAAOkD,WAAY+hB,IACvBvjB,EAAWujB,EACXA,GAAU,MAEVA,EAAQA,EAAMze,MAAM,IAOrB,KAJA,GAAI2Y,GACH1F,EAAQ,EACR1Y,EAASkkB,EAAMlkB,OAEAA,EAAR0Y,EAAiBA,IACxB0F,EAAO8F,EAAOxL,GACdmZ,GAAUzT,GAASyT,GAAUzT,OAC7ByT,GAAUzT,GAAOpP,QAASrO,IAI5BszB,UAAW,SAAUtzB,EAAUipB,GACzBA,EACJ+H,GAAoB3iB,QAASrO,GAE7BgxB,GAAoBlzB,KAAMkC,MAK7B1B,EAAOi1B,MAAQ,SAAUA,EAAO3D,EAAQnxB,GACvC,GAAI+0B,GAAMD,GAA0B,gBAAVA,GAAqBj1B,EAAOyC,UAAYwyB,IACjEH,SAAU30B,IAAOA,GAAMmxB,GACtBtxB,EAAOkD,WAAY+xB,IAAWA,EAC/BrD,SAAUqD,EACV3D,OAAQnxB,GAAMmxB,GAAUA,IAAWtxB,EAAOkD,WAAYouB,IAAYA,EAwBnE,OArBA4D,GAAItD,SAAW5xB,EAAO+xB,GAAGhU,IAAM,EAA4B,gBAAjBmX,GAAItD,SAAwBsD,EAAItD,SACzEsD,EAAItD,WAAY5xB,GAAO+xB,GAAGoD,OAASn1B,EAAO+xB,GAAGoD,OAAQD,EAAItD,UAAa5xB,EAAO+xB,GAAGoD,OAAO5Q,UAGtE,MAAb2Q,EAAIhV,OAAiBgV,EAAIhV,SAAU,KACvCgV,EAAIhV,MAAQ,MAIbgV,EAAI/pB,IAAM+pB,EAAIJ,SAEdI,EAAIJ,SAAW,WACT90B,EAAOkD,WAAYgyB,EAAI/pB,MAC3B+pB,EAAI/pB,IAAIlK,KAAM9B,MAGV+1B,EAAIhV,OACRlgB,EAAOmgB,QAAShhB,KAAM+1B,EAAIhV,QAIrBgV,GAGRl1B,EAAOG,GAAGsC,QACT2yB,OAAQ,SAAUH,EAAOI,EAAI/D,EAAQ5vB,GAGpC,MAAOvC,MAAKwP,OAAQoS,GAAWE,IAAK,UAAW,GAAIyO,OAGjDptB,MAAMgzB,SAAUzF,QAASwF,GAAMJ,EAAO3D,EAAQ5vB,IAEjD4zB,QAAS,SAAUnW,EAAM8V,EAAO3D,EAAQ5vB,GACvC,GAAIoS,GAAQ9T,EAAOqE,cAAe8a,GACjCoW,EAASv1B,EAAOi1B,MAAOA,EAAO3D,EAAQ5vB,GACtC8zB,EAAc,WAEb,GAAI9B,GAAOQ,GAAW/0B,KAAMa,EAAOyC,UAAY0c,GAAQoW,IAGlDzhB,GAAS0L,EAAUte,IAAK/B,KAAM,YAClCu0B,EAAKnT,MAAM,GAKd,OAFCiV,GAAYC,OAASD,EAEf1hB,GAASyhB,EAAOrV,SAAU,EAChC/gB,KAAKsC,KAAM+zB,GACXr2B,KAAK+gB,MAAOqV,EAAOrV,MAAOsV,IAE5BjV,KAAM,SAAUxc,EAAM0c,EAAYkU,GACjC,GAAIe,GAAY,SAAUrV,GACzB,GAAIE,GAAOF,EAAME,WACVF,GAAME,KACbA,EAAMoU,GAYP,OATqB,gBAAT5wB,KACX4wB,EAAUlU,EACVA,EAAa1c,EACbA,EAAOV,QAEHod,GAAc1c,KAAS,GAC3B5E,KAAK+gB,MAAOnc,GAAQ,SAGd5E,KAAKsC,KAAK,WAChB,GAAI0e,IAAU,EACb1G,EAAgB,MAAR1V,GAAgBA,EAAO,aAC/B4xB,EAAS31B,EAAO21B,OAChBva,EAAOoE,EAAUte,IAAK/B,KAEvB,IAAKsa,EACC2B,EAAM3B,IAAW2B,EAAM3B,GAAQ8G,MACnCmV,EAAWta,EAAM3B,QAGlB,KAAMA,IAAS2B,GACTA,EAAM3B,IAAW2B,EAAM3B,GAAQ8G,MAAQkS,GAAK3mB,KAAM2N,IACtDic,EAAWta,EAAM3B,GAKpB,KAAMA,EAAQkc,EAAO50B,OAAQ0Y,KACvBkc,EAAQlc,GAAQ5X,OAAS1C,MAAiB,MAAR4E,GAAgB4xB,EAAQlc,GAAQyG,QAAUnc,IAChF4xB,EAAQlc,GAAQia,KAAKnT,KAAMoU,GAC3BxU,GAAU,EACVwV,EAAOnzB,OAAQiX,EAAO,KAOnB0G,IAAYwU,IAChB30B,EAAOmgB,QAAShhB,KAAM4E,MAIzB0xB,OAAQ,SAAU1xB,GAIjB,MAHKA,MAAS,IACbA,EAAOA,GAAQ,MAET5E,KAAKsC,KAAK,WAChB,GAAIgY,GACH2B,EAAOoE,EAAUte,IAAK/B,MACtB+gB,EAAQ9E,EAAMrX,EAAO,SACrBsc,EAAQjF,EAAMrX,EAAO,cACrB4xB,EAAS31B,EAAO21B,OAChB50B,EAASmf,EAAQA,EAAMnf,OAAS,CAajC,KAVAqa,EAAKqa,QAAS,EAGdz1B,EAAOkgB,MAAO/gB,KAAM4E,MAEfsc,GAASA,EAAME,MACnBF,EAAME,KAAKtf,KAAM9B,MAAM,GAIlBsa,EAAQkc,EAAO50B,OAAQ0Y,KACvBkc,EAAQlc,GAAQ5X,OAAS1C,MAAQw2B,EAAQlc,GAAQyG,QAAUnc,IAC/D4xB,EAAQlc,GAAQia,KAAKnT,MAAM,GAC3BoV,EAAOnzB,OAAQiX,EAAO,GAKxB,KAAMA,EAAQ,EAAW1Y,EAAR0Y,EAAgBA,IAC3ByG,EAAOzG,IAAWyG,EAAOzG,GAAQgc,QACrCvV,EAAOzG,GAAQgc,OAAOx0B,KAAM9B,YAKvBic,GAAKqa,YAKfz1B,EAAOyB,MAAO,SAAU,OAAQ,QAAU,SAAUK,EAAGa,GACtD,GAAIizB,GAAQ51B,EAAOG,GAAIwC,EACvB3C,GAAOG,GAAIwC,GAAS,SAAUsyB,EAAO3D,EAAQ5vB,GAC5C,MAAgB,OAATuzB,GAAkC,iBAAVA,GAC9BW,EAAM7zB,MAAO5C,KAAM6C,WACnB7C,KAAKm2B,QAASpC,GAAOvwB,GAAM,GAAQsyB,EAAO3D,EAAQ5vB,MAKrD1B,EAAOyB,MACNo0B,UAAW3C,GAAM,QACjB4C,QAAS5C,GAAM,QACf6C,YAAa7C,GAAM,UACnB8C,QAAUnG,QAAS,QACnBoG,SAAWpG,QAAS,QACpBqG,YAAcrG,QAAS,WACrB,SAAUltB,EAAMsiB,GAClBjlB,EAAOG,GAAIwC,GAAS,SAAUsyB,EAAO3D,EAAQ5vB,GAC5C,MAAOvC,MAAKm2B,QAASrQ,EAAOgQ,EAAO3D,EAAQ5vB,MAI7C1B,EAAO21B,UACP31B,EAAO+xB,GAAGsC,KAAO,WAChB,GAAIQ,GACH/yB,EAAI,EACJ6zB,EAAS31B,EAAO21B,MAIjB,KAFAtD,GAAQryB,EAAOsG,MAEPxE,EAAI6zB,EAAO50B,OAAQe,IAC1B+yB,EAAQc,EAAQ7zB,GAEV+yB,KAAWc,EAAQ7zB,KAAQ+yB,GAChCc,EAAOnzB,OAAQV,IAAK,EAIhB6zB,GAAO50B,QACZf,EAAO+xB,GAAGxR,OAEX8R,GAAQhvB,QAGTrD,EAAO+xB,GAAG8C,MAAQ,SAAUA,GAC3B70B,EAAO21B,OAAOn2B,KAAMq1B,GACfA,IACJ70B,EAAO+xB,GAAG5f,QAEVnS,EAAO21B,OAAOvtB,OAIhBpI,EAAO+xB,GAAGoE,SAAW,GAErBn2B,EAAO+xB,GAAG5f,MAAQ,WACXmgB,KACLA,GAAU8D,YAAap2B,EAAO+xB,GAAGsC,KAAMr0B,EAAO+xB,GAAGoE,YAInDn2B,EAAO+xB,GAAGxR,KAAO,WAChB8V,cAAe/D,IACfA,GAAU,MAGXtyB,EAAO+xB,GAAGoD,QACTmB,KAAM,IACNC,KAAM,IAENhS,SAAU,KAMXvkB,EAAOG,GAAGq2B,MAAQ,SAAUC,EAAM1yB,GAIjC,MAHA0yB,GAAOz2B,EAAO+xB,GAAK/xB,EAAO+xB,GAAGoD,OAAQsB,IAAUA,EAAOA,EACtD1yB,EAAOA,GAAQ,KAER5E,KAAK+gB,MAAOnc,EAAM,SAAUgV,EAAMsH,GACxC,GAAIqW,GAAUvY,WAAYpF,EAAM0d,EAChCpW,GAAME,KAAO,WACZoW,aAAcD,OAMjB,WACC,GAAI1nB,GAAQjQ,EAAS6F,cAAe,SACnCmC,EAAShI,EAAS6F,cAAe,UACjCswB,EAAMnuB,EAAOhC,YAAahG,EAAS6F,cAAe,UAEnDoK,GAAMjL,KAAO,WAIbjE,EAAQ82B,QAA0B,KAAhB5nB,EAAM1J,MAIxBxF,EAAQ+2B,YAAc3B,EAAIthB,SAI1B7M,EAAO2M,UAAW,EAClB5T,EAAQg3B,aAAe5B,EAAIxhB,SAI3B1E,EAAQjQ,EAAS6F,cAAe,SAChCoK,EAAM1J,MAAQ,IACd0J,EAAMjL,KAAO,QACbjE,EAAQi3B,WAA6B,MAAhB/nB,EAAM1J,QAI5B,IAAI0xB,IAAUC,GACb/pB,GAAalN,EAAOgQ,KAAK9C,UAE1BlN,GAAOG,GAAGsC,QACTyN,KAAM,SAAUvN,EAAM2C,GACrB,MAAO8Y,GAAQjf,KAAMa,EAAOkQ,KAAMvN,EAAM2C,EAAOtD,UAAUjB,OAAS,IAGnEm2B,WAAY,SAAUv0B,GACrB,MAAOxD,MAAKsC,KAAK,WAChBzB,EAAOk3B,WAAY/3B,KAAMwD,QAK5B3C,EAAOyC,QACNyN,KAAM,SAAUrO,EAAMc,EAAM2C,GAC3B,GAAI+a,GAAO/e,EACV61B,EAAQt1B,EAAKuC,QAGd,IAAMvC,GAAkB,IAAVs1B,GAAyB,IAAVA,GAAyB,IAAVA,EAK5C,aAAYt1B,GAAKkK,eAAiByV,EAC1BxhB,EAAOmf,KAAMtd,EAAMc,EAAM2C,IAKlB,IAAV6xB,GAAgBn3B,EAAOgY,SAAUnW,KACrCc,EAAOA,EAAK0C,cACZgb,EAAQrgB,EAAOo3B,UAAWz0B,KACvB3C,EAAOgQ,KAAKhF,MAAMrB,KAAKmC,KAAMnJ,GAASs0B,GAAWD;AAGtC3zB,SAAViC,EAaO+a,GAAS,OAASA,IAA6C,QAAnC/e,EAAM+e,EAAMnf,IAAKW,EAAMc,IACvDrB,GAGPA,EAAMtB,EAAO0O,KAAKwB,KAAMrO,EAAMc,GAGhB,MAAPrB,EACN+B,OACA/B,GApBc,OAAVgE,EAGO+a,GAAS,OAASA,IAAoDhd,UAA1C/B,EAAM+e,EAAMnB,IAAKrd,EAAMyD,EAAO3C,IAC9DrB,GAGPO,EAAKmK,aAAcrJ,EAAM2C,EAAQ,IAC1BA,OAPPtF,GAAOk3B,WAAYr1B,EAAMc,KAuB5Bu0B,WAAY,SAAUr1B,EAAMyD,GAC3B,GAAI3C,GAAM00B,EACTv1B,EAAI,EACJw1B,EAAYhyB,GAASA,EAAM0F,MAAOqP,EAEnC,IAAKid,GAA+B,IAAlBz1B,EAAKuC,SACtB,MAASzB,EAAO20B,EAAUx1B,KACzBu1B,EAAWr3B,EAAOu3B,QAAS50B,IAAUA,EAGhC3C,EAAOgQ,KAAKhF,MAAMrB,KAAKmC,KAAMnJ,KAEjCd,EAAMw1B,IAAa,GAGpBx1B,EAAKyK,gBAAiB3J,IAKzBy0B,WACCrzB,MACCmb,IAAK,SAAUrd,EAAMyD,GACpB,IAAMxF,EAAQi3B,YAAwB,UAAVzxB,GAC3BtF,EAAOoF,SAAUvD,EAAM,SAAY,CACnC,GAAIsO,GAAMtO,EAAKyD,KAKf,OAJAzD,GAAKmK,aAAc,OAAQ1G,GACtB6K,IACJtO,EAAKyD,MAAQ6K,GAEP7K,QAQZ2xB,IACC/X,IAAK,SAAUrd,EAAMyD,EAAO3C,GAO3B,MANK2C,MAAU,EAEdtF,EAAOk3B,WAAYr1B,EAAMc,GAEzBd,EAAKmK,aAAcrJ,EAAMA,GAEnBA,IAGT3C,EAAOyB,KAAMzB,EAAOgQ,KAAKhF,MAAMrB,KAAKkX,OAAO7V,MAAO,QAAU,SAAUlJ,EAAGa,GACxE,GAAI60B,GAAStqB,GAAYvK,IAAU3C,EAAO0O,KAAKwB,IAE/ChD,IAAYvK,GAAS,SAAUd,EAAMc,EAAMiE,GAC1C,GAAItF,GAAKwhB,CAUT,OATMlc,KAELkc,EAAS5V,GAAYvK,GACrBuK,GAAYvK,GAASrB,EACrBA,EAAqC,MAA/Bk2B,EAAQ31B,EAAMc,EAAMiE,GACzBjE,EAAK0C,cACL,KACD6H,GAAYvK,GAASmgB,GAEfxhB,IAOT,IAAIm2B,IAAa,qCAEjBz3B,GAAOG,GAAGsC,QACT0c,KAAM,SAAUxc,EAAM2C,GACrB,MAAO8Y,GAAQjf,KAAMa,EAAOmf,KAAMxc,EAAM2C,EAAOtD,UAAUjB,OAAS,IAGnE22B,WAAY,SAAU/0B,GACrB,MAAOxD,MAAKsC,KAAK,iBACTtC,MAAMa,EAAOu3B,QAAS50B,IAAUA,QAK1C3C,EAAOyC,QACN80B,SACCI,MAAO,UACPC,QAAS,aAGVzY,KAAM,SAAUtd,EAAMc,EAAM2C,GAC3B,GAAIhE,GAAK+e,EAAOwX,EACfV,EAAQt1B,EAAKuC,QAGd,IAAMvC,GAAkB,IAAVs1B,GAAyB,IAAVA,GAAyB,IAAVA,EAY5C,MARAU,GAAmB,IAAVV,IAAgBn3B,EAAOgY,SAAUnW,GAErCg2B,IAEJl1B,EAAO3C,EAAOu3B,QAAS50B,IAAUA,EACjC0d,EAAQrgB,EAAOwxB,UAAW7uB,IAGZU,SAAViC,EACG+a,GAAS,OAASA,IAAoDhd,UAA1C/B,EAAM+e,EAAMnB,IAAKrd,EAAMyD,EAAO3C,IAChErB,EACEO,EAAMc,GAAS2C,EAGX+a,GAAS,OAASA,IAA6C,QAAnC/e,EAAM+e,EAAMnf,IAAKW,EAAMc,IACzDrB,EACAO,EAAMc,IAIT6uB,WACChe,UACCtS,IAAK,SAAUW,GACd,MAAOA,GAAKi2B,aAAc,aAAgBL,GAAW3rB,KAAMjK,EAAKuD,WAAcvD,EAAK0R,KAClF1R,EAAK2R,SACL,QAMC1T,EAAQ+2B,cACb72B,EAAOwxB,UAAU5d,UAChB1S,IAAK,SAAUW,GACd,GAAImM,GAASnM,EAAKmD,UAIlB,OAHKgJ,IAAUA,EAAOhJ,YACrBgJ,EAAOhJ,WAAW6O,cAEZ,QAKV7T,EAAOyB,MACN,WACA,WACA,YACA,cACA,cACA,UACA,UACA,SACA,cACA,mBACE,WACFzB,EAAOu3B,QAASp4B,KAAKkG,eAAkBlG,MAMxC,IAAI44B,IAAS,aAEb/3B,GAAOG,GAAGsC,QACTu1B,SAAU,SAAU1yB,GACnB,GAAI2yB,GAASp2B,EAAMuL,EAAK8qB,EAAO71B,EAAG81B,EACjCC,EAA2B,gBAAV9yB,IAAsBA,EACvCxD,EAAI,EACJM,EAAMjD,KAAK4B,MAEZ,IAAKf,EAAOkD,WAAYoC,GACvB,MAAOnG,MAAKsC,KAAK,SAAUY,GAC1BrC,EAAQb,MAAO64B,SAAU1yB,EAAMrE,KAAM9B,KAAMkD,EAAGlD,KAAKmP,aAIrD,IAAK8pB,EAIJ,IAFAH,GAAY3yB,GAAS,IAAK0F,MAAOqP,OAErBjY,EAAJN,EAASA,IAOhB,GANAD,EAAO1C,KAAM2C,GACbsL,EAAwB,IAAlBvL,EAAKuC,WAAoBvC,EAAKyM,WACjC,IAAMzM,EAAKyM,UAAY,KAAM7K,QAASs0B,GAAQ,KAChD,KAGU,CACV11B,EAAI,CACJ,OAAS61B,EAAQD,EAAQ51B,KACnB+K,EAAI3N,QAAS,IAAMy4B,EAAQ,KAAQ,IACvC9qB,GAAO8qB,EAAQ,IAKjBC,GAAan4B,EAAO2E,KAAMyI,GACrBvL,EAAKyM,YAAc6pB,IACvBt2B,EAAKyM,UAAY6pB,GAMrB,MAAOh5B,OAGRk5B,YAAa,SAAU/yB,GACtB,GAAI2yB,GAASp2B,EAAMuL,EAAK8qB,EAAO71B,EAAG81B,EACjCC,EAA+B,IAArBp2B,UAAUjB,QAAiC,gBAAVuE,IAAsBA,EACjExD,EAAI,EACJM,EAAMjD,KAAK4B,MAEZ,IAAKf,EAAOkD,WAAYoC,GACvB,MAAOnG,MAAKsC,KAAK,SAAUY,GAC1BrC,EAAQb,MAAOk5B,YAAa/yB,EAAMrE,KAAM9B,KAAMkD,EAAGlD,KAAKmP,aAGxD,IAAK8pB,EAGJ,IAFAH,GAAY3yB,GAAS,IAAK0F,MAAOqP,OAErBjY,EAAJN,EAASA,IAQhB,GAPAD,EAAO1C,KAAM2C,GAEbsL,EAAwB,IAAlBvL,EAAKuC,WAAoBvC,EAAKyM,WACjC,IAAMzM,EAAKyM,UAAY,KAAM7K,QAASs0B,GAAQ,KAChD,IAGU,CACV11B,EAAI,CACJ,OAAS61B,EAAQD,EAAQ51B,KAExB,MAAQ+K,EAAI3N,QAAS,IAAMy4B,EAAQ,MAAS,EAC3C9qB,EAAMA,EAAI3J,QAAS,IAAMy0B,EAAQ,IAAK,IAKxCC,GAAa7yB,EAAQtF,EAAO2E,KAAMyI,GAAQ,GACrCvL,EAAKyM,YAAc6pB,IACvBt2B,EAAKyM,UAAY6pB,GAMrB,MAAOh5B,OAGRm5B,YAAa,SAAUhzB,EAAOizB,GAC7B,GAAIx0B,SAAcuB,EAElB,OAAyB,iBAAbizB,IAAmC,WAATx0B,EAC9Bw0B,EAAWp5B,KAAK64B,SAAU1yB,GAAUnG,KAAKk5B,YAAa/yB,GAItDnG,KAAKsC,KADRzB,EAAOkD,WAAYoC,GACN,SAAUxD,GAC1B9B,EAAQb,MAAOm5B,YAAahzB,EAAMrE,KAAK9B,KAAM2C,EAAG3C,KAAKmP,UAAWiqB,GAAWA,IAI5D,WAChB,GAAc,WAATx0B,EAAoB,CAExB,GAAIuK,GACHxM,EAAI,EACJwW,EAAOtY,EAAQb,MACfq5B,EAAalzB,EAAM0F,MAAOqP,MAE3B,OAAS/L,EAAYkqB,EAAY12B,KAE3BwW,EAAKmgB,SAAUnqB,GACnBgK,EAAK+f,YAAa/pB,GAElBgK,EAAK0f,SAAU1pB,QAKNvK,IAASyd,GAAyB,YAATzd,KAC/B5E,KAAKmP,WAETkR,EAAUN,IAAK/f,KAAM,gBAAiBA,KAAKmP,WAO5CnP,KAAKmP,UAAYnP,KAAKmP,WAAahJ,KAAU,EAAQ,GAAKka,EAAUte,IAAK/B,KAAM,kBAAqB,OAKvGs5B,SAAU,SAAUx4B,GAInB,IAHA,GAAIqO,GAAY,IAAMrO,EAAW,IAChC6B,EAAI,EACJwX,EAAIna,KAAK4B,OACEuY,EAAJxX,EAAOA,IACd,GAA0B,IAArB3C,KAAK2C,GAAGsC,WAAmB,IAAMjF,KAAK2C,GAAGwM,UAAY,KAAK7K,QAAQs0B,GAAQ,KAAKt4B,QAAS6O,IAAe,EAC3G,OAAO,CAIT,QAAO,IAOT,IAAIoqB,IAAU,KAEd14B,GAAOG,GAAGsC,QACT0N,IAAK,SAAU7K,GACd,GAAI+a,GAAO/e,EAAK4B,EACfrB,EAAO1C,KAAK,EAEb,EAAA,GAAM6C,UAAUjB,OAsBhB,MAFAmC,GAAalD,EAAOkD,WAAYoC,GAEzBnG,KAAKsC,KAAK,SAAUK,GAC1B,GAAIqO,EAEmB,KAAlBhR,KAAKiF,WAKT+L,EADIjN,EACEoC,EAAMrE,KAAM9B,KAAM2C,EAAG9B,EAAQb,MAAOgR,OAEpC7K,EAIK,MAAP6K,EACJA,EAAM,GAEoB,gBAARA,GAClBA,GAAO,GAEInQ,EAAOoD,QAAS+M,KAC3BA,EAAMnQ,EAAO4B,IAAKuO,EAAK,SAAU7K,GAChC,MAAgB,OAATA,EAAgB,GAAKA,EAAQ,MAItC+a,EAAQrgB,EAAO24B,SAAUx5B,KAAK4E,OAAU/D,EAAO24B,SAAUx5B,KAAKiG,SAASC,eAGjEgb,GAAW,OAASA,IAA8Chd,SAApCgd,EAAMnB,IAAK/f,KAAMgR,EAAK,WACzDhR,KAAKmG,MAAQ6K,KAnDd,IAAKtO,EAGJ,MAFAwe,GAAQrgB,EAAO24B,SAAU92B,EAAKkC,OAAU/D,EAAO24B,SAAU92B,EAAKuD,SAASC,eAElEgb,GAAS,OAASA,IAAgDhd,UAAtC/B,EAAM+e,EAAMnf,IAAKW,EAAM,UAChDP,GAGRA,EAAMO,EAAKyD,MAEW,gBAARhE,GAEbA,EAAImC,QAAQi1B,GAAS,IAEd,MAAPp3B,EAAc,GAAKA,OA4CxBtB,EAAOyC,QACNk2B,UACCvQ,QACClnB,IAAK,SAAUW,GACd,GAAIsO,GAAMnQ,EAAO0O,KAAKwB,KAAMrO,EAAM,QAClC,OAAc,OAAPsO,EACNA,EAGAnQ,EAAO2E,KAAM3E,EAAO6E,KAAMhD,MAG7BkF,QACC7F,IAAK,SAAUW,GAYd,IAXA,GAAIyD,GAAO8iB,EACV1lB,EAAUb,EAAKa,QACf+W,EAAQ5X,EAAKgS,cACb4T,EAAoB,eAAd5lB,EAAKkC,MAAiC,EAAR0V,EACpC0D,EAASsK,EAAM,QACfuH,EAAMvH,EAAMhO,EAAQ,EAAI/W,EAAQ3B,OAChCe,EAAY,EAAR2X,EACHuV,EACAvH,EAAMhO,EAAQ,EAGJuV,EAAJltB,EAASA,IAIhB,GAHAsmB,EAAS1lB,EAASZ,MAGXsmB,EAAOxU,UAAY9R,IAAM2X,IAE5B3Z,EAAQg3B,YAAe1O,EAAO1U,SAAiD,OAAtC0U,EAAOrc,aAAc,cAC7Dqc,EAAOpjB,WAAW0O,UAAa1T,EAAOoF,SAAUgjB,EAAOpjB,WAAY,aAAiB,CAMxF,GAHAM,EAAQtF,EAAQooB,GAASjY,MAGpBsX,EACJ,MAAOniB,EAIR6X,GAAO3d,KAAM8F,GAIf,MAAO6X,IAGR+B,IAAK,SAAUrd,EAAMyD,GACpB,GAAIszB,GAAWxQ,EACd1lB,EAAUb,EAAKa,QACfya,EAASnd,EAAOwF,UAAWF,GAC3BxD,EAAIY,EAAQ3B,MAEb,OAAQe,IACPsmB,EAAS1lB,EAASZ,IACZsmB,EAAOxU,SAAW5T,EAAO2F,QAASyiB,EAAO9iB,MAAO6X,IAAY,KACjEyb,GAAY,EAQd,OAHMA,KACL/2B,EAAKgS,cAAgB,IAEfsJ,OAOXnd,EAAOyB,MAAO,QAAS,YAAc,WACpCzB,EAAO24B,SAAUx5B,OAChB+f,IAAK,SAAUrd,EAAMyD,GACpB,MAAKtF,GAAOoD,QAASkC,GACXzD,EAAK8R,QAAU3T,EAAO2F,QAAS3F,EAAO6B,GAAMsO,MAAO7K,IAAW,EADxE,SAKIxF,EAAQ82B,UACb52B,EAAO24B,SAAUx5B,MAAO+B,IAAM,SAAUW,GACvC,MAAsC,QAA/BA,EAAKkK,aAAa,SAAoB,KAAOlK,EAAKyD,UAW5DtF,EAAOyB,KAAM,0MAEqD+E,MAAM,KAAM,SAAU1E,EAAGa,GAG1F3C,EAAOG,GAAIwC,GAAS,SAAUyY,EAAMjb,GACnC,MAAO6B,WAAUjB,OAAS,EACzB5B,KAAKqoB,GAAI7kB,EAAM,KAAMyY,EAAMjb,GAC3BhB,KAAKukB,QAAS/gB,MAIjB3C,EAAOG,GAAGsC,QACTo2B,MAAO,SAAUC,EAAQC,GACxB,MAAO55B,MAAK6nB,WAAY8R,GAAS7R,WAAY8R,GAASD,IAGvDE,KAAM,SAAU7W,EAAO/G,EAAMjb,GAC5B,MAAOhB,MAAKqoB,GAAIrF,EAAO,KAAM/G,EAAMjb,IAEpC84B,OAAQ,SAAU9W,EAAOhiB,GACxB,MAAOhB,MAAK4e,IAAKoE,EAAO,KAAMhiB,IAG/B+4B,SAAU,SAAUj5B,EAAUkiB,EAAO/G,EAAMjb,GAC1C,MAAOhB,MAAKqoB,GAAIrF,EAAOliB,EAAUmb,EAAMjb,IAExCg5B,WAAY,SAAUl5B,EAAUkiB,EAAOhiB,GAEtC,MAA4B,KAArB6B,UAAUjB,OAAe5B,KAAK4e,IAAK9d,EAAU,MAASd,KAAK4e,IAAKoE,EAAOliB,GAAY,KAAME,KAKlG,IAAIi5B,IAAQp5B,EAAOsG,MAEf+yB,GAAS,IAMbr5B,GAAO6f,UAAY,SAAUzE,GAC5B,MAAOke,MAAKC,MAAOne,EAAO,KAK3Bpb,EAAOw5B,SAAW,SAAUpe,GAC3B,GAAIpJ,GAAK3L,CACT,KAAM+U,GAAwB,gBAATA,GACpB,MAAO,KAIR,KACC/U,EAAM,GAAIozB,WACVznB,EAAM3L,EAAIqzB,gBAAiBte,EAAM,YAChC,MAAQvQ,GACTmH,EAAM3O,OAMP,QAHM2O,GAAOA,EAAIrG,qBAAsB,eAAgB5K,SACtDf,EAAO2D,MAAO,gBAAkByX,GAE1BpJ,EAIR,IACC2nB,IAAQ,OACRC,GAAM,gBACNC,GAAW,6BAEXC,GAAiB,4DACjBC,GAAa,iBACbC,GAAY,QACZC,GAAO,4DAWPC,MAOAC,MAGAC,GAAW,KAAK76B,OAAQ,KAGxB86B,GAAen7B,EAAOgU,SAASK,KAG/B+mB,GAAeL,GAAKzuB,KAAM6uB,GAAah1B,kBAGxC,SAASk1B,IAA6BC,GAGrC,MAAO,UAAUC,EAAoB7e,GAED,gBAAvB6e,KACX7e,EAAO6e,EACPA,EAAqB,IAGtB,IAAIC,GACH54B,EAAI,EACJ64B,EAAYF,EAAmBp1B,cAAc2F,MAAOqP,MAErD,IAAKra,EAAOkD,WAAY0Y,GAEvB,MAAS8e,EAAWC,EAAU74B,KAER,MAAhB44B,EAAS,IACbA,EAAWA,EAASp7B,MAAO,IAAO,KACjCk7B,EAAWE,GAAaF,EAAWE,QAAkB3qB,QAAS6L,KAI9D4e,EAAWE,GAAaF,EAAWE,QAAkBl7B,KAAMoc,IAQjE,QAASgf,IAA+BJ,EAAW93B,EAASgyB,EAAiBmG,GAE5E,GAAIC,MACHC,EAAqBP,IAAcL,EAEpC,SAASa,GAASN,GACjB,GAAI9mB,EAYJ,OAXAknB,GAAWJ,IAAa,EACxB16B,EAAOyB,KAAM+4B,EAAWE,OAAkB,SAAUrwB,EAAG4wB,GACtD,GAAIC,GAAsBD,EAAoBv4B,EAASgyB,EAAiBmG,EACxE,OAAoC,gBAAxBK,IAAqCH,GAAqBD,EAAWI,GAIrEH,IACDnnB,EAAWsnB,GADf,QAHNx4B,EAAQi4B,UAAU5qB,QAASmrB,GAC3BF,EAASE,IACF,KAKFtnB,EAGR,MAAOonB,GAASt4B,EAAQi4B,UAAW,MAAUG,EAAW,MAASE,EAAS,KAM3E,QAASG,IAAYn4B,EAAQJ,GAC5B,GAAI6J,GAAKxJ,EACRm4B,EAAcp7B,EAAOq7B,aAAaD,eAEnC,KAAM3uB,IAAO7J,GACQS,SAAfT,EAAK6J,MACP2uB,EAAa3uB,GAAQzJ,EAAWC,IAASA,OAAgBwJ,GAAQ7J,EAAK6J,GAO1E,OAJKxJ,IACJjD,EAAOyC,QAAQ,EAAMO,EAAQC,GAGvBD,EAOR,QAASs4B,IAAqBC,EAAGV,EAAOW,GAEvC,GAAIC,GAAI13B,EAAM23B,EAAeC,EAC5B7iB,EAAWyiB,EAAEziB,SACb6hB,EAAYY,EAAEZ,SAGf,OAA2B,MAAnBA,EAAW,GAClBA,EAAUhuB,QACEtJ,SAAPo4B,IACJA,EAAKF,EAAEK,UAAYf,EAAMgB,kBAAkB,gBAK7C,IAAKJ,EACJ,IAAM13B,IAAQ+U,GACb,GAAKA,EAAU/U,IAAU+U,EAAU/U,GAAO+H,KAAM2vB,GAAO,CACtDd,EAAU5qB,QAAShM,EACnB,OAMH,GAAK42B,EAAW,IAAOa,GACtBE,EAAgBf,EAAW,OACrB,CAEN,IAAM52B,IAAQy3B,GAAY,CACzB,IAAMb,EAAW,IAAOY,EAAEO,WAAY/3B,EAAO,IAAM42B,EAAU,IAAO,CACnEe,EAAgB33B,CAChB,OAEK43B,IACLA,EAAgB53B,GAIlB23B,EAAgBA,GAAiBC,EAMlC,MAAKD,IACCA,IAAkBf,EAAW,IACjCA,EAAU5qB,QAAS2rB,GAEbF,EAAWE,IAJnB,OAWD,QAASK,IAAaR,EAAGS,EAAUnB,EAAOoB,GACzC,GAAIC,GAAOC,EAASC,EAAM/1B,EAAK2S,EAC9B8iB,KAEAnB,EAAYY,EAAEZ,UAAUr7B,OAGzB,IAAKq7B,EAAW,GACf,IAAMyB,IAAQb,GAAEO,WACfA,EAAYM,EAAK/2B,eAAkBk2B,EAAEO,WAAYM,EAInDD,GAAUxB,EAAUhuB,OAGpB,OAAQwvB,EAcP,GAZKZ,EAAEc,eAAgBF,KACtBtB,EAAOU,EAAEc,eAAgBF,IAAcH,IAIlChjB,GAAQijB,GAAaV,EAAEe,aAC5BN,EAAWT,EAAEe,WAAYN,EAAUT,EAAEb,WAGtC1hB,EAAOmjB,EACPA,EAAUxB,EAAUhuB,QAKnB,GAAiB,MAAZwvB,EAEJA,EAAUnjB,MAGJ,IAAc,MAATA,GAAgBA,IAASmjB,EAAU,CAM9C,GAHAC,EAAON,EAAY9iB,EAAO,IAAMmjB,IAAaL,EAAY,KAAOK,IAG1DC,EACL,IAAMF,IAASJ,GAId,GADAz1B,EAAM61B,EAAM11B,MAAO,KACdH,EAAK,KAAQ81B,IAGjBC,EAAON,EAAY9iB,EAAO,IAAM3S,EAAK,KACpCy1B,EAAY,KAAOz1B,EAAK,KACb,CAEN+1B,KAAS,EACbA,EAAON,EAAYI,GAGRJ,EAAYI,MAAY,IACnCC,EAAU91B,EAAK,GACfs0B,EAAU5qB,QAAS1J,EAAK,IAEzB,OAOJ,GAAK+1B,KAAS,EAGb,GAAKA,GAAQb,EAAG,UACfS,EAAWI,EAAMJ,OAEjB,KACCA,EAAWI,EAAMJ,GAChB,MAAQnxB,GACT,OAASiR,MAAO,cAAenY,MAAOy4B,EAAOvxB,EAAI,sBAAwBmO,EAAO,OAASmjB,IAQ/F,OAASrgB,MAAO,UAAWV,KAAM4gB,GAGlCh8B,EAAOyC,QAGN85B,OAAQ,EAGRC,gBACAC,QAEApB,cACCqB,IAAKrC,GACLt2B,KAAM,MACN44B,QAAS7C,GAAehuB,KAAMwuB,GAAc,IAC5C37B,QAAQ,EACRi+B,aAAa,EACbC,OAAO,EACPC,YAAa,mDAabhe,SACC+T,IAAKuH,GACLv1B,KAAM,aACNmmB,KAAM,YACNhZ,IAAK,4BACL+qB,KAAM,qCAGPjkB,UACC9G,IAAK,MACLgZ,KAAM,OACN+R,KAAM,QAGPV,gBACCrqB,IAAK,cACLnN,KAAM,eACNk4B,KAAM,gBAKPjB,YAGCkB,SAAUvyB,OAGVwyB,aAAa,EAGbC,YAAal9B,EAAO6f,UAGpBsd,WAAYn9B,EAAOw5B,UAOpB4B,aACCsB,KAAK,EACLx8B,SAAS,IAOXk9B,UAAW,SAAUp6B,EAAQq6B,GAC5B,MAAOA,GAGNlC,GAAYA,GAAYn4B,EAAQhD,EAAOq7B,cAAgBgC,GAGvDlC,GAAYn7B,EAAOq7B,aAAcr4B,IAGnCs6B,cAAe/C,GAA6BL,IAC5CqD,cAAehD,GAA6BJ,IAG5CqD,KAAM,SAAUd,EAAKh6B,GAGA,gBAARg6B,KACXh6B,EAAUg6B,EACVA,EAAMr5B,QAIPX,EAAUA,KAEV,IAAI+6B,GAEHC,EAEAC,EACAC,EAEAC,EAEA3M,EAEA4M,EAEAh8B,EAEAy5B,EAAIv7B,EAAOo9B,aAAe16B,GAE1Bq7B,EAAkBxC,EAAEr7B,SAAWq7B,EAE/ByC,EAAqBzC,EAAEr7B,UAAa69B,EAAgB35B,UAAY25B,EAAgBl9B,QAC/Eb,EAAQ+9B,GACR/9B,EAAOkiB,MAERjG,EAAWjc,EAAO2b,WAClBsiB,EAAmBj+B,EAAO0a,UAAU,eAEpCwjB,EAAa3C,EAAE2C,eAEfC,KACAC,KAEAtiB,EAAQ,EAERuiB,EAAW,WAEXxD,GACC3c,WAAY,EAGZ2d,kBAAmB,SAAUpvB,GAC5B,GAAIzB,EACJ,IAAe,IAAV8Q,EAAc,CAClB,IAAM8hB,EAAkB,CACvBA,IACA,OAAS5yB,EAAQ6uB,GAASruB,KAAMmyB,GAC/BC,EAAiB5yB,EAAM,GAAG3F,eAAkB2F,EAAO,GAGrDA,EAAQ4yB,EAAiBnxB,EAAIpH,eAE9B,MAAgB,OAAT2F,EAAgB,KAAOA,GAI/BszB,sBAAuB,WACtB,MAAiB,KAAVxiB,EAAc6hB,EAAwB,MAI9CY,iBAAkB,SAAU57B,EAAM2C,GACjC,GAAIk5B,GAAQ77B,EAAK0C,aAKjB,OAJMyW,KACLnZ,EAAOy7B,EAAqBI,GAAUJ,EAAqBI,IAAW77B,EACtEw7B,EAAgBx7B,GAAS2C,GAEnBnG,MAIRs/B,iBAAkB,SAAU16B,GAI3B,MAHM+X,KACLyf,EAAEK,SAAW73B,GAEP5E,MAIR++B,WAAY,SAAUt8B,GACrB,GAAI2C,EACJ,IAAK3C,EACJ,GAAa,EAARka,EACJ,IAAMvX,IAAQ3C,GAEbs8B,EAAY35B,IAAW25B,EAAY35B,GAAQ3C,EAAK2C,QAIjDs2B,GAAM7e,OAAQpa,EAAKi5B,EAAM6D,QAG3B,OAAOv/B,OAIRw/B,MAAO,SAAUC,GAChB,GAAIC,GAAYD,GAAcP,CAK9B,OAJKZ,IACJA,EAAUkB,MAAOE,GAElBl3B,EAAM,EAAGk3B,GACF1/B,MAyCV,IApCA8c,EAASF,QAAS8e,GAAQ/F,SAAWmJ,EAAiBtkB,IACtDkhB,EAAMiE,QAAUjE,EAAMlzB,KACtBkzB,EAAMl3B,MAAQk3B,EAAM3e,KAMpBqf,EAAEmB,MAAUA,GAAOnB,EAAEmB,KAAOrC,IAAiB,IAAK52B,QAASk2B,GAAO,IAChEl2B,QAASu2B,GAAWM,GAAc,GAAM,MAG1CiB,EAAEx3B,KAAOrB,EAAQq8B,QAAUr8B,EAAQqB,MAAQw3B,EAAEwD,QAAUxD,EAAEx3B,KAGzDw3B,EAAEZ,UAAY36B,EAAO2E,KAAM42B,EAAEb,UAAY,KAAMr1B,cAAc2F,MAAOqP,KAAiB,IAG/D,MAAjBkhB,EAAEyD,cACN9N,EAAQ+I,GAAKzuB,KAAM+vB,EAAEmB,IAAIr3B,eACzBk2B,EAAEyD,eAAkB9N,GACjBA,EAAO,KAAQoJ,GAAc,IAAOpJ,EAAO,KAAQoJ,GAAc,KAChEpJ,EAAO,KAAwB,UAAfA,EAAO,GAAkB,KAAO,WAC/CoJ,GAAc,KAA+B,UAAtBA,GAAc,GAAkB,KAAO,UAK/DiB,EAAEngB,MAAQmgB,EAAEqB,aAAiC,gBAAXrB,GAAEngB,OACxCmgB,EAAEngB,KAAOpb,EAAOi/B,MAAO1D,EAAEngB,KAAMmgB,EAAE2D,cAIlCtE,GAA+BV,GAAYqB,EAAG74B,EAASm4B,GAGxC,IAAV/e,EACJ,MAAO+e,EAKRiD,GAAc99B,EAAOkiB,OAASqZ,EAAE58B,OAG3Bm/B,GAAmC,IAApB99B,EAAOu8B,UAC1Bv8B,EAAOkiB,MAAMwB,QAAQ,aAItB6X,EAAEx3B,KAAOw3B,EAAEx3B,KAAKpD,cAGhB46B,EAAE4D,YAAcpF,GAAWjuB,KAAMyvB,EAAEx3B,MAInC25B,EAAWnC,EAAEmB,IAGPnB,EAAE4D,aAGF5D,EAAEngB,OACNsiB,EAAanC,EAAEmB,MAASrD,GAAOvtB,KAAM4xB,GAAa,IAAM,KAAQnC,EAAEngB,WAE3DmgB,GAAEngB,MAILmgB,EAAE/uB,SAAU,IAChB+uB,EAAEmB,IAAM9C,GAAI9tB,KAAM4xB,GAGjBA,EAASj6B,QAASm2B,GAAK,OAASR,MAGhCsE,GAAarE,GAAOvtB,KAAM4xB,GAAa,IAAM,KAAQ,KAAOtE,OAK1DmC,EAAE6D,aACDp/B,EAAOw8B,aAAckB,IACzB7C,EAAM0D,iBAAkB,oBAAqBv+B,EAAOw8B,aAAckB,IAE9D19B,EAAOy8B,KAAMiB,IACjB7C,EAAM0D,iBAAkB,gBAAiBv+B,EAAOy8B,KAAMiB,MAKnDnC,EAAEngB,MAAQmgB,EAAE4D,YAAc5D,EAAEuB,eAAgB,GAASp6B,EAAQo6B,cACjEjC,EAAM0D,iBAAkB,eAAgBhD,EAAEuB,aAI3CjC,EAAM0D,iBACL,SACAhD,EAAEZ,UAAW,IAAOY,EAAEzc,QAASyc,EAAEZ,UAAU,IAC1CY,EAAEzc,QAASyc,EAAEZ,UAAU,KAA8B,MAArBY,EAAEZ,UAAW,GAAc,KAAOP,GAAW,WAAa,IAC1FmB,EAAEzc,QAAS,KAIb,KAAMhd,IAAKy5B,GAAE8D,QACZxE,EAAM0D,iBAAkBz8B,EAAGy5B,EAAE8D,QAASv9B,GAIvC,IAAKy5B,EAAE+D,aAAgB/D,EAAE+D,WAAWr+B,KAAM88B,EAAiBlD,EAAOU,MAAQ,GAAmB,IAAVzf,GAElF,MAAO+e,GAAM8D,OAIdN,GAAW,OAGX,KAAMv8B,KAAOg9B,QAAS,EAAGn7B,MAAO,EAAGmxB,SAAU,GAC5C+F,EAAO/4B,GAAKy5B,EAAGz5B,GAOhB,IAHA27B,EAAY7C,GAA+BT,GAAYoB,EAAG74B,EAASm4B,GAK5D,CACNA,EAAM3c,WAAa,EAGd4f,GACJE,EAAmBta,QAAS,YAAcmX,EAAOU,IAG7CA,EAAEsB,OAAStB,EAAE7E,QAAU,IAC3BmH,EAAe1f,WAAW,WACzB0c,EAAM8D,MAAM,YACVpD,EAAE7E,SAGN,KACC5a,EAAQ,EACR2hB,EAAU8B,KAAMpB,EAAgBx2B,GAC/B,MAAQkD,GAET,KAAa,EAARiR,GAIJ,KAAMjR,EAHNlD,GAAM,GAAIkD,QArBZlD,GAAM,GAAI,eA8BX,SAASA,GAAM+2B,EAAQc,EAAkBhE,EAAW6D,GACnD,GAAIpD,GAAW6C,EAASn7B,EAAOq4B,EAAUyD,EACxCb,EAAaY,CAGC,KAAV1jB,IAKLA,EAAQ,EAGH+hB,GACJlH,aAAckH,GAKfJ,EAAYp6B,OAGZs6B,EAAwB0B,GAAW,GAGnCxE,EAAM3c,WAAawgB,EAAS,EAAI,EAAI,EAGpCzC,EAAYyC,GAAU,KAAgB,IAATA,GAA2B,MAAXA,EAGxClD,IACJQ,EAAWV,GAAqBC,EAAGV,EAAOW,IAI3CQ,EAAWD,GAAaR,EAAGS,EAAUnB,EAAOoB,GAGvCA,GAGCV,EAAE6D,aACNK,EAAW5E,EAAMgB,kBAAkB,iBAC9B4D,IACJz/B,EAAOw8B,aAAckB,GAAa+B,GAEnCA,EAAW5E,EAAMgB,kBAAkB,QAC9B4D,IACJz/B,EAAOy8B,KAAMiB,GAAa+B,IAKZ,MAAXf,GAA6B,SAAXnD,EAAEx3B,KACxB66B,EAAa,YAGS,MAAXF,EACXE,EAAa,eAIbA,EAAa5C,EAASlgB,MACtBgjB,EAAU9C,EAAS5gB,KACnBzX,EAAQq4B,EAASr4B,MACjBs4B,GAAat4B,KAIdA,EAAQi7B,GACHF,IAAWE,KACfA,EAAa,QACC,EAATF,IACJA,EAAS,KAMZ7D,EAAM6D,OAASA,EACf7D,EAAM+D,YAAeY,GAAoBZ,GAAe,GAGnD3C,EACJhgB,EAASqB,YAAaygB,GAAmBe,EAASF,EAAY/D,IAE9D5e,EAAS2Y,WAAYmJ,GAAmBlD,EAAO+D,EAAYj7B,IAI5Dk3B,EAAMqD,WAAYA,GAClBA,EAAa76B,OAERy6B,GACJE,EAAmBta,QAASuY,EAAY,cAAgB,aACrDpB,EAAOU,EAAGU,EAAY6C,EAAUn7B,IAIpCs6B,EAAiBviB,SAAUqiB,GAAmBlD,EAAO+D,IAEhDd,IACJE,EAAmBta,QAAS,gBAAkBmX,EAAOU,MAE3Cv7B,EAAOu8B,QAChBv8B,EAAOkiB,MAAMwB,QAAQ,cAKxB,MAAOmX,IAGR6E,QAAS,SAAUhD,EAAKthB,EAAM1Z,GAC7B,MAAO1B,GAAOkB,IAAKw7B,EAAKthB,EAAM1Z,EAAU,SAGzCi+B,UAAW,SAAUjD,EAAKh7B,GACzB,MAAO1B,GAAOkB,IAAKw7B,EAAKr5B,OAAW3B,EAAU,aAI/C1B,EAAOyB,MAAQ,MAAO,QAAU,SAAUK,EAAGi9B,GAC5C/+B,EAAQ++B,GAAW,SAAUrC,EAAKthB,EAAM1Z,EAAUqC,GAQjD,MANK/D,GAAOkD,WAAYkY,KACvBrX,EAAOA,GAAQrC,EACfA,EAAW0Z,EACXA,EAAO/X,QAGDrD,EAAOw9B,MACbd,IAAKA,EACL34B,KAAMg7B,EACNrE,SAAU32B,EACVqX,KAAMA,EACN0jB,QAASp9B,OAMZ1B,EAAOsrB,SAAW,SAAUoR,GAC3B,MAAO18B,GAAOw9B,MACbd,IAAKA,EACL34B,KAAM,MACN22B,SAAU,SACVmC,OAAO,EACPl+B,QAAQ,EACRihC,UAAU,KAKZ5/B,EAAOG,GAAGsC,QACTo9B,QAAS,SAAU7U,GAClB,GAAIX,EAEJ,OAAKrqB,GAAOkD,WAAY8nB,GAChB7rB,KAAKsC,KAAK,SAAUK,GAC1B9B,EAAQb,MAAO0gC,QAAS7U,EAAK/pB,KAAK9B,KAAM2C,OAIrC3C,KAAM,KAGVkrB,EAAOrqB,EAAQgrB,EAAM7rB,KAAM,GAAIoM,eAAgBrJ,GAAI,GAAIa,OAAO,GAEzD5D,KAAM,GAAI6F,YACdqlB,EAAKO,aAAczrB,KAAM,IAG1BkrB,EAAKzoB,IAAI,WACR,GAAIC,GAAO1C,IAEX,OAAQ0C,EAAKi+B,kBACZj+B,EAAOA,EAAKi+B,iBAGb,OAAOj+B,KACL4oB,OAAQtrB,OAGLA,OAGR4gC,UAAW,SAAU/U,GACpB,MACQ7rB,MAAKsC,KADRzB,EAAOkD,WAAY8nB,GACN,SAAUlpB,GAC1B9B,EAAQb,MAAO4gC,UAAW/U,EAAK/pB,KAAK9B,KAAM2C,KAI3B,WAChB,GAAIwW,GAAOtY,EAAQb,MAClB2Z,EAAWR,EAAKQ,UAEZA,GAAS/X,OACb+X,EAAS+mB,QAAS7U,GAGlB1S,EAAKmS,OAAQO,MAKhBX,KAAM,SAAUW,GACf,GAAI9nB,GAAalD,EAAOkD,WAAY8nB,EAEpC,OAAO7rB,MAAKsC,KAAK,SAAUK,GAC1B9B,EAAQb,MAAO0gC,QAAS38B,EAAa8nB,EAAK/pB,KAAK9B,KAAM2C,GAAKkpB,MAI5DgV,OAAQ,WACP,MAAO7gC,MAAK6O,SAASvM,KAAK,WACnBzB,EAAOoF,SAAUjG,KAAM,SAC5Ba,EAAQb,MAAO8rB,YAAa9rB,KAAKyL,cAEhCtI,SAKLtC,EAAOgQ,KAAK4E,QAAQ+a,OAAS,SAAU9tB,GAGtC,MAAOA,GAAK0tB,aAAe,GAAK1tB,EAAK2tB,cAAgB,GAEtDxvB,EAAOgQ,KAAK4E,QAAQqrB,QAAU,SAAUp+B,GACvC,OAAQ7B,EAAOgQ,KAAK4E,QAAQ+a,OAAQ9tB,GAMrC,IAAIq+B,IAAM,OACTC,GAAW,QACXC,GAAQ,SACRC,GAAkB,wCAClBC,GAAe,oCAEhB,SAASC,IAAazP,EAAQhtB,EAAKo7B,EAAavlB,GAC/C,GAAIhX,EAEJ,IAAK3C,EAAOoD,QAASU,GAEpB9D,EAAOyB,KAAMqC,EAAK,SAAUhC,EAAG0+B,GACzBtB,GAAeiB,GAASr0B,KAAMglB,GAElCnX,EAAKmX,EAAQ0P,GAIbD,GAAazP,EAAS,KAAqB,gBAAN0P,GAAiB1+B,EAAI,IAAO,IAAK0+B,EAAGtB,EAAavlB,SAIlF,IAAMulB,GAAsC,WAAvBl/B,EAAO+D,KAAMD,GAQxC6V,EAAKmX,EAAQhtB,OANb,KAAMnB,IAAQmB,GACby8B,GAAazP,EAAS,IAAMnuB,EAAO,IAAKmB,EAAKnB,GAAQu8B,EAAavlB,GAWrE3Z,EAAOi/B,MAAQ,SAAUh3B,EAAGi3B,GAC3B,GAAIpO,GACHyK,KACA5hB,EAAM,SAAUlN,EAAKnH,GAEpBA,EAAQtF,EAAOkD,WAAYoC,GAAUA,IAAqB,MAATA,EAAgB,GAAKA,EACtEi2B,EAAGA,EAAEx6B,QAAW0/B,mBAAoBh0B,GAAQ,IAAMg0B,mBAAoBn7B,GASxE,IALqBjC,SAAhB67B,IACJA,EAAcl/B,EAAOq7B,cAAgBr7B,EAAOq7B,aAAa6D,aAIrDl/B,EAAOoD,QAAS6E,IAASA,EAAEpH,SAAWb,EAAOmD,cAAe8E,GAEhEjI,EAAOyB,KAAMwG,EAAG,WACf0R,EAAKxa,KAAKwD,KAAMxD,KAAKmG,aAMtB,KAAMwrB,IAAU7oB,GACfs4B,GAAazP,EAAQ7oB,EAAG6oB,GAAUoO,EAAavlB,EAKjD,OAAO4hB,GAAEpvB,KAAM,KAAM1I,QAASy8B,GAAK,MAGpClgC,EAAOG,GAAGsC,QACTi+B,UAAW,WACV,MAAO1gC,GAAOi/B,MAAO9/B,KAAKwhC,mBAE3BA,eAAgB,WACf,MAAOxhC,MAAKyC,IAAI,WAEf,GAAIqO,GAAWjQ,EAAOmf,KAAMhgB,KAAM,WAClC,OAAO8Q,GAAWjQ,EAAOwF,UAAWyK,GAAa9Q,OAEjDwP,OAAO,WACP,GAAI5K,GAAO5E,KAAK4E,IAGhB,OAAO5E,MAAKwD,OAAS3C,EAAQb,MAAOoZ,GAAI,cACvC+nB,GAAax0B,KAAM3M,KAAKiG,YAAei7B,GAAgBv0B,KAAM/H,KAC3D5E,KAAKwU,UAAYuN,EAAepV,KAAM/H,MAEzCnC,IAAI,SAAUE,EAAGD,GACjB,GAAIsO,GAAMnQ,EAAQb,MAAOgR,KAEzB,OAAc,OAAPA,EACN,KACAnQ,EAAOoD,QAAS+M,GACfnQ,EAAO4B,IAAKuO,EAAK,SAAUA,GAC1B,OAASxN,KAAMd,EAAKc,KAAM2C,MAAO6K,EAAI1M,QAAS28B,GAAO,YAEpDz9B,KAAMd,EAAKc,KAAM2C,MAAO6K,EAAI1M,QAAS28B,GAAO,WAC9Cl/B,SAKLlB,EAAOq7B,aAAauF,IAAM,WACzB,IACC,MAAO,IAAIC,gBACV,MAAOh2B,KAGV,IAAIi2B,IAAQ,EACXC,MACAC,IAEC,EAAG,IAGHC,KAAM,KAEPC,GAAelhC,EAAOq7B,aAAauF,KAK/B1hC,GAAOmP,aACXnP,EAAOmP,YAAa,WAAY,WAC/B,IAAM,GAAI5B,KAAOs0B,IAChBA,GAAct0B,OAKjB3M,EAAQqhC,OAASD,IAAkB,mBAAqBA,IACxDphC,EAAQ09B,KAAO0D,KAAiBA,GAEhClhC,EAAOu9B,cAAc,SAAU76B,GAC9B,GAAIhB,EAGJ,OAAK5B,GAAQqhC,MAAQD,KAAiBx+B,EAAQs8B,aAE5CO,KAAM,SAAUF,EAASvK,GACxB,GAAIhzB,GACH8+B,EAAMl+B,EAAQk+B,MACdl1B,IAAOo1B,EAKR,IAHAF,EAAIQ,KAAM1+B,EAAQqB,KAAMrB,EAAQg6B,IAAKh6B,EAAQm6B,MAAOn6B,EAAQ2+B,SAAU3+B,EAAQ8R,UAGzE9R,EAAQ4+B,UACZ,IAAMx/B,IAAKY,GAAQ4+B,UAClBV,EAAK9+B,GAAMY,EAAQ4+B,UAAWx/B,EAK3BY,GAAQk5B,UAAYgF,EAAInC,kBAC5BmC,EAAInC,iBAAkB/7B,EAAQk5B,UAQzBl5B,EAAQs8B,aAAgBK,EAAQ,sBACrCA,EAAQ,oBAAsB,iBAI/B,KAAMv9B,IAAKu9B,GACVuB,EAAIrC,iBAAkBz8B,EAAGu9B,EAASv9B,GAInCJ,GAAW,SAAUqC,GACpB,MAAO,YACDrC,UACGq/B,IAAcr1B,GACrBhK,EAAWk/B,EAAIW,OAASX,EAAIY,QAAU,KAExB,UAATz9B,EACJ68B,EAAIjC,QACgB,UAAT56B,EACX+wB,EAEC8L,EAAIlC,OACJkC,EAAIhC,YAGL9J,EACCkM,GAAkBJ,EAAIlC,SAAYkC,EAAIlC,OACtCkC,EAAIhC,WAIwB,gBAArBgC,GAAIa,cACV58B,KAAM+7B,EAAIa,cACPp+B,OACJu9B,EAAItC,4BAQTsC,EAAIW,OAAS7/B,IACbk/B,EAAIY,QAAU9/B,EAAS,SAGvBA,EAAWq/B,GAAcr1B,GAAOhK,EAAS,QAEzC,KAECk/B,EAAIrB,KAAM78B,EAAQy8B,YAAcz8B,EAAQ0Y,MAAQ,MAC/C,MAAQvQ,GAET,GAAKnJ,EACJ,KAAMmJ,KAKT8zB,MAAO,WACDj9B,GACJA,MAvFJ,SAkGD1B,EAAOo9B,WACNte,SACCta,OAAQ,6FAETsU,UACCtU,OAAQ,uBAETs3B,YACC4F,cAAe,SAAU78B,GAExB,MADA7E,GAAOsE,WAAYO,GACZA,MAMV7E,EAAOs9B,cAAe,SAAU,SAAU/B,GACxBl4B,SAAZk4B,EAAE/uB,QACN+uB,EAAE/uB,OAAQ,GAEN+uB,EAAEyD,cACNzD,EAAEx3B,KAAO,SAKX/D,EAAOu9B,cAAe,SAAU,SAAUhC,GAEzC,GAAKA,EAAEyD,YAAc,CACpB,GAAIx6B,GAAQ9C,CACZ,QACC69B,KAAM,SAAUl1B,EAAGyqB,GAClBtwB,EAASxE,EAAO,YAAYmf,MAC3B0d,OAAO,EACP8E,QAASpG,EAAEqG,cACXh/B,IAAK24B,EAAEmB,MACLlV,GACF,aACA9lB,EAAW,SAAUmgC,GACpBr9B,EAAO+W,SACP7Z,EAAW,KACNmgC,GACJ/M,EAAuB,UAAb+M,EAAI99B,KAAmB,IAAM,IAAK89B,EAAI99B,QAInDhF,EAAS+F,KAAKC,YAAaP,EAAQ,KAEpCm6B,MAAO,WACDj9B,GACJA,QAUL,IAAIogC,OACHC,GAAS,mBAGV/hC,GAAOo9B,WACN4E,MAAO,WACPC,cAAe,WACd,GAAIvgC,GAAWogC,GAAa15B,OAAWpI,EAAOsD,QAAU,IAAQ81B,IAEhE,OADAj6B,MAAMuC,IAAa,EACZA,KAKT1B,EAAOs9B,cAAe,aAAc,SAAU/B,EAAG2G,EAAkBrH,GAElE,GAAIsH,GAAcC,EAAaC,EAC9BC,EAAW/G,EAAEyG,SAAU,IAAWD,GAAOj2B,KAAMyvB,EAAEmB,KAChD,MACkB,gBAAXnB,GAAEngB,QAAwBmgB,EAAEuB,aAAe,IAAKr9B,QAAQ,sCAAwCsiC,GAAOj2B,KAAMyvB,EAAEngB,OAAU,OAIlI,OAAKknB,IAAiC,UAArB/G,EAAEZ,UAAW,IAG7BwH,EAAe5G,EAAE0G,cAAgBjiC,EAAOkD,WAAYq4B,EAAE0G,eACrD1G,EAAE0G,gBACF1G,EAAE0G,cAGEK,EACJ/G,EAAG+G,GAAa/G,EAAG+G,GAAW7+B,QAASs+B,GAAQ,KAAOI,GAC3C5G,EAAEyG,SAAU,IACvBzG,EAAEmB,MAASrD,GAAOvtB,KAAMyvB,EAAEmB,KAAQ,IAAM,KAAQnB,EAAEyG,MAAQ,IAAMG,GAIjE5G,EAAEO,WAAW,eAAiB,WAI7B,MAHMuG,IACLriC,EAAO2D,MAAOw+B,EAAe,mBAEvBE,EAAmB,IAI3B9G,EAAEZ,UAAW,GAAM,OAGnByH,EAAcljC,EAAQijC,GACtBjjC,EAAQijC,GAAiB,WACxBE,EAAoBrgC,WAIrB64B,EAAM7e,OAAO,WAEZ9c,EAAQijC,GAAiBC,EAGpB7G,EAAG4G,KAEP5G,EAAE0G,cAAgBC,EAAiBD,cAGnCH,GAAatiC,KAAM2iC,IAIfE,GAAqBriC,EAAOkD,WAAYk/B,IAC5CA,EAAaC,EAAmB,IAGjCA,EAAoBD,EAAc/+B,SAI5B,UAtDR,SAgEDrD,EAAOyY,UAAY,SAAU2C,EAAMlb,EAASqiC,GAC3C,IAAMnnB,GAAwB,gBAATA,GACpB,MAAO,KAEgB,kBAAZlb,KACXqiC,EAAcriC,EACdA,GAAU,GAEXA,EAAUA,GAAWnB,CAErB,IAAIyjC,GAAStqB,EAAW1M,KAAM4P,GAC7B+O,GAAWoY,KAGZ,OAAKC,IACKtiC,EAAQ0E,cAAe49B,EAAO,MAGxCA,EAASxiC,EAAOkqB,eAAiB9O,GAAQlb,EAASiqB,GAE7CA,GAAWA,EAAQppB,QACvBf,EAAQmqB,GAAU5O,SAGZvb,EAAOuB,SAAWihC,EAAO53B,aAKjC,IAAI63B,IAAQziC,EAAOG,GAAGkmB,IAKtBrmB,GAAOG,GAAGkmB,KAAO,SAAUqW,EAAKgG,EAAQhhC,GACvC,GAAoB,gBAARg7B,IAAoB+F,GAC/B,MAAOA,IAAM1gC,MAAO5C,KAAM6C,UAG3B,IAAI/B,GAAU8D,EAAMi4B,EACnB1jB,EAAOnZ,KACP4e,EAAM2e,EAAIj9B,QAAQ,IA+CnB,OA7CKse,IAAO,IACX9d,EAAWD,EAAO2E,KAAM+3B,EAAIp9B,MAAOye,IACnC2e,EAAMA,EAAIp9B,MAAO,EAAGye,IAIhB/d,EAAOkD,WAAYw/B,IAGvBhhC,EAAWghC,EACXA,EAASr/B,QAGEq/B,GAA4B,gBAAXA,KAC5B3+B,EAAO,QAIHuU,EAAKvX,OAAS,GAClBf,EAAOw9B,MACNd,IAAKA,EAGL34B,KAAMA,EACN22B,SAAU,OACVtf,KAAMsnB,IACJ/6B,KAAK,SAAU85B,GAGjBzF,EAAWh6B,UAEXsW,EAAK0S,KAAM/qB,EAIVD,EAAO,SAASyqB,OAAQzqB,EAAOyY,UAAWgpB,IAAiB/yB,KAAMzO,GAGjEwhC,KAEC3M,SAAUpzB,GAAY,SAAUm5B,EAAO6D,GACzCpmB,EAAK7W,KAAMC,EAAUs6B,IAAcnB,EAAM4G,aAAc/C,EAAQ7D,MAI1D17B,MAORa,EAAOyB,MAAQ,YAAa,WAAY,eAAgB,YAAa,cAAe,YAAc,SAAUK,EAAGiC,GAC9G/D,EAAOG,GAAI4D,GAAS,SAAU5D,GAC7B,MAAOhB,MAAKqoB,GAAIzjB,EAAM5D,MAOxBH,EAAOgQ,KAAK4E,QAAQ+tB,SAAW,SAAU9gC,GACxC,MAAO7B,GAAO6F,KAAK7F,EAAO21B,OAAQ,SAAUx1B,GAC3C,MAAO0B,KAAS1B,EAAG0B,OACjBd,OAMJ,IAAIqG,IAAUlI,EAAOH,SAAS8O,eAK9B,SAAS+0B,IAAW/gC,GACnB,MAAO7B,GAAOiE,SAAUpC,GAASA,EAAyB,IAAlBA,EAAKuC,UAAkBvC,EAAKqM,YAGrElO,EAAO6iC,QACNC,UAAW,SAAUjhC,EAAMa,EAASZ,GACnC,GAAIihC,GAAaC,EAASC,EAAWC,EAAQC,EAAWC,EAAYC,EACnEhV,EAAWruB,EAAOihB,IAAKpf,EAAM,YAC7ByhC,EAAUtjC,EAAQ6B,GAClBojB,IAGiB,YAAboJ,IACJxsB,EAAKkqB,MAAMsC,SAAW,YAGvB8U,EAAYG,EAAQT,SACpBI,EAAYjjC,EAAOihB,IAAKpf,EAAM,OAC9BuhC,EAAapjC,EAAOihB,IAAKpf,EAAM,QAC/BwhC,GAAmC,aAAbhV,GAAwC,UAAbA,KAC9C4U,EAAYG,GAAa3jC,QAAQ,QAAU,GAIzC4jC,GACJN,EAAcO,EAAQjV,WACtB6U,EAASH,EAAY50B,IACrB60B,EAAUD,EAAYQ,OAGtBL,EAAS/+B,WAAY8+B,IAAe,EACpCD,EAAU7+B,WAAYi/B,IAAgB,GAGlCpjC,EAAOkD,WAAYR,KACvBA,EAAUA,EAAQzB,KAAMY,EAAMC,EAAGqhC,IAGd,MAAfzgC,EAAQyL,MACZ8W,EAAM9W,IAAQzL,EAAQyL,IAAMg1B,EAAUh1B,IAAQ+0B,GAE1B,MAAhBxgC,EAAQ6gC,OACZte,EAAMse,KAAS7gC,EAAQ6gC,KAAOJ,EAAUI,KAASP,GAG7C,SAAWtgC,GACfA,EAAQ8gC,MAAMviC,KAAMY,EAAMojB,GAG1Bqe,EAAQriB,IAAKgE,KAKhBjlB,EAAOG,GAAGsC,QACTogC,OAAQ,SAAUngC,GACjB,GAAKV,UAAUjB,OACd,MAAmBsC,UAAZX,EACNvD,KACAA,KAAKsC,KAAK,SAAUK,GACnB9B,EAAO6iC,OAAOC,UAAW3jC,KAAMuD,EAASZ,IAI3C,IAAIsF,GAASq8B,EACZ5hC,EAAO1C,KAAM,GACbukC,GAAQv1B,IAAK,EAAGo1B,KAAM,GACtBt1B,EAAMpM,GAAQA,EAAK0J,aAEpB,IAAM0C,EAON,MAHA7G,GAAU6G,EAAIJ,gBAGR7N,EAAOwH,SAAUJ,EAASvF,UAMpBA,GAAK8hC,wBAA0BniB,IAC1CkiB,EAAM7hC,EAAK8hC,yBAEZF,EAAMb,GAAW30B,IAEhBE,IAAKu1B,EAAIv1B,IAAMs1B,EAAIG,YAAcx8B,EAAQ8e,UACzCqd,KAAMG,EAAIH,KAAOE,EAAII,YAAcz8B,EAAQ0e,aAXpC4d,GAeTrV,SAAU,WACT,GAAMlvB,KAAM,GAAZ,CAIA,GAAI2kC,GAAcjB,EACjBhhC,EAAO1C,KAAM,GACb4kC,GAAiB51B,IAAK,EAAGo1B,KAAM,EAuBhC,OApBwC,UAAnCvjC,EAAOihB,IAAKpf,EAAM,YAEtBghC,EAAShhC,EAAK8hC,yBAIdG,EAAe3kC,KAAK2kC,eAGpBjB,EAAS1jC,KAAK0jC,SACR7iC,EAAOoF,SAAU0+B,EAAc,GAAK,UACzCC,EAAeD,EAAajB,UAI7BkB,EAAa51B,KAAOnO,EAAOihB,IAAK6iB,EAAc,GAAK,kBAAkB,GACrEC,EAAaR,MAAQvjC,EAAOihB,IAAK6iB,EAAc,GAAK,mBAAmB,KAKvE31B,IAAK00B,EAAO10B,IAAM41B,EAAa51B,IAAMnO,EAAOihB,IAAKpf,EAAM,aAAa,GACpE0hC,KAAMV,EAAOU,KAAOQ,EAAaR,KAAOvjC,EAAOihB,IAAKpf,EAAM,cAAc,MAI1EiiC,aAAc,WACb,MAAO3kC,MAAKyC,IAAI,WACf,GAAIkiC,GAAe3kC,KAAK2kC,cAAgB18B,EAExC,OAAQ08B,IAAmB9jC,EAAOoF,SAAU0+B,EAAc,SAAuD,WAA3C9jC,EAAOihB,IAAK6iB,EAAc,YAC/FA,EAAeA,EAAaA,YAG7B,OAAOA,IAAgB18B,QAM1BpH,EAAOyB,MAAQokB,WAAY,cAAeI,UAAW,eAAiB,SAAU8Y,EAAQ5f,GACvF,GAAIhR,GAAM,gBAAkBgR,CAE5Bnf,GAAOG,GAAI4+B,GAAW,SAAU5uB,GAC/B,MAAOiO,GAAQjf,KAAM,SAAU0C,EAAMk9B,EAAQ5uB,GAC5C,GAAIszB,GAAMb,GAAW/gC,EAErB,OAAawB,UAAR8M,EACGszB,EAAMA,EAAKtkB,GAAStd,EAAMk9B,QAG7B0E,EACJA,EAAIO,SACF71B,EAAYjP,EAAO2kC,YAAb1zB,EACPhC,EAAMgC,EAAMjR,EAAO0kC,aAIpB/hC,EAAMk9B,GAAW5uB,IAEhB4uB,EAAQ5uB,EAAKnO,UAAUjB,OAAQ,SAUpCf,EAAOyB,MAAQ,MAAO,QAAU,SAAUK,EAAGqd,GAC5Cnf,EAAO4vB,SAAUzQ,GAAS6N,GAAcltB,EAAQ6tB,cAC/C,SAAU9rB,EAAM8qB,GACf,MAAKA,IACJA,EAAWD,GAAQ7qB,EAAMsd,GAElBmN,GAAUxgB,KAAM6gB,GACtB3sB,EAAQ6B,GAAOwsB,WAAYlP,GAAS,KACpCwN,GALF,WAaH3sB,EAAOyB,MAAQwiC,OAAQ,SAAUC,MAAO,SAAW,SAAUvhC,EAAMoB,GAClE/D,EAAOyB,MAAQmvB,QAAS,QAAUjuB,EAAMqmB,QAASjlB,EAAM,GAAI,QAAUpB,GAAQ,SAAUwhC,EAAcC,GAEpGpkC,EAAOG,GAAIikC,GAAa,SAAUzT,EAAQrrB,GACzC,GAAI+Y,GAAYrc,UAAUjB,SAAYojC,GAAkC,iBAAXxT,IAC5DzB,EAAQiV,IAAkBxT,KAAW,GAAQrrB,KAAU,EAAO,SAAW,SAE1E,OAAO8Y,GAAQjf,KAAM,SAAU0C,EAAMkC,EAAMuB,GAC1C,GAAI2I,EAEJ,OAAKjO,GAAOiE,SAAUpC,GAIdA,EAAK9C,SAAS8O,gBAAiB,SAAWlL,GAI3B,IAAlBd,EAAKuC,UACT6J,EAAMpM,EAAKgM,gBAIJtK,KAAKyrB,IACXntB,EAAK6jB,KAAM,SAAW/iB,GAAQsL,EAAK,SAAWtL,GAC9Cd,EAAK6jB,KAAM,SAAW/iB,GAAQsL,EAAK,SAAWtL,GAC9CsL,EAAK,SAAWtL,KAIDU,SAAViC,EAENtF,EAAOihB,IAAKpf,EAAMkC,EAAMmrB,GAGxBlvB,EAAO+rB,MAAOlqB,EAAMkC,EAAMuB,EAAO4pB,IAChCnrB,EAAMsa,EAAYsS,EAASttB,OAAWgb,EAAW,WAOvDre,EAAOG,GAAGkkC,KAAO,WAChB,MAAOllC,MAAK4B,QAGbf,EAAOG,GAAGmkC,QAAUtkC,EAAOG,GAAGyZ,QAkBP,kBAAX2qB,SAAyBA,OAAOC,KAC3CD,OAAQ,YAAc,WACrB,MAAOvkC,IAOT,IAECykC,IAAUvlC,EAAOc,OAGjB0kC,GAAKxlC,EAAOylC,CAwBb,OAtBA3kC,GAAO4kC,WAAa,SAAU3hC,GAS7B,MARK/D,GAAOylC,IAAM3kC,IACjBd,EAAOylC,EAAID,IAGPzhC,GAAQ/D,EAAOc,SAAWA,IAC9Bd,EAAOc,OAASykC,IAGVzkC,SAMIZ,KAAaoiB,IACxBtiB,EAAOc,OAASd,EAAOylC,EAAI3kC,GAMrBA"}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax.js
new file mode 100644 (file)
index 0000000..5c7b4ad
--- /dev/null
@@ -0,0 +1,786 @@
+define([
+       "./core",
+       "./var/rnotwhite",
+       "./ajax/var/nonce",
+       "./ajax/var/rquery",
+       "./core/init",
+       "./ajax/parseJSON",
+       "./ajax/parseXML",
+       "./deferred"
+], function( jQuery, rnotwhite, nonce, rquery ) {
+
+var
+       rhash = /#.*$/,
+       rts = /([?&])_=[^&]*/,
+       rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,
+       // #7653, #8125, #8152: local protocol detection
+       rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
+       rnoContent = /^(?:GET|HEAD)$/,
+       rprotocol = /^\/\//,
+       rurl = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
+
+       /* Prefilters
+        * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
+        * 2) These are called:
+        *    - BEFORE asking for a transport
+        *    - AFTER param serialization (s.data is a string if s.processData is true)
+        * 3) key is the dataType
+        * 4) the catchall symbol "*" can be used
+        * 5) execution will start with transport dataType and THEN continue down to "*" if needed
+        */
+       prefilters = {},
+
+       /* Transports bindings
+        * 1) key is the dataType
+        * 2) the catchall symbol "*" can be used
+        * 3) selection will start with transport dataType and THEN go to "*" if needed
+        */
+       transports = {},
+
+       // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
+       allTypes = "*/".concat( "*" ),
+
+       // Document location
+       ajaxLocation = window.location.href,
+
+       // Segment location into parts
+       ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];
+
+// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
+function addToPrefiltersOrTransports( structure ) {
+
+       // dataTypeExpression is optional and defaults to "*"
+       return function( dataTypeExpression, func ) {
+
+               if ( typeof dataTypeExpression !== "string" ) {
+                       func = dataTypeExpression;
+                       dataTypeExpression = "*";
+               }
+
+               var dataType,
+                       i = 0,
+                       dataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || [];
+
+               if ( jQuery.isFunction( func ) ) {
+                       // For each dataType in the dataTypeExpression
+                       while ( (dataType = dataTypes[i++]) ) {
+                               // Prepend if requested
+                               if ( dataType[0] === "+" ) {
+                                       dataType = dataType.slice( 1 ) || "*";
+                                       (structure[ dataType ] = structure[ dataType ] || []).unshift( func );
+
+                               // Otherwise append
+                               } else {
+                                       (structure[ dataType ] = structure[ dataType ] || []).push( func );
+                               }
+                       }
+               }
+       };
+}
+
+// Base inspection function for prefilters and transports
+function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {
+
+       var inspected = {},
+               seekingTransport = ( structure === transports );
+
+       function inspect( dataType ) {
+               var selected;
+               inspected[ dataType ] = true;
+               jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
+                       var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
+                       if ( typeof dataTypeOrTransport === "string" && !seekingTransport && !inspected[ dataTypeOrTransport ] ) {
+                               options.dataTypes.unshift( dataTypeOrTransport );
+                               inspect( dataTypeOrTransport );
+                               return false;
+                       } else if ( seekingTransport ) {
+                               return !( selected = dataTypeOrTransport );
+                       }
+               });
+               return selected;
+       }
+
+       return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
+}
+
+// A special extend for ajax options
+// that takes "flat" options (not to be deep extended)
+// Fixes #9887
+function ajaxExtend( target, src ) {
+       var key, deep,
+               flatOptions = jQuery.ajaxSettings.flatOptions || {};
+
+       for ( key in src ) {
+               if ( src[ key ] !== undefined ) {
+                       ( flatOptions[ key ] ? target : ( deep || (deep = {}) ) )[ key ] = src[ key ];
+               }
+       }
+       if ( deep ) {
+               jQuery.extend( true, target, deep );
+       }
+
+       return target;
+}
+
+/* Handles responses to an ajax request:
+ * - finds the right dataType (mediates between content-type and expected dataType)
+ * - returns the corresponding response
+ */
+function ajaxHandleResponses( s, jqXHR, responses ) {
+
+       var ct, type, finalDataType, firstDataType,
+               contents = s.contents,
+               dataTypes = s.dataTypes;
+
+       // Remove auto dataType and get content-type in the process
+       while ( dataTypes[ 0 ] === "*" ) {
+               dataTypes.shift();
+               if ( ct === undefined ) {
+                       ct = s.mimeType || jqXHR.getResponseHeader("Content-Type");
+               }
+       }
+
+       // Check if we're dealing with a known content-type
+       if ( ct ) {
+               for ( type in contents ) {
+                       if ( contents[ type ] && contents[ type ].test( ct ) ) {
+                               dataTypes.unshift( type );
+                               break;
+                       }
+               }
+       }
+
+       // Check to see if we have a response for the expected dataType
+       if ( dataTypes[ 0 ] in responses ) {
+               finalDataType = dataTypes[ 0 ];
+       } else {
+               // Try convertible dataTypes
+               for ( type in responses ) {
+                       if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
+                               finalDataType = type;
+                               break;
+                       }
+                       if ( !firstDataType ) {
+                               firstDataType = type;
+                       }
+               }
+               // Or just use first one
+               finalDataType = finalDataType || firstDataType;
+       }
+
+       // If we found a dataType
+       // We add the dataType to the list if needed
+       // and return the corresponding response
+       if ( finalDataType ) {
+               if ( finalDataType !== dataTypes[ 0 ] ) {
+                       dataTypes.unshift( finalDataType );
+               }
+               return responses[ finalDataType ];
+       }
+}
+
+/* Chain conversions given the request and the original response
+ * Also sets the responseXXX fields on the jqXHR instance
+ */
+function ajaxConvert( s, response, jqXHR, isSuccess ) {
+       var conv2, current, conv, tmp, prev,
+               converters = {},
+               // Work with a copy of dataTypes in case we need to modify it for conversion
+               dataTypes = s.dataTypes.slice();
+
+       // Create converters map with lowercased keys
+       if ( dataTypes[ 1 ] ) {
+               for ( conv in s.converters ) {
+                       converters[ conv.toLowerCase() ] = s.converters[ conv ];
+               }
+       }
+
+       current = dataTypes.shift();
+
+       // Convert to each sequential dataType
+       while ( current ) {
+
+               if ( s.responseFields[ current ] ) {
+                       jqXHR[ s.responseFields[ current ] ] = response;
+               }
+
+               // Apply the dataFilter if provided
+               if ( !prev && isSuccess && s.dataFilter ) {
+                       response = s.dataFilter( response, s.dataType );
+               }
+
+               prev = current;
+               current = dataTypes.shift();
+
+               if ( current ) {
+
+               // There's only work to do if current dataType is non-auto
+                       if ( current === "*" ) {
+
+                               current = prev;
+
+                       // Convert response if prev dataType is non-auto and differs from current
+                       } else if ( prev !== "*" && prev !== current ) {
+
+                               // Seek a direct converter
+                               conv = converters[ prev + " " + current ] || converters[ "* " + current ];
+
+                               // If none found, seek a pair
+                               if ( !conv ) {
+                                       for ( conv2 in converters ) {
+
+                                               // If conv2 outputs current
+                                               tmp = conv2.split( " " );
+                                               if ( tmp[ 1 ] === current ) {
+
+                                                       // If prev can be converted to accepted input
+                                                       conv = converters[ prev + " " + tmp[ 0 ] ] ||
+                                                               converters[ "* " + tmp[ 0 ] ];
+                                                       if ( conv ) {
+                                                               // Condense equivalence converters
+                                                               if ( conv === true ) {
+                                                                       conv = converters[ conv2 ];
+
+                                                               // Otherwise, insert the intermediate dataType
+                                                               } else if ( converters[ conv2 ] !== true ) {
+                                                                       current = tmp[ 0 ];
+                                                                       dataTypes.unshift( tmp[ 1 ] );
+                                                               }
+                                                               break;
+                                                       }
+                                               }
+                                       }
+                               }
+
+                               // Apply converter (if not an equivalence)
+                               if ( conv !== true ) {
+
+                                       // Unless errors are allowed to bubble, catch and return them
+                                       if ( conv && s[ "throws" ] ) {
+                                               response = conv( response );
+                                       } else {
+                                               try {
+                                                       response = conv( response );
+                                               } catch ( e ) {
+                                                       return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current };
+                                               }
+                                       }
+                               }
+                       }
+               }
+       }
+
+       return { state: "success", data: response };
+}
+
+jQuery.extend({
+
+       // Counter for holding the number of active queries
+       active: 0,
+
+       // Last-Modified header cache for next request
+       lastModified: {},
+       etag: {},
+
+       ajaxSettings: {
+               url: ajaxLocation,
+               type: "GET",
+               isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
+               global: true,
+               processData: true,
+               async: true,
+               contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+               /*
+               timeout: 0,
+               data: null,
+               dataType: null,
+               username: null,
+               password: null,
+               cache: null,
+               throws: false,
+               traditional: false,
+               headers: {},
+               */
+
+               accepts: {
+                       "*": allTypes,
+                       text: "text/plain",
+                       html: "text/html",
+                       xml: "application/xml, text/xml",
+                       json: "application/json, text/javascript"
+               },
+
+               contents: {
+                       xml: /xml/,
+                       html: /html/,
+                       json: /json/
+               },
+
+               responseFields: {
+                       xml: "responseXML",
+                       text: "responseText",
+                       json: "responseJSON"
+               },
+
+               // Data converters
+               // Keys separate source (or catchall "*") and destination types with a single space
+               converters: {
+
+                       // Convert anything to text
+                       "* text": String,
+
+                       // Text to html (true = no transformation)
+                       "text html": true,
+
+                       // Evaluate text as a json expression
+                       "text json": jQuery.parseJSON,
+
+                       // Parse text as xml
+                       "text xml": jQuery.parseXML
+               },
+
+               // For options that shouldn't be deep extended:
+               // you can add your own custom options here if
+               // and when you create one that shouldn't be
+               // deep extended (see ajaxExtend)
+               flatOptions: {
+                       url: true,
+                       context: true
+               }
+       },
+
+       // Creates a full fledged settings object into target
+       // with both ajaxSettings and settings fields.
+       // If target is omitted, writes into ajaxSettings.
+       ajaxSetup: function( target, settings ) {
+               return settings ?
+
+                       // Building a settings object
+                       ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :
+
+                       // Extending ajaxSettings
+                       ajaxExtend( jQuery.ajaxSettings, target );
+       },
+
+       ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
+       ajaxTransport: addToPrefiltersOrTransports( transports ),
+
+       // Main method
+       ajax: function( url, options ) {
+
+               // If url is an object, simulate pre-1.5 signature
+               if ( typeof url === "object" ) {
+                       options = url;
+                       url = undefined;
+               }
+
+               // Force options to be an object
+               options = options || {};
+
+               var transport,
+                       // URL without anti-cache param
+                       cacheURL,
+                       // Response headers
+                       responseHeadersString,
+                       responseHeaders,
+                       // timeout handle
+                       timeoutTimer,
+                       // Cross-domain detection vars
+                       parts,
+                       // To know if global events are to be dispatched
+                       fireGlobals,
+                       // Loop variable
+                       i,
+                       // Create the final options object
+                       s = jQuery.ajaxSetup( {}, options ),
+                       // Callbacks context
+                       callbackContext = s.context || s,
+                       // Context for global events is callbackContext if it is a DOM node or jQuery collection
+                       globalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ?
+                               jQuery( callbackContext ) :
+                               jQuery.event,
+                       // Deferreds
+                       deferred = jQuery.Deferred(),
+                       completeDeferred = jQuery.Callbacks("once memory"),
+                       // Status-dependent callbacks
+                       statusCode = s.statusCode || {},
+                       // Headers (they are sent all at once)
+                       requestHeaders = {},
+                       requestHeadersNames = {},
+                       // The jqXHR state
+                       state = 0,
+                       // Default abort message
+                       strAbort = "canceled",
+                       // Fake xhr
+                       jqXHR = {
+                               readyState: 0,
+
+                               // Builds headers hashtable if needed
+                               getResponseHeader: function( key ) {
+                                       var match;
+                                       if ( state === 2 ) {
+                                               if ( !responseHeaders ) {
+                                                       responseHeaders = {};
+                                                       while ( (match = rheaders.exec( responseHeadersString )) ) {
+                                                               responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
+                                                       }
+                                               }
+                                               match = responseHeaders[ key.toLowerCase() ];
+                                       }
+                                       return match == null ? null : match;
+                               },
+
+                               // Raw string
+                               getAllResponseHeaders: function() {
+                                       return state === 2 ? responseHeadersString : null;
+                               },
+
+                               // Caches the header
+                               setRequestHeader: function( name, value ) {
+                                       var lname = name.toLowerCase();
+                                       if ( !state ) {
+                                               name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;
+                                               requestHeaders[ name ] = value;
+                                       }
+                                       return this;
+                               },
+
+                               // Overrides response content-type header
+                               overrideMimeType: function( type ) {
+                                       if ( !state ) {
+                                               s.mimeType = type;
+                                       }
+                                       return this;
+                               },
+
+                               // Status-dependent callbacks
+                               statusCode: function( map ) {
+                                       var code;
+                                       if ( map ) {
+                                               if ( state < 2 ) {
+                                                       for ( code in map ) {
+                                                               // Lazy-add the new callback in a way that preserves old ones
+                                                               statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
+                                                       }
+                                               } else {
+                                                       // Execute the appropriate callbacks
+                                                       jqXHR.always( map[ jqXHR.status ] );
+                                               }
+                                       }
+                                       return this;
+                               },
+
+                               // Cancel the request
+                               abort: function( statusText ) {
+                                       var finalText = statusText || strAbort;
+                                       if ( transport ) {
+                                               transport.abort( finalText );
+                                       }
+                                       done( 0, finalText );
+                                       return this;
+                               }
+                       };
+
+               // Attach deferreds
+               deferred.promise( jqXHR ).complete = completeDeferred.add;
+               jqXHR.success = jqXHR.done;
+               jqXHR.error = jqXHR.fail;
+
+               // Remove hash character (#7531: and string promotion)
+               // Add protocol if not provided (prefilters might expect it)
+               // Handle falsy url in the settings object (#10093: consistency with old signature)
+               // We also use the url parameter if available
+               s.url = ( ( url || s.url || ajaxLocation ) + "" ).replace( rhash, "" )
+                       .replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
+
+               // Alias method option to type as per ticket #12004
+               s.type = options.method || options.type || s.method || s.type;
+
+               // Extract dataTypes list
+               s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().match( rnotwhite ) || [ "" ];
+
+               // A cross-domain request is in order when we have a protocol:host:port mismatch
+               if ( s.crossDomain == null ) {
+                       parts = rurl.exec( s.url.toLowerCase() );
+                       s.crossDomain = !!( parts &&
+                               ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||
+                                       ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? "80" : "443" ) ) !==
+                                               ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? "80" : "443" ) ) )
+                       );
+               }
+
+               // Convert data if not already a string
+               if ( s.data && s.processData && typeof s.data !== "string" ) {
+                       s.data = jQuery.param( s.data, s.traditional );
+               }
+
+               // Apply prefilters
+               inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
+
+               // If request was aborted inside a prefilter, stop there
+               if ( state === 2 ) {
+                       return jqXHR;
+               }
+
+               // We can fire global events as of now if asked to
+               // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)
+               fireGlobals = jQuery.event && s.global;
+
+               // Watch for a new set of requests
+               if ( fireGlobals && jQuery.active++ === 0 ) {
+                       jQuery.event.trigger("ajaxStart");
+               }
+
+               // Uppercase the type
+               s.type = s.type.toUpperCase();
+
+               // Determine if request has content
+               s.hasContent = !rnoContent.test( s.type );
+
+               // Save the URL in case we're toying with the If-Modified-Since
+               // and/or If-None-Match header later on
+               cacheURL = s.url;
+
+               // More options handling for requests with no content
+               if ( !s.hasContent ) {
+
+                       // If data is available, append data to url
+                       if ( s.data ) {
+                               cacheURL = ( s.url += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data );
+                               // #9682: remove data so that it's not used in an eventual retry
+                               delete s.data;
+                       }
+
+                       // Add anti-cache in url if needed
+                       if ( s.cache === false ) {
+                               s.url = rts.test( cacheURL ) ?
+
+                                       // If there is already a '_' parameter, set its value
+                                       cacheURL.replace( rts, "$1_=" + nonce++ ) :
+
+                                       // Otherwise add one to the end
+                                       cacheURL + ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + nonce++;
+                       }
+               }
+
+               // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+               if ( s.ifModified ) {
+                       if ( jQuery.lastModified[ cacheURL ] ) {
+                               jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
+                       }
+                       if ( jQuery.etag[ cacheURL ] ) {
+                               jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
+                       }
+               }
+
+               // Set the correct header, if data is being sent
+               if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
+                       jqXHR.setRequestHeader( "Content-Type", s.contentType );
+               }
+
+               // Set the Accepts header for the server, depending on the dataType
+               jqXHR.setRequestHeader(
+                       "Accept",
+                       s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
+                               s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
+                               s.accepts[ "*" ]
+               );
+
+               // Check for headers option
+               for ( i in s.headers ) {
+                       jqXHR.setRequestHeader( i, s.headers[ i ] );
+               }
+
+               // Allow custom headers/mimetypes and early abort
+               if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
+                       // Abort if not done already and return
+                       return jqXHR.abort();
+               }
+
+               // Aborting is no longer a cancellation
+               strAbort = "abort";
+
+               // Install callbacks on deferreds
+               for ( i in { success: 1, error: 1, complete: 1 } ) {
+                       jqXHR[ i ]( s[ i ] );
+               }
+
+               // Get transport
+               transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
+
+               // If no transport, we auto-abort
+               if ( !transport ) {
+                       done( -1, "No Transport" );
+               } else {
+                       jqXHR.readyState = 1;
+
+                       // Send global event
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
+                       }
+                       // Timeout
+                       if ( s.async && s.timeout > 0 ) {
+                               timeoutTimer = setTimeout(function() {
+                                       jqXHR.abort("timeout");
+                               }, s.timeout );
+                       }
+
+                       try {
+                               state = 1;
+                               transport.send( requestHeaders, done );
+                       } catch ( e ) {
+                               // Propagate exception as error if not done
+                               if ( state < 2 ) {
+                                       done( -1, e );
+                               // Simply rethrow otherwise
+                               } else {
+                                       throw e;
+                               }
+                       }
+               }
+
+               // Callback for when everything is done
+               function done( status, nativeStatusText, responses, headers ) {
+                       var isSuccess, success, error, response, modified,
+                               statusText = nativeStatusText;
+
+                       // Called once
+                       if ( state === 2 ) {
+                               return;
+                       }
+
+                       // State is "done" now
+                       state = 2;
+
+                       // Clear timeout if it exists
+                       if ( timeoutTimer ) {
+                               clearTimeout( timeoutTimer );
+                       }
+
+                       // Dereference transport for early garbage collection
+                       // (no matter how long the jqXHR object will be used)
+                       transport = undefined;
+
+                       // Cache response headers
+                       responseHeadersString = headers || "";
+
+                       // Set readyState
+                       jqXHR.readyState = status > 0 ? 4 : 0;
+
+                       // Determine if successful
+                       isSuccess = status >= 200 && status < 300 || status === 304;
+
+                       // Get response data
+                       if ( responses ) {
+                               response = ajaxHandleResponses( s, jqXHR, responses );
+                       }
+
+                       // Convert no matter what (that way responseXXX fields are always set)
+                       response = ajaxConvert( s, response, jqXHR, isSuccess );
+
+                       // If successful, handle type chaining
+                       if ( isSuccess ) {
+
+                               // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+                               if ( s.ifModified ) {
+                                       modified = jqXHR.getResponseHeader("Last-Modified");
+                                       if ( modified ) {
+                                               jQuery.lastModified[ cacheURL ] = modified;
+                                       }
+                                       modified = jqXHR.getResponseHeader("etag");
+                                       if ( modified ) {
+                                               jQuery.etag[ cacheURL ] = modified;
+                                       }
+                               }
+
+                               // if no content
+                               if ( status === 204 || s.type === "HEAD" ) {
+                                       statusText = "nocontent";
+
+                               // if not modified
+                               } else if ( status === 304 ) {
+                                       statusText = "notmodified";
+
+                               // If we have data, let's convert it
+                               } else {
+                                       statusText = response.state;
+                                       success = response.data;
+                                       error = response.error;
+                                       isSuccess = !error;
+                               }
+                       } else {
+                               // Extract error from statusText and normalize for non-aborts
+                               error = statusText;
+                               if ( status || !statusText ) {
+                                       statusText = "error";
+                                       if ( status < 0 ) {
+                                               status = 0;
+                                       }
+                               }
+                       }
+
+                       // Set data for the fake xhr object
+                       jqXHR.status = status;
+                       jqXHR.statusText = ( nativeStatusText || statusText ) + "";
+
+                       // Success/Error
+                       if ( isSuccess ) {
+                               deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
+                       } else {
+                               deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
+                       }
+
+                       // Status-dependent callbacks
+                       jqXHR.statusCode( statusCode );
+                       statusCode = undefined;
+
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
+                                       [ jqXHR, s, isSuccess ? success : error ] );
+                       }
+
+                       // Complete
+                       completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
+
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
+                               // Handle the global AJAX counter
+                               if ( !( --jQuery.active ) ) {
+                                       jQuery.event.trigger("ajaxStop");
+                               }
+                       }
+               }
+
+               return jqXHR;
+       },
+
+       getJSON: function( url, data, callback ) {
+               return jQuery.get( url, data, callback, "json" );
+       },
+
+       getScript: function( url, callback ) {
+               return jQuery.get( url, undefined, callback, "script" );
+       }
+});
+
+jQuery.each( [ "get", "post" ], function( i, method ) {
+       jQuery[ method ] = function( url, data, callback, type ) {
+               // Shift arguments if data argument was omitted
+               if ( jQuery.isFunction( data ) ) {
+                       type = type || callback;
+                       callback = data;
+                       data = undefined;
+               }
+
+               return jQuery.ajax({
+                       url: url,
+                       type: method,
+                       dataType: type,
+                       data: data,
+                       success: callback
+               });
+       };
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/jsonp.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/jsonp.js
new file mode 100644 (file)
index 0000000..ff0d538
--- /dev/null
@@ -0,0 +1,89 @@
+define([
+       "../core",
+       "./var/nonce",
+       "./var/rquery",
+       "../ajax"
+], function( jQuery, nonce, rquery ) {
+
+var oldCallbacks = [],
+       rjsonp = /(=)\?(?=&|$)|\?\?/;
+
+// Default jsonp settings
+jQuery.ajaxSetup({
+       jsonp: "callback",
+       jsonpCallback: function() {
+               var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) );
+               this[ callback ] = true;
+               return callback;
+       }
+});
+
+// Detect, normalize options and install callbacks for jsonp requests
+jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
+
+       var callbackName, overwritten, responseContainer,
+               jsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?
+                       "url" :
+                       typeof s.data === "string" && !( s.contentType || "" ).indexOf("application/x-www-form-urlencoded") && rjsonp.test( s.data ) && "data"
+               );
+
+       // Handle iff the expected data type is "jsonp" or we have a parameter to set
+       if ( jsonProp || s.dataTypes[ 0 ] === "jsonp" ) {
+
+               // Get callback name, remembering preexisting value associated with it
+               callbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ?
+                       s.jsonpCallback() :
+                       s.jsonpCallback;
+
+               // Insert callback into url or form data
+               if ( jsonProp ) {
+                       s[ jsonProp ] = s[ jsonProp ].replace( rjsonp, "$1" + callbackName );
+               } else if ( s.jsonp !== false ) {
+                       s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName;
+               }
+
+               // Use data converter to retrieve json after script execution
+               s.converters["script json"] = function() {
+                       if ( !responseContainer ) {
+                               jQuery.error( callbackName + " was not called" );
+                       }
+                       return responseContainer[ 0 ];
+               };
+
+               // force json dataType
+               s.dataTypes[ 0 ] = "json";
+
+               // Install callback
+               overwritten = window[ callbackName ];
+               window[ callbackName ] = function() {
+                       responseContainer = arguments;
+               };
+
+               // Clean-up function (fires after converters)
+               jqXHR.always(function() {
+                       // Restore preexisting value
+                       window[ callbackName ] = overwritten;
+
+                       // Save back as free
+                       if ( s[ callbackName ] ) {
+                               // make sure that re-using the options doesn't screw things around
+                               s.jsonpCallback = originalSettings.jsonpCallback;
+
+                               // save the callback name for future use
+                               oldCallbacks.push( callbackName );
+                       }
+
+                       // Call if it was a function and we have a response
+                       if ( responseContainer && jQuery.isFunction( overwritten ) ) {
+                               overwritten( responseContainer[ 0 ] );
+                       }
+
+                       responseContainer = overwritten = undefined;
+               });
+
+               // Delegate to script
+               return "script";
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/load.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/load.js
new file mode 100644 (file)
index 0000000..bff25b1
--- /dev/null
@@ -0,0 +1,75 @@
+define([
+       "../core",
+       "../core/parseHTML",
+       "../ajax",
+       "../traversing",
+       "../manipulation",
+       "../selector",
+       // Optional event/alias dependency
+       "../event/alias"
+], function( jQuery ) {
+
+// Keep a copy of the old load method
+var _load = jQuery.fn.load;
+
+/**
+ * Load a url into a page
+ */
+jQuery.fn.load = function( url, params, callback ) {
+       if ( typeof url !== "string" && _load ) {
+               return _load.apply( this, arguments );
+       }
+
+       var selector, type, response,
+               self = this,
+               off = url.indexOf(" ");
+
+       if ( off >= 0 ) {
+               selector = jQuery.trim( url.slice( off ) );
+               url = url.slice( 0, off );
+       }
+
+       // If it's a function
+       if ( jQuery.isFunction( params ) ) {
+
+               // We assume that it's the callback
+               callback = params;
+               params = undefined;
+
+       // Otherwise, build a param string
+       } else if ( params && typeof params === "object" ) {
+               type = "POST";
+       }
+
+       // If we have elements to modify, make the request
+       if ( self.length > 0 ) {
+               jQuery.ajax({
+                       url: url,
+
+                       // if "type" variable is undefined, then "GET" method will be used
+                       type: type,
+                       dataType: "html",
+                       data: params
+               }).done(function( responseText ) {
+
+                       // Save response for use in complete callback
+                       response = arguments;
+
+                       self.html( selector ?
+
+                               // If a selector was specified, locate the right elements in a dummy div
+                               // Exclude scripts to avoid IE 'Permission Denied' errors
+                               jQuery("<div>").append( jQuery.parseHTML( responseText ) ).find( selector ) :
+
+                               // Otherwise use the full result
+                               responseText );
+
+               }).complete( callback && function( jqXHR, status ) {
+                       self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] );
+               });
+       }
+
+       return this;
+};
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/parseJSON.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/parseJSON.js
new file mode 100644 (file)
index 0000000..3a96d15
--- /dev/null
@@ -0,0 +1,13 @@
+define([
+       "../core"
+], function( jQuery ) {
+
+// Support: Android 2.3
+// Workaround failure to string-cast null input
+jQuery.parseJSON = function( data ) {
+       return JSON.parse( data + "" );
+};
+
+return jQuery.parseJSON;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/parseXML.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/parseXML.js
new file mode 100644 (file)
index 0000000..9eeb625
--- /dev/null
@@ -0,0 +1,28 @@
+define([
+       "../core"
+], function( jQuery ) {
+
+// Cross-browser xml parsing
+jQuery.parseXML = function( data ) {
+       var xml, tmp;
+       if ( !data || typeof data !== "string" ) {
+               return null;
+       }
+
+       // Support: IE9
+       try {
+               tmp = new DOMParser();
+               xml = tmp.parseFromString( data, "text/xml" );
+       } catch ( e ) {
+               xml = undefined;
+       }
+
+       if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) {
+               jQuery.error( "Invalid XML: " + data );
+       }
+       return xml;
+};
+
+return jQuery.parseXML;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/script.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/script.js
new file mode 100644 (file)
index 0000000..f44329d
--- /dev/null
@@ -0,0 +1,64 @@
+define([
+       "../core",
+       "../ajax"
+], function( jQuery ) {
+
+// Install script dataType
+jQuery.ajaxSetup({
+       accepts: {
+               script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
+       },
+       contents: {
+               script: /(?:java|ecma)script/
+       },
+       converters: {
+               "text script": function( text ) {
+                       jQuery.globalEval( text );
+                       return text;
+               }
+       }
+});
+
+// Handle cache's special case and crossDomain
+jQuery.ajaxPrefilter( "script", function( s ) {
+       if ( s.cache === undefined ) {
+               s.cache = false;
+       }
+       if ( s.crossDomain ) {
+               s.type = "GET";
+       }
+});
+
+// Bind script tag hack transport
+jQuery.ajaxTransport( "script", function( s ) {
+       // This transport only deals with cross domain requests
+       if ( s.crossDomain ) {
+               var script, callback;
+               return {
+                       send: function( _, complete ) {
+                               script = jQuery("<script>").prop({
+                                       async: true,
+                                       charset: s.scriptCharset,
+                                       src: s.url
+                               }).on(
+                                       "load error",
+                                       callback = function( evt ) {
+                                               script.remove();
+                                               callback = null;
+                                               if ( evt ) {
+                                                       complete( evt.type === "error" ? 404 : 200, evt.type );
+                                               }
+                                       }
+                               );
+                               document.head.appendChild( script[ 0 ] );
+                       },
+                       abort: function() {
+                               if ( callback ) {
+                                       callback();
+                               }
+                       }
+               };
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/var/nonce.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/var/nonce.js
new file mode 100644 (file)
index 0000000..0871aae
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "../../core"
+], function( jQuery ) {
+       return jQuery.now();
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/var/rquery.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/var/rquery.js
new file mode 100644 (file)
index 0000000..500a77a
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return (/\?/);
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/xhr.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/ajax/xhr.js
new file mode 100644 (file)
index 0000000..c2b43c9
--- /dev/null
@@ -0,0 +1,136 @@
+define([
+       "../core",
+       "../var/support",
+       "../ajax"
+], function( jQuery, support ) {
+
+jQuery.ajaxSettings.xhr = function() {
+       try {
+               return new XMLHttpRequest();
+       } catch( e ) {}
+};
+
+var xhrId = 0,
+       xhrCallbacks = {},
+       xhrSuccessStatus = {
+               // file protocol always yields status code 0, assume 200
+               0: 200,
+               // Support: IE9
+               // #1450: sometimes IE returns 1223 when it should be 204
+               1223: 204
+       },
+       xhrSupported = jQuery.ajaxSettings.xhr();
+
+// Support: IE9
+// Open requests must be manually aborted on unload (#5280)
+// See https://support.microsoft.com/kb/2856746 for more info
+if ( window.attachEvent ) {
+       window.attachEvent( "onunload", function() {
+               for ( var key in xhrCallbacks ) {
+                       xhrCallbacks[ key ]();
+               }
+       });
+}
+
+support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported );
+support.ajax = xhrSupported = !!xhrSupported;
+
+jQuery.ajaxTransport(function( options ) {
+       var callback;
+
+       // Cross domain only allowed if supported through XMLHttpRequest
+       if ( support.cors || xhrSupported && !options.crossDomain ) {
+               return {
+                       send: function( headers, complete ) {
+                               var i,
+                                       xhr = options.xhr(),
+                                       id = ++xhrId;
+
+                               xhr.open( options.type, options.url, options.async, options.username, options.password );
+
+                               // Apply custom fields if provided
+                               if ( options.xhrFields ) {
+                                       for ( i in options.xhrFields ) {
+                                               xhr[ i ] = options.xhrFields[ i ];
+                                       }
+                               }
+
+                               // Override mime type if needed
+                               if ( options.mimeType && xhr.overrideMimeType ) {
+                                       xhr.overrideMimeType( options.mimeType );
+                               }
+
+                               // X-Requested-With header
+                               // For cross-domain requests, seeing as conditions for a preflight are
+                               // akin to a jigsaw puzzle, we simply never set it to be sure.
+                               // (it can always be set on a per-request basis or even using ajaxSetup)
+                               // For same-domain requests, won't change header if already provided.
+                               if ( !options.crossDomain && !headers["X-Requested-With"] ) {
+                                       headers["X-Requested-With"] = "XMLHttpRequest";
+                               }
+
+                               // Set headers
+                               for ( i in headers ) {
+                                       xhr.setRequestHeader( i, headers[ i ] );
+                               }
+
+                               // Callback
+                               callback = function( type ) {
+                                       return function() {
+                                               if ( callback ) {
+                                                       delete xhrCallbacks[ id ];
+                                                       callback = xhr.onload = xhr.onerror = null;
+
+                                                       if ( type === "abort" ) {
+                                                               xhr.abort();
+                                                       } else if ( type === "error" ) {
+                                                               complete(
+                                                                       // file: protocol always yields status 0; see #8605, #14207
+                                                                       xhr.status,
+                                                                       xhr.statusText
+                                                               );
+                                                       } else {
+                                                               complete(
+                                                                       xhrSuccessStatus[ xhr.status ] || xhr.status,
+                                                                       xhr.statusText,
+                                                                       // Support: IE9
+                                                                       // Accessing binary-data responseText throws an exception
+                                                                       // (#11426)
+                                                                       typeof xhr.responseText === "string" ? {
+                                                                               text: xhr.responseText
+                                                                       } : undefined,
+                                                                       xhr.getAllResponseHeaders()
+                                                               );
+                                                       }
+                                               }
+                                       };
+                               };
+
+                               // Listen to events
+                               xhr.onload = callback();
+                               xhr.onerror = callback("error");
+
+                               // Create the abort callback
+                               callback = xhrCallbacks[ id ] = callback("abort");
+
+                               try {
+                                       // Do send the request (this may raise an exception)
+                                       xhr.send( options.hasContent && options.data || null );
+                               } catch ( e ) {
+                                       // #14683: Only rethrow if this hasn't been notified as an error yet
+                                       if ( callback ) {
+                                               throw e;
+                                       }
+                               }
+                       },
+
+                       abort: function() {
+                               if ( callback ) {
+                                       callback();
+                               }
+                       }
+               };
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes.js
new file mode 100644 (file)
index 0000000..fa2ef1e
--- /dev/null
@@ -0,0 +1,11 @@
+define([
+       "./core",
+       "./attributes/attr",
+       "./attributes/prop",
+       "./attributes/classes",
+       "./attributes/val"
+], function( jQuery ) {
+
+// Return jQuery for attributes-only inclusion
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/attr.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/attr.js
new file mode 100644 (file)
index 0000000..a4414d1
--- /dev/null
@@ -0,0 +1,141 @@
+define([
+       "../core",
+       "../var/rnotwhite",
+       "../var/strundefined",
+       "../core/access",
+       "./support",
+       "../selector"
+], function( jQuery, rnotwhite, strundefined, access, support ) {
+
+var nodeHook, boolHook,
+       attrHandle = jQuery.expr.attrHandle;
+
+jQuery.fn.extend({
+       attr: function( name, value ) {
+               return access( this, jQuery.attr, name, value, arguments.length > 1 );
+       },
+
+       removeAttr: function( name ) {
+               return this.each(function() {
+                       jQuery.removeAttr( this, name );
+               });
+       }
+});
+
+jQuery.extend({
+       attr: function( elem, name, value ) {
+               var hooks, ret,
+                       nType = elem.nodeType;
+
+               // don't get/set attributes on text, comment and attribute nodes
+               if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
+                       return;
+               }
+
+               // Fallback to prop when attributes are not supported
+               if ( typeof elem.getAttribute === strundefined ) {
+                       return jQuery.prop( elem, name, value );
+               }
+
+               // All attributes are lowercase
+               // Grab necessary hook if one is defined
+               if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
+                       name = name.toLowerCase();
+                       hooks = jQuery.attrHooks[ name ] ||
+                               ( jQuery.expr.match.bool.test( name ) ? boolHook : nodeHook );
+               }
+
+               if ( value !== undefined ) {
+
+                       if ( value === null ) {
+                               jQuery.removeAttr( elem, name );
+
+                       } else if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
+                               return ret;
+
+                       } else {
+                               elem.setAttribute( name, value + "" );
+                               return value;
+                       }
+
+               } else if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
+                       return ret;
+
+               } else {
+                       ret = jQuery.find.attr( elem, name );
+
+                       // Non-existent attributes return null, we normalize to undefined
+                       return ret == null ?
+                               undefined :
+                               ret;
+               }
+       },
+
+       removeAttr: function( elem, value ) {
+               var name, propName,
+                       i = 0,
+                       attrNames = value && value.match( rnotwhite );
+
+               if ( attrNames && elem.nodeType === 1 ) {
+                       while ( (name = attrNames[i++]) ) {
+                               propName = jQuery.propFix[ name ] || name;
+
+                               // Boolean attributes get special treatment (#10870)
+                               if ( jQuery.expr.match.bool.test( name ) ) {
+                                       // Set corresponding property to false
+                                       elem[ propName ] = false;
+                               }
+
+                               elem.removeAttribute( name );
+                       }
+               }
+       },
+
+       attrHooks: {
+               type: {
+                       set: function( elem, value ) {
+                               if ( !support.radioValue && value === "radio" &&
+                                       jQuery.nodeName( elem, "input" ) ) {
+                                       var val = elem.value;
+                                       elem.setAttribute( "type", value );
+                                       if ( val ) {
+                                               elem.value = val;
+                                       }
+                                       return value;
+                               }
+                       }
+               }
+       }
+});
+
+// Hooks for boolean attributes
+boolHook = {
+       set: function( elem, value, name ) {
+               if ( value === false ) {
+                       // Remove boolean attributes when set to false
+                       jQuery.removeAttr( elem, name );
+               } else {
+                       elem.setAttribute( name, name );
+               }
+               return name;
+       }
+};
+jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) {
+       var getter = attrHandle[ name ] || jQuery.find.attr;
+
+       attrHandle[ name ] = function( elem, name, isXML ) {
+               var ret, handle;
+               if ( !isXML ) {
+                       // Avoid an infinite loop by temporarily removing this function from the getter
+                       handle = attrHandle[ name ];
+                       attrHandle[ name ] = ret;
+                       ret = getter( elem, name, isXML ) != null ?
+                               name.toLowerCase() :
+                               null;
+                       attrHandle[ name ] = handle;
+               }
+               return ret;
+       };
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/classes.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/classes.js
new file mode 100644 (file)
index 0000000..1011384
--- /dev/null
@@ -0,0 +1,158 @@
+define([
+       "../core",
+       "../var/rnotwhite",
+       "../var/strundefined",
+       "../data/var/data_priv",
+       "../core/init"
+], function( jQuery, rnotwhite, strundefined, data_priv ) {
+
+var rclass = /[\t\r\n\f]/g;
+
+jQuery.fn.extend({
+       addClass: function( value ) {
+               var classes, elem, cur, clazz, j, finalValue,
+                       proceed = typeof value === "string" && value,
+                       i = 0,
+                       len = this.length;
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function( j ) {
+                               jQuery( this ).addClass( value.call( this, j, this.className ) );
+                       });
+               }
+
+               if ( proceed ) {
+                       // The disjunction here is for better compressibility (see removeClass)
+                       classes = ( value || "" ).match( rnotwhite ) || [];
+
+                       for ( ; i < len; i++ ) {
+                               elem = this[ i ];
+                               cur = elem.nodeType === 1 && ( elem.className ?
+                                       ( " " + elem.className + " " ).replace( rclass, " " ) :
+                                       " "
+                               );
+
+                               if ( cur ) {
+                                       j = 0;
+                                       while ( (clazz = classes[j++]) ) {
+                                               if ( cur.indexOf( " " + clazz + " " ) < 0 ) {
+                                                       cur += clazz + " ";
+                                               }
+                                       }
+
+                                       // only assign if different to avoid unneeded rendering.
+                                       finalValue = jQuery.trim( cur );
+                                       if ( elem.className !== finalValue ) {
+                                               elem.className = finalValue;
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       removeClass: function( value ) {
+               var classes, elem, cur, clazz, j, finalValue,
+                       proceed = arguments.length === 0 || typeof value === "string" && value,
+                       i = 0,
+                       len = this.length;
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function( j ) {
+                               jQuery( this ).removeClass( value.call( this, j, this.className ) );
+                       });
+               }
+               if ( proceed ) {
+                       classes = ( value || "" ).match( rnotwhite ) || [];
+
+                       for ( ; i < len; i++ ) {
+                               elem = this[ i ];
+                               // This expression is here for better compressibility (see addClass)
+                               cur = elem.nodeType === 1 && ( elem.className ?
+                                       ( " " + elem.className + " " ).replace( rclass, " " ) :
+                                       ""
+                               );
+
+                               if ( cur ) {
+                                       j = 0;
+                                       while ( (clazz = classes[j++]) ) {
+                                               // Remove *all* instances
+                                               while ( cur.indexOf( " " + clazz + " " ) >= 0 ) {
+                                                       cur = cur.replace( " " + clazz + " ", " " );
+                                               }
+                                       }
+
+                                       // Only assign if different to avoid unneeded rendering.
+                                       finalValue = value ? jQuery.trim( cur ) : "";
+                                       if ( elem.className !== finalValue ) {
+                                               elem.className = finalValue;
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       toggleClass: function( value, stateVal ) {
+               var type = typeof value;
+
+               if ( typeof stateVal === "boolean" && type === "string" ) {
+                       return stateVal ? this.addClass( value ) : this.removeClass( value );
+               }
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function( i ) {
+                               jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );
+                       });
+               }
+
+               return this.each(function() {
+                       if ( type === "string" ) {
+                               // Toggle individual class names
+                               var className,
+                                       i = 0,
+                                       self = jQuery( this ),
+                                       classNames = value.match( rnotwhite ) || [];
+
+                               while ( (className = classNames[ i++ ]) ) {
+                                       // Check each className given, space separated list
+                                       if ( self.hasClass( className ) ) {
+                                               self.removeClass( className );
+                                       } else {
+                                               self.addClass( className );
+                                       }
+                               }
+
+                       // Toggle whole class name
+                       } else if ( type === strundefined || type === "boolean" ) {
+                               if ( this.className ) {
+                                       // store className if set
+                                       data_priv.set( this, "__className__", this.className );
+                               }
+
+                               // If the element has a class name or if we're passed `false`,
+                               // then remove the whole classname (if there was one, the above saved it).
+                               // Otherwise bring back whatever was previously saved (if anything),
+                               // falling back to the empty string if nothing was stored.
+                               this.className = this.className || value === false ? "" : data_priv.get( this, "__className__" ) || "";
+                       }
+               });
+       },
+
+       hasClass: function( selector ) {
+               var className = " " + selector + " ",
+                       i = 0,
+                       l = this.length;
+               for ( ; i < l; i++ ) {
+                       if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
+                               return true;
+                       }
+               }
+
+               return false;
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/prop.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/prop.js
new file mode 100644 (file)
index 0000000..d4ee8b6
--- /dev/null
@@ -0,0 +1,94 @@
+define([
+       "../core",
+       "../core/access",
+       "./support"
+], function( jQuery, access, support ) {
+
+var rfocusable = /^(?:input|select|textarea|button)$/i;
+
+jQuery.fn.extend({
+       prop: function( name, value ) {
+               return access( this, jQuery.prop, name, value, arguments.length > 1 );
+       },
+
+       removeProp: function( name ) {
+               return this.each(function() {
+                       delete this[ jQuery.propFix[ name ] || name ];
+               });
+       }
+});
+
+jQuery.extend({
+       propFix: {
+               "for": "htmlFor",
+               "class": "className"
+       },
+
+       prop: function( elem, name, value ) {
+               var ret, hooks, notxml,
+                       nType = elem.nodeType;
+
+               // Don't get/set properties on text, comment and attribute nodes
+               if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
+                       return;
+               }
+
+               notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
+
+               if ( notxml ) {
+                       // Fix name and attach hooks
+                       name = jQuery.propFix[ name ] || name;
+                       hooks = jQuery.propHooks[ name ];
+               }
+
+               if ( value !== undefined ) {
+                       return hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ?
+                               ret :
+                               ( elem[ name ] = value );
+
+               } else {
+                       return hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ?
+                               ret :
+                               elem[ name ];
+               }
+       },
+
+       propHooks: {
+               tabIndex: {
+                       get: function( elem ) {
+                               return elem.hasAttribute( "tabindex" ) || rfocusable.test( elem.nodeName ) || elem.href ?
+                                       elem.tabIndex :
+                                       -1;
+                       }
+               }
+       }
+});
+
+if ( !support.optSelected ) {
+       jQuery.propHooks.selected = {
+               get: function( elem ) {
+                       var parent = elem.parentNode;
+                       if ( parent && parent.parentNode ) {
+                               parent.parentNode.selectedIndex;
+                       }
+                       return null;
+               }
+       };
+}
+
+jQuery.each([
+       "tabIndex",
+       "readOnly",
+       "maxLength",
+       "cellSpacing",
+       "cellPadding",
+       "rowSpan",
+       "colSpan",
+       "useMap",
+       "frameBorder",
+       "contentEditable"
+], function() {
+       jQuery.propFix[ this.toLowerCase() ] = this;
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/support.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/support.js
new file mode 100644 (file)
index 0000000..5db5c52
--- /dev/null
@@ -0,0 +1,35 @@
+define([
+       "../var/support"
+], function( support ) {
+
+(function() {
+       var input = document.createElement( "input" ),
+               select = document.createElement( "select" ),
+               opt = select.appendChild( document.createElement( "option" ) );
+
+       input.type = "checkbox";
+
+       // Support: iOS<=5.1, Android<=4.2+
+       // Default value for a checkbox should be "on"
+       support.checkOn = input.value !== "";
+
+       // Support: IE<=11+
+       // Must access selectedIndex to make default options select
+       support.optSelected = opt.selected;
+
+       // Support: Android<=2.3
+       // Options inside disabled selects are incorrectly marked as disabled
+       select.disabled = true;
+       support.optDisabled = !opt.disabled;
+
+       // Support: IE<=11+
+       // An input loses its value after becoming a radio
+       input = document.createElement( "input" );
+       input.value = "t";
+       input.type = "radio";
+       support.radioValue = input.value === "t";
+})();
+
+return support;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/val.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/attributes/val.js
new file mode 100644 (file)
index 0000000..4a1358a
--- /dev/null
@@ -0,0 +1,161 @@
+define([
+       "../core",
+       "./support",
+       "../core/init"
+], function( jQuery, support ) {
+
+var rreturn = /\r/g;
+
+jQuery.fn.extend({
+       val: function( value ) {
+               var hooks, ret, isFunction,
+                       elem = this[0];
+
+               if ( !arguments.length ) {
+                       if ( elem ) {
+                               hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];
+
+                               if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) {
+                                       return ret;
+                               }
+
+                               ret = elem.value;
+
+                               return typeof ret === "string" ?
+                                       // Handle most common string cases
+                                       ret.replace(rreturn, "") :
+                                       // Handle cases where value is null/undef or number
+                                       ret == null ? "" : ret;
+                       }
+
+                       return;
+               }
+
+               isFunction = jQuery.isFunction( value );
+
+               return this.each(function( i ) {
+                       var val;
+
+                       if ( this.nodeType !== 1 ) {
+                               return;
+                       }
+
+                       if ( isFunction ) {
+                               val = value.call( this, i, jQuery( this ).val() );
+                       } else {
+                               val = value;
+                       }
+
+                       // Treat null/undefined as ""; convert numbers to string
+                       if ( val == null ) {
+                               val = "";
+
+                       } else if ( typeof val === "number" ) {
+                               val += "";
+
+                       } else if ( jQuery.isArray( val ) ) {
+                               val = jQuery.map( val, function( value ) {
+                                       return value == null ? "" : value + "";
+                               });
+                       }
+
+                       hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
+
+                       // If set returns undefined, fall back to normal setting
+                       if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) {
+                               this.value = val;
+                       }
+               });
+       }
+});
+
+jQuery.extend({
+       valHooks: {
+               option: {
+                       get: function( elem ) {
+                               var val = jQuery.find.attr( elem, "value" );
+                               return val != null ?
+                                       val :
+                                       // Support: IE10-11+
+                                       // option.text throws exceptions (#14686, #14858)
+                                       jQuery.trim( jQuery.text( elem ) );
+                       }
+               },
+               select: {
+                       get: function( elem ) {
+                               var value, option,
+                                       options = elem.options,
+                                       index = elem.selectedIndex,
+                                       one = elem.type === "select-one" || index < 0,
+                                       values = one ? null : [],
+                                       max = one ? index + 1 : options.length,
+                                       i = index < 0 ?
+                                               max :
+                                               one ? index : 0;
+
+                               // Loop through all the selected options
+                               for ( ; i < max; i++ ) {
+                                       option = options[ i ];
+
+                                       // IE6-9 doesn't update selected after form reset (#2551)
+                                       if ( ( option.selected || i === index ) &&
+                                                       // Don't return options that are disabled or in a disabled optgroup
+                                                       ( support.optDisabled ? !option.disabled : option.getAttribute( "disabled" ) === null ) &&
+                                                       ( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
+
+                                               // Get the specific value for the option
+                                               value = jQuery( option ).val();
+
+                                               // We don't need an array for one selects
+                                               if ( one ) {
+                                                       return value;
+                                               }
+
+                                               // Multi-Selects return an array
+                                               values.push( value );
+                                       }
+                               }
+
+                               return values;
+                       },
+
+                       set: function( elem, value ) {
+                               var optionSet, option,
+                                       options = elem.options,
+                                       values = jQuery.makeArray( value ),
+                                       i = options.length;
+
+                               while ( i-- ) {
+                                       option = options[ i ];
+                                       if ( (option.selected = jQuery.inArray( option.value, values ) >= 0) ) {
+                                               optionSet = true;
+                                       }
+                               }
+
+                               // Force browsers to behave consistently when non-matching value is set
+                               if ( !optionSet ) {
+                                       elem.selectedIndex = -1;
+                               }
+                               return values;
+                       }
+               }
+       }
+});
+
+// Radios and checkboxes getter/setter
+jQuery.each([ "radio", "checkbox" ], function() {
+       jQuery.valHooks[ this ] = {
+               set: function( elem, value ) {
+                       if ( jQuery.isArray( value ) ) {
+                               return ( elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0 );
+                       }
+               }
+       };
+       if ( !support.checkOn ) {
+               jQuery.valHooks[ this ].get = function( elem ) {
+                       return elem.getAttribute("value") === null ? "on" : elem.value;
+               };
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/callbacks.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/callbacks.js
new file mode 100644 (file)
index 0000000..17572bb
--- /dev/null
@@ -0,0 +1,205 @@
+define([
+       "./core",
+       "./var/rnotwhite"
+], function( jQuery, rnotwhite ) {
+
+// String to Object options format cache
+var optionsCache = {};
+
+// Convert String-formatted options into Object-formatted ones and store in cache
+function createOptions( options ) {
+       var object = optionsCache[ options ] = {};
+       jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) {
+               object[ flag ] = true;
+       });
+       return object;
+}
+
+/*
+ * Create a callback list using the following parameters:
+ *
+ *     options: an optional list of space-separated options that will change how
+ *                     the callback list behaves or a more traditional option object
+ *
+ * By default a callback list will act like an event callback list and can be
+ * "fired" multiple times.
+ *
+ * Possible options:
+ *
+ *     once:                   will ensure the callback list can only be fired once (like a Deferred)
+ *
+ *     memory:                 will keep track of previous values and will call any callback added
+ *                                     after the list has been fired right away with the latest "memorized"
+ *                                     values (like a Deferred)
+ *
+ *     unique:                 will ensure a callback can only be added once (no duplicate in the list)
+ *
+ *     stopOnFalse:    interrupt callings when a callback returns false
+ *
+ */
+jQuery.Callbacks = function( options ) {
+
+       // Convert options from String-formatted to Object-formatted if needed
+       // (we check in cache first)
+       options = typeof options === "string" ?
+               ( optionsCache[ options ] || createOptions( options ) ) :
+               jQuery.extend( {}, options );
+
+       var // Last fire value (for non-forgettable lists)
+               memory,
+               // Flag to know if list was already fired
+               fired,
+               // Flag to know if list is currently firing
+               firing,
+               // First callback to fire (used internally by add and fireWith)
+               firingStart,
+               // End of the loop when firing
+               firingLength,
+               // Index of currently firing callback (modified by remove if needed)
+               firingIndex,
+               // Actual callback list
+               list = [],
+               // Stack of fire calls for repeatable lists
+               stack = !options.once && [],
+               // Fire callbacks
+               fire = function( data ) {
+                       memory = options.memory && data;
+                       fired = true;
+                       firingIndex = firingStart || 0;
+                       firingStart = 0;
+                       firingLength = list.length;
+                       firing = true;
+                       for ( ; list && firingIndex < firingLength; firingIndex++ ) {
+                               if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) {
+                                       memory = false; // To prevent further calls using add
+                                       break;
+                               }
+                       }
+                       firing = false;
+                       if ( list ) {
+                               if ( stack ) {
+                                       if ( stack.length ) {
+                                               fire( stack.shift() );
+                                       }
+                               } else if ( memory ) {
+                                       list = [];
+                               } else {
+                                       self.disable();
+                               }
+                       }
+               },
+               // Actual Callbacks object
+               self = {
+                       // Add a callback or a collection of callbacks to the list
+                       add: function() {
+                               if ( list ) {
+                                       // First, we save the current length
+                                       var start = list.length;
+                                       (function add( args ) {
+                                               jQuery.each( args, function( _, arg ) {
+                                                       var type = jQuery.type( arg );
+                                                       if ( type === "function" ) {
+                                                               if ( !options.unique || !self.has( arg ) ) {
+                                                                       list.push( arg );
+                                                               }
+                                                       } else if ( arg && arg.length && type !== "string" ) {
+                                                               // Inspect recursively
+                                                               add( arg );
+                                                       }
+                                               });
+                                       })( arguments );
+                                       // Do we need to add the callbacks to the
+                                       // current firing batch?
+                                       if ( firing ) {
+                                               firingLength = list.length;
+                                       // With memory, if we're not firing then
+                                       // we should call right away
+                                       } else if ( memory ) {
+                                               firingStart = start;
+                                               fire( memory );
+                                       }
+                               }
+                               return this;
+                       },
+                       // Remove a callback from the list
+                       remove: function() {
+                               if ( list ) {
+                                       jQuery.each( arguments, function( _, arg ) {
+                                               var index;
+                                               while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
+                                                       list.splice( index, 1 );
+                                                       // Handle firing indexes
+                                                       if ( firing ) {
+                                                               if ( index <= firingLength ) {
+                                                                       firingLength--;
+                                                               }
+                                                               if ( index <= firingIndex ) {
+                                                                       firingIndex--;
+                                                               }
+                                                       }
+                                               }
+                                       });
+                               }
+                               return this;
+                       },
+                       // Check if a given callback is in the list.
+                       // If no argument is given, return whether or not list has callbacks attached.
+                       has: function( fn ) {
+                               return fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length );
+                       },
+                       // Remove all callbacks from the list
+                       empty: function() {
+                               list = [];
+                               firingLength = 0;
+                               return this;
+                       },
+                       // Have the list do nothing anymore
+                       disable: function() {
+                               list = stack = memory = undefined;
+                               return this;
+                       },
+                       // Is it disabled?
+                       disabled: function() {
+                               return !list;
+                       },
+                       // Lock the list in its current state
+                       lock: function() {
+                               stack = undefined;
+                               if ( !memory ) {
+                                       self.disable();
+                               }
+                               return this;
+                       },
+                       // Is it locked?
+                       locked: function() {
+                               return !stack;
+                       },
+                       // Call all callbacks with the given context and arguments
+                       fireWith: function( context, args ) {
+                               if ( list && ( !fired || stack ) ) {
+                                       args = args || [];
+                                       args = [ context, args.slice ? args.slice() : args ];
+                                       if ( firing ) {
+                                               stack.push( args );
+                                       } else {
+                                               fire( args );
+                                       }
+                               }
+                               return this;
+                       },
+                       // Call all the callbacks with the given arguments
+                       fire: function() {
+                               self.fireWith( this, arguments );
+                               return this;
+                       },
+                       // To know if the callbacks have already been called at least once
+                       fired: function() {
+                               return !!fired;
+                       }
+               };
+
+       return self;
+};
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core.js
new file mode 100644 (file)
index 0000000..6f471ee
--- /dev/null
@@ -0,0 +1,502 @@
+define([
+       "./var/arr",
+       "./var/slice",
+       "./var/concat",
+       "./var/push",
+       "./var/indexOf",
+       "./var/class2type",
+       "./var/toString",
+       "./var/hasOwn",
+       "./var/support"
+], function( arr, slice, concat, push, indexOf, class2type, toString, hasOwn, support ) {
+
+var
+       // Use the correct document accordingly with window argument (sandbox)
+       document = window.document,
+
+       version = "@VERSION",
+
+       // Define a local copy of jQuery
+       jQuery = function( selector, context ) {
+               // The jQuery object is actually just the init constructor 'enhanced'
+               // Need init if jQuery is called (just allow error to be thrown if not included)
+               return new jQuery.fn.init( selector, context );
+       },
+
+       // Support: Android<4.1
+       // Make sure we trim BOM and NBSP
+       rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
+
+       // Matches dashed string for camelizing
+       rmsPrefix = /^-ms-/,
+       rdashAlpha = /-([\da-z])/gi,
+
+       // Used by jQuery.camelCase as callback to replace()
+       fcamelCase = function( all, letter ) {
+               return letter.toUpperCase();
+       };
+
+jQuery.fn = jQuery.prototype = {
+       // The current version of jQuery being used
+       jquery: version,
+
+       constructor: jQuery,
+
+       // Start with an empty selector
+       selector: "",
+
+       // The default length of a jQuery object is 0
+       length: 0,
+
+       toArray: function() {
+               return slice.call( this );
+       },
+
+       // Get the Nth element in the matched element set OR
+       // Get the whole matched element set as a clean array
+       get: function( num ) {
+               return num != null ?
+
+                       // Return just the one element from the set
+                       ( num < 0 ? this[ num + this.length ] : this[ num ] ) :
+
+                       // Return all the elements in a clean array
+                       slice.call( this );
+       },
+
+       // Take an array of elements and push it onto the stack
+       // (returning the new matched element set)
+       pushStack: function( elems ) {
+
+               // Build a new jQuery matched element set
+               var ret = jQuery.merge( this.constructor(), elems );
+
+               // Add the old object onto the stack (as a reference)
+               ret.prevObject = this;
+               ret.context = this.context;
+
+               // Return the newly-formed element set
+               return ret;
+       },
+
+       // Execute a callback for every element in the matched set.
+       // (You can seed the arguments with an array of args, but this is
+       // only used internally.)
+       each: function( callback, args ) {
+               return jQuery.each( this, callback, args );
+       },
+
+       map: function( callback ) {
+               return this.pushStack( jQuery.map(this, function( elem, i ) {
+                       return callback.call( elem, i, elem );
+               }));
+       },
+
+       slice: function() {
+               return this.pushStack( slice.apply( this, arguments ) );
+       },
+
+       first: function() {
+               return this.eq( 0 );
+       },
+
+       last: function() {
+               return this.eq( -1 );
+       },
+
+       eq: function( i ) {
+               var len = this.length,
+                       j = +i + ( i < 0 ? len : 0 );
+               return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] );
+       },
+
+       end: function() {
+               return this.prevObject || this.constructor(null);
+       },
+
+       // For internal use only.
+       // Behaves like an Array's method, not like a jQuery method.
+       push: push,
+       sort: arr.sort,
+       splice: arr.splice
+};
+
+jQuery.extend = jQuery.fn.extend = function() {
+       var options, name, src, copy, copyIsArray, clone,
+               target = arguments[0] || {},
+               i = 1,
+               length = arguments.length,
+               deep = false;
+
+       // Handle a deep copy situation
+       if ( typeof target === "boolean" ) {
+               deep = target;
+
+               // Skip the boolean and the target
+               target = arguments[ i ] || {};
+               i++;
+       }
+
+       // Handle case when target is a string or something (possible in deep copy)
+       if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
+               target = {};
+       }
+
+       // Extend jQuery itself if only one argument is passed
+       if ( i === length ) {
+               target = this;
+               i--;
+       }
+
+       for ( ; i < length; i++ ) {
+               // Only deal with non-null/undefined values
+               if ( (options = arguments[ i ]) != null ) {
+                       // Extend the base object
+                       for ( name in options ) {
+                               src = target[ name ];
+                               copy = options[ name ];
+
+                               // Prevent never-ending loop
+                               if ( target === copy ) {
+                                       continue;
+                               }
+
+                               // Recurse if we're merging plain objects or arrays
+                               if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
+                                       if ( copyIsArray ) {
+                                               copyIsArray = false;
+                                               clone = src && jQuery.isArray(src) ? src : [];
+
+                                       } else {
+                                               clone = src && jQuery.isPlainObject(src) ? src : {};
+                                       }
+
+                                       // Never move original objects, clone them
+                                       target[ name ] = jQuery.extend( deep, clone, copy );
+
+                               // Don't bring in undefined values
+                               } else if ( copy !== undefined ) {
+                                       target[ name ] = copy;
+                               }
+                       }
+               }
+       }
+
+       // Return the modified object
+       return target;
+};
+
+jQuery.extend({
+       // Unique for each copy of jQuery on the page
+       expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
+
+       // Assume jQuery is ready without the ready module
+       isReady: true,
+
+       error: function( msg ) {
+               throw new Error( msg );
+       },
+
+       noop: function() {},
+
+       isFunction: function( obj ) {
+               return jQuery.type(obj) === "function";
+       },
+
+       isArray: Array.isArray,
+
+       isWindow: function( obj ) {
+               return obj != null && obj === obj.window;
+       },
+
+       isNumeric: function( obj ) {
+               // parseFloat NaNs numeric-cast false positives (null|true|false|"")
+               // ...but misinterprets leading-number strings, particularly hex literals ("0x...")
+               // subtraction forces infinities to NaN
+               // adding 1 corrects loss of precision from parseFloat (#15100)
+               return !jQuery.isArray( obj ) && (obj - parseFloat( obj ) + 1) >= 0;
+       },
+
+       isPlainObject: function( obj ) {
+               // Not plain objects:
+               // - Any object or value whose internal [[Class]] property is not "[object Object]"
+               // - DOM nodes
+               // - window
+               if ( jQuery.type( obj ) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
+                       return false;
+               }
+
+               if ( obj.constructor &&
+                               !hasOwn.call( obj.constructor.prototype, "isPrototypeOf" ) ) {
+                       return false;
+               }
+
+               // If the function hasn't returned already, we're confident that
+               // |obj| is a plain object, created by {} or constructed with new Object
+               return true;
+       },
+
+       isEmptyObject: function( obj ) {
+               var name;
+               for ( name in obj ) {
+                       return false;
+               }
+               return true;
+       },
+
+       type: function( obj ) {
+               if ( obj == null ) {
+                       return obj + "";
+               }
+               // Support: Android<4.0, iOS<6 (functionish RegExp)
+               return typeof obj === "object" || typeof obj === "function" ?
+                       class2type[ toString.call(obj) ] || "object" :
+                       typeof obj;
+       },
+
+       // Evaluates a script in a global context
+       globalEval: function( code ) {
+               var script,
+                       indirect = eval;
+
+               code = jQuery.trim( code );
+
+               if ( code ) {
+                       // If the code includes a valid, prologue position
+                       // strict mode pragma, execute code by injecting a
+                       // script tag into the document.
+                       if ( code.indexOf("use strict") === 1 ) {
+                               script = document.createElement("script");
+                               script.text = code;
+                               document.head.appendChild( script ).parentNode.removeChild( script );
+                       } else {
+                       // Otherwise, avoid the DOM node creation, insertion
+                       // and removal by using an indirect global eval
+                               indirect( code );
+                       }
+               }
+       },
+
+       // Convert dashed to camelCase; used by the css and data modules
+       // Support: IE9-11+
+       // Microsoft forgot to hump their vendor prefix (#9572)
+       camelCase: function( string ) {
+               return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
+       },
+
+       nodeName: function( elem, name ) {
+               return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
+       },
+
+       // args is for internal usage only
+       each: function( obj, callback, args ) {
+               var value,
+                       i = 0,
+                       length = obj.length,
+                       isArray = isArraylike( obj );
+
+               if ( args ) {
+                       if ( isArray ) {
+                               for ( ; i < length; i++ ) {
+                                       value = callback.apply( obj[ i ], args );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       } else {
+                               for ( i in obj ) {
+                                       value = callback.apply( obj[ i ], args );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       }
+
+               // A special, fast, case for the most common use of each
+               } else {
+                       if ( isArray ) {
+                               for ( ; i < length; i++ ) {
+                                       value = callback.call( obj[ i ], i, obj[ i ] );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       } else {
+                               for ( i in obj ) {
+                                       value = callback.call( obj[ i ], i, obj[ i ] );
+
+                                       if ( value === false ) {
+                                               break;
+                                       }
+                               }
+                       }
+               }
+
+               return obj;
+       },
+
+       // Support: Android<4.1
+       trim: function( text ) {
+               return text == null ?
+                       "" :
+                       ( text + "" ).replace( rtrim, "" );
+       },
+
+       // results is for internal usage only
+       makeArray: function( arr, results ) {
+               var ret = results || [];
+
+               if ( arr != null ) {
+                       if ( isArraylike( Object(arr) ) ) {
+                               jQuery.merge( ret,
+                                       typeof arr === "string" ?
+                                       [ arr ] : arr
+                               );
+                       } else {
+                               push.call( ret, arr );
+                       }
+               }
+
+               return ret;
+       },
+
+       inArray: function( elem, arr, i ) {
+               return arr == null ? -1 : indexOf.call( arr, elem, i );
+       },
+
+       merge: function( first, second ) {
+               var len = +second.length,
+                       j = 0,
+                       i = first.length;
+
+               for ( ; j < len; j++ ) {
+                       first[ i++ ] = second[ j ];
+               }
+
+               first.length = i;
+
+               return first;
+       },
+
+       grep: function( elems, callback, invert ) {
+               var callbackInverse,
+                       matches = [],
+                       i = 0,
+                       length = elems.length,
+                       callbackExpect = !invert;
+
+               // Go through the array, only saving the items
+               // that pass the validator function
+               for ( ; i < length; i++ ) {
+                       callbackInverse = !callback( elems[ i ], i );
+                       if ( callbackInverse !== callbackExpect ) {
+                               matches.push( elems[ i ] );
+                       }
+               }
+
+               return matches;
+       },
+
+       // arg is for internal usage only
+       map: function( elems, callback, arg ) {
+               var value,
+                       i = 0,
+                       length = elems.length,
+                       isArray = isArraylike( elems ),
+                       ret = [];
+
+               // Go through the array, translating each of the items to their new values
+               if ( isArray ) {
+                       for ( ; i < length; i++ ) {
+                               value = callback( elems[ i ], i, arg );
+
+                               if ( value != null ) {
+                                       ret.push( value );
+                               }
+                       }
+
+               // Go through every key on the object,
+               } else {
+                       for ( i in elems ) {
+                               value = callback( elems[ i ], i, arg );
+
+                               if ( value != null ) {
+                                       ret.push( value );
+                               }
+                       }
+               }
+
+               // Flatten any nested arrays
+               return concat.apply( [], ret );
+       },
+
+       // A global GUID counter for objects
+       guid: 1,
+
+       // Bind a function to a context, optionally partially applying any
+       // arguments.
+       proxy: function( fn, context ) {
+               var tmp, args, proxy;
+
+               if ( typeof context === "string" ) {
+                       tmp = fn[ context ];
+                       context = fn;
+                       fn = tmp;
+               }
+
+               // Quick check to determine if target is callable, in the spec
+               // this throws a TypeError, but we will just return undefined.
+               if ( !jQuery.isFunction( fn ) ) {
+                       return undefined;
+               }
+
+               // Simulated bind
+               args = slice.call( arguments, 2 );
+               proxy = function() {
+                       return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
+               };
+
+               // Set the guid of unique handler to the same of original handler, so it can be removed
+               proxy.guid = fn.guid = fn.guid || jQuery.guid++;
+
+               return proxy;
+       },
+
+       now: Date.now,
+
+       // jQuery.support is not used in Core but other projects attach their
+       // properties to it so it needs to exist.
+       support: support
+});
+
+// Populate the class2type map
+jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) {
+       class2type[ "[object " + name + "]" ] = name.toLowerCase();
+});
+
+function isArraylike( obj ) {
+
+       // Support: iOS 8.2 (not reproducible in simulator)
+       // `in` check used to prevent JIT error (gh-2145)
+       // hasOwn isn't used here due to false negatives
+       // regarding Nodelist length in IE
+       var length = "length" in obj && obj.length,
+               type = jQuery.type( obj );
+
+       if ( type === "function" || jQuery.isWindow( obj ) ) {
+               return false;
+       }
+
+       if ( obj.nodeType === 1 && length ) {
+               return true;
+       }
+
+       return type === "array" || length === 0 ||
+               typeof length === "number" && length > 0 && ( length - 1 ) in obj;
+}
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/access.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/access.js
new file mode 100644 (file)
index 0000000..b6110c8
--- /dev/null
@@ -0,0 +1,60 @@
+define([
+       "../core"
+], function( jQuery ) {
+
+// Multifunctional method to get and set values of a collection
+// The value/s can optionally be executed if it's a function
+var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
+       var i = 0,
+               len = elems.length,
+               bulk = key == null;
+
+       // Sets many values
+       if ( jQuery.type( key ) === "object" ) {
+               chainable = true;
+               for ( i in key ) {
+                       jQuery.access( elems, fn, i, key[i], true, emptyGet, raw );
+               }
+
+       // Sets one value
+       } else if ( value !== undefined ) {
+               chainable = true;
+
+               if ( !jQuery.isFunction( value ) ) {
+                       raw = true;
+               }
+
+               if ( bulk ) {
+                       // Bulk operations run against the entire set
+                       if ( raw ) {
+                               fn.call( elems, value );
+                               fn = null;
+
+                       // ...except when executing function values
+                       } else {
+                               bulk = fn;
+                               fn = function( elem, key, value ) {
+                                       return bulk.call( jQuery( elem ), value );
+                               };
+                       }
+               }
+
+               if ( fn ) {
+                       for ( ; i < len; i++ ) {
+                               fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) );
+                       }
+               }
+       }
+
+       return chainable ?
+               elems :
+
+               // Gets
+               bulk ?
+                       fn.call( elems ) :
+                       len ? fn( elems[0], key ) : emptyGet;
+};
+
+return access;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/init.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/init.js
new file mode 100644 (file)
index 0000000..7e83a04
--- /dev/null
@@ -0,0 +1,123 @@
+// Initialize a jQuery object
+define([
+       "../core",
+       "./var/rsingleTag",
+       "../traversing/findFilter"
+], function( jQuery, rsingleTag ) {
+
+// A central reference to the root jQuery(document)
+var rootjQuery,
+
+       // A simple way to check for HTML strings
+       // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
+       // Strict HTML recognition (#11290: must start with <)
+       rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
+
+       init = jQuery.fn.init = function( selector, context ) {
+               var match, elem;
+
+               // HANDLE: $(""), $(null), $(undefined), $(false)
+               if ( !selector ) {
+                       return this;
+               }
+
+               // Handle HTML strings
+               if ( typeof selector === "string" ) {
+                       if ( selector[0] === "<" && selector[ selector.length - 1 ] === ">" && selector.length >= 3 ) {
+                               // Assume that strings that start and end with <> are HTML and skip the regex check
+                               match = [ null, selector, null ];
+
+                       } else {
+                               match = rquickExpr.exec( selector );
+                       }
+
+                       // Match html or make sure no context is specified for #id
+                       if ( match && (match[1] || !context) ) {
+
+                               // HANDLE: $(html) -> $(array)
+                               if ( match[1] ) {
+                                       context = context instanceof jQuery ? context[0] : context;
+
+                                       // Option to run scripts is true for back-compat
+                                       // Intentionally let the error be thrown if parseHTML is not present
+                                       jQuery.merge( this, jQuery.parseHTML(
+                                               match[1],
+                                               context && context.nodeType ? context.ownerDocument || context : document,
+                                               true
+                                       ) );
+
+                                       // HANDLE: $(html, props)
+                                       if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) {
+                                               for ( match in context ) {
+                                                       // Properties of context are called as methods if possible
+                                                       if ( jQuery.isFunction( this[ match ] ) ) {
+                                                               this[ match ]( context[ match ] );
+
+                                                       // ...and otherwise set as attributes
+                                                       } else {
+                                                               this.attr( match, context[ match ] );
+                                                       }
+                                               }
+                                       }
+
+                                       return this;
+
+                               // HANDLE: $(#id)
+                               } else {
+                                       elem = document.getElementById( match[2] );
+
+                                       // Support: Blackberry 4.6
+                                       // gEBID returns nodes no longer in the document (#6963)
+                                       if ( elem && elem.parentNode ) {
+                                               // Inject the element directly into the jQuery object
+                                               this.length = 1;
+                                               this[0] = elem;
+                                       }
+
+                                       this.context = document;
+                                       this.selector = selector;
+                                       return this;
+                               }
+
+                       // HANDLE: $(expr, $(...))
+                       } else if ( !context || context.jquery ) {
+                               return ( context || rootjQuery ).find( selector );
+
+                       // HANDLE: $(expr, context)
+                       // (which is just equivalent to: $(context).find(expr)
+                       } else {
+                               return this.constructor( context ).find( selector );
+                       }
+
+               // HANDLE: $(DOMElement)
+               } else if ( selector.nodeType ) {
+                       this.context = this[0] = selector;
+                       this.length = 1;
+                       return this;
+
+               // HANDLE: $(function)
+               // Shortcut for document ready
+               } else if ( jQuery.isFunction( selector ) ) {
+                       return typeof rootjQuery.ready !== "undefined" ?
+                               rootjQuery.ready( selector ) :
+                               // Execute immediately if ready is not present
+                               selector( jQuery );
+               }
+
+               if ( selector.selector !== undefined ) {
+                       this.selector = selector.selector;
+                       this.context = selector.context;
+               }
+
+               return jQuery.makeArray( selector, this );
+       };
+
+// Give the init function the jQuery prototype for later instantiation
+init.prototype = jQuery.fn;
+
+// Initialize central reference
+rootjQuery = jQuery( document );
+
+return init;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/parseHTML.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/parseHTML.js
new file mode 100644 (file)
index 0000000..64cf2a1
--- /dev/null
@@ -0,0 +1,39 @@
+define([
+       "../core",
+       "./var/rsingleTag",
+       "../manipulation" // buildFragment
+], function( jQuery, rsingleTag ) {
+
+// data: string of html
+// context (optional): If specified, the fragment will be created in this context, defaults to document
+// keepScripts (optional): If true, will include scripts passed in the html string
+jQuery.parseHTML = function( data, context, keepScripts ) {
+       if ( !data || typeof data !== "string" ) {
+               return null;
+       }
+       if ( typeof context === "boolean" ) {
+               keepScripts = context;
+               context = false;
+       }
+       context = context || document;
+
+       var parsed = rsingleTag.exec( data ),
+               scripts = !keepScripts && [];
+
+       // Single tag
+       if ( parsed ) {
+               return [ context.createElement( parsed[1] ) ];
+       }
+
+       parsed = jQuery.buildFragment( [ data ], context, scripts );
+
+       if ( scripts && scripts.length ) {
+               jQuery( scripts ).remove();
+       }
+
+       return jQuery.merge( [], parsed.childNodes );
+};
+
+return jQuery.parseHTML;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/ready.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/ready.js
new file mode 100644 (file)
index 0000000..db1a6e6
--- /dev/null
@@ -0,0 +1,97 @@
+define([
+       "../core",
+       "../core/init",
+       "../deferred"
+], function( jQuery ) {
+
+// The deferred used on DOM ready
+var readyList;
+
+jQuery.fn.ready = function( fn ) {
+       // Add the callback
+       jQuery.ready.promise().done( fn );
+
+       return this;
+};
+
+jQuery.extend({
+       // Is the DOM ready to be used? Set to true once it occurs.
+       isReady: false,
+
+       // A counter to track how many items to wait for before
+       // the ready event fires. See #6781
+       readyWait: 1,
+
+       // Hold (or release) the ready event
+       holdReady: function( hold ) {
+               if ( hold ) {
+                       jQuery.readyWait++;
+               } else {
+                       jQuery.ready( true );
+               }
+       },
+
+       // Handle when the DOM is ready
+       ready: function( wait ) {
+
+               // Abort if there are pending holds or we're already ready
+               if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
+                       return;
+               }
+
+               // Remember that the DOM is ready
+               jQuery.isReady = true;
+
+               // If a normal DOM Ready event fired, decrement, and wait if need be
+               if ( wait !== true && --jQuery.readyWait > 0 ) {
+                       return;
+               }
+
+               // If there are functions bound, to execute
+               readyList.resolveWith( document, [ jQuery ] );
+
+               // Trigger any bound ready events
+               if ( jQuery.fn.triggerHandler ) {
+                       jQuery( document ).triggerHandler( "ready" );
+                       jQuery( document ).off( "ready" );
+               }
+       }
+});
+
+/**
+ * The ready event handler and self cleanup method
+ */
+function completed() {
+       document.removeEventListener( "DOMContentLoaded", completed, false );
+       window.removeEventListener( "load", completed, false );
+       jQuery.ready();
+}
+
+jQuery.ready.promise = function( obj ) {
+       if ( !readyList ) {
+
+               readyList = jQuery.Deferred();
+
+               // Catch cases where $(document).ready() is called after the browser event has already occurred.
+               // We once tried to use readyState "interactive" here, but it caused issues like the one
+               // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15
+               if ( document.readyState === "complete" ) {
+                       // Handle it asynchronously to allow scripts the opportunity to delay ready
+                       setTimeout( jQuery.ready );
+
+               } else {
+
+                       // Use the handy event callback
+                       document.addEventListener( "DOMContentLoaded", completed, false );
+
+                       // A fallback to window.onload, that will always work
+                       window.addEventListener( "load", completed, false );
+               }
+       }
+       return readyList.promise( obj );
+};
+
+// Kick off the DOM ready check even if the user does not
+jQuery.ready.promise();
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/var/rsingleTag.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/core/var/rsingleTag.js
new file mode 100644 (file)
index 0000000..7e7090b
--- /dev/null
@@ -0,0 +1,4 @@
+define(function() {
+       // Match a standalone tag
+       return (/^<(\w+)\s*\/?>(?:<\/\1>|)$/);
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css.js
new file mode 100644 (file)
index 0000000..d481617
--- /dev/null
@@ -0,0 +1,450 @@
+define([
+       "./core",
+       "./var/pnum",
+       "./core/access",
+       "./css/var/rmargin",
+       "./css/var/rnumnonpx",
+       "./css/var/cssExpand",
+       "./css/var/isHidden",
+       "./css/var/getStyles",
+       "./css/curCSS",
+       "./css/defaultDisplay",
+       "./css/addGetHookIf",
+       "./css/support",
+       "./data/var/data_priv",
+
+       "./core/init",
+       "./css/swap",
+       "./core/ready",
+       "./selector" // contains
+], function( jQuery, pnum, access, rmargin, rnumnonpx, cssExpand, isHidden,
+       getStyles, curCSS, defaultDisplay, addGetHookIf, support, data_priv ) {
+
+var
+       // Swappable if display is none or starts with table except "table", "table-cell", or "table-caption"
+       // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
+       rdisplayswap = /^(none|table(?!-c[ea]).+)/,
+       rnumsplit = new RegExp( "^(" + pnum + ")(.*)$", "i" ),
+       rrelNum = new RegExp( "^([+-])=(" + pnum + ")", "i" ),
+
+       cssShow = { position: "absolute", visibility: "hidden", display: "block" },
+       cssNormalTransform = {
+               letterSpacing: "0",
+               fontWeight: "400"
+       },
+
+       cssPrefixes = [ "Webkit", "O", "Moz", "ms" ];
+
+// Return a css property mapped to a potentially vendor prefixed property
+function vendorPropName( style, name ) {
+
+       // Shortcut for names that are not vendor prefixed
+       if ( name in style ) {
+               return name;
+       }
+
+       // Check for vendor prefixed names
+       var capName = name[0].toUpperCase() + name.slice(1),
+               origName = name,
+               i = cssPrefixes.length;
+
+       while ( i-- ) {
+               name = cssPrefixes[ i ] + capName;
+               if ( name in style ) {
+                       return name;
+               }
+       }
+
+       return origName;
+}
+
+function setPositiveNumber( elem, value, subtract ) {
+       var matches = rnumsplit.exec( value );
+       return matches ?
+               // Guard against undefined "subtract", e.g., when used as in cssHooks
+               Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || "px" ) :
+               value;
+}
+
+function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
+       var i = extra === ( isBorderBox ? "border" : "content" ) ?
+               // If we already have the right measurement, avoid augmentation
+               4 :
+               // Otherwise initialize for horizontal or vertical properties
+               name === "width" ? 1 : 0,
+
+               val = 0;
+
+       for ( ; i < 4; i += 2 ) {
+               // Both box models exclude margin, so add it if we want it
+               if ( extra === "margin" ) {
+                       val += jQuery.css( elem, extra + cssExpand[ i ], true, styles );
+               }
+
+               if ( isBorderBox ) {
+                       // border-box includes padding, so remove it if we want content
+                       if ( extra === "content" ) {
+                               val -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
+                       }
+
+                       // At this point, extra isn't border nor margin, so remove border
+                       if ( extra !== "margin" ) {
+                               val -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
+                       }
+               } else {
+                       // At this point, extra isn't content, so add padding
+                       val += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
+
+                       // At this point, extra isn't content nor padding, so add border
+                       if ( extra !== "padding" ) {
+                               val += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
+                       }
+               }
+       }
+
+       return val;
+}
+
+function getWidthOrHeight( elem, name, extra ) {
+
+       // Start with offset property, which is equivalent to the border-box value
+       var valueIsBorderBox = true,
+               val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
+               styles = getStyles( elem ),
+               isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
+
+       // Some non-html elements return undefined for offsetWidth, so check for null/undefined
+       // svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
+       // MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668
+       if ( val <= 0 || val == null ) {
+               // Fall back to computed then uncomputed css if necessary
+               val = curCSS( elem, name, styles );
+               if ( val < 0 || val == null ) {
+                       val = elem.style[ name ];
+               }
+
+               // Computed unit is not pixels. Stop here and return.
+               if ( rnumnonpx.test(val) ) {
+                       return val;
+               }
+
+               // Check for style in case a browser which returns unreliable values
+               // for getComputedStyle silently falls back to the reliable elem.style
+               valueIsBorderBox = isBorderBox &&
+                       ( support.boxSizingReliable() || val === elem.style[ name ] );
+
+               // Normalize "", auto, and prepare for extra
+               val = parseFloat( val ) || 0;
+       }
+
+       // Use the active box-sizing model to add/subtract irrelevant styles
+       return ( val +
+               augmentWidthOrHeight(
+                       elem,
+                       name,
+                       extra || ( isBorderBox ? "border" : "content" ),
+                       valueIsBorderBox,
+                       styles
+               )
+       ) + "px";
+}
+
+function showHide( elements, show ) {
+       var display, elem, hidden,
+               values = [],
+               index = 0,
+               length = elements.length;
+
+       for ( ; index < length; index++ ) {
+               elem = elements[ index ];
+               if ( !elem.style ) {
+                       continue;
+               }
+
+               values[ index ] = data_priv.get( elem, "olddisplay" );
+               display = elem.style.display;
+               if ( show ) {
+                       // Reset the inline display of this element to learn if it is
+                       // being hidden by cascaded rules or not
+                       if ( !values[ index ] && display === "none" ) {
+                               elem.style.display = "";
+                       }
+
+                       // Set elements which have been overridden with display: none
+                       // in a stylesheet to whatever the default browser style is
+                       // for such an element
+                       if ( elem.style.display === "" && isHidden( elem ) ) {
+                               values[ index ] = data_priv.access( elem, "olddisplay", defaultDisplay(elem.nodeName) );
+                       }
+               } else {
+                       hidden = isHidden( elem );
+
+                       if ( display !== "none" || !hidden ) {
+                               data_priv.set( elem, "olddisplay", hidden ? display : jQuery.css( elem, "display" ) );
+                       }
+               }
+       }
+
+       // Set the display of most of the elements in a second loop
+       // to avoid the constant reflow
+       for ( index = 0; index < length; index++ ) {
+               elem = elements[ index ];
+               if ( !elem.style ) {
+                       continue;
+               }
+               if ( !show || elem.style.display === "none" || elem.style.display === "" ) {
+                       elem.style.display = show ? values[ index ] || "" : "none";
+               }
+       }
+
+       return elements;
+}
+
+jQuery.extend({
+
+       // Add in style property hooks for overriding the default
+       // behavior of getting and setting a style property
+       cssHooks: {
+               opacity: {
+                       get: function( elem, computed ) {
+                               if ( computed ) {
+
+                                       // We should always get a number back from opacity
+                                       var ret = curCSS( elem, "opacity" );
+                                       return ret === "" ? "1" : ret;
+                               }
+                       }
+               }
+       },
+
+       // Don't automatically add "px" to these possibly-unitless properties
+       cssNumber: {
+               "columnCount": true,
+               "fillOpacity": true,
+               "flexGrow": true,
+               "flexShrink": true,
+               "fontWeight": true,
+               "lineHeight": true,
+               "opacity": true,
+               "order": true,
+               "orphans": true,
+               "widows": true,
+               "zIndex": true,
+               "zoom": true
+       },
+
+       // Add in properties whose names you wish to fix before
+       // setting or getting the value
+       cssProps: {
+               "float": "cssFloat"
+       },
+
+       // Get and set the style property on a DOM Node
+       style: function( elem, name, value, extra ) {
+
+               // Don't set styles on text and comment nodes
+               if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
+                       return;
+               }
+
+               // Make sure that we're working with the right name
+               var ret, type, hooks,
+                       origName = jQuery.camelCase( name ),
+                       style = elem.style;
+
+               name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( style, origName ) );
+
+               // Gets hook for the prefixed version, then unprefixed version
+               hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+               // Check if we're setting a value
+               if ( value !== undefined ) {
+                       type = typeof value;
+
+                       // Convert "+=" or "-=" to relative numbers (#7345)
+                       if ( type === "string" && (ret = rrelNum.exec( value )) ) {
+                               value = ( ret[1] + 1 ) * ret[2] + parseFloat( jQuery.css( elem, name ) );
+                               // Fixes bug #9237
+                               type = "number";
+                       }
+
+                       // Make sure that null and NaN values aren't set (#7116)
+                       if ( value == null || value !== value ) {
+                               return;
+                       }
+
+                       // If a number, add 'px' to the (except for certain CSS properties)
+                       if ( type === "number" && !jQuery.cssNumber[ origName ] ) {
+                               value += "px";
+                       }
+
+                       // Support: IE9-11+
+                       // background-* props affect original clone's values
+                       if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) {
+                               style[ name ] = "inherit";
+                       }
+
+                       // If a hook was provided, use that value, otherwise just set the specified value
+                       if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value, extra )) !== undefined ) {
+                               style[ name ] = value;
+                       }
+
+               } else {
+                       // If a hook was provided get the non-computed value from there
+                       if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {
+                               return ret;
+                       }
+
+                       // Otherwise just get the value from the style object
+                       return style[ name ];
+               }
+       },
+
+       css: function( elem, name, extra, styles ) {
+               var val, num, hooks,
+                       origName = jQuery.camelCase( name );
+
+               // Make sure that we're working with the right name
+               name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( elem.style, origName ) );
+
+               // Try prefixed name followed by the unprefixed name
+               hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+               // If a hook was provided get the computed value from there
+               if ( hooks && "get" in hooks ) {
+                       val = hooks.get( elem, true, extra );
+               }
+
+               // Otherwise, if a way to get the computed value exists, use that
+               if ( val === undefined ) {
+                       val = curCSS( elem, name, styles );
+               }
+
+               // Convert "normal" to computed value
+               if ( val === "normal" && name in cssNormalTransform ) {
+                       val = cssNormalTransform[ name ];
+               }
+
+               // Make numeric if forced or a qualifier was provided and val looks numeric
+               if ( extra === "" || extra ) {
+                       num = parseFloat( val );
+                       return extra === true || jQuery.isNumeric( num ) ? num || 0 : val;
+               }
+               return val;
+       }
+});
+
+jQuery.each([ "height", "width" ], function( i, name ) {
+       jQuery.cssHooks[ name ] = {
+               get: function( elem, computed, extra ) {
+                       if ( computed ) {
+
+                               // Certain elements can have dimension info if we invisibly show them
+                               // but it must have a current display style that would benefit
+                               return rdisplayswap.test( jQuery.css( elem, "display" ) ) && elem.offsetWidth === 0 ?
+                                       jQuery.swap( elem, cssShow, function() {
+                                               return getWidthOrHeight( elem, name, extra );
+                                       }) :
+                                       getWidthOrHeight( elem, name, extra );
+                       }
+               },
+
+               set: function( elem, value, extra ) {
+                       var styles = extra && getStyles( elem );
+                       return setPositiveNumber( elem, value, extra ?
+                               augmentWidthOrHeight(
+                                       elem,
+                                       name,
+                                       extra,
+                                       jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
+                                       styles
+                               ) : 0
+                       );
+               }
+       };
+});
+
+// Support: Android 2.3
+jQuery.cssHooks.marginRight = addGetHookIf( support.reliableMarginRight,
+       function( elem, computed ) {
+               if ( computed ) {
+                       return jQuery.swap( elem, { "display": "inline-block" },
+                               curCSS, [ elem, "marginRight" ] );
+               }
+       }
+);
+
+// These hooks are used by animate to expand properties
+jQuery.each({
+       margin: "",
+       padding: "",
+       border: "Width"
+}, function( prefix, suffix ) {
+       jQuery.cssHooks[ prefix + suffix ] = {
+               expand: function( value ) {
+                       var i = 0,
+                               expanded = {},
+
+                               // Assumes a single number if not a string
+                               parts = typeof value === "string" ? value.split(" ") : [ value ];
+
+                       for ( ; i < 4; i++ ) {
+                               expanded[ prefix + cssExpand[ i ] + suffix ] =
+                                       parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
+                       }
+
+                       return expanded;
+               }
+       };
+
+       if ( !rmargin.test( prefix ) ) {
+               jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
+       }
+});
+
+jQuery.fn.extend({
+       css: function( name, value ) {
+               return access( this, function( elem, name, value ) {
+                       var styles, len,
+                               map = {},
+                               i = 0;
+
+                       if ( jQuery.isArray( name ) ) {
+                               styles = getStyles( elem );
+                               len = name.length;
+
+                               for ( ; i < len; i++ ) {
+                                       map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );
+                               }
+
+                               return map;
+                       }
+
+                       return value !== undefined ?
+                               jQuery.style( elem, name, value ) :
+                               jQuery.css( elem, name );
+               }, name, value, arguments.length > 1 );
+       },
+       show: function() {
+               return showHide( this, true );
+       },
+       hide: function() {
+               return showHide( this );
+       },
+       toggle: function( state ) {
+               if ( typeof state === "boolean" ) {
+                       return state ? this.show() : this.hide();
+               }
+
+               return this.each(function() {
+                       if ( isHidden( this ) ) {
+                               jQuery( this ).show();
+                       } else {
+                               jQuery( this ).hide();
+                       }
+               });
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/addGetHookIf.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/addGetHookIf.js
new file mode 100644 (file)
index 0000000..e12f359
--- /dev/null
@@ -0,0 +1,22 @@
+define(function() {
+
+function addGetHookIf( conditionFn, hookFn ) {
+       // Define the hook, we'll check on the first run if it's really needed.
+       return {
+               get: function() {
+                       if ( conditionFn() ) {
+                               // Hook not needed (or it's not possible to use it due
+                               // to missing dependency), remove it.
+                               delete this.get;
+                               return;
+                       }
+
+                       // Hook needed; redefine it so that the support test is not executed again.
+                       return (this.get = hookFn).apply( this, arguments );
+               }
+       };
+}
+
+return addGetHookIf;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/curCSS.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/curCSS.js
new file mode 100644 (file)
index 0000000..90e508c
--- /dev/null
@@ -0,0 +1,57 @@
+define([
+       "../core",
+       "./var/rnumnonpx",
+       "./var/rmargin",
+       "./var/getStyles",
+       "../selector" // contains
+], function( jQuery, rnumnonpx, rmargin, getStyles ) {
+
+function curCSS( elem, name, computed ) {
+       var width, minWidth, maxWidth, ret,
+               style = elem.style;
+
+       computed = computed || getStyles( elem );
+
+       // Support: IE9
+       // getPropertyValue is only needed for .css('filter') (#12537)
+       if ( computed ) {
+               ret = computed.getPropertyValue( name ) || computed[ name ];
+       }
+
+       if ( computed ) {
+
+               if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) {
+                       ret = jQuery.style( elem, name );
+               }
+
+               // Support: iOS < 6
+               // A tribute to the "awesome hack by Dean Edwards"
+               // iOS < 6 (at least) returns percentage for a larger set of values, but width seems to be reliably pixels
+               // this is against the CSSOM draft spec: http://dev.w3.org/csswg/cssom/#resolved-values
+               if ( rnumnonpx.test( ret ) && rmargin.test( name ) ) {
+
+                       // Remember the original values
+                       width = style.width;
+                       minWidth = style.minWidth;
+                       maxWidth = style.maxWidth;
+
+                       // Put in the new values to get a computed value out
+                       style.minWidth = style.maxWidth = style.width = ret;
+                       ret = computed.width;
+
+                       // Revert the changed values
+                       style.width = width;
+                       style.minWidth = minWidth;
+                       style.maxWidth = maxWidth;
+               }
+       }
+
+       return ret !== undefined ?
+               // Support: IE
+               // IE returns zIndex value as an integer.
+               ret + "" :
+               ret;
+}
+
+return curCSS;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/defaultDisplay.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/defaultDisplay.js
new file mode 100644 (file)
index 0000000..046ae91
--- /dev/null
@@ -0,0 +1,70 @@
+define([
+       "../core",
+       "../manipulation" // appendTo
+], function( jQuery ) {
+
+var iframe,
+       elemdisplay = {};
+
+/**
+ * Retrieve the actual display of a element
+ * @param {String} name nodeName of the element
+ * @param {Object} doc Document object
+ */
+// Called only from within defaultDisplay
+function actualDisplay( name, doc ) {
+       var style,
+               elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ),
+
+               // getDefaultComputedStyle might be reliably used only on attached element
+               display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ?
+
+                       // Use of this method is a temporary fix (more like optimization) until something better comes along,
+                       // since it was removed from specification and supported only in FF
+                       style.display : jQuery.css( elem[ 0 ], "display" );
+
+       // We don't have any data stored on the element,
+       // so use "detach" method as fast way to get rid of the element
+       elem.detach();
+
+       return display;
+}
+
+/**
+ * Try to determine the default display value of an element
+ * @param {String} nodeName
+ */
+function defaultDisplay( nodeName ) {
+       var doc = document,
+               display = elemdisplay[ nodeName ];
+
+       if ( !display ) {
+               display = actualDisplay( nodeName, doc );
+
+               // If the simple way fails, read from inside an iframe
+               if ( display === "none" || !display ) {
+
+                       // Use the already-created iframe if possible
+                       iframe = (iframe || jQuery( "<iframe frameborder='0' width='0' height='0'/>" )).appendTo( doc.documentElement );
+
+                       // Always write a new HTML skeleton so Webkit and Firefox don't choke on reuse
+                       doc = iframe[ 0 ].contentDocument;
+
+                       // Support: IE
+                       doc.write();
+                       doc.close();
+
+                       display = actualDisplay( nodeName, doc );
+                       iframe.detach();
+               }
+
+               // Store the correct default display
+               elemdisplay[ nodeName ] = display;
+       }
+
+       return display;
+}
+
+return defaultDisplay;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/hiddenVisibleSelectors.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/hiddenVisibleSelectors.js
new file mode 100644 (file)
index 0000000..c7f1c7e
--- /dev/null
@@ -0,0 +1,15 @@
+define([
+       "../core",
+       "../selector"
+], function( jQuery ) {
+
+jQuery.expr.filters.hidden = function( elem ) {
+       // Support: Opera <= 12.12
+       // Opera reports offsetWidths and offsetHeights less than zero on some elements
+       return elem.offsetWidth <= 0 && elem.offsetHeight <= 0;
+};
+jQuery.expr.filters.visible = function( elem ) {
+       return !jQuery.expr.filters.hidden( elem );
+};
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/support.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/support.js
new file mode 100644 (file)
index 0000000..b9eaf14
--- /dev/null
@@ -0,0 +1,96 @@
+define([
+       "../core",
+       "../var/support"
+], function( jQuery, support ) {
+
+(function() {
+       var pixelPositionVal, boxSizingReliableVal,
+               docElem = document.documentElement,
+               container = document.createElement( "div" ),
+               div = document.createElement( "div" );
+
+       if ( !div.style ) {
+               return;
+       }
+
+       // Support: IE9-11+
+       // Style of cloned element affects source element cloned (#8908)
+       div.style.backgroundClip = "content-box";
+       div.cloneNode( true ).style.backgroundClip = "";
+       support.clearCloneStyle = div.style.backgroundClip === "content-box";
+
+       container.style.cssText = "border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;" +
+               "position:absolute";
+       container.appendChild( div );
+
+       // Executing both pixelPosition & boxSizingReliable tests require only one layout
+       // so they're executed at the same time to save the second computation.
+       function computePixelPositionAndBoxSizingReliable() {
+               div.style.cssText =
+                       // Support: Firefox<29, Android 2.3
+                       // Vendor-prefix box-sizing
+                       "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;" +
+                       "box-sizing:border-box;display:block;margin-top:1%;top:1%;" +
+                       "border:1px;padding:1px;width:4px;position:absolute";
+               div.innerHTML = "";
+               docElem.appendChild( container );
+
+               var divStyle = window.getComputedStyle( div, null );
+               pixelPositionVal = divStyle.top !== "1%";
+               boxSizingReliableVal = divStyle.width === "4px";
+
+               docElem.removeChild( container );
+       }
+
+       // Support: node.js jsdom
+       // Don't assume that getComputedStyle is a property of the global object
+       if ( window.getComputedStyle ) {
+               jQuery.extend( support, {
+                       pixelPosition: function() {
+
+                               // This test is executed only once but we still do memoizing
+                               // since we can use the boxSizingReliable pre-computing.
+                               // No need to check if the test was already performed, though.
+                               computePixelPositionAndBoxSizingReliable();
+                               return pixelPositionVal;
+                       },
+                       boxSizingReliable: function() {
+                               if ( boxSizingReliableVal == null ) {
+                                       computePixelPositionAndBoxSizingReliable();
+                               }
+                               return boxSizingReliableVal;
+                       },
+                       reliableMarginRight: function() {
+
+                               // Support: Android 2.3
+                               // Check if div with explicit width and no margin-right incorrectly
+                               // gets computed margin-right based on width of container. (#3333)
+                               // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
+                               // This support function is only executed once so no memoizing is needed.
+                               var ret,
+                                       marginDiv = div.appendChild( document.createElement( "div" ) );
+
+                               // Reset CSS: box-sizing; display; margin; border; padding
+                               marginDiv.style.cssText = div.style.cssText =
+                                       // Support: Firefox<29, Android 2.3
+                                       // Vendor-prefix box-sizing
+                                       "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" +
+                                       "box-sizing:content-box;display:block;margin:0;border:0;padding:0";
+                               marginDiv.style.marginRight = marginDiv.style.width = "0";
+                               div.style.width = "1px";
+                               docElem.appendChild( container );
+
+                               ret = !parseFloat( window.getComputedStyle( marginDiv, null ).marginRight );
+
+                               docElem.removeChild( container );
+                               div.removeChild( marginDiv );
+
+                               return ret;
+                       }
+               });
+       }
+})();
+
+return support;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/swap.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/swap.js
new file mode 100644 (file)
index 0000000..ce16435
--- /dev/null
@@ -0,0 +1,28 @@
+define([
+       "../core"
+], function( jQuery ) {
+
+// A method for quickly swapping in/out CSS properties to get correct calculations.
+jQuery.swap = function( elem, options, callback, args ) {
+       var ret, name,
+               old = {};
+
+       // Remember the old values, and insert the new ones
+       for ( name in options ) {
+               old[ name ] = elem.style[ name ];
+               elem.style[ name ] = options[ name ];
+       }
+
+       ret = callback.apply( elem, args || [] );
+
+       // Revert the old values
+       for ( name in options ) {
+               elem.style[ name ] = old[ name ];
+       }
+
+       return ret;
+};
+
+return jQuery.swap;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/cssExpand.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/cssExpand.js
new file mode 100644 (file)
index 0000000..91e90a8
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return [ "Top", "Right", "Bottom", "Left" ];
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/getStyles.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/getStyles.js
new file mode 100644 (file)
index 0000000..413acd0
--- /dev/null
@@ -0,0 +1,12 @@
+define(function() {
+       return function( elem ) {
+               // Support: IE<=11+, Firefox<=30+ (#15098, #14150)
+               // IE throws on elements created in popups
+               // FF meanwhile throws on frame elements through "defaultView.getComputedStyle"
+               if ( elem.ownerDocument.defaultView.opener ) {
+                       return elem.ownerDocument.defaultView.getComputedStyle( elem, null );
+               }
+
+               return window.getComputedStyle( elem, null );
+       };
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/isHidden.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/isHidden.js
new file mode 100644 (file)
index 0000000..15ab81a
--- /dev/null
@@ -0,0 +1,13 @@
+define([
+       "../../core",
+       "../../selector"
+       // css is assumed
+], function( jQuery ) {
+
+       return function( elem, el ) {
+               // isHidden might be called from jQuery#filter function;
+               // in that case, element will be second argument
+               elem = el || elem;
+               return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem );
+       };
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/rmargin.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/rmargin.js
new file mode 100644 (file)
index 0000000..da0438d
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return (/^margin/);
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/rnumnonpx.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/css/var/rnumnonpx.js
new file mode 100644 (file)
index 0000000..c93be28
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "../../var/pnum"
+], function( pnum ) {
+       return new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" );
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data.js
new file mode 100644 (file)
index 0000000..f9af9ae
--- /dev/null
@@ -0,0 +1,178 @@
+define([
+       "./core",
+       "./var/rnotwhite",
+       "./core/access",
+       "./data/var/data_priv",
+       "./data/var/data_user"
+], function( jQuery, rnotwhite, access, data_priv, data_user ) {
+
+//     Implementation Summary
+//
+//     1. Enforce API surface and semantic compatibility with 1.9.x branch
+//     2. Improve the module's maintainability by reducing the storage
+//             paths to a single mechanism.
+//     3. Use the same single mechanism to support "private" and "user" data.
+//     4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData)
+//     5. Avoid exposing implementation details on user objects (eg. expando properties)
+//     6. Provide a clear path for implementation upgrade to WeakMap in 2014
+
+var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
+       rmultiDash = /([A-Z])/g;
+
+function dataAttr( elem, key, data ) {
+       var name;
+
+       // If nothing was found internally, try to fetch any
+       // data from the HTML5 data-* attribute
+       if ( data === undefined && elem.nodeType === 1 ) {
+               name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();
+               data = elem.getAttribute( name );
+
+               if ( typeof data === "string" ) {
+                       try {
+                               data = data === "true" ? true :
+                                       data === "false" ? false :
+                                       data === "null" ? null :
+                                       // Only convert to a number if it doesn't change the string
+                                       +data + "" === data ? +data :
+                                       rbrace.test( data ) ? jQuery.parseJSON( data ) :
+                                       data;
+                       } catch( e ) {}
+
+                       // Make sure we set the data so it isn't changed later
+                       data_user.set( elem, key, data );
+               } else {
+                       data = undefined;
+               }
+       }
+       return data;
+}
+
+jQuery.extend({
+       hasData: function( elem ) {
+               return data_user.hasData( elem ) || data_priv.hasData( elem );
+       },
+
+       data: function( elem, name, data ) {
+               return data_user.access( elem, name, data );
+       },
+
+       removeData: function( elem, name ) {
+               data_user.remove( elem, name );
+       },
+
+       // TODO: Now that all calls to _data and _removeData have been replaced
+       // with direct calls to data_priv methods, these can be deprecated.
+       _data: function( elem, name, data ) {
+               return data_priv.access( elem, name, data );
+       },
+
+       _removeData: function( elem, name ) {
+               data_priv.remove( elem, name );
+       }
+});
+
+jQuery.fn.extend({
+       data: function( key, value ) {
+               var i, name, data,
+                       elem = this[ 0 ],
+                       attrs = elem && elem.attributes;
+
+               // Gets all values
+               if ( key === undefined ) {
+                       if ( this.length ) {
+                               data = data_user.get( elem );
+
+                               if ( elem.nodeType === 1 && !data_priv.get( elem, "hasDataAttrs" ) ) {
+                                       i = attrs.length;
+                                       while ( i-- ) {
+
+                                               // Support: IE11+
+                                               // The attrs elements can be null (#14894)
+                                               if ( attrs[ i ] ) {
+                                                       name = attrs[ i ].name;
+                                                       if ( name.indexOf( "data-" ) === 0 ) {
+                                                               name = jQuery.camelCase( name.slice(5) );
+                                                               dataAttr( elem, name, data[ name ] );
+                                                       }
+                                               }
+                                       }
+                                       data_priv.set( elem, "hasDataAttrs", true );
+                               }
+                       }
+
+                       return data;
+               }
+
+               // Sets multiple values
+               if ( typeof key === "object" ) {
+                       return this.each(function() {
+                               data_user.set( this, key );
+                       });
+               }
+
+               return access( this, function( value ) {
+                       var data,
+                               camelKey = jQuery.camelCase( key );
+
+                       // The calling jQuery object (element matches) is not empty
+                       // (and therefore has an element appears at this[ 0 ]) and the
+                       // `value` parameter was not undefined. An empty jQuery object
+                       // will result in `undefined` for elem = this[ 0 ] which will
+                       // throw an exception if an attempt to read a data cache is made.
+                       if ( elem && value === undefined ) {
+                               // Attempt to get data from the cache
+                               // with the key as-is
+                               data = data_user.get( elem, key );
+                               if ( data !== undefined ) {
+                                       return data;
+                               }
+
+                               // Attempt to get data from the cache
+                               // with the key camelized
+                               data = data_user.get( elem, camelKey );
+                               if ( data !== undefined ) {
+                                       return data;
+                               }
+
+                               // Attempt to "discover" the data in
+                               // HTML5 custom data-* attrs
+                               data = dataAttr( elem, camelKey, undefined );
+                               if ( data !== undefined ) {
+                                       return data;
+                               }
+
+                               // We tried really hard, but the data doesn't exist.
+                               return;
+                       }
+
+                       // Set the data...
+                       this.each(function() {
+                               // First, attempt to store a copy or reference of any
+                               // data that might've been store with a camelCased key.
+                               var data = data_user.get( this, camelKey );
+
+                               // For HTML5 data-* attribute interop, we have to
+                               // store property names with dashes in a camelCase form.
+                               // This might not apply to all properties...*
+                               data_user.set( this, camelKey, value );
+
+                               // *... In the case of properties that might _actually_
+                               // have dashes, we need to also store a copy of that
+                               // unchanged property.
+                               if ( key.indexOf("-") !== -1 && data !== undefined ) {
+                                       data_user.set( this, key, value );
+                               }
+                       });
+               }, null, value, arguments.length > 1, null, true );
+       },
+
+       removeData: function( key ) {
+               return this.each(function() {
+                       data_user.remove( this, key );
+               });
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/Data.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/Data.js
new file mode 100644 (file)
index 0000000..85afd64
--- /dev/null
@@ -0,0 +1,181 @@
+define([
+       "../core",
+       "../var/rnotwhite",
+       "./accepts"
+], function( jQuery, rnotwhite ) {
+
+function Data() {
+       // Support: Android<4,
+       // Old WebKit does not have Object.preventExtensions/freeze method,
+       // return new empty object instead with no [[set]] accessor
+       Object.defineProperty( this.cache = {}, 0, {
+               get: function() {
+                       return {};
+               }
+       });
+
+       this.expando = jQuery.expando + Data.uid++;
+}
+
+Data.uid = 1;
+Data.accepts = jQuery.acceptData;
+
+Data.prototype = {
+       key: function( owner ) {
+               // We can accept data for non-element nodes in modern browsers,
+               // but we should not, see #8335.
+               // Always return the key for a frozen object.
+               if ( !Data.accepts( owner ) ) {
+                       return 0;
+               }
+
+               var descriptor = {},
+                       // Check if the owner object already has a cache key
+                       unlock = owner[ this.expando ];
+
+               // If not, create one
+               if ( !unlock ) {
+                       unlock = Data.uid++;
+
+                       // Secure it in a non-enumerable, non-writable property
+                       try {
+                               descriptor[ this.expando ] = { value: unlock };
+                               Object.defineProperties( owner, descriptor );
+
+                       // Support: Android<4
+                       // Fallback to a less secure definition
+                       } catch ( e ) {
+                               descriptor[ this.expando ] = unlock;
+                               jQuery.extend( owner, descriptor );
+                       }
+               }
+
+               // Ensure the cache object
+               if ( !this.cache[ unlock ] ) {
+                       this.cache[ unlock ] = {};
+               }
+
+               return unlock;
+       },
+       set: function( owner, data, value ) {
+               var prop,
+                       // There may be an unlock assigned to this node,
+                       // if there is no entry for this "owner", create one inline
+                       // and set the unlock as though an owner entry had always existed
+                       unlock = this.key( owner ),
+                       cache = this.cache[ unlock ];
+
+               // Handle: [ owner, key, value ] args
+               if ( typeof data === "string" ) {
+                       cache[ data ] = value;
+
+               // Handle: [ owner, { properties } ] args
+               } else {
+                       // Fresh assignments by object are shallow copied
+                       if ( jQuery.isEmptyObject( cache ) ) {
+                               jQuery.extend( this.cache[ unlock ], data );
+                       // Otherwise, copy the properties one-by-one to the cache object
+                       } else {
+                               for ( prop in data ) {
+                                       cache[ prop ] = data[ prop ];
+                               }
+                       }
+               }
+               return cache;
+       },
+       get: function( owner, key ) {
+               // Either a valid cache is found, or will be created.
+               // New caches will be created and the unlock returned,
+               // allowing direct access to the newly created
+               // empty data object. A valid owner object must be provided.
+               var cache = this.cache[ this.key( owner ) ];
+
+               return key === undefined ?
+                       cache : cache[ key ];
+       },
+       access: function( owner, key, value ) {
+               var stored;
+               // In cases where either:
+               //
+               //   1. No key was specified
+               //   2. A string key was specified, but no value provided
+               //
+               // Take the "read" path and allow the get method to determine
+               // which value to return, respectively either:
+               //
+               //   1. The entire cache object
+               //   2. The data stored at the key
+               //
+               if ( key === undefined ||
+                               ((key && typeof key === "string") && value === undefined) ) {
+
+                       stored = this.get( owner, key );
+
+                       return stored !== undefined ?
+                               stored : this.get( owner, jQuery.camelCase(key) );
+               }
+
+               // [*]When the key is not a string, or both a key and value
+               // are specified, set or extend (existing objects) with either:
+               //
+               //   1. An object of properties
+               //   2. A key and value
+               //
+               this.set( owner, key, value );
+
+               // Since the "set" path can have two possible entry points
+               // return the expected data based on which path was taken[*]
+               return value !== undefined ? value : key;
+       },
+       remove: function( owner, key ) {
+               var i, name, camel,
+                       unlock = this.key( owner ),
+                       cache = this.cache[ unlock ];
+
+               if ( key === undefined ) {
+                       this.cache[ unlock ] = {};
+
+               } else {
+                       // Support array or space separated string of keys
+                       if ( jQuery.isArray( key ) ) {
+                               // If "name" is an array of keys...
+                               // When data is initially created, via ("key", "val") signature,
+                               // keys will be converted to camelCase.
+                               // Since there is no way to tell _how_ a key was added, remove
+                               // both plain key and camelCase key. #12786
+                               // This will only penalize the array argument path.
+                               name = key.concat( key.map( jQuery.camelCase ) );
+                       } else {
+                               camel = jQuery.camelCase( key );
+                               // Try the string as a key before any manipulation
+                               if ( key in cache ) {
+                                       name = [ key, camel ];
+                               } else {
+                                       // If a key with the spaces exists, use it.
+                                       // Otherwise, create an array by matching non-whitespace
+                                       name = camel;
+                                       name = name in cache ?
+                                               [ name ] : ( name.match( rnotwhite ) || [] );
+                               }
+                       }
+
+                       i = name.length;
+                       while ( i-- ) {
+                               delete cache[ name[ i ] ];
+                       }
+               }
+       },
+       hasData: function( owner ) {
+               return !jQuery.isEmptyObject(
+                       this.cache[ owner[ this.expando ] ] || {}
+               );
+       },
+       discard: function( owner ) {
+               if ( owner[ this.expando ] ) {
+                       delete this.cache[ owner[ this.expando ] ];
+               }
+       }
+};
+
+return Data;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/accepts.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/accepts.js
new file mode 100644 (file)
index 0000000..291c7b4
--- /dev/null
@@ -0,0 +1,20 @@
+define([
+       "../core"
+], function( jQuery ) {
+
+/**
+ * Determines whether an object can have data
+ */
+jQuery.acceptData = function( owner ) {
+       // Accepts only:
+       //  - Node
+       //    - Node.ELEMENT_NODE
+       //    - Node.DOCUMENT_NODE
+       //  - Object
+       //    - Any
+       /* jshint -W018 */
+       return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
+};
+
+return jQuery.acceptData;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/var/data_priv.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/var/data_priv.js
new file mode 100644 (file)
index 0000000..24399e4
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "../Data"
+], function( Data ) {
+       return new Data();
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/var/data_user.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/data/var/data_user.js
new file mode 100644 (file)
index 0000000..24399e4
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "../Data"
+], function( Data ) {
+       return new Data();
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/deferred.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/deferred.js
new file mode 100644 (file)
index 0000000..98f9c31
--- /dev/null
@@ -0,0 +1,149 @@
+define([
+       "./core",
+       "./var/slice",
+       "./callbacks"
+], function( jQuery, slice ) {
+
+jQuery.extend({
+
+       Deferred: function( func ) {
+               var tuples = [
+                               // action, add listener, listener list, final state
+                               [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ],
+                               [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ],
+                               [ "notify", "progress", jQuery.Callbacks("memory") ]
+                       ],
+                       state = "pending",
+                       promise = {
+                               state: function() {
+                                       return state;
+                               },
+                               always: function() {
+                                       deferred.done( arguments ).fail( arguments );
+                                       return this;
+                               },
+                               then: function( /* fnDone, fnFail, fnProgress */ ) {
+                                       var fns = arguments;
+                                       return jQuery.Deferred(function( newDefer ) {
+                                               jQuery.each( tuples, function( i, tuple ) {
+                                                       var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];
+                                                       // deferred[ done | fail | progress ] for forwarding actions to newDefer
+                                                       deferred[ tuple[1] ](function() {
+                                                               var returned = fn && fn.apply( this, arguments );
+                                                               if ( returned && jQuery.isFunction( returned.promise ) ) {
+                                                                       returned.promise()
+                                                                               .done( newDefer.resolve )
+                                                                               .fail( newDefer.reject )
+                                                                               .progress( newDefer.notify );
+                                                               } else {
+                                                                       newDefer[ tuple[ 0 ] + "With" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments );
+                                                               }
+                                                       });
+                                               });
+                                               fns = null;
+                                       }).promise();
+                               },
+                               // Get a promise for this deferred
+                               // If obj is provided, the promise aspect is added to the object
+                               promise: function( obj ) {
+                                       return obj != null ? jQuery.extend( obj, promise ) : promise;
+                               }
+                       },
+                       deferred = {};
+
+               // Keep pipe for back-compat
+               promise.pipe = promise.then;
+
+               // Add list-specific methods
+               jQuery.each( tuples, function( i, tuple ) {
+                       var list = tuple[ 2 ],
+                               stateString = tuple[ 3 ];
+
+                       // promise[ done | fail | progress ] = list.add
+                       promise[ tuple[1] ] = list.add;
+
+                       // Handle state
+                       if ( stateString ) {
+                               list.add(function() {
+                                       // state = [ resolved | rejected ]
+                                       state = stateString;
+
+                               // [ reject_list | resolve_list ].disable; progress_list.lock
+                               }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );
+                       }
+
+                       // deferred[ resolve | reject | notify ]
+                       deferred[ tuple[0] ] = function() {
+                               deferred[ tuple[0] + "With" ]( this === deferred ? promise : this, arguments );
+                               return this;
+                       };
+                       deferred[ tuple[0] + "With" ] = list.fireWith;
+               });
+
+               // Make the deferred a promise
+               promise.promise( deferred );
+
+               // Call given func if any
+               if ( func ) {
+                       func.call( deferred, deferred );
+               }
+
+               // All done!
+               return deferred;
+       },
+
+       // Deferred helper
+       when: function( subordinate /* , ..., subordinateN */ ) {
+               var i = 0,
+                       resolveValues = slice.call( arguments ),
+                       length = resolveValues.length,
+
+                       // the count of uncompleted subordinates
+                       remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0,
+
+                       // the master Deferred. If resolveValues consist of only a single Deferred, just use that.
+                       deferred = remaining === 1 ? subordinate : jQuery.Deferred(),
+
+                       // Update function for both resolve and progress values
+                       updateFunc = function( i, contexts, values ) {
+                               return function( value ) {
+                                       contexts[ i ] = this;
+                                       values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
+                                       if ( values === progressValues ) {
+                                               deferred.notifyWith( contexts, values );
+                                       } else if ( !( --remaining ) ) {
+                                               deferred.resolveWith( contexts, values );
+                                       }
+                               };
+                       },
+
+                       progressValues, progressContexts, resolveContexts;
+
+               // Add listeners to Deferred subordinates; treat others as resolved
+               if ( length > 1 ) {
+                       progressValues = new Array( length );
+                       progressContexts = new Array( length );
+                       resolveContexts = new Array( length );
+                       for ( ; i < length; i++ ) {
+                               if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {
+                                       resolveValues[ i ].promise()
+                                               .done( updateFunc( i, resolveContexts, resolveValues ) )
+                                               .fail( deferred.reject )
+                                               .progress( updateFunc( i, progressContexts, progressValues ) );
+                               } else {
+                                       --remaining;
+                               }
+                       }
+               }
+
+               // If we're not waiting on anything, resolve the master
+               if ( !remaining ) {
+                       deferred.resolveWith( resolveContexts, resolveValues );
+               }
+
+               return deferred.promise();
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/deprecated.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/deprecated.js
new file mode 100644 (file)
index 0000000..1b068bc
--- /dev/null
@@ -0,0 +1,13 @@
+define([
+       "./core",
+       "./traversing"
+], function( jQuery ) {
+
+// The number of elements contained in the matched element set
+jQuery.fn.size = function() {
+       return this.length;
+};
+
+jQuery.fn.andSelf = jQuery.fn.addBack;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/dimensions.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/dimensions.js
new file mode 100644 (file)
index 0000000..e6cb04c
--- /dev/null
@@ -0,0 +1,50 @@
+define([
+       "./core",
+       "./core/access",
+       "./css"
+], function( jQuery, access ) {
+
+// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
+jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
+       jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, function( defaultExtra, funcName ) {
+               // Margin is only for outerHeight, outerWidth
+               jQuery.fn[ funcName ] = function( margin, value ) {
+                       var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
+                               extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );
+
+                       return access( this, function( elem, type, value ) {
+                               var doc;
+
+                               if ( jQuery.isWindow( elem ) ) {
+                                       // As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there
+                                       // isn't a whole lot we can do. See pull request at this URL for discussion:
+                                       // https://github.com/jquery/jquery/pull/764
+                                       return elem.document.documentElement[ "client" + name ];
+                               }
+
+                               // Get document width or height
+                               if ( elem.nodeType === 9 ) {
+                                       doc = elem.documentElement;
+
+                                       // Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],
+                                       // whichever is greatest
+                                       return Math.max(
+                                               elem.body[ "scroll" + name ], doc[ "scroll" + name ],
+                                               elem.body[ "offset" + name ], doc[ "offset" + name ],
+                                               doc[ "client" + name ]
+                                       );
+                               }
+
+                               return value === undefined ?
+                                       // Get width or height on the element, requesting but not forcing parseFloat
+                                       jQuery.css( elem, type, extra ) :
+
+                                       // Set width or height on the element
+                                       jQuery.style( elem, type, value, extra );
+                       }, type, chainable ? margin : undefined, chainable, null );
+               };
+       });
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects.js
new file mode 100644 (file)
index 0000000..90226bd
--- /dev/null
@@ -0,0 +1,648 @@
+define([
+       "./core",
+       "./var/pnum",
+       "./css/var/cssExpand",
+       "./css/var/isHidden",
+       "./css/defaultDisplay",
+       "./data/var/data_priv",
+
+       "./core/init",
+       "./effects/Tween",
+       "./queue",
+       "./css",
+       "./deferred",
+       "./traversing"
+], function( jQuery, pnum, cssExpand, isHidden, defaultDisplay, data_priv ) {
+
+var
+       fxNow, timerId,
+       rfxtypes = /^(?:toggle|show|hide)$/,
+       rfxnum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ),
+       rrun = /queueHooks$/,
+       animationPrefilters = [ defaultPrefilter ],
+       tweeners = {
+               "*": [ function( prop, value ) {
+                       var tween = this.createTween( prop, value ),
+                               target = tween.cur(),
+                               parts = rfxnum.exec( value ),
+                               unit = parts && parts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
+
+                               // Starting value computation is required for potential unit mismatches
+                               start = ( jQuery.cssNumber[ prop ] || unit !== "px" && +target ) &&
+                                       rfxnum.exec( jQuery.css( tween.elem, prop ) ),
+                               scale = 1,
+                               maxIterations = 20;
+
+                       if ( start && start[ 3 ] !== unit ) {
+                               // Trust units reported by jQuery.css
+                               unit = unit || start[ 3 ];
+
+                               // Make sure we update the tween properties later on
+                               parts = parts || [];
+
+                               // Iteratively approximate from a nonzero starting point
+                               start = +target || 1;
+
+                               do {
+                                       // If previous iteration zeroed out, double until we get *something*.
+                                       // Use string for doubling so we don't accidentally see scale as unchanged below
+                                       scale = scale || ".5";
+
+                                       // Adjust and apply
+                                       start = start / scale;
+                                       jQuery.style( tween.elem, prop, start + unit );
+
+                               // Update scale, tolerating zero or NaN from tween.cur(),
+                               // break the loop if scale is unchanged or perfect, or if we've just had enough
+                               } while ( scale !== (scale = tween.cur() / target) && scale !== 1 && --maxIterations );
+                       }
+
+                       // Update tween properties
+                       if ( parts ) {
+                               start = tween.start = +start || +target || 0;
+                               tween.unit = unit;
+                               // If a +=/-= token was provided, we're doing a relative animation
+                               tween.end = parts[ 1 ] ?
+                                       start + ( parts[ 1 ] + 1 ) * parts[ 2 ] :
+                                       +parts[ 2 ];
+                       }
+
+                       return tween;
+               } ]
+       };
+
+// Animations created synchronously will run synchronously
+function createFxNow() {
+       setTimeout(function() {
+               fxNow = undefined;
+       });
+       return ( fxNow = jQuery.now() );
+}
+
+// Generate parameters to create a standard animation
+function genFx( type, includeWidth ) {
+       var which,
+               i = 0,
+               attrs = { height: type };
+
+       // If we include width, step value is 1 to do all cssExpand values,
+       // otherwise step value is 2 to skip over Left and Right
+       includeWidth = includeWidth ? 1 : 0;
+       for ( ; i < 4 ; i += 2 - includeWidth ) {
+               which = cssExpand[ i ];
+               attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
+       }
+
+       if ( includeWidth ) {
+               attrs.opacity = attrs.width = type;
+       }
+
+       return attrs;
+}
+
+function createTween( value, prop, animation ) {
+       var tween,
+               collection = ( tweeners[ prop ] || [] ).concat( tweeners[ "*" ] ),
+               index = 0,
+               length = collection.length;
+       for ( ; index < length; index++ ) {
+               if ( (tween = collection[ index ].call( animation, prop, value )) ) {
+
+                       // We're done with this property
+                       return tween;
+               }
+       }
+}
+
+function defaultPrefilter( elem, props, opts ) {
+       /* jshint validthis: true */
+       var prop, value, toggle, tween, hooks, oldfire, display, checkDisplay,
+               anim = this,
+               orig = {},
+               style = elem.style,
+               hidden = elem.nodeType && isHidden( elem ),
+               dataShow = data_priv.get( elem, "fxshow" );
+
+       // Handle queue: false promises
+       if ( !opts.queue ) {
+               hooks = jQuery._queueHooks( elem, "fx" );
+               if ( hooks.unqueued == null ) {
+                       hooks.unqueued = 0;
+                       oldfire = hooks.empty.fire;
+                       hooks.empty.fire = function() {
+                               if ( !hooks.unqueued ) {
+                                       oldfire();
+                               }
+                       };
+               }
+               hooks.unqueued++;
+
+               anim.always(function() {
+                       // Ensure the complete handler is called before this completes
+                       anim.always(function() {
+                               hooks.unqueued--;
+                               if ( !jQuery.queue( elem, "fx" ).length ) {
+                                       hooks.empty.fire();
+                               }
+                       });
+               });
+       }
+
+       // Height/width overflow pass
+       if ( elem.nodeType === 1 && ( "height" in props || "width" in props ) ) {
+               // Make sure that nothing sneaks out
+               // Record all 3 overflow attributes because IE9-10 do not
+               // change the overflow attribute when overflowX and
+               // overflowY are set to the same value
+               opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];
+
+               // Set display property to inline-block for height/width
+               // animations on inline elements that are having width/height animated
+               display = jQuery.css( elem, "display" );
+
+               // Test default display if display is currently "none"
+               checkDisplay = display === "none" ?
+                       data_priv.get( elem, "olddisplay" ) || defaultDisplay( elem.nodeName ) : display;
+
+               if ( checkDisplay === "inline" && jQuery.css( elem, "float" ) === "none" ) {
+                       style.display = "inline-block";
+               }
+       }
+
+       if ( opts.overflow ) {
+               style.overflow = "hidden";
+               anim.always(function() {
+                       style.overflow = opts.overflow[ 0 ];
+                       style.overflowX = opts.overflow[ 1 ];
+                       style.overflowY = opts.overflow[ 2 ];
+               });
+       }
+
+       // show/hide pass
+       for ( prop in props ) {
+               value = props[ prop ];
+               if ( rfxtypes.exec( value ) ) {
+                       delete props[ prop ];
+                       toggle = toggle || value === "toggle";
+                       if ( value === ( hidden ? "hide" : "show" ) ) {
+
+                               // If there is dataShow left over from a stopped hide or show and we are going to proceed with show, we should pretend to be hidden
+                               if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) {
+                                       hidden = true;
+                               } else {
+                                       continue;
+                               }
+                       }
+                       orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
+
+               // Any non-fx value stops us from restoring the original display value
+               } else {
+                       display = undefined;
+               }
+       }
+
+       if ( !jQuery.isEmptyObject( orig ) ) {
+               if ( dataShow ) {
+                       if ( "hidden" in dataShow ) {
+                               hidden = dataShow.hidden;
+                       }
+               } else {
+                       dataShow = data_priv.access( elem, "fxshow", {} );
+               }
+
+               // Store state if its toggle - enables .stop().toggle() to "reverse"
+               if ( toggle ) {
+                       dataShow.hidden = !hidden;
+               }
+               if ( hidden ) {
+                       jQuery( elem ).show();
+               } else {
+                       anim.done(function() {
+                               jQuery( elem ).hide();
+                       });
+               }
+               anim.done(function() {
+                       var prop;
+
+                       data_priv.remove( elem, "fxshow" );
+                       for ( prop in orig ) {
+                               jQuery.style( elem, prop, orig[ prop ] );
+                       }
+               });
+               for ( prop in orig ) {
+                       tween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );
+
+                       if ( !( prop in dataShow ) ) {
+                               dataShow[ prop ] = tween.start;
+                               if ( hidden ) {
+                                       tween.end = tween.start;
+                                       tween.start = prop === "width" || prop === "height" ? 1 : 0;
+                               }
+                       }
+               }
+
+       // If this is a noop like .hide().hide(), restore an overwritten display value
+       } else if ( (display === "none" ? defaultDisplay( elem.nodeName ) : display) === "inline" ) {
+               style.display = display;
+       }
+}
+
+function propFilter( props, specialEasing ) {
+       var index, name, easing, value, hooks;
+
+       // camelCase, specialEasing and expand cssHook pass
+       for ( index in props ) {
+               name = jQuery.camelCase( index );
+               easing = specialEasing[ name ];
+               value = props[ index ];
+               if ( jQuery.isArray( value ) ) {
+                       easing = value[ 1 ];
+                       value = props[ index ] = value[ 0 ];
+               }
+
+               if ( index !== name ) {
+                       props[ name ] = value;
+                       delete props[ index ];
+               }
+
+               hooks = jQuery.cssHooks[ name ];
+               if ( hooks && "expand" in hooks ) {
+                       value = hooks.expand( value );
+                       delete props[ name ];
+
+                       // Not quite $.extend, this won't overwrite existing keys.
+                       // Reusing 'index' because we have the correct "name"
+                       for ( index in value ) {
+                               if ( !( index in props ) ) {
+                                       props[ index ] = value[ index ];
+                                       specialEasing[ index ] = easing;
+                               }
+                       }
+               } else {
+                       specialEasing[ name ] = easing;
+               }
+       }
+}
+
+function Animation( elem, properties, options ) {
+       var result,
+               stopped,
+               index = 0,
+               length = animationPrefilters.length,
+               deferred = jQuery.Deferred().always( function() {
+                       // Don't match elem in the :animated selector
+                       delete tick.elem;
+               }),
+               tick = function() {
+                       if ( stopped ) {
+                               return false;
+                       }
+                       var currentTime = fxNow || createFxNow(),
+                               remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),
+                               // Support: Android 2.3
+                               // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)
+                               temp = remaining / animation.duration || 0,
+                               percent = 1 - temp,
+                               index = 0,
+                               length = animation.tweens.length;
+
+                       for ( ; index < length ; index++ ) {
+                               animation.tweens[ index ].run( percent );
+                       }
+
+                       deferred.notifyWith( elem, [ animation, percent, remaining ]);
+
+                       if ( percent < 1 && length ) {
+                               return remaining;
+                       } else {
+                               deferred.resolveWith( elem, [ animation ] );
+                               return false;
+                       }
+               },
+               animation = deferred.promise({
+                       elem: elem,
+                       props: jQuery.extend( {}, properties ),
+                       opts: jQuery.extend( true, { specialEasing: {} }, options ),
+                       originalProperties: properties,
+                       originalOptions: options,
+                       startTime: fxNow || createFxNow(),
+                       duration: options.duration,
+                       tweens: [],
+                       createTween: function( prop, end ) {
+                               var tween = jQuery.Tween( elem, animation.opts, prop, end,
+                                               animation.opts.specialEasing[ prop ] || animation.opts.easing );
+                               animation.tweens.push( tween );
+                               return tween;
+                       },
+                       stop: function( gotoEnd ) {
+                               var index = 0,
+                                       // If we are going to the end, we want to run all the tweens
+                                       // otherwise we skip this part
+                                       length = gotoEnd ? animation.tweens.length : 0;
+                               if ( stopped ) {
+                                       return this;
+                               }
+                               stopped = true;
+                               for ( ; index < length ; index++ ) {
+                                       animation.tweens[ index ].run( 1 );
+                               }
+
+                               // Resolve when we played the last frame; otherwise, reject
+                               if ( gotoEnd ) {
+                                       deferred.resolveWith( elem, [ animation, gotoEnd ] );
+                               } else {
+                                       deferred.rejectWith( elem, [ animation, gotoEnd ] );
+                               }
+                               return this;
+                       }
+               }),
+               props = animation.props;
+
+       propFilter( props, animation.opts.specialEasing );
+
+       for ( ; index < length ; index++ ) {
+               result = animationPrefilters[ index ].call( animation, elem, props, animation.opts );
+               if ( result ) {
+                       return result;
+               }
+       }
+
+       jQuery.map( props, createTween, animation );
+
+       if ( jQuery.isFunction( animation.opts.start ) ) {
+               animation.opts.start.call( elem, animation );
+       }
+
+       jQuery.fx.timer(
+               jQuery.extend( tick, {
+                       elem: elem,
+                       anim: animation,
+                       queue: animation.opts.queue
+               })
+       );
+
+       // attach callbacks from options
+       return animation.progress( animation.opts.progress )
+               .done( animation.opts.done, animation.opts.complete )
+               .fail( animation.opts.fail )
+               .always( animation.opts.always );
+}
+
+jQuery.Animation = jQuery.extend( Animation, {
+
+       tweener: function( props, callback ) {
+               if ( jQuery.isFunction( props ) ) {
+                       callback = props;
+                       props = [ "*" ];
+               } else {
+                       props = props.split(" ");
+               }
+
+               var prop,
+                       index = 0,
+                       length = props.length;
+
+               for ( ; index < length ; index++ ) {
+                       prop = props[ index ];
+                       tweeners[ prop ] = tweeners[ prop ] || [];
+                       tweeners[ prop ].unshift( callback );
+               }
+       },
+
+       prefilter: function( callback, prepend ) {
+               if ( prepend ) {
+                       animationPrefilters.unshift( callback );
+               } else {
+                       animationPrefilters.push( callback );
+               }
+       }
+});
+
+jQuery.speed = function( speed, easing, fn ) {
+       var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
+               complete: fn || !fn && easing ||
+                       jQuery.isFunction( speed ) && speed,
+               duration: speed,
+               easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing
+       };
+
+       opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration :
+               opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default;
+
+       // Normalize opt.queue - true/undefined/null -> "fx"
+       if ( opt.queue == null || opt.queue === true ) {
+               opt.queue = "fx";
+       }
+
+       // Queueing
+       opt.old = opt.complete;
+
+       opt.complete = function() {
+               if ( jQuery.isFunction( opt.old ) ) {
+                       opt.old.call( this );
+               }
+
+               if ( opt.queue ) {
+                       jQuery.dequeue( this, opt.queue );
+               }
+       };
+
+       return opt;
+};
+
+jQuery.fn.extend({
+       fadeTo: function( speed, to, easing, callback ) {
+
+               // Show any hidden elements after setting opacity to 0
+               return this.filter( isHidden ).css( "opacity", 0 ).show()
+
+                       // Animate to the value specified
+                       .end().animate({ opacity: to }, speed, easing, callback );
+       },
+       animate: function( prop, speed, easing, callback ) {
+               var empty = jQuery.isEmptyObject( prop ),
+                       optall = jQuery.speed( speed, easing, callback ),
+                       doAnimation = function() {
+                               // Operate on a copy of prop so per-property easing won't be lost
+                               var anim = Animation( this, jQuery.extend( {}, prop ), optall );
+
+                               // Empty animations, or finishing resolves immediately
+                               if ( empty || data_priv.get( this, "finish" ) ) {
+                                       anim.stop( true );
+                               }
+                       };
+                       doAnimation.finish = doAnimation;
+
+               return empty || optall.queue === false ?
+                       this.each( doAnimation ) :
+                       this.queue( optall.queue, doAnimation );
+       },
+       stop: function( type, clearQueue, gotoEnd ) {
+               var stopQueue = function( hooks ) {
+                       var stop = hooks.stop;
+                       delete hooks.stop;
+                       stop( gotoEnd );
+               };
+
+               if ( typeof type !== "string" ) {
+                       gotoEnd = clearQueue;
+                       clearQueue = type;
+                       type = undefined;
+               }
+               if ( clearQueue && type !== false ) {
+                       this.queue( type || "fx", [] );
+               }
+
+               return this.each(function() {
+                       var dequeue = true,
+                               index = type != null && type + "queueHooks",
+                               timers = jQuery.timers,
+                               data = data_priv.get( this );
+
+                       if ( index ) {
+                               if ( data[ index ] && data[ index ].stop ) {
+                                       stopQueue( data[ index ] );
+                               }
+                       } else {
+                               for ( index in data ) {
+                                       if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
+                                               stopQueue( data[ index ] );
+                                       }
+                               }
+                       }
+
+                       for ( index = timers.length; index--; ) {
+                               if ( timers[ index ].elem === this && (type == null || timers[ index ].queue === type) ) {
+                                       timers[ index ].anim.stop( gotoEnd );
+                                       dequeue = false;
+                                       timers.splice( index, 1 );
+                               }
+                       }
+
+                       // Start the next in the queue if the last step wasn't forced.
+                       // Timers currently will call their complete callbacks, which
+                       // will dequeue but only if they were gotoEnd.
+                       if ( dequeue || !gotoEnd ) {
+                               jQuery.dequeue( this, type );
+                       }
+               });
+       },
+       finish: function( type ) {
+               if ( type !== false ) {
+                       type = type || "fx";
+               }
+               return this.each(function() {
+                       var index,
+                               data = data_priv.get( this ),
+                               queue = data[ type + "queue" ],
+                               hooks = data[ type + "queueHooks" ],
+                               timers = jQuery.timers,
+                               length = queue ? queue.length : 0;
+
+                       // Enable finishing flag on private data
+                       data.finish = true;
+
+                       // Empty the queue first
+                       jQuery.queue( this, type, [] );
+
+                       if ( hooks && hooks.stop ) {
+                               hooks.stop.call( this, true );
+                       }
+
+                       // Look for any active animations, and finish them
+                       for ( index = timers.length; index--; ) {
+                               if ( timers[ index ].elem === this && timers[ index ].queue === type ) {
+                                       timers[ index ].anim.stop( true );
+                                       timers.splice( index, 1 );
+                               }
+                       }
+
+                       // Look for any animations in the old queue and finish them
+                       for ( index = 0; index < length; index++ ) {
+                               if ( queue[ index ] && queue[ index ].finish ) {
+                                       queue[ index ].finish.call( this );
+                               }
+                       }
+
+                       // Turn off finishing flag
+                       delete data.finish;
+               });
+       }
+});
+
+jQuery.each([ "toggle", "show", "hide" ], function( i, name ) {
+       var cssFn = jQuery.fn[ name ];
+       jQuery.fn[ name ] = function( speed, easing, callback ) {
+               return speed == null || typeof speed === "boolean" ?
+                       cssFn.apply( this, arguments ) :
+                       this.animate( genFx( name, true ), speed, easing, callback );
+       };
+});
+
+// Generate shortcuts for custom animations
+jQuery.each({
+       slideDown: genFx("show"),
+       slideUp: genFx("hide"),
+       slideToggle: genFx("toggle"),
+       fadeIn: { opacity: "show" },
+       fadeOut: { opacity: "hide" },
+       fadeToggle: { opacity: "toggle" }
+}, function( name, props ) {
+       jQuery.fn[ name ] = function( speed, easing, callback ) {
+               return this.animate( props, speed, easing, callback );
+       };
+});
+
+jQuery.timers = [];
+jQuery.fx.tick = function() {
+       var timer,
+               i = 0,
+               timers = jQuery.timers;
+
+       fxNow = jQuery.now();
+
+       for ( ; i < timers.length; i++ ) {
+               timer = timers[ i ];
+               // Checks the timer has not already been removed
+               if ( !timer() && timers[ i ] === timer ) {
+                       timers.splice( i--, 1 );
+               }
+       }
+
+       if ( !timers.length ) {
+               jQuery.fx.stop();
+       }
+       fxNow = undefined;
+};
+
+jQuery.fx.timer = function( timer ) {
+       jQuery.timers.push( timer );
+       if ( timer() ) {
+               jQuery.fx.start();
+       } else {
+               jQuery.timers.pop();
+       }
+};
+
+jQuery.fx.interval = 13;
+
+jQuery.fx.start = function() {
+       if ( !timerId ) {
+               timerId = setInterval( jQuery.fx.tick, jQuery.fx.interval );
+       }
+};
+
+jQuery.fx.stop = function() {
+       clearInterval( timerId );
+       timerId = null;
+};
+
+jQuery.fx.speeds = {
+       slow: 600,
+       fast: 200,
+       // Default speed
+       _default: 400
+};
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects/Tween.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects/Tween.js
new file mode 100644 (file)
index 0000000..9acd8d0
--- /dev/null
@@ -0,0 +1,114 @@
+define([
+       "../core",
+       "../css"
+], function( jQuery ) {
+
+function Tween( elem, options, prop, end, easing ) {
+       return new Tween.prototype.init( elem, options, prop, end, easing );
+}
+jQuery.Tween = Tween;
+
+Tween.prototype = {
+       constructor: Tween,
+       init: function( elem, options, prop, end, easing, unit ) {
+               this.elem = elem;
+               this.prop = prop;
+               this.easing = easing || "swing";
+               this.options = options;
+               this.start = this.now = this.cur();
+               this.end = end;
+               this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );
+       },
+       cur: function() {
+               var hooks = Tween.propHooks[ this.prop ];
+
+               return hooks && hooks.get ?
+                       hooks.get( this ) :
+                       Tween.propHooks._default.get( this );
+       },
+       run: function( percent ) {
+               var eased,
+                       hooks = Tween.propHooks[ this.prop ];
+
+               if ( this.options.duration ) {
+                       this.pos = eased = jQuery.easing[ this.easing ](
+                               percent, this.options.duration * percent, 0, 1, this.options.duration
+                       );
+               } else {
+                       this.pos = eased = percent;
+               }
+               this.now = ( this.end - this.start ) * eased + this.start;
+
+               if ( this.options.step ) {
+                       this.options.step.call( this.elem, this.now, this );
+               }
+
+               if ( hooks && hooks.set ) {
+                       hooks.set( this );
+               } else {
+                       Tween.propHooks._default.set( this );
+               }
+               return this;
+       }
+};
+
+Tween.prototype.init.prototype = Tween.prototype;
+
+Tween.propHooks = {
+       _default: {
+               get: function( tween ) {
+                       var result;
+
+                       if ( tween.elem[ tween.prop ] != null &&
+                               (!tween.elem.style || tween.elem.style[ tween.prop ] == null) ) {
+                               return tween.elem[ tween.prop ];
+                       }
+
+                       // Passing an empty string as a 3rd parameter to .css will automatically
+                       // attempt a parseFloat and fallback to a string if the parse fails.
+                       // Simple values such as "10px" are parsed to Float;
+                       // complex values such as "rotate(1rad)" are returned as-is.
+                       result = jQuery.css( tween.elem, tween.prop, "" );
+                       // Empty strings, null, undefined and "auto" are converted to 0.
+                       return !result || result === "auto" ? 0 : result;
+               },
+               set: function( tween ) {
+                       // Use step hook for back compat.
+                       // Use cssHook if its there.
+                       // Use .style if available and use plain properties where available.
+                       if ( jQuery.fx.step[ tween.prop ] ) {
+                               jQuery.fx.step[ tween.prop ]( tween );
+                       } else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || jQuery.cssHooks[ tween.prop ] ) ) {
+                               jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
+                       } else {
+                               tween.elem[ tween.prop ] = tween.now;
+                       }
+               }
+       }
+};
+
+// Support: IE9
+// Panic based approach to setting things on disconnected nodes
+Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
+       set: function( tween ) {
+               if ( tween.elem.nodeType && tween.elem.parentNode ) {
+                       tween.elem[ tween.prop ] = tween.now;
+               }
+       }
+};
+
+jQuery.easing = {
+       linear: function( p ) {
+               return p;
+       },
+       swing: function( p ) {
+               return 0.5 - Math.cos( p * Math.PI ) / 2;
+       }
+};
+
+jQuery.fx = Tween.prototype.init;
+
+// Back Compat <1.8 extension point
+jQuery.fx.step = {};
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects/animatedSelector.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/effects/animatedSelector.js
new file mode 100644 (file)
index 0000000..bc5a3d6
--- /dev/null
@@ -0,0 +1,13 @@
+define([
+       "../core",
+       "../selector",
+       "../effects"
+], function( jQuery ) {
+
+jQuery.expr.filters.animated = function( elem ) {
+       return jQuery.grep(jQuery.timers, function( fn ) {
+               return elem === fn.elem;
+       }).length;
+};
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event.js
new file mode 100644 (file)
index 0000000..8f04b89
--- /dev/null
@@ -0,0 +1,868 @@
+define([
+       "./core",
+       "./var/strundefined",
+       "./var/rnotwhite",
+       "./var/hasOwn",
+       "./var/slice",
+       "./event/support",
+       "./data/var/data_priv",
+
+       "./core/init",
+       "./data/accepts",
+       "./selector"
+], function( jQuery, strundefined, rnotwhite, hasOwn, slice, support, data_priv ) {
+
+var
+       rkeyEvent = /^key/,
+       rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/,
+       rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
+       rtypenamespace = /^([^.]*)(?:\.(.+)|)$/;
+
+function returnTrue() {
+       return true;
+}
+
+function returnFalse() {
+       return false;
+}
+
+function safeActiveElement() {
+       try {
+               return document.activeElement;
+       } catch ( err ) { }
+}
+
+/*
+ * Helper functions for managing events -- not part of the public interface.
+ * Props to Dean Edwards' addEvent library for many of the ideas.
+ */
+jQuery.event = {
+
+       global: {},
+
+       add: function( elem, types, handler, data, selector ) {
+
+               var handleObjIn, eventHandle, tmp,
+                       events, t, handleObj,
+                       special, handlers, type, namespaces, origType,
+                       elemData = data_priv.get( elem );
+
+               // Don't attach events to noData or text/comment nodes (but allow plain objects)
+               if ( !elemData ) {
+                       return;
+               }
+
+               // Caller can pass in an object of custom data in lieu of the handler
+               if ( handler.handler ) {
+                       handleObjIn = handler;
+                       handler = handleObjIn.handler;
+                       selector = handleObjIn.selector;
+               }
+
+               // Make sure that the handler has a unique ID, used to find/remove it later
+               if ( !handler.guid ) {
+                       handler.guid = jQuery.guid++;
+               }
+
+               // Init the element's event structure and main handler, if this is the first
+               if ( !(events = elemData.events) ) {
+                       events = elemData.events = {};
+               }
+               if ( !(eventHandle = elemData.handle) ) {
+                       eventHandle = elemData.handle = function( e ) {
+                               // Discard the second event of a jQuery.event.trigger() and
+                               // when an event is called after a page has unloaded
+                               return typeof jQuery !== strundefined && jQuery.event.triggered !== e.type ?
+                                       jQuery.event.dispatch.apply( elem, arguments ) : undefined;
+                       };
+               }
+
+               // Handle multiple events separated by a space
+               types = ( types || "" ).match( rnotwhite ) || [ "" ];
+               t = types.length;
+               while ( t-- ) {
+                       tmp = rtypenamespace.exec( types[t] ) || [];
+                       type = origType = tmp[1];
+                       namespaces = ( tmp[2] || "" ).split( "." ).sort();
+
+                       // There *must* be a type, no attaching namespace-only handlers
+                       if ( !type ) {
+                               continue;
+                       }
+
+                       // If event changes its type, use the special event handlers for the changed type
+                       special = jQuery.event.special[ type ] || {};
+
+                       // If selector defined, determine special event api type, otherwise given type
+                       type = ( selector ? special.delegateType : special.bindType ) || type;
+
+                       // Update special based on newly reset type
+                       special = jQuery.event.special[ type ] || {};
+
+                       // handleObj is passed to all event handlers
+                       handleObj = jQuery.extend({
+                               type: type,
+                               origType: origType,
+                               data: data,
+                               handler: handler,
+                               guid: handler.guid,
+                               selector: selector,
+                               needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
+                               namespace: namespaces.join(".")
+                       }, handleObjIn );
+
+                       // Init the event handler queue if we're the first
+                       if ( !(handlers = events[ type ]) ) {
+                               handlers = events[ type ] = [];
+                               handlers.delegateCount = 0;
+
+                               // Only use addEventListener if the special events handler returns false
+                               if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
+                                       if ( elem.addEventListener ) {
+                                               elem.addEventListener( type, eventHandle, false );
+                                       }
+                               }
+                       }
+
+                       if ( special.add ) {
+                               special.add.call( elem, handleObj );
+
+                               if ( !handleObj.handler.guid ) {
+                                       handleObj.handler.guid = handler.guid;
+                               }
+                       }
+
+                       // Add to the element's handler list, delegates in front
+                       if ( selector ) {
+                               handlers.splice( handlers.delegateCount++, 0, handleObj );
+                       } else {
+                               handlers.push( handleObj );
+                       }
+
+                       // Keep track of which events have ever been used, for event optimization
+                       jQuery.event.global[ type ] = true;
+               }
+
+       },
+
+       // Detach an event or set of events from an element
+       remove: function( elem, types, handler, selector, mappedTypes ) {
+
+               var j, origCount, tmp,
+                       events, t, handleObj,
+                       special, handlers, type, namespaces, origType,
+                       elemData = data_priv.hasData( elem ) && data_priv.get( elem );
+
+               if ( !elemData || !(events = elemData.events) ) {
+                       return;
+               }
+
+               // Once for each type.namespace in types; type may be omitted
+               types = ( types || "" ).match( rnotwhite ) || [ "" ];
+               t = types.length;
+               while ( t-- ) {
+                       tmp = rtypenamespace.exec( types[t] ) || [];
+                       type = origType = tmp[1];
+                       namespaces = ( tmp[2] || "" ).split( "." ).sort();
+
+                       // Unbind all events (on this namespace, if provided) for the element
+                       if ( !type ) {
+                               for ( type in events ) {
+                                       jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
+                               }
+                               continue;
+                       }
+
+                       special = jQuery.event.special[ type ] || {};
+                       type = ( selector ? special.delegateType : special.bindType ) || type;
+                       handlers = events[ type ] || [];
+                       tmp = tmp[2] && new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" );
+
+                       // Remove matching events
+                       origCount = j = handlers.length;
+                       while ( j-- ) {
+                               handleObj = handlers[ j ];
+
+                               if ( ( mappedTypes || origType === handleObj.origType ) &&
+                                       ( !handler || handler.guid === handleObj.guid ) &&
+                                       ( !tmp || tmp.test( handleObj.namespace ) ) &&
+                                       ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) {
+                                       handlers.splice( j, 1 );
+
+                                       if ( handleObj.selector ) {
+                                               handlers.delegateCount--;
+                                       }
+                                       if ( special.remove ) {
+                                               special.remove.call( elem, handleObj );
+                                       }
+                               }
+                       }
+
+                       // Remove generic event handler if we removed something and no more handlers exist
+                       // (avoids potential for endless recursion during removal of special event handlers)
+                       if ( origCount && !handlers.length ) {
+                               if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
+                                       jQuery.removeEvent( elem, type, elemData.handle );
+                               }
+
+                               delete events[ type ];
+                       }
+               }
+
+               // Remove the expando if it's no longer used
+               if ( jQuery.isEmptyObject( events ) ) {
+                       delete elemData.handle;
+                       data_priv.remove( elem, "events" );
+               }
+       },
+
+       trigger: function( event, data, elem, onlyHandlers ) {
+
+               var i, cur, tmp, bubbleType, ontype, handle, special,
+                       eventPath = [ elem || document ],
+                       type = hasOwn.call( event, "type" ) ? event.type : event,
+                       namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split(".") : [];
+
+               cur = tmp = elem = elem || document;
+
+               // Don't do events on text and comment nodes
+               if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
+                       return;
+               }
+
+               // focus/blur morphs to focusin/out; ensure we're not firing them right now
+               if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
+                       return;
+               }
+
+               if ( type.indexOf(".") >= 0 ) {
+                       // Namespaced trigger; create a regexp to match event type in handle()
+                       namespaces = type.split(".");
+                       type = namespaces.shift();
+                       namespaces.sort();
+               }
+               ontype = type.indexOf(":") < 0 && "on" + type;
+
+               // Caller can pass in a jQuery.Event object, Object, or just an event type string
+               event = event[ jQuery.expando ] ?
+                       event :
+                       new jQuery.Event( type, typeof event === "object" && event );
+
+               // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)
+               event.isTrigger = onlyHandlers ? 2 : 3;
+               event.namespace = namespaces.join(".");
+               event.namespace_re = event.namespace ?
+                       new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ) :
+                       null;
+
+               // Clean up the event in case it is being reused
+               event.result = undefined;
+               if ( !event.target ) {
+                       event.target = elem;
+               }
+
+               // Clone any incoming data and prepend the event, creating the handler arg list
+               data = data == null ?
+                       [ event ] :
+                       jQuery.makeArray( data, [ event ] );
+
+               // Allow special events to draw outside the lines
+               special = jQuery.event.special[ type ] || {};
+               if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {
+                       return;
+               }
+
+               // Determine event propagation path in advance, per W3C events spec (#9951)
+               // Bubble up to document, then to window; watch for a global ownerDocument var (#9724)
+               if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {
+
+                       bubbleType = special.delegateType || type;
+                       if ( !rfocusMorph.test( bubbleType + type ) ) {
+                               cur = cur.parentNode;
+                       }
+                       for ( ; cur; cur = cur.parentNode ) {
+                               eventPath.push( cur );
+                               tmp = cur;
+                       }
+
+                       // Only add window if we got to document (e.g., not plain obj or detached DOM)
+                       if ( tmp === (elem.ownerDocument || document) ) {
+                               eventPath.push( tmp.defaultView || tmp.parentWindow || window );
+                       }
+               }
+
+               // Fire handlers on the event path
+               i = 0;
+               while ( (cur = eventPath[i++]) && !event.isPropagationStopped() ) {
+
+                       event.type = i > 1 ?
+                               bubbleType :
+                               special.bindType || type;
+
+                       // jQuery handler
+                       handle = ( data_priv.get( cur, "events" ) || {} )[ event.type ] && data_priv.get( cur, "handle" );
+                       if ( handle ) {
+                               handle.apply( cur, data );
+                       }
+
+                       // Native handler
+                       handle = ontype && cur[ ontype ];
+                       if ( handle && handle.apply && jQuery.acceptData( cur ) ) {
+                               event.result = handle.apply( cur, data );
+                               if ( event.result === false ) {
+                                       event.preventDefault();
+                               }
+                       }
+               }
+               event.type = type;
+
+               // If nobody prevented the default action, do it now
+               if ( !onlyHandlers && !event.isDefaultPrevented() ) {
+
+                       if ( (!special._default || special._default.apply( eventPath.pop(), data ) === false) &&
+                               jQuery.acceptData( elem ) ) {
+
+                               // Call a native DOM method on the target with the same name name as the event.
+                               // Don't do default actions on window, that's where global variables be (#6170)
+                               if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) {
+
+                                       // Don't re-trigger an onFOO event when we call its FOO() method
+                                       tmp = elem[ ontype ];
+
+                                       if ( tmp ) {
+                                               elem[ ontype ] = null;
+                                       }
+
+                                       // Prevent re-triggering of the same event, since we already bubbled it above
+                                       jQuery.event.triggered = type;
+                                       elem[ type ]();
+                                       jQuery.event.triggered = undefined;
+
+                                       if ( tmp ) {
+                                               elem[ ontype ] = tmp;
+                                       }
+                               }
+                       }
+               }
+
+               return event.result;
+       },
+
+       dispatch: function( event ) {
+
+               // Make a writable jQuery.Event from the native event object
+               event = jQuery.event.fix( event );
+
+               var i, j, ret, matched, handleObj,
+                       handlerQueue = [],
+                       args = slice.call( arguments ),
+                       handlers = ( data_priv.get( this, "events" ) || {} )[ event.type ] || [],
+                       special = jQuery.event.special[ event.type ] || {};
+
+               // Use the fix-ed jQuery.Event rather than the (read-only) native event
+               args[0] = event;
+               event.delegateTarget = this;
+
+               // Call the preDispatch hook for the mapped type, and let it bail if desired
+               if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
+                       return;
+               }
+
+               // Determine handlers
+               handlerQueue = jQuery.event.handlers.call( this, event, handlers );
+
+               // Run delegates first; they may want to stop propagation beneath us
+               i = 0;
+               while ( (matched = handlerQueue[ i++ ]) && !event.isPropagationStopped() ) {
+                       event.currentTarget = matched.elem;
+
+                       j = 0;
+                       while ( (handleObj = matched.handlers[ j++ ]) && !event.isImmediatePropagationStopped() ) {
+
+                               // Triggered event must either 1) have no namespace, or 2) have namespace(s)
+                               // a subset or equal to those in the bound event (both can have no namespace).
+                               if ( !event.namespace_re || event.namespace_re.test( handleObj.namespace ) ) {
+
+                                       event.handleObj = handleObj;
+                                       event.data = handleObj.data;
+
+                                       ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler )
+                                                       .apply( matched.elem, args );
+
+                                       if ( ret !== undefined ) {
+                                               if ( (event.result = ret) === false ) {
+                                                       event.preventDefault();
+                                                       event.stopPropagation();
+                                               }
+                                       }
+                               }
+                       }
+               }
+
+               // Call the postDispatch hook for the mapped type
+               if ( special.postDispatch ) {
+                       special.postDispatch.call( this, event );
+               }
+
+               return event.result;
+       },
+
+       handlers: function( event, handlers ) {
+               var i, matches, sel, handleObj,
+                       handlerQueue = [],
+                       delegateCount = handlers.delegateCount,
+                       cur = event.target;
+
+               // Find delegate handlers
+               // Black-hole SVG <use> instance trees (#13180)
+               // Avoid non-left-click bubbling in Firefox (#3861)
+               if ( delegateCount && cur.nodeType && (!event.button || event.type !== "click") ) {
+
+                       for ( ; cur !== this; cur = cur.parentNode || this ) {
+
+                               // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)
+                               if ( cur.disabled !== true || event.type !== "click" ) {
+                                       matches = [];
+                                       for ( i = 0; i < delegateCount; i++ ) {
+                                               handleObj = handlers[ i ];
+
+                                               // Don't conflict with Object.prototype properties (#13203)
+                                               sel = handleObj.selector + " ";
+
+                                               if ( matches[ sel ] === undefined ) {
+                                                       matches[ sel ] = handleObj.needsContext ?
+                                                               jQuery( sel, this ).index( cur ) >= 0 :
+                                                               jQuery.find( sel, this, null, [ cur ] ).length;
+                                               }
+                                               if ( matches[ sel ] ) {
+                                                       matches.push( handleObj );
+                                               }
+                                       }
+                                       if ( matches.length ) {
+                                               handlerQueue.push({ elem: cur, handlers: matches });
+                                       }
+                               }
+                       }
+               }
+
+               // Add the remaining (directly-bound) handlers
+               if ( delegateCount < handlers.length ) {
+                       handlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) });
+               }
+
+               return handlerQueue;
+       },
+
+       // Includes some event props shared by KeyEvent and MouseEvent
+       props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
+
+       fixHooks: {},
+
+       keyHooks: {
+               props: "char charCode key keyCode".split(" "),
+               filter: function( event, original ) {
+
+                       // Add which for key events
+                       if ( event.which == null ) {
+                               event.which = original.charCode != null ? original.charCode : original.keyCode;
+                       }
+
+                       return event;
+               }
+       },
+
+       mouseHooks: {
+               props: "button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
+               filter: function( event, original ) {
+                       var eventDoc, doc, body,
+                               button = original.button;
+
+                       // Calculate pageX/Y if missing and clientX/Y available
+                       if ( event.pageX == null && original.clientX != null ) {
+                               eventDoc = event.target.ownerDocument || document;
+                               doc = eventDoc.documentElement;
+                               body = eventDoc.body;
+
+                               event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 );
+                               event.pageY = original.clientY + ( doc && doc.scrollTop  || body && body.scrollTop  || 0 ) - ( doc && doc.clientTop  || body && body.clientTop  || 0 );
+                       }
+
+                       // Add which for click: 1 === left; 2 === middle; 3 === right
+                       // Note: button is not normalized, so don't use it
+                       if ( !event.which && button !== undefined ) {
+                               event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );
+                       }
+
+                       return event;
+               }
+       },
+
+       fix: function( event ) {
+               if ( event[ jQuery.expando ] ) {
+                       return event;
+               }
+
+               // Create a writable copy of the event object and normalize some properties
+               var i, prop, copy,
+                       type = event.type,
+                       originalEvent = event,
+                       fixHook = this.fixHooks[ type ];
+
+               if ( !fixHook ) {
+                       this.fixHooks[ type ] = fixHook =
+                               rmouseEvent.test( type ) ? this.mouseHooks :
+                               rkeyEvent.test( type ) ? this.keyHooks :
+                               {};
+               }
+               copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;
+
+               event = new jQuery.Event( originalEvent );
+
+               i = copy.length;
+               while ( i-- ) {
+                       prop = copy[ i ];
+                       event[ prop ] = originalEvent[ prop ];
+               }
+
+               // Support: Cordova 2.5 (WebKit) (#13255)
+               // All events should have a target; Cordova deviceready doesn't
+               if ( !event.target ) {
+                       event.target = document;
+               }
+
+               // Support: Safari 6.0+, Chrome<28
+               // Target should not be a text node (#504, #13143)
+               if ( event.target.nodeType === 3 ) {
+                       event.target = event.target.parentNode;
+               }
+
+               return fixHook.filter ? fixHook.filter( event, originalEvent ) : event;
+       },
+
+       special: {
+               load: {
+                       // Prevent triggered image.load events from bubbling to window.load
+                       noBubble: true
+               },
+               focus: {
+                       // Fire native event if possible so blur/focus sequence is correct
+                       trigger: function() {
+                               if ( this !== safeActiveElement() && this.focus ) {
+                                       this.focus();
+                                       return false;
+                               }
+                       },
+                       delegateType: "focusin"
+               },
+               blur: {
+                       trigger: function() {
+                               if ( this === safeActiveElement() && this.blur ) {
+                                       this.blur();
+                                       return false;
+                               }
+                       },
+                       delegateType: "focusout"
+               },
+               click: {
+                       // For checkbox, fire native event so checked state will be right
+                       trigger: function() {
+                               if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) {
+                                       this.click();
+                                       return false;
+                               }
+                       },
+
+                       // For cross-browser consistency, don't fire native .click() on links
+                       _default: function( event ) {
+                               return jQuery.nodeName( event.target, "a" );
+                       }
+               },
+
+               beforeunload: {
+                       postDispatch: function( event ) {
+
+                               // Support: Firefox 20+
+                               // Firefox doesn't alert if the returnValue field is not set.
+                               if ( event.result !== undefined && event.originalEvent ) {
+                                       event.originalEvent.returnValue = event.result;
+                               }
+                       }
+               }
+       },
+
+       simulate: function( type, elem, event, bubble ) {
+               // Piggyback on a donor event to simulate a different one.
+               // Fake originalEvent to avoid donor's stopPropagation, but if the
+               // simulated event prevents default then we do the same on the donor.
+               var e = jQuery.extend(
+                       new jQuery.Event(),
+                       event,
+                       {
+                               type: type,
+                               isSimulated: true,
+                               originalEvent: {}
+                       }
+               );
+               if ( bubble ) {
+                       jQuery.event.trigger( e, null, elem );
+               } else {
+                       jQuery.event.dispatch.call( elem, e );
+               }
+               if ( e.isDefaultPrevented() ) {
+                       event.preventDefault();
+               }
+       }
+};
+
+jQuery.removeEvent = function( elem, type, handle ) {
+       if ( elem.removeEventListener ) {
+               elem.removeEventListener( type, handle, false );
+       }
+};
+
+jQuery.Event = function( src, props ) {
+       // Allow instantiation without the 'new' keyword
+       if ( !(this instanceof jQuery.Event) ) {
+               return new jQuery.Event( src, props );
+       }
+
+       // Event object
+       if ( src && src.type ) {
+               this.originalEvent = src;
+               this.type = src.type;
+
+               // Events bubbling up the document may have been marked as prevented
+               // by a handler lower down the tree; reflect the correct value.
+               this.isDefaultPrevented = src.defaultPrevented ||
+                               src.defaultPrevented === undefined &&
+                               // Support: Android<4.0
+                               src.returnValue === false ?
+                       returnTrue :
+                       returnFalse;
+
+       // Event type
+       } else {
+               this.type = src;
+       }
+
+       // Put explicitly provided properties onto the event object
+       if ( props ) {
+               jQuery.extend( this, props );
+       }
+
+       // Create a timestamp if incoming event doesn't have one
+       this.timeStamp = src && src.timeStamp || jQuery.now();
+
+       // Mark it as fixed
+       this[ jQuery.expando ] = true;
+};
+
+// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
+// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
+jQuery.Event.prototype = {
+       isDefaultPrevented: returnFalse,
+       isPropagationStopped: returnFalse,
+       isImmediatePropagationStopped: returnFalse,
+
+       preventDefault: function() {
+               var e = this.originalEvent;
+
+               this.isDefaultPrevented = returnTrue;
+
+               if ( e && e.preventDefault ) {
+                       e.preventDefault();
+               }
+       },
+       stopPropagation: function() {
+               var e = this.originalEvent;
+
+               this.isPropagationStopped = returnTrue;
+
+               if ( e && e.stopPropagation ) {
+                       e.stopPropagation();
+               }
+       },
+       stopImmediatePropagation: function() {
+               var e = this.originalEvent;
+
+               this.isImmediatePropagationStopped = returnTrue;
+
+               if ( e && e.stopImmediatePropagation ) {
+                       e.stopImmediatePropagation();
+               }
+
+               this.stopPropagation();
+       }
+};
+
+// Create mouseenter/leave events using mouseover/out and event-time checks
+// Support: Chrome 15+
+jQuery.each({
+       mouseenter: "mouseover",
+       mouseleave: "mouseout",
+       pointerenter: "pointerover",
+       pointerleave: "pointerout"
+}, function( orig, fix ) {
+       jQuery.event.special[ orig ] = {
+               delegateType: fix,
+               bindType: fix,
+
+               handle: function( event ) {
+                       var ret,
+                               target = this,
+                               related = event.relatedTarget,
+                               handleObj = event.handleObj;
+
+                       // For mousenter/leave call the handler if related is outside the target.
+                       // NB: No relatedTarget if the mouse left/entered the browser window
+                       if ( !related || (related !== target && !jQuery.contains( target, related )) ) {
+                               event.type = handleObj.origType;
+                               ret = handleObj.handler.apply( this, arguments );
+                               event.type = fix;
+                       }
+                       return ret;
+               }
+       };
+});
+
+// Support: Firefox, Chrome, Safari
+// Create "bubbling" focus and blur events
+if ( !support.focusinBubbles ) {
+       jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
+
+               // Attach a single capturing handler on the document while someone wants focusin/focusout
+               var handler = function( event ) {
+                               jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true );
+                       };
+
+               jQuery.event.special[ fix ] = {
+                       setup: function() {
+                               var doc = this.ownerDocument || this,
+                                       attaches = data_priv.access( doc, fix );
+
+                               if ( !attaches ) {
+                                       doc.addEventListener( orig, handler, true );
+                               }
+                               data_priv.access( doc, fix, ( attaches || 0 ) + 1 );
+                       },
+                       teardown: function() {
+                               var doc = this.ownerDocument || this,
+                                       attaches = data_priv.access( doc, fix ) - 1;
+
+                               if ( !attaches ) {
+                                       doc.removeEventListener( orig, handler, true );
+                                       data_priv.remove( doc, fix );
+
+                               } else {
+                                       data_priv.access( doc, fix, attaches );
+                               }
+                       }
+               };
+       });
+}
+
+jQuery.fn.extend({
+
+       on: function( types, selector, data, fn, /*INTERNAL*/ one ) {
+               var origFn, type;
+
+               // Types can be a map of types/handlers
+               if ( typeof types === "object" ) {
+                       // ( types-Object, selector, data )
+                       if ( typeof selector !== "string" ) {
+                               // ( types-Object, data )
+                               data = data || selector;
+                               selector = undefined;
+                       }
+                       for ( type in types ) {
+                               this.on( type, selector, data, types[ type ], one );
+                       }
+                       return this;
+               }
+
+               if ( data == null && fn == null ) {
+                       // ( types, fn )
+                       fn = selector;
+                       data = selector = undefined;
+               } else if ( fn == null ) {
+                       if ( typeof selector === "string" ) {
+                               // ( types, selector, fn )
+                               fn = data;
+                               data = undefined;
+                       } else {
+                               // ( types, data, fn )
+                               fn = data;
+                               data = selector;
+                               selector = undefined;
+                       }
+               }
+               if ( fn === false ) {
+                       fn = returnFalse;
+               } else if ( !fn ) {
+                       return this;
+               }
+
+               if ( one === 1 ) {
+                       origFn = fn;
+                       fn = function( event ) {
+                               // Can use an empty set, since event contains the info
+                               jQuery().off( event );
+                               return origFn.apply( this, arguments );
+                       };
+                       // Use same guid so caller can remove using origFn
+                       fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
+               }
+               return this.each( function() {
+                       jQuery.event.add( this, types, fn, data, selector );
+               });
+       },
+       one: function( types, selector, data, fn ) {
+               return this.on( types, selector, data, fn, 1 );
+       },
+       off: function( types, selector, fn ) {
+               var handleObj, type;
+               if ( types && types.preventDefault && types.handleObj ) {
+                       // ( event )  dispatched jQuery.Event
+                       handleObj = types.handleObj;
+                       jQuery( types.delegateTarget ).off(
+                               handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType,
+                               handleObj.selector,
+                               handleObj.handler
+                       );
+                       return this;
+               }
+               if ( typeof types === "object" ) {
+                       // ( types-object [, selector] )
+                       for ( type in types ) {
+                               this.off( type, selector, types[ type ] );
+                       }
+                       return this;
+               }
+               if ( selector === false || typeof selector === "function" ) {
+                       // ( types [, fn] )
+                       fn = selector;
+                       selector = undefined;
+               }
+               if ( fn === false ) {
+                       fn = returnFalse;
+               }
+               return this.each(function() {
+                       jQuery.event.remove( this, types, fn, selector );
+               });
+       },
+
+       trigger: function( type, data ) {
+               return this.each(function() {
+                       jQuery.event.trigger( type, data, this );
+               });
+       },
+       triggerHandler: function( type, data ) {
+               var elem = this[0];
+               if ( elem ) {
+                       return jQuery.event.trigger( type, data, elem, true );
+               }
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/ajax.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/ajax.js
new file mode 100644 (file)
index 0000000..278c403
--- /dev/null
@@ -0,0 +1,13 @@
+define([
+       "../core",
+       "../event"
+], function( jQuery ) {
+
+// Attach a bunch of functions for handling common AJAX events
+jQuery.each( [ "ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend" ], function( i, type ) {
+       jQuery.fn[ type ] = function( fn ) {
+               return this.on( type, fn );
+       };
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/alias.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/alias.js
new file mode 100644 (file)
index 0000000..7e79175
--- /dev/null
@@ -0,0 +1,39 @@
+define([
+       "../core",
+       "../event"
+], function( jQuery ) {
+
+jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
+       "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
+       "change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) {
+
+       // Handle event binding
+       jQuery.fn[ name ] = function( data, fn ) {
+               return arguments.length > 0 ?
+                       this.on( name, null, data, fn ) :
+                       this.trigger( name );
+       };
+});
+
+jQuery.fn.extend({
+       hover: function( fnOver, fnOut ) {
+               return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
+       },
+
+       bind: function( types, data, fn ) {
+               return this.on( types, null, data, fn );
+       },
+       unbind: function( types, fn ) {
+               return this.off( types, null, fn );
+       },
+
+       delegate: function( selector, types, data, fn ) {
+               return this.on( types, selector, data, fn );
+       },
+       undelegate: function( selector, types, fn ) {
+               // ( namespace ) or ( selector, types [, fn] )
+               return arguments.length === 1 ? this.off( selector, "**" ) : this.off( types, selector || "**", fn );
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/support.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/event/support.js
new file mode 100644 (file)
index 0000000..85060db
--- /dev/null
@@ -0,0 +1,9 @@
+define([
+       "../var/support"
+], function( support ) {
+
+support.focusinBubbles = "onfocusin" in window;
+
+return support;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/exports/amd.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/exports/amd.js
new file mode 100644 (file)
index 0000000..9a9846f
--- /dev/null
@@ -0,0 +1,24 @@
+define([
+       "../core"
+], function( jQuery ) {
+
+// Register as a named AMD module, since jQuery can be concatenated with other
+// files that may use define, but not via a proper concatenation script that
+// understands anonymous AMD modules. A named AMD is safest and most robust
+// way to register. Lowercase jquery is used because AMD module names are
+// derived from file names, and jQuery is normally delivered in a lowercase
+// file name. Do this after creating the global so that if an AMD module wants
+// to call noConflict to hide this version of jQuery, it will work.
+
+// Note that for maximum portability, libraries that are not jQuery should
+// declare themselves as anonymous modules, and avoid setting a global if an
+// AMD loader is present. jQuery is a special case. For more information, see
+// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon
+
+if ( typeof define === "function" && define.amd ) {
+       define( "jquery", [], function() {
+               return jQuery;
+       });
+}
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/exports/global.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/exports/global.js
new file mode 100644 (file)
index 0000000..6513287
--- /dev/null
@@ -0,0 +1,32 @@
+define([
+       "../core",
+       "../var/strundefined"
+], function( jQuery, strundefined ) {
+
+var
+       // Map over jQuery in case of overwrite
+       _jQuery = window.jQuery,
+
+       // Map over the $ in case of overwrite
+       _$ = window.$;
+
+jQuery.noConflict = function( deep ) {
+       if ( window.$ === jQuery ) {
+               window.$ = _$;
+       }
+
+       if ( deep && window.jQuery === jQuery ) {
+               window.jQuery = _jQuery;
+       }
+
+       return jQuery;
+};
+
+// Expose jQuery and $ identifiers, even in AMD
+// (#7102#comment:10, https://github.com/jquery/jquery/pull/557)
+// and CommonJS for browser emulators (#13566)
+if ( typeof noGlobal === strundefined ) {
+       window.jQuery = window.$ = jQuery;
+}
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/intro.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/intro.js
new file mode 100644 (file)
index 0000000..d7d4368
--- /dev/null
@@ -0,0 +1,44 @@
+/*!
+ * jQuery JavaScript Library v@VERSION
+ * http://jquery.com/
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ *
+ * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: @DATE
+ */
+
+(function( global, factory ) {
+
+       if ( typeof module === "object" && typeof module.exports === "object" ) {
+               // For CommonJS and CommonJS-like environments where a proper `window`
+               // is present, execute the factory and get jQuery.
+               // For environments that do not have a `window` with a `document`
+               // (such as Node.js), expose a factory as module.exports.
+               // This accentuates the need for the creation of a real `window`.
+               // e.g. var jQuery = require("jquery")(window);
+               // See ticket #14549 for more info.
+               module.exports = global.document ?
+                       factory( global, true ) :
+                       function( w ) {
+                               if ( !w.document ) {
+                                       throw new Error( "jQuery requires a window with a document" );
+                               }
+                               return factory( w );
+                       };
+       } else {
+               factory( global );
+       }
+
+// Pass this if window is not defined yet
+}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
+
+// Support: Firefox 18+
+// Can't be in strict mode, several libs including ASP.NET trace
+// the stack via arguments.caller.callee and Firefox dies if
+// you try to trace through "use strict" call chains. (#13335)
+//"use strict";
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/jquery.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/jquery.js
new file mode 100644 (file)
index 0000000..d3857e9
--- /dev/null
@@ -0,0 +1,37 @@
+define([
+       "./core",
+       "./selector",
+       "./traversing",
+       "./callbacks",
+       "./deferred",
+       "./core/ready",
+       "./data",
+       "./queue",
+       "./queue/delay",
+       "./attributes",
+       "./event",
+       "./event/alias",
+       "./manipulation",
+       "./manipulation/_evalUrl",
+       "./wrap",
+       "./css",
+       "./css/hiddenVisibleSelectors",
+       "./serialize",
+       "./ajax",
+       "./ajax/xhr",
+       "./ajax/script",
+       "./ajax/jsonp",
+       "./ajax/load",
+       "./event/ajax",
+       "./effects",
+       "./effects/animatedSelector",
+       "./offset",
+       "./dimensions",
+       "./deprecated",
+       "./exports/amd",
+       "./exports/global"
+], function( jQuery ) {
+
+return jQuery;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation.js
new file mode 100644 (file)
index 0000000..c627962
--- /dev/null
@@ -0,0 +1,580 @@
+define([
+       "./core",
+       "./var/concat",
+       "./var/push",
+       "./core/access",
+       "./manipulation/var/rcheckableType",
+       "./manipulation/support",
+       "./data/var/data_priv",
+       "./data/var/data_user",
+
+       "./core/init",
+       "./data/accepts",
+       "./traversing",
+       "./selector",
+       "./event"
+], function( jQuery, concat, push, access, rcheckableType, support, data_priv, data_user ) {
+
+var
+       rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
+       rtagName = /<([\w:]+)/,
+       rhtml = /<|&#?\w+;/,
+       rnoInnerhtml = /<(?:script|style|link)/i,
+       // checked="checked" or checked
+       rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
+       rscriptType = /^$|\/(?:java|ecma)script/i,
+       rscriptTypeMasked = /^true\/(.*)/,
+       rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
+
+       // We have to close these tags to support XHTML (#13200)
+       wrapMap = {
+
+               // Support: IE9
+               option: [ 1, "<select multiple='multiple'>", "</select>" ],
+
+               thead: [ 1, "<table>", "</table>" ],
+               col: [ 2, "<table><colgroup>", "</colgroup></table>" ],
+               tr: [ 2, "<table><tbody>", "</tbody></table>" ],
+               td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
+
+               _default: [ 0, "", "" ]
+       };
+
+// Support: IE9
+wrapMap.optgroup = wrapMap.option;
+
+wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+wrapMap.th = wrapMap.td;
+
+// Support: 1.x compatibility
+// Manipulating tables requires a tbody
+function manipulationTarget( elem, content ) {
+       return jQuery.nodeName( elem, "table" ) &&
+               jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ?
+
+               elem.getElementsByTagName("tbody")[0] ||
+                       elem.appendChild( elem.ownerDocument.createElement("tbody") ) :
+               elem;
+}
+
+// Replace/restore the type attribute of script elements for safe DOM manipulation
+function disableScript( elem ) {
+       elem.type = (elem.getAttribute("type") !== null) + "/" + elem.type;
+       return elem;
+}
+function restoreScript( elem ) {
+       var match = rscriptTypeMasked.exec( elem.type );
+
+       if ( match ) {
+               elem.type = match[ 1 ];
+       } else {
+               elem.removeAttribute("type");
+       }
+
+       return elem;
+}
+
+// Mark scripts as having already been evaluated
+function setGlobalEval( elems, refElements ) {
+       var i = 0,
+               l = elems.length;
+
+       for ( ; i < l; i++ ) {
+               data_priv.set(
+                       elems[ i ], "globalEval", !refElements || data_priv.get( refElements[ i ], "globalEval" )
+               );
+       }
+}
+
+function cloneCopyEvent( src, dest ) {
+       var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events;
+
+       if ( dest.nodeType !== 1 ) {
+               return;
+       }
+
+       // 1. Copy private data: events, handlers, etc.
+       if ( data_priv.hasData( src ) ) {
+               pdataOld = data_priv.access( src );
+               pdataCur = data_priv.set( dest, pdataOld );
+               events = pdataOld.events;
+
+               if ( events ) {
+                       delete pdataCur.handle;
+                       pdataCur.events = {};
+
+                       for ( type in events ) {
+                               for ( i = 0, l = events[ type ].length; i < l; i++ ) {
+                                       jQuery.event.add( dest, type, events[ type ][ i ] );
+                               }
+                       }
+               }
+       }
+
+       // 2. Copy user data
+       if ( data_user.hasData( src ) ) {
+               udataOld = data_user.access( src );
+               udataCur = jQuery.extend( {}, udataOld );
+
+               data_user.set( dest, udataCur );
+       }
+}
+
+function getAll( context, tag ) {
+       var ret = context.getElementsByTagName ? context.getElementsByTagName( tag || "*" ) :
+                       context.querySelectorAll ? context.querySelectorAll( tag || "*" ) :
+                       [];
+
+       return tag === undefined || tag && jQuery.nodeName( context, tag ) ?
+               jQuery.merge( [ context ], ret ) :
+               ret;
+}
+
+// Fix IE bugs, see support tests
+function fixInput( src, dest ) {
+       var nodeName = dest.nodeName.toLowerCase();
+
+       // Fails to persist the checked state of a cloned checkbox or radio button.
+       if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
+               dest.checked = src.checked;
+
+       // Fails to return the selected option to the default selected state when cloning options
+       } else if ( nodeName === "input" || nodeName === "textarea" ) {
+               dest.defaultValue = src.defaultValue;
+       }
+}
+
+jQuery.extend({
+       clone: function( elem, dataAndEvents, deepDataAndEvents ) {
+               var i, l, srcElements, destElements,
+                       clone = elem.cloneNode( true ),
+                       inPage = jQuery.contains( elem.ownerDocument, elem );
+
+               // Fix IE cloning issues
+               if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&
+                               !jQuery.isXMLDoc( elem ) ) {
+
+                       // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2
+                       destElements = getAll( clone );
+                       srcElements = getAll( elem );
+
+                       for ( i = 0, l = srcElements.length; i < l; i++ ) {
+                               fixInput( srcElements[ i ], destElements[ i ] );
+                       }
+               }
+
+               // Copy the events from the original to the clone
+               if ( dataAndEvents ) {
+                       if ( deepDataAndEvents ) {
+                               srcElements = srcElements || getAll( elem );
+                               destElements = destElements || getAll( clone );
+
+                               for ( i = 0, l = srcElements.length; i < l; i++ ) {
+                                       cloneCopyEvent( srcElements[ i ], destElements[ i ] );
+                               }
+                       } else {
+                               cloneCopyEvent( elem, clone );
+                       }
+               }
+
+               // Preserve script evaluation history
+               destElements = getAll( clone, "script" );
+               if ( destElements.length > 0 ) {
+                       setGlobalEval( destElements, !inPage && getAll( elem, "script" ) );
+               }
+
+               // Return the cloned set
+               return clone;
+       },
+
+       buildFragment: function( elems, context, scripts, selection ) {
+               var elem, tmp, tag, wrap, contains, j,
+                       fragment = context.createDocumentFragment(),
+                       nodes = [],
+                       i = 0,
+                       l = elems.length;
+
+               for ( ; i < l; i++ ) {
+                       elem = elems[ i ];
+
+                       if ( elem || elem === 0 ) {
+
+                               // Add nodes directly
+                               if ( jQuery.type( elem ) === "object" ) {
+                                       // Support: QtWebKit, PhantomJS
+                                       // push.apply(_, arraylike) throws on ancient WebKit
+                                       jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );
+
+                               // Convert non-html into a text node
+                               } else if ( !rhtml.test( elem ) ) {
+                                       nodes.push( context.createTextNode( elem ) );
+
+                               // Convert html into DOM nodes
+                               } else {
+                                       tmp = tmp || fragment.appendChild( context.createElement("div") );
+
+                                       // Deserialize a standard representation
+                                       tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase();
+                                       wrap = wrapMap[ tag ] || wrapMap._default;
+                                       tmp.innerHTML = wrap[ 1 ] + elem.replace( rxhtmlTag, "<$1></$2>" ) + wrap[ 2 ];
+
+                                       // Descend through wrappers to the right content
+                                       j = wrap[ 0 ];
+                                       while ( j-- ) {
+                                               tmp = tmp.lastChild;
+                                       }
+
+                                       // Support: QtWebKit, PhantomJS
+                                       // push.apply(_, arraylike) throws on ancient WebKit
+                                       jQuery.merge( nodes, tmp.childNodes );
+
+                                       // Remember the top-level container
+                                       tmp = fragment.firstChild;
+
+                                       // Ensure the created nodes are orphaned (#12392)
+                                       tmp.textContent = "";
+                               }
+                       }
+               }
+
+               // Remove wrapper from fragment
+               fragment.textContent = "";
+
+               i = 0;
+               while ( (elem = nodes[ i++ ]) ) {
+
+                       // #4087 - If origin and destination elements are the same, and this is
+                       // that element, do not do anything
+                       if ( selection && jQuery.inArray( elem, selection ) !== -1 ) {
+                               continue;
+                       }
+
+                       contains = jQuery.contains( elem.ownerDocument, elem );
+
+                       // Append to fragment
+                       tmp = getAll( fragment.appendChild( elem ), "script" );
+
+                       // Preserve script evaluation history
+                       if ( contains ) {
+                               setGlobalEval( tmp );
+                       }
+
+                       // Capture executables
+                       if ( scripts ) {
+                               j = 0;
+                               while ( (elem = tmp[ j++ ]) ) {
+                                       if ( rscriptType.test( elem.type || "" ) ) {
+                                               scripts.push( elem );
+                                       }
+                               }
+                       }
+               }
+
+               return fragment;
+       },
+
+       cleanData: function( elems ) {
+               var data, elem, type, key,
+                       special = jQuery.event.special,
+                       i = 0;
+
+               for ( ; (elem = elems[ i ]) !== undefined; i++ ) {
+                       if ( jQuery.acceptData( elem ) ) {
+                               key = elem[ data_priv.expando ];
+
+                               if ( key && (data = data_priv.cache[ key ]) ) {
+                                       if ( data.events ) {
+                                               for ( type in data.events ) {
+                                                       if ( special[ type ] ) {
+                                                               jQuery.event.remove( elem, type );
+
+                                                       // This is a shortcut to avoid jQuery.event.remove's overhead
+                                                       } else {
+                                                               jQuery.removeEvent( elem, type, data.handle );
+                                                       }
+                                               }
+                                       }
+                                       if ( data_priv.cache[ key ] ) {
+                                               // Discard any remaining `private` data
+                                               delete data_priv.cache[ key ];
+                                       }
+                               }
+                       }
+                       // Discard any remaining `user` data
+                       delete data_user.cache[ elem[ data_user.expando ] ];
+               }
+       }
+});
+
+jQuery.fn.extend({
+       text: function( value ) {
+               return access( this, function( value ) {
+                       return value === undefined ?
+                               jQuery.text( this ) :
+                               this.empty().each(function() {
+                                       if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+                                               this.textContent = value;
+                                       }
+                               });
+               }, null, value, arguments.length );
+       },
+
+       append: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+                               var target = manipulationTarget( this, elem );
+                               target.appendChild( elem );
+                       }
+               });
+       },
+
+       prepend: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+                               var target = manipulationTarget( this, elem );
+                               target.insertBefore( elem, target.firstChild );
+                       }
+               });
+       },
+
+       before: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.parentNode ) {
+                               this.parentNode.insertBefore( elem, this );
+                       }
+               });
+       },
+
+       after: function() {
+               return this.domManip( arguments, function( elem ) {
+                       if ( this.parentNode ) {
+                               this.parentNode.insertBefore( elem, this.nextSibling );
+                       }
+               });
+       },
+
+       remove: function( selector, keepData /* Internal Use Only */ ) {
+               var elem,
+                       elems = selector ? jQuery.filter( selector, this ) : this,
+                       i = 0;
+
+               for ( ; (elem = elems[i]) != null; i++ ) {
+                       if ( !keepData && elem.nodeType === 1 ) {
+                               jQuery.cleanData( getAll( elem ) );
+                       }
+
+                       if ( elem.parentNode ) {
+                               if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) {
+                                       setGlobalEval( getAll( elem, "script" ) );
+                               }
+                               elem.parentNode.removeChild( elem );
+                       }
+               }
+
+               return this;
+       },
+
+       empty: function() {
+               var elem,
+                       i = 0;
+
+               for ( ; (elem = this[i]) != null; i++ ) {
+                       if ( elem.nodeType === 1 ) {
+
+                               // Prevent memory leaks
+                               jQuery.cleanData( getAll( elem, false ) );
+
+                               // Remove any remaining nodes
+                               elem.textContent = "";
+                       }
+               }
+
+               return this;
+       },
+
+       clone: function( dataAndEvents, deepDataAndEvents ) {
+               dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
+               deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
+
+               return this.map(function() {
+                       return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
+               });
+       },
+
+       html: function( value ) {
+               return access( this, function( value ) {
+                       var elem = this[ 0 ] || {},
+                               i = 0,
+                               l = this.length;
+
+                       if ( value === undefined && elem.nodeType === 1 ) {
+                               return elem.innerHTML;
+                       }
+
+                       // See if we can take a shortcut and just use innerHTML
+                       if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
+                               !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) {
+
+                               value = value.replace( rxhtmlTag, "<$1></$2>" );
+
+                               try {
+                                       for ( ; i < l; i++ ) {
+                                               elem = this[ i ] || {};
+
+                                               // Remove element nodes and prevent memory leaks
+                                               if ( elem.nodeType === 1 ) {
+                                                       jQuery.cleanData( getAll( elem, false ) );
+                                                       elem.innerHTML = value;
+                                               }
+                                       }
+
+                                       elem = 0;
+
+                               // If using innerHTML throws an exception, use the fallback method
+                               } catch( e ) {}
+                       }
+
+                       if ( elem ) {
+                               this.empty().append( value );
+                       }
+               }, null, value, arguments.length );
+       },
+
+       replaceWith: function() {
+               var arg = arguments[ 0 ];
+
+               // Make the changes, replacing each context element with the new content
+               this.domManip( arguments, function( elem ) {
+                       arg = this.parentNode;
+
+                       jQuery.cleanData( getAll( this ) );
+
+                       if ( arg ) {
+                               arg.replaceChild( elem, this );
+                       }
+               });
+
+               // Force removal if there was no new content (e.g., from empty arguments)
+               return arg && (arg.length || arg.nodeType) ? this : this.remove();
+       },
+
+       detach: function( selector ) {
+               return this.remove( selector, true );
+       },
+
+       domManip: function( args, callback ) {
+
+               // Flatten any nested arrays
+               args = concat.apply( [], args );
+
+               var fragment, first, scripts, hasScripts, node, doc,
+                       i = 0,
+                       l = this.length,
+                       set = this,
+                       iNoClone = l - 1,
+                       value = args[ 0 ],
+                       isFunction = jQuery.isFunction( value );
+
+               // We can't cloneNode fragments that contain checked, in WebKit
+               if ( isFunction ||
+                               ( l > 1 && typeof value === "string" &&
+                                       !support.checkClone && rchecked.test( value ) ) ) {
+                       return this.each(function( index ) {
+                               var self = set.eq( index );
+                               if ( isFunction ) {
+                                       args[ 0 ] = value.call( this, index, self.html() );
+                               }
+                               self.domManip( args, callback );
+                       });
+               }
+
+               if ( l ) {
+                       fragment = jQuery.buildFragment( args, this[ 0 ].ownerDocument, false, this );
+                       first = fragment.firstChild;
+
+                       if ( fragment.childNodes.length === 1 ) {
+                               fragment = first;
+                       }
+
+                       if ( first ) {
+                               scripts = jQuery.map( getAll( fragment, "script" ), disableScript );
+                               hasScripts = scripts.length;
+
+                               // Use the original fragment for the last item instead of the first because it can end up
+                               // being emptied incorrectly in certain situations (#8070).
+                               for ( ; i < l; i++ ) {
+                                       node = fragment;
+
+                                       if ( i !== iNoClone ) {
+                                               node = jQuery.clone( node, true, true );
+
+                                               // Keep references to cloned scripts for later restoration
+                                               if ( hasScripts ) {
+                                                       // Support: QtWebKit
+                                                       // jQuery.merge because push.apply(_, arraylike) throws
+                                                       jQuery.merge( scripts, getAll( node, "script" ) );
+                                               }
+                                       }
+
+                                       callback.call( this[ i ], node, i );
+                               }
+
+                               if ( hasScripts ) {
+                                       doc = scripts[ scripts.length - 1 ].ownerDocument;
+
+                                       // Reenable scripts
+                                       jQuery.map( scripts, restoreScript );
+
+                                       // Evaluate executable scripts on first document insertion
+                                       for ( i = 0; i < hasScripts; i++ ) {
+                                               node = scripts[ i ];
+                                               if ( rscriptType.test( node.type || "" ) &&
+                                                       !data_priv.access( node, "globalEval" ) && jQuery.contains( doc, node ) ) {
+
+                                                       if ( node.src ) {
+                                                               // Optional AJAX dependency, but won't run scripts if not present
+                                                               if ( jQuery._evalUrl ) {
+                                                                       jQuery._evalUrl( node.src );
+                                                               }
+                                                       } else {
+                                                               jQuery.globalEval( node.textContent.replace( rcleanScript, "" ) );
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       }
+});
+
+jQuery.each({
+       appendTo: "append",
+       prependTo: "prepend",
+       insertBefore: "before",
+       insertAfter: "after",
+       replaceAll: "replaceWith"
+}, function( name, original ) {
+       jQuery.fn[ name ] = function( selector ) {
+               var elems,
+                       ret = [],
+                       insert = jQuery( selector ),
+                       last = insert.length - 1,
+                       i = 0;
+
+               for ( ; i <= last; i++ ) {
+                       elems = i === last ? this : this.clone( true );
+                       jQuery( insert[ i ] )[ original ]( elems );
+
+                       // Support: QtWebKit
+                       // .get() because push.apply(_, arraylike) throws
+                       push.apply( ret, elems.get() );
+               }
+
+               return this.pushStack( ret );
+       };
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/_evalUrl.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/_evalUrl.js
new file mode 100644 (file)
index 0000000..6704749
--- /dev/null
@@ -0,0 +1,18 @@
+define([
+       "../ajax"
+], function( jQuery ) {
+
+jQuery._evalUrl = function( url ) {
+       return jQuery.ajax({
+               url: url,
+               type: "GET",
+               dataType: "script",
+               async: false,
+               global: false,
+               "throws": true
+       });
+};
+
+return jQuery._evalUrl;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/support.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/support.js
new file mode 100644 (file)
index 0000000..822a014
--- /dev/null
@@ -0,0 +1,32 @@
+define([
+       "../var/support"
+], function( support ) {
+
+(function() {
+       var fragment = document.createDocumentFragment(),
+               div = fragment.appendChild( document.createElement( "div" ) ),
+               input = document.createElement( "input" );
+
+       // Support: Safari<=5.1
+       // Check state lost if the name is set (#11217)
+       // Support: Windows Web Apps (WWA)
+       // `name` and `type` must use .setAttribute for WWA (#14901)
+       input.setAttribute( "type", "radio" );
+       input.setAttribute( "checked", "checked" );
+       input.setAttribute( "name", "t" );
+
+       div.appendChild( input );
+
+       // Support: Safari<=5.1, Android<4.2
+       // Older WebKit doesn't clone checked state correctly in fragments
+       support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;
+
+       // Support: IE<=11+
+       // Make sure textarea (and checkbox) defaultValue is properly cloned
+       div.innerHTML = "<textarea>x</textarea>";
+       support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;
+})();
+
+return support;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/var/rcheckableType.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/manipulation/var/rcheckableType.js
new file mode 100644 (file)
index 0000000..c27a15d
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return (/^(?:checkbox|radio)$/i);
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/offset.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/offset.js
new file mode 100644 (file)
index 0000000..4c34fd0
--- /dev/null
@@ -0,0 +1,207 @@
+define([
+       "./core",
+       "./var/strundefined",
+       "./core/access",
+       "./css/var/rnumnonpx",
+       "./css/curCSS",
+       "./css/addGetHookIf",
+       "./css/support",
+
+       "./core/init",
+       "./css",
+       "./selector" // contains
+], function( jQuery, strundefined, access, rnumnonpx, curCSS, addGetHookIf, support ) {
+
+var docElem = window.document.documentElement;
+
+/**
+ * Gets a window from an element
+ */
+function getWindow( elem ) {
+       return jQuery.isWindow( elem ) ? elem : elem.nodeType === 9 && elem.defaultView;
+}
+
+jQuery.offset = {
+       setOffset: function( elem, options, i ) {
+               var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
+                       position = jQuery.css( elem, "position" ),
+                       curElem = jQuery( elem ),
+                       props = {};
+
+               // Set position first, in-case top/left are set even on static elem
+               if ( position === "static" ) {
+                       elem.style.position = "relative";
+               }
+
+               curOffset = curElem.offset();
+               curCSSTop = jQuery.css( elem, "top" );
+               curCSSLeft = jQuery.css( elem, "left" );
+               calculatePosition = ( position === "absolute" || position === "fixed" ) &&
+                       ( curCSSTop + curCSSLeft ).indexOf("auto") > -1;
+
+               // Need to be able to calculate position if either
+               // top or left is auto and position is either absolute or fixed
+               if ( calculatePosition ) {
+                       curPosition = curElem.position();
+                       curTop = curPosition.top;
+                       curLeft = curPosition.left;
+
+               } else {
+                       curTop = parseFloat( curCSSTop ) || 0;
+                       curLeft = parseFloat( curCSSLeft ) || 0;
+               }
+
+               if ( jQuery.isFunction( options ) ) {
+                       options = options.call( elem, i, curOffset );
+               }
+
+               if ( options.top != null ) {
+                       props.top = ( options.top - curOffset.top ) + curTop;
+               }
+               if ( options.left != null ) {
+                       props.left = ( options.left - curOffset.left ) + curLeft;
+               }
+
+               if ( "using" in options ) {
+                       options.using.call( elem, props );
+
+               } else {
+                       curElem.css( props );
+               }
+       }
+};
+
+jQuery.fn.extend({
+       offset: function( options ) {
+               if ( arguments.length ) {
+                       return options === undefined ?
+                               this :
+                               this.each(function( i ) {
+                                       jQuery.offset.setOffset( this, options, i );
+                               });
+               }
+
+               var docElem, win,
+                       elem = this[ 0 ],
+                       box = { top: 0, left: 0 },
+                       doc = elem && elem.ownerDocument;
+
+               if ( !doc ) {
+                       return;
+               }
+
+               docElem = doc.documentElement;
+
+               // Make sure it's not a disconnected DOM node
+               if ( !jQuery.contains( docElem, elem ) ) {
+                       return box;
+               }
+
+               // Support: BlackBerry 5, iOS 3 (original iPhone)
+               // If we don't have gBCR, just use 0,0 rather than error
+               if ( typeof elem.getBoundingClientRect !== strundefined ) {
+                       box = elem.getBoundingClientRect();
+               }
+               win = getWindow( doc );
+               return {
+                       top: box.top + win.pageYOffset - docElem.clientTop,
+                       left: box.left + win.pageXOffset - docElem.clientLeft
+               };
+       },
+
+       position: function() {
+               if ( !this[ 0 ] ) {
+                       return;
+               }
+
+               var offsetParent, offset,
+                       elem = this[ 0 ],
+                       parentOffset = { top: 0, left: 0 };
+
+               // Fixed elements are offset from window (parentOffset = {top:0, left: 0}, because it is its only offset parent
+               if ( jQuery.css( elem, "position" ) === "fixed" ) {
+                       // Assume getBoundingClientRect is there when computed position is fixed
+                       offset = elem.getBoundingClientRect();
+
+               } else {
+                       // Get *real* offsetParent
+                       offsetParent = this.offsetParent();
+
+                       // Get correct offsets
+                       offset = this.offset();
+                       if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) {
+                               parentOffset = offsetParent.offset();
+                       }
+
+                       // Add offsetParent borders
+                       parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true );
+                       parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true );
+               }
+
+               // Subtract parent offsets and element margins
+               return {
+                       top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
+                       left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true )
+               };
+       },
+
+       offsetParent: function() {
+               return this.map(function() {
+                       var offsetParent = this.offsetParent || docElem;
+
+                       while ( offsetParent && ( !jQuery.nodeName( offsetParent, "html" ) && jQuery.css( offsetParent, "position" ) === "static" ) ) {
+                               offsetParent = offsetParent.offsetParent;
+                       }
+
+                       return offsetParent || docElem;
+               });
+       }
+});
+
+// Create scrollLeft and scrollTop methods
+jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
+       var top = "pageYOffset" === prop;
+
+       jQuery.fn[ method ] = function( val ) {
+               return access( this, function( elem, method, val ) {
+                       var win = getWindow( elem );
+
+                       if ( val === undefined ) {
+                               return win ? win[ prop ] : elem[ method ];
+                       }
+
+                       if ( win ) {
+                               win.scrollTo(
+                                       !top ? val : window.pageXOffset,
+                                       top ? val : window.pageYOffset
+                               );
+
+                       } else {
+                               elem[ method ] = val;
+                       }
+               }, method, val, arguments.length, null );
+       };
+});
+
+// Support: Safari<7+, Chrome<37+
+// Add the top/left cssHooks using jQuery.fn.position
+// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
+// Blink bug: https://code.google.com/p/chromium/issues/detail?id=229280
+// getComputedStyle returns percent when specified for top/left/bottom/right;
+// rather than make the css module depend on the offset module, just check for it here
+jQuery.each( [ "top", "left" ], function( i, prop ) {
+       jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
+               function( elem, computed ) {
+                       if ( computed ) {
+                               computed = curCSS( elem, prop );
+                               // If curCSS returns percentage, fallback to offset
+                               return rnumnonpx.test( computed ) ?
+                                       jQuery( elem ).position()[ prop ] + "px" :
+                                       computed;
+                       }
+               }
+       );
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/outro.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/outro.js
new file mode 100644 (file)
index 0000000..be4600a
--- /dev/null
@@ -0,0 +1 @@
+}));
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/queue.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/queue.js
new file mode 100644 (file)
index 0000000..199c56d
--- /dev/null
@@ -0,0 +1,142 @@
+define([
+       "./core",
+       "./data/var/data_priv",
+       "./deferred",
+       "./callbacks"
+], function( jQuery, data_priv ) {
+
+jQuery.extend({
+       queue: function( elem, type, data ) {
+               var queue;
+
+               if ( elem ) {
+                       type = ( type || "fx" ) + "queue";
+                       queue = data_priv.get( elem, type );
+
+                       // Speed up dequeue by getting out quickly if this is just a lookup
+                       if ( data ) {
+                               if ( !queue || jQuery.isArray( data ) ) {
+                                       queue = data_priv.access( elem, type, jQuery.makeArray(data) );
+                               } else {
+                                       queue.push( data );
+                               }
+                       }
+                       return queue || [];
+               }
+       },
+
+       dequeue: function( elem, type ) {
+               type = type || "fx";
+
+               var queue = jQuery.queue( elem, type ),
+                       startLength = queue.length,
+                       fn = queue.shift(),
+                       hooks = jQuery._queueHooks( elem, type ),
+                       next = function() {
+                               jQuery.dequeue( elem, type );
+                       };
+
+               // If the fx queue is dequeued, always remove the progress sentinel
+               if ( fn === "inprogress" ) {
+                       fn = queue.shift();
+                       startLength--;
+               }
+
+               if ( fn ) {
+
+                       // Add a progress sentinel to prevent the fx queue from being
+                       // automatically dequeued
+                       if ( type === "fx" ) {
+                               queue.unshift( "inprogress" );
+                       }
+
+                       // Clear up the last queue stop function
+                       delete hooks.stop;
+                       fn.call( elem, next, hooks );
+               }
+
+               if ( !startLength && hooks ) {
+                       hooks.empty.fire();
+               }
+       },
+
+       // Not public - generate a queueHooks object, or return the current one
+       _queueHooks: function( elem, type ) {
+               var key = type + "queueHooks";
+               return data_priv.get( elem, key ) || data_priv.access( elem, key, {
+                       empty: jQuery.Callbacks("once memory").add(function() {
+                               data_priv.remove( elem, [ type + "queue", key ] );
+                       })
+               });
+       }
+});
+
+jQuery.fn.extend({
+       queue: function( type, data ) {
+               var setter = 2;
+
+               if ( typeof type !== "string" ) {
+                       data = type;
+                       type = "fx";
+                       setter--;
+               }
+
+               if ( arguments.length < setter ) {
+                       return jQuery.queue( this[0], type );
+               }
+
+               return data === undefined ?
+                       this :
+                       this.each(function() {
+                               var queue = jQuery.queue( this, type, data );
+
+                               // Ensure a hooks for this queue
+                               jQuery._queueHooks( this, type );
+
+                               if ( type === "fx" && queue[0] !== "inprogress" ) {
+                                       jQuery.dequeue( this, type );
+                               }
+                       });
+       },
+       dequeue: function( type ) {
+               return this.each(function() {
+                       jQuery.dequeue( this, type );
+               });
+       },
+       clearQueue: function( type ) {
+               return this.queue( type || "fx", [] );
+       },
+       // Get a promise resolved when queues of a certain type
+       // are emptied (fx is the type by default)
+       promise: function( type, obj ) {
+               var tmp,
+                       count = 1,
+                       defer = jQuery.Deferred(),
+                       elements = this,
+                       i = this.length,
+                       resolve = function() {
+                               if ( !( --count ) ) {
+                                       defer.resolveWith( elements, [ elements ] );
+                               }
+                       };
+
+               if ( typeof type !== "string" ) {
+                       obj = type;
+                       type = undefined;
+               }
+               type = type || "fx";
+
+               while ( i-- ) {
+                       tmp = data_priv.get( elements[ i ], type + "queueHooks" );
+                       if ( tmp && tmp.empty ) {
+                               count++;
+                               tmp.empty.add( resolve );
+                       }
+               }
+               resolve();
+               return defer.promise( obj );
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/queue/delay.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/queue/delay.js
new file mode 100644 (file)
index 0000000..4b4498c
--- /dev/null
@@ -0,0 +1,22 @@
+define([
+       "../core",
+       "../queue",
+       "../effects" // Delay is optional because of this dependency
+], function( jQuery ) {
+
+// Based off of the plugin by Clint Helfers, with permission.
+// http://blindsignals.com/index.php/2009/07/jquery-delay/
+jQuery.fn.delay = function( time, type ) {
+       time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
+       type = type || "fx";
+
+       return this.queue( type, function( next, hooks ) {
+               var timeout = setTimeout( next, time );
+               hooks.stop = function() {
+                       clearTimeout( timeout );
+               };
+       });
+};
+
+return jQuery.fn.delay;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector-native.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector-native.js
new file mode 100644 (file)
index 0000000..d8163c2
--- /dev/null
@@ -0,0 +1,172 @@
+define([
+       "./core"
+], function( jQuery ) {
+
+/*
+ * Optional (non-Sizzle) selector module for custom builds.
+ *
+ * Note that this DOES NOT SUPPORT many documented jQuery
+ * features in exchange for its smaller size:
+ *
+ * Attribute not equal selector
+ * Positional selectors (:first; :eq(n); :odd; etc.)
+ * Type selectors (:input; :checkbox; :button; etc.)
+ * State-based selectors (:animated; :visible; :hidden; etc.)
+ * :has(selector)
+ * :not(complex selector)
+ * custom selectors via Sizzle extensions
+ * Leading combinators (e.g., $collection.find("> *"))
+ * Reliable functionality on XML fragments
+ * Requiring all parts of a selector to match elements under context
+ *   (e.g., $div.find("div > *") now matches children of $div)
+ * Matching against non-elements
+ * Reliable sorting of disconnected nodes
+ * querySelectorAll bug fixes (e.g., unreliable :focus on WebKit)
+ *
+ * If any of these are unacceptable tradeoffs, either use Sizzle or
+ * customize this stub for the project's specific needs.
+ */
+
+var docElem = window.document.documentElement,
+       selector_hasDuplicate,
+       matches = docElem.matches ||
+               docElem.webkitMatchesSelector ||
+               docElem.mozMatchesSelector ||
+               docElem.oMatchesSelector ||
+               docElem.msMatchesSelector,
+       selector_sortOrder = function( a, b ) {
+               // Flag for duplicate removal
+               if ( a === b ) {
+                       selector_hasDuplicate = true;
+                       return 0;
+               }
+
+               var compare = b.compareDocumentPosition && a.compareDocumentPosition && a.compareDocumentPosition( b );
+
+               if ( compare ) {
+                       // Disconnected nodes
+                       if ( compare & 1 ) {
+
+                               // Choose the first element that is related to our document
+                               if ( a === document || jQuery.contains(document, a) ) {
+                                       return -1;
+                               }
+                               if ( b === document || jQuery.contains(document, b) ) {
+                                       return 1;
+                               }
+
+                               // Maintain original order
+                               return 0;
+                       }
+
+                       return compare & 4 ? -1 : 1;
+               }
+
+               // Not directly comparable, sort on existence of method
+               return a.compareDocumentPosition ? -1 : 1;
+       };
+
+jQuery.extend({
+       find: function( selector, context, results, seed ) {
+               var elem, nodeType,
+                       i = 0;
+
+               results = results || [];
+               context = context || document;
+
+               // Same basic safeguard as Sizzle
+               if ( !selector || typeof selector !== "string" ) {
+                       return results;
+               }
+
+               // Early return if context is not an element or document
+               if ( (nodeType = context.nodeType) !== 1 && nodeType !== 9 ) {
+                       return [];
+               }
+
+               if ( seed ) {
+                       while ( (elem = seed[i++]) ) {
+                               if ( jQuery.find.matchesSelector(elem, selector) ) {
+                                       results.push( elem );
+                               }
+                       }
+               } else {
+                       jQuery.merge( results, context.querySelectorAll(selector) );
+               }
+
+               return results;
+       },
+       unique: function( results ) {
+               var elem,
+                       duplicates = [],
+                       i = 0,
+                       j = 0;
+
+               selector_hasDuplicate = false;
+               results.sort( selector_sortOrder );
+
+               if ( selector_hasDuplicate ) {
+                       while ( (elem = results[i++]) ) {
+                               if ( elem === results[ i ] ) {
+                                       j = duplicates.push( i );
+                               }
+                       }
+                       while ( j-- ) {
+                               results.splice( duplicates[ j ], 1 );
+                       }
+               }
+
+               return results;
+       },
+       text: function( elem ) {
+               var node,
+                       ret = "",
+                       i = 0,
+                       nodeType = elem.nodeType;
+
+               if ( !nodeType ) {
+                       // If no nodeType, this is expected to be an array
+                       while ( (node = elem[i++]) ) {
+                               // Do not traverse comment nodes
+                               ret += jQuery.text( node );
+                       }
+               } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
+                       // Use textContent for elements
+                       return elem.textContent;
+               } else if ( nodeType === 3 || nodeType === 4 ) {
+                       return elem.nodeValue;
+               }
+               // Do not include comment or processing instruction nodes
+
+               return ret;
+       },
+       contains: function( a, b ) {
+               var adown = a.nodeType === 9 ? a.documentElement : a,
+                       bup = b && b.parentNode;
+               return a === bup || !!( bup && bup.nodeType === 1 && adown.contains(bup) );
+       },
+       isXMLDoc: function( elem ) {
+               return (elem.ownerDocument || elem).documentElement.nodeName !== "HTML";
+       },
+       expr: {
+               attrHandle: {},
+               match: {
+                       bool: /^(?:checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped)$/i,
+                       needsContext: /^[\x20\t\r\n\f]*[>+~]/
+               }
+       }
+});
+
+jQuery.extend( jQuery.find, {
+       matches: function( expr, elements ) {
+               return jQuery.find( expr, null, null, elements );
+       },
+       matchesSelector: function( elem, expr ) {
+               return matches.call( elem, expr );
+       },
+       attr: function( elem, name ) {
+               return elem.getAttribute( name );
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector-sizzle.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector-sizzle.js
new file mode 100644 (file)
index 0000000..7d3926b
--- /dev/null
@@ -0,0 +1,14 @@
+define([
+       "./core",
+       "sizzle"
+], function( jQuery, Sizzle ) {
+
+jQuery.find = Sizzle;
+jQuery.expr = Sizzle.selectors;
+jQuery.expr[":"] = jQuery.expr.pseudos;
+jQuery.unique = Sizzle.uniqueSort;
+jQuery.text = Sizzle.getText;
+jQuery.isXMLDoc = Sizzle.isXML;
+jQuery.contains = Sizzle.contains;
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/selector.js
new file mode 100644 (file)
index 0000000..01e9733
--- /dev/null
@@ -0,0 +1 @@
+define([ "./selector-sizzle" ]);
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/serialize.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/serialize.js
new file mode 100644 (file)
index 0000000..0d6dfec
--- /dev/null
@@ -0,0 +1,111 @@
+define([
+       "./core",
+       "./manipulation/var/rcheckableType",
+       "./core/init",
+       "./traversing", // filter
+       "./attributes/prop"
+], function( jQuery, rcheckableType ) {
+
+var r20 = /%20/g,
+       rbracket = /\[\]$/,
+       rCRLF = /\r?\n/g,
+       rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,
+       rsubmittable = /^(?:input|select|textarea|keygen)/i;
+
+function buildParams( prefix, obj, traditional, add ) {
+       var name;
+
+       if ( jQuery.isArray( obj ) ) {
+               // Serialize array item.
+               jQuery.each( obj, function( i, v ) {
+                       if ( traditional || rbracket.test( prefix ) ) {
+                               // Treat each array item as a scalar.
+                               add( prefix, v );
+
+                       } else {
+                               // Item is non-scalar (array or object), encode its numeric index.
+                               buildParams( prefix + "[" + ( typeof v === "object" ? i : "" ) + "]", v, traditional, add );
+                       }
+               });
+
+       } else if ( !traditional && jQuery.type( obj ) === "object" ) {
+               // Serialize object item.
+               for ( name in obj ) {
+                       buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
+               }
+
+       } else {
+               // Serialize scalar item.
+               add( prefix, obj );
+       }
+}
+
+// Serialize an array of form elements or a set of
+// key/values into a query string
+jQuery.param = function( a, traditional ) {
+       var prefix,
+               s = [],
+               add = function( key, value ) {
+                       // If value is a function, invoke it and return its value
+                       value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value );
+                       s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
+               };
+
+       // Set traditional to true for jQuery <= 1.3.2 behavior.
+       if ( traditional === undefined ) {
+               traditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;
+       }
+
+       // If an array was passed in, assume that it is an array of form elements.
+       if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
+               // Serialize the form elements
+               jQuery.each( a, function() {
+                       add( this.name, this.value );
+               });
+
+       } else {
+               // If traditional, encode the "old" way (the way 1.3.2 or older
+               // did it), otherwise encode params recursively.
+               for ( prefix in a ) {
+                       buildParams( prefix, a[ prefix ], traditional, add );
+               }
+       }
+
+       // Return the resulting serialization
+       return s.join( "&" ).replace( r20, "+" );
+};
+
+jQuery.fn.extend({
+       serialize: function() {
+               return jQuery.param( this.serializeArray() );
+       },
+       serializeArray: function() {
+               return this.map(function() {
+                       // Can add propHook for "elements" to filter or add form elements
+                       var elements = jQuery.prop( this, "elements" );
+                       return elements ? jQuery.makeArray( elements ) : this;
+               })
+               .filter(function() {
+                       var type = this.type;
+
+                       // Use .is( ":disabled" ) so that fieldset[disabled] works
+                       return this.name && !jQuery( this ).is( ":disabled" ) &&
+                               rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
+                               ( this.checked || !rcheckableType.test( type ) );
+               })
+               .map(function( i, elem ) {
+                       var val = jQuery( this ).val();
+
+                       return val == null ?
+                               null :
+                               jQuery.isArray( val ) ?
+                                       jQuery.map( val, function( val ) {
+                                               return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+                                       }) :
+                                       { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+               }).get();
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.js
new file mode 100644 (file)
index 0000000..89aecbc
--- /dev/null
@@ -0,0 +1,2067 @@
+/*!
+ * Sizzle CSS Selector Engine v2.2.0-pre
+ * http://sizzlejs.com/
+ *
+ * Copyright 2008, 2014 jQuery Foundation, Inc. and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2014-12-16
+ */
+(function( window ) {
+
+var i,
+       support,
+       Expr,
+       getText,
+       isXML,
+       tokenize,
+       compile,
+       select,
+       outermostContext,
+       sortInput,
+       hasDuplicate,
+
+       // Local document vars
+       setDocument,
+       document,
+       docElem,
+       documentIsHTML,
+       rbuggyQSA,
+       rbuggyMatches,
+       matches,
+       contains,
+
+       // Instance-specific data
+       expando = "sizzle" + 1 * new Date(),
+       preferredDoc = window.document,
+       dirruns = 0,
+       done = 0,
+       classCache = createCache(),
+       tokenCache = createCache(),
+       compilerCache = createCache(),
+       sortOrder = function( a, b ) {
+               if ( a === b ) {
+                       hasDuplicate = true;
+               }
+               return 0;
+       },
+
+       // General-purpose constants
+       MAX_NEGATIVE = 1 << 31,
+
+       // Instance methods
+       hasOwn = ({}).hasOwnProperty,
+       arr = [],
+       pop = arr.pop,
+       push_native = arr.push,
+       push = arr.push,
+       slice = arr.slice,
+       // Use a stripped-down indexOf as it's faster than native
+       // http://jsperf.com/thor-indexof-vs-for/5
+       indexOf = function( list, elem ) {
+               var i = 0,
+                       len = list.length;
+               for ( ; i < len; i++ ) {
+                       if ( list[i] === elem ) {
+                               return i;
+                       }
+               }
+               return -1;
+       },
+
+       booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
+
+       // Regular expressions
+
+       // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace
+       whitespace = "[\\x20\\t\\r\\n\\f]",
+       // http://www.w3.org/TR/css3-syntax/#characters
+       characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
+
+       // Loosely modeled on CSS identifier characters
+       // An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors
+       // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
+       identifier = characterEncoding.replace( "w", "w#" ),
+
+       // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
+       attributes = "\\[" + whitespace + "*(" + characterEncoding + ")(?:" + whitespace +
+               // Operator (capture 2)
+               "*([*^$|!~]?=)" + whitespace +
+               // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
+               "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
+               "*\\]",
+
+       pseudos = ":(" + characterEncoding + ")(?:\\((" +
+               // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
+               // 1. quoted (capture 3; capture 4 or capture 5)
+               "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
+               // 2. simple (capture 6)
+               "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
+               // 3. anything else (capture 2)
+               ".*" +
+               ")\\)|)",
+
+       // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
+       rwhitespace = new RegExp( whitespace + "+", "g" ),
+       rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
+
+       rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
+       rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ),
+
+       rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ),
+
+       rpseudo = new RegExp( pseudos ),
+       ridentifier = new RegExp( "^" + identifier + "$" ),
+
+       matchExpr = {
+               "ID": new RegExp( "^#(" + characterEncoding + ")" ),
+               "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ),
+               "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ),
+               "ATTR": new RegExp( "^" + attributes ),
+               "PSEUDO": new RegExp( "^" + pseudos ),
+               "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +
+                       "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
+                       "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
+               "bool": new RegExp( "^(?:" + booleans + ")$", "i" ),
+               // For use in libraries implementing .is()
+               // We use this for POS matching in `select`
+               "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +
+                       whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
+       },
+
+       rinputs = /^(?:input|select|textarea|button)$/i,
+       rheader = /^h\d$/i,
+
+       rnative = /^[^{]+\{\s*\[native \w/,
+
+       // Easily-parseable/retrievable ID or TAG or CLASS selectors
+       rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
+
+       rsibling = /[+~]/,
+       rescape = /'|\\/g,
+
+       // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters
+       runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ),
+       funescape = function( _, escaped, escapedWhitespace ) {
+               var high = "0x" + escaped - 0x10000;
+               // NaN means non-codepoint
+               // Support: Firefox<24
+               // Workaround erroneous numeric interpretation of +"0x"
+               return high !== high || escapedWhitespace ?
+                       escaped :
+                       high < 0 ?
+                               // BMP codepoint
+                               String.fromCharCode( high + 0x10000 ) :
+                               // Supplemental Plane codepoint (surrogate pair)
+                               String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
+       },
+
+       // Used for iframes
+       // See setDocument()
+       // Removing the function wrapper causes a "Permission Denied"
+       // error in IE
+       unloadHandler = function() {
+               setDocument();
+       };
+
+// Optimize for push.apply( _, NodeList )
+try {
+       push.apply(
+               (arr = slice.call( preferredDoc.childNodes )),
+               preferredDoc.childNodes
+       );
+       // Support: Android<4.0
+       // Detect silently failing push.apply
+       arr[ preferredDoc.childNodes.length ].nodeType;
+} catch ( e ) {
+       push = { apply: arr.length ?
+
+               // Leverage slice if possible
+               function( target, els ) {
+                       push_native.apply( target, slice.call(els) );
+               } :
+
+               // Support: IE<9
+               // Otherwise append directly
+               function( target, els ) {
+                       var j = target.length,
+                               i = 0;
+                       // Can't trust NodeList.length
+                       while ( (target[j++] = els[i++]) ) {}
+                       target.length = j - 1;
+               }
+       };
+}
+
+function Sizzle( selector, context, results, seed ) {
+       var match, elem, m, nodeType,
+               // QSA vars
+               i, groups, old, nid, newContext, newSelector;
+
+       if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
+               setDocument( context );
+       }
+
+       context = context || document;
+       results = results || [];
+       nodeType = context.nodeType;
+
+       if ( typeof selector !== "string" || !selector ||
+               nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {
+
+               return results;
+       }
+
+       if ( !seed && documentIsHTML ) {
+
+               // Try to shortcut find operations when possible (e.g., not under DocumentFragment)
+               if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {
+                       // Speed-up: Sizzle("#ID")
+                       if ( (m = match[1]) ) {
+                               if ( nodeType === 9 ) {
+                                       elem = context.getElementById( m );
+                                       // Check parentNode to catch when Blackberry 4.6 returns
+                                       // nodes that are no longer in the document (jQuery #6963)
+                                       if ( elem && elem.parentNode ) {
+                                               // Handle the case where IE, Opera, and Webkit return items
+                                               // by name instead of ID
+                                               if ( elem.id === m ) {
+                                                       results.push( elem );
+                                                       return results;
+                                               }
+                                       } else {
+                                               return results;
+                                       }
+                               } else {
+                                       // Context is not a document
+                                       if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) &&
+                                               contains( context, elem ) && elem.id === m ) {
+                                               results.push( elem );
+                                               return results;
+                                       }
+                               }
+
+                       // Speed-up: Sizzle("TAG")
+                       } else if ( match[2] ) {
+                               push.apply( results, context.getElementsByTagName( selector ) );
+                               return results;
+
+                       // Speed-up: Sizzle(".CLASS")
+                       } else if ( (m = match[3]) && support.getElementsByClassName ) {
+                               push.apply( results, context.getElementsByClassName( m ) );
+                               return results;
+                       }
+               }
+
+               // QSA path
+               if ( support.qsa && (!rbuggyQSA || !rbuggyQSA.test( selector )) ) {
+                       nid = old = expando;
+                       newContext = context;
+                       newSelector = nodeType !== 1 && selector;
+
+                       // qSA works strangely on Element-rooted queries
+                       // We can work around this by specifying an extra ID on the root
+                       // and working up from there (Thanks to Andrew Dupont for the technique)
+                       // IE 8 doesn't work on object elements
+                       if ( nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
+                               groups = tokenize( selector );
+
+                               if ( (old = context.getAttribute("id")) ) {
+                                       nid = old.replace( rescape, "\\$&" );
+                               } else {
+                                       context.setAttribute( "id", nid );
+                               }
+                               nid = "[id='" + nid + "'] ";
+
+                               i = groups.length;
+                               while ( i-- ) {
+                                       groups[i] = nid + toSelector( groups[i] );
+                               }
+                               newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context;
+                               newSelector = groups.join(",");
+                       }
+
+                       if ( newSelector ) {
+                               try {
+                                       push.apply( results,
+                                               newContext.querySelectorAll( newSelector )
+                                       );
+                                       return results;
+                               } catch(qsaError) {
+                               } finally {
+                                       if ( !old ) {
+                                               context.removeAttribute("id");
+                                       }
+                               }
+                       }
+               }
+       }
+
+       // All others
+       return select( selector.replace( rtrim, "$1" ), context, results, seed );
+}
+
+/**
+ * Create key-value caches of limited size
+ * @returns {Function(string, Object)} Returns the Object data after storing it on itself with
+ *     property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
+ *     deleting the oldest entry
+ */
+function createCache() {
+       var keys = [];
+
+       function cache( key, value ) {
+               // Use (key + " ") to avoid collision with native prototype properties (see Issue #157)
+               if ( keys.push( key + " " ) > Expr.cacheLength ) {
+                       // Only keep the most recent entries
+                       delete cache[ keys.shift() ];
+               }
+               return (cache[ key + " " ] = value);
+       }
+       return cache;
+}
+
+/**
+ * Mark a function for special use by Sizzle
+ * @param {Function} fn The function to mark
+ */
+function markFunction( fn ) {
+       fn[ expando ] = true;
+       return fn;
+}
+
+/**
+ * Support testing using an element
+ * @param {Function} fn Passed the created div and expects a boolean result
+ */
+function assert( fn ) {
+       var div = document.createElement("div");
+
+       try {
+               return !!fn( div );
+       } catch (e) {
+               return false;
+       } finally {
+               // Remove from its parent by default
+               if ( div.parentNode ) {
+                       div.parentNode.removeChild( div );
+               }
+               // release memory in IE
+               div = null;
+       }
+}
+
+/**
+ * Adds the same handler for all of the specified attrs
+ * @param {String} attrs Pipe-separated list of attributes
+ * @param {Function} handler The method that will be applied
+ */
+function addHandle( attrs, handler ) {
+       var arr = attrs.split("|"),
+               i = attrs.length;
+
+       while ( i-- ) {
+               Expr.attrHandle[ arr[i] ] = handler;
+       }
+}
+
+/**
+ * Checks document order of two siblings
+ * @param {Element} a
+ * @param {Element} b
+ * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b
+ */
+function siblingCheck( a, b ) {
+       var cur = b && a,
+               diff = cur && a.nodeType === 1 && b.nodeType === 1 &&
+                       ( ~b.sourceIndex || MAX_NEGATIVE ) -
+                       ( ~a.sourceIndex || MAX_NEGATIVE );
+
+       // Use IE sourceIndex if available on both nodes
+       if ( diff ) {
+               return diff;
+       }
+
+       // Check if b follows a
+       if ( cur ) {
+               while ( (cur = cur.nextSibling) ) {
+                       if ( cur === b ) {
+                               return -1;
+                       }
+               }
+       }
+
+       return a ? 1 : -1;
+}
+
+/**
+ * Returns a function to use in pseudos for input types
+ * @param {String} type
+ */
+function createInputPseudo( type ) {
+       return function( elem ) {
+               var name = elem.nodeName.toLowerCase();
+               return name === "input" && elem.type === type;
+       };
+}
+
+/**
+ * Returns a function to use in pseudos for buttons
+ * @param {String} type
+ */
+function createButtonPseudo( type ) {
+       return function( elem ) {
+               var name = elem.nodeName.toLowerCase();
+               return (name === "input" || name === "button") && elem.type === type;
+       };
+}
+
+/**
+ * Returns a function to use in pseudos for positionals
+ * @param {Function} fn
+ */
+function createPositionalPseudo( fn ) {
+       return markFunction(function( argument ) {
+               argument = +argument;
+               return markFunction(function( seed, matches ) {
+                       var j,
+                               matchIndexes = fn( [], seed.length, argument ),
+                               i = matchIndexes.length;
+
+                       // Match elements found at the specified indexes
+                       while ( i-- ) {
+                               if ( seed[ (j = matchIndexes[i]) ] ) {
+                                       seed[j] = !(matches[j] = seed[j]);
+                               }
+                       }
+               });
+       });
+}
+
+/**
+ * Checks a node for validity as a Sizzle context
+ * @param {Element|Object=} context
+ * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
+ */
+function testContext( context ) {
+       return context && typeof context.getElementsByTagName !== "undefined" && context;
+}
+
+// Expose support vars for convenience
+support = Sizzle.support = {};
+
+/**
+ * Detects XML nodes
+ * @param {Element|Object} elem An element or a document
+ * @returns {Boolean} True iff elem is a non-HTML XML node
+ */
+isXML = Sizzle.isXML = function( elem ) {
+       // documentElement is verified for cases where it doesn't yet exist
+       // (such as loading iframes in IE - #4833)
+       var documentElement = elem && (elem.ownerDocument || elem).documentElement;
+       return documentElement ? documentElement.nodeName !== "HTML" : false;
+};
+
+/**
+ * Sets document-related variables once based on the current document
+ * @param {Element|Object} [doc] An element or document object to use to set the document
+ * @returns {Object} Returns the current document
+ */
+setDocument = Sizzle.setDocument = function( node ) {
+       var hasCompare, parent,
+               doc = node ? node.ownerDocument || node : preferredDoc;
+
+       // If no document and documentElement is available, return
+       if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {
+               return document;
+       }
+
+       // Set our document
+       document = doc;
+       docElem = doc.documentElement;
+       parent = doc.defaultView;
+
+       // Support: IE>8
+       // If iframe document is assigned to "document" variable and if iframe has been reloaded,
+       // IE will throw "permission denied" error when accessing "document" variable, see jQuery #13936
+       // IE6-8 do not support the defaultView property so parent will be undefined
+       if ( parent && parent !== parent.top ) {
+               // IE11 does not have attachEvent, so all must suffer
+               if ( parent.addEventListener ) {
+                       parent.addEventListener( "unload", unloadHandler, false );
+               } else if ( parent.attachEvent ) {
+                       parent.attachEvent( "onunload", unloadHandler );
+               }
+       }
+
+       /* Support tests
+       ---------------------------------------------------------------------- */
+       documentIsHTML = !isXML( doc );
+
+       /* Attributes
+       ---------------------------------------------------------------------- */
+
+       // Support: IE<8
+       // Verify that getAttribute really returns attributes and not properties
+       // (excepting IE8 booleans)
+       support.attributes = assert(function( div ) {
+               div.className = "i";
+               return !div.getAttribute("className");
+       });
+
+       /* getElement(s)By*
+       ---------------------------------------------------------------------- */
+
+       // Check if getElementsByTagName("*") returns only elements
+       support.getElementsByTagName = assert(function( div ) {
+               div.appendChild( doc.createComment("") );
+               return !div.getElementsByTagName("*").length;
+       });
+
+       // Support: IE<9
+       support.getElementsByClassName = rnative.test( doc.getElementsByClassName );
+
+       // Support: IE<10
+       // Check if getElementById returns elements by name
+       // The broken getElementById methods don't pick up programatically-set names,
+       // so use a roundabout getElementsByName test
+       support.getById = assert(function( div ) {
+               docElem.appendChild( div ).id = expando;
+               return !doc.getElementsByName || !doc.getElementsByName( expando ).length;
+       });
+
+       // ID find and filter
+       if ( support.getById ) {
+               Expr.find["ID"] = function( id, context ) {
+                       if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
+                               var m = context.getElementById( id );
+                               // Check parentNode to catch when Blackberry 4.6 returns
+                               // nodes that are no longer in the document #6963
+                               return m && m.parentNode ? [ m ] : [];
+                       }
+               };
+               Expr.filter["ID"] = function( id ) {
+                       var attrId = id.replace( runescape, funescape );
+                       return function( elem ) {
+                               return elem.getAttribute("id") === attrId;
+                       };
+               };
+       } else {
+               // Support: IE6/7
+               // getElementById is not reliable as a find shortcut
+               delete Expr.find["ID"];
+
+               Expr.filter["ID"] =  function( id ) {
+                       var attrId = id.replace( runescape, funescape );
+                       return function( elem ) {
+                               var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
+                               return node && node.value === attrId;
+                       };
+               };
+       }
+
+       // Tag
+       Expr.find["TAG"] = support.getElementsByTagName ?
+               function( tag, context ) {
+                       if ( typeof context.getElementsByTagName !== "undefined" ) {
+                               return context.getElementsByTagName( tag );
+
+                       // DocumentFragment nodes don't have gEBTN
+                       } else if ( support.qsa ) {
+                               return context.querySelectorAll( tag );
+                       }
+               } :
+
+               function( tag, context ) {
+                       var elem,
+                               tmp = [],
+                               i = 0,
+                               // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too
+                               results = context.getElementsByTagName( tag );
+
+                       // Filter out possible comments
+                       if ( tag === "*" ) {
+                               while ( (elem = results[i++]) ) {
+                                       if ( elem.nodeType === 1 ) {
+                                               tmp.push( elem );
+                                       }
+                               }
+
+                               return tmp;
+                       }
+                       return results;
+               };
+
+       // Class
+       Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) {
+               if ( documentIsHTML ) {
+                       return context.getElementsByClassName( className );
+               }
+       };
+
+       /* QSA/matchesSelector
+       ---------------------------------------------------------------------- */
+
+       // QSA and matchesSelector support
+
+       // matchesSelector(:active) reports false when true (IE9/Opera 11.5)
+       rbuggyMatches = [];
+
+       // qSa(:focus) reports false when true (Chrome 21)
+       // We allow this because of a bug in IE8/9 that throws an error
+       // whenever `document.activeElement` is accessed on an iframe
+       // So, we allow :focus to pass through QSA all the time to avoid the IE error
+       // See http://bugs.jquery.com/ticket/13378
+       rbuggyQSA = [];
+
+       if ( (support.qsa = rnative.test( doc.querySelectorAll )) ) {
+               // Build QSA regex
+               // Regex strategy adopted from Diego Perini
+               assert(function( div ) {
+                       // Select is set to empty string on purpose
+                       // This is to test IE's treatment of not explicitly
+                       // setting a boolean content attribute,
+                       // since its presence should be enough
+                       // http://bugs.jquery.com/ticket/12359
+                       docElem.appendChild( div ).innerHTML = "<a id='" + expando + "'></a>" +
+                               "<select id='" + expando + "-\f]' msallowcapture=''>" +
+                               "<option selected=''></option></select>";
+
+                       // Support: IE8, Opera 11-12.16
+                       // Nothing should be selected when empty strings follow ^= or $= or *=
+                       // The test attribute must be unknown in Opera but "safe" for WinRT
+                       // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
+                       if ( div.querySelectorAll("[msallowcapture^='']").length ) {
+                               rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
+                       }
+
+                       // Support: IE8
+                       // Boolean attributes and "value" are not treated correctly
+                       if ( !div.querySelectorAll("[selected]").length ) {
+                               rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
+                       }
+
+                       // Support: Chrome<29, Android<4.2+, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.7+
+                       if ( !div.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
+                               rbuggyQSA.push("~=");
+                       }
+
+                       // Webkit/Opera - :checked should return selected option elements
+                       // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+                       // IE8 throws error here and will not see later tests
+                       if ( !div.querySelectorAll(":checked").length ) {
+                               rbuggyQSA.push(":checked");
+                       }
+
+                       // Support: Safari 8+, iOS 8+
+                       // https://bugs.webkit.org/show_bug.cgi?id=136851
+                       // In-page `selector#id sibing-combinator selector` fails
+                       if ( !div.querySelectorAll( "a#" + expando + "+*" ).length ) {
+                               rbuggyQSA.push(".#.+[+~]");
+                       }
+               });
+
+               assert(function( div ) {
+                       // Support: Windows 8 Native Apps
+                       // The type and name attributes are restricted during .innerHTML assignment
+                       var input = doc.createElement("input");
+                       input.setAttribute( "type", "hidden" );
+                       div.appendChild( input ).setAttribute( "name", "D" );
+
+                       // Support: IE8
+                       // Enforce case-sensitivity of name attribute
+                       if ( div.querySelectorAll("[name=d]").length ) {
+                               rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" );
+                       }
+
+                       // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
+                       // IE8 throws error here and will not see later tests
+                       if ( !div.querySelectorAll(":enabled").length ) {
+                               rbuggyQSA.push( ":enabled", ":disabled" );
+                       }
+
+                       // Opera 10-11 does not throw on post-comma invalid pseudos
+                       div.querySelectorAll("*,:x");
+                       rbuggyQSA.push(",.*:");
+               });
+       }
+
+       if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
+               docElem.webkitMatchesSelector ||
+               docElem.mozMatchesSelector ||
+               docElem.oMatchesSelector ||
+               docElem.msMatchesSelector) )) ) {
+
+               assert(function( div ) {
+                       // Check to see if it's possible to do matchesSelector
+                       // on a disconnected node (IE 9)
+                       support.disconnectedMatch = matches.call( div, "div" );
+
+                       // This should fail with an exception
+                       // Gecko does not error, returns false instead
+                       matches.call( div, "[s!='']:x" );
+                       rbuggyMatches.push( "!=", pseudos );
+               });
+       }
+
+       rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") );
+       rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") );
+
+       /* Contains
+       ---------------------------------------------------------------------- */
+       hasCompare = rnative.test( docElem.compareDocumentPosition );
+
+       // Element contains another
+       // Purposefully does not implement inclusive descendent
+       // As in, an element does not contain itself
+       contains = hasCompare || rnative.test( docElem.contains ) ?
+               function( a, b ) {
+                       var adown = a.nodeType === 9 ? a.documentElement : a,
+                               bup = b && b.parentNode;
+                       return a === bup || !!( bup && bup.nodeType === 1 && (
+                               adown.contains ?
+                                       adown.contains( bup ) :
+                                       a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
+                       ));
+               } :
+               function( a, b ) {
+                       if ( b ) {
+                               while ( (b = b.parentNode) ) {
+                                       if ( b === a ) {
+                                               return true;
+                                       }
+                               }
+                       }
+                       return false;
+               };
+
+       /* Sorting
+       ---------------------------------------------------------------------- */
+
+       // Document order sorting
+       sortOrder = hasCompare ?
+       function( a, b ) {
+
+               // Flag for duplicate removal
+               if ( a === b ) {
+                       hasDuplicate = true;
+                       return 0;
+               }
+
+               // Sort on method existence if only one input has compareDocumentPosition
+               var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
+               if ( compare ) {
+                       return compare;
+               }
+
+               // Calculate position if both inputs belong to the same document
+               compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?
+                       a.compareDocumentPosition( b ) :
+
+                       // Otherwise we know they are disconnected
+                       1;
+
+               // Disconnected nodes
+               if ( compare & 1 ||
+                       (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {
+
+                       // Choose the first element that is related to our preferred document
+                       if ( a === doc || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {
+                               return -1;
+                       }
+                       if ( b === doc || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {
+                               return 1;
+                       }
+
+                       // Maintain original order
+                       return sortInput ?
+                               ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+                               0;
+               }
+
+               return compare & 4 ? -1 : 1;
+       } :
+       function( a, b ) {
+               // Exit early if the nodes are identical
+               if ( a === b ) {
+                       hasDuplicate = true;
+                       return 0;
+               }
+
+               var cur,
+                       i = 0,
+                       aup = a.parentNode,
+                       bup = b.parentNode,
+                       ap = [ a ],
+                       bp = [ b ];
+
+               // Parentless nodes are either documents or disconnected
+               if ( !aup || !bup ) {
+                       return a === doc ? -1 :
+                               b === doc ? 1 :
+                               aup ? -1 :
+                               bup ? 1 :
+                               sortInput ?
+                               ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+                               0;
+
+               // If the nodes are siblings, we can do a quick check
+               } else if ( aup === bup ) {
+                       return siblingCheck( a, b );
+               }
+
+               // Otherwise we need full lists of their ancestors for comparison
+               cur = a;
+               while ( (cur = cur.parentNode) ) {
+                       ap.unshift( cur );
+               }
+               cur = b;
+               while ( (cur = cur.parentNode) ) {
+                       bp.unshift( cur );
+               }
+
+               // Walk down the tree looking for a discrepancy
+               while ( ap[i] === bp[i] ) {
+                       i++;
+               }
+
+               return i ?
+                       // Do a sibling check if the nodes have a common ancestor
+                       siblingCheck( ap[i], bp[i] ) :
+
+                       // Otherwise nodes in our document sort first
+                       ap[i] === preferredDoc ? -1 :
+                       bp[i] === preferredDoc ? 1 :
+                       0;
+       };
+
+       return doc;
+};
+
+Sizzle.matches = function( expr, elements ) {
+       return Sizzle( expr, null, null, elements );
+};
+
+Sizzle.matchesSelector = function( elem, expr ) {
+       // Set document vars if needed
+       if ( ( elem.ownerDocument || elem ) !== document ) {
+               setDocument( elem );
+       }
+
+       // Make sure that attribute selectors are quoted
+       expr = expr.replace( rattributeQuotes, "='$1']" );
+
+       if ( support.matchesSelector && documentIsHTML &&
+               ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&
+               ( !rbuggyQSA     || !rbuggyQSA.test( expr ) ) ) {
+
+               try {
+                       var ret = matches.call( elem, expr );
+
+                       // IE 9's matchesSelector returns false on disconnected nodes
+                       if ( ret || support.disconnectedMatch ||
+                                       // As well, disconnected nodes are said to be in a document
+                                       // fragment in IE 9
+                                       elem.document && elem.document.nodeType !== 11 ) {
+                               return ret;
+                       }
+               } catch (e) {}
+       }
+
+       return Sizzle( expr, document, null, [ elem ] ).length > 0;
+};
+
+Sizzle.contains = function( context, elem ) {
+       // Set document vars if needed
+       if ( ( context.ownerDocument || context ) !== document ) {
+               setDocument( context );
+       }
+       return contains( context, elem );
+};
+
+Sizzle.attr = function( elem, name ) {
+       // Set document vars if needed
+       if ( ( elem.ownerDocument || elem ) !== document ) {
+               setDocument( elem );
+       }
+
+       var fn = Expr.attrHandle[ name.toLowerCase() ],
+               // Don't get fooled by Object.prototype properties (jQuery #13807)
+               val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
+                       fn( elem, name, !documentIsHTML ) :
+                       undefined;
+
+       return val !== undefined ?
+               val :
+               support.attributes || !documentIsHTML ?
+                       elem.getAttribute( name ) :
+                       (val = elem.getAttributeNode(name)) && val.specified ?
+                               val.value :
+                               null;
+};
+
+Sizzle.error = function( msg ) {
+       throw new Error( "Syntax error, unrecognized expression: " + msg );
+};
+
+/**
+ * Document sorting and removing duplicates
+ * @param {ArrayLike} results
+ */
+Sizzle.uniqueSort = function( results ) {
+       var elem,
+               duplicates = [],
+               j = 0,
+               i = 0;
+
+       // Unless we *know* we can detect duplicates, assume their presence
+       hasDuplicate = !support.detectDuplicates;
+       sortInput = !support.sortStable && results.slice( 0 );
+       results.sort( sortOrder );
+
+       if ( hasDuplicate ) {
+               while ( (elem = results[i++]) ) {
+                       if ( elem === results[ i ] ) {
+                               j = duplicates.push( i );
+                       }
+               }
+               while ( j-- ) {
+                       results.splice( duplicates[ j ], 1 );
+               }
+       }
+
+       // Clear input after sorting to release objects
+       // See https://github.com/jquery/sizzle/pull/225
+       sortInput = null;
+
+       return results;
+};
+
+/**
+ * Utility function for retrieving the text value of an array of DOM nodes
+ * @param {Array|Element} elem
+ */
+getText = Sizzle.getText = function( elem ) {
+       var node,
+               ret = "",
+               i = 0,
+               nodeType = elem.nodeType;
+
+       if ( !nodeType ) {
+               // If no nodeType, this is expected to be an array
+               while ( (node = elem[i++]) ) {
+                       // Do not traverse comment nodes
+                       ret += getText( node );
+               }
+       } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
+               // Use textContent for elements
+               // innerText usage removed for consistency of new lines (jQuery #11153)
+               if ( typeof elem.textContent === "string" ) {
+                       return elem.textContent;
+               } else {
+                       // Traverse its children
+                       for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+                               ret += getText( elem );
+                       }
+               }
+       } else if ( nodeType === 3 || nodeType === 4 ) {
+               return elem.nodeValue;
+       }
+       // Do not include comment or processing instruction nodes
+
+       return ret;
+};
+
+Expr = Sizzle.selectors = {
+
+       // Can be adjusted by the user
+       cacheLength: 50,
+
+       createPseudo: markFunction,
+
+       match: matchExpr,
+
+       attrHandle: {},
+
+       find: {},
+
+       relative: {
+               ">": { dir: "parentNode", first: true },
+               " ": { dir: "parentNode" },
+               "+": { dir: "previousSibling", first: true },
+               "~": { dir: "previousSibling" }
+       },
+
+       preFilter: {
+               "ATTR": function( match ) {
+                       match[1] = match[1].replace( runescape, funescape );
+
+                       // Move the given value to match[3] whether quoted or unquoted
+                       match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
+
+                       if ( match[2] === "~=" ) {
+                               match[3] = " " + match[3] + " ";
+                       }
+
+                       return match.slice( 0, 4 );
+               },
+
+               "CHILD": function( match ) {
+                       /* matches from matchExpr["CHILD"]
+                               1 type (only|nth|...)
+                               2 what (child|of-type)
+                               3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
+                               4 xn-component of xn+y argument ([+-]?\d*n|)
+                               5 sign of xn-component
+                               6 x of xn-component
+                               7 sign of y-component
+                               8 y of y-component
+                       */
+                       match[1] = match[1].toLowerCase();
+
+                       if ( match[1].slice( 0, 3 ) === "nth" ) {
+                               // nth-* requires argument
+                               if ( !match[3] ) {
+                                       Sizzle.error( match[0] );
+                               }
+
+                               // numeric x and y parameters for Expr.filter.CHILD
+                               // remember that false/true cast respectively to 0/1
+                               match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) );
+                               match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" );
+
+                       // other types prohibit arguments
+                       } else if ( match[3] ) {
+                               Sizzle.error( match[0] );
+                       }
+
+                       return match;
+               },
+
+               "PSEUDO": function( match ) {
+                       var excess,
+                               unquoted = !match[6] && match[2];
+
+                       if ( matchExpr["CHILD"].test( match[0] ) ) {
+                               return null;
+                       }
+
+                       // Accept quoted arguments as-is
+                       if ( match[3] ) {
+                               match[2] = match[4] || match[5] || "";
+
+                       // Strip excess characters from unquoted arguments
+                       } else if ( unquoted && rpseudo.test( unquoted ) &&
+                               // Get excess from tokenize (recursively)
+                               (excess = tokenize( unquoted, true )) &&
+                               // advance to the next closing parenthesis
+                               (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
+
+                               // excess is a negative index
+                               match[0] = match[0].slice( 0, excess );
+                               match[2] = unquoted.slice( 0, excess );
+                       }
+
+                       // Return only captures needed by the pseudo filter method (type and argument)
+                       return match.slice( 0, 3 );
+               }
+       },
+
+       filter: {
+
+               "TAG": function( nodeNameSelector ) {
+                       var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
+                       return nodeNameSelector === "*" ?
+                               function() { return true; } :
+                               function( elem ) {
+                                       return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
+                               };
+               },
+
+               "CLASS": function( className ) {
+                       var pattern = classCache[ className + " " ];
+
+                       return pattern ||
+                               (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
+                               classCache( className, function( elem ) {
+                                       return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" );
+                               });
+               },
+
+               "ATTR": function( name, operator, check ) {
+                       return function( elem ) {
+                               var result = Sizzle.attr( elem, name );
+
+                               if ( result == null ) {
+                                       return operator === "!=";
+                               }
+                               if ( !operator ) {
+                                       return true;
+                               }
+
+                               result += "";
+
+                               return operator === "=" ? result === check :
+                                       operator === "!=" ? result !== check :
+                                       operator === "^=" ? check && result.indexOf( check ) === 0 :
+                                       operator === "*=" ? check && result.indexOf( check ) > -1 :
+                                       operator === "$=" ? check && result.slice( -check.length ) === check :
+                                       operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 :
+                                       operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" :
+                                       false;
+                       };
+               },
+
+               "CHILD": function( type, what, argument, first, last ) {
+                       var simple = type.slice( 0, 3 ) !== "nth",
+                               forward = type.slice( -4 ) !== "last",
+                               ofType = what === "of-type";
+
+                       return first === 1 && last === 0 ?
+
+                               // Shortcut for :nth-*(n)
+                               function( elem ) {
+                                       return !!elem.parentNode;
+                               } :
+
+                               function( elem, context, xml ) {
+                                       var cache, outerCache, node, diff, nodeIndex, start,
+                                               dir = simple !== forward ? "nextSibling" : "previousSibling",
+                                               parent = elem.parentNode,
+                                               name = ofType && elem.nodeName.toLowerCase(),
+                                               useCache = !xml && !ofType;
+
+                                       if ( parent ) {
+
+                                               // :(first|last|only)-(child|of-type)
+                                               if ( simple ) {
+                                                       while ( dir ) {
+                                                               node = elem;
+                                                               while ( (node = node[ dir ]) ) {
+                                                                       if ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) {
+                                                                               return false;
+                                                                       }
+                                                               }
+                                                               // Reverse direction for :only-* (if we haven't yet done so)
+                                                               start = dir = type === "only" && !start && "nextSibling";
+                                                       }
+                                                       return true;
+                                               }
+
+                                               start = [ forward ? parent.firstChild : parent.lastChild ];
+
+                                               // non-xml :nth-child(...) stores cache data on `parent`
+                                               if ( forward && useCache ) {
+                                                       // Seek `elem` from a previously-cached index
+                                                       outerCache = parent[ expando ] || (parent[ expando ] = {});
+                                                       cache = outerCache[ type ] || [];
+                                                       nodeIndex = cache[0] === dirruns && cache[1];
+                                                       diff = cache[0] === dirruns && cache[2];
+                                                       node = nodeIndex && parent.childNodes[ nodeIndex ];
+
+                                                       while ( (node = ++nodeIndex && node && node[ dir ] ||
+
+                                                               // Fallback to seeking `elem` from the start
+                                                               (diff = nodeIndex = 0) || start.pop()) ) {
+
+                                                               // When found, cache indexes on `parent` and break
+                                                               if ( node.nodeType === 1 && ++diff && node === elem ) {
+                                                                       outerCache[ type ] = [ dirruns, nodeIndex, diff ];
+                                                                       break;
+                                                               }
+                                                       }
+
+                                               // Use previously-cached element index if available
+                                               } else if ( useCache && (cache = (elem[ expando ] || (elem[ expando ] = {}))[ type ]) && cache[0] === dirruns ) {
+                                                       diff = cache[1];
+
+                                               // xml :nth-child(...) or :nth-last-child(...) or :nth(-last)?-of-type(...)
+                                               } else {
+                                                       // Use the same loop as above to seek `elem` from the start
+                                                       while ( (node = ++nodeIndex && node && node[ dir ] ||
+                                                               (diff = nodeIndex = 0) || start.pop()) ) {
+
+                                                               if ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) {
+                                                                       // Cache the index of each encountered element
+                                                                       if ( useCache ) {
+                                                                               (node[ expando ] || (node[ expando ] = {}))[ type ] = [ dirruns, diff ];
+                                                                       }
+
+                                                                       if ( node === elem ) {
+                                                                               break;
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+
+                                               // Incorporate the offset, then check against cycle size
+                                               diff -= last;
+                                               return diff === first || ( diff % first === 0 && diff / first >= 0 );
+                                       }
+                               };
+               },
+
+               "PSEUDO": function( pseudo, argument ) {
+                       // pseudo-class names are case-insensitive
+                       // http://www.w3.org/TR/selectors/#pseudo-classes
+                       // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
+                       // Remember that setFilters inherits from pseudos
+                       var args,
+                               fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
+                                       Sizzle.error( "unsupported pseudo: " + pseudo );
+
+                       // The user may use createPseudo to indicate that
+                       // arguments are needed to create the filter function
+                       // just as Sizzle does
+                       if ( fn[ expando ] ) {
+                               return fn( argument );
+                       }
+
+                       // But maintain support for old signatures
+                       if ( fn.length > 1 ) {
+                               args = [ pseudo, pseudo, "", argument ];
+                               return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
+                                       markFunction(function( seed, matches ) {
+                                               var idx,
+                                                       matched = fn( seed, argument ),
+                                                       i = matched.length;
+                                               while ( i-- ) {
+                                                       idx = indexOf( seed, matched[i] );
+                                                       seed[ idx ] = !( matches[ idx ] = matched[i] );
+                                               }
+                                       }) :
+                                       function( elem ) {
+                                               return fn( elem, 0, args );
+                                       };
+                       }
+
+                       return fn;
+               }
+       },
+
+       pseudos: {
+               // Potentially complex pseudos
+               "not": markFunction(function( selector ) {
+                       // Trim the selector passed to compile
+                       // to avoid treating leading and trailing
+                       // spaces as combinators
+                       var input = [],
+                               results = [],
+                               matcher = compile( selector.replace( rtrim, "$1" ) );
+
+                       return matcher[ expando ] ?
+                               markFunction(function( seed, matches, context, xml ) {
+                                       var elem,
+                                               unmatched = matcher( seed, null, xml, [] ),
+                                               i = seed.length;
+
+                                       // Match elements unmatched by `matcher`
+                                       while ( i-- ) {
+                                               if ( (elem = unmatched[i]) ) {
+                                                       seed[i] = !(matches[i] = elem);
+                                               }
+                                       }
+                               }) :
+                               function( elem, context, xml ) {
+                                       input[0] = elem;
+                                       matcher( input, null, xml, results );
+                                       // Don't keep the element (issue #299)
+                                       input[0] = null;
+                                       return !results.pop();
+                               };
+               }),
+
+               "has": markFunction(function( selector ) {
+                       return function( elem ) {
+                               return Sizzle( selector, elem ).length > 0;
+                       };
+               }),
+
+               "contains": markFunction(function( text ) {
+                       text = text.replace( runescape, funescape );
+                       return function( elem ) {
+                               return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
+                       };
+               }),
+
+               // "Whether an element is represented by a :lang() selector
+               // is based solely on the element's language value
+               // being equal to the identifier C,
+               // or beginning with the identifier C immediately followed by "-".
+               // The matching of C against the element's language value is performed case-insensitively.
+               // The identifier C does not have to be a valid language name."
+               // http://www.w3.org/TR/selectors/#lang-pseudo
+               "lang": markFunction( function( lang ) {
+                       // lang value must be a valid identifier
+                       if ( !ridentifier.test(lang || "") ) {
+                               Sizzle.error( "unsupported lang: " + lang );
+                       }
+                       lang = lang.replace( runescape, funescape ).toLowerCase();
+                       return function( elem ) {
+                               var elemLang;
+                               do {
+                                       if ( (elemLang = documentIsHTML ?
+                                               elem.lang :
+                                               elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) {
+
+                                               elemLang = elemLang.toLowerCase();
+                                               return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
+                                       }
+                               } while ( (elem = elem.parentNode) && elem.nodeType === 1 );
+                               return false;
+                       };
+               }),
+
+               // Miscellaneous
+               "target": function( elem ) {
+                       var hash = window.location && window.location.hash;
+                       return hash && hash.slice( 1 ) === elem.id;
+               },
+
+               "root": function( elem ) {
+                       return elem === docElem;
+               },
+
+               "focus": function( elem ) {
+                       return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
+               },
+
+               // Boolean properties
+               "enabled": function( elem ) {
+                       return elem.disabled === false;
+               },
+
+               "disabled": function( elem ) {
+                       return elem.disabled === true;
+               },
+
+               "checked": function( elem ) {
+                       // In CSS3, :checked should return both checked and selected elements
+                       // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+                       var nodeName = elem.nodeName.toLowerCase();
+                       return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
+               },
+
+               "selected": function( elem ) {
+                       // Accessing this property makes selected-by-default
+                       // options in Safari work properly
+                       if ( elem.parentNode ) {
+                               elem.parentNode.selectedIndex;
+                       }
+
+                       return elem.selected === true;
+               },
+
+               // Contents
+               "empty": function( elem ) {
+                       // http://www.w3.org/TR/selectors/#empty-pseudo
+                       // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
+                       //   but not by others (comment: 8; processing instruction: 7; etc.)
+                       // nodeType < 6 works because attributes (2) do not appear as children
+                       for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+                               if ( elem.nodeType < 6 ) {
+                                       return false;
+                               }
+                       }
+                       return true;
+               },
+
+               "parent": function( elem ) {
+                       return !Expr.pseudos["empty"]( elem );
+               },
+
+               // Element/input types
+               "header": function( elem ) {
+                       return rheader.test( elem.nodeName );
+               },
+
+               "input": function( elem ) {
+                       return rinputs.test( elem.nodeName );
+               },
+
+               "button": function( elem ) {
+                       var name = elem.nodeName.toLowerCase();
+                       return name === "input" && elem.type === "button" || name === "button";
+               },
+
+               "text": function( elem ) {
+                       var attr;
+                       return elem.nodeName.toLowerCase() === "input" &&
+                               elem.type === "text" &&
+
+                               // Support: IE<8
+                               // New HTML5 attribute values (e.g., "search") appear with elem.type === "text"
+                               ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" );
+               },
+
+               // Position-in-collection
+               "first": createPositionalPseudo(function() {
+                       return [ 0 ];
+               }),
+
+               "last": createPositionalPseudo(function( matchIndexes, length ) {
+                       return [ length - 1 ];
+               }),
+
+               "eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
+                       return [ argument < 0 ? argument + length : argument ];
+               }),
+
+               "even": createPositionalPseudo(function( matchIndexes, length ) {
+                       var i = 0;
+                       for ( ; i < length; i += 2 ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               }),
+
+               "odd": createPositionalPseudo(function( matchIndexes, length ) {
+                       var i = 1;
+                       for ( ; i < length; i += 2 ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               }),
+
+               "lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+                       var i = argument < 0 ? argument + length : argument;
+                       for ( ; --i >= 0; ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               }),
+
+               "gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+                       var i = argument < 0 ? argument + length : argument;
+                       for ( ; ++i < length; ) {
+                               matchIndexes.push( i );
+                       }
+                       return matchIndexes;
+               })
+       }
+};
+
+Expr.pseudos["nth"] = Expr.pseudos["eq"];
+
+// Add button/input type pseudos
+for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
+       Expr.pseudos[ i ] = createInputPseudo( i );
+}
+for ( i in { submit: true, reset: true } ) {
+       Expr.pseudos[ i ] = createButtonPseudo( i );
+}
+
+// Easy API for creating new setFilters
+function setFilters() {}
+setFilters.prototype = Expr.filters = Expr.pseudos;
+Expr.setFilters = new setFilters();
+
+tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
+       var matched, match, tokens, type,
+               soFar, groups, preFilters,
+               cached = tokenCache[ selector + " " ];
+
+       if ( cached ) {
+               return parseOnly ? 0 : cached.slice( 0 );
+       }
+
+       soFar = selector;
+       groups = [];
+       preFilters = Expr.preFilter;
+
+       while ( soFar ) {
+
+               // Comma and first run
+               if ( !matched || (match = rcomma.exec( soFar )) ) {
+                       if ( match ) {
+                               // Don't consume trailing commas as valid
+                               soFar = soFar.slice( match[0].length ) || soFar;
+                       }
+                       groups.push( (tokens = []) );
+               }
+
+               matched = false;
+
+               // Combinators
+               if ( (match = rcombinators.exec( soFar )) ) {
+                       matched = match.shift();
+                       tokens.push({
+                               value: matched,
+                               // Cast descendant combinators to space
+                               type: match[0].replace( rtrim, " " )
+                       });
+                       soFar = soFar.slice( matched.length );
+               }
+
+               // Filters
+               for ( type in Expr.filter ) {
+                       if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
+                               (match = preFilters[ type ]( match ))) ) {
+                               matched = match.shift();
+                               tokens.push({
+                                       value: matched,
+                                       type: type,
+                                       matches: match
+                               });
+                               soFar = soFar.slice( matched.length );
+                       }
+               }
+
+               if ( !matched ) {
+                       break;
+               }
+       }
+
+       // Return the length of the invalid excess
+       // if we're just parsing
+       // Otherwise, throw an error or return tokens
+       return parseOnly ?
+               soFar.length :
+               soFar ?
+                       Sizzle.error( selector ) :
+                       // Cache the tokens
+                       tokenCache( selector, groups ).slice( 0 );
+};
+
+function toSelector( tokens ) {
+       var i = 0,
+               len = tokens.length,
+               selector = "";
+       for ( ; i < len; i++ ) {
+               selector += tokens[i].value;
+       }
+       return selector;
+}
+
+function addCombinator( matcher, combinator, base ) {
+       var dir = combinator.dir,
+               checkNonElements = base && dir === "parentNode",
+               doneName = done++;
+
+       return combinator.first ?
+               // Check against closest ancestor/preceding element
+               function( elem, context, xml ) {
+                       while ( (elem = elem[ dir ]) ) {
+                               if ( elem.nodeType === 1 || checkNonElements ) {
+                                       return matcher( elem, context, xml );
+                               }
+                       }
+               } :
+
+               // Check against all ancestor/preceding elements
+               function( elem, context, xml ) {
+                       var oldCache, outerCache,
+                               newCache = [ dirruns, doneName ];
+
+                       // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching
+                       if ( xml ) {
+                               while ( (elem = elem[ dir ]) ) {
+                                       if ( elem.nodeType === 1 || checkNonElements ) {
+                                               if ( matcher( elem, context, xml ) ) {
+                                                       return true;
+                                               }
+                                       }
+                               }
+                       } else {
+                               while ( (elem = elem[ dir ]) ) {
+                                       if ( elem.nodeType === 1 || checkNonElements ) {
+                                               outerCache = elem[ expando ] || (elem[ expando ] = {});
+                                               if ( (oldCache = outerCache[ dir ]) &&
+                                                       oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {
+
+                                                       // Assign to newCache so results back-propagate to previous elements
+                                                       return (newCache[ 2 ] = oldCache[ 2 ]);
+                                               } else {
+                                                       // Reuse newcache so results back-propagate to previous elements
+                                                       outerCache[ dir ] = newCache;
+
+                                                       // A match means we're done; a fail means we have to keep checking
+                                                       if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {
+                                                               return true;
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               };
+}
+
+function elementMatcher( matchers ) {
+       return matchers.length > 1 ?
+               function( elem, context, xml ) {
+                       var i = matchers.length;
+                       while ( i-- ) {
+                               if ( !matchers[i]( elem, context, xml ) ) {
+                                       return false;
+                               }
+                       }
+                       return true;
+               } :
+               matchers[0];
+}
+
+function multipleContexts( selector, contexts, results ) {
+       var i = 0,
+               len = contexts.length;
+       for ( ; i < len; i++ ) {
+               Sizzle( selector, contexts[i], results );
+       }
+       return results;
+}
+
+function condense( unmatched, map, filter, context, xml ) {
+       var elem,
+               newUnmatched = [],
+               i = 0,
+               len = unmatched.length,
+               mapped = map != null;
+
+       for ( ; i < len; i++ ) {
+               if ( (elem = unmatched[i]) ) {
+                       if ( !filter || filter( elem, context, xml ) ) {
+                               newUnmatched.push( elem );
+                               if ( mapped ) {
+                                       map.push( i );
+                               }
+                       }
+               }
+       }
+
+       return newUnmatched;
+}
+
+function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
+       if ( postFilter && !postFilter[ expando ] ) {
+               postFilter = setMatcher( postFilter );
+       }
+       if ( postFinder && !postFinder[ expando ] ) {
+               postFinder = setMatcher( postFinder, postSelector );
+       }
+       return markFunction(function( seed, results, context, xml ) {
+               var temp, i, elem,
+                       preMap = [],
+                       postMap = [],
+                       preexisting = results.length,
+
+                       // Get initial elements from seed or context
+                       elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
+
+                       // Prefilter to get matcher input, preserving a map for seed-results synchronization
+                       matcherIn = preFilter && ( seed || !selector ) ?
+                               condense( elems, preMap, preFilter, context, xml ) :
+                               elems,
+
+                       matcherOut = matcher ?
+                               // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
+                               postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
+
+                                       // ...intermediate processing is necessary
+                                       [] :
+
+                                       // ...otherwise use results directly
+                                       results :
+                               matcherIn;
+
+               // Find primary matches
+               if ( matcher ) {
+                       matcher( matcherIn, matcherOut, context, xml );
+               }
+
+               // Apply postFilter
+               if ( postFilter ) {
+                       temp = condense( matcherOut, postMap );
+                       postFilter( temp, [], context, xml );
+
+                       // Un-match failing elements by moving them back to matcherIn
+                       i = temp.length;
+                       while ( i-- ) {
+                               if ( (elem = temp[i]) ) {
+                                       matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
+                               }
+                       }
+               }
+
+               if ( seed ) {
+                       if ( postFinder || preFilter ) {
+                               if ( postFinder ) {
+                                       // Get the final matcherOut by condensing this intermediate into postFinder contexts
+                                       temp = [];
+                                       i = matcherOut.length;
+                                       while ( i-- ) {
+                                               if ( (elem = matcherOut[i]) ) {
+                                                       // Restore matcherIn since elem is not yet a final match
+                                                       temp.push( (matcherIn[i] = elem) );
+                                               }
+                                       }
+                                       postFinder( null, (matcherOut = []), temp, xml );
+                               }
+
+                               // Move matched elements from seed to results to keep them synchronized
+                               i = matcherOut.length;
+                               while ( i-- ) {
+                                       if ( (elem = matcherOut[i]) &&
+                                               (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {
+
+                                               seed[temp] = !(results[temp] = elem);
+                                       }
+                               }
+                       }
+
+               // Add elements to results, through postFinder if defined
+               } else {
+                       matcherOut = condense(
+                               matcherOut === results ?
+                                       matcherOut.splice( preexisting, matcherOut.length ) :
+                                       matcherOut
+                       );
+                       if ( postFinder ) {
+                               postFinder( null, results, matcherOut, xml );
+                       } else {
+                               push.apply( results, matcherOut );
+                       }
+               }
+       });
+}
+
+function matcherFromTokens( tokens ) {
+       var checkContext, matcher, j,
+               len = tokens.length,
+               leadingRelative = Expr.relative[ tokens[0].type ],
+               implicitRelative = leadingRelative || Expr.relative[" "],
+               i = leadingRelative ? 1 : 0,
+
+               // The foundational matcher ensures that elements are reachable from top-level context(s)
+               matchContext = addCombinator( function( elem ) {
+                       return elem === checkContext;
+               }, implicitRelative, true ),
+               matchAnyContext = addCombinator( function( elem ) {
+                       return indexOf( checkContext, elem ) > -1;
+               }, implicitRelative, true ),
+               matchers = [ function( elem, context, xml ) {
+                       var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
+                               (checkContext = context).nodeType ?
+                                       matchContext( elem, context, xml ) :
+                                       matchAnyContext( elem, context, xml ) );
+                       // Avoid hanging onto element (issue #299)
+                       checkContext = null;
+                       return ret;
+               } ];
+
+       for ( ; i < len; i++ ) {
+               if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
+                       matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
+               } else {
+                       matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
+
+                       // Return special upon seeing a positional matcher
+                       if ( matcher[ expando ] ) {
+                               // Find the next relative operator (if any) for proper handling
+                               j = ++i;
+                               for ( ; j < len; j++ ) {
+                                       if ( Expr.relative[ tokens[j].type ] ) {
+                                               break;
+                                       }
+                               }
+                               return setMatcher(
+                                       i > 1 && elementMatcher( matchers ),
+                                       i > 1 && toSelector(
+                                               // If the preceding token was a descendant combinator, insert an implicit any-element `*`
+                                               tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" })
+                                       ).replace( rtrim, "$1" ),
+                                       matcher,
+                                       i < j && matcherFromTokens( tokens.slice( i, j ) ),
+                                       j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
+                                       j < len && toSelector( tokens )
+                               );
+                       }
+                       matchers.push( matcher );
+               }
+       }
+
+       return elementMatcher( matchers );
+}
+
+function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
+       var bySet = setMatchers.length > 0,
+               byElement = elementMatchers.length > 0,
+               superMatcher = function( seed, context, xml, results, outermost ) {
+                       var elem, j, matcher,
+                               matchedCount = 0,
+                               i = "0",
+                               unmatched = seed && [],
+                               setMatched = [],
+                               contextBackup = outermostContext,
+                               // We must always have either seed elements or outermost context
+                               elems = seed || byElement && Expr.find["TAG"]( "*", outermost ),
+                               // Use integer dirruns iff this is the outermost matcher
+                               dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),
+                               len = elems.length;
+
+                       if ( outermost ) {
+                               outermostContext = context !== document && context;
+                       }
+
+                       // Add elements passing elementMatchers directly to results
+                       // Keep `i` a string if there are no elements so `matchedCount` will be "00" below
+                       // Support: IE<9, Safari
+                       // Tolerate NodeList properties (IE: "length"; Safari: <number>) matching elements by id
+                       for ( ; i !== len && (elem = elems[i]) != null; i++ ) {
+                               if ( byElement && elem ) {
+                                       j = 0;
+                                       while ( (matcher = elementMatchers[j++]) ) {
+                                               if ( matcher( elem, context, xml ) ) {
+                                                       results.push( elem );
+                                                       break;
+                                               }
+                                       }
+                                       if ( outermost ) {
+                                               dirruns = dirrunsUnique;
+                                       }
+                               }
+
+                               // Track unmatched elements for set filters
+                               if ( bySet ) {
+                                       // They will have gone through all possible matchers
+                                       if ( (elem = !matcher && elem) ) {
+                                               matchedCount--;
+                                       }
+
+                                       // Lengthen the array for every element, matched or not
+                                       if ( seed ) {
+                                               unmatched.push( elem );
+                                       }
+                               }
+                       }
+
+                       // Apply set filters to unmatched elements
+                       matchedCount += i;
+                       if ( bySet && i !== matchedCount ) {
+                               j = 0;
+                               while ( (matcher = setMatchers[j++]) ) {
+                                       matcher( unmatched, setMatched, context, xml );
+                               }
+
+                               if ( seed ) {
+                                       // Reintegrate element matches to eliminate the need for sorting
+                                       if ( matchedCount > 0 ) {
+                                               while ( i-- ) {
+                                                       if ( !(unmatched[i] || setMatched[i]) ) {
+                                                               setMatched[i] = pop.call( results );
+                                                       }
+                                               }
+                                       }
+
+                                       // Discard index placeholder values to get only actual matches
+                                       setMatched = condense( setMatched );
+                               }
+
+                               // Add matches to results
+                               push.apply( results, setMatched );
+
+                               // Seedless set matches succeeding multiple successful matchers stipulate sorting
+                               if ( outermost && !seed && setMatched.length > 0 &&
+                                       ( matchedCount + setMatchers.length ) > 1 ) {
+
+                                       Sizzle.uniqueSort( results );
+                               }
+                       }
+
+                       // Override manipulation of globals by nested matchers
+                       if ( outermost ) {
+                               dirruns = dirrunsUnique;
+                               outermostContext = contextBackup;
+                       }
+
+                       return unmatched;
+               };
+
+       return bySet ?
+               markFunction( superMatcher ) :
+               superMatcher;
+}
+
+compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
+       var i,
+               setMatchers = [],
+               elementMatchers = [],
+               cached = compilerCache[ selector + " " ];
+
+       if ( !cached ) {
+               // Generate a function of recursive functions that can be used to check each element
+               if ( !match ) {
+                       match = tokenize( selector );
+               }
+               i = match.length;
+               while ( i-- ) {
+                       cached = matcherFromTokens( match[i] );
+                       if ( cached[ expando ] ) {
+                               setMatchers.push( cached );
+                       } else {
+                               elementMatchers.push( cached );
+                       }
+               }
+
+               // Cache the compiled function
+               cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
+
+               // Save selector and tokenization
+               cached.selector = selector;
+       }
+       return cached;
+};
+
+/**
+ * A low-level selection function that works with Sizzle's compiled
+ *  selector functions
+ * @param {String|Function} selector A selector or a pre-compiled
+ *  selector function built with Sizzle.compile
+ * @param {Element} context
+ * @param {Array} [results]
+ * @param {Array} [seed] A set of elements to match against
+ */
+select = Sizzle.select = function( selector, context, results, seed ) {
+       var i, tokens, token, type, find,
+               compiled = typeof selector === "function" && selector,
+               match = !seed && tokenize( (selector = compiled.selector || selector) );
+
+       results = results || [];
+
+       // Try to minimize operations if there is no seed and only one group
+       if ( match.length === 1 ) {
+
+               // Take a shortcut and set the context if the root selector is an ID
+               tokens = match[0] = match[0].slice( 0 );
+               if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
+                               support.getById && context.nodeType === 9 && documentIsHTML &&
+                               Expr.relative[ tokens[1].type ] ) {
+
+                       context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
+                       if ( !context ) {
+                               return results;
+
+                       // Precompiled matchers will still verify ancestry, so step up a level
+                       } else if ( compiled ) {
+                               context = context.parentNode;
+                       }
+
+                       selector = selector.slice( tokens.shift().value.length );
+               }
+
+               // Fetch a seed set for right-to-left matching
+               i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
+               while ( i-- ) {
+                       token = tokens[i];
+
+                       // Abort if we hit a combinator
+                       if ( Expr.relative[ (type = token.type) ] ) {
+                               break;
+                       }
+                       if ( (find = Expr.find[ type ]) ) {
+                               // Search, expanding context for leading sibling combinators
+                               if ( (seed = find(
+                                       token.matches[0].replace( runescape, funescape ),
+                                       rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
+                               )) ) {
+
+                                       // If seed is empty or no tokens remain, we can return early
+                                       tokens.splice( i, 1 );
+                                       selector = seed.length && toSelector( tokens );
+                                       if ( !selector ) {
+                                               push.apply( results, seed );
+                                               return results;
+                                       }
+
+                                       break;
+                               }
+                       }
+               }
+       }
+
+       // Compile and execute a filtering function if one is not provided
+       // Provide `match` to avoid retokenization if we modified the selector above
+       ( compiled || compile( selector, match ) )(
+               seed,
+               context,
+               !documentIsHTML,
+               results,
+               rsibling.test( selector ) && testContext( context.parentNode ) || context
+       );
+       return results;
+};
+
+// One-time assignments
+
+// Sort stability
+support.sortStable = expando.split("").sort( sortOrder ).join("") === expando;
+
+// Support: Chrome 14-35+
+// Always assume duplicates if they aren't passed to the comparison function
+support.detectDuplicates = !!hasDuplicate;
+
+// Initialize against the default document
+setDocument();
+
+// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)
+// Detached nodes confoundingly follow *each other*
+support.sortDetached = assert(function( div1 ) {
+       // Should return 1, but returns 4 (following)
+       return div1.compareDocumentPosition( document.createElement("div") ) & 1;
+});
+
+// Support: IE<8
+// Prevent attribute/property "interpolation"
+// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
+if ( !assert(function( div ) {
+       div.innerHTML = "<a href='#'></a>";
+       return div.firstChild.getAttribute("href") === "#" ;
+}) ) {
+       addHandle( "type|href|height|width", function( elem, name, isXML ) {
+               if ( !isXML ) {
+                       return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 );
+               }
+       });
+}
+
+// Support: IE<9
+// Use defaultValue in place of getAttribute("value")
+if ( !support.attributes || !assert(function( div ) {
+       div.innerHTML = "<input/>";
+       div.firstChild.setAttribute( "value", "" );
+       return div.firstChild.getAttribute( "value" ) === "";
+}) ) {
+       addHandle( "value", function( elem, name, isXML ) {
+               if ( !isXML && elem.nodeName.toLowerCase() === "input" ) {
+                       return elem.defaultValue;
+               }
+       });
+}
+
+// Support: IE<9
+// Use getAttributeNode to fetch booleans when getAttribute lies
+if ( !assert(function( div ) {
+       return div.getAttribute("disabled") == null;
+}) ) {
+       addHandle( booleans, function( elem, name, isXML ) {
+               var val;
+               if ( !isXML ) {
+                       return elem[ name ] === true ? name.toLowerCase() :
+                                       (val = elem.getAttributeNode( name )) && val.specified ?
+                                       val.value :
+                               null;
+               }
+       });
+}
+
+// EXPOSE
+if ( typeof define === "function" && define.amd ) {
+       define(function() { return Sizzle; });
+// Sizzle requires that there be a global window in Common-JS like environments
+} else if ( typeof module !== "undefined" && module.exports ) {
+       module.exports = Sizzle;
+} else {
+       window.Sizzle = Sizzle;
+}
+// EXPOSE
+
+})( window );
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.min.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.min.js
new file mode 100644 (file)
index 0000000..cf4d1a6
--- /dev/null
@@ -0,0 +1,3 @@
+/*! Sizzle v2.2.0-pre | (c) 2008, 2014 jQuery Foundation, Inc. | jquery.org/license */
+!function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=hb(),z=hb(),A=hb(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},eb=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fb){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function gb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+rb(o[l]);w=ab.test(a)&&pb(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function hb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ib(a){return a[u]=!0,a}function jb(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function kb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function lb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function nb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function ob(a){return ib(function(b){return b=+b,ib(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pb(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=gb.support={},f=gb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=gb.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",eb,!1):e.attachEvent&&e.attachEvent("onunload",eb)),p=!f(g),c.attributes=jb(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=jb(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=jb(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(jb(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),jb(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&jb(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return lb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?lb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},gb.matches=function(a,b){return gb(a,null,null,b)},gb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return gb(b,n,null,[a]).length>0},gb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},gb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},gb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},gb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=gb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=gb.selectors={cacheLength:50,createPseudo:ib,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||gb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&gb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=gb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||gb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ib(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ib(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ib(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ib(function(a){return function(b){return gb(a,b).length>0}}),contains:ib(function(a){return a=a.replace(cb,db),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ib(function(a){return W.test(a||"")||gb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:ob(function(){return[0]}),last:ob(function(a,b){return[b-1]}),eq:ob(function(a,b,c){return[0>c?c+b:c]}),even:ob(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:ob(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:ob(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:ob(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=mb(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=nb(b);function qb(){}qb.prototype=d.filters=d.pseudos,d.setFilters=new qb,g=gb.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?gb.error(a):z(a,i).slice(0)};function rb(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function tb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ub(a,b,c){for(var d=0,e=b.length;e>d;d++)gb(a,b[d],c);return c}function vb(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wb(a,b,c,d,e,f){return d&&!d[u]&&(d=wb(d)),e&&!e[u]&&(e=wb(e,f)),ib(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ub(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:vb(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=vb(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=vb(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sb(function(a){return a===b},h,!0),l=sb(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sb(tb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wb(i>1&&tb(m),i>1&&rb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xb(a.slice(i,e)),f>e&&xb(a=a.slice(e)),f>e&&rb(a))}m.push(c)}return tb(m)}function yb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=vb(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&gb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ib(f):f}h=gb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,yb(e,d)),f.selector=a}return f},i=gb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&pb(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&rb(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&pb(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=jb(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),jb(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||kb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&jb(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||kb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),jb(function(a){return null==a.getAttribute("disabled")})||kb(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),"function"==typeof define&&define.amd?define(function(){return gb}):"undefined"!=typeof module&&module.exports?module.exports=gb:a.Sizzle=gb}(window);
+//# sourceMappingURL=sizzle.min.map
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.min.map b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/sizzle/dist/sizzle.min.map
new file mode 100644 (file)
index 0000000..e39754e
--- /dev/null
@@ -0,0 +1 @@
+{"version":3,"file":"sizzle.min.js","sources":["sizzle.js"],"names":["window","i","support","Expr","getText","isXML","tokenize","compile","select","outermostContext","sortInput","hasDuplicate","setDocument","document","docElem","documentIsHTML","rbuggyQSA","rbuggyMatches","matches","contains","expando","Date","preferredDoc","dirruns","done","classCache","createCache","tokenCache","compilerCache","sortOrder","a","b","MAX_NEGATIVE","hasOwn","hasOwnProperty","arr","pop","push_native","push","slice","indexOf","list","elem","len","length","booleans","whitespace","characterEncoding","identifier","replace","attributes","pseudos","rwhitespace","RegExp","rtrim","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","rquickExpr","rsibling","rescape","runescape","funescape","_","escaped","escapedWhitespace","high","String","fromCharCode","unloadHandler","apply","call","childNodes","nodeType","e","target","els","j","Sizzle","selector","context","results","seed","match","m","groups","old","nid","newContext","newSelector","ownerDocument","exec","getElementById","parentNode","id","getElementsByTagName","getElementsByClassName","qsa","test","nodeName","toLowerCase","getAttribute","setAttribute","toSelector","testContext","join","querySelectorAll","qsaError","removeAttribute","keys","cache","key","value","cacheLength","shift","markFunction","fn","assert","div","createElement","removeChild","addHandle","attrs","handler","split","attrHandle","siblingCheck","cur","diff","sourceIndex","nextSibling","createInputPseudo","type","name","createButtonPseudo","createPositionalPseudo","argument","matchIndexes","documentElement","node","hasCompare","parent","doc","defaultView","top","addEventListener","attachEvent","className","appendChild","createComment","getById","getElementsByName","find","filter","attrId","getAttributeNode","tag","tmp","innerHTML","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","unshift","expr","elements","ret","attr","val","undefined","specified","error","msg","Error","uniqueSort","duplicates","detectDuplicates","sortStable","sort","splice","textContent","firstChild","nodeValue","selectors","createPseudo","relative",">","dir","first"," ","+","~","preFilter","excess","unquoted","nodeNameSelector","pattern","operator","check","result","what","last","simple","forward","ofType","xml","outerCache","nodeIndex","start","useCache","lastChild","pseudo","args","setFilters","idx","matched","not","matcher","unmatched","has","text","innerText","lang","elemLang","hash","location","root","focus","activeElement","hasFocus","href","tabIndex","enabled","disabled","checked","selected","selectedIndex","empty","header","button","eq","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","prototype","filters","parseOnly","tokens","soFar","preFilters","cached","addCombinator","combinator","base","checkNonElements","doneName","oldCache","newCache","elementMatcher","matchers","multipleContexts","contexts","condense","map","newUnmatched","mapped","setMatcher","postFilter","postFinder","postSelector","temp","preMap","postMap","preexisting","elems","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","implicitRelative","matchContext","matchAnyContext","concat","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","dirrunsUnique","Math","random","token","compiled","div1","defaultValue","define","amd","module","exports"],"mappings":";CAUA,SAAWA,GAEX,GAAIC,GACHC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EAAU,SAAW,EAAI,GAAIC,MAC7BC,EAAetB,EAAOa,SACtBU,EAAU,EACVC,EAAO,EACPC,EAAaC,KACbC,EAAaD,KACbE,EAAgBF,KAChBG,EAAY,SAAUC,EAAGC,GAIxB,MAHKD,KAAMC,IACVpB,GAAe,GAET,GAIRqB,EAAe,GAAK,GAGpBC,KAAcC,eACdC,KACAC,EAAMD,EAAIC,IACVC,EAAcF,EAAIG,KAClBA,EAAOH,EAAIG,KACXC,EAAQJ,EAAII,MAGZC,EAAU,SAAUC,EAAMC,GAGzB,IAFA,GAAIzC,GAAI,EACP0C,EAAMF,EAAKG,OACAD,EAAJ1C,EAASA,IAChB,GAAKwC,EAAKxC,KAAOyC,EAChB,MAAOzC,EAGT,OAAO,IAGR4C,EAAW,6HAKXC,EAAa,sBAEbC,EAAoB,mCAKpBC,EAAaD,EAAkBE,QAAS,IAAK,MAG7CC,EAAa,MAAQJ,EAAa,KAAOC,EAAoB,OAASD,EAErE,gBAAkBA,EAElB,2DAA6DE,EAAa,OAASF,EACnF,OAEDK,EAAU,KAAOJ,EAAoB,wFAKPG,EAAa,eAM3CE,EAAc,GAAIC,QAAQP,EAAa,IAAK,KAC5CQ,EAAQ,GAAID,QAAQ,IAAMP,EAAa,8BAAgCA,EAAa,KAAM,KAE1FS,EAAS,GAAIF,QAAQ,IAAMP,EAAa,KAAOA,EAAa,KAC5DU,EAAe,GAAIH,QAAQ,IAAMP,EAAa,WAAaA,EAAa,IAAMA,EAAa,KAE3FW,EAAmB,GAAIJ,QAAQ,IAAMP,EAAa,iBAAmBA,EAAa,OAAQ,KAE1FY,EAAU,GAAIL,QAAQF,GACtBQ,EAAc,GAAIN,QAAQ,IAAML,EAAa,KAE7CY,GACCC,GAAM,GAAIR,QAAQ,MAAQN,EAAoB,KAC9Ce,MAAS,GAAIT,QAAQ,QAAUN,EAAoB,KACnDgB,IAAO,GAAIV,QAAQ,KAAON,EAAkBE,QAAS,IAAK,MAAS,KACnEe,KAAQ,GAAIX,QAAQ,IAAMH,GAC1Be,OAAU,GAAIZ,QAAQ,IAAMF,GAC5Be,MAAS,GAAIb,QAAQ,yDAA2DP,EAC/E,+BAAiCA,EAAa,cAAgBA,EAC9D,aAAeA,EAAa,SAAU,KACvCqB,KAAQ,GAAId,QAAQ,OAASR,EAAW,KAAM,KAG9CuB,aAAgB,GAAIf,QAAQ,IAAMP,EAAa,mDAC9CA,EAAa,mBAAqBA,EAAa,mBAAoB,MAGrEuB,EAAU,sCACVC,EAAU,SAEVC,EAAU,yBAGVC,EAAa,mCAEbC,GAAW,OACXC,GAAU,QAGVC,GAAY,GAAItB,QAAQ,qBAAuBP,EAAa,MAAQA,EAAa,OAAQ,MACzF8B,GAAY,SAAUC,EAAGC,EAASC,GACjC,GAAIC,GAAO,KAAOF,EAAU,KAI5B,OAAOE,KAASA,GAAQD,EACvBD,EACO,EAAPE,EAECC,OAAOC,aAAcF,EAAO,OAE5BC,OAAOC,aAAcF,GAAQ,GAAK,MAAe,KAAPA,EAAe,QAO5DG,GAAgB,WACfvE,IAIF,KACC0B,EAAK8C,MACHjD,EAAMI,EAAM8C,KAAM/D,EAAagE,YAChChE,EAAagE,YAIdnD,EAAKb,EAAagE,WAAW1C,QAAS2C,SACrC,MAAQC,IACTlD,GAAS8C,MAAOjD,EAAIS,OAGnB,SAAU6C,EAAQC,GACjBrD,EAAY+C,MAAOK,EAAQlD,EAAM8C,KAAKK,KAKvC,SAAUD,EAAQC,GACjB,GAAIC,GAAIF,EAAO7C,OACd3C,EAAI,CAEL,OAASwF,EAAOE,KAAOD,EAAIzF,MAC3BwF,EAAO7C,OAAS+C,EAAI,IAKvB,QAASC,IAAQC,EAAUC,EAASC,EAASC,GAC5C,GAAIC,GAAOvD,EAAMwD,EAAGX,EAEnBtF,EAAGkG,EAAQC,EAAKC,EAAKC,EAAYC,CAUlC,KAROT,EAAUA,EAAQU,eAAiBV,EAAUxE,KAAmBT,GACtED,EAAakF,GAGdA,EAAUA,GAAWjF,EACrBkF,EAAUA,MACVR,EAAWO,EAAQP,SAEM,gBAAbM,KAA0BA,GACxB,IAAbN,GAA+B,IAAbA,GAA+B,KAAbA,EAEpC,MAAOQ,EAGR,KAAMC,GAAQjF,EAAiB,CAG9B,GAAkB,KAAbwE,IAAoBU,EAAQzB,EAAWiC,KAAMZ,IAEjD,GAAMK,EAAID,EAAM,IACf,GAAkB,IAAbV,EAAiB,CAIrB,GAHA7C,EAAOoD,EAAQY,eAAgBR,IAG1BxD,IAAQA,EAAKiE,WAQjB,MAAOZ,EALP,IAAKrD,EAAKkE,KAAOV,EAEhB,MADAH,GAAQzD,KAAMI,GACPqD,MAOT,IAAKD,EAAQU,gBAAkB9D,EAAOoD,EAAQU,cAAcE,eAAgBR,KAC3E/E,EAAU2E,EAASpD,IAAUA,EAAKkE,KAAOV,EAEzC,MADAH,GAAQzD,KAAMI,GACPqD,MAKH,CAAA,GAAKE,EAAM,GAEjB,MADA3D,GAAK8C,MAAOW,EAASD,EAAQe,qBAAsBhB,IAC5CE,CAGD,KAAMG,EAAID,EAAM,KAAO/F,EAAQ4G,uBAErC,MADAxE,GAAK8C,MAAOW,EAASD,EAAQgB,uBAAwBZ,IAC9CH,EAKT,GAAK7F,EAAQ6G,OAAS/F,IAAcA,EAAUgG,KAAMnB,IAAc,CASjE,GARAQ,EAAMD,EAAMhF,EACZkF,EAAaR,EACbS,EAA2B,IAAbhB,GAAkBM,EAMd,IAAbN,GAAqD,WAAnCO,EAAQmB,SAASC,cAA6B,CACpEf,EAAS7F,EAAUuF,IAEbO,EAAMN,EAAQqB,aAAa,OAChCd,EAAMD,EAAInD,QAASyB,GAAS,QAE5BoB,EAAQsB,aAAc,KAAMf,GAE7BA,EAAM,QAAUA,EAAM,MAEtBpG,EAAIkG,EAAOvD,MACX,OAAQ3C,IACPkG,EAAOlG,GAAKoG,EAAMgB,GAAYlB,EAAOlG,GAEtCqG,GAAa7B,GAASuC,KAAMnB,IAAcyB,GAAaxB,EAAQa,aAAgBb,EAC/ES,EAAcJ,EAAOoB,KAAK,KAG3B,GAAKhB,EACJ,IAIC,MAHAjE,GAAK8C,MAAOW,EACXO,EAAWkB,iBAAkBjB,IAEvBR,EACN,MAAM0B,IACN,QACKrB,GACLN,EAAQ4B,gBAAgB,QAQ7B,MAAOlH,GAAQqF,EAAS5C,QAASK,EAAO,MAAQwC,EAASC,EAASC,GASnE,QAAStE,MACR,GAAIiG,KAEJ,SAASC,GAAOC,EAAKC,GAMpB,MAJKH,GAAKrF,KAAMuF,EAAM,KAAQ1H,EAAK4H,mBAE3BH,GAAOD,EAAKK,SAEZJ,EAAOC,EAAM,KAAQC,EAE9B,MAAOF,GAOR,QAASK,IAAcC,GAEtB,MADAA,GAAI9G,IAAY,EACT8G,EAOR,QAASC,IAAQD,GAChB,GAAIE,GAAMvH,EAASwH,cAAc,MAEjC,KACC,QAASH,EAAIE,GACZ,MAAO5C,GACR,OAAO,EACN,QAEI4C,EAAIzB,YACRyB,EAAIzB,WAAW2B,YAAaF,GAG7BA,EAAM,MASR,QAASG,IAAWC,EAAOC,GAC1B,GAAItG,GAAMqG,EAAME,MAAM,KACrBzI,EAAIuI,EAAM5F,MAEX,OAAQ3C,IACPE,EAAKwI,WAAYxG,EAAIlC,IAAOwI,EAU9B,QAASG,IAAc9G,EAAGC,GACzB,GAAI8G,GAAM9G,GAAKD,EACdgH,EAAOD,GAAsB,IAAf/G,EAAEyD,UAAiC,IAAfxD,EAAEwD,YAChCxD,EAAEgH,aAAe/G,KACjBF,EAAEiH,aAAe/G,EAGtB,IAAK8G,EACJ,MAAOA,EAIR,IAAKD,EACJ,MAASA,EAAMA,EAAIG,YAClB,GAAKH,IAAQ9G,EACZ,MAAO,EAKV,OAAOD,GAAI,EAAI,GAOhB,QAASmH,IAAmBC,GAC3B,MAAO,UAAUxG,GAChB,GAAIyG,GAAOzG,EAAKuE,SAASC,aACzB,OAAgB,UAATiC,GAAoBzG,EAAKwG,OAASA,GAQ3C,QAASE,IAAoBF,GAC5B,MAAO,UAAUxG,GAChB,GAAIyG,GAAOzG,EAAKuE,SAASC,aACzB,QAAiB,UAATiC,GAA6B,WAATA,IAAsBzG,EAAKwG,OAASA,GAQlE,QAASG,IAAwBnB,GAChC,MAAOD,IAAa,SAAUqB,GAE7B,MADAA,IAAYA,EACLrB,GAAa,SAAUjC,EAAM9E,GACnC,GAAIyE,GACH4D,EAAerB,KAAQlC,EAAKpD,OAAQ0G,GACpCrJ,EAAIsJ,EAAa3G,MAGlB,OAAQ3C,IACF+F,EAAOL,EAAI4D,EAAatJ,MAC5B+F,EAAKL,KAAOzE,EAAQyE,GAAKK,EAAKL,SAYnC,QAAS2B,IAAaxB,GACrB,MAAOA,IAAmD,mBAAjCA,GAAQe,sBAAwCf,EAI1E5F,EAAU0F,GAAO1F,WAOjBG,EAAQuF,GAAOvF,MAAQ,SAAUqC,GAGhC,GAAI8G,GAAkB9G,IAASA,EAAK8D,eAAiB9D,GAAM8G,eAC3D,OAAOA,GAA+C,SAA7BA,EAAgBvC,UAAsB,GAQhErG,EAAcgF,GAAOhF,YAAc,SAAU6I,GAC5C,GAAIC,GAAYC,EACfC,EAAMH,EAAOA,EAAKjD,eAAiBiD,EAAOnI,CAG3C,OAAKsI,KAAQ/I,GAA6B,IAAjB+I,EAAIrE,UAAmBqE,EAAIJ,iBAKpD3I,EAAW+I,EACX9I,EAAU8I,EAAIJ,gBACdG,EAASC,EAAIC,YAMRF,GAAUA,IAAWA,EAAOG,MAE3BH,EAAOI,iBACXJ,EAAOI,iBAAkB,SAAU5E,IAAe,GACvCwE,EAAOK,aAClBL,EAAOK,YAAa,WAAY7E,KAMlCpE,GAAkBV,EAAOuJ,GAQzB1J,EAAQgD,WAAaiF,GAAO,SAAUC,GAErC,MADAA,GAAI6B,UAAY,KACR7B,EAAIjB,aAAa,eAO1BjH,EAAQ2G,qBAAuBsB,GAAO,SAAUC,GAE/C,MADAA,GAAI8B,YAAaN,EAAIO,cAAc,MAC3B/B,EAAIvB,qBAAqB,KAAKjE,SAIvC1C,EAAQ4G,uBAAyBvC,EAAQyC,KAAM4C,EAAI9C,wBAMnD5G,EAAQkK,QAAUjC,GAAO,SAAUC,GAElC,MADAtH,GAAQoJ,YAAa9B,GAAMxB,GAAKxF,GACxBwI,EAAIS,oBAAsBT,EAAIS,kBAAmBjJ,GAAUwB,SAI/D1C,EAAQkK,SACZjK,EAAKmK,KAAS,GAAI,SAAU1D,EAAId,GAC/B,GAAuC,mBAA3BA,GAAQY,gBAAkC3F,EAAiB,CACtE,GAAImF,GAAIJ,EAAQY,eAAgBE,EAGhC,OAAOV,IAAKA,EAAES,YAAeT,QAG/B/F,EAAKoK,OAAW,GAAI,SAAU3D,GAC7B,GAAI4D,GAAS5D,EAAG3D,QAAS0B,GAAWC,GACpC,OAAO,UAAUlC,GAChB,MAAOA,GAAKyE,aAAa,QAAUqD,YAM9BrK,GAAKmK,KAAS,GAErBnK,EAAKoK,OAAW,GAAK,SAAU3D,GAC9B,GAAI4D,GAAS5D,EAAG3D,QAAS0B,GAAWC,GACpC,OAAO,UAAUlC,GAChB,GAAI+G,GAAwC,mBAA1B/G,GAAK+H,kBAAoC/H,EAAK+H,iBAAiB,KACjF,OAAOhB,IAAQA,EAAK3B,QAAU0C,KAMjCrK,EAAKmK,KAAU,IAAIpK,EAAQ2G,qBAC1B,SAAU6D,EAAK5E,GACd,MAA6C,mBAAjCA,GAAQe,qBACZf,EAAQe,qBAAsB6D,GAG1BxK,EAAQ6G,IACZjB,EAAQ0B,iBAAkBkD,GAD3B,QAKR,SAAUA,EAAK5E,GACd,GAAIpD,GACHiI,KACA1K,EAAI,EAEJ8F,EAAUD,EAAQe,qBAAsB6D,EAGzC,IAAa,MAARA,EAAc,CAClB,MAAShI,EAAOqD,EAAQ9F,KACA,IAAlByC,EAAK6C,UACToF,EAAIrI,KAAMI,EAIZ,OAAOiI,GAER,MAAO5E,IAIT5F,EAAKmK,KAAY,MAAIpK,EAAQ4G,wBAA0B,SAAUmD,EAAWnE,GAC3E,MAAK/E,GACG+E,EAAQgB,uBAAwBmD,GADxC,QAWDhJ,KAOAD,MAEMd,EAAQ6G,IAAMxC,EAAQyC,KAAM4C,EAAIpC,qBAGrCW,GAAO,SAAUC,GAMhBtH,EAAQoJ,YAAa9B,GAAMwC,UAAY,UAAYxJ,EAAU,qBAC3CA,EAAU,iEAOvBgH,EAAIZ,iBAAiB,wBAAwB5E,QACjD5B,EAAUsB,KAAM,SAAWQ,EAAa,gBAKnCsF,EAAIZ,iBAAiB,cAAc5E,QACxC5B,EAAUsB,KAAM,MAAQQ,EAAa,aAAeD,EAAW,KAI1DuF,EAAIZ,iBAAkB,QAAUpG,EAAU,MAAOwB,QACtD5B,EAAUsB,KAAK,MAMV8F,EAAIZ,iBAAiB,YAAY5E,QACtC5B,EAAUsB,KAAK,YAMV8F,EAAIZ,iBAAkB,KAAOpG,EAAU,MAAOwB,QACnD5B,EAAUsB,KAAK,cAIjB6F,GAAO,SAAUC,GAGhB,GAAIyC,GAAQjB,EAAIvB,cAAc,QAC9BwC,GAAMzD,aAAc,OAAQ,UAC5BgB,EAAI8B,YAAaW,GAAQzD,aAAc,OAAQ,KAI1CgB,EAAIZ,iBAAiB,YAAY5E,QACrC5B,EAAUsB,KAAM,OAASQ,EAAa,eAKjCsF,EAAIZ,iBAAiB,YAAY5E,QACtC5B,EAAUsB,KAAM,WAAY,aAI7B8F,EAAIZ,iBAAiB,QACrBxG,EAAUsB,KAAK,YAIXpC,EAAQ4K,gBAAkBvG,EAAQyC,KAAO9F,EAAUJ,EAAQI,SAChEJ,EAAQiK,uBACRjK,EAAQkK,oBACRlK,EAAQmK,kBACRnK,EAAQoK,qBAER/C,GAAO,SAAUC,GAGhBlI,EAAQiL,kBAAoBjK,EAAQmE,KAAM+C,EAAK,OAI/ClH,EAAQmE,KAAM+C,EAAK,aACnBnH,EAAcqB,KAAM,KAAMa,KAI5BnC,EAAYA,EAAU4B,QAAU,GAAIS,QAAQrC,EAAUuG,KAAK,MAC3DtG,EAAgBA,EAAc2B,QAAU,GAAIS,QAAQpC,EAAcsG,KAAK,MAIvEmC,EAAanF,EAAQyC,KAAMlG,EAAQsK,yBAKnCjK,EAAWuI,GAAcnF,EAAQyC,KAAMlG,EAAQK,UAC9C,SAAUW,EAAGC,GACZ,GAAIsJ,GAAuB,IAAfvJ,EAAEyD,SAAiBzD,EAAE0H,gBAAkB1H,EAClDwJ,EAAMvJ,GAAKA,EAAE4E,UACd,OAAO7E,KAAMwJ,MAAWA,GAAwB,IAAjBA,EAAI/F,YAClC8F,EAAMlK,SACLkK,EAAMlK,SAAUmK,GAChBxJ,EAAEsJ,yBAA8D,GAAnCtJ,EAAEsJ,wBAAyBE,MAG3D,SAAUxJ,EAAGC,GACZ,GAAKA,EACJ,MAASA,EAAIA,EAAE4E,WACd,GAAK5E,IAAMD,EACV,OAAO,CAIV,QAAO,GAOTD,EAAY6H,EACZ,SAAU5H,EAAGC,GAGZ,GAAKD,IAAMC,EAEV,MADApB,IAAe,EACR,CAIR,IAAI4K,IAAWzJ,EAAEsJ,yBAA2BrJ,EAAEqJ,uBAC9C,OAAKG,GACGA,GAIRA,GAAYzJ,EAAE0E,eAAiB1E,MAAUC,EAAEyE,eAAiBzE,GAC3DD,EAAEsJ,wBAAyBrJ,GAG3B,EAGc,EAAVwJ,IACFrL,EAAQsL,cAAgBzJ,EAAEqJ,wBAAyBtJ,KAAQyJ,EAGxDzJ,IAAM8H,GAAO9H,EAAE0E,gBAAkBlF,GAAgBH,EAASG,EAAcQ,GACrE,GAEHC,IAAM6H,GAAO7H,EAAEyE,gBAAkBlF,GAAgBH,EAASG,EAAcS,GACrE,EAIDrB,EACJ8B,EAAS9B,EAAWoB,GAAMU,EAAS9B,EAAWqB,GAChD,EAGe,EAAVwJ,EAAc,GAAK,IAE3B,SAAUzJ,EAAGC,GAEZ,GAAKD,IAAMC,EAEV,MADApB,IAAe,EACR,CAGR,IAAIkI,GACH5I,EAAI,EACJwL,EAAM3J,EAAE6E,WACR2E,EAAMvJ,EAAE4E,WACR+E,GAAO5J,GACP6J,GAAO5J,EAGR,KAAM0J,IAAQH,EACb,MAAOxJ,KAAM8H,EAAM,GAClB7H,IAAM6H,EAAM,EACZ6B,EAAM,GACNH,EAAM,EACN5K,EACE8B,EAAS9B,EAAWoB,GAAMU,EAAS9B,EAAWqB,GAChD,CAGK,IAAK0J,IAAQH,EACnB,MAAO1C,IAAc9G,EAAGC,EAIzB8G,GAAM/G,CACN,OAAS+G,EAAMA,EAAIlC,WAClB+E,EAAGE,QAAS/C,EAEbA,GAAM9G,CACN,OAAS8G,EAAMA,EAAIlC,WAClBgF,EAAGC,QAAS/C,EAIb,OAAQ6C,EAAGzL,KAAO0L,EAAG1L,GACpBA,GAGD,OAAOA,GAEN2I,GAAc8C,EAAGzL,GAAI0L,EAAG1L,IAGxByL,EAAGzL,KAAOqB,EAAe,GACzBqK,EAAG1L,KAAOqB,EAAe,EACzB,GAGKsI,GA1WC/I,GA6WT+E,GAAO1E,QAAU,SAAU2K,EAAMC,GAChC,MAAOlG,IAAQiG,EAAM,KAAM,KAAMC,IAGlClG,GAAOkF,gBAAkB,SAAUpI,EAAMmJ,GASxC,IAPOnJ,EAAK8D,eAAiB9D,KAAW7B,GACvCD,EAAa8B,GAIdmJ,EAAOA,EAAK5I,QAASQ,EAAkB,aAElCvD,EAAQ4K,kBAAmB/J,GAC5BE,GAAkBA,EAAc+F,KAAM6E,IACtC7K,GAAkBA,EAAUgG,KAAM6E,IAErC,IACC,GAAIE,GAAM7K,EAAQmE,KAAM3C,EAAMmJ,EAG9B,IAAKE,GAAO7L,EAAQiL,mBAGlBzI,EAAK7B,UAAuC,KAA3B6B,EAAK7B,SAAS0E,SAChC,MAAOwG,GAEP,MAAOvG,IAGV,MAAOI,IAAQiG,EAAMhL,EAAU,MAAQ6B,IAASE,OAAS,GAG1DgD,GAAOzE,SAAW,SAAU2E,EAASpD,GAKpC,OAHOoD,EAAQU,eAAiBV,KAAcjF,GAC7CD,EAAakF,GAEP3E,EAAU2E,EAASpD,IAG3BkD,GAAOoG,KAAO,SAAUtJ,EAAMyG,IAEtBzG,EAAK8D,eAAiB9D,KAAW7B,GACvCD,EAAa8B,EAGd,IAAIwF,GAAK/H,EAAKwI,WAAYQ,EAAKjC,eAE9B+E,EAAM/D,GAAMjG,EAAOoD,KAAMlF,EAAKwI,WAAYQ,EAAKjC,eAC9CgB,EAAIxF,EAAMyG,GAAOpI,GACjBmL,MAEF,OAAeA,UAARD,EACNA,EACA/L,EAAQgD,aAAenC,EACtB2B,EAAKyE,aAAcgC,IAClB8C,EAAMvJ,EAAK+H,iBAAiBtB,KAAU8C,EAAIE,UAC1CF,EAAInE,MACJ,MAGJlC,GAAOwG,MAAQ,SAAUC,GACxB,KAAM,IAAIC,OAAO,0CAA4CD,IAO9DzG,GAAO2G,WAAa,SAAUxG,GAC7B,GAAIrD,GACH8J,KACA7G,EAAI,EACJ1F,EAAI,CAOL,IAJAU,GAAgBT,EAAQuM,iBACxB/L,GAAaR,EAAQwM,YAAc3G,EAAQxD,MAAO,GAClDwD,EAAQ4G,KAAM9K,GAETlB,EAAe,CACnB,MAAS+B,EAAOqD,EAAQ9F,KAClByC,IAASqD,EAAS9F,KACtB0F,EAAI6G,EAAWlK,KAAMrC,GAGvB,OAAQ0F,IACPI,EAAQ6G,OAAQJ,EAAY7G,GAAK,GAQnC,MAFAjF,GAAY,KAELqF,GAOR3F,EAAUwF,GAAOxF,QAAU,SAAUsC,GACpC,GAAI+G,GACHsC,EAAM,GACN9L,EAAI,EACJsF,EAAW7C,EAAK6C,QAEjB,IAAMA,GAMC,GAAkB,IAAbA,GAA+B,IAAbA,GAA+B,KAAbA,EAAkB,CAGjE,GAAiC,gBAArB7C,GAAKmK,YAChB,MAAOnK,GAAKmK,WAGZ,KAAMnK,EAAOA,EAAKoK,WAAYpK,EAAMA,EAAOA,EAAKsG,YAC/C+C,GAAO3L,EAASsC,OAGZ,IAAkB,IAAb6C,GAA+B,IAAbA,EAC7B,MAAO7C,GAAKqK,cAhBZ,OAAStD,EAAO/G,EAAKzC,KAEpB8L,GAAO3L,EAASqJ,EAkBlB,OAAOsC,IAGR5L,EAAOyF,GAAOoH,WAGbjF,YAAa,GAEbkF,aAAchF,GAEdhC,MAAOrC,EAEP+E,cAEA2B,QAEA4C,UACCC,KAAOC,IAAK,aAAcC,OAAO,GACjCC,KAAOF,IAAK,cACZG,KAAOH,IAAK,kBAAmBC,OAAO,GACtCG,KAAOJ,IAAK,oBAGbK,WACCzJ,KAAQ,SAAUiC,GAUjB,MATAA,GAAM,GAAKA,EAAM,GAAGhD,QAAS0B,GAAWC,IAGxCqB,EAAM,IAAOA,EAAM,IAAMA,EAAM,IAAMA,EAAM,IAAM,IAAKhD,QAAS0B,GAAWC,IAExD,OAAbqB,EAAM,KACVA,EAAM,GAAK,IAAMA,EAAM,GAAK,KAGtBA,EAAM1D,MAAO,EAAG,IAGxB2B,MAAS,SAAU+B,GA6BlB,MAlBAA,GAAM,GAAKA,EAAM,GAAGiB,cAEY,QAA3BjB,EAAM,GAAG1D,MAAO,EAAG,IAEjB0D,EAAM,IACXL,GAAOwG,MAAOnG,EAAM,IAKrBA,EAAM,KAAQA,EAAM,GAAKA,EAAM,IAAMA,EAAM,IAAM,GAAK,GAAmB,SAAbA,EAAM,IAA8B,QAAbA,EAAM,KACzFA,EAAM,KAAUA,EAAM,GAAKA,EAAM,IAAqB,QAAbA,EAAM,KAGpCA,EAAM,IACjBL,GAAOwG,MAAOnG,EAAM,IAGdA,GAGRhC,OAAU,SAAUgC,GACnB,GAAIyH,GACHC,GAAY1H,EAAM,IAAMA,EAAM,EAE/B,OAAKrC,GAAiB,MAAEoD,KAAMf,EAAM,IAC5B,MAIHA,EAAM,GACVA,EAAM,GAAKA,EAAM,IAAMA,EAAM,IAAM,GAGxB0H,GAAYjK,EAAQsD,KAAM2G,KAEpCD,EAASpN,EAAUqN,GAAU,MAE7BD,EAASC,EAASnL,QAAS,IAAKmL,EAAS/K,OAAS8K,GAAWC,EAAS/K,UAGvEqD,EAAM,GAAKA,EAAM,GAAG1D,MAAO,EAAGmL,GAC9BzH,EAAM,GAAK0H,EAASpL,MAAO,EAAGmL,IAIxBzH,EAAM1D,MAAO,EAAG,MAIzBgI,QAECxG,IAAO,SAAU6J,GAChB,GAAI3G,GAAW2G,EAAiB3K,QAAS0B,GAAWC,IAAYsC,aAChE,OAA4B,MAArB0G,EACN,WAAa,OAAO,GACpB,SAAUlL,GACT,MAAOA,GAAKuE,UAAYvE,EAAKuE,SAASC,gBAAkBD,IAI3DnD,MAAS,SAAUmG,GAClB,GAAI4D,GAAUpM,EAAYwI,EAAY,IAEtC,OAAO4D,KACLA,EAAU,GAAIxK,QAAQ,MAAQP,EAAa,IAAMmH,EAAY,IAAMnH,EAAa,SACjFrB,EAAYwI,EAAW,SAAUvH,GAChC,MAAOmL,GAAQ7G,KAAgC,gBAAnBtE,GAAKuH,WAA0BvH,EAAKuH,WAA0C,mBAAtBvH,GAAKyE,cAAgCzE,EAAKyE,aAAa,UAAY,OAI1JnD,KAAQ,SAAUmF,EAAM2E,EAAUC,GACjC,MAAO,UAAUrL,GAChB,GAAIsL,GAASpI,GAAOoG,KAAMtJ,EAAMyG,EAEhC,OAAe,OAAV6E,EACgB,OAAbF,EAEFA,GAINE,GAAU,GAEU,MAAbF,EAAmBE,IAAWD,EACvB,OAAbD,EAAoBE,IAAWD,EAClB,OAAbD,EAAoBC,GAAqC,IAA5BC,EAAOxL,QAASuL,GAChC,OAAbD,EAAoBC,GAASC,EAAOxL,QAASuL,GAAU,GAC1C,OAAbD,EAAoBC,GAASC,EAAOzL,OAAQwL,EAAMnL,UAAamL,EAClD,OAAbD,GAAsB,IAAME,EAAO/K,QAASG,EAAa,KAAQ,KAAMZ,QAASuL,GAAU,GAC7E,OAAbD,EAAoBE,IAAWD,GAASC,EAAOzL,MAAO,EAAGwL,EAAMnL,OAAS,KAAQmL,EAAQ,KACxF,IAZO,IAgBV7J,MAAS,SAAUgF,EAAM+E,EAAM3E,EAAU+D,EAAOa,GAC/C,GAAIC,GAAgC,QAAvBjF,EAAK3G,MAAO,EAAG,GAC3B6L,EAA+B,SAArBlF,EAAK3G,MAAO,IACtB8L,EAAkB,YAATJ,CAEV,OAAiB,KAAVZ,GAAwB,IAATa,EAGrB,SAAUxL,GACT,QAASA,EAAKiE,YAGf,SAAUjE,EAAMoD,EAASwI,GACxB,GAAI1G,GAAO2G,EAAY9E,EAAMX,EAAM0F,EAAWC,EAC7CrB,EAAMe,IAAWC,EAAU,cAAgB,kBAC3CzE,EAASjH,EAAKiE,WACdwC,EAAOkF,GAAU3L,EAAKuE,SAASC,cAC/BwH,GAAYJ,IAAQD,CAErB,IAAK1E,EAAS,CAGb,GAAKwE,EAAS,CACb,MAAQf,EAAM,CACb3D,EAAO/G,CACP,OAAS+G,EAAOA,EAAM2D,GACrB,GAAKiB,EAAS5E,EAAKxC,SAASC,gBAAkBiC,EAAyB,IAAlBM,EAAKlE,SACzD,OAAO,CAITkJ,GAAQrB,EAAe,SAATlE,IAAoBuF,GAAS,cAE5C,OAAO,EAMR,GAHAA,GAAUL,EAAUzE,EAAOmD,WAAanD,EAAOgF,WAG1CP,GAAWM,EAAW,CAE1BH,EAAa5E,EAAQvI,KAAcuI,EAAQvI,OAC3CwG,EAAQ2G,EAAYrF,OACpBsF,EAAY5G,EAAM,KAAOrG,GAAWqG,EAAM,GAC1CkB,EAAOlB,EAAM,KAAOrG,GAAWqG,EAAM,GACrC6B,EAAO+E,GAAa7E,EAAOrE,WAAYkJ,EAEvC,OAAS/E,IAAS+E,GAAa/E,GAAQA,EAAM2D,KAG3CtE,EAAO0F,EAAY,IAAMC,EAAMrM,MAGhC,GAAuB,IAAlBqH,EAAKlE,YAAoBuD,GAAQW,IAAS/G,EAAO,CACrD6L,EAAYrF,IAAW3H,EAASiN,EAAW1F,EAC3C,YAKI,IAAK4F,IAAa9G,GAASlF,EAAMtB,KAAcsB,EAAMtB,QAAkB8H,KAAWtB,EAAM,KAAOrG,EACrGuH,EAAOlB,EAAM,OAKb,OAAS6B,IAAS+E,GAAa/E,GAAQA,EAAM2D,KAC3CtE,EAAO0F,EAAY,IAAMC,EAAMrM,MAEhC,IAAOiM,EAAS5E,EAAKxC,SAASC,gBAAkBiC,EAAyB,IAAlBM,EAAKlE,aAAsBuD,IAE5E4F,KACHjF,EAAMrI,KAAcqI,EAAMrI,QAAkB8H,IAAW3H,EAASuH,IAG7DW,IAAS/G,GACb,KAQJ,OADAoG,IAAQoF,EACDpF,IAASuE,GAAWvE,EAAOuE,IAAU,GAAKvE,EAAOuE,GAAS,KAKrEpJ,OAAU,SAAU2K,EAAQtF,GAK3B,GAAIuF,GACH3G,EAAK/H,EAAKgD,QAASyL,IAAYzO,EAAK2O,WAAYF,EAAO1H,gBACtDtB,GAAOwG,MAAO,uBAAyBwC,EAKzC,OAAK1G,GAAI9G,GACD8G,EAAIoB,GAIPpB,EAAGtF,OAAS,GAChBiM,GAASD,EAAQA,EAAQ,GAAItF,GACtBnJ,EAAK2O,WAAW5M,eAAgB0M,EAAO1H,eAC7Ce,GAAa,SAAUjC,EAAM9E,GAC5B,GAAI6N,GACHC,EAAU9G,EAAIlC,EAAMsD,GACpBrJ,EAAI+O,EAAQpM,MACb,OAAQ3C,IACP8O,EAAMvM,EAASwD,EAAMgJ,EAAQ/O,IAC7B+F,EAAM+I,KAAW7N,EAAS6N,GAAQC,EAAQ/O,MAG5C,SAAUyC,GACT,MAAOwF,GAAIxF,EAAM,EAAGmM,KAIhB3G,IAIT/E,SAEC8L,IAAOhH,GAAa,SAAUpC,GAI7B,GAAIgF,MACH9E,KACAmJ,EAAU3O,EAASsF,EAAS5C,QAASK,EAAO,MAE7C,OAAO4L,GAAS9N,GACf6G,GAAa,SAAUjC,EAAM9E,EAAS4E,EAASwI,GAC9C,GAAI5L,GACHyM,EAAYD,EAASlJ,EAAM,KAAMsI,MACjCrO,EAAI+F,EAAKpD,MAGV,OAAQ3C,KACDyC,EAAOyM,EAAUlP,MACtB+F,EAAK/F,KAAOiB,EAAQjB,GAAKyC,MAI5B,SAAUA,EAAMoD,EAASwI,GAKxB,MAJAzD,GAAM,GAAKnI,EACXwM,EAASrE,EAAO,KAAMyD,EAAKvI,GAE3B8E,EAAM,GAAK,MACH9E,EAAQ3D,SAInBgN,IAAOnH,GAAa,SAAUpC,GAC7B,MAAO,UAAUnD,GAChB,MAAOkD,IAAQC,EAAUnD,GAAOE,OAAS,KAI3CzB,SAAY8G,GAAa,SAAUoH,GAElC,MADAA,GAAOA,EAAKpM,QAAS0B,GAAWC,IACzB,SAAUlC,GAChB,OAASA,EAAKmK,aAAenK,EAAK4M,WAAalP,EAASsC,IAASF,QAAS6M,GAAS,MAWrFE,KAAQtH,GAAc,SAAUsH,GAM/B,MAJM5L,GAAYqD,KAAKuI,GAAQ,KAC9B3J,GAAOwG,MAAO,qBAAuBmD,GAEtCA,EAAOA,EAAKtM,QAAS0B,GAAWC,IAAYsC,cACrC,SAAUxE,GAChB,GAAI8M,EACJ,GACC,IAAMA,EAAWzO,EAChB2B,EAAK6M,KACL7M,EAAKyE,aAAa,aAAezE,EAAKyE,aAAa,QAGnD,MADAqI,GAAWA,EAAStI,cACbsI,IAAaD,GAA2C,IAAnCC,EAAShN,QAAS+M,EAAO,YAE5C7M,EAAOA,EAAKiE,aAAiC,IAAlBjE,EAAK6C,SAC3C,QAAO,KAKTE,OAAU,SAAU/C,GACnB,GAAI+M,GAAOzP,EAAO0P,UAAY1P,EAAO0P,SAASD,IAC9C,OAAOA,IAAQA,EAAKlN,MAAO,KAAQG,EAAKkE,IAGzC+I,KAAQ,SAAUjN,GACjB,MAAOA,KAAS5B,GAGjB8O,MAAS,SAAUlN,GAClB,MAAOA,KAAS7B,EAASgP,iBAAmBhP,EAASiP,UAAYjP,EAASiP,gBAAkBpN,EAAKwG,MAAQxG,EAAKqN,OAASrN,EAAKsN,WAI7HC,QAAW,SAAUvN,GACpB,MAAOA,GAAKwN,YAAa,GAG1BA,SAAY,SAAUxN,GACrB,MAAOA,GAAKwN,YAAa,GAG1BC,QAAW,SAAUzN,GAGpB,GAAIuE,GAAWvE,EAAKuE,SAASC,aAC7B,OAAqB,UAAbD,KAA0BvE,EAAKyN,SAA0B,WAAblJ,KAA2BvE,EAAK0N,UAGrFA,SAAY,SAAU1N,GAOrB,MAJKA,GAAKiE,YACTjE,EAAKiE,WAAW0J,cAGV3N,EAAK0N,YAAa,GAI1BE,MAAS,SAAU5N,GAKlB,IAAMA,EAAOA,EAAKoK,WAAYpK,EAAMA,EAAOA,EAAKsG,YAC/C,GAAKtG,EAAK6C,SAAW,EACpB,OAAO,CAGT,QAAO,GAGRoE,OAAU,SAAUjH,GACnB,OAAQvC,EAAKgD,QAAe,MAAGT,IAIhC6N,OAAU,SAAU7N,GACnB,MAAO4B,GAAQ0C,KAAMtE,EAAKuE,WAG3B4D,MAAS,SAAUnI,GAClB,MAAO2B,GAAQ2C,KAAMtE,EAAKuE,WAG3BuJ,OAAU,SAAU9N,GACnB,GAAIyG,GAAOzG,EAAKuE,SAASC,aACzB,OAAgB,UAATiC,GAAkC,WAAdzG,EAAKwG,MAA8B,WAATC,GAGtDkG,KAAQ,SAAU3M,GACjB,GAAIsJ,EACJ,OAAuC,UAAhCtJ,EAAKuE,SAASC,eACN,SAAdxE,EAAKwG,OAImC,OAArC8C,EAAOtJ,EAAKyE,aAAa,UAA2C,SAAvB6E,EAAK9E,gBAIvDmG,MAAShE,GAAuB,WAC/B,OAAS,KAGV6E,KAAQ7E,GAAuB,SAAUE,EAAc3G,GACtD,OAASA,EAAS,KAGnB6N,GAAMpH,GAAuB,SAAUE,EAAc3G,EAAQ0G,GAC5D,OAAoB,EAAXA,EAAeA,EAAW1G,EAAS0G,KAG7CoH,KAAQrH,GAAuB,SAAUE,EAAc3G,GAEtD,IADA,GAAI3C,GAAI,EACI2C,EAAJ3C,EAAYA,GAAK,EACxBsJ,EAAajH,KAAMrC,EAEpB,OAAOsJ,KAGRoH,IAAOtH,GAAuB,SAAUE,EAAc3G,GAErD,IADA,GAAI3C,GAAI,EACI2C,EAAJ3C,EAAYA,GAAK,EACxBsJ,EAAajH,KAAMrC,EAEpB,OAAOsJ,KAGRqH,GAAMvH,GAAuB,SAAUE,EAAc3G,EAAQ0G,GAE5D,IADA,GAAIrJ,GAAe,EAAXqJ,EAAeA,EAAW1G,EAAS0G,IACjCrJ,GAAK,GACdsJ,EAAajH,KAAMrC,EAEpB,OAAOsJ,KAGRsH,GAAMxH,GAAuB,SAAUE,EAAc3G,EAAQ0G,GAE5D,IADA,GAAIrJ,GAAe,EAAXqJ,EAAeA,EAAW1G,EAAS0G,IACjCrJ,EAAI2C,GACb2G,EAAajH,KAAMrC,EAEpB,OAAOsJ,OAKVpJ,EAAKgD,QAAa,IAAIhD,EAAKgD,QAAY,EAGvC,KAAMlD,KAAO6Q,OAAO,EAAMC,UAAU,EAAMC,MAAM,EAAMC,UAAU,EAAMC,OAAO,GAC5E/Q,EAAKgD,QAASlD,GAAMgJ,GAAmBhJ,EAExC,KAAMA,KAAOkR,QAAQ,EAAMC,OAAO,GACjCjR,EAAKgD,QAASlD,GAAMmJ,GAAoBnJ,EAIzC,SAAS6O,OACTA,GAAWuC,UAAYlR,EAAKmR,QAAUnR,EAAKgD,QAC3ChD,EAAK2O,WAAa,GAAIA,IAEtBxO,EAAWsF,GAAOtF,SAAW,SAAUuF,EAAU0L,GAChD,GAAIvC,GAAS/I,EAAOuL,EAAQtI,EAC3BuI,EAAOtL,EAAQuL,EACfC,EAAShQ,EAAYkE,EAAW,IAEjC,IAAK8L,EACJ,MAAOJ,GAAY,EAAII,EAAOpP,MAAO,EAGtCkP,GAAQ5L,EACRM,KACAuL,EAAavR,EAAKsN,SAElB,OAAQgE,EAAQ,GAGTzC,IAAY/I,EAAQ1C,EAAOkD,KAAMgL,OACjCxL,IAEJwL,EAAQA,EAAMlP,MAAO0D,EAAM,GAAGrD,SAAY6O,GAE3CtL,EAAO7D,KAAOkP,OAGfxC,GAAU,GAGJ/I,EAAQzC,EAAaiD,KAAMgL,MAChCzC,EAAU/I,EAAM+B,QAChBwJ,EAAOlP,MACNwF,MAAOkH,EAEP9F,KAAMjD,EAAM,GAAGhD,QAASK,EAAO,OAEhCmO,EAAQA,EAAMlP,MAAOyM,EAAQpM,QAI9B,KAAMsG,IAAQ/I,GAAKoK,SACZtE,EAAQrC,EAAWsF,GAAOzC,KAAMgL,KAAcC,EAAYxI,MAC9DjD,EAAQyL,EAAYxI,GAAQjD,MAC7B+I,EAAU/I,EAAM+B,QAChBwJ,EAAOlP,MACNwF,MAAOkH,EACP9F,KAAMA,EACNhI,QAAS+E,IAEVwL,EAAQA,EAAMlP,MAAOyM,EAAQpM,QAI/B,KAAMoM,EACL,MAOF,MAAOuC,GACNE,EAAM7O,OACN6O,EACC7L,GAAOwG,MAAOvG,GAEdlE,EAAYkE,EAAUM,GAAS5D,MAAO,GAGzC,SAAS8E,IAAYmK,GAIpB,IAHA,GAAIvR,GAAI,EACP0C,EAAM6O,EAAO5O,OACbiD,EAAW,GACAlD,EAAJ1C,EAASA,IAChB4F,GAAY2L,EAAOvR,GAAG6H,KAEvB,OAAOjC,GAGR,QAAS+L,IAAe1C,EAAS2C,EAAYC,GAC5C,GAAI1E,GAAMyE,EAAWzE,IACpB2E,EAAmBD,GAAgB,eAAR1E,EAC3B4E,EAAWxQ,GAEZ,OAAOqQ,GAAWxE,MAEjB,SAAU3K,EAAMoD,EAASwI,GACxB,MAAS5L,EAAOA,EAAM0K,GACrB,GAAuB,IAAlB1K,EAAK6C,UAAkBwM,EAC3B,MAAO7C,GAASxM,EAAMoD,EAASwI,IAMlC,SAAU5L,EAAMoD,EAASwI,GACxB,GAAI2D,GAAU1D,EACb2D,GAAa3Q,EAASyQ,EAGvB,IAAK1D,GACJ,MAAS5L,EAAOA,EAAM0K,GACrB,IAAuB,IAAlB1K,EAAK6C,UAAkBwM,IACtB7C,EAASxM,EAAMoD,EAASwI,GAC5B,OAAO,MAKV,OAAS5L,EAAOA,EAAM0K,GACrB,GAAuB,IAAlB1K,EAAK6C,UAAkBwM,EAAmB,CAE9C,GADAxD,EAAa7L,EAAMtB,KAAcsB,EAAMtB,QACjC6Q,EAAW1D,EAAYnB,KAC5B6E,EAAU,KAAQ1Q,GAAW0Q,EAAU,KAAQD,EAG/C,MAAQE,GAAU,GAAMD,EAAU,EAMlC,IAHA1D,EAAYnB,GAAQ8E,EAGdA,EAAU,GAAMhD,EAASxM,EAAMoD,EAASwI,GAC7C,OAAO,IASf,QAAS6D,IAAgBC,GACxB,MAAOA,GAASxP,OAAS,EACxB,SAAUF,EAAMoD,EAASwI,GACxB,GAAIrO,GAAImS,EAASxP,MACjB,OAAQ3C,IACP,IAAMmS,EAASnS,GAAIyC,EAAMoD,EAASwI,GACjC,OAAO,CAGT,QAAO,GAER8D,EAAS,GAGX,QAASC,IAAkBxM,EAAUyM,EAAUvM,GAG9C,IAFA,GAAI9F,GAAI,EACP0C,EAAM2P,EAAS1P,OACJD,EAAJ1C,EAASA,IAChB2F,GAAQC,EAAUyM,EAASrS,GAAI8F,EAEhC,OAAOA,GAGR,QAASwM,IAAUpD,EAAWqD,EAAKjI,EAAQzE,EAASwI,GAOnD,IANA,GAAI5L,GACH+P,KACAxS,EAAI,EACJ0C,EAAMwM,EAAUvM,OAChB8P,EAAgB,MAAPF,EAEE7P,EAAJ1C,EAASA,KACVyC,EAAOyM,EAAUlP,OAChBsK,GAAUA,EAAQ7H,EAAMoD,EAASwI,MACtCmE,EAAanQ,KAAMI,GACdgQ,GACJF,EAAIlQ,KAAMrC,GAMd,OAAOwS,GAGR,QAASE,IAAYlF,EAAW5H,EAAUqJ,EAAS0D,EAAYC,EAAYC,GAO1E,MANKF,KAAeA,EAAYxR,KAC/BwR,EAAaD,GAAYC,IAErBC,IAAeA,EAAYzR,KAC/ByR,EAAaF,GAAYE,EAAYC,IAE/B7K,GAAa,SAAUjC,EAAMD,EAASD,EAASwI,GACrD,GAAIyE,GAAM9S,EAAGyC,EACZsQ,KACAC,KACAC,EAAcnN,EAAQnD,OAGtBuQ,EAAQnN,GAAQqM,GAAkBxM,GAAY,IAAKC,EAAQP,UAAaO,GAAYA,MAGpFsN,GAAY3F,IAAezH,GAASH,EAEnCsN,EADAZ,GAAUY,EAAOH,EAAQvF,EAAW3H,EAASwI,GAG9C+E,EAAanE,EAEZ2D,IAAgB7M,EAAOyH,EAAYyF,GAAeN,MAMjD7M,EACDqN,CAQF,IALKlE,GACJA,EAASkE,EAAWC,EAAYvN,EAASwI,GAIrCsE,EAAa,CACjBG,EAAOR,GAAUc,EAAYJ,GAC7BL,EAAYG,KAAUjN,EAASwI,GAG/BrO,EAAI8S,EAAKnQ,MACT,OAAQ3C,KACDyC,EAAOqQ,EAAK9S,MACjBoT,EAAYJ,EAAQhT,MAASmT,EAAWH,EAAQhT,IAAOyC,IAK1D,GAAKsD,GACJ,GAAK6M,GAAcpF,EAAY,CAC9B,GAAKoF,EAAa,CAEjBE,KACA9S,EAAIoT,EAAWzQ,MACf,OAAQ3C,KACDyC,EAAO2Q,EAAWpT,KAEvB8S,EAAKzQ,KAAO8Q,EAAUnT,GAAKyC,EAG7BmQ,GAAY,KAAOQ,KAAkBN,EAAMzE,GAI5CrO,EAAIoT,EAAWzQ,MACf,OAAQ3C,KACDyC,EAAO2Q,EAAWpT,MACtB8S,EAAOF,EAAarQ,EAASwD,EAAMtD,GAASsQ,EAAO/S,IAAM,KAE1D+F,EAAK+M,KAAUhN,EAAQgN,GAAQrQ,SAOlC2Q,GAAad,GACZc,IAAetN,EACdsN,EAAWzG,OAAQsG,EAAaG,EAAWzQ,QAC3CyQ,GAEGR,EACJA,EAAY,KAAM9M,EAASsN,EAAY/E,GAEvChM,EAAK8C,MAAOW,EAASsN,KAMzB,QAASC,IAAmB9B,GAwB3B,IAvBA,GAAI+B,GAAcrE,EAASvJ,EAC1BhD,EAAM6O,EAAO5O,OACb4Q,EAAkBrT,EAAK+M,SAAUsE,EAAO,GAAGtI,MAC3CuK,EAAmBD,GAAmBrT,EAAK+M,SAAS,KACpDjN,EAAIuT,EAAkB,EAAI,EAG1BE,EAAe9B,GAAe,SAAUlP,GACvC,MAAOA,KAAS6Q,GACdE,GAAkB,GACrBE,EAAkB/B,GAAe,SAAUlP,GAC1C,MAAOF,GAAS+Q,EAAc7Q,GAAS,IACrC+Q,GAAkB,GACrBrB,GAAa,SAAU1P,EAAMoD,EAASwI,GACrC,GAAIvC,IAASyH,IAAqBlF,GAAOxI,IAAYrF,MACnD8S,EAAezN,GAASP,SACxBmO,EAAchR,EAAMoD,EAASwI,GAC7BqF,EAAiBjR,EAAMoD,EAASwI,GAGlC,OADAiF,GAAe,KACRxH,IAGGpJ,EAAJ1C,EAASA,IAChB,GAAMiP,EAAU/O,EAAK+M,SAAUsE,EAAOvR,GAAGiJ,MACxCkJ,GAAaR,GAAcO,GAAgBC,GAAYlD,QACjD,CAIN,GAHAA,EAAU/O,EAAKoK,OAAQiH,EAAOvR,GAAGiJ,MAAO9D,MAAO,KAAMoM,EAAOvR,GAAGiB,SAG1DgO,EAAS9N,GAAY,CAGzB,IADAuE,IAAM1F,EACM0C,EAAJgD,EAASA,IAChB,GAAKxF,EAAK+M,SAAUsE,EAAO7L,GAAGuD,MAC7B,KAGF,OAAOyJ,IACN1S,EAAI,GAAKkS,GAAgBC,GACzBnS,EAAI,GAAKoH,GAERmK,EAAOjP,MAAO,EAAGtC,EAAI,GAAI2T,QAAS9L,MAAgC,MAAzB0J,EAAQvR,EAAI,GAAIiJ,KAAe,IAAM,MAC7EjG,QAASK,EAAO,MAClB4L,EACIvJ,EAAJ1F,GAASqT,GAAmB9B,EAAOjP,MAAOtC,EAAG0F,IACzChD,EAAJgD,GAAW2N,GAAoB9B,EAASA,EAAOjP,MAAOoD,IAClDhD,EAAJgD,GAAW0B,GAAYmK,IAGzBY,EAAS9P,KAAM4M,GAIjB,MAAOiD,IAAgBC,GAGxB,QAASyB,IAA0BC,EAAiBC,GACnD,GAAIC,GAAQD,EAAYnR,OAAS,EAChCqR,EAAYH,EAAgBlR,OAAS,EACrCsR,EAAe,SAAUlO,EAAMF,EAASwI,EAAKvI,EAASoO,GACrD,GAAIzR,GAAMiD,EAAGuJ,EACZkF,EAAe,EACfnU,EAAI,IACJkP,EAAYnJ,MACZqO,KACAC,EAAgB7T,EAEhB0S,EAAQnN,GAAQiO,GAAa9T,EAAKmK,KAAU,IAAG,IAAK6J,GAEpDI,EAAiBhT,GAA4B,MAAjB+S,EAAwB,EAAIE,KAAKC,UAAY,GACzE9R,EAAMwQ,EAAMvQ,MAUb,KARKuR,IACJ1T,EAAmBqF,IAAYjF,GAAYiF,GAOpC7F,IAAM0C,GAA4B,OAApBD,EAAOyQ,EAAMlT,IAAaA,IAAM,CACrD,GAAKgU,GAAavR,EAAO,CACxBiD,EAAI,CACJ,OAASuJ,EAAU4E,EAAgBnO,KAClC,GAAKuJ,EAASxM,EAAMoD,EAASwI,GAAQ,CACpCvI,EAAQzD,KAAMI,EACd,OAGGyR,IACJ5S,EAAUgT,GAKPP,KAEEtR,GAAQwM,GAAWxM,IACxB0R,IAIIpO,GACJmJ,EAAU7M,KAAMI,IAOnB,GADA0R,GAAgBnU,EACX+T,GAAS/T,IAAMmU,EAAe,CAClCzO,EAAI,CACJ,OAASuJ,EAAU6E,EAAYpO,KAC9BuJ,EAASC,EAAWkF,EAAYvO,EAASwI,EAG1C,IAAKtI,EAAO,CAEX,GAAKoO,EAAe,EACnB,MAAQnU,IACAkP,EAAUlP,IAAMoU,EAAWpU,KACjCoU,EAAWpU,GAAKmC,EAAIiD,KAAMU,GAM7BsO,GAAa9B,GAAU8B,GAIxB/R,EAAK8C,MAAOW,EAASsO,GAGhBF,IAAcnO,GAAQqO,EAAWzR,OAAS,GAC5CwR,EAAeL,EAAYnR,OAAW,GAExCgD,GAAO2G,WAAYxG,GAUrB,MALKoO,KACJ5S,EAAUgT,EACV9T,EAAmB6T,GAGbnF,EAGT,OAAO6E,GACN/L,GAAciM,GACdA,EAGF3T,EAAUqF,GAAOrF,QAAU,SAAUsF,EAAUI,GAC9C,GAAIhG,GACH8T,KACAD,KACAnC,EAAS/P,EAAeiE,EAAW,IAEpC,KAAM8L,EAAS,CAER1L,IACLA,EAAQ3F,EAAUuF,IAEnB5F,EAAIgG,EAAMrD,MACV,OAAQ3C,IACP0R,EAAS2B,GAAmBrN,EAAMhG,IAC7B0R,EAAQvQ,GACZ2S,EAAYzR,KAAMqP,GAElBmC,EAAgBxR,KAAMqP,EAKxBA,GAAS/P,EAAeiE,EAAUgO,GAA0BC,EAAiBC,IAG7EpC,EAAO9L,SAAWA,EAEnB,MAAO8L,IAYRnR,EAASoF,GAAOpF,OAAS,SAAUqF,EAAUC,EAASC,EAASC,GAC9D,GAAI/F,GAAGuR,EAAQkD,EAAOxL,EAAMoB,EAC3BqK,EAA+B,kBAAb9O,IAA2BA,EAC7CI,GAASD,GAAQ1F,EAAWuF,EAAW8O,EAAS9O,UAAYA,EAK7D,IAHAE,EAAUA,MAGY,IAAjBE,EAAMrD,OAAe,CAIzB,GADA4O,EAASvL,EAAM,GAAKA,EAAM,GAAG1D,MAAO,GAC/BiP,EAAO5O,OAAS,GAAkC,QAA5B8R,EAAQlD,EAAO,IAAItI,MAC5ChJ,EAAQkK,SAAgC,IAArBtE,EAAQP,UAAkBxE,GAC7CZ,EAAK+M,SAAUsE,EAAO,GAAGtI,MAAS,CAGnC,GADApD,GAAY3F,EAAKmK,KAAS,GAAGoK,EAAMxT,QAAQ,GAAG+B,QAAQ0B,GAAWC,IAAYkB,QAAkB,IACzFA,EACL,MAAOC,EAGI4O,KACX7O,EAAUA,EAAQa,YAGnBd,EAAWA,EAAStD,MAAOiP,EAAOxJ,QAAQF,MAAMlF,QAIjD3C,EAAI2D,EAAwB,aAAEoD,KAAMnB,GAAa,EAAI2L,EAAO5O,MAC5D,OAAQ3C,IAAM,CAIb,GAHAyU,EAAQlD,EAAOvR,GAGVE,EAAK+M,SAAWhE,EAAOwL,EAAMxL,MACjC,KAED,KAAMoB,EAAOnK,EAAKmK,KAAMpB,MAEjBlD,EAAOsE,EACZoK,EAAMxT,QAAQ,GAAG+B,QAAS0B,GAAWC,IACrCH,GAASuC,KAAMwK,EAAO,GAAGtI,OAAU5B,GAAaxB,EAAQa,aAAgBb,IACpE,CAKJ,GAFA0L,EAAO5E,OAAQ3M,EAAG,GAClB4F,EAAWG,EAAKpD,QAAUyE,GAAYmK,IAChC3L,EAEL,MADAvD,GAAK8C,MAAOW,EAASC,GACdD,CAGR,SAeJ,OAPE4O,GAAYpU,EAASsF,EAAUI,IAChCD,EACAF,GACC/E,EACDgF,EACAtB,GAASuC,KAAMnB,IAAcyB,GAAaxB,EAAQa,aAAgBb,GAE5DC,GAMR7F,EAAQwM,WAAatL,EAAQsH,MAAM,IAAIiE,KAAM9K,GAAY0F,KAAK,MAAQnG,EAItElB,EAAQuM,mBAAqB9L,EAG7BC,IAIAV,EAAQsL,aAAerD,GAAO,SAAUyM,GAEvC,MAAuE,GAAhEA,EAAKxJ,wBAAyBvK,EAASwH,cAAc,UAMvDF,GAAO,SAAUC,GAEtB,MADAA,GAAIwC,UAAY,mBAC+B,MAAxCxC,EAAI0E,WAAW3F,aAAa,WAEnCoB,GAAW,yBAA0B,SAAU7F,EAAMyG,EAAM9I,GAC1D,MAAMA,GAAN,OACQqC,EAAKyE,aAAcgC,EAA6B,SAAvBA,EAAKjC,cAA2B,EAAI,KAOjEhH,EAAQgD,YAAeiF,GAAO,SAAUC,GAG7C,MAFAA,GAAIwC,UAAY,WAChBxC,EAAI0E,WAAW1F,aAAc,QAAS,IACY,KAA3CgB,EAAI0E,WAAW3F,aAAc,YAEpCoB,GAAW,QAAS,SAAU7F,EAAMyG,EAAM9I,GACzC,MAAMA,IAAyC,UAAhCqC,EAAKuE,SAASC,cAA7B,OACQxE,EAAKmS,eAOT1M,GAAO,SAAUC,GACtB,MAAuC,OAAhCA,EAAIjB,aAAa,eAExBoB,GAAW1F,EAAU,SAAUH,EAAMyG,EAAM9I,GAC1C,GAAI4L,EACJ,OAAM5L,GAAN,OACQqC,EAAMyG,MAAW,EAAOA,EAAKjC,eACjC+E,EAAMvJ,EAAK+H,iBAAkBtB,KAAW8C,EAAIE,UAC7CF,EAAInE,MACL,OAMmB,kBAAXgN,SAAyBA,OAAOC,IAC3CD,OAAO,WAAa,MAAOlP,MAEE,mBAAXoP,SAA0BA,OAAOC,QACnDD,OAAOC,QAAUrP,GAEjB5F,EAAO4F,OAASA,IAIb5F"}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing.js
new file mode 100644 (file)
index 0000000..d9ff0ae
--- /dev/null
@@ -0,0 +1,199 @@
+define([
+       "./core",
+       "./var/indexOf",
+       "./traversing/var/rneedsContext",
+       "./core/init",
+       "./traversing/findFilter",
+       "./selector"
+], function( jQuery, indexOf, rneedsContext ) {
+
+var rparentsprev = /^(?:parents|prev(?:Until|All))/,
+       // Methods guaranteed to produce a unique set when starting from a unique set
+       guaranteedUnique = {
+               children: true,
+               contents: true,
+               next: true,
+               prev: true
+       };
+
+jQuery.extend({
+       dir: function( elem, dir, until ) {
+               var matched = [],
+                       truncate = until !== undefined;
+
+               while ( (elem = elem[ dir ]) && elem.nodeType !== 9 ) {
+                       if ( elem.nodeType === 1 ) {
+                               if ( truncate && jQuery( elem ).is( until ) ) {
+                                       break;
+                               }
+                               matched.push( elem );
+                       }
+               }
+               return matched;
+       },
+
+       sibling: function( n, elem ) {
+               var matched = [];
+
+               for ( ; n; n = n.nextSibling ) {
+                       if ( n.nodeType === 1 && n !== elem ) {
+                               matched.push( n );
+                       }
+               }
+
+               return matched;
+       }
+});
+
+jQuery.fn.extend({
+       has: function( target ) {
+               var targets = jQuery( target, this ),
+                       l = targets.length;
+
+               return this.filter(function() {
+                       var i = 0;
+                       for ( ; i < l; i++ ) {
+                               if ( jQuery.contains( this, targets[i] ) ) {
+                                       return true;
+                               }
+                       }
+               });
+       },
+
+       closest: function( selectors, context ) {
+               var cur,
+                       i = 0,
+                       l = this.length,
+                       matched = [],
+                       pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ?
+                               jQuery( selectors, context || this.context ) :
+                               0;
+
+               for ( ; i < l; i++ ) {
+                       for ( cur = this[i]; cur && cur !== context; cur = cur.parentNode ) {
+                               // Always skip document fragments
+                               if ( cur.nodeType < 11 && (pos ?
+                                       pos.index(cur) > -1 :
+
+                                       // Don't pass non-elements to Sizzle
+                                       cur.nodeType === 1 &&
+                                               jQuery.find.matchesSelector(cur, selectors)) ) {
+
+                                       matched.push( cur );
+                                       break;
+                               }
+                       }
+               }
+
+               return this.pushStack( matched.length > 1 ? jQuery.unique( matched ) : matched );
+       },
+
+       // Determine the position of an element within the set
+       index: function( elem ) {
+
+               // No argument, return index in parent
+               if ( !elem ) {
+                       return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;
+               }
+
+               // Index in selector
+               if ( typeof elem === "string" ) {
+                       return indexOf.call( jQuery( elem ), this[ 0 ] );
+               }
+
+               // Locate the position of the desired element
+               return indexOf.call( this,
+
+                       // If it receives a jQuery object, the first element is used
+                       elem.jquery ? elem[ 0 ] : elem
+               );
+       },
+
+       add: function( selector, context ) {
+               return this.pushStack(
+                       jQuery.unique(
+                               jQuery.merge( this.get(), jQuery( selector, context ) )
+                       )
+               );
+       },
+
+       addBack: function( selector ) {
+               return this.add( selector == null ?
+                       this.prevObject : this.prevObject.filter(selector)
+               );
+       }
+});
+
+function sibling( cur, dir ) {
+       while ( (cur = cur[dir]) && cur.nodeType !== 1 ) {}
+       return cur;
+}
+
+jQuery.each({
+       parent: function( elem ) {
+               var parent = elem.parentNode;
+               return parent && parent.nodeType !== 11 ? parent : null;
+       },
+       parents: function( elem ) {
+               return jQuery.dir( elem, "parentNode" );
+       },
+       parentsUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "parentNode", until );
+       },
+       next: function( elem ) {
+               return sibling( elem, "nextSibling" );
+       },
+       prev: function( elem ) {
+               return sibling( elem, "previousSibling" );
+       },
+       nextAll: function( elem ) {
+               return jQuery.dir( elem, "nextSibling" );
+       },
+       prevAll: function( elem ) {
+               return jQuery.dir( elem, "previousSibling" );
+       },
+       nextUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "nextSibling", until );
+       },
+       prevUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "previousSibling", until );
+       },
+       siblings: function( elem ) {
+               return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem );
+       },
+       children: function( elem ) {
+               return jQuery.sibling( elem.firstChild );
+       },
+       contents: function( elem ) {
+               return elem.contentDocument || jQuery.merge( [], elem.childNodes );
+       }
+}, function( name, fn ) {
+       jQuery.fn[ name ] = function( until, selector ) {
+               var matched = jQuery.map( this, fn, until );
+
+               if ( name.slice( -5 ) !== "Until" ) {
+                       selector = until;
+               }
+
+               if ( selector && typeof selector === "string" ) {
+                       matched = jQuery.filter( selector, matched );
+               }
+
+               if ( this.length > 1 ) {
+                       // Remove duplicates
+                       if ( !guaranteedUnique[ name ] ) {
+                               jQuery.unique( matched );
+                       }
+
+                       // Reverse order for parents* and prev-derivatives
+                       if ( rparentsprev.test( name ) ) {
+                               matched.reverse();
+                       }
+               }
+
+               return this.pushStack( matched );
+       };
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing/findFilter.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing/findFilter.js
new file mode 100644 (file)
index 0000000..dd70a73
--- /dev/null
@@ -0,0 +1,100 @@
+define([
+       "../core",
+       "../var/indexOf",
+       "./var/rneedsContext",
+       "../selector"
+], function( jQuery, indexOf, rneedsContext ) {
+
+var risSimple = /^.[^:#\[\.,]*$/;
+
+// Implement the identical functionality for filter and not
+function winnow( elements, qualifier, not ) {
+       if ( jQuery.isFunction( qualifier ) ) {
+               return jQuery.grep( elements, function( elem, i ) {
+                       /* jshint -W018 */
+                       return !!qualifier.call( elem, i, elem ) !== not;
+               });
+
+       }
+
+       if ( qualifier.nodeType ) {
+               return jQuery.grep( elements, function( elem ) {
+                       return ( elem === qualifier ) !== not;
+               });
+
+       }
+
+       if ( typeof qualifier === "string" ) {
+               if ( risSimple.test( qualifier ) ) {
+                       return jQuery.filter( qualifier, elements, not );
+               }
+
+               qualifier = jQuery.filter( qualifier, elements );
+       }
+
+       return jQuery.grep( elements, function( elem ) {
+               return ( indexOf.call( qualifier, elem ) >= 0 ) !== not;
+       });
+}
+
+jQuery.filter = function( expr, elems, not ) {
+       var elem = elems[ 0 ];
+
+       if ( not ) {
+               expr = ":not(" + expr + ")";
+       }
+
+       return elems.length === 1 && elem.nodeType === 1 ?
+               jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] :
+               jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
+                       return elem.nodeType === 1;
+               }));
+};
+
+jQuery.fn.extend({
+       find: function( selector ) {
+               var i,
+                       len = this.length,
+                       ret = [],
+                       self = this;
+
+               if ( typeof selector !== "string" ) {
+                       return this.pushStack( jQuery( selector ).filter(function() {
+                               for ( i = 0; i < len; i++ ) {
+                                       if ( jQuery.contains( self[ i ], this ) ) {
+                                               return true;
+                                       }
+                               }
+                       }) );
+               }
+
+               for ( i = 0; i < len; i++ ) {
+                       jQuery.find( selector, self[ i ], ret );
+               }
+
+               // Needed because $( selector, context ) becomes $( context ).find( selector )
+               ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret );
+               ret.selector = this.selector ? this.selector + " " + selector : selector;
+               return ret;
+       },
+       filter: function( selector ) {
+               return this.pushStack( winnow(this, selector || [], false) );
+       },
+       not: function( selector ) {
+               return this.pushStack( winnow(this, selector || [], true) );
+       },
+       is: function( selector ) {
+               return !!winnow(
+                       this,
+
+                       // If this is a positional/relative selector, check membership in the returned set
+                       // so $("p:first").is("p:last") won't return true for a doc with two "p".
+                       typeof selector === "string" && rneedsContext.test( selector ) ?
+                               jQuery( selector ) :
+                               selector || [],
+                       false
+               ).length;
+       }
+});
+
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing/var/rneedsContext.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/traversing/var/rneedsContext.js
new file mode 100644 (file)
index 0000000..3d6ae40
--- /dev/null
@@ -0,0 +1,6 @@
+define([
+       "../../core",
+       "../../selector"
+], function( jQuery ) {
+       return jQuery.expr.match.needsContext;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/arr.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/arr.js
new file mode 100644 (file)
index 0000000..b18fc9c
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return [];
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/class2type.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/class2type.js
new file mode 100644 (file)
index 0000000..e674c3b
--- /dev/null
@@ -0,0 +1,4 @@
+define(function() {
+       // [[Class]] -> type pairs
+       return {};
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/concat.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/concat.js
new file mode 100644 (file)
index 0000000..7dcf77e
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "./arr"
+], function( arr ) {
+       return arr.concat;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/hasOwn.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/hasOwn.js
new file mode 100644 (file)
index 0000000..32c002a
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "./class2type"
+], function( class2type ) {
+       return class2type.hasOwnProperty;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/indexOf.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/indexOf.js
new file mode 100644 (file)
index 0000000..cdbe3c7
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "./arr"
+], function( arr ) {
+       return arr.indexOf;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/pnum.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/pnum.js
new file mode 100644 (file)
index 0000000..4070447
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/push.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/push.js
new file mode 100644 (file)
index 0000000..ad6f0a1
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "./arr"
+], function( arr ) {
+       return arr.push;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/rnotwhite.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/rnotwhite.js
new file mode 100644 (file)
index 0000000..7c69bec
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return (/\S+/g);
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/slice.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/slice.js
new file mode 100644 (file)
index 0000000..614d46c
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "./arr"
+], function( arr ) {
+       return arr.slice;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/strundefined.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/strundefined.js
new file mode 100644 (file)
index 0000000..04e16b0
--- /dev/null
@@ -0,0 +1,3 @@
+define(function() {
+       return typeof undefined;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/support.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/support.js
new file mode 100644 (file)
index 0000000..b25dbc7
--- /dev/null
@@ -0,0 +1,4 @@
+define(function() {
+       // All support tests are defined in their respective modules.
+       return {};
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/toString.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/var/toString.js
new file mode 100644 (file)
index 0000000..ca92d22
--- /dev/null
@@ -0,0 +1,5 @@
+define([
+       "./class2type"
+], function( class2type ) {
+       return class2type.toString;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/jquery/src/wrap.js b/wrt/wrt_support/sample/launcher/bower_components/jquery/src/wrap.js
new file mode 100644 (file)
index 0000000..4958251
--- /dev/null
@@ -0,0 +1,79 @@
+define([
+       "./core",
+       "./core/init",
+       "./manipulation", // clone
+       "./traversing" // parent, contents
+], function( jQuery ) {
+
+jQuery.fn.extend({
+       wrapAll: function( html ) {
+               var wrap;
+
+               if ( jQuery.isFunction( html ) ) {
+                       return this.each(function( i ) {
+                               jQuery( this ).wrapAll( html.call(this, i) );
+                       });
+               }
+
+               if ( this[ 0 ] ) {
+
+                       // The elements to wrap the target around
+                       wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );
+
+                       if ( this[ 0 ].parentNode ) {
+                               wrap.insertBefore( this[ 0 ] );
+                       }
+
+                       wrap.map(function() {
+                               var elem = this;
+
+                               while ( elem.firstElementChild ) {
+                                       elem = elem.firstElementChild;
+                               }
+
+                               return elem;
+                       }).append( this );
+               }
+
+               return this;
+       },
+
+       wrapInner: function( html ) {
+               if ( jQuery.isFunction( html ) ) {
+                       return this.each(function( i ) {
+                               jQuery( this ).wrapInner( html.call(this, i) );
+                       });
+               }
+
+               return this.each(function() {
+                       var self = jQuery( this ),
+                               contents = self.contents();
+
+                       if ( contents.length ) {
+                               contents.wrapAll( html );
+
+                       } else {
+                               self.append( html );
+                       }
+               });
+       },
+
+       wrap: function( html ) {
+               var isFunction = jQuery.isFunction( html );
+
+               return this.each(function( i ) {
+                       jQuery( this ).wrapAll( isFunction ? html.call(this, i) : html );
+               });
+       },
+
+       unwrap: function() {
+               return this.parent().each(function() {
+                       if ( !jQuery.nodeName( this, "body" ) ) {
+                               jQuery( this ).replaceWith( this.childNodes );
+                       }
+               }).end();
+       }
+});
+
+return jQuery;
+});
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/.bower.json b/wrt/wrt_support/sample/launcher/bower_components/underscore/.bower.json
new file mode 100644 (file)
index 0000000..e1f2c91
--- /dev/null
@@ -0,0 +1,35 @@
+{
+  "name": "underscore",
+  "version": "1.8.3",
+  "main": "underscore.js",
+  "keywords": [
+    "util",
+    "functional",
+    "server",
+    "client",
+    "browser"
+  ],
+  "ignore": [
+    "docs",
+    "test",
+    "*.yml",
+    "CNAME",
+    "index.html",
+    "favicon.ico",
+    "CONTRIBUTING.md",
+    ".*",
+    "component.json",
+    "package.json",
+    "karma.*"
+  ],
+  "homepage": "https://github.com/jashkenas/underscore",
+  "_release": "1.8.3",
+  "_resolution": {
+    "type": "version",
+    "tag": "1.8.3",
+    "commit": "e4743ab712b8ab42ad4ccb48b155034d02394e4d"
+  },
+  "_source": "https://github.com/jashkenas/underscore.git",
+  "_target": ">=1.7.0",
+  "_originalSource": "underscore"
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/LICENSE b/wrt/wrt_support/sample/launcher/bower_components/underscore/LICENSE
new file mode 100644 (file)
index 0000000..ad0e71b
--- /dev/null
@@ -0,0 +1,23 @@
+Copyright (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative
+Reporters & Editors
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/README.md b/wrt/wrt_support/sample/launcher/bower_components/underscore/README.md
new file mode 100644 (file)
index 0000000..c2ba259
--- /dev/null
@@ -0,0 +1,22 @@
+                       __
+                      /\ \                                                         __
+     __  __    ___    \_\ \     __   _ __   ____    ___    ___   _ __    __       /\_\    ____
+    /\ \/\ \ /' _ `\  /'_  \  /'__`\/\  __\/ ,__\  / ___\ / __`\/\  __\/'__`\     \/\ \  /',__\
+    \ \ \_\ \/\ \/\ \/\ \ \ \/\  __/\ \ \//\__, `\/\ \__//\ \ \ \ \ \//\  __/  __  \ \ \/\__, `\
+     \ \____/\ \_\ \_\ \___,_\ \____\\ \_\\/\____/\ \____\ \____/\ \_\\ \____\/\_\ _\ \ \/\____/
+      \/___/  \/_/\/_/\/__,_ /\/____/ \/_/ \/___/  \/____/\/___/  \/_/ \/____/\/_//\ \_\ \/___/
+                                                                                  \ \____/
+                                                                                   \/___/
+
+Underscore.js is a utility-belt library for JavaScript that provides
+support for the usual functional suspects (each, map, reduce, filter...)
+without extending any core JavaScript objects.
+
+For Docs, License, Tests, and pre-packed downloads, see:
+http://underscorejs.org
+
+Underscore is an open-sourced component of DocumentCloud:
+https://github.com/documentcloud
+
+Many thanks to our contributors:
+https://github.com/jashkenas/underscore/contributors
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/bower.json b/wrt/wrt_support/sample/launcher/bower_components/underscore/bower.json
new file mode 100644 (file)
index 0000000..c7b8853
--- /dev/null
@@ -0,0 +1,7 @@
+{
+  "name": "underscore",
+  "version": "1.8.3",
+  "main": "underscore.js",
+  "keywords": ["util", "functional", "server", "client", "browser"],
+  "ignore" : ["docs", "test", "*.yml", "CNAME", "index.html", "favicon.ico", "CONTRIBUTING.md", ".*", "component.json", "package.json", "karma.*"]
+}
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/underscore-min.js b/wrt/wrt_support/sample/launcher/bower_components/underscore/underscore-min.js
new file mode 100644 (file)
index 0000000..f01025b
--- /dev/null
@@ -0,0 +1,6 @@
+//     Underscore.js 1.8.3
+//     http://underscorejs.org
+//     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+//     Underscore may be freely distributed under the MIT license.
+(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])<u?i=a+1:o=a}return i},m.indexOf=r(1,m.findIndex,m.sortedIndex),m.lastIndexOf=r(-1,m.findLastIndex),m.range=function(n,t,r){null==t&&(t=n||0,n=0),r=r||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=Array(e),i=0;e>i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e<arguments.length;)i.push(arguments[e++]);return E(n,r,this,this,i)};return r},m.bindAll=function(n){var t,r,e=arguments.length;if(1>=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this);
+//# sourceMappingURL=underscore-min.map
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/underscore-min.map b/wrt/wrt_support/sample/launcher/bower_components/underscore/underscore-min.map
new file mode 100644 (file)
index 0000000..cf356bf
--- /dev/null
@@ -0,0 +1 @@
+{"version":3,"file":"underscore-min.js","sources":["underscore.js"],"names":["createReduce","dir","iterator","obj","iteratee","memo","keys","index","length","currentKey","context","optimizeCb","isArrayLike","_","arguments","createPredicateIndexFinder","array","predicate","cb","getLength","createIndexFinder","predicateFind","sortedIndex","item","idx","i","Math","max","min","slice","call","isNaN","collectNonEnumProps","nonEnumIdx","nonEnumerableProps","constructor","proto","isFunction","prototype","ObjProto","prop","has","contains","push","root","this","previousUnderscore","ArrayProto","Array","Object","FuncProto","Function","toString","hasOwnProperty","nativeIsArray","isArray","nativeKeys","nativeBind","bind","nativeCreate","create","Ctor","_wrapped","exports","module","VERSION","func","argCount","value","other","collection","accumulator","apply","identity","isObject","matcher","property","Infinity","createAssigner","keysFunc","undefinedOnly","source","l","key","baseCreate","result","MAX_ARRAY_INDEX","pow","each","forEach","map","collect","results","reduce","foldl","inject","reduceRight","foldr","find","detect","findIndex","findKey","filter","select","list","reject","negate","every","all","some","any","includes","include","fromIndex","guard","values","indexOf","invoke","method","args","isFunc","pluck","where","attrs","findWhere","computed","lastComputed","shuffle","rand","set","shuffled","random","sample","n","sortBy","criteria","sort","left","right","a","b","group","behavior","groupBy","indexBy","countBy","toArray","size","partition","pass","fail","first","head","take","initial","last","rest","tail","drop","compact","flatten","input","shallow","strict","startIndex","output","isArguments","j","len","without","difference","uniq","unique","isSorted","isBoolean","seen","union","intersection","argsLength","zip","unzip","object","findLastIndex","low","high","mid","floor","lastIndexOf","range","start","stop","step","ceil","executeBound","sourceFunc","boundFunc","callingContext","self","TypeError","bound","concat","partial","boundArgs","position","bindAll","Error","memoize","hasher","cache","address","delay","wait","setTimeout","defer","throttle","options","timeout","previous","later","leading","now","remaining","clearTimeout","trailing","debounce","immediate","timestamp","callNow","wrap","wrapper","compose","after","times","before","once","hasEnumBug","propertyIsEnumerable","allKeys","mapObject","pairs","invert","functions","methods","names","extend","extendOwn","assign","pick","oiteratee","omit","String","defaults","props","clone","tap","interceptor","isMatch","eq","aStack","bStack","className","areArrays","aCtor","bCtor","pop","isEqual","isEmpty","isString","isElement","nodeType","type","name","Int8Array","isFinite","parseFloat","isNumber","isNull","isUndefined","noConflict","constant","noop","propertyOf","matches","accum","Date","getTime","escapeMap","&","<",">","\"","'","`","unescapeMap","createEscaper","escaper","match","join","testRegexp","RegExp","replaceRegexp","string","test","replace","escape","unescape","fallback","idCounter","uniqueId","prefix","id","templateSettings","evaluate","interpolate","noMatch","escapes","\\","\r","\n","
","
","escapeChar","template","text","settings","oldSettings","offset","variable","render","e","data","argument","chain","instance","_chain","mixin","valueOf","toJSON","define","amd"],"mappings":";;;;CAKC,WA4KC,QAASA,GAAaC,GAGpB,QAASC,GAASC,EAAKC,EAAUC,EAAMC,EAAMC,EAAOC,GAClD,KAAOD,GAAS,GAAaC,EAARD,EAAgBA,GAASN,EAAK,CACjD,GAAIQ,GAAaH,EAAOA,EAAKC,GAASA,CACtCF,GAAOD,EAASC,EAAMF,EAAIM,GAAaA,EAAYN,GAErD,MAAOE,GAGT,MAAO,UAASF,EAAKC,EAAUC,EAAMK,GACnCN,EAAWO,EAAWP,EAAUM,EAAS,EACzC,IAAIJ,IAAQM,EAAYT,IAAQU,EAAEP,KAAKH,GACnCK,GAAUF,GAAQH,GAAKK,OACvBD,EAAQN,EAAM,EAAI,EAAIO,EAAS,CAMnC,OAJIM,WAAUN,OAAS,IACrBH,EAAOF,EAAIG,EAAOA,EAAKC,GAASA,GAChCA,GAASN,GAEJC,EAASC,EAAKC,EAAUC,EAAMC,EAAMC,EAAOC,IA+ZtD,QAASO,GAA2Bd,GAClC,MAAO,UAASe,EAAOC,EAAWP,GAChCO,EAAYC,EAAGD,EAAWP,EAG1B,KAFA,GAAIF,GAASW,EAAUH,GACnBT,EAAQN,EAAM,EAAI,EAAIO,EAAS,EAC5BD,GAAS,GAAaC,EAARD,EAAgBA,GAASN,EAC5C,GAAIgB,EAAUD,EAAMT,GAAQA,EAAOS,GAAQ,MAAOT,EAEpD,QAAQ,GAsBZ,QAASa,GAAkBnB,EAAKoB,EAAeC,GAC7C,MAAO,UAASN,EAAOO,EAAMC,GAC3B,GAAIC,GAAI,EAAGjB,EAASW,EAAUH,EAC9B,IAAkB,gBAAPQ,GACLvB,EAAM,EACNwB,EAAID,GAAO,EAAIA,EAAME,KAAKC,IAAIH,EAAMhB,EAAQiB,GAE5CjB,EAASgB,GAAO,EAAIE,KAAKE,IAAIJ,EAAM,EAAGhB,GAAUgB,EAAMhB,EAAS,MAE9D,IAAIc,GAAeE,GAAOhB,EAE/B,MADAgB,GAAMF,EAAYN,EAAOO,GAClBP,EAAMQ,KAASD,EAAOC,GAAO,CAEtC,IAAID,IAASA,EAEX,MADAC,GAAMH,EAAcQ,EAAMC,KAAKd,EAAOS,EAAGjB,GAASK,EAAEkB,OAC7CP,GAAO,EAAIA,EAAMC,GAAK,CAE/B,KAAKD,EAAMvB,EAAM,EAAIwB,EAAIjB,EAAS,EAAGgB,GAAO,GAAWhB,EAANgB,EAAcA,GAAOvB,EACpE,GAAIe,EAAMQ,KAASD,EAAM,MAAOC,EAElC,QAAQ,GAqPZ,QAASQ,GAAoB7B,EAAKG,GAChC,GAAI2B,GAAaC,EAAmB1B,OAChC2B,EAAchC,EAAIgC,YAClBC,EAASvB,EAAEwB,WAAWF,IAAgBA,EAAYG,WAAcC,EAGhEC,EAAO,aAGX,KAFI3B,EAAE4B,IAAItC,EAAKqC,KAAU3B,EAAE6B,SAASpC,EAAMkC,IAAOlC,EAAKqC,KAAKH,GAEpDP,KACLO,EAAON,EAAmBD,GACtBO,IAAQrC,IAAOA,EAAIqC,KAAUJ,EAAMI,KAAU3B,EAAE6B,SAASpC,EAAMkC,IAChElC,EAAKqC,KAAKH,GA74BhB,GAAII,GAAOC,KAGPC,EAAqBF,EAAK/B,EAG1BkC,EAAaC,MAAMV,UAAWC,EAAWU,OAAOX,UAAWY,EAAYC,SAASb,UAIlFK,EAAmBI,EAAWJ,KAC9Bd,EAAmBkB,EAAWlB,MAC9BuB,EAAmBb,EAASa,SAC5BC,EAAmBd,EAASc,eAK5BC,EAAqBN,MAAMO,QAC3BC,EAAqBP,OAAO3C,KAC5BmD,EAAqBP,EAAUQ,KAC/BC,EAAqBV,OAAOW,OAG1BC,EAAO,aAGPhD,EAAI,SAASV,GACf,MAAIA,aAAeU,GAAUV,EACvB0C,eAAgBhC,QACtBgC,KAAKiB,SAAW3D,GADiB,GAAIU,GAAEV,GAOlB,oBAAZ4D,UACa,mBAAXC,SAA0BA,OAAOD,UAC1CA,QAAUC,OAAOD,QAAUlD,GAE7BkD,QAAQlD,EAAIA,GAEZ+B,EAAK/B,EAAIA,EAIXA,EAAEoD,QAAU,OAKZ,IAAItD,GAAa,SAASuD,EAAMxD,EAASyD,GACvC,GAAIzD,QAAiB,GAAG,MAAOwD,EAC/B,QAAoB,MAAZC,EAAmB,EAAIA,GAC7B,IAAK,GAAG,MAAO,UAASC,GACtB,MAAOF,GAAKpC,KAAKpB,EAAS0D,GAE5B,KAAK,GAAG,MAAO,UAASA,EAAOC,GAC7B,MAAOH,GAAKpC,KAAKpB,EAAS0D,EAAOC,GAEnC,KAAK,GAAG,MAAO,UAASD,EAAO7D,EAAO+D,GACpC,MAAOJ,GAAKpC,KAAKpB,EAAS0D,EAAO7D,EAAO+D,GAE1C,KAAK,GAAG,MAAO,UAASC,EAAaH,EAAO7D,EAAO+D,GACjD,MAAOJ,GAAKpC,KAAKpB,EAAS6D,EAAaH,EAAO7D,EAAO+D,IAGzD,MAAO,YACL,MAAOJ,GAAKM,MAAM9D,EAASI,aAO3BI,EAAK,SAASkD,EAAO1D,EAASyD,GAChC,MAAa,OAATC,EAAsBvD,EAAE4D,SACxB5D,EAAEwB,WAAW+B,GAAezD,EAAWyD,EAAO1D,EAASyD,GACvDtD,EAAE6D,SAASN,GAAevD,EAAE8D,QAAQP,GACjCvD,EAAE+D,SAASR,GAEpBvD,GAAET,SAAW,SAASgE,EAAO1D,GAC3B,MAAOQ,GAAGkD,EAAO1D,EAASmE,KAI5B,IAAIC,GAAiB,SAASC,EAAUC,GACtC,MAAO,UAAS7E,GACd,GAAIK,GAASM,UAAUN,MACvB,IAAa,EAATA,GAAqB,MAAPL,EAAa,MAAOA,EACtC,KAAK,GAAII,GAAQ,EAAWC,EAARD,EAAgBA,IAIlC,IAAK,GAHD0E,GAASnE,UAAUP,GACnBD,EAAOyE,EAASE,GAChBC,EAAI5E,EAAKE,OACJiB,EAAI,EAAOyD,EAAJzD,EAAOA,IAAK,CAC1B,GAAI0D,GAAM7E,EAAKmB,EACVuD,IAAiB7E,EAAIgF,SAAc,KAAGhF,EAAIgF,GAAOF,EAAOE,IAGjE,MAAOhF,KAKPiF,EAAa,SAAS9C,GACxB,IAAKzB,EAAE6D,SAASpC,GAAY,QAC5B,IAAIqB,EAAc,MAAOA,GAAarB,EACtCuB,GAAKvB,UAAYA,CACjB,IAAI+C,GAAS,GAAIxB,EAEjB,OADAA,GAAKvB,UAAY,KACV+C,GAGLT,EAAW,SAASO,GACtB,MAAO,UAAShF,GACd,MAAc,OAAPA,MAAmB,GAAIA,EAAIgF,KAQlCG,EAAkB5D,KAAK6D,IAAI,EAAG,IAAM,EACpCpE,EAAYyD,EAAS,UACrBhE,EAAc,SAAS0D,GACzB,GAAI9D,GAASW,EAAUmD,EACvB,OAAwB,gBAAV9D,IAAsBA,GAAU,GAAe8E,GAAV9E,EASrDK,GAAE2E,KAAO3E,EAAE4E,QAAU,SAAStF,EAAKC,EAAUM,GAC3CN,EAAWO,EAAWP,EAAUM,EAChC,IAAIe,GAAGjB,CACP,IAAII,EAAYT,GACd,IAAKsB,EAAI,EAAGjB,EAASL,EAAIK,OAAYA,EAAJiB,EAAYA,IAC3CrB,EAASD,EAAIsB,GAAIA,EAAGtB,OAEjB,CACL,GAAIG,GAAOO,EAAEP,KAAKH,EAClB,KAAKsB,EAAI,EAAGjB,EAASF,EAAKE,OAAYA,EAAJiB,EAAYA,IAC5CrB,EAASD,EAAIG,EAAKmB,IAAKnB,EAAKmB,GAAItB,GAGpC,MAAOA,IAITU,EAAE6E,IAAM7E,EAAE8E,QAAU,SAASxF,EAAKC,EAAUM,GAC1CN,EAAWc,EAAGd,EAAUM,EAIxB,KAAK,GAHDJ,IAAQM,EAAYT,IAAQU,EAAEP,KAAKH,GACnCK,GAAUF,GAAQH,GAAKK,OACvBoF,EAAU5C,MAAMxC,GACXD,EAAQ,EAAWC,EAARD,EAAgBA,IAAS,CAC3C,GAAIE,GAAaH,EAAOA,EAAKC,GAASA,CACtCqF,GAAQrF,GAASH,EAASD,EAAIM,GAAaA,EAAYN,GAEzD,MAAOyF,IA+BT/E,EAAEgF,OAAShF,EAAEiF,MAAQjF,EAAEkF,OAAS/F,EAAa,GAG7Ca,EAAEmF,YAAcnF,EAAEoF,MAAQjG,GAAc,GAGxCa,EAAEqF,KAAOrF,EAAEsF,OAAS,SAAShG,EAAKc,EAAWP,GAC3C,GAAIyE,EAMJ,OAJEA,GADEvE,EAAYT,GACRU,EAAEuF,UAAUjG,EAAKc,EAAWP,GAE5BG,EAAEwF,QAAQlG,EAAKc,EAAWP,GAE9ByE,QAAa,IAAKA,KAAS,EAAUhF,EAAIgF,GAA7C,QAKFtE,EAAEyF,OAASzF,EAAE0F,OAAS,SAASpG,EAAKc,EAAWP,GAC7C,GAAIkF,KAKJ,OAJA3E,GAAYC,EAAGD,EAAWP,GAC1BG,EAAE2E,KAAKrF,EAAK,SAASiE,EAAO7D,EAAOiG,GAC7BvF,EAAUmD,EAAO7D,EAAOiG,IAAOZ,EAAQjD,KAAKyB,KAE3CwB,GAIT/E,EAAE4F,OAAS,SAAStG,EAAKc,EAAWP,GAClC,MAAOG,GAAEyF,OAAOnG,EAAKU,EAAE6F,OAAOxF,EAAGD,IAAaP,IAKhDG,EAAE8F,MAAQ9F,EAAE+F,IAAM,SAASzG,EAAKc,EAAWP,GACzCO,EAAYC,EAAGD,EAAWP,EAG1B,KAAK,GAFDJ,IAAQM,EAAYT,IAAQU,EAAEP,KAAKH,GACnCK,GAAUF,GAAQH,GAAKK,OAClBD,EAAQ,EAAWC,EAARD,EAAgBA,IAAS,CAC3C,GAAIE,GAAaH,EAAOA,EAAKC,GAASA,CACtC,KAAKU,EAAUd,EAAIM,GAAaA,EAAYN,GAAM,OAAO,EAE3D,OAAO,GAKTU,EAAEgG,KAAOhG,EAAEiG,IAAM,SAAS3G,EAAKc,EAAWP,GACxCO,EAAYC,EAAGD,EAAWP,EAG1B,KAAK,GAFDJ,IAAQM,EAAYT,IAAQU,EAAEP,KAAKH,GACnCK,GAAUF,GAAQH,GAAKK,OAClBD,EAAQ,EAAWC,EAARD,EAAgBA,IAAS,CAC3C,GAAIE,GAAaH,EAAOA,EAAKC,GAASA,CACtC,IAAIU,EAAUd,EAAIM,GAAaA,EAAYN,GAAM,OAAO,EAE1D,OAAO,GAKTU,EAAE6B,SAAW7B,EAAEkG,SAAWlG,EAAEmG,QAAU,SAAS7G,EAAKoB,EAAM0F,EAAWC,GAGnE,MAFKtG,GAAYT,KAAMA,EAAMU,EAAEsG,OAAOhH,KACd,gBAAb8G,IAAyBC,KAAOD,EAAY,GAChDpG,EAAEuG,QAAQjH,EAAKoB,EAAM0F,IAAc,GAI5CpG,EAAEwG,OAAS,SAASlH,EAAKmH,GACvB,GAAIC,GAAO1F,EAAMC,KAAKhB,UAAW,GAC7B0G,EAAS3G,EAAEwB,WAAWiF,EAC1B,OAAOzG,GAAE6E,IAAIvF,EAAK,SAASiE,GACzB,GAAIF,GAAOsD,EAASF,EAASlD,EAAMkD,EACnC,OAAe,OAARpD,EAAeA,EAAOA,EAAKM,MAAMJ,EAAOmD,MAKnD1G,EAAE4G,MAAQ,SAAStH,EAAKgF,GACtB,MAAOtE,GAAE6E,IAAIvF,EAAKU,EAAE+D,SAASO,KAK/BtE,EAAE6G,MAAQ,SAASvH,EAAKwH,GACtB,MAAO9G,GAAEyF,OAAOnG,EAAKU,EAAE8D,QAAQgD,KAKjC9G,EAAE+G,UAAY,SAASzH,EAAKwH,GAC1B,MAAO9G,GAAEqF,KAAK/F,EAAKU,EAAE8D,QAAQgD,KAI/B9G,EAAEc,IAAM,SAASxB,EAAKC,EAAUM,GAC9B,GACI0D,GAAOyD,EADPxC,GAAUR,IAAUiD,GAAgBjD,GAExC,IAAgB,MAAZzE,GAA2B,MAAPD,EAAa,CACnCA,EAAMS,EAAYT,GAAOA,EAAMU,EAAEsG,OAAOhH,EACxC,KAAK,GAAIsB,GAAI,EAAGjB,EAASL,EAAIK,OAAYA,EAAJiB,EAAYA,IAC/C2C,EAAQjE,EAAIsB,GACR2C,EAAQiB,IACVA,EAASjB,OAIbhE,GAAWc,EAAGd,EAAUM,GACxBG,EAAE2E,KAAKrF,EAAK,SAASiE,EAAO7D,EAAOiG,GACjCqB,EAAWzH,EAASgE,EAAO7D,EAAOiG,IAC9BqB,EAAWC,GAAgBD,KAAchD,KAAYQ,KAAYR,OACnEQ,EAASjB,EACT0D,EAAeD,IAIrB,OAAOxC,IAITxE,EAAEe,IAAM,SAASzB,EAAKC,EAAUM,GAC9B,GACI0D,GAAOyD,EADPxC,EAASR,IAAUiD,EAAejD,GAEtC,IAAgB,MAAZzE,GAA2B,MAAPD,EAAa,CACnCA,EAAMS,EAAYT,GAAOA,EAAMU,EAAEsG,OAAOhH,EACxC,KAAK,GAAIsB,GAAI,EAAGjB,EAASL,EAAIK,OAAYA,EAAJiB,EAAYA,IAC/C2C,EAAQjE,EAAIsB,GACA4D,EAARjB,IACFiB,EAASjB,OAIbhE,GAAWc,EAAGd,EAAUM,GACxBG,EAAE2E,KAAKrF,EAAK,SAASiE,EAAO7D,EAAOiG,GACjCqB,EAAWzH,EAASgE,EAAO7D,EAAOiG,IACnBsB,EAAXD,GAAwChD,MAAbgD,GAAoChD,MAAXQ,KACtDA,EAASjB,EACT0D,EAAeD,IAIrB,OAAOxC,IAKTxE,EAAEkH,QAAU,SAAS5H,GAInB,IAAK,GAAe6H,GAHhBC,EAAMrH,EAAYT,GAAOA,EAAMU,EAAEsG,OAAOhH,GACxCK,EAASyH,EAAIzH,OACb0H,EAAWlF,MAAMxC,GACZD,EAAQ,EAAiBC,EAARD,EAAgBA,IACxCyH,EAAOnH,EAAEsH,OAAO,EAAG5H,GACfyH,IAASzH,IAAO2H,EAAS3H,GAAS2H,EAASF,IAC/CE,EAASF,GAAQC,EAAI1H,EAEvB,OAAO2H,IAMTrH,EAAEuH,OAAS,SAASjI,EAAKkI,EAAGnB,GAC1B,MAAS,OAALmB,GAAanB,GACVtG,EAAYT,KAAMA,EAAMU,EAAEsG,OAAOhH,IAC/BA,EAAIU,EAAEsH,OAAOhI,EAAIK,OAAS,KAE5BK,EAAEkH,QAAQ5H,GAAK0B,MAAM,EAAGH,KAAKC,IAAI,EAAG0G,KAI7CxH,EAAEyH,OAAS,SAASnI,EAAKC,EAAUM,GAEjC,MADAN,GAAWc,EAAGd,EAAUM,GACjBG,EAAE4G,MAAM5G,EAAE6E,IAAIvF,EAAK,SAASiE,EAAO7D,EAAOiG,GAC/C,OACEpC,MAAOA,EACP7D,MAAOA,EACPgI,SAAUnI,EAASgE,EAAO7D,EAAOiG,MAElCgC,KAAK,SAASC,EAAMC,GACrB,GAAIC,GAAIF,EAAKF,SACTK,EAAIF,EAAMH,QACd,IAAII,IAAMC,EAAG,CACX,GAAID,EAAIC,GAAKD,QAAW,GAAG,MAAO,EAClC,IAAQC,EAAJD,GAASC,QAAW,GAAG,OAAQ,EAErC,MAAOH,GAAKlI,MAAQmI,EAAMnI,QACxB,SAIN,IAAIsI,GAAQ,SAASC,GACnB,MAAO,UAAS3I,EAAKC,EAAUM,GAC7B,GAAI2E,KAMJ,OALAjF,GAAWc,EAAGd,EAAUM,GACxBG,EAAE2E,KAAKrF,EAAK,SAASiE,EAAO7D,GAC1B,GAAI4E,GAAM/E,EAASgE,EAAO7D,EAAOJ,EACjC2I,GAASzD,EAAQjB,EAAOe,KAEnBE,GAMXxE,GAAEkI,QAAUF,EAAM,SAASxD,EAAQjB,EAAOe,GACpCtE,EAAE4B,IAAI4C,EAAQF,GAAME,EAAOF,GAAKxC,KAAKyB,GAAaiB,EAAOF,IAAQf,KAKvEvD,EAAEmI,QAAUH,EAAM,SAASxD,EAAQjB,EAAOe,GACxCE,EAAOF,GAAOf,IAMhBvD,EAAEoI,QAAUJ,EAAM,SAASxD,EAAQjB,EAAOe,GACpCtE,EAAE4B,IAAI4C,EAAQF,GAAME,EAAOF,KAAaE,EAAOF,GAAO,IAI5DtE,EAAEqI,QAAU,SAAS/I,GACnB,MAAKA,GACDU,EAAE0C,QAAQpD,GAAa0B,EAAMC,KAAK3B,GAClCS,EAAYT,GAAaU,EAAE6E,IAAIvF,EAAKU,EAAE4D,UACnC5D,EAAEsG,OAAOhH,OAIlBU,EAAEsI,KAAO,SAAShJ,GAChB,MAAW,OAAPA,EAAoB,EACjBS,EAAYT,GAAOA,EAAIK,OAASK,EAAEP,KAAKH,GAAKK,QAKrDK,EAAEuI,UAAY,SAASjJ,EAAKc,EAAWP,GACrCO,EAAYC,EAAGD,EAAWP,EAC1B,IAAI2I,MAAWC,IAIf,OAHAzI,GAAE2E,KAAKrF,EAAK,SAASiE,EAAOe,EAAKhF,IAC9Bc,EAAUmD,EAAOe,EAAKhF,GAAOkJ,EAAOC,GAAM3G,KAAKyB,MAE1CiF,EAAMC,IAShBzI,EAAE0I,MAAQ1I,EAAE2I,KAAO3I,EAAE4I,KAAO,SAASzI,EAAOqH,EAAGnB,GAC7C,MAAa,OAATlG,MAA2B,GACtB,MAALqH,GAAanB,EAAclG,EAAM,GAC9BH,EAAE6I,QAAQ1I,EAAOA,EAAMR,OAAS6H,IAMzCxH,EAAE6I,QAAU,SAAS1I,EAAOqH,EAAGnB,GAC7B,MAAOrF,GAAMC,KAAKd,EAAO,EAAGU,KAAKC,IAAI,EAAGX,EAAMR,QAAe,MAAL6H,GAAanB,EAAQ,EAAImB,MAKnFxH,EAAE8I,KAAO,SAAS3I,EAAOqH,EAAGnB,GAC1B,MAAa,OAATlG,MAA2B,GACtB,MAALqH,GAAanB,EAAclG,EAAMA,EAAMR,OAAS,GAC7CK,EAAE+I,KAAK5I,EAAOU,KAAKC,IAAI,EAAGX,EAAMR,OAAS6H,KAMlDxH,EAAE+I,KAAO/I,EAAEgJ,KAAOhJ,EAAEiJ,KAAO,SAAS9I,EAAOqH,EAAGnB,GAC5C,MAAOrF,GAAMC,KAAKd,EAAY,MAALqH,GAAanB,EAAQ,EAAImB,IAIpDxH,EAAEkJ,QAAU,SAAS/I,GACnB,MAAOH,GAAEyF,OAAOtF,EAAOH,EAAE4D,UAI3B,IAAIuF,GAAU,SAASC,EAAOC,EAASC,EAAQC,GAE7C,IAAK,GADDC,MAAa7I,EAAM,EACdC,EAAI2I,GAAc,EAAG5J,EAASW,EAAU8I,GAAYzJ,EAAJiB,EAAYA,IAAK,CACxE,GAAI2C,GAAQ6F,EAAMxI,EAClB,IAAIb,EAAYwD,KAAWvD,EAAE0C,QAAQa,IAAUvD,EAAEyJ,YAAYlG,IAAS,CAE/D8F,IAAS9F,EAAQ4F,EAAQ5F,EAAO8F,EAASC,GAC9C,IAAII,GAAI,EAAGC,EAAMpG,EAAM5D,MAEvB,KADA6J,EAAO7J,QAAUgK,EACNA,EAAJD,GACLF,EAAO7I,KAAS4C,EAAMmG,SAEdJ,KACVE,EAAO7I,KAAS4C,GAGpB,MAAOiG,GAITxJ,GAAEmJ,QAAU,SAAShJ,EAAOkJ,GAC1B,MAAOF,GAAQhJ,EAAOkJ,GAAS,IAIjCrJ,EAAE4J,QAAU,SAASzJ,GACnB,MAAOH,GAAE6J,WAAW1J,EAAOa,EAAMC,KAAKhB,UAAW,KAMnDD,EAAE8J,KAAO9J,EAAE+J,OAAS,SAAS5J,EAAO6J,EAAUzK,EAAUM,GACjDG,EAAEiK,UAAUD,KACfnK,EAAUN,EACVA,EAAWyK,EACXA,GAAW,GAEG,MAAZzK,IAAkBA,EAAWc,EAAGd,EAAUM,GAG9C,KAAK,GAFD2E,MACA0F,KACKtJ,EAAI,EAAGjB,EAASW,EAAUH,GAAYR,EAAJiB,EAAYA,IAAK,CAC1D,GAAI2C,GAAQpD,EAAMS,GACdoG,EAAWzH,EAAWA,EAASgE,EAAO3C,EAAGT,GAASoD,CAClDyG,IACGpJ,GAAKsJ,IAASlD,GAAUxC,EAAO1C,KAAKyB,GACzC2G,EAAOlD,GACEzH,EACJS,EAAE6B,SAASqI,EAAMlD,KACpBkD,EAAKpI,KAAKkF,GACVxC,EAAO1C,KAAKyB,IAEJvD,EAAE6B,SAAS2C,EAAQjB,IAC7BiB,EAAO1C,KAAKyB,GAGhB,MAAOiB,IAKTxE,EAAEmK,MAAQ,WACR,MAAOnK,GAAE8J,KAAKX,EAAQlJ,WAAW,GAAM,KAKzCD,EAAEoK,aAAe,SAASjK,GAGxB,IAAK,GAFDqE,MACA6F,EAAapK,UAAUN,OAClBiB,EAAI,EAAGjB,EAASW,EAAUH,GAAYR,EAAJiB,EAAYA,IAAK,CAC1D,GAAIF,GAAOP,EAAMS,EACjB,KAAIZ,EAAE6B,SAAS2C,EAAQ9D,GAAvB,CACA,IAAK,GAAIgJ,GAAI,EAAOW,EAAJX,GACT1J,EAAE6B,SAAS5B,UAAUyJ,GAAIhJ,GADAgJ,KAG5BA,IAAMW,GAAY7F,EAAO1C,KAAKpB,IAEpC,MAAO8D,IAKTxE,EAAE6J,WAAa,SAAS1J,GACtB,GAAI4I,GAAOI,EAAQlJ,WAAW,GAAM,EAAM,EAC1C,OAAOD,GAAEyF,OAAOtF,EAAO,SAASoD,GAC9B,OAAQvD,EAAE6B,SAASkH,EAAMxF,MAM7BvD,EAAEsK,IAAM,WACN,MAAOtK,GAAEuK,MAAMtK,YAKjBD,EAAEuK,MAAQ,SAASpK,GAIjB,IAAK,GAHDR,GAASQ,GAASH,EAAEc,IAAIX,EAAOG,GAAWX,QAAU,EACpD6E,EAASrC,MAAMxC,GAEVD,EAAQ,EAAWC,EAARD,EAAgBA,IAClC8E,EAAO9E,GAASM,EAAE4G,MAAMzG,EAAOT,EAEjC,OAAO8E,IAMTxE,EAAEwK,OAAS,SAAS7E,EAAMW,GAExB,IAAK,GADD9B,MACK5D,EAAI,EAAGjB,EAASW,EAAUqF,GAAWhG,EAAJiB,EAAYA,IAChD0F,EACF9B,EAAOmB,EAAK/E,IAAM0F,EAAO1F,GAEzB4D,EAAOmB,EAAK/E,GAAG,IAAM+E,EAAK/E,GAAG,EAGjC,OAAO4D,IAiBTxE,EAAEuF,UAAYrF,EAA2B,GACzCF,EAAEyK,cAAgBvK,GAA4B,GAI9CF,EAAES,YAAc,SAASN,EAAOb,EAAKC,EAAUM,GAC7CN,EAAWc,EAAGd,EAAUM,EAAS,EAGjC,KAFA,GAAI0D,GAAQhE,EAASD,GACjBoL,EAAM,EAAGC,EAAOrK,EAAUH,GACjBwK,EAAND,GAAY,CACjB,GAAIE,GAAM/J,KAAKgK,OAAOH,EAAMC,GAAQ,EAChCpL,GAASY,EAAMyK,IAAQrH,EAAOmH,EAAME,EAAM,EAAQD,EAAOC,EAE/D,MAAOF,IAgCT1K,EAAEuG,QAAUhG,EAAkB,EAAGP,EAAEuF,UAAWvF,EAAES,aAChDT,EAAE8K,YAAcvK,GAAmB,EAAGP,EAAEyK,eAKxCzK,EAAE+K,MAAQ,SAASC,EAAOC,EAAMC,GAClB,MAARD,IACFA,EAAOD,GAAS,EAChBA,EAAQ,GAEVE,EAAOA,GAAQ,CAKf,KAAK,GAHDvL,GAASkB,KAAKC,IAAID,KAAKsK,MAAMF,EAAOD,GAASE,GAAO,GACpDH,EAAQ5I,MAAMxC,GAETgB,EAAM,EAAShB,EAANgB,EAAcA,IAAOqK,GAASE,EAC9CH,EAAMpK,GAAOqK,CAGf,OAAOD,GAQT,IAAIK,GAAe,SAASC,EAAYC,EAAWzL,EAAS0L,EAAgB7E,GAC1E,KAAM6E,YAA0BD,IAAY,MAAOD,GAAW1H,MAAM9D,EAAS6G,EAC7E,IAAI8E,GAAOjH,EAAW8G,EAAW5J,WAC7B+C,EAAS6G,EAAW1H,MAAM6H,EAAM9E,EACpC,OAAI1G,GAAE6D,SAASW,GAAgBA,EACxBgH,EAMTxL,GAAE6C,KAAO,SAASQ,EAAMxD,GACtB,GAAI+C,GAAcS,EAAKR,OAASD,EAAY,MAAOA,GAAWe,MAAMN,EAAMrC,EAAMC,KAAKhB,UAAW,GAChG,KAAKD,EAAEwB,WAAW6B,GAAO,KAAM,IAAIoI,WAAU,oCAC7C,IAAI/E,GAAO1F,EAAMC,KAAKhB,UAAW,GAC7ByL,EAAQ,WACV,MAAON,GAAa/H,EAAMqI,EAAO7L,EAASmC,KAAM0E,EAAKiF,OAAO3K,EAAMC,KAAKhB,aAEzE,OAAOyL,IAMT1L,EAAE4L,QAAU,SAASvI,GACnB,GAAIwI,GAAY7K,EAAMC,KAAKhB,UAAW,GAClCyL,EAAQ,WAGV,IAAK,GAFDI,GAAW,EAAGnM,EAASkM,EAAUlM,OACjC+G,EAAOvE,MAAMxC,GACRiB,EAAI,EAAOjB,EAAJiB,EAAYA,IAC1B8F,EAAK9F,GAAKiL,EAAUjL,KAAOZ,EAAIC,UAAU6L,KAAcD,EAAUjL,EAEnE,MAAOkL,EAAW7L,UAAUN,QAAQ+G,EAAK5E,KAAK7B,UAAU6L,KACxD,OAAOV,GAAa/H,EAAMqI,EAAO1J,KAAMA,KAAM0E,GAE/C,OAAOgF,IAMT1L,EAAE+L,QAAU,SAASzM,GACnB,GAAIsB,GAA8B0D,EAA3B3E,EAASM,UAAUN,MAC1B,IAAc,GAAVA,EAAa,KAAM,IAAIqM,OAAM,wCACjC,KAAKpL,EAAI,EAAOjB,EAAJiB,EAAYA,IACtB0D,EAAMrE,UAAUW,GAChBtB,EAAIgF,GAAOtE,EAAE6C,KAAKvD,EAAIgF,GAAMhF,EAE9B,OAAOA,IAITU,EAAEiM,QAAU,SAAS5I,EAAM6I,GACzB,GAAID,GAAU,SAAS3H,GACrB,GAAI6H,GAAQF,EAAQE,MAChBC,EAAU,IAAMF,EAASA,EAAOvI,MAAM3B,KAAM/B,WAAaqE,EAE7D,OADKtE,GAAE4B,IAAIuK,EAAOC,KAAUD,EAAMC,GAAW/I,EAAKM,MAAM3B,KAAM/B,YACvDkM,EAAMC,GAGf,OADAH,GAAQE,SACDF,GAKTjM,EAAEqM,MAAQ,SAAShJ,EAAMiJ,GACvB,GAAI5F,GAAO1F,EAAMC,KAAKhB,UAAW,EACjC,OAAOsM,YAAW,WAChB,MAAOlJ,GAAKM,MAAM,KAAM+C,IACvB4F,IAKLtM,EAAEwM,MAAQxM,EAAE4L,QAAQ5L,EAAEqM,MAAOrM,EAAG,GAOhCA,EAAEyM,SAAW,SAASpJ,EAAMiJ,EAAMI,GAChC,GAAI7M,GAAS6G,EAAMlC,EACfmI,EAAU,KACVC,EAAW,CACVF,KAASA,KACd,IAAIG,GAAQ,WACVD,EAAWF,EAAQI,WAAY,EAAQ,EAAI9M,EAAE+M,MAC7CJ,EAAU,KACVnI,EAASnB,EAAKM,MAAM9D,EAAS6G,GACxBiG,IAAS9M,EAAU6G,EAAO,MAEjC,OAAO,YACL,GAAIqG,GAAM/M,EAAE+M,KACPH,IAAYF,EAAQI,WAAY,IAAOF,EAAWG,EACvD,IAAIC,GAAYV,GAAQS,EAAMH,EAc9B,OAbA/M,GAAUmC,KACV0E,EAAOzG,UACU,GAAb+M,GAAkBA,EAAYV,GAC5BK,IACFM,aAAaN,GACbA,EAAU,MAEZC,EAAWG,EACXvI,EAASnB,EAAKM,MAAM9D,EAAS6G,GACxBiG,IAAS9M,EAAU6G,EAAO,OACrBiG,GAAWD,EAAQQ,YAAa,IAC1CP,EAAUJ,WAAWM,EAAOG,IAEvBxI,IAQXxE,EAAEmN,SAAW,SAAS9J,EAAMiJ,EAAMc,GAChC,GAAIT,GAASjG,EAAM7G,EAASwN,EAAW7I,EAEnCqI,EAAQ,WACV,GAAI/D,GAAO9I,EAAE+M,MAAQM,CAEVf,GAAPxD,GAAeA,GAAQ,EACzB6D,EAAUJ,WAAWM,EAAOP,EAAOxD,IAEnC6D,EAAU,KACLS,IACH5I,EAASnB,EAAKM,MAAM9D,EAAS6G,GACxBiG,IAAS9M,EAAU6G,EAAO,QAKrC,OAAO,YACL7G,EAAUmC,KACV0E,EAAOzG,UACPoN,EAAYrN,EAAE+M,KACd,IAAIO,GAAUF,IAAcT,CAO5B,OANKA,KAASA,EAAUJ,WAAWM,EAAOP,IACtCgB,IACF9I,EAASnB,EAAKM,MAAM9D,EAAS6G,GAC7B7G,EAAU6G,EAAO,MAGZlC,IAOXxE,EAAEuN,KAAO,SAASlK,EAAMmK,GACtB,MAAOxN,GAAE4L,QAAQ4B,EAASnK,IAI5BrD,EAAE6F,OAAS,SAASzF,GAClB,MAAO,YACL,OAAQA,EAAUuD,MAAM3B,KAAM/B,aAMlCD,EAAEyN,QAAU,WACV,GAAI/G,GAAOzG,UACP+K,EAAQtE,EAAK/G,OAAS,CAC1B,OAAO,YAGL,IAFA,GAAIiB,GAAIoK,EACJxG,EAASkC,EAAKsE,GAAOrH,MAAM3B,KAAM/B,WAC9BW,KAAK4D,EAASkC,EAAK9F,GAAGK,KAAKe,KAAMwC,EACxC,OAAOA,KAKXxE,EAAE0N,MAAQ,SAASC,EAAOtK,GACxB,MAAO,YACL,QAAMsK,EAAQ,EACLtK,EAAKM,MAAM3B,KAAM/B,WAD1B,SAOJD,EAAE4N,OAAS,SAASD,EAAOtK,GACzB,GAAI7D,EACJ,OAAO,YAKL,QAJMmO,EAAQ,IACZnO,EAAO6D,EAAKM,MAAM3B,KAAM/B,YAEb,GAAT0N,IAAYtK,EAAO,MAChB7D,IAMXQ,EAAE6N,KAAO7N,EAAE4L,QAAQ5L,EAAE4N,OAAQ,EAM7B,IAAIE,KAAevL,SAAU,MAAMwL,qBAAqB,YACpD1M,GAAsB,UAAW,gBAAiB,WAClC,uBAAwB,iBAAkB,iBAqB9DrB,GAAEP,KAAO,SAASH,GAChB,IAAKU,EAAE6D,SAASvE,GAAM,QACtB,IAAIqD,EAAY,MAAOA,GAAWrD,EAClC,IAAIG,KACJ,KAAK,GAAI6E,KAAOhF,GAASU,EAAE4B,IAAItC,EAAKgF,IAAM7E,EAAKqC,KAAKwC,EAGpD,OADIwJ,IAAY3M,EAAoB7B,EAAKG,GAClCA,GAITO,EAAEgO,QAAU,SAAS1O,GACnB,IAAKU,EAAE6D,SAASvE,GAAM,QACtB,IAAIG,KACJ,KAAK,GAAI6E,KAAOhF,GAAKG,EAAKqC,KAAKwC,EAG/B,OADIwJ,IAAY3M,EAAoB7B,EAAKG,GAClCA,GAITO,EAAEsG,OAAS,SAAShH,GAIlB,IAAK,GAHDG,GAAOO,EAAEP,KAAKH,GACdK,EAASF,EAAKE,OACd2G,EAASnE,MAAMxC,GACViB,EAAI,EAAOjB,EAAJiB,EAAYA,IAC1B0F,EAAO1F,GAAKtB,EAAIG,EAAKmB,GAEvB,OAAO0F,IAKTtG,EAAEiO,UAAY,SAAS3O,EAAKC,EAAUM,GACpCN,EAAWc,EAAGd,EAAUM,EAKtB,KAAK,GADDD,GAHFH,EAAQO,EAAEP,KAAKH,GACbK,EAASF,EAAKE,OACdoF,KAEKrF,EAAQ,EAAWC,EAARD,EAAgBA,IAClCE,EAAaH,EAAKC,GAClBqF,EAAQnF,GAAcL,EAASD,EAAIM,GAAaA,EAAYN,EAE9D,OAAOyF,IAIX/E,EAAEkO,MAAQ,SAAS5O,GAIjB,IAAK,GAHDG,GAAOO,EAAEP,KAAKH,GACdK,EAASF,EAAKE,OACduO,EAAQ/L,MAAMxC,GACTiB,EAAI,EAAOjB,EAAJiB,EAAYA,IAC1BsN,EAAMtN,IAAMnB,EAAKmB,GAAItB,EAAIG,EAAKmB,IAEhC,OAAOsN,IAITlO,EAAEmO,OAAS,SAAS7O,GAGlB,IAAK,GAFDkF,MACA/E,EAAOO,EAAEP,KAAKH,GACTsB,EAAI,EAAGjB,EAASF,EAAKE,OAAYA,EAAJiB,EAAYA,IAChD4D,EAAOlF,EAAIG,EAAKmB,KAAOnB,EAAKmB,EAE9B,OAAO4D,IAKTxE,EAAEoO,UAAYpO,EAAEqO,QAAU,SAAS/O,GACjC,GAAIgP,KACJ,KAAK,GAAIhK,KAAOhF,GACVU,EAAEwB,WAAWlC,EAAIgF,KAAOgK,EAAMxM,KAAKwC,EAEzC,OAAOgK,GAAM3G,QAIf3H,EAAEuO,OAAStK,EAAejE,EAAEgO,SAI5BhO,EAAEwO,UAAYxO,EAAEyO,OAASxK,EAAejE,EAAEP,MAG1CO,EAAEwF,QAAU,SAASlG,EAAKc,EAAWP,GACnCO,EAAYC,EAAGD,EAAWP,EAE1B,KAAK,GADmByE,GAApB7E,EAAOO,EAAEP,KAAKH,GACTsB,EAAI,EAAGjB,EAASF,EAAKE,OAAYA,EAAJiB,EAAYA,IAEhD,GADA0D,EAAM7E,EAAKmB,GACPR,EAAUd,EAAIgF,GAAMA,EAAKhF,GAAM,MAAOgF,IAK9CtE,EAAE0O,KAAO,SAASlE,EAAQmE,EAAW9O,GACnC,GAA+BN,GAAUE,EAArC+E,KAAalF,EAAMkL,CACvB,IAAW,MAAPlL,EAAa,MAAOkF,EACpBxE,GAAEwB,WAAWmN,IACflP,EAAOO,EAAEgO,QAAQ1O,GACjBC,EAAWO,EAAW6O,EAAW9O,KAEjCJ,EAAO0J,EAAQlJ,WAAW,GAAO,EAAO,GACxCV,EAAW,SAASgE,EAAOe,EAAKhF,GAAO,MAAOgF,KAAOhF,IACrDA,EAAM8C,OAAO9C,GAEf,KAAK,GAAIsB,GAAI,EAAGjB,EAASF,EAAKE,OAAYA,EAAJiB,EAAYA,IAAK,CACrD,GAAI0D,GAAM7E,EAAKmB,GACX2C,EAAQjE,EAAIgF,EACZ/E,GAASgE,EAAOe,EAAKhF,KAAMkF,EAAOF,GAAOf,GAE/C,MAAOiB,IAITxE,EAAE4O,KAAO,SAAStP,EAAKC,EAAUM,GAC/B,GAAIG,EAAEwB,WAAWjC,GACfA,EAAWS,EAAE6F,OAAOtG,OACf,CACL,GAAIE,GAAOO,EAAE6E,IAAIsE,EAAQlJ,WAAW,GAAO,EAAO,GAAI4O,OACtDtP,GAAW,SAASgE,EAAOe,GACzB,OAAQtE,EAAE6B,SAASpC,EAAM6E,IAG7B,MAAOtE,GAAE0O,KAAKpP,EAAKC,EAAUM,IAI/BG,EAAE8O,SAAW7K,EAAejE,EAAEgO,SAAS,GAKvChO,EAAE+C,OAAS,SAAStB,EAAWsN,GAC7B,GAAIvK,GAASD,EAAW9C,EAExB,OADIsN,IAAO/O,EAAEwO,UAAUhK,EAAQuK,GACxBvK,GAITxE,EAAEgP,MAAQ,SAAS1P,GACjB,MAAKU,GAAE6D,SAASvE,GACTU,EAAE0C,QAAQpD,GAAOA,EAAI0B,QAAUhB,EAAEuO,UAAWjP,GADtBA,GAO/BU,EAAEiP,IAAM,SAAS3P,EAAK4P,GAEpB,MADAA,GAAY5P,GACLA,GAITU,EAAEmP,QAAU,SAAS3E,EAAQ1D,GAC3B,GAAIrH,GAAOO,EAAEP,KAAKqH,GAAQnH,EAASF,EAAKE,MACxC,IAAc,MAAV6K,EAAgB,OAAQ7K,CAE5B,KAAK,GADDL,GAAM8C,OAAOoI,GACR5J,EAAI,EAAOjB,EAAJiB,EAAYA,IAAK,CAC/B,GAAI0D,GAAM7E,EAAKmB,EACf,IAAIkG,EAAMxC,KAAShF,EAAIgF,MAAUA,IAAOhF,IAAM,OAAO,EAEvD,OAAO,EAKT,IAAI8P,GAAK,SAAStH,EAAGC,EAAGsH,EAAQC,GAG9B,GAAIxH,IAAMC,EAAG,MAAa,KAAND,GAAW,EAAIA,IAAM,EAAIC,CAE7C,IAAS,MAALD,GAAkB,MAALC,EAAW,MAAOD,KAAMC,CAErCD,aAAa9H,KAAG8H,EAAIA,EAAE7E,UACtB8E,YAAa/H,KAAG+H,EAAIA,EAAE9E,SAE1B,IAAIsM,GAAYhN,EAAStB,KAAK6G,EAC9B,IAAIyH,IAAchN,EAAStB,KAAK8G,GAAI,OAAO,CAC3C,QAAQwH,GAEN,IAAK,kBAEL,IAAK,kBAGH,MAAO,GAAKzH,GAAM,GAAKC,CACzB,KAAK,kBAGH,OAAKD,KAAOA,GAAWC,KAAOA,EAEhB,KAAND,EAAU,GAAKA,IAAM,EAAIC,GAAKD,KAAOC,CAC/C,KAAK,gBACL,IAAK,mBAIH,OAAQD,KAAOC,EAGnB,GAAIyH,GAA0B,mBAAdD,CAChB,KAAKC,EAAW,CACd,GAAgB,gBAAL1H,IAA6B,gBAALC,GAAe,OAAO,CAIzD,IAAI0H,GAAQ3H,EAAExG,YAAaoO,EAAQ3H,EAAEzG,WACrC,IAAImO,IAAUC,KAAW1P,EAAEwB,WAAWiO,IAAUA,YAAiBA,IACxCzP,EAAEwB,WAAWkO,IAAUA,YAAiBA,KACzC,eAAiB5H,IAAK,eAAiBC,GAC7D,OAAO,EAQXsH,EAASA,MACTC,EAASA,KAET,KADA,GAAI3P,GAAS0P,EAAO1P,OACbA,KAGL,GAAI0P,EAAO1P,KAAYmI,EAAG,MAAOwH,GAAO3P,KAAYoI,CAQtD,IAJAsH,EAAOvN,KAAKgG,GACZwH,EAAOxN,KAAKiG,GAGRyH,EAAW,CAGb,GADA7P,EAASmI,EAAEnI,OACPA,IAAWoI,EAAEpI,OAAQ,OAAO,CAEhC,MAAOA,KACL,IAAKyP,EAAGtH,EAAEnI,GAASoI,EAAEpI,GAAS0P,EAAQC,GAAS,OAAO,MAEnD,CAEL,GAAsBhL,GAAlB7E,EAAOO,EAAEP,KAAKqI,EAGlB,IAFAnI,EAASF,EAAKE,OAEVK,EAAEP,KAAKsI,GAAGpI,SAAWA,EAAQ,OAAO,CACxC,MAAOA,KAGL,GADA2E,EAAM7E,EAAKE,IACLK,EAAE4B,IAAImG,EAAGzD,KAAQ8K,EAAGtH,EAAExD,GAAMyD,EAAEzD,GAAM+K,EAAQC,GAAU,OAAO,EAMvE,MAFAD,GAAOM,MACPL,EAAOK,OACA,EAIT3P,GAAE4P,QAAU,SAAS9H,EAAGC,GACtB,MAAOqH,GAAGtH,EAAGC,IAKf/H,EAAE6P,QAAU,SAASvQ,GACnB,MAAW,OAAPA,GAAoB,EACpBS,EAAYT,KAASU,EAAE0C,QAAQpD,IAAQU,EAAE8P,SAASxQ,IAAQU,EAAEyJ,YAAYnK,IAA6B,IAAfA,EAAIK,OAChE,IAAvBK,EAAEP,KAAKH,GAAKK,QAIrBK,EAAE+P,UAAY,SAASzQ,GACrB,SAAUA,GAAwB,IAAjBA,EAAI0Q,WAKvBhQ,EAAE0C,QAAUD,GAAiB,SAASnD,GACpC,MAA8B,mBAAvBiD,EAAStB,KAAK3B,IAIvBU,EAAE6D,SAAW,SAASvE,GACpB,GAAI2Q,SAAc3Q,EAClB,OAAgB,aAAT2Q,GAAgC,WAATA,KAAuB3Q,GAIvDU,EAAE2E,MAAM,YAAa,WAAY,SAAU,SAAU,OAAQ,SAAU,SAAU,SAASuL,GACxFlQ,EAAE,KAAOkQ,GAAQ,SAAS5Q,GACxB,MAAOiD,GAAStB,KAAK3B,KAAS,WAAa4Q,EAAO,OAMjDlQ,EAAEyJ,YAAYxJ,aACjBD,EAAEyJ,YAAc,SAASnK,GACvB,MAAOU,GAAE4B,IAAItC,EAAK,YAMJ,kBAAP,KAAyC,gBAAb6Q,aACrCnQ,EAAEwB,WAAa,SAASlC,GACtB,MAAqB,kBAAPA,KAAqB,IAKvCU,EAAEoQ,SAAW,SAAS9Q,GACpB,MAAO8Q,UAAS9Q,KAAS4B,MAAMmP,WAAW/Q,KAI5CU,EAAEkB,MAAQ,SAAS5B,GACjB,MAAOU,GAAEsQ,SAAShR,IAAQA,KAASA,GAIrCU,EAAEiK,UAAY,SAAS3K,GACrB,MAAOA,MAAQ,GAAQA,KAAQ,GAAgC,qBAAvBiD,EAAStB,KAAK3B,IAIxDU,EAAEuQ,OAAS,SAASjR,GAClB,MAAe,QAARA,GAITU,EAAEwQ,YAAc,SAASlR,GACvB,MAAOA,SAAa,IAKtBU,EAAE4B,IAAM,SAAStC,EAAKgF,GACpB,MAAc,OAAPhF,GAAekD,EAAevB,KAAK3B,EAAKgF,IAQjDtE,EAAEyQ,WAAa,WAEb,MADA1O,GAAK/B,EAAIiC,EACFD,MAIThC,EAAE4D,SAAW,SAASL,GACpB,MAAOA,IAITvD,EAAE0Q,SAAW,SAASnN,GACpB,MAAO,YACL,MAAOA,KAIXvD,EAAE2Q,KAAO,aAET3Q,EAAE+D,SAAWA,EAGb/D,EAAE4Q,WAAa,SAAStR,GACtB,MAAc,OAAPA,EAAc,aAAe,SAASgF,GAC3C,MAAOhF,GAAIgF,KAMftE,EAAE8D,QAAU9D,EAAE6Q,QAAU,SAAS/J,GAE/B,MADAA,GAAQ9G,EAAEwO,aAAc1H,GACjB,SAASxH,GACd,MAAOU,GAAEmP,QAAQ7P,EAAKwH,KAK1B9G,EAAE2N,MAAQ,SAASnG,EAAGjI,EAAUM,GAC9B,GAAIiR,GAAQ3O,MAAMtB,KAAKC,IAAI,EAAG0G,GAC9BjI,GAAWO,EAAWP,EAAUM,EAAS,EACzC,KAAK,GAAIe,GAAI,EAAO4G,EAAJ5G,EAAOA,IAAKkQ,EAAMlQ,GAAKrB,EAASqB,EAChD,OAAOkQ,IAIT9Q,EAAEsH,OAAS,SAASvG,EAAKD,GAKvB,MAJW,OAAPA,IACFA,EAAMC,EACNA,EAAM,GAEDA,EAAMF,KAAKgK,MAAMhK,KAAKyG,UAAYxG,EAAMC,EAAM,KAIvDf,EAAE+M,IAAMgE,KAAKhE,KAAO,WAClB,OAAO,GAAIgE,OAAOC,UAIpB,IAAIC,IACFC,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,SACLC,IAAK,SACLC,IAAK,UAEHC,EAAcxR,EAAEmO,OAAO8C,GAGvBQ,EAAgB,SAAS5M,GAC3B,GAAI6M,GAAU,SAASC,GACrB,MAAO9M,GAAI8M,IAGTvN,EAAS,MAAQpE,EAAEP,KAAKoF,GAAK+M,KAAK,KAAO,IACzCC,EAAaC,OAAO1N,GACpB2N,EAAgBD,OAAO1N,EAAQ,IACnC,OAAO,UAAS4N,GAEd,MADAA,GAAmB,MAAVA,EAAiB,GAAK,GAAKA,EAC7BH,EAAWI,KAAKD,GAAUA,EAAOE,QAAQH,EAAeL,GAAWM,GAG9EhS,GAAEmS,OAASV,EAAcR,GACzBjR,EAAEoS,SAAWX,EAAcD,GAI3BxR,EAAEwE,OAAS,SAASgG,EAAQzG,EAAUsO,GACpC,GAAI9O,GAAkB,MAAViH,MAAsB,GAAIA,EAAOzG,EAI7C,OAHIR,SAAe,KACjBA,EAAQ8O,GAEHrS,EAAEwB,WAAW+B,GAASA,EAAMtC,KAAKuJ,GAAUjH,EAKpD,IAAI+O,GAAY,CAChBtS,GAAEuS,SAAW,SAASC,GACpB,GAAIC,KAAOH,EAAY,EACvB,OAAOE,GAASA,EAASC,EAAKA,GAKhCzS,EAAE0S,kBACAC,SAAc,kBACdC,YAAc,mBACdT,OAAc,mBAMhB,IAAIU,GAAU,OAIVC,GACFxB,IAAU,IACVyB,KAAU,KACVC,KAAU,IACVC,KAAU,IACVC,SAAU,QACVC,SAAU,SAGRzB,EAAU,4BAEV0B,EAAa,SAASzB,GACxB,MAAO,KAAOmB,EAAQnB,GAOxB3R,GAAEqT,SAAW,SAASC,EAAMC,EAAUC,IAC/BD,GAAYC,IAAaD,EAAWC,GACzCD,EAAWvT,EAAE8O,YAAayE,EAAUvT,EAAE0S,iBAGtC,IAAI5O,GAAUgO,SACXyB,EAASpB,QAAUU,GAASzO,QAC5BmP,EAASX,aAAeC,GAASzO,QACjCmP,EAASZ,UAAYE,GAASzO,QAC/BwN,KAAK,KAAO,KAAM,KAGhBlS,EAAQ,EACR0E,EAAS,QACbkP,GAAKpB,QAAQpO,EAAS,SAAS6N,EAAOQ,EAAQS,EAAaD,EAAUc,GAanE,MAZArP,IAAUkP,EAAKtS,MAAMtB,EAAO+T,GAAQvB,QAAQR,EAAS0B,GACrD1T,EAAQ+T,EAAS9B,EAAMhS,OAEnBwS,EACF/N,GAAU,cAAgB+N,EAAS,iCAC1BS,EACTxO,GAAU,cAAgBwO,EAAc,uBAC/BD,IACTvO,GAAU,OAASuO,EAAW,YAIzBhB,IAETvN,GAAU,OAGLmP,EAASG,WAAUtP,EAAS,mBAAqBA,EAAS,OAE/DA,EAAS,2CACP,oDACAA,EAAS,eAEX,KACE,GAAIuP,GAAS,GAAIrR,UAASiR,EAASG,UAAY,MAAO,IAAKtP,GAC3D,MAAOwP,GAEP,KADAA,GAAExP,OAASA,EACLwP,EAGR,GAAIP,GAAW,SAASQ,GACtB,MAAOF,GAAO1S,KAAKe,KAAM6R,EAAM7T,IAI7B8T,EAAWP,EAASG,UAAY,KAGpC,OAFAL,GAASjP,OAAS,YAAc0P,EAAW,OAAS1P,EAAS,IAEtDiP,GAITrT,EAAE+T,MAAQ,SAASzU,GACjB,GAAI0U,GAAWhU,EAAEV,EAEjB,OADA0U,GAASC,QAAS,EACXD,EAUT,IAAIxP,GAAS,SAASwP,EAAU1U,GAC9B,MAAO0U,GAASC,OAASjU,EAAEV,GAAKyU,QAAUzU,EAI5CU,GAAEkU,MAAQ,SAAS5U,GACjBU,EAAE2E,KAAK3E,EAAEoO,UAAU9O,GAAM,SAAS4Q,GAChC,GAAI7M,GAAOrD,EAAEkQ,GAAQ5Q,EAAI4Q,EACzBlQ,GAAEyB,UAAUyO,GAAQ,WAClB,GAAIxJ,IAAQ1E,KAAKiB,SAEjB,OADAnB,GAAK6B,MAAM+C,EAAMzG,WACVuE,EAAOxC,KAAMqB,EAAKM,MAAM3D,EAAG0G,QAMxC1G,EAAEkU,MAAMlU,GAGRA,EAAE2E,MAAM,MAAO,OAAQ,UAAW,QAAS,OAAQ,SAAU,WAAY,SAASuL,GAChF,GAAIzJ,GAASvE,EAAWgO,EACxBlQ,GAAEyB,UAAUyO,GAAQ,WAClB,GAAI5Q,GAAM0C,KAAKiB,QAGf,OAFAwD,GAAO9C,MAAMrE,EAAKW,WACJ,UAATiQ,GAA6B,WAATA,GAAqC,IAAf5Q,EAAIK,cAAqBL,GAAI,GACrEkF,EAAOxC,KAAM1C,MAKxBU,EAAE2E,MAAM,SAAU,OAAQ,SAAU,SAASuL,GAC3C,GAAIzJ,GAASvE,EAAWgO,EACxBlQ,GAAEyB,UAAUyO,GAAQ,WAClB,MAAO1L,GAAOxC,KAAMyE,EAAO9C,MAAM3B,KAAKiB,SAAUhD,eAKpDD,EAAEyB,UAAU8B,MAAQ,WAClB,MAAOvB,MAAKiB,UAKdjD,EAAEyB,UAAU0S,QAAUnU,EAAEyB,UAAU2S,OAASpU,EAAEyB,UAAU8B,MAEvDvD,EAAEyB,UAAUc,SAAW,WACrB,MAAO,GAAKP,KAAKiB,UAUG,kBAAXoR,SAAyBA,OAAOC,KACzCD,OAAO,gBAAkB,WACvB,MAAOrU,OAGXiB,KAAKe"}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/bower_components/underscore/underscore.js b/wrt/wrt_support/sample/launcher/bower_components/underscore/underscore.js
new file mode 100644 (file)
index 0000000..b29332f
--- /dev/null
@@ -0,0 +1,1548 @@
+//     Underscore.js 1.8.3
+//     http://underscorejs.org
+//     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+//     Underscore may be freely distributed under the MIT license.
+
+(function() {
+
+  // Baseline setup
+  // --------------
+
+  // Establish the root object, `window` in the browser, or `exports` on the server.
+  var root = this;
+
+  // Save the previous value of the `_` variable.
+  var previousUnderscore = root._;
+
+  // Save bytes in the minified (but not gzipped) version:
+  var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
+
+  // Create quick reference variables for speed access to core prototypes.
+  var
+    push             = ArrayProto.push,
+    slice            = ArrayProto.slice,
+    toString         = ObjProto.toString,
+    hasOwnProperty   = ObjProto.hasOwnProperty;
+
+  // All **ECMAScript 5** native function implementations that we hope to use
+  // are declared here.
+  var
+    nativeIsArray      = Array.isArray,
+    nativeKeys         = Object.keys,
+    nativeBind         = FuncProto.bind,
+    nativeCreate       = Object.create;
+
+  // Naked function reference for surrogate-prototype-swapping.
+  var Ctor = function(){};
+
+  // Create a safe reference to the Underscore object for use below.
+  var _ = function(obj) {
+    if (obj instanceof _) return obj;
+    if (!(this instanceof _)) return new _(obj);
+    this._wrapped = obj;
+  };
+
+  // Export the Underscore object for **Node.js**, with
+  // backwards-compatibility for the old `require()` API. If we're in
+  // the browser, add `_` as a global object.
+  if (typeof exports !== 'undefined') {
+    if (typeof module !== 'undefined' && module.exports) {
+      exports = module.exports = _;
+    }
+    exports._ = _;
+  } else {
+    root._ = _;
+  }
+
+  // Current version.
+  _.VERSION = '1.8.3';
+
+  // Internal function that returns an efficient (for current engines) version
+  // of the passed-in callback, to be repeatedly applied in other Underscore
+  // functions.
+  var optimizeCb = function(func, context, argCount) {
+    if (context === void 0) return func;
+    switch (argCount == null ? 3 : argCount) {
+      case 1: return function(value) {
+        return func.call(context, value);
+      };
+      case 2: return function(value, other) {
+        return func.call(context, value, other);
+      };
+      case 3: return function(value, index, collection) {
+        return func.call(context, value, index, collection);
+      };
+      case 4: return function(accumulator, value, index, collection) {
+        return func.call(context, accumulator, value, index, collection);
+      };
+    }
+    return function() {
+      return func.apply(context, arguments);
+    };
+  };
+
+  // A mostly-internal function to generate callbacks that can be applied
+  // to each element in a collection, returning the desired result — either
+  // identity, an arbitrary callback, a property matcher, or a property accessor.
+  var cb = function(value, context, argCount) {
+    if (value == null) return _.identity;
+    if (_.isFunction(value)) return optimizeCb(value, context, argCount);
+    if (_.isObject(value)) return _.matcher(value);
+    return _.property(value);
+  };
+  _.iteratee = function(value, context) {
+    return cb(value, context, Infinity);
+  };
+
+  // An internal function for creating assigner functions.
+  var createAssigner = function(keysFunc, undefinedOnly) {
+    return function(obj) {
+      var length = arguments.length;
+      if (length < 2 || obj == null) return obj;
+      for (var index = 1; index < length; index++) {
+        var source = arguments[index],
+            keys = keysFunc(source),
+            l = keys.length;
+        for (var i = 0; i < l; i++) {
+          var key = keys[i];
+          if (!undefinedOnly || obj[key] === void 0) obj[key] = source[key];
+        }
+      }
+      return obj;
+    };
+  };
+
+  // An internal function for creating a new object that inherits from another.
+  var baseCreate = function(prototype) {
+    if (!_.isObject(prototype)) return {};
+    if (nativeCreate) return nativeCreate(prototype);
+    Ctor.prototype = prototype;
+    var result = new Ctor;
+    Ctor.prototype = null;
+    return result;
+  };
+
+  var property = function(key) {
+    return function(obj) {
+      return obj == null ? void 0 : obj[key];
+    };
+  };
+
+  // Helper for collection methods to determine whether a collection
+  // should be iterated as an array or as an object
+  // Related: http://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
+  // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094
+  var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;
+  var getLength = property('length');
+  var isArrayLike = function(collection) {
+    var length = getLength(collection);
+    return typeof length == 'number' && length >= 0 && length <= MAX_ARRAY_INDEX;
+  };
+
+  // Collection Functions
+  // --------------------
+
+  // The cornerstone, an `each` implementation, aka `forEach`.
+  // Handles raw objects in addition to array-likes. Treats all
+  // sparse array-likes as if they were dense.
+  _.each = _.forEach = function(obj, iteratee, context) {
+    iteratee = optimizeCb(iteratee, context);
+    var i, length;
+    if (isArrayLike(obj)) {
+      for (i = 0, length = obj.length; i < length; i++) {
+        iteratee(obj[i], i, obj);
+      }
+    } else {
+      var keys = _.keys(obj);
+      for (i = 0, length = keys.length; i < length; i++) {
+        iteratee(obj[keys[i]], keys[i], obj);
+      }
+    }
+    return obj;
+  };
+
+  // Return the results of applying the iteratee to each element.
+  _.map = _.collect = function(obj, iteratee, context) {
+    iteratee = cb(iteratee, context);
+    var keys = !isArrayLike(obj) && _.keys(obj),
+        length = (keys || obj).length,
+        results = Array(length);
+    for (var index = 0; index < length; index++) {
+      var currentKey = keys ? keys[index] : index;
+      results[index] = iteratee(obj[currentKey], currentKey, obj);
+    }
+    return results;
+  };
+
+  // Create a reducing function iterating left or right.
+  function createReduce(dir) {
+    // Optimized iterator function as using arguments.length
+    // in the main function will deoptimize the, see #1991.
+    function iterator(obj, iteratee, memo, keys, index, length) {
+      for (; index >= 0 && index < length; index += dir) {
+        var currentKey = keys ? keys[index] : index;
+        memo = iteratee(memo, obj[currentKey], currentKey, obj);
+      }
+      return memo;
+    }
+
+    return function(obj, iteratee, memo, context) {
+      iteratee = optimizeCb(iteratee, context, 4);
+      var keys = !isArrayLike(obj) && _.keys(obj),
+          length = (keys || obj).length,
+          index = dir > 0 ? 0 : length - 1;
+      // Determine the initial value if none is provided.
+      if (arguments.length < 3) {
+        memo = obj[keys ? keys[index] : index];
+        index += dir;
+      }
+      return iterator(obj, iteratee, memo, keys, index, length);
+    };
+  }
+
+  // **Reduce** builds up a single result from a list of values, aka `inject`,
+  // or `foldl`.
+  _.reduce = _.foldl = _.inject = createReduce(1);
+
+  // The right-associative version of reduce, also known as `foldr`.
+  _.reduceRight = _.foldr = createReduce(-1);
+
+  // Return the first value which passes a truth test. Aliased as `detect`.
+  _.find = _.detect = function(obj, predicate, context) {
+    var key;
+    if (isArrayLike(obj)) {
+      key = _.findIndex(obj, predicate, context);
+    } else {
+      key = _.findKey(obj, predicate, context);
+    }
+    if (key !== void 0 && key !== -1) return obj[key];
+  };
+
+  // Return all the elements that pass a truth test.
+  // Aliased as `select`.
+  _.filter = _.select = function(obj, predicate, context) {
+    var results = [];
+    predicate = cb(predicate, context);
+    _.each(obj, function(value, index, list) {
+      if (predicate(value, index, list)) results.push(value);
+    });
+    return results;
+  };
+
+  // Return all the elements for which a truth test fails.
+  _.reject = function(obj, predicate, context) {
+    return _.filter(obj, _.negate(cb(predicate)), context);
+  };
+
+  // Determine whether all of the elements match a truth test.
+  // Aliased as `all`.
+  _.every = _.all = function(obj, predicate, context) {
+    predicate = cb(predicate, context);
+    var keys = !isArrayLike(obj) && _.keys(obj),
+        length = (keys || obj).length;
+    for (var index = 0; index < length; index++) {
+      var currentKey = keys ? keys[index] : index;
+      if (!predicate(obj[currentKey], currentKey, obj)) return false;
+    }
+    return true;
+  };
+
+  // Determine if at least one element in the object matches a truth test.
+  // Aliased as `any`.
+  _.some = _.any = function(obj, predicate, context) {
+    predicate = cb(predicate, context);
+    var keys = !isArrayLike(obj) && _.keys(obj),
+        length = (keys || obj).length;
+    for (var index = 0; index < length; index++) {
+      var currentKey = keys ? keys[index] : index;
+      if (predicate(obj[currentKey], currentKey, obj)) return true;
+    }
+    return false;
+  };
+
+  // Determine if the array or object contains a given item (using `===`).
+  // Aliased as `includes` and `include`.
+  _.contains = _.includes = _.include = function(obj, item, fromIndex, guard) {
+    if (!isArrayLike(obj)) obj = _.values(obj);
+    if (typeof fromIndex != 'number' || guard) fromIndex = 0;
+    return _.indexOf(obj, item, fromIndex) >= 0;
+  };
+
+  // Invoke a method (with arguments) on every item in a collection.
+  _.invoke = function(obj, method) {
+    var args = slice.call(arguments, 2);
+    var isFunc = _.isFunction(method);
+    return _.map(obj, function(value) {
+      var func = isFunc ? method : value[method];
+      return func == null ? func : func.apply(value, args);
+    });
+  };
+
+  // Convenience version of a common use case of `map`: fetching a property.
+  _.pluck = function(obj, key) {
+    return _.map(obj, _.property(key));
+  };
+
+  // Convenience version of a common use case of `filter`: selecting only objects
+  // containing specific `key:value` pairs.
+  _.where = function(obj, attrs) {
+    return _.filter(obj, _.matcher(attrs));
+  };
+
+  // Convenience version of a common use case of `find`: getting the first object
+  // containing specific `key:value` pairs.
+  _.findWhere = function(obj, attrs) {
+    return _.find(obj, _.matcher(attrs));
+  };
+
+  // Return the maximum element (or element-based computation).
+  _.max = function(obj, iteratee, context) {
+    var result = -Infinity, lastComputed = -Infinity,
+        value, computed;
+    if (iteratee == null && obj != null) {
+      obj = isArrayLike(obj) ? obj : _.values(obj);
+      for (var i = 0, length = obj.length; i < length; i++) {
+        value = obj[i];
+        if (value > result) {
+          result = value;
+        }
+      }
+    } else {
+      iteratee = cb(iteratee, context);
+      _.each(obj, function(value, index, list) {
+        computed = iteratee(value, index, list);
+        if (computed > lastComputed || computed === -Infinity && result === -Infinity) {
+          result = value;
+          lastComputed = computed;
+        }
+      });
+    }
+    return result;
+  };
+
+  // Return the minimum element (or element-based computation).
+  _.min = function(obj, iteratee, context) {
+    var result = Infinity, lastComputed = Infinity,
+        value, computed;
+    if (iteratee == null && obj != null) {
+      obj = isArrayLike(obj) ? obj : _.values(obj);
+      for (var i = 0, length = obj.length; i < length; i++) {
+        value = obj[i];
+        if (value < result) {
+          result = value;
+        }
+      }
+    } else {
+      iteratee = cb(iteratee, context);
+      _.each(obj, function(value, index, list) {
+        computed = iteratee(value, index, list);
+        if (computed < lastComputed || computed === Infinity && result === Infinity) {
+          result = value;
+          lastComputed = computed;
+        }
+      });
+    }
+    return result;
+  };
+
+  // Shuffle a collection, using the modern version of the
+  // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle).
+  _.shuffle = function(obj) {
+    var set = isArrayLike(obj) ? obj : _.values(obj);
+    var length = set.length;
+    var shuffled = Array(length);
+    for (var index = 0, rand; index < length; index++) {
+      rand = _.random(0, index);
+      if (rand !== index) shuffled[index] = shuffled[rand];
+      shuffled[rand] = set[index];
+    }
+    return shuffled;
+  };
+
+  // Sample **n** random values from a collection.
+  // If **n** is not specified, returns a single random element.
+  // The internal `guard` argument allows it to work with `map`.
+  _.sample = function(obj, n, guard) {
+    if (n == null || guard) {
+      if (!isArrayLike(obj)) obj = _.values(obj);
+      return obj[_.random(obj.length - 1)];
+    }
+    return _.shuffle(obj).slice(0, Math.max(0, n));
+  };
+
+  // Sort the object's values by a criterion produced by an iteratee.
+  _.sortBy = function(obj, iteratee, context) {
+    iteratee = cb(iteratee, context);
+    return _.pluck(_.map(obj, function(value, index, list) {
+      return {
+        value: value,
+        index: index,
+        criteria: iteratee(value, index, list)
+      };
+    }).sort(function(left, right) {
+      var a = left.criteria;
+      var b = right.criteria;
+      if (a !== b) {
+        if (a > b || a === void 0) return 1;
+        if (a < b || b === void 0) return -1;
+      }
+      return left.index - right.index;
+    }), 'value');
+  };
+
+  // An internal function used for aggregate "group by" operations.
+  var group = function(behavior) {
+    return function(obj, iteratee, context) {
+      var result = {};
+      iteratee = cb(iteratee, context);
+      _.each(obj, function(value, index) {
+        var key = iteratee(value, index, obj);
+        behavior(result, value, key);
+      });
+      return result;
+    };
+  };
+
+  // Groups the object's values by a criterion. Pass either a string attribute
+  // to group by, or a function that returns the criterion.
+  _.groupBy = group(function(result, value, key) {
+    if (_.has(result, key)) result[key].push(value); else result[key] = [value];
+  });
+
+  // Indexes the object's values by a criterion, similar to `groupBy`, but for
+  // when you know that your index values will be unique.
+  _.indexBy = group(function(result, value, key) {
+    result[key] = value;
+  });
+
+  // Counts instances of an object that group by a certain criterion. Pass
+  // either a string attribute to count by, or a function that returns the
+  // criterion.
+  _.countBy = group(function(result, value, key) {
+    if (_.has(result, key)) result[key]++; else result[key] = 1;
+  });
+
+  // Safely create a real, live array from anything iterable.
+  _.toArray = function(obj) {
+    if (!obj) return [];
+    if (_.isArray(obj)) return slice.call(obj);
+    if (isArrayLike(obj)) return _.map(obj, _.identity);
+    return _.values(obj);
+  };
+
+  // Return the number of elements in an object.
+  _.size = function(obj) {
+    if (obj == null) return 0;
+    return isArrayLike(obj) ? obj.length : _.keys(obj).length;
+  };
+
+  // Split a collection into two arrays: one whose elements all satisfy the given
+  // predicate, and one whose elements all do not satisfy the predicate.
+  _.partition = function(obj, predicate, context) {
+    predicate = cb(predicate, context);
+    var pass = [], fail = [];
+    _.each(obj, function(value, key, obj) {
+      (predicate(value, key, obj) ? pass : fail).push(value);
+    });
+    return [pass, fail];
+  };
+
+  // Array Functions
+  // ---------------
+
+  // Get the first element of an array. Passing **n** will return the first N
+  // values in the array. Aliased as `head` and `take`. The **guard** check
+  // allows it to work with `_.map`.
+  _.first = _.head = _.take = function(array, n, guard) {
+    if (array == null) return void 0;
+    if (n == null || guard) return array[0];
+    return _.initial(array, array.length - n);
+  };
+
+  // Returns everything but the last entry of the array. Especially useful on
+  // the arguments object. Passing **n** will return all the values in
+  // the array, excluding the last N.
+  _.initial = function(array, n, guard) {
+    return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));
+  };
+
+  // Get the last element of an array. Passing **n** will return the last N
+  // values in the array.
+  _.last = function(array, n, guard) {
+    if (array == null) return void 0;
+    if (n == null || guard) return array[array.length - 1];
+    return _.rest(array, Math.max(0, array.length - n));
+  };
+
+  // Returns everything but the first entry of the array. Aliased as `tail` and `drop`.
+  // Especially useful on the arguments object. Passing an **n** will return
+  // the rest N values in the array.
+  _.rest = _.tail = _.drop = function(array, n, guard) {
+    return slice.call(array, n == null || guard ? 1 : n);
+  };
+
+  // Trim out all falsy values from an array.
+  _.compact = function(array) {
+    return _.filter(array, _.identity);
+  };
+
+  // Internal implementation of a recursive `flatten` function.
+  var flatten = function(input, shallow, strict, startIndex) {
+    var output = [], idx = 0;
+    for (var i = startIndex || 0, length = getLength(input); i < length; i++) {
+      var value = input[i];
+      if (isArrayLike(value) && (_.isArray(value) || _.isArguments(value))) {
+        //flatten current level of array or arguments object
+        if (!shallow) value = flatten(value, shallow, strict);
+        var j = 0, len = value.length;
+        output.length += len;
+        while (j < len) {
+          output[idx++] = value[j++];
+        }
+      } else if (!strict) {
+        output[idx++] = value;
+      }
+    }
+    return output;
+  };
+
+  // Flatten out an array, either recursively (by default), or just one level.
+  _.flatten = function(array, shallow) {
+    return flatten(array, shallow, false);
+  };
+
+  // Return a version of the array that does not contain the specified value(s).
+  _.without = function(array) {
+    return _.difference(array, slice.call(arguments, 1));
+  };
+
+  // Produce a duplicate-free version of the array. If the array has already
+  // been sorted, you have the option of using a faster algorithm.
+  // Aliased as `unique`.
+  _.uniq = _.unique = function(array, isSorted, iteratee, context) {
+    if (!_.isBoolean(isSorted)) {
+      context = iteratee;
+      iteratee = isSorted;
+      isSorted = false;
+    }
+    if (iteratee != null) iteratee = cb(iteratee, context);
+    var result = [];
+    var seen = [];
+    for (var i = 0, length = getLength(array); i < length; i++) {
+      var value = array[i],
+          computed = iteratee ? iteratee(value, i, array) : value;
+      if (isSorted) {
+        if (!i || seen !== computed) result.push(value);
+        seen = computed;
+      } else if (iteratee) {
+        if (!_.contains(seen, computed)) {
+          seen.push(computed);
+          result.push(value);
+        }
+      } else if (!_.contains(result, value)) {
+        result.push(value);
+      }
+    }
+    return result;
+  };
+
+  // Produce an array that contains the union: each distinct element from all of
+  // the passed-in arrays.
+  _.union = function() {
+    return _.uniq(flatten(arguments, true, true));
+  };
+
+  // Produce an array that contains every item shared between all the
+  // passed-in arrays.
+  _.intersection = function(array) {
+    var result = [];
+    var argsLength = arguments.length;
+    for (var i = 0, length = getLength(array); i < length; i++) {
+      var item = array[i];
+      if (_.contains(result, item)) continue;
+      for (var j = 1; j < argsLength; j++) {
+        if (!_.contains(arguments[j], item)) break;
+      }
+      if (j === argsLength) result.push(item);
+    }
+    return result;
+  };
+
+  // Take the difference between one array and a number of other arrays.
+  // Only the elements present in just the first array will remain.
+  _.difference = function(array) {
+    var rest = flatten(arguments, true, true, 1);
+    return _.filter(array, function(value){
+      return !_.contains(rest, value);
+    });
+  };
+
+  // Zip together multiple lists into a single array -- elements that share
+  // an index go together.
+  _.zip = function() {
+    return _.unzip(arguments);
+  };
+
+  // Complement of _.zip. Unzip accepts an array of arrays and groups
+  // each array's elements on shared indices
+  _.unzip = function(array) {
+    var length = array && _.max(array, getLength).length || 0;
+    var result = Array(length);
+
+    for (var index = 0; index < length; index++) {
+      result[index] = _.pluck(array, index);
+    }
+    return result;
+  };
+
+  // Converts lists into objects. Pass either a single array of `[key, value]`
+  // pairs, or two parallel arrays of the same length -- one of keys, and one of
+  // the corresponding values.
+  _.object = function(list, values) {
+    var result = {};
+    for (var i = 0, length = getLength(list); i < length; i++) {
+      if (values) {
+        result[list[i]] = values[i];
+      } else {
+        result[list[i][0]] = list[i][1];
+      }
+    }
+    return result;
+  };
+
+  // Generator function to create the findIndex and findLastIndex functions
+  function createPredicateIndexFinder(dir) {
+    return function(array, predicate, context) {
+      predicate = cb(predicate, context);
+      var length = getLength(array);
+      var index = dir > 0 ? 0 : length - 1;
+      for (; index >= 0 && index < length; index += dir) {
+        if (predicate(array[index], index, array)) return index;
+      }
+      return -1;
+    };
+  }
+
+  // Returns the first index on an array-like that passes a predicate test
+  _.findIndex = createPredicateIndexFinder(1);
+  _.findLastIndex = createPredicateIndexFinder(-1);
+
+  // Use a comparator function to figure out the smallest index at which
+  // an object should be inserted so as to maintain order. Uses binary search.
+  _.sortedIndex = function(array, obj, iteratee, context) {
+    iteratee = cb(iteratee, context, 1);
+    var value = iteratee(obj);
+    var low = 0, high = getLength(array);
+    while (low < high) {
+      var mid = Math.floor((low + high) / 2);
+      if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;
+    }
+    return low;
+  };
+
+  // Generator function to create the indexOf and lastIndexOf functions
+  function createIndexFinder(dir, predicateFind, sortedIndex) {
+    return function(array, item, idx) {
+      var i = 0, length = getLength(array);
+      if (typeof idx == 'number') {
+        if (dir > 0) {
+            i = idx >= 0 ? idx : Math.max(idx + length, i);
+        } else {
+            length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;
+        }
+      } else if (sortedIndex && idx && length) {
+        idx = sortedIndex(array, item);
+        return array[idx] === item ? idx : -1;
+      }
+      if (item !== item) {
+        idx = predicateFind(slice.call(array, i, length), _.isNaN);
+        return idx >= 0 ? idx + i : -1;
+      }
+      for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {
+        if (array[idx] === item) return idx;
+      }
+      return -1;
+    };
+  }
+
+  // Return the position of the first occurrence of an item in an array,
+  // or -1 if the item is not included in the array.
+  // If the array is large and already in sort order, pass `true`
+  // for **isSorted** to use binary search.
+  _.indexOf = createIndexFinder(1, _.findIndex, _.sortedIndex);
+  _.lastIndexOf = createIndexFinder(-1, _.findLastIndex);
+
+  // Generate an integer Array containing an arithmetic progression. A port of
+  // the native Python `range()` function. See
+  // [the Python documentation](http://docs.python.org/library/functions.html#range).
+  _.range = function(start, stop, step) {
+    if (stop == null) {
+      stop = start || 0;
+      start = 0;
+    }
+    step = step || 1;
+
+    var length = Math.max(Math.ceil((stop - start) / step), 0);
+    var range = Array(length);
+
+    for (var idx = 0; idx < length; idx++, start += step) {
+      range[idx] = start;
+    }
+
+    return range;
+  };
+
+  // Function (ahem) Functions
+  // ------------------
+
+  // Determines whether to execute a function as a constructor
+  // or a normal function with the provided arguments
+  var executeBound = function(sourceFunc, boundFunc, context, callingContext, args) {
+    if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);
+    var self = baseCreate(sourceFunc.prototype);
+    var result = sourceFunc.apply(self, args);
+    if (_.isObject(result)) return result;
+    return self;
+  };
+
+  // Create a function bound to a given object (assigning `this`, and arguments,
+  // optionally). Delegates to **ECMAScript 5**'s native `Function.bind` if
+  // available.
+  _.bind = function(func, context) {
+    if (nativeBind && func.bind === nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));
+    if (!_.isFunction(func)) throw new TypeError('Bind must be called on a function');
+    var args = slice.call(arguments, 2);
+    var bound = function() {
+      return executeBound(func, bound, context, this, args.concat(slice.call(arguments)));
+    };
+    return bound;
+  };
+
+  // Partially apply a function by creating a version that has had some of its
+  // arguments pre-filled, without changing its dynamic `this` context. _ acts
+  // as a placeholder, allowing any combination of arguments to be pre-filled.
+  _.partial = function(func) {
+    var boundArgs = slice.call(arguments, 1);
+    var bound = function() {
+      var position = 0, length = boundArgs.length;
+      var args = Array(length);
+      for (var i = 0; i < length; i++) {
+        args[i] = boundArgs[i] === _ ? arguments[position++] : boundArgs[i];
+      }
+      while (position < arguments.length) args.push(arguments[position++]);
+      return executeBound(func, bound, this, this, args);
+    };
+    return bound;
+  };
+
+  // Bind a number of an object's methods to that object. Remaining arguments
+  // are the method names to be bound. Useful for ensuring that all callbacks
+  // defined on an object belong to it.
+  _.bindAll = function(obj) {
+    var i, length = arguments.length, key;
+    if (length <= 1) throw new Error('bindAll must be passed function names');
+    for (i = 1; i < length; i++) {
+      key = arguments[i];
+      obj[key] = _.bind(obj[key], obj);
+    }
+    return obj;
+  };
+
+  // Memoize an expensive function by storing its results.
+  _.memoize = function(func, hasher) {
+    var memoize = function(key) {
+      var cache = memoize.cache;
+      var address = '' + (hasher ? hasher.apply(this, arguments) : key);
+      if (!_.has(cache, address)) cache[address] = func.apply(this, arguments);
+      return cache[address];
+    };
+    memoize.cache = {};
+    return memoize;
+  };
+
+  // Delays a function for the given number of milliseconds, and then calls
+  // it with the arguments supplied.
+  _.delay = function(func, wait) {
+    var args = slice.call(arguments, 2);
+    return setTimeout(function(){
+      return func.apply(null, args);
+    }, wait);
+  };
+
+  // Defers a function, scheduling it to run after the current call stack has
+  // cleared.
+  _.defer = _.partial(_.delay, _, 1);
+
+  // Returns a function, that, when invoked, will only be triggered at most once
+  // during a given window of time. Normally, the throttled function will run
+  // as much as it can, without ever going more than once per `wait` duration;
+  // but if you'd like to disable the execution on the leading edge, pass
+  // `{leading: false}`. To disable execution on the trailing edge, ditto.
+  _.throttle = function(func, wait, options) {
+    var context, args, result;
+    var timeout = null;
+    var previous = 0;
+    if (!options) options = {};
+    var later = function() {
+      previous = options.leading === false ? 0 : _.now();
+      timeout = null;
+      result = func.apply(context, args);
+      if (!timeout) context = args = null;
+    };
+    return function() {
+      var now = _.now();
+      if (!previous && options.leading === false) previous = now;
+      var remaining = wait - (now - previous);
+      context = this;
+      args = arguments;
+      if (remaining <= 0 || remaining > wait) {
+        if (timeout) {
+          clearTimeout(timeout);
+          timeout = null;
+        }
+        previous = now;
+        result = func.apply(context, args);
+        if (!timeout) context = args = null;
+      } else if (!timeout && options.trailing !== false) {
+        timeout = setTimeout(later, remaining);
+      }
+      return result;
+    };
+  };
+
+  // Returns a function, that, as long as it continues to be invoked, will not
+  // be triggered. The function will be called after it stops being called for
+  // N milliseconds. If `immediate` is passed, trigger the function on the
+  // leading edge, instead of the trailing.
+  _.debounce = function(func, wait, immediate) {
+    var timeout, args, context, timestamp, result;
+
+    var later = function() {
+      var last = _.now() - timestamp;
+
+      if (last < wait && last >= 0) {
+        timeout = setTimeout(later, wait - last);
+      } else {
+        timeout = null;
+        if (!immediate) {
+          result = func.apply(context, args);
+          if (!timeout) context = args = null;
+        }
+      }
+    };
+
+    return function() {
+      context = this;
+      args = arguments;
+      timestamp = _.now();
+      var callNow = immediate && !timeout;
+      if (!timeout) timeout = setTimeout(later, wait);
+      if (callNow) {
+        result = func.apply(context, args);
+        context = args = null;
+      }
+
+      return result;
+    };
+  };
+
+  // Returns the first function passed as an argument to the second,
+  // allowing you to adjust arguments, run code before and after, and
+  // conditionally execute the original function.
+  _.wrap = function(func, wrapper) {
+    return _.partial(wrapper, func);
+  };
+
+  // Returns a negated version of the passed-in predicate.
+  _.negate = function(predicate) {
+    return function() {
+      return !predicate.apply(this, arguments);
+    };
+  };
+
+  // Returns a function that is the composition of a list of functions, each
+  // consuming the return value of the function that follows.
+  _.compose = function() {
+    var args = arguments;
+    var start = args.length - 1;
+    return function() {
+      var i = start;
+      var result = args[start].apply(this, arguments);
+      while (i--) result = args[i].call(this, result);
+      return result;
+    };
+  };
+
+  // Returns a function that will only be executed on and after the Nth call.
+  _.after = function(times, func) {
+    return function() {
+      if (--times < 1) {
+        return func.apply(this, arguments);
+      }
+    };
+  };
+
+  // Returns a function that will only be executed up to (but not including) the Nth call.
+  _.before = function(times, func) {
+    var memo;
+    return function() {
+      if (--times > 0) {
+        memo = func.apply(this, arguments);
+      }
+      if (times <= 1) func = null;
+      return memo;
+    };
+  };
+
+  // Returns a function that will be executed at most one time, no matter how
+  // often you call it. Useful for lazy initialization.
+  _.once = _.partial(_.before, 2);
+
+  // Object Functions
+  // ----------------
+
+  // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.
+  var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');
+  var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',
+                      'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];
+
+  function collectNonEnumProps(obj, keys) {
+    var nonEnumIdx = nonEnumerableProps.length;
+    var constructor = obj.constructor;
+    var proto = (_.isFunction(constructor) && constructor.prototype) || ObjProto;
+
+    // Constructor is a special case.
+    var prop = 'constructor';
+    if (_.has(obj, prop) && !_.contains(keys, prop)) keys.push(prop);
+
+    while (nonEnumIdx--) {
+      prop = nonEnumerableProps[nonEnumIdx];
+      if (prop in obj && obj[prop] !== proto[prop] && !_.contains(keys, prop)) {
+        keys.push(prop);
+      }
+    }
+  }
+
+  // Retrieve the names of an object's own properties.
+  // Delegates to **ECMAScript 5**'s native `Object.keys`
+  _.keys = function(obj) {
+    if (!_.isObject(obj)) return [];
+    if (nativeKeys) return nativeKeys(obj);
+    var keys = [];
+    for (var key in obj) if (_.has(obj, key)) keys.push(key);
+    // Ahem, IE < 9.
+    if (hasEnumBug) collectNonEnumProps(obj, keys);
+    return keys;
+  };
+
+  // Retrieve all the property names of an object.
+  _.allKeys = function(obj) {
+    if (!_.isObject(obj)) return [];
+    var keys = [];
+    for (var key in obj) keys.push(key);
+    // Ahem, IE < 9.
+    if (hasEnumBug) collectNonEnumProps(obj, keys);
+    return keys;
+  };
+
+  // Retrieve the values of an object's properties.
+  _.values = function(obj) {
+    var keys = _.keys(obj);
+    var length = keys.length;
+    var values = Array(length);
+    for (var i = 0; i < length; i++) {
+      values[i] = obj[keys[i]];
+    }
+    return values;
+  };
+
+  // Returns the results of applying the iteratee to each element of the object
+  // In contrast to _.map it returns an object
+  _.mapObject = function(obj, iteratee, context) {
+    iteratee = cb(iteratee, context);
+    var keys =  _.keys(obj),
+          length = keys.length,
+          results = {},
+          currentKey;
+      for (var index = 0; index < length; index++) {
+        currentKey = keys[index];
+        results[currentKey] = iteratee(obj[currentKey], currentKey, obj);
+      }
+      return results;
+  };
+
+  // Convert an object into a list of `[key, value]` pairs.
+  _.pairs = function(obj) {
+    var keys = _.keys(obj);
+    var length = keys.length;
+    var pairs = Array(length);
+    for (var i = 0; i < length; i++) {
+      pairs[i] = [keys[i], obj[keys[i]]];
+    }
+    return pairs;
+  };
+
+  // Invert the keys and values of an object. The values must be serializable.
+  _.invert = function(obj) {
+    var result = {};
+    var keys = _.keys(obj);
+    for (var i = 0, length = keys.length; i < length; i++) {
+      result[obj[keys[i]]] = keys[i];
+    }
+    return result;
+  };
+
+  // Return a sorted list of the function names available on the object.
+  // Aliased as `methods`
+  _.functions = _.methods = function(obj) {
+    var names = [];
+    for (var key in obj) {
+      if (_.isFunction(obj[key])) names.push(key);
+    }
+    return names.sort();
+  };
+
+  // Extend a given object with all the properties in passed-in object(s).
+  _.extend = createAssigner(_.allKeys);
+
+  // Assigns a given object with all the own properties in the passed-in object(s)
+  // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)
+  _.extendOwn = _.assign = createAssigner(_.keys);
+
+  // Returns the first key on an object that passes a predicate test
+  _.findKey = function(obj, predicate, context) {
+    predicate = cb(predicate, context);
+    var keys = _.keys(obj), key;
+    for (var i = 0, length = keys.length; i < length; i++) {
+      key = keys[i];
+      if (predicate(obj[key], key, obj)) return key;
+    }
+  };
+
+  // Return a copy of the object only containing the whitelisted properties.
+  _.pick = function(object, oiteratee, context) {
+    var result = {}, obj = object, iteratee, keys;
+    if (obj == null) return result;
+    if (_.isFunction(oiteratee)) {
+      keys = _.allKeys(obj);
+      iteratee = optimizeCb(oiteratee, context);
+    } else {
+      keys = flatten(arguments, false, false, 1);
+      iteratee = function(value, key, obj) { return key in obj; };
+      obj = Object(obj);
+    }
+    for (var i = 0, length = keys.length; i < length; i++) {
+      var key = keys[i];
+      var value = obj[key];
+      if (iteratee(value, key, obj)) result[key] = value;
+    }
+    return result;
+  };
+
+   // Return a copy of the object without the blacklisted properties.
+  _.omit = function(obj, iteratee, context) {
+    if (_.isFunction(iteratee)) {
+      iteratee = _.negate(iteratee);
+    } else {
+      var keys = _.map(flatten(arguments, false, false, 1), String);
+      iteratee = function(value, key) {
+        return !_.contains(keys, key);
+      };
+    }
+    return _.pick(obj, iteratee, context);
+  };
+
+  // Fill in a given object with default properties.
+  _.defaults = createAssigner(_.allKeys, true);
+
+  // Creates an object that inherits from the given prototype object.
+  // If additional properties are provided then they will be added to the
+  // created object.
+  _.create = function(prototype, props) {
+    var result = baseCreate(prototype);
+    if (props) _.extendOwn(result, props);
+    return result;
+  };
+
+  // Create a (shallow-cloned) duplicate of an object.
+  _.clone = function(obj) {
+    if (!_.isObject(obj)) return obj;
+    return _.isArray(obj) ? obj.slice() : _.extend({}, obj);
+  };
+
+  // Invokes interceptor with the obj, and then returns obj.
+  // The primary purpose of this method is to "tap into" a method chain, in
+  // order to perform operations on intermediate results within the chain.
+  _.tap = function(obj, interceptor) {
+    interceptor(obj);
+    return obj;
+  };
+
+  // Returns whether an object has a given set of `key:value` pairs.
+  _.isMatch = function(object, attrs) {
+    var keys = _.keys(attrs), length = keys.length;
+    if (object == null) return !length;
+    var obj = Object(object);
+    for (var i = 0; i < length; i++) {
+      var key = keys[i];
+      if (attrs[key] !== obj[key] || !(key in obj)) return false;
+    }
+    return true;
+  };
+
+
+  // Internal recursive comparison function for `isEqual`.
+  var eq = function(a, b, aStack, bStack) {
+    // Identical objects are equal. `0 === -0`, but they aren't identical.
+    // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal).
+    if (a === b) return a !== 0 || 1 / a === 1 / b;
+    // A strict comparison is necessary because `null == undefined`.
+    if (a == null || b == null) return a === b;
+    // Unwrap any wrapped objects.
+    if (a instanceof _) a = a._wrapped;
+    if (b instanceof _) b = b._wrapped;
+    // Compare `[[Class]]` names.
+    var className = toString.call(a);
+    if (className !== toString.call(b)) return false;
+    switch (className) {
+      // Strings, numbers, regular expressions, dates, and booleans are compared by value.
+      case '[object RegExp]':
+      // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')
+      case '[object String]':
+        // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
+        // equivalent to `new String("5")`.
+        return '' + a === '' + b;
+      case '[object Number]':
+        // `NaN`s are equivalent, but non-reflexive.
+        // Object(NaN) is equivalent to NaN
+        if (+a !== +a) return +b !== +b;
+        // An `egal` comparison is performed for other numeric values.
+        return +a === 0 ? 1 / +a === 1 / b : +a === +b;
+      case '[object Date]':
+      case '[object Boolean]':
+        // Coerce dates and booleans to numeric primitive values. Dates are compared by their
+        // millisecond representations. Note that invalid dates with millisecond representations
+        // of `NaN` are not equivalent.
+        return +a === +b;
+    }
+
+    var areArrays = className === '[object Array]';
+    if (!areArrays) {
+      if (typeof a != 'object' || typeof b != 'object') return false;
+
+      // Objects with different constructors are not equivalent, but `Object`s or `Array`s
+      // from different frames are.
+      var aCtor = a.constructor, bCtor = b.constructor;
+      if (aCtor !== bCtor && !(_.isFunction(aCtor) && aCtor instanceof aCtor &&
+                               _.isFunction(bCtor) && bCtor instanceof bCtor)
+                          && ('constructor' in a && 'constructor' in b)) {
+        return false;
+      }
+    }
+    // Assume equality for cyclic structures. The algorithm for detecting cyclic
+    // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.
+
+    // Initializing stack of traversed objects.
+    // It's done here since we only need them for objects and arrays comparison.
+    aStack = aStack || [];
+    bStack = bStack || [];
+    var length = aStack.length;
+    while (length--) {
+      // Linear search. Performance is inversely proportional to the number of
+      // unique nested structures.
+      if (aStack[length] === a) return bStack[length] === b;
+    }
+
+    // Add the first object to the stack of traversed objects.
+    aStack.push(a);
+    bStack.push(b);
+
+    // Recursively compare objects and arrays.
+    if (areArrays) {
+      // Compare array lengths to determine if a deep comparison is necessary.
+      length = a.length;
+      if (length !== b.length) return false;
+      // Deep compare the contents, ignoring non-numeric properties.
+      while (length--) {
+        if (!eq(a[length], b[length], aStack, bStack)) return false;
+      }
+    } else {
+      // Deep compare objects.
+      var keys = _.keys(a), key;
+      length = keys.length;
+      // Ensure that both objects contain the same number of properties before comparing deep equality.
+      if (_.keys(b).length !== length) return false;
+      while (length--) {
+        // Deep compare each member
+        key = keys[length];
+        if (!(_.has(b, key) && eq(a[key], b[key], aStack, bStack))) return false;
+      }
+    }
+    // Remove the first object from the stack of traversed objects.
+    aStack.pop();
+    bStack.pop();
+    return true;
+  };
+
+  // Perform a deep comparison to check if two objects are equal.
+  _.isEqual = function(a, b) {
+    return eq(a, b);
+  };
+
+  // Is a given array, string, or object empty?
+  // An "empty" object has no enumerable own-properties.
+  _.isEmpty = function(obj) {
+    if (obj == null) return true;
+    if (isArrayLike(obj) && (_.isArray(obj) || _.isString(obj) || _.isArguments(obj))) return obj.length === 0;
+    return _.keys(obj).length === 0;
+  };
+
+  // Is a given value a DOM element?
+  _.isElement = function(obj) {
+    return !!(obj && obj.nodeType === 1);
+  };
+
+  // Is a given value an array?
+  // Delegates to ECMA5's native Array.isArray
+  _.isArray = nativeIsArray || function(obj) {
+    return toString.call(obj) === '[object Array]';
+  };
+
+  // Is a given variable an object?
+  _.isObject = function(obj) {
+    var type = typeof obj;
+    return type === 'function' || type === 'object' && !!obj;
+  };
+
+  // Add some isType methods: isArguments, isFunction, isString, isNumber, isDate, isRegExp, isError.
+  _.each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp', 'Error'], function(name) {
+    _['is' + name] = function(obj) {
+      return toString.call(obj) === '[object ' + name + ']';
+    };
+  });
+
+  // Define a fallback version of the method in browsers (ahem, IE < 9), where
+  // there isn't any inspectable "Arguments" type.
+  if (!_.isArguments(arguments)) {
+    _.isArguments = function(obj) {
+      return _.has(obj, 'callee');
+    };
+  }
+
+  // Optimize `isFunction` if appropriate. Work around some typeof bugs in old v8,
+  // IE 11 (#1621), and in Safari 8 (#1929).
+  if (typeof /./ != 'function' && typeof Int8Array != 'object') {
+    _.isFunction = function(obj) {
+      return typeof obj == 'function' || false;
+    };
+  }
+
+  // Is a given object a finite number?
+  _.isFinite = function(obj) {
+    return isFinite(obj) && !isNaN(parseFloat(obj));
+  };
+
+  // Is the given value `NaN`? (NaN is the only number which does not equal itself).
+  _.isNaN = function(obj) {
+    return _.isNumber(obj) && obj !== +obj;
+  };
+
+  // Is a given value a boolean?
+  _.isBoolean = function(obj) {
+    return obj === true || obj === false || toString.call(obj) === '[object Boolean]';
+  };
+
+  // Is a given value equal to null?
+  _.isNull = function(obj) {
+    return obj === null;
+  };
+
+  // Is a given variable undefined?
+  _.isUndefined = function(obj) {
+    return obj === void 0;
+  };
+
+  // Shortcut function for checking if an object has a given property directly
+  // on itself (in other words, not on a prototype).
+  _.has = function(obj, key) {
+    return obj != null && hasOwnProperty.call(obj, key);
+  };
+
+  // Utility Functions
+  // -----------------
+
+  // Run Underscore.js in *noConflict* mode, returning the `_` variable to its
+  // previous owner. Returns a reference to the Underscore object.
+  _.noConflict = function() {
+    root._ = previousUnderscore;
+    return this;
+  };
+
+  // Keep the identity function around for default iteratees.
+  _.identity = function(value) {
+    return value;
+  };
+
+  // Predicate-generating functions. Often useful outside of Underscore.
+  _.constant = function(value) {
+    return function() {
+      return value;
+    };
+  };
+
+  _.noop = function(){};
+
+  _.property = property;
+
+  // Generates a function for a given object that returns a given property.
+  _.propertyOf = function(obj) {
+    return obj == null ? function(){} : function(key) {
+      return obj[key];
+    };
+  };
+
+  // Returns a predicate for checking whether an object has a given set of
+  // `key:value` pairs.
+  _.matcher = _.matches = function(attrs) {
+    attrs = _.extendOwn({}, attrs);
+    return function(obj) {
+      return _.isMatch(obj, attrs);
+    };
+  };
+
+  // Run a function **n** times.
+  _.times = function(n, iteratee, context) {
+    var accum = Array(Math.max(0, n));
+    iteratee = optimizeCb(iteratee, context, 1);
+    for (var i = 0; i < n; i++) accum[i] = iteratee(i);
+    return accum;
+  };
+
+  // Return a random integer between min and max (inclusive).
+  _.random = function(min, max) {
+    if (max == null) {
+      max = min;
+      min = 0;
+    }
+    return min + Math.floor(Math.random() * (max - min + 1));
+  };
+
+  // A (possibly faster) way to get the current timestamp as an integer.
+  _.now = Date.now || function() {
+    return new Date().getTime();
+  };
+
+   // List of HTML entities for escaping.
+  var escapeMap = {
+    '&': '&amp;',
+    '<': '&lt;',
+    '>': '&gt;',
+    '"': '&quot;',
+    "'": '&#x27;',
+    '`': '&#x60;'
+  };
+  var unescapeMap = _.invert(escapeMap);
+
+  // Functions for escaping and unescaping strings to/from HTML interpolation.
+  var createEscaper = function(map) {
+    var escaper = function(match) {
+      return map[match];
+    };
+    // Regexes for identifying a key that needs to be escaped
+    var source = '(?:' + _.keys(map).join('|') + ')';
+    var testRegexp = RegExp(source);
+    var replaceRegexp = RegExp(source, 'g');
+    return function(string) {
+      string = string == null ? '' : '' + string;
+      return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;
+    };
+  };
+  _.escape = createEscaper(escapeMap);
+  _.unescape = createEscaper(unescapeMap);
+
+  // If the value of the named `property` is a function then invoke it with the
+  // `object` as context; otherwise, return it.
+  _.result = function(object, property, fallback) {
+    var value = object == null ? void 0 : object[property];
+    if (value === void 0) {
+      value = fallback;
+    }
+    return _.isFunction(value) ? value.call(object) : value;
+  };
+
+  // Generate a unique integer id (unique within the entire client session).
+  // Useful for temporary DOM ids.
+  var idCounter = 0;
+  _.uniqueId = function(prefix) {
+    var id = ++idCounter + '';
+    return prefix ? prefix + id : id;
+  };
+
+  // By default, Underscore uses ERB-style template delimiters, change the
+  // following template settings to use alternative delimiters.
+  _.templateSettings = {
+    evaluate    : /<%([\s\S]+?)%>/g,
+    interpolate : /<%=([\s\S]+?)%>/g,
+    escape      : /<%-([\s\S]+?)%>/g
+  };
+
+  // When customizing `templateSettings`, if you don't want to define an
+  // interpolation, evaluation or escaping regex, we need one that is
+  // guaranteed not to match.
+  var noMatch = /(.)^/;
+
+  // Certain characters need to be escaped so that they can be put into a
+  // string literal.
+  var escapes = {
+    "'":      "'",
+    '\\':     '\\',
+    '\r':     'r',
+    '\n':     'n',
+    '\u2028': 'u2028',
+    '\u2029': 'u2029'
+  };
+
+  var escaper = /\\|'|\r|\n|\u2028|\u2029/g;
+
+  var escapeChar = function(match) {
+    return '\\' + escapes[match];
+  };
+
+  // JavaScript micro-templating, similar to John Resig's implementation.
+  // Underscore templating handles arbitrary delimiters, preserves whitespace,
+  // and correctly escapes quotes within interpolated code.
+  // NB: `oldSettings` only exists for backwards compatibility.
+  _.template = function(text, settings, oldSettings) {
+    if (!settings && oldSettings) settings = oldSettings;
+    settings = _.defaults({}, settings, _.templateSettings);
+
+    // Combine delimiters into one regular expression via alternation.
+    var matcher = RegExp([
+      (settings.escape || noMatch).source,
+      (settings.interpolate || noMatch).source,
+      (settings.evaluate || noMatch).source
+    ].join('|') + '|$', 'g');
+
+    // Compile the template source, escaping string literals appropriately.
+    var index = 0;
+    var source = "__p+='";
+    text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {
+      source += text.slice(index, offset).replace(escaper, escapeChar);
+      index = offset + match.length;
+
+      if (escape) {
+        source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'";
+      } else if (interpolate) {
+        source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'";
+      } else if (evaluate) {
+        source += "';\n" + evaluate + "\n__p+='";
+      }
+
+      // Adobe VMs need the match returned to produce the correct offest.
+      return match;
+    });
+    source += "';\n";
+
+    // If a variable is not specified, place data values in local scope.
+    if (!settings.variable) source = 'with(obj||{}){\n' + source + '}\n';
+
+    source = "var __t,__p='',__j=Array.prototype.join," +
+      "print=function(){__p+=__j.call(arguments,'');};\n" +
+      source + 'return __p;\n';
+
+    try {
+      var render = new Function(settings.variable || 'obj', '_', source);
+    } catch (e) {
+      e.source = source;
+      throw e;
+    }
+
+    var template = function(data) {
+      return render.call(this, data, _);
+    };
+
+    // Provide the compiled source as a convenience for precompilation.
+    var argument = settings.variable || 'obj';
+    template.source = 'function(' + argument + '){\n' + source + '}';
+
+    return template;
+  };
+
+  // Add a "chain" function. Start chaining a wrapped Underscore object.
+  _.chain = function(obj) {
+    var instance = _(obj);
+    instance._chain = true;
+    return instance;
+  };
+
+  // OOP
+  // ---------------
+  // If Underscore is called as a function, it returns a wrapped object that
+  // can be used OO-style. This wrapper holds altered versions of all the
+  // underscore functions. Wrapped objects may be chained.
+
+  // Helper function to continue chaining intermediate results.
+  var result = function(instance, obj) {
+    return instance._chain ? _(obj).chain() : obj;
+  };
+
+  // Add your own custom functions to the Underscore object.
+  _.mixin = function(obj) {
+    _.each(_.functions(obj), function(name) {
+      var func = _[name] = obj[name];
+      _.prototype[name] = function() {
+        var args = [this._wrapped];
+        push.apply(args, arguments);
+        return result(this, func.apply(_, args));
+      };
+    });
+  };
+
+  // Add all of the Underscore functions to the wrapper object.
+  _.mixin(_);
+
+  // Add all mutator Array functions to the wrapper.
+  _.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
+    var method = ArrayProto[name];
+    _.prototype[name] = function() {
+      var obj = this._wrapped;
+      method.apply(obj, arguments);
+      if ((name === 'shift' || name === 'splice') && obj.length === 0) delete obj[0];
+      return result(this, obj);
+    };
+  });
+
+  // Add all accessor Array functions to the wrapper.
+  _.each(['concat', 'join', 'slice'], function(name) {
+    var method = ArrayProto[name];
+    _.prototype[name] = function() {
+      return result(this, method.apply(this._wrapped, arguments));
+    };
+  });
+
+  // Extracts the result from a wrapped and chained object.
+  _.prototype.value = function() {
+    return this._wrapped;
+  };
+
+  // Provide unwrapping proxy for some methods used in engine operations
+  // such as arithmetic and JSON stringification.
+  _.prototype.valueOf = _.prototype.toJSON = _.prototype.value;
+
+  _.prototype.toString = function() {
+    return '' + this._wrapped;
+  };
+
+  // AMD registration happens at the end for compatibility with AMD loaders
+  // that may not enforce next-turn semantics on modules. Even though general
+  // practice for AMD registration is to be anonymous, underscore registers
+  // as a named module because, like jQuery, it is a base library that is
+  // popular enough to be bundled in a third party lib, but not be part of
+  // an AMD load request. Those cases could generate an error when an
+  // anonymous define() is called outside of a loader request.
+  if (typeof define === 'function' && define.amd) {
+    define('underscore', [], function() {
+      return _;
+    });
+  }
+}.call(this));
diff --git a/wrt/wrt_support/sample/launcher/css/desktop.css b/wrt/wrt_support/sample/launcher/css/desktop.css
new file mode 100644 (file)
index 0000000..9f472e9
--- /dev/null
@@ -0,0 +1,528 @@
+/* `Basic HTML
+----------------------------------------------------------------------------------------------------*/
+
+* {
+  cursor: default;
+}
+
+html,
+body {
+  overflow: hidden;
+}
+
+body {
+  background: #222;
+  font: 12px/1 'Lucida Grande', Arial, 'Liberation Sans', FreeSans, sans-serif;
+}
+
+a {
+  text-decoration: none;
+}
+
+li {
+  list-style: none;
+}
+
+/* `Misc
+----------------------------------------------------------------------------------------------------*/
+
+.abs {
+  position: absolute !important;
+  top: auto;
+  left: auto;
+  right: auto;
+  bottom: auto;
+}
+
+.align_center {
+  text-align: center;
+}
+
+.align_right {
+  text-align: right;
+}
+
+.float_left {
+  float: left;
+}
+
+.float_right {
+  float: right;
+}
+
+.ui-resizable-se {
+  background: url(../images/gui/window_corner.gif) no-repeat right bottom;
+  font-size: 0;
+  overflow: hidden;
+  width: 15px;
+  height: 15px;
+  right: 0;
+  bottom: 0;
+}
+
+div.ui-resizable-handle {
+  display: none !important;
+  visibility: hidden !important;
+}
+
+/* `Icons
+----------------------------------------------------------------------------------------------------*/
+
+.icon {
+  background: url(../images/gui/trans_white.png) no-repeat -99999px -99999px;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 1.3;
+  padding: 6px 1px 6px;
+  text-align: center;
+  text-shadow: #000 0 1px 2px;
+  width: 80px;
+}
+
+.icon.active {
+  background: url(../images/gui/trans_black.png);
+}
+
+.icon img {
+  background: url(../images/gui/trans_black.png) no-repeat -99999px -99999px;
+  display: block;
+  margin: 0 auto 5px;
+  width: 32px;
+  height: 32px;
+}
+
+.icon:hover,
+.icon.ui-draggable-dragging {
+  background-position: 0 0;
+  background-repeat: repeat;
+  border: 1px solid #fff;
+  padding: 5px 0 5px;
+}
+
+.icon.ui-draggable-dragging {
+  z-index: 20;
+}
+
+/* `Windows
+----------------------------------------------------------------------------------------------------*/
+
+.window {
+  background: #fff;
+  border: 1px solid #000;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #000;
+  display: none;
+  width: 700px;
+  height: 300px;
+  top: 30px;
+  left: 120px;
+  z-index: 2;
+}
+
+.window.window_stack,
+.window.ui-draggable-dragging {
+  z-index: 10;
+}
+
+.window.ui-draggable-dragging {
+  opacity: 0.5;
+}
+
+.window.ui-draggable-dragging .window_content,
+.window.ui-draggable-dragging .window_bottom {
+  display: none;
+}
+
+.window_full.ui-draggable-dragging {
+  opacity: 1;
+}
+
+.window_full.ui-draggable-dragging .window_content,
+.window_full.ui-draggable-dragging .window_bottom {
+  display: block;
+}
+
+.window_full {
+  border: 0;
+  border-radius: 0;
+  -moz-border-radius: 0;
+  -webkit-border-radius: 0;
+  -webkit-background-clip: padding-box;
+  width: 100%;
+  height: 100%;
+}
+
+.window_full .ui-resizable-se {
+  display: none;
+}
+
+.window_top {
+  background: #333 url(../images/gui/bar_bottom.png) repeat-x;
+  border-top-left-radius: 5px;
+  border-top-right-radius: 5px;
+  -moz-border-radius-topleft: 5px;
+  -moz-border-radius-topright: 5px;
+  -webkit-border-top-left-radius: 5px;
+  -webkit-border-top-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  font-weight: bold;
+  overflow: hidden;
+  line-height: 30px;
+  padding: 0 10px;
+  text-shadow: #000 0 1px 1px;
+  height: 30px;
+}
+
+.window_top img {
+  float: left;
+  margin: 6px 5px 0 0;
+}
+
+.window_bottom {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-top: 1px solid #bbb;
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 20px;
+  overflow: hidden;
+  text-align: center;
+  text-shadow: #fff 0 1px 1px;
+  height: 20px;
+  left: 1px;
+  right: 1px;
+  bottom: 1px;
+}
+
+.window_min,
+.window_resize,
+.window_close {
+  background: url(../images/gui/window_buttons.gif) no-repeat;
+  border-radius: 2px;
+  -moz-border-radius: 2px;
+  -webkit-border-radius: 2px;
+  -webkit-background-clip: padding-box;
+  float: left;
+  font-size: 0;
+  margin: 6px 0 0 5px;
+  width: 28px;
+  height: 15px;
+}
+
+.window_min:hover {
+  background-position: 0 -15px;
+}
+
+.window_resize {
+  background-position: -28px 0;
+}
+
+.window_resize:hover {
+  background-position: -28px -15px;
+}
+
+.window_close {
+  background-position: -56px 0;
+}
+
+.window_close:hover {
+  background-position: -56px -15px;
+  box-shadow: #f00 0 0 10px;
+  -moz-box-shadow: #f00 0 0 10px;
+  -webkit-box-shadow: #f00 0 0 10px;
+}
+
+.window_min:hover,
+.window_resize:hover {
+  box-shadow: #09f 0 0 10px;
+  -moz-box-shadow: #09f 0 0 10px;
+  -webkit-box-shadow: #09f 0 0 10px;
+}
+
+.window_inner {
+  padding: 1px;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+}
+
+.window_content {
+  background: url(../images/gui/window_content.gif) repeat-y;
+  line-height: 1.5;
+  overflow: auto;
+  top: 32px;
+  left: 1px;
+  right: 1px;
+  bottom: 23px;
+}
+
+.window_aside {
+  float: left;
+  font-size: 11px;
+  padding: 10px 12px 10px 10px;
+  width: 150px;
+}
+
+.window_main {
+  background: #fff;
+  margin: 0 0 0 173px;
+  min-height: 100%;
+}
+
+.window_full .window_top,
+.window_full .window_bottom {
+  border-radius: 0;
+  -moz-border-radius: 0;
+  -webkit-border-radius: 0;
+  -webkit-background-clip: padding-box;
+}
+
+.window_full .window_inner {
+  bottom: -1px;
+}
+
+/* `Table >> Data
+----------------------------------------------------------------------------------------------------*/
+
+table.data {
+  width: 100%;
+  white-space: nowrap;
+}
+
+table.data th,
+table.data td {
+  padding: 5px 10px;
+  vertical-align: middle;
+}
+
+table.data th {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-left: 1px solid #fff;
+  border-bottom: 1px solid #fff;
+  font-weight: bold;
+  text-shadow: #fff 0 1px 1px;
+  white-space: nowrap;
+}
+
+table.data th:first-child {
+  border-left: 0;
+}
+
+table.data img {
+  display: block;
+}
+
+table.data tbody tr:nth-child(even) td {
+  background: #def;
+}
+
+table.data tbody tr.active td {
+  background: #06c url(../images/gui/bar_top_link.png) repeat-x;
+  color: #fff;
+}
+
+th.shrink {
+  width: 1%;
+}
+
+/* `Bar >> Top + Bottom
+----------------------------------------------------------------------------------------------------*/
+
+#bar_top,
+#bar_bottom {
+  font-weight: bold;
+  padding: 0 10px;
+  left: 0;
+  right: 0;
+}
+
+#bar_top {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-bottom: 1px solid #333;
+  color: #999;
+  line-height: 25px;
+  padding-right: 20px;
+  text-shadow: #fff 0 1px 1px;
+  height: 25px;
+  top: 0;
+}
+
+#bar_bottom {
+  background: #333 url(../images/gui/bar_bottom.png) repeat-x;
+  border-top: 1px solid #fff;
+  color: #fff;
+  font-size: 13px;
+  line-height: 30px;
+  opacity: 0.8;
+  overflow: hidden;
+  padding-top: 5px;
+  padding-bottom: 5px;
+  text-shadow: #000 0 1px 1px;
+  height: 30px;
+  bottom: 0;
+}
+
+/* `Bar >> Links
+----------------------------------------------------------------------------------------------------*/
+
+#bar_top li,
+#bar_bottom li {
+  float: left;
+}
+
+#bar_top li a,
+#bar_bottom li a {
+  display: block;
+  padding: 0 10px;
+}
+
+#bar_top li a {
+  background-image: url(../images/gui/bar_top_link.png);
+  background-repeat: no-repeat;
+  background-position: -99999px -99999px;
+  color: #000;
+  overflow: hidden;
+  height: 25px;
+  min-height: 1px;
+}
+
+#bar_top a.active {
+  background-color: #06c;
+  background-position: 0 0;
+  background-repeat: repeat-x;
+  color: #fff;
+  text-shadow: none;
+}
+
+#bar_top ul.menu {
+  background: #eee;
+  border: 1px solid #333;
+  border-top-width: 0;
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  display: none;
+  font-weight: normal;
+  margin: 1px 0 0 -1px;
+  padding: 1px 1px 0;
+  position: absolute;
+  min-width: 200px;
+  z-index: 30;
+}
+
+#bar_top ul.menu li {
+  float: none;
+}
+
+#bar_top ul.menu a {
+  background: #fff;
+  border-bottom: 1px solid #eee;
+  min-width: 180px;
+}
+
+#bar_top ul.menu li:last-child a {
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+}
+
+#bar_top ul.menu a:hover {
+  background: #06c url(../images/gui/bar_top_link.png) repeat-x;
+  color: #fff;
+  text-shadow: none;
+}
+
+#bar_bottom li {
+  display: none;
+  margin: 0 0 10px 5px;
+  min-width: 150px;
+}
+
+#bar_bottom li a {
+  background: #333;
+}
+
+#bar_bottom a {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  overflow: hidden;
+  padding: 0 10px;
+  height: 30px;
+}
+
+#bar_bottom a:hover {
+  background: #000;
+}
+
+#bar_bottom a:active {
+  background: #c60;
+  border: 1px solid #fff;
+  padding: 0 9px;
+}
+
+#bar_bottom li a img {
+  float: left;
+  margin: 4px 5px 0 -5px;
+}
+
+#bar_bottom .float_left img,
+#bar_bottom .float_right img {
+  display: block;
+  padding: 4px 0 0;
+}
+
+/* `Wrapper + Wallpaper + Desktop
+----------------------------------------------------------------------------------------------------*/
+
+#wallpaper {
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  width: 100%;
+  height: 100%;
+}
+
+#desktop {
+  overflow: hidden;
+  top: 26px;
+  left: 0;
+  right: 0;
+  bottom: 41px;
+}
+
+#wrapper {
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  min-width: 700px;
+  min-height: 500px;
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/css/launcher.css b/wrt/wrt_support/sample/launcher/css/launcher.css
new file mode 100644 (file)
index 0000000..9f472e9
--- /dev/null
@@ -0,0 +1,528 @@
+/* `Basic HTML
+----------------------------------------------------------------------------------------------------*/
+
+* {
+  cursor: default;
+}
+
+html,
+body {
+  overflow: hidden;
+}
+
+body {
+  background: #222;
+  font: 12px/1 'Lucida Grande', Arial, 'Liberation Sans', FreeSans, sans-serif;
+}
+
+a {
+  text-decoration: none;
+}
+
+li {
+  list-style: none;
+}
+
+/* `Misc
+----------------------------------------------------------------------------------------------------*/
+
+.abs {
+  position: absolute !important;
+  top: auto;
+  left: auto;
+  right: auto;
+  bottom: auto;
+}
+
+.align_center {
+  text-align: center;
+}
+
+.align_right {
+  text-align: right;
+}
+
+.float_left {
+  float: left;
+}
+
+.float_right {
+  float: right;
+}
+
+.ui-resizable-se {
+  background: url(../images/gui/window_corner.gif) no-repeat right bottom;
+  font-size: 0;
+  overflow: hidden;
+  width: 15px;
+  height: 15px;
+  right: 0;
+  bottom: 0;
+}
+
+div.ui-resizable-handle {
+  display: none !important;
+  visibility: hidden !important;
+}
+
+/* `Icons
+----------------------------------------------------------------------------------------------------*/
+
+.icon {
+  background: url(../images/gui/trans_white.png) no-repeat -99999px -99999px;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 1.3;
+  padding: 6px 1px 6px;
+  text-align: center;
+  text-shadow: #000 0 1px 2px;
+  width: 80px;
+}
+
+.icon.active {
+  background: url(../images/gui/trans_black.png);
+}
+
+.icon img {
+  background: url(../images/gui/trans_black.png) no-repeat -99999px -99999px;
+  display: block;
+  margin: 0 auto 5px;
+  width: 32px;
+  height: 32px;
+}
+
+.icon:hover,
+.icon.ui-draggable-dragging {
+  background-position: 0 0;
+  background-repeat: repeat;
+  border: 1px solid #fff;
+  padding: 5px 0 5px;
+}
+
+.icon.ui-draggable-dragging {
+  z-index: 20;
+}
+
+/* `Windows
+----------------------------------------------------------------------------------------------------*/
+
+.window {
+  background: #fff;
+  border: 1px solid #000;
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #000;
+  display: none;
+  width: 700px;
+  height: 300px;
+  top: 30px;
+  left: 120px;
+  z-index: 2;
+}
+
+.window.window_stack,
+.window.ui-draggable-dragging {
+  z-index: 10;
+}
+
+.window.ui-draggable-dragging {
+  opacity: 0.5;
+}
+
+.window.ui-draggable-dragging .window_content,
+.window.ui-draggable-dragging .window_bottom {
+  display: none;
+}
+
+.window_full.ui-draggable-dragging {
+  opacity: 1;
+}
+
+.window_full.ui-draggable-dragging .window_content,
+.window_full.ui-draggable-dragging .window_bottom {
+  display: block;
+}
+
+.window_full {
+  border: 0;
+  border-radius: 0;
+  -moz-border-radius: 0;
+  -webkit-border-radius: 0;
+  -webkit-background-clip: padding-box;
+  width: 100%;
+  height: 100%;
+}
+
+.window_full .ui-resizable-se {
+  display: none;
+}
+
+.window_top {
+  background: #333 url(../images/gui/bar_bottom.png) repeat-x;
+  border-top-left-radius: 5px;
+  border-top-right-radius: 5px;
+  -moz-border-radius-topleft: 5px;
+  -moz-border-radius-topright: 5px;
+  -webkit-border-top-left-radius: 5px;
+  -webkit-border-top-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  font-weight: bold;
+  overflow: hidden;
+  line-height: 30px;
+  padding: 0 10px;
+  text-shadow: #000 0 1px 1px;
+  height: 30px;
+}
+
+.window_top img {
+  float: left;
+  margin: 6px 5px 0 0;
+}
+
+.window_bottom {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-top: 1px solid #bbb;
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 20px;
+  overflow: hidden;
+  text-align: center;
+  text-shadow: #fff 0 1px 1px;
+  height: 20px;
+  left: 1px;
+  right: 1px;
+  bottom: 1px;
+}
+
+.window_min,
+.window_resize,
+.window_close {
+  background: url(../images/gui/window_buttons.gif) no-repeat;
+  border-radius: 2px;
+  -moz-border-radius: 2px;
+  -webkit-border-radius: 2px;
+  -webkit-background-clip: padding-box;
+  float: left;
+  font-size: 0;
+  margin: 6px 0 0 5px;
+  width: 28px;
+  height: 15px;
+}
+
+.window_min:hover {
+  background-position: 0 -15px;
+}
+
+.window_resize {
+  background-position: -28px 0;
+}
+
+.window_resize:hover {
+  background-position: -28px -15px;
+}
+
+.window_close {
+  background-position: -56px 0;
+}
+
+.window_close:hover {
+  background-position: -56px -15px;
+  box-shadow: #f00 0 0 10px;
+  -moz-box-shadow: #f00 0 0 10px;
+  -webkit-box-shadow: #f00 0 0 10px;
+}
+
+.window_min:hover,
+.window_resize:hover {
+  box-shadow: #09f 0 0 10px;
+  -moz-box-shadow: #09f 0 0 10px;
+  -webkit-box-shadow: #09f 0 0 10px;
+}
+
+.window_inner {
+  padding: 1px;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+}
+
+.window_content {
+  background: url(../images/gui/window_content.gif) repeat-y;
+  line-height: 1.5;
+  overflow: auto;
+  top: 32px;
+  left: 1px;
+  right: 1px;
+  bottom: 23px;
+}
+
+.window_aside {
+  float: left;
+  font-size: 11px;
+  padding: 10px 12px 10px 10px;
+  width: 150px;
+}
+
+.window_main {
+  background: #fff;
+  margin: 0 0 0 173px;
+  min-height: 100%;
+}
+
+.window_full .window_top,
+.window_full .window_bottom {
+  border-radius: 0;
+  -moz-border-radius: 0;
+  -webkit-border-radius: 0;
+  -webkit-background-clip: padding-box;
+}
+
+.window_full .window_inner {
+  bottom: -1px;
+}
+
+/* `Table >> Data
+----------------------------------------------------------------------------------------------------*/
+
+table.data {
+  width: 100%;
+  white-space: nowrap;
+}
+
+table.data th,
+table.data td {
+  padding: 5px 10px;
+  vertical-align: middle;
+}
+
+table.data th {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-left: 1px solid #fff;
+  border-bottom: 1px solid #fff;
+  font-weight: bold;
+  text-shadow: #fff 0 1px 1px;
+  white-space: nowrap;
+}
+
+table.data th:first-child {
+  border-left: 0;
+}
+
+table.data img {
+  display: block;
+}
+
+table.data tbody tr:nth-child(even) td {
+  background: #def;
+}
+
+table.data tbody tr.active td {
+  background: #06c url(../images/gui/bar_top_link.png) repeat-x;
+  color: #fff;
+}
+
+th.shrink {
+  width: 1%;
+}
+
+/* `Bar >> Top + Bottom
+----------------------------------------------------------------------------------------------------*/
+
+#bar_top,
+#bar_bottom {
+  font-weight: bold;
+  padding: 0 10px;
+  left: 0;
+  right: 0;
+}
+
+#bar_top {
+  background: #fff url(../images/gui/bar_top.png) repeat-x left bottom;
+  border-bottom: 1px solid #333;
+  color: #999;
+  line-height: 25px;
+  padding-right: 20px;
+  text-shadow: #fff 0 1px 1px;
+  height: 25px;
+  top: 0;
+}
+
+#bar_bottom {
+  background: #333 url(../images/gui/bar_bottom.png) repeat-x;
+  border-top: 1px solid #fff;
+  color: #fff;
+  font-size: 13px;
+  line-height: 30px;
+  opacity: 0.8;
+  overflow: hidden;
+  padding-top: 5px;
+  padding-bottom: 5px;
+  text-shadow: #000 0 1px 1px;
+  height: 30px;
+  bottom: 0;
+}
+
+/* `Bar >> Links
+----------------------------------------------------------------------------------------------------*/
+
+#bar_top li,
+#bar_bottom li {
+  float: left;
+}
+
+#bar_top li a,
+#bar_bottom li a {
+  display: block;
+  padding: 0 10px;
+}
+
+#bar_top li a {
+  background-image: url(../images/gui/bar_top_link.png);
+  background-repeat: no-repeat;
+  background-position: -99999px -99999px;
+  color: #000;
+  overflow: hidden;
+  height: 25px;
+  min-height: 1px;
+}
+
+#bar_top a.active {
+  background-color: #06c;
+  background-position: 0 0;
+  background-repeat: repeat-x;
+  color: #fff;
+  text-shadow: none;
+}
+
+#bar_top ul.menu {
+  background: #eee;
+  border: 1px solid #333;
+  border-top-width: 0;
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+  display: none;
+  font-weight: normal;
+  margin: 1px 0 0 -1px;
+  padding: 1px 1px 0;
+  position: absolute;
+  min-width: 200px;
+  z-index: 30;
+}
+
+#bar_top ul.menu li {
+  float: none;
+}
+
+#bar_top ul.menu a {
+  background: #fff;
+  border-bottom: 1px solid #eee;
+  min-width: 180px;
+}
+
+#bar_top ul.menu li:last-child a {
+  border-bottom-left-radius: 5px;
+  border-bottom-right-radius: 5px;
+  -moz-border-radius-bottomleft: 5px;
+  -moz-border-radius-bottomright: 5px;
+  -webkit-border-bottom-left-radius: 5px;
+  -webkit-border-bottom-right-radius: 5px;
+  -webkit-background-clip: padding-box;
+}
+
+#bar_top ul.menu a:hover {
+  background: #06c url(../images/gui/bar_top_link.png) repeat-x;
+  color: #fff;
+  text-shadow: none;
+}
+
+#bar_bottom li {
+  display: none;
+  margin: 0 0 10px 5px;
+  min-width: 150px;
+}
+
+#bar_bottom li a {
+  background: #333;
+}
+
+#bar_bottom a {
+  border-radius: 5px;
+  -moz-border-radius: 5px;
+  -webkit-border-radius: 5px;
+  -webkit-background-clip: padding-box;
+  color: #fff;
+  overflow: hidden;
+  padding: 0 10px;
+  height: 30px;
+}
+
+#bar_bottom a:hover {
+  background: #000;
+}
+
+#bar_bottom a:active {
+  background: #c60;
+  border: 1px solid #fff;
+  padding: 0 9px;
+}
+
+#bar_bottom li a img {
+  float: left;
+  margin: 4px 5px 0 -5px;
+}
+
+#bar_bottom .float_left img,
+#bar_bottom .float_right img {
+  display: block;
+  padding: 4px 0 0;
+}
+
+/* `Wrapper + Wallpaper + Desktop
+----------------------------------------------------------------------------------------------------*/
+
+#wallpaper {
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  width: 100%;
+  height: 100%;
+}
+
+#desktop {
+  overflow: hidden;
+  top: 26px;
+  left: 0;
+  right: 0;
+  bottom: 41px;
+}
+
+#wrapper {
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  min-width: 700px;
+  min-height: 500px;
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/css/reset.css b/wrt/wrt_support/sample/launcher/css/reset.css
new file mode 100644 (file)
index 0000000..87b7f36
--- /dev/null
@@ -0,0 +1,202 @@
+/* `XHTML, HTML4, HTML5 Reset
+----------------------------------------------------------------------------------------------------*/
+
+a,
+abbr,
+acronym,
+address,
+applet,
+article,
+aside,
+audio,
+b,
+big,
+blockquote,
+body,
+canvas,
+caption,
+center,
+cite,
+code,
+dd,
+del,
+details,
+dfn,
+dialog,
+div,
+dl,
+dt,
+em,
+embed,
+fieldset,
+figcaption,
+figure,
+font,
+footer,
+form,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+header,
+hgroup,
+hr,
+html,
+i,
+iframe,
+img,
+ins,
+kbd,
+label,
+legend,
+li,
+mark,
+menu,
+meter,
+nav,
+object,
+ol,
+output,
+p,
+pre,
+progress,
+q,
+rp,
+rt,
+ruby,
+s,
+samp,
+section,
+small,
+span,
+strike,
+strong,
+sub,
+summary,
+sup,
+table,
+tbody,
+td,
+tfoot,
+th,
+thead,
+time,
+tr,
+tt,
+u,
+ul,
+var,
+video,
+xmp {
+  border: 0;
+  margin: 0;
+  padding: 0;
+  font-size: 100%;
+}
+
+html,
+body {
+  height: 100%;
+}
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+menu,
+nav,
+section {
+/*
+  Override the default (display: inline) for
+  browsers that do not recognize HTML5 tags.
+
+  IE8 (and lower) requires a shiv:
+  http://ejohn.org/blog/html5-shiv
+*/
+  display: block;
+}
+
+b,
+strong {
+/*
+  Makes browsers agree.
+  IE + Opera = font-weight: bold.
+  Gecko + WebKit = font-weight: bolder.
+*/
+  font-weight: bold;
+}
+
+img {
+  color: transparent;
+  font-size: 0;
+  vertical-align: middle;
+/*
+  For IE.
+  http://css-tricks.com/ie-fix-bicubic-scaling-for-images
+*/
+  -ms-interpolation-mode: bicubic;
+}
+
+li {
+/*
+  For IE6 + IE7.
+*/
+  display: list-item;
+}
+
+table {
+  border-collapse: collapse;
+  border-spacing: 0;
+}
+
+th,
+td,
+caption {
+  font-weight: normal;
+  vertical-align: top;
+  text-align: left;
+}
+
+q {
+  quotes: none;
+}
+
+q:before,
+q:after {
+  content: '';
+  content: none;
+}
+
+sub,
+sup,
+small {
+  font-size: 75%;
+}
+
+sub,
+sup {
+  line-height: 0;
+  position: relative;
+  vertical-align: baseline;
+}
+
+sub {
+  bottom: -0.25em;
+}
+
+sup {
+  top: -0.5em;
+}
+
+svg {
+/*
+  For IE9.
+*/
+  overflow: hidden;
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/db.json b/wrt/wrt_support/sample/launcher/db.json
new file mode 100644 (file)
index 0000000..5ff4bfa
--- /dev/null
@@ -0,0 +1,17 @@
+[
+       {
+               "name": "roundball",
+               "icon": "icon.png",
+               "path": "a/b/c"
+       },
+       {
+               "name": "todomvc",
+               "icon": "icon.png",
+               "path": "a/b/d"
+       },
+       {
+               "name": "persistence",
+               "icon": "icon.png",
+               "path": "a/b/e"
+       }
+]
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/index.html b/wrt/wrt_support/sample/launcher/index.html
new file mode 100644 (file)
index 0000000..36ffcf4
--- /dev/null
@@ -0,0 +1,20 @@
+<html>
+    <head>
+        <meta name="viewport" content="width=device-width, user-scalable=no">
+        <link href="./assets/css/reset.css" rel="stylesheet">
+        <link href="./assets/css/launcher.css" rel="stylesheet">
+        <link rel="stylesheet" href="./assets/js/context-menu/jquery.contextmenu.css" type="text/css" />
+
+        <title>launcher</title>
+    </head>
+    <body>
+    </body>
+</html>
+<script type="text/javascript" src="./assets/js/jquery.js"></script>
+<script type="text/javascript" src="./assets/js/jquery.ui.js"></script>
+<script type="text/javascript" src="./assets/js/jquery.desktop.js"></script>
+<script type="text/javascript" src="./assets/js/context-menu/jquery.contextmenu.js"></script>
+<script type="text/javascript" src="./bower_components/underscore/underscore-min.js"></script>
+<script type="text/javascript" src="./bower_components/backbone/backbone-min.js"></script>
+<script type="text/javascript" src="./assets/js/was_key_event_handler.js"></script>
+<script type="text/javascript" src="./assets/js/launcher.js"></script>
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/ReadMe.txt
new file mode 100644 (file)
index 0000000..c5beef5
--- /dev/null
@@ -0,0 +1,2 @@
+Download more cultures from: http://jqwidgets.com/builds/cultures.zip\r
+License: https://github.com/jquery/globalize/blob/master/LICENSE\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.cs-CZ.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.cs-CZ.js
new file mode 100644 (file)
index 0000000..6e6b2b1
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * Globalize Culture cs-CZ
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "cs-CZ", "default", {
+       name: "cs-CZ",
+       englishName: "Czech (Czech Republic)",
+       nativeName: "čeština (Česká republika)",
+       language: "cs",
+       numberFormat: {
+               ",": " ",
+               ".": ",",
+               "NaN": "Není číslo",
+               negativeInfinity: "-nekonečno",
+               positiveInfinity: "+nekonečno",
+               percent: {
+                       pattern: ["-n%","n%"],
+                       ",": " ",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n $","n $"],
+                       ",": " ",
+                       ".": ",",
+                       symbol: "Kč"
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": ".",
+                       firstDay: 1,
+                       days: {
+                               names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],
+                               namesAbbr: ["ne","po","út","st","čt","pá","so"],
+                               namesShort: ["ne","po","út","st","čt","pá","so"]
+                       },
+                       months: {
+                               names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""],
+                               namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
+                       },
+                       monthsGenitive: {
+                               names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""],
+                               namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
+                       },
+                       AM: ["dop.","dop.","DOP."],
+                       PM: ["odp.","odp.","ODP."],
+                       eras: [{"name":"n. l.","start":null,"offset":0}],
+                       patterns: {
+                               d: "d.M.yyyy",
+                               D: "d. MMMM yyyy",
+                               t: "H:mm",
+                               T: "H:mm:ss",
+                               f: "d. MMMM yyyy H:mm",
+                               F: "d. MMMM yyyy H:mm:ss",
+                               M: "dd MMMM",
+                               Y: "MMMM yyyy"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.de-DE.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.de-DE.js
new file mode 100644 (file)
index 0000000..a104e76
--- /dev/null
@@ -0,0 +1,81 @@
+/*
+ * Globalize Culture de-DE
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "de-DE", "default", {
+       name: "de-DE",
+       englishName: "German (Germany)",
+       nativeName: "Deutsch (Deutschland)",
+       language: "de",
+       numberFormat: {
+               ",": ".",
+               ".": ",",
+               "NaN": "n. def.",
+               negativeInfinity: "-unendlich",
+               positiveInfinity: "+unendlich",
+               percent: {
+                       pattern: ["-n%","n%"],
+                       ",": ".",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n $","n $"],
+                       ",": ".",
+                       ".": ",",
+                       symbol: "€"
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": ".",
+                       firstDay: 1,
+                       days: {
+                               names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
+                               namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
+                               namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
+                       },
+                       months: {
+                               names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
+                               namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
+                       },
+                       AM: null,
+                       PM: null,
+                       eras: [{"name":"n. Chr.","start":null,"offset":0}],
+                       patterns: {
+                               d: "dd.MM.yyyy",
+                               D: "dddd, d. MMMM yyyy",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "dddd, d. MMMM yyyy HH:mm",
+                               F: "dddd, d. MMMM yyyy HH:mm:ss",
+                               M: "dd MMMM",
+                               Y: "MMMM yyyy"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.en-CA.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.en-CA.js
new file mode 100644 (file)
index 0000000..1c8c1b5
--- /dev/null
@@ -0,0 +1,49 @@
+/*
+ * Globalize Culture en-CA
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "en-CA", "default", {
+       name: "en-CA",
+       englishName: "English (Canada)",
+       nativeName: "English (Canada)",
+       numberFormat: {
+               currency: {
+                       pattern: ["-$n","$n"]
+               }
+       },
+       calendars: {
+               standard: {
+                       patterns: {
+                               d: "dd/MM/yyyy",
+                               D: "MMMM-dd-yy",
+                               f: "MMMM-dd-yy h:mm tt",
+                               F: "MMMM-dd-yy h:mm:ss tt"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.en-US.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.en-US.js
new file mode 100644 (file)
index 0000000..03b3ec3
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+ * Globalize Culture en-US
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "en-US", "default", {
+       name: "en-US",
+       englishName: "English (United States)"
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.fr-FR.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.fr-FR.js
new file mode 100644 (file)
index 0000000..89c9bd4
--- /dev/null
@@ -0,0 +1,79 @@
+/*
+ * Globalize Culture fr-FR
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "fr-FR", "default", {
+       name: "fr-FR",
+       englishName: "French (France)",
+       nativeName: "français (France)",
+       language: "fr",
+       numberFormat: {
+               ",": " ",
+               ".": ",",
+               "NaN": "Non Numérique",
+               negativeInfinity: "-Infini",
+               positiveInfinity: "+Infini",
+               percent: {
+                       ",": " ",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n $","n $"],
+                       ",": " ",
+                       ".": ",",
+                       symbol: "€"
+               }
+       },
+       calendars: {
+               standard: {
+                       firstDay: 1,
+                       days: {
+                               names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
+                               namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
+                               namesShort: ["di","lu","ma","me","je","ve","sa"]
+                       },
+                       months: {
+                               names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
+                               namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
+                       },
+                       AM: null,
+                       PM: null,
+                       eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
+                       patterns: {
+                               d: "dd/MM/yyyy",
+                               D: "dddd d MMMM yyyy",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "dddd d MMMM yyyy HH:mm",
+                               F: "dddd d MMMM yyyy HH:mm:ss",
+                               M: "d MMMM",
+                               Y: "MMMM yyyy"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.he-IL.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.he-IL.js
new file mode 100644 (file)
index 0000000..8cace10
--- /dev/null
@@ -0,0 +1,97 @@
+/*
+ * Globalize Culture he-IL
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "he-IL", "default", {
+       name: "he-IL",
+       englishName: "Hebrew (Israel)",
+       nativeName: "עברית (ישראל)",
+       language: "he",
+       isRTL: true,
+       numberFormat: {
+               "NaN": "לא מספר",
+               negativeInfinity: "אינסוף שלילי",
+               positiveInfinity: "אינסוף חיובי",
+               percent: {
+                       pattern: ["-n%","n%"]
+               },
+               currency: {
+                       pattern: ["$-n","$ n"],
+                       symbol: "₪"
+               }
+       },
+       calendars: {
+               standard: {
+                       days: {
+                               names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],
+                               namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"],
+                               namesShort: ["א","ב","ג","ד","ה","ו","ש"]
+                       },
+                       months: {
+                               names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""],
+                               namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""]
+                       },
+                       eras: [{"name":"לספירה","start":null,"offset":0}],
+                       patterns: {
+                               d: "dd/MM/yyyy",
+                               D: "dddd dd MMMM yyyy",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "dddd dd MMMM yyyy HH:mm",
+                               F: "dddd dd MMMM yyyy HH:mm:ss",
+                               M: "dd MMMM",
+                               Y: "MMMM yyyy"
+                       }
+               },
+               Hebrew: {
+                       name: "Hebrew",
+                       "/": " ",
+                       days: {
+                               names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],
+                               namesAbbr: ["א","ב","ג","ד","ה","ו","ש"],
+                               namesShort: ["א","ב","ג","ד","ה","ו","ש"]
+                       },
+                       months: {
+                               names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"],
+                               namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"]
+                       },
+                       eras: [{"name":"C.E.","start":null,"offset":0}],
+                       twoDigitYearMax: 5790,
+                       patterns: {
+                               d: "dd MMMM yyyy",
+                               D: "dddd dd MMMM yyyy",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "dddd dd MMMM yyyy HH:mm",
+                               F: "dddd dd MMMM yyyy HH:mm:ss",
+                               M: "dd MMMM",
+                               Y: "MMMM yyyy"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.hr-HR.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.hr-HR.js
new file mode 100644 (file)
index 0000000..71a796e
--- /dev/null
@@ -0,0 +1,81 @@
+/*
+ * Globalize Culture hr-HR
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "hr-HR", "default", {
+       name: "hr-HR",
+       englishName: "Croatian (Croatia)",
+       nativeName: "hrvatski (Hrvatska)",
+       language: "hr",
+       numberFormat: {
+               pattern: ["- n"],
+               ",": ".",
+               ".": ",",
+               percent: {
+                       pattern: ["-n%","n%"],
+                       ",": ".",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n $","n $"],
+                       ",": ".",
+                       ".": ",",
+                       symbol: "kn"
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": ".",
+                       firstDay: 1,
+                       days: {
+                               names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
+                               namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
+                               namesShort: ["ne","po","ut","sr","če","pe","su"]
+                       },
+                       months: {
+                               names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""],
+                               namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
+                       },
+                       monthsGenitive: {
+                               names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""],
+                               namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
+                       },
+                       AM: null,
+                       PM: null,
+                       patterns: {
+                               d: "d.M.yyyy.",
+                               D: "d. MMMM yyyy.",
+                               t: "H:mm",
+                               T: "H:mm:ss",
+                               f: "d. MMMM yyyy. H:mm",
+                               F: "d. MMMM yyyy. H:mm:ss",
+                               M: "d. MMMM"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.hu-HU.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.hu-HU.js
new file mode 100644 (file)
index 0000000..0156328
--- /dev/null
@@ -0,0 +1,80 @@
+/*
+ * Globalize Culture hu-HU
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "hu-HU", "default", {
+       name: "hu-HU",
+       englishName: "Hungarian (Hungary)",
+       nativeName: "magyar (Magyarország)",
+       language: "hu",
+       numberFormat: {
+               ",": " ",
+               ".": ",",
+               "NaN": "nem szám",
+               negativeInfinity: "negatív végtelen",
+               positiveInfinity: "végtelen",
+               percent: {
+                       ",": " ",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n $","n $"],
+                       ",": " ",
+                       ".": ",",
+                       symbol: "Ft"
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": ".",
+                       firstDay: 1,
+                       days: {
+                               names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],
+                               namesAbbr: ["V","H","K","Sze","Cs","P","Szo"],
+                               namesShort: ["V","H","K","Sze","Cs","P","Szo"]
+                       },
+                       months: {
+                               names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""],
+                               namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""]
+                       },
+                       AM: ["de.","de.","DE."],
+                       PM: ["du.","du.","DU."],
+                       eras: [{"name":"i.sz.","start":null,"offset":0}],
+                       patterns: {
+                               d: "yyyy.MM.dd.",
+                               D: "yyyy. MMMM d.",
+                               t: "H:mm",
+                               T: "H:mm:ss",
+                               f: "yyyy. MMMM d. H:mm",
+                               F: "yyyy. MMMM d. H:mm:ss",
+                               M: "MMMM d.",
+                               Y: "yyyy. MMMM"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.it-IT.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.it-IT.js
new file mode 100644 (file)
index 0000000..da24848
--- /dev/null
@@ -0,0 +1,80 @@
+/*
+ * Globalize Culture it-IT
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "it-IT", "default", {
+       name: "it-IT",
+       englishName: "Italian (Italy)",
+       nativeName: "italiano (Italia)",
+       language: "it",
+       numberFormat: {
+               ",": ".",
+               ".": ",",
+               "NaN": "Non un numero reale",
+               negativeInfinity: "-Infinito",
+               positiveInfinity: "+Infinito",
+               percent: {
+                       pattern: ["-n%","n%"],
+                       ",": ".",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-$ n","$ n"],
+                       ",": ".",
+                       ".": ",",
+                       symbol: "€"
+               }
+       },
+       calendars: {
+               standard: {
+                       firstDay: 1,
+                       days: {
+                               names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],
+                               namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"],
+                               namesShort: ["do","lu","ma","me","gi","ve","sa"]
+                       },
+                       months: {
+                               names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""],
+                               namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""]
+                       },
+                       AM: null,
+                       PM: null,
+                       eras: [{"name":"d.C.","start":null,"offset":0}],
+                       patterns: {
+                               d: "dd/MM/yyyy",
+                               D: "dddd d MMMM yyyy",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "dddd d MMMM yyyy HH:mm",
+                               F: "dddd d MMMM yyyy HH:mm:ss",
+                               M: "dd MMMM",
+                               Y: "MMMM yyyy"
+                       }
+               }
+       }
+});
+
+}( this ));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.ja-JP.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.ja-JP.js
new file mode 100644 (file)
index 0000000..e4c1ff6
--- /dev/null
@@ -0,0 +1,100 @@
+/*
+ * Globalize Culture ja-JP
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "ja-JP", "default", {
+       name: "ja-JP",
+       englishName: "Japanese (Japan)",
+       nativeName: "日本語 (日本)",
+       language: "ja",
+       numberFormat: {
+               "NaN": "NaN (非数値)",
+               negativeInfinity: "-∞",
+               positiveInfinity: "+∞",
+               percent: {
+                       pattern: ["-n%","n%"]
+               },
+               currency: {
+                       pattern: ["-$n","$n"],
+                       decimals: 0,
+                       symbol: "¥"
+               }
+       },
+       calendars: {
+               standard: {
+                       days: {
+                               names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],
+                               namesAbbr: ["日","月","火","水","木","金","土"],
+                               namesShort: ["日","月","火","水","木","金","土"]
+                       },
+                       months: {
+                               names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],
+                               namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
+                       },
+                       AM: ["午前","午前","午前"],
+                       PM: ["午後","午後","午後"],
+                       eras: [{"name":"西暦","start":null,"offset":0}],
+                       patterns: {
+                               d: "yyyy/MM/dd",
+                               D: "yyyy'年'M'月'd'日'",
+                               t: "H:mm",
+                               T: "H:mm:ss",
+                               f: "yyyy'年'M'月'd'日' H:mm",
+                               F: "yyyy'年'M'月'd'日' H:mm:ss",
+                               M: "M'月'd'日'",
+                               Y: "yyyy'年'M'月'"
+                       }
+               },
+               Japanese: {
+                       name: "Japanese",
+                       days: {
+                               names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],
+                               namesAbbr: ["日","月","火","水","木","金","土"],
+                               namesShort: ["日","月","火","水","木","金","土"]
+                       },
+                       months: {
+                               names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],
+                               namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
+                       },
+                       AM: ["午前","午前","午前"],
+                       PM: ["午後","午後","午後"],
+                       eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}],
+                       twoDigitYearMax: 99,
+                       patterns: {
+                               d: "gg y/M/d",
+                               D: "gg y'年'M'月'd'日'",
+                               t: "H:mm",
+                               T: "H:mm:ss",
+                               f: "gg y'年'M'月'd'日' H:mm",
+                               F: "gg y'年'M'月'd'日' H:mm:ss",
+                               M: "M'月'd'日'",
+                               Y: "gg y'年'M'月'"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.lt.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.lt.js
new file mode 100644 (file)
index 0000000..56aeb3b
--- /dev/null
@@ -0,0 +1,83 @@
+/*
+ * Globalize Culture lt
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "lt", "default", {
+       name: "lt",
+       englishName: "Lithuanian",
+       nativeName: "lietuvių",
+       language: "lt",
+       numberFormat: {
+               ",": ".",
+               ".": ",",
+               negativeInfinity: "-begalybė",
+               positiveInfinity: "begalybė",
+               percent: {
+                       pattern: ["-n%","n%"],
+                       ",": ".",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n $","n $"],
+                       ",": ".",
+                       ".": ",",
+                       symbol: "Lt"
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": ".",
+                       firstDay: 1,
+                       days: {
+                               names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"],
+                               namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"],
+                               namesShort: ["S","P","A","T","K","Pn","Š"]
+                       },
+                       months: {
+                               names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""],
+                               namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""]
+                       },
+                       monthsGenitive: {
+                               names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""],
+                               namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""]
+                       },
+                       AM: null,
+                       PM: null,
+                       patterns: {
+                               d: "yyyy.MM.dd",
+                               D: "yyyy 'm.' MMMM d 'd.'",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "yyyy 'm.' MMMM d 'd.' HH:mm",
+                               F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss",
+                               M: "MMMM d 'd.'",
+                               Y: "yyyy 'm.' MMMM"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.ru-RU.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.ru-RU.js
new file mode 100644 (file)
index 0000000..5946b15
--- /dev/null
@@ -0,0 +1,82 @@
+/*
+ * Globalize Culture ru-RU
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "ru-RU", "default", {
+       name: "ru-RU",
+       englishName: "Russian (Russia)",
+       nativeName: "русский (Россия)",
+       language: "ru",
+       numberFormat: {
+               ",": " ",
+               ".": ",",
+               negativeInfinity: "-бесконечность",
+               positiveInfinity: "бесконечность",
+               percent: {
+                       pattern: ["-n%","n%"],
+                       ",": " ",
+                       ".": ","
+               },
+               currency: {
+                       pattern: ["-n$","n$"],
+                       ",": " ",
+                       ".": ",",
+                       symbol: "р."
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": ".",
+                       firstDay: 1,
+                       days: {
+                               names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],
+                               namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],
+                               namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"]
+                       },
+                       months: {
+                               names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
+                               namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
+                       },
+                       monthsGenitive: {
+                               names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""],
+                               namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
+                       },
+                       AM: null,
+                       PM: null,
+                       patterns: {
+                               d: "dd.MM.yyyy",
+                               D: "d MMMM yyyy 'г.'",
+                               t: "H:mm",
+                               T: "H:mm:ss",
+                               f: "d MMMM yyyy 'г.' H:mm",
+                               F: "d MMMM yyyy 'г.' H:mm:ss",
+                               Y: "MMMM yyyy"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.sa-IN.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.culture.sa-IN.js
new file mode 100644 (file)
index 0000000..b94958d
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * Globalize Culture sa-IN
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * This file was generated by the Globalize Culture Generator
+ * Translation: bugs found in this file need to be fixed in the generator
+ */
+
+(function( window, undefined ) {
+
+var Globalize;
+
+if ( typeof require !== "undefined" &&
+       typeof exports !== "undefined" &&
+       typeof module !== "undefined" ) {
+       // Assume CommonJS
+       Globalize = require( "globalize" );
+} else {
+       // Global variable
+       Globalize = window.Globalize;
+}
+
+Globalize.addCultureInfo( "sa-IN", "default", {
+       name: "sa-IN",
+       englishName: "Sanskrit (India)",
+       nativeName: "संस्कृत (भारतम्)",
+       language: "sa",
+       numberFormat: {
+               groupSizes: [3,2],
+               percent: {
+                       groupSizes: [3,2]
+               },
+               currency: {
+                       pattern: ["$ -n","$ n"],
+                       groupSizes: [3,2],
+                       symbol: "रु"
+               }
+       },
+       calendars: {
+               standard: {
+                       "/": "-",
+                       days: {
+                               names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],
+                               namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],
+                               namesShort: ["र","स","म","ब","ग","श","श"]
+                       },
+                       months: {
+                               names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],
+                               namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]
+                       },
+                       AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"],
+                       PM: ["अपराह्न","अपराह्न","अपराह्न"],
+                       patterns: {
+                               d: "dd-MM-yyyy",
+                               D: "dd MMMM yyyy dddd",
+                               t: "HH:mm",
+                               T: "HH:mm:ss",
+                               f: "dd MMMM yyyy dddd HH:mm",
+                               F: "dd MMMM yyyy dddd HH:mm:ss",
+                               M: "dd MMMM"
+                       }
+               }
+       }
+});
+
+}( this ));
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.js b/wrt/wrt_support/sample/launcher/jqwidgets/globalization/globalize.js
new file mode 100644 (file)
index 0000000..3d4f49b
--- /dev/null
@@ -0,0 +1,10 @@
+/*!
+ * Globalize
+ *
+ * http://github.com/jquery/globalize
+ *
+ * Copyright Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ */
+(function(j,g){var r,w,l,x,p,v,u,t,m,a,k,y,q,c,n,s,z,o,i,h,d,f,e,b;r=function(A){return new r.prototype.init(A)};if(typeof require!=="undefined"&&typeof exports!=="undefined"&&typeof module!=="undefined"){module.exports=r}else{j.Globalize=r}r.cultures={};r.prototype={constructor:r,init:function(A){this.cultures=r.cultures;this.cultureSelector=A;return this}};r.prototype.init.prototype=r.prototype;r.cultures["default"]={name:"en",englishName:"English",nativeName:"English",isRTL:false,language:"en",numberFormat:{pattern:["-n"],decimals:2,",":",",".":".",groupSizes:[3],"+":"+","-":"-","NaN":"NaN",negativeInfinity:"-Infinity",positiveInfinity:"Infinity",percent:{pattern:["-n %","n %"],decimals:2,groupSizes:[3],",":",",".":".",symbol:"%"},currency:{pattern:["($n)","$n"],decimals:2,groupSizes:[3],",":",",".":".",symbol:"$"}},calendars:{standard:{name:"Gregorian_USEnglish","/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss"}}},messages:{}};r.cultures["default"].calendar=r.cultures["default"].calendars.standard;r.cultures.en=r.cultures["default"];r.cultureSelector="en";w=/^0x[a-f0-9]+$/i;l=/^[+\-]?infinity$/i;x=/^[+\-]?\d*\.?\d*(e[+\-]?\d+)?$/;p=/^\s+|\s+$/g;v=function(D,C){if(D.indexOf){return D.indexOf(C)}for(var A=0,B=D.length;A<B;A++){if(D[A]===C){return A}}return -1};u=function(B,A){return B.substr(B.length-A.length)===A};t=function(){var J,C,A,B,G,H,F=arguments[0]||{},E=1,D=arguments.length,I=false;if(typeof F==="boolean"){I=F;F=arguments[1]||{};E=2}if(typeof F!=="object"&&!a(F)){F={}}for(;E<D;E++){if((J=arguments[E])!=null){for(C in J){A=F[C];B=J[C];if(F===B){continue}if(I&&B&&(k(B)||(G=m(B)))){if(G){G=false;H=A&&m(A)?A:[]}else{H=A&&k(A)?A:{}}F[C]=t(I,H,B)}else{if(B!==g){F[C]=B}}}}}return F};m=Array.isArray||function(A){return Object.prototype.toString.call(A)==="[object Array]"};a=function(A){return Object.prototype.toString.call(A)==="[object Function]"};k=function(A){return Object.prototype.toString.call(A)==="[object Object]"};y=function(B,A){return B.indexOf(A)===0};q=function(A){return(A+"").replace(p,"")};c=function(A){if(isNaN(A)){return NaN}return Math[A<0?"ceil":"floor"](A)};n=function(D,B,C){var A;for(A=D.length;A<B;A+=1){D=(C?("0"+D):(D+"0"))}return D};s=function(D,A){var C=0,F=false;for(var E=0,B=D.length;E<B;E++){var G=D.charAt(E);switch(G){case"'":if(F){A.push("'")}else{C++}F=false;break;case"\\":if(F){A.push("\\")}F=!F;break;default:A.push(G);F=false;break}}return C};z=function(E,D){D=D||"F";var C,B=E.patterns,A=D.length;if(A===1){C=B[D];if(!C){throw"Invalid date format string '"+D+"'."}D=C}else{if(A===2&&D.charAt(0)==="%"){D=D.charAt(1)}}return D};o=function(U,Y,Z){var M=Z.calendar,I=M.convert,ab;if(!Y||!Y.length||Y==="i"){if(Z&&Z.name.length){if(I){ab=o(U,M.patterns.F,Z)}else{var J=new Date(U.getTime()),Q=d(U,M.eras);J.setFullYear(f(U,M,Q));ab=J.toLocaleString()}}else{ab=U.toString()}return ab}var V=M.eras,B=Y==="s";Y=z(M,Y);ab=[];var F,W=["0","00","000"],K,L,A=/([^d]|^)(d|dd)([^d]|$)/g,aa=0,R=h(),C;function H(ac,af){var ae,ad=ac+"";if(af>1&&ad.length<af){ae=(W[af-2]+ad);return ae.substr(ae.length-af,af)}else{ae=ad}return ae}function X(){if(K||L){return K}K=A.test(Y);L=true;return K}function D(ad,ac){if(C){return C[ac]}switch(ac){case 0:return ad.getFullYear();case 1:return ad.getMonth();case 2:return ad.getDate();default:throw"Invalid part value "+ac}}if(!B&&I){C=I.fromGregorian(U)}for(;;){var G=R.lastIndex,P=R.exec(Y);var N=Y.slice(G,P?P.index:Y.length);aa+=s(N,ab);if(!P){break}if(aa%2){ab.push(P[0]);continue}var S=P[0],E=S.length;switch(S){case"ddd":case"dddd":var O=(E===3)?M.days.namesAbbr:M.days.names;ab.push(O[U.getDay()]);break;case"d":case"dd":K=true;ab.push(H(D(U,2),E));break;case"MMM":case"MMMM":var T=D(U,1);ab.push((M.monthsGenitive&&X())?(M.monthsGenitive[E===3?"namesAbbr":"names"][T]):(M.months[E===3?"namesAbbr":"names"][T]));break;case"M":case"MM":ab.push(H(D(U,1)+1,E));break;case"y":case"yy":case"yyyy":T=C?C[0]:f(U,M,d(U,V),B);if(E<4){T=T%100}ab.push(H(T,E));break;case"h":case"hh":F=U.getHours()%12;if(F===0){F=12}ab.push(H(F,E));break;case"H":case"HH":ab.push(H(U.getHours(),E));break;case"m":case"mm":ab.push(H(U.getMinutes(),E));break;case"s":case"ss":ab.push(H(U.getSeconds(),E));break;case"t":case"tt":T=U.getHours()<12?(M.AM?M.AM[0]:" "):(M.PM?M.PM[0]:" ");ab.push(E===1?T.charAt(0):T);break;case"f":case"ff":case"fff":ab.push(H(U.getMilliseconds(),3).substr(0,E));break;case"z":case"zz":F=U.getTimezoneOffset()/60;ab.push((F<=0?"+":"-")+H(Math.floor(Math.abs(F)),E));break;case"zzz":F=U.getTimezoneOffset()/60;ab.push((F<=0?"+":"-")+H(Math.floor(Math.abs(F)),2)+":"+H(Math.abs(U.getTimezoneOffset()%60),2));break;case"g":case"gg":if(M.eras){ab.push(M.eras[d(U,V)].name)}break;case"/":ab.push(M["/"]);break;default:throw"Invalid date format pattern '"+S+"'."}}return ab.join("")};(function(){var A;A=function(H,I,P){var F=P.groupSizes,B=F[0],C=1,M=Math.pow(10,I),D=Math.round(H*M)/M;if(!isFinite(D)){D=H}H=D;var G=H+"",O="",L=G.split(/e/i),N=L.length>1?parseInt(L[1],10):0;G=L[0];L=G.split(".");G=L[0];O=L.length>1?L[1]:"";var E;if(N>0){O=n(O,N,false);G+=O.slice(0,N);O=O.substr(N)}else{if(N<0){N=-N;G=n(G,N+1,true);O=G.slice(-N,G.length)+O;G=G.slice(0,-N)}}if(I>0){O=P["."]+((O.length>I)?O.slice(0,I):n(O,I))}else{O=""}var K=G.length-1,Q=P[","],J="";while(K>=0){if(B===0||B>K){return G.slice(0,K+1)+(J.length?(Q+J+O):O)}J=G.slice(K-B+1,K+1)+(J.length?(Q+J):"");K-=B;if(C<F.length){B=F[C];C++}}return G.slice(0,K+1)+Q+J+O};i=function(M,L,F){if(!isFinite(M)){if(M===Infinity){return F.numberFormat.positiveInfinity}if(M===-Infinity){return F.numberFormat.negativeInfinity}return F.numberFormat.NaN}if(!L||L==="i"){return F.name.length?M.toLocaleString():M.toString()}L=L||"D";var D=F.numberFormat,E=Math.abs(M),G=-1,K;if(L.length>1){G=parseInt(L.slice(1),10)}var J=L.charAt(0).toUpperCase(),N;switch(J){case"D":K="n";E=c(E);if(G!==-1){E=n(""+E,G,true)}if(M<0){E="-"+E}break;case"N":N=D;case"C":N=N||D.currency;case"P":N=N||D.percent;K=M<0?N.pattern[0]:(N.pattern[1]||"n");if(G===-1){G=N.decimals}E=A(E*(J==="P"?100:1),G,N);break;default:throw"Bad number format specifier: "+J}var B=/n|\$|-|%/g,I="";for(;;){var H=B.lastIndex,C=B.exec(K);I+=K.slice(H,C?C.index:K.length);if(!C){break}switch(C[0]){case"n":I+=E;break;case"$":I+=D.currency.symbol;break;case"-":if(/[1-9]/.test(E)){I+=D["-"]}break;case"%":I+=D.percent.symbol;break}}return I}}());h=function(){return(/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g)};d=function(C,B){if(!B){return 0}var F,E=C.getTime();for(var D=0,A=B.length;D<A;D++){F=B[D].start;if(F===null||E>=F){return D}}return 0};f=function(B,D,A,E){var C=B.getFullYear();if(!E&&D.eras){C-=D.eras[A].offset}return C};(function(){var B,A,D,C,G,F,E;B=function(M,K){if(K<100){var I=new Date(),H=d(I),L=f(I,M,H),J=M.twoDigitYearMax;J=typeof J==="string"?new Date().getFullYear()%100+parseInt(J,10):J;K+=L-(L%100);if(K>J){K-=100}}return K};A=function(L,K,I){var H,M=L.days,J=L._upperDays;if(!J){L._upperDays=J=[E(M.names),E(M.namesAbbr),E(M.namesShort)]}K=F(K);if(I){H=v(J[1],K);if(H===-1){H=v(J[2],K)}}else{H=v(J[0],K)}return H};D=function(O,N,J){var H=O.months,I=O.monthsGenitive||O.months,L=O._upperMonths,M=O._upperMonthsGen;if(!L){O._upperMonths=L=[E(H.names),E(H.namesAbbr)];O._upperMonthsGen=M=[E(I.names),E(I.namesAbbr)]}N=F(N);var K=v(J?L[1]:L[0],N);if(K<0){K=v(J?M[1]:M[0],N)}return K};C=function(H,S){var U=H._parseRegExp;if(!U){H._parseRegExp=U={}}else{var L=U[S];if(L){return L}}var R=z(H,S).replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1"),P=["^"],I=[],O=0,K=0,X=h(),M;while((M=X.exec(R))!==null){var W=R.slice(O,M.index);O=X.lastIndex;K+=s(W,P);if(K%2){P.push(M[0]);continue}var J=M[0],N=J.length,T;switch(J){case"dddd":case"ddd":case"MMMM":case"MMM":case"gg":case"g":T="(\\D+)";break;case"tt":case"t":T="(\\D*)";break;case"yyyy":case"fff":case"ff":case"f":T="(\\d{"+N+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":T="(\\d\\d?)";break;case"zzz":T="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":T="([+-]?\\d\\d?)";break;case"/":T="(\\/)";break;default:throw"Invalid date format pattern '"+J+"'."}if(T){P.push(T)}I.push(M[0])}s(R.slice(O),P);P.push("$");var V=P.join("").replace(/\s+/g,"\\s+"),Q={regExp:V,groups:I};return U[S]=Q};G=function(J,H,I){return J<H||J>I};F=function(H){return H.split("\u00A0").join(" ").toUpperCase()};E=function(H){var K=[];for(var J=0,I=H.length;J<I;J++){K[J]=F(H[J])}return K};e=function(ab,ai,aj){ab=q(ab);var U=aj.calendar,ao=C(U,ai),O=new RegExp(ao.regExp).exec(ab);if(O===null){return null}var ak=ao.groups,Z=null,S=null,an=null,am=null,T=null,M=0,ae,ad=0,al=0,H=0,J=null,V=false;for(var af=0,ah=ak.length;af<ah;af++){var I=O[af+1];if(I){var aa=ak[af],L=aa.length,N=parseInt(I,10);switch(aa){case"dd":case"d":am=N;if(G(am,1,31)){return null}break;case"MMM":case"MMMM":an=D(U,I,L===3);if(G(an,0,11)){return null}break;case"M":case"MM":an=N-1;if(G(an,0,11)){return null}break;case"y":case"yy":case"yyyy":S=L<4?B(U,N):N;if(G(S,0,9999)){return null}break;case"h":case"hh":M=N;if(M===12){M=0}if(G(M,0,11)){return null}break;case"H":case"HH":M=N;if(G(M,0,23)){return null}break;case"m":case"mm":ad=N;if(G(ad,0,59)){return null}break;case"s":case"ss":al=N;if(G(al,0,59)){return null}break;case"tt":case"t":V=U.PM&&(I===U.PM[0]||I===U.PM[1]||I===U.PM[2]);if(!V&&(!U.AM||(I!==U.AM[0]&&I!==U.AM[1]&&I!==U.AM[2]))){return null}break;case"f":case"ff":case"fff":H=N*Math.pow(10,3-L);if(G(H,0,999)){return null}break;case"ddd":case"dddd":T=A(U,I,L===3);if(G(T,0,6)){return null}break;case"zzz":var K=I.split(/:/);if(K.length!==2){return null}ae=parseInt(K[0],10);if(G(ae,-12,13)){return null}var Q=parseInt(K[1],10);if(G(Q,0,59)){return null}J=(ae*60)+(y(I,"-")?-Q:Q);break;case"z":case"zz":ae=N;if(G(ae,-12,13)){return null}J=ae*60;break;case"g":case"gg":var W=I;if(!W||!U.eras){return null}W=q(W.toLowerCase());for(var ag=0,ac=U.eras.length;ag<ac;ag++){if(W===U.eras[ag].name.toLowerCase()){Z=ag;break}}if(Z===null){return null}break}}}var R=new Date(),Y,P=U.convert;Y=P?P.fromGregorian(R)[0]:R.getFullYear();if(S===null){S=Y}else{if(U.eras){S+=U.eras[(Z||0)].offset}}if(an===null){an=0}if(am===null){am=1}if(P){R=P.toGregorian(S,an,am);if(R===null){return null}}else{R.setFullYear(S,an,am);if(R.getDate()!==am){return null}if(T!==null&&R.getDay()!==T){return null}}if(V&&M<12){M+=12}R.setHours(M,ad,al,H);if(J!==null){var X=R.getMinutes()-(J+R.getTimezoneOffset());R.setHours(R.getHours()+parseInt(X/60,10),X%60)}return R}}());b=function(D,C,B){var F=C["-"],E=C["+"],A;switch(B){case"n -":F=" "+F;E=" "+E;case"n-":if(u(D,F)){A=["-",D.substr(0,D.length-F.length)]}else{if(u(D,E)){A=["+",D.substr(0,D.length-E.length)]}}break;case"- n":F+=" ";E+=" ";case"-n":if(y(D,F)){A=["-",D.substr(F.length)]}else{if(y(D,E)){A=["+",D.substr(E.length)]}}break;case"(n)":if(y(D,"(")&&u(D,")")){A=["-",D.substr(1,D.length-2)]}break}return A||["",D]};r.prototype.findClosestCulture=function(A){return r.findClosestCulture.call(this,A)};r.prototype.format=function(A,B,C){return r.format.call(this,A,B,C)};r.prototype.localize=function(A,B){return r.localize.call(this,A,B)};r.prototype.parseInt=function(B,A,C){return r.parseInt.call(this,B,A,C)};r.prototype.parseFloat=function(B,A,C){return r.parseFloat.call(this,B,A,C)};r.prototype.culture=function(A){return r.culture.call(this,A)};r.addCultureInfo=function(E,B,D){var C={},A=false;if(typeof E!=="string"){D=E;E=this.culture().name;C=this.cultures[E]}else{if(typeof B!=="string"){D=B;A=(this.cultures[E]==null);C=this.cultures[E]||this.cultures["default"]}else{A=true;C=this.cultures[B]}}this.cultures[E]=t(true,{},C,D);if(A){this.cultures[E].calendar=this.cultures[E].calendars.standard}};r.findClosestCulture=function(A){var I;if(!A){return this.findClosestCulture(this.cultureSelector)||this.cultures["default"]}if(typeof A==="string"){A=A.split(",")}if(m(A)){var C,M=this.cultures,K=A,H,D=K.length,L=[];for(H=0;H<D;H++){A=q(K[H]);var B,G=A.split(";");C=q(G[0]);if(G.length===1){B=1}else{A=q(G[1]);if(A.indexOf("q=")===0){A=A.substr(2);B=parseFloat(A);B=isNaN(B)?0:B}else{B=1}}L.push({lang:C,pri:B})}L.sort(function(O,N){if(O.pri<N.pri){return 1}else{if(O.pri>N.pri){return -1}}return 0});for(H=0;H<D;H++){C=L[H].lang;I=M[C];if(I){return I}}for(H=0;H<D;H++){C=L[H].lang;do{var J=C.lastIndexOf("-");if(J===-1){break}C=C.substr(0,J);I=M[C];if(I){return I}}while(1)}for(H=0;H<D;H++){C=L[H].lang;for(var F in M){var E=M[F];if(E.language==C){return E}}}}else{if(typeof A==="object"){return A}}return I||null};r.format=function(B,C,D){var A=this.findClosestCulture(D);if(B instanceof Date){B=o(B,C,A)}else{if(typeof B==="number"){B=i(B,C,A)}}return B};r.localize=function(A,B){return this.findClosestCulture(B).messages[A]||this.cultures["default"].messages[A]};r.parseDate=function(I,G,E){E=this.findClosestCulture(E);var C,A,B;if(G){if(typeof G==="string"){G=[G]}if(G.length){for(var F=0,D=G.length;F<D;F++){var H=G[F];if(H){C=e(I,H,E);if(C){break}}}}}else{B=E.calendar.patterns;for(A in B){C=e(I,B[A],E);if(C){break}}}return C||null};r.parseInt=function(B,A,C){return c(r.parseFloat(B,A,C))};r.parseFloat=function(O,H,J){if(typeof H!=="number"){J=H;H=10}var Q=this.findClosestCulture(J);var T=NaN,F=Q.numberFormat;if(O.indexOf(Q.numberFormat.currency.symbol)>-1){O=O.replace(Q.numberFormat.currency.symbol,"");O=O.replace(Q.numberFormat.currency["."],Q.numberFormat["."])}if(O.indexOf(Q.numberFormat.percent.symbol)>-1){O=O.replace(Q.numberFormat.percent.symbol,"")}O=O.replace(/ /g,"");if(l.test(O)){T=parseFloat(O)}else{if(!H&&w.test(O)){T=parseInt(O,16)}else{var C=b(O,F,F.pattern[0]),S=C[0],I=C[1];if(S===""&&F.pattern[0]!=="(n)"){C=b(O,F,"(n)");S=C[0];I=C[1]}if(S===""&&F.pattern[0]!=="-n"){C=b(O,F,"-n");S=C[0];I=C[1]}S=S||"+";var N,K,R=I.indexOf("e");if(R<0){R=I.indexOf("E")}if(R<0){K=I;N=null}else{K=I.substr(0,R);N=I.substr(R+1)}var P,G,D=F["."],A=K.indexOf(D);if(A<0){P=K;G=null}else{P=K.substr(0,A);G=K.substr(A+D.length)}var L=F[","];P=P.split(L).join("");var E=L.replace(/\u00A0/g," ");if(L!==E){P=P.split(E).join("")}var M=S+P;if(G!==null){M+="."+G}if(N!==null){var B=b(N,F,"-n");M+="e"+(B[0]||"+")+B[1]}if(x.test(M)){T=parseFloat(M)}}}return T};r.culture=function(A){if(typeof A!=="undefined"){this.cultureSelector=A}return this.findClosestCulture(A)||this.cultures["default"]}}(this));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqx-all.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqx-all.js
new file mode 100644 (file)
index 0000000..eb95a04
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+var jqxBaseFramework=window.minQuery||window.jQuery;(function(a){a.jqx=a.jqx||{};a.jqx.define=function(b,c,d){b[c]=function(){if(this.baseType){this.base=new b[this.baseType]();this.base.defineInstance()}this.defineInstance()};b[c].prototype.defineInstance=function(){};b[c].prototype.base=null;b[c].prototype.baseType=undefined;if(d&&b[d]){b[c].prototype.baseType=d}};a.jqx.invoke=function(e,d){if(d.length==0){return}var f=typeof(d)==Array||d.length>0?d[0]:d;var c=typeof(d)==Array||d.length>1?Array.prototype.slice.call(d,1):a({}).toArray();while(e[f]==undefined&&e.base!=null){if(e[f]!=undefined&&a.isFunction(e[f])){return e[f].apply(e,c)}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]!=undefined&&a.isFunction(e[b])){return e[b].apply(e,c)}}e=e.base}if(e[f]!=undefined&&a.isFunction(e[f])){return e[f].apply(e,c)}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]!=undefined&&a.isFunction(e[b])){return e[b].apply(e,c)}}return};a.jqx.hasProperty=function(c,b){if(typeof(b)=="object"){for(var e in b){var d=c;while(d){if(d.hasOwnProperty(e)){return true}if(d.hasOwnProperty(e.toLowerCase())){return true}d=d.base}return false}}else{while(c){if(c.hasOwnProperty(b)){return true}if(c.hasOwnProperty(b.toLowerCase())){return true}c=c.base}}return false};a.jqx.hasFunction=function(e,d){if(d.length==0){return false}if(e==undefined){return false}var f=typeof(d)==Array||d.length>0?d[0]:d;var c=typeof(d)==Array||d.length>1?Array.prototype.slice.call(d,1):{};while(e[f]==undefined&&e.base!=null){if(e[f]&&a.isFunction(e[f])){return true}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]&&a.isFunction(e[b])){return true}}e=e.base}if(e[f]&&a.isFunction(e[f])){return true}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]&&a.isFunction(e[b])){return true}}return false};a.jqx.isPropertySetter=function(c,b){if(b.length==1&&typeof(b[0])=="object"){return true}if(b.length==2&&typeof(b[0])=="string"&&!a.jqx.hasFunction(c,b)){return true}return false};a.jqx.validatePropertySetter=function(f,d,b){if(!a.jqx.propertySetterValidation){return true}if(d.length==1&&typeof(d[0])=="object"){for(var e in d[0]){var g=f;while(!g.hasOwnProperty(e)&&g.base){g=g.base}if(!g||!g.hasOwnProperty(e)){if(!b){var c=g.hasOwnProperty(e.toString().toLowerCase());if(!c){throw"Invalid property: "+e}else{return true}}return false}}return true}if(d.length!=2){if(!b){throw"Invalid property: "+d.length>=0?d[0]:""}return false}while(!f.hasOwnProperty(d[0])&&f.base){f=f.base}if(!f||!f.hasOwnProperty(d[0])){if(!b){throw"Invalid property: "+d[0]}return false}return true};a.jqx.set=function(f,e){var d=0;if(e.length==1&&typeof(e[0])=="object"){if(f.isInitialized&&Object.keys&&Object.keys(e[0]).length>1){var g=!f.base?f.element:f.base.element;var j=a.data(g,f.widgetName).initArgs;if(JSON&&JSON.stringify&&e[0]&&j[0]){try{if(JSON.stringify(e[0])==JSON.stringify(j[0])){return}}catch(h){}}f.batchUpdate=e[0];var b={};var c={};a.each(e[0],function(k,l){var m=f;while(!m.hasOwnProperty(k)&&m.base!=null){m=m.base}if(m.hasOwnProperty(k)){if(f[k]!=l){b[k]=f[k];c[k]=l;d++}}else{if(m.hasOwnProperty(k.toLowerCase())){if(f[k.toLowerCase()]!=l){b[k.toLowerCase()]=f[k.toLowerCase()];c[k.toLowerCase()]=l;d++}}}});if(d<2){f.batchUpdate=null}}a.each(e[0],function(k,l){var m=f;while(!m.hasOwnProperty(k)&&m.base!=null){m=m.base}if(m.hasOwnProperty(k)){a.jqx.setvalueraiseevent(m,k,l)}else{if(m.hasOwnProperty(k.toLowerCase())){a.jqx.setvalueraiseevent(m,k.toLowerCase(),l)}else{if(a.jqx.propertySetterValidation){throw"jqxCore: invalid property '"+k+"'"}}}});if(f.batchUpdate!=null){f.batchUpdate=null;if(f.propertiesChangedHandler&&d>1){f.propertiesChangedHandler(f,b,c)}}}else{if(e.length==2){while(!f.hasOwnProperty(e[0])&&f.base){f=f.base}if(f.hasOwnProperty(e[0])){a.jqx.setvalueraiseevent(f,e[0],e[1])}else{if(f.hasOwnProperty(e[0].toLowerCase())){a.jqx.setvalueraiseevent(f,e[0].toLowerCase(),e[1])}else{if(a.jqx.propertySetterValidation){throw"jqxCore: invalid property '"+e[0]+"'"}}}}}};a.jqx.setvalueraiseevent=function(c,d,e){var b=c[d];c[d]=e;if(!c.isInitialized){return}if(c.propertyChangedHandler!=undefined){c.propertyChangedHandler(c,d,b,e)}if(c.propertyChangeMap!=undefined&&c.propertyChangeMap[d]!=undefined){c.propertyChangeMap[d](c,d,b,e)}};a.jqx.get=function(e,d){if(d==undefined||d==null){return undefined}if(e.propertyMap){var c=e.propertyMap(d);if(c!=null){return c}}if(e.hasOwnProperty(d)){return e[d]}if(e.hasOwnProperty(d.toLowerCase())){return e[d.toLowerCase()]}var b=undefined;if(typeof(d)==Array){if(d.length!=1){return undefined}b=d[0]}else{if(typeof(d)=="string"){b=d}}while(!e.hasOwnProperty(b)&&e.base){e=e.base}if(e){return e[b]}return undefined};a.jqx.serialize=function(e){var b="";if(a.isArray(e)){b="[";for(var d=0;d<e.length;d++){if(d>0){b+=", "}b+=a.jqx.serialize(e[d])}b+="]"}else{if(typeof(e)=="object"){b="{";var c=0;for(var d in e){if(c++>0){b+=", "}b+=d+": "+a.jqx.serialize(e[d])}b+="}"}else{b=e.toString()}}return b};a.jqx.propertySetterValidation=true;a.jqx.jqxWidgetProxy=function(g,c,b){var d=a(c);var f=a.data(c,g);if(f==undefined){return undefined}var e=f.instance;if(a.jqx.hasFunction(e,b)){return a.jqx.invoke(e,b)}if(a.jqx.isPropertySetter(e,b)){if(a.jqx.validatePropertySetter(e,b)){a.jqx.set(e,b);return undefined}}else{if(typeof(b)=="object"&&b.length==0){return}else{if(typeof(b)=="object"&&b.length==1&&a.jqx.hasProperty(e,b[0])){return a.jqx.get(e,b[0])}else{if(typeof(b)=="string"&&a.jqx.hasProperty(e,b[0])){return a.jqx.get(e,b)}}}}throw"jqxCore: Invalid parameter '"+a.jqx.serialize(b)+"' does not exist.";return undefined};a.jqx.applyWidget=function(c,d,k,l){var g=false;try{g=window.MSApp!=undefined}catch(f){}var m=a(c);if(!l){l=new a.jqx["_"+d]()}else{l.host=m;l.element=c}if(c.id==""){c.id=a.jqx.utilities.createId()}var j={host:m,element:c,instance:l,initArgs:k};l.widgetName=d;a.data(c,d,j);a.data(c,"jqxWidget",j.instance);var h=new Array();var l=j.instance;while(l){l.isInitialized=false;h.push(l);l=l.base}h.reverse();h[0].theme=a.jqx.theme||"";a.jqx.jqxWidgetProxy(d,c,k);for(var b in h){l=h[b];if(b==0){l.host=m;l.element=c;l.WinJS=g}if(l!=undefined){if(l.definedInstance){l.definedInstance()}if(l.createInstance!=null){if(g){MSApp.execUnsafeLocalFunction(function(){l.createInstance(k)})}else{l.createInstance(k)}}}}for(var b in h){if(h[b]!=undefined){h[b].isInitialized=true}}if(g){MSApp.execUnsafeLocalFunction(function(){j.instance.refresh(true)})}else{j.instance.refresh(true)}};a.jqx.jqxWidget=function(b,c,f){var j=false;try{jqxArgs=Array.prototype.slice.call(f,0)}catch(h){jqxArgs=""}try{j=window.MSApp!=undefined}catch(h){}var g=b;var l="";if(c){l="_"+c}a.jqx.define(a.jqx,"_"+g,l);var k=new Array();if(!window[g]){var d=function(m){if(m==null){return""}var e=a.type(m);switch(e){case"string":case"number":case"date":case"boolean":case"bool":if(m===null){return""}return m.toString()}var n="";a.each(m,function(p){var r=this;if(p>0){n+=", "}n+="[";var o=0;if(a.type(r)=="object"){for(var q in r){if(o>0){n+=", "}n+="{"+q+":"+r[q]+"}";o++}}else{if(o>0){n+=", "}n+="{"+p+":"+r+"}";o++}n+="]"});return n};window[g]=function(e,r){var m=[];if(!r){r={}}m.push(r);var n=e;if(a.type(n)==="object"&&e[0]){n=e[0].id;if(n===""){n=e[0].id=a.jqx.utilities.createId()}}if(window.jqxWidgets&&window.jqxWidgets[n]){if(r){a.each(window.jqxWidgets[n],function(s){var t=a(this.element).data();if(t&&t.jqxWidget){a(this.element)[g](r)}})}if(window.jqxWidgets[n].length==1){var p=a(window.jqxWidgets[n][0].widgetInstance.element).data();if(p&&p.jqxWidget){return window.jqxWidgets[n][0]}}var p=a(window.jqxWidgets[n][0].widgetInstance.element).data();if(p&&p.jqxWidget){return window.jqxWidgets[n]}}var o=a(e);if(o.length===0){throw new Error("Invalid Selector - "+e+"! Please, check whether the used ID or CSS Class name is correct.")}var q=[];a.each(o,function(v){var x=o[v];var u=null;if(!k[g]){var y=x.id;x.id="";u=a(x).clone();x.id=y}a.jqx.applyWidget(x,g,m,undefined);if(!k[g]){var t=a.data(x,"jqxWidget");var w=u[g]().data().jqxWidget.defineInstance();var s=function(A){var z=a.data(A,"jqxWidget");this.widgetInstance=z;var B=a.extend(this,z);B.on=function(C,D){B.addHandler(B.host,C,D)};B.off=function(C){B.removeHandler(B.host,C)};return B};k[g]=s;a.each(w,function(A,z){Object.defineProperty(s.prototype,A,{get:function(){if(this.widgetInstance){return this.widgetInstance[A]}return z},set:function(C){if(this.widgetInstance&&this.widgetInstance[A]!=C){if(this.widgetInstance[A]!=C&&d(this.widgetInstance[A])!=d(C)){var B={};B[A]=C;this.widgetInstance.host[g](B);this.widgetInstance[A]=C}}}})})}var t=new k[g](x);q.push(t);if(!window.jqxWidgets){window.jqxWidgets=new Array()}if(!window.jqxWidgets[n]){window.jqxWidgets[n]=new Array()}window.jqxWidgets[n].push(t)});if(q.length===1){return q[0]}return q}}a.fn[g]=function(){var e=Array.prototype.slice.call(arguments,0);if(e.length==0||(e.length==1&&typeof(e[0])=="object")){if(this.length==0){if(this.selector){throw new Error("Invalid Selector - "+this.selector+"! Please, check whether the used ID or CSS Class name is correct.")}else{throw new Error("Invalid Selector! Please, check whether the used ID or CSS Class name is correct.")}}return this.each(function(){var p=a(this);var o=this;var q=a.data(o,g);if(q==null){a.jqx.applyWidget(o,g,e,undefined)}else{a.jqx.jqxWidgetProxy(g,this,e)}})}else{if(this.length==0){if(this.selector){throw new Error("Invalid Selector - "+this.selector+"! Please, check whether the used ID or CSS Class name is correct.")}else{throw new Error("Invalid Selector! Please, check whether the used ID or CSS Class name is correct.")}}var n=null;var m=0;this.each(function(){var o=a.jqx.jqxWidgetProxy(g,this,e);if(m==0){n=o;m++}else{if(m==1){var p=[];p.push(n);n=p}n.push(o)}})}return n};try{a.extend(a.jqx["_"+g].prototype,Array.prototype.slice.call(f,0)[0])}catch(h){}a.extend(a.jqx["_"+g].prototype,{toThemeProperty:function(e,m){return a.jqx.toThemeProperty(this,e,m)}});a.jqx["_"+g].prototype.refresh=function(){if(this.base){this.base.refresh(true)}};a.jqx["_"+g].prototype.createInstance=function(){};a.jqx["_"+g].prototype.applyTo=function(n,m){if(!(m instanceof Array)){var e=[];e.push(m);m=e}a.jqx.applyWidget(n,g,m,this)};a.jqx["_"+g].prototype.getInstance=function(){return this};a.jqx["_"+g].prototype.propertyChangeMap={};a.jqx["_"+g].prototype.addHandler=function(o,e,m,n){a.jqx.addHandler(o,e,m,n)};a.jqx["_"+g].prototype.removeHandler=function(n,e,m){a.jqx.removeHandler(n,e,m)}};a.jqx.toThemeProperty=function(c,d,h){if(c.theme==""){return d}var g=d.split(" ");var b="";for(var f=0;f<g.length;f++){if(f>0){b+=" "}var e=g[f];if(h!=null&&h){b+=e+"-"+c.theme}else{b+=e+" "+e+"-"+c.theme}}return b};a.jqx.addHandler=function(g,h,e,f){var c=h.split(" ");for(var b=0;b<c.length;b++){var d=c[b];if(window.addEventListener){switch(d){case"mousewheel":if(a.jqx.browser.mozilla){g[0].addEventListener("DOMMouseScroll",e,false)}else{g[0].addEventListener("mousewheel",e,false)}continue;case"mousemove":if(!f){g[0].addEventListener("mousemove",e,false);continue}break}}if(f==undefined||f==null){if(g.on){g.on(d,e)}else{g.bind(d,e)}}else{if(g.on){g.on(d,f,e)}else{g.bind(d,f,e)}}}};a.jqx.removeHandler=function(f,g,e){if(!g){if(f.off){f.off()}else{f.unbind()}return}var c=g.split(" ");for(var b=0;b<c.length;b++){var d=c[b];if(window.removeEventListener){switch(d){case"mousewheel":if(a.jqx.browser.mozilla){f[0].removeEventListener("DOMMouseScroll",e,false)}else{f[0].removeEventListener("mousewheel",e,false)}continue;case"mousemove":if(e){f[0].removeEventListener("mousemove",e,false);continue}break}}if(d==undefined){if(f.off){f.off()}else{f.unbind()}continue}if(e==undefined){if(f.off){f.off(d)}else{f.unbind(d)}}else{if(f.off){f.off(d,e)}else{f.unbind(d,e)}}}};a.jqx.theme=a.jqx.theme||"";a.jqx.resizeDelay=a.jqx.resizeDelay||10;a.jqx.ready=function(){a(window).trigger("jqxReady")};a.jqx.init=function(){a.each(arguments[0],function(b,c){if(b=="theme"){a.jqx.theme=c}if(b=="scrollBarSize"){a.jqx.utilities.scrollBarSize=c}if(b=="touchScrollBarSize"){a.jqx.utilities.touchScrollBarSize=c}if(b=="scrollBarButtonsVisibility"){a.jqx.utilities.scrollBarButtonsVisibility=c}})};a.jqx.utilities=a.jqx.utilities||{};a.extend(a.jqx.utilities,{scrollBarSize:15,touchScrollBarSize:10,scrollBarButtonsVisibility:"visible",createId:function(){var b=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return"jqxWidget"+b()+b()},setTheme:function(f,g,e){if(typeof e==="undefined"){return}var h=e[0].className.split(" "),b=[],j=[],d=e.children();for(var c=0;c<h.length;c+=1){if(h[c].indexOf(f)>=0){if(f.length>0){b.push(h[c]);j.push(h[c].replace(f,g))}else{j.push(h[c].replace("-"+g,"")+"-"+g)}}}this._removeOldClasses(b,e);this._addNewClasses(j,e);for(var c=0;c<d.length;c+=1){this.setTheme(f,g,a(d[c]))}},_removeOldClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.removeClass(d[b])}},_addNewClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.addClass(d[b])}},getOffset:function(b){var d=a.jqx.mobile.getLeftPos(b[0]);var c=a.jqx.mobile.getTopPos(b[0]);return{top:c,left:d}},resize:function(d,m,l,k){if(k===undefined){k=true}var g=-1;var f=this;var c=function(o){if(!f.hiddenWidgets){return -1}var p=-1;for(var n=0;n<f.hiddenWidgets.length;n++){if(o.id){if(f.hiddenWidgets[n].id==o.id){p=n;break}}else{if(f.hiddenWidgets[n].id==o[0].id){p=n;break}}}return p};if(this.resizeHandlers){for(var e=0;e<this.resizeHandlers.length;e++){if(d.id){if(this.resizeHandlers[e].id==d.id){g=e;break}}else{if(this.resizeHandlers[e].id==d[0].id){g=e;break}}}if(l===true){if(g!=-1){this.resizeHandlers.splice(g,1)}if(this.resizeHandlers.length==0){var j=a(window);if(j.off){j.off("resize.jqx");j.off("orientationchange.jqx");j.off("orientationchanged.jqx")}else{j.unbind("resize.jqx");j.unbind("orientationchange.jqx");j.unbind("orientationchanged.jqx")}this.resizeHandlers=null}var b=c(d);if(b!=-1&&this.hiddenWidgets){this.hiddenWidgets.splice(b,1)}return}}else{if(l===true){var b=c(d);if(b!=-1&&this.hiddenWidgets){this.hiddenWidgets.splice(b,1)}return}}var f=this;var h=function(p,x){if(!f.resizeHandlers){return}var y=function(C){var B=-1;var D=C.parentNode;while(D){B++;D=D.parentNode}return B};var o=function(E,C){if(!E.widget||!C.widget){return 0}var D=y(E.widget[0]);var B=y(C.widget[0]);try{if(D<B){return -1}if(D>B){return 1}}catch(F){var G=F}return 0};var q=function(C){if(f.hiddenWidgets.length>0){f.hiddenWidgets.sort(o);var B=function(){var E=false;var G=new Array();for(var F=0;F<f.hiddenWidgets.length;F++){var D=f.hiddenWidgets[F];if(a.jqx.isHidden(D.widget)){E=true;G.push(D)}else{if(D.callback){D.callback(x)}}}f.hiddenWidgets=G;if(!E){clearInterval(f.__resizeInterval)}};if(C==false){B();if(f.__resizeInterval){clearInterval(f.__resizeInterval)}return}if(f.__resizeInterval){clearInterval(f.__resizeInterval)}f.__resizeInterval=setInterval(function(){B()},100)}};if(f.hiddenWidgets&&f.hiddenWidgets.length>0){q(false)}f.hiddenWidgets=new Array();f.resizeHandlers.sort(o);for(var u=0;u<f.resizeHandlers.length;u++){var A=f.resizeHandlers[u];var w=A.widget;var t=A.data;if(!t){continue}if(!t.jqxWidget){continue}var n=t.jqxWidget.width;var z=t.jqxWidget.height;if(t.jqxWidget.base){if(n==undefined){n=t.jqxWidget.base.width}if(z==undefined){z=t.jqxWidget.base.height}}if(n===undefined&&z===undefined){n=t.jqxWidget.element.style.width;z=t.jqxWidget.element.style.height}var v=false;if(n!=null&&n.toString().indexOf("%")!=-1){v=true}if(z!=null&&z.toString().indexOf("%")!=-1){v=true}if(a.jqx.isHidden(w)){if(c(w)===-1){if(v||p===true){if(A.data.nestedWidget!==true){f.hiddenWidgets.push(A)}}}}else{if(p===undefined||p!==true){if(v){A.callback(x);if(f.hiddenWidgets.indexOf(A)>=0){f.hiddenWidgets.splice(f.hiddenWidgets.indexOf(A),1)}}if(t.jqxWidget.element){var r=t.jqxWidget.element.className;if(r.indexOf("dropdownlist")>=0||r.indexOf("datetimeinput")>=0||r.indexOf("combobox")>=0||r.indexOf("menu")>=0){if(t.jqxWidget.isOpened){var s=t.jqxWidget.isOpened();if(s){t.jqxWidget.close()}}}}}}}q()};if(!this.resizeHandlers){this.resizeHandlers=new Array();var j=a(window);if(j.on){this._resizeTimer=null;this._initResize=null;j.on("resize.jqx",function(n){if(f._resizeTimer!=undefined){clearTimeout(f._resizeTimer)}if(!f._initResize){f._initResize=true;h(null,"resize")}else{f._resizeTimer=setTimeout(function(){h(null,"resize")},a.jqx.resizeDelay)}});j.on("orientationchange.jqx",function(n){h(null,"orientationchange")});j.on("orientationchanged.jqx",function(n){h(null,"orientationchange")})}else{j.bind("resize.jqx",function(n){h(null,"orientationchange")});j.bind("orientationchange.jqx",function(n){h(null,"orientationchange")});j.bind("orientationchanged.jqx",function(n){h(null,"orientationchange")})}}if(k){if(g===-1){this.resizeHandlers.push({id:d[0].id,widget:d,callback:m,data:d.data()})}}if(a.jqx.isHidden(d)&&k===true){h(true)}a.jqx.resize=function(){h(null,"resize")}},html:function(c,d){if(!a(c).on){return a(c).html(d)}try{return a.access(c,function(s){var f=c[0]||{},m=0,j=c.length;if(s===undefined){return f.nodeType===1?f.innerHTML.replace(rinlinejQuery,""):undefined}var r=/<(?:script|style|link)/i,n="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",h=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,p=/<([\w:]+)/,g=/<(?:script|object|embed|option|style)/i,k=new RegExp("<(?:"+n+")[\\s/>]","i"),q=/^\s+/,t={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};if(typeof s==="string"&&!r.test(s)&&(a.support.htmlSerialize||!k.test(s))&&(a.support.leadingWhitespace||!q.test(s))&&!t[(p.exec(s)||["",""])[1].toLowerCase()]){s=s.replace(h,"<$1></$2>");try{for(;m<j;m++){f=this[m]||{};if(f.nodeType===1){a.cleanData(f.getElementsByTagName("*"));f.innerHTML=s}}f=0}catch(o){}}if(f){c.empty().append(s)}},null,d,arguments.length)}catch(b){return a(c).html(d)}},hasTransform:function(d){var c="";c=d.css("transform");if(c==""||c=="none"){c=d.parents().css("transform");if(c==""||c=="none"){var b=a.jqx.utilities.getBrowser();if(b.browser=="msie"){c=d.css("-ms-transform");if(c==""||c=="none"){c=d.parents().css("-ms-transform")}}else{if(b.browser=="chrome"){c=d.css("-webkit-transform");if(c==""||c=="none"){c=d.parents().css("-webkit-transform")}}else{if(b.browser=="opera"){c=d.css("-o-transform");if(c==""||c=="none"){c=d.parents().css("-o-transform")}}else{if(b.browser=="mozilla"){c=d.css("-moz-transform");if(c==""||c=="none"){c=d.parents().css("-moz-transform")}}}}}}else{return c!=""&&c!="none"}}if(c==""||c=="none"){c=a(document.body).css("transform")}return c!=""&&c!="none"&&c!=null},getBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(c)||/(webkit)[ \/]([\w.]+)/.exec(c)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(c)||/(msie) ([\w.]+)/.exec(c)||c.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(c)||[];var d={browser:b[1]||"",version:b[2]||"0"};if(c.indexOf("rv:11.0")>=0&&c.indexOf(".net4.0c")>=0){d.browser="msie";d.version="11";b[1]="msie"}if(c.indexOf("edge")>=0){d.browser="msie";d.version="12";b[1]="msie"}d[b[1]]=b[1];return d}});a.jqx.browser=a.jqx.utilities.getBrowser();a.jqx.isHidden=function(c){if(!c||!c[0]){return false}var b=c[0].offsetWidth,d=c[0].offsetHeight;if(b===0||d===0){return true}else{return false}};a.jqx.ariaEnabled=true;a.jqx.aria=function(c,e,d){if(!a.jqx.ariaEnabled){return}if(e==undefined){a.each(c.aria,function(g,h){var k=!c.base?c.host.attr(g):c.base.host.attr(g);if(k!=undefined&&!a.isFunction(k)){var j=k;switch(h.type){case"number":j=new Number(k);if(isNaN(j)){j=k}break;case"boolean":j=k=="true"?true:false;break;case"date":j=new Date(k);if(j=="Invalid Date"||isNaN(j)){j=k}break}c[h.name]=j}else{var k=c[h.name];if(a.isFunction(k)){k=c[h.name]()}if(k==undefined){k=""}try{!c.base?c.host.attr(g,k.toString()):c.base.host.attr(g,k.toString())}catch(f){}}})}else{try{if(c.host){if(!c.base){if(c.host){if(c.element.setAttribute){c.element.setAttribute(e,d.toString())}else{c.host.attr(e,d.toString())}}else{c.attr(e,d.toString())}}else{if(c.base.host){c.base.host.attr(e,d.toString())}else{c.attr(e,d.toString())}}}else{if(c.setAttribute){c.setAttribute(e,d.toString())}}}catch(b){}}};if(!Array.prototype.indexOf){Array.prototype.indexOf=function(c){var b=this.length;var d=Number(arguments[1])||0;d=(d<0)?Math.ceil(d):Math.floor(d);if(d<0){d+=b}for(;d<b;d++){if(d in this&&this[d]===c){return d}}return -1}}a.jqx.mobile=a.jqx.mobile||{};a.jqx.position=function(b){var e=parseInt(b.pageX);var d=parseInt(b.pageY);if(a.jqx.mobile.isTouchDevice()){var c=a.jqx.mobile.getTouches(b);var f=c[0];e=parseInt(f.pageX);d=parseInt(f.pageY)}return{left:e,top:d}};a.extend(a.jqx.mobile,{_touchListener:function(h,f){var b=function(j,l){var k=document.createEvent("MouseEvents");k.initMouseEvent(j,l.bubbles,l.cancelable,l.view,l.detail,l.screenX,l.screenY,l.clientX,l.clientY,l.ctrlKey,l.altKey,l.shiftKey,l.metaKey,l.button,l.relatedTarget);k._pageX=l.pageX;k._pageY=l.pageY;return k};var g={mousedown:"touchstart",mouseup:"touchend",mousemove:"touchmove"};var d=b(g[h.type],h);h.target.dispatchEvent(d);var c=h.target["on"+g[h.type]];if(typeof c==="function"){c(h)}},setMobileSimulator:function(c,e){if(this.isTouchDevice()){return}this.simulatetouches=true;if(e==false){this.simulatetouches=false}var d={mousedown:"touchstart",mouseup:"touchend",mousemove:"touchmove"};var b=this;if(window.addEventListener){var f=function(){for(var g in d){if(c.addEventListener){c.removeEventListener(g,b._touchListener);c.addEventListener(g,b._touchListener,false)}}};if(a.jqx.browser.msie){f()}else{f()}}},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var c="Browser CodeName: "+navigator.appCodeName+"";c+="Browser Name: "+navigator.appName+"";c+="Browser Version: "+navigator.appVersion+"";c+="Platform: "+navigator.platform+"";c+="User-agent header: "+navigator.userAgent+"";if(c.indexOf("Android")!=-1){return true}if(c.indexOf("IEMobile")!=-1){return true}if(c.indexOf("Windows Phone")!=-1){return true}if(c.indexOf("WPDesktop")!=-1){return true}if(c.indexOf("ZuneWP7")!=-1){return true}if(c.indexOf("BlackBerry")!=-1&&c.indexOf("Mobile Safari")!=-1){return true}if(c.indexOf("ipod")!=-1){return true}if(c.indexOf("nokia")!=-1||c.indexOf("Nokia")!=-1){return true}if(c.indexOf("Chrome/17")!=-1){return false}if(c.indexOf("CrOS")!=-1){return false}if(c.indexOf("Opera")!=-1&&c.indexOf("Mobi")==-1&&c.indexOf("Mini")==-1&&c.indexOf("Platform: Win")!=-1){return false}if(c.indexOf("Opera")!=-1&&c.indexOf("Mobi")!=-1&&c.indexOf("Opera Mobi")!=-1){return true}var d={ios:"i(?:Pad|Phone|Pod)(?:.*)CPU(?: iPhone)? OS ",android:"(Android |HTC_|Silk/)",blackberry:"BlackBerry(?:.*)Version/",rimTablet:"RIM Tablet OS ",webos:"(?:webOS|hpwOS)/",bada:"Bada/"};try{if(this.touchDevice!=undefined){return this.touchDevice}this.touchDevice=false;for(i in d){if(d.hasOwnProperty(i)){prefix=d[i];match=c.match(new RegExp("(?:"+prefix+")([^\\s;]+)"));if(match){if(i.toString()=="blackberry"){this.touchDevice=false;return false}this.touchDevice=true;return true}}}var f=navigator.userAgent;if(navigator.platform.toLowerCase().indexOf("win")!=-1){if(f.indexOf("Windows Phone")>=0||f.indexOf("WPDesktop")>=0||f.indexOf("IEMobile")>=0||f.indexOf("ZuneWP7")>=0){this.touchDevice=true;return true}else{if(f.indexOf("Touch")>=0){var b=("MSPointerDown" in window)||("pointerdown" in window);if(b){this.touchDevice=true;return true}if(f.indexOf("ARM")>=0){this.touchDevice=true;return true}this.touchDevice=false;return false}}}if(navigator.platform.toLowerCase().indexOf("win")!=-1){this.touchDevice=false;return false}if(("ontouchstart" in window)||window.DocumentTouch&&document instanceof DocumentTouch){this.touchDevice=true}return this.touchDevice}catch(g){this.touchDevice=false;return false}},getLeftPos:function(b){var c=b.offsetLeft;while((b=b.offsetParent)!=null){if(b.tagName!="HTML"){c+=b.offsetLeft;if(document.all){c+=b.clientLeft}}}return c},getTopPos:function(c){var e=c.offsetTop;var b=a(c).coord();while((c=c.offsetParent)!=null){if(c.tagName!="HTML"){e+=(c.offsetTop-c.scrollTop);if(document.all){e+=c.clientTop}}}var d=navigator.userAgent.toLowerCase();var f=(d.indexOf("windows phone")!=-1||d.indexOf("WPDesktop")!=-1||d.indexOf("ZuneWP7")!=-1||d.indexOf("msie 9")!=-1||d.indexOf("msie 11")!=-1||d.indexOf("msie 10")!=-1)&&d.indexOf("touch")!=-1;if(f){return b.top}if(this.isSafariMobileBrowser()){if(this.isSafari4MobileBrowser()&&this.isIPadSafariMobileBrowser()){return e}if(d.indexOf("version/7")!=-1){return b.top}if(d.indexOf("version/6")!=-1||d.indexOf("version/5")!=-1){e=e+a(window).scrollTop()}return b.top}return e},isChromeMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("android")!=-1;return b},isOperaMiniMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("opera mini")!=-1||c.indexOf("opera mobi")!=-1;return b},isOperaMiniBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("opera mini")!=-1;return b},isNewSafariMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("ipod")!=-1;b=b&&(c.indexOf("version/5")!=-1);return b},isSafari4MobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("ipod")!=-1;b=b&&(c.indexOf("version/4")!=-1);return b},isWindowsPhone:function(){var c=navigator.userAgent.toLowerCase();var b=(c.indexOf("windows phone")!=-1||c.indexOf("WPDesktop")!=-1||c.indexOf("ZuneWP7")!=-1||c.indexOf("msie 9")!=-1||c.indexOf("msie 11")!=-1||c.indexOf("msie 10")!=-1&&c.indexOf("touch")!=-1);return b},isSafariMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("ipod")!=-1;return b},isIPadSafariMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1;return b},isMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("android")!=-1;return b},getTouches:function(b){if(b.originalEvent){if(b.originalEvent.touches&&b.originalEvent.touches.length){return b.originalEvent.touches}else{if(b.originalEvent.changedTouches&&b.originalEvent.changedTouches.length){return b.originalEvent.changedTouches}}}if(!b.touches){b.touches=new Array();b.touches[0]=b.originalEvent!=undefined?b.originalEvent:b;if(b.originalEvent!=undefined&&b.pageX){b.touches[0]=b}if(b.type=="mousemove"){b.touches[0]=b}}return b.touches},getTouchEventName:function(b){if(this.isWindowsPhone()){var c=navigator.userAgent.toLowerCase();if(c.indexOf("windows phone 8.1")!=-1){if(b.toLowerCase().indexOf("start")!=-1){return"pointerdown"}if(b.toLowerCase().indexOf("move")!=-1){return"pointermove"}if(b.toLowerCase().indexOf("end")!=-1){return"pointerup"}}if(b.toLowerCase().indexOf("start")!=-1){return"MSPointerDown"}if(b.toLowerCase().indexOf("move")!=-1){return"MSPointerMove"}if(b.toLowerCase().indexOf("end")!=-1){return"MSPointerUp"}}else{return b}},dispatchMouseEvent:function(b,f,d){if(this.simulatetouches){return}var c=document.createEvent("MouseEvent");c.initMouseEvent(b,true,true,f.view,1,f.screenX,f.screenY,f.clientX,f.clientY,false,false,false,false,0,null);if(d!=null){d.dispatchEvent(c)}},getRootNode:function(b){while(b.nodeType!==1){b=b.parentNode}return b},setTouchScroll:function(b,c){if(!this.enableScrolling){this.enableScrolling=[]}this.enableScrolling[c]=b},touchScroll:function(d,y,g,D,b,k){if(d==null){return}var B=this;var t=0;var j=0;var l=0;var u=0;var m=0;var n=0;if(!this.scrolling){this.scrolling=[]}this.scrolling[D]=false;var h=false;var q=a(d);var v=["select","input","textarea"];var c=0;var e=0;if(!this.enableScrolling){this.enableScrolling=[]}this.enableScrolling[D]=true;var D=D;var C=this.getTouchEventName("touchstart")+".touchScroll";var p=this.getTouchEventName("touchend")+".touchScroll";var A=this.getTouchEventName("touchmove")+".touchScroll";var c=function(E){if(!B.enableScrolling[D]){return true}if(a.inArray(E.target.tagName.toLowerCase(),v)!==-1){return}var F=B.getTouches(E);var G=F[0];if(F.length==1){B.dispatchMouseEvent("mousedown",G,B.getRootNode(G.target))}h=false;j=G.pageY;m=G.pageX;if(B.simulatetouches){if(G._pageY!=undefined){j=G._pageY;m=G._pageX}}B.scrolling[D]=true;t=0;u=0;return true};if(q.on){q.on(C,c)}else{q.bind(C,c)}var x=function(J){if(!B.enableScrolling[D]){return true}if(!B.scrolling[D]){return true}var L=B.getTouches(J);if(L.length>1){return true}var H=L[0].pageY;var I=L[0].pageX;if(B.simulatetouches){if(L[0]._pageY!=undefined){H=L[0]._pageY;I=L[0]._pageX}}var E=H-j;var F=I-m;e=H;touchHorizontalEnd=I;l=E-t;n=F-u;h=true;t=E;u=F;var G=b!=null?b[0].style.visibility!="hidden":true;var K=k!=null?k[0].style.visibility!="hidden":true;if(G||K){if((n!==0&&G)||(l!==0&&K)){g(-n*1,-l*1,F,E,J);J.preventDefault();J.stopPropagation();if(J.preventManipulation){J.preventManipulation()}return false}}};if(q.on){q.on(A,x)}else{q.bind(A,x)}if(this.simulatetouches){var o=a(window).on!=undefined||a(window).bind;var z=function(E){B.scrolling[D]=false};a(window).on!=undefined?a(document).on("mouseup.touchScroll",z):a(document).bind("mouseup.touchScroll",z);if(window.frameElement){if(window.top!=null){var r=function(E){B.scrolling[D]=false};if(window.top.document){a(window.top.document).on?a(window.top.document).on("mouseup",r):a(window.top.document).bind("mouseup",r)}}}var s=a(document).on!=undefined||a(document).bind;var w=function(E){if(!B.scrolling[D]){return true}B.scrolling[D]=false;var G=B.getTouches(E)[0],F=B.getRootNode(G.target);B.dispatchMouseEvent("mouseup",G,F);B.dispatchMouseEvent("click",G,F)};a(document).on!=undefined?a(document).on("touchend",w):a(document).bind("touchend",w)}var f=function(E){if(!B.enableScrolling[D]){return true}var G=B.getTouches(E)[0];if(!B.scrolling[D]){return true}B.scrolling[D]=false;if(h){B.dispatchMouseEvent("mouseup",G,F)}else{var G=B.getTouches(E)[0],F=B.getRootNode(G.target);B.dispatchMouseEvent("mouseup",G,F);B.dispatchMouseEvent("click",G,F);return true}};if(q.on){q.on("dragstart",function(E){E.preventDefault()});q.on("selectstart",function(E){E.preventDefault()})}q.on?q.on(p+" touchcancel.touchScroll",f):q.bind(p+" touchcancel.touchScroll",f)}});a.jqx.cookie=a.jqx.cookie||{};a.extend(a.jqx.cookie,{cookie:function(e,f,c){if(arguments.length>1&&String(f)!=="[object Object]"){c=a.extend({},c);if(f===null||f===undefined){c.expires=-1}if(typeof c.expires==="number"){var h=c.expires,d=c.expires=new Date();d.setDate(d.getDate()+h)}f=String(f);return(document.cookie=[encodeURIComponent(e),"=",c.raw?f:encodeURIComponent(f),c.expires?"; expires="+c.expires.toUTCString():"",c.path?"; path="+c.path:"",c.domain?"; domain="+c.domain:"",c.secure?"; secure":""].join(""))}c=f||{};var b,g=c.raw?function(j){return j}:decodeURIComponent;return(b=new RegExp("(?:^|; )"+encodeURIComponent(e)+"=([^;]*)").exec(document.cookie))?g(b[1]):null}});a.jqx.string=a.jqx.string||{};a.extend(a.jqx.string,{replace:function(f,d,e){if(d===e){return this}var b=f;var c=b.indexOf(d);while(c!=-1){b=b.replace(d,e);c=b.indexOf(d)}return b},contains:function(b,c){if(b==null||c==null){return false}return b.indexOf(c)!=-1},containsIgnoreCase:function(b,c){if(b==null||c==null){return false}return b.toString().toUpperCase().indexOf(c.toString().toUpperCase())!=-1},equals:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);if(c.length==b.length){return b.slice(0,c.length)==c}return false},equalsIgnoreCase:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);if(c.length==b.length){return b.toUpperCase().slice(0,c.length)==c.toUpperCase()}return false},startsWith:function(b,c){if(b==null||c==null){return false}return b.slice(0,c.length)==c},startsWithIgnoreCase:function(b,c){if(b==null||c==null){return false}return b.toUpperCase().slice(0,c.length)==c.toUpperCase()},normalize:function(b){if(b.charCodeAt(b.length-1)==65279){b=b.substring(0,b.length-1)}return b},endsWith:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);return b.slice(-c.length)==c},endsWithIgnoreCase:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);return b.toUpperCase().slice(-c.length)==c.toUpperCase()}});a.extend(a.easing,{easeOutBack:function(f,g,e,k,j,h){if(h==undefined){h=1.70158}return k*((g=g/j-1)*g*((h+1)*g+h)+1)+e},easeInQuad:function(f,g,e,j,h){return j*(g/=h)*g+e},easeInOutCirc:function(f,g,e,j,h){if((g/=h/2)<1){return -j/2*(Math.sqrt(1-g*g)-1)+e}return j/2*(Math.sqrt(1-(g-=2)*g)+1)+e},easeInOutSine:function(f,g,e,j,h){return -j/2*(Math.cos(Math.PI*g/h)-1)+e},easeInCubic:function(f,g,e,j,h){return j*(g/=h)*g*g+e},easeOutCubic:function(f,g,e,j,h){return j*((g=g/h-1)*g*g+1)+e},easeInOutCubic:function(f,g,e,j,h){if((g/=h/2)<1){return j/2*g*g*g+e}return j/2*((g-=2)*g*g+2)+e},easeInSine:function(f,g,e,j,h){return -j*Math.cos(g/h*(Math.PI/2))+j+e},easeOutSine:function(f,g,e,j,h){return j*Math.sin(g/h*(Math.PI/2))+e},easeInOutSine:function(f,g,e,j,h){return -j/2*(Math.cos(Math.PI*g/h)-1)+e}})})(jqxBaseFramework);(function(b){b.extend(b.event.special,{close:{noBubble:true},open:{noBubble:true},cellclick:{noBubble:true},rowclick:{noBubble:true},tabclick:{noBubble:true},selected:{noBubble:true},expanded:{noBubble:true},collapsed:{noBubble:true},valuechanged:{noBubble:true},expandedItem:{noBubble:true},collapsedItem:{noBubble:true},expandingItem:{noBubble:true},collapsingItem:{noBubble:true}});b.fn.extend({ischildof:function(f){var d=b(this).parents().get();for(var c=0;c<d.length;c++){if(typeof f!="string"){var e=d[c];if(f!==undefined){if(e==f[0]){return true}}}else{if(f!==undefined){if(b(d[c]).is(f)){return true}}}}return false}});b.fn.jqxProxy=function(){var e=b(this).data().jqxWidget;var c=Array.prototype.slice.call(arguments,0);var d=e.element;if(!d){d=e.base.element}return b.jqx.jqxWidgetProxy(e.widgetName,d,c)};var a=this.originalVal=b.fn.val;b.fn.val=function(d){if(typeof d=="undefined"){if(b(this).hasClass("jqx-widget")){var c=b(this).data().jqxWidget;if(c&&c.val){return c.val()}}return a.call(this)}else{if(b(this).hasClass("jqx-widget")){var c=b(this).data().jqxWidget;if(c&&c.val){if(arguments.length!=2){return c.val(d)}else{return c.val(d,arguments[1])}}}return a.call(this,d)}};if(b.fn.modal&&b.fn.modal.Constructor){b.fn.modal.Constructor.prototype.enforceFocus=function(){b(document).off("focusin.bs.modal").on("focusin.bs.modal",b.proxy(function(c){if(this.$element[0]!==c.target&&!this.$element.has(c.target).length){if(b(c.target).parents().hasClass("jqx-popup")){return true}this.$element.trigger("focus")}},this))}}b.fn.coord=function(o){var e,k,j={top:0,left:0},f=this[0],m=f&&f.ownerDocument;if(!m){return}e=m.documentElement;if(!b.contains(e,f)){return j}if(typeof f.getBoundingClientRect!==undefined){j=f.getBoundingClientRect()}var d=function(p){return b.isWindow(p)?p:p.nodeType===9?p.defaultView||p.parentWindow:false};k=d(m);var h=0;var c=0;var g=navigator.userAgent.toLowerCase();var n=g.indexOf("ipad")!=-1||g.indexOf("iphone")!=-1;if(n){h=2}if(true==o){if(b(document.body).css("position")!="static"){var l=b(document.body).coord();h=-l.left;c=-l.top}}return{top:c+j.top+(k.pageYOffset||e.scrollTop)-(e.clientTop||0),left:h+j.left+(k.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}}})(jqxBaseFramework);(function(i){i.jqx.observableArray=function(e,J){if(typeof(e)=="string"){e=i.parseJSON(e)}if(!Object.defineProperty||!(function(){try{Object.defineProperty({},"x",{});return true}catch(M){return false}}())){var L=Object.defineProperty;Object.defineProperty=function(O,P,N){if(L){try{return L(O,P,N)}catch(M){}}if(O!==Object(O)){throw TypeError("Object.defineProperty called on non-object")}if(Object.prototype.__defineGetter__&&("get" in N)){Object.prototype.__defineGetter__.call(O,P,N.get)}if(Object.prototype.__defineSetter__&&("set" in N)){Object.prototype.__defineSetter__.call(O,P,N.set)}if("value" in N){O[P]=N.value}else{if(!O[P]){O[P]=N}}return O}}if(!Array.prototype.forEach){Array.prototype.forEach=function(N){if(this===void 0||this===null){throw TypeError()}var Q=Object(this);var M=Q.length>>>0;if(typeof N!=="function"){throw TypeError()}var P=arguments[1],O;for(O=0;O<M;O++){if(O in Q){N.call(P,Q[O],O,Q)}}}}if(typeof Object.getOwnPropertyNames!=="function"){Object.getOwnPropertyNames=function(O){if(O!==Object(O)){throw TypeError("Object.getOwnPropertyNames called on non-object")}var M=[],N;for(N in O){if(Object.prototype.hasOwnProperty.call(O,N)){M.push(N)}}return M}}var I=this,H,K=[];I.notifier=null;I.name="observableArray";I.observing=true;I.changes=new Array();var J=J;I.observe=function(){I.observing=true;if(arguments.length==1){J=arguments[0]}};I.unobserve=function(){I.observing=false};I.toArray=function(){return K.slice(0)};I.toJSON=function(X,O){var U=K;if(O){U=O}var T=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,W={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function M(Z){return'"'+Z.replace(T,function(aa){var ab=W[aa];return typeof ab==="string"?ab:"\\u"+("0000"+aa.charCodeAt(0).toString(16)).slice(-4)})+'"'}function N(Z){return Z<10?"0"+Z:Z}function P(aa){var Z;if(isFinite(aa.valueOf())){Z=aa.getUTCFullYear()+"-"+N(aa.getUTCMonth()+1)+"-"+N(aa.getUTCDate())+"T"+N(aa.getUTCHours())+":"+N(aa.getUTCMinutes())+":"+N(aa.getUTCSeconds())+'Z"'}else{Z="null"}return Z}function Q(ac){var Z=ac.length,aa=[],ab;for(ab=0;ab<Z;ab++){aa.push(R(ab,ac)||"null")}return"["+aa.join(",")+"]"}function Y(ac){var aa=[],ab,Z;for(ab in ac){if(Object.prototype.hasOwnProperty.call(ac,ab)){if(ab!=""&&X&&X.indexOf(ab)===-1){continue}Z=R(ab,ac);if(Z){aa.push(M(ab)+":"+Z)}}}return"{"+aa.join(",")+"}"}function S(Z){switch(Object.prototype.toString.call(Z)){case"[object Date]":return P(Z);case"[object Array]":return Q(Z)}return Y(Z)}function V(aa,Z){switch(Z){case"string":return M(aa);case"number":case"float":case"integer":case"int":return isFinite(aa)?aa:"null";case"boolean":return aa}return"null"}function R(aa,Z){var ac=Z[aa],ab=typeof ac;if(ac&&typeof ac==="object"&&typeof ac.toJSON==="function"){ac=ac.toJSON(aa);ab=typeof ac}if(/(number|float|int|integer|string|boolean)/.test(ab)||(!ac&&ab==="object")){return V(ac,ab)}else{return S(ac)}}if(!X&&window.JSON&&typeof window.JSON.stringify==="function"){return window.JSON.stringify(U)}return R("",{"":U})};I.defineIndexProperty=function(O){if(!(O in I)){var M=function(V,S,U,R){var T=V[S];var Q=T;var P=function(){return Q};var W=function(ab){T=ab;if(Q!==T){var aa=Q;Q=T;if(typeof H==="function"){var Y=K.indexOf(R);var Z="";var X=function(ad,ac){Object.getOwnPropertyNames(ad).forEach(function(ae){var af=i.type(ad[ae]);if(af=="array"||af=="object"){X(ad[ae],ac+"."+ae)}else{if(S===ae){Z=ac+"."+ae}}})};X(R,Y);H({object:I,type:"update",path:Z,index:Y,name:S,newValue:T,oldValue:aa})}}Q=T;return T};if(V[S]&&S!="length"){if(Object.defineProperty){Object.defineProperty(V,S,{get:P,set:W})}else{if(Object.prototype.__defineGetter__&&Object.prototype.__defineSetter__){Object.prototype.__defineGetter__.call(V,S,P);Object.prototype.__defineSetter__.call(V,S,W)}}}};var N=function(S,R,P){var Q=i.type(S);if(/(number|float|int|integer|string|boolean)/.test(Q)){return}if(S===undefined){return}Object.getOwnPropertyNames(S).forEach(function(T){var U=i.type(S[T]);if(U=="array"||U=="object"){M(S,T,R+"."+T,P);N(S[T],R+"."+T,P)}else{M(S,T,R+"."+T,P)}})};Object.defineProperty(I,O,{configurable:true,enumerable:true,get:function(){return K[O]},set:function(Q){var P=K[O];if(I.toJSON(null,P)!=I.toJSON(null,Q)){K[O]=Q;if(typeof H==="function"){H({object:I,type:"update",path:O.toString(),index:O,name:"index",newValue:Q,oldValue:P})}N(Q,O,Q)}}});N(I[O],O,I[O])}};I.push=function(){var M;for(var N=0,O=arguments.length;N<O;N++){M=K.length;K.push(arguments[N]);I.defineIndexProperty(M);if(typeof H==="function"){H({object:I,type:"add",name:"length",index:M,newValue:K.length,oldValue:M})}}return K.length};I.pop=function(){if(~K.length){var M=K.length-1,N=K.pop();delete I[M];if(typeof H==="function"){H({object:I,type:"delete",name:"length",index:M,newValue:K.length,oldValue:M})}return N}};I.unshift=function(){var M=K.length;for(var N=0,O=arguments.length;N<O;N++){K.splice(N,0,arguments[N]);I.defineIndexProperty(K.length-1)}if(typeof H==="function"){H({object:I,type:"add",index:0,name:"length",newValue:K.length,oldValue:M})}return K.length};I.shift=function(){var M=K.length;if(~K.length){var N=K.shift();K.length===0&&delete I[M];if(typeof H==="function"){H({object:I,type:"delete",index:M,name:"length",newValue:K.length,oldValue:M})}return N}};I.slice=function(Q,N,P){var M=K.slice(Q,N);var O=new i.jqx.observableArray(M,P);return O};I.splice=function(Q,R,M){var P=[],U,T;Q=!~Q?K.length-Q:Q;R=(R==null?K.length-Q:R)||0;while(R--){U=K.splice(Q,1)[0];P.push(U);delete I[K.length];if(typeof H==="function"){H({object:I,type:"delete",index:Q,name:"length",newValue:-1,oldValue:Q})}}for(var N=2,S=arguments.length;N<S;N++){K.splice(Q,0,arguments[N]);defineIndexProperty(K.length-1);if(typeof H==="function"){H({object:I,type:"add",index:Q,name:"length",newValue:K.length-1,oldValue:Q})}Q++}var O=new i.jqx.observableArray(P,M);return O};Object.defineProperty(I,"length",{configurable:false,enumerable:true,get:function(){return K.length},set:function(M){var N=Number(M);if(N%1===0&&N>=0){if(N<K.length){I.splice(N)}else{if(N>K.length){I.push.apply(I,new Array(N-K.length))}}}else{throw new RangeError("Invalid array length")}return M}});i.jqx.observableArray.prototype.fromArray=function(O,N){var M=new i.jqx.observableArray(O,N);return M};i.jqx.observableArray.prototype.clone=function(){var M=new i.jqx.observableArray(K,J);M.observing=I.observing;M.changes=I.changes;M.notifier=I.notifier;return M};I.remove=function(N){if(N<0||N>=I.length){throw new Error("Invalid index : "+N)}if(I.hasOwnProperty(N)){var M=I[N];I[N]=undefined;K[N]=undefined;if(typeof H==="function"){H({object:I,type:"delete",index:N,name:"index",newValue:undefined,oldValue:M})}return true}return false};I.concat=function(N,P){var M=K.concat(N);var O=new i.jqx.observableArray(M,P);return O};Object.getOwnPropertyNames(Array.prototype).forEach(function(M){if(!(M in I)){var N=function(){var Q=I.observing;I.observing=false;var P=K[M];var O=P.apply(K,arguments);I.observing=Q;return O};Object.defineProperty(I,M,{configurable:false,enumerable:true,writeable:false,value:N})}});I.set=function(N,P){if(i.type(N)=="string"&&N.split(".").length>1){var M=N.split(".");var Q=I;for(var O=0;O<M.length;O++){if(O===0){if(M[O]>=I.length){throw new Error("Invalid Index: "+N)}}if(O<M.length-1){Q=Q[M[O]]}else{Q[M[O]]=P}}return true}if(N>=I.length){I.push(P)}else{I[N]=P}return true};I.get=function(M){return I[M]};if(e instanceof Array){I.push.apply(I,e)}H=function(){if(!I.observing){return}if(arguments&&arguments[0]){I.changes.push(arguments[0])}if(J){J.apply(I,arguments)}if(I.notifier){I.notifier.apply(I,arguments)}};return I};i.jqx.formatDate=function(H,J,I){var e=i.jqx.dataFormat.formatdate(H,J,I);return e};i.jqx.formatNumber=function(H,J,I){var e=i.jqx.dataFormat.formatnumber(H,J,I);return e};i.jqx.dataAdapter=function(J,e){if(J!=undefined){if(J.dataFields!==undefined){J.datafields=J.dataFields}if(J.dataType!==undefined){J.datatype=J.dataType}if(J.localData!==undefined){J.localdata=J.localData}if(J.sortColumn!==undefined){J.sortcolumn=J.sortColumn}if(J.sortDirection!==undefined){J.sortdirection=J.sortDirection}if(J.sortOrder!==undefined){J.sortdirection=J.sortOrder}if(J.formatData!==undefined){J.formatdata=J.formatData}if(J.processData!==undefined){J.processdata=J.processData}if(J.pageSize!==undefined){J.pagesize=J.pageSize}if(J.pageNum!==undefined){J.pagenum=J.pageNum}if(J.updateRow!==undefined){J.updaterow=J.updateRow}if(J.addRow!==undefined){J.addrow=J.addRow}if(J.deleteRow!==undefined){J.deleterow=J.deleteRow}if(J.contentType!==undefined){J.contenttype=J.contentType}if(J.totalRecords!=undefined){J.totalrecords=J.totalRecords}if(J.loadError!=undefined){J.loadError=J.loadError}if(J.sortComparer!=undefined){J.sortcomparer=J.sortComparer}}this._source=J;this._options=e||{};if(J.beforeLoadComplete!=undefined){this._options.beforeLoadComplete=this._source.beforeLoadComplete}if(J.downloadComplete!=undefined){this._options.downloadComplete=this._source.downloadComplete}if(J.loadComplete!=undefined){this._options.loadComplete=this._source.loadComplete}if(J.autoBind!=undefined){this._options.downloadComplete=this._source.autoBind}if(J.formatData!=undefined){this._options.formatData=this._source.formatData}if(J.loadError!=undefined){this._options.loadError=this._source.loadError}if(J.beforeSend!=undefined){this._options.beforeSend=this._source.beforeSend}if(J.contentType!=undefined){this._options.contentType=this._source.contentType}if(J.async!=undefined){this._options.async=this._source.async}if(J.loadServerData!=undefined){this._options.loadServerData=this._source.loadServerData}if(J.uniqueDataFields!=undefined){this._options.uniqueDataFields=this._source.uniqueDataFields}this.records=new Array();this._downloadComplete=new Array();this._bindingUpdate=new Array();if(J!=undefined&&J.localdata!=null&&typeof J.localdata=="function"){var I=J.localdata();if(I!=null){J._localdata=J.localdata;var H=this;if(J._localdata.subscribe){H._oldlocaldata=[];J._localdata.subscribe(function(K){var L=function(M){if(i.isArray(M)){return i.makeArray(L(i(M)))}return i.extend(true,{},M)};if(H.suspendKO==false||H.suspendKO==undefined||H._oldlocaldata.length==0){H._oldlocaldata=L(K)}},J._localdata,"beforeChange");J._localdata.subscribe(function(L){if(H.suspendKO==false||H.suspendKO==undefined){var K="";H._oldrecords=H.records;if(H._oldlocaldata.length==0){J.localdata=J._localdata()}if(H._oldlocaldata.length==0){K="change"}else{if(L){if(H._oldlocaldata.length==L.length){K="update"}if(H._oldlocaldata.length>L.length){K="remove"}if(H._oldlocaldata.length<L.length){K="add"}}}H.dataBind(null,K)}},J._localdata,"change");H._knockoutdatasource=true}J.localdata=I}}if(this._options.autoBind==true){this.dataBind()}};i.jqx.dataAdapter.prototype={getrecords:function(){return this.records},beginUpdate:function(){this.isUpdating=true},endUpdate:function(e){this.isUpdating=false;if(e!=false){if(this._changedrecords&&this._changedrecords.length>0){this.callBindingUpdate("update");this._changedrecords=[]}else{this.dataBind(null,"")}}},formatDate:function(H,J,I){var e=i.jqx.dataFormat.formatdate(H,J,I);return e},formatNumber:function(H,J,I){var e=i.jqx.dataFormat.formatnumber(H,J,I);return e},dataBind:function(R,Z){if(this.isUpdating==true){return}var W=this._source;if(!W){return}if(W.generatedfields){W.datafields=null;W.generatedfields=null}i.jqx.dataFormat.datescache=new Array();if(W.dataFields!=null){W.datafields=W.dataFields}if(W.recordstartindex==undefined){W.recordstartindex=0}if(W.recordendindex==undefined){W.recordendindex=0}if(W.loadallrecords==undefined){W.loadallrecords=true}if(W.root==undefined){W.root=""}if(W.record==undefined){W.record=""}if(W.sort!=undefined){this.sort=W.sort}if(W.filter!=undefined){this.filter=W.filter}else{this.filter=null}if(W.sortcolumn!=undefined){this.sortcolumn=W.sortcolumn}if(W.sortdirection!=undefined){this.sortdirection=W.sortdirection}if(W.sortcomparer!=undefined){this.sortcomparer=W.sortcomparer}this.records=new Array();var K=this._options||{};this.virtualmode=K.virtualmode!=undefined?K.virtualmode:false;this.totalrecords=K.totalrecords!=undefined?K.totalrecords:0;this.pageable=K.pageable!=undefined?K.pageable:false;this.pagesize=K.pagesize!=undefined?K.pagesize:0;this.pagenum=K.pagenum!=undefined?K.pagenum:0;this.cachedrecords=K.cachedrecords!=undefined?K.cachedrecords:new Array();this.originaldata=new Array();this.recordids=new Array();this.updaterow=K.updaterow!=undefined?K.updaterow:null;this.addrow=K.addrow!=undefined?K.addrow:null;this.deleterow=K.deleterow!=undefined?K.deleterow:null;this.cache=K.cache!=undefined?K.cache:false;this.unboundmode=false;if(W.formatdata!=undefined){K.formatData=W.formatdata}if(W.data!=undefined){if(K.data==undefined){K.data={}}i.extend(K.data,W.data)}if(W.mapchar!=undefined){this.mapChar=W.mapchar?W.mapchar:">"}else{this.mapChar=K.mapChar?K.mapChar:">"}if(K.unboundmode||W.unboundmode){this.unboundmode=K.unboundmode||W.unboundmode}if(W.cache!=undefined){this.cache=W.cache}if(this.koSubscriptions){for(var ab=0;ab<this.koSubscriptions.length;ab++){this.koSubscriptions[ab].dispose()}}this.koSubscriptions=new Array();if(this.pagenum<0){this.pagenum=0}var ag=this;var Q=W.datatype;if(W.datatype==="csv"||W.datatype==="tab"||W.datatype==="tsv"||W.datatype=="text"){Q="text"}var N=K.async!=undefined?K.async:true;if(W.async!=undefined){N=W.async}switch(Q){case"local":case"array":case"observablearray":case"observableArray":default:if(W.localdata==undefined&&W.length){W.localdata=new Array();for(var Y=0;Y<W.length;Y++){W.localdata[W.localdata.length]=W[Y];W[Y].uid=Y}}if(W.beforeprocessing&&i.isFunction(W.beforeprocessing)){W.beforeprocessing(W.localdata)}var M=W.localdata.length;this.totalrecords=this.virtualmode?(W.totalrecords||M):M;if(this.unboundmode){this.totalrecords=this.unboundmode?(W.totalrecords||M):M;var ac=W.datafields?W.datafields.length:0;if(ac>0){for(var Y=0;Y<this.totalrecords;Y++){var I={};for(var X=0;X<ac;X++){I[W.datafields[X].name]=""}I.uid=Y;W.localdata[W.localdata.length]=I}}}if(this.totalrecords==undefined){this.totalrecords=0}var ac=W.datafields?W.datafields.length:0;var H=function(an,ap){var ao={};for(var al=0;al<ap;al++){var ak=W.datafields?W.datafields[al]:{};var aq="";if(undefined==ak||ak==null){continue}if(ak.map){if(i.isFunction(ak.map)){aq=ak.map(an)}else{var ai=ak.map.split(ag.mapChar);if(ai.length>0){var am=an;for(var aj=0;aj<ai.length;aj++){if(!am){continue}am=am[ai[aj]]}aq=am}else{aq=an[ak.map]}}if(aq!=undefined&&aq!=null){aq=aq.toString()}else{if(aq==undefined&&aq!=null){aq=""}}}var ar=false;if(aq==""){ar=true;aq=an[ak.name];if(aq!=undefined&&aq!=null){if(W._localdata&&aq.subscribe){aq=aq()}else{if(ak.type!="array"){aq=aq.toString()}}}}if(aq=="[object Object]"&&ak.map&&ar){aq=""}aq=ag.getvaluebytype(aq,ak);if(ak.displayname!=undefined){ao[ak.displayname]=aq}else{ao[ak.name]=aq}}return ao};if(W._localdata){this._changedrecords=[];this.records=new Array();var af=W._localdata();i.each(af,function(al,ao){if(typeof ao==="string"){ag.records.push(ao)}else{var aj={};var an=0;var am=this;i.each(this,function(ax,aC){var ar=null;var aD="string";var aB=ax;if(ac>0){var aF=false;var aA=false;for(var aw=0;aw<ac;aw++){var av=W.datafields[aw];if(av!=undefined&&(av.name==ax)){aF=true;ar=av.map;aD=av.type;aB=av.name;break}else{if(av!=undefined&&av.map&&(av.map.indexOf(ax)>=0)){aF=true;ar=av.map;aD=av.type;aB=av.name;aA=true;var aE=am[ax];if(ar!=null){var aq=ar.split(ag.mapChar);if(aq.length>0){var ay=am;for(var at=0;at<aq.length;at++){ay=ay[aq[at]]}aE=ay}else{aE=am[ar]}}if(aD!="string"){aE=ag.getvaluebytype(aE,{type:aD})}aj[aB]=aE;if(aj[aB]!=undefined){an+=aj[aB].toString().length+aj[aB].toString().substr(0,1)}}}}if(!aF){return true}if(aA){return true}}var au=i.isFunction(am[ax]);if(au){var aE=am[ax]();if(aD!="string"){aE=ag.getvaluebytype(aE,{type:aD})}aj[ax]=aE;if(am[ax].subscribe){var az=al;ag.koSubscriptions[ag.koSubscriptions.length]=am[ax].subscribe(function(aH){var aG=az;aj[ax]=aH;var aI={index:aG,oldrecord:aj,record:aj};ag._changedrecords.push(aI);if(ag.isUpdating){return}ag.callBindingUpdate("update");ag._changedrecords=[];return false})}}else{var aE=am[ax];if(ar!=null){var aq=ar.split(ag.mapChar);if(aq.length>0){var ay=am;for(var at=0;at<aq.length;at++){ay=ay[aq[at]]}aE=ay}else{aE=am[ar]}}if(aD!="string"){aE=ag.getvaluebytype(aE,{type:aD})}aj[aB]=aE;if(aj[aB]!=undefined){an+=aj[aB].toString().length+aj[aB].toString().substr(0,1)}}});var ak=ag.getid(W.id,am,al);aj.uid=ak;ag.records.push(aj);aj._koindex=an;if(ag._oldrecords){var ai=ag.records.length-1;if(Z=="update"){if(ag._oldrecords[ai]._koindex!=an){var ap={index:ai,oldrecord:ag._oldrecords[ai],record:aj};ag._changedrecords.push(ap)}}}}});if(Z=="add"){var M=ag.records.length;for(var Y=0;Y<M;Y++){var I=ag.records[Y];var L=false;for(var U=0;U<ag._oldrecords.length;U++){if(ag._oldrecords[U]._koindex===I._koindex){L=true;break}}if(!L){ag._changedrecords.push({index:Y,oldrecord:null,record:I,position:(Y!=0?"last":"first")})}}}else{if(Z=="remove"){var M=ag._oldrecords.length;for(var Y=0;Y<M;Y++){var P=ag._oldrecords[Y];if(!ag.records[Y]){ag._changedrecords.push({index:Y,oldrecord:P,record:null})}else{if(ag.records[Y]._koindex!=P._koindex){ag._changedrecords.push({index:Y,oldrecord:P,record:null})}}}}}}else{if(!i.isArray(W.localdata)){this.records=new Array();var V=0;var T=new Array();i.each(W.localdata,function(ak){var aj=ag.getid(W.id,this,ak);if(ac==0){if(!(typeof this==="string"||this instanceof String)){for(var am in this){V++;var an=i.type(this[am]);T.push({name:am,type:an})}ac=V;W.datafields=T;W.generatedfields=T}}if(ac>0){var ai=this;var al=H(ai,ac);al.uid=aj;ag.records[ag.records.length]=al}else{this.uid=aj;ag.records[ag.records.length]=this}})}else{if(ac==0){var V=0;var T=new Array();i.each(W.localdata,function(ak,am){var ai=i.extend({},this);if(typeof am==="string"){ag.records=W.localdata;return false}else{var aj=ag.getid(W.id,ai,ak);if(typeof(aj)==="object"){aj=ak}ai.uid=aj;if(ak==0){for(var an in this){V++;var ao=i.type(this[an]);T.push({name:an,type:ao})}ac=V;W.datafields=T;W.generatedfields=T}if(ac>0){var al=H(ai,ac);al.uid=aj;ag.records[ag.records.length]=al}else{ag.records[ag.records.length]=ai}}})}else{i.each(W.localdata,function(ak){var ai=this;var al=H(ai,ac);var aj=ag.getid(W.id,al,ak);if(typeof(aj)==="object"){aj=ak}var ai=i.extend({},al);ai.uid=aj;ag.records[ag.records.length]=ai})}}}this.originaldata=W.localdata;this.cachedrecords=this.records;this.addForeignValues(W);if(K.uniqueDataFields){var S=this.getUniqueRecords(this.records,K.uniqueDataFields);this.records=S;this.cachedrecords=S}if(K.beforeLoadComplete){var ad=K.beforeLoadComplete(ag.records,this.originaldata);if(ad!=undefined){ag.records=ad;ag.cachedrecords=ad}}if(K.autoSort&&K.autoSortField){var O=Object.prototype.toString;Object.prototype.toString=(typeof field=="function")?field:function(){return this[K.autoSortField]};ag.records.sort(function(aj,ai){if(aj===undefined){aj=null}if(ai===undefined){ai=null}if(aj===null&&ai===null){return 0}if(aj===null&&ai!==null){return 1}if(aj!==null&&ai===null){return -1}aj=aj.toString();ai=ai.toString();if(aj===null&&ai===null){return 0}if(aj===null&&ai!==null){return 1}if(aj!==null&&ai===null){return -1}if(i.jqx.dataFormat.isNumber(aj)&&i.jqx.dataFormat.isNumber(ai)){if(aj<ai){return -1}if(aj>ai){return 1}return 0}else{if(i.jqx.dataFormat.isDate(aj)&&i.jqx.dataFormat.isDate(ai)){if(aj<ai){return -1}if(aj>ai){return 1}return 0}else{if(!i.jqx.dataFormat.isNumber(aj)&&!i.jqx.dataFormat.isNumber(ai)){aj=String(aj).toLowerCase();ai=String(ai).toLowerCase()}}}try{if(aj<ai){return -1}if(aj>ai){return 1}}catch(ak){var al=ak}return 0});Object.prototype.toString=O}ag.loadedData=W.localdata;ag.buildHierarchy();if(i.isFunction(K.loadComplete)){K.loadComplete(W.localdata,ag.records)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":if(W.localdata!=null){if(i.isFunction(W.beforeprocessing)){W.beforeprocessing(W.localdata)}if(W.datatype==="xml"){ag.loadxml(W.localdata,W.localdata,W)}else{if(Q==="text"){ag.loadtext(W.localdata,W)}else{ag.loadjson(W.localdata,W.localdata,W)}}ag.addForeignValues(W);if(K.uniqueDataFields){var S=ag.getUniqueRecords(ag.records,K.uniqueDataFields);ag.records=S;ag.cachedrecords=S}if(K.beforeLoadComplete){var ad=K.beforeLoadComplete(ag.records,this.originaldata);if(ad!=undefined){ag.records=ad;ag.cachedrecords=ad}}ag.loadedData=W.localdata;ag.buildHierarchy.call(ag);if(i.isFunction(K.loadComplete)){K.loadComplete(W.localdata,ag.records)}ag.callBindingUpdate(Z);return}var ae=K.data!=undefined?K.data:{};if(W.processdata){W.processdata(ae)}if(i.isFunction(K.processData)){K.processData(ae)}if(i.isFunction(K.formatData)){var e=K.formatData(ae);if(e!=undefined){ae=e}}var aa="application/x-www-form-urlencoded";if(K.contentType){aa=K.contentType}var J="GET";if(W.type){J=W.type}if(K.type){J=K.type}if(W.url&&W.url.length>0){if(i.isFunction(K.loadServerData)){ag._requestData(ae,W,K)}else{this.xhr=i.jqx.data.ajax({dataType:Q,cache:this.cache,type:J,url:W.url,async:N,timeout:W.timeout,contentType:aa,data:ae,success:function(al,ai,ao){if(i.isFunction(W.beforeprocessing)){var an=W.beforeprocessing(al,ai,ao);if(an!=undefined){al=an}}if(i.isFunction(K.downloadComplete)){var an=K.downloadComplete(al,ai,ao);if(an!=undefined){al=an}}if(al==null){ag.records=new Array();ag.cachedrecords=new Array();ag.originaldata=new Array();ag.callDownloadComplete();if(i.isFunction(K.loadComplete)){K.loadComplete(new Array())}return}var aj=al;if(al.records){aj=al.records}if(al.totalrecords!=undefined){W.totalrecords=al.totalrecords}else{if(al.totalRecords!=undefined){W.totalrecords=al.totalRecords}}if(W.datatype==="xml"){ag.loadxml(null,aj,W)}else{if(Q==="text"){ag.loadtext(aj,W)}else{ag.loadjson(null,aj,W)}}ag.addForeignValues(W);if(K.uniqueDataFields){var ak=ag.getUniqueRecords(ag.records,K.uniqueDataFields);ag.records=ak;ag.cachedrecords=ak}if(K.beforeLoadComplete){var am=K.beforeLoadComplete(ag.records,al);if(am!=undefined){ag.records=am;ag.cachedrecords=am}}ag.loadedData=al;ag.buildHierarchy.call(ag);ag.callDownloadComplete();if(i.isFunction(K.loadComplete)){K.loadComplete(al,ai,ao,ag.records)}},error:function(ak,ai,aj){if(i.isFunction(W.loaderror)){W.loaderror(ak,ai,aj)}if(i.isFunction(K.loadError)){K.loadError(ak,ai,aj)}ak=null;ag.callDownloadComplete()},beforeSend:function(aj,ai){if(i.isFunction(K.beforeSend)){K.beforeSend(aj,ai)}if(i.isFunction(W.beforesend)){W.beforesend(aj,ai)}}})}}else{ag.buildHierarchy(new Array());ag.callDownloadComplete();if(i.isFunction(K.loadComplete)){if(!ah){var ah={}}K.loadComplete(ah)}}break}this.callBindingUpdate(Z)},buildHierarchy:function(K){var e=this._source;var P=new Array();if(!e.datafields){return}if(e.hierarchy&&!e.hierarchy.reservedNames){e.hierarchy.reservedNames={leaf:"leaf",parent:"parent",expanded:"expanded",checked:"checked",selected:"selected",level:"level",icon:"icon",data:"data"}}else{if(e.hierarchy){var O=e.hierarchy.reservedNames;if(!O.leaf){O.leaf="leaf"}if(!O.parent){O.parent="parent"}if(!O.expanded){O.expanded="expanded"}if(!O.checked){O.checked="checked"}if(!O.selected){O.selected="selected"}if(!O.level){O.level="level"}if(!O.data){O.data="data"}}}if(!e.hierarchy){return}var N=this;var O=e.hierarchy.reservedNames;if(e.hierarchy.root){if(e.dataType=="xml"){var P=this.getRecordsHierarchy("uid","parentuid","records",null,K);this.hierarchy=P;return P}else{this.hierarchy=this.records;var R=e.hierarchy.root;for(var L=0;L<this.records.length;L++){var M=this.records[L];if(!M){continue}var H=function(S){if(e.hierarchy.record){S.records=S[R][e.hierarchy.record]}else{var U=R.split(N.mapChar);var T=null;if(U.length>1){var W=S;for(var V=0;V<U.length;V++){if(W!=undefined){W=W[U[V]]}}T=W}else{T=S[R]}S.records=T}if(S.records==null||(S.records&&S.records.length==0)){S[O.leaf]=true}};H(M);M[O.level]=0;var I=this.getid(e.id,M,L);M.uid=I;M[O.parent]=null;M[O.data]=M;if(M[O.expanded]===undefined){M[O.expanded]=false}var Q=function(W,U){if(!U){W.records=new Array();return}for(var V=0;V<U.length;V++){var S=U[V];if(!S){continue}H(S);S[O.level]=W[O.level]+1;S[O.parent]=W;S[O.data]=S;var T=N.getid(e.id,S,V);if(T==V&&e.id==null){S.uid=W.uid+"_"+T}else{S.uid=T}if(S[O.expanded]===undefined){S[O.expanded]=false}Q(S,S.records)}};Q(M,M.records)}}return this.hierarchy}if(e.hierarchy.keyDataField&&e.hierarchy.parentDataField){var P=this.getRecordsHierarchy(e.hierarchy.keyDataField.name,e.hierarchy.parentDataField.name,"records",null,K);this.hierarchy=P;return P}if(e.hierarchy.groupingDataFields){var J=new Array();for(var L=0;L<e.hierarchy.groupingDataFields.length;L++){J.push(e.hierarchy.groupingDataFields[L].name)}var P=this.getGroupedRecords(J,"records","label",null,"data",null,"parent",K);this.hierarchy=P;return P}},addRecord:function(H,e,M,I){var J=this;var N=function(){return{leaf:"leaf",parent:"parent",expanded:"expanded",checked:"checked",selected:"selected",level:"level",icon:"icon",data:"data"}};if(H!=undefined){if(M!=undefined){if(this.hierarchy.length>0){var K=function(O){if(O){for(var P=0;P<O.length;P++){var Q=O[P];if(Q.uid==M){var R=(J._source&&J._source.hierarchy)?J._source.hierarchy.reservedNames:null;if(R==null){R=N()}H[R.parent]=Q;H[R.level]=Q[R.level]+1;if(!Q.records){Q.records=new Array();Q[R.leaf]=false}else{Q[R.leaf]=false}if(e=="last"){Q.records.push(H)}else{if(typeof e==="number"&&isFinite(e)){Q.records.splice(e,0,H)}else{Q.records.splice(0,0,H)}}return true}if(Q.records){K(Q.records)}}}};K(this.hierarchy)}}else{if(this.hierarchy&&this.hierarchy.length>=0&&(this._source.hierarchy||I)){var L=(J._source&&J._source.hierarchy)?J._source.hierarchy.reservedNames:null;if(L==null){L=N()}H[L.level]=0;if(e=="last"){this.hierarchy.push(H)}else{if(typeof e==="number"&&isFinite(e)){this.hierarchy.splice(e,0,H)}else{this.hierarchy.splice(0,0,H)}}}else{if(e=="last"){this.records.push(H)}else{if(typeof e==="number"&&isFinite(e)){this.records.splice(e,0,H)}else{this.records.splice(0,0,H)}}}return true}}return false},deleteRecord:function(H){var J=this;if(this.hierarchy.length>0){var K=function(L){if(L){for(var O=0;O<L.length;O++){var P=L[O];if(P.uid==H){L.splice(O,1);if(J.recordids[H]){delete J.recordids[H]}var N=function(T){for(var Q=0;Q<T.length;Q++){var S=T[Q].uid;for(var R=0;R<J.records.length;R++){var U=J.records[R];if(U.uid==S){J.records.splice(R,1);break}}if(T[Q].records){N(T[Q].records)}}};if(P.records){N(P.records)}for(var M=0;M<J.records.length;M++){var P=J.records[M];if(P.uid==H){J.records.splice(M,1);break}}return true}if(P.records){K(P.records)}}}};K(this.hierarchy)}else{for(var e=0;e<this.records.length;e++){var I=this.records[e];if(I.uid==H){this.records.splice(e,1);return true}}}return false},addForeignValues:function(H){var Q=this;var V=H.datafields?H.datafields.length:0;for(var N=0;N<V;N++){var L=H.datafields[N];if(L!=undefined){if(L.values!=undefined){if(L.value==undefined){L.value=L.name}if(L.values.value==undefined){L.values.value=L.value}var T=new Array();var K,M;if(Q.pageable&&Q.virtualmode){K=Q.pagenum*Q.pagesize;M=K+Q.pagesize;if(M>Q.totalrecords){M=Q.totalrecords}}else{if(Q.virtualmode){K=H.recordstartindex;M=H.recordendindex;if(M>Q.totalrecords){M=Q.totalrecords}}else{K=0;M=Q.records.length}}for(var O=K;O<M;O++){var P=Q.records[O];var I=L.name;var U=P[L.value];if(T[U]!=undefined){P[I]=T[U]}else{for(var J=0;J<L.values.source.length;J++){var S=L.values.source[J];var e=S[L.values.value];if(e==undefined){e=S.uid}if(e==U){var R=S[L.values.name];P[I]=R;T[U]=R;break}}}}}else{if(L.value!=undefined){for(var O=0;O<Q.records.length;O++){var P=Q.records[O];P[L.name]=P[L.value]}}}}}},abort:function(){if(this.xhr&&this.xhr.readyState!=4){this.xhr.abort();me.callDownloadComplete()}},_requestData:function(H,J,e){var I=this;var K=function(P){if(P.totalrecords){J.totalrecords=P.totalrecords;I.totalrecords=P.totalrecords}if(P.records){I.records=P.records;I.cachedrecords=P.records}I.addForeignValues(J);if(e.uniqueDataFields){var N=I.getUniqueRecords(I.records,e.uniqueDataFields);I.records=N;I.cachedrecords=N}if(e.beforeLoadComplete){var O=e.beforeLoadComplete(I.records,data);if(O!=undefined){I.records=O;I.cachedrecords=O}}for(var M=0;M<I.records.length;M++){var L=I.records[M];if(undefined==L){continue}if(undefined==L.uid){L.uid=I.getid(J.id,L,M)}}I.buildHierarchy.call(I);if(i.isFunction(e.loadComplete)){e.loadComplete(P)}I.callDownloadComplete()};e.loadServerData(H,J,K)},getUniqueRecords:function(I,L){if(I&&L){var e=I.length;var Q=L.length;var N=new Array();var O=new Array();for(var P=0;P<e;P++){var M=I[P];var J="";if(M==undefined){continue}for(var K=0;K<Q;K++){var H=L[K];J+=M[H]+"_"}if(!O[J]){N[N.length]=M}O[J]=true}}return N},getAggregatedData:function(S,P,M,H){var L=M;if(!L){L=this.records}var Q={};var K=new Array();var J=L.length;if(J==0){return}if(J==undefined){return}for(var O=0;O<J;O++){var R=L[O];for(var N=0;N<S.length;N++){var I=S[N];var U=R[I.name];if(I.aggregates){Q[I.name]=Q[I.name]||{};K[I.name]=K[I.name]||0;K[I.name]++;var e=function(W){for(obj in W){var X=Q[I.name][obj];if(X==null){Q[I.name][obj]=0;X=0}if(i.isFunction(W[obj])){X=W[obj](X,U,I.name,R,H)}Q[I.name][obj]=X}};var T=parseFloat(U);if(isNaN(T)){T=false}else{T=true}if(T){U=parseFloat(U)}if(typeof U==="number"&&isFinite(U)){i.each(I.aggregates,function(){var W=Q[I.name][this];if(W==null){W=0;if(this=="min"){W=9999999999999}if(this=="max"){W=-9999999999999}}if(this=="sum"||this=="avg"||this=="stdev"||this=="stdevp"||this=="var"||this=="varp"){W+=parseFloat(U)}else{if(this=="product"){if(O==0){W=parseFloat(U)}else{W*=parseFloat(U)}}else{if(this=="min"){W=Math.min(W,parseFloat(U))}else{if(this=="max"){W=Math.max(W,parseFloat(U))}else{if(this=="count"){W++}else{if(typeof(this)=="object"){e(this);return}}}}}}Q[I.name][this]=W})}else{i.each(I.aggregates,function(){if(this=="min"||this=="max"||this=="count"||this=="product"||this=="sum"||this=="avg"||this=="stdev"||this=="stdevp"||this=="var"||this=="varp"){if(U===null){return true}var W=Q[I.name][this];if(W==null){W=0}Q[I.name][this]=W;return true}if(typeof(this)=="object"){e(this)}})}}}}for(var N=0;N<S.length;N++){var I=S[N];if(!Q[I.name]){Q[I.name]={};i.each(I.aggregates,function(W){Q[I.name][this]=0})}if(Q[I.name]["avg"]!=undefined){var U=Q[I.name]["avg"];var V=K[I.name];if(V===0||V==undefined){Q[I.name]["avg"]=0}else{Q[I.name]["avg"]=U/V}}else{if(Q[I.name]["count"]!=undefined){Q[I.name]["count"]=J}}if(Q[I.name]["stdev"]||Q[I.name]["stdevp"]||Q[I.name]["var"]||Q[I.name]["varp"]){i.each(I.aggregates,function(ac){if(this=="stdev"||this=="var"||this=="varp"||this=="stdevp"){var ad=Q[I.name][this];var ab=J;var W=(ad/J);var Y=0;for(var Z=0;Z<J;Z++){var aa=L[Z];var ae=aa[I.name];Y+=(ae-W)*(ae-W)}var X=(this=="stdevp"||this=="varp")?ab:ab-1;if(X==0){X=1}if(this=="var"||this=="varp"){Q[I.name][this]=Y/X}else{if(this=="stdevp"||this=="stdev"){Q[I.name][this]=Math.sqrt(Y/X)}}}})}if(I.formatStrings){i.each(I.aggregates,function(X){var W=I.formatStrings[X];if(W){if(this=="min"||this=="max"||this=="count"||this=="product"||this=="sum"||this=="avg"||this=="stdev"||this=="stdevp"||this=="var"||this=="varp"){var Y=Q[I.name][this];Q[I.name][this]=i.jqx.dataFormat.formatnumber(Y,W,P)}else{if(typeof this=="object"){for(obj in this){var Y=Q[I.name][obj];Q[I.name][obj]=i.jqx.dataFormat.formatnumber(Y,W,P)}}}}})}}return Q},bindDownloadComplete:function(H,e){this._downloadComplete[this._downloadComplete.length]={id:H,func:e}},unbindDownloadComplete:function(H){for(var e=0;e<this._downloadComplete.length;e++){if(this._downloadComplete[e].id==H){this._downloadComplete[e].func=null;this._downloadComplete.splice(e,1);break}}},callDownloadComplete:function(){for(var e=0;e<this._downloadComplete.length;e++){var H=this._downloadComplete[e];if(H.func!=null){H.func()}}},setSource:function(e){this._source=e},generatekey:function(){var e=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e())},getGroupedRecords:function(aj,am,W,ae,ak,ab,ad,an,K){var ag=0;var aa=this;if(!K){K=0}var I=new Array();for(var N=0;N<aj.length;N++){I[N]=aa.generatekey()}if(!am){am="items"}if(!W){W="group"}if(!ak){ak="record"}if(!ad){ad="parentItem"}if(undefined===ab){ab="value"}var S=new Array();var L=0;var J=new Array();var R=aj.length;var al=new Array();if(!an){var an=this.records}var P=an.length;var af=function(ao){var ap=ao;if(ae){i.each(ae,function(){if(this.name&&this.map){ap[this.map]=ap[this.name]}})}return ap};for(var V=0;V<P;V++){var ai=af(an[V]);id=ai[aa.uniqueId];var H=new Array();var X=0;for(N=0;N<R;N++){var Q=aj[N];var ac=ai[Q];if(null==ac){continue}H[X++]={value:ac,hash:I[N]}}if(H.length!=R){break}var Y=null;var T="";var e=-1;for(var Z=0;Z<H.length;Z++){e++;var ah=H[Z].value;var M=H[Z].hash;T=T+"_"+M+"_"+ah;if(J[T]!=undefined&&J[T]!=null){Y=J[T];continue}if(Y==null){Y={level:0};Y[ad]=null;Y[W]=ah;Y[ak]=ai;if(ai.expanded!==undefined){Y.expanded=ai.expanded}else{Y.expanded=false}if(ab){Y[ab]=ai[ab]}Y[am]=new Array();var O=S.length+K;if(!this._source.id||typeof ai.uid==="number"||isFinite(ai.uid)){O="Row"+O}Y.uid=O;S[L++]=Y}else{var U={level:Y.level+1};U[ad]=Y;U[W]=ah;U[am]=new Array();U[ak]=ai;if(ai.expanded!==undefined){U.expanded=ai.expanded}else{U.expanded=false}if(ab){U[ab]=ai[ab]}U.uid=Y.uid+"_"+Y[am].length;Y[am][Y[am].length]=U;Y=U}J[T]=Y}if(ai){ai.leaf=true}if(Y!=null){if(this._source.id==null){if(undefined==ai.uid){ai.uid=Y.uid+"_"+Y[am].length}else{if(ai.uid.toString().indexOf(Y.uid)==-1){ai.uid=Y.uid+"_"+ai.uid}}}ai[ad]=Y;ai.level=Y.level+1;Y[am][Y[am].length]=ai}else{if(undefined==ai.uid){ai.uid=this.generatekey()}}}return S},getRecordsHierarchy:function(L,J,aa,U,H){var e=new Array();var I=this.records;if(H){I=H}if(this.records.length==0){return null}var Y=aa!=null?aa:"items";var R=[];var ab=I;var O=ab.length;var P=(this._source&&this._source.hierarchy)?this._source.hierarchy.reservedNames:null;var W=function(ac){var ad=ac;if(U){i.each(U,function(){if(this.name&&this.map){ad[this.map]=ad[this.name]}})}return ad};for(var X=0;X<O;X++){var Z=i.extend({},ab[X]);var T=Z[J];var S=Z[L];R[S]={parentid:T,item:Z}}for(var X=0;X<O;X++){var Z=i.extend({},ab[X]);var T=Z[J];var S=Z[L];if(R[T]!=undefined){var Z={parentid:T,item:R[S].item};var Q=R[T].item;if(!Q[Y]){Q[Y]=[]}var M=Q[Y].length;var K=Z.item;if(!P){if(K.parent==undefined){K.parent=Q}}else{if(K[P.parent]==undefined){K[P.parent]=Q}}var N=W(K);Q[Y][M]=N;R[T].item=Q;R[S]=Z}else{var K=R[S].item;if(!P){if(K.parent==undefined){K.parent=null}}else{if(K[P.parent]==undefined){K[P.parent]=null}}var N=W(K);if(!P){N.level=0}else{N[P.level]=0}e[e.length]=N}}if(e.length!=0){var V=function(af,ac){for(var ad=0;ad<ac.length;ad++){if(!P){ac[ad].level=af}else{ac[ad][P.level]=af}var ae=ac[ad][Y];if(ae){if(ae.length>0){V(af+1,ae)}else{if(!P){ac[ad].leaf=true}else{ac[ad][P.leaf]=true}}}else{if(!P){ac[ad].leaf=true}else{ac[ad][P.leaf]=true}}}};V(0,e)}return e},bindBindingUpdate:function(H,e){this._bindingUpdate[this._bindingUpdate.length]={id:H,func:e}},unbindBindingUpdate:function(H){for(var e=0;e<this._bindingUpdate.length;e++){if(this._bindingUpdate[e].id==H){this._bindingUpdate[e].func=null;this._bindingUpdate.splice(e,1);break}}},callBindingUpdate:function(e){for(var I=0;I<this._bindingUpdate.length;I++){var H=this._bindingUpdate[I];if(H.func!=null){H.func(e)}}},getid:function(N,H,K){if(N!=null&&N.name!=undefined){if(N.name){var e=i(H).attr(N.name);if(e!=null&&e.toString().length>0){return e}else{if(N.map){try{var e=i(H).attr(N.map);if(e!=null&&e.toString().length>0){return e}else{if(i(N.map,H).length>0){return i(N.map,H).text()}else{if(i(N.name,H).length>0){return i(N.name,H).text()}}}}catch(J){return K}}}return}}if(i(N,H).length>0){return i(N,H).text()}if(N){if(N.toString().length>0){var e=i(H).attr(N);if(e!=null&&e.toString().length>0){return i.trim(e).split(" ").join("").replace(/([ #;?%&,.+*~\':"!^$[\]()=>|\/@])/g,"")}else{var I=N.split(this.mapChar);if(I.length>1){var M=H;for(var L=0;L<I.length;L++){if(M!=undefined){M=M[I[L]]}}if(M!=undefined){return M}}else{if(H[N]!=undefined){return H[N]}}}}}return K},loadjson:function(ae,af,R){if(typeof(ae)=="string"){ae=i.parseJSON(ae)}if(R.root==undefined){R.root=""}if(R.record==undefined){R.record=""}var ae=ae||af;if(!ae){ae=[]}var ad=this;if(R.root!=""){var K=R.root.split(ad.mapChar);if(K.length>1){var aa=ae;for(var Q=0;Q<K.length;Q++){if(aa!=undefined){aa=aa[K[Q]]}}ae=aa}else{if(ae[R.root]!==undefined){ae=ae[R.root]}else{i.each(ae,function(ah){var ag=this;if(this==R.root){ae=this;return false}else{if(this[R.root]!=undefined){ae=this[R.root]}}})}if(!ae){var K=R.root.split(ad.mapChar);if(K.length>0){var aa=ae;for(var Q=0;Q<K.length;Q++){if(aa!=undefined){aa=aa[K[Q]]}}ae=aa}}}}else{if(!ae.length){for(obj in ae){if(i.isArray(ae[obj])){ae=ae[obj];break}}}}if(ae!=null&&ae.length==undefined){ae=i.makeArray(ae)}if(ae==null||ae==undefined||ae=="undefined"||ae.length==undefined){console.log("jqxDataAdapter: JSON Parse error! Invalid JSON. Please, check your JSON or your jqxDataAdapter initialization!");return}if(ae.length==0){this.totalrecords=0;return}var J=ae.length;this.totalrecords=this.virtualmode?(R.totalrecords||J):J;this.records=new Array();this.originaldata=new Array();var W=this.records;var T=!this.pageable?R.recordstartindex:this.pagesize*this.pagenum;this.recordids=new Array();if(R.loadallrecords){T=0;J=this.totalrecords}var P=0;if(this.virtualmode){T=!this.pageable?R.recordstartindex:this.pagesize*this.pagenum;P=T;T=0;J=this.totalrecords}var Y=R.datafields?R.datafields.length:0;if(Y==0){var e=ae[0];var ab=new Array();for(obj in e){var H=obj;ab[ab.length]={name:H}}R.datafields=ab;R.generatedfields=R.datafields;Y=ab.length}var M=T;for(var V=T;V<J;V++){var I=ae[V];if(I==undefined){break}if(R.record&&R.record!=""){I=I[R.record];if(I==undefined){continue}}var ac=this.getid(R.id,I,V);if(typeof(ac)==="object"){ac=V}if(!this.recordids[ac]){this.recordids[ac]=I;var L={};for(var U=0;U<Y;U++){var N=R.datafields[U];var S="";if(undefined==N||N==null){continue}if(N.map){if(i.isFunction(N.map)){S=N.map(I)}else{var K=N.map.split(ad.mapChar);if(K.length>0){var Z=I;for(var Q=0;Q<K.length;Q++){if(Z!=undefined){Z=Z[K[Q]]}}S=Z}else{S=I[N.map]}}if(S!=undefined&&S!=null){S=this.getvaluebytype(S,N)}else{if(S==undefined&&S!=null){S=""}}}if(S==""&&!N.map){S=I[N.name];if(S==undefined&&S!=null){S=""}if(N.value!=undefined){if(S!=undefined){var X=S[N.value];if(X!=undefined){S=X}}}}S=this.getvaluebytype(S,N);if(N.displayname!=undefined){L[N.displayname]=S}else{L[N.name]=S}if(N.type==="array"){var O=function(aj){if(!aj){return}for(var ap=0;ap<aj.length;ap++){var am=aj[ap];if(!am){continue}for(var an=0;an<Y;an++){var ai=R.datafields[an];var ao="";if(undefined==ai||ai==null){continue}if(ai.map){if(i.isFunction(ai.map)){ao=ai.map(am)}else{var ag=ai.map.split(ad.mapChar);if(ag.length>0){var al=am;for(var ah=0;ah<ag.length;ah++){if(al!=undefined){al=al[ag[ah]]}}ao=al}else{ao=am[ai.map]}}if(ao!=undefined&&ao!=null){ao=this.getvaluebytype(ao,ai)}else{if(ao==undefined&&ao!=null){ao=""}}}if(ao==""&&!ai.map){ao=am[ai.name];if(ao==undefined&&ao!=null){ao=""}if(ai.value!=undefined){if(ao!=undefined){var ak=ao[ai.value];if(ak!=undefined){ao=ak}}}}ao=this.getvaluebytype(ao,ai);if(ai.displayname!=undefined){am[ai.displayname]=ao}else{am[ai.name]=ao}if(ai.type==="array"){O.call(this,ao)}}}};O.call(this,S)}}if(R.recordendindex<=0||T<R.recordendindex){W[P+M]=i.extend({},L);W[P+M].uid=ac;this.originaldata[P+M]=i.extend({},W[V]);M++}}}this.records=W;this.cachedrecords=this.records},loadxml:function(K,ai,U){if(typeof(K)=="string"){K=ai=i(i.parseXML(K));K=null}if(U.root==undefined){U.root=""}if(U.record==undefined){U.record=""}var K;if(i.jqx.browser.msie&&ai){if(ai.xml!=undefined){K=i(U.root+" "+U.record,i.parseXML(ai.xml))}else{K=K||i(U.root+" "+U.record,ai)}}else{K=K||i(U.root+" "+U.record,ai)}if(!K){K=[]}var J=K.length;if(K.length==0){return}this.totalrecords=this.virtualmode?(U.totalrecords||J):J;this.records=new Array();this.originaldata=new Array();var aa=this.records;var X=!this.pageable?U.recordstartindex:this.pagesize*this.pagenum;this.recordids=new Array();if(U.loadallrecords){X=0;J=this.totalrecords}var S=0;if(this.virtualmode){X=!this.pageable?U.recordstartindex:this.pagesize*this.pagenum;S=X;X=0;J=this.totalrecords}var ac=U.datafields?U.datafields.length:0;if(ac==0){var e=K[0];var af=new Array();for(obj in e){var H=obj;af[af.length]={name:H}}U.datafields=af;U.generatedfields=U.datafields;ac=af.length}var T=X;var ae=false;for(var Z=X;Z<J;Z++){var I=K[Z];if(I==undefined){break}var ah=this.getid(U.id,I,Z);if(!this.recordids[ah]){this.recordids[ah]=I;var L={};var P=false;if(U.hierarchy&&U.hierarchy.root){P=true}for(var Y=0;Y<ac;Y++){var Q=U.datafields[Y];var W="";if(undefined==Q||Q==null){continue}if(Q.map){if(i.isFunction(Q.map)){W=Q.map(I)}else{var M=Q.map.indexOf("[");if(M<0){W=i(Q.map,I);if(W.length==1){W=W.text()}else{ae=true;var ag=new Array();for(var ab=0;ab<W.length;ab++){ag.push(i(W[ab]).text())}W=ag;if(P&&ag.length>0){W=ag[0]}}}else{var ad=Q.map.substring(0,M-1);var O=Q.map.indexOf("]");var R=Q.map.substring(M+1,O);W=i(ad,I).attr(R);if(W==undefined){W=i(I).attr(R)}if(W==undefined){W=""}}if(W==""){W=i(I).attr(Q.map);if(W==undefined){W=""}}}}if(W==""){W=i(Q.name,I);if(W.length==1){W=W.text()}else{var ag=new Array();for(var ab=0;ab<W.length;ab++){ag.push(i(W[ab]).text())}W=ag;if(P&&ag.length>0){W=ag[0]}}if(W==""){W=i(I).attr(Q.name);if(W==undefined){W=""}}if(W==""){if(I.nodeName&&I.nodeName==Q.name&&I.firstChild){W=i(I.firstChild).text()}}}var V=W;W=this.getvaluebytype(W,Q);if(Q.displayname!=undefined){L[Q.displayname]=W}else{L[Q.name]=W}}if(U.recordendindex<=0||X<U.recordendindex){aa[S+T]=i.extend({},L);aa[S+T].uid=ah;this.originaldata[S+T]=i.extend({},aa[Z]);T++}}}if(U.hierarchy&&U.hierarchy.root){for(var Z=X;Z<J;Z++){var I=K[Z];var N=aa[Z];if(i(I).parent().length>0){var ah=this.getid(U.id,i(I).parents(U.hierarchy.record+":first"));N.parentuid=ah}else{N.parentuid=null}}}this.records=aa;this.cachedrecords=this.records},loadtext:function(Y,P){if(Y==null){return}var e=P.rowDelimiter||this.rowDelimiter||"\n";var L=Y.split(e);var J=L.length;var X=Y.split("\r");if(J==1&&X.length>1){L=X;J=L.length}this.totalrecords=this.virtualmode?(P.totalrecords||J):J;this.records=new Array();this.originaldata=new Array();var U=this.records;var R=!this.pageable?P.recordstartindex:this.pagesize*this.pagenum;this.recordids=new Array();if(P.loadallrecords){R=0;J=this.totalrecords}var N=0;if(this.virtualmode){R=!this.pageable?P.recordstartindex:this.pagesize*this.pagenum;N=R;R=0;J=this.totalrecords}var V=P.datafields.length;var O=P.columnDelimiter||this.columnDelimiter;if(!O){O=(P.datatype==="tab"||P.datatype==="tsv")?"\t":","}for(var T=R;T<J;T++){var I=L[T];var W=null;if(!this.recordids[W]){if(P.id==null){W=T;this.recordids[W]=I}var K={};var H=L[T].split(O);for(var S=0;S<V;S++){if(S>=H.length){continue}var M=P.datafields[S];var Q=H[S];if(M.map&&i.isFunction(M.map)){Q=M.map(I)}if(M.type){Q=this.getvaluebytype(Q,M)}var Z=M.map||M.name||S.toString();K[Z]=Q;if(P.id!=null){if(P.id===M.name){W=Q;this.recordids[W]=I}}}if(W==null){W=T}U[N+T]=i.extend({},K);U[N+T].uid=W;this.originaldata[N+T]=i.extend({},U[T])}}this.records=U;this.cachedrecords=this.records},getvaluebytype:function(L,H){var J=L;if(L==null){return L}if(i.isArray(L)&&H.type!="array"){for(var I=0;I<L.length;I++){L[I]=this.getvaluebytype(L[I],H)}return L}if(H.type=="date"){if(L=="NaN"){L=""}else{var K=new Date(L);if(typeof L=="string"){if(H.format){var e=i.jqx.dataFormat.parsedate(L,H.format);if(e!=null){K=e}}}if(K.toString()=="NaN"||K.toString()=="Invalid Date"){if(i.jqx.dataFormat){L=i.jqx.dataFormat.tryparsedate(L)}else{L=K}}else{L=K}if(L==null){L=J}}}else{if(H.type=="float"||H.type=="number"||H.type=="decimal"){if(L=="NaN"){L=""}else{var L=parseFloat(L);if(isNaN(L)){L=J}}}else{if(H.type=="int"||H.type=="integer"){var L=parseInt(L);if(isNaN(L)){L=J}}else{if(H.type=="bool"||H.type=="boolean"){if(L!=null){if(L.toLowerCase!=undefined){if(L.toLowerCase()=="false"){L=false}else{if(L.toLowerCase()=="true"){L=true}}}}if(L==1){L=true}else{if(L==0&&L!==""){L=false}else{L=""}}}}}}return L}};i.jqx.dataFormat={};i.extend(i.jqx.dataFormat,{regexTrim:/^\s+|\s+$/g,regexInfinity:/^[+-]?infinity$/i,regexHex:/^0x[a-f0-9]+$/i,regexParseFloat:/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/,toString:Object.prototype.toString,isBoolean:function(e){return typeof e==="boolean"},isObject:function(e){return(e&&(typeof e==="object"||i.isFunction(e)))||false},isDate:function(e){return e instanceof Date},arrayIndexOf:function(J,I){if(J.indexOf){return J.indexOf(I)}for(var e=0,H=J.length;e<H;e++){if(J[e]===I){return e}}return -1},isString:function(e){return typeof e==="string"},isNumber:function(e){return typeof e==="number"&&isFinite(e)},isNull:function(e){return e===null},isUndefined:function(e){return typeof e==="undefined"},isValue:function(e){return(this.isObject(e)||this.isString(e)||this.isNumber(e)||this.isBoolean(e))},isEmpty:function(e){if(!this.isString(e)&&this.isValue(e)){return false}else{if(!this.isValue(e)){return true}}e=i.trim(e).replace(/\&nbsp\;/ig,"").replace(/\&#160\;/ig,"");return e===""},startsWith:function(H,e){return H.indexOf(e)===0},endsWith:function(H,e){return H.substr(H.length-e.length)===e},trim:function(e){return(e+"").replace(this.regexTrim,"")},isArray:function(e){return this.toString.call(e)==="[object Array]"},defaultcalendar:function(){var e={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"MM-dd-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:","};return e},expandFormat:function(K,J){J=J||"F";var I,H=K.patterns,e=J.length;if(e===1){I=H[J];if(!I){throw"Invalid date format string '"+J+"'."}J=I}else{if(e===2&&J.charAt(0)==="%"){J=J.charAt(1)}}return J},getEra:function(I,H){if(!H){return 0}if(typeof I==="string"){return 0}var L,K=I.getTime();for(var J=0,e=H.length;J<e;J++){L=H[J].start;if(L===null||K>=L){return J}}return 0},toUpper:function(e){return e.split("\u00A0").join(" ").toUpperCase()},toUpperArray:function(e){var J=[];for(var I=0,H=e.length;I<H;I++){J[I]=this.toUpper(e[I])}return J},getEraYear:function(H,J,e,K){var I=H.getFullYear();if(!K&&J.eras){I-=J.eras[e].offset}return I},toUpper:function(e){if(e){return e.toUpperCase()}return""},getDayIndex:function(K,J,H){var e,L=K.days,I=K._upperDays;if(!I){K._upperDays=I=[this.toUpperArray(L.names),this.toUpperArray(L.namesAbbr),this.toUpperArray(L.namesShort)]}J=J.toUpperCase();if(H){e=this.arrayIndexOf(I[1],J);if(e===-1){e=this.arrayIndexOf(I[2],J)}}else{e=this.arrayIndexOf(I[0],J)}return e},getMonthIndex:function(N,M,I){var e=N.months,H=N.monthsGenitive||N.months,K=N._upperMonths,L=N._upperMonthsGen;if(!K){N._upperMonths=K=[this.toUpperArray(e.names),this.toUpperArray(e.namesAbbr)];N._upperMonthsGen=L=[this.toUpperArray(H.names),this.toUpperArray(H.namesAbbr)]}M=this.toUpper(M);var J=this.arrayIndexOf(I?K[1]:K[0],M);if(J<0){J=this.arrayIndexOf(I?L[1]:L[0],M)}return J},appendPreOrPostMatch:function(J,e){var I=0,L=false;for(var K=0,H=J.length;K<H;K++){var M=J.charAt(K);switch(M){case"'":if(L){e.push("'")}else{I++}L=false;break;case"\\":if(L){e.push("\\")}L=!L;break;default:e.push(M);L=false;break}}return I},getTokenRegExp:function(){return/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g},formatlink:function(e,I){var H="";if(I&&I.target){H="target="+I.target}if(H!=""){return"<a "+H+' href="'+e+'">'+e+"</a>"}return'<a href="'+e+'">'+e+"</a>"},formatemail:function(e){return'<a href="mailto:'+e+'">'+e+"</a>"},formatNumber:function(e,I,H){return this.formatnumber(e,I,H)},formatnumber:function(T,S,O){if(O==undefined||O==null||O==""){O=this.defaultcalendar()}if(S===""||S===null){return T}if(!this.isNumber(T)){T*=1}var P;if(S.length>1){P=parseInt(S.slice(1),10)}var V={};var Q=S.charAt(0).toUpperCase();V.thousandsSeparator=O.thousandsseparator;V.decimalSeparator=O.decimalseparator;switch(Q){case"D":case"d":case"F":case"f":V.decimalPlaces=P;break;case"N":case"n":V.decimalPlaces=0;break;case"C":case"c":V.decimalPlaces=P;if(O.currencysymbolposition=="before"){V.prefix=O.currencysymbol}else{V.suffix=O.currencysymbol}break;case"P":case"p":V.suffix=O.percentsymbol;V.decimalPlaces=P;break;default:throw"Bad number format specifier: "+Q}if(this.isNumber(T)){var K=(T<0);var I=T+"";var R=(V.decimalSeparator)?V.decimalSeparator:".";var e;if(this.isNumber(V.decimalPlaces)){var L=V.decimalPlaces;var N=Math.pow(10,L);I=(T*N).toFixed(0)/N+"";e=I.lastIndexOf(".");if(L>0){if(e<0){I+=R;e=I.length-1}else{if(R!=="."){I=I.replace(".",R)}}while((I.length-1-e)<L){I+="0"}}}else{var I=T+"";e=I.lastIndexOf(".");if(e>0&&L==undefined){if(R!=="."){I=I.replace(".",R)}}}if(V.thousandsSeparator){var U=V.thousandsSeparator;e=I.lastIndexOf(R);e=(e>-1)?e:I.length;var J=I.substring(e);var H=-1;for(var M=e;M>0;M--){H++;if((H%3===0)&&(M!==e)&&(!K||(M>1))){J=U+J}J=I.charAt(M-1)+J}I=J}I=(V.prefix)?V.prefix+I:I;I=(V.suffix)?I+V.suffix:I;return I}else{return T}},tryparsedate:function(ai,aj){if(aj==undefined||aj==null){aj=this.defaultcalendar()}var O=this;if(ai==""){return null}if(ai!=null&&!ai.substring){ai=ai.toString()}if(ai!=null&&ai.substring(0,6)=="/Date("){var ar=/^\/Date\((-?\d+)(\+|-)?(\d+)?\)\/$/;var ap=new Date(+ai.replace(/\/Date\((\d+)\)\//,"$1"));if(ap=="Invalid Date"){var al=ai.match(/^\/Date\((\d+)([-+]\d\d)(\d\d)\)\/$/);var ap=null;if(al){ap=new Date(1*al[1]+3600000*al[2]+60000*al[3])}}if(ap==null||ap=="Invalid Date"||isNaN(ap)){var P=ar.exec(ai);if(P){var R=new Date(parseInt(P[1]));if(P[2]){var X=parseInt(P[3]);if(P[2]==="-"){X=-X}var T=R.getUTCMinutes();R.setUTCMinutes(T-X)}if(!isNaN(R.valueOf())){return R}}}return ap}patterns=aj.patterns;for(prop in patterns){ap=O.parsedate(ai,patterns[prop],aj);if(ap){if(prop=="ISO"){var aa=O.parsedate(ai,patterns.ISO2,aj);if(aa){return aa}}return ap}}if(ai!=null){var aa=null;var L=[":","/","-"];var an=true;for(var N=0;N<L.length;N++){if(ai.indexOf(L[N])!=-1){an=false}}if(an){var at=new Number(ai);if(!isNaN(at)){return new Date(at)}}}if(i.type(ai)==="string"){var ae=O;ai=ae.trim(ai);var ak=[":","/","-"," ",","];var M=function(ax,av,aw){return aw.replace(new RegExp(ax,"g"),av)};ai=M(", ",",",ai);var I="";var W=ai;if(ai.indexOf(":")>=0){I=ai.substring(ai.indexOf(":")-2);I=ae.trim(I);W=ai.substring(0,ai.indexOf(":")-2)}else{if(ai.toUpperCase().indexOf("AM")>=0){I=ai.substring(ai.toUpperCase().indexOf("AM")-2);I=ae.trim(I);W=ai.substring(0,ai.toUpperCase().indexOf("AM")-2)}else{if(ai.toUpperCase().indexOf("PM")>=0){I=ai.substring(ai.toUpperCase().indexOf("PM")-2);I=ae.trim(I);W=ai.substring(0,ai.toUpperCase().indexOf("PM")-2)}}}var e=new Date();var ag=false;if(W){for(var ao=0;ao<ak.length;ao++){if(W.indexOf(ak[ao])>=0){L=W.split(ak[ao]);break}}var H=new Array();var U=new Array();var ac=new Array();var Q=null;var au=null;for(var ao=0;ao<L.length;ao++){var N=L[ao];var ab=ae.parsedate(N,"d",aj)||ae.parsedate(N,"dd",aj)||ae.parsedate(N,"ddd",aj)||ae.parsedate(N,"dddd",aj);if(ab){if(N.length<=2){Q=ao;H.push(ab.getDate());break}}}for(var ao=0;ao<L.length;ao++){var N=L[ao];var S=ae.parsedate(N,"M",aj)||ae.parsedate(N,"MM",aj)||ae.parsedate(N,"MMM",aj)||ae.parsedate(N,"MMMM",aj);if(S){if(Q!=undefined&&Q==ao){continue}U.push(S.getMonth());if(N.length>2){au=ao;break}}}for(var ao=0;ao<L.length;ao++){var N=L[ao];var ad=ae.parsedate(N,"yyyy",aj);if(ad){if(Q!=undefined&&Q==ao){continue}if(au!=undefined&&au==ao){continue}ac.push(ad.getFullYear())}}var am=new Array();for(var aq=0;aq<H.length;aq++){for(var al=0;al<U.length;al++){for(var ah=0;ah<ac.length;ah++){var R=new Date(ac[ah],U[al],H[aq]);if(ac[ah]<1970){R.setFullYear(ac[ah])}if(R.getTime()!=NaN){am.push(R)}}}}if(am.length>0){e=am[0];ag=true}}if(I){var af=I.indexOf(":")>=0?I.split(":"):I;var K=ae.parsedate(I,"h:mm tt",aj)||ae.parsedate(I,"h:mm:ss tt",aj)||ae.parsedate(I,"HH:mm:ss.fff",aj)||ae.parsedate(I,"HH:mm:ss.ff",aj)||ae.parsedate(I,"HH:mm:ss.tttt",aj)||ae.parsedate(I,"HH:mm:ss",aj)||ae.parsedate(I,"HH:mm",aj)||ae.parsedate(I,"HH",aj);var V=0,J=0,Y=0,Z=0;if(K&&K.getTime()!=NaN){V=K.getHours();J=K.getMinutes();Y=K.getSeconds();Z=K.getMilliseconds()}else{if(af.length==1){V=parseInt(af[0])}if(af.length==2){V=parseInt(af[0]);J=parseInt(af[1])}if(af.length==3){V=parseInt(af[0]);J=parseInt(af[1]);if(af[2].indexOf(".")>=0){Y=parseInt(af[2].toString().split(".")[0]);Z=parseInt(af[2].toString().split(".")[1])}else{Y=parseInt(af[2])}}if(af.length==4){V=parseInt(af[0]);J=parseInt(af[1]);Y=parseInt(af[2]);Z=parseInt(af[3])}}if(e&&!isNaN(V)&&!isNaN(J)&&!isNaN(Y)&&!isNaN(Z)){e.setHours(V,J,Y,Z);ag=true}}if(ag){return e}}return null},getparseregexp:function(e,R){var T=e._parseRegExp;if(!T){e._parseRegExp=T={}}else{var K=T[R];if(K){return K}}var Q=this.expandFormat(e,R).replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1"),O=["^"],H=[],N=0,J=0,W=this.getTokenRegExp(),L;while((L=W.exec(Q))!==null){var V=Q.slice(N,L.index);N=W.lastIndex;J+=this.appendPreOrPostMatch(V,O);if(J%2){O.push(L[0]);continue}var I=L[0],M=I.length,S;switch(I){case"dddd":case"ddd":case"MMMM":case"MMM":case"gg":case"g":S="(\\D+)";break;case"tt":case"t":S="(\\D*)";break;case"yyyy":case"fff":case"ff":case"f":S="(\\d{"+M+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":S="(\\d\\d?)";break;case"zzz":S="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":S="([+-]?\\d\\d?)";break;case"/":S="(\\"+e["/"]+")";break;default:throw"Invalid date format pattern '"+I+"'.";break}if(S){O.push(S)}H.push(L[0])}this.appendPreOrPostMatch(Q.slice(N),O);O.push("$");var U=O.join("").replace(/\s+/g,"\\s+"),P={regExp:U,groups:H};return T[R]=P},outOfRange:function(I,e,H){return I<e||I>H},expandYear:function(L,J){var H=new Date(),e=this.getEra(H);if(J<100){var I=L.twoDigitYearMax;I=typeof I==="string"?new Date().getFullYear()%100+parseInt(I,10):I;var K=this.getEraYear(H,L,e);J+=K-(K%100);if(J>I){J-=100}}return J},parsedate:function(ab,ai,W){if(W==undefined||W==null){W=this.defaultcalendar()}ab=this.trim(ab);var T=W,an=this.getparseregexp(T,ai),N=new RegExp(an.regExp).exec(ab);if(N===null){return null}var aj=an.groups,Z=null,R=null,am=null,al=null,S=null,L=0,ae,ad=0,ak=0,e=0,I=null,U=false;for(var af=0,ah=aj.length;af<ah;af++){var H=N[af+1];if(H){var aa=aj[af],K=aa.length,M=parseInt(H,10);switch(aa){case"dd":case"d":al=M;if(this.outOfRange(al,1,31)){return null}break;case"MMM":case"MMMM":am=this.getMonthIndex(T,H,K===3);if(this.outOfRange(am,0,11)){return null}break;case"M":case"MM":am=M-1;if(this.outOfRange(am,0,11)){return null}break;case"y":case"yy":case"yyyy":R=K<4?this.expandYear(T,M):M;if(this.outOfRange(R,0,9999)){return null}break;case"h":case"hh":L=M;if(L===12){L=0}if(this.outOfRange(L,0,11)){return null}break;case"H":case"HH":L=M;if(this.outOfRange(L,0,23)){return null}break;case"m":case"mm":ad=M;if(this.outOfRange(ad,0,59)){return null}break;case"s":case"ss":ak=M;if(this.outOfRange(ak,0,59)){return null}break;case"tt":case"t":U=T.PM&&(H===T.PM[0]||H===T.PM[1]||H===T.PM[2]);if(!U&&(!T.AM||(H!==T.AM[0]&&H!==T.AM[1]&&H!==T.AM[2]))){return null}break;case"f":case"ff":case"fff":e=M*Math.pow(10,3-K);if(this.outOfRange(e,0,999)){return null}break;case"ddd":case"dddd":S=this.getDayIndex(T,H,K===3);if(this.outOfRange(S,0,6)){return null}break;case"zzz":var J=H.split(/:/);if(J.length!==2){return null}ae=parseInt(J[0],10);if(this.outOfRange(ae,-12,13)){return null}var P=parseInt(J[1],10);if(this.outOfRange(P,0,59)){return null}I=(ae*60)+(this.startsWith(H,"-")?-P:P);break;case"z":case"zz":ae=M;if(this.outOfRange(ae,-12,13)){return null}I=ae*60;break;case"g":case"gg":var V=H;if(!V||!T.eras){return null}V=trim(V.toLowerCase());for(var ag=0,ac=T.eras.length;ag<ac;ag++){if(V===T.eras[ag].name.toLowerCase()){Z=ag;break}}if(Z===null){return null}break}}}var Q=new Date(),Y,O=T.convert;Y=Q.getFullYear();if(R===null){R=Y}else{if(T.eras){R+=T.eras[(Z||0)].offset}}if(am===null){am=0}if(al===null){al=1}if(O){Q=O.toGregorian(R,am,al);if(Q===null){return null}}else{Q.setFullYear(R,am,al);if(Q.getDate()!==al){return null}if(S!==null&&Q.getDay()!==S){return null}}if(U&&L<12){L+=12}Q.setHours(L,ad,ak,e);if(I!==null){var X=Q.getMinutes()-(I+Q.getTimezoneOffset());Q.setHours(Q.getHours()+parseInt(X/60,10),X%60)}return Q},cleardatescache:function(){this.datescache=new Array()},formatDate:function(e,I,H){return this.formatdate(e,I,H)},formatdate:function(Z,ad,U){if(U==undefined||U==null){U=this.defaultcalendar()}if(typeof Z==="string"){return Z}var J=Z.toString()+"_"+ad;if(this.datescache&&this.datescache[J]){return this.datescache[J]}if(!ad||!ad.length||ad==="i"){var af;af=this.formatDate(Z,U.patterns.F,U);return af}var aa=U.eras,H=ad==="s";ad=this.expandFormat(U,ad);af=[];var M,ab=["0","00","000"],Q,R,e=/([^d]|^)(d|dd)([^d]|$)/g,ae=0,W=this.getTokenRegExp(),I;function O(ag,aj){var ai,ah=ag+"";if(aj>1&&ah.length<aj){ai=(ab[aj-2]+ah);return ai.substr(ai.length-aj,aj)}else{ai=ah}return ai}function ac(){if(Q||R){return Q}Q=e.test(ad);R=true;return Q}function K(ah,ag){if(I){return I[ag]}if(ah.getMonth!=undefined){switch(ag){case 0:return ah.getFullYear();case 1:return ah.getMonth();case 2:return ah.getDate()}}}for(;;){var N=W.lastIndex,V=W.exec(ad);var S=ad.slice(N,V?V.index:ad.length);ae+=this.appendPreOrPostMatch(S,af);if(!V){break}if(ae%2){af.push(V[0]);continue}var X=V[0],L=X.length;switch(X){case"ddd":case"dddd":var T=(L===3)?U.days.namesAbbr:U.days.names;af.push(T[Z.getDay()]);break;case"d":case"dd":Q=true;af.push(O(K(Z,2),L));break;case"MMM":case"MMMM":var Y=K(Z,1);af.push(U.months[L===3?"namesAbbr":"names"][Y]);break;case"M":case"MM":af.push(O(K(Z,1)+1,L));break;case"y":case"yy":case"yyyy":Y=this.getEraYear(Z,U,this.getEra(Z,aa),H);if(L<4){Y=Y%100}af.push(O(Y,L));break;case"h":case"hh":M=Z.getHours()%12;if(M===0){M=12}af.push(O(M,L));break;case"H":case"HH":af.push(O(Z.getHours(),L));break;case"m":case"mm":af.push(O(Z.getMinutes(),L));break;case"s":case"ss":af.push(O(Z.getSeconds(),L));break;case"t":case"tt":Y=Z.getHours()<12?(U.AM?U.AM[0]:" "):(U.PM?U.PM[0]:" ");af.push(L===1?Y.charAt(0):Y);break;case"f":case"ff":case"fff":af.push(O(Z.getMilliseconds(),3).substr(0,L));break;case"z":case"zz":M=Z.getTimezoneOffset()/60;af.push((M<=0?"+":"-")+O(Math.floor(Math.abs(M)),L));break;case"zzz":M=Z.getTimezoneOffset()/60;af.push((M<=0?"+":"-")+O(Math.floor(Math.abs(M)),2)+":"+O(Math.abs(Z.getTimezoneOffset()%60),2));break;case"g":case"gg":if(U.eras){af.push(U.eras[this.getEra(Z,aa)].name)}break;case"/":af.push(U["/"]);break;default:throw"Invalid date format pattern '"+X+"'.";break}}var P=af.join("");if(!this.datescache){this.datescache=new Array()}this.datescache[J]=P;return P}});i.jqx.data={};var l,E,p=/#.*$/,a=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,f=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,j=/^(?:GET|HEAD)$/,o=/^\/\//,k=/\?/,b=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,d=/([?&])_=[^&]*/,h=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,t=/\s+/,F=i.fn.load,G={},C={},q=["*/"]+["*"];try{E=location.href}catch(A){E=document.createElement("a");E.href="";E=E.href}l=h.exec(E.toLowerCase())||[];function r(e){return function(K,M){if(typeof K!=="string"){M=K;K="*"}var H,N,O,J=K.toLowerCase().split(t),I=0,L=J.length;if(i.isFunction(M)){for(;I<L;I++){H=J[I];O=/^\+/.test(H);if(O){H=H.substr(1)||"*"}N=e[H]=e[H]||[];N[O?"unshift":"push"](M)}}}}function v(H,Q,L,O,N,J){N=N||Q.dataTypes[0];J=J||{};J[N]=true;var P,M=H[N],I=0,e=M?M.length:0,K=(H===G);for(;I<e&&(K||!P);I++){P=M[I](Q,L,O);if(typeof P==="string"){if(!K||J[P]){P=undefined}else{Q.dataTypes.unshift(P);P=v(H,Q,L,O,P,J)}}}if((K||!P)&&!J["*"]){P=v(H,Q,L,O,"*",J)}return P}function u(I,J){var H,e,K=i.jqx.data.ajaxSettings.flatOptions||{};for(H in J){if(J[H]!==undefined){(K[H]?I:(e||(e={})))[H]=J[H]}}if(e){i.extend(true,I,e)}}i.extend(i.jqx.data,{ajaxSetup:function(H,e){if(e){u(H,i.jqx.data.ajaxSettings)}else{e=H;H=i.jqx.data.ajaxSettings}u(H,e);return H},ajaxSettings:{url:E,isLocal:f.test(l[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":q},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":window.String,"text html":true,"text json":i.parseJSON,"text xml":i.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:r(G),ajaxTransport:r(C),ajax:function(M,J){if(typeof M==="object"){J=M;M=undefined}J=J||{};var P,ad,K,Y,R,V,I,X,Q=i.jqx.data.ajaxSetup({},J),af=Q.context||Q,T=af!==Q&&(af.nodeType||af instanceof i)?i(af):i.event,ae=i.Deferred(),aa=i.Callbacks("once memory"),N=Q.statusCode||{},U={},ab={},L=0,O="canceled",W={readyState:0,setRequestHeader:function(ag,ah){if(!L){var e=ag.toLowerCase();ag=ab[e]=ab[e]||ag;U[ag]=ah}return this},getAllResponseHeaders:function(){return L===2?ad:null},getResponseHeader:function(ag){var e;if(L===2){if(!K){K={};while((e=a.exec(ad))){K[e[1].toLowerCase()]=e[2]}}e=K[ag.toLowerCase()]}return e===undefined?null:e},overrideMimeType:function(e){if(!L){Q.mimeType=e}return this},abort:function(e){e=e||O;if(Y){Y.abort(e)}S(0,e);return this}};function S(ak,ag,al,ai){var e,ao,am,aj,an,ah=ag;if(L===2){return}L=2;if(R){clearTimeout(R)}Y=undefined;ad=ai||"";W.readyState=ak>0?4:0;if(al){aj=B(Q,W,al)}if(ak>=200&&ak<300||ak===304){if(Q.ifModified){an=W.getResponseHeader("Last-Modified");if(an){i.lastModified[P]=an}an=W.getResponseHeader("Etag");if(an){i.etag[P]=an}}if(ak===304){ah="notmodified";e=true}else{e=c(Q,aj);ah=e.state;ao=e.data;am=e.error;e=!am}}else{am=ah;if(!ah||ak){ah="error";if(ak<0){ak=0}}}W.status=ak;W.statusText=(ag||ah)+"";if(e){ae.resolveWith(af,[ao,ah,W])}else{ae.rejectWith(af,[W,ah,am])}W.statusCode(N);N=undefined;if(I){T.trigger("ajax"+(e?"Success":"Error"),[W,Q,e?ao:am])}aa.fireWith(af,[W,ah]);if(I){T.trigger("ajaxComplete",[W,Q]);if(!(--i.active)){i.event.trigger("ajaxStop")}}}ae.promise(W);W.success=W.done;W.error=W.fail;W.complete=aa.add;W.statusCode=function(ag){if(ag){var e;if(L<2){for(e in ag){N[e]=[N[e],ag[e]]}}else{e=ag[W.status];W.always(e)}}return this};Q.url=((M||Q.url)+"").replace(p,"").replace(o,l[1]+"//");Q.dataTypes=i.trim(Q.dataType||"*").toLowerCase().split(t);if(Q.crossDomain==null){V=h.exec(Q.url.toLowerCase());Q.crossDomain=!!(V&&(V[1]!==l[1]||V[2]!==l[2]||(V[3]||(V[1]==="http:"?80:443))!=(l[3]||(l[1]==="http:"?80:443))))}if(Q.data&&Q.processData&&typeof Q.data!=="string"){Q.data=i.param(Q.data,Q.traditional)}v(G,Q,J,W);if(L===2){return W}I=Q.global;Q.type=Q.type.toUpperCase();Q.hasContent=!j.test(Q.type);if(I&&i.active++===0){i.event.trigger("ajaxStart")}if(!Q.hasContent){if(Q.data){Q.url+=(k.test(Q.url)?"&":"?")+Q.data;delete Q.data}P=Q.url;if(Q.cache===false){var H=i.now(),ac=Q.url.replace(d,"$1_="+H);Q.url=ac+((ac===Q.url)?(k.test(Q.url)?"&":"?")+"_="+H:"")}}if(Q.data&&Q.hasContent&&Q.contentType!==false||J.contentType){W.setRequestHeader("Content-Type",Q.contentType)}if(Q.ifModified){P=P||Q.url;if(i.lastModified[P]){W.setRequestHeader("If-Modified-Since",i.lastModified[P])}if(i.etag[P]){W.setRequestHeader("If-None-Match",i.etag[P])}}W.setRequestHeader("Accept",Q.dataTypes[0]&&Q.accepts[Q.dataTypes[0]]?Q.accepts[Q.dataTypes[0]]+(Q.dataTypes[0]!=="*"?", "+q+"; q=0.01":""):Q.accepts["*"]);for(X in Q.headers){W.setRequestHeader(X,Q.headers[X])}if(Q.beforeSend&&(Q.beforeSend.call(af,W,Q)===false||L===2)){return W.abort()}O="abort";for(X in {success:1,error:1,complete:1}){W[X](Q[X])}Y=v(C,Q,J,W);if(!Y){S(-1,"No Transport")}else{W.readyState=1;if(I){T.trigger("ajaxSend",[W,Q])}if(Q.async&&Q.timeout>0){R=setTimeout(function(){W.abort("timeout")},Q.timeout)}try{L=1;Y.send(U,S)}catch(Z){if(L<2){S(-1,Z)}else{throw Z}}}return W},active:0,lastModified:{},etag:{}});function B(P,O,L){var K,M,J,e,H=P.contents,N=P.dataTypes,I=P.responseFields;for(M in I){if(M in L){O[I[M]]=L[M]}}while(N[0]==="*"){N.shift();if(K===undefined){K=P.mimeType||O.getResponseHeader("content-type")}}if(K){for(M in H){if(H[M]&&H[M].test(K)){N.unshift(M);break}}}if(N[0] in L){J=N[0]}else{for(M in L){if(!N[0]||P.converters[M+" "+N[0]]){J=M;break}if(!e){e=M}}J=J||e}if(J){if(J!==N[0]){N.unshift(J)}return L[J]}}function c(R,J){var P,H,N,L,O=R.dataTypes.slice(),I=O[0],Q={},K=0;if(R.dataFilter){J=R.dataFilter(J,R.dataType)}if(O[1]){for(P in R.converters){Q[P.toLowerCase()]=R.converters[P]}}for(;(N=O[++K]);){if(N!=="*"){if(I!=="*"&&I!==N){P=Q[I+" "+N]||Q["* "+N];if(!P){for(H in Q){L=H.split(" ");if(L[1]===N){P=Q[I+" "+L[0]]||Q["* "+L[0]];if(P){if(P===true){P=Q[H]}else{if(Q[H]!==true){N=L[0];O.splice(K--,0,N)}}break}}}}if(P!==true){if(P&&R["throws"]){J=P(J)}else{try{J=P(J)}catch(M){return{state:"parsererror",error:P?M:"No conversion from "+I+" to "+N}}}}}I=N}}return{state:"success",data:J}}var y=[],n=/\?/,D=/(=)\?(?=&|$)|\?\?/,z=i.now();i.jqx.data.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=y.pop()||(i.expando+"_"+(z++));this[e]=true;return e}});i.jqx.data.ajaxPrefilter("json jsonp",function(Q,L,P){var O,e,N,J=Q.data,H=Q.url,I=Q.jsonp!==false,M=I&&D.test(H),K=I&&!M&&typeof J==="string"&&!(Q.contentType||"").indexOf("application/x-www-form-urlencoded")&&D.test(J);if(Q.dataTypes[0]==="jsonp"||M||K){O=Q.jsonpCallback=i.isFunction(Q.jsonpCallback)?Q.jsonpCallback():Q.jsonpCallback;e=window[O];if(M){Q.url=H.replace(D,"$1"+O)}else{if(K){Q.data=J.replace(D,"$1"+O)}else{if(I){Q.url+=(n.test(H)?"&":"?")+Q.jsonp+"="+O}}}Q.converters["script json"]=function(){if(!N){i.error(O+" was not called")}return N[0]};Q.dataTypes[0]="json";window[O]=function(){N=arguments};P.always(function(){window[O]=e;if(Q[O]){Q.jsonpCallback=L.jsonpCallback;y.push(O)}if(N&&i.isFunction(e)){e(N[0])}N=e=undefined});return"script"}});i.jqx.data.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){i.globalEval(e);return e}}});i.jqx.data.ajaxPrefilter("script",function(e){if(e.cache===undefined){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});i.jqx.data.ajaxTransport("script",function(I){if(I.crossDomain){var e,H=document.head||document.getElementsByTagName("head")[0]||document.documentElement;return{send:function(J,K){e=document.createElement("script");e.async="async";if(I.scriptCharset){e.charset=I.scriptCharset}e.src=I.url;e.onload=e.onreadystatechange=function(M,L){if(L||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(H&&e.parentNode){H.removeChild(e)}e=undefined;if(!L){K(200,"success")}}};H.insertBefore(e,H.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var w,x=window.ActiveXObject?function(){for(var e in w){w[e](0,1)}}:false,m=0;function g(){try{return new window.XMLHttpRequest()}catch(H){}}function s(){try{return new window.ActiveXObject("Microsoft.XMLHTTP")}catch(H){}}i.jqx.data.ajaxSettings.xhr=window.ActiveXObject?function(){return !this.isLocal&&g()||s()}:g;(function(e){i.extend(i.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(i.jqx.data.ajaxSettings.xhr());if(i.support.ajax){i.jqx.data.ajaxTransport(function(e){if(!e.crossDomain||i.support.cors){var H;return{send:function(N,I){var L,K,M=e.xhr();if(e.username){M.open(e.type,e.url,e.async,e.username,e.password)}else{M.open(e.type,e.url,e.async)}if(e.xhrFields){for(K in e.xhrFields){M[K]=e.xhrFields[K]}}if(e.mimeType&&M.overrideMimeType){M.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!N["X-Requested-With"]){N["X-Requested-With"]="XMLHttpRequest"}try{for(K in N){M.setRequestHeader(K,N[K])}}catch(J){}M.send((e.hasContent&&e.data)||null);H=function(W,Q){var R,P,O,U,T;try{if(H&&(Q||M.readyState===4)){H=undefined;if(L){M.onreadystatechange=i.noop;if(x){delete w[L]}}if(Q){if(M.readyState!==4){M.abort()}}else{R=M.status;O=M.getAllResponseHeaders();U={};T=M.responseXML;if(T&&T.documentElement){U.xml=T}try{U.text=M.responseText}catch(V){}try{P=M.statusText}catch(V){P=""}if(!R&&e.isLocal&&!e.crossDomain){R=U.text?200:404}else{if(R===1223){R=204}}}}}catch(S){if(!Q){I(-1,S)}}if(U){I(R,P,U,O)}};if(!e.async){H()}else{if(M.readyState===4){setTimeout(H,0)}else{L=++m;if(x){if(!w){w={};i(window).unload(x)}w[L]=H}M.onreadystatechange=H}}},abort:function(){if(H){H(0,1)}}}}})}i.jqx.filter=function(){this.operator="and";var M=0;var J=1;var P=["EMPTY","NOT_EMPTY","CONTAINS","CONTAINS_CASE_SENSITIVE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_CASE_SENSITIVE","STARTS_WITH","STARTS_WITH_CASE_SENSITIVE","ENDS_WITH","ENDS_WITH_CASE_SENSITIVE","EQUAL","EQUAL_CASE_SENSITIVE","NULL","NOT_NULL"];var R=["EQUAL","NOT_EQUAL","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","NULL","NOT_NULL"];var S=["EQUAL","NOT_EQUAL","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","NULL","NOT_NULL"];var L=["EQUAL","NOT_EQUAL"];var K=new Array();var Q=new Array();this.evaluate=function(X){var V=true;for(var W=0;W<K.length;W++){var U=K[W].evaluate(X);if(W==0){V=U}else{if(Q[W]==J||Q[W]=="or"){V=V||U}else{V=V&&U}}}return V};this.getfilterscount=function(){return K.length};this.setoperatorsbyfiltertype=function(U,V){switch(U){case"numericfilter":R=V;break;case"stringfilter":P=V;break;case"datefilter":S=V;break;case"booleanfilter":L=V;break}};this.getoperatorsbyfiltertype=function(U){var V=new Array();switch(U){case"numericfilter":V=R.slice(0);break;case"stringfilter":V=P.slice(0);break;case"datefilter":V=S.slice(0);break;case"booleanfilter":V=L.slice(0);break}return V};var O=function(){var U=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(U()+"-"+U()+"-"+U())};this.createfilter=function(Y,V,X,W,U,Z){if(Y==null||Y==undefined){return null}switch(Y){case"numericfilter":return new N(V,X.toUpperCase());case"stringfilter":return new T(V,X.toUpperCase());case"datefilter":return new H(V,X.toUpperCase(),U,Z);case"booleanfilter":return new I(V,X.toUpperCase());case"custom":return new e(V,X.toUpperCase(),W)}throw new Error("jqxGrid: There is no such filter type. The available filter types are: 'numericfilter', 'stringfilter', 'datefilter' and 'booleanfilter'");return null};this.getfilters=function(){var U=new Array();for(var V=0;V<K.length;V++){var W={value:K[V].filtervalue,condition:K[V].comparisonoperator,operator:Q[V],type:K[V].type};if(K[V].data){W.id=K[V].data}U[V]=W}return U};this.addfilter=function(U,V){K[K.length]=V;V.key=O();Q[Q.length]=U};this.removefilter=function(V){for(var U=0;U<K.length;U++){if(K[U].key==V.key){K.splice(U,1);Q.splice(U,1);break}}};this.getoperatorat=function(U){if(U==undefined||U==null){return null}if(U<0||U>K.length){return null}return Q[U]};this.setoperatorat=function(V,U){if(V==undefined||V==null){return null}if(V<0||V>K.length){return null}Q[U]=U};this.getfilterat=function(U){if(U==undefined||U==null){return null}if(U<0||U>K.length){return null}return K[U]};this.setfilterat=function(U,V){if(U==undefined||U==null){return null}if(U<0||U>K.length){return null}V.key=O();K[U]=V};this.clear=function(){K=new Array();Q=new Array()};var T=function(V,U){this.filtervalue=V;this.comparisonoperator=U;this.type="stringfilter";this.evaluate=function(af){var ae=this.filtervalue;var al=this.comparisonoperator;if(af==null||af==undefined||af==""){if(al=="NULL"){return true}if(al=="EQUAL"&&af==ae){return true}if(al=="NOT_EQUAL"&&af!=ae){return true}if(al!="EMPTY"){return false}else{if(af==""){return true}}}var an="";try{an=af.toString()}catch(ag){return true}var am=function(ap,ao){switch(al){case"EQUAL":return i.jqx.string.equalsIgnoreCase(ap,ao);case"EQUAL_CASE_SENSITIVE":return i.jqx.string.equals(ap,ao);case"NOT_EQUAL":return !i.jqx.string.equalsIgnoreCase(ap,ao);case"NOT_EQUAL_CASE_SENSITIVE":return !i.jqx.string.equals(ap,ao);case"CONTAINS":return i.jqx.string.containsIgnoreCase(ap,ao);case"CONTAINS_CASE_SENSITIVE":return i.jqx.string.contains(ap,ao);case"DOES_NOT_CONTAIN":return !i.jqx.string.containsIgnoreCase(ap,ao);case"DOES_NOT_CONTAIN_CASE_SENSITIVE":return !i.jqx.string.contains(ap,ao);case"EMPTY":return ap=="";case"NOT_EMPTY":return ap!="";case"NOT_NULL":return ap!=null;case"STARTS_WITH":return i.jqx.string.startsWithIgnoreCase(ap,ao);case"ENDS_WITH":return i.jqx.string.endsWithIgnoreCase(ap,ao);case"ENDS_WITH_CASE_SENSITIVE":return i.jqx.string.endsWith(ap,ao);case"STARTS_WITH_CASE_SENSITIVE":return i.jqx.string.startsWith(ap,ao);default:return false}};var Z=new Array();if(ae&&ae.indexOf){if(ae.indexOf("|")>=0||ae.indexOf(" AND ")>=0||ae.indexOf(" OR ")>=0||ae.indexOf(" and ")>=0||ae.indexOf(" or ")>=0){var aa=am(an,ae);if(aa){return aa}var ab=ae.indexOf(" AND ")>=0?ae.split(" AND "):new Array();var Y=ae.indexOf(" OR ")>=0?ae.split(" OR "):new Array();var X=ae.indexOf(" and ")>=0?ae.split(" and "):new Array();var ac=ae.indexOf(" or ")>=0?ae.split(" or "):new Array();var W=ae.indexOf("|")>=0?ae.split("|"):new Array();if(W.length>0){for(var ak=0;ak<W.length;ak++){W[ak]=i.trim(W[ak])}}var aj=ae.indexOf(" ")>=0?ae.split(" "):new Array();if(aj.length>0){for(var ak=0;ak<aj.length;ak++){aj[ak]=i.trim(aj[ak])}}ab=ab.concat(aj);ab=ab.concat(X);Y=Y.concat(W);Y=Y.concat(ac);if(ab.length>0){for(var ak=0;ak<ab.length;ak++){if(!ab[ak].indexOf(" OR ")>=0){Z.push(ab[ak])}}}if(Y.length>0){for(var ak=0;ak<Y.length;ak++){if(!Y[ak].indexOf(" AND ")>=0){Z.push(Y[ak])}}}var ai=undefined;for(var ah=0;ah<Z.length;ah++){var af=Z[ah];var aa=am(an,af);var ad=ah<ab.length?"and":"or";if(ai==undefined){ai=aa}else{if(ad=="or"){ai=ai||aa}else{ai=ai&&aa}}}return ai}}return am(an,ae)}};var I=function(V,U){this.filtervalue=V;this.comparisonoperator=U;this.type="booleanfilter";this.evaluate=function(Y){var X=this.filtervalue;var W=this.comparisonoperator;if(Y==null||Y==undefined){if(W=="NULL"){return true}return false}var Z=Y;switch(W){case"EQUAL":return Z==X||Z.toString()==X.toString();case"NOT_EQUAL":return Z!=X&&Z.toString()!=X.toString();default:return false}}};var N=function(V,U){this.filtervalue=V;this.comparisonoperator=U;this.type="numericfilter";this.evaluate=function(ag){var af=this.filtervalue;var al=this.comparisonoperator;if(ag===null||ag===undefined||ag===""){if(al=="NOT_NULL"){return false}if(al=="NULL"){return true}else{switch(al){case"EQUAL":return ag==af;case"NOT_EQUAL":return ag!=af}return false}}else{if(al=="NULL"){return false}if(al=="NOT_NULL"){return true}}var an=ag;try{an=parseFloat(an)}catch(ah){if(ag.toString()!=""){return false}}var am=function(ap,ao){switch(al){case"EQUAL":return ap==ao;case"NOT_EQUAL":return ap!=ao;case"GREATER_THAN":return ap>ao;case"GREATER_THAN_OR_EQUAL":return ap>=ao;case"LESS_THAN":return ap<ao;case"LESS_THAN_OR_EQUAL":return ap<=ao;case"STARTS_WITH":return i.jqx.string.startsWithIgnoreCase(ap.toString(),ao.toString());case"ENDS_WITH":return i.jqx.string.endsWithIgnoreCase(ap.toString(),ao.toString());case"ENDS_WITH_CASE_SENSITIVE":return i.jqx.string.endsWith(ap.toString(),ao.toString());case"STARTS_WITH_CASE_SENSITIVE":return i.jqx.string.startsWith(ap.toString(),ao.toString());case"CONTAINS":return i.jqx.string.containsIgnoreCase(ap.toString(),ao.toString());case"CONTAINS_CASE_SENSITIVE":return i.jqx.string.contains(ap.toString(),ao.toString());case"DOES_NOT_CONTAIN":return !i.jqx.string.containsIgnoreCase(ap.toString(),ao.toString());case"DOES_NOT_CONTAIN_CASE_SENSITIVE":return !i.jqx.string.contains(ap.toString(),ao.toString());default:return true}};var aa=new Array();if(af&&af.indexOf){if(af.indexOf("|")>=0||af.indexOf(" AND ")>=0||af.indexOf(" OR ")>=0||af.indexOf(" and ")>=0||af.indexOf(" or ")>=0){var ab=am(an,af);if(ab){return ab}af=af.toString();var ac=af.indexOf(" AND ")>=0?af.split(" AND "):new Array();var Z=af.indexOf(" OR ")>=0?af.split(" OR "):new Array();var Y=af.indexOf(" and ")>=0?af.split(" and "):new Array();var ad=af.indexOf(" or ")>=0?af.split(" or "):new Array();ac=ac.concat(Y);Z=Z.concat(ad);var X=af.indexOf("|")>=0?af.split("|"):new Array();if(X.length>0){for(var ak=0;ak<X.length;ak++){X[ak]=i.trim(X[ak])}}Z=Z.concat(X);if(ac.length>0){for(var ak=0;ak<ac.length;ak++){if(!ac[ak].indexOf(" OR ")>=0){aa.push(ac[ak])}}}if(Z.length>0){for(var ak=0;ak<Z.length;ak++){if(!Z[ak].indexOf(" AND ")>=0){aa.push(Z[ak])}}}var aj=undefined;for(var ai=0;ai<aa.length;ai++){var ag=aa[ai];if(ag&&ag.indexOf&&ag.indexOf("..")>=0){var W=ag.toString().split("..");if(W.length==2){ab=an>=W[0]&&an<=W[1]}}else{var ab=am(an,ag)}var ae=ai<ac.length?"and":"or";if(aj==undefined){aj=ab}else{if(ae=="or"){aj=aj||ab}else{aj=aj&&ab}}}return aj}}if(af&&af.indexOf&&af.indexOf("..")>=0){aa=af.toString().split("..");if(aa.length==2){return an>=aa[0]&&an<=aa[1]}}return am(an,af)}};var H=function(X,V,W,ab){this.filtervalue=X;this.type="datefilter";var Z=this;if(W!=undefined&&ab!=undefined){var Y=i.jqx.dataFormat.parsedate(X,W,ab);if(Y!=null){this.filterdate=Y}else{var U=i.jqx.dataFormat.tryparsedate(X,ab);if(U!=null){this.filterdate=U}}}else{var aa=new Date(X);if(aa.toString()=="NaN"||aa.toString()=="Invalid Date"){this.filterdate=i.jqx.dataFormat.tryparsedate(X)}else{this.filterdate=aa}}if(!this.filterdate){var aa=new Date(X);if(aa.toString()=="NaN"||aa.toString()=="Invalid Date"){this.filterdate=i.jqx.dataFormat.tryparsedate(X)}else{this.filterdate=aa}}this.comparisonoperator=V;this.evaluate=function(ao){var an=this.filtervalue;var aw=this.comparisonoperator;if(ao==null||ao==undefined||ao==""){if(aw=="NOT_NULL"){return false}if(aw=="NULL"){return true}else{switch(aw){case"EQUAL":return ao==an;case"NOT_EQUAL":return ao!=an}return false}}else{if(aw=="NULL"){return false}if(aw=="NOT_NULL"){return true}}var ay=new Date();ay.setFullYear(1900,0,1);ay.setHours(12,0,0,0);try{var av=new Date(ao);if(av.toString()=="NaN"||av.toString()=="Invalid Date"){ao=i.jqx.dataFormat.tryparsedate(ao)}else{ao=av}ay=ao;var at=false;if(W!=undefined&&ab!=undefined){if(W.indexOf("t")>=0||W.indexOf("T")>=0||W.indexOf(":")>=0||W.indexOf("f")>=0){at=true;if(an&&an.toString().indexOf(":")==-1){var aj=i.jqx.dataFormat.tryparsedate(an.toString()+":00",ab);if(aj!=null){Z.filterdate=aj}}}}if(!at){ay.setHours(0);ay.setMinutes(0);ay.setSeconds(0)}}catch(ap){if(ao.toString()!=""){return false}}if(Z.filterdate!=null){an=Z.filterdate}else{if(an&&an.indexOf){if(an.indexOf(":")!=-1||!isNaN(parseInt(an))){var ai=new Date(ay);ai.setHours(12,0,0,0);var ah=an.split(":");for(var au=0;au<ah.length;au++){if(au==0){ai.setHours(ah[au])}if(au==1){ai.setMinutes(ah[au])}if(au==2){ai.setSeconds(ah[au])}}an=ai}}}if(at){if(an&&an.setFullYear){if(ay&&ay.getFullYear){if(W.indexOf("d")==-1&&W.indexOf("M")==-1&&W.indexOf("y")==-1){an.setFullYear(ay.getFullYear(),ay.getMonth(),ay.getDate())}}}}var ax=function(aA,az){if(aA==null){aA=""}switch(aw){case"EQUAL":return aA.toString()==az.toString();case"NOT_EQUAL":return aA.toString()!=az.toString();case"GREATER_THAN":return aA>az;case"GREATER_THAN_OR_EQUAL":return aA>=az;case"LESS_THAN":return aA<az;case"LESS_THAN_OR_EQUAL":return aA<=az;case"STARTS_WITH":return i.jqx.string.startsWithIgnoreCase(aA.toString(),az.toString());case"ENDS_WITH":return i.jqx.string.endsWithIgnoreCase(aA.toString(),az.toString());case"ENDS_WITH_CASE_SENSITIVE":return i.jqx.string.endsWith(aA.toString(),az.toString());case"STARTS_WITH_CASE_SENSITIVE":return i.jqx.string.startsWith(aA.toString(),az.toString());case"CONTAINS":return i.jqx.string.containsIgnoreCase(aA.toString(),az.toString());case"CONTAINS_CASE_SENSITIVE":return i.jqx.string.contains(aA.toString(),az.toString());case"DOES_NOT_CONTAIN":return !i.jqx.string.containsIgnoreCase(aA.toString(),az.toString());case"DOES_NOT_CONTAIN_CASE_SENSITIVE":return !i.jqx.string.contains(aA.toString(),az.toString());default:return true}};var ag=new Array();if(an&&an.indexOf){if(an.indexOf("|")>=0||an.indexOf(" AND ")>=0||an.indexOf(" OR ")>=0||an.indexOf(" and ")>=0||an.indexOf(" or ")>=0){var aj=ax(ay,an);if(aj){return aj}var ak=an.indexOf(" AND ")>=0?an.split(" AND "):new Array();var af=an.indexOf(" OR ")>=0?an.split(" OR "):new Array();var ae=an.indexOf(" and ")>=0?an.split(" and "):new Array();var al=an.indexOf(" or ")>=0?an.split(" or "):new Array();ak=ak.concat(ae);af=af.concat(al);var ad=an.indexOf("|")>=0?an.split("|"):new Array();if(ad.length>0){for(var au=0;au<ad.length;au++){ad[au]=i.trim(ad[au])}}af=af.concat(ad);if(ak.length>0){for(var au=0;au<ak.length;au++){if(!ak[au].indexOf(" OR ")>=0){ag.push(ak[au])}}}if(af.length>0){for(var au=0;au<af.length;au++){if(!af[au].indexOf(" AND ")>=0){ag.push(af[au])}}}var ar=undefined;for(var aq=0;aq<ag.length;aq++){var ao=ag[aq];if(ao&&ao.indexOf&&ao.indexOf("..")>=0){var ac=ao.toString().split("..");if(ac.length==2){aj=ay>=ac[0]&&ay<=ac[1]}}else{var aj=ax(ay,ao)}var am=aq<ak.length?"and":"or";if(ar==undefined){ar=aj}else{if(am=="or"){ar=ar||aj}else{ar=ar&&aj}}}return ar}}if(an&&an.indexOf&&an.indexOf("..")>=0){ag=an.toString().split("..");if(ag.length==2){return ay>=ag[0]&&ay<=ag[1]}}return ax(ay,an)}};var e=function(V,U,W){this.filtervalue=V;this.comparisonoperator=U;this.evaluate=function(Y,X){return W(this.filtervalue,Y,this.comparisonoperator)}}};i.jqx.longInt=function(){var H=this;H.longObj=new Object();var e=H.longObj;e.mathObj=new Object();e.mathObj.Long=new Object();e.mathObj.Long=function(I,J){this.lowBits=I|0;this.highBits=J|0};e.mathObj.Long.IntCache={};e.mathObj.Long.fromInt=function(I){if(-128<=I&&I<128){var K=e.mathObj.Long.IntCache[I];if(K){return K}}var J=new e.mathObj.Long(I|0,I<0?-1:0);if(-128<=I&&I<128){e.mathObj.Long.IntCache[I]=J}return J};e.mathObj.Long.fromNumber=function(I){if(isNaN(I)||!isFinite(I)){return e.mathObj.Long.ZERO}else{if(I<=-e.mathObj.Long.TWO_PWR_63_DBL_){return e.mathObj.Long.MIN_VALUE}else{if(I+1>=e.mathObj.Long.TWO_PWR_63_DBL_){return e.mathObj.Long.MAX_VALUE}else{if(I<0){return e.mathObj.Long.fromNumber(-I).negate()}else{return new e.mathObj.Long((I%e.mathObj.Long.TWO_PWR_32_DBL_)|0,(I/e.mathObj.Long.TWO_PWR_32_DBL_)|0)}}}}};e.mathObj.Long.fromBits=function(I,J){return new e.mathObj.Long(I,J)};e.mathObj.Long.fromString=function(K,N){if(K.length===0){throw new Error("number format error: empty string")}var L=N||10;if(L<2||36<L){throw new Error("radix out of range: "+L)}if(K.charAt(0)==="-"){return e.mathObj.Long.fromString(K.substring(1),L).negate()}else{if(K.indexOf("-")>=0){throw new Error('number format error: interior "-" character: '+K)}}var O=e.mathObj.Long.fromNumber(Math.pow(L,8));var Q=e.mathObj.Long.ZERO;for(var J=0;J<K.length;J+=8){var P=Math.min(8,K.length-J);var M=parseInt(K.substring(J,J+P),L);if(P<8){var I=e.mathObj.Long.fromNumber(Math.pow(L,P));Q=Q.multiply(I).add(e.mathObj.Long.fromNumber(M))}else{Q=Q.multiply(O);Q=Q.add(e.mathObj.Long.fromNumber(M))}}return Q};e.mathObj.Long.TWO_PWR_16_DBL_=1<<16;e.mathObj.Long.TWO_PWR_24_DBL_=1<<24;e.mathObj.Long.TWO_PWR_32_DBL_=e.mathObj.Long.TWO_PWR_16_DBL_*e.mathObj.Long.TWO_PWR_16_DBL_;e.mathObj.Long.TWO_PWR_31_DBL_=e.mathObj.Long.TWO_PWR_32_DBL_/2;e.mathObj.Long.TWO_PWR_48_DBL_=e.mathObj.Long.TWO_PWR_32_DBL_*e.mathObj.Long.TWO_PWR_16_DBL_;e.mathObj.Long.TWO_PWR_64_DBL_=e.mathObj.Long.TWO_PWR_32_DBL_*e.mathObj.Long.TWO_PWR_32_DBL_;e.mathObj.Long.TWO_PWR_63_DBL_=e.mathObj.Long.TWO_PWR_64_DBL_/2;e.mathObj.Long.ZERO=e.mathObj.Long.fromInt(0);e.mathObj.Long.ONE=e.mathObj.Long.fromInt(1);e.mathObj.Long.NEG_ONE=e.mathObj.Long.fromInt(-1);e.mathObj.Long.MAX_VALUE=e.mathObj.Long.fromBits(4294967295|0,2147483647|0);e.mathObj.Long.MIN_VALUE=e.mathObj.Long.fromBits(0,2147483648|0);e.mathObj.Long.TWO_PWR_24_=e.mathObj.Long.fromInt(1<<24);e.mathObj.Long.prototype.toInt=function(){return this.lowBits};e.mathObj.Long.prototype.toNumber=function(){return this.highBits*e.mathObj.Long.TWO_PWR_32_DBL_+this.getLowBitsUnsigned()};e.mathObj.Long.prototype.toString=function(O){var M=O||10;if(M<2||36<M){throw new Error("radix out of range: "+M)}if(this.isZero()){return"0"}var P,R;if(this.isNegative()){if(this.equals(e.mathObj.Long.MIN_VALUE)){var K=e.mathObj.Long.fromNumber(M);var I=this.div(K);P=I.multiply(K).subtract(this);return I.toString(M)+P.toInt().toString(M)}else{switch(M){case 2:case 8:case 16:R="-"+this.negate().toString(2);return H._negativeBinary(R,M);default:R="-"+this.negate().toString(M);return R}}}var Q=e.mathObj.Long.fromNumber(Math.pow(M,6));P=this;R="";while(true){var N=P.div(Q);var L=P.subtract(N.multiply(Q)).toInt();var J=L.toString(M);P=N;if(P.isZero()){return J+R}else{while(J.length<6){J="0"+J}R=""+J+R}}};e.mathObj.Long.prototype.getHighBits=function(){return this.highBits};e.mathObj.Long.prototype.getLowBits=function(){return this.lowBits};e.mathObj.Long.prototype.getLowBitsUnsigned=function(){return(this.lowBits>=0)?this.lowBits:e.mathObj.Long.TWO_PWR_32_DBL_+this.lowBits};e.mathObj.Long.prototype.getNumBitsAbs=function(){if(this.isNegative()){if(this.equals(e.mathObj.Long.MIN_VALUE)){return 64}else{return this.negate().getNumBitsAbs()}}else{var J=this.highBits!==0?this.highBits:this.lowBits;for(var I=31;I>0;I--){if((J&(1<<I))!==0){break}}return this.highBits!==0?I+33:I+1}};e.mathObj.Long.prototype.isZero=function(){return this.highBits===0&&this.lowBits===0};e.mathObj.Long.prototype.isNegative=function(){return this.highBits<0};e.mathObj.Long.prototype.isOdd=function(){return(this.lowBits&1)===1};e.mathObj.Long.prototype.equals=function(I){return(this.highBits===I.highBits)&&(this.lowBits===I.lowBits)};e.mathObj.Long.prototype.notEquals=function(I){return(this.highBits!==I.highBits)||(this.lowBits!==I.lowBits)};e.mathObj.Long.prototype.lessThan=function(I){return this.compare(I)<0};e.mathObj.Long.prototype.lessThanOrEqual=function(I){return this.compare(I)<=0};e.mathObj.Long.prototype.greaterThan=function(I){return this.compare(I)>0};e.mathObj.Long.prototype.greaterThanOrEqual=function(I){return this.compare(I)>=0};e.mathObj.Long.prototype.compare=function(J){if(this.equals(J)){return 0}var I=this.isNegative();var K=J.isNegative();if(I&&!K){return -1}if(!I&&K){return 1}if(this.subtract(J).isNegative()){return -1}else{return 1}};e.mathObj.Long.prototype.negate=function(){if(this.equals(e.mathObj.Long.MIN_VALUE)){return e.mathObj.Long.MIN_VALUE}else{return this.not().add(e.mathObj.Long.ONE)}};e.mathObj.Long.prototype.add=function(P){var N=this.highBits>>>16;var J=this.highBits&65535;var Q=this.lowBits>>>16;var K=this.lowBits&65535;var S=P.highBits>>>16;var L=P.highBits&65535;var T=P.lowBits>>>16;var M=P.lowBits&65535;var U=0,O=0,I=0,R=0;R+=K+M;I+=R>>>16;R&=65535;I+=Q+T;O+=I>>>16;I&=65535;O+=J+L;U+=O>>>16;O&=65535;U+=N+S;U&=65535;return e.mathObj.Long.fromBits((I<<16)|R,(U<<16)|O)};e.mathObj.Long.prototype.subtract=function(I){return this.add(I.negate())};e.mathObj.Long.prototype.multiply=function(P){if(this.isZero()){return e.mathObj.Long.ZERO}else{if(P.isZero()){return e.mathObj.Long.ZERO}}if(this.equals(e.mathObj.Long.MIN_VALUE)){return P.isOdd()?e.mathObj.Long.MIN_VALUE:e.mathObj.Long.ZERO}else{if(P.equals(e.mathObj.Long.MIN_VALUE)){return this.isOdd()?e.mathObj.Long.MIN_VALUE:e.mathObj.Long.ZERO}}if(this.isNegative()){if(P.isNegative()){return this.negate().multiply(P.negate())}else{return this.negate().multiply(P).negate()}}else{if(P.isNegative()){return this.multiply(P.negate()).negate()}}if(this.lessThan(e.mathObj.Long.TWO_PWR_24_)&&P.lessThan(e.mathObj.Long.TWO_PWR_24_)){return e.mathObj.Long.fromNumber(this.toNumber()*P.toNumber())}var N=this.highBits>>>16;var J=this.highBits&65535;var Q=this.lowBits>>>16;var K=this.lowBits&65535;var S=P.highBits>>>16;var L=P.highBits&65535;var T=P.lowBits>>>16;var M=P.lowBits&65535;var U=0,O=0,I=0,R=0;R+=K*M;I+=R>>>16;R&=65535;I+=Q*M;O+=I>>>16;I&=65535;I+=K*T;O+=I>>>16;I&=65535;O+=J*M;U+=O>>>16;O&=65535;O+=Q*T;U+=O>>>16;O&=65535;O+=K*L;U+=O>>>16;O&=65535;U+=N*M+J*T+Q*L+K*S;U&=65535;return e.mathObj.Long.fromBits((I<<16)|R,(U<<16)|O)};e.mathObj.Long.prototype.div=function(K){if(K.isZero()){throw new Error("division by zero")}else{if(this.isZero()){return e.mathObj.Long.ZERO}}var N,P;if(this.equals(e.mathObj.Long.MIN_VALUE)){if(K.equals(e.mathObj.Long.ONE)||K.equals(e.mathObj.Long.NEG_ONE)){return e.mathObj.Long.MIN_VALUE}else{if(K.equals(e.mathObj.Long.MIN_VALUE)){return e.mathObj.Long.ONE}else{var I=this.shiftRight(1);N=I.div(K).shiftLeft(1);if(N.equals(e.mathObj.Long.ZERO)){return K.isNegative()?e.mathObj.Long.ONE:e.mathObj.Long.NEG_ONE}else{P=this.subtract(K.multiply(N));var R=N.add(P.div(K));return R}}}}else{if(K.equals(e.mathObj.Long.MIN_VALUE)){return e.mathObj.Long.ZERO}}if(this.isNegative()){if(K.isNegative()){return this.negate().div(K.negate())}else{return this.negate().div(K).negate()}}else{if(K.isNegative()){return this.div(K.negate()).negate()}}var L=e.mathObj.Long.ZERO;P=this;while(P.greaterThanOrEqual(K)){N=Math.max(1,Math.floor(P.toNumber()/K.toNumber()));var Q=Math.ceil(Math.log(N)/Math.LN2);var O=(Q<=48)?1:Math.pow(2,Q-48);var J=e.mathObj.Long.fromNumber(N);var M=J.multiply(K);while(M.isNegative()||M.greaterThan(P)){N-=O;J=e.mathObj.Long.fromNumber(N);M=J.multiply(K)}if(J.isZero()){J=e.mathObj.Long.ONE}L=L.add(J);P=P.subtract(M)}return L};e.mathObj.Long.prototype.modulo=function(I){return this.subtract(this.div(I).multiply(I))};e.mathObj.Long.prototype.not=function(){return e.mathObj.Long.fromBits(~this.lowBits,~this.highBits)};e.mathObj.Long.prototype.and=function(I){return e.mathObj.Long.fromBits(this.lowBits&I.lowBits,this.highBits&I.highBits)};e.mathObj.Long.prototype.or=function(I){return e.mathObj.Long.fromBits(this.lowBits|I.lowBits,this.highBits|I.highBits)};e.mathObj.Long.prototype.xor=function(I){return e.mathObj.Long.fromBits(this.lowBits^I.lowBits,this.highBits^I.highBits)};e.mathObj.Long.prototype.shiftLeft=function(K){K&=63;if(K===0){return this}else{var I=this.lowBits;if(K<32){var J=this.highBits;return e.mathObj.Long.fromBits(I<<K,(J<<K)|(I>>>(32-K)))}else{return e.mathObj.Long.fromBits(0,I<<(K-32))}}};e.mathObj.Long.prototype.shiftRight=function(K){K&=63;if(K===0){return this}else{var J=this.highBits;if(K<32){var I=this.lowBits;return e.mathObj.Long.fromBits((I>>>K)|(J<<(32-K)),J>>K)}else{return e.mathObj.Long.fromBits(J>>(K-32),J>=0?0:-1)}}};e.mathObj.Long.prototype.shiftRightUnsigned=function(K){K&=63;if(K===0){return this}else{var J=this.highBits;if(K<32){var I=this.lowBits;return e.mathObj.Long.fromBits((I>>>K)|(J<<(32-K)),J>>>K)}else{if(K===32){return e.mathObj.Long.fromBits(J,0)}else{return e.mathObj.Long.fromBits(J>>>(K-32),0)}}}};return e};i.jqx.math=function(){var H=new Object();var e=new i.jqx.longInt();H.getDecimalNotation=function(M,K){if(K==="decimal"){return M}M=M.toString();function I(T){var S="-0123456789";var Q="⁻⁰¹²³⁴⁵⁶⁷⁸⁹";var P="";for(var R=0;R<T.length;R++){var U=S.indexOf(T.charAt(R));P+=(U!==-1?Q[U]:T[R])}return P}function O(R){if(R==="0"){return parseInt(R).toExponential()}var Q;if(R.charAt(0)==="-"){Q="-";R=R.slice(1,R.length)}else{Q=""}var S=R.length-1;while(R.charAt(R.length-1)==="0"){R=R.slice(0,R.length-1)}var P=R.slice(1,R.length);if(P!==""){P="."+P}return Q+""+R.charAt(0)+P+"e+"+S}function L(S){var R=S.indexOf("e");var Q=S.slice(R+1);var P=S.slice(0,R+1);P=P.replace("e","×10");P+=I(Q);P=P.replace("+","");return P}function J(V){var U=V.indexOf("e");var T=V.slice(U+1);var R=V.slice(0,U);var S=parseInt(T,10)%3;R=R*Math.pow(10,S);var Q=V.slice(0,U).length-S-2;if(Q>=0){R=R.toFixed(Q)}var P=R+"×10"+I((parseInt(T,10)-S).toString());return P}var N=O(M);if(K==="scientific"){return L(N)}else{if(K==="engineering"){return J(N)}else{return N}}};i.extend(H,e.mathObj.Long);return H}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxValidator","",{});a.extend(a.jqx._jqxValidator.prototype,{defineInstance:function(){var b={rules:null,scroll:true,focus:true,scrollDuration:300,scrollCallback:null,position:"right",arrow:true,animation:"fade",animationDuration:150,closeOnClick:true,onError:null,onSuccess:null,ownerElement:null,_events:["validationError","validationSuccess"],hintPositionOffset:5,_inputHint:[],rtl:false,hintType:"tooltip"};a.extend(true,this,b);return b},createInstance:function(){if(this.hintType=="label"&&this.animationDuration==150){this.animationDuration=0}this._configureInputs();this._removeEventListeners();this._addEventListeners()},destroy:function(){this._removeEventListeners();this.hide()},validate:function(q){var b=true,p,f=Infinity,j,h,c,k=[],o;this.updatePosition();var l=this;var d=0;for(var g=0;g<this.rules.length;g+=1){if(typeof this.rules[g].rule==="function"){d++}}this.positions=new Array();for(var g=0;g<this.rules.length;g+=1){var n=a(this.rules[g].input);if(typeof this.rules[g].rule==="function"){var m=function(s,r){p=s;if(false==p){b=false;var i=a(r.input);c=a(r.input);k.push(c);var t=c.offset();if(t){j=t.top;if(f>j){f=j;h=c}}}d--;if(d==0){if(typeof q==="function"){l._handleValidation(b,f,h,k);if(q){q(b)}}}};this._validateRule(this.rules[g],m)}else{p=this._validateRule(this.rules[g])}if(false==p){b=false;c=a(this.rules[g].input);k.push(c);var e=c.offset();if(e){j=e.top;if(f>j){f=j;h=c}}}}if(d==0){this._handleValidation(b,f,h,k);return b}else{return undefined}},validateInput:function(b){var e=this._getRulesForInput(b),d=true;for(var c=0;c<e.length;c+=1){if(!this._validateRule(e[c])){d=false}}return d},hideHint:function(b){var d=this._getRulesForInput(b);for(var c=0;c<d.length;c+=1){this._hideHintByRule(d[c])}},hide:function(){var c;for(var b=0;b<this.rules.length;b+=1){c=this.rules[b];this._hideHintByRule(this.rules[b])}},updatePosition:function(){var c;this.positions=new Array();for(var b=0;b<this.rules.length;b+=1){c=this.rules[b];if(c.hint){this._hintLayout(c.hint,a(c.input),c.position,c)}}},_getRulesForInput:function(b){var d=[];for(var c=0;c<this.rules.length;c+=1){if(this.rules[c].input===b){d.push(this.rules[c])}}return d},_validateRule:function(f,i){var b=a(f.input),h,e=true;var d=this;var g=function(k){if(!k){var j=d.animation;d.animation=null;if(f.hint){d._hideHintByRule(f)}if(a(b).css("display")=="none"){d._hideHintByRule(f);return}if(a(b).parents().length==0){d._hideHintByRule(f);return}h=f.hintRender.apply(d,[f.message,b]);d._hintLayout(h,b,f.position,f);d._showHint(h);f.hint=h;d._removeLowPriorityHints(f);if(i){i(false,f)}d.animation=j}else{d._hideHintByRule(f);if(i){i(true,f)}}};var c=false;if(typeof f.rule==="function"){c=f.rule.call(this,b,g);if(c==true&&i){i(true,f)}}if(typeof f.rule==="function"&&c==false){if(typeof f.hintRender==="function"&&!f.hint&&!this._higherPriorityActive(f)&&b.is(":visible")){h=f.hintRender.apply(this,[f.message,b]);this._removeLowPriorityHints(f);this._hintLayout(h,b,f.position,f);this._showHint(h);f.hint=h}e=false;if(i){i(false,f)}}else{this._hideHintByRule(f)}return e},_hideHintByRule:function(e){var c=a(e.input);var b=this,f;var d=function(){if(b.hintType!="label"){return}var g=b;if(g.position=="top"||g.position=="left"){if(c.prev().hasClass(".jqx-validator-error-label")){return}}else{if(c.next().hasClass(".jqx-validator-error-label")){return}}if(c[0].nodeName.toLowerCase()!="input"){if(c.find("input").length>0){if(c.find(".jqx-input").length>0){c.find(".jqx-input").removeClass(g.toThemeProperty("jqx-validator-error-element"))}else{if(c.is(".jqx-checkbox")){c.find(".jqx-checkbox-default").removeClass(g.toThemeProperty("jqx-validator-error-element"))}}if(c.is(".jqx-radiobutton")){c.find(".jqx-radiobutton-default").removeClass(g.toThemeProperty("jqx-validator-error-element"))}else{c.removeClass(g.toThemeProperty("jqx-validator-error-element"))}}}else{c.removeClass(g.toThemeProperty("jqx-validator-error-element"))}};if(e){f=e.hint;if(f){if(this.positions){if(this.positions[Math.round(f.offset().top)+"_"+Math.round(f.offset().left)]){this.positions[Math.round(f.offset().top)+"_"+Math.round(f.offset().left)]=null}}if(this.animation==="fade"){f.fadeOut(this.animationDuration,function(){f.remove();d()})}else{f.remove();d()}}e.hint=null}},_handleValidation:function(b,e,d,c){if(!b){this._scrollHandler(e);if(this.focus){d.focus()}this._raiseEvent(0,{invalidInputs:c});if(typeof this.onError==="function"){this.onError(c)}}else{this._raiseEvent(1);if(typeof this.onSuccess==="function"){this.onSuccess()}}},_scrollHandler:function(c){if(this.scroll){var b=this;a("html,body").animate({scrollTop:c},this.scrollDuration,function(){if(typeof b.scrollCallback==="function"){b.scrollCallback.call(b)}})}},_higherPriorityActive:function(d){var e=false,c;for(var b=this.rules.length-1;b>=0;b-=1){c=this.rules[b];if(e&&c.input===d.input&&c.hint){return true}if(c===d){e=true}}return false},_removeLowPriorityHints:function(d){var e=false,c;for(var b=0;b<this.rules.length;b+=1){c=this.rules[b];if(e&&c.input===d.input){this._hideHintByRule(c)}if(c===d){e=true}}},_getHintRuleByInput:function(b){var d;for(var c=0;c<this.rules.length;c+=1){d=this.rules[c];if(a(d.input)[0]===b[0]&&d.hint){return d}}return null},_removeEventListeners:function(){var f,b,e;for(var d=0;d<this.rules.length;d+=1){f=this.rules[d];e=f.action.split(",");b=a(f.input);for(var c=0;c<e.length;c+=1){this.removeHandler(b,a.trim(e[c])+".jqx-validator")}}},_addEventListeners:function(){var f,c;if(this.host.parents(".jqx-window").length>0){var b=this;var g=function(){b.updatePosition()};var e=this.host.parents(".jqx-window");this.addHandler(e,"closed",function(){b.hide()});this.addHandler(e,"moved",g);this.addHandler(e,"moving",g);this.addHandler(e,"resized",g);this.addHandler(e,"resizing",g);this.addHandler(a(document.parentWindow),"scroll",function(){if(b.scroll){g()}})}for(var d=0;d<this.rules.length;d+=1){f=this.rules[d];c=a(f.input);this._addListenerTo(c,f)}},_addListenerTo:function(c,h){var b=this,f=h.action.split(",");var e=false;if(this._isjQWidget(c)){e=true}for(var d=0;d<f.length;d+=1){var g=a.trim(f[d]);if(e&&(g=="blur"||g=="focus")){if(c&&c[0].nodeName.toLowerCase()!="input"){c=c.find("input")}}this.addHandler(c,g+".jqx-validator",function(i){b._validateRule(h)})}},_configureInputs:function(){var b,d;this.rules=this.rules||[];for(var c=0;c<this.rules.length;c+=1){this._handleInput(c)}},_handleInput:function(b){var c=this.rules[b];if(!c.position){c.position=this.position}if(!c.message){c.message="Validation Failed!"}if(!c.action){c.action="blur"}if(!c.hintRender){c.hintRender=this._hintRender}if(!c.rule){c.rule=null}else{this._handleRule(c)}},_handleRule:function(f){var c=f.rule,e,d,b=false;if(typeof c==="string"){if(c.indexOf("=")>=0){c=c.split("=");d=c[1].split(",");c=c[0]}e=this["_"+c];if(e){f.rule=function(g,h){return e.apply(this,[g].concat(d))}}else{b=true}}else{if(typeof c!=="function"){b=true}else{f.rule=c}}if(b){throw new Error("Wrong parameter!")}},_required:function(b){switch(this._getType(b)){case"textarea":case"password":case"jqx-input":case"text":var d=a.data(b[0]);if(d.jqxMaskedInput){var e=b.jqxMaskedInput("promptChar"),c=b.jqxMaskedInput("value");return c&&c.indexOf(e)<0}else{if(d.jqxNumberInput){return b.jqxNumberInput("inputValue")!==""}else{if(d.jqxDateTimeInput){return true}else{return a.trim(b.val())!==""}}}case"checkbox":return b.is(":checked");case"radio":return b.is(":checked");case"div":if(b.is(".jqx-checkbox")){return b.jqxCheckBox("checked")}if(b.is(".jqx-radiobutton")){return b.jqxRadioButton("checked")}return false}return false},_notNumber:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/\d/;return !c.test(d)})},_startWithLetter:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/\d/;return !c.test(d.substring(0,1))})},_number:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=new Number(d);return !isNaN(c)&&isFinite(c)})},_phone:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/^\(\d{3}\)(\d){3}-(\d){4}$/;return c.test(d)})},_length:function(c,d,b){return this._minLength(c,d)&&this._maxLength(c,b)},_maxLength:function(c,b){b=parseInt(b,10);return this._validateText(c,function(d){return d.length<=b})},_minLength:function(c,b){b=parseInt(b,10);return this._validateText(c,function(d){return d.length>=b})},_email:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return c.test(d)})},_zipCode:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/^(^\d{5}$)|(^\d{5}-\d{4}$)|(\d{3}-\d{2}-\d{4})$/;return c.test(d)})},_ssn:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/\d{3}-\d{2}-\d{4}/;return c.test(d)})},_validateText:function(b,d){var c;if(this._isTextInput(b)){if(this._isjQWidget(b)){if(b.find("input").length>0){c=b.find("input").val()}else{c=b.val()}}else{c=b.val()}return d(c)}return false},_isjQWidget:function(b){var c=a.data(b[0]);if(c.jqxMaskedInput||c.jqxNumberInput||c.jqxDateTimeInput){return true}return false},_isTextInput:function(b){var c=this._getType(b);return c==="text"||c==="textarea"||c==="password"||b.is(".jqx-input")},_getType:function(c){if(!c[0]){return}var b=c[0].tagName.toLowerCase(),d;if(b==="textarea"){return"textarea"}else{if(c.is(".jqx-input")){return"jqx-input"}else{if(b==="input"){d=a(c).attr("type")?a(c).attr("type").toLowerCase():"text";return d}}}return b},_hintRender:function(e,c){if(this.hintType=="label"){var f=a('<label class="'+this.toThemeProperty("jqx-validator-error-label")+'"></label>');f.html(e);var d=this;if(this.closeOnClick){f.click(function(){d.hideHint(c.selector)})}if(this.position=="left"||this.position=="top"){f.insertBefore(a(c))}else{f.insertAfter(a(c))}return f}var f=a('<div class="'+this.toThemeProperty("jqx-validator-hint")+' jqx-rc-all"></div>'),b=this;f.html(e);if(this.closeOnClick){f.click(function(){b.hideHint(c.selector)})}if(this.ownerElement==null){f.appendTo(document.body)}else{if(this.ownerElement.innerHTML){f.appendTo(a(this.ownerElement))}else{f.appendTo(this.ownerElement)}}return f},_hintLayout:function(h,c,b,f){if(this._hintRender===f.hintRender){var i;i=this._getPosition(c,b,h,f);if(this.hintType=="label"){var e="2px";if(this.position=="left"||this.position=="top"){e="-2px"}if(c[0].nodeName.toLowerCase()!="input"){if(c.find("input").length>0){if(c.find(".jqx-input").length>0){c.find(".jqx-input").addClass(this.toThemeProperty("jqx-validator-error-element"))}else{if(c.is(".jqx-checkbox")){c.find(".jqx-checkbox-default").addClass(this.toThemeProperty("jqx-validator-error-element"))}}if(c.is(".jqx-radiobutton")){c.find(".jqx-radiobutton-default").addClass(this.toThemeProperty("jqx-validator-error-element"))}else{c.addClass(this.toThemeProperty("jqx-validator-error-element"))}}}else{c.addClass(this.toThemeProperty("jqx-validator-error-element"))}var d=a("<span></span>");d.addClass(this.toThemeProperty("jqx-validator-hint"));d.html(h.text());d.appendTo(a(document.body));var g=d.outerWidth();d.remove();h.css({position:"relative",left:a(c).css("margin-left"),width:a(c).width(),top:e});if(b=="center"){h.css("width",g);h.css("left","0px");h.css("margin-left","auto");h.css("margin-right","auto")}return}h.css({position:"absolute",left:i.left,top:i.top});if(this.arrow){this._addArrow(c,h,b,i)}}},_showHint:function(b){if(b){if(this.animation==="fade"){b.fadeOut(0);b.fadeIn(this.animationDuration)}}},_getPosition:function(i,f,d,g){var e=i.offset(),h,c;var b=i.outerWidth();var j=i.outerHeight();if(this.rtl&&f.indexOf("left")>=0){f="right"}if(this.rtl&&f.indexOf("right")>=0){f="left"}if(this.ownerElement!=null){e={left:0,top:0};e.top=parseInt(e.top)+i.position().top;e.left=parseInt(e.left)+i.position().left}if(g&&g.hintPositionRelativeElement){var k=a(g.hintPositionRelativeElement);e=k.offset();b=k.width();j=k.height()}if(f.indexOf("top")>=0){h=e.top-j}else{if(f.indexOf("bottom")>=0){h=e.top+d.outerHeight()+this.hintPositionOffset+5}else{h=e.top}}if(f.indexOf("center")>=0){c=e.left+this.hintPositionOffset+(b-d.outerWidth())/2}else{if(f.indexOf("left")>=0){c=e.left-d.outerWidth()-this.hintPositionOffset}else{if(f.indexOf("right")>=0){c=e.left+b+this.hintPositionOffset}else{c=e.left+this.hintPositionOffset}}}if(f.indexOf(":")>=0){f=f.split(":")[1].split(",");c+=parseInt(f[0],10);h+=parseInt(f[1],10)}if(!this.positions){this.positions=new Array()}if(this.positions[Math.round(h)+"_"+Math.round(c)]){if(this.positions[Math.round(h)+"_"+Math.round(c)].top==h){h+=i.outerHeight()}}this.positions[Math.round(h)+"_"+Math.round(c)]={left:c,top:h};return{left:c,top:h}},_addArrow:function(j,e,g,k){var l=a('<div class="'+this.toThemeProperty("jqx-validator-hint-arrow")+'"></div>'),d,i;if(this.rtl&&g.indexOf("left")>=0){g="right"}if(this.rtl&&g.indexOf("right")>=0){g="left"}e.children(".jqx-validator-hint-arrow").remove();e.append(l);var c=l.outerHeight(),f=l.outerWidth(),h=e.outerHeight(),b=e.outerWidth();this._addImage(l);if(g.indexOf("top")>=0){i=h-c}else{if(g.indexOf("bottom")>=0){i=-c}else{i=(h-c)/2-c/2}}if(g.indexOf("center")>=0){d=(b-f)/2}else{if(g.indexOf("left")>=0){d=b-f/2-1}else{if(g.indexOf("right")>=0){d=-f/2}}}if(g.indexOf("topright")>=0||g.indexOf("bottomright")>=0){d=0}if(g.indexOf("topleft")>=0||g.indexOf("bottomleft")>=0){d=b-f}l.css({position:"absolute",left:d,top:i})},_addImage:function(b){var c=b.css("background-image");c=c.replace('url("',"");c=c.replace('")',"");c=c.replace("url(","");c=c.replace(")","");b.css("background-image","none");b.append('<img src="'+c+'" alt="Arrow" style="position: relative; top: 0px; left: 0px; width: '+b.width()+"px; height: "+b.height()+'px;" />')},_raiseEvent:function(b,d){var c=a.Event(this._events[b]);c.args=d;return this.host.trigger(c)},propertyChangedHandler:function(b,c,e,d){if(c==="rules"){this._configureInputs();this._removeEventListeners();this._addEventListeners()}}})})(jqxBaseFramework);(function(a){a.jqx.cssroundedcorners=function(b){var c={all:"jqx-rc-all",top:"jqx-rc-t",bottom:"jqx-rc-b",left:"jqx-rc-l",right:"jqx-rc-r","top-right":"jqx-rc-tr","top-left":"jqx-rc-tl","bottom-right":"jqx-rc-br","bottom-left":"jqx-rc-bl"};for(prop in c){if(!c.hasOwnProperty(prop)){continue}if(b==prop){return c[prop]}}};a.jqx.jqxWidget("jqxButton","",{});a.extend(a.jqx._jqxButton.prototype,{defineInstance:function(){var b={cursor:"arrow",roundedCorners:"all",disabled:false,height:null,width:null,overrideTheme:false,enableHover:true,enableDefault:true,enablePressed:true,rtl:false,_ariaDisabled:false,_scrollAreaButton:false,template:"default",aria:{"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(d){var b=this;b._setSize();if(!b._ariaDisabled){b.host.attr("role","button")}if(!b.overrideTheme){b.host.addClass(b.toThemeProperty(a.jqx.cssroundedcorners(b.roundedCorners)));if(b.enableDefault){b.host.addClass(b.toThemeProperty("jqx-button"))}b.host.addClass(b.toThemeProperty("jqx-widget"))}b.isTouchDevice=a.jqx.mobile.isTouchDevice();if(!b._ariaDisabled){a.jqx.aria(this)}if(b.cursor!="arrow"){if(!b.disabled){b.host.css({cursor:b.cursor})}else{b.host.css({cursor:"arrow"})}}var g="mouseenter mouseleave mousedown focus blur";if(b._scrollAreaButton){var g="mousedown"}if(b.isTouchDevice){b.addHandler(b.host,a.jqx.mobile.getTouchEventName("touchstart"),function(h){b.isPressed=true;b.refresh()});b.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchend")+"."+b.element.id,function(h){b.isPressed=false;b.refresh()})}b.addHandler(b.host,g,function(h){switch(h.type){case"mouseenter":if(!b.isTouchDevice){if(!b.disabled&&b.enableHover){b.isMouseOver=true;b.refresh()}}break;case"mouseleave":if(!b.isTouchDevice){if(!b.disabled&&b.enableHover){b.isMouseOver=false;b.refresh()}}break;case"mousedown":if(!b.disabled){b.isPressed=true;b.refresh()}break;case"focus":if(!b.disabled){b.isFocused=true;b.refresh()}break;case"blur":if(!b.disabled){b.isFocused=false;b.refresh()}break}});b.mouseupfunc=function(h){if(!b.disabled){if(b.isPressed||b.isMouseOver){b.isPressed=false;b.refresh()}}};b.addHandler(a(document),"mouseup.button"+b.element.id,b.mouseupfunc);try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var f="";if(window.parent&&document.referrer){f=document.referrer}if(f.indexOf(document.location.host)!=-1){var e=function(h){b.isPressed=false;b.refresh()};if(window.top.document){b.addHandler(a(window.top.document),"mouseup",e)}}}}}catch(c){}b.propertyChangeMap.roundedCorners=function(h,j,i,k){h.host.removeClass(h.toThemeProperty(a.jqx.cssroundedcorners(i)));h.host.addClass(h.toThemeProperty(a.jqx.cssroundedcorners(k)))};b.propertyChangeMap.width=function(h,j,i,k){h._setSize();h.refresh()};b.propertyChangeMap.height=function(h,j,i,k){h._setSize();h.refresh()};b.propertyChangeMap.disabled=function(h,j,i,k){if(i!=k){h.host[0].disabled=k;h.host.attr("disabled",k);h.refresh();if(!k){h.host.css({cursor:h.cursor})}else{h.host.css({cursor:"default"})}a.jqx.aria(h,"aria-disabled",h.disabled)}};b.propertyChangeMap.rtl=function(h,j,i,k){if(i!=k){h.refresh()}};b.propertyChangeMap.template=function(h,j,i,k){if(i!=k){h.host.removeClass("jqx-"+i);h.refresh()}};b.propertyChangeMap.theme=function(h,j,i,k){h.host.removeClass();if(h.enableDefault){h.host.addClass(h.toThemeProperty("jqx-button"))}h.host.addClass(h.toThemeProperty("jqx-widget"));if(!h.overrideTheme){h.host.addClass(h.toThemeProperty(a.jqx.cssroundedcorners(h.roundedCorners)))}h._oldCSSCurrent=null;h.refresh()};if(b.disabled){b.element.disabled=true;b.host.attr("disabled",true)}},resize:function(c,b){this.width=c;this.height=b;this._setSize()},val:function(){var c=this;var b=c.host.find("input");if(b.length>0){if(arguments.length==0||typeof(value)=="object"){return b.val()}b.val(value);c.refresh();return b.val()}if(arguments.length==0||typeof(value)=="object"){if(c.element.nodeName.toLowerCase()=="button"){return a(c.element).text()}return c.element.value}c.element.value=arguments[0];if(c.element.nodeName.toLowerCase()=="button"){a(c.element).text(arguments[0])}c.refresh()},_setSize:function(){var b=this;if(b.width!=null&&(b.width.toString().indexOf("px")!=-1||b.width.toString().indexOf("%")!=-1)){b.host.css("width",b.width)}else{if(b.width!=undefined&&!isNaN(b.width)){b.host.css("width",b.width)}}if(b.height!=null&&(b.height.toString().indexOf("px")!=-1||b.height.toString().indexOf("%")!=-1)){b.host.css("height",b.height)}else{if(b.height!=undefined&&!isNaN(b.height)){b.host.css("height",parseInt(b.height))}}},_removeHandlers:function(){var b=this;b.removeHandler(b.host,"selectstart");b.removeHandler(b.host,"click");b.removeHandler(b.host,"focus");b.removeHandler(b.host,"blur");b.removeHandler(b.host,"mouseenter");b.removeHandler(b.host,"mouseleave");b.removeHandler(b.host,"mousedown");b.removeHandler(a(document),"mouseup.button"+b.element.id,b.mouseupfunc);if(b.isTouchDevice){b.removeHandler(b.host,a.jqx.mobile.getTouchEventName("touchstart"));b.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchend")+"."+b.element.id)}b.mouseupfunc=null;delete b.mouseupfunc},focus:function(){this.host.focus()},destroy:function(){var b=this;b._removeHandlers();var c=a.data(b.element,"jqxButton");if(c){delete c.instance}b.host.removeClass();b.host.removeData();b.host.remove();delete b.set;delete b.get;delete b.call;delete b.element;delete b.host},render:function(){this.refresh()},refresh:function(){var c=this;if(c.overrideTheme){return}var e=c.toThemeProperty("jqx-fill-state-focus");var i=c.toThemeProperty("jqx-fill-state-disabled");var b=c.toThemeProperty("jqx-fill-state-normal");if(!c.enableDefault){b=""}var h=c.toThemeProperty("jqx-fill-state-hover");var f=c.toThemeProperty("jqx-fill-state-pressed");var g=c.toThemeProperty("jqx-fill-state-pressed");if(!c.enablePressed){f=""}var d="";if(!c.host){return}c.host[0].disabled=c.disabled;if(c.disabled){d=b+" "+i;if(c.template!=="default"&&c.template!==""){d+=" jqx-"+c.template}c.host.addClass(d);c._oldCSSCurrent=d;return}else{if(c.isMouseOver&&!c.isTouchDevice){if(c.isPressed){d=g}else{d=h}}else{if(c.isPressed){d=f}else{d=b}}}if(c.isFocused){d+=" "+e}if(c.template!=="default"&&c.template!==""){d+=" jqx-"+c.template}if(d!=c._oldCSSCurrent){if(c._oldCSSCurrent){c.host.removeClass(c._oldCSSCurrent)}c.host.addClass(d);c._oldCSSCurrent=d}if(c.rtl){c.host.addClass(c.toThemeProperty("jqx-rtl"));c.host.css("direction","rtl")}}});a.jqx.jqxWidget("jqxLinkButton","",{});a.extend(a.jqx._jqxLinkButton.prototype,{defineInstance:function(){this.disabled=false;this.height=null;this.width=null;this.rtl=false;this.href=null},createInstance:function(d){var c=this;this.host.onselectstart=function(){return false};this.host.attr("role","button");var b=this.height||this.host.height();var e=this.width||this.host.width();this.href=this.host.attr("href");this.target=this.host.attr("target");this.content=this.host.text();this.element.innerHTML="";this.host.append("<input type='button' class='jqx-wrapper'/>");var f=this.host.find("input");f.addClass(this.toThemeProperty("jqx-reset"));f.width(e);f.height(b);f.val(this.content);this.host.find("tr").addClass(this.toThemeProperty("jqx-reset"));this.host.find("td").addClass(this.toThemeProperty("jqx-reset"));this.host.find("tbody").addClass(this.toThemeProperty("jqx-reset"));this.host.css("color","inherit");this.host.addClass(this.toThemeProperty("jqx-link"));f.css({width:e});f.css({height:b});var g=d==undefined?{}:d[0]||{};f.jqxButton(g);if(this.disabled){this.host[0].disabled=true}this.propertyChangeMap.disabled=function(h,j,i,k){h.host[0].disabled=k;h.host.find("input").jqxButton({disabled:k})};this.addHandler(f,"click",function(h){if(!this.disabled){c.onclick(h)}return false})},onclick:function(b){if(this.target!=null){window.open(this.href,this.target)}else{window.location=this.href}}});a.jqx.jqxWidget("jqxRepeatButton","jqxButton",{});a.extend(a.jqx._jqxRepeatButton.prototype,{defineInstance:function(){this.delay=50},createInstance:function(e){var c=this;var d=a.jqx.mobile.isTouchDevice();var b=!d?"mouseup."+this.base.element.id:"touchend."+this.base.element.id;var f=!d?"mousedown."+this.base.element.id:"touchstart."+this.base.element.id;this.addHandler(a(document),b,function(g){if(c.timeout!=null){clearTimeout(c.timeout);c.timeout=null;c.refresh()}if(c.timer!=undefined){clearInterval(c.timer);c.timer=null;c.refresh()}});this.addHandler(this.base.host,f,function(g){if(c.timer!=null){clearInterval(c.timer)}c.timeout=setTimeout(function(){clearInterval(c.timer);c.timer=setInterval(function(h){c.ontimer(h)},c.delay)},150)});this.mousemovefunc=function(g){if(!d){if(g.which==0){if(c.timer!=null){clearInterval(c.timer);c.timer=null}}}};this.addHandler(this.base.host,"mousemove",this.mousemovefunc)},destroy:function(){var c=a.jqx.mobile.isTouchDevice();var b=!c?"mouseup."+this.base.element.id:"touchend."+this.base.element.id;var e=!c?"mousedown."+this.base.element.id:"touchstart."+this.base.element.id;this.removeHandler(this.base.host,"mousemove",this.mousemovefunc);this.removeHandler(this.base.host,e);this.removeHandler(a(document),b);this.timer=null;delete this.mousemovefunc;delete this.timer;var d=a.data(this.base.element,"jqxRepeatButton");if(d){delete d.instance}a(this.base.element).removeData();this.base.destroy();delete this.base},stop:function(){clearInterval(this.timer);this.timer=null},ontimer:function(b){var b=new a.Event("click");if(this.base!=null&&this.base.host!=null){this.base.host.trigger(b)}}});a.jqx.jqxWidget("jqxToggleButton","jqxButton",{});a.extend(a.jqx._jqxToggleButton.prototype,{defineInstance:function(){this.toggled=false;this.uiToggle=true;this.aria={"aria-checked":{name:"toggled",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}}},createInstance:function(c){var b=this;b.base.overrideTheme=true;b.isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(this);b.propertyChangeMap.roundedCorners=function(d,f,e,g){d.base.host.removeClass(d.toThemeProperty(a.jqx.cssroundedcorners(e)));d.base.host.addClass(d.toThemeProperty(a.jqx.cssroundedcorners(g)))};b.propertyChangeMap.toggled=function(d,f,e,g){d.refresh()};b.propertyChangeMap.disabled=function(d,f,e,g){d.base.disabled=g;d.refresh()};b.addHandler(b.base.host,"click",function(d){if(!b.base.disabled&&b.uiToggle){b.toggle()}});if(!b.isTouchDevice){b.addHandler(b.base.host,"mouseenter",function(d){if(!b.base.disabled){b.refresh()}});b.addHandler(b.base.host,"mouseleave",function(d){if(!b.base.disabled){b.refresh()}})}b.addHandler(b.base.host,"mousedown",function(d){if(!b.base.disabled){b.refresh()}});b.addHandler(a(document),"mouseup.togglebutton"+b.base.element.id,function(d){if(!b.base.disabled){b.refresh()}})},destroy:function(){this._removeHandlers();this.base.destroy()},_removeHandlers:function(){this.removeHandler(this.base.host,"click");this.removeHandler(this.base.host,"mouseenter");this.removeHandler(this.base.host,"mouseleave");this.removeHandler(this.base.host,"mousedown");this.removeHandler(a(document),"mouseup.togglebutton"+this.base.element.id)},toggle:function(){this.toggled=!this.toggled;this.refresh();a.jqx.aria(this,"aria-checked",this.toggled)},unCheck:function(){this.toggled=false;this.refresh()},check:function(){this.toggled=true;this.refresh()},refresh:function(){var c=this;var h=c.base.toThemeProperty("jqx-fill-state-disabled");var b=c.base.toThemeProperty("jqx-fill-state-normal");if(!c.base.enableDefault){b=""}var g=c.base.toThemeProperty("jqx-fill-state-hover");var e=c.base.toThemeProperty("jqx-fill-state-pressed");var f=c.base.toThemeProperty("jqx-fill-state-pressed");var d="";c.base.host[0].disabled=c.base.disabled;if(c.base.disabled){d=b+" "+h;c.base.host.addClass(d);return}else{if(c.base.isMouseOver&&!c.isTouchDevice){if(c.base.isPressed||c.toggled){d=f}else{d=g}}else{if(c.base.isPressed||c.toggled){d=e}else{d=b}}}if(c.base.template!=="default"&&c.base.template!==""){d+=" jqx-"+c.base.template}if(c.base.host.hasClass(h)&&h!=d){c.base.host.removeClass(h)}if(c.base.host.hasClass(b)&&b!=d){c.base.host.removeClass(b)}if(c.base.host.hasClass(g)&&g!=d){c.base.host.removeClass(g)}if(c.base.host.hasClass(e)&&e!=d){c.base.host.removeClass(e)}if(c.base.host.hasClass(f)&&f!=d){c.base.host.removeClass(f)}if(!c.base.host.hasClass(d)){c.base.host.addClass(d)}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDropDownButton","",{});a.extend(a.jqx._jqxDropDownButton.prototype,{defineInstance:function(){var b={disabled:false,width:null,height:null,arrowSize:19,enableHover:true,openDelay:250,closeDelay:300,animationType:"default",enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",popupZIndex:20000,autoOpen:false,rtl:false,initContent:null,dropDownWidth:null,dropDownHeight:null,focusable:true,touchMode:false,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["open","close","opening","closing"]};a.extend(true,this,b);return b},createInstance:function(j){var g=this;if(!g.width){g.width=200}if(!g.height){g.height=25}g.isanimating=false;g.setupInstance();var c=a("<div style='background-color: transparent; -webkit-appearance: none; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; border: 0px; position: relative;'><div id='dropDownButtonWrapper' style='outline: none; background-color: transparent; border: none; float: left; width:100%; height: 100%; position: relative;'><div id='dropDownButtonContent' unselectable='on' style='outline: none; background-color: transparent; border: none; float: left; position: relative;'/><div id='dropDownButtonArrow' unselectable='on'  style='background-color: transparent; border: none; float: right; position: relative;'><div unselectable='on'></div></div></div></div>");if(g.host.attr("tabindex")){c.attr("tabindex",g.host.attr("tabindex"));g.host.removeAttr("tabindex")}else{c.attr("tabindex",0)}if(!g.focusable){c.removeAttr("tabIndex")}a.jqx.aria(this);g.popupContent=g.host.children();g.host.attr("role","button");if(g.popupContent.length==0){g.popupContent=a("<div>"+g.host.text()+"</div>");g.popupContent.css("display","block");g.element.innerHTML=""}else{g.popupContent.detach()}var k=this;g.addHandler(g.host,"loadContent",function(e){k._arrange()});try{var f="dropDownButtonPopup"+g.element.id;var d=a(a.find("#"+f));if(d.length>0){d.remove()}a.jqx.aria(this,"aria-haspopup",true);a.jqx.aria(this,"aria-owns",f);var b=a("<div class='dropDownButton' style='overflow: hidden; left: -1000px; top: -1000px; position: absolute;' id='dropDownButtonPopup"+g.element.id+"'></div>");b.addClass(g.toThemeProperty("jqx-widget-content"));b.addClass(g.toThemeProperty("jqx-dropdownbutton-popup"));b.addClass(g.toThemeProperty("jqx-popup"));b.addClass(g.toThemeProperty("jqx-rc-all"));b.css("z-index",g.popupZIndex);if(a.jqx.browser.msie){b.addClass(g.toThemeProperty("jqx-noshadow"))}g.popupContent.appendTo(b);b.appendTo(document.body);g.container=b;g.container.css("visibility","hidden")}catch(h){}g.touch=a.jqx.mobile.isTouchDevice();g.dropDownButtonStructure=c;g.host.append(c);g.dropDownButtonWrapper=g.host.find("#dropDownButtonWrapper");g.firstDiv=g.dropDownButtonWrapper.parent();g.dropDownButtonArrow=g.host.find("#dropDownButtonArrow");g.arrow=a(g.dropDownButtonArrow.children()[0]);g.dropDownButtonContent=g.host.find("#dropDownButtonContent");g.dropDownButtonContent.addClass(g.toThemeProperty("jqx-dropdownlist-content"));g.dropDownButtonWrapper.addClass(g.toThemeProperty("jqx-disableselect"));if(g.rtl){g.dropDownButtonContent.addClass(g.toThemeProperty("jqx-rtl"))}var m=this;if(g.host.parents()){g.addHandler(g.host.parents(),"scroll.dropdownbutton"+g.element.id,function(e){var n=m.isOpened();if(n){m.close()}})}g.addHandler(g.dropDownButtonWrapper,"selectstart",function(){return false});g.dropDownButtonWrapper[0].id="dropDownButtonWrapper"+g.element.id;g.dropDownButtonArrow[0].id="dropDownButtonArrow"+g.element.id;g.dropDownButtonContent[0].id="dropDownButtonContent"+g.element.id;var m=this;g.propertyChangeMap.disabled=function(e,o,n,p){if(p){e.host.addClass(m.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.addClass(m.toThemeProperty("jqx-fill-state-disabled"));e.dropDownButtonContent.addClass(m.toThemeProperty("jqx-dropdownlist-content-disabled"))}else{e.host.removeClass(m.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.removeClass(m.toThemeProperty("jqx-fill-state-disabled"));e.dropDownButtonContent.removeClass(m.toThemeProperty("jqx-dropdownlist-content-disabled"))}a.jqx.aria(e,"aria-disabled",e.disabled)};if(g.disabled){g.host.addClass(g.toThemeProperty("jqx-dropdownlist-state-disabled"));g.host.addClass(g.toThemeProperty("jqx-fill-state-disabled"));g.dropDownButtonContent.addClass(g.toThemeProperty("jqx-dropdownlist-content-disabled"))}var i=g.toThemeProperty("jqx-rc-all")+" "+g.toThemeProperty("jqx-fill-state-normal")+" "+g.toThemeProperty("jqx-widget")+" "+g.toThemeProperty("jqx-widget-content")+" "+g.toThemeProperty("jqx-dropdownlist-state-normal");g.host.addClass(i);g.arrow.addClass(g.toThemeProperty("jqx-icon-arrow-down"));g.arrow.addClass(g.toThemeProperty("jqx-icon"));g._setSize();g.render();if(a.jqx.browser.msie&&a.jqx.browser.version<8){g.container.css("display","none");if(g.host.parents(".jqx-window").length>0){var l=g.host.parents(".jqx-window").css("z-index");b.css("z-index",l+10);g.container.css("z-index",l+10)}}},setupInstance:function(){var c=this;var b={setContent:function(d){c.dropDownButtonContent.children().remove();c.dropDownButtonContent[0].innerHTML="";c.dropDownButtonContent.append(d)},val:function(d){if(arguments.length==0||typeof(d)=="object"){return c.dropDownButtonContent.text()}else{c.dropDownButtonContent.html(d)}},getContent:function(){if(c.dropDownButtonContent.children().length>0){return c.dropDownButtonContent.children()}return c.dropDownButtonContent.text()},_setSize:function(){if(c.width!=null&&c.width.toString().indexOf("px")!=-1){c.host[0].style.width=c.width}else{if(c.width!=undefined&&!isNaN(c.width)){c.host[0].style.width=parseInt(c.width)+"px"}}if(c.height!=null&&c.height.toString().indexOf("px")!=-1){c.host[0].style.height=c.height}else{if(c.height!=undefined&&!isNaN(c.height)){c.host[0].style.height=parseInt(c.height)+"px"}}var e=false;if(c.width!=null&&c.width.toString().indexOf("%")!=-1){e=true;c.host.width(c.width)}if(c.height!=null&&c.height.toString().indexOf("%")!=-1){e=true;c.host.height(c.height)}var d=this;if(e){c.refresh(false)}a.jqx.utilities.resize(c.host,function(){d._arrange()})},isOpened:function(){var e=this;var d=a.data(document.body,"openedJQXButton"+e.element.id);if(d!=null&&d==e.popupContent){return true}return false},focus:function(){try{c.host.focus()}catch(d){}},render:function(){c.removeHandlers();var d=this;var e=false;if(!c.touch){c.addHandler(c.host,"mouseenter",function(){if(!d.disabled&&d.enableHover){e=true;d.host.addClass(d.toThemeProperty("jqx-dropdownlist-state-hover"));d.arrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));d.host.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(c.host,"mouseleave",function(){if(!d.disabled&&d.enableHover){d.host.removeClass(d.toThemeProperty("jqx-dropdownlist-state-hover"));d.host.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d.arrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));e=false}})}if(d.autoOpen){c.addHandler(c.host,"mouseenter",function(){var f=d.isOpened();if(!f&&d.autoOpen){d.open();d.host.focus()}});c.addHandler(a(document),"mousemove."+d.element.id,function(i){var h=d.isOpened();if(h&&d.autoOpen){var m=d.host.coord();var l=m.top;var k=m.left;var j=d.container.coord();var f=j.left;var g=j.top;canClose=true;if(i.pageY>=l&&i.pageY<=l+d.host.height()){if(i.pageX>=k&&i.pageX<k+d.host.width()){canClose=false}}if(i.pageY>=g&&i.pageY<=g+d.container.height()){if(i.pageX>=f&&i.pageX<f+d.container.width()){canClose=false}}if(canClose){d.close()}}})}c.addHandler(c.dropDownButtonWrapper,"mousedown",function(g){if(!d.disabled){var f=d.container.css("visibility")=="visible";if(!d.isanimating){if(f){d.close();return false}else{d.open();if(!d.focusable){if(g.preventDefault){g.preventDefault()}}}}}});if(c.touch){c.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+c.element.id,d.closeOpenedDropDown,{me:this,popup:c.container,id:c.element.id})}c.addHandler(a(document),"mousedown."+c.element.id,d.closeOpenedDropDown,{me:this,popup:c.container,id:c.element.id});c.addHandler(c.host,"keydown",function(g){var f=d.container.css("visibility")=="visible";if(d.host.css("display")=="none"){return true}if(g.keyCode=="13"){if(!d.isanimating){if(f){d.close()}}}if(g.keyCode==115){if(!d.isanimating){if(!d.isOpened()){d.open()}else{if(d.isOpened()){d.close()}}}return false}if(g.altKey){if(d.host.css("display")=="block"){if(g.keyCode==38){if(d.isOpened()){d.close()}}else{if(g.keyCode==40){if(!d.isOpened()){d.open()}}}}}if(g.keyCode=="27"){if(!d.ishiding){d.close();if(d.tempSelectedIndex!=undefined){d.selectIndex(d.tempSelectedIndex)}}}});c.addHandler(c.firstDiv,"focus",function(){d.host.addClass(d.toThemeProperty("jqx-dropdownlist-state-focus"));d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))});c.addHandler(c.firstDiv,"blur",function(){d.host.removeClass(d.toThemeProperty("jqx-dropdownlist-state-focus"));d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"))})},removeHandlers:function(){var d=this;c.removeHandler(c.dropDownButtonWrapper,"mousedown");c.removeHandler(c.host,"keydown");c.removeHandler(c.firstDiv,"focus");c.removeHandler(c.firstDiv,"blur");c.removeHandler(c.host,"mouseenter");c.removeHandler(c.host,"mouseleave");if(c.autoOpen){c.removeHandler(c.host,"mouseenter");c.removeHandler(c.host,"mouseleave")}c.removeHandler(a(document),"mousemove."+d.element.id)},_findPos:function(e){while(e&&(e.type=="hidden"||e.nodeType!=1||a.expr.filters.hidden(e))){e=e.nextSibling}var d=a(e).coord(true);return[d.left,d.top]},testOffset:function(j,h,e){var i=j.outerWidth();var l=j.outerHeight();var k=a(window).width()+a(window).scrollLeft();var g=a(window).height()+a(window).scrollTop();if(h.left+i>k){if(i>c.host.width()){var f=c.host.coord().left;var d=i-c.host.width();h.left=f-d+2}}if(h.left<0){h.left=parseInt(c.host.coord().left)+"px"}h.top-=Math.min(h.top,(h.top+l>g&&g>l)?Math.abs(l+e+22):0);return h},_getBodyOffset:function(){var e=0;var d=0;if(a("body").css("border-top-width")!="0px"){e=parseInt(a("body").css("border-top-width"));if(isNaN(e)){e=0}}if(a("body").css("border-left-width")!="0px"){d=parseInt(a("body").css("border-left-width"));if(isNaN(d)){d=0}}return{left:d,top:e}},open:function(){a.jqx.aria(this,"aria-expanded",true);var l=this;var r=this;if((l.dropDownWidth==null||l.dropDownWidth=="auto")&&l.width!=null&&l.width.indexOf&&l.width.indexOf("%")!=-1){var e=l.host.width();l.container.width(parseInt(e))}r._raiseEvent("2");var d=l.popupContent;var o=a(window).scrollTop();var j=a(window).scrollLeft();var n=parseInt(l._findPos(l.host[0])[1])+parseInt(l.host.outerHeight())-1+"px";var g,i=parseInt(Math.round(l.host.coord(true).left));g=i+"px";var q=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();l.ishiding=false;l.tempSelectedIndex=l.selectedIndex;if((q!=null&&q)){g=a.jqx.mobile.getLeftPos(l.element);n=a.jqx.mobile.getTopPos(l.element)+parseInt(l.host.outerHeight());if(a("body").css("border-top-width")!="0px"){n=parseInt(n)-l._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){g=parseInt(g)-l._getBodyOffset().left+"px"}}d.stop();l.host.addClass(l.toThemeProperty("jqx-dropdownlist-state-selected"));l.host.addClass(l.toThemeProperty("jqx-fill-state-pressed"));l.arrow.addClass(l.toThemeProperty("jqx-icon-arrow-down-selected"));var h=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){h=true}if(h){l.container.css("display","block")}l.container.css("left",g);l.container.css("top",n);var f=true;var s=false;var m=function(){if(l.dropDownHorizontalAlignment=="right"||l.rtl){var u=l.container.width();var t=Math.abs(u-l.host.width());if(u>l.host.width()){l.container.css("left",parseInt(Math.round(i))-t+"px")}else{l.container.css("left",parseInt(Math.round(i))+t+"px")}}};m.call(this);if(l.enableBrowserBoundsDetection){var k=l.testOffset(d,{left:parseInt(l.container.css("left")),top:parseInt(n)},parseInt(l.host.outerHeight()));if(parseInt(l.container.css("top"))!=k.top){s=true;l.container.height(d.outerHeight());d.css("top",23);if(l.interval){clearInterval(l.interval)}l.interval=setInterval(function(){if(d.outerHeight()!=r.container.height()){var t=r.testOffset(d,{left:parseInt(r.container.css("left")),top:parseInt(n)},parseInt(r.host.outerHeight()));r.container.css("top",t.top);r.container.height(d.outerHeight())}},50)}else{d.css("top",0)}l.container.css("top",k.top);if(parseInt(l.container.css("left"))!=k.left){l.container.css("left",k.left)}}if(l.animationType=="none"){l.container.css("visibility","visible");a.data(document.body,"openedJQXButtonParent",r);a.data(document.body,"openedJQXButton"+l.element.id,d);d.css("margin-top",0);d.css("opacity",1);l._raiseEvent("0");m.call(r)}else{l.container.css("visibility","visible");var p=d.outerHeight();r.isanimating=true;if(l.animationType=="fade"){d.css("margin-top",0);d.css("opacity",0);d.animate({opacity:1},l.openDelay,function(){a.data(document.body,"openedJQXButtonParent",r);a.data(document.body,"openedJQXButton"+r.element.id,d);r.ishiding=false;r.isanimating=false;r._raiseEvent("0")});m.call(r)}else{d.css("opacity",1);if(s){d.css("margin-top",p)}else{d.css("margin-top",-p)}m.call(r);d.animate({"margin-top":0},l.openDelay,function(){a.data(document.body,"openedJQXButtonParent",r);a.data(document.body,"openedJQXButton"+r.element.id,d);r.ishiding=false;r.isanimating=false;r._raiseEvent("0")})}}if(!s){l.host.addClass(l.toThemeProperty("jqx-rc-b-expanded"));l.container.addClass(l.toThemeProperty("jqx-rc-t-expanded"))}else{l.host.addClass(l.toThemeProperty("jqx-rc-t-expanded"));l.container.addClass(l.toThemeProperty("jqx-rc-b-expanded"))}if(l.focusable){l.firstDiv.focus();setTimeout(function(){r.firstDiv.focus()},10)}l.container.addClass(l.toThemeProperty("jqx-fill-state-focus"));l.host.addClass(r.toThemeProperty("jqx-dropdownlist-state-focus"));l.host.addClass(r.toThemeProperty("jqx-fill-state-focus"))},close:function(){a.jqx.aria(this,"aria-expanded",false);var i=this;var g=i.popupContent;var f=i.container;var h=this;h._raiseEvent("3");var e=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){e=true}if(!i.isOpened()){return}a.data(document.body,"openedJQXButton"+i.element.id,null);if(i.animationType=="none"){i.container.css("visibility","hidden");if(e){i.container.css("display","none")}}else{if(!h.ishiding){h.isanimating=true;g.stop();var d=g.outerHeight();g.css("margin-top",0);var j=-d;if(parseInt(i.container.coord().top)<parseInt(i.host.coord().top)){j=d}if(i.animationType=="fade"){g.css({opacity:1});g.animate({opacity:0},i.closeDelay,function(){f.css("visibility","hidden");h.isanimating=false;h.ishiding=false;if(e){f.css("display","none")}})}else{g.animate({"margin-top":j},i.closeDelay,function(){f.css("visibility","hidden");h.isanimating=false;h.ishiding=false;if(e){f.css("display","none")}})}}}i.ishiding=true;i.host.removeClass(i.toThemeProperty("jqx-dropdownlist-state-selected"));i.host.removeClass(i.toThemeProperty("jqx-fill-state-pressed"));i.arrow.removeClass(i.toThemeProperty("jqx-icon-arrow-down-selected"));i.host.removeClass(i.toThemeProperty("jqx-rc-b-expanded"));i.container.removeClass(i.toThemeProperty("jqx-rc-t-expanded"));i.host.removeClass(i.toThemeProperty("jqx-rc-t-expanded"));i.container.removeClass(i.toThemeProperty("jqx-rc-b-expanded"));i.container.removeClass(i.toThemeProperty("jqx-fill-state-focus"));i.host.removeClass(i.toThemeProperty("jqx-dropdownlist-state-focus"));i.host.removeClass(i.toThemeProperty("jqx-fill-state-focus"));i._raiseEvent("1")},closeOpenedDropDown:function(g){var e=g.data.me;var d=a(g.target);if(a(g.target).ischildof(g.data.me.host)){return true}if(a(g.target).ischildof(g.data.me.popupContent)){return true}var h=e;var f=false;a.each(d.parents(),function(){if(this.className!="undefined"){if(this.className.indexOf&&this.className.indexOf("dropDownButton")!=-1){f=true;return false}}});if(!f){e.close()}return true},refresh:function(){c._arrange()},_arrange:function(){var i=this;var h=parseInt(i.host.width());var d=parseInt(i.host.height());var g=i.arrowSize;var f=i.arrowSize;var j=3;var e=h-f-2*j;if(e>0){i.dropDownButtonContent[0].style.width=e+"px"}i.dropDownButtonContent[0].style.height=parseInt(d)+"px";i.dropDownButtonContent[0].style.left="0px";i.dropDownButtonContent[0].style.top="0px";i.dropDownButtonArrow[0].style.width=parseInt(f)+"px";i.dropDownButtonArrow[0].style.height=parseInt(d)+"px";if(i.rtl){i.dropDownButtonArrow.css("float","left");i.dropDownButtonContent.css("float","right");i.dropDownButtonContent.css("left",-j)}if(i.dropDownWidth!=null){if(i.dropDownWidth.toString().indexOf("%")>=0){var h=(parseInt(i.dropDownWidth)*i.host.width())/100;i.container.width(h)}else{i.container.width(i.dropDownWidth)}}if(i.dropDownHeight!=null){i.container.height(i.dropDownHeight)}},destroy:function(){var d=this;d.removeHandler(d.dropDownButtonWrapper,"selectstart");d.removeHandler(d.dropDownButtonWrapper,"mousedown");d.removeHandler(d.host,"keydown");d.host.removeClass();d.removeHandler(a(document),"mousedown."+d.element.id,self.closeOpenedDropDown);d.host.remove();d.container.remove()},_raiseEvent:function(h,e){if(e==undefined){e={owner:null}}if(h==2&&!c.contentInitialized){if(c.initContent){c.initContent();c.contentInitialized=true}}var f=c.events[h];args=e;args.owner=this;var g=new a.Event(f);g.owner=this;if(h==2||h==3||h==4){g.args=e}var d=c.host.trigger(g);return d},resize:function(e,d){c.width=e;c.height=d;c._setSize();c._arrange()},propertyChangedHandler:function(d,e,g,f){if(c.isInitialized==undefined||c.isInitialized==false){return}if(e=="rtl"){if(f){d.dropDownButtonArrow.css("float","left");d.dropDownButtonContent.css("float","right")}else{d.dropDownButtonArrow.css("float","right");d.dropDownButtonContent.css("float","left")}}if(e=="autoOpen"){d.render()}if(e=="theme"&&f!=null){a.jqx.utilities.setTheme(g,f,d.host)}if(e=="width"||e=="height"){d._setSize();d._arrange()}}};a.extend(true,this,b)}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxColorPicker","",{});a.extend(a.jqx._jqxColorPicker.prototype,{defineInstance:function(){var b={disabled:false,height:null,width:null,color:new a.jqx.color({hex:"ff0000"}),redString:"R:",greenString:"G:",blueString:"B:",showTransparent:false,colorMode:"saturation",_delayLoading:false,events:["colorchange"]};a.extend(true,this,b);return b},createInstance:function(c){this.render();var b=this;a.jqx.utilities.resize(this.host,function(){b._setSize();b.refresh()},false,!this._delayLoading)},render:function(){this.element.innerHTML="";var b=this;this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(typeof this.color=="string"){this.color=new a.jqx.color({hex:this.color})}this._setSize();this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-color-picker"));this.container=a("<div style='width: 100%; height: 100%; position: relative;'></div>");this.container.appendTo(this.host);this.colorMap=a("<div style='left: 0; top: 0; position: absolute;'></div>");this.colorMap.appendTo(this.container);this.colorBar=a("<div style='left: 0; top: 0; position: absolute;'></div>");this.colorBar.appendTo(this.container);this.colorPanel=a("<div style='left: 0; top: 0; position: absolute;'></div>");this.colorPanel.appendTo(this.container);this.hexPanel=a("<div style='float: left;'></div>");this.hexPanel.appendTo(this.colorPanel);this.hexPanel.append('<span style="text-align: left;" >#</span>');this.hex=a("<input maxlength='6' style='height: 18px;'/>");this.hex.addClass(this.toThemeProperty("jqx-input"));this.hex.addClass(this.toThemeProperty("jqx-widget-content"));this.hex.appendTo(this.hexPanel);this.colorPanel.append('<div style="font-size: 1px; clear: both;"></div>');this.rgb=a("<div style='margin-top: 2px;'></div>");this.rgb.appendTo(this.colorPanel);this.red=a("<input style='width: 25px; height: 18px;' maxlength='3'/>");this.red.addClass(this.toThemeProperty("jqx-input"));this.red.addClass(this.toThemeProperty("jqx-widget-content"));this.rgb.append('<span style="text-align: left;">'+this.redString+"</span>");this.red.appendTo(this.rgb);this.green=a("<input style='margin-right: 2px; height: 18px; width: 25px;' maxlength='3'/>");this.green.addClass(this.toThemeProperty("jqx-input"));this.green.addClass(this.toThemeProperty("jqx-widget-content"));this.rgb.append('<span style="text-align: left;">'+this.greenString+"</span>");this.green.appendTo(this.rgb);this.colorPanel.addClass(this.toThemeProperty("jqx-color-picker-map-overlay"));this._mapImageOverlayURL=this._getImageUrl(this.colorPanel);this.colorPanel.removeClass(this.toThemeProperty("jqx-color-picker-map-overlay"));this.blue=a("<input style='height: 18px; width: 25px;' maxlength='3'/>");this.blue.addClass(this.toThemeProperty("jqx-input"));this.blue.addClass(this.toThemeProperty("jqx-widget-content"));this.rgb.append('<span style="text-align: left;">'+this.blueString+"</span>");this.blue.appendTo(this.rgb);this.preview=a("<div style='background: red; position: absolute;'></div>");this.preview.addClass(this.toThemeProperty("jqx-widget-content"));this.preview.appendTo(this.colorPanel);this.colorBarPointer=a("<div style='top: 0; left: 0; position: absolute; width: 100%;'></div>");this.colorBarPointer.addClass(this.toThemeProperty("jqx-color-picker-bar-pointer"));this.colorMapPointer=a("<div style='top: 0; left: 0; position: absolute; width: 100%;'></div>");this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer"));this.transparent=a("<div style='text-align: center; clear: both;'><a style='text-align: center;' href='#'>transparent</a></div>");if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.element.disabled=true}this._addHandlers()},val:function(b){if(arguments.length==0){return"#"+this.color.hex}this.setColor(b);return this.color.hex},_setPositionFromValue:function(){var d=this;var c=d.color.h;var i=100-d.color.v;var b=d.colorMap.height();var e=d.colorMap.width();var h=c*e/360;var g=i*b/100;if(this.colorMode=="saturation"){var f=100-d.color.s;f=f*b/100;d._saturation=100-d.color.s;d.colorMapPointer.css("margin-left",h-8);d.colorMapPointer.css("margin-top",g-8);d.colorBarPointer.css("margin-top",f-8);d.colorMapImageOverlay.css("opacity",(100-d.color.s)/100)}else{var c=d.color.s;var h=c*e/100;var g=i*b/100;var f=360-d.color.h;f=f*b/360;d._hue=d.color.h;d.colorMapPointer.css("margin-left",h-8);d.colorMapPointer.css("margin-top",g-8);d.colorBarPointer.css("margin-top",f-8)}},updateRGB:function(){var b=this;b.color.setRgb(b.red.val(),b.green.val(),b.blue.val());b._updateUI();b._raiseEvent("0",{color:b.color});b.color.transparent=false},_setPosition:function(f,c,h){var e=parseInt(f.pageX);var g=parseInt(c.offset().left);var b=parseInt(f.pageY);var d=parseInt(c.offset().top);if(this._isTouchDevice){var i=a.jqx.position(f);e=i.left;b=i.top}if(h[0].className.indexOf("jqx-color-picker-bar")==-1){h.css("margin-left",e-8-g)}if(b>=d&&b<=d+c.height()){h.css("margin-top",b-8-d)}},_handleKeyInput:function(c,d,b){if(c.disabled){return}if(!c._validateKey(d)){return d}b.val(c._setValueInRange(b.val(),0,255));this.updateRGB();this._setPositionFromValue()},_addHandlers:function(){var d=this;this.addHandler(this.colorMapPointer,"dragStart",function(j){j.preventDefault();return false});this.addHandler(this.colorBarPointer,"dragStart",function(j){j.preventDefault();return false});this.addHandler(this.transparent,"click",function(j){d._raiseEvent("0",{color:"transparent"});j.preventDefault();d.color.transparent=true});this.addHandler(this.host,"selectionstart",function(j){j.preventDefault();return false});this.addHandler(this.blue,"keyup blur",function(j){d._handleKeyInput(d,j,d.blue)});this.addHandler(this.green,"keyup blur",function(j){d._handleKeyInput(d,j,d.green)});this.addHandler(this.red,"keyup blur",function(j){d._handleKeyInput(d,j,d.red)});this.addHandler(this.hex,"keyup blur",function(j){if(d.disabled){return}if(!d._validateKey(j)){return j}if(d.hex.val().toString().length==6){d.hex.val(d.color.validateHex(d.hex.val()));d.color.setHex(d.hex.val());d._updateUI();d._setPositionFromValue();d._raiseEvent("0",{color:d.color})}});this.addHandler(this.colorMap,"dragstart",function(j){j.preventDefault();return false});var f=function(k){d._setPosition(k,d.colorMap,d.colorMapPointer);if(d.colorMode=="saturation"){var j=d._valuesFromMouse(k,d.colorMap,360,100);if(j.x>360){j.x=360}d.color.setHsv(j.x,d._saturation!=null?100-d._saturation:100,100-j.y)}else{var j=d._valuesFromMouse(k,d.colorMap,100,100);if(j.x>100){j.x=100}d.color.setHsv(d._hue!=null?d._hue:360,j.x,100-j.y)}d._updateUI();d._raiseEvent("0",{color:d.color});d.color.transparent=false};var c="mousedown.picker"+this.element.id;if(this._isTouchDevice){c=a.jqx.mobile.getTouchEventName("touchstart")+".picker"+this.element.id}this.addHandler(this.colorMap,c,function(j){if(d.disabled){return}d.beginDrag=true;f(j)});var b="mousemove.picker"+this.element.id;if(this._isTouchDevice){b=a.jqx.mobile.getTouchEventName("touchmove")+".picker"+this.element.id}this.addHandler(a(document),b,function(j){if(d.disabled){return}if(d.beginDrag==true){f(j);if(d._isTouchDevice){j.preventDefault()}}});if(!this._isTouchDevice){this.addHandler(this.colorBar,"dragstart",function(j){j.preventDefault();return false})}var e=function(k){d._setPosition(k,d.colorBar,d.colorBarPointer);if(d.colorMode=="saturation"){var j=d._valuesFromMouse(k,d.colorBar,100,100);d.color.s=j.y;d._saturation=j.y;d.colorMapImageOverlay.css("opacity",(d.color.s)/100);d.color.setHsv(d.color.h,100-d.color.s,d.color.v)}else{var j=d._valuesFromMouse(k,d.colorBar,100,360);d.color.h=360-j.y;d._hue=d.color.h;d.color.setHsv(d.color.h,d.color.s,d.color.v)}d._updateUI();d._raiseEvent("0",{color:d.color});d.color.transparent=false};var h="mousemove.colorBar"+this.element.id;var g="mousedown.colorBar"+this.element.id;var i="mouseup.colorBar"+this.element.id;if(this._isTouchDevice){h=a.jqx.mobile.getTouchEventName("touchmove")+".colorBar"+this.element.id;g=a.jqx.mobile.getTouchEventName("touchstart")+".colorBar"+this.element.id;i=a.jqx.mobile.getTouchEventName("touchend")+".colorBar"+this.element.id}this.addHandler(this.colorBar,g,function(j){if(d.disabled){return}d.beginDragBar=true;e(j)});this.addHandler(a(document),h,function(j){if(d.disabled){return}if(d.beginDragBar==true){e(j);if(d._isTouchDevice){j.preventDefault()}}});this.addHandler(a(document),i,function(j){if(d.disabled){return}d.beginDrag=false;d.beginDragBar=false})},_removeHandlers:function(){this.removeHandler(this.transparent,"click");this.removeHandler(this.host,"selectionstart");this.removeHandler(this.blue,"keyup blur");this.removeHandler(this.green,"keyup blur");this.removeHandler(this.red,"keyup blur");this.removeHandler(this.hex,"keyup blur");this.removeHandler(this.colorMap,"dragstart");this.removeHandler(this.colorBar,"dragstart");this.removeHandler(this.colorMapPointer,"dragStart");this.removeHandler(this.colorBarPointer,"dragStart");var g=this.element.id;var e="mousemove.colorBar"+g;var d="mousedown.colorBar"+g;var f="mouseup.colorBar"+g;var c="mousedown.picker"+g;var b="mousemove.picker"+g;if(this._isTouchDevice){e=a.jqx.mobile.getTouchEventName("touchmove")+".colorBar"+g;d=a.jqx.mobile.getTouchEventName("touchstart")+".colorBar"+g;f=a.jqx.mobile.getTouchEventName("touchend")+".colorBar"+g;c=a.jqx.mobile.getTouchEventName("touchstart")+".picker"+g;b=a.jqx.mobile.getTouchEventName("touchmove")+".picker"+g}this.removeHandler(this.colorMap,c);this.removeHandler(this.colorMap,b);this.removeHandler(this.colorBar,d);this.removeHandler(this.colorBar,e);this.removeHandler(a(document),b);this.removeHandler(a(document),e);this.removeHandler(a(document),f)},_raiseEvent:function(g,c){if(c==undefined){c={owner:null}}var d=this.events[g];var e=c?c:{};e.owner=this;var f=new a.Event(d);f.owner=this;f.args=e;var b=this.host.trigger(f);return b},setColor:function(b){if(!b){return}if(b=="transparent"){this.color.transparent=true;this.color.hex="000";this.color.r=0;this.color.g=0;this.color.b=0}else{if(b.r){this.color=new a.jqx.color({rgb:b})}else{if(b.substring(0,1)=="#"){this.color=new a.jqx.color({hex:b.substring(1)})}else{this.color=new a.jqx.color({hex:b})}}}this._updateUI();this._setPositionFromValue();this._raiseEvent("0",{color:this.color})},getColor:function(){return this.color},resize:function(c,b){this.width=c;this.height=b;this._setSize();this.refresh()},propertyChangedHandler:function(b,c,e,d){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="colorMode"){b.refresh()}if(c=="color"){b._updateUI();b._setPositionFromValue();b._raiseEvent("0",{color:d})}if(c=="width"||c=="height"){b._setSize();b.refresh()}if(c=="showTransparent"){b.refresh()}if(c=="disabled"){this.element.disabled=d;if(d){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}else{b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}}},_valuesFromMouse:function(j,g,c,b){var k=0;var i=0;var f=g.offset();var p=g.height();var d=g.width();var n=j.pageX;var m=j.pageY;if(this._isTouchDevice){var l=a.jqx.position(j);n=l.left;m=l.top}if(n<f.left){k=0}else{if(n>f.left+d){k=d}else{k=n-f.left+1}}if(m<f.top){i=0}else{if(m>f.top+p){i=p}else{i=m-f.top+1}}var h=parseInt(k/d*c);var o=parseInt(i/p*b);return{x:h,y:o}},_validateKey:function(b){if(b.keyCode==9||b.keyCode==16||b.keyCode==38||b.keyCode==29||b.keyCode==40||b.keyCode==17||b.keyCode==37||(b.ctrlKey&&(b.keyCode=="c".charCodeAt()||b.keyCode=="v".charCodeAt()))||(b.ctrlKey&&(b.keyCode=="C".charCodeAt()||b.keyCode=="V".charCodeAt()))){return false}if(b.ctrlKey||b.shiftKey){return false}return true},_setValueInRange:function(d,c,b){if(d==""||isNaN(d)){return c}d=parseInt(d);if(d>b){return b}if(d<c){return c}return d},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.host.removeClass();this._removeHandlers();this.host.remove()},setPointerStyle:function(c){this.colorMapPointer.removeClass();if(c=="transparent"||c.hex==""){this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer"))}var b=105;var d=(c.r*0.299)+(c.g*0.587)+(c.b*0.114);var e=(255-d<b)?"Black":"White";if(e=="Black"){this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer"))}else{this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer-alt"))}},_updateUI:function(){var c=this;c.red.val(c.color.r);c.green.val(c.color.g);c.blue.val(c.color.b);c.hex.val(c.color.hex);var b=new a.jqx.color({hex:"fff"});if(this.colorMode=="saturation"){b.setHsv(this.color.h,100,this.color.v);c.colorBar.css("background","#"+b.hex)}else{b.setHsv(this.color.h,100,100);c.colorMap.css("background-color","#"+b.hex)}c.preview.css("background","#"+this.color.hex);c.setPointerStyle(this.color)},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.host.width()<130){this.host.width(150)}if(this.host.height()<70){this.host.height(70)}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height)}},_arrange:function(){var d=this.host.height();var g=this.host.width();var b=d-44;if(this.showTransparent){b=d-64}if(b<=0){return}this.colorMap.width(85*g/100);this.colorMap.height(b);this.colorBar.height(b);this.colorBar.css("left",this.colorMap.width()+4);this.colorBar.width(8*g/100);this.colorBarPointer.width(this.colorBar.width());this.colorPanel.width(g);this.colorPanel.height(40);if(this.showTransparent){this.colorPanel.height(60)}this.colorPanel.css("top",b+4);this.colorPanel.css("text-align","left");this.hex.width(this.colorMap.width()-this.colorBar.width()-4);var c=this.red.prev().outerWidth()-this.hex.prev().outerWidth();if(c<4){c=4}this.hex.css("margin-left",c+"px");this.preview.width(this.colorBar.width()+7);this.preview.height(25);this.preview.addClass(this.toThemeProperty("jqx-rc-all"));this.preview.addClass(this.toThemeProperty("jqx-color-picker-preview"));this.preview.css("left",this.colorMap.width()-2);this.preview.css("top","5px");var e=this.hex.width();var f=e-this.blue.prev().outerWidth()-this.green.prev().outerWidth()-6;if(f>0){this.blue.width(f/3);this.green.width(f/3);this.red.width(f/3);return}},_getColorPointer:function(){var b=a("<div></div>");b.addClass(this.toThemeProperty("jqx-color-picker-pointer"));return b},_getImageUrl:function(c){var b=c.css("backgroundImage");b=b.replace('url("',"");b=b.replace('")',"");b=b.replace("url(","");b=b.replace(")","");return b},refresh:function(){if(this._delayLoading){return}this._saturation=null;this._hue=null;this.colorMap.removeClass();this.colorBar.removeClass();this.colorMap.addClass(this.toThemeProperty("jqx-disableselect"));this.colorBar.addClass(this.toThemeProperty("jqx-disableselect"));this.colorPanel.addClass(this.toThemeProperty("jqx-color-picker-panel"));this.colorBar.css("background-image","");this.colorMap.css("background-image","");if(this.colorMode=="saturation"){this.colorMap.addClass(this.toThemeProperty("jqx-color-picker-map"));this.colorBar.addClass(this.toThemeProperty("jqx-color-picker-bar"))}else{this.colorMap.addClass(this.toThemeProperty("jqx-color-picker-map-hue"));this.colorBar.addClass(this.toThemeProperty("jqx-color-picker-bar-hue"))}this._barImageURL=this._getImageUrl(this.colorBar);this._mapImageURL=this._getImageUrl(this.colorMap);this._arrange();this.colorBar.children().remove();this.colorBarImageContainer=a("<div style='overflow: hidden;'></div>");this.colorBarImageContainer.width(this.colorBar.width());this.colorBarImageContainer.height(this.colorBar.height());this.colorBarImageContainer.appendTo(this.colorBar);this.colorBarImage=a("<img/>");this.colorBarImage.appendTo(this.colorBarImageContainer);this.colorBarImage.attr("src",this._barImageURL);this.colorBar.css("background-image","none");this.colorBarImage.attr("width",this.colorBar.width());this.colorBarImage.attr("height",this.colorBar.height());this.colorBarPointer.appendTo(this.colorBar);this.colorMap.children().remove();this.colorMapImage=a("<img/>");this.colorMapImage.appendTo(this.colorMap);this.colorMapImage.attr("src",this._mapImageURL);this.colorMap.css("background-image","none");this.colorMapImage.attr("width",this.colorMap.width());this.colorMapImage.attr("height",this.colorMap.height());this.colorMapImageOverlay=a("<img style='position: absolute; left: 0; top: 0;'/>");this.colorMapImageOverlay.prependTo(this.colorMap);this.colorMapImageOverlay.attr("src",this._mapImageOverlayURL);this.colorMapImageOverlay.attr("width",this.colorMap.width());this.colorMapImageOverlay.attr("height",this.colorMap.height());this.colorMapImageOverlay.css("opacity",0);this.colorMapPointer.appendTo(this.colorMap);if(this.showTransparent){this.transparent.appendTo(this.colorPanel)}this._updateUI();this._setPositionFromValue()}});a.jqx.color=function(d){var b={r:0,g:0,b:0,h:0,s:0,v:0,hex:"",hexToRgb:function(i){i=this.validateHex(i);var h="00",f="00",e="00";if(i.length==6){h=i.substring(0,2);f=i.substring(2,4);e=i.substring(4,6)}else{if(i.length>4){h=i.substring(4,i.length);i=i.substring(0,4)}if(i.length>2){f=i.substring(2,i.length);i=i.substring(0,2)}if(i.length>0){e=i.substring(0,i.length)}}return{r:this.hexToInt(h),g:this.hexToInt(f),b:this.hexToInt(e)}},validateHex:function(e){e=new String(e).toUpperCase();e=e.replace(/[^A-F0-9]/g,"0");if(e.length>6){e=e.substring(0,6)}return e},webSafeDec:function(e){e=Math.round(e/51);e*=51;return e},hexToWebSafe:function(i){var h,f,e;if(i.length==3){h=i.substring(0,1);f=i.substring(1,1);e=i.substring(2,1)}else{h=i.substring(0,2);f=i.substring(2,4);e=i.substring(4,6)}return intToHex(this.webSafeDec(this.hexToInt(h)))+this.intToHex(this.webSafeDec(this.hexToInt(f)))+this.intToHex(this.webSafeDec(this.hexToInt(e)))},rgbToWebSafe:function(e){return{r:this.webSafeDec(e.r),g:this.webSafeDec(e.g),b:this.webSafeDec(e.b)}},rgbToHex:function(e){return this.intToHex(e.r)+this.intToHex(e.g)+this.intToHex(e.b)},intToHex:function(f){var e=(parseInt(f).toString(16));if(e.length==1){e=("0"+e)}return e.toUpperCase()},hexToInt:function(e){return(parseInt(e,16))},hslToRgb:function(v){var n=parseInt(v.h)/360;var w=parseInt(v.s)/100;var k=parseInt(v.l)/100;if(k<=0.5){var f=k*(1+w)}else{var f=k+w-(k*w)}var i=2*k-f;var t=n+(1/3);var j=n;var m=n-(1/3);var e=Math.round(this.hueToRgb(i,f,t)*255);var o=Math.round(this.hueToRgb(i,f,j)*255);var u=Math.round(this.hueToRgb(i,f,m)*255);return{r:e,g:o,b:u}},hueToRgb:function(g,f,e){if(e<0){e+=1}else{if(e>1){e-=1}}if((e*6)<1){return g+(f-g)*e*6}else{if((e*2)<1){return f}else{if((e*3)<2){return g+(f-g)*((2/3)-e)*6}else{return g}}}},rgbToHsv:function(h){var k=h.r/255;var j=h.g/255;var f=h.b/255;hsv={h:0,s:0,v:0};var i=0;var e=0;if(k>=j&&k>=f){e=k;i=(j>f)?f:j}else{if(j>=f&&j>=k){e=j;i=(k>f)?f:k}else{e=f;i=(j>k)?k:j}}hsv.v=e;hsv.s=(e)?((e-i)/e):0;if(!hsv.s){hsv.h=0}else{delta=e-i;if(k==e){hsv.h=(j-f)/delta}else{if(j==e){hsv.h=2+(f-k)/delta}else{hsv.h=4+(k-j)/delta}}hsv.h=parseInt(hsv.h*60);if(hsv.h<0){hsv.h+=360}}hsv.s=parseInt(hsv.s*100);hsv.v=parseInt(hsv.v*100);return hsv},hsvToRgb:function(l){rgb={r:0,g:0,b:0};var k=l.h;var r=l.s;var n=l.v;if(r==0){if(n==0){rgb.r=rgb.g=rgb.b=0}else{rgb.r=rgb.g=rgb.b=parseInt(n*255/100)}}else{if(k==360){k=0}k/=60;r=r/100;n=n/100;var j=parseInt(k);var m=k-j;var g=n*(1-r);var e=n*(1-(r*m));var o=n*(1-(r*(1-m)));switch(j){case 0:rgb.r=n;rgb.g=o;rgb.b=g;break;case 1:rgb.r=e;rgb.g=n;rgb.b=g;break;case 2:rgb.r=g;rgb.g=n;rgb.b=o;break;case 3:rgb.r=g;rgb.g=e;rgb.b=n;break;case 4:rgb.r=o;rgb.g=g;rgb.b=n;break;case 5:rgb.r=n;rgb.g=g;rgb.b=e;break}rgb.r=parseInt(rgb.r*255);rgb.g=parseInt(rgb.g*255);rgb.b=parseInt(rgb.b*255)}return rgb},setRgb:function(h,f,e){var j=function(g){if(g<0||g>255){return 0}if(isNaN(parseInt(g))){return 0}return g};this.r=j(h);this.g=j(f);this.b=j(e);var i=this.rgbToHsv(this);this.h=i.h;this.s=i.s;this.v=i.v;this.hex=this.rgbToHex(this)},setHsl:function(g,f,e){this.h=g;this.s=f;this.l=e;var i=this.hslToRgb(this);this.r=i.r;this.g=i.g;this.b=i.b;this.hex=this.rgbToHex(i)},setHsv:function(g,f,e){this.h=g;this.s=f;this.v=e;var i=this.hsvToRgb(this);this.r=i.r;this.g=i.g;this.b=i.b;this.hex=this.rgbToHex(i)},setHex:function(e){this.hex=e;var g=this.hexToRgb(this.hex);this.r=g.r;this.g=g.g;this.b=g.b;var f=this.rgbToHsv(g);this.h=f.h;this.s=f.s;this.v=f.v}};if(d){if(d.hex){var c=b.validateHex(d.hex);b.setHex(c)}else{if(d.r){b.setRgb(d.r,d.g,d.b)}else{if(d.h){b.setHsv(d.h,d.s,d.v)}else{if(d.rgb){b.setRgb(d.rgb.r,d.rgb.g,d.rgb.b)}}}}}return b}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxSwitchButton","",{});a.extend(a.jqx._jqxSwitchButton.prototype,{defineInstance:function(){var b={disabled:false,checked:false,onLabel:"On",offLabel:"Off",toggleMode:"default",animationDuration:250,width:90,height:30,animationEnabled:true,thumbSize:"40%",orientation:"horizontal",switchRatio:"50%",metroMode:false,_isMouseDown:false,rtl:false,_dimensions:{horizontal:{size:"width",opSize:"height",oSize:"outerWidth",opOSize:"outerHeight",pos:"left",oPos:"top",opposite:"vertical"},vertical:{size:"height",opSize:"width",oSize:"outerHeight",opOSize:"outerWidth",pos:"top",oPos:"left",opposite:"horizontal"}},_touchEvents:{mousedown:"touchstart",click:"touchend",mouseup:"touchend",mousemove:"touchmove",mouseenter:"mouseenter",mouseleave:"mouseleave"},_borders:{},_isTouchDevice:false,_distanceRequired:3,_isDistanceTraveled:false,_thumb:undefined,_onLabel:undefined,_offLabel:undefined,_wrapper:undefined,_animationActive:false,aria:{"aria-checked":{name:"checked",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}},_events:["checked","unchecked","change"]};a.extend(true,this,b);return b},createInstance:function(b){if(this.element.nodeName){if(this.element.nodeName=="INPUT"||this.element.nodeName=="BUTTON"){throw"jqxSwitchButton can be rendered only from a DIV tag."}}this.host.attr("role","checkbox");a.jqx.aria(this);this.render();var c=this;a.jqx.utilities.resize(this.host,function(){c.element.innerHTML="";c.render()})},resize:function(c,b){this.width=c;this.height=b;this.render()},render:function(){this.innerHTML="";if(this.theme&&this.theme!=""&&(this.theme.indexOf("metro")!=-1||this.theme.indexOf("windowsphone")!=-1||this.theme.indexOf("office")!=-1)){if(this.thumbSize=="40%"){this.thumbSize=12}this.metroMode=true}var c=a.data(document.body,"jqx-switchbutton")||1;this._idHandler(c);a.data(document.body,"jqx-draggables",++c);this._isTouchDevice=a.jqx.mobile.isTouchDevice();this.switchRatio=parseInt(this.switchRatio,10);this._render();this._addClasses();this._performLayout();this._removeEventHandlers();this._addEventHandles();this._disableSelection();var b=this;if(!this.checked){this._switchButton(false,0,true)}if(this.disabled){this.element.disabled=true}},setOnLabel:function(b){this._onLabel.html('<div style="display: inline-block;">'+b+"</div>");this._centerLabels()},setOffLabel:function(b){this._offLabel.html('<div style="display: inline-block;">'+b+"</div>");this._centerLabels()},toggle:function(){if(this.checked){this.uncheck()}else{this.check()}},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object")){return this.checked}if(typeof b=="string"){if(b=="true"){this.check()}if(b=="false"){this.uncheck()}if(b==""){this.indeterminate()}}else{if(b==true){this.check()}if(b==false){this.uncheck()}if(b==null){this.indeterminate()}}return this.checked},uncheck:function(){var b=this;this._switchButton(false);a.jqx.aria(this,"aria-checked",this.checked)},check:function(){var b=this;this._switchButton(true);a.jqx.aria(this,"aria-checked",this.checked)},_idHandler:function(b){if(!this.element.id){var c="jqx-switchbutton-"+b;this.element.id=c}},_dir:function(b){return this._dimensions[this.orientation][b]},_getEvent:function(c){if(this._isTouchDevice){var b=this._touchEvents[c];return a.jqx.mobile.getTouchEventName(b)}else{return c}},_render:function(){this._thumb=a("<div/>");this._onLabel=a("<div/>");this._offLabel=a("<div/>");this._wrapper=a("<div/>");this._onLabel.appendTo(this.host);this._thumb.appendTo(this.host);this._offLabel.appendTo(this.host);this.host.wrapInner(this._wrapper);this._wrapper=this.host.children();this.setOnLabel(this.onLabel);this.setOffLabel(this.offLabel)},_addClasses:function(){var c=this._thumb,d=this._onLabel,b=this._offLabel;this.host.addClass(this.toThemeProperty("jqx-switchbutton"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this._wrapper.addClass(this.toThemeProperty("jqx-switchbutton-wrapper"));c.addClass(this.toThemeProperty("jqx-fill-state-normal"));c.addClass(this.toThemeProperty("jqx-switchbutton-thumb"));d.addClass(this.toThemeProperty("jqx-switchbutton-label-on"));d.addClass(this.toThemeProperty("jqx-switchbutton-label"));b.addClass(this.toThemeProperty("jqx-switchbutton-label-off"));b.addClass(this.toThemeProperty("jqx-switchbutton-label"));if(this.checked){this.host.addClass(this.toThemeProperty("jqx-switchbutton-on"))}else{this.host.removeClass(this.toThemeProperty("jqx-switchbutton-on"))}},_performLayout:function(){var g=this.host,e=this._dir("opSize"),f=this._dir("size"),i=this._wrapper,d;g.css({width:this.width,height:this.height});i.css(e,g[e]());this._thumbLayout();this._labelsLayout();d=this._borders[this._dir("opposite")];i.css(f,g[f]()+this._offLabel[this._dir("oSize")]()+d);i.css(e,g[e]());if(this.metroMode||(this.theme&&this.theme!=""&&(this.theme.indexOf("metro")!=-1||this.theme.indexOf("office")!=-1))){var c=this._thumb,h=this._onLabel,b=this._offLabel;h.css("position","relative");h.css("top","1px");h.css("margin-left","1px");b.css("position","relative");b.css("top","1px");b.css("left","-2px");b.css("margin-right","1px");b.height(h.height()-2);b.width(h.width()-3);h.height(h.height()-2);h.width(h.width()-3);this._thumb[this._dir("size")](this.thumbSize+3);this._thumb.css("top","-1px");this._thumb[this._dir("opSize")](g[this._dir("opSize")]()+2);this._thumb.css("position","relative");this.host.css("overflow","hidden");if(this.checked){this._onLabel.css("visibility","visible");this._offLabel.css("visibility","hidden");this._thumb.css("left","0px")}else{this._onLabel.css("visibility","hidden");this._offLabel.css("visibility","visible");this._thumb.css("left","-2px")}}},_thumbLayout:function(){var d=this.thumbSize,e=this.host,b=0,f={horizontal:0,vertical:0},c=this;if(d.toString().indexOf("%")>=0){d=e[this._dir("size")]()*parseInt(d,10)/100}this._thumb[this._dir("size")](d);this._thumb[this._dir("opSize")](e[this._dir("opSize")]());this._handleThumbBorders()},_handleThumbBorders:function(){this._borders.horizontal=parseInt(this._thumb.css("border-left-width"),10)||0;this._borders.horizontal+=parseInt(this._thumb.css("border-right-width"),10)||0;this._borders.vertical=parseInt(this._thumb.css("border-top-width"),10)||0;this._borders.vertical+=parseInt(this._thumb.css("border-bottom-width"),10)||0;var b=this._borders[this._dir("opposite")];if(this.orientation==="horizontal"){this._thumb.css("margin-top",-b/2);this._thumb.css("margin-left",0)}else{this._thumb.css("margin-left",-b/2);this._thumb.css("margin-top",0)}},_labelsLayout:function(){var g=this.host,c=this._thumb,e=this._dir("opSize"),h=this._dir("size"),b=this._dir("oSize"),f=g[h]()-c[b](),d=this._borders[this._dir("opposite")]/2;this._onLabel[h](f+d);this._offLabel[h](f+d);if(this.rtl){this._onLabel[h](f+2*d)}this._onLabel[e](g[e]());this._offLabel[e](g[e]());this._orderLabels();this._centerLabels()},_orderLabels:function(){if(this.orientation==="horizontal"){var b="left";if(this.rtl){b="right"}this._onLabel.css("float",b);this._thumb.css("float",b);this._offLabel.css("float",b)}else{this._onLabel.css("display","block");this._offLabel.css("display","block")}},_centerLabels:function(){var c=this._onLabel.children("div"),b=this._offLabel.children("div"),e=c.parent(),f=e.height(),g=c.outerHeight(),d=this._borders[this.orientation]/2||0;if(g==0){g=14}var h=Math.floor((f-g)/2)+d;c.css("margin-top",h);b.css("margin-top",h)},_removeEventHandlers:function(){var b="."+this.element.id;this.removeHandler(this._wrapper,this._getEvent("click")+b,this._clickHandle);this.removeHandler(this._thumb,this._getEvent("mousedown")+b,this._mouseDown);this.removeHandler(a(document),this._getEvent("mouseup")+b,this._mouseUp);this.removeHandler(a(document),this._getEvent("mousemove")+b,this._mouseMove);this.removeHandler(this._thumb,"mouseenter"+b);this.removeHandler(this._thumb,"mouseleave"+b)},_addEventHandles:function(){var c="."+this.element.id,b=this;this.addHandler(this._thumb,"mouseenter"+c,function(){b._thumb.addClass(b.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(this._thumb,"mouseleave"+c,function(){b._thumb.removeClass(b.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(this._wrapper,this._getEvent("click")+c,this._clickHandle,{self:this});this.addHandler(this._thumb,this._getEvent("mousedown")+c,this._mouseDown,{self:this});this.addHandler(a(document),this._getEvent("mouseup")+c,this._mouseUp,{self:this});this.addHandler(a(document),this._getEvent("mousemove")+c,this._mouseMove,{self:this})},enable:function(){this.disabled=false;this.element.disabled=false;a.jqx.aria(this,"aria-disabled",this.disabled)},disable:function(){this.disabled=true;this.element.disabled=true;a.jqx.aria(this,"aria-disabled",this.disabled)},_clickHandle:function(c){var b=c.data.self;if((b.toggleMode==="click"||b.toggleMode==="default")&&!b.disabled){if(!b._isDistanceTraveled&&!b._dragged){b._wrapper.stop();b.toggle()}}b._thumb.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))},_mouseDown:function(c){var b=c.data.self,d=b._wrapper;if(b.metroMode){b.host.css("overflow","hidden");b._onLabel.css("visibility","visible");b._offLabel.css("visibility","visible")}b._mouseStartPosition=b._getMouseCoordinates(c);b._buttonStartPosition={left:parseInt(d.css("margin-left"),10)||0,top:parseInt(d.css("margin-top"),10)||0};if(!b.disabled&&(b.toggleMode==="slide"||b.toggleMode==="default")){b._wrapper.stop();b._isMouseDown=true;b._isDistanceTraveled=false;b._dragged=false}b._thumb.addClass(b.toThemeProperty("jqx-fill-state-pressed"))},_mouseUp:function(d){var c=d.data.self;if(c.metroMode){}c._isMouseDown=false;c._thumb.removeClass(c.toThemeProperty("jqx-fill-state-pressed"));if(!c._isDistanceTraveled){return}var f=c._wrapper,b=parseInt(f.css("margin-"+c._dir("pos")),10)||0,e=c._dropHandler(b);if(e){c._switchButton(!c.checked)}else{c._switchButton(c.checked,null,true)}c._isDistanceTraveled=false},_mouseMove:function(f){var d=f.data.self,b=d._getMouseCoordinates(f);if(d._isMouseDown&&d._distanceTraveled(b)){var e=d._dir("pos"),h=d._wrapper,c=d._buttonStartPosition[e],g=c+b[e]-d._mouseStartPosition[e],g=d._validatePosition(g);d._dragged=true;h.css("margin-"+d._dir("pos"),g);d._onLabel.css("visibility","visible");d._offLabel.css("visibility","visible");return false}},_distanceTraveled:function(b){if(this._isDistanceTraveled){return true}else{if(!this._isMouseDown){return false}else{var d=this._mouseStartPosition,c=this._distanceRequired;this._isDistanceTraveled=Math.abs(b.left-d.left)>=c||Math.abs(b.top-d.top)>=c;return this._isDistanceTraveled}}},_validatePosition:function(c){var d=this._borders[this._dir("opposite")],b=0,e=-(this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]())-d;if(b<c){return b}if(e>c){return e}return c},_dropHandler:function(c){var b=0,d=-(this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]()),g=Math.abs(d-b),e=Math.abs(c-this._buttonStartPosition[this._dir("pos")]),f=g*(this.switchRatio/100);if(e>=f){return true}return false},_switchButton:function(c,h,g){if(this.metroMode){this.host.css("overflow","hidden");this._onLabel.css("visibility","visible");this._offLabel.css("visibility","visible");if(c){this._thumb.css("left","0px")}else{this._thumb.css("left","-2px")}}else{this._onLabel.css("visibility","visible");this._offLabel.css("visibility","visible")}var i=this._wrapper,d=this,f={},e=this._borders[this._dir("opposite")],b=0;if(typeof h==="undefined"){h=(this.animationEnabled?this.animationDuration:0)}if(!this.rtl){if(!c){b=this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]()+e}}else{if(c){b=this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]()+e;if(this.metroMode){b+=5}}else{if(this.metroMode){b-=3}}}f["margin-"+this._dir("pos")]=-b;if(c){d.host.addClass(d.toThemeProperty("jqx-switchbutton-on"))}else{d.host.removeClass(d.toThemeProperty("jqx-switchbutton-on"))}i.animate(f,h,function(){if(c){d._onLabel.css("visibility","visible");d._offLabel.css("visibility","hidden")}else{d._onLabel.css("visibility","hidden");d._offLabel.css("visibility","visible")}d.checked=c;if(!g){d._handleEvent(!c)}})},_handleEvent:function(b){if(b!==this.checked){this._raiseEvent(2,{check:this.checked,checked:this.checked})}if(b){this._raiseEvent(0,{checked:this.checked})}else{this._raiseEvent(1,{checked:this.checked})}},_disableSelection:function(){var c=this.host,b=c.find("*");a.each(b,function(d,e){e.onselectstart=function(){return false};a(e).addClass("jqx-disableselect")})},_getMouseCoordinates:function(b){if(this._isTouchDevice){return{left:b.originalEvent.touches[0].pageX,top:b.originalEvent.touches[0].pageY}}else{return{left:b.pageX,top:b.pageY}}},destroy:function(){this._removeEventHandlers();this.host.removeClass(this.toThemeProperty("jqx-switchbutton"));this._wrapper.remove()},_raiseEvent:function(d,b){var c=a.Event(this._events[d]);c.args=b;return this.host.trigger(c)},_themeChanger:function(f,g,e){if(!f){return}if(typeof e==="undefined"){e=this.host}var h=e[0].className.split(" "),b=[],j=[],d=e.children();for(var c=0;c<h.length;c+=1){if(h[c].indexOf(f)>=0){b.push(h[c]);j.push(h[c].replace(f,g))}}this._removeOldClasses(b,e);this._addNewClasses(j,e);for(var c=0;c<d.length;c+=1){this._themeChanger(f,g,a(d[c]))}},_removeOldClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.removeClass(d[b])}},_addNewClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.addClass(d[b])}},propertyChangedHandler:function(b,c,e,d){switch(c){case"disabled":if(d){this.disable()}else{this.enable()}break;case"switchRatio":this.switchRatio=parseInt(this.switchRatio,10);break;case"checked":if(d){this.check()}else{this.uncheck()}break;case"onLabel":this.setOnLabel(d);break;case"offLabel":this.setOffLabel(d);break;case"theme":a.jqx.utilities.setTheme(e,d,b.host);break;case"width":case"height":case"thumbSize":case"orientation":this._wrapper.css("margin-left","0px");this._wrapper.css("margin-top","0px");this._performLayout();this._wrapper.css("left","0px");this._wrapper.css("top","0px");this._switchButton(this.checked,0,true);break}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxScrollBar","",{});a.extend(a.jqx._jqxScrollBar.prototype,{defineInstance:function(){var b={height:null,width:null,vertical:false,min:0,max:1000,value:0,step:10,largestep:50,thumbMinSize:10,thumbSize:0,thumbStep:"auto",roundedCorners:"all",showButtons:true,disabled:false,touchMode:"auto",touchModeStyle:"auto",thumbTouchSize:0,_triggervaluechanged:true,rtl:false,areaDownCapture:false,areaUpCapture:false,_initialLayout:false};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){this._mouseup=new Date();var c=this;var d="<div id='jqxScrollOuterWrap' style='box-sizing: content-box; width:100%; height: 100%; align:left; border: 0px; valign:top; position: relative;'><div id='jqxScrollWrap' style='box-sizing: content-box; width:100%; height: 100%; left: 0px; top: 0px; align:left; valign:top; position: absolute;'><div id='jqxScrollBtnUp' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'><div></div></div><div id='jqxScrollAreaUp' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='jqxScrollThumb' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='jqxScrollAreaDown' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='jqxScrollBtnDown' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'><div></div></div></div></div>";if(a.jqx.utilities&&a.jqx.utilities.scrollBarButtonsVisibility=="hidden"){this.showButtons=false}if(c.WinJS){MSApp.execUnsafeLocalFunction(function(){c.host.html(d)})}else{this.element.innerHTML=d}if(this.width!=undefined&&parseInt(this.width)>0){this.host.width(parseInt(this.width))}if(this.height!=undefined&&parseInt(this.height)>0){this.host.height(parseInt(this.height))}this.isPercentage=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width);this.isPercentage=true}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height);this.isPercentage=true}if(this.isPercentage){var e=this;a.jqx.utilities.resize(this.host,function(){e._arrange()},false)}this.thumbCapture=false;this.scrollOuterWrap=a(this.element.firstChild);this.scrollWrap=a(this.scrollOuterWrap[0].firstChild);this.btnUp=a(this.scrollWrap[0].firstChild);this.areaUp=a(this.btnUp[0].nextSibling);this.btnThumb=a(this.areaUp[0].nextSibling);this.arrowUp=a(this.btnUp[0].firstChild);this.areaDown=a(this.btnThumb[0].nextSibling);this.btnDown=a(this.areaDown[0].nextSibling);this.arrowDown=a(this.btnDown[0].firstChild);var b=this.element.id;this.btnUp[0].id="jqxScrollBtnUp"+b;this.btnDown[0].id="jqxScrollBtnDown"+b;this.btnThumb[0].id="jqxScrollThumb"+b;this.areaUp[0].id="jqxScrollAreaUp"+b;this.areaDown[0].id="jqxScrollAreaDown"+b;this.scrollWrap[0].id="jqxScrollWrap"+b;this.scrollOuterWrap[0].id="jqxScrollOuterWrap"+b;if(!this.host.jqxRepeatButton){throw new Error("jqxScrollBar: Missing reference to jqxbuttons.js.");return}this.btnUp.jqxRepeatButton({_ariaDisabled:true,overrideTheme:true,disabled:this.disabled});this.btnDown.jqxRepeatButton({_ariaDisabled:true,overrideTheme:true,disabled:this.disabled});this.btnDownInstance=a.data(this.btnDown[0],"jqxRepeatButton").instance;this.btnUpInstance=a.data(this.btnUp[0],"jqxRepeatButton").instance;this.areaUp.jqxRepeatButton({_scrollAreaButton:true,_ariaDisabled:true,overrideTheme:true});this.areaDown.jqxRepeatButton({_scrollAreaButton:true,_ariaDisabled:true,overrideTheme:true});this.btnThumb.jqxButton({_ariaDisabled:true,overrideTheme:true,disabled:this.disabled});this.propertyChangeMap.value=function(f,h,g,i){if(!(isNaN(i))){if(g!=i){f.setPosition(parseFloat(i),true)}}};this.propertyChangeMap.width=function(f,h,g,i){if(f.width!=undefined&&parseInt(f.width)>0){f.host.width(parseInt(f.width));f._arrange()}};this.propertyChangeMap.height=function(f,h,g,i){if(f.height!=undefined&&parseInt(f.height)>0){f.host.height(parseInt(f.height));f._arrange()}};this.propertyChangeMap.theme=function(f,h,g,i){f.setTheme()};this.propertyChangeMap.max=function(f,h,g,i){if(!(isNaN(i))){if(g!=i){f.max=parseInt(i);if(f.min>f.max){f.max=f.min+1}f._arrange();f.setPosition(f.value)}}};this.propertyChangeMap.min=function(f,h,g,i){if(!(isNaN(i))){if(g!=i){f.min=parseInt(i);if(f.min>f.max){f.max=f.min+1}f._arrange();f.setPosition(f.value)}}};this.propertyChangeMap.disabled=function(f,h,g,i){if(g!=i){if(i){f.host.addClass(f.toThemeProperty("jqx-fill-state-disabled"))}else{f.host.removeClass(f.toThemeProperty("jqx-fill-state-disabled"))}f.btnUp.jqxRepeatButton("disabled",f.disabled);f.btnDown.jqxRepeatButton("disabled",f.disabled);f.btnThumb.jqxButton("disabled",f.disabled)}};this.propertyChangeMap.touchMode=function(f,h,g,i){if(g!=i){f._updateTouchBehavior();if(i===true){f.showButtons=false;f.refresh()}else{if(i===false){f.showButtons=true;f.refresh()}}}};this.propertyChangeMap.rtl=function(f,h,g,i){if(g!=i){f.refresh()}};this.buttonUpCapture=false;this.buttonDownCapture=false;this._updateTouchBehavior();this.setPosition(this.value);this._addHandlers();this.setTheme()},resize:function(c,b){this.width=c;this.height=b;this._arrange()},_updateTouchBehavior:function(){this.isTouchDevice=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.setTheme();return}this.isTouchDevice=true;a.jqx.mobile.setMobileSimulator(this.btnThumb[0]);this._removeHandlers();this._addHandlers();this.setTheme()}else{if(this.touchMode==false){this.isTouchDevice=false}}},_addHandlers:function(){var j=this;var e=false;try{if(("ontouchstart" in window)||window.DocumentTouch&&document instanceof DocumentTouch){e=true;this._touchSupport=true}}catch(f){}if(j.isTouchDevice||e){this.addHandler(this.btnThumb,a.jqx.mobile.getTouchEventName("touchend"),function(k){var l=j.vertical?j.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):j.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");var m=j.toThemeProperty("jqx-fill-state-pressed");j.btnThumb.removeClass(l);j.btnThumb.removeClass(m);if(!j.disabled){j.handlemouseup(j,k)}return false});this.addHandler(this.btnThumb,a.jqx.mobile.getTouchEventName("touchstart"),function(k){if(!j.disabled){if(j.touchMode==true){k.clientX=k.originalEvent.clientX;k.clientY=k.originalEvent.clientY}else{var l=k;if(l.originalEvent.touches&&l.originalEvent.touches.length){k.clientX=l.originalEvent.touches[0].clientX;k.clientY=l.originalEvent.touches[0].clientY}else{k.clientX=k.originalEvent.clientX;k.clientY=k.originalEvent.clientY}}j.handlemousedown(k);if(k.preventDefault){k.preventDefault()}}});a.jqx.mobile.touchScroll(this.element,j.max,function(q,p,l,k,m){if(j.host.css("visibility")=="visible"){if(j.touchMode==true){m.clientX=m.originalEvent.clientX;m.clientY=m.originalEvent.clientY}else{var o=m;if(o.originalEvent.touches&&o.originalEvent.touches.length){m.clientX=o.originalEvent.touches[0].clientX;m.clientY=o.originalEvent.touches[0].clientY}else{m.clientX=m.originalEvent.clientX;m.clientY=m.originalEvent.clientY}}var n=j.vertical?j.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):j.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");j.btnThumb.addClass(n);j.btnThumb.addClass(j.toThemeProperty("jqx-fill-state-pressed"));j.thumbCapture=true;j.handlemousemove(m)}},j.element.id)}if(!this.isTouchDevice){try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var b=null;if(window.parent&&document.referrer){b=document.referrer}if(b&&b.indexOf(document.location.host)!=-1){var g=function(k){if(!j.disabled){j.handlemouseup(j,k)}};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}}catch(i){}var c="click mouseup mousedown";this.addHandler(this.btnDown,c,function(l){var k=j.step;if(Math.abs(j.max-j.min)<=k){k=1}if(j.rtl&&!j.vertical){k=-j.step}switch(l.type){case"click":if(j.buttonDownCapture&&!j.isTouchDevice){if(!j.disabled){j.setPosition(j.value+k)}}else{if(!j.disabled&&j.isTouchDevice){j.setPosition(j.value+k)}}break;case"mouseup":if(!j.btnDownInstance.base.disabled&&j.buttonDownCapture){j.buttonDownCapture=false;j.btnDown.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j.btnDown.removeClass(j.toThemeProperty("jqx-fill-state-pressed"));j._removeArrowClasses("pressed","down");j.handlemouseup(j,l);j.setPosition(j.value+k);return false}break;case"mousedown":if(!j.btnDownInstance.base.disabled){j.buttonDownCapture=true;j.btnDown.addClass(j.toThemeProperty("jqx-fill-state-pressed"));j.btnDown.addClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j._addArrowClasses("pressed","down");return false}break}});this.addHandler(this.btnUp,c,function(l){var k=j.step;if(Math.abs(j.max-j.min)<=k){k=1}if(j.rtl&&!j.vertical){k=-j.step}switch(l.type){case"click":if(j.buttonUpCapture&&!j.isTouchDevice){if(!j.disabled){j.setPosition(j.value-k)}}else{if(!j.disabled&&j.isTouchDevice){j.setPosition(j.value-k)}}break;case"mouseup":if(!j.btnUpInstance.base.disabled&&j.buttonUpCapture){j.buttonUpCapture=false;j.btnUp.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j.btnUp.removeClass(j.toThemeProperty("jqx-fill-state-pressed"));j._removeArrowClasses("pressed","up");j.handlemouseup(j,l);j.setPosition(j.value-k);return false}break;case"mousedown":if(!j.btnUpInstance.base.disabled){j.buttonUpCapture=true;j.btnUp.addClass(j.toThemeProperty("jqx-fill-state-pressed"));j.btnUp.addClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j._addArrowClasses("pressed","up");return false}break}})}var h="click";if(this.isTouchDevice){h=a.jqx.mobile.getTouchEventName("touchend")}this.addHandler(this.areaUp,h,function(l){if(!j.disabled){var k=j.largestep;if(j.rtl&&!j.vertical){k=-j.largestep}j.setPosition(j.value-k);return false}});this.addHandler(this.areaDown,h,function(l){if(!j.disabled){var k=j.largestep;if(j.rtl&&!j.vertical){k=-j.largestep}j.setPosition(j.value+k);return false}});this.addHandler(this.areaUp,"mousedown",function(k){if(!j.disabled){j.areaUpCapture=true;return false}});this.addHandler(this.areaDown,"mousedown",function(k){if(!j.disabled){j.areaDownCapture=true;return false}});this.addHandler(this.btnThumb,"mousedown dragstart",function(k){if(k.type==="dragstart"){return false}if(!j.disabled){j.handlemousedown(k)}if(k.preventDefault){k.preventDefault()}});this.addHandler(a(document),"mouseup."+this.element.id,function(k){if(!j.disabled){j.handlemouseup(j,k)}});if(!this.isTouchDevice){this.mousemoveFunc=function(k){if(!j.disabled){j.handlemousemove(k)}};this.addHandler(a(document),"mousemove."+this.element.id,this.mousemoveFunc);this.addHandler(a(document),"mouseleave."+this.element.id,function(k){if(!j.disabled){j.handlemouseleave(k)}});this.addHandler(a(document),"mouseenter."+this.element.id,function(k){if(!j.disabled){j.handlemouseenter(k)}});if(!j.disabled){this.addHandler(this.btnUp,"mouseenter mouseleave",function(k){if(k.type==="mouseenter"){if(!j.disabled&&!j.btnUpInstance.base.disabled&&j.touchMode!=true){j.btnUp.addClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnUp.addClass(j.toThemeProperty("jqx-fill-state-hover"));j._addArrowClasses("hover","up")}}else{if(!j.disabled&&!j.btnUpInstance.base.disabled&&j.touchMode!=true){j.btnUp.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnUp.removeClass(j.toThemeProperty("jqx-fill-state-hover"));j._removeArrowClasses("hover","up")}}});var d=j.toThemeProperty("jqx-scrollbar-thumb-state-hover");if(!j.vertical){d=j.toThemeProperty("jqx-scrollbar-thumb-state-hover-horizontal")}this.addHandler(this.btnThumb,"mouseenter mouseleave",function(k){if(k.type==="mouseenter"){if(!j.disabled&&j.touchMode!=true){j.btnThumb.addClass(d);j.btnThumb.addClass(j.toThemeProperty("jqx-fill-state-hover"))}}else{if(!j.disabled&&j.touchMode!=true){j.btnThumb.removeClass(d);j.btnThumb.removeClass(j.toThemeProperty("jqx-fill-state-hover"))}}});this.addHandler(this.btnDown,"mouseenter mouseleave",function(k){if(k.type==="mouseenter"){if(!j.disabled&&!j.btnDownInstance.base.disabled&&j.touchMode!=true){j.btnDown.addClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnDown.addClass(j.toThemeProperty("jqx-fill-state-hover"));j._addArrowClasses("hover","down")}}else{if(!j.disabled&&!j.btnDownInstance.base.disabled&&j.touchMode!=true){j.btnDown.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnDown.removeClass(j.toThemeProperty("jqx-fill-state-hover"));j._removeArrowClasses("hover","down")}}})}}},destroy:function(){var b=this.btnUp;var f=this.btnDown;var d=this.btnThumb;var c=this.scrollWrap;var h=this.areaUp;var e=this.areaDown;this.arrowUp.remove();delete this.arrowUp;this.arrowDown.remove();delete this.arrowDown;e.removeClass();h.removeClass();f.removeClass();b.removeClass();d.removeClass();b.jqxRepeatButton("destroy");f.jqxRepeatButton("destroy");h.jqxRepeatButton("destroy");e.jqxRepeatButton("destroy");d.jqxButton("destroy");var g=a.data(this.element,"jqxScrollBar");this._removeHandlers();this.btnUp=null;this.btnDown=null;this.scrollWrap=null;this.areaUp=null;this.areaDown=null;this.scrollOuterWrap=null;delete this.mousemoveFunc;delete this.btnDownInstance;delete this.btnUpInstance;delete this.scrollOuterWrap;delete this.scrollWrap;delete this.btnDown;delete this.areaDown;delete this.areaUp;delete this.btnDown;delete this.btnUp;delete this.btnThumb;delete this.propertyChangeMap.value;delete this.propertyChangeMap.min;delete this.propertyChangeMap.max;delete this.propertyChangeMap.touchMode;delete this.propertyChangeMap.disabled;delete this.propertyChangeMap.theme;delete this.propertyChangeMap;if(g){delete g.instance}this.host.removeData();this.host.remove();delete this.host;delete this.set;delete this.get;delete this.call;delete this.element},_removeHandlers:function(){this.removeHandler(this.btnUp,"mouseenter");this.removeHandler(this.btnDown,"mouseenter");this.removeHandler(this.btnThumb,"mouseenter");this.removeHandler(this.btnUp,"mouseleave");this.removeHandler(this.btnDown,"mouseleave");this.removeHandler(this.btnThumb,"mouseleave");this.removeHandler(this.btnUp,"click");this.removeHandler(this.btnDown,"click");this.removeHandler(this.btnDown,"mouseup");this.removeHandler(this.btnUp,"mouseup");this.removeHandler(this.btnDown,"mousedown");this.removeHandler(this.btnUp,"mousedown");this.removeHandler(this.areaUp,"mousedown");this.removeHandler(this.areaDown,"mousedown");this.removeHandler(this.areaUp,"click");this.removeHandler(this.areaDown,"click");this.removeHandler(this.btnThumb,"mousedown");this.removeHandler(this.btnThumb,"dragstart");this.removeHandler(a(document),"mouseup."+this.element.id);if(!this.mousemoveFunc){this.removeHandler(a(document),"mousemove."+this.element.id)}else{this.removeHandler(a(document),"mousemove."+this.element.id,this.mousemoveFunc)}this.removeHandler(a(document),"mouseleave."+this.element.id);this.removeHandler(a(document),"mouseenter."+this.element.id);var b=this},_addArrowClasses:function(c,b){if(c=="pressed"){c="selected"}if(c!=""){c="-"+c}if(this.vertical){if(b=="up"||b==undefined){this.arrowUp.addClass(this.toThemeProperty("jqx-icon-arrow-up"+c))}if(b=="down"||b==undefined){this.arrowDown.addClass(this.toThemeProperty("jqx-icon-arrow-down"+c))}}else{if(b=="up"||b==undefined){this.arrowUp.addClass(this.toThemeProperty("jqx-icon-arrow-left"+c))}if(b=="down"||b==undefined){this.arrowDown.addClass(this.toThemeProperty("jqx-icon-arrow-right"+c))}}},_removeArrowClasses:function(c,b){if(c=="pressed"){c="selected"}if(c!=""){c="-"+c}if(this.vertical){if(b=="up"||b==undefined){this.arrowUp.removeClass(this.toThemeProperty("jqx-icon-arrow-up"+c))}if(b=="down"||b==undefined){this.arrowDown.removeClass(this.toThemeProperty("jqx-icon-arrow-down"+c))}}else{if(b=="up"||b==undefined){this.arrowUp.removeClass(this.toThemeProperty("jqx-icon-arrow-left"+c))}if(b=="down"||b==undefined){this.arrowDown.removeClass(this.toThemeProperty("jqx-icon-arrow-right"+c))}}},setTheme:function(){var o=this.btnUp;var m=this.btnDown;var p=this.btnThumb;var e=this.scrollWrap;var g=this.areaUp;var h=this.areaDown;var f=this.arrowUp;var i=this.arrowDown;this.scrollWrap[0].className=this.toThemeProperty("jqx-reset");this.scrollOuterWrap[0].className=this.toThemeProperty("jqx-reset");var k=this.toThemeProperty("jqx-reset");this.areaDown[0].className=k;this.areaUp[0].className=k;var d=this.toThemeProperty("jqx-scrollbar")+" "+this.toThemeProperty("jqx-widget")+" "+this.toThemeProperty("jqx-widget-content");this.host.addClass(d);m[0].className=this.toThemeProperty("jqx-scrollbar-button-state-normal");o[0].className=this.toThemeProperty("jqx-scrollbar-button-state-normal");var q="";if(this.vertical){f[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-up");i[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-down");q=this.toThemeProperty("jqx-scrollbar-thumb-state-normal")}else{f[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-left");i[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-right");q=this.toThemeProperty("jqx-scrollbar-thumb-state-normal-horizontal")}q+=" "+this.toThemeProperty("jqx-fill-state-normal");p[0].className=q;if(this.disabled){e.addClass(this.toThemeProperty("jqx-fill-state-disabled"));e.removeClass(this.toThemeProperty("jqx-scrollbar-state-normal"))}else{e.addClass(this.toThemeProperty("jqx-scrollbar-state-normal"));e.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(this.roundedCorners=="all"){this.host.addClass(this.toThemeProperty("jqx-rc-all"));if(this.vertical){var j=a.jqx.cssroundedcorners("top");j=this.toThemeProperty(j);o.addClass(j);var c=a.jqx.cssroundedcorners("bottom");c=this.toThemeProperty(c);m.addClass(c)}else{var n=a.jqx.cssroundedcorners("left");n=this.toThemeProperty(n);o.addClass(n);var l=a.jqx.cssroundedcorners("right");l=this.toThemeProperty(l);m.addClass(l)}}else{var b=a.jqx.cssroundedcorners(this.roundedCorners);b=this.toThemeProperty(b);elBtnUp.addClass(b);elBtnDown.addClass(b)}var b=a.jqx.cssroundedcorners(this.roundedCorners);b=this.toThemeProperty(b);if(!p.hasClass(b)){p.addClass(b)}if(this.isTouchDevice&&this.touchModeStyle!=false){this.showButtons=false;p.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-normal-touch"))}},isScrolling:function(){if(this.thumbCapture==undefined||this.buttonDownCapture==undefined||this.buttonUpCapture==undefined||this.areaDownCapture==undefined||this.areaUpCapture==undefined){return false}return this.thumbCapture||this.buttonDownCapture||this.buttonUpCapture||this.areaDownCapture||this.areaUpCapture},handlemousedown:function(c){if(this.thumbCapture==undefined||this.thumbCapture==false){this.thumbCapture=true;var b=this.btnThumb;if(b!=null){b.addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(this.vertical){b.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"))}else{b.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal"))}}}this.dragStartX=c.clientX;this.dragStartY=c.clientY;this.dragStartValue=this.value},toggleHover:function(c,b){},refresh:function(){this._arrange()},_setElementPosition:function(c,b,d){if(!isNaN(b)){if(parseInt(c[0].style.left)!=parseInt(b)){c[0].style.left=b+"px"}}if(!isNaN(d)){if(parseInt(c[0].style.top)!=parseInt(d)){c[0].style.top=d+"px"}}},_setElementTopPosition:function(b,c){if(!isNaN(c)){b[0].style.top=c+"px"}},_setElementLeftPosition:function(c,b){if(!isNaN(b)){c[0].style.left=b+"px"}},handlemouseleave:function(e){var b=this.btnUp;var d=this.btnDown;if(this.buttonDownCapture||this.buttonUpCapture){b.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));d.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));this._removeArrowClasses("pressed")}if(this.thumbCapture!=true){return}var c=this.btnThumb;var f=this.vertical?this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");c.removeClass(f);c.removeClass(this.toThemeProperty("jqx-fill-state-pressed"))},handlemouseenter:function(e){var b=this.btnUp;var d=this.btnDown;if(this.buttonUpCapture){b.addClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));b.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._addArrowClasses("pressed","up")}if(this.buttonDownCapture){d.addClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));d.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._addArrowClasses("pressed","down")}if(this.thumbCapture!=true){return}var c=this.btnThumb;if(this.vertical){c.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"))}else{c.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal"))}c.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},handlemousemove:function(b){var i=this.btnUp;var e=this.btnDown;var d=0;if(e==null||i==null){return}if(i!=null&&e!=null&&this.buttonDownCapture!=undefined&&this.buttonUpCapture!=undefined){if(this.buttonDownCapture&&b.which==d){e.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));e.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._removeArrowClasses("pressed","down");this.buttonDownCapture=false}else{if(this.buttonUpCapture&&b.which==d){i.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));i.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._removeArrowClasses("pressed","up");this.buttonUpCapture=false}}}if(this.thumbCapture!=true){return false}var k=this.btnThumb;if(b.which==d&&!this.isTouchDevice&&!this._touchSupport){this.thumbCapture=false;this._arrange();var j=this.vertical?this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");k.removeClass(j);k.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));return true}if(b.preventDefault!=undefined){b.preventDefault()}if(b.originalEvent!=null){b.originalEvent.mouseHandled=true}if(b.stopPropagation!=undefined){b.stopPropagation()}var l=0;try{if(!this.vertical){l=b.clientX-this.dragStartX}else{l=b.clientY-this.dragStartY}var f=this._btnAndThumbSize;if(!this._btnAndThumbSize){f=(this.vertical)?i.height()+e.height()+k.height():i.width()+e.width()+k.width()}var g=(this.max-this.min)/(this.scrollBarSize-f);if(this.thumbStep=="auto"){l*=g}else{l*=g;if(Math.abs(this.dragStartValue+l-this.value)>=parseInt(this.thumbStep)){var c=Math.round(parseInt(l)/this.thumbStep)*this.thumbStep;if(this.rtl&&!this.vertical){this.setPosition(this.dragStartValue-c)}else{this.setPosition(this.dragStartValue+c)}return false}else{return false}}var c=l;if(this.rtl&&!this.vertical){c=-l}this.setPosition(this.dragStartValue+c)}catch(h){alert(h)}return false},handlemouseup:function(d,g){var c=false;if(this.thumbCapture){this.thumbCapture=false;var e=this.btnThumb;var h=this.vertical?this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");e.removeClass(h);e.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));c=true;this._mouseup=new Date()}this.areaDownCapture=this.areaUpCapture=false;if(this.buttonUpCapture||this.buttonDownCapture){var b=this.btnUp;var f=this.btnDown;this.buttonUpCapture=false;this.buttonDownCapture=false;b.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));f.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));b.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));f.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._removeArrowClasses("pressed");c=true;this._mouseup=new Date()}if(c){if(g.preventDefault!=undefined){g.preventDefault()}if(g.originalEvent!=null){g.originalEvent.mouseHandled=true}if(g.stopPropagation!=undefined){g.stopPropagation()}}},setPosition:function(b,g){var d=this.element;if(b==undefined||b==NaN){b=this.min}if(b>=this.max){b=this.max}if(b<this.min){b=this.min}if(this.value!==b||g==true){if(b==this.max){var c=new a.Event("complete");this.host.trigger(c)}var f=this.value;if(this._triggervaluechanged){var e=new a.Event("valueChanged");e.previousValue=this.value;e.currentValue=b}this.value=b;this._positionelements();if(this._triggervaluechanged){this.host.trigger(e)}if(this.valueChanged){this.valueChanged({currentValue:this.value,previousvalue:f})}}return b},val:function(b){var c=function(e){for(var d in e){if(e.hasOwnProperty(d)){return false}}if(typeof b=="number"){return false}if(typeof b=="date"){return false}if(typeof b=="boolean"){return false}if(typeof b=="string"){return false}return true};if(c(b)||arguments.length==0){return this.value}else{this.setPosition(b);return b}},_getThumbSize:function(c){var b=this.max-this.min;var d=0;if(b>1){d=(c/(b+c)*c)}else{if(b==1){d=c-1}else{if(b==0){d=c}}}if(this.thumbSize>0){d=this.thumbSize}if(d<this.thumbMinSize){d=this.thumbMinSize}return Math.min(d,c)},_positionelements:function(){var g=this.element;var n=this.areaUp;var e=this.areaDown;var h=this.btnUp;var f=this.btnDown;var o=this.btnThumb;var b=this.scrollWrap;var p=this._height?this._height:this.host.height();var c=this._width?this._width:this.host.width();var l=(!this.vertical)?p:c;if(!this.showButtons){l=0}var m=(!this.vertical)?c:p;this.scrollBarSize=m;var d=this._getThumbSize(m-2*l);d=Math.floor(d);if(d<this.thumbMinSize){d=this.thumbMinSize}if(p==NaN||p<10){p=10}if(c==NaN||c<10){c=10}l+=2;this.btnSize=l;var i=this._btnAndThumbSize;if(!this._btnAndThumbSize){var i=(this.vertical)?2*this.btnSize+o.outerHeight():2*this.btnSize+o.outerWidth();i=Math.round(i)}var k=(m-i)/(this.max-this.min)*(this.value-this.min);if(this.rtl&&!this.vertical){k=(m-i)/(this.max-this.min)*(this.max-this.value-this.min)}k=Math.round(k);if(k<0){k=0}if(this.vertical){var j=m-k-i;if(j<0){j=0}e[0].style.height=j+"px";n[0].style.height=k+"px";this._setElementTopPosition(n,l);this._setElementTopPosition(o,l+k);this._setElementTopPosition(e,l+k+d)}else{n[0].style.width=k+"px";if(m-k-i>=0){e[0].style.width=m-k-i+"px"}else{e[0].style.width="0px"}this._setElementLeftPosition(n,l);this._setElementLeftPosition(o,l+k);this._setElementLeftPosition(e,2+l+k+d)}},_arrange:function(){var m=this;if(m._initialLayout){m._initialLayout=false;return}if(m.min>m.max){var x=m.min;m.min=m.max;m.max=x}if(m.min<0){var k=m.max-m.min;m.min=0;m.max=k}var d=m.element;var g=m.areaUp;var t=m.areaDown;var c=m.btnUp;var l=m.btnDown;var u=m.btnThumb;var p=m.scrollWrap;var n=parseInt(m.element.style.height);var q=parseInt(m.element.style.width);if(m.isPercentage){var n=m.host.height();var q=m.host.width()}if(isNaN(n)){n=0}if(isNaN(q)){q=0}m._width=q;m._height=n;var b=(!m.vertical)?n:q;if(!m.showButtons){b=0}c[0].style.width=b+"px";c[0].style.height=b+"px";l[0].style.width=b+"px";l[0].style.height=b+"px";if(m.vertical){p[0].style.width=q+2+"px"}else{p[0].style.height=n+2+"px"}m._setElementPosition(c,0,0);var s=b+2;if(m.vertical){m._setElementPosition(l,0,n-s)}else{m._setElementPosition(l,q-s,0)}var f=(!m.vertical)?q:n;m.scrollBarSize=f;var h=m._getThumbSize(f-2*s);h=Math.floor(h-2);if(h<m.thumbMinSize){h=m.thumbMinSize}var o=false;if(m.isTouchDevice&&m.touchModeStyle!=false){o=true}if(!m.vertical){u[0].style.width=h+"px";u[0].style.height=n+"px";if(o&&m.thumbTouchSize!==0){u.css({height:m.thumbTouchSize+"px"});u.css("margin-top",(m.host.height()-m.thumbTouchSize)/2)}}else{u[0].style.width=q+"px";u[0].style.height=h+"px";if(o&&m.thumbTouchSize!==0){u.css({width:m.thumbTouchSize+"px"});u.css("margin-left",(m.host.width()-m.thumbTouchSize)/2)}}if(n==NaN||n<10){n=10}if(q==NaN||q<10){q=10}m.btnSize=b;var e=(m.vertical)?2*s+(2+parseInt(u[0].style.height)):2*s+(2+parseInt(u[0].style.width));e=Math.round(e);m._btnAndThumbSize=e;var w=(f-e)/(m.max-m.min)*(m.value-m.min);if(m.rtl&&!m.vertical){w=(f-e)/(m.max-m.min)*(m.max-m.value-m.min)}w=Math.round(w);if(isNaN(w)||w<0||w===-Infinity||w===Infinity){w=0}if(m.vertical){var v=(f-w-e);if(v<0){v=0}t[0].style.height=v+"px";t[0].style.width=q+"px";g[0].style.height=w+"px";g[0].style.width=q+"px";var i=parseInt(m.element.style.height);if(m.isPercentage){i=m.host.height()}u[0].style.visibility="inherit";if(i-3*parseInt(b)<0||i<e){u[0].style.visibility="hidden"}m._setElementPosition(g,0,s);m._setElementPosition(u,0,s+w);m._setElementPosition(t,0,s+w+h)}else{if(w>0){g[0].style.width=w+"px"}if(n>0){g[0].style.height=n+"px"}var j=(f-w-e);if(j<0){j=0}t[0].style.width=j+"px";t[0].style.height=n+"px";var r=parseInt(m.element.style.width);if(m.isPercentage){r=m.host.width()}u[0].style.visibility="inherit";if((r-3*parseInt(b)<0)||(r<e)){u[0].style.visibility="hidden"}m._setElementPosition(g,s,0);m._setElementPosition(u,s+w,0);m._setElementPosition(t,s+w+h,0)}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxPanel","",{});a.extend(a.jqx._jqxPanel.prototype,{defineInstance:function(){var b={width:null,height:null,disabled:false,scrollBarSize:a.jqx.utilities.scrollBarSize,sizeMode:"fixed",autoUpdate:false,autoUpdateInterval:500,touchMode:"auto",horizontalScrollBarMax:null,verticalScrollBarMax:null,touchModeStyle:"auto",rtl:false,events:["layout"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var b=this;if(a.jqx.utilities.scrollBarSize!=15){this.scrollBarSize=a.jqx.utilities.scrollBarSize}this.host.addClass(this.toThemeProperty("jqx-panel"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));var c=a("<div id='panelWrapper' style='overflow: hidden; width: 100%; height: 100%; background-color: transparent; -webkit-appearance: none; outline: none; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div id='panelContent' style='-webkit-appearance: none; -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; height: 100%; outline: none; border: none; padding: 0px; position: absolute; margin: 0px; align:left; valign:top; left: 0px; top: 0px;'/><div id='verticalScrollBar' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'/><div id='horizontalScrollBar' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'/><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'/></div>");if(!this.host.jqxButton){throw new Error("jqxPanel: Missing reference to jqxbuttons.js.")}if(!this.host.jqxScrollBar){throw new Error("jqxPanel: Missing reference to jqxscrollbar.js.")}var d=this.host.children();this._rtl=false;if(d.length>0&&d.css("direction")=="rtl"){this.rtl=true;this._rtl=true}this.host.wrapInner(c);var g=this.host.find("#verticalScrollBar");g[0].id=this.element.id+"verticalScrollBar";this.vScrollBar=g.jqxScrollBar({vertical:true,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme});var f=this.host.find("#horizontalScrollBar");f[0].id=this.element.id+"horizontalScrollBar";this.hScrollBar=f.jqxScrollBar({vertical:false,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme});this.content=this.host.find("#panelContent");this.wrapper=this.host.find("#panelWrapper");this.content.addClass(this.toThemeProperty("jqx-widget-content"));this.wrapper[0].id=this.wrapper[0].id+this.element.id;this.content[0].id=this.content[0].id+this.element.id;this.bottomRight=this.host.find("#bottomRight").addClass(this.toThemeProperty("jqx-panel-bottomright")).addClass(this.toThemeProperty("jqx-scrollbar-state-normal"));this.bottomRight[0].id="bottomRight"+this.element.id;this.vScrollBar.css("visibility","inherit");this.hScrollBar.css("visibility","inherit");this.vScrollInstance=a.data(this.vScrollBar[0],"jqxScrollBar").instance;this.hScrollInstance=a.data(this.hScrollBar[0],"jqxScrollBar").instance;var e=this;this.propertyChangeMap.disabled=function(h,j,i,k){e.vScrollBar.jqxScrollBar({disabled:e.disabled});e.hScrollBar.jqxScrollBar({disabled:e.disabled})};this.vScrollBar.jqxScrollBar({disabled:this.disabled});this.hScrollBar.jqxScrollBar({disabled:this.disabled});this._addHandlers();if(this.width==null){this.width=this.content.width()}if(this.height==null){this.height=this.content.height()}this._arrange();this.contentWidth=e.content[0].scrollWidth;this.contentHeight=e.content[0].scrollHeight;if(this.autoUpdate){e._autoUpdate()}this.propertyChangeMap.autoUpdate=function(h,j,i,k){if(e.autoUpdate){e._autoUpdate()}else{clearInterval(e.autoUpdateId);e.autoUpdateId=null}};this.addHandler(a(window),"unload",function(){if(e.autoUpdateId!=null){clearInterval(e.autoUpdateId);e.autoUpdateId=null;e.destroy()}});this._updateTouchScrolling();this._render()},hiddenParent:function(){return a.jqx.isHidden(this.host)},_updateTouchScrolling:function(){var b=this;if(this.touchMode==true){a.jqx.mobile.setMobileSimulator(this.element)}var c=this.isTouchDevice();if(c){a.jqx.mobile.touchScroll(this.element,b.vScrollInstance.max,function(f,e){if(b.vScrollBar.css("visibility")!="hidden"){var d=b.vScrollInstance.value;b.vScrollInstance.setPosition(d+e)}if(b.hScrollBar.css("visibility")!="hidden"){var d=b.hScrollInstance.value;b.hScrollInstance.setPosition(d+f)}},this.element.id,this.hScrollBar,this.vScrollBar);this._arrange()}this.vScrollBar.jqxScrollBar({touchMode:this.touchMode});this.hScrollBar.jqxScrollBar({touchMode:this.touchMode})},isTouchDevice:function(){var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){b=true}else{if(this.touchMode==false){b=false}}if(b&&this.touchModeStyle!=false){this.scrollBarSize=a.jqx.utilities.touchScrollBarSize}return b},append:function(b){if(b!=null){this.content.append(b);this._arrange()}},setcontent:function(b){this.content[0].innerHTML=b;this._arrange();var c=this;setTimeout(function(){c._arrange()},100)},prepend:function(b){if(b!=null){this.content.prepend(b);this._arrange()}},clearcontent:function(){this.content.text("");this.content.children().remove();this._arrange()},remove:function(b){if(b!=null){a(b).remove();this._arrange()}},_autoUpdate:function(){var b=this;this.autoUpdateId=setInterval(function(){var d=b.content[0].scrollWidth;var c=b.content[0].scrollHeight;var e=false;if(b.contentWidth!=d){b.contentWidth=d;e=true}if(b.contentHeight!=c){b.contentHeight=c;e=true}if(e){b._arrange()}},this.autoUpdateInterval)},_addHandlers:function(){var b=this;this.addHandler(this.vScrollBar,"valueChanged",function(c){b._render(b)});this.addHandler(this.hScrollBar,"valueChanged",function(c){b._render(b)});this.addHandler(this.host,"mousewheel",function(c){b.wheel(c,b)});this.addHandler(this.wrapper,"scroll",function(c){if(b.wrapper[0].scrollTop!=0){b.wrapper[0].scrollTop=0}if(b.wrapper[0].scrollLeft!=0){b.wrapper[0].scrollLeft=0}});this.addHandler(this.host,"mouseleave",function(c){b.focused=false});this.addHandler(this.host,"focus",function(c){b.focused=true});this.addHandler(this.host,"blur",function(c){b.focused=false});this.addHandler(this.host,"mouseenter",function(c){b.focused=true});a.jqx.utilities.resize(this.host,function(){if(a.jqx.isHidden(b.host)){return}b._arrange(false)})},resize:function(c,b){this.width=c;this.height=b;this._arrange(false)},_removeHandlers:function(){var b=this;this.removeHandler(this.vScrollBar,"valueChanged");this.removeHandler(this.hScrollBar,"valueChanged");this.removeHandler(this.host,"mousewheel");this.removeHandler(this.host,"mouseleave");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.wrapper,"scroll");this.removeHandler(a(window),"resize."+this.element.id)},wheel:function(d,c){var e=0;if(d.originalEvent&&a.jqx.browser.msie&&d.originalEvent.wheelDelta){e=d.originalEvent.wheelDelta/120}if(!d){d=window.event}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(!b){if(d.preventDefault){d.preventDefault()}}if(!b){return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},scrollDown:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value+b.largestep<=b.max){b.setPosition(b.value+b.largestep);return true}else{if(b.value+b.largestep!=b.max){b.setPosition(b.max);return true}}return false},scrollUp:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value-b.largestep>=b.min){b.setPosition(b.value-b.largestep);return true}else{if(b.value-b.largestep!=b.min){b.setPosition(b.min);return true}}return false},_handleDelta:function(d){if(this.focused){var c=this.vScrollInstance.value;if(d<0){this.scrollDown()}else{this.scrollUp()}var b=this.vScrollInstance.value;if(c!=b){return false}}return true},_render:function(c){if(c==undefined){c=this}var b=c.vScrollInstance.value;var d=c.hScrollInstance.value;if(this.rtl){if(this.hScrollBar[0].style.visibility!="hidden"){if(this._rtl==false){d=c.hScrollInstance.max-d}else{d=-c.hScrollInstance.value}}}c.content.css({left:-d+"px",top:-b+"px"})},scrollTo:function(c,b){if(c==undefined||b==undefined){return}this.vScrollInstance.setPosition(b);this.hScrollInstance.setPosition(c)},getScrollHeight:function(){return this.vScrollInstance.max},getVScrollPosition:function(){return this.vScrollInstance.value},getScrollWidth:function(){return this.hScrollInstance.max},getHScrollPosition:function(){return this.hScrollInstance.value},_getScrollSize:function(){var b=this.scrollBarSize;if(isNaN(b)){b=parseInt(b);if(isNaN(b)){b="17px"}else{b=b+"px"}}if(this.isTouchDevice()){b=a.jqx.utilities.touchScrollBarSize}b=parseInt(b);return b},_getScrollArea:function(){var c=0;this.content.css("margin-right","0px");this.content.css("max-width","9999999px");if(a.jqx.browser.msie&&a.jqx.browser.version<10){c=parseInt(this.content.css("left"));this.content.css("left",0)}this.content.css("overflow","auto");if(this.rtl){this.content.css("direction","rtl")}var b=parseInt(this.content[0].scrollWidth);a.each(this.content.children(),function(){b=Math.max(b,this.scrollWidth);b=Math.max(b,a(this).outerWidth())});if(a.jqx.browser.msie&&a.jqx.browser.version<10){this.content.css("left",c)}var d=parseInt(this.content[0].scrollHeight);this.content.css("overflow","visible");if(a.jqx.browser.msie&&a.jqx.browser.version<9){var d=parseInt(this.content[0].scrollHeight);switch(this.sizeMode){case"wrap":var d=parseInt(this.content[0].scrollHeight);var b=parseInt(this.content[0].scrollWidth);break;case"horizontalWrap":case"horizontalwrap":break;case"verticalWrap":case"verticalwrap":var d=parseInt(this.content[0].scrollHeight);break}}if(this.rtl){this.content.css("direction","ltr")}return{width:b,height:d}},_arrange:function(h){if(h!==false){if(this.width!=null){this.host.width(this.width)}if(this.height!=null){this.host.height(this.height)}}var b=this._getScrollSize();var d=this.host.width();var l=this.host.height();var e=this._getScrollArea();var c=e.width;var k=e.height;var i=k-parseInt(Math.round(this.host.height()));var g=c-parseInt(Math.round(this.host.width()));if(this.horizontalScrollBarMax!=undefined){g=this.horizontalScrollBarMax}if(this.verticalScrollBarMax!=undefined){i=this.verticalScrollBarMax}var j=function(o,p){var n=5;if(p>n){o.vScrollBar.jqxScrollBar({max:p});o.vScrollBar.css("visibility","inherit")}else{o.vScrollBar.jqxScrollBar("setPosition",0);o.vScrollBar.css("visibility","hidden")}};var m=function(o,n){if(n>0){if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(n-10<=b){o.hScrollBar.css("visibility","hidden");o.hScrollBar.jqxScrollBar("setPosition",0)}else{o.hScrollBar.jqxScrollBar({max:n+4});o.hScrollBar.css("visibility","inherit")}}else{o.hScrollBar.jqxScrollBar({max:n+4});o.hScrollBar.css("visibility","inherit")}}else{o.hScrollBar.css("visibility","hidden");o.hScrollBar.jqxScrollBar("setPosition",0)}};switch(this.sizeMode){case"wrap":this.host.width(c);this.host.height(k);this.vScrollBar.css("visibility","hidden");this.hScrollBar.css("visibility","hidden");return;case"horizontalWrap":case"horizontalwrap":this.host.width(c);this.hScrollBar.css("visibility","hidden");j(this,i);this._arrangeScrollbars(b,c,l);return;case"verticalWrap":case"verticalwrap":this.host.height(k);this.vScrollBar.css("visibility","hidden");m(this,g);this._arrangeScrollbars(b,d,l);return}j(this,i);var f=2;if(this.vScrollBar.css("visibility")!="hidden"){if(this.horizontalScrollBarMax==undefined){if((!this.isTouchDevice()&&g>0)||(g>0)){g+=b+f}}}m(this,g);if(this.hScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar({max:i+b+f})}this._arrangeScrollbars(b,d,l)},_arrangeScrollbars:function(b,d,j){var i=this.vScrollBar[0].style.visibility!="hidden";var f=this.hScrollBar[0].style.visibility!="hidden";var h=2;var g=2;this.hScrollBar.height(b);this.hScrollBar.css({top:j-b-h-g+"px",left:"0px"});this.hScrollBar.width(d-h+"px");this.vScrollBar.width(b);this.vScrollBar.height(parseInt(j)-h+"px");this.vScrollBar.css({left:parseInt(d)-parseInt(b)-h-g+"px",top:"0px"});if(this.rtl){this.vScrollBar.css({left:"0px"});var c=i?parseInt(b)+"px":0;if(this.content.children().css("direction")!="rtl"){var e=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){e=true}if(!e){this.content.css("padding-left",c)}}}else{if(this.vScrollBar.css("visibility")!="hidden"){this.content.css("max-width",this.host.width()-this.vScrollBar.outerWidth())}}if((this.vScrollBar.css("visibility")!="hidden")&&(this.hScrollBar.css("visibility")!="hidden")){this.bottomRight.css("visibility","inherit");this.bottomRight.css({left:1+parseInt(this.vScrollBar.css("left")),top:1+parseInt(this.hScrollBar.css("top"))});this.bottomRight.width(parseInt(b)+3);this.bottomRight.height(parseInt(b)+3);if(this.rtl){this.bottomRight.css({left:"0px"});this.hScrollBar.css({left:b+g+"px"})}this.hScrollBar.width(d-(1*b)-h-g+"px");this.vScrollBar.height(parseInt(j)-h-b-g+"px")}else{this.bottomRight.css("visibility","hidden")}this.hScrollInstance.refresh();this.vScrollInstance.refresh()},destroy:function(){clearInterval(this.autoUpdateId);this.autoUpdateId=null;this.autoUpdate=false;a.jqx.utilities.resize(this.host,null,true);this._removeHandlers();this.removeHandler(a(window),"unload");this.vScrollBar.jqxScrollBar("destroy");this.hScrollBar.jqxScrollBar("destroy");this.host.remove()},_raiseevent:function(g,d,f){if(this.isInitialized!=undefined&&this.isInitialized==true){var c=this.events[g];var e=new a.Event(c);e.previousValue=d;e.currentValue=f;e.owner=this;var b=this.host.trigger(e);return b}},beginUpdateLayout:function(){this.updating=true},resumeUpdateLayout:function(){this.updating=false;this.vScrollInstance.value=0;this.hScrollInstance.value=0;this._arrange();this._render()},propertyChangedHandler:function(c,d,b,e){if(!c.isInitialized){return}if(d=="rtl"){this.vScrollBar.jqxScrollBar({rtl:e});this.hScrollBar.jqxScrollBar({rtl:e});c._arrange()}if(!c.updating){if(d=="scrollBarSize"||d=="width"||d=="height"){if(b!=e){c._arrange()}}}if(d=="touchMode"){if(e!="auto"){c._updateTouchScrolling()}}if(d=="theme"){c.host.removeClass();c.host.addClass(this.toThemeProperty("jqx-panel"));c.host.addClass(this.toThemeProperty("jqx-widget"));c.host.addClass(this.toThemeProperty("jqx-widget-content"));c.host.addClass(this.toThemeProperty("jqx-rc-all"));c.vScrollBar.jqxScrollBar({theme:this.theme});c.hScrollBar.jqxScrollBar({theme:this.theme});c.bottomRight.removeClass();c.bottomRight.addClass(this.toThemeProperty("jqx-panel-bottomright"));c.bottomRight.addClass(this.toThemeProperty("jqx-scrollbar-state-normal"));c.content.removeClass();c.content.addClass(this.toThemeProperty("jqx-widget-content"))}},invalidate:function(){if(a.jqx.isHidden(this.host)){return}this.refresh()},refresh:function(b){this._arrange()}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxTooltip","",{});a.extend(a.jqx._jqxTooltip.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",position:"default",enableBrowserBoundsDetection:true,content:"",left:0,top:0,absolutePositionX:0,absolutePositionY:0,trigger:"hover",showDelay:100,autoHide:true,autoHideDelay:3000,closeOnClick:true,disabled:false,animationShowDelay:200,animationHideDelay:"fast",showArrow:true,name:"",opacity:0.9,rtl:false,_isOpen:false,opening:null,value:null,_eventsMap:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend")},events:["open","close","opening","closing"]};a.extend(true,this,b);return b},createInstance:function(d){this._isTouchDevice=a.jqx.mobile.isTouchDevice();var f=a.data(document.body,"_tooltipIDArray"+this.name);if(!f){this.ID_Array=new Array();a.data(document.body,"_tooltipIDArray"+this.name,this.ID_Array)}else{this.ID_Array=f}var e=this._generatekey();var c="jqxtooltip"+e;this.ID_Array.push({tooltipID:c,tooltipHost:this.host});var b=a('<div id="'+c+'"><div id ="'+c+'Main"><div id="'+c+'Text"></div></div><div id="'+c+'Arrow"></div></div>');if(a.jqx.browser.msie){b.addClass(this.toThemeProperty("jqx-noshadow"))}a("body").append(b);this._setTheme();var g=a("#"+c);g.css("visibility","hidden");g.css("display","none");g.css("opacity",0);g.css("z-index",99999);if(this.showArrow==false){a("#"+c+"Arrow").css("visibility","hidden");a("#"+c+"Arrow").css("display","none")}this._setSize();this._setContent();if(this.disabled==false){this._trigger();if(this.closeOnClick==true){this._clickHide()}}},open:function(){if(arguments){if(arguments.length){if(arguments.length==2){this.position="absolute";this.left=arguments[0];this.top=arguments[1];this.absolutePositionX=arguments[0];this.absolutePositionY=arguments[1]}}}if(this.disabled==false&&this._id()!="removed"){if(this.position=="mouse"||this.position=="mouseenter"){var b=this.position;this.position="default";this._raiseEvent("2");this._setPosition();this._animateShow();this.position=b}else{this._raiseEvent("2");this._setPosition();this._animateShow()}}},close:function(c){var e=this;if(typeof(c)==="object"&&a.isEmptyObject(c)){c=this.animationHideDelay}var b=new Number(a(this._id()).css("opacity")).toFixed(2);var d=function(){clearTimeout(e.autoHideTimeout);e._raiseEvent("3");a(e._id()).animate({opacity:0},c,function(){a(e._id()).css("visibility","hidden");a(e._id()).css("display","none");e._raiseEvent("1");e._isOpen=false})};if(this._isOpen==false&&b!=0){a(e._id()).stop();d();return}if(this._isOpen==true&&b==this.opacity){d()}},destroy:function(){var c=this.ID_Array.length;this._removeHandlers();a(this._id()).remove();for(var b=0;b<c;b++){if(this.ID_Array[b].tooltipHost===this.host){this.ID_Array.splice(b,1);break}}a(this.element).removeData("jqxTooltip")},refresh:function(d){if(d==true){return}if(this.rtl){a(this._id()+"Text").addClass(this.toThemeProperty("jqx-rtl"));a(this._id()+"Text").css({direction:"rtl"})}var c=this;var b=new Number(a(this._id()).css("opacity")).toFixed(2);if(this._id()!="removed"){if(this.disabled==true&&this._isOpen==true&&b==this.opacity){clearTimeout(this.autoHideTimeout);a(this._id()).stop();a(this._id()).animate({opacity:0},this.animationHideDelay,function(){a(c._id()).css("visibility","hidden");a(c._id()).css("display","none");c._isOpen=false})}this._setTheme();this._setContent();this._setSize();if(this.position!="mouse"&&this.position!="mouseenter"){this._setPosition()}this._removeHandlers();if(this.disabled==false){this._trigger();if(this.closeOnClick==true){this._clickHide()}}}},propertyChangedHandler:function(b,c,e,d){if(c=="content"){this.changeContentFlag=true}b.refresh()},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},_generatekey:function(){var b=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(b()+b())},_id:function(){var b,c;var e=this.ID_Array.length;for(var d=0;d<e;d++){if(this.ID_Array[d].tooltipHost===this.host){b=this.ID_Array[d].tooltipID;c="#"+b;break}}if(c==undefined){c="removed"}return c},_setPosition:function(f){if((this._isOpen==false&&a(this._id()).css("opacity")==0)||this.changeContentFlag==true){if(!f&&(this.position=="mouse"||this.position=="mouseenter")){return}a(this._id()).css("display","block");this.changeContentFlag=false;this.documentTop=a(document).scrollTop();this.documentLeft=a(document).scrollLeft();this.windowWidth=a(window).width();this.windowHeight=a(window).height();this.host_width=this.host.outerWidth();this.host_height=this.host.outerHeight();this.tooltip_width=a(this._id()).width();this.tooltip_height=a(this._id()).height();this.host_offset=this.host.offset();this.tooltip_offset=a(this._id()).offset();this.default_offset=30;this.offset_horizontal=parseInt(this.left);this.offset_vertical=parseInt(this.top);var d=a(this._id()+"Arrow");var g=a(this._id()+"Main");this.arrow_size=5;this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset;switch(this.position){case"top":this.tooltip_offset.left=this.host_offset.left+this.host_width/2-this.tooltip_width/2+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"bottom":this.tooltip_offset.left=this.host_offset.left+this.host_width/2-this.tooltip_width/2+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"left":this.tooltip_offset.left=-1+this.host_offset.left-this.tooltip_width-this.arrow_size+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height/2-this.tooltip_height/2+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px 0px "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=1+this.tooltip_main_offset.left+g.width();this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"right":this.tooltip_offset.left=this.host_offset.left+this.host_width+this.arrow_size+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height/2-this.tooltip_height/2+this.offset_vertical;this.tooltip_offset.top=parseInt(this.tooltip_offset.top);this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px "+this.arrow_size+"px 0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=(this.tooltip_main_offset.left-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"top-left":this.tooltip_offset.left=this.host_offset.left+this.default_offset-this.tooltip_width+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+g.width()-6*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"bottom-left":this.tooltip_offset.left=this.host_offset.left+this.default_offset-this.tooltip_width+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+g.width()-6*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"top-right":this.tooltip_offset.left=this.host_offset.left+this.host_width-this.default_offset+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+4*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"bottom-right":this.tooltip_offset.left=this.host_offset.left+this.host_width-this.default_offset+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+4*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"absolute":a(this._id()).offset({top:this.absolutePositionY,left:this.absolutePositionX});d.css({"border-width":"0px"});break;case"mouse":var e=this;if(this._isTouchDevice==false){switch(this.trigger){case"hover":if(this.mouseHoverTimeout){clearTimeout(this.mouseHoverTimeout)}this.mouseHoverTimeout=setTimeout(function(){e.tooltip_offset.left=f.pageX+10;e.tooltip_offset.top=f.pageY+10;e._detectBrowserBounds()},this.showDelay);break;case"click":this.tooltip_offset.left=f.pageX+10;this.tooltip_offset.top=f.pageY+10;this._detectBrowserBounds();break}}else{var b=f.pageX;var i=f.pageY;if(f.originalEvent){var h=null;if(f.originalEvent.touches&&f.originalEvent.touches.length){var h=f.originalEvent.touches[0]}else{if(f.originalEvent.changedTouches&&f.originalEvent.changedTouches.length){var h=f.originalEvent.changedTouches[0]}}if(h!=undefined){b=h.pageX;i=h.pageY}}this.tooltip_offset.left=b+10;this.tooltip_offset.top=i+10;this._detectBrowserBounds()}d.css({"border-width":"0px"});break;case"mouseenter":var c={top:f.pageY,left:f.pageX};if((c.top<(this.host_offset.top+10))&&(c.top>(this.host_offset.top-10))){this.tooltip_offset.left=c.left-this.tooltip_width/2;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}else{if((c.top<((this.host_offset.top+this.host_height)+10))&&(c.top>((this.host_offset.top+this.host_height)-10))){this.tooltip_offset.left=c.left-this.tooltip_width/2;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}else{if((c.left<(this.host_offset.left+10))&&(c.left>(this.host_offset.left-10))){this.tooltip_offset.left=this.host_offset.left-this.tooltip_width-this.arrow_size;this.tooltip_offset.top=c.top-this.tooltip_height/2;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px 0px "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+g.width();this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}else{if((c.left<(this.host_offset.left+this.host_width+10))&&(c.left>(this.host_offset.left+this.host_width-10))){this.tooltip_offset.left=this.host_offset.left+this.host_width+this.arrow_size;this.tooltip_offset.top=c.top-this.tooltip_height/2;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px "+this.arrow_size+"px 0px"});this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=(this.tooltip_main_offset.left-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}}}}break;case"default":this.tooltip_offset.left=this.host_offset.left+this.host_width-this.default_offset;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+4*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break}}},_setContent:function(){a(this._id()+"Text").html(this.content)},opened:function(){return this._isOpen&&this.host.css("display")=="block"&&this.host.css("visibility")=="visible"},_animateShow:function(){this._closeAll();clearTimeout(this.autoHideTimeout);var b=new Number(a(this._id()).css("opacity")).toFixed(2);if(this._isOpen==false&&b==0){var c=this;var e=a(this._id());e.css("visibility","visible");e.css("display","block");e.stop();e.css("opacity",0);if(this.opening){var d=this.opening(this);if(d===false){return}}e.animate({opacity:this.opacity},this.animationShowDelay,function(){c._raiseEvent("0");c._isOpen=true;var f=a.data(document.body,"_openedTooltip"+c.name);c.openedTooltip=c;a.data(document.body,"_openedTooltip"+c.name,c);if(c.autoHideTimeout){clearTimeout(c.autoHideTimeout)}if(c.autoHideDelay>0&&c.autoHide===true){c.autoHideTimeout=setTimeout(function(){c._autoHide()},c.autoHideDelay)}})}},_trigger:function(){if(this._id()!="removed"){this._enterFlag;this._leaveFlag;var b=this;if(this._isTouchDevice==false){switch(this.trigger){case"hover":if(this.position=="mouse"){this.addHandler(this.host,"mousemove.tooltip",function(c){if(b._enterFlag==1){b._raiseEvent("2");b._setPosition(c);clearTimeout(b.hoverShowTimeout);b.hoverShowTimeout=setTimeout(function(){b._animateShow();b._enterFlag=0},b.showDelay)}});this.addHandler(this.host,"mouseenter.tooltip",function(){if(b._leaveFlag!=0){b._enterFlag=1}});this.addHandler(this.host,"mouseleave.tooltip",function(e){b._leaveFlag=1;clearTimeout(b.hoverShowTimeout);var f=a(b._id()).offset();var d=a(b._id()).width();var c=a(b._id()).height();if(parseInt(e.pageX)<parseInt(f.left)||parseInt(e.pageX)>parseInt(f.left)+d){b.close()}if(parseInt(e.pageY)<parseInt(f.top)||parseInt(e.pageY)>parseInt(f.top)+c){b.close()}});this.addHandler(a(this._id()),"mouseleave.tooltip",function(c){b._checkBoundariesAuto(c);if(b._clickFlag!=0&&b._autoFlag!=0){b._leaveFlag=0}else{b._leaveFlag=1;b.close()}})}else{this.addHandler(this.host,"mouseenter.tooltip",function(c){clearTimeout(b.hoverShowTimeout);b.hoverShowTimeout=setTimeout(function(){b._raiseEvent("2");b._setPosition(c);b._animateShow()},b.showDelay)});this.addHandler(this.host,"mouseleave.tooltip",function(f){b._leaveFlag=1;clearTimeout(b.hoverShowTimeout);if(b.autoHide){var d=f.pageX;var j=f.pageY;var g=a(b._id()).offset();var i=g.left;var h=g.top;var e=a(b._id()).width();var c=a(b._id()).height();if(parseInt(d)<parseInt(i)||parseInt(d)>parseInt(i)+e||parseInt(j)<parseInt(h)||parseInt(j)>parseInt(h)+c){b.close()}}});this.addHandler(a(this._id()),"mouseleave.tooltip",function(c){b._checkBoundariesAuto(c);if(b._clickFlag!=0&&b._autoFlag!=0){b._leaveFlag=0}else{b._leaveFlag=1;if(b.autoHide){b.close()}}})}break;case"click":this.addHandler(this.host,"click.tooltip",function(c){if(b.position=="mouseenter"){b.position="mouse"}b._raiseEvent("2");b._setPosition(c);b._animateShow()});break;case"none":break}}else{if(this.trigger!="none"){this.addHandler(this.host,"touchstart.tooltip",function(c){if(b.position=="mouseenter"){b.position="mouse"}b._raiseEvent("2");b._setPosition(c);b._animateShow()})}}}},_autoHide:function(){var c=this;var b=new Number(a(this._id()).css("opacity")).toFixed(2);if(this.autoHide==true&&this._isOpen==true&&b>=this.opacity){c._raiseEvent("3");a(c._id()).animate({opacity:0},c.animationHideDelay,function(){a(c._id()).css("visibility","hidden");a(c._id()).css("display","none");c._raiseEvent("1");c._isOpen=false})}},_clickHide:function(){var b=this;this.addHandler(a(this._id()),"click.tooltip",function(c){b._checkBoundariesClick(c);b.close()})},_setSize:function(){a(this._id()).css({width:this.width,height:this.height})},resize:function(){this._setSize()},_setTheme:function(){var e=this._id();var d=a(e+"Main");var c=a(e+"Text");var b=a(e+"Arrow");d.addClass(this.toThemeProperty("jqx-widget"));c.addClass(this.toThemeProperty("jqx-widget"));b.addClass(this.toThemeProperty("jqx-widget"));d.addClass(this.toThemeProperty("jqx-fill-state-normal"));c.addClass(this.toThemeProperty("jqx-fill-state-normal"));b.addClass(this.toThemeProperty("jqx-fill-state-normal"));a(e).addClass(this.toThemeProperty("jqx-tooltip"));a(e).addClass(this.toThemeProperty("jqx-popup"));d.addClass(this.toThemeProperty("jqx-tooltip-main"));c.addClass(this.toThemeProperty("jqx-tooltip-text"));b.addClass(this.toThemeProperty("jqx-tooltip-arrow"))},_initialPosition:function(){var b=this.position;this.position="default";this._setPosition();this.position=b},_detectBrowserBounds:function(){var b=this._id();if(this.enableBrowserBoundsDetection){if(this.tooltip_offset.top<this.documentTop&&this.tooltip_offset.left<0){a(b).offset({top:this.documentTop,left:this.documentLeft})}else{if(this.tooltip_offset.top<this.documentTop&&(this.tooltip_offset.left+this.tooltip_width)>this.windowWidth+this.documentLeft){a(b).offset({top:this.documentTop,left:(this.windowWidth+this.documentLeft-this.tooltip_width)})}else{if(this.tooltip_offset.top<this.documentTop){a(b).offset({top:this.documentTop,left:this.tooltip_offset.left})}else{if((this.tooltip_offset.top+this.tooltip_height)>(this.windowHeight+this.documentTop)&&this.tooltip_offset.left<0){a(b).offset({top:(this.windowHeight+this.documentTop-this.tooltip_height),left:this.documentLeft})}else{if((this.tooltip_offset.top+this.tooltip_height)>(this.windowHeight+this.documentTop)&&(this.tooltip_offset.left+this.tooltip_width)>this.windowWidth+this.documentLeft){a(b).offset({top:(this.windowHeight+this.documentTop-this.tooltip_height),left:(this.windowWidth+this.documentLeft-this.tooltip_width)})}else{if((this.tooltip_offset.top+this.tooltip_height)>(this.windowHeight+this.documentTop)){a(b).offset({top:(this.windowHeight+this.documentTop-this.tooltip_height),left:this.tooltip_offset.left})}else{if(this.tooltip_offset.left<0){a(b).offset({top:this.tooltip_offset.top,left:this.documentLeft})}else{if((this.tooltip_offset.left+this.tooltip_width)>this.windowWidth+this.documentLeft){a(b).offset({top:this.tooltip_offset.top,left:(this.windowWidth+this.documentLeft-this.tooltip_width)})}else{a(b).offset({top:this.tooltip_offset.top,left:this.tooltip_offset.left})}}}}}}}}}else{a(b).offset({top:this.tooltip_offset.top,left:this.tooltip_offset.left})}},_checkBoundaries:function(b){if(b.pageX>=this.host_offset.left&&b.pageX<=(this.host_offset.left+this.host_width)&&b.pageY>=this.host_offset.top&&b.pageY<=(this.host_offset.top+this.host_height)){return true}else{return false}},_checkBoundariesClick:function(b){if(this._checkBoundaries(b)){this._clickFlag=1}else{this._clickFlag=0}},_checkBoundariesAuto:function(b){if(this._checkBoundaries(b)){this._autoFlag=1}else{this._autoFlag=0}},_removeHandlers:function(){this.removeHandler(this.host,"mouseenter.tooltip");this.removeHandler(this.host,"mousemove.tooltip");this.removeHandler(this.host,"mouseleave.tooltip");this.removeHandler(this.host,"click.tooltip");this.removeHandler(this.host,"touchstart.tooltip");this.removeHandler(a(this._id()),"click.tooltip");this.removeHandler(a(this._id()),"mouseleave.tooltip")},_closeAll:function(){var d=this.ID_Array.length;for(var c=0;c<d;c++){var b="#"+this.ID_Array[c].tooltipID;if(b!=this._id()){a(b).css({opacity:0,visibility:"hidden",display:"none"});this._isOpen=false}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxCalendar","",{});a.extend(a.jqx._jqxCalendar.prototype,{defineInstance:function(){var b={disabled:false,restrictedDates:new Array(),multipleMonthRows:1,multipleMonthColumns:1,minDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),maxDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),min:new Date(1900,0,1),max:new Date(2100,0,1),navigationDelay:400,stepMonths:1,width:null,height:null,value:a.jqx._jqxDateTimeInput.getDateTime(new Date()),firstDayOfWeek:0,showWeekNumbers:false,showDayNames:true,enableWeekend:false,enableOtherMonthDays:true,showOtherMonthDays:true,rowHeaderWidth:25,columnHeaderHeight:20,titleHeight:25,dayNameFormat:"firstTwoLetters",monthNameFormat:"default",titleFormat:["MMMM yyyy","yyyy","yyyy","yyyy"],enableViews:true,readOnly:false,culture:"default",enableFastNavigation:true,enableHover:true,enableAutoNavigation:true,enableTooltips:false,backText:"Back",forwardText:"Forward",specialDates:new Array(),keyboardNavigation:true,selectionMode:"default",selectableDays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],todayString:"Today",clearString:"Clear",showFooter:false,selection:{from:null,to:null},canRender:true,_checkForHiddenParent:true,height:null,rtl:false,view:"month",views:["month","year","decade"],changing:null,change:null,localization:{backString:"Back",forwardString:"Forward",todayString:"Today",clearString:"Clear",calendar:{name:"Gregorian_USEnglish","/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss"}}},events:["backButtonClick","nextButtonClick","valuechanged","cellMouseDown","cellMouseUp","cellSelected","cellUnselected","change","viewChange"]};a.extend(true,this,b);this.minDate._setYear(1900);this.minDate._setMonth(1);this.minDate._setDay(1);this.minDate._setHours(0);this.minDate._setMinutes(0);this.minDate._setSeconds(0);this.minDate._setMilliseconds(0);this.maxDate._setYear(2100);this.maxDate._setMonth(1);this.maxDate._setDay(1);this.maxDate._setHours(0);this.maxDate._setMinutes(0);this.maxDate._setSeconds(0);this.maxDate._setMilliseconds(0);this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0);return b},createInstance:function(e){this.setCalendarSize();if(this.element.id===""){this.element.id=a.jqx.utilities.createId()}if(a.type(this.value)=="date"){this.value=a.jqx._jqxDateTimeInput.getDateTime(this.value)}this.element.innerHTML="";this.host.attr("data-role","calendar");var i=this.element.id;var h=this;this.propertyChangeMap.width=function(j,l,k,m){h.setCalendarSize()};this.propertyChangeMap.height=function(j,l,k,m){h.setCalendarSize()};if(a.global){a.global.preferCulture(this.culture)}if(this.culture!="default"){if(a.global){a.global.preferCulture(this.culture);this.localization.calendar=a.global.culture.calendar}else{if(Globalize){var c=Globalize.culture(this.culture);this.localization.calendar=c.calendar}}this.firstDayOfWeek=this.localization.calendar.firstDay}if(this.localization.backString!="Back"){this.backText=this.localization.backString}if(this.localization.forwardString!="Forward"){this.forwardText=this.localization.forwardString}if(this.localization.todayString!="Today"&&this.localization.todayString){this.todayString=this.localization.todayString}if(this.localization.clearString!="Clear"&&this.localization.clearString){this.clearString=this.localization.clearString}if(this.localization.calendar&&this.localization.calendar.firstDay!=undefined){this.firstDayOfWeek=this.localization.calendar.firstDay}this.setMaxDate(this.max,false);this.setMinDate(this.min,false);if(!this.host.attr("tabIndex")){this.host.attr("tabIndex",0)}this.host.css("outline","none");this.host.addClass(this.toThemeProperty("jqx-calendar"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this._addInput();if(this.views.indexOf("month")==-1){this.view="year"}if(this.views.indexOf("year")==-1&&this.views.indexOf("month")==-1){this.view="decade"}this.addHandler(this.host,"keydown",function(k){var j=true;if(h.keyboardNavigation){if(h._handleKey!=undefined){j=h._handleKey(k);if(!j){if(k.stopPropagation){k.stopPropagation()}if(k.preventDefault){k.preventDefault()}}}}return j});var d=false;var g=this;var b=false;if(h.width!=null&&h.width.toString().indexOf("%")!=-1){b=true}if(h.height!=null&&h.height.toString().indexOf("%")!=-1){b=true}a.jqx.utilities.resize(this.host,function(){var j=g.host.find("#View"+h.element.id);if(!d){d=true;g.render()}else{g.refreshTitle(j)}if(b){if(h.refreshTimer){clearTimeout(h.refreshTimer)}h.refreshTimer=setTimeout(function(){h.refreshControl()},1)}},false,this._checkForHiddenParent);var f="View";this.propertyChangeMap.disabled=function(j,l,k,m){if(m){j.host.addClass(h.toThemeProperty("jqx-fill-state-disabled"))}else{j.host.removeClass(h.toThemeProperty("jqx-fill-state-disabled"))}h.refreshControl()}},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}this.input.val(this.getDate().toString())},setCalendarSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.css("width",this.width)}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.css("height",this.height)}},_getYearAndMonthPart:function(c){if(!c){return new Date(1900,0,1)}var b=new Date(c.getFullYear(),c.getMonth(),1);return b},_handleKey:function(p){if(this.readOnly){return true}var A=p.keyCode;var y=this;var b=this._getSelectedDate();if(b==undefined){if(this.view=="month"&&(A==37||A==38||A==39||A==40)){this.selectedDate=new Date(this.value.year,this.value.month-1,1);this._selectDate(this.selectedDate,"key");b=this.selectedDate}else{return true}}if(p.altKey){return true}if(this._animating){return false}if(this.view!="month"&&A==13){var d=this._getSelectedCell();this._setDateAndSwitchViews(d,p,"keyboard")}if(this.view=="year"){var w=b.getMonth();var j=this._getYearAndMonthPart(this.getMinDate());var m=this._getYearAndMonthPart(this.getMaxDate());switch(A){case 37:if(w==0){var h=new Date(b.getFullYear()-1,11,1);if(h>=j){this.selectedDate=h;this.navigateBackward()}else{if(this.selectedDate!=j){this.selectedDate=j;this.navigateBackward()}}}else{var h=new Date(b.getFullYear(),w-1,1);if(h>=j){this._selectDate(h,"key")}}return false;case 38:var h=new Date(b.getFullYear(),w-4,1);if(h<j){h=j}if(w-4<0){this.selectedDate=h;this.navigateBackward()}else{this._selectDate(h,"key")}return false;case 40:var h=new Date(b.getFullYear(),w+4,1);if(h>m){h=m}if(w+4>11){this.selectedDate=h;this.navigateForward()}else{this._selectDate(h,"key")}return false;case 39:if(w==11){var h=new Date(b.getFullYear()+1,0,1);if(h<=m){this.selectedDate=h;this.navigateForward()}else{if(this.selectedDate!=m){this.selectedDate=m;this.navigateForward()}}}else{var h=new Date(b.getFullYear(),w+1,1);if(h<=m){this._selectDate(h,"key")}}return false}return true}if(this.view=="decade"){var o=this._renderStartDate.getFullYear();var k=this._renderEndDate.getFullYear();var n=b.getFullYear();var v=this.getMinDate().getFullYear();var c=this.getMaxDate().getFullYear();switch(A){case 37:if(n-1>=v){if(n<=o){this.selectedDate=new Date(n-1,b.getMonth(),1);this.navigateBackward()}else{this._selectDate(new Date(n-1,b.getMonth(),1),"key")}}return false;case 38:var x=n-4;if(n-4<v){x=v}if(x<o){this.selectedDate=new Date(x,b.getMonth(),1);this.navigateBackward()}else{this._selectDate(new Date(x,b.getMonth(),1),"key")}return false;case 40:var x=n+4;if(x>c){x=c}if(x>k){this.selectedDate=new Date(x,b.getMonth(),1);this.navigateForward()}else{this._selectDate(new Date(x,b.getMonth(),1),"key")}return false;case 39:if(n+1<=c){if(n==k){this.selectedDate=new Date(n+1,b.getMonth(),1);this.navigateForward()}else{this._selectDate(new Date(n+1,b.getMonth(),1),"key")}}return false}return true}var u=new a.jqx._jqxDateTimeInput.getDateTime(b);var f=this.getViewStart();var e=this.getViewEnd();var t=u;var s=a.data(this.element,"View"+this.element.id);if(s==undefined||s==null){return true}if(A==36){u._setDay(1);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");return false}if(A==35){var r=this.value._daysInMonth(this.value.year,this.value.month);u._setDay(r);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");return false}var g=1;if(p.ctrlKey){g=12}if(A==34){var z=this.navigateForward(g);if(z){u._addMonths(g);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key")}return false}if(A==33){var z=this.navigateBackward(g);if(z){u._addMonths(-g);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key")}return false}if(A==38){u._addDays(-7);if(u.dateTime<this.getMinDate()){return false}if(u.dateTime<f){var z=this.navigateBackward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l<=u.dateTime){this.value.day=l.getDate();this.navigateBackward();this._selectDate(u.dateTime,"key");break}}return false}else{if(A==40){u._addDays(7);if(u.dateTime>this.getMaxDate()){return false}if(u.dateTime>e){var z=this.navigateForward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l>=u.dateTime){this.value.day=l.getDate();this.navigateForward();this._selectDate(u.dateTime,"key");break}}return false}}if(A==37){u._addDays(-1);if(u.dateTime<this.getMinDate()){return false}if(u.dateTime<f){var z=this.navigateBackward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l<=u.dateTime){if(u.dateTime<this.getMinDate()||u.dateTime>this.getMaxDate()){return false}if(this._isDisabled(u.dateTime)){return false}this.navigateBackward();this._selectDate(u.dateTime,"key");break}}return false}else{if(A==39){u._addDays(1);if(u.dateTime>this.getMaxDate()){return false}if(u.dateTime>e){var z=this.navigateForward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l>=u.dateTime){if(u.dateTime<this.getMinDate()||u.dateTime>this.getMaxDate()){return false}this.navigateForward();this._selectDate(u.dateTime,"key");break}}return false}}return true},render:function(){if(!this.canRender){return}this.host.children().remove();var c=this._renderSingleCalendar("View"+this.element.id);var b=this;this.host.append(c)},addSpecialDate:function(b,c,d){if(this.multipleMonthRows==1&&this.multipleMonthColumns==1){var e=this.specialDates.length;this.specialDates[e]={Date:b,Class:c,Tooltip:d};this.refreshControl()}},refresh:function(b){this.render()},invalidate:function(){this.refreshControl()},refreshControl:function(){if(this.multipleMonthRows==1&&this.multipleMonthColumns==1){this.refreshSingleCalendar("View"+this.element.id,null)}},getViewStart:function(){var c=this.getVisibleDate();var b=this.getFirstDayOfWeek(c);return b.dateTime},getViewEnd:function(){var c=this.getViewStart();var b=new a.jqx._jqxDateTimeInput.getDateTime(c);b._addDays(41);return b.dateTime},refreshSingleCalendar:function(f,e){if(!this.canRender){return}var h=this.host.find("#"+f);var d=this.getVisibleDate();var b=this.getFirstDayOfWeek(d);this.refreshCalendarCells(h,b,f);this.refreshTitle(h);this.refreshRowHeader(h,f);if(this.selectedDate!=undefined){this._selectDate(this.selectedDate)}var g=this.host.height()-this.titleHeight-this.columnHeaderHeight;if(!this.showDayNames){g=this.host.height()-this.titleHeight}if(this.showFooter){g-=20}var c=h.find("#cellsTable"+f);var i=h.find("#calendarRowHeader"+f);c.height(g);i.height(g)},refreshRowHeader:function(s,m){if(!this.showWeekNumbers){return}var c=this.getVisibleDate();var h=this.getFirstDayOfWeek(c);var n=h.dayOfWeek;var t=this.getWeekOfYear(h);var f=new a.jqx._jqxDateTimeInput.getDateTime(new Date(h.dateTime));f._addDays(5);f.dayOfWeek=f.dateTime.getDay();var k=this.getWeekOfYear(f);var e=this.rowHeader.find("table");e.width(this.rowHeaderWidth);var g=h;var q=new Array();for(var p=0;p<6;p++){var o=t.toString();var b=new a.jqx._jqxCalendar.cell(g.dateTime);var l=p+1+this.element.id;var j=a(e[0].rows[p].cells[0]);b.element=j;b.row=p;b.column=0;var d=j.find("#headerCellContent"+l);d.addClass(this.toThemeProperty("jqx-calendar-row-cell"));d[0].innerHTML=t;q[p]=b;g=new a.jqx._jqxDateTimeInput.getDateTime(new Date(g._addWeeks(1)));t=this.getWeekOfYear(g)}var r=a.data(this.element,s[0].id);r.rowCells=q;this._refreshOtherMonthRows(r,m)},_refreshOtherMonthRows:function(f,e){if(this.showOtherMonthDays){return}this._displayLastRow(true,e);this._displayFirstRow(true,e);var d=false;var g=false;for(var c=0;c<f.cells.length;c++){var b=f.cells[c];if(b.isVisible&&c<7){d=true}else{if(b.isVisible&&c>=f.cells.length-7){g=true}}}if(!d){this._displayFirstRow(false,e)}if(!g){this._displayLastRow(false,e)}},_displayLastRow:function(b,c){var g=this.host.find("#"+c);var f=g.find("#calendarRowHeader"+g[0].id).find("table");var d=null;if(this.showWeekNumbers){if(f[0].cells){var d=a(f[0].rows[5])}}var e=a(g.find("#cellTable"+g[0].id)[0].rows[5]);if(b){if(this.showWeekNumbers&&d){d.css("display","table-row")}e.css("display","table-row")}else{if(this.showWeekNumbers&&d){d.css("display","none")}e.css("display","none")}},_displayFirstRow:function(b,c){var e=this.host.find("#"+c);var d=e.find("#calendarRowHeader"+e[0].id).find("table");var f=null;if(this.showWeekNumbers){if(d[0].cells){var f=a(d[0].rows[0])}}var g=a(e.find("#cellTable"+e[0].id)[0].rows[0]);if(b){if(this.showWeekNumbers&&f){f.css("display","table-row")}g.css("display","table-row")}else{if(this.showWeekNumbers&&f){f.css("display","none")}g.css("display","none")}},_renderSingleCalendar:function(p,k){if(!this.canRender){return}var m=this.host.find("#"+p.toString());if(m!=null){m.remove()}var s=a("<div id='"+p.toString()+"'></div>");var b=this.getVisibleDate();var l=this.getFirstDayOfWeek(b);var e=new a.jqx._jqxDateTimeInput.getDateTime(l.dateTime);e._addMonths(1);var r=a.jqx._jqxCalendar.monthView(l,e,null,null,null,s);if(k==undefined||k==null){this.host.append(s);if(this.height!=undefined&&!isNaN(this.height)){s.height(this.height)}else{if(this.height!=null&&this.height.toString().indexOf("px")!=-1){s.height(this.height)}}if(this.width!=undefined&&!isNaN(this.width)){s.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("px")!=-1){s.width(this.width)}}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){s.width("100%")}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){s.height("100%")}}else{k.append(s)}a.data(this.element,p,r);var q=this.host.height()-this.titleHeight-this.columnHeaderHeight;if(!this.showDayNames){q=this.host.height()-this.titleHeight}if(this.showFooter){q-=20}if(this.rowHeaderWidth<0){this.rowHeaderWidth=0}if(this.columnHeaderHeight<0){this.columnHeaderHeight=0}if(this.titleHeight<0){this.titleHeight=0}var g=this.rowHeaderWidth;var j=this.columnHeaderHeight;if(!this.showWeekNumbers){g=0}if(!this.showDayNames){j=0}var u="<div style='height:"+this.titleHeight+"px;'><table role='grid' style='margin: 0px; width: 100%; height: 100%; border-spacing: 0px;' cellspacing='0' cellpadding='0'><tr role='row' id='calendarTitle' width='100%'><td role='gridcell' NOWRAP id='leftNavigationArrow'></td><td aria-live='assertive' aria-atomic='true' role='gridcell' align='center' NOWRAP id='calendarTitleHeader'></td><td role='gridcell' NOWRAP id='rightNavigationArrow'></td></tr></table></div>";var c="<table role='grid' class='"+this.toThemeProperty("jqx-calendar-month")+"' style='margin: 0px; border-spacing: 0px;' cellspacing='0' cellpadding='0'><tr role='row' id='calendarHeader' height='"+j+"'><td role='gridcell' id='selectCell' width='"+g+"'></td><td role='gridcell' colspan='2' style='border: none; padding-left: 2px; padding-right: 2px' id='calendarColumnHeader'></td></tr><tr role='row' id='calendarContent'><td role='gridcell' id='calendarRowHeader' valign='top' height='"+q+"' width='"+g+"'></td><td role='gridcell' valign='top' colspan='2' style='padding-left: 2px; padding-right: 2px' id='cellsTable' height='"+q+"'></td></tr></table>";var o="<div id='footer' style='margin: 0px; display: none; height:"+d+"px;'><table style='width: 100%; height: 100%; border-spacing: 0px;' cellspacing='0' cellpadding='0'><tr id='calendarFooter'><td align='right' id='todayButton'></td><td align='left' colspan='2' id=doneButton></td></tr></table></div>";s[0].innerHTML=u+c+o;this.header=s.find("#calendarHeader");this.header[0].id="calendarHeader"+p;this.header.addClass(this.toThemeProperty("calendar-header"));this.columnHeader=s.find("#calendarColumnHeader");this.columnHeader[0].id="calendarColumnHeader"+p;this.table=s.find("#cellsTable");this.table[0].id="cellsTable"+p;this.rowHeader=s.find("#calendarRowHeader");this.rowHeader[0].id="calendarRowHeader"+p;this.selectCell=s.find("#selectCell");this.selectCell[0].id="selectCell"+p;this.title=s.find("#calendarTitle");this.title[0].id="calendarTitle"+p;this.leftButton=s.find("#leftNavigationArrow");this.leftButton[0].id="leftNavigationArrow"+p;this.titleHeader=s.find("#calendarTitleHeader");this.titleHeader[0].id="calendarTitleHeader"+p;this.rightButton=s.find("#rightNavigationArrow");this.rightButton[0].id="rightNavigationArrow"+p;this.footer=s.find("#calendarFooter");this._footer=s.find("#footer");this._footer[0].id="footer"+p;this.footer[0].id="calendarFooter"+p;this.todayButton=s.find("#todayButton");this.todayButton[0].id="todayButton"+p;this.doneButton=s.find("#doneButton");this.doneButton[0].id="doneButton"+p;this.title.addClass(this.toThemeProperty("jqx-calendar-title-container"));var d=20;if(this.showFooter){this._footer.css("display","block")}s.find("tr").addClass(this.toThemeProperty("jqx-reset"));s.addClass(this.toThemeProperty("jqx-widget-content"));s.addClass(this.toThemeProperty("jqx-calendar-month-container"));this.month=s;this.selectCell.addClass(this.toThemeProperty("jqx-reset"));this.selectCell.addClass(this.toThemeProperty("jqx-calendar-top-left-header"));if(this.showWeekNumbers){this._renderRowHeader(s)}else{this.table[0].colSpan=3;this.columnHeader[0].colSpan=3;this.rowHeader.css("display","none");this.selectCell.css("display","none")}if(this.showFooter){this.footer.height(20);var i=a("<a href='javascript:;'>"+this.todayString+"</a>");i.appendTo(this.todayButton);var h=a("<a href='javascript:;'>"+this.clearString+"</a>");h.appendTo(this.doneButton);h.addClass(this.toThemeProperty("jqx-calendar-footer"));i.addClass(this.toThemeProperty("jqx-calendar-footer"));var n=this;var f="mousedown";if(a.jqx.mobile.isTouchDevice()){f=a.jqx.mobile.getTouchEventName("touchstart")}this.addHandler(i,f,function(){if(n.today){n.today()}else{n.setDate(new Date(),"mouse")}return false});this.addHandler(h,f,function(){if(n.clear){n.clear()}else{n.setDate(null,"mouse")}return false})}if(this.view!="month"){this.header.hide()}if(this.showDayNames&&this.view=="month"){this.renderColumnHeader(s)}this.oldView=this.view;this.renderCalendarCells(s,l,p);if(k==undefined||k==null){this.renderTitle(s)}this._refreshOtherMonthRows(r,p);s.find("tbody").css({border:"none",background:"transparent"});if(this.selectedDate!=undefined){this._selectDate(this.selectedDate)}var t=this;this.addHandler(this.host,"focus",function(){t.focus()});return s},_getTitleFormat:function(){switch(this.view){case"month":return this.titleFormat[0];case"year":return this.titleFormat[1];case"decade":return this.titleFormat[2];case"centuries":return this.titleFormat[3]}},renderTitle:function(t){var k=a("<div role='button' style='float: left;'></div>");var l=a("<div role='button' style='float: right;'></div>");var o=this.title;o.addClass(this.toThemeProperty("jqx-reset"));o.addClass(this.toThemeProperty("jqx-widget-header"));o.addClass(this.toThemeProperty("jqx-calendar-title-header"));var e=o.find("td");if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(e.css("background-color")!="transparent"){var g=o.css("background-color");e.css("background-color",g)}if(e.css("background-image")!="transparent"){var d=o.css("background-image");var p=o.css("background-repeat");var c=o.css("background-position");e.css("background-image",d);e.css("background-repeat",p);e.css("background-position","left center scroll")}}else{e.css("background-color","transparent")}if(this.disabled){o.addClass(this.toThemeProperty("jqx-calendar-title-header-disabled"))}k.addClass(this.toThemeProperty("jqx-calendar-title-navigation"));k.addClass(this.toThemeProperty("jqx-icon-arrow-left"));k.appendTo(this.leftButton);var m=this.leftButton;l.addClass(this.toThemeProperty("jqx-calendar-title-navigation"));l.addClass(this.toThemeProperty("jqx-icon-arrow-right"));l.appendTo(this.rightButton);var b=this.rightButton;if(this.enableTooltips){if(a(m).jqxTooltip){a(m).jqxTooltip({name:this.element.id,position:"mouse",theme:this.theme,content:this.backText});a(b).jqxTooltip({name:this.element.id,position:"mouse",theme:this.theme,content:this.forwardText})}}var n=this.titleHeader;var v=this._format(this.value.dateTime,this._getTitleFormat(),this.culture);if(this.view=="decade"){var q=this._format(this._renderStartDate,this._getTitleFormat(),this.culture);var j=this._format(this._renderEndDate,this._getTitleFormat(),this.culture);v=q+" - "+j}else{if(this.view=="centuries"){var q=this._format(this._renderCenturyStartDate,this._getTitleFormat(),this.culture);var j=this._format(this._renderCenturyEndDate,this._getTitleFormat(),this.culture);v=q+" - "+j}}var f=a("<div style='background: transparent; margin: 0; padding: 0; border: none;'>"+v+"</div>");n.append(f);f.addClass(this.toThemeProperty("jqx-calendar-title-content"));var s=parseInt(k.width());var i=t.width()-2*s;var r=n.find(".jqx-calendar-title-content").width(i);a.data(k,"navigateLeft",this);a.data(l,"navigateRight",this);var h=a.jqx.mobile.isTouchDevice();if(!this.disabled){var u=this;this.addHandler(n,"mousedown",function(A){if(u.enableViews){if(!u._viewAnimating&&!u._animating){var x=u.view;u.oldView=x;switch(u.view){case"month":u.view="year";break;case"year":u.view="decade";break}if(u.views.indexOf("year")==-1&&u.view=="year"){u.view="decade"}if(u.views.indexOf("decade")==-1&&u.view=="decade"){u.view=x}if(x!=u.view){var z="View"+u.element.id;var B=u.host.find("#"+z);var y=u.getVisibleDate();var w=u.getFirstDayOfWeek(y);u.renderCalendarCells(B,w,z,true);u.refreshTitle(B);u._raiseEvent("8")}}return false}});this.addHandler(k,"mousedown",function(x){if(!u._animating){a.data(k,"navigateLeftRepeat",true);var w=a.data(k,"navigateLeft");if(w.enableFastNavigation&&!h){w.startRepeat(w,k,true,u.navigationDelay+200)}w.navigateBackward(1,"arrow");x.stopPropagation();x.preventDefault();return w._raiseEvent(0,x)}else{return false}});this.addHandler(k,"mouseup",function(w){a.data(k,"navigateLeftRepeat",false)});this.addHandler(k,"mouseleave",function(w){a.data(k,"navigateLeftRepeat",false)});this.addHandler(l,"mousedown",function(x){if(!u._animating){a.data(l,"navigateRightRepeat",true);var w=a.data(l,"navigateRight");if(w.enableFastNavigation&&!h){w.startRepeat(w,l,false,u.navigationDelay+200)}w.navigateForward(1,"arrow");x.stopPropagation();x.preventDefault();return w._raiseEvent(1,x)}else{return false}});this.addHandler(l,"mouseup",function(w){a.data(l,"navigateRightRepeat",false)});this.addHandler(l,"mouseleave",function(w){a.data(l,"navigateRightRepeat",false)})}},refreshTitle:function(f){var g=this._format(this.value.dateTime,this._getTitleFormat(),this.culture);if(this.view=="decade"){var d=this._format(this._renderStartDate,this._getTitleFormat(),this.culture);var b=this._format(this._renderEndDate,this._getTitleFormat(),this.culture);g=d+" - "+b}else{if(this.view=="centuries"){var d=this._format(this._renderCenturyStartDate,this._getTitleFormat(),this.culture);var b=this._format(this._renderCenturyEndDate,this._getTitleFormat(),this.culture);g=d+" - "+b}}var e=this.titleHeader;if(this.titleHeader){var c=e.find(".jqx-calendar-title-content");var h=a("<div style='background: transparent; margin: 0; padding: 0; border: none;'>"+g+"</div>");e.append(h);h.addClass(this.toThemeProperty("jqx-calendar-title-content"));if(c!=null){c.remove()}}},startRepeat:function(d,b,f,e){var c=window.setTimeout(function(){var g=a.data(b,"navigateLeftRepeat");if(!f){g=a.data(b,"navigateRightRepeat")}if(g){if(e<25){e=25}if(f){d.navigateBackward(1,"arrow");d.startRepeat(d,b,true,e)}else{d.navigateForward(1,"arrow");c=d.startRepeat(d,b,false,e)}}else{window.clearTimeout(c);return}},e)},navigateForward:function(h,g){if(h==undefined||h==null){h=this.stepMonths}var f=this.value.year;if(this.view=="decade"){f=this._renderStartDate.getFullYear()+12;if(this._renderEndDate.getFullYear()>=this.getMaxDate().getFullYear()){return}}else{if(this.view=="year"){f=this.value.year+1}else{if(this.view=="centuries"){f=this.value.year+100}}}if(this.view!="month"){var b=this.getMaxDate().getFullYear();if(b<f||f>b){f=b}if(this.value.year==f){if(this.view==="decade"){if(this.value.year>this._renderEndDate.getFullYear()){this.value.year=f;this.value.month=1;this.value.day=1}else{return}}else{return}}this.value.year=f;this.value.month=1;this.value.day=1}var c=this.value.day;var i=this.value.month;if(i+h<=12){var e=this.value._daysInMonth(this.value.year,this.value.month+h);if(c>e){c=e}}if(this.view=="month"){var d=new Date(this.value.year,this.value.month-1+h,c);if(g=="arrow"&&this.selectableDays.length==7&&this.selectionMode!="range"){this.selectedDate=new Date(this.value.year,this.value.month-1+h,1)}}else{var d=new Date(this.value.year,this.value.month-1,c)}return this.navigateTo(d)},navigateBackward:function(g,f){if(g==undefined||g==null){g=this.stepMonths}var e=this.value.year;if(this.view=="decade"){e=this._renderStartDate.getFullYear()-12}else{if(this.view=="year"){e=this.value.year-1}else{if(this.view=="centuries"){e=this.value.year-100}}}if(this.view!="month"){var i=this.getMinDate().getFullYear();if(e<i){e=i}if(this.view=="decade"){if(this._renderStartDate){if(this._renderStartDate.getFullYear()==e){return}}}this.value.year=e;this.value.month=1;this.value.day=1}var b=this.value.day;var h=this.value.month;if(h-g>=1){var d=this.value._daysInMonth(this.value.year,this.value.month-g);if(b>d){b=d}}if(this.view=="month"){var c=new Date(this.value.year,this.value.month-1-g,b);if(f=="arrow"&&this.selectableDays.length==7&&this.selectionMode!="range"){this.selectedDate=new Date(this.value.year,this.value.month-1-g,1)}}else{var c=new Date(this.value.year,this.value.month-1,b)}return this.navigateTo(c)},_isRestrictedRange:function(d,c){if(d>c){return true}var b=d;while(b.valueOf()<=c.valueOf()){if(this._isRestrictedDate(b)){return true}b.setDate(b.getDate()+1)}return false},_hasUnrestrictedRanges:function(d,c){if(d>c){return false}var b=d;while(b.valueOf()<=c.valueOf()){if(!this._isRestrictedDate(b)){return true}b.setDate(b.getDate()+1)}return false},_getNextUnrestrictedDay:function(d,c){if(d>c){return null}var b=d;while(b.valueOf()<=c.valueOf()){if(!this._isRestrictedDate(b)){return b}b.setDate(b.getDate()+1)}return null},_isRestrictedDate:function(d){var c=this;if(!a.isArray(c.restrictedDates)){return false}for(var g=0;g<c.restrictedDates.length;g++){var b=c.restrictedDates[g];if(typeof(b)=="object"&&b.from!=undefined&&b.to!=undefined){var f=b.from;var e=b.to;if(d.valueOf()>=f.valueOf()&&d.valueOf()<=e.valueOf()){return true}}else{if(b.getMonth()==d.getMonth()&&b.getDate()==d.getDate()&&b.getFullYear()==d.getFullYear()){return true}}}return false},_isDisabled:function(d){var e=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var b=d.getDay();var c=e[b];if(this.selectableDays.indexOf(c)==-1){return true}if(this._isRestrictedDate(d)){return true}return false},refreshCalendarCells:function(x,f,m){if(this.view=="year"||this.view=="decade"||this.view=="centuries"){this.refreshViews(x,f,m);return}var s=this.table;var q=s.find("#cellTable"+m.toString());var e=f;var c=new Array();var n=0;var u=new a.jqx._jqxDateTimeInput.getDateTime(new Date());for(var p=0;p<6;p++){for(var o=0;o<7;o++){var d=p+1;var h=o;if(this.rtl){h=6-h}var t=h+1;var l="#cell"+d+t+this.element.id;var w=new Date(e.dateTime.getFullYear(),e.dateTime.getMonth(),e.dateTime.getDate());var b=new a.jqx._jqxCalendar.cell(w);var g=a(q[0].rows[p].cells[t-1]);g[0].id=l.substring(1);b.element=g;b.row=p;b.column=o;b.isVisible=true;b.isOtherMonth=false;b.isToday=false;b.isWeekend=false;b.isHighlighted=false;b.isSelected=false;if(e.month!=this.value.month){b.isOtherMonth=true;b.isVisible=this.showOtherMonthDays}if(this._isRestrictedDate(w)){b.isRestricted=true;b.isDisabled=true}if(!b.isDisabled){if(w<this.getMinDate()||w>this.getMaxDate()||this._isDisabled(w)){b.isDisabled=true}}if(e.month==u.month&&e.day==u.day&&e.year==u.year){b.isToday=true}if(e.isWeekend()){b.isWeekend=true}a.data(this.element,"cellContent"+l.substring(1),b);a.data(this.element,l.substring(1),b);c[n]=b;n++;a.jqx.utilities.html(g,e.day);this._applyCellStyle(b,g,g);e=new a.jqx._jqxDateTimeInput.getDateTime(new Date(e._addDays(1)))}}var v=a.data(this.element,x[0].id);if(v!=undefined&&v!=null){v.cells=c}this.renderedCells=c;this._refreshOtherMonthRows(v,m)},_getDecadeAndCenturiesData:function(){var k=new Array();var p=new Array();var c=this.getMaxDate().getFullYear()-this.getMinDate().getFullYear();if(c<12){c=12}var f=this.getMinDate();var b=this.getMaxDate();var l=this.value.dateTime.getFullYear();if(this.view=="decade"){if(l+12>b.getFullYear()){l=b.getFullYear()-11}if(l<f.getFullYear()){l=f.getFullYear()}for(var h=0;h<c;h++){var d=new Date(f.getFullYear()+h,0,1);if(f.getFullYear()<=l&&l<=d.getFullYear()){var g=new Date(d.getFullYear(),d.getMonth(),1);for(var e=0;e<12;e++){var o=new Date(g.getFullYear()+e,this.value.dateTime.getMonth(),this.value.dateTime.getDate());var m=o.getFullYear();if(f.getFullYear()<=m&&m<=b.getFullYear()){k.push(m);p.push(o);if(e==0){this._renderStartDate=o}this._renderEndDate=o}else{k.push(m);p.push(o)}}break}}}else{if(this.view=="centuries"){for(var h=0;h<c;h+=120){var d=new Date(f.getFullYear()+h+120,0,1);if(f.getFullYear()<=l&&l<=d.getFullYear()){var g=new Date(d.getFullYear()-130,d.getMonth(),1);if(g<f){g=f}for(var e=0;e<12;e++){var n=new Date(g.getFullYear()+e*10,g.getMonth(),1);if(g.getFullYear()>=f.getFullYear()&&n.getFullYear()<=b.getFullYear()){k.push("<span style='visibility: hidden;'>-</span>"+n.getFullYear()+"-"+(n.getFullYear()+9));p.push(n);if(e==0){this._renderCenturyStartDate=n}this._renderCenturyEndDate=new Date(n.getFullYear()+9,0,1)}}break}}}}return{years:k,dates:p}},refreshViews:function(A,m,s){var B=this;var c=new Array();var w=A.find("#cellTable"+s.toString());var D=this._getDecadeAndCenturiesData();var l=D.years;var C=D.dates;var t=0;var f=this.getMinDate();var n=this.getMaxDate();for(var v=0;v<3;v++){for(var u=0;u<4;u++){var d=v+1;var q=u;if(this.rtl){q=3-q}var x=q+1;var z=new Date(this.value.dateTime);z.setDate(1);z.setMonth(v*4+q);var b=new a.jqx._jqxCalendar.cell(z);var e=w[0].rows["row"+(1+v)+this.element.id];var o=a(e.cells[u]);b.isSelected=false;b.isVisible=true;b.element=o;b.row=v;b.column=u;b.index=c.length;var p="";if(this.view=="year"){var h=this.localization.calendar.months.names;var g=h[v*4+q];switch(this.monthNameFormat){case"default":g=this.localization.calendar.months.namesAbbr[v*4+q];break;case"shortest":g=this.localization.calendar.months.namesShort[v*4+q];break;case"firstTwoLetters":g=g.substring(0,2);break;case"firstLetter":g=g.substring(0,1);break}p=g}else{if(this.view=="decade"||this.view=="centuries"){p=l[v*4+q];if(undefined==p){p="<span style='cursor: default; visibility: hidden;'>2013</span>"}b.setDate(C[v*4+q])}}var z=b.getDate();if(this.view=="year"){if(z.getMonth()==this.getDate().getMonth()&&z.getFullYear()==this.getDate().getFullYear()){b.isSelected=true}}else{if(z.getFullYear()==this.getDate().getFullYear()){b.isSelected=true}}if(this.view=="year"){if(this._getYearAndMonthPart(z)<this._getYearAndMonthPart(f)){b.isDisabled=true}if(this._getYearAndMonthPart(z)>this._getYearAndMonthPart(n)){b.isDisabled=true}}else{if(z.getFullYear()<f.getFullYear()){b.isDisabled=true}if(z.getFullYear()>n.getFullYear()){b.isDisabled=true}}a.jqx.utilities.html(o,p);c[t]=b;t++}}var y=a.data(this.element,A[0].id);if(y!=undefined&&y!=null){y.cells=c}this.renderedCells=c;this._applyCellStyles()},_createViewClone:function(){var b=this.host.find(".jqx-calendar-month");var c=b.clone();c.css("position","absolute");c.css("top",b.position().top);return c},_addCellsTable:function(h,g){var e=this;var c=this.showFooter?20:0;if(this.view!="month"){g.height(this.host.height()-this.titleHeight)}else{g.height(this.host.height()-this.titleHeight-this.columnHeaderHeight-c)}this._viewAnimating=true;var b=this.host.find(".jqx-calendar-month-container");b.css("position","relative");var d=this.host.find(".jqx-calendar-month");var f=this._createViewClone();b.append(f);if(this.view!="month"){this.header.fadeOut(0);if(this.showWeekNumbers){this.rowHeader.fadeOut(0)}if(this.showFooter){this._footer.fadeOut(0)}}else{this.header.fadeIn(this.navigationDelay+200);if(this.showWeekNumbers){this.rowHeader.fadeIn(this.navigationDelay+200)}if(this.showFooter){this._footer.fadeIn(this.navigationDelay+200)}}h.children().remove();h.append(g);this._animateViews(f,g,function(){if(!e.selectedDate&&e.selectionMode!="range"){e.selectedDate=e.renderedCells[0].getDate()}try{e.renderedCells[0].element.focus();setTimeout(function(){e.renderedCells[0].element.focus()},10)}catch(i){}e._viewAnimating=false});g.addClass(this.toThemeProperty("jqx-calendar-view"))},_animateViews:function(c,b,e){var d=this;d._viewAnimating=true;if(d.oldView==d.view){c.remove();b.fadeOut(0);b.fadeIn(0);e();return}c.fadeOut(this.navigationDelay+100,function(){c.remove()});b.fadeOut(0);b.fadeIn(this.navigationDelay+200,function(){e()})},focus:function(){try{if(this.renderedCells&&this.renderedCells.length>0){var d=this;var c=false;if(!d.selectedDate&&d.selectionMode!="range"){this.setDate(new Date(),"mouse")}this.element.focus()}}catch(b){}},renderViews:function(E,n,v){var F=this;var e=new Array();var z=a("<table role='grid' style='border-color: transparent; width: 100%; height: 100%;' cellspacing='2' cellpadding='0' id=cellTable"+v.toString()+"><tr role='row' id='row1"+this.element.id+"'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row' id='row2"+this.element.id+"'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row' id='row3"+this.element.id+"'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr></table>");var q=this.host.find(".jqx-calendar-month-container");q.css("position","relative");var A=E.find("#cellsTable"+E[0].id);A[0].style.borderColor="transparent";var I=this._getDecadeAndCenturiesData();var m=I.years;var H=I.dates;var w=0;var g=this.getMinDate();var o=this.getMaxDate();var t=new Date(this.value.dateTime);t.setDate(1);for(var y=0;y<3;y++){for(var x=0;x<4;x++){var d=y+1;var u=x;if(this.rtl){u=3-u}var B=u+1;var f=z[0].rows["row"+(1+y)+this.element.id];var D=new Date(t);D.setMonth(y*4+u);var c=new a.jqx._jqxCalendar.cell(D);var p=a(f.cells[x]);c.isVisible=true;c.element=p;c.row=y;c.column=x;c.index=e.length;c.isSelected=false;var s="";if(this.view=="year"){if(D.getMonth()==this.getDate().getMonth()&&D.getFullYear()==this.getDate().getFullYear()){c.isSelected=true}var l=this.localization.calendar.months.names;var h=l[y*4+u];switch(this.monthNameFormat){case"default":h=this.localization.calendar.months.namesAbbr[y*4+u];break;case"shortest":h=this.localization.calendar.months.namesShort[y*4+u];break;case"firstTwoLetters":h=h.substring(0,2);break;case"firstLetter":h=h.substring(0,1);break}s=h}else{if(this.view=="decade"||this.view=="centuries"){s=m[y*4+u];c.setDate(H[y*4+u]);if(c.getDate().getFullYear()==this.getDate().getFullYear()){c.isSelected=true}if(undefined==s){s="<span style='cursor: default; visibility: hidden;'>2013</span>"}}}var D=c.getDate();if(this.view=="year"){var b=new Date(D);b.setDate(1);b.setHours(0,0,0,0);b.setMonth(D.getMonth()+1);b=new Date(b.valueOf()-1);if(this._getYearAndMonthPart(D)<this._getYearAndMonthPart(g)||this._getYearAndMonthPart(D)>this._getYearAndMonthPart(o)||!this._hasUnrestrictedRanges(D,b)){c.isDisabled=true}}else{var G=new Date(D);G.setMonth(0);G.setDate(1);G.setHours(0,0,0,0);G.setFullYear(D.getFullYear()+1);G=new Date(G.valueOf()-1);if(D.getFullYear()<g.getFullYear()||D.getFullYear()>o.getFullYear()||!this._hasUnrestrictedRanges(D,G)){c.isDisabled=true}}a.jqx.utilities.html(p,s);e[w]=c;w++}}a.each(e,function(){var j=this.element;var i=this;if(!F.disabled){F.addHandler(j,"mousedown",function(k){F._setDateAndSwitchViews(i,k,"mouse")});F.addHandler(j,"mouseover",function(r){var k=F.renderedCells[i.index];if(F.view!="centuries"&&k.element.html().toLowerCase().indexOf("span")!=-1){return}k.isHighlighted=true;F._applyCellStyle(k,k.element,k.element)});F.addHandler(j,"mouseout",function(r){var k=F.renderedCells[i.index];if(F.view!="centuries"&&k.element.html().toLowerCase().indexOf("span")!=-1){return}k.isHighlighted=false;F._applyCellStyle(k,k.element,k.element)})}});var C=a.data(this.element,E[0].id);if(C!=undefined&&C!=null){C.cells=e}this.renderedCells=e;this._addCellsTable(A,z);this._applyCellStyles()},_setDateAndSwitchViews:function(m,d,j){if(!this._viewAnimating&&!this._animating){var g=this.getDate();var e=this.renderedCells[m.index].getDate();var k=this.value.dateTime.getDate();var l=new Date(e);if(this.views.indexOf("month")!=-1){l.setDate(k)}else{l.setDate(1);e.setDate(1)}if(l.getMonth()==e.getMonth()){e=l}var i=this.getMinDate();var c=this.getMaxDate();if(this.view=="year"){if(this._getYearAndMonthPart(e)<this._getYearAndMonthPart(i)){return}if(this._getYearAndMonthPart(e)>this._getYearAndMonthPart(c)){return}}else{if(e.getFullYear()<i.getFullYear()){return}if(e.getFullYear()>c.getFullYear()){return}}if(this.selectionMode!="range"){this._selectDate(e)}this.oldView=this.view;switch(this.view){case"year":this.view="month";break;case"decade":this.view="year";break}if(this.views.indexOf("month")==-1){this.view="year"}if(this.views.indexOf("year")==-1){this.view="decade"}if(this.view=="year"){if(this._getYearAndMonthPart(e)<this._getYearAndMonthPart(i)){e=i}if(this._getYearAndMonthPart(e)>this._getYearAndMonthPart(c)){e=c}}else{if(e.getFullYear()<i.getFullYear()){e=i}if(e.getFullYear()>c.getFullYear()){e=c}}if(this.changing&&(this.selectedDate&&(this.selectedDate.getFullYear()!=e.getFullYear()||this.selectedDate.getMonth()!=e.getMonth()||this.selectedDate.getDate()!=e.getDate()))){e=this.selectedDate}this.value._setYear(e.getFullYear());this.value._setDay(e.getDate());this.value._setMonth(e.getMonth()+1);this.value._setDay(e.getDate());var h=this.getVisibleDate();var b=this.getFirstDayOfWeek(h);var f="View"+this.element.id;this.renderCalendarCells(this.month,b,f,true);this.refreshTitle(this.month);if(this.showWeekNumbers){this.refreshRowHeader(this.month,f)}if(this.views.length==3){if(this.view=="month"){if(this.selectionMode!="range"){this._selectDate(this.selectedDate,"view")}else{var n=this;a.each(this.renderedCells,function(r){var o=this;var t=o.getDate();var p=a(o.element);var q=p;if(p.length==0){return false}var s=function(v){if(v==null){return new Date()}var u=new Date();u.setHours(0,0,0,0);u.setFullYear(v.getFullYear(),v.getMonth(),v.getDate());return u};if(!o.isOtherMonth&&s(t).toString()==s(e).toString()){n.value._setMonth(e.getMonth()+1);n.value._setDay(e.getDate());n.value._setYear(e.getFullYear())}o.isSelected=false;o.isDisabled=false;if(s(t)<s(n.selection.from)&&n._clicks==1){o.isDisabled=true}if(n.getMaxDate()<t){o.isDisabled=true}if(n.getMinDate()>t){o.isDisabled=true}if(n._isDisabled(t)){o.isDisabled=true}if(!o.isDisabled){if(s(t)>=s(n.selection.from)&&s(t)<=s(n.selection.to)){o.isSelected=true}}});this._applyCellStyles()}}}if(this.view!="month"){if(this.oldView=="year"||(this.views.indexOf("year")==-1&&this.view=="decade")){if(j!="keyboard"){this._raiseEvent("3")}this._raiseEvent("5",{selectionType:"mouse"})}}this._raiseEvent("8")}},renderCalendarCells:function(D,m,s,q){if(this.view=="year"||this.view=="decade"||this.view=="centuries"){this.renderViews(D,m,s);return}var x=a("<table role='grid' style='width: 100%; height: 100%; border-color: transparent;' cellspacing='2' cellpadding='1' id=cellTable"+s.toString()+"><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr></table>");var y=this.table;y[0].style.borderColor="transparent";if(q==undefined){var g=y.find("#cellTable"+s.toString());if(g!=null){g.remove()}y.append(x)}var l=m;var b=this.showDayNames?1:0;var f=this.showWeekNumbers?1:0;var d=new Array();var t=0;var v=(D.width()-this.rowHeaderWidth-2)/7;if(!this.showWeekNumbers){v=(D.width()-2)/7}v=parseInt(v);var A=new a.jqx._jqxDateTimeInput.getDateTime(new Date());for(var w=0;w<6;w++){for(var u=0;u<7;u++){var e=w+1;var o=u;if(this.rtl){o=6-o}var z=o+1;var p="#cell"+e+z+this.element.id;var C=new Date(l.dateTime.getFullYear(),l.dateTime.getMonth(),l.dateTime.getDate());var c=new a.jqx._jqxCalendar.cell(C);var n=a(x[0].rows[w].cells[z-1]);n[0].id=p.substring(1);c.isVisible=true;c.isDisabled=false;if(l.month!=this.value.month){c.isOtherMonth=true;c.isVisible=this.showOtherMonthDays}if(this._isRestrictedDate(C)){c.isRestricted=true;c.isDisabled=true}if(!c.isDisabled){if(C<this.getMinDate()||C>this.getMaxDate()||this._isDisabled(C)){c.isDisabled=true}}if(l.month==A.month&&l.day==A.day&&l.year==A.year){c.isToday=true}if(l.isWeekend()){c.isWeekend=true}c.element=n;c.row=b;c.column=f;a.jqx.utilities.html(n,l.day);l=new a.jqx._jqxDateTimeInput.getDateTime(new Date(l._addDays(1)));a.data(this.element,"cellContent"+p.substring(1),c);a.data(this.element,""+p.substring(1),c);var E=this;this.addHandler(n,"mousedown",function(I){if(!E.readOnly&&!E.disabled){var H=a(I.target);var j=a.data(E.element,H[0].id);var i=E._raiseEvent(3,I);if(j!=null&&j!=undefined){var r=j.getDate();if(E.getMinDate()<=r&&r<=E.getMaxDate()){if(!j.isDisabled){if(j.isOtherMonth&&E.enableAutoNavigation){if(j.row<2){E.navigateBackward()}else{E.navigateForward()}E._selectDate(j.getDate(),"mouse",I.shiftKey)}else{var F=new Date(E.getDate());E._selectDate(j.getDate(),"mouse",I.shiftKey);E.value._setYear(r.getFullYear());E.value._setDay(1);E.value._setMonth(r.getMonth()+1);E.value._setDay(r.getDate());var G=E.host.find(".jqx-calendar-month");G.stop();G.css("margin-left","0px");var k=E.getDate();E._raiseEvent("2");if(j.isOtherMonth){E._raiseEvent("5",{selectionType:"mouse"})}}}}}return false}});if(!E.disabled){var h=function(F,j){if(!E.readOnly){var r=a(F.target);var i=a.data(E.element,r[0].id);if(i!=null&&i!=undefined){var k=i.getDate();if(E.getMinDate()<=k&&k<=E.getMaxDate()){i.isHighlighted=j;E._applyCellStyle(i,i.element,r)}}}};this.addHandler(n,"mouseenter",function(i){h(i,true);return false});this.addHandler(n,"mouseleave",function(i){h(i,false);return false})}f++;d[t]=c;t++}f=0;b++}var B=a.data(this.element,D[0].id);if(B!=undefined&&B!=null){B.cells=d}this.renderedCells=d;if(q!=undefined){this._addCellsTable(y,x)}this._applyCellStyles();this._refreshOtherMonthRows(B,s)},setMaxDate:function(b,c){if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.maxDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(c!==false){this.render()}},getMaxDate:function(){if(this.maxDate!=null&&this.maxDate!=undefined){return this.maxDate.dateTime}return null},setMinDate:function(b,c){if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.minDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(c!==false){this.render()}},getMinDate:function(){if(this.minDate!=null&&this.minDate!=undefined){return this.minDate.dateTime}return null},navigateTo:function(f,h){if(this.view=="month"){var g=this.getMinDate();var c=new Date(this.getMaxDate().getFullYear(),this.getMaxDate().getMonth()+1,this.getMaxDate().getDate());if((f<this._getYearAndMonthPart(g))||(f>this._getYearAndMonthPart(c))){return false}}else{if(f&&(f.getFullYear()<this.getMinDate().getFullYear()||f.getFullYear()>this.getMaxDate().getFullYear())){return false}}if(f==null){return false}if(h==undefined){var i=this;if(this._animating){return}this._animating=true;var d=this.host.find(".jqx-calendar-month-container");if(this._viewClone){this._viewClone.stop();this._viewClone.remove()}if(this._newViewClone){this._newViewClone.stop();this._newViewClone.remove()}var k=this.host.find(".jqx-calendar-month");k.stop();k.css("margin-left","0px");var b=k.clone();this._viewClone=b;var j=new Date(this.value.dateTime);this.value._setYear(f.getFullYear());this.value._setDay(f.getDate());this.value._setMonth(f.getMonth()+1);i.refreshControl();d.css("position","relative");b.css("position","absolute");b.css("top",k.position().top);d.append(b);if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.month.css("position","relative");this.month.css("overflow","hidden");this.table.css("position","relative");this.table.css("overflow","hidden")}var e=-this.host.width();if(f<j){if(this.view=="month"&&f.getMonth()!=j.getMonth()){e=this.host.width()}else{if(f.getFullYear()!=j.getFullYear()){e=this.host.width()}}}b.animate({marginLeft:parseInt(e)+"px"},this.navigationDelay,function(){b.remove()});var l=k.clone();this._newViewClone=l;l.css("position","absolute");l.css("top",k.position().top);d.append(l);l.css("margin-left",-e);k.css("visibility","hidden");l.animate({marginLeft:"0px"},this.navigationDelay,function(){l.remove();k.css("visibility","inherit");i._animating=false})}else{this.value._setYear(f.getFullYear());this.value._setDay(f.getDate());this.value._setMonth(f.getMonth()+1);var k=this.host.find(".jqx-calendar-month");k.stop();k.css("margin-left","0px");this.refreshControl()}this._raiseEvent("2");this._raiseEvent("8");return true},setDate:function(b){if(b!=null&&typeof(b)=="string"){b=new Date(b)}if(this.canRender==false){this.canRender=true;this.render()}this.navigateTo(b,"api");this._selectDate(b);if(this.selectionMode=="range"){this._selectDate(b,"mouse")}return true},val:function(b){if(arguments.length!=0){if(b==null){this.setDate(null)}if(b instanceof Date){this.setDate(b)}if(typeof(b)=="string"){this.setDate(b)}}return this.getDate()},getDate:function(){if(this.selectedDate==undefined){return new Date()}return this.selectedDate},getValue:function(){if(this.value==undefined){return new Date()}return this.value.dateTime},setRange:function(c,b){if(this.canRender==false){this.canRender=true;this.render()}this.navigateTo(c,"api");this._selectDate(c,"mouse");this._selectDate(b,"mouse")},getRange:function(){return this.selection},_selectDate:function(d,g,c){if(this.selectionMode=="none"){return}if(g==null||g==undefined){g="none"}if(c==null||c==undefined){c=false}var i=a.data(this.element,"View"+this.element.id);if(i==undefined||i==null){return}if(this.changing){if(d&&this.selectedDate){if(this.selectedDate.getFullYear()!=d.getFullYear()||this.selectedDate.getDate()!=d.getDate()||this.selectedDate.getMonth()!=d.getMonth()){var j=this.changing(this.selectedDate,d)}if(j){d=j}}}var k=this;if(this.input){if(d!=null){this.input.val(d.toString())}else{this.input.val("")}}var e=this.selectedDate;this.selectedDate=d;if(this.view!="month"){if(e!=d){this._raiseEvent(7)}a.each(this.renderedCells,function(p){var l=this;var q=l.getDate();var m=a(l.element);var o=m.find("#cellContent"+m[0].id);if(d==null){l.isSelected=false;l.isDisabled=false}else{l.isSelected=false;if(q){if((q.getMonth()==d.getMonth()&&k.view=="year"&&q.getFullYear()==d.getFullYear())||(k.view=="decade"&&q.getFullYear()==d.getFullYear())){l.isSelected=true;try{if(g!="none"){l.element.focus()}}catch(n){}}}}k._applyCellStyle(l,m,m)});if(this.change){this.change(d)}return}if(this.view=="month"){if(this.selectionMode=="range"&&g=="key"){var f=this.getVisibleDate();var b=this.getFirstDayOfWeek(f);this.refreshCalendarCells(this.month,b,"View"+this.element.id)}}var h=false;a.each(this.renderedCells,function(r){var w=this;var o=w.getDate();var v=a(w.element);var l=v;if(v.length==0){return false}if(d==null){w.isSelected=false;w.isDisabled=false;if(r==0){k.selection={from:null,to:null};k._raiseEvent("2");k._raiseEvent("5",{selectionType:g})}}else{if(k.selectionMode!="range"||g=="key"){if(o.getDate()==d.getDate()&&o.getMonth()==d.getMonth()&&o.getFullYear()==d.getFullYear()&&w.isSelected){k._applyCellStyle(w,v,l);k._raiseEvent("5",{selectionType:g});return}if(w.isSelected){k._raiseEvent("6",{selectionType:g})}w.isSelected=false;if(o.getDate()==d.getDate()&&o.getMonth()==d.getMonth()&&o.getFullYear()==d.getFullYear()){w.isSelected=true;if(r==0){k.selection={date:d}}try{if(g!="none"){w.element.focus();k.host.focus()}}catch(s){}if(!w.isOtherMonth){k.value._setMonth(d.getMonth()+1);k.value._setDay(d.getDate());k.value._setYear(d.getFullYear());k._raiseEvent("2");k._raiseEvent("5",{selectionType:g})}}if(k.selectionMode=="range"){k._clicks=0;k.selection={from:d,to:d}}}else{if(k.selectionMode=="range"){if(g=="view"){w.isSelected=false;w.isDisabled=false;if(k.getMaxDate()<o){w.isDisabled=true}if(k.getMinDate()>o){w.isDisabled=true}if(k._isRestrictedDate(o)){w.isDisabled=true;w.isRestricted=true}if(!w.isDisabled&&k._isDisabled(o)){w.isDisabled=true}k._applyCellStyle(w,v,l);return true}if(r==0){if(g!="none"){if(k._clicks==undefined){k._clicks=0}k._clicks++;if(c){k._clicks++}if(k._clicks==1){k.selection={from:d,to:d}}else{var u=k.selection.from;var q=u<=d?u:d;var t=u<=d?d:u;if(q){var m=new Date(q.getFullYear(),q.getMonth(),q.getDate())}if(t){var n=new Date(t.getFullYear(),t.getMonth(),t.getDate(),23,59,59)}k.selection={from:m,to:n};k._clicks=0}}else{if(k.selection==null||k.selection.from==null){k.selection={from:d,to:d};if(k._clicks==undefined){k._clicks=0}k._clicks++;if(k._clicks==2){k._clicks=0}}}}var p=function(y){if(y==null){return new Date()}var x=new Date();x.setHours(0,0,0,0);x.setFullYear(y.getFullYear(),y.getMonth(),y.getDate());return x};if(!w.isOtherMonth&&p(o).toString()==p(d).toString()){k.value._setMonth(d.getMonth()+1);k.value._setDay(d.getDate());k.value._setYear(d.getFullYear());k._raiseEvent("2");k._raiseEvent("5",{selectionType:g})}w.isSelected=false;w.isDisabled=h;if(p(o)<p(k.selection.from)&&k._clicks==1){w.isDisabled=true}if(k.getMaxDate()<o){w.isDisabled=true}if(k.getMinDate()>o){w.isDisabled=true}if(k._isRestrictedDate(o)){w.isRestricted=true;w.isDisabled=true}if(!w.isDisabled&&k._isDisabled(o)){w.isDisabled=true}if(!w.isDisabled){if(p(o)>=p(k.selection.from)&&p(o)<=p(k.selection.to)){w.isSelected=true}}else{if(!k.allowRestrictedDaysInRange&&p(o)>=p(k.selection.from)&&k.selection.to==k.selection.from){h=true}}}}}k._applyCellStyle(w,v,l)});if(k.selectionMode=="range"&&k._clicks==0){k._raiseEvent(7);return}else{if(k.selectionMode=="range"){return}}if(e!=d){k._raiseEvent(7);if(this.change){this.change(d)}}},_getSelectedDate:function(){var d=a.data(this.element,"View"+this.element.id);if(d==undefined||d==null){return}if(this.view!="month"){return this.selectedDate}for(var c=0;c<d.cells.length;c++){var b=d.cells[c];var e=b.getDate();if(b.isSelected){return e}}if(this.selectedDate){return this.selectedDate}},_getSelectedCell:function(){var d=a.data(this.element,"View"+this.element.id);if(d==undefined||d==null){return}for(var c=0;c<d.cells.length;c++){var b=d.cells[c];var e=b.getDate();if(b.isSelected){return b}}},_applyCellStyle:function(c,d,g){var e=this;if(g==null||(g!=null&&g.length==0)){g=d}var b="";b=this.toThemeProperty("jqx-rc-all");b+=" "+this.toThemeProperty("jqx-item");if(this.disabled||(c.isDisabled&&!c.isRestricted)){b+=" "+this.toThemeProperty("jqx-calendar-cell-disabled");b+=" "+this.toThemeProperty("jqx-fill-state-disabled")}if(!this.disabled&&c.isRestricted){b+=" "+this.toThemeProperty("jqx-calendar-cell-restrictedDate")}if(c.isOtherMonth&&this.enableOtherMonthDays&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-othermonth")}if(c.isWeekend&&this.enableWeekend&&c.isVisible&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-weekend")}if(!c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-hidden")}else{b+=" "+this.toThemeProperty("jqx-calendar-cell");if(this.view!="month"){if(g.length>0&&g.html().toLowerCase().indexOf("span")!=-1){g.css("cursor","default")}}}g.removeAttr("aria-selected");if(c.isSelected&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-selected");b+=" "+this.toThemeProperty("jqx-fill-state-pressed");g.attr("aria-selected",true);this.host.removeAttr("aria-activedescendant").attr("aria-activedescendant",g[0].id);var f=c.getDate();if(this._isDisabled(f)){b+=" "+this.toThemeProperty("jqx-calendar-cell-selected-invalid")}}if(c.isHighlighted&&c.isVisible&&this.enableHover){if(!c.isDisabled){b+=" "+this.toThemeProperty("jqx-calendar-cell-hover");b+=" "+this.toThemeProperty("jqx-fill-state-hover")}}b+=" "+this.toThemeProperty("jqx-calendar-cell-"+this.view);if(c.isToday&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-today")}g[0].className=b;if(this.specialDates.length>0){var h=this;a.each(this.specialDates,function(){if(this.Class!=undefined&&this.Class!=null&&this.Class!=""){g.removeClass(this.Class)}else{g.removeClass(e.toThemeProperty("jqx-calendar-cell-specialDate"))}var i=c.getDate();if(i.getFullYear()==this.Date.getFullYear()&&i.getMonth()==this.Date.getMonth()&&i.getDate()==this.Date.getDate()){if(c.tooltip==null&&this.Tooltip!=null){c.tooltip=this.Tooltip;if(a(g).jqxTooltip){var j=this.Class;a(g).jqxTooltip({value:{cell:c,specialDate:this.Date},name:h.element.id,content:this.Tooltip,position:"mouse",theme:h.theme,opening:function(k){if(g.hasClass(e.toThemeProperty("jqx-calendar-cell-specialDate"))){return true}if(g.hasClass(j)){return true}return false}})}}g.removeClass(e.toThemeProperty("jqx-calendar-cell-othermonth"));g.removeClass(e.toThemeProperty("jqx-calendar-cell-weekend"));if(this.Class==undefined||this.Class==""){g.addClass(e.toThemeProperty("jqx-calendar-cell-specialDate"));return false}else{g.addClass(this.Class);return false}}})}},_applyCellStyles:function(){var f=a.data(this.element,"View"+this.element.id);if(f==undefined||f==null){return}for(var e=0;e<f.cells.length;e++){var b=f.cells[e];var c=a(b.element);var d=c.find("#cellContent"+c[0].id);if(d.length==0){d=c}this._applyCellStyle(b,c,d)}},getWeekOfYear:function(f){var b=new Date(f.dateTime);dowOffset=this.firstDayOfWeek;var e=new Date(b.getFullYear(),0,1);var c=e.getDay()-dowOffset;c=(c>=0?c:c+7);var d=Math.floor((b.getTime()-e.getTime()-(b.getTimezoneOffset()-e.getTimezoneOffset())*60000)/86400000)+1;var g;if(c<4){g=Math.floor((d+c-1)/7)+1;if(g>52){nYear=new Date(b.getFullYear()+1,0,1);nday=nYear.getDay()-dowOffset;nday=nday>=0?nday:nday+7;g=nday<4?1:53}}else{g=Math.floor((d+c-1)/7)}return g},renderColumnHeader:function(w){if(!this.showDayNames){return}var t=a("<table role='grid' style='border-spacing: 0px; border-collapse: collapse; width: 100%; height: 100%;' cellspacing='0' cellpadding='1'><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr></table>");t.find("table").addClass(this.toThemeProperty("jqx-reset"));t.find("tr").addClass(this.toThemeProperty("jqx-reset"));t.find("td").css({background:"transparent",padding:1,margin:0,border:"none"});t.addClass(this.toThemeProperty("jqx-reset"));t.addClass(this.toThemeProperty("jqx-widget-content"));t.addClass(this.toThemeProperty("jqx-calendar-column-header"));this.columnHeader.append(t);var d=this.getVisibleDate();var h=this.getFirstDayOfWeek(d);var m=h.dayOfWeek;var x=this.getWeekOfYear(h);var q=this.firstDayOfWeek;var v=this.localization.calendar.days.names;var n=new Array();var g=h;var o=(w.width()-this.rowHeaderWidth-2)/7;if(!this.showWeekNumbers){o=(w.width()-2)/7}for(var s=0;s<7;s++){var f=v[q];if(this.rtl){f=v[6-q]}switch(this.dayNameFormat){case"default":f=this.localization.calendar.days.namesAbbr[q];if(this.rtl){f=this.localization.calendar.days.namesAbbr[6-q]}break;case"shortest":f=this.localization.calendar.days.namesShort[q];if(this.rtl){f=this.localization.calendar.days.namesShort[6-q]}break;case"firstTwoLetters":f=f.substring(0,2);break;case"firstLetter":f=f.substring(0,1);break}var b=new a.jqx._jqxCalendar.cell(g.dateTime);var k=s+1;var l=k+this.element.id;var j=a(t[0].rows[0].cells[s]);var p=s;if(this.enableTooltips){if(a(j).jqxTooltip){a(j).jqxTooltip({name:this.element.id,content:v[q],theme:this.theme,position:"mouse"})}}if(q>=6){q=0}else{q++}s=p;b.element=j;b.row=0;b.column=s+1;var e=this._textwidth(f);var c="<div style='padding: 0; margin: 0; border: none; background: transparent;' id='columnCell"+l+"'>"+f+"</div>";j.append(c);j.find("#columnCell"+l).addClass(this.toThemeProperty("jqx-calendar-column-cell"));j.width(o);if(this.disabled){j.find("#columnCell"+l).addClass(this.toThemeProperty("jqx-calendar-column-cell-disabled"))}if(e>0&&o>0){while(e>j.width()){if(f.length==0){break}f=f.substring(0,f.length-1);a.jqx.utilities.html(j.find("#columnCell"+l),f);e=this._textwidth(f)}}n[s]=b;g=new a.jqx._jqxDateTimeInput.getDateTime(new Date(g._addDays(1)))}if(parseInt(this.columnHeader.width())>parseInt(this.host.width())){this.columnHeader.width(this.host.width())}var u=a.data(this.element,w[0].id);u.columnCells=n},_format:function(d,e,b){var f=false;try{if(Globalize!=undefined){f=true}}catch(c){}if(a.global){a.global.culture.calendar=this.localization.calendar;return a.global.format(d,e,this.culture)}else{if(f){try{if(Globalize.cultures[this.culture]){Globalize.cultures[this.culture].calendar=this.localization.calendar;return Globalize.format(d,e,this.culture)}else{return Globalize.format(d,e,this.culture)}}catch(c){return Globalize.format(d,e)}}else{if(a.jqx.dataFormat){return a.jqx.dataFormat.formatdate(d,e,this.localization.calendar)}}}},_textwidth:function(d){var c=a("<span>"+d+"</span>");c.addClass(this.toThemeProperty("jqx-calendar-column-cell"));a(this.host).append(c);var b=c.width();c.remove();return b},_textheight:function(d){var c=a("<span>"+d+"</span>");a(this.host).append(c);var b=c.height();c.remove();return b},_renderRowHeader:function(k){var g=this.getVisibleDate();var c=this.getFirstDayOfWeek(g);var f=c.dayOfWeek;var s=this.getWeekOfYear(c);var o=new a.jqx._jqxDateTimeInput.getDateTime(new Date(c.dateTime));o._addDays(5);o.dayOfWeek=o.dateTime.getDay();var m=this.getWeekOfYear(o);if(53==s&&o.dateTime.getMonth()==0){s=1}var l=a("<table style='overflow: hidden; width: 100%; height: 100%;' cellspacing='0' cellpadding='1'><tr><td></td></tr><tr><td/></tr><tr><td/></tr><tr><td/></tr><tr><td/></tr><tr><td/></tr></table>");l.find("table").addClass(this.toThemeProperty("jqx-reset"));l.find("td").addClass(this.toThemeProperty("jqx-reset"));l.find("tr").addClass(this.toThemeProperty("jqx-reset"));l.addClass(this.toThemeProperty("jqx-calendar-row-header"));l.width(this.rowHeaderWidth);this.rowHeader.append(l);var d=c;var r=new Array();for(var h=0;h<6;h++){var e=s.toString();var q=new a.jqx._jqxCalendar.cell(d.dateTime);var j=h+1+this.element.id;var p=a(l[0].rows[h].cells[0]);q.element=p;q.row=h;q.column=0;var b="<div style='background: transparent; border: none; padding: 0; margin: 0;' id ='headerCellContent"+j+"'>"+e+"</div>";p.append(b);p.find("#headerCellContent"+j).addClass(this.toThemeProperty("jqx-calendar-row-cell"));r[h]=q;d=new a.jqx._jqxDateTimeInput.getDateTime(new Date(d._addWeeks(1)));s=this.getWeekOfYear(d)}var n=a.data(this.element,k[0].id);n.rowCells=r},getFirstDayOfWeek:function(e){var d=e;if(this.firstDayOfWeek<0||this.firstDayOfWeek>6){this.firstDayOfWeek=6}var c=d.dayOfWeek-this.firstDayOfWeek;if(c<=0){c+=7}var b=a.jqx._jqxDateTimeInput.getDateTime(d._addDays(-c));return b},getVisibleDate:function(){var c=new a.jqx._jqxDateTimeInput.getDateTime(new Date(this.value.dateTime));if(c<this.minDate){c=this.minDate}if(c>this.maxDate){this.visibleDate=this.maxDate}c.dateTime.setHours(0);var d=c.day;var b=a.jqx._jqxDateTimeInput.getDateTime(c._addDays(-d+1));c=b;return c},destroy:function(b){this.host.removeClass();if(b!=false){this.host.remove()}},_raiseEvent:function(i,c){if(c==undefined){c={owner:null}}var e=this.events[i];var f=c?c:{};f.owner=this;var g=new a.Event(e);g.owner=this;g.args=f;if(i==0||i==1||i==2||i==3||i==4||i==5||i==6||i==7||i==8){g.args.date=g.args.selectedDate=this.getDate();g.args.range=this.getRange();var h=this.getViewStart();var d=this.getViewEnd();g.args.view={from:h,to:d}}var b=this.host.trigger(g);if(i==0||i==1){b=false}return b},propertyMap:function(b){if(b=="value"){if(this.selectionMode!="range"){return this.getDate()}else{return this.getRange()}}return null},updateSize:function(){var d=this.host.find("#View"+this.element.id);if(d.length>0){this.setCalendarSize();if(this.height!=undefined&&!isNaN(this.height)){d.height(this.height)}else{if(this.height!=null&&this.height.toString().indexOf("px")!=-1){d.height(this.height)}}if(this.width!=undefined&&!isNaN(this.width)){d.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("px")!=-1){d.width(this.width)}}var c=this.host.height()-this.titleHeight-this.columnHeaderHeight;var b="View"+this.element.id;d.find("#cellsTable"+b).height(c);d.find("#calendarRowHeader"+b).height(c);this.refreshControl()}},resize:function(){this.updateSize()},clear:function(){if(this.selectionMode=="range"){this._clicks=1;this.setRange(null,null);this._raiseEvent(7)}else{this.setDate(null,"mouse")}this._clicks=0;this.selection={from:null,to:null}},today:function(){if(this.selectionMode=="range"){this.setRange(new Date(),new Date())}else{this.setDate(new Date(),"mouse")}},propertyChangedHandler:function(d,e,g,f){if(this.isInitialized==undefined||this.isInitialized==false){return}if(e=="enableHover"){return}if(e=="keyboardNavigation"){return}if(e=="localization"){if(this.localization){if(this.localization.backString){this.backText=this.localization.backString}if(this.localization.forwardString){this.forwardText=this.localization.forwardString}if(this.localization.todayString){this.todayString=this.localization.todayString}if(this.localization.clearString){this.clearString=this.localization.clearString}this.firstDayOfWeek=this.localization.calendar.firstDay}}if(e=="culture"){try{if(a.global){a.global.preferCulture(d.culture);d.localization.calendar=a.global.culture.calendar}else{if(Globalize){var b=Globalize.culture(d.culture);d.localization.calendar=b.calendar}}}catch(c){}}if(e=="views"){if(d.views.indexOf("month")==-1){d.view="year"}if(d.views.indexOf("year")==-1&&d.views.indexOf("month")==-1){d.view="decade"}d.render();return}if(e=="showFooter"){d.render()}if(e=="width"||e=="height"){d.updateSize();return}else{if(e=="theme"){a.jqx.utilities.setTheme(g,f,d.host)}else{if(e=="rowHeaderWidth"||e=="showWeekNumbers"){d.render()}else{d.view="month";d.render()}}}}})})(jqxBaseFramework);(function(a){a.jqx._jqxCalendar.cell=function(c){var b={dateTime:new a.jqx._jqxDateTimeInput.getDateTime(c),_date:c,getDate:function(){return this._date},setDate:function(d){this.dateTime=new a.jqx._jqxDateTimeInput.getDateTime(d);this._date=d},isToday:false,isWeekend:false,isOtherMonth:false,isVisible:true,isSelected:false,isHighlighted:false,element:null,row:-1,column:-1,tooltip:null};return b};a.jqx._jqxCalendar.monthView=function(c,h,d,b,f,e){var g={start:c,end:h,cells:d,rowCells:b,columnCells:f,element:e};return g}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDateTimeInput","",{});a.extend(a.jqx._jqxDateTimeInput.prototype,{defineInstance:function(){var b={value:a.jqx._jqxDateTimeInput.getDateTime(new Date()),minDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),maxDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),min:new Date(1900,0,1),max:new Date(2100,0,1),rowHeaderWidth:25,enableViews:true,views:["month","year","decade"],selectableDays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],change:null,changing:null,columnHeaderHeight:20,placeHolder:"",titleHeight:25,firstDayOfWeek:0,showWeekNumbers:false,showTimeButton:false,cookies:false,cookieoptions:null,showFooter:false,formatString:"dd/MM/yyyy",width:200,height:25,dayNameFormat:"firstTwoLetters",textAlign:"left",readonly:false,culture:"default",activeEditor:null,showCalendarButton:true,openDelay:250,closeDelay:300,closeCalendarAfterSelection:true,isEditing:false,enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",enableAbsoluteSelection:false,disabled:false,buttonSize:18,animationType:"slide",dropDownWidth:"200px",restrictedDates:new Array(),dropDownHeight:"205px",selectionMode:"default",renderMode:"full",rtl:false,timeRange:null,_editor:false,todayString:"Today",clearString:"Clear",popupZIndex:9999999999999,allowNullDate:true,enableHover:true,allowKeyboardDelete:true,localization:{backString:"Back",forwardString:"Forward",todayString:"Today",clearString:"Clear",calendar:{name:"Gregorian_USEnglish","/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss"}}},events:["valueChanged","textchanged","mousedown","mouseup","keydown","keyup","keypress","open","close","change"],aria:{"aria-valuenow":{name:"getDate",type:"date"},"aria-valuetext":{name:"getText",type:"string"},"aria-valuemin":{name:"min",type:"date"},"aria-valuemax":{name:"max",type:"date"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0);this.minDate._setYear(1900);this.minDate._setMonth(1);this.minDate._setDay(1);this.minDate._setHours(1);this.minDate._setMinutes(1);this.minDate._setSeconds(1);this.minDate._setMilliseconds(1);this.maxDate._setYear(2100);this.maxDate._setMonth(1);this.maxDate._setDay(1);this.maxDate._setHours(1);this.maxDate._setMinutes(1);this.maxDate._setSeconds(1);this.maxDate._setMilliseconds(1);this.defaultMinDate=this.minDate;this.defaultMaxDate=this.maxDate;return b},createInstance:function(h){var b="";var e=this;if(!e.host.jqxCalendar){throw new Error("jqxDateTimeInput: Missing reference to jqxcalendar.js.")}if(e.host.attr("value")){b=true;var c=e.host.attr("value");if(e.selectionMode!="range"){var d=new Date(c);if(d!=undefined&&!isNaN(d)){e.value=a.jqx._jqxDateTimeInput.getDateTime(d)}}}if(e.value!=null&&e.value instanceof Date){e.value=a.jqx._jqxDateTimeInput.getDateTime(e.value)}else{if(e.value!=null&&typeof(e.value)=="string"){var d=new Date(e.value);if(d!=undefined&&!isNaN(d)){e.value=a.jqx._jqxDateTimeInput.getDateTime(d)}else{if(e.value.indexOf(",")>=0){e.value=e.value.replace(/\,/g,"/");var d=new Date(e.value);if(d!=undefined&&!isNaN(d)){e.value=a.jqx._jqxDateTimeInput.getDateTime(d)}}}}}this._initTimeRange();this._validateTimeRange();e.host.attr("data-role","input");e.render();a.jqx.aria(this);if(e.getDate()!=null){a.jqx.aria(this,"aria-label","Current focused date is "+e.getDate().toLocaleString())}else{a.jqx.aria(this,"aria-label","Current focused date is Null")}if(e.minDate!==e.defaultMinDate){e.min=e.minDate}if(e.maxDate!==e.defaultMaxDate){e.max=e.maxDate}e.setMaxDate(e.max,false);e.setMinDate(e.min,false);if(e.selectionMode=="range"){if(b){var c=e.host.attr("value");var g=c.substring(0,c.indexOf("-"));var f=c.substring(c.indexOf("-")+1);var k=new Date(g);var j=new Date(f);if(k!=undefined&&!isNaN(k)){if(j!=undefined&&!isNaN(j)){e.setRange(k,j)}}}else{if(e.getDate()!=null){e.setRange(e.getDate(),e.getDate())}}}},_validateTimeRange:function(){if(this.timeRange){var b=this.value.dateTime.getHours();var c=this.value.dateTime.getMinutes();if(b<=this.timeRange.minHour){this.value._setHours(this.timeRange.minHour);if(c<this.timeRange.minMinute){this.value._setMinutes(this.timeRange.minMinute);this._updateEditorsValue()}else{this._updateEditorsValue()}}if(b>=this.timeRange.maxHour){this.value._setHours(this.timeRange.maxHour);if(c>this.timeRange.maxMinute){this.value._setMinutes(this.timeRange.maxMinute);this._updateEditorsValue()}else{this._updateEditorsValue()}}}},_initTimeRange:function(){if(this.timeRange){if(this.timeRange.min){var c=null;if(this.timeRange.min.indexOf("AM")>=0||this.timeRange.min.indexOf("PM")>=0){c=this.timeRange.min.indexOf("AM")>=0?"AM":"PM"}var d=this.timeRange.min.split(":");var b=parseInt(d[0]);var f=parseInt(d[1]);if(c){this.timeRange.minDefaultHour=b;this.timeRange.minMeridian=c}if(c&&c=="PM"){b+=12}this.timeRange.minHour=b;this.timeRange.minMinute=f}if(this.timeRange.max){var c=null;if(this.timeRange.max.indexOf("AM")>=0||this.timeRange.max.indexOf("PM")>=0){c=this.timeRange.max.indexOf("AM")>=0?"AM":"PM"}var e=this.timeRange.max.split(":");var b=parseInt(e[0]);var f=parseInt(e[1]);if(c){this.timeRange.maxDefaultHour=b;this.timeRange.maxMeridian=c}if(c&&c=="PM"){b+=12}this.timeRange.maxHour=b;this.timeRange.maxMinute=f}}},_format:function(d,e,b){var f=false;try{if(Globalize!=undefined){f=true}}catch(c){}if(a.global){return a.global.format(d,e,this.culture)}else{if(f){try{var e=Globalize.format(d,e,this.culture);return e}catch(c){return Globalize.format(d,e)}}else{if(a.jqx.dataFormat){if(d instanceof Date){return a.jqx.dataFormat.formatdate(d,e,this.localization.calendar)}else{if(typeof d==="number"){return a.jqx.dataFormat.formatnumber(d,e,this.localization.calendar)}else{return a.jqx.dataFormat.formatdate(d,e,this.localization.calendar)}}}else{throw new Error("jqxDateTimeInput: Missing reference to globalize.js.")}}}},render:function(){var l=this;l._removeHandlers();l.element.innerHTML="";l.host.attr({role:"textbox"});l.id=a.jqx.utilities.createId();var f=a.jqx.utilities.createId();var k=a.jqx.utilities.createId();l._setSize();if(l.width==null){l.width=l.host.width();l.host.width(l.width)}l.touch=a.jqx.mobile.isTouchDevice();var c=a("<div class='jqx-max-size jqx-position-relative'></div>").appendTo(l.host);l.dateTimeInput=a("<input class='jqx-position-absolute' id='input"+l.element.id+"' autocomplete='off' type='textarea'/>").appendTo(c);l.dateTimeInput.addClass(l.toThemeProperty("jqx-reset"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-clear"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-input-content"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-widget-content"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-rc-all"));l.dateTimeInput.attr("placeHolder",l.placeHolder);if(l.renderMode!="full"){l.dateTimeInput.remove()}var d=l.host.attr("name");if(d){l.dateTimeInput.attr("name",d)}if(l.host.attr("tabindex")){l.dateTimeInput.attr("tabindex",l.host.attr("tabindex"));l.host.removeAttr("tabindex")}if(l.rtl){l.dateTimeInput.css("direction","rtl");l.dateTimeInput.addClass("jqx-rtl")}l.calendarButton=a("<div style='height: 100%;' class='jqx-position-absolute'><div></div></div>").appendTo(c);if(!l.rtl){l.calendarButton.addClass(l.toThemeProperty("jqx-action-button"))}else{l.calendarButton.addClass(l.toThemeProperty("jqx-action-button-rtl"))}l.calendarButtonIcon=a(l.calendarButton.children()[0]);l.calendarButtonIcon.addClass(l.toThemeProperty("jqx-icon"));l.calendarButtonIcon.addClass(l.toThemeProperty("jqx-icon-calendar"));l.calendarButton.addClass(l.toThemeProperty("jqx-fill-state-normal"));if(!l.rtl){l.calendarButton.addClass(l.toThemeProperty("jqx-rc-r"))}else{l.calendarButton.addClass(l.toThemeProperty("jqx-rc-l"))}l.timeButton=a("<div style='height: 100%;' class='jqx-position-absolute'><div></div></div>").appendTo(c);if(!l.rtl){l.timeButton.addClass(l.toThemeProperty("jqx-action-button"))}else{l.timeButton.addClass(l.toThemeProperty("jqx-action-button-rtl"))}l.timeButtonIcon=a(l.timeButton.children()[0]);l.timeButtonIcon.addClass(l.toThemeProperty("jqx-icon"));l.timeButtonIcon.addClass(l.toThemeProperty("jqx-icon-time"));l.timeButton.addClass(l.toThemeProperty("jqx-fill-state-normal"));if(!l.rtl){l.timeButton.addClass(l.toThemeProperty("jqx-rc-r"))}else{l.timeButton.addClass(l.toThemeProperty("jqx-rc-l"))}var n=this;l._arrange();if(a.jqx._jqxCalendar!=null&&a.jqx._jqxCalendar!=undefined){try{var j="calendar"+l.id;var h=a(a.find("#"+j));if(h.length>0){h.remove()}a.jqx.aria(this,"aria-owns",j);a.jqx.aria(this,"aria-haspopup",true);a.jqx.aria(this,"aria-readonly",l.selectionMode=="range"?true:false);var b=a("<div style='overflow: hidden; background: transparent; position: absolute;' id='calendar"+l.id+"'><div id='innerCalendar"+l.id+"'></div><div id='innerTime"+l.id+"'></div></div>");if(a.jqx.utilities.getBrowser().browser=="opera"){b.hide()}b.appendTo(document.body);l.container=b;l.calendarContainer=a(a.find("#innerCalendar"+l.id)).jqxCalendar({restrictedDates:this.restrictedDates,changing:l.changing,change:l.change,enableViews:l.enableViews,selectableDays:l.selectableDays,views:l.views,rowHeaderWidth:l.rowHeaderWidth,titleHeight:l.titleHeight,columnHeaderHeight:l.columnHeaderHeight,_checkForHiddenParent:false,enableAutoNavigation:false,canRender:false,localization:l.localization,todayString:l.todayString,clearString:l.clearString,dayNameFormat:l.dayNameFormat,rtl:l.rtl,culture:l.culture,showFooter:l.showFooter,selectionMode:l.selectionMode,firstDayOfWeek:l.firstDayOfWeek,showWeekNumbers:l.showWeekNumbers,width:l.dropDownWidth,height:l.dropDownHeight,theme:l.theme});l.calendarContainer.css({position:"absolute",zIndex:l.popupZIndex,top:0,left:0});l.calendarContainer.addClass(l.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){l.calendarContainer.addClass(l.toThemeProperty("jqx-noshadow"))}l.timeContainer=a(a.find("#innerTime"+l.id));l.timeContainer.css({position:"absolute",zIndex:l.popupZIndex,top:0,left:0});l.timeContainer.addClass(l.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){l.timeContainer.addClass(l.toThemeProperty("jqx-noshadow"))}l._calendar=a.data(l.calendarContainer[0],"jqxCalendar").instance;var n=this;l._calendar.today=function(){n.today()};l._calendar.clear=function(){n.clear()};if(a.jqx.utilities.getBrowser().browser=="opera"){b.show()}b.height(parseInt(l.calendarContainer.height())+25);b.width(parseInt(l.calendarContainer.width())+25);if(l.selectionMode=="range"){l.readonly=true}if(l.animationType=="none"){l.container.css("display","none")}else{l.container.hide()}}catch(m){}}if(a.global){a.global.preferCulture(l.culture)}l.selectedText="";l._addHandlers();l.self=this;l.oldValue=l.getDate();l.items=new Array();l.editors=new Array();l._loadItems();l.editorText="";if(l.readonly==true){l.dateTimeInput.css("readonly",l.readonly)}l.dateTimeInput.css("text-align",l.textAlign);l.host.addClass(l.toThemeProperty("jqx-widget"));l.host.addClass(l.toThemeProperty("jqx-datetimeinput"));l.host.addClass(l.toThemeProperty("jqx-input"));l.host.addClass(l.toThemeProperty("jqx-overflow-hidden"));l.host.addClass(l.toThemeProperty("jqx-rc-all"));l.host.addClass(l.toThemeProperty("jqx-reset"));l.host.addClass(l.toThemeProperty("jqx-clear"));l.host.addClass(l.toThemeProperty("jqx-widget-content"));l.propertyChangeMap.disabled=function(e,q,p,r){if(r){e.host.addClass(n.toThemeProperty("jqx-input-disabled"));e.host.addClass(n.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(n.toThemeProperty("jqx-fill-state-disabled"));e.host.removeClass(n.toThemeProperty("jqx-input-disabled"))}a.jqx.aria(this,"aria-disabled",r)};if(l.disabled){l.host.addClass(l.toThemeProperty("jqx-input-disabled"));l.host.addClass(l.toThemeProperty("jqx-fill-state-disabled"));l.dateTimeInput.attr("disabled",true)}if(l.host.parents("form").length>0){l.addHandler(l.host.parents("form"),"reset",function(){setTimeout(function(){n.setDate(new Date())},10)})}if(l.cookies){var g=a.jqx.cookie.cookie("jqxDateTimeInput"+l.element.id);if(g!=null){l.setDate(new Date(g))}}if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(l.host.parents(".jqx-window").length>0){var o=l.host.parents(".jqx-window").css("z-index");l.container.css("z-index",o+10);l.calendarContainer.css("z-index",o+10)}}if(l.culture!="default"){l._applyCulture()}if(l.value){if(l.calendarContainer.jqxCalendar("_isDisabled",l.value.dateTime)){l.dateTimeInput.addClass(l.toThemeProperty("jqx-input-invalid"))}else{l.dateTimeInput.removeClass(l.toThemeProperty("jqx-input-invalid"))}}},val:function(c){var b=this;if(arguments.length!=0){if(c==null){b.setDate(null)}if(b.selectionMode=="range"){b.setRange(arguments[0],arguments[1]);return b.getText()}if(c instanceof Date){b.setDate(c)}if(typeof(c)=="string"){if(c=="date"){return b.getDate()}b.setDate(c)}if(b._calendar.getDate()!=b.getDate()){b._calendar.setDate(b.getDate())}}return b.getText()},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true;this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true;this.host.height(this.height)}var c=this;var d=function(){if(c.calendarContainer){c._arrange()}};if(e){if(this.calendarContainer){this._arrange();var b=this.host.width();if(this.dropDownWidth!="auto"){b=this.dropDownWidth}this.calendarContainer.jqxCalendar({width:b});this.container.width(parseInt(b)+25)}}a.jqx.utilities.resize(this.host,function(){d()})},_arrange:function(){if(this.height==null){this.height=27;this.host.height(27)}var d=parseInt(this.host.width());var b=parseInt(this.host.height());var h=this.buttonSize;var g=2;if(!this.showCalendarButton&&!this.showTimeButton){h=0;buttonHeight=0;this.calendarButton.hide();g=0}if(!this.showCalendarButton){this.calendarButton.hide()}else{this.calendarButton.show()}if(!this.showTimeButton){this.timeButton.hide()}else{this.timeButton.show()}var c=d-h-1*g;if(this.showTimeButton&&this.showCalendarButton){var c=d-2*h-1*g}else{if(this.showTimeButton||this.showCalendarButton){var c=d-h-1*g}}if(c>0){this.dateTimeInput[0].style.width=c+"px"}if(this.rtl){this.dateTimeInput[0].style.width=(-1+c+"px")}this.dateTimeInput[0].style.left="0px";this.dateTimeInput[0].style.top="0px";this.calendarButton[0].style.width=h+1+"px";this.calendarButton[0].style.left=1+c+"px";this.timeButton[0].style.width=h+1+"px";if(this.showCalendarButton){this.timeButton[0].style.left=1+this.calendarButton.width()+c+"px"}else{this.timeButton[0].style.left=1+c+"px"}if(this.renderMode!="full"){this.calendarButton[0].style.width="100%";this.calendarButton[0].style.left="0px";this.calendarButton.css("border","none");this.timeButton[0].style.width="100%";this.timeButton[0].style.left="0px";this.timeButton.css("border","none")}var e=this.dateTimeInput.height();if(e==0){e=parseInt(this.dateTimeInput.css("font-size"))+3;this.calendarButton.addClass(this.toThemeProperty("jqx-rc-all"));this.timeButton.addClass(this.toThemeProperty("jqx-rc-all"))}if(this.dateTimeInput[0].className.indexOf("jqx-rc-all")==-1){this.dateTimeInput.addClass(this.toThemeProperty("jqx-rc-all"))}var f=parseInt(b)/2-parseInt(e)/2;if(f>0){this.dateTimeInput[0].style.marginTop=parseInt(f)+"px"}if(this.rtl){this.calendarButton[0].style.width=h+"px";this.timeButton[0].style.width=h+"px";this.calendarButton.css("left","0px");if(this.showCalendarButton){this.timeButton.css("left",h+"px")}else{this.timeButton.css("left","0px")}this.dateTimeInput.css("left",this.calendarButton.width());if(this.showTimeButton&&this.showCalendarButton){this.dateTimeInput.css("left",this.timeButton.width()+this.calendarButton.width())}if(a.jqx.browser.msie&&a.jqx.browser.version<=8){this.dateTimeInput.css("left",1+this.calendarButton.width());if(this.showTimeButton&&this.showCalendarButton){this.dateTimeInput.css("left",1+this.timeButton.width()+this.calendarButton.width())}}}},_removeHandlers:function(){var b=this;this.removeHandler(a(document),"mousedown."+this.id);if(this.dateTimeInput){this.removeHandler(this.dateTimeInput,"keydown."+this.id);this.removeHandler(this.dateTimeInput,"blur");this.removeHandler(this.dateTimeInput,"focus");this.removeHandler(this.host,"focus");this.removeHandler(this.dateTimeInput,"mousedown");this.removeHandler(this.dateTimeInput,"mouseup");this.removeHandler(this.dateTimeInput,"keydown");this.removeHandler(this.dateTimeInput,"keyup");this.removeHandler(this.dateTimeInput,"keypress")}if(this.calendarButton!=null){this.removeHandler(this.calendarButton,"mousedown")}if(this.timeButton!=null){this.removeHandler(this.timeButton,"mousedown")}if(this.calendarContainer!=null){this.removeHandler(this.calendarContainer,"cellSelected");this.removeHandler(this.calendarContainer,"cellMouseDown")}this.removeHandler(a(window),"resize."+this.id)},isOpened:function(){var c=this;var b=a.data(document.body,"openedJQXCalendar"+this.id);if(b!=null&&b==c.calendarContainer){return true}return false},wheel:function(d,c){var e=0;if(!d){d=window.event}if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(!b){if(d.preventDefault){d.preventDefault()}d.returnValue=false;return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(b){if(b<0){this.spinDown()}else{this.spinUp()}return false},focus:function(){try{var c=this;this._setSelectionStart(0);this._selectGroup(-1);this.dateTimeInput.focus();setTimeout(function(){c._setSelectionStart(0);c._selectGroup(-1);c.dateTimeInput.focus()},25)}catch(b){}},_addHandlers:function(){var e=this.element.id;var c=this.element;var d=this;if(this.host.parents()){this.addHandler(this.host.parents(),"scroll.datetimeinput"+this.element.id,function(f){var g=d.isOpened();if(g){d.close()}})}this.addHandler(this.host,"mouseenter",function(){if(!d.disabled&&d.enableHover){hovered=true;d.calendarButtonIcon.addClass(d.toThemeProperty("jqx-icon-calendar-hover"));d.calendarButton.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mouseleave",function(){if(!d.disabled&&d.enableHover){d.calendarButtonIcon.removeClass(d.toThemeProperty("jqx-icon-calendar-hover"));d.calendarButton.removeClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mousewheel",function(f){d.wheel(f,d)});this.addHandler(a(document),"mousedown."+this.id,this._closeOpenedCalendar,{me:this});if(a.jqx.mobile.isTouchDevice()){this.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id,this._closeOpenedCalendar,{me:this})}this.addHandler(this.dateTimeInput,"keydown."+this.id,function(h){var g=a.data(document.body,"openedJQXCalendar"+d.id);if(g!=null&&g==d.calendarContainer){var f=d.handleCalendarKey(h,d);return f}});if(this.calendarContainer!=null){this.addHandler(this.calendarContainer,"keydown",function(f){if(f.keyCode==13){if(d.isOpened()){if(!d._calendar._viewAnimating&&d._calendar.view=="month"){d.hideCalendar("selected");d.dateTimeInput.focus();return false}}return true}else{if(f.keyCode==9){if(d.isOpened()){d.hideCalendar("selected");return true}}else{if(f.keyCode==27){if(d.isOpened()){d.hideCalendar();d.dateTimeInput.focus();return false}return true}}}d.timePopup=false;if(f.keyCode==84){d.timePopup=true}if(f.keyCode==115){if(d.isOpened()){d.hideCalendar("keyboard");d.dateTimeInput.focus();return false}else{if(!d.isOpened()){d.showCalendar("keyboard");d.dateTimeInput.focus();return false}}}if(f.altKey){if(f.keyCode==38){if(d.isOpened()){d.hideCalendar("keyboard");d.dateTimeInput.focus();return false}}else{if(f.keyCode==40){if(!d.isOpened()){d.showCalendar("keyboard");d.dateTimeInput.focus();return false}}}}});this.addHandler(this.calendarContainer,"cellSelected",function(g){if(d.closeCalendarAfterSelection){var f=a.data(document.body,"openedJQXCalendarValue");if(g.args.selectionType=="mouse"){if(d.selectionMode!="range"){d.hideCalendar("selected")}else{if(d._calendar._clicks==0){d.hideCalendar("selected")}}}}});this.addHandler(this.calendarContainer,"cellMouseDown",function(f){if(d.closeCalendarAfterSelection){if(d._calendar.value){a.data(document.body,"openedJQXCalendarValue",new a.jqx._jqxDateTimeInput.getDateTime(d._calendar.value.dateTime))}}})}this.addHandler(this.dateTimeInput,"blur",function(h){if(d.value!=null){d.isEditing=false;var g=d.value.dateTime.getDay();var f=d._oldDT;d._validateValue(true);if(h.stopPropagation){h.stopPropagation()}d._updateText();d._raiseEvent(9,h)}d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"focus",function(f){d.focus()});this.addHandler(this.dateTimeInput,"focus",function(g){if(d.value!=null){if(d.selectionMode!="range"){d._oldDT=new Date(d.value.dateTime)}else{d._oldDT=d.getRange()}var f=d._selection();d.isEditing=true;d._validateValue();d._updateText();d._setSelectionStart(0);d._selectGroup(-1,f);d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))}else{d._setSelectionStart(0);d._selectGroup(-1);d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))}if(g.stopPropagation){g.stopPropagation()}if(g.preventDefault){g.preventDefault();return false}});var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.addHandler(this.calendarButton,b,function(g){var h=d.container;var f=h.css("display")=="block";d.timePopup=false;d.calendarPopup=true;if(!d.disabled){if(!d.isanimating){if(f){d.hideCalendar();return false}else{d.showCalendar("mouse");g.preventDefault()}}}});this.addHandler(this.timeButton,b,function(g){var h=d.container;var f=h.css("display")=="block";d.timePopup=true;d.calendarPopup=false;if(!d.disabled){if(!d.isanimating){if(f){d.hideCalendar("mouse");return false}else{d.showCalendar("mouse");g.preventDefault()}}}});this.addHandler(this.dateTimeInput,"mousedown",function(f){return d._raiseEvent(2,f)});this.addHandler(this.dateTimeInput,"mouseup",function(f){return d._raiseEvent(3,f)});this.addHandler(this.dateTimeInput,"keydown",function(f){return d._raiseEvent(4,f)});this.addHandler(this.dateTimeInput,"keyup",function(f){return d._raiseEvent(5,f)});this.addHandler(this.dateTimeInput,"keypress",function(f){return d._raiseEvent(6,f)})},createID:function(){var b=Math.random()+"";b=b.replace(".","");b="99"+b;b=b/1;return"dateTimeInput"+b},setMaxDate:function(b,c){if(b==null){return}if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.maxDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(this._calendar!=null){this._calendar.setMaxDate(b)}if(c!=false){if(this.getDate()!=null&&this.getDate()>b){this.setDate(b)}a.jqx.aria(this,"aria-valuemax",b);this._refreshValue();this._updateText()}},getMaxDate:function(){if(this.maxDate!=null&&this.maxDate!=undefined){return this.maxDate.dateTime}return null},setMinDate:function(b,c){if(b==null){return}if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.minDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(this._calendar!=null){this._calendar.setMinDate(b)}if(c!=false){if(this.getDate()!=null&&this.getDate()<b){this.setDate(b)}a.jqx.aria(this,"aria-valuemin",b);this._refreshValue();this._updateText()}},getMinDate:function(){if(this.minDate!=null&&this.minDate!=undefined){return this.minDate.dateTime}return null},_applyCulture:function(){var d=false;try{if(Globalize!=undefined){d=true}}catch(c){}try{if(a.global){a.global.preferCulture(this.culture);this.localization.calendar=a.global.culture.calendar}else{if(d){var b=Globalize.culture(this.culture);this.localization.calendar=b.calendar}}this._loadItems();if(this._calendar!=null){this._calendar.culture=this.culture;this._calendar.localization=this.localization;this._calendar.render()}}catch(c){}},propertyMap:function(b){if(b=="value"){if(this.selectionMode!="range"){return this.getDate()}else{return this.getRange()}}return null},propertyChangedHandler:function(c,d,f,e){if(c.isInitialized==undefined||c.isInitialized==false){return}if(d=="restrictedDates"){c.calendarContainer.css({restrictedDates:e})}if(d=="popupZIndex"){c.calendarContainer.css({zIndex:e})}if(d=="showCalendarButton"){c._arrange()}if(d=="showTimeButton"){c._arrange();if(c.timePopupElement){c.timePopupElement.remove();c.timePopupElement=null}}if(d=="selectionMode"){c._calendar.selectionMode=e;c.refreshValue()}if(d=="min"){if(typeof(e)=="string"){c.setMinDate(new Date(e))}else{c.setMinDate(e)}}if(d=="max"){if(typeof(e)=="string"){c.setMaxDate(new Date(e))}else{c.setMaxDate(e)}}if(d=="value"){if(e!=null&&e instanceof Date){if(isNaN(e.getFullYear())||isNaN(e.getMonth())||isNaN(e.getDate())){this.value=f;return}e=a.jqx._jqxDateTimeInput.getDateTime(e)}else{if(e!=null&&typeof(e)=="string"){var b=new Date(e);if(b!=undefined&&!isNaN(b)){this.value=a.jqx._jqxDateTimeInput.getDateTime(b)}}}}if(d=="views"){c.calendarContainer.jqxCalendar({views:e})}if(d=="enableViews"){c.calendarContainer.jqxCalendar({enableViews:e})}if(d=="selectableDays"){c.calendarContainer.jqxCalendar({selectableDays:e})}if(d=="showFooter"){c.calendarContainer.jqxCalendar({showFooter:e})}if(d=="rtl"){c.calendarContainer.jqxCalendar({rtl:e});if(e){c.dateTimeInput.css("direction","rtl");c.dateTimeInput.addClass("jqx-rtl")}else{c.dateTimeInput.css("direction","ltr");c.dateTimeInput.removeClass("jqx-rtl")}}if(d=="todayString"||d=="clearString"){c.calendarContainer.jqxCalendar({clearString:c.clearString,todayString:c.todayString})}if(d=="dayNameFormat"){c.calendarContainer.jqxCalendar({dayNameFormat:e})}if(d=="firstDayOfWeek"){c.calendarContainer.jqxCalendar({firstDayOfWeek:e})}if(d=="showWeekNumbers"){c.calendarContainer.jqxCalendar({showWeekNumbers:e})}if(d=="culture"||d=="localization"){c._applyCulture()}else{if(d=="formatString"){c._loadItems()}}if(d=="theme"){a.jqx.utilities.setTheme(f,e,c.host);c.calendarContainer.jqxCalendar({theme:e})}if(d=="width"||d=="height"){c.refresh();return}c._setOption(d,e,f);if(d=="dropDownWidth"||d=="dropDownHeight"){c.calendarContainer.jqxCalendar({width:c.dropDownWidth,height:c.dropDownHeight});c._calendar.render();c.container.height(c.calendarContainer.height());c.container.width(c.calendarContainer.width())}},clear:function(){if(this.allowNullDate){if(this.selectionMode!="range"){this.setDate(null)}else{this._calendar._clicks=1;this.setRange(null,null)}this._calendar._clicks=0}else{if(this.selectionMode!="range"){this.setDate(me.getMinDate())}else{this._calendar._clicks=1;this.setRange(me.getMinDate(),me.getMinDate());this._calendar._clicks=0}}this.hideCalendar()},today:function(){var c=new Date();c.setHours(0,0,0,0);if(this.selectionMode!="range"){this.setDate(c)}else{this._calendar._clicks=0;var b=new Date();b.setHours(23,59,59,0);this.setRange(c,b);this._calendar._clicks=0}this.hideCalendar()},setDate:function(d){var e=this.getDate();if(d!=null&&typeof(d)=="string"){var f=d;if(d.toString().indexOf(",")>=0){d=d.replace(/\,/g,"/");d=new Date(d);if(d=="Invalid Date"){d=f}}if(d.toString().indexOf("-")>=0){d=d.replace(/\-/g,"/");d=new Date(d);if(d=="Invalid Date"){d=f}}if(d!=""){var c=d;if(Globalize!=undefined){d=Globalize.parseDate(c,this.formatString,this.culture)}else{if(a.jqx.dataFormat){d=a.jqx.dataFormat.parsedate(c,this.formatString,this.localization.calendar)}else{d=new Date(d)}}if(d=="Invalid Date"){return}if(d===null&&c!==null){if(c!="Invalid Date"){d=c}}}}if(d==null||d=="null"||d=="undefined"){if(!this.allowNullDate){d=this.min}}if(d=="Invalid Date"){d=null}if(d==null||d=="null"||d=="undefined"||d===""){if(this.value!=null){this.value=null;this._calendar.setDate(null);this._refreshValue();if(this.cookies){if(this.value!=null){a.jqx.cookie.cookie("jqxDateTimeInput"+this.element.id,this.value.dateTime.toString(),this.cookieoptions)}}this._setSelectionStart(0);this._selectGroup(-1);this._raiseEvent("0",d,e);this._raiseEvent("9",d,e)}return}if(d<this.getMinDate()||d>this.getMaxDate()){return}if(this.value==null){this.value=new a.jqx._jqxDateTimeInput.getDateTime(new Date());this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0)}if(d.getFullYear){this.value._setYear(d.getFullYear());this.value._setDay(1);this.value._setMonth(d.getMonth()+1);this.value._setHours(d.getHours());this.value._setMinutes(d.getMinutes());this.value._setSeconds(d.getSeconds());this.value._setMilliseconds(d.getMilliseconds());this.value._setDay(d.getDate())}this._validateTimeRange();this._refreshValue();if(this.cookies){if(this.value!=null){a.jqx.cookie.cookie("jqxDateTimeInput"+this.element.id,this.value.dateTime.toString(),this.cookieoptions)}}var b=this.getDate();var g=(b-e);if(g!=0){this._raiseEvent("0",d,e);this._raiseEvent("9",d,e);return true}},getDate:function(){if(this.value==undefined){return null}return new Date(this.value.dateTime)},getText:function(){return this.dateTimeInput.val()},setRange:function(d,c){if(d=="Invalid Date"){d=null}if(c=="Invalid Date"){c=null}if(d!=null&&typeof(d)=="string"){d=new Date(d);if(d=="Invalid Date"){return}}if(c!=null&&typeof(c)=="string"){c=new Date(c);if(c=="Invalid Date"){return}}if(d&&isNaN(d)&&d.toString()=="NaN"&&typeof(d)!="string"){return}if(c&&isNaN(c)&&c.toString()=="NaN"&&typeof(c)!="string"){return}this._calendar.setRange(d,c);if(c&&d&&(c.valueOf()!=d.valueOf())){this._range={from:d,to:c}}else{this._range=this._calendar.getRange()}var b=d;if(b!=null&&b.getFullYear){if(this.value==null){this.value=new a.jqx._jqxDateTimeInput.getDateTime(new Date());this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0)}this.value._setYear(b.getFullYear());this.value._setMonth(b.getMonth()+1);this.value._setHours(b.getHours());this.value._setMinutes(b.getMinutes());this.value._setSeconds(b.getSeconds());this.value._setMilliseconds(b.getMilliseconds());this.value._setDay(b.getDate())}this._refreshValue();if(this.value){this._raiseEvent("0",this.value.dateTime)}else{this._raiseEvent("0",null)}},getRange:function(){var b=this._calendar.getRange();if(this._range){var d=this._range.from;var c=this._range.to;if(c&&d&&(c.valueOf()!=d.valueOf())){if(b.from){b.from.setHours(d.getHours(),d.getMinutes(),d.getSeconds(),d.getMilliseconds())}if(b.to){b.to.setHours(c.getHours(),c.getMinutes(),c.getSeconds(),c.getMilliseconds())}}}return b},_validateValue:function(e){var b=false;for(var d=0;d<this.items.length;d++){var c=this.editors[d].value;switch(this.items[d].type){case"FORMAT_AMPM":if(c<0){c=0}else{if(c>1){c=1}}break;case"Character":break;case"Day":if(c<1){c=1}else{if(c>31){c=31}}break;case"FORMAT_hh":if(c<1){c=1}else{if(c>12){c=12}}break;case"FORMAT_HH":if(c<0){c=0}else{if(c>23){c=23}}break;case"Millisecond":if(c<0){c=0}else{if(c>999){c=999}}break;case"Minute":if(c<0){c=0}else{if(c>59){c=59}}break;case"Month":if(c<1){c=1}else{if(c>12){c=12}}break;case"ReadOnly":break;case"Second":if(c<0){c=0}else{if(c>59){c=59}}break;case"Year":if(c<this.minDate.year){c=this.minDate.year}else{if(c>this.maxDate.year){c=this.maxDate.year}}break}if(this.editors[d].value!=c){this.editors[d].value=c;b=true}}this.updateValue();if(this.value!=null&&e===true){if(this.value.dateTime>this.maxDate.dateTime){this._internalSetValue(this.maxDate);this._updateEditorsValue()}else{if(this.value.dateTime<this.minDate.dateTime){this._internalSetValue(this.minDate);this._updateEditorsValue()}}this._updateText()}},spinUp:function(){var d=this.value;if(d==null){return}if(this.activeEditor!=null){var b=this.editors.indexOf(this.activeEditor);if(b==-1){return}if(this.items[b].type=="Day"){if(this.value!=null){this.activeEditor.maxValue=this.value._daysInMonth(this.value.year,this.value.month)}}var c=this.activeEditor.positions;this.activeEditor.increaseValue(this.enableAbsoluteSelection);this.activeEditor.positions=c}if(this.isEditing){this.isEditing=false}this.updateValue();this.isEditing=true;this._updateText();var e=this.editors.indexOf(this.activeEditor);if(e>=0){this._selectGroup(e)}},spinDown:function(){var d=this.value;if(d==null){return}if(this.activeEditor!=null){var b=this.editors.indexOf(this.activeEditor);if(b==-1){return}if(this.items[b].type=="Day"){if(this.value!=null){this.activeEditor.maxValue=this.value._daysInMonth(this.value.year,this.value.month)}}var c=this.activeEditor.positions;this.activeEditor.decreaseValue(this.enableAbsoluteSelection);this.activeEditor.positions=c}if(this.isEditing){this.isEditing=false}this.updateValue();this.isEditing=true;this._updateText();var e=this.editors.indexOf(this.activeEditor);if(e>=0){this._selectGroup(e)}},_passKeyToCalendar:function(c){if(c.keyCode==13||c.keyCode==9){this.hideCalendar("selected");return true}else{if(c.keyCode==27){var e=this.calendarContainer;var d=this._calendar;var f=this.closeCalendarAfterSelection;this.closeCalendarAfterSelection=false;d.setDate(this.value.dateTime);this.closeCalendarAfterSelection=f;this.hideCalendar()}}var f=this.closeCalendarAfterSelection;this.closeCalendarAfterSelection=false;var b=this._calendar._handleKey(c);this.closeCalendarAfterSelection=f;return b},handleCalendarKey:function(f,e){var c=a(f.target);var d=a.data(document.body,"openedJQXCalendar"+this.id);if(d!=null){if(d.length>0){var b=e._passKeyToCalendar(f);return b}}return true},_findPos:function(c){if(c==null){return}while(c&&(c.type=="hidden"||c.nodeType!=1||a.expr.filters.hidden(c))){c=c.nextSibling}var b=a(c).coord(true);return[b.left,b.top]},testOffset:function(h,f,c){var g=h.outerWidth();var k=h.outerHeight();var j=a(window).width()+a(window).scrollLeft();var e=a(window).height()+a(window).scrollTop();if(f.left+g>j){if(g>this.host.width()){var d=this.host.coord().left;var b=g-this.host.width();f.left=d-b+2}}if(f.left<0){f.left=parseInt(this.host.coord().left)+"px"}f.top-=Math.min(f.top,(f.top+k>e&&e>k)?Math.abs(k+c+23):0);return f},open:function(b){if(b=="time"){this.timePopup=true}else{this.timePopup=false}this.showCalendar()},close:function(b){this.hideCalendar()},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},initTimePopup:function(){this.timePopupElement=a("<div style='border-style: solid; border-width: 1px;'></div>").appendTo(this.timeContainer);this.timePopupElement.addClass(this.toThemeProperty("jqx-widget-content jqx-widget jqx-date-time-input-popup"));var t="";t+="<table><tbody><tr><td><a class='increment-hour-column' href='javascript:;' data-action='incrementHour'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td><a class='increment-minute-column' href='javascript:;' data-action='incrementMinute'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td><a class='increment-second-column' href='javascript:;' data-action='incrementSecond'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td><a class='increment-millisecond-column' href='javascript:;' data-action='incrementMSSecond'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td class='increment-meridian-column'><a href='javascript:;' data-action='toggleMeridian'><div class='jqx-icon-up'></div></a></td></tr><tr><td><input type='text' class='jqx-timepicker-hour' maxlength='2'></td><td class='separator'>:</td><td><input type='text' class='jqx-timepicker-minute' maxlength='2'></td><td class='separator'>:</td><td><input type='text' class='jqx-timepicker-second' maxlength='2'></td><td class='separator'>:</td><td><input type='text' class='jqx-timepicker-millisecond' maxlength='3'></td><td class='separator'>&nbsp;</td><td><input type='text' class='jqx-timepicker-meridian' maxlength='2'></td></tr><tr><td><a class='decrement-hour-column' href='javascript:;' data-action='decrementHour'><div class='jqx-icon-down'></div></a></td><td class='separator'></td><td><a class='decrement-minute-column' href='javascript:;' data-action='decrementMinute'><div class='jqx-icon-down'></div></a></td><td class='separator'></td><td><a class='decrement-second-column' href='javascript:;' data-action='decrementSecond'><div class='jqx-icon-down'></div></a></td><td class='separator'></td><td><a class='decrement-millisecond-column' href='javascript:;' data-action='decrementMillisecond'><div class='jqx-icon-down'></div></a></td><td class='separator'>&nbsp;</td><td><a class='decrement-meridian-column' href='javascript:;' data-action='toggleMeridian'><div class='jqx-icon-down'></div></a></td></tr></tbody></table>";var m=this._getFormatValue(this.formatString);if(this.selectionMode!="range"){this.timePopupElement[0].innerHTML=t}else{this.timePopupElement[0].innerHTML="<table><tr><td>"+t+"</td><td>-</td><td>"+t+"</td></tr></table>"}this.timePopupElement.find(".jqx-icon-down").addClass(this.toThemeProperty("jqx-icon jqx-icon-arrow-down"));this.timePopupElement.find(".jqx-icon-up").addClass(this.toThemeProperty("jqx-icon jqx-icon-arrow-up"));var g=this.timePopupElement.find("input");g.addClass(this.toThemeProperty("jqx-input"));g.addClass(this.toThemeProperty("jqx-rc-all"));this.addHandler(g,"mousedown",function(v){v.stopPropagation()});var e=function(v){if(v.target.className.indexOf("hour")>=0){n._decrementHour(a(v.target))}if(v.target.className.indexOf("minute")>=0){n._decrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("second")>=0){n._decrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("millisecond")>=0){n._decrementMillisecond(a(v.target))}if(v.target.className.indexOf("meridian")>=0){n._decrementMeridian(a(v.target))}};var l=function(v){if(v.target.className.indexOf("hour")>=0){n._incrementHour(a(v.target))}if(v.target.className.indexOf("minute")>=0){n._incrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("second")>=0){n._incrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("millisecond")>=0){n._incrementMillisecond(a(v.target))}if(v.target.className.indexOf("meridian")>=0){n._incrementMeridian(a(v.target))}};var s=function(w,v){var x=0;if(!w){w=window.event}if(w.originalEvent&&w.originalEvent.wheelDelta){w.wheelDelta=w.originalEvent.wheelDelta}if(w.originalEvent&&w.originalEvent.deltaY!=undefined){x=-w.originalEvent.deltaY}if(w.wheelDelta){x=w.wheelDelta/120}else{if(w.detail){x=-w.detail/3}}if(x){if(document.activeElement==w.target&&w.target.nodeName.toLowerCase()=="input"){if(x<0){e(w)}else{l(w)}}if(w.preventDefault){w.preventDefault()}w.returnValue=false}if(w.preventDefault){w.preventDefault()}w.returnValue=false};this.addHandler(g,"wheel",function(v){s(v)});this.addHandler(g,"keydown",function(w){var v=a(w.target);if(w.ctrlKey){if(w.keyCode==38){if(n.isOpened()){n.hideCalendar("keyboard");n.dateTimeInput.focus();return false}}else{if(w.keyCode==40){if(!n.isOpened()){n.showCalendar("keyboard");n.dateTimeInput.focus();return false}}}}if(w.keyCode==40){e(w);w.preventDefault()}else{if(w.keyCode==38){l(w);w.preventDefault()}else{if(w.keyCode==13){w.preventDefault();n.hideCalendar("keyboard");n.dateTimeInput.focus()}else{if(w.keyCode==27){w.preventDefault();n.hideCalendar("cancel");n.dateTimeInput.focus()}}}}});this.hourInput=a(g[0]);this.minuteInput=a(g[1]);this.secondInput=a(g[2]);this.mssecondInput=a(g[3]);this.meridianInput=a(g[4]);this.hourInput2=a(g[5]);this.minuteInput2=a(g[6]);this.secondInput2=a(g[7]);this.mssecondInput2=a(g[8]);this.meridianInput2=a(g[9]);var n=this;var p=this.timePopupElement.find(".increment-hour-column");this.hourIncrement=a(p[0]);this.hourIncrement2=a(p[1]);this.addHandler(g,"change",function(w){var v=a(w.target);if(v.val().length<=1){v.val("0"+a(w.target).val())}if(w.target.className.indexOf("hour")>=0){var x=parseInt(a(w.target).val());if(m.indexOf("HH")>=0){while(x>24){x=x-24}}else{while(x>12){x=x-12}}if(x<10){x="0"+x}if(v.val()!=x){v.val(x)}}if(w.target.className.indexOf("minute")>=0||w.target.className.indexOf("second")>=0){var x=parseInt(a(w.target).val());while(x>59){x--}if(x<10){x="0"+x}if(v.val()!=x){v.val(x)}}});this._incrementHour=function(v){var w=parseInt(v.val());w++;if(m.indexOf("HH")>=0){if(w>24){w=1}}else{if(w>12){w=1}}if(w<10){w="0"+w}v.val(w)};this._incrementMinuteSecond=function(v){var w=parseInt(v.val());w++;if(w>59){w=0}if(w<10){w="0"+w}v.val(w)};this._incrementMillisecond=function(v){var w=parseInt(v.val());w++;if(w>999){w=0}if(w<10){w="0"+w}v.val(w)};this._incrementMeridian=function(v){var w=v.val();if(w.toLowerCase().indexOf("a")>=0){w="PM"}else{w="AM"}v.val(w)};this._decrementHour=function(v){var w=parseInt(v.val());w--;if(m.indexOf("HH")>=0){if(w<0){w=23}}else{if(w<1){w=12}}if(w<10){w="0"+w}v.val(w)};this._decrementMinuteSecond=function(v){var w=parseInt(v.val());w--;if(w<0){w=59}if(w<10){w="0"+w}v.val(w)};this._decrementMillisecond=function(v){var w=parseInt(v.val());w--;if(w<0){w=999}if(w<10){w="0"+w}v.val(w)};this._decrementMeridian=function(v){var w=v.val();if(w.toLowerCase().indexOf("a")>=0){w="PM"}else{w="AM"}v.val(w)};this.addHandler(this.hourIncrement,"mousedown",function(v){v.stopPropagation();n._incrementHour(n.hourInput)});this.addHandler(this.hourIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementHour(n.hourInput2)});var q=this.timePopupElement.find(".increment-minute-column");this.minuteIncrement=a(q[0]);this.minuteIncrement2=a(q[1]);this.addHandler(this.minuteIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.minuteInput)});this.addHandler(this.minuteIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.minuteInput2)});var c=this.timePopupElement.find(".increment-second-column");this.secondIncrement=a(c[0]);this.secondIncrement2=a(c[1]);this.addHandler(this.secondIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.secondInput)});this.addHandler(this.secondIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.secondInput2)});var d=this.timePopupElement.find(".increment-millisecond-column");this.millisecondsIncrement=a(d[0]);this.millisecondsIncrement2=a(d[1]);this.addHandler(this.millisecondsIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMillisecond(n.mssecondInput)});this.addHandler(this.millisecondsIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMillisecond(n.mssecondInput2)});var j=this.timePopupElement.find(".increment-meridian-column");this.meridianIncrement=a(j[0]);this.meridianIncrement2=a(j[1]);this.addHandler(this.meridianIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMeridian(n.meridianInput)});this.addHandler(this.meridianIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMeridian(n.meridianInput2)});var o=this.timePopupElement.find(".decrement-hour-column");this.hourDecrement=a(o[0]);this.hourDecrement2=a(o[1]);this.addHandler(this.hourDecrement,"mousedown",function(v){v.stopPropagation();n._decrementHour(n.hourInput)});this.addHandler(this.hourDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementHour(n.hourInput2)});var k=this.timePopupElement.find(".decrement-minute-column");this.minuteDecrement=a(k[0]);this.minuteDecrement2=a(k[1]);this.addHandler(this.minuteDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.minuteInput)});this.addHandler(this.minuteDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.minuteInput2)});var u=this.timePopupElement.find(".decrement-second-column");this.secondDecrement=a(u[0]);this.secondDecrement2=a(u[1]);this.addHandler(this.secondDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.secondInput)});this.addHandler(this.secondDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.secondInput2)});var b=this.timePopupElement.find(".decrement-millisecond-column");this.millisecondsDecrement=a(b[0]);this.millisecondsDecrement2=a(b[1]);this.addHandler(this.millisecondsDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMillisecond(n.mssecondInput)});this.addHandler(this.millisecondsDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMillisecond(n.mssecondInput2)});var f=this.timePopupElement.find(".decrement-meridian-column");this.meridianDecrement=a(f[0]);this.meridianDecrement2=a(f[1]);this.addHandler(this.meridianDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMeridian(n.meridianInput)});this.addHandler(this.meridianDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMeridian(n.meridianInput2)});var r=this.timePopupElement.find("table");this.addHandler(this.timePopupElement,"mousedown",function(v){v.stopPropagation()});var h=function(v){var w=v.find("tr");if(m.indexOf("ss")==-1){n.secondInput.hide();n.secondInput2.hide();a(a(w[0]).children()[3]).hide();a(a(w[0]).children()[4]).hide();a(a(w[1]).children()[3]).hide();a(a(w[1]).children()[4]).hide();a(a(w[2]).children()[3]).hide();a(a(w[2]).children()[4]).hide()}if(m.indexOf("tt")==-1&&m.indexOf("hh")==-1){n.meridianInput.hide();n.meridianInput2.hide();a(a(w[0]).children()[7]).hide();a(a(w[0]).children()[8]).hide();a(a(w[1]).children()[7]).hide();a(a(w[1]).children()[8]).hide();a(a(w[2]).children()[7]).hide();a(a(w[2]).children()[8]).hide()}if(m.indexOf("zz")==-1){n.mssecondInput.hide();n.mssecondInput2.hide();a(a(w[0]).children()[5]).hide();a(a(w[0]).children()[6]).hide();a(a(w[1]).children()[5]).hide();a(a(w[1]).children()[6]).hide();a(a(w[2]).children()[5]).hide();a(a(w[2]).children()[6]).hide()}};if(r.length==1){h(r)}else{h(a(a(r)[1]));h(a(a(r)[2]))}},updateTimePopup:function(){var b=this._getFormatValue(this.formatString);if(this.selectionMode!="range"){var f=this.getDate();if(this.hourInput){if(f){var c=f.getHours();var h=f.getMinutes();var g=f.getHours();var e=f.getSeconds();var d=f.getMilliseconds()}else{var c=0;var h=0;var g=0;var e=0;var d=0}if(c>=12){g="PM";if(b.indexOf("HH")==-1){c-=12;if(c==0){c=12}}}else{g="AM"}if(this.meridianInput.css("display")!="none"){if(c==0){c=12}}if(c<10){c="0"+c}if(h<10){h="0"+h}if(e<10){e="0"+e}if(d<10){d="0"+d}this.hourInput.val(c);this.minuteInput.val(h);this.secondInput.val(e);this.mssecondInput.val(d);this.meridianInput.val(g)}}else{var f=this.getRange().from;if(this.hourInput){if(f){var c=f.getHours();var h=f.getMinutes();var g=f.getHours();var e=f.getSeconds();var d=f.getMilliseconds()}else{var c=0;var h=0;var g=0;var e=0;var d=0}if(c>=12){g="PM";if(b.indexOf("HH")==-1){c-=12;if(c==0){c=12}}}else{g="AM"}if(this.meridianInput.css("display")!="none"){if(c==0){c=12}}if(c<10){c="0"+c}if(h<10){h="0"+h}if(e<10){e="0"+e}if(d<10){d="0"+d}this.hourInput.val(c);this.minuteInput.val(h);this.secondInput.val(e);this.mssecondInput.val(d);this.meridianInput.val(g)}var f=this.getRange().to;if(this.hourInput2){if(f){var c=f.getHours();var h=f.getMinutes();var g=f.getHours();var e=f.getSeconds();var d=f.getMilliseconds()}else{var c=0;var h=0;var g=0;var e=0;var d=0}if(c>=12){g="PM";if(b.indexOf("HH")==-1){c-=12;if(c==0){c=12}}}else{g="AM"}if(this.meridianInput.css("display")!="none"){if(c==0){c=12}}if(c<10){c="0"+c}if(h<10){h="0"+h}if(e<10){e="0"+e}if(d<10){d="0"+d}this.hourInput2.val(c);this.minuteInput2.val(h);this.secondInput2.val(e);this.mssecondInput2.val(d);this.meridianInput2.val(g)}}},showCalendar:function(){var m=this.calendarContainer;var q=this._calendar;a.jqx.aria(this,"aria-expanded",true);if(this.showTimeButton){if(this.timePopup){if(!this.timePopupElement){this.initTimePopup()}this.calendarContainer.css("visibility","hidden");this.timeContainer.css("visibility","visible");this.updateTimePopup();var d=this.timeContainer.find("input");var s=0;for(var v=0;v<d.length;v++){if(d[v].style.display!="none"){s+=50}}this.container.width(parseInt(s));if(!this.touch){setTimeout(function(){d[0].focus();a(d[0]).select()},150+this.openDelay)}}else{this.container.width(parseInt(this.calendarContainer.width())+25);this.timeContainer.css("visibility","hidden");this.calendarContainer.css("visibility","visible")}}if(this.value!=null){if(this.selectionMode!="range"){this._oldDT=new Date(this.value.dateTime)}else{this._oldDT=this.getRange()}}else{this._oldDT=null}if(!q.canRender){q.canRender=true;q.render()}var l=this.container;var p=this;var g=a(window).scrollTop();var h=a(window).scrollLeft();var n=parseInt(this._findPos(this.host[0])[1])+parseInt(this.host.outerHeight())-1+"px";var e,r=parseInt(Math.round(this.host.coord(true).left));e=r+"px";var w=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();if((w!=null&&w)){e=a.jqx.mobile.getLeftPos(this.element);n=a.jqx.mobile.getTopPos(this.element)+parseInt(this.host.outerHeight());if(a("body").css("border-top-width")!="0px"){n=parseInt(n)-this._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){e=parseInt(e)-this._getBodyOffset().left+"px"}}this.container.css("left",e);this.container.css("top",n);var c=this.closeCalendarAfterSelection;this.closeCalendarAfterSelection=false;this.isEditing=false;if(p.selectionMode=="default"){this._validateValue();this._updateText();var t=this.value!=null?this.value.dateTime:new Date();q.setDate(t)}this.closeCalendarAfterSelection=c;var b=false;if(this.dropDownHorizontalAlignment=="right"||this.rtl){var k=this.container.outerWidth();var u=Math.abs(k-this.host.outerWidth()+2);if(!this.rtl){u-=2}if(k>this.host.width()){var f=23;this.container.css("left",f+parseInt(Math.round(r))-u+"px")}else{this.container.css("left",25+parseInt(Math.round(r))+u+"px")}}if(this.enableBrowserBoundsDetection){var j=this.testOffset(m,{left:parseInt(this.container.css("left")),top:parseInt(n)},parseInt(this.host.outerHeight()));if(parseInt(this.container.css("top"))!=j.top){b=true;m.css("top",23);m.addClass(this.toThemeProperty("jqx-popup-up"))}else{m.css("top",0)}this.container.css("top",j.top);if(parseInt(this.container.css("left"))!=j.left){this.container.css("left",j.left)}}this._raiseEvent(7,m);if(this.animationType!="none"){this.container.css("display","block");var o=parseInt(m.outerHeight());m.stop();this.isanimating=true;this.opening=true;if(this.animationType=="fade"){m.css("margin-top",0);m.css("opacity",0);m.animate({opacity:1},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.calendarContainer.focus()});if(this.timePopup){this.timeContainer.css("margin-top",0);this.timeContainer.css("opacity",0);this.timeContainer.animate({opacity:1},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.timeContainer.focus()})}}else{m.css("opacity",1);if(this.timePopup){this.timeContainer.css("opacity",1)}if(b){m.css("margin-top",o)}else{m.css("margin-top",-o)}if(this.timePopup){if(b){this.timeContainer.css("margin-top",o)}else{this.timeContainer.css("margin-top",-o)}this.timeContainer.animate({"margin-top":0},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.timeContainer.focus()})}m.animate({"margin-top":0},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.calendarContainer.focus()})}}else{m.stop();p.isanimating=false;p.opening=false;m.css("opacity",1);m.css("margin-top",0);this.container.css("display","block");a.data(document.body,"openedJQXCalendar"+p.id,m);this.calendarContainer.focus();if(this.timePopup){this.timeContainer.stop();this.timeContainer.css("opacity",1);this.timeContainer.css("margin-top",0);this.timeContainer.focus()}}if(this.value==null){if(this._calendar&&this._calendar._getSelectedCell()){this._calendar._getSelectedCell().isSelected=false}}if(this.timePopup){this.timeButtonIcon.addClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.timeButton.addClass(this.toThemeProperty("jqx-fill-state-hover"));this.timeButton.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}else{this.calendarButtonIcon.addClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.calendarButton.addClass(this.toThemeProperty("jqx-fill-state-hover"));this.calendarButton.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}this.host.addClass(this.toThemeProperty("jqx-fill-state-focus"))},hideCalendar:function(k){var h=this.calendarContainer;var b=this.container;var p=this;a.jqx.aria(this,"aria-expanded",false);if(this.showTimeButton){if(this.timeContainer.css("visibility")!="hidden"&&k!="cancel"){if(this.selectionMode!="range"){var e=this.getDate();var g=parseInt(this.hourInput.val());var f=parseInt(this.minuteInput.val());var c=parseInt(this.secondInput.val());var q=parseInt(this.mssecondInput.val());var d=this.meridianInput.val();if(isNaN(g)){g=0}if(isNaN(f)){f=0}if(isNaN(c)){c=0}if(isNaN(q)){q=0}if(this.meridianInput.css("display")!="none"){if(d.toLowerCase().indexOf("p")>=0){if(g<12){g+=12}}if(d.toLowerCase().indexOf("a")>=0){if(g>=12){g-=12}}}if(!e){e=new Date()}e.setHours(g,f,c,q);this.setDate(e)}else{if(this.hourInput&&k!="selected"){var j=this.getRange();var g=parseInt(this.hourInput.val());var f=parseInt(this.minuteInput.val());var c=parseInt(this.secondInput.val());var q=parseInt(this.mssecondInput.val());var d=this.meridianInput.val();if(isNaN(g)){g=0}if(isNaN(f)){f=0}if(isNaN(c)){c=0}if(isNaN(q)){q=0}if(this.meridianInput.css("display")!="none"){if(d.toLowerCase().indexOf("p")>=0){if(g<12){g+=12}}if(d.toLowerCase().indexOf("a")>=0){if(g>=12){g-=12}}}var m=j.from;if(!m){m=new Date()}m.setHours(g,f,c,q);var g=parseInt(this.hourInput2.val());var f=parseInt(this.minuteInput2.val());var c=parseInt(this.secondInput2.val());var q=parseInt(this.mssecondInput2.val());var d=this.meridianInput2.val();if(f==""){f=0}if(c==""){c=0}if(q==""){q=0}if(this.meridianInput2.css("display")!="none"){if(d.toLowerCase().indexOf("p")>=0){if(g<12){g+=12}}if(d.toLowerCase().indexOf("a")>=0){if(g>=12){g-=12}}}var l=j.to;if(!l){l=new Date()}l.setHours(g,f,c,q);if(l.valueOf()<m.valueOf()){return false}this.setRange(m,l)}else{if(k=="selected"){return}}}}}a.data(document.body,"openedJQXCalendar"+this.id,null);if(this.animationType!="none"){var o=h.outerHeight();h.css("margin-top",0);if(this.showTimeButton){this.timeContainer.css("margin-top",0)}this.isanimating=true;var n=-o;if(parseInt(this.container.coord().top)<parseInt(this.host.coord().top)){n=o}if(this.animationType=="fade"){h.animate({opacity:0},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}else{h.animate({"margin-top":n},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}if(this.showTimeButton){if(this.animationType=="fade"){this.timeContainer.animate({opacity:0},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}else{this.timeContainer.animate({"margin-top":n},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}}}else{b.css("display","none")}if(k!=undefined){this._updateSelectedDate(k)}this.timeButtonIcon.removeClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.timeButton.removeClass(this.toThemeProperty("jqx-fill-state-hover"));this.timeButton.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this.calendarButtonIcon.removeClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.calendarButton.removeClass(this.toThemeProperty("jqx-fill-state-hover"));this.calendarButton.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this._raiseEvent(8,h)},_updateSelectedDate:function(){var m=this.value;if(m==null){m=new a.jqx._jqxDateTimeInput.getDateTime(new Date());m._setHours(0);m._setMinutes(0);m._setSeconds(0);m._setMilliseconds(0)}var g=m.hour;var f=m.minute;var c=m.second;var b=m.millisecond;if(this.selectionMode=="range"&&this._calendar.getRange().from==null){this.setDate(null);return}var d=new a.jqx._jqxDateTimeInput.getDateTime(this._calendar.value.dateTime);d._setHours(g);d._setMinutes(f);d._setSeconds(c);d._setMilliseconds(b);var n=this.setDate(d.dateTime);if(this.selectionMode=="range"&&!n&&this._oldDT){var h=this.getRange();var j=this._oldDT;var l=false;var k=false;var e=this._oldDT.from;var d=h.from;if(d!=null&&e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){l=true}}var d=h.to;if(d!=null){e=this._oldDT.to;if(e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){k=true}}}if(l&&k){return true}this._raiseEvent(0,{});this._raiseEvent(9,{})}},_closeOpenedCalendar:function(b){var e=a(b.target);var k=a.data(document.body,"openedJQXCalendar"+b.data.me.id);var d=false;a.each(e.parents(),function(){if(this.className&&this.className.indexOf){if(this.className.indexOf("jqx-calendar")!=-1){d=true;return false}if(this.className.indexOf("jqx-date-time-input-popup")!=-1){d=true;return false}if(this.className.indexOf("jqx-input")!=-1){return false}}});if(a(b.target).ischildof(b.data.me.host)){return true}if(b.target!=null&&(b.target.tagName=="B"||b.target.tagName=="b")){var l=b.data.me.host.coord();var n=b.data.me.host.width();var c=b.data.me.host.height();var m=parseInt(l.top);var g=parseInt(l.left);if(m<=b.pageY&&b.pageY<=m+c){if(g<=b.pageX&&b.pageX<=g+n){return true}}}if(k!=null&&!d){if(k.length>0){var h=k[0].id.toString();var f=h.toString().substring(13);var j=a(document).find("#"+f);var o=b.data.me.hideCalendar();if(o!==false){a.data(document.body,"openedJQXCalendar"+b.data.me.id,null)}}}},_loadItems:function(){if(this.value!=null){this.items=new Array();var d=this._getFormatValue(this.formatString);this.items=this._parseFormatValue(d);this.editors=new Array();for(var b=0;b<this.items.length;b++){var c=this.items[b].getDateTimeEditorByItemType(this.value,this);this.editors[b]=c}}this._updateEditorsValue();this._updateText()},_updateText:function(){var d=this;var e="";if(d.items.length==0&&d.value!=null){d._loadItems()}if(d.value!=null){if(d.items.length>=1){e=d.format(d.value,0,d.items.length)}var b=d.dateTimeInput.val();if(b!=e){d._raiseEvent(1,d.value)}}if(d.selectionMode=="range"){var c=d.getRange();fromText=d.format(d.value,0,d.items.length);if(c.to){var g=a.jqx._jqxDateTimeInput.getDateTime(c.from);fromText=d.format(g,0,d.items.length);var f=a.jqx._jqxDateTimeInput.getDateTime(c.to);toText=d.format(f,0,d.items.length);var e=fromText+" - "+toText;if(e==" - "){e=""}}else{e=""}}d.dateTimeInput.val(e)},format:function(g,h,f){var b="";for(var e=h;e<f;++e){var c=this.items[e].dateParser(g,this);if(this.isEditing&&this.items[e].type!="ReadOnly"){if(this.selectionMode!="range"){var d=this.items[e].type=="Day"&&this.items[e].format.length>2;if(this.items[e].type=="FORMAT_AMPM"){d=true;if(this.editors[e].value==0){c=this.editors[e].amString}else{c=this.editors[e].pmString}}if(!d){c=this.items[e].dateParserInEditMode(new Number(this.editors[e].value),"d"+this.editors[e].maxEditPositions,this);while(c.length<this.editors[e].maxEditPositions){c="0"+c}}}}b+=c}return b},_getFormatValueGroupLength:function(b){for(i=1;i<b.toString().length;++i){if(b.substring(i,i+1)!=b.substring(0,1)){return i}}return b.length},_parseFormatValue:function(h){var c=new Array();var f=h.toString();var e=0;while(f.length>0){var d=this._getFormatValueGroupLength(f);var g=null;switch(f.substring(0,1)){case":":case"/":d=1;g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,1),"ReadOnly",this.culture);break;case'"':case"'":var b=f.indexOf(f[0],1);g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(1,1+Math.max(1,b-1)),"ReadOnly",this.culture);d=Math.max(1,b+1);break;case"\\":if(f.length>=2){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(1,1),"ReadOnly",this.culture);d=2}break;case"d":case"D":if(d>2){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Day",this.culture)}else{g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Day",this.culture)}break;case"f":case"F":if(d>7){d=7}if(d>3){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"ReadOnly",this.culture)}else{g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Millisecond",this.culture)}break;case"g":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"ReadOnly",this.culture);break;case"h":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"FORMAT_hh",this.culture);break;case"H":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"FORMAT_HH",this.culture);break;case"m":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Minute",this.culture);break;case"M":if(d>4){d=4}g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Month",this.culture);break;case"s":case"S":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Second",this.culture);break;case"t":case"T":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"FORMAT_AMPM",this.culture);break;case"y":case"Y":if(d>1){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Year",this.culture)}else{d=1;g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,1),dateTimeFormatInfo,"ReadOnly",this.culture)}break;case"z":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"ReadOnly",this.culture);break;default:d=1;g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,1),"ReadOnly",this.culture);break}c[e]=a.extend(true,{},g);f=f.substring(d);e++}return c},_getFormatValue:function(b){if(b==null||b.length==0){b="d"}if(b.length==1){switch(b.substring(0,1)){case"d":return this.localization.calendar.patterns.d;case"D":return this.localization.calendar.patterns.D;case"t":return this.localization.calendar.patterns.t;case"T":return this.localization.calendar.patterns.T;case"f":return this.localization.calendar.patterns.f;case"F":return this.localization.calendar.patterns.F;case"M":return this.localization.calendar.patterns.M;case"Y":return this.localization.calendar.patterns.Y;case"S":return this.localization.calendar.patterns.S}}if(b.length==2&&b.substring(0,1)=="%"){b=b.substring(1)}return b},_updateEditorsValue:function(){var j=this.value;if(j==null){return}var g=j.year;var h=j.day;var d=j.hour;var l=j.millisecond;var b=j.second;var c=j.minute;var f=j.month;if(this.items==null){return}for(var e=0;e<this.items.length;e++){switch(this.items[e].type){case"FORMAT_AMPM":var k=d%12;if(k==0){k=12}if(d>=0&&d<12){this.editors[e].value=0}else{this.editors[e].value=1}break;case"Day":this.editors[e].value=h;break;case"FORMAT_hh":var k=d%12;if(k==0){k=12}this.editors[e].value=k;break;case"FORMAT_HH":this.editors[e].value=d;break;case"Millisecond":this.editors[e].value=l;break;case"Minute":this.editors[e].value=c;break;case"Month":this.editors[e].value=f;break;case"Second":this.editors[e].value=b;break;case"Year":this.editors[e].value=g;break}}},updateValue:function(){if(this.isEditing){return}if(this.items&&this.items.length==0){return}var o=0;var s=1;var B=1;var l=0;var d=0;var I=0;var u=0;var H=1;var h=0;var m=false;var r=false;var C=false;var c=false;var b=false;var q=false;var x=false;var t=new Array();var e=null;var y=0;for(var A=0;A<this.items.length;A++){switch(this.items[A].type){case"FORMAT_AMPM":h=this.editors[A].value;e=this.editors[A];break;case"Character":break;case"Day":if(this.items[A].format.length<3){B=this.editors[A].value;t[y++]=this.editors[A];if(B==0){B=1}C=true}break;case"FORMAT_hh":var E=this.editors[A];l=E.value;c=true;break;case"FORMAT_HH":l=this.editors[A].value;c=true;break;case"Millisecond":d=this.editors[A].value;x=true;break;case"Minute":u=this.editors[A].value;b=true;break;case"Month":H=this.editors[A].value;r=true;if(H==0){H=1}break;case"ReadOnly":break;case"Second":I=this.editors[A].value;q=true;break;case"Year":m=true;s=this.editors[A].value;var G=this.editors[A].getDateTimeItem().format;if(G.length<3){var w="1900";if(w.Length==4){var v=""+w[0]+w[1];var D;D=parseInt(v);s=s+(D*100)}}if(s==0){s=1}break}}var F=this.value!=null?new Date(this.value.dateTime):null;if(s>0&&H>0&&B>0&&u>=0&&l>=0&&I>=0&&d>=0){var J=this.value;if(J!=null){if(!m){s=J.year}if(!r){H=J.month}if(!C){B=J.day}}try{if(H>12){H=12}if(H<1){H=1}if(J._daysInMonth(s,H)<=B){B=J._daysInMonth(s,H);if(t!=null&&t.length>0){for(A=0;A<t.length;A++){t[A].value=B}}}if(e!=null){if(e.value==0){if(l>=12){l-=12}}else{if(l+12<24){l+=12}}}var g=this.value.dateTime.getDate();this.value._setYear(parseInt(s));this.value._setDay(B);this.value._setMonth(H);if(c){this.value._setHours(l)}if(b){this.value._setMinutes(u)}if(q){this.value._setSeconds(I)}if(x){this.value._setMilliseconds(d)}this._validateTimeRange()}catch(j){this.value=J}if(F!=null){var z=this.value.dateTime.getFullYear()==F.getFullYear()&&this.value.dateTime.getDate()==F.getDate()&&this.value.dateTime.getMonth()==F.getMonth()&&this.value.dateTime.getHours()==F.getHours()&&this.value.dateTime.getMinutes()==F.getMinutes()&&this.value.dateTime.getSeconds()==F.getSeconds();if(!z){if(this.changing){var n=this.changing(F,this.value.dateTime);if(n){this.value=a.jqx._jqxDateTimeInput.getDateTime(n)}}this._raiseEvent("0",this.value.dateTime);if(this.cookies){if(this.value!=null){a.jqx.cookie.cookie("jqxDateTimeInput"+this.element.id,this.value.dateTime.toString(),this.cookieoptions)}}if(this.change){this.change(this.value.dateTime)}}}}var f=this.editors.indexOf(this.activeEditor);var p=this.items[f];if(this.value){if(this.calendarContainer.jqxCalendar("_isDisabled",this.value.dateTime)){this.dateTimeInput.addClass(this.toThemeProperty("jqx-input-invalid"))}else{this.dateTimeInput.removeClass(this.toThemeProperty("jqx-input-invalid"))}}},_internalSetValue:function(b){this.value._setYear(parseInt(b.year));this.value._setDay(b.day);this.value._setMonth(b.month);this.value._setHours(b.hour);this.value._setMinutes(b.minute);this.value._setSeconds(b.second);this.value._setMilliseconds(b.milisecond)},_raiseEvent:function(c,o,f){var n=this.events[c];var g={};g.owner=this;if(o==null){o={}}if(f==null){f=o}var m=o.charCode?o.charCode:o.keyCode?o.keyCode:0;var p=true;var l=this.readonly;var b=new a.Event(n);b.owner=this;b.args=g;b.args.date=this.getDate();this.element.value=this.dateTimeInput.val();if(c==9&&this.selectionMode!="range"){var d=b.args.date;if(this._oldDT){if(d!=null){if(!(d.getFullYear()!=this._oldDT.getFullYear()||d.getMonth()!=this._oldDT.getMonth()||d.getDate()!=this._oldDT.getDate()||d.getHours()!=this._oldDT.getHours()||d.getMinutes()!=this._oldDT.getMinutes()||d.getSeconds()!=this._oldDT.getSeconds())){return true}}a.jqx.aria(this,"aria-valuenow",this.getDate());a.jqx.aria(this,"aria-valuetext",this.getText());if(this.getDate()!=null){a.jqx.aria(this,"aria-label","Current focused date is "+this.getDate().toLocaleString())}else{a.jqx.aria(this,"aria-label","Current focused date is Null")}}b.args.oldValue=f;b.args.newValue=b.args.date;if(this._oldDT){b.args.oldValue=this._oldDT}}if(this.selectionMode=="range"){b.args.date=this.getRange();if(this._oldDT){var d=b.args.date.from;if(c==9){var k=false;var j=false;var e=this._oldDT.from;if(d!=null&&e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){k=true}}var d=b.args.date.to;if(d!=null){e=this._oldDT.to;if(e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){j=true}}}if(k&&j){return true}var k=b.args.date.from;if(k==null){k=""}else{k=k.toString()}var j=b.args.date.to;if(j==null){j=""}else{j=j.toString()}a.jqx.aria(this,"aria-valuenow",k+"-"+j);a.jqx.aria(this,"aria-valuetext",this.getText());if(k&&j){a.jqx.aria(this,"aria-label","Current focused range is "+k.toLocaleString()+"-"+j.toLocaleString())}}}b.args.oldValue=f;b.args.newValue=b.args.date;if(this._oldDT){b.args.oldValue=this._oldDT}}if(this.host.css("display")=="none"){return true}if(c!=2&&c!=3&&c!=4&&c!=5&&c!=6){p=this.host.trigger(b);if(b.stopPropagation){b.stopPropagation()}}var h=this;if(!l){if(c==2&&!this.disabled){setTimeout(function(){h.isEditing=true;if(this.selectionMode=="range"){h._selectGroup(-1)}else{h._selectGroup(-1)}},25)}}if(c==4){if(l||this.disabled){if(m==8||m==46){this.isEditing=false;if(this.allowKeyboardDelete){if(this.allowNullDate){this.setDate(null)}else{if(this.selectionMode!="range"){this.setDate(this.getMinDate())}else{this.setRange(this.getMinDate(),this.getMinDate())}}}}if(m==9){return true}if(!o.altKey){return false}}p=this._handleKeyDown(o,m)}else{if(c==5){if(m==9){return true}if(l||this.disabled){return false}}else{if(c==6){if(m==9){return true}if(l||this.disabled){return false}p=this._handleKeyPress(o,m)}}}return p},_doLeftKey:function(){if(this.activeEditor!=null){if(!this.isEditing){this.isEditing=true}var b=this.activeEditor;var d=false;var e=this.editors.indexOf(this.activeEditor);var c=e;if(this.enableAbsoluteSelection){if(e>=0&&this.activeEditor.positions>0){this.activeEditor.positions--;this._selectGroup(e);return}}while(e>0){this.activeEditor=this.editors[--e];this._selectGroup(e);if(this.items[e].type!="ReadOnly"){d=true;break}}if(!d){if(c>=0){this.activeEditor=this.editors[c]}}if(this.activeEditor!=null&&b!=this.activeEditor){if(this.items[e].type!="ReadOnly"){if(this.enableAbsoluteSelection){this.activeEditor.positions=this.activeEditor.maxEditPositions-1}else{this.activeEditor.positions=0}}}if(this.activeEditor!=b){this._validateValue();this._updateText();this._selectGroup(this.editors.indexOf(this.activeEditor));return true}else{return false}}},_doRightKey:function(){if(this.activeEditor!=null){if(!this.isEditing){this.isEditing=true}var b=this.activeEditor;var d=false;var e=this.editors.indexOf(this.activeEditor);var c=e;if(this.enableAbsoluteSelection){if(e>=0&&this.activeEditor.positions<this.activeEditor.maxEditPositions-1){this.activeEditor.positions++;this._selectGroup(e);return}}while(e<=this.editors.length-2){this.activeEditor=this.editors[++e];this._selectGroup(e);if(this.items[e].type!="ReadOnly"){if(this.items[e].type=="Day"&&this.items[e].format.length>2){break}d=true;break}}if(!d){if(c>=0){this.activeEditor=this.editors[c]}}if(this.activeEditor!=null&&this.activeEditor!=b){if(this.items[e].type!="ReadOnly"){this.activeEditor.positions=0}}if(this.activeEditor!=b){this._validateValue();this._updateText();this._selectGroup(this.editors.indexOf(this.activeEditor));return true}else{return false}}},_saveSelectedText:function(){var b=this._selection();var d="";var c=this.dateTimeInput.val();if(b.start>0||b.length>0){for(i=b.start;i<b.end;i++){d+=c[i]}}if(window.clipboardData){window.clipboardData.setData("Text",d)}return d},_selectWithAdvancePattern:function(){var f=this.editors.indexOf(this.activeEditor);var g=false;if(this.items[f].type!="ReadOnly"){g=true}if(!g){return}var d=this.activeEditor;if(d!=null){var e=d.positions==d.maxEditPositions;if(e){this.editorText="";var c=d.value;var b=false;switch(this.items[f].type){case"FORMAT_AMPM":if(c<0){c=0}else{if(c>1){c=1}}break;case"Character":break;case"Day":if(c<1){c=1}else{if(c>31){c=31}}break;case"FORMAT_hh":if(c<1){c=1}else{if(c>12){c=12}}break;case"FORMAT_HH":if(c<0){c=0}else{if(c>23){c=23}}break;case"Millisecond":if(c<0){c=0}else{if(c>99){c=99}}break;case"Minute":if(c<0){c=0}else{if(c>59){c=59}}break;case"Month":if(c<1){c=1}else{if(c>12){c=12}}break;case"ReadOnly":break;case"Second":if(c<0){c=0}else{if(c>59){c=59}}break;case"Year":if(c<this.minDate.year){c=this.minDate.year}else{if(c>this.maxDate.year){c=this.maxDate.year}}break}if(d.value!=c){b=true}if(!b){this.isEditing=false;this._validateValue();this._updateText();this.isEditing=true;this._doRightKey();return true}return false}}},_handleKeyPress:function(k,o){var n=this._selection();var b=this;var d=k.ctrlKey||k.metaKey;if((d&&o==97)||(d&&o==65)){return true}if(o==8){if(n.start>0){b._setSelectionStart(n.start)}return false}if(o==46){if(n.start<this.items.length){b._setSelectionStart(n.start)}return false}if(n.start>=0){var f=String.fromCharCode(o);var l=parseInt(f);if(f=="p"||f=="a"||f=="A"||f=="P"){if(this.activeEditor.item.type=="FORMAT_AMPM"){if(this.activeEditor.value==0&&(f=="p"||f=="P")){this.spinUp()}else{if(this.activeEditor.value==1&&(f=="a"||f=="A")){this.spinDown()}}}}if(!isNaN(l)){if(this.container.css("display")=="block"){this.hideCalendar()}this.updateValue();this._updateText();var h=false;var j=this.editors.indexOf(this.activeEditor);var c=null;this.isEditing=true;if(j.type!="ReadOnly"){c=this.activeEditor}if(c!=null&&c.positions==0){this.editorText=""}if(this.activeEditor==null){this.activeEditor=this.editors[0]}if(this.activeEditor==null){return false}this.activeEditor.insert(f);if(c!=null&&this.editorText.length>=c.maxEditPositions){this.editorText=""}this.editorText+=f;var p=this._selectWithAdvancePattern();if(this.activeEditor.positions==this.activeEditor.maxEditPositions){var g=this._getLastEditableEditorIndex();if(this.editors.indexOf(this.activeEditor)==g&&p&&this.enableAbsoluteSelection){this.activeEditor.positions=this.activeEditor.maxEditPositions-1}else{this.activeEditor.positions=0}}h=true;this.updateValue();this._updateText();this._selectGroup(this.editors.indexOf(this.activeEditor));return false}}var m=this._isSpecialKey(o);return m},_getLastEditableEditorIndex:function(){var b=0;var c=this;for(itemIndex=this.items.length-1;itemIndex>=0;itemIndex--){if(this.items[itemIndex].type!="ReadOnly"){return itemIndex}}return -1},_handleKeyDown:function(h,o){var g=this;this.timePopup=false;if(o==84){this.timePopup=true}if(h.keyCode==115){if(g.isOpened()){g.hideCalendar("keyboard");return false}else{if(!g.isOpened()){g.showCalendar("keyboard");return false}}}if(h.altKey){if(h.keyCode==38){if(g.isOpened()){g.hideCalendar("keyboard");return false}}else{if(h.keyCode==40){if(!g.isOpened()){g.showCalendar("keyboard");return false}}}}else{if(h.ctrlKey){this.timePopup=true;if(h.keyCode==38){if(g.isOpened()){g.hideCalendar("keyboard");return false}}else{if(h.keyCode==40){if(!g.isOpened()){g.showCalendar("keyboard");return false}}}}}if(g.isOpened()){if(h.keyCode==9){g.hideCalendar("selected");return true}return}var m=g._selection();var b=h.ctrlKey||h.metaKey;if((b&&o==99)||(b&&o==67)){g._saveSelectedText(h);return true}if((b&&o==122)||(b&&o==90)){return false}if((b&&o==118)||(b&&o==86)||(h.shiftKey&&o==45)){var l=g.val();var j=this;var c=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');a("body").append(c);c.select();setTimeout(function(){var e=c.val();j.setDate(e);c.remove()},100);return true}if(o==8||o==46){if(!h.altKey&&!b&&o==46){g.isEditing=false;if(g.allowKeyboardDelete){if(g.allowNullDate){g.setDate(null)}else{if(g.selectionMode!="range"){g.setDate(g.getMinDate())}else{g.setRange(g.getMinDate(),g.getMinDate())}}}}else{if(g.activeEditor!=null){var f=g.editors.indexOf(g.activeEditor);if(g.activeEditor.positions>=0){var d=g._format(Number(g.activeEditor.value),"d"+g.activeEditor.maxEditPositions,g.culture);tmp=d;tmp=tmp.substring(0,g.activeEditor.positions)+"0"+tmp.substring(g.activeEditor.positions+1);if(parseInt(tmp)<g.activeEditor.minValue){tmp=g._format(Number(g.activeEditor.minValue),"d"+g.activeEditor.maxEditPositions,g.culture)}if(g.enableAbsoluteSelection){g.activeEditor.value=tmp}else{g.activeEditor.value=g.activeEditor.minValue}g._validateValue();g._updateText();if(o==8){var n=this;if(g.enableAbsoluteSelection&&g.activeEditor.positions>0){setTimeout(function(){n.activeEditor.positions=n.activeEditor.positions-1;n._selectGroup(f)},10)}else{setTimeout(function(){n._doLeftKey()},10)}}else{g._selectGroup(f)}}else{g._doLeftKey()}}}return false}if(o==38){this.spinUp();return false}else{if(o==40){this.spinDown();return false}}if(o==9){if(h.shiftKey){var p=this._doLeftKey()}else{var p=this._doRightKey()}if(!p){return true}else{return false}}if(o==37){if(this._editor){var p=this._doLeftKey();if(!p){this.isEditing=false;this._validateValue()}return !p}else{var p=this._doLeftKey();return false}}else{if(o==39||o==191){if(this._editor){var p=this._doRightKey();if(!p){this.isEditing=false;this._validateValue()}return !p}else{var p=this._doRightKey();return false}}}var k=this._isSpecialKey(o);if(this.value==null&&(o>=48&&o<=57||o>=96&&o<=105)){if(new Date()>=this.getMinDate()&&new Date()<=this.getMaxDate()){this.setDate(new Date())}else{this.setDate(this.getMaxDate())}}if(!a.jqx.browser.mozilla){return true}if(a.jqx.browser.mozilla&&a.jqx.browser.version>24){return true}return k},_isSpecialKey:function(b){if(b!=8&&b!=9&&b!=13&&b!=35&&b!=36&&b!=37&&b!=39&&b!=27&&b!=46){return false}return true},_selection:function(){if("selectionStart" in this.dateTimeInput[0]){var f=this.dateTimeInput[0];var g=f.selectionEnd-f.selectionStart;return{start:f.selectionStart,end:f.selectionEnd,length:g,text:f.value}}else{var c=document.selection.createRange();if(c==null){return{start:0,end:f.value.length,length:0}}var b=this.dateTimeInput[0].createTextRange();var d=b.duplicate();b.moveToBookmark(c.getBookmark());d.setEndPoint("EndToStart",b);var g=c.text.length;return{start:d.text.length,end:d.text.length+c.text.length,length:g,text:c.text}}},_selectGroup:function(k,m){if(this.host.css("display")=="none"){return}if(this.readonly){return}if(!m){var m=this._selection()}var f="";var b="";var c=null;for(var d=0;d<this.items.length;d++){b=this.items[d].dateParser(this.value,this);if(this.isEditing&&this.items[d].type!="ReadOnly"){var j=this.items[d].type=="Day"&&this.items[d].format.length>2;if(!j&&this.items[d].type!="FORMAT_AMPM"){b=this.items[d].dateParserInEditMode(new Number(this.editors[d].value),"d"+this.editors[d].maxEditPositions,this);while(b.length<this.editors[d].maxEditPositions){b="0"+b}}}f+=b;if(this.items[d].type=="ReadOnly"){continue}if(this.items[d].type=="Day"&&this.items[d].format.length>2){continue}if(k!=undefined&&k!=-1){if(d>=k){var l=f.length-b.length;var e=b.length;if(this.enableAbsoluteSelection){if(!isNaN(parseInt(b))&&this.isEditing&&k!=-1){e=1;l+=this.editors[d].positions}}if(l==this.dateTimeInput.val().length){l--}this._setSelection(l,l+e);c=this.editors[d];this.activeEditor=c;break}}else{if(f.length>=m.start){c=this.editors[d];this.activeEditor=c;var l=f.length-b.length;var e=1;if(this.enableAbsoluteSelection){if(!isNaN(parseInt(b))&&this.isEditing&&k!=-1){e=1;l+=this.editors[d].positions}}else{e=b.length}this._setSelection(l,l+e);break}}}if(d<this.items.length&&k==-1){if(this.items[d].type!="ReadOnly"){this.activeEditor.positions=0}}var h=this._selection();if(h.length==0){if(h.start>0){var g=this._getLastEditableEditorIndex();if(g>=0){}}}},_getLastEditableEditorIndex:function(){var b=-1;for(i=0;i<this.editors.length;i++){if(this.items[i].type=="ReadOnly"){continue}if(this.items[i].type=="Day"&&this.items[i].format.length>2){continue}b=i}return b},_setSelection:function(e,b){try{if("selectionStart" in this.dateTimeInput[0]){this.dateTimeInput[0].setSelectionRange(e,b)}else{var c=this.dateTimeInput[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",e);c.select()}}catch(d){}},_setSelectionStart:function(b){this._setSelection(b,b)},destroy:function(){this.host.removeClass("jqx-rc-all");if(this.timePopupElement){this.timePopupElement.remove()}this._calendar.destroy();this.container.remove();this._removeHandlers();this.dateTimeInput.remove();this.host.remove()},refreshValue:function(){this._refreshValue()},refresh:function(b){if(b!=true){this._setSize();this._arrange()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_setOption:function(b,c,d){if(b==="value"){if(this.selectionMode!="range"){this._oldDT=null}else{this._oldDT=null}this.value=c;this._refreshValue();this._raiseEvent(9,{type:"api"})}if(b=="maxDate"){this._calendar.maxDate=c;this._raiseEvent(9,{type:"api"})}if(b=="minDate"){this._calendar.minDate=c;this._raiseEvent(9,{type:"api"})}if(b=="showCalendarButton"){if(c){this.calendarButton.css("display","block")}else{this.calendarButton.css("display","none")}}if(b=="disabled"){this.dateTimeInput.attr("disabled",c)}if(b=="readonly"){this.readonly=c;this.dateTimeInput.css("readonly",c)}if(b=="textAlign"){this.dateTimeInput.css("text-align",c);this.textAlign=c}if(b=="width"){this.width=c;this.width=parseInt(this.width);this._arrange()}else{if(b=="height"){this.height=c;this.height=parseInt(this.height);this._arrange()}}},_refreshValue:function(){this._updateEditorsValue();this.updateValue();this._validateValue();this._updateText()}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.DateTimeFormatItem={};a.extend(a.jqx._jqxDateTimeInput.DateTimeFormatItem,{_create:function(d,c,b){this.format=d;this.type=c;this.culture=b;return this},_itemValue:function(){switch(this.format.length){case 1:return 9;case 2:return 99;case 3:default:return 999}},_maximumValue:function(){switch(this.format.length){case 1:return 9;case 2:return 99;case 3:default:return 999}},dateParser:function(b,c){if(b==null){return""}var d=c._format(b.dateTime,this.format.length==1?"%"+this.format:this.format,this.culture);return d},dateParserInEditMode:function(e,d,b){if(e==null){return""}var c=b._format(e.toString(),d.length==1?"%"+d:d,this.culture);return c},getDateTimeEditorByItemType:function(n,e){switch(this.type){case"FORMAT_AMPM":var f=a.jqx._jqxDateTimeInput.AmPmEditor._createAmPmEditor(this.format,n.hour/12,e.localization.calendar.AM[0],e.localization.calendar.PM[0],this,e);var d=a.extend({},f);return d;case"Character":return null;case"Day":var k=n.year;var s=n.month;var r;if(this.format.length==3){r=e.localization.calendar.days.namesAbbr}else{if(this.format.length>3){r=e.localization.calendar.days.names}else{r=null}}var t=n.day;if(r!=null){t=n.dayOfWeek+1}var g=a.jqx._jqxDateTimeInput.DateEditor._createDayEditor(n,n.day,1,n._daysInMonth(k,s),this.format.length==1?1:2,2,r,this,e);var d=a.extend({},g);return d;case"FORMAT_hh":var c=n.hour%12;if(c==0){c=12}var q=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(c,1,12,this.format.length==1?1:2,2,this,e);var d=a.extend({},q);return d;case"FORMAT_HH":var h=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.hour,0,23,this.format.length==1?1:2,2,this,e);var d=a.extend({},h);return d;case"Millisecond":var l=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.millisecond/this._itemValue(),0,this._maximumValue(),this.format.length,this.format.length,this,e);var d=a.extend({},l);return d;case"Minute":var o=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.minute,0,59,this.format.length==1?1:2,2,this,e);var d=a.extend({},o);return d;case"Month":var j;if(this.format.length==3){j=e.localization.calendar.months.namesAbbr}else{if(this.format.length>3){j=e.localization.calendar.months.names}else{j=null}}var m=a.jqx._jqxDateTimeInput.DateEditor._createMonthEditor(n.month,this.format.length==2?2:1,j,this,e);var d=a.extend({},m);return d;case"ReadOnly":return a.jqx._jqxDateTimeInput.DisabledEditor._create(this.format.length,n.day,this,e);case"Second":var b=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.second,0,59,this.format.length==1?1:2,2,this,e);var d=a.extend({},b);return d;case"Year":var p=a.jqx._jqxDateTimeInput.DateEditor._createYearEditor(n.year,4,this,e);var d=a.extend({},p);return d}return null}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.DateEditor=a.extend(a.jqx._jqxDateTimeInput.DateEditor,{formatValueLength:0,handleYears:false,handleDays:false,handleMonths:false,positions:0,value:0,minEditPositions:0,maxEditPositions:0,minValue:0,maxValue:0,item:null,dateTimeFormatInfo:null,days:null,dateTimeMonths:null,lastDayInput:null,minPositions:function(){if(this.handleYears){if(this.formatValueLength==4){if(this.positions<=1){return 1}else{if(this.positions>=4){return 4}}return this.positions}else{return this.minEditPositions}}return this.minEditPositions},initializeFields:function(e,f,b,d,c){this.minValue=e;this.maxValue=f;this.minEditPositions=b;this.maxEditPositions=d;this.updateActiveEditor(e);this.item=c},_createYearEditor:function(e,d,c,b){a.jqx._jqxDateTimeInput.DateEditor=a.extend(true,{},this);this.initializeFields(d<=4?0:0,d<4?99:9999,(d==2)?2:1,d>3?4:2,c);this.initializeYearEditor(e,d,c.culture);this.handleYears=true;this.that=b;return this},initializeYearEditor:function(d,c,e){this.formatValueLength=c;this.dateTimeFormatInfo=e;var b=d;b=Math.min(b,9999);b=Math.max(b,1);b=this.formatValueLength<4?b%100:b;this.updateActiveEditor(b);this.value=b},updateActiveEditor:function(b){this.value=b;this.positions=0},_createDayEditor:function(b,j,h,e,c,f,g,k,d){a.jqx._jqxDateTimeInput.DateEditor=a.extend(true,{},this);this.initializeFields(h,e,1,f,k);this.currentValue=b;this.value=j;this.days=g;this.handleDays=true;this.that=d;return this},getDayOfWeek:function(b){if(typeof this.currentValue==a.jqx._jqxDateTimeInput.DateTime){this.currentValue.dayOfWeek()}return b},defaultTextValue:function(){var d=this.value;var e=this.minEditPositions;var b=e;var c=this.that._format(this.value,"d"+b,"");return c},textValue:function(){if(this.handleDays){if(this.days==null){return this.defaultTextValue()}else{var b=(this.value%7)+1;b=this.getDayOfWeek(b);return this.days[b]}}else{if(this.handleMonths){if(this.dateTimeMonths==null||this.value<1||this.value>12){return this.defaultTextValue()}else{return this.dateTimeMonths[this.value-1]}}}return this.defaultTextValue()},defaultInsertString:function(c){if(c==null){return this.deleteValue()}if(c.length==0){return this.deleteValue()}var g=c.substring(0,1);if(isNaN(g)){return}var e=true;var d;var b=1;var f=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);d=f;if(this.positions>=this.maxEditPositions){this.positions=0}d=d.substring(0,this.positions)+g+d.substring(this.positions+1);d=this.setValueByString(d,b);return true},setValueByString:function(d,b){d=this.fixValueString(d);var c=new Number(d);this.value=c;this.positions+=b;return d},fixValueString:function(b){if(b.length>this.maxEditPositions){b=b.substring(b.length-this.maxEditPositions)}return b},initializeValueString:function(c){var b;b="";if(this.hasDigits()){b=c}return b},deleteValue:function(){if(this.value==this.minValue&&this.hasDigits()==false){return false}this.updateActiveEditor(this.minValue);return true},hasDigits:function(){return this.positions>0},insert:function(b){if(this.handleDays){if(this.days!=null){var c=false;c=this.insertLongString(b,c);if(c){return c}c=this.insertShortString(b,c);if(c){return c}}if(this.value==1&&this.lastDayInput!=null&&this.lastDayInput.toString().length>0&&this.lastDayInput.toString()=="0"){this.value=0}this.lastDayInput=b;return this.defaultInsertString(b)}else{if(this.handleMonths){if(this.dateTimeMonths!=null){var c=false;c=this.insertLongString2(b,c);if(c){return c}c=this.insertShortString2(b,c);if(c){return c}}}}return this.defaultInsertString(b)},insertShortString:function(d,e){if(d.length==1){for(i=0;i<6;++i){var c=(this.value+i)%7+1;var b=this.days[c-1];if(b.substring(0,1)==d){this.updateActiveEditor(c);e=true;return e}}}return e},insertLongString:function(c,d){if(c.length>0){for(i=0;i<6;++i){var b=(this.value+i)%7+1;if(this.days[b-1]==c){this.updateActiveEditor(b);d=true;return d}}}return d},_createMonthEditor:function(d,c,b,f,e){a.jqx._jqxDateTimeInput.DateEditor=a.extend(true,{},this);this.initializeFields(1,12,c,2,f);this.dateTimeMonths=b;this.value=d;if(this.dateTimeMonths!=null&&this.dateTimeMonths[12]!=null&&this.dateTimeMonths[12].length>0){this.dateTimeMonths=null}this.handleMonths=true;this.that=e;return this},insertLongString2:function(b,c){if(b.length>0){for(i=0;i<11;++i){month=(this.value+i)%12+1;if(this.dateTimeMonths[month-1]==b){this.updateActiveEditor(month);c=true;return c}}}return c},insertShortString2:function(c,d){if(c.length==1){for(i=0;i<11;++i){var e=(this.value+i)%12+1;var b=this.dateTimeMonths[e-1];if(b.substring(0,1)==c){this.updateActiveEditor(e);d=true;return d}}}return d},correctMaximumValue:function(b){if(b>this.maxValue){b=this.minValue}return b},correctMinimumValue:function(b){if(b<this.minValue){b=this.maxValue}return b},increaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)+1;if(f>9){f=0}if(!e){var b=this.value+1;b=this.correctMaximumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},decreaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)-1;if(f<0){f=9}if(!e){var b=this.value-1;b=this.correctMinimumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.NumberEditor={};a.extend(a.jqx._jqxDateTimeInput.NumberEditor,{formatValueLength:0,positions:0,value:0,minEditPositions:0,maxEditPositions:0,minValue:0,maxValue:0,item:null,minPositions:function(){if(this.handleYears){if(this.formatValueLength==4){if(this.positions<=1){return 1}else{if(this.positions>=4){return 4}}return this.positions}else{return this.minEditPositions}}return this.minEditPositions},_createNumberEditor:function(g,f,h,b,e,d,c){a.jqx._jqxDateTimeInput.NumberEditor=a.extend(true,{},this);this.initializeFields(f,h,b,e,d);this.that=c;return this},initializeFields:function(e,f,b,d,c){this.minValue=e;this.maxValue=f;this.minEditPositions=b;this.maxEditPositions=d;this.updateActiveEditor(e);this.item=c},updateActiveEditor:function(b){this.value=b;this.positions=0},getDayOfWeek:function(b){if(typeof this.currentValue==a.jqx._jqxDateTimeInput.DateTime){this.currentValue.dayOfWeek()}return b},textValue:function(){var d=this.value;var e=this.minEditPositions;var b=e;var c=this.that._format(this.value,"d"+b,"");return c},insert:function(c){if(c==null){return this.deleteValue()}if(c.length==0){return this.deleteValue()}var g=c.substring(0,1);if(isNaN(g)){return}var e=true;var d;var b=1;var f=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);d=f;if(this.positions>=this.maxEditPositions){this.positions=0}d=d.substring(0,this.positions)+g+d.substring(this.positions+1);d=this.setValueByString(d,b);return true},setValueByString:function(d,b){d=this.fixValueString(d);var c=new Number(d);this.value=c;this.positions+=b;return d},fixValueString:function(b){if(b.length>this.maxEditPositions){b=b.substring(b.length-this.maxEditPositions)}return b},initializeValueString:function(c){var b;b="";if(this.hasDigits()){b=c}return b},deleteValue:function(){if(this.value==this.minValue&&this.hasDigits()==false){return false}this.updateActiveEditor(this.minValue);return true},hasDigits:function(){return this.positions>0},correctMaximumValue:function(b){if(b>this.maxValue){b=this.minValue}return b},correctMinimumValue:function(b){if(b<this.minValue){b=this.maxValue}return b},increaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)+1;if(f>9){f=0}if(!e){var b=this.value+1;b=this.correctMaximumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},decreaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)-1;if(f<0){f=9}if(!e){var b=this.value-1;b=this.correctMinimumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.DisabledEditor={};a.extend(a.jqx._jqxDateTimeInput.DisabledEditor,{_create:function(g,c,f,b,e,d){this.format=g;this.value=-1;this.item=e;this.that=d;return this},textValue:function(){return""},insert:function(b){return false},deleteValue:function(){return false},increaseValue:function(){return false},decreaseValue:function(){return false},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.AmPmEditor={};a.extend(a.jqx._jqxDateTimeInput.AmPmEditor,{_createAmPmEditor:function(g,c,f,b,e,d){this.format=g;this.value=c;this.amString=f;this.pmString=b;this.item=e;this.that=d;if(f==b){this.amString="<"+f;this.pmString=">"+b}return this},textValue:function(){var b=this.amString;if(this.value!=0){b=this.pmString}if(this.format.length==1&&b.length>1){b=b.substring(0,1)}return b},insert:function(f){var d=f.toString();if(d.Length==0){return this.deleteValue()}var c=false;if(this.amString.Length>0&&this.pmString.Length>0){var g=amString[0];var b=d[0];var e=pmString[0];if(g.toString()==b.toString()){this.value=0;c=true}else{if(e.toString()==b.toString()){this.value=1;c=true}}}else{if(this.pmString.Length>0){this.value=1;c=true}else{if(this.amString.Length>0){this.value=0;c=true}}}return c},deleteValue:function(){var b=true;if(this.amString.Length==0&&this.pmString.Length!=0){if(this.value==0){return false}this.value=0}else{if(this.value==1){return false}this.value=1}return b},increaseValue:function(){this.value=1-this.value;return true},decreaseValue:function(){this.increaseValue();return true},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.getDateTime=function(c){var b={dateTime:new Date(c),daysPer4Years:1461,daysPerYear:365,daysToMonth365:{0:0,1:31,2:59,3:90,4:120,5:151,6:181,7:212,8:243,9:273,10:304,11:334,12:365},daysToMonth366:{0:0,1:31,2:60,3:91,4:121,5:152,6:182,7:213,8:244,9:274,10:305,11:335,12:366},maxValue:3155378976000000000,millisPerDay:86400000,millisPerHour:3600000,millisPerMinute:60000,millisPerSecond:1000,minTicks:0,minValue:0,ticksPerDay:864000000000,ticksPerHour:36000000000,ticksPerMillisecond:10000,ticksPerMinute:600000000,ticksPerSecond:10000000,hour:c.getHours(),minute:c.getMinutes(),day:c.getDate(),second:c.getSeconds(),month:1+c.getMonth(),year:c.getFullYear(),millisecond:c.getMilliseconds(),dayOfWeek:c.getDay(),isWeekend:function(d){if(d==undefined||d==null){d=this.dateTime}var e=d.getDay()%6==0;return e},dayOfYear:function(e){if(e==undefined||e==null){e=this.dateTime}var d=new Date(e.getFullYear(),0,1);return Math.ceil((e-d)/86400000)},_setDay:function(d){if(d==undefined||d==null){d=0}this.dateTime.setDate(d);this.day=this.dateTime.getDate()},_setMonth:function(d){if(d==undefined||d==null){d=0}this.dateTime.setMonth(d-1);this.month=1+this.dateTime.getMonth()},_setYear:function(d){if(d==undefined||d==null){d=0}this.dateTime.setFullYear(d);this.year=this.dateTime.getFullYear()},_setHours:function(d){if(d==undefined||d==null){d=0}this.dateTime.setHours(d);this.hour=this.dateTime.getHours()},_setMinutes:function(d){if(d==undefined||d==null){d=0}this.dateTime.setMinutes(d);this.minute=this.dateTime.getMinutes()},_setSeconds:function(d){if(d==undefined||d==null){d=0}this.dateTime.setSeconds(d);this.second=this.dateTime.getSeconds()},_setMilliseconds:function(d){if(d==undefined||d==null){d=0}this.dateTime.setMilliseconds(d);this.millisecond=this.dateTime.getMilliseconds()},_addDays:function(f){var d=this.dateTime;var e=d.getDate();d.setDate(d.getDate()+f);if(e===d.getDate()){d.setHours(d.getHours()+d.getTimezoneOffset()/60)}return d},_addWeeks:function(e){var d=this.dateTime;d.setDate(d.getDate()+7*e);return d},_addMonths:function(e){var d=this.dateTime;d.setMonth(d.getMonth()+e);return d},_addYears:function(e){var d=this.dateTime;d.setFullYear(d.getFullYear()+e);return d},_addHours:function(e){var d=this.dateTime;d.setHours(d.getHours()+e);return d},_addMinutes:function(e){var d=this.dateTime;d.setMinutes(d.getMinutes()+e);return d},_addSeconds:function(e){var d=this.dateTime;d.setSeconds(d.getSeconds()+e);return d},_addMilliseconds:function(e){var d=this.dateTime;d.setMilliseconds(d.getMilliseconds()+e);return d},_isLeapYear:function(d){if((d<1)||(d>9999)){throw"invalid year"}if((d%4)!=0){return false}if((d%100)==0){return((d%400)==0)}return true},_dateToTicks:function(f,h,e){if(((f>=1)&&(f<=9999))&&((h>=1)&&(h<=12))){var d=this._isLeapYear(f)?this.daysToMonth366:this.daysToMonth365;if((e>=1)&&(e<=(d[h]-d[h-1]))){var f=f-1;var g=((((((f*365)+(f/4))-(f/100))+(f/400))+d[h-1])+e)-1;return(g*864000000000)}}},_daysInMonth:function(e,f){if((f<1)||(f>12)){throw ("Invalid month.")}var d=this._isLeapYear(e)?this.daysToMonth366:this.daysToMonth365;return(d[f]-d[f-1])},_timeToTicks:function(d,g,e){var f=((d*3600)+(g*60))+e;return(f*10000000)},_equalDate:function(d){if(this.year==d.getFullYear()&&this.day==d.getDate()&&this.month==d.getMonth()+1){return true}return false}};return b}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDraw","",{});a.extend(a.jqx._jqxDraw.prototype,{defineInstance:function(){var d={renderEngine:""};a.extend(true,this,d);var e=["clear","on","off","removeElement","attr","getAttr","line","circle","rect","path","pieslice","text","measureText"];for(var c in e){this._addFn(a.jqx._jqxDraw.prototype,e[c])}},_addFn:function(d,c){if(d[c]){return}d[c]=function(){return this.renderer[c].apply(this.renderer,arguments)}},createInstance:function(c){},_initRenderer:function(c){return a.jqx.createRenderer(this,c)},_internalRefresh:function(){var c=this;if(a.jqx.isHidden(c.host)){return}if(!c.renderer){c.host.empty();c._initRenderer(c.host)}var e=c.renderer;if(!e){return}var d=e.getRect();c._render({x:1,y:1,width:d.width,height:d.height});if(e instanceof a.jqx.HTML5Renderer){e.refresh()}},_saveAsImage:function(e,f,c,d){return a.jqx._widgetToImage(this,e,f,c,d)},_render:function(d){var c=this;var e=c.renderer;c._plotRect=d},refresh:function(){this._internalRefresh()},getSize:function(){var c=this._plotRect;return{width:c.width,height:c.height}},saveAsPNG:function(e,c,d){return this._saveAsImage("png",e,c,d)},saveAsJPEG:function(e,c,d){return this._saveAsImage("jpeg",e,c,d)}})})(jqxBaseFramework);(function(a){a.jqx.toGreyScale=function(c){if(c.indexOf("#")==-1){return c}var d=a.jqx.cssToRgb(c);d[0]=d[1]=d[2]=Math.round(0.3*d[0]+0.59*d[1]+0.11*d[2]);var e=a.jqx.rgbToHex(d[0],d[1],d[2]);return"#"+e[0]+e[1]+e[2]},a.jqx.adjustColor=function(f,e){if(typeof(f)!="string"){return"#000000"}if(f.indexOf("#")==-1){return f}var h=a.jqx.cssToRgb(f);var d=a.jqx.rgbToHsl(h);d[2]=Math.min(1,d[2]*e);d[1]=Math.min(1,d[1]*e*1.1);h=a.jqx.hslToRgb(d);var f="#";for(var j=0;j<3;j++){var k=Math.round(h[j]);k=a.jqx.decToHex(k);if(k.toString().length==1){f+="0"}f+=k}return f.toUpperCase()};a.jqx.decToHex=function(c){return c.toString(16)};a.jqx.hexToDec=function(c){return parseInt(c,16)};a.jqx.rgbToHex=function(e,d,c){return[a.jqx.decToHex(e),a.jqx.decToHex(d),a.jqx.decToHex(c)]};a.jqx.hexToRgb=function(d,f,c){return[a.jqx.hexToDec(d),a.jqx.hexToDec(f),a.jqx.hexToDec(c)]};a.jqx.cssToRgb=function(c){if(c.indexOf("rgb")<=-1){return a.jqx.hexToRgb(c.substring(1,3),c.substring(3,5),c.substring(5,7))}return c.substring(4,c.length-1).split(",")};a.jqx.hslToRgb=function(d){var f=parseFloat(d[0]);var e=parseFloat(d[1]);var c=parseFloat(d[2]);if(e==0){r=g=b=c}else{var i=c<0.5?c*(1+e):c+e-c*e;var j=2*c-i;r=a.jqx.hueToRgb(j,i,f+1/3);g=a.jqx.hueToRgb(j,i,f);b=a.jqx.hueToRgb(j,i,f-1/3)}return[r*255,g*255,b*255]};a.jqx.hueToRgb=function(e,d,c){if(c<0){c+=1}if(c>1){c-=1}if(c<1/6){return e+(d-e)*6*c}else{if(c<1/2){return d}else{if(c<2/3){return e+(d-e)*(2/3-c)*6}}}return e};a.jqx.rgbToHsl=function(j){var c=parseFloat(j[0])/255;var i=parseFloat(j[1])/255;var k=parseFloat(j[2])/255;var m=Math.max(c,i,k),e=Math.min(c,i,k);var f,o,d=(m+e)/2;if(m==e){f=o=0}else{var n=m-e;o=d>0.5?n/(2-m-e):n/(m+e);switch(m){case c:f=(i-k)/n+(i<k?6:0);break;case i:f=(k-c)/n+2;break;case k:f=(c-i)/n+4;break}f/=6}return[f,o,d]};a.jqx.swap=function(c,e){var d=c;c=e;e=d};a.jqx.getNum=function(c){if(!a.isArray(c)){if(isNaN(c)){return 0}}else{for(var d=0;d<c.length;d++){if(!isNaN(c[d])){return c[d]}}}return 0};a.jqx._ptdist=function(d,f,c,e){return Math.sqrt((c-d)*(c-d)+(e-f)*(e-f))};a.jqx._ptrnd=function(d){if(!document.createElementNS){if(Math.round(d)==d){return d}return a.jqx._rnd(d,1,false,true)}var c=a.jqx._rnd(d,0.5,false,true);if(Math.abs(c-Math.round(c))!=0.5){return c>d?c-0.5:c+0.5}return c};a.jqx._ptRotate=function(e,k,d,j,h){var c=Math.sqrt(Math.pow(Math.abs(e-d),2)+Math.pow(Math.abs(k-j),2));var f=Math.asin((e-d)/c);var i=f+h;e=d+Math.cos(i)*c;k=j+Math.sin(i)*c;return{x:e,y:k}};a.jqx._rup=function(d){var c=Math.round(d);if(d>c){c++}return c};a.jqx.log=function(d,c){return Math.log(d)/(c?Math.log(c):1)};a.jqx._mod=function(d,c){var e=Math.abs(d>c?c:d);var f=1;if(e!=0){while(e*f<100){f*=10}}d=d*f;c=c*f;return(d%c)/f};a.jqx._rnd=function(e,h,f,d){if(isNaN(e)){return e}if(undefined===d){d=true}var c=e-((d==true)?e%h:a.jqx._mod(e,h));if(e==c){return c}if(f){if(e>c){c+=h}}else{if(c>e){c-=h}}return(h==1)?Math.round(c):c};a.jqx.commonRenderer={pieSlicePath:function(m,l,j,u,D,E,e){if(!u){u=1}var o=Math.abs(D-E);var s=o>180?1:0;if(o>=360){E=D+359.99}var t=D*Math.PI*2/360;var k=E*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e+j>0){if(e>0){var n=o/2+D;var C=n*Math.PI*2/360;m+=e*Math.cos(C);l-=e*Math.sin(C)}if(p){var z=j;B=m+z*Math.cos(t);h=l-z*Math.sin(t);A=m+z*Math.cos(k);f=l-z*Math.sin(k)}}var w=m+u*Math.cos(t);var v=m+u*Math.cos(k);var d=l-u*Math.sin(t);var c=l-u*Math.sin(k);var q="";var i=(Math.abs(Math.abs(E-D)-360)>0.02);if(p){q="M "+A+","+f;q+=" a"+j+","+j;q+=" 0 "+s+",1 "+(B-A)+","+(h-f);if(i){q+=" L"+w+","+d}else{q+=" M"+w+","+d}q+=" a"+u+","+u;q+=" 0 "+s+",0 "+(v-w)+","+(c-d);if(i){q+=" Z"}}else{q="M "+v+","+c;q+=" a"+u+","+u;q+=" 0 "+s+",1 "+(w-v)+","+(d-c);if(i){q+=" L"+m+","+l;q+=" Z"}}return q},measureText:function(q,h,i,p,n){var f=n._getTextParts(q,h,i);var k=f.width;var c=f.height;if(false==p){c/=0.6}var d={};if(isNaN(h)){h=0}if(h==0){d={width:a.jqx._rup(k),height:a.jqx._rup(c)}}else{var m=h*Math.PI*2/360;var e=Math.abs(Math.sin(m));var l=Math.abs(Math.cos(m));var j=Math.abs(k*e+c*l);var o=Math.abs(k*l+c*e);d={width:a.jqx._rup(o),height:a.jqx._rup(j)}}if(p){d.textPartsInfo=f}return d},alignTextInRect:function(t,p,c,u,o,q,k,s,f,e){var m=f*Math.PI*2/360;var d=Math.sin(m);var l=Math.cos(m);var n=o*d;var j=o*l;if(k=="center"||k==""||k=="undefined"){t=t+c/2}else{if(k=="right"){t=t+c}}if(s=="center"||s=="middle"||s==""||s=="undefined"){p=p+u/2}else{if(s=="bottom"){p+=u-q/2}else{if(s=="top"){p+=q/2}}}e=e||"";var h="middle";if(e.indexOf("top")!=-1){h="top"}else{if(e.indexOf("bottom")!=-1){h="bottom"}}var i="center";if(e.indexOf("left")!=-1){i="left"}else{if(e.indexOf("right")!=-1){i="right"}}if(i=="center"){t-=j/2;p-=n/2}else{if(i=="right"){t-=j;p-=n}}if(h=="top"){t-=q*d;p+=q*l}else{if(h=="middle"){t-=q*d/2;p+=q*l/2}}t=a.jqx._rup(t);p=a.jqx._rup(p);return{x:t,y:p}}};a.jqx.svgRenderer=function(){};a.jqx.svgRenderer.prototype={_svgns:"http://www.w3.org/2000/svg",init:function(h){var f="<table id=tblChart cellspacing='0' cellpadding='0' border='0' align='left' valign='top'><tr><td colspan=2 id=tdTop></td></tr><tr><td id=tdLeft></td><td><div class='chartContainer' style='position:relative' onselectstart='return false;'></div></td></tr></table>";h.append(f);this.host=h;var c=h.find(".chartContainer");c[0].style.width=h.width()+"px";c[0].style.height=h.height()+"px";var j;try{var d=document.createElementNS(this._svgns,"svg");d.setAttribute("id","svgChart");d.setAttribute("version","1.1");d.setAttribute("width","100%");d.setAttribute("height","100%");d.setAttribute("overflow","hidden");c[0].appendChild(d);this.canvas=d}catch(i){return false}this._id=new Date().getTime();this.clear();this._layout();this._runLayoutFix();return true},getType:function(){return"SVG"},refresh:function(){},_runLayoutFix:function(){var c=this;this._fixLayout()},_fixLayout:function(){var i=a(this.canvas).position();var e=(parseFloat(i.left)==parseInt(i.left));var c=(parseFloat(i.top)==parseInt(i.top));if(a.jqx.browser.msie){var e=true,c=true;var f=this.host;var d=0,h=0;while(f&&f.position&&f[0].parentNode){var j=f.position();d+=parseFloat(j.left)-parseInt(j.left);h+=parseFloat(j.top)-parseInt(j.top);f=f.parent()}e=parseFloat(d)==parseInt(d);c=parseFloat(h)==parseInt(h)}if(!e){this.host.find("#tdLeft")[0].style.width="0.5px"}if(!c){this.host.find("#tdTop")[0].style.height="0.5px"}},_layout:function(){var d=a(this.canvas).offset();var c=this.host.find(".chartContainer");this._width=Math.max(a.jqx._rup(this.host.width())-1,0);this._height=Math.max(a.jqx._rup(this.host.height())-1,0);c[0].style.width=this._width;c[0].style.height=this._height;this._fixLayout()},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeElement(this.canvas.firstElementChild)}this._defaultParent=undefined;this._defs=document.createElementNS(this._svgns,"defs");this._gradients={};this.canvas.appendChild(this._defs)},removeElement:function(e){if(undefined==e){return}this.removeHandler(e);try{while(e.firstChild){this.removeElement(e.firstChild)}if(e.parentNode){e.parentNode.removeChild(e)}else{this.canvas.removeChild(e)}}catch(d){var c=d}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElementNS(this._svgns,"g");c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(e){var f=document.createElementNS(this._svgns,"clipPath");var d=document.createElementNS(this._svgns,"rect");this.attr(d,{x:e.x,y:e.y,width:e.width,height:e.height,fill:"none"});this._clipId=this._clipId||0;f.id="cl"+this._id+"_"+(++this._clipId).toString();f.appendChild(d);this._defs.appendChild(f);return f},getWindowHref:function(){var d=a.jqx.browser;if(d&&d.browser=="msie"&&d.version<10){return""}var c=window.location.href;if(!c){return c}c=c.replace(/([\('\)])/g,"\\$1");c=c.replace(/#.*$/,"");return c},setClip:function(e,d){var c="url("+this.getWindowHref()+"#"+d.id+")";return this.attr(e,{"clip-path":c})},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},shape:function(c,f){var d=document.createElementNS(this._svgns,c);if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},_getTextParts:function(t,j,k){var h={width:0,height:0,parts:[]};if(undefined===t){return h}var o=0.6;var u=t.toString().split("<br>");var q=this._activeParent();var m=document.createElementNS(this._svgns,"text");this.attr(m,k);for(var l=0;l<u.length;l++){var d=u[l];var f=m.ownerDocument.createTextNode(d);m.appendChild(f);q.appendChild(m);var s;try{s=m.getBBox()}catch(p){}var n=a.jqx._rup(s.width);var c=a.jqx._rup(s.height*o);m.removeChild(f);h.width=Math.max(h.width,n);h.height+=c+(l>0?4:0);h.parts.push({width:n,height:c,text:d})}q.removeChild(m);return h},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(z,t,s,E,C,K,M,L,v,m,d){var B=this._measureText(z,K,M,true);var l=B.textPartsInfo;var j=l.parts;var D;if(!v){v="center"}if(!m){m="center"}if(j.length>1||L){D=this.beginGroup()}if(L){var k=this.createClipRect({x:a.jqx._rup(t)-1,y:a.jqx._rup(s)-1,width:a.jqx._rup(E)+2,height:a.jqx._rup(C)+2});this.setClip(D,k)}var q=this._activeParent();var O=0,n=0;var c=0.6;O=l.width;n=l.height;if(isNaN(E)||E<=0){E=O}if(isNaN(C)||C<=0){C=n}var u=E||0;var J=C||0;if(!K||K==0){s+=n;if(m=="center"||m=="middle"){s+=(J-n)/2}else{if(m=="bottom"){s+=J-n}}if(!E){E=O}if(!C){C=n}var q=this._activeParent();var p=0;for(var I=j.length-1;I>=0;I--){var A=document.createElementNS(this._svgns,"text");this.attr(A,M);this.attr(A,{cursor:"default"});var H=A.ownerDocument.createTextNode(j[I].text);A.appendChild(H);var P=t;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(u-o)/2}else{if(v=="right"){P+=(u-o)}}this.attr(A,{x:a.jqx._rup(P),y:a.jqx._rup(s+p),width:a.jqx._rup(o),height:a.jqx._rup(f)});q.appendChild(A);p-=j[I].height+4}if(D){this.endGroup();return D}return A}var F=a.jqx.commonRenderer.alignTextInRect(t,s,E,C,O,n,v,m,K,d);t=F.x;s=F.y;var G=this.shape("g",{transform:"translate("+t+","+s+")"});var e=this.shape("g",{transform:"rotate("+K+")"});G.appendChild(e);var p=0;for(var I=j.length-1;I>=0;I--){var N=document.createElementNS(this._svgns,"text");this.attr(N,M);this.attr(N,{cursor:"default"});var H=N.ownerDocument.createTextNode(j[I].text);N.appendChild(H);var P=0;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(l.width-o)/2}else{if(v=="right"){P+=(l.width-o)}}this.attr(N,{x:a.jqx._rup(P),y:a.jqx._rup(p),width:a.jqx._rup(o),height:a.jqx._rup(f)});e.appendChild(N);p-=f+4}q.appendChild(G);if(D){this.endGroup()}return G},line:function(e,h,d,f,i){var c=this.shape("line",{x1:e,y1:h,x2:d,y2:f});this.attr(c,i);return c},path:function(d,e){var c=this.shape("path");c.setAttribute("d",d);if(e){this.attr(c,e)}return c},rect:function(c,j,d,f,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=Math.max(1,a.jqx._rnd(d,1,false));f=Math.max(1,a.jqx._rnd(f,1,false));var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},circle:function(c,h,e,f){var d=this.shape("circle",{cx:c,cy:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,e,h,c,k,d){var f=this.pieSlicePath(l,j,i,e,h,c,k);var m=this.shape("path");m.setAttribute("d",f);if(d){this.attr(m,d)}return m},attr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=e[d]}else{c.setAttribute(d,e[d])}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=""}else{c.removeAttribute(e[d])}}},getAttr:function(d,c){return d.getAttribute(c)},_gradients:{},_toLinearGradient:function(f,k,l){var d="grd"+this._id+f.replace("#","")+(k?"v":"h");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"linearGradient");this.attr(e,{x1:"0%",y1:"0%",x2:k?"0%":"100%",y2:k?"100%":"0%",id:d});for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c},_toRadialGradient:function(f,l,k){var d="grd"+this._id+f.replace("#","")+"r"+(k!=undefined?k.key:"");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"radialGradient");if(k==undefined){this.attr(e,{cx:"50%",cy:"50%",r:"100%",fx:"50%",fy:"50%",id:d})}else{this.attr(e,{cx:k.x,cy:k.y,r:k.outerRadius,id:d,gradientUnits:"userSpaceOnUse"})}for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c}};a.jqx.vmlRenderer=function(){};a.jqx.vmlRenderer.prototype={init:function(j){var h="<div class='chartContainer' style=\"position:relative;overflow:hidden;\"><div>";j.append(h);this.host=j;var c=j.find(".chartContainer");c[0].style.width=j.width()+"px";c[0].style.height=j.height()+"px";var f=true;try{for(var d=0;d<document.namespaces.length;d++){if(document.namespaces[d].name=="v"&&document.namespaces[d].urn=="urn:schemas-microsoft-com:vml"){f=false;break}}}catch(k){return false}if(a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9&&(document.childNodes&&document.childNodes.length>0&&document.childNodes[0].data&&document.childNodes[0].data.indexOf("DOCTYPE")!=-1)){if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml")}this._ie8mode=true}else{if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().cssText="v\\:* { behavior: url(#default#VML); display: inline-block; }"}}this.canvas=c[0];this._width=Math.max(a.jqx._rup(c.width()),0);this._height=Math.max(a.jqx._rup(c.height()),0);c[0].style.width=this._width+2;c[0].style.height=this._height+2;this._id=new Date().getTime();this.clear();return true},getType:function(){return"VML"},refresh:function(){},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeHandler(this.canvas.firstElementChild);this.canvas.removeChild(this.canvas.firstElementChild)}this._gradients={};this._defaultParent=undefined},removeElement:function(c){if(c!=null){this.removeHandler(c);c.parentNode.removeChild(c)}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElement("v:group");d.style.position="absolute";d.coordorigin="0,0";d.coordsize=this._width+","+this._height;d.style.left=0;d.style.top=0;d.style.width=this._width;d.style.height=this._height;c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(c){var d=document.createElement("div");d.style.height=(c.height+1)+"px";d.style.width=(c.width+1)+"px";d.style.position="absolute";d.style.left=c.x+"px";d.style.top=c.y+"px";d.style.overflow="hidden";this._clipId=this._clipId||0;d.id="cl"+this._id+"_"+(++this._clipId).toString();this._activeParent().appendChild(d);return d},setClip:function(d,c){},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},_getTextParts:function(q,h,j){var f={width:0,height:0,parts:[]};var o=0.6;var s=q.toString().split("<br>");var p=this._activeParent();var l=document.createElement("v:textbox");this.attr(l,j);p.appendChild(l);for(var k=0;k<s.length;k++){var d=s[k];var e=document.createElement("span");e.appendChild(document.createTextNode(d));l.appendChild(e);if(j&&j["class"]){e.className=j["class"]}var n=a(l);var m=a.jqx._rup(n.width());var c=a.jqx._rup(n.height()*o);if(c==0&&a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9){var t=n.css("font-size");if(t){c=parseInt(t);if(isNaN(c)){c=0}}}l.removeChild(e);f.width=Math.max(f.width,m);f.height+=c+(k>0?2:0);f.parts.push({width:m,height:c,text:d})}p.removeChild(l);return f},_measureText:function(f,e,d,c){if(Math.abs(e)>45){e=90}else{e=0}return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(u,p,o,D,z,J,L,K,t,k){var E;if(L&&L.stroke){E=L.stroke}if(E==undefined){E="black"}var v=this._measureText(u,J,L,true);var f=v.textPartsInfo;var c=f.parts;var M=v.width;var l=v.height;if(isNaN(D)||D==0){D=M}if(isNaN(z)||z==0){z=l}var B;if(!t){t="center"}if(!k){k="center"}if(c.length>0||K){B=this.beginGroup()}if(K){var d=this.createClipRect({x:a.jqx._rup(p),y:a.jqx._rup(o),width:a.jqx._rup(D),height:a.jqx._rup(z)});this.setClip(B,d)}var n=this._activeParent();var s=D||0;var I=z||0;if(Math.abs(J)>45){J=90}else{J=0}var A=0,H=0;if(t=="center"){A+=(s-M)/2}else{if(t=="right"){A+=(s-M)}}if(k=="center"){H=(I-l)/2}else{if(k=="bottom"){H=I-l}}if(J==0){o+=l+H;p+=A}else{p+=M+A;o+=H}var m=0,N=0;var e;for(var G=c.length-1;G>=0;G--){var C=c[G];var q=(M-C.width)/2;if(J==0&&t=="left"){q=0}else{if(J==0&&t=="right"){q=M-C.width}else{if(J==90){q=(l-C.width)/2}}}var j=m-C.height;H=J==90?q:j;A=J==90?j:q;e=document.createElement("v:textbox");e.style.position="absolute";e.style.left=a.jqx._rup(p+A);e.style.top=a.jqx._rup(o+H);e.style.width=a.jqx._rup(C.width);e.style.height=a.jqx._rup(C.height);if(J==90){e.style.filter="progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";e.style.height=a.jqx._rup(C.height)+5}var F=document.createElement("span");F.appendChild(document.createTextNode(C.text));if(L&&L["class"]){F.className=L["class"]}e.appendChild(F);n.appendChild(e);m-=C.height+(G>0?2:0)}if(B){this.endGroup();return n}return e},shape:function(c,f){var d=document.createElement(this._createElementMarkup(c));if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},line:function(f,i,e,h,j){var c="M "+f+","+i+" L "+e+","+h+" X E";var d=this.path(c);this.attr(d,j);return d},_createElementMarkup:function(c){var d="<v:"+c+' style=""></v:'+c+">";if(this._ie8mode){d=d.replace('style=""','style="behavior: url(#default#VML);"')}return d},path:function(d,e){var c=document.createElement(this._createElementMarkup("shape"));c.style.position="absolute";c.coordsize=this._width+" "+this._height;c.coordorigin="0 0";c.style.width=parseInt(this._width);c.style.height=parseInt(this._height);c.style.left=0+"px";c.style.top=0+"px";c.setAttribute("path",d);this._activeParent().appendChild(c);if(e){this.attr(c,e)}return c},rect:function(c,j,d,e,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=a.jqx._rup(d);e=a.jqx._rup(e);var f=this.shape("rect",i);f.style.position="absolute";f.style.left=c;f.style.top=j;f.style.width=d;f.style.height=e;f.strokeweight=0;if(i){this.attr(f,i)}return f},circle:function(c,h,e,f){var d=this.shape("oval");c=a.jqx._ptrnd(c-e);h=a.jqx._ptrnd(h-e);e=a.jqx._rup(e);d.style.position="absolute";d.style.left=c;d.style.top=h;d.style.width=e*2;d.style.height=e*2;if(f){this.attr(d,f)}return d},updateCircle:function(e,c,f,d){if(c==undefined){c=parseFloat(e.style.left)+parseFloat(e.style.width)/2}if(f==undefined){f=parseFloat(e.style.top)+parseFloat(e.style.height)/2}if(d==undefined){d=parseFloat(e.width)/2}c=a.jqx._ptrnd(c-d);f=a.jqx._ptrnd(f-d);d=a.jqx._rup(d);e.style.left=c;e.style.top=f;e.style.width=d*2;e.style.height=d*2},pieSlicePath:function(m,l,j,u,E,F,e){if(!u){u=1}var o=Math.abs(E-F);var s=o>180?1:0;if(o>360){E=0;F=360}var t=E*Math.PI*2/360;var k=F*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e>0){var n=o/2+E;var D=n*Math.PI*2/360;m+=e*Math.cos(D);l-=e*Math.sin(D)}if(p){var z=j;B=a.jqx._ptrnd(m+z*Math.cos(t));h=a.jqx._ptrnd(l-z*Math.sin(t));A=a.jqx._ptrnd(m+z*Math.cos(k));f=a.jqx._ptrnd(l-z*Math.sin(k))}var w=a.jqx._ptrnd(m+u*Math.cos(t));var v=a.jqx._ptrnd(m+u*Math.cos(k));var d=a.jqx._ptrnd(l-u*Math.sin(t));var c=a.jqx._ptrnd(l-u*Math.sin(k));u=a.jqx._ptrnd(u);j=a.jqx._ptrnd(j);m=a.jqx._ptrnd(m);l=a.jqx._ptrnd(l);var i=Math.round(E*65535);var C=Math.round((F-E)*65536);if(j<0){j=1}var q="";if(p){q="M"+B+" "+h;q+=" AE "+m+" "+l+" "+j+" "+j+" "+i+" "+C;q+=" L "+v+" "+c;i=Math.round((E-F)*65535);C=Math.round(F*65536);q+=" AE "+m+" "+l+" "+u+" "+u+" "+C+" "+i;q+=" L "+B+" "+h}else{q="M"+m+" "+l;q+=" AE "+m+" "+l+" "+u+" "+u+" "+i+" "+C}q+=" X E";return q},pieslice:function(m,k,j,f,i,c,l,e){var h=this.pieSlicePath(m,k,j,f,i,c,l);var d=this.path(h,e);if(e){this.attr(d,e)}return d},_keymap:[{svg:"fill",vml:"fillcolor"},{svg:"stroke",vml:"strokecolor"},{svg:"stroke-width",vml:"strokeweight"},{svg:"stroke-dasharray",vml:"dashstyle"},{svg:"fill-opacity",vml:"fillopacity"},{svg:"stroke-opacity",vml:"strokeopacity"},{svg:"opacity",vml:"opacity"},{svg:"cx",vml:"style.left"},{svg:"cy",vml:"style.top"},{svg:"height",vml:"style.height"},{svg:"width",vml:"style.width"},{svg:"x",vml:"style.left"},{svg:"y",vml:"style.top"},{svg:"d",vml:"v"},{svg:"display",vml:"style.display"}],_translateParam:function(c){for(var d in this._keymap){if(this._keymap[d].svg==c){return this._keymap[d].vml}}return c},attr:function(d,f){if(!d||!f){return}for(var e in f){var c=this._translateParam(e);if(undefined==f[e]){continue}if(c=="fillcolor"&&f[e].indexOf("grd")!=-1){d.type=f[e]}else{if(c=="fillcolor"&&f[e]=="transparent"){d.style.filter="alpha(opacity=0)";d["-ms-filter"]="progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"}else{if(c=="opacity"||c=="fillopacity"){if(d.fill){d.fill.opacity=f[e]}}else{if(c=="textContent"){d.children[0].innerText=f[e]}else{if(c=="dashstyle"){d.dashstyle=f[e].replace(","," ")}else{if(c.indexOf("style.")==-1){d[c]=f[e]}else{d.style[c.replace("style.","")]=f[e]}}}}}}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){c.removeAttribute(e[d])}},getAttr:function(e,d){var c=this._translateParam(d);if(c=="opacity"||c=="fillopacity"){if(e.fill){return e.fill.opacity}else{return 1}}if(c.indexOf("style.")==-1){return e[c]}return e.style[c.replace("style.","")]},_gradients:{},_toRadialGradient:function(c,e,d){return c},_toLinearGradient:function(j,m,n){if(this._ie8mode){return j}var e="grd"+j.replace("#","")+(m?"v":"h");var f="#"+e+"";if(this._gradients[f]){return f}var h=document.createElement(this._createElementMarkup("fill"));h.type="gradient";h.method="linear";h.angle=m?0:90;var d="";for(var k=0;k<n.length;k++){var l=n[k];if(l>0){d+=", "}d+=l[0]+"% "+a.jqx.adjustColor(j,l[1])}h.colors=d;var c=document.createElement(this._createElementMarkup("shapetype"));c.appendChild(h);c.id=e;this.canvas.appendChild(c);return f}};a.jqx.HTML5Renderer=function(){};a.jqx.ptrnd=function(d){if(Math.abs(Math.round(d)-d)==0.5){return d}var c=Math.round(d);if(c<d){c=c-1}return c+0.5};a.jqx.HTML5Renderer.prototype={init:function(c){try{this.host=c;this.host.append("<div class='chartContainer' style='position:relative' onselectstart='return false;'><canvas id='__jqxCanvasWrap' style='width:100%; height: 100%;'/></div>");this.canvas=c.find("#__jqxCanvasWrap");this.canvas[0].width=c.width();this.canvas[0].height=c.height();this.ctx=this.canvas[0].getContext("2d");this._elements={};this._maxId=0;this._gradientId=0;this._gradients={};this._currentPoint={x:0,y:0};this._lastCmd="";this._pos=0}catch(d){return false}return true},getType:function(){return"HTML5"},getContainer:function(){var c=this.host.find(".chartContainer");return c},getRect:function(){return{x:0,y:0,width:this.canvas[0].width-1,height:this.canvas[0].height-1}},beginGroup:function(){},endGroup:function(){},setClip:function(){},createClipRect:function(c){},addHandler:function(c,e,d){},removeHandler:function(c,e,d){},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},clear:function(){this._elements={};this._maxId=0;this._renderers._gradients={};this._gradientId=0},removeElement:function(c){if(undefined==c){return}if(this._elements[c.id]){delete this._elements[c.id]}},shape:function(c,f){var d={type:c,id:this._maxId++};for(var e in f){d[e]=f[e]}this._elements[d.id]=d;return d},attr:function(c,e){for(var d in e){c[d]=e[d]}},removeAttr:function(c,e){for(var d in e){delete c[e[d]]}},rect:function(c,j,d,f,i){if(isNaN(c)){throw'Invalid value for "x"'}if(isNaN(j)){throw'Invalid value for "y"'}if(isNaN(d)){throw'Invalid value for "width"'}if(isNaN(f)){throw'Invalid value for "height"'}var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},path:function(c,e){var d=this.shape("path",e);this.attr(d,{d:c});return d},line:function(d,f,c,e,h){return this.path("M "+d+","+f+" L "+c+","+e,h)},circle:function(c,h,e,f){var d=this.shape("circle",{x:c,y:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,f,h,c,k,d){var e=this.path(this.pieSlicePath(l,j,i,f,h,c,k),d);this.attr(e,{x:l,y:j,innerRadius:i,outerRadius:f,angleFrom:h,angleTo:c});return e},_getCSSStyle:function(d){var k=document.styleSheets;try{for(var f=0;f<k.length;f++){for(var c=0;k[f].cssRules&&c<k[f].cssRules.length;c++){if(k[f].cssRules[c].selectorText.indexOf(d)!=-1){return k[f].cssRules[c].style}}}}catch(h){}return{}},_getTextParts:function(s,h,j){var n="Arial";var t="10pt";var o="";if(j&&j["class"]){var c=this._getCSSStyle(j["class"]);if(c.fontSize){t=c.fontSize}if(c.fontFamily){n=c.fontFamily}if(c.fontWeight){o=c.fontWeight}}this.ctx.font=o+" "+t+" "+n;var f={width:0,height:0,parts:[]};var m=0.6;var q=s.toString().split("<br>");for(var k=0;k<q.length;k++){var e=q[k];var l=this.ctx.measureText(e).width;var p=document.createElement("span.jqxchart");p.font=this.ctx.font;p.textContent=e;document.body.appendChild(p);var d=p.offsetHeight*m;document.body.removeChild(p);f.width=Math.max(f.width,a.jqx._rup(l));f.height+=d+(k>0?4:0);f.parts.push({width:l,height:d,text:e})}return f},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(o,n,l,d,p,h,i,e,j,m,f){var q=this.shape("text",{text:o,x:n,y:l,width:d,height:p,angle:h,clip:e,halign:j,valign:m,rotateAround:f});if(i){this.attr(q,i)}q.fontFamily="Arial";q.fontSize="10pt";q.fontWeight="";q.color="#000000";if(i&&i["class"]){var c=this._getCSSStyle(i["class"]);q.fontFamily=c.fontFamily||q.fontFamily;q.fontSize=c.fontSize||q.fontSize;q.fontWeight=c.fontWeight||q.fontWeight;q.color=c.color||q.color}var k=this._measureText(o,0,i,true);this.attr(q,{textPartsInfo:k.textPartsInfo,textWidth:k.width,textHeight:k.height});if(d<=0||isNaN(d)){this.attr(q,{width:k.width})}if(p<=0||isNaN(p)){this.attr(q,{height:k.height})}return q},_toLinearGradient:function(d,j,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,j?"vertical":"horizontal",c);return e},_toRadialGradient:function(d,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,"radial",c);return e},createGradient:function(e,d,c){this._renderers.createGradient(this,e,d,c)},_renderers:{createGradient:function(f,e,d,c){f._gradients[e]={orientation:d,colorStops:c}},setStroke:function(d,e){var c=d.ctx;c.strokeStyle=e.stroke||"transparent";c.lineWidth=e["stroke-width"]||1;if(e["fill-opacity"]!=undefined){c.globalAlpha=e["fill-opacity"]}else{if(e.opacity!=undefined){c.globalAlpha=e.opacity}else{c.globalAlpha=1}}if(c.setLineDash){if(e["stroke-dasharray"]){c.setLineDash(e["stroke-dasharray"].split(","))}else{c.setLineDash([])}}},setFillStyle:function(d,h){var p=d.ctx;p.fillStyle="transparent";if(h["fill-opacity"]!=undefined){p.globalAlpha=h["fill-opacity"]}else{if(h.opacity!=undefined){p.globalAlpha=h.opacity}else{p.globalAlpha=1}}if(h.fill&&h.fill.indexOf("#")==-1&&d._gradients[h.fill]){var n=d._gradients[h.fill].orientation!="horizontal";var k=d._gradients[h.fill].orientation=="radial";var e=a.jqx.ptrnd(h.x);var o=a.jqx.ptrnd(h.y);var c=a.jqx.ptrnd(h.x+(n?0:h.width));var l=a.jqx.ptrnd(h.y+(n?h.height:0));var m;if((h.type=="circle"||h.type=="path"||h.type=="rect")&&k){x=a.jqx.ptrnd(h.x);y=a.jqx.ptrnd(h.y);r1=h.innerRadius||0;r2=h.outerRadius||h.r||0;if(h.type=="rect"){x+=h.width/2;y+=h.height/2}m=p.createRadialGradient(x,y,r1,x,y,r2)}if(!k){if(isNaN(e)||isNaN(c)||isNaN(o)||isNaN(l)){e=0;o=0;c=n?0:p.canvas.width;l=n?p.canvas.height:0}m=p.createLinearGradient(e,o,c,l)}var f=d._gradients[h.fill].colorStops;for(var j=0;j<f.length;j++){m.addColorStop(f[j].percent,f[j].color)}p.fillStyle=m}else{if(h.fill){p.fillStyle=h.fill}}},rect:function(c,d){if(d.width==0||d.height==0){return}c.fillRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height);c.strokeRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height)},circle:function(c,d){if(d.r==0){return}c.beginPath();c.arc(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.r,0,Math.PI*2,false);c.closePath();c.fill();c.stroke()},_parsePoint:function(d){var c=this._parseNumber(d);var e=this._parseNumber(d);return({x:c,y:e})},_parseNumber:function(e){var f=false;for(var c=this._pos;c<e.length;c++){if((e[c]>="0"&&e[c]<="9")||e[c]=="."||e[c]=="e"||(e[c]=="-"&&!f)||(e[c]=="-"&&c>=1&&e[c-1]=="e")){f=true;continue}if(!f&&(e[c]==" "||e[c]==",")){this._pos++;continue}break}var d=parseFloat(e.substring(this._pos,c));if(isNaN(d)){return undefined}this._pos=c;return d},_cmds:"mlcaz",_isRelativeCmd:function(c){return a.jqx.string.contains(this._cmds,c)},_parseCmd:function(c){for(var d=this._pos;d<c.length;d++){if(a.jqx.string.containsIgnoreCase(this._cmds,c[d])){this._pos=d+1;this._lastCmd=c[d];return this._lastCmd}if(c[d]==" "){this._pos++;continue}if(c[d]>="0"&&c[d]<="9"){this._pos=d;if(this._lastCmd==""){break}else{return this._lastCmd}}}return undefined},_toAbsolutePoint:function(c){return{x:this._currentPoint.x+c.x,y:this._currentPoint.y+c.y}},path:function(E,N){var B=N.d;this._pos=0;this._lastCmd="";var n=undefined;this._currentPoint={x:0,y:0};E.beginPath();var I=0;while(this._pos<B.length){var H=this._parseCmd(B);if(H==undefined){break}if(H=="M"||H=="m"){var F=this._parsePoint(B);if(F==undefined){break}E.moveTo(F.x,F.y);this._currentPoint=F;if(n==undefined){n=F}continue}if(H=="L"||H=="l"){var F=this._parsePoint(B);if(F==undefined){break}E.lineTo(F.x,F.y);this._currentPoint=F;continue}if(H=="A"||H=="a"){var j=this._parseNumber(B);var h=this._parseNumber(B);var L=this._parseNumber(B)*(Math.PI/180);var P=this._parseNumber(B);var f=this._parseNumber(B);var q=this._parsePoint(B);if(this._isRelativeCmd(H)){q=this._toAbsolutePoint(q)}if(j==0||h==0){continue}var k=this._currentPoint;var K={x:Math.cos(L)*(k.x-q.x)/2+Math.sin(L)*(k.y-q.y)/2,y:-Math.sin(L)*(k.x-q.x)/2+Math.cos(L)*(k.y-q.y)/2};var l=Math.pow(K.x,2)/Math.pow(j,2)+Math.pow(K.y,2)/Math.pow(h,2);if(l>1){j*=Math.sqrt(l);h*=Math.sqrt(l)}var t=(P==f?-1:1)*Math.sqrt(((Math.pow(j,2)*Math.pow(h,2))-(Math.pow(j,2)*Math.pow(K.y,2))-(Math.pow(h,2)*Math.pow(K.x,2)))/(Math.pow(j,2)*Math.pow(K.y,2)+Math.pow(h,2)*Math.pow(K.x,2)));if(isNaN(t)){t=0}var J={x:t*j*K.y/h,y:t*-h*K.x/j};var D={x:(k.x+q.x)/2+Math.cos(L)*J.x-Math.sin(L)*J.y,y:(k.y+q.y)/2+Math.sin(L)*J.x+Math.cos(L)*J.y};var C=function(i){return Math.sqrt(Math.pow(i[0],2)+Math.pow(i[1],2))};var z=function(m,i){return(m[0]*i[0]+m[1]*i[1])/(C(m)*C(i))};var O=function(m,i){return(m[0]*i[1]<m[1]*i[0]?-1:1)*Math.acos(z(m,i))};var G=O([1,0],[(K.x-J.x)/j,(K.y-J.y)/h]);var p=[(K.x-J.x)/j,(K.y-J.y)/h];var o=[(-K.x-J.x)/j,(-K.y-J.y)/h];var M=O(p,o);if(z(p,o)<=-1){M=Math.PI}if(z(p,o)>=1){M=0}if(f==0&&M>0){M=M-2*Math.PI}if(f==1&&M<0){M=M+2*Math.PI}var z=(j>h)?j:h;var A=(j>h)?1:j/h;var w=(j>h)?h/j:1;E.translate(D.x,D.y);E.rotate(L);E.scale(A,w);E.arc(0,0,z,G,G+M,1-f);E.scale(1/A,1/w);E.rotate(-L);E.translate(-D.x,-D.y);continue}if((H=="Z"||H=="z")&&n!=undefined){E.lineTo(n.x,n.y);this._currentPoint=n;continue}if(H=="C"||H=="c"){var e=this._parsePoint(B);var d=this._parsePoint(B);var c=this._parsePoint(B);E.bezierCurveTo(e.x,e.y,d.x,d.y,c.x,c.y);this._currentPoint=c;continue}}E.fill();E.stroke();E.closePath()},text:function(A,G){var p=a.jqx.ptrnd(G.x);var o=a.jqx.ptrnd(G.y);var v=a.jqx.ptrnd(G.width);var t=a.jqx.ptrnd(G.height);var s=G.halign;var k=G.valign;var D=G.angle;var c=G.rotateAround;var f=G.textPartsInfo;var e=f.parts;var E=G.clip;if(E==undefined){E=true}A.save();if(!s){s="center"}if(!k){k="center"}if(E){A.rect(p,o,v,t);A.clip()}var H=G.textWidth;var l=G.textHeight;var q=v||0;var C=t||0;A.fillStyle=G.color;A.font=G.fontWeight+" "+G.fontSize+" "+G.fontFamily;if(!D||D==0){o+=l;if(k=="center"||k=="middle"){o+=(C-l)/2}else{if(k=="bottom"){o+=C-l}}if(!v){v=H}if(!t){t=l}var n=0;for(var B=e.length-1;B>=0;B--){var u=e[B];var I=p;var m=e[B].width;var d=e[B].height;if(s=="center"){I+=(q-m)/2}else{if(s=="right"){I+=(q-m)}}A.fillText(u.text,I,o+n);n-=u.height+(B>0?4:0)}A.restore();return}var z=a.jqx.commonRenderer.alignTextInRect(p,o,v,t,H,l,s,k,D,c);p=z.x;o=z.y;var j=D*Math.PI*2/360;A.translate(p,o);A.rotate(j);var n=0;var F=f.width;for(var B=e.length-1;B>=0;B--){var I=0;if(s=="center"){I+=(F-e[B].width)/2}else{if(s=="right"){I+=(F-e[B].width)}}A.fillText(e[B].text,I,n);n-=e[B].height+4}A.restore()}},refresh:function(){this.ctx.clearRect(0,0,this.canvas[0].width,this.canvas[0].height);for(var c in this._elements){var d=this._elements[c];this._renderers.setFillStyle(this,d);this._renderers.setStroke(this,d);this._renderers[this._elements[c].type](this.ctx,d)}}};a.jqx.createRenderer=function(c,e){var d=c;var f=d.renderer=null;if(document.createElementNS&&(d.renderEngine!="HTML5"&&d.renderEngine!="VML")){f=new a.jqx.svgRenderer();if(!f.init(e)){if(d.renderEngine=="SVG"){throw"Your browser does not support SVG"}return null}}if(f==null&&d.renderEngine!="HTML5"){f=new a.jqx.vmlRenderer();if(!f.init(e)){if(d.renderEngine=="VML"){throw"Your browser does not support VML"}return null}d._isVML=true}if(f==null&&(d.renderEngine=="HTML5"||d.renderEngine==undefined)){f=new a.jqx.HTML5Renderer();if(!f.init(e)){throw"Your browser does not support HTML5 Canvas"}}d.renderer=f;return f},a.jqx._widgetToImage=function(q,k,f,o,i,h){var m=q;if(!m){return false}if(f==undefined||f==""){f="image."+k}var n=m.renderEngine;var d=m.enableAnimations;m.enableAnimations=false;m.renderEngine="HTML5";if(m.renderEngine!=n){try{m.refresh()}catch(j){m.renderEngine=n;m.refresh();m.enableAnimations=d;return false}}var c=m.renderer.getContainer().find("canvas")[0];var l=true;if(a.isFunction(h)){l=h(q,c)}var p=true;if(l){p=a.jqx.exportImage(c,k,f,o,i)}if(m.renderEngine!=n){m.renderEngine=n;m.refresh();m.enableAnimations=d}return p};a.jqx.getByPriority=function(c){var e=undefined;for(var d=0;d<c.length&&e==undefined;d++){if(e==undefined&&c[d]!=undefined){e=c[d]}}return e};a.jqx.exportImage=function(f,o,h,s,k){if(!f){return false}var m=o.toLowerCase()==="pdf";if(m){o="jpeg"}if(h==undefined||h==""){h="image."+o}if(s==undefined||s==""){throw"Please specifiy export server"}var u=true;try{if(f){var i=f.toDataURL("image/"+o);if(m){if(!a.jqx.pdfExport){a.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var j=595;switch(a.jqx.pdfExport.paperSize){case"legal":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=1008}break;case"letter":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=792}break;case"a3":var j=841;if(a.jqx.pdfExport.orientation!=="portrait"){j=1190}break;case"a4":var j=595;if(a.jqx.pdfExport.orientation!=="portrait"){j=842}break;case"a5":var j=420;if(a.jqx.pdfExport.orientation!=="portrait"){j=595}break}var l=a(f).width();var p=l*72/96;if(p>=j-20){p=j-20}var q=new pdfDataExport(a.jqx.pdfExport.orientation,"pt",a.jqx.pdfExport.paperSize);q.addImage(i,"JPEG",10,10,p,0);q.save(h);return}i=i.replace("data:image/"+o+";base64,","");if(k){a.ajax({dataType:"string",url:s,type:"POST",data:{content:i,fname:h},async:false,success:function(v,e,w){u=true},error:function(v,e,w){u=false}})}else{var d=document.createElement("form");d.method="POST";d.action=s;d.style.display="none";document.body.appendChild(d);var t=document.createElement("input");t.name="fname";t.value=h;t.style.display="none";var c=document.createElement("input");c.name="content";c.value=i;c.style.display="none";d.appendChild(t);d.appendChild(c);d.submit();document.body.removeChild(d);u=true}}}catch(n){u=false}return u}})(jqxBaseFramework);(function(a){jqxPlot=function(){};jqxPlot.prototype={get:function(e,c,d){return d!==undefined?e[c][d]:e[c]},min:function(h,e){var d=NaN;for(var c=0;c<h.length;c++){var f=this.get(h,c,e);if(isNaN(d)||f<d){d=f}}return d},max:function(h,e){var c=NaN;for(var d=0;d<h.length;d++){var f=this.get(h,d,e);if(isNaN(c)||f>c){c=f}}return c},sum:function(h,d){var e=0;for(var c=0;c<h.length;c++){var f=this.get(h,c,d);if(!isNaN(f)){e+=f}}return e},count:function(h,d){var e=0;for(var c=0;c<h.length;c++){var f=this.get(h,c,d);if(!isNaN(f)){e++}}return e},avg:function(d,c){return this.sum(d,c)/Math.max(1,count(d,c))},filter:function(f,e){if(!e){return f}var c=[];for(var d=0;d<f.length;d++){if(e(f[d])){c.push(f[d])}}return c},scale:function(e,k,l,i){if(isNaN(e)||e<Math.min(k[0],k[1])||e>Math.max(k[0],k[1])){return NaN}var p=NaN;var n=1;if(!i||(i.type===undefined||i.type!="logarithmic")){var m=Math.abs(k[1]-k[0]);if(!m){m=1}n=Math.abs(e-Math.min(k[0],k[1]))/m}else{if(i.type==="logarithmic"){var f=i.base;if(isNaN(f)){f=10}var j=Math.min(k[0],k[1]);if(j<=0){j=1}var o=Math.max(k[0],k[1]);if(o<=0){o=1}var h=a.jqx._rnd(a.jqx.log(o,f),1,o<1?false:true);o=Math.pow(f,h);var d=a.jqx._rnd(a.jqx.log(j,f),1,false);j=Math.pow(f,d);var c=a.jqx.log(e,f);n=Math.abs(c-d)/(h-d)}}p=Math.min(l[0],l[1])+n*Math.abs(l[1]-l[0]);if(i&&i.flip){p=Math.max(l[0],l[1])-p}return p},axis:function(q,s,m){if(m<=1){return[s,q]}var h=q;var k=s;if(isNaN(m)||m<2){m=2}var c=0;while(Math.round(q)!=q&&Math.round(s)!=s&&c<10){q*=10;s*=10;c++}var n=(s-q)/m;while(c<10&&Math.round(n)!=n){q*=10;s*=10;n*=10;c++}var w=[1,2,5];var j=0;var t=0;while(true){var o=t%w.length;var f=Math.floor(t/w.length);var p=Math.pow(10,f)*w[o];o=(t+1)%w.length;f=Math.floor((t+1)/w.length);var l=Math.pow(10,f)*w[o];if(n>=p&&n<l){break}t++}var e=l;var u=[];var v=a.jqx._rnd(q,e,false);var d=c<=0?1:Math.pow(10,c);while(v<s+e){u.push(v/d);v+=e}return u}}})(jqxBaseFramework);(function(a){a.jqx.toGreyScale=function(c){if(c.indexOf("#")==-1){return c}var d=a.jqx.cssToRgb(c);d[0]=d[1]=d[2]=Math.round(0.3*d[0]+0.59*d[1]+0.11*d[2]);var e=a.jqx.rgbToHex(d[0],d[1],d[2]);return"#"+e[0]+e[1]+e[2]},a.jqx.adjustColor=function(f,e){if(typeof(f)!="string"){return"#000000"}if(f.indexOf("#")==-1){return f}var h=a.jqx.cssToRgb(f);var d=a.jqx.rgbToHsl(h);d[2]=Math.min(1,d[2]*e);d[1]=Math.min(1,d[1]*e*1.1);h=a.jqx.hslToRgb(d);var f="#";for(var j=0;j<3;j++){var k=Math.round(h[j]);k=a.jqx.decToHex(k);if(k.toString().length==1){f+="0"}f+=k}return f.toUpperCase()};a.jqx.decToHex=function(c){return c.toString(16)};a.jqx.hexToDec=function(c){return parseInt(c,16)};a.jqx.rgbToHex=function(e,d,c){return[a.jqx.decToHex(e),a.jqx.decToHex(d),a.jqx.decToHex(c)]};a.jqx.hexToRgb=function(d,f,c){return[a.jqx.hexToDec(d),a.jqx.hexToDec(f),a.jqx.hexToDec(c)]};a.jqx.cssToRgb=function(c){if(c.indexOf("rgb")<=-1){return a.jqx.hexToRgb(c.substring(1,3),c.substring(3,5),c.substring(5,7))}return c.substring(4,c.length-1).split(",")};a.jqx.hslToRgb=function(d){var f=parseFloat(d[0]);var e=parseFloat(d[1]);var c=parseFloat(d[2]);if(e==0){r=g=b=c}else{var i=c<0.5?c*(1+e):c+e-c*e;var j=2*c-i;r=a.jqx.hueToRgb(j,i,f+1/3);g=a.jqx.hueToRgb(j,i,f);b=a.jqx.hueToRgb(j,i,f-1/3)}return[r*255,g*255,b*255]};a.jqx.hueToRgb=function(e,d,c){if(c<0){c+=1}if(c>1){c-=1}if(c<1/6){return e+(d-e)*6*c}else{if(c<1/2){return d}else{if(c<2/3){return e+(d-e)*(2/3-c)*6}}}return e};a.jqx.rgbToHsl=function(j){var c=parseFloat(j[0])/255;var i=parseFloat(j[1])/255;var k=parseFloat(j[2])/255;var m=Math.max(c,i,k),e=Math.min(c,i,k);var f,o,d=(m+e)/2;if(m==e){f=o=0}else{var n=m-e;o=d>0.5?n/(2-m-e):n/(m+e);switch(m){case c:f=(i-k)/n+(i<k?6:0);break;case i:f=(k-c)/n+2;break;case k:f=(c-i)/n+4;break}f/=6}return[f,o,d]};a.jqx.swap=function(c,e){var d=c;c=e;e=d};a.jqx.getNum=function(c){if(!a.isArray(c)){if(isNaN(c)){return 0}}else{for(var d=0;d<c.length;d++){if(!isNaN(c[d])){return c[d]}}}return 0};a.jqx._ptdist=function(d,f,c,e){return Math.sqrt((c-d)*(c-d)+(e-f)*(e-f))};a.jqx._ptrnd=function(d){if(!document.createElementNS){if(Math.round(d)==d){return d}return a.jqx._rnd(d,1,false,true)}var c=a.jqx._rnd(d,0.5,false,true);if(Math.abs(c-Math.round(c))!=0.5){return c>d?c-0.5:c+0.5}return c};a.jqx._ptRotate=function(e,k,d,j,h){var c=Math.sqrt(Math.pow(Math.abs(e-d),2)+Math.pow(Math.abs(k-j),2));var f=Math.asin((e-d)/c);var i=f+h;e=d+Math.cos(i)*c;k=j+Math.sin(i)*c;return{x:e,y:k}};a.jqx._rup=function(d){var c=Math.round(d);if(d>c){c++}return c};a.jqx.log=function(d,c){return Math.log(d)/(c?Math.log(c):1)};a.jqx._mod=function(d,c){var e=Math.abs(d>c?c:d);var f=1;if(e!=0){while(e*f<100){f*=10}}d=d*f;c=c*f;return(d%c)/f};a.jqx._rnd=function(e,h,f,d){if(isNaN(e)){return e}var c=e-((d==true)?e%h:a.jqx._mod(e,h));if(e==c){return c}if(f){if(e>c){c+=h}}else{if(c>e){c-=h}}return c};a.jqx.commonRenderer={pieSlicePath:function(l,k,i,t,C,D,e){if(!t){t=1}var n=Math.abs(C-D);var q=n>180?1:0;if(n>=360){D=C+359.99}var s=C*Math.PI*2/360;var j=D*Math.PI*2/360;var A=l,z=l,h=k,f=k;var o=!isNaN(i)&&i>0;if(o){e=0}if(e+i>0){if(e>0){var m=n/2+C;var B=m*Math.PI*2/360;l+=e*Math.cos(B);k-=e*Math.sin(B)}if(o){var w=i;A=l+w*Math.cos(s);h=k-w*Math.sin(s);z=l+w*Math.cos(j);f=k-w*Math.sin(j)}}var v=l+t*Math.cos(s);var u=l+t*Math.cos(j);var d=k-t*Math.sin(s);var c=k-t*Math.sin(j);var p="";if(o){p="M "+z+","+f;p+=" a"+i+","+i;p+=" 0 "+q+",1 "+(A-z)+","+(h-f);p+=" L"+v+","+d;p+=" a"+t+","+t;p+=" 0 "+q+",0 "+(u-v)+","+(c-d)}else{p="M "+u+","+c;p+=" a"+t+","+t;p+=" 0 "+q+",1 "+(v-u)+","+(d-c);p+=" L"+l+","+k+" Z"}return p},measureText:function(q,h,i,p,n){var f=n._getTextParts(q,h,i);var k=f.width;var c=f.height;if(false==p){c/=0.6}var d={};if(isNaN(h)){h=0}if(h==0){d={width:a.jqx._rup(k),height:a.jqx._rup(c)}}else{var m=h*Math.PI*2/360;var e=Math.abs(Math.sin(m));var l=Math.abs(Math.cos(m));var j=Math.abs(k*e+c*l);var o=Math.abs(k*l+c*e);d={width:a.jqx._rup(o),height:a.jqx._rup(j)}}if(p){d.textPartsInfo=f}return d},alignTextInRect:function(t,p,c,u,o,q,k,s,f,e){var m=f*Math.PI*2/360;var d=Math.sin(m);var l=Math.cos(m);var n=o*d;var j=o*l;if(k=="center"||k==""||k=="undefined"){t=t+c/2}else{if(k=="right"){t=t+c}}if(s=="center"||s=="middle"||s==""||s=="undefined"){p=p+u/2}else{if(s=="bottom"){p+=u-q/2}else{if(s=="top"){p+=q/2}}}e=e||"";var h="middle";if(e.indexOf("top")!=-1){h="top"}else{if(e.indexOf("bottom")!=-1){h="bottom"}}var i="center";if(e.indexOf("left")!=-1){i="left"}else{if(e.indexOf("right")!=-1){i="right"}}if(i=="center"){t-=j/2;p-=n/2}else{if(i=="right"){t-=j;p-=n}}if(h=="top"){t-=q*d;p+=q*l}else{if(h=="middle"){t-=q*d/2;p+=q*l/2}}t=a.jqx._rup(t);p=a.jqx._rup(p);return{x:t,y:p}}};a.jqx.svgRenderer=function(){};a.jqx.svgRenderer.prototype={_svgns:"http://www.w3.org/2000/svg",init:function(h){var f="<table id=tblChart cellspacing='0' cellpadding='0' border='0' align='left' valign='top'><tr><td colspan=2 id=tdTop></td></tr><tr><td id=tdLeft></td><td><div class='chartContainer' onselectstart='return false;'></div></td></tr></table>";h.append(f);this.host=h;var c=h.find(".chartContainer");c[0].style.width=h.width()+"px";c[0].style.height=h.height()+"px";var j;try{var d=document.createElementNS(this._svgns,"svg");d.setAttribute("id","svgChart");d.setAttribute("version","1.1");d.setAttribute("width","100%");d.setAttribute("height","100%");d.setAttribute("overflow","hidden");c[0].appendChild(d);this.canvas=d}catch(i){return false}this._id=new Date().getTime();this.clear();this._layout();this._runLayoutFix();return true},getType:function(){return"SVG"},refresh:function(){},_runLayoutFix:function(){var c=this;this._fixLayout()},_fixLayout:function(){var i=a(this.canvas).position();var e=(parseFloat(i.left)==parseInt(i.left));var c=(parseFloat(i.top)==parseInt(i.top));if(a.jqx.browser.msie){var e=true,c=true;var f=this.host;var d=0,h=0;while(f&&f.position&&f[0].parentNode){var j=f.position();d+=parseFloat(j.left)-parseInt(j.left);h+=parseFloat(j.top)-parseInt(j.top);f=f.parent()}e=parseFloat(d)==parseInt(d);c=parseFloat(h)==parseInt(h)}if(!e){this.host.find("#tdLeft")[0].style.width="0.5px"}if(!c){this.host.find("#tdTop")[0].style.height="0.5px"}},_layout:function(){var d=a(this.canvas).offset();var c=this.host.find(".chartContainer");this._width=Math.max(a.jqx._rup(this.host.width())-1,0);this._height=Math.max(a.jqx._rup(this.host.height())-1,0);c[0].style.width=this._width;c[0].style.height=this._height;this._fixLayout()},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeElement(this.canvas.firstElementChild)}this._defaultParent=undefined;this._defs=document.createElementNS(this._svgns,"defs");this._gradients={};this.canvas.appendChild(this._defs)},removeElement:function(e){if(undefined==e){return}this.removeHandler(e);try{while(e.firstChild){this.removeElement(e.firstChild)}if(e.parentNode){e.parentNode.removeChild(e)}else{this.canvas.removeChild(e)}}catch(d){var c=d}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElementNS(this._svgns,"g");c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(e){var f=document.createElementNS(this._svgns,"clipPath");var d=document.createElementNS(this._svgns,"rect");this.attr(d,{x:e.x,y:e.y,width:e.width,height:e.height,fill:"none"});this._clipId=this._clipId||0;f.id="cl"+this._id+"_"+(++this._clipId).toString();f.appendChild(d);this._defs.appendChild(f);return f},getWindowHref:function(){var d=a.jqx.browser;if(d&&d.browser=="msie"&&d.version<10){return""}var c=window.location.href;if(!c){return c}c=c.replace(/([\('\)])/g,"\\$1");c=c.replace(/#.*$/,"");return c},setClip:function(e,d){var c="url("+this.getWindowHref()+"#"+d.id+")";return this.attr(e,{"clip-path":c})},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},shape:function(c,f){var d=document.createElementNS(this._svgns,c);if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},_getTextParts:function(t,j,k){var h={width:0,height:0,parts:[]};if(undefined===t){return h}var o=0.6;var u=t.toString().split("<br>");var q=this._activeParent();var m=document.createElementNS(this._svgns,"text");this.attr(m,k);for(var l=0;l<u.length;l++){var d=u[l];var f=m.ownerDocument.createTextNode(d);m.appendChild(f);q.appendChild(m);var s;try{s=m.getBBox()}catch(p){}var n=a.jqx._rup(s.width);var c=a.jqx._rup(s.height*o);m.removeChild(f);h.width=Math.max(h.width,n);h.height+=c+(l>0?4:0);h.parts.push({width:n,height:c,text:d})}q.removeChild(m);return h},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(z,t,s,E,C,K,M,L,v,m,d){var B=this._measureText(z,K,M,true);var l=B.textPartsInfo;var j=l.parts;var D;if(!v){v="center"}if(!m){m="center"}if(j.length>1||L){D=this.beginGroup()}if(L){var k=this.createClipRect({x:a.jqx._rup(t)-1,y:a.jqx._rup(s)-1,width:a.jqx._rup(E)+2,height:a.jqx._rup(C)+2});this.setClip(D,k)}var q=this._activeParent();var O=0,n=0;var c=0.6;O=l.width;n=l.height;if(isNaN(E)||E<=0){E=O}if(isNaN(C)||C<=0){C=n}var u=E||0;var J=C||0;if(!K||K==0){s+=n;if(m=="center"||m=="middle"){s+=(J-n)/2}else{if(m=="bottom"){s+=J-n}}if(!E){E=O}if(!C){C=n}var q=this._activeParent();var p=0;for(var I=j.length-1;I>=0;I--){var A=document.createElementNS(this._svgns,"text");this.attr(A,M);this.attr(A,{cursor:"default"});var H=A.ownerDocument.createTextNode(j[I].text);A.appendChild(H);var P=t;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(u-o)/2}else{if(v=="right"){P+=(u-o)}}this.attr(A,{x:a.jqx._rup(P),y:a.jqx._rup(s+p),width:a.jqx._rup(o),height:a.jqx._rup(f)});q.appendChild(A);p-=j[I].height+4}if(D){this.endGroup();return D}return A}var F=a.jqx.commonRenderer.alignTextInRect(t,s,E,C,O,n,v,m,K,d);t=F.x;s=F.y;var G=this.shape("g",{transform:"translate("+t+","+s+")"});var e=this.shape("g",{transform:"rotate("+K+")"});G.appendChild(e);var p=0;for(var I=j.length-1;I>=0;I--){var N=document.createElementNS(this._svgns,"text");this.attr(N,M);this.attr(N,{cursor:"default"});var H=N.ownerDocument.createTextNode(j[I].text);N.appendChild(H);var P=0;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(l.width-o)/2}else{if(v=="right"){P+=(l.width-o)}}this.attr(N,{x:a.jqx._rup(P),y:a.jqx._rup(p),width:a.jqx._rup(o),height:a.jqx._rup(f)});e.appendChild(N);p-=f+4}q.appendChild(G);if(D){this.endGroup()}return G},line:function(e,h,d,f,i){var c=this.shape("line",{x1:e,y1:h,x2:d,y2:f});this.attr(c,i);return c},path:function(d,e){var c=this.shape("path");c.setAttribute("d",d);if(e){this.attr(c,e)}return c},rect:function(c,j,d,f,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=Math.max(1,a.jqx._rnd(d,1,false));f=Math.max(1,a.jqx._rnd(f,1,false));var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},circle:function(c,h,e,f){var d=this.shape("circle",{cx:c,cy:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,e,h,c,k,d){var f=this.pieSlicePath(l,j,i,e,h,c,k);var m=this.shape("path");m.setAttribute("d",f);if(d){this.attr(m,d)}return m},attr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=e[d]}else{c.setAttribute(d,e[d])}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=""}else{c.removeAttribute(e[d])}}},getAttr:function(d,c){return d.getAttribute(c)},_gradients:{},_toLinearGradient:function(f,k,l){var d="grd"+this._id+f.replace("#","")+(k?"v":"h");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"linearGradient");this.attr(e,{x1:"0%",y1:"0%",x2:k?"0%":"100%",y2:k?"100%":"0%",id:d});for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c},_toRadialGradient:function(f,l,k){var d="grd"+this._id+f.replace("#","")+"r"+(k!=undefined?k.key:"");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"radialGradient");if(k==undefined){this.attr(e,{cx:"50%",cy:"50%",r:"100%",fx:"50%",fy:"50%",id:d})}else{this.attr(e,{cx:k.x,cy:k.y,r:k.outerRadius,id:d,gradientUnits:"userSpaceOnUse"})}for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c}};a.jqx.vmlRenderer=function(){};a.jqx.vmlRenderer.prototype={init:function(j){var h="<div class='chartContainer' style=\"position:relative;overflow:hidden;\"><div>";j.append(h);this.host=j;var c=j.find(".chartContainer");c[0].style.width=j.width()+"px";c[0].style.height=j.height()+"px";var f=true;try{for(var d=0;d<document.namespaces.length;d++){if(document.namespaces[d].name=="v"&&document.namespaces[d].urn=="urn:schemas-microsoft-com:vml"){f=false;break}}}catch(k){return false}if(a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9&&(document.childNodes&&document.childNodes.length>0&&document.childNodes[0].data&&document.childNodes[0].data.indexOf("DOCTYPE")!=-1)){if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml")}this._ie8mode=true}else{if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().cssText="v\\:* { behavior: url(#default#VML); display: inline-block; }"}}this.canvas=c[0];this._width=Math.max(a.jqx._rup(c.width()),0);this._height=Math.max(a.jqx._rup(c.height()),0);c[0].style.width=this._width+2;c[0].style.height=this._height+2;this._id=new Date().getTime();this.clear();return true},getType:function(){return"VML"},refresh:function(){},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeHandler(this.canvas.firstElementChild);this.canvas.removeChild(this.canvas.firstElementChild)}this._gradients={};this._defaultParent=undefined},removeElement:function(c){if(c!=null){this.removeHandler(c);c.parentNode.removeChild(c)}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElement("v:group");d.style.position="absolute";d.coordorigin="0,0";d.coordsize=this._width+","+this._height;d.style.left=0;d.style.top=0;d.style.width=this._width;d.style.height=this._height;c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(c){var d=document.createElement("div");d.style.height=(c.height+1)+"px";d.style.width=(c.width+1)+"px";d.style.position="absolute";d.style.left=c.x+"px";d.style.top=c.y+"px";d.style.overflow="hidden";this._clipId=this._clipId||0;d.id="cl"+this._id+"_"+(++this._clipId).toString();this._activeParent().appendChild(d);return d},setClip:function(d,c){},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},_getTextParts:function(q,h,j){var f={width:0,height:0,parts:[]};var o=0.6;var s=q.toString().split("<br>");var p=this._activeParent();var l=document.createElement("v:textbox");this.attr(l,j);p.appendChild(l);for(var k=0;k<s.length;k++){var d=s[k];var e=document.createElement("span");e.appendChild(document.createTextNode(d));l.appendChild(e);if(j&&j["class"]){e.className=j["class"]}var n=a(l);var m=a.jqx._rup(n.width());var c=a.jqx._rup(n.height()*o);if(c==0&&a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9){var t=n.css("font-size");if(t){c=parseInt(t);if(isNaN(c)){c=0}}}l.removeChild(e);f.width=Math.max(f.width,m);f.height+=c+(k>0?2:0);f.parts.push({width:m,height:c,text:d})}p.removeChild(l);return f},_measureText:function(f,e,d,c){if(Math.abs(e)>45){e=90}else{e=0}return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(u,p,o,D,z,J,L,K,t,k){var E;if(L&&L.stroke){E=L.stroke}if(E==undefined){E="black"}var v=this._measureText(u,J,L,true);var f=v.textPartsInfo;var c=f.parts;var M=v.width;var l=v.height;if(isNaN(D)||D==0){D=M}if(isNaN(z)||z==0){z=l}var B;if(!t){t="center"}if(!k){k="center"}if(c.length>0||K){B=this.beginGroup()}if(K){var d=this.createClipRect({x:a.jqx._rup(p),y:a.jqx._rup(o),width:a.jqx._rup(D),height:a.jqx._rup(z)});this.setClip(B,d)}var n=this._activeParent();var s=D||0;var I=z||0;if(Math.abs(J)>45){J=90}else{J=0}var A=0,H=0;if(t=="center"){A+=(s-M)/2}else{if(t=="right"){A+=(s-M)}}if(k=="center"){H=(I-l)/2}else{if(k=="bottom"){H=I-l}}if(J==0){o+=l+H;p+=A}else{p+=M+A;o+=H}var m=0,N=0;var e;for(var G=c.length-1;G>=0;G--){var C=c[G];var q=(M-C.width)/2;if(J==0&&t=="left"){q=0}else{if(J==0&&t=="right"){q=M-C.width}else{if(J==90){q=(l-C.width)/2}}}var j=m-C.height;H=J==90?q:j;A=J==90?j:q;e=document.createElement("v:textbox");e.style.position="absolute";e.style.left=a.jqx._rup(p+A);e.style.top=a.jqx._rup(o+H);e.style.width=a.jqx._rup(C.width);e.style.height=a.jqx._rup(C.height);if(J==90){e.style.filter="progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";e.style.height=a.jqx._rup(C.height)+5}var F=document.createElement("span");F.appendChild(document.createTextNode(C.text));if(L&&L["class"]){F.className=L["class"]}e.appendChild(F);n.appendChild(e);m-=C.height+(G>0?2:0)}if(B){this.endGroup();return n}return e},shape:function(c,f){var d=document.createElement(this._createElementMarkup(c));if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},line:function(f,i,e,h,j){var c="M "+f+","+i+" L "+e+","+h+" X E";var d=this.path(c);this.attr(d,j);return d},_createElementMarkup:function(c){var d="<v:"+c+' style=""></v:'+c+">";if(this._ie8mode){d=d.replace('style=""','style="behavior: url(#default#VML);"')}return d},path:function(d,e){var c=document.createElement(this._createElementMarkup("shape"));c.style.position="absolute";c.coordsize=this._width+" "+this._height;c.coordorigin="0 0";c.style.width=parseInt(this._width);c.style.height=parseInt(this._height);c.style.left=0+"px";c.style.top=0+"px";c.setAttribute("path",d);this._activeParent().appendChild(c);if(e){this.attr(c,e)}return c},rect:function(c,j,d,e,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=a.jqx._rup(d);e=a.jqx._rup(e);var f=this.shape("rect",i);f.style.position="absolute";f.style.left=c;f.style.top=j;f.style.width=d;f.style.height=e;f.strokeweight=0;if(i){this.attr(f,i)}return f},circle:function(c,h,e,f){var d=this.shape("oval");c=a.jqx._ptrnd(c-e);h=a.jqx._ptrnd(h-e);e=a.jqx._rup(e);d.style.position="absolute";d.style.left=c;d.style.top=h;d.style.width=e*2;d.style.height=e*2;if(f){this.attr(d,f)}return d},updateCircle:function(e,c,f,d){if(c==undefined){c=parseFloat(e.style.left)+parseFloat(e.style.width)/2}if(f==undefined){f=parseFloat(e.style.top)+parseFloat(e.style.height)/2}if(d==undefined){d=parseFloat(e.width)/2}c=a.jqx._ptrnd(c-d);f=a.jqx._ptrnd(f-d);d=a.jqx._rup(d);e.style.left=c;e.style.top=f;e.style.width=d*2;e.style.height=d*2},pieSlicePath:function(m,l,j,u,E,F,e){if(!u){u=1}var o=Math.abs(E-F);var s=o>180?1:0;if(o>360){E=0;F=360}var t=E*Math.PI*2/360;var k=F*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e>0){var n=o/2+E;var D=n*Math.PI*2/360;m+=e*Math.cos(D);l-=e*Math.sin(D)}if(p){var z=j;B=a.jqx._ptrnd(m+z*Math.cos(t));h=a.jqx._ptrnd(l-z*Math.sin(t));A=a.jqx._ptrnd(m+z*Math.cos(k));f=a.jqx._ptrnd(l-z*Math.sin(k))}var w=a.jqx._ptrnd(m+u*Math.cos(t));var v=a.jqx._ptrnd(m+u*Math.cos(k));var d=a.jqx._ptrnd(l-u*Math.sin(t));var c=a.jqx._ptrnd(l-u*Math.sin(k));u=a.jqx._ptrnd(u);j=a.jqx._ptrnd(j);m=a.jqx._ptrnd(m);l=a.jqx._ptrnd(l);var i=Math.round(E*65535);var C=Math.round((F-E)*65536);if(j<0){j=1}var q="";if(p){q="M"+B+" "+h;q+=" AE "+m+" "+l+" "+j+" "+j+" "+i+" "+C;q+=" L "+v+" "+c;i=Math.round((E-F)*65535);C=Math.round(F*65536);q+=" AE "+m+" "+l+" "+u+" "+u+" "+C+" "+i;q+=" L "+B+" "+h}else{q="M"+m+" "+l;q+=" AE "+m+" "+l+" "+u+" "+u+" "+i+" "+C}q+=" X E";return q},pieslice:function(m,k,j,f,i,c,l,e){var h=this.pieSlicePath(m,k,j,f,i,c,l);var d=this.path(h,e);if(e){this.attr(d,e)}return d},_keymap:[{svg:"fill",vml:"fillcolor"},{svg:"stroke",vml:"strokecolor"},{svg:"stroke-width",vml:"strokeweight"},{svg:"stroke-dasharray",vml:"dashstyle"},{svg:"fill-opacity",vml:"fillopacity"},{svg:"stroke-opacity",vml:"strokeopacity"},{svg:"opacity",vml:"opacity"},{svg:"cx",vml:"style.left"},{svg:"cy",vml:"style.top"},{svg:"height",vml:"style.height"},{svg:"width",vml:"style.width"},{svg:"x",vml:"style.left"},{svg:"y",vml:"style.top"},{svg:"d",vml:"v"},{svg:"display",vml:"style.display"}],_translateParam:function(c){for(var d in this._keymap){if(this._keymap[d].svg==c){return this._keymap[d].vml}}return c},attr:function(d,f){if(!d||!f){return}for(var e in f){var c=this._translateParam(e);if(undefined==f[e]){continue}if(c=="fillcolor"&&f[e].indexOf("grd")!=-1){d.type=f[e]}else{if(c=="fillcolor"&&f[e]=="transparent"){d.style.filter="alpha(opacity=0)";d["-ms-filter"]="progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"}else{if(c=="opacity"||c=="fillopacity"){if(d.fill){d.fill.opacity=f[e]}}else{if(c=="textContent"){d.children[0].innerText=f[e]}else{if(c=="dashstyle"){d.dashstyle=f[e].replace(","," ")}else{if(c.indexOf("style.")==-1){d[c]=f[e]}else{d.style[c.replace("style.","")]=f[e]}}}}}}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){c.removeAttribute(e[d])}},getAttr:function(e,d){var c=this._translateParam(d);if(c=="opacity"||c=="fillopacity"){if(e.fill){return e.fill.opacity}else{return 1}}if(c.indexOf("style.")==-1){return e[c]}return e.style[c.replace("style.","")]},_gradients:{},_toRadialGradient:function(c,e,d){return c},_toLinearGradient:function(j,m,n){if(this._ie8mode){return j}var e="grd"+j.replace("#","")+(m?"v":"h");var f="#"+e+"";if(this._gradients[f]){return f}var h=document.createElement(this._createElementMarkup("fill"));h.type="gradient";h.method="linear";h.angle=m?0:90;var d="";for(var k=0;k<n.length;k++){var l=n[k];if(l>0){d+=", "}d+=l[0]+"% "+a.jqx.adjustColor(j,l[1])}h.colors=d;var c=document.createElement(this._createElementMarkup("shapetype"));c.appendChild(h);c.id=e;this.canvas.appendChild(c);return f}};a.jqx.HTML5Renderer=function(){};a.jqx.ptrnd=function(d){if(Math.abs(Math.round(d)-d)==0.5){return d}var c=Math.round(d);if(c<d){c=c-1}return c+0.5};a.jqx.HTML5Renderer.prototype={_elements:{},init:function(c){try{this.host=c;this.host.append("<canvas id='__jqxCanvasWrap' style='width:100%; height: 100%;'/>");this.canvas=c.find("#__jqxCanvasWrap");this.canvas[0].width=c.width();this.canvas[0].height=c.height();this.ctx=this.canvas[0].getContext("2d")}catch(d){return false}return true},getType:function(){return"HTML5"},getContainer:function(){if(this.canvas&&this.canvas.length==1){return this.canvas}return undefined},getRect:function(){return{x:0,y:0,width:this.canvas[0].width-1,height:this.canvas[0].height-1}},beginGroup:function(){},endGroup:function(){},setClip:function(){},createClipRect:function(c){},addHandler:function(c,e,d){},removeHandler:function(c,e,d){},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},clear:function(){this._elements={};this._maxId=0;this._renderers._gradients={};this._gradientId=0},removeElement:function(c){if(undefined==c){return}if(this._elements[c.id]){delete this._elements[c.id]}},_maxId:0,shape:function(c,f){var d={type:c,id:this._maxId++};for(var e in f){d[e]=f[e]}this._elements[d.id]=d;return d},attr:function(c,e){for(var d in e){c[d]=e[d]}},removeAttr:function(c,e){for(var d in e){delete c[e[d]]}},rect:function(c,j,d,f,i){if(isNaN(c)){throw'Invalid value for "x"'}if(isNaN(j)){throw'Invalid value for "y"'}if(isNaN(d)){throw'Invalid value for "width"'}if(isNaN(f)){throw'Invalid value for "height"'}var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},path:function(c,e){var d=this.shape("path",e);this.attr(d,{d:c});return d},line:function(d,f,c,e,h){return this.path("M "+d+","+f+" L "+c+","+e,h)},circle:function(c,h,e,f){var d=this.shape("circle",{x:c,y:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,f,h,c,k,d){var e=this.path(this.pieSlicePath(l,j,i,f,h,c,k),d);this.attr(e,{x:l,y:j,innerRadius:i,outerRadius:f,angleFrom:h,angleTo:c});return e},_getCSSStyle:function(d){var k=document.styleSheets;try{for(var f=0;f<k.length;f++){for(var c=0;k[f].cssRules&&c<k[f].cssRules.length;c++){if(k[f].cssRules[c].selectorText.indexOf(d)!=-1){return k[f].cssRules[c].style}}}}catch(h){}return{}},_getTextParts:function(s,h,j){var n="Arial";var t="10pt";var o="";if(j&&j["class"]){var c=this._getCSSStyle(j["class"]);if(c.fontSize){t=c.fontSize}if(c.fontFamily){n=c.fontFamily}if(c.fontWeight){o=c.fontWeight}}this.ctx.font=o+" "+t+" "+n;var f={width:0,height:0,parts:[]};var m=0.6;var q=s.toString().split("<br>");for(var k=0;k<q.length;k++){var e=q[k];var l=this.ctx.measureText(e).width;var p=document.createElement("span");p.font=this.ctx.font;p.textContent=e;document.body.appendChild(p);var d=p.offsetHeight*m;document.body.removeChild(p);f.width=Math.max(f.width,a.jqx._rup(l));f.height+=d+(k>0?4:0);f.parts.push({width:l,height:d,text:e})}return f},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(o,n,l,d,p,h,i,e,j,m,f){var q=this.shape("text",{text:o,x:n,y:l,width:d,height:p,angle:h,clip:e,halign:j,valign:m,rotateAround:f});if(i){this.attr(q,i)}q.fontFamily="Arial";q.fontSize="10pt";q.fontWeight="";q.color="#000000";if(i&&i["class"]){var c=this._getCSSStyle(i["class"]);q.fontFamily=c.fontFamily||q.fontFamily;q.fontSize=c.fontSize||q.fontSize;q.fontWeight=c.fontWeight||q.fontWeight;q.color=c.color||q.color}var k=this._measureText(o,0,i,true);this.attr(q,{textPartsInfo:k.textPartsInfo,textWidth:k.width,textHeight:k.height});if(d<=0||isNaN(d)){this.attr(q,{width:k.width})}if(p<=0||isNaN(p)){this.attr(q,{height:k.height})}return q},_toLinearGradient:function(d,j,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,j?"vertical":"horizontal",c);return e},_toRadialGradient:function(d,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,"radial",c);return e},_gradientId:0,createGradient:function(e,d,c){this._renderers.createGradient(e,d,c)},_renderers:{_gradients:{},createGradient:function(e,d,c){this._gradients[e]={orientation:d,colorStops:c}},setStroke:function(c,d){c.strokeStyle=d.stroke||"transparent";c.lineWidth=d["stroke-width"]||1;if(d["fill-opacity"]!=undefined){c.globalAlpha=d["fill-opacity"]}else{if(d.opacity!=undefined){c.globalAlpha=d.opacity}else{c.globalAlpha=1}}if(c.setLineDash){if(d["stroke-dasharray"]){c.setLineDash(d["stroke-dasharray"].split(","))}else{c.setLineDash([])}}},setFillStyle:function(o,f){o.fillStyle="transparent";if(f["fill-opacity"]!=undefined){o.globalAlpha=f["fill-opacity"]}else{if(f.opacity!=undefined){o.globalAlpha=f.opacity}else{o.globalAlpha=1}}if(f.fill&&f.fill.indexOf("#")==-1&&this._gradients[f.fill]){var m=this._gradients[f.fill].orientation!="horizontal";var j=this._gradients[f.fill].orientation=="radial";var d=a.jqx.ptrnd(f.x);var n=a.jqx.ptrnd(f.y);var c=a.jqx.ptrnd(f.x+(m?0:f.width));var k=a.jqx.ptrnd(f.y+(m?f.height:0));var l;if((f.type=="circle"||f.type=="path")&&j){x=a.jqx.ptrnd(f.x);y=a.jqx.ptrnd(f.y);r1=f.innerRadius||0;r2=f.outerRadius||f.r||0;l=o.createRadialGradient(x,y,r1,x,y,r2)}if(!j){if(isNaN(d)||isNaN(c)||isNaN(n)||isNaN(k)){d=0;n=0;c=m?0:o.canvas.width;k=m?o.canvas.height:0}l=o.createLinearGradient(d,n,c,k)}var e=this._gradients[f.fill].colorStops;for(var h=0;h<e.length;h++){l.addColorStop(e[h].percent,e[h].color)}o.fillStyle=l}else{if(f.fill){o.fillStyle=f.fill}}},rect:function(c,d){if(d.width==0||d.height==0){return}c.fillRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height);c.strokeRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height)},circle:function(c,d){if(d.r==0){return}c.beginPath();c.arc(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.r,0,Math.PI*2,false);c.closePath();c.fill();c.stroke()},_parsePoint:function(d){var c=this._parseNumber(d);var e=this._parseNumber(d);return({x:c,y:e})},_parseNumber:function(e){var f=false;for(var c=this._pos;c<e.length;c++){if((e[c]>="0"&&e[c]<="9")||e[c]=="."||(e[c]=="-"&&!f)){f=true;continue}if(!f&&(e[c]==" "||e[c]==",")){this._pos++;continue}break}var d=parseFloat(e.substring(this._pos,c));if(isNaN(d)){return undefined}this._pos=c;return d},_pos:0,_cmds:"mlcaz",_lastCmd:"",_isRelativeCmd:function(c){return a.jqx.string.contains(this._cmds,c)},_parseCmd:function(c){for(var d=this._pos;d<c.length;d++){if(a.jqx.string.containsIgnoreCase(this._cmds,c[d])){this._pos=d+1;this._lastCmd=c[d];return this._lastCmd}if(c[d]==" "){this._pos++;continue}if(c[d]>="0"&&c[d]<="9"){this._pos=d;if(this._lastCmd==""){break}else{return this._lastCmd}}}return undefined},_toAbsolutePoint:function(c){return{x:this._currentPoint.x+c.x,y:this._currentPoint.y+c.y}},_currentPoint:{x:0,y:0},path:function(E,N){var B=N.d;this._pos=0;this._lastCmd="";var n=undefined;this._currentPoint={x:0,y:0};E.beginPath();var I=0;while(this._pos<B.length){var H=this._parseCmd(B);if(H==undefined){break}if(H=="M"||H=="m"){var F=this._parsePoint(B);if(F==undefined){break}E.moveTo(F.x,F.y);this._currentPoint=F;if(n==undefined){n=F}continue}if(H=="L"||H=="l"){var F=this._parsePoint(B);if(F==undefined){break}E.lineTo(F.x,F.y);this._currentPoint=F;continue}if(H=="A"||H=="a"){var j=this._parseNumber(B);var h=this._parseNumber(B);var L=this._parseNumber(B)*(Math.PI/180);var P=this._parseNumber(B);var f=this._parseNumber(B);var q=this._parsePoint(B);if(this._isRelativeCmd(H)){q=this._toAbsolutePoint(q)}if(j==0||h==0){continue}var k=this._currentPoint;var K={x:Math.cos(L)*(k.x-q.x)/2+Math.sin(L)*(k.y-q.y)/2,y:-Math.sin(L)*(k.x-q.x)/2+Math.cos(L)*(k.y-q.y)/2};var l=Math.pow(K.x,2)/Math.pow(j,2)+Math.pow(K.y,2)/Math.pow(h,2);if(l>1){j*=Math.sqrt(l);h*=Math.sqrt(l)}var t=(P==f?-1:1)*Math.sqrt(((Math.pow(j,2)*Math.pow(h,2))-(Math.pow(j,2)*Math.pow(K.y,2))-(Math.pow(h,2)*Math.pow(K.x,2)))/(Math.pow(j,2)*Math.pow(K.y,2)+Math.pow(h,2)*Math.pow(K.x,2)));if(isNaN(t)){t=0}var J={x:t*j*K.y/h,y:t*-h*K.x/j};var D={x:(k.x+q.x)/2+Math.cos(L)*J.x-Math.sin(L)*J.y,y:(k.y+q.y)/2+Math.sin(L)*J.x+Math.cos(L)*J.y};var C=function(i){return Math.sqrt(Math.pow(i[0],2)+Math.pow(i[1],2))};var z=function(m,i){return(m[0]*i[0]+m[1]*i[1])/(C(m)*C(i))};var O=function(m,i){return(m[0]*i[1]<m[1]*i[0]?-1:1)*Math.acos(z(m,i))};var G=O([1,0],[(K.x-J.x)/j,(K.y-J.y)/h]);var p=[(K.x-J.x)/j,(K.y-J.y)/h];var o=[(-K.x-J.x)/j,(-K.y-J.y)/h];var M=O(p,o);if(z(p,o)<=-1){M=Math.PI}if(z(p,o)>=1){M=0}if(f==0&&M>0){M=M-2*Math.PI}if(f==1&&M<0){M=M+2*Math.PI}var z=(j>h)?j:h;var A=(j>h)?1:j/h;var w=(j>h)?h/j:1;E.translate(D.x,D.y);E.rotate(L);E.scale(A,w);E.arc(0,0,z,G,G+M,1-f);E.scale(1/A,1/w);E.rotate(-L);E.translate(-D.x,-D.y);continue}if((H=="Z"||H=="z")&&n!=undefined){E.lineTo(n.x,n.y);this._currentPoint=n;continue}if(H=="C"||H=="c"){var e=this._parsePoint(B);var d=this._parsePoint(B);var c=this._parsePoint(B);E.bezierCurveTo(e.x,e.y,d.x,d.y,c.x,c.y);this._currentPoint=c;continue}}E.fill();E.stroke();E.closePath()},text:function(A,G){var p=a.jqx.ptrnd(G.x);var o=a.jqx.ptrnd(G.y);var v=a.jqx.ptrnd(G.width);var t=a.jqx.ptrnd(G.height);var s=G.halign;var k=G.valign;var D=G.angle;var c=G.rotateAround;var f=G.textPartsInfo;var e=f.parts;var E=G.clip;if(E==undefined){E=true}A.save();if(!s){s="center"}if(!k){k="center"}if(E){A.rect(p,o,v,t);A.clip()}var H=G.textWidth;var l=G.textHeight;var q=v||0;var C=t||0;A.fillStyle=G.color;A.font=G.fontWeight+" "+G.fontSize+" "+G.fontFamily;if(!D||D==0){o+=l;if(k=="center"||k=="middle"){o+=(C-l)/2}else{if(k=="bottom"){o+=C-l}}if(!v){v=H}if(!t){t=l}var n=0;for(var B=e.length-1;B>=0;B--){var u=e[B];var I=p;var m=e[B].width;var d=e[B].height;if(s=="center"){I+=(q-m)/2}else{if(s=="right"){I+=(q-m)}}A.fillText(u.text,I,o+n);n-=u.height+(B>0?4:0)}A.restore();return}var z=a.jqx.commonRenderer.alignTextInRect(p,o,v,t,H,l,s,k,D,c);p=z.x;o=z.y;var j=D*Math.PI*2/360;A.translate(p,o);A.rotate(j);var n=0;var F=f.width;for(var B=e.length-1;B>=0;B--){var I=0;if(s=="center"){I+=(F-e[B].width)/2}else{if(s=="right"){I+=(F-e[B].width)}}A.fillText(e[B].text,I,n);n-=e[B].height+4}A.restore()}},refresh:function(){this.ctx.clearRect(0,0,this.canvas[0].width,this.canvas[0].height);for(var c in this._elements){var d=this._elements[c];this._renderers.setFillStyle(this.ctx,d);this._renderers.setStroke(this.ctx,d);this._renderers[this._elements[c].type](this.ctx,d)}}};a.jqx.createRenderer=function(c,e){var d=c;var f=d.renderer=null;if(document.createElementNS&&(d.renderEngine!="HTML5"&&d.renderEngine!="VML")){f=new a.jqx.svgRenderer();if(!f.init(e)){if(d.renderEngine=="SVG"){throw"Your browser does not support SVG"}return null}}if(f==null&&d.renderEngine!="HTML5"){f=new a.jqx.vmlRenderer();if(!f.init(e)){if(d.renderEngine=="VML"){throw"Your browser does not support VML"}return null}d._isVML=true}if(f==null&&(d.renderEngine=="HTML5"||d.renderEngine==undefined)){f=new a.jqx.HTML5Renderer();if(!f.init(e)){throw"Your browser does not support HTML5 Canvas"}}d.renderer=f;return f},a.jqx._widgetToImage=function(o,j,f,m,h){var k=o;if(!k){return false}if(f==undefined||f==""){f="image."+j}var l=k.renderEngine;var d=k.enableAnimations;k.enableAnimations=false;k.renderEngine="HTML5";if(k.renderEngine!=l){try{k.refresh()}catch(i){k.renderEngine=l;k.refresh();k.enableAnimations=d;return false}}var c=k.renderer.getContainer()[0];var n=a.jqx.exportImage(c,j,f,m,h);if(k.renderEngine!=l){k.renderEngine=l;k.refresh();k.enableAnimations=d}return n};a.jqx.getByPriority=function(c){var e=undefined;for(var d=0;d<c.length&&e==undefined;d++){if(e==undefined&&c[d]!=undefined){e=c[d]}}return e};a.jqx.exportImage=function(f,o,h,s,k){if(!f){return false}var m=o.toLowerCase()==="pdf";if(m){o="jpeg"}if(h==undefined||h==""){h="image."+o}if(s==undefined||s==""){throw"Please specifiy export server"}var u=true;try{if(f){var i=f.toDataURL("image/"+o);if(m){if(!a.jqx.pdfExport){a.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var j=595;switch(a.jqx.pdfExport.paperSize){case"legal":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=1008}break;case"letter":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=792}break;case"a3":var j=841;if(a.jqx.pdfExport.orientation!=="portrait"){j=1190}break;case"a4":var j=595;if(a.jqx.pdfExport.orientation!=="portrait"){j=842}break;case"a5":var j=420;if(a.jqx.pdfExport.orientation!=="portrait"){j=595}break}var l=a(f).width();var p=l*72/96;if(p>=j-20){p=j-20}var q=new pdfDataExport(a.jqx.pdfExport.orientation,"pt",a.jqx.pdfExport.paperSize);q.addImage(i,"JPEG",10,10,p,0);q.save(h);return}i=i.replace("data:image/"+o+";base64,","");if(k){a.ajax({dataType:"string",url:s,type:"POST",data:{content:i,fname:h},async:false,success:function(v,e,w){u=true},error:function(v,e,w){u=false}})}else{var d=document.createElement("form");d.method="POST";d.action=s;d.style.display="none";document.body.appendChild(d);var t=document.createElement("input");t.name="fname";t.value=h;t.style.display="none";var c=document.createElement("input");c.name="content";c.value=i;c.style.display="none";d.appendChild(t);d.appendChild(c);d.submit();document.body.removeChild(d);u=true}}}catch(n){u=false}return u}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxChart","",{});a.extend(a.jqx._jqxChart.prototype,{defineInstance:function(){a.extend(true,this,this._defaultSettings);this._createColorsCache()},_defaultSettings:{title:"Title",description:"Description",source:[],seriesGroups:[],categoryAxis:null,xAxis:{},valueAxis:null,renderEngine:"",enableAnimations:true,enableAxisTextAnimation:false,backgroundImage:"",background:"#FFFFFF",padding:{left:5,top:5,right:5,bottom:5},backgroundColor:"#FFFFFF",showBorderLine:true,borderLineWidth:1,borderLineColor:null,borderColor:null,titlePadding:{left:5,top:5,right:5,bottom:10},showLegend:true,legendLayout:null,enabled:true,colorScheme:"scheme01",animationDuration:500,showToolTips:true,toolTipShowDelay:500,toolTipDelay:500,toolTipHideDelay:4000,toolTipMoveDuration:300,toolTipFormatFunction:null,toolTipAlignment:"dataPoint",localization:undefined,columnSeriesOverlap:false,rtl:false,legendPosition:null,greyScale:false,axisPadding:5,enableCrosshairs:false,crosshairsColor:"#BCBCBC",crosshairsDashStyle:"2,2",crosshairsLineWidth:1,enableEvents:true,_itemsToggleState:[],_isToggleRefresh:false,_isSelectorRefresh:false,_sliders:[],_selectorRange:[],_rangeSelectorInstances:{},_resizeState:{},renderer:null,_isRangeSelectorInstance:false,drawBefore:null,draw:null,_renderData:{},enableSampling:true,samplingThreshold:5000},_defaultLineColor:"#BCBCBC",_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_getEvent:function(c){if(this._isTouchDevice){return this._touchEvents[c]}else{return c}},destroy:function(){this.host.remove()},createInstance:function(e){if(!a.jqx.dataAdapter){throw"jqxdata.js is not loaded"}var d=this;d._refreshOnDownloadComlete();d._isTouchDevice=a.jqx.mobile.isTouchDevice();d.addHandler(d.host,d._getEvent("mousemove"),function(i){if(d.enabled==false){return}if(!d._isRangeSelectorInstance){d.host.css("cursor","default")}var h=i.pageX||i.clientX||i.screenX;var l=i.pageY||i.clientY||i.screenY;var k=d.host.offset();if(d._isTouchDevice){var j=a.jqx.position(i);h=j.left;l=j.top}h-=k.left;l-=k.top;d.onmousemove(h,l)});d.addHandler(d.host,d._getEvent("mouseleave"),function(j){if(d.enabled==false){return}var h=d._mouseX;var k=d._mouseY;var i=d._plotRect;if(i&&h>=i.x&&h<=i.x+i.width&&k>=i.y&&k<=i.y+i.height){return}d._cancelTooltipTimer();d._hideToolTip(0);d._unselect()});d.addHandler(d.host,"click",function(i){if(d.enabled==false){return}var h=i.pageX||i.clientX||i.screenX;var l=i.pageY||i.clientY||i.screenY;var k=d.host.offset();if(d._isTouchDevice){var j=a.jqx.position(i);h=j.left;l=j.top}h-=k.left;l-=k.top;d._mouseX=h;d._mouseY=l;if(!isNaN(d._lastClickTs)){if((new Date()).valueOf()-d._lastClickTs<100){return}}this._hostClickTimer=setTimeout(function(){if(!d._isTouchDevice){d._cancelTooltipTimer();d._hideToolTip();d._unselect()}if(d._pointMarker&&d._pointMarker.element){var n=d.seriesGroups[d._pointMarker.gidx];var m=n.series[d._pointMarker.sidx];i.stopImmediatePropagation();d._raiseItemEvent("click",n,m,d._pointMarker.iidx)}},100)});var f=d.element.style;if(f){var c=false;if(f.width!=null){c|=f.width.toString().indexOf("%")!=-1}if(f.height!=null){c|=f.height.toString().indexOf("%")!=-1}if(c){a.jqx.utilities.resize(this.host,function(){if(d.timer){clearTimeout(d.timer)}var h=1;d.timer=setTimeout(function(){var i=d.enableAnimations;d.enableAnimations=false;d.refresh();d.enableAnimations=i},h)},false,true)}}},_refreshOnDownloadComlete:function(){var e=this;var f=this.source;if(f instanceof a.jqx.dataAdapter){var h=f._options;if(h==undefined||(h!=undefined&&!h.autoBind)){f.autoSync=false;f.dataBind()}var d=this.element.id;if(f.records.length==0){var c=function(){if(e.ready){e.ready()}e.refresh()};f.unbindDownloadComplete(d);f.bindDownloadComplete(d,c)}else{if(e.ready){e.ready()}}f.unbindBindingUpdate(d);f.bindBindingUpdate(d,function(){if(e._supressBindingRefresh){return}e.refresh()})}},propertyChangedHandler:function(c,d,f,e){if(this.isInitialized==undefined||this.isInitialized==false){return}if(d=="source"){this._refreshOnDownloadComlete()}this.refresh()},_initRenderer:function(c){if(!a.jqx.createRenderer){throw"Please include jqxdraw.js"}return a.jqx.createRenderer(this,c)},_internalRefresh:function(){var c=this;if(a.jqx.isHidden(c.host)){return}c._stopAnimations();if(!c.renderer||(!c._isToggleRefresh&&!c._isUpdate)){c._hideToolTip(0);c._isVML=false;c.host.empty();c._measureDiv=undefined;c._initRenderer(c.host)}var e=c.renderer;if(!e){return}var d=e.getRect();c._render({x:1,y:1,width:d.width,height:d.height});this._raiseEvent("refreshBegin",{instance:this});if(e instanceof a.jqx.HTML5Renderer){e.refresh()}c._isUpdate=false;this._raiseEvent("refreshEnd",{instance:this})},saveAsPNG:function(e,c,d){return this._saveAsImage("png",e,c,d)},saveAsJPEG:function(e,c,d){return this._saveAsImage("jpeg",e,c,d)},saveAsPDF:function(e,c,d){return this._saveAsImage("pdf",e,c,d)},_saveAsImage:function(f,k,c,d){var j=false;for(var e=0;e<this.seriesGroups.length&&!j;e++){var h=this._getXAxis(e);if(h&&h.rangeSelector){j=true}}return a.jqx._widgetToImage(this,f,k,c,d,j?this._selectorSaveAsImageCallback:undefined)},_selectorSaveAsImageCallback:function(G,l){var u=G;for(var E=0;E<u.seriesGroups.length;E++){var q=u._getXAxis(E);if(!q||!q.rangeSelector||q.rangeSelector.renderTo){continue}var o=u._rangeSelectorInstances[E];if(!o){continue}var v=o.jqxChart("getInstance");var f=v.renderEngine;var e=v.renderer.getRect();var h=v.renderer.getContainer().find("canvas")[0];var s=h.getContext("2d");var B=u._sliders[E];var c=u.seriesGroups[E].orientation=="horizontal";var d=!c?"width":"height";var A=c?"width":"height";var D=!c?"x":"y";var k=c?"x":"y";var m={};m[D]=B.startOffset+B.rect[D];m[k]=B.rect[k];m[d]=B.endOffset-B.startOffset;m[A]=B.rect[A];var p=q.rangeSelector.colorSelectedRange||"blue";var z=q.rangeSelector.colorUnselectedRange||"white";var n=q.rangeSelector.colorRangeLine||"grey";var t=[];t.push(v.renderer.rect(m.x,m.y,m.width,m.height,{fill:p,opacity:0.1}));if(!c){t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(m.x),a.jqx._ptrnd(B.rect.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(m.x+m.width),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(B.rect.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(m.x),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(m.x),a.jqx._ptrnd(B.rect.y+B.rect.height),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(m.x+m.width),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(m.x+m.width),a.jqx._ptrnd(B.rect.y+B.rect.height),{stroke:n,opacity:0.5}))}else{t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y+m.height),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(B.rect.y+B.rect.height),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x),a.jqx._ptrnd(m.y),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x),a.jqx._ptrnd(m.y+m.height),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y+m.height),{stroke:n,opacity:0.5}))}v.renderer.refresh();var w=s.getImageData(e.x,e.y,e.width,e.height);var F=l.getContext("2d");F.putImageData(w,parseInt(o.css("left")),parseInt(o.css("top")),1,1,e.width,e.height);for(var C=0;C<t.length;C++){v.renderer.removeElement(t[C])}v.renderer.refresh()}return true},refresh:function(){this._internalRefresh()},update:function(){this._isUpdate=true;this._internalRefresh()},_seriesTypes:["line","stackedline","stackedline100","spline","stackedspline","stackedspline100","stepline","stackedstepline","stackedstepline100","area","stackedarea","stackedarea100","splinearea","stackedsplinearea","stackedsplinearea100","steparea","stackedsteparea","stackedsteparea100","rangearea","splinerangearea","steprangearea","column","stackedcolumn","stackedcolumn100","rangecolumn","scatter","stackedscatter","stackedscatter100","bubble","stackedbubble","stackedbubble100","pie","donut","candlestick","ohlc","waterfall","stackedwaterfall"],clear:function(){var c=this;for(var d in c._defaultSettings){c[d]=c._defaultSettings[d]}c.title="";c.description="";c.refresh()},_render:function(E){var n=this;var K=n.renderer;n._colorsCache.clear();if(!n._isToggleRefresh&&n._isUpdate&&n._renderData){n._renderDataClone()}n._renderData=[];K.clear();n._unselect();n._hideToolTip(0);var o=n.backgroundImage;if(o==undefined||o==""){n.host.css({"background-image":""})}else{n.host.css({"background-image":(o.indexOf("(")!=-1?o:"url('"+o+"')")})}n._rect=E;var aa=n.padding||{left:5,top:5,right:5,bottom:5};var s=K.createClipRect(E);var N=K.beginGroup();K.setClip(N,s);var ak=K.rect(E.x,E.y,E.width-2,E.height-2);if(o==undefined||o==""){K.attr(ak,{fill:n.backgroundColor||n.background||"white"})}else{K.attr(ak,{fill:"transparent"})}if(n.showBorderLine!=false){var H=n.borderLineColor==undefined?n.borderColor:n.borderLineColor;if(H==undefined){H=n._defaultLineColor}var p=this.borderLineWidth;if(isNaN(p)||p<0||p>10){p=1}K.attr(ak,{"stroke-width":p,stroke:H})}else{if(a.jqx.browser.msie&&a.jqx.browser.version<9){K.attr(ak,{"stroke-width":1,stroke:n.backgroundColor||"white"})}}if(a.isFunction(n.drawBefore)){n.drawBefore(K,E)}var X={x:aa.left,y:aa.top,width:E.width-aa.left-aa.right,height:E.height-aa.top-aa.bottom};n._paddedRect=X;var f=n.titlePadding||{left:2,top:2,right:2,bottom:2};var m;if(n.title&&n.title.length>0){var U=n.toThemeProperty("jqx-chart-title-text",null);m=K.measureText(n.title,0,{"class":U});K.text(n.title,X.x+f.left,X.y+f.top,X.width-(f.left+f.right),m.height,0,{"class":U},true,"center","center");X.y+=m.height;X.height-=m.height}if(n.description&&n.description.length>0){var V=n.toThemeProperty("jqx-chart-title-description",null);m=K.measureText(n.description,0,{"class":V});K.text(n.description,X.x+f.left,X.y+f.top,X.width-(f.left+f.right),m.height,0,{"class":V},true,"center","center");X.y+=m.height;X.height-=m.height}if(n.title||n.description){X.y+=(f.bottom+f.top);X.height-=(f.bottom+f.top)}var c={x:X.x,y:X.y,width:X.width,height:X.height};n._plotRect=c;n._buildStats(c);var J=n._isPieOnlySeries();var u=n.seriesGroups;var G;var F={xAxis:{},valueAxis:{}};for(var ab=0;ab<u.length&&!J;ab++){if(u[ab].type=="pie"||u[ab].type=="donut"){continue}var B=n._getXAxis(ab);if(!B){throw"seriesGroup["+ab+"] is missing xAxis definition"}var ag=B==n._getXAxis()?-1:ab;F.xAxis[ag]=0}var W=n.axisPadding;if(isNaN(W)){W=5}var t={left:0,right:0,leftCount:0,rightCount:0};var q=[];for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.type=="pie"||af.type=="donut"||af.spider==true||af.polar==true){q.push({width:0,position:0,xRel:0});continue}G=af.orientation=="horizontal";var B=n._getXAxis(ab);var ag=B==n._getXAxis()?-1:ab;var l=n._getValueAxis(ab);var Q=l==n._getValueAxis()?-1:ab;var T=!G?l.axisSize:B.axisSize;var k={x:0,y:c.y,width:c.width,height:c.height};var S=G?n._getXAxis(ab).position:l.position;if(!T||T=="auto"){if(G){T=this._renderXAxis(ab,k,true,c).width;if((F.xAxis[ag]&1)==1){T=0}else{if(T>0){F.xAxis[ag]|=1}}}else{T=n._renderValueAxis(ab,k,true,c).width;if((F.valueAxis[Q]&1)==1){T=0}else{if(T>0){F.valueAxis[Q]|=1}}}}if(S!="left"&&n.rtl==true){S="right"}if(S!="right"){S="left"}if(t[S+"Count"]>0&&t[S]>0&&T>0){t[S]+=W}q.push({width:T,position:S,xRel:t[S]});t[S]+=T;t[S+"Count"]++}var z=Math.max(1,Math.max(E.width,E.height));var ae={top:0,bottom:0,topCount:0,bottomCount:0};var Y=[];for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.type=="pie"||af.type=="donut"||af.spider==true||af.polar==true){Y.push({height:0,position:0,yRel:0});continue}G=af.orientation=="horizontal";var l=this._getValueAxis(ab);var Q=l==n._getValueAxis()?-1:ab;var B=n._getXAxis(ab);var ag=B==n._getXAxis()?-1:ab;var ad=!G?B.axisSize:l.axisSize;var S=G?l.position:B.position;if(!ad||ad=="auto"){if(G){ad=n._renderValueAxis(ab,{x:0,y:0,width:z,height:0},true,c).height;if((F.valueAxis[Q]&2)==2){ad=0}else{if(ad>0){F.valueAxis[Q]|=2}}}else{ad=n._renderXAxis(ab,{x:0,y:0,width:z,height:0},true).height;if((F.xAxis[ag]&2)==2){ad=0}else{if(ad>0){F.xAxis[ag]|=2}}}}if(S!="top"){S="bottom"}if(ae[S+"Count"]>0&&ae[S]>0&&ad>0){ae[S]+=W}Y.push({height:ad,position:S,yRel:ae[S]});ae[S]+=ad;ae[S+"Count"]++}n._createAnimationGroup("series");var v=(n.showLegend!=false);var D=!v?{width:0,height:0}:n._renderLegend(n.legendLayout?n._rect:X,true);if(this.legendLayout&&(!isNaN(this.legendLayout.left)||!isNaN(this.legendLayout.top))){D={width:0,height:0}}if(X.height<ae.top+ae.bottom+D.height||X.width<t.left+t.right){K.endGroup();return}c.height-=ae.top+ae.bottom+D.height;c.x+=t.left;c.width-=t.left+t.right;c.y+=ae.top;var I=[];if(!J){var ah=n._getXAxis().tickMarksColor||n._defaultLineColor;for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.polar==true||af.spider==true||af.type=="pie"||af.type=="donut"){continue}G=af.orientation=="horizontal";var ag=n._getXAxis(ab)==n._getXAxis()?-1:ab;var Q=n._getValueAxis(ab)==n._getValueAxis()?-1:ab;var k={x:c.x,y:0,width:c.width,height:Y[ab].height};if(Y[ab].position!="top"){k.y=c.y+c.height+Y[ab].yRel}else{k.y=c.y-Y[ab].yRel-Y[ab].height}if(G){if((F.valueAxis[Q]&4)==4){continue}if(!n._isGroupVisible(ab)){continue}n._renderValueAxis(ab,k,false,c);F.valueAxis[Q]|=4}else{I.push(k);if((F.xAxis[ag]&4)==4){continue}if(!n._isGroupVisible(ab)){continue}n._renderXAxis(ab,k,false,c);F.xAxis[ag]|=4}}}if(v){var C=n.legendLayout?n._rect:X;var R=X.x+a.jqx._ptrnd((X.width-D.width)/2);var P=c.y+c.height+ae.bottom;var T=X.width;var ad=D.height;if(n.legendLayout){if(!isNaN(n.legendLayout.left)){R=n.legendLayout.left}if(!isNaN(n.legendLayout.top)){P=n.legendLayout.top}if(!isNaN(n.legendLayout.width)){T=n.legendLayout.width}if(!isNaN(n.legendLayout.height)){ad=n.legendLayout.height}}if(R+T>C.x+C.width){T=C.x+C.width-R}if(P+ad>C.y+C.height){ad=C.y+C.height-P}n._renderLegend({x:R,y:P,width:T,height:ad})}n._hasHorizontalLines=false;if(!J){for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.polar==true||af.spider==true||af.type=="pie"||af.type=="donut"){continue}G=u[ab].orientation=="horizontal";var k={x:c.x-q[ab].xRel-q[ab].width,y:c.y,width:q[ab].width,height:c.height};if(q[ab].position!="left"){k.x=c.x+c.width+q[ab].xRel}var ag=n._getXAxis(ab)==n._getXAxis()?-1:ab;var Q=n._getValueAxis(ab)==n._getValueAxis()?-1:ab;if(G){I.push(k);if((F.xAxis[ag]&8)==8){continue}if(!n._isGroupVisible(ab)){continue}n._renderXAxis(ab,k,false,c);F.xAxis[ag]|=8}else{if((F.valueAxis[Q]&8)==8){continue}if(!n._isGroupVisible(ab)){continue}n._renderValueAxis(ab,k,false,c);F.valueAxis[Q]|=8}}}if(c.width<=0||c.height<=0){return}n._plotRect={x:c.x,y:c.y,width:c.width,height:c.height};for(ab=0;ab<u.length;ab++){this._drawPlotAreaLines(ab,true,{gridLines:false,tickMarks:false,alternatingBackground:true});this._drawPlotAreaLines(ab,false,{gridLines:false,tickMarks:false,alternatingBackground:true})}for(ab=0;ab<u.length;ab++){this._drawPlotAreaLines(ab,true,{gridLines:true,tickMarks:true,alternatingBackground:false});this._drawPlotAreaLines(ab,false,{gridLines:true,tickMarks:true,alternatingBackground:false})}var M=false;for(ab=0;ab<u.length&&!M;ab++){var af=u[ab];if(af.annotations!==undefined||a.isFunction(af.draw)||a.isFunction(af.drawBefore)){M=true;break}}var O=K.beginGroup();if(!M){var L=K.createClipRect({x:c.x-2,y:c.y,width:c.width+4,height:c.height});K.setClip(O,L)}for(ab=0;ab<u.length;ab++){var af=u[ab];var d=false;for(var ai in n._seriesTypes){if(n._seriesTypes[ai]==af.type){d=true;break}}if(!d){throw'Invalid serie type "'+af.type+'"'}if(a.isFunction(af.drawBefore)){af.drawBefore(K,E,ab,this)}if(af.polar==true||af.spider==true){if(af.type.indexOf("pie")==-1&&af.type.indexOf("donut")==-1){n._renderSpiderAxis(ab,c)}}n._renderAxisBands(ab,c,true);n._renderAxisBands(ab,c,false)}for(ab=0;ab<u.length;ab++){var af=u[ab];if(n._isColumnType(af.type)){n._renderColumnSeries(ab,c)}else{if(af.type.indexOf("pie")!=-1||af.type.indexOf("donut")!=-1){n._renderPieSeries(ab,c)}else{if(af.type.indexOf("line")!=-1||af.type.indexOf("area")!=-1){n._renderLineSeries(ab,c)}else{if(af.type.indexOf("scatter")!=-1||af.type.indexOf("bubble")!=-1){n._renderScatterSeries(ab,c)}else{if(af.type.indexOf("candlestick")!=-1||af.type.indexOf("ohlc")!=-1){n._renderCandleStickSeries(ab,c,af.type.indexOf("ohlc")!=-1)}}}}}if(af.annotations){if(!this._moduleAnnotations){throw"Please include 'jqxchart.annotations.js'"}for(var Z=0;Z<af.annotations.length;Z++){n._renderAnnotation(ab,af.annotations[Z],c)}}if(a.isFunction(af.draw)){n.draw(K,E,ab,this)}}K.endGroup();if(n.enabled==false){var ac=K.rect(E.x,E.y,E.width,E.height);K.attr(ac,{fill:"#777777",opacity:0.5,stroke:"#00FFFFFF"})}if(a.isFunction(n.draw)){n.draw(K,E)}K.endGroup();n._startAnimation("series");var aj=false;for(var ab=0;ab<n.seriesGroups.length&&!aj;ab++){var B=n._getXAxis(ab);if(B&&B.rangeSelector){aj=true}}if(aj){if(!this._moduleRangeSelector){throw"Please include 'jqxchart.rangeselector.js'"}var e=[];if(!this._isSelectorRefresh){n.removeHandler(a(document),n._getEvent("mousemove"),n._onSliderMouseMove);n.removeHandler(a(document),n._getEvent("mousedown"),n._onSliderMouseDown);n.removeHandler(a(document),n._getEvent("mouseup"),n._onSliderMouseUp)}if(!n._isSelectorRefresh){n._rangeSelectorInstances={}}for(ab=0;ab<n.seriesGroups.length;ab++){var A=this._getXAxis(ab);if(e.indexOf(A)==-1){if(this._renderXAxisRangeSelector(ab,I[ab])){e.push(A)}}}}},_isPieOnlySeries:function(){var d=this.seriesGroups;if(d.length==0){return false}for(var c=0;c<d.length;c++){if(d[c].type!="pie"&&d[c].type!="donut"){return false}}return true},_renderChartLegend:function(T,C,Q,v){var l=this;var D=l.renderer;var I={x:C.x+3,y:C.y+3,width:C.width-6,height:C.height-6};var E={width:I.width,height:0};var G=0,F=0;var q=20;var m=0;var h=10;var O=10;var w=0;for(var N=0;N<T.length;N++){var J=T[N].css;if(!J){J=l.toThemeProperty("jqx-chart-legend-text",null)}q=20;var A=T[N].text;var k=D.measureText(A,0,{"class":J});if(k.height>q){q=k.height}if(k.width>w){w=k.width}if(v){if(N!=0){F+=q}if(F>I.height){F=0;G+=w+2*O+h;w=k.width;E.width=G+w}}else{if(G!=0){G+=O}if(G+2*h+k.width>I.width&&k.width<I.width){G=0;F+=q;q=20;m=I.width;E.height=F+q}}var K=false;if(k.width>C.width){K=true;var s=C.width;var R=A;var V=R.split(/\s+/).reverse();var n=[];var u="";var p=[];while(undefined!=(word=V.pop())){n.push(word);u=n.join(" ");var B=l.renderer.measureText(u,0,{"class":J});if(B.width>s&&p.length>0){n.pop();n=[word];u=n.join(" ")}p.push({text:u})}k.width=0;var c=0;for(var H=0;H<p.length;H++){var U=p[H].text;var B=l.renderer.measureText(U,0,{"class":J});k.width=Math.max(k.width,B.width);c+=k.height}k.height=c}var z=I.x+G+k.width<C.x+C.width&&I.y+F+k.height<C.y+C.height;if(l.legendLayout){var z=I.x+G+k.width<l._rect.x+l._rect.width&&I.y+F+k.height<l._rect.y+l._rect.height}if(!Q&&z){var j=T[N].seriesIndex;var o=T[N].groupIndex;var d=T[N].itemIndex;var W=T[N].fillColor;var S=T[N].lineColor;var f=l._isSerieVisible(o,j,d);var P=D.beginGroup();var M=f?T[N].opacity:0.1;if(K){var R=A;var s=C.width;var V=R.split(/\s+/).reverse();var n=[];var u="";var e=0;var p=[];while(undefined!=(word=V.pop())){n.push(word);u=n.join(" ");var B=l.renderer.measureText(u,0,{"class":J});if(B.width>s&&p.length>0){n.pop();e+=B.height;n=[word];u=n.join(" ")}p.push({text:u,dy:e})}for(var H=0;H<p.length;H++){var U=p[H].text;e=p[H].dy;var B=l.renderer.measureText(U,0,{"class":J});if(v){l.renderer.text(U,I.x+G+1.5*h,I.y+F+e,k.width,q,0,{"class":J},false,"left","center")}else{l.renderer.text(U,I.x+G+1.5*h,I.y+F+e,k.width,q,0,{"class":J},false,"center","center")}}var L=D.rect(I.x+G,I.y+F+h/2+e/2,h,h);if(v){F+=e}l.renderer.attr(L,{fill:W,"fill-opacity":M,stroke:S,"stroke-width":1,"stroke-opacity":T[N].opacity})}else{var L=D.rect(I.x+G,I.y+F+h/2,h,h);l.renderer.attr(L,{fill:W,"fill-opacity":M,stroke:S,"stroke-width":1,"stroke-opacity":T[N].opacity});if(v){l.renderer.text(A,I.x+G+1.5*h,I.y+F,k.width,k.height+h/2,0,{"class":J},false,"left","center")}else{l.renderer.text(A,I.x+G+1.5*h,I.y+F,k.width,q,0,{"class":J},false,"center","center")}}l.renderer.endGroup();l._setLegendToggleHandler(o,j,d,P)}if(v){}else{G+=k.width+2*h;if(m<G){m=G}}}if(Q){E.height=a.jqx._ptrnd(F+q+5);E.width=a.jqx._ptrnd(m);return E}},isSerieVisible:function(e,c,d){return this._isSerieVisible(e,c,d)},_isSerieVisible:function(h,c,e){while(this._itemsToggleState.length<h+1){this._itemsToggleState.push([])}var f=this._itemsToggleState[h];while(f.length<c+1){f.push(isNaN(e)?true:[])}var d=f[c];if(isNaN(e)){return d}if(!a.isArray(d)){f[c]=d=[]}while(d.length<e+1){d.push(true)}return d[e]},isGroupVisible:function(c){return this._isGroupVisible(c)},_isGroupVisible:function(f){var e=false;var d=this.seriesGroups[f].series;if(!d){return e}for(var c=0;c<d.length;c++){if(this._isSerieVisible(f,c)){e=true;break}}return e},_toggleSerie:function(j,c,f,d){var i=!this._isSerieVisible(j,c,f);if(d!=undefined){i=d}var k=this.seriesGroups[j];var h=k.series[c];this._raiseEvent("toggle",{state:i,seriesGroup:k,serie:h,elementIndex:f});if(isNaN(f)){this._itemsToggleState[j][c]=i}else{var e=this._itemsToggleState[j][c];if(!a.isArray(e)){e=[]}while(e.length<f){e.push(true)}e[f]=i}this._isToggleRefresh=true;this.update();this._isToggleRefresh=false},showSerie:function(e,c,d){this._toggleSerie(e,c,d,true)},hideSerie:function(e,c,d){this._toggleSerie(e,c,d,false)},_setLegendToggleHandler:function(k,d,i,f){var j=this.seriesGroups[k];var h=j.series[d];var c=h.enableSeriesToggle;if(c==undefined){c=j.enableSeriesToggle!=false}if(c){var e=this;this.renderer.addHandler(f,"click",function(l){e._toggleSerie(k,d,i)})}},_renderLegend:function(d,f){var p=this;var e=[];for(var z=0;z<p.seriesGroups.length;z++){var v=p.seriesGroups[z];if(v.showLegend==false){continue}for(var t=0;t<v.series.length;t++){var n=v.series[t];if(n.showLegend==false){continue}var w=p._getSerieSettings(z,t);var q;if(v.type=="pie"||v.type=="donut"){var l=p._getXAxis(z);var j=n.legendFormatSettings||v.legendFormatSettings||l.formatSettings||n.formatSettings||v.formatSettings;var o=n.legendFormatFunction||v.legendFormatFunction||l.formatFunction||n.formatFunction||v.formatFunction;var k=p._getDataLen(z);for(var u=0;u<k;u++){q=p._getDataValue(u,n.displayText,z);q=p._formatValue(q,j,o,z,t,u);var m=p._getColors(z,t,u);e.push({groupIndex:z,seriesIndex:t,itemIndex:u,text:q,css:n.displayTextClass,fillColor:m.fillColor,lineColor:m.lineColor,opacity:w.opacity})}continue}var j=n.legendFormatSettings||v.legendFormatSettings;var o=n.legendFormatFunction||v.legendFormatFunction;q=p._formatValue(n.displayText||n.dataField||"",j,o,z,t,NaN);var m=p._getSeriesColors(z,t);var h=this._get([n.legendFillColor,n.legendColor,m.fillColor]);var c=this._get([n.legendLineColor,n.legendColor,m.lineColor]);e.push({groupIndex:z,seriesIndex:t,text:q,css:n.displayTextClass,fillColor:h,lineColor:c,opacity:w.opacity})}}return p._renderChartLegend(e,d,f,(p.legendLayout&&p.legendLayout.flow=="vertical"))},_getInterval:function(e,d){var c=this._get([e.unitInterval,d]);if(!isNaN(e.step)){c=e.step*d}return c},_renderXAxis:function(e,A,S,d){var h=this;var s=h._getXAxis(e);var R=h.seriesGroups[e];var Y=R.orientation=="horizontal";var I={width:0,height:0};var Q=h._getAxisSettings(s);if(!s||!Q.visible||R.type=="spider"){return I}if(!h._isGroupVisible(e)||this._isPieGroup(e)){return I}var X=h._alignValuesWithTicks(e);while(h._renderData.length<e+1){h._renderData.push({})}if(h.rtl){s.flip=true}var C=Y?A.height:A.width;var z=s.text;var u=h._calculateXOffsets(e,C);var U=u.axisStats;var j=s.rangeSelector;var G=0;if(j){if(!this._moduleRangeSelector){throw"Please include 'jqxchart.rangeselector.js'"}G=this._selectorGetSize(s)}var F=(Y&&s.position=="right")||(!Y&&s.position=="top");if(!S&&j){if(Y){A.width-=G;if(s.position!="right"){A.x+=G}}else{A.height-=G;if(s.position=="top"){A.y+=G}}}var k={rangeLength:u.rangeLength,itemWidth:u.itemWidth,intervalWidth:u.intervalWidth,data:u,settings:Q,isMirror:F,rect:A};h._renderData[e].xAxis=k;var H=U.interval;if(isNaN(H)){return I}if(Y){Q.title.angle-=90;Q.labels.angle-=90}var m=this._getInterval(Q.gridLines,H);var L=this._getInterval(Q.tickMarks,H);var D=this._getInterval(Q.labels,H);var M;var W=U.min;var t=U.max;var O=u.padding;var T=s.flip==true||h.rtl;if(s.type=="date"){Q.gridLines.offsets=this._generateDTOffsets(W,t,C,O,m,H,U.dateTimeUnit,X,NaN,false,T);Q.tickMarks.offsets=this._generateDTOffsets(W,t,C,O,L,H,U.dateTimeUnit,X,NaN,false,T);M=this._generateDTOffsets(W,t,C,O,D,H,U.dateTimeUnit,X,NaN,true,T)}else{Q.gridLines.offsets=this._generateOffsets(W,t,C,O,m,H,X,NaN,false,T);Q.tickMarks.offsets=this._generateOffsets(W,t,C,O,L,H,X,NaN,false,T);M=this._generateOffsets(W,t,C,O,D,H,X,NaN,true,T)}var n=h.renderer.getRect();var l=n.width-A.x-A.width;var p=h._getDataLen(e);var o;if(h._elementRenderInfo&&h._elementRenderInfo.length>e){o=h._elementRenderInfo[e].xAxis}var q=[];var K;if(Q.labels.formatFunction){K=Q.labels.formatFunction}var w;if(Q.labels.formatSettings){w=a.extend({},Q.labels.formatSettings)}if(s.type=="date"){if(s.dateFormat&&!K){if(w){w.dateFormat=w.dateFormat||s.dateFormat}else{w={dateFormat:s.dateFormat}}}else{if(!K&&(!w||(w&&!w.dateFormat))){K=this._getDefaultDTFormatFn(s.baseUnit||"day")}}}for(var P=0;P<M.length;P++){var N=M[P].value;var J=M[P].offset;var V=undefined;if(s.type!="date"&&U.useIndeces&&s.dataField){V=Math.round(N);N=h._getDataValue(V,s.dataField);if(N==undefined){N=""}}var z=h._formatValue(N,w,K,e,undefined,V);if(z==undefined||z.toString()==""){if(isNaN(V)){V=P}if(V>=U.filterRange.min&&V<=U.filterRange.max){z=U.useIndeces?(U.min+V).toString():(N==undefined?"":N.toString())}}var c={key:N,text:z,targetX:J,x:J};if(o&&o.itemOffsets[N]){c.x=o.itemOffsets[N].x;c.y=o.itemOffsets[N].y}q.push(c)}var E=h._getAnimProps(e);var v=E.enabled&&q.length<500?E.duration:0;if(h.enableAxisTextAnimation==false){v=0}var B={items:q,renderData:k};var f=h._renderAxis(Y,F,Q,{x:A.x,y:A.y,width:A.width,height:A.height},d,H,false,true,B,S,v);if(Y){f.width+=G}else{f.height+=G}return f},_animateAxisText:function(h,k){var d=h.items;var e=h.textSettings;for(var f=0;f<d.length;f++){var j=d[f];if(!j){continue}if(!j.visible){continue}var c=j.targetX;var l=j.targetY;if(!isNaN(j.x)&&!isNaN(j.y)){c=j.x+(c-j.x)*k;l=j.y+(l-j.y)*k}if(j.element){this.renderer.removeElement(j.element);j.element=undefined}j.element=this.renderer.text(j.text,c,l,j.width,j.height,e.angle,{"class":e.style},false,e.halign,e.valign,e.textRotationPoint)}},_getPolarAxisCoords:function(f,c){var k=this.seriesGroups[f];var s=c.x+a.jqx.getNum([k.offsetX,c.width/2]);var q=c.y+a.jqx.getNum([k.offsetY,c.height/2]);var m=Math.min(c.width,c.height);var h=k.radius;if(this._isPercent(h)){h=parseFloat(h)/100*m/2}if(isNaN(h)){h=m/2*0.6}var j=this._alignValuesWithTicks(f);var p=this._get([k.startAngle,k.minAngle,0])-90;if(isNaN(p)){p=0}else{p=2*Math.PI*p/360}var o=this._get([k.endAngle,k.maxAngle,360])-90;if(isNaN(o)){o=2*Math.PI}else{o=2*Math.PI*o/360}if(p>o){var n=p;p=o;o=n}var w=a.jqx._rnd(Math.abs(p-o)/(Math.PI*2),0.001,true);var t=Math.PI*2*h*w;var i=this._calcGroupOffsets(f,c).xoffsets;if(!i){return}var l=!(Math.abs(Math.abs(o-p)-Math.PI*2)>0.00001);if(k.spider){axisStats=this._getXAxisStats(f,this._getXAxis(f),t);var u=axisStats.interval;if(isNaN(u)||u==0){u=1}var e=(axisStats.max-axisStats.min)/u+(l?1:0);e=Math.round(e);if(e>2){var d=Math.cos(Math.abs(o-p)/2/e);d=a.jqx._rnd(d,0.01);if(d==0){d=1}var v=h/d;if(v>h&&j){h=v}}}h=a.jqx._ptrnd(h);return{x:s,y:q,r:h,adjR:this._get([v,h]),itemWidth:i.itemWidth,rangeLength:i.rangeLength,valuesOnTicks:j,startAngle:p,endAngle:o,isClosedCircle:l,axisSize:t}},_toPolarCoord:function(l,h,j,f){var d=Math.abs(l.startAngle-l.endAngle)/(Math.PI*2);var c=(j-h.x)*2*Math.PI*d/Math.max(1,h.width)+l.startAngle;var e=((h.height+h.y)-f)*l.r/Math.max(1,h.height);var k=l.x+e*Math.cos(c);var i=l.y+e*Math.sin(c);return{x:a.jqx._ptrnd(k),y:a.jqx._ptrnd(i)}},_renderSpiderAxis:function(D,m){var at=this;var k=at._getXAxis(D);var aE=this._getAxisSettings(k);if(!k||!aE.visible){return}var aa=at.seriesGroups[D];var V=at._getPolarAxisCoords(D,m);if(!V){return}var P=a.jqx._ptrnd(V.x);var O=a.jqx._ptrnd(V.y);var w=V.adjR;var ab=V.startAngle;var Z=V.endAngle;if(w<1){return}var az=a.jqx._rnd(Math.abs(ab-Z)/(Math.PI*2),0.001,true);var l=Math.PI*2*w*az;var d=V.isClosedCircle;var B=this._renderData[D].xoffsets;if(!B.rangeLength){return}var W=B.axisStats.interval;if(isNaN(W)||W<1){W=1}var aw=aa.orientation=="horizontal";var ad=(aw&&k.position=="right")||(!aw&&k.position=="top");while(at._renderData.length<D+1){at._renderData.push({})}var ax={rangeLength:B.rangeLength,itemWidth:B.itemWidth,data:B,rect:m,settings:aE};at._renderData[D].xAxis=ax;at._renderData[D].polarCoords=V;var aC=true;for(var U=0;U<D;U++){var E=at._renderData[U].xAxis;var c=at._renderData[U].polarCoords;var H=at._getXAxis(U);var Y=false;for(var S in V){if(V[S]!=c[S]){Y=true;break}}if(!Y||H!=k){aC=false}}var f=aE.gridLines;var X=aE.tickMarks;var C=aE.labels;var ag=this._getInterval(f,W);var aH=this._getInterval(X,W);var aq=this._getInterval(C,W);var K=at._alignValuesWithTicks(D);var ah=at.renderer;var al;var ai=B.axisStats;var aG=ai.min;var u=ai.max;var z=this._getPaddingSize(B.axisStats,k,K,l,true,d,false);var am=k.flip==true||at.rtl;if(k.type=="date"){f.offsets=this._generateDTOffsets(aG,u,l,z,ag,W,k.baseUnit,true,0,false,am);X.offsets=this._generateDTOffsets(aG,u,l,z,aH,W,k.baseUnit,true,0,false,am);al=this._generateDTOffsets(aG,u,l,z,aq,W,k.baseUnit,true,0,true,am)}else{f.offsets=this._generateOffsets(aG,u,l,z,ag,W,true,0,false,am);X.offsets=this._generateOffsets(aG,u,l,z,aH,W,true,0,false,am);al=this._generateOffsets(aG,u,l,z,aq,W,true,0,false,am)}var an=at.renderer.getRect();var aA=an.width-m.x-m.width;var ak=at._getDataLen(D);var v;if(at._elementRenderInfo&&at._elementRenderInfo.length>D){v=at._elementRenderInfo[D].xAxis}var av=[];var aj=this._getDataLen(D);for(var U=0;U<al.length;U++){var J=al[U].offset;var L=al[U].value;if(k.type!="date"&&ai.useIndeces&&k.dataField){var aB=Math.round(L);if(aB>=aj){continue}L=at._getDataValue(aB,k.dataField);if(L==undefined){L=""}}var au=at._formatValue(L,C.formatSettings,C.formatFunction,D,undefined,aB);if(au==undefined||au.toString()==""){au=ai.useIndeces?(ai.min+U).toString():(L==undefined?"":L.toString())}var e={key:L,text:au,targetX:J,x:J};if(v&&v.itemOffsets[L]){e.x=v.itemOffsets[L].x;e.y=v.itemOffsets[L].y}av.push(e)}var aD={items:av,renderData:ax};var n={stroke:f.color,fill:"none","stroke-width":f.width,"stroke-dasharray":f.dashStyle||""};if(!aa.spider){if(az==1){ah.circle(P,O,w,n)}else{var I=-ab/Math.PI*180;var aI=-Z/Math.PI*180;this.renderer.pieslice(P,O,0,w,Math.min(I,aI),Math.max(I,aI),undefined,n)}}var Q=av.length;var o=2*Math.PI/(Q);var ap=ab;var h,G;if(f.visible&&aC){if(!K&&!d){f.offsets.unshift({offset:-z.right})}for(var U=0;U<f.offsets.length;U++){var p=f.offsets[U].offset;if(!K){if(d){p+=z.right/2}else{p+=z.right}}var F=ap+p*2*Math.PI*az/Math.max(1,l);if(F-Z>0.01){continue}var t=a.jqx._ptrnd(P+w*Math.cos(F));var s=a.jqx._ptrnd(O+w*Math.sin(F));ah.line(P,O,t,s,n)}}if(X.visible&&aC){var T=5;var q={stroke:X.color,fill:"none","stroke-width":X.width,"stroke-dasharray":X.dashStyle||""};if(!K&&!d){X.offsets.unshift({offset:-z.right})}for(var U=0;U<X.offsets.length;U++){var p=X.offsets[U].offset;if(!K){if(d){p+=z.right/2}else{p+=z.right}}var F=ap+p*2*Math.PI*az/Math.max(1,l);if(F-Z>0.01){continue}var af={x:P+w*Math.cos(F),y:O+w*Math.sin(F)};var ae={x:P+(w+T)*Math.cos(F),y:O+(w+T)*Math.sin(F)};ah.line(a.jqx._ptrnd(af.x),a.jqx._ptrnd(af.y),a.jqx._ptrnd(ae.x),a.jqx._ptrnd(ae.y),q)}}var ar=[];if(aa.spider){var A=[];if(k.type=="date"){A=this._generateDTOffsets(aG,u,l,z,W,W,k.baseUnit,true,0,false,am)}else{A=this._generateOffsets(aG,u,l,z,W,W,true,0,false,am)}if(!K&&!d){A.unshift({offset:-z.right})}for(var U=0;U<A.length;U++){var p=A[U].offset;if(!K){if(d){p+=z.right/2}else{p+=z.right}}var F=ap+p*2*Math.PI*az/Math.max(1,l);if(F-Z>0.01){continue}ar.push(F)}ax.offsetAngles=ar}var ac=at._renderSpiderValueAxis(D,m,(K?V.adjR:V.r),ar);if(!ac){ac=[]}if(aa.spider){if(!K){for(var U=0;U<ac.length;U++){ac[U]=ac[U]*V.adjR/V.r}}ac.push(w);this._renderSpiderLines(P,O,ac,V,ar,n)}if(aC&&C.visible){ax.polarLabels=[];for(var U=0;U<av.length;U++){var p=av[U].x;var F=ap+p*2*Math.PI*az/Math.max(1,l);F=(360-F/(2*Math.PI)*360)%360;if(F<0){F=360+F}var ao=ah.measureText(av[U].text,0,{"class":aE.labels.style});var R=(K?V.adjR:V.r)+(X.visible?7:2);var ay=aE.labels;var aF;if(ay.autoRotate){var N=a.jqx._ptRotate(P-ao.width/2,O-R-ao.height,P,O,-F/180*Math.PI);var M=a.jqx._ptRotate(P+ao.width/2,O-R,P,O,-F/180*Math.PI);ao.width=Math.abs(N.x-M.x);ao.height=Math.abs(N.y-M.y);aF={x:Math.min(N.x,M.x),y:Math.min(N.y,M.y)}}else{aF=this._adjustTextBoxPosition(P,O,ao,R,F,false,false,false)}ax.polarLabels.push({x:aF.x,y:aF.y,value:av[U].text});ah.text(av[U].text,aF.x,aF.y,ao.width,ao.height,ay.autoRotate?90-F:ay.angle,{"class":ay.style},false,ay.halign,ay.valign)}}},_renderSpiderLines:function(l,h,z,o,f,c){var s=this.renderer;var t=o.startAngle;var q=o.endAngle;var k=o.isClosedCircle;for(var u=0;u<z.length;u++){var e=z[u];var d=undefined,p=undefined;for(var v=0;v<f.length;v++){var w=f[v];var n=a.jqx._ptrnd(l+e*Math.cos(w));var m=a.jqx._ptrnd(h+e*Math.sin(w));if(d){s.line(d.x,d.y,n,m,c)}d={x:n,y:m};if(!p){p={x:n,y:m}}}if(p&&k){s.line(d.x,d.y,p.x,p.y,c)}}},_renderSpiderValueAxis:function(e,F,S,R){var k=this;var w=this.seriesGroups[e];var G=this._getPolarAxisCoords(e,F);if(!G){return}var O=a.jqx._ptrnd(G.x);var M=a.jqx._ptrnd(G.y);S=S||G.r;var h=G.startAngle;var Y=G.endAngle;var W=a.jqx._rnd(Math.abs(h-Y)/(Math.PI*2),0.001,true);if(S<1){return}S=a.jqx._ptrnd(S);var f=this._getValueAxis(e);settings=this._getAxisSettings(f);if(!f||false==settings.visible){return}var K=this._stats.seriesGroups[e].mu;var C=settings.labels;var B=C.formatSettings;var c=w.type.indexOf("stacked")!=-1&&w.type.indexOf("100")!=-1;if(c&&!B){B={sufix:"%"}}var z=this._get([C.step,C.unitInterval/K]);if(isNaN(z)){z=1}z=Math.max(1,Math.round(z));this._calcValueAxisItems(e,S,z);var d=settings.gridLines;var D=settings.tickMarks;var t=this._getInterval(d,K);var P=this._getInterval(D,K);var m=settings.labels;var l={stroke:d.color,fill:"none","stroke-width":1,"stroke-dasharray":d.dashStyle||""};var p=this._renderData[e].valueAxis;var A=p.items;if(A.length&&settings.line.visible){var o=O+Math.cos(h)*S;var Z=M+Math.sin(h)*S;if(R.indexOf(h)==-1){var U=a.extend({},l);U["stroke-width"]=settings.line.lineWidth;U.stroke=settings.line.color;U["stroke-dasharray"]=settings.line.dashStyle;this.renderer.line(O,M,o,Z,U)}}A=A.reverse();var J=this.renderer;p.polarLabels=[];for(var X=0;X<A.length-1;X++){var Q=A[X];if(isNaN(Q)){continue}var E=(m.formatFunction)?m.formatFunction(Q):this._formatNumber(Q,B);var j=J.measureText(E,0,{"class":m.style});var N=O+(f.showTickMarks!=false?3:2);var L=M-p.itemWidth*X-j.height/2;var v=h;var I=a.jqx._ptRotate(N,L,O,M,v);var H=a.jqx._ptRotate(N+j.width,L+j.height,O,M,v);N=Math.min(I.x,H.x);L=Math.min(I.y,H.y);j.width=Math.abs(I.x-H.x);j.height=Math.abs(I.y-H.y);p.polarLabels.push({x:N,y:L,value:E});J.text(E,N,L,j.width,j.height,m.autoRotate?(90+h*180/Math.PI):m.angle,{"class":m.style},false,m.halign,m.valign)}var s=f.logarithmicScale==true;var u=s?A.length:p.rangeLength;aIncrement=2*Math.PI/u;var T=[];if(d.visible||w.spider){var l={stroke:d.color,fill:"none","stroke-width":1,"stroke-dasharray":d.dashStyle||""};for(var X=0;X<u;X+=t){var L=a.jqx._ptrnd(S*X/u);if(w.spider){T.push(L);continue}if(W!=1){var n=-h/Math.PI*180;var V=-Y/Math.PI*180;this.renderer.pieslice(O,M,0,L,Math.min(n,V),Math.max(n,V),undefined,l)}else{J.circle(O,M,L,l)}}}if(D.visible){tickMarkSize=5;var l={stroke:D.color,fill:"none","stroke-width":1,"stroke-dasharray":D.dashStyle||""};var q=O-Math.round(tickMarkSize/2);var o=q+tickMarkSize;for(var X=0;X<u;X+=P){if(d.visible&&(X%t)==0){continue}var L=a.jqx._ptrnd(M-S*X/u);J.line(a.jqx._ptrnd(q),L,a.jqx._ptrnd(o),L,l)}}return T},_renderAxis:function(K,G,T,C,d,I,o,Y,F,X,e){if(T.customDraw&&!X){return{width:NaN,height:NaN}}var z=T.title,p=T.labels,f=T.gridLines,D=T.tickMarks,S=T.padding;var q=D.visible?D.size:0;var U=2;var J={width:0,height:0};var t={width:0,height:0};if(K){J.height=t.height=C.height}else{J.width=t.width=C.width}if(!X&&G){if(K){C.x-=C.width}}var n=F.renderData;var c=n.itemWidth;if(z.visible&&z.text!=undefined&&z!=""){var s=z.angle;var j=this.renderer.measureText(z.text,s,{"class":z.style});t.width=j.width;t.height=j.height;if(!X){this.renderer.text(z.text,C.x+z.offset.x+(K?(!G?U+S.left:-S.right-U+2*C.width-t.width):0),C.y+z.offset.y+(!K?(!G?C.height-U-t.height-S.bottom:S.top+U):0),K?t.width:C.width,!K?t.height:C.height,s,{"class":z.style},true,z.halign,z.valign,z.rotationPoint)}}var O=0;var A=Y?-c/2:0;if(Y&&!K){p.halign="center"}var Q=C.x;var P=C.y;var H=p.textOffset;if(H){if(!isNaN(H.x)){Q+=H.x}if(!isNaN(H.y)){P+=H.y}}if(!K){Q+=A;if(G){P+=t.height>0?t.height+3*U:2*U;P+=q-(Y?q:q/4)}else{P+=Y?q:q/4}P+=S.top}else{Q+=S.left+U+(t.width>0?t.width+U:0)+(G?C.width-t.width:0);P+=A}var W=0;var N=0;var u=F.items;n.itemOffsets={};if(this._isToggleRefresh||!this._isUpdate){e=0}var m=false;var l=0;for(var V=0;V<u.length&&p.visible;V++,O+=c){if(!u[V]){continue}var B=u[V].text;if(!isNaN(u[V].targetX)){O=u[V].targetX}var j=this.renderer.measureText(B,p.angle,{"class":p.style});if(j.width>N){N=j.width}if(j.height>W){W=j.height}l+=K?W:N;if(!X){if((K&&O>C.height+2)||(!K&&O>C.width+2)){break}var M=K?Q+(G?(t.width==0?q:q-U):0):Q+O;var L=K?P+O:P;n.itemOffsets[u[V].key]={x:M,y:L};if(!m){if(!isNaN(u[V].x)||!isNaN(u[V].y)&&e){m=true}}u[V].targetX=M;u[V].targetY=L;u[V].width=!K?c:C.width-S.left-S.right-2*U-q-((t.width>0)?t.width+U:0);u[V].height=K?c:C.height-S.top-S.bottom-2*U-q-((t.height>0)?t.height+U:0);u[V].visible=true}}n.avgWidth=u.length==0?0:l/u.length;if(!X){var v={items:u,textSettings:p};if(isNaN(e)||!m){e=0}this._animateAxisText(v,e==0?1:0);if(e!=0){var k=this;this._enqueueAnimation("series",undefined,undefined,e,function(i,h,w){k._animateAxisText(h,w)},v)}}J.width+=2*U+q+t.width+N+(K&&t.width>0?U:0);J.height+=2*U+q+t.height+W+(!K&&t.height>0?U:0);if(!K){J.height+=S.top+S.bottom}else{J.width+=S.left+S.right}var E={};if(!X&&T.line.visible){var R={stroke:T.line.color,"stroke-width":T.line.width,"stroke-dasharray":T.line.dashStyle||""};if(K){var M=C.x+C.width+(G?S.left:-S.right);M=a.jqx._ptrnd(M);this.renderer.line(M,C.y,M,C.y+C.height,R)}else{var L=a.jqx._ptrnd(C.y+(G?C.height-S.bottom:S.top));this.renderer.line(a.jqx._ptrnd(C.x),L,a.jqx._ptrnd(C.x+C.width+1),L,R)}}J.width=a.jqx._rup(J.width);J.height=a.jqx._rup(J.height);return J},_drawPlotAreaLines:function(k,A,h){var E=this.seriesGroups[k];var d=E.orientation!="horizontal";if(!this._renderData||this._renderData.length<=k){return}var J=A?"valueAxis":"xAxis";var w=this._renderData[k][J];if(!w){return}var n=this._renderData.axisDrawState;if(!n){n=this._renderData.axisDrawState={}}var B="",j;if(A){B="valueAxis_"+((E.valueAxis)?k:"")+(d?"swap":"");j=this._getValueAxis(k)}else{B="xAxis_"+((E.xAxis||E.categoryAxis)?k:"")+(d?"swap":"");j=this._getXAxis(k)}if(n[B]){n=n[B]}else{n=n[B]={}}if(!A){d=!d}var H=w.settings;if(!H){return}if(H.customDraw){return}var G=H.gridLines,q=H.tickMarks,v=H.padding;var f=w.rect;var l=this._plotRect;if(!G||!q){return}var p=0.5;var e=[];var c={stroke:G.color,"stroke-width":G.width,"stroke-dasharray":G.dashStyle||""};var D=A?f.y+f.height:f.x;var o=G.offsets;if(A&&!j.flip){o=a.extend([],o);o=o.reverse()}if(o&&o.length>0){for(var C=0;C<o.length;C++){if(d){F=a.jqx._ptrnd(f.y+o[C].offset);if(F<f.y-p){break}}else{F=a.jqx._ptrnd(f.x+o[C].offset);if(F>f.x+f.width+p){break}}if(h.gridLines&&G.visible!=false&&n.gridLines!=true){if(d){this.renderer.line(a.jqx._ptrnd(l.x),F,a.jqx._ptrnd(l.x+l.width),F,c)}else{this.renderer.line(F,a.jqx._ptrnd(l.y),F,a.jqx._ptrnd(l.y+l.height),c)}}e[F]=true;if(h.alternatingBackground&&(G.alternatingBackgroundColor||G.alternatingBackgroundColor2)&&n.alternatingBackground!=true){var m=((C%2)==0)?G.alternatingBackgroundColor2:G.alternatingBackgroundColor;if(m){var I;if(d){I=this.renderer.rect(a.jqx._ptrnd(l.x),D,a.jqx._ptrnd(l.width-1),F-D,c)}else{I=this.renderer.rect(D,a.jqx._ptrnd(l.y),F-D,a.jqx._ptrnd(l.height),c)}this.renderer.attr(I,{"stroke-width":0,fill:m,opacity:G.alternatingBackgroundOpacity||1})}D=F}}}var c={stroke:q.color,"stroke-width":q.width,"stroke-dasharray":q.dashStyle||""};if(h.tickMarks&&q.visible&&n.tickMarks!=true){var u=q.size;var o=q.offsets;for(var C=0;C<o.length;C++){var F=a.jqx._ptrnd((d?f.y+o[C].offset:f.x+o[C].offset));if(e[F-1]){F--}else{if(e[F+1]){F++}}if(d){if(F>f.y+f.height+p){break}}else{if(F>f.x+f.width+p){break}}var z=!w.isMirror?-u:u;if(d){var t=f.x+f.width+(j.position=="right"?v.left:-v.right);if(!A){t=f.x+(w.isMirror?v.left:-v.right+f.width)}this.renderer.line(t,F,t+z,F,c)}else{var s=f.y+(w.isMirror?f.height:0);s+=w.isMirror?-v.bottom:v.top;s=a.jqx._ptrnd(s);this.renderer.line(F,s,F,s-z,c)}}}n.tickMarks=n.tickMarks||h.tickMarks;n.gridLines=n.gridLines||h.gridLines;n.alternatingBackground=n.alternatingBackground||h.alternatingBackground},_calcValueAxisItems:function(k,e,m){var o=this._stats.seriesGroups[k];if(!o||!o.isValid){return false}var A=this.seriesGroups[k];var c=A.orientation=="horizontal";var h=this._getValueAxis(k);var n=h.valuesOnTicks!=false;var f=h.dataField;var p=o.intervals;var u=e/p;var w=o.min;var t=o.mu;var d=h.logarithmicScale==true;var l=h.logarithmicScaleBase||10;var j=A.type.indexOf("stacked")!=-1&&A.type.indexOf("100")!=-1;if(d){t=!isNaN(h.unitInterval)?h.unitInterval:1}if(!n){p=Math.max(p-1,1)}while(this._renderData.length<k+1){this._renderData.push({})}this._renderData[k].valueAxis={};var s=this._renderData[k].valueAxis;s.itemWidth=s.intervalWidth=u;s.items=[];var q=s.items;for(var z=0;z<=p;z++){var v=0;if(d){if(j){v=o.max/Math.pow(l,p-z)}else{v=w*Math.pow(l,z)}}else{v=n?w+z*t:w+(z+0.5)*t}if(z%m!=0){q.push(NaN);continue}q.push(v)}s.rangeLength=d&&!j?o.intervals:(o.intervals)*t;if(h.flip!=true){q=q.reverse()}return true},_getDecimalPlaces:function(c,k,d){var l=0;if(isNaN(d)){d=10}for(var h=0;h<c.length;h++){var m=k===undefined?c[h]:c[h][k];if(isNaN(m)){continue}var e=m.toString();for(var f=0;f<e.length;f++){if(e[f]<"0"||e[f]>"9"){l=e.length-(f+1);if(l>=0){return Math.min(l,d)}}}if(l>0){m*=Math.pow(10,l)}while(Math.round(m)!=m&&l<d){l++;m*=10}}return l},_renderValueAxis:function(h,B,P,f){var O=this.seriesGroups[h];var T=O.orientation=="horizontal";var t=this._getValueAxis(h);if(!t){throw"SeriesGroup "+h+" is missing valueAxis definition"}var I={width:0,height:0};if(!this._isGroupVisible(h)||this._isPieOnlySeries()||O.type=="spider"){return I}var S=t.valuesOnTicks!=false;var J=this._stats.seriesGroups[h];var k=J.mu;var H=t.logarithmicScale==true;var E=t.logarithmicScaleBase||10;if(H){k=!isNaN(t.unitInterval)?t.unitInterval:1}if(k==0){k=1}if(isNaN(k)){return I}var M=this._getAxisSettings(t);var s=M.title,w=M.labels;var p=this._get([w.step,w.unitInterval/k]);if(isNaN(p)){p=1}p=Math.max(1,Math.round(p));if(!this._calcValueAxisItems(h,(T?B.width:B.height),p)||!M.visible){return I}if(!T){s.angle=(!this.rtl?-90:90);if(s.rotationPoint=="centercenter"){if(s.valign=="top"){s.rotationPoint="rightcenter"}else{if(s.valign=="bottom"){s.rotationPoint="leftcenter"}}}}var l=this._renderData[h].valueAxis;var j=w.formatSettings;var d=O.type.indexOf("stacked")!=-1&&O.type.indexOf("100")!=-1;if(d&&!j){j={sufix:"%"}}if(!w.formatFunction&&(!j||!j.decimalPlaces)){j=j||{};j.decimalPlaces=this._getDecimalPlaces([J.min,J.max,k],undefined,3)}var q=[];var n;if(this._elementRenderInfo&&this._elementRenderInfo.length>h){n=this._elementRenderInfo[h].valueAxis}for(var N=0;N<l.items.length;N++){var L=l.items[N];if(isNaN(L)){q.push(undefined);continue}var A=(w.formatFunction)?w.formatFunction(L):this._formatNumber(L,j);var c={key:L,text:A};if(n&&n.itemOffsets[L]){c.x=n.itemOffsets[L].x;c.y=n.itemOffsets[L].y}q.push(c)}if(H&&k!=1){var o=[];for(var N=0;N<q.length;N++){if(N%k==0){o.push(q[q.length-N-1])}else{o.push(undefined)}}q=o.reverse()}var e=M.gridLines;var m=H?k:this._getInterval(e,k);var D=T?B.width:B.height;var R=J.logarithmic?J.minPow:J.min;var u=J.logarithmic?J.maxPow:J.max;var Q=(t.flip==true);if(e.visible||t.alternatingBackgroundColor||t.alternatingBackgroundColor2){e.offsets=this._generateOffsets(R,u,D,{left:0,right:0},m,k,true,0,false,!Q);if(H&&!isNaN(e.step)){var o=[];for(var N=0;N<e.offsets.length;N+=e.step){o.push(e.offsets[N])}e.offsets=o}}var z=M.tickMarks;var K=H?k:this._getInterval(z,k);if(z.visible){z.offsets=this._generateOffsets(R,u,D,{left:0,right:0},K,k,true,0,false,!Q);if(H&&!isNaN(z.step)){var o=[];for(var N=0;N<z.offsets.length;N+=z.step){o.push(z.offsets[N])}z.offsets=o}}var G=(T&&t.position=="top")||(!T&&t.position=="right")||(!T&&this.rtl&&t.position!="left");var C={items:q,renderData:l};var F=this._getAnimProps(h);var v=F.enabled&&q.length<500?F.duration:0;if(this.enableAxisTextAnimation==false){v=0}l.settings=M;l.isMirror=G;l.rect=B;return this._renderAxis(!T,G,M,B,f,k,H,S,C,P,v)},_generateOffsets:function(p,t,w,n,z,e,c,u,v,j){var h=[];var o=1;if(e<1){o=1000000;p*=o;t*=o;e*=o}var k=t-p;var m=w-n.left-n.right;if(k==0){if(v||c){h.push({offset:n.left+m/2,value:p/o})}else{h.push({offset:0,value:p/o})}return h}var A=m/k;var d=A*e;var f=n.left;if(!c){if(!v){t+=e}}for(var s=p;s<=t;s+=e,f+=d){h.push({offset:f,value:s/o})}if(!c&&h.length>1){if(isNaN(u)){u=v?0:d/2}for(var s=0;s<h.length;s++){h[s].offset-=u;if(h[s].offset<=2){h[s].offset=0}if(h[s].offset>=w-2){h[s].offset=w}}}if(z>e){var q=[];var l=Math.round(z/e);for(var s=0;s<h.length;s++){if((s%l)==0){q.push({offset:h[s].offset,value:h[s].value})}}h=q}if(j){for(var s=0;s<h.length;s++){h[s].offset=w-h[s].offset}}return h},_generateDTOffsets:function(s,v,C,p,D,d,q,c,z,A,j){if(!q){q="day"}var h=[];if(s>v){return h}if(s==v){if(A){h.push({offset:c?C/2:p.left,value:s})}else{if(c){h.push({offset:C/2,value:s})}}return h}var l=C-p.left-p.right;var B=s;var m=p.left;var f=m;d=Math.max(d,1);var o=d;var e=Math.min(1,d);if(d>1&&q!="millisecond"){d=1}while(a.jqx._ptrnd(f)<=a.jqx._ptrnd(p.left+l+(c?0:p.right))){h.push({offset:f,value:B});var E=new Date(B.valueOf());if(q=="millisecond"){E.setMilliseconds(B.getMilliseconds()+d)}else{if(q=="second"){E.setSeconds(B.getSeconds()+d)}else{if(q=="minute"){E.setMinutes(B.getMinutes()+d)}else{if(q=="hour"){var n=E.valueOf();E.setHours(B.getHours()+d);if(n==E.valueOf()){E.setHours(B.getHours()+d+1)}}else{if(q=="day"){E.setDate(B.getDate()+d)}else{if(q=="month"){E.setMonth(B.getMonth()+d)}else{if(q=="year"){E.setFullYear(B.getFullYear()+d)}}}}}}}B=E;f=m+(B.valueOf()-s.valueOf())*e/(v.valueOf()-s.valueOf())*l}if(j){for(var u=0;u<h.length;u++){h[u].offset=C-h[u].offset}}if(o>1&&q!="millisecond"){var t=[];for(var u=0;u<h.length;u+=o){t.push({offset:h[u].offset,value:h[u].value})}h=t}if(!c&&!A&&h.length>1){var t=[];t.push({offset:0,value:undefined});for(var u=1;u<h.length;u++){t.push({offset:h[u-1].offset+(h[u].offset-h[u-1].offset)/2,value:undefined})}var w=t.length;if(w>1){t.push({offset:t[w-1].offset+(t[w-1].offset-t[w-2].offset)})}else{t.push({offset:C,value:undefined})}h=t}if(D>d){var t=[];var k=Math.round(D/o);for(var u=0;u<h.length;u++){if((u%k)==0){t.push({offset:h[u].offset,value:h[u].value})}}h=t}return h},_hasStackValueReversal:function(f,v){var k=this.seriesGroups[f];var l=-1!=k.type.indexOf("stacked");if(!l){return false}var c=-1!=k.type.indexOf("waterfall");var t=this._getDataLen(f);var w=0;var n=false;var z=[];for(var q=0;q<k.series.length;q++){z[q]=this._isSerieVisible(f,q)}for(var s=0;s<t;s++){var o=(c&&s!=0)?w:v;var e=0,u=0;var d=undefined;if(!c){n=false}for(var p=0;p<k.series.length;p++){if(!z[p]){continue}val=this._getDataValueAsNumber(s,k.series[p].dataField,f);if(isNaN(val)){continue}if(k.series[p].summary){var h=this._getDataValue(s,k.series[p].summary,f);if(undefined!==h){continue}}var m=!n?val<v:val<0;n=true;if(d==undefined){d=m}if(m!=d){return true}d=m;w+=val}}return false},_getValueAxis:function(c){var d=c==undefined?this.valueAxis:this.seriesGroups[c].valueAxis||this.valueAxis;if(!d){d=this.valueAxis={}}return d},_buildStats:function(M){var Z={seriesGroups:[]};this._stats=Z;for(var v=0;v<this.seriesGroups.length;v++){var F=this.seriesGroups[v];Z.seriesGroups[v]={};var I=this._getXAxis(v);var q=this._getValueAxis(v);var t=this._getXAxisStats(v,I,(F.orientation=="vertical")?M.width:M.height);var C=Z.seriesGroups[v];C.isValid=true;var N=(F.orientation=="horizontal")?M.width:M.height;var P=q.logarithmicScale==true;var O=q.logarithmicScaleBase;if(isNaN(O)){O=10}var J=-1!=F.type.indexOf("stacked");var f=J&&-1!=F.type.indexOf("100");var L=-1!=F.type.indexOf("range");var V=F.type.indexOf("waterfall")!=-1;if(V&&!this._moduleWaterfall){throw"Please include 'jqxchart.waterfall.js'"}if(f){C.psums=[];C.nsums=[]}var w=NaN,R=NaN;var e=NaN,h=NaN;var u=q?q.baselineValue:NaN;if(isNaN(u)){u=P&&!f?1:0}var k=false;if(u!=0&&J){k=this._hasStackValueReversal(v,u);if(k){u=0}}if(J&&V){k=this._hasStackValueReversal(v,u)}var E=this._getDataLen(v);var d=0;var aa=NaN;var o=[];if(V){for(var m=0;m<F.series.length;m++){o.push(NaN)}}var A=NaN;for(var Y=0;Y<E&&C.isValid;Y++){if(I.rangeSelector){var l=I.dataField?this._getDataValue(Y,I.dataField,v):Y;if(l&&t.isDateTime){l=this._castAsDate(l,I.dateFormat)}if(t.useIndeces){l=Y}if(l&&(l.valueOf()<t.min.valueOf()||l.valueOf()>t.max.valueOf())){continue}}var ab=q.minValue;var H=q.maxValue;if(q.baselineValue){if(isNaN(ab)){ab=u}else{ab=Math.min(u,ab)}if(isNaN(H)){H=u}else{H=Math.max(u,H)}}var z=0,B=0;for(var m=0;m<F.series.length;m++){if(!this._isSerieVisible(v,m)){continue}var K=NaN,U=NaN,D=NaN;if(F.type.indexOf("candle")!=-1||F.type.indexOf("ohlc")!=-1){var c=["Open","Low","Close","High"];for(var W in c){var n=this._getDataValueAsNumber(Y,F.series[m]["dataField"+c[W]],v);if(isNaN(n)){continue}D=isNaN(U)?n:Math.min(D,n);U=isNaN(U)?n:Math.max(U,n)}}else{if(L){var ac=this._getDataValueAsNumber(Y,F.series[m].dataFieldFrom,v);var G=this._getDataValueAsNumber(Y,F.series[m].dataFieldTo,v);U=Math.max(ac,G);D=Math.min(ac,G)}else{K=this._getDataValueAsNumber(Y,F.series[m].dataField,v);if(V){if(this._isSummary(v,Y)){var X=this._getDataValue(Y,F.series[m].summary,v);if(X!==undefined){continue}}if(!J){if(isNaN(o[m])){o[m]=K}else{K+=o[m]}o[m]=K}else{if(!isNaN(A)){K+=A}A=K}}if(isNaN(K)||(P&&K<=0)){continue}D=U=K}}if((isNaN(H)||U>H)&&((isNaN(q.maxValue))?true:U<=q.maxValue)){H=U}if((isNaN(ab)||D<ab)&&((isNaN(q.minValue))?true:D>=q.minValue)){ab=D}if(!isNaN(K)&&J&&!V){if(K>u){z+=K}else{if(K<u){B+=K}}}}if(!f){if(!isNaN(q.maxValue)){z=Math.min(q.maxValue,z)}if(!isNaN(q.minValue)){B=Math.max(q.minValue,B)}}if(P&&f){for(var m=0;m<F.series.length;m++){if(!this._isSerieVisible(v,m)){aa=0.01;continue}var K=this._getDataValueAsNumber(Y,F.series[m].dataField,v);if(isNaN(K)||K<=0){aa=0.01;continue}var S=z==0?0:K/z;if(isNaN(aa)||S<aa){aa=S}}}var s=z-B;if(d<s){d=s}if(f){C.psums[Y]=z;C.nsums[Y]=B}if(H>R||isNaN(R)){R=H}if(ab<w||isNaN(w)){w=ab}if(z>e||isNaN(e)){e=z}if(B<h||isNaN(h)){h=B}}if(f){e=e==0?0:Math.max(e,-h);h=h==0?0:Math.min(h,-e)}if(w==R){if(w==0){w=-1;R=1}else{if(w<0){R=0}else{if(!P){w=0}else{if(w==1){w=w/O;R=R*O}}}}}var T={gmin:w,gmax:R,gsumP:e,gsumN:h,gbase:u,isLogAxis:P,logBase:O,minPercent:aa,gMaxRange:d,isStacked:J,isStacked100:f,isWaterfall:V,hasStackValueReversal:k,valueAxis:q,valueAxisSize:N};C.context=T}this._mergeCommonValueAxisStats();for(var Y=0;Y<Z.seriesGroups.length;Y++){var C=Z.seriesGroups[Y];var Q=this._calcOutputGroupStats(C.context);for(var W in Q){C[W]=Q[W]}delete C.context}},_mergeCommonValueAxisStats:function(){var h={};for(var f=0;f<this.seriesGroups.length;f++){if(this.seriesGroups[f].valueAxis){continue}var e=this._stats.seriesGroups[f].context;if(isNaN(h.gmin)||h.gmin>e.gmin){h.gmin=e.gmin}if(isNaN(h.gmax)||h.gmax<e.gmax){h.gmax=e.gmax}if(isNaN(h.gsumP)||h.gsumP<e.gsumP){h.gsumP=e.gsumP}if(isNaN(h.gsumN)||h.gsumN<e.gsumN){h.gsumN=e.gsumN}if(isNaN(h.logBase)||h.logBase>e.logBase){h.logBase=e.logBase}if(isNaN(h.minPercent)||h.minPercent>e.minPercent){h.minPercent=e.minPercent}}for(var f=0;f<this.seriesGroups.length;f++){if(this.seriesGroups[f].valueAxis){continue}var c=this._stats.seriesGroups[f].context;for(var d in h){c[d]=h[d]}}},_calcOutputGroupStats:function(i){var d=i.gmin,h=i.gmax,D=i.gsumP,E=i.gsumN,C=i.gbase,e=i.isLogAxis,l=i.logBase,w=i.minPercent,m=i.gMaxRange,n=i.isStacked,j=i.isStacked100,f=i.isWaterfall,q=i.hasStackValueReversal,B=i.valueAxis,z=i.valueAxisSize;var v=i.valueAxis.unitInterval;if(!v){v=this._calcInterval(n?E:d,n?D:h,Math.max(z/80,2))}if(d==h){d=C;h=2*h}var k=NaN;var c=0;var t=0;if(e){if(j){k=0;var u=1;c=t=a.jqx.log(100,l);while(u>w){u/=l;c--;k++}d=Math.pow(l,c)}else{if(n&&!f){h=Math.max(h,D)}t=a.jqx._rnd(a.jqx.log(h,l),1,true);h=Math.pow(l,t);c=a.jqx._rnd(a.jqx.log(d,l),1,false);d=Math.pow(l,c)}v=l}if(d<E){E=d}if(h>D){D=h}var A=e?d:a.jqx._rnd(n&&!f?E:d,v,false);var s=e?h:a.jqx._rnd(n&&!f?D:h,v,true);if(j&&s>100){s=100}if(j&&!e){s=(s>0)?100:0;A=(A<0)?-100:0;v=B.unitInterval;if(isNaN(v)||v<=0||v>=100){v=10}if((100%v)!=0){for(;v>=1;v--){if((100%v)==0){break}}}}if(isNaN(s)||isNaN(A)||isNaN(v)){return{}}if(isNaN(k)){k=parseInt(((s-A)/(v==0?1:v)).toFixed())}if(e&&!j){k=t-c;m=Math.pow(l,k)}if(k<1){return{}}var o={min:A,max:s,logarithmic:e,logBase:l,base:e?A:C,minPow:c,maxPow:t,mu:v,maxRange:m,intervals:k,hasStackValueReversal:q};return o},_getDataLen:function(d){var c=this.source;if(d!=undefined&&d!=-1&&this.seriesGroups[d].source){c=this.seriesGroups[d].source}if(c instanceof a.jqx.dataAdapter){c=c.records}if(c){return c.length}return 0},_getDataValue:function(c,f,e){var d=this.source;if(e!=undefined&&e!=-1){d=this.seriesGroups[e].source||d}if(d instanceof a.jqx.dataAdapter){d=d.records}if(!d||c<0||c>d.length-1){return undefined}if(a.isFunction(f)){return f(c,d)}return(f&&f!="")?d[c][f]:d[c]},_getDataValueAsNumber:function(c,f,d){var e=this._getDataValue(c,f,d);if(this._isDate(e)){return e.valueOf()}if(typeof(e)!="number"){e=parseFloat(e)}if(typeof(e)!="number"){e=undefined}return e},_isPieGroup:function(c){var d=this.seriesGroups[c];if(!d||!d.type){return false}return d.type.indexOf("pie")!=-1||d.type.indexOf("donut")!=-1},_renderPieSeries:function(f,d){var h=this._getDataLen(f);var j=this.seriesGroups[f];var o=this._calcGroupOffsets(f,d).offsets;for(var t=0;t<j.series.length;t++){var m=j.series[t];if(m.customDraw){continue}var A=this._getSerieSettings(f,t);var k=m.colorScheme||j.colorScheme||this.colorScheme;var v=this._getAnimProps(f,t);var c=v.enabled&&h<5000&&!this._isToggleRefresh&&this._isVML!=true?v.duration:0;if(a.jqx.mobile.isMobileBrowser()&&(this.renderer instanceof a.jqx.HTML5Renderer)){c=0}var w=this._get([m.minAngle,m.startAngle]);if(isNaN(w)||w<0||w>360){w=0}var C=this._get([m.maxAngle,m.endAngle]);if(isNaN(C)||C<0||C>360){C=360}var q={rect:d,minAngle:w,maxAngle:C,groupIndex:f,serieIndex:t,settings:A,items:[]};for(var z=0;z<h;z++){var p=o[t][z];if(!p.visible){continue}var u=p.fromAngle;var e=p.toAngle;var B=this.renderer.pieslice(p.x,p.y,p.innerRadius,p.outerRadius,u,c==0?e:u,p.centerOffset);this._setRenderInfo(f,t,z,{element:B});var l={displayValue:p.displayValue,itemIndex:z,visible:p.visible,x:p.x,y:p.y,innerRadius:p.innerRadius,outerRadius:p.outerRadius,fromAngle:u,toAngle:e,centerOffset:p.centerOffset};q.items.push(l)}this._animatePieSlices(q,0);var n=this;this._enqueueAnimation("series",undefined,undefined,c,function(s,i,D){n._animatePieSlices(i,D)},q)}},_sliceSortFunction:function(d,c){return d.fromAngle-c.fromAngle},_animatePieSlices:function(p,d){var k;if(this._elementRenderInfo&&this._elementRenderInfo.length>p.groupIndex&&this._elementRenderInfo[p.groupIndex].series&&this._elementRenderInfo[p.groupIndex].series.length>p.serieIndex){k=this._elementRenderInfo[p.groupIndex].series[p.serieIndex]}var h=360*d;var w=this.seriesGroups[p.groupIndex];var o=this._getLabelsSettings(p.groupIndex,p.serieIndex,NaN);var n=o.visible;var c=[];for(var v=0;v<p.items.length;v++){var A=p.items[v];if(!A.visible){continue}var q=A.fromAngle;var f=A.fromAngle+d*(A.toAngle-A.fromAngle);if(k&&k[A.displayValue]){var m=k[A.displayValue].fromAngle;var e=k[A.displayValue].toAngle;q=m+(q-m)*d;f=e+(f-e)*d}c.push({index:v,from:q,to:f})}if(k){c.sort(this._sliceSortFunction)}var B=NaN;for(var v=0;v<c.length;v++){var A=p.items[c[v].index];var t=this._getRenderInfo(p.groupIndex,p.serieIndex,A.itemIndex);var q=c[v].from;var f=c[v].to;if(k){if(!isNaN(B)&&q>B){q=B}B=f;if(v==c.length-1&&f!=c[0].from){f=p.maxAngle+c[0].from}}var u=this.renderer.pieSlicePath(A.x,A.y,A.innerRadius,A.outerRadius,q,f,A.centerOffset);this.renderer.attr(t.element,{d:u});var j=this._getColors(p.groupIndex,p.serieIndex,A.itemIndex,"radialGradient",A.outerRadius);var z=p.settings;t.colors=j;t.settings=z;this.renderer.attr(t.element,{fill:j.fillColor,stroke:j.lineColor,"stroke-width":z.stroke,"fill-opacity":z.opacity,"stroke-opacity":z.opacity,"stroke-dasharray":"none"||z.dashStyle});var l=w.series[p.serieIndex];if(n){this._showPieLabel(p.groupIndex,p.serieIndex,A.itemIndex,o)}if(d==1){this._installHandlers(t.element,"pieslice",p.groupIndex,p.serieIndex,A.itemIndex)}}},_showPieLabel:function(f,h,E,q,i){var l=this._renderData[f].offsets[h][E];if(l.elementInfo.labelElement){this.renderer.removeElement(l.elementInfo.labelElement)}if(!q){q=this._getLabelsSettings(f,h,NaN)}var F=l.fromAngle,H=l.toAngle;var m=Math.abs(F-H);var t=m>180?1:0;if(m>360){F=0;H=360}var u=F*Math.PI*2/360;var j=H*Math.PI*2/360;var k=m/2+F;k=k%360;var G=k*Math.PI*2/360;var z;if(q.autoRotate==true){z=k<90||k>270?360-k:180-k}var w=q.linesEnabled;var p=this._showLabel(f,h,E,{x:0,y:0,width:0,height:0},"center","center",true,false,false,z);var e=q.radius||l.outerRadius+Math.max(p.width,p.height);if(this._isPercent(e)){e=parseFloat(e)/100*Math.min(this._plotRect.width,this._plotRect.height)/2}e+=l.centerOffset;if(isNaN(i)){i=0}e+=i;var B=this.seriesGroups[f];var o=B.series[h];var D=a.jqx.getNum([o.offsetX,B.offsetX,this._plotRect.width/2]);var C=a.jqx.getNum([o.offsetY,B.offsetY,this._plotRect.height/2]);var d=this._plotRect.x+D;var c=this._plotRect.y+C;var A=this._adjustTextBoxPosition(d,c,p,e,k,l.outerRadius>e,q.linesAngles!=false,q.autoRotate==true);var n={};l.elementInfo.labelElement=this._showLabel(f,h,E,{x:A.x,y:A.y,width:p.width,height:p.height},"left","top",false,false,false,z,n);if(e>l.outerRadius+5&&w!=false){var v={lineColor:l.elementInfo.colors.lineColor,stroke:l.elementInfo.settings.stroke,opacity:l.elementInfo.settings.opacity,dashStyle:l.elementInfo.settings.dashStyle};l.elementInfo.labelArrowPath=this._updateLebelArrowPath(l.elementInfo.labelArrowPath,d,c,e,l.outerRadius+i,G,q.linesAngles!=false,v,n)}},_updateLebelArrowPath:function(e,l,h,k,n,j,q,f,u){var d=a.jqx._ptrnd(l+(k-0)*Math.cos(j));var p=a.jqx._ptrnd(h-(k-0)*Math.sin(j));var c=a.jqx._ptrnd(l+(n+2)*Math.cos(j));var o=a.jqx._ptrnd(h-(n+2)*Math.sin(j));var s=[];s.push({x:u.x+u.width/2,y:u.y});s.push({x:u.x+u.width/2,y:u.y+u.height});s.push({x:u.x,y:u.y+u.height/2});s.push({x:u.x+u.width,y:u.y+u.height/2});if(!q){s.push({x:u.x,y:u.y});s.push({x:u.x+u.width,y:u.y});s.push({x:u.x+u.width,y:u.y+u.height});s.push({x:u.x,y:u.y+u.height})}s=s.sort(function(v,i){return a.jqx._ptdist(v.x,v.y,l,h)-a.jqx._ptdist(i.x,i.y,l,h)});s=s.sort(function(v,i){return(Math.abs(v.x-l)+Math.abs(v.y-h))-(Math.abs(i.x-l)+Math.abs(i.y-h))});for(var m=0;m<s.length;m++){s[m].x=a.jqx._ptrnd(s[m].x);s[m].y=a.jqx._ptrnd(s[m].y)}d=s[0].x;p=s[0].y;var t="M "+d+","+p+" L"+c+","+o;if(q){t="M "+d+","+p+" L"+c+","+p+" L"+c+","+o}if(e){this.renderer.attr(e,{d:t})}else{e=this.renderer.path(t,{})}this.renderer.attr(e,{fill:"none",stroke:f.lineColor,"stroke-width":f.stroke,"stroke-opacity":f.opacity,"stroke-dasharray":"none"||f.dashStyle});return e},_adjustTextBoxPosition:function(f,e,o,i,u,c,j,p){var d=u*Math.PI*2/360;var l=a.jqx._ptrnd(f+i*Math.cos(d));var k=a.jqx._ptrnd(e-i*Math.sin(d));if(p){var m=o.width;var q=o.height;var v=Math.atan(q/m)%(Math.PI*2);var z=d%(Math.PI*2);var t=0,s=0;var n=0;if(z<=v){n=m/2*Math.cos(d)}else{if(z>=v&&z<Math.PI-v){n=(q/2)*Math.sin(d)}else{if(z>=Math.PI-v&&z<Math.PI+v){n=m/2*Math.cos(d)}else{if(z>=Math.PI+v&&z<2*Math.PI-v){n=q/2*Math.sin(d)}else{if(z>=2*Math.PI-v&&z<2*Math.PI){n=m/2*Math.cos(d)}}}}}i+=Math.abs(n)+3;var l=a.jqx._ptrnd(f+i*Math.cos(d));var k=a.jqx._ptrnd(e-i*Math.sin(d));l-=o.width/2;k-=o.height/2;return{x:l,y:k}}if(!c){if(!j){if(u>=0&&u<45||u>=315&&u<360){k-=o.height/2}else{if(u>=45&&u<135){k-=o.height;l-=o.width/2}else{if(u>=135&&u<225){k-=o.height/2;l-=o.width}else{if(u>=225&&u<315){l-=o.width/2}}}}}else{if(u>=90&&u<270){k-=o.height/2;l-=o.width}else{k-=o.height/2}}}else{l-=o.width/2;k-=o.height/2}return{x:l,y:k}},_isColumnType:function(c){return(c.indexOf("column")!=-1||c.indexOf("waterfall")!=-1)},_getColumnGroupsCount:function(d){var f=0;d=d||"vertical";var h=this.seriesGroups;for(var e=0;e<h.length;e++){var c=h[e].orientation||"vertical";if(this._isColumnType(h[e].type)&&c==d){f++}}return f},_getColumnGroupIndex:function(j){var c=0;var d=this.seriesGroups[j].orientation||"vertical";for(var f=0;f<j;f++){var h=this.seriesGroups[f];var e=h.orientation||"vertical";if(this._isColumnType(h.type)&&e==d){c++}}return c},_renderAxisBands:function(f,F,N){var C=N?this._getXAxis(f):this._getValueAxis(f);var w=this.seriesGroups[f];var A=N?undefined:w.bands;if(!A){for(var S=0;S<f;S++){var p=N?this._getXAxis(S):this._getValueAxis(S);if(p==C){return}}A=C.bands}if(!a.isArray(A)){return}var q=F;var Y=w.orientation=="horizontal";if(Y){q={x:F.y,y:F.x,width:F.height,height:F.width}}this._calcGroupOffsets(f,q);for(var S=0;S<A.length;S++){var d=A[S];var W=this._get([d.minValue,d.from]);var B=this._get([d.maxValue,d.to]);var v=N?this.getXAxisDataPointOffset(W,f):this.getValueAxisDataPointOffset(W,f);var X=N?this.getXAxisDataPointOffset(B,f):this.getValueAxisDataPointOffset(B,f);var D=Math.abs(v-X);var M;if(w.polar||w.spider){var u=this._renderData[f];var e=u.polarCoords;if(!N){var I=this._toPolarCoord(e,F,F.x,u.baseOffset);var H=this._toPolarCoord(e,F,F.x,v);var G=this._toPolarCoord(e,F,F.x,X);var t=a.jqx._ptdist(I.x,I.y,H.x,H.y);var s=a.jqx._ptdist(I.x,I.y,G.x,G.y);var m=Math.round(-e.startAngle*360/(2*Math.PI));var T=Math.round(-e.endAngle*360/(2*Math.PI));if(m>T){var L=m;m=T;T=L}if(w.spider){var J=u.xAxis.offsetAngles;var K="";var P=[s,t];var E=J;if(e.isClosedCircle){E=a.extend([],J);E.push(E[0])}for(var O in P){for(var Q=0;Q<E.length;Q++){var V=O==0?Q:J.length-Q-1;var n=e.x+P[O]*Math.cos(E[V]);var l=e.y+P[O]*Math.sin(E[V]);if(K==""){K+="M "}else{K+=" L"}K+=a.jqx._ptrnd(n)+","+a.jqx._ptrnd(l)}if(O==0){var n=e.x+P[1]*Math.cos(E[V]);var l=e.y+P[1]*Math.sin(E[V]);K+=" L"+a.jqx._ptrnd(n)+","+a.jqx._ptrnd(l)}}K+=" Z";M=this.renderer.path(K)}else{M=this.renderer.pieslice(e.x,e.y,t,s,m,T)}}else{if(w.spider){p1=this.getPolarDataPointOffset(W,this._stats.seriesGroups[f].max,f);p2=this.getPolarDataPointOffset(B,this._stats.seriesGroups[f].max,f);var K="M "+e.x+","+e.y;K+=" L "+p1.x+","+p1.y;K+=" L "+p2.x+","+p2.y;M=this.renderer.path(K)}else{var h={};var o={x:Math.min(v,X),y:F.y,width:D,height:F.height};this._columnAsPieSlice(h,0,F,e,o);M=h.element}}}else{var c={x:Math.min(v,X),y:q.y,width:D,height:q.height};if(!N){c={x:q.x,y:Math.min(v,X),width:q.width,height:D}}if(Y){var L=c.x;c.x=c.y;c.y=L;L=c.width;c.width=c.height;c.height=L}if(D==0||D==1){M=this.renderer.line(a.jqx._ptrnd(c.x),a.jqx._ptrnd(c.y),a.jqx._ptrnd(c.x+(Y?0:c.width)),a.jqx._ptrnd(c.y+(Y?c.height:0)))}else{M=this.renderer.rect(c.x,c.y,c.width,c.height)}}var Z=d.fillColor||d.color||"#AAAAAA";var U=d.lineColor||Z;var z=d.lineWidth;if(isNaN(z)){z=1}var R=d.opacity;if(isNaN(R)||R<0||R>1){R=1}this.renderer.attr(M,{fill:Z,"fill-opacity":R,stroke:U,"stroke-opacity":R,"stroke-width":z,"stroke-dasharray":d.dashStyle})}},_getColumnGroupWidth:function(n,i,p){var f=this.seriesGroups[n];var m=f.type.indexOf("stacked")!=-1;var e=m?1:f.series.length;var l=this._getColumnGroupsCount(f.orientation);if(isNaN(l)||0==l){l=1}var o=i.rangeLength>=1?i.itemWidth:p*0.9;var d=f.columnsMinWidth;if(isNaN(d)){d=1}if(!isNaN(f.columnsMaxWidth)){d=Math.min(f.columnsMaxWidth,d)}if(d>o&&i.length>0){o=Math.max(o,p*0.9/i.length)}var j=d;if(!m){var h=f.seriesGapPercent;if(isNaN(h)||h<0){h=10}h/=100;var c=d;c*=(1+h);j+=f.series.length*c}var k=Math.max(o/l,j);return{requiredWidth:j,availableWidth:o,targetWidth:k}},_getColumnSerieWidthAndOffset:function(e,f){var o=this.seriesGroups[e];var z=o.series[f];var d=o.orientation=="horizontal";var c=this._plotRect;if(d){c={x:c.y,y:c.x,width:c.height,height:c.width}}var A=this._calcGroupOffsets(e,c);if(!A||A.xoffsets.length==0){return}var n=true;var B=this._getColumnGroupsCount(o.orientation);if(o.type=="candlestick"||o.type=="ohlc"){B=1}var u=this._getColumnGroupIndex(e);var v=this._getColumnGroupWidth(e,A.xoffsets,d?c.height:c.width);var j=0;var h=v.targetWidth;if(this.columnSeriesOverlap==true||(Math.round(h)>Math.round(v.availableWidth/B))){B=1;u=0}if(n){j-=(h*B)/2}j+=h*u;var G=o.columnsGapPercent;if(G<=0){G=0}if(isNaN(G)||G>=100){G=25}G/=100;var m=h*G;if(m+v.requiredWidth>v.targetWidth){m=Math.max(0,v.targetWidth-v.requiredWidth)}if(Math.round(h)>Math.round(v.availableWidth)){m=0}h-=m;j+=m/2;var C=o.seriesGapPercent;if(isNaN(C)||C<0){C=10}var p=o.type.indexOf("stacked")!=-1;var w=h;if(!p){w/=o.series.length}var D=this._get([o.seriesGap,(h*C/100)/(o.series.length-1)]);if(o.polar==true||o.spider==true||p||o.series.length<=1){D=0}var q=D*(o.series.length-1);if(o.series.length>1&&q>h-o.series.length*1){q=h-o.series.length*1;D=q/Math.max(1,(o.series.length-1))}var i=w-(q/o.series.length);var F=0;var k=o.columnsMaxWidth;if(!isNaN(k)){if(i>k){F=i-k;i=k}}var E=F/2;var l=0;if(!p){var H=(h-(i*o.series.length)-q)/2;var t=Math.max(0,f);l=H+i*f+t*D}else{l=F/2}return{width:i,offset:j+l}},_renderColumnSeries:function(h,d){var l=this.seriesGroups[h];if(!l.series||l.series.length==0){return}var k=this._getDataLen(h);var f=l.orientation=="horizontal";var D=d;if(f){D={x:d.y,y:d.x,width:d.height,height:d.width}}var t=this._calcGroupOffsets(h,D);if(!t||t.xoffsets.length==0){return}var o;if(l.polar==true||l.spider==true){o=this._getPolarAxisCoords(h,D)}var v={groupIndex:h,rect:d,vertical:!f,seriesCtx:[],renderData:t,polarAxisCoords:o};v.columnGroupWidth=this._getColumnGroupWidth(h,t.xoffsets,f?D.height:D.width);var j=this._getGroupGradientType(h);for(var w=0;w<l.series.length;w++){var p=l.series[w];if(p.customDraw){continue}var B=p.dataField;var z=this._getAnimProps(h,w);var c=z.enabled&&!this._isToggleRefresh&&t.xoffsets.length<100?z.duration:0;var m=this._getColumnSerieWidthAndOffset(h,w);var u=this._isSerieVisible(h,w);var n=this._getSerieSettings(h,w);var E=this._getColors(h,w,NaN,this._getGroupGradientType(h),4);var e=[];if(a.isFunction(p.colorFunction)&&!o){for(var C=t.xoffsets.first;C<=t.xoffsets.last;C++){e.push(this._getColors(h,w,C,j,4))}}var A={seriesIndex:w,serieColors:E,itemsColors:e,settings:n,columnWidth:m.width,xAdjust:m.offset,isVisible:u};v.seriesCtx.push(A)}this._animColumns(v,c==0?1:0);var q=this;this._enqueueAnimation("series",undefined,undefined,c,function(s,i,F){q._animColumns(i,F)},v)},_getPercent:function(e,d,c,f){if(isNaN(e)){e=d}if(!isNaN(c)&&!isNaN(e)&&e<c){e=c}if(!isNaN(f)&&!isNaN(e)&&e>f){e=f}if(isNaN(e)){return NaN}return e},_getColumnVOffsets:function(p,l,f,G,z,d){var t=this.seriesGroups[l];var K=this._getPercent(t.columnsTopWidthPercent,100,0,100);var A=this._getPercent(t.columnsBottomWidthPercent,100,0,100);if(K==0&&A==0){A=100}var M=this._getPercent(t.columnsNeckHeightPercent,NaN,0,100)/100;var H=this._getPercent(t.columnsNeckWidthPercent,100,0,100)/100;var v=[];var L=NaN;for(var u=0;u<f.length;u++){var Q=f[u];var m=Q.seriesIndex;var J=t.series[m];var q=p.offsets[m][G].from;var S=p.offsets[m][G].to;var C=p.xoffsets.data[G];var j;var k=Q.isVisible;if(!k){S=q}var c=this._elementRenderInfo;if(k&&c&&c.length>l&&c[l].series.length>m){var I=p.xoffsets.xvalues[G];j=c[l].series[m][I];if(j&&!isNaN(j.from)&&!isNaN(j.to)){q=j.from+(q-j.from)*d;S=j.to+(S-j.to)*d;C=j.xoffset+(C-j.xoffset)*d}}if(!j){S=q+(S-q)*(z?1:d)}if(isNaN(q)){q=isNaN(L)?p.baseOffset:L}if(!isNaN(S)&&z){L=S}else{L=q}if(isNaN(S)){S=q}var F={from:q,to:S,xOffset:C};if(K!=100||A!=100){F.funnel=true;F.toWidthPercent=K;F.fromWidthPercent=A}v.push(F)}if(z&&v.length>1&&!(this._elementRenderInfo&&this._elementRenderInfo.length>l)){var n=0,o=0,N=-Infinity,B=Infinity,O=Infinity,E=-Infinity;for(var P=0;P<v.length;P++){var Q=f[P];if(Q.isVisible){if(v[P].to>=v[P].from){o+=v[P].to-v[P].from;O=Math.min(O,v[P].from);E=Math.max(E,v[P].to)}else{n+=v[P].from-v[P].to;N=Math.max(N,v[P].from);B=Math.min(B,v[P].to)}}}var R=n;var w=o;n*=d;o*=d;var e=0,h=0;for(var P=0;P<v.length;P++){if(v[P].to>=v[P].from){var D=v[P].to-v[P].from;if(D+h>o){D=Math.max(0,o-h);v[P].to=v[P].from+D}if(K!=100||A!=100){v[P].funnel=true;if(!isNaN(M)&&w*M>=h){v[P].fromWidthPercent=H*100}else{v[P].fromWidthPercent=(Math.abs(v[P].from-O)/w)*(K-A)+A}if(!isNaN(M)&&w*M>=(0+(h+D))){v[P].toWidthPercent=H*100}else{v[P].toWidthPercent=(Math.abs(v[P].to-O)/w)*(K-A)+A}}h+=D}else{var D=v[P].from-v[P].to;if(D+e>n){D=Math.max(0,n-e);v[P].to=v[P].from-D}if(K!=100||A!=100){v[P].funnel=true;if(!isNaN(M)&&R*M>=e){v[P].fromWidthPercent=H*100}else{v[P].fromWidthPercent=(Math.abs(v[P].from-N)/R)*(K-A)+A}if(!isNaN(M)&&R*M>=(0+(e+D))){v[P].toWidthPercent=H*100}else{v[P].toWidthPercent=(Math.abs(v[P].to-N)/R)*(K-A)+A}}e+=D}}}return v},_columnAsPieSlice:function(e,m,o,q){var f=this._toPolarCoord(o,m,q.x,q.y);var h=this._toPolarCoord(o,m,q.x,q.y+q.height);var n=a.jqx._ptdist(o.x,o.y,h.x,h.y);var k=a.jqx._ptdist(o.x,o.y,f.x,f.y);var d=m.width;var p=Math.abs(o.startAngle-o.endAngle)*180/Math.PI;var c=-((q.x-m.x)*p)/d;var j=-((q.x+q.width-m.x)*p)/d;var l=o.startAngle;l=360*l/(Math.PI*2);c-=l;j-=l;if(e){if(e.element!=undefined){var i=this.renderer.pieSlicePath(o.x,o.y,n,k,j,c,0);i+=" Z";this.renderer.attr(e.element,{d:i})}else{e.element=this.renderer.pieslice(o.x,o.y,n,k,j,c,0)}}return{fromAngle:j,toAngle:c,innerRadius:n,outerRadius:k}},_setRenderInfo:function(f,c,e,d){this._renderData[f].offsets[c][e].elementInfo=d},_getRenderInfo:function(e,c,d){return this._renderData[e].offsets[c][d].elementInfo||{}},_animColumns:function(al,e){var s=this;var t=al.groupIndex;var E=this.seriesGroups[t];var A=al.renderData;var ad=E.type.indexOf("waterfall")!=-1;var J=this._getXAxis(t);var L=E.type.indexOf("stacked")!=-1;var f=al.polarAxisCoords;var D=this._getGroupGradientType(t);var v=al.columnGroupWidth.targetWidth;var C=-1;for(var ae=0;ae<E.series.length;ae++){if(this._isSerieVisible(t,ae)){C=ae;break}}var am=NaN,w=NaN;for(var ae=0;ae<al.seriesCtx.length;ae++){var ak=al.seriesCtx[ae];if(isNaN(am)||am>ak.xAdjust){am=ak.xAdjust}if(isNaN(w)||w<ak.xAdjust+ak.columnWidth){w=ak.xAdjust+ak.columnWidth}}var u=Math.abs(w-am);var G=this._get([E.columnsGapPercent,25])/100;if(isNaN(G)<0||G>=1){G=0.25}var h=G*u;var ac=al.renderData.xoffsets;var V=-1;var R={};var U=E.skipOverlappingPoints==true;for(var ag=ac.first;ag<=ac.last;ag++){var Y=ac.data[ag];if(isNaN(Y)){continue}if(V!=-1&&Math.abs(Y-V)<(u-1+h)&&U){continue}else{V=Y}var I=this._getColumnVOffsets(A,t,al.seriesCtx,ag,L,e);var O=false;if(ad){for(var F=0;F<E.series.length;F++){if(E.series[F].summary&&ac.xvalues[ag][E.series[F].summary]){O=true}}}for(var F=0;F<al.seriesCtx.length;F++){var ak=al.seriesCtx[F];var o=ak.seriesIndex;var H=E.series[o];var B=I[F].from;var an=I[F].to;var N=I[F].xOffset;var k=(al.vertical?al.rect.x:al.rect.y)+ak.xAdjust;var ah=ak.settings;var Z=ak.itemsColors.length!=0?ak.itemsColors[ag-A.xoffsets.first]:ak.serieColors;var l=this._isSerieVisible(t,o);if(!l){continue}var Y=a.jqx._ptrnd(k+N);var T={x:Y,width:ak.columnWidth};if(I[F].funnel){T.fromWidthPercent=I[F].fromWidthPercent;T.toWidthPercent=I[F].toWidthPercent}var m=true;if(al.vertical){T.y=B;T.height=an-B;if(T.height<0){T.y+=T.height;T.height=-T.height;m=false}}else{T.x=B<an?B:an;T.width=Math.abs(B-an);m=B-an<0;T.y=Y;T.height=ak.columnWidth}var p=B-an;if(isNaN(p)){continue}p=Math.abs(p);var K=undefined;var d=s._getRenderInfo(t,o,ag);var z=d.element;var S=d.labelElement;var Q=z==undefined;if(S){s.renderer.removeElement(S);S=undefined}if(!f){if(I[F].funnel){var ab=this._getTrapezoidPath(a.extend({},T),al.vertical,m);if(Q){z=this.renderer.path(ab,{})}else{this.renderer.attr(z,{d:ab})}}else{if(Q){z=this.renderer.rect(T.x,T.y,al.vertical?T.width:0,al.vertical?0:T.height)}else{if(al.vertical==true){this.renderer.attr(z,{x:T.x,y:T.y,height:p})}else{this.renderer.attr(z,{x:T.x,y:T.y,width:p})}}}}else{var n={element:z};K=this._columnAsPieSlice(n,al.rect,f,T);z=n.element;var Z=this._getColors(t,o,undefined,"radialGradient",K.outerRadius)}if(p<1&&(e!=1||f)){this.renderer.attr(z,{display:"none"})}else{this.renderer.attr(z,{display:"block"})}if(Q){this.renderer.attr(z,{fill:Z.fillColor,"fill-opacity":ah.opacity,"stroke-opacity":ah.opacity,stroke:Z.lineColor,"stroke-width":ah.stroke,"stroke-dasharray":ah.dashStyle})}if(S){this.renderer.removeElement(S)}if(!l||(p==0&&e<1)){d={element:z,labelElement:S};s._setRenderInfo(t,o,ag,d);continue}if(ad&&this._get([H.showWaterfallLines,E.showWaterfallLines])!=false){if(!L||(L&&F==C)){var af=L?-1:F;if(e==1&&!isNaN(A.offsets[F][ag].from)&&!isNaN(A.offsets[F][ag].to)){var P=R[af];if(P!=undefined){var aj={x:P.x,y:a.jqx._ptrnd(P.y)};var ai={x:Y,y:aj.y};var W=E.columnsTopWidthPercent/100;if(isNaN(W)){W=1}else{if(W>1||W<0){W=1}}var aa=E.columnsBottomWidthPercent/100;if(isNaN(aa)){aa=1}else{if(aa>1||aa<0){aa=1}}var q=al.vertical?T.width:T.height;aj.x=aj.x-q/2+q/2*W;if(O){var c=q*W/2;ai.x=ai.x+q/2-(J.flip?-c:c)}else{var c=q*aa/2;ai.x=ai.x+q/2-(J.flip?-c:c)}if(!al.vertical){this._swapXY([aj]);this._swapXY([ai])}this.renderer.line(aj.x,aj.y,ai.x,ai.y,{stroke:P.color,"stroke-width":ah.stroke,"stroke-opacity":ah.opacity,"fill-opacity":ah.opacity,"stroke-dasharray":ah.dashStyle})}}}if(e==1&&p!=0){R[L?-1:F]={y:an,x:(al.vertical?T.x+T.width:T.y+T.height),color:Z.lineColor}}}if(f){var X=this._toPolarCoord(f,al.rect,T.x+T.width/2,T.y);var q=this._showLabel(t,o,ag,T,undefined,undefined,true);var M=K.outerRadius+10;labelOffset=this._adjustTextBoxPosition(f.x,f.y,q,M,(K.fromAngle+K.toAngle)/2,true,false,false);S=this._showLabel(t,o,ag,{x:labelOffset.x,y:labelOffset.y},undefined,undefined,false,false,false)}else{S=this._showLabel(t,o,ag,T,undefined,undefined,false,false,m)}d={element:z,labelElement:S};s._setRenderInfo(t,o,ag,d);if(e==1){this._installHandlers(z,"column",t,o,ag)}}}},_getTrapezoidPath:function(j,k,h){var n="";var c=j.fromWidthPercent/100;var d=j.toWidthPercent/100;if(!k){var f=j.width;j.width=j.height;j.height=f;f=j.x;j.x=j.y;j.y=f}var l=j.x+j.width/2;var m=[{x:l-j.width*(!h?c:d)/2,y:j.y+j.height},{x:l-j.width*(!h?d:c)/2,y:j.y},{x:l+j.width*(!h?d:c)/2,y:j.y},{x:l+j.width*(!h?c:d)/2,y:j.y+j.height}];if(!k){this._swapXY(m)}n+="M "+a.jqx._ptrnd(m[0].x)+","+a.jqx._ptrnd(m[0].y);for(var e=1;e<m.length;e++){n+=" L "+a.jqx._ptrnd(m[e].x)+","+a.jqx._ptrnd(m[e].y)}n+=" Z";return n},_swapXY:function(e){for(var d=0;d<e.length;d++){var c=e[d].x;e[d].x=e[d].y;e[d].y=c}},_renderCandleStickSeries:function(f,d,w){var o=this;var j=o.seriesGroups[f];if(!j.series||j.series.length==0){return}var e=j.orientation=="horizontal";var A=d;if(e){A={x:d.y,y:d.x,width:d.height,height:d.width}}var p=o._calcGroupOffsets(f,A);if(!p||p.xoffsets.length==0){return}var B=A.width;var m;if(j.polar||j.spider){m=o._getPolarAxisCoords(f,A);B=2*m.r}var i=o._alignValuesWithTicks(f);var h=o._getGroupGradientType(f);var k=[];for(var t=0;t<j.series.length;t++){k[t]=o._getColumnSerieWidthAndOffset(f,t)}for(var t=0;t<j.series.length;t++){if(!this._isSerieVisible(f,t)){continue}var z=o._getSerieSettings(f,t);var n=j.series[t];if(n.customDraw){continue}var l=a.isFunction(n.colorFunction)?undefined:o._getColors(f,t,NaN,h);var q={rect:d,inverse:e,groupIndex:f,seriesIndex:t,symbolType:n.symbolType,symbolSize:n.symbolSize,"fill-opacity":z.opacity,"stroke-opacity":z.opacity,"stroke-width":z.stroke,"stroke-dasharray":z.dashStyle,gradientType:h,colors:l,renderData:p,polarAxisCoords:m,columnsInfo:k,isOHLC:w,items:[],self:o};var u=o._getAnimProps(f,t);var c=u.enabled&&!o._isToggleRefresh&&p.xoffsets.length<5000?u.duration:0;o._animCandleStick(q,0);var v;o._enqueueAnimation("series",undefined,undefined,c,function(D,s,C){o._animCandleStick(s,C)},q)}},_animCandleStick:function(w,c){var t=["Open","Low","Close","High"];var f=w.columnsInfo[w.seriesIndex].width;var k=w.self.seriesGroups[w.groupIndex];var A=w.renderData.xoffsets;var H=-1;var p=Math.abs(A.data[A.last]-A.data[A.first]);p*=c;var d=NaN,u=NaN;for(var C=0;C<w.columnsInfo.length;C++){var B=w.columnsInfo[C];if(isNaN(d)||d>B.offset){d=B.offset}if(isNaN(u)||u<B.offset+B.width){u=B.offset+B.width}}var o=Math.abs(u-d);var E=k.skipOverlappingPoints!=false;for(var D=A.first;D<=A.last;D++){var n=A.data[D];if(isNaN(n)){continue}if(H!=-1&&Math.abs(n-H)<o&&E){continue}var F=Math.abs(A.data[D]-A.data[A.first]);if(F>p){break}H=n;var G=w.items[D]=w.items[D]||{};for(var C in t){var I=w.self._getDataValueAsNumber(D,k.series[w.seriesIndex]["dataField"+t[C]],w.groupIndex);if(isNaN(I)){break}var m=w.renderData.offsets[w.seriesIndex][D][t[C]];if(isNaN(m)){break}G[t[C]]=m}n+=w.inverse?w.rect.y:w.rect.x;if(w.polarAxisCoords){var v=this._toPolarCoord(w.polarAxisCoords,this._plotRect,n,m);n=v.x;m=v.y}n=a.jqx._ptrnd(n);for(var h in t){G[h]=a.jqx._ptrnd(G[h])}var l=w.colors;if(!l){l=w.self._getColors(w.groupIndex,w.seriesIndex,D,w.gradientType)}if(!w.isOHLC){var z=G.lineElement;if(!z){z=w.inverse?this.renderer.line(G.Low,n,G.High,n):this.renderer.line(n,G.Low,n,G.High);this.renderer.attr(z,{fill:l.fillColor,"fill-opacity":w["fill-opacity"],"stroke-opacity":w["fill-opacity"],stroke:l.lineColor,"stroke-width":w["stroke-width"],"stroke-dasharray":w["stroke-dasharray"]});G.lineElement=z}var s=G.stickElement;n-=f/2;if(!s){var e=l.fillColor;if(G.Close<=G.Open&&l.fillColorAlt){e=l.fillColorAlt}s=w.inverse?this.renderer.rect(Math.min(G.Open,G.Close),n,Math.abs(G.Close-G.Open),f):this.renderer.rect(n,Math.min(G.Open,G.Close),f,Math.abs(G.Close-G.Open));this.renderer.attr(s,{fill:e,"fill-opacity":w["fill-opacity"],"stroke-opacity":w["fill-opacity"],stroke:l.lineColor,"stroke-width":w["stroke-width"],"stroke-dasharray":w["stroke-dasharray"]});G.stickElement=s}if(c==1){this._installHandlers(s,"column",w.groupIndex,w.seriesIndex,D)}}else{var q="M"+n+","+G.Low+" L"+n+","+G.High+" M"+(n-f/2)+","+G.Open+" L"+n+","+G.Open+" M"+(n+f/2)+","+G.Close+" L"+n+","+G.Close;if(w.inverse){q="M"+G.Low+","+n+" L"+G.High+","+n+" M"+G.Open+","+(n-f/2)+" L"+G.Open+","+n+" M"+G.Close+","+n+" L"+G.Close+","+(n+f/2)}var z=G.lineElement;if(!z){z=this.renderer.path(q,{});this.renderer.attr(z,{fill:l.fillColor,"fill-opacity":w["fill-opacity"],"stroke-opacity":w["fill-opacity"],stroke:l.lineColor,"stroke-width":w["stroke-width"],"stroke-dasharray":w["stroke-dasharray"]});G.lineElement=z}if(c==1){this._installHandlers(z,"column",w.groupIndex,w.seriesIndex,D)}}}},_renderScatterSeries:function(f,E,G){var v=this.seriesGroups[f];if(!v.series||v.series.length==0){return}var h=v.type.indexOf("bubble")!=-1;var w=v.orientation=="horizontal";var o=E;if(w){o={x:E.y,y:E.x,width:E.height,height:E.width}}var p=this._calcGroupOffsets(f,o);if(!p||p.xoffsets.length==0){return}var O=o.width;var d;if(v.polar||v.spider){d=this._getPolarAxisCoords(f,o);O=2*d.r}var W=this._alignValuesWithTicks(f);var u=this._getGroupGradientType(f);if(!G){G="to"}for(var j=0;j<v.series.length;j++){var U=this._getSerieSettings(f,j);var L=v.series[j];if(L.customDraw){continue}var B=L.dataField;var n=a.isFunction(L.colorFunction);var M=this._getColors(f,j,NaN,u);var V=NaN,A=NaN;if(h){for(var T=p.xoffsets.first;T<=p.xoffsets.last;T++){var D=this._getDataValueAsNumber(T,(L.radiusDataField||L.sizeDataField),f);if(typeof(D)!="number"){throw"Invalid radiusDataField value at ["+T+"]"}if(!isNaN(D)){if(isNaN(V)||D<V){V=D}if(isNaN(A)||D>A){A=D}}}}var l=L.minRadius||L.minSymbolSize;if(isNaN(l)){l=O/50}var F=L.maxRadius||L.maxSymbolSize;if(isNaN(F)){F=O/25}if(l>F){F=l}var N=L.radius;if(isNaN(N)&&!isNaN(L.symbolSize)){N=(L.symbolType=="circle")?L.symbolSize/2:L.symbolSize}else{N=5}var H=this._getAnimProps(f,j);var C=H.enabled&&!this._isToggleRefresh&&p.xoffsets.length<5000?H.duration:0;var z={groupIndex:f,seriesIndex:j,symbolType:L.symbolType,symbolSize:L.symbolSize,"fill-opacity":U.opacity,"stroke-opacity":U.opacity,"stroke-width":U.stroke,"stroke-dasharray":U.dashStyle,items:[],polarAxisCoords:d};for(var T=p.xoffsets.first;T<=p.xoffsets.last;T++){var D=this._getDataValueAsNumber(T,B,f);if(typeof(D)!="number"){continue}var K=p.xoffsets.data[T];var I=p.xoffsets.xvalues[T];var J=p.offsets[j][T][G];if(J<o.y||J>o.y+o.height){continue}if(isNaN(K)||isNaN(J)){continue}if(w){var R=K;K=J;J=R+E.y}else{K+=E.x}var P=N;if(h){var q=this._getDataValueAsNumber(T,(L.radiusDataField||L.sizeDataField),f);if(typeof(q)!="number"){continue}P=l+(F-l)*(q-V)/Math.max(1,A-V);if(isNaN(P)){P=l}}p.offsets[j][T].radius=P;var m=NaN,Q=NaN;var t=0;var c=this._elementRenderInfo;if(I!=undefined&&c&&c.length>f&&c[f].series.length>j){var e=c[f].series[j][I];if(e&&!isNaN(e.to)){m=e.to;Q=e.xoffset;t=N;if(w){var R=Q;Q=m;m=R+E.y}else{Q+=E.x}if(h){t=l+(F-l)*(e.valueRadius-V)/Math.max(1,A-V);if(isNaN(t)){t=l}}}}if(n){M=this._getColors(f,j,T,u)}z.items.push({from:t,to:P,itemIndex:T,fill:M.fillColor,stroke:M.lineColor,x:K,y:J,xFrom:Q,yFrom:m})}this._animR(z,0);var k=this;var S;this._enqueueAnimation("series",undefined,undefined,C,function(X,i,s){k._animR(i,s)},z)}},_animR:function(q,j){var l=q.items;var s=q.symbolType||"circle";var d=q.symbolSize;for(var f=0;f<l.length;f++){var p=l[f];var n=p.x;var m=p.y;var c=Math.round((p.to-p.from)*j+p.from);if(!isNaN(p.yFrom)){m=p.yFrom+(m-p.yFrom)*j}if(!isNaN(p.xFrom)){n=p.xFrom+(n-p.xFrom)*j}if(q.polarAxisCoords){var o=this._toPolarCoord(q.polarAxisCoords,this._plotRect,n,m);n=o.x;m=o.y}n=a.jqx._ptrnd(n);m=a.jqx._ptrnd(m);c=a.jqx._ptrnd(c);var h=this._getRenderInfo(q.groupIndex,q.seriesIndex,l[f].itemIndex);var e=h.element;var k=h.labelElement;if(s=="circle"){if(!e){e=this.renderer.circle(n,m,c);this.renderer.attr(e,{fill:p.fill,"fill-opacity":q["fill-opacity"],"stroke-opacity":q["fill-opacity"],stroke:p.stroke,"stroke-width":q["stroke-width"],"stroke-dasharray":q["stroke-dasharray"]})}if(this._isVML){this.renderer.updateCircle(e,undefined,undefined,c)}else{this.renderer.attr(e,{r:c,cy:m,cx:n})}}else{if(e){this.renderer.removeElement(e)}e=this._drawSymbol(s,n,m,p.fill,q["fill-opacity"],p.stroke,q["stroke-opacity"]||q["fill-opacity"],q["stroke-width"],q["stroke-dasharray"],d||c)}if(k){this.renderer.removeElement(k)}k=this._showLabel(q.groupIndex,q.seriesIndex,p.itemIndex,{x:n-c,y:m-c,width:2*c,height:2*c});if(j>=1){this._installHandlers(e,"circle",q.groupIndex,q.seriesIndex,p.itemIndex)}this._setRenderInfo(q.groupIndex,q.seriesIndex,l[f].itemIndex,{element:e,labelElement:k})}},_showToolTip:function(p,n,J,C,f){var z=this;var m=z._getXAxis(J);var c=z._getValueAxis(J);if(z._ttEl&&J==z._ttEl.gidx&&C==z._ttEl.sidx&&f==z._ttEl.iidx){return}var l=z.seriesGroups[J];var q=l.series[C];var j=z.enableCrosshairs&&!(l.polar||l.spider);if(z._pointMarker){p=parseInt(z._pointMarker.x+5);n=parseInt(z._pointMarker.y-5)}else{j=false}var k=j&&z.showToolTips==false;p=a.jqx._ptrnd(p);n=a.jqx._ptrnd(n);var K=z._ttEl==undefined;if(l.showToolTips==false||q.showToolTips==false){return}var i=z._get([q.toolTipFormatSettings,l.toolTipFormatSettings,c.toolTipFormatSettings,z.toolTipFormatSettings]);var v=z._get([q.toolTipFormatFunction,l.toolTipFormatFunction,c.toolTipFormatFunction,z.toolTipFormatFunction]);var o=z._getColors(J,C,f);var w=z._getDataValue(f,m.dataField,J);if(m.dataField==undefined||m.dataField==""){w=f}if(m.type=="date"){w=z._castAsDate(w,(i?i.dateFormat:undefined)||m.dateFormat)}var u="";if(a.isFunction(v)){var A={};var E=0;for(var d in q){if(d.indexOf("dataField")==0){A[d.substring(9,d.length).toLowerCase()]=z._getDataValue(f,q[d],J);E++}}if(E==0){A=z._getDataValue(f,undefined,J)}else{if(E==1){A=A[""]}}u=v(A,f,q,l,w,m)}else{u=z._getFormattedValue(J,C,f,i,v);var e=this._getAxisSettings(m);var O=e.toolTipFormatSettings;var h=e.toolTipFormatFunction;if(!h&&!O&&m.type=="date"){h=this._getDefaultDTFormatFn(m.baseUnit||"day")}var N=z._formatValue(w,O,h,J,C,f);if(!z._isPieGroup(J)){var s=(m.displayText||m.dataField||"");if(s.length>0){u=s+": "+N+"<br>"+u}else{u=N+"<br>"+u}}else{w=z._getDataValue(f,q.displayText||q.dataField,J);N=z._formatValue(w,O,h,J,C,f);u=N+": "+u}}if(!z._ttEl){z._ttEl={}}z._ttEl.sidx=C;z._ttEl.gidx=J;z._ttEl.iidx=f;rect=z.renderer.getRect();if(j){var G=a.jqx._ptrnd(z._pointMarker.x);var F=a.jqx._ptrnd(z._pointMarker.y);if(z._ttEl.vLine&&z._ttEl.hLine){z.renderer.attr(z._ttEl.vLine,{x1:G,x2:G});z.renderer.attr(z._ttEl.hLine,{y1:F,y2:F})}else{var D=z.crosshairsColor||z._defaultLineColor;z._ttEl.vLine=z.renderer.line(G,z._plotRect.y,G,z._plotRect.y+z._plotRect.height,{stroke:D,"stroke-width":z.crosshairsLineWidth||1,"stroke-dasharray":z.crosshairsDashStyle||""});z._ttEl.hLine=z.renderer.line(z._plotRect.x,F,z._plotRect.x+z._plotRect.width,F,{stroke:D,"stroke-width":z.crosshairsLineWidth||1,"stroke-dasharray":z.crosshairsDashStyle||""})}}if(!k&&z.showToolTips!=false){var H=q.toolTipClass||l.toolTipClass||this.toThemeProperty("jqx-chart-tooltip-text",null);var L=q.toolTipBackground||l.toolTipBackground||"#FFFFFF";var M=q.toolTipLineColor||l.toolTipLineColor||o.lineColor;var B=this.getItemCoord(J,C,f);var I=0;if(z._pointMarker&&z._pointMarker.element){I=q.symbolSizeSelected;if(isNaN(I)){I=q.symbolSize}if(isNaN(I)||I>50||I<0){I=l.symbolSize}if(isNaN(I)||I>50||I<0){I=8}}z._createTooltip(B,l,u,{css:H,fill:L,stroke:M,symbolSize:I})}},_fitTooltip:function(d,k,l,m,f){var e={};var c=2+f/2;var h=7;if(k.x-l.width-h-c>d.x&&k.y+k.height/2-l.height/2>d.y&&k.y+k.height/2+l.height/2<d.y+d.height){e.left={arrowLocation:"right",x:k.x-l.width-h-c,y:k.y+k.height/2-l.height/2,width:l.width+h,height:l.height}}if(k.x+k.width+l.width+h+c<d.x+d.width&&k.y+k.height/2-l.height/2>d.y&&k.y+k.height/2+l.height/2<d.y+d.height){e.right={arrowLocation:"left",x:k.x+k.width+c,y:k.y+k.height/2-l.height/2,width:l.width+h,height:l.height}}if(k.y-l.height-c-h>d.y&&k.x+k.width/2-l.width/2>d.x&&k.x+k.width/2+l.width/2<d.x+d.width){e.top={arrowLocation:"bottom",x:k.x+k.width/2-l.width/2,y:k.y-l.height-c-h,width:l.width,height:l.height+h}}if(k.y+k.height+l.height+h+c<d.y+d.height&&k.x+k.width/2-l.width/2>d.x&&k.x+k.width/2+l.width/2<d.x+d.width){e.bottom={arrowLocation:"top",x:k.x+k.width/2-l.width/2,y:k.y+k.height+c,width:l.width,height:l.height+h}}if(k.width>k.height||((m.type.indexOf("stackedcolumn")!=-1||m.type.indexOf("stackedwaterfall")!=-1)&&m.orientation!="horizontal")){if(e.left){return e.left}if(e.right){return e.right}}else{if(e.top){return e.top}if(e.bottom){return e.bottom}}for(var j in e){if(e[j]){return e[j]}}return{arrowLocation:""}},_createTooltip:function(F,l,z,A){var s=this;var w=l.type;var D=false;var E=s._ttEl.box;if(!E){D=true;E=s._ttEl.box=document.createElement("div");var f=10000000;E.style.position="absolute";E.style.cursor="default";a(c).css({"z-index":f,"box-sizing":"content-box"});a(document.body).append(E);var c=document.createElement("div");c.id="arrowOuterDiv";c.style.width="0px";c.style.height="0px";c.style.position="absolute";a(c).css({"z-index":f+1,"box-sizing":"content-box"});var i=document.createElement("div");i.id="arrowInnerDiv";i.style.width="0px";i.style.height="0px";i.style.position="absolute";var v=document.createElement("div");v.id="contentDiv";v.style.position="absolute";a(v).css({"box-sizing":"content-box"});a(v).addClass("jqx-rc-all jqx-button");a(v).appendTo(a(E));a(c).appendTo(a(E));a(i).appendTo(a(E));a(i).css({"z-index":f+2,"box-sizing":"content-box"})}if(!z||z.length==0){a(E).fadeTo(0,0);return}v=a(E).find("#contentDiv")[0];c=a(E).find("#arrowOuterDiv")[0];i=a(E).find("#arrowInnerDiv")[0];v.style.backgroundColor=A.fill;v.style.borderColor=A.stroke;var n="<span class='"+A.css+"'>"+z+"</span>";a(v).html(n);var q=this._measureHtml(n,"jqx-rc-all jqx-button");rect=s._plotRect;if(q.width>rect.width||q.height>rect.height){return}var p={width:q.width,height:q.height};arrowLocation="";var C=5;var t=7;var u=s._isColumnType(w);x=Math.max(F.x,rect.x);y=Math.max(F.y,rect.y);if(s.toolTipAlignment=="dataPoint"){if(w.indexOf("pie")!=-1||w.indexOf("donut")!=-1){var m=(F.fromAngle+F.toAngle)/2;m=m*(Math.PI/180);var h=(!isNaN(F.innerRadius)&&F.innerRadius>0)?(F.innerRadius+F.outerRadius)/2:F.outerRadius*0.75;x=F.x=F.center.x+Math.cos(m)*h;y=F.y=F.center.y-Math.sin(m)*h;F.width=F.height=1}else{if(u&&(l.polar||l.spider)){F.width=F.height=1}}var B=this._fitTooltip(this._plotRect,F,p,l,A.symbolSize);if(B.arrowLocation!=""){arrowLocation=B.arrowLocation;x=B.x;y=B.y;p.width=B.width;p.height=B.height}}else{arrowLocation=""}if(arrowLocation=="top"||arrowLocation=="bottom"){p.height+=t;x-=t/2;if(arrowLocation=="bottom"){y-=t}}else{if(arrowLocation=="left"||arrowLocation=="right"){p.width+=t;y-=t/2;if(arrowLocation=="right"){x-=t}}}if(x+p.width>rect.x+rect.width){arrowLocation="";x=rect.x+rect.width-p.width}if(y+p.height>rect.y+rect.height){arrowLocation="";y=rect.y+rect.height-p.height}var j={x:0,y:0},e={x:0,y:0};a(v).css({width:q.width,height:q.height,left:0,top:0});c.style["margin-top"]=c.style["margin-left"]=0;i.style["margin-top"]=i.style["margin-left"]=0;v.style["margin-top"]=v.style["margin-left"]=0;var k=t+"px solid";var d=t+"px solid transparent";switch(arrowLocation){case"left":j={x:0,y:(q.height-t)/2};contentPostion={x:t,y:0};v.style["margin-left"]=t+"px";c.style["margin-left"]=0+"px";c.style["margin-top"]=j.y+"px";c.style["border-left"]="";c.style["border-right"]=k+" "+A.stroke;c.style["border-top"]=d;c.style["border-bottom"]=d;i.style["margin-left"]=1+"px";i.style["margin-top"]=j.y+"px";i.style["border-left"]="";i.style["border-right"]=k+" "+A.fill;i.style["border-top"]=d;i.style["border-bottom"]=d;break;case"right":j={x:p.width-t,y:(q.height-t)/2};contentPostion={x:0,y:0};c.style["margin-left"]=j.x+"px";c.style["margin-top"]=j.y+"px";c.style["border-left"]=k+" "+A.stroke;c.style["border-right"]="";c.style["border-top"]=d;c.style["border-bottom"]=d;i.style["margin-left"]=j.x-1+"px";i.style["margin-top"]=j.y+"px";i.style["border-left"]=k+" "+A.fill;i.style["border-right"]="";i.style["border-top"]=d;i.style["border-bottom"]=d;break;case"top":j={x:p.width/2-t/2,y:0};contentPostion={x:0,y:t};v.style["margin-top"]=contentPostion.y+"px";c.style["margin-left"]=j.x+"px";c.style["border-top"]="";c.style["border-bottom"]=k+" "+A.stroke;c.style["border-left"]=d;c.style["border-right"]=d;i.style["margin-left"]=j.x+"px";i.style["margin-top"]=1+"px";i.style["border-top"]="";i.style["border-bottom"]=k+" "+A.fill;i.style["border-left"]=d;i.style["border-right"]=d;break;case"bottom":j={x:p.width/2-t/2,y:p.height-t};contentPostion={x:0,y:0};c.style["margin-left"]=j.x+"px";c.style["margin-top"]=j.y+"px";c.style["border-top"]=k+" "+A.stroke;c.style["border-bottom"]="";c.style["border-left"]=d;c.style["border-right"]=d;i.style["margin-left"]=j.x+"px";i.style["margin-top"]=j.y-1+"px";i.style["border-top"]=k+" "+A.fill;i.style["border-bottom"]="";i.style["border-left"]=d;i.style["border-right"]=d;break}if(arrowLocation==""){a(c).hide();a(i).hide()}else{a(c).show();a(i).show()}a(E).css({width:p.width+"px",height:p.height+"px"});var o=s.host.coord();if(D){a(E).fadeOut(0,0);E.style.left=x+o.left+"px";E.style.top=y+o.top+"px"}a(E).clearQueue();a(E).animate({left:x+o.left,top:y+o.top,opacity:1},s.toolTipMoveDuration,"easeInOutCirc");a(E).fadeTo(400,1)},_measureHtml:function(d,c){var f=this._measureDiv;if(!f){this._measureDiv=f=document.createElement("div");f.style.position="absolute";f.style.cursor="default";f.style.overflow="hidden";f.style.display="none";a(f).addClass(c);this.host.append(f)}a(f).html(d);var e={width:a(f).width()+2,height:a(f).height()+2};if(a.jqx.browser&&a.jqx.browser.mozilla){e.height+=3}return e},_hideToolTip:function(c){if(!this._ttEl){return}if(this._ttEl.box){if(c==0){a(this._ttEl.box).hide()}else{a(this._ttEl.box).fadeOut()}}this._hideCrosshairs();this._ttEl.gidx=undefined},_hideCrosshairs:function(){if(!this._ttEl){return}if(this._ttEl.vLine){this.renderer.removeElement(this._ttEl.vLine);this._ttEl.vLine=undefined}if(this._ttEl.hLine){this.renderer.removeElement(this._ttEl.hLine);this._ttEl.hLine=undefined}},_get:function(c){return a.jqx.getByPriority(c)},_getAxisSettings:function(h){if(!h){return{}}var n=this;var m=h.gridLines||{};var p={visible:this._get([m.visible,h.showGridLines,true]),color:n._get([m.color,h.gridLinesColor,n._defaultLineColor]),unitInterval:n._get([m.unitInterval,m.interval,h.gridLinesInterval]),step:n._get([m.step,h.gridLinesStep]),dashStyle:n._get([m.dashStyle,h.gridLinesDashStyle]),width:n._get([m.lineWidth,1]),offsets:[],alternatingBackgroundColor:h.alternatingBackgroundColor,alternatingBackgroundColor2:h.alternatingBackgroundColor2,alternatingBackgroundOpacity:h.alternatingBackgroundOpacity};var e=h.tickMarks||{};var j={visible:this._get([e.visible,h.showTickMarks,true]),color:n._get([e.color,h.tickMarksColor,n._defaultLineColor]),unitInterval:n._get([e.unitInterval,e.interval,h.tickMarksInterval]),step:n._get([e.step,h.tickMarksStep]),dashStyle:n._get([e.dashStyle,h.tickMarksDashStyle]),width:n._get([e.lineWidth,1]),size:n._get([e.size,4]),offsets:[]};var f=h.title||{};var d={visible:n._get([f.visible,true]),text:n._get([h.description,f.text]),style:n._get([h.descriptionClass,f["class"],n.toThemeProperty("jqx-chart-axis-description",null)]),halign:n._get([h.horizontalDescriptionAlignment,f.horizontalAlignment,"center"]),valign:n._get([h.verticalDescriptionAlignment,f.verticalAlignment,"center"]),angle:0,rotationPoint:n._get([f.rotationPoint,"centercenter"]),offset:n._get([f.offset,{x:0,y:0}])};var k=h.line||{};var c={visible:n._get([k.visible,true]),color:n._get([k.color,p.color,n._defaultLineColor]),dashStyle:n._get([k.dashStyle,p.dashStyle,""]),width:n._get([k.lineWidth,1])};var l=h.padding||{};l={left:l.left||0,right:l.right||0,top:l.top||0,bottom:l.bottom||0};var i=this._getAxisLabelsSettings(h);var o={visible:this._get([h.visible,h.showValueAxis,h.showXAxis,h.showCategoryAxis,true]),customDraw:this._get([h.customDraw,false]),gridLines:p,tickMarks:j,line:c,title:d,labels:i,padding:l,toolTipFormatFunction:this._get([h.toolTipFormatFunction,h.formatFunction,i.formatFunction]),toolTipFormatSettings:this._get([h.toolTipFormatSettings,h.formatSettings,i.formatSettings])};return o},_getAxisLabelsSettings:function(e){var c=this;var f=e.labels||{};var d={visible:c._get([e.showLabels,f.visible,true]),unitInterval:c._get([f.unitInterval,f.interval,e.labelsInterval]),step:c._get([f.step,e.labelsStep]),angle:c._get([e.textRotationAngle,f.angle,0]),style:c._get([e["class"],f["class"],c.toThemeProperty("jqx-chart-axis-text",null)]),halign:c._get([e.horizontalTextAlignment,f.horizontalAlignment,"center"]),valign:c._get([e.verticalTextAlignment,f.verticalAlignment,"center"]),textRotationPoint:c._get([e.textRotationPoint,f.rotationPoint,"auto"]),textOffset:c._get([e.textOffset,f.offset,{x:0,y:0}]),autoRotate:c._get([e.labelsAutoRotate,f.autoRotate,false]),formatSettings:c._get([e.formatSettings,f.formatSettings,undefined]),formatFunction:c._get([e.formatFunction,f.formatFunction,undefined])};return d},_getLabelsSettings:function(q,m,j,v){var k=this.seriesGroups[q];var u=k.series[m];var n=isNaN(j)?undefined:this._getDataValue(j,u.dataField,q);var l=v||["Visible","Offset","Angle","HorizontalAlignment","VerticalAlignment","Class","BackgroundColor","BorderColor","BorderOpacity","Padding","Opacity","BackgroundOpacity","LinesAngles","LinesEnabled","AutoRotate","Radius"];var t={};for(var h=0;h<l.length;h++){var o=l[h];var d="labels"+o;var c="label"+o;var p=o.substring(0,1).toLowerCase()+o.substring(1);var e=undefined;if(k.labels&&typeof(k.labels)=="object"){e=k.labels[p]}if(u.labels&&typeof(u.labels)=="object"&&undefined!=u.labels[p]){e=u.labels[p]}e=this._get([u[d],u[c],e,k[d],k[c]]);if(a.isFunction(e)){t[p]=e(n,j,u,k)}else{t[p]=e}}t["class"]=t["class"]||this.toThemeProperty("jqx-chart-label-text",null);t.visible=this._get([t.visible,u.showLabels,k.showLabels,u.labels!=undefined?true:undefined,k.labels!=undefined?true:undefined]);var f=t.padding||1;t.padding={left:this._get([f.left,isNaN(f)?1:f]),right:this._get([f.right,isNaN(f)?1:f]),top:this._get([f.top,isNaN(f)?1:f]),bottom:this._get([f.bottom,isNaN(f)?1:f])};return t},_showLabel:function(M,H,i,c,z,k,f,m,d,I,E){var o=this.seriesGroups[M];var u=o.series[H];var F={width:0,height:0},t;if(isNaN(i)){return}var L=this._getLabelsSettings(M,H,i);if(!L.visible){return f?F:undefined}if(c.width<0||c.height<0){return f?F:undefined}var j=L.angle;if(!isNaN(I)){j=I}var l=L.offset||{};var J={x:l.x,y:l.y};if(isNaN(J.x)){J.x=0}if(isNaN(J.y)){J.y=0}z=z||L.horizontalAlignment||"center";k=k||L.verticalAlignment||"center";var B=this._getFormattedValue(M,H,i,undefined,undefined,true);var v=c.width;var K=c.height;if(m==true&&z!="center"){z=z=="right"?"left":"right"}if(d==true&&k!="center"&&k!="middle"){k=k=="top"?"bottom":"top";J.y*=-1}F=this.renderer.measureText(B,j,{"class":L["class"]});if(f){return F}var s=0,p=0;if(v>0){if(z==""||z=="center"){s+=(v-F.width)/2}else{if(z=="right"){s+=(v-F.width)}}}if(K>0){if(k==""||k=="center"){p+=(K-F.height)/2}else{if(k=="bottom"){p+=(K-F.height)}}}s+=c.x+J.x;p+=c.y+J.y;var q=this._plotRect;if(s<=q.x){s=q.x+2}if(p<=q.y){p=q.y+2}var n={width:Math.max(F.width,1),height:Math.max(F.height,1)};if(p+n.height>=q.y+q.height){p=q.y+q.height-(t?(n.height+t.height)/2:n.height)-2}if(s+n.width>=q.x+q.width){s=q.x+q.width-n.width-2}var e;var D=L.backgroundColor;var G=L.borderColor;var C=L.padding;if(D||G){e=this.renderer.beginGroup();var c=this.renderer.rect(s-C.left,p-C.top,F.width+C.left+C.right,F.height+C.bottom+C.bottom,{fill:D||"transparent","fill-opacity":L.backgroundOpacity||1,stroke:G||"transparent","stroke-opacity":L.borderOpacity,"stroke-width":1})}var A=this.renderer.text(B,s,p,F.width,F.height,j,{"class":L["class"],opacity:L.opacity||1},false,"center","center");if(E){E.x=s-C.left;E.y=p-C.top;E.width=F.width+C.left+C.right;E.height=F.height+C.bottom+C.bottom}if(this._isVML){this.renderer.removeElement(A);this.renderer.getContainer()[0].appendChild(A)}if(e){this.renderer.endGroup()}return e||A},_getAnimProps:function(k,h){var f=this.seriesGroups[k];var d=!isNaN(h)?f.series[h]:undefined;var c=this.enableAnimations==true;if(f.enableAnimations){c=f.enableAnimations==true}if(d&&d.enableAnimations){c=d.enableAnimations==true}var j=this.animationDuration;if(isNaN(j)){j=1000}var e=f.animationDuration;if(!isNaN(e)){j=e}if(d){var i=d.animationDuration;if(!isNaN(i)){j=i}}if(j>5000){j=1000}return{enabled:c,duration:j}},_isColorTransition:function(h,e,f,i){if(i-1<f.xoffsets.first){return false}var c=this._getColors(h,e,i,this._getGroupGradientType(h));var d=this._getColors(h,e,i-1,this._getGroupGradientType(h));return(c.fillColor!=d.fillColor)},_renderLineSeries:function(m,T){var K=this.seriesGroups[m];if(!K.series||K.series.length==0){return}var v=K.type.indexOf("area")!=-1;var N=K.type.indexOf("stacked")!=-1;var f=N&&K.type.indexOf("100")!=-1;var ah=K.type.indexOf("spline")!=-1;var w=K.type.indexOf("step")!=-1;var R=K.type.indexOf("range")!=-1;var ai=K.polar==true||K.spider==true;if(ai){w=false}if(w&&ah){return}var D=this._getDataLen(m);var af=T.width/D;var am=K.orientation=="horizontal";var F=this._getXAxis(m).flip==true;var C=T;if(am){C={x:T.y,y:T.x,width:T.height,height:T.width}}var G=this._calcGroupOffsets(m,C);if(!G||G.xoffsets.length==0){return}if(!this._linesRenderInfo){this._linesRenderInfo={}}this._linesRenderInfo[m]={};for(var p=K.series.length-1;p>=0;p--){var j=this._getSerieSettings(m,p);var ak={groupIndex:m,rect:C,serieIndex:p,swapXY:am,isArea:v,isSpline:ah,isRange:R,isPolar:ai,settings:j,segments:[],pointsLength:0};var l=this._isSerieVisible(m,p);if(!l){this._linesRenderInfo[m][p]=ak;continue}var M=K.series[p];if(M.customDraw){continue}var B=a.isFunction(M.colorFunction);var X=G.xoffsets.first;var J=X;var Q=this._getColors(m,p,NaN,this._getGroupGradientType(m));var ae=false;var z;do{var Z=[];var W=[];var u=[];var S=-1;var s=0,q=0;var U=NaN;var H=NaN;var al=NaN;if(G.xoffsets.length<1){continue}var V=this._getAnimProps(m,p);var O=V.enabled&&!this._isToggleRefresh&&G.xoffsets.length<10000&&this._isVML!=true?V.duration:0;var A=X;z=false;var e=this._getColors(m,p,X,this._getGroupGradientType(m));for(var ag=X;ag<=G.xoffsets.last;ag++){X=ag;var aa=G.xoffsets.data[ag];var Y=G.xoffsets.xvalues[ag];if(isNaN(aa)){continue}aa=Math.max(aa,1);s=aa;q=G.offsets[p][ag].to;var ad=G.offsets[p][ag].from;if(isNaN(q)||isNaN(ad)){if(M.emptyPointsDisplay=="connect"){continue}else{if(M.emptyPointsDisplay=="zero"){if(isNaN(q)){q=G.baseOffset}if(isNaN(ad)){ad=G.baseOffset}}else{z=true;break}}}if(B&&this._isColorTransition(m,p,G,X)){if(Z.length>1){X--;break}}var d=this._elementRenderInfo;if(d&&d.length>m&&d[m].series.length>p){var h=d[m].series[p][Y];var al=a.jqx._ptrnd(h?h.to:undefined);var L=a.jqx._ptrnd(C.x+(h?h.xoffset:undefined));u.push(am?{y:L,x:al,index:ag}:{x:L,y:al,index:ag})}J=ag;if(j.stroke<2){if(q-C.y<=1){q=C.y+1}if(ad-C.y<=1){ad=C.y+1}if(C.y+C.height-q<=1){q=C.y+C.height-1}if(C.y+C.height-q<=1){ad=C.y+C.height-1}}if(!v&&f){if(q<=C.y){q=C.y+1}if(q>=C.y+C.height){q=C.y+C.height-1}if(ad<=C.y){ad=C.y+1}if(ad>=C.y+C.height){ad=C.y+C.height-1}}aa=Math.max(aa,1);s=aa+C.x;if(K.skipOverlappingPoints==true&&!isNaN(U)&&Math.abs(U-s)<=1){continue}if(w&&!isNaN(U)&&!isNaN(H)){if(H!=q){Z.push(am?{y:s,x:a.jqx._ptrnd(H)}:{x:s,y:a.jqx._ptrnd(H)})}}Z.push(am?{y:s,x:a.jqx._ptrnd(q),index:ag}:{x:s,y:a.jqx._ptrnd(q),index:ag});W.push(am?{y:s,x:a.jqx._ptrnd(ad),index:ag}:{x:s,y:a.jqx._ptrnd(ad),index:ag});U=s;H=q;if(isNaN(al)){al=q}}if(Z.length==0){X++;continue}var I=Z[Z.length-1].index;if(B){Q=this._getColors(m,p,I,this._getGroupGradientType(m))}var n=C.x+G.xoffsets.data[A];var ac=C.x+G.xoffsets.data[J];if(v&&K.alignEndPointsWithIntervals==true){var E=F?-1:1;if(n>C.x){n=C.x}if(ac<C.x+C.width){ac=C.x+C.width}if(F){var ab=n;n=ac;ac=ab}}ac=a.jqx._ptrnd(ac);n=a.jqx._ptrnd(n);var o=G.baseOffset;al=a.jqx._ptrnd(al);var k=a.jqx._ptrnd(q)||o;if(R){Z=Z.concat(W.reverse())}ak.pointsLength+=Z.length;var c={lastItemIndex:I,colorSettings:Q,pointsArray:Z,pointsStart:u,left:n,right:ac,pyStart:al,pyEnd:k,yBase:o,labelElements:[],symbolElements:[]};ak.segments.push(c)}while(X<G.xoffsets.length-1||z);this._linesRenderInfo[m][p]=ak}var P=this._linesRenderInfo[m];var aj=[];for(var ag in P){aj.push(P[ag])}aj=aj.sort(function(an,i){return an.serieIndex-i.serieIndex});if(v&&N){aj.reverse()}for(var ag=0;ag<aj.length;ag++){var ak=aj[ag];this._animateLine(ak,O==0?1:0);var t=this;this._enqueueAnimation("series",undefined,undefined,O,function(an,i,ao){t._animateLine(i,ao)},ak)}},_animateLine:function(B,c){var F=B.settings;var h=B.groupIndex;var j=B.serieIndex;var l=this.seriesGroups[h];var v=l.series[j];var A=this._getSymbol(h,j);var s=this._getLabelsSettings(h,j,NaN,["Visible"]).visible;var q=true;if(B.isPolar){if(!isNaN(l.endAngle)&&Math.round(Math.abs((isNaN(l.startAngle)?0:l.startAngle)-l.endAngle))!=360){q=false}}var t=0;for(var e=0;e<B.segments.length;e++){var z=B.segments[e];var C=this._calculateLine(h,B.pointsLength,t,z.pointsArray,z.pointsStart,z.yBase,c,B.isArea,B.swapXY);t+=z.pointsArray.length;if(C==""){continue}var u=C.split(" ");var D=u.length;var k=C;if(k!=""){k=this._buildLineCmd(C,B.isRange,z.left,z.right,z.pyStart,z.pyEnd,z.yBase,B.isArea,B.isPolar,q,B.isSpline,B.swapXY)}else{k="M 0 0"}var n=z.colorSettings;if(!z.pathElement){z.pathElement=this.renderer.path(k,{"stroke-width":F.stroke,stroke:n.lineColor,"stroke-opacity":F.opacity,"fill-opacity":F.opacity,"stroke-dasharray":F.dashStyle,fill:B.isArea?n.fillColor:"none"});this._installHandlers(z.pathElement,"path",h,j,z.lastItemIndex)}else{this.renderer.attr(z.pathElement,{d:k})}if(z.labelElements){for(var E=0;E<z.labelElements.length;E++){this.renderer.removeElement(z.labelElements[E])}z.labelElements=[]}if(z.symbolElements){for(var E=0;E<z.symbolElements.length;E++){this.renderer.removeElement(z.symbolElements[E])}z.symbolElements=[]}if(z.pointsArray.length==u.length){if(A!="none"||s){var H=v.symbolSize;var G=B.rect;for(var E=0;E<u.length;E++){var w=u[E].split(",");w={x:parseFloat(w[0]),y:parseFloat(w[1])};if(w.x<G.x||w.x>G.x+G.width||w.y<G.y||w.y>G.y+G.height){continue}if(A!="none"){var p=this._getColors(h,j,z.pointsArray[E].index,this._getGroupGradientType(h));var f=this._drawSymbol(A,w.x,w.y,p.fillColorSymbol,F.opacity,p.lineColorSymbol,F.opacity,1,undefined,H);z.symbolElements.push(f)}if(s){var m=(E>0?u[E-1]:u[E]).split(",");m={x:parseFloat(m[0]),y:parseFloat(m[1])};var o=(E<u.length-1?u[E+1]:u[E]).split(",");o={x:parseFloat(o[0]),y:parseFloat(o[1])};w=this._adjustLineLabelPosition(h,j,z.pointsArray[E].index,w,m,o);if(w){var d=this._showLabel(h,j,z.pointsArray[E].index,{x:w.x,y:w.y,width:0,height:0});z.labelElements.push(d)}}}}}if(c==1&&A!="none"){for(var E=0;E<z.symbolElements.length;E++){if(isNaN(z.pointsArray[E].index)){continue}this._installHandlers(z.symbolElements[E],"symbol",h,j,z.pointsArray[E].index)}}}},_adjustLineLabelPosition:function(k,i,e,j,h,f){var c=this._showLabel(k,i,e,{width:0,height:0},"","",true);if(!c){return}var d={x:j.x-c.width/2,y:0};d.y=j.y-1.5*c.height;return d},_calculateLine:function(j,z,q,p,o,h,f,B,d){var A=this.seriesGroups[j];var n;if(A.polar==true||A.spider==true){n=this._getPolarAxisCoords(j,this._plotRect)}var u="";var v=p.length;if(!B&&o.length==0){var t=z*f;v=t-q}var k=NaN;for(var w=0;w<v+1&&w<p.length;w++){if(w>0){u+=" "}var l=p[w].y;var m=p[w].x;var c=!B?l:h;var e=m;if(o&&o.length>w){c=o[w].y;e=o[w].x;if(isNaN(c)||isNaN(e)){c=l;e=m}}k=e;if(v<=p.length&&w>0&&w==v){e=p[w-1].x;c=p[w-1].y}if(d){m=a.jqx._ptrnd((m-c)*(B?f:1)+c);l=a.jqx._ptrnd(l)}else{m=a.jqx._ptrnd((m-e)*f+e);l=a.jqx._ptrnd((l-c)*f+c)}if(n){var s=this._toPolarCoord(n,this._plotRect,m,l);m=s.x;l=s.y}u+=m+","+l}return u},_buildLineCmd:function(m,q,i,v,f,o,e,u,d,l,h,c){var s=m;var n=c?e+","+i:i+","+e;var j=c?e+","+v:v+","+e;if(u&&!d&&!q){s=n+" "+m+" "+j}if(h){s=this._getBezierPoints(s)}var p=s.split(" ");if(p.length==0){return""}if(p.length==1){var t=p[0].split(",");return"M "+p[0]+" L"+(parseFloat(t[0])+1)+","+(parseFloat(t[1])+1)}var k=p[0].replace("M","");if(u&&!d){if(!q){s="M "+n+" L "+k+" "+s}else{s="M "+k+" L "+k+(h?"":(" L "+k+" "))+s}}else{if(!h){s="M "+k+" L "+k+" "+s}}if((d&&l)||q){s+=" Z"}return s},_getSerieSettings:function(j,c){var i=this.seriesGroups[j];var h=i.type.indexOf("area")!=-1;var f=i.type.indexOf("line")!=-1;var d=i.series[c];var l=d.dashStyle||i.dashStyle||"";var e=d.opacity||i.opacity;if(isNaN(e)||e<0||e>1){e=1}var k=d.lineWidth;if(isNaN(k)&&k!="auto"){k=i.lineWidth}if(k=="auto"||isNaN(k)||k<0||k>15){if(h){k=2}else{if(f){k=3}else{k=1}}}return{stroke:k,opacity:e,dashStyle:l}},_getColors:function(z,s,e,f,c){var m=this.seriesGroups[z];var q=m.series[s];var d=this._get([q.useGradientColors,m.useGradientColors,m.useGradient,true]);var n=this._getSeriesColors(z,s,e);if(!n.fillColor){n.fillColor=u;n.fillColorSelected=a.jqx.adjustColor(u,1.1);n.fillColorAlt=a.jqx.adjustColor(u,4);n.fillColorAltSelected=a.jqx.adjustColor(u,3);n.lineColor=n.symbolColor=a.jqx.adjustColor(u,0.9);n.lineColorSelected=n.symbolColorSelected=a.jqx.adjustColor(u,0.9)}var k=[[0,1.4],[100,1]];var h=[[0,1],[25,1.1],[50,1.4],[100,1]];var p=[[0,1.3],[90,1.2],[100,1]];var l=NaN;if(!isNaN(c)){l=c==2?k:h}if(d){var t={};for(var v in n){t[v]=n[v]}n=t;if(f=="verticalLinearGradient"||f=="horizontalLinearGradient"){var j=f=="verticalLinearGradient"?l||k:l||h;var o=["fillColor","fillColorSelected","fillColorAlt","fillColorAltSelected"];for(var A in o){var u=n[o[A]];if(u){n[o[A]]=this.renderer._toLinearGradient(u,f=="verticalLinearGradient",j)}}}else{if(f=="radialGradient"){var w;var l=k;if((m.type=="pie"||m.type=="donut"||m.polar)&&e!=undefined&&this._renderData[z]&&this._renderData[z].offsets[s]){w=this._renderData[z].offsets[s][e];l=p}n.fillColor=this.renderer._toRadialGradient(n.fillColor,l,w);n.fillColorSelected=this.renderer._toRadialGradient(n.fillColorSelected,l,w)}}}return n},_installHandlers:function(d,h,j,i,e){if(!this.enableEvents){return false}var k=this;var f=this.seriesGroups[j];var l=this.seriesGroups[j].series[i];var c=f.type.indexOf("line")!=-1||f.type.indexOf("area")!=-1;if(!c){this.renderer.addHandler(d,"mousemove",function(o){var n=k._selected;if(n&&n.isLineType&&n.linesUnselectMode=="click"&&!(n.group==j&&n.series==i)){return}var m=o.pageX||o.clientX||o.screenX;var q=o.pageY||o.clientY||o.screenY;var p=k.host.offset();m-=p.left;q-=p.top;if(k._mouseX==m&&k._mouseY==q){return}if(k._ttEl){if(k._ttEl.gidx==j&&k._ttEl.sidx==i&&k._ttEl.iidx==e){return}}k._startTooltipTimer(j,i,e)});this.renderer.addHandler(d,"mouseout",function(n){return;if(!isNaN(k._lastClickTs)&&(new Date()).valueOf()-k._lastClickTs<100){return}if(e!=undefined){k._cancelTooltipTimer()}if(c){return}var m=k._selected;if(m&&m.isLineType&&m.linesUnselectMode=="click"&&!(m.group==j&&m.series==i)){return}k._unselect()})}this.renderer.addHandler(d,"mouseover",function(n){var m=k._selected;if(m&&m.isLineType&&m.linesUnselectMode=="click"&&!(m.group==j&&m.series==i)){return}k._select(d,h,j,i,e,e)});this.renderer.addHandler(d,"click",function(m){clearTimeout(k._hostClickTimer);k._lastClickTs=(new Date()).valueOf();if(c&&(h!="symbol"&&h!="pointMarker")){return}if(k._isColumnType(f.type)){k._unselect()}if(isNaN(e)){return}m.stopImmediatePropagation();k._raiseItemEvent("click",f,l,e)})},_getHorizontalOffset:function(C,u,l,k){var d=this._plotRect;var j=this._getDataLen(C);if(j==0){return{index:undefined,value:l}}var q=this._calcGroupOffsets(C,this._plotRect);if(q.xoffsets.length==0){return{index:undefined,value:undefined}}var o=l;var n=k;var A=this.seriesGroups[C];var m;if(A.polar||A.spider){m=this._getPolarAxisCoords(C,d)}var f=this._getXAxis(C).flip==true;var c,p,z,h;for(var v=q.xoffsets.first;v<=q.xoffsets.last;v++){var w=q.xoffsets.data[v];var e=q.offsets[u][v].to;var s=0;if(m){var t=this._toPolarCoord(m,d,w+d.x,e);w=t.x;e=t.y;s=a.jqx._ptdist(o,n,w,e)}else{if(A.orientation=="horizontal"){w+=d.y;var B=e;e=w;w=B;s=a.jqx._ptdist(o,n,w,e)}else{w+=d.x;s=Math.abs(o-w)}}if(isNaN(c)||c>s){c=s;p=v;z=w;h=e}}return{index:p,value:q.xoffsets.data[p],polarAxisCoords:m,x:z,y:h}},onmousemove:function(m,l){if(this._mouseX==m&&this._mouseY==l){return}this._mouseX=m;this._mouseY=l;if(!this._selected){return}var D=this._selected.group;var u=this._selected.series;var A=this.seriesGroups[D];var p=A.series[u];var c=this._plotRect;if(this.renderer){c=this.renderer.getRect();c.x+=5;c.y+=5;c.width-=10;c.height-=10}if(m<c.x||m>c.x+c.width||l<c.y||l>c.y+c.height){this._hideToolTip();this._unselect();return}var f=A.orientation=="horizontal";var c=this._plotRect;if(A.type.indexOf("line")!=-1||A.type.indexOf("area")!=-1){var j=this._getHorizontalOffset(D,this._selected.series,m,l);var z=j.index;if(z==undefined){return}if(this._selected.item!=z){var t=this._linesRenderInfo[D][u].segments;var v=0;while(z>t[v].lastItemIndex){v++;if(v>=t.length){return}}var d=t[v].pathElement;var E=t[v].lastItemIndex;this._unselect(false);this._select(d,"path",D,u,z,E)}var o=this._getSymbol(this._selected.group,this._selected.series);if(o=="none"){o="circle"}var q=this._calcGroupOffsets(D,c);var e=q.offsets[this._selected.series][z].to;var w=e;if(A.type.indexOf("range")!=-1){w=q.offsets[this._selected.series][z].from}var n=f?m:l;if(!isNaN(w)&&Math.abs(n-w)<Math.abs(n-e)){l=w}else{l=e}if(isNaN(l)){return}m=j.value;if(f){var B=m;m=l;l=B+c.y}else{m+=c.x}if(j.polarAxisCoords){m=j.x;l=j.y}l=a.jqx._ptrnd(l);m=a.jqx._ptrnd(m);if(this._pointMarker&&this._pointMarker.element){this.renderer.removeElement(this._pointMarker.element);this._pointMarker.element=undefined}if(isNaN(m)||isNaN(l)){return}var k=this._getSeriesColors(D,u,z);var h=p.opacity;if(isNaN(h)||h<0||h>1){h=A.opacity}if(isNaN(h)||h<0||h>1){h=1}var C=p.symbolSizeSelected;if(isNaN(C)){C=p.symbolSize}if(isNaN(C)||C>50||C<0){C=A.symbolSize}if(isNaN(C)||C>50||C<0){C=8}if(this.showToolTips||this.enableCrosshairs){this._pointMarker={type:o,x:m,y:l,gidx:D,sidx:u,iidx:z};this._pointMarker.element=this._drawSymbol(o,m,l,k.fillColorSymbolSelected,h,k.lineColorSymbolSelected,h,1,undefined,C);this._installHandlers(this._pointMarker.element,"pointMarker",D,u,z)}this._startTooltipTimer(D,this._selected.series,z)}},_drawSymbol:function(k,n,l,d,o,m,h,i,c,q){var f;var j=q||6;var e=j/2;switch(k){case"none":return undefined;case"circle":f=this.renderer.circle(n,l,j/2);break;case"square":j=j-1;e=j/2;f=this.renderer.rect(n-e,l-e,j,j);break;case"diamond":var p="M "+(n-e)+","+(l)+" L"+(n)+","+(l-e)+" L"+(n+e)+","+(l)+" L"+(n)+","+(l+e)+" Z";f=this.renderer.path(p);break;case"triangle_up":case"triangle":var p="M "+(n-e)+","+(l+e)+" L "+(n+e)+","+(l+e)+" L "+(n)+","+(l-e)+" Z";f=this.renderer.path(p);break;case"triangle_down":var p="M "+(n-e)+","+(l-e)+" L "+(n)+","+(l+e)+" L "+(n+e)+","+(l-e)+" Z";f=this.renderer.path(p);break;case"triangle_left":var p="M "+(n-e)+","+(l)+" L "+(n+e)+","+(l+e)+" L "+(n+e)+","+(l-e)+" Z";f=this.renderer.path(p);break;case"triangle_right":var p="M "+(n-e)+","+(l-e)+" L "+(n-e)+","+(l+e)+" L "+(n+e)+","+(l)+" Z";f=this.renderer.path(p);break;default:f=this.renderer.circle(n,l,j)}this.renderer.attr(f,{fill:d,"fill-opacity":o,stroke:m,"stroke-width":i,"stroke-opacity":h,"stroke-dasharray":c||""});if(k!="circle"){this.renderer.attr(f,{r:j/2});if(k!="square"){this.renderer.attr(f,{x:n,y:l})}}return f},_getSymbol:function(h,c){var d=["circle","square","diamond","triangle_up","triangle_down","triangle_left","triangle_right"];var f=this.seriesGroups[h];var e=f.series[c];var i;if(e.symbolType!=undefined){i=e.symbolType}if(i==undefined){i=f.symbolType}if(i=="default"){return d[c%d.length]}else{if(i!=undefined){return i}}return"none"},_startTooltipTimer:function(l,k,e,j,i,c,h){this._cancelTooltipTimer();var m=this;var f=m.seriesGroups[l];var d=this.toolTipShowDelay||this.toolTipDelay;if(isNaN(d)||d>10000||d<0){d=500}if(this._ttEl||(true==this.enableCrosshairs&&false==this.showToolTips)){d=0}if(!isNaN(c)){d=c}clearTimeout(this._tttimerHide);if(isNaN(j)){j=m._mouseX}if(isNaN(i)){i=m._mouseY-3}if(d==0){m._showToolTip(j,i,l,k,e)}this._tttimer=setTimeout(function(){if(d!=0){m._showToolTip(j,i,l,k,e)}var n=m.toolTipHideDelay;if(!isNaN(h)){n=h}if(isNaN(n)){n=4000}m._tttimerHide=setTimeout(function(){m._hideToolTip();m._unselect()},n)},d)},_cancelTooltipTimer:function(){clearTimeout(this._tttimer)},_getGroupGradientType:function(d){var c=this.seriesGroups[d];if(c.type.indexOf("area")!=-1){return c.orientation=="horizontal"?"horizontalLinearGradient":"verticalLinearGradient"}else{if(this._isColumnType(c.type)||c.type.indexOf("candle")!=-1){if(c.polar){return"radialGradient"}return c.orientation=="horizontal"?"verticalLinearGradient":"horizontalLinearGradient"}else{if(c.type.indexOf("scatter")!=-1||c.type.indexOf("bubble")!=-1||this._isPieGroup(d)){return"radialGradient"}}}return undefined},_select:function(i,m,p,o,j,n){if(this._selected){if((this._selected.item!=j||this._selected.series!=o||this._selected.group!=p)){this._unselect()}else{return}}var l=this.seriesGroups[p];var q=l.series[o];if(l.enableSelection==false||q.enableSelection==false){return}var h=l.type.indexOf("line")!=-1&&l.type.indexOf("area")==-1;this._selected={element:i,type:m,group:p,series:o,item:j,iidxBase:n,isLineType:h,linesUnselectMode:q.linesUnselectMode||l.linesUnselectMode};var c=this._getColors(p,o,n||j,this._getGroupGradientType(p));var d=c.fillColorSelected;if(h){d="none"}var f=this._getSerieSettings(p,o);var e=(m=="symbol")?c.lineColorSymbolSelected:c.lineColorSelected;d=(m=="symbol")?c.fillColorSymbolSelected:d;var k=(m=="symbol")?1:f.stroke;if(this.renderer.getAttr(i,"fill")==c.fillColorAlt){d=c.fillColorAltSelected}this.renderer.attr(i,{stroke:e,fill:d,"stroke-width":k});if(l.type.indexOf("pie")!=-1||l.type.indexOf("donut")!=-1){this._applyPieSelect()}this._raiseItemEvent("mouseover",l,q,j)},_applyPieSelect:function(){var d=this;d._createAnimationGroup("animPieSlice");var f=this._selected;if(!f){return}var h=this.getItemCoord(f.group,f.series,f.item);if(!h){return}var e=this._getRenderInfo(f.group,f.series,f.item);var c={element:e,coord:h};this._enqueueAnimation("animPieSlice",undefined,undefined,300,function(k,i,l){var n=i.coord;var j=n.selectedRadiusChange*l;var m=d.renderer.pieSlicePath(n.center.x,n.center.y,n.innerRadius==0?0:(n.innerRadius+j),n.outerRadius+j,n.fromAngle,n.toAngle,n.centerOffset);d.renderer.attr(i.element.element,{d:m});d._showPieLabel(f.group,f.series,f.item,undefined,j)},c);d._startAnimation("animPieSlice")},_applyPieUnselect:function(){this._stopAnimations();var c=this._selected;if(!c){return}var e=this.getItemCoord(c.group,c.series,c.item);if(!e||!e.center){return}var d=this.renderer.pieSlicePath(e.center.x,e.center.y,e.innerRadius,e.outerRadius,e.fromAngle,e.toAngle,e.centerOffset);this.renderer.attr(c.element,{d:d});this._showPieLabel(c.group,c.series,c.item,undefined,0)},_unselect:function(){var p=this;if(p._selected){var o=p._selected.group;var n=p._selected.series;var h=p._selected.item;var l=p._selected.iidxBase;var k=p._selected.type;var j=p.seriesGroups[o];var q=j.series[n];var f=j.type.indexOf("line")!=-1&&j.type.indexOf("area")==-1;var c=p._getColors(o,n,l||h,p._getGroupGradientType(o));var d=c.fillColor;if(f){d="none"}var e=p._getSerieSettings(o,n);var m=(k=="symbol")?c.lineColorSymbol:c.lineColor;d=(k=="symbol")?c.fillColorSymbol:d;if(this.renderer.getAttr(p._selected.element,"fill")==c.fillColorAltSelected){d=c.fillColorAlt}var i=(k=="symbol")?1:e.stroke;p.renderer.attr(p._selected.element,{stroke:m,fill:d,"stroke-width":i});if(j.type.indexOf("pie")!=-1||j.type.indexOf("donut")!=-1){this._applyPieUnselect()}p._selected=undefined;if(!isNaN(h)){p._raiseItemEvent("mouseout",j,q,h)}}if(p._pointMarker){if(p._pointMarker.element){p.renderer.removeElement(p._pointMarker.element);p._pointMarker.element=undefined}p._pointMarker=undefined;p._hideCrosshairs()}},_raiseItemEvent:function(h,i,f,d){var e=f[h]||i[h];var j=0;for(;j<this.seriesGroups.length;j++){if(this.seriesGroups[j]==i){break}}if(j==this.seriesGroups.length){return}var c={event:h,seriesGroup:i,serie:f,elementIndex:d,elementValue:this._getDataValue(d,f.dataField,j)};if(e&&a.isFunction(e)){e(c)}this._raiseEvent(h,c)},_raiseEvent:function(e,d){var f=new a.Event(e);f.owner=this;d.event=e;f.args=d;var c=this.host.trigger(f);return c},_calcInterval:function(e,l,k){var o=Math.abs(l-e);var m=o/k;var h=[1,2,3,4,5,10,15,20,25,50,100];var c=[0.5,0.25,0.125,0.1];var d=0.1;var j=h;if(m<1){j=c;d=10}var n=0;do{n=0;if(m>=1){d*=10}else{d/=10}for(var f=1;f<j.length;f++){if(Math.abs(j[n]*d-m)>Math.abs(j[f]*d-m)){n=f}else{break}}}while(n==j.length-1);return j[n]*d},_renderDataClone:function(){if(!this._renderData||this._isToggleRefresh){return}var e=this._elementRenderInfo=[];if(this._isSelectorRefresh){return}for(var k=0;k<this._renderData.length;k++){var d=this._getXAxis(k).dataField;while(e.length<=k){e.push({})}var c=e[k];var h=this._renderData[k];if(!h.offsets){continue}if(h.valueAxis){c.valueAxis={itemOffsets:{}};for(var l in h.valueAxis.itemOffsets){c.valueAxis.itemOffsets[l]=h.valueAxis.itemOffsets[l]}}if(h.xAxis){c.xAxis={itemOffsets:{}};for(var l in h.xAxis.itemOffsets){c.xAxis.itemOffsets[l]=h.xAxis.itemOffsets[l]}}c.series=[];var j=c.series;var n=this._isPieGroup(k);for(var o=0;o<h.offsets.length;o++){j.push({});for(var f=0;f<h.offsets[o].length;f++){if(!n){j[o][h.xoffsets.xvalues[f]]={value:h.offsets[o][f].value,valueRadius:h.offsets[o][f].valueRadius,xoffset:h.xoffsets.data[f],from:h.offsets[o][f].from,to:h.offsets[o][f].to}}else{var m=h.offsets[o][f];j[o][m.displayValue]={value:m.value,x:m.x,y:m.y,fromAngle:m.fromAngle,toAngle:m.toAngle}}}}}},getPolarDataPointOffset:function(e,d,h){var f=this._renderData[h];if(!f){return{x:NaN,y:NaN}}var j=this.getValueAxisDataPointOffset(d,h);var c=this.getXAxisDataPointOffset(e,h);var i=this._toPolarCoord(f.polarCoords,f.xAxis.rect,c,j);return{x:i.x,y:i.y}},_getDataPointOffsetDiff:function(l,k,c,h,i,e,j){var f=this._getDataPointOffset(l,c,h,i,e,j);var d=this._getDataPointOffset(k,c,h,i,e,j);return Math.abs(f-d)},_getXAxisRenderData:function(e){if(e>=this._renderData.length){return}var f=this.seriesGroups[e];var d=this._renderData[e].xAxis;if(!d){return}if(f.xAxis==undefined){for(var c=0;c<=e;c++){if(this.seriesGroups[c].xAxis==undefined){break}}d=this._renderData[c].xAxis}return d},getXAxisDataPointOffset:function(l,n){var m=this.seriesGroups[n];if(isNaN(l)){return NaN}renderData=this._getXAxisRenderData(n);if(!renderData){return NaN}var h=renderData.data.axisStats;var k=h.min.valueOf();var c=h.max.valueOf();var i=c-k;if(i==0){i=1}if(l.valueOf()>c||l.valueOf()<k){return NaN}var d=this._getXAxis(n);var e=m.orientation=="horizontal"?"height":"width";var p=m.orientation=="horizontal"?"y":"x";var j=(l.valueOf()-k)/i;var o=renderData.rect[e]-renderData.data.padding.left-renderData.data.padding.right;if(m.polar||m.spider){var f=this._renderData[n].polarCoords;if(f.isClosedCircle){o=renderData.data.axisSize}}return this._plotRect[p]+renderData.data.padding.left+o*(d.flip?(1-j):j)},getValueAxisDataPointOffset:function(i,j){var l=this._getValueAxis(j);if(!l){return NaN}var k=this._renderData[j];if(!k){return NaN}var h=l.flip==true;var e=k.logBase;var f=k.scale;var c=k.gbase;var d=k.baseOffset;return this._getDataPointOffset(i,c,e,f,d,h)},_getDataPointOffset:function(h,d,e,j,f,c){var i;if(isNaN(h)){h=d}if(!isNaN(e)){i=(a.jqx.log(h,e)-a.jqx.log(d,e))*j}else{i=(h-d)*j}if(this._isVML){i=Math.round(i)}if(c){i=f+i}else{i=f-i}return i},_calcGroupOffsets:function(n,O){var C=this.seriesGroups[n];while(this._renderData.length<n+1){this._renderData.push({})}if(this._renderData[n]!=null&&this._renderData[n].offsets!=undefined){return this._renderData[n]}if(this._isPieGroup(n)){return this._calcPieSeriesGroupOffsets(n,O)}var q=this._getValueAxis(n);if(!q||!C.series||C.series.length==0){return this._renderData[n]}var D=q.flip==true;var R=q.logarithmicScale==true;var Q=q.logarithmicScaleBase||10;var W=[];var I=C.type.indexOf("stacked")!=-1;var e=I&&C.type.indexOf("100")!=-1;var N=C.type.indexOf("range")!=-1;var X=this._isColumnType(C.type);var ac=C.type.indexOf("waterfall")!=-1;var v=this._getDataLen(n);var u=C.baselineValue||q.baselineValue||0;if(e){u=0}var aj=this._stats.seriesGroups[n];if(!aj||!aj.isValid){return}var am=aj.hasStackValueReversal;if(am){u=0}if(ac&&I){if(am){return}else{u=aj.base}}if(u>aj.max){u=aj.max}if(u<aj.min){u=aj.min}var t=(e||R)?aj.maxRange:aj.max-aj.min;var aq=aj.min;var F=aj.max;var P=O.height/(R?aj.intervals:t);var al=0;if(e){if(aq*F<0){t/=2;al=-(t+u)*P}else{al=-u*P}}else{al=-(u-aq)*P}if(D){al=O.y-al}else{al+=O.y+O.height}var ak=[];var ag=[];var V=[];var ao,K;if(R){ao=a.jqx.log(F,Q)-a.jqx.log(u,Q);if(I){ao=aj.intervals;u=e?0:aq}K=aj.intervals-ao;if(!D){al=O.y+ao/aj.intervals*O.height}}al=a.jqx._ptrnd(al);var d=(aq*F<0)?O.height/2:O.height;var o=[];var Z=[];var ar=I&&(X||R);var ap=[];W=new Array(C.series.length);for(var ae=0;ae<C.series.length;ae++){W[ae]=new Array(v)}for(var af=0;af<v;af++){if(!ac&&I){Z=[]}for(var ae=0;ae<C.series.length;ae++){if(!I&&R){o=[]}var G=C.series[ae];var H=G.dataField;var au=G.dataFieldFrom;var S=G.dataFieldTo;var ab=G.radiusDataField||G.sizeDataField;W[ae][af]={};var m=this._isSerieVisible(n,ae);if(C.type.indexOf("candle")!=-1||C.type.indexOf("ohlc")!=-1){var c=["Open","Close","High","Low"];for(var an in c){var s="dataField"+c[an];if(G[s]){W[ae][af][c[an]]=this._getDataPointOffset(this._getDataValueAsNumber(af,G[s],n),u,R?Q:NaN,P,al,D)}}continue}if(I){while(Z.length<=af){Z.push(0)}}var at=NaN;if(N){at=this._getDataValueAsNumber(af,au,n);if(isNaN(at)){at=u}}var M=NaN;if(N){M=this._getDataValueAsNumber(af,S,n)}else{M=this._getDataValueAsNumber(af,H,n)}var l=this._getDataValueAsNumber(af,ab,n);if(I){Z[af]+=m?M:0}if(!m){M=NaN}if(isNaN(M)||(R&&M<=0)){W[ae][af]={from:undefined,to:undefined};continue}var L;if(I){if(ar){L=(M>=u)?ak:ag}else{M=Z[af]}}var ai=P*(M-u);if(N){ai=P*(M-at)}if(I&&ar){if(!ap[af]){ap[af]=true;ai=P*(M-u)}else{ai=P*M}}if(R){while(o.length<=af){o.push({p:{value:0,height:0},n:{value:0,height:0}})}var E=(N||N)?at:u;var ad=M>E?o[af].p:o[af].n;ad.value+=M;if(e){M=ad.value/(aj.psums[af]+aj.nsums[af])*100;ai=(a.jqx.log(M,Q)-aj.minPow)*P}else{ai=a.jqx.log(ad.value,Q)-a.jqx.log(E,Q);ai*=P}ai-=ad.height;ad.height+=ai}var U=al;if(N){var w=0;if(R){w=(a.jqx.log(at,Q)-a.jqx.log(u,Q))*P}else{w=(at-u)*P}U+=D?w:-w}if(I){if(e&&!R){var B=(aj.psums[af]-aj.nsums[af]);if(M>u){ai=(aj.psums[af]/B)*d;if(aj.psums[af]!=0){ai*=M/aj.psums[af]}}else{ai=(aj.nsums[af]/B)*d;if(aj.nsums[af]!=0){ai*=M/aj.nsums[af]}}}if(ar){if(isNaN(L[af])){L[af]=U}U=L[af]}}if(isNaN(V[af])){V[af]=0}var ah=V[af];ai=Math.abs(ai);var Y=ai;if(ai>=1){h_new=this._isVML?Math.round(ai):a.jqx._ptrnd(ai)-1;if(Math.abs(ai-h_new)>0.5){ai=Math.round(ai)}else{ai=h_new}}ah+=ai-Y;if(!I){ah=0}if(Math.abs(ah)>0.5){if(ah>0){ai-=1;ah-=1}else{ai+=1;ah+=1}}V[af]=ah;if(ae==C.series.length-1&&e){var A=0;for(var aa=0;aa<ae;aa++){A+=Math.abs(W[aa][af].to-W[aa][af].from)}A+=ai;if(A<d){if(ai>0.5){ai=a.jqx._ptrnd(ai+d-A)}else{var aa=ae-1;while(aa>=0){var J=Math.abs(W[aa][af].to-W[aa][af].from);if(J>1){if(W[aa][af].from>W[aa][af].to){W[aa][af].from+=d-A}break}aa--}}}}if(D){ai*=-1}var T=M<u;if(N){T=at>M}var p=isNaN(at)?M:{from:at,to:M};if(T){if(ar){L[af]+=ai}W[ae][af]={from:U,to:U+ai,value:p,valueRadius:l}}else{if(ar){L[af]-=ai}W[ae][af]={from:U,to:U-ai,value:p,valueRadius:l}}}}var z=this._renderData[n];z.baseOffset=al;z.gbase=u;z.logBase=R?Q:NaN;z.scale=P;z.offsets=!ac?W:this._applyWaterfall(W,v,n,al,u,R?Q:NaN,P,D,I);z.xoffsets=this._calculateXOffsets(n,O.width);return this._renderData[n]},_isPercent:function(c){return(typeof(c)==="string"&&c.length>0&&c.indexOf("%")==c.length-1)},_calcPieSeriesGroupOffsets:function(f,c){var C=this;var o=this._getDataLen(f);var p=this.seriesGroups[f];var D=this._renderData[f]={};var J=D.offsets=[];for(var F=0;F<p.series.length;F++){var w=p.series[F];var H=this._get([w.minAngle,w.startAngle]);if(isNaN(H)||H<0||H>360){H=0}var P=this._get([w.maxAngle,w.endAngle]);if(isNaN(P)||P<0||P>360){P=360}var h=P-H;var q=w.initialAngle||0;if(q<H){q=H}if(q>P){q=P}var d=w.centerOffset||0;var N=a.jqx.getNum([w.offsetX,p.offsetX,c.width/2]);var M=a.jqx.getNum([w.offsetY,p.offsetY,c.height/2]);var B=Math.min(c.width,c.height)/2;var A=q;var j=w.radius;if(C._isPercent(j)){j=parseFloat(j)/100*B}if(isNaN(j)){j=B*0.4}var n=w.innerRadius;if(C._isPercent(n)){n=parseFloat(n)/100*B}if(isNaN(n)||n>=j){n=0}var e=w.selectedRadiusChange;if(C._isPercent(e)){e=parseFloat(e)/100*(j-n)}if(isNaN(e)){e=0.1*(j-n)}J.push([]);var k=0;var l=0;for(var I=0;I<o;I++){var O=this._getDataValueAsNumber(I,w.dataField,f);if(isNaN(O)){continue}if(!this._isSerieVisible(f,F,I)&&w.hiddenPointsDisplay!=true){continue}if(O>0){k+=O}else{l+=O}}var v=k-l;if(v==0){v=1}for(var I=0;I<o;I++){var O=this._getDataValueAsNumber(I,w.dataField,f);if(isNaN(O)){J[F].push({});continue}var G=w.displayText||w.displayField;var m=this._getDataValue(I,G,f);if(m==undefined){m=I}var L=0;var E=this._isSerieVisible(f,F,I);if(E||w.hiddenPointsDisplay==true){L=Math.abs(O)/v*h}var u=c.x+N;var t=c.y+M;var K=d;if(a.isFunction(d)){K=d({seriesIndex:F,seriesGroupIndex:f,itemIndex:I})}if(isNaN(K)){K=0}var z={key:f+"_"+F+"_"+I,value:O,displayValue:m,x:u,y:t,fromAngle:A,toAngle:A+L,centerOffset:K,innerRadius:n,outerRadius:j,selectedRadiusChange:e,visible:E};J[F].push(z);A+=L}}return D},_isPointSeriesOnly:function(){for(var c=0;c<this.seriesGroups.length;c++){var d=this.seriesGroups[c];if(d.type.indexOf("line")==-1&&d.type.indexOf("area")==-1&&d.type.indexOf("scatter")==-1&&d.type.indexOf("bubble")==-1){return false}}return true},_hasColumnSeries:function(){var e=["column","ohlc","candlestick","waterfall"];for(var d=0;d<this.seriesGroups.length;d++){var f=this.seriesGroups[d];for(var c in e){if(f.type.indexOf(e[c])!=-1){return true}}}return false},_alignValuesWithTicks:function(h){var c=this._isPointSeriesOnly();var d=this.seriesGroups[h];var f=this._getXAxis(h);var e=f.valuesOnTicks==undefined?c:f.valuesOnTicks!=false;if(h==undefined){return e}if(d.valuesOnTicks==undefined){return e}return d.valuesOnTicks},_getYearsDiff:function(d,c){return c.getFullYear()-d.getFullYear()},_getMonthsDiff:function(d,c){return 12*(c.getFullYear()-d.getFullYear())+c.getMonth()-d.getMonth()},_getDateDiff:function(h,f,e,c){var d=0;if(e!="year"&&e!="month"){d=f.valueOf()-h.valueOf()}switch(e){case"year":d=this._getYearsDiff(h,f);break;case"month":d=this._getMonthsDiff(h,f);break;case"day":d/=(24*3600*1000);break;case"hour":d/=(3600*1000);break;case"minute":d/=(60*1000);break;case"second":d/=(1000);break;case"millisecond":break}if(e!="year"&&e!="month"&&c!=false){d=a.jqx._rnd(d,1,true)}return d},_getBestDTUnit:function(m,s,t,e,k){var h="day";var o=s.valueOf()-m.valueOf();if(o<1000){h="second"}else{if(o<3600000){h="minute"}else{if(o<86400000){h="hour"}else{if(o<2592000000){h="day"}else{if(o<31104000000){h="month"}else{h="year"}}}}}var q=[{key:"year",cnt:o/(1000*60*60*24*365)},{key:"month",cnt:o/(1000*60*60*24*30)},{key:"day",cnt:o/(1000*60*60*24)},{key:"hour",cnt:o/(1000*60*60)},{key:"minute",cnt:o/(1000*60)},{key:"second",cnt:o/1000},{key:"millisecond",cnt:o}];var n=-1;for(var l=0;l<q.length;l++){if(q[l].key==h){n=l;break}}var c=-1,p=-1;for(;n<q.length;n++){if(q[n].cnt/100>e){break}var d=this._estAxisInterval(m,s,t,e,q[n].key,k);var f=this._getDTIntCnt(m,s,d,q[n].key);if(c==-1||c<f){c=f;p=n}}h=q[p].key;return h},_getXAxisStats:function(h,o,G){var m=this._getDataLen(h);var c=o.type=="date"||o.type=="time";if(c&&!this._autoDateFormats){if(!this._autoDateFormats){this._autoDateFormats=[]}var q=this._testXAxisDateFormat();if(q){this._autoDateFormats.push(q)}}var p=c?this._castAsDate(o.minValue,o.dateFormat):this._castAsNumber(o.minValue);var t=c?this._castAsDate(o.maxValue,o.dateFormat):this._castAsNumber(o.maxValue);if(this._selectorRange&&this._selectorRange[h]){var j=this._selectorRange[h].min;if(!isNaN(j)){p=c?this._castAsDate(j,o.dateFormat):this._castAsNumber(j)}var k=this._selectorRange[h].max;if(!isNaN(k)){t=c?this._castAsDate(k,o.dateFormat):this._castAsNumber(k)}}var B=p,F=t;var f,s;var d=o.type==undefined||o.type=="auto";var l=(d||o.type=="basic");var C=0,e=0;for(var E=0;E<m&&o.dataField;E++){var A=this._getDataValue(E,o.dataField,h);A=c?this._castAsDate(A,o.dateFormat):this._castAsNumber(A);if(isNaN(A)){continue}if(c){C++}else{e++}if(isNaN(f)||A<f){f=A}if(isNaN(s)||A>=s){s=A}}if(d&&((!c&&e==m)||(c&&C==m))){l=false}if(l){f=0;s=Math.max(0,m-1)}if(isNaN(B)){B=f}if(isNaN(F)){F=s}if(c){if(!this._isDate(B)){B=this._isDate(F)?F:new Date()}if(!this._isDate(F)){F=this._isDate(B)?B:new Date()}}else{if(isNaN(B)){B=0}if(isNaN(F)){F=l?Math.max(0,m-1):B}}if(f==undefined){f=B}if(s==undefined){s=F}var u=o.rangeSelector;if(u){var v=u.minValue||B;if(v&&c){v=this._castAsDate(v,u.dateFormat||o.dateFormat)}var z=u.maxValue||F;if(z&&c){z=this._castAsDate(z,u.dateFormat||o.rangeSelector)}if(B<v){B=v}if(F<v){F=z}if(B>z){B=v}if(F>z){F=z}}var H=o.unitInterval;var w,I;if(c){w=o.baseUnit;if(!w){w=this._getBestDTUnit(B,F,h,G)}I=w=="hour"||w=="minute"||w=="second"||w=="millisecond"}var H=o.unitInterval;if(isNaN(H)||H<=0){H=this._estAxisInterval(B,F,h,G,w)}var D={min:B,max:F};var n=this.seriesGroups[h];if(!c&&(n.polar||n.spider)){B=a.jqx._rnd(B,H,false);F=a.jqx._rnd(F,H,true)}return{min:B,max:F,dsRange:{min:f,max:s},filterRange:D,useIndeces:l,isDateTime:c,isTimeUnit:I,dateTimeUnit:w,interval:H}},_getDefaultDTFormatFn:function(e){var c=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var d;if(e=="year"||e=="month"||e=="day"){d=function(f){return f.getDate()+"-"+c[f.getMonth()]+"-"+f.getFullYear()}}else{d=function(f){return f.getDate()+"-"+c[f.getMonth()]+"-"+f.getFullYear()+"<br>"+f.getHours()+":"+f.getMinutes()+":"+f.getSeconds()}}return d},_getDTIntCnt:function(h,d,e,k){var f=0;var i=new Date(h);var j=new Date(d);if(e<=0){return 1}while(i.valueOf()<j.valueOf()){if(k=="millisecond"){i.setMilliseconds(i.getMilliseconds()+e)}else{if(k=="second"){i.setSeconds(i.getSeconds()+e)}else{if(k=="minute"){i.setMinutes(i.getMinutes()+e)}else{if(k=="hour"){var c=i.valueOf();i.setHours(i.getHours()+e);if(c===i.valueOf()){i.setHours(i.getHours()+e+1)}}else{if(k=="day"){i.setDate(i.getDate()+e)}else{if(k=="month"){i.setMonth(i.getMonth()+e)}else{if(k=="year"){i.setFullYear(i.getFullYear()+e)}}}}}}}f++}return f},_estAxisInterval:function(f,k,o,c,l,d){if(isNaN(f)||isNaN(k)){return NaN}var e=[1,2,5,10,15,20,50,100,200,500];var j=0;var h=c/((!isNaN(d)&&d>0)?d:50);if(this._renderData&&this._renderData.length>o&&this._renderData[o].xAxis&&!isNaN(this._renderData[o].xAxis.avgWidth)){var q=Math.max(1,this._renderData[o].xAxis.avgWidth);if(q!=0&&isNaN(d)){h=0.9*c/q}}if(h<=1){return Math.abs(k-f)}var p=0;while(true){var n=j>=e.length?Math.pow(10,3+j-e.length):e[j];if(this._isDate(f)&&this._isDate(k)){p=this._getDTIntCnt(f,k,n,l)}else{p=(k-f)/n}if(p<=h){break}j++}var m=this.seriesGroups[o];if(m.spider||m.polar){if(2*n>k-f){n=k-f}}return n},_getPaddingSize:function(n,f,h,d,p,i,q){var j=n.min;var l=n.max;var c=n.interval;var e=n.dateTimeUnit;if(p){var m=(d/Math.max(1,l-j+c))*c;if(i){return{left:0,right:m}}else{if(h){return{left:0,right:0}}return{left:m/2,right:m/2}}}if(h&&!q){return{left:0,right:0}}if(this._isDate(j)&&this._isDate(l)){var o=this._getDTIntCnt(j,l,Math.min(c,l-j),e);var k=d/Math.max(2,o);return{left:k/2,right:k/2}}var o=Math.max(1,l-j);if(o==1){sz=d/4;return{left:sz,right:sz}}var k=d/(o+1);return{left:k/2,right:k/2}},_calculateXOffsets:function(f,G){var F=this.seriesGroups[f];var o=this._getXAxis(f);var z=[];var m=[];var n=this._getDataLen(f);var e=this._getXAxisStats(f,o,G);var w=e.min;var D=e.max;var c=e.isDateTime;var H=e.isTimeUnit;var E=this._hasColumnSeries();var d=F.polar||F.spider;var A=this._get([F.startAngle,F.minAngle,0]);var u=this._get([F.endAngle,F.maxAngle,360]);var q=d&&!(Math.abs(Math.abs(u-A)-360)>0.0001);var l=this._alignValuesWithTicks(f);var t=this._getPaddingSize(e,o,l,G,d,q,E);var J=D-w;var C=e.filterRange;if(J==0){J=1}var I=G-t.left-t.right;if(d&&l){t.left=t.right=0}var j=-1,p=-1;for(var B=0;B<n;B++){var v=(o.dataField===undefined)?B:this._getDataValue(B,o.dataField,f);if(e.useIndeces){if(B<C.min||B>C.max){z.push(NaN);m.push(undefined);continue}z.push(a.jqx._ptrnd(t.left+(B-w)/J*I));m.push(v);if(j==-1){j=B}if(p==-1||p<B){p=B}continue}v=c?this._castAsDate(v,o.dateFormat):this._castAsNumber(v);if(isNaN(v)||v<C.min||v>C.max){z.push(NaN);m.push(undefined);continue}var s=0;if(!c||(c&&H)){diffFromMin=v-w;s=(v-w)*I/J}else{s=(v.valueOf()-w.valueOf())/(D.valueOf()-w.valueOf())*I}s=a.jqx._ptrnd(t.left+s);z.push(s);m.push(v);if(j==-1){j=B}if(p==-1||p<B){p=B}}if(o.flip==true){for(var B=0;B<z.length;B++){if(!isNaN(z[B])){z[B]=G-z[B]}}}if(H||c){J=this._getDateDiff(w,D,o.baseUnit);J=a.jqx._rnd(J,1,false)}var k=Math.max(1,J);var h=I/k;if(j==p&&k==1){z[j]=t.left+I/2}if(this.enableSampling&&z.length>this.samplingThreshold){this._sampleXOffsets(G,z,m,j,p)}return{axisStats:e,data:z,xvalues:m,first:j,last:p,length:p==-1?0:p-j+1,itemWidth:h,intervalWidth:h*e.interval,rangeLength:J,useIndeces:e.useIndeces,padding:t,axisSize:I}},_sampleXOffsets:function(k,e,c,j,f){var f=NaN;for(var d=0;d<e.length;d++){var h=Math.round(e[d]);if(isNaN(h)){continue}if(!isNaN(f)&&Math.abs(e[f]-h)<1){continue}f=d}},_getXAxis:function(c){if(c==undefined||this.seriesGroups.length<=c){return this.categoryAxis||this.xAxis}return this.seriesGroups[c].categoryAxis||this.seriesGroups[c].xAxis||this.categoryAxis||this.xAxis},_isGreyScale:function(f,c){var e=this.seriesGroups[f];var d=e.series[c];if(d.greyScale==true){return true}else{if(d.greyScale==false){return false}}if(e.greyScale==true){return true}else{if(e.greyScale==false){return false}}return this.greyScale==true},_getSeriesColors:function(h,d,f){var c=this._getSeriesColorsInternal(h,d,f);if(this._isGreyScale(h,d)){for(var e in c){c[e]=a.jqx.toGreyScale(c[e])}}return c},_getColorFromScheme:function(q,n,c){var e="#000000";var p=this.seriesGroups[q];var k=p.series[n];if(this._isPieGroup(q)){var d=this._getDataLen(q);e=this._getItemColorFromScheme(k.colorScheme||p.colorScheme||this.colorScheme,n*d+c,q,n)}else{var o=0;for(var h=0;h<=q;h++){for(var f in this.seriesGroups[h].series){if(h==q&&f==n){break}else{o++}}}var m=this.colorScheme;if(p.colorScheme){m=p.colorScheme;sidex=seriesIndex}if(m==undefined||m==""){m=this.colorSchemes[0].name}if(!m){return e}for(var h=0;h<this.colorSchemes.length;h++){var l=this.colorSchemes[h];if(l.name==m){while(o>l.colors.length){o-=l.colors.length;if(++h>=this.colorSchemes.length){h=0}l=this.colorSchemes[h]}e=l.colors[o%l.colors.length]}}}return e},_createColorsCache:function(){this._colorsCache={get:function(c){if(this._store[c]){return this._store[c]}},set:function(d,c){if(this._size<10000){this._store[d]=c;this._size++}},clear:function(){this._store={};this._size=0},_size:0,_store:{}}},_getSeriesColorsInternal:function(n,e,c){var h=this.seriesGroups[n];var p=h.series[e];if(!a.isFunction(p.colorFunction)&&h.type!="pie"&&h.type!="donut"){c=NaN}var i=n+"_"+e+"_"+(isNaN(c)?"NaN":c);if(this._colorsCache.get(i)){return this._colorsCache.get(i)}var d={lineColor:"#222222",lineColorSelected:"#151515",lineColorSymbol:"#222222",lineColorSymbolSelected:"#151515",fillColor:"#222222",fillColorSelected:"#333333",fillColorSymbol:"#222222",fillColorSymbolSelected:"#333333",fillColorAlt:"#222222",fillColorAltSelected:"#333333"};var j;if(a.isFunction(p.colorFunction)){var k=!isNaN(c)?this._getDataValue(c,p.dataField,n):NaN;if(h.type.indexOf("range")!=-1&&!isNaN(c)){var f=this._getDataValue(c,p.dataFieldFrom,n);var m=this._getDataValue(c,p.dataFieldTo,n);k={from:f,to:m}}j=p.colorFunction(k,c,p,h);if(typeof(j)=="object"){for(var l in j){d[l]=j[l]}}else{d.fillColor=j}}else{for(var l in d){if(p[l]){d[l]=p[l]}}if(!p.fillColor&&!p.color){d.fillColor=this._getColorFromScheme(n,e,c)}else{p.fillColor=p.fillColor||p.color}}var o={fillColor:{baseColor:"fillColor",adjust:1},fillColorSelected:{baseColor:"fillColor",adjust:1.1},fillColorSymbol:{baseColor:"fillColor",adjust:1},fillColorSymbolSelected:{baseColor:"fillColorSymbol",adjust:2},fillColorAlt:{baseColor:"fillColor",adjust:4},fillColorAltSelected:{baseColor:"fillColor",adjust:3},lineColor:{baseColor:"fillColor",adjust:0.95},lineColorSelected:{baseColor:"lineColor",adjust:0.95},lineColorSymbol:{baseColor:"lineColor",adjust:1},lineColorSymbolSelected:{baseColor:"lineColorSelected",adjust:1}};for(var l in d){if(typeof(j)!="object"||!j[l]){if(p[l]){d[l]=p[l]}}}for(var l in d){if(typeof(j)!="object"||!j[l]){if(!p[l]){d[l]=a.jqx.adjustColor(d[o[l].baseColor],o[l].adjust)}}}this._colorsCache.set(i,d);return d},_getItemColorFromScheme:function(e,h,m,l){if(e==undefined||e==""){e=this.colorSchemes[0].name}for(var k=0;k<this.colorSchemes.length;k++){if(e==this.colorSchemes[k].name){break}}var f=0;while(f<=h){if(k==this.colorSchemes.length){k=0}var c=this.colorSchemes[k].colors.length;if(f+c<=h){f+=c;k++}else{var d=this.colorSchemes[k].colors[h-f];if(this._isGreyScale(m,l)&&d.indexOf("#")==0){d=a.jqx.toGreyScale(d)}return d}}},getColorScheme:function(c){for(var d=0;d<this.colorSchemes.length;d++){if(this.colorSchemes[d].name==c){return this.colorSchemes[d].colors}}return undefined},addColorScheme:function(d,c){for(var e=0;e<this.colorSchemes.length;e++){if(this.colorSchemes[e].name==d){this.colorSchemes[e].colors=c;return}}this.colorSchemes.push({name:d,colors:c})},removeColorScheme:function(c){for(var d=0;d<this.colorSchemes.length;d++){if(this.colorSchemes[d].name==c){this.colorSchemes.splice(d,1);break}}},colorSchemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],_formatValue:function(i,k,d,h,c,f){if(i==undefined){return""}if(this._isObject(i)&&!this._isDate(i)&&!d){return""}if(d){if(!a.isFunction(d)){return i.toString()}try{return d(i,f,c,h)}catch(j){return j.message}}if(this._isNumber(i)){return this._formatNumber(i,k)}if(this._isDate(i)){return this._formatDate(i,k)}if(k){return(k.prefix||"")+i.toString()+(k.sufix||"")}return i.toString()},_getFormattedValue:function(h,j,C,q,f,m){var A=this.seriesGroups[h];var o=A.series[j];var n="";var k=q,l=f;if(!l){l=o.formatFunction||A.formatFunction}if(!k){k=o.formatSettings||A.formatSettings}if(!o.formatFunction&&o.formatSettings){l=undefined}var p={},v=0;for(var c in o){if(c.indexOf("dataField")==0){p[c.substring(9).toLowerCase()]=this._getDataValue(C,o[c],h);v++}}if(v==0){p=this._getDataValue(C,undefined,h)}if(A.type.indexOf("waterfall")!=-1&&this._isSummary(h,C)){p=this._renderData[h].offsets[j][C].value;v=0}if(l&&a.isFunction(l)){try{return l(v==1?p[""]:p,C,o,A)}catch(B){return B.message}}if(v==1&&this._isPieGroup(h)){return this._formatValue(p[""],k,l,h,j,C)}if(v>0){var w=0;for(var c in p){if(w>0&&n!=""){n+="<br>"}var u="dataField"+(c.length>0?c.substring(0,1).toUpperCase()+c.substring(1):"");var t="displayText"+(c.length>0?c.substring(0,1).toUpperCase()+c.substring(1):"");var z=o[t]||o[u];var d=p[c];if(undefined!=d){d=this._formatValue(d,k,l,h,j,C)}else{continue}if(m===true){n+=d}else{n+=z+": "+d}w++}}else{if(undefined!=p){n=this._formatValue(p,k,l,h,j,C)}}return n||""},_isNumberAsString:function(e){if(typeof(e)!="string"){return false}e=a.trim(e);for(var c=0;c<e.length;c++){var d=e.charAt(c);if((d>="0"&&d<="9")||d==","||d=="."){continue}if(d=="-"&&c==0){continue}if((d=="("&&c==0)||(d==")"&&c==e.length-1)){continue}return false}return true},_castAsDate:function(h,d){if(h instanceof Date&&!isNaN(h)){return h}if(typeof(h)=="string"){var c;if(d){c=a.jqx.dataFormat.parsedate(h,d);if(this._isDate(c)){return c}}if(this._autoDateFormats){for(var f=0;f<this._autoDateFormats.length;f++){c=a.jqx.dataFormat.parsedate(h,this._autoDateFormats[f]);if(this._isDate(c)){return c}}}var e=this._detectDateFormat(h);if(e){c=a.jqx.dataFormat.parsedate(h,e);if(this._isDate(c)){this._autoDateFormats.push(e);return c}}c=new Date(h);if(this._isDate(c)){if(h.indexOf(":")==-1){c.setHours(0,0,0,0)}}return c}return undefined},_castAsNumber:function(d){if(d instanceof Date&&!isNaN(d)){return d.valueOf()}if(typeof(d)=="string"){if(this._isNumber(d)){d=parseFloat(d)}else{if(!/[a-zA-Z]/.test(d)){var c=new Date(d);if(c!=undefined){d=c.valueOf()}}}}return d},_isNumber:function(c){if(typeof(c)=="string"){if(this._isNumberAsString(c)){c=parseFloat(c)}}return typeof c==="number"&&isFinite(c)},_isDate:function(c){return c instanceof Date&&!isNaN(c.getDate())},_isBoolean:function(c){return typeof c==="boolean"},_isObject:function(c){return(c&&(typeof c==="object"||a.isFunction(c)))||false},_formatDate:function(e,d){var c=e.toString();if(d){if(d.dateFormat){c=a.jqx.dataFormat.formatDate(e,d.dateFormat)}c=(d.prefix||"")+c+(d.sufix||"")}return c},_formatNumber:function(p,f){if(!this._isNumber(p)){return p}f=f||{};var t=".";var q="";var u=this;if(u.localization){t=u.localization.decimalSeparator||u.localization.decimalseparator||t;q=u.localization.thousandsSeparator||u.localization.thousandsseparator||q}if(f.decimalSeparator){t=f.decimalSeparator}if(f.thousandsSeparator){q=f.thousandsSeparator}var o=f.prefix||"";var s=f.sufix||"";var k=f.decimalPlaces;if(isNaN(k)){k=this._getDecimalPlaces([p],undefined,3)}var n=f.negativeWithBrackets||false;var j=(p<0);if(j&&n){p*=-1}var e=p.toString();var c;var m=Math.pow(10,k);e=(Math.round(p*m)/m).toString();if(isNaN(e)){e=""}c=e.lastIndexOf(".");if(k>0){if(c<0){e+=t;c=e.length-1}else{if(t!=="."){e=e.replace(".",t)}}while((e.length-1-c)<k){e+="0"}}c=e.lastIndexOf(t);c=(c>-1)?c:e.length;var h=e.substring(c);var d=0;for(var l=c;l>0;l--,d++){if((d%3===0)&&(l!==c)&&(!j||(l>1)||(j&&n))){h=q+h}h=e.charAt(l-1)+h}e=h;if(j&&n){e="("+e+")"}return o+e+s},_defaultNumberFormat:{prefix:"",sufix:"",decimalSeparator:".",thousandsSeparator:",",decimalPlaces:2,negativeWithBrackets:false},_calculateControlPoints:function(i,h){var f=i[h],o=i[h+1],e=i[h+2],l=i[h+3],d=i[h+4],k=i[h+5];var n=0.4;var q=Math.sqrt(Math.pow(e-f,2)+Math.pow(l-o,2));var c=Math.sqrt(Math.pow(d-e,2)+Math.pow(k-l,2));var j=(q+c);if(j==0){j=1}var p=n*q/j;var m=n-p;return[e+p*(f-d),l+p*(o-k),e-m*(f-d),l-m*(o-k)]},_getBezierPoints:function(e){var d="";var k=[],f=[];var j=e.split(" ");for(var h=0;h<j.length;h++){var l=j[h].split(",");k.push(parseFloat(l[0]));k.push(parseFloat(l[1]));if(isNaN(k[k.length-1])||isNaN(k[k.length-2])){continue}}var c=k.length;if(c<=1){return""}else{if(c==2){d="M"+a.jqx._ptrnd(k[0])+","+a.jqx._ptrnd(k[1])+" L"+a.jqx._ptrnd(k[0]+1)+","+a.jqx._ptrnd(k[1]+1)+" ";return d}}for(var h=0;h<c-4;h+=2){f=f.concat(this._calculateControlPoints(k,h))}for(var h=2;h<c-5;h+=2){d+=" C"+a.jqx._ptrnd(f[2*h-2])+","+a.jqx._ptrnd(f[2*h-1])+" "+a.jqx._ptrnd(f[2*h])+","+a.jqx._ptrnd(f[2*h+1])+" "+a.jqx._ptrnd(k[h+2])+","+a.jqx._ptrnd(k[h+3])+" "}if(c<4||(Math.abs(k[0]-k[2])<3||Math.abs(k[1]-k[3])<3)||this._isVML){d="M"+a.jqx._ptrnd(k[0])+","+a.jqx._ptrnd(k[1])+" L"+a.jqx._ptrnd(k[2])+","+a.jqx._ptrnd(k[3])+" "+d}else{d="M"+a.jqx._ptrnd(k[0])+","+a.jqx._ptrnd(k[1])+" Q"+a.jqx._ptrnd(f[0])+","+a.jqx._ptrnd(f[1])+" "+a.jqx._ptrnd(k[2])+","+a.jqx._ptrnd(k[3])+" "+d}if(Math.abs(k[c-2]-k[c-4])<3||Math.abs(k[c-1]-k[c-3])<3||this._isVML){d+=" L"+a.jqx._ptrnd(k[c-2])+","+a.jqx._ptrnd(k[c-1])+" "}else{d+=" Q"+a.jqx._ptrnd(f[c*2-10])+","+a.jqx._ptrnd(f[c*2-9])+" "+a.jqx._ptrnd(k[c-2])+","+a.jqx._ptrnd(k[c-1])+" "}return d},_animTickInt:50,_createAnimationGroup:function(c){if(!this._animGroups){this._animGroups={}}this._animGroups[c]={animations:[],startTick:NaN}},_startAnimation:function(e){var f=new Date();var c=f.getTime();this._animGroups[e].startTick=c;this._runAnimation();this._enableAnimTimer()},_enqueueAnimation:function(f,e,d,i,h,c,j){if(i<0){i=0}if(j==undefined){j="easeInOutSine"}this._animGroups[f].animations.push({key:e,properties:d,duration:i,fn:h,context:c,easing:j})},_stopAnimations:function(){clearTimeout(this._animtimer);this._animtimer=undefined;this._animGroups=undefined},_enableAnimTimer:function(){if(!this._animtimer){var c=this;this._animtimer=setTimeout(function(){c._runAnimation()},this._animTickInt)}},_runAnimation:function(t){if(this._animGroups){var w=new Date();var l=w.getTime();var s={};for(var n in this._animGroups){var v=this._animGroups[n].animations;var o=this._animGroups[n].startTick;var k=0;for(var q=0;q<v.length;q++){var z=v[q];var c=(l-o);if(z.duration>k){k=z.duration}var u=z.duration>0?c/z.duration:1;var m=u;if(z.easing&&z.duration!=0){m=a.easing[z.easing](u,c,0,1,z.duration)}if(u>1){u=1;m=1}if(z.fn){z.fn(z.key,z.context,m);continue}var h={};for(var n=0;n<z.properties.length;n++){var e=z.properties[n];var f=0;if(u==1){f=e.to}else{f=easeParecent*(e.to-e.from)+e.from}h[e.key]=f}this.renderer.attr(z.key,h)}if(o+k>l){s[n]=({startTick:o,animations:v})}}this._animGroups=s;if(this.renderer instanceof a.jqx.HTML5Renderer){this.renderer.refresh()}}this._animtimer=null;for(var n in this._animGroups){this._enableAnimTimer();break}},_fixCoords:function(e,f){var c=this.seriesGroups[f].orientation=="horizontal";if(!c){return e}var d=e.x;e.x=e.y;e.y=d+this._plotRect.y-this._plotRect.x;var d=e.width;e.width=e.height;e.height=d;return e},getItemCoord:function(c,e,w){var l=this;if(l._isPieGroup(c)&&(!l._isSerieVisible(c,e,w)||!l._renderData||l._renderData.length<=c)){return{x:NaN,y:NaN}}if(!l._isSerieVisible(c,e)||!l._renderData||l._renderData.length<=c){return{x:NaN,y:NaN}}var t=l.seriesGroups[c];var k=t.series[e];var p=l._getItemCoord(c,e,w);if(l._isPieGroup(c)){if(isNaN(p.x)||isNaN(p.y)||isNaN(p.fromAngle)||isNaN(p.toAngle)){return{x:NaN,y:NaN}}var j=this._plotRect;var q=p.fromAngle*(Math.PI/180);var f=p.toAngle*(Math.PI/180);x1=j.x+p.center.x+Math.cos(q)*p.outerRadius;x2=j.x+p.center.x+Math.cos(f)*p.outerRadius;y1=j.y+p.center.y-Math.sin(q)*p.outerRadius;y2=j.y+p.center.y-Math.sin(f)*p.outerRadius;var i=Math.min(x1,x2);var n=Math.abs(x2-x1);var h=Math.min(y1,y2);var m=Math.abs(y2-y1);p={x:i,y:h,width:n,height:m,center:p.center,centerOffset:p.centerOffset,innerRadius:p.innerRadius,outerRadius:p.outerRadius,selectedRadiusChange:p.selectedRadiusChange,fromAngle:p.fromAngle,toAngle:p.toAngle};return p}if(t.type.indexOf("column")!=-1||t.type.indexOf("waterfall")!=-1){var z=this._getColumnSerieWidthAndOffset(c,e);p.height=Math.abs(p.y.to-p.y.from);p.y=Math.min(p.y.to,p.y.from);p.x+=z.offset;p.width=z.width}else{if(t.type.indexOf("ohlc")!=-1||t.type.indexOf("candlestick")!=-1){var z=this._getColumnSerieWidthAndOffset(c,e);var h=p.y;var v=Math.min(h.Open,h.Close,h.Low,h.High);var u=Math.max(h.Open,h.Close,h.Low,h.High);p.height=Math.abs(u-v);p.y=v;p.x+=z.offset;p.width=z.width}else{if(t.type.indexOf("line")!=-1||t.type.indexOf("area")!=-1){p.width=p.height=0;p.y=p.y.to}else{if(t.type.indexOf("bubble")!=-1||t.type.indexOf("scatter")!=-1){p.center={x:p.x,y:p.y.to};var d=p.y.radius;if(k.symbolType!="circle"&&k.symbolType!=undefined){d/=2}p.y=p.y.to;p.radius=d;p.width=2*d;p.height=2*d}}}}p=this._fixCoords(p,c);if(t.polar||t.spider){var o=this._toPolarCoord(this._renderData[c].polarCoords,this._plotRect,p.x,p.y);p.x=o.x;p.y=o.y;if(p.center){p.center=this._toPolarCoord(this._renderData[c].polarCoords,this._plotRect,p.center.x,p.center.y)}}if(t.type.indexOf("bubble")!=-1||t.type.indexOf("scatter")!=-1){p.x-=d;p.y-=d}return p},_getItemCoord:function(p,k,c){var f=this.seriesGroups[p],m,l;if(!f||!this._renderData){return{x:NaN,y:NaN}}var h=f.series[k];if(!h){return{x:NaN,y:NaN}}var j=this._plotRect;if(this._isPieGroup(p)){var n=this._renderData[p].offsets[k][c];if(!n){return{x:NaN,y:NaN}}var d=(n.fromAngle+n.toAngle)/2*(Math.PI/180);m=j.x+n.x+Math.cos(d)*n.outerRadius;l=j.y+n.y-Math.sin(d)*n.outerRadius;return{x:m,y:l,center:{x:n.x,y:n.y},centerOffset:n.centerOffset,innerRadius:n.innerRadius,outerRadius:n.outerRadius,selectedRadiusChange:n.selectedRadiusChange,fromAngle:n.fromAngle,toAngle:n.toAngle}}else{m=j.x+this._renderData[p].xoffsets.data[c];l=this._renderData[p].offsets[k][c];if(isNaN(m)||!l){return{x:NaN,y:NaN}}}var o={};for(var e in l){o[e]=l[e]}return{x:m,y:o}},_detectDateFormat:function(k,f){var e={en_US_d:"M/d/yyyy",en_US_D:"dddd, MMMM dd, yyyy",en_US_t:"h:mm tt",en_US_T:"h:mm:ss tt",en_US_f:"dddd, MMMM dd, yyyy h:mm tt",en_US_F:"dddd, MMMM dd, yyyy h:mm:ss tt",en_US_M:"MMMM dd",en_US_Y:"yyyy MMMM",en_US_S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",en_CA_d:"dd/MM/yyyy",en_CA_D:"MMMM-dd-yy",en_CA_f:"MMMM-dd-yy h:mm tt",en_CA_F:"MMMM-dd-yy h:mm:ss tt",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",de_DE_d:"dd.MM.yyyy",de_DE_D:"dddd, d. MMMM yyyy",de_DE_t:"HH:mm",de_DE_T:"HH:mm:ss",de_DE_f:"dddd, d. MMMM yyyy HH:mm",de_DE_F:"dddd, d. MMMM yyyy HH:mm:ss",de_DE_M:"dd MMMM",de_DE_Y:"MMMM yyyy",fr_FR_d:"dd/MM/yyyy",fr_FR_D:"dddd d MMMM yyyy",fr_FR_t:"HH:mm",fr_FR_T:"HH:mm:ss",fr_FR_f:"dddd d MMMM yyyy HH:mm",fr_FR_F:"dddd d MMMM yyyy HH:mm:ss",fr_FR_M:"d MMMM",fr_FR_Y:"MMMM yyyy",it_IT_d:"dd/MM/yyyy",it_IT_D:"dddd d MMMM yyyy",it_IT_t:"HH:mm",it_IT_T:"HH:mm:ss",it_IT_f:"dddd d MMMM yyyy HH:mm",it_IT_F:"dddd d MMMM yyyy HH:mm:ss",it_IT_M:"dd MMMM",it_IT_Y:"MMMM yyyy",ru_RU_d:"dd.MM.yyyy",ru_RU_D:"d MMMM yyyy '?.'",ru_RU_t:"H:mm",ru_RU_T:"H:mm:ss",ru_RU_f:"d MMMM yyyy '?.' H:mm",ru_RU_F:"d MMMM yyyy '?.' H:mm:ss",ru_RU_Y:"MMMM yyyy",cs_CZ_d:"d.M.yyyy",cs_CZ_D:"d. MMMM yyyy",cs_CZ_t:"H:mm",cs_CZ_T:"H:mm:ss",cs_CZ_f:"d. MMMM yyyy H:mm",cs_CZ_F:"d. MMMM yyyy H:mm:ss",cs_CZ_M:"dd MMMM",cs_CZ_Y:"MMMM yyyy",he_IL_d:"dd MMMM yyyy",he_IL_D:"dddd dd MMMM yyyy",he_IL_t:"HH:mm",he_IL_T:"HH:mm:ss",he_IL_f:"dddd dd MMMM yyyy HH:mm",he_IL_F:"dddd dd MMMM yyyy HH:mm:ss",he_IL_M:"dd MMMM",he_IL_Y:"MMMM yyyy",hr_HR_d:"d.M.yyyy.",hr_HR_D:"d. MMMM yyyy.",hr_HR_t:"H:mm",hr_HR_T:"H:mm:ss",hr_HR_f:"d. MMMM yyyy. H:mm",hr_HR_F:"d. MMMM yyyy. H:mm:ss",hr_HR_M:"d. MMMM",hu_HU_d:"yyyy.MM.dd.",hu_HU_D:"yyyy. MMMM d.",hu_HU_t:"H:mm",hu_HU_T:"H:mm:ss",hu_HU_f:"yyyy. MMMM d. H:mm",hu_HU_F:"yyyy. MMMM d. H:mm:ss",hu_HU_M:"MMMM d.",hu_HU_Y:"yyyy. MMMM",jp_JP_d:"gg y/M/d",jp_JP_D:"gg y'?'M'?'d'?'",jp_JP_t:"H:mm",jp_JP_T:"H:mm:ss",jp_JP_f:"gg y'?'M'?'d'?' H:mm",jp_JP_F:"gg y'?'M'?'d'?' H:mm:ss",jp_JP_M:"M'?'d'?'",jp_JP_Y:"gg y'?'M'?'",lt_LT_d:"yyyy.MM.dd",lt_LT_D:"yyyy 'm.' MMMM d 'd.'",lt_LT_t:"HH:mm",lt_LT_T:"HH:mm:ss",lt_LT_f:"yyyy 'm.' MMMM d 'd.' HH:mm",lt_LT_F:"yyyy 'm.' MMMM d 'd.' HH:mm:ss",lt_LT_M:"MMMM d 'd.'",lt_LT_Y:"yyyy 'm.' MMMM",sa_IN_d:"dd-MM-yyyy",sa_IN_D:"dd MMMM yyyy dddd",sa_IN_t:"HH:mm",sa_IN_T:"HH:mm:ss",sa_IN_f:"dd MMMM yyyy dddd HH:mm",sa_IN_F:"dd MMMM yyyy dddd HH:mm:ss",sa_IN_M:"dd MMMM",basic_y:"yyyy",basic_ym:"yyyy-MM",basic_d:"yyyy-MM-dd",basic_dhm:"yyyy-MM-dd hh:mm",basic_bhms:"yyyy-MM-dd hh:mm:ss",basic2_ym:"MM-yyyy",basic2_d:"MM-dd-yyyy",basic2_dhm:"MM-dd-yyyy hh:mm",basic2_dhms:"MM-dd-yyyy hh:mm:ss",basic3_ym:"yyyy/MM",basic3_d:"yyyy/MM/dd",basic3_dhm:"yyyy/MM/dd hh:mm",basic3_bhms:"yyyy/MM/dd hh:mm:ss",basic4_ym:"MM/yyyy",basic4_d:"MM/dd/yyyy",basic4_dhm:"MM/dd/yyyy hh:mm",basic4_dhms:"MM/dd/yyyy hh:mm:ss"};if(f){e=a.extend({},e,f)}var d=[];if(!a.isArray(k)){d.push(k)}else{d=k}for(var h in e){e[h]={format:e[h],count:0}}for(var l=0;l<d.length;l++){value=d[l];if(value==null||value==undefined){continue}for(var h in e){var c=a.jqx.dataFormat.parsedate(value,e[h].format);if(c!=null){e[h].count++}}}var m={key:undefined,count:0};for(var h in e){if(e[h].count>m.count){m.key=h;m.count=e[h].count}}return m.key?e[m.key].format:""},_testXAxisDateFormat:function(k){var m=this;var e=m._getXAxis(k);var d=m._getDataLen(k);var f={};if(m.localization&&m.localization.patterns){for(var l in m.localization.patterns){f["local_"+l]=m.localization.patterns[l]}}var j=[];for(var h=0;h<d&&h<10;h++){value=m._getDataValue(h,e.dataField,k);if(value==null||value==undefined){continue}j.push(value)}var c=m._detectDateFormat(j,f);return c}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleApi:true,getItemsCount:function(h,c){var e=this.seriesGroups[h];if(!this._isSerieVisible(h,c)){return 0}var f=this._renderData;if(!e||!f||f.length<=h){return 0}var d=e.series[c];if(!d){return 0}return f[h].offsets[c].length},getXAxisRect:function(d){var c=this._renderData;if(!c||c.length<=d){return undefined}if(!c[d].xAxis){return undefined}return c[d].xAxis.rect},getXAxisLabels:function(m){var e=[];var n=this._renderData;if(!n||n.length<=m){return e}n=n[m].xAxis;if(!n){return e}var l=this.seriesGroups[m];if(l.polar||l.spider){for(var f=0;f<n.polarLabels.length;f++){var k=n.polarLabels[f];e.push({offset:{x:k.x,y:k.y},value:k.value})}return e}var d=this._getXAxis(m);var j=this.getXAxisRect(m);var c=d.position=="top"||d.position=="right";var h=l.orientation=="horizontal";for(var f=0;f<n.data.length;f++){if(h){e.push({offset:{x:j.x+(c?0:j.width),y:j.y+n.data.data[f]},value:n.data.xvalues[f]})}else{e.push({offset:{x:j.x+n.data.data[f],y:j.y+(c?j.height:0)},value:n.data.xvalues[f]})}}return e},getValueAxisRect:function(d){var c=this._renderData;if(!c||c.length<=d){return undefined}if(!c[d].valueAxis){return undefined}return c[d].valueAxis.rect},getValueAxisLabels:function(k){var d=[];var l=this._renderData;if(!l||l.length<=k){return d}l=l[k].valueAxis;if(!l){return d}var m=this._getValueAxis(k);var c=m.position=="top"||m.position=="right";var j=this.seriesGroups[k];var f=j.orientation=="horizontal";if(j.polar||j.spider){for(var e=0;e<l.polarLabels.length;e++){var h=l.polarLabels[e];d.push({offset:{x:h.x,y:h.y},value:h.value})}return d}for(var e=0;e<l.items.length;e++){if(f){d.push({offset:{x:l.itemOffsets[l.items[e]].x+l.itemWidth/2,y:l.rect.y+(c?l.rect.height:0)},value:l.items[e]})}else{d.push({offset:{x:l.rect.x+l.rect.width,y:l.itemOffsets[l.items[e]].y+l.itemWidth/2},value:l.items[e]})}}return d},getPlotAreaRect:function(){return this._plotRect},getRect:function(){return this._rect},showToolTip:function(h,d,f,c,e){var i=this.getItemCoord(h,d,f);if(isNaN(i.x)||isNaN(i.y)){return}this._startTooltipTimer(h,d,f,i.x,i.y,c,e)},hideToolTip:function(d){if(isNaN(d)){d=0}var c=this;c._cancelTooltipTimer();setTimeout(function(){c._hideToolTip(0)},d)}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleAnnotations:true,_renderAnnotation:function(h,j,d){var l=this.seriesGroups[h];var t=this.renderer;if(isNaN(h)){return}var n=this._get([this.getXAxisDataPointOffset(j.xValue,h),j.x]);var m=this._get([this.getValueAxisDataPointOffset(j.yValue,h),j.y]);var A=this._get([this.getXAxisDataPointOffset(j.xValue2,h),j.x2]);var f=this._get([this.getValueAxisDataPointOffset(j.yValue2,h),j.y2]);if(l.polar||l.spider){var u=this.getPolarDataPointOffset(j.xValue,j.yValue,h);if(u&&!isNaN(u.x)&&!isNaN(u.y)){n=u.x;m=u.y}else{n=j.x;m=j.y}}if(isNaN(m)||isNaN(n)){return false}if(l.orientation=="horizontal"){var B=n;n=m;m=B;B=A;A=f;f=B}if(j.offset){if(!isNaN(j.offset.x)){n+=j.offset.x;A+=j.offset.x}if(!isNaN(j.offset.y)){m+=j.offset.y;f+=j.offset.y}}var s=this._get([j.width,A-n]);var q=this._get([j.height,f-m]);var e;switch(j.type){case"rect":e=t.rect(n,m,s,q);break;case"circle":e=t.rect(n,m,j.radius);break;case"line":e=t.rect(n,m,A,f);break;case"path":e=t.path(j.path);break}t.attr(e,{fill:j.fillColor,stroke:j.lineColor,opacity:this._get([j.fillOpacity,j.opacity]),"stroke-opacity":this._get([j.lineOpacity,j.opacity]),"stroke-width":j.lineWidth,"stroke-dasharray":j.dashStyle||"none"});var z;if(j.text){var o=j.text;var C=0,k=0;if(o.offset){if(!isNaN(o.offset.x)){C+=o.offset.x}if(!isNaN(o.offset.y)){k+=o.offset.y}}z=t.text(o.value,n+C,m+k,NaN,NaN,o.angle,{},o.clip===true,o.horizontalAlignment||"center",o.verticalAlignment||"center",o.rotationPoint||"centermiddle");t.attr(z,{fill:o.fillColor,stroke:o.lineColor,"class":o["class"]})}var c=["click","mouseenter","mouseleave"];var p=this;for(var w=0;w<c.length;w++){var v=this._getEvent(c[w])||c[w];if(e){this.renderer.addHandler(e,v,function(){p._raiseAnnotationEvent(j,v)})}if(z){this.renderer.addHandler(z,v,function(){p._raiseAnnotationEvent(j,v)})}}},_raiseAnnotationEvent:function(c,d){this._raiseEvent("annotation_"+d,{annotation:c})}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleRangeSelector:true,_renderXAxisRangeSelector:function(p,n){var s=this;s._isTouchDevice=a.jqx.mobile.isTouchDevice();var i=s.seriesGroups[p];var e=s._getXAxis(p);var l=e?e.rangeSelector:undefined;if(!s._isSelectorRefresh){var q=(l&&l.renderTo)?l.renderTo:s.host;q.find(".rangeSelector").remove()}if(!e||e.visible==false||i.type=="spider"){return false}if(!s._isGroupVisible(p)){return false}if(!l){return false}var h=i.orientation=="horizontal";if(l.renderTo){h=false}if(s.rtl){e.flip=true}var d=h?this.host.height():this.host.width();d-=4;var o=this._getXAxisStats(p,e,d);var k=e.position;if(l.renderTo&&l.position){k=l.position}if(!this._isSelectorRefresh){var m=l.renderTo;var c="<div class='rangeSelector jqx-disableselect' style='position: absolute; background-color: transparent;' onselectstart='return false;'></div>";var f=a(c).appendTo(m?m:this.host.find(".chartContainer"));if(!m){var j=this.host.coord();selectorSize=this._selectorGetSize(e);if(!h){f.css("left",j.left+1);f.css("top",j.top+n.y+(k!="top"?n.height:-selectorSize));f.css("height",selectorSize);f.css("width",d)}else{f.css("left",j.left+1+n.x+(k!="right"?-selectorSize:n.width));f.css("top",j.top);f.css("height",d);f.css("width",selectorSize);n.height=selectorSize}}else{f.css({width:m.width(),height:m.height()});n.width=m.width();n.height=m.height()}this._refreshSelector(p,e,o,f,n,h)}this._isSelectorRefresh=false;return true},_refreshSelector:function(h,f,e,F,d,c){var k={};var z=f.rangeSelector;var m=this.seriesGroups[h];for(var B in z){k[B]=z[B]}delete k.padding;var u=k.minValue;var A=k.maxValue;if(undefined==u){u=Math.min(e.min.valueOf(),e.dsRange.min.valueOf())}if(undefined==A){A=Math.max(e.max.valueOf(),e.dsRange.max.valueOf())}if(this._isDate(e.min)){u=new Date(u)}if(this._isDate(e.max)){A=new Date(A)}var n=f.position;if(z.renderTo&&z.position){n=z.position}k.dataField=f.dataField;k.rangeSelector=undefined;k.type=f.type;k.baseUnit=z.baseUnit||f.baseUnit;k.minValue=u;k.maxValue=A;k.flip=f.flip;k.position=n;var l=5;var t=2,E=2,D=2,H=2;if(!z.renderTo){t=c?0:d.x;E=c?0:this._rect.width-d.x-d.width;D=c?d.y:l;H=c?this._paddedRect.height-this._plotRect.height:l}var p=z.padding;if(p==undefined&&!z.renderTo){p={left:t,top:D,right:E,bottom:H}}else{p={left:((p&&p.left)?p.left:t),top:((p&&p.top)?p.top:D),right:((p&&p.right)?p.right:E),bottom:((p&&p.bottom)?p.bottom:H)}}var w=f.rangeSelector.dataField;for(var B=0;undefined==w&&B<this.seriesGroups.length;B++){for(var v=0;undefined==w&&v<this.seriesGroups[B].series.length;v++){w=this.seriesGroups[B].series[v].dataField}}var o={padding:p,title:z.title||"",description:z.description||"",titlePadding:z.titlePadding,colorScheme:z.colorScheme||this.colorScheme,backgroundColor:z.backgroundColor||this.backgroundColor||"transparent",backgroundImage:z.backgroundImage||"",showBorderLine:z.showBorderLine||(z.renderTo?true:false),borderLineWidth:z.borderLineWidth||this.borderLineWidth,borderLineColor:z.borderLineColor||this.borderLineColor,rtl:z.rtl||this.rtl,greyScale:z.greyScale||this.greyScale,showLegend:false,enableAnimations:false,enableEvents:false,showToolTips:false,source:this.source,xAxis:k,seriesGroups:[{orientation:c?"horizontal":"vertical",valueAxis:{visible:false},type:f.rangeSelector.serieType||"area",series:[{dataField:w,opacity:0.8,lineWidth:1}]}]};F.empty();F.jqxChart(o);var q=this;F.on(q._getEvent("mousemove"),function(){q._unselect();q._hideToolTip()});var C=F.jqxChart("getInstance");if(!C._plotRect){return}var G=C._paddedRect;G.height=C._plotRect.height;if(!c&&n=="top"){G.y+=C._renderData[0].xAxis.rect.height}else{if(c){var s=C._renderData[0].xAxis.rect.width;G.width-=s;if(n!="right"){G.x+=s}}}q._createSliderElements(h,F,G,z);q.addHandler(a(document),q._getEvent("mousemove")+"."+q.element.id,q._onSliderMouseMove,{self:this,groupIndex:h,renderTo:F,swapXY:c});q.addHandler(a(F),q._getEvent("mousedown"),q._onSliderMouseDown,{self:this,groupIndex:h,renderTo:F,swapXY:c});q.addHandler(a(F),q._getEvent("mouseup"),q._onSliderMouseUp,{self:this,groupIndex:h,renderTo:F,swapXY:c})},_createSliderElements:function(u,n,o,p){n.find(".slider").remove();var t=p.colorSelectedRange||"blue";var i=p.colorUnselectedRange||"white";var c=a("<div class='slider' style='position: absolute;'></div>");c.css({background:t,opacity:0.1,left:o.x,top:o.y,width:o.width,height:o.height});c.appendTo(n);if(!this._sliders){this._sliders=[]}while(this._sliders.length<u+1){this._sliders.push({})}var l="<div class='slider' style='position: absolute;  background: "+i+"; opacity: 0.5;'></div>";var d="<div class='slider' style='position: absolute; background: grey; opacity: 0.5;'></div>";var j="<div class='slider jqx-rc-all' style='position: absolute; background: white; border-style: solid; border-width: 1px; border-color: grey;'></div>";this._sliders[u]={element:c,host:n,fullRect:{x:c.coord().left,y:c.coord().top,width:o.width,height:o.height},rect:o,left:a(l),right:a(l),leftTop:a(d),rightTop:a(d),leftBorder:a(d),leftBar:a(j),rightBorder:a(d),rightBar:a(j)};this._sliders[u].left.appendTo(n);this._sliders[u].right.appendTo(n);this._sliders[u].leftTop.appendTo(n);this._sliders[u].rightTop.appendTo(n);this._sliders[u].leftBorder.appendTo(n);this._sliders[u].rightBorder.appendTo(n);this._sliders[u].leftBar.appendTo(n);this._sliders[u].rightBar.appendTo(n);var s=this._renderData[u].xAxis;var f=s.data.axisStats;var q=f.min.valueOf();var h=f.max.valueOf();var k=this._valueToOffset(u,q);var m=this._valueToOffset(u,h);if(k>m){var e=m;m=k;k=e}if(this.seriesGroups[u].orientation!="horizontal"){c.css({left:Math.round(o.x+k),top:o.y,width:Math.round(m-k),height:o.height})}else{c.css({top:Math.round(o.y+k),left:o.x,height:Math.round(m-k),width:o.width})}this._setSliderPositions(u,k,m)},_setSliderPositions:function(f,t,i){var v=this.seriesGroups[f];var e=this._getXAxis(f);var p=e.rangeSelector;var c=v.orientation=="horizontal";if(e.rangeSelector.renderTo){c=false}var k=e.position;if(p.renderTo&&p.position){k=p.position}var m=(c&&k=="right")||(!c&&k=="top");var o=this._sliders[f];var s=c?"top":"left";var h=c?"left":"top";var j=c?"height":"width";var q=c?"width":"height";var l=c?"y":"x";var n=c?"x":"y";var d=o.rect;o.left.css(s,d[l]);o.left.css(h,d[n]);o.left.css(j,t);o.left.css(q,d[q]);o.right.css(s,d[l]+i);o.right.css(h,d[n]);o.right.css(j,d[j]-i+1);o.right.css(q,d[q]);o.leftTop.css(s,d[l]);o.leftTop.css(h,d[n]+(((c&&k=="right")||(!c&&k!="top"))?0:d[q]));o.leftTop.css(j,t);o.leftTop.css(q,1);o.rightTop.css(s,d[l]+i);o.rightTop.css(h,d[n]+(((c&&k=="right")||(!c&&k!="top"))?0:d[q]));o.rightTop.css(j,d[j]-i+1);o.rightTop.css(q,1);o.leftBorder.css(s,d[l]+t);o.leftBorder.css(h,d[n]);o.leftBorder.css(j,1);o.leftBorder.css(q,d[q]);var u=d[q]/4;if(u>20){u=20}if(u<3){u=3}o.leftBar.css(s,d[l]+t-3);o.leftBar.css(h,d[n]+d[q]/2-u/2);o.leftBar.css(j,5);o.leftBar.css(q,u);o.rightBorder.css(s,d[l]+i);o.rightBorder.css(h,d[n]);o.rightBorder.css(j,1);o.rightBorder.css(q,d[q]);o.rightBar.css(s,d[l]+i-3);o.rightBar.css(h,d[n]+d[q]/2-u/2);o.rightBar.css(j,5);o.rightBar.css(q,u)},_resizeState:{},_onSliderMouseDown:function(e){var c=e.data.self;var d=c._sliders[e.data.groupIndex];if(!d){return}if(c._resizeState.state==undefined){c._testAndSetReadyResize(e)}if(c._resizeState.state!="ready"){return}c._resizeState.state="resizing"},_valueToOffset:function(o,m){var n=this.seriesGroups[o];var e=this._sliders[o];var d=e.host.jqxChart("getInstance");var p=d._renderData[0].xAxis;var i=p.data.axisStats;var l=i.min.valueOf();var c=i.max.valueOf();var j=c-l;if(j==0){j=1}var f=this._getXAxis(o);var h=n.orientation=="horizontal"?"height":"width";var k=(m.valueOf()-l)/j;return e.fullRect[h]*(f.flip?(1-k):k)},_offsetToValue:function(q,h){var e=this._sliders[q];var p=this.seriesGroups[q];var f=this._getXAxis(q);var i=p.orientation=="horizontal"?"height":"width";var k=e.fullRect[i];if(k==0){k=1}var l=h/k;var d=e.host.jqxChart("getInstance");var o=d._renderData[0].xAxis;var j=o.data.axisStats;var m=j.min.valueOf();var c=j.max.valueOf();var n=h/k*(c-m)+m;if(f.flip==true){n=c-h/k*(c-m)}if(this._isDate(j.min)||this._isDate(j.max)){n=new Date(n)}else{if(f.dataField==undefined){n=Math.round(n)}if(n<j.min){n=j.min}if(n>j.max){n=j.max}}return n},_onSliderMouseUp:function(q){var l=q.data.self;var h=q.data.groupIndex;var c=q.data.swapXY;var n=l._sliders[h];if(!n){return}if(l._resizeState.state!="resizing"){return}l._resizeState={};l.host.css("cursor","default");var i=!c?"left":"top";var d=!c?"width":"height";var p=!c?"x":"y";var o=n.element.coord()[i];var e=o+(!c?n.element.width():n.element.height());var j=l._offsetToValue(h,o-n.fullRect[p]);var s=l._offsetToValue(h,e-n.fullRect[p]);var k=n.host.jqxChart("getInstance");var m=k._renderData[0].xAxis;var u=m.data.axisStats;if(!u.isTimeUnit&&(s.valueOf()-j.valueOf())>86400000){j.setHours(0,0,0,0);s.setDate(s.getDate()+1);s.setHours(0,0,0,0)}var f=l._getXAxis(h);if(f.flip){var t=j;j=s;s=t}f.minValue=j;f.maxValue=s;l._isSelectorRefresh=true;var v=l.enableAnimations;l._raiseEvent("rangeSelectionChanging",{instance:l,minValue:j,maxValue:s});l.enableAnimations=false;l.update();l.enableAnimations=v;l._raiseEvent("rangeSelectionChanged",{instance:l,minValue:j,maxValue:s})},_onSliderMouseMove:function(w){var q=w.data.self;var A=w.data.renderTo;var k=w.data.groupIndex;var t=q._sliders[k];var e=w.data.swapXY;if(!t){return}var h=t.fullRect;var j=t.element;var B=a.jqx.position(w);var u=j.coord();var s=e?"left":"top";var o=!e?"left":"top";var i=e?"width":"height";var f=!e?"width":"height";var v=!e?"x":"y";if(q._resizeState.state=="resizing"){if(q._resizeState.side=="left"){var p=Math.round(B[o]-u[o]);var n=h[v];if(u[o]+p>=n&&u[o]+p<=n+h[f]){var l=parseInt(j.css(o));var d=Math.max(2,(e?j.height():j.width())-p);j.css(f,d);j.css(o,l+p)}}else{if(q._resizeState.side=="right"){var c=e?j.height():j.width();var p=Math.round(B[o]-u[o]-c);var n=h[v];if(u[o]+c+p>=n&&u[o]+p+c<=n+h[f]){var d=Math.max(2,c+p);j.css(f,d)}}else{if(q._resizeState.side=="move"){var c=e?j.height():j.width();var l=parseInt(j.css(o));var p=Math.round(B[o]-q._resizeState.startPos);if(u[o]+p>=h[v]&&u[o]+p+c<=h[v]+h[f]){q._resizeState.startPos=B[o];j.css(o,l+p)}}}}var z=parseInt(j.css(o))-t.rect[v];var m=z+(e?j.height():j.width());q._setSliderPositions(k,z,m)}else{q._testAndSetReadyResize(w)}},_testAndSetReadyResize:function(c){var t=c.data.self;var m=c.data.renderTo;var q=c.data.groupIndex;var d=t._sliders[q];var i=c.data.swapXY;var o=d.fullRect;var f=d.element;var h=a.jqx.position(c);var j=f.coord();var l=i?"left":"top";var s=!i?"left":"top";var k=i?"width":"height";var n=!i?"width":"height";var e=!i?"x":"y";var p=t._isTouchDevice?30:5;if(h[l]>=j[l]&&h[l]<=j[l]+o[k]){if(Math.abs(h[s]-j[s])<=p){m.css("cursor",i?"row-resize":"col-resize");t._resizeState={state:"ready",side:"left"}}else{if(Math.abs(h[s]-j[s]-(!i?f.width():f.height()))<=p){m.css("cursor",i?"row-resize":"col-resize");t._resizeState={state:"ready",side:"right"}}else{if(h[s]+p>j[s]&&h[s]-p<j[s]+(!i?f.width():f.height())){m.css("cursor","pointer");t._resizeState={state:"ready",side:"move",startPos:h[s]}}else{m.css("cursor","default");t._resizeState={}}}}}else{m.css("cursor","default");t._resizeState={}}},_selectorGetSize:function(c){if(c.rangeSelector.renderTo){return 0}return c.rangeSelector.size||this._paddedRect.height/3}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleWaterfall:true,_isSummary:function(e,c){var f=this.seriesGroups[e];for(var d=0;d<f.series.length;d++){if(undefined===f.series[d].summary){continue}summaryValue=this._getDataValue(c,f.series[d].summary,e);if(undefined!==summaryValue){return true}}return false},_applyWaterfall:function(C,D,l,h,E,m,G,f,s){var q=this.seriesGroups[l];if(C.length==0){return C}var w=h;var c={};var d=[];var e=undefined;var H=[];for(var A=0;A<q.series.length;A++){H.push(this._isSerieVisible(l,A))}var u={};for(var B=0;B<D;B++){var o=h;var p=0;var n=this._isSummary(l,B);for(var A=0;A<C.length;A++){if(!H[A]){continue}var F=0;if(n){F=o==h?E:0;C[A][B].value=c[A];C[A][B].summary=true;e=C[A][B].value<F;if(f){e=!e}var v=0;if(!isNaN(m)){v=this._getDataPointOffsetDiff(C[A][B].value+p,p==0?E:p,F||E,m,G,h,f)}else{v=this._getDataPointOffsetDiff(C[A][B].value,F,F,NaN,G,h,f)}C[A][B].to=o+(e?v:-v);C[A][B].from=o;if(s){p+=C[A][B].value;o=C[A][B].to}continue}var z=s?-1:A;if(isNaN(C[A][B].value)){continue}if(undefined===u[z]){F=E;u[z]=true}e=C[A][B].value<F;if(f){e=!e}var t=NaN,v=NaN;if(!s){t=B==0?h:C[A][d[A]].to}else{t=w}var v=0;if(!isNaN(m)){v=this._getDataPointOffsetDiff(C[A][B].value+(isNaN(c[z])?0:c[z]),isNaN(c[z])?E:c[z],F||E,m,G,t,f)}else{v=this._getDataPointOffsetDiff(C[A][B].value,F,F,NaN,G,h,f)}C[A][B].to=w=t+(e?v:-v);C[A][B].from=t;if(isNaN(c[z])){c[z]=C[A][B].value}else{c[z]+=C[A][B].value}if(z==-1){if(isNaN(c[A])){c[A]=C[A][B].value}else{c[A]+=C[A][B].value}}if(!s){d[A]=B}}}return C}})})(jqxBaseFramework);(function(d){var b={defineInstance:function(){var e={width:350,height:350,radius:"50%",endAngle:270,startAngle:30,int64:false,value:0,min:0,max:220,disabled:false,ticksDistance:"20%",colorScheme:"scheme01",animationDuration:400,showRanges:true,easing:"easeOutCubic",labels:null,pointer:null,cap:null,caption:null,border:null,ticksMinor:null,ticksMajor:null,style:null,ranges:[],_radius:100,_border:null,_radiusDifference:2,_pointer:null,_labels:[],_cap:null,_ticks:[],_ranges:[],_gauge:null,_caption:null,_animationTimeout:10,renderer:null,_animations:[],aria:{"aria-valuenow":{name:"value",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}}};d.extend(true,this,e);return e},createInstance:function(f){var e=this;e.that=this;d.jqx.aria(e);e._radius=e.radius;e.endAngle=e.endAngle*Math.PI/180+Math.PI/2;e.startAngle=e.startAngle*Math.PI/180+Math.PI/2;if(e.int64===true){if(!d.jqx.longInt){throw new Error("jqxGauge: Missing reference to jqxdata.js")}d.jqx.longInt(e);e._value64=new d.jqx.math().fromString(e.value.toString(),10);e._min64=new d.jqx.math().fromString(e.min.toString(),10);e._max64=new d.jqx.math().fromString(e.max.toString(),10)}else{e.value=new Number(e.value)}e._refresh();e.renderer.getContainer().css("overflow","hidden");if(e.int64===true){e.setValue(e._value64,0)}else{e.setValue(e.value,0)}d.jqx.utilities.resize(e.host,function(){e._refresh()});e.host.addClass(e.toThemeProperty("jqx-widget"))},_validateEasing:function(){return !!d.easing[this.easing]},_validateProperties:function(){if(this.startAngle===this.endAngle){throw new Error("The end angle can not be equal to the start angle!")}if(!this._validateEasing()){this.easing="linear"}this.ticksDistance=this._validatePercentage(this.ticksDistance,"20%");this.border=this._borderConstructor(this.border,this);this.style=this.style||{fill:"#ffffff",stroke:"#E0E0E0"};this.ticksMinor=new this._tickConstructor(this.ticksMinor,this);this.ticksMajor=new this._tickConstructor(this.ticksMajor,this);this.cap=new this._capConstructor(this.cap,this);this.pointer=new this._pointerConstructor(this.pointer,this);this.labels=new this._labelsConstructor(this.labels,this);this.caption=new this._captionConstructor(this.caption,this);for(var e=0;e<this.ranges.length;e+=1){this.ranges[e]=new this._rangeConstructor(this.ranges[e],this)}},_hostInit:function(){var h=this._getScale(this.width,"width",this.host.parent()),e=this._getScale(this.height,"height",this.host.parent()),g=this._outerBorderOffset(),i=this.host,f;i.width(h);i.height(e);this.radius=f=(this._getScale(this._radius,"width",this.host)||h/2)-g;this._originalRadius=parseInt(this.radius,10)-this._radiusDifference;this._innerRadius=this._originalRadius;if(this.border){this._innerRadius-=this._getSize(this.border.size)}i[0].innerHTML="<div />";this._gaugeParent=i.children();this._gaugeParent.width(h);this._gaugeParent.height(e);this.renderer.init(this._gaugeParent)},_initRenderer:function(e){if(!d.jqx.createRenderer){throw"Please include a reference to jqxdraw.js"}return d.jqx.createRenderer(this,e)},_refresh:function(){var e=this;if(!e.renderer){e._isVML=false;e.host.empty();e._initRenderer(e.host)}var f=e.renderer;if(!f){return}if(e._ranges){d(e._ranges).remove()}if(e._pointer){d(e._pointer).remove()}if(e._labels){d(e._labels).remove()}if(e._cap){d(e._cap).remove()}if(e._ticks){d(e._ticks).remove()}if(e._border){d(e._border).remove()}if(e._caption){d(e._caption).remove()}e._caption=null;e._labels=[];e._cap=null;e._ticks=[];e._ranges=[];e._border=null;e._pointer=null;e._validateProperties();e._removeElements();e._hostInit();e._render();e.setValue(this.value,0)},val:function(e){if(arguments.length==0||typeof(e)=="object"){return this.value}this.setValue(e,0)},refresh:function(){this._refresh.apply(this,Array.prototype.slice(arguments))},_outerBorderOffset:function(){var e=parseInt(this.border.style["stroke-width"],10)||1;return e/2},_removeCollection:function(f){for(var e=0;e<f.length;e+=1){d(f[e]).remove()}f=[]},_render:function(){this._addBorder();this._addGauge();this._addRanges();this._addTicks();this._addLabels();this._addCaption();this._addPointer();this._addCap()},_addBorder:function(){if(!this.border.visible){return}var e=this.border.style.fill,f=this._outerBorderOffset();if(!e){e="#BABABA"}if(this.border.showGradient){if(e.indexOf("url")<0&&e.indexOf("#grd")<0){this._originalColor=e}else{e=this._originalColor}e=this.renderer._toLinearGradient(e,true,[[0,1],[25,1.1],[50,1.5],[100,1]])}this._border=this.renderer.circle(this._originalRadius+f,this._originalRadius+f,this._originalRadius);this.border.style.fill=e;this.renderer.attr(this._border,this.border.style)},_addGauge:function(){var g=this._originalRadius,e=this.renderer._toLinearGradient("#ffffff",[[3,2],[100,1]],true),f=this._outerBorderOffset();this._gauge=this.renderer.circle(g+f,g+f,this._innerRadius);this.renderer.attr(this._gauge,this.style)},_addCap:function(){var e="visible",g=this._outerBorderOffset();if(!this.cap.visible){e="hidden"}var h=this._originalRadius,f=this._getSize(this.cap.size),i;i=this.renderer.circle(h+g,h+g,f);this._capCenter=[h,h];this.renderer.attr(i,this.cap.style);d(i).css("visibility",e);this._cap=i},_addTicks:function(){var n=this;var p=this.ticksMinor,e=this.ticksMajor,l,o,m={};function k(i){n._drawTick({angle:n._getAngleByValue(i),distance:n._getDistance(n.ticksDistance),style:e.style,size:n._getSize(e.size),type:"major"})}function f(j){n._drawTick({angle:n._getAngleByValue(j),distance:n._getDistance(n.ticksDistance),style:p.style,size:n._getSize(p.size),type:"minor"})}if(n.int64===true){l=new d.jqx.math().fromString((p.interval).toString(),10);o=new d.jqx.math().fromString((e.interval).toString(),10);for(var h=new d.jqx.math().fromString((n.min).toString(),10),g=new d.jqx.math().fromString((n.min).toString(),10);h.lessThanOrEqual(n._max64)||g.lessThanOrEqual(n._max64);h=h.add(l),g=g.add(o)){if(g.lessThan(n._min64)||g.greaterThan(n._max64)){break}if(g.lessThanOrEqual(n._max64)&&e.visible){k(g);m[g.toString()]=true}if(!m[h.toString()]&&p.visible&&h.lessThanOrEqual(n._max64)){f(h)}}}else{l=p.interval;o=e.interval;for(var h=this.min,g=this.min;h<=this.max||g<=this.max;h+=l,g+=o){if(g<=this.max&&e.visible){k(g);m[g.toFixed(5)]=true}if(!m[h.toFixed(5)]&&p.visible&&h<=this.max){f(h)}}}this._handleTicksVisibility()},_handleTicksVisibility:function(){if(!this.ticksMinor.visible){this.host.children(".jqx-gauge-tick-minor").css("visibility","hidden")}else{this.host.children(".jqx-gauge-tick-minor").css("visibility","visible")}if(!this.ticksMajor.visible){this.host.children(".jqx-gauge-tick-major").css("visibility","hidden")}else{this.host.children(".jqx-gauge-tick-major").css("visibility","visible")}},_getSize:function(e){if(e.toString().indexOf("%")>=0){e=(parseInt(e,10)/100)*this._innerRadius}e=parseInt(e,10);return e},_getDistance:function(e){return this._getSize(e)+(this._originalRadius-this._innerRadius)},_drawTick:function(s){var l=this.that;var j=s.angle,g=s.distance,q=s.size,k=l._outerBorderOffset(),e=l._originalRadius,i=e-g,m=i-q,h=e+k+i*Math.sin(j),o=e+k+i*Math.cos(j),f=e+k+m*Math.sin(j),n=e+k+m*Math.cos(j),p;s.style["class"]=l.toThemeProperty("jqx-gauge-tick-"+s.type);if(l._isVML){h=Math.round(h);f=Math.round(f);o=Math.round(o);n=Math.round(n)}p=l.renderer.line(h,o,f,n,s.style);l._ticks.push(p)},_addRanges:function(){var f="visible";if(!this.showRanges){f="hidden"}else{var e=this.ranges;for(var g=0;g<e.length;g+=1){this._addRange(e[g],f)}}},_getMaxRangeSize:function(){var f,h=-1,j,e;for(var g=0;g<this.ranges.length;g+=1){j=this.ranges[g].startWidth;e=this.ranges[g].endWidth;if(j>h){h=j}if(e>h){h=e}}return h},_getRangeDistance:function(i,e){var h=this._getLabelsDistance(),f=this._getDistance(i),g=this._getMaxRangeSize();if(this.labels.position==="outside"){if(h<f+this._getMaxTickSize()){return this._getDistance(this.ticksDistance)+g/2+this._getSize(this.ticksMajor.size)}}else{if(this.labels.position==="inside"){if(h+this._getMaxTickSize()<f){return this._getSize(this.border.size)+this._originalRadius/20}}}return f},_addRange:function(m,g){var n=this.that;if((n.int64===true&&(m._startValue64.lessThan(n._min64)||m._endValue64.greaterThan(n._max64)))||(n.int64===false&&(m.startValue<n.min||m.endValue>n.max))){return}var q=n.int64?n._getAngleByValue(m._startValue64):n._getAngleByValue(m.startValue),j=n.int64?n._getAngleByValue(m._endValue64):n._getAngleByValue(m.endValue);var o=n._originalRadius,f=o-n._getRangeDistance(m.startDistance,m.startWidth),s=o-n._getRangeDistance(m.endDistance,m.endWidth),l=m.startWidth,e=m.endWidth,k=n._outerBorderOffset(),i={x:o+k+f*Math.sin(q),y:o+k+f*Math.cos(q)},r={x:o+k+s*Math.sin(j),y:o+k+s*Math.cos(j)},t=n._getProjectionPoint(q,o+k,f,l),p=n._getProjectionPoint(j,o+k,s,e),h="default",u,m;if(Math.abs(j-q)>Math.PI){h="opposite"}if(n._isVML){u=n._rangeVMLRender(i,r,o,t,p,e,l,f,s,h)}else{u=n._rangeSVGRender(i,r,o,t,p,e,l,f,s,h)}m.style.visibility=g;m.style["class"]=n.toThemeProperty("jqx-gauge-range");m=n.renderer.path(u,m.style);n._ranges.push(m)},_rangeSVGRender:function(i,m,k,o,l,e,j,f,n,h){var p="",f=k-f,n=k-n,g=["0,1","0,0"];if(h==="opposite"){g=["1,1","1,0"]}p="M"+i.x+","+i.y+" ";p+="A"+(k-f)+","+(k-f)+" 100 "+g[0]+" "+m.x+","+m.y+" ";p+="L "+(l.x)+","+(l.y)+" ";p+="A"+(k-e-f)+","+(k-e-f)+" 100 "+g[1]+" "+(o.x)+","+(o.y)+" ";p+="L "+(i.x)+","+(i.y)+" ";p+="z";return p},_rangeVMLRender:function(p,m,h,w,i,l,n,q,s,f){h-=h-q+10;var o="",r=Math.floor(h+(n+l)/2),q=Math.floor(h-q),s=Math.floor(s),t={x:(w.x+i.x)/2,y:(w.y+i.y)/2},e=Math.sqrt((i.x-w.x)*(i.x-w.x)+(i.y-w.y)*(i.y-w.y)),v=Math.floor(t.x+Math.sqrt(h*h-(e/2)*(e/2))*(w.y-i.y)/e),u=Math.floor(t.y+Math.sqrt(h*h-(e/2)*(e/2))*(i.x-w.x)/e),x={x:(p.x+m.x)/2,y:(p.y+m.y)/2},g=Math.sqrt((m.x-p.x)*(m.x-p.x)+(m.y-p.y)*(m.y-p.y)),k=Math.floor(x.x+Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(p.y-m.y)/g),j=Math.floor(x.y+Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(m.x-p.x)/g);if(f==="opposite"){v=Math.floor(t.x-Math.sqrt(h*h-(e/2)*(e/2))*(w.y-i.y)/e);u=Math.floor(t.y-Math.sqrt(h*h-(e/2)*(e/2))*(i.x-w.x)/e);k=Math.floor(x.x-Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(p.y-m.y)/g);j=Math.floor(x.y-Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(m.x-p.x)/g)}h=Math.floor(h);m={x:Math.floor(m.x),y:Math.floor(m.y)};p={x:Math.floor(p.x),y:Math.floor(p.y)};w={x:Math.floor(w.x),y:Math.floor(w.y)};i={x:Math.floor(i.x),y:Math.floor(i.y)};o="m "+m.x+","+m.y;o+="at "+(k-r)+" "+(j-r)+" "+(r+k)+" "+(r+j)+" "+m.x+","+m.y+" "+p.x+","+p.y;o+="l "+w.x+","+w.y;o+="m "+m.x+","+m.y;o+="l "+i.x+","+i.y;o+="at "+(v-h)+" "+(u-h)+" "+(h+v)+" "+(h+u)+" "+i.x+","+i.y+" "+w.x+","+w.y;o+="qx "+w.x+" "+w.y;return o},_getProjectionPoint:function(i,f,h,g){var e={x:f+(h-g)*Math.sin(i),y:f+(h-g)*Math.cos(i)};return e},_addLabels:function(g){var f=this;if(f.labels.visible){var i=this._getDistance(this._getLabelsDistance()),h;if(f.int64===true){for(var e=new d.jqx.math().fromNumber(f.min.toString(),10);e.lessThanOrEqual(f._max64);e=e.add(f.labels._interval64)){if(e.lessThan(f._min64)||e.greaterThan(f._max64)){break}this._addLabel({angle:this._getAngleByValue(e),value:e.toString(),distance:i,style:this.labels.className})}}else{for(var e=this.min;e<=this.max;e+=this.labels.interval){this._addLabel({angle:this._getAngleByValue(e),value:this.labels.interval>=1?e:new Number(e).toFixed(2),distance:i,style:this.labels.className})}}}},_getLabelsDistance:function(){var g=this._getMaxLabelSize(),f=this._getDistance(this.labels.distance),e=this._getDistance(this.ticksDistance);g=g.width;if(this.labels.position==="inside"){return e+g-5}else{if(this.labels.position==="outside"){if(f<(e-g*1.5)){return f}return Math.max(e-g*1.5,0.6*g)}}return this.labels.distance},_addLabel:function(s){var j=this.that;var g=s.angle,f=j._originalRadius,p=f-s.distance,h=j.labels.offset,q=j.labels.formatValue,i=j._outerBorderOffset(),n=f+i+p*Math.sin(g)+h[0],l=f+i+p*Math.cos(g)+h[1],o=s.value,k=s.style||"",e,m;if(typeof q==="function"){o=q(o)}e=j.renderer.measureText(o,0,{"class":k});m=j.renderer.text(o,Math.round(n)-e.width/2,Math.round(l),e.width,e.height,0,{"class":this.toThemeProperty("jqx-gauge-label")});j._labels.push(m)},_addCaption:function(){if(this.caption.visible!==false){var i=this.that;var k=i.caption.value,j=i.toThemeProperty("jqx-gauge-caption"),g=i.caption.offset,m=i.renderer.measureText(k,0,{"class":j}),h=i._getPosition(this.caption.position,m,g),e=i.caption.style,f=i._outerBorderOffset(),l=i.renderer.text(k,h.left+f,h.top+f,m.width,m.height,0,{"class":j});this._caption=l}},_getPosition:function(e,f,j){var i=0,h=0,g=this._originalRadius;switch(e){case"left":i=(g-f.width)/2;h=g-f.height/2;break;case"right":i=g+(g-f.width)/2;h=g-f.height/2;break;case"bottom":i=(2*g-f.width)/2;h=(g+2*g-f.height)/2;break;default:i=(2*g-f.width)/2;h=(g+f.height)/2;break}return{left:i+j[0],top:h+j[1]}},_addPointer:function(){var g="visible";if(!this.pointer.visible){g="hidden"}var f=this._originalRadius,i=this._getSize(this.pointer.length),j=i*0.9,k=this._getAngleByValue(this.value),e=this.pointer.pointerType,h;h=this._computePointerPoints(this._getSize(this.pointer.width),k,i,e!=="default");this._pointer=this.renderer.path(h,this.pointer.style);d(this._pointer).css("visibility",g)},_computePointerPoints:function(e,g,h,f){if(!f){return this._computeArrowPoints(e,g,h)}else{return this._computeRectPoints(e,g,h)}},_computeArrowPoints:function(n,g,k){var f=this._originalRadius-0.5,l=Math.sin(g),q=Math.cos(g),j=this._outerBorderOffset(),o=f+j+k*l,m=f+j+k*q,i=f+j+n*q,e=f+j-n*l,h=f+j-n*q,s=f+j+n*l,p;if(this._isVML){i=Math.round(i);h=Math.round(h);e=Math.round(e);s=Math.round(s);o=Math.round(o);m=Math.round(m)}p="M "+i+","+e+" L "+h+","+s+" L "+o+","+m+"";return p},_computeRectPoints:function(q,i,o){var f=this._originalRadius,p=Math.sin(i),t=Math.cos(i),u=o,l=this._outerBorderOffset(),n=f+l-q*t+o*p,h=f+l+q*p+o*t,m=f+l+q*t+o*p,g=f+l-q*p+o*t,k=f+l+q*t,e=f+l-q*p,j=f+l-q*t,v=f+l+q*p,s;if(this._isVML){k=Math.round(k);j=Math.round(j);e=Math.round(e);v=Math.round(v);n=Math.round(n);h=Math.round(h);m=Math.round(m);g=Math.round(g)}s="M "+k+","+e+" L "+j+","+v+" L "+n+","+h+" "+m+","+g;return s},_getAngleByValue:function(s){var v=this,p=v.startAngle,t=p-v.endAngle,e,k,o,n,h;if(v.int64===true){s=new d.jqx.math().fromString(s.toString(),10);e=v._min64;k=v._max64;o=k.subtract(e);n=s.subtract(e);var f=o.toString(),j,r=n.toString(),g;if(f.length>15){var u=f.length-15;f=f.slice(0,15)+"."+f.slice(15);j=parseFloat(f);if(r.length>u){var q=r.length-u;r=r.slice(0,q)+"."+r.slice(q)}else{if(r.length===u){r="0."+r}else{var m="0.";for(var l=0;l<u-r.length;l++){m+="0"}r=m+""+r}}g=parseFloat(r)}else{j=o.toNumber();g=n.toNumber()}h=t*g/j+p+Math.PI}else{e=v.min;k=v.max;o=k-e;n=s-e;h=t*n/o+p+Math.PI}return h},_setValue:function(h){var f=this;if((f.int64===true&&h.lessThanOrEqual(f._max64)&&h.greaterThanOrEqual(f._min64))||(f.int64===false&&h<=f.max&&h>=f.min)){var i=f._getAngleByValue(h),e=f.pointer.pointerType,g=f._computePointerPoints(f._getSize(f.pointer.width),i,f._getSize(f.pointer.length),e!=="default");if(f._isVML){if(f._pointer){d(f._pointer).remove()}f._pointer=f.renderer.path(g,f.pointer.style)}else{f.renderer.attr(f._pointer,{d:g})}if(f.int64===true){f.value=h.toString();f._value64=new d.jqx.math().fromString(f.value,10)}else{f.value=h}d.jqx.aria(f,"aria-valuenow",h.toString())}},resize:function(f,e){this.width=f;this.height=e;this.refresh()},propertyChangedHandler:function(e,f,h,g){if(g==h){return}if(f=="min"){if(e.int64===true){e._min64=new d.jqx.math().fromString(g.toString(),10)}else{this.min=parseInt(g)}d.jqx.aria(e,"aria-valuemin",g)}if(f=="max"){if(e.int64===true){e._max64=new d.jqx.math().fromString(g.toString(),10)}else{this.max=parseInt(g)}d.jqx.aria(e,"aria-valuemax",g)}if(f==="disabled"){if(g){this.disable()}else{this.enable()}d.jqx.aria(this,"aria-disabled",g)}else{if(f==="value"){this.value=h;this.setValue(g)}else{if(f==="startAngle"){this.startAngle=this.startAngle*Math.PI/180+Math.PI/2}else{if(f==="endAngle"){this.endAngle=this.endAngle*Math.PI/180+Math.PI/2}else{if(f==="colorScheme"){this.pointer.style=null;this.cap.style=null}else{if(f==="radius"){this._radius=g}}}}if(f!=="animationDuration"&&f!=="easing"){this._refresh()}}}if(this.renderer instanceof d.jqx.HTML5Renderer){this.renderer.refresh()}},_tickConstructor:function(f,e){if(this.host){return new this._tickConstructor(f,e)}f=f||{};this.size=e._validatePercentage(f.size,"10%");if(e.int64===false){this.interval=parseFloat(f.interval)}else{this.interval=f.interval}if(!this.interval){this.interval=5}this.style=f.style||{stroke:"#898989","stroke-width":1};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}},_capConstructor:function(g,e){var f=e._getColorScheme(e.colorScheme)[0];if(this.host){return new this._capConstructor(g,e)}g=g||{};if(typeof g.visible==="undefined"){this.visible=true}else{this.visible=g.visible}this.size=e._validatePercentage(g.size,"4%");this.style=g.style||{fill:f,"stroke-width":"1px",stroke:f,"z-index":30}},_pointerConstructor:function(g,e){var f=e._getColorScheme(e.colorScheme)[0];if(this.host){return new this._pointerConstructor(g,e)}g=g||{};if(typeof g.visible==="undefined"){this.visible=true}else{this.visible=g.visible}this.pointerType=g.pointerType;if(this.pointerType!=="default"&&this.pointerType!=="rectangle"){this.pointerType="default"}this.style=g.style||{"z-index":0,stroke:f,fill:f,"stroke-width":1};this.length=e._validatePercentage(g.length,"70%");this.width=e._validatePercentage(g.width,"2%")},_labelsConstructor:function(f,e){if(this.host){return new this._labelsConstructor(f,e)}f=f||{};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}this.offset=f.offset;if(!(this.offset instanceof Array)){this.offset=[0,-10]}if(!f.interval){f.interval=20}if(e.int64===true){this.interval=f.interval;this._interval64=new d.jqx.math().fromString(f.interval.toString(),10)}else{this.interval=parseFloat(f.interval)}this.distance=e._validatePercentage(f.distance,"38%");this.position=f.position;if(this.position!=="inside"&&this.position!=="outside"){this.position="none"}this.formatValue=f.formatValue;if(typeof this.formatValue!=="function"){this.formatValue=function(g){return g}}},_captionConstructor:function(f,e){if(this.host){return new this._captionConstructor(f,e)}f=f||{};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}this.value=f.value||"";this.position=f.position;if(this.position!=="bottom"&&this.position!=="top"&&this.position!=="left"&&this.position!=="right"){this.position="bottom"}this.offset=f.offset;if(!(this.offset instanceof Array)){this.offset=[0,0]}},_rangeConstructor:function(f,e){if(this.host){return new this._rangeConstructor(f,e)}f=f||{};this.startDistance=e._validatePercentage(f.startDistance,"5%");this.endDistance=e._validatePercentage(f.endDistance,"5%");this.style=f.style||{fill:"#000000",stroke:"#111111"};this.startWidth=parseFloat(f.startWidth,10);if(!this.startWidth){this.startWidth=10}this.startWidth=Math.max(this.startWidth,2);this.endWidth=parseFloat(f.endWidth,10);if(!this.endWidth){this.endWidth=10}this.endWidth=Math.max(this.endWidth,2);if(f.startValue===undefined){f.startValue=0}if(f.endValue===undefined){f.endValue=100}if(e.int64===true){this.startValue=f.startValue;this.endValue=f.endValue;this._startValue64=new d.jqx.math().fromString(f.startValue.toString(),10);this._endValue64=new d.jqx.math().fromString(f.endValue.toString(),10)}else{this.startValue=parseFloat(f.startValue,10);this.endValue=parseFloat(f.endValue,10)}},_borderConstructor:function(f,e){if(this.host){return new this._borderConstructor(f,e)}f=f||{};this.size=e._validatePercentage(f.size,"10%");this.style=f.style||{stroke:"#cccccc"};if(typeof f.showGradient==="undefined"){this.showGradient=true}else{this.showGradient=f.showGradient}if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}}};var c={_events:["valueChanging","valueChanged"],_animationTimeout:10,_schemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],_getScale:function(e,g,f){if(e&&e.toString().indexOf("%")>=0){e=parseInt(e,10)/100;return f[g]()*e}return parseInt(e,10)},_removeElements:function(){this.host.children(".chartContainer").remove();this.host.children("#tblChart").remove()},_getMaxLabelSize:function(){var h=this.max,e=this.min;if(this.labels.interval<1){e=new Number(e).toFixed(2);h=new Number(h).toFixed(2)}var g=this.renderer.measureText(h,0,{"class":this.toThemeProperty("jqx-gauge-label")}),f=this.renderer.measureText(e,0,{"class":this.toThemeProperty("jqx-gauge-label")});if(f.width>g.width){return f}return g},disable:function(){this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))},enable:function(){this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))},destroy:function(){var e=this;if(e._timeout){clearTimeout(this._timeout)}e._timeout=null;d.jqx.utilities.resize(e.host,null,true);e._removeElements();e.renderer.clear();e.renderer=null;var f=d.data(e.element,"jqxGauge");if(f){delete f.instance}e.host.children().remove();e._caption=null;e._caption=null;e._pointer=null;e._labels=[];e._cap=null;e._ticks=[];e._ranges=[];e._border=null;e._gauge=null;e._caption=null;e.renderer=null;e._animations=[];e.host.removeData();e.host.removeClass();e.host.remove();e.that=null;e.element=null;e._gaugeParent=null;delete e._gaugeParent;delete e.element;delete e.host},_validatePercentage:function(f,e){if(parseFloat(f)!==0&&(!f||!parseInt(f,10))){f=e}return f},_getColorScheme:function(f){var e;for(var g=0;g<this._schemes.length;g+=1){e=this._schemes[g];if(e.name===f){return e.colors}}return null},setValue:function(f,g){var e=this;if(!e.disabled){g=g||e.animationDuration||0;if(e.int64===true){if(typeof f==="number"){f=new d.jqx.math().fromNumber(f,10)}else{if(typeof f==="string"){f=new d.jqx.math().fromString(f,10)}}if(f.greaterThan(e._max64)){f=new d.jqx.math().fromString(e._max64.toString(),10)}if(f.lessThan(e._min64)){f=new d.jqx.math().fromString(e._min64.toString(),10)}e._animate(e._value64,f,g)}else{if(f>e.max){f=e.max}if(f<e.min){f=e.min}e._animate(e.value,f,g)}d.jqx.aria(e,"aria-valuenow",f.toString())}},_animate:function(h,e,g){var f=this;if(f._timeout){f._endAnimation(f.int64?f._value64:f.value,false)}if(!g){f._endAnimation(e,true);return}f._animateHandler(h,e,0,g)},_animateHandler:function(i,e,h,g){var f=this;if(h<=g){this._timeout=setTimeout(function(){if(f.int64===true){var k=e.subtract(i);var j=new d.jqx.math().fromNumber((d.easing[f.easing](h/g,h,0,1,g))*100,10);f._value64=i.add(k.multiply(j).div(new d.jqx.math().fromNumber(100,10)));f.value=f._value64.toString();f._setValue(f._value64)}else{f.value=i+(e-i)*d.easing[f.easing](h/g,h,0,1,g);f._setValue(f.value)}f._raiseEvent(0,{value:f.value.toString()});f._animateHandler(i,e,h+f._animationTimeout,g)},this._animationTimeout)}else{this._endAnimation(e,true)}},_endAnimation:function(e,f){clearTimeout(this._timeout);this._timeout=null;this._setValue(e);if(f){this._raiseEvent(1,{value:e.toString()})}},_getMaxTickSize:function(){return Math.max(this._getSize(this.ticksMajor.size),this._getSize(this.ticksMinor.size))},_raiseEvent:function(g,f){var h=d.Event(this._events[g]),e;h.args=f||{};e=this.host.trigger(h);return e}},a={defineInstance:function(){var e={int64:false,value:-50,max:40,min:-60,width:100,height:300,pointer:{},labels:{},animationDuration:1000,showRanges:{},ticksMajor:{size:"15%",interval:5},ticksMinor:{size:"10%",interval:2.5},ranges:[],easing:"easeOutCubic",colorScheme:"scheme01",disabled:false,rangesOffset:0,background:{},ticksPosition:"both",rangeSize:"5%",scaleStyle:null,ticksOffset:null,scaleLength:"90%",orientation:"vertical",aria:{"aria-valuenow":{name:"value",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},_originalColor:"",_width:null,_height:null,renderer:null};d.extend(true,this,e)},createInstance:function(){d.jqx.aria(this);this.host.css("overflow","hidden");this.host.addClass(this.toThemeProperty("jqx-widget"));var e=this;if(e.int64===true){if(!d.jqx.longInt){throw new Error("jqxGauge: Missing reference to jqxdata.js")}d.jqx.longInt(e);e._value64=new d.jqx.math().fromString(e.value.toString(),10);e._min64=new d.jqx.math().fromString(e.min.toString(),10);e._max64=new d.jqx.math().fromString(e.max.toString(),10)}d.jqx.utilities.resize(this.host,function(){e.refresh(false,false)})},val:function(e){if(arguments.length==0||typeof(e)=="object"){return this.value}this.setValue(e,0)},_initRenderer:function(e){if(!d.jqx.createRenderer){throw"Please include a reference to jqxdraw.js"}return d.jqx.createRenderer(this,e)},refresh:function(h,g){var e=this;if(!e.renderer){e._isVML=false;e.host.empty();e._initRenderer(e.host)}var f=e.renderer;if(!f){return}e._validateProperties();e._reset();e._init();e._performLayout();e._render();if(g!==false){e.setValue(e.value,1)}},_getBorderSize:function(){var f=1,e;if(this._isVML){f=0}if(this.background){e=(parseInt(this.background.style["stroke-width"],10)||f)/2;if(this._isVML){return Math.round(e)}return e}return f},_validateProperties:function(){this.background=this._backgroundConstructor(this.background,this);this.ticksOffset=this.ticksOffset||this._getDefaultTicksOffset();this.rangesOffset=this.rangesOffset||0;this.rangeSize=this._validatePercentage(this.rangeSize,5);this.ticksOffset[0]=this._validatePercentage(this.ticksOffset[0],"5%");this.ticksOffset[1]=this._validatePercentage(this.ticksOffset[1],"5%");this.ticksMinor=this._tickConstructor(this.ticksMinor,this);this.ticksMajor=this._tickConstructor(this.ticksMajor,this);this.scaleStyle=this.scaleStyle||this.ticksMajor.style;this.labels=this._labelsConstructor(this.labels,this);this.pointer=this._pointerConstructor(this.pointer,this);for(var e=0;e<this.ranges.length;e+=1){this.ranges[e]=this._rangeConstructor(this.ranges[e],this)}},_getDefaultTicksOffset:function(){if(this.orientation==="horizontal"){return["5%","36%"]}return["36%","5%"]},_handleOrientation:function(){if(this.orientation==="vertical"){d.extend(this,linearVerticalGauge)}else{d.extend(this,linearHorizontalGauge)}},_reset:function(){this.host.empty()},_performLayout:function(){var e=parseInt(this.background.style["stroke-width"],10)||1;this._width-=e;this._height-=e;this.host.css("padding",e/2)},_init:function(){var f=this._getBorderSize(),e;this._width=this._getScale(this.width,"width",this.host.parent())-3;this._height=this._getScale(this.height,"height",this.host.parent())-3;this.element.innerHTML="<div/>";this.host.width(this._width);this.host.height(this._height);this.host.children().width(this._width);this.host.children().height(this._height);this.renderer.init(this.host.children());e=this.renderer.getContainer();e.width(this._width);e.height(this._height)},_render:function(){this._renderBackground();this._renderTicks();this._renderLabels();this._renderRanges();this._renderPointer()},_renderBackground:function(){if(!this.background.visible){return}var g=this.background.style,f=d.jqx._rup(this._getBorderSize()),e="rect",h;g=this._handleShapeOptions(g);if(this.background.backgroundType==="roundedRectangle"&&this._isVML){e="roundrect"}if(!this._Vml){g.x=f;g.y=f}h=this.renderer.shape(e,g);if(this._isVML){this._fixVmlRoundrect(h,g)}},_handleShapeOptions:function(g){var e=this.background.style.fill,f=this._getBorderSize();if(!e){e="#cccccc"}if(this.background.showGradient){if(e.indexOf("url")<0&&e.indexOf("#grd")<0){this._originalColor=e}else{e=this._originalColor}e=this.renderer._toLinearGradient(e,this.orientation==="horizontal",[[1,1.1],[90,1.5]])}this.background.style.fill=e;if(this.background.backgroundType==="roundedRectangle"){if(this._isVML){g.arcsize=this.background.borderRadius+"%"}else{g.rx=this.background.borderRadius;g.ry=this.background.borderRadius}}g.width=this._width-1;g.height=this._height-1;return g},_fixVmlRoundrect:function(g,f){var e=this._getBorderSize();g.style.position="absolute";g.style.left=e;g.style.top=e;g.style.width=this._width-1;g.style.height=this._height-1;g.strokeweight=0;delete f.width;delete f.height;delete f.arcsize;this.renderer.attr(g,f)},_renderTicks:function(){var k=this.ticksMinor,l=this.ticksMajor,f,i,h,g,e,m,j;if(this.int64){f=this._max64.subtract(this._min64);if(f.isNegative()){f=f.negate()}i=l._interval64;h=k._interval64;g=f.div(i);e=f.div(h)}else{f=Math.abs(this.max-this.min);i=l.interval;h=k.interval;g=f/i;e=f/h}m={size:this._getSize(l.size),style:l.style,visible:l.visible,interval:i};j={size:this._getSize(k.size),style:k.style,visible:k.visible,interval:h,checkOverlap:true};if(this.ticksPosition==="near"||this.ticksPosition==="both"){this._ticksRenderHandler(m);this._ticksRenderHandler(j)}if(this.ticksPosition==="far"||this.ticksPosition==="both"){m.isFar=true;j.isFar=true;this._ticksRenderHandler(m);this._ticksRenderHandler(j)}this._renderConnectionLine()},_ticksRenderHandler:function(f){if(!f.visible){return}var i=this._getSize(this.ticksOffset[0],"width"),g=this._getSize(this.ticksOffset[1],"height"),e=this._getBorderSize(),h=this._calculateTickOffset()+this._getMaxTickSize();if(f.isFar){h+=f.size}this._drawTicks(f,e,h+e)},_drawTicks:function(j,h,l){var g=this,e;function f(m){e=g._valueToCoordinates(m);if(!j.checkOverlap||!g._overlapTick(m)){g._renderTick(j.size,e,j.style,l)}}if(this.int64===true){for(var k=new d.jqx.math().fromString(this._min64.toString(),10);k.lessThanOrEqual(this._max64);k=k.add(j.interval)){f(k)}}else{for(var k=this.min;k<=this.max;k+=j.interval){f(k)}}},_calculateTickOffset:function(){var f=this._getSize(this.ticksOffset[0],"width"),e=this._getSize(this.ticksOffset[1],"height"),g=e;if(this.orientation==="vertical"){g=f}return g},_overlapTick:function(e){if(this.int64===true){e=e.add(this._min64);if((e.modulo(this.ticksMinor._interval64)).equals(e.modulo(this.ticksMajor._interval64))){return true}else{return false}}else{e+=this.min;if(e%this.ticksMinor.interval===e%this.ticksMajor.interval){return true}return false}},_renderConnectionLine:function(){if(!this.ticksMajor.visible&&!this.ticksMinor.visible){return}var f=this._getScaleLength(),e=this._getBorderSize(),h,j,i=this._getMaxTickSize(),g=i+e;if(this.int64===true){h=this._valueToCoordinates(this._max64);j=this._valueToCoordinates(this._min64)}else{h=this._valueToCoordinates(this.max);j=this._valueToCoordinates(this.min)}if(this.orientation==="vertical"){g+=this._getSize(this.ticksOffset[0],"width");this.renderer.line(g,h,g,j,this.scaleStyle)}else{g+=this._getSize(this.ticksOffset[1],"height");this.renderer.line(h,g,j,g,this.scaleStyle)}},_getScaleLength:function(){return this._getSize(this.scaleLength,(this.orientation==="vertical"?"height":"width"))},_renderTick:function(e,i,f,h){var g=this._handleTickCoordinates(e,i,h);this.renderer.line(Math.round(g.x1),Math.round(g.y1),Math.round(g.x2),Math.round(g.y2),f)},_handleTickCoordinates:function(e,g,f){if(this.orientation==="vertical"){return{x1:f-e,x2:f,y1:g,y2:g}}return{x1:g,x2:g,y1:f-e,y2:f}},_getTickCoordinates:function(f,g){var e=this._handleTickCoordinates(f,0,this._calculateTickOffset());if(this.orientation==="vertical"){e=e.x1}else{e=e.y1}e+=f;return e},_renderLabels:function(){if(!this.labels.visible){return}var g=this._getSize(this.ticksOffset[0],"width"),i=this._getMaxTickSize(),k=this.labels.position,j="height",f=this._getBorderSize(),h=this._calculateTickOffset()+i,e;if(this.orientation==="vertical"){g=this._getSize(this.ticksOffset[1],"height");j="width"}e=this._getMaxLabelSize()[j];if(k==="near"||k==="both"){this._labelListRender(h-i-e+f,g+f,e,"near")}if(k==="far"||k==="both"){this._labelListRender(h+i+e+f,g+f,e,"far")}},_labelListRender:function(k,e,f,m){var h,n,j,o,g=this._getScaleLength();k+=this._getSize(this.labels.offset);if(this.int64===true){h=this.labels._interval64;n=(this._max64.subtract(this._min64)).div(h).toNumber();o=(this.orientation==="vertical")?this._max64:this._min64}else{h=this.labels.interval;n=Math.abs(this.max-this.min)/h;o=(this.orientation==="vertical")?this.max:this.min}j=g/n;for(var l=0;l<=n;l+=1){this._renderLabel(e,m,k,f,o);if(this.int64===true){o=(this.orientation==="vertical")?o.subtract(h):o.add(h)}else{o+=(this.orientation==="vertical")?-h:h}e+=j}},_renderLabel:function(f,m,j,g,n){var i={"class":this.toThemeProperty("jqx-gauge-label")},h=this.labels.interval,l,e,k;k=this.labels.formatValue(n.toString(),m);e=this.renderer.measureText(k,0,i);if(this.orientation==="vertical"){l=(m==="near")?g-e.width:0;this.renderer.text(k,Math.round(j)+l-g/2,Math.round(f-e.height/2),e.width,e.height,0,i)}else{l=(m==="near")?g-e.height:0;this.renderer.text(k,Math.round(f-e.width/2),Math.round(j)+l-g/2,e.width,e.height,0,i)}},_renderRanges:function(){if(!this.showRanges){return}var h=(this.orientation==="vertical")?"width":"height",j=this._getSize(this.rangesOffset,h),g=this._getSize(this.rangeSize,h),e;for(var f=0;f<this.ranges.length;f+=1){e=this.ranges[f];e.size=g;this._renderRange(e,j)}},_renderRange:function(q,k){var h=this._getScaleLength(),j=this._getBorderSize(),i=this._getSize(this.ticksOffset[0],"width"),g=this._getSize(this.ticksOffset[1],"height"),n=this._getMaxTickSize(),p=this._getSize(q.size),m,f;if(this.int64===true){m=this._valueToCoordinates(q._endValue64);f=q._startValue64;if(f.lessThan(this._min64)){f=new d.jqx.math().fromString(this._min64.toString(),10)}}else{m=this._valueToCoordinates(q.endValue);f=q.startValue;if(f<this.min){f=this.min}}var o=Math.abs(this._valueToCoordinates(f)-m),l,e;if(this.orientation==="vertical"){l=this.renderer.rect(i+n+k-p+j,m,q.size,o,q.style)}else{e=o;l=this.renderer.rect(this._valueToCoordinates(q.startValue),g+n+j,e,q.size,q.style)}this.renderer.attr(l,q.style)},_renderPointer:function(){if(!this.pointer.visible){return}if(this.pointer.pointerType==="default"){this._renderColumnPointer()}else{this._renderArrowPointer()}},_renderColumnPointer:function(){this._pointer=this.renderer.rect(0,0,0,0,this.pointer.style);this.renderer.attr(this._pointer,this.pointer.style);if(this.int64===true){this._setValue(this._value64)}else{this._setValue(this.value)}},_renderArrowPointer:function(){var e=this._getArrowPathByValue(0);this._pointer=this.renderer.path(e,this.pointer.style)},_renderArrowPointerByValue:function(e){var f=this._getArrowPathByValue(e);this._pointer=this.renderer.path(f,this.pointer.style)},_getArrowPathByValue:function(o){var i=this._getBorderSize(),m=Math.ceil(this._valueToCoordinates(o))+i,g=i,h=Math.ceil(this._getSize(this.ticksOffset[0],"width")),f=Math.ceil(this._getSize(this.ticksOffset[1],"height")),j=Math.ceil(this._getSize(this.pointer.offset)),n=Math.ceil(this._getMaxTickSize()),r=Math.ceil(this._getSize(this.pointer.size)),k=Math.ceil(Math.sqrt((r*r)/3)),q,l,p;if(this.orientation==="vertical"){g+=h+n+j;l=(j>=0)?g+r:g-r;q="M "+g+" "+m+" L "+l+" "+(m-k)+" L "+l+" "+(m+k)}else{var e=this._getMaxLabelSize()["height"];g+=h+n+j+e;if(this._isVML){g-=2}p=m;m=g;g=p;l=m-r;q="M "+g+" "+m+" L "+(g-k)+" "+l+" L "+(g+k)+" "+l}return q},_setValue:function(e){if(this.pointer.pointerType==="default"){this._performColumnPointerLayout(e)}else{this._performArrowPointerLayout(e)}this.value=e},_performColumnPointerLayout:function(h){var e,i,p,m=this._valueToCoordinates(h),k=this._getBorderSize(),j=this._getSize(this.ticksOffset[0],"width"),g=this._getSize(this.ticksOffset[1],"height"),n=this._getMaxTickSize(),f=this._getSize(this.pointer.size),l=this._getSize(this.pointer.offset),o={};if(this.int64===true){e=this._valueToCoordinates(this._min64)}else{e=this._valueToCoordinates(this.min)}p=Math.abs(e-m);if(this.orientation==="vertical"){i=j+n;o={left:i+l+1+k,top:m,height:p,width:f}}else{i=g+n;o={left:e,top:i+l-f-1+k,height:f,width:p}}this._setRectAttrs(o)},_performArrowPointerLayout:function(f){var e=this._getArrowPathByValue(f);if(this._isVML){if(this._pointer){d(this._pointer).remove()}this._renderArrowPointerByValue(f)}else{this.renderer.attr(this._pointer,{d:e})}},_setRectAttrs:function(e){if(!this._isVML){this.renderer.attr(this._pointer,{x:e.left});this.renderer.attr(this._pointer,{y:e.top});this.renderer.attr(this._pointer,{width:e.width});this.renderer.attr(this._pointer,{height:e.height})}else{this._pointer.style.top=e.top;this._pointer.style.left=e.left;this._pointer.style.width=e.width;this._pointer.style.height=e.height}},_valueToCoordinates:function(t){var n=this._getBorderSize(),k=this._getScaleLength(),l=this._getSize(this.ticksOffset[0],"width"),j=this._getSize(this.ticksOffset[1],"height"),q,f,h;if(this.int64===true){q=t.subtract(this._min64);if(q.isNegative()){q.negate()}f=this._max64.subtract(this._min64);if(f.isNegative()){f.negate()}var e=q.toString(),g=f.toString(),m,s;if(g.length>15){var u=g.length-15;g=g.slice(0,15)+"."+g.slice(15);s=parseFloat(g);if(e.length>u){var r=e.length-u;e=e.slice(0,r)+"."+e.slice(r)}else{if(e.length===u){e="0."+e}else{var p="0.";for(var o=0;o<u-e.length;o++){p+="0"}e=p+""+e}}m=parseFloat(e)}else{m=q.toNumber();s=f.toNumber()}h=(m/s)*k}else{q=Math.abs(this.min-t);f=Math.abs(this.max-this.min);h=(q/f)*k}if(this.orientation==="vertical"){return this._height-h-(this._height-j-k)+n}return h+(this._width-l-k)+n},_getSize:function(e,f){f=f||(this.orientation==="vertical"?"width":"height");if(e.toString().indexOf("%")>=0){e=(parseInt(e,10)/100)*this["_"+f]}e=parseInt(e,10);return e},propertyChangedHandler:function(f,g,i,h){if(h==i){return}if(g=="min"){if(f.int64===true){f._min64=new d.jqx.math().fromString(h.toString(),10)}else{this.min=parseInt(h)}d.jqx.aria(this,"aria-valuemin",h)}if(g=="max"){if(f.int64===true){f._max64=new d.jqx.math().fromString(h.toString(),10)}else{this.max=parseInt(h)}d.jqx.aria(this,"aria-valuemax",h)}if(g==="disabled"){if(h){this.disable()}else{this.enable()}d.jqx.aria(this,"aria-disabled",h)}else{if(g==="value"){if(this._timeout!=undefined){clearTimeout(this._timeout);this._timeout=null}this.value=i;this.setValue(h)}else{if(g==="colorScheme"){this.pointer.style=null}else{if(g==="orientation"&&i!==h){var e=this.ticksOffset[0];this.ticksOffset[0]=this.ticksOffset[1];this.ticksOffset[1]=e}}if(g!=="animationDuration"&&g!=="easing"){this.refresh()}}}if(this.renderer instanceof d.jqx.HTML5Renderer){this.renderer.refresh()}},_backgroundConstructor:function(g,e){if(this.host){return new this._backgroundConstructor(g,e)}var f={rectangle:true,roundedRectangle:true};g=g||{};this.style=g.style||{stroke:"#cccccc",fill:null};if(g.visible||typeof g.visible==="undefined"){this.visible=true}else{this.visible=false}if(f[g.backgroundType]){this.backgroundType=g.backgroundType}else{this.backgroundType="roundedRectangle"}if(this.backgroundType==="roundedRectangle"){if(typeof g.borderRadius==="number"){this.borderRadius=g.borderRadius}else{this.borderRadius=15}}if(typeof g.showGradient==="undefined"){this.showGradient=true}else{this.showGradient=g.showGradient}},resize:function(f,e){this.width=f;this.height=e;this.refresh()},_tickConstructor:function(f,e){if(this.host){return new this._tickConstructor(f,e)}this.size=e._validatePercentage(f.size,"10%");if(f.interval){this.interval=f.interval}else{this.interval=5}if(e.int64===true){this._interval64=new d.jqx.math().fromString(this.interval.toString(),10)}else{this.interval=parseFloat(this.interval)}this.style=f.style||{stroke:"#A1A1A1","stroke-width":"1px"};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}},_labelsConstructor:function(f,e){if(this.host){return new this._labelsConstructor(f,e)}this.position=f.position;if(this.position!=="far"&&this.position!=="near"&&this.position!=="both"){this.position="both"}if(typeof f.formatValue==="function"){this.formatValue=f.formatValue}else{this.formatValue=function(g){return g}}this.visible=f.visible;if(this.visible!==false&&this.visible!==true){this.visible=true}if(f.interval){this.interval=f.interval}else{this.interval=10}if(e.int64===true){this._interval64=new d.jqx.math().fromString(this.interval.toString(),10)}else{this.interval=parseFloat(this.interval)}this.offset=e._validatePercentage(f.offset,0)},_rangeConstructor:function(f,e){if(this.host){return new this._rangeConstructor(f,e)}if(f.startValue){this.startValue=f.startValue}else{this.startValue=e.min}if(f.endValue){this.endValue=f.endValue}else{this.endValue=e.max}if(e.int64===true){this._startValue64=new d.jqx.math().fromString(this.startValue.toString(),10);this._endValue64=new d.jqx.math().fromString(this.endValue.toString(),10);if(this._endValue64.lessThanOrEqual(this._startValue64)){this._endValue64=this._startValue64.add(new d.jqx.math().fromNumber(1,10));this.endValue=this._endValue64.toString()}}else{this.startValue=parseFloat(this.startValue);this.endValue=parseFloat(this.endValue);if(this.endValue<=this.startValue){this.endValue=this.startValue+1}}this.style=f.style||{fill:"#dddddd",stroke:"#dddddd"}},_pointerConstructor:function(g,e){if(this.host){return new this._pointerConstructor(g,e)}var f=e._getColorScheme(e.colorScheme)[0];this.pointerType=g.pointerType;if(this.pointerType!=="default"&&this.pointerType!=="arrow"){this.pointerType="default"}this.style=g.style||{fill:f,stroke:f,"stroke-width":1};this.size=e._validatePercentage(g.size,"7%");this.visible=g.visible;if(this.visible!==true&&this.visible!==false){this.visible=true}this.offset=e._validatePercentage(g.offset,0)}};d.extend(b,c);d.extend(a,c);d.jqx.jqxWidget("jqxLinearGauge","",{});d.jqx.jqxWidget("jqxGauge","",{});d.extend(d.jqx._jqxGauge.prototype,b);d.extend(d.jqx._jqxLinearGauge.prototype,a)})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxCheckBox","",{});a.extend(a.jqx._jqxCheckBox.prototype,{defineInstance:function(){var b={animationShowDelay:300,animationHideDelay:300,width:null,height:null,boxSize:"13px",checked:false,hasThreeStates:false,disabled:false,enableContainerClick:true,locked:false,groupName:"",keyboardCheck:true,enableHover:true,hasInput:true,rtl:false,updated:null,disabledContainer:false,_canFocus:true,aria:{"aria-checked":{name:"checked",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}},events:["checked","unchecked","indeterminate","change"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},_addInput:function(){if(this.hasInput){if(this.input){this.input.remove()}var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}this.input.val(this.checked);this.host.attr("role","checkbox");a.jqx.aria(this)}},render:function(){this.init=true;var d=this;this.setSize();this.propertyChangeMap.width=function(h,j,i,k){d.setSize()};this.propertyChangeMap.height=function(h,j,i,k){d.setSize()};this._removeHandlers();if(this.checkbox){this.checkbox.remove();this.checkbox=null}if(this.checkMark){this.checkMark.remove();this.checkMark=null}if(this.box){this.box.remove();this.box=null}if(this.clear){this.clear.remove();this.clear=null}if(this.boxSize==null){this.boxSize=13}var g=parseInt(this.boxSize)+"px";var f="13px";var e=Math.floor((parseInt(this.boxSize)-13)/2);var b=e;e+="px";b+="px";if(this.boxSize!="13px"){this.checkbox=a('<div><div style="width: '+g+"; height: "+g+';"><span style="position: relative; left: '+e+"; top: "+b+"; width: "+f+"; height: "+f+';"></span></div></div>')}else{this.checkbox=a('<div><div style="width: '+g+"; height: "+g+';"><span style="width: '+g+"; height: "+g+';"></span></div></div>')}this.host.prepend(this.checkbox);if(!this.disabledContainer){if(!this.host.attr("tabIndex")){this.host.attr("tabIndex",0)}this.clear=a('<div style="clear: both;"></div>');this.host.append(this.clear)}this.checkMark=a(this.checkbox[0].firstChild.firstChild);this.box=this.checkbox;this.box.addClass(this.toThemeProperty("jqx-checkbox-default")+" "+this.toThemeProperty("jqx-fill-state-normal")+" "+this.toThemeProperty("jqx-rc-all"));if(this.disabled){this.disable()}if(!this.disabledContainer){this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-checkbox"))}if(this.locked&&!this.disabledContainer){this.host.css("cursor","auto")}var c=this.element.getAttribute("checked");if(c=="checked"||c=="true"||c==true){this.checked=true}this._addInput();this._render();this._addHandlers();this.init=false},refresh:function(b){if(!b){this.setSize();this._render()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}},_addHandlers:function(){var d=this;var c=a.jqx.mobile.isTouchDevice();var b="mousedown";if(c){b=a.jqx.mobile.getTouchEventName("touchend")}this.addHandler(this.box,b,function(e){if(!d.disabled&&!d.enableContainerClick&&!d.locked){d.toggle();if(d.updated){e.owner=d;d.updated(e,d.checked,d.oldChecked)}if(e.preventDefault){e.preventDefault()}return false}});if(!this.disabledContainer){this.addHandler(this.host,"keydown",function(e){if(!d.disabled&&!d.locked&&d.keyboardCheck){if(e.keyCode==32){if(!d._canFocus){return true}d.toggle();if(d.updated){e.owner=d;d.updated(e,d.checked,d.oldChecked)}if(e.preventDefault){e.preventDefault()}return false}}});this.addHandler(this.host,b,function(e){if(!d.disabled&&d.enableContainerClick&&!d.locked){d.toggle();if(e.preventDefault){e.preventDefault()}if(d._canFocus){d.focus()}return false}});this.addHandler(this.host,"selectstart",function(e){if(!d.disabled&&d.enableContainerClick){if(e.preventDefault){e.preventDefault()}return false}});this.addHandler(this.host,"mouseup",function(e){if(!d.disabled&&d.enableContainerClick){if(e.preventDefault){e.preventDefault()}}});this.addHandler(this.host,"focus",function(e){if(!d.disabled&&!d.locked){if(!d._canFocus){return true}if(d.enableHover){d.box.addClass(d.toThemeProperty("jqx-checkbox-hover"))}d.box.addClass(d.toThemeProperty("jqx-fill-state-focus"));if(e.preventDefault){e.preventDefault()}d.hovered=true;return false}});this.addHandler(this.host,"blur",function(e){if(!d.disabled&&!d.locked){if(!d._canFocus){return true}if(d.enableHover){d.box.removeClass(d.toThemeProperty("jqx-checkbox-hover"))}d.box.removeClass(d.toThemeProperty("jqx-fill-state-focus"));if(e.preventDefault){e.preventDefault()}d.hovered=false;return false}});this.addHandler(this.host,"mouseenter",function(e){if(d.locked){d.host.css("cursor","arrow")}if(d.enableHover){if(!d.disabled&&d.enableContainerClick&&!d.locked){d.box.addClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.addClass(d.toThemeProperty("jqx-fill-state-hover"));if(e.preventDefault){e.preventDefault()}d.hovered=true;return false}}});this.addHandler(this.host,"mouseleave",function(e){if(d.enableHover){if(!d.disabled&&d.enableContainerClick&&!d.locked){d.box.removeClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.removeClass(d.toThemeProperty("jqx-fill-state-hover"));if(e.preventDefault){e.preventDefault()}d.hovered=false;return false}}});this.addHandler(this.box,"mouseenter",function(){if(d.locked){return}if(!d.disabled&&!d.enableContainerClick){d.box.addClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.box,"mouseleave",function(){if(!d.disabled&&!d.enableContainerClick){d.box.removeClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.removeClass(d.toThemeProperty("jqx-fill-state-hover"))}})}},focus:function(){try{this.host.focus()}catch(b){}},_removeHandlers:function(){var c=a.jqx.mobile.isTouchDevice();var b="mousedown";if(c){b="touchend"}if(this.box){this.removeHandler(this.box,b);this.removeHandler(this.box,"mouseenter");this.removeHandler(this.box,"mouseleave")}this.removeHandler(this.host,b);this.removeHandler(this.host,"mouseup");this.removeHandler(this.host,"selectstart");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"blur");this.removeHandler(this.host,"focus")},_render:function(){if(!this.disabled){if(this.enableContainerClick){this.host.css("cursor","pointer")}else{if(!this.init){this.host.css("cursor","auto")}}}else{this.disable()}if(this.rtl){this.box.addClass(this.toThemeProperty("jqx-checkbox-rtl"));this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.updateStates()},_setState:function(c,b){if(this.checked!=c){this.checked=c;if(this.checked){this.checkMark[0].className=this.toThemeProperty("jqx-checkbox-check-checked")}else{if(this.checked==null){this.checkMark[0].className=this.toThemeProperty("jqx-checkbox-check-indeterminate")}else{this.checkMark[0].className=""}}}if(b===false||b===true){this.locked=b}},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object")){return this.checked}if(typeof b=="string"){if(b=="true"){this.check()}if(b=="false"){this.uncheck()}if(b==""){this.indeterminate()}}else{if(b==true){this.check()}if(b==false){this.uncheck()}if(b==null){this.indeterminate()}}return this.checked},check:function(){this.checked=true;var b=this;this.checkMark.removeClass();if(a.jqx.browser.msie||this.animationShowDelay==0){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-checked"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-checked"));this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}if(this.groupName!=null&&this.groupName.length>0){var c=a.find(this.toThemeProperty(".jqx-checkbox",true));a.each(c,function(){var d=a(this).jqxCheckBox("groupName");if(d==b.groupName&&this!=b.element){a(this).jqxCheckBox("uncheck")}})}this._raiseEvent("0",true);this._raiseEvent("3",{checked:true});if(this.input!=undefined){this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)}},uncheck:function(){this.checked=false;var b=this;if(a.jqx.browser.msie||this.animationHideDelay==0){if(b.checkMark[0].className!=""){b.checkMark[0].className=""}}else{this.checkMark.css("opacity",1);this.checkMark.stop().animate({opacity:0},this.animationHideDelay,function(){if(b.checkMark[0].className!=""){b.checkMark[0].className=""}})}this._raiseEvent("1");this._raiseEvent("3",{checked:false});if(this.input!=undefined){this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)}},indeterminate:function(){this.checked=null;this.checkMark.removeClass();if(a.jqx.browser.msie||this.animationShowDelay==0){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-indeterminate"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-indeterminate"));this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}this._raiseEvent("2");this._raiseEvent("3",{checked:null});if(this.input!=undefined){this.input.val(this.checked);a.jqx.aria(this,"aria-checked","undefined")}},toggle:function(){if(this.disabled){return}if(this.locked){return}if(this.groupName!=null&&this.groupName.length>0){if(this.checked!=true){this.checked=true;this.updateStates()}return}this.oldChecked=this.checked;if(this.checked==true){this.checked=this.hasThreeStates?null:false}else{this.checked=this.checked!=null}this.updateStates();if(this.input!=undefined){this.input.val(this.checked)}},updateStates:function(){if(this.checked){this.check()}else{if(this.checked==false){this.uncheck()}else{if(this.checked==null){this.indeterminate()}}}},disable:function(){this.disabled=true;if(this.checked==true){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-disabled"))}else{if(this.checked==null){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-indeterminate-disabled"))}}this.box.addClass(this.toThemeProperty("jqx-checkbox-disabled-box"));this.host.addClass(this.toThemeProperty("jqx-checkbox-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.box.addClass(this.toThemeProperty("jqx-checkbox-disabled"));a.jqx.aria(this,"aria-disabled",this.disabled)},enable:function(){if(this.checked==true){this.checkMark.removeClass(this.toThemeProperty("jqx-checkbox-check-disabled"))}else{if(this.checked==null){this.checkMark.removeClass(this.toThemeProperty("jqx-checkbox-check-indeterminate-disabled"))}}this.box.removeClass(this.toThemeProperty("jqx-checkbox-disabled-box"));this.host.removeClass(this.toThemeProperty("jqx-checkbox-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.box.removeClass(this.toThemeProperty("jqx-checkbox-disabled"));this.disabled=false;a.jqx.aria(this,"aria-disabled",this.disabled)},destroy:function(){this.host.remove()},_raiseEvent:function(g,e){if(this.init){return}var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(c=="enableContainerClick"&&!b.disabled&&!b.locked){if(d){b.host.css("cursor","pointer")}else{b.host.css("cursor","auto")}}if(c=="rtl"){if(d){b.box.addClass(b.toThemeProperty("jqx-checkbox-rtl"));b.host.addClass(b.toThemeProperty("jqx-rtl"))}else{b.box.removeClass(b.toThemeProperty("jqx-checkbox-rtl"));b.host.removeClass(b.toThemeProperty("jqx-rtl"))}}if(c=="boxSize"){b.render()}if(c=="theme"){a.jqx.utilities.setTheme(e,d,b.host)}if(c=="checked"){if(d!=e){switch(d){case true:b.check();break;case false:b.uncheck();break;case null:b.indeterminate();break}}}if(c=="disabled"){if(d!=e){if(d){b.disable()}else{b.enable()}}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxButtonGroup","",{});a.extend(a.jqx._jqxButtonGroup.prototype,{defineInstance:function(){var b={mode:"default",roundedCorners:true,disabled:false,enableHover:false,orientation:"horizontal",width:null,height:null,_eventsMap:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend")},_events:["selected","unselected","buttonclick"],_buttonId:{},_selected:null,_pressed:null,rtl:false,_baseId:"group_button",aria:{"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(b){var c=this;c._isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(c);c.addHandler(c.host,"selectstart",function(d){if(!c.disabled){d.preventDefault()}})},refresh:function(){var b=this;if(b.width){if(b.width.toString()&&b.width.indexOf("%")>=0){b.element.style.width=b.width}else{b.host.width(b.width)}}if(b.height){b.host.height(b.height)}b._refreshButtons()},render:function(){this.refresh()},resize:function(){this.refresh()},_getEvent:function(c){var b=this;if(b._isTouchDevice){var d=b._eventsMap[c]||c;d+="."+b.element.id;return d}c+="."+b.element.id;return c},_refreshButtons:function(){var f=this;if(f.lastElement){f.lastElement.remove()}f.lastElement=a("<div style='clear: both;'></div>");var c=f.host.children(),e=c.length,g;switch(f.mode){case"radio":f.host.attr("role","radiogroup");break;case"checkbox":case"default":f.host.attr("role","group");break}var d=new Number(100/e).toFixed(2);for(var b=0;b<e;b+=1){g=a(c[b]);if(f.width){if(f.orientation==="horizontal"){g.css("width",d+"%");g.css("box-sizing","border-box");g.css("-moz-box-sizing","border-box");g.css("white-space","nowrap");g.css("text-overflow","ellipsis");g.css("overflow","hidden")}else{g.css("box-sizing","border-box");g.css("-moz-box-sizing","border-box");g.css("width","100%")}}f._refreshButton(g,b,e)}f.lastElement.appendTo(f.host)},_refreshButton:function(c,b,d){(function(e){var f=this;e=f._render(e);f._removeStyles(e);f._addStyles(e,b,d);f._performLayout(e);f._removeButtonListeners(e);f._addButtonListeners(e);f._handleButtonId(e,b);if(f.mode=="radio"){e.attr("role","radio")}else{e.attr("role","button")}e.attr("disabled",f.disabled);if(f.disabled){e.addClass(f.toThemeProperty("jqx-fill-state-disabled"))}else{e.removeClass(f.toThemeProperty("jqx-fill-state-disabled"))}}).apply(this,[c])},destroy:function(b){var f=this;var d=f.host.children(),e=d.length,g;for(var c=0;c<e;c+=1){g=a(d[c]);f._removeStyles(g);f._removeButtonListeners(g)}if(b!=false){f.host.remove()}},_render:function(b){var c=this;if(b[0].tagName.toLowerCase()==="button"){return c._renderFromButton(b)}else{return c._renderButton(b)}},_renderButton:function(b){var c;b.wrapInner("<div/>");return b},_removeStyles:function(b){var c=this;var d=c.toThemeProperty;c.host.removeClass("jqx-widget");c.host.removeClass("jqx-rc-all");b.removeClass(d.call(this,"jqx-fill-state-normal"));b.removeClass(d.call(this,"jqx-group-button-normal"));b.removeClass(d.call(this,"jqx-rc-tl"));b.removeClass(d.call(this,"jqx-rc-bl"));b.removeClass(d.call(this,"jqx-rc-tr"));b.removeClass(d.call(this,"jqx-rc-br"));b.css("margin-left",0)},_addStyles:function(c,b,e){var d=this;var f=this.toThemeProperty;d.host.addClass(f.call(this,"jqx-widget"));d.host.addClass(f.call(this,"jqx-rc-all"));d.host.addClass(f.call(this,"jqx-buttongroup"));c.addClass(f.call(this,"jqx-button"));c.addClass(f.call(this,"jqx-group-button-normal"));c.addClass(f.call(this,"jqx-fill-state-normal"));if(d.roundedCorners){if(b===0){d._addRoundedCorners(c,true)}else{if(b===e-1){d._addRoundedCorners(c,false)}}}if(d.orientation=="horizontal"){c.css("margin-left",-parseInt(c.css("border-left-width"),10))}else{c.css("margin-top",-parseInt(c.css("border-left-width"),10))}},_addRoundedCorners:function(b,d){var c=this;var e=c.toThemeProperty;if(c.orientation=="horizontal"){if(d){b.addClass(e.call(this,"jqx-rc-tl"));b.addClass(e.call(this,"jqx-rc-bl"))}else{b.addClass(e.call(this,"jqx-rc-tr"));b.addClass(e.call(this,"jqx-rc-br"))}}else{if(d){b.addClass(e.call(this,"jqx-rc-tl"));b.addClass(e.call(this,"jqx-rc-tr"))}else{b.addClass(e.call(this,"jqx-rc-bl"));b.addClass(e.call(this,"jqx-rc-br"))}}},_centerContent:function(c,b){c.css({"margin-top":(b.height()-c.height())/2,"margin-left":(b.width()-c.width())/2});return c},_renderFromButton:function(b){var c=b.val();if(c==""){c=b.html()}var e;var d=b[0].id;b.wrap("<div/>");e=b.parent();e.attr("style",b.attr("style"));b.remove();a.jqx.utilities.html(e,c);e[0].id=d;return e},_performLayout:function(b){if(this.orientation=="horizontal"){if(this.rtl){b.css("float","right")}else{b.css("float","left")}}else{b.css("float","none")}this._centerContent(a(b.children()),b)},_mouseEnterHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)||!b.enableHover){return}var f=b.toThemeProperty;c.addClass(f.call(b,"jqx-group-button-hover"));c.addClass(f.call(b,"jqx-fill-state-hover"))},_mouseLeaveHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)||!b.enableHover){return}var f=b.toThemeProperty;c.removeClass(f.call(b,"jqx-group-button-hover"));c.removeClass(f.call(b,"jqx-fill-state-hover"))},_mouseDownHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)){return}b._pressed=c;var f=b.toThemeProperty;c.addClass(f.call(b,"jqx-group-button-pressed"));c.addClass(f.call(b,"jqx-fill-state-pressed"))},_mouseUpHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)){return}b._handleSelection(c);b._pressed=null;c=b._buttonId[c[0].id];b._raiseEvent(2,{index:c.num,button:c.btn})},_isDisabled:function(b){if(!b||!b[0]){return false}return this._buttonId[b[0].id].disabled},_documentUpHandler:function(d){var b=d.data.self,c=b._pressed;if(c&&!b._buttonId[c[0].id].selected){c.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._pressed=null}},_addButtonListeners:function(c){var e=this;var b=e.addHandler;var d=e._getEvent;b(c,d.call(e,"mouseenter"),e._mouseEnterHandler,{self:e});b(c,d.call(e,"mouseleave"),e._mouseLeaveHandler,{self:e});b(c,d.call(e,"mousedown"),e._mouseDownHandler,{self:e});b(c,d.call(e,"mouseup"),e._mouseUpHandler,{self:e});b(a(document),d.call(e,"mouseup"),e._documentUpHandler,{self:e})},_removeButtonListeners:function(c){var e=this;var b=e.removeHandler;var d=e._getEvent;b(c,d.call(e,"mouseenter"),e._mouseEnterHandler);b(c,d.call(e,"mouseleave"),e._mouseLeaveHandler);b(c,d.call(e,"mousedown"),e._mouseDownHandler);b(c,d.call(e,"mouseup"),e._mouseUpHandler);b(a(document),d.call(e,"mouseup"),e._documentUpHandler)},_handleSelection:function(b){var c=this;if(c.mode==="radio"){c._handleRadio(b)}else{if(c.mode==="checkbox"){c._handleCheckbox(b)}else{c._handleDefault(b)}}},_handleRadio:function(b){var d=this;var c=d._getSelectedButton();if(c&&c.btn[0].id!==b[0].id){d._unselectButton(c.btn,true)}for(var e in d._buttonId){d._buttonId[e].selected=true;d._unselectButton(d._buttonId[e].btn,false)}d._selectButton(b,true)},_handleCheckbox:function(c){var d=this;var b=d._buttonId[c[0].id];if(b.selected){d._unselectButton(b.btn,true)}else{d._selectButton(c,true)}},_handleDefault:function(b){var c=this;c._selectButton(b,false);for(var d in c._buttonId){c._buttonId[d].selected=true;c._unselectButton(c._buttonId[d].btn,false)}},_getSelectedButton:function(){var b=this;for(var c in b._buttonId){if(b._buttonId[c].selected){return b._buttonId[c]}}return null},_getSelectedButtons:function(){var c=this;var b=[];for(var d in c._buttonId){if(c._buttonId[d].selected){b.push(c._buttonId[d].num)}}return b},_getButtonByIndex:function(b){var c=this;var e;for(var d in c._buttonId){if(c._buttonId[d].num===b){return c._buttonId[d]}}return null},_selectButton:function(c,e){var d=this;var b=d._buttonId[c[0].id];if(b.selected){return}var f=d.toThemeProperty;b.btn.addClass(f.call(this,"jqx-group-button-pressed"));b.btn.addClass(f.call(this,"jqx-fill-state-pressed"));b.selected=true;if(e){d._raiseEvent(0,{index:b.num,button:b.btn})}a.jqx.aria(b.btn,"aria-checked",true)},_unselectButton:function(c,e){var d=this;var b=d._buttonId[c[0].id];if(!b.selected){return}var f=d.toThemeProperty;b.btn.removeClass(f.call(this,"jqx-group-button-pressed"));b.btn.removeClass(f.call(this,"jqx-fill-state-pressed"));b.selected=false;if(e){d._raiseEvent(1,{index:b.num,button:b.btn})}a.jqx.aria(b.btn,"aria-checked",false)},setSelection:function(b){var d=this;if(b===-1){d.clearSelection();return}if(d.mode==="checkbox"){if(typeof b==="number"){d._setSelection(b)}else{for(var c=0;c<b.length;c+=1){d._setSelection(b[c])}}}else{if(typeof b==="number"&&d.mode==="radio"){d._setSelection(b)}}},_setSelection:function(b){var d=this;var c=d._getButtonByIndex(b);if(c){d._handleSelection(c.btn)}},getSelection:function(){var b=this;if(b.mode==="radio"){if(b._getSelectedButton()){return b._getSelectedButton().num}}else{if(b.mode==="checkbox"){return b._getSelectedButtons()}}return undefined},disable:function(){var c=this;c.disabled=true;var d;for(var b in c._buttonId){d=c._buttonId[b];c.disableAt(d.num)}a.jqx.aria(c,"aria-disabled",true)},enable:function(){var c=this;c.disabled=false;var d;for(var b in c._buttonId){d=c._buttonId[b];c.enableAt(d.num)}a.jqx.aria(c,"aria-disabled",false)},disableAt:function(b){var d=this;var c=d._getButtonByIndex(b);if(!c.disabled){c.disabled=true;c.btn.addClass(d.toThemeProperty("jqx-fill-state-disabled"))}},enableAt:function(b){var d=this;var c=d._getButtonByIndex(b);if(c.disabled){c.disabled=false;c.btn.removeClass(d.toThemeProperty("jqx-fill-state-disabled"))}},_handleButtonId:function(b,d){var f=b[0].id,e={btn:b,num:d,selected:false},c;if(!f){f=this._baseId+b.index()}b[0].id=f;this._buttonId[f]=e;return f},_raiseEvent:function(d,c){var b=a.Event(this._events[d]);b.args=c;return this.host.trigger(b)},_unselectAll:function(){for(var b in this._buttonId){this._unselectButton(this._buttonId[b].btn,false)}},clearSelection:function(){this._unselectAll()},propertyChangedHandler:function(b,c,e,d){if(c=="theme"&&d!=null){a.jqx.utilities.setTheme(e,d,b.host)}if(c==="mode"){b._unselectAll();b.refresh();return}else{if(c==="disabled"){if(d){b.disable()}else{b.enable()}}else{b.refresh()}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxListBox","",{});a.extend(a.jqx._jqxListBox.prototype,{defineInstance:function(){var b={disabled:false,width:null,height:null,items:new Array(),multiple:false,selectedIndex:-1,selectedIndexes:new Array(),source:null,scrollBarSize:a.jqx.utilities.scrollBarSize,enableHover:true,enableSelection:true,visualItems:new Array(),groups:new Array(),equalItemsWidth:true,itemHeight:-1,visibleItems:new Array(),emptyGroupText:"Group",checkboxes:false,hasThreeStates:false,autoHeight:false,autoItemsHeight:false,roundedcorners:true,touchMode:"auto",displayMember:"",groupMember:"",valueMember:"",searchMember:"",searchMode:"startswithignorecase",incrementalSearch:true,incrementalSearchDelay:1000,incrementalSearchKeyDownDelay:300,allowDrag:false,allowDrop:true,dropAction:"default",touchModeStyle:"auto",keyboardNavigation:true,enableMouseWheel:true,multipleextended:false,selectedValues:new Array(),emptyString:"",rtl:false,rendered:null,renderer:null,dragStart:null,dragEnd:null,focusable:true,ready:null,_checkForHiddenParent:true,autoBind:true,_renderOnDemand:false,filterable:false,filterHeight:27,filterPlaceHolder:"Looking for",filterDelay:100,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["select","unselect","change","checkChange","dragStart","dragEnd","bindingComplete"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;if(a.jqx.utilities.scrollBarSize!=15){b.scrollBarSize=a.jqx.utilities.scrollBarSize}if(b.width==null){b.width=200}if(b.height==null){b.height=200}b.render();var d=b;a.jqx.utilities.resize(b.host,function(){d._updateSize()},false,b._checkForHiddenParent)},resize:function(c,b){this.width=c;this.height=b;this._updateSize()},render:function(){var m=this;var l=m.element.nodeName.toLowerCase();if(l=="select"||l=="ul"||l=="ol"){m.field=m.element;if(m.field.className){m._className=m.field.className}var i={title:m.field.title};if(m.field.id.length){i.id=m.field.id.replace(/[^\w]/g,"_")+"_jqxListBox"}else{i.id=a.jqx.utilities.createId()+"_jqxListBox"}var b=a("<div></div>",i);if(!m.width){m.width=a(m.field).width()}if(!m.height){m.height=a(m.field).outerHeight()}a(m.field).hide().after(b);var f=m.host.data();m.host=b;m.host.data(f);m.element=b[0];m.element.id=m.field.id;m.field.id=i.id;if(m._className){m.host.addClass(m._className);a(m.field).removeClass(m._className)}if(m.field.tabIndex){var c=m.field.tabIndex;m.field.tabIndex=-1;m.element.tabIndex=c}}m.element.innerHTML="";var m=m;var h=m.element.className;h+=" "+m.toThemeProperty("jqx-listbox");h+=" "+m.toThemeProperty("jqx-reset");h+=" "+m.toThemeProperty("jqx-rc-all");h+=" "+m.toThemeProperty("jqx-widget");h+=" "+m.toThemeProperty("jqx-widget-content");m.element.className=h;var g=false;if(m.width!=null&&m.width.toString().indexOf("%")!=-1){m.host.width(m.width);g=true}if(m.height!=null&&m.height.toString().indexOf("%")!=-1){m.host.height(m.height);if(m.host.height()==0){m.host.height(200)}g=true}if(m.width!=null&&m.width.toString().indexOf("px")!=-1){m.host.width(m.width)}else{if(m.width!=undefined&&!isNaN(m.width)){m.element.style.width=parseInt(m.width)+"px"}}if(m.height!=null&&m.height.toString().indexOf("px")!=-1){m.host.height(m.height)}else{if(m.height!=undefined&&!isNaN(m.height)){m.element.style.height=parseInt(m.height)+"px"}}if(m.multiple||m.multipleextended||m.checkboxes){a.jqx.aria(m,"aria-multiselectable",true)}else{a.jqx.aria(m,"aria-multiselectable",false)}var e="<div style='-webkit-appearance: none; background: transparent; outline: none; width:100%; height: 100%; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div style='-webkit-appearance: none; border: none; background: transparent; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; align:left; left: 0px; top: 0px; valign:top; position: relative;'><div id='filter"+m.element.id+"' style='display: none; visibility: inherit; align:left; valign:top; left: 0px; top: 0px; position: absolute;'><input style='position: absolute;'/></div><div id='listBoxContent' style='-webkit-appearance: none; border: none; background: transparent; outline: none; border: none; padding: 0px; overflow: hidden; margin: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='verticalScrollBar"+m.element.id+"' style='visibility: inherit; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='horizontalScrollBar"+m.element.id+"' style='visibility: inherit; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; border: none; position: absolute;'/></div></div>";m.host.attr("role","listbox");m.element.innerHTML=e;if(m._checkForHiddenParent){m._addInput();if(!m.host.attr("tabIndex")){m.host.attr("tabIndex",1)}}m.filter=a(m.element.firstChild.firstChild.firstChild);m.filterInput=a(m.filter[0].firstChild);m.filterInput.attr("placeholder",m.filterPlaceHolder);m.filterInput.addClass(m.toThemeProperty("jqx-widget jqx-input jqx-rc-all"));m.addHandler(m.filterInput,"keyup.textchange",function(o){if(o.keyCode==13){m._search(o)}else{if(m.filterDelay>0){if(m._filterTimer){clearTimeout(m._filterTimer)}m._filterTimer=setTimeout(function(){m._search(o)},m.filterDelay)}}o.stopPropagation()});var j=a(m.element.firstChild.firstChild.firstChild.nextSibling.nextSibling);if(!m.host.jqxButton){throw new Error("jqxListBox: Missing reference to jqxbuttons.js.");return}if(!j.jqxScrollBar){throw new Error("jqxListBox: Missing reference to jqxscrollbar.js.");return}var d=parseInt(m.host.height())/2;if(d==0){d=10}m.vScrollBar=j.jqxScrollBar({_initialLayout:true,vertical:true,rtl:m.rtl,theme:m.theme,touchMode:m.touchMode,largestep:d});var n=a(m.element.firstChild.firstChild.firstChild.nextSibling.nextSibling.nextSibling);m.hScrollBar=n.jqxScrollBar({_initialLayout:true,vertical:false,rtl:m.rtl,touchMode:m.touchMode,theme:m.theme});m.content=a(m.element.firstChild.firstChild.firstChild.nextSibling);m.content[0].id="listBoxContent"+m.element.id;m.bottomRight=a(m.element.firstChild.firstChild.firstChild.nextSibling.nextSibling.nextSibling.nextSibling).addClass(m.toThemeProperty("jqx-listbox-bottomright")).addClass(m.toThemeProperty("jqx-scrollbar-state-normal"));m.bottomRight[0].id="bottomRight"+m.element.id;m.vScrollInstance=a.data(m.vScrollBar[0],"jqxScrollBar").instance;m.hScrollInstance=a.data(m.hScrollBar[0],"jqxScrollBar").instance;if(m.isTouchDevice()){if(!(a.jqx.browser.msie&&a.jqx.browser.version<9)){var k=a("<div class='overlay' unselectable='on' style='z-index: 99; -webkit-appearance: none; border: none; background: black; opacity: 0.01; outline: none; border: none; padding: 0px; overflow: hidden; margin: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div>");m.content.parent().append(k);m.overlayContent=m.host.find(".overlay");if(m.filterable){m.overlayContent.css("top","30px")}}}m._updateTouchScrolling();m.host.addClass("jqx-disableselect");if(m.host.jqxDragDrop){jqxListBoxDragDrop()}},_highlight:function(b,c){var d=c.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&");return b.replace(new RegExp("("+d+")","ig"),function(e,f){return"<b>"+f+"</b>"})},_addInput:function(){var b=this.host.attr("name");if(b){this.host.attr("name","")}this.input=a("<input type='hidden'/>");this.host.append(this.input);this.input.attr("name",b)},_updateTouchScrolling:function(){var b=this;if(this.isTouchDevice()){b.enableHover=false;var c=this.overlayContent?this.overlayContent:this.content;this.removeHandler(a(c),a.jqx.mobile.getTouchEventName("touchstart")+".touchScroll");this.removeHandler(a(c),a.jqx.mobile.getTouchEventName("touchmove")+".touchScroll");this.removeHandler(a(c),a.jqx.mobile.getTouchEventName("touchend")+".touchScroll");this.removeHandler(a(c),"touchcancel.touchScroll");a.jqx.mobile.touchScroll(c,b.vScrollInstance.max,function(f,e){if(b.vScrollBar.css("visibility")!="hidden"){var d=b.vScrollInstance.value;b.vScrollInstance.setPosition(d+e);b._lastScroll=new Date()}if(b.hScrollBar.css("visibility")!="hidden"){var d=b.hScrollInstance.value;b.hScrollInstance.setPosition(d+f);b._lastScroll=new Date()}},this.element.id,this.hScrollBar,this.vScrollBar);if(b.vScrollBar.css("visibility")!="visible"&&b.hScrollBar.css("visibility")!="visible"){a.jqx.mobile.setTouchScroll(false,this.element.id)}else{a.jqx.mobile.setTouchScroll(true,this.element.id)}this._arrange()}},isTouchDevice:function(){var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){if(this.touchDevice){return true}if(a.jqx.browser.msie&&a.jqx.browser.version<9){return false}this.touchDevice=true;b=true;a.jqx.mobile.setMobileSimulator(this.element)}else{if(this.touchMode==false){b=false}}if(b&&this.touchModeStyle!=false){this.scrollBarSize=a.jqx.utilities.touchScrollBarSize}if(b){this.host.addClass(this.toThemeProperty("jqx-touch"))}return b},beginUpdate:function(){this.updatingListBox=true},endUpdate:function(){this.updatingListBox=false;this._addItems();this._renderItems()},beginUpdateLayout:function(){this.updating=true},resumeUpdateLayout:function(){this.updating=false;this.vScrollInstance.value=0;this._render(false)},propertiesChangedHandler:function(b,c,d){b._cachedItemHtml=new Array();b.clearSelection();b.refresh()},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(b.batchUpdate&&c!="touchMode"&&c!="rtl"){return}if(c=="_renderOnDemand"){b._render(false,true);if(b.selectedIndex!=-1){var f=b.selectedIndex;b.selectedIndex=-1;b._stopEvents=true;b.selectIndex(f,false,true);if(b.selectedIndex==-1){b.selectedIndex=f}b._stopEvents=false}}if(c=="filterable"){b.refresh()}if(c=="filterHeight"){b._arrange()}if(c=="filterPlaceHolder"){b.filterInput.attr("placeholder",d)}if(c=="renderer"){b._cachedItemHtml=new Array();b.refresh()}if(c=="itemHeight"){b.refresh()}if(c=="source"||c=="checkboxes"){if(d==null&&e&&e.unbindBindingUpdate){e.unbindBindingUpdate(b.element.id);e.unbindDownloadComplete(b.element.id)}b.clearSelection();b.refresh()}if(c=="scrollBarSize"||c=="equalItemsWidth"){if(d!=e){b._updatescrollbars()}}if(c=="disabled"){b._renderItems();b.vScrollBar.jqxScrollBar({disabled:d});b.hScrollBar.jqxScrollBar({disabled:d})}if(c=="touchMode"||c=="rtl"){b._removeHandlers();b.vScrollBar.jqxScrollBar({touchMode:d});b.hScrollBar.jqxScrollBar({touchMode:d});if(c=="touchMode"){if(!(a.jqx.browser.msie&&a.jqx.browser.version<9)){var h=a("<div class='overlay' unselectable='on' style='z-index: 99; -webkit-appearance: none; border: none; background: black; opacity: 0.01; outline: none; border: none; padding: 0px; overflow: hidden; margin: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div>");b.content.parent().append(h);b.overlayContent=b.host.find(".overlay")}}if(b.filterable&&b.filterInput){if(c=="rtl"&&d){b.filterInput.addClass(b.toThemeProperty("jqx-rtl"))}else{if(c=="rtl"&&!d){b.filterInput.removeClass(b.toThemeProperty("jqx-rtl"))}}b._arrange()}b._updateTouchScrolling();b._addHandlers();b._render(false)}if(!this.updating){if(c=="width"||c=="height"){b._updateSize()}}if(c=="theme"){if(e!=d){b.hScrollBar.jqxScrollBar({theme:b.theme});b.vScrollBar.jqxScrollBar({theme:b.theme});b.host.removeClass();b.host.addClass(b.toThemeProperty("jqx-listbox"));b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-reset"));b.host.addClass(b.toThemeProperty("jqx-rc-all"));b.refresh()}}if(c=="selectedIndex"){b.clearSelection();b.selectIndex(d,true)}if(c=="displayMember"||c=="valueMember"){if(e!=d){var g=b.selectedIndex;b.refresh();b.selectedIndex=g;b.selectedIndexes[g]=g}b._renderItems()}if(c=="autoHeight"){if(e!=d){b._render(false)}else{b._updatescrollbars();b._renderItems()}}if(b._checkForHiddenParent&&a.jqx.isHidden(b.host)){a.jqx.utilities.resize(this.host,function(){b._updateSize()},false,b._checkForHiddenParent)}},loadFromSelect:function(g){if(g==null){return}var c="#"+g;var d=a(c);if(d.length>0){var b=a.jqx.parseSourceTag(d[0]);var f=b.items;var e=b.index;this.source=f;this.fromSelect=true;this.clearSelection();this.selectedIndex=e;this.selectedIndexes[this.selectedIndex]=this.selectedIndex;this.refresh()}},invalidate:function(){this._cachedItemHtml=[];this._renderItems();this.virtualSize=null;this._updateSize()},refresh:function(c){var b=this;if(this.vScrollBar==undefined){return}this._cachedItemHtml=[];this.visibleItems=new Array();var d=function(e){if(e==true){if(b.selectedIndex!=-1){var f=b.selectedIndex;b.selectedIndex=-1;b._stopEvents=true;b.selectIndex(f,false,true);if(b.selectedIndex==-1){b.selectedIndex=f}b._stopEvents=false}}};if(this.itemswrapper!=null){this.itemswrapper.remove();this.itemswrapper=null}if(a.jqx.dataAdapter&&this.source!=null&&this.source._source){this.databind(this.source,c);d(c);return}if(this.autoBind||(!this.autoBind&&!c)){if(this.field){this.loadSelectTag()}this.items=this.loadItems(this.source)}this._raiseEvent("6");this._render(false,c==true);d(c)},loadSelectTag:function(){var b=a.jqx.parseSourceTag(this.field);this.source=b.items;if(this.selectedIndex==-1){this.selectedIndex=b.index}},_render:function(c,b){if(this._renderOnDemand){this.visibleItems=new Array();this.renderedVisibleItems=new Array();this._renderItems();return}this._addItems();this._renderItems();this.vScrollInstance.setPosition(0);this._cachedItemHtml=new Array();if(c==undefined||c){if(this.items!=undefined&&this.items!=null){if(this.selectedIndex>=0&&this.selectedIndex<this.items.length){this.selectIndex(this.selectedIndex,true,true,true)}}}if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop();if(this.isTouchDevice()){this._removeHandlers();if(this.overlayContent){this.overlayContent.remove();this.overlayContent=null}this._updateTouchScrolling();this._addHandlers();return}}this._updateTouchScrolling();if(this.rendered){this.rendered()}if(this.ready){this.ready()}},_hitTest:function(c,f){if(this.filterable){f-=this.filterHeight;if(f<0){f=0}}var e=parseInt(this.vScrollInstance.value);var b=this._searchFirstVisibleIndex(f+e,this.renderedVisibleItems);if(this.renderedVisibleItems[b]!=undefined&&this.renderedVisibleItems[b].isGroup){return null}if(this.renderedVisibleItems.length>0){var d=this.renderedVisibleItems[this.renderedVisibleItems.length-1];if(d.height+d.top<f+e){return null}}b=this._searchFirstVisibleIndex(f+e);return this.visibleItems[b];return null},_searchFirstVisibleIndex:function(e,f){if(e==undefined){e=parseInt(this.vScrollInstance.value)}var c=0;if(f==undefined||f==null){f=this.visibleItems}var b=f.length;while(c<=b){mid=parseInt((c+b)/2);var d=f[mid];if(d==undefined){break}if(d.initialTop>e&&d.initialTop+d.height>e){b=mid-1}else{if(d.initialTop<e&&d.initialTop+d.height<=e){c=mid+1}else{return mid;break}}}return 0},_renderItems:function(){if(this.items==undefined||this.items.length==0){this.visibleItems=new Array();return}if(this.updatingListBox==true){return}var N=this.isTouchDevice();var G=this.vScrollInstance;var h=this.hScrollInstance;var g=parseInt(G.value);var f=parseInt(h.value);if(this.rtl){if(this.hScrollBar[0].style.visibility!="hidden"){f=h.max-f}}var B=this.items.length;var M=this.host.width();var K=parseInt(this.content[0].style.width);var b=K+parseInt(h.max);var q=parseInt(this.vScrollBar[0].style.width)+2;if(this.vScrollBar[0].style.visibility=="hidden"){q=0}if(this.hScrollBar[0].style.visibility!="visible"){b=K}var l=this._getVirtualItemsCount();var L=new Array();var F=0;var E=parseInt(this.element.style.height)+2;if(this.element.style.height.indexOf("%")!=-1){E=this.host.outerHeight()}if(isNaN(E)){E=0}var t=0;var s=0;var Q=0;if(G.value==0||this.visibleItems.length==0){for(var r=0;r<this.items.length;r++){var x=this.items[r];if(x.visible){x.top=-g;x.initialTop=-g;if(!x.isGroup&&x.visible){this.visibleItems[s++]=x;x.visibleIndex=s-1}this.renderedVisibleItems[Q++]=x;x.left=-f;var c=x.top+x.height;if(c>=0&&x.top-x.height<=E){L[F++]={index:r,item:x}}g-=x.height}}}var m=g>0?this._searchFirstVisibleIndex(this.vScrollInstance.value,this.renderedVisibleItems):0;var O=0;F=0;var z=this.vScrollInstance.value;var J=0;while(O<100+E){var x=this.renderedVisibleItems[m];if(x==undefined){break}if(x.visible){x.left=-f;var c=x.top+x.height-z;if(c>=0&&x.initialTop-z-x.height<=2*E){L[F++]={index:m,item:x}}}m++;if(x.visible){O+=x.initialTop-z+x.height-O}J++;if(J>this.items.length-1){break}}if(this._renderOnDemand){return}var o=this.toThemeProperty("jqx-listitem-state-normal")+" "+this.toThemeProperty("jqx-item");var i=this.toThemeProperty("jqx-listitem-state-group");var P=this.toThemeProperty("jqx-listitem-state-disabled")+" "+this.toThemeProperty("jqx-fill-state-disabled");var C=0;var n=this;for(var r=0;r<this.visualItems.length;r++){var D=this.visualItems[r];var I=function(){var y=D[0].firstChild;if(n.checkboxes){y=D[0].lastChild}if(y!=null){y.style.visibility="hidden";y.className=""}if(n.checkboxes){var R=D.find(".chkbox");R.css({visibility:"hidden"})}};if(r<L.length){var x=L[r].item;if(x.initialTop-z>=E){I();continue}var A=a(D[0].firstChild);if(this.checkboxes){A=a(D[0].lastChild)}if(A.length==0){continue}if(A[0]==null){continue}A[0].className="";A[0].style.display="block";A[0].style.visibility="inherit";var p="";if(!x.isGroup&&!this.selectedIndexes[x.index]>=0){p=o}else{p=i}if(x.disabled||this.disabled){p+=" "+P}if(this.roundedcorners){p+=" "+this.toThemeProperty("jqx-rc-all")}if(N){p+=" "+this.toThemeProperty("jqx-listitem-state-normal-touch")}A[0].className=p;if(this.renderer){if(!x.key){x.key=this.generatekey()}if(!this._cachedItemHtml){this._cachedItemHtml=new Array()}if(this._cachedItemHtml[x.key]){if(A[0].innerHTML!=this._cachedItemHtml[x.key]){A[0].innerHTML=this._cachedItemHtml[x.key]}}else{var w=this.renderer(x.index,x.label,x.value);A[0].innerHTML=w;this._cachedItemHtml[x.key]=A[0].innerHTML}}else{if(this.itemHeight!==-1){var k=2+2*parseInt(A.css("padding-top"));A[0].style.lineHeight=(x.height-k)+"px";A.css("vertical-align","middle")}if(x.html!=null&&x.html.toString().length>0){A[0].innerHTML=x.html}else{if(x.label!=null||x.value!=null){if(x.label!=null){if(A[0].innerHTML!==x.label){A[0].innerHTML=x.label}if(a.trim(x.label)==""){A[0].innerHTML=this.emptyString;if(this.emptyString==""){A[0].style.height=(x.height-8)+"px"}}if(!this.incrementalSearch&&!x.disabled){if(this.searchString!=undefined&&this.searchString!=""){A[0].innerHTML=this._highlight(x.label.toString(),this.searchString)}}}else{if(x.label===null){A[0].innerHTML=this.emptyString;if(this.emptyString==""){A[0].style.height=(x.height-8)+"px"}}else{if(A[0].innerHTML!==x.value){A[0].innerHTML=x.value}else{if(x.label==""){A[0].innerHTML=" "}}}}}else{if(x.label==""||x.label==null){A[0].innerHTML="";A[0].style.height=(x.height-8)+"px"}}}}D[0].style.left=x.left+"px";D[0].style.top=x.initialTop-z+"px";x.element=A[0];if(x.title){A[0].title=x.title}if(this.equalItemsWidth&&!x.isGroup){if(t==0){var d=parseInt(b);var v=parseInt(A.outerWidth())-parseInt(A.width());d-=v;var H=1;if(H!=null){H=parseInt(H)}else{H=0}d-=2*H;t=d;if(this.checkboxes&&this.hScrollBar[0].style.visibility=="hidden"){t-=18}}if(K>this.virtualSize.width){A[0].style.width=t+"px";x.width=t}else{A[0].style.width=-4+this.virtualSize.width+"px";x.width=this.virtualSize.width-4}}else{if(A.width()<this.host.width()){A.width(this.host.width()-2)}}if(this.rtl){A[0].style.textAlign="right"}if(this.autoItemsHeight){A[0].style.whiteSpace="pre-line";A.width(t);x.width=t}C=0;if(this.checkboxes&&!x.isGroup){if(C==0){C=(x.height-16)/2;C++}var e=a(D.children()[0]);e[0].item=x;if(!this.rtl){if(A[0].style.left!="18px"){A[0].style.left="18px"}}else{if(A[0].style.left!="0px"){A[0].style.left="0px"}}if(this.rtl){e.css("left",8+x.width+"px")}e[0].style.top=C+"px";e[0].style.display="block";e[0].style.visibility="inherit";var u=x.checked;var j=x.checked?" "+this.toThemeProperty("jqx-checkbox-check-checked"):"";if(e[0].firstChild&&e[0].firstChild.firstChild&&e[0].firstChild.firstChild.firstChild){if(e[0].firstChild.firstChild){if(u){e[0].firstChild.firstChild.firstChild.className=j}else{if(u===false){e[0].firstChild.firstChild.firstChild.className=""}else{if(u===null){e[0].firstChild.firstChild.firstChild.className=this.toThemeProperty("jqx-checkbox-check-indeterminate")}}}}}if(a.jqx.ariaEnabled){if(u){D[0].setAttribute("aria-selected",true)}else{D[0].removeAttribute("aria-selected")}}}else{if(this.checkboxes){var e=a(D.children()[0]);e.css({display:"none",visibility:"inherit"})}}if(!x.disabled&&((!this.filterable&&this.selectedIndexes[x.visibleIndex]>=0)||(x.selected&&this.filterable))){A.addClass(this.toThemeProperty("jqx-listitem-state-selected"));A.addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(a.jqx.ariaEnabled){D[0].setAttribute("aria-selected",true);this._activeElement=D[0]}}else{if(!this.checkboxes){if(a.jqx.ariaEnabled){D[0].removeAttribute("aria-selected")}}}}else{I()}}},generatekey:function(){var b=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(b()+b()+"-"+b()+"-"+b()+"-"+b()+"-"+b()+b()+b())},_calculateVirtualSize:function(l){if(this._renderOnDemand){return}var p=0;var n=2;var g=0;var o=document.createElement("span");if(this.equalItemsWidth){a(o).css("float","left")}o.style.whiteSpace="pre";var h=0;var i=undefined===l?this.host.outerHeight():l+2;document.body.appendChild(o);var e=this.items.length;var j=this.host.width();if(this.autoItemsHeight){j-=10;if(this.vScrollBar.css("visibility")!="hidden"){j-=20}}if(this.autoItemsHeight||this.renderer||this.groups.length>=1||(e>0&&this.items[0].html!=null&&this.items[0].html!="")){for(var g=0;g<e;g++){var s=this.items[g];if(s.isGroup&&(s.label==""&&s.html=="")){continue}if(!s.visible){continue}var d="";if(!s.isGroup){d+=this.toThemeProperty("jqx-listitem-state-normal jqx-rc-all")}else{d+=this.toThemeProperty("jqx-listitem-state-group jqx-rc-all")}d+=" "+this.toThemeProperty("jqx-fill-state-normal");if(this.isTouchDevice()){d+=" "+this.toThemeProperty("jqx-touch")}o.className=d;if(this.autoItemsHeight){o.style.whiteSpace="pre-line";var b=this.checkboxes?-20:0;o.style.width=(b+j)+"px"}if(this.renderer){var k=this.renderer(s.index,s.label,s.value);o.innerHTML=k}else{if(s.html!=null&&s.html.toString().length>0){o.innerHTML=s.html}else{if(s.label!=null||s.value!=null){if(s.label!=null){o.innerHTML=s.label;if(s.label==""){o.innerHTML="Empty"}}else{o.innerHTML=s.value}}}}var r=o.offsetHeight;var t=o.offsetWidth;if(this.itemHeight>-1){r=this.itemHeight}s.height=r;s.width=t;n+=r;p=Math.max(p,t);if(n<=i){h++}}}else{var n=0;var m=0;var c="";var u=0;var f=0;var q=-1;for(var g=0;g<e;g++){var s=this.items[g];if(s.isGroup&&(s.label==""&&s.html=="")){continue}if(!s.visible){continue}q++;var d="";if(q==0){d+=this.toThemeProperty("jqx-listitem-state-normal jqx-rc-all");d+=" "+this.toThemeProperty("jqx-fill-state-normal");d+=" "+this.toThemeProperty("jqx-widget");d+=" "+this.toThemeProperty("jqx-listbox");d+=" "+this.toThemeProperty("jqx-widget-content");if(this.isTouchDevice()){d+=" "+this.toThemeProperty("jqx-touch");d+=" "+this.toThemeProperty("jqx-listitem-state-normal-touch")}o.className=d;if(this.autoItemsHeight){o.style.whiteSpace="pre-line";var b=this.checkboxes?-20:0;o.style.width=(b+j)+"px"}if(s.html==null||(s.label==""||s.label==null)){o.innerHTML="Item"}else{if(s.html!=null&&s.html.toString().length>0){o.innerHTML=s.html}else{if(s.label!=null||s.value!=null){if(s.label!=null){if(s.label.toString().match(new RegExp("\\w"))!=null||s.label.toString().match(new RegExp("\\d"))!=null){o.innerHTML=s.label}else{o.innerHTML="Item"}}else{o.innerHTML=s.value}}}}var r=1+o.offsetHeight;if(this.itemHeight>-1){r=this.itemHeight}m=r}if(u!=undefined){f=u}if(s.html!=null&&s.html.toString().length>0){u=Math.max(u,s.html.toString().length);if(f!=u){c=s.html}}else{if(s.label!=null){u=Math.max(u,s.label.length);if(f!=u){c=s.label}}else{if(s.value!=null){u=Math.max(u,s.value.length);if(f!=u){c=s.value}}}}s.height=m;n+=m;if(n<=i){h++}}o.innerHTML=c;p=o.offsetWidth}n+=2;if(h<10){h=10}if(this.filterable){n+=this.filterHeight}o.parentNode.removeChild(o);return{width:p,height:n,itemsPerPage:h}},_getVirtualItemsCount:function(){if(this.virtualItemsCount==0){var b=parseInt(this.host.height())/5;if(b>this.items.length){b=this.items.length}return b}else{return this.virtualItemsCount}},_addItems:function(r){if(this._renderOnDemand){return}var v=this;if(v.updatingListBox==true){return}if(v.items==undefined||v.items.length==0){v.virtualSize={width:0,height:0,itemsPerPage:0};v._updatescrollbars();v.renderedVisibleItems=new Array();if(v.itemswrapper){v.itemswrapper.children().remove()}return}var h=v.host.height();if(r==false){var b=v._calculateVirtualSize(h);var g=b.itemsPerPage*2;if(v.autoHeight){g=v.items.length}v.virtualItemsCount=Math.min(g,v.items.length);var q=b.width;v.virtualSize=b;v._updatescrollbars();return}var n=this;var l=0;v.visibleItems=new Array();v.renderedVisibleItems=new Array();v._removeHandlers();if(v.allowDrag&&v._enableDragDrop){v.itemswrapper=null}if(v.itemswrapper==null){v.content[0].innerHTML="";v.itemswrapper=a('<div style="outline: 0 none; overflow:hidden; width:100%; position: relative;"></div>');v.itemswrapper[0].style.height=(2*h)+"px";v.content[0].appendChild(v.itemswrapper[0])}var b=v._calculateVirtualSize(h);var g=b.itemsPerPage*2;if(v.autoHeight){g=v.items.length}v.virtualItemsCount=Math.min(g,v.items.length);var v=this;var q=b.width;v.virtualSize=b;var c=Math.max(v.host.width(),17+b.width);v.itemswrapper[0].style.width=c+"px";var e=0;var i="";var f=a.jqx.browser.msie&&a.jqx.browser.version<9;var s=f?' unselectable="on"':"";for(var j=e;j<v.virtualItemsCount;j++){var u=v.items[j];var p="listitem"+j+v.element.id;i+="<div"+s+" role='option' id='"+p+"' class='jqx-listitem-element'>";if(v.checkboxes){i+='<div style="background-color: transparent; padding: 0; margin: 0; position: absolute; float: left; width: 16px; height: 16px;" class="chkbox">';var o='<div class="'+v.toThemeProperty("jqx-checkbox-default")+" "+v.toThemeProperty("jqx-fill-state-normal")+" "+v.toThemeProperty("jqx-rc-all")+'"><div style="cursor: pointer; width: 13px; height: 13px;">';var w=u.checked?" "+v.toThemeProperty("jqx-checkbox-check-checked"):"";o+='<span style="width: 13px; height: 13px;" class="checkBoxCheck'+w+'"></span>';o+="</div></div>";i+=o;i+="</div>"}i+="<span"+s+" style='white-space: pre; -ms-touch-action: none;'></span></div>"}if(n.WinJS){v.itemswrapper.html(i)}else{v.itemswrapper[0].innerHTML=i}var d=v.itemswrapper.children();for(var j=e;j<v.virtualItemsCount;j++){var u=v.items[j];var t=a(d[j]);if(v.allowDrag&&v._enableDragDrop){t.addClass("draggable")}if(v.checkboxes){var k=a(t.children()[0]);t.css("float","left");var m=a(t[0].firstChild);m.css("float","left")}t[0].style.height=u.height+"px";t[0].style.top=l+"px";l+=u.height;v.visualItems[j]=t}v._addHandlers();v._updatescrollbars();if(v.autoItemsHeight){var b=v._calculateVirtualSize(h);var g=b.itemsPerPage*2;if(v.autoHeight){g=v.items.length}v.virtualItemsCount=Math.min(g,v.items.length);var v=this;var q=b.width;v.virtualSize=b;v._updatescrollbars()}if(a.jqx.browser.msie&&a.jqx.browser.version<8){v.host.attr("hideFocus",true);v.host.find("div").attr("hideFocus",true)}},_updatescrollbars:function(){var k=this;if(!k.virtualSize){return}var n=k.virtualSize.height;var j=k.virtualSize.width;var f=k.vScrollInstance;var e=k.hScrollInstance;k._arrange(false);var l=false;var o=k.host.outerWidth();var m=k.host.outerHeight();var b=0;if(j>o){b=k.hScrollBar.outerHeight()+2}if(n+b>m){var d=f.max;f.max=2+parseInt(n)+b-parseInt(m-2);if(k.vScrollBar[0].style.visibility!="inherit"){k.vScrollBar[0].style.visibility="inherit";l=true}if(d!=f.max){f._arrange()}}else{if(k.vScrollBar[0].style.visibility!="hidden"){k.vScrollBar[0].style.visibility="hidden";l=true;f.setPosition(0)}}var h=0;if(k.vScrollBar[0].style.visibility!="hidden"){h=k.scrollBarSize+6}var g=k.checkboxes?20:0;if(k.autoItemsHeight){k.hScrollBar[0].style.visibility="hidden"}else{if(j>=o-h-g){var i=e.max;if(k.vScrollBar[0].style.visibility=="inherit"){e.max=g+h+parseInt(j)-k.host.width()+4}else{e.max=g+parseInt(j)-k.host.width()+6}if(k.hScrollBar[0].style.visibility!="inherit"){k.hScrollBar[0].style.visibility="inherit";l=true}if(i!=e.max){e._arrange()}if(k.vScrollBar[0].style.visibility=="inherit"){f.max=2+parseInt(n)+k.hScrollBar.outerHeight()+2-parseInt(k.host.height())}}else{if(k.hScrollBar[0].style.visibility!="hidden"){k.hScrollBar[0].style.visibility="hidden";l=true}}}e.setPosition(0);if(l){k._arrange()}if(k.itemswrapper){k.itemswrapper[0].style.width=Math.max(0,Math.max(o-2,17+j))+"px";k.itemswrapper[0].style.height=Math.max(0,2*m)+"px"}var c=k.isTouchDevice();if(c){if(k.vScrollBar.css("visibility")!="visible"&&k.hScrollBar.css("visibility")!="visible"){a.jqx.mobile.setTouchScroll(false,k.element.id)}else{a.jqx.mobile.setTouchScroll(true,k.element.id)}}},clear:function(){this.source=null;this.clearSelection();this.refresh()},clearSelection:function(b){for(var c=0;c<this.selectedIndexes.length;c++){if(this.selectedIndexes[c]&&this.selectedIndexes[c]!=-1){this._raiseEvent("1",{index:c,type:"api",item:this.getVisibleItem(c),originalEvent:null})}this.selectedIndexes[c]=-1}this.selectedIndex=-1;this.selectedValue=null;this.selectedValues=new Array();if(b!=false){this._renderItems()}},unselectIndex:function(c,d){if(isNaN(c)){return}this.selectedIndexes[c]=-1;var g=false;for(var e=0;e<this.selectedIndexes.length;e++){var b=this.selectedIndexes[e];if(b!=-1&&b!=undefined){g=true}}if(!g){this.selectedValue=null;this.selectedIndex=-1;var f=this.getVisibleItem(c);if(f){if(this.selectedValues[f.value]){this.selectedValues[f.value]=null}}}if(d==undefined||d==true){this._renderItems();this._raiseEvent("1",{index:c,type:"api",item:this.getVisibleItem(c),originalEvent:null})}this._updateInputSelection();this._raiseEvent("2",{index:c,type:"api",item:this.getItem(c)})},getInfo:function(){var d=this;var c=this.getItems();var b=this.getVisibleItems();var e=function(){var h=d.vScrollInstance.value;if(d.filterable){h-=d.filterHeight}var m=new Array();for(var g=0;g<b.length;g++){var j=b[g];if(j){var f=j.initialTop;var l=j.height;var k=true;if(f+l-h<0||f-h>=d.host.height()){k=false}if(k){m.push(j)}}}return m}();return{items:c,visibleItems:b,viewItems:e}},getItem:function(c){if(c==-1||isNaN(c)||typeof(c)==="string"){if(c===-1){return null}return this.getItemByValue(c)}var b=null;var d=a.each(this.items,function(){if(this.index==c){b=this;return false}});return b},getVisibleItem:function(b){if(b==-1||isNaN(b)||typeof(b)==="string"){if(b===-1){return null}return this.getItemByValue(b)}return this.visibleItems[b]},getVisibleItems:function(){return this.visibleItems},checkIndex:function(b,c,e){if(!this.checkboxes){return}if(isNaN(b)){return}if(b<0||b>=this.visibleItems.length){return}if(this.visibleItems[b]!=null&&this.visibleItems[b].disabled){return}if(this.disabled){return}var d=this.getItem(b);if(this.groups.length>0||this.filterable){var d=this.getVisibleItem(b)}if(d!=null){var f=a(d.checkBoxElement);d.checked=true;if(c==undefined||c==true){this._updateCheckedItems()}}if(e==undefined||e==true){this._raiseEvent(3,{label:d.label,value:d.value,checked:true,item:d})}},getCheckedItems:function(){if(!this.checkboxes){return null}var b=new Array();if(this.items==undefined){return}a.each(this.items,function(){if(this.checked){b[b.length]=this}});return b},checkAll:function(b){if(!this.checkboxes){return}if(this.disabled){return}var c=this;a.each(this.items,function(){var d=this;if(b!==false&&d.checked!==true){c._raiseEvent(3,{label:d.label,value:d.value,checked:true,item:d})}this.checked=true});this._updateCheckedItems()},uncheckAll:function(b){if(!this.checkboxes){return}if(this.disabled){return}var c=this;a.each(this.items,function(){var d=this;if(b!==false&&d.checked!==false){this.checked=false;c._raiseEvent(3,{label:d.label,value:d.value,checked:false,item:d})}this.checked=false});this._updateCheckedItems()},uncheckIndex:function(b,c,e){if(!this.checkboxes){return}if(isNaN(b)){return}if(b<0||b>=this.visibleItems.length){return}if(this.visibleItems[b]!=null&&this.visibleItems[b].disabled){return}if(this.disabled){return}var d=this.getItem(b);if(this.groups.length>0||this.filterable){var d=this.getVisibleItem(b)}if(d!=null){var f=a(d.checkBoxElement);d.checked=false;if(c==undefined||c==true){this._updateCheckedItems()}}if(e==undefined||e==true){this._raiseEvent(3,{label:d.label,value:d.value,checked:false,item:d})}},indeterminateIndex:function(b,c,e){if(!this.checkboxes){return}if(isNaN(b)){return}if(b<0||b>=this.visibleItems.length){return}if(this.visibleItems[b]!=null&&this.visibleItems[b].disabled){return}if(this.disabled){return}var d=this.getItem(b);if(this.groups.length>0||this.filterable){var d=this.getVisibleItem(b)}if(d!=null){var f=a(d.checkBoxElement);d.checked=null;if(c==undefined||c==true){this._updateCheckedItems()}}if(e==undefined||e==true){this._raiseEvent(3,{checked:null})}},getSelectedIndex:function(){return this.selectedIndex},getSelectedItems:function(){var b=this.getVisibleItems();var e=this.selectedIndexes;var d=[];for(var c in e){if(e[c]!=-1){d[d.length]=b[c]}}return d},getSelectedItem:function(){var b=this.getSelectedItems();if(b&&b.length>0){return b[0]}return null},_updateCheckedItems:function(){var b=this.selectedIndex;this.clearSelection(false);var c=this.getCheckedItems();this.selectedIndex=b;this._renderItems();var d=a.data(this.element,"hoveredItem");if(d!=null){a(d).addClass(this.toThemeProperty("jqx-listitem-state-hover"));a(d).addClass(this.toThemeProperty("jqx-fill-state-hover"))}this._updateInputSelection()},getItemByValue:function(d){if(this.visibleItems==null){return}if(d&&d.value){d=d.value}if(this.itemsByValue){return this.itemsByValue[a.trim(d).split(" ").join("_")]}var b=this.visibleItems;for(var c=0;c<b.length;c++){if(b[c].value==d){return b[c];break}}},checkItem:function(c){if(c!=null){var b=this._getItemByParam(c);return this.checkIndex(b.visibleIndex,true)}return false},uncheckItem:function(c){if(c!=null){var b=this._getItemByParam(c);return this.uncheckIndex(b.visibleIndex,true)}return false},indeterminateItem:function(c){if(c!=null){var b=this._getItemByParam(c);return this.indeterminateIndex(b.visibleIndex,true)}return false},val:function(c){if(!this.input){return}var d=function(f){for(var e in f){if(f.hasOwnProperty(e)){return false}}if(typeof c=="number"){return false}if(typeof c=="date"){return false}if(typeof c=="boolean"){return false}if(typeof c=="string"){return false}return true};if(d(c)||arguments.length==0){return this.input.val()}var b=this.getItemByValue(c);if(b!=null){this.selectItem(b)}if(this.input){return this.input.val()}},selectItem:function(c){if(c!=null){if(c.index==undefined){var b=this.getItemByValue(c);if(b){c=b}}return this.selectIndex(c.visibleIndex,true)}return false},unselectItem:function(c){if(c!=null){if(c.index==undefined){var b=this.getItemByValue(c);if(b){c=b}}return this.unselectIndex(c.visibleIndex,true)}return false},selectIndex:function(j,r,c,d,m,b){if(isNaN(j)){return}var q=this.selectedIndex;if(this.filterable){this.selectedIndex=-1}if(j<-1||j>=this.visibleItems.length){return}if(this.visibleItems[j]!=null&&this.visibleItems[j].disabled){return}if(this.disabled){return}if(!this.multiple&&!this.multipleextended&&this.selectedIndex==j&&!d&&!this.checkboxes){if(this.visibleItems&&this.items&&this.visibleItems.length!=this.items.length){h=this.getVisibleItem(j);if(h){this.selectedValue=h.value;this.selectedValues[h.value]=h.value}}return}if(this.checkboxes){this._updateCheckedItems();var p=q;if(this.selectedIndex==j&&!this.multiple){p=-1}if(m==undefined){m="none"}var h=this.getItem(j);var s=this.getItem(p);if(this.visibleItems&&this.items&&this.visibleItems.length!=this.items.length){h=this.getVisibleItem(j);s=this.getVisibleItem(p)}this._raiseEvent("1",{index:p,type:m,item:s,originalEvent:b});this.selectedIndex=j;this.selectedIndexes[p]=-1;this.selectedIndexes[j]=j;if(h){this.selectedValue=h.value;this.selectedValues[h.value]=h.value}this._raiseEvent("0",{index:j,type:m,item:h,originalEvent:b});this._renderItems();return}this.focused=true;var o=false;if(this.selectedIndex!=j){o=true}var p=q;if(this.selectedIndex==j&&!this.multiple){p=-1}if(m==undefined){m="none"}var h=this.getItem(j);var s=this.getItem(p);if(this.visibleItems&&this.items&&this.visibleItems.length!=this.items.length){h=this.getVisibleItem(j);s=this.getVisibleItem(p)}if(d!=undefined&&d){this._raiseEvent("1",{index:p,type:m,item:s,originalEvent:b});this.selectedIndex=j;this.selectedIndexes[p]=-1;this.selectedIndexes[j]=j;if(h){this.selectedValue=h.value;this.selectedValues[h.value]=h.value}this._raiseEvent("0",{index:j,type:m,item:h,originalEvent:b})}else{var l=this;var e=function(t,x,v,w,u,i){l._raiseEvent("1",{index:x,type:v,item:w,originalEvent:i});l.selectedIndex=t;l.selectedIndexes=[];x=t;l.selectedIndexes[t]=t;l.selectedValues=new Array();if(u){l.selectedValues[u.value]=u.value}l._raiseEvent("0",{index:t,type:v,item:u,originalEvent:i})};var k=function(t,x,v,w,u,i){if(l.selectedIndexes[t]==undefined||l.selectedIndexes[t]==-1){l.selectedIndexes[t]=t;l.selectedIndex=t;if(u){l.selectedValues[u.value]=u.value;l._raiseEvent("0",{index:t,type:v,item:u,originalEvent:i})}}else{x=l.selectedIndexes[t];w=l.getVisibleItem(x);if(w){l.selectedValues[w.value]=null}l.selectedIndexes[t]=-1;l.selectedIndex=-1;l._raiseEvent("1",{index:x,type:v,item:w,originalEvent:i})}};if(this.multipleextended){if(!this._shiftKey&&!this._ctrlKey){if(m!="keyboard"&&m!="mouse"){k(j,p,m,s,h,b);l._clickedIndex=j}else{this.clearSelection(false);l._clickedIndex=j;e(j,p,m,s,h,b)}}else{if(this._ctrlKey){if(m=="keyboard"){this.clearSelection(false);l._clickedIndex=j}k(j,p,m,s,h,b)}else{if(this._shiftKey){if(l._clickedIndex==undefined){l._clickedIndex=p}var f=Math.min(l._clickedIndex,j);var n=Math.max(l._clickedIndex,j);this.clearSelection(false);for(var g=f;g<=n;g++){l.selectedIndexes[g]=g;l.selectedValues[l.getVisibleItem(g).value]=l.getVisibleItem(g).value;l._raiseEvent("0",{index:g,type:m,item:this.getVisibleItem(g),originalEvent:b})}if(m!="keyboard"){l.selectedIndex=l._clickedIndex}else{l.selectedIndex=j}}}}}else{if(this.multiple){k(j,p,m,s,h,b)}else{if(h){this.selectedValue=h.value}e(j,p,m,s,h,b)}}}if(c==undefined||c==true){this._renderItems()}if(r!=undefined&&r!=null&&r==true){this.ensureVisible(j)}this._raiseEvent("2",{index:j,item:h,oldItem:s,type:m,originalEvent:b});this._updateInputSelection();return o},_updateInputSelection:function(){this._syncSelection();var c=new Array();if(this.input){if(this.selectedIndex==-1){this.input.val("")}else{if(this.items){if(this.items[this.selectedIndex]!=undefined){this.input.val(this.items[this.selectedIndex].value);c.push(this.items[this.selectedIndex].value)}}}if(this.multiple||this.multipleextended||this.checkboxes){var b=!this.checkboxes?this.getSelectedItems():this.getCheckedItems();var e="";if(b){for(var d=0;d<b.length;d++){if(undefined!=b[d]){if(d==b.length-1){e+=b[d].value}else{e+=b[d].value+","}c.push(b[d].value)}}this.input.val(e)}}}if(this.field&&this.input){if(this.field.nodeName.toLowerCase()=="select"){a.each(this.field,function(f,g){a(this).removeAttr("selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this).attr("selected",true)}})}else{a.each(this.items,function(f,g){a(this.originalItem.originalItem).removeAttr("data-selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this.originalItem.originalItem).attr("data-selected",true)}})}}},isIndexInView:function(c){if(isNaN(c)){return false}if(!this.items){return false}if(c<0||c>=this.items.length){return false}var e=this.vScrollInstance.value;var d=0;if(this.filterable){d=this.filterHeight}var f=this.visibleItems[c];if(f==undefined){return true}var b=f.initialTop;var g=f.height;if(b-e<d||b-e+d+g>=this.host.outerHeight()){return false}return true},_itemsInPage:function(){var b=0;var c=this;if(this.items){a.each(this.items,function(){if((this.initialTop+this.height)>=c.content.height()){return false}b++})}return b},_firstItemIndex:function(){if(this.visibleItems!=null){if(this.visibleItems[0]){if(this.visibleItems[0].isGroup){return this._nextItemIndex(0)}else{return 0}}else{return 0}}return -1},_lastItemIndex:function(){if(this.visibleItems!=null){if(this.visibleItems[this.visibleItems.length-1]){if(this.visibleItems[this.visibleItems.length-1].isGroup){return this._prevItemIndex(this.visibleItems.length-1)}else{return this.visibleItems.length-1}}else{return this.visibleItems.length-1}}return -1},_nextItemIndex:function(b){for(indx=b+1;indx<this.visibleItems.length;indx++){if(this.visibleItems[indx]){if(!this.visibleItems[indx].disabled&&!this.visibleItems[indx].isGroup){return indx}}}return -1},_prevItemIndex:function(b){for(indx=b-1;indx>=0;indx--){if(this.visibleItems[indx]){if(!this.visibleItems[indx].disabled&&!this.visibleItems[indx].isGroup){return indx}}}return -1},clearFilter:function(){this.filterInput.val("");this._updateItemsVisibility("")},_search:function(c){var b=this;var d=b.filterInput.val();if(c.keyCode==9){return}if(b.searchMode=="none"||b.searchMode==null||b.searchMode=="undefined"){return}if(c.keyCode==16||c.keyCode==17||c.keyCode==20){return}if(c.keyCode==37||c.keyCode==39){return false}if(c.altKey||c.keyCode==18){return}if(c.keyCode>=33&&c.keyCode<=40){return}if(c.ctrlKey||c.metaKey||b.ctrlKey){if(c.keyCode!=88&&c.keyCode!=86){return}}if(d===b.searchString){return}b._updateItemsVisibility(d)},_updateItemsVisibility:function(h){var e=this.getItems();if(e==undefined){return{index:-1,matchItem:new Array()}}var f=this;var d=-1;var i=new Array();var g=0;a.each(e,function(k){var m="";if(!this.isGroup){if(this.searchLabel){m=this.searchLabel}else{if(this.label){m=this.label}else{if(this.value){m=this.value}else{if(this.title){m=this.title}else{m="jqxItem"}}}}m=m.toString();var l=false;switch(f.searchMode){case"containsignorecase":l=a.jqx.string.containsIgnoreCase(m,h);break;case"contains":l=a.jqx.string.contains(m,h);break;case"equals":l=a.jqx.string.equals(m,h);break;case"equalsignorecase":l=a.jqx.string.equalsIgnoreCase(m,h);break;case"startswith":l=a.jqx.string.startsWith(m,h);break;case"startswithignorecase":l=a.jqx.string.startsWithIgnoreCase(m,h);break;case"endswith":l=a.jqx.string.endsWith(m,h);break;case"endswithignorecase":l=a.jqx.string.endsWithIgnoreCase(m,h);break}if(!l){this.visible=false}if(l){i[g++]=this;this.visible=true;d=this.visibleIndex}if(h==""){this.visible=true;l=false}}});f.renderedVisibleItems=new Array();f.visibleItems=new Array();f.vScrollInstance.setPosition(0,true);f._addItems(false);f._renderItems();for(var b=0;b<f.items.length;b++){f.selectedIndexes[b]=-1}f.selectedIndex=-1;for(var c in f.selectedValues){var h=f.selectedValues[c];var j=f.getItemByValue(h);if(j){if(j.visible){f.selectedIndex=j.visibleIndex;f.selectedIndexes[j.visibleIndex]=j.visibleIndex}}}f._syncSelection()},_getMatches:function(g,d){if(g==undefined||g.length==0){return -1}if(d==undefined){d=0}var b=this.getItems();var f=this;var c=-1;var e=0;a.each(b,function(h){var k="";if(!this.isGroup){if(this.searchLabel){k=this.searchLabel.toString()}else{if(this.label){k=this.label.toString()}else{if(this.value){k=this.value.toString()}else{if(this.title){k=this.title.toString()}else{k="jqxItem"}}}}var j=false;switch(f.searchMode){case"containsignorecase":j=a.jqx.string.containsIgnoreCase(k,g);break;case"contains":j=a.jqx.string.contains(k,g);break;case"equals":j=a.jqx.string.equals(k,g);break;case"equalsignorecase":j=a.jqx.string.equalsIgnoreCase(k,g);break;case"startswith":j=a.jqx.string.startsWith(k,g);break;case"startswithignorecase":j=a.jqx.string.startsWithIgnoreCase(k,g);break;case"endswith":j=a.jqx.string.endsWith(k,g);break;case"endswithignorecase":j=a.jqx.string.endsWithIgnoreCase(k,g);break}if(j&&this.visibleIndex>=d){c=this.visibleIndex;return false}}});return c},findItems:function(e){var b=this.getItems();var d=this;var c=0;var f=new Array();a.each(b,function(g){var j="";if(!this.isGroup){if(this.label){j=this.label}else{if(this.value){j=this.value}else{if(this.title){j=this.title}else{j="jqxItem"}}}var h=false;switch(d.searchMode){case"containsignorecase":h=a.jqx.string.containsIgnoreCase(j,e);break;case"contains":h=a.jqx.string.contains(j,e);break;case"equals":h=a.jqx.string.equals(j,e);break;case"equalsignorecase":h=a.jqx.string.equalsIgnoreCase(j,e);break;case"startswith":h=a.jqx.string.startsWith(j,e);break;case"startswithignorecase":h=a.jqx.string.startsWithIgnoreCase(j,e);break;case"endswith":h=a.jqx.string.endsWith(j,e);break;case"endswithignorecase":h=a.jqx.string.endsWithIgnoreCase(j,e);break}if(h){f[c++]=this}}});return f},_syncSelection:function(){var d=this;if(d.filterable){if(d.items){for(var b=0;b<d.items.length;b++){var c=d.items[b];c.selected=false}}for(var b=0;b<d.visibleItems.length;b++){var c=d.visibleItems[b];if(d.selectedIndexes&&d.selectedIndexes[b]==c.visibleIndex){c.selected=true}}if(d.itemswrapper){d._renderItems()}}},_handleKeyDown:function(n){var s=n.keyCode;var k=this;var g=k.selectedIndex;var d=k.selectedIndex;var l=false;if(!this.keyboardNavigation||!this.enableSelection){return}if(this.filterInput&&n.target==this.filterInput[0]){return}var j=function(){if(k.multiple||k.checkboxes){k.clearSelection(false)}};if(n.altKey){s=-1}if(s==32&&this.checkboxes){var f=this.getItem(g);if(f!=null){k._updateItemCheck(f,g);n.preventDefault()}k._searchString="";k.selectIndex(f.visibleIndex,false,true,true,"keyboard",n);k._renderItems();return}if(k.incrementalSearch){var o=-1;if(!k._searchString){k._searchString=""}if((s==8||s==46)&&k._searchString.length>=1){k._searchString=k._searchString.substr(0,k._searchString.length-1)}var r=String.fromCharCode(s);var m=(!isNaN(parseInt(r)));var i=false;if((s>=65&&s<=97)||m||s==8||s==32||s==46){if(!n.shiftKey){r=r.toLocaleLowerCase()}var e=1+k.selectedIndex;if(s!=8&&s!=32&&s!=46){if(k._searchString.length>0&&k._searchString.substr(0,1)==r){e=1+k.selectedIndex}else{k._searchString+=r}}if(s==32){k._searchString+=" "}var b=this._getMatches(k._searchString,e);o=b;if(o==k._lastMatchIndex||o==-1){var b=this._getMatches(k._searchString,0);o=b}k._lastMatchIndex=o;if(o>=0){var h=function(){j();k.selectIndex(o,false,false,false,"keyboard",n);var t=k.isIndexInView(o);if(!t){k.ensureVisible(o)}else{k._renderItems()}};if(k._toSelectTimer){clearTimeout(k._toSelectTimer)}k._toSelectTimer=setTimeout(function(){h()},k.incrementalSearchKeyDownDelay)}i=true}if(k._searchTimer!=undefined){clearTimeout(k._searchTimer)}if(s==27||s==13){k._searchString=""}k._searchTimer=setTimeout(function(){k._searchString="";k._renderItems()},k.incrementalSearchDelay);if(o>=0){return}if(i){return false}}if(s==33){var p=k._itemsInPage();if(k.selectedIndex-p>=0){j();k.selectIndex(d-p,false,false,false,"keyboard",n)}else{j();k.selectIndex(k._firstItemIndex(),false,false,false,"keyboard",n)}k._searchString=""}if(s==32&&this.checkboxes){var f=this.getItem(g);if(f!=null){k._updateItemCheck(f,g);n.preventDefault()}k._searchString=""}if(s==36){j();k.selectIndex(k._firstItemIndex(),false,false,false,"keyboard",n);k._searchString=""}if(s==35){j();k.selectIndex(k._lastItemIndex(),false,false,false,"keyboard",n);k._searchString=""}if(s==34){var p=k._itemsInPage();if(k.selectedIndex+p<k.visibleItems.length){j();k.selectIndex(d+p,false,false,false,"keyboard",n)}else{j();k.selectIndex(k._lastItemIndex(),false,false,false,"keyboard",n)}k._searchString=""}if(s==38){k._searchString="";if(k.selectedIndex>0){var c=k._prevItemIndex(k.selectedIndex);if(c!=k.selectedIndex&&c!=-1){j();k.selectIndex(c,false,false,false,"keyboard",n)}else{return true}}else{return false}}else{if(s==40){k._searchString="";if(k.selectedIndex+1<k.visibleItems.length){var c=k._nextItemIndex(k.selectedIndex);if(c!=k.selectedIndex&&c!=-1){j();k.selectIndex(c,false,false,false,"keyboard",n)}else{return true}}else{return false}}}if(s==35||s==36||s==38||s==40||s==34||s==33){var q=k.isIndexInView(k.selectedIndex);if(!q){k.ensureVisible(k.selectedIndex)}else{k._renderItems()}return false}return true},_updateItemCheck:function(b,c){if(this.disabled){return}if(b.checked==true){b.checked=(b.hasThreeStates&&this.hasThreeStates)?null:false}else{b.checked=b.checked!=null}switch(b.checked){case true:this.checkIndex(c);break;case false:this.uncheckIndex(c);break;default:this.indeterminateIndex(c);break}},wheel:function(d,c){if(c.autoHeight||!c.enableMouseWheel){d.returnValue=true;return true}if(c.disabled){return true}var e=0;if(!d){d=window.event}if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(b){if(d.preventDefault){d.preventDefault()}if(d.originalEvent!=null){d.originalEvent.mouseHandled=true}if(d.stopPropagation!=undefined){d.stopPropagation()}}if(b){b=false;d.returnValue=b;return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(d){var c=this.vScrollInstance.value;if(d<0){this.scrollDown()}else{this.scrollUp()}var b=this.vScrollInstance.value;if(c!=b){return true}return false},focus:function(){try{this.focused=true;this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},_removeHandlers:function(){var b=this;this.removeHandler(a(document),"keydown.listbox"+this.element.id);this.removeHandler(a(document),"keyup.listbox"+this.element.id);this.removeHandler(this.vScrollBar,"valueChanged");this.removeHandler(this.hScrollBar,"valueChanged");if(this._mousewheelfunc){this.removeHandler(this.host,"mousewheel",this._mousewheelfunc)}else{this.removeHandler(this.host,"mousewheel")}this.removeHandler(this.host,"keydown");this.removeHandler(this.content,"mouseleave");this.removeHandler(this.content,"focus");this.removeHandler(this.content,"blur");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur");this.removeHandler(this.content,"mouseenter");this.removeHandler(this.content,"mouseup");this.removeHandler(this.content,"mousedown");this.removeHandler(this.content,"touchend");if(this._mousemovefunc){this.removeHandler(this.content,"mousemove",this._mousemovefunc)}else{this.removeHandler(this.content,"mousemove")}this.removeHandler(this.content,"selectstart");if(this.overlayContent){this.removeHandler(this.overlayContent,a.jqx.mobile.getTouchEventName("touchend"))}},_updateSize:function(){if(!this.virtualSize){this._oldheight=null;this.virtualSize=this._calculateVirtualSize()}var b=this;b._arrange();if(b.host.height()!=b._oldheight||b.host.width()!=b._oldwidth){var c=b.host.width()!=b._oldwidth;if(b.autoItemsHeight){b._render(false)}else{if(b.items){if(b.items.length>0&&b.virtualItemsCount*b.items[0].height<b._oldheight-2){b._render(false)}else{var d=b.vScrollInstance.value;b._updatescrollbars();b._renderItems();if(d<b.vScrollInstance.max){b.vScrollInstance.setPosition(d)}else{b.vScrollInstance.setPosition(b.vScrollInstance.max)}}}}b._oldwidth=b.host.width();b._oldheight=b.host.height()}},_addHandlers:function(){var l=this;this.focused=false;var m=false;var j=0;var g=null;var j=0;var b=0;var h=new Date();var e=this.isTouchDevice();this.addHandler(this.vScrollBar,"valueChanged",function(n){if(a.jqx.browser.msie&&a.jqx.browser.version>9){setTimeout(function(){l._renderItems()},1)}else{l._renderItems()}});this.addHandler(this.hScrollBar,"valueChanged",function(){l._renderItems()});if(this._mousewheelfunc){this.removeHandler(this.host,"mousewheel",this._mousewheelfunc)}this._mousewheelfunc=function(n){l.wheel(n,l)};this.addHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(a(document),"keydown.listbox"+this.element.id,function(n){l._ctrlKey=n.ctrlKey||n.metaKey;l._shiftKey=n.shiftKey});this.addHandler(a(document),"keyup.listbox"+this.element.id,function(n){l._ctrlKey=n.ctrlKey||n.metaKey;l._shiftKey=n.shiftKey});this.addHandler(this.host,"keydown",function(n){return l._handleKeyDown(n)});this.addHandler(this.content,"mouseleave",function(n){l.focused=false;var o=a.data(l.element,"hoveredItem");if(o!=null){a(o).removeClass(l.toThemeProperty("jqx-listitem-state-hover"));a(o).removeClass(l.toThemeProperty("jqx-fill-state-hover"));a.data(l.element,"hoveredItem",null)}});this.addHandler(this.content,"focus",function(n){if(!l.disabled){l.host.addClass(l.toThemeProperty("jqx-fill-state-focus"));l.focused=true}});this.addHandler(this.content,"blur",function(n){l.focused=false;l.host.removeClass(l.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"focus",function(n){if(!l.disabled){l.host.addClass(l.toThemeProperty("jqx-fill-state-focus"));l.focused=true}});this.addHandler(this.host,"blur",function(n){if(a.jqx.browser.msie&&a.jqx.browser.version<9&&l.focused){return}l.host.removeClass(l.toThemeProperty("jqx-fill-state-focus"));l.focused=false});this.addHandler(this.content,"mouseenter",function(n){l.focused=true});var c=a.jqx.utilities.hasTransform(this.host);if(this.enableSelection){var f=l.isTouchDevice()&&this.touchMode!==true;var i=!f?"mousedown":"touchend";var k=!f?"mouseup":"touchend";if(this.overlayContent){this.addHandler(this.overlayContent,a.jqx.mobile.getTouchEventName("touchend"),function(p){if(!l.enableSelection){return true}if(f){l._newScroll=new Date();if(l._newScroll-l._lastScroll<500){return true}}var s=a.jqx.mobile.getTouches(p);var t=s[0];if(t!=undefined){var n=l.host.offset();var r=parseInt(t.pageX);var q=parseInt(t.pageY);if(l.touchMode==true){if(t._pageX!=undefined){r=parseInt(t._pageX);q=parseInt(t._pageY)}}r=r-n.left;q=q-n.top;var o=l._hitTest(r,q);if(o!=null&&!o.isGroup){l._newScroll=new Date();if(l._newScroll-l._lastScroll<500){return false}if(l.checkboxes){l._updateItemCheck(o,o.visibleIndex);return}if(o.html.indexOf("href")!=-1){setTimeout(function(){l.selectIndex(o.visibleIndex,false,true,false,"mouse",p);l.content.trigger("click");return false},100)}else{l.selectIndex(o.visibleIndex,false,true,false,"mouse",p);if(p.preventDefault){p.preventDefault()}l.content.trigger("click");return false}}}})}else{var d=false;this.addHandler(this.content,i,function(n){if(!l.enableSelection){return true}d=true;if(f){l._newScroll=new Date();if(l._newScroll-l._lastScroll<500){return false}}l.focused=true;if(!l.isTouchDevice()&&l.focusable){l.host.focus()}if(n.target.id!=("listBoxContent"+l.element.id)&&l.itemswrapper[0]!=n.target){var r=n.target;var z=a(r).offset();var q=l.host.offset();if(c){var o=a.jqx.mobile.getLeftPos(r);var t=a.jqx.mobile.getTopPos(r);z.left=o;z.top=t;o=a.jqx.mobile.getLeftPos(l.element);t=a.jqx.mobile.getTopPos(l.element);q.left=o;q.top=t}var s=parseInt(z.top)-parseInt(q.top);var v=parseInt(z.left)-parseInt(q.left);var w=l._hitTest(v,s);if(w!=null&&!w.isGroup){var p=function(y,x){if(!l._shiftKey){l._clickedIndex=y.visibleIndex}if(!l.checkboxes){l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}else{v=20+x.pageX-z.left;if(l.rtl){var A=l.hScrollBar.css("visibility")!="hidden"?l.hScrollInstance.max:l.host.width();if(v<=l.host.width()-20){if(!l.allowDrag){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}else{setTimeout(function(){if(!l._dragItem){if(!d){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}}},200)}}}else{if(v+l.hScrollInstance.value>=20){if(!l.allowDrag){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}else{setTimeout(function(){if(!l._dragItem){if(!d){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}}},200)}}}}};if(!w.disabled){if(w.html.indexOf("href")!=-1){setTimeout(function(){p(w,n)},100)}else{p(w,n)}}}if(i=="mousedown"){var u=false;if(n.which){u=(n.which==3)}else{if(n.button){u=(n.button==2)}}if(u){return true}return false}}return true})}this.addHandler(this.content,"mouseup",function(n){l.vScrollInstance.handlemouseup(l,n);d=false});if(a.jqx.browser.msie){this.addHandler(this.content,"selectstart",function(n){return false})}}var e=this.isTouchDevice();if(this.enableHover&&!e){this._mousemovefunc=function(n){if(e){return true}if(!l.enableHover){return true}var p=a.jqx.browser.msie==true&&a.jqx.browser.version<9?0:1;if(n.target==null){return true}if(l.disabled){return true}l.focused=true;var r=l.vScrollInstance.isScrolling();if(!r&&n.target.id!=("listBoxContent"+l.element.id)){if(l.itemswrapper[0]!=n.target){var t=n.target;var B=a(t).offset();var s=l.host.offset();if(c){var o=a.jqx.mobile.getLeftPos(t);var v=a.jqx.mobile.getTopPos(t);B.left=o;B.top=v;o=a.jqx.mobile.getLeftPos(l.element);v=a.jqx.mobile.getTopPos(l.element);s.left=o;s.top=v}var u=parseInt(B.top)-parseInt(s.top);var w=parseInt(B.left)-parseInt(s.left);var A=l._hitTest(w,u);if(A!=null&&!A.isGroup&&!A.disabled){var q=a.data(l.element,"hoveredItem");if(q!=null){a(q).removeClass(l.toThemeProperty("jqx-listitem-state-hover"));a(q).removeClass(l.toThemeProperty("jqx-fill-state-hover"))}a.data(l.element,"hoveredItem",A.element);var z=a(A.element);z.addClass(l.toThemeProperty("jqx-listitem-state-hover"));z.addClass(l.toThemeProperty("jqx-fill-state-hover"))}}}};this.addHandler(this.content,"mousemove",this._mousemovefunc)}},_arrange:function(u){if(u==undefined){u=true}var t=this;var p=null;var n=null;var g=t.filterable?t.filterHeight:0;var j=function(h){h=t.host.height();if(h==0){h=200;t.host.height(h)}return h};if(t.width!=null&&t.width.toString().indexOf("px")!=-1){p=t.width}else{if(t.width!=undefined&&!isNaN(t.width)){p=t.width}}if(t.height!=null&&t.height.toString().indexOf("px")!=-1){n=t.height}else{if(t.height!=undefined&&!isNaN(t.height)){n=t.height}}if(t.width!=null&&t.width.toString().indexOf("%")!=-1){t.host.css("width",t.width);p=t.host.width()}if(t.height!=null&&t.height.toString().indexOf("%")!=-1){t.host.css("height",t.height);n=j(n)}if(p!=null){p=parseInt(p);if(parseInt(t.element.style.width)!=parseInt(t.width)){t.host.width(t.width)}}if(!t.autoHeight){if(n!=null){n=parseInt(n);if(parseInt(t.element.style.height)!=parseInt(t.height)){t.host.height(t.height);j(n)}}}else{if(t.virtualSize){if(t.hScrollBar.css("visibility")!="hidden"){t.host.height(t.virtualSize.height+parseInt(t.scrollBarSize)+3);t.height=t.virtualSize.height+parseInt(t.scrollBarSize)+3;n=t.height}else{t.host.height(t.virtualSize.height);t.height=t.virtualSize.height;n=t.virtualSize.height}}}var c=t.scrollBarSize;if(isNaN(c)){c=parseInt(c);if(isNaN(c)){c="17px"}else{c=c+"px"}}c=parseInt(c);var m=4;var e=2;var f=1;if(t.vScrollBar){if(t.vScrollBar[0].style.visibility!="hidden"){f=c+m}else{t.vScrollInstance.setPosition(0)}}else{return}if(t.hScrollBar){if(t.hScrollBar[0].style.visibility!="hidden"){e=c+m}else{t.hScrollInstance.setPosition(0)}}else{return}if(t.autoItemsHeight){t.hScrollBar[0].style.visibility="hidden";e=0}if(n==null){n=0}var q=parseInt(n)-m-c;if(q<0){q=0}if(parseInt(t.hScrollBar[0].style.height)!=c){if(parseInt(c)<0){c=0}t.hScrollBar[0].style.height=parseInt(c)+"px"}if(t.hScrollBar[0].style.top!=q+"px"){t.hScrollBar[0].style.top=q+"px";t.hScrollBar[0].style.left="0px"}var b=p-c-m;if(b<0){b=0}var l=b+"px";if(t.hScrollBar[0].style.width!=l){t.hScrollBar[0].style.width=l}if(f<=1){if(p>=2){t.hScrollBar[0].style.width=parseInt(p-2)+"px"}}if(c!=parseInt(t.vScrollBar[0].style.width)){t.vScrollBar[0].style.width=parseInt(c)+"px"}if((parseInt(n)-e)!=parseInt(t.vScrollBar[0].style.height)){var s=parseInt(n)-e;if(s<0){s=0}t.vScrollBar[0].style.height=s+"px"}if(p==null){p=0}var d=parseInt(p)-parseInt(c)-m+"px";if(d!=t.vScrollBar[0].style.left){if(parseInt(d)>=0){t.vScrollBar[0].style.left=d}t.vScrollBar[0].style.top="0px"}var k=t.vScrollInstance;k.disabled=t.disabled;if(u){k._arrange()}var o=t.hScrollInstance;o.disabled=t.disabled;if(u){o._arrange()}if((t.vScrollBar[0].style.visibility!="hidden")&&(t.hScrollBar[0].style.visibility!="hidden")){t.bottomRight[0].style.visibility="inherit";t.bottomRight[0].style.left=1+parseInt(t.vScrollBar[0].style.left)+"px";t.bottomRight[0].style.top=1+parseInt(t.hScrollBar[0].style.top)+"px";if(t.rtl){t.bottomRight.css({left:0})}t.bottomRight[0].style.width=parseInt(c)+3+"px";t.bottomRight[0].style.height=parseInt(c)+3+"px"}else{t.bottomRight[0].style.visibility="hidden"}if(parseInt(t.content[0].style.width)!=(parseInt(p)-f)){var i=parseInt(p)-f;if(i<0){i=0}t.content[0].style.width=i+"px"}if(t.rtl){t.vScrollBar.css({left:0+"px",top:"0px"});t.hScrollBar.css({left:t.vScrollBar.width()+2+"px"});if(t.vScrollBar[0].style.visibility!="hidden"){t.content.css("margin-left",4+t.vScrollBar.width())}else{t.content.css("margin-left",0);t.hScrollBar.css({left:"0px"})}if(t.filterable&&t.filterInput){t.filterInput.css({left:t.vScrollBar.width()+6+"px"})}}if(parseInt(t.content[0].style.height)!=(parseInt(n)-e)){var r=parseInt(n)-e;if(r<0){r=0}t.content[0].style.height=r+"px";t.content[0].style.top="0px"}if(g>0){t.content[0].style.top=g+"px";t.content[0].style.height=parseInt(t.content[0].style.height)-g+"px"}if(t.filterable){t.filterInput[0].style.height=(g-6)+"px";t.filterInput[0].style.top="3px";if(!t.rtl){t.filterInput[0].style.left=parseInt(t.content.css("left"))+3+"px"}t.filterInput[0].style.width=parseInt(t.content.css("width"))-7+"px";t.filter[0].style.display="block"}else{t.filter[0].style.display="none"}if(t.overlayContent){t.overlayContent.width(parseInt(p)-f);t.overlayContent.height(parseInt(n)-e)}},ensureVisible:function(h,i){if(isNaN(h)){var l=this.getItemByValue(h);if(l){h=l.index}}var f=this.isIndexInView(h);if(!f){if(h<0){return}if(this.autoHeight){var g=a.data(this.vScrollBar[0],"jqxScrollBar").instance;g.setPosition(0)}else{for(indx=0;indx<this.visibleItems.length;indx++){var l=this.visibleItems[indx];if(l.visibleIndex==h&&!l.isGroup){var g=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var k=g.value;var b=!this.filterable?0:this.filterHeight+2;var e=this.hScrollBar.css("visibility")==="hidden";var d=e?0:this.scrollBarSize+4;if(l.initialTop<k){g.setPosition(l.initialTop);if(indx==0){g.setPosition(0)}}else{if(l.initialTop+l.height>k+this.host.height()-b){var c=this.host.height();if(this.filterable){g.setPosition(this.filterHeight+2+l.initialTop+l.height+2-c+d)}else{g.setPosition(l.initialTop+l.height+2-c+d);if(indx===this.visibleItems.length-1){g.setPosition(g.max)}}if(i){var k=g.value;var j=l.initialTop;if(this.filterable){j=this.filterHeight+2+l.initialTop}if(k+c<g.max){g.setPosition(j)}}}}break}}}}else{if(i){for(indx=0;indx<this.visibleItems.length;indx++){var l=this.visibleItems[indx];if(l.visibleIndex==h&&!l.isGroup){var k=this.vScrollInstance.value;var j=l.initialTop;if(this.filterable){j=this.filterHeight+2+l.initialTop}if(k+this.host.height()<this.vScrollInstance.max){this.vScrollInstance.setPosition(j)}}}}}this._renderItems()},scrollTo:function(c,b){if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollInstance.setPosition(b)}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollInstance.setPosition(c)}},scrollDown:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value+b.largestep<=b.max){b.setPosition(b.value+b.largestep);return true}else{b.setPosition(b.max);return true}return false},scrollUp:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value-b.largestep>=b.min){b.setPosition(b.value-b.largestep);return true}else{if(b.value!=b.min){b.setPosition(b.min);return true}}return false},databind:function(b,d){this.records=new Array();var f=b._source?true:false;var c=new a.jqx.dataAdapter(b,{autoBind:false});if(f){c=b;b=b._source}var e=function(k){if(b.type!=undefined){c._options.type=b.type}if(b.formatdata!=undefined){c._options.formatData=b.formatdata}if(b.contenttype!=undefined){c._options.contentType=b.contenttype}if(b.async!=undefined){c._options.async=b.async}};var h=function(q,r){var s=function(w){var D=null;if(typeof w==="string"){var z=w;var A=w;var C=""}else{if(q.displayMember!=undefined&&q.displayMember!=""){var A=w[q.valueMember];var z=w[q.displayMember]}}var C="";if(q.groupMember){C=w[q.groupMember]}else{if(w&&w.group!=undefined){C=w.group}}if(q.searchMember){D=w[q.searchMember]}else{if(w&&w.searchLabel!=undefined){D=w.searchLabel}}if(!q.valueMember&&!q.displayMember){if(a.type(w)=="string"){z=A=w.toString()}}if(w&&w.label!=undefined){var z=w.label}if(w&&w.value!=undefined){var A=w.value}var B=false;if(w&&w.checked!=undefined){B=w.checked}var v="";if(w&&w.html!=undefined){v=w.html}var t=true;if(w&&w.visible!=undefined){t=w.visible}var u=false;if(w&&w.disabled!=undefined){u=w.disabled}var y=false;if(w&&w.hasThreeStates!=undefined){y=w.hasThreeStates}var x={};x.label=z;x.value=A;x.searchLabel=D;x.html=v;x.visible=t;x.originalItem=w;x.group=C;x.groupHtml="";x.disabled=u;x.checked=B;x.hasThreeStates=y;return x};if(r!=undefined){var k=c._changedrecords[0];if(k){a.each(c._changedrecords,function(){var t=this.index;var u=this.record;if(r!="remove"){var v=s(u)}switch(r){case"update":q.updateAt(v,t);break;case"add":q.insertAt(v,t);break;case"remove":q.removeAt(t);break}});return}}q.records=c.records;var m=q.records.length;var p=new Array();for(var l=0;l<m;l++){var n=q.records[l];var o=s(n);o.index=l;p[l]=o}q.items=q.loadItems(p,true);q._render();q._raiseEvent("6")};e(this);var i=this;switch(b.datatype){case"local":case"array":default:if(b.localdata!=null||a.isArray(b)){c.unbindBindingUpdate(this.element.id);if(this.autoBind||(!this.autoBind&&!d)){c.dataBind()}h(this);c.bindBindingUpdate(this.element.id,function(k){h(i,k)})}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(b.localdata!=null){c.unbindBindingUpdate(this.element.id);if(this.autoBind||(!this.autoBind&&!d)){c.dataBind()}h(this);c.bindBindingUpdate(this.element.id,function(){h(i)});return}var j={};if(c._options.data){a.extend(c._options.data,j)}else{if(b.data){a.extend(j,b.data)}c._options.data=j}var g=function(){h(i)};c.unbindDownloadComplete(i.element.id);c.bindDownloadComplete(i.element.id,g);if(this.autoBind||(!this.autoBind&&!d)){c.dataBind()}}},loadItems:function(m,o){if(m==null){this.groups=new Array();this.items=new Array();this.visualItems=new Array();return}var t=this;var k=0;var d=0;var b=0;this.groups=new Array();this.items=new Array();this.visualItems=new Array();var e=new Array();this.itemsByValue=new Array();a.map(m,function(x){if(x==undefined){return null}var j=new a.jqx._jqxListBox.item();var y=x.group;var i=x.groupHtml;var z=x.title;var v=null;if(t.searchMember){v=x[t.searchMember]}else{if(x&&x.searchLabel!=undefined){v=x.searchLabel}}if(z==null||z==undefined){z=""}if(y==null||y==undefined){y=""}if(t.groupMember){y=x[t.groupMember]}if(i==null||i==undefined){i=""}if(!t.groups[y]){t.groups[y]={items:new Array(),index:-1,caption:y,captionHtml:i};k++;var u=k+"jqxGroup";t.groups[u]=t.groups[y];d++;t.groups.length=d}var w=t.groups[y];w.index++;w.items[w.index]=j;if(typeof x==="string"){j.label=x;j.value=x;if(arguments.length>1&&arguments[1]&&a.type(arguments[1])=="string"){j.label=x;j.value=arguments[1]}}else{if(x.label==null&&x.value==null&&x.html==null&&x.group==null&&x.groupHtml==null){j.label=x.toString();j.value=x.toString()}else{j.label=x.label;j.value=x.value;if(j.label===undefined){j.label=x.value}if(j.value===undefined){j.value=x.label}}}if(typeof x!="string"){if(x.label===undefined){if(t.displayMember!=""){if(x[t.displayMember]!=undefined){j.label=x[t.displayMember]}else{j.label=""}}}if(x.value===undefined){if(t.valueMember!=""){j.value=x[t.valueMember]}}}j.hasThreeStates=x.hasThreeStates!=undefined?x.hasThreeStates:true;j.originalItem=x;if(o){j.originalItem=x.originalItem}j.title=z;if(z&&j.value===undefined&&j.label===undefined){j.value=j.label=z}j.html=x.html||"";if(x.html&&x.html!=""){if(z&&z!=""){}}j.group=y;j.checked=x.checked||false;j.groupHtml=x.groupHtml||"";j.disabled=x.disabled||false;j.visible=x.visible!=undefined?x.visible:true;j.searchLabel=v;j.index=b;e[b]=j;b++;return j});var c=new Array();var p=0;if(this.fromSelect==undefined||this.fromSelect==false){for(var h=0;h<d;h++){var k=h+1;var n=k+"jqxGroup";var r=this.groups[n];if(r==undefined||r==null){break}if(h==0&&r.caption==""&&r.captionHtml==""&&d<=1){for(var g=0;g<r.items.length;g++){var q=r.items[g].value;if(r.items[g].value==undefined||r.items[g].value==null){q=g}this.itemsByValue[a.trim(q).split(" ").join("_")]=r.items[g]}return r.items}else{var l=new a.jqx._jqxListBox.item();l.isGroup=true;l.label=r.caption;if(r.caption==""&&r.captionHtml==""){r.caption=this.emptyGroupText;l.label=r.caption}l.html=r.captionHtml;c[p]=l;p++}for(var f=0;f<r.items.length;f++){c[p]=r.items[f];var q=r.items[f].value;if(r.items[f].value==""||r.items[f].value==null){q=p}t.itemsByValue[a.trim(q).split(" ").join("_")]=r.items[f];p++}}}else{var p=0;var s=new Array();a.each(e,function(){if(!s[this.group]){if(this.group!=""){var i=new a.jqx._jqxListBox.item();i.isGroup=true;i.label=this.group;c[p]=i;p++;s[this.group]=true}}c[p]=this;var j=this.value;if(this.value==""||this.value==null){j=p-1}t.itemsByValue[a.trim(j).split(" ").join("_")]=this;p++})}return c},_mapItem:function(c){var b=new a.jqx._jqxListBox.item();if(this.displayMember){if(c.label==undefined){c.label=c[this.displayMember]}if(c.value==undefined){c.value=c[this.valueMember]}}if(typeof c==="string"){b.label=c;b.value=c}else{if(typeof c==="number"){b.label=c.toString();b.value=c.toString()}else{b.label=c.label!==undefined?c.label:c.value;b.value=c.value!==undefined?c.value:c.label}}if(b.label==undefined&&b.value==undefined&&b.html==undefined){b.label=b.value=c}b.html=c.html||"";b.group=c.group||"";b.checked=c.checked||false;b.title=c.title||"";b.groupHtml=c.groupHtml||"";b.disabled=c.disabled||false;b.visible=c.visible||true;return b},addItem:function(b){return this.insertAt(b,this.items?this.items.length:0)},_getItemByParam:function(c){if(c!=null){if(c.index==undefined){var b=this.getItemByValue(c);if(b){c=b}}}return c},insertItem:function(d,b){var c=this._getItemByParam(d);return this.insertAt(c,b)},updateItem:function(c,d){var b=this._getItemByParam(d);if(b&&b.index!=undefined){return this.updateAt(c,b.index)}return false},updateAt:function(d,c){if(d!=null){var b=this._mapItem(d);this.itemsByValue[a.trim(b.value).split(" ").join("_")]=this.items[c];this.items[c].value=b.value;this.items[c].label=b.label;this.items[c].html=b.html;this.items[c].disabled=b.disabled}this._cachedItemHtml=[];this._renderItems();if(this.rendered){this.rendered()}},insertAt:function(l,f){if(l==null){return false}this._cachedItemHtml=[];if(this.items==undefined||this.items.length==0){this.source=new Array();this.refresh();var g=this._mapItem(l);g.index=0;this.items[this.items.length]=g;this._addItems(true);this._renderItems();if(this.rendered){this.rendered()}if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop()}var k=g.value;if(g.value==""||g.value==null){k=f}this.itemsByValue[a.trim(k).split(" ").join("_")]=g;return false}var g=this._mapItem(l);if(f==-1||f==undefined||f==null||f>=this.items.length){g.index=this.items.length;this.items[this.items.length]=g}else{var c=new Array();var j=0;var e=false;var h=0;for(var b=0;b<this.items.length;b++){if(this.items[b].isGroup==false){if(h>=f&&!e){c[j++]=g;g.index=f;h++;e=true}}c[j]=this.items[b];if(!this.items[b].isGroup){c[j].index=h;h++}j++}this.items=c}var k=g.value;if(g.value==""||g.value==null){k=f}this.itemsByValue[a.trim(k).split(" ").join("_")]=g;this.visibleItems=new Array();this.renderedVisibleItems=new Array();var d=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var i=d.value;d.setPosition(0);if((this.allowDrag&&this._enableDragDrop)||(this.virtualSize&&this.virtualSize.height<10+this.host.height())){this._addItems(true)}else{this._addItems(false)}if(this.groups.length>1){}this._renderItems();if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop()}d.setPosition(i);if(this.rendered){this.rendered()}return true},removeAt:function(j){if(j<0||j>this.items.length-1){return false}if(j==undefined){return false}var d=this.items[j].height;var n=this.items[j].value;if(n==""||n==null){n=j}this.itemsByValue[a.trim(n).split(" ").join("_")]=null;if(this.groups.length>1){var h=new Array();for(var b=0;b<this.items.length;b++){if(!this.items[b].isGroup){h.push({item:this.items[b],key:b})}}if(h[j]){this.items.splice(h[j].key,1)}else{return false}}else{this.items.splice(j,1)}var c=new Array();var m=0;var f=false;var k=0;for(var b=0;b<this.items.length;b++){c[m]=this.items[b];if(!this.items[b].isGroup){c[m].index=k;k++}m++}this.items=c;var e=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var e=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var l=e.value;e.setPosition(0);this.visibleItems=new Array();this.renderedVisibleItems=new Array();if(this.items.length>0){if(this.virtualSize){this.virtualSize.height-=d;var o=this.virtualSize.itemsPerPage*2;if(this.autoHeight){o=this.items.length}this.virtualItemsCount=Math.min(o,this.items.length)}this._updatescrollbars()}else{this._addItems()}this._renderItems();if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop()}if(this.vScrollBar.css("visibility")!="hidden"){e.setPosition(l)}else{e.setPosition(0)}this.itemsByValue=new Array();for(var g=0;g<this.items.length;g++){var n=this.items[g].value;if(this.items[g].value==""||this.items[g].value==null){n=g}this.itemsByValue[a.trim(n).split(" ").join("_")]=this.items[g]}if(this.rendered){this.rendered()}return true},removeItem:function(e,f){var d=this._getItemByParam(e);var b=-1;if(d&&d.index!=undefined&&f!==true){for(var c=0;c<this.items.length;c++){if(this.items[c].label==d.label&&this.items[c].value==d.value){b=c;break}}if(b!=-1){return this.removeAt(b)}}if(b==-1){return this.removeAt(d.index)}},getItems:function(){return this.items},disableItem:function(c){var b=this._getItemByParam(c);this.disableAt(b.index)},enableItem:function(c){var b=this._getItemByParam(c);this.enableAt(b.index)},disableAt:function(b){if(!this.items){return false}if(b<0||b>this.items.length-1){return false}this.items[b].disabled=true;this._renderItems();return true},enableAt:function(b){if(!this.items){return false}if(b<0||b>this.items.length-1){return false}this.items[b].disabled=false;this._renderItems();return true},destroy:function(){if(this.source&&this.source.unbindBindingUpdate){this.source.unbindBindingUpdate(this.element.id)}this._removeHandlers();this.vScrollBar.jqxScrollBar("destroy");this.hScrollBar.jqxScrollBar("destroy");this.vScrollBar.remove();this.hScrollBar.remove();this.content.remove();a.jqx.utilities.resize(this.host,null,true);var b=a.data(this.element,"jqxListBox");delete this.hScrollInstance;delete this.vScrollInstance;delete this.vScrollBar;delete this.hScrollBar;delete this.content;delete this.bottomRight;delete this.itemswrapper;delete this.visualItems;delete this.visibleItems;delete this.items;delete this.groups;delete this.renderedVisibleItems;delete this._mousewheelfunc;delete this._mousemovefunc;delete this._cachedItemHtml;delete this.itemsByValue;delete this._activeElement;delete this.source;delete this.events;if(this.input){this.input.remove();delete this.input}if(b){delete b.instance}this.host.removeData();this.host.removeClass();this.host.remove();this.element=null;delete this.element;this.host=null;delete this.set;delete this.get;delete this.call;delete this.host},_raiseEvent:function(f,c){if(this._stopEvents==true){return true}if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;this._updateInputSelection();var e=new a.Event(d);e.owner=this;e.args=args;if(this.host!=null){var b=this.host.trigger(e)}return b}})})(jqxBaseFramework);(function(a){a.jqx.parseSourceTag=function(m){var l=new Array();var o=a(m).find("option");var b=a(m).find("optgroup");var k=false;if(o.length===0){o=a(m).find("li");if(o.length>0){k=true}}var d=null;var j=0;var d=-1;var h=this;var c=new Array();a.each(o,function(p){var q=b.find(this).length>0;var s=null;if(this.text!=null&&(this.label==null||this.label=="")){this.label=this.text}if(k===true){this.label=a(this).text();this.selected=a(this).attr("data-selected");this.checked=this.selected;this.value=a(this).attr("data-value")||p;this.disabled=a(this).attr("disabled")}var r={style:this.style.cssText,selected:this.selected,html:this.innerHTML,classes:this.className,disabled:this.disabled,value:this.value,label:this.label,title:this.title,originalItem:this};var i=a.jqx.browser.msie&&a.jqx.browser.version<8;if(i&&!k){if(r.value==""&&this.text!=null&&this.text.length>0){r.value=this.text}}if(q){s=b.find(this).parent()[0].label;r.group=s;if(!c[s]){c[s]=new Array();c.length++}c[s].push(r)}if(this.selected){d=p}r.checked=this.selected;if(r.label!==undefined){l.push(r)}});if(c.length>0){var n=new Array();for(var f in c){if(f==="indexOf"){continue}var g=null;for(var e=0;e<b.length;e++){if(f===b[e].label||b[e].text){g=b[e];break}}a.each(c[f],function(i,p){if(this.label!==undefined){n.push(this)}})}}if(n&&n.length>0){return{items:n,index:d}}else{return{items:l,index:d}}};a.jqx._jqxListBox.item=function(){var b={group:"",groupHtml:"",selected:false,isGroup:false,highlighted:false,value:null,label:"",html:null,visible:true,disabled:false,element:null,width:null,height:null,initialTop:null,top:null,left:null,title:"",index:-1,checkBoxElement:null,originalItem:null,checked:false,visibleIndex:-1};return b}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxTree","",{});a.extend(a.jqx._jqxTree.prototype,{defineInstance:function(){var b={items:new Array(),width:null,height:null,easing:"easeInOutCirc",animationShowDuration:"fast",animationHideDuration:"fast",treeElements:new Array(),disabled:false,enableHover:true,keyboardNavigation:true,enableKeyboardNavigation:true,toggleMode:"dblclick",source:null,checkboxes:false,checkSize:13,toggleIndicatorSize:16,hasThreeStates:false,selectedItem:null,touchMode:"auto",allowDrag:true,allowDrop:true,searchMode:"startswithignorecase",incrementalSearch:true,incrementalSearchDelay:700,animationHideDelay:0,submitCheckedItems:false,dragStart:null,dragEnd:null,rtl:false,dropAction:"default",events:["expand","collapse","select","initialized","added","removed","checkChange","dragEnd","dragStart"],aria:{"aria-activedescendant":{name:"getActiveDescendant",type:"string"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.attr("role","tree");this.host.attr("data-role","treeview");this.enableKeyboardNavigation=this.keyboardNavigation;this.propertyChangeMap.disabled=function(f,h,g,j){if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-tree-disabled"))}else{b.host.removeClass(b.toThemeProperty("jqx-tree-disabled"))}a.jqx.aria(b,"aria-disabled",j)};if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height)}if(!this.host.attr("tabindex")){this.host.attr("tabIndex",1)}if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-tree-disabled"));a.jqx.aria(this,"aria-disabled",true)}if(this.host.jqxDragDrop){jqxTreeDragDrop()}this.originalInnerHTML=this.element.innerHTML;this.createdTree=false;if(this.element.innerHTML.indexOf("UL")){var e=this.host.find("ul:first");if(e.length>0){this.createTree(e[0]);this.createdTree=true}}if(this.source!=null){var d=this.loadItems(this.source);this.element.innerHTML=d;var e=this.host.find("ul:first");if(e.length>0){this.createTree(e[0]);this.createdTree=true}}this._itemslength=this.items.length;if(!this.createdTree){if(this.host.find("ul").length==0){this.host.append(a("<ul></ul>"));var e=this.host.find("ul:first");if(e.length>0){this.createTree(e[0]);this.createdTree=true}this.createdTree=true}}if(this.createdTree==true){this._render();this._handleKeys()}this._updateCheckLayout()},checkItems:function(f,h){var e=this;if(f!=null){var d=0;var g=false;var b=0;var j=a(f.element).find("li");b=j.length;a.each(j,function(k){var l=e.itemMapping["id"+this.id].item;if(l.checked!=false){if(l.checked==null){g=true}d++}});if(f!=h){if(d==b){this.checkItem(f.element,true,"tree")}else{if(d>0){this.checkItem(f.element,null,"tree")}else{this.checkItem(f.element,false,"tree")}}}else{var c=h.checked;var j=a(h.element).find("li");a.each(j,function(){var k=e.itemMapping["id"+this.id].item;e.checkItem(this,c,"tree")})}this.checkItems(this._parentItem(f),h)}else{var c=h.checked;var j=a(h.element).find("li");a.each(j,function(){var k=e.itemMapping["id"+this.id].item;e.checkItem(this,c,"tree")})}},_getMatches:function(e,f){if(e==undefined||e.length==0){return -1}var c=this.items;var b=new Array();for(var d=0;d<c.length;d++){if(this._isVisible(c[d])&&!c[d].disabled){b.push(c[d])}}c=b;if(f!=undefined){c=c.slice(f)}var g=new Array();a.each(c,function(j){var k=this.label;if(!k){k=""}var h=a.jqx.string.startsWithIgnoreCase(k.toString(),e);if(h){g.push({id:this.id,element:this.element})}});return g},_handleKeys:function(){var b=this;this.addHandler(this.host,"keydown",function(d){var s=d.keyCode;if(b.keyboardNavigation||b.enableKeyboardNavigation){if(b.selectedItem!=null){var l=b.selectedItem.element;if(b.incrementalSearch&&(!(s>=33&&s<=40))){var t=-1;if(!b._searchString){b._searchString=""}if((s==8||s==46)&&b._searchString.length>=1){b._searchString=b._searchString.substr(0,b._searchString.length-1)}var h=String.fromCharCode(s);var o=(!isNaN(parseInt(h)));var n=false;if((s>=65&&s<=97)||o||s==8||s==32||s==46){if(!d.shiftKey){h=h.toLocaleLowerCase()}if(s!=8&&s!=32&&s!=46){if(!(b._searchString.length>0&&b._searchString.substr(0,1)==h)){b._searchString+=h}}if(s==32){b._searchString+=" "}b._searchTime=new Date();var r=b.selectedItem;if(r){var g=r.id;var m=-1;for(var k=0;k<b.items.length;k++){if(b.items[k].id==g){m=k+1;break}}var f=b._getMatches(b._searchString,m);if(f.length==0||(f.length>0&&f[0].id==g)){var f=b._getMatches(b._searchString)}}else{var f=b._getMatches(b._searchString)}if(f.length>0){var r=b.selectedItem;if(b.selectedItem&&b.selectedItem.id!=f[0].id){b.clearSelection();b.selectItem(f[0].element)}b._lastSearchString=b._searchString}}if(b._searchTimer!=undefined){clearTimeout(b._searchTimer)}if(s==27||s==13){b._searchString="";b._lastSearchString=""}b._searchTimer=setTimeout(function(){b._searchString="";b._lastSearchString=""},500);if(t>=0){return}if(n){return false}}switch(s){case 32:if(b.checkboxes){b.fromKey=true;var q=a(b.selectedItem.checkBoxElement).jqxCheckBox("checked");b.checkItem(b.selectedItem.element,!q,"tree");if(b.hasThreeStates){b.checkItems(b.selectedItem,b.selectedItem)}return false}return true;case 33:var j=b._getItemsOnPage();var p=b.selectedItem;for(var k=0;k<j;k++){p=b._prevVisibleItem(p)}if(p!=null){b.selectItem(p.element);b.ensureVisible(p.element)}else{b.selectItem(b._firstItem().element);b.ensureVisible(b._firstItem().element)}return false;case 34:var j=b._getItemsOnPage();var c=b.selectedItem;for(var k=0;k<j;k++){c=b._nextVisibleItem(c)}if(c!=null){b.selectItem(c.element);b.ensureVisible(c.element)}else{b.selectItem(b._lastItem().element);b.ensureVisible(b._lastItem().element)}return false;case 37:case 39:if((s==37&&!b.rtl)||(s==39&&b.rtl)){if(b.selectedItem.hasItems&&b.selectedItem.isExpanded){b.collapseItem(l)}else{var e=b._parentItem(b.selectedItem);if(e!=null){b.selectItem(e.element);b.ensureVisible(e.element)}}}if((s==39&&!b.rtl)||(s==37&&b.rtl)){if(b.selectedItem.hasItems){if(!b.selectedItem.isExpanded){b.expandItem(l)}else{var c=b._nextVisibleItem(b.selectedItem);if(c!=null){b.selectItem(c.element);b.ensureVisible(c.element)}}}}return false;case 13:if(b.selectedItem.hasItems){if(b.selectedItem.isExpanded){b.collapseItem(l)}else{b.expandItem(l)}}return false;case 36:b.selectItem(b._firstItem().element);b.ensureVisible(b._firstItem().element);return false;case 35:b.selectItem(b._lastItem().element);b.ensureVisible(b._lastItem().element);return false;case 38:var p=b._prevVisibleItem(b.selectedItem);if(p!=null){b.selectItem(p.element);b.ensureVisible(p.element)}return false;case 40:var c=b._nextVisibleItem(b.selectedItem);if(c!=null){b.selectItem(c.element);b.ensureVisible(c.element)}return false}}}})},_firstItem:function(){var d=null;var c=this;var f=this.host.find("ul:first");var e=a(f).find("li");for(i=0;i<=e.length-1;i++){var b=e[i];d=this.itemMapping["id"+b.id].item;if(c._isVisible(d)){return d}}return null},_lastItem:function(){var d=null;var c=this;var f=this.host.find("ul:first");var e=a(f).find("li");for(i=e.length-1;i>=0;i--){var b=e[i];d=this.itemMapping["id"+b.id].item;if(c._isVisible(d)){return d}}return null},_parentItem:function(d){if(d==null||d==undefined){return null}var c=d.parentElement;if(!c){return null}var b=null;a.each(this.items,function(){if(this.element==c){b=this;return false}});return b},_nextVisibleItem:function(c){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.nextItem;if(this._isVisible(b)&&!b.disabled){return b}}return null},_prevVisibleItem:function(c){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.prevItem;if(this._isVisible(b)&&!b.disabled){return b}}return null},_isVisible:function(c){if(c==null||c==undefined){return false}if(!this._isElementVisible(c.element)){return false}var b=this._parentItem(c);if(b==null){return true}if(b!=null){if(!this._isElementVisible(b.element)){return false}if(b.isExpanded){while(b!=null){b=this._parentItem(b);if(b!=null&&!this._isElementVisible(b.element)){return false}if(b!=null&&!b.isExpanded){return false}}}else{return false}}return true},_getItemsOnPage:function(){var d=0;var c=this.panel.jqxPanel("getVScrollPosition");var b=parseInt(this.host.height());var f=0;var e=this._firstItem();if(parseInt(a(e.element).height())>0){while(f<=b){f+=parseInt(a(e.element).outerHeight());d++}}return d},_isElementVisible:function(b){if(b==null){return false}if(a(b).css("display")!="none"&&a(b).css("visibility")!="hidden"){return true}return false},refresh:function(c){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.panel){if(this.width!=null&&this.width.toString().indexOf("%")!=-1){var b=this;this.panel.jqxPanel("width","100%");b.removeHandler(a(window),"resize.jqxtree"+b.element.id);b.addHandler(a(window),"resize.jqxtree"+b.element.id,function(){b._calculateWidth()})}else{this.panel.jqxPanel("width",this.host.width())}this.panel.jqxPanel("_arrange")}this._calculateWidth();if(a.jqx.isHidden(this.host)){var b=this;if(this._hiddenTimer){clearInterval(this._hiddenTimer)}this._hiddenTimer=setInterval(function(){if(!a.jqx.isHidden(b.host)){clearInterval(b._hiddenTimer);b._calculateWidth()}},100)}if(c!=true){if(this.checkboxes){this._updateCheckLayout(null)}}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},loadItems:function(c){if(c==null){return}var b=this;this.items=new Array();var d="<ul>";a.map(c,function(e){if(e==undefined){return null}d+=b._parseItem(e)});d+="</ul>";return d},_parseItem:function(m){var g="";if(m==undefined){return null}var k=m.label;if(!m.label&&m.html){k=m.html}if(!k){k="Item"}if(typeof m==="string"){k=m}var h=false;if(m.expanded!=undefined&&m.expanded){h=true}var f=false;if(m.locked!=undefined&&m.locked){f=true}var d=false;if(m.selected!=undefined&&m.selected){d=true}var e=false;if(m.disabled!=undefined&&m.disabled){e=true}var l=false;if(m.checked!=undefined&&m.checked){l=true}var j=m.icon;var c=m.iconsize;g+="<li";if(h){g+=' item-expanded="true" '}if(f){g+=' item-locked="true" '}if(e){g+=' item-disabled="true" '}if(d){g+=' item-selected="true" '}if(c){g+=' item-iconsize="'+m.iconsize+'" '}if(j!=null&&j!=undefined){g+=' item-icon="'+j+'" '}if(m.label&&!m.html){g+=' item-label="'+k+'" '}if(m.value!=null){g+=' item-value="'+m.value+'" '}if(m.checked!=undefined){g+=' item-checked="'+l+'" '}var b="";if(m.id!=undefined){b=m.id;g+=' id="'+b+'" '}else{b=this.createID();g+=' id="'+b+'" '}g+=">"+k;if(m.items){g+=this.loadItems(m.items)}if(!this._valueList){this._valueList=new Array()}this._valueList[b]=m.value;g+="</li>";return g},ensureVisible:function(d){if(d==null||d==undefined){return}var c=this.panel.jqxPanel("getVScrollPosition");var e=this.panel.jqxPanel("getHScrollPosition");var b=parseInt(this.host.height());var f=a(d).position().top;if(f<=c||f>=b+c){this.panel.jqxPanel("scrollTo",e,f-b+a(d).outerHeight())}},_syncItems:function(c){this._visibleItems=new Array();var b=this;a.each(c,function(){var e=a(this);if(e.css("display")!="none"){var d=e.outerHeight();if(e.height()>0){var f=parseInt(e.offset().top);b._visibleItems[b._visibleItems.length]={element:this,top:f,height:d,bottom:f+d}}}})},hitTest:function(h,g){var d=this;var b=this;var f=null;var e=this.host.find(".jqx-item");this._syncItems(e);if(b._visibleItems){var c=parseInt(b.host.offset().left);var j=b.host.outerWidth();a.each(b._visibleItems,function(l){if(h>=c&&h<c+j){if(this.top+5<g&&g<this.top+this.height){var k=a(this.element).parents("li:first");if(k.length>0){f=b.getItem(k[0]);if(f!=null){f.height=this.height;f.top=this.top;return false}}}}})}return f},addBefore:function(b,d,c){return this.addBeforeAfter(b,d,true,c)},addAfter:function(b,d,c){return this.addBeforeAfter(b,d,false,c)},addBeforeAfter:function(o,r,q,n){var l=this;var m=new Array();if(r&&r.treeInstance!=undefined){r=r.element}if(!a.isArray(o)){m[0]=o}else{m=o}var g="";var p=this;a.each(m,function(){g+=p._parseItem(this)});var b=a(g);if(l.element.innerHTML.indexOf("UL")){var h=l.host.find("ul:first")}if(r==undefined&&r==null){h.append(b)}else{if(q){a(r).before(b)}else{a(r).after(b)}}var d=b;for(var k=0;k<d.length;k++){this._createItem(d[k]);var c=a(d[k]).find("li");if(c.length>0){for(var f=0;f<c.length;f++){this._createItem(c[f])}}}var e=function(j){p._refreshMapping(false);p._updateItemsNavigation();if(j&&p.allowDrag&&p._enableDragDrop){p._enableDragDrop()}if(p.selectedItem!=null){a(p.selectedItem.titleElement).addClass(p.toThemeProperty("jqx-fill-state-pressed"));a(p.selectedItem.titleElement).addClass(p.toThemeProperty("jqx-tree-item-selected"))}};if(n==false){e(true);this._raiseEvent("4",{items:this.getItems()});return}e(false);p._render();this._raiseEvent("4",{items:this.getItems()});if(p.checkboxes){p._updateCheckLayout(null)}},addTo:function(q,s,p){var n=this;var o=new Array();if(s&&s.treeInstance!=undefined){s=s.element}if(!a.isArray(q)){o[0]=q}else{o=q}var k="";var r=this;a.each(o,function(){k+=r._parseItem(this)});var b=a(k);if(n.element.innerHTML.indexOf("UL")){var l=n.host.find("ul:first")}if(s==undefined&&s==null){l.append(b)}else{s=a(s);var e=s.find("ul:first");if(e.length==0){ulElement=a("<ul></ul>");a(s).append(ulElement);e=s.find("ul:first");var t=n.itemMapping["id"+s[0].id].item;t.subtreeElement=e[0];t.hasItems=true;e.addClass(n.toThemeProperty("jqx-tree-dropdown"));if(r.rtl){e.addClass(n.toThemeProperty("jqx-tree-dropdown-rtl"))}e.append(b);var h=e.find("li:first");t.parentElement=h}else{e.append(b)}}var d=b;for(var m=0;m<d.length;m++){this._createItem(d[m]);var c=a(d[m]).find("li");if(c.length>0){for(var g=0;g<c.length;g++){this._createItem(c[g])}}}var f=function(j){r._refreshMapping(false);r._updateItemsNavigation();if(j&&r.allowDrag&&r._enableDragDrop){r._enableDragDrop()}if(r.selectedItem!=null){a(r.selectedItem.titleElement).addClass(r.toThemeProperty("jqx-fill-state-pressed"));a(r.selectedItem.titleElement).addClass(r.toThemeProperty("jqx-tree-item-selected"))}};if(p==false){f(true);this._raiseEvent("4",{items:this.getItems()});return}f(false);r._render();if(r.checkboxes){r._updateCheckLayout(null)}this._raiseEvent("4",{items:this.getItems()})},updateItem:function(e,j){var h=e.treeInstance!=undefined?e:this.getItem(e);if(!h){var d=e;e=j;j=d;var h=e.treeInstance!=undefined?e:this.getItem(e)}if(h){if(typeof(j)==="string"){j={label:j}}if(j.value){h.value=j.value}if(j.label){h.label=j.label;a.jqx.utilities.html(a(h.titleElement),j.label);var b=a.jqx.browser.msie&&a.jqx.browser.version<8;if(b){a(document.body).append(this._measureItem);this._measureItem.html(a(h.titleElement).text());var g=this._measureItem.width();if(h.icon){g+=20}if(a(a(h.titleElement).find("img")).length>0){g+=20}a(h.titleElement).css("max-width",g+"px");this._measureItem.remove()}}if(j.icon){if(a(h.element).children(".itemicon").length>0){a(h.element).find(".itemicon")[0].src=j.icon}else{var c=j.iconsize;if(!c){c=16}var f=a('<img width="'+c+'" height="'+c+'" style="float: left;" class="itemicon" src="'+j.icon+'"/>');a(h.titleElement).prepend(f);f.css("margin-right","4px");if(this.rtl){f.css("margin-right","0px");f.css("margin-left","4px");f.css("float","right")}}}if(j.expanded){this.expandItem(h)}if(j.disabled){this.disableItem(h)}if(j.selected){this.selectItem(h)}return true}return false},removeItem:function(b,d){if(b==undefined||b==null){return}if(b.treeInstance!=undefined){b=b.element}var e=this;var h=b.id;var c=-1;var f=this.getItem(b);if(f){c=this.items.indexOf(f);if(c!=-1){(function g(p){var n=-1;n=this.items.indexOf(p);if(n!=-1){this.items.splice(n,1)}var k=a(p.element).find("li");var j=k.length;var o=this;var l=new Array();if(j>0){a.each(k,function(q){var r=o.itemMapping["id"+this.id].item;l.push(r)});for(var m=0;m<l.length;m++){g.apply(this,[l[m]])}}}).apply(this,[f])}}if(this.host.find("#"+b.id).length>0){a(b).remove()}if(d==false){this._raiseEvent("5");return}e._updateItemsNavigation();if(e.allowDrag&&e._enableDragDrop){e._render(true,false)}else{e._render()}if(e.selectedItem!=null){if(e.selectedItem.element==b){a(e.selectedItem.titleElement).removeClass(e.toThemeProperty("jqx-fill-state-pressed"));a(e.selectedItem.titleElement).removeClass(e.toThemeProperty("jqx-tree-item-selected"));e.selectedItem=null}}this._raiseEvent("5");if(e.checkboxes){e._updateCheckLayout(null)}},clear:function(){this.items=new Array();this.itemMapping=new Array();var b=this.host.find("ul:first");if(b.length>0){b[0].innerHTML=""}this.selectedItem=null},disableItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.disabled=true;a(d.titleElement).addClass(c.toThemeProperty("jqx-fill-state-disabled"));a(d.titleElement).addClass(c.toThemeProperty("jqx-tree-item-disabled"));if(c.checkboxes&&d.checkBoxElement){a(d.checkBoxElement).jqxCheckBox({disabled:true})}return false}})},_updateInputSelection:function(){if(this.input){if(this.selectedItem==null){this.input.val("")}else{var c=this.selectItem.value;if(c==null){c=this.selectedItem.label}this.input.val(c)}if(this.checkboxes){var b=this.getCheckedItems();if(this.submitCheckedItems){var f="";for(var d=0;d<b.length;d++){var e=b[d].value;if(e==null){e=b[d].label}if(d==b.length-1){f+=e}else{f+=e+","}}this.input.val(f)}}}},getCheckedItems:function(){var b=new Array();var c=this;a.each(c.items,function(){var d=this;if(d.checked){b.push(d)}});return b},getUncheckedItems:function(){var b=new Array();var c=this;a.each(c.items,function(){var d=this;if(!d.checked){b.push(d)}});return b},checkAll:function(){var b=this;a.each(b.items,function(){var c=this;if(!c.disabled){c.checked=true;a(c.checkBoxElement).jqxCheckBox("_setState",true)}});this._raiseEvent("6",{element:this,checked:true})},uncheckAll:function(){var b=this;a.each(b.items,function(){var c=this;if(!c.disabled){c.checked=false;a(c.checkBoxElement).jqxCheckBox("_setState",false)}});this._raiseEvent("6",{element:this,checked:false})},checkItem:function(d,f,b){if(d==null){return false}if(f===undefined){f=true}if(d.treeInstance!=undefined){d=d.element}var e=this;var c=false;var g=null;a.each(e.items,function(){var h=this;if(h.element==d&&!h.disabled){c=true;h.checked=f;g=h;a(h.checkBoxElement).jqxCheckBox({checked:f});return false}});if(c){this._raiseEvent("6",{element:d,checked:f});this._updateInputSelection()}if(b==undefined){if(g){if(this.hasThreeStates){this.checkItems(g,g)}}}},uncheckItem:function(b){this.checkItem(b,false)},enableItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.disabled=false;a(d.titleElement).removeClass(c.toThemeProperty("jqx-fill-state-disabled"));a(d.titleElement).removeClass(c.toThemeProperty("jqx-tree-item-disabled"));if(c.checkboxes&&d.checkBoxElement){a(d.checkBoxElement).jqxCheckBox({disabled:false})}return false}})},enableAll:function(){var b=this;a.each(b.items,function(){var c=this;c.disabled=false;a(c.titleElement).removeClass(b.toThemeProperty("jqx-tree-item-disabled"));a(c.titleElement).removeClass(b.toThemeProperty("jqx-fill-state-disabled"));if(b.checkboxes&&c.checkBoxElement){a(c.checkBoxElement).jqxCheckBox({disabled:false})}})},lockItem:function(b){if(b==null){return false}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.locked=true;return false}})},unlockItem:function(b){if(b==null){return false}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.locked=false;return false}})},getItems:function(){return this.items},getItem:function(b){if(b==null||b==undefined){return null}if(this.itemMapping["id"+b.id]){var c=this.itemMapping["id"+b.id].item;return c}return null},isExpanded:function(b){if(b==null||b==undefined){return false}var c=this.itemMapping["id"+b.id].item;if(c!=null){return c.isExpanded}return false},isSelected:function(b){if(b==null||b==undefined){return false}var c=this.itemMapping["id"+b.id].item;if(c!=null){return c==this.selectedItem}return false},getPrevItem:function(c){var d=this.getItem(c);if(c.treeInstance!=undefined){d=c}var b=this._prevVisibleItem(d);return b},getNextItem:function(c){var d=this.getItem(c);if(c.treeInstance!=undefined){d=c}var b=this._nextVisibleItem(d);return b},getSelectedItem:function(b){return this.selectedItem},val:function(d){if(arguments.length==0||typeof(d)=="object"){return this.selectedItem}if(typeof d=="string"){var b=this.host.find("#"+d);if(b.length>0){var c=this.getItem(b[0]);this.selectItem(c)}}else{var c=this.getItem(d);this.selectItem(c)}},getActiveDescendant:function(){if(this.selectedItem){return this.selectedItem.element.id}return""},clearSelection:function(){this.selectItem(null)},selectItem:function(b){if(this.disabled){return}var c=this;if(b&&b.treeInstance!=undefined){b=b.element}if(b==null||b==undefined){if(c.selectedItem!=null){a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-fill-state-pressed"));a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-tree-item-selected"));c.selectedItem=null}return}if(this.selectedItem!=null&&this.selectedItem.element==b){return}var d=this.selectedItem!=null?this.selectedItem.element:null;if(d){a(d).removeAttr("aria-selected")}a.each(c.items,function(){var e=this;this.selected=false;if(!e.disabled){if(e.element==b){if(c.selectedItem==null||(c.selectedItem!=null&&c.selectedItem.titleElement!=e.titleElement)){if(c.selectedItem!=null){a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-fill-state-pressed"));a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-tree-item-selected"))}a(e.titleElement).addClass(c.toThemeProperty("jqx-fill-state-pressed"));a(e.titleElement).addClass(c.toThemeProperty("jqx-tree-item-selected"));c.selectedItem=e;this.selected=true;a(e.element).attr("aria-selected","true");a.jqx.aria(c,"aria-activedescendant",e.element.id)}}}});this._updateInputSelection();this._raiseEvent("2",{element:b,prevElement:d})},collapseAll:function(){this.isUpdating=true;var d=this;var b=d.items;var c=this.animationHideDuration;this.animationHideDuration=0;a.each(b,function(){var e=this;if(e.isExpanded==true){d._collapseItem(d,e)}});setTimeout(function(){d.isUpdating=false;d._calculateWidth()},this.animationHideDuration);this.animationHideDuration=c},expandAll:function(){var c=this;this.isUpdating=true;var b=this.animationShowDuration;this.animationShowDuration=0;a.each(this.items,function(){var d=this;if(d.hasItems){c._expandItem(c,d)}});setTimeout(function(){c.isUpdating=false;c._calculateWidth()},this.animationShowDuration);this.animationShowDuration=b},collapseItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(this.items,function(){var d=this;if(d.isExpanded==true&&d.element==b){c._collapseItem(c,d);return false}});return true},expandItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(c.items,function(){var d=this;if(d.isExpanded==false&&d.element==b&&!d.disabled&&!d.locked){c._expandItem(c,d);if(d.parentElement){c.expandItem(d.parentElement)}}});return true},_getClosedSubtreeOffset:function(c){var b=a(c.subtreeElement);var e=-b.outerHeight();var d=-b.outerWidth();d=0;return{left:d,top:e}},_collapseItem:function(g,k,d,b){if(g==null||k==null){return false}if(k.disabled){return false}if(g.disabled){return false}if(g.locked){return false}var e=a(k.subtreeElement);var l=this._getClosedSubtreeOffset(k);var h=l.top;var c=l.left;$treeElement=a(k.element);var f=g.animationHideDelay;f=0;if(e.data("timer").show!=null){clearTimeout(e.data("timer").show);e.data("timer").show=null}var j=function(){k.isExpanded=false;if(g.checkboxes){var n=e.find(".chkbox");n.stop();n.css("opacity",1);e.find(".chkbox").animate({opacity:0},50)}var m=a(k.arrow);g._arrowStyle(m,"",k.isExpanded);e.slideUp(g.animationHideDuration,function(){k.isCollapsing=false;g._calculateWidth();var o=a(k.arrow);g._arrowStyle(o,"",k.isExpanded);e.hide();g._raiseEvent("1",{element:k.element})})};if(f>0){e.data("timer").hide=setTimeout(function(){j()},f)}else{j()}},_expandItem:function(g,k){if(g==null||k==null){return false}if(k.isExpanded){return false}if(k.locked){return false}if(k.disabled){return false}if(g.disabled){return false}var e=a(k.subtreeElement);if((e.data("timer"))!=null&&e.data("timer").hide!=null){clearTimeout(e.data("timer").hide)}var j=a(k.element);var h=0;var d=0;if(parseInt(e.css("top"))==h){k.isExpanded=true;return}var c=a(k.arrow);g._arrowStyle(c,"",k.isExpanded);if(g.checkboxes){var f=e.find(".chkbox");f.stop();f.css("opacity",0);f.animate({opacity:1},g.animationShowDuration)}e.slideDown(g.animationShowDuration,g.easing,function(){var l=a(k.arrow);k.isExpanded=true;g._arrowStyle(l,"",k.isExpanded);k.isExpanding=false;g._raiseEvent("0",{element:k.element});g._calculateWidth()});if(g.checkboxes){g._updateCheckItemLayout(k);if(k.subtreeElement){var b=a(k.subtreeElement).find("li");a.each(b,function(){var l=g.getItem(this);if(l!=null){g._updateCheckItemLayout(l)}})}}},_calculateWidth:function(){var f=this;var g=this.checkboxes?20:0;var e=0;if(this.isUpdating){return}a.each(this.items,function(){var h=a(this.element).height();if(h!=0){var l=a(this.titleElement).outerWidth()+10+g+(1+this.level)*20;e=Math.max(e,l);if(this.hasItems){var j=parseInt(a(this.titleElement).css("padding-top"));if(isNaN(j)){j=0}j=j*2;j+=2;var k=(j+a(this.titleElement).height())/2-17/2;if(a.jqx.browser.msie&&a.jqx.browser.version<9){a(this.arrow).css("margin-top","3px")}else{if(parseInt(k)>=0){a(this.arrow).css("margin-top",parseInt(k)+"px")}}}}});if(this.toggleIndicatorSize>16){e=e+this.toggleIndicatorSize-16}if(f.panel){if(e>this.host.width()){var b=e-this.host.width();var d=f.panel.jqxPanel("vScrollBar").css("visibility")!=="hidden"?10:0;b+=d;f.panel.jqxPanel({horizontalScrollBarMax:b})}else{f.panel.jqxPanel({horizontalScrollBarMax:0})}}this.host.find("ul:first").width(e);var c=this.host.width()-30;if(c>0){this.host.find("ul:first").css("min-width",c)}if(f.panel){f.panel.jqxPanel("_arrange")}},_arrowStyle:function(c,h,b){var e=this;if(c.length>0){c.removeClass();var g="";if(h=="hover"){g="-"+h}var f=b?"-expand":"-collapse";var d="jqx-tree-item-arrow"+f+g;c.addClass(e.toThemeProperty(d));if(!this.rtl){var f=!b?"-right":"-down";c.addClass(e.toThemeProperty("jqx-icon-arrow"+f+""))}if(this.rtl){c.addClass(e.toThemeProperty(d+"-rtl"));var f=!b?"-left":"-down";c.addClass(e.toThemeProperty("jqx-icon-arrow"+f+""))}}},_initialize:function(f,c){var e=this;var d=0;this.host.addClass(e.toThemeProperty("jqx-widget"));this.host.addClass(e.toThemeProperty("jqx-widget-content"));this.host.addClass(e.toThemeProperty("jqx-tree"));this._updateDisabledState();var b=a.jqx.browser.msie&&a.jqx.browser.version<8;a.each(this.items,function(){var m=this;$element=a(m.element);var k=null;if(e.checkboxes&&!m.hasItems&&m.checkBoxElement){a(m.checkBoxElement).css("margin-left","0px")}if(!b){if(!m.hasItems){if(!e.rtl){m.element.style.marginLeft=parseInt(e.toggleIndicatorSize)+"px"}else{m.element.style.marginRight=parseInt(e.toggleIndicatorSize)+"px"}var j=a(m.arrow);if(j.length>0){j.remove();m.arrow=null}return true}else{if(!e.rtl){m.element.style.marginLeft="0px"}else{m.element.style.marginRight="0px"}}}else{if(!m.hasItems&&a(m.element).find("ul").length>0){a(m.element).find("ul").remove()}}var j=a(m.arrow);if(j.length>0){j.remove()}k=a('<span style="height: 17px; border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');k.prependTo($element);if(!e.rtl){k.css("float","left")}else{k.css("float","right")}k.css("clear","both");k.width(e.toggleIndicatorSize);e._arrowStyle(k,"",m.isExpanded);var l=parseInt(a(this.titleElement).css("padding-top"));if(isNaN(l)){l=0}l=l*2;l+=2;var n=(l+a(this.titleElement).height())/2-17/2;if(a.jqx.browser.msie&&a.jqx.browser.version<9){k.css("margin-top","3px")}else{if(parseInt(n)>=0){k.css("margin-top",parseInt(n)+"px")}}$element.addClass(e.toThemeProperty("jqx-disableselect"));k.addClass(e.toThemeProperty("jqx-disableselect"));var g="click";var h=e.isTouchDevice();if(h){g=a.jqx.mobile.getTouchEventName("touchend")}e.addHandler(k,g,function(){if(!m.isExpanded){e._expandItem(e,m)}else{e._collapseItem(e,m)}return false});e.addHandler(k,"selectstart",function(){return false});e.addHandler(k,"mouseup",function(){if(!h){return false}});m.hasItems=a(m.element).find("li").length>0;m.arrow=k[0];if(!m.hasItems){k.css("visibility","hidden")}$element.css("float","none")})},_getOffset:function(b){var f=a(window).scrollTop();var h=a(window).scrollLeft();var c=a.jqx.mobile.isSafariMobileBrowser();var g=a(b).offset();var e=g.top;var d=g.left;if(c!=null&&c){return{left:d-h,top:e-f}}else{return a(b).offset()}},_renderHover:function(c,e,b){var d=this;if(!b){var f=a(e.titleElement);d.addHandler(f,"mouseenter",function(){if(!e.disabled&&d.enableHover&&!d.disabled){f.addClass(d.toThemeProperty("jqx-fill-state-hover"));f.addClass(d.toThemeProperty("jqx-tree-item-hover"))}});d.addHandler(f,"mouseleave",function(){if(!e.disabled&&d.enableHover&&!d.disabled){f.removeClass(d.toThemeProperty("jqx-fill-state-hover"));f.removeClass(d.toThemeProperty("jqx-tree-item-hover"))}})}},_updateDisabledState:function(){if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}},_addInput:function(){if(this.input==null){var b=this.host.attr("name");if(b){this.host.attr("name","")}this.input=a("<input type='hidden'/>");this.host.append(this.input);this.input.attr("name",b);this._updateInputSelection()}},render:function(){this._updateItemsNavigation();this._render()},_render:function(f,j){if(a.jqx.browser.msie&&a.jqx.browser.version<8){var g=this;a.each(this.items,function(){var n=a(this.element);var p=n.parent();var m=parseInt(this.titleElement.css("margin-left"))+this.titleElement[0].scrollWidth+13;n.css("min-width",m);var o=parseInt(p.css("min-width"));if(isNaN(o)){o=0}var l=n.css("min-width");if(o<parseInt(n.css("min-width"))){p.css("min-width",l)}this.titleElement[0].style.width=null})}var h=1000;var c=[5,5];var g=this;a.data(g.element,"animationHideDelay",g.animationHideDelay);a.data(document.body,"treeel",this);this._initialize();var d=this.isTouchDevice();if(d&&this.toggleMode=="dblclick"){this.toggleMode="click"}if(f==undefined||f==true){a.each(this.items,function(){g._updateItemEvents(g,this)})}if(this.allowDrag&&this._enableDragDrop&&(j==undefined||j==true)){this._enableDragDrop()}this._addInput();if(this.host.jqxPanel){if(this.host.find("#panel"+this.element.id).length>0){this.panel.jqxPanel({touchMode:this.touchMode});this.panel.jqxPanel("refresh");return}this.host.find("ul:first").wrap('<div style="background-color: transparent; overflow: hidden; width: 100%; height: 100%;" id="panel'+this.element.id+'"></div>');var b=this.host.find("div:first");var k="fixed";if(this.height==null||this.height=="auto"){k="verticalwrap"}if(this.width==null||this.width=="auto"){if(k=="fixed"){k="horizontalwrap"}else{k="wrap"}}b.jqxPanel({rtl:this.rtl,theme:this.theme,width:"100%",height:"100%",touchMode:this.touchMode,sizeMode:k});if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.jqxPanel("content").css("left","0px")}b.data({nestedWidget:true});if(this.height==null||(this.height!=null&&this.height.toString().indexOf("%")!=-1)){if(this.isTouchDevice()){this.removeHandler(b,a.jqx.mobile.getTouchEventName("touchend")+".touchScroll touchcancel.touchScroll");this.removeHandler(b,a.jqx.mobile.getTouchEventName("touchmove")+".touchScroll");this.removeHandler(b,a.jqx.mobile.getTouchEventName("touchstart")+".touchScroll")}}var e=a.data(b[0],"jqxPanel").instance;if(e!=null){this.vScrollInstance=e.vScrollInstance;this.hScrollInstance=e.hScrollInstance}this.panelInstance=e;if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.host.attr("hideFocus",true);this.host.find("div").attr("hideFocus",true);this.host.find("ul").attr("hideFocus",true)}b[0].className="";this.panel=b}this._raiseEvent("3",this)},focus:function(){try{this.host.focus()}catch(b){}},_updateItemEvents:function(h,k){var b=this.isTouchDevice();if(b){this.toggleMode=a.jqx.mobile.getTouchEventName("touchend")}var j=a(k.element);if(h.enableRoundedCorners){j.addClass(h.toThemeProperty("jqx-rc-all"))}var e=!b?"mousedown":a.jqx.mobile.getTouchEventName("touchend");if(h.touchMode===true){h.removeHandler(a(k.checkBoxElement),"mousedown")}h.removeHandler(a(k.checkBoxElement),e);h.addHandler(a(k.checkBoxElement),e,function(l){if(!h.disabled){if(!this.treeItem.disabled){this.treeItem.checked=!this.treeItem.checked;h.checkItem(this.treeItem.element,this.treeItem.checked,"tree");if(h.hasThreeStates){h.checkItems(this.treeItem,this.treeItem)}}}return false});var c=a(k.titleElement);h.removeHandler(j);var f=this.allowDrag&&this._enableDragDrop;if(!f){h.removeHandler(c)}else{h.removeHandler(c,"mousedown.item");h.removeHandler(c,"click");h.removeHandler(c,"dblclick");h.removeHandler(c,"mouseenter");h.removeHandler(c,"mouseleave")}h._renderHover(j,k,b);var d=a(k.subtreeElement);if(d.length>0){var g=k.isExpanded?"block":"none";d.css({overflow:"hidden",display:g});d.data("timer",{})}h.addHandler(c,"selectstart",function(l){return false});if(a.jqx.browser.opera){h.addHandler(c,"mousedown.item",function(l){return false})}if(h.toggleMode!="click"){h.addHandler(c,"click",function(l){h.selectItem(k.element);if(h.panel!=null){h.panel.jqxPanel({focused:true})}c.focus()})}h.addHandler(c,h.toggleMode,function(l){if(d.length>0){clearTimeout(d.data("timer").hide)}if(h.panel!=null){h.panel.jqxPanel({focused:true})}h.selectItem(k.element);if(k.isExpanding==undefined){k.isExpanding=false}if(k.isCollapsing==undefined){k.isCollapsing=false}if(d.length>0){if(!k.isExpanded){if(false==k.isExpanding){k.isExpanding=true;h._expandItem(h,k)}}else{if(false==k.isCollapsing){k.isCollapsing=true;h._collapseItem(h,k,true)}}return false}})},isTouchDevice:function(){if(this._isTouchDevice!=undefined){return this._isTouchDevice}var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){b=true}else{if(this.touchMode==false){b=false}}this._isTouchDevice=b;return b},createID:function(){return a.jqx.utilities.createId()},createTree:function(b){if(b==null){return}var d=this;var f=a(b).find("li");var c=0;this.items=new Array();this.itemMapping=new Array();a(b).addClass(d.toThemeProperty("jqx-tree-dropdown-root"));if(this.rtl){a(b).addClass(d.toThemeProperty("jqx-tree-dropdown-root-rtl"))}if(this.rtl||a.jqx.browser.msie&&a.jqx.browser.version<8){this._measureItem=a("<span style='position: relative; visibility: hidden;'></span>");this._measureItem.addClass(this.toThemeProperty("jqx-widget"));this._measureItem.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._measureItem.addClass(this.toThemeProperty("jqx-tree-item"));this._measureItem.addClass(this.toThemeProperty("jqx-item"));a(document.body).append(this._measureItem)}if(a.jqx.browser.msie&&a.jqx.browser.version<8){}for(var e=0;e<f.length;e++){this._createItem(f[e])}if(this.rtl||a.jqx.browser.msie&&a.jqx.browser.version<8){this._measureItem.remove()}this._updateItemsNavigation();this._updateCheckStates()},_updateCheckLayout:function(c){var b=this;if(!this.checkboxes){return}a.each(this.items,function(){if(this.level==c||c==undefined){b._updateCheckItemLayout(this)}})},_updateCheckItemLayout:function(b){if(this.checkboxes){if(a(b.titleElement).css("display")!="none"){var c=a(b.checkBoxElement);var d=a(b.titleElement).outerHeight()/2-1-parseInt(this.checkSize)/2;c.css("margin-top",d);if(!this.rtl){if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.titleElement.css("margin-left",parseInt(this.checkSize)+25)}else{if(b.hasItems){c.css("margin-left",this.toggleIndicatorSize)}}}}}},_updateCheckStates:function(){var b=this;if(b.hasThreeStates){a.each(this.items,function(){b._updateCheckState(this)})}else{a.each(this.items,function(){if(this.checked==null){b.checkItem(this.element,false,"tree")}})}},_updateCheckState:function(e){if(e==null||e==undefined){return}var d=this;var c=0;var f=false;var b=0;var g=a(e.element).find("li");b=g.length;if(e.checked&&b>0){a.each(g,function(h){var k=d.itemMapping["id"+this.id].item;var j=k.element.getAttribute("item-checked");if(j==undefined||j==null||j=="true"||j==true){d.checkItem(k.element,true,"tree")}})}a.each(g,function(h){var j=d.itemMapping["id"+this.id].item;if(j.checked!=false){if(j.checked==null){f=true}c++}});if(b>0){if(c==b){this.checkItem(e.element,true,"tree")}else{if(c>0){this.checkItem(e.element,null,"tree")}else{this.checkItem(e.element,false,"tree")}}}},_updateItemsNavigation:function(){var g=this.host.find("ul:first");var f=a(g).find("li");var c=0;for(var d=0;d<f.length;d++){var b=f[d];if(this.itemMapping["id"+b.id]){var e=this.itemMapping["id"+b.id].item;if(!e){continue}e.prevItem=null;e.nextItem=null;if(d>0){if(this.itemMapping["id"+f[d-1].id]){e.prevItem=this.itemMapping["id"+f[d-1].id].item}}if(d<f.length-1){if(this.itemMapping["id"+f[d+1].id]){e.nextItem=this.itemMapping["id"+f[d+1].id].item}}}}},_applyTheme:function(e,h){var f=this;this.host.removeClass("jqx-tree-"+e);this.host.removeClass("jqx-widget-"+e);this.host.removeClass("jqx-widget-content-"+e);this.host.addClass(f.toThemeProperty("jqx-tree"));this.host.addClass(f.toThemeProperty("jqx-widget"));var b=this.host.find("ul:first");a(b).removeClass(f.toThemeProperty("jqx-tree-dropdown-root-"+e));a(b).addClass(f.toThemeProperty("jqx-tree-dropdown-root"));if(this.rtl){a(b).removeClass(f.toThemeProperty("jqx-tree-dropdown-root-rtl-"+e));a(b).addClass(f.toThemeProperty("jqx-tree-dropdown-root-rtl"))}var g=a(b).find("li");for(var d=0;d<g.length;d++){var c=g[d];a(c).children().each(function(){if(this.tagName=="ul"||this.tagName=="UL"){a(this).removeClass(f.toThemeProperty("jqx-tree-dropdown-"+e));a(this).addClass(f.toThemeProperty("jqx-tree-dropdown"));if(f.rtl){a(this).removeClass(f.toThemeProperty("jqx-tree-dropdown-rtl-"+e));a(this).addClass(f.toThemeProperty("jqx-tree-dropdown-rtl"))}return false}})}a.each(this.items,function(){var l=this;var k=a(l.element);k.removeClass(f.toThemeProperty("jqx-tree-item-li-"+e));k.addClass(f.toThemeProperty("jqx-tree-item-li"));if(this.rtl){k.removeClass(f.toThemeProperty("jqx-tree-item-li-"+e));k.addClass(f.toThemeProperty("jqx-tree-item-li"))}a(l.titleElement).removeClass(f.toThemeProperty("jqx-tree-item-"+e));a(l.titleElement).addClass(f.toThemeProperty("jqx-tree-item"));a(l.titleElement).removeClass("jqx-item-"+e);a(l.titleElement).addClass(f.toThemeProperty("jqx-item"));var j=a(l.arrow);if(j.length>0){f._arrowStyle(j,"",l.isExpanded)}if(l.checkBoxElement){a(l.checkBoxElement).jqxCheckBox({theme:h})}if(f.enableRoundedCorners){k.removeClass("jqx-rc-all-"+e);k.addClass(f.toThemeProperty("jqx-rc-all"))}});if(this.host.jqxPanel){this.panel.jqxPanel({theme:h})}},_refreshMapping:function(f,q){var e=this.host.find("li");var b=new Array();var p=new Array();var h=a.data(document.body,"treeItemsStorage");var l=this;for(var j=0;j<e.length;j++){var k=e[j];var d=a(k);var o=h[k.id];if(o==null){continue}p[p.length]=o;if(f==undefined||f==true){this._updateItemEvents(this,o)}o.level=d.parents("li").length;o.treeInstance=this;var n=null;var g=null;if(o.titleElement[0].className.indexOf("jqx-fill-state-pressed")!=-1){a(o.titleElement).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.titleElement).removeClass(l.toThemeProperty("jqx-tree-item-selected"))}var c=d.children();c.each(function(){if(this.tagName=="ul"||this.tagName=="UL"){o.subtreeElement=this;a(this).addClass(l.toThemeProperty("jqx-tree-dropdown"));if(l.rtl){a(this).addClass(l.toThemeProperty("jqx-tree-dropdown-rtl"))}return false}});var m=d.parents();m.each(function(){if((this.tagName=="li"||this.tagName=="LI")){g=this.id;n=this;return false}});o.parentElement=n;o.parentId=g;o.hasItems=a(o.element).find("li").length>0;if(o!=null){b[j]={element:k,item:o};b["id"+k.id]=b[j]}}this.itemMapping=b;this.items=p},_createItem:function(c){if(c==null||c==undefined){return}var r=c.id;if(!r){r=this.createID()}var F=c;var m=a(c);F.id=r;var g=a.data(document.body,"treeItemsStorage");if(g==undefined){g=new Array()}var x=this.items.length;this.items[x]=new a.jqx._jqxTree.jqxTreeItem();this.treeElements[r]=this.items[x];g[F.id]=this.items[x];a.data(document.body,"treeItemsStorage",g);x=this.items.length;var A=0;var H=this;var e=null;m.attr("role","treeitem");m.children().each(function(){if(this.tagName=="ul"||this.tagName=="UL"){H.items[x-1].subtreeElement=this;a(this).addClass(H.toThemeProperty("jqx-tree-dropdown"));if(H.rtl){a(this).addClass(H.toThemeProperty("jqx-tree-dropdown-rtl"));a(this).css("clear","both")}return false}});m.parents().each(function(){if((this.tagName=="li"||this.tagName=="LI")){A=this.id;e=this;return false}});var w=c.getAttribute("item-expanded");if(w==null||w==undefined||(w!="true"&&w!=true)){w=false}else{w=true}F.removeAttribute("item-expanded");var G=c.getAttribute("item-locked");if(G==null||G==undefined||(G!="true"&&G!=true)){G=false}else{G=true}F.removeAttribute("item-locked");var s=c.getAttribute("item-selected");if(s==null||s==undefined||(s!="true"&&s!=true)){s=false}else{s=true}F.removeAttribute("item-selected");var d=c.getAttribute("item-disabled");if(d==null||d==undefined||(d!="true"&&d!=true)){d=false}else{d=true}F.removeAttribute("item-disabled");var j=c.getAttribute("item-checked");if(j==null||j==undefined||(j!="true"&&j!=true)){j=false}else{j=true}var I=c.getAttribute("item-title");if(I==null||I==undefined||(I!="true"&&I!=true)){I=false}F.removeAttribute("item-title");var D=c.getAttribute("item-icon");var t=c.getAttribute("item-iconsize");var l=c.getAttribute("item-label");var v=c.getAttribute("item-value");F.removeAttribute("item-icon");F.removeAttribute("item-iconsize");F.removeAttribute("item-label");F.removeAttribute("item-value");var C=this.items[x-1];C.id=r;if(C.value==undefined){if(this._valueList&&this._valueList[r]){C.value=this._valueList[r]}else{C.value=v}}C.icon=D;C.iconsize=t;C.parentId=A;C.disabled=d;C.parentElement=e;C.element=c;C.locked=G;C.selected=s;C.checked=j;C.isExpanded=w;C.treeInstance=this;this.itemMapping[x-1]={element:F,item:C};this.itemMapping["id"+F.id]=this.itemMapping[x-1];var h=false;var E=false;h=false;if(this.rtl){a(C.element).css("float","right");a(C.element).css("clear","both")}if(!h||!E){if(a(F.firstChild).length>0){if(C.icon){var t=C.iconsize;if(!t){t=16}var D=a('<img width="'+t+'" height="'+t+'" style="float: left;" class="itemicon" src="'+C.icon+'"/>');a(F).prepend(D);D.css("margin-right","4px");if(this.rtl){D.css("margin-right","0px");D.css("margin-left","4px");D.css("float","right")}}var b=F.innerHTML.indexOf("<ul");if(b==-1){b=F.innerHTML.indexOf("<UL")}if(b==-1){C.originalTitle=F.innerHTML;F.innerHTML='<div style="display: inline-block;">'+F.innerHTML+"</div>";C.titleElement=a(a(F)[0].firstChild)}else{var B=F.innerHTML.substring(0,b);B=a.trim(B);C.originalTitle=B;B=a('<div style="display: inline-block;">'+B+"</div>");var o=a(F).find("ul:first");o.remove();F.innerHTML="";a(F).prepend(B);a(F).append(o);C.titleElement=B;if(this.rtl){B.css("float","right");o.css("padding-right","10px")}}if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(a(F)[0].firstChild).css("display","inline-block");var n=false;if(this._measureItem.parents().length==0){a(document.body).append(this._measureItem);n=true}this._measureItem.css("min-width","20px");this._measureItem[0].innerHTML=(a(C.titleElement).text());var u=this._measureItem.width();if(C.icon){u+=20}if(a(a(item.titleElement).find("img")).length>0){u+=20}a(a(F)[0].firstChild).css("max-width",u+"px");if(n){this._measureItem.remove()}}}else{C.originalTitle="Item";a(F).append(a("<span>Item</span>"));a(F.firstChild).wrap("<span/>");C.titleElement=a(F)[0].firstChild;if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(F.firstChild).css("display","inline-block")}}}var z=a(C.titleElement);var q=this.toThemeProperty("jqx-rc-all");if(this.allowDrag){z.addClass("draggable")}if(l==null||l==undefined){l=C.titleElement;C.label=a.trim(z.text())}else{C.label=l}a(F).addClass(this.toThemeProperty("jqx-tree-item-li"));if(this.rtl){a(F).addClass(this.toThemeProperty("jqx-tree-item-li-rtl"))}q+=" "+this.toThemeProperty("jqx-tree-item")+" "+this.toThemeProperty("jqx-item");if(this.rtl){q+=" "+this.toThemeProperty("jqx-tree-item-rtl")}z[0].className=z[0].className+" "+q;C.level=a(c).parents("li").length;C.hasItems=a(c).find("li").length>0;if(this.rtl&&C.parentElement){if(!this.checkboxes){}}if(this.checkboxes){if(this.host.jqxCheckBox){var p=a('<div style="position: absolute; width: 18px; height: 18px;" tabIndex=0 class="chkbox"/>');p.width(parseInt(this.checkSize));p.height(parseInt(this.checkSize));a(F).prepend(p);if(this.rtl){p.css("float","right");p.css("position","static")}p.jqxCheckBox({hasInput:false,checked:C.checked,boxSize:this.checkSize,animationShowDelay:0,animationHideDelay:0,disabled:d,theme:this.theme});if(!this.rtl){z.css("margin-left",parseInt(this.checkSize)+6)}else{var y=5;if(C.parentElement){p.css("margin-right",y+5+"px")}else{p.css("margin-right",y+"px")}}C.checkBoxElement=p[0];p[0].treeItem=C;var f=z.outerHeight()/2-1-parseInt(this.checkSize)/2;p.css("margin-top",f);if(a.jqx.browser.msie&&a.jqx.browser.version<8){z.css("width","1%");z.css("margin-left",parseInt(this.checkSize)+25)}else{if(C.hasItems){if(!this.rtl){p.css("margin-left",this.toggleIndicatorSize)}}}}else{throw new Error("jqxTree: Missing reference to jqxcheckbox.js.");return}}else{if(a.jqx.browser.msie&&a.jqx.browser.version<8){z.css("width","1%")}}if(d){this.disableItem(C.element)}if(s){this.selectItem(C.element)}if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(F).css("margin","0px");a(F).css("padding","0px")}},destroy:function(){this.removeHandler(a(window),"resize.jqxtree"+this.element.id);this.host.removeClass();if(this.isTouchDevice()){this.removeHandler(this.panel,a.jqx.mobile.getTouchEventName("touchend")+".touchScroll touchcancel.touchScroll");this.removeHandler(this.panel,a.jqx.mobile.getTouchEventName("touchmove")+".touchScroll");this.removeHandler(this.panel,a.jqx.mobile.getTouchEventName("touchstart")+".touchScroll")}var c=this;var b=this.isTouchDevice();a.each(this.items,function(){var g=this;var e=a(this.element);var d=!b?"click":a.jqx.mobile.getTouchEventName("touchend");c.removeHandler(a(g.checkBoxElement),d);var h=a(g.titleElement);c.removeHandler(e);var f=c.allowDrag&&c._enableDragDrop;if(!f){c.removeHandler(h)}else{c.removeHandler(h,"mousedown.item");c.removeHandler(h,"click");c.removeHandler(h,"dblclick");c.removeHandler(h,"mouseenter");c.removeHandler(h,"mouseleave")}$arrowSpan=a(g.arrow);if($arrowSpan.length>0){c.removeHandler($arrowSpan,d);c.removeHandler($arrowSpan,"selectstart");c.removeHandler($arrowSpan,"mouseup");if(!b){c.removeHandler($arrowSpan,"mouseenter");c.removeHandler($arrowSpan,"mouseleave")}c.removeHandler(h,"selectstart")}if(a.jqx.browser.opera){c.removeHandler(h,"mousedown.item")}if(c.toggleMode!="click"){c.removeHandler(h,"click")}c.removeHandler(h,c.toggleMode)});if(this.panel){this.panel.jqxPanel("destroy");this.panel=null}this.host.remove()},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);e.owner=this;e.args=args;var b=this.host.trigger(e);return b},propertyChangedHandler:function(d,l,b,j){if(this.isInitialized==undefined||this.isInitialized==false){return}if(l=="submitCheckedItems"){d._updateInputSelection()}if(l=="disabled"){d._updateDisabledState()}if(l=="theme"){d._applyTheme(b,j)}if(l=="keyboardNavigation"){d.enableKeyboardNavigation=j}if(l=="width"||l=="height"){d.refresh();d._initialize();d._calculateWidth();if(d.host.jqxPanel){var k="fixed";if(this.height==null||this.height=="auto"){k="verticalwrap"}if(this.width==null||this.width=="auto"){if(k=="fixed"){k="horizontalwrap"}else{k="wrap"}}d.panel.jqxPanel({sizeMode:k})}}if(l=="touchMode"){d._isTouchDevice=null;if(j){d.enableHover=false}d._render()}if(l=="source"||l=="checkboxes"){if(this.source!=null){var m=[];a.each(d.items,function(){if(this.isExpanded){m[m.length]={label:this.label,level:this.level}}});var f=d.loadItems(d.source);if(!d.host.jqxPanel){d.element.innerHTML=f}else{d.panel.jqxPanel("setcontent",f)}var e=d.disabled;var g=d.host.find("ul:first");if(g.length>0){d.createTree(g[0]);d._render()}var h=d;var c=h.animationShowDuration;h.animationShowDuration=0;d.disabled=false;if(m.length>0){a.each(d.items,function(){for(var n=0;n<m.length;n++){if(m[n].label==this.label&&m[n].level==this.level){var o=h.getItem(this.element);h._expandItem(h,o)}}})}d.disabled=e;h.animationShowDuration=c}}if(l=="hasThreeStates"){d._render();d._updateCheckStates()}if(l=="toggleIndicatorSize"){d._updateCheckLayout();d._render()}}})})(jqxBaseFramework);(function(a){a.jqx._jqxTree.jqxTreeItem=function(e,d,b){var c={label:null,id:e,parentId:d,parentElement:null,parentItem:null,disabled:false,selected:false,locked:false,checked:false,level:0,isExpanded:false,hasItems:false,element:null,subtreeElement:null,checkBoxElement:null,titleElement:null,arrow:null,prevItem:null,nextItem:null};return c}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDragDrop","",{});a.extend(a.jqx._jqxDragDrop.prototype,{defineInstance:function(){var b={restricter:"document",handle:false,feedback:"clone",opacity:0.6,revert:false,revertDuration:400,distance:5,disabled:false,tolerance:"intersect",data:null,dropAction:"default",dragZIndex:999999,appendTo:"parent",cursor:"move",onDragEnd:null,onDrag:null,onDragStart:null,onTargetDrop:null,onDropTargetEnter:null,onDropTargetLeave:null,initFeedback:null,dropTarget:null,isDestroyed:false,triggerEvents:true,_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_restricter:null,_zIndexBackup:0,_targetEnterFired:false,_oldOpacity:1,_feedbackType:undefined,_isTouchDevice:false,_events:["dragStart","dragEnd","dragging","dropTargetEnter","dropTargetLeave"]};a.extend(true,this,b);return b},createInstance:function(){this._createDragDrop()},_createDragDrop:function(){var c=a.data(document.body,"jqx-draggables")||1;this.appendTo=this._getParent();this._isTouchDevice=a.jqx.mobile.isTouchDevice();if((/(static|relative)/).test(this.host.css("position"))){if(!this.feedback||this.feedback==="original"){var d=this._getRelativeOffset(this.host);var b=this.appendTo.offset();if(this.appendTo.css("position")!="static"){b={left:0,top:0}}this.element.style.position="absolute";this.element.style.left=b.left+d.left+"px";this.element.style.top=b.top+d.top+"px"}}this._validateProperties();this._idHandler(c);if(this.disabled){this.disable()}if(typeof this.dropTarget==="string"){this.dropTarget=a(this.dropTarget)}this._refresh();c+=1;a.data(document.body,"jqx-draggables",c);this.host.addClass("jqx-draggable");if(!this.disabled){this.host.css("cursor",this.cursor)}},_getParent:function(){var b=this.appendTo;if(typeof this.appendTo==="string"){switch(this.appendTo){case"parent":b=this.host.parent();break;case"document":b=a(document);break;case"body":b=a(document.body);break;default:b=a(this.appendTo);break}}return b},_idHandler:function(b){if(!this.element.id){var c="jqx-draggable-"+b;this.element.id=c}},_refresh:function(){this._removeEventHandlers();this._addEventHandlers()},_getEvent:function(b){if(this._isTouchDevice){return this._touchEvents[b]}else{return b}},_validateProperties:function(){if(this.feedback==="clone"){this._feedbackType="clone"}else{this._feedbackType="original"}if(this.dropAction!=="default"){this.dropAction="nothing"}},_removeEventHandlers:function(){this.removeHandler(this.host,"dragstart");this.removeHandler(this.host,this._getEvent("mousedown")+".draggable."+this.element.id,this._mouseDown);this.removeHandler(a(document),this._getEvent("mousemove")+".draggable."+this.element.id,this._mouseMove);this.removeHandler(a(document),this._getEvent("mouseup")+".draggable."+this.element.id,this._mouseUp)},_addEventHandlers:function(){var b=this;this.addHandler(this.host,"dragstart",function(g){if(b.disabled){return true}var f=a.jqx.mobile.isTouchDevice();if(!f){g.preventDefault();return false}});this.addHandler(this.host,this._getEvent("mousedown")+".draggable."+this.element.id,this._mouseDown,{self:this});this.addHandler(a(document),this._getEvent("mousemove")+".draggable."+this.element.id,this._mouseMove,{self:this});this.addHandler(a(document),this._getEvent("mouseup")+".draggable."+this.element.id,this._mouseUp,{self:this});try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var e="";if(window.parent&&document.referrer){e=document.referrer}if(e.indexOf(document.location.host)!=-1){var d=function(f){b._mouseUp(b)};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",d,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",d)}}}}}}catch(c){}},_mouseDown:function(f){var b=f.data.self,d=b._getMouseCoordinates(f),c=b._mouseCapture(f);b._originalPageX=d.left;b._originalPageY=d.top;if(b.disabled){return true}var e=false;if(!b._mouseStarted){b._mouseUp(f);e=true}if(c){b._mouseDownEvent=f}if(b._isTouchDevice){return true}if(f.which!==1||!c){return true}f.preventDefault();if(e==true){}},_mouseMove:function(c){var b=c.data.self;if(b.disabled){return true}if(b._mouseStarted){b._mouseDrag(c);if(c.preventDefault){c.preventDefault()}return false}if(b._mouseDownEvent&&b._isMovedDistance(c)){if(b._mouseStart(b._mouseDownEvent,c)){b._mouseStarted=true}else{b._mouseStarted=false}if(b._mouseStarted){b._mouseDrag(c)}else{b._mouseUp(c)}}return !b._mouseStarted},_mouseUp:function(c){var b;if(c.data&&c.data.self){b=c.data.self}else{b=this}if(b.disabled){return true}b._mouseDownEvent=false;b._movedDistance=false;if(b._mouseStarted){b._mouseStarted=false;b._mouseStop(c)}if(b.feedback&&b.feedback[0]&&b._feedbackType!=="original"&&typeof b.feedback.remove==="function"&&!b.revert){b.feedback.remove()}if(!b._isTouchDevice){return false}},cancelDrag:function(){var b=this.revertDuration;this.revertDuration=0;this._mouseDownEvent=false;this._movedDistance=false;this._mouseStarted=false;this._mouseStop();this.feedback.remove();this.revertDuration=b},_isMovedDistance:function(b){var c=this._getMouseCoordinates(b);if(this._movedDistance){return true}if(c.left>=this._originalPageX+this.distance||c.left<=this._originalPageX-this.distance||c.top>=this._originalPageY+this.distance||c.top<=this._originalPageY-this.distance){this._movedDistance=true;return true}return false},_getMouseCoordinates:function(b){if(this._isTouchDevice){var c=a.jqx.position(b);return{left:c.left,top:c.top}}else{return{left:b.pageX,top:b.pageY}}},destroy:function(){this._enableSelection(this.host);this.host.removeData("draggable").off(".draggable").removeClass("jqx-draggable jqx-draggable-dragging jqx-draggable-disabled");this._removeEventHandlers();this.isDestroyed=true;return this},_disableSelection:function(b){b.each(function(){a(this).attr("unselectable","on").css({"-ms-user-select":"none","-moz-user-select":"none","-webkit-user-select":"none","user-select":"none"}).each(function(){this.onselectstart=function(){return false}})})},_enableSelection:function(b){b.each(function(){a(this).attr("unselectable","off").css({"-ms-user-select":"text","-moz-user-select":"text","-webkit-user-select":"text","user-select":"text"}).each(function(){this.onselectstart=null})})},_mouseCapture:function(b){if(this.disabled){return false}if(!this._getHandle(b)){return false}this._disableSelection(this.host);return true},_getScrollParent:function(b){var c;if((a.jqx.browser.msie&&(/(static|relative)/).test(b.css("position")))||(/absolute/).test(b.css("position"))){c=b.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.css(this,"position",1))&&(/(auto|scroll)/).test(a.css(this,"overflow",1)+a.css(this,"overflow-y",1)+a.css(this,"overflow-x",1))}).eq(0)}else{c=b.parents().filter(function(){return(/(auto|scroll)/).test(a.css(this,"overflow",1)+a.css(this,"overflow-y",1)+a.css(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(b.css("position"))||!c.length?a(document):c},_mouseStart:function(e){var d=this._getMouseCoordinates(e),c=this._getParentOffset(this.host);this.feedback=this._createFeedback(e);this._zIndexBackup=this.feedback.css("z-index");this.feedback[0].style.zIndex=this.dragZIndex;this._backupFeedbackProportions();this._backupeMargins();this._positionType=this.feedback.css("position");this._scrollParent=this._getScrollParent(this.feedback);this._offset=this.positionAbs=this.host.offset();this._offset={top:this._offset.top-this.margins.top,left:this._offset.left-this.margins.left};a.extend(this._offset,{click:{left:d.left-this._offset.left,top:d.top-this._offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset(),hostRelative:this._getRelativeOffset(this.host)});this.position=this._generatePosition(e);this.originalPosition=this._fixPosition();if(this.restricter){this._setRestricter()}this.feedback.addClass(this.toThemeProperty("jqx-draggable-dragging"));var b=this._raiseEvent(0,e);if(this.onDragStart&&typeof this.onDragStart==="function"){this.onDragStart(this.position)}this._mouseDrag(e,true);return true},_fixPosition:function(){var c=this._getRelativeOffset(this.host),b=this.position;b={left:this.position.left+c.left,top:this.position.top+c.top};return b},_mouseDrag:function(b,c){this.position=this._generatePosition(b);this.positionAbs=this._convertPositionTo("absolute");this.feedback[0].style.left=this.position.left+"px";this.feedback[0].style.top=this.position.top+"px";this._raiseEvent(2,b);if(this.onDrag&&typeof this.onDrag==="function"){this.onDrag(this.data,this.position)}this._handleTarget();return false},_over:function(b,d,e){if(this.dropTarget){var f=false,c=this;a.each(this.dropTarget,function(g,h){f=c._overItem(h,b,d,e);if(f.over){return false}})}return f},_overItem:function(i,c,e,g){i=a(i);var b=i.offset(),f=i.outerHeight(),d=i.outerWidth(),h;if(!i||i[0]===this.element){return}var h=false;switch(this.tolerance){case"intersect":if(c.left+e>b.left&&c.left<b.left+d&&c.top+g>b.top&&c.top<b.top+f){h=true}break;case"fit":if(e+c.left<=b.left+d&&c.left>=b.left&&g+c.top<=b.top+f&&c.top>=b.top){h=true}break}return{over:h,target:i}},_handleTarget:function(){if(this.dropTarget){var b=this.feedback.offset(),c=this.feedback.outerWidth(),d=this.feedback.outerHeight(),e=this._over(b,c,d);if(e.over){if(this._targetEnterFired&&e.target.length>0&&this._oldtarget&&this._oldtarget.length>0&&e.target[0]!=this._oldtarget[0]){this._raiseEvent(4,{target:this._oldtarget});if(this.onDropTargetLeave&&typeof this.onDropTargetLeave==="function"){this.onDropTargetLeave(this._oldtarget)}}if(!this._targetEnterFired||(e.target.length>0&&this._oldtarget&&this._oldtarget.length>0&&e.target[0]!=this._oldtarget[0])){this._targetEnterFired=true;this._raiseEvent(3,{target:e.target});if(this.onDropTargetEnter&&typeof this.onDropTargetEnter==="function"){this.onDropTargetEnter(e.target)}}this._oldtarget=e.target}else{if(this._targetEnterFired){this._targetEnterFired=false;this._raiseEvent(4,{target:this._oldtarget||e.target});if(this.onDropTargetLeave&&typeof this.onDropTargetLeave==="function"){this.onDropTargetLeave(this._oldtarget||e.target)}}}}},_mouseStop:function(d){var e=false,b=this._fixPosition(),c={width:this.host.outerWidth(),height:this.host.outerHeight()};this.feedback[0].style.opacity=this._oldOpacity;if(!this.revert){this.feedback[0].style.zIndex=this._zIndexBackup}this._enableSelection(this.host);if(this.dropped){e=this.dropped;this.dropped=false}if((!this.element||!this.element.parentNode)&&this.feedback==="original"){return false}this._dropElement(b);this.feedback.removeClass(this.toThemeProperty("jqx-draggable-dragging"));this._raiseEvent(1,d);if(this.onDragEnd&&typeof this.onDragEnd==="function"){this.onDragEnd(this.data)}if(this.onTargetDrop&&typeof this.onTargetDrop==="function"&&this._over(b,c.width,c.height).over){this.onTargetDrop(this._over(b,c.width,c.height).target)}this._revertHandler();return false},_dropElement:function(b){if(this.dropAction==="default"&&this.feedback&&this.feedback[0]!==this.element&&this.feedback!=="original"){if(!this.revert){if(!(/(fixed|absolute)/).test(this.host.css("position"))){this.host.css("position","relative");var c=this._getRelativeOffset(this.host);b=this.position;b.left-=c.left;b.top-=c.top;this.element.style.left=b.left+"px";this.element.style.top=b.top+"px"}}}},_revertHandler:function(){if(this.revert||(a.isFunction(this.revert)&&this.revert())){var b=this;if(this._feedbackType!="original"){if(this.feedback!=null){if(this.dropAction!="none"){a(this.feedback).animate({left:b.originalPosition.left-b._offset.hostRelative.left,top:b.originalPosition.top-b._offset.hostRelative.top},parseInt(this.revertDuration,10),function(){if(b.feedback&&b.feedback[0]&&b._feedbackType!=="original"&&typeof b.feedback.remove==="function"){b.feedback.remove()}})}else{if(b.feedback&&b.feedback[0]&&b._feedbackType!=="original"&&typeof b.feedback.remove==="function"){b.feedback.remove()}}}}else{this.element.style.zIndex=this.dragZIndex;a(this.host).animate({left:b.originalPosition.left-b._offset.hostRelative.left,top:b.originalPosition.top-b._offset.hostRelative.top},parseInt(this.revertDuration,10),function(){b.element.style.zIndex=b._zIndexBackup})}}},_getHandle:function(b){var c;if(!this.handle){c=true}else{a(this.handle,this.host).find("*").andSelf().each(function(){if(this==b.target){c=true}})}return c},_createFeedback:function(c){var b;if(typeof this._feedbackType==="function"){b=this._feedbackType()}else{if(this._feedbackType==="clone"){b=this.host.clone().removeAttr("id")}else{b=this.host}}if(!(/(absolute|fixed)/).test(b.css("position"))){b.css("position","absolute")}if(this.appendTo[0]!==this.host.parent()[0]||b[0]!==this.element){var d={};b.css({left:this.host.offset().left-this._getParentOffset(this.host).left+this._getParentOffset(b).left,top:this.host.offset().top-this._getParentOffset(this.host).top+this._getParentOffset(b).top});b.appendTo(this.appendTo)}if(typeof this.initFeedback==="function"){this.initFeedback(b)}return b},_getParentOffset:function(c){var c=c||this.feedback;this._offsetParent=c.offsetParent();var b=this._offsetParent.offset();if(this._positionType=="absolute"&&this._scrollParent[0]!==document&&a.contains(this._scrollParent[0],this._offsetParent[0])){b.left+=this._scrollParent.scrollLeft();b.top+=this._scrollParent.scrollTop()}if((this._offsetParent[0]==document.body)||(this._offsetParent[0].tagName&&this._offsetParent[0].tagName.toLowerCase()=="html"&&a.jqx.browser.msie)){b={top:0,left:0}}return{top:b.top+(parseInt(this._offsetParent.css("border-top-width"),10)||0),left:b.left+(parseInt(this._offsetParent.css("border-left-width"),10)||0)}},_getRelativeOffset:function(c){var d=this._scrollParent||c.parent();c=c||this.feedback;if(c.css("position")==="relative"){var b=this.host.position();return{top:b.top-(parseInt(c.css("top"),10)||0),left:b.left-(parseInt(c.css("left"),10)||0)}}else{return{top:0,left:0}}},_backupeMargins:function(){this.margins={left:(parseInt(this.host.css("margin-left"),10)||0),top:(parseInt(this.host.css("margin-top"),10)||0),right:(parseInt(this.host.css("margin-right"),10)||0),bottom:(parseInt(this.host.css("margin-bottom"),10)||0)}},_backupFeedbackProportions:function(){this.feedback[0].style.opacity=this.opacity;this._feedbackProportions={width:this.feedback.outerWidth(),height:this.feedback.outerHeight()}},_setRestricter:function(){if(this.restricter=="parent"){this.restricter=this.feedback[0].parentNode}if(this.restricter=="document"||this.restricter=="window"){this._handleNativeRestricter()}if(typeof this.restricter.left!=="undefined"&&typeof this.restricter.top!=="undefined"&&typeof this.restricter.height!=="undefined"&&typeof this.restricter.width!=="undefined"){this._restricter=[this.restricter.left,this.restricter.top,this.restricter.width,this.restricter.height]}else{if(!(/^(document|window|parent)$/).test(this.restricter)&&this.restricter.constructor!=Array){this._handleDOMParentRestricter()}else{if(this.restricter.constructor==Array){this._restricter=this.restricter}}}},_handleNativeRestricter:function(){this._restricter=[this.restricter==="document"?0:a(window).scrollLeft()-this._offset.relative.left-this._offset.parent.left,this.restricter==="document"?0:a(window).scrollTop()-this._offset.relative.top-this._offset.parent.top,(this.restricter==="document"?0:a(window).scrollLeft())+a(this.restricter==="document"?document:window).width()-this._feedbackProportions.width-this.margins.left,(this.restricter==="document"?0:a(window).scrollTop())+(a(this.restricter==="document"?document:window).height()||document.body.parentNode.scrollHeight)-this._feedbackProportions.height-this.margins.top]},_handleDOMParentRestricter:function(){var d=a(this.restricter),b=d[0];if(!b){return}var c=(a(b).css("overflow")!=="hidden");this._restricter=[(parseInt(a(b).css("borderLeftWidth"),10)||0)+(parseInt(a(b).css("paddingLeft"),10)||0),(parseInt(a(b).css("borderTopWidth"),10)||0)+(parseInt(a(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(a(b).css("borderLeftWidth"),10)||0)-(parseInt(a(b).css("paddingRight"),10)||0)-this._feedbackProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(a(b).css("borderTopWidth"),10)||0)-(parseInt(a(b).css("paddingBottom"),10)||0)-this._feedbackProportions.height-this.margins.top-this.margins.bottom];this._restrictiveContainer=d},_convertPositionTo:function(f,c){if(!c){c=this.position}var e,b,g;if(f==="absolute"){e=1}else{e=-1}if(this._positionType==="absolute"&&!(this._scrollParent[0]!=document&&a.contains(this._scrollParent[0],this._offsetParent[0]))){b=this._offsetParent}else{b=this._scrollParent}g=(/(html|body)/i).test(b[0].tagName);return this._getPosition(c,e,g,b)},_getPosition:function(c,d,e,b){return{top:(c.top+this._offset.relative.top*d+this._offset.parent.top*d-(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollTop():(e?0:b.scrollTop()))*d)),left:(c.left+this._offset.relative.left*d+this._offset.parent.left*d-(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollLeft():e?0:b.scrollLeft())*d))}},_generatePosition:function(f){var b=this._positionType=="absolute"&&!(this._scrollParent[0]!=document&&a.contains(this._scrollParent[0],this._offsetParent[0]))?this._offsetParent:this._scrollParent,i=(/(html|body)/i).test(b[0].tagName);var e=this._getMouseCoordinates(f),d=e.left,c=e.top;if(this.originalPosition){var h;if(this.restricter){if(this._restrictiveContainer){var g=this._restrictiveContainer.offset();h=[this._restricter[0]+g.left,this._restricter[1]+g.top,this._restricter[2]+g.left,this._restricter[3]+g.top]}else{h=this._restricter}if(e.left-this._offset.click.left<h[0]){d=h[0]+this._offset.click.left}if(e.top-this._offset.click.top<h[1]){c=h[1]+this._offset.click.top}if(e.left-this._offset.click.left>h[2]){d=h[2]+this._offset.click.left}if(e.top-this._offset.click.top>h[3]){c=h[3]+this._offset.click.top}}}return{top:(c-this._offset.click.top-this._offset.relative.top-this._offset.parent.top+(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollTop():(i?0:b.scrollTop())))),left:(d-this._offset.click.left-this._offset.relative.left-this._offset.parent.left+(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollLeft():i?0:b.scrollLeft())))}},_raiseEvent:function(c,e){if(this.triggerEvents!=undefined&&this.triggerEvents==false){return}var b=this._events[c],d=a.Event(b),e=e||{};e.position=this.position;e.element=this.element;a.extend(e,this.data);e.feedback=this.feedback;d.args=e;return this.host.trigger(d)},disable:function(){this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-draggable-disabled"));this._enableSelection(this.host)},enable:function(){this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-draggable-disabled"))},propertyChangedHandler:function(b,c,e,d){if(c==="dropTarget"){if(typeof d==="string"){b.dropTarget=a(d)}}else{if(c=="disabled"){if(d){b._enableSelection(b.host)}}else{if(c=="cursor"){b.host.css("cursor",b.cursor)}}}}})})(jqxBaseFramework);(function(a){jqxListBoxDragDrop=function(){a.extend(a.jqx._jqxListBox.prototype,{_hitTestBounds:function(b,c,e){var f=b.host.offset();var g=e-parseInt(f.top);var i=c-parseInt(f.left);var k=b._hitTest(i,g);if(g<0){return null}if(k!=null){var d=parseInt(f.left);var j=d+b.host.width();if(d<=c+k.width/2&&c<=j){return k}return null}if(b.items&&b.items.length>0){var h=b.items[b.items.length-1];if(b.groups.length<2){if(h.top+h.height+15>=g){return h}}}return null},_handleDragStart:function(d,c){var b=a.jqx.mobile.isTouchDevice();if(b){if(c.allowDrag){d.on(a.jqx.mobile.getTouchEventName("touchstart"),function(){a.jqx.mobile.setTouchScroll(false,c.element.id)})}}d.off("dragStart");d.on("dragStart",function(h){if(c.allowDrag&&!c.disabled){c.feedbackElement=a("<div style='z-index: 99999; position: absolute;'></div>");c.feedbackElement.addClass(c.toThemeProperty("jqx-listbox-feedback"));c.feedbackElement.appendTo(a(document.body));c.feedbackElement.hide();c.isDragging=true;c._dragCancel=false;var j=c._getMouseCoordinates(h);var g=c._hitTestBounds(c,j.left,j.top);var i=a.find(".jqx-listbox");c._listBoxes=i;a.each(c._listBoxes,function(){var k=a.data(this,"jqxListBox").instance;k._enableHover=k.enableHover;k.enableHover=false;a.jqx.mobile.setTouchScroll(false,c.element.id)});var f=function(){c._dragCancel=true;a(h.args.element).jqxDragDrop({triggerEvents:false});a(h.args.element).jqxDragDrop("cancelDrag");clearInterval(c._autoScrollTimer);a(h.args.element).jqxDragDrop({triggerEvents:true});a.each(c._listBoxes,function(){var k=a.data(this,"jqxListBox").instance;if(k._enableHover!=undefined){k.enableHover=k._enableHover;a.jqx.mobile.setTouchScroll(true,c.element.id)}})};if(g!=null&&!g.isGroup){c._dragItem=g;if(c.dragStart){var e=c.dragStart(g);if(e==false){f();return false}}if(g.disabled){f()}c._raiseEvent(4,{label:g.label,value:g.value,originalEvent:h.args})}else{if(g==null){f()}}}return false})},_handleDragging:function(c,b){c.off("dragging");c.on("dragging",function(f){var e=f.args;if(b._dragCancel){return}var g=b._getMouseCoordinates(f);var d=g;b._lastDraggingPosition=g;b._dragOverItem=null;b.feedbackElement.hide();a.each(b._listBoxes,function(){if(a.jqx.isHidden(a(this))){return true}var l=a(this).offset();var n=l.top+20;var h=a(this).height()+n-40;var j=l.left;var i=a(this).width();var o=j+i;var m=a.data(this,"jqxListBox").instance;var p=m._hitTestBounds(m,g.left,g.top);var k=m.vScrollInstance;if(p!=null){if(m.allowDrop&&!m.disabled){b._dragOverItem=p;if(p.element){b.feedbackElement.show();var q=a(p.element).offset().top+1;if(d.top>q+p.height/2){q=q+p.height}b.feedbackElement.css("top",q);b.feedbackElement.css("left",j);if(m.vScrollBar.css("visibility")!="visible"){b.feedbackElement.width(a(this).width())}else{b.feedbackElement.width(a(this).width()-20)}}}}if(g.left>=j&&g.left<o){if(e.position.top<n&&e.position.top>=n-30){clearInterval(m._autoScrollTimer);if(k.value!=0){b.feedbackElement.hide()}m._autoScrollTimer=setInterval(function(){var r=m.scrollUp();if(!r){clearInterval(m._autoScrollTimer)}},100)}else{if(e.position.top>h&&e.position.top<h+30){clearInterval(m._autoScrollTimer);if((m.vScrollBar.css("visibility")!="hidden")&&k.value!=k.max){b.feedbackElement.hide()}m._autoScrollTimer=setInterval(function(){var r=m.scrollDown();if(!r){clearInterval(m._autoScrollTimer)}},100)}else{clearInterval(m._autoScrollTimer)}}}else{if(b._dragOverItem==null){b.feedbackElement.hide()}clearInterval(m._autoScrollTimer)}})})},_handleDragEnd:function(c,b){var d=a.find(".jqx-listbox");c.off("dragEnd");c.on("dragEnd",function(f){clearInterval(b._autoScrollTimer);var o=a.jqx.mobile.isTouchDevice();var k=o?b._lastDraggingPosition:b._getMouseCoordinates(f);var g=a.find(".jqx-listbox");var h=null;b.feedbackElement.remove();if(b._dragCancel){f.stopPropagation();return}a.each(g,function(){if(a.jqx.isHidden(a(this))){return true}var w=parseInt(a(this).offset().left);var u=w+a(this).width();var x=a.data(this,"jqxListBox").instance;clearInterval(x._autoScrollTimer);if(x._enableHover!=undefined){x.enableHover=x._enableHover;a.jqx.mobile.setTouchScroll(true,b.element.id)}if(b._dragItem!=null){if(k.left+b._dragItem.width/2>=w&&k.left<u){var v=parseInt(a(this).offset().top);var t=v+a(this).height();if(k.top>=v&&k.top<=t){h=a(this)}}}});var s=b._dragItem;if(h!=null&&h.length>0){var n=a.data(h[0],"jqxListBox").instance;var l=n.allowDrop;if(l&&!n.disabled){var n=a.data(h[0],"jqxListBox").instance;var p=n._hitTestBounds(n,k.left,k.top);p=b._dragOverItem;if(p!=null&&!p.isGroup){var r=true;if(b.dragEnd){r=b.dragEnd(s,p,f.args);if(r==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true});if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}if(r==undefined){r=true}}if(r){var e=p.visibleIndex;var j=function(){var u=p.visibleIndex;for(var t=u-2;t<=u+2;t++){if(n.items&&n.items.length>t){var v=n.items[t];if(v!=null){if(v.value==s.value){return v.visibleIndex}}}}return u};if(n.dropAction!="none"){if(p.element){var q=a(p.element).offset().top+1}else{var q=a(n.element).offset().top+1}if(n.content.find(".draggable").length>0){n.content.find(".draggable").jqxDragDrop("destroy")}if(k.top>q+p.height/2){n.insertAt(b._dragItem,p.index+1)}else{n.insertAt(b._dragItem,p.index)}if(b.dropAction=="default"){if(s.visibleIndex>0){b.selectIndex(s.visibleIndex-1)}b.removeItem(s,true)}var m=j();n.clearSelection();n.selectIndex(m)}}}else{if(n.dropAction!="none"){if(n.content.find(".draggable").length>0){n.content.find(".draggable").jqxDragDrop("destroy")}if(b.dragEnd){var r=b.dragEnd(b._dragItem,null,f.args);if(r==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true});if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}if(r==undefined){r=true}}n.addItem(b._dragItem);if(n.dropAction=="default"){if(s.visibleIndex>0){b.selectIndex(s.visibleIndex-1)}b.removeItem(s,true)}n.clearSelection();n.selectIndex(n.items.length-1)}}}}else{if(b.dragEnd){var i=b.dragEnd(s,f.args);if(false==i){if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}}}if(s!=null){b._raiseEvent(5,{label:s.label,value:s.value,originalEvent:f.args})}return false})},_enableDragDrop:function(){if(this.allowDrag&&this.host.jqxDragDrop){var c=this.content.find(".draggable");if(c.length>0){var b=this;c.jqxDragDrop({cursor:"arrow",revertDuration:0,appendTo:"body",dragZIndex:99999,revert:true,initFeedback:function(d){var f=a('<span style="white-space: nowrap;" class="'+b.toThemeProperty("jqx-fill-state-normal")+'">'+d.text()+"</span>");a(document.body).append(f);var e=f.width();f.remove();d.width(e+5);d.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this._autoScrollTimer=null;b._dragItem=null;b._handleDragStart(c,b);b._handleDragging(c,b);b._handleDragEnd(c,b)}}},_getMouseCoordinates:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(this._isTouchDevice){var c=a.jqx.position(b.args);return{left:c.left,top:c.top}}else{return{left:b.args.pageX,top:b.args.pageY}}}})};jqxTreeDragDrop=function(){a.extend(a.jqx._jqxTree.prototype,{_hitTestBounds:function(b,g,f){var d=this;var e=null;if(b._visibleItems){var c=parseInt(b.host.offset().left);var h=b.host.outerWidth();a.each(b._visibleItems,function(j){if(g>=c&&g<c+h){if(this.top+5<f&&f<this.top+this.height){var i=a(this.element).parents("li:first");if(i.length>0){e=b.getItem(i[0]);if(e!=null){e.height=this.height;e.top=this.top;return false}}}}})}return e},_handleDragStart:function(d,c){if(c._dragOverItem){c._dragOverItem.titleElement.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}var b=a.jqx.mobile.isTouchDevice();if(b){if(c.allowDrag){d.on(a.jqx.mobile.getTouchEventName("touchstart"),function(){a.jqx.mobile.setTouchScroll(false,"panel"+c.element.id)})}}d.off("dragStart");d.on("dragStart",function(g){c.feedbackElement=a("<div style='z-index: 99999; position: absolute;'></div>");c.feedbackElement.addClass(c.toThemeProperty("jqx-listbox-feedback"));c.feedbackElement.appendTo(a(document.body));c.feedbackElement.hide();c._dragCancel=false;var e=g.args.position;var f=a.find(".jqx-tree");c._trees=f;a.each(f,function(){var j=a.data(this,"jqxTree").instance;var l=j.host.find(".draggable");j._syncItems(l);if(j.allowDrag&&!j.disabled){var i=a(g.target).parents("li:first");if(i.length>0){var k=j.getItem(i[0]);if(k){c._dragItem=k;if(j.dragStart){var h=j.dragStart(k);if(h==false){c._dragCancel=true;a(g.args.element).jqxDragDrop({triggerEvents:false});a(g.args.element).jqxDragDrop("cancelDrag");clearInterval(c._autoScrollTimer);a(g.args.element).jqxDragDrop({triggerEvents:j});return false}}j._raiseEvent(8,{label:k.label,value:k.value,originalEvent:g.args})}}}});return false})},_getMouseCoordinates:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(this._isTouchDevice){var c=a.jqx.position(b.args);return{left:c.left,top:c.top}}else{return{left:b.args.pageX,top:b.args.pageY}}},_handleDragging:function(c,b){var c=this.host.find(".draggable");c.off("dragging");c.on("dragging",function(h){var f=h.args;var d=f.position;var e=b._trees;if(b._dragCancel){return}if(b._dragOverItem){b._dragOverItem.titleElement.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}var i=true;var g=b._getMouseCoordinates(h);b._lastDraggingPosition=g;a.each(e,function(){if(a.jqx.isHidden(a(this))){return true}var m=a(this).offset();var q=m.top+20;var j=a(this).height()+q-40;var l=m.left;var k=a(this).width();var r=l+k;var p=a.data(this,"jqxTree").instance;if(p.disabled||!p.allowDrop){return}var n=p.vScrollInstance;var s=p._hitTestBounds(p,g.left,g.top);if(s!=null){if(b._dragOverItem){b._dragOverItem.titleElement.removeClass(p.toThemeProperty("jqx-fill-state-hover"))}b._dragOverItem=s;if(s.element){b.feedbackElement.show();var t=s.top;var o=g.top;b._dropPosition="before";if(o>t+s.height/3){t=s.top+s.height/2;b._dragOverItem.titleElement.addClass(b.toThemeProperty("jqx-fill-state-hover"));b.feedbackElement.hide();b._dropPosition="inside"}if(o>(s.top+s.height)-s.height/3){t=s.top+s.height;b._dragOverItem.titleElement.removeClass(b.toThemeProperty("jqx-fill-state-hover"));b.feedbackElement.show();b._dropPosition="after"}b.feedbackElement.css("top",t);var l=-2+parseInt(s.titleElement.offset().left);b.feedbackElement.css("left",l);b.feedbackElement.width(a(s.titleElement).width()+12)}}if(g.left>=l&&g.left<r){if(g.top+20>=q&&g.top<=q+p.host.height()){i=false}if(g.top<q&&g.top>=q-30){clearInterval(p._autoScrollTimer);if(n.value!=0){b.feedbackElement.hide()}p._autoScrollTimer=setInterval(function(){var v=p.panelInstance.scrollUp();var u=p.host.find(".draggable");p._syncItems(u);if(!v){clearInterval(p._autoScrollTimer)}},100)}else{if(g.top>j&&g.top<j+30){clearInterval(p._autoScrollTimer);if(n.value!=n.max){b.feedbackElement.hide()}p._autoScrollTimer=setInterval(function(){var v=p.panelInstance.scrollDown();var u=p.host.find(".draggable");p._syncItems(u);if(!v){clearInterval(p._autoScrollTimer)}},100)}else{clearInterval(p._autoScrollTimer)}}}else{clearInterval(p._autoScrollTimer)}});if(i){if(b.feedbackElement){b.feedbackElement.hide()}}})},_handleDragEnd:function(c,b){c.off("dragEnd");c.on("dragEnd",function(f){var d=b.host.find(".draggable");clearInterval(b._autoScrollTimer);var k=f.args.position;var s=b._trees;var t=null;var n=a.jqx.mobile.isTouchDevice();var g=n?b._lastDraggingPosition:b._getMouseCoordinates(f);b.feedbackElement.remove();if(b._dragCancel){return false}if(b._dragOverItem){b._dragOverItem.titleElement.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}a.each(s,function(){if(a.jqx.isHidden(a(this))){return true}var y=parseInt(a(this).offset().left);var w=y+a(this).width();var v=a.data(this,"jqxTree").instance;clearInterval(v._autoScrollTimer);if(b._dragItem!=null){if(g.left>=y&&g.left<w){var x=parseInt(a(this).offset().top);var u=x+a(this).height();if(g.top>=x&&g.top<=u){t=a(this)}}}});var r=b._dragItem;if(t!=null&&t.length>0){var l=t.jqxTree("allowDrop");if(l){var m=a.data(t[0],"jqxTree").instance;var o=b._dragOverItem;if(o!=null&&b._dragOverItem.treeInstance.element.id==m.element.id){var q=true;if(b.dragEnd){q=b.dragEnd(r,o,f.args,b._dropPosition,t);if(q==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true})}if(undefined==q){q=true}}if(q){var e=function(){var u=b._dragItem.treeInstance;u._refreshMapping();u._updateItemsNavigation();u._render(true,false);if(u.checkboxes){u._updateCheckStates()}b._dragItem.treeInstance=m;b._syncItems(b._dragItem.treeInstance.host.find(".draggable"))};if(m.dropAction!="none"){if(b._dragItem.id!=b._dragOverItem.id){if(b._dropPosition=="inside"){m._drop(b._dragItem.element,b._dragOverItem.element,-1,m);e()}else{var i=0;if(b._dropPosition=="after"){i++}m._drop(b._dragItem.element,b._dragOverItem.parentElement,i+a(b._dragOverItem.element).index(),m);e()}}}m._render(true,false);var p=m.host.find(".draggable");b._syncItems(p);b._dragOverItem=null;b._dragItem=null;m._refreshMapping();m._updateItemsNavigation();m.selectedItem=null;m.selectItem(r.element);if(m.checkboxes){m._updateCheckStates()}m._render(true,false)}}else{if(m.dropAction!="none"){if(m.allowDrop){var q=true;if(b.dragEnd){q=b.dragEnd(r,o,f.args,b._dropPosition,t);if(q==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true})}if(undefined==q){q=true}}if(q){b._dragItem.parentElement=null;m._drop(b._dragItem.element,null,-1,m);var h=b._dragItem.treeInstance;h._refreshMapping();h._updateItemsNavigation();if(h.checkboxes){h._updateCheckStates()}var p=h.host.find(".draggable");b._syncItems(p);b._dragItem.treeInstance=m;m.items[m.items.length]=b._dragItem;m._render(true,false);m._refreshMapping();m.selectItem(r.element);m._updateItemsNavigation();var p=m.host.find(".draggable");m._syncItems(p);if(m.checkboxes){m._updateCheckStates()}b._dragOverItem=null;b._dragItem=null}}}}}}else{if(b.dragEnd){var j=b.dragEnd(r,f.args);if(false==j){return false}}}if(r!=null){b._raiseEvent(7,{label:r.label,value:r.value,originalEvent:f.args})}return false})},_drop:function(f,b,e,c){if(a(b).parents("#"+f.id).length>0){return}if(b!=null){if(b.id==f.id){return}}var h=this;if(c.element.innerHTML.indexOf("UL")){var i=c.host.find("ul:first")}if(b==undefined&&b==null){if(e==undefined||e==-1){i.append(f)}else{if(i.children("li").eq(e).length==0){i.children("li").eq(e-1).after(f)}else{if(i.children("li").eq(e)[0].id!=f.id){i.children("li").eq(e).before(f)}}}}else{if(e==undefined||e==-1){b=a(b);var d=b.find("ul:first");if(d.length==0){ulElement=a("<ul></ul>");a(b).append(ulElement);d=b.find("ul:first");var g=c.itemMapping["id"+b[0].id].item;g.subtreeElement=d[0];g.hasItems=true;d.addClass(c.toThemeProperty("jqx-tree-dropdown"));d.append(f);f=d.find("li:first");g.parentElement=f}else{d.append(f)}}else{b=a(b);var d=b.find("ul:first");if(d.length==0){ulElement=a("<ul></ul>");a(b).append(ulElement);d=b.find("ul:first");if(b){var g=c.itemMapping["id"+b[0].id].item;g.subtreeElement=d[0];g.hasItems=true}d.addClass(c.toThemeProperty("jqx-tree-dropdown"));d.append(f);f=d.find("li:first");g.parentElement=f}else{if(d.children("li").eq(e).length==0){d.children("li").eq(e-1).after(f)}else{if(d.children("li").eq(e)[0].id!=f.id){d.children("li").eq(e).before(f)}}}}}},_enableDragDrop:function(){if(this.allowDrag&&this.host.jqxDragDrop){var d=this.host.find(".draggable");var c=this;if(d.length>0){d.jqxDragDrop({cursor:"arrow",revertDuration:0,appendTo:"body",dragZIndex:99999,revert:true,initFeedback:function(e){var g=a('<span style="white-space: nowrap;" class="'+c.toThemeProperty("jqx-fill-state-normal")+'">'+e.text()+"</span>");a(document.body).append(g);var f=g.width();g.remove();e.width(f+5);e.addClass(c.toThemeProperty("jqx-fill-state-pressed"))}});var b=d.jqxDragDrop("isDestroyed");if(b===true){d.jqxDragDrop("_createDragDrop")}this._autoScrollTimer=null;c._dragItem=null;c._handleDragStart(d,c);c._handleDragging(d,c);c._handleDragEnd(d,c)}}}})}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxComboBox","",{});a.extend(a.jqx._jqxComboBox.prototype,{defineInstance:function(){var b={disabled:false,width:200,height:25,items:new Array(),selectedIndex:-1,selectedItems:new Array(),_selectedItems:new Array(),source:null,scrollBarSize:a.jqx.utilities.scrollBarSize,arrowSize:18,enableHover:true,enableSelection:true,visualItems:new Array(),groups:new Array(),equalItemsWidth:true,itemHeight:-1,visibleItems:new Array(),emptyGroupText:"Group",emptyString:"",openDelay:250,closeDelay:300,animationType:"default",dropDownWidth:"auto",dropDownHeight:"200px",autoDropDownHeight:false,enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",searchMode:"startswithignorecase",autoComplete:false,remoteAutoComplete:false,remoteAutoCompleteDelay:500,selectionMode:"default",minLength:2,displayMember:"",valueMember:"",groupMember:"",searchMember:"",keyboardSelection:true,renderer:null,autoOpen:false,checkboxes:false,promptText:"",placeHolder:"",rtl:false,listBox:null,validateSelection:null,showCloseButtons:true,renderSelectedItem:null,search:null,popupZIndex:100000,searchString:null,multiSelect:false,showArrow:true,_disabledItems:new Array(),touchMode:"auto",autoBind:true,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["open","close","select","unselect","change","checkChange","bindingComplete"]};a.extend(true,this,b);return b},createInstance:function(b){var c=this;this.host.attr("role","combobox");a.jqx.aria(this,"aria-autocomplete","both");if(a.jqx._jqxListBox==null||a.jqx._jqxListBox==undefined){throw new Error("jqxComboBox: Missing reference to jqxlistbox.js.")}a.jqx.aria(this);if(this.promptText!=""){this.placeHolder=this.promptText}this.render()},render:function(){var n=this;var p=n.element.nodeName.toLowerCase();if(p=="select"||p=="ul"||p=="ol"){n.field=n.element;if(n.field.className){n._className=n.field.className}var m={title:n.field.title};if(n.field.id.length){m.id=n.field.id.replace(/[^\w]/g,"_")+"_jqxComboBox"}else{m.id=a.jqx.utilities.createId()+"_jqxComboBox"}var c=a("<div></div>",m);if(!n.width){n.width=a(n.field).width()}if(!n.height){n.height=a(n.field).outerHeight()}a(n.field).hide().after(c);var k=n.host.data();n.host=c;n.host.data(k);n.element=c[0];n.element.id=n.field.id;n.field.id=m.id;if(n._className){n.host.addClass(n._className);a(n.field).removeClass(n._className)}if(n.field.tabIndex){var f=n.field.tabIndex;n.field.tabIndex=-1;n.element.tabIndex=f}var s=a.jqx.parseSourceTag(n.field);n.source=s.items;if(n.selectedIndex==-1){n.selectedIndex=s.index}}n.removeHandlers();n.isanimating=false;n.id=a.jqx.utilities.createId();n.element.innerHTML="";var g=a("<div style='background-color: transparent; -webkit-appearance: none; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; border: 0px; position: relative;'><div id='dropdownlistWrapper' style='padding: 0; margin: 0; border: none; background-color: transparent; float: left; width:100%; height: 100%; position: relative;'><div id='dropdownlistContent' style='padding: 0; margin: 0; border-top: none; border-bottom: none; float: left; position: absolute;'/><div id='dropdownlistArrow' role='button' style='padding: 0; margin: 0; border-left-width: 1px; border-bottom-width: 0px; border-top-width: 0px; border-right-width: 0px; float: right; position: absolute;'/></div></div>");n.comboStructure=g;if(a.jqx._jqxListBox==null||a.jqx._jqxListBox==undefined){throw"jqxComboBox: Missing reference to jqxlistbox.js."}n.touch=a.jqx.mobile.isTouchDevice();if(n.touchMode===true){n.touch=true}n.host.append(g);n.dropdownlistWrapper=n.host.find("#dropdownlistWrapper");n.dropdownlistArrow=n.host.find("#dropdownlistArrow");n.dropdownlistContent=n.host.find("#dropdownlistContent");n.dropdownlistContent.addClass(n.toThemeProperty("jqx-combobox-content"));n.dropdownlistContent.addClass(n.toThemeProperty("jqx-widget-content"));n.dropdownlistWrapper[0].id="dropdownlistWrapper"+n.element.id;n.dropdownlistArrow[0].id="dropdownlistArrow"+n.element.id;n.dropdownlistContent[0].id="dropdownlistContent"+n.element.id;n.dropdownlistContent.append(a('<input autocomplete="off" style="margin: 0; padding: 0; border: 0;" type="textarea"/>'));n.input=n.dropdownlistContent.find("input");n.input.addClass(n.toThemeProperty("jqx-combobox-input"));n.input.addClass(n.toThemeProperty("jqx-widget-content"));if(n.host.attr("tabindex")){n.input.attr("tabindex",n.host.attr("tabindex"));n.host.removeAttr("tabindex")}n._addInput();if(n.rtl){n.input.css({direction:"rtl"});n.dropdownlistContent.addClass(n.toThemeProperty("jqx-combobox-content-rtl"))}try{var q="listBox"+n.id;var i=a(a.find("#"+q));if(i.length>0){i.remove()}a.jqx.aria(this,"aria-owns",q);a.jqx.aria(this,"aria-haspopup",true);a.jqx.aria(this,"aria-multiline",false);if(n.listBoxContainer){n.listBoxContainer.jqxListBox("destroy")}if(n.container){n.container.remove()}var b=a("<div style='overflow: hidden; border: none; background-color: transparent; position: absolute;' id='listBox"+n.id+"'><div id='innerListBox"+n.id+"'></div></div>");b.hide();b.appendTo(document.body);n.container=b;n.listBoxContainer=a(a.find("#innerListBox"+n.id));var d=n.width;if(n.dropDownWidth!="auto"){d=n.dropDownWidth}if(n.dropDownHeight==null){n.dropDownHeight=200}n.container.width(parseInt(d)+25);n.container.height(parseInt(n.dropDownHeight)+25);n.addHandler(n.listBoxContainer,"bindingComplete",function(e){if(!n.listBox){n.listBox=a.data(n.listBoxContainer[0],"jqxListBox").instance}n._raiseEvent("6")});var j=true;n.listBoxContainer.jqxListBox({_checkForHiddenParent:false,allowDrop:false,allowDrag:false,checkboxes:n.checkboxes,emptyString:n.emptyString,autoBind:!n.remoteAutoComplete&&n.autoBind,renderer:n.renderer,rtl:n.rtl,itemHeight:n.itemHeight,selectedIndex:n.selectedIndex,incrementalSearch:false,width:d,scrollBarSize:n.scrollBarSize,autoHeight:n.autoDropDownHeight,height:n.dropDownHeight,groupMember:n.groupMember,searchMember:n.searchMember,displayMember:n.displayMember,valueMember:n.valueMember,source:n.source,theme:n.theme,rendered:function(){n.listBox=a.data(n.listBoxContainer[0],"jqxListBox").instance;if(n.remoteAutoComplete){if(n.autoDropDownHeight){n.container.height(n.listBox.virtualSize.height+25);n.listBoxContainer.height(n.listBox.virtualSize.height);n.listBox._arrange()}else{n.listBox._arrange();n.listBox.ensureVisible(0);n.listBox._renderItems();n.container.height(n.listBoxContainer.height()+25)}if(n.searchString!=undefined&&n.searchString.length>=n.minLength){var e=n.listBoxContainer.jqxListBox("items");if(e){if(e.length>0){if(!n.isOpened()){n.open()}}else{n.close()}}else{n.close()}}else{n.close()}}else{n.renderSelection("mouse");if(n.multiSelect){n.doMultiSelect(false)}}if(n.rendered){n.rendered()}}});n.listBoxContainer.css({position:"absolute",zIndex:n.popupZIndex,top:0,left:0});n.listBoxContainer.css("border-top-width","1px");n.listBoxContainer.addClass(n.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){n.listBoxContainer.addClass(n.toThemeProperty("jqx-noshadow"))}n.listBox=a.data(n.listBoxContainer[0],"jqxListBox").instance;n.listBox.enableSelection=n.enableSelection;n.listBox.enableHover=n.enableHover;n.listBox.equalItemsWidth=n.equalItemsWidth;n.listBox._arrange();n.addHandler(n.listBoxContainer,"unselect",function(e){if(!n.multiSelect){n._raiseEvent("3",{index:e.args.index,type:e.args.type,item:e.args.item})}});n.addHandler(n.listBoxContainer,"change",function(e){if(!n.multiSelect){n.selectedIndex=n.listBox.selectedIndex;n._raiseEvent("4",{index:e.args.index,type:e.args.type,item:e.args.item})}});if(n.animationType=="none"){n.container.css("display","none")}else{n.container.hide()}j=false}catch(l){throw l}var r=this;r.input.attr("disabled",r.disabled);var h=a.jqx.browser.msie&&a.jqx.browser.version<8;if(!h){r.input.attr("placeholder",r.placeHolder)}n.propertyChangeMap.disabled=function(e,u,t,v){if(v){e.host.addClass(r.toThemeProperty("jqx-combobox-state-disabled"));e.host.addClass(r.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.addClass(r.toThemeProperty("jqx-combobox-content-disabled"))}else{e.host.removeClass(r.toThemeProperty("jqx-combobox-state-disabled"));e.host.removeClass(r.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.removeClass(r.toThemeProperty("jqx-combobox-content-disabled"))}e.input.attr("disabled",e.disabled);a.jqx.aria(e,"aria-disabled",e.disabled);e.input.attr("disabled",e.disabled)};if(n.disabled){n.host.addClass(n.toThemeProperty("jqx-combobox-state-disabled"));n.host.addClass(n.toThemeProperty("jqx-fill-state-disabled"));n.dropdownlistContent.addClass(n.toThemeProperty("jqx-combobox-content-disabled"))}n.host.addClass(n.toThemeProperty("jqx-combobox-state-normal"));n.host.addClass(n.toThemeProperty("jqx-combobox"));n.host.addClass(n.toThemeProperty("jqx-rc-all"));n.host.addClass(n.toThemeProperty("jqx-widget"));n.host.addClass(n.toThemeProperty("jqx-widget-content"));n.dropdownlistArrowIcon=a("<div></div>");n.dropdownlistArrowIcon.addClass(n.toThemeProperty("jqx-icon-arrow-down"));n.dropdownlistArrowIcon.addClass(n.toThemeProperty("jqx-icon"));n.dropdownlistArrow.append(n.dropdownlistArrowIcon);n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-combobox-arrow-normal"));n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-fill-state-normal"));if(!n.rtl){n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-rc-r"))}else{n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-rc-l"))}n._setSize();n._updateHandlers();n.addHandler(n.input,"keyup.textchange",function(e){var t=n._search(e);if(n.cinput&&n.input){if(!n.displayMember){n.cinput[0].value=n.input[0].value}else{n._updateInputSelection()}}});if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(n.host.parents(".jqx-window").length>0){var o=n.host.parents(".jqx-window").css("z-index");b.css("z-index",o+10);n.listBoxContainer.css("z-index",o+10)}}if(n.checkboxes){n.input.attr("readonly",true);a.jqx.aria(this,"aria-readonly",true)}else{a.jqx.aria(this,"aria-readonly",false)}if(!n.remoteAutoComplete){n.searchString=""}},_addInput:function(){var b=this.host.attr("name");this.cinput=a("<input type='hidden'/>");this.host.append(this.cinput);if(b){this.cinput.attr("name",b)}},_updateInputSelection:function(){if(this.cinput){var c=new Array();if(this.selectedIndex==-1){this.cinput.val("")}else{var e=this.getSelectedItem();if(e!=null){this.cinput.val(e.value);c.push(e.value)}else{this.cinput.val(this.dropdownlistContent.text())}}if(this.checkboxes||this.multiSelect){if(!this.multiSelect){var b=this.getCheckedItems()}else{var b=this.getSelectedItems()}var f="";if(b!=null){for(var d=0;d<b.length;d++){if(d==b.length-1){f+=b[d].value}else{f+=b[d].value+","}c.push(b[d].value)}}this.cinput.val(f)}if(this.field&&this.cinput){if(this.field.nodeName.toLowerCase()=="select"){a.each(this.field,function(g,h){a(this).removeAttr("selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this).attr("selected",true)}})}else{a.each(this.items,function(g,h){a(this.originalItem.originalItem).removeAttr("data-selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this.originalItem.originalItem).attr("data-selected",true)}})}}}},_search:function(m){var d=this;if(m.keyCode==9){return}if(d.searchMode=="none"||d.searchMode==null||d.searchMode=="undefined"){return}if(m.keyCode==16||m.keyCode==17||m.keyCode==20){return}if(d.checkboxes){return}if(d.multiSelect){var n=a("<span style='visibility: hidden; white-space: nowrap;'>"+d.input.val()+"</span>");n.addClass(d.toThemeProperty("jqx-widget"));a(document.body).append(n);var j=n.width()+15;n.remove();if(j>d.host.width()){j=d.host.width()}if(j<25){j=25}d.input.css("width",j+"px");if(d.selectedItems.length==0){d.input.css("width","100%");d.input.attr("placeholder",d.placeHolder)}else{d.input.attr("placeholder","")}var f=parseInt(this._findPos(d.host[0])[1])+parseInt(d.host.outerHeight())-1+"px";var o=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();if((o!=null&&o)){f=a.jqx.mobile.getTopPos(this.element)+parseInt(d.host.outerHeight());if(a("body").css("border-top-width")!="0px"){f=parseInt(f)-this._getBodyOffset().top+"px"}}d.container.css("top",f);var i=parseInt(d.host.height());d.dropdownlistArrow.height(i)}if(!d.isanimating){if(m.altKey&&m.keyCode==38){d.hideListBox("altKey");return false}if(m.altKey&&m.keyCode==40){if(!d.isOpened()){d.showListBox("altKey")}return false}}if(m.keyCode==37||m.keyCode==39){return false}if(m.altKey||m.keyCode==18){return}if(m.keyCode>=33&&m.keyCode<=40){return}if(m.ctrlKey||d.ctrlKey){if(m.keyCode!=88&&m.keyCode!=86){return}}var l=d.input.val();if(l.length==0&&!d.autoComplete){d.listBox.searchString=d.input.val();d.listBox.clearSelection();d.hideListBox("search");d.searchString=d.input.val();return}if(d.remoteAutoComplete){var s=this;var p=function(){s.listBox.vScrollInstance.value=0};if(l.length>=s.minLength){if(!m.ctrlKey&&!m.altKey){if(s.searchString!=l){var k=s.listBoxContainer.jqxListBox("source");if(k==null){s.listBoxContainer.jqxListBox({source:s.source})}if(d._searchTimer){clearTimeout(d._searchTimer)}if(m.keyCode!=13&&m.keyCode!=27){d._searchTimer=setTimeout(function(){p();if(s.autoDropDownHeight){s.listBox.autoHeight=true}s.searchString=s.input.val();if(s.search!=null){s.search(s.input.val())}else{throw"'search' function is not defined"}},d.remoteAutoCompleteDelay)}}s.searchString=l}}else{if(d._searchTimer){clearTimeout(d._searchTimer)}p();s.searchString="";s.listBoxContainer.jqxListBox({source:null})}return}var s=this;if(l===s.searchString){return}if(!(m.keyCode=="27"||m.keyCode=="13")){var b=d._updateItemsVisibility(l);var e=b.matchItems;var c=b.index;if(!d.autoComplete&&!d.removeAutoComplete){if(!d.multiSelect||(d.multiSelect&&c>=0)){d.listBox.selectIndex(c);var r=d.listBox.isIndexInView(c);if(!r){d.listBox.ensureVisible(c)}else{d.listBox._renderItems()}}}if(d.autoComplete&&e.length===0){d.hideListBox("search")}}if(m.keyCode=="13"){var g=d.container.css("display")=="block";if(g&&!d.isanimating){d.hideListBox("keyboard");d._oldvalue=d.listBox.selectedValue;return}}else{if(m.keyCode=="27"){var g=d.container.css("display")=="block";if(g&&!d.isanimating){if(!h.multiSelect){var q=d.listBox.getVisibleItem(d._oldvalue);if(q){var h=this;setTimeout(function(){if(h.autoComplete){h._updateItemsVisibility("")}h.listBox.selectIndex(q.index);h.renderSelection("api")},h.closeDelay)}else{d.clearSelection()}}else{h.input.val("");h.listBox.selectedValue=null}d.hideListBox("keyboard");d.renderSelection("api");m.preventDefault();return false}}else{if(!d.isOpened()&&!d.opening&&!m.ctrlKey){if(d.listBox.visibleItems&&d.listBox.visibleItems.length>0){if(d.input.val()!=d.searchString&&d.searchString!=undefined&&c!=-1){d.showListBox("search")}}}d.searchString=d.input.val();if(d.searchString==""){if(!d.listBox.itemsByValue[""]){c=-1;if(!d.multiSelect){d.clearSelection()}}}var q=d.listBox.getVisibleItem(c);if(q!=undefined){d._updateInputSelection()}}}},val:function(c){if(!this.input){return""}var d=function(f){for(var e in f){if(f.hasOwnProperty(e)){return false}}if(typeof c=="number"){return false}if(typeof c=="date"){return false}if(typeof c=="boolean"){return false}if(typeof c=="string"){return false}return true};if(d(c)||arguments.length==0){var b=this.getSelectedItem();if(b){return b.value}return this.input.val()}else{var b=this.getItemByValue(c);if(b!=null){this.selectItem(b)}else{this.input.val(c)}return this.input.val()}},focus:function(){var c=this;var b=function(){c.input.focus();var d=c.input.val();c._setSelection(0,d.length)};b();setTimeout(function(){b()},10)},_setSelection:function(e,b){try{if("selectionStart" in this.input[0]){this.input[0].focus();this.input[0].setSelectionRange(e,b)}else{var c=this.input[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",e);c.select()}}catch(d){}},setContent:function(b){this.input.val(b)},_updateItemsVisibility:function(l){var i=this.getItems();if(i==undefined){return{index:-1,matchItem:new Array()}}var j=this;var g=-1;var m=new Array();var k=0;a.each(i,function(p){var r="";if(!this.isGroup){if(this.searchLabel){r=this.searchLabel}else{if(this.label){r=this.label}else{if(this.value){r=this.value}else{if(this.title){r=this.title}else{r="jqxItem"}}}}r=r.toString();var q=false;switch(j.searchMode){case"containsignorecase":q=a.jqx.string.containsIgnoreCase(r,l);break;case"contains":q=a.jqx.string.contains(r,l);break;case"equals":q=a.jqx.string.equals(r,l);break;case"equalsignorecase":q=a.jqx.string.equalsIgnoreCase(r,l);break;case"startswith":q=a.jqx.string.startsWith(r,l);break;case"startswithignorecase":q=a.jqx.string.startsWithIgnoreCase(r,l);break;case"endswith":q=a.jqx.string.endsWith(r,l);break;case"endswithignorecase":q=a.jqx.string.endsWithIgnoreCase(r,l);break}if(j.autoComplete&&!q){this.visible=false}if(q&&j.autoComplete){m[k++]=this;this.visible=true;g=this.visibleIndex}if(l==""&&j.autoComplete){this.visible=true;q=false}if(j.multiSelect){this.disabled=false;if(j.selectedItems.indexOf(this.value)>=0||j._disabledItems.indexOf(this.value)>=0){this.disabled=true;q=false}}if(!j.multiSelect){if(q&&!j.autoComplete){g=this.visibleIndex;return false}}else{if(q&&!j.autoComplete){if(g===-1){g=this.visibleIndex}return true}}}});this.listBox.searchString=l;var f=this;var h=function(){if(!f.multiSelect){return}var p=0;var s=false;var r=null;for(var q=0;q<f.listBox.items.length;q++){f.listBox.selectedIndexes[q]=-1;if(!f.listBox.items[q].disabled){if(s==false){r=f.listBox.items[q];p=r.visibleIndex;s=true}}}f.listBox.selectedIndex=-1;f.listBox.selectedIndex=p;f.listBox.selectedIndexes[p]=p;if(f.listBox.visibleItems.length>0){if(r){f.listBox.selectedValue=r.value}else{f.listBox.selectedValue=null}}else{f.listBox.selectedValue=null}f.listBox.ensureVisible(0)};if(!this.autoComplete){h();return{index:g,matchItems:m}}this.listBox.renderedVisibleItems=new Array();var b=this.listBox.vScrollInstance.value;this.listBox.vScrollInstance.value=0;this.listBox.visibleItems=new Array();this.listBox._renderItems();var e=this.listBox.selectedValue;var o=this.listBox.getItemByValue(e);if(!this.multiSelect){if(o){if(o.visible){this.listBox.selectedIndex=o.visibleIndex;for(var d=0;d<this.listBox.items.length;d++){this.listBox.selectedIndexes[d]=-1}this.listBox.selectedIndexes[o.visibleIndex]=o.visibleIndex}else{for(var d=0;d<this.listBox.items.length;d++){this.listBox.selectedIndexes[d]=-1}this.listBox.selectedIndex=-1}}}else{h()}this.listBox._renderItems();var n=this.listBox._calculateVirtualSize().height;if(n<b){b=0;this.listBox.vScrollInstance.refresh()}if(this.autoDropDownHeight){this._disableSelection=true;if(this.listBox.autoHeight!=this.autoDropDownHeight){this.listBoxContainer.jqxListBox({autoHeight:this.autoDropDownHeight})}this.container.height(n+25);this.listBox.invalidate();this._disableSelection=false}else{if(n<parseInt(this.dropDownHeight)){var c=this.listBox.hScrollBar[0].style.visibility=="hidden"?0:20;this.listBox.height=c+n;this.container.height(n+25+c);this.listBox.invalidate()}else{this.listBox.height=parseInt(this.dropDownHeight);this.container.height(parseInt(this.dropDownHeight)+25);this.listBox.invalidate()}}this.listBox.vScrollInstance.setPosition(b);return{index:g,matchItems:m}},findItems:function(e){var b=this.getItems();var d=this;var c=0;var f=new Array();a.each(b,function(g){var j="";if(!this.isGroup){if(this.label){j=this.label}else{if(this.value){j=this.value}else{if(this.title){j=this.title}else{j="jqxItem"}}}var h=false;switch(d.searchMode){case"containsignorecase":h=a.jqx.string.containsIgnoreCase(j,e);break;case"contains":h=a.jqx.string.contains(j,e);break;case"equals":h=a.jqx.string.equals(j,e);break;case"equalsignorecase":h=a.jqx.string.equalsIgnoreCase(j,e);break;case"startswith":h=a.jqx.string.startsWith(j,e);break;case"startswithignorecase":h=a.jqx.string.startsWithIgnoreCase(j,e);break;case"endswith":h=a.jqx.string.endsWith(j,e);break;case"endswithignorecase":h=a.jqx.string.endsWithIgnoreCase(j,e);break}if(h){f[c++]=this}}});return f},_resetautocomplete:function(){a.each(this.listBox.items,function(b){this.visible=true});this.listBox.vScrollInstance.value=0;this.listBox._addItems();this.listBox.autoHeight=false;this.listBox.height=this.dropDownHeight;this.container.height(parseInt(this.dropDownHeight)+25);this.listBoxContainer.height(parseInt(this.dropDownHeight));this.listBox._arrange();this.listBox._addItems();this.listBox._renderItems()},getItems:function(){var b=this.listBox.items;return b},getVisibleItems:function(){return this.listBox.getVisibleItems()},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true;this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true;this.host.height(this.height)}if(e){var c=this;var b=this.host.width();if(this.dropDownWidth!="auto"){b=this.dropDownWidth}this.listBoxContainer.jqxListBox({width:b});this.container.width(parseInt(b)+25);this._arrange()}var c=this;var d=function(){if(c.multiSelect){c.host.height(c.height)}c._arrange();if(c.multiSelect){c.host.height("auto")}};c.oldWidth=c.host.width();c.oldHeight=c.host.height();a.jqx.utilities.resize(this.host,function(){var f=c.host.width();var g=c.host.height();if(f!=c.oldWidth||g!=c.oldHeight){d();c.hideListBox("api")}c.oldWidth=f;c.oldHeight=g})},isOpened:function(){var c=this;var b=a.data(document.body,"openedCombojqxListBox"+this.element.id);if(this.container.css("display")!="block"){return false}if(b!=null&&b==c.listBoxContainer){return true}return false},_updateHandlers:function(){var d=this;var e=false;this.removeHandlers();if(this.multiSelect){this.addHandler(this.dropdownlistContent,"click",function(f){if(f.target.href){return false}d.input.focus();setTimeout(function(){d.input.focus()},10)});this.addHandler(this.dropdownlistContent,"focus",function(f){if(f.target.href){return false}d.input.focus();setTimeout(function(){d.input.focus()},10)})}if(!this.touch){if(this.host.parents()){this.addHandler(this.host.parents(),"scroll.combobox"+this.element.id,function(f){var g=d.isOpened();if(g){d.close()}})}this.addHandler(this.host,"mouseenter",function(){if(!d.disabled&&d.enableHover){e=true;d.host.addClass(d.toThemeProperty("jqx-combobox-state-hover"));d.dropdownlistArrowIcon.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));d.dropdownlistArrow.addClass(d.toThemeProperty("jqx-combobox-arrow-hover"));d.dropdownlistArrow.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mouseleave",function(){if(!d.disabled&&d.enableHover){d.host.removeClass(d.toThemeProperty("jqx-combobox-state-hover"));d.dropdownlistArrowIcon.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));d.dropdownlistArrow.removeClass(d.toThemeProperty("jqx-combobox-arrow-hover"));d.dropdownlistArrow.removeClass(d.toThemeProperty("jqx-fill-state-hover"));e=false}})}if(d.autoOpen){this.addHandler(this.host,"mouseenter",function(){var f=d.isOpened();if(!f&&d.autoOpen){d.open();d.host.focus()}});this.addHandler(a(document),"mousemove."+d.id,function(i){var h=d.isOpened();if(h&&d.autoOpen){var m=d.host.coord();var l=m.top;var k=m.left;var j=d.container.coord();var f=j.left;var g=j.top;canClose=true;if(i.pageY>=l&&i.pageY<=l+d.host.height()+2){if(i.pageX>=k&&i.pageX<k+d.host.width()){canClose=false}}if(i.pageY>=g&&i.pageY<=g+d.container.height()-20){if(i.pageX>=f&&i.pageX<f+d.container.width()){canClose=false}}if(canClose){d.close()}}})}var c="mousedown";if(this.touch){c=a.jqx.mobile.getTouchEventName("touchstart")}var b=function(h){if(!d.disabled){var f=d.container.css("display")=="block";if(!d.isanimating){if(f){d.hideListBox("api");if(!a.jqx.mobile.isTouchDevice()){d.input.focus();setTimeout(function(){d.input.focus()},10)}return true}else{if(d.autoDropDownHeight){d.container.height(d.listBoxContainer.height()+25);var g=d.listBoxContainer.jqxListBox("autoHeight");if(!g){d.listBoxContainer.jqxListBox({autoHeight:d.autoDropDownHeight});d.listBox._arrange();d.listBox.ensureVisible(0);d.listBox._renderItems();d.container.height(d.listBoxContainer.height()+25)}}d.showListBox("api");if(!a.jqx.mobile.isTouchDevice()){setTimeout(function(){d.input.focus()},10)}else{return true}}}}};this.addHandler(this.dropdownlistArrow,c,function(f){b(f)});this.addHandler(this.dropdownlistArrowIcon,c,function(f){});this.addHandler(this.host,"focus",function(){d.focus()});this.addHandler(this.input,"focus",function(f){d.focused=true;d.host.addClass(d.toThemeProperty("jqx-combobox-state-focus"));d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"));d.dropdownlistContent.addClass(d.toThemeProperty("jqx-combobox-content-focus"));if(f.stopPropagation){f.stopPropagation()}});this.addHandler(this.input,"blur",function(){d.focused=false;if(!d.isOpened()&&!d.opening){if(d.selectionMode=="dropDownList"){d._selectOldValue()}d.host.removeClass(d.toThemeProperty("jqx-combobox-state-focus"));d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"));d.dropdownlistContent.removeClass(d.toThemeProperty("jqx-combobox-content-focus"))}if(d._searchTimer){clearTimeout(d._searchTimer)}});this.addHandler(a(document),"mousedown."+this.id,d.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id});if(this.touch){this.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id,d.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id})}this.addHandler(this.host,"keydown",function(k){var h=d.container.css("display")=="block";d.ctrlKey=k.ctrlKey;if(d.host.css("display")=="none"){return true}if(k.keyCode=="13"||k.keyCode=="9"){if(h&&!d.isanimating){if(d.listBox.selectedIndex!=-1){d.renderSelection("mouse");var f=d.listBox.selectedIndex;var j=d.listBox.getVisibleItem(f);if(j){d.listBox.selectedValue=j.value}d._setSelection(d.input.val().length,d.input.val().length);d.hideListBox("keyboard")}if(k.keyCode=="13"){d._oldvalue=d.listBox.selectedValue}if(!d.keyboardSelection){d._raiseEvent("2",{index:d.selectedIndex,type:"keyboard",item:d.getItem(d.selectedIndex)})}if(k.keyCode=="9"){return true}return false}}if(k.keyCode==115){if(!d.isanimating){if(!d.isOpened()){d.showListBox("keyboard")}else{if(d.isOpened()){d.hideListBox("keyboard")}}}return false}if(k.altKey){if(d.host.css("display")=="block"){if(!d.isanimating){if(k.keyCode==38){if(d.isOpened()){d.hideListBox("altKey")}}else{if(k.keyCode==40){if(!d.isOpened()){d.showListBox("altKey")}}}}}}if(k.keyCode=="27"||k.keyCode=="9"){if(d.isOpened()&&!d.isanimating){if(k.keyCode=="27"){if(!d.multiSelect){var j=d.listBox.getItemByValue(d._oldvalue);if(j){setTimeout(function(){if(d.autoComplete){d._updateItemsVisibility("")}d.listBox.selectIndex(j.index);d.renderSelection("api")},d.closeDelay)}else{d.clearSelection()}}else{d.listBox.selectedValue=null;d.input.val("")}}d.hideListBox("keyboard");if(k.keyCode=="9"){return true}d.renderSelection("api");k.preventDefault();return false}}var g=k.keyCode;if(h&&!d.disabled&&g!=8){return d.listBox._handleKeyDown(k)}else{if(!d.disabled&&!h){var g=k.keyCode;if(g==33||g==34||g==35||g==36||g==38||g==40){return d.listBox._handleKeyDown(k)}}}if(g===8&&d.multiSelect){if(d.input.val().length===0){var i=d.selectedItems[d.selectedItems.length-1];d.selectedItems.pop();d._selectedItems.pop();if(i){d._raiseEvent("3",{index:i.index,type:"keyboard",item:i});d._raiseEvent("4",{index:i.index,type:"keyboard",item:i})}d.listBox.selectedValue=null;d.doMultiSelect();return false}}});this.addHandler(this.listBoxContainer,"checkChange",function(f){d.renderSelection("mouse");d._updateInputSelection();d._raiseEvent(5,{label:f.args.label,value:f.args.value,checked:f.args.checked,item:f.args.item})});this.addHandler(this.listBoxContainer,"select",function(f){if(!d.disabled){if(f.args.type!="keyboard"||d.keyboardSelection){d.renderSelection(f.args.type);if(!d.multiSelect){d._raiseEvent("2",{index:f.args.index,type:f.args.type,item:f.args.item})}if(f.args.type=="mouse"){d._oldvalue=d.listBox.selectedValue;if(!d.checkboxes){d.hideListBox("mouse");if(!d.touch){d.input.focus()}else{return false}}}}}});if(this.listBox!=null&&this.listBox.content!=null){this.addHandler(this.listBox.content,"click",function(f){if(!d.disabled){if(d.listBox.itemswrapper){if(f.target===d.listBox.itemswrapper[0]){return true}}if(f.target&&f.target.className){if(f.target.className.indexOf("jqx-fill-state-disabled")>=0){return true}}d.renderSelection("mouse");d._oldvalue=d.listBox.selectedValue;if(!d.touch&&!d.ishiding){if(!d.checkboxes){d.hideListBox("mouse");d.input.focus()}}if(d.touch===true){if(!d.checkboxes){d.hideListBox("mouse")}}}})}},_selectOldValue:function(){var b=this;if(b.listBox.selectedIndex==-1){if(!b.multiSelect){var c=b.listBox.getItemByValue(b._oldvalue);if(c){setTimeout(function(){if(b.autoComplete){b._updateItemsVisibility("")}b.listBox.selectIndex(c.index);b.renderSelection("api")},b.closeDelay)}else{b.clearSelection();b.listBox.selectIndex(0);b.renderSelection("api")}}else{b.listBox.selectedValue=null;b.input.val("")}}else{b.renderSelection("api")}},removeHandlers:function(){var c=this;if(this.dropdownlistWrapper!=null){this.removeHandler(this.dropdownlistWrapper,"mousedown")}if(this.dropdownlistContent){this.removeHandler(this.dropdownlistContent,"click");this.removeHandler(this.dropdownlistContent,"focus")}this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"focus");if(this.input!=null){this.removeHandler(this.input,"focus");this.removeHandler(this.input,"blur")}this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(a(document),"mousemove."+c.id);if(this.listBoxContainer){this.removeHandler(this.listBoxContainer,"checkChange");this.removeHandler(this.listBoxContainer,"select")}if(this.host.parents()){this.removeHandler(this.host.parents(),"scroll.combobox"+this.element.id)}if(this.dropdownlistArrowIcon&&this.dropdownlistArrow){var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(this.dropdownlistArrowIcon,b);this.removeHandler(this.dropdownlistArrow,b)}},getItem:function(b){var c=this.listBox.getItem(b);return c},getItemByValue:function(c){var b=this.listBox.getItemByValue(c);return b},getVisibleItem:function(b){var c=this.listBox.getVisibleItem(b);return c},renderSelection:function(j){if(j==undefined||j=="none"){return}if(this._disableSelection===true){return}if(this.listBox==null){return}if(this.multiSelect){return}var k=this.listBox.visibleItems[this.listBox.selectedIndex];if(this.autoComplete&&!this.checkboxes){if(this.listBox.selectedValue!==undefined){var k=this.getItemByValue(this.listBox.selectedValue)}}if(this.checkboxes){var f=this.getCheckedItems();if(f!=null&&f.length>0){k=f[0]}else{k=null}}if(k==null){var d=a.jqx.browser.msie&&a.jqx.browser.version<8;this.input.val("");this.input.attr("value","");if(!d){this.input.attr("placeholder",this.placeHolder)}this._updateInputSelection();return}this.selectedIndex=this.listBox.selectedIndex;var c=a("<span></span>");if(k.label!=undefined&&k.label!=null&&k.label.toString().length>0){a.jqx.utilities.html(c,k.label)}else{if(k.value!=undefined&&k.value!=null&&k.value.toString().length>0){a.jqx.utilities.html(c,k.value)}else{if(k.title!=undefined&&k.title!=null&&k.title.toString().length>0){a.jqx.utilities.html(c,k.title)}else{a.jqx.utilities.html(c,this.emptyString)}}}var b=c.outerHeight();if(this.checkboxes){var g=this.getCheckedItems();var h="";for(var e=0;e<g.length;e++){if(e==g.length-1){h+=g[e].label}else{h+=g[e].label+", "}}this.input.val(h)}else{this.input.val(c.text())}c.remove();this._updateInputSelection();if(this.renderSelectedItem){var l=this.renderSelectedItem(this.listBox.selectedIndex,k);if(l!=undefined){this.input[0].value=l}}this.input.attr("value",this.input.val());if(this.listBox&&this.listBox._activeElement){a.jqx.aria(this,"aria-activedescendant",this.listBox._activeElement.id)}},dataBind:function(){this.listBoxContainer.jqxListBox({source:this.source});this.renderSelection("mouse");if(this.source==null){this.clearSelection()}},clear:function(){this.listBoxContainer.jqxListBox({source:null});this.clearSelection()},clearSelection:function(b){this.selectedIndex=-1;this.listBox.clearSelection();this.input.val("");if(this.multiSelect){this.listBox.selectedValue="";this.selectedItems=new Array();this._selectedItems=new Array();this.doMultiSelect(false)}},unselectIndex:function(c,d){if(isNaN(c)){return}if(this.autoComplete){this._updateItemsVisibility("")}this.listBox.unselectIndex(c,d);this.renderSelection("mouse");if(this.multiSelect){if(c>=0){var b=this.getItem(c);var e=this.selectedItems.indexOf(b.value);if(e>=0){if(b.value===this.listBox.selectedValue){this.listBox.selectedValue=null}this.selectedItems.splice(e,1);this._selectedItems.splice(e,1)}}this.doMultiSelect(false)}},selectIndex:function(b,d,e,c){if(this.autoComplete){this._updateItemsVisibility("")}this.listBox.selectIndex(b,d,e,c);this.renderSelection("mouse");this.selectedIndex=b;if(this.multiSelect){this.doMultiSelect()}},selectItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.selectedIndex=-1;this.listBox.selectItem(b);this.selectedIndex=this.listBox.selectedIndex;this.renderSelection("mouse");if(this.multiSelect){this.doMultiSelect(false)}}},unselectItem:function(d){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.unselectItem(d);this.renderSelection("mouse");if(this.multiSelect){var b=this.getItemByValue(d);if(b){var c=this.selectedItems.indexOf(b.value);if(c>=0){if(b.value===this.listBox.selectedValue){this.listBox.selectedValue=null}this.selectedItems.splice(c,1);this._selectedItems.splice(c,1)}}this.doMultiSelect(false)}}},checkItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.checkItem(b)}},uncheckItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.uncheckItem(b)}},indeterminateItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.indeterminateItem(b)}},getSelectedValue:function(){return this.listBox.selectedValue},getSelectedIndex:function(){if(!this.multiSelect){return this.listBox.selectedIndex}else{if(this.remoteAutoComplete&&this.multiSelect&&this._selectedItems.length>0){return this.getSelectedItems()[0].index}if(this._selectedItems&&this._selectedItems.length>0){return this.getSelectedItems()[0].index}}},getSelectedItem:function(){if(!this.multiSelect){return this.getVisibleItem(this.listBox.selectedIndex)}else{if(this.remoteAutoComplete&&this.multiSelect&&this._selectedItems.length>0){return this.getSelectedItems()[0]}if(this._selectedItems&&this._selectedItems.length>0){return this.getSelectedItems()[0]}return null}},getSelectedItems:function(){if(this.remoteAutoComplete&&this.multiSelect){return this._selectedItems}var c=new Array();var b=this;a.each(this.selectedItems,function(){var d=b.getItemByValue(this);if(d){c.push(d)}else{var d=b._selectedItems[this];if(d){c.push(d)}}});return c},getCheckedItems:function(){return this.listBox.getCheckedItems()},checkIndex:function(b){this.listBox.checkIndex(b)},uncheckIndex:function(b){this.listBox.uncheckIndex(b)},indeterminateIndex:function(b){this.listBox.indeterminateIndex(b)},checkAll:function(){this.listBox.checkAll();this.renderSelection("mouse")},uncheckAll:function(){this.listBox.uncheckAll();this.renderSelection("mouse")},insertAt:function(c,b){if(c==null){return false}return this.listBox.insertAt(c,b)},addItem:function(b){return this.listBox.addItem(b)},removeAt:function(c){var b=this.listBox.removeAt(c);this.renderSelection("mouse");return b},removeItem:function(c){var b=this.listBox.removeItem(c);this.renderSelection("mouse");return b},updateItem:function(c,d){var b=this.listBox.updateItem(c,d);this.renderSelection("mouse");return b},updateAt:function(d,c){var b=this.listBox.updateAt(d,c);this.renderSelection("mouse");return b},ensureVisible:function(b){return this.listBox.ensureVisible(b)},disableAt:function(b){var c=this.getVisibleItem(b);if(c){this._disabledItems.push(c.value)}return this.listBox.disableAt(b)},enableAt:function(b){var c=this.getVisibleItem(b);if(c){this._disabledItems.splice(this._disabledItems.indexOf(c.value),1)}return this.listBox.enableAt(b)},disableItem:function(b){var b=this.getVisibleItem(b);if(b){this._disabledItems.push(b.value)}return this.listBox.disableItem(b)},enableItem:function(b){var b=this.getVisibleItem(b);if(b){this._disabledItems.splice(this._disabledItems.indexOf(b.value),1)}return this.listBox.enableItem(b)},_findPos:function(c){while(c&&(c.type=="hidden"||c.nodeType!=1||a.expr.filters.hidden(c))){c=c.nextSibling}if(c){var b=a(c).coord(true);return[b.left,b.top]}},testOffset:function(h,f,c){var g=h.outerWidth();var j=h.outerHeight();var i=a(window).width()+a(window).scrollLeft();var e=a(window).height()+a(window).scrollTop();if(f.left+g>i){if(g>this.host.width()){var d=this.host.coord().left;var b=g-this.host.width();f.left=d-b+2}}if(f.left<0){f.left=parseInt(this.host.coord().left)+"px"}f.top-=Math.min(f.top,(f.top+j>e&&e>j)?Math.abs(j+c+23):0);return f},open:function(){if(!this.isOpened()&&!this.opening){this.showListBox("api")}},close:function(){if(this.isOpened()){this.hideListBox("api")}},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},showListBox:function(l){if(this.listBox.items&&this.listBox.items.length==0){return}if(l=="search"&&!this.autoComplete&&!this.remoteAutoComplete){if(this.autoDropDownHeight){this.container.height(this.listBoxContainer.height()+25)}}if(this.autoComplete||this.multiSelect&&!this.remoteAutoComplete){if(l!="search"){this._updateItemsVisibility("");if(this.multiSelect){var p=this.getVisibleItems();for(var t=0;t<p.length;t++){if(!p[t].disabled){this.ensureVisible(t);break}}}}}if(this.remoteAutoComplete){this.listBox.clearSelection()}if(l!="search"){this._oldvalue=this.listBox.selectedValue}a.jqx.aria(this,"aria-expanded",true);if(this.dropDownWidth=="auto"&&this.width!=null&&this.width.indexOf&&this.width.indexOf("%")!=-1){if(this.listBox.host.width()!=this.host.width()){var r=this.host.width();this.listBoxContainer.jqxListBox({width:r});this.container.width(parseInt(r)+25)}}var o=this;var h=this.listBoxContainer;var v=this.listBox;var e=a(window).scrollTop();var f=a(window).scrollLeft();var m=parseInt(this._findPos(this.host[0])[1])+parseInt(this.host.outerHeight())-1+"px";var d,q=parseInt(Math.round(this.host.coord(true).left));d=q+"px";var u=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();this.ishiding=false;var g=a.jqx.utilities.hasTransform(this.host);if(g||(u!=null&&u)){d=a.jqx.mobile.getLeftPos(this.element);m=a.jqx.mobile.getTopPos(this.element)+parseInt(this.host.outerHeight());if(a("body").css("border-top-width")!="0px"){m=parseInt(m)-this._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){d=parseInt(d)-this._getBodyOffset().left+"px"}}this.host.addClass(this.toThemeProperty("jqx-combobox-state-selected"));this.dropdownlistArrowIcon.addClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-combobox-arrow-selected"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.host.addClass(this.toThemeProperty("jqx-combobox-state-focus"));this.host.addClass(this.toThemeProperty("jqx-fill-state-focus"));this.dropdownlistContent.addClass(this.toThemeProperty("jqx-combobox-content-focus"));this.container.css("left",d);this.container.css("top",m);v._arrange();var c=true;var b=false;if(this.dropDownHorizontalAlignment=="right"||this.rtl){var k=this.container.outerWidth();var s=Math.abs(k-this.host.width());if(k>this.host.width()){this.container.css("left",25+parseInt(Math.round(q))-s+"px")}else{this.container.css("left",25+parseInt(Math.round(q))+s+"px")}}if(this.enableBrowserBoundsDetection){var j=this.testOffset(h,{left:parseInt(this.container.css("left")),top:parseInt(m)},parseInt(this.host.outerHeight()));if(parseInt(this.container.css("top"))!=j.top){b=true;h.css("top",23);h.addClass(this.toThemeProperty("jqx-popup-up"))}else{h.css("top",0)}this.container.css("top",j.top);this.container.css("top",j.top);if(parseInt(this.container.css("left"))!=j.left){this.container.css("left",j.left)}}if(this.animationType=="none"){this.container.css("display","block");a.data(document.body,"openedCombojqxListBoxParent",o);a.data(document.body,"openedCombojqxListBox"+o.element.id,h);h.css("margin-top",0);h.css("opacity",1)}else{this.container.css("display","block");var n=h.outerHeight();h.stop();if(this.animationType=="fade"){h.css("margin-top",0);h.css("opacity",0);h.animate({opacity:1},this.openDelay,function(){o.isanimating=false;o.opening=false;a.data(document.body,"openedCombojqxListBoxParent",o);a.data(document.body,"openedCombojqxListBox"+o.element.id,h)})}else{h.css("opacity",1);if(b){h.css("margin-top",n)}else{h.css("margin-top",-n)}this.isanimating=true;this.opening=true;h.animate({"margin-top":0},this.openDelay,function(){o.isanimating=false;o.opening=false;a.data(document.body,"openedCombojqxListBoxParent",o);a.data(document.body,"openedCombojqxListBox"+o.element.id,h)})}}v._renderItems();if(!b){this.host.addClass(this.toThemeProperty("jqx-rc-b-expanded"));h.addClass(this.toThemeProperty("jqx-rc-t-expanded"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-rc-b-expanded"))}else{this.host.addClass(this.toThemeProperty("jqx-rc-t-expanded"));h.addClass(this.toThemeProperty("jqx-rc-b-expanded"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-rc-t-expanded"))}h.addClass(this.toThemeProperty("jqx-fill-state-focus"));this._raiseEvent("0",v)},doMultiSelect:function(c){if(this.checkboxes){this.multiSelect=false}var e=this;if(!this.multiSelect){var g=e.dropdownlistContent.find(".jqx-button");var d="mousedown";if(this.touch){d=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(g,d);this.removeHandler(g.find(".jqx-icon-close"),d);g.remove();this.selectedItems=new Array();this._selectedItems=new Array();return}if(this.validateSelection){var k=this.validateSelection(this.listBox.selectedValue);if(!k){return}}var h=this.selectedItems;if(this.listBox.selectedValue){if(this.selectedItems.indexOf(this.listBox.selectedValue)===-1){var j=this.getItemByValue(this.listBox.selectedValue);if(j&&j.visible){this.selectedItems.push(this.listBox.selectedValue);this._selectedItems.push(j);this._raiseEvent("2",{index:j.index,item:j});this._raiseEvent("4",{index:j.index,item:j})}}this.listBox.selectedIndex=0}var f=this.listBox.items;if(!f){return}for(var b=0;b<f.length;b++){f[b].disabled=false;if(this.selectedItems.indexOf(f[b].value)>=0||this._disabledItems.indexOf(this.value)>=0){f[b].disabled=true}}this.listBox._renderItems();this.searchString="";this.input.val("");var f="";var d="mousedown";var g=e.dropdownlistContent.find(".jqx-button");if(this.touch){d=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(g,d);this.removeHandler(g.find(".jqx-icon-close"),d);g.remove();e.input.detach();if(this.selectedItems.length>0){e.input.css("width","25px");e.input.attr("placeholder","")}else{e.input.css("width","100%");e.input.attr("placeholder",this.placeHolder)}a.each(this.selectedItems,function(l){var n=e.getItemByValue(this);if(!n||e.remoteAutoComplete){n=e._selectedItems[l]}var p=a('<div style="overflow: hidden; float: left;"></div>');p.addClass(e.toThemeProperty("jqx-button"));p.addClass(e.toThemeProperty("jqx-combobox-multi-item"));p.addClass(e.toThemeProperty("jqx-fill-state-normal"));p.addClass(e.toThemeProperty("jqx-rc-all"));if(n){var q=n.label;if(e.renderSelectedItem){var i=e.renderSelectedItem(l,n);if(i){q=i}}if(p[0].innerHTML==""){p[0].innerHTML='<a data-value="'+n.value+'" style="float: left;" href="#">'+q+"</a>"}if(e.rtl){p[0].innerHTML='<a data-value="'+n.value+'" style="float: right;" href="#">'+q+"</a>"}var o=!e.rtl?"right":"left";if(e.showCloseButtons){var m='<div style="position: relative; overflow: hidden; float: '+o+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){m='<div style="position: relative; overflow: hidden; float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>'}if(e.rtl){var m='<div style="position: relative; overflow: hidden; float: '+o+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){m='<div style="position: relative; overflow: hidden; float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>'}}p[0].innerHTML+=m}}else{if(p[0].innerHTML==""){p[0].innerHTML='<a href="#"></a>'}}e.dropdownlistContent.append(p)});e.dropdownlistContent.append(e.input);e.input.val("");if(c!==false){e.input.focus();setTimeout(function(){e.input.focus()},10)}var g=e.dropdownlistContent.find(".jqx-button");if(this.touchMode===true){d="mousedown"}this.addHandler(g,d,function(l){if(l.target.className.indexOf("jqx-icon-close")>=0){return true}if(e.disabled){return true}var m=a(l.target).attr("data-value");var i=e.getItemByValue(m);if(i){e.listBox.selectedValue=null;e.listBox.clearSelection()}e.listBox.scrollTo(0,0);e.open();if(l.preventDefault){l.preventDefault()}if(l.stopPropagation){l.stopPropagation()}return false});this.addHandler(g.find(".jqx-icon-close"),d,function(p){if(e.disabled){return}var r=a(p.target).parent().parent().find("a").attr("data-value");var o=e.getItemByValue(r);if(o||(e.remoteAutoComplete&&!o&&e.selectedItems.indexOf(r)>=0)){e.listBox.selectedValue=null;var l=e.selectedItems.indexOf(r);var n=o&&o.index>=0?o.index:l;if(l>=0){e.selectedItems.splice(l,1);var q=e._selectedItems[l];if(!q){q=o}e._selectedItems.splice(l,1);e._raiseEvent("3",{index:n,type:"mouse",item:q});e._raiseEvent("4",{index:n,type:"mouse",item:q});e.doMultiSelect()}else{for(var m=0;m<e.selectedItems.length;m++){var q=e.selectedItems[m];if(q==r){e.selectedItems.splice(m,1);e._selectedItems.splice(m,1);e._raiseEvent("3",{index:n,type:"mouse",item:o});e._raiseEvent("4",{index:n,type:"mouse",item:o});e.doMultiSelect();break}}}}});e.dropdownlistArrow.height(this.host.height());e._updateInputSelection()},hideListBox:function(h){var f=this.listBoxContainer;var g=this.listBox;var c=this.container;if(this.container[0].style.display=="none"){return}a.jqx.aria(this,"aria-expanded",false);if(h=="keyboard"||h=="mouse"){this.listBox.searchString=""}if(h=="keyboard"||h=="mouse"&&this.multiSelect){this.doMultiSelect()}var d=this;a.data(document.body,"openedCombojqxListBox"+this.element.id,null);if(this.animationType=="none"){this.opening=false;this.container.css("display","none")}else{if(!this.ishiding){var b=f.outerHeight();f.css("margin-top",0);f.stop();this.opening=false;this.isanimating=true;var e=-b;if(parseInt(this.container.coord().top)<parseInt(this.host.coord().top)){e=b}if(this.animationType=="fade"){f.css({opacity:1});f.animate({opacity:0},this.closeDelay,function(){d.isanimating=false;c.css("display","none");d.ishiding=false})}else{f.animate({"margin-top":e},this.closeDelay,function(){d.isanimating=false;c.css("display","none");d.ishiding=false})}}}this.ishiding=true;this.host.removeClass(this.toThemeProperty("jqx-combobox-state-selected"));this.dropdownlistArrowIcon.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-combobox-arrow-selected"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));if(!this.focused){this.host.removeClass(this.toThemeProperty("jqx-combobox-state-focus"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this.dropdownlistContent.removeClass(this.toThemeProperty("jqx-combobox-content-focus"))}this.host.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));this.host.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));this._raiseEvent("1",g)},closeOpenedListBox:function(e){var d=e.data.me;var b=a(e.target);var c=e.data.listbox;if(c==null){return true}if(a(e.target).ischildof(e.data.me.host)){return}var f=d;var g=false;a.each(b.parents(),function(){if(this.className!="undefined"){if(this.className.indexOf){if(this.className.indexOf("jqx-listbox")!=-1){g=true;return false}if(this.className.indexOf("jqx-combobox")!=-1){if(d.element.id==this.id){g=true}return false}}}});if(c!=null&&!g){if(d.isOpened()){d.hideListBox("api");d.input.blur()}}return true},loadFromSelect:function(b){this.listBox.loadFromSelect(b);this.clearSelection()},refresh:function(b){this._setSize();this._arrange();if(this.listBox){this.renderSelection()}},resize:function(){this._setSize();this._arrange()},_arrange:function(){var d=parseInt(this.host.width());var j=parseInt(this.host.height());var e=this.arrowSize;var f=this.arrowSize;var h=1;if(!this.showArrow){f=0;e=0;this.dropdownlistArrow.hide();h=0;this.host.css("cursor","arrow")}var b=d-f-1*h;if(b>0){this.dropdownlistContent[0].style.width=b+"px"}if(this.rtl){this.dropdownlistContent[0].style.width=(-1+b+"px")}this.dropdownlistContent[0].style.height=j+"px";this.dropdownlistContent[0].style.left="0px";this.dropdownlistContent[0].style.top="0px";this.dropdownlistArrow[0].style.width=f+1+"px";this.dropdownlistArrow[0].style.height=j+"px";this.dropdownlistArrow[0].style.left=1+b+"px";this.input[0].style.width="100%";if(!this.multiSelect){this.input.height(j)}var c=this.input.height();if(c==0){c=parseInt(this.input.css("font-size"))+3}if(this.input[0].className.indexOf("jqx-rc-all")==-1){this.input.addClass(this.toThemeProperty("jqx-rc-all"))}var i=parseInt(j)/2-parseInt(c)/2;if(i>0){}if(this.rtl){this.dropdownlistArrow.css("left","0px");this.dropdownlistContent.css("left",this.dropdownlistArrow.width());if(a.jqx.browser.msie&&a.jqx.browser.version<=8){this.dropdownlistContent.css("left",1+this.dropdownlistArrow.width())}}if(this.multiSelect){this.input.css("float","left");this.dropdownlistWrapper.parent().css("height","auto");this.dropdownlistContent.css("height","auto");this.dropdownlistWrapper.css("height","auto");this.dropdownlistContent.css("position","relative");this.dropdownlistContent.css("cursor","text");this.host.css("height","auto");this.host.css("min-height",this.height);this.dropdownlistContent.css("min-height",this.height);var j=parseInt(this.host.height());this.dropdownlistArrow.height(j);var g=parseInt(this.host.css("min-height"));var i=parseInt(g)/2-parseInt(c)/2;if(i>0){this.input.css("margin-top",i)}}},destroy:function(){if(this.source&&this.source.unbindBindingUpdate){this.source.unbindBindingUpdate(this.element.id);this.source.unbindBindingUpdate(this.listBoxContainer[0].id);this.source.unbindDownloadComplete(this.element.id);this.source.unbindDownloadComplete(this.listBoxContainer[0].id)}a.jqx.utilities.resize(this.host,null,true);this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBoxContainer,"unselect");this.removeHandler(this.listBoxContainer,"change");this.removeHandler(this.listBoxContainer,"bindingComplete");this.removeHandler(this.dropdownlistWrapper,"selectstart");this.removeHandler(this.dropdownlistWrapper,"mousedown");this.removeHandler(this.host,"keydown");this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBox.content,"click");this.removeHandlers();this.removeHandler(this.input,"keyup.textchange");this.listBoxContainer.jqxListBox("destroy");this.listBoxContainer.remove();this.host.removeClass();this.removeHandler(a(document),"mousedown."+this.id,this.closeOpenedListBox);if(this.touch){this.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id)}this.cinput.remove();delete this.cinput;this.dropdownlistArrow.remove();delete this.dropdownlistArrow;this.dropdownlistArrowIcon.remove();delete this.dropdownlistArrowIcon;delete this.dropdownlistWrapper;delete this.listBoxContainer;delete this.input;delete this.dropdownlistContent;delete this.comboStructure;this.container.remove();delete this.listBox;delete this.container;var b=a.data(this.element,"jqxComboBox");if(b){delete b.instance}this.host.removeData();this.host.remove();delete this.host;delete this.set;delete this.get;delete this.call;delete this.element},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);e.owner=this;if(f==2||f==3||f==4||f==5){e.args=c}var b=this.host.trigger(e);return b},propertyChangedHandler:function(b,c,f,e){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="itemHeight"){b.listBoxContainer.jqxListBox({itemHeight:e})}if(c=="renderSelectedItem"){b.renderSelection("mouse")}if(c=="renderer"){b.listBoxContainer.jqxListBox({renderer:e})}if(c=="enableSelection"){b.listBoxContainer.jqxListBox({enableSelection:e})}if(c=="enableHover"){b.listBoxContainer.jqxListBox({enableHover:e})}if(c==="touchMode"){b.listBoxContainer.jqxListBox({touchMode:e});b.touch=a.jqx.mobile.isTouchDevice();if(b.touchMode===true){b.touch=true}b._updateHandlers()}if(c=="multiSelect"){if(e){b.doMultiSelect(false)}else{b.doMultiSelect(false);b.dropdownlistWrapper.parent().css("height","100%");b.dropdownlistContent.css("height","100");b.dropdownlistWrapper.css("height","100");b.dropdownlistContent.css("position","relative");b.host.css("min-height",null);b._setSize();b._arrange()}}if(c=="showArrow"){b._arrange();if(b.multiSelect){b.doMultiSelect(false)}}if(c=="placeHolder"){b.input.attr("placeholder",b.placeHolder)}if(c=="popupZIndex"){b.listBoxContainer.css({zIndex:b.popupZIndex})}if(c=="promptText"){b.placeHolder=e}if(c=="autoOpen"){b._updateHandlers()}if(c=="renderer"){b.listBox.renderer=b.renderer}if(c=="itemHeight"){b.listBox.itemHeight=e}if(c=="source"){b.input.val("");b.listBoxContainer.jqxListBox({source:b.source});b.renderSelection("mouse");if(b.source==null){b.clearSelection()}if(b.multiSelect){b.selectedItems=new Array();b._selectedItems=new Array();b.doMultiSelect(false)}}if(c=="rtl"){if(e){b.dropdownlistArrow.css("float","left");b.dropdownlistContent.css("float","right")}else{b.dropdownlistArrow.css("float","right");b.dropdownlistContent.css("float","left")}b.listBoxContainer.jqxListBox({rtl:b.rtl})}if(c=="displayMember"||c=="valueMember"){b.listBoxContainer.jqxListBox({displayMember:b.displayMember,valueMember:b.valueMember});b.renderSelection("mouse")}if(c=="autoDropDownHeight"){b.listBoxContainer.jqxListBox({autoHeight:b.autoDropDownHeight});if(b.autoDropDownHeight){b.container.height(b.listBoxContainer.height()+25)}else{b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}b.listBox._arrange();b.listBox._updatescrollbars()}if(c=="dropDownHeight"){if(!b.autoDropDownHeight){b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}}if(c=="dropDownWidth"||c=="scrollBarSize"){var d=b.width;if(b.dropDownWidth!="auto"){d=b.dropDownWidth}b.listBoxContainer.jqxListBox({width:d,scrollBarSize:b.scrollBarSize});b.container.width(parseInt(d)+25)}if(c=="autoComplete"){b._resetautocomplete()}if(c=="checkboxes"){b.listBoxContainer.jqxListBox({checkboxes:b.checkboxes});if(b.checkboxes){b.input.attr("readonly",true);a.jqx.aria(b,"aria-readonly",true)}else{a.jqx.aria(b,"aria-readonly",false)}}if(c=="theme"&&e!=null){b.listBoxContainer.jqxListBox({theme:e});b.listBoxContainer.addClass(b.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){b.listBoxContainer.addClass(b.toThemeProperty("jqx-noshadow"))}a.jqx.utilities.setTheme(f,e,b.host)}if(c=="rtl"){b.render();b.refresh()}if(c=="width"||c=="height"){b._setSize();if(c=="width"){if(b.dropDownWidth=="auto"){var d=b.host.width();b.listBoxContainer.jqxListBox({width:d});b.container.width(parseInt(d)+25)}}b._arrange()}if(c=="selectedIndex"){b.listBox.selectIndex(e);b.renderSelection("mouse")}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDropDownList","",{});a.extend(a.jqx._jqxDropDownList.prototype,{defineInstance:function(){var b={disabled:false,width:null,height:null,items:new Array(),selectedIndex:-1,source:null,scrollBarSize:15,arrowSize:19,enableHover:true,enableSelection:true,visualItems:new Array(),groups:new Array(),equalItemsWidth:true,itemHeight:-1,visibleItems:new Array(),emptyGroupText:"Group",checkboxes:false,openDelay:250,closeDelay:300,animationType:"default",autoOpen:false,dropDownWidth:"auto",dropDownHeight:"200px",autoDropDownHeight:false,keyboardSelection:true,enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",displayMember:"",valueMember:"",groupMember:"",searchMember:"",searchMode:"startswithignorecase",incrementalSearch:true,incrementalSearchDelay:700,renderer:null,placeHolder:"Please Choose:",promptText:"Please Choose:",emptyString:"",rtl:false,selectionRenderer:null,listBox:null,popupZIndex:9999999999999,renderMode:"default",touchMode:"auto",_checkForHiddenParent:true,autoBind:true,focusable:true,filterable:false,filterHeight:27,filterPlaceHolder:"Looking for",filterDelay:100,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["open","close","select","unselect","change","checkChange","bindingComplete"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var q=this;if(!q.width){q.width=200}if(!q.height){q.height=25}var o=q.element.nodeName.toLowerCase();if(o=="select"||o=="ul"||o=="ol"){q.field=q.element;if(q.field.className){q._className=q.field.className}var k={title:q.field.title};if(q.field.id.length){k.id=q.field.id.replace(/[^\w]/g,"_")+"_jqxDropDownList"}else{k.id=a.jqx.utilities.createId()+"_jqxDropDownList"}var c=a("<div></div>",k);if(!q.width){q.width=a(q.field).width()}if(!q.height){q.height=a(q.field).outerHeight()}a(q.field).hide().after(c);var i=q.host.data();q.host=c;q.host.data(i);q.element=c[0];q.element.id=q.field.id;q.field.id=k.id;if(q._className){q.host.addClass(q._className);a(q.field).removeClass(q._className)}if(q.field.tabIndex){var f=q.field.tabIndex;q.field.tabIndex=-1;q.element.tabIndex=f}var r=a.jqx.parseSourceTag(q.field);q.source=r.items;if(q.selectedIndex==-1){q.selectedIndex=r.index}}q.element.innerHTML="";q.isanimating=false;q.id=q.element.id||a.jqx.utilities.createId();q.host.attr("role","combobox");a.jqx.aria(q,"aria-autocomplete","both");a.jqx.aria(q,"aria-readonly",false);var g="<div style='background-color: transparent; -webkit-appearance: none; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; border: 0px; position: relative;'><div id='dropdownlistWrapper' style='overflow: hidden; outline: none; background-color: transparent; border: none; float: left; width:100%; height: 100%; position: relative;'><div id='dropdownlistContent' unselectable='on' style='outline: none; background-color: transparent; border: none; float: left; position: relative;'></div><div id='dropdownlistArrow' unselectable='on' style='background-color: transparent; border: none; float: right; position: relative;'><div unselectable='on'></div></div></div></div>";if(a.jqx._jqxListBox==null||a.jqx._jqxListBox==undefined){throw new Error("jqxDropDownList: Missing reference to jqxlistbox.js.")}if(q.host.attr("tabindex")){q.host.attr("tabindex",q.host.attr("tabindex"));q.host.removeAttr("tabindex")}else{q.host.attr("tabindex",0)}var l=q;q.touch=a.jqx.mobile.isTouchDevice();q.comboStructure=g;q.element.innerHTML=g;q.dropdownlistWrapper=a(q.element.firstChild.firstChild);q.dropdownlistArrow=a(q.dropdownlistWrapper[0].firstChild.nextSibling);q.arrow=a(q.dropdownlistArrow[0].firstChild);q.dropdownlistContent=a(q.dropdownlistWrapper[0].firstChild);q.dropdownlistContent.addClass(q.toThemeProperty("jqx-dropdownlist-content jqx-disableselect"));if(q.rtl){q.dropdownlistContent.addClass(q.toThemeProperty("jqx-rtl jqx-dropdownlist-content-rtl"))}q.addHandler(q.dropdownlistWrapper,"selectstart",function(){return false});q.dropdownlistWrapper[0].id="dropdownlistWrapper"+q.element.id;q.dropdownlistArrow[0].id="dropdownlistArrow"+q.element.id;q.dropdownlistContent[0].id="dropdownlistContent"+q.element.id;q._addInput();if(q.promptText!="Please Choose:"){q.placeHolder=q.promptText}var n=q.toThemeProperty("jqx-widget")+" "+q.toThemeProperty("jqx-dropdownlist-state-normal")+" "+q.toThemeProperty("jqx-rc-all")+" "+q.toThemeProperty("jqx-fill-state-normal");q.element.className+=" "+n;q._firstDiv=a(q.element.firstChild);try{var p="listBox"+q.id;var h=a(a.find("#"+p));if(h.length>0){h.remove()}a.jqx.aria(q,"aria-owns",p);a.jqx.aria(q,"aria-haspopup",true);var b=a("<div style='overflow: hidden; background-color: transparent; border: none; position: absolute;' id='listBox"+q.id+"'><div id='innerListBox"+q.id+"'></div></div>");b.hide();b.appendTo(document.body);q.container=b;q.listBoxContainer=a(a.find("#innerListBox"+q.id));var d=q.width;if(q.dropDownWidth!="auto"){d=q.dropDownWidth}if(d==null){d=q.host.width();if(d==0){d=q.dropDownWidth}}if(q.dropDownHeight==null){q.dropDownHeight=200}var l=q;q.container.width(parseInt(d)+25);q.container.height(parseInt(q.dropDownHeight)+25);q.addHandler(q.listBoxContainer,"bindingComplete",function(e){if(!q.listBox){q.listBox=a.data(q.listBoxContainer[0],"jqxListBox").instance}q._raiseEvent("6")});q.listBoxContainer.jqxListBox({filterHeight:q.filterHeight,filterPlaceHolder:q.filterPlaceHolder,filterDelay:q.filterDelay,filterable:q.filterable,allowDrop:false,allowDrag:false,autoBind:q.autoBind,_checkForHiddenParent:false,focusable:q.focusable,touchMode:q.touchMode,checkboxes:q.checkboxes,rtl:q.rtl,_renderOnDemand:true,emptyString:q.emptyString,itemHeight:q.itemHeight,width:d,searchMode:q.searchMode,incrementalSearch:q.incrementalSearch,incrementalSearchDelay:q.incrementalSearchDelay,groupMember:q.groupMember,searchMember:q.searchMember,displayMember:q.displayMember,valueMember:q.valueMember,height:q.dropDownHeight,autoHeight:q.autoDropDownHeight,scrollBarSize:q.scrollBarSize,selectedIndex:q.selectedIndex,source:q.source,theme:q.theme,rendered:function(){if(q.selectedIndex!=q.listBoxContainer.jqxListBox("selectedIndex")){q.listBox=a.data(q.listBoxContainer[0],"jqxListBox").instance;q.listBoxContainer.jqxListBox({selectedIndex:q.selectedIndex});q.renderSelection("mouse")}else{q.renderSelection("mouse")}},renderer:q.renderer});q.listBoxContainer.css({position:"absolute",zIndex:q.popupZIndex,top:0,left:0});q.listBox=a.data(q.listBoxContainer[0],"jqxListBox").instance;q.listBox.enableSelection=q.enableSelection;q.listBox.enableHover=q.enableHover;q.listBox.equalItemsWidth=q.equalItemsWidth;q.listBox.selectIndex(q.selectedIndex);q.listBox._arrange();q.listBoxContainer.addClass(q.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){q.listBoxContainer.addClass(q.toThemeProperty("jqx-noshadow"))}q.addHandler(q.listBoxContainer,"unselect",function(e){q._raiseEvent("3",{index:e.args.index,type:e.args.type,item:e.args.item})});q.addHandler(q.listBoxContainer,"change",function(e){if(e.args){if(e.args.type!="keyboard"){q._raiseEvent("4",{index:e.args.index,type:e.args.type,item:e.args.item})}else{if(e.args.type=="keyboard"){if(!q.isOpened()){q._raiseEvent("4",{index:q.selectedIndex,type:"keyboard",item:q.getItem(q.selectedIndex)})}}}}});if(q.animationType=="none"){q.container.css("display","none")}else{q.container.hide()}}catch(j){if(console){console.log(j)}}var q=q;q.propertyChangeMap.disabled=function(e,t,s,u){if(u){e.host.addClass(q.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.addClass(q.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.addClass(q.toThemeProperty("jqx-dropdownlist-content-disabled"))}else{e.host.removeClass(q.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.removeClass(q.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.removeClass(q.toThemeProperty("jqx-dropdownlist-content-disabled"))}a.jqx.aria(e,"aria-disabled",e.disabled)};if(q.disabled){q.host.addClass(q.toThemeProperty("jqx-dropdownlist-state-disabled"));q.host.addClass(q.toThemeProperty("jqx-fill-state-disabled"));q.dropdownlistContent.addClass(q.toThemeProperty("jqx-dropdownlist-content-disabled"))}q.arrow.addClass(q.toThemeProperty("jqx-icon-arrow-down"));q.arrow.addClass(q.toThemeProperty("jqx-icon"));if(q.renderMode==="simple"){q.arrow.remove();q.host.removeClass(q.toThemeProperty("jqx-fill-state-normal"));q.host.removeClass(q.toThemeProperty("jqx-rc-all"))}q._updateHandlers();q._setSize();q._arrange();if(q.listBox){q.renderSelection()}if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(q.host.parents(".jqx-window").length>0){var m=q.host.parents(".jqx-window").css("z-index");b.css("z-index",m+10);q.listBoxContainer.css("z-index",m+10)}}},resize:function(c,b){this.width=c;this.height=b;this._setSize();this._arrange()},val:function(c){if(!this.dropdownlistContent){return""}var d=function(f){for(var e in f){if(f.hasOwnProperty(e)){return false}}if(typeof c=="number"){return false}if(typeof c=="date"){return false}if(typeof c=="boolean"){return false}if(typeof c=="string"){return false}return true};if(this.input&&(d(c)||arguments.length==0)){return this.input.val()}var b=this.getItemByValue(c);if(b!=null){this.selectItem(b)}if(this.input){return this.input.val()}},focus:function(){try{var d=this;var c=function(){d.host.focus();if(d._firstDiv){d._firstDiv.focus()}};c();setTimeout(function(){c()},10)}catch(b){}},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}},getItems:function(){if(!this.listBox){return new Array()}return this.listBox.items},getVisibleItems:function(){return this.listBox.getVisibleItems()},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true;this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true;this.host.height(this.height)}var c=this;var d=function(){c._arrange();if(c.dropDownWidth=="auto"){var f=c.host.width();c.listBoxContainer.jqxListBox({width:f});c.container.width(parseInt(f)+25)}};if(e){var b=this.host.width();if(this.dropDownWidth!="auto"){b=this.dropDownWidth}this.listBoxContainer.jqxListBox({width:b});this.container.width(parseInt(b)+25)}a.jqx.utilities.resize(this.host,function(){d()},false,this._checkForHiddenParent)},isOpened:function(){var c=this;var b=a.data(document.body,"openedJQXListBox"+this.id);if(b!=null&&b==c.listBoxContainer){return true}return false},_updateHandlers:function(){var c=this;var d=false;this.removeHandlers();if(!this.touch){this.addHandler(this.host,"mouseenter",function(){if(!c.disabled&&c.enableHover&&c.renderMode!=="simple"){d=true;c.host.addClass(c.toThemeProperty("jqx-dropdownlist-state-hover"));c.arrow.addClass(c.toThemeProperty("jqx-icon-arrow-down-hover"));c.host.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mouseleave",function(){if(!c.disabled&&c.enableHover&&c.renderMode!=="simple"){c.host.removeClass(c.toThemeProperty("jqx-dropdownlist-state-hover"));c.host.removeClass(c.toThemeProperty("jqx-fill-state-hover"));c.arrow.removeClass(c.toThemeProperty("jqx-icon-arrow-down-hover"));d=false}})}if(this.host.parents()){this.addHandler(this.host.parents(),"scroll.dropdownlist"+this.element.id,function(e){var f=c.isOpened();if(f){c.close()}})}var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.addHandler(this.dropdownlistWrapper,b,function(f){if(!c.disabled){var e=c.container.css("display")=="block";if(!c.isanimating){if(e){c.hideListBox();return false}else{c.showListBox();if(!c.focusable){if(f.preventDefault){f.preventDefault()}}else{c.focus()}}}}});if(c.autoOpen){this.addHandler(this.host,"mouseenter",function(){var e=c.isOpened();if(!e&&c.autoOpen){c.open();c.host.focus()}});a(document).on("mousemove."+c.id,function(h){var g=c.isOpened();if(g&&c.autoOpen){var l=c.host.coord();var k=l.top;var j=l.left;var i=c.container.coord();var e=i.left;var f=i.top;canClose=true;if(h.pageY>=k&&h.pageY<=k+c.host.height()){if(h.pageX>=j&&h.pageX<j+c.host.width()){canClose=false}}if(h.pageY>=f&&h.pageY<=f+c.container.height()){if(h.pageX>=e&&h.pageX<e+c.container.width()){canClose=false}}if(canClose){c.close()}}})}if(this.touch){this.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id,c.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id})}else{this.addHandler(a(document),"mousedown."+this.id,c.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id})}this.addHandler(this.host,"keydown",function(f){var e=c.container.css("display")=="block";if(c.host.css("display")=="none"){return true}if(f.keyCode=="13"||f.keyCode=="9"){if(!c.isanimating){if(e){c.renderSelection();if(f.keyCode=="13"&&c.focusable){c._firstDiv.focus()}c.hideListBox();if(!c.keyboardSelection){c._raiseEvent("2",{index:c.selectedIndex,type:"keyboard",item:c.getItem(c.selectedIndex)})}if(f.keyCode=="13"){c._raiseEvent("4",{index:c.selectedIndex,type:"keyboard",item:c.getItem(c.selectedIndex)})}}if(e&&f.keyCode!="9"){return false}return true}}if(f.keyCode==115){if(!c.isanimating){if(!c.isOpened()){c.showListBox()}else{if(c.isOpened()){c.hideListBox()}}}return false}if(f.altKey){if(c.host.css("display")=="block"){if(f.keyCode==38){if(c.isOpened()){c.hideListBox();return true}}else{if(f.keyCode==40){if(!c.isOpened()){c.showListBox();return true}}}}}if(f.keyCode=="27"){if(!c.ishiding){if(c.isOpened()){c.hideListBox();if(c.tempSelectedIndex!=undefined){c.selectIndex(c.tempSelectedIndex)}}return true}}if(!c.disabled){c._kbnavigated=c.listBox._handleKeyDown(f);return c._kbnavigated}});this.addHandler(this.listBoxContainer,"checkChange",function(e){c.renderSelection();c._updateInputSelection();c._raiseEvent(5,{label:e.args.label,value:e.args.value,checked:e.args.checked,item:e.args.item})});this.addHandler(this.listBoxContainer,"select",function(e){if(!c.disabled){if(!e.args){return}if(e.args.type=="keyboard"&&!c.isOpened()){c.renderSelection()}if(e.args.type!="keyboard"||c.keyboardSelection){c.renderSelection();c._raiseEvent("2",{index:e.args.index,type:e.args.type,item:e.args.item,originalEvent:e.args.originalEvent});if(e.args.type=="mouse"){if(!c.checkboxes){c.hideListBox();if(c._firstDiv&&c.focusable){c._firstDiv.focus()}}}}}});if(this.listBox){if(this.listBox.content){this.addHandler(this.listBox.content,"click",function(e){if(!c.disabled){if(c.listBox.itemswrapper&&e.target===c.listBox.itemswrapper[0]){return true}c.renderSelection("mouse");if(!c.touch){if(!c.ishiding){if(!c.checkboxes){c.hideListBox();if(c._firstDiv&&c.focusable){c._firstDiv.focus()}}}}if(!c.keyboardSelection){if(c._kbnavigated===false){if(c.tempSelectedIndex!=c.selectedIndex){c._raiseEvent("4",{index:c.selectedIndex,type:"mouse",item:c.getItem(c.selectedIndex)})}c._kbnavigated=true}if(c._oldSelectedInd==undefined){c._oldSelectedIndx=c.selectedIndex}if(c.selectedIndex!=c._oldSelectedIndx){c._raiseEvent("2",{index:c.selectedIndex,type:"keyboard",item:c.getItem(c.selectedIndex)});c._oldSelectedIndx=c.selectedIndex}}}})}}this.addHandler(this.host,"focus",function(e){if(c.renderMode!=="simple"){c.host.addClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.addClass(c.toThemeProperty("jqx-fill-state-focus"))}});this.addHandler(this.host,"blur",function(){if(c.renderMode!=="simple"){c.host.removeClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.removeClass(c.toThemeProperty("jqx-fill-state-focus"))}});this.addHandler(this._firstDiv,"focus",function(e){if(c.renderMode!=="simple"){c.host.addClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.addClass(c.toThemeProperty("jqx-fill-state-focus"))}});this.addHandler(this._firstDiv,"blur",function(){if(c.renderMode!=="simple"){c.host.removeClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.removeClass(c.toThemeProperty("jqx-fill-state-focus"))}})},removeHandlers:function(){var c=this;var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(this.dropdownlistWrapper,b);if(this.listBox){if(this.listBox.content){this.removeHandler(this.listBox.content,"click")}}this.removeHandler(this.host,"loadContent");this.removeHandler(this.listBoxContainer,"checkChange");this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur");this.removeHandler(this._firstDiv,"focus");this.removeHandler(this._firstDiv,"blur");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(a(document),"mousemove."+c.id)},getItem:function(b){var c=this.listBox.getItem(b);return c},getItemByValue:function(c){var b=this.listBox.getItemByValue(c);return b},selectItem:function(b){if(this.listBox!=undefined){this.listBox.selectItem(b);this.selectedIndex=this.listBox.selectedIndex;this.renderSelection("mouse")}},unselectItem:function(b){if(this.listBox!=undefined){this.listBox.unselectItem(b);this.renderSelection("mouse")}},checkItem:function(b){if(this.listBox!=undefined){this.listBox.checkItem(b)}},uncheckItem:function(b){if(this.listBox!=undefined){this.listBox.uncheckItem(b)}},indeterminateItem:function(b){if(this.listBox!=undefined){this.listBox.indeterminateItem(b)}},renderSelection:function(){if(this.listBox==null){return}if(this.height&&this.height.toString().indexOf("%")!=-1){this._arrange()}var r=this.listBox.visibleItems[this.listBox.selectedIndex];if(this.filterable){if(this.listBox.selectedIndex==-1){for(var e in this.listBox.selectedValues){var l=this.listBox.selectedValues[e];var b=this.listBox.getItemByValue(l);if(b){r=b}}}}var u=this;if(this.checkboxes){var v=this.getCheckedItems();if(v!=null&&v.length>0){r=v[0]}else{r=null}}if(r==null){var j=a('<span unselectable="on" style="color: inherit; border: none; background-color: transparent;"></span>');j.appendTo(a(document.body));j.addClass(this.toThemeProperty("jqx-widget"));j.addClass(this.toThemeProperty("jqx-listitem-state-normal"));j.addClass(this.toThemeProperty("jqx-item"));a.jqx.utilities.html(j,this.placeHolder);var s=this.dropdownlistContent.css("padding-top");var x=this.dropdownlistContent.css("padding-bottom");j.css("padding-top",s);j.css("padding-bottom",x);var q=j.outerHeight();j.remove();j.removeClass();a.jqx.utilities.html(this.dropdownlistContent,j);var h=this.host.height();if(this.height!=null&&this.height!=undefined){if(this.height.toString().indexOf("%")===-1){h=parseInt(this.height)}}var f=parseInt((parseInt(h)-parseInt(q))/2);if(f>0){this.dropdownlistContent.css("margin-top",f+"px");this.dropdownlistContent.css("margin-bottom",f+"px")}if(this.selectionRenderer){a.jqx.utilities.html(this.dropdownlistContent,this.selectionRenderer(j,-1,"",""));this.dropdownlistContent.css("margin-top","0px");this.dropdownlistContent.css("margin-bottom","0px");this._updateInputSelection()}else{this._updateInputSelection()}this.selectedIndex=this.listBox.selectedIndex;if(this.width==="auto"){this._arrange()}if(this.focusable&&this.isOpened()){this.focus()}return}this.selectedIndex=this.listBox.selectedIndex;var j=a(document.createElement("span"));j[0].setAttribute("unselectable","on");try{j[0].style.color="inherit"}catch(t){}j[0].style.borderWidth="0px";j[0].style.backgroundColor="transparent";j.appendTo(a(document.body));j.addClass(this.toThemeProperty("jqx-widget jqx-listitem-state-normal jqx-item"));var p=false;try{if(r.html!=undefined&&r.html!=null&&r.html.toString().length>0){a.jqx.utilities.html(j,r.html)}else{if(r.label!=undefined&&r.label!=null&&r.label.toString().length>0){a.jqx.utilities.html(j,r.label)}else{if(r.label===null||r.label===""){p=true;a.jqx.utilities.html(j,"")}else{if(r.value!=undefined&&r.value!=null&&r.value.toString().length>0){a.jqx.utilities.html(j,r.value)}else{if(r.title!=undefined&&r.title!=null&&r.title.toString().length>0){a.jqx.utilities.html(j,r.title)}else{if(r.label==""||r.label==null){p=true;a.jqx.utilities.html(j,"")}}}}}}}catch(n){var m=n}var s=this.dropdownlistContent[0].style.paddingTop;var x=this.dropdownlistContent[0].style.paddingBottom;if(s===""){s="0px"}if(x===""){x="0px"}j[0].style.paddingTop=s;j[0].style.paddingBottom=x;var q=j.outerHeight();if(q===0){q=16}if((r.label==""||r.label==null)&&p){a.jqx.utilities.html(j,"")}var c=this.width&&this.width.toString().indexOf("%")<=0;j.remove();j.removeClass();if(this.selectionRenderer){a.jqx.utilities.html(this.dropdownlistContent,this.selectionRenderer(j,r.index,r.label,r.value));if(this.focusable&&this.isOpened()){this.focus()}}else{if(this.checkboxes){var g=this.getCheckedItems();var k="";for(var o=0;o<g.length;o++){if(o==g.length-1){k+=g[o].label}else{k+=g[o].label+","}}j.text(k);if(c){j.css("max-width",this.host.width()-30)}j.css("overflow","hidden");j.css("display","block");if(!this.rtl){if(c){j.css("width",this.host.width()-30)}}j.css("text-overflow","ellipsis");j.css("padding-bottom",1+parseInt(x));this.dropdownlistContent.html(j);if(this.focusable&&this.isOpened()){this.focus()}}else{var d=this.host.width()-this.arrowSize-3;if(this.width&&this.width!=="auto"){if(c){if(!this.rtl){j.css("max-width",d+"px")}}j[0].style.overflow="hidden";j[0].style.display="block";j[0].style.paddingTop=(1+parseInt(x))+"px";if(!this.rtl){if(c){j[0].style.width=d+"px"}}j[0].style.textOverflow="ellipsis"}this.dropdownlistContent[0].innerHTML=j[0].innerHTML;if(this.focusable&&this.isOpened()){this.focus()}}}var h=this.host.height();if(this.height!=null&&this.height!=undefined){if(this.height.toString().indexOf("%")===-1){h=parseInt(this.height)}}var f=parseInt((parseInt(h)-parseInt(q))/2);if(f>0){this.dropdownlistContent[0].style.marginTop=f+"px";this.dropdownlistContent[0].style.marginBottom=f+"px"}if(this.selectionRenderer){this.dropdownlistContent[0].style.marginTop="0px";this.dropdownlistContent[0].style.marginBottom="0px"}if(this.dropdownlistContent&&this.input){this._updateInputSelection()}if(this.listBox&&this.listBox._activeElement){a.jqx.aria(this,"aria-activedescendant",this.listBox._activeElement.id)}if(this.width==="auto"){this._arrange()}},_updateInputSelection:function(){if(this.input){var c=new Array();if(this.selectedIndex==-1){this.input.val("")}else{var f=this.getSelectedItem();if(f!=null){this.input.val(f.value);c.push(f.value)}else{this.input.val(this.dropdownlistContent.text())}}if(this.checkboxes){var b=this.getCheckedItems();var g="";if(b!=null){for(var d=0;d<b.length;d++){var e=b[d].value;if(e==undefined){continue}if(d==b.length-1){g+=e}else{g+=e+","}c.push(e)}}this.input.val(g)}}if(this.field&&this.input){if(this.field.nodeName.toLowerCase()=="select"){a.each(this.field,function(h,i){a(this).removeAttr("selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this).attr("selected",true)}})}else{a.each(this.items,function(h,i){a(this.originalItem.originalItem).removeAttr("data-selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this.originalItem.originalItem).attr("data-selected",true)}})}}},setContent:function(b){a.jqx.utilities.html(this.dropdownlistContent,b);this._updateInputSelection()},dataBind:function(){this.listBoxContainer.jqxListBox({source:this.source});this.renderSelection("mouse");if(this.source==null){this.clearSelection()}},clear:function(){this.listBoxContainer.jqxListBox({source:null});this.clearSelection()},clearSelection:function(b){this.selectedIndex=-1;this._updateInputSelection();this.listBox.clearSelection();this.renderSelection();if(!this.selectionRenderer){a.jqx.utilities.html(this.dropdownlistContent,this.placeHolder)}},unselectIndex:function(b,c){if(isNaN(b)){return}this.listBox.unselectIndex(b,c);this.renderSelection()},selectIndex:function(b,d,e,c){this.listBox.selectIndex(b,d,e,c,"api")},getSelectedIndex:function(){return this.selectedIndex},getSelectedItem:function(){return this.listBox.getVisibleItem(this.selectedIndex)},getCheckedItems:function(){return this.listBox.getCheckedItems()},checkIndex:function(b){this.listBox.checkIndex(b)},uncheckIndex:function(b){this.listBox.uncheckIndex(b)},indeterminateIndex:function(b){this.listBox.indeterminateIndex(b)},checkAll:function(){this.listBox.checkAll();this.renderSelection("mouse")},uncheckAll:function(){this.listBox.uncheckAll();this.renderSelection("mouse")},addItem:function(b){return this.listBox.addItem(b)},insertAt:function(c,b){if(c==null){return false}return this.listBox.insertAt(c,b)},removeAt:function(c){var b=this.listBox.removeAt(c);this.renderSelection("mouse");return b},removeItem:function(c){var b=this.listBox.removeItem(c);this.renderSelection("mouse");return b},updateItem:function(c,d){var b=this.listBox.updateItem(c,d);this.renderSelection("mouse");return b},updateAt:function(d,c){var b=this.listBox.updateAt(d,c);this.renderSelection("mouse");return b},ensureVisible:function(b){return this.listBox.ensureVisible(b)},disableAt:function(b){return this.listBox.disableAt(b)},enableAt:function(b){return this.listBox.enableAt(b)},disableItem:function(b){return this.listBox.disableItem(b)},enableItem:function(b){return this.listBox.enableItem(b)},_findPos:function(c){while(c&&(c.type=="hidden"||c.nodeType!=1||a.expr.filters.hidden(c))){c=c.nextSibling}var b=a(c).coord(true);return[b.left,b.top]},testOffset:function(h,f,c){var g=h.outerWidth();var j=h.outerHeight();var i=a(window).width()+a(window).scrollLeft();var e=a(window).height()+a(window).scrollTop();if(f.left+g>i){if(g>this.host.width()){var d=this.host.coord().left;var b=g-this.host.width();f.left=d-b+2}}if(f.left<0){f.left=parseInt(this.host.coord().left)+"px"}f.top-=Math.min(f.top,(f.top+j>e&&e>j)?Math.abs(j+c+22):0);return f},open:function(){this.showListBox()},close:function(){this.hideListBox()},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},showListBox:function(){a.jqx.aria(this,"aria-expanded",true);if(this.listBox._renderOnDemand){this.listBoxContainer.jqxListBox({_renderOnDemand:false})}if(this.dropDownWidth=="auto"&&this.width!=null&&this.width.indexOf&&(this.width.indexOf("%")!=-1||this.width.indexOf("auto")!=-1)){if(this.listBox.host.width()!=this.host.width()){var c=this.host.width();this.listBoxContainer.jqxListBox({width:c});this.container.width(parseInt(c)+25)}}var p=this;var d=this.listBoxContainer;var j=this.listBox;var m=a(window).scrollTop();var h=a(window).scrollLeft();var k=parseInt(this._findPos(this.host[0])[1])+parseInt(this.host.outerHeight())-1+"px";var f,g=parseInt(Math.round(this.host.coord(true).left));f=g+"px";var o=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();if(this.listBox==null){return}this.ishiding=false;if(!this.keyboardSelection){this.listBox.selectIndex(this.selectedIndex);this.listBox.ensureVisible(this.selectedIndex)}this.tempSelectedIndex=this.selectedIndex;if(this.autoDropDownHeight){this.container.height(this.listBoxContainer.height()+25)}if((o!=null&&o)){f=a.jqx.mobile.getLeftPos(this.element);k=a.jqx.mobile.getTopPos(this.element)+parseInt(this.host.outerHeight());if(a("body").css("border-top-width")!="0px"){k=parseInt(k)-this._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){f=parseInt(f)-this._getBodyOffset().left+"px"}}d.stop();if(this.renderMode!=="simple"){this.host.addClass(this.toThemeProperty("jqx-dropdownlist-state-selected"));this.host.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down-selected"))}this.container.css("left",f);this.container.css("top",k);j._arrange();var e=true;var q=false;if(this.dropDownHorizontalAlignment=="right"||this.rtl){var l=this.container.outerWidth();var b=Math.abs(l-this.host.width());if(l>this.host.width()){this.container.css("left",25+parseInt(Math.round(g))-b+"px")}else{this.container.css("left",25+parseInt(Math.round(g))+b+"px")}}if(this.enableBrowserBoundsDetection){var i=this.testOffset(d,{left:parseInt(this.container.css("left")),top:parseInt(k)},parseInt(this.host.outerHeight()));if(parseInt(this.container.css("top"))!=i.top){q=true;d.css("top",23);d.addClass(this.toThemeProperty("jqx-popup-up"))}else{d.css("top",0)}this.container.css("top",i.top);if(parseInt(this.container.css("left"))!=i.left){this.container.css("left",i.left)}}if(this.animationType=="none"){this.container.css("display","block");a.data(document.body,"openedJQXListBoxParent",p);a.data(document.body,"openedJQXListBox"+this.id,d);d.css("margin-top",0);d.css("opacity",1);j._renderItems();p._raiseEvent("0",j)}else{this.container.css("display","block");p.isanimating=true;if(this.animationType=="fade"){d.css("margin-top",0);d.css("opacity",0);d.animate({opacity:1},this.openDelay,function(){a.data(document.body,"openedJQXListBoxParent",p);a.data(document.body,"openedJQXListBox"+p.id,d);p.ishiding=false;p.isanimating=false;j._renderItems();p._raiseEvent("0",j)})}else{d.css("opacity",1);var n=d.outerHeight();if(q){d.css("margin-top",n)}else{d.css("margin-top",-n)}d.animate({"margin-top":0},this.openDelay,function(){a.data(document.body,"openedJQXListBoxParent",p);a.data(document.body,"openedJQXListBox"+p.id,d);p.ishiding=false;p.isanimating=false;j._renderItems();p._raiseEvent("0",j)})}}if(!q){this.host.addClass(this.toThemeProperty("jqx-rc-b-expanded"));d.addClass(this.toThemeProperty("jqx-rc-t-expanded"))}else{this.host.addClass(this.toThemeProperty("jqx-rc-t-expanded"));d.addClass(this.toThemeProperty("jqx-rc-b-expanded"))}if(this.renderMode!=="simple"){d.addClass(this.toThemeProperty("jqx-fill-state-focus"));this.host.addClass(this.toThemeProperty("jqx-dropdownlist-state-focus"));this.host.addClass(this.toThemeProperty("jqx-fill-state-focus"))}},hideListBox:function(){a.jqx.aria(this,"aria-expanded",false);var f=this.listBoxContainer;var g=this.listBox;var c=this.container;var d=this;a.data(document.body,"openedJQXListBox"+this.id,null);if(this.animationType=="none"){this.container.css("display","none")}else{if(!d.ishiding){f.stop();var b=f.outerHeight();f.css("margin-top",0);d.isanimating=true;var e=-b;if(parseInt(this.container.coord().top)<parseInt(this.host.coord().top)){e=b}if(this.animationType=="fade"){f.css({opacity:1});f.animate({opacity:0},this.closeDelay,function(){c.css("display","none");d.isanimating=false;d.ishiding=false})}else{f.animate({"margin-top":e},this.closeDelay,function(){c.css("display","none");d.isanimating=false;d.ishiding=false})}}}this.ishiding=true;this.host.removeClass(this.toThemeProperty("jqx-dropdownlist-state-selected"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this.arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this.host.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));this.host.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this.host.removeClass(this.toThemeProperty("jqx-dropdownlist-state-focus"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this._raiseEvent("1",g)},closeOpenedListBox:function(e){var d=e.data.me;var b=a(e.target);var c=e.data.listbox;if(c==null){return true}if(a(e.target).ischildof(e.data.me.host)){return true}if(!d.isOpened()){return true}if(a(e.target).ischildof(d.listBoxContainer)){return true}var f=d;var g=false;a.each(b.parents(),function(){if(this.className!="undefined"){if(this.className.indexOf){if(this.className.indexOf("jqx-listbox")!=-1){g=true;return false}if(this.className.indexOf("jqx-dropdownlist")!=-1){if(d.element.id==this.id){g=true}return false}}}});if(c!=null&&!g&&d.isOpened()){d.hideListBox()}return true},clearFilter:function(){this.listBox.clearFilter()},loadFromSelect:function(b){this.listBox.loadFromSelect(b)},refresh:function(b){if(b!==true){this._setSize();this._arrange();if(this.listBox){this.renderSelection()}}},_arrange:function(){var h=this;var d=parseInt(h.host.width());var j=parseInt(h.host.height());var f=h.arrowSize;var g=h.arrowSize;var i=3;var b=d-g-2*i;if(b>0&&h.width!=="auto"){h.dropdownlistContent[0].style.width=b+"px"}else{if(b<=0){h.dropdownlistContent[0].style.width="0px"}}if(h.width==="auto"){h.dropdownlistContent.css("width","auto");d=h.dropdownlistContent.width()+g+2*i;h.host.width(d)}h.dropdownlistContent[0].style.height=j+"px";h.dropdownlistContent[0].style.left="0px";h.dropdownlistContent[0].style.top="0px";h.dropdownlistArrow[0].style.width=g+"px";if(h.width&&h.width.toString().indexOf("%")>=0){var e=(g*100)/d;var c=(b*100)/d;h.dropdownlistArrow[0].style.width=e+"%";h.dropdownlistContent[0].style.width=c+"%"}h.dropdownlistArrow[0].style.height=j+"px";if(h.rtl){h.dropdownlistArrow.css("float","left");h.dropdownlistContent.css("float","right")}},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBoxContainer,"unselect");this.removeHandler(this.listBoxContainer,"change");this.removeHandler(this.dropdownlistWrapper,"selectstart");this.removeHandler(this.dropdownlistWrapper,"mousedown");this.removeHandler(this.host,"keydown");this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBox.content,"click");this.removeHandler(this.listBoxContainer,"bindingComplete");if(this.host.parents()){this.removeHandler(this.host.parents(),"scroll.dropdownlist"+this.element.id)}this.removeHandlers();this.listBoxContainer.jqxListBox("destroy");this.listBoxContainer.remove();this.host.removeClass();this.removeHandler(a(document),"mousedown."+this.id,this.closeOpenedListBox);if(this.touch){this.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id)}this.dropdownlistArrow.remove();delete this.dropdownlistArrow;delete this.dropdownlistWrapper;delete this.listBoxContainer;delete this.input;delete this.arrow;delete this.dropdownlistContent;delete this.listBox;delete this._firstDiv;this.container.remove();delete this.container;var b=a.data(this.element,"jqxDropDownList");if(b){delete b.instance}this.host.removeData();this.host.remove();delete this.comboStructure;delete this.host;delete this.element},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);e.owner=this;if(f==2||f==3||f==4||f==5){e.args=c}var b=this.host.trigger(e);return b},propertyChangedHandler:function(b,c,f,e){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="filterable"){b.listBoxContainer.jqxListBox({filterable:e})}if(c=="filterHeight"){b.listBoxContainer.jqxListBox({filterHeight:e})}if(c=="filterPlaceHolder"){b.listBoxContainer.jqxListBox({filterPlaceHolder:e})}if(c=="filterDelay"){b.listBoxContainer.jqxListBox({filterDelay:e})}if(c=="enableSelection"){b.listBoxContainer.jqxListBox({enableSelection:e})}if(c=="enableHover"){b.listBoxContainer.jqxListBox({enableHover:e})}if(c=="autoOpen"){b._updateHandlers()}if(c=="emptyString"){b.listBox.emptyString=b.emptyString}if(c=="itemHeight"){b.listBoxContainer.jqxListBox({itemHeight:e})}if(c=="renderer"){b.listBoxContainer.jqxListBox({renderer:e})}if(c=="rtl"){if(e){b.dropdownlistArrow.css("float","left");b.dropdownlistContent.css("float","right")}else{b.dropdownlistArrow.css("float","right");b.dropdownlistContent.css("float","left")}b.listBoxContainer.jqxListBox({rtl:b.rtl})}if(c=="source"){b.listBoxContainer.jqxListBox({source:b.source});b.listBox.selectedIndex=-1;b.listBox.selectIndex(this.selectedIndex);b.renderSelection();if(e==null){b.clear()}}if(c=="displayMember"||c=="valueMember"){b.listBoxContainer.jqxListBox({displayMember:b.displayMember,valueMember:b.valueMember});b.renderSelection()}if(c=="placeHolder"){b.renderSelection()}if(c=="theme"&&e!=null){b.listBoxContainer.jqxListBox({theme:e});b.listBoxContainer.addClass(b.toThemeProperty("jqx-popup"));a.jqx.utilities.setTheme(f,e,b.host)}if(c=="autoDropDownHeight"){b.listBoxContainer.jqxListBox({autoHeight:b.autoDropDownHeight});if(b.autoDropDownHeight){b.container.height(b.listBoxContainer.height()+25)}else{b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}b.listBox._arrange();b.listBox._updatescrollbars()}if(c=="searchMode"){b.listBoxContainer.jqxListBox({searchMode:b.searchMode})}if(c=="incrementalSearch"){b.listBoxContainer.jqxListBox({incrementalSearch:b.incrementalSearch})}if(c=="incrementalSearchDelay"){b.listBoxContainer.jqxListBox({incrementalSearchDelay:b.incrementalSearchDelay})}if(c=="dropDownHeight"){if(!b.autoDropDownHeight){b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}}if(c=="dropDownWidth"||c=="scrollBarSize"){var d=b.width;if(b.dropDownWidth!="auto"){d=b.dropDownWidth}b.listBoxContainer.jqxListBox({width:d,scrollBarSize:b.scrollBarSize});b.container.width(parseInt(d)+25)}if(c=="width"||c=="height"){if(e!=f){this.refresh();if(c=="width"){if(b.dropDownWidth=="auto"){var d=b.host.width();b.listBoxContainer.jqxListBox({width:d});b.container.width(parseInt(d)+25)}}}}if(c=="checkboxes"){b.listBoxContainer.jqxListBox({checkboxes:b.checkboxes})}if(c=="selectedIndex"){if(b.listBox!=null){b.listBox.selectIndex(parseInt(e));b.renderSelection()}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxWindow","",{});a.extend(a.jqx._jqxWindow.prototype,{defineInstance:function(){var e={height:"auto",width:200,minHeight:50,maxHeight:600,minWidth:50,maxWidth:800,showCloseButton:true,disabled:false,autoOpen:true,keyboardCloseKey:"esc",title:"",content:"",draggable:true,resizable:true,animationType:"fade",closeAnimationDuration:250,showAnimationDuration:250,isModal:false,position:"center",closeButtonSize:16,closeButtonAction:"hide",modalOpacity:0.3,dragArea:null,okButton:null,cancelButton:null,dialogResult:{OK:false,Cancel:false,None:true},collapsed:false,showCollapseButton:false,collapseAnimationDuration:150,collapseButtonSize:16,rtl:false,keyboardNavigation:true,headerHeight:null,_events:["created","closed","moving","moved","open","collapse","expand","open","close","resize"],initContent:null,enableResize:true,restricter:null,autoFocus:true,closing:null,_invalidArgumentExceptions:{invalidHeight:"Invalid height!",invalidWidth:"Invalid width!",invalidMinHeight:"Invalid minHeight!",invalidMaxHeight:"Invalid maxHeight!",invalidMinWidth:"Invalid minWidth!",invalidMaxWidth:"Invalid maxWidth",invalidKeyCode:"Invalid keyCode!",invalidAnimationType:"Invalid animationType!",invalidCloseAnimationDuration:"Invalid closeAnimationDuration!",invalidShowAnimationDuration:"Invalid showAnimationDuration!",invalidPosition:"Invalid position!",invalidCloseButtonSize:"Invalid closeButtonSize!",invalidCollapseButtonSize:"Invalid collapseButtonSize!",invalidCloseButtonAction:"Invalid cluseButtonAction!",invalidModalOpacity:"Invalid modalOpacity!",invalidDragArea:"Invalid dragArea!",invalidDialogResult:"Invalid dialogResult!",invalidIsModal:"You can have just one modal window!"},_enableResizeCollapseBackup:null,_enableResizeBackup:undefined,_heightBeforeCollapse:null,_minHeightBeforeCollapse:null,_mouseDown:false,_isDragging:false,_rightContentWrapper:null,_leftContentWrapper:null,_headerContentWrapper:null,_closeButton:null,_collapseButton:null,_title:null,_content:null,_mousePosition:{},_windowPosition:{},_modalBackground:null,_SCROLL_WIDTH:21,_visible:true,modalBackgroundZIndex:12990,modalZIndex:18000,zIndex:9001,_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave",click:a.jqx.mobile.getTouchEventName("touchstart")}};a.extend(true,this,e);return e},createInstance:function(){this.host.attr("role","dialog");this.host.removeAttr("data-bind");this.host.detach();a(document.body).append(this.host);var f=this;var g=function(){var i=parseInt(a(f.restricter).css("padding-top"));var h=parseInt(a(f.restricter).css("padding-left"));var k=parseInt(a(f.restricter).css("padding-bottom"));var m=parseInt(a(f.restricter).css("padding-right"));var l=a(f.restricter).coord();f.dragArea={left:h+l.left,top:i+l.top,width:1+m+a(f.restricter).width(),height:1+k+a(f.restricter).height()}};if(this.restricter){g()}if(this.restricter){this.addHandler(a(window),"resize."+this.element.id,function(){g()});this.addHandler(a(window),"orientationchanged."+this.element.id,function(){g()});this.addHandler(a(window),"orientationchange."+this.element.id,function(){g()})}this._isTouchDevice=a.jqx.mobile.isTouchDevice();this._validateProperties();this._createStructure();this._refresh();if(!this.autoOpen){this.host.css("display","none")}if(a.jqx.browser.msie){this.host.addClass(this.toThemeProperty("jqx-noshadow"))}if(!this.isModal){this._fixWindowZIndex()}this._setStartupSettings();this._positionWindow();this._raiseEvent(0);if(this.autoOpen){this._performLayout();var e=this;if(this.isModal){this._fixWindowZIndex("modal-show")}if(e.initContent){e.initContent();e._contentInitialized=true}this._raiseEvent(7);this._raiseEvent(9)}},refresh:function(){this._performLayout()},_setStartupSettings:function(){if(this.disabled){this.disable()}if(this.collapsed){this.collapsed=false;this.collapse(0)}if(!this.autoOpen){this.hide(null,0.001,true);this._visible=false}if(this.title!==null&&this.title!==""){this.setTitle(this.title)}if(this.content!==null&&this.content!==""){this.setContent(this.content)}this.title=this._headerContentWrapper.html();this.content=this._content.html()},_fixWindowZIndex:function(m){var e=a.data(document.body,"jqxwindows-list")||[],n=this.zIndex,h;if(!this.isModal){if(this._indexOf(this.host,e)<0){e.push(this.host)}a.data(document.body,"jqxwindows-list",e);if(e.length>1){var f=e[e.length-2];n=parseInt(f.css("z-index"),10)+1}}else{if(e){e=this._removeFromArray(this.host,e);a.data(document.body,"jqxwindows-list",e)}var g=a.data(document.body,"jqxwindows-modallist");if(!g){if(m=="modal-show"){var k=new Array();k.push(this.host);a.data(document.body,"jqxwindows-modallist",k);g=k}else{a.data(document.body,"jqxwindows-modallist",new Array());g=new Array()}}else{if(m=="modal-show"){g.push(this.host)}else{var i=g.indexOf(this.host);if(i!=-1){g.splice(i,1)}}}n=this.modalZIndex;var l=this;a.each(g,function(q){if(this.data()){if(this.data().jqxWindow){var o=this.data().jqxWindow.instance;o._modalBackground.css("z-index",n);o.host.css("z-index",n+1);n+=2}}});a.data(document.body,"jqxwindow-modal",this.host);return}this.host.css("z-index",n);this._sortByStyle("z-index",e)},_validateProperties:function(){try{this._validateSize();this._validateAnimationProperties();this._validateInteractionProperties();this._validateModalProperties();if(!this.position){throw new Error(this._invalidArgumentExceptions.invalidPosition)}if(isNaN(this.closeButtonSize)||parseInt(this.closeButtonSize)<0){throw new Error(this._invalidArgumentExceptions.invalidCloseButtonSize)}if(isNaN(this.collapseButtonSize)||parseInt(this.collapseButtonSize)<0){throw new Error(this._invalidArgumentExceptions.invalidCollapseButtonSize)}}catch(e){alert(e)}},_validateModalProperties:function(){if(this.modalOpacity<0||this.modalOpacity>1){throw new Error(this._invalidArgumentExceptions.invalidModalOpacity)}if(this.isModal&&!this._singleModalCheck()){throw new Error(this._invalidArgumentExceptions.invalidIsModal)}},_validateSize:function(){this._validateSizeLimits();if(this.height!=="auto"&&isNaN(parseInt(this.height))){throw new Error(this._invalidArgumentExceptions.invalidHeight)}if(this.width!=="auto"&&isNaN(parseInt(this.width))){throw new Error(this._invalidArgumentExceptions.invalidWidth)}if(this.height!=="auto"&&this.height<this.minHeight){this.height=this.minHeight}if(this.width<this.minWidth){this.width=this.minWidth}if(this.height!=="auto"&&this.height>this.maxHeight){this.height=this.maxHeight}if(this.width>this.maxWidth){this.width=this.maxWidth}if(this.dragArea===null){return}if(this.dragArea&&((this.dragArea.height!==null&&this.host.height()>this.dragArea.height)||(parseInt(this.height,10)>this.dragArea.height))||(this.dragArea.width!==null&&this.width>this.dragArea.width)||(this.maxHeight>this.dragArea.height||this.maxWidth>this.dragArea.width)){}},_validateSizeLimits:function(){if(this.maxHeight==null){this.maxHeight=9999}if(this.minWidth==null){this.minWidth=0}if(this.maxWidth==null){this.maxWidth=9999}if(this.minHeight==null){this.minHeight=0}if(isNaN(parseInt(this.minHeight))){throw new Error(this._invalidArgumentExceptions.invalidMinHeight)}if(isNaN(parseInt(this.maxHeight))){throw new Error(this._invalidArgumentExceptions.invalidMaxHeight)}if(isNaN(parseInt(this.minWidth))){throw new Error(this._invalidArgumentExceptions.invalidMinWidth)}if(isNaN(parseInt(this.maxWidth))){throw new Error(this._invalidArgumentExceptions.invalidMaxWidth)}if(this.minHeight>this.maxHeight){throw new Error(this._invalidArgumentExceptions.invalidMinHeight)}if(this.minWidth>this.maxWidth){throw new Error(this._invalidArgumentExceptions.invalidMinWidth)}},_validateAnimationProperties:function(){if(this.animationType!=="fade"&&this.animationType!=="slide"&&this.animationType!=="combined"&&this.animationType!=="none"){throw new Error(this._invalidArgumentExceptions.invalidAnimationType)}if(isNaN(parseInt(this.closeAnimationDuration),10)||this.closeAnimationDuration<0){throw new Error(this._invalidArgumentExceptions.invalidCloseAnimationDuration)}if(isNaN(parseInt(this.showAnimationDuration),10)||this.showAnimationDuration<0){throw new Error(this._invalidArgumentExceptions.invalidShowAnimationDuration)}},_validateInteractionProperties:function(){if(parseInt(this.keyCode,10)<0||parseInt(this.keyCode,10)>130&&this.keyCode!=="esc"){throw new Error(this._invalidArgumentExceptions.invalidKeyCode)}if(this.dragArea!==null&&(typeof this.dragArea.width==="undefined"||typeof this.dragArea.height==="undefined"||typeof this.dragArea.left==="undefined"||typeof this.dragArea.top==="undefined")){throw new Error(this._invalidArgumentExceptions.invalidDragArea)}if(!this.dialogResult||(!this.dialogResult.OK&&!this.dialogResult.Cancel&&!this.dialogResult.None)){throw new Error(this._invalidArgumentExceptions.invalidDialogResult)}if(this.closeButtonAction!=="hide"&&this.closeButtonAction!=="close"){throw new Error(this._invalidArgumentExceptions.invalidCloseButtonAction)}},_singleModalCheck:function(){var e=a.data(document.body,"jqxwindows-list")||[],f=e.length;while(f){f-=1;if(a(e[f].attr("id")).length>0){if(a(e[f].attr("id")).jqxWindow("isModal")){return false}}}return true},_createStructure:function(){var e=this.host.children("DIV");if(e.length===1){this._header=a("<div>"+this.host.attr("caption")+"</div>");this.host.prepend(this._header);this.host.attr("caption","");this._content=a(e[0])}else{if(e.length===2){this._header=a(e[0]);this._content=a(e[1])}else{throw new Error("Invalid structure!")}}},_refresh:function(){this._render();this._addStyles();this._performLayout();this._removeEventHandlers();this._addEventHandlers();this._initializeResize()},_render:function(){this._addHeaderWrapper();this._addCloseButton();this._addCollapseButton();this._removeModal();this._makeModal()},_addHeaderWrapper:function(){if(!this._headerContentWrapper){this._header.wrapInner('<div style="float:left;"></div>');this._headerContentWrapper=this._header.children(0);if(this.headerHeight!==null){this._header.height(this.headerHeight)}}},_addCloseButton:function(){if(!this._closeButton){this._closeButtonWrapper=a('<div class="'+this.toThemeProperty("jqx-window-close-button-background")+'"></div>');this._closeButton=a('<div style="width: 100%; height: 100%;" class="'+this.toThemeProperty("jqx-window-close-button")+" "+this.toThemeProperty("jqx-icon-close")+'"></div>');this._closeButtonWrapper.append(this._closeButton);this._header.append(this._closeButtonWrapper)}},_addCollapseButton:function(){if(!this._collapseButton){this._collapseButtonWrapper=a('<div class="'+this.toThemeProperty("jqx-window-collapse-button-background")+'"></div>');this._collapseButton=a('<div style="width: 100%; height: 100%;" class="'+this.toThemeProperty("jqx-window-collapse-button")+" "+this.toThemeProperty("jqx-icon-arrow-up")+'"></div>');this._collapseButtonWrapper.append(this._collapseButton);this._header.append(this._collapseButtonWrapper)}},_removeModal:function(){if(!this.isModal&&typeof this._modalBackground==="object"&&this._modalBackground!==null&&this._modalBackground.length>=1){a("."+this.toThemeProperty("jqx-window-modal")).remove();this._modalBackground=null}},focus:function(){try{this.host.focus();var f=this;setTimeout(function(){f.host.focus()},10)}catch(e){}},_makeModal:function(){if(this.isModal&&(!this._modalBackground||this._modalBackground.length<1)){var g=a.data(document.body,"jqxwindows-list");if(g){this._removeFromArray(this.host,g);a.data(document.body,"jqxwindows-list",g)}this._modalBackground=a("<div></div>");this._modalBackground.addClass(this.toThemeProperty("jqx-window-modal"));this._setModalBackgroundStyles();a(document.body).append(this._modalBackground);this.addHandler(this._modalBackground,this._getEvent("click"),function(){return false});var f=this;var e=function(i,k){var h=a(i).parents().get();for(j=0;j<h.length;j++){if(a(h[j]).is(k)){return true}}return false};this.addHandler(this._modalBackground,"mouseup",function(h){f._stopResizing(f);h.preventDefault()});this.addHandler(this._modalBackground,"mousedown",function(i){var h=f._getTabbables();if(h.length>0){h[0].focus(1);setTimeout(function(){h[0].focus(1)},100)}i.preventDefault();return false});this.addHandler(a(document),"keydown.window"+this.element.id,function(l){if(l.keyCode!==9){return}var h=a.data(document.body,"jqxwindows-modallist");if(h.length>1){if(h[h.length-1][0]!=f.element){return}}var k=f._getTabbables();var m=null;var i=null;if(k.length>0){m=k[0];i=k[k.length-1]}if(l.target==f.element){return}if(m==null){return}if(!e(l.target,f.host)){m.focus(1);return false}if(l.target===i&&!l.shiftKey){m.focus(1);return false}else{if(l.target===m&&l.shiftKey){i.focus(1);return false}}})}},_addStyles:function(){this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.host.addClass(this.toThemeProperty("jqx-window"));this.host.addClass(this.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){this.host.addClass(this.toThemeProperty("jqx-noshadow"))}this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this._header.addClass(this.toThemeProperty("jqx-window-header"));this._content.addClass(this.toThemeProperty("jqx-window-content"));this._header.addClass(this.toThemeProperty("jqx-widget-header"));this._content.addClass(this.toThemeProperty("jqx-widget-content"));this._header.addClass(this.toThemeProperty("jqx-disableselect"));this._header.addClass(this.toThemeProperty("jqx-rc-t"));this._content.addClass(this.toThemeProperty("jqx-rc-b"));if(!this.host.attr("tabindex")){this.element.tabIndex=0;this.host.children().css("tab-index",0)}this.host.attr("hideFocus","true").css("outline","none")},_performHeaderLayout:function(){this._handleHeaderButtons();this._header.css("position","relative");if(this.rtl){this._headerContentWrapper.css("direction","rtl");this._headerContentWrapper.css("float","right")}else{this._headerContentWrapper.css("direction","ltr");this._headerContentWrapper.css("float","left")}this._performHeaderCloseButtonLayout();this._performHeaderCollapseButtonLayout();this._centerElement(this._headerContentWrapper,this._header,"y","margin");if(this.headerHeight){this._centerElement(this._closeButtonWrapper,this._header,"y","margin");this._centerElement(this._collapseButtonWrapper,this._header,"y","margin")}},_handleHeaderButtons:function(){if(!this._closeButtonWrapper){return}if(!this.showCloseButton){this._closeButtonWrapper.css("visibility","hidden")}else{this._closeButtonWrapper.css("visibility","visible");this._closeButtonWrapper.width(this.closeButtonSize);this._closeButtonWrapper.height(this.closeButtonSize)}if(!this.showCollapseButton){this._collapseButtonWrapper.css("visibility","hidden")}else{this._collapseButtonWrapper.css("visibility","visible");this._collapseButtonWrapper.width(this.collapseButtonSize);this._collapseButtonWrapper.height(this.collapseButtonSize)}},_performHeaderCloseButtonLayout:function(){if(!this._closeButtonWrapper){return}var e=parseInt(this._header.css("padding-right"),10);if(!isNaN(e)){this._closeButtonWrapper.width(this._closeButton.width());if(!this.rtl){this._closeButtonWrapper.css("margin-right",e);this._closeButtonWrapper.css("margin-left","0px")}else{this._closeButtonWrapper.css("margin-left",e);this._closeButtonWrapper.css("margin-right","0px")}}if(!this.rtl){this._closeButtonWrapper.css({position:"absolute",right:"0px",left:""})}else{this._closeButtonWrapper.css({position:"absolute",left:"0px",right:""})}},_performHeaderCollapseButtonLayout:function(){if(!this._closeButtonWrapper){return}var e=parseInt(this._header.css("padding-right"),10);if(!isNaN(e)){this._collapseButtonWrapper.width(this.collapseButtonSize);this._collapseButtonWrapper.height(this.collapseButtonSize);if(!this.rtl){this._collapseButtonWrapper.css("margin-right",e);this._collapseButtonWrapper.css("margin-left","0px")}else{this._collapseButtonWrapper.css("margin-left",e);this._collapseButtonWrapper.css("margin-right","0px")}}if(!this.rtl){this._collapseButtonWrapper.css({position:"absolute",right:(this.showCloseButton)?this._closeButton.outerWidth(true):0,left:""})}else{this._collapseButtonWrapper.css({position:"absolute",left:(this.showCloseButton)?this._closeButton.outerWidth(true):0,right:""})}this._centerElement(this._collapseButton,this._collapseButton.parent(),"y")},_performWidgetLayout:function(){var e;if(this.width!=="auto"){this.host.css("width",this.width)}if(!this.collapsed){if(this.height!=="auto"){this.host.height(this.height)}else{this.host.height(this.host.height())}this.host.css("min-height",this.minHeight)}this._setChildrenLayout();e=this._validateMinSize();this.host.css({"max-height":this.maxHeight,"min-width":this.minWidth,"max-width":this.maxWidth});if(!e){this._setChildrenLayout()}},_setChildrenLayout:function(){this._header.width(this.host.width()-(this._header.outerWidth(true)-this._header.width()));this._content.width(this.host.width()-(this._content.outerWidth(true)-this._content.width()));this._content.height(this.host.height()-this._header.outerHeight(true)-(this._content.outerHeight(true)-this._content.height()))},_validateMinSize:function(){var f=true;if(this.minHeight<this._header.height()){this.minHeight=this._header.height();f=false}var h=this._header.children(0).outerWidth(true),e=this._header.children(1).outerWidth(true),g=h+e;if(this.minWidth<100){this.minWidth=Math.min(g,100);f=false}return f},_centerElement:function(h,f,e,g){if(typeof f.left==="number"&&typeof f.top==="number"&&typeof f.height==="number"&&typeof f.width==="number"){this._centerElementInArea(h,f,e)}else{this._centerElementInParent(h,f,e,g)}},_centerElementInParent:function(e,m,h,f){h=h.toLowerCase();if(f){f+="-"}else{f=""}if(h.indexOf("y")>=0){var g=e.outerHeight(true),k=m.height(),i=(Math.max(0,k-g))/2;e.css(f+"top",i+"px")}if(h.indexOf("x")>=0){var o=e.outerWidth(true);var n=m.width();var l=(Math.max(0,n-o))/2;e.css(f+"left",l+"px")}},_centerElementInArea:function(f,e,h){h=h.toLowerCase();if(h.indexOf("y")>=0){var g=f.outerHeight(true);var k=e.height;var i=(k-g)/2;f.css("top",i+e.top+"px")}if(h.indexOf("x")>=0){var n=f.outerWidth(true);var m=e.width;var l=(m-n)/2;f.css("left",l+e.left+"px")}},_removeEventHandlers:function(){this.removeHandler(this._header,this._getEvent("mousedown"));this.removeHandler(this._header,this._getEvent("mousemove"));this.removeHandler(this._header,"focus");this.removeHandler(a(document),this._getEvent("mousemove")+"."+this.host.attr("id"));this.removeHandler(a(document),this._getEvent("mouseup")+"."+this.host.attr("id"));this.removeHandler(this.host,"keydown");this.removeHandler(this._closeButton,this._getEvent("click"));this.removeHandler(this._closeButton,this._getEvent("mouseenter"));this.removeHandler(this._closeButton,this._getEvent("mouseleave"));this.removeHandler(this._collapseButton,this._getEvent("click"));this.removeHandler(this._collapseButton,this._getEvent("mouseenter"));this.removeHandler(this._collapseButton,this._getEvent("mouseleave"));this.removeHandler(this.host,this._getEvent("mousedown"));this.removeHandler(a(this.okButton),this._getEvent("click"),this._setDialogResultHandler);this.removeHandler(a(this.cancelButton),this._getEvent("click"),this._setDialogResultHandler);this.removeHandler(this._header,this._getEvent("mouseenter"));this.removeHandler(this._header,this._getEvent("mouseleave"));this.removeHandler(this.host,"resizing",this._windowResizeHandler)},_removeFromArray:function(e,g){var f=this._indexOf(e,g);if(f>=0){return g.splice(this._indexOf(e,g),1)}else{return g}},_sortByStyle:function(e,l){for(var h=0;h<l.length;h++){for(var f=l.length-1;f>h;f--){var m=l[f],k=l[f-1],g;if(parseInt(m.css(e),10)<parseInt(k.css(e),10)){g=m;l[f]=k;l[f-1]=g}}}},_initializeResize:function(){if(this.resizable){var e=this;this.initResize({target:this.host,alsoResize:e._content,maxWidth:e.maxWidth,minWidth:e.minWidth,maxHeight:e.maxHeight,minHeight:e.minHeight,indicatorSize:10,resizeParent:e.dragArea})}},_removeResize:function(){this.removeResize()},_getEvent:function(e){if(this._isTouchDevice){return this._touchEvents[e]}else{return e}},_addEventHandlers:function(){this._addDragDropHandlers();this._addCloseHandlers();this._addCollapseHandlers();this._addFocusHandlers();this._documentResizeHandlers();this._closeButtonHover();this._collapseButtonHover();this._addDialogButtonsHandlers();this._addHeaderHoverEffect();this._addResizeHandlers();var e=this;this.addHandler(this._header,this._getEvent("mousemove"),function(f){e._addHeaderCursorHandlers(e)})},_addResizeHandlers:function(){var e=this;this.addHandler(this.host,"resizing",this._windowResizeHandler,{self:this})},_windowResizeHandler:function(f){var e=f.data.self;e._header.width(e.host.width()-(e._header.outerWidth(true)-e._header.width()));e.width=f.args.width;e.height=f.args.height},_addHeaderHoverEffect:function(){var e=this;this.addHandler(this._header,this._getEvent("mouseenter"),function(){a(this).addClass(e.toThemeProperty("jqx-window-header-hover"))});this.addHandler(this._header,this._getEvent("mouseleave"),function(){a(this).removeClass(e.toThemeProperty("jqx-window-header-hover"))})},_addDialogButtonsHandlers:function(){if(this.okButton){this.addHandler(a(this.okButton),this._getEvent("click"),this._setDialogResultHandler,{self:this,result:"ok"})}if(this.cancelButton){this.addHandler(a(this.cancelButton),this._getEvent("click"),this._setDialogResultHandler,{self:this,result:"cancel"})}},_documentResizeHandlers:function(){var e=this;if(this.isModal){this.addHandler(a(window),"resize.window"+this.element.id,function(){if(typeof e._modalBackground==="object"&&e._modalBackground!==null){if(e.isOpen()){e._modalBackground.hide()}if(!e.restricter){e._modalBackground.width(e._getDocumentSize().width);e._modalBackground.height(e._getDocumentSize().height)}else{e._modalBackground.css("left",e.dragArea.left);e._modalBackground.css("top",e.dragArea.top);e._modalBackground.width(e.dragArea.width);e._modalBackground.height(e.dragArea.height)}if(e.isOpen()){e._modalBackground.show()}}})}},_setDialogResultHandler:function(f){var e=f.data.self;e._setDialogResult(f.data.result);e.closeWindow()},_setDialogResult:function(e){this.dialogResult.OK=false;this.dialogResult.None=false;this.dialogResult.Cancel=false;e=e.toLowerCase();switch(e){case"ok":this.dialogResult.OK=true;break;case"cancel":this.dialogResult.Cancel=true;break;default:this.dialogResult.None=true}},_getDocumentSize:function(){var e=a.jqx.browser.msie&&a.jqx.browser.version<9;var f=e?4:0;var g=f;if(document.body.scrollHeight>document.body.clientHeight&&e){f=this._SCROLL_WIDTH}if(document.body.scrollWidth>document.body.clientWidth&&e){g=this._SCROLL_WIDTH}return{width:a(document).width()-f,height:a(document).height()-g}},_closeButtonHover:function(){var e=this;this.addHandler(this._closeButton,this._getEvent("mouseenter"),function(){e._closeButton.addClass(e.toThemeProperty("jqx-window-close-button-hover"))});this.addHandler(this._closeButton,this._getEvent("mouseleave"),function(){e._closeButton.removeClass(e.toThemeProperty("jqx-window-close-button-hover"))})},_collapseButtonHover:function(){var e=this;this.addHandler(this._collapseButton,this._getEvent("mouseenter"),function(){e._collapseButton.addClass(e.toThemeProperty("jqx-window-collapse-button-hover"))});this.addHandler(this._collapseButton,this._getEvent("mouseleave"),function(){e._collapseButton.removeClass(e.toThemeProperty("jqx-window-collapse-button-hover"))})},_setModalBackgroundStyles:function(){if(this.isModal){this._modalBackground.fadeTo(0,this.modalOpacity);this._modalBackground.css({position:"absolute",top:"0px",left:"0px",width:this._getDocumentSize().width,height:this._getDocumentSize().height,"z-index":this.modalBackgroundZIndex});if(!this.autoOpen){this._modalBackground.css("display","none")}}},_addFocusHandlers:function(){var e=this;this.addHandler(this.host,this._getEvent("mousedown"),function(){if(!e.isModal){e.bringToFront()}})},_indexOf:function(f,g){for(var e=0;e<g.length;e++){if(g[e][0]===f[0]){return e}}return -1},_addCloseHandlers:function(){var e=this;this.addHandler(this._closeButton,this._getEvent("click"),function(f){return e._closeWindow(f)});if(this.keyboardCloseKey!=="none"){if(typeof this.keyboardCloseKey!=="number"&&this.keyboardCloseKey.toLowerCase()==="esc"){this.keyboardCloseKey=27}}this.addHandler(this.host,"keydown",function(f){if(f.keyCode===e.keyboardCloseKey&&e.keyboardCloseKey!=null&&e.keyboardCloseKey!="none"){e._closeWindow(f)}else{e._handleKeys(f)}},{self:this});this.addHandler(this.host,"keyup",function(f){if(!e.keyboardNavigation){return}if(e._moved){var i=e.host.coord();var h=i.left;var g=i.top;e._raiseEvent(3,h,g,h,g);e._moved=false}})},_handleKeys:function(f){if(!this.keyboardNavigation){return}if(!this._headerFocused){return}if(a(document.activeElement).ischildof(this._content)){return}var e=f.ctrlKey;var n=f.keyCode;var l=this.host.coord();var k=l.left;var m=l.top;var g=this._getDraggingArea();var h=this.host.width();var o=this.host.height();var p=true;var i=10;switch(n){case 37:if(!e){if(this.draggable){if(k-i>=0){this.move(k-i,m)}}}else{if(this.resizable){this.resize(h-i,o)}}p=false;break;case 38:if(!e){if(this.draggable){if(m-i>=0){this.move(k,m-i)}}}else{if(this.resizable){this.resize(h,o-i)}}p=false;break;case 39:if(!e){if(this.draggable){if(k+h+i<=g.width){this.move(k+i,m)}}}else{if(this.resizable){this.resize(h+i,o)}}p=false;break;case 40:if(!e){if(this.draggable){if(m+o+i<=g.height){this.move(k,m+i)}}}else{if(this.resizable){this.resize(h,o+i)}}p=false;break}if(!p){if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}}return p},_addCollapseHandlers:function(){var e=this;this.addHandler(this._collapseButton,this._getEvent("click"),function(){if(!e.collapsed){e.collapse()}else{e.expand()}})},_closeWindow:function(e){this.closeWindow();return false},_addHeaderCursorHandlers:function(e){if(e.resizeArea&&e.resizable&&!e.collapsed){e._header.css("cursor",e._resizeWrapper.css("cursor"));return}else{if(e.draggable){e._header.css("cursor","move");return}}e._header.css("cursor","default");if(e._resizeWrapper&&e._resizeWrapper.length>0){e._resizeWrapper.css("cursor","default")}},_addDragDropHandlers:function(){if(this.draggable){var e=this;this.addHandler(this.host,"focus",function(){e._headerFocused=true});this.addHandler(this.host,"blur",function(){e._headerFocused=false});this.addHandler(this._header,"focus",function(){e._headerFocused=true;return false});this.addHandler(this._header,this._getEvent("mousedown"),function(k,i,l){if(i){k.pageX=i}if(l){k.pageY=l}e._headerMouseDownHandler(e,k);return true});this.addHandler(this._header,"dragstart",function(i){if(i.preventDefault){i.preventDefault()}return false});this.addHandler(this._header,this._getEvent("mousemove"),function(i){return e._headerMouseMoveHandler(e,i)});this.addHandler(a(document),this._getEvent("mousemove")+"."+this.host.attr("id"),function(i){return e._dragHandler(e,i)});this.addHandler(a(document),this._getEvent("mouseup")+"."+this.host.attr("id"),function(i){return e._dropHandler(e,i)});try{if(document.referrer!=""||window.frameElement){var h=null;if(window.top!=null&&window.top!=window.self){if(window.parent&&document.referrer){h=document.referrer}}if(h&&h.indexOf(document.location.host)!=-1){var g=function(i){e._dropHandler(e,i)};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}catch(f){}}},_headerMouseDownHandler:function(f,g){if(!f.isModal){f.bringToFront()}if(f._resizeDirection==null){var h=a.jqx.mobile.getTouches(g);var i=h[0];var e=a.jqx.position(g);f._mousePosition.x=e.left;f._mousePosition.y=e.top;f._mouseDown=true;f._isDragging=false}},_headerMouseMoveHandler:function(f,i){if(f._mouseDown&&!f._isDragging){var k=a.jqx.mobile.getTouches(i);var l=k[0];var h=l.pageX,g=l.pageY;var e=a.jqx.position(i);h=e.left;g=e.top;if((h+3<f._mousePosition.x||h-3>f._mousePosition.x)||(g+3<f._mousePosition.y||g-3>f._mousePosition.y)){f._isDragging=true;f._mousePosition={x:h,y:g};f._windowPosition={x:f.host.coord().left,y:f.host.coord().top};a(document.body).addClass(f.toThemeProperty("jqx-disableselect"))}if(f._isTouchDevice){i.preventDefault();return true}return false}if(f._isDragging){if(f._isTouchDevice){i.preventDefault();return true}return false}return true},_dropHandler:function(g,k){var f=true;if(g._isDragging&&!g.isResizing&&!g._resizeDirection){var e=parseInt(g.host.css("left"),10),l=parseInt(g.host.css("top"),10),i=(g._isTouchDevice)?0:k.pageX,h=(g._isTouchDevice)?0:k.pageY;g.enableResize=g._enableResizeBackup;g._enableResizeBackup="undefined";g._raiseEvent(3,e,l,i,h);f=false;if(k.preventDefault!="undefined"){k.preventDefault()}if(k.originalEvent!=null){k.originalEvent.mouseHandled=true}if(k.stopPropagation!="undefined"){k.stopPropagation()}}g._isDragging=false;g._mouseDown=false;a(document.body).removeClass(g.toThemeProperty("jqx-disableselect"));return f},_dragHandler:function(p,h){if(p._isDragging&&!p.isResizing&&!p._resizeDirection){var o=(p._isTouchDevice)?h.originalEvent.which:h.which;if(typeof p._enableResizeBackup==="undefined"){p._enableResizeBackup=p.enableResize}p.enableResize=false;if(o===0&&a.jqx.browser.msie&&a.jqx.browser.version<8){return p._dropHandler(p,h)}var m=a.jqx.mobile.getTouches(h);var l=m[0];var n=a.jqx.position(h);var k=n.left,i=n.top,g=k-p._mousePosition.x,f=i-p._mousePosition.y,e=p._windowPosition.x+g,q=p._windowPosition.y+f;p.move(e,q,h);h.preventDefault();return false}return true},_validateCoordinates:function(e,l,i,k){var h=this._getDraggingArea();e=(e<h.left)?h.left:e;l=(l<h.top)?h.top:l;var f=this.host.outerWidth(true);var g=this.host.outerHeight(true);if(e+f>=h.width+h.left-2*k){e=h.width+h.left-f-k}if(l+g>=h.height+h.top-i){l=h.height+h.top-g-i}return{x:e,y:l}},_performLayout:function(){this._performHeaderLayout();this._performWidgetLayout()},_parseDragAreaAttributes:function(){if(this.dragArea!==null){this.dragArea.height=parseInt(this.dragArea.height,10);this.dragArea.width=parseInt(this.dragArea.width,10);this.dragArea.top=parseInt(this.dragArea.top,10);this.dragArea.left=parseInt(this.dragArea.left,10)}},_positionWindow:function(){this._parseDragAreaAttributes();if(this.position instanceof Array&&this.position.length===2&&typeof this.position[0]==="number"&&typeof this.position[1]==="number"){this.host.css({left:this.position[0],top:this.position[1]})}else{if(this.position instanceof Object){if(this.position.left){this.host.offset(this.position)}else{if(this.position.x!==undefined&&this.position.y!=undefined){this.host.css({left:this.position.x,top:this.position.y})}else{if(this.position.center){this._centerElement(this.host,this.position.center,"xy");var g=this.position.center.coord();var f=parseInt(this.host.css("left"));var e=parseInt(this.host.css("top"));this.host.css({left:f+g.left,top:e+g.top})}}}}else{this._positionFromLiteral()}}},_getDraggingArea:function(){var e={};e.left=((this.dragArea&&this.dragArea.left)?this.dragArea.left:0);e.top=((this.dragArea&&this.dragArea.top)?this.dragArea.top:0);e.width=((this.dragArea&&this.dragArea.width)?this.dragArea.width:this._getDocumentSize().width);e.height=((this.dragArea&&this.dragArea.height)?this.dragArea.height:this._getDocumentSize().height);return e},_positionFromLiteral:function(){if(!(this.position instanceof Array)){this.position=this.position.split(",")}var e=this.position.length,f=this._getDraggingArea();while(e){e-=1;this.position[e]=this.position[e].replace(/ /g,"");switch(this.position[e]){case"top":this.host.css("top",f.top);break;case"left":this.host.css("left",f.left);break;case"bottom":this.host.css("top",f.height-this.host.height()+f.top);break;case"right":this.host.css("left",f.left+f.width-this.host.width());break;default:if(!this.dragArea){f=a(window)}this._centerElement(this.host,f,"xy");break}}},_raiseEvent:function(g){var f=this._events[g],h=a.Event(f),e={};if(g===2||g===3){e.x=arguments[1];e.y=arguments[2];e.pageX=arguments[3];e.pageY=arguments[4]}if(f==="closed"||f==="close"){e.dialogResult=this.dialogResult}h.args=e;return this.host.trigger(h)},destroy:function(){this.removeHandler(a(window),"resize.window"+this.element.id);this._removeEventHandlers();this._destroy()},_destroy:function(){if(this.restricter){this.removeHandler(a(window),"resize."+this.element.id);this.removeHandler(a(window),"orientationchanged."+this.element.id);this.removeHandler(a(window),"orientationchange."+this.element.id)}this.host.remove();if(this._modalBackground!==null){this._modalBackground.remove()}},_toClose:function(f,e){return((f&&e[0]===this.element)||(e[0]!==this.element&&typeof e[0]==="object"))},propertyChangedHandler:function(e,f,h,g){this._validateProperties();switch(f){case"rtl":this._performLayout();break;case"dragArea":this._positionWindow();break;case"collapseButtonSize":this._performLayout();break;case"closeButtonSize":this._performLayout();break;case"isModal":this._refresh();this._fixWindowZIndex();break;case"keyboardCloseKey":this._removeEventHandlers();this._addEventHandlers();break;case"disabled":if(g){this.disable()}else{this.disabled=true;this.enable()}break;case"showCloseButton":case"showCollapseButton":this._performLayout();break;case"height":this._performLayout();break;case"width":this._performLayout();break;case"title":this.setTitle(g);this.title=g;break;case"content":this.setContent(g);break;case"draggable":this._removeEventHandlers();this._addEventHandlers();this._removeResize();this._initializeResize();break;case"resizable":this.enableResize=g;if(g){this._initializeResize()}else{this._removeResize()}break;case"position":this._positionWindow();break;case"modalOpacity":this._setModalBackgroundStyles();break;case"okButton":if(g){this._addDialogButtonsHandlers()}else{this.removeHandler(this.okButton)}break;case"cancelButton":if(g){this._addDialogButtonsHandlers()}else{this.removeHandler(this.cancelButton)}break;case"collapsed":if(g){if(!h){this.collapsed=false;this.collapse(0)}}else{if(h){this.collapsed=true;this.expand(0)}}case"theme":a.jqx.utilities.setTheme(h,g,this.host);break;case"enableResize":return;case"maxWidth":case"maxHeight":case"minWidth":case"minHeight":e._performLayout();e._removeResize();e._initializeResize();return;default:return}},collapse:function(g){if(!this.collapsed&&!this.host.is(":animated")){if(this.host.css("display")=="none"){return}var e=this,h=this._header.outerHeight(true),i=parseInt(this._header.css("border-bottom-width"),10),f=parseInt(this._header.css("margin-bottom"),10),g=!isNaN(parseInt(g))?g:this.collapseAnimationDuration;if(!isNaN(i)){h-=2*i}if(!isNaN(f)){h+=f}this._heightBeforeCollapse=this.host.height();this._minHeightBeforeCollapse=this.host.css("min-height");this.host.css("min-height",h);this.host.animate({height:h},g,function(){e.collapsed=true;e._collapseButton.addClass(e.toThemeProperty("jqx-window-collapse-button-collapsed"));e._collapseButton.addClass(e.toThemeProperty("jqx-icon-arrow-down"));e._content.css("display","none");e._raiseEvent(5);e._raiseEvent(9);a.jqx.aria(e,"aria-expanded",false)})}},expand:function(f){if(this.collapsed&&!this.host.is(":animated")){var e=this,f=!isNaN(parseInt(f))?f:this.collapseAnimationDuration;this.host.animate({height:this._heightBeforeCollapse},f,function(){e.collapsed=false;e.host.css("min-height",e._minHeightBeforeCollapse);e._collapseButton.removeClass(e.toThemeProperty("jqx-window-collapse-button-collapsed"));e._collapseButton.removeClass(e.toThemeProperty("jqx-icon-arrow-down"));e._content.css("display","block");e._raiseEvent(6);e._performWidgetLayout();e._raiseEvent(9);a.jqx.aria(e,"aria-expanded",true)})}},closeAll:function(h){var h=true;var g=a.data(document.body,"jqxwindows-list"),f=g.length,e=a.data(document.body,"jqxwindow-modal")||[];while(f){f-=1;if(this._toClose(h,g[f])){g[f].jqxWindow("closeWindow","close");g.splice(f,1)}}if(this._toClose(h,e)){e.jqxWindow("closeWindow","close");a.data(document.body,"jqxwindow-modal",[])}a.data(document.body,"jqxwindows-list",g)},setTitle:function(e){a.jqx.utilities.html(this._headerContentWrapper,e);this.title=e;this._performLayout()},setContent:function(f){this._contentInitialized=false;var e=this._content,g=false;while(!g){e.css("height","auto");e.css("width","auto");if(e.is(".jqx-window")){g=true}else{e=e.parent()}}a.jqx.utilities.html(this._content,f);this._performLayout()},disable:function(){this.disabled=true;this._removeEventHandlers();this._header.addClass(this.toThemeProperty("jqx-window-header-disabled"));this._closeButton.addClass(this.toThemeProperty("jqx-window-close-button-disabled"));this._collapseButton.addClass(this.toThemeProperty("jqx-window-collapse-button-disabled"));this._content.addClass(this.toThemeProperty("jqx-window-content-disabled"));this.host.addClass(this.toThemeProperty("jqx-window-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this._removeResize()},enable:function(){if(this.disabled){this._addEventHandlers();this._header.removeClass(this.toThemeProperty("jqx-window-header-disabled"));this._content.removeClass(this.toThemeProperty("jqx-window-content-disabled"));this._closeButton.removeClass(this.toThemeProperty("jqx-window-close-button-disabled"));this._collapseButton.removeClass(this.toThemeProperty("jqx-window-collapse-button-disabled"));this.host.removeClass(this.toThemeProperty("jqx-window-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.disabled=false;this._initializeResize()}},isOpen:function(){return this._visible},closeWindow:function(f){var e=this;f=(typeof f==="undefined")?this.closeButtonAction:f;this.hide(function(){if(f==="close"){e._destroy()}})},bringToFront:function(){var f=a.data(document.body,"jqxwindows-list");if(this.isModal){f=a.data(document.body,"jqxwindows-modallist");this._fixWindowZIndex("modal-hide");this._fixWindowZIndex("modal-show");return}var l=f[f.length-1],k=parseInt(l.css("z-index"),10),g=this._indexOf(this.host,f);for(var e=f.length-1;e>g;e-=1){var h=parseInt(f[e].css("z-index"),10)-1;f[e].css("z-index",h)}this.host.css("z-index",k);this._sortByStyle("z-index",f)},hide:function(h,g,e){if(this.closing){var f=this.closing();if(f==false){return}}g=g||this.closeAnimationDuration;switch(this.animationType){case"none":this.host.css("display","none");break;case"fade":this.host.fadeOut(g,function(){if(h instanceof Function){h()}});case"slide":this.host.slideUp(g,function(){if(h instanceof Function){h()}});case"combined":this.host.hide(g,function(){if(h instanceof Function){h()}})}this._visible=false;if(this.isModal){this._modalBackground.hide();this._fixWindowZIndex("modal-hide")}if(e!==true){this._raiseEvent(1);this._raiseEvent(8)}},open:function(f,e){this.show(f,e)},close:function(g,f,e){this.hide(g,f,e)},show:function(h,g){this._setDialogResult("none");g=g||this.showAnimationDuration;switch(this.animationType){case"none":this.host.css("display","block");break;case"fade":this.host.fadeIn(g,function(){if(h instanceof Function){h()}});break;case"slide":this.host.slideDown(g,function(){if(h instanceof Function){h()}});break;case"combined":this.host.show(g,function(){if(h instanceof Function){h()}});break}if(this.isModal){this._modalBackground.show();this._fixWindowZIndex("modal-show")}var f=this;if(!this._visible){if(g>150&&this.animationType!="none"){setTimeout(function(){if(!f._contentInitialized){if(f.initContent){f.initContent();f._contentInitialized=true}}f._raiseEvent(7);f._raiseEvent(9)},g-150)}else{if(!f._contentInitialized){if(f.initContent){f.initContent();f._contentInitialized=true}}this._raiseEvent(7);f._raiseEvent(9)}}this._visible=true;this._performLayout();if(this.autoFocus){var e=function(){if(!f._isTouchDevice){f._content.focus()}};e();setTimeout(function(){e()},100)}},_getTabbables:function(){var f=this._content.find("*");var e=new Array();a.each(f,function(){if(d(this)){e[e.length]=this}});return e},move:function(q,p,e,h){var g=0,f=0,n,k,i,q=parseInt(q,10),p=parseInt(p,10);if(a.jqx.browser.msie){if(a(window).width()>a(document).width()&&!this.dragArea){f=this._SCROLL_WIDTH}if(a(window).height()<a(document).height()&&document.documentElement.clientWidth>document.documentElement.scrollWidth&&!this.dragArea){g=this._SCROLL_WIDTH}}n=this._validateCoordinates(q,p,f,g);if(parseInt(this.host.css("left"),10)!==n.x||parseInt(this.host.css("top"),10)!==n.y){if(e){var m=a.jqx.mobile.getTouches(e);var l=m[0];var o=a.jqx.position(e);k=o.left;i=o.top}if(k==undefined){k=q}if(i==undefined){i=p}if(h!==false){this._raiseEvent(2,n.x,n.y,k,i)}}this.element.style.left=n.x+"px";this.element.style.top=n.y+"px";this._moved=true}});function c(g,e){var k=g.nodeName.toLowerCase();if("area"===k){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(k)?!g.disabled:"a"==k?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.css(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function d(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}}(jqxBaseFramework));(function(b){var a=(function(c){return{resizeConfig:function(){this.resizeTarget=null;this.resizeIndicatorSize=5;this.resizeTargetChildren=null;this.isResizing=false;this.resizeArea=false;this.minWidth=1;this.maxWidth=100;this.minHeight=1;this.maxHeight=100;this.resizeParent=null;this.enableResize=true;this._cursorBackup;this._resizeEvents=["resizing","resized","resize"];this._resizeMouseDown=false;this._resizeCurrentMode=null;this._mouseResizePosition={};this._resizeMethods=null;this._SCROLL_WIDTH=21},_resizeExceptions:{invalidTarget:"Invalid target!",invalidMinHeight:"Invalid minimal height!",invalidMaxHeight:"Invalid maximum height!",invalidMinWidth:"Invalid minimum width!",invalidMaxWidth:"Invalid maximum width!",invalidIndicatorSize:"Invalid indicator size!",invalidSize:"Invalid size!"},removeResize:function(){if(this.resizeTarget){var f=c(this.resizeTarget.children(".jqx-resize"));f.detach();var e=f.children();this._removeResizeEventListeners();for(var d=0;d<e.length;d+=1){c(e[d]).detach();this.resizeTarget.append(e[d])}f.remove()}},initResize:function(d){this.resizeConfig();this.resizeTarget=c(d.target);this.resizeIndicatorSize=d.indicatorSize||10;this.maxWidth=d.maxWidth||100;this.minWidth=d.minWidth||1;this.maxHeight=d.maxHeight||100;this.minHeight=d.minHeight||1;this.resizeParent=d.resizeParent;this._parseResizeParentProperties();this._validateResizeProperties();this._validateResizeTargetDimensions();this._getChildren(this.resizeTarget.maxWidth,this.resizeTarget.minWidth,this.resizeTarget.maxHeight,this.resizeTarget.minHeight,d.alsoResize);this._refreshResize();this._cursorBackup=this.resizeTarget.css("cursor");if(this._cursorBackup==="auto"){this._cursorBackup="default"}},_validateResizeTargetDimensions:function(){this.resizeTarget.maxWidth=this.maxWidth;this.resizeTarget.minWidth=((3*this.resizeIndicatorSize>this.minWidth)?3*this.resizeIndicatorSize:this.minWidth);this.resizeTarget.maxHeight=this.maxHeight;this.resizeTarget.minHeight=((3*this.resizeIndicatorSize>this.minHeight)?3*this.resizeIndicatorSize:this.minHeight)},_parseResizeParentProperties:function(){if(this.resizeParent){this.resizeParent.left=parseInt(this.resizeParent.left,10);this.resizeParent.top=parseInt(this.resizeParent.top,10);this.resizeParent.width=parseInt(this.resizeParent.width,10);this.resizeParent.height=parseInt(this.resizeParent.height,10)}},_getChildren:function(h,e,g,i,d){this.resizeTargetChildren=c(d);this.resizeTargetChildren.toArray();var f=this.resizeTargetChildren.length;while(f){f-=1;this.resizeTargetChildren[f]=c(this.resizeTargetChildren[f])}},_refreshResize:function(){this._renderResize();this._performResizeLayout();this._removeResizeEventListeners();this._addResizeEventHandlers()},_renderResize:function(){this.resizeTarget.wrapInner(c("<div></div>"));this._resizeWrapper=this.resizeTarget.children(0);this._resizeWrapper.addClass("jqx-resize");this._resizeWrapper.addClass("jqx-rc-all");this._resizeWrapper.css("z-index",8000)},_performResizeLayout:function(){this._resizeWrapper.height(this.resizeTarget.height());this._resizeWrapper.width(this.resizeTarget.width())},_removeResizeEventListeners:function(){var d=this.resizeTarget.attr("id");this.removeHandler(this._resizeWrapper,"mousemove.resize"+d);this.removeHandler(this._resizeWrapper,"mousedown.resize"+d);this.removeHandler(c(document),"mousemove.resize"+d);this.removeHandler(c(document),"mouseup.resize"+d)},_addResizeEventHandlers:function(){var g=this.resizeTarget.attr("id");var d=this;this.addHandler(this._resizeWrapper,"mousemove.resize."+g,function(h){d._resizeCursorChangeHandler(d,h)});this.addHandler(this._resizeWrapper,"mousedown.resize."+g,function(h){d._resizeMouseDownHandler(d,h)});this.addHandler(c(document),"mousemove.resize."+g,function(h){return d._resizeHandler(d,h)});this.addHandler(c(document),"mouseup.resize."+g,function(h){d._stopResizing(d,h)});try{if(document.referrer!=""||window.frameElement){var f=function(h){d._stopResizing(d,h)};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",f,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",f)}}}}catch(e){}},_stopResizing:function(d,e){if(d.enableResize){if(d.isResizing){d._raiseResizeEvent(1)}d._resizeMouseDown=false;d.isResizing=false;d._resizeDirection=null;if(d.resizeTarget){d.resizeTarget.removeClass("jqx-disableselect")}}if(d._cursorBackup=="undefined"){d._cursorBackup="default"}if(d._resizeWrapper){d._resizeWrapper.css("cursor",d._cursorBackup)}},_resizeHandler:function(d,e){if(d.enableResize&&!d.collapsed){if(d.isResizing&&d._resizeDirection){if(e.which===0&&c.jqx.browser.msie&&c.jqx.browser.version<9){d._stopResizing(e)}d._performResize(e.pageX,e.pageY);return false}else{return d._resizeCaptureCursor(e.pageX,e.pageY)}}},_resizeCaptureCursor:function(e,d){if(this._resizeMouseDown&&!this.isResizing&&this._resizeDirection){if((e+3<this._mouseResizePosition.x||e-3>this._mouseResizePosition.x)||(d+3<this._mouseResizePosition.y||d-3>this._mouseResizePosition.y)){this._changeCursor(e-parseInt(this.resizeTarget.css("left")),d-parseInt(this.resizeTarget.css("top")));this._mouseResizePosition={x:e,y:d};this._prepareResizeMethods(this._resizeDirection);this._resizeBackupData();this.isResizing=true;this.resizeTarget.addClass("jqx-disableselect");return false}}},_resizeBackupData:function(){this.resizeTarget.lastWidth=this.resizeTarget.width();this.resizeTarget.lastHeight=this.resizeTarget.height();this.resizeTarget.x=parseInt(this.resizeTarget.css("left"),10);this.resizeTarget.y=parseInt(this.resizeTarget.css("top"),10);this._resizeBackupChildrenSize()},_resizeBackupChildrenSize:function(){var d=this.resizeTargetChildren.length,e;while(d){d-=1;e=this.resizeTargetChildren[d];this.resizeTargetChildren[d].lastWidth=e.width();this.resizeTargetChildren[d].lastHeight=e.height()}},_performResize:function(g,f){var e=g-this._mouseResizePosition.x,d=f-this._mouseResizePosition.y;if(this._resizeDirection){this._resize(this.resizeTarget,e,d)}},_resizeCursorChangeHandler:function(d,e){if(d.enableResize&&!d.collapsed){if(!d.isResizing){d._changeCursor(e.pageX-parseInt(d.resizeTarget.css("left")),e.pageY-parseInt(d.resizeTarget.css("top")))}}},_resizeMouseDownHandler:function(d,e){if(d.enableResize){if(d._resizeDirection!==null){d._resizeMouseDown=true;d._mouseResizePosition.x=e.pageX;d._mouseResizePosition.y=e.pageY;e.preventDefault()}}},_validateResizeProperties:function(){try{if(!this.resizeTarget||this.resizeTarget.length!==1){throw new Error(this._resizeExceptions.invalidTarget)}if(this.minHeight<0||isNaN(parseInt(this.minHeight))){throw new Error(this._resizeExceptions.invalidMinHeight)}if(this.maxHeight<=0||isNaN(parseInt(this.maxHeight))){throw new Error(this._resizeExceptions.invalidMaxHeight)}if(this.minWidth<0||isNaN(parseInt(this.minWidth))){throw new Error(this._resizeExceptions.invalidMinWidth)}if(this.maxWidth<0||isNaN(parseInt(this.maxWidth))){throw new Error(this._resizeExceptions.invalidMaxWidth)}if(this.resizeIndicatorSize<0||isNaN(parseInt(this.resizeIndicatorSize))){throw new Error(this._resizeExceptions.invalidIndicatorSize)}if(this.minHeight>this.maxHeight||this.minWidth>this.maxWidth){throw new Error(this._resizeExceptions.invalidSize)}}catch(d){alert(d)}},_changeCursor:function(d,e){if(this.isResizing||this._resizeMouseDown){return}this.resizeArea=true;if(d<=this.resizeIndicatorSize&&d>=0&&e<=this.resizeIndicatorSize&&e>0){this._resizeWrapper.css("cursor","nw-resize");this._resizeDirection="topleft"}else{if(e<=this.resizeIndicatorSize&&e>0&&d>=this.resizeTarget.width()-this.resizeIndicatorSize){this._resizeWrapper.css("cursor","ne-resize");this._resizeDirection="topright"}else{if(e>=this.resizeTarget.height()-this.resizeIndicatorSize&&e<this.resizeTarget.height()&&d<=this.resizeIndicatorSize&&d>=0){this._resizeWrapper.css("cursor","sw-resize");this._resizeDirection="bottomleft"}else{if(e>=this.resizeTarget.height()-this.resizeIndicatorSize&&e<this.resizeTarget.height()&&d>=this.resizeTarget.width()-this.resizeIndicatorSize&&d<this.resizeTarget.width()){this._resizeWrapper.css("cursor","se-resize");this._resizeDirection="bottomright"}else{if(d<=this.resizeIndicatorSize&&d>=0){this._resizeWrapper.css("cursor","e-resize");this._resizeDirection="left"}else{if(e<=this.resizeIndicatorSize&&e>0){this._resizeWrapper.css("cursor","n-resize");this._resizeDirection="top"}else{if(e>=this.resizeTarget.height()-this.resizeIndicatorSize&&e<this.resizeTarget.height()){this._resizeWrapper.css("cursor","n-resize");this._resizeDirection="bottom"}else{if(d>=this.resizeTarget.width()-this.resizeIndicatorSize&&d<this.resizeTarget.width()){this._resizeWrapper.css("cursor","e-resize");this._resizeDirection="right"}else{this._resizeWrapper.css("cursor",this._cursorBackup);this._resizeDirection=null;this.resizeArea=false}}}}}}}}},_prepareResizeMethods:function(d){this._resizeMethods=[];if(d.indexOf("left")>=0){this._resizeMethods.push(this._resizeLeft)}if(d.indexOf("top")>=0){this._resizeMethods.push(this._resizeTop)}if(d.indexOf("right")>=0){this._resizeMethods.push(this._resizeRight)}if(d.indexOf("bottom")>=0){this._resizeMethods.push(this._resizeBottom)}},_validateResize:function(g,d,h,f,e){if(h==="horizontal"||h==="both"){return this._validateWidth(g,f,e)}else{if(h==="vertical"||h==="both"){return this._validateHeight(d,f,e)}}return{result:false,fix:0}},_getParent:function(){if(this.resizeParent!==null&&this.resizeParent!=="undefined"&&this.resizeParent.height&&this.resizeParent.width&&this.resizeParent.top&&this.resizeParent.left){return this.resizeParent}return{left:0,top:0,width:c(document).width(),height:c(document).height()}},_validateHeight:function(f,k,i){var l=0,e=2,d=false,h=f,g=this._getParent();if(c(window).width()>c(document).width()&&c.jqx.browser.msie&&g.height===c(document).height()){l=this._SCROLL_WIDTH}if(i==="bottom"&&(f+k.position().top+l+e>g.height+g.top)){return{fix:g.height-k.position().top-l-e+g.top,result:false}}if(i==="top"&&k.lastHeight-f+k.y<g.top){return{fix:f+(k.lastHeight-f+k.y)-g.top,result:false}}if(f<k.minHeight){return{fix:k.minHeight,result:false}}if(f>k.maxHeight){return{fix:k.maxHeight,result:false}}return{result:true,fix:f}},_validateWidth:function(k,i,h){var l=0,e=2,d=false,g=k,f=this._getParent();if(c(window).height()<c(document).height()&&c.jqx.browser.msie&&document.documentElement.clientWidth>=document.documentElement.scrollWidth&&f.width===c(document).width()){l=this._SCROLL_WIDTH}if(h==="right"&&(k+i.position().left+l+e>f.width+f.left)){return{fix:f.width-i.position().left-l-e+f.left,result:false}}if(h==="left"&&(i.lastWidth-k+i.x<f.left)){return{fix:k+(i.lastWidth-k+i.x)-f.left,result:false}}if(k<i.minWidth){return{fix:i.minWidth,result:false}}if(k>i.maxWidth){return{fix:i.maxWidth,result:false}}return{result:true,fix:k}},_resize:function(h,e,d){var l=this._resizeDirection;var k=this._resizeMethods.length;for(var g=0;g<k;g++){if(this._resizeMethods[g] instanceof Function){var f={element:h,x:e,y:d,self:this};this._resizeMethods[g](f)}}this._performResizeLayout()},resize:function(g,d){if(this.resizable){var f=g-this.host.width();var e=d-this.host.height();var h="right";if(e!=0){h="bottom"}this._resizeDirection=h;this._prepareResizeMethods(this._resizeDirection);this._resizeBackupData();this.isResizing=true;this._resize(this.resizeTarget,f,e);this.isResizing=false}},_setResizeChildrenSize:function(e,f){var h=this.resizeTargetChildren.length;while(h){h--;if(f==="width"){var g=this.resizeTargetChildren[h].lastWidth-(this.resizeTarget.lastWidth-e);if(g<this.resizeTarget.maxWidth&&g>0){this.resizeTargetChildren[h].width(g)}}else{var d=this.resizeTargetChildren[h].lastHeight-(this.resizeTarget.lastHeight-e);if(d<this.resizeTarget.maxHeight&&d>0){this.resizeTargetChildren[h].height(d)}}}},_resizeRight:function(e){var f=e.element.lastWidth+e.x,d=e.self._validateResize(f,0,"horizontal",e.element,"right");if(!d.result){f=d.fix}if(e.element.width()!==f){e.self._setResizeChildrenSize(f,"width");e.element.width(f);e.self._raiseResizeEvent(0)}return f},_resizeLeft:function(f){var g=f.element.lastWidth-f.x,e=f.self._validateResize(g,0,"horizontal",f.element,"left"),d=f.element.x+f.x;if(!e.result){d=f.element.x+(f.element.lastWidth-e.fix);g=e.fix;return}if(f.element.width()!==g){f.self._setResizeChildrenSize(g,"width");f.element.width(g);f.element.css("left",d);f.self._raiseResizeEvent(0)}return g},_resizeBottom:function(f){var e=f.element.lastHeight+f.y,d=f.self._validateResize(0,e,"vertical",f.element,"bottom");if(!d.result){e=d.fix}if(f.element.height()!==e){f.self._setResizeChildrenSize(e,"height");f.element.height(e);f.self._raiseResizeEvent(0)}return e},_resizeTop:function(f){var e=f.element.lastHeight-f.y,d=f.self._validateResize(0,e,"vertical",f.element,"top"),g=f.element.y+f.y;if(!d.result){g=f.element.y+(f.element.lastHeight-d.fix);e=d.fix;return}if(f.element.height()!==e){f.self._setResizeChildrenSize(e,"height");f.element.height(e);f.element.css("top",g);f.self._raiseResizeEvent(0)}return e},_raiseResizeEvent:function(f){var e=this._resizeEvents[f],g=c.Event(e),d={};d.width=parseInt(this.resizeTarget[0].style.width);d.height=parseInt(this.resizeTarget[0].style.height);g.args=d;if(f==0){var e=this._resizeEvents[2],h=c.Event(e);h.args=d;this.resizeTarget.trigger(h)}return this.resizeTarget.trigger(g)}}}(jqxBaseFramework));b.extend(b.jqx._jqxWindow.prototype,a)}(jqxBaseFramework));(function(a){a.jqx.jqxWidget("jqxDocking","",{});a.extend(a.jqx._jqxDocking.prototype,{defineInstance:function(){var b={orientation:"horizontal",mode:"default",floatingWindowOpacity:0.3,panelsRoundedCorners:true,disabled:false,width:"auto",height:"auto",windowsMode:null,cookies:false,cookieOptions:{},windowsOffset:5,rtl:false,keyboardNavigation:false,_windowOptions:{},_draggedFired:false,_dragging:false,_draggingItem:null,_panels:[],_windows:[],_indicator:null,_events:["dragEnd","dragStart"]};a.extend(true,this,b);return b},createInstance:function(){if(!this.host.jqxWindow){throw new Error("jqxDocking: Missing reference to jqxwindow.js.")}this._refresh(true);if(this.disabled){this.disabled=false;this.disable()}},refresh:function(b){if(!b){this._performLayout()}},_refresh:function(c){this._render();this._removeClasses();this._addClasses();this._setWindowsOptions(true);this._performLayout();this._cookieHandler();this._cookieExporter();this._removeEventListeners();this._addEventListeners();var b=a.Event("resize");this.host.trigger(b)},resize:function(){this._refresh()},_addClasses:function(){this.host.addClass("jqx-docking");for(var b=0;b<this._panels.length;b+=1){this._panels[b].addClass(this.toThemeProperty("jqx-docking-panel"));if(this.panelsRoundedCorners){this._panels[b].addClass(this.toThemeProperty("jqx-rc-all"))}}for(var b=0;b<this._windows.length;b+=1){this._windows[b].addClass(this.toThemeProperty("jqx-docking-window"))}},_removeClasses:function(){this.host.removeClass("jqx-docking");for(var b=0;b<this._panels.length;b+=1){this._panels[b].removeClass(this.toThemeProperty("jqx-docking-panel"));this._panels[b].removeClass(this.toThemeProperty("jqx-rc-all"))}for(var b=0;b<this._windows.length;b+=1){this._windows[b].removeClass(this.toThemeProperty("jqx-docking-window"))}},_render:function(){var b=this.host.children("div"),d;for(var c=0;c<b.length;c+=1){this._panels.push(a(b[c]));this._renderWindows(a(b[c]))}},focus:function(b){if(this.focusedWindow){a(this.focusedWindow).removeClass(this.toThemeProperty("jqx-fill-state-focus"))}if(!a.isEmptyObject(b)&&a.type(b)==="string"&&a("#"+b).length>0){this.focusedWindow=a("#"+b)[0]}else{this.focusedWindow=this._windows[0][0]}a(this.focusedWindow).addClass(this.toThemeProperty("jqx-fill-state-focus"));this.host.focus()},_renderWindows:function(b){var f=b.children("div");for(var d=0;d<f.length;d+=1){this._windows.push(a(f[d]));a(f[d]).jqxWindow({keyboardNavigation:false,rtl:this.rtl,theme:this.theme,enableResize:false,width:a(f[d]).css("width"),maxWidth:Number.MAX_VALUE});a(f[d]).detach();b.append(a(f[d]))}b.append('<div class="spacer" style="clear: both;"></div>');var e=this;if(this.keyboardNavigation){var c=function(i){if(i.keyCode===13){if(e.focusedWindow&&a(e.focusedWindow).jqxWindow("showCollapseButton")){a(e.focusedWindow).jqxWindow("_collapseButton").trigger("click")}}else{if((e.focusedWindow&&i.keyCode===27&&a(e.focusedWindow).jqxWindow("keyboardCloseKey")==="esc")||(e.focusedWindow&&a(e.focusedWindow).jqxWindow("keyboardCloseKey")==i.keyCode)){a(e.focusedWindow).jqxWindow("closeWindow",i)}}if(i.keyCode===9){if(e.focusedWindow==null){e.focusedWindow=e._windows[0];a(e.focusedWindow).focus();i.stopPropagation()}else{var g=-1;a.each(e._windows,function(j,k){if(this[0]==e.focusedWindow){g=j}});if(i.shiftKey){g--}else{g++}if(g>=e._windows.length||g<0){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.focusedWindow=null;i.stopPropagation();return true}var h=e._windows[g];if(!h){h=e._windows[0]}a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.focusedWindow=h[0];a(e.focusedWindow).focus()}a(e.focusedWindow).addClass(e.toThemeProperty("jqx-fill-state-focus"));if(i.preventDefault){i.preventDefault();i.stopPropagation()}}};a.each(e._windows,function(h,i){var g=a(this);e.removeHandler(g,"focus");e.removeHandler(g,"blur");e.removeHandler(g,"mousedown");e.addHandler(g,"mousedown",function(j){if(e.focusedWindow){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"))}e.focusedWindow=g[0];a(e.focusedWindow).addClass(e.toThemeProperty("jqx-fill-state-focus"));a(e.focusedWindow).focus()});e.addHandler(g,"focus",function(j){if(e.focusedWindow){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"))}e.focusedWindow=g[0];a(e.focusedWindow).addClass(e.toThemeProperty("jqx-fill-state-focus"))});e.addHandler(g,"blur",function(j){if(a(document.activeElement).ischildof(a(g))){return true}a(g).removeClass(e.toThemeProperty("jqx-fill-state-focus"))});e.removeHandler(g,"keydown");e.addHandler(g,"keydown",function(j){c(j)})});this.removeHandler(this.host,"keydown");this.addHandler(this.host,"keydown",function(g){c(g)});this.removeHandler(this.host,"blur");this.addHandler(this.host,"blur",function(g){if(e.focusedWindow){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.focusedWindow=null}})}},_performLayout:function(){this.host.css("width",this.width);this.host.css("height",this.height);this._performWindowsLayout();this._performPanelsLayout();this._performWindowsLayout()},_performPanelsLayout:function(){var b,e=this.host.width(),c=0;for(var d=0;d<this._panels.length;d+=1){b=this._panels[d];b.css("height","auto");b.css("min-width","auto");if(this.orientation==="vertical"){b.css("width","auto");b.css("float","none")}else{c+=this._handleHorizontalSize(b,c,e);if(d>0){b.css("margin-left",-this.windowsOffset)}}b.css("min-width",b.width())}if(this.orientation==="horizontal"){if(c<e){this._fillContainer(e,c)}}},_handleHorizontalSize:function(b,c,g){var e=g/this._panels.length,d,f=(b.outerWidth()-b.width());b.css("float","left");if(b.css("width")==="auto"||parseInt(b.css("width"),10)===0){b.width(e-f)}if(c+b.outerWidth()>=g){if(c+e<g){d=e-f;b.css("min-width",d);b.width(d)}else{d=b.width()-((c+b.outerWidth())-g);b.css("min-width",d);b.width(d)}}return b.outerWidth()},_fillContainer:function(f,b){var d=this._panels.length,e=this._panels[d-1],c=f-b+e.width();if(a.jqx.browser.msie&&a.jqx.browser.version<9){c-=this._panels.length}e.width(c)},_performWindowsLayout:function(){var b;for(var c=0;c<this._windows.length;c+=1){b=this._getWindowOptions(this._windows[c]);if(this._windows[c].ischildof(this.host)){if(b){if(b.mode!=="floating"){this._windows[c].css("margin",this.windowsOffset);this._windows[c].css("position","static")}}else{if(this.mode!=="floating"){this._windows[c].css("position","static");this._windows[c].css("margin",this.windowsOffset)}}}this._setWindowSize(this._windows[c],b)}},_setWindowSize:function(d,c){if(c.mode!=="floating"){if(d.ischildof(this.host)){var b=d.parent().width()-(d.outerWidth()-d.width())-2*this.windowsOffset;if(this.orientation==="vertical"){d.jqxWindow("width",b)}else{d.jqxWindow("width",b)}}}this._setWindowOption(d,"size",{width:d.width(),height:d.height()})},_setWindowsOptions:function(b){for(var f=0;f<this._windows.length;f+=1){var g,c=this._windows[f].attr("id"),d=this._getWindowOptions(c);if(!b){var e="TEDX"}g=null;if(this.windowsMode&&this.windowsMode.hasOwnProperty(c)){g=this.windowsMode[c];this._setWindowOption(this._windows[f],"mode",g)}else{if(typeof d!=="undefined"&&typeof d.mode==="undefined"){g=this.mode;this._setWindowOption(this._windows[f],"mode",g)}}if(b){this._setWindowOption(this._windows[f],"resizable",true);if(g=="floating"){this._windows[f].jqxWindow({enableResize:true})}else{this._windows[f].jqxWindow({enableResize:false})}this._setWindowOption(this._windows[f],"size",{height:this._windows[f].height(),width:this._windows[f].width()})}}},_removeEventListeners:function(){for(var b=0;b<this._windows.length;b+=1){this.removeHandler(this._windows[b],"moving",this._itemDragging);this.removeHandler(this._windows[b],"moved",this._itemDrop);this.removeHandler(this._windows[b],"resized",this._itemResized);this.removeHandler(this._windows[b],"collapse",this._collapsed);this.removeHandler(this._windows[b],"expand",this._expanded)}},_addEventListeners:function(){for(var b=0;b<this._windows.length;b+=1){this._addEventListenersTo(this._windows[b])}var c=this;a.jqx.utilities.resize(this.host,function(){c._performLayout()})},_addEventListenersTo:function(b){this.addHandler(b,"moving",this._itemDragging,{self:this});this.addHandler(b,"moved",this._itemDrop,{self:this});this.addHandler(b,"resized",this._itemResized,{self:this});this.addHandler(b,"collapse",this._collapsed,{self:this});this.addHandler(b,"expand",this._expanded,{self:this})},_itemDragging:function(g){var d=g.data.self,f=a(g.target),e=d._getWindowOptions(f);f.removeClass(d.toThemeProperty("jqx-docking-window"));f.css("margin","0px");if(!d._dragging){d._prepareForDragging(f)}if(e.mode==="floating"){return}var b={x:g.args.pageX,y:g.args.pageY},c=d._getMouseOverPanel(b);if(c){d._mouseOverPanel(c,b)}else{d._mouseLeavePanel()}if(!d._draggedFired){d._raiseEvent(1,{window:a(f).attr("id")});d._draggedFired=true}return true},_prepareForDragging:function(c){this._dragging=true;var b={parent:c.parent(),next:c.next(),prev:c.prev()};this._setWindowOption(c,"lastPosition",b);c.detach();a(document.body).append(c);this._setDraggingStyles(c);this._draggingItem=c},_setDraggingStyles:function(b){b.css({position:"absolute",left:b.offset().left,top:b.offset().top});b.fadeTo(0,this.floatingWindowOpacity)},_getMouseOverPanel:function(c){var e,b,g,f;for(var d=0;d<this._panels.length;d+=1){if(this._isMouseOverItem(this._panels[d],c,false)){return this._panels[d]}}return null},_mouseOverPanel:function(c,b){if(this._dragging){var e=c.children("div"),d=this._getHoverWindow(b,e);if(d==="indicator"){return}var f=this._centerOffset(d,b);this._handleIndicator(c,d,f)}},_getHoverWindow:function(c,f){var e,b,h,g;if(this._isMouseOverItem(this._indicator,c,true)){return"indicator"}for(var d=0;d<f.length;d+=1){if(this._isMouseOverItem(a(f[d]),c,true)){return a(f[d])}}return null},_centerOffset:function(f,b){if(f){var e={x:f.offset().left,y:f.offset().top},g=f.height(),d=f.width(),c;c=e.y+g/2;if(b.y>c){return"next"}return"prev"}return"all"},_handleIndicator:function(c,d,e){var b=this._getIndicator(d);if(e==="all"){if(this.orientation==="vertical"){b.insertBefore(c.children(".spacer"))}else{c.append(b)}}else{if(e==="prev"){b.insertBefore(d)}else{b.insertAfter(d)}}this._resizeIndicator(b,c)},_getIndicator:function(){var b=this._indicator;if(!b){b=a('<div class="'+this.toThemeProperty("jqx-docking-drop-indicator")+'"></div>')}this._indicator=b;this._indicator.css("margin",this.windowsOffset);if(this.orientation==="vertical"){this._indicator.css("float","left")}return b},_resizeIndicator:function(c,b){if(this.orientation==="horizontal"){c.width(b.width()-(c.outerWidth(true)-c.width()));c.height(this._draggingItem.height())}else{c.width(this._draggingItem.width());c.height(this._draggingItem.height())}},_mouseLeavePanel:function(b){if(this._indicator){this._indicator.remove();this._indicator=null}},_itemDrop:function(d){var b=d.data.self,c=a(d.currentTarget);b._dragging=false;if(b._indicator){c.detach();c.insertAfter(b._indicator);b._indicator.remove();b._dropFixer(c)}else{b._dropHandler(c)}c.fadeTo(0,1);c.focus();b._indicator=null;b._cookieExporter();b._draggedFired=false;b._raiseEvent(0,{window:c.attr("id")})},_dropFixer:function(b){b.css("position","static");b.addClass(this.toThemeProperty("jqx-docking-window"));b.css("margin",this.windowsOffset);b.jqxWindow("enableResize",false);if(this.orientation==="horizontal"){this._fixWindowSize(b)}},_dropHandler:function(c){var b=this._getWindowOptions(c);if(this.mode==="docked"){this._dropDocked(c)}else{this._dropFloating(c)}},_dropDocked:function(d){var c=this._getWindowOptions(d),b=c.lastPosition;d.detach();if(b.next[0]){d.insertBefore(b.next)}else{if(b.prev[0]){d.insertAfter(b.prev)}else{b.parent.append(d)}}this._dropFixer(d)},_fixWindowSize:function(b){a(b).jqxWindow({width:b.parent().width()-(b.outerWidth()-b.width())-2*parseInt(this.windowsOffset,10)})},_itemResized:function(d){var b=d.data.self,c=a(d.currentTarget);b._setWindowOption(c,"size",{width:d.args.width,height:d.args.height});b._cookieExporter()},_dropFloating:function(c){var b;if(!a(c).jqxWindow("collapsed")){b=this._getWindowOptions(c);a(c).jqxWindow("enableResize",b.resizable)}a(document.body).append(c);this._restoreWindowSize(c)},_restoreWindowSize:function(c){var b=this._getWindowOptions(c);a(c).jqxWindow({width:b.size.width})},_isMouseOverItem:function(i,e,d){if(!i){return false}var j=i.outerWidth(true),g=i.outerHeight(true),b=i.width(),h=i.height(),f=i.offset().top,c=i.offset().left;if(d){f-=(g-h)/2;c-=(j-b)/2;b=j;h=g}if((c<=e.x&&c+b>=e.x)&&(f<=e.y&&f+h+2*this._draggingItem.height()/3>=e.y)){return true}return false},_cookieHandler:function(){if(this.cookies){var b=a.jqx.cookie.cookie("jqxDocking"+this.element.id);if(b!==null){this.importLayout(b);layoutImported=true}}},_cookieExporter:function(){if(this.cookies){a.jqx.cookie.cookie("jqxDocking"+this.element.id,this.exportLayout(),this.cookieOptions)}},_indexOf:function(c,d){for(var b=0;b<d.length;b+=1){if(c[0]===d[b][0]){return b}}return -1},_exportFixed:function(){var e=[],g="",b,f;for(var d=0;d<this._panels.length;d+=1){g+='"panel'+d+'": {';b=this._panels[d].children();for(var c=0;c<b.length;c+=1){f=a(b[c]);if(f.attr("id")){e.push(f);g+='"'+f.attr("id")+'":{"collapsed":'+f.jqxWindow("collapsed")+"},"}}if(b.length>1){g=g.substring(0,g.length-1)}g+="},"}g=g.substring(0,g.length-1);return{JSON:g,children:e}},_exportFloating:function(c){var e="",d;e+='"floating":{';for(var b=0;b<this._windows.length;b+=1){d=a(this._windows[b]);if(this._indexOf(d,c)===-1){e+='"'+d.attr("id")+'":{"x":"'+d.css("left")+'","y":"'+d.css("top")+'","width":"'+d.jqxWindow("width")+'","height":"'+d.jqxWindow("height")+'","collapsed":'+d.jqxWindow("collapsed")+"},"}}if(e.substring(e.length-1,e.length)===","){e=e.substring(0,e.length-1)}e+="}";return e},_importFixed:function(b){for(var c in b){if(c!=="orientation"&&c!=="floating"&&b.hasOwnProperty(c)){order=c.substring(c.length-1,c.length);order=parseInt(order,10);children=b[c];for(var c in children){a("#"+c).css("position","static");if(children[c].collapsed){(function(d){setTimeout(function(){a("#"+d).jqxWindow("collapsed",true)},0)}(c))}this._panels[order].append(a("#"+c));if(this.orientation==="horizontal"){this._fixWindowSize(a("#"+c))}}}}},_importFloating:function(d){var f=d.floating,c,b;for(var e in f){if(f.hasOwnProperty(e)){a("#"+e).css("position","absolute");a(document.body).append(a("#"+e));b=this._dragging;a("#"+e).jqxWindow("move",f[e].x,f[e].y);this._dragging=b;a("#"+e).jqxWindow("width",f[e].width);a("#"+e).jqxWindow("height",f[e].height);a("#"+e).jqxWindow("enableResize",true);this._setWindowsOptions(true);(function(g){setTimeout(function(){a("#"+g).jqxWindow("collapsed",f[g].collapsed)},0)}(e));a("#"+e).fadeTo(0,1)}}},_getWindowOptions:function(b){if(typeof b==="object"&&b!==null){if(b.length>0){b=b.attr("id")}else{b=b.id}}return this._windowOptions[b]},_setWindowOption:function(c,b,d){if(typeof c==="object"&&c!==null){if(c.length>0){c=c.attr("id")}else{c=c.id}}if(typeof this._windowOptions[c]==="undefined"){this._windowOptions[c]={}}this._windowOptions[c][b]=d;if(b==="mode"){this.setWindowMode(c,d)}},_expanded:function(c){var b=c.data.self;b._cookieExporter()},_collapsed:function(c){var b=c.data.self;b._cookieExporter()},_raiseEvent:function(b){var c=a.Event(this._events[b]);c.args=arguments[1];return this.host.trigger(c)},_moveWindow:function(e,c,b){var d=c.children();var g=null;var f=0;a.each(d,function(h){if(a(this).css("position")=="static"){if(f==b&&this!=e[0]){g=this}f++}});if(f<=b){e.appendTo(c)}else{if(g!=null){e.insertBefore(g)}}e.css("position","static")},propertyChangedHandler:function(b,c,e,d){switch(c){case"rtl":a.each(b._windows,function(){this.jqxWindow({rtl:d})});break;case"theme":a.each(b._windows,function(){this.jqxWindow({theme:d})});break;case"orientation":case"height":case"width":b._performLayout();b._cookieExporter();break;case"panelsRoundedCorners":b._removeClasses();b._addClasses();break;case"disabled":if(d){b.disabled=false;b.disable()}else{b.disabled=true;b.enable()}break;case"windowsMode":case"mode":b._setWindowsOptions(false);break;case"cookies":b._cookieExporter();break;case"windowsOffset":b._performLayout();break}},destroy:function(){this._removeEventListeners();this.host.remove();this.windowsMode=null;this.cookieOptions=null;this._windowOptions=null;this._panels=null;this._windows=null;this._events=null},disable:function(){if(!this.disabled){this.disabled=true;this._removeEventListeners();for(var b=0;b<this._windows.length;b+=1){this._windows[b][0].style.opacity="";a(this._windows[b]).jqxWindow("disable")}}},enable:function(){if(this.disabled){this.disabled=false;this._addEventListeners();for(var b=0;b<this._windows.length;b+=1){a(this._windows[b]).jqxWindow("enable")}}},move:function(f,c,b){var c=this._panels[c];if(!c){return}var e=a(c.children(".spacer")),d;e.detach();f=a("#"+f);d=this._getWindowOptions(f);if(d.mode==="floating"){return}else{this._moveWindow(f,c,b)}c.append(e);this._cookieExporter();this._dropFixer(f)},exportLayout:function(){var c="{",b=this._exportFixed();c+=b.JSON+","+this._exportFloating(b.children)+',"orientation": "'+this.orientation+'"';c+="}";return c},importLayout:function(g){try{var f=a.parseJSON(g),b,c;this.orientation=f.orientation;this._performLayout();this._importFixed(f);this._importFloating(f)}catch(d){alert("Invalid JSON string.")}},setWindowMode:function(c,d){var c=a("#"+c),b=this._getWindowOptions(c);if(d==="floating"){c.css("position","absolute");this._windowOptions[c.attr("id")]["mode"]=d}else{if(b.mode==="floating"&&c.css("position")==="absolute"){if(b.lastPosition){this._dropDocked(c)}else{this._panels[0].append(c);this._dropFixer(c)}}}this._windowOptions[c.attr("id")]["mode"]=d},hideCloseButton:function(b){a("#"+b).jqxWindow("showCloseButton",false)},showCloseButton:function(b){a("#"+b).jqxWindow("showCloseButton",true)},hideCollapseButton:function(b){a("#"+b).jqxWindow("showCollapseButton",false)},showCollapseButton:function(b){a("#"+b).jqxWindow("showCollapseButton",true)},expandWindow:function(b,c){a("#"+b).jqxWindow("expand",c)},collapseWindow:function(b,c){a("#"+b).jqxWindow("collapse",c)},setWindowProperty:function(c,b,d){a("#"+c).jqxWindow(b,d)},getWindowProperty:function(c,b){return a("#"+c).jqxWindow(b)},setWindowPosition:function(d,b,e){var d=a("#"+d),c=this._getWindowOptions(d);if(c.mode==="floating"){d.css("position","absolute");a(d).jqxWindow("move",b,e,null,false)}},hideAllCloseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCloseButton",false)}},hideAllCollapseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCollapseButton",false)}},showAllCloseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCloseButton",true)}},showAllCollapseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCollapseButton",true)}},pinWindow:function(b){a("#"+b).jqxWindow("draggable",false)},unpinWindow:function(b){a("#"+b).jqxWindow("draggable",true)},setDraggingMode:function(c){var b=a("#"+c);this._prepareForDragging(b);b.fadeTo(0,1)},enableWindowResize:function(b){b=a("#"+b);if(b.css("position")==="absolute"){this._setWindowOption(b,"resizable",true);b.jqxWindow("enableResize",true)}},disableWindowResize:function(b){b=a("#"+b);this._setWindowOption(b,"resizable",false);b.jqxWindow("enableResize",false)},addWindow:function(e,f,d,c){var b="#"+e;a(b).jqxWindow({keyboardNavigation:false,rtl:this.rtl,theme:this.theme,enableResize:false,width:a(b).css("width"),maxWidth:Number.MAX_VALUE});this._panels[0].append(a(b));this._windows.push(a(b));if(f){this._setWindowOption(a(b),"mode",f)}else{this._setWindowOption(a(b),"mode",this.mode)}this._setWindowOption(a(b),"resizable",true);this._setWindowOption(a(b),"size",{width:a(b).width(),height:a(b).height()});if(f=="floating"){a(b).jqxWindow({enableResize:true})}else{a(b).jqxWindow({enableResize:false})}if(this._panels[d]!=null){this._setWindowOption(a(b),"size",{width:this._panels[d].width(),height:this._panels[d].height()})}this._addEventListenersTo(a(b));if(typeof d!=="undefined"&&typeof c!=="undefined"){this.move(e,d,c)}this._dropFixer(a(b))},closeWindow:function(b){a("#"+b).jqxWindow("closeWindow")}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDockPanel","",{});a.extend(a.jqx._jqxDockPanel.prototype,{defineInstance:function(){var b={width:null,height:null,lastchildfill:true,disabled:false,events:["layout"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.addClass(this.toThemeProperty("jqx-dockpanel"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.childrenCount=a(this.host).children().length;this.host.wrapInner('<div style="overflow: hidden; width: 100%; height: 100%;" class="innerContainer"></div>');this.$wrapper=this.host.find(".innerContainer");this.$wrapper.css("position","relative");this.sizeCache=new Array();this.performLayout();a.jqx.utilities.resize(this.host,function(){b.refresh()})},render:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}this.sizeCache=new Array();this.performLayout()},resize:function(c,b){this.width=c;this.height=b;this.render()},performLayout:function(){if(this.disabled){return}var e=this.childrenCount;var d=0;var c=0;var b=0;var h=0;var f=this;var g={width:this.host.width(),height:this.host.height()};if(this.sizeCache.length<this.$wrapper.children().length){a.each(this.$wrapper.children(),function(i){var k=a(this);k.css("position","absolute");var j={width:k.css("width"),height:k.css("height")};f.sizeCache[i]=j})}a.each(this.$wrapper.children(),function(j){var l=this.getAttribute("dock");if(l==undefined){l="left"}if(j==e-1&&f.lastchildfill){l="fill"}var k=a(this);k.css("position","absolute");k.css("width",f.sizeCache[j].width);k.css("height",f.sizeCache[j].height);var i={width:k.outerWidth(),height:k.outerHeight()};var m={x:b,y:h,width:Math.max(0,g.width-(b+d)),height:Math.max(0,g.height-(h+c))};if(j<e){switch(l){case"left":b+=i.width;m.width=i.width;break;case"top":h+=i.height;m.height=i.height;break;case"right":d+=i.width;m.x=Math.max(0,(g.width-d));m.width=i.width;break;case"bottom":c+=i.height;m.y=Math.max(0,(g.height-c));m.height=i.height;break}}k.css("left",m.x);k.css("top",m.y);k.css("width",m.width);k.css("height",m.height)});this._raiseevent(0)},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.host.remove()},_raiseevent:function(g,d,f){if(this.isInitialized!=undefined&&this.isInitialized==true){var c=this.events[g];var e=new a.Event(c);e.previousValue=d;e.currentValue=f;e.owner=this;var b=this.host.trigger(e);return b}},propertyChangedHandler:function(c,d,b,e){if(!this.isInitialized){return}c.render()},refresh:function(){this.render()}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxMaskedInput","",{});a.extend(a.jqx._jqxMaskedInput.prototype,{defineInstance:function(){var b={value:null,mask:"99999",width:null,height:25,textAlign:"left",readOnly:false,cookies:false,promptChar:"_",inputMode:"advanced",rtl:false,disabled:false,events:["valueChanged","textchanged","mousedown","mouseup","keydown","keyup","keypress","change"],aria:{"aria-valuenow":{name:"value",type:"string"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var e=this;e.host.attr({role:"textbox"});e.host.attr("data-role","input");var f=e.host.attr("value");if(f!=undefined&&f!=""){e.value=f}a.jqx.aria(this);a.jqx.aria(this,"aria-multiline",false);a.jqx.aria(this,"aria-readonly",e.readOnly);e.host.addClass(e.toThemeProperty("jqx-input"));e.host.addClass(e.toThemeProperty("jqx-rc-all"));e.host.addClass(e.toThemeProperty("jqx-widget"));e.host.addClass(e.toThemeProperty("jqx-widget-content"));maskEditor=this;if(e.element.nodeName.toLowerCase()=="div"){e.element.innerHTML="";e.maskbox=a("<input autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' type='textarea'/>").appendTo(e.host)}else{e.maskbox=e.host;e.maskbox.attr("autocomplete","off");e.maskbox.attr("autocorrect","off");e.maskbox.attr("autocapitalize","off");e.maskbox.attr("spellcheck",false)}e.maskbox.addClass(e.toThemeProperty("jqx-reset"));e.maskbox.addClass(e.toThemeProperty("jqx-input-content"));e.maskbox.addClass(e.toThemeProperty("jqx-widget-content"));var b=e.host.attr("name");if(b){e.maskbox.attr("name",b)}if(e.rtl){e.maskbox.addClass(e.toThemeProperty("jqx-rtl"))}var d=this;e.propertyChangeMap.disabled=function(g,j,h,k){if(k){g.maskbox.addClass(d.toThemeProperty("jqx-input-disabled"))}else{g.maskbox.removeClass(d.toThemeProperty("jqx-input-disabled"))}};if(e.disabled){e.maskbox.addClass(e.toThemeProperty("jqx-input-disabled"));e.maskbox.attr("disabled",true);e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}e.selectedText="";e.self=this;e.oldValue=e._value();e.items=new Array();e._initializeLiterals();e._render();if(e.value!=null){e.inputValue(e.value.toString())}var d=this;if(e.host.parents("form").length>0){e.host.parents("form").on("reset",function(){setTimeout(function(){d.clearValue()},10)})}e.addHandlers();if(e.cookies){var c=a.jqx.cookie.cookie("maskedInput."+e.element.id);if(c){e.val(c)}}},addHandlers:function(){var d=this;if(a.jqx.mobile.isTouchDevice()){}var b="";var c=function(j,f){var h=String.fromCharCode(f);var k=parseInt(h);var g=true;if(!isNaN(k)){g=true;var e=this.maskbox.val().toString().length;if(e>=this.items.length&&this._selection().length==0){g=false}}if(!j.ctrlKey&&!j.shiftKey&&!j.metaKey){if(f>=65&&f<=90){g=false}}return g};this.addHandler(this.maskbox,"blur",function(e){if(d.inputMode=="simple"){d._exitSimpleInputMode(e,d,false,b);return false}if(d.rtl){d.maskbox.css("direction","ltr")}d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"));if(d.maskbox.val()!=b){d._raiseEvent(7,e);if(d.cookies){a.jqx.cookie.cookie("maskedInput."+d.element.id,d.maskbox.val())}}});this.addHandler(this.maskbox,"focus",function(e){b=d.maskbox.val();if(d.inputMode=="simple"){d.maskbox[0].value=d._getEditValue();a.data(d.maskbox,"simpleInputMode",true);return false}if(d.rtl){d.maskbox.css("direction","rtl")}d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"keydown",function(g){var h=d.readOnly;var f=g.charCode?g.charCode:g.keyCode?g.keyCode:0;if(h||d.disabled){return false}if(d.inputMode!="simple"){var e=d._handleKeyDown(g,f);if(!e){if(g.preventDefault){g.preventDefault()}if(g.stopPropagation){g.stopPropagation()}}return e}else{return c.call(d,g,f)}});this.addHandler(this.host,"keyup",function(f){var g=d.readOnly;var e=f.charCode?f.charCode:f.keyCode?f.keyCode:0;if(g||d.disabled){return true}if(d.inputMode=="simple"){return c.call(d,f,e)}else{if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}});this.addHandler(this.host,"keypress",function(g){var h=d.readOnly;var f=g.charCode?g.charCode:g.keyCode?g.keyCode:0;if(h||d.disabled){return true}if(d.inputMode=="simple"){return c.call(d,g,f)}else{var e=d._handleKeyPress(g,f);if(!e){if(g.preventDefault){g.preventDefault()}if(g.stopPropagation){g.stopPropagation()}}return e}})},focus:function(){try{this.maskbox.focus()}catch(b){}},_exitSimpleInputMode:function(b,n,h,d){if(n==undefined){n=b.data}if(n==null){return}if(h==undefined){if(b.target!=null&&n.element!=null){if((b.target.id!=undefined&&b.target.id.toString().length>0&&n.host.find("#"+b.target.id).length>0)||b.target==n.element){return}}var f=n.host.offset();var e=f.left;var g=f.top;var c=n.host.width();var l=n.host.height();var o=a(b.target).offset();if(o.left>=e&&o.left<=e+c){if(o.top>=g&&o.top<=g+l){return}}}if(n.disabled||n.readOnly){return}var k=a.data(n.maskbox,"simpleInputMode");if(k==null){return}var j=n.maskbox[0].value;n.val(j);a.data(n.maskbox,"simpleInputMode",null);return false},_getString:function(){var c="";for(var b=0;b<this.items.length;b++){var d=this.items[b].character;if((this.items[b].character==this.promptChar)&&(this.promptChar!=this.items[b].defaultCharacter)){c+=this.items[b].defaultCharacter}else{c+=d}}return c},_initializeLiterals:function(){if(this.mask==undefined||this.mask==null){this.items=new Array();return}this.mask=this.mask.toString();var c=this.mask.length;for(var f=0;f<c;f++){var g=this.mask.substring(f,f+1);var h="";var b=false;if(g=="["){for(var d=f;d<c;d++){var e=this.mask.substring(d,d+1);if(e=="]"){break}}h="("+this.mask.substring(f,d+1)+")";f=d;b=true}if(g=="#"){h="(\\d|[+]|[-])";b=true}else{if(g=="9"||g=="0"){h="\\d";b=true}else{if(g=="$"){b=false}else{if(g=="/"||g==":"){b=false}else{if(g=="A"||g=="a"){h="\\w";b=true}else{if(g=="c"||g=="C"){h=".";b=true}else{if(g=="L"||g=="l"){h="([a-zA-Z])";b=true}}}}}}}var l=this;var k=function(o,n,j){k.character=o;k.regex=n;k.canEdit=j;k.defaultCharacter=l.promptChar};if(b){k(this.promptChar,h,b)}else{k(g,h,b)}this.items.push(k)}},setRegex:function(d,e,b,c){if((d==null||d==undefined)||(e==null||e==undefined)){return}if(d<this.items.length){this.items[d].regex=e;if(b!=null&&b!=undefined){this.items[d].canEdit=b}if(c!=null&&c!=undefined){this.items[d].defaultCharacter=c}}},_match:function(c,b){var d=new RegExp(b,"i");return d.test(c)},_raiseEvent:function(j,c){var d=this.events[j];var e={};e.owner=this;var f=c.charCode?c.charCode:c.keyCode?c.keyCode:0;var b=true;var h=this.readOnly;var g=new a.Event(d);g.owner=this;e.value=this.inputValue();e.text=this.maskedValue();g.args=e;if(j<2||j>6){b=this.host.trigger(g)}return b},_handleKeyPress:function(d,b){var c=this._isSpecialKey(b,d);return c},_insertKey:function(c){var d=this._selection();var b=this;if(d.start>=0&&d.start<this.items.length){var e=String.fromCharCode(c);var f=false;a.each(this.items,function(h,l){if(h<d.start){return}var k=b.items[h];if(!k.canEdit){return}if(b._match(e,k.regex)){if(!f&&d.length>0){for(var g=d.start;g<d.end;g++){if(b.items[g].canEdit){b.items[g].character=b.promptChar}}var n=b._getString();b.maskedValue(n);f=true}k.character=e;var n=b._getString();b.maskedValue(n);if(d.start<b.items.length){b._setSelectionStart(h+1)}return false}else{return false}})}},_deleteSelectedText:function(){var c=this._selection();var b=false;if(c.start>0||c.length>0){for(i=c.start;i<c.end;i++){if(i<this.items.length&&this.items[i].canEdit&&this.items[i].character!=this.promptChar){this.items[i].character=this.promptChar;b=true}}var d=this._getString();this.maskedValue(d);return b}},_saveSelectedText:function(){var b=this._selection();var d="";if(b.start>0||b.length>0){for(i=b.start;i<b.end;i++){if(this.items[i].canEdit){d+=this.items[i].character}}}if(window.clipboardData){window.clipboardData.setData("Text",d)}else{var c=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');c.val(d);a("body").append(c);c.select();setTimeout(function(){document.designMode="off";c.select();c.remove()},100)}return d},_pasteSelectedText:function(){var j=this._selection();var l="";var c=0;var h=j.start;var g="";var f=this;var b=function(k){if(k!=f.selectedText&&k.length>0){f.selectedText=k;if(f.selectedText==null||f.selectedText==undefined){return}}if(j.start>=0||j.length>0){for(i=j.start;i<f.items.length;i++){if(f.items[i].canEdit){if(c<f.selectedText.length){f.items[i].character=f.selectedText[c];c++;h=1+i}}}}var n=f._getString();f.maskedValue(n);if(h<f.items.length){f._setSelectionStart(h)}else{f._setSelectionStart(f.items.length)}};if(window.clipboardData){g=window.clipboardData.getData("Text");b(g)}else{var d=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');a("body").append(d);d.select();var e=this;setTimeout(function(){var k=d.val();b(k);d.remove()},100)}},_handleKeyDown:function(k,o){var n=this._selection();if(o>=96&&o<=105){o=o-48}var d=k.ctrlKey||k.metaKey;if((d&&o==97)||(d&&o==65)){return true}if((d&&o==120)||(d&&o==88)){this.selectedText=this._saveSelectedText(k);this._deleteSelectedText(k);if(a.jqx.browser.msie){return false}return true}if((d&&o==99)||(d&&o==67)){this.selectedText=this._saveSelectedText(k);if(a.jqx.browser.msie){return false}return true}if((d&&o==122)||(d&&o==90)){return false}if((d&&o==118)||(d&&o==86)||(k.shiftKey&&o==45)){this._pasteSelectedText();if(a.jqx.browser.msie){return false}return true}if(n.start>=0&&n.start<this.items.length){var g=String.fromCharCode(o);var p=this.items[n.start]}if(o==8){if(n.length==0){for(j=this.items.length-1;j>=0;j--){if(this.items[j].canEdit&&j<n.end&&this.items[j].character!=this.promptChar){this._setSelection(j,j+1);break}}}n=this._selection();var h=this._deleteSelectedText();if(n.start>0||n.length>0){if(n.start<=this.items.length){if(h){this._setSelectionStart(n.start)}else{this._setSelectionStart(n.start-1)}}}return false}if(o==190){var c=n.start;for(var j=c;j<this.items.length;j++){if(this.items[j].character=="."){this._setSelectionStart(j+1);break}}}if(o==191){var c=n.start;for(var j=c;j<this.items.length;j++){if(this.items[j].character=="/"){this._setSelectionStart(j+1);break}}}if(o==189){var c=n.start;for(var j=c;j<this.items.length;j++){if(this.items[j].character=="-"){this._setSelectionStart(j+1);break}}}if(o==46){if(n.length==0){for(var j=0;j<this.items.length;j++){if(this.items[j].canEdit&&j>=n.start&&this.items[j].character!=this.promptChar){this._setSelection(j,j+1);break}}}var b=n;n=this._selection();var f=this._deleteSelectedText();if(n.start>=0||n.length>=0){if(n.start<this.items.length){if(n.length<=1){if(b.end!=n.end){this._setSelectionStart(n.end)}else{this._setSelectionStart(n.end+1)}}else{this._setSelectionStart(n.start)}}}return false}this._insertKey(o);var l=this._isSpecialKey(o,k);return l},_isSpecialKey:function(b,c){if(b==189||b==9||b==13||b==35||b==36||b==37||b==39||b==46){return true}if((b===16&&c.shiftKey)||c.ctrlKey||c.metaKey){return true}return false},_selection:function(){if("selectionStart" in this.maskbox[0]){var f=this.maskbox[0];var g=f.selectionEnd-f.selectionStart;return{start:f.selectionStart,end:f.selectionEnd,length:g,text:f.value}}else{var c=document.selection.createRange();if(c==null){return{start:0,end:f.value.length,length:0}}var b=this.maskbox[0].createTextRange();var d=b.duplicate();b.moveToBookmark(c.getBookmark());d.setEndPoint("EndToStart",b);var g=c.text.length;return{start:d.text.length,end:d.text.length+c.text.length,length:g,text:c.text}}},_setSelection:function(d,b){if("selectionStart" in this.maskbox[0]){this.maskbox[0].focus();this.maskbox[0].setSelectionRange(d,b)}else{var c=this.maskbox[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",d);c.select()}},_setSelectionStart:function(b){this._setSelection(b,b)},refresh:function(b){if(!b){this._render()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_render:function(){var c=parseInt(this.host.css("border-left-width"));var g=parseInt(this.host.css("border-left-width"));var f=parseInt(this.host.css("border-left-width"));var d=parseInt(this.host.css("border-left-width"));var j=parseInt(this.host.css("height"))-f-d;var e=parseInt(this.host.css("width"))-c-g;if(this.width!=null&&this.width.toString().indexOf("px")!=-1){e=this.width}else{if(this.width!=undefined&&!isNaN(this.width)){e=this.width}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){j=this.height}else{if(this.height!=undefined&&!isNaN(this.height)){j=this.height}}e=parseInt(e);j=parseInt(j);if(this.maskbox[0]!=this.element){this.maskbox.css({"border-left-width":0,"border-right-width":0,"border-bottom-width":0,"border-top-width":0})}this.maskbox.css("text-align",this.textAlign);var k=this.maskbox.css("font-size");if(!isNaN(j)){this.maskbox.css("height",parseInt(k)+4+"px")}if(!isNaN(e)){this.maskbox.css("width",e-2)}var h=parseInt(j)-2*parseInt(f)-2*parseInt(d)-parseInt(k);if(isNaN(h)){h=0}if(!isNaN(j)){this.host.height(j)}if(!isNaN(e)){this.host.width(e)}if(this.maskbox[0]!=this.element){var b=h/2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){b=h/4}this.maskbox.css("padding-right","0px");this.maskbox.css("padding-left","0px");this.maskbox.css("padding-top",b);this.maskbox.css("padding-bottom",h/2)}this.maskbox[0].value=this._getString();if(this.width){if(this.width.toString().indexOf("%")>=0){this.element.style.width=this.width}if(this.height.toString().indexOf("%")>=0){this.element.style.height=this.height}}},destroy:function(){this.host.remove()},maskedValue:function(b){if(b===undefined){return this._value()}this.value=b;this._refreshValue();if(this.oldValue!==b){this._raiseEvent(1,b);this.oldValue=b;this._raiseEvent(0,b)}return this},_value:function(){var b=this.maskbox.val();return b},propertyChangedHandler:function(c,d,b,e){if(this.isInitialized==undefined||this.isInitialized==false){return}if(d=="rtl"){if(c.rtl){c.maskbox.addClass(c.toThemeProperty("jqx-rtl"))}else{c.maskbox.removeClass(c.toThemeProperty("jqx-rtl"))}}if(d==="value"){if(e==undefined||e==null){e=""}if(e===""){this.clear()}else{e=e.toString();this.inputValue(e)}c._raiseEvent(7,e)}if(d==="theme"){a.jqx.utilities.setTheme(b,e,this.host)}if(d=="disabled"){if(e){c.maskbox.addClass(c.toThemeProperty("jqx-input-disabled"));c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"));c.maskbox.attr("disabled",true)}else{c.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));c.host.removeClass(this.toThemeProperty("jqx-input-disabled"));c.maskbox.attr("disabled",false)}a.jqx.aria(c,"aria-disabled",e)}if(d=="readOnly"){this.readOnly=e}if(d=="promptChar"){for(i=0;i<c.items.length;i++){if(c.items[i].character==c.promptChar){c.items[i].character=e;c.items[i].defaultCharacter=e}}c.promptChar=e}if(d=="textAlign"){c.maskbox.css("text-align",e);c.textAlign=e}if(d=="mask"){c.mask=e;c.items=new Array();c._initializeLiterals();c.value=c._getString();c._refreshValue()}if(d=="width"){c.width=e;c._render()}else{if(d=="height"){c.height=e;c._render()}}},_value:function(){var b=this.value;return b},_getEditStringLength:function(){var b="";for(i=0;i<this.items.length;i++){if(this.items[i].canEdit){b+=this.items[i].character}}return b.length},_getEditValue:function(){var b="";for(i=0;i<this.items.length;i++){if(this.items[i].canEdit&&this.items[i].character!=this.promptChar){b+=this.items[i].character}}return b},parseValue:function(e){if(e==undefined||e==null){return null}var c=e.toString();var f="";var b=0;for(m=0;m<c.length;m++){var d=c.substring(m,m+1);for(i=b;i<this.items.length;i++){if(this.items[i].canEdit&&this._match(d,this.items[i].regex)){f+=d;b=i;break}}}return f},clear:function(){this.clearValue()},clearValue:function(){this.inputValue("",true)},val:function(b){if(b!=undefined&&typeof b!="object"){if(typeof b==="number"&&isFinite(b)){b=b.toString()}this.maskedValue(b)}return this.maskbox[0].value},inputValue:function(g,c){if(g==undefined||g==null){var f="";for(var e=0;e<this.items.length;e++){if(this.items[e].canEdit){f+=this.items[e].character}}return f}else{var b=0;g=g.toString();for(var e=0;e<this.items.length;e++){if(this.items[e].canEdit){if(this._match(g.substring(b,b+1),this.items[e].regex)){this.items[e].character=g.substring(b,b+1);b++}else{if(c){this.items[e].character=this.promptChar;b++}}}}var d=this._getString();this.maskedValue(d);return this.inputValue()}},_refreshValue:function(){var d=this.maskedValue();var b=0;for(var c=0;c<this.items.length;c++){if(d.length>b){if(this.items[c].canEdit&&this.items[c].character!=d[b]){if((this._match(d[b],this.items[c].regex)||d[b]==this.promptChar)&&d[b].length==1){this.items[c].character=d[b]}}b++}}this.value=this._getString();d=this.value;this.maskbox[0].value=d;a.jqx.aria(this,"aria-valuenow",d)}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxMenu","",{});a.extend(a.jqx._jqxMenu.prototype,{defineInstance:function(){var b={items:new Array(),mode:"horizontal",width:null,height:null,minimizeWidth:"auto",easing:"easeInOutSine",animationShowDuration:200,animationHideDuration:200,autoCloseInterval:0,animationHideDelay:100,animationShowDelay:100,menuElements:new Array(),autoSizeMainItems:false,autoCloseOnClick:true,autoCloseOnMouseLeave:true,enableRoundedCorners:true,disabled:false,autoOpenPopup:true,enableHover:true,autoOpen:true,autoGenerate:true,clickToOpen:false,showTopLevelArrows:false,touchMode:"auto",source:null,popupZIndex:17000,rtl:false,keyboardNavigation:false,lockFocus:false,title:"",events:["shown","closed","itemclick","initialized","open","close"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.attr("role","menubar");a.jqx.utilities.resize(this.host,function(){b.refresh()},false,this.mode!="popup");if(this.minimizeWidth!="auto"&&this.minimizeWidth!=null&&this.width&&this.width.toString().indexOf("%")==-1){a(window).resize(function(){b.refresh()})}this.host.css("outline","none");if(this.source){if(this.source!=null){var d=this.loadItems(this.source);this.element.innerHTML=d}}this._tmpHTML=this.element.innerHTML;if(this.element.innerHTML.indexOf("UL")){var e=this.host.find("ul:first");if(e.length>0){this._createMenu(e[0])}}this.host.data("autoclose",{});this._render();this.setSize();if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.host.attr("hideFocus",true)}},focus:function(){try{this.host.focus();if(this.mode==="popup"){var d=this.host.closest("div.jqx-menu-wrapper");d.focus()}if(this.keyboardNavigation){var c=this;var e=function(){if(!a.jqx.isHidden(a(c.items[0].element))){a(c.items[0].element).addClass(c.toThemeProperty("jqx-fill-state-focus"));c.activeItem=c.items[0]}else{var f=c._nextVisibleItem(c.items[0],0);if(f){a(f.element).addClass(c.toThemeProperty("jqx-fill-state-focus"));c.activeItem=f}}};if(!this.activeItem){e()}else{if(!a.jqx.isHidden(a(this.activeItem.element))){a(this.activeItem.element).addClass(this.toThemeProperty("jqx-fill-state-focus"))}else{a(this.activeItem.element).removeClass(this.toThemeProperty("jqx-fill-state-focus"));e()}}}}catch(b){}},loadItems:function(c,e){if(c==null){return}if(c.length==0){return""}var b=this;this.items=new Array();var d='<ul class="jqx-menu-ul">';if(e){d='<ul class="jqx-menu-ul" style="width:'+e+';">'}a.map(c,function(f){if(f==undefined){return null}d+=b._parseItem(f)});d+="</ul>";return d},_parseItem:function(f){var c="";if(f==undefined){return null}var b=f.label;if(!f.label&&f.html){b=f.html}if(!b){b="Item"}if(typeof f==="string"){b=f}var e=false;if(f.selected!=undefined&&f.selected){e=true}var d=false;if(f.disabled!=undefined&&f.disabled){d=true}c+="<li";if(d){c+=' item-disabled="true" '}if(f.label&&!f.html){c+=' item-label="'+b+'" '}if(f.value!=null){c+=' item-value="'+f.value+'" '}if(f.id!=undefined){c+=' id="'+f.id+'" '}c+=">"+b;if(f.items){if(f.subMenuWidth){c+=this.loadItems(f.items,f.subMenuWidth)}else{c+=this.loadItems(f.items)}}c+="</li>";return c},setSize:function(){if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height)}else{if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}}if(this.height===null){this.host.height("auto")}var g=this;if(this.minimizeWidth!=null&&this.mode!="popup"){var f=a(window).width();if(!a.jqx.response){var e=false;if(navigator.userAgent.match(/Windows|Linux|MacOS/)){var b=navigator.userAgent.indexOf("Windows Phone")>=0||navigator.userAgent.indexOf("WPDesktop")>=0||navigator.userAgent.indexOf("IEMobile")>=0||navigator.userAgent.indexOf("ZuneWP7")>=0;if(!b){e=true}}var c=this.minimizeWidth;if(e&&this.minimizeWidth=="auto"){return}}if(this.minimizeWidth=="auto"&&a.jqx.response){var d=new a.jqx.response();if(d.device.type=="Phone"||d.device.type=="Tablet"){if(!this.minimized){this.minimize()}}}else{if((f<c)&&!this.minimized){this.minimize()}else{if(this.minimized&&f>=c){this.restore()}}}}},minimize:function(){if(this.minimized){return}var e=this;this.host.addClass(this.toThemeProperty("jqx-menu-minimized"));this.minimized=true;this._tmpMode=this.mode;this.mode="simple";var h=this.host.closest("div.jqx-menu-wrapper");h.remove();a("#menuWrapper"+this.element.id).remove();a.each(this.items,function(){var k=this;var j=a(k.element);var i=a(k.subMenuElement);var l=i.closest("div.jqx-menu-popup");l.remove()});if(this.source){var d=this.loadItems(this.source);this.element.innerHTML=d;this._tmpHTML=this.element.innerHTML}this.element.innerHTML=this._tmpHTML;if(this.element.innerHTML.indexOf("UL")){var g=this.host.find("ul:first");if(g.length>0){this._createMenu(g[0])}}this._render();var c=this.host.find("ul:first");c.wrap('<div class="jqx-menu-wrapper" style="z-index:'+this.popupZIndex+'; padding: 0px; display: none; margin: 0px; height: auto; width: auto; position: absolute; top: 0; left: 0; display: block; visibility: visible;"></div>');var h=c.closest("div.jqx-menu-wrapper");h[0].id="menuWrapper"+this.element.id;h.detach();h.appendTo(a(document.body));h.addClass(this.toThemeProperty("jqx-widget"));h.addClass(this.toThemeProperty("jqx-menu"));h.addClass(this.toThemeProperty("jqx-menu-minimized"));h.addClass(this.toThemeProperty("jqx-widget-header"));c.children().hide();h.hide();h.find("ul").addClass(this.toThemeProperty("jqx-menu-ul-minimized"));this.minimizedItem=a("<div></div>");this.minimizedItem.addClass(this.toThemeProperty("jqx-item"));this.minimizedItem.addClass(this.toThemeProperty("jqx-menu-item-top"));this.addHandler(h,"keydown",function(i){return e.handleKeyDown(i)});this.minimizedItem.addClass(this.toThemeProperty("jqx-menu-minimized-button"));this.minimizedItem.prependTo(this.host);this.titleElement=a("<div>"+this.title+"</div>");this.titleElement.addClass(this.toThemeProperty("jqx-item"));this.titleElement.addClass(this.toThemeProperty("jqx-menu-title"));this.titleElement.prependTo(this.host);a("<div style='clear:both;'></div>").insertAfter(this.minimizedItem);e.minimizedHidden=true;var b=function(j){e.minimizedHidden=true;e.minimizedItem.show();var i=false;if(e.minimizedItem.css("float")=="right"){i=true}h.animate({left:!i?-h.outerWidth():e.host.coord().left+e.host.width()+h.width(),opacity:0},e.animationHideDuration,function(){h.find("ul:first").children().hide();h.hide()})};var f=function(k){if(e.minimizedHidden){h.find("ul:first").children().show();e.minimizedHidden=false;h.show();h.css("opacity",0);h.css("left",-h.outerWidth());var j=false;var i=h.width();if(e.minimizedItem.css("float")=="right"){h.css("left",e.host.coord().left+e.host.width()+i);j=true}h.css("top",e.host.coord().top+e.host.height());h.animate({left:!j?e.host.coord().left:e.host.coord().left+e.host.width()-i,opacity:0.95},e.animationShowDuration,function(){})}else{b(k)}e._raiseEvent("2",{type:"mouse",item:e.minimizedItem[0],event:k});e.setSize()};this.addHandler(a(window),"orientationchange.jqxmenu"+this.element.id,function(i){setTimeout(function(){if(!e.minimizedHidden){var j=h.width();var k=false;var j=h.width();if(e.minimizedItem.css("float")=="right"){k=true}h.css("top",e.host.coord().top+e.host.height());h.css({left:!k?e.host.coord().left:e.host.coord().left+e.host.width()-j})}},25)});this.addHandler(this.minimizedItem,"click",function(i){f(i)})},restore:function(){if(!this.minimized){return}this.host.find("ul").removeClass(this.toThemeProperty("jqx-menu-ul-minimized"));this.host.removeClass(this.toThemeProperty("jqx-menu-minimized"));this.minimized=false;this.mode=this._tmpMode;if(this.minimizedItem){this.minimizedItem.remove()}var d=a("#menuWrapper"+this.element.id);d.remove();if(this.source){var b=this.loadItems(this.source);this.element.innerHTML=b;this._tmpHTML=b}this.element.innerHTML=this._tmpHTML;if(this.element.innerHTML.indexOf("UL")){var c=this.host.find("ul:first");if(c.length>0){this._createMenu(c[0])}}this.setSize();this._render()},isTouchDevice:function(){if(this._isTouchDevice!=undefined){return this._isTouchDevice}var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){b=true}else{if(this.touchMode==false){b=false}}if(b){this.host.addClass(this.toThemeProperty("jqx-touch"));a(".jqx-menu-item").addClass(this.toThemeProperty("jqx-touch"))}this._isTouchDevice=b;return b},refresh:function(b){if(!b){this.setSize()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_closeAll:function(f){var d=f!=null?f.data:this;var b=d.items;a.each(b,function(){var e=this;if(e.hasItems==true){if(e.isOpen){d._closeItem(d,e)}}});if(d.mode=="popup"){if(f!=null){var c=d._isRightClick(f);if(!c){d.close()}}}},closeItem:function(e){if(e==null){return false}var b=e;var c=document.getElementById(b);var d=this;a.each(d.items,function(){var f=this;if(f.isOpen==true&&f.element==c){d._closeItem(d,f);if(f.parentId){d.closeItem(f.parentId)}}});return true},openItem:function(e){if(e==null){return false}var b=e;var c=document.getElementById(b);var d=this;a.each(d.items,function(){var f=this;if(f.isOpen==false&&f.element==c){d._openItem(d,f);if(f.parentId){d.openItem(f.parentId)}}});return true},_getClosedSubMenuOffset:function(c){var b=a(c.subMenuElement);var f=-b.outerHeight();var e=-b.outerWidth();var d=c.level==0&&this.mode=="horizontal";if(d){e=0}else{f=0}switch(c.openVerticalDirection){case"up":case"center":f=b.outerHeight();break}switch(c.openHorizontalDirection){case this._getDir("left"):if(d){e=0}else{e=b.outerWidth()}break;case"center":if(d){e=0}else{e=b.outerWidth()}break}return{left:e,top:f}},_closeItem:function(l,o,g,c){if(l==null||o==null){return false}var j=a(o.subMenuElement);var b=o.level==0&&this.mode=="horizontal";var f=this._getClosedSubMenuOffset(o);var m=f.top;var e=f.left;var i=a(o.element);var k=j.closest("div.jqx-menu-popup");if(k!=null){var h=l.animationHideDelay;if(c==true){h=0}if(j.data("timer")&&j.data("timer").show!=null){clearTimeout(j.data("timer").show);j.data("timer").show=null}var n=function(){o.isOpen=false;if(b){j.stop().animate({top:m},l.animationHideDuration,function(){a(o.element).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.element).removeClass(l.toThemeProperty("jqx-menu-item-top-selected"));a(o.element).removeClass(l.toThemeProperty("jqx-rc-b-expanded"));k.removeClass(l.toThemeProperty("jqx-rc-t-expanded"));var p=a(o.arrow);if(p.length>0&&l.showTopLevelArrows){p.removeClass();if(o.openVerticalDirection=="down"){p.addClass(l.toThemeProperty("jqx-menu-item-arrow-down"));p.addClass(l.toThemeProperty("jqx-icon-arrow-down"))}else{p.addClass(l.toThemeProperty("jqx-menu-item-arrow-up"));p.addClass(l.toThemeProperty("jqx-icon-arrow-up"))}}a.jqx.aria(a(o.element),"aria-expanded",false);k.css({display:"none"});if(l.animationHideDuration==0){j.css({top:m})}l._raiseEvent("1",o)})}else{if(!a.jqx.browser.msie){}j.stop().animate({left:e},l.animationHideDuration,function(){if(l.animationHideDuration==0){j.css({left:e})}if(o.level>0){a(o.element).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.element).removeClass(l.toThemeProperty("jqx-menu-item-selected"));var p=a(o.arrow);if(p.length>0){p.removeClass();if(o.openHorizontalDirection!="left"){p.addClass(l.toThemeProperty("jqx-menu-item-arrow-"+l._getDir("right")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("right")))}else{p.addClass(l.toThemeProperty("jqx-menu-item-arrow-"+l._getDir("left")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("left")))}}}else{a(o.element).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.element).removeClass(l.toThemeProperty("jqx-menu-item-top-selected"));var p=a(o.arrow);if(p.length>0){p.removeClass();if(o.openHorizontalDirection!="left"){p.addClass(l.toThemeProperty("jqx-menu-item-arrow-top-"+l._getDir("right")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("right")))}else{p.addClass(l.toThemeProperty("jqx-menu-item-arrow-top-"+l._getDir("left")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("left")))}}}a.jqx.aria(a(o.element),"aria-expanded",false);k.css({display:"none"});l._raiseEvent("1",o)})}};if(h>0){if(j.data("timer")){j.data("timer").hide=setTimeout(function(){n()},h)}}else{n()}if(g!=undefined&&g){var d=j.children();a.each(d,function(){if(l.menuElements[this.id]&&l.menuElements[this.id].isOpen){var p=a(l.menuElements[this.id].subMenuElement);l._closeItem(l,l.menuElements[this.id],true,true)}})}}},getSubItems:function(i,h){if(i==null){return false}var g=this;var c=new Array();if(h!=null){a.extend(c,h)}var d=i;var f=this.menuElements[d];var b=a(f.subMenuElement);var e=b.find(".jqx-menu-item");a.each(e,function(){c[this.id]=g.menuElements[this.id];var j=g.getSubItems(this.id,c);a.extend(c,j)});return c},disable:function(g,d){if(g==null){return}var c=g;var f=this;if(this.menuElements[c]){var e=this.menuElements[c];e.disabled=d;var b=a(e.element);e.element.disabled=d;a.each(b.children(),function(){this.disabled=d});if(d){b.addClass(f.toThemeProperty("jqx-menu-item-disabled"));b.addClass(f.toThemeProperty("jqx-fill-state-disabled"))}else{b.removeClass(f.toThemeProperty("jqx-menu-item-disabled"));b.removeClass(f.toThemeProperty("jqx-fill-state-disabled"))}}},getItem:function(c){if(this.menuElements[c]){var b=this.menuElements[c];return b}return null},disableItem:function(b){this.disable(b,true)},hideItem:function(c){if(this.menuElements[c]){var b=this.menuElements[c];a(b.element).hide()}},showItem:function(c){if(this.menuElements[c]){var b=this.menuElements[c];a(b.element).show()}},enableItem:function(b){this.disable(b,false)},_setItemProperty:function(g,c,f){if(g==null){return}var b=g;var e=this;if(this.menuElements[b]){var d=this.menuElements[b];if(d[c]){d[c]=f}}},setItemOpenDirection:function(d,c,e){if(d==null){return}var j=d;var g=this;var f=a.jqx.browser.msie&&a.jqx.browser.version<8;if(this.menuElements[j]){var i=this.menuElements[j];if(c!=null){i.openHorizontalDirection=c;if(i.hasItems&&i.level>0){var h=a(i.element);if(h!=undefined){var b=a(i.arrow);if(i.arrow==null){b=a('<span id="arrow'+h[0].id+'"></span>');if(!f){b.prependTo(h)}else{b.appendTo(h)}i.arrow=b[0]}b.removeClass();if(i.openHorizontalDirection=="left"){b.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("left")));b.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("left")))}else{b.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("right")));b.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")))}b.css("visibility","visible");if(!f){b.css("display","block");b.css("float","right")}else{b.css("display","inline-block");b.css("float","none")}}}}if(e!=null){i.openVerticalDirection=e;var b=a(i.arrow);var h=a(i.element);if(!g.showTopLevelArrows){return}if(h!=undefined){if(i.arrow==null){b=a('<span id="arrow'+h[0].id+'"></span>');if(!f){b.prependTo(h)}else{b.appendTo(h)}i.arrow=b[0]}b.removeClass();if(i.openVerticalDirection=="down"){b.addClass(g.toThemeProperty("jqx-menu-item-arrow-down"));b.addClass(g.toThemeProperty("jqx-icon-arrow-down"))}else{b.addClass(g.toThemeProperty("jqx-menu-item-arrow-up"));b.addClass(g.toThemeProperty("jqx-icon-arrow-up"))}b.css("visibility","visible");if(!f){b.css("display","block");b.css("float","right")}else{b.css("display","inline-block");b.css("float","none")}}}}},_getSiblings:function(d){var e=new Array();var b=0;for(var c=0;c<this.items.length;c++){if(this.items[c]==d){continue}if(this.items[c].parentId==d.parentId&&this.items[c].hasItems){e[b++]=this.items[c]}}return e},_openItem:function(s,r,q){if(s==null||r==null){return false}if(r.isOpen){return false}if(r.disabled){return false}if(s.disabled){return false}var l=s.popupZIndex;if(q!=undefined){l=q}var e=s.animationHideDuration;s.animationHideDuration=0;s._closeItem(s,r,true,true);s.animationHideDuration=e;a(r.element).focus();var f=[5,5];var t=a(r.subMenuElement);if(t!=null){t.stop()}if(t.data("timer")&&t.data("timer").hide!=null){clearTimeout(t.data("timer").hide)}var o=t.closest("div.jqx-menu-popup");var h=a(r.element);var i=r.level==0?this._getOffset(r.element):h.position();if(r.level>0&&this.hasTransform){var p=parseInt(h.coord().top)-parseInt(this._getOffset(r.element).top);i.top+=p}if(r.level==0&&this.mode=="popup"){i=h.coord()}var j=r.level==0&&this.mode=="horizontal";var b=j?i.left:this.menuElements[r.parentId]!=null&&this.menuElements[r.parentId].subMenuElement!=null?parseInt(a(a(this.menuElements[r.parentId].subMenuElement).closest("div.jqx-menu-popup")).outerWidth())-f[0]:parseInt(t.outerWidth());o.css({visibility:"visible",display:"block",left:b,top:j?i.top+h.outerHeight():i.top,zIndex:l});t.css("display","block");if(this.mode!="horizontal"&&r.level==0){var d=this._getOffset(this.element);o.css("left",-1+d.left+this.host.outerWidth());t.css("left",-t.outerWidth())}else{var c=this._getClosedSubMenuOffset(r);t.css("left",c.left);t.css("top",c.top)}o.css({height:parseInt(t.outerHeight())+parseInt(f[1])+"px"});var n=0;var g=0;switch(r.openVerticalDirection){case"up":if(j){t.css("top",t.outerHeight());n=f[1];var k=parseInt(t.parent().css("padding-bottom"));if(isNaN(k)){k=0}if(k>0){o.addClass(this.toThemeProperty("jqx-menu-popup-clear"))}t.css("top",t.outerHeight()-k);o.css({display:"block",top:i.top-o.outerHeight(),zIndex:l})}else{n=f[1];t.css("top",t.outerHeight());o.css({display:"block",top:i.top-o.outerHeight()+f[1]+h.outerHeight(),zIndex:l})}break;case"center":if(j){t.css("top",0);o.css({display:"block",top:i.top-o.outerHeight()/2+f[1],zIndex:l})}else{t.css("top",0);o.css({display:"block",top:i.top+h.outerHeight()/2-o.outerHeight()/2+f[1],zIndex:l})}break}switch(r.openHorizontalDirection){case this._getDir("left"):if(j){o.css({left:i.left-(o.outerWidth()-h.outerWidth()-f[0])})}else{g=0;t.css("left",o.outerWidth());o.css({left:i.left-(o.outerWidth())+2*r.level})}break;case"center":if(j){o.css({left:i.left-(o.outerWidth()/2-h.outerWidth()/2-f[0]/2)})}else{o.css({left:i.left-(o.outerWidth()/2-h.outerWidth()/2-f[0]/2)});t.css("left",o.outerWidth())}break}if(j){if(parseInt(t.css("top"))==n){r.isOpen=true;return}}else{if(parseInt(t.css("left"))==g){r.isOpen==true;return}}a.each(s._getSiblings(r),function(){s._closeItem(s,this,true,true)});var m=a.data(s.element,"animationHideDelay");s.animationHideDelay=m;if(this.autoCloseInterval>0){if(this.host.data("autoclose")!=null&&this.host.data("autoclose").close!=null){clearTimeout(this.host.data("autoclose").close)}if(this.host.data("autoclose")!=null){this.host.data("autoclose").close=setTimeout(function(){s._closeAll()},this.autoCloseInterval)}}if(t.data("timer")){t.data("timer").show=setTimeout(function(){if(o!=null){if(j){t.stop();t.css("left",g);if(!a.jqx.browser.msie){}h.addClass(s.toThemeProperty("jqx-fill-state-pressed"));h.addClass(s.toThemeProperty("jqx-menu-item-top-selected"));if(r.openVerticalDirection=="down"){a(r.element).addClass(s.toThemeProperty("jqx-rc-b-expanded"));o.addClass(s.toThemeProperty("jqx-rc-t-expanded"))}else{a(r.element).addClass(s.toThemeProperty("jqx-rc-t-expanded"));o.addClass(s.toThemeProperty("jqx-rc-b-expanded"))}var u=a(r.arrow);if(u.length>0&&s.showTopLevelArrows){u.removeClass();if(r.openVerticalDirection=="down"){u.addClass(s.toThemeProperty("jqx-menu-item-arrow-down-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-down"))}else{u.addClass(s.toThemeProperty("jqx-menu-item-arrow-up-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-up"))}}if(s.animationShowDuration==0){t.css({top:n});r.isOpen=true;s._raiseEvent("0",r);a.jqx.aria(a(r.element),"aria-expanded",true)}else{t.animate({top:n},s.animationShowDuration,s.easing,function(){r.isOpen=true;a.jqx.aria(a(r.element),"aria-expanded",true);s._raiseEvent("0",r)})}}else{t.stop();t.css("top",n);if(!a.jqx.browser.msie){}if(r.level>0){h.addClass(s.toThemeProperty("jqx-fill-state-pressed"));h.addClass(s.toThemeProperty("jqx-menu-item-selected"));var u=a(r.arrow);if(u.length>0){u.removeClass();if(r.openHorizontalDirection!="left"){u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("right")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("right")))}else{u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("left")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("left")))}}}else{h.addClass(s.toThemeProperty("jqx-fill-state-pressed"));h.addClass(s.toThemeProperty("jqx-menu-item-top-selected"));var u=a(r.arrow);if(u.length>0){u.removeClass();if(r.openHorizontalDirection!="left"){u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("right")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("right")))}else{u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("left")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("left")))}}}if(!a.jqx.browser.msie){}if(s.animationShowDuration==0){t.css({left:g});s._raiseEvent("0",r);r.isOpen=true;a.jqx.aria(a(r.element),"aria-expanded",true)}else{t.animate({left:g},s.animationShowDuration,s.easing,function(){s._raiseEvent("0",r);r.isOpen=true;a.jqx.aria(a(r.element),"aria-expanded",true)})}}}},this.animationShowDelay)}},_getDir:function(b){switch(b){case"left":return !this.rtl?"left":"right";case"right":return this.rtl?"left":"right"}return"left"},_applyOrientation:function(i,d){var g=this;var f=0;g.host.removeClass(g.toThemeProperty("jqx-menu-horizontal"));g.host.removeClass(g.toThemeProperty("jqx-menu-vertical"));g.host.removeClass(g.toThemeProperty("jqx-menu"));g.host.removeClass(g.toThemeProperty("jqx-widget"));g.host.addClass(g.toThemeProperty("jqx-widget"));g.host.addClass(g.toThemeProperty("jqx-menu"));if(i!=undefined&&d!=undefined&&d=="popup"){if(g.host.parent().length>0&&g.host.parent().parent().length>0&&g.host.parent().parent()[0]==document.body){var h=a.data(document.body,"jqxMenuOldHost"+g.element.id);if(h!=null){var e=g.host.closest("div.jqx-menu-wrapper");e.remove();e.appendTo(h);g.host.css("display","block");g.host.css("visibility","visible");e.css("display","block");e.css("visibility","visible")}}}else{if(i==undefined&&d==undefined){a.data(document.body,"jqxMenuOldHost"+g.element.id,g.host.parent()[0])}}if(g.autoOpenPopup){if(g.mode=="popup"){g.addHandler(a(document),"contextmenu."+g.element.id,function(j){return false});g.addHandler(a(document),"mousedown.menu"+g.element.id,function(j){g._openContextMenu(j)})}else{g.removeHandler(a(document),"contextmenu."+g.element.id);g.removeHandler(a(document),"mousedown.menu"+g.element.id)}}else{g.removeHandler(a(document),"contextmenu."+g.element.id);g.removeHandler(a(document),"mousedown.menu"+g.element.id);g.addHandler(a(document),"contextmenu."+g.element.id,function(j){if(j.target&&j.target.className.indexOf("jqx-menu")>=0){return false}})}if(g.rtl){g.host.addClass(g.toThemeProperty("jqx-rtl"))}switch(g.mode){case"horizontal":g.host.addClass(g.toThemeProperty("jqx-widget-header"));g.host.addClass(g.toThemeProperty("jqx-menu-horizontal"));a.each(g.items,function(){var l=this;$element=a(l.element);var k=a(l.arrow);k.removeClass();if(l.hasItems&&l.level>0){var k=a('<span style="border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');k.prependTo($element);k.css("float",g._getDir("right"));k.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("right")));k.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")));l.arrow=k[0]}if(l.level==0){a(l.element).css("float",g._getDir("left"));if(!l.ignoretheme&&l.hasItems&&g.showTopLevelArrows){var k=a('<span style="border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');var j=a.jqx.browser.msie&&a.jqx.browser.version<8;if(l.arrow==null){if(!j){k.prependTo($element)}else{k.appendTo($element)}}else{k=a(l.arrow)}if(l.openVerticalDirection=="down"){k.addClass(g.toThemeProperty("jqx-menu-item-arrow-down"));k.addClass(g.toThemeProperty("jqx-icon-arrow-down"))}else{k.addClass(g.toThemeProperty("jqx-menu-item-arrow-up"));k.addClass(g.toThemeProperty("jqx-icon-arrow-up"))}k.css("visibility","visible");if(!j){k.css("display","block");k.css("float","right")}else{k.css("display","inline-block")}l.arrow=k[0]}else{if(!l.ignoretheme&&l.hasItems&&!g.showTopLevelArrows){if(l.arrow!=null){var k=a(l.arrow);k.remove();l.arrow=null}}}f=Math.max(f,$element.height())}});break;case"vertical":case"popup":case"simple":g.host.addClass(g.toThemeProperty("jqx-menu-vertical"));a.each(g.items,function(){var k=this;$element=a(k.element);if(k.hasItems&&!k.ignoretheme){if(k.arrow){a(k.arrow).remove()}if(g.mode=="simple"){return true}var j=a('<span style="border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');j.prependTo($element);j.css("float","right");if(k.level==0){j.addClass(g.toThemeProperty("jqx-menu-item-arrow-top-"+g._getDir("right")));j.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")))}else{j.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("right")));j.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")))}k.arrow=j[0]}$element.css("float","none")});if(g.mode=="popup"){g.host.addClass(g.toThemeProperty("jqx-widget-content"));g.host.wrap('<div tabindex=0 class="jqx-menu-wrapper" style="z-index:'+g.popupZIndex+'; border: none; background-color: transparent; padding: 0px; margin: 0px; position: absolute; top: 0; left: 0; display: block; visibility: visible;"></div>');var e=g.host.closest("div.jqx-menu-wrapper");g.host.addClass(g.toThemeProperty("jqx-popup"));e[0].id="menuWrapper"+g.element.id;e.appendTo(a(document.body));g.addHandler(e,"keydown",function(j){return g.handleKeyDown(j)})}else{g.host.addClass(g.toThemeProperty("jqx-widget-header"))}if(g.mode=="popup"){var b=g.host.height();g.host.css("position","absolute");g.host.css("top","0");g.host.css("left","0");if(g.mode!="simple"){g.host.height(b);g.host.css("display","none")}}break}var c=g.isTouchDevice();if(g.autoCloseOnClick){g.removeHandler(a(document),"mousedown.menu"+g.element.id,g._closeAfterClick);g.addHandler(a(document),"mousedown.menu"+g.element.id,g._closeAfterClick,g);if(c){g.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+".menu"+g.element.id,g._closeAfterClick,g);g.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+".menu"+g.element.id,g._closeAfterClick,g)}}},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},_getOffset:function(c){var e=a.jqx.mobile.isSafariMobileBrowser();var i=a(c).coord(true);var h=i.top;var g=i.left;if(a("body").css("border-top-width")!="0px"){h=parseInt(h)+this._getBodyOffset().top}if(a("body").css("border-left-width")!="0px"){g=parseInt(g)+this._getBodyOffset().left}var d=a.jqx.mobile.isWindowsPhone();var f=a.jqx.mobile.isTouchDevice();if(this.hasTransform||(e!=null&&e)||d||f){var b={left:a.jqx.mobile.getLeftPos(c),top:a.jqx.mobile.getTopPos(c)};return b}else{return{left:g,top:h}}},_isRightClick:function(c){var b;if(!c){var c=window.event}if(c.which){b=(c.which==3)}else{if(c.button){b=(c.button==2)}}return b},_openContextMenu:function(d){var c=this;var b=c._isRightClick(d);if(b){c.open(parseInt(d.clientX)+5,parseInt(d.clientY)+5)}},close:function(){var c=this;var d=a.data(this.element,"contextMenuOpened"+this.element.id);if(d){var b=this.host;a.each(c.items,function(){var e=this;if(e.hasItems){c._closeItem(c,e)}});a.each(c.items,function(){var e=this;if(e.isOpen==true){$submenu=a(e.subMenuElement);var f=$submenu.closest("div.jqx-menu-popup");f.hide(this.animationHideDuration)}});this.host.hide(this.animationHideDuration);a.data(c.element,"contextMenuOpened"+this.element.id,false);c._raiseEvent("1",c);c._raiseEvent("5")}},open:function(e,d){if(this.mode=="popup"){var c=0;if(this.host.css("display")=="block"){this.close();c=this.animationHideDuration}var b=this;if(e==undefined||e==null){e=0}if(d==undefined||d==null){d=0}setTimeout(function(){b.host.show(b.animationShowDuration);b.host.css("visibility","visible");a.data(b.element,"contextMenuOpened"+b.element.id,true);b._raiseEvent("0",b);b._raiseEvent("4",{left:e,top:d});b.host.css("z-index",9999);if(e!=undefined&&d!=undefined){b.host.css({left:e,top:d})}b.focus()},c)}},_renderHover:function(c,e,b){var d=this;if(!e.ignoretheme){this.addHandler(c,"mouseenter",function(){d.hoveredItem=e;if(!e.disabled&&!e.separator&&d.enableHover&&!d.disabled){if(e.level>0){c.addClass(d.toThemeProperty("jqx-fill-state-hover"));c.addClass(d.toThemeProperty("jqx-menu-item-hover"))}else{c.addClass(d.toThemeProperty("jqx-fill-state-hover"));c.addClass(d.toThemeProperty("jqx-menu-item-top-hover"))}}});this.addHandler(c,"mouseleave",function(){if(!e.disabled&&!e.separator&&d.enableHover&&!d.disabled){if(e.level>0){c.removeClass(d.toThemeProperty("jqx-fill-state-hover"));c.removeClass(d.toThemeProperty("jqx-menu-item-hover"))}else{c.removeClass(d.toThemeProperty("jqx-fill-state-hover"));c.removeClass(d.toThemeProperty("jqx-menu-item-top-hover"))}}})}},_closeAfterClick:function(c){var b=c!=null?c.data:this;var d=false;if(b.autoCloseOnClick){a.each(a(c.target).parents(),function(){if(this.className.indexOf){if(this.className.indexOf("jqx-menu")!=-1){d=true;return false}}});if(!d){c.data=b;b._closeAll(c)}}},_autoSizeHorizontalMenuItems:function(){var c=this;if(c.autoSizeMainItems&&this.mode=="horizontal"){var b=this.maxHeight;if(parseInt(b)>parseInt(this.host.height())){b=parseInt(this.host.height())}b=parseInt(this.host.height());a.each(this.items,function(){var l=this;$element=a(l.element);if(l.level==0&&b>0){var d=$element.children().length>0?parseInt($element.children().height()):$element.height();var g=c.host.find("ul:first");var h=parseInt(g.css("padding-top"));var m=parseInt(g.css("margin-top"));var j=b-2*(m+h);var i=parseInt(j)/2-d/2;var e=parseInt(i);var k=parseInt(i);$element.css("padding-top",e);$element.css("padding-bottom",k);if(parseInt($element.outerHeight())>j){var f=1;$element.css("padding-top",e-f);e=e-f}}})}a.each(this.items,function(){var f=this;$element=a(f.element);if(f.hasItems&&f.level>0){if(f.arrow){var e=a(f.arrow);var d=a(f.element).height();if(d>15){e.css("margin-top",(d-15)/2)}}}})},_nextVisibleItem:function(c,d){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.nextItem;if(this._isVisible(b)&&!b.disabled&&b.type!=="separator"){if(this.minimized){return b}if(d!=undefined){if(b&&b.level!=d){continue}}return b}}return null},_prevVisibleItem:function(c,d){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.prevItem;if(this._isVisible(b)&&!b.disabled&&b.type!=="separator"){if(this.minimized){return b}if(d!=undefined){if(b&&b.level!=d){continue}}return b}}return null},_parentItem:function(d){if(d==null||d==undefined){return null}var c=d.parentElement;if(!c){return null}var b=null;a.each(this.items,function(){if(this.element==c){b=this;return false}});return b},_isElementVisible:function(b){if(b==null){return false}if(a(b).css("display")!="none"&&a(b).css("visibility")!="hidden"){return true}return false},_isVisible:function(c){if(c==null||c==undefined){return false}if(!this._isElementVisible(c.element)){return false}var b=this._parentItem(c);if(b==null){return true}if(this.minimized){return true}if(b!=null){if(!this._isElementVisible(b.element)){return false}if(b.isOpen||this.minimized){while(b!=null){b=this._parentItem(b);if(b!=null&&!this._isElementVisible(b.element)){return false}if(b!=null&&!b.isOpen){return false}}}else{return false}}return true},_render:function(f,g){if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.host.addClass(this.toThemeProperty("jqx-menu-disabled"))}if(this.host.attr("tabindex")==undefined){this.host.attr("tabindex",0)}var i=this.popupZIndex;var d=[5,5];var h=this;a.data(h.element,"animationHideDelay",h.animationHideDelay);var e=this.isTouchDevice();var c=e&&(a.jqx.mobile.isWindowsPhone()||navigator.userAgent.indexOf("Touch")>=0);var j=false;if(navigator.platform.toLowerCase().indexOf("win")!=-1){if(navigator.userAgent.indexOf("Windows Phone")>=0||navigator.userAgent.indexOf("WPDesktop")>=0||navigator.userAgent.indexOf("IEMobile")>=0||navigator.userAgent.indexOf("ZuneWP7")>=0){this.touchDevice=true}else{if(navigator.userAgent.indexOf("Touch")>=0){var b=("MSPointerDown" in window);if(b||a.jqx.mobile.isWindowsPhone()||navigator.userAgent.indexOf("ARM")>=0){j=true;c=true;h.clickToOpen=true;h.autoCloseOnClick=false;h.enableHover=false}}}}a.data(document.body,"menuel",this);this.hasTransform=a.jqx.utilities.hasTransform(this.host);this._applyOrientation(f,g);this.removeHandler(this.host,"blur");this.removeHandler(this.host,"focus");this.addHandler(this.host,"blur",function(k){if(h.keyboardNavigation){if(h.activeItem){if(h.mode==="popup"){if(document.activeElement&&document.activeElement.className.indexOf("jqx-menu-wrapper")>=0){return}}a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=null}}});this.addHandler(this.host,"focus",function(k){if(h.keyboardNavigation){if(!h.activeItem){if(h.hoveredItem){a(h.hoveredItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=h.hoveredItem}else{var l=function(){if(!a.jqx.isHidden(a(h.items[0].element))){a(h.items[0].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=h.items[0]}else{var m=h._nextVisibleItem(h.items[0],0);if(m){a(m.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=m}}};if(!h.activeItem){l()}else{if(!a.jqx.isHidden(a(h.activeItem.element))){a(h.activeItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"))}else{a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));l()}}}}}});this.removeHandler(this.host,"keydown");h.handleKeyDown=function(k){if(h.keyboardNavigation){if(k.target.nodeName.toLowerCase()==="input"){return true}var q=null;var o=null;a.each(h.items,function(){var A=this;if(this.disabled){return true}if(this.element.className.indexOf("pressed")>=0){o=this}if(this.element.className.indexOf("focus")>=0){q=this;return false}});if(!q&&o){q=o}if(!q){a(h.items[0].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=h.items[0];q=h.activeItem}var t=false;if(k.keyCode==27){k.data=h;h._closeAll(k);if(q){var z=q;while(z!=null){if(z.parentItem){z=z.parentItem}else{a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=z;a(h.activeItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));z=z.parentItem}}}t=true}if(k.keyCode==13){if(q){t=true;h._raiseEvent("2",{item:q.element,event:k,type:"keyboard"});var r=q.anchor!=null?a(q.anchor):null;if(r!=null&&r.length>0){var l=r.attr("href");var u=r.attr("target");if(l!=null){if(u!=null){window.open(l,u)}else{window.location=l}}}k.preventDefault();k.stopPropagation();a(q.element).focus()}}var n=function(D){if(D==null){return new Array()}var C=new Array();var A=0;for(var B=0;B<h.items.length;B++){if(h.items[B].parentId==D.parentId){C[A++]=h.items[B]}}return C};var v="";switch(k.keyCode){case 40:v="down";break;case 38:v="up";break;case 39:v="right";break;case 37:v="left";break}if(q&&q.openHorizontalDirection==="left"&&v==="left"){v="right"}if(q&&q.openHorizontalDirection==="left"&&v==="right"){v="left"}if(q&&q.openVerticalDirection==="top"&&v==="top"){v="bottom"}if(q&&q.openVerticalDirection==="top"&&v==="bottom"){v="top"}if(h.rtl){if(v==="right"){v="left"}else{if(v==="left"){v="right"}}}if(v==="right"&&!h.minimized){if(k.altKey&&(q.level!=0&&q.hasItems||h.mode!="horizontal")){h._openItem(h,q)}else{var x=h._nextVisibleItem(q,0);var m=h._nextVisibleItem(q);var w=n(m);if(!x){x=m}if(x&&((x.parentId===q.parentId&&x.level==0&&h.mode=="horizontal")||(m.id==w[0].id&&m.level!=0))){if(m.id==w[0].id&&((q.level!=0)||(q.level==0&&h.mode!="horizontal"))){x=m}a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}k.preventDefault();k.stopPropagation()}if(v==="left"&&!h.minimized){if(k.altKey&&((q.level!=0&&h.mode!=="horizontal")||(q.level>1&&h.mode==="horizontal")||(q.level==1&&q.hasItems&&h.mode==="horizontal"))){if(q.hasItems){h._closeItem(h,q)}else{if(q.parentItem){h._closeItem(h,q.parentItem);a(q.parentItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=q.parentItem}}}else{var x=h._prevVisibleItem(q,0);var y=q.parentItem;if(x&&(x.parentId===q.parentId&&x.level==0&&h.mode=="horizontal")){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}else{if(!(y&&y.level==0&&h.mode=="horizontal")&&y&&y.level==q.level-1){a(y.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=y}}}k.preventDefault();k.stopPropagation()}if(v==="down"){if(k.altKey){if(q.level==0&&q.hasItems){h._openItem(h,q)}if(h.minimized){if(h.minimizedHidden){h.minimizedItem.trigger("click")}}}else{var x=h._nextVisibleItem(q,q.level);var w=n(x);if(h.minimized&&x){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}else{if(x&&(x.parentId===q.parentId||(x.id==w[0].id&&h.mode=="horizontal"))){if(!(x.level==0&&h.mode=="horizontal")){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}if(h.mode==="horizontal"&&q.level===0&&q.isOpen&&q.hasItems){var x=h._nextVisibleItem(q);a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}}k.preventDefault();k.stopPropagation()}else{if(v==="up"){if(k.altKey){if(q.parentItem&&q.parentItem.level==0){h._closeItem(h,q.parentItem);a(q.parentItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=q.parentItem}else{if(q.parentItem===null&&q.level===0&&h.mode==="horizontal"){h._closeItem(h,q)}}if(h.minimized){if(!h.minimizedHidden){h.minimizedItem.trigger("click")}}}else{var x=h._prevVisibleItem(q,q.level);var w=n(q);if(h.minimized&&x){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}else{if(x&&(x.parentId===q.parentId||(x.id==q.parentId&&x.level==0&&h.mode=="horizontal"))){if(!(x.level==0&&h.mode==="horizontal"&&q.level===0)){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}else{if(q&&q.id==w[0].id&&q.parentItem&&q.parentItem.level===0&&h.mode==="horizontal"){var x=q.parentItem;a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}}}k.preventDefault();k.stopPropagation()}}if(k.keyCode==9){var x=k.shiftKey?h._prevVisibleItem(q):h._nextVisibleItem(q);if(x){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x;k.preventDefault();k.stopPropagation()}else{if(h.lockFocus){var w=new Array();var s=0;for(var p=0;p<h.items.length;p++){if(h.items[p]==q){continue}if(h.items[p].parentId==q.parentId){w[s++]=h.items[p]}}if(w.length>0){if(k.shiftKey){a(w[w.length-1].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=w[w.length-1]}else{a(w[0].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=w[0]}a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"))}k.preventDefault();k.stopPropagation()}else{if(q){a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=null}}}}}else{return true}};this.addHandler(this.host,"keydown",function(k){h.handleKeyDown(k)});if(h.enableRoundedCorners){this.host.addClass(h.toThemeProperty("jqx-rc-all"))}a.each(this.items,function(){var r=this;var n=a(r.element);n.attr("role","menuitem");if(h.enableRoundedCorners){n.addClass(h.toThemeProperty("jqx-rc-all"))}h.removeHandler(n,"click");h.addHandler(n,"click",function(w){if(r.disabled){return}if(h.disabled){return}if(h.keyboardNavigation){if(h.activeItem){a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"))}h.activeItem=r;a(r.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));if(h.minimized){w.stopPropagation()}}h._raiseEvent("2",{type:"mouse",item:r.element,event:w});if(!h.autoOpen){if(r.level>0){if(h.autoCloseOnClick&&!e&&!h.clickToOpen){w.data=h;h._closeAll(w)}}}else{if(h.autoCloseOnClick&&!e&&!h.clickToOpen){if(r.closeOnClick){w.data=h;h._closeAll(w)}}}if(e&&h.autoCloseOnClick){w.data=h;if(!r.hasItems){h._closeAll(w)}}if(w.target.tagName!="A"&&w.target.tagName!="a"){var u=r.anchor!=null?a(r.anchor):null;if(u!=null&&u.length>0){var t=u.attr("href");var v=u.attr("target");if(t!=null){if(v!=null){window.open(t,v)}else{window.location=t}}}}});h.removeHandler(n,"mouseenter");h.removeHandler(n,"mouseleave");if(!c&&h.mode!="simple"){h._renderHover(n,r,e)}if(r.subMenuElement!=null){var o=a(r.subMenuElement);if(h.mode=="simple"){o.show();return true}o.wrap('<div class="jqx-menu-popup '+h.toThemeProperty("jqx-menu-popup")+'" style="border: none; background-color: transparent; z-index:'+i+'; padding: 0px; margin: 0px; position: absolute; top: 0; left: 0; display: block; visibility: hidden;"><div style="background-color: transparent; border: none; position:absolute; overflow:hidden; left: 0; top: 0; right: 0; width: 100%; height: 100%;"></div></div>');o.css({overflow:"hidden",position:"absolute",left:0,display:"inherit",top:-o.outerHeight()});o.data("timer",{});if(r.level>0){o.css("left",-o.outerWidth())}else{if(h.mode=="horizontal"){o.css("left",0)}}i++;var q=a(r.subMenuElement).closest("div.jqx-menu-popup").css({width:parseInt(a(r.subMenuElement).outerWidth())+parseInt(d[0])+"px",height:parseInt(a(r.subMenuElement).outerHeight())+parseInt(d[1])+"px"});var s=n.closest("div.jqx-menu-popup");if(s.length>0){var k=o.css("margin-left");var m=o.css("margin-right");var l=o.css("padding-left");var p=o.css("padding-right");q.appendTo(s);o.css("margin-left",k);o.css("margin-right",m);o.css("padding-left",l);o.css("padding-right",p)}else{var k=o.css("margin-left");var m=o.css("margin-right");var l=o.css("padding-left");var p=o.css("padding-right");q.appendTo(a(document.body));o.css("margin-left",k);o.css("margin-right",m);o.css("padding-left",l);o.css("padding-right",p)}if(!h.clickToOpen){if(e||c){h.removeHandler(n,a.jqx.mobile.getTouchEventName("touchstart"));h.addHandler(n,a.jqx.mobile.getTouchEventName("touchstart"),function(t){clearTimeout(o.data("timer").hide);if(o!=null){o.stop()}if(r.level==0&&!r.isOpen&&h.mode!="popup"){t.data=h;h._closeAll(t)}if(!r.isOpen){h._openItem(h,r)}else{h._closeItem(h,r,true)}return false})}if(!c){h.addHandler(n,"mouseenter",function(){if(h.autoOpen||(r.level>0&&!h.autoOpen)){clearTimeout(o.data("timer").hide)}if(r.parentId&&r.parentId!=0){if(h.menuElements[r.parentId]){var t=h.menuElements[r.parentId].isOpen;if(!t){return}}}if(h.autoOpen||(r.level>0&&!h.autoOpen)){h._openItem(h,r)}return false});h.addHandler(n,"mousedown",function(){if(!h.autoOpen&&r.level==0){clearTimeout(o.data("timer").hide);if(o!=null){o.stop()}if(!r.isOpen){h._openItem(h,r)}else{h._closeItem(h,r,true)}}});h.addHandler(n,"mouseleave",function(u){if(h.autoCloseOnMouseLeave){clearTimeout(o.data("timer").hide);var x=a(r.subMenuElement);var t={left:parseInt(u.pageX),top:parseInt(u.pageY)};var w={left:parseInt(x.coord().left),top:parseInt(x.coord().top),width:parseInt(x.outerWidth()),height:parseInt(x.outerHeight())};var v=true;if(w.left-5<=t.left&&t.left<=w.left+w.width+5){if(w.top<=t.top&&t.top<=w.top+w.height){v=false}}if(v){h._closeItem(h,r,true)}}});h.removeHandler(q,"mouseenter");h.addHandler(q,"mouseenter",function(){clearTimeout(o.data("timer").hide)});h.removeHandler(q,"mouseleave");h.addHandler(q,"mouseleave",function(t){if(h.autoCloseOnMouseLeave){clearTimeout(o.data("timer").hide);clearTimeout(o.data("timer").show);if(o!=null){o.stop()}h._closeItem(h,r,true)}})}}else{h.removeHandler(n,"mousedown");h.addHandler(n,"mousedown",function(t){clearTimeout(o.data("timer").hide);if(o!=null){o.stop()}if(r.level==0&&!r.isOpen){t.data=h;h._closeAll(t)}if(!r.isOpen){h._openItem(h,r)}else{h._closeItem(h,r,true)}})}}});if(this.mode=="simple"){this._renderSimpleMode()}this._autoSizeHorizontalMenuItems();this._raiseEvent("3",this)},_renderSimpleMode:function(){this.host.show()},createID:function(){var b=Math.random()+"";b=b.replace(".","");b="99"+b;b=b/1;while(this.items[b]){b=Math.random()+"";b=b.replace(".","");b=b/1}return"menuItem"+b},_createMenu:function(c,f){if(c==null){return}if(f==undefined){f=true}if(f==null){f=true}var o=this;var u=a(c).find("li");var q=0;this.itemMapping=new Array();for(var j=0;j<u.length;j++){var m=u[j];var s=a(m);if(m.className.indexOf("jqx-menu")==-1&&this.autoGenerate==false){continue}var p=m.id;if(!p){p=this.createID()}if(f){m.id=p;this.items[q]=new a.jqx._jqxMenu.jqxMenuItem();this.menuElements[p]=this.items[q]}q+=1;var t=0;var x=this;var h=s.children();h.each(function(){if(!f){this.className="";if(x.autoGenerate){a(x.items[q-1].subMenuElement)[0].className="";if(!x.minimized){a(x.items[q-1].subMenuElement).addClass(x.toThemeProperty("jqx-widget-content"))}a(x.items[q-1].subMenuElement).addClass(x.toThemeProperty("jqx-menu-dropdown"));a(x.items[q-1].subMenuElement).addClass(x.toThemeProperty("jqx-popup"))}}if(this.className.indexOf("jqx-menu-dropdown")!=-1){if(f){x.items[q-1].subMenuElement=this}return false}else{if(x.autoGenerate&&(this.tagName=="ul"||this.tagName=="UL")){if(f){x.items[q-1].subMenuElement=this}this.className="";if(!x.minimized){a(this).addClass(x.toThemeProperty("jqx-widget-content"))}a(this).addClass(x.toThemeProperty("jqx-menu-dropdown"));a(this).addClass(x.toThemeProperty("jqx-popup"));a(this).attr("role","menu");if(x.rtl){a(this).addClass(x.toThemeProperty("jqx-rc-l"))}else{a(this).addClass(x.toThemeProperty("jqx-rc-r"))}a(this).addClass(x.toThemeProperty("jqx-rc-b"));return false}}});var w=s.parents();w.each(function(){if(this.className.indexOf("jqx-menu-item")!=-1){t=this.id;return false}else{if(x.autoGenerate&&(this.tagName=="li"||this.tagName=="LI")){t=this.id;return false}}});var e=false;var d=m.getAttribute("type");var b=m.getAttribute("ignoretheme")||m.getAttribute("data-ignoretheme");if(b){if(b=="true"||b==true){b=true}}else{b=false}if(!d){d=m.type}else{if(d=="separator"){var e=true}}if(!e){if(t){d="sub"}else{d="top"}}var g=this.items[q-1];if(f){g.id=p;g.parentId=t;g.type=d;g.separator=e;g.element=u[j];var l=s.children("a");g.disabled=m.getAttribute("item-disabled")=="true"?true:false;g.level=s.parents("li").length;g.anchor=l.length>0?l:null;if(g.anchor){a(g.anchor).attr("tabindex",-1)}}g.ignoretheme=b;var n=this.menuElements[t];if(n!=null){if(n.ignoretheme){g.ignoretheme=n.ignoretheme;b=n.ignoretheme}g.parentItem=n;g.parentElement=n.element}if(this.autoGenerate){if(d=="separator"){s.removeClass();s.addClass(this.toThemeProperty("jqx-menu-item-separator"));s.attr("role","separator")}else{if(!b){s[0].className="";if(this.rtl){s.addClass(this.toThemeProperty("jqx-rtl"))}if(g.level>0&&!x.minimized){s.addClass(this.toThemeProperty("jqx-item"));s.addClass(this.toThemeProperty("jqx-menu-item"))}else{s.addClass(this.toThemeProperty("jqx-item"));s.addClass(this.toThemeProperty("jqx-menu-item-top"))}}}}if(g.disabled){s.addClass(x.toThemeProperty("jqx-menu-item-disabled"));s.addClass(x.toThemeProperty("jqx-fill-state-disabled"))}this.itemMapping[j]={element:u[j],item:g};this.itemMapping["id"+u[j].id]=this.itemMapping[j];if(f&&!b){g.hasItems=s.find("li").length>0;if(g.hasItems){if(g.element){a.jqx.aria(a(g.element),"aria-haspopup",true);if(!g.subMenuElement.id){g.subMenuElement.id=a.jqx.utilities.createId()}a.jqx.aria(a(g.element),"aria-owns",g.subMenuElement.id)}}}}for(var r=0;r<u.length;r++){var v=u[r];if(this.itemMapping["id"+v.id]){var g=this.itemMapping["id"+v.id].item;if(!g){continue}g.prevItem=null;g.nextItem=null;if(r>0){if(this.itemMapping["id"+u[r-1].id]){g.prevItem=this.itemMapping["id"+u[r-1].id].item}}if(r<u.length-1){if(this.itemMapping["id"+u[r+1].id]){g.nextItem=this.itemMapping["id"+u[r+1].id].item}}}}},destroy:function(){var b=this;a.jqx.utilities.resize(b.host,null,true);var d=b.host.closest("div.jqx-menu-wrapper");b.removeHandler(d,"keydown");d.remove();b.removeHandler(a("#menuWrapper"+b.element.id),"keydown");a("#menuWrapper"+b.element.id).remove();b.removeHandler(b.host,"keydown");b.removeHandler(b.host,"focus");b.removeHandler(b.host,"blur");b.removeHandler(a(document),"mousedown.menu"+b.element.id,b._closeAfterClick);b.removeHandler(a(document),"mouseup.menu"+b.element.id,b._closeAfterClick);b.removeHandler(a(document),"contextmenu."+b.element.id);b.removeHandler(b.host,"contextmenu."+b.element.id);a.data(document.body,"jqxMenuOldHost"+b.element.id,null);if(b.isTouchDevice()){b.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+".menu"+b.element.id,b._closeAfterClick,this)}if(a(window).off){a(window).off("resize.menu"+b.element.id)}a.each(b.items,function(){var g=this;var f=a(g.element);b.removeHandler(f,"click");b.removeHandler(f,"selectstart");b.removeHandler(f,"mouseenter");b.removeHandler(f,"mouseleave");b.removeHandler(f,"mousedown");b.removeHandler(f,"mouseleave");var e=a(g.subMenuElement);var h=e.closest("div.jqx-menu-popup");h.remove();delete this.subMenuElement;delete this.element});a.data(document.body,"menuel",null);delete b.menuElements;b.items=new Array();delete b.items;var c=a.data(b.element,"jqxMenu");if(c){delete c.instance}b.host.removeClass();b.host.remove();delete b.host;delete b.element},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);if(f=="2"){args=c.item;args.owner=this;args.clickType=c.type;a.extend(e,c.event);e.type="itemclick"}e.owner=this;e.args=args;var b=this.host.trigger(e);return b},propertyChangedHandler:function(b,d,h,g){if(this.isInitialized==undefined||this.isInitialized==false){return}if(d=="disabled"){if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"));b.host.addClass(b.toThemeProperty("jqx-menu-disabled"))}else{b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));b.host.removeClass(b.toThemeProperty("jqx-menu-disabled"))}}if(g==h){return}if(d=="touchMode"){this._isTouchDevice=null;b._render(g,h)}if(d==="width"||d==="height"){b.setSize();if(b.mode==="popup"){var e=this.host.closest("div.jqx-menu-wrapper");e[d](g);var i=this.host[0].id;a("#"+i)[d](g)}return}if(d=="source"){if(b.source!=null){var c=b.loadItems(b.source);b.element.innerHTML=c;var f=b.host.find("ul:first");if(f.length>0){b.refresh();b._createMenu(f[0]);b._render()}}}if(d=="autoCloseOnClick"){if(g==false){b.removeHandler(a(document),"mousedown.menu"+this.element.id,b._closeAll)}else{b.addHandler(a(document),"mousedown.menu"+this.element.id,b,b._closeAll)}}else{if(d=="mode"||d=="width"||d=="height"||d=="showTopLevelArrows"){b.refresh();if(d=="mode"){b._render(g,h)}else{b._applyOrientation()}}else{if(d=="theme"){a.jqx.utilities.setTheme(h,g,b.host)}}}}})})(jqxBaseFramework);(function(a){a.jqx._jqxMenu.jqxMenuItem=function(e,d,c){var b={id:e,parentId:d,parentItem:null,anchor:null,type:c,disabled:false,level:0,isOpen:false,hasItems:false,element:null,subMenuElement:null,arrow:null,openHorizontalDirection:"right",openVerticalDirection:"down",closeOnClick:true};return b}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxExpander","",{});a.extend(a.jqx._jqxExpander.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",expanded:true,expandAnimationDuration:259,collapseAnimationDuration:250,animationType:"slide",toggleMode:"click",showArrow:true,arrowPosition:"right",headerPosition:"top",disabled:false,initContent:null,rtl:false,easing:"easeInOutSine",aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["expanding","expanded","collapsing","collapsed","resize"]};a.extend(true,this,b);return b},createInstance:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(this);this._cachedHTMLStructure=this.host.html();this.render()},expand:function(){if(this.disabled==false&&this.expanded==false&&this._expandChecker==1){var b=this;this._expandChecker=0;this._raiseEvent("0");this._header.removeClass(this.toThemeProperty("jqx-fill-state-normal"));this._header.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._header.addClass(this.toThemeProperty("jqx-expander-header-expanded"));if(this.headerPosition=="top"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded"))}else{if(this.headerPosition=="bottom"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded-top"))}}switch(this.animationType){case"slide":if(this.headerPosition=="top"){this._content.slideDown(this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}})}else{if(this.headerPosition=="bottom"){this._content.css({display:"inherit",height:0});if(a.jqx.browser.msie&&a.jqx.browser.version<8){this._content.css("display","block")}if(this._cntntEmpty==true){this._content.animate({height:0},this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}})}else{this._content.animate({height:this._contentHeight},this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}})}}}break;case"fade":this._content.fadeIn(this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}});break;case"none":this._content.css("display","inherit");this.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);this._raiseEvent("1");if(this.initContent&&this._initialized==false){this.initContent();this._initialized=true}break}}},collapse:function(){if(this.disabled==false&&this.expanded==true&&this._expandChecker==0){var b=this;this._expandChecker=1;this._raiseEvent("2");this._header.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));this._header.addClass(this.toThemeProperty("jqx-fill-state-normal"));if(this.headerPosition=="top"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-expanded"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));if(b._hovered){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down-hover"))}this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"))}else{if(this.headerPosition=="bottom"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-expanded-top"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));if(b._hovered){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-hover"))}}}switch(this.animationType){case"slide":if(this.headerPosition=="top"){this._content.slideUp(this.collapseAnimationDuration,this.easing,function(){b.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);b._raiseEvent("3")})}else{if(this.headerPosition=="bottom"){this._content.animate({height:0},this.expandAnimationDuration,function(){b._content.css("display","none");b.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);b._raiseEvent("3")})}}break;case"fade":this._content.fadeOut(this.collapseAnimationDuration,this.easing,function(){b.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);b._raiseEvent("3")});break;case"none":this._content.css("display","none");this.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);this._raiseEvent("3");break}}},setHeaderContent:function(b){this._header_text.html(b);this.invalidate()},getHeaderContent:function(){return this._header_text.html()},setContent:function(b){this._content.html(b);this._checkContent();this.invalidate()},getContent:function(){return this._content.html()},enable:function(){this.disabled=false;this.refresh();a.jqx.aria(this,"aria-disabled",false)},disable:function(){this.disabled=true;this.refresh();a.jqx.aria(this,"aria-disabled",true)},invalidate:function(){if(a.jqx.isHidden(this.host)){return}this._setSize()},refresh:function(b){if(b==true){return}this._removeHandlers();if(this.showArrow==true){this._arrow.css("display","inherit")}else{this._arrow.css("display","none")}this._setTheme();this._setSize();if(this.disabled==false){this._toggle()}this._keyBoard()},render:function(){this.widgetID=this.element.id;if(this._header){this._header.removeClass(this.toThemeProperty("jqx-expander-header-content"));this._header.removeClass(this.toThemeProperty("jqx-expander-header"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));this._header.removeClass(this.toThemeProperty("jqx-widget-header"));this._header_text.removeClass(this.toThemeProperty("jqx-expander-header-content"));this._header_text.removeClass(this.toThemeProperty("jqx-expander-header"));this._header_text.removeClass(this.toThemeProperty("jqx-widget-header"));this._header_text.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));this._header.attr("tabindex",null);this._content.attr("tabindex",null);this._header.css("margin-top",0);this._header[0].innerHTML=this._header_text[0].innerHTML;if(this.headerPosition=="bottom"){this._header.detach();this.host.prepend(this._header)}}this._header_temp=this.host.children("div:eq(0)");this._header_temp.wrap("<div></div>");this._header=this.host.children("div:eq(0)");this._content=this.host.children("div:eq(1)");if(this.headerPosition=="bottom"){this._header.detach();this.host.append(this._header)}this._header_text=this._header.children("div:eq(0)");var d=this._header_text[0].className;this._header.addClass(d);this._header_text.removeClass();if(!this.rtl){this._header_text.addClass(this.toThemeProperty("jqx-expander-header-content"))}else{this._header_text.addClass(this.toThemeProperty("jqx-expander-header-content-rtl"))}this._header.append("<div></div>");this._arrow=this._header.children("div:eq(1)");if(this.showArrow==true){this._arrow.css("display","inherit")}else{this._arrow.css("display","none")}this.tI=-1;if(this._header.attr("tabindex")==undefined){this.tI++;this._header.attr("tabindex",this.tI)}if(this._content.attr("tabindex")==undefined){this.tI++;this._content.attr("tabindex",this.tI)}this._setTheme();this._checkContent();var b="Invalid jqxExpander structure. Please add only two child div elements to your jqxExpander div that will represent the expander's header and content.";try{if(this._header.length==0||this._content.length==0||this.host.children().length<2||this.host.children().length>2){throw b}}catch(c){alert(c)}this._expandChecker;this._initialized;if(this.expanded==true){if(this.headerPosition=="top"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded"))}else{if(this.headerPosition=="bottom"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded-top"))}}if(this.initContent){this._setSize();this.initContent()}this._initialized=true;this._expandChecker=0}else{if(this.expanded==false){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));if(this.headerPosition=="top"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"))}else{if(this.headerPosition=="bottom"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"))}}this._initialized=false;this._expandChecker=1;this._content.css("display","none")}}this._setSize();if(this.disabled==false){this._toggle()}this._keyBoard();var e=this;a.jqx.utilities.resize(this.host,function(){e.invalidate()})},destroy:function(){this.removeHandler(a(window),"resize.expander"+this.widgetID);this.host.remove();a(this.element).removeData("jqxExpander")},focus:function(){try{if(this.disabled==false){this._header.focus()}}catch(b){}},propertyChangedHandler:function(b,c,e,d){if(c=="expanded"){if(d==true&&e==false){this.expanded=false;this.expand()}else{if(d==false&&e==true){this.expanded=true;this.collapse()}}}else{this.refresh()}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},resize:function(c,b){this.width=c;this.height=b;this._setSize()},_setSize:function(){this.host.width(this.width);this.host.height(this.height);this._header.height("auto");this._header.css("min-height",this._arrow.height());var c=this.arrowPosition;if(this.rtl){switch(c){case"left":c="right";break;case"right":c="left";break}}if(c=="right"){this._header_text.css({"float":"left","margin-left":"0px"});this._arrow.css({"float":"right",position:"relative"})}else{if(c=="left"){if(this.width=="auto"){this._header_text.css({"float":"left","margin-left":"17px"});this._arrow.css({"float":"left",position:"absolute"})}else{this._header_text.css({"float":"right","margin-left":"0px"});this._arrow.css({"float":"left",position:"relative"})}}}this._arrow.css("margin-top",this._header_text.height()/2-this._arrow.height()/2);if(this.height=="auto"){this._content.height("auto");this._contentHeight=this._content.height()}else{this._content.height("auto");var b=Math.round(this.host.height())-Math.round(this._header.outerHeight())-1;if(b<0){b=0}if(!this._contentHeight){this._contentHeight=this._content.height()}if(b!=this._contentHeight){this._content.height(b);this._contentHeight=Math.round(this._content.outerHeight())}else{this._content.height(this._contentHeight)}}},_toggle:function(){var b=this;if(this._isTouchDevice==false){this._header.removeClass(this.toThemeProperty("jqx-expander-header-disabled"));switch(this.toggleMode){case"click":this.addHandler(this._header,"click.expander"+this.widgetID,function(){b._animate()});break;case"dblclick":this.addHandler(this._header,"dblclick.expander"+this.widgetID,function(){b._animate()});break;case"none":this._header.addClass(this.toThemeProperty("jqx-expander-header-disabled"));break}}else{if(this.toggleMode!="none"){this.addHandler(this._header,a.jqx.mobile.getTouchEventName("touchstart")+"."+this.widgetID,function(){b._animate()})}else{return}}},_animate:function(){if(this.expanded==true){this.collapse();this._header.addClass(this.toThemeProperty("jqx-fill-state-hover"));this._header.addClass(this.toThemeProperty("jqx-expander-header-hover"));if(this.headerPosition=="top"){this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(this.headerPosition=="bottom"){this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom-hover"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-up-hover"))}}}else{this.expand();this._header.removeClass(this.toThemeProperty("jqx-fill-state-hover"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-hover"));if(this.headerPosition=="top"){this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(this.headerPosition=="bottom"){this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-up-hover"))}}}},_removeHandlers:function(){this.removeHandler(this._header,"click.expander"+this.widgetID);this.removeHandler(this._header,"dblclick.expander"+this.widgetID);this.removeHandler(this._header,"mouseenter.expander"+this.widgetID);this.removeHandler(this._header,"mouseleave.expander"+this.widgetID)},_setTheme:function(){var b=this;this.host.addClass(this.toThemeProperty("jqx-widget"));this._header.addClass(this.toThemeProperty("jqx-widget-header"));this._content.addClass(this.toThemeProperty("jqx-widget-content"));if(this.rtl==true){this.host.addClass(this.toThemeProperty("jqx-rtl"))}if(this.disabled==false){this._header.removeClass(this.toThemeProperty("jqx-expander-header-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));if(this.expanded==true){this._header.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._header.addClass(this.toThemeProperty("jqx-expander-header-expanded"))}else{this._header.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"))}this._hovered=false;if(!b._isTouchDevice){this.addHandler(this._header,"mouseenter.expander"+this.widgetID,function(){b._hovered=true;if(b._expandChecker==1){b._header.removeClass(b.toThemeProperty("jqx-fill-state-normal"));b._header.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._header.addClass(b.toThemeProperty("jqx-fill-state-hover"));b._header.addClass(b.toThemeProperty("jqx-expander-header-hover"));if(b.headerPosition=="top"){if(b.expanded){b._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-up-hover"))}else{b._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))}b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(b.headerPosition=="bottom"){if(b.expanded){b._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))}b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-bottom-hover"));b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-up-hover"))}}}});this.addHandler(this._header,"mouseleave.expander"+this.widgetID,function(){b._hovered=false;b._header.removeClass(b.toThemeProperty("jqx-fill-state-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-up-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-down-hover"));b._header.removeClass(b.toThemeProperty("jqx-expander-header-hover"));if(b.headerPosition=="top"){b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(b.headerPosition=="bottom"){b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-bottom-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-up-hover"))}}if(b._expandChecker==1){b._header.addClass(b.toThemeProperty("jqx-fill-state-normal"))}else{b._header.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}})}}else{this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this._header.addClass(this.toThemeProperty("jqx-expander-header-disabled"))}this.host.addClass(this.toThemeProperty("jqx-expander"));this._header.addClass(this.toThemeProperty("jqx-expander-header"));this._content.addClass(this.toThemeProperty("jqx-expander-content"));if(this.headerPosition=="top"){this._content.addClass(this.toThemeProperty("jqx-expander-content-bottom"))}else{if(this.headerPosition=="bottom"){this._content.addClass(this.toThemeProperty("jqx-expander-content-top"))}}this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow"))},_checkContent:function(){this._cntntEmpty=/^\s*$/.test(this._content.html());if(this._cntntEmpty==true){this._content.height(0);this._content.addClass(this.toThemeProperty("jqx-expander-content-empty"))}else{this._content.height(this._contentHeight);this._content.removeClass(this.toThemeProperty("jqx-expander-content-empty"))}},_keyBoard:function(){var b=this;this._focus();this.addHandler(this.host,"keydown.expander"+this.widgetID,function(c){var d=false;if((b.focusedH==true||b.focusedC==true)&&b.disabled==false){switch(c.keyCode){case 13:case 32:if(b.toggleMode!="none"){if(b.focusedH==true){b._animate()}d=true}break;case 38:if(c.ctrlKey==true&&b.focusedC==true){b._header.focus()}d=true;break;case 40:if(c.ctrlKey==true&&b.focusedH==true){b._content.focus()}d=true;break}return true}if(d&&c.preventDefault){c.preventDefault()}return !d})},_focus:function(){var b=this;this.addHandler(this._header,"focus.expander"+this.widgetID,function(){b.focusedH=true;a.jqx.aria(b._header,"aria-selected",true);b._header.addClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this._header,"blur.expander"+this.widgetID,function(){b.focusedH=false;a.jqx.aria(b._header,"aria-selected",false);b._header.removeClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this._header_text,"focus.expander"+this.widgetID,function(){b._header.focus()});this.addHandler(this._arrow,"focus.expander"+this.widgetID,function(){b._header.focus()});this.addHandler(this._content,"focus.expander"+this.widgetID,function(){b.focusedC=true;b._content.addClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this._content,"blur.expander"+this.widgetID,function(){b.focusedC=false;b._content.removeClass(b.toThemeProperty("jqx-fill-state-focus"))})}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxNavigationBar","",{});a.extend(a.jqx._jqxNavigationBar.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",expandAnimationDuration:250,collapseAnimationDuration:250,animationType:"slide",toggleMode:"click",showArrow:true,arrowPosition:"right",disabled:false,initContent:null,rtl:false,easing:"easeInOutSine",expandMode:"singleFitHeight",expandedIndexes:[],_expandModes:["singleFitHeight","single","multiple","toggle","none"],aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["expandingItem","expandedItem","collapsingItem","collapsedItem"]};a.extend(true,this,b);return b},createInstance:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(this);this.render()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.expandedIndexes}if(typeof b=="string"){this.expandedIndexes.push(parseInt(b));this._applyExpandedIndexes()}else{if(a.isArray(b)){this.expandedIndexes=b}else{this.expandedIndexes=new Array();this.expandedIndexes.push(b)}this._applyExpandedIndexes()}return this.expandedIndexes},expandAt:function(d){var g=this;if(this.expandMode=="single"||this.expandMode=="singleFitHeight"||this.expandMode=="toggle"){a.each(this.items,function(j,k){if(j!=d){g.collapseAt(j)}})}var h=this.items[d];if(h.disabled==false&&h.expanded==false&&h._expandChecker==1){var g=this;h._expandChecker=0;this._raiseEvent("0",{item:d});h._header.removeClass(this.toThemeProperty("jqx-fill-state-normal"));h._header.addClass(this.toThemeProperty("jqx-fill-state-pressed"));h._header.addClass(this.toThemeProperty("jqx-expander-header-expanded"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-hover"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-hover"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));h._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top"));h._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));h._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));h._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));h._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded"));if(this.heightFlag==false){this.host.css({"overflow-x":"hidden","overflow-y":"hidden"})}this.eCFlag=1;switch(this.animationType){case"slide":var f=h._content;var b=f.height();var c={};c.height=c.paddingTop=c.paddingBottom=c.borderTopWidth=c.borderBottomWidth="show";var i=0;var e=f.outerHeight();if(a.jqx.browser.msie&&a.jqx.browser.version<9){var c={};c.height=c.paddingTop=c.paddingBottom="show"}f.animate(c,{duration:this.expandAnimationDuration,easing:this.easing,step:function(j,k){k.now=Math.round(j);if(k.prop!=="height"){i+=k.now}else{if(g._collapseContent){k.now=Math.round(e-g._collapseContent.outerHeight()-i);i=0}else{k.now=Math.round(j)}}},complete:function(){h.expanded=true;a.jqx.aria(h._header,"aria-expanded",true);a.jqx.aria(h._content,"aria-hidden",false);g._updateExpandedIndexes();g._raiseEvent("1",{item:d});g._checkHeight();if(g.heightFlag==true){g.host.css({"overflow-x":"hidden","overflow-y":"auto"})}if(g.initContent&&h._initialized==false){g.initContent(d);h._initialized=true}g.eCFlag=0}});break;case"fade":setTimeout(function(){h._content.fadeIn(this.expandAnimationDuration,function(){h.expanded=true;a.jqx.aria(h._header,"aria-expanded",true);a.jqx.aria(h._content,"aria-hidden",false);g._updateExpandedIndexes();g._raiseEvent("1",{item:d});g._checkHeight();if(g.heightFlag==true){g.host.css({"overflow-x":"hidden","overflow-y":"auto"})}if(g.initContent&&h._initialized==false){g.initContent(d);h._initialized=true}g.eCFlag=0})},this.collapseAnimationDuration);break;case"none":h._content.css("display","inherit");h.expanded=true;a.jqx.aria(h._header,"aria-expanded",true);a.jqx.aria(h._content,"aria-hidden",false);this._updateExpandedIndexes();this._raiseEvent("1",{item:d});this._checkHeight();if(this.heightFlag==true){this.host.css({"overflow-x":"hidden","overflow-y":"auto"})}if(this.initContent&&h._initialized==false){this.initContent(d);h._initialized=true}this.eCFlag=0;break}}},collapseAt:function(b){var f=this.items[b];if(f.disabled==false&&f.expanded==true&&f._expandChecker==0){var d=this;f._expandChecker=1;this._raiseEvent("2",{item:b});f._header.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));f._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));f._header.addClass(this.toThemeProperty("jqx-fill-state-normal"));f._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));f._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));f._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));f._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom"));f._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-expanded"));f._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));f._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"));if(this.heightFlag==false){this.host.css({"overflow-x":"hidden","overflow-y":"hidden"})}this.eCFlag=1;this._collapseContent=f._content;switch(this.animationType){case"slide":var e={};e.height=e.paddingTop=e.paddingBottom=e.borderTopWidth=e.borderBottomWidth="hide";if(a.jqx.browser.msie&&a.jqx.browser.version<9){var e={};e.height=e.paddingTop=e.paddingBottom="hide"}var c=f._content;c.animate(e,{duration:this.collapseAnimationDuration,step:function(g,h){h.now=Math.round(g)},easing:this.easing,complete:function(){f.expanded=false;c.hide();a.jqx.aria(f._header,"aria-expanded",false);a.jqx.aria(f._content,"aria-hidden",true);d._updateExpandedIndexes();d._raiseEvent("3",{item:b});d._checkHeight();if(d.heightFlag==true){d.host.css({"overflow-x":"hidden","overflow-y":"auto"})}d.eCFlag=0;d._collapseContent=null}});break;case"fade":f._content.fadeOut(this.collapseAnimationDuration,function(){f.expanded=false;a.jqx.aria(f._header,"aria-expanded",false);a.jqx.aria(f._content,"aria-hidden",true);d._updateExpandedIndexes();d._raiseEvent("3",{item:b});d._checkHeight();if(d.heightFlag==true){d.host.css({"overflow-x":"hidden","overflow-y":"auto"})}d.eCFlag=0});break;case"none":f._content.css("display","none");f.expanded=false;a.jqx.aria(f._header,"aria-expanded",false);a.jqx.aria(f._content,"aria-hidden",true);this._updateExpandedIndexes();this._raiseEvent("3",{item:b});this._checkHeight();if(this.heightFlag==true){this.host.css({"overflow-x":"hidden","overflow-y":"auto"})}this.eCFlag=0;break}}},setHeaderContentAt:function(b,c){this.items[b]._header_text.html(c)},getHeaderContentAt:function(b){return this.items[b]._header_text.html()},setContentAt:function(b,c){this.items[b]._content.html(c);this._checkContent(b)},getContentAt:function(b){return this.items[b]._content.html()},showArrowAt:function(b){this.items[b]._arrow.css("display","block")},hideArrowAt:function(b){this.items[b]._arrow.css("display","none")},enable:function(){this.disabled=false;a.each(this.items,function(b,c){this.disabled=false});this._enabledDisabledCheck();this.refresh();a.jqx.aria(this,"aria-disabled",false)},disable:function(){this.disabled=true;a.each(this.items,function(b,c){this.disabled=true});this._enabledDisabledCheck();this.refresh();a.jqx.aria(this,"aria-disabled",true)},enableAt:function(b){this.items[b].disabled=false;this.refresh()},disableAt:function(b){this.items[b].disabled=true;this.refresh()},invalidate:function(){this.refresh()},refresh:function(b){if(b==true){return}this._removeHandlers();if(this.showArrow==true){a.each(this.items,function(c,e){var d=this;d._arrow.css("display","block")})}else{a.each(this.items,function(c,e){var d=this;d._arrow.css("display","none")})}this._updateExpandedIndexes();this._setTheme();this._setSize();this._toggle();this._keyBoard()},render:function(){this.widgetID=this.element.id;var m=this;if(this._expandModes.indexOf(this.expandMode)==-1){this.expandMode="singleFitHeight"}a.jqx.utilities.resize(this.host,function(){m._setSize()});this.host.attr("role","tablist");if(this.items){this._removeHandlers();a.each(this.items,function(){this._header.removeClass();this._header.attr("tabindex",null);this._content.attr("tabindex",null);this._header[0].className="";this._header_text.removeClass();this._header_text[0].className="";this._header.css("margin-top",0);this._header[0].innerHTML=this._header_text[0].innerHTML})}this.items=new Array();var h=this.host.children().length;var n="Invalid jqxNavigationBar structure. Please add an even number of child div elements that will represent each item's header and content.";try{if(h%2!=0){throw n}}catch(d){alert(d)}var e="Invalid jqxNavigationBar structure. Please make sure all the children elements of the navigationbar are divs.";try{var c=this.host.children();for(var l=0;l<h;l++){if(c[l].tagName.toLowerCase()!="div"){throw e}}}catch(d){alert(d)}var o;for(var p=0;p<h;p+=2){o=this.host.children("div:eq("+p+")");o.wrap("<div></div>")}var l=0;var f;for(var g=0;g<h/2;g++){f=l+1;this.items[g]=new Object();this.items[g]._header=this.host.children("div:eq("+l+")");this.items[g]._header.attr("role","tab");this.items[g]._content=this.host.children("div:eq("+f+")");this.items[g]._content.attr("role","tabpanel");l+=2}var b=this.expandedIndexes.length;a.each(this.items,function(i,j){this.expandedFlag=false;this.focusedH=false;this.focusedC=false});if(this.items&&this.items.length==0){return}if(this.expandMode=="single"||this.expandMode=="singleFitHeight"||this.expandMode=="toggle"||this.expandMode=="none"){a.each(this.items,function(i,k){var j=this;j.expanded=false});if(b!=0){this.items[this.expandedIndexes[0]].expanded=true}else{if(b==0&&(this.expandMode=="single"||this.expandMode=="singleFitHeight")){this.items[0].expanded=true}}}else{if(this.expandMode=="multiple"){if(b!=0){a.each(this.items,function(j,r){var q=this;for(var k=0;k<b;k++){if(m.expandedIndexes[k]==j){q.expanded=true;break}else{q.expanded=false}}})}else{a.each(this.items,function(i,k){var j=this;j.expanded=false})}}else{if(this.expandMode=="none"){a.each(this.items,function(i,k){var j=this;j.expanded=false})}}}this._enabledDisabledCheck();a.each(this.items,function(i,k){var j=this;j._header_text=j._header.children("div:eq(0)");if(!m.rtl){j._header_text.addClass(m.toThemeProperty("jqx-expander-header-content"))}else{j._header_text.addClass(m.toThemeProperty("jqx-expander-header-content-rtl"))}j._header.append("<div></div>");j._arrow=j._header.children("div:eq(1)");if(m.showArrow==true){j._arrow.css("display","block")}else{j._arrow.css("display","none")}});a.each(this.items,function(i,k){var j=this;if(j.expanded==true){j._arrow.addClass(m.toThemeProperty("jqx-icon-arrow-up"));j._arrow.addClass(m.toThemeProperty("jqx-icon-arrow-up-selected"));j._arrow.addClass(m.toThemeProperty("jqx-expander-arrow-bottom"));j._arrow.addClass(m.toThemeProperty("jqx-expander-arrow-expanded"));if(m.initContent){setTimeout(function(){m.initContent(i)},10)}j._initialized=true;j._expandChecker=0;a.jqx.aria(j._header,"aria-expanded",true);a.jqx.aria(j._content,"aria-hidden",false)}else{if(j.expanded==false){j._arrow.addClass(m.toThemeProperty("jqx-icon-arrow-down"));j._arrow.addClass(m.toThemeProperty("jqx-expander-arrow-top"));j._initialized=false;j._expandChecker=1;j._content.css("display","none");a.jqx.aria(j._header,"aria-expanded",false);a.jqx.aria(j._content,"aria-hidden",true)}}});this.tI=0;a.each(this.items,function(i,k){var j=this;if(j._header.attr("tabindex")==undefined){m.tI++;j._header.attr("tabindex",m.tI)}if(j._content.attr("tabindex")==undefined){m.tI++;j._content.attr("tabindex",m.tI)}});this._setTheme();a.each(this.items,function(i,k){var j=this;m._checkContent(i)});this._setSize();this._toggle();this._keyBoard()},insert:function(c,f,d){var b="<div>"+f+"</div><div>"+d+"</div>";if(c!=-1){a(b).insertBefore(this.items[c]._header)}else{var e=this.items.length-1;a(b).insertAfter(this.items[e]._content)}this.render()},add:function(c,b){this.insert(-1,c,b)},update:function(b,d,c){this.setHeaderContentAt(b,d);this.setContentAt(b,c)},remove:function(b){if(isNaN(b)){b=this.items.length-1}if(!this.items[b]){return}this.items[b]._header.remove();this.items[b]._content.remove();this.items.splice(b,1);var c=this.expandedIndexes.indexOf(b);if(c>-1){this.expandedIndexes.splice(c,1)}this.render()},destroy:function(){this._removeHandlers();this.host.remove()},focus:function(){try{a.each(this.items,function(c,e){var d=this;if(d.disabled==false){d._header.focus();return false}})}catch(b){}},_applyExpandedIndexes:function(){var d=this;var c=this.expandedIndexes.length;for(var b=0;b<c;b++){var e=d.expandedIndexes[b];a.each(this.items,function(f,h){var g=this;if(f==e){g.expandedFlag=true;if(g.expanded==false){d.expandAt(f)}if(d.expandMode=="single"||d.expandMode=="singleFitHeight"||d.expandMode=="toggle"||d.expandMode=="none"){return false}}});a.each(this.items,function(f,h){var g=this;if(f!=e&&g.expandedFlag==false){d.collapseAt(f)}})}a.each(this.items,function(f,g){this.expandedFlag=false})},propertyChangedHandler:function(c,d,g,f){var e=c;var b=f;if(d=="disabled"){c._enabledDisabledCheck()}else{if(d=="expandedIndexes"){c._applyExpandedIndexes()}else{c.refresh()}}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;f.item=f.args.item;try{var b=this.host.trigger(f)}catch(d){}return b},resize:function(c,b){this.width=c;this.height=b;this._setSize()},_setSize:function(){var e=this;this.headersHeight=0;var d=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-left")):0;var f=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-right")):0;var b=2;var c=d+f+b;if(isNaN(c)){c=12}if(this.width=="auto"){this.host.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}else{this.host.width(parseInt(this.width)+c)}}this.host.height(this.height);a.each(this.items,function(g,j){var i=this;var h=e.arrowPosition;if(e.rtl){switch(h){case"left":h="right";break;case"right":h="left";break}}if(h=="right"){i._header_text.css({"float":"left","margin-left":"0px"});i._arrow.css({"float":"right",position:"relative"})}else{if(h=="left"){if(e.width=="auto"){i._header_text.css({"float":"left","margin-left":"17px"});i._arrow.css({"float":"left",position:"absolute"})}else{i._header_text.css({"float":"right","margin-left":"0px"});i._arrow.css({"float":"left",position:"relative"})}}}i._header.height("auto");i._header_text.css("min-height",i._arrow.height());e.headersHeight+=i._header.outerHeight();i._arrow.css("margin-top",i._header_text.height()/2-i._arrow.height()/2)});a.each(this.items,function(g,i){var h=this;if(e.height!="auto"){if(e.expandMode=="single"||e.expandMode=="toggle"||e.expandMode=="multiple"){e.host.css({"overflow-x":"hidden","overflow-y":"auto"})}else{if(e.expandMode=="singleFitHeight"){var j=parseInt(h._content.css("padding-top"))+parseInt(h._content.css("padding-bottom"));if(e.height&&e.height.toString().indexOf("%")>=0){h._content.height(e.host.height()-e.headersHeight-j+2)}else{h._content.height(e.host.height()-e.headersHeight-j)}}}}});e._checkHeight()},_toggle:function(){var b=this;if(this._isTouchDevice==false){switch(this.toggleMode){case"click":a.each(this.items,function(c,e){var d=this;if(d.disabled==false){b.addHandler(d._header,"click.navigationbar"+b.widgetID,function(){b.focusedH=true;b._animate(c)})}});break;case"dblclick":a.each(this.items,function(c,e){var d=this;if(d.disabled==false){b.addHandler(d._header,"dblclick.navigationbar"+b.widgetID,function(){b.focusedH=true;b._animate(c)})}});break;case"none":break}}else{if(this.toggleMode!="none"){a.each(this.items,function(c,e){var d=this;if(d.disabled==false){b.addHandler(d._header,a.jqx.mobile.getTouchEventName("touchstart")+"."+b.widgetID,function(){b._animate(c)})}})}else{return}}},_animate:function(c,b){var d=this;this.eCFlag;var e=this.items[c];if(this.expandMode!="none"&&this.eCFlag!=1){if(this.items[c].expanded==true){if(this.expandMode=="multiple"||this.expandMode=="toggle"){this.collapseAt(c)}}else{this.expandAt(c)}if(!d._isTouchDevice){if(b!=true){e._header.addClass(this.toThemeProperty("jqx-fill-state-hover"));e._header.addClass(this.toThemeProperty("jqx-expander-header-hover"));e._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));e._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}else{e._header.removeClass(this.toThemeProperty("jqx-fill-state-hover"));e._header.removeClass(this.toThemeProperty("jqx-expander-header-hover"));e._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));e._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}}}},_removeHandlers:function(){var b=this;this.removeHandler(this.host,"keydown.navigationbar"+this.widgetID);a.each(this.items,function(c,e){var d=this;b.removeHandler(d._header,"click.navigationbar"+b.widgetID);b.removeHandler(d._header,"dblclick.navigationbar"+b.widgetID);b.removeHandler(d._header,"mouseenter.navigationbar"+b.widgetID);b.removeHandler(d._header,"mouseleave.navigationbar"+b.widgetID);b.removeHandler(d._header,"focus.navigationbar"+b.widgetID);b.removeHandler(d._header,"blur.navigationbar"+b.widgetID);b.removeHandler(d._content,"focus.navigationbar"+b.widgetID);b.removeHandler(d._content,"blur.navigationbar"+b.widgetID);b.removeHandler(d._header_text,"focus.navigationbar"+b.widgetID);b.removeHandler(d._arrow,"focus.navigationbar"+b.widgetID)})},_setTheme:function(){var b=this;this.host.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-widget"));if(this.rtl==true){this.host.addClass(this.toThemeProperty("jqx-rtl"))}a.each(this.items,function(c,e){var d=this;d._header.css("position","relative");d._content.css("position","relative");d._header.addClass(b.toThemeProperty("jqx-widget-header"));d._header.addClass(b.toThemeProperty("jqx-item"));d._content.addClass(b.toThemeProperty("jqx-widget-content"));if(d.disabled==false){d._header.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));d._content.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));if(d.expanded==true){d._header.addClass(b.toThemeProperty("jqx-fill-state-pressed"));d._header.addClass(b.toThemeProperty("jqx-expander-header-expanded"))}else{d._header.addClass(b.toThemeProperty("jqx-fill-state-normal"));d._header.removeClass(b.toThemeProperty("jqx-expander-header-expanded"))}if(!b._isTouchDevice){b.addHandler(d._header,"mouseenter.navigationbar"+b.widgetID,function(){if(d._expandChecker==1){if(!d.focusedH){d._header.css("z-index",5)}d._header.removeClass(b.toThemeProperty("jqx-fill-state-normal"));d._header.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));d._header.addClass(b.toThemeProperty("jqx-fill-state-hover"));d._header.addClass(b.toThemeProperty("jqx-expander-header-hover"));d._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));d._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-down-hover"));if(d.expanded){d._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-up-hover"))}else{d._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))}}});b.addHandler(d._header,"mouseleave.navigationbar"+b.widgetID,function(){if(!d.focusedH){d._header.css("z-index",0)}d._header.removeClass(b.toThemeProperty("jqx-fill-state-hover"));d._header.removeClass(b.toThemeProperty("jqx-expander-header-hover"));d._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));d._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-down-hover"));if(d._expandChecker==1){d._header.addClass(b.toThemeProperty("jqx-fill-state-normal"))}else{d._header.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}d._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-up-hover"));d._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))})}}else{d._header.addClass(b.toThemeProperty("jqx-fill-state-disabled"));d._content.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}b.host.addClass(b.toThemeProperty("jqx-navigationbar"));d._header.addClass(b.toThemeProperty("jqx-expander-header"));d._content.addClass(b.toThemeProperty("jqx-expander-content"));d._content.addClass(b.toThemeProperty("jqx-expander-content-bottom"));if(c!=0){d._header.css("margin-top",-1)}d._arrow.addClass(b.toThemeProperty("jqx-expander-arrow"))})},_checkContent:function(b){var d=this.items[b];var c=d._content;this._cntntEmpty=/^\s*$/.test(this.items[b]._content.html());if(this._cntntEmpty==true){c.css("display","none");c.height(0);c.addClass(this.toThemeProperty("jqx-expander-content-empty"))}else{if(d.expanded){c.css("display","block")}if(this.expandMode=="singleFitHeight"){var e=1;if(b!=0){e=2}c.height(this.host.height()-this.headersHeight+e)}else{c.height("auto")}c.removeClass(this.toThemeProperty("jqx-expander-content-empty"))}},_checkHeight:function(){var f=this;this.totalHeight=0;this.heightFlag;var e=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-left")):0;var g=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-right")):0;var b=2;var c=e+g+b;if(isNaN(c)){c=12}var d=17;a.each(this.items,function(h,j){var i=this;f.totalHeight+=(i.expanded?i._content.outerHeight():0)+i._header.outerHeight()});if(this.width!="auto"&&this.height!="auto"&&this.expandMode!="singleFitHeight"){if(this.totalHeight>this.host.height()){this.host.width(this.width+c+d);this.heightFlag=true}else{this.host.width(this.width+c);this.heightFlag=false}}},_enabledDisabledCheck:function(){var b=this;if(this.disabled==true){a.each(this.items,function(c,e){var d=this;d.disabled=true})}else{a.each(this.items,function(c,e){var d=this;d.disabled=false})}},_updateExpandedIndexes:function(){var b=this;this.expandedIndexes=[];a.each(this.items,function(c,e){var d=this;if(d.expanded==true){b.expandedIndexes.push(c);if(b.expandMode=="single"||b.expandMode=="singleFitHeight"||b.expandMode=="toggle"||b.expandMode=="none"){return false}}})},_keyBoard:function(){var b=this;this._focus();this.addHandler(this.host,"keydown.navigationbar"+this.widgetID,function(c){var d=false;a.each(b.items,function(e,h){var g=this;var f=b.items.length;if((g.focusedH==true||g.focusedC==true)&&g.disabled==false){switch(c.keyCode){case 13:case 32:if(b.toggleMode!="none"){if(g.focusedH==true){b._animate(e,true)}d=true}break;case 37:if(e!=0){b.items[e-1]._header.focus()}else{var f=b.items.length;b.items[f-1]._header.focus()}d=true;break;case 38:if(c.ctrlKey==false){if(e!=0){b.items[e-1]._header.focus()}else{var f=b.items.length;b.items[f-1]._header.focus()}}else{if(g.focusedC==true){g._header.focus()}}d=true;break;case 39:if(e!=f-1){b.items[e+1]._header.focus()}else{b.items[0]._header.focus()}d=true;break;case 40:if(c.ctrlKey==false){if(e!=f-1){b.items[e+1]._header.focus()}else{b.items[0]._header.focus()}}else{if(g.expanded==true){g._content.focus()}}d=true;break;case 35:if(e!=f-1){b.items[f-1]._header.focus()}d=true;break;case 36:if(e!=0){b.items[0]._header.focus()}d=true;break}return false}});if(d&&c.preventDefault){c.preventDefault()}return !d})},_focus:function(){var b=this;if(this.disabled){return}a.each(this.items,function(c,e){var d=this;b.addHandler(d._header,"focus.navigationbar"+this.widgetID,function(){d.focusedH=true;a.jqx.aria(d._header,"aria-selected",true);d._header.addClass(b.toThemeProperty("jqx-fill-state-focus"));d._header.css("z-index",10)});b.addHandler(d._header,"blur.navigationbar"+this.widgetID,function(){d.focusedH=false;a.jqx.aria(d._header,"aria-selected",false);if(d._header.hasClass("jqx-expander-header-hover")){d._header.css("z-index",5)}else{d._header.css("z-index",0)}d._header.removeClass(b.toThemeProperty("jqx-fill-state-focus"))});b.addHandler(d._header_text,"focus.navigationbar"+this.widgetID,function(){d._header.focus()});b.addHandler(d._arrow,"focus.navigationbar"+this.widgetID,function(){d._header.focus()});b.addHandler(d._content,"focus.navigationbar"+this.widgetID,function(){d.focusedC=true;d._content.addClass(b.toThemeProperty("jqx-fill-state-focus"))});b.addHandler(d._content,"blur.navigationbar"+this.widgetID,function(){d.focusedC=false;d._content.removeClass(b.toThemeProperty("jqx-fill-state-focus"))})})}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxNumberInput","",{});a.extend(a.jqx._jqxNumberInput.prototype,{defineInstance:function(){var b={value:null,decimal:0,min:-99999999,max:99999999,width:200,validationMessage:"Invalid value",height:25,textAlign:"right",readOnly:false,promptChar:"_",decimalDigits:2,decimalSeparator:".",groupSeparator:",",groupSize:3,symbol:"",symbolPosition:"left",digits:8,negative:false,negativeSymbol:"-",disabled:false,inputMode:"advanced",spinButtons:false,spinButtonsWidth:18,spinButtonsStep:1,autoValidate:true,spinMode:"advanced",enableMouseWheel:true,touchMode:"auto",rtl:false,events:["valueChanged","textchanged","mousedown","mouseup","keydown","keyup","keypress","change"],aria:{"aria-valuenow":{name:"decimal",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},invalidArgumentExceptions:["invalid argument exception"]};a.extend(true,this,b);return b},createInstance:function(b){var c=this.host.attr("value");if(c!=undefined){this.decimal=c}if(this.value!=null){this.decimal=this.value}this.render()},_doTouchHandling:function(){var e=this;var g=e.savedValue;if(!e.parsing){e.parsing=true}if(e.parsing){if(e.numberInput.val()&&e.numberInput.val().indexOf("-")==0){e.setvalue("negative",true)}else{e.setvalue("negative",false)}var f=e.numberInput.val();for(var c=0;c<f.length-1;c++){var d=f.substring(c,c+1);if(isNaN(parseFloat(d))&&d!=e.symbol&&d!="%"&&d!="$"&&d!="."&&d!=","&&d!="-"){e.numberInput[0].value=g;e.parsing=false;return}}e.ValueString=e.GetValueString(e.numberInput.val(),e.decimalSeparator,e.decimalSeparator!="");e.ValueString=new Number(e.ValueString).toFixed(e.decimalDigits);e._parseDecimalInSimpleMode();e.decimal=e.ValueString;var b=e.getvalue("negative");if(b){e.decimal="-"+e.ValueString}e.parsing=false}},render:function(){this.host.attr({role:"spinbutton"});this.host.attr("data-role","input");a.jqx.aria(this);a.jqx.aria(this,"aria-multiline",false);var f=this;if(this.officeMode||(this.theme&&this.theme.indexOf("office")!=-1)){if(this.spinButtonsWidth==18){this.spinButtonsWidth=15}}if(a.jqx.mobile.isTouchDevice()||this.touchMode===true){this.inputMode="textbox";this.spinMode="simple"}if(this.decimalSeparator==""){this.decimalSeparator=" "}this.host.addClass(this.toThemeProperty("jqx-input"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-numberinput"));if(this.spinButtons){this._spinButtons()}else{this.numberInput=a("<input autocomplete='off' type='textarea'/>").appendTo(this.host);this.numberInput.addClass(this.toThemeProperty("jqx-input-content"));this.numberInput.addClass(this.toThemeProperty("jqx-widget-content"))}var d=this.host.attr("name");if(d){this.numberInput.attr("name",d)}if(this.host.attr("tabindex")){this.numberInput.attr("tabindex",this.host.attr("tabindex"));this.host.removeAttr("tabindex")}if(a.jqx.mobile.isTouchDevice()||this.touchMode===true||this.inputMode=="textbox"){var f=this;f.savedValue="";this.addHandler(this.numberInput,"focus",function(){f.savedValue=f.numberInput[0].value});this.addHandler(this.numberInput,"change",function(){f._doTouchHandling()})}var h=a.data(this.host[0],"jqxNumberInput");h.jqxNumberInput=this;var f=this;if(this.host.parents("form").length>0){this.addHandler(this.host.parents("form"),"reset",function(){setTimeout(function(){f.setDecimal(0)},10)})}this.propertyChangeMap.disabled=function(n,q,o,r){if(r){n.numberInput.addClass(c.toThemeProperty("jqx-input-disabled"));n.numberInput.attr("disabled",true)}else{n.host.removeClass(c.toThemeProperty("jqx-input-disabled"));n.numberInput.attr("disabled",false)}if(n.spinButtons&&n.host.jqxRepeatButton){n.upbutton.jqxRepeatButton({disabled:r});n.downbutton.jqxRepeatButton({disabled:r})}};if(this.disabled){this.numberInput.addClass(this.toThemeProperty("jqx-input-disabled"));this.numberInput.attr("disabled",true);this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this.selectedText="";this.decimalSeparatorPosition=-1;var l=this.element.id;var e=this.element;var c=this;this.oldValue=this._value();this.items=new Array();var g=this.value;var b=this.decimal;this._initializeLiterals();this._render();this.setDecimal(b);var f=this;setTimeout(function(){},100);this._addHandlers();a.jqx.utilities.resize(this.host,function(){f._render()})},refresh:function(b){if(!b){this._render()}},wheel:function(d,c){if(!c.enableMouseWheel){return}var e=0;if(!d){d=window.event}if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(d.preventDefault){d.preventDefault()}if(d.originalEvent!=null){d.originalEvent.mouseHandled=true}if(d.stopPropagation!=undefined){d.stopPropagation()}if(b){b=false;d.returnValue=b;return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(b){if(b<0){this.spinDown()}else{this.spinUp()}return true},_addHandlers:function(){var b=this;this.addHandler(this.numberInput,"paste",function(f){var d=b._selection();f.preventDefault();if(f.originalEvent.clipboardData){content=(f.originalEvent||f).clipboardData.getData("text/plain")}else{if(window.clipboardData){content=window.clipboardData.getData("Text")}}this.selectedText=content;a.data(document.body,"jqxSelection",this.selectedText);if(b.inputMode!="simple"){b._pasteSelectedText()}else{b.val(content)}setTimeout(function(){b._setSelectionStart(d.start)})});this.addHandler(this.numberInput,"mousedown",function(d){return b._raiseEvent(2,d)});this._mousewheelfunc=this._mousewheelfunc||function(d){if(!b.editcell){b.wheel(d,b);return false}};this.removeHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"mousewheel",this._mousewheelfunc);var c="";this.addHandler(this.numberInput,"focus",function(d){a.data(b.numberInput,"selectionstart",b._selection().start);b.host.addClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.spincontainer){b.spincontainer.addClass(b.toThemeProperty("jqx-numberinput-focus"))}c=b.numberInput.val()});this.addHandler(this.numberInput,"blur",function(e){if(b.inputMode=="simple"){b._exitSimpleInputMode(e,b,false,c)}if(b.autoValidate){var f=parseFloat(b.decimal);var d=b.getvalue("negative");if(d&&b.decimal>0){f=-parseFloat(b.decimal)}if(f>b.max){b._disableSetSelection=true;b.setDecimal(b.max);b._disableSetSelection=false}if(f<b.min){b._disableSetSelection=true;b.setDecimal(b.min);b._disableSetSelection=false}}b.host.removeClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.spincontainer){b.spincontainer.removeClass(b.toThemeProperty("jqx-numberinput-focus"))}if(b.numberInput.val()!=c){b._raiseEvent(7,e);a.jqx.aria(b,"aria-valuenow",b.decimal);b.element.value=b.decimal}return true});this.addHandler(this.numberInput,"mouseup",function(d){return b._raiseEvent(3,d)});this.addHandler(this.numberInput,"keydown",function(d){return b._raiseEvent(4,d)});this.addHandler(this.numberInput,"keyup",function(d){return b._raiseEvent(5,d)});this.addHandler(this.numberInput,"keypress",function(d){return b._raiseEvent(6,d)})},focus:function(){try{this.numberInput.focus()}catch(b){}},_removeHandlers:function(){var b=this;this.removeHandler(this.numberInput,"mousedown");var c=a.jqx.mobile.isOperaMiniMobileBrowser();if(c){this.removeHandler(a(document),"click."+this.element.id,b._exitSimpleInputMode,b)}this.removeHandler(this.numberInput,"paste");this.removeHandler(this.numberInput,"focus");this.removeHandler(this.numberInput,"blur");this.removeHandler(this.numberInput,"mouseup");this.removeHandler(this.numberInput,"keydown");this.removeHandler(this.numberInput,"keyup");this.removeHandler(this.numberInput,"keypress")},_spinButtons:function(){if(this.host.jqxRepeatButton){if(!this.numberInput){this.numberInput=a("<input autocomplete='off' style='position: relative; float: left;' type='textarea'/>");this.numberInput.appendTo(this.host);this.numberInput.addClass(this.toThemeProperty("jqx-input-content"));this.numberInput.addClass(this.toThemeProperty("jqx-widget-content"))}else{this.numberInput.css("float","left")}if(this.spincontainer){if(this.upbutton){this.upbutton.jqxRepeatButton("destroy")}if(this.downbutton){this.downbutton.jqxRepeatButton("destroy")}this.spincontainer.remove()}this.spincontainer=a('<div style="float: right; height: 100%; overflow: hidden; position: relative;"></div>');if(this.rtl){this.spincontainer.css("float","right");this.numberInput.css("float","right");this.spincontainer.css("left","-1px")}this.host.append(this.spincontainer);this.upbutton=a('<div style="overflow: hidden; padding: 0px; margin-left: -1px; position: relative;"><div></div></div>');this.spincontainer.append(this.upbutton);this.upbutton.jqxRepeatButton({overrideTheme:true,disabled:this.disabled,roundedCorners:"top-right"});this.downbutton=a('<div style="overflow: hidden; padding: 0px; margin-left: -1px; position: relative;"><div></div></div>');this.spincontainer.append(this.downbutton);this.downbutton.jqxRepeatButton({overrideTheme:true,disabled:this.disabled,roundedCorners:"bottom-right"});var d=this;this.downbutton.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.upbutton.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.upbutton.addClass(this.toThemeProperty("jqx-rc-tr"));this.downbutton.addClass(this.toThemeProperty("jqx-rc-br"));this.addHandler(this.downbutton,"mouseup",function(e){if(!d.disabled){d.downbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-selected"))}});this.addHandler(this.upbutton,"mouseup",function(e){if(!d.disabled){d.upbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-selected"))}});this.removeHandler(a(document),"mouseup."+this.element.id);this.addHandler(a(document),"mouseup."+this.element.id,function(e){d.upbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-selected"));d.downbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-selected"))});this.addHandler(this.downbutton,"mousedown",function(e){if(!d.disabled){if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._inputSelection=d._selection()}d.downbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-selected"));e.preventDefault();e.stopPropagation();return false}});this.addHandler(this.upbutton,"mousedown",function(e){if(!d.disabled){if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._inputSelection=d._selection()}d.upbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-selected"));e.preventDefault();e.stopPropagation();return false}});this.addHandler(this.upbutton,"mouseenter",function(e){d.upbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))});this.addHandler(this.upbutton,"mouseleave",function(e){d.upbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))});this.addHandler(this.downbutton,"mouseenter",function(e){d.downbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))});this.addHandler(this.downbutton,"mouseleave",function(e){d.downbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))});this.upbutton.css("border-width","0px");this.downbutton.css("border-width","0px");if(this.disabled){this.upbutton[0].disabled=true;this.downbutton[0].disabled=true}else{this.upbutton[0].disabled=false;this.downbutton[0].disabled=false}this.spincontainer.addClass(this.toThemeProperty("jqx-input"));this.spincontainer.addClass(this.toThemeProperty("jqx-rc-r"));this.spincontainer.css("border-width","0px");if(!this.rtl){this.spincontainer.css("border-left-width","1px")}else{this.spincontainer.css("border-right-width","1px")}this._upArrow=this.upbutton.find("div");this._downArrow=this.downbutton.find("div");this._upArrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._downArrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._upArrow.addClass(this.toThemeProperty("jqx-input-icon"));this._downArrow.addClass(this.toThemeProperty("jqx-input-icon"));var d=this;this._upArrow.hover(function(){if(!d.disabled){d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))}},function(){d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))});this._downArrow.hover(function(){if(!d.disabled){d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))}},function(){d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))});var b=a.jqx.mobile.isTouchDevice();var c="click";if(b){c=a.jqx.mobile.getTouchEventName("touchstart")}if(b){this.addHandler(this.downbutton,"click",function(e){d.spinDown()});this.addHandler(this.upbutton,"click",function(e){d.spinUp()})}this.addHandler(this.downbutton,c,function(e){if(!b){if(d._selection().start==0){d._setSelectionStart(d.numberInput.val().length)}if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._setSelectionStart(d._inputSelection.start)}}else{e.preventDefault();e.stopPropagation()}d.spinDown();return false});this.addHandler(this.upbutton,c,function(e){if(!b){if(d._selection().start==0){d._setSelectionStart(d.numberInput.val().length)}if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._setSelectionStart(d._inputSelection.start)}}else{e.preventDefault();e.stopPropagation()}d.spinUp();return false})}else{throw new Error("jqxNumberInput: Missing reference to jqxbuttons.js.")}},spinDown:function(){var o=this;if(o.spinMode=="none"){return}if(this.decimal==null){this.setDecimal(-1);return}var b=this.getvalue("negative");var t=b?-1:0;if(a.jqx.mobile.isTouchDevice()||this.inputMode=="textbox"){o._doTouchHandling()}if(!o.disabled){var r=this._selection();var q=this.decimal;var l=this.getDecimal();if(l<this.min){l=this.min;this.setDecimal(this.min);this._setSelectionStart(r.start);this.spinDown();return}else{if(l>this.max){l=this.max;this.setDecimal(this.max);this._setSelectionStart(r.start);this.spinDown();return}}if(o.spinButtonsStep<0){o.spinButtonsStep=1}var d=parseInt(o.decimal)-o.spinButtonsStep;d=d.toString().length;var f=t+d<=o.digits;if(o.spinMode!="advanced"){if(l-o.spinButtonsStep>=o.min&&f){var v=1;for(g=0;g<o.decimalDigits;g++){v=v*10}var e=(v*l)-(v*o.spinButtonsStep);e=e/v;e=this._parseDecimalValueToEditorValue(e);o.setDecimal(e)}}else{var s=this._getspindecimal();var n=this._getSeparatorPosition();var l=parseFloat(s.decimal);if(o.spinButtonsStep<0){o.spinButtonsStep=1}var d=parseInt(l)-o.spinButtonsStep;d=d.toString().length;var f=t+d<=o.digits;var v=1;var c=s.decimal.indexOf(".");if(c!=-1){var h=s.decimal.length-c-1;var v=1;for(var g=0;g<h;g++){v=v*10}l-=new Number(o.spinButtonsStep/v);l=l.toFixed(h);var c=l.toString().indexOf(".");if(c==-1){l=l.toString()+"."}var u=l.toString()+s.afterdecimal;u=new Number(u);u=u.toFixed(o.decimalDigits);if(u>=o.min){u=this._parseDecimalValueToEditorValue(u);o.setDecimal(u)}}else{if(l-o.spinButtonsStep>=o.min&&f){var e=(v*l)-(v*o.spinButtonsStep);e=e/v;var u=e.toString()+s.afterdecimal;if(u>=o.min){u=this._parseDecimalValueToEditorValue(u);o.setDecimal(u)}}}}if(u==undefined||this.inputMode!="simple"){this._setSelectionStart(r.start);o.savedValue=o.numberInput[0].value;if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal);return}u=this.decimal.toString();var b=this.getvalue("negative");if(t==0&&b){this._setSelectionStart(r.start+1)}else{if((u!=undefined&&(q==undefined||q.toString().length==u.length))){this._setSelectionStart(r.start)}else{if(b){this._setSelectionStart(r.start+1)}else{this._setSelectionStart(r.start-1)}}}if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal)}},_getspindecimal:function(){var q=this._selection();var r="";var n=this._getSeparatorPosition();var t=this._getVisibleItems();var e=this._getHiddenPrefixCount();var s=this.numberInput.val();if(this.numberInput.val().length==q.start&&q.length==0){this._setSelection(q.start,q.start+1);q=this._selection()}var l=this.inputMode!="advanced";for(var c=0;c<q.start;c++){if(l){var o=s.substring(c,c+1);var h=(!isNaN(parseInt(o)));if(h){r+=o}if(o==this.decimalSeparator){r+=o}continue}if(t[c].canEdit&&t[c].character!=this.promptChar){r+=t[c].character}else{if(!t[c].canEdit&&this.decimalSeparatorPosition!=-1&&t[c]==t[this.decimalSeparatorPosition-e]){if(r.length==0){r="0"}r+=t[c].character}}}var g="";for(var c=q.start;c<t.length;c++){if(l){var o=s.substring(c,c+1);var h=(!isNaN(parseInt(o)));if(h){g+=o}if(o==this.decimalSeparator){g+=o}continue}if(t[c].canEdit&&t[c].character!=this.promptChar){g+=t[c].character}else{if(!t[c].canEdit&&this.decimalSeparatorPosition!=-1&&t[c]==t[this.decimalSeparatorPosition-e]){g+=t[c].character}}}var b=this.getvalue("negative");var f=b?"-"+this._parseDecimalValue(r).toString():this._parseDecimalValue(r).toString();return{decimal:f,afterdecimal:this._parseDecimalValue(g)}},_parseDecimalValue:function(c){if(this.decimalSeparator!="."){var d=c.toString().indexOf(this.decimalSeparator);if(d>=0){var b=c.toString().substring(0,d)+"."+c.toString().substring(d+1);return b}}return c},_parseDecimalValueToEditorValue:function(c){if(this.decimalSeparator!="."){var d=c.toString().indexOf(".");if(d>=0){var b=c.toString().substring(0,d)+this.decimalSeparator+c.toString().substring(d+1);return b}}return c},spinUp:function(){var q=this;if(q.spinMode=="none"){return}if(this.decimal==null){this.setDecimal(1);return}if(a.jqx.mobile.isTouchDevice()||this.inputMode=="textbox"){q._doTouchHandling()}var b=this.getvalue("negative");var u=b?-1:0;if(!q.disabled){var s=this._selection();var r=q.decimal;var n=q.getDecimal();if(n<this.min){n=this.min;this.setDecimal(this.min);this._setSelectionStart(s.start);this.spinUp();return}else{if(n>this.max){n=this.max;this.setDecimal(this.max);this._setSelectionStart(s.start);this.spinUp();return}}if(q.spinButtonsStep<0){q.spinButtonsStep=1}var d=parseInt(q.decimal)+q.spinButtonsStep;d=d.toString().length;var g=u+d<=q.digits;if(q.spinMode!="advanced"){if(n+q.spinButtonsStep<=q.max&&g){var w=1;for(var l=0;l<q.decimalDigits;l++){w=w*10}var f=(w*n)+(w*q.spinButtonsStep);f=f/w;f=this._parseDecimalValueToEditorValue(f);q.setDecimal(f)}}else{var t=this._getspindecimal();var o=this._getSeparatorPosition();var n=parseFloat(t.decimal);if(q.spinButtonsStep<0){q.spinButtonsStep=1}var d=parseInt(n)+q.spinButtonsStep;d=d.toString().length;var g=u+d<=q.digits;var w=1;var c=t.decimal.indexOf(".");if(c!=-1){var h=t.decimal.length-c-1;var w=1;for(var l=0;l<h;l++){w=w*10}n+=new Number(q.spinButtonsStep/w);n=n.toFixed(h);var c=n.toString().indexOf(".");if(c==-1){n=n.toString()+"."}var v=n.toString()+t.afterdecimal;v=new Number(v);v=v.toFixed(q.decimalDigits);var e=new Number(v).toFixed(q.decimalDigits);if(e<=q.max){v=this._parseDecimalValueToEditorValue(v);q.setDecimal(v)}else{v=undefined}}else{if(n+q.spinButtonsStep<=q.max&&g){var f=(w*n)+(w*q.spinButtonsStep);f=f/w;var v=f.toString()+t.afterdecimal;var e=new Number(v).toFixed(q.decimalDigits);if(e<=q.max){v=this._parseDecimalValueToEditorValue(v);if(b&&v.indexOf("-")==-1){if(t.decimal!="-0"){v="-"+v}}q.setDecimal(v)}else{v=undefined}}}}if(v==undefined||this.inputMode!="simple"){this._setSelectionStart(s.start);q.savedValue=q.numberInput[0].value;if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal);return}v=this.decimal.toString();var b=this.getvalue("negative");if(u==-1&&!b){this._setSelectionStart(-1+s.start)}else{if((v!=undefined&&(r==undefined||r.toString().length==v.length))){this._setSelectionStart(s.start)}else{if(b){this._setSelectionStart(s.start)}else{this._setSelectionStart(1+s.start)}}}if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal)}},_exitSimpleInputMode:function(b,o,h,d){if(o==undefined){o=b.data}if(o==null){return}if(h==undefined){if(b.target!=null&&o.element!=null){if((b.target.id!=undefined&&b.target.id.toString().length>0&&o.host.find("#"+b.target.id).length>0)||b.target==o.element){return}}var f=o.host.offset();var e=f.left;var g=f.top;var c=o.host.width();var n=o.host.height();var q=a(b.target).offset();if(q.left>=e&&q.left<=e+c){if(q.top>=g&&q.top<=g+n){return}}}if(a.jqx.mobile.isOperaMiniBrowser()){o.numberInput.attr("readonly",true)}if(o.disabled||o.readOnly){return}var l=a.data(o.numberInput,"simpleInputMode");if(l==null){return}a.data(o.numberInput,"simpleInputMode",null);this._parseDecimalInSimpleMode();return false},_getDecimalInSimpleMode:function(){var d=this.decimal;if(this.decimalSeparator!="."){var b=d.toString().indexOf(this.decimalSeparator);if(b>0){var c=d.toString().substring(0,b);var d=c+"."+d.toString().substring(b+1)}}return d},_parseDecimalInSimpleMode:function(d){var o=this;var b=o.getvalue("negative");var e=this.ValueString;if(e==undefined){e=this.GetValueString(this.numberInput.val(),this.decimalSeparator,this.decimalSeparator!="")}if(this.decimalSeparator!="."){var g=e.toString().indexOf(".");if(g>0){var f=e.toString().substring(0,g);var c=f+this.decimalSeparator+e.toString().substring(g+1);e=c}}var h=b?"-":"";if(this.symbolPosition=="left"){h+=this.symbol}var l=this.digits%this.groupSize;if(l==0){l=this.groupSize}var n=e.toString();if(n.indexOf("-")>=0){n=n.substring(n.indexOf("-")+1)}h+=n;if(this.symbolPosition=="right"){h+=this.symbol}if(d!=false){o.numberInput.val(h)}},_enterSimpleInputMode:function(f,d){if(d==undefined){d=f.data}var e=this._selection();if(d==null){return}var c=d.getvalue("negative");var b=d.decimal;if(c){if(b>0){b=-b}}d.numberInput.val(b);a.data(d.numberInput,"simpleInputMode",true);if(a.jqx.mobile.isOperaMiniBrowser()){d.numberInput.attr("readonly",false)}this._parseDecimalInSimpleMode();this._setSelectionStart(e.start)},setvalue:function(b,c){if(this[b]!==undefined){if(b=="decimal"){this._setDecimal(c)}else{this[b]=c;this.propertyChangedHandler(this,b,c,c)}}},getvalue:function(b){if(b=="decimal"){if(this.negative!=undefined&&this.negative==true){return -Math.abs(this[b])}}if(b in this){return this[b]}return null},_getString:function(){var c="";for(var b=0;b<this.items.length;b++){var d=this.items[b].character;c+=d}return c},_literal:function(d,b,c,e){return{character:d,regex:b,canEdit:c,isSeparator:e}},_initializeLiterals:function(){if(this.inputMode=="textbox"){return}var h=0;var e=this.negativeSymbol.length;for(var d=0;d<e;d++){var g=this.negativeSymbol.substring(d,d+1);var n="";var b=false;var o=null;if(this.negative){o=this._literal(g,n,b,false)}else{o=this._literal("",n,b,false)}this.items[h]=o;h++}var c=this.symbol.length;if(this.symbolPosition=="left"){for(d=0;d<c;d++){var g=this.symbol.substring(d,d+1);var n="";var b=false;var o=this._literal(g,n,b,false);this.items[h]=o;h++}}var f=this.digits%this.groupSize;if(f==0){f=this.groupSize}for(var d=0;d<this.digits;d++){var g=this.promptChar;var n="\\d";var b=true;var o=this._literal(g,n,b,false);this.items[h]=o;h++;if(d<this.digits-1&&this.groupSeparator!=undefined&&this.groupSeparator.length>0){f--;if(f==0){f=this.groupSize;var l=this._literal(this.groupSeparator,"",false,false);this.items[h]=l;h++}}else{if(d==this.digits-1){o.character=0}}}this.decimalSeparatorPosition=-1;if(this.decimalDigits!=undefined&&this.decimalDigits>0){var g=this.decimalSeparator;if(g.length==0){g="."}var o=this._literal(g,"",false,true);this.items[h]=o;this.decimalSeparatorPosition=h;h++;for(var d=0;d<this.decimalDigits;d++){var r=0;var n="\\d";var q=this._literal(r,n,true,false);this.items[h]=q;h++}}if(this.symbolPosition=="right"){for(var d=0;d<c;d++){var g=this.symbol.substring(d,d+1);var n="";var b=false;var o=this._literal(g,n,b);this.items[h]=o;h++}}},_match:function(c,b){var d=new RegExp(b,"i");return d.test(c)},_raiseEvent:function(r,d){var o=this.events[r];var c={};c.owner=this;if(this.host.css("display")=="none"){return true}var x=d.charCode?d.charCode:d.keyCode?d.keyCode:0;var f=true;var h=this.readOnly;var v=this;if(r==3||r==2){if(!this.disabled){if(this.inputMode!="simple"&&this.inputMode!="textbox"){this._handleMouse(d)}else{return true}}}if(r==0){var g=this.getvalue("decimal");if((this.max<g)||(this.min>g)){this.host.addClass(this.toThemeProperty("jqx-input-invalid"))}else{this.host.removeClass(this.toThemeProperty("jqx-input-invalid"));this.host.addClass(this.toThemeProperty("jqx-input"));this.host.addClass(this.toThemeProperty("jqx-rc-all"))}}var s=new a.Event(o);s.owner=this;c.value=this.getvalue("decimal");c.text=this.numberInput.val();s.args=c;if(o!=undefined){if(r!=4&&r!=5&&r!=6){f=this.host.trigger(s)}}var v=this;if(this.inputMode=="textbox"){return f}if(this.inputMode!="simple"){if(r==4){if(h||this.disabled){return false}f=v._handleKeyDown(d,x)}else{if(r==5){if(h||this.disabled){f=false}}else{if(r==6){if(h||this.disabled){return false}f=v._handleKeyPress(d,x)}}}}else{if(r==4||r==5||r==6){if(a.jqx.mobile.isTouchDevice()||this.touchMode===true){return true}if(h||this.disabled){return false}var w=String.fromCharCode(x);var q=parseInt(w);var t=true;if(!d.ctrlKey&&!d.shiftKey&&!d.metaKey){if(x>=65&&x<=90){t=false}}if(r==6&&a.jqx.browser.opera!=undefined){if(x==8){return false}}if(t){if(r==4){t=v._handleSimpleKeyDown(d,x)}if(x==189||x==45||x==109||x==173){var y=v._selection();if(r==4){var l=v.getvalue("negative");if(l==false){v.setvalue("negative",true)}else{v.setvalue("negative",false)}v.decimal=v.ValueString;v._parseDecimalInSimpleMode();v._setSelectionStart(y.start);t=false;v._raiseEvent(0,v.value);v._raiseEvent(1,v.numberInput.val())}}var b=c.ctrlKey||c.metaKey;if(!a.jqx.browser.msie){var u=d;if((b&&x==99)||(b&&x==67)||(b&&x==122)||(b&&x==90)||(b&&x==118)||(b&&x==86)||(u.shiftKey&&x==45)){if(a.jqx.browser.webkit||a.jqx.browser.chrome){v._handleSimpleKeyDown(d,x)}if(x==67){return true}return false}}if((b&&x==97)||(b&&x==65)){return true}if(r==6&&t){var n=this._isSpecialKey(x);return n}}return t}}return f},GetSelectionInValue:function(h,g,f,e){var c=0;for(i=0;i<g.length;i++){if(i>=h){break}var d=g.substring(i,i+1);var b=(!isNaN(parseInt(d)));if(b||(e&&g.substring(i,i+1)==f)){c++}}return c},GetSelectionLengthInValue:function(g,h,f,e){var c=0;for(i=0;i<f.length;i++){if(i>=g+h){break}var d=f.substring(i,i+1);var b=(!isNaN(parseInt(d)));if(h>0&&i>=g&&b||(i>=g&&f[i].toString()==e)){c++}}return c},GetInsertTypeByPositionInValue:function(e,g,h,f){var c="before";var b=this.GetValueString(h,g,f);var d=this.GetDigitsToSeparator(0,b,g);if(e>d){c="after"}return c},RemoveRange:function(f,e,q,g,w,b){var h=this.digits;var r=f;var x=e;var c=0;var s=this.decimal;var B=this._selection();var g=this.decimalSeparator;var l=g!="";if(x==0&&this.ValueString.length<this.decimalPossibleChars-1){return c}var y=this.GetSeparatorPositionInText(g,q);if(!w){y=this.GetSeparatorPositionInText(g,q)}if(y<0&&!l&&q.length>1){y=q.length}if(y==-1){y=q.length}var d=l?1:0;if(e<2&&b==true){var A=this.ValueString.length-this.decimalDigits-d;if((A)==h&&f+e<y){x++}}var n="";for(var v=0;v<q.length;v++){if(v<r||v>=r+x){n+=q.substring(v,v+1);continue}else{var u=q.substring(v,v+1);if(u==g){n+=g;continue}else{var u=q.substring(v,v+1);if(this.symbol&&this.symbol!=""&&this.symbol.indexOf(u)>=0){continue}if(v>y){n+="0";continue}}}var u=q.substring(v,v+1);var t=(!isNaN(parseInt(u)));if(t){c++}}if(n.length==0){n="0"}if(w){this.numberInput.val(n)}else{this.ValueString=n}var o=n.substring(0,1);if(o==g&&isNaN(parseInt(o))){var z="0"+n;n=z}this.ValueString=this.GetValueString(n,g,l);this.decimal=this.ValueString;this._parseDecimalInSimpleMode();this._setSelectionStart(r);return c},InsertDigit:function(v,B){if(typeof this.digits!="number"){this.digits=parseInt(this.digits)}if(typeof this.decimalDigits!="number"){this.decimalDigits=parseInt(this.decimalDigits)}var l=1+this.digits;var C=this._selection();var q=this.getvalue("negative");var d=false;if(C.start==0&&this.symbol!=""&&this.symbolPosition=="left"){this._setSelectionStart(C.start+1);C=this._selection();d=true}if((q&&d)||(q&&!d&&C.start==0)){this._setSelectionStart(C.start+1);C=this._selection()}var z=this.numberInput.val().substring(C.start,C.start+1);var s=this.numberInput.val();var g=this.decimalSeparator;var n=g!=""&&this.decimalDigits>0;if(z==this.symbol&&this.symbolPosition=="right"){if(this.decimalDigits==0){this.ValueString=this.GetValueString(s,g,n);if(this.ValueString.length>=l){return}}else{return}}this.ValueString=this.GetValueString(s,g,n);if(this.ValueString==""){this.ValueString=new Number(0).toFixed(this.decimalDigits)}var y=this.ValueString;if(this.decimalDigits>0&&B>=y.length){B=y.length-1}var t="";if(B<y.length){t=y.substring(B,B+1)}var h=false;var A=false;var e=this.GetInsertTypeByPositionInValue(B,g,s,n);if(e=="after"){h=true}var b=n?1:0;if(t!=g&&(this.ValueString.length-this.decimalDigits-b)>=l-1){h=true}if(t==="0"&&this.ValueString.length===1&&this.decimalDigits===0){h=true}var u=false;var w=n?1:0;if(!h&&this.ValueString&&this.ValueString.length>=this.digits+this.decimalDigits+w){return}if(h&&t!=g){if(u){B++}var r=y.substring(0,B);if(r.length==y.length){if(this.ValueString.length>=this.digits+this.decimalDigits+w){return}}var x=v;var c="";if(B+1<y.length){c=y.substring(B+1)}var o=r+x+c;this.ValueString=o}else{var r=y.substring(0,B);var x=v;var c=y.substring(B);var o=r+x+c;if(y.substring(0,1)=="0"&&y.substring(1,2)==g){o=x+y.substring(1);if(t==g){this._setSelectionStart(C.start-1);C=this._selection()}}this.ValueString=o}if(q){this.decimal=-this.ValueString}else{this.decimal=this.ValueString}this._parseDecimalInSimpleMode();var f=C.start;f+=1;this._setSelectionStart(f);this.value=this.decimal;this._raiseEvent(0,this.value);this._raiseEvent(1,this.numberInput.val())},GetStringToSeparator:function(h,f,e){var d="";var b=f;var g=this.GetSeparatorPositionInText(f,h);var c=h.subString(0,g);d=this.GetValueString(c,f,e);return d},GetSeparatorPositionInText:function(c,d){var b=-1;for(i=0;i<d.length;i++){if(d.substring(i,i+1)==c){b=i;break}}return b},GetValueString:function(h,g,f){var d="";for(var c=0;c<h.length;c++){var e=h.substring(c,c+1);var b=(!isNaN(parseInt(e)));if(b){d+=e}if(e==g){d+=g}}return d},Backspace:function(){var d=this._selection();var e=this._selection();var f=this.numberInput.val();if(d.start==0&&d.length==0){return}this.isBackSpace=true;var c=f.substring[d.start,d.start+1];var b=(!isNaN(parseInt(c)));if(d.start>0&&d.length==0){this._setSelectionStart(d.start-1);var d=this._selection()}this.Delete();this._setSelectionStart(e.start-1);this.isBackSpace=false},Delete:function(c){var e=this._selection();var g=this.numberInput.val();if(e.start===0&&g.substring(0,1)=="-"){this.setvalue("negative",false);var e=this._selection();var g=this.numberInput.val()}var f=e.start;var h=e.length;h=Math.max(h,1);this.ValueString=this.GetValueString(g,this.decimalSeparator,this.decimalSeparator!="");this.RemoveRange(e.start,h,this.ValueString,".",false);var d=this.ValueString.substring(0,1);var b=(!isNaN(parseInt(d)));if(!b){this.ValueString="0"+this.ValueString}this.decimal=this.ValueString;this._parseDecimalInSimpleMode();this._setSelectionStart(f);this.value=this.decimal;this._raiseEvent(0,this.value);this._raiseEvent(1,this.numberInput.val())},insertsimple:function(d){var l=this._selection();var n=this.numberInput.val();if(l.start==n.length&&this.decimal!=null&&this.decimalDigits>0){return}var b=this.decimal;var g=this.decimalSeparator;this.ValueString=this.GetValueString(n,g,g!="");var h=this.GetSelectionInValue(l.start,n,g,g!="");var e=this.GetSelectionLengthInValue(l.start,l.length,n,g);var f=this.GetDigitsToSeparator(0,this.ValueString,g);var c=false;if(this.decimalDigits>0&&h>=this.ValueString.length){h--}if(this.ValueString==""){this.ValueString=new Number(0).toFixed(this.decimalDigits);this.InsertDigit(d,h,l);return}this.RemoveRange(l.start,e,this.ValueString,g,false,true);this.InsertDigit(d,h,l)},GetDigitsToSeparator:function(c,b,d){if(d==undefined){d="."}if(b.indexOf(d)<0){return b.length}for(i=0;i<b.length;i++){if(b.substring(i,i+1)==d){c=i;break}}return c},_handleSimpleKeyDown:function(n,v){var u=this._selection();var b=n.ctrlKey||n.metaKey;if((v==8||v==46)&&b){this.setDecimal(null);return false}if(u.start>=0&&u.start<this.items.length){var d=String.fromCharCode(v)}if(this.rtl&&v==37){var c=n.shiftKey;var g=c?1:0;if(c){this._setSelection(u.start+1-g,u.start+u.length+1)}else{this._setSelection(u.start+1-g,u.start+1)}return false}else{if(this.rtl&&v==39){var c=n.shiftKey;var g=c?1:0;if(c){this._setSelection(u.start-1,u.length+g+u.start-1)}else{this._setSelection(u.start-1,u.start-1)}return false}}if(v==8){this.Backspace();return false}if(v==190||v==110){var l=this.GetSeparatorPositionInText(this.decimalSeparator,this.numberInput.val());if(l!=-1){this._setSelectionStart(l+1)}return false}if(v==188){var t=this.numberInput.val();for(h=u.start;h<t.length;h++){if(t[h]==this.groupSeparator){this._setSelectionStart(1+h);break}}return false}var b=n.ctrlKey||n.metaKey;if((b&&v==99)||(b&&v==67)){var u=this._selection();var w="";var s=this.numberInput.val();if(u.start>0||u.length>0){for(var h=u.start;h<u.end;h++){w+=s.substring(h,h+1)}}a.data(document.body,"jqxSelection",w);if(a.jqx.browser.msie){window.clipboardData.setData("Text",w)}else{var o=this;var f=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');f.val(w);a("body").append(f);f.select();setTimeout(function(){document.designMode="off";f.select();f.remove();o.focus()},100)}this.savedText=w;return true}if((b&&v==122)||(b&&v==90)){return false}if((b&&v==118)||(b&&v==86)||(n.shiftKey&&v==45)){if(a.jqx.browser.msie&&!this.savedText){this.savedText=window.clipboardData.getData("Text")}if(this.savedText!=null&&this.savedText.length>0){this.val(this.savedText)}else{this.val(a.data(document.body,"jqxSelection"))}return false}var d=String.fromCharCode(v);var q=parseInt(d);if(v>=96&&v<=105){q=v-96;v=v-48}if(!isNaN(q)){var o=this;this.insertsimple(q);return false}if(v==46){this.Delete();return false}if(v==38){this.spinUp();return false}else{if(v==40){this.spinDown();return false}}var r=this._isSpecialKey(v);if(!a.jqx.browser.mozilla){return true}return r},_getEditRange:function(){var c=0;var b=0;for(i=0;i<this.items.length;i++){if(this.items[i].canEdit){c=i;break}}for(i=this.items.length-1;i>=0;i--){if(this.items[i].canEdit){b=i;break}}return{start:c,end:b}},_getVisibleItems:function(){var b=new Array();var c=0;for(i=0;i<this.items.length;i++){if(this.items[i].character.toString().length>0){b[c]=this.items[i];c++}}return b},_hasEmptyVisibleItems:function(){var b=this._getVisibleItems();for(i=0;i<b.length;i++){if(b[i].canEdit&&b[i].character==this.promptChar){return true}}return false},_getFirstVisibleNonEmptyIndex:function(){var b=this._getVisibleItems();for(i=0;i<b.length;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){return i}}},_handleMouse:function(f,b){var d=this._selection();if(d.length<=1){var c=this._getFirstVisibleNonEmptyIndex();if(d.start<c){this._setSelectionStart(c)}}},_insertKey:function(l){this.numberInput[0].focus();var d=String.fromCharCode(l);var e=parseInt(d);if(isNaN(e)){return}var q=0;for(i=0;i<this.items.length;i++){if(this.items[i].character.length==0){q++}}var g=this._selection();var b=this;if(g.start>=0&&g.start<=this.items.length){var f=false;var h=this._getFirstVisibleNonEmptyIndex();if(g.start<h&&g.length==0){if(!isNaN(d)||d==" "){this._setSelectionStart(h);g=this._selection()}}var c=this._getFirstEditableItemIndex();var o=this._getLastEditableItemIndex();var n=this._getVisibleItems();a.each(n,function(x,B){if(g.start>x&&x!=n.length-1){return}var E=n[x];if(x>o){E=n[o]}if(isNaN(d)||d==" "){return}if(!E.canEdit){return}var A=b._getSeparatorPosition();if(b._match(d,E.regex)){if(!f&&g.length>0){for(j=g.start+q;j<g.end+q;j++){if(b.items[j].canEdit){if(j>A){b.items[j].character="0"}else{b.items[j].character=b.promptChar}}}var D=b._getString();f=true}var A=b._getSeparatorPosition();var y=b._hasEmptyVisibleItems();if(b.decimal==null){g.start=A-1;if(g.start<0){g.start=0}g.end=g.start}if(g.start<=A&&y){var v=x;if(b.decimalSeparatorPosition==-1&&g.start==A){v=x+1}if(b.decimal==null){v=g.start}var u="";for(p=0;p<v;p++){if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}}u+=d;var w=b.decimal<1?1:0;if(g.start==A&&b.decimalSeparatorPosition!=-1){u+=b.decimalSeparator;w=0}for(p=v+w;p<n.length;p++){if(n[p].character==b.decimalSeparator&&n[p].isSeparator){u+=n[p].character}else{if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}}}if(b.decimalSeparator!="."){u=b._parseDecimalValue(u)}u=parseFloat(u).toString();u=new Number(u);u=u.toFixed(b.decimalDigits);if(b.decimalSeparator!="."){u=b._parseDecimalValueToEditorValue(u)}b.setvalue("decimal",u);var D=b._getString();if(g.end<A){b._setSelectionStart(g.end+w)}else{b._setSelectionStart(g.end)}if(g.length>=1){b._setSelectionStart(g.end)}if(g.length==b.numberInput.val().length){var r=b._moveCaretToDecimalSeparator();var C=b.decimalSeparatorPosition>=0?1:0;b._setSelectionStart(r-C)}}else{if(g.start<A||g.start>A){if(b.numberInput.val().length==g.start&&b.decimalSeparatorPosition!=-1){return false}else{if(b.numberInput.val().length==g.start&&b.decimalSeparatorPosition==-1&&!y){return false}}var u="";var s=false;for(p=0;p<x;p++){if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}if(n[p].character==b.decimalSeparator&&n[p].isSeparator){u+=n[p].character;s=true}}u+=d;var w=b.decimal<1?1:0;if(!s&&g.start==A-1){u+=b.decimalSeparator;s=true}for(p=x+1;p<n.length;p++){if(!s&&n[p].character==b.decimalSeparator&&n[p].isSeparator){u+=n[p].character}else{if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}}}b.setvalue("decimal",u);var D=b._getString();if(b.decimalSeparatorPosition<0&&E==n[o]){b._setSelectionStart(x);return false}var z=D.indexOf(b.symbol);var t=!b.getvalue("negative")?0:1;if(z<=t){z=D.length}if(g.start<z){b._setSelectionStart(x+1)}else{b._setSelectionStart(x)}if(g.length>=1){}if(g.length==b.numberInput.val().length){var r=b._moveCaretToDecimalSeparator();b._setSelectionStart(r-1)}}}return false}})}},_handleKeyPress:function(h,d){var f=this._selection();var b=this;var l=h.ctrlKey||h.metaKey;if((l&&d==97)||(l&&d==65)){return true}if(d==8){if(f.start>0){b._setSelectionStart(f.start)}return false}if(d==46){if(f.start<this.items.length){b._setSelectionStart(f.start)}return false}if(!a.jqx.browser.mozilla){if(d==45||d==173||d==109||d==189){var c=this.getvalue("negative");if(c==false){this.setvalue("negative",true)}else{this.setvalue("negative",false)}}}if(a.jqx.browser.msie){this._insertKey(d)}var g=this._isSpecialKey(d);return g},_deleteSelectedText:function(){var d=this._selection();var c="";var f=this._getSeparatorPosition();var b=this._getVisibleItems();var e=this._getHiddenPrefixCount();if(this.numberInput.val().length==d.start&&d.length==0){this._setSelection(d.start,d.start+1);d=this._selection()}for(i=0;i<d.start;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){c+=b[i].character}else{if(!b[i].canEdit&&this.decimalSeparatorPosition!=-1&&b[i]==b[this.decimalSeparatorPosition-e]){if(c.length==0){c="0"}c+=b[i].character}}}for(i=d.start;i<d.end;i++){if(i>f&&this.decimalSeparatorPosition!=-1){if(b[i].canEdit&&b[i].character!=this.promptChar){c+="0"}}else{if(!b[i].canEdit&&this.decimalSeparatorPosition!=-1&&b[i]==b[this.decimalSeparatorPosition-e]){if(c.length==0){c="0"}c+=b[i].character}}}for(i=d.end;i<b.length;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){c+=b[i].character}else{if(!b[i].canEdit&&this.decimalSeparatorPosition!=-1&&b[i]==b[this.decimalSeparatorPosition-e]){if(c.length==0){c="0"}c+=b[i].character}}}this.setvalue("decimal",c);return d.length>0},_restoreInitialState:function(){var b=parseInt(this.decimalDigits);if(b>0){b+=2}for(k=this.items.length-1;k>this.items.length-1-b;k--){if(this.items[k].canEdit&&this.items[k].character==this.promptChar){this.items[k].character=0}}},clear:function(){this.setDecimal(0)},clearDecimal:function(){if(this.inputMode=="textbox"){this.numberInput.val();return}for(var b=0;b<this.items.length;b++){if(this.items[b].canEdit){this.items[b].character=this.promptChar}}this._restoreInitialState()},_saveSelectedText:function(){var c=this._selection();var d="";var b=this._getVisibleItems();if(c.start>0||c.length>0){for(i=c.start;i<c.end;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){d+=b[i].character}else{if(b[i].isSeparator){d+=b[i].character}}}}if(a.jqx.browser.msie){window.clipboardData.setData("Text",d)}return d},_pasteSelectedText:function(){var f=this._selection();var h="";var c=0;this.selectedText=a.data(document.body,"jqxSelection");if(window.clipboardData){var d=window.clipboardData.getData("Text");if(d!=this.selectedText&&d.length>0){this.selectedText=window.clipboardData.getData("Text");if(this.selectedText==null||this.selectedText==undefined){return}}}var e=f.start;var n=this._getVisibleItems();if(this.selectedText!=null){for(var l=0;l<this.selectedText.length;l++){var b=parseInt(this.selectedText[l]);if(!isNaN(b)){var g=48+b;this._insertKey(g)}}}},_getHiddenPrefixCount:function(){var b=0;if(!this.negative){b++}if(this.symbolPosition=="left"){for(i=0;i<this.symbol.length;i++){if(this.symbol.substring(i,i+1)==""){b++}}}return b},_getEditableItem:function(){var b=this._selection();for(i=0;i<this.items.length;i++){if(i<b.start){if(this.items[i].canEdit&&this.items[i].character!=this.promptChar){return this.items[i]}}}return null},_getEditableItems:function(){var c=new Array();var b=0;for(i=0;i<this.items.length;i++){if(this.items[i].canEdit){c[b]=this.items[i];b++}}return c},_getValidSelectionStart:function(b){for(i=this.items.length-1;i>=0;i--){if(this.items[i].canEdit&&this.items[i].character!=this.promptChar){return i}}return -1},_getEditableItemIndex:function(c){var e=this._selection();var f=this._getHiddenPrefixCount();var b=this._getVisibleItems();var d=e.start;var g=-1;for(i=0;i<d;i++){if(i<b.length&&b[i].canEdit){g=i+f}}if(g==-1&&e.length>0){d=e.end;for(i=0;i<d;i++){if(i<b.length&&b[i].canEdit){g=i+f;break}}}return g},_getEditableItemByIndex:function(b){for(k=0;k<this.items.length;k++){if(k>b){if(this.items[k].canEdit&&this.items[k].character!=this.promptChar){return k}}}return -1},_getFirstEditableItemIndex:function(){var b=this._getVisibleItems();for(m=0;m<b.length;m++){if(b[m].character!=this.promptChar&&b[m].canEdit&&b[m].character!="0"){return m}}return -1},_getLastEditableItemIndex:function(){var b=this._getVisibleItems();for(m=b.length-1;m>=0;m--){if(b[m].character!=this.promptChar&&b[m].canEdit){return m}}return -1},_moveCaretToDecimalSeparator:function(){for(i=this.items.length-1;i>=0;i--){if(this.items[i].character==this.decimalSeparator&&this.items[i].isSeparator){if(!this.negative){this._setSelectionStart(i);return i}else{this._setSelectionStart(i+1);return i}break}}return this.numberInput.val().length},_handleBackspace:function(){var g=this._selection();var h=this._getHiddenPrefixCount();var b=this._getEditableItemIndex()-h;var f=this._getFirstVisibleNonEmptyIndex();var c=false;if(this.negative){c=true;if(f>=b+1||g.start==0){this.setvalue("negative",false);if(g.length==0){this._setSelectionStart(g.start-1);var g=this._selection()}}}if(b>=0){if(g.length==0&&b!=-1){this._setSelection(b,b+1)}var l=g.start>this._getSeparatorPosition()+1&&this.decimalSeparatorPosition>0;if(l){g=this._selection()}var e=this._deleteSelectedText();if(g.length<1||l){this._setSelectionStart(g.start)}else{if(g.length>=1){this._setSelectionStart(g.end)}}if(g.length==this.numberInput.val().length||c){var d=this._moveCaretToDecimalSeparator();this._setSelectionStart(d-1)}}else{this._setSelectionStart(g.start)}},_handleKeyDown:function(h,s){var r=this._selection();var c=h.ctrlKey||h.metaKey;if((s==8||s==46)&&c){this.setDecimal(null);return false}if(this.rtl&&s==37){var d=h.shiftKey;var g=d?1:0;if(d){this._setSelection(r.start+1-g,r.start+r.length+1)}else{this._setSelection(r.start+1-g,r.start+1)}return false}else{if(this.rtl&&s==39){var d=h.shiftKey;var g=d?1:0;if(d){this._setSelection(r.start-1,r.length+g+r.start-1)}else{this._setSelection(r.start-1,r.start-1)}return false}}if((c&&s==97)||(c&&s==65)){return true}if((c&&s==120)||(c&&s==88)){this.selectedText=this._saveSelectedText(h);a.data(document.body,"jqxSelection",this.selectedText);this._handleBackspace();return false}if((c&&s==99)||(c&&s==67)){this.selectedText=this._saveSelectedText(h);a.data(document.body,"jqxSelection",this.selectedText);return false}if((c&&s==122)||(c&&s==90)){return false}if((c&&s==118)||(c&&s==86)||(h.shiftKey&&s==45)){this._pasteSelectedText();return false}if(r.start>=0&&r.start<this.items.length){var f=String.fromCharCode(s);var u=this.items[r.start]}if(s==8){this._handleBackspace();return false}if(s==190||s==110){this._moveCaretToDecimalSeparator();return false}if(s==188){var q=this.numberInput.val();for(i=r.start;i<q.length;i++){if(q[i]==this.groupSeparator){this._setSelectionStart(1+i);break}}return false}if(a.jqx.browser.msie==null){var f=String.fromCharCode(s);var n=parseInt(f);if(s>=96&&s<=105){n=s-96;s=s-48}if(!isNaN(n)){var l=this;l._insertKey(s);return false}}if(s==46){var t=this._getVisibleItems();if(r.start<t.length){var g=t[r.start].canEdit==false?2:1;if(r.start==0){if(this.negative){this.setvalue("negative",false);if(r.length==0){this._setSelectionStart(0)}var r=this._selection();if(r.length==0){return false}}}if(r.length==0){this._setSelection(r.start+g,r.start+g+r.length)}this._handleBackspace();if(new Number(this.decimal)<1||r.start>this._getSeparatorPosition()){this._setSelectionStart(r.end+g)}else{if(r.start+1<this.decimalSeparatorPosition){this._setSelectionStart(r.end+g)}}}return false}if(s==38){this.spinUp();return false}else{if(s==40){this.spinDown();return false}}var o=this._isSpecialKey(s);if(a.jqx.browser.mozilla){if(s==45||s==173||s==109||s==189){var b=this.getvalue("negative");if(b==false){this.setvalue("negative",true)}else{this.setvalue("negative",false)}}}if(!a.jqx.browser.mozilla){return true}return o},_isSpecialKey:function(b){if(b!=8&&b!=9&&b!=13&&b!=35&&b!=36&&b!=37&&b!=39&&b!=27&&b!=46){return false}return true},_selection:function(){try{if("selectionStart" in this.numberInput[0]){var g=this.numberInput[0];var h=g.selectionEnd-g.selectionStart;return{start:g.selectionStart,end:g.selectionEnd,length:h,text:g.value}}else{var d=document.selection.createRange();if(d==null){return{start:0,end:g.value.length,length:0}}var c=this.numberInput[0].createTextRange();var f=c.duplicate();c.moveToBookmark(d.getBookmark());f.setEndPoint("EndToStart",c);var h=d.text.length;return{start:f.text.length,end:f.text.length+d.text.length,length:h,text:d.text}}}catch(b){return{start:0,end:0,length:0}}},selectAll:function(){var b=this.numberInput;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},_setSelection:function(f,b){if(this._disableSetSelection==true){return}var e=a.jqx.mobile.isTouchDevice();if(e||this.touchMode==true){return}try{if("selectionStart" in this.numberInput[0]){this.numberInput[0].focus();this.numberInput[0].setSelectionRange(f,b)}else{var c=this.numberInput[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",f);c.select()}}catch(d){}},_setSelectionStart:function(b){this._setSelection(b,b);a.data(this.numberInput,"selectionstart",b)},resize:function(c,b){this.width=c;this.height=b;this._render(false)},_render:function(f){var c=parseInt(this.host.css("border-left-width"));var h=parseInt(this.host.css("border-left-width"));var g=parseInt(this.host.css("border-left-width"));var d=parseInt(this.host.css("border-left-width"));this.numberInput.css("padding-top","0px");this.numberInput.css("padding-bottom","0px");this.host.height(this.height);this.host.width(this.width);var e=this.host.width();var o=this.host.height();this.numberInput.css({"border-left-width":0,"border-right-width":0,"border-bottom-width":0,"border-top-width":0});this.numberInput.css("text-align",this.textAlign);var q=this.numberInput.css("font-size");this.numberInput.css("height",parseInt(q)+4+"px");this.numberInput.css("width",e-2);var n=o-2*g-parseInt(q)-2;if(isNaN(n)){n=0}if(n<0){n=0}if(this.spinButtons&&this.spincontainer){e-=parseInt(this.spinButtonsWidth-2);var l=a.jqx.mobile.isTouchDevice();if(!l&&this.touchMode!==true){this.spincontainer.width(this.spinButtonsWidth);this.upbutton.width(this.spinButtonsWidth+2);this.downbutton.width(this.spinButtonsWidth+2);this.upbutton.height("50%");this.downbutton.height("50%");this.spincontainer.width(this.spinButtonsWidth)}else{this.spincontainer.width(2*(this.spinButtonsWidth));e-=this.spinButtonsWidth;this.upbutton.height("100%");this.downbutton.height("100%");this.downbutton.css("float","left");this.upbutton.css("float","right");this.upbutton.width(this.spinButtonsWidth);this.downbutton.width(1+this.spinButtonsWidth)}this._upArrow.height("100%");this._downArrow.height("100%");this.numberInput.css("width",e-6);this.numberInput.css("margin-right","2px")}var b=n/2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){b=n/4}this.numberInput.css("padding-left","0px");this.numberInput.css("padding-right","0px");this.numberInput.css("padding-top",Math.round(b)+"px");this.numberInput.css("padding-bottom",Math.round(b)+"px");if(f==undefined||f==true){this.numberInput.val(this._getString());if(this.inputMode!="advanced"){this._parseDecimalInSimpleMode()}}},destroy:function(){this._removeHandlers();this.host.remove()},inputValue:function(b){if(b===undefined){return this._value()}this.propertyChangedHandler(this,"value",this._value,b);this._refreshValue();return this},_value:function(){var b=this.numberInput.val();return b},val:function(c){if(c!==undefined&&typeof c!="object"||c===null){if(c===null){this.setDecimal(null);return}else{var f=c;f=f.toString();if(f.indexOf(this.symbol)>-1){f=f.replace(this.symbol,"")}var b=function(q,n,o){var h=q;if(n==o){return q}var l=h.indexOf(n);while(l!=-1){h=h.replace(n,o);l=h.indexOf(n)}return h};f=b(f,this.groupSeparator,"");f=f.replace(this.decimalSeparator,".");var g="";for(var d=0;d<f.length;d++){var e=f.substring(d,d+1);if(e==="-"){g+="-"}if(e==="."){g+="."}if(e.match(/^[0-9]+$/)!=null){g+=e}}f=g;f=f.replace(/ /g,"");f=new Number(f);this.setDecimal(f)}}else{return this.getDecimal()}},getDecimal:function(){if(this.decimal==null){return null}if(this.inputMode=="simple"){this._parseDecimalInSimpleMode(false);this.decimal=this._getDecimalInSimpleMode(this.decimal)}if(this.decimal==""){return 0}var b=this.getvalue("negative");if(b&&this.decimal>0){return -parseFloat(this.decimal)}return parseFloat(this.decimal)},setDecimal:function(e){var b=e;if(this.decimalSeparator!="."){if(e===null){this._setDecimal(e)}else{var d=e;if(typeof(e)!="number"){e=e.toString();var g=e.indexOf(".");if(g!=-1){var c=e.substring(0,g);var f=e.substring(g+1);d=c+"."+f;if(c.indexOf("-")!=-1){c=c.substring(1)}if(this.inputMode!="advanced"){e=c+"."+f}else{e=c+this.decimalSeparator+f}}else{var g=e.indexOf(this.decimalSeparator);if(g!=-1){var c=e.substring(0,g);var f=e.substring(g+1);d=c+"."+f;if(c.indexOf("-")!=-1){c=c.substring(1)}if(this.inputMode!="advanced"){e=c+"."+f}else{e=c+this.decimalSeparator+f}}}}if(d<0){this.setvalue("negative",true)}else{this.setvalue("negative",false)}this._setDecimal(e)}}else{if(e<0){this.setvalue("negative",true)}else{this.setvalue("negative",false)}if(e===null){this._setDecimal(e)}else{this._setDecimal(Math.abs(e))}}if(b==null){this.numberInput.val("")}},_setDecimal:function(r){if(r==null){this.decimal=null;this.value=null;this._refreshValue();this.decimal=null;this.value=null;return}if(r==null||r==undefined){r=0}if(r.toString().indexOf("e")!=-1){r=new Number(r).toFixed(this.decimalDigits).toString()}this.clearDecimal();var s=r.toString();var t="";var b="";var d=true;if(s.length==0){s="0"}for(var g=0;g<s.length;g++){if(s.substring(g,g+1)==this.decimalSeparator){d=false;continue}if(d){t+=s.substring(g,g+1)}else{b+=s.substring(g,g+1)}}if(t.length>0){t=parseFloat(t).toString()}var o=this.digits;if(o<t.length){t=t.substr(0,o)}var f=0;var q=this._getSeparatorPosition();var n=this._getHiddenPrefixCount();q=q+n;for(var g=q;g>=0;g--){if(g<this.items.length&&this.items[g].canEdit){if(f<t.length){this.items[g].character=t.substring(t.length-f-1,t.length-f);f++}}}f=0;for(var g=q;g<this.items.length;g++){if(this.items[g].canEdit){if(f<b.length){this.items[g].character=b.substring(f,f+1);f++}}}this._refreshValue();if(this.decimalSeparator=="."){this.ValueString=new Number(r).toFixed(this.decimalDigits)}else{var l=r.toString().indexOf(this.decimalSeparator);if(l>0){var h=r.toString().substring(0,l);var e=h+"."+r.toString().substring(l+1);this.ValueString=new Number(e).toFixed(this.decimalDigits)}else{this.ValueString=new Number(r).toFixed(this.decimalDigits)}}if(this.inputMode!="advanced"){this._parseDecimalInSimpleMode();this._raiseEvent(1,this.ValueString)}if(this.inputMode=="textbox"){this.decimal=this.ValueString;var c=this.getvalue("negative");if(c){this.decimal="-"+this.ValueString}}var r=this.val();if(r<this.min||r>this.max){this.host.addClass("jqx-input-invalid")}else{this.host.removeClass("jqx-input-invalid")}},_getSeparatorPosition:function(){var b=this._getHiddenPrefixCount();if(this.decimalSeparatorPosition>0){return this.decimalSeparatorPosition-b}return this.items.length-b},_setTheme:function(){this.host.removeClass();this.host.addClass(this.toThemeProperty("jqx-input"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-numberinput"));if(this.spinButtons){this.downbutton.removeClass();this.upbutton.removeClass();this.downbutton.addClass(this.toThemeProperty("jqx-scrollbar-button-state-normal"));this.upbutton.addClass(this.toThemeProperty("jqx-scrollbar-button-state-normal"));this._upArrow.removeClass();this._downArrow.removeClass();this._upArrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._downArrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"))}this.numberInput.removeClass();this.numberInput.addClass(this.toThemeProperty("jqx-input-content"))},propertyChangedHandler:function(c,d,g,f){if(d=="digits"||d=="groupSize"||d=="decimalDigits"){if(f<0){throw new Exception(this.invalidArgumentExceptions[0])}}if(d==="theme"){a.jqx.utilities.setTheme(g,f,c.host)}if(d=="digits"){if(f!=g){c.digits=parseInt(f)}}if(d=="min"||d=="max"){a.jqx.aria(c,"aria-value"+d,f.toString());c._refreshValue()}if(d=="decimalDigits"){if(f!=g){c.decimalDigits=parseInt(f)}}if(d=="decimalSeparator"||d=="digits"||d=="symbol"||d=="symbolPosition"||d=="groupSize"||d=="groupSeparator"||d=="decimalDigits"||d=="negativeSymbol"){var b=c.decimal;if(d=="decimalSeparator"&&f==""){f=" "}if(g!=f){var e=c._selection();c.items=new Array();c._initializeLiterals();c.value=c._getString();c._refreshValue();c._setDecimal(b)}}if(d=="rtl"){if(c.rtl){if(c.spincontainer){c.spincontainer.css("float","right");c.spincontainer.css("border-right-width","1px")}c.numberInput.css("float","right")}else{if(c.spincontainer){c.spincontainer.css("float","right");c.spincontainer.css("border-right-width","1px")}c.numberInput.css("float","left")}}if(d=="spinButtons"){if(c.spincontainer){if(!f){c.spincontainer.css("display","none")}else{c.spincontainer.css("display","block")}c._render()}else{c._spinButtons()}}if(d==="touchMode"){c.inputMode="textbox";c.spinMode="simple";c.render()}if(d=="negative"&&c.inputMode=="advanced"){var e=c._selection();var h=0;if(f){c.items[0].character=c.negativeSymbol[0];h=1}else{c.items[0].character="";h=-1}c._refreshValue();if(c.isInitialized){c._setSelection(e.start+h,e.end+h)}}if(d=="decimal"){c.value=f;c.setDecimal(f)}if(d==="value"){c.value=f;c.setDecimal(f);c._raiseEvent(1,f)}if(d=="textAlign"){c.textAlign=f;c._render()}if(d=="disabled"){c.numberInput.attr("disabled",f);if(c.disabled){c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{c.host.removeClass(c.toThemeProperty("jqx-fill-state-disabled"))}a.jqx.aria(c,"aria-disabled",f.toString())}if(d=="readOnly"){c.readOnly=f}if(d=="promptChar"){for(i=0;i<c.items.length;i++){if(c.items[i].character==c.promptChar){c.items[i].character=f}}c.promptChar=f}if(d=="width"){c.width=f;c._render()}else{if(d=="height"){c.height=f;c._render()}}},_value:function(){var b=this.value;return b},_refreshValue:function(){var g=this.value;var b=0;if(this.inputMode==="textbox"){return}this.value=this._getString();g=this.value;var f="";for(var c=0;c<this.items.length;c++){var e=this.items[c];if(e.canEdit&&e.character!=this.promptChar){f+=e.character}if(c==this.decimalSeparatorPosition){f+="."}}this.decimal=f;var d=false;if(this.oldValue!==g){this.oldValue=g;this._raiseEvent(0,g);d=true}if(this.inputMode!="simple"){this.numberInput.val(g);if(d){this._raiseEvent(1,g)}}if(g==null){this.numberInput.val("")}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxProgressBar","",{});a.extend(a.jqx._jqxProgressBar.prototype,{defineInstance:function(){var b={value:0,oldValue:null,max:100,min:0,orientation:"horizontal",layout:"normal",width:null,height:null,showText:false,animationDuration:300,disabled:false,rtl:false,renderText:null,aria:{"aria-valuenow":{name:"value",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},events:["valueChanged","invalidValue","complete","change"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.addClass(this.toThemeProperty("jqx-progressbar"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));a.jqx.aria(this);if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}else{this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}else{this.host.height(this.height)}}this.valueDiv=a("<div></div>").appendTo(this.element);if(this.orientation=="horizontal"){this.valueDiv.width(0);this.valueDiv.addClass(this.toThemeProperty("jqx-progressbar-value"))}else{this.valueDiv.height(0);this.valueDiv.addClass(this.toThemeProperty("jqx-progressbar-value-vertical"))}this.valueDiv.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.feedbackElementHost=a("<div style='width: 100%; height: 100%; position: relative;'></div>").appendTo(this.host);this.feedbackElement=a("<span class='text'></span>").appendTo(this.feedbackElementHost);this.feedbackElement.addClass(this.toThemeProperty("jqx-progressbar-text"));this.oldValue=this._value();this.refresh();a.jqx.utilities.resize(this.host,function(){b.refresh()})},resize:function(c,b){this.width=c;this.height=b;this.refresh()},destroy:function(){this.host.removeClass();this.valueDiv.removeClass();this.valueDiv.remove();this.feedbackElement.remove()},_raiseevent:function(g,d,f){if(this.isInitialized!=undefined&&this.isInitialized==true){var c=this.events[g];var e=new a.Event(c);e.previousValue=d;e.currentValue=f;e.owner=this;var b=this.host.trigger(e);return b}},actualValue:function(b){if(b===undefined){return this._value()}a.jqx.aria(this,"aria-valuenow",b);a.jqx.setvalueraiseevent(this,"value",b);return this._value()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.actualValue()}return this.actualValue(b)},propertyChangedHandler:function(c,d,b,f){if(!this.isInitialized){return}var e=this;if(d=="min"&&c.value<f){c.value=f}else{if(d=="max"&&c.value>f){c.value=f}}if(d==="value"&&e.value!=undefined){e.value=f;e.oldValue=b;a.jqx.aria(c,"aria-valuenow",f);if(f<e.min||f>e.max){e._raiseevent(1,b,f)}e.refresh()}if(d=="theme"){a.jqx.utilities.setTheme(b,f,c.host)}if(d=="renderText"||d=="orientation"||d=="layout"||d=="showText"||d=="min"||d=="max"){e.refresh()}else{if(d=="width"&&e.width!=undefined){if(e.width!=undefined&&!isNaN(e.width)){e.host.width(e.width);e.refresh()}}else{if(d=="height"&&e.height!=undefined){if(e.height!=undefined&&!isNaN(e.height)){e.host.height(e.height);e.refresh()}}}}if(d=="disabled"){e.refresh()}},_value:function(){var c=this.value;if(typeof c!=="number"){var b=parseInt(c);if(isNaN(b)){c=0}else{c=b}}return Math.min(this.max,Math.max(this.min,c))},_percentage:function(){return 100*this._value()/this.max},_textwidth:function(d){var c=a("<span>"+d+"</span>");a(this.host).append(c);var b=c.width();c.remove();return b},_textheight:function(d){var c=a("<span>"+d+"</span>");a(this.host).append(c);var b=c.height();c.remove();return b},_initialRender:true,refresh:function(){var l=this.actualValue();var p=this._percentage();if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-progressbar-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));return}else{this.host.removeClass(this.toThemeProperty("jqx-progressbar-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));a(this.element.children[0]).show()}if(isNaN(l)){return}if(isNaN(p)){return}if(this.oldValue!==l){this._raiseevent(0,this.oldValue,l);this._raiseevent(3,this.oldValue,l);this.oldValue=l}var b=this.oldValue;var n=this.host.outerHeight();var c=this.host.outerWidth();if(this.width!=null){c=parseInt(this.width)}if(this.height!=null){n=parseInt(this.height)}var f=parseInt(this.host.outerWidth())/2;var i=parseInt(this.host.outerHeight())/2;if(isNaN(p)){p=0}var j=this;try{var m=this.element.children[0];a(m)[0].style.position="relative";if(this.orientation=="horizontal"){a(m).toggle(l>=this.min);var c=this.host.outerWidth()*p/100;var e=0;if(this.layout=="reverse"||this.rtl){if(this._initialRender){a(m)[0].style.left=this.host.width()+"px";a(m)[0].style.width=0}e=this.host.outerWidth()-c}a(m).animate({width:c,left:e+"px"},this.animationDuration,function(){if(j._value()===j.max){j._raiseevent(2,b,j.max)}});this.feedbackElementHost.css("margin-top",-this.host.height())}else{a(m).toggle(l>=this.min);var n=this.host.height()*p/100;var d=0;if(this.layout=="reverse"){if(this._initialRender){a(m)[0].style.top=this.host.height()+"px";a(m)[0].style.height=0}d=this.host.height()-n}this.feedbackElementHost.animate({"margin-top":-(p.toFixed(0)*j.host.height())/100},this.animationDuration,function(){});a(m).animate({height:n,top:d+"px"},this.animationDuration,function(){var q=j._percentage();if(isNaN(q)){q=0}if(q.toFixed(0)==j.min){a(m).hide();if(j._value()===j.max){j._raiseevent(2,b,j.max)}}})}}catch(h){}this._initialRender=false;this.feedbackElement.html(p.toFixed(0)+"%").toggle(this.showText==true);if(this.renderText){this.feedbackElement.html(this.renderText(p.toFixed(0)+"%"))}this.feedbackElement.css("position","absolute");this.feedbackElement.css("top","50%");this.feedbackElement.css("left","0");var k=this.feedbackElement.height();var g=this.feedbackElement.width();var o=Math.floor(f-(parseInt(g)/2));this.feedbackElement.css({left:(o),"margin-top":-parseInt(k)/2+"px"})}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxRadioButton","",{});a.extend(a.jqx._jqxRadioButton.prototype,{defineInstance:function(){var b={animationShowDelay:300,animationHideDelay:300,width:null,height:null,boxSize:"13px",checked:false,hasThreeStates:false,disabled:false,enableContainerClick:true,locked:false,groupName:"",rtl:false,aria:{"aria-checked":{name:"checked",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}},events:["checked","unchecked","indeterminate","change"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){this.setSize();var c=this;this.propertyChangeMap.width=function(d,f,e,g){c.setSize()};this.propertyChangeMap.height=function(d,f,e,g){c.setSize()};if(this.radiobutton){this.radiobutton.remove()}this.radiobutton=a("<div><div><span></span></div></div>");this.host.attr("role","radio");if(!this.host.attr("tabIndex")){this.host.attr("tabIndex",0)}this.host.prepend(this.radiobutton);this.host.append(a('<div style="clear: both;"></div>'));this.checkMark=a(this.radiobutton).find("span");this.box=a(this.radiobutton).find("div");this._supportsRC=true;if(a.jqx.browser.msie&&a.jqx.browser.version<9){this._supportsRC=false}this.box.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.box.addClass(this.toThemeProperty("jqx-radiobutton-default"));this.host.addClass(this.toThemeProperty("jqx-widget"));if(this.disabled){this.disable()}this.host.addClass(this.toThemeProperty("jqx-radiobutton"));if(this.locked){this.host.css("cursor","auto")}var b=this.element.getAttribute("checked");if(b=="checked"||b=="true"||b==true){this.checked=true}this._addInput();this._render();this._addHandlers();a.jqx.aria(this)},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}},refresh:function(b){if(!b){this.setSize();this._render()}},resize:function(c,b){this.width=c;this.height=b;this.setSize()},setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}},_addHandlers:function(){var b=this;this.addHandler(this.box,"click",function(c){if(!b.disabled&&!b.enableContainerClick){b.toggle("click");c.preventDefault();return false}});this.addHandler(this.host,"keydown",function(c){if(!b.disabled&&!b.locked){if(c.keyCode==32){b.toggle("click");c.preventDefault();return false}}});this.addHandler(this.host,"click",function(c){if(!b.disabled&&b.enableContainerClick){b.toggle("click");c.preventDefault();return false}});this.addHandler(this.host,"selectstart",function(c){if(!b.disabled&&b.enableContainerClick){c.preventDefault()}});this.addHandler(this.host,"mouseup",function(c){if(!b.disabled&&b.enableContainerClick){c.preventDefault()}});this.addHandler(this.host,"focus",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.addClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.addClass(b.toThemeProperty("jqx-fill-state-focus"));c.preventDefault();return false}});this.addHandler(this.host,"blur",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.removeClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.removeClass(b.toThemeProperty("jqx-fill-state-focus"));c.preventDefault();return false}});this.addHandler(this.host,"mouseenter",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.addClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.addClass(b.toThemeProperty("jqx-fill-state-hover"));c.preventDefault();return false}});this.addHandler(this.host,"mouseleave",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.removeClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.removeClass(b.toThemeProperty("jqx-fill-state-hover"));c.preventDefault();return false}});this.addHandler(this.box,"mouseenter",function(){if(!b.disabled&&!b.enableContainerClick){b.box.addClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.addClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.box,"mouseleave",function(){if(!b.disabled&&!b.enableContainerClick){b.box.removeClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}})},focus:function(){try{this.host.focus()}catch(b){}},_removeHandlers:function(){this.removeHandler(this.box,"click");this.removeHandler(this.box,"mouseenter");this.removeHandler(this.box,"mouseleave");this.removeHandler(this.host,"click");this.removeHandler(this.host,"mouseup");this.removeHandler(this.host,"mousedown");this.removeHandler(this.host,"selectstart");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur")},_render:function(){if(this.boxSize==null){this.boxSize=13}this.box.width(this.boxSize);this.box.height(this.boxSize);if(!this.disabled){if(this.enableContainerClick){this.host.css("cursor","pointer")}else{this.host.css("cursor","auto")}}else{this.disable()}if(this.rtl){this.box.addClass(this.toThemeProperty("jqx-radiobutton-rtl"));this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.updateStates()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.checked}if(typeof b=="string"){if(b=="true"){this.check("api")}if(b=="false"){this.uncheck("api")}if(b==""){this.indeterminate("api")}}else{if(b==true){this.check("api")}if(b==false){this.uncheck("api")}if(b==null){this.indeterminate("api")}}return this.checked},check:function(c){this.checked=true;var d=this;this.checkMark.removeClass();this.checkMark.addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(a.jqx.browser.msie){if(!this.disabled){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-disabled"));this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}}else{if(!this.disabled){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-disabled"));this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}var e=a.find(".jqx-radiobutton");if(this.groupName==null){this.groupName=""}a.each(e,function(){var f=a(this).jqxRadioButton("groupName");if(f==d.groupName&&this!=d.element){a(this).jqxRadioButton("uncheck","api")}});this._raiseEvent("0");this._raiseEvent("3",{type:c,checked:true});if(this.checkMark.height()==0){var b=parseInt(this.boxSize)/2;this.checkMark.height(b);this.checkMark.width(b)}else{if(this.boxSize!="13px"){var b=parseInt(this.boxSize)/2;this.checkMark.height(b);this.checkMark.width(b);this.checkMark.css("margin-left",1+(b/4));this.checkMark.css("margin-top",1+(b/4))}}this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)},uncheck:function(b){var d=this.checked;this.checked=false;var c=this;if(a.jqx.browser.msie){c.checkMark.removeClass()}else{this.checkMark.css("opacity",1);this.checkMark.stop().animate({opacity:0},this.animationHideDelay,function(){c.checkMark.removeClass()})}if(d){this._raiseEvent("1");this._raiseEvent("3",{type:b,checked:false})}this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)},indeterminate:function(b){var c=this.checked;this.checked=null;this.checkMark.removeClass();if(a.jqx.browser.msie){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate"));this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}if(c!=null){this._raiseEvent("2");this._raiseEvent("3",{type:b,checked:null})}this.input.val(this.checked);a.jqx.aria(this,"aria-checked","undefined")},toggle:function(c){if(this.disabled){return}if(this.locked){return}var b=this.checked;if(this.checked==true){this.checked=this.hasTreeStates?null:true}else{this.checked=true}if(b!=this.checked){this.updateStates(c)}this.input.val(this.checked)},updateStates:function(b){if(this.checked){this.check(b)}else{if(this.checked==false){this.uncheck(b)}else{if(this.checked==null){this.indeterminate(b)}}}},disable:function(){this.disabled=true;if(this.checked==true){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-disabled"))}else{if(this.checked==null){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate-disabled"))}}this.box.addClass(this.toThemeProperty("jqx-radiobutton-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));a.jqx.aria(this,"aria-disabled",this.disabled)},enable:function(){this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));if(this.checked==true){this.checkMark.removeClass(this.toThemeProperty("jqx-radiobutton-check-disabled"))}else{if(this.checked==null){this.checkMark.removeClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate-disabled"))}}this.box.removeClass(this.toThemeProperty("jqx-radiobutton-disabled"));this.disabled=false;a.jqx.aria(this,"aria-disabled",this.disabled)},destroy:function(){this._removeHandlers();this.host.remove()},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(c==this.enableContainerClick&&!this.disabled&&!this.locked){if(d){this.host.css("cursor","pointer")}else{this.host.css("cursor","auto")}}if(c=="rtl"){if(d){b.box.addClass(b.toThemeProperty("jqx-radiobutton-rtl"));b.host.addClass(b.toThemeProperty("jqx-rtl"))}else{b.box.removeClass(b.toThemeProperty("jqx-radiobutton-rtl"));b.host.removeClass(b.toThemeProperty("jqx-rtl"))}}if(c=="checked"){switch(d){case true:this.check("api");break;case false:this.uncheck("api");break;case null:this.indeterminate();break}}if(c=="theme"){a.jqx.utilities.setTheme(e,d,this.host)}if(c=="disabled"){if(d){this.disable()}else{this.enable()}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxRating","",{});a.extend(a.jqx._jqxRating.prototype,{defineInstance:function(){var b={count:5,disabled:false,value:0,height:"auto",width:"auto",precision:1,singleVote:false,itemHeight:"20",itemWidth:"20",_itemHeight:undefined,_itemWidth:undefined,_images:[],aria:{"aria-valuenow":{name:"value",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},_events:["change"],_invalidArgumentExceptions:{invalidPrecision:"The value of the precision property is invalid!",invalidWidth:"Width you've entered is invalid!",invalidHeight:"Height you've entered is invalid!",invalidCount:"You've entered invalid value for the count property!",invalidValue:"You've entered invalid value property!"}};a.extend(true,this,b);return b},createInstance:function(b){a.jqx.aria(this);this._createRating()},destroy:function(){this.host.remove()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.value}if(typeof b=="string"){this.value=parseInt(b)}else{this.value=b}this.setValue(this.value);return this.value},_createRating:function(){this.host.css("display","none");this.host.empty();this._addInput();this._validateProperties();this._render();this._performLayout();this._removeEventHandlers();this._addEventHandlers();this.host.css("display","block");this.host.addClass(this.toThemeProperty("jqx-widget"));if(this.disabled){this.disable()}},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}this.input.val(this.value.toString())},_render:function(){for(var b=1;b<=this.count;b++){this._images[b-1]=a('<div style="float:left;width:auto;height:auto;"><div style="position:absolute;width:auto;height:auto;visibility:hidden;" class="jqx-rating-hoverWrapper"><div style="width:auto;height:auto;float:left;" class="'+this.toThemeProperty("jqx-rating-image-hover")+'"></div><div style="visibility:hidden;width:auto;height:auto;" class="'+this.toThemeProperty("jqx-rating-image-backward")+'"></div></div><div style="position:absolute;width:auto;height:auto;" class="jqx-rating-voteWrapper"><div style="width:auto;height:auto;float:left;" class="'+this.toThemeProperty("jqx-rating-image-default")+'"></div><div style="width:0;height:auto;float:left;" class="'+this.toThemeProperty("jqx-rating-image-backward")+'"></div></div></div>');this.host.append(this._images[b-1])}},_performLayout:function(){for(var d=1;d<=this.count;d++){var e=this._images[d-1].find(this.toThemeProperty(".jqx-rating-image-backward",true)),h=this._images[d-1].find(this.toThemeProperty(".jqx-rating-image-default",true)),c=this._images[d-1].find(this.toThemeProperty(".jqx-rating-image-hover",true)),b=this._getImageName(h),f=this._getImageName(c),g=this._getImageName(e);h.css("background-image","none");c.css("background-image","none");e.css("background-image","none");this._appendImage(c,f,d-1);this._appendImage(e,g,d-1);this._appendImage(h,b,d-1)}},resize:function(c,b){this.width=c;this.height=b;this._setControlSize(this.width,this.height)},_setControlSize:function(c,b){this.host.css("height",this.height);this.host.css("width",this.width);if(this.itemHeight&&this.itemHeight!=="auto"){this._itemHeight=parseInt(this.itemHeight)}else{this._itemHeight=b}if(this.itemWidth&&this.itemWidth!=="auto"){this._itemWidth=parseInt(this.itemWidth)}else{this._itemWidth=c}},_appendImage:function(b,d,e){var c=this;var f=a('<img style="-moz-user-select:-moz-none;-khtml-user-select: none;-webkit-user-select:none;user-select:none;" class="'+this.toThemeProperty("jqx-rating-image")+'" src="'+d+'" />');b.append(f);f.load(function(){if(!c._initialized){c._setControlSize(a(this).width(),a(this).height());c._setValue(c.value,".jqx-rating-voteWrapper",".jqx-rating-image-default",".jqx-rating-image-backward");c._initialized=true}c._images[e].height(c._itemHeight);a(this).height(c._itemHeight);c._images[e].width(c._itemWidth);a(this).width(c._itemWidth)});return f},_validateProperties:function(){try{if(this.precision<0.001||this.precision>1){throw this._invalidArgumentExceptions.invalidPrecision}if(this.height!=="auto"&&parseInt(this.height)<0){throw this._invalidArgumentExceptions.invalidHeight}if(this.width!=="auto"&&parseInt(this.width)<0){throw this._invalidArgumentExceptions.invalidWidth}if(this.count<=0){throw this._invalidArgumentExceptions.invalidCount}if(this.value>this.count||this.value<0){throw this._invalidArgumentExceptions.invalidValue}}catch(b){alert(b)}},_getImageIndex:function(c){var b=0;while(c!==this._images[b][0]){b++}return ++b},_getRating:function(h,d){var g=this._getImageIndex(h);if(this.precision<1){var f=parseInt(d)-parseInt(a(h).position().left),c=this._itemWidth*this.precision,e=0;while(e<f){e+=c}if(e>parseInt(this._itemWidth)-c){e=parseInt(this._itemWidth)}var b=e/a(h).width();g-=1-b}return g},_addEventHandlers:function(){var b=this;for(var c=0;c<this.count;c++){if(!a.jqx.mobile.isTouchDevice()){this.addHandler(this._images[c],"mousemove",function(d){var e=b._getRating(this,d.pageX);b._setValue(e,".jqx-rating-hoverWrapper",".jqx-rating-image-hover",".jqx-rating-image-backward")});this.addHandler(this._images[c],"mouseenter",function(e){var f=b._getImageIndex(this);for(var d=0;d<f;d++){b._images[d].children(".jqx-rating-hoverWrapper").css("z-index","10");b._images[d].children(".jqx-rating-voteWrapper").css("z-index","1");b._images[d].children(".jqx-rating-hoverWrapper").css("visibility","visible")}});this.addHandler(this._images[c],"mouseleave",function(e){var f=b._getImageIndex(this);for(var d=0;d<f;d++){b._images[d].children(".jqx-rating-voteWrapper").css("z-index","10");b._images[d].children(".jqx-rating-hoverWrapper").css("z-index","1");b._images[d].children(".jqx-rating-hoverWrapper").css("visibility","hidden")}})}this.addHandler(this._images[c],"click",function(d){var e=b._getRating(this,d.pageX);b._setValue(e,".jqx-rating-voteWrapper",".jqx-rating-image-default",".jqx-rating-image-backward");if(b.singleVote){b.disable()}d.stopPropagation();b._raiseEvent(0,e)});this.addHandler(this._images[c],"dragstart",function(d){return false})}},_removeEventHandlers:function(){for(var b=0;b<this.count;b++){this.removeHandler(this._images[b],"mousemove");this.removeHandler(this._images[b],"mouseenter");this.removeHandler(this._images[b],"mouseleave");this.removeHandler(this._images[b],"click");this.removeHandler(this._images[b],"dragstart")}},_getImageName:function(c){var b=c.css("background-image");b=b.replace('url("',"");b=b.replace('")',"");b=b.replace("url(","");b=b.replace(")","");return b},_setValue:function(d,k,h,f){for(var e=1;e<=this.count;e++){var j=1,g=this._images[e-1].children(k),c=g.children(h),b=g.children(f);if(e>d){if(Math.abs(e-d)<1){j=1-Math.abs(e-d)}else{j=0}}c.width(this._itemWidth*j);b.width(this._itemWidth-parseInt(c.width()));g.children(this.toThemeProperty(f)).children(0).css("margin-left",-this._itemWidth*j+"px")}a.jqx.aria(this,"aria-valuenow",d)},_raiseEvent:function(d,c){var b=new a.Event(this._events[d]);b.owner=this;b.value=c;b.oldvalue=this.value;this.value=c;if(this.input){this.input.val(this.value.toString())}return this.host.trigger(b)},setValue:function(b){this._setValue(b,".jqx-rating-voteWrapper",".jqx-rating-image-default",".jqx-rating-image-backward");this.value=b;this._raiseEvent(0,this.value)},getValue:function(){return this.value},disable:function(){this._removeEventHandlers();this.disabled=true;a.jqx.aria(this,"aria-disabled",true)},enable:function(){this._removeEventHandlers();this._addEventHandlers();this.disabled=false;a.jqx.aria(this,"aria-disabled",false)},propertyChangedHandler:function(b,c,e,d){if(c==="disabled"){if(d){this.disable()}else{this.enable()}return}else{if(c==="value"){b.setValue(d)}else{b._createRating()}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxSlider","",{});a.extend(a.jqx._jqxSlider.prototype,{defineInstance:function(){var b={disabled:false,width:300,height:30,step:1,max:10,min:0,int64:false,orientation:"horizontal",showTicks:true,ticksPosition:"both",ticksFrequency:2,minorTicksFrequency:1,showMinorTicks:false,showButtons:true,buttonsPosition:"both",mode:"default",showRange:true,rangeSlider:false,value:0,values:[0,10],tooltip:false,tooltipFormatFunction:null,tooltipPosition:"near",tooltipHideDelay:500,sliderButtonSize:14,tickSize:7,minorTickSize:4,showTickLabels:false,tickLabelFormatFunction:null,layout:"normal",rtl:false,_settings:{vertical:{size:"height",oSize:"width",outerOSize:"outerWidth",outerSize:"outerHeight",left:"top",top:"left",start:"_startY",mouse:"_mouseStartY",page:"pageY",opposite:"horizontal"},horizontal:{size:"width",oSize:"height",outerOSize:"outerHeight",outerSize:"outerWidth",left:"left",top:"top",start:"_startX",mouse:"_mouseStartX",page:"pageX",opposite:"vertical"}},_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_events:["change","slide","slideEnd","slideStart","created"],_invalidArgumentExceptions:{invalidWidth:"Invalid width.",invalidHeight:"Invalid height.",invalidStep:"Invalid step.",invalidMaxValue:"Invalid maximum value.",invalidMinValue:"Invalid minimum value.",invalidTickFrequency:"Invalid tick frequency.",invalidValue:"Invalid value.",invalidValues:"Invalid values.",invalidTicksPosition:"Invalid ticksPosition",invalidButtonsPosition:"Invalid buttonsPosition"},_lastValue:[],_track:null,_leftButton:null,_rightButton:null,_slider:null,_rangeBar:null,_slideEvent:null,_capturedElement:null,_slideStarted:false,aria:{"aria-valuenow":{name:"value",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(b){var c=this;if(c.int64===true){if(!a.jqx.longInt){throw new Error("jqxSlider: Missing reference to jqxdata.js")}a.jqx.longInt(c);c._value64=new a.jqx.math().fromString(c.value.toString(),10);c._values64=[new a.jqx.math().fromString(c.values[0].toString(),10),new a.jqx.math().fromString(c.values[1].toString(),10)];c._min64=new a.jqx.math().fromString(c.min.toString(),10);c._max64=new a.jqx.math().fromString(c.max.toString(),10);c._step64=new a.jqx.math().fromString(c.step.toString(),10);c._ticksFrequency64=new a.jqx.math().fromString(c.ticksFrequency.toString(),10);c._minorTicksFrequency64=new a.jqx.math().fromString(c.minorTicksFrequency.toString(),10)}this.render()},render:function(){this.element.innerHTML="";this.host.attr("role","slider");this.host.addClass(this.toThemeProperty("jqx-slider"));this.host.addClass(this.toThemeProperty("jqx-widget"));a.jqx.aria(this);this._isTouchDevice=a.jqx.mobile.isTouchDevice();this.host.width(this.width);this.host.height(this.height);this._refresh();this._raiseEvent(4,{value:this.getValue()});this._addInput();var c=this;var b=c.host.attr("tabindex")==null;if(b){c.host.attr("tabindex",0)}a.jqx.utilities.resize(this.host,function(){c.__trackSize=null;c.__thumbSize=null;c.host.width(c.width);c.host.height(c.height);c._performLayout();c._initialSettings()})},resize:function(c,b){this.width=c;this.height=b;this.refresh();this.host.width(me.width);this.host.height(me.height);this._performLayout();this._initialSettings()},focus:function(){try{this.host.focus()}catch(b){}},destroy:function(){this.host.remove()},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}if(!this.rangeSlider){this.input.val(this.value.toString())}else{if(this.values){this.input.val(this.value.rangeStart.toString()+"-"+this.value.rangeEnd.toString())}}},_getSetting:function(b){return this._settings[this.orientation][b]},_getEvent:function(b){if(this._isTouchDevice){return this._touchEvents[b]}else{return b}},refresh:function(b){if(!b){this._refresh()}},_refresh:function(){this._render();this._performLayout();this._removeEventHandlers();this._addEventHandlers();this._initialSettings()},_render:function(){this._addTrack();this._addSliders();this._addTickContainers();this._addContentWrapper();this._addButtons();this._addRangeBar()},_addTrack:function(){if(this._track===null||this._track.length<1){this._track=a('<div class="'+this.toThemeProperty("jqx-slider-track")+'"></div>');this.host.append(this._track)}this._track.attr("style","");this._track.removeClass(this.toThemeProperty("jqx-slider-track-"+this._getSetting("opposite")));this._track.addClass(this.toThemeProperty("jqx-slider-track-"+this.orientation));this._track.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._track.addClass(this.toThemeProperty("jqx-rc-all"))},_addSliders:function(){if(this._slider===null||this._slider.length<1){this._slider={};this._slider.left=a('<div class="'+this.toThemeProperty("jqx-slider-slider")+'"></div>');this._track.append(this._slider.left);this._slider.right=a('<div class="'+this.toThemeProperty("jqx-slider-slider")+'"></div>');this._track.append(this._slider.right)}this._slider.left.removeClass(this.toThemeProperty("jqx-slider-slider-"+this._getSetting("opposite")));this._slider.left.addClass(this.toThemeProperty("jqx-slider-slider-"+this.orientation));this._slider.right.removeClass(this.toThemeProperty("jqx-slider-slider-"+this._getSetting("opposite")));this._slider.right.addClass(this.toThemeProperty("jqx-slider-slider-"+this.orientation));this._slider.right.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._slider.left.addClass(this.toThemeProperty("jqx-fill-state-normal"))},_addTickContainers:function(){if(this._bottomTicks!==null||this._bottomTicks.length<1||this._topTicks!==null||this._topTicks.length<1){this._addTickContainers()}var b="visible";if(!this.showTicks){b="hidden"}this._bottomTicks.css("visibility",b);this._topTicks.css("visibility",b)},_addTickContainers:function(){if(typeof this._bottomTicks==="undefined"||this._bottomTicks.length<1){this._bottomTicks=a('<div class="'+this.toThemeProperty("jqx-slider-tickscontainer")+'" style=""></div>');this.host.prepend(this._bottomTicks)}if(typeof this._topTicks==="undefined"||this._topTicks.length<1){this._topTicks=a('<div class="'+this.toThemeProperty("jqx-slider-tickscontainer")+'" style=""></div>');this.host.append(this._topTicks)}},_addButtons:function(){if(this._leftButton===null||this._leftButton.length<1||this._rightButton===null||this._rightButton.length<1){this._createButtons()}var b="block";if(!this.showButtons||this.rangeSlider){b="none"}this._rightButton.css("display",b);this._leftButton.css("display",b)},_createButtons:function(){this._leftButton=a('<div class="jqx-slider-left"><div style="width: 100%; height: 100%;"></div></div>');this._rightButton=a('<div class="jqx-slider-right"><div style="width: 100%; height: 100%;"></div></div>');this.host.prepend(this._rightButton);this.host.prepend(this._leftButton);if(!this.host.jqxRepeatButton){throw new Error("jqxSlider: Missing reference to jqxbuttons.js.")}this._leftButton.jqxRepeatButton({theme:this.theme,delay:50,width:this.sliderButtonSize,height:this.sliderButtonSize});this._rightButton.jqxRepeatButton({theme:this.theme,delay:50,width:this.sliderButtonSize,height:this.sliderButtonSize})},_addContentWrapper:function(){if(this._contentWrapper===undefined||this._contentWrapper.length===0){this.host.wrapInner("<div></div>");this._contentWrapper=this.host.children(0)}if(this.orientation==="horizontal"){this._contentWrapper.css("float","left")}else{this._contentWrapper.css("float","none")}},_addTicks:function(c){if(!this.showTicks){return}var e=c[this._getSetting("size")](),m,f,n,k,h,o;if(this.int64===false){m=this.max-this.min;f=Math.round(m/this.ticksFrequency);n=Math.round(m/this.minorTicksFrequency);h=this.min;o=this.max}else{m=this._max64.subtract(this._min64);f=m.div(this._ticksFrequency64).toNumber();n=m.div(this._minorTicksFrequency64).toNumber();h=this._min64.toString();o=this._max64.toString()}var b=e/f,k=e/n;c.empty();var r="",d;if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(h):h}else{d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(o):o}var q=a("<span style='visibility: hidden;'></span>");q.addClass(this.toThemeProperty("jqx-widget jqx-widget-content jqx-slider"));q.appendTo(document.body);q.html("0");var l={width:q.width(),height:q.height()};q.detach();var s=c[this._getSetting("oSize")]();r+=this._addTick(c,0,this.min,s,d,l);for(var j=1;j<f;j++){var g=j*b;g=Math.floor(g);var p;if(this.int64===false){if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){p=this.min+this.ticksFrequency*j}else{p=this.max-this.ticksFrequency*j}}else{if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){p=this._min64.add(this._ticksFrequency64.multiply(new a.jqx.math().fromString(j.toString(),10))).toString()}else{p=this._max64.subtract(this._ticksFrequency64.multiply(new a.jqx.math().fromString(j.toString(),10))).toString()}}var d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(p):p;r+=this._addTick(c,g,j,s,d,l)}if(this.showMinorTicks){for(var j=1;j<n;j++){var g=j*k;g=Math.floor(g);var d="";r+=this._addTick(c,g,j,s,d,l,true)}}if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(o):o}else{d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(h):h}r+=this._addTick(c,f*b,this.max,s,d,l);c.append(a(r))},_addTick:function(b,i,n,p,c,j,o){var q="";q=this.toThemeProperty("jqx-slider-tick");q+=" "+this.toThemeProperty("jqx-fill-state-pressed");var e;var l=this._getSetting("top");var d="2px";var f=this.tickSize;if(o){f=this.minorTickSize}if(b[0]!==this._topTicks[0]){d=p-f-2+"px"}if(this.orientation==="horizontal"){e='<div style="'+l+": "+d+"; "+this._getSetting("oSize")+":  "+f+"px; float: left; position:absolute; left:"+i+'px;" class="'+this.toThemeProperty("jqx-slider-tick-horizontal")+" "+q+'"></div>';if(this.showTickLabels){if(b[0]!==this._topTicks[0]){d=p-f-j.height-2+"px"}else{d=2+f+"px"}var m=j.width*c.toString().length;m=m/2;var k=i-m;e+='<div style="'+l+": "+d+"; float: left; position:absolute; left:"+k+'px;">'+c+"</div>"}}else{e='<div style="'+l+": "+d+"; "+this._getSetting("oSize")+":  "+f+"px; float: none; position:absolute; top:"+i+'px;" class="'+this.toThemeProperty("jqx-slider-tick-vertical")+" "+q+'"></div>';if(this.showTickLabels){if(b[0]!==this._topTicks[0]){d=p-f-c.toString().length*j.width-6+"px"}else{d=6+f+"px"}var g=j.height;g=g/2;var k=i-g;e+='<div style="'+l+": "+d+"; float: none; position:absolute; top:"+k+'px;">'+c+"</div>"}}return e},_addRangeBar:function(){if(this._rangeBar===null||this._rangeBar.length<1){this._rangeBar=a('<div class="'+this.toThemeProperty("jqx-slider-rangebar")+'"></div>');this._rangeBar.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._rangeBar.addClass(this.toThemeProperty("jqx-rc-all"));this._track.append(this._rangeBar)}if(!this.showRange){this._rangeBar.css("display","none")}else{this._rangeBar.css("display","block")}this._thumbSize=this._slider.left.outerWidth()},_getLeftDisplacement:function(){if(!this.showButtons){return 0}if(this.rangeSlider){return 0}switch(this.buttonsPosition){case"left":return this._leftButton[this._getSetting("outerSize")](true)+this._rightButton[this._getSetting("outerSize")](true);case"right":return 0;default:return this._leftButton[this._getSetting("outerSize")](true)}return 0},_performLayout:function(){this.host.width(this.width);this.host.height(this.height);var b=this.host.height();if(this._getSetting("size")=="width"){b=this.host.width()}this._performButtonsLayout();this._performTrackLayout(b-1);this._contentWrapper[this._getSetting("size")](this._track[this._getSetting("size")]());this._contentWrapper[this._getSetting("oSize")](this[this._getSetting("oSize")]);this._performTicksLayout();this._performRangeBarLayout();if(this.rangeSlider){this._slider.left.css("visibility","visible")}else{this._slider.left.css("visibility","hidden")}this._refreshRangeBar();if(this.orientation=="vertical"){if(this.showButtons){var c=parseInt((this._leftButton.width()-this._track.width())/2);this._track.css("margin-left",-3+c+"px")}}},_performTrackLayout:function(b){this._track[this._getSetting("size")](b-((this.showButtons&&!this.rangeSlider)?this._leftButton[this._getSetting("outerSize")](true)+this._rightButton[this._getSetting("outerSize")](true):0));this._slider.left.css("left",0);this._slider.left.css("top",0);this._slider.right.css("left",0);this._slider.right.css("top",0)},_performTicksLayout:function(){this._performTicksContainerLayout();this._addTicks(this._topTicks);this._addTicks(this._bottomTicks);this._topTicks.css("visibility","hidden");this._bottomTicks.css("visibility","hidden");if((this.ticksPosition==="top"||this.ticksPosition==="both")&&this.showTicks){this._bottomTicks.css("visibility","visible")}if((this.ticksPosition==="bottom"||this.ticksPosition==="both")&&this.showTicks){this._topTicks.css("visibility","visible")}},_performTicksContainerLayout:function(){var f=this._getSetting("size");var e=this._getSetting("oSize");var b=this._getSetting("outerOSize");this._topTicks[f](this._track[f]());this._bottomTicks[f](this._track[f]());var d=-2+(parseInt(this[e])-this._track[b](true))/2;this._topTicks[e](parseInt(d));var c=-2+(parseInt(this[e])-this._track[b](true))/2;this._bottomTicks[e](parseInt(c));if(this.orientation==="vertical"){this._topTicks.css("float","left");this._track.css("float","left");this._bottomTicks.css("float","left")}else{this._topTicks.css("float","none");this._track.css("float","none");this._bottomTicks.css("float","none")}},_performButtonsLayout:function(){this._addButtonsStyles();this._addButtonsClasses();this._addButtonsHover();this._orderButtons();this._centerElement(this._rightButton);this._centerElement(this._leftButton);this._layoutButtons()},_addButtonsStyles:function(){this._leftButton.css("background-position","center");this._rightButton.css("background-position","center");if(this.orientation==="vertical"){this._leftButton.css("float","none");this._rightButton.css("float","none")}else{this._leftButton.css("float","left");this._rightButton.css("float","left")}},_addButtonsClasses:function(){var b={prev:"left",next:"right"};if(this.orientation==="vertical"){b={prev:"up",next:"down"}}this._leftButton.addClass(this.toThemeProperty("jqx-rc-all"));this._rightButton.addClass(this.toThemeProperty("jqx-rc-all"));this._leftButton.addClass(this.toThemeProperty("jqx-slider-button"));this._rightButton.addClass(this.toThemeProperty("jqx-slider-button"));this._leftArrow=this._leftButton.find("div");this._rightArrow=this._rightButton.find("div");this._leftArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-left"));this._rightArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-right"));this._leftArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));this._rightArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));this._leftArrow.addClass(this.toThemeProperty("jqx-icon-arrow-"+b.prev));this._rightArrow.addClass(this.toThemeProperty("jqx-icon-arrow-"+b.next))},_addButtonsHover:function(){var c=this,b={prev:"left",next:"right"};if(this.orientation==="vertical"){b={prev:"up",next:"down"}}this.addHandler(a(document),"mouseup.arrow"+this.element.id,function(){c._leftArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-selected"));c._rightArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-selected"));if(c.sliderTooltip){if(c.sliderTooltipTimer){clearTimeout(c.sliderTooltipTimer)}c.sliderTooltipTimer=setTimeout(function(){c.sliderTooltip.fadeOut("fast");c._mouseDown=false},c.tooltipHideDelay)}else{c._mouseDown=false}});this.addHandler(this._leftButton,"mousedown",function(){if(!c.disabled){c._leftArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-selected"));c._mouseDown=true}});this.addHandler(this._leftButton,"mouseup",function(){if(!c.disabled){c._leftArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-selected"))}});this.addHandler(this._rightButton,"mousedown",function(){if(!c.disabled){c._rightArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-selected"));c._mouseDown=true}});this.addHandler(this._rightButton,"mouseup",function(){if(!c.disabled){c._rightArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-selected"))}});this._leftButton.hover(function(){if(!c.disabled){c._leftArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-hover"))}},function(){if(!c.disabled){c._leftArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-hover"))}});this._rightButton.hover(function(){if(!c.disabled){c._rightArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-hover"))}},function(){if(!c.disabled){c._rightArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-hover"))}})},_layoutButtons:function(){if(this.orientation==="horizontal"){this._horizontalButtonsLayout()}else{this._verticalButtonsLayout()}},_horizontalButtonsLayout:function(){var b=(2+Math.ceil(this.sliderButtonSize/2));if(this.buttonsPosition=="left"){this._leftButton.css("margin-right","0px");this._rightButton.css("margin-right",b)}else{if(this.buttonsPosition=="right"){this._leftButton.css("margin-left",2+b);this._rightButton.css("margin-right","0px")}else{this._leftButton.css("margin-right",b);this._rightButton.css("margin-left",2+b)}}},_verticalButtonsLayout:function(){var c=(2+Math.ceil(this.sliderButtonSize/2));if(this.buttonsPosition=="left"){this._leftButton.css("margin-bottom","0px");this._rightButton.css("margin-bottom",c)}else{if(this.buttonsPosition=="right"){this._leftButton.css("margin-top",2+c);this._rightButton.css("margin-bottom","0px")}else{this._leftButton.css("margin-bottom",c);this._rightButton.css("margin-top",2+c)}}var b=this._leftButton.css("margin-left");this._leftButton.css("margin-left",parseInt(b)-1);this._rightButton.css("margin-left",parseInt(b)-1)},_orderButtons:function(){this._rightButton.detach();this._leftButton.detach();switch(this.buttonsPosition){case"left":this.host.prepend(this._rightButton);this.host.prepend(this._leftButton);break;case"right":this.host.append(this._leftButton);this.host.append(this._rightButton);break;case"both":this.host.prepend(this._leftButton);this.host.append(this._rightButton);break}},_performRangeBarLayout:function(){this._rangeBar[this._getSetting("oSize")](this._track[this._getSetting("oSize")]());this._rangeBar[this._getSetting("size")](this._track[this._getSetting("size")]());this._rangeBar.css("position","absolute");this._rangeBar.css("left",0);this._rangeBar.css("top",0)},_centerElement:function(c){var b=-1+(a(c.parent())[this._getSetting("oSize")]()-c[this._getSetting("outerOSize")]())/2;c.css("margin-"+[this._getSetting("left")],0);c.css("margin-"+[this._getSetting("top")],b);return c},_raiseEvent:function(f,c){var d=this._events[f];var e=new a.Event(d);if(this._triggerEvents===false){return true}e.args=c;if(f===1){e.args.cancel=false;this._slideEvent=e}this._lastValue[f]=c.value;e.owner=this;var b=this.host.trigger(e);return b},_initialSettings:function(){if(this.int64===false){if(this.rangeSlider){if(typeof this.value!=="number"){this.setValue(this.value)}else{this.setValue(this.values)}}else{if(this.value==undefined){this.value=0}this.setValue(this.value)}}else{if(this.rangeSlider===false||Array.isArray(this._value64)===true){this.setValue(this._value64)}else{this.setValue(this._values64)}}if(this.disabled){this.disable()}},_addEventHandlers:function(){var b=this;this.addHandler(this._slider.right,this._getEvent("mousedown"),this._startDrag,{self:this});this.addHandler(this._slider.left,this._getEvent("mousedown"),this._startDrag,{self:this});this.addHandler(a(document),this._getEvent("mouseup")+"."+this.element.id,function(){b._stopDrag()});try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var d=function(g){b._stopDrag()};var f=null;if(window.parent&&document.referrer){f=document.referrer}if(f&&f.indexOf(document.location.host)!=-1){if(window.top.document){if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",d,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",d)}}}}}}}catch(c){}this.addHandler(a(document),this._getEvent("mousemove")+"."+this.element.id,this._performDrag,{self:this});var e=this;this.addHandler(this._slider.left,"mouseenter",function(){if(!e.disabled){b._slider.left.addClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.right,"mouseenter",function(){if(!e.disabled){b._slider.right.addClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.left,"mouseleave",function(){if(!e.disabled){b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.right,"mouseleave",function(){if(!e.disabled){b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.left,"mousedown",function(){if(!e.disabled){b._slider.left.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._slider.right,"mousedown",function(){if(!e.disabled){b._slider.right.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._slider.left,"mouseup",function(){if(!e.disabled){b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._slider.right,"mouseup",function(){if(!e.disabled){b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._leftButton,this._getEvent("click"),this._leftButtonHandler,{self:this});this.addHandler(this._rightButton,this._getEvent("click"),this._rightButtonHandler,{self:this});this.addHandler(this._track,this._getEvent("mousedown"),this._trackMouseDownHandler,{self:this});this.addHandler(this.host,"focus",function(){b._track.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._leftButton.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._rightButton.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.right.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.left.addClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"blur",function(){b._leftButton.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._rightButton.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._track.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-focus"))});this.element.onselectstart=function(){return false};this._addMouseWheelListeners();this._addKeyboardListeners()},_addMouseWheelListeners:function(){var b=this;this.addHandler(this.host,"mousewheel",function(d){if(b.disabled){return true}if(document.activeElement&&!a(document.activeElement).ischildof(b.host)){return true}var c=d.wheelDelta;if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(!("wheelDelta" in d)){c=d.detail*-40}if(c>0){b.incrementValue()}else{b.decrementValue()}d.preventDefault()})},_addKeyboardListeners:function(){var b=this;this.addHandler(this.host,"keydown",function(c){switch(c.keyCode){case 40:case 37:if(b.layout=="normal"&&!b.rtl){b.decrementValue()}else{b.incrementValue()}return false;case 38:case 39:if(b.layout=="normal"&&!b.rtl){b.incrementValue()}else{b.decrementValue()}return false;case 36:if(b.rangeSlider){b.setValue([b.values[0],b.max])}else{b.setValue(b.min)}return false;case 35:if(b.rangeSlider){b.setValue([b.min,b.values[1]])}else{b.setValue(b.max)}return false}})},_trackMouseDownHandler:function(b){var e=a.jqx.mobile.getTouches(b);var d=e[0];var i=b.data.self,b=(i._isTouchDevice)?d:b,f=i._track.coord()[i._getSetting("left")],h=b[i._getSetting("page")]-i._slider.left[i._getSetting("size")]()/2,c=i._getClosest(h),j=parseInt(i._track[i._getSetting("size")]());var g=i._getValueByPosition(h);i._mouseDown=true;i._setValue(g,c);if(i.input){a.jqx.aria(i,"aria-valuenow",i.input.val())}},_getClosest:function(b){if(!this.rangeSlider){return this._slider.right}else{b=b-this._track.coord()[this._getSetting("left")]-this._slider.left[this._getSetting("size")]()/2;if(Math.abs(parseInt(this._slider.left.css(this._getSetting("left")),10)-b)<Math.abs(parseInt(this._slider.right.css(this._getSetting("left")),10)-b)){return this._slider.left}else{return this._slider.right}}},_removeEventHandlers:function(){this.removeHandler(this._slider.right,this._getEvent("mousedown"),this._startDrag);this.removeHandler(this._slider.left,this._getEvent("mousedown"),this._startDrag);this.removeHandler(a(document),this._getEvent("mouseup")+"."+this.host.attr("id"),this._stopDrag);this.removeHandler(a(document),this._getEvent("mousemove")+"."+this.host.attr("id"),this._performDrag);this.removeHandler(this._leftButton,this._getEvent("click"),this._leftButtonHandler);this.removeHandler(this._rightButton,this._getEvent("click"),this._rightButtonHandler);this.removeHandler(this._track,this._getEvent("mousedown"),this._trackMouseDownHandler);this.element.onselectstart=null;this.removeHandler(this.host,this._getEvent("mousewheel"));this.removeHandler(this.host,this._getEvent("keydown"))},_rightButtonClick:function(){if(this.orientation=="horizontal"&&!this.rtl){this.incrementValue()}else{this.decrementValue()}},_leftButtonClick:function(){if(this.orientation=="horizontal"&&!this.rtl){this.decrementValue()}else{this.incrementValue()}},_rightButtonHandler:function(c){var b=c.data.self;if(b.layout=="normal"){b._rightButtonClick()}else{b._leftButtonClick()}return false},_leftButtonHandler:function(c){var b=c.data.self;if(b.layout=="normal"){b._leftButtonClick()}else{b._rightButtonClick()}return false},_startDrag:function(d){var e=a.jqx.mobile.getTouches(d);var f=e[0];var c=d.data.self;c._capturedElement=a(d.target);c._startX=a(d.target).coord().left;c._startY=a(d.target).coord().top;var b=a.jqx.position(d);c._mouseStartX=b.left;c._mouseStartY=b.top;c._mouseDown=true;if(c.tooltip){c._showTooltip(c._capturedElement,c.value)}if(c._isTouchDevice){return false}},_stopDrag:function(){var b=this;if(b._slideStarted){b._raiseEvent(2,{value:b.getValue()})}if(!b._slideStarted||b._capturedElement==null){b._capturedElement=null;return}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._slideStarted=false;b._capturedElement=null;if(b.sliderTooltip){b.sliderTooltip.fadeOut("fast")}},_performDrag:function(d){var c=d.data.self;if(c._capturedElement!==null){var f=a.jqx.mobile.getTouches(d);var g=f[0];if(d.which===0&&a.jqx.browser.msie&&a.jqx.browser.version<9){c._stopDrag();return false}var b=a.jqx.position(d);var e=c.orientation=="horizontal"?b.left:b.top;c._isDragged(e);if(c._slideStarted||c._isTouchDevice){return c._dragHandler(e)}}},_isDragged:function(b){if(Math.abs(b-this[this._getSetting("mouse")])>2&&!this._slideStarted){this._slideStarted=true;if(this._valueChanged(3)){this._raiseEvent(3,{value:this.getValue()})}}else{if(this._capturedElement===null){this._slideStarted=false}}},_dragHandler:function(b){b=(b-this[this._getSetting("mouse")])+this[this._getSetting("start")];var c=this._getValueByPosition(b);if(this.rangeSlider){var d=this._slider.right,f=this._slider.left;var e=this._getSetting("left");if(this._capturedElement[0]===f[0]){if(parseFloat(b)>d.coord()[e]){b=d.coord()[e]}}else{if(parseFloat(b)<f.coord()[e]){b=f.coord()[e]}}}this._setValue(c,this._capturedElement,b);return false},_getValueByPosition:function(b){if(this.mode==="default"){return this._getFloatingValueByPosition(b)}else{return this._getFixedValueByPosition(b)}},_getFloatingValueByPosition:function(b){var c=b-this._track.coord()[this._getSetting("left")]+this._slider.left.width()/2,g=c/this._track[this._getSetting("size")](),h;if(c<0){c=0}if(this.int64===false){h=(this.max-this.min)*g+this.min}else{var f=new a.jqx.math().fromNumber(this._track[this._getSetting("size")](),10);var d=this._max64.subtract(this._min64);var e=Math.round(this._divide64(d,f)*c);h=new a.jqx.math().fromNumber(e,10).add(this._min64)}if(this.layout=="normal"){if(this.orientation==="horizontal"&&!this.rtl){return h}else{return(this.max+this.min)-h}}else{if(this.orientation==="horizontal"&&!this.rtl){if(this.int64===false){return(this.max+this.min)-h}else{return(this._max64.add(this._min64)).subtract(h)}}else{return h}}},_getThumbSize:function(){if(this.__thumbSize){return this.__thumbSize}var b=this._slider.left[this._getSetting("size")]();this.__thumbSize=b;return b},_getTrackSize:function(){if(this.__trackSize){return this.__trackSize}var b=this._track[this._getSetting("size")]();this.__trackSize=b;return b},_getFixedValueByPosition:function(f){var i=this._getTrackSize(),d=this._getThumbSize(),k={number:-1,distance:Number.MAX_VALUE},c,h,g,j;if(this.int64===false){c=this.step;g=(this.max-this.min)/c;h=(i)/g;j=this._track.coord()[this._getSetting("left")]-d/2;for(var e=this.min;e<=this.max+this.step;e+=this.step){if(Math.abs(k.distance-f)>Math.abs(j-f)){k.distance=j;k.number=e}j+=h}}else{c=this._step64;g=(this._max64.subtract(this._min64)).div(this._step64);h=new a.jqx.math().fromNumber(i,10).div(g).toNumber();j=this._track.coord()[this._getSetting("left")]-d/2;k={number:new a.jqx.math().fromString(this._min64.toString(),10),distance:j};for(var b=new a.jqx.math().fromString(this._min64.toString(),10);b.lessThanOrEqual(this._max64.add(this._step64));b=b.add(this._step64)){if(Math.abs(k.distance-f)>Math.abs(j-f)){k.distance=j;k.number=new a.jqx.math().fromString(b.toString(),10)}j+=h}}if(this.layout=="normal"){if(this.orientation==="horizontal"&&!this.rtl){return k.number}else{return(this.max+this.min)-k.number}}else{if(this.orientation==="horizontal"&&!this.rtl){return(this.max+this.min)-k.number}else{return k.number}}},_setValue:function(e,d,b){if(!this._slideEvent||!this._slideEvent.args.cancel){e=this._handleValue(e,d);this._setSliderPosition(e,d,b);this._fixZIndexes();if(this._valueChanged(1)){var c=this._raiseEvent(1,{value:this.getValue()})}if(this._valueChanged(0)){this._raiseEvent(0,{value:this.getValue()})}if(this.input){if(!this.rangeSlider){this.input.val(this.value.toString())}else{if(this.values){if(this.value.rangeEnd!=undefined&&this.value.rangeStart!=undefined){this.input.val(this.value.rangeStart.toString()+"-"+this.value.rangeEnd.toString())}}}}}},_valueChanged:function(c){var b=this.getValue();return(!this.rangeSlider&&this._lastValue[c]!==b)||(this.rangeSlider&&(typeof this._lastValue[c]!=="object"||parseFloat(this._lastValue[c].rangeEnd)!==parseFloat(b.rangeEnd)||parseFloat(this._lastValue[c].rangeStart)!==parseFloat(b.rangeStart)))},_handleValue:function(c,b){c=this._validateValue(c,b);if(b[0]===this._slider.left[0]){this.values[0]=this.int64?c.toString():c;if(this.int64===true){this._value64[0]=c}}if(b[0]===this._slider.right[0]){this.values[1]=this.int64?c.toString():c;if(this.int64===true){this._values64[1]=c}}if(this.rangeSlider){this.value={rangeStart:this.values[0],rangeEnd:this.values[1]};if(this.int64===true){this._value64={rangeStart:this._values64[0],rangeEnd:this._values64[1]}}}else{if(this.int64===false){this.value=c}else{this.value=c.toString();this._value64=c}}return c},_fixZIndexes:function(){if(this.values[1]-this.values[0]<0.5&&this.max-this.values[0]<0.5){this._slider.left.css("z-index",20);this._slider.right.css("z-index",15)}else{this._slider.left.css("z-index",15);this._slider.right.css("z-index",20)}},_refreshRangeBar:function(){var e=this._getSetting("left");var c=this._getSetting("size");var d=this.rtl&&this.orientation=="horizontal";if(this.layout=="normal"){var b=this._slider.left.position()[e];if(this.orientation==="vertical"||d){b=this._slider.right.position()[e]}}else{var b=this._slider.right.position()[e];if(this.orientation==="vertical"||d){var b=this._slider.left.position()[e]}}this._rangeBar.css(e,b+this._slider.left[c]()/2);this._rangeBar[c](Math.abs(this._slider.right.position()[e]-this._slider.left.position()[e]))},_validateValue:function(c,b){if(this.int64===false){if(c>this.max){c=this.max}if(c<this.min){c=this.min}if(this.rangeSlider){if(b[0]===this._slider.left[0]){if(c>=this.values[1]){c=this.values[1]}}else{if(c<=this.values[0]){c=this.values[0]}}}}else{if(c.greaterThan(this._max64)){c=this._max64}if(c.lessThan(this._min64)){c=this._min64}}return c},_setSliderPosition:function(h,c,b){var f=this._track[this._getSetting("size")](),e,i;if(b){b-=this._track.coord()[this._getSetting("left")]}if(this.int64){if(typeof h==="number"){h=new a.jqx.math().fromNumber(h,10)}else{if(typeof h==="string"){h=new a.jqx.math().fromString(h,10)}}if(h.greaterThan(this._max64)){h=new a.jqx.math().fromString(this._max64.toString(),10)}if(h.lessThan(this._min64)){h=new a.jqx.math().fromString(this._min64.toString(),10)}var g=this._divide64(h.subtract(this._min64),this._max64.subtract(this._min64));var d=1-g;if(this.layout=="normal"){var e=g;if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=d}}else{var e=d;if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=g}}i=f*e-this._slider.left[this._getSetting("size")]()/2;c.css(this._getSetting("left"),i)}else{if(this.layout=="normal"){var e=(h-this.min)/(this.max-this.min);if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=1-((h-this.min)/(this.max-this.min))}}else{var e=1-((h-this.min)/(this.max-this.min));if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=(h-this.min)/(this.max-this.min)}}i=f*e-this._slider.left[this._getSetting("size")]()/2;c.css(this._getSetting("left"),i)}if(this.tooltip){this._showTooltip(c,this.value)}this._refreshRangeBar()},_divide64:function(e,b){var h,j,c,k,m;h=e.toString();c=b.toString();if(c.length>15){var l=c.length-15;c=c.slice(0,15)+"."+c.slice(15);k=parseFloat(c);if(h.length>l){var g=h.length-l;h=h.slice(0,g)+"."+h.slice(g)}else{if(h.length===l){h="0."+h}else{var f="0.";for(var d=0;d<l-h.length;d++){f+="0"}h=f+""+h}}j=parseFloat(h)}else{j=e.toNumber();k=b.toNumber()}m=j/k;return m},_showTooltip:function(s,n){var g=this;if(g._slideStarted||g._capturedElement!=null||g._mouseDown){if(g.tooltipFormatFunction){n=g.tooltipFormatFunction(n)}else{if(g.mode==="default"){n=new Number(n).toFixed(2)}}if(!g.toolTipCreated){var c="tooltip"+g.element.id;var d=a('<div id="'+c+'"><div id ="'+c+'Main"><div id="'+c+'Text"></div></div><div id="'+c+'Arrow"></div></div>');d.css("visibility","hidden");d.css("display","none");d.css("z-index",99999);d.css("box-shadow","none");g.sliderTooltip=d;g.sliderTooltip.appendTo(a(document.body));a("#"+c+"Text").html(n);var l="#"+c;var h=a(l+"Main");var p=a(l+"Text");var q=a(l+"Arrow");h.addClass(g.toThemeProperty("jqx-widget"));p.addClass(g.toThemeProperty("jqx-widget"));q.addClass(g.toThemeProperty("jqx-widget"));h.addClass(g.toThemeProperty("jqx-fill-state-normal"));p.addClass(g.toThemeProperty("jqx-fill-state-normal"));q.addClass(g.toThemeProperty("jqx-fill-state-normal"));a(l).addClass(g.toThemeProperty("jqx-tooltip"));a(l).addClass(g.toThemeProperty("jqx-popup"));h.addClass(g.toThemeProperty("jqx-tooltip-main"));p.addClass(g.toThemeProperty("jqx-tooltip-text"));q.addClass(g.toThemeProperty("jqx-tooltip-arrow"));g.sliderTooltipContent=p;g.sliderTooltipArrow=q;g.sliderTooltipMain=h;g.arrow_size=5;g.toolTipCreated=true;if(g.rangeSlider){g.sliderTooltipArrow.css("visibility","hidden")}}var j=s.coord();g.sliderTooltip[0].style.display="block";g.sliderTooltip[0].style.visibility="visible";var k=g.sliderButtonSize+g.tickSize;if(!g.rangeSlider){g.sliderTooltipContent[0].innerHTML=n}else{var o=g.value?g.value.rangeStart:"";var b=g.value?g.value.rangeEnd:"";if(o!==""){g.sliderTooltipContent[0].innerHTML=o+" - "+b}else{g.sliderTooltip[0].style.display="none";g.sliderTooltip[0].style.visibility="hidden"}}var r=g.sliderTooltip.width();if(g.orientation=="horizontal"){var f=j.left+g.sliderButtonSize/2-r/2;if(g.rangeSlider){var e=(g._slider.right.coord().left-g._slider.left.coord().left-g._thumbSize)/2;f=g._slider.left.coord().left-r/2+e+g._thumbSize}switch(g.tooltipPosition){case"far":var i=j.top+k+g.arrow_size;g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-t-b"));g.sliderTooltipArrow.css({"border-width":"0 "+g.arrow_size+"px "+g.arrow_size+"px"});g.sliderTooltipArrow.offset({top:i-g.arrow_size,left:f-g.arrow_size/2-1+r/2});break;case"near":var i=j.top-g.arrow_size-g.sliderTooltip.height()-1;g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-t-b"));g.sliderTooltipArrow.css({"border-width":g.arrow_size+"px "+g.arrow_size+"px  0px"});g.sliderTooltipArrow.offset({top:i+g.sliderTooltip.height(),left:f-g.arrow_size/2-1+r/2});break}}else{var m=g.sliderTooltip.height();var f=j.left-r-g.arrow_size-g.tickSize;var i=j.top+g._thumbSize/2-m/2-1;if(g.rangeSlider){var e=(g._slider.right.coord().top-g._slider.left.coord().top-g._thumbSize)/2;i=g._slider.left.coord().top-m/2+e+g._thumbSize}switch(g.tooltipPosition){case"far":var f=j.left+g._thumbSize+g.arrow_size+g.tickSize;g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-l-r"));g.sliderTooltipArrow.css({"border-width":g.arrow_size+"px "+g.arrow_size+"px "+g.arrow_size+"px 0px"});g.sliderTooltipArrow.offset({top:i+g.sliderTooltip.height()/2-g.arrow_size/2-2,left:f-g.arrow_size});break;case"near":g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-l-r"));g.sliderTooltipArrow.css({"border-width":g.arrow_size+"px 0px "+g.arrow_size+"px "+g.arrow_size+"px"});g.sliderTooltipArrow.offset({top:i+g.sliderTooltip.height()/2-g.arrow_size/2-2,left:f+r+2});break}}}},_validateDropPosition:function(e,b){var c=this._track[this._getSetting("size")](),d=b[this._getSetting("size")]();if(e<-d/2){e=-d/2}if(e>c-d/2){e=c-d/2}return Math.floor(e)},propertyChangedHandler:function(b,c,f,e){b.__trackSize=null;b.__thumbSize=null;switch(c){case"theme":a.jqx.utilities.setTheme(f,e,b.host);b._leftButton.jqxRepeatButton({theme:e});b._rightButton.jqxRepeatButton({theme:e});break;case"disabled":if(e){b.disabled=true;b.disable()}else{b.disabled=false;b.enable()}break;case"width":case"height":b.__trackSize=null;b.__thumbSize=null;b._performLayout();b._initialSettings();break;case"min":case"max":b._performLayout();b.__trackSize=null;b.__thumbSize=null;if(b.int64===true){b["_"+c+"64"]=new a.jqx.math().fromString(e.toString(),10)}b._initialSettings();break;case"showTicks":case"ticksPosition":case"tickSize":b._performLayout();b._initialSettings();break;case"ticksFrequency":case"minorTicksFrequency":if(b.int64===true){b["_"+c+"64"]=new a.jqx.math().fromString(e.toString(),10)}b._performLayout();b._initialSettings();break;case"showRange":case"showButtons":case"orientation":case"rtl":b._render();b._performLayout();b._initialSettings();break;case"buttonsPosition":b._refresh();break;case"rangeSlider":if(!e){b.value=b.value.rangeEnd}else{b.value={rangeEnd:b.value,rangeStart:b.value}}b._render();b._performLayout();b._initialSettings();break;case"value":var g=e;if(b.int64===true){g=new a.jqx.math().fromString(e.toString(),10);b._value64=g}else{if(!b.rangeSlider){b.value=parseFloat(e)}}b.setValue(g);break;case"values":var d=e;if(b.int64===true){d=[new a.jqx.math().fromString(e[0].toString(),10),new a.jqx.math().fromString(e[1].toString(),10)];b._values64=d}b.setValue(d);break;case"tooltip":break;case"step":b._step64=new a.jqx.math().fromString(e.toString(),10);break;default:b._refresh()}},incrementValue:function(b){if(this.int64===false){if(b==undefined||isNaN(parseFloat(b))){b=this.step}if(this.rangeSlider){if(this.values[1]<this.max){this._setValue(this.values[1]+b,this._slider.right)}}else{if(this.values[1]>=this.min&&this.values[1]<this.max){this._setValue(this.values[1]+b,this._slider.right)}}}else{if(b==undefined||isNaN(parseFloat(b))){b=this._step64}else{b=new a.jqx.math().fromString(b.toString(),10)}var c=this._values64[1].add(b);if(c.lessThan(this._values64[1])){c=this._max64}if(this.rangeSlider){if(this._values64[1].lessThan(this._max64)){this._setValue(c,this._slider.right)}}else{if(this._values64[1].greaterThanOrEqual(this._min64)&&this._values64[1].lessThan(this._max64)){this._setValue(c,this._slider.right)}}}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}},decrementValue:function(b){if(this.int64===false){if(b==undefined||isNaN(parseFloat(b))){b=this.step}if(this.rangeSlider){if(this.values[0]>this.min){this._setValue(this.values[0]-b,this._slider.left)}}else{if(this.values[1]<=this.max&&this.values[1]>this.min){this._setValue(this.values[1]-b,this._slider.right)}}}else{if(b==undefined||isNaN(parseFloat(b))){b=this._step64}else{b=new a.jqx.math().fromString(b.toString(),10)}var c;if(this.rangeSlider){c=this._values64[0].subtract(b);if(c.greaterThan(this._values64[0])){c=this._min64}if(this._values64[0].greaterThan(this._min64)){this._setValue(c,this._slider.left)}}else{c=this._values64[1].subtract(b);if(c.greaterThan(this._values64[1])){c=this._min64}if(this._values64[1].lessThanOrEqual(this._max64)&&this._values64[1].greaterThan(this._min64)){this._setValue(c,this._slider.right)}}}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}},val:function(b){if(arguments.length==0||(!a.isArray(b)&&typeof(b)=="object")){return this.getValue()}if(this.int64===false){this.setValue(b)}else{value64=new a.jqx.math().fromString(b.toString(),10);this.setValue(value64)}},setValue:function(e){if(this.rangeSlider){var c,b;if(arguments.length<2){if(e instanceof Array){c=e[0];b=e[1]}else{if(typeof e==="object"&&typeof e.rangeStart!=="undefined"&&typeof e.rangeEnd!=="undefined"){c=e.rangeStart;b=e.rangeEnd}}}else{c=arguments[0];b=arguments[1]}this._triggerEvents=false;this._setValue(b,this._slider.right);this._triggerEvents=true;this._setValue(c,this._slider.left)}else{this._triggerEvents=false;var d=this.int64?this._min64:this.min;this._setValue(d,this._slider.left);this._triggerEvents=true;this._setValue(e,this._slider.right)}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}},getValue:function(){var b=this.value;if(this.int64===true){b=this._value64.toString()}return b},_enable:function(b){if(b){this._addEventHandlers();this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{this._removeEventHandlers();this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._leftButton.jqxRepeatButton({disabled:this.disabled});this._rightButton.jqxRepeatButton({disabled:this.disabled})},disable:function(){this._enable(false);a.jqx.aria(this,"aria-disabled",true)},enable:function(){this._enable(true);a.jqx.aria(this,"aria-disabled",false)}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxSplitter","",{});a.extend(a.jqx._jqxSplitter.prototype,{defineInstance:function(){var b={width:300,height:300,panels:[],orientation:"vertical",disabled:false,splitBarSize:5,touchSplitBarSize:15,panel1:null,panel2:null,_eventsMap:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_isTouchDevice:false,_isNested:false,resizable:true,touchMode:"auto",showSplitBar:true,initContent:null,_events:["resize","expanded","collapsed","resizeStart","layout"]};a.extend(true,this,b);return b},createInstance:function(){this.render()},_initOverlay:function(b){if(this.overlay||b=="undefined"){this.overlay.remove();this.overlay=null}else{if(b==true){this.overlay=a("<div style='z-index: 100; background: #fff;'></div>");this.overlay.css("opacity",0.01);this.overlay.css("position","absolute");this.overlay.appendTo(a(document.body));var c=this.host.coord();this.overlay.css("left","0px");this.overlay.css("top","0px");this.overlay.width(a(window).width());this.overlay.height(a(window).height());this.overlay.addClass("jqx-disableselect");if(this.orientation=="horizontal"){this.overlay.css("cursor","row-resize")}else{this.overlay.css("cursor","col-resize")}}}},_startDrag:function(b){if(b.target==this.splitBarButton[0]||this.disabled){return true}if(this.panels[0].collapsed||this.panels[1].collapsed||!this.resizable){return true}if(this.overlay==null){this._dragging=true;this._initOverlay(true);this._dragStart=a.jqx.position(b);return false}return true},_drag:function(b){if(this.panels[0].collapsed||this.panels[1].collapsed||this.disabled){return true}if(!this._dragging){return true}var i=this.orientation=="horizontal"?"top":"left";var k=this.orientation=="vertical"?"width":"height";this._position=a.jqx.position(b);if(this.overlay&&!this._splitBarClone){if(Math.abs(this._position[i]-this._dragStart[i])>=3){var m=this.splitBar.coord();this._cloneStart={left:m.left,top:m.top};this._splitBarClone=this._createSplitBarClone();this._raiseEvent(3,{panels:this.panels});return}}if(this._splitBarClone){var j,c;var n=this.host[k]();var d=n/100;var f=1/d;var h=0;var l=this._splitBarClone[k]()+2;var g=parseInt(this.host.coord()[i]);var e=this._position[i]-this._dragStart[i]+this._cloneStart[i]-g;if(h>e){e=h}if(e>n+h-l){e=n+h-l}j=this.panels[0].min;c=this.panels[1].min;if(c.toString().indexOf("%")!=-1){c=parseFloat(c)*d}if(j.toString().indexOf("%")!=-1){j=parseFloat(j)*d}this._splitBarClone.removeClass(this.toThemeProperty("jqx-splitter-splitbar-invalid"));if(e<j){this._splitBarClone.addClass(this.toThemeProperty("jqx-splitter-splitbar-invalid"));e=j}if(e>n+h-l-c){this._splitBarClone.addClass(this.toThemeProperty("jqx-splitter-splitbar-invalid"));e=n+h-l-c}this._splitBarClone.css(i,e);if(b.preventDefault){b.preventDefault()}if(b.stopPropagation){b.stopPropagation()}return false}return true},resize:function(c,b){this.width=c;this.height=b;this._arrange()},_resize:function(){var h=this.orientation=="horizontal"?"height":"width";var f=this.orientation=="horizontal"?"top":"left";var c=this._splitBarClone.css(f);var b=this.host[h]();var e=b/100;var d=1/e;var g=this.panels[0].size;if(g.toString().indexOf("%")!=-1){this.panels[0].size=parseFloat(c)*d+"%"}else{this.panels[0].size=parseFloat(c)}this._layoutPanels();this._raiseEvent(0,{panels:this.panels})},_stopDrag:function(){if(this._dragging){this._initOverlay()}this._dragging=false;if(this._splitBarClone){if(this.panels[0].collapsed||this.panels[1].collapsed||this.disabled){return true}this._resize();this._splitBarClone.remove();this._splitBarClone=null}},_createSplitBarClone:function(){var b=this.splitBar.clone();b.fadeTo(0,0.7);b.css("z-index",99999);if(this.orientation=="vertical"){b.css("cursor","col-resize")}else{b.css("cursor","row-resize")}this.host.append(b);return b},_eventName:function(b){if(this._isTouchDevice){return this._eventsMap[b]}else{return b}},_addHandlers:function(){var c=this;a.jqx.utilities.resize(this.host,function(){c._layoutPanels()});this.addHandler(this.splitBar,"dragstart."+this.element.id,function(e){return false});if(this.splitBarButton){this.addHandler(this.splitBarButton,"click."+this.element.id,function(){var e=function(f){if(!f.collapsed){c.collapse()}else{c.expand()}};if(c.panels[0].collapsible){e(c.panels[0])}else{if(c.panels[1].collapsible){e(c.panels[1])}}});this.addHandler(this.splitBarButton,this._eventName("mouseenter"),function(){c.splitBarButton.addClass(c.toThemeProperty("jqx-splitter-collapse-button-hover"));c.splitBarButton.addClass(c.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(this.splitBarButton,this._eventName("mouseleave"),function(){c.splitBarButton.removeClass(c.toThemeProperty("jqx-splitter-collapse-button-hover"));c.splitBarButton.removeClass(c.toThemeProperty("jqx-fill-state-hover"))})}this.addHandler(a(document),this._eventName("mousemove")+"."+this.element.id,function(e){return c._drag(e)});this.addHandler(a(document),this._eventName("mouseup")+"."+this.element.id,function(){return c._stopDrag()});this.addHandler(this.splitBar,this._eventName("mousedown"),function(e){return c._startDrag(e)});this.addHandler(this.splitBar,this._eventName("mouseenter"),function(){if(c.resizable&&!c.disabled){c.splitBar.addClass(c.toThemeProperty("jqx-splitter-splitbar-hover"));c.splitBar.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.splitBar,this._eventName("mouseleave"),function(){if(c.resizable&&!c.disabled){c.splitBar.removeClass(c.toThemeProperty("jqx-splitter-splitbar-hover"));c.splitBar.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}});if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var d=null;if(window.parent&&document.referrer){d=document.referrer}if(d&&d.indexOf(document.location.host)!=-1){var b=function(e){c._stopDrag()};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",b,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",b)}}}}}},_removeHandlers:function(){this.removeHandler(a(window),"resize."+this.element.id);if(this.splitBarButton){this.removeHandler(this.splitBarButton,"click."+this.element.id);this.removeHandler(this.splitBarButton,this._eventName("mouseenter"));this.removeHandler(this.splitBarButton,this._eventName("mouseleave"))}this.removeHandler(a(document),this._eventName("mousemove")+"."+this.element.id);this.removeHandler(a(document),this._eventName("mouseup")+"."+this.element.id);if(this.splitBar){this.removeHandler(this.splitBar,"dragstart."+this.element.id);this.removeHandler(this.splitBar,this._eventName("mousedown"));this.removeHandler(this.splitBar,this._eventName("mouseenter"));this.removeHandler(this.splitBar,this._eventName("mouseleave"))}},render:function(){if(this.splitBar){this.splitBar.remove()}var c=this.host.children();if(c.length!=2){throw"Invalid HTML Structure! jqxSplitter requires 1 container DIV tag and 2 nested DIV tags."}if(c.length==2){var e=c[0].className.split(" ");var b=c[1].className.split(" ");if(e.indexOf("jqx-reset")!=-1&&e.indexOf("jqx-splitter")!=-1&&e.indexOf("jqx-widget")!=-1){throw"Invalid HTML Structure! Nested jqxSplitter cannot be initialized from a Splitter Panel. You need to add a new DIV tag inside the Splitter Panel and initialize the nested jqxSplitter from it!"}if(b.indexOf("jqx-reset")!=-1&&b.indexOf("jqx-splitter")!=-1&&b.indexOf("jqx-widget")!=-1){throw"Invalid HTML Structure! Nested jqxSplitter cannot be initialized from a Splitter Panel. You need to add a new DIV tag inside the Splitter Panel and initialize the nested jqxSplitter from it!"}}if(this.host.parent().length>0&&this.host.parent()[0].className.indexOf("jqx-splitter")!=-1){if(this.element.className.indexOf("jqx-splitter-panel")!=-1){throw"Invalid HTML Structure! Nested jqxSplitter cannot be initialized from a Splitter Panel. You need to add a new DIV tag inside the Splitter Panel and initialize the nested jqxSplitter from it!"}this._isNested=true;if(this.width==300){this.width="100%"}if(this.height==300){this.height="100%"}if(this.width=="100%"&&this.height=="100%"){this.host.addClass("jqx-splitter-nested");if(this.host.parent()[0].className.indexOf("jqx-splitter-panel")!=-1){this.host.parent().addClass("jqx-splitter-panel-nested")}}}this._hasBorder=(this.host.hasClass("jqx-hideborder")==false)||this.element.style.borderTopWidth!="";this._removeHandlers();this._isTouchDevice=a.jqx.mobile.isTouchDevice();this._validate();this.panel1.css("left","0px");this.panel1.css("top","0px");this.panel2.css("left","0px");this.panel2.css("top","0px");this.splitBar=a("<div><div></div></div>");if(!this.resizable){this.splitBar.css("cursor","default")}this.splitBarButton=this.splitBar.find("div:last");this._setTheme();this.splitBar.insertAfter(this.panel1);this._arrange();if(this.panels[0].collapsible==false&&this.panels[1].collapsible==false){this.splitBarButton.hide()}var d=this;this._addHandlers();if(this.initContent){this.initContent()}if(this.disabled){this.disable()}},_hiddenParent:function(){return a.jqx.isHidden(this.host)},_setTheme:function(){this.panel1.addClass(this.toThemeProperty("jqx-widget-content"));this.panel2.addClass(this.toThemeProperty("jqx-widget-content"));this.panel1.addClass(this.toThemeProperty("jqx-splitter-panel"));this.panel2.addClass(this.toThemeProperty("jqx-splitter-panel"));this.panel1.addClass(this.toThemeProperty("jqx-reset"));this.panel2.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-splitter"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.splitBar.addClass(this.toThemeProperty("jqx-splitter-splitbar-"+this.orientation));this.splitBar.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.splitBarButton.addClass(this.toThemeProperty("jqx-splitter-collapse-button-"+this.orientation));this.splitBarButton.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},_validate:function(){var b=this.host.children();if(b.length!=2){throw"Invalid HTML Structure! jqxSplitter requires two nested DIV tags!"}if(this.panels&&!this.panels[1]){if(!this.panels[0]){this.panels=[{size:"50%"},{size:"50%"}]}else{this.panels[1]={}}}else{if(this.panels==undefined){this.panels=[{size:"50%"},{size:"50%"}]}}var b=this.host.children();this.panel1=this.panels[0].element=a(b[0]);this.panel2=this.panels[1].element=a(b[1]);this.panel1[0].style.minWidth="";this.panel1[0].style.maxWidth="";this.panel2[0].style.minWidth="";this.panel2[0].style.maxWidth="";a.each(this.panels,function(){if(this.min==undefined){this.min=0}if(this.size==undefined){this.size=0}if(this.size<0){this.size=0}if(this.min<0){this.min=0}if(this.collapsible==undefined){this.collapsible=true}if(this.collapsed==undefined){this.collapsed=false}if(this.size!=0){if(this.size.toString().indexOf("px")!=-1){this.size=parseInt(this.size)}if(this.size.toString().indexOf("%")==-1){if(parseInt(this.min)>parseInt(this.size)){this.min=this.size}}else{if(this.min.toString().indexOf("%")!=-1){if(parseInt(this.min)>parseInt(this.size)){this.min=this.size}}}}})},_arrange:function(){if(this.width!=null){var d=this.width;if(typeof d!="string"){d=parseInt(this.width)+"px"}this.host.css("width",d)}if(this.height!=null){var b=this.height;if(typeof b!="string"){b=parseInt(this.height)+"px"}this.host.css("height",b)}this._splitBarSize=!this._isTouchDevice?this.splitBarSize:this.touchSplitBarSize;if(!this.showSplitBar){this._splitBarSize=0;this.splitBar.hide()}var c=this.orientation=="horizontal"?"width":"height";this.splitBar.css(c,"100%");this.panel1.css(c,"100%");this.panel2.css(c,"100%");if(this.orientation=="horizontal"){this.splitBar.height(this._splitBarSize)}else{this.splitBar.width(this._splitBarSize)}if(this.orientation==="vertical"){this.splitBarButton.width(this._splitBarSize);this.splitBarButton.height(45)}else{this.splitBarButton.height(this._splitBarSize);this.splitBarButton.width(45)}this.splitBarButton.css("position","relative");if(this.orientation==="vertical"){this.splitBarButton.css("top","50%");this.splitBarButton.css("left","0");this.splitBarButton.css("margin-top","-23px");this.splitBarButton.css("margin-left","-0px")}else{this.splitBarButton.css("left","50%");this.splitBarButton.css("top","0");this.splitBarButton.css("margin-left","-23px");this.splitBarButton.css("margin-top","-0px")}this._layoutPanels()},collapse:function(){if(this.disabled){return}var b=-1;this.panels[0].collapsed=this.panels[1].collapsed=false;this.panels[0].element[0].style.visibility="inherit";this.panels[1].element[0].style.visibility="inherit";if(this.panels[0].collapsible){b=0}else{if(this.panels[1].collapsible){b=1}}if(b!=-1){this.panels[b].collapsed=true;this.panels[b].element[0].style.visibility="hidden";this.splitBar.addClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this._layoutPanels();this._raiseEvent(2,{index:b,panels:this.panels});this._raiseEvent(0,{panels:this.panels})}},expand:function(){if(this.disabled){return}var b=-1;this.panels[0].collapsed=this.panels[1].collapsed=false;this.panels[0].element[0].style.visibility="inherit";this.panels[1].element[0].style.visibility="inherit";if(this.panels[0].collapsible){b=0}else{if(this.panels[1].collapsible){b=1}}if(b!=-1){this.panels[b].collapsed=false;this.panels[b].element[0].style.visibility="inherit";this.splitBar.removeClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this._layoutPanels();this._raiseEvent(1,{index:b,panels:this.panels});this._raiseEvent(0,{panels:this.panels})}},disable:function(){this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.splitBar.addClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this.splitBarButton.addClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"))},enable:function(){this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.splitBar.removeClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this.splitBarButton.removeClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"))},refresh:function(b){if(b!=true){this._arrange()}},propertyChangedHandler:function(b,c,e,d){if(c==="panels"||c==="orientation"||c==="showSplitBar"){b.render();return}if(c==="touchMode"){b._isTouchDevice=d}if(c==="disabled"){if(d){b.disable()}else{b.enable()}}else{if(c==="theme"){a.jqx.utilities.setTheme(e,d,b.host)}else{b.refresh()}}},_layoutPanels:function(){var j=this;var q=this.orientation=="horizontal"?"height":"width";var t=this.orientation=="horizontal"?"top":"left";var l,r,e,u;var m=parseInt(this._splitBarSize)+2;if(!this.showSplitBar){m=0}var i=this.host[q]();var k=i/100;var s=1/k;var p=s*m;var h=this.panel1;var g=this.panel2;var n=this.panels[0].size;if(this.panels[0].collapsed){e=true}if(this.panels[1].collapsed){u=true}l=this.panels[0].min;r=this.panels[1].min;if(r.toString().indexOf("%")!=-1){r=parseFloat(r)*k}if(l.toString().indexOf("%")!=-1){l=parseFloat(l)*k}if(this._isNested&&this._isTouchDevice){if(this.orientation=="horizontal"){h.width(this.host.width());g.width(this.host.width())}else{h.height(this.host.height());g.height(this.host.height())}}var f=function(){var w=j.panel1[q]();if(j.splitBar[0].style[t]!=w+"px"){var x=w;if(j.orientation=="vertical"){j.splitBar[0].style.borderLeftColor="";j.splitBar[0].style.borderRightColor="";j.splitBarButton[0].style.width=parseInt(j._splitBarSize)+"px";j.splitBarButton[0].style.left="0px"}else{j.splitBar[0].style.borderTopColor="";j.splitBar[0].style.borderBottomColor="";j.splitBarButton[0].style.height=parseInt(j._splitBarSize)+"px";j.splitBarButton[0].style.top="0px"}if(j._hasBorder){if(i-m==w){if(j.orientation=="vertical"){j.splitBar[0].style.borderRightColor="transparent";j.splitBarButton[0].style.width=parseInt(j._splitBarSize+1)+"px"}else{j.splitBar[0].style.borderBottomColor="transparent";j.splitBarButton[0].style.height=parseInt(j._splitBarSize+1)+"px"}}else{if(w==0){if(j.orientation=="vertical"){j.splitBar[0].style.borderLeftColor="transparent";j.splitBarButton[0].style.width=parseInt(j._splitBarSize+1)+"px";j.splitBarButton[0].style.left="-1px"}else{j.splitBar[0].style.borderTopColor="transparent";j.splitBarButton[0].style.height=parseInt(j._splitBarSize+1)+"px";j.splitBarButton[0].style.top="-1px"}}}}j.splitBar[0].style[t]=x+"px"}if(j.panel2[0].style[t]!=w+m+"px"){j.panel2[0].style[t]=w+m+"px"}};if(e){var b=Math.max(r,i-m);h[q](0);g[q](b)}else{if(u){var b=Math.max(l,i-m);g[q](0);h[q](b)}else{if(n.toString().indexOf("%")!=-1){var c=100-parseFloat(n);h.css(q,parseFloat(n)+"%");c-=p;g.css(q,c+"%");var d=g[q]();if(d<r){var b=d-r;var o=b*s;n=parseFloat(n)+parseFloat(o);var c=100-parseFloat(n);h.css(q,parseFloat(n)+"%");c-=p;g.css(q,c+"%")}var v=h[q]();if(v<l){var o=l*s;h.css(q,parseFloat(o)+"%")}}else{var d=i-n-m;if(h[0].style[q]!=n+"px"){h[q](n)}if(g[0].style[q]!=d+"px"){g[q](d)}if(d<r){n+=d-r;g[q](r);h[q](n)}if(n<l){h[q](l)}}}}f();this._raiseEvent(4,{panels:this.panels})},destroy:function(){this._removeHandlers();a.jqx.utilities.resize(this.host,null,true);this.host.remove()},_raiseEvent:function(d,f){var e=new a.Event(this._events[d]);e.owner=this;e.args=f;var c=this.orientation=="vertical"?"width":"height";var b=new Array();b[0]={};b[1]={};b[0].size=this.orientation=="vertical"?this.panel1[0].offsetWidth:this.panel1[0].offsetHeight;b[1].size=this.orientation=="vertical"?this.panel2[0].offsetWidth:this.panel2[0].offsetHeight;b[0].min=this.panels[0].min;b[1].min=this.panels[1].min;b[0].collapsible=this.panels[0].collapsible;b[1].collapsible=this.panels[1].collapsible;b[0].collapsed=this.panels[0].collapsed;b[1].collapsed=this.panels[1].collapsed;e.args.panels=b;return this.host.trigger(e)}})}(jqxBaseFramework));(function(a){a.jqx.jqxWidget("jqxTabs","",{});a.extend(a.jqx._jqxTabs.prototype,{defineInstance:function(){var b={scrollAnimationDuration:200,enabledHover:true,disabled:false,collapsible:false,animationType:"none",enableScrollAnimation:true,contentTransitionDuration:450,toggleMode:"click",selectedItem:0,height:"auto",width:"auto",position:"top",selectionTracker:false,scrollable:true,scrollPosition:"right",scrollStep:70,autoHeight:true,headerHeight:null,showCloseButtons:false,canCloseAllTabs:true,closeButtonSize:16,arrowButtonSize:16,keyboardNavigation:true,reorder:false,selectionTrackerAnimationDuration:300,_isTouchDevice:false,roundedCorners:true,_headerExpandingBalance:0,_dragStarted:false,_tabCaptured:false,_lastUnorderedListPosition:0,_selectedItem:0,_titleList:[],_contentList:[],_contentWrapper:null,_unorderedList:null,_scrollTimeout:null,isCollapsed:false,touchMode:false,initTabContent:null,enableDropAnimation:false,_currentEvent:null,_needScroll:true,_isAnimated:{},_events:["created","selected","add","removed","enabled","disabled","selecting","unselecting","unselected","dragStart","dragEnd","locked","unlocked","collapsed","expanded","tabclick"],_initTabContentList:[],_invalidArgumentExceptions:{invalidScrollAnimationDuration:"The scroll animation duration is not valid!",invalidWidth:"Width you've entered is invalid!",invalidHeight:"Height you've entered is invalid!",invalidAnimationType:"You've entered invalid animation type!",invalidcontentTransitionDuration:"You've entered invalid value for contentTransitionDuration!",invalidToggleMode:"You've entered invalid value for toggleMode!",invalidPosition:"You've entered invalid position!",invalidScrollPosition:"You've entered invalid scroll position!",invalidScrollStep:"You've entered invalid scroll step!",invalidStructure:"Invalid structure!",invalidArrowSize:"Invalid scroll button size!",invalidCloseSize:"Invalid close button size!"},aria:{"aria-disabled":{name:"disabled",type:"boolean"}},rtl:false};a.extend(true,this,b);return b},createInstance:function(){a.jqx.aria(this);this.host.addClass(this.toThemeProperty("jqx-tabs"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.attr("role","tablist");this._unorderedList=this.host.children("ul");this._titleList=this.host.children("ul").children("li");this._contentList=this.host.children("div");this._selectedItem=this.selectedItem;this._isTouchDevice=a.jqx.mobile.isTouchDevice();this._needScroll=this.scrollable;if(this.selectionTracker){this.selectionTracker=this._seletionTrackerBrowserCheck()}if(this._isTouchDevice){this.reorder=false;this.keyboardNavigation=false}var b=this.length();while(b){b--;this._titleList[b]=a(this._titleList[b]);this._titleList[b].attr("role","tab");this._contentList[b]=a(this._contentList[b]);this._contentList[b].attr("role","tabpanel")}this._validateProperties();this._refresh();this._moveSelectionTrack(this._selectedItem,0);if(this.disabled){this.disable()}this.element.tabIndex=0;this._raiseEvent(0);this._enableWindowResize()},_hiddenParent:function(){var c=this;if(c.host.css("display")=="none"){return true}var b=false;a.each(c.host.parents(),function(){if(a(this).css("display")=="none"){b=true;return false}});return b},_enableWindowResize:function(){var b=this;var c=a.jqx.isHidden(b.host);a.jqx.utilities.resize(this.host,function(){if(c){b._uiRefresh(true);c=false}else{b.refresh()}})},resize:function(c,b){this.width=c;this.height=b;var d=a.jqx.isHidden(this.host);if(d){this._uiRefresh(true);d=false}else{this.refresh()}},refresh:function(b){if(true!=b||b==undefined){this._performResize()}},_seletionTrackerBrowserCheck:function(){var b="Browser CodeName: "+navigator.appCodeName+"";b+="Browser Name: "+navigator.appName+"";b+="Browser Version: "+navigator.appVersion+"";b+="Platform: "+navigator.platform+"";b+="User-agent header: "+navigator.userAgent+"";if(b.indexOf("IEMobile")!=-1){return false}if(b.indexOf("Windows Phone OS")!=-1){return false}if(a.jqx.browser.msie&&a.jqx.browser.version<=7){return false}return true},render:function(){this._refresh()},_uiRefresh:function(b){this._unorderedListLeftBackup=this._unorderedList.css("left");if(b){this._render()}this._addStyles();this._performLayout();this._prepareTabs();this._removeEventHandlers();this._addEventHandlers();if(this._unorderedListLeftBackup==="auto"){this._unorderedListLeftBackup=this._getArrowsDisplacement()}this._unorderedList.css("left",this._unorderedListLeftBackup);if(this.rtl){if(this.scrollable&&this._rightArrow&&this._rightArrow.css("visibility")!="hidden"){var d=2*this.arrowButtonSize;var c=this.host.width()-parseInt(this._unorderedList.width()+d+ +parseInt(this._unorderedList.css("margin-left")),10);this._unorderedList.css("left",c+"px")}}},_refresh:function(){if(a.jqx.isHidden(this.host)){return}this._uiRefresh(true)},_addStyles:function(){this._unorderedList.addClass(this.toThemeProperty("jqx-tabs-title-container"));this._unorderedList.css({outline:"none","white-space":"nowrap","margin-top":"0px","margin-bottom":"0px",padding:"0px",background:"transparent",border:"none","border-style":"none","text-indent":"0px"});var b=this.length();while(b){b--;this._titleList[b].removeClass();this._titleList[b].css("padding","");this._titleList[b].addClass("jqx-reset");this._titleList[b].addClass("jqx-disableselect");this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title"));this._titleList[b].addClass(this.toThemeProperty("jqx-item"));if(this.position=="bottom"){this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title-bottom"))}if(this._titleList[b].disabled){this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title-disable"));this._titleList[b].addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._titleList[b].removeClass(this.toThemeProperty("jqx-rc-b"));this._titleList[b].removeClass(this.toThemeProperty("jqx-rc-t"));this._contentList[b].removeClass(this.toThemeProperty("jqx-rc-b"));this._contentList[b].removeClass(this.toThemeProperty("jqx-rc-t"));switch(this.position){case"top":this._titleList[b].addClass(this.toThemeProperty("jqx-rc-t"));this._contentList[b].addClass(this.toThemeProperty("jqx-rc-b"));break;case"bottom":this._titleList[b].addClass(this.toThemeProperty("jqx-rc-b"));this._contentList[b].addClass(this.toThemeProperty("jqx-rc-t"));break}}if(this.selectionTracker){this._selectionTracker.removeClass(this.toThemeProperty("jqx-rc-b"));this._selectionTracker.removeClass(this.toThemeProperty("jqx-rc-t"));switch(this.position){case"top":this._selectionTracker.addClass(this.toThemeProperty("jqx-rc-t"));break;case"bottom":this._selectionTracker.addClass(this.toThemeProperty("jqx-rc-b"));break}}},_raiseEvent:function(d,g){var f=new a.Event(this._events[d]);f.owner=this;f.args=g;if(d===6||d===7){f.cancel=false;this._currentEvent=f}var b="";try{b=this.host.trigger(f);if(d==1){var e=this;if(this.selectionTracker||this.animationType!="none"){setTimeout(function(){if(!e._initTabContentList[e.selectedItem]){if(e.initTabContent){e.initTabContent(e.selectedItem);e._initTabContentList[e.selectedItem]=true}}var h=new a.Event("loadContent");h.owner=this;if(e._contentList.length>0&&e._contentList[e.selectedItem]){e._contentList[e.selectedItem].find("div").trigger(h)}},50+e.selectionTrackerAnimationDuration)}else{var f=new a.Event("loadContent");if(!e._initTabContentList[e.selectedItem]){if(e.initTabContent){e.initTabContent(e.selectedItem);e._initTabContentList[e.selectedItem]=true}}f.owner=this;var f=new a.Event("resize");this.host.trigger(f)}}}catch(c){}return b},_getArrowsDisplacement:function(){if(!this._needScroll){return 0}var d;var c=this.arrowButtonSize;var b=this.arrowButtonSize;if(this.scrollPosition==="left"){d=c+b}else{if(this.scrollPosition==="both"){d=c}else{d=0}}return d},_scrollRight:function(e,h){this._unorderedList.stop();this._unlockAnimation("unorderedList");var f=parseInt(this._unorderedList.width()+parseInt(this._unorderedList.css("margin-left")),10),i=parseInt(this.host.width(),10),g,j,b=parseInt(this._unorderedList.css("left"),10),c=this._getArrowsDisplacement(),d=0,k=undefined;if(this.scrollable){g=parseInt(this._leftArrow.outerWidth(),10);j=parseInt(this._rightArrow.outerWidth(),10)}else{g=0;j=0}e=(this.enableScrollAnimation)?e:0;if(parseInt(this._headerWrapper.width(),10)>parseInt(this._unorderedList.css("margin-left"))+parseInt(this._unorderedList.width(),10)){d=c}else{if(Math.abs(b)+this.scrollStep<Math.abs(i-f)+g+j+c){d=b-this.scrollStep;k=b-this.scrollStep+parseInt(this._titleList[this._selectedItem].position().left)}else{d=i-f-(2*this.arrowButtonSize-c);if(d<parseInt(this._unorderedList.css("left"),10)-4&&d>parseInt(this._unorderedList.css("left"),10)+4){k=i-f-g-j+parseInt(this._titleList[this._selectedItem].position().left)}}}this._performScrollAnimation(d,k,e)},_scrollLeft:function(f,g){this._unorderedList.stop();this._unlockAnimation("unorderedList");var b=parseInt(this._unorderedList.css("left")),c=this._getArrowsDisplacement(),e=0,d=undefined;f=(this.enableScrollAnimation)?f:0;if(parseInt(this._headerWrapper.width())>=parseInt(this._unorderedList.width())){e=c}else{if(b+this.scrollStep<c){e=b+this.scrollStep;d=b+this.scrollStep+parseInt(this._titleList[this._selectedItem].position().left)}else{e=c;if(e<parseInt(this._unorderedList.css("left"))-4&&e>parseInt(this._unorderedList.css("left"))+4){d=parseInt(this._titleList[this._selectedItem].position().left)}}}this._performScrollAnimation(e,d,f)},_performScrollAnimation:function(e,d,c){var b=this;if(d!==undefined){this._moveSelectionTrack(this._selectedItem,0,d)}this._lockAnimation("unorderedList");this._unorderedList.animate({left:e},c,function(){b._moveSelectionTrack(b.selectedItem,0);b._unlockAnimation("unorderedList")})},_addKeyboardHandlers:function(){var b=this;if(this.keyboardNavigation){this.addHandler(this.host,"keydown",function(e){if(!b._activeAnimation()){var f=b._selectedItem;var d=b.selectionTracker;var c=b.getContentAt(f);if(a(e.target).ischildof(c)){return true}switch(e.keyCode){case 37:if(b.rtl){b.next()}else{b.previous()}return false;case 39:if(b.rtl){b.previous()}else{b.next()}return false;case 36:b.first();return false;case 35:b.last();return false;case 27:if(b._tabCaptured){b._cancelClick=true;b._uncapture(null,b.selectedItem);b._tabCaptured=false}break}b.selectionTracker=d}return true})}},_addScrollHandlers:function(){var b=this;this.addHandler(this._leftArrow,"mousedown",function(){b._startScrollRepeat(true,b.scrollAnimationDuration)});this.addHandler(this._rightArrow,"mousedown",function(){b._startScrollRepeat(false,b.scrollAnimationDuration)});this.addHandler(this._rightArrow,"mouseleave",function(){clearTimeout(b._scrollTimeout)});this.addHandler(this._leftArrow,"mouseleave",function(){clearTimeout(b._scrollTimeout)});this.addHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpScrollDocumentHandler,this);this.addHandler(a(document),"mouseleave.tab"+this.element.id,this._mouseLeaveScrollDocumentHandler,this)},_mouseLeaveScrollDocumentHandler:function(c){var b=c.data;if(!b._scrollTimeout){return}clearTimeout(b._scrollTimeout)},_mouseUpScrollDocumentHandler:function(c){var b=c.data;clearTimeout(b._scrollTimeout)},_mouseUpDragDocumentHandler:function(c){var b=c.data;if(b._tabCaptured&&b._dragStarted){b._uncapture(c)}b._tabCaptured=false},_addReorderHandlers:function(){var b=this;this.addHandler(a(document),"mousemove.tab"+this.element.id,this._moveElement,this);this.addHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpDragDocumentHandler,this)},_addEventHandlers:function(){var e=this.length();while(e){e--;this._addEventListenerAt(e)}if(this.keyboardNavigation){this._addKeyboardHandlers()}if(this.scrollable){this._addScrollHandlers()}if(this.reorder&&!this._isTouchDevice){this._addReorderHandlers()}var d=this;try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var c=function(g){if(d._tabCaptured){d._cancelClick=true;d._uncapture(null,d.selectedItem);d._tabCaptured=false}};var f=null;if(window.parent&&document.referrer){f=document.referrer}if(f&&f.indexOf(document.location.host)!=-1){if(window.top.document){this.addHandler(a(window.top.document),"mouseup",c)}}}}}catch(b){}},focus:function(){try{this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},_getFocusedItem:function(f,e){var i=this.length();while(i){i--;var h=this._titleList[i],g=parseInt(h.outerWidth(true)),d=parseInt(h.offset().left),c=parseInt(this._unorderedList.offset().left),j=parseInt(this.host.offset().left),b=d;if((b<=f&&b+g>=f)&&(h!==this._capturedElement)&&(!this._titleList[i].locked)&&(this._titleList[i].disabled!==true)){return i}}return -1},_uncapture:function(e){var d=this.selectionTracker;this._unorderedListLeftBackup=this._unorderedList.css("left");this._dragStarted=false;this._tabCaptured=false;var b=this._indexOf(this._capturedElement);if(!this._capturedElement){return}switch(this.position){case"top":this._capturedElement.css("bottom",0);break;case"bottom":this._capturedElement.css("top",0);break}if(e){var c=this._getFocusedItem(e.clientX,e.clientY)}if(c===-1||!e){this._capturedElement.css("left",0)}else{this._raiseEvent(10,{item:b,dropIndex:c});this._reorderItems(c,b)}a.each(this._titleList,function(){this.css("position","static")});this._reorderHeaderElements();this._unorderedList.css({position:"relative",top:"0px"});this._prepareTabs();if(c===-1||!e){this._selectedItem=b;this._moveSelectionTrack(b,0);this._addSelectStyle(this._selectedItem,true)}else{this._moveSelectionTrack(this._selectedItem,0);this._addSelectStyle(this._selectedItem,true)}if(document.selection){document.selection.clear()}this._unorderedList.css("left",this._unorderedListLeftBackup);this.selectionTracker=d},_reorderItems:function(c,b){var d=this._titleList[this.selectedItem];var e=this._contentList[b];if(typeof this._capturedElement==="undefined"){this._capturedElement=this._titleList[b]}this._titleList[b].remove();if(b<c){this._titleList[b].insertAfter(this._titleList[c])}else{this._titleList[b].insertBefore(this._titleList[c])}this._reorderElementArrays(c,b);this._getSelectedItem(d);this._removeEventHandlers();this._addEventHandlers()},_reorderElementArrays:function(d,b){var e=this._titleList[this.selectedItem];var f=this._contentList[b];if(b<d){for(var c=b;c<=d;c++){this._titleList[c]=this._titleList[c+1];this._contentList[c]=this._contentList[c+1]}this._contentList[d]=f;this._titleList[d]=this._capturedElement}else{for(var c=b;c>=d;c--){this._titleList[c]=this._titleList[c-1];this._contentList[c]=this._contentList[c-1]}this._contentList[d]=f;this._titleList[d]=this._capturedElement}},getSelectedItem:function(){return this.selectedItem},_getSelectedItem:function(c){var b=this.length();while(b){b--;if(this._titleList[b]===c){this._selectedItem=this.selectedItem=b;break}}},_moveElement:function(c,b){var b=c.data;if(b._tabCaptured){if(document.selection){document.selection.clear()}if(!b._dragStarted){unorderedListLeft=-parseInt(b._unorderedList.css("left"),10);if(c.clientX+unorderedListLeft>b._startX+3||c.clientX+unorderedListLeft<b._startX-3){b._prepareTabForDragging();b._dragStarted=true}}else{b._performDrag(c);clearTimeout(b._scrollTimeout)}}},_performDrag:function(c){var b=this.getZoomFactor();unorderedListLeft=-parseInt(this._unorderedList.css("left"),10);this._capturedElement.css("left",unorderedListLeft+c.clientX/b-this._startX/b);this._lastX=c.clientX/b;this._moveSelectionTrack(this.selectedItem,0)},getZoomFactor:function(){var c=1;if(document.body.getBoundingClientRect){var d=document.body.getBoundingClientRect();var e=d.right-d.left;var b=document.body.offsetWidth;c=Math.round((e/b)*100)/100}return c},_prepareTabForDragging:function(){this._capturedElement.css({position:"relative",left:"0px",top:"0px","z-index":"300"});this.selectedItem=this._indexOf(this._capturedElement);switch(this.position){case"top":this._capturedElement.css("bottom",parseInt(this._capturedElement.css("top")));break;case"bottom":this._capturedElement.css("top",parseInt(this._capturedElement.css("top")));break}this._raiseEvent(9,{item:this._indexOf(this._capturedElement)})},_dragScroll:function(d){var c=parseInt(this._unorderedList.css("left"));var b=this;var e=parseInt(this._capturedElement.css("left"));if(d.clientX<=this._headerWrapper.offset().left){this._scrollLeft(this.scrollAnimationDuration);this._capturedElement.css("left",parseInt(this._capturedElement.css("left"))+this._lastUnorderedListPosition-c)}else{if(d.clientX>this._headerWrapper.offset().left+parseInt(this._headerWrapper.width(),10)){this._scrollRight(this.scrollAnimationDuration);this._capturedElement.css("left",parseInt(this._capturedElement.css("left"))+this._lastUnorderedListPosition-c)}else{this._unorderedList.stop();this._unlockAnimation("unorderedList");clearTimeout(this._scrollTimeout)}}var b=this;this._scrollTimeout=setTimeout(function(){b._dragScroll(d)},this.scrollAnimationDuration);this._lastUnorderedListPosition=c},_captureElement:function(c,b){if(!this._tabCaptured&&!this._titleList[b].locked&&this._titleList[b].disabled!==true&&!this._activeAnimation()){unorderedListLeft=-parseInt(this._unorderedList.css("left"),10);this._startX=unorderedListLeft+c.clientX;this._startY=c.clientY;this._lastX=c.clientX;this._lastY=c.clientY;this._tabCaptured=true;this._capturedElement=this._titleList[b]}},_titleInteractionTrigger:function(b){if(this._headerExpandingBalance>0){this._removeOppositeBorder()}if(this._selectedItem!==b){this.select(this._titleList[b],"toggle");this._titleList[b].collapsed=false;if(!this.collapsible){if(this.height!=="auto"){this._contentWrapper.css("visibility","visible")}else{this._contentWrapper.css("display","block")}}}else{if(this.collapsible){if(this.isCollapsed){this.expand()}else{this.collapse()}}}},collapse:function(){var c=this._selectedItem,b=this;this.isCollapsed=true;if(b.height!=="auto"){b._contentWrapper.css("visibility","hidden")}else{b._contentWrapper.hide()}b._raiseEvent(13,{item:c});if(this.position=="top"){b._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header-collapsed"));b.host.addClass(this.toThemeProperty("jqx-tabs-collapsed"))}else{b._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header-collapsed-bottom"));b.host.addClass(this.toThemeProperty("jqx-tabs-collapsed-bottom"))}},expand:function(){var c=this._selectedItem,b=this;this.isCollapsed=false;this._select(c,b.contentTransitionDuration,null,false,true);if(b.height!=="auto"){b._contentWrapper.css("visibility","visible")}else{b._contentWrapper.show()}b._raiseEvent(14,{item:c});if(this.position=="top"){b._headerWrapper.removeClass(this.toThemeProperty("jqx-tabs-header-collapsed"));b.host.removeClass(this.toThemeProperty("jqx-tabs-collapsed"))}else{b._headerWrapper.removeClass(this.toThemeProperty("jqx-tabs-header-collapsed-bottom"));b.host.removeClass(this.toThemeProperty("jqx-tabs-collapsed-bottom"))}},_addSelectHandler:function(c){var b=this;this.addHandler(this._titleList[c],"selectstart",function(d){return false});this.addHandler(this._titleList[c],this.toggleMode,function(d){return function(){b._raiseEvent("15",{item:d});if(!b._tabCaptured&&!b._cancelClick){b._titleInteractionTrigger(d)}return true}}(c))},_addDragDropHandlers:function(c){var b=this;this.addHandler(this._titleList[c],"mousedown",function(d){b._captureElement(d,c);return false});this.addHandler(this._titleList[c],"mouseup",function(d){if(b._tabCaptured&&b._dragStarted){b._cancelClick=true;b._uncapture(d,c)}else{b._cancelClick=false}b._tabCaptured=false;return false})},_removeHoverStates:function(){var b=this;a.each(this._titleList,function(){this.removeClass(b.toThemeProperty("jqx-tabs-title-hover-top"));this.removeClass(b.toThemeProperty("jqx-tabs-title-hover-bottom"))})},_addHoverHandlers:function(c){var b=this;var d=this._titleList[c];this.addHandler(d,"mouseenter",function(f){if(c!=b._selectedItem){if(b.position=="top"){d.addClass(b.toThemeProperty("jqx-tabs-title-hover-top"))}else{d.addClass(b.toThemeProperty("jqx-tabs-title-hover-bottom"))}d.addClass(b.toThemeProperty("jqx-fill-state-hover"));if(b.showCloseButtons){var e=d.children(0).children(b.toThemeProperty(".jqx-tabs-close-button",true));e.addClass(b.toThemeProperty("jqx-tabs-close-button-hover",true))}}});this.addHandler(d,"mouseleave",function(f){if(c!=b._selectedItem){if(b.position=="top"){d.removeClass(b.toThemeProperty("jqx-tabs-title-hover-top"))}else{d.removeClass(b.toThemeProperty("jqx-tabs-title-hover-bottom"))}d.removeClass(b.toThemeProperty("jqx-fill-state-hover"));if(b.showCloseButtons){var e=d.children(0).children(b.toThemeProperty(".jqx-tabs-close-button",true));e.removeClass(b.toThemeProperty("jqx-tabs-close-button-hover",true))}}})},_addEventListenerAt:function(d){var c=this;if(this._titleList[d].disabled){return}if(this.reorder&&!this._isTouchDevice){this._addDragDropHandlers(d)}this._addSelectHandler(d);if(this.enabledHover){this._addHoverHandlers(d)}var b=this._titleList[d].find(this.toThemeProperty(".jqx-tabs-close-button",true));this.removeHandler(b,"click");this.addHandler(b,"click",function(e){c.removeAt(d);return false})},_removeEventHandlers:function(){var b=this;var c=this.length();while(c){c--;this._removeEventListenerAt(c)}if(this.scrollable){this.removeHandler(this._leftArrow,"mousedown");this.removeHandler(this._rightArrow,"mousedown")}this.removeHandler(a(document),"mousemove.tab"+this.element.id,this._moveElement);this.removeHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpScrollDocumentHandler);this.removeHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpDragDocumentHandler);this.removeHandler(this.host,"keydown")},_removeEventListenerAt:function(d){var c=this;this.removeHandler(this._titleList[d],this.toggleMode);this.removeHandler(this._titleList[d],"mouseenter");this.removeHandler(this._titleList[d],"mouseleave");this.removeHandler(this._titleList[d],"mousedown");this.removeHandler(this._titleList[d],"mouseup");var b=this._titleList[d].children(0).children(this.toThemeProperty(".jqx-tabs-close-button",true));this.removeHandler(b,"click")},_moveSelectionTrack:function(l,c,b){var m=this;if(l==-1){return}if(this._titleList.length==0){return}if(l>=this._titleList.length){return}if(this.selectionTracker&&this._selectionTracker){this._selectionTracker.stop();this._unlockAnimation("selectionTracker");if(b===undefined){var h=parseInt(this._titleList[l].position().left);if(!isNaN(parseInt(this._unorderedList.css("left")))){h+=parseInt(this._unorderedList.css("left"))}if(!isNaN(parseInt(this._unorderedList.css("margin-left")))){h+=parseInt(this._unorderedList.css("margin-left"))}if(!isNaN(parseInt(this._titleList[l].css("margin-left")))){h+=parseInt(this._titleList[l].css("margin-left"))}if(!isNaN(parseInt(this._titleList[l].css("margin-right")))){}}else{var h=b}var g=0;var e=0;if(this.position==="top"){g=parseInt(this._headerWrapper.height())-parseInt(this._titleList[l].outerHeight());if(!this.autoHeight){e+=parseInt(this._titleList[l].css("margin-top"))}}this._lockAnimation("selectionTracker");var k=parseInt(this._titleList[l].css("padding-left"))+parseInt(this._titleList[l].css("padding-right"));var f=this.position=="top"?0:1;var j=parseInt(this._headerWrapper.css("padding-top"));var i=parseInt(this._titleList[l].css("padding-top"))+parseInt(this._titleList[l].css("padding-bottom"));this._selectionTracker.css("visibility","visible");this._moveSelectionTrackerContainer.css("visibility","visible");var d=parseInt(this._titleList[l].css("margin-top"));if(isNaN(d)){d=0}this._selectionTracker.animate({top:j+d-f,left:h+"px",height:parseInt(this._titleList[l].height()+i),width:this._titleList[l].width()+k},c,function(){m._unlockAnimation("selectionTracker");m._selectionTracker.css("visibility","hidden");m._addSelectStyle(l,true);m._moveSelectionTrackerContainer.css("visibility","hidden")})}},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.host.remove()},_switchTabs:function(b,d){if(b!==d&&!this._activeAnimation()&&!this._tabCaptured){var c=this;this._raiseEvent(7,{item:d});this._raiseEvent(6,{item:b});if(this._currentEvent){if(this._currentEvent.cancel){this._currentEvent=null;return}}this._unselect(d,null,true);this._select(b,c.contentTransitionDuration,null,true);return true}return false},_activeAnimation:function(){for(child in this._isAnimated){if(this._isAnimated.hasOwnProperty(child)){if(this._isAnimated[child]){return true}}}return false},_indexOf:function(c){var b=this.length();while(b){b--;if(this._titleList[b][0]===c[0]||this._contentList[b][0]===c[0]){return b}}return -1},_validateProperties:function(){try{if(this.scrollAnimationDuration<0||isNaN(this.scrollAnimationDuration)){throw new Error(this._invalidArgumentExceptions.invalidScrollAnimationDuration)}if(parseInt(this.width)<0&&this.width!=="auto"){throw new Error(this._invalidArgumentExceptions.invalidWidth)}if(parseInt(this.height)<0&&this.height!=="auto"){throw new Error(this._invalidArgumentExceptions.invalidHeight)}if(this.animationType!=="none"&&this.animationType!=="fade"){throw new Error(this._invalidArgumentExceptions.invalidAnimationType)}if(this.contentTransitionDuration<0||isNaN(this.contentTransitionDuration)){throw new Error(this._invalidArgumentExceptions.invalidcontentTransitionDuration)}if(this.toggleMode!=="click"&&this.toggleMode!=="dblclick"&&this.toggleMode!=="mouseenter"&&this.toggleMode!=="none"){throw new Error(this._invalidArgumentExceptions.invalidToggleMode)}if(this.position!=="top"&&this.position!=="bottom"){throw new Error(this._invalidArgumentExceptions.invalidPosition)}if(this.scrollPosition!=="left"&&this.scrollPosition!=="right"&&this.scrollPosition!=="both"){throw new Error(this._invalidArgumentExceptions.invalidScrollPosition)}if(this.scrollStep<0||isNaN(this.scrollStep)){throw new Error(this._invalidArgumentExceptions.invalidScrollStep)}if(this._titleList.length!==this._contentList.length||this._titleList.length==0){throw new Error(this._invalidArgumentExceptions.invalidStructure)}if(this.arrowButtonSize<0||isNaN(this.arrowButtonSize)){throw new Error(this._invalidArgumentExceptions.invalidArrowSize)}if(this.closeButtonSize<0||isNaN(this.closeButtonSize)){throw new Error(this._invalidArgumentExceptions.invalidCloseSize)}}catch(b){alert(b)}},_startScrollRepeat:function(d,c){var b=this;if(d){this._scrollLeft(c)}else{this._scrollRight(c)}if(this._scrollTimeout){clearTimeout(this._scrollTimeout)}this._scrollTimeout=setTimeout(function(){b._startScrollRepeat(d,b.scrollAnimationDuration)},c)},_performLayout:function(){var b=this.length();while(b){b--;if(this.position==="top"||this.position==="bottom"){if(this.rtl){this._titleList[b].css("float","right")}else{this._titleList[b].css("float","left")}}}this._fitToSize();this._performHeaderLayout();this._fitToSize()},updatetabsheader:function(){this._performHeaderLayout()},_performResize:function(){var b=this;this._fitToSize();this._positionArrows(this._totalItemsWidth);if(this._totalItemsWidth>this.element.offsetWidth){this._unorderedList.width(this._totalItemsWidth)}else{this._unorderedList[0].style.width=this.element.offsetWidth-2+"px"}this._fitToSize()},_addArrows:function(){if(this._leftArrow&&this._rightArrow){this._leftArrow.remove();this._rightArrow.remove()}this._leftArrow=a('<div><span style="display: block; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-tabs-arrow-left")+'"></span></div>');this._rightArrow=a('<div><span style="display: block; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-tabs-arrow-right")+'"></span></div>');this._leftArrow.addClass(this.toThemeProperty("jqx-tabs-arrow-background"));this._rightArrow.addClass(this.toThemeProperty("jqx-tabs-arrow-background"));this._leftArrow.addClass(this.toThemeProperty("jqx-widget-header"));this._rightArrow.addClass(this.toThemeProperty("jqx-widget-header"));this._headerWrapper.append(this._leftArrow);this._headerWrapper.append(this._rightArrow);this._leftArrow.width(this.arrowButtonSize);this._leftArrow.height("100%");this._rightArrow.width(this.arrowButtonSize);this._rightArrow.height("100%");this._leftArrow.css({"z-index":"30"});this._rightArrow.css({"z-index":"30"});this._leftArrow.css("display","none");this._rightArrow.css("display","none")},_tabsWithVisibleCloseButtons:function(){if(!this.showCloseButtons){return 0}var c=this.length();var b=this;a.each(this._titleList,function(){var d=this.attr("hasclosebutton");if(d!=undefined&&d!=null){if(d=="false"||d==false){c--}}});return c},_calculateTitlesSize:function(){var g=0;var d=0;var c=this.length();if(this.rtl&&a.jqx.browser.msie&&a.jqx.browser.version<8){this._measureItem=a("<span style='position: relative; visibility: hidden;'></span>");a(document.body).append(this._measureItem)}while(c){c--;if(this._measureItem){this._measureItem.html(this._titleList[c].html());this._titleList[c].width(this._measureItem.width())}this._titleList[c].css("position","static");this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none");d+=parseInt(this._titleList[c].outerWidth(true));if(g<this._titleList[c].outerHeight(true)){g=Math.round(parseInt(this._titleList[c].outerHeight(true)))}if(this._titleList[c].height()==0){var f=this._titleList[c].clone();a(document.body).append(f);g=Math.round(parseInt(f.outerHeight(true)));f.remove()}var b=this._titleList[c].attr("hasCloseButton");if(b!=undefined&&b!=null){var e=false;if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none");e=true}}if(!e){if(b=="true"||b==true){d+=this.closeButtonSize;this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","block")}else{if(b=="false"||b==false){this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none")}}}}else{if(this.showCloseButtons&&(this.canCloseAllTabs||this._tabsWithVisibleCloseButtons()>1)){var e=false;if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none");e=true}}if(!e){d+=this.closeButtonSize;this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","block")}}}this._titleList[c].height(this._titleList[c].height())}if(this._measureItem){this._measureItem.remove()}return{height:g,width:10+d}},_reorderHeaderElements:function(){if(this.selectionTracker){this._moveSelectionTrackerContainer.css({position:"absolute",height:"100%",top:"0px",left:"0px",width:"100%"})}this._headerWrapper.css({position:"relative",left:"0px",top:"0px"});if(this.scrollable){this._rightArrow.css({width:this.arrowButtonSize,position:"absolute",top:"0px"});this._leftArrow.css({width:this.arrowButtonSize,position:"absolute",top:"0px"});var c=this.theme&&this.theme.indexOf("ui-")!=-1?3:0;if(c>0){this._rightArrow.addClass(this.toThemeProperty("jqx-rc-r"));this._leftArrow.addClass(this.toThemeProperty("jqx-rc-l"))}var b=this.scrollPosition;if(this.rtl){if(b=="left"){b="right"}if(b=="right"){b="left"}}switch(b){case"both":this._rightArrow.css("right","0px");this._leftArrow.css("left","0px");break;case"left":this._rightArrow.css("left",this.arrowButtonSize+"px");this._leftArrow.css("left","0px");break;case"right":this._rightArrow.css("right",-c+"px");this._leftArrow.css("right",(this.arrowButtonSize-c)+"px");break}}},_positionArrows:function(b){if(b>=parseInt(this._headerWrapper[0].offsetWidth)&&this.scrollable){this._needScroll=true;if(this._unorderedList.position().left===0){this._unorderedListLeftBackup=this._getArrowsDisplacement()+"px"}this._leftArrow.css("display","block");this._rightArrow.css("display","block")}else{this._needScroll=false;this._leftArrow[0].style.display="none";this._rightArrow[0].style.display="none";this._unorderedList[0].style.left="0px"}},_performHeaderLayout:function(){this._removeSelectStyle();var b=this._calculateTitlesSize();var d=b.height;var c=b.width;this._headerWrapper.height(d);this._unorderedList.height(d);if(this.headerHeight!=null&&this.headerHeight!="auto"){this._headerWrapper.height(this.headerHeight);this._unorderedList.height(this.headerHeight)}if(c>this.host.width()){this._unorderedList.width(c)}else{this._unorderedList.width(this.host.width())}if(a.jqx.browser.msie&&a.jqx.browser.version<8){this._unorderedList.css("position","relative");this._headerWrapper.css("overflow","hidden")}this._reorderHeaderElements();c=c+parseInt(this._unorderedList.css("margin-left"));this._totalItemsWidth=c;this._positionArrows(c);this._unorderedList.css({position:"relative",top:"0px"});this._verticalAlignElements();this._moveSelectionTrack(this._selectedItem,0);this._addSelectStyle(this.selectedItem)},_verticalAlignElements:function(){var k=this.length();var p=this._maxHeightTab();while(k){k--;var b=this._titleList[k].find(".jqx-tabs-titleContentWrapper"),l=b.height(),o=this._titleList[k].find(this.toThemeProperty(".jqx-tabs-close-button",true)),m=parseInt(this._titleList[k].css("padding-top"));if(!m){m=0}if(this.autoHeight){var h=this._titleList[k].outerHeight(true)-this._titleList[k].height();var c=parseInt(this._titleList[k].css("padding-top"));var q=parseInt(this._titleList[k].css("padding-bottom"));var j=parseInt(this._titleList[k].css("border-top-width"));var f=parseInt(this._titleList[k].css("border-bottom-width"));this._titleList[k].height(this._unorderedList.outerHeight()-c-q-j-f)}else{if(this.position==="top"){var i=parseInt(this._unorderedList.height())-parseInt(this._titleList[k].outerHeight(true));if(parseInt(this._titleList[k].css("margin-top"))!==i&&i!==0){this._titleList[k].css("margin-top",i)}}else{this._titleList[k].height(this._titleList[k].height())}}this._titleList[k].children(0).height("100%");var e=parseInt(this._titleList[k].height());var g=parseInt(e)/2-parseInt(o.height())/2;o.css("margin-top",1+g);var n=parseInt(e)/2-parseInt(b.height())/2;b.css("margin-top",n)}if(this.scrollable){var h=parseInt(this._headerWrapper.outerHeight())-this.arrowButtonSize;var d=h/2;this._rightArrow.children(0).css("margin-top",d);this._rightArrow.height("100%");this._leftArrow.height("100%");this._leftArrow.children(0).css("margin-top",d)}},_getImageUrl:function(c){var b=c.css("background-image");b=b.replace('url("',"");b=b.replace('")',"");b=b.replace("url(","");b=b.replace(")","");return b},_fitToSize:function(){var c=false;var e=false;var d=this;if(d.width!=null&&d.width.toString().indexOf("%")!=-1){c=true}if(d.height!=null&&d.height.toString().indexOf("%")!=-1){e=true}if(c){this.host[0].style.width=this.width;this._contentWrapper[0].style.width="100%"}if(e){this.host[0].style.height=this.height;this._contentWrapper[0].style.width="100%";this._contentWrapper[0].style.height="auto";var b=this.element.offsetHeight-this._headerWrapper[0].offsetHeight;this._contentWrapper[0].style.height=b+"px"}if(!c){this.host.width(this.width);if(this.width!="auto"){this._contentWrapper.css("width","100%")}}if(!e){if(this.height!=="auto"){this.host.height(this.height);var b=this.host.height()-this._headerWrapper.outerHeight();this._contentWrapper.height(b)}else{this._contentWrapper.css("height","auto")}}},_maxHeightTab:function(){var c=this.length();var d=-1;var b=-1;while(c){c--;if(d<parseInt(this._titleList[c].outerHeight(true))){b=c}}return b},_addSelectionTracker:function(){if(this._moveSelectionTrackerContainer){this._moveSelectionTrackerContainer.remove()}this._moveSelectionTrackerContainer=a('<div class="'+this.toThemeProperty("jqx-tabs-selection-tracker-container")+'">');var b=this.toThemeProperty("jqx-tabs-selection-tracker-"+this.position);this._selectionTracker=a('<div class="'+b+'">');this._selectionTracker.css("color","inherit");this._moveSelectionTrackerContainer.append(this._selectionTracker);this._headerWrapper.append(this._moveSelectionTrackerContainer);this._selectionTracker.css({position:"absolute","z-index":"10",left:"0px",top:"0px",display:"inline-block"})},_addContentWrapper:function(){var d="none";var b=this._contentWrapper==undefined;this._contentWrapper=this._contentWrapper||a('<div class="'+this.toThemeProperty("jqx-tabs-content")+'" style="float:'+d+';">');this._contentWrapper.addClass(this.toThemeProperty("jqx-widget-content"));var c=this.length();while(c){c--;this._contentList[c].addClass(this.toThemeProperty("jqx-tabs-content-element"))}if(b){this.host.find(".jqx-tabs-content-element").wrapAll(this._contentWrapper);this._contentWrapper=this.host.find(".jqx-tabs-content")}if(this.roundedCorners){if(this.position=="top"){this._contentWrapper.addClass(this.toThemeProperty("jqx-rc-b"))}else{this._contentWrapper.addClass(this.toThemeProperty("jqx-rc-t"))}this.host.addClass(this.toThemeProperty("jqx-rc-all"))}},_addHeaderWrappers:function(){var b=this.length();this._unorderedList.remove();this._headerWrapper=this._headerWrapper||a('<div class="jqx-tabs-headerWrapper" style="outline: none;">');this._headerWrapper.remove();if(this.position=="top"){this._headerWrapper.prependTo(this.host)}else{this._headerWrapper.appendTo(this.host)}this._unorderedList.appendTo(this._headerWrapper);this._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header"));this._headerWrapper.addClass(this.toThemeProperty("jqx-widget-header"));if(this.position=="bottom"){this._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header-bottom"))}else{this._headerWrapper.removeClass(this.toThemeProperty("jqx-tabs-header-bottom"))}if(this.roundedCorners){if(this.position=="top"){this._headerWrapper.addClass(this.toThemeProperty("jqx-rc-t"));this._headerWrapper.removeClass(this.toThemeProperty("jqx-rc-b"))}else{this._headerWrapper.removeClass(this.toThemeProperty("jqx-rc-t"));this._headerWrapper.addClass(this.toThemeProperty("jqx-rc-b"))}}while(b){b--;if(this._titleList[b].children(".jqx-tabs-titleWrapper").length<=0){var c=a('<div class="jqx-tabs-titleWrapper" style="outline: none; position: relative;">');c.append(this._titleList[b].html());this._titleList[b].empty();c.appendTo(this._titleList[b])}this._titleList[b].children(".jqx-tabs-titleWrapper").css("z-index","15")}},_render:function(){this._addCloseButtons();this._addHeaderWrappers();this._addContentWrapper();if(this.selectionTracker){this._addSelectionTracker()}this._addArrows()},_addCloseButton:function(c){var f=c;if(this._titleList[f].find(this.toThemeProperty(".jqx-tabs-close-button",true)).length<=0&&this._titleList[f].find(".jqx-tabs-titleContentWrapper").length<=0){var d=a('<div class="jqx-tabs-titleContentWrapper"></div>');var g="left";if(this.rtl){g="right"}d.css("float",g);d.addClass("jqx-disableselect");d.append(this._titleList[f].html());this._titleList[f].html("");var b=a('<div class="'+this.toThemeProperty("jqx-tabs-close-button")+'"></div>');b.css({height:this.closeButtonSize,width:this.closeButtonSize,"float":g,"font-size":"1px"});var e=this;this._titleList[f].append(d);this._titleList[f].append(b);if(!this.showCloseButtons){b.css("display","none")}else{if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){b.css("display","none")}}}}},_addCloseButtons:function(){var b=this.length();while(b){b--;this._addCloseButton(b)}},_prepareTabs:function(){var c=this.length();var b=this.selectionTracker;this.selectionTracker=false;while(c){c--;if(this._selectedItem!==c){this._unselect(c,null,false)}}this._select(this._selectedItem,0,null,false);this.selectionTracker=b;if(this.initTabContent){if(!this._initTabContentList[this.selectedItem]){if(!this._hiddenParent()){this.initTabContent(this.selectedItem);this._initTabContentList[this.selectedItem]=true}}}},_isValidIndex:function(b){return(b>=0&&b<this.length())},_removeSelectStyle:function(){var c=this.length();while(c){c--;var b=null;if(this.showCloseButtons){var b=this._titleList[c].children(0).children(this.toThemeProperty(".jqx-tabs-close-button",true));b.removeClass(this.toThemeProperty("jqx-tabs-close-button-selected"))}if(this.position=="top"){this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-selected-top"))}else{this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-selected-bottom"))}this._titleList[c].removeClass(this.toThemeProperty("jqx-fill-state-pressed"))}},_addSelectStyle:function(c,e){var d=this.length();this._removeSelectStyle();if(!this.selectionTracker||(e!=undefined&&e)){if(c>=0&&this._titleList[c]!=undefined){var b=null;if(this.showCloseButtons){var b=this._titleList[c].children(0).children(this.toThemeProperty(".jqx-tabs-close-button",true));if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){b=null}}}this._titleList[c].removeClass(this.toThemeProperty("jqx-fill-state-hover"));if(this.position=="top"){this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-hover-top"));this._titleList[c].addClass(this.toThemeProperty("jqx-tabs-title-selected-top"))}else{this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-hover-bottom"));this._titleList[c].addClass(this.toThemeProperty("jqx-tabs-title-selected-bottom"))}this._titleList[c].addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(b!=null){b.addClass(this.toThemeProperty("jqx-tabs-close-button-selected"))}}}},_addItemTo:function(g,c,e){if(c<g.length){var b=undefined,f=undefined;for(var d=c;d+1<g.length;d++){if(b===undefined){b=g[d+1];g[d+1]=g[d]}else{f=g[d+1];g[d+1]=b;b=f}}if(b===undefined){b=g[c]}g[c]=e;g.push(b)}else{g.push(e)}},_select:function(d,g,h,b,f){if(!this._tabCaptured){this.host.attr("hideFocus","true");var c=this;if(f==undefined){this._addSelectStyle(d)}else{this._addSelectStyle(d,f)}if(this.isCollapsed&&this.collapsible){this._contentList[d].css("display","none");this._selectCallback(d,h,b);return}switch(this.animationType){case"none":if(!c.selectionTracker){for(var e=0;e<this._contentList.length;e++){if(d!=e&&this._contentList[e].css("display")=="block"){this._contentList[e].css("display","none");a.jqx.aria(this._titleList[e],"aria-selected",false);a.jqx.aria(this._contentList[e],"aria-hidden",true)}}this._contentList[d].css("display","block");a.jqx.aria(this._titleList[d],"aria-selected",true);a.jqx.aria(this._contentList[d],"aria-hidden",false);a.jqx.aria(this,"aria-activedescendant",this._titleList[d][0].id)}else{setTimeout(function(){c._contentList[d].css("display","block");a.jqx.aria(c._titleList[d],"aria-selected",true);a.jqx.aria(c._contentList[d],"aria-hidden",false);a.jqx.aria(c,"aria-activedescendant",c._titleList[d][0].id)},this.selectionTrackerAnimationDuration)}this._selectCallback(d,h,b);break;case"fade":this._lockAnimation("contentListSelect");c._selectCallback(d,h,b);this._contentList[d].fadeIn(g,function(){c._unlockAnimation("contentListSelect");a.jqx.aria(c._titleList[d],"aria-selected",true);a.jqx.aria(c._contentList[d],"aria-hidden",false);a.jqx.aria(c,"aria-activedescendant",c._titleList[d][0].id)});break}}},_selectCallback:function(c,d,b){this._selectedItem=c;this.selectedItem=this._selectedItem;if(d){d()}if(b){this._raiseEvent(1,{item:c})}},_unselect:function(d,e,b){if(d>=0){if(!this._tabCaptured){var c=this;this._contentList[d].stop();if(this.animationType=="fade"){this._contentList[d].css("display","none");a.jqx.aria(c._titleList[d],"aria-selected",false);a.jqx.aria(c._contentList[d],"aria-hidden",true)}else{if(this.selectionTracker){setTimeout(function(){c._contentList[d].css("display","none");a.jqx.aria(c._titleList[d],"aria-selected",false);a.jqx.aria(c._contentList[d],"aria-hidden",true)},this.selectionTrackerAnimationDuration)}else{this._contentList[d].css("display","none");a.jqx.aria(c._titleList[d],"aria-selected",false);a.jqx.aria(c._contentList[d],"aria-hidden",true)}}this._unselectCallback(d,e,b);if(!this.selectionTracker){this._titleList[d].removeClass(this.toThemeProperty("jqx-tabs-title-selected"));this._titleList[d].removeClass(this.toThemeProperty("jqx-fill-state-pressed"))}}}},_unselectCallback:function(c,d,b){if(b){this._raiseEvent(8,{item:c})}if(d){d()}},disable:function(){var b=this.length();while(b){b--;this.disableAt(b)}},enable:function(){var b=this.length();while(b){b--;this.enableAt(b)}},getEnabledTabsCount:function(){var b=0;a.each(this._titleList,function(){if(!this.disabled){b++}});return b},getDisabledTabsCount:function(){var b=0;a.each(this._titleList,function(){if(this.disabled){b++}});return b},removeAt:function(d){if(this._isValidIndex(d)&&(this.canCloseAllTabs||this.length()>1)){this._removeHoverStates();var b=this,c=this._titleList[this._selectedItem],e=parseInt(this._titleList[d].outerWidth(true)),i=this.getTitleAt(d);this._unorderedList.width(parseInt(this._unorderedList.width())-e);this._titleList[d].remove();this._contentList[d].remove();var h=0;this._titleList.splice(d,1);this._contentList.splice(d,1);this._addStyles();this._performHeaderLayout();this._removeEventHandlers();this._addEventHandlers();this._raiseEvent(3,{item:d,title:i});this._isAnimated={};if(this.selectedItem>0){this._selectedItem=-1;var g=this._getPreviousIndex(this.selectedItem);this.select(g)}else{this._selectedItem=-1;var g=this._getNextIndex(this.selectedItem);this.select(g)}if(parseInt(this._unorderedList.css("left"))>this._getArrowsDisplacement()){this._unorderedList.css("left",this._getArrowsDisplacement())}if(parseInt(this._unorderedList.width())<=parseInt(this._headerWrapper.width())){var f=(this.enableScrollAnimation)?this.scrollAnimationDuration:0;this._lockAnimation("unorderedList");this._unorderedList.animate({left:0},f,function(){b._unlockAnimation("unorderedList")})}}},removeFirst:function(){this.removeAt(0)},removeLast:function(){this.removeAt(this.length()-1)},disableAt:function(b){if(!this._titleList[b].disabled||this._titleList[b].disabled===undefined){if(this.selectedItem==b){var c=this.next();if(!c){c=this.previous()}}this._titleList[b].disabled=true;this.removeHandler(this._titleList[b],this.toggleMode);if(this.enabledHover){this._titleList[b].off("mouseenter").off("mouseleave")}this._removeEventListenerAt(b);this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title-disable"));this._titleList[b].addClass(this.toThemeProperty("jqx-fill-state-disabled"));this._raiseEvent(5,{item:b})}},enableAt:function(b){if(this._titleList[b].disabled){this._titleList[b].disabled=false;this._addEventListenerAt(b);this._titleList[b].removeClass(this.toThemeProperty("jqx-tabs-title-disable"));this._titleList[b].removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this._raiseEvent(4,{item:b})}},addAt:function(d,g,e){if(d>=0||d<=this.length()){this._removeHoverStates();var b=a("<li>"+g+"</li>");var f=a("<div>"+e+"</div>");b.addClass(this.toThemeProperty("jqx-tabs-title"));b.addClass(this.toThemeProperty("jqx-item"));f.addClass(this.toThemeProperty("jqx-tabs-content-element"));if(this.position=="bottom"){b.addClass(this.toThemeProperty("jqx-tabs-title-bottom"))}var c=false;if(this._titleList.length==0){this._unorderedList.append(b)}else{if(d<this.length()&&d>=0){this._titleList[d].before(b)}else{this._titleList[this.length()-1].after(b)}}f.appendTo(this._contentWrapper);this._addItemTo(this._titleList,d,b);this._addItemTo(this._contentList,d,f);if(this._selectedItem>d){this._selectedItem++}this._switchTabs(d,this._selectedItem);this._selectedItem=d;if(this.showCloseButtons&&this._titleList.length>0){this._addCloseButton(d)}this._uiRefresh(c);this._raiseEvent(2,{item:d});this._moveSelectionTrack(this._selectedItem,0)}},addFirst:function(c,b){this.addAt(0,c,b)},addLast:function(c,b){this.addAt(this.length(),c,b)},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this._selectedItem}this.select(b);return this._selectedItem},select:function(c,b){if(typeof(c)==="object"){c=this._indexOf(c)}var e=c>=0&&c<this._titleList.length?this._titleList[c].attr("canselect"):true;if(e==undefined||e=="true"||e==true){if(c!==this._selectedItem&&this._isValidIndex(c)){if(!this._activeAnimation()&&!this._titleList[c].disabled){var d=this._switchTabs(c,this._selectedItem);if(d){this.ensureVisible(c)}}}}},previous:function(c){var b=this._selectedItem;if(c!=undefined&&!isNaN(c)){b=c}while(b>0&&b<this._titleList.length){b--;if(!this._titleList[b].disabled){this.select(b);return true}}return false},_getPreviousIndex:function(c){if(c!=undefined&&!isNaN(c)){var b=c;while(c>0&&c<=this._titleList.length){c--;if(!this._titleList[c].disabled){return c;break}}return b}else{return 0}},_getNextIndex:function(c){if(c!=undefined&&!isNaN(c)){var b=c;while(c>=0&&c<this._titleList.length){if(!this._titleList[c].disabled){return c;break}c++}return b}else{return 0}},next:function(c){var b=this._selectedItem;if(c!=undefined&&!isNaN(c)){b=c}while(b>=0&&b<this._titleList.length-1){b++;if(!this._titleList[b].disabled){this.select(b);return true}}return false},first:function(){var b=0;if(this._titleList[b].disabled){this.next(b)}else{this.select(b)}},last:function(){var b=this._titleList.length-1;if(this._titleList[b].disabled){this.previous(b)}else{this.select(b)}},length:function(){return this._titleList.length},lockAt:function(b){if(this._isValidIndex(b)&&(!this._titleList[b].locked||this._titleList[b].locked===undefined)){this._titleList[b].locked=true;this._raiseEvent(11,{item:b})}},unlockAt:function(b){if(this._isValidIndex(b)&&this._titleList[b].locked){this._titleList[b].locked=false;this._raiseEvent(12,{item:b})}},lockAll:function(){var b=this.length();while(b){b--;this.lockAt(b)}},unlockAll:function(){var b=this.length();while(b){b--;this.unlockAt(b)}},showCloseButtonAt:function(c){if(this._isValidIndex(c)){if(!this.showCloseButtons){this.showCloseButtons=true;this.updatetabsheader()}var b=this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true));b.css("display","block");if(!this.hiddenCloseButtons){this.hiddenCloseButtons=new Array()}this.hiddenCloseButtons[c]=0}},hideCloseButtonAt:function(c){if(this._isValidIndex(c)){var b=this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true));b.css("display","none");if(!this.hiddenCloseButtons){this.hiddenCloseButtons=new Array()}this.hiddenCloseButtons[c]=1}},hideAllCloseButtons:function(){var b=this.length();while(b){b--;this.hideCloseButtonAt(b)}},showAllCloseButtons:function(){var b=this.length();while(b){b--;this.showCloseButtonAt(b)}},getTitleAt:function(b){if(this._titleList[b]){return this._titleList[b].text()}return null},getContentAt:function(b){if(this._contentList[b]){return this._contentList[b]}return null},setTitleAt:function(b,c){if(this._titleList[b]){this._titleList[b].text(c);if(this.showCloseButtons){this._addCloseButton(b);this._removeEventHandlers();this._addEventHandlers()}this.render();this.refresh()}},setContentAt:function(b,c){if(this._contentList[b]){this._contentList[b].html(c)}},ensureVisible:function(d){var k=this;if(d==undefined||d==-1||d==null){d=this.selectedItem}if(!this._isValidIndex(d)){return false}var j=parseInt(this._titleList[d].position().left)+parseInt(this._unorderedList.css("margin-left"));var f=parseInt(this._unorderedList.css("left"));var i=parseInt(this._headerWrapper.outerWidth(true));var e=parseInt(this._titleList[d].outerWidth(true));var h=f-this._getArrowsDisplacement();var b=i-this._getArrowsDisplacement()-h;var g,c;if(j<-h){g=-j+this._getArrowsDisplacement();c=this._getArrowsDisplacement()}else{if(j+e>b-this._getArrowsDisplacement()){g=-j+i-e-((this.scrollable)?(2*this.arrowButtonSize-this._getArrowsDisplacement()):0);c=i-e-this._getArrowsDisplacement()}else{this._moveSelectionTrack(d,this.selectionTrackerAnimationDuration);return true}}this._lockAnimation("unorderedList");this._unorderedList.animate({left:g},this.scrollAnimationDuration,function(){k._unlockAnimation("unorderedList");k._moveSelectionTrack(k._selectedItem,0);return true});this._moveSelectionTrack(d,this.selectionTrackerAnimationDuration,c);return true},isVisibleAt:function(d){var k=this;if(d==undefined||d==-1||d==null){d=this.selectedItem}if(!this._isValidIndex(d)){return false}var j=parseInt(this._titleList[d].position().left)+parseInt(this._unorderedList.css("margin-left"));var f=parseInt(this._unorderedList.css("left"));var i=parseInt(this._headerWrapper.outerWidth(true));var e=parseInt(this._titleList[d].outerWidth(true));var h=f-this._getArrowsDisplacement();var b=i-this._getArrowsDisplacement()-h;var g,c;if(j<-h){return false}else{if(j+e>b){return false}else{return true}}return true},isDisabled:function(b){return this._titleList[b].disabled},_lockAnimation:function(b){if(this._isAnimated){this._isAnimated[b]=true}},_unlockAnimation:function(b){if(this._isAnimated){this._isAnimated[b]=false}},propertyChangedHandler:function(b,c,e,d){this._validateProperties();switch(c){case"touchMode":if(d){b.enabledHover=false;b.keyboardNavigation=false}break;case"width":case"height":b._performResize();return;case"disabled":if(d){this.disable()}else{this.enable()}return;case"showCloseButtons":if(d){this.showAllCloseButtons()}else{this.hideAllCloseButtons()}this._moveSelectionTrack(this._selectedItem,this.selectionTrackerAnimationDuration);return;case"selectedItem":if(this._isValidIndex(d)){this.select(d)}return;case"scrollStep":case"contentTransitionDuration":case"scrollAnimationDuration":case"enableScrollAnimation":return;case"selectionTracker":if(d){this._refresh();this.select(this._selectedItem)}else{if(this._selectionTracker!=null){this._selectionTracker.remove()}}return;case"scrollable":if(d){this._refresh();this.select(this._selectedItem)}else{this._leftArrow.remove();this._rightArrow.remove();this._performHeaderLayout()}return;case"autoHeight":this._performHeaderLayout();return;case"theme":a.jqx.utilities.setTheme(e,d,this.host);return}this._unorderedList.css("left","0px");this._refresh();this.select(this._selectedItem);this._addSelectStyle(this._selectedItem,true)}})}(jqxBaseFramework));(function(b){b.jqx.jqxWidget("jqxGrid","",{});b.extend(b.jqx._jqxGrid.prototype,{defineInstance:function(){var d={disabled:false,width:600,height:400,pagerheight:28,groupsheaderheight:34,pagesize:10,pagesizeoptions:["5","10","20"],rowsheight:25,columnsheight:25,filterrowheight:31,groupindentwidth:30,rowdetails:false,enablerowdetailsindent:true,enablemousewheel:true,initrowdetails:null,layoutrowdetails:null,editable:false,editmode:"selectedcell",pageable:false,pagermode:"default",pagerbuttonscount:5,groupable:false,sortable:false,filterable:false,filtermode:"default",autoshowfiltericon:true,showfiltercolumnbackground:true,showpinnedcolumnbackground:true,showsortcolumnbackground:true,altrows:false,altstart:1,altstep:1,showrowdetailscolumn:true,showtoolbar:false,toolbarheight:34,showstatusbar:false,statusbarheight:34,enableellipsis:true,groups:[],groupsrenderer:null,groupcolumnrenderer:null,groupsexpandedbydefault:false,pagerrenderer:null,touchmode:"auto",columns:[],selectedrowindex:-1,selectedrowindexes:new Array(),selectedcells:new Array(),autobind:true,selectedcell:null,tableZIndex:799,headerZIndex:299,updatefilterconditions:null,showaggregates:false,showfilterrow:false,showeverpresentrow:false,everpresentrowposition:"top",everpresentrowactions:"add reset",everpresentrowactionsmode:"buttons",everpresentrowheight:30,autorowheight:false,autokoupdates:true,handlekeyboardnavigation:null,showsortmenuitems:true,showfiltermenuitems:true,showgroupmenuitems:true,enablebrowserselection:false,enablekeyboarddelete:true,clipboard:true,clipboardbegin:null,clipboardend:null,copytoclipboardwithheaders:false,copytoclipboardhiddencolumns:false,ready:null,updatefilterpanel:null,autogeneratecolumns:false,rowdetailstemplate:null,scrollfeedback:null,rendertoolbar:null,renderstatusbar:null,rendered:null,multipleselectionbegins:null,columngroups:null,cellhover:null,source:{beforeprocessing:null,beforesend:null,loaderror:null,localdata:null,data:null,datatype:"array",datafields:[],url:"",root:"",record:"",id:"",totalrecords:0,recordstartindex:0,recordendindex:0,loadallrecords:true,sortcolumn:null,sortdirection:null,sort:null,filter:null,sortcomparer:null},dataview:null,updatedelay:null,autoheight:false,autowidth:false,showheader:true,showgroupsheader:true,closeablegroups:true,scrollbarsize:b.jqx.utilities.scrollBarSize,touchscrollbarsize:b.jqx.utilities.touchScrollBarSize,scrollbarautoshow:b.jqx.utilities.scrollBarAutoShow,virtualmode:false,sort:null,columnsmenu:true,columnsresize:false,columnsautoresize:true,columnsreorder:false,columnsmenuwidth:15,autoshowcolumnsmenubutton:true,popupwidth:"auto",popupheight:"auto",columnmenuopening:null,columnmenuclosing:null,sorttogglestates:2,rendergridrows:null,enableanimations:true,enablecolumnsvirtualization:true,enabletooltips:false,selectionmode:"singlerow",enablehover:true,loadingerrormessage:"The data is still loading. When the data binding is completed, the Grid raises the 'bindingcomplete' event. Call this function in the 'bindingcomplete' event handler.",verticalscrollbarstep:25,verticalscrollbarlargestep:400,horizontalscrollbarstep:10,horizontalscrollbarlargestep:50,keyboardnavigation:true,touchModeStyle:"auto",autoshowloadelement:true,showdefaultloadelement:true,showemptyrow:true,autosavestate:false,autoloadstate:false,_updating:false,_pagescache:new Array(),_pageviews:new Array(),_cellscache:new Array(),_rowdetailscache:new Array(),_rowdetailselementscache:new Array(),_requiresupdate:false,_hasOpenedMenu:false,scrollmode:"physical",deferreddatafields:null,localization:null,rtl:false,menuitemsarray:[],events:["initialized","rowClick","rowSelect","rowUnselect","groupExpand","groupCollapse","sort","columnClick","cellClick","pageChanged","pageSizeChanged","bindingComplete","groupsChanged","filter","columnResized","cellSelect","cellUnselect","cellBeginEdit","cellEndEdit","cellValueChanged","rowExpand","rowCollapse","rowDoubleClick","cellDoubleClick","columnReordered","pageChanging"]};b.extend(true,this,d);return d},createInstance:function(i){this.that=this;var h=this;h.pagesize=parseInt(h.pagesize);h.toolbarheight=parseInt(h.toolbarheight);h.columnsheight=parseInt(h.columnsheight);h.filterrowheight=parseInt(h.filterrowheight);h.statusbarheight=parseInt(h.statusbarheight);h.groupsheaderheight=parseInt(h.groupsheaderheight);h.savedArgs=i&&i.length>0?i[0]:null;var g="<div class='jqx-clear jqx-border-reset jqx-overflow-hidden jqx-max-size jqx-position-relative'><div tabindex='1' class='jqx-clear jqx-max-size jqx-position-relative jqx-overflow-hidden jqx-background-reset' id='wrapper"+h.element.id+"'><div class='jqx-clear jqx-position-absolute' id='toolbar' style='visibility: hidden;'></div><div class='jqx-clear jqx-position-absolute' id='groupsheader' style='visibility: hidden;'></div><div class='jqx-clear jqx-overflow-hidden jqx-position-absolute jqx-border-reset jqx-background-reset' id='content"+h.element.id+"'></div><div class='jqx-clear jqx-position-absolute' id='verticalScrollBar"+h.element.id+"'></div><div class='jqx-clear jqx-position-absolute' id='horizontalScrollBar"+h.element.id+"'></div><div class='jqx-clear jqx-position-absolute jqx-border-reset' id='bottomRight'></div><div class='jqx-clear jqx-position-absolute' id='addrow'></div><div class='jqx-clear jqx-position-absolute' id='statusbar'></div><div class='jqx-clear jqx-position-absolute' id='pager' style='z-index: 20;'></div></div></div>";h.element.innerHTML="";if(b.jqx.utilities.scrollBarSize!=15){h.scrollbarsize=b.jqx.utilities.scrollBarSize}if(h.source){if(!h.source.dataBind){if(!b.jqx.dataAdapter){throw new Error("jqxGrid: Missing reference to jqxdata.js")}h.source=new b.jqx.dataAdapter(h.source)}var d=h.source._source.datafields;if(d&&d.length>0){h.editmode=h.editmode.toLowerCase();h.selectionmode=h.selectionmode.toLowerCase()}}h.host.attr("role","grid");h.host.attr("align","left");h.element.innerHTML=g;h.host.addClass(h.toTP("jqx-grid"));h.host.addClass(h.toTP("jqx-reset"));h.host.addClass(h.toTP("jqx-rc-all"));h.host.addClass(h.toTP("jqx-widget"));h.host.addClass(h.toTP("jqx-widget-content"));h.wrapper=h.host.find("#wrapper"+h.element.id);h.content=h.host.find("#content"+h.element.id);h.content.addClass(h.toTP("jqx-reset"));var k=h.host.find("#verticalScrollBar"+h.element.id);var o=h.host.find("#horizontalScrollBar"+h.element.id);h.bottomRight=h.host.find("#bottomRight").addClass(h.toTP("jqx-grid-bottomright")).addClass(h.toTP("jqx-scrollbar-state-normal"));if(!k.jqxScrollBar){throw new Error("jqxGrid: Missing reference to jqxscrollbar.js");return}h.editors=new Array();h.vScrollBar=k.jqxScrollBar({vertical:true,rtl:h.rtl,touchMode:h.touchmode,step:h.verticalscrollbarstep,largestep:h.verticalscrollbarlargestep,theme:h.theme,_triggervaluechanged:false});h.hScrollBar=o.jqxScrollBar({vertical:false,rtl:h.rtl,touchMode:h.touchmode,step:h.horizontalscrollbarstep,largestep:h.horizontalscrollbarlargestep,theme:h.theme,_triggervaluechanged:false});h.addnewrow=h.host.find("#addrow");h.addnewrow[0].id="addrow"+h.element.id;h.addnewrow.addClass(h.toTP("jqx-widget-header"));h.pager=h.host.find("#pager");h.pager[0].id="pager"+h.element.id;h.toolbar=h.host.find("#toolbar");h.toolbar[0].id="toolbar"+h.element.id;h.toolbar.addClass(h.toTP("jqx-grid-toolbar"));h.toolbar.addClass(h.toTP("jqx-widget-header"));h.statusbar=h.host.find("#statusbar");h.statusbar[0].id="statusbar"+h.element.id;h.statusbar.addClass(h.toTP("jqx-grid-statusbar"));h.statusbar.addClass(h.toTP("jqx-widget-header"));h.pager.addClass(h.toTP("jqx-grid-pager"));h.pager.addClass(h.toTP("jqx-widget-header"));h.groupsheader=h.host.find("#groupsheader");h.groupsheader.addClass(h.toTP("jqx-grid-groups-header"));h.groupsheader.addClass(h.toTP("jqx-widget-header"));h.groupsheader[0].id="groupsheader"+h.element.id;h.vScrollBar.css("visibility","hidden");h.hScrollBar.css("visibility","hidden");h.vScrollInstance=b.data(h.vScrollBar[0],"jqxScrollBar").instance;h.hScrollInstance=b.data(h.hScrollBar[0],"jqxScrollBar").instance;h.gridtable=null;h.isNestedGrid=h.host.parent()?h.host.parent().css("z-index")==9999:false;h.touchdevice=h.isTouchDevice();if(h.localizestrings){h.localizestrings();if(h.localization!=null){h.localizestrings(h.localization,false)}}if(h.rowdetailstemplate){if(undefined==h.rowdetailstemplate.rowdetails){h.rowdetailstemplate.rowdetails="<div></div>"}if(undefined==h.rowdetailstemplate.rowdetailsheight){h.rowdetailstemplate.rowdetailsheight=200}if(undefined==h.rowdetailstemplate.rowdetailshidden){h.rowdetailstemplate.rowdetailshidden=true}}if(h.showfilterrow&&!h.filterable){throw new Error('jqxGrid: "showfilterrow" requires setting the "filterable" property to true!');h.host.remove();return}if(h.autorowheight&&!h.autoheight&&!h.pageable){throw new Error('jqxGrid: "autorowheight" requires setting the "autoheight" or "pageable" property to true!');h.host.remove();return}if(h.virtualmode&&h.rendergridrows==null){throw new Error('jqxGrid: "virtualmode" requires setting the "rendergridrows"!');h.host.remove();return}if(h.virtualmode&&!h.pageable&&h.groupable){throw new Error('jqxGrid: "grouping" in "virtualmode" without paging is not supported!');h.host.remove();return}if(h._testmodules()){return}h._builddataloadelement();h._cachedcolumns=h.columns;if(h.columns&&h.columns.length>299){h.headerZIndex=h.columns.length+100}if(h.rowsheight!=25){h._measureElement("cell")}if(h.columnsheight!=25||h.columngroups){h._measureElement("column")}if(h.source){var d=h.source.datafields;if(d==null&&h.source._source){d=h.source._source.datafields}if(d){for(var e=0;e<h.columns.length;e++){var f=h.columns[e];if(f&&f.cellsformat&&f.cellsformat.length>2){for(var n=0;n<d.length;n++){if(d[n].name==f.datafield&&!d[n].format){d[n].format=f.cellsformat;break}}}}}}h.databind(h.source);if(h.showtoolbar){h.toolbar.css("visibility","inherit")}if(h.showstatusbar){h.statusbar.css("visibility","inherit")}h._arrange();if(h.pageable&&h._initpager){h._initpager()}h.tableheight=null;var j=h.that;var l=function(){if(j.content){j.content[0].scrollTop=0;j.content[0].scrollLeft=0}if(j.gridcontent){j.gridcontent[0].scrollLeft=0;j.gridcontent[0].scrollTop=0}};h.addHandler(h.content,"mousedown",function(){l()});h.addHandler(h.content,"scroll",function(m){l();return false});if(!h.showfilterrow){if(!h.showstatusbar&&!h.showtoolbar){h.host.addClass("jqx-disableselect")}h.content.addClass("jqx-disableselect")}if(h.enablebrowserselection){h.content.removeClass("jqx-disableselect");h.host.removeClass("jqx-disableselect")}h._resizeWindow();if(h.disabled){h.host.addClass(h.toThemeProperty("jqx-fill-state-disabled"))}h.hasTransform=b.jqx.utilities.hasTransform(h.host);if(h.scrollmode=="logical"){h.vScrollInstance.thumbStep=h.rowsheight;h.vScrollInstance.step=h.rowsheight}if(!b.jqx.isHidden(h.host)){if(h.filterable||h.groupable||h.sortable){h._initmenu()}}},_resizeWindow:function(){var e=this.that;if((this.width!=null&&this.width.toString().indexOf("%")!=-1)||(this.height!=null&&this.height.toString().indexOf("%")!=-1)){this._updatesizeonwindowresize=true;b.jqx.utilities.resize(this.host,function(j){var i=b(window).width();var g=b(window).height();var h=e.host.width();var k=e.host.height();if(e.autoheight){e._lastHostWidth=g}if(e._lastHostWidth!=h||e._lastHostHeight!=k){if(e.touchdevice&&e.editcell&&j!=="orientationchange"){return}e._updatesize(e._lastHostWidth!=h,e._lastHostHeight!=k)}e._lastWidth=i;e._lastHeight=g;e._lastHostWidth=h;e._lastHostHeight=k});var d=e.host.width();var f=e.host.height();e._lastHostWidth=d;e._lastHostHeight=f}},_builddataloadelement:function(){if(this.dataloadelement){this.dataloadelement.remove()}this.dataloadelement=b('<div style="overflow: hidden; position: absolute;"></div>');if(this.showdefaultloadelement){var d=b('<div style="z-index: 99999; margin-left: -66px; left: 50%; top: 50%; margin-top: -24px; position: relative; width: 100px; height: 33px; padding: 5px; font-family: verdana; font-size: 12px; color: #767676; border-color: #898989; border-width: 1px; border-style: solid; background: #f6f6f6; border-collapse: collapse;"><div style="float: left;"><div style="float: left; overflow: hidden; width: 32px; height: 32px;" class="jqx-grid-load"/><span style="margin-top: 10px; float: left; display: block; margin-left: 5px;" >'+this.gridlocalization.loadtext+"</span></div></div>");d.addClass(this.toTP("jqx-rc-all"));this.dataloadelement.addClass(this.toTP("jqx-rc-all"));d.addClass(this.toTP("jqx-fill-state-normal"));this.dataloadelement.append(d)}else{this.dataloadelement.addClass(this.toTP("jqx-grid-load"))}this.dataloadelement.width(this.width);this.dataloadelement.height(this.height);this.host.prepend(this.dataloadelement)},_measureElement:function(e){var d=b("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");d.addClass(this.toTP("jqx-widget"));b(document.body).append(d);if(e=="cell"){this._cellheight=d.height()}else{this._columnheight=d.height()}d.remove()},_measureMenuElement:function(){var e=b("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");e.addClass(this.toTP("jqx-widget"));e.addClass(this.toTP("jqx-menu"));e.addClass(this.toTP("jqx-menu-item-top"));e.addClass(this.toTP("jqx-fill-state-normal"));b(document.body).append(e);var d=e.outerHeight();e.remove();return d},_measureElementWidth:function(f){var e=b("<span style='visibility: hidden; white-space: nowrap;'>"+f+"</span>");e.addClass(this.toTP("jqx-widget"));e.addClass(this.toTP("jqx-grid"));e.addClass(this.toTP("jqx-grid-column-header"));e.addClass(this.toTP("jqx-widget-header"));b(document.body).append(e);var d=e.outerWidth()+20;e.remove();return d},_getBodyOffset:function(){var e=0;var d=0;if(b("body").css("border-top-width")!="0px"){e=parseInt(b("body").css("border-top-width"));if(isNaN(e)){e=0}}if(b("body").css("border-left-width")!="0px"){d=parseInt(b("body").css("border-left-width"));if(isNaN(d)){d=0}}return{left:d,top:e}},_testmodules:function(){var k="";var h=this.that;var d=function(){if(k.length!=""){k+=","}};if(this.columnsmenu&&!this.host.jqxMenu&&(this.sortable||this.groupable||this.filterable)){d();k+=" jqxmenu.js"}if(!this.host.jqxScrollBar){d();k+=" jqxscrollbar.js"}if(!this.host.jqxButton){d();k+=" jqxbuttons.js"}if(!b.jqx.dataAdapter){d();k+=" jqxdata.js"}if(this.pageable&&!this.gotopage){d();k+="jqxgrid.pager.js"}if(this.filterable&&!this.applyfilters){d();k+=" jqxgrid.filter.js"}if(this.groupable&&!this._initgroupsheader){d();k+=" jqxgrid.grouping.js"}if(this.columnsresize&&!this.autoresizecolumns){d();k+=" jqxgrid.columnsresize.js"}if(this.columnsreorder&&!this.setcolumnindex){d();k+=" jqxgrid.columnsreorder.js"}if(this.sortable&&!this.sortby){d();k+=" jqxgrid.sort.js"}if(this.editable&&!this.begincelledit){d();k+=" jqxgrid.edit.js"}if(this.showaggregates&&!this.getcolumnaggregateddata){d();k+=" jqxgrid.aggregates.js"}if(this.keyboardnavigation&&!this.selectrow){d();k+=" jqxgrid.selection.js"}if(k!=""||this.editable||this.filterable||this.pageable){var f=[];var j=function(i){switch(i){case"checkbox":if(!h.host.jqxCheckBox&&!f.checkbox){f.checkbox=true;d();k+=" jqxcheckbox.js"}break;case"numberinput":if(!h.host.jqxNumberInput&&!f.numberinput){f.numberinput=true;d();k+=" jqxnumberinput.js"}break;case"datetimeinput":if(!h.host.jqxDateTimeInput&&!f.datetimeinput){d();f.datetimeinput=true;k+=" jqxdatetimeinput.js(requires: jqxcalendar.js)"}else{if(!h.host.jqxCalendar&&!f.calendar){d();k+=" jqxcalendar.js"}}break;case"combobox":if(!h.host.jqxComboBox&&!f.combobox){d();f.combobox=true;k+=" jqxcombobox.js(requires: jqxlistbox.js)"}else{if(!h.host.jqxListBox&&!f.listbox){d();f.listbox=true;k+=" jqxlistbox.js"}}break;case"dropdownlist":if(!h.host.jqxDropDownList&&!f.dropdownlist){d();f.dropdownlist=true;k+=" jqxdropdownlist.js(requires: jqxlistbox.js)"}else{if(!h.host.jqxListBox&&!f.listbox){d();f.listbox=true;k+=" jqxlistbox.js"}}break}};if(this.filterable||this.pageable){j("dropdownlist")}for(var e=0;e<this.columns.length;e++){if(this.columns[e]==undefined){continue}var g=this.columns[e].columntype;j(g);if(this.filterable&&this.showfilterrow){var g=this.columns[e].filtertype;if(g=="checkedlist"||g=="bool"){j("checkbox")}if(g=="date"){j("datetimeinput")}}}if(k!=""){throw new Error("jqxGrid: Missing references to the following module(s): "+k);this.host.remove();return true}}return false},focus:function(){try{this.wrapper.focus();var e=this.that;setTimeout(function(){e.wrapper.focus()},25);this.focused=true}catch(d){}},hiddenParent:function(){return b.jqx.isHidden(this.host)},resize:function(e,d){this.width=e;this.height=d;this._updatesize(true,true)},_updatesize:function(i,h){if(this._loading){return}var f=this.that;f._newmax=null;var g=f.host.width();var e=f.host.height();if(!f._oldWidth){f._oldWidth=g}if(!f._oldHeight){f._oldHeight=e}if(f._resizeTimer){clearTimeout(f._resizeTimer)}var d=5;f._resizeTimer=setTimeout(function(){f.resizingGrid=true;if(b.jqx.isHidden(f.host)){return}if(f.editcell){f.endcelledit(f.editcell.row,f.editcell.column,true,true);f._oldselectedcell=null}if(j!=f._oldHeight||h==true){var k=f.groupable&&f.groups.length>0;var p=f.vScrollBar.css("visibility");if(!f.autoheight){if(f.virtualmode){f._pageviews=new Array()}if(!k&&!f.rowdetails&&!f.pageable){f._arrange();f.virtualsizeinfo=f._calculatevirtualheight();var j=Math.round(f.host.height())+2*f.rowsheight;if(parseInt(j)>=parseInt(f._oldHeight)){f.prerenderrequired=true}f._renderrows(f.virtualsizeinfo);if(f.rtl){f._updatecolumnwidths();if(f.table){f.table.width(f.columnsheader.width())}f._updatecellwidths()}}else{f._arrange();f.prerenderrequired=true;var j=Math.round(f.host.height())+2*f.rowsheight;realheight=f._gettableheight();var r=Math.round(j/f.rowsheight);var m=Math.max(f.dataview.totalrows,f.dataview.totalrecords);if(f.pageable){m=f.pagesize;if(f.pagesize>Math.max(f.dataview.totalrows,f.dataview.totalrecords)&&f.autoheight){m=Math.max(f.dataview.totalrows,f.dataview.totalrecords)}else{if(!f.autoheight){if(f.dataview.totalrows<f.pagesize){m=Math.max(f.dataview.totalrows,f.dataview.totalrecords)}}}}var o=m*f.rowsheight;var l=f._getpagesize();if(!f.pageable&&f.autoheight){r=m}if(f.virtualsizeinfo){f.virtualsizeinfo.visiblerecords=r}f.rendergridcontent(true,false);f._renderrows(f.virtualsizeinfo)}if(p!=f.vScrollBar.css("visibility")){f.vScrollInstance.setPosition(0);f._arrange();f._updatecolumnwidths();if(f.table){f.table.width(f.columnsheader.width())}f._updatecellwidths()}}}if(g!=f._oldWidth||i==true){var q=false;if(f.editcell&&f.editcell.editor){switch(f.editcell.columntype){case"dropdownlist":q=f.editcell.editor.jqxDropDownList("isOpened")||(f.editcell.editor.jqxDropDownList("isanimating")&&!f.editcell.editor.jqxDropDownList("ishiding"));if(q){f.editcell.editor.jqxDropDownList({openDelay:0});f.editcell.editor.jqxDropDownList("open");f.editcell.editor.jqxDropDownList({openDelay:250});return}break;case"combobox":q=f.editcell.editor.jqxComboBox("isOpened")||(f.editcell.editor.jqxComboBox("isanimating")&&!f.editcell.editor.jqxComboBox("ishiding"));if(q){f.editcell.editor.jqxComboBox({openDelay:0});f.editcell.editor.jqxComboBox("open");f.editcell.editor.jqxComboBox({openDelay:250});return}break;case"datetimeinput":if(q){q=f.editcell.editor.jqxDateTimeInput("isOpened")||(f.editcell.editor.jqxDateTimeInput("isanimating")&&!f.editcell.editor.jqxDateTimeInput("ishiding"));f.editcell.editor.jqxDateTimeInput({openDelay:0});f.editcell.editor.jqxDateTimeInput("open");f.editcell.editor.jqxDateTimeInput({openDelay:250});return}break}}var n=f.hScrollBar.css("visibility");f._arrange();f._updatecolumnwidths();if(f.table){f.table.width(f.columnsheader.width())}f._updatecellwidths();if(!(i==false&&f._oldWidth>g)){if(!h||f.dataview.rows.length==0){f._renderrows(f.virtualsizeinfo)}}if(n!=f.hScrollBar.css("visibility")){f.hScrollInstance.setPosition(0)}}f._oldWidth=g;f._oldHeight=j;f.resizingGrid=false},d)},getTouches:function(d){return b.jqx.mobile.getTouches(d)},_updateTouchScrolling:function(){var e=this.that;if(e.isTouchDevice()){e.scrollmode="logical";e.vScrollInstance.thumbStep=e.rowsheight;var g=b.jqx.mobile.getTouchEventName("touchstart");var f=b.jqx.mobile.getTouchEventName("touchend");var d=b.jqx.mobile.getTouchEventName("touchmove");e.enablehover=false;if(e.gridcontent){e.removeHandler(e.gridcontent,g+".touchScroll");e.removeHandler(e.gridcontent,d+".touchScroll");e.removeHandler(e.gridcontent,f+".touchScroll");e.removeHandler(e.gridcontent,"touchcancel.touchScroll");b.jqx.mobile.touchScroll(e.gridcontent[0],e.vScrollInstance.max,function(j,i){if(e.vScrollBar.css("visibility")=="visible"){var h=e.vScrollInstance.value;e.vScrollInstance.setPosition(h+i)}if(e.hScrollBar.css("visibility")=="visible"){var h=e.hScrollInstance.value;e.hScrollInstance.setPosition(h+j)}e.vScrollInstance.thumbCapture=true;e._lastScroll=new Date()},this.element.id,this.hScrollBar,this.vScrollBar);if(e._overlayElement){e.removeHandler(e._overlayElement,g+".touchScroll");e.removeHandler(e._overlayElement,d+".touchScroll");e.removeHandler(e._overlayElement,f+".touchScroll");e.removeHandler(e._overlayElement,"touchcancel.touchScroll");b.jqx.mobile.touchScroll(e._overlayElement[0],e.vScrollInstance.max,function(j,i){if(e.vScrollBar.css("visibility")=="visible"){var h=e.vScrollInstance.value;e.vScrollInstance.setPosition(h+i)}if(e.hScrollBar.css("visibility")=="visible"){var h=e.hScrollInstance.value;e.hScrollInstance.setPosition(h+j)}e.vScrollInstance.thumbCapture=true;e._lastScroll=new Date()},this.element.id,this.hScrollBar,this.vScrollBar);this.addHandler(this.host,g,function(){if(!e.editcell){e._overlayElement.css("visibility","visible")}else{e._overlayElement.css("visibility","hidden")}});this.addHandler(this.host,f,function(){if(!e.editcell){e._overlayElement.css("visibility","visible")}else{e._overlayElement.css("visibility","hidden")}})}}}},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var d=b.jqx.mobile.isTouchDevice();this.touchDevice=d;if(this.touchmode==true){if(b.jqx.browser.msie&&b.jqx.browser.version<9){this.enablehover=false;return false}d=true;b.jqx.mobile.setMobileSimulator(this.element);this.touchDevice=d}else{if(this.touchmode==false){d=false}}if(d&&this.touchModeStyle!=false){this.touchDevice=true;this.host.addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-content").addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-header").addClass(this.toThemeProperty("jqx-touch"));this.scrollbarsize=this.touchscrollbarsize}return d},toTP:function(d){return this.toThemeProperty(d)},localizestrings:function(d,e){this._cellscache=new Array();if(b.jqx.dataFormat){b.jqx.dataFormat.cleardatescache()}if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d!=null){for(var f in d){if(f.toLowerCase()!==f){d[f.toLowerCase()]=d[f]}}if(d.pagergotopagestring){this.gridlocalization.pagergotopagestring=d.pagergotopagestring}if(d.pagershowrowsstring){this.gridlocalization.pagershowrowsstring=d.pagershowrowsstring}if(d.pagerrangestring){this.gridlocalization.pagerrangestring=d.pagerrangestring}if(d.pagernextbuttonstring){this.gridlocalization.pagernextbuttonstring=d.pagernextbuttonstring}if(d.pagerpreviousbuttonstring){this.gridlocalization.pagerpreviousbuttonstring=d.pagerpreviousbuttonstring}if(d.pagerfirstbuttonstring){this.gridlocalization.pagerfirstbuttonstring=d.pagerfirstbuttonstring}if(d.pagerlastbuttonstring){this.gridlocalization.pagerlastbuttonstring=d.pagerlastbuttonstring}if(d.groupsheaderstring){this.gridlocalization.groupsheaderstring=d.groupsheaderstring}if(d.sortascendingstring){this.gridlocalization.sortascendingstring=d.sortascendingstring}if(d.sortdescendingstring){this.gridlocalization.sortdescendingstring=d.sortdescendingstring}if(d.sortremovestring){this.gridlocalization.sortremovestring=d.sortremovestring}if(d.groupbystring){this.gridlocalization.groupbystring=d.groupbystring}if(d.groupremovestring){this.gridlocalization.groupremovestring=d.groupremovestring}if(d.firstDay){this.gridlocalization.firstDay=d.firstDay}if(d.days){this.gridlocalization.days=d.days}if(d.months){this.gridlocalization.months=d.months}if(d.AM){this.gridlocalization.AM=d.AM}if(d.PM){this.gridlocalization.PM=d.PM}if(d.patterns){this.gridlocalization.patterns=d.patterns}if(d.percentsymbol){this.gridlocalization.percentsymbol=d.percentsymbol}if(d.currencysymbol){this.gridlocalization.currencysymbol=d.currencysymbol}if(d.currencysymbolposition){this.gridlocalization.currencysymbolposition=d.currencysymbolposition}if(d.decimalseparator!=undefined){this.gridlocalization.decimalseparator=d.decimalseparator}if(d.thousandsseparator!=undefined){this.gridlocalization.thousandsseparator=d.thousandsseparator}if(d.filterclearstring){this.gridlocalization.filterclearstring=d.filterclearstring}if(d.filterstring){this.gridlocalization.filterstring=d.filterstring}if(d.filtershowrowstring){this.gridlocalization.filtershowrowstring=d.filtershowrowstring}if(d.filtershowrowdatestring){this.gridlocalization.filtershowrowdatestring=d.filtershowrowdatestring}if(d.filterselectallstring){this.gridlocalization.filterselectallstring=d.filterselectallstring}if(d.filterchoosestring){this.gridlocalization.filterchoosestring=d.filterchoosestring}if(d.filterorconditionstring){this.gridlocalization.filterorconditionstring=d.filterorconditionstring}if(d.filterandconditionstring){this.gridlocalization.filterandconditionstring=d.filterandconditionstring}if(d.filterstringcomparisonoperators){this.gridlocalization.filterstringcomparisonoperators=d.filterstringcomparisonoperators}if(d.filternumericcomparisonoperators){this.gridlocalization.filternumericcomparisonoperators=d.filternumericcomparisonoperators}if(d.filterdatecomparisonoperators){this.gridlocalization.filterdatecomparisonoperators=d.filterdatecomparisonoperators}if(d.filterbooleancomparisonoperators){this.gridlocalization.filterbooleancomparisonoperators=d.filterbooleancomparisonoperators}if(d.emptydatastring){this.gridlocalization.emptydatastring=d.emptydatastring}if(d.filterselectstring){this.gridlocalization.filterselectstring=d.filterselectstring}if(d.todaystring){this.gridlocalization.todaystring=d.todaystring}if(d.clearstring){this.gridlocalization.clearstring=d.clearstring}if(d.validationstring){this.gridlocalization.validationstring=d.validationstring}if(d.loadtext){this.gridlocalization.loadtext=d.loadtext}if(d.addrowstring){this.gridlocalization.addrowstring=d.addrowstring}if(d.udpaterowstring){this.gridlocalization.udpaterowstring=d.udpaterowstring}if(d.deleterowstring){this.gridlocalization.deleterowstring=d.deleterowstring}if(d.resetrowstring){this.gridlocalization.resetrowstring=d.resetrowstring}if(d.everpresentrowplaceholder){this.gridlocalization.everpresentrowplaceholder=d.everpresentrowplaceholder}if(e!==false){if(this._initpager){this._initpager()}if(this._initgroupsheader){this._initgroupsheader()}if(this._initmenu){this._initmenu()}this._builddataloadelement();b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none");if(this.filterable&&this.showfilterrow){if(this._updatefilterrow){for(var f in this._filterrowcache){b(this._filterrowcache[f]).remove()}this._filterrowcache=[];this._updatefilterrow()}}if(this.showaggregates&&this.refresheaggregates){this.refresheaggregates()}this._renderrows(this.virtualsizeinfo)}}else{this.gridlocalization={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"dd-MMMM-yyyy",d4:"dd-MM-yy",d5:"H:mm",d6:"HH:mm",d7:"HH:mm tt",d8:"dd/MMMM/yyyy",d9:"MMMM-dd",d10:"MM-dd",d11:"MM-dd-yyyy"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:",",pagergotopagestring:"Go to page:",pagershowrowsstring:"Show rows:",pagerrangestring:" of ",pagerpreviousbuttonstring:"previous",pagernextbuttonstring:"next",pagerfirstbuttonstring:"first",pagerlastbuttonstring:"last",groupsheaderstring:"Drag a column and drop it here to group by that column",sortascendingstring:"Sort Ascending",sortdescendingstring:"Sort Descending",sortremovestring:"Remove Sort",groupbystring:"Group By this column",groupremovestring:"Remove from groups",filterclearstring:"Clear",filterstring:"Filter",filtershowrowstring:"Show rows where:",filtershowrowdatestring:"Show rows where date:",filterorconditionstring:"Or",filterandconditionstring:"And",filterselectallstring:"(Select All)",filterchoosestring:"Please Choose:",filterstringcomparisonoperators:["empty","not empty","contains","contains(match case)","does not contain","does not contain(match case)","starts with","starts with(match case)","ends with","ends with(match case)","equal","equal(match case)","null","not null"],filternumericcomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterdatecomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterbooleancomparisonoperators:["equal","not equal"],validationstring:"Entered value is not valid",emptydatastring:"No data to display",filterselectstring:"Select Filter",loadtext:"Loading...",clearstring:"Clear",todaystring:"Today",addrowstring:"Add",udpaterowstring:"Update",deleterowstring:"Delete",resetrowstring:"Reset",everpresentrowplaceholder:"Enter "}}},_getmenudefaultheight:function(){var f=this;var e=0;if(this.sortable&&this._togglesort&&this.showsortmenuitems){e=3}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){e+=2}var d=f._measureMenuElement();var g=e*d+9;if(f.filterable&&!f.showfilterrow&&f.showfiltermenuitems){g+=180;if(b.jqx.browser.msie&&b.jqx.browser.version<8){g+=20}}return g},_initmenu:function(){var r=this.that;if(this.host.jqxMenu){if(this.gridmenu){if(this._hasOpenedMenu){return}if(this.filterable){if(this._destroyfilterpanel){this._destroyfilterpanel()}}this.removeHandler(this.gridmenu,"keydown");this.removeHandler(this.gridmenu,"closed");this.removeHandler(this.gridmenu,"itemclick");this.gridmenu.jqxMenu("destroy");this.gridmenu.removeData();this.gridmenu.remove()}this.menuitemsarray=new Array();this.gridmenu=b('<div id="gridmenu'+this.element.id+'" style="z-index: 9999999999999;"></div>');this.host.append(this.gridmenu);var w=b("<ul></ul>");var i='<div class="jqx-grid-sortasc-icon"></div>';var t=b("<li>"+i+this.gridlocalization.sortascendingstring+"</li>");var A='<div class="jqx-grid-sortdesc-icon"></div>';var x=b("<li>"+A+this.gridlocalization.sortdescendingstring+"</li>");var n='<div class="jqx-grid-sortremove-icon"></div>';var k=b("<li>"+n+this.gridlocalization.sortremovestring+"</li>");var j='<div class="jqx-grid-groupby-icon"></div>';var q=b("<li>"+j+this.gridlocalization.groupbystring+"</li>");var f=b("<li>"+j+this.gridlocalization.groupremovestring+"</li>");var d=b('<li type="separator"></li>');var v=b('<li class="filter" style="height: 175px;" ignoretheme="true"><div class="filter"></div></li>');var m=this.gridlocalization.sortascendingstring.length;var s=this.gridlocalization.sortascendingstring;if(this.gridlocalization.sortdescendingstring.length>m){m=this.gridlocalization.sortdescendingstring.length;s=this.gridlocalization.sortdescendingstring}if(this.gridlocalization.sortremovestring.length>m){m=this.gridlocalization.sortremovestring.length;s=this.gridlocalization.sortremovestring}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){if(this.gridlocalization.groupbystring.length>m){m=this.gridlocalization.groupbystring.length;s=this.gridlocalization.groupbystring}if(this.gridlocalization.groupremovestring.length>m){m=this.gridlocalization.groupremovestring.length;s=this.gridlocalization.groupremovestring}}var y=200;s=b.trim(s).replace(/\&nbsp\;/ig,"").replace(/\&#160\;/ig,"");var g=b("<span>"+s+"</span>");g.addClass(this.toThemeProperty("jqx-menu-item"));this.host.append(g);y=g.outerWidth()+60;g.remove();var e=0;if(this.sortable&&this._togglesort&&this.showsortmenuitems){w.append(t);this.menuitemsarray[0]=t[0];w.append(x);this.menuitemsarray[1]=x[0];w.append(k);this.menuitemsarray[2]=k[0];e=3}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){w.append(q);this.menuitemsarray[3]=q[0];w.append(f);this.menuitemsarray[4]=f[0];e+=2}var u=this._measureMenuElement();var l=e*u+9;var p=true;if(this.filterable&&!this.showfilterrow&&this.showfiltermenuitems){if(this._initfilterpanel){this.menuitemsarray[5]=v[0];this.menuitemsarray[6]=v[0];w.append(d);w.append(v);l+=180;if(b.jqx.browser.msie&&b.jqx.browser.version<8){l+=20}var o=b(v).find("div:first");this.excelfilterpanel=b("<div></div>");this.filterpanel=o;this.filtermenu=b(v);y+=20;this._initfilterpanel(this,o,"",y);this._initfilterpanel(this,this.excelfilterpanel,"",y,true);p=false;this.removeHandler(b(document),"click.menu"+r.element.id,r._closemenuafterclick,r);this.addHandler(b(document),"click.menu"+r.element.id,r._closemenuafterclick,r)}else{throw new Error("jqxGrid: Missing reference to jqxgrid.filter.js.")}}this.gridmenu.append(w);if(b.jqx.browser.msie&&b.jqx.browser.version<8&&this.filterable){b("#listBoxfilter1"+this.element.id).css("z-index",4990);b("#listBoxfilter2"+this.element.id).css("z-index",4990);b("#listBoxfilter3"+this.element.id).css("z-index",4990);b("#gridmenu"+this.element.id).css("z-index",5000);this.addHandler(b("#gridmenu"+this.element.id),"initialized",function(){b("#menuWrappergridmenu"+r.element.id).css("z-index",4980)})}if(this.menuitemsarray[0]==undefined){l=65}this.removeHandler(b(window),"orientationchange.jqxgrid"+this.element.id);this.removeHandler(b(window),"orientationchanged.jqxgrid"+this.element.id);this.addHandler(b(window),"orientationchange.jqxgrid"+this.element.id,function(){r.gridmenu.jqxMenu("close")});this.addHandler(b(window),"orientationchanged.jqxgrid"+this.element.id,function(){r.gridmenu.jqxMenu("close")});this.removeHandler(this.gridmenu,"keydown");this.addHandler(this.gridmenu,"keydown",function(F){if(F.keyCode==27){r.gridmenu.jqxMenu("close")}else{if(F.keyCode==13&&r.filterable){if(r._buildfilter){var E=b(b.find("#filter1"+r.element.id)).jqxDropDownList("container").css("display")=="block";var D=b(b.find("#filter2"+r.element.id)).jqxDropDownList("container").css("display")=="block";var B=b(b.find("#filter3"+r.element.id)).jqxDropDownList("container").css("display")=="block";var G=b(b.find("#filterclearbutton"+r.element.id)).hasClass("jqx-fill-state-focus");if(G){var C=b.data(document.body,"contextmenu"+r.element.id).column;r._clearfilter(r,r.element,C);r.gridmenu.jqxMenu("close")}else{if(!E&&!D&&!B){var C=b.data(document.body,"contextmenu"+r.element.id).column;r.gridmenu.jqxMenu("close");r._buildfilter(r,v,C)}}}}}});if(this.popupwidth!="auto"){y=this.popupwidth}this.gridmenu.jqxMenu({popupZIndex:999999,width:y,height:l,autoCloseOnClick:p,autoOpenPopup:false,mode:"popup",theme:this.theme,animationShowDuration:0,animationHideDuration:0,animationShowDelay:0});if(this.filterable){this.gridmenu.jqxMenu("_setItemProperty",v[0].id,"closeOnClick",false)}if(this.rtl){var z=this.that;b.each(w.find("li"),function(){b(this).addClass(z.toTP("jqx-rtl"))});var h=function(B){var C=B.find("div");C.css("float","right");C.css("margin-left","4px");C.css("margin-right","-4px")};h(k);h(x);h(t);h(q);h(f)}this._handlemenueevents()}else{this.columnsmenu=false}},_arrangemenu:function(){if(!this.gridmenu){this._initmenu()}var i=this.gridlocalization.sortascendingstring.length;var d=this.gridlocalization.sortascendingstring;if(this.gridlocalization.sortdescendingstring.length>i){i=this.gridlocalization.sortdescendingstring.length;d=this.gridlocalization.sortdescendingstring}if(this.gridlocalization.sortremovestring.length>i){i=this.gridlocalization.sortremovestring.length;d=this.gridlocalization.sortremovestring}if(this.groupable&&this._initgroupsheader){if(this.gridlocalization.groupbystring.length>i){i=this.gridlocalization.groupbystring.length;d=this.gridlocalization.groupbystring}if(this.gridlocalization.groupremovestring.length>i){i=this.gridlocalization.groupremovestring.length;d=this.gridlocalization.groupremovestring}}var e=200;d=b.trim(d).replace(/\&nbsp\;/ig,"").replace(/\&#160\;/ig,"");var f=b("<span>"+d+"</span>");f.addClass(this.toThemeProperty("jqx-menu-item"));this.host.append(f);e=f.outerWidth()+60;f.remove();var g=0;if(this.sortable&&this._togglesort&&this.showsortmenuitems){g=3}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){g+=2}var h=g*27+3;if(this.filterable&&this.showfiltermenuitems){if(this._initfilterpanel){h+=180;e+=20;if(b.jqx.browser.msie&&b.jqx.browser.version<8){h+=20}}}if(this.menuitemsarray[0]==undefined){h=65}if(this.popupwidth!="auto"){e=this.popupwidth}if(this.popupheight!="auto"){h=this.popupheight}this.gridmenu.jqxMenu({width:e,height:h})},_closemenuafterclick:function(e){var i=e!=null?e.data:this;var g=false;if(e.target==undefined||(e.target!=undefined&&e.target.className.indexOf==undefined)){i.gridmenu.jqxMenu("close");return}if(e.target.className.indexOf("filter")!=-1&&e.target.className.indexOf("jqx-grid-cell-filter")==-1){return}if(e.target.className.indexOf("jqx-grid-cell")!=-1){i.gridmenu.jqxMenu("close");return}if(i._hasOpenedMenu){if(b(e.target).ischildof(i.gridmenu)){return}}var d=i.host.coord();var f=i.gridmenu.coord();var k=e.pageX;var j=e.pageY;b.each(b(e.target).parents(),function(){if(this.id!=null&&this.id.indexOf&&this.id.indexOf("filter")!=-1){g=true;return false}if(this.className.indexOf&&this.className.indexOf("filter")!=-1&&this.className.indexOf("jqx-grid-cell-filter")==-1){g=true;return false}if(this.className.indexOf&&this.className.indexOf("jqx-grid-cell")!=-1){i.gridmenu.jqxMenu("close");return false}if(this.className.indexOf&&this.className.indexOf("jqx-grid-column")!=-1){i.gridmenu.jqxMenu("close");return false}});if(g){return}try{if(i.filtermode==="default"){var n=b(b.find("#filter1"+i.element.id)).jqxDropDownList("listBox").vScrollInstance._mouseup;var l=new Date();if(l-n<100){return}var m=b(b.find("#filter3"+i.element.id)).jqxDropDownList("listBox").vScrollInstance._mouseup;if(l-m<100){return}if((b(b.find("#filter3"+i.element.id)).jqxDropDownList("container")).css("display")=="block"){return}if((b(b.find("#filter1"+i.element.id)).jqxDropDownList("container")).css("display")=="block"){return}if((b(b.find("#filter2"+i.element.id)).jqxDropDownList("container")).css("display")=="block"){return}if(i._hasdatefilter){if(b(".filtertext1"+i.element.id)[0].nodeName.toLowerCase()=="div"){if(b(".filtertext1"+i.element.id).jqxDateTimeInput("container").css("display")=="block"){return}if(b(".filtertext2"+i.element.id).jqxDateTimeInput("container").css("display")=="block"){return}}}}else{var n=b(b.find("#filter1"+i.element.id)).data().jqxListBox.instance.vScrollInstance._mouseup;var l=new Date();if(l-n<100){return}var m=b(b.find("#filter1"+i.element.id)).data().jqxListBox.instance.hScrollInstance._mouseup;if(l-m<100){return}}}catch(h){}if(k>=f.left&&k<=f.left+i.gridmenu.width()){if(j>=f.top&&j<=f.top+i.gridmenu.height()){return}}i.gridmenu.jqxMenu("close")},_handlemenueevents:function(){var d=this.that;this.removeHandler(this.gridmenu,"closed");this.addHandler(this.gridmenu,"closed",function(e){d._closemenu()});this.removeHandler(this.gridmenu,"itemclick");this.addHandler(this.gridmenu,"itemclick",function(h){var g=h.args;for(var e=0;e<d.menuitemsarray.length;e++){var j=d.menuitemsarray[e];if(g==j){if(b(g).attr("ignoretheme")!=undefined){return}var k=b.data(document.body,"contextmenu"+d.element.id);var f=k.column;if(d.filterable){d.gridmenu.jqxMenu("close")}var m=f.displayfield;if(m==null){m=f.datafield}if(k!=null){switch(e){case 0:d.sortby(m,"ascending",null);break;case 1:d.sortby(m,"descending",null);break;case 2:d.sortby(m,null,null);break;case 3:d.addgroup(m);break;case 4:d.removegroup(m);break;case 5:var l=b(d.menuitemsarray[6]);b(l).css("display","block");break;case 7:break}}break}}})},getdatainformation:function(){var d=this.dataview.totalrecords;if(this.summaryrows){d+=this.summaryrows.length}return{rowscount:d,sortinformation:this.getsortinformation(),paginginformation:this.getpaginginformation()}},getsortinformation:function(){return{sortcolumn:this.sortcolumn,sortdirection:this.sortdirection}},getpaginginformation:function(){return{pagenum:this.dataview.pagenum,pagesize:this.pagesize,pagescount:Math.ceil(this.dataview.totalrecords/this.pagesize)}},_updaterowsproperties:function(){this._updatehiddenrows();this._updaterowheights();this._updaterowdetails()},_updatehiddenrows:function(){var e=this.that;this.hiddens=new Array();var d=this.hiddenboundrows;b.each(d,function(g){if(this.index!=undefined){var f=this.index;var h=e.getrowvisibleindex(g);e.hiddens[h]=this.hidden}})},_updaterowheights:function(){var e=this.that;this.heights=new Array();var d=this.heightboundrows;b.each(d,function(g){if(this.index!=undefined){var f=this.index;var h=e.getrowvisibleindex(g);e.heights[h]=this.height}})},_updaterowdetails:function(){var d=this.that;this.details=new Array();var e=this.detailboundrows;b.each(e,function(g){if(this.index!=undefined){var f=this.index;var h=d.getrowvisibleindex(g);d.details[h]=this.details}})},_getmenuitembyindex:function(d){if(d==undefined){return null}return this.menuitemsarray[d]},openmenu:function(e){if(this._openingmenu){return}this._openingmenu=true;this.closemenu();var h=this.getcolumn(e);if(!h.menu){return false}if(!this.gridmenu){this._initmenu()}var d=h.columnsmenu;b(h.element).trigger("mouseenter");this.menuOwner=h;var g=this;for(var f=0;f<g.columns.records.length;f++){if(g.columns.records[f].datafield!=e){b(g.columns.records[f].element).trigger("mouseleave")}}setTimeout(function(){if(b(d)[0].style.display=="block"){b(d).trigger("click")}g._openingmenu=false},200)},closemenu:function(){this._closemenu()},_closemenu:function(){if(this._hasOpenedMenu){var f=false;if(this.columnmenuclosing){var i=b.data(document.body,"contextmenu"+this.element.id);if(!i){i={column:{displayfield:null}}}f=this.columnmenuclosing(this.gridmenu,i.column.displayfield,b(this.gridmenu).height());if(f===false){return}}if(this.gridmenu!=null){this.gridmenu.jqxMenu("close")}var i=b.data(document.body,"contextmenu"+this.element.id);var e=16;if(i!=null&&this.autoshowcolumnsmenubutton){if(this.enableanimations){b(i.columnsmenu).animate({"margin-left":0},"fast",function(){b(i.columnsmenu).css("display","none")});var h=!this.rtl?-32:0;i.column.iconscontainer.animate({"margin-left":h},"fast")}else{b(i.columnsmenu).css("display","none");var h=!this.rtl?-32:0;i.column.iconscontainer.css("margin-left",h)}b.data(document.body,"contextmenu"+this.element.id,null)}this._hasOpenedMenu=false;this.menuOwner=null;var k=this._getmenuitembyindex(5);if(k){var j=b(k).find("#filter1"+this.element.id);var d=b(k).find("#filter2"+this.element.id);var g=b(k).find("#filter3"+this.element.id);if(j.length>0&&this.filtermode==="default"){j.jqxDropDownList("hideListBox");if(d.length>0){d.jqxDropDownList("hideListBox")}if(g.length>0){g.jqxDropDownList("hideListBox")}}}}},scrolloffset:function(e,d){if(e==null||d==null||e==undefined||d==undefined){return}this.vScrollBar.jqxScrollBar("setPosition",e);this.hScrollBar.jqxScrollBar("setPosition",d)},scrollleft:function(d){if(d==null||d==undefined){return}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.jqxScrollBar("setPosition",d)}},scrolltop:function(d){if(d==null||d==undefined){return}if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar("setPosition",d)}},beginupdate:function(e,d){this._updating=true;this._datachanged=false;if(e===true){this._batchupdate=true}if(d===true){this._stopbindings=true}},endupdate:function(){this.resumeupdate()},resumeupdate:function(){this._updating=false;if(this._batchupdate){this._batchupdate=false;this._datachanged=false;if(!this._stopbindings){this.render()}else{this.updatebounddata()}return}if(this._stopbindings){this.updatebounddata("data");return}if(this._datachanged==true){var d=this.vScrollInstance.value;this.render(true,true,false);this._datachanged=false;if(d!=0&&d<this.vScrollInstance.max){this.scrolltop(d)}}else{this.rendergridcontent(true);this._renderrows(this.virtualsizeinfo)}if(this.showaggregates&&this.renderaggregates){this.renderaggregates()}this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)},updating:function(){return this._updating},showloadelement:function(){if(this.renderloadelement){this.dataloadelement.html(this.renderloadelement())}this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height());b(this.dataloadelement).css("visibility","visible");b(this.dataloadelement).css("display","block")},hideloadelement:function(){b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")},_updatefocusedfilter:function(){var d=this.that;if(d.focusedfilter){d.focusedfilter.focus();setTimeout(function(){d.focusedfilter.focus();if(d.focusedfilter[0].nodeName.toLowerCase()=="input"){var g=d.focusedfilter.val().length;try{if("selectionStart" in d.focusedfilter[0]){d.focusedfilter[0].setSelectionRange(g,g)}else{var e=d.focusedfilter[0].createTextRange();e.collapse(true);e.moveEnd("character",g);e.moveStart("character",g);e.select()}}catch(f){}}},50)}},databind:function(g,i){if(this.loadingstate===true){return}if(this._stopbindings===true){return}if(this.host.css("display")=="block"){if(this.autoshowloadelement){b(this.dataloadelement).css("visibility","visible");b(this.dataloadelement).css("display","block");this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height());this._hideemptyrow()}else{b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")}}if(!this._initgroupsheader&&this.groups.length>0){this.groups=new Array()}var f=this.that;if(g==null){g={}}if(!g.recordstartindex){g.recordstartindex=0}if(!g.recordendindex){g.recordendindex=0}if(g.loadallrecords==undefined||g.loadallrecords==null){g.loadallrecords=true}if(g.sortcomparer==undefined||g.sortcomparer==null){g.sortcomparer=null}if(g.filter==undefined||g.filter==null){g.filter=null}if(g.sort==undefined||g.sort==null){g.sort=null}if(g.data==undefined||g.data==null){g.data=null}var d=null;if(g!=null){d=g._source!=undefined?g._source.url:g.url}this.dataview=this.dataview||new b.jqx.dataview();if(b.jqx.dataview.sort){b.extend(this.dataview,new b.jqx.dataview.sort())}if(b.jqx.dataview.grouping){b.extend(this.dataview,new b.jqx.dataview.grouping())}this.dataview.suspendupdate();this.dataview.pageable=this.pageable;this.dataview.groupable=this.groupable;this.dataview.groups=this.groups;this.dataview.virtualmode=this.virtualmode;this.dataview.grid=this;this.dataview._clearcaches();if(!this.pageable&&this.virtualmode){this.loadondemand=true}if(!f.initializedcall){if(g._source){if(this.sortable){if(g._source.sortcolumn!=undefined){this.sortcolumn=g._source.sortcolumn;this.source.sortcolumn=this.sortcolumn;this.dataview.sortfield=g._source.sortcolumn;g._source.sortcolumn=null}if(g._source.sortdirection!=undefined){this.dataview.sortfielddirection=g._source.sortdirection;var h=g._source.sortdirection;if(h=="a"||h=="asc"||h=="ascending"||h==true){var e=true}else{var e=false}if(h!=null){this.sortdirection={ascending:e,descending:!e}}else{this.sortdirection={ascending:false,descending:false}}}}}if(this.pageable){if(g._source){if(g._source.pagenum!=undefined){this.dataview.pagenum=g._source.pagenum}if(g._source.pagesize!=undefined){this.pagesize=g._source.pagesize;this.dataview.pagesize=g._source.pagesize}else{this.dataview.pagesize=g._source.pagesize;if(this.dataview.pagesize==undefined){this.dataview.pagesize=this.pagesize}}}}if(this.sortable){if(g.sortcolumn){this.dataview.sortfield=g.sortcolumn}if(g.sortdirection){this.dataview.sortfielddirection=g.sortdirection}}if(this.filterable){if(this.columns){b.each(this.columns,function(){if(this.filter){f.dataview.addfilter(this.datafield,this.filter)}})}}}this._loading=true;this.dataview.update=function(l){if(!f.pageable&&f.virtualmode){f.loadondemand=true}f._loading=false;if(f.dataview.isupdating()){f.dataview.resumeupdate(false)}if(f.pageable&&f.pagerrenderer){if(f._initpager){f._initpager()}else{throw new Error("jqxGrid: Missing reference to jqxgrid.pager.js.")}}if((f.source&&f.source.sortcolumn)&&f.sortby&&!f.virtualmode){f.render();if(!f.source._source.sort){f.sortby(f.source.sortcolumn,f.source.sortdirection,f.source.sortcomparer)}f.source.sortcolumn=null}else{var k=f.vScrollInstance.value;var n=f.hScrollInstance.value;var o=f.source?f.source.datatype:"array";if(o!="local"||o!="array"){var q=f.virtualsizeinfo==null||(f.virtualsizeinfo!=null&&f.virtualsizeinfo.virtualheight==0);if(i=="cells"){var m=false;if(f.filterable&&f._initfilterpanel&&f.dataview.filters.length){m=true}if(false==l){if(!f.vScrollInstance.isScrolling()&&!f.hScrollInstance.isScrolling()){f._cellscache=new Array();f._pagescache=new Array();f._renderrows(f.virtualsizeinfo);if(f.showfilterrow&&f.filterable&&f.filterrow){f._updatelistfilters(true)}if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}if(f.sortcolumn){f.sortby(f.sortcolumn,f.dataview.sortfielddirection,f.source.sortcomparer)}if(f.autoshowloadelement){b(f.dataloadelement).css("visibility","hidden");b(f.dataloadelement).css("display","none")}if(f.virtualmode&&!f._loading){f.loadondemand=true;f._renderrows(f.virtualsizeinfo)}return}else{if(m){i="filter"}else{if(f.sortcolumn!=undefined){i="sort"}}}}if(!f.virtualmode||q||(f.virtualmode&&f.pageable)){if(f.initializedcall==true&&i=="pagechanged"){k=0;if(f.groupable&&f.groups.length>0){f._render(true,true,false,false,false);f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo)}else{f.rendergridcontent(true);if(f.pageable&&f.updatepagerdetails){f.updatepagerdetails();if(f.autoheight){f._updatepageviews();if(f.autorowheight){f._renderrows(this.virtualsizeinfo)}}else{if(f.autorowheight){f._updatepageviews();f._renderrows(this.virtualsizeinfo)}}}}if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}else{if(i=="filter"){if(f.virtualmode){f._render(true,true,false,false,false);f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo);f._updatefocusedfilter()}else{f._render(true,true,false,false,false);f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo);f._updatefocusedfilter()}}else{if(i=="sort"){if(f.virtualmode){f.rendergridcontent(true);if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}else{f._render(true,true,false,false,false);if(f.sortcolumn&&!f.source.sort){f.sortby(f.sortcolumn,f.dataview.sortfielddirection,f.source.sortcomparer)}}if(f.source.sort){f._updatefocusedfilter()}}else{if(i=="data"){f._render(true,true,false,false,false)}else{if(i=="state"){f._render(true,true,false,f.menuitemsarray&&f.menuitemsarray.length>0&&!f.virtualmode)}else{f._render(true,true,true,f.menuitemsarray&&f.menuitemsarray.length>0&&!f.virtualmode)}}}}}}else{if(f.virtualmode&&l==true&&!f.pageable){f._render(true,true,false,false,false);f._updatefocusedfilter();f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo)}else{if(f.virtualmode&&!f.pageable&&l==false&&i!=undefined){f.rendergridcontent(true);if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}else{if(f.virtualmode&&f.dataview.totalrecords==0&&f.dataview.filters.length>0){f._render(true,true,true,f.menuitemsarray&&!f.virtualmode)}else{f._pagescache=new Array();f._renderrows(f.virtualsizeinfo)}}}}if(f.vScrollInstance.value!=k&&k<=f.vScrollInstance.max){f.vScrollInstance.setPosition(k)}if(f.hScrollInstance.value!=n&&n<=f.hScrollInstance.max){f.hScrollInstance.setPosition(n)}}}if(f.autoshowloadelement){b(f.dataloadelement).css("visibility","hidden");b(f.dataloadelement).css("display","none")}if(f.pageable){if(f.pagerrightbutton){f.pagerrightbutton.jqxButton({disabled:false});f.pagerleftbutton.jqxButton({disabled:false});f.pagershowrowscombo.jqxDropDownList({disabled:false})}if(f.pagerfirstbutton){f.pagerfirstbutton.jqxButton({disabled:false});f.pagerlastbutton.jqxButton({disabled:false})}}f._raiseEvent(11);if(!f.initializedcall){var p=function(){f._raiseEvent(0);f.initializedcall=true;f.isInitialized=true;if(f.ready){f.ready()}if(f.renderstatusbar){f.renderstatusbar(f.statusbar)}if(f.rendertoolbar){f.rendertoolbar(f.toolbar)}if(f.autoloadstate){if(f.loadstate){f.loadstate(null,true)}}};if(!b.jqx.isHidden(f.host)){p()}else{if(f.readyInterval){clearInterval(f.readyInterval)}f.readyInterval=setInterval(function(){if(!b.jqx.isHidden(f.host)){if(f.__isRendered){clearInterval(f.readyInterval);f.readyInterval=null;p();f._initmenu()}}},200)}if((f.width!=null&&f.width.toString().indexOf("%")!=-1)||(f.height!=null&&f.height.toString().indexOf("%")!=-1)){}if(f.host.css("visibility")=="hidden"){var j=b.jqx.browser.msie&&b.jqx.browser.version<8;if(f.vScrollBar.css("visibility")=="visible"){f.vScrollBar.css("visibility","inherit")}if(!f.autowidth){if(f.hScrollBar.css("visibility")=="visible"){f.hScrollBar.css("visibility","inherit")}}f._intervalTimer=setInterval(function(){if(f.host.css("visibility")=="visible"){f._updatesize(true);clearInterval(f._intervalTimer)}},100)}}else{f._updateTouchScrolling()}};this.dataview.databind(g);if(this.dataview.isupdating()){if(d!=undefined){this.dataview.suspend=false}else{this.dataview.resumeupdate(false)}}this._initializeRows()},scrollto:function(e,d){if(undefined!=e){this.hScrollInstance.setPosition(e)}if(undefined!=d){this.vScrollInstance.setPosition(d)}},scrollposition:function(){return{top:this.vScrollInstance.value,left:this.hScrollInstance.value}},ensurerowvisible:function(h){if(this.autoheight&&!this.pageable){return true}var e=this._getpagesize();var g=Math.floor(h/e);if(!this._pageviews[g]&&!this.pageable){this._updatepageviews()}var n=false;if(this.pageable&&this.gotopage&&!this.virtualmode){var g=Math.floor(h/e);if(this.dataview.pagenum!=g){if(this.groupable&&this.groups.length>0){return true}this.gotopage(g);n=true}}var l=this.vScrollInstance.value;var m=this._gettableheight()-this.rowsheight;var d=e*(h/e-g);d=Math.round(d);if(this._pageviews[g]){var k=this._pageviews[g].top;var j=k+d*this.rowsheight;if(this.rowdetails){for(var f=e*g;f<h;f++){if(this.details[f]){if(this.details[f].rowdetailshidden==false){j+=this.details[f].rowdetailsheight}}}}if(this.scrollmode=="deferred"){if(this.vScrollInstance.max<=j+this.rowsheight){j=this.vScrollInstance.max}}if(j<l){this.scrolltop(j);n=true}else{if(j>l+m+2){this.scrolltop(j-m);n=true}else{}}}else{if(this.pageable){var j=d*this.rowsheight;if(this.rowdetails){for(var f=e*g;f<e*g+d;f++){if(this.details[f]&&this.details[f].rowdetailshidden==false){j+=this.details[f].rowdetailsheight}}}if(j<l||j>l+m){this.scrollto(0,j);n=true}}}return n},ensurecellvisible:function(h,d){var n=this.that;var i=this.hScrollBar.jqxScrollBar("value");var j=n.hScrollInstance.max;if(n.rtl){if(this.hScrollBar.css("visibility")!="visible"){j=0}}var o=this.ensurerowvisible(h);var e=0;if(this.columns.records){var m=i;if(this.hScrollBar.css("visibility")=="hidden"){return}var l=this.host.width();var k=0;var f=this.vScrollBar.css("visibility")=="visible"?20:0;var g=false;b.each(this.columns.records,function(){if(this.hidden){return true}if(this.datafield==d){var q=0;var p=!n.rtl?m:j-i;if(e+this.width>p+l-f){q=e+this.width-l+f;if(n.rtl){q=j-q}n.scrollleft(q);g=true}else{if(e<=p){q=e-this.width;if(n.rtl){q=j-q}n.scrollleft(q);g=true}}if(k==0){if(n.rtl){n.scrollleft(j)}else{n.scrollleft(0)}g=true}else{if(k==n.columns.records.length-1){if(n.hScrollBar.css("visibility")=="visible"){if(!n.rtl){n.scrollleft(n.hScrollBar.jqxScrollBar("max"))}else{n.scrollleft(n.hScrollBar.jqxScrollBar("min"))}g=true}}}return false}k++;e+=this.width});if(!g){n.scrollleft(m)}}return o},setrowheight:function(e,d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(e==null||d==null){return false}this.heightboundrows[e]={index:e,height:d};e=this.getrowvisibleindex(e);if(e<0){return false}if(this.rows.records[e]){this.rows.records[e].height=d}else{row=new a(this,null);row.height=d;this.rows.replace(e,row)}this.heights[e]=d;this.rendergridcontent(true);return true},getrowheight:function(d){if(d==null){return null}d=this.getrowvisibleindex(d);if(d<0){return false}if(this.rows.records[d]){return this.rows.records[d].height}},setrowdetails:function(f,h,d,j){if(f==undefined||f==null||f<0){return}var e=f+"_";if(this._rowdetailscache[e]){var g=this._rowdetailscache[e].element;b(g).remove();this._rowdetailscache[e]=null}var i=this.dataview.generatekey();this.detailboundrows[f]={index:f,details:{rowdetails:h,rowdetailsheight:d,rowdetailshidden:j,key:i}};f=this.getrowvisibleindex(f);if(f<0){return false}return this._setrowdetails(f,h,d,j,i)},getcolumn:function(d){var e=null;if(this.columns.records){b.each(this.columns.records,function(){if(this.datafield==d||this.displayfield==d){e=this;return false}})}return e},_getcolumnindex:function(e){var d=-1;if(this.columns.records){b.each(this.columns.records,function(){d++;if(this.datafield==e){return false}})}return d},_getcolumnat:function(d){var e=this.columns.records[d];return e},_getprevvisiblecolumn:function(e){var d=this.that;while(e>0){e--;var f=d.getcolumnat(e);if(!f){return null}if(!f.hidden){return f}}return null},_getnextvisiblecolumn:function(e){var d=this.that;while(e<this.columns.records.length){e++;var f=d.getcolumnat(e);if(!f){return null}if(!f.hidden){return f}}return null},getcolumnat:function(d){if(!isNaN(d)){var e=this.columns.records[d];return e}return null},_getcolumn:function(d){var e=null;b.each(this._columns,function(){if(this.datafield==d||this.displayfield==d){e=this;return false}});return e},_setcolumnproperty:function(e,g,h){if(e==null||g==null||h==null){return null}g=g.toLowerCase();var f=this.getcolumn(e);if(f==null){return}var i=f[g];f[g]=h;var d=this._getcolumn(e);if(d!=null){d[g]=h}this._cellscache=new Array();switch(g){case"filteritems":if(this.filterable&&this.showfilterrow){this._updatelistfilters(true,true)}break;case"text":this.prerenderrequired=true;this._rendercolumnheaders();this._updatecellwidths();if(this._groupsheader()){if(this._initgroupsheader){this._initgroupsheader()}}this._renderrows(this.virtualsizeinfo);break;case"editable":case"resizable":case"draggable":if(g=="editable"){if(h!=i){if(this.editcell!=null&&this.endcelledit){this.endcelledit(this.editcell.row,this.editcell.column,true,true)}if(f.columntype=="checkbox"){this.prerenderrequired=true;this.rendergridcontent(true,false);if(this.updating()){return false}}if(this.updating()){return false}this._renderrows(this.virtualsizeinfo)}}break;case"hidden":case"hideable":case"renderer":case"cellsrenderer":case"align":case"aggregates":case"cellsalign":case"cellsformat":case"pinned":case"contenttype":case"filterable":case"groupable":case"cellclass":case"cellclassname":case"classname":case"class":this.prerenderrequired=true;if(g=="pinned"){this._initializeColumns();this._preparecolumngroups()}this.rendergridcontent(true);if(this.updating()){return false}if(g=="hidden"){this._updatecolumnwidths();this._updatecellwidths()}this._renderrows(this.virtualsizeinfo);if(this.showaggregates&&this._updateaggregates){this._updateaggregates()}break;case"width":case"minwidth":case"maxwidth":if(this.updating()){return false}f._width=null;f._percentagewidth=null;this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);break}},_getcolumnproperty:function(d,f){if(d==null||f==null){return null}f=f.toLowerCase();var e=this.getcolumn(d);return e[f]},setcolumnproperty:function(d,e,f){this._setcolumnproperty(d,e,f)},getcolumnproperty:function(d,e){return this._getcolumnproperty(d,e)},hidecolumn:function(d){this._setcolumnproperty(d,"hidden",true)},showcolumn:function(d){this._setcolumnproperty(d,"hidden",false)},iscolumnvisible:function(d){return !this._getcolumnproperty(d,"hidden")},pincolumn:function(d){this._setcolumnproperty(d,"pinned",true)},unpincolumn:function(d){this._setcolumnproperty(d,"pinned",false)},iscolumnpinned:function(d){return this._getcolumnproperty(d,"pinned")},_setrowdetails:function(j,d,n,h,e){if(n==0){n=100}if(j==null||n==null){return false}if(e!=null){this.details[j]={rowdetails:d,rowdetailsheight:n,rowdetailshidden:h,detailskey:e}}else{var m=this.details[j]!=null?this.details[j].detailskey:null;var l={rowdetails:d,rowdetailsheight:n,rowdetailshidden:h,detailskey:m};var k=this.that;for(var g=0;g<this.detailboundrows.length;g++){if(this.detailboundrows[g]!=undefined){var f=this.detailboundrows[g];if(f.details.detailskey==m){f.details.rowdetailsheight=l.rowdetailsheight;f.details.rowdetailshidden=l.rowdetailshidden;f.details.rowdetails=l.rowdetails;break}}}this.details[j]=l}this.rendergridcontent(true);this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);return true},getrowdetails:function(d){if(d==null){return false}d=this.getrowvisibleindex(d);return this._getrowdetails(d)},_getrowdetails:function(d){if(d==null){return false}if(d<0){return false}if(this.details[d]){return this.details[d]}if(this.rowdetailstemplate){return this.rowdetailstemplate}},getrecordscount:function(){return this.dataview.totalrecords},showrowdetails:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==null){return false}d=this.getrowvisibleindex(d);if(d<0){return false}var e=this._getrowdetails(d);return this._setrowdetailsvisibility(d,e,false)},hiderowdetails:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}d=this.getrowvisibleindex(d);if(d<0){return false}var e=this._getrowdetails(d);return this._setrowdetailsvisibility(d,e,true)},_togglerowdetails:function(i){var f=i.visibleindex;var g=this._getrowdetails(f);if(g!=null){var e=this.vScrollInstance.value;var h=!g.rowdetailshidden;var d=this._setrowdetailsvisibility(f,g,h);if(e!==0&&this.vScrollBar.css("visibility")!=="hidden"){if(e<=this.vScrollInstance.max){this.vScrollInstance.setPosition(e)}else{this.vScrollInstance.setPosition(this.vScrollInstance.max)}}return d}return false},_setrowdetailsvisibility:function(e,f,h){if(this.rowdetailstemplate){if(!this.details){this.details=new Array()}if(!this.details[e]){this.details[e]={rowdetailshidden:this.rowdetailstemplate.rowdetailshidden,rowdetailsheight:this.rowdetailstemplate.rowdetailsheight,rowdetails:this.rowdetailstemplate.rowdetails};var g=this.dataview.generatekey();this.details[e].detailskey=g;this.detailboundrows[e]={index:e,details:this.details[e]}}}if(f!=null){this.details[e].rowdetailshidden=h}else{return false}var d=this.details[e];if(h){this._raiseEvent(21,{rowindex:e,details:d.rowdetails,height:d.rowdetailsheight})}else{this._raiseEvent(20,{rowindex:e,details:d.rowdetails,height:d.rowdetailsheight})}return this._setrowdetails(e,d.rowdetails,d.rowdetailsheight,d.rowdetailshidden)},getrowvisibleindex:function(d){if(d==undefined||d==null||d<0){return false}if(this.virtualmode){var e=this.dataview.loadedrecords[d];if(e==undefined){return -1}return e.visibleindex}return this.getrowdisplayindex(d)},hiderow:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==undefined||d==null||d<0){return false}if(d==null){return false}this.hiddenboundrows[d]={index:d,hidden:true};d=this.getrowvisibleindex(d);return this._setrowvisibility(d,true)},showrow:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==undefined||d==null||d<0){return false}if(d==null){return false}this.hiddenboundrows[d]={index:d,hidden:false};d=this.getrowvisibleindex(d);return this._setrowvisibility(d,false)},isrowhiddenat:function(d){if(d==null){return null}d=this.getrowvisibleindex(d);if(this.rows.records[d]){return this.rows.records[d].hidden}},_setrowvisibility:function(d,f,e){if(d==null){return false}this.hiddens[d]=f;if(e==undefined||e){this.rendergridcontent(true);return true}return false},_loadrows:function(){if(!this._pageviews[this.dataview.pagenum]&&!this.pageable){return}var p=!this.pageable?this._pageviews[this.dataview.pagenum].top:0;if(!this.pageable&&this._pagescache[this.dataview.pagenum]!=undefined){return null}if(!this.virtualsizeinfo){return}var t=this.that;var l=new Array();var q=new Array();var e=t.groupable&&t.groups.length>0;var j=this.dataview.totalrecords;var o=this.virtualsizeinfo.virtualheight;var s=0;this.rows.beginupdate();var f=this.dataview.pagesize;if(this.pageable&&e){f=this.dataview.rows.length}for(var g=0;g<f;g++){if(g>=this.dataview.rows.length){break}var k=this.dataview.rows[g];var u=null;if(!t.rows.records[k.visibleindex]){u=new a(t,k)}else{u=t.rows.records[k.visibleindex];u.setdata(k)}u.hidden=this.hiddens[u.visibleindex];if(this.rowdetailstemplate){u.rowdetails=this.rowdetailstemplate.rowdetails;u.rowdetailsheight=this.rowdetailstemplate.rowdetailsheight;u.rowdetailshidden=this.rowdetailstemplate.rowdetailshidden}var d=this.details[u.visibleindex];if(d){u.rowdetails=d.rowdetails;u.rowdetailsheight=d.rowdetailsheight;u.rowdetailshidden=d.rowdetailshidden}else{if(!this.rowdetailstemplate){u.rowdetails=null}}if(e&&this.pageable&&u.parentbounddata!=null){var r=l[u.parentbounddata.uniqueid];if(r!=null){var n=this._findgroupstate(r.uniqueid);if(this._setsubgroupsvisibility){this._setsubgroupsvisibility(this,u.parentbounddata,!n,false)}u.hidden=this.hiddens[u.visibleindex]}if(r!=null&&r!=undefined){u.parentrow=r;r.subrows[r.subrows.length++]=u}}if(u.hidden){continue}var h=k.visibleindex;if(!this.heights[h]){this.heights[h]=this.rowsheight}u.height=this.heights[h];if(this.rowdetails){if(u.rowdetails&&!u.rowdetailshidden){u.height+=u.rowdetailsheight}}l[u.uniqueid]=u;q[s++]=u;u.top=p;p+=u.height;var m=h;t.rows.replace(m,u)}if((this.autoheight||this.pageable)&&this.autorowheight){if(this._pageviews&&this._pageviews.length>0){this._pageviews[0].height=p}}this.rows.resumeupdate();if(q.length>0){this._pagescache[this.dataview.pagenum]=q}},_updateaddnewrowui:function(g){var m=this;var k=m.everpresentrowposition!="bottom"?m.addnewrowtop:m.addnewrowbottom;var o=m.columns.records.length;var f=0;for(var l=0;l<o;l++){var h=m.columns.records[l];if(h.addnewrowwidget){h.addnewrowwidget.detach()}}for(var l=0;l<o;l++){var h=m.columns.records[l];var e=h.width;if(e<h.minwidth){e=h.minwidth}if(e>h.maxwidth){e=h.maxwidth}var n=b(k[0].cells[l]);n.css("left",f);var i=true;if(n.width()==e){i=false}if(g){i=true}n.width(e);n[0].left=f;if(h.addnewrowwidget){n.html("");n.append(h.addnewrowwidget)}if(!(h.hidden&&h.hideable)){f+=e}else{n.css("display","none")}if(!i){continue}}var p=m.everpresentrowactions.split(" ");m.addnewrowbutton.show();m.addnewrowupdatebutton.show();m.addnewrowresetbutton.show();m.addnewrowdeletebutton.show();if(p.indexOf("add")==-1&&p.indexOf("addBottom")==-1){m.addnewrowbutton.hide()}if(p.indexOf("update")==-1){m.addnewrowupdatebutton.hide()}if(p.indexOf("reset")==-1){m.addnewrowresetbutton.hide()}if(p.indexOf("delete")==-1){m.addnewrowdeletebutton.hide()}var d=b(k.children()[0]);d.width(parseInt(f)+2);d.height(m.everpresentrowheight);d.css("max-height",m.everpresentrowheight+"px")},_removeaddnewrow:function(){var g=this;var d=g.columns.records.length;for(var f=0;f<d;f++){var e=g.columns.records[f];if(e.addnewrowwidget){if(e.destroyeverpresentrowwidget){e.destroyeverpresentrowwidget(e.addnewrowwidget)}else{e.addnewrowwidget.remove()}e.addnewrowwidget=null}}if(g.addnewrowbutton){g.addnewrowbutton.remove()}if(g.addnewrowupdatebutton){g.addnewrowupdatebutton.remove()}if(g.addnewrowdeletebutton){g.addnewrowdeletebutton.remove()}if(g.addnewrowresetbutton){g.addnewrowresetbutton.remove()}if(g.addnewrowpopup){g.addnewrowpopup.remove();g.addnewrowpopup=null}if(g.addnewrowtop){g.addnewrowtop.remove();g.addnewrowtop=null}if(g.addnewrowbottom){g.addnewrowbottom.remove();g.addnewrowbottom=null}},_updateaddnewrow:function(){var o=this;var f=o.everpresentrowposition!="bottom"?o.addnewrowtop:o.addnewrowbottom;var t=b('<div style="position: relative;" id="row000'+o.element.id+'"></div>');var i=0;var z=o.columns.records.length;var n=o.toThemeProperty("jqx-grid-cell");n+=" "+o.toThemeProperty("jqx-grid-cell-add-new-row");n+=" "+o.toThemeProperty("jqx-grid-cell-filter-row");var m=z+10;var h=new Array();var D=o.that;f[0].cells=h;t.height(o.everpresentrowheight);if(!o.showfilterrow&&o.everpresentrowposition!="bottom"){f.css("max-height",(o.everpresentrowheight-1)+"px")}else{if(o.showfilterrow&&o.everpresentrowposition!="bottom"){f.css("max-height",(o.everpresentrowheight-3)+"px")}}t.css("max-height",o.everpresentrowheight+"px");f.append(t);var C=b("<div style='border-width: 1px; border-style: solid; padding: 5px; z-index: 99999; display: none; position: absolute;'><div>").appendTo(b(document.body));var d=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.addrowstring+"</button>");var q=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.udpaterowstring+"</button>");var k=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.deleterowstring+"</button>");var p=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.resetrowstring+"</button>");C.addClass(o.toThemeProperty("jqx-popup"));C.addClass(o.toThemeProperty("jqx-rc-all"));C.addClass(o.toThemeProperty("jqx-fill-state-normal"));C.addClass(o.toThemeProperty("jqx-shadow"));C.append(d);C.append(q);C.append(k);C.append(p);var g=o.everpresentrowactions.split(" ");if(g.indexOf("add")==-1&&g.indexOf("addBottom")==-1){d.hide()}if(g.indexOf("update")==-1){q.hide()}if(g.indexOf("reset")==-1){p.hide()}if(g.indexOf("delete")==-1){k.hide()}o.addnewrowpopup=C;o.addnewrowbutton=d;o.addnewrowupdatebutton=q;o.addnewrowdeletebutton=k;o.addnewrowresetbutton=p;d.jqxButton({template:"success",theme:o.theme});k.jqxButton({template:"danger",theme:o.theme});q.jqxButton({template:"primary",theme:o.theme});p.jqxButton({template:"warning",theme:o.theme});q.mousedown(function(E){var P={};var I={};for(var G=0;G<z;G++){var F=o.columns.records[G];if(!F.geteverpresentrowwidgetvalue){continue}var L=F.geteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget);I[F.datafield]=L;if(F.datafield!=F.displayfield){I[F.datafield]=L.value;I[F.displayfield]=L.label}}var K=false;for(var G=0;G<z;G++){var F=o.columns.records[G];if(!F.geteverpresentrowwidgetvalue){continue}var L=F.geteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget);if(F.createeverpresentrowwidget&&F.validateeverpresentrowwidgetvalue){var J=F.validateeverpresentrowwidgetvalue(F.displayfield,L,I);var O=J;var H=o.gridlocalization.validationstring;if(O.message!=undefined){H=O.message}var N=typeof O=="boolean"?O:O.result;if(!N){L="invalid editor state";F.addnewrowwidget.attr("title",H);F.addnewrowwidget.addClass(o.toThemeProperty("jqx-input-invalid"))}else{F.addnewrowwidget.attr("title","");F.addnewrowwidget.removeClass(o.toThemeProperty("jqx-input-invalid"))}}if(L==="invalid editor state"){E.preventDefault();E.stopPropagation();K=true;continue}if(K){continue}}if(K){C.hide();o.focus();return}for(var G=0;G<z;G++){var F=o.columns.records[G];if(!F.geteverpresentrowwidgetvalue){continue}var L=F.geteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget);P[F.datafield]=L;if(F.datafield!=F.displayfield){P[F.datafield]=L.value;P[F.displayfield]=L.label}if(F.reseteverpresentrowwidgetvalue){F.reseteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget)}}if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var M=o.getselectedcells()[0].rowindex}else{var M=o.selectedrowindexes[0]}rowData=o.getrowdata(M);if(rowData){o.updaterow(rowData.uid,P)}}C.hide();o.focus()});k.mousedown(function(G){if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var H=o.getselectedcells()[0].rowindex}else{var H=o.selectedrowindexes[0]}rowData=o.getrowdata(H);if(rowData){o.deleterow(rowData.uid)}}for(var F=0;F<z;F++){var E=o.columns.records[F];if(E.reseteverpresentrowwidgetvalue){E.reseteverpresentrowwidgetvalue(E.displayfield,E.addnewrowwidget)}}C.hide();o.focus();o.updateeverpresentrow()});d.mousedown(function(F){var P={};var J={};for(var H=0;H<z;H++){var G=o.columns.records[H];if(!G.geteverpresentrowwidgetvalue){continue}var M=G.geteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget);J[G.datafield]=M;if(G.datafield!=G.displayfield){J[G.datafield]=M.value;J[G.displayfield]=M.label}if(G.datafield!=G.displayfield){J[G.datafield]=M.label;J[G.displayfield]=M.value}}var L=false;for(var H=0;H<z;H++){var G=o.columns.records[H];if(!G.geteverpresentrowwidgetvalue){continue}var M=G.geteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget);if(G.createeverpresentrowwidget&&G.validateeverpresentrowwidgetvalue){var K=G.validateeverpresentrowwidgetvalue(G.displayfield,M,J);var O=K;var I=o.gridlocalization.validationstring;if(O.message!=undefined){I=O.message}var N=typeof O=="boolean"?O:O.result;if(!N){M="invalid editor state";G.addnewrowwidget.attr("title",I);G.addnewrowwidget.addClass(o.toThemeProperty("jqx-input-invalid"))}else{G.addnewrowwidget.attr("title","");G.addnewrowwidget.removeClass(o.toThemeProperty("jqx-input-invalid"))}}if(M==="invalid editor state"){F.preventDefault();F.stopPropagation();L=true;continue}if(L){continue}}if(L){C.hide();o.focus();return}for(var H=0;H<z;H++){var G=o.columns.records[H];if(!G.geteverpresentrowwidgetvalue){continue}var M=G.geteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget);P[G.datafield]=M;if(G.datafield!=G.displayfield){J[G.datafield]=M.label;J[G.displayfield]=M.value}if(G.reseteverpresentrowwidgetvalue){G.reseteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget)}}var E=o.everpresentrowactions.indexOf("addBottom")>=0?"last":"first";o.addrow(null,P,E);C.hide();o.focus()});p.mousedown(function(G){var H={};for(var F=0;F<z;F++){var E=o.columns.records[F];if(E.reseteverpresentrowwidgetvalue){E.reseteverpresentrowwidgetvalue(E.displayfield,E.addnewrowwidget)}if(E.addnewrowwidget){E.addnewrowwidget.attr("title","");E.addnewrowwidget.removeClass(o.toThemeProperty("jqx-input-invalid"))}}C.hide();o.focus()});for(var w=0;w<z;w++){var x=o.columns.records[w];var u=x.width;if(u<x.minwidth){u=x.minwidth}if(u>x.maxwidth){u=x.maxwidth}var e=b('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+n+'"></div>');t.append(e);e.css("left",i);if(o.rtl){e.css("z-index",m++);e.css("border-left-width","1px")}else{e.css("z-index",m--)}if(u=="auto"){u=0}e[0].style.width=parseFloat(u)+"px";e[0].left=i;if(!(x.hidden&&x.hideable)){i+=u}else{e.css("display","none")}h[h.length]=e[0];if(x.checkboxcolumn){var B=o.toThemeProperty("jqx-grid-cell");B+=" "+o.toThemeProperty("jqx-grid-cell-filter-row");B+=" "+o.toThemeProperty("jqx-grid-cell-pinned");e.removeClass().addClass(B);continue}var s=true;if(!o.rtl){if(o.groupable){var y=(o.showrowdetailscolumn&&o.rowdetails)?1:0;if(o.groups.length+y>w){s=false}}if(o.showrowdetailscolumn&&o.rowdetails&&w==0){s=false}}else{if(o.groupable){var y=(o.showrowdetailscolumn&&o.rowdetails)?1:0;if(o.groups.length+y+w>z-1){s=false}}if(o.showrowdetailscolumn&&o.rowdetails&&w==z-1){s=false}}o.updateeverpresentrow=function(){var G=null;if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var H=o.getselectedcells()[0].rowindex}else{var H=o.selectedrowindexes[0]}G=o.getrowdata(H)}if(!G){return}for(var F=0;F<o.columns.records.length;F++){var j=o.columns.records[F];if(j.seteverpresentrowwidgetvalue){var E=o.getcelltext(H,j.displayfield);j.seteverpresentrowwidgetvalue(j.addnewrowwidget,E)}}};if(s){if(x.createeverpresentrowwidget){var v=function(){d.trigger("mousedown")};x.addnewrowwidget=x.createeverpresentrowwidget(x.datafield,e,C,v);if(x.initeverpresentrowwidget){x.initeverpresentrowwidget(x.datafield,e,C)}}else{o._measureElement("column");var r=(o.everpresentrowheight/2-o._columnheight/2);if(r<0){r=4}r+="px";if(x.datafield==="addButtonColumn"){var l=b('<div style="padding-bottom: 2px; text-align: center; margin-top: '+r+';"><a href="#">'+o.gridlocalization.addrowstring+"</a></div>");e.append(l);l.mousedown(function(){d.trigger("mousedown")});continue}else{if(x.datafield==="resetButtonColumn"){var l=b('<div style="padding-bottom: 2px; text-align: center; margin-top: '+r+';"><a href="#">'+o.gridlocalization.resetrowstring+"</a></div>");e.append(l);l.mousedown(function(){p.trigger("mousedown")});continue}}var A=function(F,H,j){var E=b('<input style="box-sizing: border-box; padding-right: 4px; padding-left: 4px; border:none;" autocomplete="off" type="textarea"/>');E[0].id=b.jqx.utilities.createId();E.addClass(F.toThemeProperty("jqx-widget"));E.addClass(F.toThemeProperty("jqx-input"));E.addClass(F.toThemeProperty("jqx-widget-content"));E.addClass(F.toThemeProperty("jqx-enableselect"));E.addClass(F.toThemeProperty("jqx-grid-cell-add-new-row"));E.css("text-align",j.cellsalign);if(F.rtl){E.css("direction","rtl")}if(F.disabled){E.attr("disabled",true)}E.attr("disabled",false);E.attr("placeholder",F.gridlocalization.everpresentrowplaceholder+j.text);E.appendTo(H);E.css("width","100%");E.css("height",F.everpresentrowheight+"px");E.css("line-height",F.everpresentrowheight+"px");E.css("max-height",F.everpresentrowheight+"px");E.css("margin","0px");E.focus(function(){if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var K=o.getselectedcells()[0].rowindex}else{var K=o.selectedrowindexes[0]}}E.addClass(F.toThemeProperty("jqx-fill-state-focus"));var I=F.columns.records.indexOf(j);if(F.everpresentrowactionsmode!=="columns"){C.css({display:"block",top:E.coord().top+F.everpresentrowheight-1,left:I>0?E.coord().left:E.coord().left-1})}var J=C.children().width();if(j.cellsalign==="right"){var J=d.width()+p.width();C.children().css("left",J-J+"px")}else{C.children().css("left","0px")}F.content[0].scrollLeft=0;F.content[0].scrollTop=0;setTimeout(function(){F.content[0].scrollLeft=0;F.content[0].scrollTop=0},50);return false});j.addnewrowwidget=E;if(!j.reseteverpresentrowwidgetvalue){j.reseteverpresentrowwidgetvalue=function(J,I){I.val("");I.focus();I.blur();I.removeClass(o.toThemeProperty("jqx-input-invalid"));I.attr("title","")}}if(!j.seteverpresentrowwidgetvalue){j.seteverpresentrowwidgetvalue=function(J,I){J.val(I)}}if(!j.geteverpresentrowwidgetvalue){var G=j;j.geteverpresentrowwidgetvalue=function(I,P,R){var U=P.val();if(R!==false&&G.validateeverpresentrowwidgetvalue){var Y={};var O={};for(var M=0;M<z;M++){var K=o.columns.records[M];if(!K.geteverpresentrowwidgetvalue){continue}var Q=K.geteverpresentrowwidgetvalue(K.displayfield,K.addnewrowwidget,false);O[K.datafield]=Q;if(K.datafield!=K.displayfield){O[K.datafield]=Q.value;O[K.displayfield]=Q.label}}var T=G.validateeverpresentrowwidgetvalue(G.displayfield,U,O);var X=T;var N=o.gridlocalization.validationstring;if(X.message!=undefined){N=X.message}var W=typeof X=="boolean"?X:X.result;if(!W){E.addClass(o.toThemeProperty("jqx-input-invalid"));E.attr("title",N);return"invalid editor state"}else{E.removeClass(o.toThemeProperty("jqx-input-invalid"));E.attr("title","")}}var S="string";var J=o.source.datafields||((o.source._source)?o.source._source.datafields:null);if(J){var V="";b.each(J,function(){if(this.name==G.displayfield){if(this.type){V=this.type}return false}});if(V){S=V}}if(S==="number"){var L=parseFloat(U);if(isNaN(L)){return null}}if(S==="date"){return b.jqx.dataFormat.tryparsedate(U,o.gridlocalization)}if(S==="bool"||S==="boolean"){if(U==="true"){return true}if(U=="1"){return true}if(U==="false"){return false}if(U=="0"){return false}if(U===true){return U}if(U===false){return U}return false}return U}}E.keydown(function(I){if(I.keyCode===13){if(o.everpresentrowactions.indexOf("add")>=0){d.trigger("mousedown")}else{if(o.everpresentrowactions.indexOf("update")>=0){q.trigger("mousedown")}else{if(o.everpresentrowactions.indexOf("delete")>=0){k.trigger("mousedown")}}}}});E.blur(function(){E.removeClass(F.toThemeProperty("jqx-fill-state-focus"));C.css("display","none")});if(j.initeverpresentrowwidget){j.initeverpresentrowwidget(j.datafield,H,C)}};A(this,e,x)}}}if(b.jqx.browser.msie&&b.jqx.browser.version<8){t.css("z-index",m--)}t.width(parseFloat(i)+2);f.addClass(n);f.css("border-bottom-width","0px");if(o.showfilterrow){f.css("border-top-width","0px")}else{f.css("border-top-width","1px")}f.css("box-sizing","border-box");f.css("border-right-width","0px")},_gettableheight:function(){if(this.tableheight!=undefined){return this.tableheight}var e=this.host.height();if(this.columnsheader){var d=this.columnsheader.outerHeight();if(!this.showheader){d=0}}e-=d;if(this.hScrollBar[0].style.visibility=="visible"){e-=this.hScrollBar.outerHeight()}if(this.pageable){e-=this.pager.outerHeight()}if(this._groupsheader()){e-=this.groupsheader.outerHeight()}if(this.showtoolbar){e-=this.toolbarheight}if(this.showstatusbar){e-=this.statusbarheight}if(this.showeverpresentrow&&this.everpresentrowposition==="bottom"){e-=this.everpresentrowheight}if(e>0){this.tableheight=e;return e}return this.host.height()},_getpagesize:function(){if(this.pageable){return this.pagesize}if(this.virtualmode){var e=Math.round(this.host.height())+2*this.rowsheight;var d=Math.round(e/this.rowsheight);return d}if(this.autoheight||this.autorowheight){if(this.dataview.totalrows==0){return 1}return this.dataview.totalrows}if(this.dataview.totalrows<100&&this.dataview.totalrecords<100&&this.dataview.totalrows>0){return this.dataview.totalrows}return 100},_calculatevirtualheight:function(){var n=this.that;var e=Math.round(this.host.height())+2*this.rowsheight;realheight=this._gettableheight();var p=Math.round(e/this.rowsheight);this.heights=new Array();this.hiddens=new Array();this.details=new Array();this.expandedgroups=new Array();this.hiddenboundrows=new Array();this.heightboundrows=new Array();this.detailboundrows=new Array();var h=Math.max(this.dataview.totalrows,this.dataview.totalrecords);if(this.pageable){h=this.pagesize;if(this.pagesize>Math.max(this.dataview.totalrows,this.dataview.totalrecords)&&this.autoheight){h=Math.max(this.dataview.totalrows,this.dataview.totalrecords)}else{if(!this.autoheight){if(this.dataview.totalrows<this.pagesize){h=Math.max(this.dataview.totalrows,this.dataview.totalrecords)}}}}var l=h*this.rowsheight;var m=0;var j=0;var k=0;var f=this._getpagesize();var d=f*this.rowsheight;var g=0;if(!this.pageable&&this.autoheight){p=h}if(h+f>0){while(g<=h+f){m+=d;if(g-f<h&&g>=h){var o=g-h;if(o>0){k-=d;this._pageviews[j-1]={top:k,height:d-o*this.rowsheight}}break}else{this._pageviews[j++]={top:k,height:d}}k=m;g+=f}}if(this.resizingGrid!=true){this.vScrollBar.jqxScrollBar({value:0})}if(l>realheight&&!this.autoheight){this.vScrollBar.css("visibility","visible");if(this.scrollmode=="deferred"){this.vScrollBar.jqxScrollBar({max:l})}else{this.vScrollBar.jqxScrollBar({max:l-realheight})}}else{this.vScrollBar.css("visibility","hidden")}this.dataview.pagesize=f;this.dataview.updateview();return{visiblerecords:p,virtualheight:l}},_updatepageviews:function(){if(this.updating()){return}this._pagescache=new Array();this._pageviews=new Array();this.tableheight=null;var u=this.that;var d=Math.round(this.host.height())+2*this.rowsheight;var v=Math.round(d/this.rowsheight);var n=Math.max(this.dataview.totalrows,this.dataview.totalrecords);var q=n*this.rowsheight;var t=0;var f=0;var o=0;var p=0;var j=0;var h=this._getpagesize();if(!this.pageable){for(var m=0;m<n;m++){var s={index:m,height:this.heights[m],hidden:this.hiddens[m],details:this.details[m]};if(this.heights[m]==undefined){this.heights[m]=this.rowsheight;s.height=this.rowsheight}if(this.hiddens[m]==undefined){this.hiddens[m]=false;s.hidden=false}if(this.details[m]==undefined){this.details[m]=null}if(s.height!=u.rowsheight){q-=u.rowsheight;q+=s.height}if(s.hidden){q-=s.height}else{f+=s.height;var l=0;if(this.rowdetails){if(this.rowdetailstemplate){if(!s.details){s.details=this.rowdetailstemplate}}if(s.details&&s.details.rowdetails&&!s.details.rowdetailshidden){l=s.details.rowdetailsheight;f+=l;q+=l}}t+=s.height+l}j++;if(j>=h||m==n-1){this._pageviews[o++]={top:p,height:f};f=0;p=t;j=0}}}else{if(this._updatepagedview){q=this._updatepagedview(n,q,0)}if(this.autoheight){this._arrange()}}var e=this._gettableheight();if(q>e){if(this.pageable&&this.gotopage){q=this._pageviews[0].height;if(q<0){q=this._pageviews[0].height}}if(this.vScrollBar.css("visibility")!="visible"){this.vScrollBar.css("visibility","visible")}if(q<=e||this.autoheight){this.vScrollBar.css("visibility","hidden")}if(q-e>0){if(this.scrollmode!="deferred"){var r=q-e;var g=this.vScrollInstance.max;this.vScrollBar.jqxScrollBar({max:r});if(r!=g){this.vScrollBar.jqxScrollBar({value:0})}}else{this.vScrollBar.jqxScrollBar({value:0,max:q})}}else{this.vScrollBar.jqxScrollBar({value:0,max:q})}}else{if(!this._loading){this.vScrollBar.css("visibility","hidden")}this.vScrollBar.jqxScrollBar({value:0})}this._arrange();if(this.autoheight){v=Math.round(this.host.height()/this.rowsheight)}this.virtualsizeinfo={visiblerecords:v,virtualheight:q}},updatebounddata:function(d){if(d!="data"&&d!="sort"&&d!="filter"&&d!="cells"&&d!="pagechanged"&&d!="pagesizechanged"&&!this.virtualmode){this.virtualsizeinfo=null;if(this.showfilterrow&&this.filterable&&this.filterrow){if(this.clearfilters){this.clearfilters(false)}this.filterrow.remove();this._filterrowcache=new Array();if(this.filterable&&this._destroyedfilters&&this.showfilterrow){this._destroyedfilters()}this.filterrow=null}else{if(this.filterable){if(this.clearfilters){this.clearfilters(false)}}}if(this.groupable){this.dataview.groups=[];this.groups=[]}if(this.pageable){this.pagenum=0;this.dataview.pagenum=0}if(this.sortable){this.sortcolumn=null;this.sortdirection="";this.dataview.sortfielddirection="";this.dataview.clearsortdata()}}this.databind(this.source,d)},refreshdata:function(){this._refreshdataview();this.render()},_updatevscrollbarmax:function(){if(this._pageviews&&this._pageviews.length>0){var f=this._pageviews[0].height;if(this.virtualmode||!this.pageable){f=this.virtualsizeinfo.virtualheight}var e=this._gettableheight();if(f>e){if(this.pageable&&this.gotopage){f=this._pageviews[0].height;if(f<0){f=this._pageviews[0].height}}if(this.vScrollBar.css("visibility")!="visible"){this.vScrollBar.css("visibility","visible")}if(f<=e||this.autoheight){this.vScrollBar.css("visibility","hidden")}if(f-e>0){var d=f-e;this.vScrollBar.jqxScrollBar({max:d})}else{this.vScrollBar.jqxScrollBar({value:0,max:f})}}else{this.vScrollBar.css("visibility","hidden");this.vScrollBar.jqxScrollBar({value:0})}}},_refreshdataview:function(){this.dataview.refresh()},refresh:function(d){if(d!=true){if(b.jqx.isHidden(this.host)){return}if(this.virtualsizeinfo!=null){this._cellscache=new Array();this._renderrows(this.virtualsizeinfo);this._updatesize()}}},render:function(){this._render(true,true,true,true)},invalidate:function(){if(this.virtualsizeinfo){this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}},clear:function(){this.databind(null);this.render()},_preparecolumngroups:function(){var o=this.columnsheight;if(this.columngroups){this.columnshierarchy=new Array();if(this.columngroups.length){var n=this;for(var h=0;h<this.columngroups.length;h++){this.columngroups[h].parent=null;this.columngroups[h].groups=null}for(var h=0;h<this.columns.records.length;h++){this.columns.records[h].parent=null;this.columns.records[h].groups=null}var p=function(j){for(var u=0;u<n.columngroups.length;u++){var v=n.columngroups[u];if(v.name===j){return v}}return null};for(var h=0;h<this.columngroups.length;h++){var q=this.columngroups[h];if(!q.groups){q.groups=null}if(q.parentgroup){var s=p(q.parentgroup);if(s){q.parent=s;if(!s.groups){s.groups=new Array()}if(s.groups.indexOf(q)===-1){s.groups.push(q)}}}}for(var h=0;h<this.columns.records.length;h++){var q=this.columns.records[h];if(q.columngroup){var s=p(q.columngroup);if(s){if(!s.groups){s.groups=new Array()}q.parent=s;if(s.groups.indexOf(q)===-1){s.groups.push(q)}}}}var r=0;for(var h=0;h<this.columns.records.length;h++){var q=this.columns.records[h];var e=q;q.level=0;while(e.parent){e=e.parent;q.level++}var e=q;var d=q.level;r=Math.max(r,q.level);while(e.parent){e=e.parent;if(e){e.level=--d}}}var m=function(y){var x=new Array();if(y.columngroup){x.push(y)}if(y.groups){for(var w=0;w<y.groups.length;w++){if(y.groups[w].columngroup){x.push(y.groups[w])}else{if(y.groups[w].groups){var v=m(y.groups[w]);for(var u=0;u<v.length;u++){x.push(v[u])}}}}}return x};for(var h=0;h<this.columngroups.length;h++){var q=this.columngroups[h];var f=m(q);q.columns=f;var k=new Array();var t=0;for(var g=0;g<f.length;g++){k.push(this.columns.records.indexOf(f[g]));if(f[g].pinned){t++}}if(t!=0){throw new Error("jqxGrid: Column Groups initialization Error. Please, check the initialization of the jqxGrid's columns array. The columns in a column group cannot be pinned.")}k.sort(function(j,i){j=parseInt(j);i=parseInt(i);if(j<i){return -1}if(j>i){return 1}return 0});for(var l=1;l<k.length;l++){if(k[l]!=k[l-1]+1){throw new Error("jqxGrid: Column Groups initialization Error. Please, check the initialization of the jqxGrid's columns array. The columns in a column group are expected to be siblings in the columns array.");this.host.remove()}}}}this.columngroupslevel=1+r;o=this.columngroupslevel*this.columnsheight}return o},_render:function(k,j,l,e,f){if(this.dataview==null){return}if(this._loading){return}if(this._batchupdate){return}if(b.jqx.isHidden(this.host)){var g=this;if(g.___hiddenTimer){clearInterval(g.___hiddenTimer);g.___hiddenTimer=null}this.___hiddenTimer=setInterval(function(){if(!b.jqx.isHidden(g.host)){clearInterval(g.___hiddenTimer);g.render()}},300);return}if(this.editcell!=null&&this.endcelledit){this.endcelledit(this.editcell.row,this.editcell.column,true,false)}this.validationpopup=null;this._removeHandlers();this._addHandlers();this._initializeRows();this._requiresupdate=j!=undefined?j:true;this._newmax=null;if(l){if(!this._requiresupdate){if(e!=false){this._initmenu()}}if(this.columns==null){this.columns=new b.jqx.collection(this.element)}else{var i=this;if(this.columns&&this.columns.name==="observableArray"){this.columns.notifier=function(p){var n=function(){i.columns=i._columns;i.render()};switch(p.type){case"add":n();break;case"update":if(p.name==="index"){i.beginupdate();for(var o in p.newValue){i.setcolumnproperty(p.newValue.datafield,o,p.newValue[o])}i.endupdate()}else{var m=p.path.split(".");i.setcolumnproperty(i.columns[m[0]].datafield,p.name,p.newValue)}break;case"delete":n();break}}}if(this.columngroups&&this.columngroups.name==="observableArray"){this.columngroups.notifier=function(m){i.render()}}this._initializeColumns()}}this.tableheight=null;this._pagescache=new Array();this._pageviews=new Array();this.visiblerows=new Array();this.hittestinfo=new Array();if(this._requiresupdate){this._clearcaches();if(e==true){this._initmenu()}}this.virtualsizeinfo=null;this.prerenderrequired=true;if((this.groupable&&this.groups.length>0&&this.rowdetails)||(this.rowdetails)){if(this.gridcontent){this._rowdetailscache=new Array();this._rowdetailselementscache=new Array();this.detailboundrows=new Array();this.details=new Array();b.jqx.utilities.html(this.gridcontent,"");this.gridcontent=null}}if(this.gridcontent){if(this.editable&&this._destroyeditors){this._destroyeditors()}}if(l){if(this.filterrow){this.filterrow.detach()}b.jqx.utilities.html(this.content,"");this.columnsheader=this.columnsheader||b('<div style="overflow: hidden;"></div>');this.columnsheader.remove();this.columnsheader.addClass(this.toTP("jqx-widget-header"));this.columnsheader.addClass(this.toTP("jqx-grid-header"))}else{if(this.gridcontent){b.jqx.utilities.html(this.gridcontent,"")}}if(!this.showheader){this.columnsheader.css("display","none")}else{if(this.columnsheader){this.columnsheader.css("display","block")}}this.gridcontent=this.gridcontent||b('<div style="width: 100%; overflow: hidden; position: absolute;"></div>');this.gridcontent.remove();var h=this.columnsheight;h=this._preparecolumngroups();if(this.showfilterrow&&this.filterable){this.columnsheader.height(h+this.filterrowheight);if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){this.columnsheader.height(h+this.filterrowheight+this.everpresentrowheight)}}else{if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){this.columnsheader.height(h+this.everpresentrowheight)}else{this.columnsheader.height(h)}}this.content.append(this.columnsheader);this.content.append(this.gridcontent);this._arrange();if(this._initgroupsheader){this._initgroupsheader()}this.selectionarea=this.selectionarea||b("<div style='z-index: 99999; visibility: hidden; position: absolute;'></div>");this.selectionarea.addClass(this.toThemeProperty("jqx-grid-selectionarea"));this.selectionarea.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.content.append(this.selectionarea);this.tableheight=null;this.rendergridcontent(false,l);if(this.groups.length>0&&this.groupable){var d=this.vScrollBar[0].style.visibility;this.suspendgroupevents=true;if(this.collapseallgroups){if(!this.groupsexpandedbydefault){this.collapseallgroups(false);this._updatescrollbarsafterrowsprerender()}else{this.expandallgroups(false)}}if(this.vScrollBar[0].style.visibility!=d){this._updatecolumnwidths();this._updatecellwidths()}this.suspendgroupevents=false}if(this.pageable&&this.updatepagerdetails){this.updatepagerdetails();if(this.autoheight){this._updatepageviews()}if(this.autorowheight){if(!this.autoheight){this._updatepageviews()}this._renderrows(this.virtualsizeinfo)}}if(this.showaggregates&&this._updateaggregates){this._updateaggregates()}this._addoverlayelement();if(this.scrollmode=="deferred"){this._addscrollelement()}if(this.showfilterrow&&this.filterable&&this.filterrow&&(f==undefined||f==true)){this._updatelistfilters(!l)}if(this.rendered){this.rendered("full")}this.__isRendered=true},_addoverlayelement:function(){if(this.autoheight){if(this._overlayElement){this._overlayElement.remove()}this._updateTouchScrolling();return}var d=b.jqx.utilities.getBrowser();if((d.browser=="msie"&&parseInt(d.version)<9)||this.isTouchDevice()){if(this._overlayElement){this._overlayElement.remove()}this._overlayElement=b("<div style='visibility: hidden; position: absolute; width: 100%; height: 100%;'></div>");this._overlayElement.css("background","white");this._overlayElement.css("z-index",18000);this._overlayElement.css("opacity",0.001);if(this.isTouchDevice()){if(this.vScrollBar.css("visibility")!=="hidden"||this.hScrollBar.css("visibility")!=="hidden"){var e=0;if(this.selectionmode=="checkbox"){e+=30}if(this.groupable||this.rowdetails){this._overlayElement.css("left",30*(this.groups.length+(this.rowdetails?1:0)))}var f=this._overlayElement.css("left");this._overlayElement.css("left",f+e)}else{if(this._overlayElement){this._overlayElement.remove()}}}else{this.content.prepend(this._overlayElement)}}this._updateTouchScrolling()},_addscrollelement:function(){if(this._scrollelement){this._scrollelement.remove()}if(this._scrollelementoverlay){this._scrollelementoverlay.remove()}this._scrollelementoverlay=b("<div style='visibility: hidden; position: absolute; width: 100%; height: 100%;'></div>");this._scrollelementoverlay.css("background","black");this._scrollelementoverlay.css("z-index",18000);this._scrollelementoverlay.css("opacity",0.1);this._scrollelement=b("<span style='visibility: hidden; top: 50%; right: 10px; position: absolute;'></span>");this._scrollelement.css("z-index",18005);this._scrollelement.addClass(this.toThemeProperty("jqx-button"));this._scrollelement.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._scrollelement.addClass(this.toThemeProperty("jqx-rc-all"));this._scrollelement.addClass(this.toThemeProperty("jqx-shadow"));this.content.prepend(this._scrollelement);this.content.prepend(this._scrollelementoverlay)},rendergridcontent:function(d,f){if(this.updating()){return false}if(d==undefined||d==null){d=false}this._requiresupdate=d;var h=this.prerenderrequired;if(this.prerenderrequired){this._arrange()}var g=this.that;var f=f;if(f==null||f==undefined){f=true}this.tableheight=null;g.virtualsizeinfo=g.virtualsizeinfo||g._calculatevirtualheight();if(g.pageable&&!g.autoheight){if(g.dataview.totalrows<g.pagesize){g._requiresupdate=true}}if(f){g._rendercolumnheaders()}else{if(this._rendersortcolumn){this._rendersortcolumn()}if(this._renderfiltercolumn){this._renderfiltercolumn()}}g._renderrows(g.virtualsizeinfo);if(this.gridcontent){if(this.gridcontent[0].scrollTop!=0){this.gridcontent[0].scrollTop=0}if(this.gridcontent[0].scrollLeft!=0){this.gridcontent[0].scrollLeft=0}}if(h){var e=this.tableheight;this._arrange();if(e!=this.tableheight&&this.autoheight){g._renderrows(g.virtualsizeinfo)}}if(this.rtl){this._renderhorizontalscroll()}if(this.autosavestate){if(this.initializedcall!=null){if(this.savestate){this.savestate()}}}return true},_updatecolumnwidths:function(){var l=this.host.width();var e=l;var j="";if(this.columns==undefined||this.columns.records==undefined){return}var n=this.that;var g=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;b.each(this.columns.records,function(p,q){if(!(this.hidden&&this.hideable)){if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){var q=0;var r=n.vScrollBar[0].style.visibility=="hidden"?0:n.scrollbarsize+5;if(n.scrollbarautoshow){r=0}var o=e;q=parseFloat(this.width)*o/100;r+=g;if(this._percentagewidth!=undefined){q=parseFloat(this._percentagewidth)*(o-r)/100}if(q<this.minwidth&&this.minwidth!="auto"){q=this.minwidth}if(q>this.maxwidth&&this.maxwidth!="auto"){q=this.maxwidth}l-=q}else{if(this.width!="auto"&&!this._width){l-=this.width}else{j+=this.text}}}});var f=this._gettableheight();if(!this.autoheight){if(this.virtualsizeinfo&&this.virtualsizeinfo.virtualheight>f){if(this.groupable&&this.groups.length>0){if(this.dataview&&this.dataview.loadedrootgroups&&!this.groupsexpandedbydefault){var m=this.dataview.loadedrootgroups.length*this.rowsheight;if(this.pageable){for(var d=0;d<this.dataview.rows.length;d++){if(this.dataview.rows[d].group&&this.dataview.rows[d].level===0){m+=this.rowsheight}}}if(m>f){l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}else{if(this.vScrollBar.css("visibility")=="visible"){l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}}}else{l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}}else{if(this.vScrollBar.css("visibility")!="hidden"){l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}}}}var g=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;e-=g;if(!this.columnsheader){return}var i=this.columnsheader.find("#columntable"+this.element.id);if(i.length==0){return}var h=0;var k=this;b.each(this.columns.records,function(p,t){var r=b(this.element);if(!this.hidden&&this.element.style.display==="none"){this.element.style.display="block"}var o=false;var s=this.width;if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){s=parseFloat(this._percentagewidth)*e/100}else{s=parseFloat(this.width)*e/100}o=true}if(this.width!="auto"&&!this._width&&!o){if(parseInt(r[0].style.width)!=this.width){r.width(this.width)}}else{if(o){if(s<this.minwidth&&this.minwidth!="auto"){s=this.minwidth;this.width=s}if(s>this.maxwidth&&this.maxwidth!="auto"){s=this.maxwidth;this.width=s}if(parseInt(r[0].style.width)!=s){r.width(s);this.width=s}}else{var q=Math.floor(l*(this.text.length/j.length));if(isNaN(q)){q=this.minwidth}if(q==Infinity){q=0}if(q<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);q=10+$element.width();$element.remove()}if(q<this.minwidth){q=this.minwidth}if(q>this.maxwidth){q=this.maxwidth}this._width="auto";this.width=q;r.width(this.width)}}if(parseInt(r[0].style.left)!=h){r.css("left",h)}if(!(this.hidden&&this.hideable)){h+=this.width}this._requirewidthupdate=true});this.columnsheader.width(2+h);i.width(this.columnsheader.width());if(h==0){this.columnsheader[0].style.visibility="hidden"}else{this.columnsheader[0].style.visibility="inherit"}this._resizecolumngroups();if(this.showfilterrow&&this.filterrow){this.filterrow.width(this.columnsheader.width());this._updatefilterrowui()}if(this.showeverpresentrow){if(this.everpresentrowposition!=="bottom"){this.addnewrowtop.width(this.columnsheader.width())}else{this.addnewrowbottom.width(this.columnsheader.width())}this._updateaddnewrowui()}if(this.autowidth){this._arrange()}},_rendercolumnheaders:function(){var x=this.that;if(!this.prerenderrequired){if(this._rendersortcolumn){this._rendersortcolumn()}if(this._renderfiltercolumn){this._renderfiltercolumn()}if(this.showfilterrow&&this.filterrow){this.filterrow.width(this.columnsheader.width());this._updatefilterrowui()}if(this.showeverpresentrow){if(this.everpresentrowposition!=="bottom"){this.addnewrowtop.width(this.columnsheader.width())}else{this.addnewrowbottom.width(this.columnsheader.width())}this._updateaddnewrowui()}return}this._columnsbydatafield=new Array();this.columnsheader.find("#columntable"+this.element.id).remove();var o=b('<div id="columntable'+this.element.id+'" style="height: 100%; position: relative;"></div>');o[0].cells=new Array();var A=0;var h=0;var u="";var F=this.host.width();var s=F;var g=new Array();var z=new Array();var t=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;b.each(this.columns.records,function(j,k){if(!(this.hidden&&this.hideable)){if(this.width!="auto"&&!this._width){if(this.width<this.minwidth&&this.minwidth!="auto"){F-=this.minwidth}else{if(this.width>this.maxwidth&&this.maxwidth!="auto"){F-=this.maxwidth}else{if(this.width.toString().indexOf("%")!=-1){var k=0;var p=x.vScrollBar[0].style.visibility=="hidden"?0:x.scrollbarsize+5;p+=t;k=parseFloat(this.width)*(s-p)/100;if(k<this.minwidth&&this.minwidth!="auto"){k=this.minwidth}if(k>this.maxwidth&&this.maxwidth!="auto"){k=this.maxwidth}F-=k}else{if(typeof this.width=="string"){this.width=parseInt(this.width)}F-=this.width}}}}else{u+=this.text}}if(this.pinned||this.grouped||this.checkboxcolumn){if(x._haspinned){this.pinned=true}g[g.length]=this}else{z[z.length]=this}});if(!this.rtl){for(var C=0;C<g.length;C++){this.columns.replace(C,g[C])}for(var B=0;B<z.length;B++){this.columns.replace(g.length+B,z[B])}}else{var y=0;g.reverse();for(var C=this.columns.records.length-1;C>=this.columns.records.length-g.length;C--){this.columns.replace(C,g[y++])}for(var B=0;B<z.length;B++){this.columns.replace(B,z[B])}}var n=this.headerZIndex;var r=x.groupable?x.groups.length:0;if(this.rowdetails&&this.showrowdetailscolumn){r++}var l=x.columnsheader.height();if(this.showfilterrow){if(!this.columngroups){l=this.columnsheight}else{l-=this.filterrowheight}}if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){l-=this.everpresentrowheight}var v=this._gettableheight();if(this.virtualsizeinfo&&this.virtualsizeinfo.virtualheight>v&&!this.scrollbarautoshow){if(this.groupable&&this.groups.length>0){if(this.dataview&&this.dataview.loadedrootgroups&&!this.groupsexpandedbydefault){var D=0;if(!this.pageable){var D=this.dataview.loadedrootgroups.length*this.rowsheight}else{if(this.pageable){for(var w=0;w<this.dataview.rows.length;w++){if(this.dataview.rows[w].group&&this.dataview.rows[w].level===0){D+=this.rowsheight}}}}if(D>v){F-=this.scrollbarsize+5;s-=this.scrollbarsize+5}}else{F-=this.scrollbarsize+5;s-=this.scrollbarsize+5}}else{if(!this.autoheight){F-=this.scrollbarsize+5;s-=this.scrollbarsize+5}}}s-=t;var d=function(j,k){var i=x.columngroupslevel*x.columnsheight;i=i-(k.level*x.columnsheight);return i};var f=document.createDocumentFragment();b.each(this.columns.records,function(V,T){this.height=x.columnsheight;if(x.columngroups){if(x.columngroups.length){this.height=d(this.datafield,this);l=this.height}}var Z=x.toTP("jqx-grid-column-header")+" "+x.toTP("jqx-widget-header");if(x.rtl){Z+=" "+x.toTP("jqx-grid-column-header-rtl")}var X=!x.rtl?150+n-1:150+n+1;var R=!x.rtl?n--:n++;var G=b('<div role="columnheader" style="z-index: '+R+';position: absolute; height: 100%;" class="'+Z+'"><div style="height: 100%; width: 100%;"></div></div>');if(x.columngroups){G[0].style.height=l+"px";G[0].style.bottom="0px";if(this.pinned){G[0].style.zIndex=X}}this.uielement=G;if(this.classname!=""&&this.classname){G.addClass(this.classname)}var O=this.width;var P=false;if(this.width===null){this.width="auto"}if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){O=parseFloat(this._percentagewidth)*s/100}else{O=parseFloat(this.width)*s/100}P=true}if(this.width!="auto"&&!this._width&&!P){if(O<this.minwidth&&this.minwidth!="auto"){O=this.minwidth;this.width=O}if(O>this.maxwidth&&this.maxwidth!="auto"){O=this.maxwidth;this.width=O}G[0].style.width=parseInt(O)+"px"}else{if(P){if(O<this.minwidth&&this.minwidth!="auto"){O=this.minwidth}if(O>this.maxwidth&&this.maxwidth!="auto"){O=this.maxwidth}if(this._percentagewidth==undefined||this.width.toString().indexOf("%")!=-1){this._percentagewidth=this.width}G.width(O);this.width=O}else{if(!this.hidden){var S=Math.floor(F*(this.text.length/u.length));if(isNaN(S)){S=this.minwidth}if(S<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);S=10+$element.width();$element.remove()}if(S<this.minwidth){S=this.minwidth}if(S>this.maxwidth){S=this.maxwidth}this._width="auto";this.width=S;O=this.width;G.width(this.width)}}}if(this.hidden&&this.hideable){G.css("display","none")}var p=b(G.children()[0]);var W=x.rtl?x.toTP("jqx-grid-column-menubutton")+" "+x.toTP("jqx-grid-column-menubutton-rtl"):x.toTP("jqx-grid-column-menubutton");W+=" "+x.toTP("jqx-icon-arrow-down");var J=b('<div style="height: '+l+'px; display: none; left: 100%; top: 0%; position: absolute;"><div class="'+W+'" style="width: 100%; height:100%;"></div></div>');if(!x.enableanimations){J.css("margin-left",-16)}if(x.rtl){J.css("left","0px")}this.columnsmenu=J[0];o[0].cells[V]=G[0];J[0].style.width=parseInt(x.columnsmenuwidth)+"px";var I=x.columnsmenu;var q=false;var U=false;var Q=(x.groupable&&r>0&&A<r)||(x.rowdetails&&A<r);if(x.rtl){Q=(x.groupable&&r>0&&A<r)||(x.rowdetails&&A<r);Q&=V>x.columns.records.length-1-r}if(Q){A++;I&=false;this.sortable=false;this.editable=false;U=true}else{var L=this.renderer!=null?this.renderer(this.text,this.align,l):x._rendercolumnheader(this.text,this.align,l,x);if(L==null){L=x._rendercolumnheader(this.text,this.align,l,x)}if(this.renderer!=null){L=b(L)}I&=true;q=true}if(x.WinJS){MSApp.execUnsafeLocalFunction(function(){p.append(b(L))})}else{if(this.renderer){p.append(b(L))}else{if(L){p[0].innerHTML=L}}}if(L!=null){var N=b('<div class="iconscontainer" style="height: '+l+'px; margin-left: -32px; display: block; position: absolute; left: 100%; top: 0%; width: 32px;"><div class="filtericon '+x.toTP("jqx-widget-header")+'" style="height: '+l+'px; float: right; display: none; width: 16px;"><div class="'+x.toTP("jqx-grid-column-filterbutton")+'" style="width: 100%; height:100%;"></div></div><div class="sortasc '+x.toTP("jqx-widget-header")+'" style="height: '+l+'px; float: right; display: none; width: 16px;"><div class="'+x.toTP("jqx-grid-column-sortascbutton")+" "+x.toTP("jqx-icon-arrow-up")+'" style="width: 100%; height:100%;"></div></div><div class="sortdesc '+x.toTP("jqx-widget-header")+'" style="height: '+l+'px; float: right; display: none; width: 16px;"><div class="'+x.toTP("jqx-grid-column-sortdescbutton")+" "+x.toTP("jqx-icon-arrow-down")+'" style="width: 100%; height:100%;"></div></div></div>');J.addClass(x.toTP("jqx-widget-header"));p.append(N);var aa=N.children();this.sortasc=aa[1];this.sortdesc=aa[2];this.filtericon=aa[0];this.iconscontainer=N;if(x.rtl){N.css("margin-left","0px");N.css("left","0px");b(this.sortasc).css("float","left");b(this.filtericon).css("float","left");b(this.sortdesc).css("float","left")}if(!x.autoshowfiltericon&&this.filterable){b(this.filtericon).css("display","block")}}this.element=G[0];if(I){x._handlecolumnsmenu(x,p,G,J,this);if(!this.menu){J.hide()}}f.appendChild(G[0]);if(x.groupable&&q){G[0].id=x.dataview.generatekey();if(x._handlecolumnstogroupsdragdrop){x._handlecolumnstogroupsdragdrop(this,G)}else{throw new Error("jqxGrid: Missing reference to jqxgrid.grouping.js.")}}if(x.columnsreorder&&this.draggable&&x._handlecolumnsdragreorder){x._handlecolumnsdragreorder(this,G)}var Y=this;x.addHandler(G,"click",function(i){if(Y.checkboxcolumn){return true}if(x.sorttogglestates>0&&x._togglesort){if(!x._loading){if(x.suspendClick){return true}x._togglesort(Y)}}i.preventDefault();x._raiseEvent(7,{column:Y.getcolumnproperties(),datafield:Y.datafield,originalEvent:i})});if(Y.resizable&&x.columnsresize&&!U){var H=false;var j="mousemove";if(x.isTouchDevice()&&x.touchmode!==true){H=true;j=b.jqx.mobile.getTouchEventName("touchstart")}x.addHandler(G,j,function(ab){var i=parseInt(ab.pageX);var ad=5;var ag=parseInt(G.coord().left);if(x.hasTransform){ag=b.jqx.utilities.getOffset(G).left}if(x.resizing){return true}if(x._handlecolumnsresize){if(H){var ac=x.getTouches(ab);var af=ac[0];i=af.pageX;ad=40;if(i>=ag+Y.width-ad){x.resizablecolumn={columnelement:G,column:Y};G.css("cursor","col-resize")}else{G.css("cursor","");x.resizablecolumn=null}return true}var ae=Y.width;if(x.rtl){ae=0}if(i>=ag+ae-ad){if(i<=ag+ae+ad){x.resizablecolumn={columnelement:G,column:Y};G.css("cursor","col-resize");return false}else{G.css("cursor","");x.resizablecolumn=null}}else{G.css("cursor","");if(i<ag+ae-ad){if(!Y._animating&&!Y._menuvisible){G.mouseenter()}}x.resizablecolumn=null}}})}G.css("left",h);if(!(this.hidden&&this.hideable)){h+=O}if(Y.rendered){var M=Y.rendered(b(p[0].firstChild),Y.align,l);if(M&&N!=null){N.hide()}}if(Y.checkboxcolumn){if(N){N.hide()}if(!x.host.jqxCheckBox){throw new Error("jqxGrid: Missing reference to jqxcheckbox.js")}p.html('<div style="cursor: pointer; margin-left: 5px; top: 50%; margin-top: -8px; position: relative;"></div>');var k=p.find("div:first");k.jqxCheckBox({_canFocus:false,disabled:x.disabled,disabledContainer:true,theme:x.theme,enableContainerClick:false,width:16,height:16,animationShowDelay:0,animationHideDelay:0});Y.checkboxelement=k;var K=k.data().jqxCheckBox.instance;x._checkboxcolumn=Y;K.updated=function(ab,i,ac){x._checkboxcolumnupdating=true;if(x.disabled){k.jqxCheckBox({disabled:x.disabled});i=ac}if(i){x.selectallrows()}else{x.unselectallrows()}x._checkboxcolumnupdating=false}}});if(h>0){this.columnsheader.width(2+h)}else{this.columnsheader.width(h)}o[0].appendChild(f);this.columnsrow=o;x.columnsheader.append(o);if(this.showfilterrow&&this._updatefilterrow){if(!this.columngroups){o.height(this.columnsheight)}else{o.height(this.columngroupslevel*this.columnsheight)}if(!this.filterrow){var E=b("<div style='position: relative !important; '></div>");E[0].id="filterrow."+this.element.id;E.height(this.filterrowheight);this.filterrow=E}this.filterrow.width(2+h);this.columnsheader.append(this.filterrow);this._updatefilterrow()}if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){if(!this.columngroups){o.height(this.columnsheight)}else{o.height(this.columngroupslevel*this.columnsheight)}if(!this.addnewrowtop){var m=b("<div style='position: relative !important; z-index:"+this.headerZIndex+";'></div>");m[0].id="addnewrowtop."+this.element.id;m.height(this.everpresentrowheight);this.addnewrowtop=m}this.addnewrowtop.width(2+h);if(this.everpresentrowposition=="topAboveFilterRow"){if(this.filterrow){this.addnewrowtop.insertBefore(this.filterrow)}else{this.columnsheader.append(this.addnewrowtop)}}else{this.columnsheader.append(this.addnewrowtop)}this._updateaddnewrow()}else{if(this.showeverpresentrow&&this.everpresentrowposition==="bottom"){if(!this.addnewrowbottom){var e=b("<div style='position: relative !important; z-index:"+this.headerZIndex+";'></div>");e[0].id="addnewrowbottom."+this.element.id;e.height(this.everpresentrowheight);this.addnewrowbottom=e}this.addnewrowbottom.width(2+h);this.addnewrow.append(this.addnewrowbottom);this._updateaddnewrow()}}if(h==0){o[0].style.visibility="hidden"}else{o[0].style.visibility="inherit"}o.width(h);if(this._handlecolumnsdragdrop){this._handlecolumnsdragdrop()}if(this._handlecolumnsreorder){this._handlecolumnsreorder()}if(this._rendersortcolumn){this._rendersortcolumn()}if(this._renderfiltercolumn){this._renderfiltercolumn()}if(this._handlecolumnsresize){this._handlecolumnsresize()}if(this.columngroups){this._rendercolumngroups()}if(this._updatecheckboxselection){this._updatecheckboxselection()}},_rendercolumngroups:function(){if(!this.columngroups){return}var p=0;for(var m=0;m<this.columns.records.length;m++){if(this.columns.records[m].pinned){p++}}var u=this.headerZIndex-p+this.columns.records.length;var v=this.that;var h=v.toTP("jqx-grid-column-header")+" "+v.toTP("jqx-grid-columngroup-header")+" "+v.toTP("jqx-widget-header");if(v.rtl){h+=" "+v.toTP("jqx-grid-columngroup-header-rtl")}var f=this.columnsheader.find("#columntable"+this.element.id);f.find("jqx-grid-columngroup-header").remove();for(var k=0;k<this.columngroupslevel-1;k++){for(var m=0;m<this.columngroups.length;m++){var r=this.columngroups[m];var d=r.level;if(d!==k){continue}var q=d*this.columnsheight;var e=99999;if(r.groups){var t=function(y){var x=0;for(var w=0;w<y.groups.length;w++){var i=y.groups[w];if(!i.groups){if(!i.hidden){x+=i.width;e=Math.min(parseFloat(i.element.style.left),e)}}else{x+=t(i)}}return x};r.width=t(r);r.left=e;var s=this.columnsheight;var n=u--;var g=b('<div role="columnheader" style="z-index: '+n+';position: absolute;" class="'+h+'"></div>');var l=b(this._rendercolumnheader(r.text,r.align,this.columnsheight,this));if(r.renderer){var l=b("<div style='height: 100%; width: 100%;'></div>");var o=r.renderer(r.text,r.align,s);l.html(o)}g.append(l);g[0].style.left=e+"px";if(e===0){g[0].style.borderLeftColor="transparent"}g[0].style.top=q+"px";g[0].style.height=s+"px";g[0].style.width=-1+r.width+"px";f.append(g);r.element=g;if(r.rendered){r.rendered(l,r.align,s)}}}}},_resizecolumngroups:function(){if(!this.columngroups){return}for(var e=0;e<this.columngroups.length;e++){var k=this.columngroups[e];var l=k.level;var j=l*this.columnsheight;var h=99999;if(k.groups){var g=function(o){var n=0;for(var m=0;m<o.groups.length;m++){var i=o.groups[m];if(!i.groups){if(!i.hidden){n+=i.width;h=Math.min(parseFloat(i.element.style.left),h)}}else{n+=g(i)}}return n};k.width=g(k);k.left=h;var d=this.columnsheight;var f=k.element;f[0].style.left=h+"px";f[0].style.top=j+"px";f[0].style.height=d+"px";f[0].style.width=-1+k.width+"px"}}},_handlecolumnsmenu:function(p,g,h,k,m){p.dragmousedown=null;k[0].id=p.dataview.generatekey();g.append(k);h[0].columnsmenu=k[0];m.element=h[0];var l=this.columnsmenuwidth+1;var o=function(){if(!m.menu){return false}if(!p.resizing){if(m._menuvisible&&p._hasOpenedMenu){return false}m._animating=true;if(p.menuitemsarray&&p.menuitemsarray.length>0){if(!p.enableanimations){k.css("display","block");var q=!p.rtl?-48:16;m.iconscontainer.css("margin-left",q+"px");m._animating=false;m._menuvisible=true}else{k.css("display","block");k.stop();m.iconscontainer.stop();if(!p.rtl){k.css("margin-left","0px");k.animate({"margin-left":-l},"fast",function(){k.css("display","block");m._animating=false;m._menuvisible=true})}else{k.css("margin-left",-l);k.animate({"margin-left":"0px"},"fast",function(){k.css("display","block");m._animating=false;m._menuvisible=true})}var q=!p.rtl?-(32+l):l;m.iconscontainer.animate({"margin-left":q},"fast")}}}};var f="mouseenter";if(p.isTouchDevice()){f="touchstart"}p.addHandler(h,f,function(r){var q=parseInt(r.pageX);var t=p.columnsresize&&m.resizable?3:0;var v=parseInt(h.coord().left);if(p.hasTransform){v=b.jqx.utilities.getOffset(h).left}var u=m.width;if(p.rtl){u=0}if(t!=0){if(q>=v+u-t){if(q<=v+u+t){return false}}}var s=p.vScrollInstance.isScrolling();if(m.menu&&p.autoshowcolumnsmenubutton&&!s&&!p.disabled){o()}});if(!p.autoshowcolumnsmenubutton){k.css("display","block");var e=!p.rtl?-48:16;m.iconscontainer.css("margin-left",e+"px");if(!p.rtl){k.css({"margin-left":-l})}else{k.css({"margin-left":"0px"})}}p.addHandler(h,"mouseleave",function(q){if(p.menuitemsarray&&p.menuitemsarray.length>0&&m.menu){var s=b.data(document.body,"contextmenu"+p.element.id);if(s!=undefined&&k[0].id==s.columnsmenu.id){return}if(p.autoshowcolumnsmenubutton){if(!p.enableanimations){k.css("display","none");var r=!p.rtl?-32:0;m.iconscontainer.css("margin-left",r+"px");m._menuvisible=false}else{if(!p.rtl){k.css("margin-left",-l)}else{k.css("margin-left","0px")}k.stop();m.iconscontainer.stop();if(!p.rtl){k.animate({"margin-left":0},"fast",function(){k.css("display","none");m._menuvisible=false})}else{k.animate({"margin-left":-l},"fast",function(){k.css("display","none");m._menuvisible=false})}var r=!p.rtl?-32:0;m.iconscontainer.animate({"margin-left":r},"fast")}}}});var j=true;var d="";var i=b(m.filtericon);p.addHandler(k,"mousedown",function(q){if(!p.gridmenu){p._initmenu()}j=!b.data(p.gridmenu[0],"contextMenuOpened"+p.gridmenu[0].id);d=b.data(document.body,"contextmenu"+p.element.id);if(d!=null){d=d.column.datafield}});p.addHandler(i,"mousedown",function(q){if(!p.gridmenu){p._initmenu()}j=!b.data(p.gridmenu[0],"contextMenuOpened"+p.gridmenu[0].id);d=b.data(document.body,"contextmenu"+p.element.id);if(d!=null){d=d.column.datafield}});var n=function(){if(!m.menu){return false}if(!p.gridmenu){p._initmenu()}if(p.disabled){return false}for(var v=0;v<p.columns.records.length;v++){if(p.columns.records[v].datafield!=m.datafield){p.columns.records[v]._menuvisible=false}}var t=k.coord(true);var A=k.height();if(!j){j=true;if(d==m.datafield){p._closemenu();return false}}var x=p.host.coord(true);if(p.hasTransform){x=b.jqx.utilities.getOffset(p.host);t=b.jqx.utilities.getOffset(k)}if(x.left+p.host.width()>parseInt(t.left)+p.gridmenu.width()){p.gridmenu.jqxMenu("open",t.left,t.top+A)}else{p.gridmenu.jqxMenu("open",k.width()+t.left-p.gridmenu.width(),t.top+A)}if(p.gridmenu.width()<100){p._arrangemenu()}p._hasOpenedMenu=true;var y=p._getmenuitembyindex(0);var r=p._getmenuitembyindex(1);var C=p._getmenuitembyindex(2);var z=p._getmenuitembyindex(3);var q=p._getmenuitembyindex(4);var D=p._getmenuitembyindex(5);if(y!=null&&r!=null&&C!=null){var u=m.sortable&&p.sortable;p.gridmenu.jqxMenu("disable",y.id,!u);p.gridmenu.jqxMenu("disable",r.id,!u);p.gridmenu.jqxMenu("disable",C.id,!u);if(m.displayfield!=undefined){if(p.sortcolumn==m.displayfield){var w=p.getsortinformation();if(u){if(w.sortdirection.ascending){p.gridmenu.jqxMenu("disable",y.id,true)}else{p.gridmenu.jqxMenu("disable",r.id,true)}}}else{p.gridmenu.jqxMenu("disable",C.id,true)}}}if(z!=null&&q!=null){if(!p.groupable||!m.groupable){p.gridmenu.jqxMenu("disable",q.id,true);p.gridmenu.jqxMenu("disable",z.id,true)}else{if(p.groups&&p.groups.indexOf(m.datafield)!=-1){p.gridmenu.jqxMenu("disable",z.id,true);p.gridmenu.jqxMenu("disable",q.id,false)}else{p.gridmenu.jqxMenu("disable",z.id,false);p.gridmenu.jqxMenu("disable",q.id,true)}}}if(D!=null){p.menuOwner=m;p._updatefilterpanel(p,D,m);var s=0;if(p.sortable&&p._togglesort&&p.showsortmenuitems){s+=3}if(p.groupable&&p.addgroup&&p.showgroupmenuitems){s+=2}var B=s*27+3;if(b.jqx.browser.msie&&b.jqx.browser.version<8){B+=20;b(D).height(190)}if(p.filterable&&p.showfiltermenuitems){if(!m.filterable){p.gridmenu.height(B);b(D).css("display","none")}else{p.gridmenu.height(B+180);b(D).css("display","block")}}}if(p.columnmenuopening){var E=p.columnmenuopening(p.gridmenu,m.displayfield,p.gridmenu.height());if(false===E){p._closemenu()}}b.data(document.body,"contextmenu"+p.element.id,{column:m,columnsmenu:k[0]})};p.addHandler(i,"click",function(q){if(!m.menu){return false}if(!p.showfilterrow){if(k[0].style.display!="block"){h.trigger("mouseenter")}setTimeout(function(){if(k[0].style.display!="block"){h.trigger("mouseenter")}n()},200)}return false});p.addHandler(k,"click",function(q){if(!m.menu){return false}n();return false});if(p.isTouchDevice()){p.addHandler(k,b.jqx.mobile.getTouchEventName("touchstart"),function(q){if(!m.menu){return false}if(!p._hasOpenedMenu){n()}else{p._closemenu()}return false})}},_removecolumnhandlers:function(h){var e=this.that;var f=b(h.element);if(f.length>0){e.removeHandler(f,"mouseenter");e.removeHandler(f,"mouseleave");var g=b(h.filtericon);e.removeHandler(g,"mousedown");e.removeHandler(g,"click");e.removeHandler(f,"click");e.removeHandler(f,"mousemove");if(e.columnsreorder){e.removeHandler(f,"mousedown.drag");e.removeHandler(f,"mousemove.drag")}e.removeHandler(f,"dragstart");if(f[0].columnsmenu){var d=b(f[0].columnsmenu);e.removeHandler(d,"click");e.removeHandler(d,"mousedown");e.removeHandler(d,b.jqx.mobile.getTouchEventName("touchstart"))}}},_rendercolumnheader:function(h,i,e,d){var g="4px";if(d.columngroups){g=(e/2-this._columnheight/2);if(g<0){g=4}g+="px"}else{if(this.columnsheight!=25){g=(this.columnsheight/2-this._columnheight/2);if(g<0){g=4}g+="px"}}if(this.enableellipsis){return'<div style="padding-bottom: 2px; overflow: hidden; text-overflow: ellipsis; text-align: '+i+"; margin-left: 4px; margin-right: 2px; margin-bottom: "+g+"; margin-top: "+g+';"><span style="text-overflow: ellipsis; cursor: default;">'+h+"</span></div>"}if(i=="center"||i=="middle"){return'<div style="padding-bottom: 2px; text-align: center; margin-top: '+g+';"><a href="#">'+h+"</a></div>"}var f='<a style="margin-top: '+g+"; float: "+i+';" href="#">'+h+"</a>";return f},_renderrows:function(f,h,l){var r=this.that;if((this.pageable||this.groupable)&&(this.autoheight||this.autorowheight)){if(this.table!=null&&this.table[0].rows!=null&&this.table[0].rows.length<this.dataview.rows.length){r.prerenderrequired=true}}if(!this.pageable&&(this.autoheight||this.autorowheight)&&(this.virtualmode||this.unboundmode)){var p=this.source.totalrecords;if(!isNaN(p)){if(this.table!=null&&this.table[0].rows!=null&&this.table[0].rows.length!=p){r.prerenderrequired=true}}}if((this.autoheight||this.autorowheight)&&!r.prerenderrequired){if(this.table&&this.table[0].rows){if(this.table[0].rows.length<this.dataview.records.length){if(this.pageable&&this.table[0].rows.length<this.dataview.pagesize){r.prerenderrequired=true}else{if(!this.pageable){r.prerenderrequired=true}}}if(this.table[0].rows.length<this.dataview.cachedrecords.length){if(this.pageable&&this.table[0].rows.length<this.dataview.pagesize){r.prerenderrequired=true}else{if(!this.pageable){r.prerenderrequired=true}}}}}r._prerenderrows(f);if(r._requiresupdate){r._requiresupdate=false;r._updatepageviews()}var q=function(){if(r._loading){return}if(r.WinJS){MSApp.execUnsafeLocalFunction(function(){r._rendervisualrows()})}else{r._rendervisualrows()}if(r.virtualmode&&r.showaggregates&&r._updateaggregates){r.refreshaggregates()}};var t=b.jqx.browser.msie&&b.jqx.browser.version<10;if(this.virtualmode){var i=function(){if(r.rendergridrows){var w=r._startboundindex;if(w==undefined){w=0}var u=w+1+r.dataview.pagesize;if(w!=null&&u!=null){var v=r.source._source?true:false;var x=!v?r.source.recordstartindex:r.source._source.recordstartindex;if(x!=w||h==true){if(!v){r.source.recordstartindex=w;r.source.recordendindex=u}else{if(u>=r.source._source.totalrecords){u=r.source._source.totalrecords;w=u-r.dataview.pagesize-1;if(w<0){w=0}if(r.source._source.recordendindex==u&&r.source._source.recordstartindex==w){return}}r.source._source.recordstartindex=w;r.source._source.recordendindex=u}r.updatebounddata("cells")}}}};if(this.loadondemand){q();i();this.loadondemand=false}var j=this._browser==undefined?this._isIE10():this._browser;if(this.editable&&this.editcell&&!this.vScrollInstance.isScrolling()&&!this.hScrollInstance.isScrolling()){q()}else{if(this.autoheight){q()}else{if(j||t||(navigator&&navigator.userAgent.indexOf("Safari")!=-1)){if(this._scrolltimer!=null){clearTimeout(this._scrolltimer)}this._scrolltimer=setTimeout(function(){q()},5)}else{q()}}}}else{if(this.scrollmode=="deferred"&&(this.hScrollInstance.isScrolling()||this.vScrollInstance.isScrolling())){if(this._scrolltimer!=null){clearInterval(this._scrolltimer)}var s=this._getfirstvisualrow();if(s!=null){var m=function(z){if(s==null){return""}var y="<table>";var w=r.deferreddatafields;if(w==null){if(r.columns.records.length>0){w=new Array();w.push(r.columns.records[0].displayfield)}}for(var v=0;v<w.length;v++){var A=w[v];var x=r._getcolumnbydatafield(A);if(x){var u=r._getcellvalue(x,s);if(x.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(u)){u=b.jqx.dataFormat.formatdate(u,x.cellsformat,r.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(u)){u=b.jqx.dataFormat.formatnumber(u,x.cellsformat,r.gridlocalization)}}}}y+="<tr><td>"+u+"</td></tr>"}}y+="</table>";return y};var k=this.scrollfeedback?this.scrollfeedback(s.bounddata):m(s.bounddata);if(k!=this._scrollelementcontent){this._scrollelement[0].innerHTML=k;this._scrollelementcontent=k}}this._scrollelement.css("visibility","visible");this._scrollelementoverlay.css("visibility","visible");this._scrollelement.css("margin-top",-this._scrollelement.height()/2);this._scrolltimer=setInterval(function(){if(!r.hScrollInstance.isScrolling()&&!r.vScrollInstance.isScrolling()){q();r._scrollelement.css("visibility","hidden");r._scrollelementoverlay.css("visibility","hidden");clearInterval(r._scrolltimer);if(s){r.ensurerowvisible(s.visibleindex)}}},100);return}if(navigator&&navigator.userAgent.indexOf("Chrome")==-1&&navigator.userAgent.indexOf("Safari")!=-1){this._updatedelay=1}if(this.touchDevice!=undefined&&this.touchDevice==true){this._updatedelay=5}var j=this._browser==undefined?this._isIE10():this._browser;if(j||t){this._updatedelay=5}if((j)&&this.hScrollInstance.isScrolling()){q();return}if(b.jqx.browser.mozilla&&this._updatedelay==0&&(this.vScrollInstance.isScrolling()||this.hScrollInstance.isScrolling())){this._updatedelay=0}if(this.updatedelay!=null){this._updatedelay=this.updatedelay}if(this._updatedelay==0){q()}else{var d=this._jqxgridrendertimer;if(d!=null){clearTimeout(d)}if(this.vScrollInstance.isScrolling()||this.hScrollInstance.isScrolling()){if(this._updatedelay){d=setTimeout(function(){q()},this._updatedelay)}else{d=null;q()}this._jqxgridrendertimer=d}else{this._jqxgridrendertimer=d;q()}}}if(r.autorowheight&&!r.autoheight){if(this._pageviews.length>0){var e=this._gettableheight();var n=this._pageviews[0].height;if(n>e){if(this.pageable&&this.gotopage){n=this._pageviews[0].height;if(n<0){n=this._pageviews[0].height}}if(this.vScrollBar.css("visibility")!="visible"){this.vScrollBar.css("visibility","visible")}if(n<=e||this.autoheight){this.vScrollBar.css("visibility","hidden")}if(n-e>0){if(this.scrollmode!="deferred"){var o=n-e;var g=this.vScrollInstance.max;this.vScrollBar.jqxScrollBar({max:o});if(Math.round(o)!=Math.round(g)){this.vScrollBar.jqxScrollBar({value:0})}}}else{this.vScrollBar.jqxScrollBar({value:0,max:n})}}else{if(!this._loading){this.vScrollBar.css("visibility","hidden")}this.vScrollBar.jqxScrollBar({value:0})}this._arrange();if(this.virtualsizeinfo){this.virtualsizeinfo.virtualheight=n}}}},scrolling:function(){var e=this.vScrollInstance.isScrolling();var d=this.hScrollInstance.isScrolling();return{vertical:e,horizontal:d}},_renderhorizontalscroll:function(){var t=this.hScrollInstance;var u=t.value;if(this.hScrollBar.css("visibility")==="hidden"){t.value=0;u=0}var k=parseInt(u);if(this.table==null){return}var q=this.table[0].rows.length;var p=this.columnsrow;var r=this.groupable&&this.groups.length>0?this.groups.length:0;var l=this.columns.records.length-r;var f=this.columns.records;var n=this.dataview.rows.length==0;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){k=t.max-k}}if(n&&!this._haspinned){for(var w=0;w<q;w++){var s=this.table[0].rows[w];for(var v=0;v<r+l;v++){var d=s.cells[v];if(d!=undefined){var g=f[v];if(g.pinned){d.style.marginLeft=k+"px";if(w==0){var e=p[0].cells[v];e.style.marginLeft=k+"px"}}}}}this.table[0].style.marginLeft=-k+"px";p[0].style.marginLeft=-k+"px"}else{if(this._haspinned||this._haspinned==undefined){for(var w=0;w<q;w++){var s=this.table[0].rows[w];for(var v=0;v<r+l;v++){var d=s.cells[v];if(d!=undefined){var g=f[v];if(g.pinned){if(k==0&&d.style.marginLeft==""){continue}var h=null;var x=null;var o=null;if(this.showeverpresentrow&&this.addnewrowtop){if(this.addnewrowtop[0].cells){o=this.addnewrowtop[0].cells[v]}}if(this.showfilterrow&&this.filterrow){if(this.filterrow[0].cells){x=this.filterrow[0].cells[v]}}if(this.showaggregates){if(this.statusbar[0].cells){h=this.statusbar[0].cells[v]}}if(!this.rtl){d.style.marginLeft=k+"px";if(w==0){var e=p[0].cells[v];e.style.marginLeft=k+"px";if(h){h.style.marginLeft=k+"px"}if(x){x.style.marginLeft=k+"px"}if(o){o.style.marginLeft=k+"px"}}}else{d.style.marginLeft=-parseInt(u)+"px";if(w==0){var e=p[0].cells[v];e.style.marginLeft=-parseInt(u)+"px";if(h){h.style.marginLeft=-parseInt(u)+"px"}if(x){x.style.marginLeft=-parseInt(u)+"px"}if(o){o.style.marginLeft=-parseInt(u)+"px"}}}}}}}this.table[0].style.marginLeft=-k+"px";p[0].style.marginLeft=-k+"px"}else{if(this._haspinned==false){this.table[0].style.marginLeft=-k+"px";p[0].style.marginLeft=-k+"px"}}}if(this.showaggregates){if(this.statusbar[0].cells){var m=0;if(this.rtl){if(this.vScrollBar.css("visibility")!="hidden"){if(this.hScrollBar.css("visibility")!="hidden"){m=2+parseInt(this.hScrollBar.css("left"))}}}this.statusbar[0].style.marginLeft=-k+m+"px"}}if(this.showfilterrow&&this.filterrow){if(this.filterrow[0].cells){this.filterrow[0].style.marginLeft=-k+"px"}}if(this.showeverpresentrow&&this.addnewrowtop){if(this.addnewrowtop[0].cells){this.addnewrowtop[0].style.marginLeft=-k+"px"}}},_updaterowdetailsvisibility:function(){if(this.rowdetails){for(var d=0;d<this._rowdetailselementscache.length;d++){b(this._rowdetailselementscache[d]).css("display","none")}}},_getvisualcolumnsindexes:function(e,n,i,m,d,l){if(this.rowdetails||this.rtl||this.editcell||(this.width&&this.width.toString().indexOf("%")>=0)||this.exporting){return{start:0,end:i+m}}var f=0;var k=-1;var g=i+m;var o=false;if(this.autorowheight){return{start:0,end:i+m}}if(!d){for(var h=0;h<i+m;h++){var p=h;if(!o){if(this.columns.records[h].pinned&&l){o=true}}if(!this.columns.records[h].hidden){f+=this.columns.records[h].width}if(f>=e&&k==-1){k=h}if(f>n+e){g=h;break}}}g++;if(g>i+m){g=i+m}if(k==-1||o){k=0}return{start:k,end:g}},_getvirtualcolumnsindexes:function(e,m,i,l,d){if(this.rtl||this.editcell||this.exporting){return{start:0,end:i+l}}var f=0;var k=-1;var g=i+l;if(this.autorowheight){return{start:0,end:i+l}}if(!d){for(var h=0;h<i+l;h++){var n=h;if(!this.columns.records[h].hidden){f+=this.columns.records[h].width}if(f>=e&&k==-1){k=h}if(f>m+e){g=h;break}}}g++;if(g>i+l){g=i+l}if(k==-1){k=0}return{start:k,end:g}},_getfirstvisualrow:function(){var e=this.vScrollInstance;var g=e.value;var f=parseInt(g);if(this._pagescache.length==0){this.dataview.updateview();this._loadrows()}if(this.vScrollBar[0].style.visibility!="visible"){f=0}if(!this.pageable){var d=this._findvisiblerow(f,this._pageviews);if(d==-1){return null}if(d!=this.dataview.pagenum){this.dataview.pagenum=d;this.dataview.updateview();this._loadrows()}else{if(!this._pagescache[this.dataview.pagenum]){this._loadrows()}}}var h=this._findvisiblerow(f,this._pagescache[this.dataview.pagenum]);var i=this._pagescache[this.dataview.pagenum];if(i&&i[0]){return i[h]}},_rendervisualrows:function(){if(!this.virtualsizeinfo){return}var Y=this.vScrollInstance;var p=this.hScrollInstance;var j=Y.value;var C=p.value;var o=parseInt(j);var l=parseInt(C);var x=this._gettableheight();var J=this._hostwidth!=undefined?this._hostwidth:this.host.width();if(this.hScrollBar[0].style.visibility=="visible"){x+=29}if(this.scrollmode=="deferred"&&this._newmax!=0){if(o>this._newmax&&this._newmax!=null){o=this._newmax}}var ak=Y.isScrolling()||p.isScrolling()||this._keydown;var D=this.groupable&&this.groups.length>0;this.visiblerows=new Array();this.hittestinfo=new Array();if(this.editcell&&this.editrow==undefined){this._hidecelleditor(false)}if(this.editrow!=undefined){this._hideeditors()}if(this.virtualmode&&!this.pageable){this._pagescache=new Array()}if(this._pagescache.length==0){this.dataview.updateview();this._loadrows()}if(this.vScrollBar[0].style.visibility=="hidden"){o=0}if(!this.pageable){var L=this._findvisiblerow(o,this._pageviews);if(L==-1){this._clearvisualrows();this._renderemptyrow();this._updaterowdetailsvisibility();return}if(L!=this.dataview.pagenum){this.dataview.pagenum=L;this.dataview.updateview();this._loadrows()}else{if(!this._pagescache[this.dataview.pagenum]){this._loadrows()}}}var am=this.groupable&&this.groups.length>0?this.groups.length:0;if(!this.columns.records){return}var r=this.columns.records.length-am;var ac=this._findvisiblerow(o,this._pagescache[this.dataview.pagenum]);var M=this._pagescache[this.dataview.pagenum];var S=ac;if(S<0){S=0}var af=0;var ab=0;var Q=0;var e=0;var U=this.virtualsizeinfo.visiblerecords;var P=this.groupable?this.groups.length:0;var B=this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");if(this.rtl){B+=" "+this.toTP("jqx-grid-cell-rtl")}if((this.autoheight||this.autorowheight)&&this.pageable){if(!this.groupable||(this.groupable&&this.groups.length===0)){U=this.dataview.pagesize}}if(D){B=" "+this.toTP("jqx-grid-group-cell")}if(this.isTouchDevice()){B+=" "+this.toTP("jqx-touch")}if(this.autorowheight){B+=" jqx-grid-cell-wrap"}var O=this.rowsheight;var G=S;var al=this._rendercell;var u=true;var q=this._getvisualcolumnsindexes(l,J,am,r,D,true);var d=q.start;var aa=q.end;var t=this._getvirtualcolumnsindexes(l,J,am,r,D);var I=t.start;var h=t.end;var ae=b.jqx.browser.msie&&b.jqx.browser.version<9;if((this.autoheight||this.pageable)&&this.autorowheight){if(this._pageviews[0]){this._oldpageviewheight=this._pageviews[0].height}}if(this.autorowheight){S=0}if(S>=0){this._updaterowdetailsvisibility();this._startboundindex=M!=null?M[S].bounddata.boundindex:0;this._startvisibleindex=M!=null?M[S].bounddata.visibleindex:0;var A=this.table[0].rows;if(this.columns.records.length>10&&this.enablecolumnsvirtualization){var H=function(i){if(i.parentNode&&i.parentNode.nodeName!="#document-fragment"){return true}return false};for(var ag=0;ag<A.length;ag++){var k=A[ag];for(var V=0;V<I;V++){var ai=V;if(this.columns.records[ai].pinned){continue}if(this.columns.records[ai].datafield==null){continue}var ah=k.cells[ai];if(H(ah)){ah.parentNode.removeChild(ah)}var R=this.columns.records[ai].element;if(H(R)){this.columnsrow[0].removeChild(R)}if(this.filterrow){if(H(this.filterrow[0].cells[ai])&&this.columns.records[ai].filterable){this.filterrow[0].cells[ai].parentNode.removeChild(this.filterrow[0].cells[ai])}}}for(var V=h;V<this.columns.records.length;V++){var ai=V;if(this.columns.records[ai].pinned){continue}if(this.columns.records[ai].datafield==null){continue}var ah=k.cells[ai];if(H(ah)){ah.parentNode.removeChild(ah)}var R=this.columns.records[ai].element;if(H(R)){this.columnsrow[0].removeChild(R)}if(this.filterrow){if(H(this.filterrow[0].cells[ai])&&this.columns.records[ai].filterable){this.filterrow[0].cells[ai].parentNode.removeChild(this.filterrow[0].cells[ai])}}}for(var V=I;V<h;V++){var ai=V;var ah=k.cells[ai];if(!H(ah)){k.appendChild(ah)}var R=this.columns.records[ai].element;if(!H(R)){this.columnsrow[0].appendChild(R)}if(this.filterrow&&!H(this.filterrow[0].cells[ai])&&this.columns.records[ai].filterable){this.filterrow[0].firstChild.appendChild(this.filterrow[0].cells[ai])}}}}for(var n=0;n<U&&ab<U;n++){var ad=M!=undefined?M[S+n]:null;if(ad==null){S=-n;if(this._pagescache[this.dataview.pagenum+1]){M=this._pagescache[this.dataview.pagenum+1];this.dataview.pagenum++}else{var s=this._pageviews.length;do{if(this.dataview.pagenum<this._pageviews.length-1){this.dataview.pagenum++;M=undefined;if(this._pageviews[this.dataview.pagenum].height>0){this.dataview.updateview();this._loadrows();M=this._pagescache[this.dataview.pagenum]}}else{M=undefined;break}}while(M==undefined&&this.dataview.pagenum<s)}if(M!=undefined){ad=M[S+n]}}if(ad!=null){if(ad.hidden){continue}this._endboundindex=this._startboundindex+n;this._endvisibleindex=this._startvisibleindex+n;if(n==0){var m=Math.abs(o-ad.top);this.table[0].style.top=-m+"px";e=-m}var k=this.table[0].rows[ab];if(!k){continue}if(parseInt(k.style.height)!=ad.height){k.style.height=parseInt(ad.height)+"px"}Q+=ad.height;var X=this.rowdetails&&ad.rowdetails;var w=!ad.rowdetailshidden;if(X&&w){k.style.height=parseInt(ad.height-ad.rowdetailsheight)+"px";U++}var K=this._isrowselected(u,ad);for(var V=d;V<aa;V++){var ai=V;this._rendervisualcell(al,B,K,X,w,D,P,k,ad,ai,ab,ak)}if(ad.group!=undefined&&this._rendergroup){this._rendergroup(P,k,ad,am,r,ab,J)}if(this.autorowheight&&(this.autoheight||this.pageable)){var O=this.rowsheight;for(var V=d;V<aa;V++){if(this.editable&&this.editcell&&this.editcell.column==this.columns.records[V].datafield&&this.editcell.row==this.getboundindex(ad)){if(this.editcell.editor){O=Math.max(O,this.editcell.editor.height());continue}}if(k.cells[V].firstChild){O=Math.max(O,8+parseInt(k.cells[V].firstChild.offsetHeight))}}k.style.height=parseInt(O)+"px";this.heights[this._startboundindex+n]=O;if(X&&w){O+=ad.rowdetailsheight}ad.height=O}this.visiblerows[this.visiblerows.length]=ad;this.hittestinfo[this.hittestinfo.length]={row:ad,visualrow:k,details:false};if(X&&w){ab++;var k=this.table[0].rows[ab];this._renderrowdetails(B,k,ad,am,r,ab);this.visiblerows[this.visiblerows.length]=ad;this.hittestinfo[this.hittestinfo.length]={row:ad,visualrow:k,details:true}}if(!this.autorowheight){if(Q+e>=x){break}}}else{cansetheight=true;this._clearvisualrow(l,D,ab,am,r);if(Q+af+e<=x){af+=O}}ab++}this._horizontalvalue=l;if(af>0){if(this.vScrollBar[0].style.visibility=="visible"){var aj=parseInt(this.table.css("top"));var F=this._pageviews[this._pageviews.length-1];var v=Y.max;var E=F.top+F.height-x;if(this.hScrollBar.css("visibility")=="visible"){E+=this.scrollbarsize+20}if(v!=E&&!this.autorowheight){if(E>=0){if(this.scrollmode!="deferred"){Y.max=E;Y.setPosition(Y.max)}else{if(this._newmax!=E){this._newmax=E;this._rendervisualrows()}}}}}}}if((this.autoheight||this.pageable)&&this.autorowheight){this._pagescache=new Array();var W=0;var g=0;for(var ag=0;ag<this.visiblerows.length;ag++){var z=this.visiblerows[ag];z.top=W;W+=z.height;g+=z.height;var X=this.rowdetails&&z.rowdetails;var w=!z.rowdetailshidden;var k=this.table[0].rows[ag];if(X&&w){ag++}for(var V=d;V<aa;V++){var Z=this.columns.records[V];if(!Z.hidden){if(!Z.cellsrenderer){var N=k.cells[V];var f=0;if(N.firstChild){var f=(z.height-parseInt(N.firstChild.offsetHeight)-8)/2;if(X&&w){var f=(z.height-z.rowdetailsheight-b(N.firstChild).height()-8)/2}}else{var f=(z.height-parseInt(b(N).height())-8)/2}if(f>=0){f=parseInt(f)+4;if(N.firstChild){if(N.firstChild.className.indexOf("jqx-grid-groups-row")==-1){if(Z.columntype!="checkbox"&&Z.columntype!="button"){if(this.editable&&this.editcell&&this.editcell.column==Z.datafield&&this.editcell.row==this.getboundindex(z)){continue}N.firstChild.style.marginTop=f+"px"}}}}}}}}if(this._pageviews[0]){this._pageviews[0].height=g}this._arrange()}this._renderemptyrow();if(this.toCompile&&this.toCompile.length>0){var T=this;b.each(T.toCompile,function(y,an){if(this.compiled){return true}var i=this.cell;if(!i){return true}if(b.jqx.angularCompile){b.jqx.angularCompile(i,"<div>"+this.value+"</div>")}this.compiled=true})}},_hideemptyrow:function(){if(!this.showemptyrow){return}if(!this.table){return}if(!this.table[0].rows){return}var f=this.table[0].rows[0];if(!f){return}var g=false;for(var e=0;e<f.cells.length;e++){var d=b(f.cells[e]);if(d.css("display")!="none"&&!g){if(d.width()==this.host.width()||d.text()==this.gridlocalization.emptydatastring){d[0].checkbox=null;d[0].button=null;g=true;d[0].innerHTML=""}}}},_renderemptyrow:function(){if(this._loading){return}if(this.dataview.records.length==0&&this.showemptyrow){var l=false;var e=this.toTP("jqx-grid-cell");if(this.table&&this.table.length>0&&this.table[0].rows&&this.table[0].rows.length>0){var k=this.table[0].rows[0];this.table[0].style.top="0px";for(var f=0;f<k.cells.length;f++){var d=b(k.cells[f]);if(d.css("display")!="none"&&!l){d[0].checkbox=null;d[0].button=null;d[0].className=e;l=true;d[0].innerHTML="";var g=b("<span style='white-space: nowrap; float: left; margin-left: 50%; position: relative;'></span>");g.text(this.gridlocalization.emptydatastring);d.append(g);var j=0;if(!this.oldhscroll){j=parseInt(this.table[0].style.marginLeft);if(this.rtl){d.css("z-index",999);d.css("overflow","visible")}}g.css("left",-j-(g.width()/2));g.css("top",this._gettableheight()/2-g.height()/2);if(b.jqx.browser.msie&&b.jqx.browser.version<8){g.css("margin-left","0px");g.css("left",this.host.width()/2-g.width()/2)}var h=Math.abs(parseInt(this.table[0].style.top));if(isNaN(h)){h=0}b(k).height(this._gettableheight()+h);d.css("margin-left","0px");d.width(this.host.width());if(this.table.width()<this.host.width()){this.table.width(this.host.width())}}d.addClass(this.toThemeProperty("jqx-grid-empty-cell"))}}}},_clearvisualrows:function(){var e=this.virtualsizeinfo.visiblerecords;var f=this.hScrollInstance;var d=f.value;var g=parseInt(d);var i=this.groupable&&this.groups.length>0;if(!this.columns.records){return}for(var h=0;h<e;h++){this._clearvisualrow(g,i,h,0,this.columns.records.length)}},_iscellselected:function(j,i,g){var f=false;var e=0;if(this.virtualmode&&this.pageable&&this.groupable){if(this.groups.length>0){e=this.dataview.pagesize*this.dataview.pagenum}}if(this.groups.length>0&&this.pageable&&this.groupable){var d=this.getrowboundindexbyid(i.bounddata.uid);for(var h in this.selectedcells){if(h==d+"_"+g){f=true}}return f}if(j&&i.bounddata!=null){if(this.selectionmode!="singlerow"){if(this.dataview.filters.length>0){if(!this.virtualmode&&i.bounddata.dataindex!=undefined){for(var h in this.selectedcells){if(h==e+i.bounddata.dataindex+"_"+g){f=true}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex+"_"+g){f=true}}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex+"_"+g){f=true;break}}}}else{if(this.dataview.filters.length>0){if(!this.virtualmode&&i.bounddata.dataindex!=undefined){for(var h in this.selectedcells){if(h==e+i.bounddata.dataindex+"_"+g){f=true;break}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex+"_"+g){f=true;break}}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex==this.selectedrowindex){f=true;break}}}}}return f},_isrowselected:function(h,g){var f=false;var e=0;if(this.virtualmode&&this.pageable&&this.groupable){if(this.groups.length>0){e=this.dataview.pagesize*this.dataview.pagenum}}if(this.groupable&&this.groups.length>0&&this.pageable){var d=this.getrowboundindexbyid(g.bounddata.uid);if(d==undefined||d==-1){return false}if(this.selectedrowindexes.indexOf(d)!=-1){f=true}if(!f){f=d==this.selectedrowindex&&this.selectedrowindex!=-1}return f}if(h&&g.bounddata!=null){if(this.selectionmode!="singlerow"){if(this.dataview.filters.length>0){if(!this.virtualmode&&g.bounddata.dataindex!=undefined){if(this.selectedrowindexes.indexOf(e+g.bounddata.dataindex)!=-1){f=true}}else{if(this.selectedrowindexes.indexOf(e+g.bounddata.boundindex)!=-1){f=true}}}else{if(this.selectedrowindexes.indexOf(e+g.bounddata.boundindex)!=-1){f=true}}}else{if(this.dataview.filters.length>0){if(!this.virtualmode&&g.bounddata.dataindex!=undefined){if(this.selectedrowindexes.indexOf(e+g.bounddata.dataindex)!=-1){f=true}}else{if(this.selectedrowindexes.indexOf(e+g.bounddata.boundindex)!=-1){f=true}}}else{if(e+g.bounddata.boundindex==this.selectedrowindex){f=true}}}}return f},_rendervisualcell:function(z,i,p,k,t,x,j,q,d,h,s,n){var f=null;var g=this.columns.records[h];if(g.hidden){var e=q.cells[h];e.innerHTML="";return}cellvalue=this._getcellvalue(g,d);var e=q.cells[h];var w=i;if(this.selectionmode.indexOf("cell")!=-1){if(this.dataview.filters.length>0){if(this.selectedcells[d.bounddata.dataindex+"_"+g.datafield]){p=true}else{p=false}}else{if(this.selectedcells[d.boundindex+"_"+g.datafield]){p=true}else{p=false}}if(this.editcell){if(this.editcell.row===d.boundindex&&this.editcell.column===g.datafield){if(g.columntype!=="checkbox"){p=false}}}if(this.virtualmode||(this.groupable&&this.groups.length>0&&this.pageable)){p=this._iscellselected(true,d,g.datafield)}}if(g.cellclassname!=""&&g.cellclassname){if(typeof g.cellclassname=="string"){w+=" "+g.cellclassname}else{var m=g.cellclassname(this.getboundindex(d),g.datafield,cellvalue,d.bounddata);if(m){w+=" "+m}}}var o=this.showsortcolumnbackground&&this.sortcolumn&&g.displayfield==this.sortcolumn;if(o){w+=" "+this.toTP("jqx-grid-cell-sort")}if(g.filter&&this.showfiltercolumnbackground){w+=" "+this.toTP("jqx-grid-cell-filter")}if((g.pinned&&this.showpinnedcolumnbackground)||g.grouped){if(x){w+=" "+this.toTP("jqx-grid-cell-pinned")}else{w+=" "+this.toTP("jqx-grid-cell-pinned")}}if(this.altrows&&d.group==undefined){var y=d.visibleindex;if(y>=this.altstart){if((this.altstart+y)%(1+this.altstep)==0){if(!o){w+=" "+this.toTP("jqx-grid-cell-alt")}else{w+=" "+this.toTP("jqx-grid-cell-sort-alt")}if(g.filter&&this.showfiltercolumnbackground){w+=" "+this.toTP("jqx-grid-cell-filter-alt")}if(g.pinned&&this.showpinnedcolumnbackground){w+=" "+this.toTP("jqx-grid-cell-pinned-alt")}}}}if(h<=j){if(x||this.rowdetails){var u=b(e);var l=this.columns.records[h].width;if(e.style.width!=parseInt(l)+"px"){u.width(l)}}}else{if(x||this.rowdetails){if(this._hiddencolumns){var u=b(e);var l=this.columns.records[h].width;if(parseInt(e.style.width)!=l){u.width(l)}}}}var v=true;if(this.rowdetails&&k){if(t&&!x){w+=" "+this.toTP("jqx-grid-details-cell")}else{if(x){w+=" "+this.toTP("jqx-grid-group-details-cell")}}if(this.showrowdetailscolumn){if(!this.rtl){if(d.group==undefined&&h==j){var r=this.toThemeProperty("jqx-icon-arrow-down");if(t){w+=" "+this.toTP("jqx-grid-group-expand");w+=" "+r}else{w+=" "+this.toTP("jqx-grid-group-collapse");var r=this.toThemeProperty("jqx-icon-arrow-right");w+=" "+r}v=false;e.title="";e.innerHTML="";if(e.className!=w){e.className=w}return}}else{if(d.group==undefined&&h==q.cells.length-j-1){var r=this.toThemeProperty("jqx-icon-arrow-down");if(t){w+=" "+this.toTP("jqx-grid-group-expand-rtl");w+=" "+r}else{w+=" "+this.toTP("jqx-grid-group-collapse-rtl");var r=this.toThemeProperty("jqx-icon-arrow-left");w+=" "+r}v=false;e.title="";e.innerHTML="";if(e.className!=w){e.className=w}return}}}}if(p&&v&&h>=j){w+=" "+this.toTP("jqx-grid-cell-selected");w+=" "+this.toTP("jqx-fill-state-pressed")}if(e.className!=w){e.className=w}if(d.group!=undefined){cellvalue="";e.title="";e.innerHTML="";return}z(this,g,d,cellvalue,e,n)},_rendercell:function(u,f,j,s,d,q){var g=s+"_"+f.visibleindex;if(f.columntype=="number"||f.cellsrenderer!=null){var g=j.uniqueid+"_"+f.visibleindex}if(f.columntype=="number"){s=j.visibleindex}if(u.editcell&&u.editrow==undefined){if(u.editmode=="selectedrow"&&f.editable&&u.editable){if(u.editcell.row==u.getboundindex(j)){if(u._showcelleditor){if(!u.hScrollInstance.isScrolling()&&!u.vScrollInstance.isScrolling()){u._showcelleditor(u.editcell.row,f,d,u.editcell.init)}else{u._showcelleditor(u.editcell.row,f,d,false,false)}return}}}else{if(u.editcell.row==u.getboundindex(j)&&u.editcell.column==f.datafield){u.editcell.element=d;if(u.editcell.editing){if(u._showcelleditor){if(!u.hScrollInstance.isScrolling()&&!u.vScrollInstance.isScrolling()){u._showcelleditor(u.editcell.row,f,u.editcell.element,u.editcell.init)}else{u._showcelleditor(u.editcell.row,f,u.editcell.element,u.editcell.init,false)}return}}}}}var r=u._defaultcellsrenderer(s,f);var n=u._cellscache[g];if(n){if(f.columntype=="inline"){u._renderinlinecell(u,d,f,j,s);if(f.cellsrenderer!=null){var h=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata);if(h!=undefined){d.innerHTML=h}}return}else{if(f.columntype=="checkbox"){if(u.host.jqxCheckBox){if(s===""){s=null}var m=d.innerHTML.toString().length==0;if(d.checkbox&&!u.groupable&&!m){d.checkboxrow=u.getboundindex(j);if(s==""){s=false}if(s=="1"){s=true}if(s=="0"){s=false}if(s==1){s=true}if(s==0){s=false}if(s=="true"){s=true}if(s=="false"){s=false}if(s==null&&!f.threestatecheckbox){s=false}if(f.checkboxcolumn){s=false;if(u.dataview.filters.length>0&&!u.virtualmode&&j.bounddata.dataindex!=undefined){if(u.selectedrowindexes.indexOf(j.bounddata.dataindex)!=-1){s=true}}else{if(u.selectedrowindexes.indexOf(j.bounddata.boundindex)!=-1){s=true}}}if(!u.disabled){if(d.checkboxinstance){d.checkboxinstance._setState(s)}else{d.checkbox.jqxCheckBox("_setState",s)}}}else{u._rendercheckboxcell(u,d,f,j,s)}if(f.cellsrenderer!=null){var h=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata);if(h!=undefined){d.innerHTML=h}}return}}else{if(f.columntype=="button"){if(u.host.jqxButton){if(s==""){s=false}if(f.cellsrenderer!=null){s=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata)}if(d.innerHTML==""){d.buttonrow=u.getboundindex(j);d.button=null;u._renderbuttoncell(u,d,f,j,s)}if(d.button&&!u.groupable){d.buttonrow=u.getboundindex(j);d.button.val(s)}else{u._renderbuttoncell(u,d,f,j,s)}return}}}}var t=n.element;if(f.cellsrenderer!=null||(d.childNodes&&d.childNodes.length==0)||u.groupable||u.rowdetails){if(d.innerHTML!=t){d.innerHTML=t}}else{if(d.innerHTML.indexOf("editor")>=0){d.innerHTML=t}else{if(q){var o=t.indexOf(">");var l=t.indexOf("</");var p=t.substring(o+1,l);var i=d.childNodes[0];if(p.indexOf(">")>=0){d.innerHTML=t}else{if(i.childNodes[0]){if(p!=i.childNodes[0].nodeValue){if(p.indexOf("&")>=0){d.innerHTML=t}else{i.childNodes[0].nodeValue=p}}}else{var e=document.createTextNode(p);i.appendChild(e)}}}else{if(d.innerHTML!=t){d.innerHTML=t}}}}if(u.enabletooltips&&f.enabletooltips){d.title=n.title}return}if(f.columntype=="checkbox"){u._rendercheckboxcell(u,d,f,j,s);u._cellscache[g]={element:"",title:s};if(u.enabletooltips&&f.enabletooltips){d.title=s}return}else{if(f.columntype=="button"){if(f.cellsrenderer!=null){s=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata)}u._renderbuttoncell(u,d,f,j,s);u._cellscache[g]={element:"",title:s};if(u.enabletooltips&&f.enabletooltips){d.title=s}return}else{if(f.columntype=="number"){s=j.visibleindex}else{if(f.columntype=="inline"){u._renderinlinecell(u,d,f,j,s);u._cellscache[g]={element:"",title:s};if(u.enabletooltips&&f.enabletooltips){d.title=s}return}}}}var t=null;if(f.cellsrenderer!=null){t=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata);if(t&&(t.indexOf("<jqx-")>=0||t.indexOf(" ng-")>=0)){if(u.toCompile){u.toCompile.push({cell:d,value:t,row:u.getboundindex(j)})}return}}else{t=r}if(t==null){t=r}var k=s;if(u.enabletooltips&&f.enabletooltips){if(f.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(s)){k=b.jqx.dataFormat.formatdate(k,f.cellsformat,u.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(s)){k=b.jqx.dataFormat.formatnumber(k,f.cellsformat,u.gridlocalization)}}}}d.title=k}if(u.WinJS){b(d).html(t)}else{d.innerHTML=t}u._cellscache[g]={element:d.innerHTML,title:k};return true},_isIE10:function(){if(this._browser==undefined){var e=b.jqx.utilities.getBrowser();if(e.browser=="msie"&&parseInt(e.version)>9){this._browser=true}else{this._browser=false;if(e.browser=="msie"){var d="Browser CodeName: "+navigator.appCodeName+"";d+="Browser Name: "+navigator.appName+"";d+="Browser Version: "+navigator.appVersion+"";d+="Platform: "+navigator.platform+"";d+="User-agent header: "+navigator.userAgent+"";if(d.indexOf("Zune 4.7")!=-1){this._browser=true}}}}return this._browser},_renderinlinecell:function(f,d,e,i,g){var h=b(d);d.innerHTML='<div style="position: absolute;"></div>'},_rendercheckboxcell:function(g,e,f,k,h){if(g.host.jqxCheckBox){var j=b(e);if(h===""){if(f.threestatecheckbox){h=null}else{h=false}}if(h=="1"){h=true}if(h=="0"){h=false}if(h==1){h=true}if(h==0){h=false}if(h=="true"){h=true}if(h=="false"){h=false}if(f.checkboxcolumn){h=false;var d=this.getboundindex(k);if(this.selectedrowindexes.indexOf(d)!=-1){h=true}}if(j.find(".jqx-checkbox").length==0){e.innerHTML='<div style="position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -10px;"></div>';b(e.firstChild).jqxCheckBox({disabled:g.disabled,_canFocus:false,hasInput:false,hasThreeStates:f.threestatecheckbox,enableContainerClick:false,animationShowDelay:0,animationHideDelay:0,locked:true,theme:g.theme,checked:h});if(this.editable&&f.editable){b(e.firstChild).jqxCheckBox({locked:false})}if(f.checkboxcolumn){b(e.firstChild).jqxCheckBox({locked:false})}e.checkbox=b(e.firstChild);e.checkboxinstance=e.checkbox.data().jqxCheckBox.instance;e.checkboxrow=this.getboundindex(k);var i=b.data(e.firstChild,"jqxCheckBox").instance;i.updated=function(l,s,m){if(g.disabled){s=m;var p=g.table[0].rows.length;var r=g._getcolumnindex(f.datafield);for(var o=0;o<p;o++){var n=g.table[0].rows[o].cells[r].firstChild;if(n){b(n).jqxCheckBox({disabled:g.disabled})}}}if(f.editable&&!g.disabled){var p=g.table[0].rows.length;var r=g._getcolumnindex(f.datafield);if(g.editrow==undefined){if(f.cellbeginedit){var u=f.cellbeginedit(e.checkboxrow,f.datafield,f.columntype,!s);if(u==false){g.setcellvalue(e.checkboxrow,f.datafield,!s,true);return}}if(f.cellvaluechanging){var t=f.cellvaluechanging(e.checkboxrow,f.datafield,f.columntype,m,s);if(t!=undefined){s=t}}if(g.editmode!=="selectedrow"){for(var o=0;o<p;o++){var n=g.table[0].rows[o].cells[r].firstChild;if(n){b(n).jqxCheckBox("destroy")}}}if(g.editcell&&g.editcell.validated==false){g.setcellvalue(e.checkboxrow,f.datafield,!s,true)}else{if(g.editmode!=="selectedrow"||g.editcell==null){var q=g.getrowdata(e.checkboxrow);g._raiseEvent(17,{rowindex:e.checkboxrow,row:q,datafield:f.datafield,value:m,columntype:f.columntype});g.setcellvalue(e.checkboxrow,f.datafield,s,true);g._raiseEvent(18,{rowindex:e.checkboxrow,row:q,datafield:f.datafield,oldvalue:m,value:s,columntype:f.columntype})}else{g.setcellvalue(e.checkboxrow,f.datafield,s,false,false)}}if(f.cellendedit){f.cellendedit(e.checkboxrow,f.datafield,f.columntype,s)}}}else{if(f.checkboxcolumn){if(g.editcell){g.endcelledit(g.editcell.row,g.editcell.column,false,true)}if(!g.disabled){if(s){g.selectrow(e.checkboxrow)}else{g.unselectrow(e.checkboxrow)}if(g.autosavestate){if(g.savestate){g.savestate()}}}}}}}else{e.checkboxrow=this.getboundindex(k);b(e.firstChild).jqxCheckBox("_setState",h,!(this.editable&&f.editable)&&!f.checkboxcolumn)}}},_renderbuttoncell:function(h,e,g,k,i){if(h.host.jqxButton){var j=b(e);if(i==""){i=false}if(j.find(".jqx-button").length==0){e.innerHTML='<input type="button" style="opacity: 0.99; position: absolute; top: 0%; left: 0%; padding: 0px; margin-top: 2px; margin-left: 2px;"/>';b(e.firstChild).val(i);b(e.firstChild).attr("hideFocus","true");b(e.firstChild).jqxButton({disabled:h.disabled,theme:h.theme,height:h.rowsheight-4,width:g.width-4});e.button=b(e.firstChild);e.buttonrow=h.getboundindex(k);var d=this.isTouchDevice();if(d){var f=b.jqx.mobile.getTouchEventName("touchend");h.addHandler(b(e.firstChild),f,function(l){if(g.buttonclick){g.buttonclick(e.buttonrow,l)}})}else{h.addHandler(b(e.firstChild),"click",function(l){if(g.buttonclick){g.buttonclick(e.buttonrow,l)}})}}else{e.buttonrow=h.getboundindex(k);b(e.firstChild).val(i)}}},_clearvisualrow:function(g,f,o,i,n){var m=this.toTP("jqx-grid-cell");if(f){m=" "+this.toTP("jqx-grid-group-cell")}m+=" "+this.toTP("jqx-grid-cleared-cell");var p=this.table[0].rows;for(var k=0;k<i+n;k++){if(p[o]){var e=p[o].cells[k];if(e.className!=m){e.className=m}var d=this.columns.records[k];if(this._horizontalvalue!=g&&!d.pinned){if(this.oldhscroll==true){var h=-g;e.style.marginLeft=-g+"px"}}var l=d.width;if(l<d.minwidth){l=d.minwidth}if(l>d.maxwidth){l=d.maxwidth}if(parseInt(e.style.width)!=l){if(l!="auto"){b(e)[0].style.width=l+"px"}else{b(e)[0].style.width=l}}if(e.title!=""){e.title=""}if(e.innerHTML!=""){e.innerHTML=""}}}if(p[o]){if(parseInt(p[o].style.height)!=this.rowsheight){p[o].style.height=parseInt(this.rowsheight)+"px"}}},_findgroupstate:function(e){var d=this._findgroup(e);if(d==null){return false}return d.expanded},_findgroup:function(e){var d=null;if(this.expandedgroups[e]){return this.expandedgroups[e]}return d},_clearcaches:function(){this._columnsbydatafield=new Array();this._pagescache=new Array();this._pageviews=new Array();this._cellscache=new Array();this.heights=new Array();this.hiddens=new Array();this.hiddenboundrows=new Array();this.heightboundrows=new Array();this.detailboundrows=new Array();this.details=new Array();this.expandedgroups=new Array();this._rowdetailscache=new Array();this._rowdetailselementscache=new Array();if(b.jqx.dataFormat){b.jqx.dataFormat.cleardatescache()}this.tableheight=null},_getColumnText:function(d){if(this._columnsbydatafield==undefined){this._columnsbydatafield=new Array()}if(this._columnsbydatafield[d]){return this._columnsbydatafield[d]}var f=d;var e=null;b.each(this.columns.records,function(){if(this.datafield==d||this.displayfield==d){f=this.text;e=this;return false}});this._columnsbydatafield[d]={label:f,column:e};return this._columnsbydatafield[d]},_getcolumnbydatafield:function(d){if(this.__columnsbydatafield==undefined){this.__columnsbydatafield=new Array()}if(this.__columnsbydatafield[d]){return this.__columnsbydatafield[d]}var f=d;var e=null;b.each(this.columns.records,function(){if(this.datafield==d||this.displayfield==d){f=this.text;e=this;return false}});this.__columnsbydatafield[d]=e;return this.__columnsbydatafield[d]},isscrollingvertically:function(){var d=(this.vScrollBar.jqxScrollBar("isScrolling"));return d},_renderrowdetails:function(q,y,d,x,n,A){if(y==undefined){return}var E=b(y);var g=0;var t=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;if(this.groupable&&this.groups.length>0){for(var r=0;r<=n;r++){var e=b(y.cells[r]);e[0].innerHTML="";e[0].className="jqx-grid-details-cell"}}var e=b(y.cells[g]);if(e[0].style.display=="none"){var o=y.cells[g];var B=2;var l=g;while(o!=undefined&&o.style.display=="none"&&B<10){o=y.cells[l+B-1];B++}e=b(o)}if(this.rtl){for(var v=x;v<n;v++){y.cells[v].innerHTML="";y.cells[v].className="jqx-grid-details-cell"}}e.css("width","100%");E.height(d.rowdetailsheight);e[0].className=q;var p=this.getboundindex(d);var j=p+"_";if(this._rowdetailscache[j]){var u=this._rowdetailscache[j];var C=u.html;if(this.initrowdetails){if(this._rowdetailscache[j].element){var f=this._rowdetailscache[j].element;var i=e.coord();var z=this.gridcontent.coord();var w=parseInt(i.top)-parseInt(z.top);var k=parseInt(i.left)-parseInt(z.left);if(this.rtl){k=0}b(f).css("top",w);b(f).css("left",k);b(f).css("display","block");b(f).width(this.host.width()-t);if(this.layoutrowdetails){this.layoutrowdetails(p,f,this.element,this.getrowdata(p))}}}else{e[0].innerHTML=C}return}e[0].innerHTML="";if(!this.enablerowdetailsindent){t=0}var h='<div class="jqx-enableselect" role="rowgroup" style="border: none; overflow: hidden; width: 100%; height: 100%; margin-left: '+t+'px;">'+d.rowdetails+"</div>";if(this.rtl){var h='<div class="jqx-enableselect" role="rowgroup" style="border: none; overflow: hidden; width: 100%; height: 100%; margin-left: '+0+"px; margin-right: "+t+'px;">'+d.rowdetails+"</div>"}this._rowdetailscache[j]={id:y.id,html:h};if(this.initrowdetails){var f=b(h)[0];b(this.gridcontent).prepend(b(f));b(f).css("position","absolute");b(f).width(this.host.width()-t);b(f).height(e.height());var i=e.coord();b(f).css("z-index",9999);if(this.isTouchDevice()){b(f).css("z-index",99999)}b(f).addClass(this.toThemeProperty("jqx-widget-content"));var i=e.coord();var z=this.gridcontent.coord();var w=parseInt(i.top)-parseInt(z.top);var k=parseInt(i.left)-parseInt(z.left);b(f).css("top",w);b(f).css("left",k);this.content[0].scrollTop=0;this.content[0].scrollLeft=0;var D=b(b(f).children()[0]);if(D[0].id!=""){D[0].id=D[0].id+p}this.initrowdetails(p,f,this.element,this.getrowdata(p));this._rowdetailscache[j].element=f;this._rowdetailselementscache[p]=f}else{e[0].innerHTML=h}},_defaultcellsrenderer:function(f,d){if(d.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(f)){f=b.jqx.dataFormat.formatdate(f,d.cellsformat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(f)){f=b.jqx.dataFormat.formatnumber(f,d.cellsformat,this.gridlocalization)}}}}var e="4px";if(this.rowsheight!=25){e=(this.rowsheight/2-this._cellheight/2);if(e<0){e=4}e+="px"}if(this.enableellipsis){if(d.cellsalign=="center"||d.cellsalign=="middle"){return'<div style="text-overflow: ellipsis; overflow: hidden; padding-bottom: 2px; text-align: center; margin-top: '+e+';">'+f+"</div>"}if(d.cellsalign=="left"){return'<div style="overflow: hidden; text-overflow: ellipsis; padding-bottom: 2px; text-align: left; margin-right: 2px; margin-left: 4px; margin-top: '+e+';">'+f+"</div>"}if(d.cellsalign=="right"){return'<div style="overflow: hidden;  text-overflow: ellipsis; padding-bottom: 2px; text-align: right; margin-right: 2px; margin-left: 4px; margin-top: '+e+';">'+f+"</div>"}}if(d.cellsalign=="center"||d.cellsalign=="middle"){return'<div style="text-align: center; margin-top: '+e+';">'+f+"</div>"}return'<span style="margin-left: 4px; margin-right: 2px; margin-top: '+e+"; float: "+d.cellsalign+';">'+f+"</span>"},getcelltext:function(g,e){if(g==null||e==null){return null}var d=this.getcellvalue(g,e);var f=this.getcolumn(e);if(f&&f.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(d)){d=b.jqx.dataFormat.formatdate(d,f.cellsformat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(d)){d=b.jqx.dataFormat.formatnumber(d,f.cellsformat,this.gridlocalization)}}}}return d},getcelltextbyid:function(g,e){if(g==null||e==null){return null}var d=this.getcellvaluebyid(g,e);var f=this.getcolumn(e);if(f&&f.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(d)){d=b.jqx.dataFormat.formatdate(d,f.cellsformat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(d)){d=b.jqx.dataFormat.formatnumber(d,f.cellsformat,this.gridlocalization)}}}}return d},_getcellvalue:function(d,f){var e=null;e=f.bounddata[d.datafield];if(d.displayfield!=null){e=f.bounddata[d.displayfield]}if(e==null){e=""}return e},getcell:function(h,d){if(h==null||d==null){return null}var e=parseInt(h);var g=h;var f="";if(!isNaN(e)){g=this.getrowdata(e)}if(g!=null){f=g[d]}return this._getcellresult(f,h,d)},getrenderedcell:function(h,d){if(h==null||d==null){return null}var e=parseInt(h);var g=h;var f="";if(!isNaN(e)){g=this.getrenderedrowdata(e)}if(g!=null){f=g[d]}return this._getcellresult(f,h,d)},_getcellresult:function(k,n,e){var f=this.getcolumn(e);if(f==null||f==undefined){return null}var i=f.getcolumnproperties();var g=i.hidden;var d=i.width;var m=i.pinned;var h=i.cellsalign;var j=i.cellsformat;var l=this.getrowheight(n);if(l==false){return null}return{value:k,row:n,column:e,datafield:e,width:d,height:l,hidden:g,pinned:m,align:h,format:j}},setcellvaluebyid:function(i,d,h,f,g){var e=this.getrowboundindexbyid(i);return this.setcellvalue(e,d,h,f,g)},getcellvaluebyid:function(f,d){var e=this.getrowboundindexbyid(f);return this.getcellvalue(e,d)},setcellvalue:function(m,D,F,N,i){if(m==null||D==null){return false}var h=parseInt(m);var r=h;var A=m;if(!isNaN(h)){A=this.getrowdata(h)}var L=false;if(this.filterable&&this._initfilterpanel&&this.dataview.filters.length){L=true}if(this.virtualmode){this._pagescache=new Array()}if(this.sortcache){this.sortcache={}}var n="";var d="";if(A!=null&&A[D]!==F){if(A[D]===null&&F===""){return}var G=this._getcolumnbydatafield(D);var O="string";var t=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(t){var B="";b.each(t,function(){if(this.name==G.displayfield){if(this.type){B=this.type}return false}});if(B){O=B}d=A[G.displayfield]}n=A[D];if(!G.nullable||(F!=null&&F!==""&&G.nullable&&F.label===undefined)){if(b.jqx.dataFormat.isNumber(n)||O=="number"||O=="float"||O=="int"||O=="decimal"&&O!="date"){if(this.gridlocalization&&this.gridlocalization.decimalseparator==","){if(F&&F.indexOf&&F.indexOf(",")>=0){F=F.replace(",",".")}}F=new Number(F);F=parseFloat(F);if(isNaN(F)){F=0}}else{if(b.jqx.dataFormat.isDate(n)||O=="date"){if(F!=""){var J=F;J=new Date(J);if(J!="Invalid Date"&&J!=null){F=J}else{if(J=="Invalid Date"){J=new Date();F=J}}}}}if(A[D]===F){if(!this._updating&&N!=false){this._renderrows(this.virtualsizeinfo)}return}}var y=this.source&&this.source._source.localdata&&this.source._source.localdata.name==="observableArray";A[D]=F;if(y){var M=this.source._source.localdata;if(!M._updating){M._updating=true;M[m][D]=F;M._updating=false}}var k=this.getrenderedrowdata(h,true);if(!k){return}k[D]=F;if(F!=null&&F.label!=null){var G=this._getcolumnbydatafield(D);A[G.displayfield]=F.label;k[G.displayfield]=F.label;A[D]=F.value;k[D]=F.value;if(y&&!M._updating){M._updating=true;M[m][D]=F.value;M[m][G.displayfield]=F.label;M._updating=false}}if(L){if(A.dataindex!=undefined){r=A.dataindex;this.dataview.cachedrecords[A.dataindex][D]=F;if(F!=null&&F.label!=undefined){this.dataview.cachedrecords[A.dataindex][D]=F.value;this.dataview.cachedrecords[A.dataindex][G.displayfield]=F.label}}}}else{if(!this._updating&&N!=false){this._renderrows(this.virtualsizeinfo)}return false}if(this.source&&this.source._knockoutdatasource&&!this._updateFromAdapter&&this.autokoupdates){if(this.source._source._localdata){var C=h;if(L){if(A.dataindex!=undefined){C=A.dataindex}}var g=this.source._source._localdata()[C];this.source.suspendKO=true;var E=g;if(E[D]&&E[D].subscribe){if(F!=null&&F.label!=null){E[G.displayfield](F.label);E[D](F.value)}else{E[D](F)}}else{var t=this.source._source.datafields;var z=null;var v=null;if(t){b.each(t,function(){if(this.name==D){v=this.map;return false}})}if(v==null){if(F!=null&&F.label!=null){E[D]=F.value;E[G.displayfield]=F.label}else{E[D]=F}}else{var f=v.split(this.source.mapChar);if(f.length>0){var l=E;for(var K=0;K<f.length-1;K++){l=l[f[K]]}l[f[f.length-1]]=F}}this.source._source._localdata.replace(g,b.extend({},E))}this.source.suspendKO=false}}if(this.sortcolumn&&this.dataview.sortby&&!this._updating){var x=this.getsortinformation();if(this.sortcolumn==D){this.dataview.clearsortdata();this.dataview.sortby(x.sortcolumn,x.sortdirection.ascending)}}else{if(!this._updating){if(this.dataview.sortby){if(this.dataview.sortcache[D]){this.dataview.sortcache[D]=null}}}}this._cellscache=new Array();this._pagescache=new Array();if(this.source.updaterow&&(i==undefined||i==true)){var H=false;var o=this.that;var q=function(p){if(false==p){o.setcellvalue(m,D,n,true,false);if(n!=d){o.setcellvalue(m,o.getcolumn(D).displayfield,d,true,false)}}};try{var j=this.getrowid(h);H=this.source.updaterow(j,A,q);if(H==undefined){H=true}}catch(u){H=false;o.setcellvalue(m,D,n,true,false);if(n!=d){o.setcellvalue(m,o.getcolumn(D).displayfield,d,true,false)}return}}var I=this.vScrollInstance.value;if(this._updating&&N!=true){N=false}if(N==true||N==undefined){var o=this.that;var e=function(){if(o.pageable&&o.updatepagerdetails){o.updatepagerdetails();if(o.autoheight||o.autorowheight){o._updatepageviews()}}};var s=this.groupable&&this.groups.length>0;if(L&&!s){if(this.autoheight||this.autorowheight){this.prerenderrequired=true}this.dataview.refresh();this.rendergridcontent(true,false);e();this._renderrows(this.virtualsizeinfo)}else{if(this.sortcolumn&&!s){if(this.autoheight||this.autorowheight){this.prerenderrequired=true}this.dataview.reloaddata();this.rendergridcontent(true,false);e();this._renderrows(this.virtualsizeinfo)}else{if(this.groupable&&this.groups.length>0){if(this.autoheight||this.autorowheight){this.prerenderrequired=true}if(this.pageable){if(this.groups.indexOf(D)!=-1){this._pagescache=new Array();this._cellscache=new Array();this.dataview.refresh();this._render(true,true,false,false)}else{this._pagescache=new Array();this._cellscache=new Array();this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}}else{this._pagescache=new Array();this._cellscache=new Array();this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}}else{this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}}}}this.vScrollInstance.setPosition(I);if(this.showaggregates&&this._updatecolumnsaggregates){this._updatecolumnsaggregates()}if(this.showfilterrow&&this.filterable&&this.filterrow){var w=this.getcolumn(D).filtertype;if(w=="list"||w=="checkedlist"){this._updatelistfilters(true)}}this._raiseEvent(19,{rowindex:m,datafield:D,newvalue:F,value:F,oldvalue:n});return true},getcellvalue:function(h,d){if(h==null||d==null){return null}var e=parseInt(h);var g=h;if(!isNaN(e)){g=this.getrowdata(e)}if(g!=null){var f=g[d];return f}return null},getrows:function(){var h=this.dataview.records.length;if(this.virtualmode){var j=new Array();for(var e=0;e<this.dataview.records.length;e++){var d=this.dataview.records[e];if(d){j.push(d)}}if(this.dataview.records.length===undefined){b.each(this.dataview.records,function(){var i=this;if(i){j.push(i)}})}var g=0;if(this.pageable){g=this.dataview.pagenum*this.dataview.pagesize}if(j.length>this.source._source.totalrecords-g){return j.slice(0,this.source._source.totalrecords-g)}return j}if(this.dataview.sortdata){var j=new Array();for(var e=0;e<h;e++){var f={};f=b.extend({},this.dataview.sortdata[e].value);j[e]=f}return j}else{return this.dataview.records}},getrowboundindexbyid:function(g){var f=this.dataview.recordsbyid["id"+g];if(f){if(f.boundindex){return this.getboundindex(f)}}var e=this.getboundrows();for(var d=0;d<e.length;d++){if(e[d]){if(e[d].uid==g){return d}}}return -1},getrowdatabyid:function(f){var e=this.dataview.recordsbyid["id"+f];if(e){return e}else{var d=this.getrowboundindexbyid(f);return this.getboundrows()[d]}return null},getrowdata:function(d){if(d==undefined){d=0}if(this.virtualmode){var e=this.dataview.records[d];return e}else{var e=this.getboundrows()[d];return e}return null},getrenderedrowdata:function(d,f){if(d==undefined){d=0}if(this.virtualmode){var g=this.getrowvisibleindex(d);var e=this.dataview.loadedrecords[g];return e}var g=this.getrowvisibleindex(d);if(g>=0){if(this.groupable&&this.groups.length>0){var e=this.dataview.loadedrecords[g]}else{var e=this.dataview.loadedrecords[g];if(this.pageable&&(f==undefined||f==false)){var e=this.dataview.loadedrecords[this.dataview.pagesize*this.dataview.pagenum+d]}}return e}return null},getboundrows:function(){return this.dataview.cachedrecords},getrowdisplayindex:function(d){var f=this.getdisplayrows();for(var e=0;e<f.length;e++){if(!f[e]){continue}if(f[e].dataindex!==undefined){if(f[e].dataindex==d){return f[e].visibleindex}}else{if(f[e].boundindex==d){return f[e].visibleindex}}}return -1},getboundindex:function(e){var d=e.boundindex;if(this.groupable&&this.groups.length>0&&this.pageable){if(e.bounddata){d=this.getrowboundindexbyid(e.bounddata.uid)}}if(this.dataview.filters.length>0){if(e.bounddata){if(e.bounddata.dataindex!==undefined){d=e.bounddata.dataindex}}else{if(e.dataindex!==undefined){d=e.dataindex}}}return d},getrowboundindex:function(d){var e=this.getdisplayrows()[d];if(e){if(e.dataindex!==undefined){return e.dataindex}return e.boundindex}return -1},getdisplayrows:function(){return this.dataview.loadedrecords},getloadedrows:function(){return this.getdisplayrows()},getvisiblerowdata:function(e){var d=this.getvisiblerows();if(d){return d[e]}return null},getloadedrowdata:function(e){var d=this.getloadedrows();if(d){return d[e]}return null},getvisiblerows:function(){if(this.virtualmode){return this.dataview.loadedrecords}if(this.pageable){var f=[];for(var e=0;e<this.dataview.pagesize;e++){var d=this.dataview.loadedrecords[e+(this.dataview.pagesize*this.dataview.pagenum)];if(d==undefined){break}f.push(d)}return f}else{if(this._startboundindex!=undefined&&this._endboundindex!=undefined){var f=[];for(var e=this._startvisibleindex;e<=this._endvisibleindex;e++){var d=this.dataview.loadedrecords[e];if(d==undefined){break}f.push(d)}return f}}return this.dataview.loadedrecords},getrowid:function(d){if(d==undefined){d=0}if(this.virtualmode){var g=this.getrowvisibleindex(d);var f=this.dataview.loadedrecords[g];if(f){return f.uid}}else{var f=null;var e=this.dataview.filters.length>0;if(d>=0&&d<this.dataview.bounditems.length&&!e){if(this.groupable&&this.groups.length>0){var g=this.getrowvisibleindex(d);var f=this.dataview.loadedrecords[g]}else{var g=this.getrowvisibleindex(d);var f=this.dataview.loadedrecords[g]}if(f){return f.uid}}if(this.dataview.filters.length>0){var f=this.getboundrows()[d];if(f){if(f.uid!=null){return f.uid}}return null}}return null},_updateGridData:function(e){var d=false;if(this.filterable&&this._initfilterpanel&&this.dataview.filters.length){d=true}if(d){this.dataview.refresh();if(e=="updaterow"){this._render(true,true,false,false,false);this.invalidate()}else{this.render()}}else{if(this.sortcolumn||(this.groupable&&this.groups.length>0)){this.dataview.reloaddata();this.render()}else{this._cellscache=new Array();this._pagescache=new Array();this._renderrows(this.virtualsizeinfo)}}if(this.showfilterrow&&this.filterable&&this.filterrow){this._updatelistfilters(true)}},updaterow:function(i,k,g){if(i!=undefined&&k!=undefined){var h=this.that;var j=false;h._datachanged=true;var e=function(q,l,u){if(q._loading){throw new Error("jqxGrid: "+q.loadingerrormessage);return false}var s=false;if(!b.isArray(l)){s=q.dataview.updaterow(l,u)}else{b.each(l,function(v,w){s=q.dataview.updaterow(this,u[v],false)});q._cellscache=new Array();q._pagescache=new Array();q.dataview.refresh()}var m=q.vScrollInstance.value;if(g==undefined||g==true){if(q._updating==undefined||q._updating==false){q._updateGridData("updaterow")}}if(q.showaggregates&&q._updatecolumnsaggregates){q._updatecolumnsaggregates()}if(q.source&&q.source._knockoutdatasource&&!q._updateFromAdapter&&q.autokoupdates){if(q.source._source._localdata){var n=q.dataview.recordsbyid["id"+l];var o=q.dataview.records.indexOf(n);var p=q.source._source._localdata()[o];q.source.suspendKO=true;q.source._source._localdata.replace(p,b.extend({},n));q.source.suspendKO=false}}var r=q.source&&q.source._source.localdata&&q.source._source.localdata.name==="observableArray";if(r){if(!q.source._source.localdata._updating){q.source._source.localdata._updating=true;var t=q.getrowboundindexbyid(l);q.source._source.localdata.set(t,u);q.source._source.localdata._updating=false}}q.vScrollInstance.setPosition(m);return s};if(this.source.updaterow){var d=function(l){if(l==true||l==undefined){e(h,i,k)}else{j=false}};try{j=this.source.updaterow(i,k,d);if(j==undefined){j=true}}catch(f){j=false}}else{j=e(h,i,k)}return j}return false},deleterow:function(d,k){if(d!=undefined){this._datachanged=true;var o=false;var m=this.that;var p=this.getrowboundindexbyid(d);var e=new Array();var j=new Array();if(p!=undefined){if(this.selectedrowindexes.indexOf(p)>=0){this.selectedrowindexes.splice(this.selectedrowindexes.indexOf(p),1)}if(this.selectedrowindex==p){this.selectedrowindex=-1}if(!this.virtualmode){if(m.selectionmode.indexOf("row")>=0){b.each(this.selectedrowindexes,function(){var q=m.getrowid(this);e.push(q)});this.selectedrowindexes=new Array();this.selectedrowindex=-1}else{if(m.selectionmode.indexOf("cell")>=0){for(var i in m.selectedcells){var n=m.selectedcells[i];var h=m.getrowid(n.rowindex);n.rowid=h}}}}}var f=function(w,r){if(w._loading){throw new Error("jqxGrid: "+w.loadingerrormessage);return false}var z=false;var t=w.vScrollInstance.value;if(!b.isArray(r)){var z=w.dataview.deleterow(r)}else{b.each(r,function(){z=w.dataview.deleterow(this,false)});w._cellscache=new Array();w._pagescache=new Array();w.dataview.refresh()}if(!w.virtualmode){if(w.selectionmode.indexOf("row")>=0){b.each(e,function(){var B=w.getrowboundindexbyid(this);if(B!=-1){w.selectrow(B,false)}})}else{var A=new Array();for(var v in w.selectedcells){var y=w.selectedcells[v];var u=y.rowid;var s=w.getrowboundindexbyid(u);if(s!=-1){y.rowindex=s;A[s+"_"+y.datafield]=y}}w.selectedcells=A}}if(w._updating==undefined||w._updating==false){if(k==undefined||k==true){w._render(true,true,false,false);if(w.vScrollBar.css("visibility")!="visible"){w._arrange();w._updatecolumnwidths();w._updatecellwidths();w._renderrows(w.virtualsizeinfo)}}}if(w.source&&w.source._knockoutdatasource&&!w._updateFromAdapter&&w.autokoupdates){if(w.source._source._localdata){w.source.suspendKO=true;w.source._source._localdata.pop(rowdata);w.source.suspendKO=false}}var x=w.source&&w.source._source.localdata&&w.source._source.localdata.name==="observableArray";if(x){if(!w.source._source.localdata._updating){w.source._source.localdata._updating=true;w.source._source.localdata.splice(p,1);w.source._source.localdata._updating=false}}if(w.dataview.sortby){var q=w.getsortinformation();w.dataview.clearsortdata();w.dataview.sortby(q.sortcolumn,q.sortdirection?q.sortdirection.ascending:null)}w.vScrollInstance.setPosition(t);return z};if(this.source.deleterow){var g=function(q){if(q==true||q==undefined){f(m,d)}};try{this.source.deleterow(d,g);if(o==undefined){o=true}}catch(l){o=false}}else{o=f(m,d)}return o}return false},addrow:function(f,o,j){if(o!=undefined){this._datachanged=true;if(j==undefined){j="last"}var n=false;var m=this.that;if(f==null){var g=this.dataview.filters&&this.dataview.filters.length>0;var l=!g?this.dataview.totalrecords:this.dataview.cachedrecords.length;if(!b.isArray(o)){f=this.dataview.getid(this.dataview.source.id,o,l);while(null!=this.dataview.recordsbyid["id"+f]){f++}}else{var d=new Array();b.each(o,function(e,p){var q=m.dataview.getid(m.dataview.source.id,o[e],l+e);d.push(q)});f=d}}var h=function(s,r,v,e){if(s._loading){throw new Error("jqxGrid: "+s.loadingerrormessage);return false}var u=s.vScrollInstance.value;var t=false;if(!b.isArray(v)){if(v!=undefined&&v.dataindex!=undefined){delete v.dataindex}t=s.dataview.addrow(r,v,e)}else{b.each(v,function(w,x){if(this.dataindex!=undefined){delete this.dataindex}var y=null;if(r!=null&&r[w]!=null){y=r[w]}t=s.dataview.addrow(y,this,e,false)});s._cellscache=new Array();s._pagescache=new Array();s.dataview.refresh()}if(s._updating==undefined||s._updating==false){s._render(true,true,false,false);s.invalidate()}if(s.source&&s.source._knockoutdatasource&&!s._updateFromAdapter&&s.autokoupdates){if(s.source._source._localdata){s.source.suspendKO=true;s.source._source._localdata.push(v);s.source.suspendKO=false}}var p=s.source&&s.source._source.localdata&&s.source._source.localdata.name==="observableArray";if(p){if(!s.source._source.localdata._updating){s.source._source.localdata._updating=true;var q=s.getrowboundindexbyid(r);s.source._source.localdata.set(q,v);s.source._source.localdata._updating=false}}if(s.scrollmode!="deferred"){s.vScrollInstance.setPosition(u)}else{s.vScrollInstance.setPosition(0)}return t};if(this.source.addrow){var i=function(e,p){if(e==true||e==undefined){if(p!=undefined){f=p}h(m,f,o,j)}};try{n=this.source.addrow(f,o,j,i);if(n==undefined){n=true}}catch(k){n=false}if(n==false){return false}}else{h(this,f,o,j)}return n}return false},_findvisiblerow:function(g,h){if(g==undefined){g=parseInt(this.vScrollInstance.value)}var e=0;if(h==undefined||h==null){h=this.rows.records}var d=h.length;while(e<=d){mid=parseInt((e+d)/2);var f=h[mid];if(f==undefined){break}if(f.top>g&&f.top+f.height>g){d=mid-1}else{if(f.top<g&&f.top+f.height<g){e=mid+1}else{return mid;break}}}return -1},_updatecellwidths:function(){var f=this.virtualsizeinfo;if(!f){return}var p=this.that;if(p.gridcontent==undefined){return}if(p.table==undefined){p.table=p.gridcontent.find("#contenttable"+p.element.id)}var k=p.groupable&&p.groups.length>0;var q=0;var l=f.visiblerecords;if(p.pageable&&(p.autoheight||p.autorowheight)){l=p.dataview.pagesize;if(p.groupable){p.dataview.updateview();l=p.dataview.rows.length}}if(!p.groupable&&!p.pageable&&(p.autoheight||p.autorowheight)){l=p.dataview.totalrecords}if(p.rowdetails){l+=p.dataview.pagesize}if(!p.columns.records){return}var r=p.columns.records.length;var t=p.table[0].rows;for(var n=0;n<l;n++){var d=t[n];if(!d){break}var s=d.cells;var h=0;for(var m=0;m<r;m++){var g=p.columns.records[m];var e=g.width;var o=s[m];if(parseInt(o.style.left)!=h){o.style.left=h+"px"}if(parseInt(o.style.width)!=e){o.style.width=e+"px"}if(!(g.hidden&&g.hideable)){h+=parseFloat(e)}else{o.style.display="none"}}if(q==0){p.table.width(parseFloat(h)+2);q=h}}if(p.showaggregates&&p._updateaggregates){p._updateaggregates()}if(p.showfilterrow&&p.filterable&&p._updatefilterrowui){p._updatefilterrowui()}if(p.showeverpresentrow){p._updateaddnewrowui()}p._updatescrollbarsafterrowsprerender();if(k){p._renderrows(p.virtualsizeinfo)}},_updatescrollbarsafterrowsprerender:function(){var g=this.that;var f=g.hScrollBar[0].style.visibility;var i=0;var d=g.vScrollBar[0].style.visibility;if(d=="visible"){i=g.scrollbarsize+3}if(g.scrollbarautoshow){i=0}var e=g.element.style.width;if(e.toString().indexOf("%")>=0){e=g.host.width()}else{e=parseInt(e)}if(parseInt(g.table[0].style.width)-2>e-i){if(f!="visible"){if(!g.autowidth){g.hScrollBar[0].style.visibility="visible"}g._arrange()}if(d=="visible"){if(g.scrollmode!="deferred"&&!g.virtualmode){if(g.virtualsizeinfo){var h=g.virtualsizeinfo.virtualheight-g._gettableheight();if(!isNaN(h)&&h>0){if(f!="hidden"){g.vScrollBar.jqxScrollBar("max",h+g.scrollbarsize+4)}else{g.vScrollBar.jqxScrollBar("max",h)}}}}else{g._updatevscrollbarmax()}}else{i=-2}g.hScrollBar.jqxScrollBar("max",i+g.table.width()-g.host.width())}else{if(f!="hidden"){g.hScrollBar.css("visibility","hidden");g._arrange()}}g._renderhorizontalscroll()},_prerenderrows:function(o){var B=this.that;if(B.prerenderrequired==true){B.prerenderrequired=false;if(B.editable&&B._destroyeditors){B._destroyeditors()}if(B.gridcontent==undefined){return}B.gridcontent.find("#contenttable"+B.element.id).remove();if(B.table!=null){B.table.remove();B.table=null}B.table=b('<div id="contenttable'+B.element.id+'" style="overflow: hidden; position: relative;"></div>');B.gridcontent.addClass(B.toTP("jqx-grid-content"));B.gridcontent.addClass(B.toTP("jqx-widget-content"));B.gridcontent.append(B.table);var A=B.groupable&&B.groups.length>0;var p=0;B.table[0].rows=new Array();var l=B.toTP("jqx-grid-cell");if(A){l=" "+B.toTP("jqx-grid-group-cell")}var u=o.visiblerecords;if(B.pageable&&(B.autoheight||B.autorowheight)){u=B.dataview.pagesize;if(B.groupable){B.dataview.updateview();u=B.dataview.rows.length;if(u<B.dataview.pagesize){u=B.dataview.pagesize}}}if(!B.pageable&&(B.autoheight||B.autorowheight)){u=B.dataview.totalrecords}if(B.groupable&&B.groups.length>0&&(B.autoheight||B.autorowheight)&&!B.pageable){u=B.dataview.rows.length}if(B.rowdetails){if(B.autoheight||B.autorowheight){u+=B.dataview.pagesize}else{u+=u}}if(!B.columns.records){return}var z=B.columns.records.length;if(b.jqx.browser.msie&&b.jqx.browser.version>8){B.table.css("opacity","0.99")}if(b.jqx.browser.mozilla){}if(navigator.userAgent.indexOf("Safari")!=-1){B.table.css("opacity","0.99")}var r=b.jqx.browser.msie&&b.jqx.browser.version<8;if(r){B.host.attr("hideFocus","true")}var k=B.tableZIndex;if(u*z>k){k=u*z}var g=B.dataview.records.length==0;var n=B.isTouchDevice();var v="";B._hiddencolumns=false;for(var y=0;y<u;y++){var s='<div role="row" style="position: relative; height:'+B.rowsheight+'px;" id="row'+y+B.element.id+'">';if(r){var s='<div role="row" style="position: relative; z-index: '+k+"; height:"+B.rowsheight+'px;" id="row'+y+B.element.id+'">';k--}var f=0;for(var w=0;w<z;w++){var x=B.columns.records[w];var t=x.width;if(t<x.minwidth){t=x.minwidth}if(t>x.maxwidth){t=x.maxwidth}if(B.rtl){var q=k-z+2*w;var d='<div role="gridcell" style="left: '+f+"px; z-index: "+q+"; width:"+t+"px;";k--}else{var d='<div role="gridcell" style="left: '+f+"px; z-index: "+k--+"; width:"+t+"px;"}if(!(x.hidden&&x.hideable)){f+=t}else{d+="display: none;";B._hiddencolumns=true;k++}d+='" class="'+l+'"></div>';s+=d}if(p==0){B.table.width(parseInt(f)+2);p=f}s+="</div>";v+=s}if(B.WinJS){MSApp.execUnsafeLocalFunction(function(){B.table.html(v)})}else{B.table[0].innerHTML=v}B.table[0].rows=new Array();var m=B.table.children();for(var y=0;y<u;y++){var h=m[y];B.table[0].rows.push(h);h.cells=new Array();var e=b(h).children();for(var w=0;w<z;w++){h.cells.push(e[w])}}if(u==0){var f=0;if(B.showemptyrow){var s=b('<div style="position: relative;" id="row0'+B.element.id+'"></div>');B.table.append(s);s.height(B.rowsheight);B.table[0].rows[0]=s[0];B.table[0].rows[0].cells=new Array()}for(var w=0;w<z;w++){var x=B.columns.records[w];var t=x.width;if(B.showemptyrow){var d=b('<div style="position: absolute; height: 100%; left: '+f+"px; z-index: "+k--+"; width:"+t+'px;" class="'+l+'"></div>');d.height(B.rowsheight);s.append(d);B.table[0].rows[0].cells[w]=d[0]}if(t<x.minwidth){t=x.minwidth}if(t>x.maxwidth){t=x.maxwidth}if(!(x.hidden&&x.hideable)){f+=t}}B.table.width(parseInt(f)+2);p=f}B._updatescrollbarsafterrowsprerender();if(B.rendered){B.rendered("rows")}B.toCompile=new Array();B._addoverlayelement()}},_groupsheader:function(){return this.groupable&&this.showgroupsheader},_arrange:function(){var A=null;var x=null;this.tableheight=null;var F=this.that;var n=false;var m=false;if(F.width!=null&&F.width.toString().indexOf("px")!=-1){A=F.width}else{if(F.width!=undefined&&!isNaN(F.width)){A=F.width}}if(F.width!=null&&F.width.toString().indexOf("%")!=-1){A=F.width;n=true}if(F.scrollbarautoshow){F.vScrollBar[0].style.display="none";F.hScrollBar[0].style.display="none";F.vScrollBar[0].style.zIndex=F.tableZIndex+F.headerZIndex;F.hScrollBar[0].style.zIndex=F.tableZIndex+F.headerZIndex}if(F.autowidth){var p=0;for(var B=0;B<F.columns.records.length;B++){var e=F.columns.records[B].width;if(e=="auto"){e=F._measureElementWidth(F.columns.records[B].text);p+=e}else{p+=e}}if(F.vScrollBar.css("visibility")!="hidden"){p+=F.scrollbarsize+4}A=p;F.width=A}if(F.height!=null&&F.height.toString().indexOf("px")!=-1){x=F.height}else{if(F.height!=undefined&&!isNaN(F.height)){x=F.height}}if(F.height!=null&&F.height.toString().indexOf("%")!=-1){x=F.height;m=true}var k=function(){var i=0;var w=F.showheader?F.columnsheader!=null?F.columnsheader.height()+2:0:0;i+=w;if(F.pageable){i+=F.pagerheight}if(F._groupsheader()){i+=F.groupsheaderheight}if(F.showtoolbar){i+=F.toolbarheight}if(F.showstatusbar){i+=F.statusbarheight}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){i+=F.everpresentrowheight}if(F.hScrollBar[0].style.visibility=="visible"){i+=20}return i};if(F.autoheight&&F.virtualsizeinfo){if(F.pageable&&F.gotopage){var C=0;x=C+(F._pageviews[0]?F._pageviews[0].height:0);x+=k();if(F.showemptyrow&&F.dataview.totalrecords==0){x+=F.rowsheight}}else{var C=F.host.height()-F._gettableheight();if(F._pageviews.length>0){x=C+F._pageviews[F._pageviews.length-1].height+F._pageviews[F._pageviews.length-1].top;F.vScrollBar[0].style.visibility="hidden"}else{x=k();if(F.showemptyrow){x+=F.rowsheight}}}}else{if(F.autoheight){x=F.dataview.totalrecords*F.rowsheight;if(F.pageable&&F.gotopage){x=F.pagesize*F.rowsheight}if(F._loading){x=250;F.dataloadelement.height(x)}x+=k();if(x>10000){x=10000}}}if(A!=null){A=parseInt(A);if(!n){if(F.element.style.width!=parseInt(F.width)+"px"){F.element.style.width=parseInt(F.width)+"px"}}else{F.element.style.width=F.width}if(n){A=F.host.width();if(A<=2){A=600;F.host.width(A)}if(!F._oldWidth){F._oldWidth=A}}}else{F.host.width(250)}if(x!=null){if(!m){x=parseInt(x)}if(!m){if(F.element.style.height!=parseInt(x)+"px"){F.element.style.height=parseInt(x)+"px"}}else{F.element.style.height=F.height}if(m&&!F.autoheight){x=F.host.height();if(x==0){x=400;F.host.height(x)}if(!F._oldHeight){F._oldHeight=x}}}else{F.host.height(250)}if(F.autoheight){F.tableheight=null;F._gettableheight()}var v=0;if(F.showtoolbar){F.toolbar.width(A);F.toolbar.height(F.toolbarheight-1);F.toolbar.css("top",0);v+=F.toolbarheight;x-=parseInt(F.toolbarheight)}else{F.toolbar[0].style.height="0px"}if(F.showstatusbar){if(F.showaggregates){F.statusbar.width(!F.table?A:Math.max(A,F.table.width()))}else{F.statusbar.width(A)}F.statusbar.height(-1+F.statusbarheight)}else{F.statusbar[0].style.height="0px"}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){F.addnewrow.width(A);F.addnewrow.height(F.everpresentrowheight)}else{F.addnewrow[0].style.height="0px"}if(F._groupsheader()){F.groupsheader.width(A);F.groupsheader.height(F.groupsheaderheight);F.groupsheader.css("top",v);var y=F.groupsheader.height()+1;v+=y;if(x>y){x-=parseInt(y)}}else{if(F.groupsheader[0].style.width!=A+"px"){F.groupsheader[0].style.width=parseInt(A)+"px"}F.groupsheader[0].style.height="0px";if(F.groupsheader[0].style.top!=v+"px"){F.groupsheader.css("top",v)}var y=F.showgroupsheader&&F.groupable?F.groupsheaderheight:0;var f=v+y+"px";if(F.content[0].style.top!=f){F.content.css("top",v+F.groupsheaderheight)}}var d=F.scrollbarsize;if(isNaN(d)){d=parseInt(d);if(isNaN(d)){d="17px"}else{d=d+"px"}}d=parseInt(d);var s=4;var h=2;var j=0;if(F.vScrollBar[0].style.visibility=="visible"){j=d+s}if(F.hScrollBar[0].style.visibility=="visible"){h=d+s+2}var r=0;if(F.pageable){r=F.pagerheight;h+=F.pagerheight}if(F.showstatusbar){h+=F.statusbarheight;r+=F.statusbarheight}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){h+=F.everpresentrowheight;r+=F.everpresentrowheight}if(F.hScrollBar[0].style.height!=d+"px"){F.hScrollBar[0].style.height=parseInt(d)+"px"}if(F.hScrollBar[0].style.top!=v+x-s-d-r+"px"||F.hScrollBar[0].style.left!="0px"){F.hScrollBar.css({top:v+x-s-d-r+"px",left:"0px"})}var q=F.hScrollBar[0].style.width;var l=false;var D=false;if(j==0){if(q!=(A-2)+"px"){F.hScrollBar.width(A-2);l=true}}else{if(q!=(A-d-s)+"px"){F.hScrollBar.width(A-d-s+"px");l=true}}if(!F.autoheight){if(F.vScrollBar[0].style.width!=d+"px"){F.vScrollBar.width(d);D=true}if(F.vScrollBar[0].style.height!=parseInt(x)-h+"px"){F.vScrollBar.height(parseInt(x)-h+"px");D=true}if(F.vScrollBar[0].style.left!=parseInt(A)-parseInt(d)-s+"px"||F.vScrollBar[0].style.top!=v+"px"){F.vScrollBar.css({left:parseInt(A)-parseInt(d)-s+"px",top:v})}}if(F.rtl){F.vScrollBar.css({left:"0px",top:v});if(F.vScrollBar.css("visibility")!="hidden"){F.hScrollBar.css({left:d+2})}}var o=F.vScrollInstance;o.disabled=F.disabled;if(!F.autoheight){if(D){o.refresh()}}var z=F.hScrollInstance;z.disabled=F.disabled;if(l){z.refresh()}if(F.autowidth){F.hScrollBar[0].style.visibility="hidden"}F.statusbarheight=parseInt(F.statusbarheight);F.toolbarheight=parseInt(F.toolbarheight);var t=function(w){if((w.vScrollBar[0].style.visibility=="visible")&&(w.hScrollBar[0].style.visibility=="visible")){w.bottomRight[0].style.visibility="visible";w.bottomRight.css({left:1+parseInt(w.vScrollBar.css("left")),top:parseInt(w.hScrollBar.css("top"))});if(w.rtl){w.bottomRight.css("left","0px")}w.bottomRight.width(parseInt(d)+3);w.bottomRight.height(parseInt(d)+4);var G=w.showeverpresentrow&&w.everpresentrowposition=="bottom";var i=G?w.everpresentrowheight:0;if(i>0&&!w.showaggregates){w.bottomRight.css("z-index",99);w.bottomRight.height(parseInt(d)+4+i);w.bottomRight.css({top:parseInt(w.hScrollBar.css("top"))-i})}if(w.showaggregates){w.bottomRight.css("z-index",99);w.bottomRight.height(parseInt(d)+4+w.statusbarheight+i);w.bottomRight.css({top:parseInt(w.hScrollBar.css("top"))-w.statusbarheight-i})}}else{w.bottomRight[0].style.visibility="hidden"}};t(this);if(F.content[0].style.width!=A-j+"px"){F.content.width(A-j)}if(F.content[0].style.height!=x-h+3+"px"){F.content.height(x-h+3)}if(F.scrollbarautoshow){if(F.content[0].style.width!=A+"px"){F.content.width(A)}if(F.content[0].style.height!=x+"px"){F.content.height(x)}}if(F.content[0].style.top!=v+"px"){F.content.css("top",v)}if(F.rtl){F.content.css("left",j);if(F.scrollbarautoshow){F.content.css("left","0px")}if(F.table){var u=F.table.width();if(u<A-j){F.content.css("left",A-u)}}}if(F.showstatusbar){F.statusbar.css("top",v+x-F.statusbarheight-(F.pageable?F.pagerheight:0));if(F.showaggregates){if(F.hScrollBar.css("visibility")=="visible"){F.hScrollBar.css({top:v+x-s-d-r+F.statusbarheight+"px"});F.statusbar.css("top",1+v+x-d-5-F.statusbarheight-(F.pageable?F.pagerheight:0))}t(this)}if(F.rtl){if(F.hScrollBar.css("visibility")!="visible"){F.statusbar.css("left",F.content.css("left"))}else{F.statusbar.css("left","0px")}}}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){F.addnewrow.css("top",v+x-(F.showstatusbar?F.statusbarheight:0)-(F.pageable?F.pagerheight:0)-F.everpresentrowheight);if(F.rtl){if(F.hScrollBar.css("visibility")!="visible"){F.addnewrow.css("left",F.content.css("left"))}else{F.addnewrow.css("left","0px")}}}if(F.pageable){F.pager.width(A);F.pager.height(F.pagerheight);F.pager.css("top",v+x-F.pagerheight-1)}else{F.pager[0].style.height="0px"}if(F.table!=null){var g=-2;if(F.vScrollBar[0].style.visibility=="visible"){g=F.scrollbarsize+3}if(F.hScrollBar[0].style.visibility=="visible"){var E=g+F.table.width()-F.host.width();if(E>=0){F.hScrollBar.jqxScrollBar("max",E)}if(F.hScrollBar[0].style.visibility=="visible"&&E==0){F.hScrollBar[0].style.visibility="hidden";F._arrange()}}}if(A!=parseInt(F.dataloadelement[0].style.width)){F.dataloadelement[0].style.width=F.element.style.width}if(x!=parseInt(F.dataloadelement[0].style.height)){F.dataloadelement[0].style.height=F.element.style.height}F._hostwidth=A},destroy:function(){delete b.jqx.dataFormat.datescache;delete this.gridlocalization;b.jqx.utilities.resize(this.host,null,true);if(this.table&&this.table[0]){var m=this.table[0].rows.length;for(var k=0;k<m;k++){var q=this.table[0].rows[k];var p=q.cells;var f=p.length;for(var h=0;h<f;h++){b(q.cells[h]).remove();q.cells[h]=null;delete q.cells[h]}q.cells=null;if(q.cells){delete q.cells}b(this.table[0].rows[k]).remove();this.table[0].rows[k]=null}try{delete this.table[0].rows}catch(n){}this.table.remove();delete this.table}if(this.columns&&this.columns.records){for(var k=0;k<this.columns.records.length;k++){var e=this.columns.records[k];if(e.addnewrowwidget){if(e.destroyeverpresentrowwidget){e.destroyeverpresentrowwidget(e.addnewrowwidget)}}this._removecolumnhandlers(this.columns.records[k]);if(e.element){b(e.element).remove();b(e.sortasc).remove();b(e.sortdesc).remove();b(e.filtericon).remove();b(e.menu).remove();e.element=null;e.uielement=null;e.sortasc=null;e.sortdesc=null;e.filtericon=null;e.menu=null;delete e.element;delete e.uielement;delete e.sortasc;delete e.sortdesc;delete e.filtericon;delete e.menu;delete this.columnsrow[0].cells[k]}}try{delete this.columnsrow[0].cells}catch(n){}delete this.columnsrow}b.removeData(document.body,"contextmenu"+this.element.id);if(this.host.jqxDropDownList){if(this._destroyfilterpanel){this._destroyfilterpanel()}}if(this.editable&&this._destroyeditors){this._destroyeditors()}if(this.filterable&&this._destroyedfilters&&this.showfilterrow){this._destroyedfilters()}if(this.host.jqxMenu){if(this.gridmenu){this.removeHandler(b(document),"click.menu"+this.element.id);this.removeHandler(this.gridmenu,"keydown");this.removeHandler(this.gridmenu,"closed");this.removeHandler(this.gridmenu,"itemclick");this.gridmenu.jqxMenu("destroy");this.gridmenu=null}}if(this.pagershowrowscombo){this.pagershowrowscombo.jqxDropDownList("destroy");this.pagershowrowscombo=null}if(this.pagerrightbutton){this.removeHandler(this.pagerrightbutton,"mousedown");this.removeHandler(this.pagerrightbutton,"mouseup");this.removeHandler(this.pagerrightbutton,"click");this.pagerrightbutton.jqxButton("destroy");this.pagerrightbutton=null}if(this.pagerleftbutton){this.removeHandler(this.pagerleftbutton,"mousedown");this.removeHandler(this.pagerleftbutton,"mouseup");this.removeHandler(this.pagerleftbutton,"click");this.pagerleftbutton.jqxButton("destroy");this.removeHandler(b(document),"mouseup.pagerbuttons"+this.element.id);this.pagerleftbutton=null}this.removeHandler(b(document),"selectstart."+this.element.id);this.removeHandler(b(document),"mousedown.resize"+this.element.id);this.removeHandler(b(document),"mouseup.resize"+this.element.id);this.removeHandler(b(document),"mousemove.resize"+this.element.id);if(this.isTouchDevice()){var l=b.jqx.mobile.getTouchEventName("touchmove")+".resize"+this.element.id;var d=b.jqx.mobile.getTouchEventName("touchstart")+".resize"+this.element.id;var g=b.jqx.mobile.getTouchEventName("touchend")+".resize"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g)}this.removeHandler(b(document),"mousedown.reorder"+this.element.id);this.removeHandler(b(document),"mouseup.reorder"+this.element.id);this.removeHandler(b(document),"mousemove.reorder"+this.element.id);if(this.isTouchDevice()){var l=b.jqx.mobile.getTouchEventName("touchmove")+".reorder"+this.element.id;var d=b.jqx.mobile.getTouchEventName("touchstart")+".reorder"+this.element.id;var g=b.jqx.mobile.getTouchEventName("touchend")+".reorder"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g)}this.removeHandler(b(window),"resize."+this.element.id);if(this.groupable){var l="mousemove.grouping"+this.element.id;var d="mousedown.grouping"+this.element.id;var g="mouseup.grouping"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g)}if(this.columnsreorder){var l="mousemove.reorder"+this.element.id;var d="mousedown.reorder"+this.element.id;var g="mouseup.reorder"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g);delete this.columnsbounds}if(this.content){this.removeHandler(this.content,"mousedown");this.removeHandler(this.content,"scroll")}this._removeHandlers();this.hScrollInstance.destroy();this.vScrollInstance.destroy();this.hScrollBar.remove();this.vScrollBar.remove();this._clearcaches();delete this.hScrollInstance;delete this.vScrollInstance;delete this.visiblerows;delete this.hittestinfo;delete this.rows;delete this.columns;delete this.columnsbydatafield;delete this.pagescache;delete this.pageviews;delete this.cellscache;delete this.heights;delete this.hiddens;delete this.hiddenboundrows;delete this.heightboundrows;delete this.detailboundrows;delete this.details;delete this.expandedgroups;delete this._rowdetailscache;delete this._rowdetailselementscache;delete this.columnsmenu;if(this.columnsheader){this.columnsheader.remove();delete this.columnsheader}if(this.selectionarea){this.selectionarea.remove();delete this.selectionarea}if(this.menuitemsarray&&this.menuitemsarray.length){var o=this.menuitemsarray.length;for(var k=0;k<o;k++){b(this.menuitemsarray[k]).remove()}}delete this.menuitemsarray;this.dataview._clearcaches();this.content.removeClass();this.content.remove();this.content=null;delete this.content;this.vScrollBar=null;this.hScrollBar=null;delete this.hScrollBar;delete this.hScrollBar;if(this.gridcontent){this.gridcontent.remove();delete this.gridcontent}if(this.gridmenu){this.gridmenu=null;delete this.gridmenu}delete this._mousemovefunc;delete this._mousewheelfunc;this.dataview.destroy();delete this.dataview;this.bottomRight.remove();delete this.bottomRight;this.wrapper.remove();delete this.wrapper;if(this.pagerdiv){this.pagerdiv.remove();delete this.pagerdiv}if(this.pagerpageinput){this.pagerpageinput.remove();delete this.pagerpageinput}if(this.pagergoto){this.pagergoto.remove();delete this.pagergoto}if(this.pagershowrows){this.pagershowrows.remove();delete this.pagershowrows}if(this.pagerfirstbutton){this.pagerfirstbutton.remove();delete this.pagerfirstbutton}if(this.pagerlastbutton){this.pagerlastbutton.remove();delete this.pagerlastbutton}if(this.pagerbuttons){this.pagerbuttons.remove();delete this.pagerbuttons}if(this.pagerdetails){this.pagerdetails.remove();delete this.pagerdetails}if(this.pagergotoinput){this.pagergotoinput.remove();delete this.pagergotoinput}this.pager.remove();delete this.pager;this.groupsheader.remove();delete this.groupsheader;this.dataloadelement.remove();delete this.dataloadelement;this.toolbar.remove();delete this.toolbar;this.statusbar.remove();delete this.statusbar;this.host.removeData();this.host.removeClass();this.host.remove();this.host=null;delete this.host;delete this.element;delete this.set;delete this.get;delete this.that;delete this.call},_initializeColumns:function(){var f=this.source?this.source.datafields:null;if(f==null&&this.source&&this.source._source){f=this.source._source.datafields}var j=f?f.length>0:false;if(this.autogeneratecolumns){var l=new Array();if(f){b.each(f,function(){var i={datafield:this.name,text:this.text||this.name,cellsformat:this.format||""};l.push(i)})}else{if(this.source.records.length>0){var n=this.source.records[0];for(obj in n){if(obj!="uid"){var g={width:100,datafield:obj,text:obj};l.push(g)}}}}this.columns=l}if(this.columns&&this.columns.records){for(var h=0;h<this.columns.records.length;h++){this._removecolumnhandlers(this.columns.records[h])}}var k=this.that;var e=new b.jqx.collection(this.element);var d=0;this._haspinned=false;if(!this._columns){this._columns=this.columns}else{this.columns=this._columns}if(this.groupable){b.each(this.groups,function(i){var o=new c(k,this);o.visibleindex=d++;o.width=k.groupindentwidth;e.add(o);o.grouped=true;o.filterable=false;o.sortable=false;o.editable=false;o.resizable=false;o.draggable=false})}if(this.rowdetails&&this.showrowdetailscolumn){var g=new c(k,this);g.visibleindex=d++;g.width=k.groupindentwidth;g.pinned=true;g.editable=false;g.filterable=false;g.draggable=false;g.groupable=false;g.resizable=false;e.add(g);k._haspinned=true}if(this.selectionmode=="checkbox"){var g=new c(k,null);g.visibleindex=d++;g.width=k.groupindentwidth;g.checkboxcolumn=true;g.editable=false;g.columntype="checkbox";g.groupable=false;g.draggable=false;g.filterable=false;g.resizable=false;g.datafield="_checkboxcolumn";e.add(g)}var m=new Array();b.each(this.columns,function(i){if(k.columns[i]!=undefined){var o=new c(k,this);o.visibleindex=d++;if(this.dataField!=undefined){this.datafield=this.dataField}if(this.pinned){k._haspinned=true}if(k.showeverpresentrow){if(this.datafield==="addButtonColumn"||this.datafield==="resetButtonColumn"||this.datafield==="updateButtonColumn"||this.datafield==="deleteButtonColumn"){o.editable=false;o.groupable=false;o.draggable=false;o.filterable=false;o.resizable=false;o.menu=false}}if(this.datafield==null){if(k.source&&k.source._source&&(k.source._source.datatype=="array")){if(!j){if(!k.source._source.datafields){k.source._source.datafields=new Array();k.source._source.datafields.push({name:i.toString()})}else{k.source._source.datafields.push({name:i.toString()})}}this.datafield=i.toString();this.displayfield=i.toString();o.datafield=this.datafield;o.displayfield=this.displayfield}}else{if(m[this.datafield]){throw new Error("jqxGrid: Invalid column 'datafield' setting. jqxGrid's columns should be initialized with unique data fields.");k.host.remove();return false}else{m[this.datafield]=true}}e.add(o)}});if(this.rtl){e.records.reverse()}this.columns=e},_initializeRows:function(){var d=new b.jqx.collection(this.element);if(this.rows){this.rows.clear()}this.rows=d},_raiseEvent:function(i,e){if(e==undefined){e={owner:null}}if(this._trigger===false){return}var f=this.events[i];if(!this._camelCase){f=f.toLowerCase()}if(i==2||i==15){if(this.showeverpresentrow&&(this.everpresentrowactions.indexOf("delete")>=0||this.everpresentrowactions.indexOf("update")>=0)){if(this.updateeverpresentrow){var h=this}setTimeout(function(){h.updateeverpresentrow()},50)}}args=e;args.owner=this;var g=new b.Event(f);g.owner=this;g.args=args;var d=this.host.trigger(g);e=g.args;return d},wheel:function(f,e){if(e.autoheight&&e.hScrollBar.css("visibility")!="visible"){f.returnValue=true;return true}var g=0;if(!f){f=window.event}if(f.originalEvent&&f.originalEvent.wheelDelta){f.wheelDelta=f.originalEvent.wheelDelta}if(f.wheelDelta){g=f.wheelDelta/120}else{if(f.detail){g=-f.detail/3}}if(g){var d=e._handleDelta(g);if(d){if(f.preventDefault){f.preventDefault()}if(f.originalEvent!=null){f.originalEvent.mouseHandled=true}if(f.stopPropagation!=undefined){f.stopPropagation()}}if(d){d=false;f.returnValue=d;return d}else{return false}}if(f.preventDefault){f.preventDefault()}f.returnValue=false},_handleDelta:function(f){if(this.vScrollBar.css("visibility")!="hidden"){var e=this.vScrollInstance.value;if(f<0){this.scrollDown()}else{this.scrollUp()}var d=this.vScrollInstance.value;if(e!=d){return true}}else{if(this.hScrollBar.css("visibility")!="hidden"){var e=this.hScrollInstance.value;if(f>0){if(this.hScrollInstance.value>2*this.horizontalscrollbarstep){this.hScrollInstance.setPosition(this.hScrollInstance.value-2*this.horizontalscrollbarstep)}else{this.hScrollInstance.setPosition(0)}}else{if(this.hScrollInstance.value<this.hScrollInstance.max){this.hScrollInstance.setPosition(this.hScrollInstance.value+2*this.horizontalscrollbarstep)}else{this.hScrollInstance.setPosition(this.hScrollInstance.max)}}var d=this.hScrollInstance.value;if(e!=d){return true}}}return false},scrollDown:function(){if(this.vScrollBar.css("visibility")=="hidden"){return}var d=this.vScrollInstance;if(d.value+this.rowsheight<=d.max){d.setPosition(parseInt(d.value)+this.rowsheight)}else{d.setPosition(d.max)}},scrollUp:function(){if(this.vScrollBar.css("visibility")=="hidden"){return}var d=this.vScrollInstance;if(d.value-this.rowsheight>=d.min){d.setPosition(parseInt(d.value)-this.rowsheight)}else{d.setPosition(d.min)}},_removeHandlers:function(){var d=this.that;d.removeHandler(b(window),"orientationchange.jqxgrid"+d.element.id);d.removeHandler(b(window),"orientationchanged.jqxgrid"+d.element.id);d.removeHandler(d.vScrollBar,"valueChanged");d.removeHandler(d.hScrollBar,"valueChanged");d.vScrollInstance.valueChanged=null;d.hScrollInstance.valueChanged=null;var e="mousedown.jqxgrid";if(d.isTouchDevice()){e=b.jqx.mobile.getTouchEventName("touchend")}d.removeHandler(d.host,"dblclick.jqxgrid");d.removeHandler(d.host,e);d.removeHandler(d.content,"mousemove",d._mousemovefunc);d.removeHandler(d.host,"mouseleave.jqxgrid");d.removeHandler(d.content,"mouseenter");d.removeHandler(d.content,"mouseleave");d.removeHandler(d.content,"mousedown");d.removeHandler(d.content,"scroll");d.removeHandler(d.content,"selectstart."+d.element.id);d.removeHandler(d.host,"dragstart."+d.element.id);d.removeHandler(d.host,"keydown.edit"+d.element.id);d.removeHandler(b(document),"keydown.edit"+d.element.id);d.removeHandler(b(document),"keyup.edit"+d.element.id);if(d._mousemovedocumentfunc){d.removeHandler(b(document),"mousemove.selection"+d.element.id,d._mousemovedocumentfunc)}d.removeHandler(b(document),"mouseup.selection"+d.element.id);if(d._mousewheelfunc){d.removeHandler(d.host,"mousewheel",d._mousewheelfunc)}if(d.editable){d.removeHandler(b(document),"mousedown.gridedit"+d.element.id)}if(d.host.off){d.content.off("mousemove");d.host.off("mousewheel")}},_addHandlers:function(){var e=this.that;var d=e.isTouchDevice();if(!d){e.addHandler(e.host,"dragstart."+e.element.id,function(j){return false})}if(e.scrollbarautoshow){e.addHandler(e.host,"mouseenter.gridscroll"+e.element.id,function(j){e.vScrollBar.fadeIn("fast");e.hScrollBar.fadeIn("fast")});e.addHandler(e.host,"mouseleave.gridscroll"+e.element.id,function(j){if(!e.vScrollInstance.isScrolling()&&!e.hScrollInstance.isScrolling()){e.vScrollBar.fadeOut("fast");e.hScrollBar.fadeOut("fast")}})}if(e.editable){e.addHandler(b(document),"mousedown.gridedit"+e.element.id,function(m){if(e.editable&&e.begincelledit){if(e.editcell){if(!e.vScrollInstance.isScrolling()&&!e.vScrollInstance.isScrolling()){var r=e.host.coord();var q=e.host.width();var n=e.host.height();var v=false;var k=false;var t=false;if(m.pageY<r.top||m.pageY>r.top+n){v=true;k=true}if(m.pageX<r.left||m.pageX>r.left+q){v=true;t=true}if(v){var u=false;if(e.editcell&&e.editcell.editor){switch(e.editcell.columntype){case"datetimeinput":if(e.editcell.editor.jqxDateTimeInput&&e.editcell.editor.jqxDateTimeInput("container")&&e.editcell.editor.jqxDateTimeInput("container")[0].style.display=="block"){var s=e.editcell.editor.jqxDateTimeInput("container").coord().top;var j=e.editcell.editor.jqxDateTimeInput("container").coord().top+e.editcell.editor.jqxDateTimeInput("container").height();if(k&&(m.pageY<s||m.pageY>j)){v=true;e.editcell.editor.jqxDateTimeInput("close")}else{return}}break;case"combobox":if(e.editcell.editor.jqxComboBox&&e.editcell.editor.jqxComboBox("container")&&e.editcell.editor.jqxComboBox("container")[0].style.display=="block"){var s=e.editcell.editor.jqxComboBox("container").coord().top;var j=e.editcell.editor.jqxComboBox("container").coord().top+e.editcell.editor.jqxComboBox("container").height();if(k&&(m.pageY<s||m.pageY>j)){v=true;e.editcell.editor.jqxComboBox("close")}else{return}}break;case"dropdownlist":if(e.editcell.editor.jqxDropDownList&&e.editcell.editor.jqxDropDownList("container")&&e.editcell.editor.jqxDropDownList("container")[0].style.display=="block"){var s=e.editcell.editor.jqxDropDownList("container").coord().top;var j=e.editcell.editor.jqxDropDownList("container").coord().top+e.editcell.editor.jqxDropDownList("container").height();if(k&&(m.pageY<s||m.pageY>j)){v=true;e.editcell.editor.jqxDropDownList("close")}else{return}}break;case"template":case"custom":var l=["jqxDropDownList","jqxComboBox","jqxDropDownButton","jqxDateTimeInput"];var p=function(A){var z=e.editcell.editor.data();if(z[A]&&z[A].instance.container&&z[A].instance.container[0].style.display=="block"){var x=z[A].instance;var B=x.container.coord().top;var y=x.container.coord().top+x.container.height();if(k&&(m.pageY<B||m.pageY>y)){v=true;x.close();return true}else{return false}}};for(var o=0;o<l.length;o++){var w=p(l[o]);if(w==false){return}}break}}e.endcelledit(e.editcell.row,e.editcell.column,false,true);e._oldselectedcell=null}}}}})}e.vScrollInstance.valueChanged=function(j){if(e.virtualsizeinfo){e._closemenu();if(e.scrollmode!="physical"){e._renderrows(e.virtualsizeinfo);e.currentScrollValue=j.currentValue}else{if(e.currentScrollValue!=undefined&&Math.abs(e.currentScrollValue-j.currentValue)>=5){e._renderrows(e.virtualsizeinfo);e.currentScrollValue=j.currentValue}else{e._renderrows(e.virtualsizeinfo);e.currentScrollValue=j.currentValue}}if(!e.pageable&&!e.groupable&&e.dataview.virtualmode){if(e.loadondemandupdate){clearTimeout(e.loadondemandupdate)}e.loadondemandupdate=setTimeout(function(){e.loadondemand=true;e._renderrows(e.virtualsizeinfo)},100)}if(d){e._lastScroll=new Date()}}};e.hScrollInstance.valueChanged=function(l){if(e.virtualsizeinfo){e._closemenu();var k=function(){e._renderhorizontalscroll();e._renderrows(e.virtualsizeinfo);if(e.editcell&&!e.editrow){if(e._showcelleditor&&e.editcell.editing){if(!e.hScrollInstance.isScrolling()){e._showcelleditor(e.editcell.row,e.getcolumn(e.editcell.column),e.editcell.element,e.editcell.init)}}}};var j=e._browser==undefined?e._isIE10():e._browser;if(navigator&&navigator.userAgent.indexOf("Safari")!=-1&&navigator.userAgent.indexOf("Chrome")==-1){if(e._hScrollTimer){clearTimeout(e._hScrollTimer)}e._hScrollTimer=setTimeout(function(){k()},1)}else{if(b.jqx.browser.msie){if(e._hScrollTimer){clearTimeout(e._hScrollTimer)}e._hScrollTimer=setTimeout(function(){k()},0.01)}else{k()}}if(d){e._lastScroll=new Date()}}};e._mousewheelfunc=e._mousewheelfunc||function(j){if(!e.editcell&&e.enablemousewheel){e.wheel(j,e);return false}};e.removeHandler(e.host,"mousewheel",e._mousewheelfunc);e.addHandler(e.host,"mousewheel",e._mousewheelfunc);var h="mousedown.jqxgrid";if(d){h=b.jqx.mobile.getTouchEventName("touchend")}e.addHandler(e.host,h,function(k){if(e.isTouchDevice()){e._newScroll=new Date();if(e._newScroll-e._lastScroll<500){return false}if(b(k.target).ischildof(e.vScrollBar)){return false}if(b(k.target).ischildof(e.hScrollBar)){return false}}e._mousedown=new Date();var j=e._handlemousedown(k,e);if(e.isNestedGrid){if(!e.resizablecolumn&&!e.columnsreorder){k.stopPropagation()}}e._lastmousedown=new Date();return j});if(!d){e.addHandler(e.host,"dblclick.jqxgrid",function(k){if(e.editable&&e.begincelledit&&e.editmode=="dblclick"){e._handledblclick(k,e)}else{if(b.jqx.browser.msie&&b.jqx.browser.version<9){var j=e._handlemousedown(k,e)}}e.mousecaptured=false;e._lastmousedown=new Date();return true});e._mousemovefunc=function(j){if(e._handlemousemove){return e._handlemousemove(j,e)}};e.addHandler(e.content,"mousemove",e._mousemovefunc);if(e._handlemousemoveselection){e._mousemovedocumentfunc=function(j){if(e._handlemousemoveselection){return e._handlemousemoveselection(j,e)}};e.addHandler(b(document),"mousemove.selection"+e.element.id,e._mousemovedocumentfunc)}e.addHandler(b(document),"mouseup.selection"+e.element.id,function(j){if(e._handlemouseupselection){e._handlemouseupselection(j,e)}})}try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var i=null;if(window.parent&&document.referrer){i=document.referrer}if(i&&i.indexOf(document.location.host)!=-1){var g=function(k){if(e._handlemouseupselection){try{e._handlemouseupselection(k,e)}catch(j){}}};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}}catch(f){}e.focused=false;if(!d){e.addHandler(e.content,"mouseenter",function(j){e.focused=true;if(e.wrapper){e.wrapper.attr("tabindex",1);e.content.attr("tabindex",2)}if(e._overlayElement){if(e.vScrollInstance.isScrolling()||e.hScrollInstance.isScrolling()){e._overlayElement[0].style.visibility="visible"}else{e._overlayElement[0].style.visibility="hidden"}}});e.addHandler(e.content,"mouseleave",function(j){if(e._handlemousemove){if(e.enablehover){e._clearhoverstyle()}}if(e._overlayElement){e._overlayElement[0].style.visibility="hidden"}e.focused=false});if(e.groupable||e.columnsreorder){e.addHandler(b(document),"selectstart."+e.element.id,function(j){if(e.__drag===true){return false}})}e.addHandler(e.content,"selectstart."+e.element.id,function(j){if(e.enablebrowserselection){return true}if(e.showfilterrow){if(b(j.target).ischildof(e.filterrow)){return true}}if(e.showeverpresentrow){if(b(j.target).ischildof(e.addnewrow)){return true}if(e.addnewrowtop){if(b(j.target).ischildof(e.addnewrowtop)){return true}}}if(!e.editcell){return false}if(j.stopPropagation){j.stopPropagation()}});e.addHandler(b(document),"keyup.edit"+e.element.id,function(j){e._keydown=false});e.addHandler(b(document),"keydown.edit"+e.element.id,function(l){e._keydown=true&&!e.editcell;var k=l.charCode?l.charCode:l.keyCode?l.keyCode:0;if(e.handlekeyboardnavigation){var m=e.handlekeyboardnavigation(l);if(m==true){return false}}if(e.editable&&e.editcell){if(k==13||k==27){if(e._handleeditkeydown){j=e._handleeditkeydown(l,e)}}}if(k==27){e.mousecaptured=false;if(e.selectionarea.css("visibility")=="visible"){e.selectionarea.css("visibility","hidden")}}if(b.jqx.browser.msie&&b.jqx.browser.version<12&&e.focused&&!e.isNestedGrid){if(k==13&&j==false){return j}var j=true;var k=l.charCode?l.charCode:l.keyCode?l.keyCode:0;if(!e.editcell&&e.editable&&e.editmode!="programmatic"){if(e._handleeditkeydown){j=e._handleeditkeydown(l,e)}}if(j&&e.keyboardnavigation&&e._handlekeydown){j=e._handlekeydown(l,e);if(!j){if(l.preventDefault){l.preventDefault()}if(l.stopPropagation!=undefined){l.stopPropagation()}}return j}}return true});e.addHandler(e.host,"keydown.edit"+e.element.id,function(k){var j=true;if(e.handlekeyboardnavigation){var l=e.handlekeyboardnavigation(k);if(l==true){return false}}if(e.editable&&e.editmode!="programmatic"){if(e._handleeditkeydown){j=e._handleeditkeydown(k,e);if(e.isNestedGrid){k.stopPropagation()}}}if(!(b.jqx.browser.msie&&b.jqx.browser.version<8)){if(j&&e.keyboardnavigation&&e._handlekeydown){j=e._handlekeydown(k,e);if(e.isNestedGrid){k.stopPropagation()}}}else{if(e.isNestedGrid){if(j&&e.keyboardnavigation&&e._handlekeydown){j=e._handlekeydown(k,e);k.stopPropagation()}}}if(!j){if(k.preventDefault){k.preventDefault()}if(k.stopPropagation!=undefined){k.stopPropagation()}}return j})}},_hittestrow:function(s,q){if(this.vScrollInstance==null||this.hScrollInstance==null){return}if(s==undefined){s=0}if(q==undefined){q==0}var l=this.vScrollInstance;var k=this.hScrollInstance;var f=l.value;if(this.vScrollBar.css("visibility")!="visible"){f=0}var m=k.value;if(this.hScrollBar.css("visibility")!="visible"){m=0}if(this.scrollmode=="deferred"&&this._newmax!=null){if(f>this._newmax){f=this._newmax}}var r=parseInt(f)+q;var j=parseInt(m)+s;if(this.visiblerows==null){return}if(this.visiblerows.length==0){return}var e=false;var i=this._findvisiblerow(r,this.visiblerows);if(i>=0){var o=this.visiblerows[i];var d=this.rowdetails&&o.rowdetails;var n=!o.rowdetailshidden;if(d){var g=this.visiblerows[i-1];if(g==o){o=g;i--}if(n){var h=b(this.hittestinfo[i].visualrow).position().top+parseInt(this.table.css("top"));var p=b(this.hittestinfo[i].visualrow).height();if(!(q>=h&&q<=h+p)){i++;o=this.visiblerows[i];e=true}}}}return{index:i,row:o,details:e}},getcellatposition:function(j,q){var r=this.that;var z=this.showheader?this.columnsheader.height()+2:0;var s=this._groupsheader()?this.groupsheader.height():0;var B=this.showtoolbar?this.toolbarheight:0;s+=B;var g=this.host.coord();if(this.hasTransform){g=b.jqx.utilities.getOffset(this.host)}var p=j-g.left;var n=q-z-g.top-s;var d=this._hittestrow(p,n);var k=d.row;var l=d.index;var t=this.table[0].rows[l];if(this.dataview&&this.dataview.records.length==0){var o=this.table[0].rows;var C=0;for(var w=0;w<o.length;w++){if(n>=C&&n<C+this.rowsheight){t=o[w];break}C+=this.rowsheight}k={boundindex:w}}if(t==null){return true}var u=this.hScrollInstance;var v=u.value;var f=0;var m=this.groupable?this.groups.length:0;for(var w=0;w<t.cells.length;w++){var h=parseInt(b(this.columnsrow[0].cells[w]).css("left"));var j=h-v;if(r.columns.records[w].pinned){j=h}if(r.columns.records[w].hidden){continue}var A=j+b(this.columnsrow[0].cells[w]).width();if(A>=p&&p>=j){f=w;break}}if(k!=null){var e=this._getcolumnat(f);return{row:this.getboundindex(k),column:e.datafield,value:this.getcellvalue(this.getboundindex(k),e.datafield)}}return null},_handlemousedown:function(P,l){if(P.target==null){return true}if(l.disabled){return true}if(b(P.target).ischildof(this.columnsheader)||b(P.target).ischildof(this.hScrollBar)||b(P.target).ischildof(this.vScrollBar)){return true}var m;if(P.which){m=(P.which==3)}else{if(P.button){m=(P.button==2)}}var I;if(P.which){I=(P.which==2)}else{if(P.button){I=(P.button==1)}}if(I){return true}if(this.showstatusbar){if(b(P.target).ischildof(this.statusbar)){return true}if(P.target==this.statusbar[0]){return true}}if(this.showtoolbar){if(b(P.target).ischildof(this.toolbar)){return true}if(P.target==this.toolbar[0]){return true}}if(this.pageable){if(b(P.target).ischildof(this.pager)){return true}if(P.target==this.pager[0]){return true}}if(!this.columnsheader){return true}if(!this.editcell){if(this.pageable){if(b(P.target).ischildof(this.pager)){return true}}}var N=this.showheader?this.columnsheader.height()+2:0;var u=this._groupsheader()?this.groupsheader.height():0;var z=this.showtoolbar?this.toolbarheight:0;u+=z;var L=this.host.coord();if(this.hasTransform){L=b.jqx.utilities.getOffset(this.host);var R=this._getBodyOffset();L.left-=R.left;L.top-=R.top}var h=parseInt(P.pageX);var j=parseInt(P.pageY);if(this.isTouchDevice()){var Q=l.getTouches(P);var H=Q[0];h=parseInt(H.pageX);j=parseInt(H.pageY);if(l.touchmode==true){if(H._pageX!=undefined){h=parseInt(H._pageX);j=parseInt(H._pageY)}}}var C=h-L.left;var B=j-N-L.top-u;if(this.pageable&&!this.autoheight&&this.gotopage){var d=this.pager.coord().top-L.top-u-N;if(B>d){return}}var M=this._hittestrow(C,B);if(!M){return}if(M.details){return}var p=M.row;var w=M.index;var q=P.target.className;var g=this.table[0].rows[w];if(g==null){if(l.editable&&l.begincelledit){if(l.editcell){l.endcelledit(l.editcell.row,l.editcell.column,false,true)}}return true}l.mousecaptured=true;l.mousecaptureposition={left:P.pageX,top:P.pageY-u,clickedrow:g};var k=this.hScrollInstance;var s=k.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){s=k.max-k.value}}var A=-1;var v=this.groupable?this.groups.length:0;if(this.rtl){if(this.vScrollBar[0].style.visibility!="hidden"){s-=this.scrollbarsize+4}if(this.hScrollBar[0].style.visibility=="hidden"){s=-parseInt(this.content.css("left"))}}for(var J=0;J<g.cells.length;J++){var K=parseInt(b(this.columnsrow[0].cells[J]).css("left"));var h=K-s;if(l.columns.records[J].pinned&&!l.rtl){h=K}var D=this._getcolumnat(J);if(D!=null&&D.hidden){continue}var E=h+b(this.columnsrow[0].cells[J]).width();if(E>=C&&C>=h){A=J;l.mousecaptureposition.clickedcell=J;break}}if(this.rtl&&this._haspinned){for(var J=g.cells.length-1;J>=0;J--){if(!l.columns.records[J].pinned){break}var K=b(this.columnsrow[0].cells[J]).coord().left-this.host.coord().left;var h=K;var D=this._getcolumnat(J);if(D!=null&&D.hidden){continue}var E=h+b(this.columnsrow[0].cells[J]).width();if(E>=C&&C>=h){A=J;l.mousecaptureposition.clickedcell=J;break}}}if(p!=null&&A>=0){this._raiseEvent(1,{rowindex:this.getboundindex(p),visibleindex:p.visibleindex,row:p,group:p.group,rightclick:m,originalEvent:P});var D=this._getcolumnat(A);var F=this.getcellvalue(this.getboundindex(p),D.datafield);if(this.editable&&this.editcell){if(D.datafield==this.editcell.column){if(this.getboundindex(p)==this.editcell.row){this.mousecaptured=false}}}this._raiseEvent(8,{rowindex:this.getboundindex(p),column:D?D.getcolumnproperties():null,row:p,visibleindex:p.visibleindex,datafield:D?D.datafield:null,columnindex:A,value:F,rightclick:m,originalEvent:P});if(this.isTouchDevice()){if(D.columntype=="checkbox"&&this.editable&&this._overlayElement){if(!this.editcell){this._overlayElement.css("visibility","hidden");this.editcell=this.getcell(w,D.datafield);return true}}else{if(D.columntype=="button"&&this._overlayElement){if(D.buttonclick){D.buttonclick(g.cells[A].buttonrow,P)}return true}}}var f=false;if(this._lastmousedown!=null){if(this._mousedown-this._lastmousedown<300){if(this._clickedrowindex==this.getboundindex(p)){this._raiseEvent(22,{rowindex:this.getboundindex(p),row:p,visibleindex:p.visibleindex,group:p.group,rightclick:m,originalEvent:P});if(this._clickedcolumn==D.datafield){this._raiseEvent(23,{rowindex:this.getboundindex(p),row:p,visibleindex:p.visibleindex,column:D?D.getcolumnproperties():null,datafield:D?D.datafield:null,columnindex:A,value:F,rightclick:m,originalEvent:P})}f=true;this._clickedrowindex=-1;this._clickedcolumn=null;if(P.isPropagationStopped&&P.isPropagationStopped()){return false}}}}if(m){return true}if(!f){this._clickedrowindex=this.getboundindex(p);this._clickedcolumn=D.datafield}var e=b.jqx.utilities.getBrowser();if(e.browser=="msie"&&parseInt(e.version)<=7){if(A==0&&this.rowdetails){q="jqx-grid-group-collapse"}if(v>0){if(A<=v){q="jqx-grid-group-collapse"}}}if(q.indexOf("jqx-grid-group-expand")!=-1||q.indexOf("jqx-grid-group-collapse")!=-1){if(!this.rtl){if(v>0&&A<v&&this._togglegroupstate){this._togglegroupstate(p.bounddata,true)}else{if(A==v&&this.rowdetails&&this.showrowdetailscolumn){this._togglerowdetails(p.bounddata,true);this.gridcontent[0].scrollTop=0;this.gridcontent[0].scrollLeft=0}}}else{if(v>0&&A>g.cells.length-v-1&&this._togglegroupstate){this._togglegroupstate(p.bounddata,true)}else{if(A==g.cells.length-1-v&&this.rowdetails&&this.showrowdetailscolumn){this._togglerowdetails(p.bounddata,true);this.gridcontent[0].scrollTop=0;this.gridcontent[0].scrollLeft=0}}}}else{if(p.boundindex!=-1){var n=this.selectedrowindexes.slice(0);var O=false;if(l.selectionmode!="none"&&l.selectionmode!="checkbox"&&this._selectrowwithmouse){if(l.selectionmode=="multiplecellsadvanced"||l.selectionmode=="multiplecellsextended"||l.selectionmode=="multiplerowsextended"||l.selectionmode=="multiplerowsadvanced"){if(!P.ctrlKey&&!P.shiftKey&&!P.metaKey){l.selectedrowindexes=new Array();l.selectedcells=new Array()}}var t=false;var o=this.getboundindex(p);if(l._oldselectedrow===o||l.selectionmode==="none"){t=true}if(l.selectionmode.indexOf("cell")==-1){if((l.selectionmode!="singlerow")||(l.selectedrowindex!=o&&l.selectionmode=="singlerow")){this._applyrowselection(o,true,false,null,D.datafield);this._selectrowwithmouse(l,M,n,D.datafield,P.ctrlKey||P.metaKey,P.shiftKey)}}else{if(D.datafield!=null){this._selectrowwithmouse(l,M,n,D.datafield,P.ctrlKey||P.metaKey,P.shiftKey);if(!P.shiftKey){this._applycellselection(o,D.datafield,true,false)}}}if(l._oldselectedcell){if(l._oldselectedcell.datafield==l.selectedcell.datafield&&l._oldselectedcell.rowindex==l.selectedcell.rowindex){O=true}}l._oldselectedcell=l.selectedcell;l._oldselectedrow=o}if(l.autosavestate){if(l.savestate){l.savestate()}}if(l.editable&&l.begincelledit&&l.editmode!="programmatic"){if(P.isPropagationStopped&&P.isPropagationStopped()){return false}if(l.editmode=="selectedrow"){if(t&&!l.editcell){if(D.columntype!=="checkbox"){var r=l.beginrowedit(this.getboundindex(p))}}else{if(l.editcell&&!t&&l.selectionmode!="none"){var r=l.endrowedit(l.editcell.row)}}}else{var G=l.editmode=="click"||(O&&l.editmode=="selectedcell");if(l.selectionmode.indexOf("cell")==-1){if(l.editmode!="dblclick"){G=true}}if(G){if(p.boundindex!=undefined&&D.editable){var r=l.begincelledit(this.getboundindex(p),D.datafield,D.defaulteditorvalue);if(l.selectionmode.indexOf("cell")!=-1){l._applycellselection(o,D.datafield,false,false)}}}if(l.selectionmode.indexOf("cell")!=-1){if(l.editmode=="selectedcell"&&!O&&l.editcell){l.endcelledit(l.editcell.row,l.editcell.column,false,true)}}}return true}}}}return true},_columnPropertyChanged:function(e,d,g,f){},_rowPropertyChanged:function(g,d,f,e){},_serializeObject:function(d){if(d==null){return""}var e="";b.each(d,function(g){var h=this;if(g>0){e+=", "}e+="[";var f=0;for(obj in h){if(f>0){e+=", "}e+="{"+obj+":"+h[obj]+"}";f++}e+="]"});return e},isbindingcompleted:function(){return !this._loading},propertyChangedHandler:function(e,f,i,h){if(this.isInitialized==undefined||this.isInitialized==false){return}f=f.toLowerCase();switch(f){case"editable":e.refresh();break;case"everpresentrowactionsmode":if(i!=h){e._removeaddnewrow();e.render()}break;case"everpresentrowactions":e._updateaddnewrowui();break;case"showeverpresentrow":case"everpresentrowposition":case"everpresentrowheight":if(i!=h){e._removeaddnewrow();e.render()}break;case"rtl":e.content.css("left","");e.columns=e._columns;e._filterrowcache=[];e.vScrollBar.jqxScrollBar({rtl:h});e.hScrollBar.jqxScrollBar({rtl:h});if(e._initpager){e._initpager()}if(e._initgroupsheader){e._initgroupsheader()}e.render();break;case"enablebrowserselection":if(!e.showfilterrow){if(!e.showstatusbar&&!e.showtoolbar){e.host.addClass("jqx-disableselect")}e.content.addClass("jqx-disableselect")}if(e.enablebrowserselection){e.content.removeClass("jqx-disableselect");e.host.removeClass("jqx-disableselect")}break;case"columnsheight":if(e.columnsheight!=25||e.columngroups){e._measureElement("column")}e._render(true,true,true,false,false);break;case"rowsheight":if(h!=i){if(e.rowsheight!=25){e._measureElement("cell")}e.virtualsizeinfo=null;e.rendergridcontent(true,false);e.refresh()}break;case"scrollMode":e.vScrollInstance.thumbStep=e.rowsheight;break;case"showdefaultloadelement":e._builddataloadelement();break;case"showfiltermenuitems":case"showsortmenuitems":case"showgroupmenuitems":case"filtermode":e._initmenu();break;case"touchmode":if(i!=h){e._removeHandlers();e.touchDevice=null;e.vScrollBar.jqxScrollBar({touchMode:h});e.hScrollBar.jqxScrollBar({touchMode:h});e._updateTouchScrolling();e._arrange();e._updatecolumnwidths();e._updatecellwidths();e._addHandlers()}break;case"autoshowcolumnsmenubutton":if(i!=h){e._rendercolumnheaders()}break;case"rendergridrows":if(i!=h){e.updatebounddata()}break;case"editmode":if(i!=h){e._removeHandlers();e._addHandlers()}break;case"source":e.updatebounddata();if(e.virtualmode&&!e._loading){e.loadondemand=true;e._renderrows(e.virtualsizeinfo)}break;case"horizontalscrollbarstep":case"verticalscrollbarstep":case"horizontalscrollbarlargestep":case"verticalscrollbarlargestep":this.vScrollBar.jqxScrollBar({step:this.verticalscrollbarstep,largestep:this.verticalscrollbarlargestep});this.hScrollBar.jqxScrollBar({step:this.horizontalscrollbarstep,largestep:this.horizontalscrollbarlargestep});break;case"closeablegroups":if(e._initgroupsheader){e._initgroupsheader()}break;case"showgroupsheader":if(i!=h){e._arrange();if(e._initgroupsheader){e._initgroupsheader()}e._renderrows(e.virtualsizeinfo)}break;case"theme":if(h!=i){b.jqx.utilities.setTheme(i,h,e.host);if(e.gridmenu){e.gridmenu.jqxMenu({theme:h})}if(e.pageable){e._updatepagertheme()}if(e.filterable){e._updatefilterrowui(true)}if(e.showeverpresentrow){e._updateaddnewrowui(true)}}break;case"showtoolbar":case"toolbarheight":if(i!=h){e._arrange();e.refresh()}break;case"showstatusbar":if(i!=h){if(e.statusbar){if(h){e.statusbar.show()}else{e.statusbar.hide()}}e._arrange();e.refresh()}break;case"statusbarheight":if(i!=h){e._arrange();e.refresh()}break;case"filterable":case"showfilterrow":if(i!=h){e.render()}break;case"autoshowfiltericon":case"showfiltercolumnbackground":case"showpinnedcolumnbackground":case"showsortcolumnbackground":if(i!=h){e.rendergridcontent()}break;case"showrowdetailscolumn":if(i!=h){e.render()}break;case"scrollbarsize":if(i!=h){e._arrange()}break;case"width":case"height":if(i!=h){e._updatesize(true,true);e._resizeWindow();if(e.virtualmode&&!e._loading){e.vScrollInstance.setPosition(0)}else{setTimeout(function(){e._renderrows(e.virtualsizeinfo)},100)}}break;case"altrows":case"altstart":case"altstep":if(i!=h){e._renderrows(e.virtualsizeinfo)}break;case"groupsheaderheight":if(i!=h){e._arrange();if(e._initgroupsheader){e._initgroupsheader()}}break;case"pagerheight":if(i!=h){e._initpager()}break;case"selectedrowindex":e.selectrow(h);break;case"selectionmode":if(i!=h){if(h=="none"){e.selectedrowindexes=new Array();e.selectedcells=new Array();e.selectedrowindex=-1}e._renderrows(e.virtualsizeinfo);if(h=="checkbox"){e._render(false,false,true,false,false)}}break;case"showheader":if(h){e.columnsheader.css("display","block")}else{e.columnsheader.css("display","none")}break;case"virtualmode":if(i!=h){e.dataview.virtualmode=e.virtualmode;e.dataview.refresh(false);e._render(false,false,false)}break;case"columnsmenu":if(i!=h){e.render()}break;case"columngroups":e._render(true,true,true,false,false);break;case"columns":if(e._serializeObject(e._cachedcolumns)!==e._serializeObject(h)){var d=false;if(e.filterable){if(i&&i.records){b.each(i.records,function(){if(this.filter){d=true}e.dataview.removefilter(this.displayfield,this.filter)})}}e._columns=null;e._filterrowcache=[];e.render();if(d){e.applyfilters()}e._cachedcolumns=e.columns;if(e.removesort){e.removesort()}}else{e[f]=i}break;case"autoheight":if(i!=h){e._render(false,false,true)}break;case"pagermode":case"pagerbuttonscount":if(i!=h){if(e._initpager){if(e.pagershowrowscombo){e.pagershowrowscombo.jqxDropDownList("destroy");e.pagershowrowscombo=null}if(e.pagerrightbutton){e.removeHandler(e.pagerrightbutton,"mousedown");e.removeHandler(e.pagerrightbutton,"mouseup");e.removeHandler(e.pagerrightbutton,"click");e.pagerrightbutton.jqxButton("destroy");e.pagerrightbutton=null}if(e.pagerleftbutton){e.removeHandler(e.pagerleftbutton,"mousedown");e.removeHandler(e.pagerleftbutton,"mouseup");e.removeHandler(e.pagerleftbutton,"click");e.pagerleftbutton.jqxButton("destroy");e.removeHandler(b(document),"mouseup.pagerbuttons"+e.element.id);e.pagerleftbutton=null}e.pagerdiv.remove();e._initpager()}}break;case"pagesizeoptions":case"pageable":case"pagesize":if(i!=h){if(e._loading){throw new Error("jqxGrid: "+e.loadingerrormessage);return}if(!e.host.jqxDropDownList||!e.host.jqxListBox){e._testmodules();return}if(e._initpager){if(f!="pageable"&&f!="pagermode"){if(typeof(h)=="string"){var g="The expected value type is: Int.";if(f!="pagesize"){var g="The expected value type is: Array of Int values."}throw new Error("Invalid Value for: "+f+". "+g)}}e.dataview.pageable=e.pageable;e.dataview.pagenum=0;e.dataview.pagesize=e._getpagesize();if(e.virtualmode){e.updatebounddata()}e.dataview.refresh(true);e._initpager();if(f=="pagesizeoptions"){if(h!=null&&h.length>0){e.pagesize=parseInt(h[0]);e.dataview.pagesize=parseInt(h[0]);e.prerenderrequired=true;e._requiresupdate=true;e.dataview.pagenum=-1;e.gotopage(0)}}}e._render(false,false,false)}break;case"groups":if(e._serializeObject(i)!==e._serializeObject(h)){e.dataview.groups=h;e._refreshdataview();e._render(true,true,true,false)}break;case"groupable":if(i!=h){e.dataview.groupable=e.groupable;e.dataview.pagenum=0;e.dataview.refresh(false);e._render(false,false,true)}break;case"renderstatusbar":if(h!=null){e.renderstatusbar(e.statusbar)}break;case"rendertoolbar":if(h!=null){e.rendertoolbar(e.toolbar)}break;case"disabled":if(h){e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(e.toThemeProperty("jqx-fill-state-disabled"))}b.jqx.aria(e,"aria-disabled",e.disabled);if(e.pageable){if(e.pagerrightbutton){e.pagerrightbutton.jqxButton({disabled:h});e.pagerleftbutton.jqxButton({disabled:h});e.pagershowrowscombo.jqxDropDownList({disabled:h});e.pagergotoinput.attr("disabled",h)}if(e.pagerfirstbutton){e.pagerfirstbutton.jqxButton({disabled:h});e.pagerlastbutton.jqxButton({disabled:h})}}e.vScrollBar.jqxScrollBar({disabled:h});e.hScrollBar.jqxScrollBar({disabled:h});if(e.filterable&&e.showfilterrow){e._updatefilterrowui(true)}if(e.showeverpresentrow){e._updateaddnewrowui(true)}break}}});function c(d,e){this.owner=d;this.datafield=null;this.displayfield=null;this.text="";this.createfilterpanel=null;this.sortable=true;this.hideable=true;this.editable=true;this.hidden=false;this.groupable=true;this.renderer=null;this.cellsrenderer=null;this.checkchange=null,this.threestatecheckbox=false;this.buttonclick=null,this.columntype=null;this.cellsformat="";this.align="left";this.cellsalign="left";this.width="auto";this.minwidth=25;this.maxwidth="auto";this.pinned=false;this.visibleindex=-1;this.filterable=true;this.filter=null;this.filteritems=[];this.resizable=true;this.initeditor=null;this.createeditor=null;this.destroyeditor=null;this.geteditorvalue=null;this.validation=null;this.classname="";this.cellclassname="";this.cellendedit=null;this.cellbeginedit=null;this.cellvaluechanging=null;this.aggregates=null;this.aggregatesrenderer=null;this.menu=true;this.createfilterwidget=null;this.filtertype="default";this.filtercondition=null;this.rendered=null;this.exportable=true;this.exporting=false;this.draggable=true;this.nullable=true;this.clipboard=true;this.enabletooltips=true;this.columngroup=null;this.filterdelay=800;this.reseteverpresentrowwidgetvalue=null;this.geteverpresentrowwidgetvalue=null;this.createeverpresentrowwidget=null;this.initeverpresentrowwidget=null;this.validateeverpresentrowwidgetvalue=null;this.destroyeverpresentrowwidget=null;this.getcolumnproperties=function(){return{nullable:this.nullable,sortable:this.sortable,hideable:this.hideable,hidden:this.hidden,groupable:this.groupable,width:this.width,align:this.align,editable:this.editable,minwidth:this.minwidth,maxwidth:this.maxwidth,resizable:this.resizable,datafield:this.datafield,text:this.text,exportable:this.exportable,cellsalign:this.cellsalign,pinned:this.pinned,cellsformat:this.cellsformat,columntype:this.columntype,classname:this.classname,cellclassname:this.cellclassname,menu:this.menu}},this.setproperty=function(f,g){if(this[f]){var h=this[f];this[f]=g;this.owner._columnPropertyChanged(this,f,g,h)}else{if(this[f.toLowerCase()]){var h=this[f.toLowerCase()];this[f.toLowerCase()]=g;this.owner._columnPropertyChanged(this,f.toLowerCase(),g,h)}}};this._initfields=function(g){if(g!=null){var f=this.that;if(b.jqx.hasProperty(g,"dataField")){this.datafield=b.jqx.get(g,"dataField")}if(b.jqx.hasProperty(g,"displayField")){this.displayfield=b.jqx.get(g,"displayField")}else{this.displayfield=this.datafield}if(b.jqx.hasProperty(g,"enableTooltips")){this.enabletooltips=b.jqx.get(g,"enableTooltips")}if(b.jqx.hasProperty(g,"text")){this.text=b.jqx.get(g,"text")}else{this.text=this.displayfield}if(b.jqx.hasProperty(g,"createfilterpanel")){this.createfilterpanel=b.jqx.get(g,"createfilterpanel")}if(b.jqx.hasProperty(g,"sortable")){this.sortable=b.jqx.get(g,"sortable")}if(b.jqx.hasProperty(g,"hideable")){this.hideable=b.jqx.get(g,"hideable")}if(b.jqx.hasProperty(g,"hidden")){this.hidden=b.jqx.get(g,"hidden")}if(b.jqx.hasProperty(g,"groupable")){this.groupable=b.jqx.get(g,"groupable")}if(b.jqx.hasProperty(g,"renderer")){this.renderer=b.jqx.get(g,"renderer")}if(b.jqx.hasProperty(g,"align")){this.align=b.jqx.get(g,"align")}if(b.jqx.hasProperty(g,"cellsAlign")){this.cellsalign=b.jqx.get(g,"cellsAlign")}if(b.jqx.hasProperty(g,"clipboard")){this.cellsalign=b.jqx.get(g,"clipboard")}if(b.jqx.hasProperty(g,"cellsFormat")){this.cellsformat=b.jqx.get(g,"cellsFormat")}if(b.jqx.hasProperty(g,"width")){this.width=b.jqx.get(g,"width")}if(b.jqx.hasProperty(g,"minWidth")){this.minwidth=parseInt(b.jqx.get(g,"minWidth"));if(isNaN(this.minwidth)){this.minwidth=25}}if(b.jqx.hasProperty(g,"maxWidth")){this.maxwidth=parseInt(b.jqx.get(g,"maxWidth"));if(isNaN(this.maxwidth)){this.maxwidth="auto"}}if(b.jqx.hasProperty(g,"cellsRenderer")){this.cellsrenderer=b.jqx.get(g,"cellsRenderer")}else{if(g.cellsRenderer){this.cellsrenderer=g.cellsRenderer}}if(b.jqx.hasProperty(g,"columnType")){this.columntype=b.jqx.get(g,"columnType")}if(b.jqx.hasProperty(g,"checkChange")){this.checkchange=b.jqx.get(g,"checkChange")}if(b.jqx.hasProperty(g,"buttonClick")){this.buttonclick=b.jqx.get(g,"buttonClick")}else{if(g.buttonClick){this.buttonclick=g.buttonClick}}if(b.jqx.hasProperty(g,"pinned")){this.pinned=b.jqx.get(g,"pinned")}if(b.jqx.hasProperty(g,"visibleIndex")){this.visibleindex=b.jqx.get(g,"visibleIndex")}if(b.jqx.hasProperty(g,"filterable")){this.filterable=b.jqx.get(g,"filterable")}if(b.jqx.hasProperty(g,"filter")){this.filter=b.jqx.get(g,"filter")}if(b.jqx.hasProperty(g,"resizable")){this.resizable=b.jqx.get(g,"resizable")}if(b.jqx.hasProperty(g,"editable")){this.editable=b.jqx.get(g,"editable")}if(b.jqx.hasProperty(g,"initEditor")){this.initeditor=b.jqx.get(g,"initEditor")}else{if(g.initEditor){this.initeditor=g.initEditor}}if(b.jqx.hasProperty(g,"createEditor")){this.createeditor=b.jqx.get(g,"createEditor")}else{if(g.createEditor){this.createeditor=g.createEditor}}if(b.jqx.hasProperty(g,"reseteverpresentrowwidgetvalue")||b.jqx.hasFunction(g,"reseteverpresentrowwidgetvalue")){this.reseteverpresentrowwidgetvalue=b.jqx.get(g,"reseteverpresentrowwidgetvalue")}else{if(g.resetEverPresentRowWidgetValue){this.reseteverpresentrowwidgetvalue=g.resetEverPresentRowWidgetValue}}if(b.jqx.hasProperty(g,"geteverpresentrowwidgetvalue")||b.jqx.hasFunction(g,"geteverpresentrowwidgetvalue")){this.geteverpresentrowwidgetvalue=b.jqx.get(g,"geteverpresentrowwidgetvalue")}else{if(g.getEverPresentRowWidgetValue){this.geteverpresentrowwidgetvalue=g.getEverPresentRowWidgetValue}}if(b.jqx.hasProperty(g,"createeverpresentrowwidget")||b.jqx.hasFunction(g,"createeverpresentrowwidget")){this.createeverpresentrowwidget=b.jqx.get(g,"createeverpresentrowwidget")}else{if(g.createEverPresentRowWidget){this.createeverpresentrowwidget=g.createEverPresentRowWidget}}if(b.jqx.hasProperty(g,"initeverpresentrowwidget")||b.jqx.hasFunction(g,"initeverpresentrowwidget")){this.initeverpresentrowwidget=b.jqx.get(g,"initeverpresentrowwidget")}else{if(g.initEverPresentRowWidget){this.initeverpresentrowwidget=g.initEverPresentRowWidget}}if(b.jqx.hasProperty(g,"validateeverpresentrowwidgetvalue")){this.validateeverpresentrowwidgetvalue=b.jqx.get(g,"validateeverpresentrowwidgetvalue")}else{if(g.validateEverPresentRowWidgetValue){this.validateeverpresentrowwidgetvalue=g.validateEverPresentRowWidgetValue}}if(b.jqx.hasProperty(g,"destroyeverpresentrowwidget")||b.jqx.hasFunction(g,"destroyeverpresentrowwidget")){this.destroyeverpresentrowwidget=b.jqx.get(g,"destroyeverpresentrowwidget")}else{if(g.destroyEverPresentRowWidget){this.destroyEverPresentRowWidget=g.destroyEverPresentRowWidget}}if(b.jqx.hasProperty(g,"destroyEditor")){this.destroyeditor=b.jqx.get(g,"destroyEditor")}else{if(g.destroyEditor){this.destroyeditor=g.destroyEditor}}if(b.jqx.hasProperty(g,"getEditorValue")){this.geteditorvalue=b.jqx.get(g,"getEditorValue")}else{if(g.getEditorValue){this.geteditorvalue=g.getEditorValue}}if(b.jqx.hasProperty(g,"validation")){this.validation=b.jqx.get(g,"validation")}else{if(g.validation){this.validation=g.validation}}if(b.jqx.hasProperty(g,"cellBeginEdit")){this.cellbeginedit=b.jqx.get(g,"cellBeginEdit")}else{if(g.cellBeginEdit){this.cellbeginedit=g.cellBeginEdit}}if(b.jqx.hasProperty(g,"cellEndEdit")){this.cellendedit=b.jqx.get(g,"cellEndEdit")}else{if(g.cellEndEdit){this.cellendedit=g.cellEndEdit}}if(b.jqx.hasProperty(g,"className")){this.classname=b.jqx.get(g,"className")}if(b.jqx.hasProperty(g,"cellClassName")){this.cellclassname=b.jqx.get(g,"cellClassName")}else{if(g.cellClassName){this.cellclassname=g.cellClassName}}if(b.jqx.hasProperty(g,"menu")){this.menu=b.jqx.get(g,"menu")}if(b.jqx.hasProperty(g,"aggregates")){this.aggregates=b.jqx.get(g,"aggregates")}if(b.jqx.hasProperty(g,"aggregatesRenderer")){this.aggregatesrenderer=b.jqx.get(g,"aggregatesRenderer")}if(b.jqx.hasProperty(g,"createFilterWidget")){this.createfilterwidget=b.jqx.get(g,"createFilterWidget")}if(b.jqx.hasProperty(g,"filterType")){this.filtertype=b.jqx.get(g,"filterType")}if(b.jqx.hasProperty(g,"filterDelay")){this.filterdelay=b.jqx.get(g,"filterDelay")}if(b.jqx.hasProperty(g,"rendered")){this.rendered=b.jqx.get(g,"rendered")}if(b.jqx.hasProperty(g,"exportable")){this.exportable=b.jqx.get(g,"exportable")}if(b.jqx.hasProperty(g,"filterItems")){this.filteritems=b.jqx.get(g,"filterItems")}if(b.jqx.hasProperty(g,"cellValueChanging")){this.cellvaluechanging=b.jqx.get(g,"cellValueChanging")}if(b.jqx.hasProperty(g,"draggable")){this.draggable=b.jqx.get(g,"draggable")}if(b.jqx.hasProperty(g,"filterCondition")){this.filtercondition=b.jqx.get(g,"filterCondition")}if(b.jqx.hasProperty(g,"threeStateCheckbox")){this.threestatecheckbox=b.jqx.get(g,"threeStateCheckbox")}if(b.jqx.hasProperty(g,"nullable")){this.nullable=b.jqx.get(g,"nullable")}if(b.jqx.hasProperty(g,"columnGroup")){this.columngroup=b.jqx.get(g,"columnGroup")}if(!g instanceof String&&!(typeof g=="string")){for(var h in g){if(!f.hasOwnProperty(h)){if(!f.hasOwnProperty(h.toLowerCase())){d.host.remove();throw new Error("jqxGrid: Invalid property name - "+h+".")}}}}}};this._initfields(e);return this}function a(d,e){this.setdata=function(f){if(f!=null){this.bounddata=f;this.boundindex=f.boundindex;this.visibleindex=f.visibleindex;this.group=f.group;this.parentbounddata=f.parentItem;this.uniqueid=f.uniqueid;this.level=f.level}};this.setdata(e);this.parentrow=null;this.subrows=new Array();this.owner=d;this.height=25;this.hidden=false;this.rowdetails=null;this.rowdetailsheight=100;this.rowdetailshidden=true;this.top=-1;this.setrowinfo=function(f){this.hidden=f.hidden;this.rowdetails=f.rowdetails;this.rowdetailsheight=f.rowdetailsheight;this.rowdetailshidden=!f.showdetails;this.height=f.height};return this}b.jqx.collection=function(d){this.records=new Array();this.owner=d;this.updating=false;this.beginupdate=function(){this.updating=true};this.resumeupdate=function(){this.updating=false};this._raiseEvent=function(e){};this.clear=function(){this.records=new Array()};this.replace=function(f,e){this.records[f]=e;if(!this.updating){this._raiseEvent({type:"replace",element:e})}};this.isempty=function(e){if(this.records[e]==undefined){return true}return false};this.initialize=function(e){if(e<1){e=1}this.records[e-1]=-1};this.length=function(){return this.records.length};this.indexOf=function(e){return this.records.indexOf(e)};this.add=function(e){if(e==null){return false}this.records[this.records.length]=e;if(!this.updating){this._raiseEvent({type:"add",element:e})}return true};this.insertAt=function(f,e){if(f==null||f==undefined){return false}if(e==null){return false}if(f>=0){if(f<this.records.length){this.records.splice(f,0,e);if(!this.updating){this._raiseEvent({type:"insert",index:f,element:e})}return true}else{return this.add(e)}}return false};this.remove=function(f){if(f==null||f==undefined){return false}var e=this.records.indexOf(f);if(e!=-1){this.records.splice(e,1);if(!this.updating){this._raiseEvent({type:"remove",element:f})}return true}return false};this.removeAt=function(f){if(f==null||f==undefined){return false}if(f<0){return false}if(f<this.records.length){var e=this.records[f];this.records.splice(f,1);if(!this.updating){this._raiseEvent({type:"removeAt",index:f,element:e})}return true}return false};return this};b.jqx.dataview=function(){this.self=this;this.grid=null;this.uniqueId="id";this.records=[];this.rows=[];this.columns=[];this.groups=[];this.filters=new Array();this.updated=null;this.update=null;this.suspend=false;this.pagesize=0;this.pagenum=0;this.totalrows=0;this.totalrecords=0;this.groupable=true;this.loadedrecords=[];this.loadedrootgroups=[];this.loadedgroups=[];this.loadedgroupsByKey=[];this.virtualmode=true;this._cachegrouppages=new Array();this.source=null;this.changedrecords=new Array();this.rowschangecallback=null;this.that=this;this.destroy=function(){delete this.self;delete this.grid;delete this.uniqueId;delete this.records;delete this.rows;delete this.columns;delete this.groups;delete this.filters;delete this.updated;delete this.update;delete this.suspend;delete this.pagesize;delete this.pagenum;delete this.totalrows;delete this.totalrecords;delete this.groupable;delete this.loadedrecords;delete this.loadedrootgroups;delete this.loadedgroups;delete this.loadedgroupsByKey;delete this.virtualmode;delete this._cachegrouppages;delete this.source;delete this.changedrecords;delete this.rowschangecallback;delete this.that},this.suspendupdate=function(){this.suspend=true},this.isupdating=function(){return this.suspend},this.resumeupdate=function(d){this.suspend=false;if(d==undefined){d=true}this.refresh(d)},this.getrecords=function(){return this.records},this.clearrecords=function(){this.recordids=new Array()};this.databind=function(q,l){var p=q._source?true:false;var g=null;if(p){g=q;q=q._source}else{g=new b.jqx.dataAdapter(q,{autoBind:false})}var e=function(m){g.recordids=[];g.records=new Array();g.cachedrecords=new Array();g.originaldata=new Array();g._options.virtualmode=m.virtualmode;g._options.totalrecords=m.totalrecords;g._options.originaldata=m.originaldata;g._options.recordids=m.recordids;g._options.cachedrecords=new Array();g._options.pagenum=m.pagenum;g._options.pageable=m.pageable;if(q.type!=undefined){g._options.type=q.type}if(q.formatdata!=undefined){g._options.formatData=q.formatdata}if(q.contenttype!=undefined){g._options.contentType=q.contenttype}if(q.async!=undefined){g._options.async=q.async}if(q.updaterow!=undefined){g._options.updaterow=q.updaterow}if(q.addrow!=undefined){g._options.addrow=q.addrow}if(q.deleterow!=undefined){g._options.deleterow=q.deleterow}if(m.pagesize==0){m.pagesize=10}g._options.pagesize=m.pagesize};var t=function(C){C.totalrecords=g.totalrecords;if(!C.virtualmode){C.originaldata=g.originaldata;C.records=g.records;C.recordids=g.recordids;C.cachedrecords=g.cachedrecords}else{var x={startindex:C.pagenum*C.pagesize,endindex:(C.pagenum*C.pagesize+C.pagesize)};if(q.recordstartindex!=undefined){x.startindex=parseInt(q.recordstartindex)}if(q.recordendindex!=undefined){x.endindex=parseInt(q.recordendindex)}else{if(!C.grid.pageable){x.endindex=x.startindex+100;if(C.grid.autoheight){x.endindex=x.startindex+C.totalrecords}}}if(!q.recordendindex){if(!C.grid.pageable){x.endindex=x.startindex+100;if(C.grid.autoheight){x.endindex=x.startindex+C.totalrecords}}else{x={startindex:C.pagenum*C.pagesize,endindex:(C.pagenum*C.pagesize+C.pagesize)}}}x.data=g.records;if(C.grid.rendergridrows&&C.totalrecords>0){var E=0;q.records=C.grid.rendergridrows(x);if(q.records.length){E=q.records.length}if(q.records&&!q.records[x.startindex]){var m=new Array();var D=x.startindex;b.each(q.records,function(){m[D]=this;D++;E++});q.records=m}if(E==0){if(q.records){b.each(q.records,function(){E++})}}if(E>0&&E<x.endindex-x.startindex&&!C.grid.groupable){var A=q.records[0];for(var z=0;z<x.endindex-x.startindex-E;z++){var B={};for(obj in A){B[obj]=""}if(q.records.push){q.records.push(B)}}}}if(!q.records||C.totalrecords==0){q.records=new Array()}C.originaldata=q.records;C.records=q.records;C.cachedrecords=q.records}};e(this);this.source=q;if(l!==undefined){uniqueId=l}var y=this.that;switch(q.datatype){case"local":case"array":default:if(q.localdata==null){q.localdata=[]}if(q.localdata!=null){g.unbindBindingUpdate(y.grid.element.id);if((!y.grid.autobind&&y.grid.isInitialized)||y.grid.autobind){g.dataBind()}var k=function(x){if(x!=undefined&&x!=""){var z=g._changedrecords[0];if(z){var A=new Array();b.each(g._changedrecords,function(E){var B=this.index;var C=this.record;y.grid._updateFromAdapter=true;switch(x){case"update":var D=y.grid.getrowid(B);if(E==g._changedrecords.length-1){y.grid.updaterow(D,C)}else{y.grid.updaterow(D,C,false)}y.grid._updateFromAdapter=false;return;case"add":y.grid.addrow(null,C);y.grid._updateFromAdapter=false;return;case"remove":var D=y.grid.getrowid(B);A.push(D);return}});if(A.length>0){y.grid.deleterow(A,false);y.grid._updateFromAdapter=false}}if(x=="update"){return}}var m=y.totalrecords;t(y,x);if(q.localdata.notifier===null&&q.localdata.name=="observableArray"){q.localdata.notifier=function(F){if(this._updating){return}this._updating=true;var E=y.grid.getrowid(F.index);switch(F.type){case"add":var B=b.extend({},F.object[F.index]);var D=g.getid(q.id,B,F.index);if(F.index===0){y.grid.addrow(D,B,"first")}else{y.grid.addrow(D,B)}break;case"delete":y.grid.deleterow(E);break;case"update":if(F.path&&F.path.split(".").length>1){var C=F.path.split(".");y.grid.setcellvalue(F.index,C[C.length-1],F.newValue)}else{var B=b.extend({},F.object[F.index]);y.grid.updaterow(E,B)}break}this._updating=false}}if(x=="updateData"){y.refresh();y.grid._updateGridData()}else{if(q.recordstartindex&&this.virtualmode){y.updateview(q.recordstartindex,q.recordstartindex+y.pagesize)}else{y.refresh()}y.update(m!=y.totalrecords)}};k();g.bindBindingUpdate(y.grid.element.id,k)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(q.localdata!=null){g.unbindBindingUpdate(y.grid.element.id);if((!y.grid.autobind&&y.grid.isInitialized)||y.grid.autobind){g.dataBind()}var k=function(x){var m=y.totalrecords;t(y);if(x=="updateData"){y.refresh();y.grid._updateGridData()}else{if(q.recordstartindex&&y.virtualmode){y.updateview(q.recordstartindex,q.recordstartindex+y.pagesize)}else{y.refresh()}y.update(m!=y.totalrecords)}};k();g.bindBindingUpdate(y.grid.element.id,k);return}var u={};var o=0;var v={};for(var i=0;i<this.filters.length;i++){var f=this.filters[i].datafield;var j=this.filters[i].filter;if(!j.getfilters){continue}var h=j.getfilters();v[f+"operator"]=j.operator;for(var s=0;s<h.length;s++){h[s].datafield=f;var n=h[s].value;if(h[s].type=="datefilter"){if(h[s].value&&h[s].value.toLocaleString){var d=this.grid.getcolumn(h[s].datafield);if(d&&d.cellsformat){var r=this.grid.source.formatDate(h[s].value,d.cellsformat,this.grid.gridlocalization);if(r){v["filtervalue"+o]=r}else{v["filtervalue"+o]=h[s].value.toLocaleString()}}else{v["filtervalue"+o]=n.toString()}}else{v["filtervalue"+o]=n.toString()}}else{v["filtervalue"+o]=n.toString();if(h[s].data){v["filterid"+o]=h[s].data.toString()}if(h[s].id){v["filterid"+o]=h[s].id.toString()}}v["filtercondition"+o]=h[s].condition;v["filteroperator"+o]=h[s].operator;v["filterdatafield"+o]=f;o++}}v.filterscount=o;v.groupscount=y.groups.length;for(var i=0;i<y.groups.length;i++){v["group"+i]=y.groups[i]}if(q.recordstartindex==undefined){q.recordstartindex=0}if(q.recordendindex==undefined||q.recordendindex==0){if(y.grid.height&&y.grid.height.toString().indexOf("%")==-1){q.recordendindex=parseInt(y.grid.height)/y.grid.rowsheight;q.recordendindex+=2;q.recordendindex=parseInt(q.recordendindex)}else{q.recordendindex=b(window).height()/y.grid.rowsheight;q.recordendindex=parseInt(q.recordendindex)}if(this.pageable){q.recordendindex=this.pagesize}}if(this.pageable){q.recordstartindex=(this.pagenum)*this.pagesize;q.recordendindex=(this.pagenum+1)*this.pagesize}b.extend(v,{sortdatafield:y.sortfield,sortorder:y.sortfielddirection,pagenum:y.pagenum,pagesize:y.grid.pagesize,recordstartindex:q.recordstartindex,recordendindex:q.recordendindex});var w=g._options.data;if(g._options.data){b.extend(g._options.data,v)}else{if(q.data){b.extend(v,q.data)}g._options.data=v}var k=function(){var x=b.jqx.browser.msie&&b.jqx.browser.version<9;var z=function(){var A=y.totalrecords;t(y);if(q.recordstartindex&&y.virtualmode){y.updateview(q.recordstartindex,q.recordstartindex+y.pagesize)}else{y.refresh()}y.update(A!=y.totalrecords)};if(x){try{z()}catch(m){}}else{z()}};g.unbindDownloadComplete(y.grid.element.id);g.bindDownloadComplete(y.grid.element.id,k);if((!y.grid.autobind&&y.grid.isInitialized)||y.grid.autobind){g.dataBind()}else{if(!y.grid.isInitialized&&!y.grid.autobind){k()}}g._options.data=w}};this.getid=function(g,e,f){if(b(g,e).length>0){return b(g,e).text()}if(g){if(g.toString().length>0){var d=b(e).attr(g);if(d!=null&&d.toString().length>0){return d}}}return f};this.getvaluebytype=function(g,d){var e=g;if(d.type=="date"){var f=new Date(g);if(f.toString()=="NaN"||f.toString()=="Invalid Date"){if(b.jqx.dataFormat){g=b.jqx.dataFormat.tryparsedate(g)}else{g=f}}else{g=f}if(g==null){g=e}}else{if(d.type=="float"){var g=parseFloat(g);if(isNaN(g)){g=e}}else{if(d.type=="int"){var g=parseInt(g);if(isNaN(g)){g=e}}else{if(d.type=="bool"){if(g!=null){if(g.toLowerCase()=="false"){g=false}else{if(g.toLowerCase()=="true"){g=true}}}if(g==1){g=true}else{if(g==0){g=false}else{g=""}}}}}}return g};this.setpaging=function(d){if(d.pageSize!=undefined){this.pagesize=d.pageSize}if(d.pageNum!=undefined){this.pagenum=Math.min(d.pageNum,Math.ceil(this.totalrows/this.pagesize))}this.refresh()};this.getpagingdetails=function(){return{pageSize:this.pagesize,pageNum:this.pagenum,totalrows:this.totalrows}};this._clearcaches=function(){this.sortcache={};this.sortdata=null;this.changedrecords=new Array();this.records=new Array();this.rows=new Array();this.cacheddata=new Array();this.originaldata=new Array();this.bounditems=new Array();this.loadedrecords=new Array();this.loadedrootgroups=new Array();this.loadedgroups=new Array();this.loadedgroupsByKey=new Array();this._cachegrouppages=new Array();this.recordsbyid=new Array();this.cachedrecords=new Array();this.recordids=new Array()};this.addfilter=function(g,f){var e=-1;for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==g){e=d;break}}if(e==-1){this.filters[this.filters.length]={filter:f,datafield:g}}else{this.filters[e]={filter:f,datafield:g}}};this.removefilter=function(e){for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==e){this.filters.splice(d,1);break}}};this.getItemFromIndex=function(d){return this.records[d]};this.updaterow=function(d,n,l){var e=this.filters&&this.filters.length>0&&!this.virtualmode;if(!e&&n!=undefined&&d!=undefined){n.uid=d;if(!(n[this.source.id])){n[this.source.id]=n.uid}var j=this.recordsbyid["id"+d];var k=this.records.indexOf(j);if(k==-1){return false}this.records[k]=n;if(this.cachedrecords){this.cachedrecords[k]=n}if(l==true||l==undefined){this.refresh()}this.changedrecords[n.uid]={Type:"Update",OldData:j,Data:n};return true}else{if(this.filters&&this.filters.length>0){var f=this.cachedrecords;var j=null;var k=-1;for(var h=0;h<f.length;h++){if(f[h].uid==d){j=f[h];k=h;break}}if(j){var m=this.that;for(var g in n){m.cachedrecords[k][g]=n[g]}if(l==true||l==undefined){this.refresh()}return true}}}return false};this.addrow=function(h,i,d,g){if(i!=undefined){if(b.isEmptyObject(i)){if(this.source&&this.source.datafields){b.each(this.source.datafields,function(){var j="";if(this.type=="number"){j=null}if(this.type=="date"){j=null}if(this.type=="bool"||this.type=="boolean"){j=false}i[this.name]=j})}}if(!h||this.recordsbyid["id"+h]){i.uid=this.getid(this.source.id,i,this.totalrecords);var e=this.recordsbyid["id"+i.uid];while(e!=null){var f=Math.floor(Math.random()*10000).toString();i.uid=f;e=this.recordsbyid["id"+f]}}else{i.uid=h}if(!(i[this.source.id])){if(this.source.id!=undefined){i[this.source.id]=i.uid}}if(d=="last"){this.records.push(i)}else{if(typeof d==="number"&&isFinite(d)){this.records.splice(d,0,i)}else{this.records.splice(0,0,i)}}if(this.filters&&this.filters.length>0){if(d=="last"){this.cachedrecords.push(i)}else{if(typeof d==="number"&&isFinite(d)){this.cachedrecords.splice(d,0,i)}else{this.cachedrecords.splice(0,0,i)}}}this.totalrecords++;if(this.virtualmode){this.source.totalrecords=this.totalrecords}if(g==true||g==undefined){this.refresh()}this.changedrecords[i.uid]={Type:"New",Data:i};return true}return false};this.deleterow=function(j,h){if(j!=undefined){var d=this.filters&&this.filters.length>0;if(this.recordsbyid["id"+j]&&!d){var e=this.recordsbyid["id"+j];var k=this.records.indexOf(e);this.changedrecords[j]={Type:"Delete",Data:this.records[k]};this.records.splice(k,1);this.totalrecords--;if(this.virtualmode){this.source.totalrecords=this.totalrecords}if(h==true||h==undefined){this.refresh()}return true}else{if(this.filters&&this.filters.length>0){var f=this.cachedrecords;var e=null;var k=-1;for(var g=0;g<f.length;g++){if(f[g].uid==j){e=f[g];k=g;break}}if(e){this.cachedrecords.splice(k,1);if(h==true||h==undefined){this.totalrecords=0;this.records=this.cachedrecords;this.refresh()}return true}}}return false}return false};this.reload=function(f,d,r,g,h,u,t){var m=this.that;var l=new Array();var o=f;var i=d;var j=r;var p=g;var k=i.length;var w=0;var e=0;var s,n;this.columns=[];this.bounditems=new Array();this.loadedrecords=new Array();this.loadedrootgroups=new Array();this.loadedgroups=new Array();this.loadedgroupsByKey=new Array();this._cachegrouppages=new Array();this.recordsbyid={};if(this.totalrecords==0){Object.size=function(z){var y=0,x;for(x in z){if(z.hasOwnProperty(x)){y++}}return y};var v=Object.size(o);this.totalrecords=v;b.each(this.records,function(y){var z=this;var x=0;b.each(z,function(A,B){m.columns[x++]=A});return false})}if(this.virtualmode){if(this.pageable){this.updateview();return}var u=0;if(!this.groupable){this.updateview();return}else{var t=this.totalrecords}}else{var u=0;var t=this.totalrecords}if(this.groupable&&this.groups.length>0&&this.loadgrouprecords){var q=u;q=this.loadgrouprecords(0,u,t,j,e,p,i,k,l)}else{w=this.loadflatrecords(u,t,j,e,p,i,k,l)}if(k>e){i.splice(e,k-e)}if(this.groups.length>0&&this.groupable){this.totalrows=q}else{this.totalrows=w}return l};this.loadflatrecords=function(d,o,e,p,l,u,n,q){var t=this.that;var k=d;var m=d;o=Math.min(o,this.totalrecords);var g=this.sortdata!=null;var f=this.source.id&&(this.source.datatype=="local"||this.source.datatype=="array"||this.source.datatype=="");var j=g?this.sortdata:this.records;for(var h=d;h<o;h++){var s={};if(!g){s=b.extend({},j[h]);id=s[t.uniqueId];s.boundindex=k;t.loadedrecords[k]=s;if(s.uid==undefined){s.uid=t.getid(t.source.id,s,k)}t.recordsbyid["id"+s.uid]=j[h];s.uniqueid=t.generatekey();t.bounditems[this.bounditems.length]=s}else{s=b.extend({},j[h].value);id=s[t.uniqueId];s.boundindex=j[h].index;if(s.uid==undefined){s.uid=t.getid(t.source.id,s,s.boundindex)}t.recordsbyid["id"+s.uid]=j[h].value;t.loadedrecords[k]=s;s.uniqueid=t.generatekey();t.bounditems[s.boundindex]=s}if(p>=n||id!=u[p][t.uniqueId]||(l&&l[id])){q[q.length]=p}u[p]=s;p++;s.visibleindex=m;m++;k++}if(t.grid.summaryrows){var r=k;b.each(t.grid.summaryrows,function(){var i=b.extend({},this);i.boundindex=o++;t.loadedrecords[r]=i;i.uniqueid=t.generatekey();t.bounditems[t.bounditems.length]=i;u[p]=i;p++;i.visibleindex=m;m++;r++})}return m},this.updateview=function(o,p){var r=this.that;var k=this.pagesize*this.pagenum;var n=0;var s=new Array();var e=this.filters;var j=this.updated;var l=s.length;if(this.pageable){if(this.virtualmode){if(!this.groupable||this.groups.length==0){this.loadflatrecords(this.pagesize*this.pagenum,this.pagesize*(1+this.pagenum),e,n,j,s,l,[]);this.totalrows=s.length}else{if(this.groupable&&this.groups.length>0&&this.loadgrouprecords){if(this._cachegrouppages[this.pagenum+"_"+this.pagesize]!=undefined){this.rows=this._cachegrouppages[this.pagenum+"_"+this.pagesize];this.totalrows=this.rows.length;return}var m=this.pagesize*(1+this.pagenum);if(m>this.totalrecords){m=this.totalrecords}this.loadgrouprecords(0,this.pagesize*this.pagenum,m,e,n,j,s,l,[]);this._cachegrouppages[this.pagenum+"_"+this.pagesize]=this.rows;this.totalrows=this.rows.length;return}}}}else{if(this.virtualmode&&(!this.groupable||this.groups.length==0)){var g=this.pagesize;if(g==0){g=Math.min(100,this.totalrecords)}var d=g*this.pagenum;if(this.loadedrecords.length==0){d=0}if(o!=null&&p!=null){this.loadflatrecords(o,p,e,n,j,s,l,[])}else{this.loadflatrecords(this.pagesize*this.pagenum,this.pagesize*(1+this.pagenum),e,n,j,s,l,[])}this.totalrows=this.loadedrecords.length;this.rows=s;if(s.length>=g){return}}}if(this.groupable&&this.pageable&&this.groups.length>0&&this._updategroupsinpage){s=this._updategroupsinpage(r,e,k,n,l,this.pagesize*this.pagenum,this.pagesize*(1+this.pagenum))}else{for(var h=this.pagesize*this.pagenum;h<this.pagesize*(1+this.pagenum);h++){var q=h<this.loadedrecords.length?this.loadedrecords[h]:null;if(q==null){continue}if(!this.pagesize||(k>=this.pagesize*this.pagenum&&k<=this.pagesize*(this.pagenum+1))){s[n]=q;n++}k++}}if((s.length==0||s.length<this.pagesize)&&!this.pageable&&this.virtualmode){n=s.length;var f=s.length;for(var h=this.pagesize*this.pagenum;h<this.pagesize*(1+this.pagenum)-f;h++){var q={};q.boundindex=h+f;q.visibleindex=h+f;q.uniqueid=r.generatekey();q.empty=true;r.bounditems[h+f]=q;s[n]=q;n++}}this.rows=s};this.generatekey=function(){var d=function(){return(((1+Math.random())*16)|0)};return(""+d()+d()+"-"+d()+"-"+d()+"-"+d()+"-"+d()+d()+d())};this.reloaddata=function(){this.reload(this.records,this.rows,this.filter,this.updated,true)};this.refresh=function(h){if(this.suspend){return}if(h==undefined){h=true}var l=this.rows.length;var k=this.totalrows;if(this.filters.length>0&&!this.virtualmode){var e="";var g=this.cachedrecords.length;var s=new Array();this.totalrecords=0;var n=this.cachedrecords;this._dataIndexToBoundIndex=new Array();var f=this.filters.length;if(this.source!=null&&this.source.filter!=undefined&&this.source.localdata!=undefined){s=this.source.filter(this.filters,n,g);if(s==undefined){s=new Array()}this.records=s}else{if(this.source.filter==null||this.source.filter==undefined){for(var u=0;u<g;u++){var o=n[u];var d=undefined;for(var m=0;m<f;m++){var e=this.filters[m].filter;var r=o[this.filters[m].datafield];var t=e.evaluate(r);if(d==undefined){d=t}else{if(e.operator=="or"){d=d||t}else{d=d&&t}}}if(d){s[s.length]=b.extend({dataindex:u},o);this._dataIndexToBoundIndex[u]={boundindex:s.length-1}}else{this._dataIndexToBoundIndex[u]=null}}this.records=s}}if(this.sortdata){var i=this.sortfield;if(this.sortcache[i]){this.sortdata=null;var p=this.sortcache[i].direction;this.sortcache[i]=null;this.sortby(this.sortfield,p);return}}}else{if(this.filters.length==0&&!this.virtualmode){if(this.cachedrecords){this.totalrecords=0;var n=this.cachedrecords;this.records=n;if(this.sortdata){var i=this.sortfield;if(this.sortcache[i]){this.sortdata=null;var p=this.sortcache[i].direction;this.sortcache[i]=null;this.sortby(this.sortfield,p);return}}}}}var q=this.reload(this.records,this.rows,this.filter,this.updated,h);this.updated=null;if(this.rowschangecallback!=null){if(k!=totalrows){this.rowschangecallback({type:"PagingChanged",data:getpagingdetails()})}if(l!=rows.length){this.rowschangecallback({type:"RowsCountChanged",data:{previous:l,current:rows.length}})}if(q.length>0||l!=rows.length){this.rowschangecallback({type:"RowsChanged",data:{previous:l,current:rows.length,diff:q}})}}};return this}})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{selectallrows:function(){this._trigger=false;var d=this.virtualmode?this.dataview.totalrecords:this.dataview.loadedrecords.length;this.selectedrowindexes=new Array();var e=this.dataview.loadedrecords;for(var c=0;c<d;c++){var f=e[c];if(!f){this.selectedrowindexes[c]=c;continue}var b=this.getboundindex(f);if(b!=undefined){this.selectedrowindexes[c]=b}}if(this.selectionmode=="checkbox"&&!this._checkboxcolumnupdating){if(this._checkboxcolumn){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:true})}}this._renderrows(this.virtualsizeinfo);this._trigger=true;if(this.selectionmode=="checkbox"){this._raiseEvent(2,{rowindex:this.selectedrowindexes})}},unselectallrows:function(){this._trigger=false;var c=this.virtualmode?this.dataview.totalrecords:this.dataview.loadedrecords.length;this.selectedrowindexes=new Array();var d=this.dataview.loadedrecords;for(var b=0;b<c;b++){var e=d[b];if(!e){this.selectedrowindexes[b]=b;continue}delete this.selectedrowindexes[b]}if(this.selectionmode=="checkbox"&&!this._checkboxcolumnupdating){if(this._checkboxcolumn){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false})}}this._renderrows(this.virtualsizeinfo);this._trigger=true;if(this.selectionmode=="checkbox"){this._raiseEvent(2,{rowindex:this.selectedrowindexes})}},selectrow:function(b,c){this._applyrowselection(b,true,c);if(c!==false){this._updatecheckboxselection()}},_updatecheckboxselection:function(){if(this.selectionmode=="checkbox"){var d=this.getrows();if(d&&this._checkboxcolumn){if(d.length===0){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false});return}var c=d.length;if(this.groupable){c=this.dataview.loadedrecords.length}if(this.virtualmode){c=this.source._source.totalrecords}var b=this.selectedrowindexes.length;if(b===c){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:true})}else{if(b===0){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false})}else{this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:null})}}}}},unselectrow:function(b,c){this._applyrowselection(b,false,c);if(c!==false){this._updatecheckboxselection()}},selectcell:function(c,b){this._applycellselection(c,b,true)},unselectcell:function(c,b){this._applycellselection(c,b,false)},clearselection:function(c,d){this._trigger=false;this.selectedrowindex=-1;this._oldselectedcell=null;if(d!==false){for(var b=0;b<this.selectedrowindexes.length;b++){this._raiseEvent(3,{rowindex:this.selectedrowindexes[b]})}}this.selectedrowindexes=new Array();this.selectedcells=new Array();this.selectedcell=null;if(this.selectionmode=="checkbox"&&!this._checkboxcolumnupdating){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false})}if(false===c){this._trigger=true;return}this._renderrows(this.virtualsizeinfo);this._trigger=true;if(this.selectionmode=="checkbox"){this._raiseEvent(3,{rowindex:this.selectedrowindexes})}},getselectedrowindex:function(){if(this.selectedrowindex==-1||this.selectedrowindex==undefined){for(var b=0;b<this.selectedrowindexes.length;b++){return this.selectedrowindexes[b]}}return this.selectedrowindex},getselectedrowindexes:function(){return this.selectedrowindexes},getselectedcell:function(){if(!this.selectedcell){return null}var b=this.selectedcell;b.row=this.selectedcell.rowindex;b.column=this.selectedcell.datafield;b.value=this.getcellvalue(b.row,b.column);return b},getselectedcells:function(){var b=new Array();for(obj in this.selectedcells){b[b.length]=this.selectedcells[obj]}return b},_getcellsforcopypaste:function(){var e=new Array();if(this.selectionmode.indexOf("cell")==-1){var h=this.selectedrowindexes;for(var d=0;d<h.length;d++){var c=h[d];for(var f=0;f<this.columns.records.length;f++){if(this.columns.records[f].datafield==="_checkboxcolumn"){continue}var g=c+"_"+this.columns.records[f].datafield;var b={rowindex:c,datafield:this.columns.records[f].datafield};e.push(b)}}}return e},deleteselection:function(){var d=this;var f=d.getselectedcells();if(this.selectionmode.indexOf("cell")==-1){f=this._getcellsforcopypaste()}if(f!=null&&f.length>0){for(var e=0;e<f.length;e++){var b=f[e];var g=d.getcolumn(b.datafield);var h=d.getcellvalue(b.rowindex,b.datafield);if(!g){continue}if(h!==""){var c=null;if(g.columntype=="checkbox"){if(!g.threestatecheckbox){c=false}}d._raiseEvent(17,{rowindex:b.rowindex,datafield:b.datafield,value:h});if(e==f.length-1){d.setcellvalue(b.rowindex,b.datafield,c,true);if(g.displayfield!=g.datafield){d.setcellvalue(b.rowindex,g.displayfield,c,true)}}else{d.setcellvalue(b.rowindex,b.datafield,c,false);if(g.displayfield!=g.datafield){d.setcellvalue(b.rowindex,g.displayfield,c,true)}}d._raiseEvent(18,{rowindex:b.rowindex,datafield:b.datafield,oldvalue:h,value:c})}}this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}},copyselection:function(){var n="";var s=this;this.clipboardselection={};this.logicalclipboardselection={};this._clipboardselection=[];var r=s.getselectedcells();if(this.selectionmode.indexOf("cell")==-1){r=this._getcellsforcopypaste()}var b=0;var e=new Array();if(r!=null&&r.length>0){var t=999999999999999;var q=-1;for(var j=0;j<r.length;j++){var l=r[j];var d=s.getcolumn(l.datafield);if(d!=null&&d.clipboard&&(!d.hidden||this.copytoclipboardhiddencolumns)){if(e.indexOf(d.text)==-1){e.push(d.text)}var p=s.getcelltext(l.rowindex,d.displayfield);var h=this.getrowdisplayindex(l.rowindex);if(!this.clipboardselection[h]){this.clipboardselection[h]={}}this.clipboardselection[h][d.displayfield]=p;if(!this.logicalclipboardselection[h]){this.logicalclipboardselection[h]={}}this.logicalclipboardselection[h][d.displayfield]=p;if(d.displayfield!=d.datafield){this.logicalclipboardselection[h][d.datafield]=s.getcellvalue(l.rowindex,d.datafield)}t=Math.min(t,h);q=Math.max(q,h)}}var g=new Array();for(var f=t;f<=q;f++){if(!this.logicalclipboardselection[f]){continue}var o=a.extend({},this.logicalclipboardselection[f]);g.push(o)}this.logicalclipboardselection=g;if(this.copytoclipboardwithheaders){for(var c=0;c<e.length;c++){if(c>0){n+="\t"}n+=e[c]}n+="\r\n"}for(var f=t;f<=q;f++){var k=0;this._clipboardselection[this._clipboardselection.length]=new Array();if(this.clipboardselection[f]!=undefined){a.each(this.clipboardselection[f],function(i,m){if(k>0){n+="\t"}var u=m;if(m==null){u=""}s._clipboardselection[s._clipboardselection.length-1][k]=u;k++;n+=u})}else{continue}if(f<q){n+="\r\n"}}}this.clipboardselectedtext=n;return n},pasteselection:function(){var g=this.getselectedcells();this._oldselectedcell=null;if(this.selectionmode.indexOf("cell")==-1){g=this._getcellsforcopypaste()}if(g!=null&&g.length>0){var h=g[0].rowindex;var w=this.getrowdisplayindex(h);var q=g[0].datafield;var u=this._getcolumnindex(q);var o=0;this.selectedrowindexes=new Array();this.selectedcells=new Array();var k=g.length;var B=0;var d=new Array();if(this.copytoclipboardwithheaders){this._clipboardselection.splice(0,1)}for(var z=0;z<this._clipboardselection.length;z++){B+=this._clipboardselection[z].length;d[z]=new Array();for(var y=0;y<this._clipboardselection[z].length;y++){var r=this._clipboardselection[z][y];d[z].push(r)}}if(B<g.length){var n=new Array();for(var z=0;z<g.length;z++){var e=g[z];if(!n[e.rowindex]){n[e.rowindex]=new Array()}n[e.rowindex].push(e)}var A=0;var D=0;for(var z=0;z<n.length;z++){if(!n[z]){continue}for(var y=0;y<n[z].length;y++){var e=n[z][y];var m=e.rowindex;var f=this.getcolumn(e.datafield);if(f.datafield==="_checkboxcolumn"){continue}if(f.hidden){continue}var r="";if(!d[A][D]){D=0}r=d[A][D];D++;if(f.cellsformat){if(f.cellsformat.indexOf("p")!=-1||f.cellsformat.indexOf("c")!=-1||f.cellsformat.indexOf("n")!=-1||f.cellsformat.indexOf("f")!=-1){if(r.indexOf(this.gridlocalization.currencysymbol)>-1){r=r.replace(this.gridlocalization.currencysymbol,"")}var b=function(x,j,t){var c=x;if(j==t){return x}var i=c.indexOf(j);while(i!=-1){c=c.replace(j,t);i=c.indexOf(j)}return c};r=b(r,this.gridlocalization.thousandsseparator,"");r=r.replace(this.gridlocalization.decimalseparator,".");if(r.indexOf(this.gridlocalization.percentsymbol)>-1){r=r.replace(this.gridlocalization.percentsymbol,"")}var E="";for(var s=0;s<r.length;s++){var p=r.substring(s,s+1);if(p==="-"){E+="-"}if(p==="."){E+="."}if(p.match(/^[0-9]+$/)!=null){E+=p}}r=E;r=r.replace(/ /g,"");r=new Number(r);if(isNaN(r)){r=""}}}this._raiseEvent(17,{rowindex:m,datafield:e.datafield,value:r});this.setcellvalue(m,f.displayfield,r,false);if(f.displayfield!=f.datafield&&this.logicalclipboardselection){if(this.logicalclipboardselection[m]){var v=this.logicalclipboardselection[m][f.datafield];if(v!=undefined){this.setcellvalue(m,f.datafield,v,false)}}}this._raiseEvent(18,{rowindex:m,datafield:e.datafield,oldvalue:this.getcellvalue(e.rowindex,e.datafield),value:r});this._applycellselection(m,e.datafield,true,false)}A++;if(!d[A]){A=0}}}else{if(!this._clipboardselection){return}for(var l=0;l<this._clipboardselection.length;l++){for(var C=0;C<this._clipboardselection[l].length;C++){var f=this.getcolumnat(u+C);if(!f){continue}if(f.datafield==="_checkboxcolumn"){continue}if(f.hidden){continue}var m=this.getrowboundindex(w+l);var e=this.getcell(m,f.datafield);var r=null;r=this._clipboardselection[l][C];if(r!=null){if(f.cellsformat){if(f.cellsformat.indexOf("p")!=-1||f.cellsformat.indexOf("c")!=-1||f.cellsformat.indexOf("n")!=-1||f.cellsformat.indexOf("f")!=-1){if(r.indexOf(this.gridlocalization.currencysymbol)>-1){r=r.replace(this.gridlocalization.currencysymbol,"")}var b=function(x,j,t){var c=x;if(j==t){return x}var i=c.indexOf(j);while(i!=-1){c=c.replace(j,t);i=c.indexOf(j)}return c};r=b(r,this.gridlocalization.thousandsseparator,"");r=r.replace(this.gridlocalization.decimalseparator,".");if(r.indexOf(this.gridlocalization.percentsymbol)>-1){r=r.replace(this.gridlocalization.percentsymbol,"")}var E="";for(var s=0;s<r.length;s++){var p=r.substring(s,s+1);if(p==="-"){E+="-"}if(p==="."){E+="."}if(p.match(/^[0-9]+$/)!=null){E+=p}}r=E;r=r.replace(/ /g,"");r=new Number(r);if(isNaN(r)){r=""}}}this._raiseEvent(17,{rowindex:m,datafield:e.datafield,value:r});this.setcellvalue(m,f.displayfield,r,false);if(f.displayfield!=f.datafield&&this.logicalclipboardselection){var v=this.logicalclipboardselection[l][f.datafield];if(v!=undefined){this.setcellvalue(m,f.datafield,v,false)}}this._raiseEvent(18,{rowindex:m,datafield:e.datafield,oldvalue:this.getcellvalue(e.rowindex,e.datafield),value:r});this._applycellselection(m,e.datafield,true,false)}}}}if(this.selectionmode=="checkbox"){this._updatecheckboxselection()}this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}if(this.clipboardend){this.clipboardend("paste")}},_applyrowselection:function(e,i,f,h,b){if(e==null){return false}var j=this.selectedrowindex;if(this.selectionmode=="singlerow"){if(i){this._raiseEvent(2,{rowindex:e,row:this.getrowdata(e)})}else{this._raiseEvent(3,{rowindex:e,row:this.getrowdata(e)})}this._raiseEvent(3,{rowindex:j});this.selectedrowindexes=new Array();this.selectedcells=new Array()}if(h==true){this.selectedrowindexes=new Array()}if(this.dataview.filters.length>0){var c=this.getrowdata(e);if(c&&c.dataindex!==undefined){e=c.dataindex}else{if(c&&c.dataindex===undefined){if(c.uid!=undefined){e=this.getrowboundindexbyid(c.uid)}}}}var d=this.selectedrowindexes.indexOf(e);if(i){this.selectedrowindex=e;if(d==-1){this.selectedrowindexes.push(e);if(this.selectionmode!="singlerow"){this._raiseEvent(2,{rowindex:e,row:this.getrowdata(e)})}}else{if(this.selectionmode=="multiplerows"){this.selectedrowindexes.splice(d,1);this._raiseEvent(3,{rowindex:this.selectedrowindex,row:this.getrowdata(e)});this.selectedrowindex=this.selectedrowindexes.length>0?this.selectedrowindexes[this.selectedrowindexes.length-1]:-1}}}else{if(d>=0||this.selectionmode=="singlerow"||this.selectionmode=="multiplerowsextended"||this.selectionmode=="multiplerowsadvanced"){var g=this.selectedrowindexes[d];this.selectedrowindexes.splice(d,1);this._raiseEvent(3,{rowindex:g,row:this.getrowdata(e)});this.selectedrowindex=-1}}if(f==undefined||f){this._rendervisualrows()}return true},_applycellselection:function(e,b,h,f){if(e==null){return false}if(b==null){return false}var j=this.selectedrowindex;if(this.selectionmode=="singlecell"){var d=this.selectedcell;if(d!=null){this._raiseEvent(16,{rowindex:d.rowindex,datafield:d.datafield})}this.selectedcells=new Array()}if(this.selectionmode=="multiplecellsextended"||this.selectionmode=="multiplecellsadvanced"){var d=this.selectedcell;if(d!=null){this._raiseEvent(16,{rowindex:d.rowindex,datafield:d.datafield})}}var g=e+"_"+b;if(this.dataview.filters.length>0){var c=this.getrowdata(e);if(c&&c.dataindex!==undefined){e=c.dataindex;var g=e+"_"+b}else{if(c&&c.dataindex===undefined){if(c.uid){e=this.getrowboundindexbyid(c.uid);var g=e+"_"+b}}}}var i={rowindex:e,datafield:b};if(h){this.selectedcell=i;if(!this.selectedcells[g]){this.selectedcells[g]=i;this.selectedcells.length++;this._raiseEvent(15,i)}else{if(this.selectionmode=="multiplecells"||this.selectionmode=="multiplecellsextended"||this.selectionmode=="multiplecellsadvanced"){delete this.selectedcells[g];if(this.selectedcells.length>0){this.selectedcells.length--}this._raiseEvent(16,i)}}}else{delete this.selectedcells[g];if(this.selectedcells.length>0){this.selectedcells.length--}this._raiseEvent(16,i)}if(f==undefined||f){this._rendervisualrows()}return true},_getcellindex:function(b){var c=-1;a.each(this.selectedcells,function(){c++;if(this[b]){return false}});return c},_clearhoverstyle:function(){if(undefined==this.hoveredrow||this.hoveredrow==-1){return}if(this.vScrollInstance.isScrolling()){return}if(this.hScrollInstance.isScrolling()){return}var b=this.table.find(".jqx-grid-cell-hover");if(b.length>0){b.removeClass(this.toTP("jqx-grid-cell-hover"));b.removeClass(this.toTP("jqx-fill-state-hover"))}this.hoveredrow=-1},_clearselectstyle:function(){var k=this.table[0].rows.length;var p=this.table[0].rows;var l=this.toTP("jqx-grid-cell-selected");var c=this.toTP("jqx-fill-state-pressed");var m=this.toTP("jqx-grid-cell-hover");var h=this.toTP("jqx-fill-state-hover");for(var g=0;g<k;g++){var b=p[g];var f=b.cells.length;var o=b.cells;for(var e=0;e<f;e++){var d=o[e];var n=a(d);if(d.className.indexOf("jqx-grid-cell-selected")!=-1){n.removeClass(l);n.removeClass(c)}if(d.className.indexOf("jqx-grid-cell-hover")!=-1){n.removeClass(m);n.removeClass(h)}}}},_selectpath:function(n,e){var l=this;var i=this._lastClickedCell?Math.min(this._lastClickedCell.row,n):0;var k=this._lastClickedCell?Math.max(this._lastClickedCell.row,n):0;if(i<=k){var h=this._getcolumnindex(this._lastClickedCell.column);var g=this._getcolumnindex(e);var f=Math.min(h,g);var d=Math.max(h,g);this.selectedcells=new Array();var m=this.dataview.loadedrecords;for(var b=i;b<=k;b++){for(var j=f;j<=d;j++){var n=m[b];this._applycellselection(l.getboundindex(n),l._getcolumnat(j).datafield,true,false)}}this._rendervisualrows()}},_selectrowpath:function(g){if(this.selectionmode=="multiplerowsextended"){var c=this;var b=this._lastClickedCell?Math.min(this._lastClickedCell.row,g):0;var h=this._lastClickedCell?Math.max(this._lastClickedCell.row,g):0;var f=this.dataview.loadedrecords;if(b<=h){this.selectedrowindexes=new Array();for(var e=b;e<=h;e++){var g=f[e];var d=this.getrowboundindex(e);this._applyrowselection(d,true,false)}this._rendervisualrows()}}},_selectrowwithmouse:function(p,b,c,f,d,s){var j=b.row;if(j==undefined){return}var k=b.index;if(this.hittestinfo[k]==undefined){return}var t=this.hittestinfo[k].visualrow;if(this.hittestinfo[k].details){return}var m=t.cells[0].className;if(j.group){return}if(this.selectionmode=="multiplerows"||this.selectionmode=="multiplecells"||this.selectionmode=="checkbox"||(this.selectionmode.indexOf("multiple")!=-1&&(s==true||d==true))){var l=this.getboundindex(j);if(this.dataview.filters.length>0){var v=this.getrowdata(l);if(v){l=v.dataindex;if(l==undefined){var l=this.getboundindex(j)}}}var q=c.indexOf(l)!=-1;var w=this.getboundindex(j)+"_"+f;if(this.selectionmode.indexOf("cell")!=-1){var h=this.selectedcells[w]!=undefined;if(this.selectedcells[w]!=undefined&&h){this._selectcellwithstyle(p,false,k,f,t)}else{this._selectcellwithstyle(p,true,k,f,t)}if(s&&this._lastClickedCell==undefined){var g=this.getselectedcells();if(g&&g.length>0){this._lastClickedCell={row:g[0].rowindex,column:g[0].datafield}}}if(s&&this._lastClickedCell){this._selectpath(j.visibleindex,f);this.mousecaptured=false;if(this.selectionarea.css("visibility")=="visible"){this.selectionarea.css("visibility","hidden")}}}else{if(q){if(d){this._applyrowselection(this.getboundindex(j),false)}else{this._selectrowwithstyle(p,t,false,f)}}else{this._selectrowwithstyle(p,t,true,f)}if(s&&this._lastClickedCell==undefined){var i=this.getselectedrowindexes();if(i&&i.length>0){this._lastClickedCell={row:i[0],column:f}}}if(s&&this._lastClickedCell){this.selectedrowindexes=new Array();var e=this._lastClickedCell?Math.min(this._lastClickedCell.row,j.visibleindex):0;var u=this._lastClickedCell?Math.max(this._lastClickedCell.row,j.visibleindex):0;var n=this.dataview.loadedrecords;for(var o=e;o<=u;o++){var j=n[o];if(j){this._applyrowselection(this.getboundindex(j),true,false,false)}}this._rendervisualrows()}}}else{this._clearselectstyle();this._selectrowwithstyle(p,t,true,f);if(this.selectionmode.indexOf("cell")!=-1){this._selectcellwithstyle(p,true,k,f,t)}}if(!s){this._lastClickedCell={row:j.visibleindex,column:f}}},_selectcellwithstyle:function(d,c,g,f,e){var b=a(e.cells[d._getcolumnindex(f)]);b.removeClass(this.toTP("jqx-grid-cell-hover"));b.removeClass(this.toTP("jqx-fill-state-hover"));if(c){b.addClass(this.toTP("jqx-grid-cell-selected"));b.addClass(this.toTP("jqx-fill-state-pressed"))}else{b.removeClass(this.toTP("jqx-grid-cell-selected"));b.removeClass(this.toTP("jqx-fill-state-pressed"))}},_selectrowwithstyle:function(e,h,b,j){var c=h.cells.length;var f=0;if(e.rowdetails&&e.showrowdetailscolumn){if(!this.rtl){f=1+this.groups.length}else{c-=1;c-=this.groups.length}}else{if(this.groupable){if(!this.rtl){f=this.groups.length}else{c-=this.groups.length}}}for(var g=f;g<c;g++){var d=h.cells[g];if(b){a(d).removeClass(this.toTP("jqx-grid-cell-hover"));a(d).removeClass(this.toTP("jqx-fill-state-hover"));if(e.selectionmode.indexOf("cell")==-1){a(d).addClass(this.toTP("jqx-grid-cell-selected"));a(d).addClass(this.toTP("jqx-fill-state-pressed"))}}else{a(d).removeClass(this.toTP("jqx-grid-cell-hover"));a(d).removeClass(this.toTP("jqx-grid-cell-selected"));a(d).removeClass(this.toTP("jqx-fill-state-hover"));a(d).removeClass(this.toTP("jqx-fill-state-pressed"))}}},_handlemousemoveselection:function(ab,o){if(o.hScrollInstance.isScrolling()||o.vScrollInstance.isScrolling()){return false}if((o.selectionmode=="multiplerowsextended"||o.selectionmode=="multiplecellsextended"||o.selectionmode=="multiplecellsadvanced")&&o.mousecaptured){if(o.multipleselectionbegins){var b=o.multipleselectionbegins(ab);if(b===false){return true}}var aa=this.showheader?this.columnsheader.height()+2:0;var I=this._groupsheader()?this.groupsheader.height():0;var K=this.showtoolbar?this.toolbar.height():0;I+=K;var Z=this.host.coord();if(this.hasTransform){Z=a.jqx.utilities.getOffset(this.host);var ad=this._getBodyOffset();Z.left-=ad.left;Z.top-=ad.top}if(this.host.css("border-top-width")==="0px"){I-=2}var M=ab.pageX;var L=ab.pageY-I;if(Math.abs(this.mousecaptureposition.left-M)>3||Math.abs(this.mousecaptureposition.top-L)>3){var f=parseInt(this.columnsheader.coord().top);if(this.hasTransform){f=a.jqx.utilities.getOffset(this.columnsheader).top}if(M<Z.left){M=Z.left}if(M>Z.left+this.host.width()){M=Z.left+this.host.width()}var X=Z.top+aa;if(L<X){L=X+5}var J=parseInt(Math.min(o.mousecaptureposition.left,M));var g=-5+parseInt(Math.min(o.mousecaptureposition.top,L));var H=parseFloat(Math.abs(o.mousecaptureposition.left-M));var P=parseInt(Math.abs(o.mousecaptureposition.top-L));J-=Z.left;g-=Z.top;this.selectionarea.css("visibility","visible");if(o.selectionmode=="multiplecellsadvanced"){var M=J;var t=M+H;var G=M;var n=o.hScrollInstance;var v=n.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){v=n.max-n.value}if(this.vScrollBar[0].style.visibility!="hidden"){}}var h=o.table[0].rows[0];var T=0;var B=o.mousecaptureposition.clickedcell;var A=B;var m=false;var r=0;var ac=h.cells.length;if(o.mousecaptureposition.left<=ab.pageX){r=B}for(var W=r;W<ac;W++){var Y=parseFloat(a(this.columnsrow[0].cells[W]).css("left"));var j=Y-v;if(o.columns.records[W].pinned){j=Y;continue}var O=this._getcolumnat(W);if(O!=null&&O.hidden){continue}if(o.groupable&&o.groups.length>0){if(W<o.groups.length){continue}}var S=j+a(this.columnsrow[0].cells[W]).width();if(o.mousecaptureposition.left>ab.pageX){if(S>=M&&M>=j){A=W;m=true;break}}else{if(S>=t&&t>=j){A=W;m=true;break}}}if(!m){if(o.mousecaptureposition.left>ab.pageX){a.each(this.columns.records,function(i,k){if(o.groupable&&o.groups.length>0){if(i<o.groups.length){return true}}if(!this.pinned&&!this.hidden){A=i;return false}})}else{if(!o.groupable||(o.groupable&&!o.groups.length>0)){A=h.cells.length-1}}}var N=B;B=Math.min(B,A);A=Math.max(N,A);g+=5;g+=I;var R=o.table[0].rows.indexOf(o.mousecaptureposition.clickedrow);var w=0;var e=-1;var u=-1;var d=0;for(var W=0;W<o.table[0].rows.length;W++){var s=a(o.table[0].rows[W]);if(W==0){d=s.coord().top}var F=s.height();var z=d-Z.top;if(e==-1&&z+F>=g){var c=false;for(var Q=0;Q<o.groups.length;Q++){var V=s[0].cells[Q].className;if(V.indexOf("jqx-grid-group-collapse")!=-1||V.indexOf("jqx-grid-group-expand")!=-1){c=true;break}}if(c){continue}e=W}d+=F;if(o.groupable&&o.groups.length>0){var c=false;for(var Q=0;Q<o.groups.length;Q++){var V=s[0].cells[Q].className;if(V.indexOf("jqx-grid-group-collapse")!=-1||V.indexOf("jqx-grid-group-expand")!=-1){c=true;break}}if(c){continue}var T=0;for(var U=o.groups.length;U<s[0].cells.length;U++){var E=s[0].cells[U];if(a(E).html()==""){T++}}if(T==s[0].cells.length-o.groups.length){continue}}if(e!=-1){w+=F}if(z+F>g+P){u=W;break}}if(e!=-1){g=a(o.table[0].rows[e]).coord().top-Z.top-I-2;var D=0;if(this.filterable&&this.showfilterrow){D=this.filterrowheight}if(parseFloat(o.table[0].style.top)<0&&g<this.rowsheight+D){g-=parseFloat(o.table[0].style.top);w+=parseFloat(o.table[0].style.top)}P=w;var l=a(this.columnsrow[0].cells[B]);var C=a(this.columnsrow[0].cells[A]);J=parseFloat(l.css("left"));H=parseFloat(C.css("left"))-parseFloat(J)+C.width()-2;J-=v;if(o.editcell&&o.editable&&o.endcelledit&&(B!=A||e!=u)){if(o.editcell.validated==false){return}o.endcelledit(o.editcell.row,o.editcell.column,true,true)}}}this.selectionarea.width(H);this.selectionarea.height(P);this.selectionarea.css("left",J);this.selectionarea.css("top",g)}}},_handlemouseupselection:function(u,o){if(!this.selectionarea){return}if(this.selectionarea[0].style.visibility!="visible"){o.mousecaptured=false;return true}if(o.mousecaptured&&(o.selectionmode=="multiplerowsextended"||o.selectionmode=="multiplerowsadvanced"||o.selectionmode=="multiplecellsextended"||o.selectionmode=="multiplecellsadvanced")){o.mousecaptured=false;if(this.selectionarea.css("visibility")=="visible"){this.selectionarea.css("visibility","hidden");var w=this.showheader?this.columnsheader.height()+2:0;var p=this._groupsheader()?this.groupsheader.height():0;if(this.host.css("border-top-width")==="0px"){p-=2}var B=this.showtoolbar?this.toolbar.height():0;p+=B;var C=this.selectionarea.coord();var c=this.host.coord();if(this.hasTransform){c=a.jqx.utilities.getOffset(this.host);C=a.jqx.utilities.getOffset(this.selectionarea)}if(this.host.css("border-top-width")==="0px"){p-=2}var n=C.left-c.left;var k=C.top-w-c.top-p;var s=k;var g=n+this.selectionarea.width();var D=n;var l=new Array();var e=new Array();if(o.selectionmode=="multiplerowsextended"){while(k<s+this.selectionarea.height()){var b=this._hittestrow(n,k);var f=b.row;var h=b.index;if(h!=-1){if(!e[h]){e[h]=true;l[l.length]=b}}k+=20}var s=0;a.each(l,function(){var i=this;var m=this.row;if(o.selectionmode!="none"&&o._selectrowwithmouse){if(u.ctrlKey||u.metaKey){o._applyrowselection(o.getboundindex(m),true,false,false)}else{if(s==0){o._applyrowselection(o.getboundindex(m),true,false,true)}else{o._applyrowselection(o.getboundindex(m),true,false,false)}}s++}})}else{if(o.selectionmode=="multiplecellsadvanced"){k+=2}var r=o.hScrollInstance;var t=r.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){t=r.max-r.value}if(this.vScrollBar[0].style.visibility!="hidden"){t-=this.scrollbarsize+4}}var q=o.table[0].rows[0];var j=o.selectionarea.height();if(!u.ctrlKey&&!u.metaKey&&j>0){o.selectedcells=new Array()}var A=j;while(k<s+A){var b=o._hittestrow(n,k);if(!b){k+=5;continue}var f=b.row;var h=b.index;if(h!=-1){if(!e[h]){e[h]=true;for(var v=0;v<q.cells.length;v++){var d=parseFloat(a(o.columnsrow[0].cells[v]).css("left"))-t;var z=d+a(o.columnsrow[0].cells[v]).width();if((D>=d&&D<=z)||(g>=d&&g<=z)||(d>=D&&d<=g)){o._applycellselection(o.getboundindex(f),o._getcolumnat(v).datafield,true,false)}}}}k+=5}}if(o.autosavestate){if(o.savestate){o.savestate()}}o._renderrows(o.virtualsizeinfo)}}},selectprevcell:function(e,c){var f=this._getcolumnindex(c);var b=this.columns.records.length;var d=this._getprevvisiblecolumn(f);if(d!=null){this.clearselection();this.selectcell(e,d.datafield)}},selectnextcell:function(e,d){var f=this._getcolumnindex(d);var c=this.columns.records.length;var b=this._getnextvisiblecolumn(f);if(b!=null){this.clearselection();this.selectcell(e,b.datafield)}},_getfirstvisiblecolumn:function(){var b=this;var e=this.columns.records.length;for(var c=0;c<e;c++){var d=this.columns.records[c];if(!d.hidden&&d.datafield!=null){return d}}return null},_getlastvisiblecolumn:function(){var b=this;var e=this.columns.records.length;for(var c=e-1;c>=0;c--){var d=this.columns.records[c];if(!d.hidden&&d.datafield!=null){return d}}return null},_handlekeydown:function(A,t){if(t.groupable&&t.groups.length>0){}if(t.disabled){return false}var H=A.charCode?A.charCode:A.keyCode?A.keyCode:0;if(t.editcell&&t.selectionmode!="multiplecellsadvanced"){return true}else{if(t.editcell&&t.selectionmode=="multiplecellsadvanced"){if(H>=33&&H<=40){if(!A.altKey){if(t._cancelkeydown==undefined||t._cancelkeydown==false){if(t.editmode!=="selectedrow"){t.endcelledit(t.editcell.row,t.editcell.column,false,true);t._cancelkeydown=false;if(t.editcell&&!t.editcell.validated){t._rendervisualrows();t.endcelledit(t.editcell.row,t.editcell.column,false,true);return false}}else{return true}}else{t._cancelkeydown=false;return true}}else{t._cancelkeydown=false;return true}}else{return true}}}if(t.selectionmode=="none"){return true}if(t.showfilterrow&&t.filterable){if(this.filterrow){if(a(A.target).ischildof(t.filterrow)){return true}}}if(t.showeverpresentrow){if(t.addnewrowtop){if(a(A.target).ischildof(t.addnewrowtop)){return true}}if(t.addnewrowbottom){if(a(A.target).ischildof(t.addnewrowbottom)){return true}}}if(t.pageable){if(a(A.target).ischildof(this.pager)){return true}}if(this.showtoolbar){if(a(A.target).ischildof(this.toolbar)){return true}}if(this.showstatusbar){if(a(A.target).ischildof(this.statusbar)){return true}}var r=false;if(A.altKey){return true}if(A.ctrlKey||A.metaKey){if(this.clipboard){var b=String.fromCharCode(H).toLowerCase();if(this.clipboardbegin){var j=null;if(b=="c"){j=this.clipboardbegin("copy",this.copyselection())}else{if(b=="x"){j=this.clipboardbegin("cut",this.copyselection())}else{if(b=="v"){j=this.clipboardbegin("paste")}}}if(j===false){return false}}if(b=="c"||b=="x"){var q=this.copyselection();if(b=="c"&&this.clipboardend){this.clipboardend("copy")}if(b=="x"&&this.clipboardend){this.clipboardend("cut")}if(window.clipboardData){window.clipboardData.setData("Text",q)}else{var g=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');g.val(q);a("body").append(g);g.select();setTimeout(function(){document.designMode="off";g.select();g.remove();t.focus()},100)}if(b=="c"&&a.jqx.browser.msie){return false}else{if(b=="c"){return true}}}else{if(b=="v"){var F=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');a("body").append(F);F.select();var k=this;setTimeout(function(){k._clipboardselection=new Array();var M=F.val();if(M.length==0&&window.clipboardData){F.val(window.clipboardData.getData("Text"));var M=F.val()}var L=M.split("\n");for(var K=0;K<L.length;K++){if(L[K].split("\t").length>0){var J=L[K].split("\t");if(J.length==1&&K==L.length-1&&J[0]==""){continue}if(J.length>0){k._clipboardselection.push(J)}}}k.pasteselection();F.remove();k.focus()},100);return true}}if(b=="x"){this.deleteselection();this.host.focus();return false}}}var n=Math.round(t._gettableheight());var y=Math.round(n/t.rowsheight);var f=t.getdatainformation();switch(t.selectionmode){case"singlecell":case"multiplecells":case"multiplecellsextended":case"multiplecellsadvanced":var I=t.getselectedcell();if(I!=null){var e=this.getrowvisibleindex(I.rowindex);var i=e;var p=I.datafield;var w=t._getcolumnindex(p);var c=t.columns.records.length;var v=function(Q,K,P,O){var J=function(ab,U){var W=t.dataview.loadedrecords[ab];if(t.groupable&&t.groups.length>0){var X=ab;if(O=="up"){X++}if(O=="down"){X--}var W=t.getdisplayrows()[X];var R=function(ac){if(ac.group){if(t.expandedgroups[ac.uniqueid]){return t.expandedgroups[ac.uniqueid].expanded}}else{return false}};var Z=1;var S=true;while(S&&Z<300){S=false;if(O=="down"){W=t.getdisplayrows()[X+Z]}else{if(O=="up"){W=t.getdisplayrows()[X-Z]}}if(!W){break}if(W&&W.group){S=true}var aa=W.parentItem;while(aa){if(aa&&!R(aa)){S=true}aa=aa.parentItem}if(!S){break}Z++}if(Z==300){W=null}if(t.pageable){var Y=false;if(W){for(var V=0;V<t.dataview.rows.length;V++){if(t.dataview.rows[V].boundindex==W.boundindex){Y=true}}if(!Y){W=null}}}}if(W!=undefined&&U!=null){if(P||P==undefined){t.clearselection()}var T=t.getboundindex(W);t.selectcell(T,U);t._oldselectedcell=t.selectedcell;r=true;t.ensurecellvisible(ab,U);return true}return false};if(!J(Q,K)){t.ensurecellvisible(Q,K);J(Q,K);if(t.virtualmode){t.host.focus()}}var M=t.groupable&&t.groups.length>0;if(!M){if(A.shiftKey&&A.keyCode!=9){if(t.selectionmode=="multiplecellsextended"||t.selectionmode=="multiplecellsadvanced"){if(t._lastClickedCell){t._selectpath(Q,K);var N=t.dataview.loadedrecords[Q];var L=t.getboundindex(N);t.selectedcell={rowindex:L,datafield:K};return}}}else{if(!A.shiftKey){t._lastClickedCell={row:Q,column:K}}}}};var B=A.shiftKey&&t.selectionmode!="singlecell"&&t.selectionmode!="multiplecells";var C=function(){v(0,p,!B)};var h=function(){var J=f.rowscount-1;v(J,p,!B)};var d=H==9&&!A.shiftKey;var m=H==9&&A.shiftKey;if(t.rtl){var s=d;d=m;m=s}if(d||m){B=false}if(d||m){if(document.activeElement&&document.activeElement.className&&document.activeElement.className.indexOf("jqx-grid-cell-add-new-row")>=0){return true}}var o=A.ctrlKey||A.metaKey;if(o&&H==37){var E=t._getfirstvisiblecolumn(w);if(E!=null){v(i,E.datafield)}}else{if(o&&H==39){var u=t._getlastvisiblecolumn(w);if(u!=null){v(i,u.datafield)}}else{if(H==39||d){var x=t._getnextvisiblecolumn(w);if(x!=null){v(i,x.datafield,!B)}else{if(!d){r=true}else{var G=t._getfirstvisiblecolumn();H=40;p=G.displayfield}}}else{if(H==37||m){var E=t._getprevvisiblecolumn(w);if(E!=null){v(i,E.datafield,!B)}else{if(!m){r=true}else{var l=t._getlastvisiblecolumn();H=38;p=l.displayfield}}}else{if(H==36){C()}else{if(H==35){h()}else{if(H==33){if(i-y>=0){var D=i-y;v(D,p,!B)}else{C()}}else{if(H==34){if(f.rowscount>i+y){var D=i+y;v(D,p,!B)}else{h()}}}}}}}}}if(H==38){if(o){C()}else{if(i>0){v(i-1,p,!B,"up")}else{r=true}}}if(H==40){if(o){h()}else{if((f.rowscount>i+1)||(t.groupable&&t.groups.length>0)){v(i+1,p,!B,"down")}else{r=true}}}}break;case"singlerow":case"multiplerows":case"multiplerowsextended":case"multiplerowsadvanced":var i=t.getselectedrowindex();if(i==null||i==-1){return true}i=this.getrowvisibleindex(i);var z=function(K,N,M){var J=function(V){var U=t.dataview.loadedrecords[V];if(t.groupable&&t.groups.length>0){if(M=="up"){V++}if(M=="down"){V--}var U=t.getdisplayrows()[V];var O=function(Z){if(Z.group){if(t.expandedgroups[Z.uniqueid]){return t.expandedgroups[Z.uniqueid].expanded}}else{return false}};var X=1;var P=true;while(P&&X<300){P=false;if(M=="down"){U=t.getdisplayrows()[V+X]}else{if(M=="up"){U=t.getdisplayrows()[V-X]}}if(!U){break}if(U&&U.group){P=true}var Y=U.parentItem;while(Y){if(Y&&!O(Y)){P=true}Y=Y.parentItem}if(!P){break}X++}if(X==300){U=null}if(t.pageable){var W=false;if(U){for(var T=0;T<t.dataview.rows.length;T++){if(t.dataview.rows[T].boundindex==U.boundindex){W=true}}if(!W){U=null}}}}if(U!=undefined){var Q=t.getboundindex(U);var S=t.selectedrowindex;if(N||N==undefined){t.clearselection()}t.selectedrowindex=S;t.selectrow(Q,false);var R=t.ensurerowvisible(V);if(!R||t.autoheight||t.groupable){t._rendervisualrows()}r=true;return true}return false};if(!J(K)){t.ensurerowvisible(K);J(K,N);if(t.virtualmode){setTimeout(function(){J(K,N)},25)}if(t.virtualmode){t.host.focus()}}var L=t.groupable&&t.groups.length>0;if(!L){if(A.shiftKey&&H!=9){if(t.selectionmode=="multiplerowsextended"){if(t._lastClickedCell){t._selectrowpath(K);t.selectedrowindex=t.getrowboundindex(K);return}}}else{if(!A.shiftKey){t._lastClickedCell={row:K};t.selectedrowindex=t.getrowboundindex(K)}}}};var B=A.shiftKey&&t.selectionmode!="singlerow"&&t.selectionmode!="multiplerows";var C=function(){z(0,!B)};var h=function(){var J=f.rowscount-1;z(J,!B)};var o=A.ctrlKey||A.metaKey;if(H==36||(o&&H==38)){C()}else{if(H==35||(o&&H==40)){h()}else{if(H==33){if(i-y>=0){var D=i-y;z(D,!B)}else{C()}}else{if(H==34){if(f.rowscount>i+y){var D=i+y;z(D,!B)}else{h()}}else{if(H==38){if(i>0){z(i-1,!B,"up")}else{r=true}}else{if(H==40){if((f.rowscount>i+1)||(t.groupable&&t.groups.length>0)){z(i+1,!B,"down")}else{r=true}}}}}}}break}if(r){if(t.autosavestate){if(t.savestate){t.savestate()}}return false}return true},_handlemousemove:function(u,p){if(p.vScrollInstance.isScrolling()){return}if(p.hScrollInstance.isScrolling()){return}var w;var q;var f;var n;var m;if(p.enablehover||p.selectionmode=="multiplerows"){w=this.showheader?this.columnsheader.height()+2:0;q=this._groupsheader()?this.groupsheader.height():0;var A=this.showtoolbar?this.toolbarheight:0;q+=A;f=this.host.coord();if(this.hasTransform){f=a.jqx.utilities.getOffset(this.host);var k=this._getBodyOffset();f.left-=k.left;f.top-=k.top}n=u.pageX-f.left;m=u.pageY-w-f.top-q}if(p.selectionmode=="multiplerowsextended"||p.selectionmode=="multiplecellsextended"||p.selectionmode=="multiplecellsadvanced"){if(p.mousecaptured==true){return}}if(p.enablehover){if(p.disabled){return}if(this.vScrollInstance.isScrolling()||this.hScrollInstance.isScrolling()){return}var c=this._hittestrow(n,m);if(!c){return}var h=c.row;var j=c.index;if(this.hoveredrow!=-1&&j!=-1&&this.hoveredrow==j&&this.selectionmode.indexOf("cell")==-1&&this.selectionmode!="checkbox"){return}this._clearhoverstyle();if(j==-1||h==undefined){return}var r=this.hittestinfo[j].visualrow;if(r==null){return}if(this.hittestinfo[j].details){return}if(u.clientX>a(r).width()+a(r).coord().left){return}var B=0;var o=r.cells.length;if(p.rowdetails&&p.showrowdetailscolumn){if(!this.rtl){B=1+this.groups.length}else{o-=1;o-=this.groups.length}}else{if(this.groupable){if(!this.rtl){B=this.groups.length}else{o-=this.groups.length}}}if(r.cells.length==0){return}var l=r.cells[B].className;if(h.group||(this.selectionmode.indexOf("row")>=0&&l.indexOf("jqx-grid-cell-selected")!=-1)){return}this.hoveredrow=j;if(this.selectionmode.indexOf("cell")!=-1||this.selectionmode=="checkbox"){var e=-1;var s=this.hScrollInstance;var t=s.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){t=s.max-s.value}}for(var v=B;v<o;v++){var g=parseInt(a(this.columnsrow[0].cells[v]).css("left"))-t;var z=g+a(this.columnsrow[0].cells[v]).width();if(z>=n&&n>=g){e=v;break}}if(e!=-1){var b=r.cells[e];if(this.cellhover){this.cellhover(b,u.pageX,u.pageY)}if(b.className.indexOf("jqx-grid-cell-selected")==-1){if(this.editcell){var d=this._getcolumnat(e);if(d){if(this.editcell.row==j&&this.editcell.column==d.datafield){return}}}a(b).addClass(this.toTP("jqx-grid-cell-hover"));a(b).addClass(this.toTP("jqx-fill-state-hover"))}}return}for(var v=B;v<o;v++){var b=r.cells[v];a(b).addClass(this.toTP("jqx-grid-cell-hover"));a(b).addClass(this.toTP("jqx-fill-state-hover"));if(this.cellhover){this.cellhover(b,u.pageX,u.pageY)}}}else{return true}}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{autoresizecolumns:function(z,g){if(z!="cells"&&z!="all"&&z!="column"){z="all"}var A=this.that;var n=this.getrows();if(this.pageable){n=this.dataview.rows;if(this.groupable){n=this.dataview.records}}if(g==undefined){g=0}else{g=parseInt(g)}var e=n.length;if(e==undefined&&n!=undefined){var t=new Array();a.each(n,function(i){t.push(this)});n=t;e=n.length}var w=a("<span></span>");w.addClass(this.toThemeProperty("jqx-widget"));w.addClass(this.toThemeProperty("jqx-grid-cell"));a(document.body).append(w);var c=[];var f=[];var b=[];var q=[];var o=A.host.width();if(A.vScrollBar[0].style.visibility!="hidden"){o-=this.scrollbarsize+5}if(o<0){o=0}for(var x=0;x<e;x++){var k=n[x];for(var v=0;v<this.columns.records.length;v++){var d=this.columns.records[v];if(d.hidden){continue}if(this.groups.length>0&&v<=this.groups.length-1){continue}if(f[d.displayfield]==undefined){f[d.displayfield]=0}if(b[d.displayfield]==undefined){b[d.displayfield]=""}var r=k[d.displayfield];if(d.cellsformat!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(r)){r=a.jqx.dataFormat.formatdate(r,d.cellsformat,this.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(r)){r=a.jqx.dataFormat.formatnumber(r,d.cellsformat,this.gridlocalization)}}}}else{if(d.cellsrenderer){var s=A._defaultcellsrenderer(r,d);var p=d.cellsrenderer(x,d.datafield,r,s,d.getcolumnproperties(),k);if(p!=undefined){r=a(p).text()}}}if(z==undefined||z=="cells"||z=="all"){if(r!=null){var c=r.toString().length;var u=r.toString();var B=u.replace(/[^A-Z]/g,"").length;if(c>f[d.displayfield]){f[d.displayfield]=c;b[d.displayfield]=r;q[d.displayfield]=B}if(c>0&&c>=B){var m=B*20+(c-B)*15;var l=q[d.displayfield]*20+(f[d.displayfield]-q[d.displayfield])*15;if(m>l&&m>0&&l>0){f[d.displayfield]=c;b[d.displayfield]=r;q[d.displayfield]=B}}}}if(z=="column"||z=="all"){if(d.text.toString().length>f[d.displayfield]){b[d.displayfield]=d.text;f[d.displayfield]=d.text.length;var u=d.text.toString();var B=u.replace(/[^A-Z]/g,"").length;q[d.displayfield]=B}var r=d.text;var c=r.toString().length;var u=r.toString();var B=u.replace(/[^A-Z]/g,"").length;if(c>0&&c>=B){var m=B*20+(c-B)*15;var l=q[d.displayfield]*20+(f[d.displayfield]-q[d.displayfield])*15;if(m>l&&m>0&&l>0){f[d.displayfield]=c;b[d.displayfield]=r;q[d.displayfield]=B}}}}}if(!this.columns.records){return}for(var v=0;v<this.columns.records.length;v++){var d=this.columns.records[v];if(!d.displayfield){continue}if(b[d.displayfield]==undefined){b[d.displayfield]=d.text}if(w[0].className.indexOf("jqx-grid-column-header")>=0){w.removeClass(this.toThemeProperty("jqx-grid-column-header"))}if(b[d.displayfield]==d.text){w.addClass(this.toThemeProperty("jqx-grid-column-header"))}w[0].innerHTML=b[d.displayfield].toString();var y=w.outerWidth()+10;if(w.children().length>0){y=w.children().outerWidth()+10}if(a.jqx.browser.msie&&a.jqx.browser.version<8){y+=10}if(this.filterable&&this.showfilterrow){y+=5}y+=g;if(y>d.maxwidth){y=d.maxwidth}if(d._width!=undefined){d.__width=d._width}d._width=null;if(d.maxwidth=="auto"||y<=d.maxwidth){var h=d.width;if(y<d.minwidth){y=d.minwidth}d.width=y;if(d._percentagewidth!=undefined){d._percentagewidth=null}this._raiseEvent(14,{columntext:d.text,column:d.getcolumnproperties(),datafield:d.datafield,displayfield:d.displayfield,oldwidth:h,newwidth:y})}}w.remove();this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);for(var v=0;v<this.columns.records.length;v++){var d=this.columns.records[v];if(d.__width!=undefined){d._width=d.__width}}},autoresizecolumn:function(p,v,g){if(v!="cells"&&v!="all"&&v!="column"){v="all"}if(p==undefined){return false}var l=this.getrows();if(this.pageable){l=this.dataview.rows;if(this.groupable){l=this.dataview.records}}var d=this.getcolumn(p);if(d==undefined){return false}if(g==undefined){g=0}else{g=parseInt(g)}var e=l.length;var s=a("<span></span>");s.addClass(this.toThemeProperty("jqx-widget"));s.addClass(this.toThemeProperty("jqx-grid-cell"));a(document.body).append(s);var f=0;var b="";var o=0;var w=this.that;var m=w.host.width();if(w.vScrollBar[0].style.visibility!="hidden"){m-=this.scrollbarsize+5}if(m<0){m=0}if(v==undefined||v=="cells"||v=="all"){for(var t=0;t<e;t++){var q=l[t][d.displayfield];if(d.cellsformat!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(q)){q=a.jqx.dataFormat.formatdate(q,d.cellsformat,this.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(q)){q=a.jqx.dataFormat.formatnumber(q,d.cellsformat,this.gridlocalization)}}}}else{if(d.cellsrenderer){var n=d.cellsrenderer(t,d,q);if(n!=undefined){q=a(n).text()}}}if(q!=null){var c=q.toString().length;var r=q.toString();var x=r.replace(/[^A-Z]/g,"").length;if(c>f){f=c;b=q;o=x}if(c>0&&c>=x){var k=x*20+(c-x)*15;var j=o*20+(f-o)*15;if(k>j&&k>0&&j>0){f=c;b=q;o=x}}}}}if(v=="column"||v=="all"){if(d.text.toString().length>f){b=d.text}var q=d.text.toString();var c=q.toString().length;var r=q.toString();var x=r.replace(/[^A-Z]/g,"").length;if(c>0&&c>=x){var k=x*20+(c-x)*15;var j=o*20+(f-o)*15;if(k>j&&k>0&&j>0){f=c;b=q;o=x}}}if(b==undefined){b=d.text}s[0].innerHTML=b;if(b==d.text){s.addClass(this.toThemeProperty("jqx-grid-column-header"))}var u=s.outerWidth()+10;if(a.jqx.browser.msie&&a.jqx.browser.version<8){u+=5}if(this.filterable&&this.showfilterrow){u+=5}u+=g;s.remove();if(u>d.maxwidth){u=d.maxwidth}if(d.maxwidth=="auto"||u<=d.maxwidth){var h=d.width;if(u<d.minwidth){u=d.minwidth}d.width=u;if(d._width!=undefined){d.__width=d._width}d._width=null;if(d._percentagewidth!=undefined){d._percentagewidth=null}this._updatecolumnwidths();this._updatecellwidths();this._raiseEvent(14,{columntext:d.text,column:d.getcolumnproperties(),datafield:p,displayfield:d.displayfield,oldwidth:h,newwidth:u});this._renderrows(this.virtualsizeinfo);if(d._width!=undefined){d._width=d.__width}}},_handlecolumnsresize:function(){var j=this.that;if(this.columnsresize){var i=false;if(j.isTouchDevice()&&j.touchmode!==true){i=true}var f="mousemove.resize"+this.element.id;var c="mousedown.resize"+this.element.id;var d="mouseup.resize"+this.element.id;if(i){var f=a.jqx.mobile.getTouchEventName("touchmove")+".resize"+this.element.id;var c=a.jqx.mobile.getTouchEventName("touchstart")+".resize"+this.element.id;var d=a.jqx.mobile.getTouchEventName("touchend")+".resize"+this.element.id}this.removeHandler(a(document),f);this.addHandler(a(document),f,function(m){var n=a.data(document.body,"contextmenu"+j.element.id);if(n!=null&&j.autoshowcolumnsmenubutton){return true}if(j.resizablecolumn!=null&&!j.disabled&&j.resizing){if(j.resizeline!=null){var s=j.resizablecolumn.columnelement;var p=j.host.coord();var v=parseInt(j.resizestartline.coord().left);var k=v-j._startcolumnwidth;var w=j.resizablecolumn.column.minwidth;if(w=="auto"){w=0}else{w=parseInt(w)}var l=j.resizablecolumn.column.maxwidth;if(l=="auto"){l=0}else{l=parseInt(l)}var q=m.pageX;if(i){var t=j.getTouches(m);var r=t[0];q=r.pageX}k+=w;var u=l>0?v+l:0;var o=l==0?true:j._startcolumnwidth+q-v<l?true:false;if(j.rtl){var o=true}if(o){if(!j.rtl){if(q>=p.left&&q>=k){if(u!=0&&m.pageX<u){j.resizeline.css("left",q)}else{if(u==0){j.resizeline.css("left",q)}}if(i){return false}}}else{if(q>=p.left&&q<=p.left+j.host.width()){j.resizeline.css("left",q);if(i){return false}}}}}}if(!i&&j.resizablecolumn!=null){return false}});this.removeHandler(a(document),c);this.addHandler(a(document),c,function(p){var o=a.data(document.body,"contextmenu"+j.element.id);if(o!=null&&j.autoshowcolumnsmenubutton){return true}if(j.resizablecolumn!=null&&!j.disabled){var k=j.resizablecolumn.columnelement;if(k.coord().top+k.height()+5<p.pageY){j.resizablecolumn=null;return}if(k.coord().top-5>p.pageY){j.resizablecolumn=null;return}j._startcolumnwidth=j.resizablecolumn.column.width;j.resizablecolumn.column._width=null;a(document.body).addClass("jqx-disableselect");a(document.body).addClass("jqx-position-reset");j.host.addClass("jqx-disableselect");j.content.addClass("jqx-disableselect");j._mouseDownResize=new Date();j.resizing=true;if(j._lastmouseDownResize&&j.columnsautoresize){if(j._lastmouseDownResize-j._mouseDownResize<300&&j._lastmouseDownResize-j._mouseDownResize>-500){var n=j.resizablecolumn.column;if(n.resizable){var m=j.resizablecolumn.column.width;var l=j.hScrollBar[0].style.visibility;j._resizecolumn=null;j.resizeline.hide();j.resizestartline.hide();j.resizebackground.remove();j.resizablecolumn=null;j.autoresizecolumn(n.displayfield,"all");if(l!=j.hScrollBar[0].style.visibility){j.hScrollInstance.setPosition(0)}if(j.rtl){j._arrange()}if(j.autosavestate){if(j.savestate){j.savestate()}}p.stopPropagation();j.suspendClick=true;setTimeout(function(){j.suspendClick=false},100);return false}}}j._lastmouseDownResize=new Date();j._resizecolumn=j.resizablecolumn.column;j.resizeline=j.resizeline||a('<div style="position: absolute;"></div>');j.resizestartline=j.resizestartline||a('<div style="position: absolute;"></div>');j.resizebackground=j.resizebackground||a('<div style="position: absolute; left: 0; top: 0; background: #000;"></div>');j.resizebackground.css("opacity",0.01);j.resizebackground.css("cursor","col-resize");j.resizeline.css("cursor","col-resize");j.resizestartline.css("cursor","col-resize");j.resizeline.addClass(j.toThemeProperty("jqx-grid-column-resizeline"));j.resizestartline.addClass(j.toThemeProperty("jqx-grid-column-resizestartline"));a(document.body).append(j.resizeline);a(document.body).append(j.resizestartline);a(document.body).append(j.resizebackground);var q=j.resizablecolumn.columnelement.coord();j.resizebackground.css("left",j.host.coord().left);j.resizebackground.css("top",j.host.coord().top);j.resizebackground.width(j.host.width());j.resizebackground.height(j.host.height());j.resizebackground.css("z-index",9999);var r=function(t){if(!j.rtl){t.css("left",parseInt(q.left)+j._startcolumnwidth)}else{t.css("left",parseInt(q.left))}var w=j._groupsheader();var v=w?j.groupsheader.height():0;var y=j.showtoolbar?j.toolbarheight:0;v+=y;var s=j.showstatusbar?j.statusbarheight:0;v+=s;var u=0;if(j.pageable){u=j.pagerheight}var x=j.hScrollBar.css("visibility")=="visible"?17:0;t.css("top",parseInt(q.top));t.css("z-index",99999);if(j.columngroups){t.height(j.host.height()+j.resizablecolumn.columnelement.height()-u-v-x-j.columngroupslevel*j.columnsheight)}else{t.height(j.host.height()-u-v-x)}if(j.enableanimations){t.show("fast")}else{t.show()}};r(j.resizeline);r(j.resizestartline);j.dragmousedown=null}});var e=function(){a(document.body).removeClass("jqx-disableselect");a(document.body).removeClass("jqx-position-reset");if(j.showfilterrow||j.showstatusbar||j.showtoolbar||j.enablebrowserselection){j.host.removeClass("jqx-disableselect");j.content.removeClass("jqx-disableselect")}if(!j.resizing){return}j._mouseUpResize=new Date();var r=j._mouseUpResize-j._mouseDownResize;if(r<200){j.resizing=false;if(j._resizecolumn!=null&&j.resizeline!=null&&j.resizeline.css("display")=="block"){j._resizecolumn=null;j.resizeline.hide();j.resizestartline.hide();j.resizebackground.remove()}return}j.resizing=false;if(j.disabled){return}var p=j.host.width();if(j.vScrollBar[0].style.visibility!="hidden"){p-=20}if(p<0){p=0}if(j._resizecolumn!=null&&j.resizeline!=null&&j.resizeline.css("display")=="block"){var s=parseInt(j.resizeline.css("left"));var o=parseInt(j.resizestartline.css("left"));var l=j._startcolumnwidth+s-o;if(j.rtl){var l=j._startcolumnwidth-s+o}var q=j._resizecolumn.width;j._closemenu();if(l<j._resizecolumn.minwidth){l=j._resizecolumn.minwidth}j._resizecolumn.width=l;if(j._resizecolumn._percentagewidth!=undefined){j._resizecolumn._percentagewidth=(l/p)*100}for(var k=0;k<j._columns.length;k++){if(j._columns[k].datafield===j._resizecolumn.datafield){j._columns[k].width=j._resizecolumn.width;if(j._columns[k].width<j._resizecolumn.minwidth){j._columns[k].width=j._resizecolumn.minwidth}break}}var n=j.hScrollBar[0].style.visibility;j._updatecolumnwidths();j._updatecellwidths();j._raiseEvent(14,{columntext:j._resizecolumn.text,column:j._resizecolumn.getcolumnproperties(),datafield:j._resizecolumn.datafield,oldwidth:q,newwidth:l});j._renderrows(j.virtualsizeinfo);if(j.autosavestate){if(j.savestate){j.savestate()}}if(n!=j.hScrollBar[0].style.visibility){j.hScrollInstance.setPosition(0)}if(j.rtl){j._arrange()}j._resizecolumn=null;j.resizeline.hide();j.resizestartline.hide();j.resizebackground.remove();j.resizablecolumn=null}else{j.resizablecolumn=null}};try{if(document.referrer!=""||window.frameElement){var b=null;if(window.top!=null&&window.top!=window.self){if(window.parent&&document.referrer){b=document.referrer}}if(b&&b.indexOf(document.location.host)!=-1){var g=function(k){e()};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}catch(h){}this.removeHandler(a(document),d);this.addHandler(a(document),d,function(l){var k=a.data(document.body,"contextmenu"+j.element.id);if(k!=null&&j.autoshowcolumnsmenubutton){return true}e()})}}})})(jqxBaseFramework);(function(a){a.jqx.dataview.sort=function(){this.sortby=function(d,f,p){var m=Object.prototype.toString;if(f==null){this.sortdata=null;this.sortcache={};this.grid._pagescache=new Array();this.grid._cellscache=new Array();this.refresh();return}if(f==undefined){f=true}if(f=="a"||f=="asc"||f=="ascending"||f==true){f=true}else{f=false}var g=d;this.sortfield=d;this.sortfielddirection=f?"asc":"desc";if(this.sortcache==undefined){this.sortcache={}}this.sortdata=[];var b=[];var c=false;if(g=="constructor"){g=""}if(!this.virtualmode&&this.sortcache[g]!=null){var o=this.sortcache[g];b=o._sortdata;if(o.direction==f){b.reverse()}else{if(!o.direction&&f){b.reverse()}c=true}if(b.length<this.totalrecords){this.sortcache={};c=false;b=[]}}Object.prototype.toString=(typeof d=="function")?d:function(){return this[d]};var r=this.records;var t=this.that;var n="";if(this.source.datafields){a.each(this.source.datafields,function(){if(this.name==d){if(this.type){n=this.type}return false}})}if(b.length==0){if(r.length){var h=r.length;for(var q=0;q<h;q++){var e=r[q];if(e!=null){var j=e;var s=j.toString();b.push({sortkey:s,value:j,index:q})}}}else{var l=false;for(obj in r){var e=r[obj];if(e==undefined){l=true;break}var j=e;b.push({sortkey:j.toString(),value:j,index:obj})}if(l){a.each(r,function(u,v){b.push({sortkey:v.toString(),value:v,index:u})})}}}if(!c){if(p==null){this._sortcolumntype=n;var k=this;b.sort(function(u,i){return k._compare(u,i,n)})}else{b.sort(p)}}if(!f){b.reverse()}Object.prototype.toString=m;this.sortdata=b;this.sortcache[g]={_sortdata:b,direction:f};this.reload(this.records,this.rows,this.filters,this.updated,true)},this.clearsortdata=function(){this.sortcache={};this.sortdata=null};this._compare=function(c,b,e){var c=c.sortkey;var b=b.sortkey;if(c===undefined){c=null}if(b===undefined){b=null}if(c===null&&b===null){return 0}if(c===null&&b!==null){return -1}if(c!==null&&b===null){return 1}if(a.jqx.dataFormat){if(e&&e!=""){switch(e){case"number":case"int":case"float":if(c<b){return -1}if(c>b){return 1}return 0;case"date":case"time":if(c<b){return -1}if(c>b){return 1}return 0;case"string":case"text":c=String(c).toLowerCase();b=String(b).toLowerCase();break}}else{if(a.jqx.dataFormat.isNumber(c)&&a.jqx.dataFormat.isNumber(b)){if(c<b){return -1}if(c>b){return 1}return 0}else{if(a.jqx.dataFormat.isDate(c)&&a.jqx.dataFormat.isDate(b)){if(c<b){return -1}if(c>b){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(c)&&!a.jqx.dataFormat.isNumber(b)){c=String(c).toLowerCase();b=String(b).toLowerCase()}}}}}try{if(c<b){return -1}if(c>b){return 1}}catch(d){var f=d}return 0};this._equals=function(c,b){return(this._compare(c,b)===0)}};a.extend(a.jqx._jqxGrid.prototype,{_rendersortcolumn:function(){var b=this.that;var d=this.getsortcolumn();if(this.sortdirection){var c=function(f,g){var e=b.getcolumn(f);if(e){if(g.ascending){a.jqx.aria(e.element,"aria-sort","ascending")}else{if(g.descending){a.jqx.aria(e.element,"aria-sort","descending")}else{a.jqx.aria(e.element,"aria-sort","none")}}}};if(this._oldsortinfo){if(this._oldsortinfo.column){c(this._oldsortinfo.column,{ascending:false,descending:false})}}c(d,this.sortdirection)}this._oldsortinfo={column:d,direction:this.sortdirection};if(this.sortdirection){a.each(this.columns.records,function(f,g){var e=a.data(document.body,"groupsortelements"+this.displayfield);if(d==null||this.displayfield!=d){a(this.sortasc).hide();a(this.sortdesc).hide();if(e!=null){e.sortasc.hide();e.sortdesc.hide()}}else{if(b.sortdirection.ascending){a(this.sortasc).show();a(this.sortdesc).hide();if(e!=null){e.sortasc.show();e.sortdesc.hide()}}else{a(this.sortasc).hide();a(this.sortdesc).show();if(e!=null){e.sortasc.hide();e.sortdesc.show()}}}})}},getsortcolumn:function(){if(this.sortcolumn!=undefined){return this.sortcolumn}return null},removesort:function(){this.sortby(null)},sortby:function(d,g,f,e,b){if(this._loading&&b!==false){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==null){g=null;d=this.sortcolumn}if(d!=undefined){var c=this.that;if(f==undefined&&c.source.sortcomparer!=null){f=c.source.sortcomparer}if(g=="a"||g=="asc"||g=="ascending"||g==true){ascending=true}else{ascending=false}if(g!=null){c.sortdirection={ascending:ascending,descending:!ascending}}else{c.sortdirection={ascending:false,descending:false}}if(g!=null){c.sortcolumn=d}else{c.sortcolumn=null}if(c.source.sort||c.virtualmode){c.dataview.sortfield=d;if(g==null){c.dataview.sortfielddirection=""}else{c.dataview.sortfielddirection=ascending?"asc":"desc"}if(c.source.sort&&!this._loading){c.source.sort(d,g);c._raiseEvent(6,{sortinformation:c.getsortinformation()});return}}else{c.dataview.sortby(d,g,f)}if(e===false){return}if(c.groupable&&c.groups.length>0){c._render(true,false,false);if(c._updategroupheadersbounds&&c.showgroupsheader){c._updategroupheadersbounds()}}else{if(c.pageable){c.dataview.updateview()}c._updaterowsproperties();c.rendergridcontent(true)}c._raiseEvent(6,{sortinformation:c.getsortinformation()})}},_togglesort:function(d){var b=this.that;if(this.disabled){return}if(d.sortable&&b.sortable){var c=b.getsortinformation();var e=null;if(c.sortcolumn!=null&&c.sortcolumn==d.displayfield){e=c.sortdirection.ascending;if(b.sorttogglestates>1){if(e==true){e=false}else{e=null}}else{e=!e}}else{e=true}b.sortby(d.displayfield,e,null)}}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{_updatefilterrowui:function(f){var m=this.columns.records.length;var e=0;var l=this;if(!this.filterrow){return}for(var i=0;i<m;i++){var g=this.columns.records[i];var c=g.width;if(c<g.minwidth){c=g.minwidth}if(c>g.maxwidth){c=g.maxwidth}var k=a(this.filterrow[0].cells[i]);k.css("left",e);var h=true;if(k.width()==c){h=false}if(f){h=true}k.width(c);k[0].left=e;if(!(g.hidden&&g.hideable)){e+=c}else{k.css("display","none")}if(!h){continue}if(g.createfilterwidget&&g.filtertype=="custom"){g.createfilterwidget(g,k)}else{if(g.filterable){var d=function(n,o){var j=a(o.children()[0]);j.width(c-10);j.attr("disabled",n.disabled)};switch(g.filtertype){case"number":case"input":a(k.children()[0]).width(c);k.find("input").width(c-30);k.find("input").attr("disabled",l.disabled);a(k.find(".jqx-dropdownlist-state-normal")).jqxDropDownList({theme:l.theme,disabled:l.disabled});break;case"date":case"range":if(this.host.jqxDateTimeInput){a(k.children()[0]).jqxDateTimeInput({theme:l.theme,disabled:l.disabled,width:c-10})}else{d(this,k)}break;case"textbox":case"default":d(this,k);break;case"list":case"checkedlist":if(this.host.jqxDropDownList){a(k.children()[0]).jqxDropDownList({theme:l.theme,disabled:l.disabled,width:c-10})}else{d(this,k)}break;case"bool":case"boolean":if(!this.host.jqxCheckBox){d(this,k)}else{a(k.children()[0]).jqxCheckBox({theme:l.theme,disabled:l.disabled})}break}}}}var b=a(this.filterrow.children()[0]);b.width(parseInt(e)+2);b.height(this.filterrowheight)},clearfilterrow:function(d){this._disablefilterrow=true;if(!this.columns.records){return}var l=this.columns.records.length;var e=0;for(var h=0;h<l;h++){var f=this.columns.records[h];var k=a(this.filterrow[0].cells[h]);if(typeof d=="string"){if(f.displayfield!=d){continue}}if(f.filterable){var c=function(n,o){var j=a(o.children()[0]);j.val("");if(j[0]){n["_oldWriteText"+j[0].id]=""}};switch(f.filtertype){case"number":case"input":k.find("input").val("");if(this.host.jqxDropDownList){var i=a(a(a(k).children()[0]).children()[1]);i.jqxDropDownList("clearSelection");var g=0;if(g==0){var b=this._getfiltersbytype(f.filtertype=="number"?"number":"string");var m=b.indexOf("contains");if(m!=-1&&f.filtercondition==null){g=m}}i.jqxDropDownList({selectedIndex:g});i.jqxDropDownList("ensureVisible",g)}break;case"date":case"range":if(this.host.jqxDateTimeInput){a(k.children()[0]).jqxDateTimeInput("setDate",null)}else{c(this,k)}break;case"textbox":case"default":c(this,k);break;case"list":if(this.host.jqxDropDownList){a(k.children()[0]).jqxDropDownList("clearSelection")}else{c(this,k)}break;case"checkedlist":if(this.host.jqxDropDownList){a(k.children()[0]).jqxDropDownList("checkAll",false)}else{c(this,k)}break;case"bool":case"boolean":if(!this.host.jqxCheckBox){c(this,k)}else{a(k.children()[0]).jqxCheckBox({checked:null})}break}}}this._disablefilterrow=false},_applyfilterfromfilterrow:function(){if(this._disablefilterrow==true){return}if(this.disabled){return}var z=this.columns.records.length;var D=this.that;for(var t=0;t<z;t++){var k=new a.jqx.filter();var u=this.columns.records[t];if(!u.filterable){continue}if(u.datafield===null){continue}var f=D._getcolumntypebydatafield(u);var d=D._getfiltertype(f);var l=1;var E=true;var e=u.filtertype;var B=function(j,L,I){var i=true;if(j._filterwidget){var G=j._filterwidget.val();if(G!=""){var J="equal";if(L=="stringfilter"){var J="contains"}if(L=="numericfilter"){if(D.gridlocalization.decimalseparator==","){if(G.indexOf(D.gridlocalization.decimalseparator)>=0){G=G.replace(D.gridlocalization.decimalseparator,".")}}}if(L!="stringfilter"){var K=0;if(G.indexOf(">")!=-1){J="greater_than";K=1}if(G.indexOf("<")!=-1){J="less_than";K=1}if(G.indexOf("=")!=-1){if(J=="greater_than"){J="greater_than_or_equal";K=2}else{if(J=="less_than"){J="less_than_or_equal";K=2}else{J="equal";K=1}}}if(K!=0){G=G.substring(K);if(G.length<1){return false}}}if(j.filtercondition!=undefined){J=j.filtercondition}if(L=="datefilter"){var H=I.createfilter(L,G,J,null,j.cellsformat,D.gridlocalization)}else{var H=I.createfilter(L,G,J)}I.addfilter(l,H)}else{i=false}}return i};switch(u.filtertype){case"range":case"date":if(u._filterwidget.jqxDateTimeInput){if(u.filtertype=="range"){var p=u._filterwidget.jqxDateTimeInput("getRange");if(p!=null&&p.from!=null&&p.to!=null){var o="GREATER_THAN_OR_EQUAL";var r=new Date(0);r.setHours(0);r.setMinutes(0);r.setFullYear(p.from.getFullYear(),p.from.getMonth(),p.from.getDate());var q=new Date(0);q.setHours(0);q.setMinutes(0);q.setFullYear(p.to.getFullYear(),p.to.getMonth(),p.to.getDate());q.setHours(p.to.getHours());q.setMinutes(p.to.getMinutes());q.setSeconds(p.to.getSeconds());var y=k.createfilter(d,r,o);k.addfilter(0,y);var c="LESS_THAN_OR_EQUAL";var x=k.createfilter(d,q,c);k.addfilter(0,x)}else{E=false}}else{var p=u._filterwidget.jqxDateTimeInput("getDate");if(p!=null){var r=new Date(0);r.setHours(0);r.setMinutes(0);r.setFullYear(p.getFullYear(),p.getMonth(),p.getDate());var y=k.createfilter(d,r,"EQUAL");k.addfilter(0,y)}else{E=false}}}else{E=B(u,d,k)}break;case"input":if(u._filterwidget){var p=u._filterwidget.find("input").val();var h=u._filterwidget.find(".filter").jqxDropDownList("selectedIndex");var w=k.getoperatorsbyfiltertype(d)[h];if(D.updatefilterconditions){var F=D.updatefilterconditions(d,k.getoperatorsbyfiltertype(d));if(F!=undefined){k.setoperatorsbyfiltertype(d,F)}var w=k.getoperatorsbyfiltertype(d)[h]}var n=w=="NULL"||w=="NOT_NULL";var s=w=="EMPTY"||w=="NOT_EMPTY";if(p!=undefined&&p.length>0||n||s){y=k.createfilter(d,p,w,null,u.cellsformat,D.gridlocalization);k.addfilter(0,y)}else{E=false}}else{E=false}break;case"number":if(u._filterwidget){var p=u._filterwidget.find("input").val();if(D.gridlocalization.decimalseparator==","){if(p.indexOf(D.gridlocalization.decimalseparator)>=0){p=p.replace(D.gridlocalization.decimalseparator,".")}}var h=u._filterwidget.find(".filter").jqxDropDownList("selectedIndex");var w=k.getoperatorsbyfiltertype(d)[h];if(D.updatefilterconditions){var F=D.updatefilterconditions(d,k.getoperatorsbyfiltertype(d));if(F!=undefined){k.setoperatorsbyfiltertype(d,F)}var w=k.getoperatorsbyfiltertype(d)[h]}var n=w=="NULL"||w=="NOT_NULL";var s=w=="EMPTY"||w=="NOT_EMPTY";if(p!=undefined&&p.length>0||n||s){y=k.createfilter(d,new Number(p),w,null,u.cellsformat,D.gridlocalization);k.addfilter(0,y)}else{E=false}}else{E=false}break;case"textbox":case"default":E=B(u,d,k);break;case"bool":case"boolean":if(u._filterwidget.jqxCheckBox){var p=u._filterwidget.jqxCheckBox("checked");if(p!=null){var o="equal";var m=k.createfilter(d,p,o);k.addfilter(l,m)}else{E=false}}else{E=B(u,d,k)}break;case"list":var g=u._filterwidget.jqxDropDownList("listBox");if(g.selectedIndex>0){var b=g.getItem(g.selectedIndex);var p=b.label;var A=b.value;var o="equal";if(p===""){o="NULL"}var m=k.createfilter(d,p,o);k.addfilter(l,m);if(A!==p){m.data=A}}else{E=false}break;case"checkedlist":if(u._filterwidget.jqxDropDownList){var g=u._filterwidget.jqxDropDownList("listBox");var C=g.getCheckedItems();if(C.length==0){for(var v=1;v<g.items.length;v++){var p=g.items[v].label;var A=g.items[v].value;var o="not_equal";if(p===""){o="NULL"}var m=k.createfilter(d,p,o);if(A!==p){m.data=A}k.addfilter(0,m)}E=true}else{if(C.length!=g.items.length){for(var v=0;v<C.length;v++){var p=C[v].label;var A=C[v].value;var o="equal";if(p===""){o="NULL"}var m=k.createfilter(d,p,o);if(A!==p){m.data=A}k.addfilter(l,m)}}else{E=false}}}else{E=B(u,d,k)}break}if(!this._loading){if(E){this.addfilter(u.displayfield,k,false)}else{this.removefilter(u.displayfield,false)}}}if(!this._loading){this.applyfilters("filterrow")}},_updatefilterrow:function(){var b=a('<div style="position: relative;" id="row00'+this.element.id+'"></div>');var f=0;var o=this.columns.records.length;var m=this.toThemeProperty("jqx-grid-cell");m+=" "+this.toThemeProperty("jqx-grid-cell-pinned");m+=" "+this.toThemeProperty("jqx-grid-cell-filter-row");var r=o+10;var s=new Array();var n=this.that;this.filterrow[0].cells=s;b.height(this.filterrowheight);this.filterrow.children().detach();this.filterrow.append(b);if(!this._filterrowcache){this._filterrowcache=new Array()}this._initcolumntypes();var g=false;var d=new Array();var q=document.createDocumentFragment();for(var h=0;h<o;h++){var e=this.columns.records[h];var c=e.width;if(c<e.minwidth){c=e.minwidth}if(c>e.maxwidth){c=e.maxwidth}var l=document.createElement("div");l.style.overflow="hidden";l.style.position="absolute";l.style.height="100%";l.className=m;l=a(l);q.appendChild(l[0]);l[0].style.left=f+"px";if(this.rtl){l.css("z-index",r++);l.css("border-left-width","1px")}else{l.css("z-index",r--)}if(c=="auto"){c=0}l[0].style.width=parseFloat(c)+"px";l[0].left=f;if(!(e.hidden&&e.hideable)){f+=c}else{l.css("display","none")}s[s.length]=l[0];var k=true;if(!this.rtl){if(this.groupable){var p=(this.showrowdetailscolumn&&this.rowdetails)?1:0;if(this.groups.length+p>h){k=false}}if(this.showrowdetailscolumn&&this.rowdetails&&h==0){k=false}}else{if(this.groupable){var p=(this.showrowdetailscolumn&&this.rowdetails)?1:0;if(this.groups.length+p+h>o-1){k=false}}if(this.showrowdetailscolumn&&this.rowdetails&&h==o-1){k=false}}if(k){if(e.filtertype=="custom"&&e.createfilterwidget){var i=function(){n._applyfilterfromfilterrow()};e.createfilterwidget(e,l,i)}else{if(e.filterable){if(this._filterrowcache[e.datafield]){g=true;l.append(this._filterrowcache[e.datafield]);e._filterwidget=this._filterrowcache[e.datafield]}else{this._addfilterwidget(e,l,c);d[e.datafield]=e._filterwidget}}}}}b[0].appendChild(q);this._filterrowcache=d;if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.css("z-index",r--)}b.width(parseFloat(f)+2);this.filterrow.addClass(m);this.filterrow.css("border-top-width","1px");this.filterrow.css("border-right-width","0px");if(g){this._updatefilterrowui(true)}},_addfilterwidget:function(C,d,A){var H=this.that;var z="";var E="";for(var F=0;F<H.dataview.filters.length;F++){var x=H.dataview.filters[F];if(x.datafield&&x.datafield==C.datafield){var F=x.filter.getfilters()[0];z=F.value;E=F.condition;C.filtercondition=E;break}}var g=function(I,J){var f=a('<input autocomplete="off" type="textarea"/>');f[0].id=a.jqx.utilities.createId();f.addClass(I.toThemeProperty("jqx-widget"));f.addClass(I.toThemeProperty("jqx-input"));f.addClass(I.toThemeProperty("jqx-rc-all"));f.addClass(I.toThemeProperty("jqx-widget-content"));if(I.rtl){f.css("direction","rtl")}if(I.disabled){f.attr("disabled",true)}f.attr("disabled",false);f.appendTo(J);f.width(A-10);f.height(I.filterrowheight-10);f.css("margin","4px");if(C.createfilterwidget){C.createfilterwidget(C,J,f)}C._filterwidget=f;f.focus(function(){I.content[0].scrollLeft=0;setTimeout(function(){I.content[0].scrollLeft=0},10);I.focusedfilter=f;f.addClass(I.toThemeProperty("jqx-fill-state-focus"));return false});f.blur(function(){f.removeClass(I.toThemeProperty("jqx-fill-state-focus"))});f.keydown(function(K){if(K.keyCode=="13"){I._applyfilterfromfilterrow()}if(f[0]._writeTimer){clearTimeout(f[0]._writeTimer)}f[0]._writeTimer=setTimeout(function(){if(!I._loading){if(!I["_oldWriteText"+f[0].id]){I["_oldWriteText"+f[0].id]=""}if(I["_oldWriteText"+f[0].id]!=f.val()){I._applyfilterfromfilterrow();I["_oldWriteText"+f[0].id]=f.val()}}},C.filterdelay);I.focusedfilter=f});I.host.removeClass("jqx-disableselect");I.content.removeClass("jqx-disableselect");f.val(z)};if(C.datatype!=null){if(C.filtertype=="number"){if(C.datatype=="string"||C.datatype=="date"||C.datatype=="bool"){C.filtertype="textbox"}}if(C.filtertype=="date"){if(C.datatype=="string"||C.datatype=="number"||C.datatype=="bool"){C.filtertype="textbox"}}if(C.filtertype=="bool"){if(C.datatype=="string"||C.datatype=="number"||C.datatype=="date"){C.filtertype="textbox"}}}switch(C.filtertype){case"number":case"input":var m=a("<div></div>");m.width(d.width());m.height(this.filterrowheight);d.append(m);var A=d.width()-20;var s=function(J,K,f){var I=a('<input style="float: left;" autocomplete="off" type="textarea"/>');if(H.rtl){I.css("float","right");I.css("direction","rtl")}I[0].id=a.jqx.utilities.createId();I.addClass(H.toThemeProperty("jqx-widget jqx-input jqx-rc-all jqx-widget-content"));I.appendTo(J);I.width(K-10);if(H.disabled){I.attr("disabled",true)}I.attr("disabled",false);I.height(H.filterrowheight-10);I.css("margin","4px");I.css("margin-right","2px");I.focus(function(){H.focusedfilter=I;I.addClass(H.toThemeProperty("jqx-fill-state-focus"))});I.blur(function(){I.removeClass(H.toThemeProperty("jqx-fill-state-focus"))});I.keydown(function(L){if(L.keyCode=="13"){H._applyfilterfromfilterrow()}if(I[0]._writeTimer){clearTimeout(I[0]._writeTimer)}I[0]._writeTimer=setTimeout(function(){if(!H._loading){if(H["_oldWriteText"+I[0].id]!=I.val()){H._applyfilterfromfilterrow();H["_oldWriteText"+I[0].id]=I.val()}}},C.filterdelay);H.focusedfilter=I});I.val(z);return I};s(m,A);var B=H._getfiltersbytype(C.filtertype=="number"?"number":"string");var t=a("<div class='filter' style='float: left;'></div>");t.css("margin-top","4px");t.appendTo(m);if(H.rtl){t.css("float","right")}var h=0;if(C.filtercondition!=null){var F=new a.jqx.filter();var r=F.getoperatorsbyfiltertype(C.filtertype=="number"?"numericfilter":"stringfilter");var e=r.indexOf(C.filtercondition.toUpperCase());if(e!=-1){h=e}}var D=170;if(C.filtertype=="input"){D=240;if(h==0){var e=B.indexOf("contains");if(e!=-1&&C.filtercondition==null){h=e}}}t.jqxDropDownList({disabled:H.disabled,touchMode:H.touchmode,rtl:H.rtl,dropDownHorizontalAlignment:"right",enableBrowserBoundsDetection:true,selectedIndex:h,width:18,height:21,dropDownHeight:150,dropDownWidth:D,source:B,theme:H.theme});t.jqxDropDownList({selectionRenderer:function(f){return""}});t.jqxDropDownList("setContent","");t.find(".jqx-dropdownlist-content").hide();if(C.createfilterwidget){C.createfilterwidget(C,d,m)}C._filterwidget=m;var j=null;this.addHandler(t,"select",function(){var f=t.jqxDropDownList("getSelectedItem").label;if(C._filterwidget.find("input").val().length>0&&!H.refreshingfilter){H._applyfilterfromfilterrow()}if(C.filtertype=="input"&&!H.refreshingfilter){H._applyfilterfromfilterrow()}else{if(C._filterwidget.find("input").val().length==0&&!H.refreshingfilter){if(j=="null"||j=="not null"||f=="null"||f=="not null"){H._applyfilterfromfilterrow()}}}j=f});break;case"textbox":case"default":default:g(this,d);break;case"none":break;case"date":case"range":if(this.host.jqxDateTimeInput){var b=a("<div></div>");b.css("margin","4px");b.appendTo(d);var n={calendar:this.gridlocalization,todayString:this.gridlocalization.todaystring,clearString:this.gridlocalization.clearstring};b.jqxDateTimeInput({readonly:true,disabled:H.disabled,localization:n,rtl:H.rtl,showFooter:true,formatString:C.cellsformat,selectionMode:C.filtertype,value:null,theme:this.theme,width:A-10,height:this.filterrowheight-10});if(C.createfilterwidget){C.createfilterwidget(C,d,b)}if(z&&z.toString().length>1){b.val(z)}C._filterwidget=b;this.addHandler(b,"valueChanged",function(f){if(!H.refreshingfilter){H._applyfilterfromfilterrow();H.focusedfilter=null}})}else{g(this,d)}break;case"list":case"checkedlist":if(this.host.jqxDropDownList){var q=this._getfilterdataadapter(C);var l=false;var t=a("<div></div>");t.css("margin","4px");var u=C.datafield;var v=C.filtertype=="checkedlist"?true:false;var D=A<150?220:"auto";q.dataBind();var p=q.records;var k=p.length<8?true:false;l=k;t.appendTo(d);t.jqxDropDownList({placeHolder:H.gridlocalization.filterchoosestring,disabled:H.disabled,touchMode:H.touchmode,rtl:H.rtl,checkboxes:v,dropDownWidth:D,source:q.records,autoDropDownHeight:k,theme:this.theme,width:A-10,height:this.filterrowheight-10,displayMember:C.displayfield,valueMember:u});if(C.createfilterwidget){C.createfilterwidget(C,d,t)}var c=t.jqxDropDownList("listBox");if(v){t.jqxDropDownList({selectionRenderer:function(){var f='<span class="'+H.toThemeProperty("jqx-item")+'" style="top: 2px; position: relative; color: inherit; border: none; background-color: transparent;">'+H.gridlocalization.filterselectstring+"</span>";return f}});var y=a('<span style="top: 2px; position: relative; color: inherit; border: none; background-color: transparent;">'+H.gridlocalization.filterselectstring+"</span>");y.addClass(this.toThemeProperty("jqx-item"));if(c!=undefined){if(!l){c.host.height(200)}c.insertAt(H.gridlocalization.filterselectallstring,0);t.jqxDropDownList("setContent",y);var i=true;var G=new Array();c.checkAll(false);H.addHandler(c.host,"checkChange",function(J){t[0]._selectionChanged=true;if(!i){return}if(J.args.label!=H.gridlocalization.filterselectallstring){i=false;c.host.jqxListBox("checkIndex",0,true,false);var f=c.host.jqxListBox("getCheckedItems");var I=c.host.jqxListBox("getItems");if(f.length==1){c.host.jqxListBox("uncheckIndex",0,true,false)}else{if(I.length!=f.length){c.host.jqxListBox("indeterminateIndex",0,true,false)}}i=true}else{i=false;if(J.args.checked){c.host.jqxListBox("checkAll",false)}else{c.host.jqxListBox("uncheckAll",false)}i=true}})}}else{c.insertAt({label:this.gridlocalization.filterchoosestring,value:""},0);t.jqxDropDownList({selectedIndex:0})}C._filterwidget=t;var o=t.jqxDropDownList("dropdownlistWrapper");if(C.filtertype=="list"){this.addHandler(t,"select",function(f){if(!H.refreshingfilter){if(f.args&&f.args.type!="none"){H._applyfilterfromfilterrow();H.focusedfilter=null}}})}else{this.addHandler(t,"close",function(f){if(t[0]._selectionChanged){H._applyfilterfromfilterrow();H.focusedfilter=null;t[0]._selectionChanged=false}})}}else{g(this,d)}break;case"bool":case"boolean":if(this.host.jqxCheckBox){var w=a('<div tabIndex=0 style="opacity: 0.99; position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -10px;"></div>');w.appendTo(d);w.jqxCheckBox({disabled:H.disabled,enableContainerClick:false,animationShowDelay:0,animationHideDelay:0,hasThreeStates:true,theme:this.theme,checked:null});if(C.createfilterwidget){C.createfilterwidget(C,d,w)}if(z===true||z=="true"){w.jqxCheckBox({checked:true})}else{if(z===false||z=="false"){w.jqxCheckBox({checked:false})}}C._filterwidget=w;this.addHandler(w,"change",function(f){if(!H.refreshingfilter){if(f.args){H.focusedfilter=null;H._applyfilterfromfilterrow()}}})}else{g(this,d)}break}},_getfilterdataadapter:function(b){var c=this.source._source?true:false;if(!c){dataadapter=new a.jqx.dataAdapter(this.source,{autoBind:false,uniqueDataFields:[b.displayfield],autoSort:true,autoSortField:b.displayfield,async:false})}else{var e={localdata:this.source.records,datatype:this.source.datatype,async:false};var d=this;dataadapter=new a.jqx.dataAdapter(e,{autoBind:false,autoSort:true,autoSortField:b.displayfield,async:false,uniqueDataFields:[b.displayfield],beforeLoadComplete:function(f){var k=new Array();if(b.cellsformat){var j=d._getcolumntypebydatafield(b);for(var g=0;g<f.length;g++){k.push(f[g]);var h=f[g][b.displayfield];f[g][b.displayfield+"JQValue"]=h;if(j==="date"){if(h!=null){f[g][b.displayfield]=dataadapter.formatDate(h,b.cellsformat,d.gridlocalization)}else{f[g][b.displayfield]=""}}else{if(j==="number"||j==="float"||j==="int"){if(h!=null){f[g][b.displayfield]=dataadapter.formatNumber(h,b.cellsformat,d.gridlocalization)}else{f[g][b.displayfield]=""}}}}return k}else{return f}}})}if(b.filteritems&&b.filteritems.length>0){var e={localdata:b.filteritems,datatype:this.source.datatype,async:false};dataadapter=new a.jqx.dataAdapter(e,{autoBind:false,async:false})}else{if(b.filteritems){if(b.filteritems._source){b.filteritems._options.autoBind=false;b.filteritems._options.async=false;return b.filteritems}else{if(a.isFunction(b.filteritems)){return b.filteritems()}}}}return dataadapter},refreshfilterrow:function(){if(!this.showfilterrow){return}this.refreshingfilter=true;this._updatefilterrowui();this._updatelistfilters(true,true);var h=this.that;var l=this.columns.records.length;for(var d=0;d<l;d++){var c=this.columns.records[d];if(c.filterable){if(c.filter){var b=c.filter.getfilters();if(b.length>0){var k=b[0].value;var e=c._filterwidget;var f=c._filterwidget.parent();if(e!=null){switch(c.filtertype){case"number":f.find("input").val(k);if(this.host.jqxDropDownList){var i=c.filter.getoperatorsbyfiltertype("numericfilter");e.find(".filter").jqxDropDownList("selectIndex",i.indexOf(b[0].condition))}break;case"input":f.find("input").val(k);if(this.host.jqxDropDownList){var i=c.filter.getoperatorsbyfiltertype("stringfilter");e.find(".filter").jqxDropDownList("selectIndex",i.indexOf(b[0].condition))}break;case"date":case"range":if(this.host.jqxDateTimeInput){var k=c.filter.getfilterat(0).filtervalue;if(k!=undefined){if(c.filter.getfilterat(1)){var g=c.filter.getfilterat(1).filtervalue}else{g=k}if(c.filtertype=="range"){a(f.children()[0]).jqxDateTimeInput("setRange",new Date(k),new Date(g))}else{a(f.children()[0]).jqxDateTimeInput("setDate",new Date(k))}}}else{e.val(k)}break;case"textbox":case"default":e.val(k);h["_oldWriteText"+e[0].id]=k;break;case"bool":case"boolean":if(!this.host.jqxCheckBox){e.val(k)}else{a(f.children()[0]).jqxCheckBox({checked:k})}break}}}}}}this.refreshingfilter=false},_destroyedfilters:function(){var g=this.that;var b=this.columns.records.length;for(var f=0;f<b;f++){var c=this.columns.records[f];if(c.filterable){var h=c._filterwidget;if(c.filtertype=="list"||c.filtertype=="checkedlist"){this.removeHandler(h,"select");this.removeHandler(h,"close");h.jqxDropDownList("destroy")}else{if(c.filtertype=="date"||c.filtertype=="range"){this.removeHandler(h,"valueChanged");h.jqxDateTimeInput("destroy")}else{if(c.filtertype=="bool"){this.removeHandler(h,"change");h.jqxCheckBox("destroy")}else{if(c.filtertype=="number"){var d=h.find(".jqx-input");this.removeHandler(d,"keydown");var e=a(h.children()[1]);e.jqxDropDownList("destroy")}else{this.removeHandler(h,"keydown")}}}}h.remove()}}},_updatelistfilters:function(l,k){var v=this.that;var t=this.columns.records.length;for(var p=0;p<t;p++){var q=this.columns.records[p];if(q.filterable){if(q.filtertype=="list"||q.filtertype=="checkedlist"){var h=q._filterwidget;if(!l){if(q.filter==undefined){h.jqxDropDownList("renderSelection");continue}}else{var e=this._getfilterdataadapter(q);h.jqxDropDownList({source:e});var d=h.jqxDropDownList("getItems");var o=true;if(d.length!=e.records.length+1){o=false}if(o){for(var s=1;s<d.length;s++){if(d[s].label!=e.records[s-1][q.displayfield]){o=false;break}}}if(o&&!k){continue}}var m=q.filtertype=="checkedlist"?true:false;var d=h.jqxDropDownList("getItems");var b=h.jqxDropDownList("listBox");h.jqxDropDownList("dataBind");if(m){h.jqxDropDownList({selectionRenderer:function(){return v.gridlocalization.filterselectstring}});b.insertAt(this.gridlocalization.filterselectallstring,0);var n=a('<span style="top: 2px; position: relative; color: inherit; border: none; background-color: transparent;">'+this.gridlocalization.filterselectstring+"</span>");n.addClass(this.toThemeProperty("jqx-item"));h.jqxDropDownList("setContent",n);b.checkAll(false);if(q.filter){var g=q.filter.getfilters();for(var s=0;s<b.items.length;s++){var f=b.items[s].label;var r=undefined;a.each(g,function(){var i;if(this.condition=="NOT_EQUAL"){if(f==this.value){i=false}else{i=true}}else{if(this.condition=="EQUAL"){if(f==this.value){i=true}else{i=false}}}if(r==undefined&&i!==undefined){r=i}else{if(this.condition=="EQUAL"){r=r||i}else{r=r&&i}}});if(r){b.checkIndex(s,false,false)}else{b.uncheckIndex(s,false,false)}}b._updateCheckedItems();var u=b.getCheckedItems().length;if(b.items.length!=u&&u>0){b.host.jqxListBox("indeterminateIndex",0,true,false)}}}else{b.insertAt({label:this.gridlocalization.filterchoosestring,value:""},0);h.jqxDropDownList({selectedIndex:0});if(q.filter){var g=q.filter.getfilters();var c=-1;for(var s=0;s<b.items.length;s++){var f=b.items[s].label;a.each(g,function(){if(this.condition=="NOT_EQUAL"){return true}if(f==this.value){c=s;return false}})}if(c!=-1){b.selectIndex(c)}}}if(d.length<8){h.jqxDropDownList("autoDropDownHeight",true)}else{h.jqxDropDownList("autoDropDownHeight",false)}}}}},_renderfiltercolumn:function(){var b=this.that;if(this.filterable){if(!this.columns.records){return}a.each(this.columns.records,function(d,e){var c=false;if(b.autoshowfiltericon){if(this.filter){a(this.filtericon).show();c=true}else{a(this.filtericon).hide()}}else{if(this.filterable){a(this.filtericon).show();c=true}}if(this.align=="right"&&!this.renderer){if(this.element){if(!c){this.element.firstChild.firstChild.style.marginRight="2px"}else{this.element.firstChild.firstChild.style.marginRight="18px"}}}})}},_initcolumntypes:function(){if(this.columns&&this.columns.records){var b=this.source._source.datafields;if(b){for(var c=0;c<this.columns.records.length;c++){var d=this.columns.records[c];if(d.datatype){continue}var e="";a.each(b,function(){if(this.name==d.displayfield){if(this.type){e=this.type}return false}});if(e!=""){d.datatype=e}else{d.datatype=""}}}}},_getcolumntypebydatafield:function(f){var g=this.that;var e="string";var d=g.source.datafields||((g.source._source)?g.source._source.datafields:null);if(d){var i="";a.each(d,function(){if(this.name==f.displayfield){if(this.type){i=this.type}return false}});if(i){return i}}if(f!=null){if(this.dataview.cachedrecords==undefined){return e}var b=null;if(!this.virtualmode){if(this.dataview.cachedrecords.length==0){return e}b=this.dataview.cachedrecords[0][f.displayfield];if(b!=null&&b.toString()==""){return"string"}}else{a.each(this.dataview.cachedrecords,function(){b=this[f.displayfield];return false})}if(b!=null){if(typeof b=="boolean"){e="boolean"}else{if(a.jqx.dataFormat.isNumber(b)){e="number"}else{var h=new Date(b);if(h.toString()=="NaN"||h.toString()=="Invalid Date"){if(a.jqx.dataFormat){h=a.jqx.dataFormat.tryparsedate(b);if(h!=null){if(h&&h.getFullYear()){if(h.getFullYear()==1970&&h.getMonth()==0&&h.getDate()==1){var c=new Number(b);if(!isNaN(c)){return"number"}return"string"}}return"date"}else{e="string"}}else{e="string"}}else{e="date"}}}}}return e},_getfiltersbytype:function(b){var c=this.that;var d="";switch(b){case"number":case"float":case"int":d=c.gridlocalization.filternumericcomparisonoperators;break;case"date":d=c.gridlocalization.filterdatecomparisonoperators;break;case"boolean":case"bool":d=c.gridlocalization.filterbooleancomparisonoperators;break;case"string":default:d=c.gridlocalization.filterstringcomparisonoperators;break}return d},_getfiltertype:function(b){var c="stringfilter";switch(b){case"number":case"int":case"float":case"decimal":c="numericfilter";break;case"boolean":case"bool":c="booleanfilter";break;case"date":case"time":case"range":c="datefilter";break;case"string":case"input":c="stringfilter";break}return c},_buildfilter:function(r,l,F){var f=a(l).find(".filter1");var G=a(l).find(".filter2");var K=a(l).find(".filter3");var k=a(l).find(".filtertext1"+r.element.id);var j=a(l).find(".filtertext2"+r.element.id);var A=k.val();var z=j.val();var M=r._getcolumntypebydatafield(F);var t=r._getfiltersbytype(M);var J=new a.jqx.filter();var w=r._getfiltertype(M);if(r.filtermode==="default"&&(F.filtertype!=="list"&&F.filtertype!=="checkedlist")){var E=f.jqxDropDownList("selectedIndex");var c=G.jqxDropDownList("selectedIndex");var D=K.jqxDropDownList("selectedIndex");var e=null;var d=null;if(r.updatefilterconditions){var p=r.updatefilterconditions(w,J.getoperatorsbyfiltertype(w));if(p!=undefined){J.setoperatorsbyfiltertype(w,p)}}var q=false;var L=J.getoperatorsbyfiltertype(w)[E];var K=J.getoperatorsbyfiltertype(w)[D];var v=L=="NULL"||L=="NOT_NULL";var h=L=="EMPTY"||L=="NOT_EMPTY";if(L==undefined){L=J.getoperatorsbyfiltertype(w)[0]}if(K==undefined){K=J.getoperatorsbyfiltertype(w)[0]}if(A.length>0||v||h){e=J.createfilter(w,A,L,null,F.cellsformat,r.gridlocalization);J.addfilter(c,e);q=true}var u=K=="NULL"||K=="NOT_NULL";var g=K=="EMPTY"||K=="NOT_EMPTY";if(z.length>0||u||g){d=J.createfilter(w,z,K,null,F.cellsformat,r.gridlocalization);J.addfilter(c,d);q=true}if(q){var C=F.displayfield;this.addfilter(C,J,true)}else{this._clearfilter(r,l,F)}}else{if(r.filtermode==="excel"||(F.filtertype==="list"||F.filtertype==="checkedlist")){var B=this;var n=false;var x=f.data().jqxListBox.instance;var I=this.filtermode==="excel"||F.filtertype==="checkedlist";var o=x.getCheckedItems();if(!I){var o=x.getSelectedItems()}if(o.length==0){for(var H=1;H<x.items.length;H++){var m=x.items[H].value;if(m===undefined){m=""}var b="not_equal";if(m&&m.indexOf){if(m.indexOf("|")>=0||m.indexOf(" AND ")>=0||m.indexOf(" OR ")>=0||m.indexOf(" and ")>=0||m.indexOf(" or ")>=0){m=m.replace("|","");m=m.replace("AND","");m=m.replace("OR","");m=m.replace("and","");m=m.replace("or","");var b="equal"}}if(w=="datefilter"){var y=J.createfilter(w,m,b,null,F.cellsformat,r.gridlocalization)}else{var y=J.createfilter(w,m,b,null)}J.addfilter(0,y)}n=true}else{if(o.length!=x.items.length){n=true;for(var H=0;H<o.length;H++){if(r.gridlocalization.filterselectallstring===o[H].value){continue}var m=o[H].value;if(m===undefined){m=""}var b="equal";if(w=="datefilter"){var y=J.createfilter(w,m,b,null,F.cellsformat,r.gridlocalization)}else{var y=J.createfilter(w,m,b,null)}var s=1;J.addfilter(s,y)}}else{n=false}}if(n){var C=F.displayfield;this.addfilter(C,J,true)}else{var C=F.displayfield;this.removefilter(C,true)}}}},_clearfilter:function(e,c,d){var b=d.displayfield;this.removefilter(b,true)},addfilter:function(d,e,c){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}var f=this.getcolumn(d);var b=this._getcolumn(d);if(f==undefined||f==null){return}f.filter=e;b.filter=e;this.dataview.addfilter(d,e);if(c==true&&c!=undefined){this.applyfilters("add")}},removefilter:function(d,c){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}var e=this.getcolumn(d);var b=this._getcolumn(d);if(e==undefined||e==null){return}if(e.filter==null){return}this.dataview.removefilter(d,e.filter);e.filter=null;b.filter=null;if(this.showfilterrow){this.clearfilterrow(d)}if(c==true||c!==false){this.applyfilters("remove")}},applyfilters:function(f){var c=false;if(this.dataview.filters.length>=0&&(this.virtualmode||!this.source.localdata)){if(this.source!=null&&this.source.filter){var g=-1;if(this.pageable){g=this.dataview.pagenum;this.dataview.pagenum=0}else{this.vScrollInstance.setPosition(0);this.loadondemand=true;this._renderrows(this.virtualsizeinfo)}if(this.pageable&&this.virtualmode){this.dataview.pagenum=0}this.source.filter(this.dataview.filters,this.dataview.records,this.dataview.records.length);if(this.pageable&&!this.virtualmode){this.dataview.pagenum=g}}}this._cellscache=new Array();if(this.dataview.clearsortdata){this.dataview.clearsortdata()}if(!this.virtualmode){var b=this.selectedrowindexes;var d=this.that;this.dataview.refresh();if(this.dataview.clearsortdata){if(this.sortcolumn&&this.sortdirection){var e=this.sortdirection.ascending?"asc":"desc";if(!this._loading){this.sortby(this.sortcolumn,e,null,false)}else{this.sortby(this.sortcolumn,e,null,false,false)}}}}else{if(this.pageable){this.dataview.updateview();if(this.gotopage){this.gotopage(0)}}this.rendergridcontent(false,false);if(this.showfilterrow){if(typeof f!="string"&&a.isEmptyObject(f)){this.refreshfilterrow()}}this._raiseEvent(13,{filters:this.dataview.filters});return}if(this.pageable){this.dataview.updateview();if(this.gotopage){this.gotopage(0);this.updatepagerdetails()}}this._updaterowsproperties();if(!this.groupable||(this.groupable&&this.groups.length==0)){this._rowdetailscache=new Array();this.virtualsizeinfo=null;this._pagescache=new Array();if(this.columns&&this.columns.records&&this.columns.records.length>0&&!this.columns.records[0].filtericon){this.prerenderrequired=true}this.rendergridcontent(true,false);this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);if(this.showaggregates&&this._updatecolumnsaggregates){this._updatecolumnsaggregates()}}else{this._rowdetailscache=new Array();this._render(true,true,false,false,false);if(this.showfilterrow){this._updatefocusedfilter()}this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}if(this.showfilterrow){if(typeof f!="string"&&a.isEmptyObject(f)){this.refreshfilterrow()}}this._raiseEvent(13,{filters:this.dataview.filters})},getfilterinformation:function(){var d=new Array();for(var b=0;b<this.dataview.filters.length;b++){var c=this.getcolumn(this.dataview.filters[b].datafield);d[b]={filter:this.dataview.filters[b].filter,datafield:c.datafield,displayfield:c.displayfield,filtercolumn:c.datafield,filtercolumntext:c.text}}return d},clearfilters:function(b){var d=this.that;if(this.showfilterrow){this.clearfilterrow()}if(this.columns.records){var c=b==true||b!==false;a.each(this.columns.records,function(){d.removefilter(this.displayfield,!c)})}if(b===false){return}if(b==true||b!==false){this.applyfilters("clear")}},_destroyfilterpanel:function(){var e=a(a.find("#filterclearbutton"+this.element.id));var d=a(a.find("#filterbutton"+this.element.id));var h=a(a.find("#filter1"+this.element.id));var c=a(a.find("#filter2"+this.element.id));var g=a(a.find("#filter3"+this.element.id));var f=a(a.find(".filtertext1"+this.element.id));var b=a(a.find(".filtertext2"+this.element.id));if(f.length>0&&b.length>0){f.removeClass();b.removeClass();f.remove();b.remove()}if(e.length>0){e.jqxButton("destroy");d.jqxButton("destroy");this.removeHandler(e,"click");this.removeHandler(d,"click")}if(h.length>0){h.jqxDropDownList("destroy")}if(c.length>0){c.jqxDropDownList("destroy")}if(g.length>0){g.jqxDropDownList("destroy")}var h=a(a.find("#filter1"+this.element.id+"ex"));var c=a(a.find("#filter2"+this.element.id+"ex"));var g=a(a.find("#filter3"+this.element.id+"ex"));if(h.length>0){h.jqxDropDownList("destroy")}if(c.length>0){c.jqxDropDownList("destroy")}if(g.length>0){g.jqxDropDownList("destroy")}},_updatefilterpanel:function(s,p,E){if(s==null||s==undefined){s=this}var Q=s._getcolumntypebydatafield(E);var u=s._getfiltersbytype(Q);if(!s.host.jqxDropDownList){throw new Error("jqxGrid: Missing reference to jqxdropdownlist.js.");return}s.filterpanel.detach();s.excelfilterpanel.detach();if(E.filterpanel){E.filterpanel.detach()}a(p).children().detach();var k=a(s.menuitemsarray[6]);a(k).css("height","175px");if(E.createfilterpanel&&!E.filterpanel){var K=a("<div class='filter' style='margin-left: 7px;'></div>");a(p).append(K);E.createfilterpanel(E.displayfield,K);E.filterpanel=K}if(E.filtertype==="list"||E.filtertype==="checkedlist"){a(p).append(s.excelfilterpanel)}else{if(E.filtertype!=="custom"){a(p).append(s.filterpanel)}else{if(E.filterpanel){a(p).append(E.filterpanel)}}}var g=a(p);var N=g.find("#filterclearbutton"+s.element.id);var l=g.find("#filterbutton"+s.element.id);var f=g.find(".filter1");var m=g.find(".filter2");var P=g.find(".filter3");var j=g.find(".filtertext1"+s.element.id);var h=g.find(".filtertext2"+s.element.id);if(this._hasdatefilter&&(E.filtertype!=="list"&&E.filtertype!=="checkedlist"&&E.filtertype!=="custom")){var e=j.parent();var d=h.parent();e.children().remove();d.children().remove();if(E.filtertype=="date"){s._showwhere.text(s.gridlocalization.filtershowrowdatestring);var b=a("<div class='filtertext1"+s.element.id+"' style='margin-top: 3px; margin-bottom: 3px;'></div>");e.append(b);var n=function(c){var i={calendar:s.gridlocalization,todayString:s.gridlocalization.todaystring,clearString:s.gridlocalization.clearstring};c.jqxDateTimeInput({disabled:s.disabled,localization:i,rtl:s.rtl,width:s._filterpanelwidth-15,height:20,value:null,formatString:E.cellsformat,theme:s.theme})};n(b);var b=a("<div class='filtertext2"+s.element.id+"' style='margin-top: 3px; margin-bottom: 3px;'></div>");d.append(b);n(b)}else{s._showwhere.text(s.gridlocalization.filtershowrowstring);var b=a("<input class='filtertext1"+s.element.id+"' style='height: 20px; margin-top: 3px; margin-bottom: 3px;' type='text'></input>");e.append(b);var n=function(c){c.addClass(s.toThemeProperty("jqx-input"));c.addClass(s.toThemeProperty("jqx-widget-content"));c.addClass(s.toThemeProperty("jqx-rc-all"));c.width(s._filterpanelwidth-15)};n(b);var b=a("<input class='filtertext2"+s.element.id+"' style='height: 20px; margin-top: 3px; margin-bottom: 3px;' type='text'></input>");d.append(b);n(b)}var j=g.find(".filtertext1"+s.element.id);var h=g.find(".filtertext2"+s.element.id)}if(E.filtertype!="date"){j.val("");h.val("")}else{j.val(null);h.val(null)}this.removeHandler(l,"click");this.addHandler(l,"click",function(){s._buildfilter(s,p,E);s._closemenu()});this.removeHandler(N,"click");this.addHandler(N,"click",function(){s._clearfilter(s,p,E);s._closemenu()});this.removeHandler(l,"keydown");this.addHandler(l,"keydown",function(c){if(c.keyCode===13){s._buildfilter(s,p,E);s._closemenu()}});this.removeHandler(N,"keydown");this.addHandler(N,"keydown",function(c){if(c.keyCode===13){s._clearfilter(s,p,E);s._closemenu()}});this.removeHandler(j,"keydown");this.addHandler(j,"keydown",function(c){if(c.keyCode===13){l.trigger("click")}if(c.keyCode===27){s._closemenu()}});this.removeHandler(h,"keydown");this.addHandler(h,"keydown",function(c){if(c.keyCode===13){l.trigger("click")}if(c.keyCode===27){s._closemenu()}});if(this.filtermode==="default"&&(E.filtertype!=="list"&&E.filtertype!=="checkedlist"&&E.filtertype!=="custom")){if(f.jqxDropDownList("source")!=u){f.jqxDropDownList({enableBrowserBoundsDetection:false,source:u});P.jqxDropDownList({enableBrowserBoundsDetection:false,source:u})}if(Q=="boolean"||Q=="bool"){f.jqxDropDownList({autoDropDownHeight:true,selectedIndex:0});P.jqxDropDownList({autoDropDownHeight:true,selectedIndex:0})}else{var H=false;if(u&&u.length){if(u.length<5){H=true}}f.jqxDropDownList({autoDropDownHeight:H,selectedIndex:2});P.jqxDropDownList({autoDropDownHeight:H,selectedIndex:2})}m.jqxDropDownList({selectedIndex:0});var z=E.filter;var M=new a.jqx.filter();var x="";switch(Q){case"number":case"int":case"float":case"decimal":x="numericfilter";o=M.getoperatorsbyfiltertype("numericfilter");break;case"boolean":case"bool":x="booleanfilter";o=M.getoperatorsbyfiltertype("booleanfilter");break;case"date":case"time":x="datefilter";o=M.getoperatorsbyfiltertype("datefilter");break;case"string":x="stringfilter";o=M.getoperatorsbyfiltertype("stringfilter");break}if(z!=null){var e=z.getfilterat(0);var d=z.getfilterat(1);var I=z.getoperatorat(0);if(s.updatefilterconditions){var o=[];var r=s.updatefilterconditions(x,o);if(r!=undefined){for(var O=0;O<r.length;O++){r[O]=r[O].toUpperCase()}z.setoperatorsbyfiltertype(x,r);o=r}}var w="default";if(e!=null){var D=o.indexOf(e.comparisonoperator);var A=e.filtervalue;j.val(A);f.jqxDropDownList({selectedIndex:D,animationType:w})}if(d!=null){var C=o.indexOf(d.comparisonoperator);var y=d.filtervalue;h.val(y);P.jqxDropDownList({selectedIndex:C,animationType:w})}if(z.getoperatorat(0)==undefined){m.jqxDropDownList({selectedIndex:0,animationType:w})}else{if(z.getoperatorat(0)=="and"||z.getoperatorat(0)==0){m.jqxDropDownList({selectedIndex:0})}else{m.jqxDropDownList({selectedIndex:1})}}}if(s.updatefilterpanel){s.updatefilterpanel(f,P,m,j,h,l,N,z,x,o)}if(!this._hasdatefilter||(this._hasdatefilter&&E.filtertype!="date")){if(!this.touchdevice){j.focus();setTimeout(function(){j.focus()},10)}}}else{if(this.filtermode==="excel"||E.filtertype==="list"||E.filtertype==="checkedlist"){var v=s._getfilterdataadapter(E);var x=s._getfiltertype(Q);var L=this.filtermode==="excel"||E.filtertype==="checkedlist";f.jqxListBox("focus");this.removeHandler(f,"keyup");this.addHandler(f,"keyup",function(c){if(c.keyCode===13){l.trigger("click")}if(c.keyCode===27){s._closemenu()}});if(E.cellsformat){f.jqxListBox({checkboxes:L,displayMember:E.displayfield,valueMember:E.displayfield+"JQValue",source:v})}else{f.jqxListBox({checkboxes:L,displayMember:E.displayfield,valueMember:E.displayfield,source:v})}if(L){f.jqxListBox("insertAt",s.gridlocalization.filterselectallstring,0);var F=f.data().jqxListBox.instance;F.checkAll(false);var B=this;if(E.filter){F.uncheckAll(false);var t=E.filter.getfilters();for(var J=0;J<F.items.length;J++){var G=F.items[J].value;a.each(t,function(){if(this.condition=="NOT_EQUAL"){if(G!=this.value){F.uncheckIndex(J,false,false);return false}else{if(G!=null&&this.value!=null&&G.toString()!=this.value.toString()){F.uncheckIndex(J,false,false);return false}}}else{if(this.condition=="EQUAL"){if(G==this.value){F.checkIndex(J,false,false);return false}else{if(G!=null&&this.value!=null&&G.toString()==this.value.toString()){F.checkIndex(J,false,false);return false}}}}})}F._updateCheckedItems();var q=F.getCheckedItems().length;if(F.items.length!=q&&q>0){F.host.jqxListBox("indeterminateIndex",0,true,false)}if(q===F.items.length-1){F.host.jqxListBox("checkIndex",0,true,false)}}}else{if(E.filter){var F=f.data().jqxListBox.instance;F.clearSelection();var t=E.filter.getfilters();for(var J=0;J<F.items.length;J++){var G=F.items[J].value;a.each(t,function(){if(this.condition=="NOT_EQUAL"){if(G!=this.value){F.unselectIndex(J,false,false);return false}}else{if(this.condition=="EQUAL"){if(G==this.value){F.selectIndex(J,true,false);return false}}}})}F._renderItems()}}}}},_initfilterpanel:function(z,b,c,p,w){if(z==null||z==undefined){z=this}b[0].innerHTML="";var t=a("<div class='filter' style='margin-left: 7px;'></div>");b.append(t);var n=a("<div class='filter' style='margin-top: 3px; margin-bottom: 3px;'></div>");n.text(z.gridlocalization.filtershowrowstring);this._showwhere=n;var o=w?"ex":"";var v=a("<div class='filter filter1' id='filter1"+z.element.id+o+"'></div>");var h=a("<div class='filter filter2' id='filter2"+z.element.id+o+"' style='margin-bottom: 3px;'></div>");var s=a("<div class='filter filter3' id='filter3"+z.element.id+o+"'></div>");var e=z._getcolumntypebydatafield(c);if(!v.jqxDropDownList){throw new Error("jqxGrid: jqxdropdownlist.js is not loaded.");return}var q=z._getfiltersbytype(e);this._hasdatefilter=false;this._filterpanelwidth=p;if(this.columns&&this.columns.records){for(var u=0;u<this.columns.records.length;u++){if(this.columns.records[u].filtertype=="date"){this._hasdatefilter=true;break}}}var k=a("<div class='filter'><input class='filtertext1"+z.element.id+"' style='height: 20px; margin-top: 3px; margin-bottom: 3px;' type='text'></input></div>");var m=k.find("input");m.addClass(this.toThemeProperty("jqx-input"));m.addClass(this.toThemeProperty("jqx-widget-content"));m.addClass(this.toThemeProperty("jqx-rc-all"));m.width(p-15);var l=a("<div class='filter'><input class='filtertext2"+z.element.id+"' style='height: 20px; margin-top: 3px;' type='text'></input></div>");var j=l.find("input");j.addClass(this.toThemeProperty("jqx-input"));j.addClass(this.toThemeProperty("jqx-widget-content"));j.addClass(this.toThemeProperty("jqx-rc-all"));j.width(p-15);if(z.rtl){m.css("direction","rtl");j.css("direction","rtl")}var g=a("<div class='filter' style='height: 25px; margin-left: 20px; margin-top: 7px;'></div>");var f=a('<span tabIndex=0 id="filterbutton'+z.element.id+'" class="filterbutton" style="padding: 4px 12px; margin-left: 2px;">'+z.gridlocalization.filterstring+"</span>");g.append(f);var x=a('<span tabIndex=0 id="filterclearbutton'+z.element.id+'" class="filterclearbutton" style="padding: 4px 12px; margin-left: 5px;">'+z.gridlocalization.filterclearstring+"</span>");g.append(x);f.jqxButton({height:20,theme:z.theme});x.jqxButton({height:20,theme:z.theme});var y=function(A){if(A){if(A.text().indexOf("case sensitive")!=-1){var i=A.text();i=i.replace("case sensitive","match case");A.text(i)}A.css("font-family",z.host.css("font-family"));A.css("font-size",z.host.css("font-size"));A.css("top","1px");A.css("position","relative");return A}return""};if(this.filtermode==="default"&&!w){t.append(n);t.append(v);v.jqxDropDownList({_checkForHiddenParent:false,rtl:z.rtl,enableBrowserBoundsDetection:false,selectedIndex:2,width:p-15,height:20,dropDownHeight:150,dropDownWidth:p-15,selectionRenderer:y,source:q,theme:z.theme});t.append(k);var r=new Array();r[0]=z.gridlocalization.filterandconditionstring;r[1]=z.gridlocalization.filterorconditionstring;h.jqxDropDownList({_checkForHiddenParent:false,rtl:z.rtl,enableBrowserBoundsDetection:false,autoDropDownHeight:true,selectedIndex:0,width:60,height:20,source:r,selectionRenderer:y,theme:z.theme});t.append(h);s.jqxDropDownList({_checkForHiddenParent:false,rtl:z.rtl,enableBrowserBoundsDetection:false,selectedIndex:2,width:p-15,height:20,dropDownHeight:150,dropDownWidth:p-15,selectionRenderer:y,source:q,theme:z.theme});t.append(s);t.append(l)}else{if(this.filtermode==="excel"||w){t.append(n);t.append(v);v.attr("tabindex",0);v.jqxListBox({rtl:z.rtl,_checkForHiddenParent:false,checkboxes:true,selectedIndex:2,width:p-15,height:120,theme:z.theme});var d=true;z.addHandler(v,"checkChange",function(B){if(!d){return}if(B.args.label!=z.gridlocalization.filterselectallstring){d=false;v.jqxListBox("checkIndex",0,true,false);var i=v.jqxListBox("getCheckedItems");var A=v.jqxListBox("getItems");if(i.length==1){v.jqxListBox("uncheckIndex",0,true,false)}else{if(A.length!=i.length){v.jqxListBox("indeterminateIndex",0,true,false)}}d=true}else{d=false;if(B.args.checked){v.jqxListBox("checkAll",false)}else{v.jqxListBox("uncheckAll",false)}d=true}})}}t.append(g);if(z.updatefilterpanel){z.updatefilterpanel(v,s,h,k,l,f,x,null,null,q)}}})})(jqxBaseFramework);(function(a){a.jqx.dataview.grouping=function(){this.loadgrouprecords=function(E,H,s,F,I,f,R,G,x){var M=E;var j=this;var Q=new Array();for(var n=0;n<j.groups.length;n++){Q[n]=j.generatekey()}var K=new Array();var b=0;var Q=Q;var B=new Array();var P=H;var e=H;var C=j.groups.length;this.loadedrecords=new Array();this.bounditems=new Array();this.loadedrecords=new Array();this.loadedrootgroups=new Array();this.loadedgroups=new Array();this.loadedgroupsByKey=new Array();this.sortedgroups=new Array();var O=this.sortdata!=null;var S=O?this.sortdata:this.records;if(this.pageable){var A=Object.prototype.toString;var l=this.groups[0];if(this.groups.length==1){Object.prototype.toString=(typeof l=="function")?l:function(){return this[l]}}else{Object.prototype.toString=(typeof l=="function")?l:function(){var T="";for(var i=0;i<j.groups.length;i++){T+=this[j.groups[i]];if(i<j.groups.length-1){T+=" "}}return T}}if(O){var c=this.sortfield;Object.prototype.toString=(typeof l=="function")?l:function(){return this[l]+" "+this[c]}}var u=new Array();var D=0;if(!S[H]){a.each(S,function(i,q){u[H+i++]=this});S=u}if(!O){if(S.sort){S.sort(function(q,i){if(q===undefined){q=null}if(i===undefined){i=null}if(q===null&&i===null){return 0}if(q===null&&i!==null){return 1}if(q!==null&&i===null){return -1}q=q.toString();i=i.toString();if(a.jqx.dataFormat.isNumber(q)&&a.jqx.dataFormat.isNumber(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(a.jqx.dataFormat.isDate(q)&&a.jqx.dataFormat.isDate(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(q)&&!a.jqx.dataFormat.isNumber(i)){q=String(q).toLowerCase();i=String(i).toLowerCase()}}}try{if(q<i){return -1}if(q>i){return 1}}catch(T){var U=T}return 0})}}else{S.sort(function(q,i){var q=q.value;var i=i.value;if(q===undefined){q=null}if(i===undefined){i=null}if(q===null&&i===null){return 0}if(q===null&&i!==null){return 1}if(q!==null&&i===null){return -1}if(a.jqx.dataFormat.isNumber(q)&&a.jqx.dataFormat.isNumber(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(a.jqx.dataFormat.isDate(q)&&a.jqx.dataFormat.isDate(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(q)&&!a.jqx.dataFormat.isNumber(i)){q=String(q).toLowerCase();i=String(i).toLowerCase()}}}try{if(q<i){return -1}if(q>i){return 1}}catch(T){var U=T}return 0})}Object.prototype.toString=A}if(this.virtualmode){var u=new Array();var D=0;for(var P=0;P<s-H;P++){if(S[P]){u[H+D++]=S[P]}else{if(S[H+D]){u[H+D]=S[H+D];D++}}}P=0;S=u}for(var d=H;d<s;d++){var y={};if(!O){y=a.extend({},S[d])}else{y=a.extend({},S[d].value)}id=y[j.uniqueId];if(I>=G||id!=R[I][j.uniqueId]||(f&&f[id])){x[x.length]=I}var L=new Array();var w=0;for(var n=0;n<C;n++){var t=j.groups[n];var J=y[t];if(J==null){J=""}L[w++]={value:J,hash:Q[n]}}if(L.length!=C){break}var k=null;var m="";var g=-1;for(var N=0;N<L.length;N++){g++;var p=L[N].value;var v=L[N].hash;m=m+"_"+v+"_"+p;if(B[m]!=undefined&&B[m]!=null){k=B[m];continue}if(k==null){k={group:p,subItems:new Array(),subGroups:new Array(),level:0};K[b++]=k;k.uniqueid=j.generatekey();j.loadedgroupsByKey[p]=k}else{var o={group:p,subItems:new Array(),subGroups:new Array(),parentItem:k,level:k.level+1};j.loadedgroupsByKey[k.uniqueid+"_"+p]=o;o.uniqueid=j.generatekey();k.subGroups[k.subGroups.length++]=o;k=o}B[m]=k}if(k!=null){if(undefined==y.uid){y.uid=this.getid(this.source.id,y,P)}if(!O){y.boundindex=P;this.recordsbyid["id"+y.uid]=S[d]}else{y.boundindex=S[d].index;this.recordsbyid["id"+y.uid]=S[d].value}this.bounditems[y.boundindex]=y;this.sortedgroups[P]=y;y.uniqueid=j.generatekey();y.parentItem=k;y.level=k.level+1;k.subItems[k.subItems.length++]=y}else{if(undefined==y.uid){y.uid=this.getid(this.source.id,y,P)}if(!O){y.boundindex=P;this.recordsbyid["id"+y.uid]=S[d]}else{y.boundindex=S[d].index;this.recordsbyid["id"+y.uid]=S[d].value}this.sortedgroups[P]=y;this.bounditems[y.boundindex]=y;y.uniqueid=j.generatekey()}I++;P++;e++}var h=function(q,T,U){for(var i=0;i<T.subItems.length;i++){T.subItems[i].visibleindex=E+U;q.rows[U]=T.subItems[i];q.loadedrecords[U]=T.subItems[i];U++}return U};var r=function(i,U,V){var q=function(Y){if(i.aggregates==true){var W=Y;var X={};if(W!=null){X.level=W.level;X.visibleindex=E+V;X.uniqueid=i.generatekey();i.rows[V]=X;i.loadedrecords[V++]=X;X.totalsrow=true;if(Y.subItems.length>0){W=Y.subItems[Y.subItems.length-1];X.parentItem=W.parentItem;if(X.parentItem.subItems){X.parentItem.subItems[X.parentItem.subItems.length]=X}}else{if(Y.subGroups.length>0){W=Y.subGroups[Y.subGroups.length-1];X.level=W.level;X.parentItem=Y;Y.subGroups[Y.subGroups.length]=X}}}}};for(subGroup in U.subGroups){var T=U.subGroups[subGroup];if(T.subGroups){i.loadedgroups[i.loadedgroups.length]=T;T.visibleindex=E+V;i.rows[V]=T;i.loadedrecords[V]=T;V++;if(T.subGroups.length>0){V=r(i,T,V)}else{if(T.subItems.length>0){V=h(i,T,V)}}q(T)}}if(U.subItems.length>0){V=h(i,U,V)}q(U);return V};var z=K.length;this.loadedgroups=new Array();this.rows=new Array();var M=0;for(var P=0;P<z;P++){var t=K[P];this.loadedrootgroups[P]=t;this.loadedgroups[this.loadedgroups.length]=t;t.visibleindex=E+M;this.rows[M]=t;this.loadedrecords[M]=t;M++;M=r(this,t,M)}return M};this._updategroupsinpage=function(C,r,K,d,u,j,f){var p=new Array();var w=[];if(this.groupable&&this.groups.length>0){var B=0;var h=new Array();var g=new Array();for(var m=0;m<C.groups.length;m++){g[m]=C.generatekey()}var F=0;var o=new Array();var k=0;if(f>this.totalrecords){f=this.totalrecords}for(var v=j;v<f;v++){var H=a.extend({},C.sortedgroups[v]);id=H[C.uniqueId];if(!C.pagesize||(K>=C.pagesize*C.pagenum&&K<C.pagesize*(C.pagenum+1))){if(d>=u||id!=p[d][C.uniqueId]||(updated&&updated[id])){w[w.length]=d}var e=new Array();var y=0;for(var m=0;m<C.groups.length;m++){var n=C.groups[m];var D=H[n];if(null==D){D=""}e[y++]={value:D,hash:g[m]}}if(e.length!=C.groups.length){break}var z=null;var s="";var c=-1;for(var A=0;A<e.length;A++){c++;var G=e[A].value;var l=e[A].hash;s=s+"_"+l+"_"+G;if(h[s]!=undefined&&h[s]!=null){z=h[s];continue}if(z==null){z={group:G,subItems:new Array(),subGroups:new Array(),level:0};o[k++]=z;var E=C.loadedgroupsByKey[G];if(E!=undefined){z.visibleindex=E.visibleindex;z.uniqueid=E.uniqueid}}else{var t={group:G,subItems:new Array(),subGroups:new Array(),parentItem:z,level:z.level+1};var E=C.loadedgroupsByKey[z.uniqueid+"_"+G];t.visibleindex=E.visibleindex;t.uniqueid=E.uniqueid;z.subGroups[z.subGroups.length++]=t;z=t}h[s]=z}if(z!=null){H.parentItem=z;H.level=z.level+1;z.subItems[z.subItems.length++]=H}d++}F++;K++}var x=function(L,M,q){for(var i=0;i<M.subItems.length;i++){p[q]=a.extend({},M.subItems[i]);q++}return q};var I=function(M){var q=false;for(subGroup in M.subGroups){var L=M.subGroups[subGroup];if(L.subGroups){if(L.subGroups.length>0){var i=I(L);if(i){q=true;return true}}if(L.subItems.length>0){q=true;return true}}}if(M.subItems.length>0){q=true;return true}return q};var b=function(q,M,i){for(subGroup in M.subGroups){var L=M.subGroups[subGroup];if(L.subGroups){if(I(L)){p[i]=L;i++;if(L.subGroups.length>0){i=b(q,L,i)}else{if(L.subItems.length>0){i=x(q,L,i)}}}}}if(M.subItems.length>0){i=x(q,M,i)}return i};var J=0;for(var F=0;F<o.length;F++){var n=o[F];if(I(n)){p[B]=n;B++;B=b(this,n,B)}}}return p}};a.extend(a.jqx._jqxGrid.prototype,{_initgroupsheader:function(){this.groupsheader.css("visibility","hidden");if(this._groupsheader()){this.groupsheader.css("visibility","inherit");var e=this;var c=this.gridlocalization.groupsheaderstring;this.groupsheaderdiv=this.groupsheaderdiv||a('<div style="width: 100%; position: relative;"></div>');this.groupsheaderdiv.height(this.groupsheaderheight);this.groupsheaderdiv.css("top",0);this.groupsheader.append(this.groupsheaderdiv);this.groupheadersbounds=new Array();var d=this.groups.length;this.groupsheaderdiv.children().remove();this.groupsheaderdiv[0].innerHTML="";var b=new Array();if(d>0){a.each(this.groups,function(i){var n=this;var m=e._getColumnText(this);var l=m.label;var k=e._rendergroupcolumn(l,n);k.addClass(e.toThemeProperty("jqx-grid-group-column"));e.groupsheaderdiv.append(k);if(e.closeablegroups){var j=a(k.find(".jqx-icon-close"));if(e.isTouchDevice()&&e.touchmode!==true){e.addHandler(j,"touchstart",function(){e.removegroupat(i);return false})}else{e.addHandler(j,"click",function(){e.removegroupat(i);return false})}}if(e.sortable){e.addHandler(k,"click",function(){var o=e.getcolumn(n);if(o!=null){e._togglesort(o)}return false})}b[b.length]=k;e._handlegroupstocolumnsdragdrop(this,k);if(i<d-1){var g=k.height();var h=a('<div style="float: left; position: relative;"></div>');if(e.rtl){h.css("float","right")}h.width(e.groupindentwidth/3);h.height(1);h.css("top",g/2);h.addClass(e.toThemeProperty("jqx-grid-group-column-line"));e.groupsheaderdiv.append(h)}})}else{var f=a('<div style="position: relative;">'+c+"</div>");this.groupsheaderdiv.append(f);if(this.rtl){f.addClass(this.toThemeProperty("jqx-rtl"))}}this._groupheaders=b;this._updategroupheadersbounds()}},_updategroupheadersbounds:function(){var c=this;var b=this.groupsheaderdiv.children().outerHeight();var d=(this.groupsheader.height()-b)/2;this.groupsheaderdiv.css("top",d);if(!this.rtl){this.groupsheaderdiv.css("left",d);this.groupsheaderdiv.css("right","")}else{this.groupsheaderdiv.css("left","");this.groupsheaderdiv.css("right",d)}if(this.rtl){this._groupheaders.reverse()}a.each(this._groupheaders,function(f){var e=this.coord();c.groupheadersbounds[f]={left:e.left,top:e.top,width:this.outerWidth(),height:this.outerHeight(),index:f}})},addgroup:function(c){if(c){var b=this;if(b.groups!==b.dataview.groups){b.dataview.groups=b.groups}b.groups[b.groups.length]=c;b.refreshgroups();this._raiseEvent(12,{type:"Add",index:b.groups[b.groups.length],groups:b.groups})}},insertgroup:function(d,c){if(d!=undefined&&d!=null&&d>=0&&d<=this.groups.length){if(c){var b=this;if(b.groups!==b.dataview.groups){b.dataview.groups=b.groups}b.groups.splice(d,0,c.toString());b.refreshgroups();this._raiseEvent(12,{type:"Insert",index:d,groups:b.groups})}}},refreshgroups:function(){this._refreshdataview();this._render(true,true,true,false)},_insertaftergroup:function(d,c){var b=this._getGroupIndexByDataField(d);this.insertgroup(b+1,c)},_insertbeforegroup:function(d,c){var b=this._getGroupIndexByDataField(d);this.insertgroup(b,c)},removegroupat:function(c){if(c>=0&&c!=null&&c!=undefined){var b=this;if(b.groups!==b.dataview.groups){b.dataview.groups=b.groups}b.groups.splice(c,1);b.refreshgroups();if(b.virtualmode){b.updatebounddata()}this._raiseEvent(12,{type:"Remove",index:c,groups:b.groups});return true}return false},cleargroups:function(){var b=this;b.groups=[];b.dataview.groups=b.groups;b.refreshgroups();this._raiseEvent(12,{type:"Clear",index:-1,groups:b.groups});return true},removegroup:function(c){if(c==null){return false}var b=this.groups.indexOf(c.toString());return this.removegroupat(b)},getrootgroupscount:function(){var b=this.dataview.loadedrootgroups.length;return b},collapsegroup:function(c){if(c>=0&&c.toString().indexOf(".")===-1){return this._setrootgroupstate(c,false)}var b=c.toString().split(".");var f=null;for(var d=0;d<b.length;d++){var c=parseInt(b[d]);if(d==0){var f=this.dataview.loadedrootgroups[c]}else{var e=f.subGroups[c];if(e){f=e;if(d==b.length-1){this._setgroupstate(f,false,true)}}}}},expandgroup:function(c){if(c>=0&&c.toString().indexOf(".")===-1){return this._setrootgroupstate(c,true)}var b=c.toString().split(".");var f=null;for(var d=0;d<b.length;d++){var c=parseInt(b[d]);if(d==0){var f=this.dataview.loadedrootgroups[c];this._setrootgroupstate(c,true)}else{var e=f.subGroups[c];if(e){f=e;this._setgroupstate(f,true,true)}}}},collapseallgroups:function(b){this._setbatchgroupstate(false,b)},expandallgroups:function(b){this._setbatchgroupstate(true,b)},isgroupexpanded:function(c){var d=this.dataview.loadedrootgroups[c];if(d==null){return null}var b=this.expandedgroups[d.uniqueid].expanded;return b},getgroup:function(e){var j=this.dataview.loadedrootgroups[e];if(j==null){return null}var f=this.expandedgroups[j.uniqueid].expanded;var g=j.group;var b=j.level;var c=new Array();this._getsubgroups(c,j);var i=this;var d={group:g,level:b,expanded:f,subgroups:c};if(j.subItems){var h=new Array();a.each(j.subItems,function(){var k=this.boundindex;h[h.length]=i.getrowdata(k)});if(h.length>0){d.subrows=h}}return d},getrootgroups:function(){var d=this.dataview.loadedrootgroups.length;var c=new Array();for(var b=0;b<d;b++){c[b]=this.getgroup(b)}return c},_getsubgroups:function(c,j){var i=this;for(obj in j.subGroups){var g=j.subGroups[obj];var e=i.expandedgroups[g.uniqueid].expanded;var f=g.group;var b=g.level;c[c.length]={group:f,level:b,expanded:e};if(g.subItems){var h=new Array();a.each(g.subItems,function(){var k=this.boundindex;h[h.length]=i.getrowdata(k)});c[c.length-1].subrows=h}if(g.subGroups){var d=new Array();i._getsubgroups(d,g)}}return c},_setbatchgroupstate:function(b,e){var c=this;for(obj in this.dataview.loadedrootgroups){c._setrootgroupstate(obj,b,false,true)}if(e==false){c._requiresupdate=true;c._renderrows(c.virtualsizeinfo);return true}var d=this.vScrollBar[0].style.visibility;this.rendergridcontent(true,false);if(d!=this.vScrollBar[0].style.visibility||this._hiddencolumns){this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}return true},_setrootgroupstate:function(d,b,f,c){if(d==undefined||d==null||d<0){return false}if(!this.groupable||this.groups.length==0){return false}var j=f!=undefined?f:true;if(d>=0&&d<this.dataview.loadedrootgroups.length){var h=this.dataview.loadedrootgroups[d];if(this.pageable){var g=new Array();for(var e=0;e<this.dataview.rows.length;e++){if(this.dataview.rows[e].group!=null&&this.dataview.rows[e].level===0){g.push(this.dataview.rows[e])}}h=g[d];if(!h){return}}return this._setgroupstate(h,b,j,c)}return false},_togglegroupstate:function(e,f){if(e==null||e==undefined){return false}var c=this.vScrollInstance.value;var d=this.expandedgroups[e.uniqueid];if(d==undefined){d=false}else{d=d.expanded}d=!d;var b=this._setgroupstate(e,d,f);if(c!==0&&this.vScrollBar.css("visibility")!=="hidden"){if(c<=this.vScrollInstance.max){this.vScrollInstance.setPosition(c)}else{this.vScrollInstance.setPosition(this.vScrollInstance.max)}}return b},_setgroupstate:function(f,b,h,c){if(f==null||f==undefined){return false}var e=false;if(this.editable&&this.editcell){this.endcelledit(this.editcell.row,this.editcell.column,false,false)}var d=this.expandedgroups[f.uniqueid];if(d==undefined){d={expanded:false};e=true}if(d.expanded!=b){e=true}if(e){this.expandedgroups[f.uniqueid]={expanded:b,group:f};this._setsubgroupsvisibility(this,f,!b,c);if(h){var g=this.vScrollBar[0].style.visibility;this.rendergridcontent(true,false);if(g!=this.vScrollBar[0].style.visibility||this._hiddencolumns){this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}}if(undefined==this.suspendgroupevents||this.suspendgroupevents==false){if(b){this._raiseEvent(4,{group:f.group,parentgroup:f.parentItem?f.parentItem.group:null,level:f.level,visibleindex:f.visibleindex})}else{this._raiseEvent(5,{group:f.group,parentgroup:f.parentItem?f.parentItem.group:null,level:f.level,visibleindex:f.visibleindex})}}return true}return false},_setgroupitemsvisibility:function(c,e,d){for(var b=0;b<e.subItems.length;b++){c._setrowvisibility(e.subItems[b].visibleindex,d,false)}},_setsubgroupsvisibility:function(c,g,f,d){if(g.parentItem!=null){if(this.hiddens[g.parentItem.visibleindex]){return}}else{if(g.parentItem==null){if(this.hiddens[g.visibleindex]){return}}}for(subGroup in g.subGroups){var e=g.subGroups[subGroup];if(!f){c._setrowvisibility(e.visibleindex,f,false)}var b=!f;if(!d){if(c.expandedgroups[e.uniqueid]==undefined){b=false}else{b=c.expandedgroups[e.uniqueid].expanded}}else{this.expandedgroups[e.uniqueid]={expanded:b,group:e}}if(e.subGroups){if(e.subGroups.length>0){c._setsubgroupsvisibility(c,e,!b||f,d)}else{if(e.subItems.length>0){c._setgroupitemsvisibility(c,e,!b||f)}}}if(f){c._setrowvisibility(e.visibleindex,f,false)}}if(g.subItems&&g.subItems.length>0){c._setgroupitemsvisibility(c,g,f)}},_handlecolumnsdragdrop:function(){var d=this;var g=-1;var c=false;if(!d.groupable){return}var f="mousemove.grouping"+this.element.id;var e="mousedown.grouping"+this.element.id;var h="mouseup.grouping"+this.element.id;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true;f=a.jqx.mobile.getTouchEventName("touchmove")+".grouping"+this.element.id;e=a.jqx.mobile.getTouchEventName("touchstart")+".grouping"+this.element.id;h=a.jqx.mobile.getTouchEventName("touchend")+".grouping"+this.element.id}this.removeHandler(a(document),f);this.addHandler(a(document),f,function(j){if(!d.showgroupsheader){return true}if(d.dragcolumn!=null){var l=parseInt(j.pageX);var u=parseInt(j.pageY);if(b){var r=d.getTouches(j);var p=r[0];l=parseInt(p.pageX);u=parseInt(p.pageY)}var n=d.host.coord();var v=parseInt(n.left);var w=parseInt(n.top);if(d.dragmousedownoffset==undefined||d.dragmousedownoffset==null){d.dragmousedownoffset={left:0,top:0}}var t=parseInt(l)-parseInt(d.dragmousedownoffset.left);var i=parseInt(u)-parseInt(d.dragmousedownoffset.top);d.dragcolumn.css({left:t+"px",top:i+"px"});c=false;if(l>=v&&l<=v+d.host.width()){if(u>=w&&u<=w+d.host.height()){c=true}}g=-1;if(c){d.dragcolumnicon.removeClass(d.toThemeProperty("jqx-grid-dragcancel-icon"));d.dragcolumnicon.addClass(d.toThemeProperty("jqx-grid-drag-icon"));var s=d.groupsheader.coord();var m=s.top+d.groupsheader.height();var q=a.data(d.dragcolumn[0],"datarecord");if(q){var k=d.groups.indexOf(q.toString())}else{var k=-1}var o=(k==-1)||(d.groups.length>1&&k>-1);if(d.dropline!=null){if(u>=s.top&&u<=m){if(o){g=d._handlegroupdroplines(l)}}else{d.dropline.fadeOut("slow")}}}else{if(d.dropline!=null){d.dropline.fadeOut("slow")}d.dragcolumnicon.removeClass(d.toThemeProperty("jqx-grid-drag-icon"));d.dragcolumnicon.addClass(d.toThemeProperty("jqx-grid-dragcancel-icon"))}if(b){j.preventDefault();j.stopPropagation();return false}}});this.removeHandler(a(document),h);this.addHandler(a(document),h,function(i){if(!d.showgroupsheader){return true}d.__drag=false;a(document.body).removeClass("jqx-disableselect");var m=parseInt(i.pageX);var s=parseInt(i.pageY);if(b){var p=d.getTouches(i);var o=p[0];m=parseInt(o.pageX);s=parseInt(o.pageY)}var n=d.host.coord();var t=parseInt(n.left);var u=parseInt(n.top);var k=d.groupsheader.height();if(d.showtoolbar){u+=d.toolbarheight}d.dragstarted=false;d.dragmousedown=null;if(d.dragcolumn!=null){var l=a.data(d.dragcolumn[0],"datarecord");d.dragcolumn.remove();d.dragcolumn=null;if(l!=null){if(!d.getcolumn(l).groupable){if(d.dropline!=null){d.dropline.remove();d.dropline=null}return}if(c){if(g!=-1){var q=g.index;var r=d.groups[q];var j=d._getGroupIndexByDataField(l);if(j!=q){if(j!=undefined&&j>=0){d.groups.splice(j,1)}if(g.position=="before"){if(!d.rtl){d._insertbeforegroup(r,l)}else{d._insertaftergroup(r,l)}}else{if(!d.rtl){d._insertaftergroup(r,l)}else{d._insertbeforegroup(r,l)}}}}else{if(d.groups.length==0){if(s>u&&s<=u+k){d.addgroup(l)}}else{if(s>u+k){var j=d._getGroupIndexByDataField(l);d.removegroupat(j)}}}}if(d.dropline!=null){d.dropline.remove();d.dropline=null}}}})},_getGroupIndexByDataField:function(b){for(var c=0;c<this.groups.length;c++){if(this.groups[c]==b){return c}}return -1},_isColumnInGroups:function(c){for(var b=0;b<this.groups.length;b++){if(this.groups[b]==c){return true}}return false},_handlegroupdroplines:function(d){var b=this;var c=-1;a.each(b.groupheadersbounds,function(e){if(d<=this.left+this.width/2){var f=this.left-3;if(e>0){f=this.left-1-b.groupindentwidth/6}b.dropline.css("left",f);b.dropline.css("top",this.top);b.dropline.height(this.height);b.dropline.fadeIn("slow");c={index:e,position:"before"};if(b.rtl){c={index:b.groupheadersbounds.length-1-e,position:"before"}}return false}else{if(d>=this.left+this.width/2){b.dropline.css("left",1+this.left+this.width);b.dropline.css("top",this.top);b.dropline.height(this.height);b.dropline.fadeIn("slow");c={index:e,position:"after"};if(b.rtl){c={index:b.groupheadersbounds.length-1-e,position:"after"}}}}});return c},_handlegroupstocolumnsdragdrop:function(c,e){this.dragmousedown=null;this.dragmousedownoffset=null;this.dragstarted=false;this.dragcolumn=null;var f=this;var d;var h="mousedown";var g="mousemove";var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true;h=a.jqx.mobile.getTouchEventName("touchstart");g=a.jqx.mobile.getTouchEventName("touchmove")}this.addHandler(e,"dragstart",function(i){return false});this.addHandler(e,h,function(i){if(!f.showgroupsheader){return true}var l=i.pageX;var k=i.pageY;f.__drag=true;f.dragmousedown={left:l,top:k};if(b){var j=f.getTouches(i);var n=j[0];l=n.pageX;k=n.pageY;f.dragmousedown={left:l,top:k};if(i.preventDefault){i.preventDefault()}}var m=a(i.target).coord();f.dragmousedownoffset={left:parseInt(l)-parseInt(m.left),top:parseInt(k-m.top)}});this.addHandler(e,g,function(i){if(!f.showgroupsheader){return true}if(f.dragmousedown){d={left:i.pageX,top:i.pageY};if(b){var k=f.getTouches(i);var m=k[0];d={left:m.pageX,top:m.pageY}}if(!f.dragstarted&&f.dragcolumn==null){var j=Math.abs(d.left-f.dragmousedown.left);var l=Math.abs(d.top-f.dragmousedown.top);if(j>3||l>3){f._createdragcolumn(e,d,true);a(document.body).addClass("jqx-disableselect");a.data(f.dragcolumn[0],"datarecord",c);if(i.preventDefault){i.preventDefault()}}}}})},_createdragcolumn:function(c,e,g){var h=this;var f=e;h.dragcolumn=a("<div></div>");var j=c.clone();h.dragcolumn.css("z-index",999999);j.css("border-width","1px");j.css("opacity","0.4");var i=a(j.find("."+h.toThemeProperty("jqx-grid-column-menubutton")));if(i.length>0){i.css("display","none")}var b=a(j.find(".jqx-icon-close"));if(b.length>0){b.css("display","none")}h.dragcolumnicon=a('<div style="z-index: 9999; position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px;"></div>');h.dragcolumnicon.addClass(h.toThemeProperty("jqx-grid-drag-icon"));h.dragcolumn.css("float","left");h.dragcolumn.css("position","absolute");var d=h.host.coord();j.width(c.width()+16);h.dragcolumn.append(j);h.dragcolumn.height(c.height());h.dragcolumn.width(j.width());h.dragcolumn.append(h.dragcolumnicon);a(document.body).append(h.dragcolumn);j.css("margin-left",0);j.css("left",0);j.css("top",0);h.dragcolumn.css("left",f.left+h.dragmousedown.left);h.dragcolumn.css("top",f.top+h.dragmousedown.top);if(g!=undefined&&g){h.dropline=a('<div style="display: none; position: absolute;"></div>');h.dropline.width(2);h.dropline.addClass(h.toThemeProperty("jqx-grid-group-drag-line"));a(document.body).append(h.dropline)}},iscolumngroupable:function(b){return this._getcolumnproperty(b,"groupable")},_handlecolumnstogroupsdragdrop:function(c,f){this.dragmousedown=null;this.dragmousedownoffset=null;this.dragstarted=false;this.dragcolumn=null;var g=this;var e;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true}var d="mousedown.drag";var e="mousemove.drag";if(b){d=a.jqx.mobile.getTouchEventName("touchstart")+".drag";e=a.jqx.mobile.getTouchEventName("touchmove")+".drag"}else{this.addHandler(f,"dragstart",function(h){return false})}this.addHandler(f,d,function(j){if(!g.showgroupsheader){return true}g.__drag=true;if(g._isColumnInGroups(c.displayfield)){if(f.css("cursor")!="col-resize"){return true}else{return true}}if(false==c.groupable){return true}var i=j.pageX;var h=j.pageY;if(b){var k=g.getTouches(j);var m=k[0];i=m.pageX;h=m.pageY}g.dragmousedown={left:i,top:h};if(b){if(j.preventDefault){j.preventDefault()}}var l=a(j.target).coord();g.dragmousedownoffset={left:parseInt(i)-parseInt(l.left),top:parseInt(h-l.top)}});this.addHandler(f,e,function(j){if(!g.showgroupsheader){return true}if(g._isColumnInGroups(c.displayfield)){if(f.css("cursor")!="col-resize"){return true}else{return true}}if(g.dragmousedown){var i=j.pageX;var h=j.pageY;if(b){var l=g.getTouches(j);var n=l[0];i=n.pageX;h=n.pageY}e={left:i,top:h};if(!g.dragstarted&&g.dragcolumn==null){var k=Math.abs(e.left-g.dragmousedown.left);var m=Math.abs(e.top-g.dragmousedown.top);if(k>3||m>3){g._createdragcolumn(f,e,true);a.data(g.dragcolumn[0],"datarecord",c.displayfield);if(j.preventDefault){j.preventDefault()}}}}})},_rendergroupcolumn:function(g,h){var e=a('<div style="float: left; position: relative;"></div>');if(this.rtl){e.css("float","right")}if(this.groupcolumnrenderer!=null){e[0].innerHTML=this.groupcolumnrenderer(g);e.addClass(this.toThemeProperty("jqx-grid-group-column"));e.addClass(this.toThemeProperty("jqx-fill-state-normal"))}if(this.closeablegroups){if(e[0].innerHTML==""){e[0].innerHTML='<a style="float: left;" href="#">'+g+"</a>"}if(this.rtl){e[0].innerHTML='<a style="float: right;" href="#">'+g+"</a>"}var d=!this.rtl?"right":"left";var c='<div style="float: '+d+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){c='<div style="float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>'}if(this.rtl){var c='<div style="float: '+d+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){c='<div style="float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>'}}e[0].innerHTML+=c}else{if(e[0].innerHTML==""){e[0].innerHTML='<a href="#">'+g+"</a>"}}if(this.sortable){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>');if(this.closeablegroups){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -32px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -32px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>')}if(this.rtl){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 0px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 0px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>');if(this.closeablegroups){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>')}}f.css("display","none");b.css("display","none");if(a.jqx.browser.msie&&a.jqx.browser.version<8){f.css("float","left");b.css("float","left")}e.append(f);e.append(b);a.data(document.body,"groupsortelements"+h,{sortasc:f,sortdesc:b})}e.addClass(this.toThemeProperty("jqx-fill-state-normal"));e.addClass(this.toThemeProperty("jqx-grid-group-column"));return e},_rendergroup:function(o,w,b,u,j,A,t){var F=w;var c=w.cells[b.level];if(this.rtl){c=w.cells[w.cells.length-1-b.level]}var E=this._findgroupstate(b.uniqueid);if(b.bounddata.subGroups.length>0||b.bounddata.subItems.length>0){var i=this.rtl?"-rtl":"";var B=this.toThemeProperty("jqx-icon-arrow-right");if(i){B=this.toThemeProperty("jqx-icon-arrow-left")}if(E){c.className+=" "+this.toThemeProperty("jqx-grid-group-expand"+i)+" "+this.toThemeProperty("jqx-icon-arrow-down")}else{c.className+=" "+this.toThemeProperty("jqx-grid-group-collapse"+i)+" "+B}}var s=this._getColumnText(this.groups[b.level]).label;var d=this.groupindentwidth;var q=this.rowdetails&&this.showrowdetailscolumn?(1+o)*d:(o)*d;var x=t-q;var g=b.level+1;if(this.rtl){g=0}var l=F.cells[g];var z=2;while(l!=undefined&&l.style.display=="none"&&z<F.cells.length-1){l=F.cells[g+z-1];z++}var f=a(l);if(!l){return}l.style.width=parseInt(x)+"px";if(l.className.indexOf("jqx-grid-cell-filter")!=-1){f.removeClass(this.toThemeProperty("jqx-grid-cell-filter"))}if(l.className.indexOf("jqx-grid-cell-sort")!=-1){f.removeClass(this.toThemeProperty("jqx-grid-cell-sort"))}if(l.className.indexOf("jqx-grid-cell-pinned")!=-1){f.removeClass(this.toThemeProperty("jqx-grid-cell-pinned"))}if(this.groupsrenderer!=null){var h={group:b.group,level:b.level,parent:b.bounddata.parentItem,subGroups:b.bounddata.subGroups,subItems:b.bounddata.subItems,groupcolumn:this._getColumnText(this.groups[b.level]).column};var p=this.groupsrenderer(s+": "+b.group,b.group,E,h);if(p){l.innerHTML=p}else{var k=b.bounddata.subItems.length>0?b.bounddata.subItems.length:b.bounddata.subGroups.length;l.innerHTML='<div class="'+this.toThemeProperty("jqx-grid-groups-row")+'" style="position: absolute;"><span>'+s+': </span><span class="'+this.toThemeProperty("jqx-grid-groups-row-details")+'">'+b.group+" ("+k+")</span></div>"}}else{var e=this._getcolumnbydatafield(this.groups[b.level]);var y=b.group;if(e!=null){if(e.cellsformat){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(y)){y=a.jqx.dataFormat.formatdate(y,e.cellsformat,this.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(y)){y=a.jqx.dataFormat.formatnumber(y,e.cellsformat,this.gridlocalization)}}}}var k=b.bounddata.subItems.length>0?b.bounddata.subItems.length:b.bounddata.subGroups.length;l.innerHTML='<div class="'+this.toThemeProperty("jqx-grid-groups-row")+'" style="position: absolute;"><span>'+s+': </span><span class="'+this.toThemeProperty("jqx-grid-groups-row-details")+'">'+y+" ("+k+")</span></div>"}else{throw new Error("jqxGrid: Unable to find '"+this.groups[b.level]+"' group in the Grid's columns collection.")}}if(this.rtl){if(!e){e=this._getcolumnbydatafield(this.groups[b.level])}var r=this.hScrollBar.css("visibility")=="hidden"?0:this.hScrollInstance.max-this.hScrollInstance.value;var C=this.vScrollBar.css("visibility")=="hidden"?0:this.scrollbarsize+6;var q=this.rowdetails&&this.showrowdetailscolumn?(2+b.level)*d:(1+b.level)*d;l.style.width=t+parseInt(r)-q-C+"px";f.addClass(this.toThemeProperty("jqx-rtl"));var v=a(w.cells[w.cells.length-1]).css("z-index");f.css("z-index",v);var D=f.find("div");var x=D.width();D.css("left","100%");var n=this.columns.records[w.cells.length-2-b.level]!=null?this.columns.records[w.cells.length-2-b.level].pinned:false;if(this.table.width()<t){t=this.table.width();if(this.vScrollBar.css("visibility")!="hidden"){t+=this.vScrollBar.outerWidth()}}if(e.pinned||n){if(this.rowdetails&&this.showrowdetailscolumn){t+=30}D.css("margin-left",-x);l.style.width=t+r-q-C+"px"}else{var r=this.hScrollBar.css("visibility")=="hidden"?0:this.hScrollInstance.max;l.style.width=t+r-q-C+"px";var x=D.width();D.css("margin-left",-x)}}}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{_initpager:function(){var r=this.that;var j=this.gridlocalization.pagergotopagestring;var s=this.gridlocalization.pagerrangestring;var l=this.gridlocalization.pagershowrowsstring;var m=(this.pagerheight-17)/2;this.pagerdiv=this.pagerdiv||a('<div style="width: 100%; height: 100%; position: relative;"></div>');if(!this.pageable){this.pagerdiv.remove();this.vScrollBar.jqxScrollBar({thumbSize:0});return}if(!this.pagerrenderer){this.pagerdiv.css("top",m);this.pager.append(this.pagerdiv);this.pagergotoinput=this.pagergotoinput||a('<div style="margin-right: 7px; width: 27px; height: 17px; float: right;"><input style="margin-top: 0px; text-align: right; width: 27px;" type="text"/></div>');this.pagergoto=this.pagergoto||a('<div style="float: right; margin-right: 7px;"></div>');this.pagerrightbutton=this.pagerrightbutton||a('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagerleftbutton=this.pagerleftbutton||a('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagerdetails=this.pagerdetails||a('<div style="margin-right: 7px; float: right;"></div>');this.pagershowrows=this.pagershowrows||a('<div style="margin-right: 7px; float: right;"></div>');this.pagerbuttons=a('<div style="margin-right: 3px; float: right;"></div>');if(this.pagershowrowscombo&&this.pagershowrowscombo.jqxDropDownList){this.pagershowrowscombo.remove();this.pagershowrowscombo=null}this.pagergotoinput.attr("disabled",this.disabled);this.pagerfirstbutton=a('<div type="button" style="padding: 0px; margin-top: 0px; margin-left: 3px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagerlastbutton=a('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagershowrowscombo=this.pagershowrowscombo||a('<div id="gridpagerlist" style="margin-top: 0px; margin-right: 7px; float: right;"></div>');this.pagerdiv.children().remove();this.pagershowrowscombo[0].id="gridpagerlist"+this.element.id;this.removeHandler(this.pagerrightbutton,"mousedown");this.removeHandler(this.pagerrightbutton,"mouseup");this.removeHandler(this.pagerrightbutton,"click");this.removeHandler(this.pagerleftbutton,"mousedown");this.removeHandler(this.pagerleftbutton,"mouseup");this.removeHandler(this.pagerleftbutton,"click");this.removeHandler(this.pagerfirstbutton,"mousedown");this.removeHandler(this.pagerfirstbutton,"mouseup");this.removeHandler(this.pagerfirstbutton,"click");this.removeHandler(this.pagerlastbutton,"mousedown");this.removeHandler(this.pagerlastbutton,"mouseup");this.removeHandler(this.pagerlastbutton,"click");this.pagerleftbutton.attr("title",this.gridlocalization.pagerpreviousbuttonstring);this.pagerrightbutton.attr("title",this.gridlocalization.pagernextbuttonstring);if(this.pagermode=="simple"){if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.pagerbuttons.css("overflow","visible");this.pagerbuttons.css("padding","3px")}this.pagerfirstbutton.attr("title",this.gridlocalization.pagerfirstbuttonstring);this.pagerlastbutton.attr("title",this.gridlocalization.pagerlastbuttonstring);var n=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");n.addClass(this.toThemeProperty("jqx-icon-arrow-first"));this.pagerfirstbutton.wrapInner(n);var g=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");g.addClass(this.toThemeProperty("jqx-icon-arrow-last"));this.pagerlastbutton.wrapInner(g);if(!this.rtl){this.pagerdiv.append(this.pagerfirstbutton);this.pagerdiv.append(this.pagerleftbutton);this.pagerdiv.append(this.pagerbuttons);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerlastbutton)}else{this.pagerdiv.append(this.pagerlastbutton);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerbuttons);this.pagerdiv.append(this.pagerleftbutton);this.pagerdiv.append(this.pagerfirstbutton)}this.pagerlastbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerfirstbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});var t=!this.rtl?"left":"right";this.pagerbuttons.css("float",t);this.pagerlastbutton.css("float",t);this.pagerfirstbutton.css("float",t);this.pagerrightbutton.css("float",t);this.pagerleftbutton.css("float",t);this.pagerdetails.css("float",this.rtl?"left":"right");if(this.rtl){this.pagerdetails.css("margin-left","7px");this.pagerdetails.css("margin-right","0px")}else{this.pagerdetails.css("margin-left","0px");this.pagerdetails.css("margin-right","7px")}this.pagergotoinput.hide();this.pagershowrowscombo.hide();this.pagergoto.hide();this.pagershowrows.hide()}else{this.pagergotoinput.show();this.pagershowrowscombo.show();this.pagergoto.show();this.pagershowrows.show();if(!this.rtl){this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerleftbutton)}}this.pagerrightbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerleftbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerleftbutton.find(".jqx-icon-arrow-left").remove();this.pagerrightbutton.find(".jqx-icon-arrow-right").remove();var c=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");c.addClass(this.toThemeProperty("jqx-icon-arrow-left"));this.pagerleftbutton.wrapInner(c);var d=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");d.addClass(this.toThemeProperty("jqx-icon-arrow-right"));this.pagerrightbutton.wrapInner(d);this.pagerdiv.append(this.pagerdetails);if(this.pagermode!="simple"){if(!this.rtl){this.pagerdiv.append(this.pagershowrowscombo);this.pagerdiv.append(this.pagershowrows);this.pagerdiv.append(this.pagergotoinput);this.pagerdiv.append(this.pagergoto)}else{this.pagerdiv.append(this.pagergoto);this.pagerdiv.append(this.pagergotoinput);this.pagerdiv.append(this.pagershowrows);this.pagerdiv.append(this.pagershowrowscombo);this.pagerdiv.append(this.pagerdetails);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerleftbutton)}}var o=this.pagesizeoptions;if(!this.pagershowrowscombo.jqxDropDownList){throw new Error("jqxGrid: jqxdropdownlist.js is not loaded.");return}this.pagershowrowscombo.jqxDropDownList({rtl:this.rtl,disabled:this.disabled,source:o,enableBrowserBoundsDetection:true,keyboardSelection:false,autoDropDownHeight:true,width:"auto",height:16,theme:this.theme});var q=0;for(var p=0;p<o.length;p++){if(this.pagesize>=o[p]){q=p}}this.pagershowrows[0].innerHTML=l;this.pagergoto[0].innerHTML=j;this.updatepagerdetails();this.pagershowrowscombo.jqxDropDownList({selectedIndex:q});this.pagerpageinput=this.pagergotoinput.find("input");this.pagerpageinput.addClass(this.toThemeProperty("jqx-input"));this.pagerpageinput.addClass(this.toThemeProperty("jqx-widget-content"));if(this.rtl){this.pagerpageinput.css("direction","rtl")}var r=this.that;this.removeHandler(this.pagershowrowscombo,"select");this.addHandler(this.pagershowrowscombo,"select",function(w){if(w.args){if(r.vScrollInstance){r.vScrollInstance.setPosition(0)}if(r.editcell!=null&&r.endcelledit){r.endcelledit(r.editcell.row,r.editcell.column,true,false)}var u=w.args.index;var x=r.dataview.pagenum*r.dataview.pagesize;var v=o[u];var y=r.pagesize;r.pagesize=parseInt(v);if(isNaN(r.pagesize)){r.pagesize=10}if(v>=100){r.pagershowrowscombo.jqxDropDownList({width:"auto"})}else{r.pagershowrowscombo.jqxDropDownList({width:44})}r.dataview.pagesize=r.pagesize;var i=Math.floor(x/r.dataview.pagesize);r.prerenderrequired=true;r._requiresupdate=true;r._raiseEvent(10,{pagenum:i,oldpagesize:y,pagesize:r.dataview.pagesize});r.gotopage(i);if(r.autoheight&&r._updatesizeonwindowresize){r._updatesize(true);setTimeout(function(){r._updatesize(true)},500)}}});var k=this.pagergotoinput.find("input");k.addClass(this.toThemeProperty("jqx-grid-pager-input"));k.addClass(this.toThemeProperty("jqx-rc-all"));this.removeHandler(k,"keydown");this.removeHandler(k,"change");this.addHandler(k,"keydown",function(i){if(i.keyCode>=65&&i.keyCode<=90){return false}if(i.keyCode=="13"){var u=k.val();u=parseInt(u);if(!isNaN(u)){r.gotopage(u-1)}return false}});this.addHandler(k,"change",function(){var i=k.val();i=parseInt(i);if(!isNaN(i)){r.gotopage(i-1)}});this.addHandler(this.pagerrightbutton,"mouseenter",function(){d.addClass(r.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseenter",function(){c.addClass(r.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mouseleave",function(){d.removeClass(r.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseleave",function(){c.removeClass(r.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mousedown",function(){d.addClass(r.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerrightbutton,"mouseup",function(){d.removeClass(r.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerleftbutton,"mousedown",function(){c.addClass(r.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(this.pagerleftbutton,"mouseup",function(){c.removeClass(r.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(a(document),"mouseup.pagerbuttons"+this.element.id,function(){d.removeClass(r.toThemeProperty("jqx-icon-arrow-right-selected"));c.removeClass(r.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(this.pagerrightbutton,"click",function(){if(!r.pagerrightbutton.jqxButton("disabled")){if(!r.rtl){r.gotonextpage()}else{r.gotoprevpage()}}});this.addHandler(this.pagerleftbutton,"click",function(){if(!r.pagerleftbutton.jqxButton("disabled")){if(!r.rtl){r.gotoprevpage()}else{r.gotonextpage()}}});var f=this;if(this.pagermode==="simple"){var e=this.pagerfirstbutton;var h=this.pagerlastbutton;this.addHandler(h,"mouseenter",function(){g.addClass(f.toThemeProperty("jqx-icon-arrow-last-hover"))});this.addHandler(e,"mouseenter",function(){n.addClass(f.toThemeProperty("jqx-icon-arrow-first-hover"))});this.addHandler(h,"mouseleave",function(){g.removeClass(f.toThemeProperty("jqx-icon-arrow-last-hover"))});this.addHandler(e,"mouseleave",function(){n.removeClass(f.toThemeProperty("jqx-icon-arrow-first-hover"))});this.addHandler(h,"mousedown",function(){g.addClass(f.toThemeProperty("jqx-icon-arrow-last-selected"))});this.addHandler(e,"mousedown",function(){n.addClass(f.toThemeProperty("jqx-icon-arrow-first-selected"))});this.addHandler(h,"mouseup",function(){g.removeClass(f.toThemeProperty("jqx-icon-arrow-last-selected"))});this.addHandler(e,"mouseup",function(){n.removeClass(f.toThemeProperty("jqx-icon-arrow-first-selected"))});this.addHandler(a(document),"mouseup.pagerbuttons"+name+this.element.id,function(){d.removeClass(f.toThemeProperty("jqx-icon-arrow-right-selected"));c.removeClass(f.toThemeProperty("jqx-icon-arrow-left-selected"));if(g){g.removeClass(f.toThemeProperty("jqx-icon-arrow-last-selected"));n.removeClass(f.toThemeProperty("jqx-icon-arrow-first-selected"))}});this.addHandler(e,"click",function(){if(!e.jqxButton("disabled")){if(!f.rtl){f.gotopage(0)}else{var u=f.dataview.totalrecords;var i=Math.ceil(u/f.pagesize);f.gotopage(i-1)}}});this.addHandler(h,"click",function(){if(!h.jqxButton("disabled")){if(!f.rtl){var u=f.dataview.totalrecords;var i=Math.ceil(u/f.pagesize);f.gotopage(i-1)}else{f.gotopage(0)}}})}}else{this.pagerdiv.children().remove();var b=this.pagerrenderer();if(b!=null){this.pagerdiv.append(a(b))}this.pager.append(this.pagerdiv)}this.vScrollBar.jqxScrollBar("refresh");this._arrange()},_updatepagertheme:function(){if(this.pagershowrowscombo==null){return}this.pagershowrowscombo.jqxDropDownList({theme:this.theme});this.pagerrightbutton.jqxButton({theme:this.theme});this.pagerleftbutton.jqxButton({theme:this.theme});this.pagerpageinput.removeClass();var c=this.pagergotoinput.find("input");c.removeClass();c.addClass(this.toThemeProperty("jqx-grid-pager-input"));c.addClass(this.toThemeProperty("jqx-rc-all"));this.pagerpageinput.addClass(this.toThemeProperty("jqx-input"));this.pagerpageinput.addClass(this.toThemeProperty("jqx-widget-content"));this.pagerleftbutton.find(".jqx-icon-arrow-left").remove();this.pagerrightbutton.find(".jqx-icon-arrow-right").remove();var d=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");d.addClass(this.toThemeProperty("jqx-icon-arrow-left"));this.pagerleftbutton.wrapInner(d);var e=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");e.addClass(this.toThemeProperty("jqx-icon-arrow-right"));this.pagerrightbutton.wrapInner(e);if(this.pagermode=="simple"){if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.pagerbuttons.css("overflow","visible");this.pagerbuttons.css("padding","3px")}this.pagerfirstbutton.attr("title",this.gridlocalization.pagerfirstbuttonstring);this.pagerlastbutton.attr("title",this.gridlocalization.pagerlastbuttonstring);var h=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");h.addClass(this.toThemeProperty("jqx-icon-arrow-first"));this.pagerfirstbutton.wrapInner(h);var g=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");g.addClass(this.toThemeProperty("jqx-icon-arrow-last"));this.pagerlastbutton.wrapInner(g);this.pagerdiv.append(this.pagerfirstbutton);this.pagerdiv.append(this.pagerleftbutton);this.pagerdiv.append(this.pagerbuttons);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerlastbutton);this.pagerlastbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerfirstbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerbuttons.css("float","left");this.pagerlastbutton.css("float","left");this.pagerfirstbutton.css("float","left");this.pagerrightbutton.css("float","left");this.pagerleftbutton.css("float","left");this.pagergotoinput.hide();this.pagershowrowscombo.hide();this.pagergoto.hide();this.pagershowrows.hide()}else{this.pagergotoinput.show();this.pagershowrowscombo.show();this.pagergoto.show();this.pagershowrows.show()}var b=function(j,i){j.removeHandler(i,"mouseenter");j.removeHandler(i,"mouseleave");j.removeHandler(i,"mousedown");j.removeHandler(i,"mouseup")};b(this,this.pagerrightbutton);b(this,this.pagerleftbutton);var f=this.that;this.addHandler(this.pagerrightbutton,"mouseenter",function(){e.addClass(f.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseenter",function(){d.addClass(f.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mouseleave",function(){e.removeClass(f.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseleave",function(){d.removeClass(f.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mousedown",function(){e.addClass(f.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerrightbutton,"mouseup",function(){e.removeClass(f.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerleftbutton,"mousedown",function(){d.addClass(f.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(this.pagerleftbutton,"mouseup",function(){d.removeClass(f.toThemeProperty("jqx-icon-arrow-left-selected"))})},gotopage:function(d){if(d==null||d==undefined){d=0}if(d==-1){d=0}if(d<0){return}var c=this.dataview.totalrecords;if(this.summaryrows){c+=this.summaryrows.length}var e=this.pagenum;this._raiseEvent(25,{oldpagenum:this.dataview.pagenum,pagenum:d,pagesize:this.dataview.pagesize});var b=Math.ceil(c/this.pagesize);if(d>=b){if(this.dataview.totalrecords==0){this.dataview.pagenum=0;this.updatepagerdetails()}if(d>0){d=b-1}if(d<0){d=0}}if(this.dataview.pagenum!=d||this._requiresupdate){if(this.pageable){if(this.source.pager){this.source.pager(d,this.dataview.pagesize,this.dataview.pagenum)}this.dataview.pagenum=d;if(this.virtualmode){this.hiddens=new Array();this.expandedgroups=new Array();if(this.rendergridrows){var h=d*this.dataview.pagesize;var g=h+this.dataview.pagesize;if(h!=null&&g!=null){if(this.pagerrightbutton){this.pagerrightbutton.jqxButton({disabled:true});this.pagerleftbutton.jqxButton({disabled:true});this.pagershowrowscombo.jqxDropDownList({disabled:true})}if(this.pagerfirstbutton){this.pagerfirstbutton.jqxButton({disabled:true});this.pagerlastbutton.jqxButton({disabled:true})}this.updatebounddata("pagechanged");this._raiseEvent(9,{pagenum:d,oldpagenum:e,pagesize:this.dataview.pagesize});this.updatepagerdetails();if(this.autosavestate){if(this.savestate){this.savestate()}}return}}}else{this.dataview.updateview()}this._loadrows();this._updatepageviews();this.tableheight=null;this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);this.updatepagerdetails();if(this.autoheight||this.autorowheight){var f=this.host.height()-this._gettableheight();height=f+this._pageviews[0].height;if(height!=this.host.height()){this._arrange();this._updatepageviews();if(this.autorowheight){this._renderrows(this.virtualsizeinfo)}}}if(this.editcell!=null&&this.endcelledit){this.endcelledit(this.editcell.row,this.editcell.column,false,false)}this.focus();this._raiseEvent(9,{pagenum:d,oldpagenum:e,pagesize:this.dataview.pagesize});if(this.autosavestate){if(this.savestate){this.savestate()}}}}},gotoprevpage:function(){if(this.dataview.pagenum>0){this.gotopage(this.dataview.pagenum-1)}else{if(this.pagermode!="simple"){var c=this.dataview.totalrecords;if(this.summaryrows){c+=this.summaryrows.length}var b=Math.ceil(c/this.pagesize);this.gotopage(b-1)}}},gotonextpage:function(){var c=this.dataview.totalrecords;if(this.summaryrows){c+=this.summaryrows.length}var b=Math.ceil(c/this.pagesize);if(this.dataview.pagenum<b-1){this.gotopage(this.dataview.pagenum+1)}else{if(this.pagermode!="simple"){this.gotopage(0)}}},updatepagerdetails:function(){if(this.pagerdetails!=null&&this.pagerdetails.length>0){var n=this.dataview.pagenum*this.pagesize;var d=(this.dataview.pagenum+1)*this.pagesize;if(d>=this.dataview.totalrecords){d=this.dataview.totalrecords}var q=this.dataview.totalrecords;if(this.summaryrows){q+=this.summaryrows.length;if((this.dataview.pagenum+1)*this.pagesize>this.dataview.totalrecords){d=q}}n++;var g=Math.ceil(q/this.dataview.pagesize);if(g>=1){g--}g++;if(this.pagermode!=="simple"){var o=this.pagergotoinput.find("input");o.val(this.dataview.pagenum+1)}else{var b="";var f=this.pagerbuttonscount;if(f==0||!f){f=5}var h=0;if(this.rtl){h=f-1}while((this.rtl&&h>=0)||(!this.rtl&&h<f)){var m=1+h;var k=this.dataview.pagenum/f;var e=Math.floor(k);m+=e*f;var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(m>g){break}if(!this.rtl){if(h==0&&m>f){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(-1+m)+"'>...</a>"}}if(this.dataview.pagenum===m-1){l+=" "+this.toTP("jqx-fill-state-pressed")}if(!this.rtl){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+m+"'>"+m+"</a>";if(h===f-1){var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(g>=1+m){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(1+m)+"'>...</a>"}}}else{if(h===f-1){var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(g>=1+m){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(1+m)+"'>...</a>"}}if(this.dataview.pagenum===m-1){l+=" "+this.toTP("jqx-fill-state-pressed")}b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+m+"'>"+m+"</a>"}if(this.rtl){var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(h==0&&m>f){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(-1+m)+"'>...</a>"}}if(!this.rtl){h++}else{h--}}var p=this["pagerbuttons"].find("a");this.removeHandler(p,"click");this.removeHandler(p,"mouseenter");this.removeHandler(p,"mouseleave");this["pagerbuttons"][0].innerHTML=b;var j=this;var c=function(){j.addHandler(p,"click",function(i){var r=a(i.target).attr("data-page");j.gotopage(parseInt(r)-1);return false});j.addHandler(p,"mouseenter",function(i){a(i.target).addClass(j.toTP("jqx-fill-state-hover"))});j.addHandler(p,"mouseleave",function(i){a(i.target).removeClass(j.toTP("jqx-fill-state-hover"))})};var p=this["pagerbuttons"].find("a");c(p)}this.pagergotoinput.attr("title","1 - "+g);if(d==0&&d<n){n=0}if(!this.rtl){this.pagerdetails[0].innerHTML=n+"-"+d+this.gridlocalization.pagerrangestring+q}else{this.pagerdetails[0].innerHTML=q+this.gridlocalization.pagerrangestring+d+"-"+n}if(n>d){this.gotoprevpage()}}},_updatepagedview:function(e,g,b){var j=this.that;if(this.dataview.rows.length!=this.dataview.pagesize){this.dataview.updateview()}var k=this.dataview.rows.length;for(var d=0;d<k;d++){var f=this.dataview.rows[d].visibleindex;var h={index:f,height:this.heights[f],hidden:this.hiddens[f],details:this.details[f]};if(this.heights[f]==undefined){this.heights[f]=this.rowsheight;h.height=this.rowsheight}if(this.hiddens[f]==undefined){this.hiddens[f]=false;h.hidden=false}if(this.details[f]==undefined){this.details[f]=null}if(h.height!=j.rowsheight){g-=j.rowsheight;g+=h.height}if(h.hidden){g-=h.height}else{b+=h.height;var c=0;if(this.rowdetails){if(h.details&&h.details.rowdetails&&!h.details.rowdetailshidden){c=h.details.rowdetailsheight;b+=c;g+=c}}}}this._pageviews[0]={top:0,height:b};return g}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{_handledblclick:function(t,n){if(t.target==null){return}if(n.disabled){return}if(a(t.target).ischildof(this.columnsheader)){return}var w;if(t.which){w=(t.which==3)}else{if(t.button){w=(t.button==2)}}if(w){return}var B;if(t.which){B=(t.which==2)}else{if(t.button){B=(t.button==1)}}if(B){return}var v=this.showheader?this.columnsheader.height()+2:0;var o=this._groupsheader()?this.groupsheader.height():0;var A=this.showtoolbar?this.toolbarheight:0;o+=A;var e=this.host.offset();var m=t.pageX-e.left;var l=t.pageY-v-e.top-o;var b=this._hittestrow(m,l);if(!b){return}var h=b.row;var j=b.index;var q=t.target.className;var p=this.table[0].rows[j];if(p==null){return}n.mousecaptured=true;n.mousecaptureposition={left:t.pageX,top:t.pageY-o};var r=this.hScrollInstance;var s=r.value;var d=0;var k=this.groupable?this.groups.length:0;for(var u=0;u<p.cells.length;u++){var f=parseInt(a(this.columnsrow[0].cells[u]).css("left"));var g=f-s;if(n.columns.records[u].pinned){g=f}var c=this._getcolumnat(u);if(c!=null&&c.hidden){continue}var z=g+a(this.columnsrow[0].cells[u]).width();if(z>=m&&m>=g){d=u;break}}if(h!=null){var c=this._getcolumnat(d);if(!(q.indexOf("jqx-grid-group-expand")!=-1||q.indexOf("jqx-grid-group-collapse")!=-1)){if(h.boundindex!=-1){n.begincelledit(n.getboundindex(h),c.datafield,c.defaulteditorvalue)}}}},_getpreveditablecolumn:function(c){var b=this;while(c>0){c--;var d=b.getcolumnat(c);if(!d){return null}if(!d.editable){continue}if(!d.hidden){return d}}return null},_getnexteditablecolumn:function(c){var b=this;while(c<this.columns.records.length){c++;var d=b.getcolumnat(c);if(!d){return null}if(!d.editable){continue}if(!d.hidden){return d}}return null},_handleeditkeydown:function(E,y){if(y.handlekeyboardnavigation){var q=y.handlekeyboardnavigation(E);if(q==true){return true}}var J=E.charCode?E.charCode:E.keyCode?E.keyCode:0;if(y.showfilterrow&&y.filterable){if(this.filterrow){if(a(E.target).ischildof(this.filterrow)){return true}}}if(y.pageable){if(a(E.target).ischildof(this.pager)){return true}}if(this.showtoolbar){if(a(E.target).ischildof(this.toolbar)){return true}}if(this.showeverpresentrow){if(this.addnewrowtop){if(a(E.target).ischildof(this.addnewrowtop)){return true}}if(this.addnewrowbottom){if(a(E.target).ischildof(this.addnewrowbottom)){return true}}}if(this.showstatusbar){if(a(E.target).ischildof(this.statusbar)){return true}}if(this.rowdetails){if(a(E.target).ischildof(this.content.find("[role='rowgroup']"))){return true}}if(this.editcell){if(this.editmode==="selectedrow"){if(J===13){this.endrowedit(this.editcell.row,false)}else{if(J===27){this.endrowedit(this.editcell.row,true)}}if(J===9){return false}return true}if(this.editcell.columntype==null||this.editcell.columntype=="textbox"||this.editcell.columntype=="numberinput"||this.editcell.columntype=="combobox"||this.editcell.columntype=="datetimeinput"){if(J>=33&&J<=40&&y.selectionmode=="multiplecellsadvanced"){var i=this.editcell.columntype=="textbox"||this.editcell.columntype==null?this.editcell.editor:this.editcell.editor.find("input");var K=y._selection(i);var z=i.val().length;if(K.length>0&&this.editcell.columntype!="datetimeinput"){y._cancelkeydown=true}if(K.start>0&&J==37){y._cancelkeydown=true}if(K.start<z&&J==39&&this.editcell.columntype!="datetimeinput"){y._cancelkeydown=true}if(this.editcell.columntype=="datetimeinput"&&J==39){if(K.start+K.length<z){y._cancelkeydown=true}}}}else{if(this.editcell.columntype=="dropdownlist"){if(J==37||J==39&&y.selectionmode=="multiplecellsadvanced"){y._cancelkeydown=false}}else{if(this.selectionmode=="multiplecellsadvanced"&&this.editcell.columntype!="textbox"&&this.editcell.columntype!="numberinput"){y._cancelkeydown=true}}}if(J==32){if(y.editcell.columntype=="checkbox"){var f=y.getcolumn(y.editcell.datafield);if(f.editable){var o=!y.getcellvalue(y.editcell.row,y.editcell.column);if(f.cellbeginedit){var b=f.cellbeginedit(y.editcell.row,f.datafield,f.columntype,!o);if(b==false){return false}}var k=y.getrowdata(y.editcell.row);y.setcellvalue(y.editcell.row,y.editcell.column,o,true);y._raiseEvent(18,{rowindex:y.editcell.row,row:k,datafield:y.editcell.column,oldvalue:!o,value:o,columntype:"checkbox"});return false}}}if(J==9){var h=this.editcell.row;var w=this.editcell.column;var n=w;var B=y._getcolumnindex(w);var v=false;var d=y.getrowvisibleindex(h);this.editchar="";var e=this.editcell.validated;if(!this.editcell.validated){var e=this.endcelledit(this.editcell.row,this.editcell.column,false,true,false)}if(e!=false){if(E.shiftKey){var f=y._getpreveditablecolumn(B);if(f){w=f.datafield;v=true;if(y.selectionmode.indexOf("cell")!=-1){y.selectprevcell(h,n);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}else{var p=y._getlastvisiblecolumn();v=true;w=p.displayfield;h--;if(y.selectionmode.indexOf("cell")!=-1){y.clearselection();y.selectcell(h,w);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}}else{var f=y._getnexteditablecolumn(B);if(f){w=f.datafield;v=true;if(y.selectionmode.indexOf("cell")!=-1){y.selectnextcell(h,n);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}else{var I=y._getfirstvisiblecolumn();v=true;w=I.displayfield;h++;if(y.selectionmode.indexOf("cell")!=-1){y.clearselection();y.selectcell(h,w);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}}if(v){y.begincelledit(h,w);if(this.editcell!=null&&this.editcell.columntype=="checkbox"){this._renderrows(this.virtualsizeinfo)}}else{if(this.editcell!=null){y.endcelledit(h,w,false);this._renderrows(this.virtualsizeinfo)}return true}}return false}else{if(J==13){var u=this.selectedcell;if(u){var x=this.getrowvisibleindex(u.rowindex)}this.endcelledit(this.editcell.row,this.editcell.column,false,true);if(this.selectionmode=="multiplecellsadvanced"){var c=y.getselectedcell();if(c!=null){if(y.selectcell){if(this.editcell==null){if(c.rowindex+1<this.dataview.totalrecords){if(this.sortcolumn!=c.datafield){var d=this.getrowvisibleindex(c.rowindex);var H=this.dataview.loadedrecords[d+1];if(H){if(!this.pageable||(this.pageable&&d+1<(this.dataview.pagenum+1)*this.pagesize)){this.clearselection(false);this.selectcell(this.getboundindex(H),c.datafield);var c=this.getselectedcell();this.ensurecellvisible(H.visibleindex,c.datafield)}}}else{if(u!=null){var G=this.dataview.loadedrecords[x+1];if(G){if(!this.pageable||(this.pageable&&x+1<this.pagesize)){this.clearselection(false);this.selectcell(this.getboundindex(G),c.datafield)}else{if(this.pageable&&x+1>=this.pagesize){this.clearselection(false);var G=this.dataview.loadedrecords[x];this.selectcell(this.getboundindex(G),c.datafield)}}}}}}}}}}return false}else{if(J==27){this.endcelledit(this.editcell.row,this.editcell.column,true,true);return false}}}}else{var A=false;if(J==113){A=true}if(!E.ctrlKey&&!E.altKey&&!E.metaKey){if(J>=48&&J<=57){this.editchar=String.fromCharCode(J);A=true}if(J>=65&&J<=90){this.editchar=String.fromCharCode(J);var t=false;if(E.shiftKey){t=E.shiftKey}else{if(E.modifiers){t=!!(E.modifiers&4)}}if(!t){this.editchar=this.editchar.toLowerCase()}A=true}else{if(J>=96&&J<=105){this.editchar=J-96;this.editchar=this.editchar.toString();A=true}}var s=a(".jqx-grid").length;A=A&&(s==1||(s>1&&y.focused));var l=a.data(document.body,"jqxgrid.edit");if(l!==undefined&&l!==""){if(J===13||A){if(l!=y.element.id){return true}}}}if(J==13||A){if(y.getselectedrowindex){var h=y.getselectedrowindex();switch(y.selectionmode){case"singlerow":case"multiplerows":case"multiplerowsextended":if(h>=0){var w="";for(var C=0;C<y.columns.records.length;C++){var f=y.getcolumnat(C);if(f.editable){w=f.datafield;break}}y.begincelledit(h,w)}break;case"singlecell":case"multiplecells":case"multiplecellsextended":var c=y.getselectedcell();if(c!=null){var f=y._getcolumnbydatafield(c.datafield);if(f.columntype!="checkbox"){y.begincelledit(c.rowindex,c.datafield)}}break;case"multiplecellsadvanced":var c=y.getselectedcell();if(c!=null){if(J==13){if(y.selectcell){if(c.rowindex+1<y.dataview.totalrecords){var d=this.getrowvisibleindex(c.rowindex);var H=this.dataview.loadedrecords[d+1];if(H){this.clearselection(false);this.selectcell(this.getboundindex(H),c.datafield);var c=this.getselectedcell();this.ensurecellvisible(H.visibleindex,c.datafield)}}}}else{if(y.editmode!=="selectedrow"){y.begincelledit(c.rowindex,c.datafield)}}}break}return false}}if(J==46){var g=y.getselectedcells();if(y.selectionmode.indexOf("cell")==-1){if(y._getcellsforcopypaste){g=y._getcellsforcopypaste()}}if(g!=null&&g.length>0){for(var r=0;r<g.length;r++){var c=g[r];if(!c.datafield){continue}var f=y.getcolumn(c.datafield);var F=y.getcellvalue(c.rowindex,c.datafield);if(F!==""&&f.editable&&y.enablekeyboarddelete){var j=null;if(f.columntype=="checkbox"){if(!f.threestatecheckbox){j=false}}if(f.cellbeginedit){var b=f.cellbeginedit(c.rowindex,f.datafield,f.columntype,j);if(b==false){return false}}var k=y.getrowdata(c.rowindex);y._raiseEvent(17,{rowindex:c.rowindex,row:k,datafield:c.datafield,value:F});if(r==g.length-1){y.setcellvalue(c.rowindex,c.datafield,j,true);if(f.displayfield!=f.datafield){y.setcellvalue(c.rowindex,f.displayfield,j,true)}}else{y.setcellvalue(c.rowindex,c.datafield,j,false);if(f.displayfield!=f.datafield){y.setcellvalue(c.rowindex,f.displayfield,j,true)}}if(f.cellendedit){var D=f.cellendedit(c.rowindex,f.datafield,f.columntype,j)}y._raiseEvent(18,{rowindex:c.rowindex,row:k,datafield:c.datafield,oldvalue:F,value:j})}}this.dataview.updateview();this._renderrows(this.virtualsizeinfo);return false}}if(J==32){var c=y.getselectedcell();if(c!=null){var f=y.getcolumn(c.datafield);if(f.columntype=="checkbox"&&f.editable){var o=!y.getcellvalue(c.rowindex,c.datafield);if(f.cellbeginedit){var b=f.cellbeginedit(c.rowindex,f.datafield,f.columntype,!o);if(b==false){return false}}var k=y.getrowdata(c.rowindex);y._raiseEvent(17,{rowindex:c.rowindex,row:k,datafield:c.datafield,value:!o,columntype:"checkbox"});y.setcellvalue(c.rowindex,c.datafield,o,true);y._raiseEvent(18,{rowindex:c.rowindex,row:k,datafield:c.datafield,oldvalue:!o,value:o,columntype:"checkbox"});return false}}}}return true},begincelledit:function(n,e,l,g,c){var f=this.getcolumn(e);this._cellscache=new Array();if(e==null){return}if(f.columntype=="number"||f.columntype=="button"){return}if(this.groupable){if(this.groups.indexOf(e)>=0){return}if(this.groups.indexOf(f.displayfield)>=0){return}}if(this.editrow!=undefined){return}if(this.editcell){if(this.editcell.row==n&&this.editcell.column==e){return true}if(this.editmode==="selectedrow"){if(this.editcell.row==n){return}}var d=this.endcelledit(this.editcell.row,this.editcell.column,false,true,false);if(false==d){return}}var i=f.columntype=="checkbox"||f.columntype=="button";this.host.removeClass("jqx-disableselect");this.content.removeClass("jqx-disableselect");if(f.editable){if(f.cellbeginedit){var k=this.getcell(n,e);var m=f.cellbeginedit(n,e,f.columntype,k!=null?k.value:null);if(m==false){return}}var j=this.getrowvisibleindex(n);this.editcell=this.getcell(n,e);if(this.editcell){this.editcell.visiblerowindex=j;if(!this.editcell.editing){if(!i){this.editcell.editing=true}this.editcell.columntype=f.columntype;this.editcell.defaultvalue=l;if(f.defaultvalue!=undefined){this.editcell.defaultvalue=f.defaultvalue}this.editcell.init=true;if(f.columntype!="checkbox"&&this.editmode!="selectedrow"){var h=this.getrowdata(n);this._raiseEvent(17,{rowindex:n,row:h,datafield:f.datafield,value:this.editcell.value,columntype:f.columntype})}a.data(document.body,"jqxgrid.edit",this.element.id);if(!i){var b=this.getrowvisibleindex(n);if(g!==false){this.ensurecellvisible(b,f.datafield)}if(c!==false){this._renderrows(this.virtualsizeinfo)}}if(this.editcell){this.editcell.init=false;return true}}}}else{if(!this.editcell){return}this.editcell.editor=null;this.editcell.editing=false;if(c!==false){this._renderrows(this.virtualsizeinfo)}this.editcell=null}},getScrollTop:function(){if(this._py){return pageYOffset}this._py=typeof pageYOffset!="undefined";if(this._py){return pageYOffset}else{var c=document.body;var b=document.documentElement;b=(b.clientHeight)?b:c;return b.scrollTop}},getScrollLeft:function(){if(typeof pageXOffset!="undefined"){return pageXOffset}else{var c=document.body;var b=document.documentElement;b=(b.clientHeight)?b:c;return b.scrollLeft}},endcelledit:function(h,n,j,e,o){if(h==undefined||n==undefined){if(this.editcell){h=this.editcell.row;n=this.editcell.column}if(j==undefined){j=true}}if(!this.editcell){return}var d=this.getcolumn(n);var u=this;if(u.editmode==="selectedrow"){this.endrowedit(h,j);return}var t=function(){if(o!=false){if(u.isTouchDevice()){return}if(!u.isNestedGrid){var v=u.getScrollTop();var x=u.getScrollLeft();try{u.element.focus();u.content.focus();if(v!=u.getScrollTop()){window.scrollTo(x,v)}setTimeout(function(){u.element.focus();u.content.focus();if(v!=u.getScrollTop()){window.scrollTo(x,v)}},10)}catch(w){}}}};if(d.columntype=="checkbox"||d.columntype=="button"){if(this.editcell){this.editcell.editor=null;this.editcell.editing=false;this.editcell=null}return true}var i=this._geteditorvalue(d);var g=function(w){w._hidecelleditor();if(d.cellendedit){d.cellendedit(h,n,d.columntype,w.editcell.value,i)}w.editchar=null;if(d.displayfield!=d.datafield){var v=w.getcellvalue(w.editcell.row,d.displayfield);var x=w.editcell.value;oldvalue={value:x,label:v}}else{oldvalue=w.editcell.value}var y=w.getrowdata(h);w._raiseEvent(18,{rowindex:h,row:y,datafield:n,displayfield:d.displayfield,oldvalue:i,value:i,columntype:d.columntype});w.editcell.editor=null;w.editcell.editing=false;w.editcell=null;if(e||e==undefined){w._renderrows(w.virtualsizeinfo)}t();if(!w.enablebrowserselection){w.host.addClass("jqx-disableselect");w.content.addClass("jqx-disableselect")}};if(j){g(this);return false}if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}if(d.cellvaluechanging){var b=d.cellvaluechanging(h,n,d.columntype,this.editcell.value,i);if(b!=undefined){i=b}}if(d.validation){var c=this.getcell(h,n);try{var p=d.validation(c,i);var l=this.gridlocalization.validationstring;if(p.message!=undefined){l=p.message}var m=typeof p=="boolean"?p:p.result;if(!m){if(p.showmessage==undefined||p.showmessage==true){this._showvalidationpopup(h,n,l)}this.editcell.validated=false;return false}}catch(r){this._showvalidationpopup(h,n,this.gridlocalization.validationstring);this.editcell.validated=false;return false}}if(d.displayfield!=d.datafield){var k=this.getcellvalue(this.editcell.row,d.displayfield);var q=this.editcell.value;oldvalue={value:q,label:k}}else{oldvalue=this.editcell.value}var f=this.getrowdata(h);if(d.cellendedit){var s=d.cellendedit(h,n,d.columntype,this.editcell.value,i);if(s==false){this._raiseEvent(18,{rowindex:h,row:f,datafield:n,displayfield:d.displayfield,oldvalue:oldvalue,value:oldvalue,columntype:d.columntype});g(this);return false}}this._raiseEvent(18,{rowindex:h,row:f,datafield:n,displayfield:d.displayfield,oldvalue:oldvalue,value:i,columntype:d.columntype});this._hidecelleditor(false);if(this.editcell!=undefined){this.editcell.editor=null;this.editcell.editing=false}this.editcell=null;this.editchar=null;this.setcellvalue(h,n,i,e);if(!this.enablebrowserselection){this.host.addClass("jqx-disableselect");this.content.addClass("jqx-disableselect")}if(!a.jqx.browser.msie){t()}a.data(document.body,"jqxgrid.edit","");return true},beginrowedit:function(e){var d=this;var f=-1;d._oldselectedrow=e;this._cellscache=new Array();var c=false;if(this.editmode!="selectedrow"){c=true}if(c){var b=this.editmode;this.editmode="selectedrow"}a.each(this.columns.records,function(h,j){if(d.editable&&this.editable){var g=d.getcell(e,this.datafield);d.begincelledit(e,this.datafield,null,false,false);var i=d.getrowdata(e);d._raiseEvent(17,{rowindex:e,row:i,datafield:this.datafield,value:g.value,columntype:this.columntype})}});if(d.editcell){d.editcell.init=true}this._renderrows(this.virtualsizeinfo);if(c){this.editmode=b}},endrowedit:function(k,o){var D=this;if(!this.editcell){return false}if(this.editcell.editor==undefined){return false}var C=function(){if(focus!=false){if(D.isTouchDevice()){return}if(!D.isNestedGrid){var i=D.getScrollTop();var F=D.getScrollLeft();try{D.element.focus();D.content.focus();if(i!=D.getScrollTop()){window.scrollTo(F,i)}setTimeout(function(){D.element.focus();D.content.focus();if(i!=D.getScrollTop()){window.scrollTo(F,i)}},10)}catch(E){}}}};var p=false;if(this.editmode!="selectedrow"){p=true}if(p){var v=this.editmode;this.editmode="selectedrow"}var h=false;var d={};if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}for(var B=0;B<this.columns.records.length;B++){var e=this.columns.records[B];if(!e.editable){continue}if(e.hidden){continue}if(e.columntype=="checkbox"){continue}var l=this._geteditorvalue(e);var g=function(F){F._hidecelleditor();var E=F.getcellvalue(F.editcell.row,e.displayfield);if(e.cellendedit){e.cellendedit(k,u,e.columntype,E,l)}F.editchar=null;if(e.displayfield!=e.datafield){var i=F.getcellvalue(F.editcell.row,e.displayfield);var H=E;n={value:H,label:i}}else{n=E}var G=F.getrowdata(k);F._raiseEvent(18,{rowindex:k,row:G,datafield:u,displayfield:e.displayfield,oldvalue:E,value:E,columntype:e.columntype});F.editcell.editing=false};if(o){g(this);continue}if(e.cellvaluechanging){var n=this.getcellvalue(this.editcell.row,e.displayfield);var b=e.cellvaluechanging(k,u,e.columntype,n,l);if(b!=undefined){l=b}}var u=e.datafield;if(e.validation){var c=this.getcell(k,e.datafield);try{var w=e.validation(c,l);var r=this.gridlocalization.validationstring;if(w.message!=undefined){r=w.message}var t=typeof w=="boolean"?w:w.result;if(!t){if(w.showmessage==undefined||w.showmessage==true){this._showvalidationpopup(k,u,r)}h=true;this.editcell[e.datafield].validated=false;continue}}catch(z){this._showvalidationpopup(k,u,this.gridlocalization.validationstring);this.editcell[e.datafield].validated=false;h=true;continue}}if(e.displayfield!=e.datafield){var q=this.getcellvalue(this.editcell.row,e.displayfield);var x=this.editcell.value;n={value:x,label:q}}else{n=this.getcellvalue(this.editcell.row,e.displayfield)}d[e.datafield]={newvalue:l,oldvalue:n}}var y={};var s={};if(!h){this._hidecelleditor(false);for(var B=0;B<this.columns.records.length;B++){var e=this.columns.records[B];var u=e.datafield;if(e.hidden){continue}if(!e.editable){continue}var f=this.getrowdata(k);if(e.columntype=="checkbox"){var l=this.getcellvalue(k,e.displayfield);this._raiseEvent(18,{rowindex:k,row:f,datafield:e.datafield,displayfield:e.displayfield,oldvalue:l,value:l,columntype:e.columntype});continue}if(!d[e.datafield]){continue}var l=d[e.datafield].newvalue;var n=d[e.datafield].oldvalue;if(e.cellendedit){var A=e.cellendedit(k,u,e.columntype,n,l);if(A==false){this._raiseEvent(18,{rowindex:k,row:f,datafield:u,displayfield:e.displayfield,oldvalue:n,value:n,columntype:e.columntype});g(this);continue}}if(!this.source.updaterow){this._raiseEvent(18,{rowindex:k,row:f,datafield:e.datafield,displayfield:e.displayfield,oldvalue:n,value:l,columntype:e.columntype})}y[e.datafield]=l;s[e.datafield]=n}var j=this.getrowid(k);var f=this.getrowdata(k);a.each(y,function(i,F){if(F&&F.label!=undefined){var E=D.getcolumn(i);f[E.displayfield]=F.label;f[E.datafield]=F.value}else{f[i]=F}});if(!this.enablebrowserselection){this.host.addClass("jqx-disableselect");this.content.addClass("jqx-disableselect")}a.data(document.body,"jqxgrid.edit","");this.editcell=null;this.editchar=null;if(this.source.updaterow){var m=false;var D=this;var t=function(I){var G=D.source.updaterow;D.source.updaterow=null;if(false==I){a.each(s,function(i,K){if(K&&K.label!=undefined){var J=D.getcolumn(i);f[J.displayfield]=K.label;f[J.datafield]=K.value}else{f[i]=K}});D.updaterow(j,f)}else{D.updaterow(j,f)}for(var F=0;F<D.columns.records.length;F++){var H=D.columns.records[F];var E=H.datafield;D._raiseEvent(18,{rowindex:k,datafield:H.datafield,row:f,displayfield:H.displayfield,oldvalue:s[H.datafield],value:f[H.displayfield],columntype:H.columntype})}D.source.updaterow=G};try{m=this.source.updaterow(j,f,t);if(m==undefined){m=true}}catch(z){m=false;return}}else{this.updaterow(j,f);this._renderrows(this.virtualsizeinfo)}}if(p){this.editmode=v}return h},_selection:function(b){if("selectionStart" in b[0]){var g=b[0];var h=g.selectionEnd-g.selectionStart;return{start:g.selectionStart,end:g.selectionEnd,length:h,text:g.value}}else{var d=document.selection.createRange();if(d==null){return{start:0,end:g.value.length,length:0}}var c=b[0].createTextRange();var f=c.duplicate();c.moveToBookmark(d.getBookmark());f.setEndPoint("EndToStart",c);var h=d.text.length;return{start:f.text.length,end:f.text.length+d.text.length,length:h,text:d.text}}},_setSelection:function(e,b,d){if("selectionStart" in d[0]){d[0].focus();d[0].setSelectionRange(e,b)}else{var c=d[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",e);c.select()}},findRecordIndex:function(g,c,b){var b=b;if(c){var e=b.length;for(var h=0;h<e;h++){var f=b[h];var d=f.label;if(g==d){return h}}}return -1},_destroyeditors:function(){var b=this;if(!this.columns.records){return}a.each(this.columns.records,function(f,j){var c=a.trim(this.datafield).split(" ").join("");switch(this.columntype){case"dropdownlist":var g=b.editors["dropdownlist_"+c];if(g){g.jqxDropDownList("destroy");b.editors["dropdownlist_"+c]=null}break;case"combobox":var k=b.editors["combobox_"+c];if(k){k.jqxComboBox("destroy");b.editors["combobox_"+c]=null}break;case"datetimeinput":var d=b.editors["datetimeinput_"+this.datafield];if(d){d.jqxDateTimeInput("destroy");b.editors["datetimeinput_"+c]=null}break;case"numberinput":var e=b.editors["numberinput_"+c];if(e){e.jqxNumberInput("destroy");b.editors["numberinput_"+c]=null}break;case"custom":case"template":if(b.destroyeditor){if(b.editors["templateeditor_"+c]){b.destroyeditor(b.editors["templateeditor_"+c]);b.editors["templateeditor_"+c]=null}}if(b.destroyeditor){var m=b.getrows.length();for(var l=0;l<m;l++){if(b.editors["customeditor_"+c+"_"+l]){b.destroyeditor(b.editors["customeditor_"+c+"_"+l],l);b.editors["customeditor_"+c+"_"+l]=null}}}break;case"textbox":default:var h=b.editors["textboxeditor_"+c];if(h){b.removeHandler(h,"keydown");b.editors["textbox_"+c]=null}break}});b.editors=new Array()},_showcelleditor:function(q,G,n,K,w){if(n==undefined){return}if(this.editcell==null){return}if(G.columntype=="checkbox"&&G.editable){return}if(w==undefined){w=true}if(this.editmode=="selectedrow"){this.editchar="";w=false}var E=G.datafield;var g=a(n);var s=this;var d=this.editcell.editor;var I=this.getcellvalue(q,E);var C=this.getcelltext(q,E);var j=this.hScrollInstance;var t=j.value;var i=parseInt(t);var J=this.columns.records.indexOf(G);this.editcell.element=n;if(this.editcell.validated==false){var H="";if(this.validationpopup){H=this.validationpopup.text()}this._showvalidationpopup(q,E,H)}var l=function(P){if(s.hScrollInstance.isScrolling()||s.vScrollInstance.isScrolling()){return}if(!w){return}if(s.isTouchDevice()){return}if(P){P.focus()}if(s.gridcontent[0].scrollTop!=0){s.scrolltop(Math.abs(s.gridcontent[0].scrollTop));s.gridcontent[0].scrollTop=0}if(s.gridcontent[0].scrollLeft!=0){s.gridcontent[0].scrollLeft=0}};switch(G.columntype){case"dropdownlist":if(this.host.jqxDropDownList){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");var A=a.trim(G.displayfield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}if(A.indexOf(".")!=-1){A=A.replace(".","")}var k=this.editors["dropdownlist_"+D];d=k==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='dropdownlisteditor'></div>"):k;d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(k==undefined){d.prependTo(this.table);d[0].id="dropdownlisteditor"+this.element.id+D;var f=this.source._source?true:false;var x=null;if(!f){x=new a.jqx.dataAdapter(this.source,{autoBind:false,uniqueDataFields:[A],async:false,autoSort:true,autoSortField:A})}else{var p={localdata:this.source.records,datatype:this.source.datatype,async:false};x=new a.jqx.dataAdapter(p,{autoBind:false,async:false,uniqueDataFields:[A],autoSort:true,autoSortField:A})}var u=!G.createeditor?true:false;d.jqxDropDownList({enableBrowserBoundsDetection:true,keyboardSelection:false,source:x,rtl:this.rtl,autoDropDownHeight:u,theme:this.theme,width:g.width()-2,height:g.height()-2,displayMember:A,valueMember:E});this.editors["dropdownlist_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxDropDownList({width:g.width()-2})}var c=d.jqxDropDownList("listBox").visibleItems;if(!G.createeditor){if(c.length<8){d.jqxDropDownList("autoDropDownHeight",true)}else{d.jqxDropDownList("autoDropDownHeight",false)}}var I=this.getcellvalue(q,A);var z=this.findRecordIndex(I,A,c);if(K){if(I!=""){d.jqxDropDownList("selectIndex",z,true)}else{d.jqxDropDownList("selectIndex",-1)}}if(!this.editcell){return}if(this.editcell.defaultvalue!=undefined){d.jqxDropDownList("selectIndex",this.editcell.defaultvalue,true)}if(w){d.jqxDropDownList("focus")}}break;case"combobox":if(this.host.jqxComboBox){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");var A=a.trim(G.displayfield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}if(A.indexOf(".")!=-1){A=A.replace(".","")}var r=this.editors["combobox_"+D];d=r==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='comboboxeditor'></div>"):r;d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(r==undefined){d.prependTo(this.table);d[0].id="comboboxeditor"+this.element.id+D;var f=this.source._source?true:false;var x=null;if(!f){x=new a.jqx.dataAdapter(this.source,{autoBind:false,uniqueDataFields:[A],async:false,autoSort:true,autoSortField:A})}else{var p={localdata:this.source.records,datatype:this.source.datatype,async:false};x=new a.jqx.dataAdapter(p,{autoBind:false,async:false,uniqueDataFields:[A],autoSort:true,autoSortField:A})}var u=!G.createeditor?true:false;d.jqxComboBox({enableBrowserBoundsDetection:true,keyboardSelection:false,source:x,rtl:this.rtl,autoDropDownHeight:u,theme:this.theme,width:g.width()-2,height:g.height()-2,displayMember:A,valueMember:E});d.removeAttr("tabindex");d.find("div").removeAttr("tabindex");this.editors["combobox_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxComboBox({width:g.width()-2})}var c=d.jqxComboBox("listBox").visibleItems;if(!G.createeditor){if(c.length<8){d.jqxComboBox("autoDropDownHeight",true)}else{d.jqxComboBox("autoDropDownHeight",false)}}var I=this.getcellvalue(q,A);var z=this.findRecordIndex(I,A,c);if(K){if(I!=""){d.jqxComboBox("selectIndex",z,true);d.jqxComboBox("val",I)}else{d.jqxComboBox("selectIndex",-1);d.jqxComboBox("val",I)}}if(!this.editcell){return}if(this.editcell.defaultvalue!=undefined){d.jqxComboBox("selectIndex",this.editcell.defaultvalue,true)}if(this.editchar&&this.editchar.length>0){d.jqxComboBox("input").val(this.editchar)}if(w){setTimeout(function(){l(d.jqxComboBox("input"));if(d){d.jqxComboBox("_setSelection",0,0);if(s.editchar){d.jqxComboBox("_setSelection",1,1);s.editchar=null}else{if(d.jqxComboBox("input")){var P=d.jqxComboBox("input").val();d.jqxComboBox("_setSelection",0,P.length)}}}},10)}}break;case"datetimeinput":if(this.host.jqxDateTimeInput){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var v=this.editors["datetimeinput_"+D];d=v==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='datetimeeditor'></div>"):v;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(v==undefined){d.prependTo(this.table);d[0].id="datetimeeditor"+this.element.id+D;var F={calendar:this.gridlocalization};d.jqxDateTimeInput({enableBrowserBoundsDetection:true,localization:F,_editor:true,theme:this.theme,rtl:this.rtl,width:g.width(),height:g.height(),formatString:G.cellsformat});this.editors["datetimeinput_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxDateTimeInput({width:g.width()-2})}if(K){if(I!=""&&I!=null){var L=new Date(I);if(L=="Invalid Date"){if(this.source.getvaluebytype){L=this.source.getvaluebytype(I,{name:G.datafield,type:"date"})}}d.jqxDateTimeInput("setDate",L)}else{d.jqxDateTimeInput("setDate",null)}if(this.editcell.defaultvalue!=undefined){d.jqxDateTimeInput("setDate",this.editcell.defaultvalue)}}if(w){setTimeout(function(){l(d.jqxDateTimeInput("dateTimeInput"))},10)}}break;case"numberinput":if(this.host.jqxNumberInput){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var N=this.editors["numberinput_"+D];d=N==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='numbereditor'></div>"):N;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(N==undefined){d.prependTo(this.table);d[0].id="numbereditor"+this.element.id+D;var m="";var y="left";var M=2;if(G.cellsformat){if(G.cellsformat.indexOf("c")!=-1){m=this.gridlocalization.currencysymbol;y=this.gridlocalization.currencysymbolposition;if(y=="before"){y="left"}else{y="right"}if(G.cellsformat.length>1){M=parseInt(G.cellsformat.substring(1),10)}}else{if(G.cellsformat.indexOf("p")!=-1){m=this.gridlocalization.percentsymbol;y="right";if(G.cellsformat.length>1){M=parseInt(G.cellsformat.substring(1),10)}}}}else{M=0}d.jqxNumberInput({decimalSeparator:this.gridlocalization.decimalseparator,decimalDigits:M,inputMode:"simple",theme:this.theme,rtl:this.rtl,width:g.width()-1,height:g.height()-1,spinButtons:true,symbol:m,symbolPosition:y});this.editors["numberinput_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxNumberInput({width:g.width()-2})}if(K){if(I!=""&&I!=null){var O=I;d.jqxNumberInput("setDecimal",O)}else{d.jqxNumberInput("setDecimal",0)}if(this.editcell.defaultvalue!=undefined){d.jqxNumberInput("setDecimal",this.editcell.defaultvalue)}if(this.editchar&&this.editchar.length>0){var o=parseInt(this.editchar);if(!isNaN(o)){d.jqxNumberInput("setDecimal",o)}}if(w){setTimeout(function(){l(d.jqxNumberInput("numberInput"));d.jqxNumberInput("_setSelectionStart",0);if(s.editchar){if(G.cellsformat.length>0){d.jqxNumberInput("_setSelectionStart",2)}else{d.jqxNumberInput("_setSelectionStart",1)}s.editchar=null}else{var P=d.jqxNumberInput("spinButtons");if(P){var Q=d.jqxNumberInput("numberInput").val();s._setSelection(d.jqxNumberInput("numberInput")[0],Q.length,Q.length)}else{var Q=d.jqxNumberInput("numberInput").val();s._setSelection(d.jqxNumberInput("numberInput")[0],0,Q.length)}}d.jqxNumberInput("selectAll")},10)}}}break;case"custom":n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var B=this.editors["customeditor_"+D+"_"+q];d=B==undefined?a("<div style='overflow: hidden; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='customeditor'></div>"):B;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(B==undefined){d.prependTo(this.table);d[0].id="customeditor"+this.element.id+D+"_"+q;this.editors["customeditor_"+D+"_"+q]=d;var b=g.width()-1;var e=g.height()-1;d.width(b);d.height(e);if(G.createeditor){G.createeditor(q,I,d,C,b,e,this.editchar)}}if(G._requirewidthupdate){d.width(g.width()-2)}break;case"template":n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var h=this.editors["templateeditor_"+D];d=h==undefined?a("<div style='overflow: hidden; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='templateeditor'></div>"):h;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(h==undefined){d.prependTo(this.table);d[0].id="templateeditor"+this.element.id+D;this.editors["templateeditor_"+D]=d;var b=g.width()-1;var e=g.height()-1;d.width(b);d.height(e);if(G.createeditor){G.createeditor(q,I,d,C,b,e,this.editchar)}}if(G._requirewidthupdate){d.width(g.width()-2)}break;case"textbox":default:n.innerHTML="";d=this.editors["textboxeditor_"+G.datafield]||a("<input autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' type='textbox' id='textboxeditor'/>");d[0].id="textboxeditor"+this.element.id+G.datafield;d.appendTo(g);if(this.rtl){d.css("direction","rtl")}if(K||d[0].className==""){d.addClass(this.toThemeProperty("jqx-input"));d.addClass(this.toThemeProperty("jqx-widget-content"));if(this.editchar&&this.editchar.length>0){d.val(this.editchar)}else{if(G.cellsformat!=""){I=this.getcelltext(q,E)}if(I==undefined){I=""}d.val(I)}if(this.editcell.defaultvalue!=undefined){d.val(this.editcell.defaultvalue)}d.width(g.width()+1);d.height(g.height()+1);if(G.createeditor){G.createeditor(q,I,d)}if(G.cellsformat!=""){if(G.cellsformat.indexOf("p")!=-1||G.cellsformat.indexOf("c")!=-1||G.cellsformat.indexOf("n")!=-1||G.cellsformat.indexOf("f")!=-1){if(!this.editors["textboxeditor_"+G.datafield]){d.keydown(function(Q){var W=Q.charCode?Q.charCode:Q.keyCode?Q.keyCode:0;var T=String.fromCharCode(W);var U=parseInt(T);if(isNaN(U)){return true}if(s._selection(d).length>0){return true}var S="";var R=d.val();if(G.cellsformat.length>1){var V=parseInt(G.cellsformat.substring(1));if(isNaN(V)){V=0}}else{var V=0}if(V>0){if(R.indexOf(s.gridlocalization.decimalseparator)!=-1){if(s._selection(d).start>R.indexOf(s.gridlocalization.decimalseparator)){return true}}}for(var X=0;X<R.length-V;X++){var P=R.substring(X,X+1);if(P.match(/^[0-9]+$/)!=null){S+=P}}if(S.length>=11){return false}})}}}}this.editors["textboxeditor_"+G.datafield]=d;if(K){if(w){setTimeout(function(){l(d);if(s.editchar){s._setSelection(d[0],1,1);s.editchar=null}else{s._setSelection(d[0],0,d.val().length)}},25)}}break}if(d){d[0].style.zIndex=1+n.style.zIndex;if(a.jqx.browser.msie&&a.jqx.browser.version<8){d[0].style.zIndex=1+this.columns.records.length+n.style.zIndex}d.css("display","block");this.editcell.editor=d;if(!this.editcell[E]){this.editcell[E]={};this.editcell[E].editor=d}else{this.editcell[E].editor=d}}if(K){if(G.initeditor){G.initeditor(q,I,d,C,this.editchar)}}if(s.isTouchDevice()){return}setTimeout(function(){if(s.content){s.content[0].scrollTop=0;s.content[0].scrollLeft=0}if(s.gridcontent){s.gridcontent[0].scrollLeft=0;s.gridcontent[0].scrollTop=0}},10)},_setSelection:function(d,g,b){try{if("selectionStart" in d){d.setSelectionRange(g,b)}else{var c=d.createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",g);c.select()}}catch(e){var f=e}},_hideeditors:function(){if(this.editcells!=null){var b=this;for(var c in this.editcells){b.editcell=b.editcells[c];b._hidecelleditor()}}},_hidecelleditor:function(b){if(!this.editcell){return}if(this.editmode==="selectedrow"){for(var c=0;c<this.columns.records.length;c++){var e=this.columns.records[c];if(this.editcell[e.datafield]&&this.editcell[e.datafield].editor){this.editcell[e.datafield].editor.hide();var d=this.editcell[e.datafield].editor;switch(e.columntype){case"dropdownlist":d.jqxDropDownList({closeDelay:0});d.jqxDropDownList("hideListBox");d.jqxDropDownList({closeDelay:300});break;case"combobox":d.jqxComboBox({closeDelay:0});d.jqxComboBox("hideListBox");d.jqxComboBox({closeDelay:300});break;case"datetimeinput":if(d.jqxDateTimeInput("isOpened")){d.jqxDateTimeInput({closeDelay:0});d.jqxDateTimeInput("hideCalendar");d.jqxDateTimeInput({closeDelay:300})}break}}}if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}return}if(this.editcell.columntype=="checkbox"){return}if(this.editcell.editor){this.editcell.editor.hide();switch(this.editcell.columntype){case"dropdownlist":this.editcell.editor.jqxDropDownList({closeDelay:0});this.editcell.editor.jqxDropDownList("hideListBox");this.editcell.editor.jqxDropDownList({closeDelay:300});break;case"combobox":this.editcell.editor.jqxComboBox({closeDelay:0});this.editcell.editor.jqxComboBox("hideListBox");this.editcell.editor.jqxComboBox({closeDelay:300});break;case"datetimeinput":var f=this.editcell.editor;if(f.jqxDateTimeInput("isOpened")){f.jqxDateTimeInput({closeDelay:0});f.jqxDateTimeInput("hideCalendar");f.jqxDateTimeInput({closeDelay:300})}break}}if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}if(!this.isNestedGrid){if(b!=false){this.element.focus()}}},_geteditorvalue:function(h){var o=new String();if(!this.editcell){return null}var l=this.editcell.editor;if(this.editmode=="selectedrow"){if(this.editcell[h.datafield]){var l=this.editcell[h.datafield].editor}}if(l){switch(h.columntype){case"textbox":default:o=l.val();if(h.cellsformat!=""){var n="string";var e=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(e){var p="";a.each(e,function(){if(this.name==h.displayfield){if(this.type){p=this.type}return false}});if(p){n=p}}var i=n==="number"||n==="float"||n==="int"||n==="integer";var f=n==="date"||n==="time";if(i||(n==="string"&&(h.cellsformat.indexOf("p")!=-1||h.cellsformat.indexOf("c")!=-1||h.cellsformat.indexOf("n")!=-1||h.cellsformat.indexOf("f")!=-1))){if(o===""&&h.nullable){return""}if(o.indexOf(this.gridlocalization.currencysymbol)>-1){o=o.replace(this.gridlocalization.currencysymbol,"")}var m=function(w,u,v){var s=w;if(u==v){return w}var t=s.indexOf(u);while(t!=-1){s=s.replace(u,v);t=s.indexOf(u)}return s};var k=o;k=new Number(k);if(!isNaN(k)){return k}o=m(o,this.gridlocalization.thousandsseparator,"");o=o.replace(this.gridlocalization.decimalseparator,".");if(o.indexOf(this.gridlocalization.percentsymbol)>-1){o=o.replace(this.gridlocalization.percentsymbol,"")}var d="";for(var r=0;r<o.length;r++){var b=o.substring(r,r+1);if(b==="-"){d+="-"}if(b==="."){d+="."}if(b.match(/^[0-9]+$/)!=null){d+=b}}o=d;o=o.replace(/ /g,"");o=new Number(o);if(isNaN(o)){o=""}}if(f||(n==="string"&&(h.cellsformat.indexOf("H")!=-1||h.cellsformat.indexOf("m")!=-1||h.cellsformat.indexOf("M")!=-1||h.cellsformat.indexOf("y")!=-1||h.cellsformat.indexOf("h")!=-1||h.cellsformat.indexOf("d")!=-1))){if(o===""&&h.nullable){return""}var c=o;if(a.jqx.dataFormat){o=a.jqx.dataFormat.tryparsedate(c,this.gridlocalization)}if(o=="Invalid Date"||o==null){o=""}}}if(h.displayfield!=h.datafield){o={label:o,value:o}}break;case"checkbox":if(l.jqxCheckBox){o=l.jqxCheckBox("checked")}break;case"datetimeinput":if(l.jqxDateTimeInput){l.jqxDateTimeInput({isEditing:false});l.jqxDateTimeInput("_validateValue");o=l.jqxDateTimeInput("getDate");if(o==null){return null}o=new Date(o.toString());if(h.displayfield!=h.datafield){o={label:o,value:o}}}break;case"dropdownlist":if(l.jqxDropDownList){var g=l.jqxDropDownList("selectedIndex");var q=l.jqxDropDownList("listBox").getVisibleItem(g);if(h.displayfield!=h.datafield){if(q){o={label:q.label,value:q.value}}else{o=""}}else{if(q){o=q.label}else{o=""}}if(o==null){o=""}}break;case"combobox":if(l.jqxComboBox){o=l.jqxComboBox("val");if(h.displayfield!=h.datafield){var q=l.jqxComboBox("getSelectedItem");if(q!=null){o={label:q.label,value:q.value}}}if(o==null){o=""}}break;case"numberinput":if(l.jqxNumberInput){if(this.touchdevice){l.jqxNumberInput("_doTouchHandling")}var j=l.jqxNumberInput("getDecimal");o=new Number(j);o=parseFloat(o);if(isNaN(o)){o=0}if(h.displayfield!=h.datafield){o={label:o,value:o}}}break}if(h.geteditorvalue){if(this.editmode=="selectedrow"){o=h.geteditorvalue(this.editcell.row,this.getcellvalue(this.editcell.row,h.datafield),l)}else{o=h.geteditorvalue(this.editcell.row,this.editcell.value,l)}}}return o},hidevalidationpopups:function(){if(this.popups){a.each(this.popups,function(){this.validation.remove();this.validationrow.remove()});this.popups=new Array()}if(this.validationpopup){this.validationpopuparrow.hide();this.validationpopup.hide()}},showvalidationpopup:function(f,j,h){if(h==undefined){var h=this.gridlocalization.validationstring}var g=a("<div style='z-index: 99999; top: 0px; left: 0px; position: absolute;'></div>");var r=a("<div style='width: 20px; height: 20px; z-index: 999999; top: 0px; left: 0px; position: absolute;'></div>");g.html(h);r.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));g.addClass(this.toThemeProperty("jqx-grid-validation"));g.addClass(this.toThemeProperty("jqx-rc-all"));g.prependTo(this.table);r.prependTo(this.table);var l=this.hScrollInstance;var n=l.value;var d=parseInt(n);var b=this.getcolumn(j).uielement;var p=null;for(var o=0;o<this.hittestinfo.length;o++){if(f===this.hittestinfo[o].row.visibleindex){p=this.hittestinfo[o]}}if(!p){this.ensurerowvisible(f);var s=this;g.remove();r.remove();setTimeout(function(){var v=null;for(var u=0;u<s.hittestinfo.length;u++){if(f===s.hittestinfo[u].row.visibleindex){v=s.hittestinfo[u]}}if(v){s.showvalidationpopup(f,j,h)}},25);return}var c=a(p.visualrow);g.css("top",parseInt(c.position().top)+30+"px");var k=parseInt(g.css("top"));r.css("top",k-12);r.removeClass();r.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));var q=false;if(k>=this._gettableheight()){r.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));r.addClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));k=parseInt(c.position().top)-this.rowsheight-5;if(k<0){k=0;this.validationpopuparrow.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));q=true}g.css("top",k+"px");r.css("top",k+g.outerHeight()-9)}var t=-d+parseInt(a(b).position().left);r.css("left",d+t+30);var m=g.width();if(m+t>this.host.width()-20){var e=m+t-this.host.width()+40;t-=e}if(!q){g.css("left",d+t)}else{g.css("left",d+parseInt(a(b).position().left)-g.outerWidth())}g.show();r.show();if(!this.popups){this.popups=new Array()}this.popups[this.popups.length]={validation:g,validationrow:r}},_showvalidationpopup:function(p,e,q){var c=this.editcell;var k=this.editcell.editor;if(this.editmode=="selectedrow"){var c=this.editcell[e];if(c&&c.editor){k=c.editor;c.element=k}}if(!k){return}if(this.validationpopup&&a.jqx.isHidden(this.validationpopup)){if(this.validationpopup.remove){this.validationpopup.remove();this.validationpopuparrow.remove()}this.validationpopup=null;this.validationpopuparrow=null;if(e===undefined&&q===undefined&&this.editors&&this.editors.length===0){return}}if(!this.validationpopup){var n=a("<div style='z-index: 99999; top: 0px; left: 0px; position: absolute;'></div>");var m=a("<div style='width: 20px; height: 20px; z-index: 999999; top: 0px; left: 0px; position: absolute;'></div>");n.html(q);m.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));n.addClass(this.toThemeProperty("jqx-grid-validation"));n.addClass(this.toThemeProperty("jqx-rc-all"));n.prependTo(this.table);m.prependTo(this.table);this.validationpopup=n;this.validationpopuparrow=m}else{this.validationpopup.html(q)}var h=this.hScrollInstance;var j=h.value;var g=parseInt(j);if(this.editmode=="selectedrow"){if(this.visiblerows&&this.visiblerows[this.editcell.visiblerowindex]){this.validationpopup.css("top",this.visiblerows[this.editcell.visiblerowindex].top+(this.rowsheight+5)+"px")}else{this.validationpopup.css("top",parseInt(a(c.editor).position().top)+(this.rowsheight+5)+"px")}}else{this.validationpopup.css("top",parseInt(a(c.element).parent().position().top)+(this.rowsheight+5)+"px")}var b=parseInt(this.validationpopup.css("top"));this.validationpopuparrow.css("top",b-11);this.validationpopuparrow.removeClass();this.validationpopuparrow.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));var o=this._gettableheight();var f=false;if(b>=o){this.validationpopuparrow.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));this.validationpopuparrow.addClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));b=parseInt(a(c.element).parent().position().top)-this.rowsheight-5;if(this.editmode=="selectedrow"){if(this.visiblerows&&this.visiblerows[this.editcell.visiblerowindex]){b=this.visiblerows[this.editcell.visiblerowindex].top-this.rowsheight-5}else{b=parseInt(a(c.editor).position().top)-this.rowsheight-5}}if(b<0){b=0;this.validationpopuparrow.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));f=true}this.validationpopup.css("top",b+"px");this.validationpopuparrow.css("top",b+this.validationpopup.outerHeight()-9)}var l=-g+parseInt(a(c.element).position().left);this.validationpopuparrow.css("left",g+l+30);var d=this.validationpopup.width();if(d+l>this.host.width()-20){var i=d+l-this.host.width()+40;l-=i}if(!f){this.validationpopup.css("left",g+l)}else{this.validationpopup.css("left",g+parseInt(a(c.element).position().left)-this.validationpopup.outerWidth())}if(this.editcell.editor.css("display")=="none"){this.validationpopup.hide();this.validationpopuparrow.hide()}else{this.validationpopup.show();this.validationpopuparrow.show()}}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{_calculateaggregate:function(g,j,h,c){var f=g.aggregates;if(!f){f=j}if(f){var e=new Array();for(var d=0;d<f.length;d++){if(f[d]=="count"){continue}e[e.length]=g.cellsformat}if(this.source&&this.source.getAggregatedData){if(c==undefined){c=this.getrows()}if(this.virtualmode){var c=new Array();a.each(this.source._source.records,function(){c.push(this)})}if(h==undefined||h==true){var b=this.source.getAggregatedData([{name:g.datafield,aggregates:f,formatStrings:e}],this.gridlocalization,c);return b}else{var b=this.source.getAggregatedData([{name:g.datafield,aggregates:f}],this.gridlocalization,c);return b}}}return null},getcolumnaggregateddata:function(c,g,h,d){var e=this.getcolumn(c);var j=(h==undefined||h==false)?false:h;if(g==null){return""}var b=e.aggregates;e.aggregates=null;var i=this._calculateaggregate(e,g,j,d);var f={};if(i){f=i[c]}e.aggregates=b;return f},refreshaggregates:function(){this._updatecolumnsaggregates()},renderaggregates:function(){this._updateaggregates()},_updatecolumnaggregates:function(d,g,b){var e=this;if(!g){b.children().remove();b.html("");if(d.aggregatesrenderer){var f={};if(d.aggregates){f=this.getcolumnaggregateddata(d.datafield,d.aggregates)}var c=d.aggregatesrenderer({},d,b,null);b.html(c)}return}b.children().remove();b.html("");if(d.aggregatesrenderer){if(g){var c=d.aggregatesrenderer(g[d.datafield],d,b,this.getcolumnaggregateddata(d.datafield,g[d.datafield]));b.html(c)}}else{a.each(g,function(){var i=this;for(f in i){var j=a('<div style="position: relative; margin: 4px; overflow: hidden;"></div>');var h=f;h=e._getaggregatename(h);j.html(h+":"+i[f]);if(e.rtl){j.addClass(e.toThemeProperty("jqx-rtl"))}b.append(j)}})}},_getaggregatetype:function(c){switch(c){case"min":case"max":case"count":case"avg":case"product":case"var":case"varp":case"stdev":case"stdevp":case"sum":return c}var b=c;for(var d in c){b=d;break}return b},_getaggregatename:function(c){var b=c;switch(c){case"min":b="Min";break;case"max":b="Max";break;case"count":b="Count";break;case"avg":b="Avg";break;case"product":b="Product";break;case"var":b="Var";break;case"stdevp":b="StDevP";break;case"stdev":b="StDev";break;case"varp":b="VarP";case"sum":b="Sum";break}if(c===b&&typeof(b)!="string"){for(var d in c){b=d;break}}return b},_updatecolumnsaggregates:function(){var f=this.getrows();var b=this.columns.records.length;if(undefined!=this.statusbar[0].cells){for(var e=0;e<b;e++){var g=a(this.statusbar[0].cells[e]);var d=this.columns.records[e];var c=this._calculateaggregate(d,null,true,f);this._updatecolumnaggregates(d,c,g)}}},_updateaggregates:function(){var b=a('<div style="position: relative;" id="statusrow'+this.element.id+'"></div>');var f=0;var l=this.columns.records.length;var k=this.toThemeProperty("jqx-grid-cell");if(this.rtl){k+=" "+this.toThemeProperty("jqx-grid-cell-rtl");f=-1}k+=" "+this.toThemeProperty("jqx-grid-cell-pinned");var m=l+10;var n=new Array();this.statusbar[0].cells=n;var o=this.getrows();for(var g=0;g<l;g++){var e=this.columns.records[g];var h=this._calculateaggregate(e,e.aggregates,true,o);var c=e.width;if(c<e.minwidth){c=e.minwidth}if(c>e.maxwidth){c=e.maxwidth}var d=k;if(e.cellsalign){d+=" "+this.toThemeProperty("jqx-"+e.cellsalign+"-align")}var i=a('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+d+'"></div>');b.append(i);i.css("left",f);if(!this.rtl){i.css("z-index",m--)}else{i.css("z-index",m++)}i.width(c);i[0].left=f;if(!(e.hidden&&e.hideable)){f+=c}else{i.css("display","none")}n[n.length]=i[0];this._updatecolumnaggregates(e,h,i)}if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.css("z-index",m--)}b.width(parseFloat(f)+2);b.height(this.statusbarheight);this.statusbar.children().remove();this.statusbar.append(b);this.statusbar.removeClass(this.toThemeProperty("jqx-widget-header"));this.statusbar.addClass(k);this.statusbar.css("border-bottom-color","transparent");this.statusbar.css("border-top-width","1px");if(this.rtl&&this.hScrollBar.css("visibility")!="hidden"){this._renderhorizontalscroll()}this._arrange()}})})(jqxBaseFramework);(function(b){var a=(function(){var c={},u,q,j,l,g,h,o,p;function d(B,A,x,z,y,v,w){this.hierarchy=y;this.exportFormat=v;this.filename=w;B.beginFile(w);n(B);k(B);B.endFile(w);return B.getFile()}function n(z){var x=true;b.each(q,function(){if(this.hidden){x=false;return false}});z.beginHeader(x);var w=0;for(var v in q){if(q[v].columnsDataFields){v=q[v].columnsDataFields[w].displayfield}var y=m(v,q[v]);z.appendHeaderCell(q[v],v,y,x,w);w++}z.endHeader(x)}function k(x){x.beginBody();if(this.hierarchy){var w=function(z){for(var y=0;y<z.length;y+=1){if(z[y]!==undefined){x.beginRow(z[y].level);e(x,z[y],y,true);if(z[y].records){x.beginRows(z[y].level);w(z[y].records);x.endRows(z[y].level)}x.endRow(z[y].level)}}};w(u);x.endBody();return}for(var v=0;v<u.length;v+=1){if(u[v]!==undefined){e(x,u[v],v)}}x.endBody()}function e(A,z,B,v){var x;if(v!=true){A.beginRow()}var y=0;for(var w in q){if(q[w].columnsDataFields){w=q[w].columnsDataFields[y].displayfield}x=s(B,w);if(x){if(x.level!=undefined){if(x.index-1>z.level&&x.index-1<x.maxLevel){y++;continue}}if(x.maxLevel!=undefined){if(x.index-1==x.maxLevel){x=b.extend({},x);x.merge=x.maxLevel-z.level-1}}}if(z.level!=undefined&&z.label!=undefined){if(this.exportFormat==="xml"||this.exportFormat==="json"){var C={};C.text="group";A.appendBodyCell(z.label,C,x,z,y,"group");break}}if(z.hasOwnProperty(w)){A.appendBodyCell(z[w],q[w],x,z,y)}else{A.appendBodyCell("",q[w],x,z,y)}y++}if(v!=true){A.endRow()}}function m(w,x){if(x.style){return j[x.style]}var v=t();if(v.length>0){return v[0].style}return null}function t(){if(!g){g=new Array();b.each(j,function(v,w){g[g.length]={name:v,style:w}})}return g}function s(A,z){var B=q[z];if(B){if(B.customCellStyles){var x=B.customCellStyles[A];if(x){return j[x]}}if(B.cellStyle){if(B.cellAltStyle){var w=A%2;if(w==0){return j[B.cellStyle]}return j[B.cellAltStyle]}return j[B.cellStyle]}else{var v=t();if(v.length>0){var w=A%(v.length-1);var y=v[w+1].style;return y}}}return null}function r(y,w,x){var v=document.createElement("input");v.name=w;v.value=y;v.type="hidden";x.appendChild(v);return v}function f(x,v,w){var y=document.createElement("textarea");y.name=v;y.value=x;w.appendChild(y);return y}function i(w,z,y,v,A){var x=document.createElement("form");r(w,"filename",x);r(z,"format",x);f(y,"content",x);if(v==undefined||v==""){if(window&&window.location.toString().indexOf("jqwidgets.com")>=0){v="http://jqwidgets.com/export_server/save-file.php"}else{v="http://jquerygrid.net/export_server/save-file.php"}}x.action=v;x.method="post";if(A){x.acceptCharset=A}document.body.appendChild(x);return x}l=function(A,y,x,w,z,v){if(!(this instanceof a)){return new a(A,y,x,z,v)}u=A;q=y;j=x;this.exportTo=function(F,D,B,C){F=F.toString().toLowerCase();var E=c[F];if(typeof E==="undefined"){throw"You can't export to "+F+" format."}return d(E,u,q,j,D,B,C)};this.exportToFile=function(L,B,O,F,I){if(L==="pdf"){var N=this.exportTo(L,I,L,B);if(!b.jqx.pdfExport){b.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var M=new pdfDataExport(b.jqx.pdfExport.orientation,"pt",b.jqx.pdfExport.paperSize);M.cellInitialize();var K=b(N).find("th");var J=b(N).find("tr");var P=0;M.setFontSize(13*72/96);var G=595;switch(b.jqx.pdfExport.paperSize){case"legal":var G=612;if(b.jqx.pdfExport.orientation!=="portrait"){G=1008}break;case"letter":var G=612;if(b.jqx.pdfExport.orientation!=="portrait"){G=792}break;case"a3":var G=841;if(b.jqx.pdfExport.orientation!=="portrait"){G=1190}break;case"a4":var G=595;if(b.jqx.pdfExport.orientation!=="portrait"){G=842}break;case"a5":var G=420;if(b.jqx.pdfExport.orientation!=="portrait"){G=595}break}G-=20;var E=0;var C=[];b.each(K,function(Q){var R=parseInt(this.style.width);if(isNaN(R)){R=25}var S=R*72/96;C[Q]=S;E+=S});if(E>G){b.each(C,function(Q){C[Q]=(C[Q]/E)*100;C[Q]=C[Q]*G/100})}b.each(K,function(R){var V=C[R];var U=25*72/96;var T=M.getTextDimensions(b(this).html());var S=b(this).html();if(T.w+3>V){var Q=M.splitTextToSize(S,V-3);var W=Q[0];if(W.length>3){S=W.substring(0,W.length-3)+"..."}else{S=W.substring(0,1)+"..."}var Q=M.splitTextToSize(S,V-3);var W=Q[0];if(W!=S){S=W}}M.cell(10,10,V,U,S,P)});P++;b.each(J,function(X){if(X===0){return true}var R=b(this).children();var S=R.length>K.length;if(S){var aa=R.length-K.length;var ab="";var Z=C[0];var W=25*72/96;for(var T=0;T<=aa;T++){var Q=R[T].innerHTML;if(Q==="+"||Q==="-"){Q=Q+" "}if(Q==="&nbsp;"){Q="   "}ab+=Q}var V=M.getTextDimensions(ab);if(V.w+3>Z){var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U.length>3){ab=U.substring(0,U.length-3)+"..."}else{ab=U.substring(0,1)+"..."}var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U!=ab){ab=U}}M.cell(10,10,Z,W,ab,P);for(var T=aa+1;T<R.length;T++){var X=T-aa;var Z=C[X];var W=25*72/96;var ab=b(R[T]).html();var V=M.getTextDimensions(b(R[T]).html());if(V.w+3>Z){var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U.length>3){ab=U.substring(0,U.length-3)+"..."}else{ab=U.substring(0,1)+"..."}var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U!=ab){ab=U}}M.cell(10,10,Z,W,ab,P)}P++;return true}b.each(R,function(ad){var ah=C[ad];var ag=25*72/96;var af=b(this).html();var ae=M.getTextDimensions(b(this).html());if(ae.w+3>ah){var ac=M.splitTextToSize(af,ah-3);var ai=ac[0];if(ai.length>3){af=ai.substring(0,ai.length-3)+"..."}else{af=ai.substring(0,1)+"..."}var ac=M.splitTextToSize(af,ah-3);var ai=ac[0];if(ai!=af){af=ai}}M.cell(10,10,ah,ag,af,P)});P++});if(b.jqx.browser.msie&&b.jqx.browser.version<10){throw new Error("PDF export requires a browser with HTML5 support");return}M.save(B);return}var H=this.exportTo(L,I,L,B),D=i(B,L,H,O,F);D.submit();document.body.removeChild(D)};this.exportToLocalFile=function(F,C,D,B){var E=this.exportTo(F,D,B);document.location.href="data:application/octet-stream;filename="+C+","+encodeURIComponent(E)}};l.extend=function(v,w){if(w instanceof b.jqx.dataAdapter.DataExportModuleBase){c[v]=w}else{throw"The module "+v+" is not instance of DataExportModuleBase."}};return l}());b.jqx.dataAdapter.ArrayExporter=a})(jqxBaseFramework);(function(b){var a=function(){this.formatData=function(f,e,c,h){if(e==="date"){var d="";if(typeof f==="string"){d=b.jqx.dataFormat.tryparsedate(f);f=d}if(f===""||f===null){return""}d=b.jqx.dataFormat.formatdate(f,c,h);if(d.toString()=="NaN"||d==null){return""}f=d}else{if(e==="number"||e==="float"||e==="int"||e=="integer"){if(f===""||f===null){return""}if(!isNaN(new Number(f))){var g=b.jqx.dataFormat.formatnumber(f,c,h);if(g.toString()=="NaN"){return""}else{f=g}}}else{f=f}}if(f===null){return""}return f};this.getFormat=function(f){var c=f?f.formatString:"";var e=f?f.localization:"";var d="string";d=f?f.type:"string";if(d=="number"||d=="float"){if(!c){c="f2"}}if(d=="int"||d=="integer"){if(!c){c="n0"}}if(d=="date"){if(!c){c="d"}}return{type:d,formatString:c,localization:e}};this.beginFile=function(){throw"Not implemented!"};this.beginHeader=function(){throw"Not implemented!"};this.appendHeaderCell=function(){throw"Not implemented!"};this.endHeader=function(){throw"Not implemented!"};this.beginBody=function(){throw"Not implemented!"};this.beginRow=function(){throw"Not implemented!"};this.beginRows=function(){throw"Not implemented!"};this.endRows=function(){throw"Not implemented!"};this.appendBodyCell=function(){throw"Not implemented!"};this.endRow=function(){throw"Not implemented!"};this.endBody=function(){throw"Not implemented!"};this.endFile=function(){throw"Not implemented!"};this.getFile=function(){throw"Not implemented!"}};b.jqx.dataAdapter.DataExportModuleBase=a})(jqxBaseFramework);(function(d){var c=function(j){var e,h,g;var l=0;var i=this;this.beginFile=function(){e=""};this.beginHeader=function(){};this.appendHeaderCell=function(q,r,p,m,n){if(p){if(p.level!=undefined){if(n<p.maxLevel){return}else{if(n===p.maxLevel){if(m){k(q.text)}for(var o=0;o<p.maxLevel;o++){k("")}return}}}}g=m;if(m){k(q.text)}};this.endHeader=function(){this.endRow()};this.beginBody=function(){l=0};this.beginRow=function(){if((l>0)||(l==0&&g)){e+="\n"}l++};this.appendBodyCell=function(q,m,p,r,n){if(p){if(p.maxLevel!=undefined){if(n===p.maxLevel){k(q,m);for(var o=0;o<p.maxLevel-r.level-1;o++){k("",m)}return}}}k(q,m)};this.endRow=function(){e=e.substring(0,e.length-1)};this.endBody=function(){};this.endFile=function(){};this.getFile=function(){return e};function f(m,o){if(o){var n=i.getFormat(o);m=i.formatData(m,n.type,n.formatString,n.localization)}m='"'+m+'"';return m}function k(m,n){m=f(m,n);e+=m+j}};c.prototype=new d.jqx.dataAdapter.DataExportModuleBase();var a=function(){};a.prototype=new c(",");var b=function(){};b.prototype=new c("\t");d.jqx.dataAdapter.ArrayExporter.extend("csv",new a());d.jqx.dataAdapter.ArrayExporter.extend("tsv",new b())})(jqxBaseFramework);(function(d){var a=function(){var i=false;var g;var h;var j=0;this.setPDF=function(){i=true};this.beginFile=function(k){if(i||k==undefined){g='<table style="empty-cells: show;" cellspacing="0" cellpadding="2">'}else{g='<html>\n\t<head>\n\t\t<title></title>\n\t\t<meta http-equiv=Content-type content="text/html; charset=UTF-8">\n\t</head>\n\t<body>\n\t\t<table style="empty-cells: show;" cellspacing="0" cellpadding="2">'}};this.beginHeader=function(){if(i){g+="\n\t<thead><tr>"}else{g+="\n\t\t\t<thead>"}};this.appendHeaderCell=function(m,n,l,k){h=k;if(!k){return}if(i){g+='\n\t\t\t\t<th style="'+f(l)+'">'+m.text+"</th>"}else{if(l.disabled){return}if(l.merge){if(m.width){g+="\n\t\t\t\t<th colspan="+(1+l.merge)+' style="width: '+m.width+"px; "+f(l)+'">'+m.text+"</th>"}else{g+="\n\t\t\t\t<th colspan="+(1+l.merge)+' style="'+f(l)+'">'+m.text+"</th>"}}else{if(m.width){g+='\n\t\t\t\t<th style="width: '+m.width+"px; "+f(l)+'">'+m.text+"</th>"}else{g+='\n\t\t\t\t<th style="'+f(l)+'">'+m.text+"</th>"}}}};this.endHeader=function(){if(i){g+="\n\t</tr></thead>"}else{g+="\n\t\t\t</thead>"}};this.beginBody=function(){if(i){g+="\n\t<tbody>"}else{g+="\n\t\t\t<tbody>"}j=0};this.beginRow=function(){if(i){g+="\n\t<tr>"}else{g+="\n\t\t\t\t<tr>"}j++};this.appendBodyCell=function(l,n,k){var m=this.getFormat(n);if(l===""){l="&nbsp;"}if(i){if(j==1&&!h){g+='\n\t\t\t\t\t<td style="'+f(k)+' border-top-width: 1px;">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}else{g+='\n\t\t\t\t\t<td style="'+f(k)+'">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}}else{if(k.merge){if(j==1&&!h){g+="\n\t\t\t\t\t<td colspan="+(1+k.merge)+' style="'+f(k)+' border-top-width: 1px;">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}else{g+="\n\t\t\t\t\t<td colspan="+(1+k.merge)+' style="'+f(k)+'">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}}else{if(j==1&&!h){g+='\n\t\t\t\t\t<td style="'+f(k)+' border-top-width: 1px;">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}else{g+='\n\t\t\t\t\t<td style="'+f(k)+'">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}}}};this.endRow=function(){if(i){g+="\n\t</tr>"}else{g+="\n\t\t\t\t</tr>"}};this.endBody=function(){if(i){g+="\n\t</tbody>"}else{g+="\n\t\t\t</tbody>"}};this.endFile=function(k){if(i||k==undefined){g+="\n</table>"}else{g+="\n\t\t</table>\n\t</body>\n</html>\n"}};this.getFile=function(){return g};function f(m){var k="";for(var l in m){if(m.hasOwnProperty(l)){if(i&&l=="font-size"){m[l]="100%"}k+=l+":"+m[l]+";"}}return k}};a.prototype=new d.jqx.dataAdapter.DataExportModuleBase();var e=function(){};e.prototype=new a();var c=function(){};c.prototype=new a();var b=new c();d.jqx.dataAdapter.ArrayExporter.extend("html",new e());d.jqx.dataAdapter.ArrayExporter.extend("pdf",b)})(jqxBaseFramework);(function(b){var a=function(){var h,l,d,i,c,j,m={style:"",stylesMap:{font:{color:"Color","font-family":"FontName","font-style":"Italic","font-weight":"Bold"},interior:{"background-color":"Color",background:"Color"},alignment:{left:"Left",center:"Center",right:"Right"}},startStyle:function(p){this.style+='\n\t\t<Style ss:ID="'+p+'" ss:Name="'+p+'">'},buildAlignment:function(q){if(q["text-align"]){var r=this.stylesMap.alignment[q["text-align"]];if(!r){r="Left"}var p='\n\t\t\t<Alignment ss:Vertical="Bottom" ss:Horizontal="'+r+'"/>';this.style+=p}},buildBorder:function(s){if(s["border-color"]){var r="\n\t\t\t<Borders>";var u='\n\t\t\t\t<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';var p='\n\t\t\t\t<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';var q='\n\t\t\t\t<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';var t='\n\t\t\t\t<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';r+=u;r+=p;r+=q;r+=t;r+="\n\t\t\t</Borders>";this.style+=r}},buildFont:function(q){var r=this.stylesMap.font,p="\n\t\t\t<Font ";for(var s in r){if(typeof q[s]!=="undefined"){if(s==="font-style"&&q[s].toString().toLowerCase()==="italic"){p+='ss:Italic="1" '}else{if(s==="font-weight"&&q[s].toString().toLowerCase()==="bold"){p+='ss:Bold="1" '}else{if(s==="color"){p+="ss:"+r[s]+'="'+q[s]+'" '}}}}}p+="/>";this.style+=p},buildInterior:function(q){var r=this.stylesMap.interior,t="\n\t\t\t<Interior ";var p=false;for(var s in r){if(typeof q[s]!=="undefined"){t+="ss:"+r[s]+'="'+q[s]+'" ';p=true}}if(p){t+='ss:Pattern="Solid"'}t+="/>";this.style+=t},buildFormat:function(q){if(q.dataType=="number"||q.dataType=="float"||q.dataType=="int"||q.dataType=="integer"){var p=q.formatString;if(p==""||p.indexOf("n")!=-1||p.indexOf("N")!=-1){this.style+='\n\t\t\t<NumberFormat ss:Format="0"/>'}else{if(p=="f"||p=="F"||p=="D"||p.indexOf("d")!=-1){this.style+='\n\t\t\t<NumberFormat ss:Format="#,##0.00_);[Red](#,##0.00)"/>'}else{if(p.indexOf("p")!=-1||p.indexOf("P")!=-1){this.style+='\n\t\t\t<NumberFormat ss:Format="Percent"/>'}else{if(p.indexOf("c")!=-1||p.indexOf("C")!=-1){if(parseInt(q.currencysymbol.charCodeAt(0))==8364){this.style+='\n\t\t\t<NumberFormat ss:Format="Euro Currency"/>'}else{this.style+='\n\t\t\t<NumberFormat ss:Format="Currency"/>'}}}}}}else{if(q.dataType=="date"){this.style+='\n\t\t\t<NumberFormat ss:Format="Short Date"/>'}}},closeStyle:function(){this.style+="\n\t\t</Style>"},toString:function(){var p=this.style;this.style="";return p}};this.beginFile=function(){c={};j=0;h='<?xml version="1.0"?>\n\t<?mso-application progid="Excel.Sheet"?> \n\t<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" \n\txmlns:o="urn:schemas-microsoft-com:office:office" \n\txmlns:x="urn:schemas-microsoft-com:office:excel" \n\txmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" \n\txmlns:html="http://www.w3.org/TR/REC-html40"> \n\t<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> \n\t<Version>12.00</Version> \n\t</DocumentProperties> \n\t<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> \n\t<WindowHeight>8130</WindowHeight> \n\t<WindowWidth>15135</WindowWidth> \n\t<WindowTopX>120</WindowTopX> \n\t<WindowTopY>45</WindowTopY> \n\t<ProtectStructure>False</ProtectStructure> \n\t<ProtectWindows>False</ProtectWindows> \n\t</ExcelWorkbook> \n\t<Styles>'};this.beginHeader=function(){l='\n\t<Worksheet ss:Name="Sheet1">\n\t\t<Table>';d=[];i=[]};this.appendHeaderCell=function(r,s,q){var p=r.width!=undefined?r.width:r.text.length*10;l+='\n\t\t\t<Column ss:Width="'+p+'"/>';d.push(r);i.push(q)};this.endHeader=function(p){if(p){this.beginRow();for(var q=0;q<d.length;q+=1){if(i[q].disabled){continue}g.call(this,d[q]["text"],null,i[q])}this.endRow()}};this.beginBody=function(){};this.beginRow=function(q){if(q!=undefined){l+="\n\t\t\t";for(var p=0;p<q;p++){l+="\t"}l+="<Row>";return}l+="\n\t\t\t<Row>"};this.beginRows=function(p){l+="\n\t\t\t\t<Rows>"};this.appendBodyCell=function(r,p,q,s){g.call(this,r,p,q,s)};this.endRow=function(q){if(q!=undefined){l+="\n\t\t\t";for(var p=0;p<q;p++){l+="\t"}l+="</Row>";return}l+="\n\t\t\t</Row>"};this.endRows=function(q){if(q!=undefined){l+="\n\t\t\t";for(var p=0;p<q;p++){l+="\t"}l+="</Rows>";return}};this.endBody=function(){l+="\n\t\t</Table>"};this.endFile=function(){l+="\n\t</Worksheet>\n</Workbook>";h+="\n\t</Styles>"};this.getFile=function(){return h+l};function g(s,v,r,u){var q="String";var t=this.getFormat(v);if(s!=null&&s.toString().substring(0,3)=="_AG"){s=s.toString().substring(3);q="String"}else{if(t.type=="date"){s=this.formatData(s,t.type,t.formatString,t.localization);if(s===null||s===""){s="";q="String"}}if(t.type=="string"){if(s===null||s===undefined){s=""}else{if(s.toString().indexOf("&")>=0){s=s.toString().replace(/&/g,"&amp;")}if(s.toString().indexOf(">")>=0){s=s.toString().replace(/>/g,"&gt;")}if(s.toString().indexOf("<")>=0){s=s.toString().replace(/</g,"&lt;")}if(s.toString().indexOf('"')>=0){s=s.toString().replace(/"/g,"&quot;")}if(s.toString().indexOf("'")>=0){s=s.toString().replace(/'/g,"&apos;")}}}if(r.dataType=="number"||r.dataType=="float"||r.dataType=="int"||r.dataType=="integer"){q="Number";s=parseFloat(s);if(s===null||isNaN(s)||s===""){s="";q="String"}if(s&&q!="String"&&s!=""){if(v&&v.formatString&&v.formatString.indexOf("p")>=0){s=s/100}}r.currencysymbol=v.localization.currencysymbol}}var p=f(r);if(r.merge){l+='\n\t\t\t\t<Cell ss:MergeAcross="'+r.merge+'" ss:StyleID="'+p+'"><Data ss:Type="'+q+'">'+s+"</Data></Cell>"}else{l+='\n\t\t\t\t<Cell ss:StyleID="'+p+'"><Data ss:Type="'+q+'">'+s+"</Data></Cell>"}}function n(){j+=1;return"xls-style-"+j}function k(q){for(var p in c){if(o(q,c[p])&&o(c[p],q)){return p}}return undefined}function o(t,q){var s=true;for(var r in t){if(t[r]!==q[r]){s=false}}return s}function e(q,p){m.startStyle(q);m.buildAlignment(p);m.buildBorder(p);m.buildFont(p);m.buildInterior(p);m.buildFormat(p);m.closeStyle();h+=m.toString()}function f(p){if(!p){return""}var q=k(p);if(typeof q==="undefined"){q=n();c[q]=p;e(q,p)}return q}};a.prototype=new b.jqx.dataAdapter.DataExportModuleBase();b.jqx.dataAdapter.ArrayExporter.extend("xls",new a())})(jqxBaseFramework);(function(b){var a=function(){var e,c,d;this.beginFile=function(){e='<?xml version="1.0" encoding="UTF-8" ?>';e+="\n<table>"};this.beginHeader=function(){c=[]};this.appendHeaderCell=function(f,g){c.push(g)};this.endHeader=function(){};this.beginBody=function(g,f){};this.beginRow=function(g){if(g!=undefined){if(this.hierarchy){e+="\n\t";for(var f=0;f<g;f++){e+="\t\t"}e+="<row>";d=0;return}}e+="\n\t<row>";d=0};this.beginRows=function(g){if(g!=undefined){e+="\n\t\t";for(var f=0;f<g;f++){e+="\t\t"}e+="<rows>";d=0;return}e+="\n\t\t<rows>"};this.appendBodyCell=function(j,n,g,m,h,l){var k=this.getFormat(n);j=this.formatData(j,k.type,k.formatString,k.localization);if(k.type=="string"){if(j.toString().indexOf("&")>=0){j=j.toString().replace(/&/g,"&amp;")}if(j.toString().indexOf(">")>=0){j=j.toString().replace(/>/g,"&gt;")}if(j.toString().indexOf("<")>=0){j=j.toString().replace(/</g,"&lt;")}if(j.toString().indexOf('"')>=0){j=j.toString().replace(/"/g,"&quot;")}if(j.toString().indexOf("'")>=0){j=j.toString().replace(/'/g,"&apos;")}}if(m.level!=undefined){if(this.hierarchy){e+="\n\t\t";for(var f=0;f<m.level;f++){e+="\t\t"}if(l===undefined){e+="<"+c[d]+">"+j+"</"+c[d]+">"}else{e+="<"+l+">"+j+"</"+l+">"}}else{if(l!=undefined){e+="\n\t\t<"+l+">"+j+"</"+l+">"}else{e+="\n\t\t<"+c[d]+">"+j+"</"+c[d]+">"}}}else{e+="\n\t\t<"+c[d]+">"+j+"</"+c[d]+">"}d++};this.endRow=function(g){if(g!=undefined){if(this.hierarchy){e+="\n\t";for(var f=0;f<g;f++){e+="\t\t"}e+="</row>";d=0;return}}e+="\n\t</row>";d=0};this.endRows=function(g){if(g!=undefined){e+="\n\t\t";for(var f=0;f<g;f++){e+="\t\t"}e+="</rows>";d=0;return}e+="\n\t\t</rows>"};this.endBody=function(){};this.endFile=function(){e+="\n</table>"};this.getFile=function(){return e}};a.prototype=new b.jqx.dataAdapter.DataExportModuleBase();b.jqx.dataAdapter.ArrayExporter.extend("xml",new a())})(jqxBaseFramework);(function(d){var j=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,l={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(n){return'"'+n.replace(j,function(o){var p=l[o];return typeof p==="string"?p:"\\u"+("0000"+o.charCodeAt(0).toString(16)).slice(-4)})+'"'}function b(o){return o<10?"0"+o:o}function e(o){var n;if(isFinite(o.valueOf())){n=o.getUTCFullYear()+"-"+b(o.getUTCMonth()+1)+"-"+b(o.getUTCDate())+"T"+b(o.getUTCHours())+":"+b(o.getUTCMinutes())+":"+b(o.getUTCSeconds())+'Z"'}else{n="null"}return n}function g(q){var n=q.length,o=[],p;for(p=0;p<n;p++){o.push(h(p,q)||"null")}return"["+o.join(",")+"]"}function m(q){var o=[],p,n;for(p in q){if(Object.prototype.hasOwnProperty.call(q,p)){n=h(p,q);if(n){o.push(a(p)+":"+n)}}}return"{"+o.join(",")+"}"}function i(n){switch(Object.prototype.toString.call(n)){case"[object Date]":return e(n);case"[object Array]":return g(n)}return m(n)}function k(o,n){switch(n){case"string":return a(o);case"number":case"float":case"integer":case"int":return isFinite(o)?o:"null";case"boolean":return o}return"null"}function h(o,n){var q=n[o],p=typeof q;if(q&&typeof q==="object"&&typeof q.toJSON==="function"){q=q.toJSON(o);p=typeof q}if(/(number|float|int|integer|string|boolean)/.test(p)||(!q&&p==="object")){return k(q,p)}else{return i(q)}}function f(n){if(window.JSON&&typeof window.JSON.stringify==="function"){return window.JSON.stringify(n)}return h("",{"":n})}var c=function(){var q=this;this.prepareData=function(t,v){if(v){var u=q.getFormat(v);t=q.formatData(t,u.type,u.formatString,u.localization)}return t};var n,p,r,o=[],s=0;this.beginFile=function(){p=[]};this.beginHeader=function(){};this.appendHeaderCell=function(t){};this.endHeader=function(){};this.beginBody=function(u,t){};this.beginRow=function(){if(hierarchy){o[s]={}}else{r={}}};this.beginRows=function(){o[s].rows=[];s++;o[s]={}};this.endRows=function(){s--};this.appendBodyCell=function(u,t){var v=this.prepareData(u,t);if(hierarchy){o[s][t.text]=v}else{r[t.text]=v}};this.endRow=function(){if(hierarchy){if(s==0){p.push(o[s])}else{o[s-1].rows.push(o[s])}}else{p.push(r)}};this.endBody=function(){};this.endFile=function(){n=f(p)};this.getFile=function(){return n}};c.prototype=new d.jqx.dataAdapter.DataExportModuleBase();d.jqx.dataAdapter.ArrayExporter.extend("json",new c())})(jqxBaseFramework);var pdfDataExport=(function(){if(typeof btoa==="undefined"){window.btoa=function(m){var h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",s=h.split(""),g,f,e,q,p,o,n,t,l=0,u=0,k="",j=[],d;do{g=m.charCodeAt(l++);f=m.charCodeAt(l++);e=m.charCodeAt(l++);t=g<<16|f<<8|e;q=t>>18&63;p=t>>12&63;o=t>>6&63;n=t&63;j[u++]=s[q]+s[p]+s[o]+s[n]}while(l<m.length);k=j.join("");d=m.length%3;return(d?k.slice(0,d-3):k)+"===".slice(d||3)}}if(typeof atob==="undefined"){window.atob=function(l){var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",f,e,d,p,o,n,m,q,k=0,r=0,h="",j=[];if(!l){return l}l+="";do{p=g.indexOf(l.charAt(k++));o=g.indexOf(l.charAt(k++));n=g.indexOf(l.charAt(k++));m=g.indexOf(l.charAt(k++));q=p<<18|o<<12|n<<6|m;f=q>>16&255;e=q>>8&255;d=q&255;if(n===64){j[r++]=String.fromCharCode(f)}else{if(m===64){j[r++]=String.fromCharCode(f,e)}else{j[r++]=String.fromCharCode(f,e,d)}}}while(k<l.length);h=j.join("");return h}}var c=typeof Object.keys==="function"?function(d){return Object.keys(d).length}:function(d){var f=0,g;for(g in d){if(d.hasOwnProperty(g)){f++}}return f},a=function(d){this.topics={};this.context=d;this.publish=function(h,m){if(this.topics[h]){var j=this.topics[h],o=[],n,g,e,f,k=function(){};m=Array.prototype.slice.call(arguments,1);for(g=0,e=j.length;g<e;g++){f=j[g];n=f[0];if(f[1]){f[0]=k;o.push(g)}n.apply(this.context,m)}for(g=0,e=o.length;g<e;g++){j.splice(o[g],1)}}};this.subscribe=function(e,g,f){if(!this.topics[e]){this.topics[e]=[[g,f]]}else{this.topics[e].push([g,f])}return{topic:e,callback:g}};this.unsubscribe=function(h){if(this.topics[h.topic]){var f=this.topics[h.topic],g,e;for(g=0,e=f.length;g<e;g++){if(f[g][0]===h.callback){f.splice(g,1)}}}}};function b(D,ad,L,U){if(typeof D==="undefined"){D="p"}else{D=D.toString().toLowerCase()}if(typeof ad==="undefined"){ad="mm"}if(typeof L==="undefined"){L="a4"}if(typeof U==="undefined"&&typeof zpipe==="undefined"){U=false}var aq=L.toString().toLowerCase(),am="0.9.0rc2",s=[],E=0,at=U,T="1.3",M={a3:[841.89,1190.55],a4:[595.28,841.89],a5:[420.94,595.28],letter:[612,792],legal:[612,1008]},ac="0 g",G="0 G",g=0,f=[],m=2,u=false,C=[],ag={},P={},ah=16,d,y=0.200025,A,B,ai,N={title:"",subject:"",author:"",keywords:"",creator:""},Q=0,S=0,O={},F=new a(O),ae,ao,o=function(i){return i.toFixed(2)},n=function(i){return i.toFixed(3)},z=function(i){var k=(i).toFixed(0);if(i<10){return"0"+k}else{return k}},q=function(i){var k=(i).toFixed(0);if(k.length<10){return new Array(11-k.length).join("0")+k}else{return k}},aa=function(i){if(u){f[g].push(i)}else{s.push(i);E+=i.length+1}},v=function(){m++;C[m]=E;aa(m+" 0 obj");return m},J=function(i){aa("stream");aa(i);aa("endstream")},ak,R,an,aj,Z=function(){ak=B*ai;R=A*ai;var az,ay,k,au,av,ax,aw;for(az=1;az<=g;az++){v();aa("<</Type /Page");aa("/Parent 1 0 R");aa("/Resources 2 0 R");aa("/Contents "+(m+1)+" 0 R>>");aa("endobj");ay=f[az].join("\n");v();if(at){k=[];for(av=0;av<ay.length;++av){k[av]=ay.charCodeAt(av)}aw=adler32cs.from(ay);ax=new Deflater(6);ax.append(new Uint8Array(k));ay=ax.flush();k=[new Uint8Array([120,156]),new Uint8Array(ay),new Uint8Array([aw&255,(aw>>8)&255,(aw>>16)&255,(aw>>24)&255])];ay="";for(av in k){if(k.hasOwnProperty(av)){ay+=String.fromCharCode.apply(null,k[av])}}aa("<</Length "+ay.length+" /Filter [/FlateDecode]>>")}else{aa("<</Length "+ay.length+">>")}J(ay);aa("endobj")}C[1]=E;aa("1 0 obj");aa("<</Type /Pages");an="/Kids [";for(av=0;av<g;av++){an+=(3+2*av)+" 0 R "}aa(an+"]");aa("/Count "+g);aa("/MediaBox [0 0 "+o(ak)+" "+o(R)+"]");aa(">>");aa("endobj")},W=function(i){i.objectNumber=v();aa("<</BaseFont/"+i.PostScriptName+"/Type/Font");if(typeof i.encoding==="string"){aa("/Encoding/"+i.encoding)}aa("/Subtype/Type1>>");aa("endobj")},I=function(){var i;for(i in ag){if(ag.hasOwnProperty(i)){W(ag[i])}}},K=function(){F.publish("putXobjectDict")},w=function(){aa("/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]");aa("/Font <<");var i;for(i in ag){if(ag.hasOwnProperty(i)){aa("/"+i+" "+ag[i].objectNumber+" 0 R")}}aa(">>");aa("/XObject <<");K();aa(">>")},h=function(){I();F.publish("putResources");C[2]=E;aa("2 0 obj");aa("<<");w();aa(">>");aa("endobj");F.publish("postPutResources")},l=function(au,k,av){var i;if(P[k]===i){P[k]={}}P[k][av]=au},ar={},t=function(i,av,ax,au){var aw="F"+(c(ag)+1).toString(10),k=ag[aw]={id:aw,PostScriptName:i,fontName:av,fontStyle:ax,encoding:au,metadata:{}};l(aw,av,ax);F.publish("addFont",k);return aw},e=function(){var k="helvetica",aD="times",aF="courier",aC="normal",aB="bold",aA="italic",aE="bolditalic",au="StandardEncoding",ax=[["Helvetica",k,aC],["Helvetica-Bold",k,aB],["Helvetica-Oblique",k,aA],["Helvetica-BoldOblique",k,aE],["Courier",aF,aC],["Courier-Bold",aF,aB],["Courier-Oblique",aF,aA],["Courier-BoldOblique",aF,aE],["Times-Roman",aD,aC],["Times-Bold",aD,aB],["Times-Italic",aD,aA],["Times-BoldItalic",aD,aE]],az,av,ay,aw;for(az=0,av=ax.length;az<av;az++){ay=t(ax[az][0],ax[az][1],ax[az][2],au);aw=ax[az][0].split("-");l(ay,aw[0],aw[1]||"")}F.publish("addFonts",{fonts:ag,dictionary:P})},r=function(aE,av){var aA,ay,ax,aw,aC,aB,au,aD,k,az;if(av===ax){av={}}aw=av.sourceEncoding?aw:"Unicode";aB=av.outputEncoding;if((av.autoencode||aB)&&ag[d].metadata&&ag[d].metadata[aw]&&ag[d].metadata[aw].encoding){aC=ag[d].metadata[aw].encoding;if(!aB&&ag[d].encoding){aB=ag[d].encoding}if(!aB&&aC.codePages){aB=aC.codePages[0]}if(typeof aB==="string"){aB=aC[aB]}if(aB){aD=false;au=[];for(aA=0,ay=aE.length;aA<ay;aA++){k=aB[aE.charCodeAt(aA)];if(k){au.push(String.fromCharCode(k))}else{au.push(aE[aA])}if(au[aA].charCodeAt(0)>>8){aD=true}}aE=au.join("")}}aA=aE.length;while(aD===ax&&aA!==0){if(aE.charCodeAt(aA-1)>>8){aD=true}aA--}if(!aD){return aE}else{au=av.noBOM?[]:[254,255];for(aA=0,ay=aE.length;aA<ay;aA++){k=aE.charCodeAt(aA);az=k>>8;if(az>>8){throw new Error("Character at position "+aA.toString(10)+" of string '"+aE+"' exceeds 16bits. Cannot be encoded into UCS-2 BE")}au.push(az);au.push(k-(az<<8))}return String.fromCharCode.apply(ax,au)}},Y=function(k,i){return r(k,i).replace(/\\/g,"\\\\").replace(/\(/g,"\\(").replace(/\)/g,"\\)")},X=function(){aa("/Producer (pdfDataExport "+am+")");if(N.title){aa("/Title ("+Y(N.title)+")")}if(N.subject){aa("/Subject ("+Y(N.subject)+")")}if(N.author){aa("/Author ("+Y(N.author)+")")}if(N.keywords){aa("/Keywords ("+Y(N.keywords)+")")}if(N.creator){aa("/Creator ("+Y(N.creator)+")")}var i=new Date();aa("/CreationDate (D:"+[i.getFullYear(),z(i.getMonth()+1),z(i.getDate()),z(i.getHours()),z(i.getMinutes()),z(i.getSeconds())].join("")+")")},V=function(){aa("/Type /Catalog");aa("/Pages 1 0 R");aa("/OpenAction [3 0 R /FitH null]");aa("/PageLayout /OneColumn");F.publish("putCatalog")},j=function(){aa("/Size "+(m+1));aa("/Root "+m+" 0 R");aa("/Info "+(m-1)+" 0 R")},ap=function(){g++;u=true;f[g]=[]},af=function(){ap();aa(o(y*ai)+" w");aa(G);if(Q!==0){aa(Q.toString(10)+" J")}if(S!==0){aa(S.toString(10)+" j")}F.publish("addPage",{pageNumber:g})},x=function(au,aw){var i,k;if(au===k){au=ag[d].fontName}if(aw===k){aw=ag[d].fontStyle}try{i=P[au][aw]}catch(av){i=k}if(!i){throw new Error("Unable to look up font label for font '"+au+"', '"+aw+"'. Refer to getFontList() for available fonts.")}return i},p=function(){u=false;s=[];C=[];aa("%PDF-"+T);Z();h();v();aa("<<");X();aa(">>");aa("endobj");v();aa("<<");V();aa(">>");aa("endobj");var au=E,k;aa("xref");aa("0 "+(m+1));aa("0000000000 65535 f ");for(k=1;k<=m;k++){aa(q(C[k])+" 00000 n ")}aa("trailer");aa("<<");j();aa(">>");aa("startxref");aa(au);aa("%%EOF");u=true;return s.join("\n")},ab=function(i){var k="S";if(i==="F"){k="f"}else{if(i==="FD"||i==="DF"){k="B"}}return k},H=function(ax,au){var aw,az,ay,aA,av,k;switch(ax){case aw:return p();case"save":if(navigator.getUserMedia){if(window.URL===undefined){return O.output("dataurlnewwindow")}else{if(window.URL.createObjectURL===undefined){return O.output("dataurlnewwindow")}}}az=p();ay=az.length;aA=new Uint8Array(new ArrayBuffer(ay));for(av=0;av<ay;av++){aA[av]=az.charCodeAt(av)}k=new Blob([aA],{type:"application/pdf"});saveAs(k,au);break;case"datauristring":case"dataurlstring":return"data:application/pdf;base64,"+btoa(p());case"datauri":case"dataurl":document.location.href="data:application/pdf;base64,"+btoa(p());break;case"dataurlnewwindow":window.open("data:application/pdf;base64,"+btoa(p()));break;default:throw new Error('Output type "'+ax+'" is not supported.')}};if(ad==="pt"){ai=1}else{if(ad==="mm"){ai=72/25.4}else{if(ad==="cm"){ai=72/2.54}else{if(ad==="in"){ai=72}else{throw ("Invalid unit: "+ad)}}}}if(M.hasOwnProperty(aq)){A=M[aq][1]/ai;B=M[aq][0]/ai}else{try{A=L[1];B=L[0]}catch(al){throw ("Invalid format: "+L)}}if(D==="p"||D==="portrait"){D="p";if(B>A){ae=B;B=A;A=ae}}else{if(D==="l"||D==="landscape"){D="l";if(A>B){ae=B;B=A;A=ae}}else{throw ("Invalid orientation: "+D)}}O.internal={pdfEscape:Y,getStyle:ab,getFont:function(){return ag[x.apply(O,arguments)]},getFontSize:function(){return ah},btoa:btoa,write:function(i,av,au,k){aa(arguments.length===1?i:Array.prototype.join.call(arguments," "))},getCoordinateString:function(i){return o(i*ai)},getVerticalCoordinateString:function(i){return o((A-i)*ai)},collections:{},newObject:v,putStream:J,events:F,scaleFactor:ai,pageSize:{width:B,height:A},output:function(k,i){return H(k,i)}};O.addPage=function(){af();return this};O.text=function(aD,aC,aA,au){var av,ay,ax,aB,k,az,aw;if(typeof aD==="number"){ay=aA;ax=aD;aB=aC;aD=ay;aC=ax;aA=aB}if(typeof aD==="string"&&aD.match(/[\n\r]/)){aD=aD.split(/\r\n|\r|\n/g)}if(typeof au==="undefined"){au={noBOM:true,autoencode:true}}else{if(au.noBOM===av){au.noBOM=true}if(au.autoencode===av){au.autoencode=true}}if(typeof aD==="string"){az=Y(aD,au)}else{if(aD instanceof Array){k=aD.concat();for(aw=k.length-1;aw!==-1;aw--){k[aw]=Y(k[aw],au)}az=k.join(") Tj\nT* (")}else{throw new Error('Type of text must be string or Array. "'+aD+'" is not recognized.')}}aa("BT\n/"+d+" "+ah+" Tf\n"+ah+" TL\n"+ac+"\n"+o(aC*ai)+" "+o((A-aA)*ai)+" Td\n("+az+") Tj\nET");return this};O.line=function(k,av,i,au){aa(o(k*ai)+" "+o((A-av)*ai)+" m "+o(i*ai)+" "+o((A-au)*ai)+" l S");return this};O.lines=function(k,aD,aC,aM,aI){var aw,aK,aA,aB,az,ay,aG,aE,aL,aJ,ax,aH,av,aF,au;if(typeof k==="number"){aK=aC;aA=k;aB=aD;k=aK;aD=aA;aC=aB}aI=ab(aI);aM=aM===aw?[1,1]:aM;aa(n(aD*ai)+" "+n((A-aC)*ai)+" m ");az=aM[0];ay=aM[1];aE=k.length;aF=aD;au=aC;for(aG=0;aG<aE;aG++){aL=k[aG];if(aL.length===2){aF=aL[0]*az+aF;au=aL[1]*ay+au;aa(n(aF*ai)+" "+n((A-au)*ai)+" l")}else{aJ=aL[0]*az+aF;ax=aL[1]*ay+au;aH=aL[2]*az+aF;av=aL[3]*ay+au;aF=aL[4]*az+aF;au=aL[5]*ay+au;aa(n(aJ*ai)+" "+n((A-ax)*ai)+" "+n(aH*ai)+" "+n((A-av)*ai)+" "+n(aF*ai)+" "+n((A-au)*ai)+" c")}}aa(aI);return this};O.rect=function(i,ax,k,av,au){var aw=ab(au);aa([o(i*ai),o((A-ax)*ai),o(k*ai),o(-av*ai),"re",aw].join(" "));return this};O.triangle=function(av,ay,k,aw,i,au,ax){this.lines([[k-av,aw-ay],[i-k,au-aw],[av-i,ay-au]],av,ay,[1,1],ax);return this};O.roundedRect=function(k,az,au,aw,ay,ax,av){var i=4/3*(Math.SQRT2-1);this.lines([[(au-2*ay),0],[(ay*i),0,ay,ax-(ax*i),ay,ax],[0,(aw-2*ax)],[0,(ax*i),-(ay*i),ax,-ay,ax],[(-au+2*ay),0],[-(ay*i),0,-ay,-(ax*i),-ay,-ax],[0,(-aw+2*ax)],[0,-(ax*i),(ay*i),-ax,ay,-ax]],k+ay,az,[1,1],av);return this};O.ellipse=function(i,az,ax,aw,k){var ay=ab(k),av=4/3*(Math.SQRT2-1)*ax,au=4/3*(Math.SQRT2-1)*aw;aa([o((i+ax)*ai),o((A-az)*ai),"m",o((i+ax)*ai),o((A-(az-au))*ai),o((i+av)*ai),o((A-(az-aw))*ai),o(i*ai),o((A-(az-aw))*ai),"c"].join(" "));aa([o((i-av)*ai),o((A-(az-aw))*ai),o((i-ax)*ai),o((A-(az-au))*ai),o((i-ax)*ai),o((A-az)*ai),"c"].join(" "));aa([o((i-ax)*ai),o((A-(az+au))*ai),o((i-av)*ai),o((A-(az+aw))*ai),o(i*ai),o((A-(az+aw))*ai),"c"].join(" "));aa([o((i+av)*ai),o((A-(az+aw))*ai),o((i+ax)*ai),o((A-(az+au))*ai),o((i+ax)*ai),o((A-az)*ai),"c",ay].join(" "));return this};O.circle=function(i,av,au,k){return this.ellipse(i,av,au,au,k)};O.setProperties=function(i){var k;for(k in N){if(N.hasOwnProperty(k)&&i[k]){N[k]=i[k]}}return this};O.setFontSize=function(i){ah=i;return this};O.setFont=function(i,k){d=x(i,k);return this};O.setFontStyle=O.setFontType=function(k){var i;d=x(i,k);return this};O.getFontList=function(){var au={},k,av,i;for(k in P){if(P.hasOwnProperty(k)){au[k]=i=[];for(av in P[k]){if(P[k].hasOwnProperty(av)){i.push(av)}}}}return au};O.setLineWidth=function(i){aa((i*ai).toFixed(2)+" w");return this};O.setDrawColor=function(aw,av,au,i){var k;if(av===undefined||(i===undefined&&aw===av===au)){if(typeof aw==="string"){k=aw+" G"}else{k=o(aw/255)+" G"}}else{if(i===undefined){if(typeof aw==="string"){k=[aw,av,au,"RG"].join(" ")}else{k=[o(aw/255),o(av/255),o(au/255),"RG"].join(" ")}}else{if(typeof aw==="string"){k=[aw,av,au,i,"K"].join(" ")}else{k=[o(aw),o(av),o(au),o(i),"K"].join(" ")}}}aa(k);return this};O.setFillColor=function(aw,av,au,i){var k;if(av===undefined||(i===undefined&&aw===av===au)){if(typeof aw==="string"){k=aw+" g"}else{k=o(aw/255)+" g"}}else{if(i===undefined){if(typeof aw==="string"){k=[aw,av,au,"rg"].join(" ")}else{k=[o(aw/255),o(av/255),o(au/255),"rg"].join(" ")}}else{if(typeof aw==="string"){k=[aw,av,au,i,"k"].join(" ")}else{k=[o(aw),o(av),o(au),o(i),"k"].join(" ")}}}aa(k);return this};O.setTextColor=function(au,k,i){if((au===0&&k===0&&i===0)||(typeof k==="undefined")){ac=n(au/255)+" g"}else{ac=[n(au/255),n(k/255),n(i/255),"rg"].join(" ")}return this};O.CapJoinStyles={0:0,butt:0,but:0,bevel:0,1:1,round:1,rounded:1,circle:1,2:2,projecting:2,project:2,square:2,milter:2};O.setLineCap=function(i){var k=this.CapJoinStyles[i];if(k===undefined){throw new Error("Line cap style of '"+i+"' is not recognized. See or extend .CapJoinStyles property for valid styles")}Q=k;aa(k.toString(10)+" J");return this};O.setLineJoin=function(i){var k=this.CapJoinStyles[i];if(k===undefined){throw new Error("Line join style of '"+i+"' is not recognized. See or extend .CapJoinStyles property for valid styles")}S=k;aa(k.toString(10)+" j");return this};O.output=H;O.save=function(i){O.output("save",i)};for(ao in b.API){if(b.API.hasOwnProperty(ao)){if(ao==="events"&&b.API.events.length){(function(av,ax){var aw,au,k;for(k=ax.length-1;k!==-1;k--){aw=ax[k][0];au=ax[k][1];av.subscribe.apply(av,[aw].concat(typeof au==="function"?[au]:au))}}(F,b.API.events))}else{O[ao]=b.API[ao]}}}e();d="F1";af();F.publish("initialized");return O}b.API={events:[]};return b}());(function(i){var b=0,m=0,a,o,h,c={x:undefined,y:undefined,w:undefined,h:undefined,ln:undefined},f=1,e=false,d=function(p,t,q,r,s){c={x:p,y:t,w:q,h:r,ln:s}},k=function(){return c},j=function(p){b=p},l=function(){return b},n=function(p){m=p},g=function(p){return m};i.getTextDimensions=function(p){a=this.internal.getFont().fontName;o=this.internal.getFontSize();h=this.internal.getFont().fontStyle;var s=0.264583*72/25.4,q,r;r=document.createElement("font");r.id="pdfDataExportCell";r.style.fontStyle=h;r.style.fontName=a;r.style.fontSize=o+"pt";r.innerText=p;document.body.appendChild(r);q={w:(r.offsetWidth+1)*s,h:(r.offsetHeight+1)*s};document.body.removeChild(r);return q};i.cellAddPage=function(){this.addPage();d(undefined,undefined,undefined,undefined,undefined);e=true;f+=1;n(1)};i.cellInitialize=function(){b=0;c={x:undefined,y:undefined,w:undefined,h:undefined,ln:undefined};f=1;e=false;n(0)};i.cell=function(v,u,z,r,p,t){this.lnMod=this.lnMod===undefined?0:this.lnMod;if(this.printingHeaderRow!==true&&this.lnMod!==0){t=t+this.lnMod}if((((t*r)+u+(r*2))/f)>=this.internal.pageSize.height&&f===1&&!e){this.cellAddPage();if(this.printHeaders&&this.tableHeaderRow){this.printHeaderRow(t);this.lnMod+=1;t+=1}if(l()===0){j(Math.round((this.internal.pageSize.height-(r*2))/r))}}else{if(e&&k().ln!==t&&g()===l()){this.cellAddPage();if(this.printHeaders&&this.tableHeaderRow){this.printHeaderRow(t);this.lnMod+=1;t+=1}}}var A=k(),q=this.getTextDimensions(p),s=1;if(A.x!==undefined&&A.ln===t){v=A.x+A.w}if(A.y!==undefined&&A.y===u){u=A.y}if(A.h!==undefined&&A.h===r){r=A.h}if(A.ln!==undefined&&A.ln===t){t=A.ln;s=0}if(e){u=r*(g()+s)}else{u=(u+(r*Math.abs(l()*f-t-l())))}this.rect(v,u,z,r);this.text(p,v+3,u+r-3);n(g()+s);d(v,u,z,r,t);return this};i.getKeys=(typeof Object.keys==="function")?function(p){if(!p){return[]}return Object.keys(p)}:function(p){var q=[],r;for(r in p){if(p.hasOwnProperty(r)){q.push(r)}}return q};i.arrayMax=function(u,t){var p=u[0],q,s,r;for(q=0,s=u.length;q<s;q+=1){r=u[q];if(t){if(t(p,r)===-1){p=r}}else{if(r>p){p=r}}}return p};i.table=function(J,r,I){var v=[],p=[],D,z,B,x,E,y,G={},A={},u,s,H=[],C,F=[],t,q,w;this.lnMod=0;if(I){z=I.autoSize||false;B=this.printHeaders=I.printHeaders||true;x=I.autoStretch||true}if(!J){throw"No data for PDF table"}if(r===undefined||(r===null)){v=this.getKeys(J[0])}else{if(r[0]&&(typeof r[0]!=="string")){for(E=0,y=r.length;E<y;E+=1){D=r[E];v.push(D.name);p.push(D.prompt)}}else{v=r}}if(I.autoSize){w=function(K){return K[D]};for(E=0,y=v.length;E<y;E+=1){D=v[E];G[D]=J.map(w);H.push(this.getTextDimensions(p[E]||D).w);s=G[D];for(C=0,y=s.length;C<y;C+=1){u=s[C];H.push(this.getTextDimensions(u).w)}A[D]=i.arrayMax(H)}}if(I.printHeaders){for(E=0,y=v.length;E<y;E+=1){D=v[E];F.push([10,10,A[D],25,String(p.length?p[E]:D)])}this.setTableHeaderRow(F);this.printHeaderRow(1)}for(E=0,y=J.length;E<y;E+=1){t=J[E];for(C=0,q=v.length;C<q;C+=1){D=v[C];this.cell(10,10,A[D],25,String(t[D]),E+2)}}return this};i.setTableHeaderRow=function(p){this.tableHeaderRow=p};i.printHeaderRow=function(p){if(!this.tableHeaderRow){throw"Property tableHeaderRow does not exist."}var q,s,r,t;this.printingHeaderRow=true;for(r=0,t=this.tableHeaderRow.length;r<t;r+=1){q=this.tableHeaderRow[r];s=[].concat(q);this.cell.apply(this,s.concat(p))}this.printingHeaderRow=false}}(pdfDataExport.API));(function(c){var b=c.getCharWidthsArray=function(s,u){if(!u){u={}}var h=u.widths?u.widths:this.internal.getFont().metadata.Unicode.widths,r=h.fof?h.fof:1,n=u.kerning?u.kerning:this.internal.getFont().metadata.Unicode.kerning,p=n.fof?n.fof:1;var m,j,o,k,q=0,t=h[0]||r,g=[];for(m=0,j=s.length;m<j;m++){o=s.charCodeAt(m);g.push((h[o]||t)/r+(n[o]&&n[o][q]||0)/p);q=o}return g};var e=function(j){var h=j.length,g=0;while(h){h--;g+=j[h]}return g};var a=c.getStringUnitWidth=function(h,g){return e(b.call(this,h,g))};var d=function(g,n,h,j){var q=[];var m=0,k=g.length,p=0;while(m!==k&&p+n[m]<h){p+=n[m];m++}q.push(g.slice(0,m));var o=m;p=0;while(m!==k){if(p+n[m]>j){q.push(g.slice(o,m));p=0;o=m}p+=n[m];m++}if(o!==m){q.push(g.slice(o,m))}return q};var f=function(s,k,v){if(!v){v={}}var t=b(" ",v)[0];var r=s.split(" ");var w=[],x=[w],h=v.textIndent||0,u=0,p=0,g,q;var o,m,n;for(o=0,m=r.length;o<m;o++){g=r[o];q=b(g,v);p=e(q);if(h+u+p>k){if(p>k){n=d(g,q,k-(h+u),k);w.push(n.shift());w=[n.pop()];while(n.length){x.push([n.shift()])}p=e(q.slice(g.length-w[0].length))}else{w=[g]}x.push(w);h=p;u=t}else{w.push(g);h+=u+p;u=t}}var j=[];for(o=0,m=x.length;o<m;o++){j.push(x[o].join(" "))}return j};c.splitTextToSize=function(q,m,r){if(!r){r={}}var h=r.fontSize||this.internal.getFontSize(),g=(function(l){var t={0:1},i={};if(!l.widths||!l.kerning){var u=this.internal.getFont(l.fontName,l.fontStyle),s="Unicode";if(u.metadata[s]){return{widths:u.metadata[s].widths||t,kerning:u.metadata[s].kerning||i}}}else{return{widths:l.widths,kerning:l.kerning}}return{widths:t,kerning:i}}).call(this,r);var p;if(q.match(/[\n\r]/)){p=q.split(/\r\n|\r|\n/g)}else{p=[q]}var j=1*this.internal.scaleFactor*m/h;g.textIndent=r.textIndent?r.textIndent*1*this.internal.scaleFactor/h:0;var o,n,k=[];for(o=0,n=p.length;o<n;o++){k=k.concat(f(p[o],j,g))}return k}})(pdfDataExport.API);(function(c){var d="addImage_";var f=function(m){var l,h;if(!m.charCodeAt(0)===255||!m.charCodeAt(1)===216||!m.charCodeAt(2)===255||!m.charCodeAt(3)===224||!m.charCodeAt(6)==="J".charCodeAt(0)||!m.charCodeAt(7)==="F".charCodeAt(0)||!m.charCodeAt(8)==="I".charCodeAt(0)||!m.charCodeAt(9)==="F".charCodeAt(0)||!m.charCodeAt(10)===0){throw new Error("getJpegSize requires a binary jpeg file")}var j=m.charCodeAt(4)*256+m.charCodeAt(5);var k=4,g=m.length;while(k<g){k+=j;if(m.charCodeAt(k)!==255){throw new Error("getJpegSize could not find the size of the image")}if(m.charCodeAt(k+1)===192){h=m.charCodeAt(k+5)*256+m.charCodeAt(k+6);l=m.charCodeAt(k+7)*256+m.charCodeAt(k+8);return[l,h]}else{k+=2;j=m.charCodeAt(k)*256+m.charCodeAt(k+1)}}},b=function(g){var m=this.internal.newObject(),h=this.internal.write,l=this.internal.putStream;g.n=m;h("<</Type /XObject");h("/Subtype /Image");h("/Width "+g.w);h("/Height "+g.h);if(g.cs==="Indexed"){h("/ColorSpace [/Indexed /DeviceRGB "+(g.pal.length/3-1)+" "+(m+1)+" 0 R]")}else{h("/ColorSpace /"+g.cs);if(g.cs==="DeviceCMYK"){h("/Decode [1 0 1 0 1 0 1 0]")}}h("/BitsPerComponent "+g.bpc);if("f" in g){h("/Filter /"+g.f)}if("dp" in g){h("/DecodeParms <<"+g.dp+">>")}if("trns" in g&&g.trns.constructor==Array){var k="";for(var j=0;j<g.trns.length;j++){k+=(g[k][j]+" "+g.trns[j]+" ");h("/Mask ["+k+"]")}}if("smask" in g){h("/SMask "+(m+1)+" 0 R")}h("/Length "+g.data.length+">>");l(g.data);h("endobj")},e=function(){var g=this.internal.collections[d+"images"];for(var h in g){b.call(this,g[h])}},a=function(){var g=this.internal.collections[d+"images"],h=this.internal.write,k;for(var j in g){k=g[j];h("/I"+k.i,k.n,"0","R")}};c.addImage=function(g,s,q,p,t,l){if(typeof g==="object"&&g.nodeType===1){var j=document.createElement("canvas");j.width=g.clientWidth;j.height=g.clientHeight;var u=j.getContext("2d");if(!u){throw ("addImage requires canvas to be supported by browser.")}u.drawImage(g,0,0,j.width,j.height);g=j.toDataURL("image/jpeg");s="JPEG"}if(s.toUpperCase()!=="JPEG"){throw new Error("addImage currently only supports format 'JPEG', not '"+s+"'")}var i,n=this.internal.collections[d+"images"],m=this.internal.getCoordinateString,o=this.internal.getVerticalCoordinateString;if(g.substring(0,23)==="data:image/jpeg;base64,"){g=atob(g.replace("data:image/jpeg;base64,",""))}if(n){i=Object.keys?Object.keys(n).length:(function(w){var h=0;for(var v in w){if(w.hasOwnProperty(v)){h++}}return h})(n)}else{i=0;this.internal.collections[d+"images"]=n={};this.internal.events.subscribe("putResources",e);this.internal.events.subscribe("putXobjectDict",a)}var r=f(g);var k={w:r[0],h:r[1],cs:"DeviceRGB",bpc:8,f:"DCTDecode",i:i,data:g};n[i]=k;if(!t&&!l){t=-96;l=-96}if(t<0){t=(-1)*k.w*72/t/this.internal.scaleFactor}if(l<0){l=(-1)*k.h*72/l/this.internal.scaleFactor}if(t===0){t=l*k.w/k.h}if(l===0){l=t*k.h/k.w}this.internal.write("q",m(t),"0 0",m(l),m(q),o(p+l),"cm /I"+k.i,"Do Q");return this}})(pdfDataExport.API);(function(a){var e=function(q){var w="0123456789abcdef",o="klmnopqrstuvwxyz",h={};for(var r=0;r<o.length;r++){h[o[r]]=w[r]}var p,m={},n=1,t,k=m,g=[],s,l="",u="",v,j=q.length-1,f;r=1;while(r!=j){f=q[r];r+=1;if(f=="'"){if(t){v=t.join("");t=p}else{t=[]}}else{if(t){t.push(f)}else{if(f=="{"){g.push([k,v]);k={};v=p}else{if(f=="}"){s=g.pop();s[0][s[1]]=k;v=p;k=s[0]}else{if(f=="-"){n=-1}else{if(v===p){if(h.hasOwnProperty(f)){l+=h[f];v=parseInt(l,16)*n;n=+1;l=""}else{l+=f}}else{if(h.hasOwnProperty(f)){u+=h[f];k[v]=parseInt(u,16)*n;n=+1;v=p;u=""}else{u+=f}}}}}}}}return m};var d={codePages:["WinAnsiEncoding"],WinAnsiEncoding:e("{19m8n201n9q201o9r201s9l201t9m201u8m201w9n201x9o201y8o202k8q202l8r202m9p202q8p20aw8k203k8t203t8v203u9v2cq8s212m9t15m8w15n9w2dw9s16k8u16l9u17s9z17x8y17y9y}")},c={Unicode:{Courier:d,"Courier-Bold":d,"Courier-BoldOblique":d,"Courier-Oblique":d,Helvetica:d,"Helvetica-Bold":d,"Helvetica-BoldOblique":d,"Helvetica-Oblique":d,"Times-Roman":d,"Times-Bold":d,"Times-BoldItalic":d,"Times-Italic":d}},b={Unicode:{"Courier-Oblique":e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-BoldItalic":e("{'widths'{k3o2q4ycx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2r202m2n2n3m2o3m2p5n202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5n4l4m4m4m4n4m4o4s4p4m4q4m4r4s4s4y4t2r4u3m4v4m4w3x4x5t4y4s4z4s5k3x5l4s5m4m5n3r5o3x5p4s5q4m5r5t5s4m5t3x5u3x5v2l5w1w5x2l5y3t5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q2l6r3m6s3r6t1w6u1w6v3m6w1w6x4y6y3r6z3m7k3m7l3m7m2r7n2r7o1w7p3r7q2w7r4m7s3m7t2w7u2r7v2n7w1q7x2n7y3t202l3mcl4mal2ram3man3mao3map3mar3mas2lat4uau1uav3maw3way4uaz2lbk2sbl3t'fof'6obo2lbp3tbq3mbr1tbs2lbu1ybv3mbz3mck4m202k3mcm4mcn4mco4mcp4mcq5ycr4mcs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz2w203k6o212m6o2dw2l2cq2l3t3m3u2l17s3x19m3m}'kerning'{cl{4qu5kt5qt5rs17ss5ts}201s{201ss}201t{cks4lscmscnscoscpscls2wu2yu201ts}201x{2wu2yu}2k{201ts}2w{4qx5kx5ou5qx5rs17su5tu}2x{17su5tu5ou}2y{4qx5kx5ou5qx5rs17ss5ts}'fof'-6ofn{17sw5tw5ou5qw5rs}7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qs}3v{17su5tu5os5qs}7p{17su5tu}ck{4qu5kt5qt5rs17ss5ts}4l{4qu5kt5qt5rs17ss5ts}cm{4qu5kt5qt5rs17ss5ts}cn{4qu5kt5qt5rs17ss5ts}co{4qu5kt5qt5rs17ss5ts}cp{4qu5kt5qt5rs17ss5ts}6l{4qu5ou5qw5rt17su5tu}5q{ckuclucmucnucoucpu4lu}5r{ckuclucmucnucoucpu4lu}7q{cksclscmscnscoscps4ls}6p{4qu5ou5qw5rt17sw5tw}ek{4qu5ou5qw5rt17su5tu}el{4qu5ou5qw5rt17su5tu}em{4qu5ou5qw5rt17su5tu}en{4qu5ou5qw5rt17su5tu}eo{4qu5ou5qw5rt17su5tu}ep{4qu5ou5qw5rt17su5tu}es{17ss5ts5qs4qu}et{4qu5ou5qw5rt17sw5tw}eu{4qu5ou5qw5rt17ss5ts}ev{17ss5ts5qs4qu}6z{17sw5tw5ou5qw5rs}fm{17sw5tw5ou5qw5rs}7n{201ts}fo{17sw5tw5ou5qw5rs}fp{17sw5tw5ou5qw5rs}fq{17sw5tw5ou5qw5rs}7r{cksclscmscnscoscps4ls}fs{17sw5tw5ou5qw5rs}ft{17su5tu}fu{17su5tu}fv{17su5tu}fw{17su5tu}fz{cksclscmscnscoscps4ls}}}"),"Helvetica-Bold":e("{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}"),Courier:e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Courier-BoldOblique":e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-Bold":e("{'widths'{k3q2q5ncx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2l202m2n2n3m2o3m2p6o202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5x4l4s4m4m4n4s4o4s4p4m4q3x4r4y4s4y4t2r4u3m4v4y4w4m4x5y4y4s4z4y5k3x5l4y5m4s5n3r5o4m5p4s5q4s5r6o5s4s5t4s5u4m5v2l5w1w5x2l5y3u5z3m6k2l6l3m6m3r6n2w6o3r6p2w6q2l6r3m6s3r6t1w6u2l6v3r6w1w6x5n6y3r6z3m7k3r7l3r7m2w7n2r7o2l7p3r7q3m7r4s7s3m7t3m7u2w7v2r7w1q7x2r7y3o202l3mcl4sal2lam3man3mao3map3mar3mas2lat4uau1yav3maw3tay4uaz2lbk2sbl3t'fof'6obo2lbp3rbr1tbs2lbu2lbv3mbz3mck4s202k3mcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3rek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3m3u2l17s4s19m3m}'kerning'{cl{4qt5ks5ot5qy5rw17sv5tv}201t{cks4lscmscnscoscpscls4wv}2k{201ts}2w{4qu5ku7mu5os5qx5ru17su5tu}2x{17su5tu5ou5qs}2y{4qv5kv7mu5ot5qz5ru17su5tu}'fof'-6o7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qu}3v{17su5tu5os5qu}fu{17su5tu5ou5qu}7p{17su5tu5ou5qu}ck{4qt5ks5ot5qy5rw17sv5tv}4l{4qt5ks5ot5qy5rw17sv5tv}cm{4qt5ks5ot5qy5rw17sv5tv}cn{4qt5ks5ot5qy5rw17sv5tv}co{4qt5ks5ot5qy5rw17sv5tv}cp{4qt5ks5ot5qy5rw17sv5tv}6l{17st5tt5ou5qu}17s{ckuclucmucnucoucpu4lu4wu}5o{ckuclucmucnucoucpu4lu4wu}5q{ckzclzcmzcnzcozcpz4lz4wu}5r{ckxclxcmxcnxcoxcpx4lx4wu}5t{ckuclucmucnucoucpu4lu4wu}7q{ckuclucmucnucoucpu4lu}6p{17sw5tw5ou5qu}ek{17st5tt5qu}el{17st5tt5ou5qu}em{17st5tt5qu}en{17st5tt5qu}eo{17st5tt5qu}ep{17st5tt5ou5qu}es{17ss5ts5qu}et{17sw5tw5ou5qu}eu{17sw5tw5ou5qu}ev{17ss5ts5qu}6z{17sw5tw5ou5qu5rs}fm{17sw5tw5ou5qu5rs}fn{17sw5tw5ou5qu5rs}fo{17sw5tw5ou5qu5rs}fp{17sw5tw5ou5qu5rs}fq{17sw5tw5ou5qu5rs}7r{cktcltcmtcntcotcpt4lt5os}fs{17sw5tw5ou5qu5rs}ft{17su5tu5ou5qu}7m{5os}fv{17su5tu5ou5qu}fw{17su5tu5ou5qu}fz{cksclscmscnscoscps4ls}}}"),Helvetica:e("{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}"),"Helvetica-BoldOblique":e("{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}"),"Courier-Bold":e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-Italic":e("{'widths'{k3n2q4ycx2l201n3m201o5t201s2l201t2l201u2l201w3r201x3r201y3r2k1t2l2l202m2n2n3m2o3m2p5n202q5t2r1p2s2l2t2l2u3m2v4n2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w4n3x4n3y4n3z3m4k5w4l3x4m3x4n4m4o4s4p3x4q3x4r4s4s4s4t2l4u2w4v4m4w3r4x5n4y4m4z4s5k3x5l4s5m3x5n3m5o3r5p4s5q3x5r5n5s3x5t3r5u3r5v2r5w1w5x2r5y2u5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q1w6r3m6s3m6t1w6u1w6v2w6w1w6x4s6y3m6z3m7k3m7l3m7m2r7n2r7o1w7p3m7q2w7r4m7s2w7t2w7u2r7v2s7w1v7x2s7y3q202l3mcl3xal2ram3man3mao3map3mar3mas2lat4wau1vav3maw4nay4waz2lbk2sbl4n'fof'6obo2lbp3mbq3obr1tbs2lbu1zbv3mbz3mck3x202k3mcm3xcn3xco3xcp3xcq5tcr4mcs3xct3xcu3xcv3xcw2l2m2ucy2lcz2ldl4mdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr4nfs3mft3mfu3mfv3mfw3mfz2w203k6o212m6m2dw2l2cq2l3t3m3u2l17s3r19m3m}'kerning'{cl{5kt4qw}201s{201sw}201t{201tw2wy2yy6q-t}201x{2wy2yy}2k{201tw}2w{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}2x{17ss5ts5os}2y{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}'fof'-6o6t{17ss5ts5qs}7t{5os}3v{5qs}7p{17su5tu5qs}ck{5kt4qw}4l{5kt4qw}cm{5kt4qw}cn{5kt4qw}co{5kt4qw}cp{5kt4qw}6l{4qs5ks5ou5qw5ru17su5tu}17s{2ks}5q{ckvclvcmvcnvcovcpv4lv}5r{ckuclucmucnucoucpu4lu}5t{2ks}6p{4qs5ks5ou5qw5ru17su5tu}ek{4qs5ks5ou5qw5ru17su5tu}el{4qs5ks5ou5qw5ru17su5tu}em{4qs5ks5ou5qw5ru17su5tu}en{4qs5ks5ou5qw5ru17su5tu}eo{4qs5ks5ou5qw5ru17su5tu}ep{4qs5ks5ou5qw5ru17su5tu}es{5ks5qs4qs}et{4qs5ks5ou5qw5ru17su5tu}eu{4qs5ks5qw5ru17su5tu}ev{5ks5qs4qs}ex{17ss5ts5qs}6z{4qv5ks5ou5qw5ru17su5tu}fm{4qv5ks5ou5qw5ru17su5tu}fn{4qv5ks5ou5qw5ru17su5tu}fo{4qv5ks5ou5qw5ru17su5tu}fp{4qv5ks5ou5qw5ru17su5tu}fq{4qv5ks5ou5qw5ru17su5tu}7r{5os}fs{4qv5ks5ou5qw5ru17su5tu}ft{17su5tu5qs}fu{17su5tu5qs}fv{17su5tu5qs}fw{17su5tu5qs}}}"),"Times-Roman":e("{'widths'{k3n2q4ycx2l201n3m201o6o201s2l201t2l201u2l201w2w201x2w201y2w2k1t2l2l202m2n2n3m2o3m2p5n202q6o2r1m2s2l2t2l2u3m2v3s2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v1w3w3s3x3s3y3s3z2w4k5w4l4s4m4m4n4m4o4s4p3x4q3r4r4s4s4s4t2l4u2r4v4s4w3x4x5t4y4s4z4s5k3r5l4s5m4m5n3r5o3x5p4s5q4s5r5y5s4s5t4s5u3x5v2l5w1w5x2l5y2z5z3m6k2l6l2w6m3m6n2w6o3m6p2w6q2l6r3m6s3m6t1w6u1w6v3m6w1w6x4y6y3m6z3m7k3m7l3m7m2l7n2r7o1w7p3m7q3m7r4s7s3m7t3m7u2w7v3k7w1o7x3k7y3q202l3mcl4sal2lam3man3mao3map3mar3mas2lat4wau1vav3maw3say4waz2lbk2sbl3s'fof'6obo2lbp3mbq2xbr1tbs2lbu1zbv3mbz2wck4s202k3mcm4scn4sco4scp4scq5tcr4mcs3xct3xcu3xcv3xcw2l2m2tcy2lcz2ldl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek2wel2wem2wen2weo2wep2weq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr3sfs3mft3mfu3mfv3mfw3mfz3m203k6o212m6m2dw2l2cq2l3t3m3u1w17s4s19m3m}'kerning'{cl{4qs5ku17sw5ou5qy5rw201ss5tw201ws}201s{201ss}201t{ckw4lwcmwcnwcowcpwclw4wu201ts}2k{201ts}2w{4qs5kw5os5qx5ru17sx5tx}2x{17sw5tw5ou5qu}2y{4qs5kw5os5qx5ru17sx5tx}'fof'-6o7t{ckuclucmucnucoucpu4lu5os5rs}3u{17su5tu5qs}3v{17su5tu5qs}7p{17sw5tw5qs}ck{4qs5ku17sw5ou5qy5rw201ss5tw201ws}4l{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cm{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cn{4qs5ku17sw5ou5qy5rw201ss5tw201ws}co{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cp{4qs5ku17sw5ou5qy5rw201ss5tw201ws}6l{17su5tu5os5qw5rs}17s{2ktclvcmvcnvcovcpv4lv4wuckv}5o{ckwclwcmwcnwcowcpw4lw4wu}5q{ckyclycmycnycoycpy4ly4wu5ms}5r{cktcltcmtcntcotcpt4lt4ws}5t{2ktclvcmvcnvcovcpv4lv4wuckv}7q{cksclscmscnscoscps4ls}6p{17su5tu5qw5rs}ek{5qs5rs}el{17su5tu5os5qw5rs}em{17su5tu5os5qs5rs}en{17su5qs5rs}eo{5qs5rs}ep{17su5tu5os5qw5rs}es{5qs}et{17su5tu5qw5rs}eu{17su5tu5qs5rs}ev{5qs}6z{17sv5tv5os5qx5rs}fm{5os5qt5rs}fn{17sv5tv5os5qx5rs}fo{17sv5tv5os5qx5rs}fp{5os5qt5rs}fq{5os5qt5rs}7r{ckuclucmucnucoucpu4lu5os}fs{17sv5tv5os5qx5rs}ft{17ss5ts5qs}fu{17sw5tw5qs}fv{17sw5tw5qs}fw{17ss5ts5qs}fz{ckuclucmucnucoucpu4lu5os5rs}}}"),"Helvetica-Oblique":e("{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}")}};a.events.push(["addFonts",function(i){var f,g,h,k,j="Unicode",l;for(g in i.fonts){if(i.fonts.hasOwnProperty(g)){f=i.fonts[g];h=b[j][f.PostScriptName];if(h){if(f.metadata[j]){k=f.metadata[j]}else{k=f.metadata[j]={}}k.widths=h.widths;k.kerning=h.kerning}l=c[j][f.PostScriptName];if(l){if(f.metadata[j]){k=f.metadata[j]}else{k=f.metadata[j]={}}k.encoding=l;if(l.codePages&&l.codePages.length){f.encoding=l.codePages[0]}}}}}])})(pdfDataExport.API);var saveAs=saveAs||(navigator.msSaveBlob&&navigator.msSaveBlob.bind(navigator))||(function(h){var r=h.document,l=function(){return h.URL||h.webkitURL||h},e=h.URL||h.webkitURL||h,n=$("<a></a>")[0],g="download" in n,j=function(t){var s=r.createEvent("MouseEvents");s.initMouseEvent("click",true,false,h,0,0,0,0,0,false,false,false,false,0,null);return t.dispatchEvent(s)},o=h.webkitRequestFileSystem,p=h.requestFileSystem||o||h.mozRequestFileSystem,m=function(s){(h.setImmediate||h.setTimeout)(function(){throw s},0)},c="application/octet-stream",k=0,b=[],i=function(){var t=b.length;while(t--){var s=b[t];if(typeof s==="string"){e.revokeObjectURL(s)}else{s.remove()}}b.length=0},q=function(t,s,w){s=[].concat(s);var v=s.length;while(v--){var x=t["on"+s[v]];if(typeof x==="function"){try{x.call(t,w||t)}catch(u){m(u)}}}},f=function(t,u){var v=this,B=t.type,E=false,x,w,s=function(){var F=l().createObjectURL(t);b.push(F);return F},A=function(){q(v,"writestart progress write writeend".split(" "))},D=function(){if(E||!x){x=s(t)}if(w){w.location.href=x}v.readyState=v.DONE;A()},z=function(F){return function(){if(v.readyState!==v.DONE){return F.apply(this,arguments)}}},y={create:true,exclusive:false},C;v.readyState=v.INIT;if(!u){u="download"}if(g){x=s(t);n.href=x;n.download=u;if(j(n)){v.readyState=v.DONE;A();return}}if(h.chrome&&B&&B!==c){C=t.slice||t.webkitSlice;t=C.call(t,0,t.size,c);E=true}if(o&&u!=="download"){u+=".download"}if(B===c||o){w=h}else{w=h.open()}if(!p){D();return}k+=t.size;p(h.TEMPORARY,k,z(function(F){F.root.getDirectory("saved",y,z(function(G){var H=function(){G.getFile(u,y,z(function(I){I.createWriter(z(function(J){J.onwriteend=function(K){w.location.href=I.toURL();b.push(I);v.readyState=v.DONE;q(v,"writeend",K)};J.onerror=function(){var K=J.error;if(K.code!==K.ABORT_ERR){D()}};"writestart progress write abort".split(" ").forEach(function(K){J["on"+K]=v["on"+K]});J.write(t);v.abort=function(){J.abort();v.readyState=v.DONE};v.readyState=v.WRITING}),D)}),D)};G.getFile(u,{create:false},z(function(I){I.remove();H()}),z(function(I){if(I.code===I.NOT_FOUND_ERR){H()}else{D()}}))}),D)}),D)},d=f.prototype,a=function(s,t){return new f(s,t)};d.abort=function(){var s=this;s.readyState=s.DONE;q(s,"abort")};d.readyState=d.INIT=0;d.WRITING=1;d.DONE=2;d.error=d.onwritestart=d.onprogress=d.onwrite=d.onabort=d.onerror=d.onwriteend=null;if(h.addEventListener){h.addEventListener("unload",i,false)}return a}(self));(function(a){var b="pdfDataExport IE Below 9 Shim plugin";a.output=function(e,d){return this.internal.output(e,d);var c="Output.pdf";switch(e){case"datauristring":case"dataurlstring":case"datauri":case"dataurl":case"dataurlnewwindow":console.log(b+": Data URIs are not supported on IE6-9.");break;case"save":c=d;break}}})(pdfDataExport.API);(function(a){a.extend(a.jqx._jqxGrid.prototype,{exportdata:function(q,z,y,o,r,t,f){if(!a.jqx.dataAdapter.ArrayExporter){throw"jqxGrid: Missing reference to jqxdata.export.js!"}if(y==undefined){y=true}var H=this;if(o==undefined){var o=this.getrows();if(o.length==0){throw"No data to export."}}this.exporting=true;if(!this.pageable){this.loadondemand=true}if(this.altrows){this._renderrows(this.virtualsizeinfo)}var F=r!=undefined?r:false;var E={};var n={};var v=[];var l=this.host.find(".jqx-grid-cell:first");var w=this.host.find(".jqx-grid-cell-alt:first");l.removeClass(this.toThemeProperty("jqx-grid-cell-selected"));l.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));w.removeClass(this.toThemeProperty("jqx-grid-cell-selected"));w.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));l.removeClass(this.toThemeProperty("jqx-grid-cell-hover"));l.removeClass(this.toThemeProperty("jqx-fill-state-hover"));w.removeClass(this.toThemeProperty("jqx-grid-cell-hover"));w.removeClass(this.toThemeProperty("jqx-fill-state-hover"));var g="cell";var e=1;var G="column";var c=1;var h=[];for(var B=0;B<this.columns.records.length;B++){var d=this.columns.records[B];if(d.cellclassname!=""){d.customCellStyles=new Array();if(typeof d.cellclassname=="string"){for(var C=0;C<o.length;C++){d.customCellStyles[C]=d.cellclassname}}else{for(var C=0;C<o.length;C++){var u=this.getrowboundindex(C);var b=d.cellclassname(u,d.displayfield,o[C][d.displayfield],o[C]);if(b){d.customCellStyles[C]=b}}}}}var x=new Array();a.each(this.columns.records,function(K){var N=a(H.table[0].rows[0].cells[K]);if(H.table[0].rows.length>1){var j=a(H.table[0].rows[1].cells[K])}var J=this;var L=function(P){P.removeClass(H.toThemeProperty("jqx-grid-cell-selected"));P.removeClass(H.toThemeProperty("jqx-fill-state-pressed"));P.removeClass(H.toThemeProperty("jqx-grid-cell-hover"));P.removeClass(H.toThemeProperty("jqx-fill-state-hover"));if(J.customCellStyles){for(var Q in J.customCellStyles){P.removeClass(J.customCellStyles[Q])}}};L(N);if(j){L(j)}if(this.displayfield==null){return true}if(H.showaggregates){if(H.getcolumnaggregateddata){h.push(H.getcolumnaggregateddata(this.displayfield,this.aggregates,true,o))}}var M=H._getexportcolumntype(this);if(this.exportable&&(!this.hidden||F)){E[this.displayfield]={};E[this.displayfield].text=this.text;E[this.displayfield].width=parseInt(this.width);if(isNaN(E[this.displayfield].width)){E[this.displayfield].width=60}E[this.displayfield].formatString=this.cellsformat;E[this.displayfield].localization=H.gridlocalization;E[this.displayfield].type=M;E[this.displayfield].cellsAlign=this.cellsalign;E[this.displayfield].hidden=!y;E[this.displayfield].displayfield=this.displayfield;x.push(E[this.displayfield])}g="cell"+e;var O=a(this.element);if(this.element==undefined){O=a(this.uielement)}G="column"+c;if(q=="html"||q=="xls"||q=="pdf"){var i=function(P,X,W,Q,V,S,R,T,U){n[P]={};if(X==undefined){return}n[P]["font-size"]=X.css("font-size");n[P]["font-weight"]=X.css("font-weight");n[P]["font-style"]=X.css("font-style");n[P]["background-color"]=S._getexportcolor(X.css("background-color"));n[P]["color"]=S._getexportcolor(X.css("color"));n[P]["border-color"]=S._getexportcolor(X.css("border-top-color"));if(W){n[P]["text-align"]=V.align}else{n[P]["text-align"]=V.cellsalign;n[P]["formatString"]=V.cellsformat;n[P]["dataType"]=M}if(q=="html"||q=="pdf"){n[P]["border-top-width"]=X.css("border-top-width");n[P]["border-left-width"]=X.css("border-left-width");n[P]["border-right-width"]=X.css("border-right-width");n[P]["border-bottom-width"]=X.css("border-bottom-width");n[P]["border-top-style"]=X.css("border-top-style");n[P]["border-left-style"]=X.css("border-left-style");n[P]["border-right-style"]=X.css("border-right-style");n[P]["border-bottom-style"]=X.css("border-bottom-style");if(W){if(R==0){n[P]["border-left-width"]=X.css("border-right-width")}n[P]["border-top-width"]=X.css("border-right-width");n[P]["border-bottom-width"]=X.css("border-bottom-width")}else{if(R==0){n[P]["border-left-width"]=X.css("border-right-width")}}n[P]["height"]=X.css("height")}if(V.exportable&&(!V.hidden||F)){if(T==true){if(!E[V.displayfield].customCellStyles){E[V.displayfield].customCellStyles=new Array()}E[V.displayfield].customCellStyles[U]=P}else{if(W){E[V.displayfield].style=P}else{if(!Q){E[V.displayfield].cellStyle=P}else{E[V.displayfield].cellAltStyle=P}}}}};i(G,O,true,false,this,H,K);c++;i(g,N,false,false,this,H,K);if(H.altrows){g="cellalt"+e;i(g,j,false,true,this,H,K)}if(this.customCellStyles){for(var I in J.customCellStyles){N.removeClass(J.customCellStyles[I])}for(var I in J.customCellStyles){N.addClass(J.customCellStyles[I]);i(g+J.customCellStyles[I],N,false,false,this,H,K,true,I);N.removeClass(J.customCellStyles[I])}}e++}});a.each(this.columns.records,function(i){if(E[this.displayfield]){E[this.displayfield].columnsDataFields=x}});if(this.showaggregates){var D=[];var A=q=="xls"?"_AG":"";var k=this.groupable?this.groups.length:0;if(this.rowdetails){k++}if(h.length>0){a.each(this.columns.records,function(j){if(this.aggregates){for(var J=0;J<this.aggregates.length;J++){if(!D[J]){D[J]={}}if(D[J]){var K=H._getaggregatename(this.aggregates[J]);var L=H._getaggregatetype(this.aggregates[J]);var I=h[j-k];if(I){D[J][this.displayfield]=A+K+": "+I[L]}}}}});a.each(this.columns.records,function(j){for(var I=0;I<D.length;I++){if(D[I][this.displayfield]==undefined){D[I][this.displayfield]=A}}})}a.each(D,function(){o.push(this)})}var m=this;var s=a.jqx.dataAdapter.ArrayExporter(o,E,n);if(z==undefined){this._renderrows(this.virtualsizeinfo);var p=s.exportTo(q);if(this.showaggregates){a.each(D,function(){o.pop(this)})}setTimeout(function(){m.exporting=false},50);return p}else{s.exportToFile(q,z,t,f)}if(this.showaggregates){a.each(D,function(){o.pop(this)})}this._renderrows(this.virtualsizeinfo);setTimeout(function(){m.exporting=false},50)},_getexportcolor:function(l){var f=l;if(l=="transparent"){f="#FFFFFF"}if(!f||!f.toString()){f="#FFFFFF"}if(f.toString().indexOf("rgb")!=-1){var i=f.split(",");if(f.toString().indexOf("rgba")!=-1){var d=parseInt(i[0].substring(5));var h=parseInt(i[1]);var j=parseInt(i[2]);var k=parseInt(i[3].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);if(d==0&&h==0&&j==0&&k==0){return"#ffffff"}return"#"+e}var d=parseInt(i[0].substring(4));var h=parseInt(i[1]);var j=parseInt(i[2].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);return"#"+e}else{if(f.toString().indexOf("#")!=-1){if(f.toString().length==4){var c=f.toString().substring(1,4);f+=c}}}return f},_rgbToHex:function(b){return this._intToHex(b.r)+this._intToHex(b.g)+this._intToHex(b.b)},_intToHex:function(c){var b=(parseInt(c).toString(16));if(b.length==1){b=("0"+b)}return b.toUpperCase()},_getexportcolumntype:function(f){var g=this;var e="string";var d=g.source.datafields||((g.source._source)?g.source._source.datafields:null);if(d){var i="";a.each(d,function(){if(this.name==f.displayfield){if(this.type){i=this.type}return false}});if(i){return i}}if(f!=null){if(this.dataview.cachedrecords==undefined){return e}var b=null;if(!this.virtualmode){if(this.dataview.cachedrecords.length==0){return e}b=this.dataview.cachedrecords[0][f.displayfield];if(b!=null&&b.toString()==""){return"string"}}else{a.each(this.dataview.cachedrecords,function(){b=this[f.displayfield];return false})}if(b!=null){if(f.cellsformat.indexOf("c")!=-1){return"number"}if(f.cellsformat.indexOf("n")!=-1){return"number"}if(f.cellsformat.indexOf("p")!=-1){return"number"}if(f.cellsformat.indexOf("d")!=-1){return"date"}if(f.cellsformat.indexOf("y")!=-1){return"date"}if(f.cellsformat.indexOf("M")!=-1){return"date"}if(f.cellsformat.indexOf("m")!=-1){return"date"}if(f.cellsformat.indexOf("t")!=-1){return"date"}if(typeof b=="boolean"){e="boolean"}else{if(a.jqx.dataFormat.isNumber(b)){e="number"}else{var h=new Date(b);if(h.toString()=="NaN"||h.toString()=="Invalid Date"){if(a.jqx.dataFormat){h=a.jqx.dataFormat.tryparsedate(b);if(h!=null){if(h&&h.getFullYear()){if(h.getFullYear()==1970&&h.getMonth()==0&&h.getDate()==1){var c=new Number(b);if(!isNaN(c)){return"number"}return"string"}}return"date"}else{e="string"}}else{e="string"}}else{e="date"}}}}}return e}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{savestate:function(b){var c=this.getstate();if(b!==undefined&&!a.isEmptyObject(b)){if(b.indexOf("sort")==-1){delete c.sortcolumn;delete c.sortdirection}if(b.indexOf("pager")==-1){delete c.pagenum;delete c.pagesizeoptions;delete c.pagesize}if(b.indexOf("selection")==-1){delete c.selectedcells;delete c.selectedrowindexes;delete c.selectedrowindex}if(b.indexOf("grouping")==-1){delete c.groups}if(b.indexOf("filter")==-1){delete c.filters}a.each(this.columns.records,function(e){var d=c.columns[this.datafield];if(b.indexOf("hidden_columns")==-1){delete d.hidden}if(b.indexOf("reorder")==-1){delete d.index}if(b.indexOf("columns_width")==-1){delete d.width}if(b.indexOf("columns_text")==-1){delete d.text}if(b.indexOf("alignment")==-1){delete d.align;delete d.cellsalign}})}if(window.localStorage){window.localStorage["jqxGrid"+this.element.id]=this._stringify(c)}this._savedstate=c;return c},loadstate:function(d,j){var g="";if(d!=undefined&&d.width!=undefined){g=d}else{if(window.localStorage){var c=window.localStorage["jqxGrid"+this.element.id];if(c){var g=a.parseJSON(window.localStorage["jqxGrid"+this.element.id])}}else{if(this._savedstate){var g=this._savedstate}}}if(g!=null&&g!==""){if(this.virtualmode||(this.source._source.url&&this.source._source.url!="")){this.source.beginUpdate()}var f=g;if(f.width!==undefined){this.width=f.width}if(f.height!==undefined){this.height=f.height}if(this.pageable){if(f.pagesize!=undefined){this.pagesize=f.pagesize;this.dataview.pagesize=f.pagesize}if(f.pagenum!=undefined){this.dataview.pagenum=f.pagenum}if(f.pagesizeoptions!=undefined){this.pagesizeoptions=f.pagesizeoptions}if(this.pagesizeoptions){var e=0;for(var b=0;b<this.pagesizeoptions.length;b++){if(this.pagesize>=this.pagesizeoptions[b]){e=b}}if(this.pagershowrowscombo){this.pagershowrowscombo.jqxDropDownList({selectedIndex:e})}}}if(this.sortable){if(this._loading){this._loading=false}if(f.sortdirection){if(f.sortdirection.ascending||f.sortdirection.descending){this.dataview.sortfield=f.sortcolumn;var h=f.sortdirection.ascending?"asc":"desc";this.dataview.sortfielddirection=h;this.source.sortcolumn=f.sortcolumn;this.source.sortdirection=h;this.sortby(f.sortcolumn,h)}}else{if(this.dataview.sortfield!=null&&(this.dataview.sortfielddirection=="asc"||this.dataview.sortfielddirection=="desc")){this.sortby(this.dataview.sortfield,null)}}}if(this.groupable&&f.groups){this.dataview.groups=f.groups;this.groups=f.groups}this.loadingstate=true;if(this.virtualsizeinfo){this._loadselectionandcolumnwidths(f)}this.loadingstate=false;if(this.virtualmode||(this.source._source.url&&this.source._source.url!="")){if(j==true){this.source.endUpdate(false)}else{this.source.endUpdate(false);if(this.virtualmode||this.source._source.filter||this.source._source.sort){this.updatebounddata("state")}}}}},_loadselectionandcolumnwidths:function(j){this.loadingstate=true;var m="";if(j!=undefined&&j.width!=undefined){m=j}else{if(window.localStorage){if(window.localStorage["jqxGrid"+this.element.id]){var m=a.parseJSON(window.localStorage["jqxGrid"+this.element.id])}}else{if(this._savedstate){var m=this._savedstate}}}if(m!=null&&m!=""){var E=this._loading;this._loading=false;var G=m;var F=this;var g=false;var d=[];d.length=0;var D=[];a.each(this.columns.records,function(I){var i=G.columns[this.datafield];if(i!=undefined){if(this.text!=i.text){g=true}if(this.hidden!=i.hidden){g=true}if(i.width!==undefined){this.width=i.width;if(this._width){this._width=null}if(this._percentagewidth){this._percentagewidth=null}}if(i.hidden!==undefined){this.hidden=i.hidden}if(i.pinned!==undefined){this.pinned=i.pinned}if(i.groupable!==undefined){this.groupable=i.groupable}if(i.resizable!==undefined){this.resizable=i.resizable}this.draggable=i.draggable;if(i.text!==undefined){this.text=i.text}if(i.align!==undefined){this.align=i.align}if(i.cellsalign!==undefined){this.cellsalign=i.cellsalign}if(F._columns){for(var H=0;H<F._columns.length;H++){if(F._columns[H].datafield==this.datafield){if(i.hidden!==undefined){F._columns[H]["hidden"]=i.hidden}if(i.width!==undefined){F._columns[H]["width"]=i.width}}}}if(i.index!==undefined){d[this.datafield]=i.index;d.length++}}});if(d.length>0){if(this.setcolumnindex){var x=this.rowdetails?1:0;x+=this.groupable?this.groups.length:0;var v=new Array();for(var C=0;C<this.columns.records.length;C++){v.push(this.columns.records[C])}var B=0;var f=new Array();for(var C=0;C<v.length;C++){var k=v[C];var n=d[k.datafield];if(this.groupable&&k.grouped){B++;continue}if(C==0&&this.rowdetails){B++;continue}if(C!==n||this.groupable||this.rowdetails){var q=B+n;f.push({column:k,key:q})}}f.sort(function(H,i){if(H.key<i.key){return -1}if(H.key>i.key){return 1}return 0});f.reverse();a.each(f,function(i,I){var H=this.key;F.setcolumnindex(this.column.datafield,H,false)})}this.prerenderrequired=true;if(this.groupable){this._refreshdataview()}this.rendergridcontent(true);if(this._updatefilterrowui&&this.filterable&&this.showfilterrow){this._updatefilterrowui()}this._renderrows(this.virtualsizeinfo)}if(this.filterable&&G.filters!==undefined){if(this.clearfilters){this._loading=false;this.clearfilters(false)}var c="";var p=new a.jqx.filter();for(var C=0;C<G.filters.filterscount;C++){var A=G.filters["filtercondition"+C];var u=G.filters["filterdatafield"+C];var k=this.getcolumn(u);if(u!=c){p=new a.jqx.filter()}c=u;if(k&&k.filterable){var y=G.filters["filtervalue"+C];var r=G.filters["filteroperator"+C];var b=G.filters["filtertype"+C];if(b=="datefilter"){var s=p.createfilter(b,y,A,null,k.cellsformat,this.gridlocalization)}else{var s=p.createfilter(b,y,A)}p.addfilter(r,s);if(this.showfilterrow){var l=k._filterwidget;var e=k._filterwidget.parent();if(l!=null){switch(k.filtertype){case"number":e.find("input").val(y);if(this.host.jqxDropDownList){var o=p.getoperatorsbyfiltertype("numericfilter");l.find(".filter").jqxDropDownList("selectIndex",o.indexOf(A))}break;case"date":if(this.host.jqxDateTimeInput){a(e.children()[0]).jqxDateTimeInput("setDate",y)}else{l.val(y)}break;case"range":if(this.host.jqxDateTimeInput){var t=G.filters["filtervalue"+(C+1)];var b=G.filters["filtertype"+C];var s=p.createfilter(b,t,"LESS_THAN_OR_EQUAL");p.addfilter(r,s);var z=new Date(y);var h=new Date(t);if(isNaN(z)){z=a.jqx.dataFormat.tryparsedate(y)}if(isNaN(h)){h=a.jqx.dataFormat.tryparsedate(y)}a(e.children()[0]).jqxDateTimeInput("setRange",z,h);C++}else{l.val(y)}break;case"textbox":case"default":l.val(y);F["_oldWriteText"+l[0].id]=y;break;case"list":if(this.host.jqxDropDownList){var w=a(e.children()[0]).jqxDropDownList("getItems");var n=-1;a.each(w,function(H){if(this.value==y){n=H;return false}});a(e.children()[0]).jqxDropDownList("selectIndex",n)}else{l.val(y)}break;case"checkedlist":if(!this.host.jqxDropDownList){l.val(y)}break;case"bool":case"boolean":if(!this.host.jqxCheckBox){l.val(y)}else{a(e.children()[0]).jqxCheckBox({checked:y})}break}}}this.addfilter(u,p)}}if(G.filters&&G.filters.filterscount>0){this.applyfilters();if(this.showfilterrow){a.each(this.columns.records,function(){if(this.filtertype=="checkedlist"&&this.filterable){if(F.host.jqxDropDownList){var L=this;var J=L._filterwidget;var O=J.jqxDropDownList("getItems");var H=J.jqxDropDownList("listBox");H.checkAll(false);if(L.filter){H.uncheckAll(false);var N=L.filter.getfilters();for(var K=0;K<H.items.length;K++){var I=H.items[K].label;a.each(N,function(){if(this.condition=="NOT_EQUAL"){return true}if(I==this.value){H.checkIndex(K,false,false)}})}H._updateCheckedItems();var M=H.getCheckedItems().length;if(H.items.length!=M&&M>0){H.host.jqxListBox("indeterminateIndex",0,true,false)}}}}})}}if(this.pageable&&G.pagenum!==undefined){if(this.gotopage&&!this.virtualmode){this.dataview.pagenum=-1;this.gotopage(G.pagenum)}else{if(this.gotopage&&this.virtualmode){this.gotopage(G.pagenum)}}}}if(G.selectedrowindexes&&G.selectedrowindexes&&G.selectedrowindexes.length>0){this.selectedrowindexes=G.selectedrowindexes;this.selectedrowindex=G.selectedrowindex;if(this.selectionmode==="checkbox"){this._updatecheckboxselection()}}if(G.selectedcells){if(this._applycellselection){a.each(G.selectedcells,function(){F._applycellselection(this.rowindex,this.datafield,true,false)})}}if(this.groupable&&G.groups!==undefined){this._refreshdataview();this.render();this._loading=E;this.loadingstate=false;return}if(g){this.prerenderrequired=true;this.rendergridcontent(true);this._loading=E;this.loadingstate=false;if(this.updating()){return false}}else{this._loading=E;this._updatecolumnwidths();this._updatecellwidths();this.loadingstate=false}this.loadingstate=false;this._loading=E;this._renderrows(this.virtualsizeinfo)}this.loadingstate=false},getstate:function(){var p=this.getdatainformation();var h={};h.width=this.width;h.height=this.height;h.pagenum=p.paginginformation.pagenum;h.pagesize=p.paginginformation.pagesize;h.pagesizeoptions=this.pagesizeoptions;h.sortcolumn=p.sortinformation.sortcolumn;h.sortdirection=p.sortinformation.sortdirection;if(this.selectionmode!=null){if(this.getselectedcells){if(this.selectionmode.toString().indexOf("cell")!=-1){var o=this.getselectedcells();var q=new Array();a.each(o,function(){q.push({datafield:this.datafield,rowindex:this.rowindex})});h.selectedcells=q}else{var n=this.getselectedrowindexes();h.selectedrowindexes=n;h.selectedrowindex=this.selectedrowindex}}}var i={};var d=0;if(this.dataview.filters){for(var j=0;j<this.dataview.filters.length;j++){var e=this.dataview.filters[j].datafield;var b=this.dataview.filters[j].filter;var c=b.getfilters();i[e+"operator"]=b.operator;for(var f=0;f<c.length;f++){c[f].datafield=e;if(c[f].type=="datefilter"){if(c[f].value&&c[f].value.toLocaleString){var g=this.getcolumn(c[f].datafield);if(g.cellsformat){var l=this.source.formatDate(c[f].value,g.cellsformat,this.gridlocalization);if(l){i["filtervalue"+d]=l}else{i["filtervalue"+d]=c[f].value.toLocaleString()}}else{i["filtervalue"+d]=c[f].value.toLocaleString()}}else{i["filtervalue"+d]=c[f].value}}else{i["filtervalue"+d]=c[f].value}i["filtercondition"+d]=c[f].condition;i["filteroperator"+d]=c[f].operator;i["filterdatafield"+d]=e;i["filtertype"+d]=c[f].type;d++}}}i.filterscount=d;h.filters=i;h.groups=this.groups;h.columns={};var k=0;if(this.columns.records){a.each(this.columns.records,function(m,r){if(!this.datafield){return true}var s={};s.width=this.width;s.hidden=this.hidden;s.pinned=this.pinned;s.groupable=this.groupable;s.resizable=this.resizable;s.draggable=this.draggable;s.text=this.text;s.align=this.align;s.cellsalign=this.cellsalign;s.index=k++;h.columns[this.datafield]=s})}return h},_stringify:function(e){if(window.JSON&&typeof window.JSON.stringify==="function"){var d=this;var c="";try{c=window.JSON.stringify(e)}catch(b){return d._str("",{"":e})}return c}var c=this._str("",{"":e});return c},_quote:function(b){var d=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,c={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};return'"'+b.replace(d,function(e){var f=c[e];return typeof f==="string"?f:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"'},_stringifyArray:function(e){var b=e.length,c=[],d;for(var d=0;d<b;d++){c.push(this._str(d,e)||"null")}return"["+c.join(",")+"]"},_stringifyObject:function(f){var c=[],d,b;var e=this;for(d in f){if(Object.prototype.hasOwnProperty.call(f,d)){b=e._str(d,f);if(b){c.push(e._quote(d)+":"+b)}}}return"{"+c.join(",")+"}"},_stringifyReference:function(b){switch(Object.prototype.toString.call(b)){case"[object Array]":return this._stringifyArray(b)}return this._stringifyObject(b)},_stringifyPrimitive:function(c,b){switch(b){case"string":return this._quote(c);case"number":return isFinite(c)?c:"null";case"boolean":return c}return"null"},_str:function(c,b){var e=b[c],d=typeof e;if(e&&typeof e==="object"&&typeof e.toJSON==="function"){e=e.toJSON(c);d=typeof e}if(/(number|string|boolean)/.test(d)||(!e&&d==="object")){return this._stringifyPrimitive(e,d)}else{return this._stringifyReference(e)}}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxGrid.prototype,{getcolumnindex:function(b){var c=this.getcolumn(b);var d=this.columns.records.indexOf(c);return d},setcolumnindex:function(d,h,i){var g=this.getcolumn(d);if(g.pinned){return}if(g.hidden){return}if(g.checkboxcolumn){return}if(g.grouped){return}var k=this.columns.records.indexOf(g);this.columns.records.splice(k,1);this.columns.records.splice(h,0,g);var e=0;var m=this.headerZIndex;this.columnsrow.children().detach();var j=this.toThemeProperty("jqx-grid-cell");j+=" "+this.toThemeProperty("jqx-grid-cell-pinned");if(this.filterrow){a(this.filterrow.children()[0]).children().detach();this.filterrow[0].cells=[]}var l=this;var b=null;if(l.filterrow!=undefined){var b=a(l.filterrow.children()[0])}this.columnsrow[0].cells=[];var f=false;a.each(this.columns.records,function(n,q){var o=this.uielement;l.columnsrow.append(o);if(!l.rtl){o.css("z-index",m--)}else{o.css("z-index",m++)}var p=this.width;o.css("left",e);l.columnsrow[0].cells[l.columnsrow[0].cells.length]=o[0];if(l.filterrow){var r=a('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+j+'"></div>');b.append(r);r.css("left",e);r.css("z-index",m+1);r.width(this.width);r[0].left=e;r.append(this._filterwidget);l.filterrow[0].cells[l.filterrow[0].cells.length]=r[0]}if(this.hidden){f=true}if(!(this.hidden&&this.hideable)){e+=p}});if(this.groupable){var c=this.groups.length;if(c>0){if(k-c>=0){k-=c;h-=c}}}if(this.rowdetails){if(k-1>=0){k--;h--}}if(this.selectionmode=="checkbox"){if(k-1>=0){k--;h--}}var g=this._columns[k];this._columns.splice(k,1);this._columns.splice(h,0,g);this._raiseEvent(24,{columntext:g.text,datafield:g.datafield,oldindex:k,newindex:h});if(i==false){return}if(f||g.columntype=="checkbox"){this.prerenderrequired=true;this.rendergridcontent(true,false);this._updatecolumnwidths();this._updatecellwidths()}else{this._updatecolumnwidths();this._updatecellwidths()}if(this._updatefilterrowui&&this.filterable&&this.showfilterrow){this._updatefilterrowui()}if(this.showeverpresentrow){this._updateaddnewrowui()}this._rendercolumngroups();this._renderrows(this.virtualsizeinfo)},_pinnedColumnsLength:function(){var b=0;a.each(this.columns.records,function(){if(this.pinned){b++}if(this.grouped){b++}});if(this.selectionmode=="checkbox"){b++}return b},_handlecolumnsreorder:function(){var d=this;var g=-1;var c=false;if(!d.columnsreorder){return}var f="mousemove.reorder"+this.element.id;var e="mousedown.reorder"+this.element.id;var h="mouseup.reorder"+this.element.id;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true;f=a.jqx.mobile.getTouchEventName("touchmove")+".reorder"+this.element.id;e=a.jqx.mobile.getTouchEventName("touchstart")+".reorder"+this.element.id;h=a.jqx.mobile.getTouchEventName("touchend")+".reorder"+this.element.id}this.removeHandler(a(document),f);this.addHandler(a(document),f,function(j){if(d.resizing){return true}if(d.reordercolumn!=null){var k=parseInt(j.pageX);var r=parseInt(j.pageY);if(b){var o=d.getTouches(j);var n=o[0];if(n!=undefined){k=parseInt(n.pageX);r=parseInt(n.pageY)}}var m=d.host.coord();var s=parseInt(m.left);var t=parseInt(m.top);if(d.dragmousedownoffset==undefined||d.dragmousedownoffset==null){d.dragmousedownoffset={left:0,top:0}}var q=parseInt(k)-parseInt(d.dragmousedownoffset.left);var i=parseInt(r)-parseInt(d.dragmousedownoffset.top);d.reordercolumn.css({left:q+"px",top:i+"px"});c=false;if(k>=s&&k<=s+d.host.width()){if(r>=t&&r<=t+d.host.height()){c=true}}g=-1;if(c){d.reordercolumnicon.removeClass(d.toThemeProperty("jqx-grid-dragcancel-icon"));d.reordercolumnicon.addClass(d.toThemeProperty("jqx-grid-drag-icon"));var p=d.columnsheader.coord();var l=p.top+d.columnsheader.height();if(d.columnsdropline!=null){if(r>=p.top&&r<=l){g=d._handlereordercolumnsdroplines(k)}else{d.columnsdropline.fadeOut("slow")}}}else{if(d.columnsdropline!=null){d.columnsdropline.fadeOut("slow")}d.reordercolumnicon.removeClass(d.toThemeProperty("jqx-grid-drag-icon"));d.reordercolumnicon.addClass(d.toThemeProperty("jqx-grid-dragcancel-icon"))}if(b){j.preventDefault();j.stopPropagation();return false}}});this.columnsbounds=new Array();this.removeHandler(a(document),e);this.addHandler(a(document),e,function(j){if(d.resizing){return true}d.columnsbounds=new Array();var l=d.host.coord().left;var k=d.host.coord().top;if(d.showtoolbar){k+=d.toolbarheight}if(d.groupable&&d.showgroupsheader){k+=d.groupsheaderheight}var i=0;a.each(d.columns.records,function(n){var o=this;if(o.hidden){d.columnsbounds[d.columnsbounds.length]={top:k,column:o,left:l,width:0,height:2+d.rowsheight};return true}if(i==0){if(!d.rtl){l=parseInt(d.host.coord().left)-d.hScrollInstance.value}else{if(d.hScrollBar.css("visibility")!="hidden"){l=parseInt(d.host.coord().left)-d.hScrollInstance.max+d.hScrollInstance.value}else{l=parseInt(d.host.coord().left)+d.hScrollInstance.value}}}i++;var m=2+d.columnsheight;if(d.columnshierarchy){k=a(o.uielement).coord().top;m=a(o.uielement).height()}d.columnsbounds[d.columnsbounds.length]={top:k,column:o,left:l,width:o.width,height:m};l+=o.width})});this.removeHandler(a(document),h);this.addHandler(a(document),h,function(i){if(d.resizing){return true}d.__drag=false;a(document.body).removeClass("jqx-disableselect");var l=parseInt(i.pageX);var t=parseInt(i.pageY);if(b){var o=d.getTouches(i);var n=o[0];l=parseInt(n.pageX);t=parseInt(n.pageY)}var m=d.host.coord();var v=parseInt(m.left);var w=parseInt(m.top);var j=d.groupsheader.height();if(d.showtoolbar){w+=d.toolbarheight}d.columndragstarted=false;d.dragmousedown=null;if(d.reordercolumn!=null){var k=a.data(d.reordercolumn[0],"reorderrecord");var x=d.columns.records.indexOf(d.getcolumn(k));d.reordercolumn.remove();d.reordercolumn=null;var p=0;p+=d._pinnedColumnsLength();if(k!=null){if(c){if(g!=-1){var q=g.index;if(q>=p){var s=d.columns.records[q];if(s!=undefined){var u=d.columns.records.indexOf(d.getcolumn(s.datafield));if(s.datafield==null){var u=d.columns.records.indexOf(d.getcolumnbytext(s.text))}if(d.columngroups){var r=s;if(x<u){if(g.position=="before"){r=d.columns.records[u-1]}}if(r.columngroup!=d.getcolumn(k).columngroup){if(d.columnsdropline!=null){d.columnsdropline.remove();d.columnsdropline=null}return}}if(x<u){if(g.position=="before"){d.setcolumnindex(k,u-1)}else{d.setcolumnindex(k,u)}}else{if(x>u){d.setcolumnindex(k,u)}}if(d.autosavestate){if(d.savestate){d.savestate()}}}}}}if(d.columnsdropline!=null){d.columnsdropline.remove();d.columnsdropline=null}}}})},getcolumnbytext:function(c){var b=null;if(this.columns.records){a.each(this.columns.records,function(){if(this.text==c){b=this;return false}})}return b},_handlereordercolumnsdroplines:function(h){var b=this;var g=-1;var d=b._pinnedColumnsLength();var f=parseInt(b.host.coord().left);var c=f+b.host.width();var e=b.vScrollBar.css("visibility")!="hidden"?19:0;if(!b.rtl){e=0}a.each(b.columnsbounds,function(i){if(i>=d){if(this.width==0){return true}if(h<=this.left+this.width/2){if(h>c){b.columnsdropline.fadeOut();return false}b.columnsdropline.css("left",e+parseInt(this.left)+"px");b.columnsdropline.css("top",parseInt(this.top)+"px");b.columnsdropline.height(this.height);b.columnsdropline.fadeIn("slow");g={index:i,position:"before"};return false}else{if(h>=this.left+this.width/2){if(this.left+this.width>c){b.columnsdropline.fadeOut();return false}b.columnsdropline.css("left",e+1+this.left+this.width);b.columnsdropline.css("top",this.top);b.columnsdropline.height(this.height);b.columnsdropline.fadeIn("slow");g={index:i,position:"after"}}}}});return g},_createreordercolumn:function(c,e,h){var g=this;var f=e;if(g.reordercolumn){g.reordercolumn.remove()}if(g.columnsdropline){g.columnsdropline.remove()}g.reordercolumn=a("<div></div>");var j=c.clone();g.reordercolumn.css("z-index",999999);j.css("border-width","1px");j.css("opacity","0.4");var i=a(j.find("."+g.toThemeProperty("jqx-grid-column-menubutton")));if(i.length>0){i.css("display","none")}var b=a(j.find(".jqx-icon-close"));if(b.length>0){b.css("display","none")}g.reordercolumnicon=a('<div style="z-index: 9999; position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px;"></div>');g.reordercolumnicon.addClass(g.toThemeProperty("jqx-grid-drag-icon"));g.reordercolumn.css("float","left");g.reordercolumn.css("position","absolute");var d=g.host.coord();j.width(c.width()+16);g.reordercolumn.append(j);g.reordercolumn.height(c.height());g.reordercolumn.width(j.width());g.reordercolumn.append(g.reordercolumnicon);a(document.body).append(g.reordercolumn);j.css("margin-left",0);j.css("left",0);j.css("top",0);g.reordercolumn.css("left",f.left+g.dragmousedown.left);g.reordercolumn.css("top",f.top+g.dragmousedown.top);if(h!=undefined&&h){g.columnsdropline=a('<div style="z-index: 9999; display: none; position: absolute;"></div>');g.columnsdropline.width(2);g.columnsdropline.addClass(g.toThemeProperty("jqx-grid-group-drag-line"));a(document.body).append(g.columnsdropline)}},_handlecolumnsdragreorder:function(c,f){if(this.reordercolumn){this.reordercolumn.remove()}if(this.columnsdropline){this.columnsdropline.remove()}this.dragmousedown=null;this.dragmousedownoffset=null;this.columndragstarted=false;this.reordercolumn=null;var g=this;var e;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true}var d="mousedown.drag";var e="mousemove.drag";if(b){d=a.jqx.mobile.getTouchEventName("touchstart")+".drag";e=a.jqx.mobile.getTouchEventName("touchmove")+".drag"}else{this.addHandler(f,"dragstart",function(h){return false})}this.addHandler(f,d,function(j){if(false==c.draggable){return true}if(g.resizing){return true}g.__drag=true;var i=j.pageX;var h=j.pageY;if(b){var k=g.getTouches(j);var m=k[0];i=m.pageX;h=m.pageY}g.dragmousedown={left:i,top:h};var l=a(j.target).coord();g.dragmousedownoffset={left:parseInt(i)-parseInt(l.left),top:parseInt(h-l.top)};return true});this.addHandler(f,e,function(j){if(!c.draggable){return true}if(undefined==c.datafield){return true}if(c.pinned){return true}if(g.resizing){return true}if(g.dragmousedown){var i=j.pageX;var h=j.pageY;if(b){var l=g.getTouches(j);var n=l[0];if(n!=undefined){i=n.pageX;h=n.pageY}}e={left:i,top:h};if(!g.columndragstarted&&g.reordercolumn==null){var k=Math.abs(e.left-g.dragmousedown.left);var m=Math.abs(e.top-g.dragmousedown.top);if(k>3||m>3){g._createreordercolumn(f,e,true);a(document.body).addClass("jqx-disableselect");a.data(g.reordercolumn[0],"reorderrecord",c.datafield)}}}})}})})(jqxBaseFramework);(function(c){c.jqx.jqxWidget("jqxListMenu","",{});var a=0,b=0;c.extend(c.jqx._jqxListMenu.prototype,{defineInstance:function(){var d={filterCallback:function(g,f){var e=c.jqx.string.containsIgnoreCase(c.trim(g),f);return e},placeHolder:"Filter list items...",showFilter:false,showHeader:true,showBackButton:true,showNavigationArrows:true,alwaysShowNavigationArrows:false,backLabel:"Back",width:"100%",height:"auto",animationType:"slide",animationDuration:0,headerAnimationDuration:0,autoSeparators:false,readOnly:false,roundedCorners:true,disabled:false,enableScrolling:true,touchMode:false,_childrenMap:{},_parentMap:{},_lock:false,_backButton:null,_currentPage:null,_header:null,_oldHost:undefined,rtl:false,aria:{"aria-disabled":{name:"disabled",type:"boolean"}}};c.extend(true,this,d);return d},destroy:function(){this.host.remove()},createInstance:function(){c.jqx.aria(this);this.host.attr("data-role","listmenu");this.host.attr("role","tree")},refresh:function(d){this._render();this._removeClasses();this._addClasses();this._currentPage=this._currentPage||this.host.children(".jqx-listmenu").first();this._changeHeader(this._currentPage);this._removeEventHandlers();this._addEventHandlers()},_render:function(){this._renderHost();this._renderAutoSeparators();this._renderSublists();this._renderFilterBar();this._renderHeader();this.host.css({width:this.width,height:this.height});if(this.disabled){this.disable()}if(this.enableScrolling&&this.host.jqxPanel&&this.panel){this.panel.jqxPanel("_arrange")}},resize:function(e,d){this.width=e;this.height=d;this.host.css({width:this.width,height:this.height});if(this.panel){this.panel.jqxPanel("_arrange")}},_renderHost:function(){if(!this.host.is("div")){this._oldHost=this.host;this.host.wrap("<div/>");this.host=this.host.parent();this.element=this.host[0];if(this.host.jqxPanel&&this.enableScrolling){this.host.wrap("<div/>");this.panel=this.host.parent();this.panel[0].id="panel"+this.element.id;this.panel.jqxPanel({theme:this.theme,autoUpdate:true,width:this.width,height:this.height,touchMode:this.touchMode});this.host.css({width:"100%"});this.host.css({height:"auto"});this.host.css("border","none")}}else{this.element.style.overflow="hidden"}if(!this.enableScrolling){this.element.style.overflow="hidden"}if(c.jqx.browser.msie&&c.jqx.browser.version<8){this.element.style.position="relative"}if(this.enableScrolling&&this.panel){this.panel.jqxPanel("_arrange")}},_renderAutoSeparators:function(g){var f=this.host.find(".jqx-listmenu-auto-separator"),d=this.host.find('[data-role="listmenu"]'),g,e;f.remove();for(e=0;e<d.length;e+=1){g=c(d[e]);if(g.data("auto-separators")||this.autoSeparators){this._renderListAutoSeparators(g)}}},_renderSublists:function(){var e=[(this.host.find(".jqx-listmenu").first()[0]||this.host.find("ul,ol").first()[0])],g,d,k,f,j;this._refreshList(e[0]);while(e.length){k=e.pop();g=this._getChildrenByTagName(k,"li","LI");f=g.length;for(var h=0;h<f;h+=1){d=g[h];c(d).attr("role","treeitem");j=this._getChildList(d);this._refreshLi(d,h,f);if(j){e.push(j);this._refreshList(j,d,true)}}}},_refreshList:function(f,e,d){f=c(f);if(f.data("role")==="listmenu"){if(!f.is(".jqx-listmenu")){this._renderList(f);this._handleListId(f);this._addListClasses(f)}if(e){this._expandHierarchy(f[0],e)}if(d){this._handleSublist(f[0])}}},_renderList:function(d){d=c(d);if(!d.is(".jqx-listmenu")){d.detach();d.appendTo(this.host)}},_handleListId:function(d){if(!d[0].id){d[0].id="jqx-listmenu-"+b;b+=1}},_renderListAutoSeparators:function(h){var e=h.children("li"),k,d;var j={};for(var g=0;g<e.length;g+=1){d=c(e[g]);if(!d.data("role")){if(c.trim(d.text())[0]!==k){k=c.trim(d.text())[0];var f=c('<li data-role="separator" class="'+this.toThemeProperty("jqx-listmenu-auto-separator")+'">'+k+"</li>");f.insertBefore(d);f[0].items=new Array();j=f[0]}if(j.items){j.items[j.items.length]=d[0]}}}},_addListClasses:function(d){d.addClass("jqx-listmenu")},_expandHierarchy:function(g,f){if(f&&g){var e=f.id,d=g.id;this._childrenMap[e]=d;this._parentMap[d]=e}},_handleSublist:function(d){if(!this._currentPage||d!==this._currentPage[0]){d.style.display="none"}else{d.style.display="block"}},_getChildrenByTagName:function(f,e,g){var d=[],h={};h[e]=h[g]=true;f=f.firstChild;while(f){if(h[f.nodeName]){d.push(f)}f=f.nextSibling}return d},_renderFilterBar:function(){if(!this._filterBar){this._filterBar=c("<div/>");this._filterInput=c('<input type="text" />');this._filterBar.append(this._filterInput);this.host.prepend(this._filterBar)}var d=false;if(c.jqx.browser.msie&&c.jqx.browser.version<8){d=true}if(!d){this._filterInput.attr("placeholder",this.placeHolder)}if(!this.showFilter){this._filterBar.css("display","none")}else{this._filterBar.css("display","block")}},_renderHeader:function(){if(!this._header){this._header=c("<div/>");this.host.prepend(this._header);this._renderHeaderLabel()}this._renderBackButton();if(!this.showHeader){this._header.css("display","none")}else{this._header.css("display","block")}},_renderHeaderLabel:function(){this._headerLabel=c("<span/>");this._headerLabel.addClass(this.toThemeProperty("jqx-listmenu-header-label"));this._header.append(this._headerLabel)},_renderBackButton:function(){if(!this._backButton){this._backButton=c('<div><div style="float: left;"></div><span style="float: left;">'+this.backLabel+'</span><div style="clear:both;"></div></div>');this._header.prepend(this._backButton);this._backButton.jqxButton({theme:this.theme});this._backButton.find("div:first").addClass(this.toThemeProperty("jqx-listmenu-backbutton-arrow"));if(!this.showBackButton){this._backButton.css("display","none")}else{this._backButton.css("display","inline-block")}if(this.rtl){var d=c.jqx.browser.msie&&c.jqx.browser.version<8;if(!d){this._backButton.css("position","relative");this._backButton.css("margin-left","100%");this._backButton.css("left",-this._backButton.outerWidth()-15)}else{this._backButton.css("position","relative");this._backButton.css("left","100%");this._backButton.css("margin-left",-this._backButton.outerWidth()-45+"px")}}}if(!this.showBackButton){this._backButton.css("display","none")}else{this._backButton.css("display","inline-block")}},_removeEventHandlers:function(){var d=this.isTouchDevice()&&!this.touchMode;var e=c.jqx.mobile.getTouchEventName("touchstart");this.removeHandler(this._backButton,!d?"click":e);this.removeHandler(this._filterInput,"keyup");this.removeHandler(this._filterInput,"change")},_addEventHandlers:function(){var d=this;var e=this.isTouchDevice()&&!this.touchMode;var f=c.jqx.mobile.getTouchEventName("touchstart");this.addHandler(this._backButton,!e?"click":f,function(){d.back()});this.addHandler(this._filterInput,"keyup change",function(){d._filter(c(this).val())})},_getChildList:function(d){if(!d){return}var h=this._childrenMap[d.id],g;if(d.className.indexOf("jqx-listmenu-item")>=0&&h){return document.getElementById(h)}var f=this._getChildrenByTagName(d,"ul","UL")[0],e=this._getChildrenByTagName(d,"ol","OL")[0];g=f||e;return g},_refreshLi:function(d,g,f){if(d.parentNode&&d.parentNode.getAttribute("data-role")==="listmenu"){if(d.id==""){var e=2}this._handleLiId(d);this._renderLi(d);this._removeLiEventHandlers(d);this._addLiEventHandlers(d);this._addLiClasses(d,g,f)}},_handleLiId:function(d){if(!d.id){d.id="jqx-listmenu-item-"+a;a+=1}},_renderLi:function(d){if((/(separator|header)/).test(c(d).data("role"))||c(d).children(".jqx-listmenu-arrow-right").length>0){return}c(d).wrapInner('<span class="'+this.toThemeProperty("jqx-listmenu-item-label")+'"></span>');if(this.showNavigationArrows||this.alwaysShowNavigationArrows){var f=c("<span/>");var g=c(d).find("ul");var e=c(d).find("ol");if(this.alwaysShowNavigationArrows||(((g.length>0)&&(/(listmenu)/).test(g.data("role")))||((e.length>0)&&(/(listmenu)/).test(e.data("role"))))){f.addClass(this.toThemeProperty("jqx-listmenu-arrow-right"));if(!this.rtl){f.addClass(this.toThemeProperty("jqx-icon-arrow-right"));f.appendTo(d)}else{f.addClass(this.toThemeProperty("jqx-icon-arrow-left"));f.addClass(this.toThemeProperty("jqx-listmenu-arrow-rtl"));f.prependTo(d)}}}},_removeLiEventHandlers:function(d){var g=this.isTouchDevice();var j=c.jqx.mobile.getTouchEventName("touchstart");var i=c.jqx.mobile.getTouchEventName("touchend");var e=c.jqx.mobile.getTouchEventName("touchmove");var f=(!g?"mousedown":j)+".listmenu";var h=(!g?"mouseup":i)+".listmenu";this.removeHandler(c(d),f);this.removeHandler(c(document),h+"."+d.id)},isTouchDevice:function(){var d=c.jqx.mobile.isTouchDevice();if(this.touchMode==true){d=true}return d},_addLiEventHandlers:function(m){m=c(m);var o=this,f=this.toThemeProperty("jqx-listmenu-arrow-right-pressed"),k=m.children(".jqx-listmenu-arrow-right");var d=c.jqx.mobile.isTouchDevice();var j=c.jqx.mobile.getTouchEventName("touchstart");var l=c.jqx.mobile.getTouchEventName("touchend");var g=c.jqx.mobile.getTouchEventName("touchmove");var h=(!d?"mousedown":j)+".listmenu";var e=(!d?"mouseup":l)+".listmenu";var n=null;var i="";if(!(/(separator|readonly)/).test(m.data("role"))&&!this.readOnly){this.addHandler(m,"dragstart",function(){return false});this.addHandler(m,h,function(p){if(!o.disabled){n=p.target;i=c.jqx.position(p);if(m.find('div[data-role="content"]').length==0){if(!d){m.addClass(o.toThemeProperty("jqx-fill-state-pressed"));k.addClass(f)}}}});this.addHandler(m,e,function(p){if(!o.disabled){if(n==p.target||!d){if(d){if(c.jqx.position(p).top===i.top){o.next(m)}}else{if(c.jqx.position(p).top===i.top){o.next(m)}}}}});this.addHandler(c(document),e+"."+m[0].id,function(){if(!o.disabled){m.removeClass(o.toThemeProperty("jqx-fill-state-pressed"));k.removeClass(f)}})}},_addLiClasses:function(d,f,e){d=c(d);if(d.data("role")==="separator"){this._handleSeparatorStyle(d)}else{if(d.data("role")==="header"){this._handleHeaderStyle(d)}else{if(this.readOnly||d.data("role")==="readonly"){d.addClass(this.toThemeProperty("jqx-listmenu-item-readonly"))}else{d.removeClass(this.toThemeProperty("jqx-listmenu-item-readonly"))}this._handleItemStyle(d)}}if(f===0&&!this.showHeader&&!this.showFilter){d.addClass(this.toThemeProperty("jqx-rc-t"))}if(f===e-1){d.addClass(this.toThemeProperty("jqx-rc-b"))}},_handleSeparatorStyle:function(d){d.addClass(this.toThemeProperty("jqx-listmenu-separator"));d.addClass(this.toThemeProperty("jqx-fill-state-pressed"));d[0].style.listStyle="none"},_handleHeaderStyle:function(d){d.css("display","none")},_handleItemStyle:function(d){d.addClass(this.toThemeProperty("jqx-listmenu-item"));if(this.rtl){d.addClass(this.toThemeProperty("jqx-rtl"))}d.addClass(this.toThemeProperty("jqx-fill-state-normal"));d.addClass(this.toThemeProperty("jqx-item"))},back:function(){var e=this._currentPage,d;if(e){d=this._parentMap[e[0].id]}this._back=true;if(c("#"+d).length>0){c.jqx.aria(c("#"+d),"aria-expanded",false)}this._changePage(e,c("#"+d).parent(),this.animationDuration,true);this._back=false},next:function(d){var h=d.attr("id"),f=this._childrenMap[h],g=c("#"+f),e=c("#"+h).parent();c.jqx.aria(d,"aria-expanded",true);this._changePage(e,g,this.animationDuration)},changePage:function(d){if(typeof d==="string"){d=c(d)}if(!d[0]||(d.attr("data-role")!=="listmenu")||d.parents().index(this.host)<0){throw new Error("Invalid newPage. The chosen newPage is not listmenu or it's not part of the selected jqxListMenu hierarchy.")}if(this._currentPage[0]==d[0]){return}this._changePage(this._currentPage,d,this.animationDuration)},_changePage:function(h,f,g,e){if(!this._lock){var d="_"+this.animationType+"Change"+(e?"Back":"");if(f[0]){if(this.showFilter){if(f.find('div[data-role="content"]').length>0){c.each(f.find("li"),function(){if(c(this).data("role")==="separator"){c(this).hide()}});this._filterBar.css("display","none")}else{this._filterBar.css("display","block")}}this._lock=true;this[d](h,f,this.animationDuration,function(){this._lock=false;this._changeHeader(f);this._currentPage=f})}}},_changeHeader:function(e){var f=c(e).find('li[data-role="header"]').first();if(f[0]){var d=this;this._headerLabel.fadeOut(this.headerAnimationDuration/2,function(){d._headerLabel.html(f.html());d._headerLabel.fadeIn(d.headerAnimationDuration/2)})}},_slideChange:function(h,e,g,i){var d=this;if(this.enableScrolling&&this.panel!=null){this.panel.jqxPanel("scrollTo",0,0)}var f=this.rtl;this._initSlide(h,e);if(!f){h.animate({"margin-left":-h.width()-parseInt(h.css("margin-right"),10)||0},g,"easeInOutSine");e.animate({"margin-left":0},g,"easeInOutSine",function(){d._slideEnd(h,e);i.call(d,c(this))})}else{h.animate({"margin-left":h.width()+parseInt(h.css("margin-right"),10)||0},g,"easeInOutSine");e.animate({"margin-left":0},g,"easeInOutSine",function(){d._slideEnd(h,e);i.call(d,c(this))})}},_initSlide:function(f,d){var e=this.rtl;f.width(f.width());d.css({marginTop:-(f.outerHeight(true)),marginLeft:!e?f.width()+(parseInt(f.css("margin-right"),10)||0):-f.width()-(parseInt(f.css("margin-right"),10)||0),display:"block",height:"auto",width:f.width()})},_slideEnd:function(e,d){this.host.css("height","auto");e.css({display:"none",width:"auto",height:"auto",marginTop:0,marginLeft:0});d.css({marginTop:0,marginLeft:0,height:"auto",width:"auto",display:"block"})},_slideChangeBack:function(g,e,f,h){var d=this;this._initSlideBack(g,e);g.animate({"margin-left":!this.rtl?g.width()+parseInt(g.css("margin-right"),10)||0:-g.width()-parseInt(g.css("margin-right"),10)||0},f);e.animate({"margin-left":0},f,function(){d._slideEnd(g,e);h.call(d,c(this))})},_initSlideBack:function(e,d){e.css({marginTop:-(d.outerHeight(true)),width:e.width()});d.css({width:e.width(),marginLeft:!this.rtl?-e.width()-parseInt(e.css("margin-right"),10)||0:e.width()+parseInt(e.css("margin-right"),10)||0,display:"block",height:"auto"})},_fadeChangeBack:function(f,d,e,g){this._fadeChange(f,d,e,g)},_fadeChange:function(g,e,f,h){var d=this;g.fadeOut(f/2,function(){e.fadeIn(f/2,function(){h.call(d,c(this))})})},_removeClasses:function(){this._filterBar.removeClass(this.toThemeProperty("jqx-listmenu-filter"));this._filterBar.removeClass(this.toThemeProperty("jqx-widget-header"));this._filterInput.removeClass(this.toThemeProperty("jqx-listmenu-filter-input"));this._filterInput.removeClass(this.toThemeProperty("jqx-input"));this._header.removeClass(this.toThemeProperty("jqx-listmenu-header"));this._header.removeClass(this.toThemeProperty("jqx-widget-header"));this._header.removeClass(this.toThemeProperty("jqx-rc-t"));if(this.roundedCorners){this.host.removeClass(this.toThemeProperty("jqx-rc-all"))}this.host.removeClass(this.toThemeProperty("jqx-widget"));this.host.removeClass(this.toThemeProperty("jqx-listmenu-widget"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-normal"));this.host.removeClass(this.toThemeProperty("jqx-reset"));if(this.host.find('div[data-role="content"]').length>0){this.host.find('div[data-role="content"]').removeClass(this.toThemeProperty("jqx-widget-content"))}},_addClasses:function(){if(this.roundedCorners){this.host.addClass(this.toThemeProperty("jqx-rc-all"))}else{this.host.removeClass(this.toThemeProperty("jqx-rc-all"))}this.host.addClass("jqx-widget");this.host.addClass("jqx-listmenu-widget");this.host.addClass("jqx-fill-state-normal");this.host.addClass("jqx-reset");this._filterBar.addClass(this.toThemeProperty("jqx-listmenu-filter"));this._filterBar.addClass(this.toThemeProperty("jqx-widget-header"));this._filterInput.addClass(this.toThemeProperty("jqx-listmenu-filter-input"));this._filterInput.addClass(this.toThemeProperty("jqx-input"));this._header.addClass(this.toThemeProperty("jqx-listmenu-header"));this._header.addClass(this.toThemeProperty("jqx-widget-header"));this._header.addClass(this.toThemeProperty("jqx-rc-t"));if(this.host.find('div[data-role="content"]').length>0){this.host.find('div[data-role="content"]').addClass(this.toThemeProperty("jqx-widget-content"))}},_raiseEvent:function(){},_filter:function(h){var f=this.host.find(".jqx-listmenu-item");for(var e=0;e<f.length;e+=1){var g=c.trim(c(f[e]).text());if(!this.filterCallback(g,h)){f[e].style.display="none"}else{f[e].style.display="block"}}var f=this.host.find(".jqx-listmenu-separator");for(var e=0;e<f.length;e+=1){var d=false;c.each(f[e].items,function(){if(c(this).css("display")!="none"){d=true;return false}});if(!d){f[e].style.display="none"}else{f[e].style.display="block"}}},disable:function(){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.disabled=true},enable:function(){this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.disabled=false},propertyChangedHandler:function(d,e,g,f){if(e=="disabled"){if(f){d.disable()}else{d.enable()}}if(e==="backLabel"){d._backButton.html(f);return}else{if(e==="placeHolder"){d._filterInput.attr("placeholder",f)}else{if((/(showFilter|showHeader|showBackButton|width|height|autoSeparators|readOnly)/).test(e)){d._render();return}}}}})}(jqxBaseFramework));try{(function(j,c){c.jqwidgets=c.jqwidgets||{};c.jqwidgets.knockout=function(D){var E=this;var F={},C=D.name;F.init=function(K,L,H,J){var G=c.utils.unwrapObservable(L());var N=c.toJS(G);if(D.reset){D.reset()}if(j.data(K)[C]==undefined){var I=[];j(K)[C]();widget=j.data(K)[C].instance;j.each(D,function(P,Q){if(widget.hasOwnProperty(P)&&N.hasOwnProperty(P)){if(!widget.koupdating){widget.koupdatingFromObservable=true;try{var R=false;if(D.serialize){if(D.serialize(widget,P)){if(c.toJSON(N[P])!=c.toJSON(D.serialize(widget,P))){D.setProperty(widget,P,widget[P],N[P])}R=true}}if(!R){if(c.toJSON(N[P])!=c.toJSON(widget[P])){D.setProperty(widget,P,widget[P],N[P])}}}catch(O){D.setProperty(widget,P,widget[P],N[P])}I[P]=P;widget.koupdatingFromObservable=false}}});var M={};j.each(N,function(O,P){if(I[O]==undefined){M[O]=N[O]}});widget.host[C](M)}widget=j.data(K)[C].instance;widget.koupdatingFromObservable=false;widget.koupdating=false;if(D.events){j.each(D.events,function(){var O=this;j(K).on(O+"."+K.id,function(Q){widget=j.data(K)[C].instance;if(!widget.koupdatingFromObservable){var P=widget;P.koupdating=true;var S=L();var R=D.getProperty(widget,Q,O,G);if(R!=undefined){if(S.hasOwnProperty(R.name)&&j.isFunction(S[R.name])){if(c.isObservable(S[R.name])&&S[R.name].push){L(R.value)}else{S[R.name](R.value)}}else{if(S[R.name]){L(R.value)}}}P.koupdating=false}})})}};F.update=function(K,L,I,J,H){var G=c.utils.unwrapObservable(L());var M=c.toJS(G);widget=j.data(K)[C].instance;if(widget.koupdating){return}j.each(D,function(N,O){if(widget.hasOwnProperty(N)&&M.hasOwnProperty(N)){if(!widget.koupdating){widget.koupdatingFromObservable=true;var P=false;if(D.serialize){if(D.serialize(widget,N)){if(c.toJSON(M[N])!=c.toJSON(D.serialize(widget,N))){D.setProperty(widget,N,widget[N],M[N])}P=true}}if(!P){if(c.toJSON(M[N])!=c.toJSON(widget[N])){D.setProperty(widget,N,widget[N],M[N])}}widget.koupdatingFromObservable=false}}})};c.bindingHandlers[D.name]=F};var y=new c.jqwidgets.knockout({name:"jqxGauge",disabled:false,min:0,max:220,value:0,reset:function(){this.value=0;this.max=220;this.min=0;this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxGauge({disabled:F})}if(D=="min"){C.host.jqxGauge({min:F})}if(D=="max"){C.host.jqxGauge({max:F})}if(D=="value"){C.host.jqxGauge({value:F})}}});var e=new c.jqwidgets.knockout({name:"jqxLinearGauge",disabled:false,min:0,max:220,value:0,reset:function(){this.value=0;this.max=220;this.min=0;this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxLinearGauge({disabled:F})}if(D=="min"){C.host.jqxLinearGauge({min:F})}if(D=="max"){C.host.jqxLinearGauge({max:F})}if(D=="value"){C.host.jqxLinearGauge({value:F})}}});var x=new c.jqwidgets.knockout({name:"jqxSlider",disabled:false,min:0,max:10,value:0,reset:function(){this.value=0;this.max=10;this.min=0;this.disabled=false},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"value",value:E.args.value}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxSlider({disabled:F})}if(D=="min"){C.host.jqxSlider({min:parseFloat(F)})}if(D=="max"){C.host.jqxSlider({max:parseFloat(F)})}if(D=="value"){C.host.jqxSlider({value:parseFloat(F)})}}});var q=new c.jqwidgets.knockout({name:"jqxScrollBar",disabled:false,min:0,max:10,value:0,reset:function(){this.value=0;this.max=10;this.min=0;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:parseInt(E.currentValue)}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxScrollBar({disabled:F})}if(D=="min"){C.host.jqxScrollBar({min:parseFloat(F)})}if(D=="max"){C.host.jqxScrollBar({max:parseFloat(F)})}if(D=="value"){C.host.jqxScrollBar({value:parseFloat(F)})}}});var a=new c.jqwidgets.knockout({name:"jqxProgressBar",disabled:false,value:0,reset:function(){this.value=0;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:parseInt(E.currentValue)}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxProgressBar({disabled:F})}if(D=="value"){C.host.jqxProgressBar({value:parseFloat(F)})}}});var f=new c.jqwidgets.knockout({name:"jqxButton",disabled:false,reset:function(){this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxButton({disabled:F})}}});var i=new c.jqwidgets.knockout({name:"jqxCheckBox",checked:false,disabled:false,reset:function(){this.checked=false;this.disabled=false},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"checked",value:E.args.checked}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxCheckBox({disabled:F})}if(D=="checked"){if(E!=F){C.host.jqxCheckBox({checked:F})}}}});var z=new c.jqwidgets.knockout({name:"jqxRadioButton",checked:false,disabled:false,reset:function(){this.checked=false;this.disabled=false},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"checked",value:E.args.checked}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxRadioButton({disabled:F})}if(D=="checked"){if(E!=F){C.host.jqxRadioButton({checked:F})}}}});var p=new c.jqwidgets.knockout({name:"jqxDateTimeInput",value:null,disabled:false,reset:function(){this.value=null;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:E.args.date}}},setProperty:function(C,D,E,F){if(D=="value"){C.setDate(F)}if(D=="disabled"){C.host.jqxDateTimeInput({disabled:F})}}});var B=new c.jqwidgets.knockout({name:"jqxCalendar",value:null,disabled:false,reset:function(){this.value=null;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:E.args.date}}},setProperty:function(C,D,E,F){if(D=="value"){C.setDate(F)}if(D=="disabled"){C.host.jqxCalendar({disabled:F})}}});var s=new c.jqwidgets.knockout({name:"jqxNumberInput",value:null,events:["valueChanged"],disabled:false,reset:function(){this.value=null;this.disabled=false},getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:D.val()}}},setProperty:function(C,D,E,F){if(D=="value"){C.host.jqxNumberInput("val",F)}if(D=="disabled"){C.host.jqxNumberInput({disabled:F})}}});var l=new c.jqwidgets.knockout({name:"jqxMaskedInput",value:null,events:["valueChanged"],disabled:false,reset:function(){this.value=null;this.disabled=false},getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:D.val()}}},setProperty:function(C,D,E,F){if(D=="value"){C.host.jqxMaskedInput("val",F)}if(D=="disabled"){C.host.jqxMaskedInput({disabled:F})}}});var d=new c.jqwidgets.knockout({name:"jqxListBox",source:null,disabled:false,selectedIndex:-1,reset:function(){this.disabled=false;this.selectedIndex=-1;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){this.selectedIndex=D.selectedIndex;return{name:"selectedIndex",value:D.selectedIndex}}},setProperty:function(C,D,F,G){if(D=="source"){C.source=G;C.refresh()}if(D=="disabled"){C.disabled=G;C._renderItems()}if(D=="selectedIndex"){var E=C.disabled;C.disabled=false;C.selectIndex(G);C.disabled=E;if(E){C._renderItems()}}}});var t=new c.jqwidgets.knockout({name:"jqxDropDownList",source:null,disabled:false,selectedIndex:-1,reset:function(){this.disabled=false;this.selectedIndex=-1;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"selectedIndex",value:D.selectedIndex}}},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxDropDownList({source:F})}if(D=="disabled"){C.host.jqxDropDownList({disabled:F})}if(D=="selectedIndex"){C.host.jqxDropDownList({selectedIndex:F})}}});var k=new c.jqwidgets.knockout({name:"jqxComboBox",source:null,disabled:false,selectedIndex:-1,reset:function(){this.disabled=false;this.selectedIndex=-1;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"selectedIndex",value:D.selectedIndex}}},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxComboBox({source:F})}if(D=="disabled"){C.host.jqxComboBox({disabled:F})}if(D=="selectedIndex"){C.host.jqxComboBox({selectedIndex:F})}}});var v=new c.jqwidgets.knockout({name:"jqxInput",source:null,disabled:false,value:"",reset:function(){this.disabled=false;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"value",value:D.host.val()}}},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxInput({source:F})}if(D=="disabled"){C.host.jqxInput({disabled:F})}if(D=="value"){C.host.jqxInput({value:F})}}});var A=new c.jqwidgets.knockout({name:"jqxTree",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxTree({source:F})}if(D=="disabled"){C.host.jqxTree({disabled:F})}}});var g=new c.jqwidgets.knockout({name:"jqxTabs",disabled:false,reset:function(){this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxTabs({disabled:F})}}});var r=new c.jqwidgets.knockout({name:"jqxWindow",disabled:false,content:"",title:"",reset:function(){this.disabled=false;this.title="";this.content=""},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxWindow({disabled:F})}else{if(D=="content"){C.host.jqxWindow("setContent",F)}else{if(D=="title"){C.host.jqxWindow({title:F})}}}}});var u=new c.jqwidgets.knockout({name:"jqxNavigationBar",disabled:false,reset:function(){this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){if(F!=this.disabled){this.disabled=F;C.host.jqxNavigationBar({disabled:F})}}}});var o=new c.jqwidgets.knockout({name:"jqxMenu",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxMenu({source:F})}if(D=="disabled"){C.host.jqxMenu({disabled:F})}}});var w=new c.jqwidgets.knockout({name:"jqxChart",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){this.source=F;C.host.jqxChart({source:F})}if(D=="disabled"){this.disabled=F;C.host.jqxChart({disabled:F})}}});var b=new c.jqwidgets.knockout({name:"jqxDataTable",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){this.source=F;C.host.jqxDataTable({source:F})}if(D=="disabled"){this.disabled=F;C.host.jqxDataTable({disabled:F})}}});var n=new c.jqwidgets.knockout({name:"jqxTreeGrid",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){this.source=F;C.host.jqxTreeGrid({source:F})}if(D=="disabled"){this.disabled=F;C.host.jqxTreeGrid({disabled:F})}}});var m=new c.jqwidgets.knockout({name:"jqxGrid",source:null,disabled:false,selectedRowIndex:-1,reset:function(){this.disabled=false;this.source=null;this.selectedRowIndex=-1},serialize:function(D,C){if(C=="source"){if(D.source&&D.source._source){return D.source.records}}return false},events:["cellvaluechanged","cellselect","rowselect"],getProperty:function(G,E,I,H){if(I=="cellvaluechanged"){var F=G.host.jqxGrid("getrowid",E.args.rowindex);var M=G.host.jqxGrid("getrowdata",F);var D=H.source;if(D!=undefined){var L={};var C={};var K=false;var J=false;if(D()[F]){j.each(D()[F],function(N,O){L[N]=O;C[N]="";if(c.isObservable(O)&&!c.isComputed(O)){K=true;O(M[N])}if(c.isObservable(O)&&c.isComputed(O)){J=true}})}if(!K){L=M;if(D.replace){D.replace(D()[F],C);D.replace(D()[F],L)}}else{L=M;if(D.replace){D.replace(D()[F],L)}}if(J){G.host.jqxGrid("updaterow",F,c.toJS(D)[F])}return{name:"source",value:D}}}},setProperty:function(F,M,L,D){if(M=="selectedRowIndex"){F.host.jqxGrid("selectrow",D)}if(M=="source"){if(this.source==null||D==null){if(this.source!=D){this.source=D;var C={localdata:D,datatype:"local"};var K=new j.jqx.dataAdapter(C);F.host.jqxGrid({source:K})}}else{var C={localdata:D,datatype:"local"};var K=new j.jqx.dataAdapter(C);K.dataBind();if(!L.records||!K.records){return}var O=Math.max(L.records.length,K.records.length);var J=Math.abs(L.records.length-K.records.length);if(J==0){if(O>10){F.host.jqxGrid({source:K});return}}if(J>1){F.host.jqxGrid("beginupdate")}var N=new Array();for(var H=0;H<O;H++){var I=K.records[H];if(I==undefined){var E=F.host.jqxGrid("getrowid",H);N.push(E)}else{var G=L.records[H]!=undefined;if(G){if(c.toJSON(I)!=c.toJSON(L.records[H])){if(L.records[H].uid!=undefined){I.uid=L.records[H].uid;if(c.toJSON(I)==c.toJSON(L.records[H])){continue}}var E=F.host.jqxGrid("getrowid",H);F.host.jqxGrid("updaterow",E,I)}}else{F.host.jqxGrid("addrow",null,I)}}}if(N.length>0){F.host.jqxGrid("deleterow",N)}if(J>1){F.host.jqxGrid("endupdate")}}}if(M=="disabled"){F.host.jqxGrid({disabled:D})}}});var h=new c.jqwidgets.knockout({name:"jqxBulletChart",pointer:{value:0},target:{value:0},disabled:false,reset:function(){this.pointer.value=0;this.target.value=0;this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="pointer"){C.host.jqxBulletChart({pointer:F})}if(D=="target"){C.host.jqxBulletChart({target:F})}if(D=="disabled"){C.host.jqxBulletChart({disabled:F})}}})}(jqxBaseFramework,ko))}catch(error){var er=error};(function(b){var a=0;b.jqx.jqxWidget("jqxScrollView","",{});b.extend(b.jqx._jqxScrollView.prototype,{defineInstance:function(){var c={width:320,height:320,buttonsOffset:[0,0],moveThreshold:0.5,currentPage:0,animationDuration:300,showButtons:true,bounceEnabled:true,slideShow:false,slideDuration:3000,disabled:false,_mouseDown:false,_movePermited:false,_startX:-1,_startOffset:-1,_lastOffset:-1,_events:["pageChanged"],_eventsMap:{mousedown:b.jqx.mobile.getTouchEventName("touchstart"),mouseup:b.jqx.mobile.getTouchEventName("touchend"),mousemove:b.jqx.mobile.getTouchEventName("touchmove")}};b.extend(true,this,c);return c},createInstance:function(){a+=1;this._instanceId=a;this._isTouchDevice=b.jqx.mobile.isTouchDevice();var c=this;b.jqx.utilities.resize(this.host,function(){c.refresh()})},resize:function(d,c){this.width=d;this.height=c;this.refresh()},refresh:function(){this.host.width(this.width);this.host.height(this.height);this._render();this._performLayout();if(this.moveThreshold.toString().indexOf("%")>=0){this.moveThreshold=parseInt(this.moveThreshold,10)/100}this._refreshPages();this._refreshButtons();this._removeEventListeners();this._addEventListeners();this._changePage(this.currentPage,false,0);if(this.slideShow){var c=this;this.slideShowTimer=setInterval(function(){if(c.currentPage>=c._pages.length-1){c._changePage(0,true,c.animationDuration)}else{c._changePage(c.currentPage+1,true,c.animationDuration)}},this.slideDuration)}else{if(this.slideShowTimer!=undefined){clearInterval(this.slideShowTimer)}}},destroy:function(){this.host.remove()},_getEvent:function(c){if(this._isTouchDevice){return this._eventsMap[c]}return c},_eventNamespace:function(){return".scrollview"+this._instanceId},_removeEventListeners:function(){this.removeHandler(this._innerWrapper);this.removeHandler(this.host,this._getEvent("mousemove")+this._eventNamespace());this.removeHandler(b(document),this._getEvent("mouseup")+this._eventNamespace())},_getCoordinate:function(c,d){if(this._isTouchDevice){var e=b.jqx.position(c);if(d=="pageX"){return e.left}if(d=="pageY"){return e.top}if(c.originalEvent.touches){return c.originalEvent.touches[0][d]}}return c[d]},_draggedRight:function(){if(this.currentPage>0){var e=this.currentPage-1,d=b(this._pages[e]),c=d.offset().left+d.outerWidth(),f=c-this.host.offset().left;if(f>=(this.host.width()*this.moveThreshold)){this.changePage(e);return true}}return false},_draggedLeft:function(){if(this.currentPage+1<this._pages.length){var d=this.currentPage+1,c=b(this._pages[d]),e=this.host.width()-(c.offset().left-this.host.offset().left);if(e>=(this.host.width()*this.moveThreshold)){this.changePage(d);return true}}return false},_dropTarget:function(){var c;if(this._movedLeft){c=this._draggedLeft()}else{c=this._draggedRight()}if(!c){this.changePage(this.currentPage,false)}},_scrollEnabled:function(c){if(!this._mouseDown){return false}if(!this._movePermited){if(Math.abs(this._getCoordinate(c,"pageX")-this._startX)>=15){this._movePermited=true}}return this._movePermited},_setMoveDirection:function(c){if(this._lastOffset>c){this._movedLeft=true}else{this._movedLeft=false}},_getBounceOffset:function(d){var c=-(this._innerWrapper.width()-this.host.width());if(d>0){d=0}else{if(d<c){d=c}}return d},_addEventListeners:function(){var c=this;this.addHandler(this._innerWrapper,this._getEvent("mousedown")+this._eventNamespace(),function(f){c._mouseDown=true;c._startX=c._getCoordinate(f,"pageX");c._startOffset=c._lastOffset=parseInt(c._innerWrapper.css("margin-left"),10)});this.addHandler(this.host,"dragstart",function(){return false});this.addHandler(this.host,this._getEvent("mousemove")+this._eventNamespace(),function(f){if(c._scrollEnabled(f)){var g=c._startOffset+c._getCoordinate(f,"pageX")-c._startX;if(!c.bounceEnabled){g=c._getBounceOffset(g)}c._innerWrapper.css("margin-left",g);c._setMoveDirection(g);c._lastOffset=g;f.preventDefault();return false}return true});this.addHandler(b(document),this._getEvent("mouseup")+this._eventNamespace(),function(f){if(c._movePermited){c._dropTarget()}c._movePermited=false;c._mouseDown=false});try{if(document.referrer!=""||window.frameElement){if(window.top!=null){if(window.parent&&document.referrer){parentLocation=document.referrer}}if(parentLocation.indexOf(document.location.host)!=-1){var e=function(f){if(c._movePermited){c._dropTarget()}c._movePermited=false;c._mouseDown=false};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",e,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",e)}}}}}catch(d){}},_render:function(){this.host.addClass(this.toThemeProperty("jqx-scrollview"));this.host.css({overflow:"hidden",position:"relative"})},_performLayout:function(){this.host.css({width:this.width,height:this.height})},_renderPages:function(){if(!this._innerWrapper){this._innerWrapper=b("<div/>");this.host.wrapInner(this._innerWrapper);this._innerWrapper=this.host.children().first()}this._innerWrapper.addClass(this.toThemeProperty("jqx-scrollview-inner-wrapper"));this._innerWrapper.height(this.host.height())},_refreshPage:function(c){c.addClass(this.toThemeProperty("jqx-scrollview-page"));this._performPageLayout(c)},_refreshPages:function(){var c=this,d=0;this._renderPages();this._pages=this._innerWrapper.children();this._pages.each(function(){c._refreshPage(b(this));d+=b(this).outerWidth(true)});this._innerWrapper.width(d)},_performPageLayout:function(c){c.css("float","left");c.width(this.host.width());c.height(this.host.height())},_refreshButtons:function(){this._renderButtons();this._removeButtonsEventListeners();this._addButtonsEventListeners();this._performButtonsLayout()},_removeButtonsEventListeners:function(){var c=this;this._buttonsContainer.children().each(function(){c.removeHandler(b(this))})},_addButtonsEventListeners:function(){var c=this;this._buttonsContainer.children().each(function(d){c.addHandler(b(this),"click",function(){c.changePage(d)})})},_performButtonsLayout:function(){var d=(this.host.width()-this._buttonsContainer.width())/2;var c=this._buttonsContainer.outerHeight()!=0?this._buttonsContainer.outerHeight():14;this._buttonsContainer.css({position:"absolute",left:d+parseInt(this.buttonsOffset[0],10),top:this.host.height()-2*c+parseInt(this.buttonsOffset[1],10)-1})},_renderButtons:function(){if(this._buttonsContainer){this._buttonsContainer.remove()}var e,d;this._buttons=[];this._buttonsContainer=b("<span/>");for(var c=0;c<this._pages.length;c+=1){d=b('<span class="'+this.toThemeProperty("jqx-scrollview-button")+" "+this.toThemeProperty("jqx-fill-state-normal")+'"></span>');this._buttonsContainer.append(d);this._buttons[c]=d}this._buttonsContainer.appendTo(this.host);if(!this.showButtons){this._buttonsContainer.hide()}},_raiseEvent:function(c,e){var d=new b.Event(this._events[c]);d.args=e;return this.host.trigger(d)},_swapButtons:function(c,d){this._buttons[c].removeClass(this.toThemeProperty("jqx-scrollview-button-selected"));this._buttons[c].removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._buttons[d].addClass(this.toThemeProperty("jqx-scrollview-button-selected"));this._buttons[d].addClass(this.toThemeProperty("jqx-fill-state-pressed"))},_changePage:function(d,f,i){if(this.disabled){return}var h=b(this._pages[d]),g=(this.host.width()-h.width())/2,e=h.offset().left-this._innerWrapper.offset().left-g,j=this.currentPage,c=this;if(typeof i==="undefined"){i=this.animationDuration}this._innerWrapper.stop();this._swapButtons(this.currentPage,d);this.currentPage=d;this._innerWrapper.animate({marginLeft:-e},i,function(){if(f){c._raiseEvent(0,{currentPage:d,oldPage:j})}})},propertyChangedHandler:function(c,d,f,e){if(d==="currentPage"){c.currentPage=f;c.changePage(e)}else{if((/(buttonsOffset|width|height)/).test(d)){c.refresh()}else{if(d==="showButtons"){if(!e){c._buttonsContainer.css("display","none")}else{c._buttonsContainer.css("display","block")}return}else{if(d=="slideShow"){c.refresh()}}}}},changePage:function(c){if(c>=this._pages.length||c<0){throw new Error("Invalid index!")}this._changePage(c,true)},forward:function(){if(this.currentPage+1<this._pages.length){this.changePage(this.currentPage+1)}},back:function(){if(this.currentPage-1>=0){this.changePage(this.currentPage-1)}}})}(jqxBaseFramework));(function(b){var a=0;b.jqx.jqxWidget("jqxTouch","",{});b.extend(b.jqx._jqxTouch.prototype,{defineInstance:function(){this.swipeMin=50;this.swipeMax=500;this.swipeDelay=1000;this.tapHoldDelay=750;this.swipeMaxVerticalDisance=100;this.swipeMaxHorizontalDisance=100;this.orientationChangeEnabled=true;this._eventsMap={mousedown:b.jqx.mobile.getTouchEventName("touchstart"),mouseup:b.jqx.mobile.getTouchEventName("touchend"),mousemove:b.jqx.mobile.getTouchEventName("touchmove")};this._swipeLocked=false;this._rotationInterval=200;this._events=["tap","taphold","swipe","swipeleft","swiperight","swipetop","swipebottom","orientationchange"];this._instanceId=-1},createInstance:function(){a+=1;this._instanceId=a;this._isTouchDevice=b.jqx.mobile.isTouchDevice();this._defineRotateHandler()},refresh:function(){this._removeEventListeners();this._addEventListeners()},_defineRotateHandler:function(){var c=this;if(!this._rotateHandler){this._rotateHandler=function(){c._checkOrientation()}}},_getEvent:function(c){if(this._isTouchDevice){c=this._eventsMap[c]}return c+this._getEventNamespace()},_getEventNamespace:function(){return".swipe"+this._instanceId},_removeEventListeners:function(){clearInterval(this._rotateInterval);this.removeHandler(b(document),this._getEvent("mouseup"));this.removeHandler(this.host,this._getEvent("mousedown"));this.removeHandler(this.host,this._getEvent("mousemove"));if(window.removeEventListener){window.removeEventListener("resize",this._rotateHandler);window.removeEventListener("orientationchange",this._rotateHandler)}},_addEventListeners:function(){var c=this;this.addHandler(this.host,this._getEvent("mouseup"),function(d){c._resetSwipe();c._resetTap()});this.addHandler(this.host,this._getEvent("mousedown"),function(d){c._initSwipe(d);c._initTap(d)});this.addHandler(this.host,this._getEvent("mousemove"),function(d){c._maxSwipeVerticalDistance=Math.max(c._maxSwipeVerticalDistance,Math.abs(c._startY-c._getCoordinates(d).y));c._maxSwipeHorizontalDistance=Math.max(c._maxSwipeHorizontalDistance,Math.abs(c._startX-c._getCoordinates(d).x));c._mouseMoved=true;return c._handleSwipeEvents(d)});this._rotationListeners()},_handleSwipeEvents:function(d){var c=true;if(this._mouseDown&&!this._tapHoldFired){c=this._handleVerticalSwipeEvents(d);c=this._handleHorizontalSwipeEvents(d)}this._lastPosition=this._getCoordinates(d);return c},_handleVerticalSwipeEvents:function(f){var d,c;d=this._getCoordinates(f).y;c=d-this._startY;if(this._maxSwipeHorizontalDistance<this.swipeMaxHorizontalDisance){return this._swiped(f,c,2)}return true},_handleHorizontalSwipeEvents:function(f){var d,c;d=this._getCoordinates(f).x;c=d-this._startX;if(this._maxSwipeVerticalDistance<this.swipeMaxVerticalDisance){return this._swiped(f,c)}return true},_swiped:function(f,d,c){c=c||0;if(Math.abs(d)>=this.swipeMin&&!this._swipeEvent&&!this._swipeLocked){this._swipeEvent=this._getSwipeEvent(d,c)}if(Math.abs(d)<=this.swipeMax){f.stopImmediatePropagation();return false}return true},_getSwipeEvent:function(e,d){var c;if(e<0){c={eventId:3+d,data:{target:this.host}}}else{c={eventId:4+d,data:{target:this.host}}}return c},_resetSwipe:function(){if(this._swipeEvent&&!this._swipeLocked){this._raiseEvent(2,this._swipeEvent.data);this._raiseEvent(this._swipeEvent.eventId,this._swipeEvent.data)}clearTimeout(this._swipeTimeout);this._mouseDown=false},_resetTap:function(){clearTimeout(this._tapHoldTimeout);if(!this._tapHoldFired&&!this._mouseMoved){this._raiseEvent(0,{target:this.host})}},_initTap:function(d){var c=this;this._mouseMoved=false;this._tapHoldFired=false;this._tapHoldTimeout=setTimeout(function(){if(!c._mouseMoved){c._raiseEvent(1,{target:this.host});c._tapHoldFired=true}},this.tapHoldDelay)},_initSwipe:function(d){var c=this;this._mouseDown=true;this._maxSwipeVerticalDistance=0;this._maxSwipeHorizontalDistance=0;this._startX=this._getCoordinates(d).x;this._startY=this._getCoordinates(d).y;this._swipeLocked=false;this._swipeEvent=null;this._swipeTimeout=setTimeout(function(){c._swipeLocked=true},this.swipeDelay)},_rotationListeners:function(){var c=this;this._previousOrientation=window.orientation;this._previousWidth=screen.width;if(this.orientationChangeEnabled){if(window.addEventListener){window.addEventListener("resize",this._rotateHandler,false);window.addEventListener("orientationchange",this._rotateHandler,false)}this._rotateInterval=setInterval(function(){c._checkOrientation()},this._rotationInterval)}},_checkOrientation:function(){var c="vertical";if(window.orientation!==this._previousOrientation||this._previousWidth!==screen.width){if(window.orientation===90||screen.width>screen.height){c="horizontal"}this._raiseEvent(7,{orientation:c})}this._previousOrientation=window.orientation;this._previousWidth=screen.width},_raiseEvent:function(d,c){var e=b.Event(this._events[d]);e.args=c;return this.host.trigger(e)},_getCoordinates:function(d){var f=b.jqx.position(d);f.x=f.left;f.y=f.top;return f},propertyChangedHandler:function(c,d,f,e){if(d==="orientationChangeEnabled"){this.refresh()}else{return}},isTouchDevice:function(){return this._isTouchDevice}})}(jqxBaseFramework));(function(a){a.jqx.jqxWidget("jqxInput","",{});a.extend(a.jqx._jqxInput.prototype,{defineInstance:function(){var c=this;var b={disabled:false,filter:c._filter,sort:c._sort,highlight:c._highlight,dropDownWidth:null,renderer:c._renderer,opened:false,$popup:a("<ul></ul>"),source:[],roundedCorners:true,searchMode:"default",placeHolder:"",width:null,height:null,value:"",rtl:false,displayMember:"",valueMember:"",events:["select","open","close","change"],popupZIndex:20000,items:8,item:'<li><a href:"#"></a></li>',minLength:1,maxLength:null};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){if(this.element.nodeName.toLowerCase()=="textarea"){this.element.style.overflow="auto"}else{if(this.element.nodeName.toLowerCase()=="div"){this.baseHost=this.element;var b=this.host.find("input");var d=false;a.each(b,function(){var f=this.type;if(f==null||f=="text"||f=="textarea"){b=a(this);d=true;return false}});if(!d){throw new Error("jqxInput: Missing Text Input in the Input Group")}if(b.length>0){this.baseHost=a(this.element);this.host=b;this.element=b[0];this.baseHost.addClass(this.toThemeProperty("jqx-widget"));this.baseHost.addClass(this.toThemeProperty("jqx-rc-all"));this.baseHost.addClass(this.toThemeProperty("jqx-input-group"));var c=this.baseHost.children();var e=this;a.each(c,function(f){a(this).addClass(e.toThemeProperty("jqx-input-group-addon"));a(this).removeClass(e.toThemeProperty("jqx-rc-all"));if(f==0){a(this).addClass(e.toThemeProperty("jqx-rc-l"))}if(f==c.length-1){a(this).addClass(e.toThemeProperty("jqx-rc-r"))}if(this!=e.element){a(this).addClass(e.toThemeProperty("jqx-fill-state-normal"))}})}}}this.addHandlers();if(this.rtl){this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.host.attr("role","textbox");a.jqx.aria(this,"aria-autocomplete","both");a.jqx.aria(this,"aria-disabled",this.disabled);a.jqx.aria(this,"aria-readonly",false);a.jqx.aria(this,"aria-multiline",false);if(this.source&&this.source.length){a.jqx.aria(this,"aria-haspopup",true)}if(this.value!=""){this.element.value=this.value}this._oldsource=this.source;this._updateSource()},_updateSource:function(){var d=this;var b=function(f){var e=new Array();e=a.map(f,function(h){if(h==undefined){return null}if(typeof h==="string"||h instanceof String){return{label:h,value:h}}if(typeof h!="string"&&h instanceof String==false){var g="";var i="";if(d.displayMember!=""&&d.displayMember!=undefined){if(h[d.displayMember]){g=h[d.displayMember]}}if(d.valueMember!=""&&d.valueMember!=undefined){i=h[d.valueMember]}if(g==""){g=h.label}if(i==""){i=h.value}return{label:g,value:i}}return h});return e};if(this.source&&this.source._source){this.adapter=this.source;if(this.adapter._source.localdata!=null){this.adapter.unbindBindingUpdate(this.element.id);this.adapter.bindBindingUpdate(this.element.id,function(e){d.source=b(d.adapter.records)})}else{var c={};if(this.adapter._options.data){a.extend(d.adapter._options.data,c)}else{if(this.source._source.data){a.extend(c,this.source._source.data)}this.adapter._options.data=c}this.adapter.unbindDownloadComplete(this.element.id);this.adapter.bindDownloadComplete(this.element.id,function(e){d.source=b(d.adapter.records)})}this.source.dataBind();return}if(!a.isFunction(this.source)){this.source=b(this.source)}},_refreshClasses:function(c){var b=c?"addClass":"removeClass";this.host[b](this.toThemeProperty("jqx-widget-content"));this.host[b](this.toThemeProperty("jqx-input"));this.host[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){this.$popup[b](this.toThemeProperty("jqx-noshadow"))}this.$popup[b](this.toThemeProperty("jqx-input-popup"));this.$popup[b](this.toThemeProperty("jqx-menu"));this.$popup[b](this.toThemeProperty("jqx-menu-vertical"));this.$popup[b](this.toThemeProperty("jqx-menu-dropdown"));this.$popup[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-widget-content"));if(this.roundedCorners){this.host[b](this.toThemeProperty("jqx-rc-all"));this.$popup[b](this.toThemeProperty("jqx-rc-all"))}if(this.disabled){this.host[b](this.toThemeProperty("jqx-fill-state-disabled"))}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}},selectAll:function(){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},selectLast:function(){var b=this.host;this.selectStart(b[0].value.length)},selectFirst:function(){var b=this.host;this.selectStart(0)},selectStart:function(c){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(c,c)}else{var d=b[0].createTextRange();d.collapse(true);d.moveEnd("character",c);d.moveStart("character",c);d.select()}},10)},focus:function(){try{this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},refresh:function(){this._refreshClasses(false);this._refreshClasses(true);if(!this.baseHost){if(this.width){this.host.width(this.width)}if(this.height){this.host.height(this.height)}}else{if(this.width){this.baseHost.width(this.width)}if(this.height){this.baseHost.height(this.height);var d=this;var c=0;var b=this.baseHost.height()-2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.baseHost.css("display","inline-block")}a.each(this.baseHost.children(),function(){a(this).css("height","100%");if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(this).css("height",b+"px")}if(this!==d.element){c+=a(this).outerWidth()+2}});this.host.css("width",this.baseHost.width()-c-4+"px");if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.host.css("min-height",b+"px");this.host.css("line-height",b+"px")}}}this.host.attr("disabled",this.disabled);if(this.maxLength){this.host.attr("maxlength",this.maxLength)}if(!this.host.attr("placeholder")){this._refreshPlaceHolder()}},_refreshPlaceHolder:function(){if("placeholder" in this.element){this.host.attr("placeHolder",this.placeHolder)}else{var b=this;if(this.element.value==""){this.element.value=this.placeHolder;this.host.focus(function(){if(b.element.value==b.placeHolder){b.element.value=""}});this.host.blur(function(){if(b.element.value==""||b.element.value==b.placeHolder){b.element.value=b.placeHolder}})}}},destroy:function(){this.removeHandlers();if(this.baseHost){this.baseHost.remove()}else{this.host.remove()}if(this.$popup){this.$popup.remove()}},propertyChangedHandler:function(b,c,e,d){if(c=="placeHolder"){b._refreshPlaceHolder();return}if(c==="theme"){a.jqx.utilities.setTheme(e,d,b.host)}if(c=="opened"){if(d){b.open()}else{b.close()}return}if(c=="source"){b._oldsource=d;b._updateSource()}if(c=="displayMember"||c=="valueMember"){b.source=b._oldsource;b._updateSource()}if(c=="disabled"){a.jqx.aria(b,"aria-disabled",b.disabled)}if(c=="value"){b.element.value=d}b.refresh()},select:function(c,d){var e=this.$popup.find(".jqx-fill-state-pressed").attr("data-value");var b=this.$popup.find(".jqx-fill-state-pressed").attr("data-name");this.element.value=this.renderer(b,this.element.value);this.selectedItem={label:b,value:e};this.host.attr("data-value",e);this.host.attr("data-label",b);this._raiseEvent("0",{item:{label:b,value:e},label:b,value:e});this._raiseEvent("3",{item:{label:b,value:e},label:b,value:e});return this.close()},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object"&&!b.label&&!b.value)){if(this.displayMember!=""&&this.valueMember!=""&&this.selectedItem){if(this.element.value===""){return""}return this.selectedItem}return this.element.value}if(b&&b.label){this.selectedItem={label:b.label,value:b.value};this.host.attr("data-value",b.value);this.host.attr("data-label",b.label);this.value=b;this.element.value=b.label;return this.element.value}this.value=b;this.element.value=b;this.host.attr("data-value",b);this.host.attr("data-label",b);if(b&&b.label){this._raiseEvent("3",{item:{label:b.label,value:b.value},label:b.label,value:b.value})}else{this._raiseEvent("3",{item:{label:b,value:b},label:b,value:b})}return this.element.value},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_renderer:function(b){return b},open:function(){if(a.jqx.isHidden(this.host)){return}var c=a.extend({},this.host.coord(true),{height:this.host[0].offsetHeight});if(this.$popup.parent().length==0){var e=this.element.id+"_popup";this.$popup[0].id=e;a.jqx.aria(this,"aria-owns",e)}this.$popup.appendTo(a(document.body)).css({position:"absolute",zIndex:this.popupZIndex,top:c.top+c.height,left:c.left}).show();var b=0;var d=this.$popup.children();a.each(d,function(){b+=a(this).outerHeight(true)-1});this.$popup.height(b);this.opened=true;this._raiseEvent("1",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",true);return this},close:function(){this.$popup.hide();this.opened=false;this._raiseEvent("2",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",false);return this},suggest:function(c){var b;this.query=this.element.value;if(!this.query||this.query.length<this.minLength){return this.opened?this.close():this}if(a.isFunction(this.source)){b=this.source(this.query,a.proxy(this.load,this))}else{b=this.source}if(b){return this.load(b)}return this},load:function(b){var c=this;b=a.grep(b,function(d){return c.filter(d)});b=this.sort(b);if(!b.length){if(this.opened){return this.close()}else{return this}}return this._render(b.slice(0,this.items)).open()},_filter:function(b){var c=this.query;var d=b;if(b.label!=null){d=b.label}else{if(this.displayMember){d=b[this.displayMember]}}switch(this.searchMode){case"none":break;case"containsignorecase":default:return a.jqx.string.containsIgnoreCase(d,c);case"contains":return a.jqx.string.contains(d,c);case"equals":return a.jqx.string.equals(d,c);case"equalsignorecase":return a.jqx.string.equalsIgnoreCase(d,c);case"startswith":return a.jqx.string.startsWith(d,c);case"startswithignorecase":return a.jqx.string.startsWithIgnoreCase(d,c);case"endswith":return a.jqx.string.endsWith(d,c);case"endswithignorecase":return a.jqx.string.endsWithIgnoreCase(d,c)}},_sort:function(b){var h=[],d=[],f=[],e;for(var c=0;c<b.length;c++){var e=b[c];var g=e;if(e.label){g=e.label}else{if(this.displayMember){g=e[this.displayMember]}}if(g.toString().toLowerCase().indexOf(this.query.toString().toLowerCase())===0){h.push(e)}else{if(g.toString().indexOf(this.query)>=0){d.push(e)}else{if(g.toString().toLowerCase().indexOf(this.query.toString().toLowerCase())>=0){f.push(e)}}}}return h.concat(d,f)},_highlight:function(c){var d=this.query;d=d.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var b=new RegExp("("+d+")","ig");return c.replace(b,function(e,f){return"<b>"+f+"</b>"})},_render:function(b){var c=this;b=a(b).map(function(e,f){var g=f;if(f.value!=undefined){if(f.label!=undefined){e=a(c.item).attr({"data-name":f.label,"data-value":f.value})}else{e=a(c.item).attr({"data-name":f.value,"data-value":f.value})}}else{if(f.label!=undefined){e=a(c.item).attr({"data-value":f.label,"data-name":f.label})}else{if(c.displayMember!=undefined&&c.displayMember!=""){e=a(c.item).attr({"data-name":f[c.displayMember],"data-value":f[c.valueMember]})}else{e=a(c.item).attr({"data-value":f,"data-name":f})}}}if(f.label){g=f.label}else{if(c.displayMember){g=f[c.displayMember]}}e.find("a").html(c.highlight(g));var d="";if(c.rtl){d=" "+c.toThemeProperty("jqx-rtl")}e[0].className=c.toThemeProperty("jqx-item")+" "+c.toThemeProperty("jqx-menu-item")+" "+c.toThemeProperty("jqx-rc-all")+d;return e[0]});b.first().addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.$popup.html(b);if(!this.dropDownWidth){this.$popup.width(this.host.outerWidth()-6)}else{this.$popup.width(this.dropDownWidth)}return this},next:function(c){var d=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=d.next();if(!b.length){b=a(this.$popup.find("li")[0])}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},prev:function(c){var d=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=d.prev();if(!b.length){b=this.$popup.find("li").last()}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},addHandlers:function(){this.addHandler(this.host,"focus",a.proxy(this.onFocus,this));this.addHandler(this.host,"blur",a.proxy(this.onBlur,this));this.addHandler(this.host,"keypress",a.proxy(this.keypress,this));this.addHandler(this.host,"keyup",a.proxy(this.keyup,this));this.addHandler(this.host,"keydown",a.proxy(this.keydown,this));this.addHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.on){this.$popup.on("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.bind("mouseenter","li",a.proxy(this.mouseenter,this))}},removeHandlers:function(){this.removeHandler(this.host,"focus",a.proxy(this.onFocus,this));this.removeHandler(this.host,"blur",a.proxy(this.onBlur,this));this.removeHandler(this.host,"keypress",a.proxy(this.keypress,this));this.removeHandler(this.host,"keyup",a.proxy(this.keyup,this));this.removeHandler(this.host,"keydown",a.proxy(this.keydown,this));this.removeHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.off){this.$popup.off("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.unbind("mouseenter","li",a.proxy(this.mouseenter,this))}},move:function(b){if(!this.opened){return}switch(b.keyCode){case 9:case 13:case 27:b.preventDefault();break;case 38:if(!b.shiftKey){b.preventDefault();this.prev()}break;case 40:if(!b.shiftKey){b.preventDefault();this.next()}break}b.stopPropagation()},keydown:function(b){this.suppressKeyPressRepeat=~a.inArray(b.keyCode,[40,38,9,13,27]);this.move(b)},keypress:function(b){if(this.suppressKeyPressRepeat){return}this.move(b)},keyup:function(c){switch(c.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!this.opened){return}this.select(c,this);break;case 27:if(!this.opened){return}this.close();break;default:var b=this;if(this.timer){clearTimeout(this.timer)}this.timer=setTimeout(function(){b.suggest()},300)}c.stopPropagation();c.preventDefault()},clear:function(){this.host.val("")},onBlur:function(c){var b=this;setTimeout(function(){b.close()},150);b.host.removeClass(b.toThemeProperty("jqx-fill-state-focus"));this.value=this.host.val()},onFocus:function(c){var b=this;b.host.addClass(b.toThemeProperty("jqx-fill-state-focus"))},click:function(b){b.stopPropagation();b.preventDefault();this.select(b,this)},mouseenter:function(b){this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed"));a(b.currentTarget).addClass(this.toThemeProperty("jqx-fill-state-pressed"))}})})(jqxBaseFramework);(function($){$.jqx.response=function(){this.defineInstance()};$.jqx.response.prototype={defineInstance:function(){this._handlers=new Array();this.refresh();var that=this;this.addHandler($(document),"scroll.jqxresponse",function(){that.scroll=that.getScroll()})},refresh:function(){this.os=this.getOS();this.browser=this.getBrowser();this.device=this.getDevice();this.viewPort=this.getViewPort();this.document=this.getDocument();this.scroll=this.getScroll();this.media=window.matchMedia||window.msMatchMedia||function(){return{}}},refreshSize:function(){this.viewPort=this.getViewPort();this.document=this.getDocument()},addHandler:function(source,event,func,data){switch(event){case"mousemove":if(window.addEventListener&&!data){source[0].addEventListener("mousemove",func,false);return false}break}if(source.on){source.on(event,func)}else{source.bind(event,func)}},removeHandler:function(source,event,func){if(event==undefined){if(source.off){source.off()}else{source.unbind()}return}if(func==undefined){if(source.off){source.off(event)}else{source.unbind(event)}}else{if(source.off){source.off(event,func)}else{source.unbind(event,func)}}},destroy:function(){this.removeHandler($(window),"resize.jqxresponse");this.removeHandler($(document),"scroll.jqxresponse");for(var i=0;i<this._handlers.length;i++){var element=this._handlers[i];this.removeHandler($(element),"mousedown.response"+element[0].id);this.removeHandler($(element),"touchstart.response"+element[0].id);this.removeHandler($(element),"mousemove.response"+element[0].id);this.removeHandler($(element),"touchmove.response"+element[0].id);this.removeHandler($(element),"mouseup.response"+element[0].id);this.removeHandler($(element),"touchend.response"+element[0].id)}},resize:function(resizeFuncs){var that=this;this.removeHandler($(window),"resize.jqxresponse");this.addHandler($(window),"resize.jqxresponse",function(event){if(resizeFuncs){if($.isArray(resizeFuncs)){for(var i=0;i<resizeFuncs.length;i++){resizeFuncs[i]()}}else{resizeFuncs()}}that.refreshSize()});if(resizeFuncs==null){this.removeHandler($(window),"resize.jqxresponse")}},pointerDown:function(element,func){if(element&&func){var touchDevice=$.jqx.mobile.isTouchDevice();var that=this;var canCallFunc=true;if(touchDevice){var touchstart=$.jqx.mobile.getTouchEventName("touchstart")+".response"+element[0].id;if(func!=null){this.addHandler($(element),touchstart,function(event){var position=$.jqx.position(event);var result=func(event,position,"touch");canCallFunc=false;setTimeout(function(){canCallFunc=true},500);return result})}else{this.removeHandler($(element),touchstart)}}if(func!=null){this.addHandler($(element),"mousedown.response"+element[0].id,function(event){var position=$.jqx.position(event);if(canCallFunc){return func(event,position,"mouse")}})}else{this.removeHandler($(element),"mousedown.response"+element[0].id)}this._handlers.push(element)}},pointerUp:function(element,func){if(element){var touchDevice=$.jqx.mobile.isTouchDevice();var that=this;var canCallFunc=true;if(touchDevice){var touchend=$.jqx.mobile.getTouchEventName("touchend")+".response"+element[0].id;if(func!=null){this.addHandler($(element),touchend,function(event){var position=$.jqx.position(event);var result=func(event,position,"touch");canCallFunc=false;setTimeout(function(){canCallFunc=true},500);return result})}else{this.removeHandler($(element),touchend)}}if(func!=null){this.addHandler($(element),"mouseup.response"+element[0].id,function(event){var position=$.jqx.position(event);if(canCallFunc){return func(event,position,"mouse")}})}else{this.removeHandler($(element),"mouseup.response"+element[0].id)}this._handlers.push(element)}},pointerMove:function(element,func){if(element){var touchDevice=$.jqx.mobile.isTouchDevice();if(touchDevice){var touchmove=$.jqx.mobile.getTouchEventName("touchmove")+".response"+element[0].id;if(func!=null){this.addHandler($(element),touchmove,function(event){var touches=$.jqx.mobile.getTouches(event);if(touches.length==1){var position=$.jqx.position(event);return func(event,position,"touch")}})}else{this.removeHandler($(element),touchmove)}}else{if(func!=null){this.addHandler($(element),"mousemove.response"+element[0].id,function(event){var position=$.jqx.position(event);return func(event,position,"mouse")})}else{this.removeHandler($(element),"mousemove.response"+element[0].id)}}this._handlers.push(element)}},isHidden:function(element){return $.jqx.isHidden($(element))},inViewPort:function(element){var viewPort=this.viewPort;if(element.getBoundingClientRect){var r=element.getBoundingClientRect?element.getBoundingClientRect():{};return r&&(r.bottom>=0&&r.top<=viewPort.height&&r.right>=0&&r.left<=viewPort.width)}return false},getScroll:function(){var obj={left:window.pageXOffset||document.scrollLeft,top:window.pageYOffset||document.scrollTop};if(obj.left==undefined){obj.left=0}if(obj.top==undefined){obj.top=0}return obj},getDocument:function(){return{width:$(document).width(),height:$(document).height()}},getViewPort:function(){return{width:$(window).width(),height:$(window).height()}},getTouch:function(){var eventName="ontouchstart";var supported=(eventName in window);if(supported){return true}else{var eventName="MSPointerDown";var supported=(eventName in window);if(supported){return true}}if($.jqx.mobile.isWindowsPhone()){return true}return false},getDevice:function(){var osName=this.os.name;var match=window.location.search.match(/deviceType=(Tablet|Phone)/),nativeDeviceType=window.deviceType;var deviceType="";if(match&&match[1]){deviceType=match[1]}else{if(nativeDeviceType==="iPhone"){deviceType="Phone"}else{if(nativeDeviceType==="iPad"){deviceType="Tablet"}else{if(osName!="Android"&&osName!="iOS"&&/Windows|Linux|MacOS|Mac OS|Mac OS X/.test(osName)){deviceType="Desktop"}else{if(osName=="iOS"&&navigator.userAgent.toLowerCase().indexOf("ipad")>=0){deviceType="Tablet"}else{if(osName=="RIMTablet"){deviceType="Tablet"}else{if(osName=="Android"){if(this.os.version&&this.os.version.substring(0,1).indexOf("3")>=0){deviceType="Tablet"}else{if(this.os.version&&this.os.version.substring(0,1).indexOf("4")>=0&&navigator.userAgent.search(/mobile/i)==-1){deviceType="Tablet"}else{deviceType="Phone"}}if(navigator.userAgent.toLowerCase().indexOf("kindle fire")>=0){deviceType="Tablet"}}else{deviceType="Phone"}}}}}}}if(/Windows/.test(osName)){if(navigator.userAgent.indexOf("Windows Phone")>=0||navigator.userAgent.indexOf("WPDesktop")>=0||navigator.userAgent.indexOf("IEMobile")>=0||navigator.userAgent.indexOf("ZuneWP7")>=0){deviceType="Phone"}else{if(navigator.userAgent.indexOf("Touch")>=0){deviceType="Tablet";if(!this.getTouch()){deviceType="Desktop"}}}}return{type:deviceType,touch:this.getTouch(),width:window.screen.width,height:window.screen.height,availWidth:window.screen.availWidth,availHeight:window.screen.availHeight}},canvas:function(){var canvasSupport=false;var canvas=document.createElement("canvas");if(canvas&&canvas.getContext&&canvas.getContext("2d")){canvasSupport=true}return canvasSupport},vml:function(){if(this._vmlSupport==undefined){var a=document.body.appendChild(document.createElement("div"));a.innerHTML='<v:shape id="vml_flag1" adj="1" />';var b=a.firstChild;b.style.behavior="url(#default#VML)";this._vmlSupport=b?typeof b.adj=="object":true;a.parentNode.removeChild(a)}return this._vmlSupport},svg:function(){return document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Image","1.1")},getBrowser:function(){var ua=navigator.userAgent.toLowerCase();var name="";var match=null;var that=this;browserNames={msie:{name:"Internet Explorer",eval:/(msie) ([\w.]+)/.exec(ua)},webkit:{name:"Webkit",eval:/(webkit)[ \/]([\w.]+)/.exec(ua)},chrome:{name:"Chrome",eval:/(chrome)[ \/]([\w.]+)/.exec(ua)},safari:{name:"Safari",eval:/(safari)[ \/]([\w.]+)/.exec(ua)},edge:{name:"Edge",eval:/(edge) ([\w.]+)/.exec(ua)},opera:{name:"Opera",eval:/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)},operamobile:{name:"Opera Mobile",eval:/(opera mobi)(?:.*version|)[ \/]([\w.]+)/.exec(ua)||/(opera tablet)(?:.*version|)[ \/]([\w.]+)/.exec(ua)},dolphin:{name:"Dolphin",eval:/(dolphin)[ \/]([\w.]+)/.exec(ua)},webosbrowser:{name:"webOSBrowser",eval:/(wosbrowser)(?:.*version|)[ \/]([\w.]+)/.exec(ua)},chromemobile:{name:"Chrome Mobile",eval:/(crmo)[ \/]([\w.]+)/.exec(ua)},silk:{name:"Silk",eval:/(silk)[ \/]([\w.]+)/.exec(ua)},firefox:{name:"Firefox",eval:/(firefox)[ \/]([\w.]+)/.exec(ua)},msie11:{name:"Internet Explorer 11",eval:ua.indexOf("rv:11.0")>=0&&ua.indexOf(".net4.0c")>=0},winphone:{name:"Internet Explorer Mobile",eval:ua.indexOf("windows phone 8.1")>=0},other:{name:"Other",eval:ua.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)}};$.each(browserNames,function(index,value){if(this.eval){if(this.name=="Other"){if(!match){match=this.eval;name=this.name}}else{if(this.name=="Internet Explorer 11"){if(!match){match=["","msie",11];name="Internet Explorer"}}else{if(this.name=="Internet Explorer Mobile"){if(!match){match=["","msie",11];name="Internet Explorer"}}else{if(name=="Chrome"&&this.name=="Safari"){return true}match=this.eval;name=this.name}}}}});if(match){var browser={name:name,accessName:match[1]||"",version:match[2]||"0",canvas:this.canvas(),svg:this.svg(),vml:this.vml()};browser[match[1]]=match[1]}else{browser={name:"Other",browser:"other",version:""}}return browser},getOS:function(){var match=null;var version="";var userAgent=navigator.userAgent;var os="Other";var osTypes={ios:{name:"iOS",regex:new RegExp("(?:i(?:Pad|Phone|Pod)(?:.*)CPU(?: iPhone)? OS )([^\\s;]+)")},android:{name:"Android",regex:new RegExp("(?:(Android |HTC_|Silk/))([^\\s;]+)")},webos:{name:"webOS",regex:new RegExp("(?:(?:webOS|hpwOS)/)([^\\s;]+)")},blackberry:{name:"BlackBerry",regex:new RegExp("(?:BlackBerry(?:.*)Version/)([^\\s;]+)")},rimTablet:{name:"RIMTablet",regex:new RegExp("(?:RIM Tablet OS )([^\\s;]+)")},chrome:{name:"Chrome OS",regex:new RegExp("CrOS")},mac:{name:"MacOS",regex:new RegExp("mac")},win:{name:"Windows",regex:new RegExp("win")},linux:{name:"Linux",regex:new RegExp("linux")},bada:{name:"Bada",regex:new RegExp("(?:Bada/)([^\\s;]+)")},other:{name:"Other"}};var osys="";var clientStrings=[{s:"Windows 3.11",r:/Win16/},{s:"Windows 95",r:/(Windows 95|Win95|Windows_95)/},{s:"Windows ME",r:/(Win 9x 4.90|Windows ME)/},{s:"Windows 98",r:/(Windows 98|Win98)/},{s:"Windows CE",r:/Windows CE/},{s:"Windows 2000",r:/(Windows NT 5.0|Windows 2000)/},{s:"Windows XP",r:/(Windows NT 5.1|Windows XP)/},{s:"Windows Server 2003",r:/Windows NT 5.2/},{s:"Windows Vista",r:/Windows NT 6.0/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 10",r:/(Windows 10|Windows NT 10)/},{s:"Windows NT 4.0",r:/(Windows NT 4.0|WinNT4.0|WinNT|Windows NT)/},{s:"Windows ME",r:/Windows ME/},{s:"Android",r:/Android/},{s:"Open BSD",r:/OpenBSD/},{s:"Sun OS",r:/SunOS/},{s:"Linux",r:/(Linux|X11)/},{s:"BB10",r:/BB10/},{s:"MeeGo",r:/MeeGo/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:"QNX",r:/QNX/},{s:"UNIX",r:/UNIX/},{s:"BeOS",r:/BeOS/},{s:"OS/2",r:/OS\/2/},{s:"Search Bot",r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/}];for(var id in clientStrings){var cs=clientStrings[id];if(cs.r.test(userAgent)){osys=cs.s;break}}var osVersion="";if(/Windows/.test(osys)){osVersion=/Windows (.*)/.exec(osys)[1];osys="Windows"}if(/BB10/.test(osys)){osVersion="10";osys="BlackBerry"}switch(os){case"Mac OS X":osVersion=/Mac OS X (10[\.\_\d]+)/.exec(userAgent)[1];break;case"Android":osVersion=/Android ([\.\_\d]+)/.exec(userAgent)[1];break;case"iOS":osVersion=/OS (\d+)_(\d+)_?(\d+)?/.exec(nVer);osVersion=osVersion[1]+"."+osVersion[2]+"."+(osVersion[3]|0);break}if(osVersion!=""){version=osVersion}$.each(osTypes,function(index,value){match=userAgent.match(this.regex)||userAgent.toLowerCase().match(this.regex);if(match){if(!this.name.match(/Windows|Linux|MacOS/)){if(match[1]&&(match[1]=="HTC_"||match[1]=="Silk/")){version="2.3"}else{version=match[match.length-1]}}os={name:this.name,version:version,platform:navigator.platform};return false}});if(os&&os.name=="Other"){os.name=osys}if(os&&os.name!=""&&osys!=""){os.name=osys}if(os&&os.version==""&&osVersion!=""){os.version=osVersion}return os}}})(jqxBaseFramework);(function(c){c.jqx.jqxWidget("jqxTreeMap","",{});var d={};d["default"]=(function(){function g(r,s,q,p){this.height=p;this.width=q;this.xoffset=r;this.yoffset=s;this.shortestEdge=function(){return Math.min(this.height,this.width)};this.getCoordinates=function(y){var x=[],v=this.xoffset,z=this.yoffset,w=j(y)/this.height,u=j(y)/this.width;if(this.width>=this.height){for(var t=0;t<y.length;t+=1){x.push([v,z,v+w,z+y[t]/w]);z=z+y[t]/w}}else{for(var t=0;t<y.length;t+=1){x.push([v,z,v+y[t]/u,z+u]);v=v+y[t]/u}}return x};this.cutArea=function(w){var y;if(this.width>=this.height){var x=w/this.height,t=this.width-x;y=new g(this.xoffset+x,this.yoffset,t,this.height)}else{var v=w/this.width,u=this.height-v;y=new g(this.xoffset,this.yoffset+v,this.width,u)}return y}}function o(t,r){var s=[],q=j(t),u=r/q;for(var p=0;p<t.length;p+=1){s[p]=t[p]*u}return s}function e(s,q,x,u,p){u=(typeof u==="undefined")?0:u;p=(typeof p==="undefined")?0:p;var v=[],w,t=[];if(h(s[0])){for(var r=0;r<s.length;r+=1){v[r]=i(s[r])}w=m(v,q,x,u,p);for(var r=0;r<s.length;r+=1){t.push(e(s[r],w[r][2]-w[r][0],w[r][3]-w[r][1],w[r][0],w[r][1]))}}else{t=m(s,q,x,u,p)}return t}function m(s,r,p,t,u){t=(typeof t==="undefined")?0:t;u=(typeof u==="undefined")?0:u;var q=f(o(s,r*p),[],new g(t,u,r,p),[]);return n(q)}function n(r){var s=[];for(var q=0;q<r.length;q+=1){for(var p=0;p<r[q].length;p+=1){s.push(r[q][p])}}return s}function f(u,t,q,p){var s,r,v;if(u.length===0){p.push(q.getCoordinates(t));return}s=q.shortestEdge();r=u[0];if(l(t,r,s)){t.push(r);f(u.slice(1),t,q,p)}else{v=q.cutArea(j(t),p);p.push(q.getCoordinates(t));f(u,[],v,p)}return p}function l(t,q,r){var s;if(t.length===0){return true}s=t.slice();s.push(q);var u=k(t,r),p=k(s,r);return u>=p}function k(t,s){var q=Math.min.apply(Math,t),p=Math.max.apply(Math,t),r=j(t);return Math.max(Math.pow(s,2)*p/Math.pow(r,2),Math.pow(r,2)/(Math.pow(s,2)*q))}function h(p){return p&&p.constructor===Array}function j(p){var r=0;for(var q=0;q<p.length;q+=1){r+=p[q]}return r}function i(p){var r=0;if(h(p[0])){for(var q=0;q<p.length;q+=1){r+=i(p[q])}}else{r=j(p)}return r}return e}());function b(g,l,i,h,j,f,k,e){this.label=g;this.value=l;this.parent=i;this.children=h;this.area=j||null;this.color=f;this.data=k;this.record=e}var a={HORIZONTAL:0,VERTICAL:1,BOTH:2};c.extend(c.jqx._jqxTreeMap.prototype,{defineInstance:function(){var e={width:600,height:600,renderCallbacks:{},legendScaleCallback:function(f){return f},hoverEnabled:false,selectionEnabled:true,singleSelection:true,showLegend:true,legendLabel:"Legend",headerHeight:25,colorRange:100,layout:"default",source:[],displayMember:null,valueMember:null,colorMode:"parent",baseColor:"#C2EEFF",legendPosition:{x:0,y:0},colorRanges:[{color:"#aa9988",min:0,max:10},{color:"#ccbbcc",min:11,max:50},{color:"#000",min:50,max:100}],_root:[]};c.extend(true,this,e);return e},createInstance:function(){this.render()},render:function(){this.host.addClass(this.toThemeProperty("jqx-widget"));this._destroy();this._root=new b(undefined,0,null,[],this.host);var e=function(h,k){var n={},l;var m=null;for(var j=0;j<h.length;j+=1){if(h[j].items){m=true;break}}var f=new Array();if(m){var g=function(v,s){for(var q=0;q<v.length;q+=1){v[q].parent=s;if(!v[q].data){v[q].data=v[q].value}if(v[q].value==null){v[q].value=0}if(isNaN(parseFloat(v[q].value))){var w=v[q].value.toString();var u="";for(var p=0;p<w.length;p++){var r=w.substring(p,p+1);if(r.match(/^[0-9]+$/)!=null||r=="."){u+=r}}v[q].value=new Number(u)}else{v[q].value=parseFloat(v[q].value)}f.push(v[q]);if(v[q].items){g(v[q].items,v[q].label)}}};g(h,null);h=f}for(var j=0;j<h.length;j+=1){l=h[j];if(l.value){if(l.parent!=null){if(!n[l.parent]){n[l.parent]=0}n[l.parent]+=l.value}}}for(var j=0;j<h.length;j+=1){l=h[j];if(n[l.label]!==undefined){l.value=n[l.label]}}k._buildTree(h,k._root);k._dataList=k._buildList();k._setStyles();var o=d["default"];if(k.layout==="simple"){o=d.simple}k._render(k._root,o);k._renderLegend()};if(c.jqx.dataAdapter&&this.source!=null&&this.source._source){this.dataBind(this.source,e);return}e(this.source,this);this._trigger("bindingComplete")},dataBind:function(e,m){this.records=new Array();var h=e._source?true:false;var f=new c.jqx.dataAdapter(e,{autoBind:false});if(h){f=e;e=e._source}var g=function(n){if(e.type!=undefined){f._options.type=e.type}if(e.formatdata!=undefined){f._options.formatData=e.formatdata}if(e.contenttype!=undefined){f._options.contentType=e.contenttype}if(e.async!=undefined){f._options.async=e.async}};var j=function(p,o){p.records=f.records;var q=new Array();for(var n=0;n<p.records.length;n++){var r=p.records[n];if(p.displayMember){r.label=r[p.displayMember]}if(p.valueMember){r.value=r[p.valueMember]}r.record=r;q.push(r)}p._trigger("bindingComplete");m(q,p)};g(this);var k=this;switch(e.datatype){case"local":case"array":default:if(e.localdata!=null){f.unbindBindingUpdate(this.element.id);f.dataBind();j(this);f.bindBindingUpdate(this.element.id,function(n){j(k,n)})}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(e.localdata!=null){f.unbindBindingUpdate(this.element.id);f.dataBind();j(this);f.bindBindingUpdate(this.element.id,function(){j(k)});return}var l={};if(f._options.data){c.extend(f._options.data,l)}else{if(e.data){c.extend(l,e.data)}f._options.data=l}var i=function(){j(k)};f.unbindDownloadComplete(k.element.id);f.bindDownloadComplete(k.element.id,i);f.dataBind()}},_destroy:function(){this.host.children().remove()},destroy:function(){this.host.remove()},refresh:function(e){if(!e){this._refresh()}},_refresh:function(){this.render()},_setStyles:function(){this.host.css({position:"relative",width:this.width,height:this.height});var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true}var f=this;c.jqx.utilities.resize(this.host,function(){if(f.resizeTimer){clearTimeout(f.resizeTimer)}f.resizeTimer=setTimeout(function(){f.performLayout()},50)})},resize:function(f,e){this.width=f;this.height=e;this.performLayout()},performLayout:function(){var e=d["default"];this.clearSelection();this._layout(this._root,e)},_getValues:function(g){var e=[];for(var f=0;f<g.length;f+=1){e.push(g[f].value)}return e},_isColor:function(e){if(!e){return false}var f=this._colorEvaluator;if(f._isRgb(e)||f._isHex(e)){return true}return false},_colorEvaluator:{_toRgb:function(f){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(f);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null},_toHex:function(f){var i=f.r.toString(16),h=f.g.toString(16),e=f.b.toString(16);i=i.length===1?"0"+i:i;h=h.length===1?"0"+h:h;e=e.length===1?"0"+e:e;return"#"+i+h+e},_isRgb:function(e){return(/(rgb|rgba)\s*\(\s*\d+\s*(,\s*\d+\s*){2}(,\d+\.\d+)?\)(;?)/i).test(e)},_isHex:function(e){return(/^(#([0-9A-F]{3})([0-9A-F]{3})?)$/i).test(e)},getColorByValue:function(n,j,k){var o=this._colorEvaluator,m,l,e,f,g,j;if(o._isRgb(k)){k=o._toHex(k)}k=o._toRgb(k);e=j.length;m=-Infinity;for(var h=0;h<e;h+=1){if(m<j[h].value){m=j[h].value}}l=n/m;f=Math.round(l*this.colorRange);g=o._toHex({r:Math.max(k.r-f,0),g:Math.max(k.g-f,0),b:Math.max(k.b-f,0)});return g},parent:function(g){var f=g.parent.color,e=this._colorEvaluator;if(!g.parent){return"#fff"}if(!f){f=this.baseColor}f=e.getColorByValue.call(this,g.value,g.parent.children,f);g.color=f;return f},autoColors:function(g){var f=this.baseColor,e=this._colorEvaluator;f=e.getColorByValue.call(this,g.value,this._dataList,f);g.color=f;return f},rangeColors:function(f){var h=f.value,g;for(var e=0;e<this.colorRanges.length;e+=1){g=this.colorRanges[e];if(g.min<h&&g.max>=h){return g.color}}return"#fff"}},_getColor:function(f){var e=f.color,g=this.colorMode;if(this._isColor(e)){return e}if(typeof this._colorEvaluator[g]==="function"){return this._colorEvaluator[g].call(this,f)}else{throw"Invalid colorMode"}},_renderRect:function(i,f){var j=c("<div/>"),e=i[2]-i[0],l=i[3]-i[1];var g=this._getColor(f);j.css({position:"absolute",left:i[0]-1,top:i[1]-1,width:e,height:l,backgroundColor:g});j.addClass(this.toThemeProperty("jqx-treemap-rectangle"));var k=this._colorEvaluator;var h={data:f.data,label:f.label,value:f.value,parent:f.parent,record:f.record,color:g,rgb:k._toRgb(g)};if(f.parent==this._root){h.parent=null}if(typeof this.renderCallbacks["*"]==="function"){var m=this.renderCallbacks["*"](j,h);if(m!==undefined){return j}}if(typeof this.renderCallbacks[f.label]==="function"){this.renderCallbacks[f.label](j,h)}else{var e=j.width()-2;j.html('<span style="max-width:'+e+'px;" class="jqx-treemap-label">'+f.label+"</span>")}return j},_centerLabel:function(g,f){var e=g[0].firstChild;e.style.position="absolute";if(f===a.HORIZONTAL||f===a.BOTH){e.style.left=(g[0].offsetWidth-e.offsetWidth)/2+"px"}if(f===a.VERTICAL||f===a.BOTH){e.style.top=(g[0].offsetHeight-e.offsetHeight)/2+"px"}},_trigger:function(g,f){var h=c.Event(g);h.args=f;return this.host.trigger(h)},_addHandlers:function(e,g){var f=this;e.bind("mouseenter",function(h){if(f.hoverEnabled){f.host.find(".jqx-treemap-rectangle").removeClass("jqx-treemap-rectangle-hover");e.addClass(f.toThemeProperty("jqx-treemap-rectangle-hover"))}f._trigger("mouseenterSector",g)});e.bind("mouseleave",function(h){if(f.hoverEnabled){e.removeClass("jqx-treemap-rectangle-hover")}f._trigger("mouseleaveSector",g)});e.bind("click",function(i){if(f.selectionEnabled){var h=c.data(this,"jqx-treemap-selected")||false;if(f.singleSelection){f.host.find(".jqx-treemap-rectangle-hover").each(function(j,k){c.data(k,"jqx-treemap-selected",false);c(k).removeClass("jqx-treemap-rectangle-hover")})}if(h){e.removeClass("jqx-treemap-rectangle-hover");h=false}else{e.addClass(f.toThemeProperty("jqx-treemap-rectangle-hover"));h=true}c.data(this,"jqx-treemap-selected",h);i.stopImmediatePropagation()}})},clearSelection:function(){this.host.find(".jqx-treemap-rectangle-hover").removeClass(this.toThemeProperty("jqx-treemap-rectangle-hover"));c.data(this,"jqx-treemap-selected",false)},_layoutArea:function(f,e){if(f.children.length&&f.children.length>0){this._centerLabel(e,a.HORIZONTAL);e.addClass(this.toThemeProperty("jqx-treemap-rectangle-parent"))}else{this._centerLabel(e,a.BOTH)}},_render:function(f,l){if(!f.children.length){return}var e=0;if(f.value){e=this.headerHeight}var n=this._getValues(f.children),g=f.area.offset(),j=l(n,f.area.width(),f.area.height()-e,0,e),k,m;for(var h=0;h<f.children.length;h+=1){k=f.children[h];m=this._renderRect(j[h],k);k.area=m;f.area.append(m);this._addHandlers(m,{label:k.label,value:k.value,color:k.color,sector:k.area,data:k.data});this._layoutArea(k,m);this._render(k,l)}},_layout:function(f,l){if(!f.children.length){return}var e=0;if(f.value){e=this.headerHeight}var n=this._getValues(f.children),g=f.area.offset(),h=l(n,f.area.width(),f.area.height()-e,0,e),m;for(var j=0;j<f.children.length;j+=1){var k=f.children[j];this._layoutRect(h[j],k);this._layoutArea(k,k.area);this._layout(k,l)}if(this.showLegend){c(".jqx-treemap-legend").remove();this._renderLegend()}},_layoutRect:function(i,f){var j=f.area,e=i[2]-i[0],l=i[3]-i[1];j.css({left:i[0]-1,top:i[1]-1,width:e,height:l});var k=this._colorEvaluator;var g=this._getColor(f);var h={data:f.data,label:f.label,value:f.value,parent:f.parent,record:f.record,color:g,rgb:k._toRgb(g)};if(f.parent==this._root){h.parent=null}if(typeof this.renderCallbacks["*"]==="function"){var m=this.renderCallbacks["*"](j,h);if(m!==undefined){return j}}if(typeof this.renderCallbacks[f.label]==="function"){this.renderCallbacks[f.label](j,h)}else{var e=j.width()-2;j.find(".jqx-treemap-label:first").css("max-width",e)}},_getBoundValues:function(){var g=this._root,f=[],k,j={},e={};j.value=g.value||Infinity;e.value=g.value||-Infinity;f.push(g);while(f.length){k=f.pop();if(j.value>k.value){j=k}if(e.value<k.value){e=k}for(var h=0;h<k.children.length;h+=1){f.push(k.children[h])}}return[j,e]},_getAutocolorRanges:function(){var l=this._getBoundValues(),g=5,e=l[1].value,j=l[0].value,f=(e-j)/g,m,k=[];for(var h=j;h<e;h+=f){m=Math.round(h);k.push({min:m,max:h+f,color:this._colorEvaluator.getColorByValue.call(this,m,this._dataList,this.baseColor)})}return k},_renderLegend:function(){if(!(/autoColors|rangeColors/).test(this.colorMode)||!this.showLegend){return}var e=this.colorRanges;if(this.colorMode==="autoColors"){e=this._getAutocolorRanges()}var f=this._renderColorLegend(e);this._renderLegendLabel(f)},_renderLegendLabel:function(f){var g=c('<tr><td colspan="'+f.find("td").length/2+'"/></tr>'),e=c('<div class="'+this.toThemeProperty("jqx-treemap-legend-label")+'" />');e.text(this.legendLabel);g.children().append(e);f.prepend(g)},_renderColorLegend:function(e){var o=c('<div class="'+this.toThemeProperty("jqx-treemap-legend")+'"/>'),q,n,r,p=function(i){return i};if(typeof this.legendScaleCallback==="function"){p=this.legendScaleCallback}var s=c('<table class="'+this.toThemeProperty("jqx-treemap-legend-table")+'"/>');o.append(s);s.append("<tr/>");o.append("<div/>");this.host.append(o);q=c(o.find("tr")[0]);n=c(o.find("div")[0]);n.addClass(this.toThemeProperty("jqx-treemap-legend-values"));var g=function(t,i){try{if(t.min<i.min){return -1}if(t.min>i.min){return 1}}catch(u){var v=u}return 0};e.sort(g);var f=Math.round(o.width()/e.length);var m=-2;var h=0;for(var k=0;k<e.length;k+=1){var j=c('<td class="'+this.toThemeProperty("jqx-treemap-legend-color")+'"/>');j.css("backgroundColor",e[k].color);q.append(j);if(k===0){var l=c('<span class="'+this.toThemeProperty("jqx-treemap-legend-max-value")+" "+this.toThemeProperty("jqx-treemap-legend-value")+'"/>');l.text(p(e[k].min));n.append(l);s.css("margin-left",l.width()/2);m+=l.width()/2;h=m}var l=c('<span class="'+this.toThemeProperty("jqx-treemap-legend-max-value")+" "+this.toThemeProperty("jqx-treemap-legend-value")+'"/>');m+=f;l.text(p(e[k].max));n.append(l);if(k==e.length-1){h+=l.width()/2;o.css("padding-right",h+5);m-=2}m-=l.width()/2;l.css("left",m);m+=l.width()/2}o.css({position:"absolute",left:this.legendPosition.x,bottom:this.legendPosition.y,visibility:(this.showLegend)?"visible":"hidden"});return o},_buildTree:function(k,f){var g=null,m,l,e=[];e.push(f);while(e.length){g=e.pop();for(var h=0;h<k.length;h+=1){l=k[h];if(l.parent===g.label||(!l.parent&&!g.label)){var j=g;m=new b(l.label,parseFloat(l.value,10),j,[],null,l.color,l.data,l.record);g.children.push(m);e.push(m)}}}return f},_buildList:function(){var f=[],e=[],h;e.push(this._root);while(e.length){h=e.pop();if(h!==this._root){f.push(h)}for(var g=0;g<h.children.length;g+=1){e.push(h.children[g])}}return f},propertyChangedHandler:function(g,e,h){if(e==="renderCallbacks"){return}if((/hoverEnabled|selectionEnabled/).test(e)){if(!h){this.host.find("jqx-treemap-rectangle-hover")}}else{if(e==="showLegend"){this.host.find("jqx-treemap-legend").toggle()}else{this._refresh()}}}})}(jqxBaseFramework));(function(a){a.jqx.jqxWidget("jqxPasswordInput","",{});a.extend(a.jqx._jqxPasswordInput.prototype,{defineInstance:function(){var b={width:null,height:null,disabled:false,rtl:false,placeHolder:null,showStrength:false,showStrengthPosition:"right",maxLength:null,minLength:null,showPasswordIcon:true,strengthTypeRenderer:null,passwordStrength:null,localization:{passwordStrengthString:"Password strength",tooShort:"Too short",weak:"Weak",fair:"Fair",good:"Good",strong:"Strong",showPasswordString:"Show Password"},strengthColors:{tooShort:"rgb(170, 0, 51)",weak:"rgb(170, 0, 51)",fair:"rgb(255, 204, 51)",good:"rgb(45, 152, 243)",strong:"rgb(118, 194, 97)"}};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var e=this;var c=a.jqx.browser.browser;var b=a.jqx.browser.version;this._browserCheck=c!="msie"||(b!="7.0"&&b!="8.0");this.widgetID=e.element.id;var f=e.host;var d="Invalid input type. Please set the type attribute of the input element to password.";if(f.attr("type")!="password"){throw d}e._hidden=true;e._setTheme();e._setAttributes();e._showPassword();e._showStrength()},refresh:function(c){var b=this;if(c==true){return}b.removeHandler(b.host,"focus.passwordinput"+b.widgetID);b.removeHandler(b.host,"blur.passwordinput"+b.widgetID);b.removeHandler(b.host,"click.passwordinput"+b.widgetID);b.removeHandler(a(window),"resize.passwordinput"+b.widgetID);b.removeHandler(b.host,"keyup.passwordinput"+b.widgetID);b.removeHandler(b.icon,"mousedown.passwordinput"+b.iconID);b.removeHandler(b.icon,"mouseup.passwordinput"+b.iconID);b.removeHandler(a(document),"mousedown.passwordinput"+b.iconID);b._setAttributes();b._setTheme();b._showPassword();b._showStrength()},val:function(d){var c=this,e=c.element.value,b="placeholder" in c.element;if(a.isEmptyObject(d)&&d!=""){if(!b&&e===c.placeHolder){e=""}return e}else{if(b&&d===e){return}if(!b){if(d===""){if(e!==c.placeHolder){c.element.value=c.placeHolder;c.host.attr("type","text")}return}else{c.host.attr("type","password")}}c.element.value=d;if(c.showStrength===true){c._evaluateStrength()}}},propertyChangedHandler:function(b,c,f,e){var d=this.host;if(c==="theme"){a.jqx.utilities.setTheme(f,e,b.host);return}if(c=="disabled"){if(b.disabled==true){b.host.attr("disabled","disabled");b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}else{b.host.removeAttr("disabled");b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}return}if(c=="placeHolder"){if(this._browserCheck){if("placeholder" in this.element){d.attr("placeholder",this.placeHolder)}else{if(d.val()==""){d.attr("type","text");b.element.value=e}else{if(d.val()==f){b.element.value=e}}}}}else{this.refresh()}},resize:function(c,b){this.width=c;this.height=b;this.host.width(this.width);this.host.height(this.height)},_setAttributes:function(){var b=this;var c=b.host;c.width(b.width);c.height(b.height);if(b.maxLength){c.attr("maxlength",b.maxLength)}if(b.minLength){c.attr("minLength",b.minLength)}if(b.placeHolder&&b._browserCheck){if("placeholder" in b.element){c.attr("placeholder",b.placeHolder)}else{if(c.val()==""){c.attr("type","text");b.element.value=b.placeHolder}}}if(b.disabled==true){c.attr("disabled","disabled");c.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{c.removeAttr("disabled");c.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}b.addHandler(c,"click.passwordinput"+b.widgetID,function(){if(b.showPasswordIcon&&b.icon){b.icon.show();b._positionIcon()}});b.interval=null;b.addHandler(c,"keydown.passwordinput"+b.widgetID,function(){if(b.showPasswordIcon&&b.icon){if(b.interval){clearInterval(b.interval)}var d=0;b.interval=setInterval(function(){if(b.icon[0].style.display!="none"){b._positionIcon();d++;if(d>5){clearInterval(b.interval)}}else{clearInterval(b.interval)}},100)}});b.addHandler(c,"focus.passwordinput"+b.widgetID,function(){b._focused=true;b.host.addClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.placeHolder&&b._browserCheck&&!("placeholder" in b.element)&&c.val()==b.placeHolder){c.val("");if(b._hidden==true){c.attr("type","password")}}if(b.val().length>0){if(b.showStrength==true){var d=c.jqxTooltip("content");if(d){c.jqxTooltip("open")}}}if(b.showPasswordIcon&&b.icon){b.icon.show();b._positionIcon()}});b.addHandler(c,"blur.passwordinput"+b.widgetID,function(){b._focused=false;b.host.removeClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.placeHolder&&b._browserCheck&&!("placeholder" in b.element)&&c.val()==""){b.element.value=b.placeHolder;c.attr("type","text")}if(b.showPasswordIcon==true&&b._browserCheck){if(b.rtl==false){b.host.removeClass(b.toThemeProperty("jqx-passwordinput-password-icon-ltr"))}else{b.host.removeClass(b.toThemeProperty("jqx-passwordinput-password-icon-rtl"))}}if(b.showStrength==true){c.jqxTooltip("close")}if(b.showPasswordIcon&&b.icon){b.icon.hide()}})},destroy:function(){if(this.host.jqxTooltip){this.host.jqxTooltip("destroy")}this.host.remove()},_setTheme:function(){var c=this.host;var b=this;c.addClass(b.toThemeProperty("jqx-widget"));c.addClass(b.toThemeProperty("jqx-widget-content"));c.addClass(b.toThemeProperty("jqx-input"));c.addClass(b.toThemeProperty("jqx-rc-all"));if(b.rtl==true){c.addClass(b.toThemeProperty("jqx-rtl"));c.css("direction","rtl")}else{c.removeClass(b.toThemeProperty("jqx-rtl"));c.css("direction","ltr")}},_showPassword:function(){if(this.showPasswordIcon==true&&this._browserCheck){var f=this;this.iconID=this.widgetID+"-password-icon";a("<span tabindex='-1' hasfocus='false' style='position: absolute; display: none;' id='"+f.iconID+"'></span>").insertAfter(f.host);var e=a("#"+f.iconID);f.icon=e;e.addClass(f.toThemeProperty("jqx-passwordinput-password-icon"));e.attr("title",f.localization.showPasswordString);f._positionIcon();var d=function(){f.host.attr("type","password");f._hidden=true;e.attr("title",f.localization.showPasswordString)};var b=function(){if(f._hidden==false){d()}else{if(f._hidden==true){f.host.attr("type","text");f._hidden=false}}};var c=a.jqx.mobile.isTouchDevice();if(c){f.addHandler(f.icon,"mousedown.passwordinput"+f.iconID,function(g){b();return false})}else{f.addHandler(f.icon,"mousedown.passwordinput"+f.iconID,function(g){b();return false});f.addHandler(f.icon,"mouseup.passwordinput"+f.iconID,function(g){d();return false});f.addHandler(a(document),"mousedown.passwordinput"+f.iconID,function(g){if(f._focused){d()}})}}},_positionIcon:function(){var c=this.host.offset();var b=this.host.outerWidth();var d=this.host.outerHeight();if(this.rtl==true){this.icon.offset({top:parseInt(c.top+d/2-10/2),left:c.left+2})}else{this.icon.offset({top:parseInt(c.top+d/2-10/2),left:c.left+b-18})}},_showStrength:function(){var g=this;if(g.showStrength==true){if(g.host.jqxTooltip!=undefined){var e=g.widgetID+"Strength";var i=e+"Value";var c=e+"Indicator";var f;if(!g.strengthTypeRenderer){f="<div style='width: 220px;' id='"+e+"'><div><span style='font-weight: bold;'>"+g.localization.passwordStrengthString+": </span><span id='"+i+"'></span></div><div id='"+c+"'></div></div>"}else{var d=g.host.val();if(!("placeholder" in g.element)&&g._browserCheck&&d==g.placeHolder){d=""}g._countCharacters();var b=g.localization.tooShort;var h=g.strengthTypeRenderer(d,{letters:g.letters,numbers:g.numbers,specialKeys:g.specials},b);f=h}g.host.jqxTooltip({theme:g.theme,position:g.showStrengthPosition,content:f,trigger:"none",autoHide:false,rtl:g.rtl});if(!g.strengthTypeRenderer){a("#"+i).html(g.localization.tooShort);a("#"+c).addClass("jqx-passwordinput-password-strength-inicator").css("background-color",g.strengthColors.tooShort);if(g.rtl==false){a("#"+c).css("float","left")}else{a("#"+c).css("float","right")}}g._checkStrength()}else{throw new Error("jqxPasswordInput: Missing reference to jqxtooltip.js")}}},_checkStrength:function(){var b=this;b.addHandler(a(window),"resize.passwordinput"+b.widgetID,function(){if(b.icon){b.icon.hide()}});b.addHandler(b.host,"keyup.passwordinput"+b.widgetID,function(){b._evaluateStrength()})},_evaluateStrength:function(){var f=this;var d=f.host.val();var e=d.length;f._countCharacters();if(e>0){if(f.showStrength==true){var i=!f.host.jqxTooltip("opened");if(i){f.host.jqxTooltip("open")}}}var c=f.letters+f.numbers+2*f.specials+f.letters*f.numbers/2+e;var b;if(e<8){b=f.localization.tooShort}else{if(c<20){b=f.localization.weak}else{if(c<30){b=f.localization.fair}else{if(c<40){b=f.localization.good}else{b=f.localization.strong}}}}if(f.strengthTypeRenderer){var h=f.strengthTypeRenderer(d,{letters:f.letters,numbers:f.numbers,specialKeys:f.specials},b);f.host.jqxTooltip({content:h})}else{if(f.passwordStrength){var h=f.passwordStrength(d,{letters:f.letters,numbers:f.numbers,specialKeys:f.specials},b);a.each(f.localization,function(){var j=this;if(h==j){b=h;return false}})}a("#"+f.widgetID+"StrengthValue").html(b);var g=a("#"+f.widgetID+"StrengthIndicator");switch(b){case f.localization.tooShort:g.css({width:"20%","background-color":f.strengthColors.tooShort});break;case f.localization.weak:g.css({width:"40%","background-color":f.strengthColors.weak});break;case f.localization.fair:g.css({width:"60%","background-color":f.strengthColors.fair});break;case f.localization.good:g.css({width:"80%","background-color":f.strengthColors.good});break;case f.localization.strong:g.css({width:"100%","background-color":f.strengthColors.strong});break}}},_countCharacters:function(){var g=this;g.letters=0;g.numbers=0;g.specials=0;var d="<>@!#$%^&*()_+[]{}?:;|'\"\\,./~`-=";var b=g.host.val();var f=b.length;for(var c=0;c<f;c++){var h=b.charAt(c);var e=b.charCodeAt(c);if((e>64&&e<91)||(e>96&&e<123)||(e>127&&e<155)||(e>159&&e<166)){g.letters+=1;continue}if(isNaN(h)==false){g.numbers+=1;continue}if(d.indexOf(h)!=-1){g.specials+=1;continue}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxRangeSelector","",{});a.extend(a.jqx._jqxRangeSelector.prototype,{defineInstance:function(){var b={width:400,height:100,min:0,max:100,range:{from:0,to:Infinity,min:0,max:Infinity},majorTicksInterval:10,minorTicksInterval:1,showMajorTicks:true,showMinorTicks:false,snapToTicks:true,labelsFormat:null,markersFormat:null,showLabels:true,labelsOnTicks:true,markersPosition:"top",labelsFormatFunction:null,groupLabelsFormatFunction:null,markersFormatFunction:null,showGroupLabels:false,showMarkers:true,resizable:true,moveOnClick:true,disabled:false,rtl:false,padding:"auto",events:["change"]};a.extend(true,this,b);return b},createInstance:function(c){var e=this;this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(!a.jqx.dataAdapter){throw new Error("jqxRangeSelector: Missing reference to the following module: 'jqxdata.js'.")}var f=a.jqx.isHidden(this.host);this.render();var d=this.host.width();var b=this.host.height();a.jqx.utilities.resize(this.host,function(){var h=e.host.width();var g=e.host.height();e.range=e.getRange();if(f){e.refresh();f=false}else{if(d!=h||b!=g){e.refresh()}}d=e.host.width();b=e.host.height()})},render:function(){if(this.host.children().length>1||this.rangeSelector){this._removeHandlers();if(this.rangeSelector){this.rangeSelector.remove()}}this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-rangeselector"));this.host.children(":eq(0)").addClass(this.toThemeProperty("jqx-rangeselector-content"));this._id=this.element.id;if(typeof this.min=="string"||this.min instanceof Date){this._dataType="date"}else{this._dataType="number"}this._privateProperties();this._checkProperties();this._setSize();this._scale();this._initSlider()},refresh:function(b){if(b==true){return}this.host.children(".jqx-rangeselector-ticks-container").remove();this._removeHandlers();this._privateProperties();this._checkProperties();this._setSize();this._scale();this._initSlider()},destroy:function(){this._removeHandlers();this.host.remove()},setRange:function(k,l){if(k>l){throw new Error("jqxRangeSelector: range object initialization error. 'min' should be less than 'max'");return}var g=this._getValue();if(g.from!=k||g.to!=l){var d=this._dataType=="number"?"numeric":"date";var i="The set values are in the wrong format. Please set "+d+" values.";if(typeof k=="string"||k instanceof Date){if(this._dataType=="number"){throw new Error(i)}}else{if(this._dataType=="date"){throw new Error(i)}}k=this._validateInput(k);l=this._validateInput(l);if(k>this._max){k=this._max}if(k<this._min){k=this._min}if(l>this._max){l=this._max}if(l<this._min){l=this._min}var f=l-k;if(f>this._range._max){l=k+this._range._max}else{if(f<this._range._min){l=k+this._range._min}}var j=this._valuesArray.indexOf(k);var e=this._valuesArray.indexOf(l);var m=this._ticksArray[j];var h=this._ticksArray[e];var b=Math.abs(h-m);this.slider[0].style.width=b+"px";var c=!this.rtl?m:h;this.slider[0].style.left=c;this._moveSlider(c);if(this._dataType=="date"){var k=new Date(k);var l=new Date(l)}this._raiseEvent("0",{from:k,to:l})}},val:function(b){if(arguments.length==0){return this.getRange()}if(b.from!=undefined){this.setRange(b.from,b.to)}},getRange:function(){var b=this._getValue();return b},propertyChangedHandler:function(b,c,e,d){switch(c){case"showMinorTicks":if(d==true){a("#"+this._id+" .jqx-rangeselector-ticks-minor").css("visibility","visible")}else{a("#"+this._id+" .jqx-rangeselector-ticks-minor").css("visibility","hidden")}break;case"showMarkers":var f=a("#"+this._id+"LeftMarker, #"+this._id+"RightMarker, #"+this._id+"LeftMarkerArrow, #"+this._id+"RightMarkerArrow");if(d==true){f.css("visibility","visible")}else{f.css("visibility","hidden")}break;default:this.refresh()}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},_setSize:function(){this.host.width(this.width);this.host.height(this.height)},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_scale:function(){var c=this.host.width();var b=this._max-this._min;this._unitPerPixel=parseFloat((b/c).toFixed(4));this._pixelPerUnit=c/b;4;this._minWidth=this._roundNumber(this._range._min/this._unitPerPixel);this._maxWidth=this._roundNumber(this._range._max/this._unitPerPixel);this._minWidth=parseInt(this._minWidth);this._maxWidth=parseInt(this._maxWidth);if(this._dataType=="number"){this._majorTicksCount=b/this.majorTicksInterval;this._majorTicksCount=Math.floor(this._majorTicksCount)+1;this._majorTicksDistance=parseInt(this._roundNumber(c/(b/this.majorTicksInterval)));this._unitsCount=b/this.minorTicksInterval;this._unitsCount=Math.floor(this._unitsCount)+1;this._unitsDistance=parseInt(this._roundNumber(c/(b/this.minorTicksInterval)))}this._addTicks()},_addTicks:function(){var f=this;this.host.append("<div id='"+this._id+"TicksContainer' class='jqx-rangeselector-ticks-container'></div>");this.rangeSelector=a("#"+this._id+"TicksContainer");this._majorTicksArray=new Array();this._ticksArray=new Array();this._valuesArray=new Array();var c=new String();a("#"+this._id+"TicksContainer").append("<div id='labelPlaceholder' style='visibility: hidden; position: absolute;'></div>");var e=this.rangeSelector.height();if(this._dataType=="number"){c=this._addNumericTicks(e)}else{c=this._addDateTicks(e)}var b=0;if(this.showLabels){b+=a("#labelPlaceholder").outerHeight()+6}if(this._dataType!="number"){if(this.showGroupLabels){b+=a("#labelPlaceholder").outerHeight()+6}}if(this.padding=="auto"){this.host.css("padding-bottom",b)}a("#labelPlaceholder").remove();a("#"+this._id+"TicksContainer").append(c);this._ticksArray.sort(function(h,g){return h-g});for(var d=1;d<this._ticksArray.length;d++){this._ticksArray[d]=this._roundNumber(this._ticksArray[d])}this._valuesArray.sort(function(h,g){return h-g});if(this._dataType=="number"){for(var d=1;d<this._valuesArray.length;d++){this._valuesArray[d]=this._roundNumber(this._valuesArray[d],"marker",true)}}for(var d=1;d<this._ticksArray.length;d++){if(this._ticksArray[d-1]==this._ticksArray[d]){this._ticksArray.splice(d,1);this._valuesArray.splice(d,1)}}if(this.rtl){this._valuesArray=this._valuesArray.reverse()}},_addNumericTicks:function(g){var n=this;var l=new String();var h=0;var f=this._min;var r=this._max;for(var k=0;k<this._majorTicksCount;k++){var e=this._id+"LabelTick"+(k+1);if(k==this._majorTicksCount-1){h=this.host.width()}var m=n.showMajorTicks?"visible":"hidden";l+="<div id='"+e+"' class='"+this.toThemeProperty("jqx-rangeselector-ticks")+" "+this.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+m+"; left: "+h+"px;'></div>";this._ticksArray.push(h);this._majorTicksArray.push(h);var c=this._id+"Label"+(k+1);var j=f;this._valuesArray.push(parseFloat(j.toFixed(4)));if(n.rtl){j=r}j=this._formatOutput(j,this.labelsFormat,this.minorTicksInterval>=1?0:2,"label");a("#labelPlaceholder").html(j);var q=a("#labelPlaceholder").width();var p=n.showLabels?"visible":"hidden";if(n.labelsOnTicks){l+="<div id='"+c+"' class='"+this.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+p+"; left: "+(h-q/2)+"px; top: "+g+"px;'>"+j+"</div>"}var d=h;f=f+this.majorTicksInterval;r=r-this.majorTicksInterval;var h=(f-n._min)/n._unitPerPixel;h=parseInt(h);if(!this.labelsOnTicks&&k<this._majorTicksCount-1){var o=Math.abs(d-h);l+="<div id='"+c+"' class='"+this.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+p+"; left: "+(d+o/2-q/2)+"px; top: "+g+"px;'>"+j+"</div>"}}var h=0;var b=this.showMinorTicks?"visible":"hidden";var f=this._min;for(var k=0;k<this._unitsCount;k++){var e=this._id+"MinorTick"+(k+1);if(k==this._unitsCount-1){h=this.host.width()}l+="<div id='"+e+"' class='"+this.toThemeProperty("jqx-rangeselector-ticks")+" "+this.toThemeProperty("jqx-rangeselector-ticks-minor")+" "+this.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+b+"; left: "+h+"px;'></div>";var s=f;if(this._valuesArray.indexOf(parseFloat(s.toFixed(4)))===-1){this._valuesArray.push(parseFloat(s.toFixed(4)));this._ticksArray.push(h)}f=f+this.minorTicksInterval;var h=(f-n._min)/n._unitPerPixel;h=parseInt(h)}return l},_getMillisecondsByInterval:function(c){var b={};if(c=="year"||c.years){b.divisor=c.years?c.years:1;return b.divisor*(365*24*3600*1000)}else{if(c=="month"||c.months){b.divisor=c.months?c.months:1;return b.divisor*(30*24*3600*1000)}else{if(c=="week"||c.weeks){b.divisor=c.weeks?c.weeks:1;return b.divisor*(7*24*3600*1000)}else{if(c=="day"||c.days){b.divisor=c.days?c.days:1;return b.divisor*(24*3600*1000)}else{if(c=="hour"||c.hours){b.divisor=c.hours?c.hours:1;return b.divisor*(3600*1000)}else{if(c=="minute"||c.minutes){b.divisor=c.minutes?c.minutes:1;return b.divisor*60*1000}else{if(c=="second"||c.seconds){b.divisor=c.seconds?c.seconds:1;return b.divisor*1000}else{if(c=="millisecond"||c.milliseconds){b.divisor=c.milliseconds?c.milliseconds:1;return b.divisor*1}}}}}}}}return b},_addDateTicks:function(e){var d=this;var c=new String();var b=function(k){var j=k=="majorTicksInterval"?d.majorTicksInterval:d.minorTicksInterval;var i=new Object();if(j=="year"||j.years){i.period="year";i.interval=86400000;i.divisor=j.years?j.years:1;i.value=i.divisor*(365*24*3600*1000)}else{if(j=="month"||j.months){i.period="month";i.interval=86400000;i.divisor=j.months?j.months:1;i.value=i.divisor*(30*24*3600*1000)}else{if(j=="week"||j.weeks){i.period="week";i.interval=86400000;i.divisor=j.weeks?j.weeks:1;i.value=i.divisor*(7*24*3600*1000)}else{if(j=="day"||j.days){i.period="day";i.interval=3600000;i.divisor=j.days?j.days:1;i.value=i.divisor*(24*3600*1000)}else{if(j=="hour"||j.hours){i.period="hour";i.interval=60000;i.divisor=j.hours?j.hours:1;i.value=i.divisor*(3600*1000)}else{if(j=="minute"||j.minutes){i.period="minute";i.interval=60*1000;i.divisor=j.minutes?j.minutes:1;i.value=i.divisor*60*1000}else{if(j=="second"||j.seconds){i.period="second";i.interval=1000;i.divisor=j.seconds?j.seconds:1;i.value=i.divisor*1000}else{if(j=="millisecond"||j.milliseconds){i.period="millisecond";i.interval=1;i.divisor=j.milliseconds?j.milliseconds:1;i.value=i.divisor*1}}}}}}}}return i};var f=function(n,q){var l=new Date(n);var r=l.getDate();var s=q=="year"&&l.getMonth()==0&&r==1;var k=q=="month"&&r==1;var t=q=="week"&&l.getDay()==0;var j=q=="day"&&l.getHours()==0;var i=q=="hour"&&l.getMinutes()==0;var o=q=="minute"&&l.getSeconds()==0;var m=q=="minute"&&l.getMilliseconds()==0;var p=q=="millisecond";if(s||k||t||j||i||o||m||p){return true}else{return false}};var h=function(p,u,n){var l=(p-d._min)/d._unitPerPixel;if(d.rtl){if(u=="majorTicksInterval"){p=d._dateMajorTicks[d._dateMajorTicks.length-n]}else{p=d._dateMinorTicks[d._dateMinorTicks.length-n]}}l=parseInt(l);var v=p;if(d._valuesArray.indexOf(v)===-1){d._ticksArray.push(l);d._valuesArray.push(v);if(u=="majorTicksInterval"){d._majorTicksArray.push(l)}}if(u=="majorTicksInterval"){var q=d._id+"LabelTick"+n;var k=d.showMajorTicks?"visible":"hidden";c+="<div id='"+q+"' class='"+d.toThemeProperty("jqx-rangeselector-ticks")+" "+d.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+k+"; left: "+l+"px;'></div>";var o=v;o=d._formatOutput(o,d.labelsFormat,d.labelPrecision,"label");a("#labelPlaceholder").html(o);var t=a("#labelPlaceholder").width();var j=d._id+"Label"+n;var s=d.showLabels?"visible":"hidden";if(!d.labelsOnTicks){var w=d._getMillisecondsByInterval(d.majorTicksInterval)/d._unitPerPixel;var r=w/2;c+="<div id='"+j+"' class='"+d.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+s+"; left: "+(r+l-t/2)+"px; top: "+e+"px;'>"+o+"</div>"}else{if(d.labelsOnTicks){c+="<div id='"+j+"' class='"+d.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+s+"; left: "+(l-t/2)+"px; top: "+e+"px;'>"+o+"</div>"}}}else{var k=d.showMinorTicks?"visible":"hidden";var m=d._id+"MinorTick"+n;c+="<div id='"+m+"' class='"+d.toThemeProperty("jqx-rangeselector-ticks")+" "+d.toThemeProperty("jqx-rangeselector-ticks-minor")+" "+d.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+k+"; left: "+l+"px;'></div>"}};var g=function(s,o,j){var p=0;var l=1;var m=new Date(d._min).getHours();var r=o.interval==86400000?true:false;var k=0;var t=new Array();for(var n=d._min;n<=d._max;n+=o.interval){if(r==true){var u=new Date(n).getHours();if(m!=u){var q;if(u==1){q=1}else{if(u==23){q=-1}}n=n-q*3600000;m=new Date(n).getHours()}}var v=f(n,o.period);if(v==true){if(p%o.divisor==0){if(j){t.push(n)}else{h(n,s,l,o.interval)}l++}p++}}return t};d._dateMajorTicks=g("majorTicksInterval",b("majorTicksInterval"),true);d._dateMinorTicks=g("minorTicksInterval",b("minorTicksInterval"),true);g("majorTicksInterval",b("majorTicksInterval"));g("minorTicksInterval",b("minorTicksInterval"));if(this.showGroupLabels==true&&this.showLabels){this._addGroupLabels(a("#labelPlaceholder").height()+e)}return c},_addGroupLabels:function(n){var k=this;var e=new Date(this._min);var m=new Date(this._max);if(m.getFullYear()-e.getFullYear()>0){var l="year";var b=86400000}else{if(m.getMonth()-e.getMonth()>0){var l="month";var b=86400000}else{if(m.getDate()-e.getDate()>0){var l="day";var b=3600000}else{return}}}var j=function(q){var p=new Date(q);var s=p.getFullYear();var r=p.getMonth();var u=p.getDate();var v;var i=true;if(l=="year"&&r==0&&u==1){v=s}else{if(l=="month"&&u==1){v=a.jqx.dataFormat.formatdate(p,"MMMM");if(r==0){v=s+" "+v}}else{if(l=="day"&&p.getHours()==0){v=a.jqx.dataFormat.formatdate(p,"dddd")}else{i=false}}}var t;if((i==true)&&k.groupLabelsFormatFunction){t=k.groupLabelsFormatFunction(v,p)}else{t=v}var w={check:i,value:t};return w};var h=new String();var g=this.toThemeProperty("jqx-rangeselector-group-labels-ticks")+" "+this.toThemeProperty("jqx-slider-tick-horizontal");var d=1;for(var f=this._min;f<this._max;f+=b){var o=j(f);if(o.check==true){var c=(f-this._min)/this._unitPerPixel;h+="<div class='"+this.toThemeProperty("jqx-rangeselector-labels")+"' style='left: "+c+"px; top: "+n+"px;'><div class='"+g+"'></div><div id='"+this._id+"GroupLabel"+d+"' class='"+this.toThemeProperty("jqx-rangeselector-group-labels")+"' style='margin-left: 5px;'>"+o.value+"</div></div>";d++}}a("#"+this._id+"TicksContainer").append(h)},_updateCursor:function(b,g){var f=this.element.style.cursor;var e=this.slider.offset().left;var d=parseInt(this.slider[0].style.width);var c=e+d;if((((b>e-5)&&(b<e+5))||((b>c-5)&&(b<c+5)))){if(f==""||f=="auto"){this.element.style.cursor="e-resize"}}else{if(f=="e-resize"){this.element.style.cursor="auto"}}},_handleMouseMove:function(w){var j=this;var s=j.slider;var l=w.pageX;var k=w.pageY;if(j._isTouchDevice){var h=a.jqx.position(w);l=h.left;k=h.top}var D=j._hostOffset.left;var t=j._hostWidth;if(j.resizable&&!j.dragging&&j.resizeDirection=="none"){if(l>=D&&l<=D+t){if(k>=j._hostOffset.top&&k<=j._hostOffset.top+j._hostHeight){this._updateCursor(l,k)}}}if(!j.isMouseDown){return true}if(j._isTouchDevice){if(k<j._hostOffset.top||k>j._hostOffset.top+j._hostHeight){return true}}var f=j._findNearestTick(j._sliderLeftOffset+l-j._mouseDownX);var c=parseInt(f);if(c<0){return true}if(c<0){c=0}var b=parseInt(s[0].style.width);var i=c+b;var r=function(G){var y=parseInt(j._maxWidth);var x=parseInt(j._minWidth);if(G<x||G>y){return false}var I=parseInt(j.rightMarker[0].style.left);var H=parseInt(j.leftMarker[0].style.left);if(H>I){return false}return true};if(j.resizable==true&&!j.dragging){var A=c*j._unitPerPixel+j._min;if(j.resizeDirection=="left"||j.isLeftMarkerCaptured){var E=j.isLeftMarkerCaptured?j.leftMarker.outerWidth():0;if(l<D-E){l=D-E}if(l>D+t+E){l=D+t+E+1}var q=s[0].style.left;var g=c-parseInt(q);var o=parseInt(b-g);if(!r(o)){if(l>j._mouseDownX){l=j.sliderRight-j._minWidth-D;o=j._minWidth;if(b==o){return true}var f=j._findNearestTick(l);c=f;if(c<0){return true}var p=parseInt(q)*j._unitPerPixel+j._min;var A=c*j._unitPerPixel+j._min}else{if(j._maxWidth!=0&&l<j._mouseDownX&&o>j._maxWidth){l=j.sliderRight-j._maxWidth-D;o=j._maxWidth;if(b==o){return true}var f=j._findNearestTick(l);c=f;if(c<0){return true}var p=parseInt(q)*j._unitPerPixel+j._min;var A=c*j._unitPerPixel+j._min}else{return true}}}j.slider[0].style.left=c+"px";if(q!=s[0].style.left){j.slider[0].style.width=o+"px"}var n=j._findNearestTick(c);var v=j._valuesArray[j._ticksArray.indexOf(n)];if(v!=undefined){j.leftMarkerValue[0].innerHTML=j._formatOutput(v,j.markersFormat,0,"left");if(c!=n){j.slider[0].style.left=n+"px"}}else{j.leftMarkerValue[0].innerHTML=j._formatOutput(A,j.markersFormat,0,"left")}j.oldX=l;j.moved=true}else{if(j.resizeDirection=="right"||j.isRightMarkerCaptured){var E=j.isRightMarkerCaptured?j.rightMarker.outerWidth():0;var F=false;var u=false;if(l<D-E){l=D-E;u=true}if(l>D+t+E){l=D+t+E;F=true}var e=j._sliderInitialWidth;var m=j._findNearestTick(e+j._sliderLeftOffset);var C=j._findNearestTick(e+l-j._mouseDownX+j._sliderLeftOffset);if(C<0){return true}var g=m-C;var o=e-g;if(o<=0){g=e;o=0}var B=parseInt(j.element.style.width);if(j.element.style.width.indexOf("%")>=0){B=j.host.width()}if(F||(j._sliderLeftOffset+o>=B)){o=B-j._sliderLeftOffset;boundDetected=true}if(o>parseInt(this._maxWidth)){o=parseInt(this._maxWidth)}if(o<parseInt(this._minWidth)){o=parseInt(this._minWidth)}j.slider[0].style.width=o+"px";var A=(j._sliderLeftOffset+o)*j._unitPerPixel+j._min;var z=j._findNearestTick(j._sliderLeftOffset+o);var d=j._valuesArray[j._ticksArray.indexOf(z)];if(d!=undefined){if(j._sliderLeftOffset+o!=z){j.slider[0].style.width=z-j._sliderLeftOffset+"px"}j.rightMarkerValue[0].innerHTML=j._formatOutput(d,j.markersFormat,0,"right")}else{j.rightMarkerValue[0].innerHTML=(j._formatOutput(A,j.markersFormat,0,"right"))}j.oldX=l}}j._layoutShutter();j._layoutMarkers();j.moved=true}if(j.dragging==1){j._moveSlider(c,true);j.oldX=l}},_moveSlider:function(b,d){var g=this;g.moved=true;var e=parseInt(this.slider[0].style.width);var c=parseInt((b+e));var n=this._hostWidth;var j=b;if(j<0){j=0;b=j}if(j+e>n){j=n-e;b=j}if((j>=0)&&((j+e)<=(n))){this.slider[0].style.left=j+"px";var o=this._findNearestTick(j);var k=this._majorTicksArray.indexOf(o)!=-1;var m=this._valuesArray[this._ticksArray.indexOf(o)];if(m!=undefined){this.leftMarkerValue[0].innerHTML=this._formatOutput(m,this.markersFormat,0,"left");if(b!=o&&k){if(d){this.slider[0].style.left=o+"px";var c=parseInt((o+e))}}}else{this.leftMarkerValue[0].innerHTML=this._formatOutput(((j)*this._unitPerPixel+this._min),this.markersFormat,0,"left")}var i=this._findNearestTick(c);var l=this._valuesArray[this._ticksArray.indexOf(i)];if(l!=undefined){var h=this._majorTicksArray.indexOf(i)!=-1;this.rightMarkerValue[0].innerHTML=this._formatOutput(l,this.markersFormat,0,"right");if(c!=i&&h&&k){if(d){var f=(i-o);this.slider[0].style.width=f+"px"}}}else{this.rightMarkerValue[0].innerHTML=this._formatOutput(((j+e)*this._unitPerPixel+this._min),this.markersFormat,0,"right")}}this._layoutShutter();this._layoutMarkers()},_initSlider:function(){var n=this;var r=this.toThemeProperty("jqx-rangeselector-shutter")+" "+this.toThemeProperty("jqx-scrollbar-state-normal");a("#"+this._id+"TicksContainer").append("<div id='"+this._id+"ShutterLeft' class='"+r+"'></div><div id='"+this._id+"Slider' class='"+this.toThemeProperty("jqx-rangeselector-slider")+" "+this.toThemeProperty("jqx-scrollbar-thumb-state-normal")+"'><div class='"+this.toThemeProperty("jqx-rangeselector-inner-slider")+"'></div></div><div id='"+this._id+"ShutterRight' class='"+r+"'></div>");this.slider=a("#"+this._id+"Slider");this.shutterLeft=a("#"+this._id+"ShutterLeft");this.shutterRight=a("#"+this._id+"ShutterRight");this._hostOffset=this.rangeSelector.offset();this._hostWidth=this.rangeSelector.width();this._hostHeight=this.rangeSelector.height();var o=this._hostOffset;var m=this._initRange();var q=m.left;var c=m.right-q;var g=c/this._unitPerPixel;this.slider[0].style.width=Math.round(g)+"px";var h=o.left+parseInt((q-this._min)/this._unitPerPixel);this.slider.offset({left:h});this._layoutShutter();this._initMarkers();if(this.disabled==false){this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.addHandler(this.host,"dragstart.rangeselector"+this._id,function(){return false});this.addHandler(a(window),"jqxReady.rangeselector",function(){n._layoutMarkers();return false});this.isSliderCaptured=false;this.resizeDirection="none";this.isLeftMarkerCaptured=false;this.isRightMarkerCaptured=false;this.dragging=false;this._mouseDownX;var d;var f;var i="mousedown.rangeselector"+this.element.id;if(this._isTouchDevice){i=a.jqx.mobile.getTouchEventName("touchstart")+".rangeselector"+this.element.id}this.addHandler(this.host,i,function(t){n.isMouseDown=true;n._hostOffset=n.rangeSelector.offset();n._hostWidth=n.rangeSelector.width();n._hostHeight=n.rangeSelector.height();n._sliderLeftOffset=parseInt(n.slider[0].style.left);var A=t.pageX;var v=t.pageY;if(n._isTouchDevice){var z=a.jqx.position(t);A=z.left;v=z.top}n._initialSliderOffset=A-n.slider.offset().left;var B=n.slider.width();n._sliderInitialWidth=B;d=n.slider.offset().left;f=n._sliderInitialWidth;n.initialOffset=d;var s=parseInt((d+f));n.oldX=A;n._mouseDownX=A;n.resizeDirection="none";n.sliderRight=s;if((A>d-5)&&(A<d+5)&&n._heightCheck(v)){n.isSliderCaptured=false;n.dragging=false;n.resizeDirection="left"}else{if((A>s-5)&&(A<s+5)&&n._heightCheck(v)){n.isSliderCaptured=false;n.dragging=false;n.resizeDirection="right"}else{if((A>=d+5)&&(A<=s+5)&&n._heightCheck(v)){n.isSliderCaptured=true;n.dragging=true}else{n.isSliderCaptured=false;n.dragging=false;if(n.moveOnClick){if(n.isLeftMarkerCaptured||n.isRightMarkerCaptured){return false}var l=n._sliderLeftOffset+n._initialSliderOffset;var C=n._findNearestTick(l);l=C;if(l<0){l=0}var u=parseInt(n.slider[0].style.width);if(v>=n.slider.offset().top){if(A>s){n._moveSlider(l-u,true)}else{n._moveSlider(l,true)}}}}}}});this.addHandler(n.leftMarker,i,function(l){n.leftMarkerAndArrow.addClass(n.toThemeProperty("jqx-fill-state-pressed"));n.oldLeftX=l.pageX;if(n._isTouchDevice){var s=a.jqx.position(l);oldLeftX=s.left}n._mouseDownX=n.oldLeftX;n.isLeftMarkerCaptured=true});this.addHandler(n.rightMarker,i,function(l){n.rightMarkerAndArrow.addClass(n.toThemeProperty("jqx-fill-state-pressed"));n.oldRightX=l.pageX;if(n._isTouchDevice){var s=a.jqx.position(l);oldRightX=s.left}n._mouseDownX=n.oldRightX;n.isRightMarkerCaptured=true});this.addHandler(a(document),"selectstart.rangeselector"+this._id,function(l){if(n.isSliderCaptured==true||n.isLeftMarkerCaptured==true||n.isRightMarkerCaptured==true||n.dragging==true){l.preventDefault();return false}});var b="mousemove.rangeselector"+this.element.id;if(this._isTouchDevice){b=a.jqx.mobile.getTouchEventName("touchmove")+".rangeselector"+this.element.id}this.addHandler(a(document),b,function(l){n._handleMouseMove(l)});var k=function(t){try{var s=n.moved;n.moved=false;n.isMouseDown=false;n.dragging=false;n.resizeDirection="none";if(n.isLeftMarkerCaptured==true){n.leftMarkerAndArrow.removeClass(n.toThemeProperty("jqx-fill-state-pressed"));n.isLeftMarkerCaptured=false}if(n.isRightMarkerCaptured==true){n.rightMarkerAndArrow.removeClass(n.toThemeProperty("jqx-fill-state-pressed"));n.isRightMarkerCaptured=false}if(s){var u=n._getValue();n._raiseEvent("0",{from:u.from,to:u.to})}}catch(l){}};this.addHandler(a(document),"mouseup.rangeselector"+this._id,function(l){k(l)});try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var j=function(l){k(l)};var e=null;if(window.parent&&document.referrer){e=document.referrer}if(e&&e.indexOf(document.location.host)!=-1){if(window.top.document){if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",j,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",j)}}}}}}}catch(p){}}else{this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._moveSlider(parseInt(n.slider[0].style.left));this.moved=false},_initMarkers:function(){var c=a("#"+this._id+"TicksContainer");var d=this.toThemeProperty("jqx-rangeselector-markers")+" "+this.toThemeProperty("jqx-disableselect")+" "+this.toThemeProperty("jqx-fill-state-normal");c.append("<div id='"+this._id+"LeftMarker' class='"+d+"'></div><div id='"+this._id+"RightMarker' class='"+d+"'></div>");var e=this.toThemeProperty("jqx-rangeselector-marker-arrow")+" "+this.toThemeProperty("jqx-fill-state-normal");if(this.markersPosition=="bottom"){e+=" "+this.toThemeProperty("jqx-rangeselector-marker-arrow-bottom")}else{e+=" "+this.toThemeProperty("jqx-rangeselector-marker-arrow-top")}c.append("<div id='"+this._id+"LeftMarkerArrow' class='"+e+" "+this.toThemeProperty("jqx-rangeselector-marker-left-arrow")+"'></div>");c.append("<div id='"+this._id+"RightMarkerArrow' class='"+e+" "+this.toThemeProperty("jqx-rangeselector-marker-right-arrow")+"'></div>");a("#"+this._id+"LeftMarker").append("<div id='"+this._id+"LeftMarkerValue' class='"+this.toThemeProperty("jqx-disableselect")+" "+this.toThemeProperty("jqx-rangeselector-markers-value")+"'></div>");a("#"+this._id+"RightMarker").append("<div id='"+this._id+"RightMarkerValue' class='"+this.toThemeProperty("jqx-disableselect")+" "+this.toThemeProperty("jqx-rangeselector-markers-value")+"'></div>");var i=a("#"+this._id+"LeftMarker, #"+this._id+"RightMarker, #"+this._id+"LeftMarkerArrow, #"+this._id+"RightMarkerArrow");var h=a("#"+this._id+"LeftMarker, #"+this._id+"LeftMarkerArrow");var b=a("#"+this._id+"RightMarker, #"+this._id+"RightMarkerArrow");if(this.showMarkers==true){i.css("visibility","visible")}else{i.css("visibility","hidden")}if(this.disabled==false&&this.resizable==true){var f=this;this.addHandler(h,"mouseenter.rangeselector"+this._id,function(j){f.element.style.cursor="pointer";h.addClass(f.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(h,"mouseleave.rangeselector"+this._id,function(j){f.element.style.cursor="auto";h.removeClass(f.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(b,"mouseenter.rangeselector"+this._id,function(j){f.element.style.cursor="pointer";b.addClass(f.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(b,"mouseleave.rangeselector"+this._id,function(j){f.element.style.cursor="auto";b.removeClass(f.toThemeProperty("jqx-fill-state-hover"))})}this.leftMarkerAndArrow=h;this.rightMarkerAndArrow=b;this.leftMarkerArrow=a("#"+this._id+"LeftMarkerArrow");this.rightMarkerArrow=a("#"+this._id+"RightMarkerArrow");this.leftMarker=a("#"+this._id+"LeftMarker");this.rightMarker=a("#"+this._id+"RightMarker");this.leftMarkerValue=a("#"+this._id+"LeftMarkerValue");this.rightMarkerValue=a("#"+this._id+"RightMarkerValue");var g=this._initRange();this._updateMarkersValues(g.left,g.right);this._layoutMarkers();if(this.padding=="auto"){this.host.css("padding-left",this.leftMarker[0].offsetWidth);this.host.css("padding-right",this.rightMarker[0].offsetWidth);this.host.css("padding-top",this._leftMarkerHeight+7)}else{this.host.css("padding",this.padding)}},_layoutMarkers:function(){if(this.showMarkers!=true){return}if(!this._hostOffset){this._hostOffset=this.rangeSelector.offset()}if(!this._leftMarkerHeight){this._leftMarkerHeight=this.leftMarker.outerHeight();this._rightMarkerHeight=this.rightMarker.outerHeight()}var e=this._hostOffset.top;var g=parseInt(this.slider[0].style.left)+this._hostOffset.left;var d=-5;if(this.markersPosition=="bottom"){d=parseInt(this.element.style.height)+4+this._rightMarkerHeight}var c=d-this._leftMarkerHeight;var f=d-this._rightMarkerHeight;if(this.markersPosition=="bottom"){d=parseInt(this.element.style.height)-6}var i=this.leftMarker[0].offsetWidth;var b=1+g-i-this._hostOffset.left;this.leftMarker[0].style.left=b+"px";this.leftMarker[0].style.top=c+"px";this.leftMarkerArrow[0].style.left=2+b+i+"px";this.leftMarkerArrow[0].style.top=6+d+"px";var h=g+parseInt(this.slider[0].style.width)-this._hostOffset.left;this.rightMarker[0].style.left=h+"px";this.rightMarker[0].style.top=f+"px";this.rightMarkerArrow[0].style.left=7+h+"px";this.rightMarkerArrow[0].style.top=6+d+"px"},_updateMarkersValues:function(e,d){var c=e;var b=d;this.leftMarkerValue[0].innerHTML=this._formatOutput(c,this.markersFormat,0,"left",true);this.rightMarkerValue[0].innerHTML=this._formatOutput(b,this.markersFormat,0,"right",true)},_removeHandlers:function(){var f=this.element.id;var e=a("#"+f+"LeftMarker, #"+f+"LeftMarkerArrow");var b=a("#"+f+"RightMarker, #"+f+"RightMarkerArrow");var d="mousemove.rangeselector"+f;var c="mousedown.rangeselector"+f;if(this._isTouchDevice){d=a.jqx.mobile.getTouchEventName("touchmove")+".rangeselector"+f;c=a.jqx.mobile.getTouchEventName("touchstart")+".rangeselector"+f}this.removeHandler(a(document),d);this.removeHandler(a(document),"mouseup.rangeselector"+f);this.removeHandler(this.host,c);this.removeHandler(this.host,"click.rangeselector"+f);this.removeHandler(this.host,"dragstart.rangeselector"+f);this.removeHandler(e,"mouseenter.rangeselector"+f);this.removeHandler(e,"mouseleave.rangeselector"+f);this.removeHandler(b,"mouseenter.rangeselector"+f);this.removeHandler(b,"mouseleave.rangeselector"+f);this.removeHandler(a("#"+f+"LeftMarker"),c);this.removeHandler(a("#"+f+"RightMarker"),c);this.removeHandler(a("#"+f+"LeftMarkerValue, #"+f+"RightMarkerValue"),"selectstart.rangeselector"+f)},_heightCheck:function(b){var d=this.slider;var c=d.offset().top;if(b>=c&&b<=c+d.height()){return true}else{return false}},_checkProperties:function(){if(this._range._from<this._min){this._range._from=this._min}else{if(this._range._from>this._min&&this._range._from>this._max){this._range._from=this._min}}if(this._range._to>this._max){this._range._to=this._max}else{if(this._range._to<this._min&&this._range._to<this._max){this._range._to=this._max}}var c=this._max-this._min;if(this._range._min>c){this._range._min=c}if(this._range._max>c){this._range._max=c}var b=this._range._to-this._range._from;if(b<this._range._min){this._range._to=this._range._from+this._range._min}else{if(b>this._range._max){this._range._to=this._range._from+this._range._max}}},_findNearestTick:function(d){var f=0;var e=Math.abs(d-this._ticksArray[0]);for(var c=1;c<this._ticksArray.length;c++){var b=Math.abs(d-this._ticksArray[c]);if(e>b){e=b;f=c}}return this._ticksArray[f]},_privateProperties:function(){this._min=this._validateInput(this.min);this._max=this._validateInput(this.max);this._range=new Object();this._range._from=this._validateInput(this.range.from!=undefined?this.range.from:0);this._range._to=this._validateInput(this.range.to!=undefined?this.range.to:Infinity);this._range._min=this._minMaxDate(this.range.min!=undefined?this.range.min:0);this._range._max=this._minMaxDate(this.range.max!=undefined?this.range.max:Infinity)},_validateInput:function(c){var b;if(typeof c=="number"){b=c}else{if(typeof c=="string"){b=Date.parse(c)}else{if(c instanceof Date){b=c.getTime()}}}return b},_minMaxDate:function(c){if(typeof c!="number"){var b;switch(c){case"millisecond":b=1;break;case"second":b=1000;break;case"minute":b=60000;break;case"hour":b=3600000;break;case"day":b=86400000;break;case"week":b=604800000;break;default:b=c.milliseconds?c.milliseconds:0+c.seconds?1000*c.seconds:0+c.minutes?60000*c.minutes:0+c.hours?3600000*c.hours:0+c.days?86400000*c.days:0+c.weeks?604800000*c.weeks:0}return b}else{return c}},_formatOutput:function(f,g,c,e,h){var d;if(!this.values){this.values=new Array()}this.values[e]=f;if((e=="label")&&this.labelsFormatFunction){if(this._dataType=="date"){d=this._roundDate(f)}else{d=this._roundNumber(f,"label")}d=this.labelsFormatFunction(d)}else{if(e!="label"&&this.markersFormatFunction){if(this._dataType=="date"){d=this._roundDate(f)}d=this.markersFormatFunction(f,e)}else{if(!g){if(this._dataType=="date"){var b;if(this.labelsFormat==null&&this.markersFormat==null){b="both labelsFormat and markersFormat"}else{if(this.labelsFormat==null){b="labelsFormat"}else{if(this.markersFormat==null){b="markersFormat"}}}var i="When the data format is date, "+b+" should be set.";throw new Error(i)}d=f.toFixed(c)}else{if(this._dataType=="number"){d=a.jqx.dataFormat.formatnumber(f,g)}else{d=this._roundDate(f);d=a.jqx.dataFormat.formatdate(d,g)}}}}return d},_getValue:function(i){var f=this.slider;var e=f.width();var b=new Object();var d=f.offset().left-this.rangeSelector.offset().left;var h=(d*this._unitPerPixel+this._min);b.from=this._roundNumber(h,"marker");b.to=this._roundNumber(h+e*this._unitPerPixel,"marker");if(!i&&this.snapToTicks==true){var g=this._findNearestTick((b.from-this._min)/this._unitPerPixel);b.from=this._valuesArray[this._ticksArray.indexOf(g)];var c=this._findNearestTick((b.to-this._min)/this._unitPerPixel);b.to=this._valuesArray[this._ticksArray.indexOf(c)]}if(this._dataType=="date"){b.from=new Date(b.from);b.to=new Date(b.to)}return b},_roundNumber:function(e,b,d){var c;if(b=="marker"){if(d==true){e=parseFloat(e)}c=parseFloat(e)}else{if(b=="label"){c=parseFloat(e)}else{c=parseFloat(e)}}return c},_roundDate:function(c){if(typeof c=="number"){c=new Date(c)}var d=this._max-this._min;if(d>1209600000){var e=c.getDate();var b=c.getHours();if(b>12){c.setDate(e+1);c.setHours(0);c.setMinutes(0);c.setSeconds(0)}}else{if(d>172800000){c.setHours(c.getHours()+Math.round(c.getMinutes()/60));c.setMinutes(0);c.setSeconds(0)}}return c},_layoutShutter:function(){var d=parseInt(this.slider[0].style.left);this.shutterLeft[0].style.width=d+"px";this.shutterLeft[0].style.left="0px";if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.shutterLeft[0].style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";this.shutterRight[0].style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"}var c=1+d+parseInt(this.slider[0].style.width);this.shutterRight[0].style.left=c+"px";var e=parseInt(this.element.style.width);if(this.element.style.width.indexOf("%")>=0){var e=parseInt(this.host.width())}var b=e-1-d-parseInt(this.slider[0].style.width);if(b<0){b=0}this.shutterRight[0].style.width=1+b+"px";if(c+1+b<2+e){this.shutterRight[0].style.width=2+b+"px"}if(b==0){this.shutterRight[0].style.width="0px"}},_initRange:function(){if(this._range._from>this._range._to){throw new Error("jqxRangeSelector: range object initialization error. 'min' should be less than 'max'");return}var c=this;var e=this._range._from;var b=this._range._to;var d={left:e,right:b};return d}})})(jqxBaseFramework);(function(b){b.jqx.jqxWidget("jqxDataTable","",{});b.extend(b.jqx._jqxDataTable.prototype,{defineInstance:function(){var c={altRows:false,aggregatesHeight:34,autoShowLoadElement:true,autoRowHeight:true,columnsHeight:30,columns:[],columnGroups:null,columnsResize:false,columnsReorder:false,dataview:null,disabled:false,editable:false,editSettings:{saveOnPageChange:true,saveOnBlur:true,saveOnSelectionChange:true,cancelOnEsc:true,saveOnEnter:true,editSingleCell:false,editOnDoubleClick:true,editOnF2:true},enableHover:true,enableBrowserSelection:false,filterHeight:30,filterable:false,filterMode:"default",groupsRenderer:null,groups:new Array(),headerZIndex:359,height:null,handleKeyboardNavigation:null,indentWidth:25,initRowDetails:false,loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxDataTable raises the 'bindingComplete' event when the binding is completed.",localization:null,pagerHeight:28,pageSize:10,pageSizeOptions:["5","10","20"],pageable:false,pagerPosition:"bottom",pagerMode:"default",pageSizeMode:"default",pagerButtonsCount:5,pagerRenderer:null,ready:null,rendertoolbar:null,rowDetails:false,renderStatusBar:null,rendered:null,rendering:null,rtl:false,sortable:false,showtoolbar:false,showstatusbar:false,statusBarHeight:34,serverProcessing:false,selectionMode:"multiplerows",scrollBarSize:b.jqx.utilities.scrollBarSize,touchScrollBarSize:b.jqx.utilities.touchScrollBarSize,showAggregates:false,showHeader:true,maxHeight:999999,maxWidth:999999,autoBind:true,beginEdit:null,endEdit:null,autokoupdates:true,columnsVirtualization:false,exportSettings:{columnsHeader:true,hiddenColumns:false,serverURL:null,characterSet:null,collapsedRecords:false,recordsInView:true,fileName:"jqxDataTable"},source:{beforeprocessing:null,beforesend:null,loaderror:null,localdata:null,data:null,datatype:"array",datafields:[],url:"",root:"",record:"",id:"",totalrecords:0,recordstartindex:0,recordendindex:0,loadallrecords:true,sortcolumn:null,sortdirection:null,sort:null,filter:null,sortcomparer:null},toolbarHeight:34,tableZIndex:369,_updating:false,touchmode:"auto",width:null,that:this,incrementalSearch:true,events:["bindingComplete","sort","filter","pageChanged","pageSizeChanged","rowClick","rowDoubleClick","cellValueChanged","rowBeginEdit","rowEndEdit","rowSelect","rowUnselect","rowCheck","rowUncheck","columnResized","columnReordered","rowExpand","rowCollapse","cellBeginEdit","cellEndEdit"]};b.extend(true,this,c);this.that=this;return c},createInstance:function(e){var l=this;if(b.jqx.utilities.scrollBarSize!=15){l.scrollBarSize=b.jqx.utilities.scrollBarSize}if((l.element.nodeName.toLowerCase()=="table")||b(l.element).children("table").length>0){var n=l.host.find("tbody tr");var d=l.host.find("th");var w=new Array();if(d.length===0){d=n[0];n.splice(0,1)}if(l.localizestrings){l.localizestrings();if(l.localization!=null){l.localizestrings(l.localization,false)}}var z=[];for(var u=0;u<n.length;u++){var k=n[u];var h={};for(var t=0;t<d.length;t++){var g=b.trim(b(d[t]).text());if(u===0){var s={name:g};if(l.columns[t]&&l.columns[t].cellsFormat){var v=l.columns[t].cellsFormat.toLowerCase();if(v.indexOf("p")!=-1||v.indexOf("c")!=-1||v.indexOf("n")!=-1||v.indexOf("f")!=-1){s.type="number"}if(v.indexOf("d")!=-1||v.indexOf("m")!=-1||v.indexOf("y")!=-1||v.indexOf("h")!=-1||v.indexOf("m")!=-1||v.indexOf("s")!=-1||v.indexOf("t")!=-1){s.type="date"}}w.push(s)}var c=b(k).find("td:eq("+t+")");var f=w[t].type;if(f){var p=l.getvaluebytype(b.trim(c.text()),w[t]);h[g]=p}else{h[g]=b.trim(c.text())}}z[z.length]=h}l.host.wrap("<div></div>");var m=l.host.parent();var q=l.host.data();q.jqxDataTable.host=m;q.jqxDataTable.element=m[0];l.host.parent()[0].id=l.element.id;try{l.host.parent()[0].style=l.element.style}catch(r){}l.element=m[0];l.host=m;l.host.data(q);var o={dataFields:w,localdata:z,datatype:"array"};var y=new b.jqx.dataAdapter(o);l.source=y}if(l.source&&!l.source.dataBind){l.source=new b.jqx.dataAdapter(l.source)}var x=l.source._source.datafields;if(x&&x.length>0){l._camelCase=l.source._source.dataFields!==undefined;l.selectionMode=l.selectionMode.toLowerCase()}if(l.host.attr("tabindex")==null){l.host.attr("tabindex","0")}l.host.attr("role","grid");l.host.attr("align","left");l.host.addClass(l.toTP("jqx-grid"));l.host.addClass(l.toTP("jqx-reset"));l.host.addClass(l.toTP("jqx-rc-all"));l.host.addClass(l.toTP("jqx-widget"));l.host.addClass(l.toTP("jqx-widget-content"));if(l._testmodules()){return}l.render(true);b.jqx.utilities.resize(l.host,function(){var A=b(window).width();var i=b(window).height();var j=l.host.width();var B=l.host.height();if(l._lastHostWidth!=j||l._lastHostHeight!=B){l._updatesize(l._lastHostWidth!=j,l._lastHostHeight!=B)}l._lastWidth=A;l._lastHeight=i;l._lastHostWidth=j;l._lastHostHeight=B})},getvaluebytype:function(h,d){var f=h;if(h==null){return h}if(this.gridlocalization.decimalseparator==","){if(h.indexOf(this.gridlocalization.decimalseparator)>=0){h=h.replace(this.gridlocalization.decimalseparator,".")}}if(h.indexOf(this.gridlocalization.currencysymbol)>=0){h=h.replace(this.gridlocalization.currencysymbol,"")}if(h.indexOf(this.gridlocalization.percentagesymbol)>=0){h=h.replace(this.gridlocalization.percentagesymbol,"")}if(b.isArray(h)&&d.type!="array"){for(var e=0;e<h.length;e++){h[e]=this.getvaluebytype(h[e],d)}return h}if(d.type=="date"){if(h=="NaN"){h=""}else{var g=new Date(h);if(typeof h=="string"){if(d.format){var c=b.jqx.dataFormat.parsedate(h,d.format);if(c!=null){g=c}}}if(g.toString()=="NaN"||g.toString()=="Invalid Date"){if(b.jqx.dataFormat){h=b.jqx.dataFormat.tryparsedate(h)}else{h=g}}else{h=g}if(h==null){h=f}}}else{if(d.type=="float"||d.type=="number"||d.type=="decimal"){if(h=="NaN"){h=""}else{var h=parseFloat(h);if(isNaN(h)){h=f}}}else{if(d.type=="int"||d.type=="integer"){var h=parseInt(h);if(isNaN(h)){h=f}}else{if(d.type=="bool"||d.type=="boolean"){if(h!=null){if(h.toLowerCase!=undefined){if(h.toLowerCase()=="false"){h=false}else{if(h.toLowerCase()=="true"){h=true}}}}if(h==1){h=true}else{if(h==0&&h!==""){h=false}else{h=""}}}}}}return h},_builddataloadelement:function(){if(this.dataloadelement){this.dataloadelement.remove()}this.dataloadelement=b('<div class="jqx-datatable-load" style="z-index: 99998; background-color:rgba(50,50,50,0.1); overflow: hidden; position: absolute;"></div>');var d=b('<div style="z-index: 99999; margin-left: -66px; left: 50%; top: 50%; margin-top: -24px; position: relative; width: 100px; height: 33px; padding: 5px; font-family: verdana; font-size: 12px; color: #767676; border-color: #898989; border-width: 1px; border-style: solid; background: #f6f6f6; border-collapse: collapse;"><div style="float: left;"><div style="float: left; overflow: hidden; width: 32px; height: 32px;" class="jqx-grid-load"/><span style="margin-top: 10px; float: left; display: block; margin-left: 5px;" >'+this.gridlocalization.loadtext+"</span></div></div>");d.addClass(this.toTP("jqx-rc-all"));this.dataloadelement.addClass(this.toTP("jqx-rc-all"));d.addClass(this.toTP("jqx-fill-state-normal"));this.dataloadelement.append(d);this.dataloadelement.width(this.width);this.dataloadelement.height(this.height);this.host.prepend(this.dataloadelement);if(this.source._source.url!=""){var c=false;if(this.height==="auto"||this.height===null||this.autoheight){if(this.maxHeight==999999){c=true}}if(c){this.host.height(100);this.dataloadelement.height(100)}else{this.host.height(this.height);this.dataloadelement.height(this.height)}var e=false;if(this.width==="auto"||this.width===null||this.autoWidth){e=true}if(e){this.host.width(300);this.dataloadelement.width(300)}else{this.host.width(this.width);this.dataloadelement.width(this.width)}}},_measureElement:function(d){var c=b("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");c.addClass(this.toTP("jqx-widget"));b(document.body).append(c);if(d=="cell"){this._cellheight=c.height()}else{this._columnheight=c.height()}c.remove()},_testmodules:function(){var g="";var e=this;var c=function(){if(g.length!=""){g+=","}};if(!this.host.jqxScrollBar){c();g+=" jqxscrollbar.js"}if(!this.host.jqxButton){c();g+=" jqxbuttons.js"}if(!b.jqx.dataAdapter){c();g+=" jqxdata.js"}if(g!=""||this.editable||this.filterable||this.pageable){var d=[];var f=function(h){switch(h){case"checkbox":if(!e.host.jqxCheckBox&&!d.checkbox){d.checkbox=true;c();g+=" jqxcheckbox.js"}break;case"dropdownlist":if(!e.host.jqxDropDownList&&!d.dropdownlist){c();d.dropdownlist=true;g+=" jqxdropdownlist.js(requires: jqxlistbox.js)"}else{if(!e.host.jqxListBox&&!d.listbox){c();d.listbox=true;g+=" jqxlistbox.js"}}break}};if((this.filterable&&this.filterMode!="simple")||(this.pagerMode=="advanced"&&this.pageable)){f("dropdownlist")}if(g!=""){throw new Error("jqxDataTable: Missing references to the following module(s): "+g);this.host.remove();return true}}return false},focus:function(){try{this.wrapper.focus();this.host.focus();var d=this;setTimeout(function(){d.wrapper.focus();d.host.focus()},25);this.focused=true}catch(c){}},hiddenParent:function(){return b.jqx.isHidden(this.host)},isBindingCompleted:function(){return !this._loading},_updatesize:function(i,h){if(this._loading){return}var f=this;var g=f.host.width();var e=f.host.height();if(!f._oldWidth){f._oldWidth=g}if(!f._oldHeight){f._oldHeight=e}if(f._resizeTimer!=undefined){clearTimeout(f._resizeTimer);f._resizeTimer=null}var d=300;var c=function(){if(f._resizeTimer){clearTimeout(f._resizeTimer)}f.resizingGrid=true;if(b.jqx.isHidden(f.host)){return}f._updatecolumnwidths();f.refresh();f._oldWidth=g;f._oldHeight=e;f.resizingGrid=false};c();f._resizeTimer=setTimeout(function(){var k=f.host.width();var j=f.host.height();if(f._oldWidth!=k||f._oldHeight!=j){c()}},d)},resize:function(d,c){if(d!=undefined){this.width=d}if(c!=undefined){this.height=c}this._updatecolumnwidths();this.refresh()},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var c=b.jqx.mobile.isTouchDevice();this.touchDevice=c;if(this.touchmode==true){c=true;b.jqx.mobile.setMobileSimulator(this.element);this.touchDevice=c}else{if(this.touchmode==false){c=false}}if(c){this.touchDevice=true;this.host.addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-content").addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-header").addClass(this.toThemeProperty("jqx-touch"));this.scrollBarSize=this.touchScrollBarSize}return c},toTP:function(c){return this.toThemeProperty(c)},localizestrings:function(c,f){this._cellscache=new Array();if(b.jqx.dataFormat){b.jqx.dataFormat.cleardatescache()}if(this._loading){throw new Error("jqxDataTable: "+this.loadingErrorMessage);return false}if(c!=null){for(var h in c){if(h.toLowerCase()!==h){c[h.toLowerCase()]=c[h]}}var j=["pagergotopagestring","pagershowrowsstring","pagerrangestring","pagernextbuttonstring","pagerpreviousbuttonstring","pagerfirstbuttonstring","pagerlastbuttonstring","toppagerstring","firstDay","days","months","AM","PM","patterns","percentsymbol","currencysymbol","currencysymbolposition","decimalseparator","thousandsseparator","filterapplystring","filteraddnew","filtercancelstring","filterclearstring","filterstring","filterstringcomparisonoperators","filternumericcomparisonoperators","filterdatecomparisonoperators","filterbooleancomparisonoperators","emptydatastring","filterselectstring","todaystring","clearstring","validationstring","loadtext","filtersearchstring","loadingErrorMessage"];var g=this;for(var e=0;e<j.length;e++){var d=j[e];if(c[d]!==undefined){g.gridlocalization[d]=c[d]}}if(c.loadingErrorMessage){this.loadingErrorMessage=c.loadingErrorMessage}if(f!==false){this._builddataloadelement();b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")}}else{this.gridlocalization={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"dd-MMMM-yyyy",d4:"dd-MM-yy",d5:"H:mm",d6:"HH:mm",d7:"HH:mm tt",d8:"dd/MMMM/yyyy",d9:"MMMM-dd",d10:"MM-dd",d11:"MM-dd-yyyy"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:",",pagergotopagestring:"Go to page:",pagershowrowsstring:"Show rows:",pagerrangestring:" of ",pagerpreviousbuttonstring:"previous",pagernextbuttonstring:"next",pagerfirstbuttonstring:"first",pagerlastbuttonstring:"last",filterapplystring:"Apply",filtercancelstring:"Cancel",filterclearstring:"Clear Filter",filterstring:"advanced",filtersearchstring:"Search:",filterstringcomparisonoperators:["empty","not empty","contains","contains(match case)","does not contain","does not contain(match case)","starts with","starts with(match case)","ends with","ends with(match case)","equal","equal(match case)","null","not null"],filternumericcomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterdatecomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterbooleancomparisonoperators:["equal","not equal"],validationstring:"Entered value is not valid",emptydatastring:"No data to display",filterselectstring:"Select Filter",loadtext:"Loading...",clearstring:"Clear",todaystring:"Today",loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxDataTable raises the 'bindingComplete' event when the binding is completed."}}},_updateScrollbars:function(m){var p=false;if(this.width==="auto"||this.width===null||this.autowidth){if(this.maxWidth==999999){p=true}}var d=parseInt(this.scrollBarSize);var j=this.table?this.table.height():0;var n=0;var e="inherit";var h=this.vScrollBar[0].style.visibility;var l=this.hScrollBar[0].style.visibility;if(!m){var g=this.host.height()}else{var g=m}if(!this.columnGroups){g-=this.showHeader?this.columnsHeight:0}else{g-=this.showHeader?this.columnsheader.height():0}if(this.filterable){g-=this.filter.height()}if(this.pageable){g-=this.pagerHeight;if(this.pagerPosition==="both"){g-=this.pagerHeight}}if(this.showtoolbar){g-=this.toolbarHeight}if(this.showstatusbar){g-=this.statusBarHeight}if(this.showAggregates){g-=this.aggregatesHeight}var q=false;if(this.height==="auto"||this.height===null||this.autoheight){if(this.maxHeight==999999){q=true}}if(!q&&j>g&&(this.source.records.length>0||this.source.hierarchy.length>0)){this.vScrollBar[0].style.visibility=e;n=4+parseInt(d);this.vScrollBar.jqxScrollBar({max:j-g})}else{this.vScrollBar[0].style.visibility="hidden"}if((h!=this.vScrollBar[0].style.visibility)){this._updatecolumnwidths();var i=this.table.height();if(j!=i){j=i;if(!q&&j>g&&(this.source.records.length>0||this.source.hierarchy.length>0)){this.vScrollBar[0].style.visibility=e;n=4+parseInt(d);this.vScrollBar.jqxScrollBar({max:j-g})}}}var o=this.table?this.table.width():0;if(o>3){o-=3}var c=parseInt(this.host.css("border-left-width"))+parseInt(this.host.css("border-right-width"));var r=c+this.host.width()-n;if(o>r&&!p){this.hScrollBar[0].style.visibility=e;this.hScrollBar.jqxScrollBar({max:o-r});n=4+parseInt(d);if(!q){if(j>g-n+4&&(this.source.records.length>0||this.source.hierarchy.length>0)){this.hScrollBar.jqxScrollBar({max:c+o-r});var f=this.vScrollBar[0].style.visibility==="hidden";this.vScrollBar[0].style.visibility=e;this._updatecolumnwidths();if(f){this.hScrollBar.jqxScrollBar({max:o-r+n+c})}var k=this.table?this.table.width():0;if(k>3){k-=3}if(k!=o){if(k<r){this.hScrollBar.jqxScrollBar({max:c+k-r});this.hScrollBar[0].style.visibility="hidden";n=0}}}this.vScrollBar.jqxScrollBar({max:j-g+n})}}else{this.hScrollBar[0].style.visibility="hidden"}if(this.source.records.length===0&&(this.source.hierarchy&&this.source.hierarchy.length===0)){this.vScrollBar[0].style.visibility="hidden";this.bottomRight[0].style.visibility="hidden"}if(this.vScrollBar[0].style.visibility=="hidden"){if(this.vScrollInstance.value!=0){this.vScrollInstance.setPosition(0)}}},_measureElementWidth:function(e){var d=b("<span style='visibility: hidden; white-space: nowrap;'>"+e+"</span>");d.addClass(this.toTP("jqx-widget"));d.addClass(this.toTP("jqx-grid"));d.addClass(this.toTP("jqx-grid-column-header"));d.addClass(this.toTP("jqx-widget-header"));b(document.body).append(d);var c=d.outerWidth()+20;d.remove();return c},_arrangeAutoHeight:function(e){if(!e){e=0}if(this.height==="auto"||this.height===null||this.autoheight){var h=this.table.height();var g=0;if(!this.columnGroups){g+=this.showHeader?this.columnsHeight:-1}else{g+=this.showHeader?this.columnsheader.height():-1}g+=this.showstatusbar?this.statusBarHeight:0;g+=this.showAggregates?this.aggregatesHeight:0;g+=this.showtoolbar?this.toolbarHeight:0;g+=this.pageable?this.pagerHeight:0;if(this.pagerPosition==="both"){g+=this.pageable?this.pagerHeight:0}g+=h;if(this.filterable){var f=this.filter.find(".filterrow");var c=this.filter.find(".filterrow-hidden");var d=1;if(c.length>0){d=0}g+=this.filterHeight-1+this.filterHeight*f.length*d}if(g+e>this.maxHeight){this.host.height(this.maxHeight)}else{this.host.height(g+e)}return true}return false},_arrangeAutoWidth:function(e){if(!e){e=0}if(this.width==="auto"||this.width===null||this.autowidth){var d=0;for(var f=0;f<this.columns.records.length;f++){var c=this.columns.records[f].width;if(this.columns.records[f].hidden){continue}if(c=="auto"){c=this._measureElementWidth(this.columns.records[f].text);d+=c}else{d+=c}}width=d;if(width+e>this.maxWidth){this.host.width(this.maxWidth)}else{this.host.width(width+e)}return true}return false},_measureTopAndHeight:function(){var d=this.host.height();var h=0;if(this.showtoolbar){h+=this.toolbarHeight;d-=parseInt(this.toolbarHeight)}if(this.filterable){var g=this.filter.find(".filterrow");var e=this.filter.find(".filterrow-hidden");var f=1;if(e.length>0){f=0}h+=this.filterHeight;d-=parseInt(this.filterHeight);var c=f==1?g.length:0;h+=this.filterHeight*c;d-=this.filterHeight*c}if(this.pageable&&this.pagerPosition!="bottom"){h+=parseInt(this.pagerHeight)+1;if(d>this.pagerHeight&&this.pagerPosition==="both"){d-=parseInt(this.pagerHeight)}}return{top:h,height:d}},_arrange:function(){if(!this.table){return}this._arrangeAutoHeight();this._arrangeAutoWidth();var v=this.host.width();var r=this.host.height();var j=r;var i=this;if(this.pageable){if(this.pagerPosition==="bottom"){this.toppager[0].style.visibility="hidden";this.pager[0].style.visibility="inherit"}else{if(this.pagerPosition==="both"){this.toppager[0].style.visibility="inherit";this.pager[0].style.visibility="inherit"}else{if(this.pagerPosition==="top"){this.toppager[0].style.visibility="inherit";this.pager[0].style.visibility="hidden"}}}}else{this.toppager[0].style.visibility="hidden";this.pager[0].style.visibility="hidden"}var q=0;if(this.showtoolbar){this.toolbar.width(v);this.toolbar.height(this.toolbarHeight-1);this.toolbar.css("top",0);q+=this.toolbarHeight;r-=parseInt(this.toolbarHeight)}else{this.toolbar[0].style.height="0px"}if(this.filterable){this.filter.width(v);this.filter.css("top",q);var t=this.filter.find(".filterrow");var h=this.filter.find(".filterrow-hidden");var A=1;if(h.length>0){A=0}this.filter.height(this.filterHeight-1+this.filterHeight*t.length*A);q+=this.filterHeight;r-=parseInt(this.filterHeight);var x=A==1?t.length:0;q+=this.filterHeight*x;r-=this.filterHeight*x}if(this.showstatusbar){this.statusbar.width(!this.table?v:Math.max(v,this.table.width()));this.statusbar.height(this.statusBarHeight-1)}else{this.statusbar[0].style.height="0px"}if(this.showAggregates){this.aggregates.height(this.aggregatesHeight-1)}else{this.aggregates[0].style.height="0px"}if(this.pageable&&this.pagerPosition!="bottom"){this.toppager[0].style.width=v+"px";this.toppager[0].style.height=parseInt(this.pagerHeight)+"px";this.toppager[0].style.top=parseInt(q)+"px";q+=parseInt(this.pagerHeight)+1;if(r>this.pagerHeight){r-=parseInt(this.pagerHeight)}}else{if(this.toppager[0].style.width!=v+"px"){this.toppager[0].style.width=parseInt(v)+"px"}if(this.toppager[0].style.height!=this.pagerHeight+"px"){this.toppager[0].style.height=parseInt(this.pagerHeight)+"px"}if(this.toppager[0].style.top!=q+"px"){this.toppager[0].style.top=q+"px"}var y=this.pagerPosition!="bottom"?this.pagerHeight:0;var d=q+y+"px";if(this.content[0].style.top!=d){this.content[0].style.top=q+this.pagerHeight+"px"}}this._updateScrollbars(j);var c=parseInt(this.scrollBarSize);var n=4;var e=2;var f=0;if(this.vScrollBar[0].style.visibility!="hidden"){f=c+n}if(this.hScrollBar[0].style.visibility!="hidden"){e=c+n+2}if(this.showAggregates){if(this.hScrollBar[0].style.visibility==="hidden"){this.aggregates.width(!this.table?v:Math.max(v,this.table.width())+4)}else{this.aggregates.width("auto")}}if("hidden"!=this.vScrollBar[0].style.visibility||"hidden"!=this.hScrollBar[0].style.visibility){var w=this._arrangeAutoHeight(e-2);var s=this._arrangeAutoWidth(f+1);if(w||s){var v=this.host.width();this.toppager[0].style.width=parseInt(v)+"px";this.toolbar[0].style.width=parseInt(v)+"px";this.statusbar[0].style.width=parseInt(v)+"px";this.filter[0].style.width=parseInt(v)+"px"}if(w){var B=this._measureTopAndHeight();q=B.top;r=B.height}}var m=0;if(this.pageable){m=this.pagerHeight;if(this.pagerPosition!="top"){e+=this.pagerHeight}}if(this.showAggregates){e+=this.aggregatesHeight;m+=this.aggregatesHeight}if(this.showstatusbar){e+=this.statusBarHeight;m+=this.statusBarHeight}if(this.hScrollBar[0].style.height!=c+"px"){this.hScrollBar[0].style.height=parseInt(c)+"px"}if(this.hScrollBar[0].style.top!=q+r-n-c-m+"px"||this.hScrollBar[0].style.left!="0px"){this.hScrollBar[0].style.top=q+r-n-c-m-1+"px";this.hScrollBar[0].style.left="0px"}var l=this.hScrollBar[0].style.width;var g=false;var z=false;if(f==0){if(l!=(v-2)+"px"){this.hScrollBar[0].style.width=(v-2)+"px";g=true}}else{if(l!=(v-c-n)+"px"){this.hScrollBar[0].style.width=(v-c-n+"px");g=true}}if(this.vScrollBar[0].style.width!=c+"px"){this.vScrollBar[0].style.width=c+"px";z=true}if(this.vScrollBar[0].style.height!=parseInt(r)-e+"px"){this.vScrollBar[0].style.height=(parseInt(r)-e+"px");z=true}if(this.vScrollBar[0].style.left!=parseInt(v)-parseInt(c)-n+"px"||this.vScrollBar[0].style.top!=q+"px"){this.vScrollBar[0].style.top=q+"px";this.vScrollBar[0].style.left=parseInt(v)-parseInt(c)-n+"px"}if(this.rtl){this.vScrollBar.css({left:"0px",top:q});if(this.vScrollBar.css("visibility")!="hidden"){this.hScrollBar.css({left:c+2})}}var k=this.vScrollInstance;k.disabled=this.disabled;var u=this.hScrollInstance;u.disabled=this.disabled;if(g){u.refresh()}if(z){k.refresh()}var o=function(C){if((C.vScrollBar[0].style.visibility!="hidden")&&(C.hScrollBar[0].style.visibility!="hidden")){C.bottomRight[0].style.visibility="inherit";C.bottomRight[0].style.left=1+parseInt(C.vScrollBar.css("left"))+"px";C.bottomRight[0].style.top=parseInt(C.hScrollBar.css("top"))+"px";if(C.rtl){C.bottomRight.css("left","0px")}C.bottomRight[0].style.width=parseInt(c)+3+"px";C.bottomRight[0].style.height=parseInt(c)+4+"px";if(C.showAggregates){C.bottomRight.css("z-index",99);C.bottomRight.height(parseInt(c)+4+C.aggregatesHeight);C.bottomRight.css({top:parseInt(C.hScrollBar.css("top"))-C.aggregatesHeight})}}else{C.bottomRight[0].style.visibility="hidden"}};o(this);if(this.content[0].style.width!=v-f+"px"){this.content[0].style.width=v-f+"px"}if(this.content[0].style.height!=r-e+3+"px"){this.content[0].style.height=r-e+3+"px"}if(this.content[0].style.top!=q+"px"){this.content[0].style.top=parseInt(q)+"px"}if(this.rtl){this.content.css("left",f);if(this.filter&&(this.filter.children().length>0)){b(this.filter.children()).css("left",f)}if(this.table){var p=this.table.width();if(p<v-f){this.content.css("left",v-p+2);if(this.filter&&(this.filter.children().length>0)){b(this.filter.children()).css("left",v-p+2)}}}}if(this.showAggregates){this.aggregates.css("top",q+r-this.aggregatesHeight-(this.pageable?this.pagerHeight:0)-(this.showstatusbar?(this.statusBarHeight+1):0));if(this.rtl){this.aggregates.css("left","0px")}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.css({top:q+r-n-c-m+this.aggregatesHeight+"px"});this.aggregates.css("top",1+q+r-c-5-this.aggregatesHeight-(this.pageable?this.pagerHeight:0)-(this.showstatusbar?(this.statusBarHeight+1):0))}o(this)}if(this.showstatusbar){this.statusbar.css("top",q+r-this.statusBarHeight-(this.pageable?this.pagerHeight:0));if(this.rtl){if(this.hScrollBar.css("visibility")=="hidden"){this.statusbar.css("left",this.content.css("left"))}else{this.statusbar.css("left","0px")}}}if(this.pageable){this.pager[0].style.width=v+"px";this.pager[0].style.height=this.pagerHeight+"px";this.pager[0].style.top=parseInt(q)+parseInt(r)-parseInt(this.pagerHeight)-1+"px"}else{this.pager[0].style.height="0px"}this.vScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;this.hScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;if(v!=parseInt(this.dataloadelement[0].style.width)){this.dataloadelement[0].style.width=this.element.style.width}if(r!=parseInt(this.dataloadelement[0].style.height)){this.dataloadelement[0].style.height=this.element.style.height}this._hostwidth=v},scrollOffset:function(e,d){if(arguments.length==0||(e!=null&&typeof(e)=="object"&&!e.top)){return{left:this.hScrollBar.jqxScrollBar("value"),top:this.vScrollBar.jqxScrollBar("value")}}if(e!=null&&typeof(e)=="object"){var d=e.left;var c=e.top;var e=c}if(e==null||d==null||e==undefined||d==undefined){return}this.vScrollBar.jqxScrollBar("setPosition",e);this.hScrollBar.jqxScrollBar("setPosition",d)},scrollleft:function(c){if(c==null||c==undefined){return}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.jqxScrollBar("setPosition",c)}},scrolltop:function(c){if(c==null||c==undefined){return}if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar("setPosition",c)}},beginUpdate:function(){this._updating=true;this._datachanged=false},endUpdate:function(c){this._updating=false;if(c===false){return}this._rendercolumnheaders();this.refresh()},updating:function(){return this._updating},databind:function(g,i,c){if(this.loadingstate===true){return}if(this.host.css("display")=="block"){if(this.autoShowLoadElement){b(this.dataloadelement).css("visibility","visible");b(this.dataloadelement).css("display","block");this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height())}else{b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")}}var f=this;if(g==null){g={}}if(g.sortcomparer==undefined||g.sortcomparer==null){g.sortcomparer=null}if(g.filter==undefined||g.filter==null){g.filter=null}if(g.sort==undefined||g.sort==null){g.sort=null}if(g.data==undefined||g.data==null){g.data=null}var d=null;if(g!=null){d=g._source!=undefined?g._source.url:g.url}this.dataview=this.dataview||new b.jqx.dataView();this.dataview.pageable=this.pageable;this.dataview.grid=this;if(!f.initializedcall){if(g._source){if(this.sortable){if(g._source.sortcolumn!=undefined){this.sortcolumn=g._source.sortcolumn;this.source.sortcolumn=this.sortcolumn;this.dataview.sortfield=g._source.sortcolumn;g._source.sortcolumn=null}if(g._source.sortdirection!=undefined){this.dataview.sortfielddirection=g._source.sortdirection;var h=g._source.sortdirection;if(h=="a"||h=="asc"||h=="ascending"||h==true){var e=true}else{var e=false}if(h!=null){this.sortdirection={ascending:e,descending:!e}}else{this.sortdirection={ascending:false,descending:false}}}}}if(this.pageable){if(g._source){if(g._source.pagenum!=undefined){this.dataview.pagenum=g._source.pagenum}if(g._source.pagesize!=undefined){this.pageSize=g._source.pagesize;this.dataview.pagesize=g._source.pagesize}else{this.dataview.pagesize=g._source.pagesize;if(this.dataview.pagesize==undefined){this.dataview.pagesize=this.pageSize}}}}if(this.sortable){if(g.sortcolumn){this.dataview.sortfield=g.sortcolumn}if(g.sortdirection){this.dataview.sortfielddirection=g.sortdirection}}}this._loading=true;this.dataview.update=function(z){f._loading=false;f.rowsByKey=new Array();var m=f.source._source.datafields;if(f.groups&&f.groups.length>0){var u=Object.prototype.toString;var w=f.groups[0];Object.prototype.toString=(typeof w=="function")?w:function(){return this[w]};if(!f.source.records.sort){var v=new Array();var t=0;b.each(data,function(){v[startindex+t++]=this});data=v}f.source.records.sort(function(B,j){if(B===undefined){B=null}if(j===undefined){j=null}if(B===null&&j===null){return 0}if(B===null&&j!==null){return -1}if(B!==null&&j===null){return 1}var E=0;var D=0;if(B&&B.uid){E=B.uid}if(j&&j.uid){D=j.uid}B=B.toString();j=j.toString();if(b.jqx.dataFormat.isNumber(B)&&b.jqx.dataFormat.isNumber(j)){if(B<j){return -1}if(B>j){return 1}return 0}else{if(b.jqx.dataFormat.isDate(B)&&b.jqx.dataFormat.isDate(j)){if(B<j){return -1}if(B>j){return 1}return 0}else{if(!b.jqx.dataFormat.isNumber(B)&&!b.jqx.dataFormat.isNumber(j)){B=String(B).toLowerCase();j=String(j).toLowerCase()}}}try{if(B<j){return -1}if(B>j){return 1}}catch(C){var F=C}if(typeof(E)=="number"){if(E<D){return -1}if(E>D){return 1}}return 0});Object.prototype.toString=u}for(var q=0;q<f.source.records.length;q++){var A=f.source.records[q];f.rowsByKey[A.uid]=A;if(A.records&&A.records.length>0){var l=function(B){for(var C=0;C<B.length;C++){if(!B[C]){continue}f.rowsByKey[B[C].uid]=B[C];if(B[C].records&&B[C].records.length>0){l(B[C].records)}}};l(A.records)}if(q===0){var k=false;if(m){for(var o=0;o<m.length;o++){if(!m[o]){continue}if(!m[o].type){k=true;m[o].type="string";var y=A[m[o].name];if(y==undefined){continue}if(y===true||y===false){m[o].type="boolean"}if(y!=null&&y.toString().indexOf(f.gridlocalization.currencysymbol)>-1||y.toString().indexOf(f.gridlocalization.percentsymbol)>-1){var r=y.toString().split(" ").length;var s=new Number(f._toNumber(y.toString()));if(!isNaN(s)&&r==1){m[o].type="number"}}if(b.jqx.dataFormat.isNumber(y)||(!isNaN(parseFloat(y))&&isFinite(y))){m[o].type="number"}if(b.jqx.dataFormat.isDate(y)){m[o].type="date"}}}}if(k){for(var o=0;o<m.length;o++){var x=f.source.getvaluebytype(A[m[o].name],m[o]);if(x!=null&&m[o].type=="number"){var p=x;p=new Number(f._toNumber(p.toString()));if(!isNaN(p)){x=p}}A[m[o].name]=x}}}}if(i==="pager"||i==="filter"||i==="sort"){f.refresh()}else{f._render()}if(f.autoShowLoadElement&&!f._loading){b(f.dataloadelement).css("visibility","hidden");b(f.dataloadelement).css("display","none")}if(f.pageable){if(!f.disabled){if(f.pagernexttop){f.pagerfirsttop.jqxButton({disabled:false});f.pagerfirstbottom.jqxButton({disabled:false});f.pagerlasttop.jqxButton({disabled:false});f.pagerlastbottom.jqxButton({disabled:false});f.pagernexttop.jqxButton({disabled:false});f.pagerprevioustop.jqxButton({disabled:false});if(f.pagershowrowscombotop.jqxDropDownList){if(f.pagerMode=="advanced"){f.pagershowrowscombotop.jqxDropDownList({disabled:false});f.pagershowrowscombobottom.jqxDropDownList({disabled:false})}}f.pagernextbottom.jqxButton({disabled:false});f.pagerpreviousbottom.jqxButton({disabled:false})}}}f._updateTouchScrolling();f._raiseEvent("bindingComplete");if(c){c()}if(!f.initializedcall){f.initializedcall=true;f.isInitialized=true;if(f.ready){f.ready()}if((f.width!=null&&f.width.toString().indexOf("%")!=-1)||(f.height!=null&&f.height.toString().indexOf("%")!=-1)){f._updatesize(true)}if(f.host.css("visibility")=="hidden"){var n=b.jqx.browser.msie&&b.jqx.browser.version<8;if(f.vScrollBar.css("visibility")=="visible"){f.vScrollBar.css("visibility","inherit")}if(f.hScrollBar.css("visibility")=="visible"){f.hScrollBar.css("visibility","inherit")}f._intervalTimer=setInterval(function(){if(f.host.css("visibility")=="visible"){f._updatesize(true);clearInterval(f._intervalTimer)}},100)}}};this.dataview.databind(g)},_raiseEvent:function(g,d){if(d==undefined){d={owner:null}}var e=g;args=d;args.owner=this;var f=new b.Event(e);f.owner=this;f.args=args;var c=this.host.trigger(f);d=f.args;return c},ensureColumnVisible:function(d){var g=0;var c=0;for(var f=0;f<this.columns.records.length;f++){if(this.columns.records[f].datafield!=d){g+=this.columns.records[f].width}else{g+=this.columns.records[f].width;c=this.columns.records[f].width;break}}if(this.hScrollBar.css("visibility")!="hidden"){var h=this.hScrollBar.jqxScrollBar("value");var e=h+this.host.width();if(h>g-c){this.hScrollBar.jqxScrollBar("setPosition",g-c)}else{if(g>e){this.hScrollBar.jqxScrollBar("setPosition",h+g-e)}}}},ensurerowvisiblebykey:function(o){if(this.vScrollBar[0].style.visibility==="hidden"){return false}var p=this._getuirow(o);if(!p){return}var m=this.vScrollBar.jqxScrollBar("value");var e=this.host.height();var g=0;if(!this.columnGroups){g+=this.showHeader?this.columnsHeight:0}else{g+=this.showHeader?this.columnsheader.height():0}if(this.filterable){g+=this.filter.height()}if(this.pageable){if(this.pagerPosition==="top"){g+=this.pagerHeight}}if(this.showtoolbar){g+=this.toolbarHeight}e-=g;if(this.pageable&&this.pagerPosition!=="top"){e-=this.pagerHeight}if(this.showstatusbar){e-=this.statusBarHeightt}if(this.showAggregates){e-=this.aggregatesHeight}if(this.hScrollBar.css("visibility")!="hidden"){e-=20}var n=this.host.coord().top+g;var f=m;var c=e+f;var i=p.coord().top+m-n;i=Math.round(i);var l=i+p.outerHeight();l=Math.round(l);if(Math.round(p.position().top)===0){return this.vScrollBar.jqxScrollBar("setPosition",0)}else{var j=b(this._table.children()[1]).children().length-1;var d=this._getuikey(j);var k=this._getuirow(d);if(k){if(k[0]===p[0]){return this.vScrollBar.jqxScrollBar("setPosition",this.vScrollBar.jqxScrollBar("max"))}}}if(i<f){var h=i-p.height();if(h<0){h=0}return this.vScrollBar.jqxScrollBar("setPosition",h)}if(l>c){return this.vScrollBar.jqxScrollBar("setPosition",4+l-e-m)}},ensureRowVisible:function(c){var d=this._getkey(c);this.ensurerowvisiblebykey(d)},getColumn:function(c){var d=null;if(this.columns.records){b.each(this.columns.records,function(){if(this.datafield==c||this.displayfield==c){d=this;return false}})}return d},_setcolumnproperty:function(e,g,h){if(e==null||g==null||h==null){return null}var d=g;g=g.toLowerCase();var f=this.getColumn(e);if(f==null){return}var i=f[g];f[g]=h;f[d]=h;var c=this.getColumn(e);if(c!=null){c[g]=h}switch(g){case"filteritems":case"text":case"editable":case"resizable":case"draggable":case"hidden":case"hideable":case"renderer":case"cellsrenderer":case"align":case"aggregates":case"cellsalign":case"cellsformat":case"pinned":case"contenttype":case"filterable":case"groupable":case"cellclass":case"cellclassname":case"class":case"width":case"minwidth":case"maxwidth":if(g=="align"){this._rendercolumnheaders();this.refresh()}else{if(g=="text"||g=="class"||g=="hidden"||g=="pinned"||g=="resizable"||g=="renderer"){this._rendercolumnheaders();this.refresh()}else{if(g=="width"||g=="maxwidth"||g=="minwidth"){f._width=null;f._percentagewidth=null;this._updatecolumnwidths();this.refresh()}else{this.refresh()}}}break}},getColumnProperty:function(c,e){if(c==null||e==null){return null}e=e.toLowerCase();var d=this.getColumn(c);return d[e]},setColumnProperty:function(c,d,e){this._setcolumnproperty(c,d,e)},hideColumn:function(c){this._setcolumnproperty(c,"hidden",true)},showColumn:function(c){this._setcolumnproperty(c,"hidden",false)},updateBoundData:function(d,c){this.databind(this.source,d,c)},refresh:function(c){if(c!=true){if(b.jqx.isHidden(this.host)){return}this.vScrollInstance.setPosition(0);this._renderrows();this.updatepagerdetails();this._arrange();if(this._arrangeFilterRow){this._arrangeFilterRow()}this._renderhorizontalscroll();this._showicons();if(this.showAggregates){this._updateaggregates()}this._updateTouchScrolling()}},_updateTouchScrolling:function(){var d=this.that;if(d.isTouchDevice()){var f=b.jqx.mobile.getTouchEventName("touchstart");var e=b.jqx.mobile.getTouchEventName("touchend");var c=b.jqx.mobile.getTouchEventName("touchmove");if(d.gridcontent){d.removeHandler(d.gridcontent,f+".touchScroll");d.removeHandler(d.gridcontent,c+".touchScroll");d.removeHandler(d.gridcontent,e+".touchScroll");d.removeHandler(d.gridcontent,"touchcancel.touchScroll");b.jqx.mobile.touchScroll(d.gridcontent[0],Math.max(d.vScrollInstance.max,d.hScrollInstance.max),function(i,h){if(d.vScrollBar.css("visibility")!="hidden"){var g=d.vScrollInstance.value;d.vScrollInstance.setPosition(g+h)}if(d.hScrollBar.css("visibility")!="hidden"){var g=d.hScrollInstance.value;d.hScrollInstance.setPosition(g+i)}d.scrolled=new Date();d.vScrollInstance.thumbCapture=true},this.element.id,this.hScrollBar,this.vScrollBar)}}},_showicons:function(){if(!this.table){return}for(var e=0;e<this.columns.records.length;e++){var g=this.columns.records[e];b(g.filtericon).hide();b(g.sortasc).hide();b(g.sortdesc).hide();if(this.filterMode!=="simple"){for(var d=0;d<this.dataview.filters.length;d++){var f=this.dataview.filters[d];if(f.datafield===g.displayfield){b(g.filtericon).show();break}}}if(this.sortcolumn!==null){if(this.sortcolumn===g.displayfield){if(this.sortdirection!=null){if(this.sortdirection.ascending){b(g.sortasc).show()}else{b(g.sortdesc).show()}}}}if((g.align!="left"&&g.align!="center"&&!this.rtl)||(this.rtl&&g.align!="right"&&g.align!="center")){var h=b.jqx.isHidden(b(g.filtericon))?0:16;h+=b.jqx.isHidden(b(g.sortasc))?0:16;h+=b.jqx.isHidden(b(g.sortdesc))?0:16;var c=b(b(b(g.element).children()[0]).children()[0]);if(!this.rtl){if(h>0){c.css("margin-right",4+h+"px")}else{c.css("margin-right","4px")}}else{if(h>0){c.css("margin-left",4+h+"px")}else{c.css("margin-left","4px")}}}}},render:function(j){var f="<div style='overflow: hidden; -webkit-appearance: none; outline: none; width:100%; height: 100%; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div id='wrapper"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; align:left; left: 0px; top: 0px; valign:top; position: relative;'><div id='toolbar' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='toppager' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='filter' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='content"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; border: none; padding: 0px; margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='verticalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='horizontalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; border: none; position: absolute;'></div><div id='aggregates' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='statusbar' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='pager' style='z-index: 20; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div></div></div>";this.element.innerText="";this.element.innerHTML=f;this.wrapper=this.host.find("#wrapper"+this.element.id);this.content=this.host.find("#content"+this.element.id);this.content.addClass(this.toTP("jqx-reset"));var h=this.host.find("#verticalScrollBar"+this.element.id);var l=this.host.find("#horizontalScrollBar"+this.element.id);this.bottomRight=this.host.find("#bottomRight").addClass(this.toTP("jqx-grid-bottomright")).addClass(this.toTP("jqx-scrollbar-state-normal"));if(this.vScrollBar){this.vScrollBar.jqxScrollBar("destroy")}if(this.hScrollBar){this.hScrollBar.jqxScrollBar("destroy")}this.vScrollBar=h.jqxScrollBar({vertical:true,rtl:this.rtl,touchMode:this.touchmode,theme:this.theme,_triggervaluechanged:false});this.hScrollBar=l.jqxScrollBar({vertical:false,rtl:this.rtl,touchMode:this.touchmode,theme:this.theme,_triggervaluechanged:false});this.vScrollBar.css("visibility","hidden");this.hScrollBar.css("visibility","hidden");this.vScrollInstance=b.data(this.vScrollBar[0],"jqxScrollBar").instance;this.hScrollInstance=b.data(this.hScrollBar[0],"jqxScrollBar").instance;this.filter=this.host.find("#filter");this.filter[0].id="filter"+this.element.id;this.filter.addClass(this.toTP("jqx-widget-header"));this.filter.addClass(this.toTP("jqx-grid-toolbar"));this.pager=this.host.find("#pager");this.pager[0].id="pager"+this.element.id;this.toolbar=this.host.find("#toolbar");this.toolbar[0].id="toolbar"+this.element.id;this.toolbar.addClass(this.toTP("jqx-grid-toolbar"));this.toolbar.addClass(this.toTP("jqx-widget-header"));this.aggregates=this.host.find("#aggregates");this.aggregates[0].id="aggregates"+this.element.id;this.aggregates.addClass(this.toTP("jqx-grid-statusbar"));this.aggregates.addClass(this.toTP("jqx-widget-header"));this.statusbar=this.host.find("#statusbar");this.statusbar[0].id="statusbar"+this.element.id;this.statusbar.addClass(this.toTP("jqx-grid-statusbar"));this.statusbar.addClass(this.toTP("jqx-widget-header"));this.pager.addClass(this.toTP("jqx-grid-pager"));this.pager.addClass(this.toTP("jqx-widget-header"));this.toppager=this.host.find("#toppager");this.toppager.addClass(this.toTP("jqx-grid-pager-top"));this.toppager.addClass(this.toTP("jqx-widget-header"));this.gridtable=null;if(this.localizestrings){this.localizestrings();if(this.localization!=null){this.localizestrings(this.localization,false)}}this._builddataloadelement();this._cachedcolumns=this.columns;var c=this.source.datafields;if(c==null&&this.source._source){c=this.source._source.datafields}if(c){for(var d=0;d<this.columns.length;d++){var e=this.columns[d];if(e&&e.cellsFormat&&e.cellsFormat.length>2){for(var k=0;k<c.length;k++){if(c[k].name==e.datafield&&!c[k].format){c[k].format=e.cellsFormat;break}}}}}this.databind(this.source);if(this.showtoolbar){this.toolbar.css("visibility","inherit")}if(this.showstatusbar){this.statusbar.css("visibility","inherit")}if(this.showAggregates){this.aggregates.css("visibility","inherit")}this.tableheight=null;var g=this;var i=function(){if(g.content){g.content[0].scrollTop=0;g.content[0].scrollLeft=0}if(g.gridcontent){g.gridcontent[0].scrollLeft=0;g.gridcontent[0].scrollTop=0}};this.removeHandler(this.content,"scroll");this.removeHandler(this.content,"mousedown");this.addHandler(this.content,"scroll",function(m){i();return false});if(j!==true){this._render()}},_render:function(){if(this.dataview==null){return}if(this._loading){return}if(this.columnsHeight!=25||this.columnGroups){this._measureElement("column")}if(this.filterable){this.filter[0].style.visibility="inherit"}else{this.filter[0].style.visibility="hidden"}this.rowinfo=new Array();this._removeHandlers();if(this.columns==null){this.columns=new b.jqx.dataCollection(this.element)}else{this._initializeColumns()}this.host.height(this.height);this.host.width(this.width);b.jqx.utilities.html(this.content,"");this.columnsheader=this.columnsheader||b('<div style="overflow: hidden;"></div>');this.columnsheader.remove();this.columnsheader.addClass(this.toTP("jqx-widget-header"));this.columnsheader.addClass(this.toTP("jqx-grid-header"));if(!this.showHeader){this.columnsheader.css("display","none")}else{if(this.columnsheader){this.columnsheader.css("display","block")}}this.gridcontent=this.gridcontent||b('<div style="width: 100%; overflow: hidden; position: absolute;"></div>');this.gridcontent.remove();var c=this.columnsHeight;c=this._preparecolumnGroups();this.columnsheader.height(c);this.content.append(this.columnsheader);this.content.append(this.gridcontent);this._rendercolumnheaders();this.tableheight=null;this.gridcontent.find("#contenttable"+this.element.id).remove();if(this.table!=null){this.table.remove();this.table=null}this.table=b('<div id="contenttable'+this.element.id+'" style="overflow: hidden; position: relative;"></div>');this.gridcontent.addClass(this.toTP("jqx-grid-content"));this.gridcontent.addClass(this.toTP("jqx-widget-content"));this.gridcontent.append(this.table);this._renderrows();if(this.filterable){this._renderfilter()}if(this.pageable){this._initpager()}this._arrange();if(this.renderStatusBar){this.renderStatusBar(this.statusbar)}if(this.rendertoolbar){this.rendertoolbar(this.toolbar)}if(this.showAggregates){this._updateaggregates()}if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._renderhorizontalscroll();this._showicons();this._addHandlers()},clear:function(){if(this.source){this.source.records=new Array();this.source.hierarchy=new Array()}this.dataview._filteredData=new Array();this.databind(null);this._render()},_initpager:function(){var g=this;var c=this.gridlocalization.pagergotopagestring;var i=this.gridlocalization.pagerrangestring;var d=this.gridlocalization.pagershowrowsstring;var h=(this.pagerHeight-17)/2;this.pagerdiv=this.pagerdiv||b('<div style="width: 100%; height: 100%; position: relative;"></div>');this.toppagerdiv=this.toppagerdiv||b('<div style="width: 100%; height: 100%; position: relative;"></div>');if(!this.pageable){this.pagerdiv.remove();this.toppagerdiv.remove();return}if(!this.pagerRenderer){this.pagerdiv.css("top",h);this.toppagerdiv.css("top",h);var f=function(s,E){var n=this;var r=b('<div style="margin-right: 7px; width: 27px; height: 17px; float: right;"><input style="margin-top: 0px; text-align: right; width: 27px;" type="text"/></div>');var D=b('<div style="float: right; margin-right: 7px;"></div>');var t=b('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var j=b('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var m=b('<div type="button" style="margin-left: 3px; padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var q=b('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var z=b('<div style="margin-right: 7px; float: right;"></div>');var x=b('<div style="margin-right: 7px; float: right;"></div>');var p=b('<div style="padding-bottom: 3px; margin-right: 3px; float: right;"></div>');r.attr("disabled",n.disabled);var A=b('<div id="gridpagerlist" style="margin-top: 0px; margin-right: 7px; float: right;"></div>');A[0].id="gridpagerlist"+E+n.element.id;n.removeHandler(t,"mousedown");n.removeHandler(t,"mouseup");n.removeHandler(t,"click");n.removeHandler(j,"mousedown");n.removeHandler(j,"mouseup");n.removeHandler(j,"click");n.removeHandler(m,"mousedown");n.removeHandler(m,"mouseup");n.removeHandler(m,"click");n.removeHandler(q,"mousedown");n.removeHandler(q,"mouseup");n.removeHandler(q,"click");if(!n.rtl){j.attr("title",n.gridlocalization.pagerpreviousbuttonstring);t.attr("title",n.gridlocalization.pagernextbuttonstring)}else{t.attr("title",n.gridlocalization.pagerpreviousbuttonstring);j.attr("title",n.gridlocalization.pagernextbuttonstring)}if(b.jqx.browser.msie&&b.jqx.browser.version<8){p.css("padding-top","3px")}this["pagerfirst"+E]=m;this["pagerlast"+E]=q;this["pagernext"+E]=t;this["pagerprevious"+E]=j;this["pagergotoinput"+E]=r;this["pagerdetails"+E]=z;this["pagershowrows"+E]=x;this["pagergotolabel"+E]=D;this["pagershowrowscombo"+E]=A;this["pagerbuttons"+E]=p;if(n.pagerMode=="default"){if(!n.rtl){m.attr("title",n.gridlocalization.pagerfirstbuttonstring);q.attr("title",n.gridlocalization.pagerlastbuttonstring)}else{q.attr("title",n.gridlocalization.pagerfirstbuttonstring);m.attr("title",n.gridlocalization.pagerlastbuttonstring)}var v=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");v.addClass(n.toThemeProperty("jqx-icon-arrow-first"));m.wrapInner(v);var o=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");o.addClass(n.toThemeProperty("jqx-icon-arrow-last"));q.wrapInner(o);if(!n.rtl){s.append(m);s.append(j);s.append(p);s.append(t);s.append(q)}else{s.append(q);s.append(t);s.append(p);s.append(j);s.append(m)}q.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});m.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});var C=!n.rtl?"left":"right";p.css("float",C);q.css("float",C);m.css("float",C);t.css("float",C);j.css("float",C);z.css("float",n.rtl?"left":"right");if(n.rtl){z.css("margin-left","7px");z.css("margin-right","0px")}else{z.css("margin-left","0px");z.css("margin-right","7px")}}else{if(!n.rtl){s.append(t);s.append(j)}}t.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});j.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});var k=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");k.addClass(n.toThemeProperty("jqx-icon-arrow-left"));j.wrapInner(k);var l=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");l.addClass(n.toThemeProperty("jqx-icon-arrow-right"));t.wrapInner(l);if(!n.rtl){s.append(z)}if(n.pagerMode!="default"){if(!n.rtl){s.append(A);s.append(x);s.append(r);s.append(D)}else{s.append(D);s.append(r);s.append(x);s.append(A);s.append(z);s.append(t);s.append(j)}var u=n.pageSizeOptions;A.jqxDropDownList({_checkForHiddenParent:false,rtl:n.rtl,disabled:n.disabled,source:u,enableBrowserBoundsDetection:true,keyboardSelection:false,autoDropDownHeight:true,width:44,height:16,theme:n.theme});var B=0;for(var y=0;y<u.length;y++){if(this.pageSize>=u[y]){B=y}}D[0].innerHTML=c;A.jqxDropDownList({selectedIndex:B});var w=r.find("input");w.addClass(n.toThemeProperty("jqx-input"));w.addClass(n.toThemeProperty("jqx-widget-content"));if(this.rtl){w.css("direction","rtl")}var n=this;this.removeHandler(A,"select");this.addHandler(A,"select",function(K){if(K.args){if(n.vScrollInstance){n.vScrollInstance.setPosition(0)}var I=K.args.index;n.pagershowrowscombotop.data().jqxDropDownList.instance.selectIndex(I);n.pagershowrowscombobottom.data().jqxDropDownList.instance.selectIndex(I);n.pagershowrowscombobottom.data().jqxDropDownList.instance.renderSelection("mouse");n.pagershowrowscombotop.data().jqxDropDownList.instance.renderSelection("mouse");var L=n.dataview.pagenum*n.dataview.pagesize;var H=u[I];var J=n.pageSize;n.pageSize=parseInt(H);if(isNaN(n.pageSize)){n.pageSize=10}if(H>=100){n.pagershowrowscombotop.jqxDropDownList({width:55});n.pagershowrowscombobottom.jqxDropDownList({width:55})}else{n.pagershowrowscombotop.jqxDropDownList({width:44});n.pagershowrowscombobottom.jqxDropDownList({width:44})}n.dataview.pagesize=n.pageSize;var G=Math.floor(L/n.dataview.pagesize);if(G!==n.dataview.pagenum||parseInt(H)!==parseInt(J)){n._raiseEvent("pageSizeChanged",{pagenum:G,oldpageSize:J,pageSize:n.dataview.pagesize});var F=n.goToPage(G);if(!F){if(!n.serverProcessing){n.refresh()}else{n.updateBoundData("pager")}}}}});var r=r.find("input");r.addClass(n.toThemeProperty("jqx-grid-pager-input"));r.addClass(n.toThemeProperty("jqx-rc-all"));this.removeHandler(r,"keydown");this.removeHandler(r,"change");n.addHandler(r,"keydown",function(F){if(F.keyCode>=65&&F.keyCode<=90){return false}if(F.keyCode=="13"){var G=r.val();G=parseInt(G);if(!isNaN(G)){n.goToPage(G-1)}return false}});n.addHandler(r,"change",function(){var F=r.val();F=parseInt(F);if(!isNaN(F)){n.goToPage(F-1)}})}x[0].innerHTML=d;n.addHandler(t,"mouseenter",function(){l.addClass(n.toThemeProperty("jqx-icon-arrow-right-hover"))});n.addHandler(j,"mouseenter",function(){k.addClass(n.toThemeProperty("jqx-icon-arrow-left-hover"))});n.addHandler(t,"mouseleave",function(){l.removeClass(n.toThemeProperty("jqx-icon-arrow-right-hover"))});n.addHandler(j,"mouseleave",function(){k.removeClass(n.toThemeProperty("jqx-icon-arrow-left-hover"))});n.addHandler(t,"mousedown",function(){l.addClass(n.toThemeProperty("jqx-icon-arrow-right-selected"))});n.addHandler(t,"mouseup",function(){l.removeClass(n.toThemeProperty("jqx-icon-arrow-right-selected"))});n.addHandler(j,"mousedown",function(){k.addClass(n.toThemeProperty("jqx-icon-arrow-left-selected"))});n.addHandler(j,"mouseup",function(){k.removeClass(n.toThemeProperty("jqx-icon-arrow-left-selected"))});if(n.pagerMode==="default"){n.addHandler(q,"mouseenter",function(){o.addClass(n.toThemeProperty("jqx-icon-arrow-last-hover"))});n.addHandler(m,"mouseenter",function(){v.addClass(n.toThemeProperty("jqx-icon-arrow-first-hover"))});n.addHandler(q,"mouseleave",function(){o.removeClass(n.toThemeProperty("jqx-icon-arrow-last-hover"))});n.addHandler(m,"mouseleave",function(){v.removeClass(n.toThemeProperty("jqx-icon-arrow-first-hover"))});n.addHandler(q,"mousedown",function(){o.addClass(n.toThemeProperty("jqx-icon-arrow-last-selected"))});n.addHandler(m,"mousedown",function(){v.addClass(n.toThemeProperty("jqx-icon-arrow-first-selected"))});n.addHandler(q,"mouseup",function(){o.removeClass(n.toThemeProperty("jqx-icon-arrow-last-selected"))});n.addHandler(m,"mouseup",function(){v.removeClass(n.toThemeProperty("jqx-icon-arrow-first-selected"))})}n.addHandler(b(document),"mouseup.pagerbuttons"+E+this.element.id,function(){l.removeClass(n.toThemeProperty("jqx-icon-arrow-right-selected"));k.removeClass(n.toThemeProperty("jqx-icon-arrow-left-selected"));if(o){o.removeClass(n.toThemeProperty("jqx-icon-arrow-last-selected"));v.removeClass(n.toThemeProperty("jqx-icon-arrow-first-selected"))}});n.addHandler(t,"click",function(){if(!t.jqxButton("disabled")){if(!n.rtl){n.goToNextPage()}else{n.goToPrevPage()}}});n.addHandler(j,"click",function(){if(!j.jqxButton("disabled")){if(!n.rtl){n.goToPrevPage()}else{n.goToNextPage()}}});if(this.pagerMode==="default"){n.addHandler(m,"click",function(){if(!m.jqxButton("disabled")){if(!n.rtl){n.goToPage(0)}else{var G=n.dataview.totalrecords;var F=Math.ceil(G/n.pageSize);n.goToPage(F-1)}}});n.addHandler(q,"click",function(){if(!q.jqxButton("disabled")){if(!n.rtl){var G=n.dataview.totalrecords;var F=Math.ceil(G/n.pageSize);n.goToPage(F-1)}else{n.goToPage(0)}}})}};this.pagerdiv.children().remove();this.toppagerdiv.children().remove();f.call(this,this.pagerdiv,"bottom");f.call(this,this.toppagerdiv,"top");this.pager.append(this.pagerdiv);this.toppager.append(this.toppagerdiv);this.updatepagerdetails()}else{this.pagerdiv.children().remove();this.toppager.children().remove();var e=this.pagerRenderer();if(e!=null){this.pagerdiv.append(b(e))}this.pager.append(this.pagerdiv);var e=this.pagerRenderer();if(e!=null){this.toppagerdiv.append(b(e))}this.toppager.append(this.toppagerdiv)}},_updatepagertheme:function(){},goToPage:function(f,h){if(this._loading){return false}if(this.editKey!=undefined){if(this.editSettings.saveOnPageChange){var e=this.endroweditbykey(this.editKey);if(!e){return false}}else{return false}}if(f==null||f==undefined){f=0}if(f==-1){f=0}if(f<0){return false}var d=this.dataview.totalrecords;var g=this.dataview.pagenum;var c=Math.ceil(d/this.pageSize);if(f>=c){if(this.dataview.totalrecords==0){this.dataview.pagenum=0;this.updatepagerdetails()}if(f>0){f=c-1}}if(this.dataview.pagenum!=f){if(this.pageable){this.dataview.pagenum=f;this._raiseEvent("pageChanged",{pagenum:f,oldpagenum:g,pageSize:this.dataview.pagesize})}if(!this.serverProcessing){this.refresh();if(h){if(b.isFunction(h)){h()}}}else{this.updateBoundData("pager",h)}return true}return false},goToPrevPage:function(e){if(this.dataview.pagenum>0){return this.goToPage(this.dataview.pagenum-1,e)}else{if(this.pagerMode!="default"&&this.pagerMode!="advanced"){var d=this.dataview.totalrecords;var c=Math.ceil(d/this.pageSize);return this.goToPage(c-1,e)}}return false},goToNextPage:function(e){var d=this.dataview.totalrecords;if(this.summaryrows){d+=this.summaryrows.length}var c=Math.ceil(d/this.pageSize);if(this.dataview.pagenum<c-1){return this.goToPage(this.dataview.pagenum+1,e)}else{if(this.pagerMode!="default"&&this.pagerMode!="advanced"){return this.goToPage(0,e)}}return false},updatepagerdetails:function(){if(!this.pageable){return}var j=this;if(!this.serverProcessing){if(this.source.hierarchy){var m=j._names();var g=0;var r=function(y,w){for(var x=0;x<w.length;x++){if(j.dataview.filters.length==0){w[x]._visible=true}if(w[x]._visible!==false){g++}if(j.treeGrid&&j.treeGrid.pageSizeMode=="root"){continue}if(w[x].records&&(w[x][m.expanded]||w[x][m.leaf])){if(w[x]._visible!==false){r(y+1,w[x].records);if(this.treeGrid&&b(this.treeGrid).jqxTreeGrid("showSubAggregates")){if(y!=0){g--}}}}}};r(0,this.dataview.rows);this.dataview.totalrecords=g}else{this.dataview.totalrecords=this.dataview.rows.length}}var d=this.dataview.pagenum*this.pageSize;var u=(this.dataview.pagenum+1)*this.pageSize;if(u>=this.dataview.totalrecords){u=this.dataview.totalrecords}var v=this.dataview.totalrecords;d++;var t=Math.ceil(v/this.dataview.pagesize);if(t>=1){t--}t++;if(this.pageSizeMode=="root"){t=Math.ceil(this.rootRecordsLength/this.dataview.pagesize);if(t>=1){t--}t++;v=this.rootRecordsLength;this.dataview.totalrecords=this.rootRecordsLength}if(this.pagerMode!="default"){if(this["pagergotoinputbottom"]){var k=this["pagergotoinputbottom"].find("input");k.val(this.dataview.pagenum+1);k.attr("title","1 - "+t);k=this["pagergotoinputtop"].find("input");k.val(this.dataview.pagenum+1);k.attr("title","1 - "+t)}}else{var o="";var n=this.pagerButtonsCount;if(n==0||!n){n=5}var s=0;if(this.rtl){s=n-1}while((this.rtl&&s>=0)||(!this.rtl&&s<n)){var e=1+s;var p=this.dataview.pagenum/n;var f=Math.floor(p);e+=f*n;var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(e>t&&!this.rtl){break}else{if(this.rtl&&e>t){s--;continue}}if(!this.rtl){if(s==0&&e>n){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(-1+e)+"'>...</a>"}}if(this.dataview.pagenum===e-1){c+=" "+this.toTP("jqx-fill-state-pressed")}if(!this.rtl){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+e+"'>"+e+"</a>";if(s===n-1){var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(t>=1+e){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(1+e)+"'>...</a>"}}}else{if(s===n-1){var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(t>=1+e){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(1+e)+"'>...</a>"}}if(this.dataview.pagenum===e-1){c+=" "+this.toTP("jqx-fill-state-pressed")}o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+e+"'>"+e+"</a>"}if(this.rtl){var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(s==0&&e>n){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(-1+e)+"'>...</a>"}}if(!this.rtl){s++}else{s--}}if(!this["pagerbuttonsbottom"]){return}var h=this["pagerbuttonsbottom"].find("a");this.removeHandler(h,"click");this.removeHandler(h,"mouseenter");this.removeHandler(h,"mouseleave");var h=this["pagerbuttonstop"].find("a");this.removeHandler(h,"click");this.removeHandler(h,"mouseenter");this.removeHandler(h,"mouseleave");this["pagerbuttonsbottom"][0].innerHTML=o;this["pagerbuttonstop"][0].innerHTML=o;if(this.disabled){this.host.find(".jqx-grid-pager-number").css("cursor","default")}var q=function(){h.click(function(i){if(j.disabled){return}var w=b(i.target).attr("data-page");j.goToPage(parseInt(w)-1)});h.mouseenter(function(i){if(j.disabled){return}b(i.target).addClass(j.toTP("jqx-fill-state-hover"))});h.mouseleave(function(i){if(j.disabled){return}b(i.target).removeClass(j.toTP("jqx-fill-state-hover"))})};if(this.pagerPosition==="both"||this.pagerPosition==="bottom"){var h=this["pagerbuttonsbottom"].find("a");q(h)}if(this.pagerPosition==="both"||this.pagerPosition==="top"){var h=this["pagerbuttonstop"].find("a");q(h)}}if(u==0&&u<d){d=0}if(this["pagerdetailsbottom"]){if(!this.rtl){this["pagerdetailsbottom"][0].innerHTML=d+"-"+u+this.gridlocalization.pagerrangestring+v;this["pagerdetailstop"][0].innerHTML=d+"-"+u+this.gridlocalization.pagerrangestring+v}else{this["pagerdetailsbottom"][0].innerHTML=v+this.gridlocalization.pagerrangestring+u+"-"+d;this["pagerdetailstop"][0].innerHTML=v+this.gridlocalization.pagerrangestring+u+"-"+d}}if(this.pagerMode=="default"){var l=this["pagerbuttonsbottom"].width()+b(this["pagerdetailsbottom"]).width()+160;this.pagerdiv.css("min-width",l);this.toppagerdiv.css("min-width",l)}if(d>u){this.goToPrevPage()}},_preparecolumnGroups:function(){var o=this.columnsHeight;if(this.columnGroups){this.columnshierarchy=new Array();if(this.columnGroups.length){var m=this;for(var g=0;g<this.columnGroups.length;g++){this.columnGroups[g].parent=null;this.columnGroups[g].groups=null}for(var g=0;g<this.columns.records.length;g++){this.columns.records[g].parent=null;this.columns.records[g].groups=null}var n=function(j){for(var t=0;t<m.columnGroups.length;t++){var u=m.columnGroups[t];if(u.name===j){return u}}return null};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];if(!p.groups){p.groups=null}if(p.parentGroup){p.parentgroup=p.parentGroup}if(p.parentgroup){var r=n(p.parentgroup);if(r){p.parent=r;if(!r.groups){r.groups=new Array()}if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];if(p.columngroup){var r=n(p.columngroup);if(r){if(!r.groups){r.groups=new Array()}p.parent=r;if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}var q=0;for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];var d=p;p.level=0;while(d.parent){d=d.parent;p.level++}var d=p;var c=p.level;q=Math.max(q,p.level);while(d.parent){d=d.parent;if(d){d.level=--c}}}var l=function(x){var w=new Array();if(x.columngroup){w.push(x)}if(!x.groups){return new Array()}for(var v=0;v<x.groups.length;v++){if(x.groups[v].columngroup){w.push(x.groups[v])}else{if(x.groups[v].groups){var u=l(x.groups[v]);for(var t=0;t<u.length;t++){w.push(u[t])}}}}return w};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];var e=l(p);p.columns=e;var h=new Array();var s=0;for(var f=0;f<e.length;f++){h.push(this.columns.records.indexOf(e[f]));if(e[f].pinned){s++}}if(s!=0){throw new Error("jqxDataTable: Column Groups initialization Error. Please, check the initialization of the jqxDataTable's columns array. The columns in a column group cannot be pinned.")}h.sort(function(j,i){j=parseInt(j);i=parseInt(i);if(j<i){return -1}if(j>i){return 1}return 0});for(var k=1;k<h.length;k++){if(h[k]!=h[k-1]+1){throw new Error("jqxDataTable: Column Groups initialization Error. Please, check the initialization of the jqxDataTable's columns array. The columns in a column group are expected to be siblings in the columns array.");this.host.remove()}}}}this.columnGroupslevel=1+q;o=this.columnGroupslevel*this.columnsHeight}return o},wheel:function(e,d){if(d.autoheight&&d.hScrollBar.css("visibility")=="hidden"){e.returnValue=true;return true}var f=0;if(!e){e=window.event}if(e.originalEvent&&e.originalEvent.wheelDelta){e.wheelDelta=e.originalEvent.wheelDelta}if(e.wheelDelta){f=e.wheelDelta/120}else{if(e.detail){f=-e.detail/3}}if(f){var c=d._handleDelta(f);if(c){if(e.preventDefault){e.preventDefault()}if(e.originalEvent!=null){e.originalEvent.mouseHandled=true}if(e.stopPropagation!=undefined){e.stopPropagation()}}if(c){c=false;e.returnValue=c;return c}else{return false}}if(e.preventDefault){e.preventDefault()}e.returnValue=false},_handleDelta:function(e){if(this.vScrollBar.css("visibility")!="hidden"){var d=this.vScrollInstance.value;if(e<0){this.vScrollInstance.setPosition(this.vScrollInstance.value+2*10)}else{this.vScrollInstance.setPosition(this.vScrollInstance.value-2*10)}var c=this.vScrollInstance.value;if(d!=c){return true}}else{if(this.hScrollBar.css("visibility")!="hidden"){var d=this.hScrollInstance.value;if(e>0){if(this.hScrollInstance.value>2*10){this.hScrollInstance.setPosition(this.hScrollInstance.value-2*10)}else{this.hScrollInstance.setPosition(0)}}else{if(this.hScrollInstance.value<this.hScrollInstance.max){this.hScrollInstance.setPosition(this.hScrollInstance.value+2*10)}else{this.hScrollInstance.setPosition(this.hScrollInstance.max)}}var c=this.hScrollInstance.value;if(d!=c){return true}}}return false},_removeHandlers:function(){this.removeHandler(this.host,"focus");this.removeHandler(b(window),"jqxReady."+this.element.id);if(this._mousewheelfunc){this.removeHandler(this.host,"mousewheel",this._mousewheelfunc)}var c="mousedown";if(this.isTouchDevice()){c=b.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(this.host,"dragstart."+this.element.id);this.removeHandler(this.host,"keydown");if(this.table){this.removeHandler(this.table,"mouseleave");this.removeHandler(this.table,"mousemove");this.removeHandler(this.table,c);this.removeHandler(this.table,"selectstart."+this.element.id);if(b.jqx.browser.msie&&b.jqx.browser.version<9){this.removeHandler(this.table,"dblclick")}}},_addHandlers:function(){var e=this;this._mousewheelfunc=this._mousewheelfunc||function(h){e.wheel(h,e);return false};this.addHandler(this.host,"dragstart."+this.element.id,function(h){return false});this.addHandler(this.table,"selectstart."+this.element.id,function(h){if(e.enableBrowserSelection){return true}if(e.filterable){if(b(h.target).ischildof(e.filterrow)){return true}}if(e.rowDetails){if(b(h.target).parents("[data-role=details]").length>0){return true}}if(undefined==e.editKey){return false}});this.addHandler(b(window),"jqxReady."+this.element.id,function(){e._updatecolumnwidths();e.refresh()});if(this.editable){this.addHandler(b(document),"mousedown.gridedit"+this.element.id,function(j){if(e.editable&&e.editSettings.saveOnBlur){if(e.editKey!=null){if(!e.vScrollInstance.isScrolling()&&!e.vScrollInstance.isScrolling()){var r=e.host.coord();var o=e.host.width();var k=e.host.height();var t=false;var h=false;var s=false;if(j.pageY<r.top||j.pageY>r.top+k){t=true;h=true}if(j.pageX<r.left||j.pageX>r.left+o){t=true;s=true}if(t){var l=function(x){var w=b(x.children()[0]).data();if(w&&!w.jqxWidget){w=x.data()}if(!w){w=x.data()}if(w.jqxWidget&&w.jqxWidget.container&&w.jqxWidget.container[0].style.display=="block"){var i=w.jqxWidget;var y=i.container.coord().top;var v=i.container.coord().top+i.container.height();if(h&&(j.pageY<y||j.pageY>v)){t=true;i.close();return true}else{return false}}};var q=e._editors;if(q){for(var m=0;m<q.length;m++){var n=q[m].editor;var u=l(n);var p=n.attr("aria-owns");if(p){if(p==document.activeElement.id){return true}if(b(document.activeElement).ischildof(b("#"+p))){return true}}else{p=n.children().attr("aria-owns");if(p){if(p==document.activeElement.id){return true}if(b(document.activeElement).ischildof(b("#"+p))){return true}}}if(u===false){return}}}}if(t){e.endroweditbykey(e.editKey)}}}}})}this.removeHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"focus",function(h){if(h.preventDefault){}});this.vScrollInstance.valueChanged=function(h){if(e._timer){clearTimeout(e._timer)}e._timer=setTimeout(function(){if(e.table){e.table[0].style.top=0-e.vScrollInstance.value+"px"}},5)};this.hScrollInstance.valueChanged=function(h){if(e._timer){clearTimeout(e._timer)}e._timer=setTimeout(function(){if(e.table){e._renderhorizontalscroll()}},5)};var d="mousedown";if(this.isTouchDevice()){d=b.jqx.mobile.getTouchEventName("touchend");if(b.jqx.browser.msie&&b.jqx.browser.version<10){d="mousedown"}}var g=function(r,q){var l=null;var m=e._table.coord();var t=m.top;var z=m.left;var A=e._table[0].rows;for(var n=0;n<A.length;n++){var w=A[n];var v=w.cells;for(var o=0;o<v.length;o++){var s=v[o];var k=s.offsetLeft+z;var p=s.offsetTop+t;var h=s.offsetWidth;var u=s.offsetHeight;if(h===0||u===0){continue}if(p<=q&&q<p+u){if(k<=r&&r<k+h){l=s;break}}else{break}}}return l};var c=function(){if(e.hoveredRow){var i=e.hoveredRow[0].cells;var h=function(l){for(var m=0;m<l.length;m++){var k=l[m];var n=k.className;n=n.replace(" "+e.toTP("jqx-fill-state-hover"),"");n=n.replace(" "+e.toTP("jqx-grid-cell-hover"),"");k.className=n}};h(i);if(e._pinnedTable&&i.length>0){var j=e._pinnedTable[0].rows[e.hoveredRow[0].rowIndex].cells;h(j)}}e.hoveredRow=null};this.addHandler(this.table,"mouseleave",function(h){c();if(e.wrapper){e.wrapper.parent().removeAttr("tabindex",0);e.wrapper.removeAttr("tabindex",1);e.content.removeAttr("tabindex",2)}});var f=function(n){if(!e.enableHover){return true}e.hoveredRow=n;if(!n){return true}var k=n[0].cells;var m=e.rowDetails&&!e.treeGrid;var p=m&&!e.treeGrid?1:0;var j=0;if(p>0&&e.rtl){p=0;j=1}for(var l=p;l<k.length-j;l++){var h=k[l];h.className+=" "+e.toTP("jqx-fill-state-hover")+" "+e.toTP("jqx-grid-cell-hover")}if(e._pinnedTable){if(e._pinnedTable[0].rows.length){var o=e._pinnedTable[0].rows[e.hoveredRow[0].rowIndex].cells;for(var l=p;l<o.length-j;l++){var h=o[l];h.className+=" "+e.toTP("jqx-fill-state-hover")+" "+e.toTP("jqx-grid-cell-hover")}}}};if(e.isTouchDevice()){e.enableHover=false}this.addHandler(this.table,"mousemove",function(i){var h=i.pageX;var l=i.pageY;if(e.disabled){return true}if(!e.enableHover){return true}if(e.hScrollInstance.isScrolling()||e.vScrollInstance.isScrolling()){return true}var k=g(h,l);if(!k){return true}var j=b(k).parent();c();if(e.rowDetails&&e.treeGrid){if(j.attr("data-role")=="row-details"){return true}}if(e.renderedRecords&&e.renderedRecords.length===0){return true}if(e.editKey!=null){if(e.editKey===j.attr("data-key")){return true}}f(j);return true});this.addHandler(this.host,"keydown",function(h){return e._handleKey(h)});if(b.jqx.browser.msie&&b.jqx.browser.version<9){this.addHandler(this.table,"dblclick",function(h){e.table.trigger("mousedown",h)})}this.addHandler(this.table,d,function(A){var C=A.target;var p=null;if(e.disabled){return true}var h=e.table.coord();var r=A.pageX;var q=A.pageY;if(b.jqx.browser.msie&&b.jqx.browser.version<9){if(arguments&&arguments.length==2){r=arguments[1].pageX;q=arguments[1].pageY}}if(e.isTouchDevice()){var D=b.jqx.position(A);r=D.left;q=D.top;if(isNaN(r)||isNaN(q)){var D=b.jqx.position(A.originalEvent);r=D.left;q=D.top}}p=g(r,q);var o=b(p).parent();var E=o.attr("data-key");if(e.rowDetails&&e.treeGrid){if(o.attr("data-role")=="row-details"){return true}}var u=function(){if(!e.enableBrowserSelection){if(A.preventDefault){A.preventDefault()}A.stopPropagation()}e.host.focus()};if(E!==undefined){var l=b(p).index();var j=e.columns.records[l];if(E==e.editKey){if(e.editSettings.editSingleCell){if(e.clickedTD==p){return true}else{if(e.editKey!=null&&e.editSettings.saveOnSelectionChange){var t=e.endroweditbykey(e.editKey);if(!t){return true}}}}else{return true}}else{if(e.editKey!=null&&e.editSettings.saveOnSelectionChange){var t=e.endroweditbykey(e.editKey);if(!t){return true}}}e.clickedTD=p;var k=e.rowinfo[E];if(k&&k.group){return true}var z=false;if(k){var B=e.getrowdisplayindex(k.row);var s=e.getrowindex(k.row);e._raiseEvent("rowClick",{index:B,boundIndex:s,key:E,row:k.row,originalEvent:A,dataField:j.datafield});var n=new Date().getTime();var v=300;if(!e.clickTime){e.clickTime=new Date()}if(e._lastSelectedKey==E&&(n-e.clickTime.getTime()<v)){e._raiseEvent("rowDoubleClick",{index:B,boundIndex:s,key:E,row:k.row,originalEvent:A,dataField:j.datafield});z=true;if(A.preventDefault){A.preventDefault()}}}e.clickTime=new Date();if(p.className.indexOf("jqx-grid-group")>=0){if(!k.expanded){e.showdetailsbykey(E)}else{e.hidedetailsbykey(E)}}else{if(A.target&&A.target.className.indexOf&&A.target.className.indexOf("jqx-grid-group")>=0&&e.treeGrid){if(!k.expanded){e.treeGrid.expandRow(E)}else{e.treeGrid.collapseRow(E)}f(e._getuirow(E));if(A.stopPropagation){A.stopPropagation()}if(A.preventDefault){A.preventDefault()}}else{if(A.target&&A.target.className.indexOf&&A.target.className.indexOf("checkbox")>=0&&e.treeGrid){if(!k.checked){e.treeGrid.checkRow(E)}else{e.treeGrid.uncheckRow(E)}f(e._getuirow(E));if(A.stopPropagation){A.stopPropagation()}}else{var l=b(p).index();var j=e.columns.records[l];if(A.stopPropagation){A.stopPropagation()}if(e.editable&&e.editKey==null){if(e._lastSelectedKey==E&&e.editSettings.editOnDoubleClick&&z){var t=e.beginroweditbykey(E,j);return true}}if(e.isTouchDevice()){if(e.scrolled&&new Date()-e.scrolled<500){if(!e.enableBrowserSelection){if(A.preventDefault){A.preventDefault()}}return false}}if(e.selectionMode==="singlerow"&&e.selectionMode!=="custom"){e.selectrowbykey(E,"mouse",false);e._lastSelectedKey=E;e._updateSelection();if(A.preventDefault){A.preventDefault()}u();return true}else{if(e.selectionMode!=="custom"){if(!A.ctrlKey&&!A.metaKey){e.clearSelection(false)}if(A.shiftKey){if(e._lastSelectedKey){var k=e.rowinfo[e._lastSelectedKey];e._doSelection(e._lastSelectedKey,true,false);var i=b(e._table.children()[1]).children(("[data-key="+e._lastSelectedKey+"]"));var m=i.index();var w=o.index();e._selectRange(w,m);e.selectrowbykey(E,"mouse",false);e._updateSelection();if(A.preventDefault){A.preventDefault()}u();return true}}}e._lastSelectedKey=E;e.clickTime=new Date();if(e.selectionMode!=="custom"){if(k){if(k.selected){e.unselectrowbykey(E,"mouse",false)}else{e.selectrowbykey(E,"mouse",false)}u()}}else{return true}e._updateSelection();if(!e.enableBrowserSelection){if(A.preventDefault){A.preventDefault()}}return true}}}}}})},_updateSelection:function(){var l=this;var r=b(l._table.children()[1]).children();var n=l._pinnedTable?b(l._pinnedTable.children()[1]).children():null;var e=l.rowDetails&&!l.treeGrid;var d=e?1:0;var f=0;if(d>0&&l.rtl){d=0;f=1}for(var h=0;h<r.length;h++){var q=r[h].cells;if(n){var c=n[h].cells}var p=null;if(r[h].getAttribute){p=r[h].getAttribute("data-key")}if(l.rowinfo[p]&&l.selectionMode!=="none"){if(l.rowinfo[p].selected){for(var g=d;g<q.length-f;g++){var o=q[g];b(o).addClass(l.toTP("jqx-grid-cell-selected")+" "+l.toTP("jqx-fill-state-pressed"));if(c){b(c[g]).addClass(l.toTP("jqx-grid-cell-selected")+" "+l.toTP("jqx-fill-state-pressed"))}}}else{for(var g=d;g<q.length-f;g++){var o=q[g];if(c){var k=c[g]}var m=o.className;m=m.replace(" jqx-fill-state-pressed","");m=m.replace(" jqx-fill-state-pressed-"+l.theme,"");m=m.replace(" jqx-grid-cell-selected","");m=m.replace(" jqx-grid-cell-selected-"+l.theme,"");o.className=m;if(k){k.className=m}}}}}},_selectRange:function(f,e){var c=b(b(this._table.children()[1]).children()[e]);var j=this;if(f>e){var h=e;var d=c;while(h<f){var d=d.next();var g=d.attr("data-key");j._doSelection(g,true,false);h++}}else{if(f<e){var h=e;var d=c;while(h>f){var d=d.prev();var g=d.attr("data-key");this._doSelection(g,true,false);h--}}}},_getuikey:function(d,g){var f=null;var e=b(this._table.children()[1]).children();f=b(e[d]).attr("data-key");if(b(e[d]).attr("data-role")){var c=b(e[d]);if(g=="next"){while(c){c=c.next();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}else{if(g=="prev"){while(c){c=c.prev();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}}return null}return f},getRows:function(){return this.source.records},getView:function(){var d=this;var e=this._names();var f=new Array();var c=function(k,h){if(!h){return}for(var j=0;j<h.length;j++){if(!h[j]){continue}if(h[j]._visible!==false){var g=b.extend({},h[j]);k.push(g);if(h[j][e.expanded]){g.records=new Array();c(g.records,h[j].records)}else{if(d.dataview.filters.length>0){g.records=new Array();c(g.records,h[j].records)}}}}};c(f,this.dataViewRecords);return f},getKeys:function(){var d=new Array();var e=this.source.records;for(var c=0;c<e.length;c++){d.push(e[c].uid)}return d},getKey:function(c){var d=this.getRows();if(d){return d[c].uid}else{return -1}},_getkey:function(e){if(this._loading){throw new Error("jqxDataTable: "+this.loadingErrorMessage);return false}var f=null;var d=function(){var l=b(this._table.children()[1]).children();var k=null;var n=0;if(this.pageable){n-=this.dataview.pagenum*this.dataview.pagesize}if(this.groups.length>0){var h=0;for(var j=0;j<l.length;j++){var o=b(l[j]);var m=o.children()[0].getAttribute("colspan");if(m>0){continue}if(h===n+e){k=o.attr("data-key");return k}h++}return k}if(this.rowDetails){var h=0;for(var j=0;j<l.length;j++){if(h===e+n){k=b(l[j]).attr("data-key");return k}if(j%2==1){h++}}}else{k=b(l[n+e]).attr("data-key")}return k};f=d.call(this);if(f==null){if(this.pageable){var c=Math.floor(e/this.dataview.pagesize);if(this.dataview.pagenum!=c){var g=this.getRows()[e];if(g&&g.uid!=null){return g.uid}else{if(isNaN(c)){return null}this.goToPage(c);f=d.call(this)}}}}return f},_getuirow:function(g){try{var c=b(this._table.children()[1]).children(("[data-key="+g+"]"));if(c.length>0){return c}}catch(e){var d=b(this._table.children()[1]).children();for(var f=0;f<d.length;f++){var j=d[f];var h=j.getAttribute("data-key");if(g==h){return b(j)}}return null}return null},_getpinneduirow:function(g){if(!this._pinnedTable){return null}try{var c=b(this._pinnedTable.children()[1]).children(("[data-key="+g+"]"));if(c.length>0){return c}}catch(e){var d=b(this._pinnedTable.children()[1]).children();for(var f=0;f<d.length;f++){var j=d[f];var h=j.getAttribute("data-key");if(g==h){return b(j)}}return null}return null},_names:function(){var d={leaf:"leaf",parent:"parent",expanded:"expanded",checked:"checked",selected:"selected",level:"level",icon:"icon",data:"data"};if(!this.source||(this.source&&!this.source._source.hierarchy)){return d}var c=this.source._source.hierarchy.reservedNames;if(!c){return d}return c},_getMatches:function(f,g){if(f==undefined||f.length==0){return -1}var c=this.renderedRecords;if(g!=undefined){c=c.slice(g)}var e=0;if(this.rowDetails&&!this.treeGrid){e++}if(e<this.columns.records.length){var d=this.columns.records[e].datafield}else{new Array()}var h=new Array();b.each(c,function(k){var l=this[d];if(!l){l=""}var j=b.jqx.string.startsWithIgnoreCase(l.toString(),f);if(j){h.push(this.uid)}});return h},_handleKey:function(X){if(this._loading){return true}if(b(X.target).ischildof(this.filter)){return true}if(b(X.target).ischildof(this.toolbar)){return true}if(b(X.target).ischildof(this.statusbar)){return true}var T=this._names();var I=this;var s=X.charCode?X.charCode:X.keyCode?X.keyCode:0;var n=this._lastSelectedKey;var V=this.rowinfo[n];var v=this._getuirow(n);var x=X.shiftKey&&this.selectionMode!="singlerow";var Q=X.ctrlKey||X.metaKey;if(!v){return}if(this.handleKeyboardNavigation){var u=this.handleKeyboardNavigation(s);if(u){return true}}if(this.editable&&this.editKey==undefined&&s===113&&this.editSettings.editOnF2){this.beginroweditbykey(v.attr("data-key"))}if(this.editKey==undefined){if(!Q&&!x&&this.incrementalSearch&&(!(s>=33&&s<=40))){var z=-1;if(!this._searchString){this._searchString=""}if((s==8||s==46)&&this._searchString.length>=1){this._searchString=this._searchString.substr(0,this._searchString.length-1)}var e=String.fromCharCode(s);var H=(!isNaN(parseInt(e)));var J=false;if((s>=65&&s<=97)||H||s==8||s==32||s==46){if(!X.shiftKey){e=e.toLocaleLowerCase()}if(s!=8&&s!=32&&s!=46){if(!(this._searchString.length>0&&this._searchString.substr(0,1)==e)){this._searchString+=e}}if(s==32){this._searchString+=" "}this._searchTime=new Date();var n=this.getSelection();if(n.length>=1){var t=n[0].uid;var C=-1;for(var S=0;S<this.renderedRecords.length;S++){if(this.renderedRecords[S].uid==t){C=S;break}}var B=this._getMatches(this._searchString,C);if(B.length==0||(B.length>0&&B[0]==t)){var B=this._getMatches(this._searchString)}}else{var B=this._getMatches(this._searchString)}if(B.length>0){var n=this.getSelection();if(n.length>=1){var c=B.indexOf(n[0].uid);if(c==-1){this.clearSelection(false);this.selectrowbykey(B[0])}else{var h=c+1;if(h>=B.length){h=0}this.clearSelection(false);this.selectrowbykey(B[h])}}else{this.clearSelection(false);this.selectrowbykey(B[0])}this._lastSearchString=this._searchString}}if(this._searchTimer!=undefined){clearTimeout(this._searchTimer)}if(s==27||s==13){this._searchString="";this._lastSearchString=""}this._searchTimer=setTimeout(function(){I._searchString="";I._lastSearchString=""},500);if(z>=0){return}if(J){return false}}}if(this.editKey!=undefined){if(s===27&&this.editSettings.cancelOnEsc){this.endroweditbykey(this.editKey,true)}else{if(s===13&&this.editSettings.saveOnEnter){if(X.target&&X.target.nodeName.toLowerCase()!="div"&&X.target.nodeName.toLowerCase()!="input"){return true}this.endroweditbykey(this.editKey,false)}else{if(this.editSettings.editSingleCell){if(this.editColumn){var P=this.columns.records.indexOf(this.editColumn);if(s==9&&P<this.columns.records.length-1&&!X.shiftKey){var M=this.editKey;var y=null;for(var S=P+1;S<this.columns.records.length;S++){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){y=this.columns.records[S];break}}if(y){this.endroweditbykey(this.editKey,false);this.beginroweditbykey(M,y)}}else{if(s==9&&X.shiftKey&&P>0){var M=this.editKey;var E=null;for(var S=P-1;S>=0;S--){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){E=this.columns.records[S];break}}if(E){this.endroweditbykey(this.editKey,false);this.beginroweditbykey(M,E)}}}if(s==9){var o=this.rowinfo[this.editKey];var C=this.getrowindex(o);var v=this._getuirow(this.editKey);if(!X.shiftKey&&!y){var N=null;for(var S=0;S<this.columns.records.length;S++){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){N=this.columns.records[S];break}}if(N){while(v){v=v.next();if(v){var D=v.attr("data-role");if(!D){var F=v.attr("data-key");break}}}if(F){this.clearSelection(false);this._lastSelectedKey=F;var o=this.rowsByKey[F];var C=this.getrowindex(o);var L=this.getrowdisplayindex(o);this._raiseEvent("rowSelect",{key:F,index:L,boundIndex:C,row:this.rowsByKey[F]});var q=this.endroweditbykey(this.editKey,false);if(q){this._doSelection(F,true,true);this.beginroweditbykey(F,N)}else{this.beginroweditbykey(this.editKey,N)}}}}else{if(!E&&X.shiftKey){var N=null;for(var S=this.columns.records.length-1;S>=0;S--){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){N=this.columns.records[S];break}}if(N){while(v){v=v.prev();if(v){var D=v.attr("data-role");if(!D){var F=v.attr("data-key");break}}}if(F){this.clearSelection(false);this._lastSelectedKey=F;var o=this.rowsByKey[F];var C=this.getrowindex(o);var L=this.getrowdisplayindex(o);this._raiseEvent("rowSelect",{key:F,index:L,boundIndex:C,row:this.rowsByKey[F]});this.endroweditbykey(this.editKey,false);this._doSelection(F,true,true);this.beginroweditbykey(F,N)}}}}return false}}}}}return true}if(X.ctrlKey||X.metaKey){var f=String.fromCharCode(s).toLowerCase();if(f=="c"||f=="x"){var n=this.getSelection();if(n.length>=1){var w="";for(var K=0;K<this.renderedRecords.length;K++){var Y=this.renderedRecords[K];for(var S=0;S<n.length;S++){var o=n[S];if(o.uid===Y.uid){for(var R=0;R<this.columns.records.length;R++){var A=this.getCellTextByKey(o.uid,this.columns.records[R].displayfield);w+=A;if(R<this.columns.records.length-1){w+="\t"}}w+="\r\n";break}}}if(w!=""){w=w.substring(0,w.length-1)}if(window.clipboardData){window.clipboardData.setData("Text",w)}else{var O=b('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');O.val(w);b("body").append(O);O.select();setTimeout(function(){document.designMode="off";O.select();O.remove()},100)}}}}if(s===32&&this.treeGrid){if(this.treeGrid.checkboxes){var n=this.getSelection();if(n.length>1){for(var S=0;S<n.length;S++){var G=n[S].uid;if(this.rowinfo[G].checked){this.treeGrid.uncheckRow(G,false)}else{this.treeGrid.checkRow(G,false)}}this._renderrows();return false}else{var t=v.attr("data-key");if(t){if(this.rowinfo[t].checked){this.treeGrid.uncheckRow(t)}else{this.treeGrid.checkRow(t)}return false}}}}var d=v.index();var W=function(Z){var j=null;var p=b(I._table.children()[1]).children().length-1;var i=b(b(I._table.children()[1]).children()[p]);var aa=i.attr("data-role");if(!aa){j=i.attr("data-key")}else{while(i){i=i.prev();if(i){var aa=i.attr("data-role");if(!aa){j=i.attr("data-key");break}}}}if(Z=="all"){return{row:i,key:j}}return j};var g=function(p){var j=null;var i=b(b(I._table.children()[1]).children()[0]);var Z=i.attr("data-role");if(!Z){j=i.attr("data-key")}else{while(i){i=i.next();if(i){var Z=i.attr("data-role");if(!Z){j=i.attr("data-key");break}}}}if(p=="all"){return{row:i,key:j}}return j};var t=null;var l=function(){if(!Q&&!x){I.clearSelection(false)}if(s==33||s==37){var j=d;t=I._getuikey(j,"prev");if(!t){t=g()}}else{if(s==34||s==39){var j=d;t=I._getuikey(j,"next");if(!t){t=W()}}else{if(s==38){t=W()}else{if(s==40){t=g()}}}}I._lastSelectedKey=t;var p=I.rowsByKey[t];var j=I.getrowindex(p);var i=I.getrowdisplayindex(p);I._raiseEvent("rowSelect",{key:t,index:i,boundIndex:j,row:I.rowsByKey[t]});I._doSelection(t,true,true);I.host.focus()};var k=function(){I.clearSelection(false);var i=g();if(x||Q){I._selectRange(v.index(),0)}else{I._lastSelectedKey=i}I.selectrowbykey(i,"keyboard")};var r=function(){I.clearSelection(false);var i=W("all");var j=i.key;if(x||Q){I._selectRange(v.index(),i.row.index())}else{I._lastSelectedKey=j}I.selectrowbykey(j,"keyboard")};if(this.treeGrid&&this.rtl){if(s==37){s=39}else{if(s==39){s=37}}}if(s==36||(Q&&s==38)){k();return false}else{if(s==35||(Q&&s==40)){r();return false}else{if(s==33||s==37){var t=v.attr("data-key");if(this.rowDetails&&s==37&&!this.treeGrid){this.hidedetailsbykey(t);return false}else{if(this.treeGrid&&s==37){if(this.rowinfo[t].row&&!this.rowinfo[t].row[T.parent]&&!this.rowinfo[t][T.leaf]&&!this.rowinfo[t].expanded){return false}if(this.rowinfo[t].expanded&&!this.rowinfo[t][T.leaf]){this.treeGrid.collapseRow(t);return false}else{if(this.rowinfo[t].row&&this.rowinfo[t].row[T.parent]){t=this.rowinfo[t].row[T.parent].uid}}if(this.rowinfo[t][T.leaf]){return false}}}if(this.pageable&&!this.treeGrid){if(!this.rtl){this.goToPrevPage(l)}else{this.goToNextPage(l)}return false}if(this.treeGrid&&this.pageable&&s==33){this.goToPrevPage(l);return false}}else{if(s==34||s==39){var t=v.attr("data-key");if(this.rowDetails&&s==39&&!this.treeGrid){this.showdetailsbykey(t);return false}else{if(this.treeGrid&&s==39){if(this.rowinfo[t][T.leaf]){return false}if(!this.rowinfo[t].expanded){this.treeGrid.expandRow(t);return false}else{if(this.rowinfo[t].row&&this.rowinfo[t].row.records&&this.rowinfo[t].row.records.length>0){if(this.dataview.filters.length>0){var m=this.rowinfo[t].row.records;for(var S=0;S<m.length;S++){if(m[S]._visible){t=m[S].uid;break}}}else{t=this.rowinfo[t].row.records[0].uid}}}}}if(this.pageable&&!this.treeGrid){if(!this.rtl){this.goToNextPage(l)}else{this.goToPrevPage(l)}return false}if(this.treeGrid&&this.pageable&&s==34){this.goToNextPage(l);return false}}else{if(s==38){while(v){v=v.prev();if(v){var D=v.attr("data-role");if(!D){t=v.attr("data-key");break}}}if(this.pageable&&t==null){this.goToPrevPage(l);return false}}else{if(s==40){while(v){v=v.next();if(v){var D=v.attr("data-role");if(!D){t=v.attr("data-key");break}}}if(this.pageable&&t==null){this.goToNextPage(l);return false}}}}}}}if(t!=null){if(!Q&&!x){this.clearSelection(false)}if(this.rowinfo[t]){if(this.rowinfo[t].selected&&(Q||x)){this._doSelection(this._lastSelectedKey,false,false);this._lastSelectedKey=t;var o=this.rowsByKey[t];var C=this.getrowindex(o);I._updateSelection();var L=this.getrowdisplayindex(o);this._raiseEvent("rowUnselect",{key:t,index:L,boundIndex:C,row:o});return false}}this._lastSelectedKey=t;var o=this.rowsByKey[t];var C=this.getrowindex(o);this._doSelection(t,true,false);I._updateSelection();var L=this.getrowdisplayindex(o);this._raiseEvent("rowSelect",{key:t,index:L,boundIndex:C,row:o});if(this.treeGrid){if(s==37){var v=this._getuirow(t);var U=null;if(v){var D=v.attr("data-role");if(!D){U=v.attr("data-key")}}if(this.pageable&&U==null&&this.dataview.pagenum>0){while(this._getuirow(t)==null&&this.dataview.pagenum>0){this.goToPrevPage()}}}else{if(s==39){var v=this._getuirow(t);var U=null;if(v){var D=v.attr("data-role");if(!D){U=v.attr("data-key")}}if(this.pageable&&U==null){this.goToNextPage()}}}}return false}},_selection:function(c){if("selectionStart" in c[0]){var h=c[0];var i=h.selectionEnd-h.selectionStart;return{start:h.selectionStart,end:h.selectionEnd,length:i,text:h.value}}else{var f=document.selection.createRange();if(f==null){return{start:0,end:h.value.length,length:0}}var d=c[0].createTextRange();var g=d.duplicate();d.moveToBookmark(f.getBookmark());g.setEndPoint("EndToStart",d);var i=f.text.length;return{start:g.text.length,end:g.text.length+f.text.length,length:i,text:f.text}}},_doSelection:function(c,e,d){if(c==null){this.clearSelection();return}if(this.selectionMode==="singlerow"){this.clearSelection(false)}var f=this.rowinfo[c];if(f){f.selected=e;this.ensurerowvisiblebykey(c)}else{this.ensurerowvisiblebykey(c);var f=this.rowinfo[c];if(f){f.selected=e}else{this.rowinfo[c]={selected:e}}}if(this.selectionMode!="none"){if(d!==false){this._renderrows()}}},clearSelection:function(e){if(this.rowinfo){var f=this.getRows();for(var h in this.rowinfo){var g=this.rowinfo[h];if(g.selected){g.selected=false;var d=f.indexOf(g.row);var c=this.getrowdisplayindex(g.row);this._raiseEvent("rowUnselect",{key:h,index:c,boundIndex:d,row:g.row})}}}if(e!==false){this._renderrows()}},exportData:function(t){if(!b.jqx.dataAdapter.ArrayExporter){if(!this.treeGrid){throw"jqxDataTable: Missing reference to jqxdata.export.js!"}throw"jqxTreeGrid: Missing reference to jqxdata.export.js!"}var h=this.exportSettings.columnsHeader;if(h==undefined){h=true}var w=this.exportSettings.hiddenColumns;if(w==undefined){w=false}var P=this.exportSettings.serverURL;var I=this.exportSettings.characterSet;var ac=this.exportSettings.collapsedRecords;if(ac==undefined){ac=false}var F=this.exportSettings.fileName;if(F===undefined){F=this.treeGrid?"jqxTreeGrid_Data":"jqxDataTable_Data"}var s=this;var Y=this.getRows();if(this.exportSettings.recordsInView==true){Y=this.getView()}if(this.treeGrid&&this.treeGrid.virtualModeCreateRecords){var Y=this.treeGrid.getRows()}if(this.groups&&this.groups.length>0){var k=this.source.getGroupedRecords(this.groups,"records","label",null,"data",null,"parent",Y);var m=function(o,ae){for(var ag=0;ag<o.length;ag++){var j=b.extend({},o[ag]);ae.push(j);if(j.records&&j.records.length>0){var ah=m(j.records,new Array());for(var af=0;af<ah.length;af++){if(ah[af].leaf){ae.push(ah[af])}else{ae.push(ah[af])}}}}return ae};var S=m.call(this,k,new Array());Y=S}if(Y.length==0){throw"No data to export."}this.exporting=true;if(this.altRows){this._renderrows()}var p=new Array();for(var X=0;X<this.columns.records.length;X++){if(!w&&this.columns.records[X].hidden){continue}p.push(b.extend({},this.columns.records[X]))}if(this.groups&&this.groups.length>0){if(p.length>0){var aa=this._names();for(var X=0;X<Y.length;X++){if(!Y[X][aa.leaf]){if(!s.rtl){Y[X][p[0].displayfield]=Y[X].label}else{Y[X][p[p.length-1].displayfield]=Y[X].label}}}}}var g=0;if(this.treeGrid){var L=this.treeGrid.getRows();if(this.exportSettings.recordsInView==true){L=this.getView()}var aa=this._names();var d=function(ae){for(var af=0;af<ae.length;af++){var j=ae[af];var o=j[aa.expanded]||(!j[aa.expanded]&&ac);g=Math.max(g,1+j[aa.level]);if(j.records&&j.records.length>0&&o){d(ae[af].records)}}};d(L);if(t!="xml"&&t!="json"){var u=p.length;for(var X=0;X<g;X++){var Q=new a(this,this);Q.width=this.indentWidth;Q.datafield="Level"+X;Q.displayfield="Level"+X;Q.align="center";Q.cellsalign="center";Q.text="";if(!this.rtl){p.splice(X,0,Q)}else{p.splice(u,0,Q)}}var y=new Array();var x=this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?true:false;var U=function(af){for(var ah=0;ah<af.length;ah++){var o=b.extend({},af[ah]);for(var ag=0;ag<o[aa.level];ag++){o["Level"+ag]=""}var ae=o[aa.expanded]||(!o[aa.expanded]&&ac);if(t=="xls"||t=="html"||t=="pdf"){if(o.records&&o.records.length>0){o["Level"+o[aa.level]]=ae?"-":"+"}else{o["Level"+o[aa.level]]=""}}else{o["Level"+o[aa.level]]=""}if(o[aa.leaf]){o["Level"+o[aa.level]]=""}for(var ag=o[aa.level]+1;ag<g;ag++){o["Level"+ag]=""}if(x&&!o[aa.leaf]){if(!s.rtl){o[p[g].displayfield]=o.label}else{o[p[p.length-g-1].displayfield]=o.label}}if(o.aggregate){var aj=t=="xls"?"_AG":"";for(var ag=g;ag<p.length;ag++){var ai=ag;if(s.rtl){ai=p.length-ag-1}if(o[p[ai].displayfield]!=undefined){o[p[ai].displayfield]=aj+o[p[ai].displayfield]}}}y.push(o);if(ae&&!o[aa.leaf]){U(o.records)}}};U(L);Y=y}else{Y=L}}var f=w!=undefined?w:false;var Z={};var C={};var l=[];var M=this.host.find(".jqx-grid-cell:first");var n=this.host.find(".jqx-grid-cell-alt:first");var ad=this.toThemeProperty;M.removeClass(ad("jqx-grid-cell-selected"));M.removeClass(ad("jqx-fill-state-pressed"));n.removeClass(ad("jqx-grid-cell-selected"));n.removeClass(ad("jqx-fill-state-pressed"));M.removeClass(ad("jqx-grid-cell-hover"));M.removeClass(ad("jqx-fill-state-hover"));n.removeClass(ad("jqx-grid-cell-hover"));n.removeClass(ad("jqx-fill-state-hover"));var E="cell";var B=1;var K="column";var z=1;var A=[];for(var V=0;V<p.length;V++){var Q=p[V];if(Q.cellclassname!=""){Q.customCellStyles=new Array();if(typeof Q.cellclassname=="string"){Q.customCellStyles.push(Q.cellclassname)}else{for(var X=0;X<Y.length;X++){var c=X;var W=Q.cellclassname(c,Q.displayfield,Y[X][Q.displayfield],Y[X]);if(W){Q.customCellStyles[X]=W}}}}}b.each(p,function(ag){var aj=ag;if(s.treeGrid){if(ag>=g){aj=p.length-g-1}else{if(g>0&&ag<g){aj=0}}}var ak=b(s._table[0].rows[0].cells[aj]);if(s._table[0].rows.length>1){var j=b(s._table[0].rows[1].cells[aj]);if(j.length==0){var j=b(s._table[0].rows[1].cells[0])}}if(ak.length==0){var ak=b(s._table[0].rows[0].cells[0])}var af=this;var ah=function(am){var ao=s.toThemeProperty;am.removeClass(ao("jqx-cell"));am.removeClass(ao("jqx-grid-cell-selected"));am.removeClass(ao("jqx-fill-state-pressed"));am.removeClass(ao("jqx-grid-cell-hover"));am.removeClass(ao("jqx-fill-state-hover"));if(af.customCellStyles){for(var an in af.customCellStyles){am.removeClass(af.customCellStyles[an])}}};ah(ak);if(j){ah(j)}if(this.displayfield==null){return true}if(s.showAggregates){if(s.getcolumnaggregateddata){A.push(s.getcolumnaggregateddata(this.displayfield,this.aggregates,true,Y))}}var ai=s._getexportcolumntype(this);if(this.exportable&&(!this.hidden||f)){Z[this.displayfield]={};Z[this.displayfield].text=this.text;Z[this.displayfield].width=parseInt(this.width);if(isNaN(Z[this.displayfield].width)){Z[this.displayfield].width=60}if(Z[this.displayfield].width>500){Z[this.displayfield].width=500}Z[this.displayfield].formatString=this.cellsFormat;Z[this.displayfield].localization=s.gridlocalization;Z[this.displayfield].type=ai;Z[this.displayfield].cellsAlign=this.cellsalign;Z[this.displayfield].hidden=!h;Z[this.displayfield].index=aj;Z[this.displayfield].maxIndex=p.length}E="cell"+B;var al=this.element;if(t!="json"&&t!="xml"){K="column"+z;var i=function(o,au,at,am,ar,ao,an,ap,aq){C[o]={index:1+an,maxIndex:p.length};if(ao.rtl){C[o].index=p.length-an}if(t=="html"||t=="xls"||t=="pdf"){if(au){C[o]["font-size"]=au.css("font-size");C[o]["font-weight"]=au.css("font-weight");C[o]["font-style"]=au.css("font-style");C[o]["background-color"]=ao._getexportcolor(au.css("background-color"));C[o]["color"]=ao._getexportcolor(au.css("color"));C[o]["border-color"]=ao._getexportcolor(au.css("border-top-color"))}if(at){C[o]["text-align"]=ar.align}else{C[o]["text-align"]=ar.cellsalign;C[o]["formatString"]=ar.cellsFormat;C[o]["dataType"]=ai}if(t=="html"||t=="pdf"){C[o]["border-top-width"]="0px";if(!ao.rtl){C[o]["border-left-width"]="0px";C[o]["border-right-width"]="1px"}else{C[o]["border-left-width"]="1px";C[o]["border-right-width"]="0px";if(an==p.length-g-1&&at){C[o]["border-right-width"]="1px"}}C[o]["border-bottom-width"]="1px";if(au){C[o]["border-top-style"]=au.css("border-top-style");C[o]["border-left-style"]=au.css("border-left-style");C[o]["border-right-style"]=au.css("border-right-style");C[o]["border-bottom-style"]=au.css("border-bottom-style")}if(at){if(an==0&&!ao.rtl){C[o]["border-left-width"]="1px"}else{if(an==p.length-1&&ao.rtl){C[o]["border-right-width"]="1px"}}if(au){C[o]["border-top-width"]="1px";C[o]["border-bottom-width"]=au.css("border-bottom-width")}}else{if(an==0&&!ao.rtl){C[o]["border-left-width"]="1px"}else{if(an==p.length-1&&ao.rtl){C[o]["border-right-width"]="1px"}}}if(au){C[o]["height"]=au.css("height")}if(ao.treeGrid&&!at){if(C[o].index-1<g){if(ao.rtl){C[o]["border-left-width"]="0px"}else{C[o]["border-right-width"]="0px"}}else{if(C[o].index-1==g){if(!ao.rtl){C[o]["border-left-width"]="0px"}else{C[o]["border-right-width"]="0px"}}}}}}if(ar.exportable&&(!ar.hidden||f)){if(ap==true){if(!Z[ar.displayfield].customCellStyles){Z[ar.displayfield].customCellStyles=new Array()}Z[ar.displayfield].customCellStyles[aq]=o}else{if(at){Z[ar.displayfield].style=o}else{if(!am){Z[ar.displayfield].cellStyle=o}else{Z[ar.displayfield].cellAltStyle=o}}}}};i(K,al,true,false,this,s,ag);z++;i(E,ak,false,false,this,s,ag);if(s.altRows){E="cellalt"+B;i(E,j,false,true,this,s,ag)}if(this.customCellStyles){for(var ae in af.customCellStyles){ak.removeClass(af.customCellStyles[ae])}for(var ae in af.customCellStyles){ak.addClass(af.customCellStyles[ae]);i(E+af.customCellStyles[ae],ak,false,false,this,s,ag,true,ae);ak.removeClass(af.customCellStyles[ae])}}B++}});if(t!="json"&&t!="xml"){if(g>0&&this.treeGrid){var ab=g+1;if(this.rtl){ab=p.length-g}if(C["column"+ab]){var e=C["column"+ab];e.merge=g;e["border-left-width"]="1px";var H=C["cell"+ab];for(var X=0;X<p.length;X++){var ab=X+1;if(this.rtl){ab=p.length-X}C["column"+ab].level=X;C["column"+ab].maxLevel=g;C["cell"+ab].maxLevel=g;var Q=p[X];if(Q.customCellStyles){for(var R in Q.customCellStyles){if(C["cell"+ab+Q.customCellStyles[R]]){C["cell"+ab+Q.customCellStyles[R]].maxLevel=g}}}if(C["cellalt"+ab]){C["cellalt"+ab].maxLevel=g}}for(var X=0;X<g;X++){var ab=X+1;var D=X;if(this.rtl){ab=p.length-X}var r=C["column"+ab];r.disabled=true;C["cell"+ab].level=D;C["cell"+ab].maxLevel=g;C["column"+ab].level=D;if(C["cellalt"+ab]){C["cellalt"+ab].level=D;C["cellalt"+ab].maxLevel=g}var Q=p[X];if(Q.customCellStyles){for(var R in Q.customCellStyles){if(C["cell"+ab+Q.customCellStyles[R]]){C["cell"+ab+Q.customCellStyles[R]].maxLevel=g;C["cell"+ab+Q.customCellStyles[R]].level=D}}}if(t=="html"||t=="pdf"||t=="xls"){r["font-size"]=e["font-size"];r["font-weight"]=e["font-weight"];r["font-style"]=e["font-style"];r["background-color"]=e["background-color"];r.color=e.color;r["border-color"]=e["border-color"];if(t=="html"||t=="pdf"){r["border-top-width"]=e["border-top-width"];r["border-left-width"]=e["border-left-width"];if(this.rtl){r["border-right-width"]=e["border-right-width"];if(X==0){r["border-right-width"]="1px"}}if(X==0&&!this.rtl){r["border-left-width"]="0px"}else{if(X==0&&this.rtl){r["border-left-width"]="0px"}}if(!this.rtl){r["border-right-width"]="0px"}else{if(this.rtl){r["border-left-width"]="0px"}}r["border-bottom-width"]="0px";var r=C["cell"+ab];if(!this.rtl){r["border-right-width"]="0px"}else{if(this.rtl){r["border-left-width"]="0px"}}}}}}}}if(this.showAggregates){var G=[];var N=t=="xls"?"_AG":"";var O=0;if(this.rowDetails&&!this.treeGrid){O++}if(A.length>0){b.each(p,function(j){if(this.aggregates){for(var ae=0;ae<this.aggregates.length;ae++){if(!G[ae]){G[ae]={}}if(G[ae]){var af=s._getaggregatename(this.aggregates[ae]);var ag=s._getaggregatetype(this.aggregates[ae]);var o=A[j-O];if(o){G[ae][this.displayfield]=N+af+": "+o[ag]}}}}});b.each(p,function(j){for(var o=0;o<G.length;o++){if(G[o][this.displayfield]==undefined){G[o][this.displayfield]=N}}})}b.each(G,function(){Y.push(this)})}var J=this;var T=b.jqx.dataAdapter.ArrayExporter(Y,Z,C,P,this.treeGrid&&(t=="xml"||t=="json"));if(F==undefined){this._renderrows();var v=T.exportTo(t);if(this.showAggregates){b.each(G,function(){Y.pop(this)})}setTimeout(function(){J.exporting=false},50);return v}else{var q=this.treeGrid&&(t=="xml"||t=="json");T.exportToFile(t,F,P,I,q)}if(this.showAggregates){b.each(G,function(){Y.pop(this)})}this._renderrows();setTimeout(function(){J.exporting=false},50)},_getexportcolor:function(l){var f=l;if(l=="transparent"){f="#FFFFFF"}if(!f||!f.toString()){f="#FFFFFF"}if(f.toString().indexOf("rgb")!=-1){var i=f.split(",");if(f.toString().indexOf("rgba")!=-1){var d=parseInt(i[0].substring(5));var h=parseInt(i[1]);var j=parseInt(i[2]);var k=parseInt(i[3].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);if(d==0&&h==0&&j==0&&k==0){return"#ffffff"}return"#"+e}var d=parseInt(i[0].substring(4));var h=parseInt(i[1]);var j=parseInt(i[2].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);return"#"+e}else{if(f.toString().indexOf("#")!=-1){if(f.toString().length==4){var c=f.toString().substring(1,4);f+=c}}}return f},_rgbToHex:function(c){return this._intToHex(c.r)+this._intToHex(c.g)+this._intToHex(c.b)},_intToHex:function(d){var c=(parseInt(d).toString(16));if(c.length==1){c=("0"+c)}return c.toUpperCase()},_getexportcolumntype:function(g){var h=this;var f="string";var e=h.source.datafields||((h.source._source)?h.source._source.datafields:null);if(e){var j="";b.each(e,function(){if(this.name==g.displayfield){if(this.type){j=this.type}return false}});if(j){return j}}if(g!=null){if(this.dataview.cachedrecords==undefined){return f}var c=null;if(!this.virtualmode){if(this.dataview.cachedrecords.length==0){return f}c=this.dataview.cachedrecords[0][g.displayfield];if(c!=null&&c.toString()==""){return"string"}}else{b.each(this.dataview.cachedrecords,function(){c=this[g.displayfield];return false})}if(c!=null){if(g.cellsFormat.indexOf("c")!=-1){return"number"}if(g.cellsFormat.indexOf("n")!=-1){return"number"}if(g.cellsFormat.indexOf("p")!=-1){return"number"}if(g.cellsFormat.indexOf("d")!=-1){return"date"}if(g.cellsFormat.indexOf("y")!=-1){return"date"}if(g.cellsFormat.indexOf("M")!=-1){return"date"}if(g.cellsFormat.indexOf("m")!=-1){return"date"}if(g.cellsFormat.indexOf("t")!=-1){return"date"}if(typeof c=="boolean"){f="boolean"}else{if(b.jqx.dataFormat.isNumber(c)){f="number"}else{var i=new Date(c);if(i.toString()=="NaN"||i.toString()=="Invalid Date"){if(b.jqx.dataFormat){i=b.jqx.dataFormat.tryparsedate(c);if(i!=null){if(i&&i.getFullYear()){if(i.getFullYear()==1970&&i.getMonth()==0&&i.getDate()==1){var d=new Number(c);if(!isNaN(d)){return"number"}return"string"}}return"date"}else{f="string"}}else{f="string"}}else{f="date"}}}}}return f},showDetails:function(c){var d=this._getkey(c);this.showdetailsbykey(d)},hideDetails:function(c){var d=this._getkey(c);this.hidedetailsbykey(d)},setCellValueByKey:function(D,s,w){var o=this;var j=this.rowsByKey[D];var k=this.getrowindex(j);var h=j;if(h!=null&&h[s]==w){return false}if(h!=null&&h[s]===null&&w===""){return}var n="";if(h!=null&&h[s]!==w){var e=this.getColumn(s);var f="string";var A=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(A){var t="";b.each(A,function(){if(this.name==e.displayfield){if(this.type){t=this.type}return false}});if(t){f=t}}n=h[s];if(!e.nullable||(w!=null&&w!==""&&e.nullable&&w.label===undefined)){if(b.jqx.dataFormat.isNumber(n)||f=="number"||f=="float"||f=="int"||f=="decimal"&&f!="date"){w=new Number(w);w=parseFloat(w);if(isNaN(w)){w=0}}else{if(b.jqx.dataFormat.isDate(n)||f=="date"){if(w!=""){var z=w;z=new Date(z);if(z!="Invalid Date"&&z!=null){w=z}else{if(z=="Invalid Date"){z=new Date();w=z}}}}}if(h[s]===w){return}}o.dataview._filteredData=null;o.dataview._sortData=null;o.dataview._sortHierarchyData=null;h[s]=w;if(this.treeGrid){var r=this.treeGrid.getRow(D);if(r){r[s]=w}}if(w!=null&&w.label!=null){var e=this.getColumn(s);h[e.displayfield]=w.label;h[s]=w.value;if(this.treeGrid){var r=this.treeGrid.getRow(D);if(r){r[e.displayfield]=w.label;r[s]=w.value}}}}if(this.source&&this.source._knockoutdatasource&&!this._updateFromAdapter&&this.autokoupdates){if(this.source._source._localdata){var y=k;var v=this.source._source._localdata()[y];this.source.suspendKO=true;var l=v;if(l[s]&&l[s].subscribe){if(w!=null&&w.label!=null){l[e.displayfield](w.label);l[s](w.value)}else{l[s](w)}}else{var A=this.source._source.datafields;var d=null;var B=null;if(A){b.each(A,function(){if(this.name==s){B=this.map;return false}})}if(B==null){if(w!=null&&w.label!=null){l[s]=w.value;l[e.displayfield]=w.label}else{l[s]=w}}else{var g=B.split(this.source.mapChar);if(g.length>0){var c=l;for(var u=0;u<g.length-1;u++){c=c[g[u]]}c[g[g.length-1]]=w}}this.source._source._localdata.replace(v,b.extend({},l))}this.source.suspendKO=false}}if(this.source.updaterow&&(sync==undefined||sync==true)){var m=false;var q=function(p){if(false==p){this.setCellValue(j,s,n,true,false)}};try{var i=D;m=this.source.updaterow(i,h,q);if(m==undefined){m=true}}catch(x){m=false;this.setCellValue(j,s,n);return}}var C=this.getrowdisplayindex(j);var e=this.getColumn(s);this._raiseEvent("cellValueChanged",{value:w,oldValue:n,dataField:s,displayField:e.displayfield,key:D,boundIndex:k,index:C,row:this.rowsByKey[D]});if(this.editable){if(this.editKey!=null){return}}this._renderrows()},setCellValue:function(g,d,f){if(g==null||d==null){return false}var c=parseInt(g);var e=this._getkey(c);this.setCellValueByKey(e,d,f)},getCellText:function(f,d){if(f==null||d==null){return false}var c=parseInt(f);var e=this._getkey(c);return this.getCellTextByKey(e,d)},getCellTextByKey:function(e,d){if(e==null||d==null){return null}var c=this.getCellValueByKey(e,d);var f=this.getColumn(d);if(f&&f.cellsFormat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(c)){c=b.jqx.dataFormat.formatdate(c,f.cellsFormat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(c)||(!isNaN(parseFloat(c))&&isFinite(c))){c=b.jqx.dataFormat.formatnumber(c,f.cellsFormat,this.gridlocalization)}}}}return c},getCellValue:function(f,d){if(f==null||d==null){return false}var c=parseInt(f);var e=this._getkey(c);return this.getCellValueByKey(e,d)},getCellValueByKey:function(e,d){var h=this.rowsByKey[e];if(!h&&this.treeGrid){h=this.treeGrid.getRow(e)}var c=this.getrowindex(h);var f=h;var g="";if(f!=null){return f[d]}return null},beginRowEdit:function(c){var d=this._getkey(c);this.beginroweditbykey(d)},beginCellEdit:function(d,c){var e=this._getkey(d);var f=this.getColumn(c);this.beginroweditbykey(e,f)},endCellEdit:function(d,c,e){this.endRowEdit(d,e)},endRowEdit:function(c,e){var d=this._getkey(c);this.endroweditbykey(d,e)},getrowindex:function(f){var d=this.getRows().indexOf(f);if(d!=-1){return d}if(this.groups&&this.groups.length>0){var c=this.getRows();for(var e=0;e<c.length;e++){if(f.originalRecord){if(c[e].uid==f.originalRecord.uid){d=e;break}}else{if(c[e].uid==f.uid){d=e;break}}}}return d},getrowdisplayindex:function(g){if(this.treeGrid){return -1}var c=this.getView();var e=c.indexOf(g);if(e!=-1){return e}if(g==undefined){return e}var d=c;for(var f=0;f<d.length;f++){if(d[f].uid==g.uid||(g.originalRecord&&d[f].uid==g.originalRecord.uid)){e=f;break}}return e},beginroweditbykey:function(G,q){if(this.beginEdit){var A=this.beginEdit(G,q);if(A===false){return false}}var D=!this.treeGrid?this.groups.length:this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?this.source._source.hierarchy.groupingDataFields.length:0;if(D>0){var m=this.rowsByKey[G];if(this.treeGrid){var m=this.treeGrid.getRow(G)}if(m.level<D){return false}}if(this._lastSelectedKey==null){this.selectrowbykey(G)}if(this.editKey===G&&this.editKey!=undefined){return false}if(this.rowinfo[G]&&this.rowinfo[G].locked){return false}if(this.editKey!=null){this.endroweditbykey(G,true);return false}var E=this.editSettings.editSingleCell;if(!q&&E&&this.columns.records&&this.columns.records.length>0){for(var y=0;y<this.columns.records.length;y++){q=this.columns.records[y];if(q.editable&&!q.hidden){break}}if(!q){return false}}if(E&&q&&!q.editable){this.editKey=null;return false}if(E){this.editColumn=q}var o=this;var m=this.rowsByKey[G];if(this.treeGrid){var m=this.treeGrid.getRow(G)}var n=this.getrowindex(m);var C=this._getuirow(G);var s=this._getpinneduirow(G);this._editors=new Array();var p=false;if(C){var h=C[0].cells;var t=0;for(var y=0;y<h.length;y++){var g=this.columns.records[y];var d=h[y];if(g.rowDetailscolumn){continue}if(g.checkboxcolumn){continue}if(g.pinned){d=s[0].cells[y]}if(E&&q&&g.datafield!=q.datafield){continue}b(d).removeClass(this.toTP("jqx-grid-cell-selected"));b(d).removeClass(this.toTP("jqx-fill-state-pressed"));b(d).removeClass(this.toTP("jqx-grid-cell-hover"));b(d).removeClass(this.toTP("jqx-fill-state-hover"));if(g.columntype=="none"){continue}var u=b(d).outerWidth();var w=b(d).width();if(t===0){t=b(d).outerHeight()-1}b(d).css("padding","0px");cellContent="<div style='height:"+t+"px; width: 100%; overflow: hidden; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 9999;'></div>";var r=this.getCellTextByKey(G,g.displayfield);d.innerHTML=cellContent;var e=b(d.firstChild);switch(g.columntype){case"textbox":case"default":var j=b("<input style='border: none;' autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' type='textbox'/>").appendTo(e);if(this.rtl){j.css("direction","rtl")}j.addClass(this.toThemeProperty("jqx-input"));j.addClass(this.toThemeProperty("jqx-widget-content"));j.addClass(this.toThemeProperty("jqx-cell-editor"));j[0].onfocus=function(i){setTimeout(function(){if(i){var H=b(i.target).parent().parent().index();if(H>=0){o.ensureColumnVisible(o.columns.records[H].datafield)}}else{var H=b(document.activeElement).parent().parent().index();if(H>=0){o.ensureColumnVisible(o.columns.records[H].datafield)}}if(o.content){o.content[0].scrollTop=0;o.content[0].scrollLeft=0}if(o.gridcontent){o.gridcontent[0].scrollLeft=0;o.gridcontent[0].scrollTop=0}},10)};if(!g.editable){j.attr("disabled",true);j.attr("readOnly",true);j.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{if(!p){p=true;var f=b.jqx.browser.msie&&b.jqx.browser.version>10;if(!f){j.focus()}var c=j;setTimeout(function(){var I=c.val().length;if(!f){c.focus()}try{if("selectionStart" in c[0]){c[0].setSelectionRange(0,I)}else{var i=c[0].createTextRange();i.collapse(true);i.moveEnd("character",I);i.moveStart("character",0);i.select()}}catch(H){var J=H}},10)}}j.width(w);j.height(t);if(b.jqx.browser.msie&&b.jqx.browser.version<9){j.css("line-height",parseInt(t)+"px")}j.css("text-align",g.cellsalign);if(r===null){r=""}if(r==undefined){r=""}j.val(r);if(g.createeditor){var B=r;var r=this.getCellValueByKey(G,g.displayfield);g.createeditor(!this.treeGrid?n:G,r,j,B,w,t)}this._editors.push({column:g,editor:j});if(g.cellsFormat!=""){if(g.cellsFormat.indexOf("p")!=-1||g.cellsFormat.indexOf("c")!=-1||g.cellsFormat.indexOf("n")!=-1||g.cellsFormat.indexOf("f")!=-1){j.keydown(function(H){var N=H.charCode?H.charCode:H.keyCode?H.keyCode:0;var K=String.fromCharCode(N);var L=parseInt(K);if(isNaN(L)){return true}if(o._selection(j).length>0){return true}var J="";var I=j.val();if(g.cellsFormat.length>1){var M=parseInt(g.cellsFormat.substring(1));if(isNaN(M)){M=0}}else{var M=0}if(M>0){if(I.indexOf(o.gridlocalization.decimalseparator)!=-1){if(o._selection(j).start>I.indexOf(o.gridlocalization.decimalseparator)){return true}}}for(var O=0;O<I.length-M;O++){var i=I.substring(O,O+1);if(i.match(/^[0-9]+$/)!=null){J+=i}}if(J.length>=11){return false}})}}if(g.initeditor){var B=r;var r=this.getCellValueByKey(G,g.displayfield);g.initeditor(!this.treeGrid?n:G,r,j,B,w,t)}break;case"custom":case"template":if(!this.editorsCache){this.editorsCache=new Array()}var k=b("<div style='width: 100%; height: 100%; border: none;'></div>").appendTo(e);var x=b.trim(g.datafield).split(" ").join("");if(x.indexOf(".")!=-1){x=x.replace(".","")}var z=this.editorsCache["templateeditor_"+x];if(g.columntype=="custom"){var z=this.editorsCache["customeditor_"+x+"_"+G]}var B=r;var r=this.getCellValueByKey(G,g.displayfield);if(!z){var j=b("<div style='border: none;'></div>");j.width(u);j.height(t);z=j;if(r===null){r=""}if(g.columntype!="custom"){this.editorsCache["templateeditor_"+x]=j}else{this.editorsCache["customeditor_"+x+"_"+G]=j}j.appendTo(k);if(g.createeditor){g.createeditor(!this.treeGrid?n:G,r,j,B,u,t)}}else{var j=z;j.width(u);j.height(t);j.appendTo(k)}if(g.initeditor){g.initeditor(!this.treeGrid?n:G,r,j,B,u,t)}this._editors.push({column:g,editor:j});break}}}this.editKey=G;this.beginUpdate();var F=this.getrowdisplayindex(m);this._raiseEvent("rowBeginEdit",{key:G,index:F,boundIndex:n,row:this.rowsByKey[G]});if(E){var m=this.rowsByKey[G];var v=null;var l=null;if(m){v=m[q.datafield];l=m[q.displayfield]}this._raiseEvent("cellBeginEdit",{value:v,displayValue:l,key:G,index:F,dataField:q.datafield,displayField:q.displayfield,boundIndex:n,row:this.rowsByKey[G]})}this.endUpdate(false)},_toNumber:function(f){if(!f.indexOf&&f!=undefined){f=f.toString()}if(f.indexOf(this.gridlocalization.currencysymbol)>-1){f=f.replace(this.gridlocalization.currencysymbol,"")}var c=function(l,j,k){var h=l;if(j==k){return l}var i=h.indexOf(j);while(i!=-1){h=h.replace(j,k);i=h.indexOf(j)}return h};f=c(f,this.gridlocalization.thousandsseparator,"");f=f.replace(this.gridlocalization.decimalseparator,".");if(f.indexOf(this.gridlocalization.percentsymbol)>-1){f=f.replace(this.gridlocalization.percentsymbol,"")}var g="";for(var d=0;d<f.length;d++){var e=f.substring(d,d+1);if(e==="-"){g+="-"}if(e==="."){g+="."}if(e.match(/^[0-9]+$/)!=null){g+=e}}f=g;f=f.replace(/ /g,"");return f},_geteditorvalue:function(h,j,k,d){var m=new String();if(j){if(!h.geteditorvalue){switch(h.columntype){case"textbox":default:m=j.val();if(h.cellsFormat!=""){var l="string";var g=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(g){var n="";b.each(g,function(){if(this.name==h.displayfield){if(this.type){n=this.type}return false}});if(n){l=n}}var i=l==="number"||l==="float"||l==="int"||l==="integer";var f=l==="date"||l==="time";if(i||(l==="string"&&(h.cellsFormat.indexOf("p")!=-1||h.cellsFormat.indexOf("c")!=-1||h.cellsFormat.indexOf("n")!=-1||h.cellsFormat.indexOf("f")!=-1))){if(m===""&&h.nullable){return""}m=this._toNumber(m);m=new Number(m);if(isNaN(m)){m=""}}if(f||(l==="string"&&(h.cellsFormat.indexOf("H")!=-1||h.cellsFormat.indexOf("m")!=-1||h.cellsFormat.indexOf("M")!=-1||h.cellsFormat.indexOf("y")!=-1||h.cellsFormat.indexOf("h")!=-1||h.cellsFormat.indexOf("d")!=-1))){if(m===""&&h.nullable){return""}var e=m;m=new Date(m);if(m=="Invalid Date"||m==null||h.cellsFormat.length>1){if(b.jqx.dataFormat){m=b.jqx.dataFormat.parsedate(e,h.cellsFormat,this.gridlocalization)}if(m=="Invalid Date"||m==null){m=""}}}}if(h.displayfield!=h.datafield){m={label:m,value:m}}break}}if(h.geteditorvalue){var c=this.getCellValueByKey(d,h.displayfield);m=h.geteditorvalue(!this.treeGrid?k:d,c,j)}}return m},_validateEditors:function(c){var k=this;var d=true;var s=k.rowsByKey[c];var l=k.getrowindex(s);var m=k._editors;var c=k.editKey;var p=k._getuirow(c);for(var h=0;h<m.length;h++){var j=m[h].editor;var f=m[h].column;var o=k._geteditorvalue(f,j,l,c);if(f.validation){j.removeClass(k.toThemeProperty("jqx-grid-validation-label"));var e=f.datafield;try{var r=f.validation({value:o,row:c,datafield:f.datafield,displayfield:f.displayfield,column:f},o);var g=k.gridlocalization.validationstring;if(r.message!=undefined){g=r.message}var q=typeof r=="boolean"?r:r.result;if(!q){if(r.showmessage==undefined||r.showmessage==true){k._showvalidationpopup(p,e,g,j)}d=false}}catch(n){k._showvalidationpopup(p,e,k.gridlocalization.validationstring,j);d=false}}}return d},endroweditbykey:function(p,r){var k=this;if(k.editKey===null){return}if(this.endEdit){var n=this.endEdit(p);if(n===false){return}}var t=k.rowsByKey[p];var l=k.getrowindex(t);var m=k._editors;var e=k.editKey;var q=k._getuirow(e);if(r!==true){var d=true;if(m){d=k._validateEditors(e);if(d){var h=b.extend({},t);var c=b.extend({},t);for(var g=0;g<m.length;g++){var j=m[g].editor;var f=m[g].column;var o=k._geteditorvalue(f,j,l,e);if(o&&o.label!=undefined){h[f.displayfield]=o.label;h[f.datafield]=o.value}else{h[f.displayfield]=o}}var s=function(){k.dataview._sortHierarchyData=null;k.dataview._sortData=null;for(var x=0;x<m.length;x++){var B=m[x].editor;var v=m[x].column;var C=k._geteditorvalue(v,B,l,e);var u=c[v.displayfield];if(C&&C.label!=undefined){t[v.displayfield]=C.label;t[v.datafield]=C.value}else{t[v.displayfield]=C}if(k.treeGrid){var D=k.treeGrid.getRow(e);if(D){D[v.displayfield]=C}}if(k.editorsCache){var E=function(i){if(i&&i.jqxWidget){var G=i.jqxWidget.element.className;if(G.indexOf("dropdownlist")>=0||G.indexOf("datetimeinput")>=0||G.indexOf("combobox")>=0||G.indexOf("menu")>=0){if(i.jqxWidget.isOpened){var F=i.jqxWidget.isOpened();if(F){i.jqxWidget.close()}}}}};var z="customeditor_"+v.displayfield+"_"+p;var y="templateeditor_"+v.displayfield;if(k.editorsCache[z]){var w=b(k.editorsCache[z]).data();var A=k.editorsCache[z];if(!w.jqxWidget&&b(A).children()[0]&&b(b(A).children()[0]).data().jqxWidget){w=b(b(A).children()[0]).data()}E(w);k.editorsCache[z].detach()}if(k.editorsCache[y]){k.editorsCache[y].detach();var w=b(k.editorsCache[y]).data();var A=k.editorsCache[y];if(!w.jqxWidget&&b(A).children()[0]&&b(b(A).children()[0]).data().jqxWidget){w=b(b(A).children()[0]).data()}E(w)}}if(C!=u){k.beginUpdate();k._raiseEvent("cellValueChanged",{value:C,oldValue:u,dataField:v.datafield,displayField:v.displayfield,key:p,index:l,row:t});k.endUpdate(false)}}};k.updaterowbykey(k.editKey,h,false,s)}}if(!d){return false}}k._detachEditors(e);return true},_detachEditors:function(l){var g=this;var m=g.rowsByKey[l];var i=g.getrowindex(m);if(g.editorsCache){for(var h in g.editorsCache){var f=b(g.editorsCache[h]).data();if(f&&f.jqxWidget){var c=f.jqxWidget.element.className;if(c.indexOf("dropdownlist")>=0||c.indexOf("datetimeinput")>=0||c.indexOf("combobox")>=0||c.indexOf("menu")>=0){if(f.jqxWidget.isOpened){var e=f.jqxWidget.isOpened();if(e){f.jqxWidget.close()}}}}b(g.editorsCache[h]).detach()}}g.beginUpdate();var d=g.getrowdisplayindex(m);if(g.editSettings.editSingleCell){var m=g.rowsByKey[l];var k=null;var j=null;if(m){k=m[g.editColumn.datafield];j=m[g.editColumn.displayfield]}g._raiseEvent("cellEndEdit",{value:k,displayValue:j,key:l,index:d,dataField:g.editColumn.datafield,displayField:g.editColumn.displayfield,boundIndex:i,row:g.rowsByKey[l]})}g._raiseEvent("rowEndEdit",{key:l,index:d,boundIndex:i,row:g.rowsByKey[l]});g.endUpdate(false);g.editColumn=null;g.editKey=null;g._renderrows();g._renderhorizontalscroll();g.host.focus();setTimeout(function(){g.host.focus()},10)},_showvalidationpopup:function(r,e,s,m){if(s==undefined){var s=this.gridlocalization.validationstring}m.addClass(this.toThemeProperty("jqx-grid-validation-label"));var p=b("<div style='z-index: 99999; top: 0px; left: 0px; position: absolute;'></div>");var o=b("<div style='width: 20px; height: 20px; z-index: 999999; top: 0px; left: 0px; position: absolute;'></div>");p.html(s);o.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));p.addClass(this.toThemeProperty("jqx-grid-validation"));p.addClass(this.toThemeProperty("jqx-rc-all"));p.hide();o.hide();p.prependTo(this.table);o.prependTo(this.table);var h=this.hScrollInstance;var j=h.value;var g=parseInt(j);var l=this.getColumn(e).uielement;if(!r){return}var k=r;p.css("top",parseInt(k.position().top)+30+"px");var c=parseInt(p.css("top"));o.css("top",c-11);o.removeClass();o.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));var f=false;if(c>=this._table.height()){o.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));o.addClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));c=parseInt(k.position().top)-k.outerHeight()-5;if(c<0){c=0;o.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));f=true}p.css("top",c+"px");o.css("top",c+p.outerHeight()-9)}var n=-g+parseInt(b(l).position().left);var q=parseInt(this._table.css("left"));if(isNaN(q)){q=0}if(q!=0){g=0}o.css("left",g+n+30);var d=p.width();if(d+n>this.host.width()-20){var i=d+n-this.host.width()+40;n-=i}if(!f){p.css("left",g+n)}else{p.css("left",g+parseInt(b(l).position().left)-p.outerWidth())}m.mouseenter(function(){if(m.hasClass("jqx-grid-validation-label")){p.show();o.show()}});m.mouseleave(function(){p.hide();o.hide()});if(!this.popups){this.popups=new Array()}this.popups[this.popups.length]={validation:p,validationrow:o}},addRow:function(d,p,j,n){if(p!=undefined){this._datachanged=true;if(j==undefined){j="last"}var o=false;var k=this.that;if(d==null){var f=this.dataview.filters&&this.dataview.filters.length>0;var m=!f?this.dataview.totalrecords:this.source.records.length;if(!this.pageable){if(this.source._source.totalrecords){this.dataview.totalrecords=this.source._source.totalrecords}else{if(this.source._source.totalRecords){this.dataview.totalrecords=this.source._source.totalRecords}else{if(this.source.hierarchy.length!==0){this.dataview.totalrecords=this.source.hierarchy.length}else{this.dataview.totalrecords=this.source.records.length}}}var m=!f?this.dataview.totalrecords:this.source.records.length}if(!b.isArray(p)){d=this.dataview.getid(this.dataview.source.id,p,m);if(this.getColumn(this.dataview.source.id)){p[this.dataview.source.id]=d}}else{var c=new Array();b.each(p,function(e,q){var r=k.dataview.getid(k.dataview.source.id,p[e],m+e);c.push(r);if(k.getColumn(k.dataview.source.id)){p[e][k.dataview.source.id]=r}});d=c}}else{if(!b.isArray(p)){if(this.getColumn(this.dataview.source.id)){p[this.dataview.source.id]=d}}else{b.each(p,function(e,q){var r=d[e];if(k.getColumn(k.dataview.source.id)){p[e][k.dataview.source.id]=r}})}}var i=this.treeGrid?(this.treeGrid.virtualModeCreateRecords?true:false):false;var g=function(t,e,y,r){if(t._loading){throw new Error("jqxDataTable: "+t.loadingErrorMessage);return false}var q=t.vScrollInstance.value;var x=false;if(!b.isArray(y)){y.uid=e;t.rowsByKey[e]=y;if(e==n){n=null}x=t.source.addRecord(y,r,n,i)}else{b.each(y,function(z,A){var B=null;if(e!=null&&e[z]!=null){B=e[z]}this.uid=B;t.rowsByKey[B]=this;if(e==n){n=null}x=t.source.addRecord(this,r,n,i)})}if(t.groups&&t.groups.length>0){var u=Object.prototype.toString;var w=t.groups[0];Object.prototype.toString=(typeof w=="function")?w:function(){return this[w]};if(!t.source.records.sort){var v=new Array();var s=0;b.each(data,function(){v[startindex+s++]=this});data=v}t.source.records.sort(function(A,z){if(A===undefined){A=null}if(z===undefined){z=null}if(A===null&&z===null){return 0}if(A===null&&z!==null){return -1}if(A!==null&&z===null){return 1}var D=0;var C=0;if(A&&A.uid){D=A.uid}if(z&&z.uid){C=z.uid}A=A.toString();z=z.toString();if(b.jqx.dataFormat.isNumber(A)&&b.jqx.dataFormat.isNumber(z)){if(A<z){return -1}if(A>z){return 1}return 0}else{if(b.jqx.dataFormat.isDate(A)&&b.jqx.dataFormat.isDate(z)){if(A<z){return -1}if(A>z){return 1}return 0}else{if(!b.jqx.dataFormat.isNumber(A)&&!b.jqx.dataFormat.isNumber(z)){A=String(A).toLowerCase();z=String(z).toLowerCase()}}}try{if(A<z){return -1}if(A>z){return 1}}catch(B){var E=B}if(typeof(D)=="number"){if(D<C){return -1}if(D>C){return 1}}return 0});Object.prototype.toString=u}t.dataview._filteredData=null;t.dataview._sortData=null;t.dataview._sortHierarchyData=null;if(t._updating==undefined||t._updating==false){t.refresh()}if(t.source&&t.source._knockoutdatasource&&!t._updateFromAdapter&&t.autokoupdates){if(t.source._source._localdata){t.source.suspendKO=true;t.source._source._localdata.push(y);t.source.suspendKO=false}}t.vScrollInstance.setPosition(q);return x};if(this.source.addrow){var h=function(e,q){if(e==true||e==undefined){if(q!=undefined){d=q}g(k,d,p,j)}};try{if(!k.treeGrid){o=this.source.addrow(d,p,j,h)}else{o=this.source.addrow(d,p,j,n,h)}if(o==undefined){o=true}}catch(l){o=false}if(o==false){return false}}else{g(this,d,p,j)}return o}return false},deleteRow:function(c){var d=this._getkey(c);this.deleterowbykey(d)},deleterowbykey:function(g){if(g!=undefined){this._datachanged=true;var h=false;var f=this.that;var d=function(m,l){if(m._loading){throw new Error("jqxDataTable: "+m.loadingErrorMessage);return false}m.dataview._filteredData=null;m.dataview._sortData=null;m.dataview._sortHierarchyData=null;var o=false;var p=m.vScrollInstance.value;if(!b.isArray(l)){var o=false;if(m.rowsByKey[l]){o=true;if(m.rowinfo[l].selected){m.unselectrowbykey(l,false)}if(m.treeGrid){var n=m._names();var k=m.rowsByKey[l][n.parent]}delete m.rowsByKey[l];if(m.treeGrid){if(m.rowinfo[l]){var i=m.rowinfo[l].row.records;var j=function(q){for(var r=0;r<q.length;r++){var s=q[r].uid;delete m.rowsByKey[s];delete m.rowinfo[s];if(q[r].records){j(q[r].records)}}};if(i){j(i)}}}delete m.rowinfo[l];m.source.deleteRecord(l);if(k){if(n&&k.records&&k.records.length==0){k[n.leaf]=true;m.rowinfo[k.uid][n.leaf]=true}}}}else{b.each(l,function(){var t=this;if(m.rowsByKey[t]){o=true;if(m.rowinfo[t].selected){m.unselectrowbykey(t,false)}if(m.treeGrid){var u=m._names();var s=m.rowsByKey[t][u.parent]}delete m.rowsByKey[t];if(m.treeGrid){if(m.rowinfo[t]){var q=m.rowinfo[t].row.records;var r=function(v){for(var w=0;w<v.length;w++){var x=v[w].uid;delete m.rowsByKey[x];delete m.rowinfo[x];if(v[w].records){r(v[w].records)}}};if(q){r(q);delete m.rowinfo[t]}}}m.source.deleteRecord(t);if(s){if(u&&s.records&&s.records.length==0){s[u.leaf]=true;m.rowinfo[s.uid][u.leaf]=true}}}})}m.refresh();if(m.source&&m.source._knockoutdatasource&&!m._updateFromAdapter&&m.autokoupdates){if(m.source._source._localdata){m.source.suspendKO=true;m.source._source._localdata.pop(rowdata);m.source.suspendKO=false}}m.vScrollInstance.setPosition(p);return o};if(this.source.deleterow){var c=function(i){if(i==true||i==undefined){d(f,g)}};try{this.source.deleterow(g,c);if(h==undefined){h=true}}catch(e){h=false}}else{h=d(f,g)}return h}return false},updateRow:function(c,e){var d=this._getkey(c);this.updaterowbykey(d,e)},updaterowbykey:function(c,k,g,i){if(c!=undefined&&k!=undefined){var f=this.that;var j=false;var d=function(o,l,t){if(o._loading){throw new Error("jqxDataTable: "+o.loadingErrorMessage);return false}o.dataview._filteredData=null;o.dataview._sortData=null;o.dataview._sortHierarchyData=null;var r=false;if(!b.isArray(l)){var n=o.rowsByKey[l];var s=function(v){if(!v){r=false}else{for(var u=0;u<o.columns.records.length;u++){v[o.columns.records[u].datafield]=t[o.columns.records[u].datafield];if(o.groups.length>0&&v.originalRecord){v.originalRecord[o.columns.records[u].datafield]=t[o.columns.records[u].datafield]}}r=true}};s(n);if(o.treeGrid){n=o.treeGrid.getRow(l);s(n)}}else{b.each(l,function(w,x){var v=o.rowsByKey[this];var u=function(z,y){if(!v){r=false}else{v[this]=t[w]}r=true};u(this,v);if(o.treeGrid){v=o.treeGrid.getRow(this);u(this,v)}})}var m=o.vScrollInstance.value;if(g==undefined||g==true){if(o._updating==undefined||o._updating==false){o._renderrows()}}if(o.showAggregates&&o._updatecolumnsaggregates){o._updatecolumnsaggregates()}if(o.source&&o.source._knockoutdatasource&&!o._updateFromAdapter&&o.autokoupdates){if(o.source._source._localdata){var n=o.rowsByKey[l];var p=o.getrowindex(n);var q=o.source._source._localdata()[p];o.source.suspendKO=true;o.source._source._localdata.replace(q,b.extend({},n));o.source.suspendKO=false}}o.vScrollInstance.setPosition(m);o._renderrows(false);return r};if(this.source.updaterow){var e=function(l){if(l==true||l==undefined){d(f,c,k);if(i){i()}}};try{j=this.source.updaterow(c,k,e);if(j==undefined){j=true}}catch(h){j=false}}else{j=d(f,c,k);if(j&&i){i()}}return j}return false},lockRow:function(c){var d=this._getkey(c);this.lockrowbykey(d)},unlockRow:function(c){var d=this._getkey(c);this.unlockrowbykey(d)},lockrowbykey:function(c){if(this.rowinfo[c]){this.rowinfo[c].locked=true}else{this.rowinfo[c]={locked:true}}this._renderrows()},unlockrowbykey:function(c){if(this.rowinfo[c]){this.rowinfo[c].locked=false}else{this.rowinfo[c]={locked:false}}this._renderrows()},selectRow:function(c){var d=this._getkey(c);this.selectrowbykey(d)},unselectRow:function(c){var d=this._getkey(c);this.unselectrowbykey(d)},selectrowbykey:function(e,h,f){if(h!="keyboard"&&h!="mouse"){this._lastSelectedKey=e}var g=f!==false?true:false;this._doSelection(e,true,g);var i=this.rowsByKey[e];var d=this.getrowindex(i);var c=this.getrowdisplayindex(i);this._raiseEvent("rowSelect",{key:e,index:c,boundIndex:d,row:this.rowsByKey[e]})},unselectrowbykey:function(e,f){var g=f!==false?true:false;this._doSelection(e,false,g);var h=this.rowsByKey[e];var d=this.getrowindex(h);var c=this.getrowdisplayindex(h);this._raiseEvent("rowUnselect",{key:e,index:c,boundIndex:d,row:this.rowsByKey[e]})},getSelection:function(){var c=new Array();if(this.rowinfo){for(var e in this.rowinfo){var d=this.rowinfo[e];if(d.selected){c.push(d.row)}}}return c},showdetailsbykey:function(k){if(!this.rowDetails){return}var l=this.rowinfo[k];if(l){l.expanded=true;var f=b(this._table.children()[1]).children(("[data-key="+k+"]"));var i=b(this._pinnedTable.children()[1]).children(("[data-key="+k+"]"));if(f){var c=i.children();var h=b(c[0]);if(this.rtl){var h=b(c[c.length-1])}if(!this.rtl){h.removeClass(this.toThemeProperty("jqx-grid-group-collapse"));h.addClass(this.toThemeProperty("jqx-grid-group-expand"));h.removeClass(this.toThemeProperty("jqx-icon-arrow-right"));h.addClass(this.toThemeProperty("jqx-icon-arrow-down"))}else{h.removeClass(this.toThemeProperty("jqx-grid-group-collapse-rtl"));h.addClass(this.toThemeProperty("jqx-grid-group-expand-rtl"));h.removeClass(this.toThemeProperty("jqx-icon-arrow-left"));h.addClass(this.toThemeProperty("jqx-icon-arrow-down"))}f.next().show();var d=i.next();d.show();if(b.jqx.browser.msie&&b.jqx.browser.version<8){f.next().children().show();i.next().children().show()}if(!l.initialized){var j=l.detailsHeight;var m=this.initRowDetails(k,l.row,b(b(d).children().children().children()[0]),l);l.details=b(d).children().children().children()[0];l.initialized=true;if(m===false||l.detailsHeight!=j){if(m===false){l.expanded=false;l.nodetails=true;d.hide()}this._renderrows()}}this._updateScrollbars();if(this.height==="auto"||this.height===null||this.autoheight){this._arrange()}var g=this.getrowindex(l.row);var e=this.getrowdisplayindex(l.row);this._raiseEvent("rowExpand",{row:l.row,index:e,boundIndex:g,rowKey:k})}}},hidedetailsbykey:function(h){if(!this.rowDetails){return}var j=this.rowinfo[h];if(j){j.expanded=false;var d=b(this._table.children()[1]).children(("[data-key="+h+"]"));var e=b(this._pinnedTable.children()[1]).children(("[data-key="+h+"]"));if(d){var g=e.children();var i=b(g[0]);if(this.rtl){var i=b(g[g.length-1])}if(!this.rtl){i.addClass(this.toThemeProperty("jqx-grid-group-collapse"));i.removeClass(this.toThemeProperty("jqx-grid-group-expand"));i.addClass(this.toThemeProperty("jqx-icon-arrow-right"));i.removeClass(this.toThemeProperty("jqx-icon-arrow-down"))}else{i.addClass(this.toThemeProperty("jqx-grid-group-collapse-rtl"));i.removeClass(this.toThemeProperty("jqx-grid-group-expand-rtl"));i.addClass(this.toThemeProperty("jqx-icon-arrow-left"));i.removeClass(this.toThemeProperty("jqx-icon-arrow-down"))}d.next().hide();e.next().hide();if(b.jqx.browser.msie&&b.jqx.browser.version<8){d.next().children().hide();e.next().children().hide()}this._updateScrollbars();if(this.height==="auto"||this.height===null||this.autoheight){this._arrange()}var f=this.getrowindex(j.row);var c=this.getrowdisplayindex(j.row);this._raiseEvent("rowCollapse",{row:j.row,index:c,boundIndex:f,rowKey:h})}}},_getvirtualcolumnsindexes:function(d,l,h,k,c){if(this.rowDetails||this.rtl||this.editcell||(this.width&&this.width.toString().indexOf("%")>=0)||this.exporting){return{start:0,end:h+k}}var e=0;var i=-1;var f=h+k;if(this.autorowheight){return{start:0,end:h+k}}if(!c){for(var g=0;g<h+k;g++){var m=g;if(!this.columns.records[g].hidden){e+=this.columns.records[g].width}if(e>=d&&i==-1){i=g}if(e>l+d){f=g;break}}}f++;if(f>h+k){f=h+k}if(i==-1){i=0}return{start:i,end:f}},_renderhorizontalscroll:function(){var t=this.hScrollInstance;var u=t.value;if(this.hScrollBar.css("visibility")==="hidden"){t.value=0;u=0}var h=parseInt(u);if(this.table==null){return}var q=this.columnsrow;var r=0;var i=this.columns.records.length-r;var e=this.columns.records;var l=this.source.records.length==0;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){h=t.max-h}}if(l&&!this._haspinned){this.table[0].style.left=-h+"px";q[0].style.marginLeft=-h+"px"}else{if(this._haspinned||this._haspinned==undefined){for(var w=0;w<r+i;w++){var f=e[w];if(f.pinned){var g=null;if(this.showAggregates){if(this.statusbar[0].cells){g=this.statusbar[0].cells[w]}}if(this.filterrow){if(this.filterrow[0].cells){filtercell=this.filterrow[0].cells[w]}}if(!this.rtl){var c=q[0].cells[w];c.style.marginLeft=h+"px";if(g){g.style.marginLeft=h+"px"}if(this.filterrow&&filtercell){filtercell.style.marginLeft=h+"px"}}else{var c=q[0].cells[w];c.style.marginLeft=-parseInt(u)+"px";if(g){g.style.marginLeft=-parseInt(u)+"px"}if(this.filterrow&&filtercell){filtercell.style.marginLeft=-parseInt(u)+"px"}}}}if(this.columnsVirtualization){var s=this._getvirtualcolumnsindexes(h,this.host.width(),0,this.columns.records.length,false);var n=s.start;var p=s.end;for(var o=0;o<n;o++){var m=o;var v=this.columns.records[m].element[0];if(this.columns.records[m].pinned){continue}if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=p;o<this.columns.records.length;o++){var m=o;var v=this.columns.records[m].element[0];if(this.columns.records[m].pinned){continue}if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=n;o<p;o++){var m=o;v=this.columns.records[m].element[0];if(this.columns.records[m].pinned){continue}if(!v.parentNode){this.columnsrow[0].appendChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(!d.parentNode){this.filterrow[0].appendChild(d)}}}}this._table[0].style.left=-h+"px";q[0].style.marginLeft=-h+"px"}else{if(this._haspinned==false){if(this.columnsVirtualization){var s=this._getvirtualcolumnsindexes(h,this.host.width(),0,this.columns.records.length,false);var n=s.start;var p=s.end;for(var o=0;o<n;o++){var m=o;var v=this.columns.records[m].element[0];if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=p;o<this.columns.records.length;o++){var m=o;var v=this.columns.records[m].element[0];if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=n;o<p;o++){var m=o;v=this.columns.records[m].element[0];if(!v.parentNode){this.columnsrow[0].appendChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(!d.parentNode){this.filterrow[0].appendChild(d)}}}}this.table[0].style.left=-h+"px";q[0].style.marginLeft=-h+"px"}}if(this.filterrow){this.filterrow[0].style.left=-h+"px";if(this.rtl){this.filterrow[0].style.left=-h+parseInt(this.content.css("left"))+"px"}}}if(this.showAggregates){if(this.aggregates[0].cells){var k=0;if(this.rtl){if(this.vScrollBar.css("visibility")!="hidden"){if(this.hScrollBar.css("visibility")!="hidden"){k=2+parseInt(this.hScrollBar.css("left"))}else{k=3+parseInt(this.vScrollBar.width())}}}this.aggregates[0].style.marginLeft=-h+k+"px"}}},_initializeColumns:function(){var d=this.source.datafields;if(d==null&&this.source._source){d=this.source._source.datafields}var k=d?d.length>0:false;if(this.columns&&this.columns.records){for(var e=0;e<this.columns.records.length;e++){this._removecolumnhandlers(this.columns.records[e])}}var j=this;var c=new b.jqx.dataCollection(this.element);var h=0;this._haspinned=false;if(!this._columns){this._columns=this.columns}else{this.columns=this._columns}if(this.selectionMode=="checkbox"){var f=new a(j,this);f.visibleindex=h++;f.width=j.indentWidth;f.checkboxcolumn=true;f.editable=false;f.columntype="checkbox";f.groupable=false;f.draggable=false;f.filterable=false;f.resizable=false;f.datafield="_checkboxcolumn";c.add(f)}if(this.rowDetails&&!this.treeGrid){var f=new a(j,this);f.visibleindex=h++;f.width=j.indentWidth;f.editable=false;f.rowDetailscolumn=true;f.groupable=false;f.draggable=false;f.pinned=true;f.filterable=false;f.resizable=false;f.text="";c.add(f)}var g=new Array();b.each(this.columns,function(i){if(j.columns[i]!=undefined){var l=new a(j,this);l.visibleindex=h++;if(this.dataField!=undefined){this.datafield=this.dataField}if(this.pinned){j._haspinned=true}if(this.datafield==null){if(j.source&&j.source._source&&(j.source._source.datatype=="array")){if(!k){if(!j.source._source.datafields){j.source._source.datafields=new Array();j.source._source.datafields.push({name:i.toString()})}else{j.source._source.datafields.push({name:i.toString()})}}this.datafield=i.toString();this.displayfield=i.toString();l.datafield=this.datafield;l.displayfield=this.displayfield}}else{if(g[this.datafield]){throw new Error("jqxDataTable: Invalid column 'dataField' setting. jqxDataTable's columns should be initialized with unique data fields.");j.host.remove();return false}else{g[this.datafield]=true}}c.add(l)}});if(this.rtl){c.records.reverse()}this.columns=c},addFilter:function(c,e){var d=this.getColumn(c);if(!d){return}this.dataview.addFilter(c,e)},removeFilter:function(c){var d=this.getColumn(c);if(!d){return}this.dataview.removeFilter(c)},clearFilters:function(d,c){this.dataview.filters=new Array();this.dataview._filteredData=null;this.dataview._sortData=null;this.dataview._sortHierarchyData=null;if(c!==false){this.resetfilter()}if(d===false){return}this.applyFilters()},resetfilter:function(){if(this.filterinput){this.filterinput.val("")}if(this.filterrow){for(var e=0;e<this.filterrow[0].cells.length;e++){var c=this.filterrow[0].cells[e];var d=b(c).find("input:first");var h=b(c).find(".filterconditions");var g=this.columns.records[e];var k="";if(!g.filterable){continue}d.val("");var j=this.getcolumntypebydatafield(g);var f=new b.jqx.filter();switch(j){case"number":case"int":case"float":case"decimal":filtertype="numericfilter";conditions=f.getoperatorsbyfiltertype("numericfilter");break;case"boolean":case"bool":filtertype="booleanfilter";conditions=f.getoperatorsbyfiltertype("booleanfilter");break;case"date":case"time":filtertype="datefilter";conditions=f.getoperatorsbyfiltertype("datefilter");break;case"string":filtertype="stringfilter";conditions=f.getoperatorsbyfiltertype("stringfilter");break}if(h.length>0){if(filtertype==="stringfilter"){h.jqxDropDownList({selectedIndex:2})}else{h.jqxDropDownList({selectedIndex:0})}}}}},applyFilters:function(){if(this.editable){if(this.editKey!=null){var c=this.endroweditbykey(this.editKey)}}this.dataview._filteredData=null;this.dataview._sortData=null;this.dataview._sortHierarchyData=null;if(this.serverProcessing){this.dataview.pagenum=0;this.updateBoundData("filter")}else{this.goToPage(0);this.refresh()}if(arguments&&arguments.length>0){if(this._updateSimpleFilter){if(this.filtercolumnsList){var d=this.filtercolumnsList.jqxDropDownList("getSelectedItem").value;this._updateSimpleFilter(d)}}if(this._updateFilterRow){this._updateFilterRow()}}this._raiseEvent("filter",{filters:this.dataview.filters})},sortBy:function(d,f){this.dataview._filteredData=null;this.dataview._sortData=null;this.dataview._sortHierarchyData=null;if(this._loading){throw new Error("jqxDataTable: "+this.loadingErrorMessage);return false}if(this.editable){if(this.editKey!=null){var c=this.endroweditbykey(this.editKey)}}if(d==null){f=null;d=this.sortcolumn}if(d){var e=this;if(f=="a"||f=="asc"||f=="ascending"||f==true){ascending=true}else{ascending=false}if(f!=null){e.sortdirection={ascending:ascending,descending:!ascending}}else{e.sortdirection={ascending:false,descending:false}}if(f!=null){e.sortcolumn=d}else{e.sortcolumn=null}if(e.source.sort){e.dataview.sortfield=d;if(f==null){e.dataview.sortfielddirection=""}else{e.dataview.sortfielddirection=ascending?"asc":"desc"}if(e.source.sort&&!this._loading){e.source.sort(d,f)}}e.dataview.sortBy(d,f);e._raiseEvent("sort",{sortcolumn:this.sortcolumn,sortdirection:this.sortdirection})}if(!this.serverProcessing){this.refresh()}else{this.updateBoundData("sort")}},_togglesort:function(d){var f=this;if(this.disabled){return}if(d.sortable&&f.sortable){var c={sortcolumn:this.sortcolumn,sortdirection:this.sortdirection};var e=null;if(c.sortcolumn!=null&&c.sortcolumn==d.displayfield){e=c.sortdirection.ascending;if(e==true){e=false}else{e=null}}else{e=true}f.sortBy(d.displayfield,e)}},_renderfilter:function(){var h=this;var j=b("<div style='position: relative; margin: 4px;'><input style='height: 22px; direction: ltr;' role='textbox' type='text'/><div style='cursor: pointer; height: 100%;'><div></div></div></div>");j.height(22);var o=j.find("input");var g=j.find("div:first");j.addClass(this.toThemeProperty("jqx-rc-all"));j.addClass(this.toThemeProperty("jqx-widget"));j.addClass(this.toThemeProperty("jqx-input-group"));o.addClass(this.toThemeProperty("jqx-input"));o.addClass(this.toThemeProperty("jqx-rc-l"));o.addClass(this.toThemeProperty("jqx-input-group-addon"));o.addClass(this.toThemeProperty("jqx-widget"));o.addClass(this.toThemeProperty("jqx-widget-content"));g.addClass(this.toThemeProperty("jqx-fill-state-normal"));g.addClass(this.toThemeProperty("jqx-rc-r"));g.addClass(this.toThemeProperty("jqx-input-group-addon"));g.find("div").addClass(this.toThemeProperty("jqx-icon-search"));if(this.rtl){o.addClass(this.toThemeProperty("jqx-rtl"));o.css("direction","rtl")}this.filter.children().remove();this.filterbutton=g;var d=new Array();for(var f=0;f<h.columns.records.length;f++){if(h.columns.records[f].datafield&&h.columns.records[f].filterable){d.push({label:h.columns.records[f].text,value:h.columns.records[f].displayfield})}}var p=d.length<10?true:false;var l=b("<div style='position: relative; top: 50%; display: none; margin-right: 4px; margin-left: 4px; float: left;'>"+this.gridlocalization.filtersearchstring+"</div>");this.filter.append(l);var c=b("<div class='filtercolumns' style='position: relative; margin: 4px; float: left;'></div>");this.filter.append(c);if(c.jqxDropDownList){c.jqxDropDownList({theme:this.theme,enableBrowserBoundsDetection:true,autoDropDownHeight:p,rtl:h.rtl,dropDownWidth:220,selectedIndex:0,width:"auto",height:20,source:d,displayMember:"label",valueMember:"value"})}this.filtercolumnsList=c;var n=function(q){h.filterinput.val("");for(var r=0;r<h.dataview.filters.length;r++){var s=h.dataview.filters[r];if(s.datafield===q){h.filterinput.val(s.filter.getfilterat(0).filtervalue)}}};if(h.filterHeight!==30){h.filtercolumnsList.css("margin-top",h.filterHeight/2-10);j.css("margin-top",h.filterHeight/2-10)}h._updateSimpleFilter=n;this.addHandler(c,"select",function(q){var i=q.args.item.value;n(i)});if(this.filterMode==="simple"){this.filtercolumnsList.hide();l.show();l.css("margin-top",-this.filter.height()/2);j.css("float","left")}else{this.filtercolumnsList.show();l.hide()}var m=function(){if(!g.hasClass("jqx-fill-state-disabled")){var r=o.val();if(c.jqxDropDownList){var u=c.jqxDropDownList("getSelectedItem")}var w=function(B,x,i){var A=new b.jqx.filter();var z=h.getcolumntypebydatafield(B);var C=h._getfiltertype(z);if(C=="datefilter"){var y=A.createfilter(C,x,"EQUAL",null,B.cellsFormat,h.gridlocalization)}else{if(C=="numericfilter"||C=="booleanfilter"){if(C=="numericfilter"){if(h.gridlocalization.decimalseparator==","){if(x.indexOf(h.gridlocalization.decimalseparator)>=0){x=x.replace(h.gridlocalization.decimalseparator,".")}}if(x.indexOf(h.gridlocalization.currencysymbol)>=0){x=x.replace(h.gridlocalization.currencysymbol,"")}if(x.indexOf(h.gridlocalization.percentagesymbol)>=0){x=x.replace(h.gridlocalization.percentagesymbol,"")}}var y=A.createfilter(C,x,"EQUAL",null,B.cellsFormat,h.gridlocalization)}else{var y=A.createfilter(C,x,"CONTAINS")}}A.operator=i;A.addfilter(0,y);return A};if(h.filterMode!=="simple"){if(u){var v=u.value;var t=h.getColumn(v);var s=w(t,r,"and");if(r.length>0){h.removeFilter(v);h.addFilter(v,s);h.applyFilters()}else{h.removeFilter(v);h.applyFilters()}if(h.filterMode==="advanced"){if(h._updateFilterRow){h._updateFilterRow(true)}}}}else{h.clearFilters(false,false);if(r.length>0){for(var q=0;q<h.columns.records.length;q++){var t=h.columns.records[q];var s=w(t,r,"or");h.addFilter(t.datafield,s)}}h.applyFilters()}if(h.dataview.filters.length==0){h.filtericon.fadeOut(200)}else{h.filtericon.fadeIn(200)}}};o.keydown(function(i){if(i.keyCode===13){m();if(i.preventDefault){i.preventDefault()}return false}});g.click(function(){m()});this.filterinput=o;this.filter.append(j);if(this.filterMode=="advanced"){var e=b("<a style='float: left; position: relative; margin: 2px; margin-left: 10px;' href='#'>"+this.gridlocalization.filterstring+"</a>");j.append(e);this.addHandler(e,"click",function(q){var i=function(u){if(h.filterrow){for(var x=0;x<h.filterrow[0].cells.length;x++){var t=h.filterrow[0].cells[x];var v=b(t).find("input:first");var z=h.columns.records[x];if(!z.filterable){continue}if(u===true){v.val("")}for(var w=0;w<h.dataview.filters.length;w++){var y=h.dataview.filters[w];if(y.datafield===z.displayfield){v.val(y.filter.getfilterat(0).filtervalue);break}}}}};var s=function(v){if(h.filterrow){var u=0;for(var x=0;x<h.filterrow[0].cells.length;x++){var t=h.filterrow[0].cells[x];var w=b(t).find("input:first");var y=h.columns.records[x];if(y.hidden){t.style.visibility="hidden"}else{t.style.visibility="inherit"}if(!y.filterable){continue}t.style.left=parseInt(u)+parseInt(y.uielement[0].style.left)+"px";t.style.width=6+y.width+"px";if(w[0]){w[0].style.width=y.width-6-22+"px"}}}};h._updateFilterRow=i;h._arrangeFilterRow=s;var r=function(){h.filtercolumnsList.jqxDropDownList({disabled:true});h.filterinput.addClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filterinput.attr("disabled",true);h.filterbutton.addClass(h.toThemeProperty("jqx-fill-state-disabled"))};if(h.filter.find(".filterrow").length===0){h._renderadvancedfilter();r();i();h._arrange();s()}else{if(h.filter.find(".filterrow").css("display")==="none"){r();h.filter.find(".filterrow").removeClass("filterrow-hidden");i();h.filter.find(".filterrow").show();s()}else{h.filtercolumnsList.jqxDropDownList({disabled:false});h.filterinput.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filterinput.attr("disabled",false);h.filterbutton.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));n(h.filtercolumnsList.jqxDropDownList("getSelectedItem").value);h.filter.find(".filterrow").addClass("filterrow-hidden");h.filter.find(".filterrow").hide()}h._arrange()}return false})}var k=b("<div style='float: left; width: 16px; height: 16px; position: relative; margin: 3px;'></div>");k.attr("title",h.gridlocalization.filterclearstring);k.addClass(h.toThemeProperty("jqx-icon-close"));j.append(k);k.hide();h.filtericon=k;k.click(function(){h.clearFilters();h.filtericon.fadeOut(200)});if(h.dataview.filters.length>0){if(h.filterMode!="advanced"){n(h.dataview.filters[0].datafield)}else{if(h._updateFilterRow){h._updateFilterRow()}}}},_renderadvancedfilter:function(){var h=this;var c=function(){h.clearFilters(false,false);var n=h.filtercolumnsList.jqxDropDownList("getSelectedItem").value;var p=h.filterinput.val();for(var m=0;m<h.filterrow[0].cells.length;m++){var t=h.filterrow[0].cells[m];var s=b(t).find("input:first");var q=b(t).find(".filterconditions");var l=h.columns.records[m];var k="";if(!l.filterable){continue}if(l.displayfield===n){h.filterinput.val(s.val())}var o=h.getcolumntypebydatafield(l);var j=new b.jqx.filter();switch(o){case"number":case"int":case"float":case"decimal":filtertype="numericfilter";conditions=j.getoperatorsbyfiltertype("numericfilter");break;case"boolean":case"bool":filtertype="booleanfilter";conditions=j.getoperatorsbyfiltertype("booleanfilter");break;case"date":case"time":filtertype="datefilter";conditions=j.getoperatorsbyfiltertype("datefilter");break;case"string":filtertype="stringfilter";conditions=j.getoperatorsbyfiltertype("stringfilter");break}if(q.length==0){if(filtertype==="stringfilter"){k=conditions[2]}else{k=conditions[0]}}else{var w=q.jqxDropDownList("getSelectedItem");if(w){k=conditions[w.index]}else{if(filtertype==="stringfilter"){k=conditions[2]}else{k=conditions[0]}}}var u=s.val();if(u.length>0||(u.length==0&&k=="NOT_NULL")||(u.length==0&&k=="NOT_EMPTY")||(u.length==0&&k=="EMPTY")||(u.length==0&&k=="NULL")){var r=l.displayfield;var v=new b.jqx.filter();if(filtertype=="numericfilter"){if(h.gridlocalization.decimalseparator==","){if(u.indexOf(h.gridlocalization.decimalseparator)>=0){u=u.replace(h.gridlocalization.decimalseparator,".")}}if(u.indexOf(h.gridlocalization.currencysymbol)>=0){u=u.replace(h.gridlocalization.currencysymbol,"")}if(u.indexOf(h.gridlocalization.percentagesymbol)>=0){u=u.replace(h.gridlocalization.percentagesymbol,"")}}var j=v.createfilter(filtertype,u,k,null,l.cellsFormat,h.gridlocalization);v.addfilter(0,j);h.addFilter(r,v)}}if(h.dataview.filters.length>0){h.applyFilters()}else{h.clearFilters()}if(h.dataview.filters.length==0){h.filtericon.fadeOut(200)}else{h.filtericon.fadeIn(200)}};var e=function(){var m=b("<div style='position: relative;' class='filterrow'></div>").appendTo(h.filter);h.filterrow=m;m[0].cells=new Array();m.height(24);m.width(h.table.width());var k=0;var j=h.filtercolumnsList.jqxDropDownList("getSelectedItem").value;var l=h.filterinput.val();b.each(h.columns.records,function(){var p=this;var n=b("<div></div>").appendTo(m);n.css("position","absolute");n.css("left",k+parseInt(p.uielement[0].style.left));if(p.pinned){n.css("z-index",h.tableZIndex+h.columns.records.length);n.addClass(h.toThemeProperty("jqx-widget-header"))}m[0].cells.push(n[0]);if(!this.filterable){return true}var o=b("<input style='margin-left: 4px; height: 20px; float: left;' role='textbox' type='text'/>").appendTo(n);o.keydown(function(r){if(r.keyCode===13){c()}});if(p.displayfield===j){o.val(l)}o.addClass(h.toThemeProperty("jqx-input"));o.addClass(h.toThemeProperty("jqx-rc-all"));o.addClass(h.toThemeProperty("jqx-widget"));o.addClass(h.toThemeProperty("jqx-widget-content"));var q=b("<div style='cursor: pointer; margin-left: 4px; margin-bottom: 4px; margin-top: 6px; width: 18px; position: relative; margin-top: 4px; float: left;'></div>").appendTo(n);q.append(b("<div style='width: 16px; height: 16px;' class='"+h.toThemeProperty("jqx-grid-column-filterbutton")+"'></div>"));o.focus(function(){h.ensureColumnVisible(p.displayfield);h.filter[0].scrollLeft=0;h.ensureColumnVisible(p.displayfield);setTimeout(function(){h.filter[0].scrollLeft=0;h.ensureColumnVisible(p.displayfield)},10)});q.click(function(){var t=b("<div class='filterconditions' style='position: relative; margin-top: 1px; float: left;'></div>");t.insertAfter(q);q.remove();var r=h.getcolumntypebydatafield(p);var s=h._getfiltersbytype(r);if(r==="string"){index=2}else{index=0}t.jqxDropDownList({theme:h.theme,enableBrowserBoundsDetection:true,renderMode:"simple",arrowSize:0,selectedIndex:index,rtl:h.rtl,dropDownWidth:230,dropDownHeight:180,width:20,height:20,source:s,selectionRenderer:function(){return"<div style='width: 16px; height: 16px;' class='"+h.toThemeProperty("jqx-grid-column-filterbutton")+"'></div>"}});h.addHandler(t,"close",function(u){o.focus();setTimeout(function(){o.focus()},10)});t.removeAttr("tabindex");t.find("div").removeAttr("tabindex");t.jqxDropDownList("open")});o[0].style.width=p.width-6-22+"px"});b("<div style='clear: both;'></div>").appendTo(m)};e();var i=b("<div style='position:relative;' class='filterrow'></div>").appendTo(h.filter);var f=b("<input type='button' style='position: relative; float: left; margin-top: 4px; margin-left: 4px;' value='"+h.gridlocalization.filterapplystring+"'/>").appendTo(i);var g=b("<input type='button' style='position: relative; float: left; margin-top: 4px;  margin-left: 4px;' value='"+h.gridlocalization.filtercancelstring+"'/>").appendTo(i);var d=0;f.css("left",d);g.css("left",d);f.jqxButton({theme:h.theme});g.jqxButton({theme:h.theme});g.click(function(){h.filtercolumnsList.jqxDropDownList({disabled:false});h.filterinput.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filterinput.attr("disabled",false);h.filterbutton.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filter.find(".filterrow").addClass("filterrow-hidden");h.filter.find(".filterrow").hide();h._arrange()});f.click(function(){c()});h._renderhorizontalscroll()},_getfiltertype:function(c){var d="stringfilter";switch(c){case"number":case"int":case"float":case"decimal":d="numericfilter";break;case"boolean":case"bool":d="booleanfilter";break;case"date":case"time":d="datefilter";break;case"string":d="stringfilter";break}return d},getcolumntypebydatafield:function(e){var f=this;var d="string";var c=f.source.datafields||((f.source._source)?f.source._source.datafields:null);if(c){var g="";b.each(c,function(){if(this.name==e.displayfield){if(this.type){g=this.type}return false}});if(g){return g}}return d},_getfiltersbytype:function(c){var d=this;var e="";switch(c){case"number":case"float":case"int":e=d.gridlocalization.filternumericcomparisonoperators;break;case"date":e=d.gridlocalization.filterdatecomparisonoperators;break;case"boolean":case"bool":e=d.gridlocalization.filterbooleancomparisonoperators;break;case"string":default:e=d.gridlocalization.filterstringcomparisonoperators;break}return e},_getcellvalue:function(c,e){var d=null;d=e[c.datafield];if(c.displayfield!=null){d=e[c.displayfield]}if(d==null){d=""}return d},_renderrows:function(ap){if(this.editable){if(this.editKey!=null){if(ap!==false){var M=this.endroweditbykey(this.editKey)}}}if(this.treeGrid){this.treeGrid._renderrows();return}if(this._loading){return}if(this._updating){return}if(this.rendering){this.rendering()}var ab=this;var T=0;this.table[0].rows=new Array();var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-widget-content");if(this.rtl){H+=" "+this.toTP("jqx-cell-rtl")}var K=this.columns.records.length;var ao=b.jqx.browser.msie&&b.jqx.browser.version<8;if(ao){this.host.attr("hideFocus","true")}var R=ab.groups.length;var ai=new Array();var k=this.source.records;k=this.dataview.evaluate(k);this.dataViewRecords=k;if(this.dataview.pagesize=="all"||!this.pageable||this.serverProcessing){var u=k;if(this.pageable&&this.serverProcessing&&k.length>this.dataview.pagesize){var u=k.slice(this.dataview.pagesize*this.dataview.pagenum,this.dataview.pagesize*this.dataview.pagenum+this.dataview.pagesize)}}else{var u=k.slice(this.dataview.pagesize*this.dataview.pagenum,this.dataview.pagesize*this.dataview.pagenum+this.dataview.pagesize)}if(ab.groups&&ab.groups.length>0){var P=this.pageable?this.dataview.pagesize*this.dataview.pagenum:0;var z=function(w){var au=0;var i=new Array();for(var c=0;c<w.length;c++){var j=w[c];if(j.level==0){au++}if(au>ab.dataview.pagesize*ab.dataview.pagenum&&au<=ab.dataview.pagesize*ab.dataview.pagenum+ab.dataview.pagesize){i.push(j)}if(au>ab.dataview.pagesize*ab.dataview.pagenum+ab.dataview.pagesize){break}}return i};if(this.pageSizeMode==="root"){var v=ab.source.getGroupedRecords(ab.groups,"records","label",null,"data",null,"parent",k,0);ab.rootRecordsLength=v.length;v=z(v)}else{var v=ab.source.getGroupedRecords(ab.groups,"records","label",null,"data",null,"parent",u,P)}var y=function(j,w){for(var av=0;av<j.length;av++){var c=j[av];w.push(c);if(c.records&&c.records.length>0){var aw=y(c.records,new Array());for(var au=0;au<aw.length;au++){if(aw[au].leaf){w.push(aw[au])}else{w.push(aw[au])}}}}return w};var ai=y.call(ab,v,new Array());u=ai;this.rowsByKey=new Array();for(var am=0;am<u.length;am++){var G=u[am];this.rowsByKey[G.uid]=G}}var ai=u;this.renderedRecords=ai;var U=ai.length;var V=this.tableZIndex;var aq=0;var aa=0;if(ao){for(var al=0;al<K;al++){var Z=this.columns.records[al];var e=Z.width;if(e<Z.minwidth){e=Z.minwidth}if(e>Z.maxwidth){e=Z.maxwidth}var l=b('<table><tr><td role="gridcell" style="max-width: '+e+"px; width:"+e+'px;" class="'+H+'"></td></tr></table>');b(document.body).append(l);var n=l.find("td");aq=1+parseInt(n.css("padding-left"))+parseInt(n.css("padding-right"));l.remove();break}}var ak=this.rtl?" "+this.toTP("jqx-grid-table-rtl"):"";var B="<table cellspacing='0' cellpadding='0' class='"+this.toTP("jqx-grid-table")+ak+"' id='table"+this.element.id+"'><colgroup>";var ar="<table cellspacing='0' cellpadding='0' class='"+this.toTP("jqx-grid-table")+ak+"' id='pinnedtable"+this.element.id+"'><colgroup>";var I=0;var s=K;for(var al=0;al<K;al++){var Z=this.columns.records[al];if(Z.hidden){I++;s--;continue}var e=Z.width;if(e<Z.minwidth){e=Z.minwidth}if(e>Z.maxwidth){e=Z.maxwidth}e-=aq;if(e<0){e=0}if(ao){var ac=e;if(al==I){ac++}if(Z.rowDetailscolumn){var ac=ac+4;ar+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>";B+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>"}else{ar+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>";B+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>"}}else{ar+="<col style='max-width: "+e+"px; width: "+e+"px;'>";B+="<col style='max-width: "+e+"px; width: "+e+"px;'>"}aa+=e}B+="</colgroup>";ar+="</colgroup>";this._hiddencolumns=false;var g=false;if(this.rowDetails&&this._pinnedTable){this._pinnedTable.find("[data-role=details]").detach();this._table.find("[data-role=details]").detach()}if(U===0){var o='<tr role="row">';var m=this.host.height();if(this.pageable){m-=this.pagerHeight;if(this.pagerPosition==="both"){m-=this.pagerHeight}}m-=this.columnsHeight;if(this.filterable){var ag=this.filter.find(".filterrow");var D=this.filter.find(".filterrow-hidden");var C=1;if(D.length>0){C=0}m-=this.filterHeight+this.filterHeight*ag.length*C}if(this.showstatusbar){m-=this.statusBarHeight}if(this.showAggregates){m-=this.aggregatesHeight}if(m<25){m=25}if(this.hScrollBar[0].style.visibility!="hidden"){m-=this.hScrollBar.outerHeight()}if(this.height==="auto"||this.height===null||this.autoheight){m=300}var l='<td colspan="'+this.columns.records.length+'" role="gridcell" style="border: none; min-height: '+m+"px; height: "+m+"px; max-width:"+aa+"px; width:"+aa+"px;";var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");H+=" "+this.toTP("jqx-center-align");l+='" class="'+H+'">';l+=this.gridlocalization.emptydatastring;l+="</td>";o+=l;B+=o;ar+=o;this.table[0].style.width=aa+2+"px";T=aa}var q=this.getRows();var x=new Array();for(var am=0;am<ai.length;am++){var G=ai[am];var L=G.uid;if(undefined===G.uid){G.uid=this.dataview.generatekey()}var o='<tr data-key="'+L+'" role="row" id="row'+am+this.element.id+'">';var E='<tr data-key="'+L+'" role="row" id="row'+am+this.element.id+'">';if(R>0){if(G.level<R){var o='<tr data-role="row-group" data-key="'+L+'" role="row" id="row'+am+this.element.id+'">';var E='<tr data-role="row-group" data-key="'+L+'" role="row" id="row'+am+this.element.id+'">'}}var p=0;var S=0;for(var al=0;al<K;al++){var ae=this.columns.records[al];if(ae.pinned||(this.rtl&&this.columns.records[K-1].pinned)){g=true}var e=ae.width;if(e<ae.minwidth){e=ae.minwidth}if(e>ae.maxwidth){e=ae.maxwidth}e-=aq;if(e<0){e=0}var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");if(ae.pinned){H+=" "+this.toTP("jqx-grid-cell-pinned")}if(this.sortcolumn===ae.displayfield){H+=" "+this.toTP("jqx-grid-cell-sort")}if(this.altRows&&am%2!=0){H+=" "+this.toTP("jqx-grid-cell-alt")}if(this.rtl){H+=" "+this.toTP("jqx-cell-rtl")}var O="";if(R>0){if(G.level<R){if(!ao){H+=" "+this.toTP("jqx-grid-cell-pinned");O+=' colspan="'+K+'"';var ac=0;for(var ad=0;ad<K;ad++){var at=ab.columns.records[ad];var A=at.width;if(A<at.minwidth){e=at.minwidth}if(A>at.maxwidth){e=at.maxwidth}A-=aq;if(A<0){A=0}if(!at.hidden){ac+=A}}e=ac}else{H+=" "+this.toTP("jqx-grid-cell-pinned")}}}var l='<td role="gridcell" '+O+' style="max-width:'+e+"px; width:"+e+"px;";var af='<td role="gridcell" '+O+' style="pointer-events: none; visibility: hidden; border-color: transparent; max-width:'+e+"px; width:"+e+"px;";if(al==K-1&&K==1){l+="border-right-color: transparent;";af+="border-right-color: transparent;"}var Y=false;if(R>0){if(G.level<R){Y=true}}if(!Y){if(ae.cellsalign!="left"){if(ae.cellsalign==="right"){H+=" "+this.toTP("jqx-right-align")}else{H+=" "+this.toTP("jqx-center-align")}}}else{if(this.rtl){H+=" "+this.toTP("jqx-right-align")}}if(this.rowinfo[G.uid]){if(this.rowinfo[G.uid].selected&&!ae.rowDetailscolumn){if(this.editKey!==G.uid){if(this.selectionMode!=="none"){H+=" "+this.toTP("jqx-grid-cell-selected");H+=" "+this.toTP("jqx-fill-state-pressed")}}}if(this.rowinfo[G.uid].locked){H+=" "+this.toTP("jqx-grid-cell-locked")}}if(!(ae.hidden)){p+=aq+e;if(S==0){l+="border-left-width: 0px;";af+="border-left-width: 0px;"}S++}else{if(!Y){l+="display: none;";af+="display: none;";this._hiddencolumns=true}}if(R>0&&ao&&Y&&al>=R){l+="font-size: 1px; border-color: transparent;  color: transparent;";af+="font-size: 1px; border-color: transparent; color: transparent;"}if(ae.pinned){l+="pointer-events: auto;";af+="pointer-events: auto;"}if(!Y&&ae.rowDetailscolumn){if(this.rowinfo[G.uid]){if(!this.rowinfo[G.uid].nodetails){if(this.rowinfo[G.uid].expanded){if(!this.rtl){H+=" "+this.toTP("jqx-grid-group-expand")}else{H+=" "+this.toTP("jqx-grid-group-expand-rtl")}H+=" "+this.toTP("jqx-icon-arrow-down")}else{if(!this.rtl){H+=" "+this.toTP("jqx-grid-group-collapse");H+=" "+this.toTP("jqx-icon-arrow-right")}else{H+=" "+this.toTP("jqx-grid-group-collapse-rtl");H+=" "+this.toTP("jqx-icon-arrow-left")}}}}else{if(!this.rtl){H+=" "+this.toTP("jqx-grid-group-collapse");H+=" "+this.toTP("jqx-icon-arrow-right")}else{H+=" "+this.toTP("jqx-grid-group-collapse-rtl");H+=" "+this.toTP("jqx-icon-arrow-left")}}}if(!this.autoRowHeight||(this.autoRowHeight&&!ae.autoCellHeight)){H+=" "+this.toTP("jqx-grid-cell-nowrap ")}var aj=ab._getcellvalue(ae,G);var f=ae.cellsFormat;if(R>0){if(G.level<R){aj=G.label;f=ab.getColumn(ab.groups[G.level]).cellsFormat}}if(f!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(aj)){aj=b.jqx.dataFormat.formatdate(aj,f,ab.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(aj)||(!isNaN(parseFloat(aj))&&isFinite(aj))){aj=b.jqx.dataFormat.formatnumber(aj,f,ab.gridlocalization)}}}}if(!Y){if(ae.cellclassname!=""&&ae.cellclassname){if(typeof ae.cellclassname=="string"){H+=" "+ae.cellclassname}else{var r=ae.cellclassname(am,ae.datafield,aj,G);if(r){H+=" "+r}}}if(ae.cellsRenderer!=""&&ae.cellsRenderer){var d=q.indexOf(G);if(d===-1){if(G.originalRecord){var d=q.indexOf(G.originalRecord)}}aj=ae.cellsRenderer(d,ae.datafield,aj,G);if(aj&&(aj.indexOf("<jqx-")>=0||aj.indexOf(" ng-")>=0)){x.push({rowKey:G.uid,row:d,column:ae.datafield,value:aj,columnIndex:al})}}}else{if(this.groupsRenderer){aj=this.groupsRenderer(aj,G,G.level)}}l+='" class="'+H+'">';l+=aj;l+="</td>";af+='" class="'+H+'">';af+=aj;af+="</td>";if(!ae.pinned){o+=l;if(g){E+=af}}else{E+=l;o+=l}if(R>0&&!ao){if(G.level<R){break}}}if(T==0){this.table[0].style.width=p+2+"px";T=p}o+="</tr>";E+="</tr>";B+=o;ar+=E;if(!this.rowinfo[G.uid]){this.rowinfo[G.uid]={group:Y,row:G,details:null,detailsHeight:200,initialized:false,expanded:false}}else{if(!("group" in this.rowinfo[G.uid])){this.rowinfo[G.uid].group=Y}if(!("row" in this.rowinfo[G.uid])){this.rowinfo[G.uid].row=G}if(!("details" in this.rowinfo[G.uid])){this.rowinfo[G.uid].details=null}if(!("detailsHeight" in this.rowinfo[G.uid])){this.rowinfo[G.uid].detailsHeight=200}if(!("initialized" in this.rowinfo[G.uid])){this.rowinfo[G.uid].initialized=false}if(!("expanded" in this.rowinfo[G.uid])){this.rowinfo[G.uid].expanded=false}}if(this.serverProcessing){this.rowinfo[G.uid].row=G}if(this.rowDetails){var F=this.rowinfo[G.uid].detailsHeight;if(this.rowinfo[G.uid]){if(this.rowinfo[G.uid].expanded){var ah='<tr data-role="row-details"><td valign="top" style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+this.columns.records.length+'" role="gridcell"'}else{var ah='<tr data-role="row-details" style="display: none;"><td valign="top" style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+this.columns.records.length+'" role="gridcell"'}}else{var ah='<tr data-role="row-details" style="display: none;"><td valign="top" style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+this.columns.records.length+'" role="gridcell"'}var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");H+=" "+this.toTP("jqx-details");H+=" "+this.toTP("jqx-reset");ah+='" class="'+H+'"><div style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px;"><div data-role="details"></div></div></td></tr>';B+=ah;ar+=ah}}B+="</table>";ar+="</table>";if(g){if(ab.WinJS){MSApp.execUnsafeLocalFunction(function(){ab.table.html(ar+B)})}else{ab.table[0].innerHTML=ar+B}var W=this.table.find("#table"+this.element.id);var X=this.table.find("#pinnedtable"+this.element.id);X.css("float","left");X.css("pointer-events","none");W.css("float","left");X[0].style.position="absolute";W[0].style.position="relative";W[0].style.zIndex=V-10;X[0].style.zIndex=V+10;this._table=W;this._table[0].style.left="0px";this._pinnedTable=X;this._pinnedTable[0].style.left="0px";this._pinnedTable[0].style.width=T+"px";this._table[0].style.width=T+"px";if(this.rtl){if(T>parseInt(this.element.style.width)&&this._haspinned){this._pinnedTable[0].style.left=3-T+parseInt(this.element.style.width)+"px"}}if(this.rowDetails){for(var am=0;am<U;am++){var G=ai[am];var L=G.uid;if(this.rowinfo[L].details){var N=b(this._table.children()[1]).children(("[data-key="+L+"]"));var Q=b(this._pinnedTable.children()[1]).children(("[data-key="+L+"]"));if(N){var h=Q.next();var J=b(b(h).children().children());J.children().detach();J.append(this.rowinfo[G.uid].details)}}}}}else{if(ab.WinJS){MSApp.execUnsafeLocalFunction(function(){ab.table.html(B)})}else{ab.table[0].innerHTML=B}var ad=this.table.find("#table"+this.element.id);this._table=ad;if(b.jqx.browser.msie&&b.jqx.browser.version<10){this._table[0].style.width=T+"px"}if(U===0){this._table[0].style.width=(2+T)+"px"}}if(U===0){this._table[0].style.tableLayout="auto";if(this._pinnedTable){this._pinnedTable[0].style.tableLayout="auto"}}if(x&&x.length>0){var an=this._table[0].rows;b.each(x,function(){var w=this.row;var au=this.rowKey;var j=this.column;var i=this.columnIndex;var t=ab._getuirow(au);if(t){var c=t[0].cells[i];if(b.jqx.angularCompile){b.jqx.angularCompile(c,"<div>"+c.innerHTML+"</div>")}}})}if(this.rendered){this.rendered()}},getcolumnindex:function(c){var d=this.getColumn(c);var e=this.columns.records.indexOf(d);return e},setcolumnindex:function(e,i,j){var h=this.getColumn(e);if(h.pinned){return}if(h.hidden){return}if(h.checkboxcolumn){return}if(h.grouped){return}var l=this.columns.records.indexOf(h);this.columns.records.splice(l,1);this.columns.records.splice(i,0,h);var f=0;var n=this.headerZIndex;this.columnsrow.children().detach();var k=this.toThemeProperty("jqx-grid-cell");k+=" "+this.toThemeProperty("jqx-grid-cell-pinned");k+=" "+this.toThemeProperty("jqx-item");var m=this;var c=null;if(m.filterrow!=undefined){var c=b(m.filterrow.children()[0])}this.columnsrow[0].cells=[];var g=false;b.each(this.columns.records,function(p,s){var q=this.uielement;m.columnsrow.append(q);if(!m.rtl){q.css("z-index",n--)}else{q.css("z-index",n++)}var o=!m.rtl?250+n-1:250+n+1;if(this.pinned){q.css("z-index",o)}var r=this.width;q.css("left",f);m.columnsrow[0].cells[m.columnsrow[0].cells.length]=q[0];if(this.hidden){g=true}if(!(this.hidden&&this.hideable)){f+=r}});if(this.groupable){var d=this.groups.length;if(d>0){if(l-d>=0){l-=d;i-=d}}}if(this.rowDetails){if(l-1>=0){l--;i--}}if(this.selectionMode=="checkbox"){if(l-1>=0){l--;i--}}var h=this._columns[l];this._columns.splice(l,1);this._columns.splice(i,0,h);this.resize();this._rendercolumnGroups();this._raiseEvent("columnReordered",{dataField:h.datafield,oldIndex:l,newIndex:i})},_pinnedColumnsLength:function(){var c=0;b.each(this.columns.records,function(){if(this.pinned){c++}if(this.grouped){c++}});if(this.rowDetails){c++}if(this.selectionMode=="checkbox"){c++}return c},_handlecolumnsReorder:function(){var g=this;var h=-1;var d=false;if(!g.columnsReorder){return}var f="mousemove.reorder"+this.element.id;var e="mousedown.reorder"+this.element.id;var i="mouseup.reorder"+this.element.id;var c=false;if(this.isTouchDevice()&&this.touchmode!==true){c=true;f=b.jqx.mobile.getTouchEventName("touchmove")+".reorder"+this.element.id;e=b.jqx.mobile.getTouchEventName("touchstart")+".reorder"+this.element.id;i=b.jqx.mobile.getTouchEventName("touchend")+".reorder"+this.element.id}this.removeHandler(b(document),f);this.addHandler(b(document),f,function(x){if(g.resizing){return true}if(g.reordercolumn!=null){var m=parseInt(x.pageX);var u=parseInt(x.pageY);if(c){var t=g.getTouches(x);var p=t[0];if(p!=undefined){m=parseInt(p.pageX);u=parseInt(p.pageY)}}var j=g.host.coord();var w=parseInt(j.left);var k=parseInt(j.top);if(g.dragmousedownoffset==undefined||g.dragmousedownoffset==null){g.dragmousedownoffset={left:0,top:0}}var B=parseInt(m)-parseInt(g.dragmousedownoffset.left);var s=parseInt(u)-parseInt(g.dragmousedownoffset.top);g.reordercolumn.css({left:B+"px",top:s+"px"});d=false;if(m>=w&&m<=w+g.host.width()){if(u>=k&&u<=k+g.host.height()){d=true}}h=-1;if(d){g.reordercolumnicon.removeClass(g.toThemeProperty("jqx-grid-dragcancel-icon"));g.reordercolumnicon.addClass(g.toThemeProperty("jqx-grid-drag-icon"));var n=g.columnsheader.coord();var q=n.top+g.columnsheader.height();if(g.columnsdropline!=null){if(u>=n.top&&u<=q){h=g._handlereordercolumnsdroplines(m);if(g.columnGroups){if(h!=-1){var l=0;l+=g._pinnedColumnsLength();var o=h.index;if(o>=l){var y=g.columns.records[o];if(y!=undefined){var v=g.columns.records.indexOf(g.getColumn(y.datafield));if(y.datafield==null){var v=g.columns.records.indexOf(g.getcolumnbytext(y.text))}var r=b.data(g.reordercolumn[0],"reorderrecord");var A=g.columns.records.indexOf(g.getColumn(r));var z=y;if(A<v){if(h.position=="before"){z=g.columns.records[v-1]}}if(z.columngroup!=g.getColumn(r).columngroup){g.columnsdropline.hide();return}}}}}}else{g.columnsdropline.fadeOut("slow")}}}else{if(g.columnsdropline!=null){g.columnsdropline.fadeOut("slow")}g.reordercolumnicon.removeClass(g.toThemeProperty("jqx-grid-drag-icon"));g.reordercolumnicon.addClass(g.toThemeProperty("jqx-grid-dragcancel-icon"))}if(x.preventDefault){x.preventDefault();x.stopPropagation()}if(c){x.preventDefault();x.stopPropagation();return false}}});this.columnsbounds=new Array();this.removeHandler(b(document),e);this.addHandler(b(document),e,function(k){if(g.resizing){return true}g.columnsbounds=new Array();var m=g.host.coord().left;var l=g.host.coord().top;if(g.showtoolbar){l+=g.toolbarHeight}if(g.filter){l+=g.filter.height()}var j=0;b.each(g.columns.records,function(o){var p=this;if(p.hidden){g.columnsbounds[g.columnsbounds.length]={top:l,column:p,left:m,width:0,height:2};return true}if(j==0){if(!g.rtl){m=parseInt(g.host.coord().left)-g.hScrollInstance.value}else{m=parseInt(g.host.coord().left)-g.hScrollInstance.max+g.hScrollInstance.value}}j++;var n=2+g.columnsHeight;if(g.columnshierarchy){l=b(p.uielement).coord().top;n=b(p.uielement).height()}g.columnsbounds[g.columnsbounds.length]={top:l,column:p,left:m,width:p.width,height:n};m+=p.width})});this.removeHandler(b(document),i);this.addHandler(b(document),i,function(j){if(g.resizing){return true}g.__drag=false;b(document.body).removeClass("jqx-disableselect");var l=parseInt(j.pageX);var t=parseInt(j.pageY);if(c){var o=g.getTouches(j);var n=o[0];l=parseInt(n.pageX);t=parseInt(n.pageY)}var m=g.host.coord();var v=parseInt(m.left);var w=parseInt(m.top);if(g.showtoolbar){w+=g.toolbarHeight}g.columndragstarted=false;g.dragmousedown=null;if(g.reordercolumn!=null){var k=b.data(g.reordercolumn[0],"reorderrecord");var x=g.columns.records.indexOf(g.getColumn(k));g.reordercolumn.remove();g.reordercolumn=null;var p=0;p+=g._pinnedColumnsLength();if(k!=null){if(d){if(h!=-1){var q=h.index;if(q>=p){var s=g.columns.records[q];if(s!=undefined){var u=g.columns.records.indexOf(g.getColumn(s.datafield));if(s.datafield==null){var u=g.columns.records.indexOf(g.getcolumnbytext(s.text))}if(g.columnGroups){var r=s;if(x<u){if(h.position=="before"){r=g.columns.records[u-1]}}if(r.columngroup!=g.getColumn(k).columngroup){if(g.columnsdropline!=null){g.columnsdropline.remove();g.columnsdropline=null}return}}if(x<u){if(h.position=="before"){g.setcolumnindex(k,u-1)}else{g.setcolumnindex(k,u)}}else{if(x>u){g.setcolumnindex(k,u)}}}}}}if(g.columnsdropline!=null){g.columnsdropline.remove();g.columnsdropline=null}}}})},getcolumnbytext:function(d){var c=null;if(this.columns.records){b.each(this.columns.records,function(){if(this.text==d){c=this;return false}})}return c},_handlereordercolumnsdroplines:function(i){var c=this;var h=-1;var e=c._pinnedColumnsLength();var g=parseInt(c.host.coord().left);var d=g+c.host.width();var f=c.vScrollBar.css("visibility")!="hidden"?19:0;if(!c.rtl){f=0}b.each(c.columnsbounds,function(j){if(j>=e){if(this.width==0){return true}if(i<=this.left+this.width/2){if(i>d){c.columnsdropline.fadeOut();return false}c.columnsdropline.css("left",f+parseInt(this.left)+"px");c.columnsdropline.css("top",parseInt(this.top)+"px");c.columnsdropline.height(this.height);c.columnsdropline.fadeIn("slow");h={index:j,position:"before"};return false}else{if(i>=this.left+this.width/2){if(this.left+this.width>d){c.columnsdropline.fadeOut();return false}c.columnsdropline.css("left",f+1+this.left+this.width);c.columnsdropline.css("top",this.top);c.columnsdropline.height(this.height);c.columnsdropline.fadeIn("slow");h={index:j,position:"after"}}}}});return h},_createreordercolumn:function(d,f,i){var h=this;var g=f;if(h.reordercolumn){h.reordercolumn.remove()}if(h.columnsdropline){h.columnsdropline.remove()}h.reordercolumn=b("<div></div>");var k=d.clone();h.reordercolumn.css("z-index",999999);k.css("border-width","1px");k.css("opacity","0.4");var j=b(k.find("."+h.toThemeProperty("jqx-grid-column-menubutton")));if(j.length>0){j.css("display","none")}var c=b(k.find(".jqx-icon-close"));if(c.length>0){c.css("display","none")}h.reordercolumnicon=b('<div style="z-index: 9999; position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px;"></div>');h.reordercolumnicon.addClass(h.toThemeProperty("jqx-grid-drag-icon"));h.reordercolumn.css("float","left");h.reordercolumn.css("position","absolute");var e=h.host.coord();k.width(d.width()+16);h.reordercolumn.append(k);h.reordercolumn.height(d.height());h.reordercolumn.width(k.width());h.reordercolumn.append(h.reordercolumnicon);b(document.body).append(h.reordercolumn);k.css("margin-left",0);k.css("left",0);k.css("top",0);h.reordercolumn.css("left",g.left+h.dragmousedown.left);h.reordercolumn.css("top",g.top+h.dragmousedown.top);if(i!=undefined&&i){h.columnsdropline=b('<div style="z-index: 9999; display: none; position: absolute;"></div>');h.columnsdropline.width(2);h.columnsdropline.addClass(h.toThemeProperty("jqx-grid-group-drag-line"));b(document.body).append(h.columnsdropline)}},_handlecolumnsdragreorder:function(d,g){if(this.reordercolumn){this.reordercolumn.remove()}if(this.columnsdropline){this.columnsdropline.remove()}this.dragmousedown=null;this.dragmousedownoffset=null;this.columndragstarted=false;this.reordercolumn=null;var h=this;var f;var c=false;if(this.isTouchDevice()&&this.touchmode!==true){c=true}var e="mousedown.drag";var f="mousemove.drag";if(c){e=b.jqx.mobile.getTouchEventName("touchstart")+".drag";f=b.jqx.mobile.getTouchEventName("touchmove")+".drag"}else{this.addHandler(g,"dragstart",function(i){return false})}this.addHandler(g,e,function(k){if(false==d.draggable){return true}if(h.resizing){return true}h.__drag=true;var j=k.pageX;var i=k.pageY;if(c){var l=h.getTouches(k);var n=l[0];j=n.pageX;i=n.pageY}h.dragmousedown={left:j,top:i};var m=b(k.target).coord();h.dragmousedownoffset={left:parseInt(j)-parseInt(m.left),top:parseInt(i-m.top)};if(k.preventDefault){k.preventDefault()}return true});this.addHandler(g,f,function(k){if(!d.draggable){return true}if(undefined==d.datafield){return true}if(d.pinned){return true}if(h.resizing){return true}if(h.dragmousedown){var j=k.pageX;var i=k.pageY;if(c){var m=h.getTouches(k);var o=m[0];if(o!=undefined){j=o.pageX;i=o.pageY}}f={left:j,top:i};if(!h.columndragstarted&&h.reordercolumn==null){var l=Math.abs(f.left-h.dragmousedown.left);var n=Math.abs(f.top-h.dragmousedown.top);if(l>3||n>3){h._createreordercolumn(g,f,true);b(document.body).addClass("jqx-disableselect");b.data(h.reordercolumn[0],"reorderrecord",d.datafield)}}}})},getTouches:function(c){return b.jqx.mobile.getTouches(c)},_handlecolumnsResize:function(){var i=this;if(this.columnsResize){var k=false;if(i.isTouchDevice()){k=true}var g="mousemove.resize"+this.element.id;var d="mousedown.resize"+this.element.id;var e="mouseup.resize"+this.element.id;if(k){var g=b.jqx.mobile.getTouchEventName("touchmove")+".resize"+this.element.id;var d=b.jqx.mobile.getTouchEventName("touchstart")+".resize"+this.element.id;var e=b.jqx.mobile.getTouchEventName("touchend")+".resize"+this.element.id}this.removeHandler(b(document),g);this.addHandler(b(document),g,function(n){if(i.resizablecolumn!=null&&!i.disabled&&i.resizing){if(i.resizeline!=null){var s=i.resizablecolumn.columnelement;var p=i.host.coord();var v=parseInt(i.resizestartline.coord().left);var l=v-i._startcolumnwidth;var w=i.resizablecolumn.column.minwidth;if(w=="auto"){w=0}else{w=parseInt(w)}var m=i.resizablecolumn.column.maxwidth;if(m=="auto"){m=0}else{m=parseInt(m)}var q=n.pageX;if(k){var t=b.jqx.mobile.getTouches(n);var r=t[0];q=r.pageX}l+=w;var u=m>0?v+m:0;var o=m==0?true:i._startcolumnwidth+q-v<m?true:false;if(i.rtl){var o=true}if(o){if(!i.rtl){if(q>=p.left&&q>=l){if(u!=0&&n.pageX<u){i.resizeline.css("left",q)}else{if(u==0){i.resizeline.css("left",q)}}if(k){return false}}}else{if(q>=p.left&&q<=p.left+i.host.width()){i.resizeline.css("left",q);if(k){return false}}}}}}if(!k&&i.resizablecolumn!=null){return false}});this.removeHandler(b(document),d);this.addHandler(b(document),d,function(m){if(i.resizablecolumn!=null&&!i.disabled){var l=i.resizablecolumn.columnelement;if(l.coord().top+l.height()+5<m.pageY){i.resizablecolumn=null;return}if(l.coord().top-5>m.pageY){i.resizablecolumn=null;return}i._startcolumnwidth=i.resizablecolumn.column.width;i.resizablecolumn.column._width=null;b(document.body).addClass("jqx-disableselect");b(document.body).addClass("jqx-position-reset");i._mouseDownResize=new Date();i.resizing=true;i._resizecolumn=i.resizablecolumn.column;i.resizeline=i.resizeline||b('<div style="position: absolute;"></div>');i.resizestartline=i.resizestartline||b('<div style="position: absolute;"></div>');i.resizebackground=i.resizebackground||b('<div style="position: absolute; left: 0; top: 0; background: #000;"></div>');i.resizebackground.css("opacity",0.01);i.resizebackground.css("cursor","col-resize");i.resizeline.css("cursor","col-resize");i.resizestartline.css("cursor","col-resize");i.resizeline.addClass(i.toThemeProperty("jqx-grid-column-resizeline"));i.resizestartline.addClass(i.toThemeProperty("jqx-grid-column-resizestartline"));b(document.body).append(i.resizeline);b(document.body).append(i.resizestartline);b(document.body).append(i.resizebackground);var n=i.resizablecolumn.columnelement.coord();i.resizebackground.css("left",i.host.coord().left);i.resizebackground.css("top",i.host.coord().top);i.resizebackground.width(i.host.width());i.resizebackground.height(i.host.height());i.resizebackground.css("z-index",999999999);var o=function(q){if(!i.rtl){q.css("left",parseInt(n.left)+i._startcolumnwidth)}else{q.css("left",parseInt(n.left))}var s=0;var t=i.showtoolbar?i.toolbarHeight:0;s+=t;var v=i.showstatusbar?i.statusBarHeight:0;s+=v;var r=i.showAggregates?i.aggregatesHeight:0;s+=r;if(i.pageable&&i.pagerPosition!="bottom"){s+=i.pagerHeight}if(i.filterable){s+=i.filter.height()}var p=0;if(i.pageable&&i.pagerPosition!="top"){p=i.pagerHeight}var u=i.hScrollBar.css("visibility")!="hidden"?i.scrollBarSize:0;q.css("top",parseInt(n.top));q.css("z-index",9999999999);if(i.columnGroups){q.height(i.host.height()+i.resizablecolumn.columnelement.height()-p-s-u-i.columnGroupslevel*i.columnsHeight)}else{q.height(i.host.height()-p-s-u)}q.show("fast")};o(i.resizeline);o(i.resizestartline);i.dragmousedown=null}});var f=function(){b(document.body).removeClass("jqx-disableselect");b(document.body).removeClass("jqx-position-reset");if(!i.resizing){return}i._mouseUpResize=new Date();var t=i._mouseUpResize-i._mouseDownResize;if(t<200){i.resizing=false;if(i._resizecolumn!=null&&i.resizeline!=null&&i.resizeline.css("display")=="block"){i._resizecolumn=null;i.resizeline.hide();i.resizestartline.hide();i.resizebackground.remove()}return}i.resizing=false;if(i.disabled){return}var n=i.host.width();if(i.vScrollBar[0].style.visibility!="hidden"){n-=20}if(n<0){n=0}if(i._resizecolumn!=null&&i.resizeline!=null&&i.resizeline.css("display")=="block"){var u=parseInt(i.resizeline.css("left"));var o=parseInt(i.resizestartline.css("left"));var s=i._startcolumnwidth+u-o;if(i.rtl){var s=i._startcolumnwidth-u+o}var r=i._resizecolumn.width;i._resizecolumn.width=s;if(i._resizecolumn._percentagewidth!=undefined){i._resizecolumn._percentagewidth=(s/n)*100}for(var q=0;q<i._columns.length;q++){if(i._columns[q].datafield===i._resizecolumn.datafield){i._columns[q].width=i._resizecolumn.width;break}}var l=i.hScrollBar[0].style.visibility;var p=i._resizecolumn.displayfield;i._updatecolumnwidths();i.refresh();i._resizecolumn=null;i.resizeline.hide();i.resizestartline.hide();i.resizebackground.remove();i.resizablecolumn=null;i._raiseEvent("columnResized",{dataField:p,oldWidth:r,newWidth:s})}else{i.resizablecolumn=null}};try{if(document.referrer!=""||window.frameElement){var c=null;if(window.top!=null&&window.top!=window.self){if(window.parent&&document.referrer){c=document.referrer}}if(c&&c.indexOf(document.location.host)!=-1){var h=function(l){f()};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",h,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",h)}}}}}catch(j){}this.removeHandler(b(document),e);this.addHandler(b(document),e,function(m){var l=b.data(document.body,"contextmenu"+i.element.id);if(l!=null&&i.autoshowcolumnsmenubutton){return true}f()})}},_updatecolumnwidths:function(){var k=this.host.width();var c=k;if(this.vScrollBar.css("visibility")!=="hidden"){k-=parseInt(this.scrollBarSize)+6;c=k}var j="";if(this.columns==undefined||this.columns.records==undefined){return}var i=this;var h=false;b.each(this.columns.records,function(l,m){if(!(this.hidden)){if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){var m=0;var n=i.vScrollBar[0].style.visibility=="hidden"?0:i.scrollBarSize+5;m=parseFloat(this.width)*c/100;if(this._percentagewidth!=undefined){m=parseFloat(this._percentagewidth)*(c)/100}if(m<this.minwidth&&this.minwidth!="auto"){m=this.minwidth}if(m>this.maxwidth&&this.maxwidth!="auto"){m=this.maxwidth}k-=Math.round(m)}else{if(this.width!="auto"&&!this._width){k-=this.width}else{j+=this.text}}}});var f=this.columnsheader.find("#columntable"+this.element.id);if(f.length==0){return}var d=0;var g=f.find(".jqx-grid-column-header");var e=0;b.each(this.columns.records,function(m,r){var o=b(g[m]);var l=false;var q=this.width;var p=this.width;if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){q=parseFloat(this._percentagewidth)*c/100}else{q=parseFloat(this.width)*c/100}q=Math.round(q);l=true}if(this.width!="auto"&&!this._width&&!l){if(parseInt(o[0].style.width)!=this.width){o.width(this.width)}}else{if(l){if(q<this.minwidth&&this.minwidth!="auto"){q=this.minwidth;this.width=q}if(q>this.maxwidth&&this.maxwidth!="auto"){q=this.maxwidth;this.width=q}if(parseInt(o[0].style.width)!=q){o.width(q);this.width=q}}else{var n=Math.floor(k*(this.text.length/j.length));if(isNaN(n)){n=this.minwidth}var s=(k*(this.text.length/j.length))-n;d+=s;if(d>=1){d-=1;n++}if(d>=0.5&&m==i.columns.records.length-1){n++}if(n<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);n=10+$element.width();$element.remove()}if(n<this.minwidth){n=this.minwidth}if(n>this.maxwidth){n=this.maxwidth}this._width="auto";this.width=n;o.width(this.width)}}if(parseInt(o[0].style.left)!=e){o.css("left",e)}if(!(this.hidden)){e+=this.width}this._requirewidthupdate=true;if(p!==this.width){h=true}});this.columnsheader.width(2+e);f.width(this.columnsheader.width());this._resizecolumnGroups();if(h){this._renderrows()}if(this.showAggregates){this._refreshcolumnsaggregates()}},_rendercolumnheaders:function(){var r=this;if(this._updating){return}this._columnsbydatafield=new Array();this.columnsheader.find("#columntable"+this.element.id).remove();var g=b('<div id="columntable'+this.element.id+'" style="height: 100%; position: relative;"></div>');g[0].cells=new Array();var l=0;var h=0;var s="";var u=this.host.width();var f=u;var w=new Array();var t=new Array();b.each(this.columns.records,function(j,k){if(!(this.hidden)){if(this.width!="auto"&&!this._width){if(this.width<this.minwidth&&this.minwidth!="auto"){u-=this.minwidth}else{if(this.width>this.maxwidth&&this.maxwidth!="auto"){u-=this.maxwidth}else{if(this.width.toString().indexOf("%")!=-1){var k=0;k=parseFloat(this.width)*f/100;if(k<this.minwidth&&this.minwidth!="auto"){k=this.minwidth}if(k>this.maxwidth&&this.maxwidth!="auto"){k=this.maxwidth}u-=k}else{if(typeof this.width=="string"){this.width=parseInt(this.width)}u-=this.width}}}}else{s+=this.text}}if(this.pinned||this.grouped||this.checkboxcolumn){if(r._haspinned){this.pinned=true}w[w.length]=this}else{t[t.length]=this}});if(!this.rtl){for(var o=0;o<w.length;o++){this.columns.replace(o,w[o])}for(var m=0;m<t.length;m++){this.columns.replace(w.length+m,t[m])}}else{var e=0;w.reverse();for(var o=this.columns.records.length-1;o>=this.columns.records.length-w.length;o--){this.columns.replace(o,w[e++])}for(var m=0;m<t.length;m++){this.columns.replace(m,t[m])}}var v=this.headerZIndex;var d=0;var n=r.columnsHeight;var q=function(j,k){var i=r.columnGroupslevel*r.columnsHeight;i=i-(k.level*r.columnsHeight);return i};var c=0;b.each(this.columns.records,function(J,H){this.height=r.columnsHeight;if(r.columnGroups){if(r.columnGroups.length){this.height=q(this.datafield,this);n=this.height}}var M=r.toTP("jqx-grid-column-header")+" "+r.toTP("jqx-widget-header");if(r.rtl){M+=" "+r.toTP("jqx-grid-column-header-rtl")}if(!r.enableBrowserSelection){M+=" "+r.toTP("jqx-disableselect")}var K=!self.rtl?250+v-1:250+v+1;var F=!r.rtl?v--:v++;var x=b('<div role="columnheader" style="z-index: '+F+';position: absolute; height: 100%;" class="'+M+'"><div style="height: 100%; width: 100%;"></div></div>');if(r.rtl&&J===0){x[0].style.borderLeftColor="transparent"}if(r.columnGroups){x[0].style.height=n+"px";x[0].style.bottom="0px";if(this.pinned){x[0].style.zIndex=K}}this.uielement=x;this.element=x;if(this.classname!=""&&this.classname){x.addClass(this.classname)}var C=this.width;var D=false;if(this.width===null){this.width="auto"}if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){C=parseFloat(this._percentagewidth)*f/100}else{C=parseFloat(this.width)*f/100}C=Math.round(C);D=true}if(this.width!="auto"&&!this._width&&!D){if(C<this.minwidth&&this.minwidth!="auto"){C=this.minwidth}if(C>this.maxwidth&&this.maxwidth!="auto"){C=this.maxwidth}x[0].style.width=parseInt(C)+"px"}else{if(D){if(C<this.minwidth&&this.minwidth!="auto"){C=this.minwidth}if(C>this.maxwidth&&this.maxwidth!="auto"){C=this.maxwidth}if(this._percentagewidth==undefined||this.width.toString().indexOf("%")!=-1){this._percentagewidth=this.width}x.width(C);this.width=C}else{var G=Math.floor(u*(this.text.length/s.length));var E=(u*(this.text.length/s.length))-G;c+=E;if(c>=1){c-=1;G++}if(c>=0.5&&J==r.columns.records.length-1){G++}if(isNaN(G)){G=this.minwidth}if(G<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);G=10+$element.width();$element.remove()}if(G<this.minwidth){G=this.minwidth}if(G>this.maxwidth){G=this.maxwidth}this._width="auto";this.width=parseInt(G);C=this.width;x.width(this.width)}}if(this.hidden){x.css("display","none")}var k=b(x.children()[0]);g[0].cells[J]=x[0];var p=false;var I=false;var z=this.renderer!=null?this.renderer(this.text,this.align,n):r._rendercolumnheader(this.text,this.align,n,r);if(z==null){z=r._rendercolumnheader(this.text,this.align,n,r)}if(this.renderer!=null){z=b(z)}p=true;if(r.WinJS){MSApp.execUnsafeLocalFunction(function(){k.append(b(z))})}else{if(this.renderer){k.append(b(z))}else{if(z){k[0].innerHTML=z}}}if(z!=null){var B=b('<div class="iconscontainer" style="height: '+n+'px; margin-left: -32px; display: block; position: absolute; left: 100%; top: 0%; width: 32px;"><div class="filtericon '+r.toTP("jqx-widget-header")+'" style="height: '+n+'px; float: right; display: none; width: 16px;"><div class="'+r.toTP("jqx-grid-column-filterbutton")+'" style="width: 100%; height:100%;"></div></div><div class="sortasc '+r.toTP("jqx-widget-header")+'" style="height: '+n+'px; float: right; display: none; width: 16px;"><div class="'+r.toTP("jqx-grid-column-sortascbutton")+'" style="width: 100%; height:100%;"></div></div><div class="sortdesc '+r.toTP("jqx-widget-header")+'" style="height: '+n+'px; float: right; display: none; width: 16px;"><div class="'+r.toTP("jqx-grid-column-sortdescbutton")+'" style="width: 100%; height:100%;"></div></div></div>');k.append(B);var N=B.children();this.sortasc=N[1];this.sortdesc=N[2];this.filtericon=N[0];this.iconscontainer=B;if(r.rtl){B.css("margin-left","0px");B.css("left","0px");b(this.sortasc).css("float","left");b(this.filtericon).css("float","left");b(this.sortdesc).css("float","left")}}g.append(x);if(r.columnsReorder&&this.draggable&&r._handlecolumnsdragreorder){r._handlecolumnsdragreorder(this,x)}var L=this;r.addHandler(x,"click",function(i){if(L.checkboxcolumn){return true}if(r._togglesort){if(!r._loading){r._togglesort(L)}}i.preventDefault()});if(r.columnsResize&&!I){var y=false;var j="mousemove";if(r.isTouchDevice()){y=true;j=b.jqx.mobile.getTouchEventName("touchstart")}r.addHandler(x,j,function(O){if(!L.resizable){r.resizablecolumn=null;return true}var i=parseInt(O.pageX);var Q=5;var T=parseInt(x.coord().left);if(r.hasTransform){T=b.jqx.utilities.getOffset(x).left}if(r._handlecolumnsResize){if(y){var P=b.jqx.mobile.getTouches(O);var S=P[0];i=S.pageX;Q=40;if(i>=T+L.width-Q){r.resizablecolumn={columnelement:x,column:L};x.css("cursor","col-resize")}else{x.css("cursor","");r.resizablecolumn=null}return true}var R=L.width;if(r.rtl){R=0}if(i>=T+R-Q){if(i<=T+R+Q){r.resizablecolumn={columnelement:x,column:L};x.css("cursor","col-resize");return false}else{x.css("cursor","");r.resizablecolumn=null}}else{x.css("cursor","");if(i<T+R-Q){if(!L._animating&&!L._menuvisible){x.mouseenter()}}r.resizablecolumn=null}}})}x.css("left",h);if(!(this.hidden)){h+=C}if(L.rendered){var A=L.rendered(b(k[0].firstChild),L.align,n);if(A&&B!=null){B.hide()}}});if(h>0){this.columnsheader.width(2+h)}else{this.columnsheader.width(h)}this.columnsrow=g;r.columnsheader.append(g);g.width(h);if(this._handlecolumnsdragdrop){this._handlecolumnsdragdrop()}if(this._handlecolumnsReorder){this._handlecolumnsReorder()}if(this._handlecolumnsResize){this._handlecolumnsResize()}if(this.columnGroups){this._rendercolumnGroups()}},_rendercolumnGroups:function(){if(!this.columnGroups){return}var o=0;for(var l=0;l<this.columns.records.length;l++){if(this.columns.records[l].pinned){o++}}var t=this.headerZIndex-o+this.columns.records.length;var n=this;var g=n.toTP("jqx-grid-column-header")+" "+n.toTP("jqx-grid-columngroup-header")+" "+n.toTP("jqx-widget-header");if(n.rtl){g+=" "+n.toTP("jqx-grid-columngroup-header-rtl")}var e=this.columnsheader.find("#columntable"+this.element.id);e.find("jqx-grid-columngroup-header").remove();for(var h=0;h<this.columnGroupslevel-1;h++){for(var l=0;l<this.columnGroups.length;l++){var q=this.columnGroups[l];var c=q.level;if(c!==h){continue}var p=c*this.columnsHeight;var d=99999;if(q.groups){var s=function(w){var v=0;for(var u=0;u<w.groups.length;u++){var i=w.groups[u];if(!i.groups){if(!i.hidden){v+=i.width;d=Math.min(parseInt(i.element[0].style.left),d)}}else{v+=s(i)}}return v};q.width=s(q);q.left=d;var r=this.columnsHeight;var m=t--;var f=b('<div role="columnheader" style="z-index: '+m+';position: absolute;" class="'+g+'"></div>');var k=b(this._rendercolumnheader(q.text,q.align,this.columnsHeight,this));f.append(k);f[0].style.left=d+"px";if(d===0){f[0].style.borderLeftColor="transparent"}f[0].style.top=p+"px";f[0].style.height=r+"px";f[0].style.width=-1+q.width+"px";e.append(f);q.element=f}}}},_resizecolumnGroups:function(){if(!this.columnGroups){return}for(var d=0;d<this.columnGroups.length;d++){var j=this.columnGroups[d];var k=j.level;var h=k*this.columnsHeight;var g=99999;if(j.groups){var f=function(n){var m=0;for(var l=0;l<n.groups.length;l++){var i=n.groups[l];if(!i.groups){if(!i.hidden){m+=i.width;g=Math.min(parseInt(i.element[0].style.left),g)}}else{m+=f(i)}}return m};j.width=f(j);j.left=g;var c=this.columnsHeight;var e=j.element;e[0].style.left=g+"px";e[0].style.top=h+"px";e[0].style.height=c+"px";e[0].style.width=-1+j.width+"px"}}},_removecolumnhandlers:function(f){var d=this;var c=b(f.element);if(c.length>0){d.removeHandler(c,"mouseenter");d.removeHandler(c,"mouseleave");var e=b(f.filtericon);d.removeHandler(e,"mousedown");d.removeHandler(e,"click");d.removeHandler(c,"click")}},_calculateaggregate:function(k,o,d,h){if(!k.datafield){return null}var e=k.aggregates;if(!e){e=o}if(e){var f=new Array();for(var n=0;n<e.length;n++){if(e[n]=="count"){continue}f[f.length]=k.cellsFormat}if(this.source&&this.source.getAggregatedData){if(h==undefined){h=this.getRows();if(this.dataViewRecords){h=this.dataViewRecords}}var s=h;var c=-1;if(this.treeGrid){var q=new Array();var r=function(u){for(var t=0;t<u.length;t++){if(u[t]==undefined){continue}if(c==-1){c=u[t].level}if(!u[t].aggregate){q.push(u[t])}if(!u[t].leaf&&u[t].records&&u[t].records.length>0){r(u[t].records)}}};r(h);h=q}if(this.treeGrid&&this.filterable&&this.dataview.filters.length>0){var p=new Array();for(var n=0;n<h.length;n++){if(h[n]&&h[n]._visible!==false){p.push(h[n])}}h=p;var l=new Array();for(var n=0;n<s.length;n++){if(s[n]&&s[n]._visible!==false){l.push(s[n])}}s=l}if(d==undefined||d==true){var m=this.source.getAggregatedData([{name:k.datafield,aggregates:e,formatStrings:f}],this.gridlocalization,h,c);if(this.treeGrid){var g=this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?this.source._source.hierarchy.groupingDataFields.length:0;if(g==0||c>=g){if(m){if(m[k.datafield].sum!=undefined||m[k.datafield].avg!=undefined){var j=this.source.getAggregatedData([{name:k.datafield,aggregates:e,formatStrings:f}],this.gridlocalization,s,c);if(m[k.datafield].sum!=undefined){m[k.datafield].sum=j[k.datafield].sum}if(m[k.datafield].avg!=undefined){m[k.datafield].avg=j[k.datafield].avg}}}}}return m}else{var m=this.source.getAggregatedData([{name:k.datafield,aggregates:e}],this.gridlocalization,h,c);if(this.treeGrid&&m){if(m[k.datafield].sum!=undefined||m[k.datafield].avg!=undefined){var g=this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?this.source._source.hierarchy.groupingDataFields.length:0;if(g==0||c>=g){var j=this.source.getAggregatedData([{name:k.datafield,aggregates:e}],this.gridlocalization,s,c);if(m[k.datafield].sum!=undefined){m[k.datafield].sum=j[k.datafield].sum}if(m[k.datafield].avg!=undefined){m[k.datafield].avg=j[k.datafield].avg}}}}return m}}}return null},getcolumnaggregateddata:function(d,h,i,e){var f=this.getColumn(d);if(!f){return""}var k=(i==undefined||i==false)?false:i;if(h==null){return""}var c=f.aggregates;f.aggregates=null;var j=this._calculateaggregate(f,h,k,e);var g={};if(j){g=j[d];f.aggregates=c}return g},_updatecolumnaggregates:function(e,h,c){var f=this;if(!h){c.children().remove();c.html("");if(e.aggregatesRenderer){var g={};if(e.aggregates){g=this.getcolumnaggregateddata(e.datafield,e.aggregates)}var d=e.aggregatesRenderer({},e,c,null);c.html(d)}return}c.children().remove();c.html("");if(e.aggregatesRenderer){if(h){var d=e.aggregatesRenderer(h[e.datafield],e,c,this.getcolumnaggregateddata(e.datafield,e.aggregates),"aggregates");c.html(d)}}else{b.each(h,function(){var j=this;for(g in j){var k=b('<div style="position: relative; margin: 4px; overflow: hidden;"></div>');var i=g;i=f._getaggregatename(i);k.html(i+":"+j[g]);if(f.rtl){k.addClass(f.toThemeProperty("jqx-rtl"))}c.append(k)}})}},_getaggregatetype:function(d){switch(d){case"min":case"max":case"count":case"avg":case"product":case"var":case"varp":case"stdev":case"stdevp":case"sum":return d}var c=d;for(var e in d){c=e;break}return c},_getaggregatename:function(d){var c=d;switch(d){case"min":c="Min";break;case"max":c="Max";break;case"count":c="Count";break;case"avg":c="Avg";break;case"product":c="Product";break;case"var":c="Var";break;case"stdevp":c="StDevP";break;case"stdev":c="StDev";break;case"varp":c="VarP";case"sum":c="Sum";break}if(d===c&&typeof(c)!="string"){for(var e in d){c=e;break}}return c},_updatecolumnsaggregates:function(){var g=this.getRows();if(this.dataViewRecords){g=this.dataViewRecords}var c=this.columns.records.length;if(undefined!=this.aggregates[0].cells){for(var f=0;f<c;f++){var h=b(this.aggregates[0].cells[f]);var e=this.columns.records[f];var d=this._calculateaggregate(e,null,true,g);this._updatecolumnaggregates(e,d,h)}}},_refreshcolumnsaggregates:function(){var c=this.columns.records.length;if(undefined!=this.aggregates[0].cells){var f=0;for(var e=0;e<c;e++){var g=b(this.aggregates[0].cells[e]);var d=this.columns.records[e];if(g){g.width(d.width);g[0].style.left=f+"px";if(!(d.hidden&&d.hideable)){f+=d.width}else{g.css("display","none")}}}}},_updateaggregates:function(){var c=b('<div style="position: relative;" id="statusrow'+this.element.id+'"></div>');var f=0;var m=this.columns.records.length;var l=this.toThemeProperty("jqx-grid-cell");if(this.rtl){l+=" "+this.toThemeProperty("jqx-grid-cell-rtl");f=0;c.css("border-left-width","0px");this.aggregates.css("border-left-color","transparent")}l+=" "+this.toThemeProperty("jqx-grid-cell-pinned");var n=m+10;var o=new Array();this.aggregates[0].cells=o;for(var h=0;h<m;h++){var g=this.columns.records[h];var i=this._calculateaggregate(g);var d=g.width;if(d<g.minwidth){d=g.minwidth}if(d>g.maxwidth){d=g.maxwidth}var e=l;if(g.cellsalign){e+=" "+this.toThemeProperty("jqx-"+g.cellsalign+"-align")}var k=b('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+e+'"></div>');c.append(k);k.css("left",f);if(!this.rtl){k.css("z-index",n--)}else{k.css("z-index",n++);if(h==0){k.css("border-left-width","0px")}}k.width(d);k[0].style.left=f+"px";if(!(g.hidden&&g.hideable)){f+=d}else{k.css("display","none")}o[o.length]=k[0];this._updatecolumnaggregates(g,i,k)}if(b.jqx.browser.msie&&b.jqx.browser.version<8){c.css("z-index",n--)}c.width(parseInt(f)+2);c.height(this.aggregatesHeight);this.aggregates.children().remove();this.aggregates.append(c);this.aggregates.removeClass(this.toThemeProperty("jqx-widget-header"));this.aggregates.addClass(l);this.aggregates.css("border-bottom-color","transparent");this.aggregates.css("border-top-width","1px");if(this.rtl&&this.hScrollBar.css("visibility")!="hidden"){this._renderhorizontalscroll()}},destroy:function(){var h=this;if(h.columns&&h.columns.records){for(var f=0;f<h.columns.records.length;f++){h._removecolumnhandlers(h.columns.records[f])}}h.removeHandler(b(document),"mouseup.pagerbuttonstop");h.removeHandler(b(document),"mouseup.pagerbuttonsbottom");h.removeHandler(h.content,"scroll");h.removeHandler(h.content,"mousedown");h.removeHandler(b(document),"mousedown.gridedit"+h.element.id);var g="mousemove.resize"+h.element.id;var c="mousedown.resize"+h.element.id;var e="mouseup.resize"+h.element.id;h.removeHandler(b(document),g);h.removeHandler(b(document),c);h.removeHandler(b(document),e);var g="mousemove.reorder"+h.element.id;var c="mousedown.reorder"+h.element.id;var e="mouseup.reorder"+h.element.id;h.removeHandler(b(document),g);h.removeHandler(b(document),c);h.removeHandler(b(document),e);if(h.filterable){if(h.filterrow){for(var f=0;f<h.filterrow[0].cells.length;f++){var k=h.filterrow[0].cells[f];var j=b(k).find(".filterconditions");var d=h.columns.records[f];if(j.length>0){j.jqxDropDownList("destroy")}}}if(h.filtercolumnsList){h.filtercolumnsList.jqxDropDownList("destroy")}}if(h.pageable){if(h.pagershowrowscombotop&&h.pagershowrowscombotop.jqxDropDownList){h.pagershowrowscombotop.jqxDropDownList("destroy")}if(h.pagershowrowscombobottom&&h.pagershowrowscombobottom.jqxDropDownList){h.pagershowrowscombobottom.jqxDropDownList("destroy")}var l=h.pagerbuttonsbottom.find("a");h.removeHandler(l,"click");h.removeHandler(l,"mouseenter");h.removeHandler(l,"mouseleave");l.remove();var l=h.pagerbuttonstop.find("a");h.removeHandler(l,"click");h.removeHandler(l,"mouseenter");h.removeHandler(l,"mouseleave");l.remove();if(h.pagernexttop){h.pagernexttop.jqxButton("destroy");h.pagerprevioustop.jqxButton("destroy");h.pagernextbottom.jqxButton("destroy");h.pagerpreviousbottom.jqxButton("destroy");h.pagerfirsttop.jqxButton("destroy");h.pagerfirstbottom.jqxButton("destroy");h.pagerlasttop.jqxButton("destroy");h.pagerlastbottom.jqxButton("destroy")}}h._removeHandlers();h.vScrollBar.jqxScrollBar("destroy");h.hScrollBar.jqxScrollBar("destroy");delete h.vScrollBar;delete h.hScrollBar;delete h._mousewheelfunc;b.jqx.utilities.resize(h.host,null,true);h.host.remove()},propertyChangedHandler:function(e,l,d,k){if(this.isInitialized==undefined||this.isInitialized==false){return}if(k!==d){if(l=="filterable"){e._render()}else{if(l==="height"){e.host.height(e.height);e.host.width(e.width);e._updatesize(false,true)}else{if(l==="width"){e.host.height(e.height);e.host.width(e.width);e._updatesize(true,false)}else{if(l==="source"){e.updateBoundData()}else{if(l==="columns"||l==="columnGroups"){e._columns=null;e._render()}else{if(l==="rtl"){e.content.css("left","");e.columns=e._columns;e.vScrollBar.jqxScrollBar({rtl:k});e.hScrollBar.jqxScrollBar({rtl:k});e._render()}else{if(l==="pagerMode"){e.pagerMode=k;e._initpager()}else{if(l=="pageSizeOptions"){e._initpager();var j=false;for(var f=0;f<k.length;f++){if(parseInt(k[f])==e.pageSize){j=true;break}}if(!j){b.jqx.set(e,[{pageSize:k[0]}])}}else{if(l=="pageSize"){var g=e.dataview.pagenum*e.dataview.pagesize;e.dataview.pagesize=e.pageSize;var h=Math.floor(g/e.dataview.pagesize);if(h!==e.dataview.pagenum||parseInt(k)!==parseInt(d)){e._raiseEvent("pageSizeChanged",{pagenum:k,oldpageSize:d,pageSize:e.dataview.pagesize});var m=e.goToPage(h);if(!m){if(!e.serverProcessing){e.refresh()}else{e.updateBoundData("pager")}}}}else{if(l==="pagerPosition"){e.refresh()}else{if(l==="selectionMode"){e.selectionMode=k.toLowerCase()}else{if(l=="touchmode"){e._removeHandlers();e.touchDevice=null;e.vScrollBar.jqxScrollBar({touchMode:k});e.hScrollBar.jqxScrollBar({touchMode:k});e.refresh();e._addHandlers()}else{if(l=="enableHover"){return}else{if(l=="disabled"){if(k){e.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(e.pageable){if(e.pagernexttop){e.pagernexttop.jqxButton({disabled:k});e.pagerprevioustop.jqxButton({disabled:k});e.pagernextbottom.jqxButton({disabled:k});e.pagerpreviousbottom.jqxButton({disabled:k});e.pagerfirsttop.jqxButton({disabled:k});e.pagerfirstbottom.jqxButton({disabled:k});e.pagerlasttop.jqxButton({disabled:k});e.pagerlastbottom.jqxButton({disabled:k});if(e.pagershowrowscombotop.jqxDropDownList){if(e.pagerMode=="advanced"){e.pagershowrowscombotop.jqxDropDownList({disabled:false});e.pagershowrowscombobottom.jqxDropDownList({disabled:false})}}}e.host.find(".jqx-grid-pager-number").css("cursor",k?"default":"pointer")}e.host.find(".jqx-grid-group-collapse").css("cursor",k?"default":"pointer");e.host.find(".jqx-grid-group-expand").css("cursor",k?"default":"pointer")}else{if(l=="columnsHeight"){e._render()}else{if(l=="theme"){b.jqx.utilities.setTheme(d,k,e.host);e.vScrollBar.jqxScrollBar({theme:e.theme});e.hScrollBar.jqxScrollBar({theme:e.theme});if(e.pageable&&e.pagernexttop){e.pagernexttop.jqxButton({theme:e.theme});e.pagerprevioustop.jqxButton({theme:e.theme});e.pagernextbottom.jqxButton({theme:e.theme});e.pagerpreviousbottom.jqxButton({theme:e.theme});e.pagerfirsttop.jqxButton({theme:e.theme});e.pagerfirstbottom.jqxButton({theme:e.theme});e.pagerlasttop.jqxButton({theme:e.theme});e.pagerlastbottom.jqxButton({theme:e.theme});if(e.pagershowrowscombotop.jqxDropDownList){if(e.pagerMode=="advanced"){e.pagershowrowscombotop.jqxDropDownList({theme:e.theme});e.pagershowrowscombobottom.jqxDropDownList({theme:e.theme})}}}if(e.filterable){var c=b(".filterconditions");if(c.length>0){c.jqxDropDownList({theme:e.theme})}if(e.filtercolumnsList){e.filtercolumnsList.jqxDropDownList({theme:e.theme})}}e.refresh()}else{e.refresh()}}}}}}}}}}}}}}}}}},_rendercolumnheader:function(f,g,c,d){var e="4px";if(d.columnGroups){e=(c/2-this._columnheight/2);if(e<0){e=4}e+="px"}else{if(this.columnsHeight!=25){e=(this.columnsHeight/2-this._columnheight/2);if(e<0){e=4}e+="px"}}return'<div style="overflow: hidden; text-overflow: ellipsis; text-align: '+g+"; margin-left: 4px; margin-right: 4px; margin-bottom: "+e+"; margin-top: "+e+';"><span style="text-overflow: ellipsis; cursor: default;">'+f+"</span></div>"}});function a(c,d){this.owner=c;this.datafield=null;this.displayfield=null;this.text="";this.sortable=true;this.editable=true;this.hidden=false;this.hideable=true;this.groupable=true;this.renderer=null;this.cellsRenderer=null;this.columntype=null;this.cellsFormat="";this.align="left";this.cellsalign="left";this.width="auto";this.minwidth=25;this.maxwidth="auto";this.pinned=false;this.visibleindex=-1;this.filterable=true;this.filter=null;this.resizable=true;this.draggable=true;this.initeditor=null;this.createeditor=null;this.destroyeditor=null;this.geteditorvalue=null;this.autoCellHeight=true;this.validation=null;this.classname="";this.cellclassname="";this.aggregates=null;this.aggregatesRenderer=null;this.rendered=null;this.exportable=true;this.nullable=true;this.columngroup=null;this.columntype="textbox";this.getcolumnproperties=function(){return{nullable:this.nullable,sortable:this.sortable,hidden:this.hidden,groupable:this.groupable,width:this.width,align:this.align,editable:this.editable,minwidth:this.minwidth,maxwidth:this.maxwidth,resizable:this.resizable,datafield:this.datafield,text:this.text,exportable:this.exportable,cellsalign:this.cellsalign,pinned:this.pinned,cellsFormat:this.cellsFormat,columntype:this.columntype,classname:this.classname,cellclassname:this.cellclassname,menu:this.menu}},this.setproperty=function(e,f){if(this[e]){var g=this[e];this[e]=f;this.owner._columnPropertyChanged(this,e,f,g)}else{if(this[e.toLowerCase()]){var g=this[e.toLowerCase()];this[e.toLowerCase()]=f;this.owner._columnPropertyChanged(this,e.toLowerCase(),f,g)}}};this._initfields=function(f){if(f!=null){var e=this;if(b.jqx.hasProperty(f,"dataField")){this.datafield=b.jqx.get(f,"dataField")}if(b.jqx.hasProperty(f,"displayField")){this.displayfield=b.jqx.get(f,"displayField")}else{this.displayfield=this.datafield}if(b.jqx.hasProperty(f,"columnType")){this.columntype=b.jqx.get(f,"columnType")}if(b.jqx.hasProperty(f,"validation")){this.validation=b.jqx.get(f,"validation")}if(b.jqx.hasProperty(f,"autoCellHeight")){this.autoCellHeight=b.jqx.get(f,"autoCellHeight")}if(b.jqx.hasProperty(f,"text")){this.text=b.jqx.get(f,"text")}else{this.text=this.displayfield}if(b.jqx.hasProperty(f,"sortable")){this.sortable=b.jqx.get(f,"sortable")}if(b.jqx.hasProperty(f,"hidden")){this.hidden=b.jqx.get(f,"hidden")}if(b.jqx.hasProperty(f,"groupable")){this.groupable=b.jqx.get(f,"groupable")}if(b.jqx.hasProperty(f,"renderer")){this.renderer=b.jqx.get(f,"renderer")}if(b.jqx.hasProperty(f,"align")){this.align=b.jqx.get(f,"align")}if(b.jqx.hasProperty(f,"cellsAlign")){this.cellsalign=b.jqx.get(f,"cellsAlign")}if(b.jqx.hasProperty(f,"cellsFormat")){this.cellsFormat=b.jqx.get(f,"cellsFormat")}if(b.jqx.hasProperty(f,"width")){this.width=b.jqx.get(f,"width")}if(b.jqx.hasProperty(f,"minWidth")){this.minwidth=b.jqx.get(f,"minWidth")}if(b.jqx.hasProperty(f,"maxWidth")){this.maxwidth=b.jqx.get(f,"maxWidth")}if(b.jqx.hasProperty(f,"cellsRenderer")){this.cellsRenderer=b.jqx.get(f,"cellsRenderer")}if(b.jqx.hasProperty(f,"columnType")){this.columntype=b.jqx.get(f,"columnType")}if(b.jqx.hasProperty(f,"pinned")){this.pinned=b.jqx.get(f,"pinned")}if(b.jqx.hasProperty(f,"filterable")){this.filterable=b.jqx.get(f,"filterable")}if(b.jqx.hasProperty(f,"filter")){this.filter=b.jqx.get(f,"filter")}if(b.jqx.hasProperty(f,"resizable")){this.resizable=b.jqx.get(f,"resizable")}if(b.jqx.hasProperty(f,"draggable")){this.draggable=b.jqx.get(f,"draggable")}if(b.jqx.hasProperty(f,"editable")){this.editable=b.jqx.get(f,"editable")}if(b.jqx.hasProperty(f,"initEditor")){this.initeditor=b.jqx.get(f,"initEditor")}if(b.jqx.hasProperty(f,"createEditor")){this.createeditor=b.jqx.get(f,"createEditor")}if(b.jqx.hasProperty(f,"destroyEditor")){this.destroyeditor=b.jqx.get(f,"destroyEditor")}if(b.jqx.hasProperty(f,"getEditorValue")){this.geteditorvalue=b.jqx.get(f,"getEditorValue")}if(b.jqx.hasProperty(f,"className")){this.classname=b.jqx.get(f,"className")}if(b.jqx.hasProperty(f,"cellClassName")){this.cellclassname=b.jqx.get(f,"cellClassName")}if(b.jqx.hasProperty(f,"aggregates")){this.aggregates=b.jqx.get(f,"aggregates")}if(b.jqx.hasProperty(f,"aggregatesRenderer")){this.aggregatesRenderer=b.jqx.get(f,"aggregatesRenderer")}if(b.jqx.hasProperty(f,"rendered")){this.rendered=b.jqx.get(f,"rendered")}if(b.jqx.hasProperty(f,"exportable")){this.exportable=b.jqx.get(f,"exportable")}if(b.jqx.hasProperty(f,"nullable")){this.nullable=b.jqx.get(f,"nullable")}if(b.jqx.hasProperty(f,"columnGroup")){this.columngroup=b.jqx.get(f,"columnGroup")}if(!f instanceof String&&!(typeof f=="string")){for(var g in f){if(!e.hasOwnProperty(g)){if(!e.hasOwnProperty(g.toLowerCase())){c.host.remove();throw new Error("jqxDataTable: Invalid property name - "+g+".")}}}}}};this._initfields(d);return this}b.jqx.dataCollection=function(c){this.records=new Array();this.owner=c;this.updating=false;this.beginUpdate=function(){this.updating=true};this.resumeupdate=function(){this.updating=false};this.clear=function(){this.records=new Array()};this.replace=function(e,d){this.records[e]=d};this.isempty=function(d){if(this.records[d]==undefined){return true}return false};this.initialize=function(d){if(d<1){d=1}this.records[d-1]=-1};this.length=function(){return this.records.length};this.indexOf=function(d){return this.records.indexOf(d)};this.add=function(d){if(d==null){return false}this.records[this.records.length]=d;return true};this.insertAt=function(e,d){if(e==null||e==undefined){return false}if(d==null){return false}if(e>=0){if(e<this.records.length){this.records.splice(e,0,d);return true}else{return this.add(d)}}return false};this.remove=function(e){if(e==null||e==undefined){return false}var d=this.records.indexOf(e);if(d!=-1){this.records.splice(d,1);return true}return false};this.removeAt=function(e){if(e==null||e==undefined){return false}if(e<0){return false}if(e<this.records.length){var d=this.records[e];this.records.splice(e,1);return true}return false};return this};b.jqx.dataView=function(){this.that=this;this.grid=null;this.records=[];this.rows=[];this.columns=[];this.filters=new Array();this.pagesize=0;this.pagenum=0;this.source=null;this.databind=function(p,k){var o=p._source?true:false;var e=null;this._sortData=null;this._sortHierarchyData=null;if(o){e=p;p=p._source}else{e=new b.jqx.dataAdapter(p,{autoBind:false})}var c=function(m){e.recordids=[];e.records=new Array();e.cachedrecords=new Array();e.originaldata=new Array();e._options.totalrecords=m.totalrecords;e._options.originaldata=m.originaldata;e._options.recordids=m.recordids;e._options.cachedrecords=new Array();e._options.pagenum=m.pagenum;e._options.pageable=m.pageable;if(p.type!=undefined){e._options.type=p.type}if(p.formatdata!=undefined){e._options.formatData=p.formatdata}if(p.contenttype!=undefined){e._options.contentType=p.contenttype}if(p.async!=undefined){e._options.async=p.async}if(p.updaterow!=undefined){e._options.updaterow=p.updaterow}if(p.addrow!=undefined){e._options.addrow=p.addrow}if(p.deleterow!=undefined){e._options.deleterow=p.deleterow}if(m.pagesize==0){m.pagesize=10}e._options.pagesize=m.pagesize};var r=function(m){m.originaldata=e.originaldata;m.records=e.records;m.hierarchy=e.hierarchy;if(!m.grid.serverProcessing){m._sortData=null;m._sortfield=null;m._filteredData=null;m._sortHierarchyData=null}if(!m.hierarchy){m.hierarchy=new Array();e.hierarchy=new Array()}if(e._source.totalrecords){m.totalrecords=e._source.totalrecords}else{if(e._source.totalRecords){m.totalrecords=e._source.totalRecords}else{if(m.hierarchy.length!==0){m.totalrecords=m.hierarchy.length}else{m.totalrecords=m.records.length}}}m.cachedrecords=e.cachedrecords};c(this);this.source=p;if(k!==undefined){uniqueId=k}var f=this;switch(p.datatype){case"local":case"array":default:if(p.localdata==null){p.localdata=[]}if(p.localdata!=null){e.unbindBindingUpdate(f.grid.element.id);if((!f.grid.autoBind&&f.grid.isInitialized)||f.grid.autoBind){e.dataBind()}var j=function(){r(f);f.update()};j();e.bindBindingUpdate(f.grid.element.id,j)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(p.localdata!=null){e.unbindBindingUpdate(f.grid.element.id);if((!f.grid.autoBind&&f.grid.isInitialized)||f.grid.autoBind){e.dataBind()}var j=function(m){r(f);f.update()};j();e.bindBindingUpdate(f.grid.element.id,j);return}var s={};var n=0;var t={};for(var h=0;h<this.filters.length;h++){var d=this.filters[h].datafield;var i=this.filters[h].filter;var g=i.getfilters();t[d+"operator"]=i.operator;for(var q=0;q<g.length;q++){g[q].datafield=d;var l=g[q].value;t["filtervalue"+n]=l.toString();t["filtercondition"+n]=g[q].condition;t["filteroperator"+n]=g[q].operator;t["filterdatafield"+n]=d;n++}}t.filterslength=n;b.extend(t,{sortdatafield:f.sortfield,sortorder:f.sortfielddirection,pagenum:f.pagenum,pagesize:f.grid.pageSize});var u=e._options.data;if(e._options.data){b.extend(e._options.data,t)}else{if(p.data){b.extend(t,p.data)}e._options.data=t}var j=function(){var v=b.jqx.browser.msie&&b.jqx.browser.version<9;var w=function(){r(f);f.update()};if(v){try{w()}catch(m){}}else{w()}};e.unbindDownloadComplete(f.grid.element.id);e.bindDownloadComplete(f.grid.element.id,j);e._source.loaderror=function(w,m,v){j()};if((!f.grid.autoBind&&f.grid.isInitialized)||f.grid.autoBind){e.dataBind()}e._options.data=u}};this.addFilter=function(f,e){this._sortData=null;this._sortHierarchyData=null;var d=-1;for(var c=0;c<this.filters.length;c++){if(this.filters[c].datafield==f){d=c;break}}if(d==-1){this.filters[this.filters.length]={filter:e,datafield:f}}else{this.filters[d]={filter:e,datafield:f}}};this.removeFilter=function(d){this._sortData=null;this._sortHierarchyData=null;for(var c=0;c<this.filters.length;c++){if(this.filters[c].datafield==d){this.filters.splice(c,1);break}}};this.sortBy=function(e,c){var d=this;if(c==null){this.sortfield="";this.sortfielddirection="";return}if(c==undefined){c=true}if(c=="a"||c=="asc"||c=="ascending"||c==true){c=true}else{c=false}if(e=="constructor"){e=""}this.sortfield=e;this.sortfielddirection=c?"asc":"desc"};this._sort=function(d){if(!this.sortfield||!this.sortfielddirection){return d}if(this._sortfield==this.sortfield&&this._sortfielddirection==this.sortfielddirection&&this._sortData){return this._sortData}var g=this;var j=Object.prototype.toString;Object.prototype.toString=(typeof g.sortfield=="function")?g.sortfield:function(){return this[g.sortfield]};var f="";if(this.source.datafields){b.each(this.source.datafields,function(){if(this.name==g.sortfield){if(this.type){f=this.type}return false}})}var c=new Array();for(var e=0;e<d.length;e++){c.push(b.extend({originalRecord:d[e]},d[e]))}this._sortfield=this.sortfield;this._sortfielddirection=this.sortfielddirection;if(this.sortfielddirection==="desc"){var h=c.sort(function(k,i){return g._compare(k,i,f)}).reverse()}else{var h=c.sort(function(k,i){return g._compare(k,i,f)})}this._sortData=h;Object.prototype.toString=j;return h};this._compare=function(d,c,f){var d=d;var c=c;if(d===undefined){d=null}if(c===undefined){c=null}if(d===null&&c===null){return 0}if(d===null&&c!==null){return 1}if(d!==null&&c===null){return 1}d=d.toString();c=c.toString();if(b.jqx.dataFormat){if(f&&f!=""){switch(f){case"number":case"int":case"float":if(d<c){return -1}if(d>c){return 1}return 0;case"date":case"time":if(d<c){return -1}if(d>c){return 1}return 0;case"string":case"text":d=String(d).toLowerCase();c=String(c).toLowerCase();break}}else{if(b.jqx.dataFormat.isNumber(d)&&b.jqx.dataFormat.isNumber(c)){if(d<c){return -1}if(d>c){return 1}return 0}else{if(b.jqx.dataFormat.isDate(d)&&b.jqx.dataFormat.isDate(c)){if(d<c){return -1}if(d>c){return 1}return 0}else{if(!b.jqx.dataFormat.isNumber(d)&&!b.jqx.dataFormat.isNumber(c)){d=String(d).toLowerCase();c=String(c).toLowerCase()}}}}}try{if(d<c){return -1}if(d>c){return 1}}catch(e){var g=e}return 0};this._equals=function(d,c){return(this._compare(d,c)===0)};this.evaluate=function(p){if(this.grid.serverProcessing){if(p){if(this.grid.source._source.id==""||this.grid.source._source.id==null){if(this.grid.pageable){var c=this.grid.pageSize*this.pagenum;this.grid.rowsByKey=new Array();var h=this;b.each(p,function(i){this.uid=c;h.grid.rowsByKey[this.uid]=this;c++})}}}return p}var d=new Array();if(this.filters.length){var j=new Array();var o=function(s,w){for(var u=0;u<s.length;u++){var v=s[u];v._visible=true;var q=undefined;for(var t=0;t<this.filters.length;t++){var r=this.filters[t].filter;var x=v[this.filters[t].datafield];var y=r.evaluate(x);if(q==undefined){q=y}else{if(r.operator=="or"){q=q||y}else{q=q&&y}}}v._visible=false;if(q||v.aggregate){v._visible=true;w.push(v);j[v.uid]=v}}};if(!this._filteredData){if(this.source.hierarchy||(this.grid.source.hierarchy&&this.grid.source.hierarchy.length>0)){var n=new Array();var k=function(r,s){for(var q=0;q<s.length;q++){var t=s[q];n.push(t);if(t.records&&t.records.length>0){k(t,t.records)}}};k(null,p);o.call(this,n,d);for(var e=0;e<d.length;e++){var g=d[e];while(g.parent){var m=g.parent;if(!j[m.uid]){m._visible=true;j[m.uid]=m}g=m}}d=p}else{o.call(this,p,d)}this._filteredData=d;this.rows=d}else{this.rows=this._filteredData}}else{this.rows=p}if(this.source.hierarchy||(this.grid.source.hierarchy&&this.grid.source.hierarchy.length>0)){var h=this;var l=new Array();this._sortData=null;var f=function(t,q){h._sortData=null;var r=null;if(h.source.hierarchy.groupingDataFields){if(q&&q.length>0&&q[0].level<h.source.hierarchy.groupingDataFields.length){r=new Array();for(var s=0;s<q.length;s++){r.push(b.extend({originalRecord:q[s]},q[s]))}}else{r=h._sort(q)}}else{r=h._sort(q)}if(t.records){t.records=r}else{t=t.concat(r)}for(var s=0;s<r.length;s++){if(r[s].records&&r[s].records.length){f(r[s],r[s].records)}}return t};if(this.sortfield||this.sortfielddirection){if(this._sortHierarchyData){l=this._sortHierarchyData}else{l=f(l,p)}this.rows=l;this._sortHierarchyData=l}}else{this.rows=this._sort(this.rows)}return this.rows};this.getid=function(j,d,e){if(b(j,d).length>0){return b(j,d).text()}if(this.rows&&j!=""&&j!=undefined&&this.rows.length>0){var h=this.rows[this.rows.length-1][j];if(h==null){h=null}for(var f=1;f<=100;f++){var g=this.grid.rowsByKey[f+h];if(!g){if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){var g=this.grid.rowsByKey["jqx"+h+f];if(g){continue}return"jqx"+h+f}return h+f}}}if(j!=undefined){if(j.toString().length>0){var c=b(d).attr(j);if(c!=null&&c.toString().length>0){if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){return"jqx"+c}return c}}}if(this.rows&&this.rows.length>0){var g=this.grid.rowsByKey[e];if(g){var h=this.rows[this.rows.length-1][j];if(h==null){h=""}for(var f=1;f<=1000;f++){var g=this.grid.rowsByKey[f+h];if(!g){if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){var g=this.grid.rowsByKey["jqx"+h+f];if(g){continue}return"jqx"+h+f}return h+f}}}}if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){var g=this.grid.rowsByKey["jqx"+e];if(!g){return"jqx"+e}else{for(var f=e+1;f<=100;f++){var g=this.grid.rowsByKey["jqx"+f];if(!g){var g=this.grid.rowsByKey["jqx"+f];if(g){continue}return"jqx"+f}}}}return e};this.generatekey=function(){var c=function(){return(((1+Math.random())*16)|0)};return(""+c()+c()+"-"+c()+"-"+c())};return this}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxTreeGrid","jqxDataTable",{});a.extend(a.jqx._jqxTreeGrid.prototype,{defineInstance:function(){this.base.treeGrid=this;this.base.exportSettings={recordsInView:false,columnsHeader:true,hiddenColumns:false,serverURL:null,characterSet:null,collapsedRecords:false,fileName:"jqxTreeGrid"};var b={pageSizeMode:"default",checkboxes:false,hierarchicalCheckboxes:false,icons:false,showSubAggregates:false,rowDetailsRenderer:null,virtualModeCreateRecords:null,virtualModeRecordCreating:null,loadingFailed:false};a.extend(true,this,b);return b},createInstance:function(b){this.theme=this.base.theme;var c=this},deleteRow:function(b){var c=this.base;c.deleterowbykey(b)},updateRow:function(b,d){var c=this.base;c.updaterowbykey(b,d)},setCellValue:function(c,b,e){var d=this.base;d.setCellValueByKey(c,b,e)},getCellValue:function(c,b){var d=this.base;return d.getCellValueByKey(c,b)},lockRow:function(b){var c=this.base;c.lockrowbykey(b)},unlockRow:function(b){var c=this.base;c.unlockrowbykey(b)},selectRow:function(b){var c=this.base;c.selectrowbykey(b)},unselectRow:function(b){var c=this.base;c.unselectrowbykey(b)},ensureRowVisible:function(b){var c=this.base;c.ensurerowvisiblebykey(b)},beginCellEdit:function(c,b){var e=this.base;var d=e.getColumn(b);e.beginroweditbykey(c,d)},beginRowEdit:function(b){var c=this.base;c.beginroweditbykey(b)},endCellEdit:function(c,b,e){var d=this.base;d.endroweditbykey(c,e)},endRowEdit:function(b,d){var c=this.base;c.endroweditbykey(b,d)},_showLoadElement:function(){var b=this.base;if(b.host.css("display")=="block"){if(b.autoShowLoadElement){a(b.dataloadelement).css("visibility","visible");a(b.dataloadelement).css("display","block");b.dataloadelement.width(b.host.width());b.dataloadelement.height(b.host.height())}}},_hideLoadElement:function(){var b=this.base;if(b.host.css("display")=="block"){if(b.autoShowLoadElement){a(b.dataloadelement).css("visibility","hidden");a(b.dataloadelement).css("display","none");b.dataloadelement.width(b.host.width());b.dataloadelement.height(b.host.height())}}},getKey:function(b){if(b){return b.uid}},getRows:function(){var b=this.base;if(b.source.hierarchy){if(b.source.hierarchy.length!=0){return b.source.hierarchy}}return b.source.records},getCheckedRows:function(){var c=this.base;var d=c._names();var e=new Array();var b=function(j,g){if(!g){return}for(var h=0;h<g.length;h++){if(!g[h]){continue}var f=a.extend({},g[h]);var k=c.rowinfo[g[h].uid];if(k&&k[d.checked]){j.push(f)}else{if(f[d.checked]){j.push(f)}}b(e,g[h].records)}};b(e,c.dataViewRecords);return e},getRow:function(d){var e=this.base;var b=e.source.records;if(e.source.hierarchy){var f=function(h){for(var j=0;j<h.length;j++){if(!h[j]){continue}if(h[j].uid==d){return h[j]}if(h[j].records){var k=f(h[j].records);if(k){return k}}}};var g=f(e.source.hierarchy);return g}else{for(var c=0;c<b.length;c++){if(!b[c]){continue}if(b[c].uid==d){return b[c]}}}},_renderrows:function(){var N=this.base;var ar=this;if(N._loading){return}if(N._updating){return}var J=N._names();if(N.source.hierarchy.length===0&&!N.loadingFailed){if(this.virtualModeCreateRecords){var am=function(c){if(c===false||(c&&c.length==0)){N._loading=false;N.loadingFailed=true;N.source.hierarchy=new Array();ar._hideLoadElement();N._renderrows();N._updateScrollbars();N._arrange();return}for(var j=0;j<c.length;j++){c[j].level=0;ar.virtualModeRecordCreating(c[j]);N.rowsByKey[c[j].uid]=c[j]}N.source.hierarchy=c;if(!N.source._source.hierarchy){N.source._source.hierarchy={}}N._loading=false;ar._hideLoadElement();N._renderrows();N._updateScrollbars();N._arrange()};N._loading=true;this.virtualModeCreateRecords(null,am);this._showLoadElement()}}if(N.rendering){N.rendering()}var ay=0;N.table[0].rows=new Array();var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-widget-content")+" "+N.toTP("jqx-item");if(N.rtl){aI+=" "+N.toTP("jqx-cell-rtl")}var b=N.columns.records.length;var O=a.jqx.browser.msie&&a.jqx.browser.version<8;if(O){N.host.attr("hideFocus","true")}var v=new Array();var aF=function(s,w){for(var aJ=0;aJ<s.length;aJ++){var c=s[aJ];if(!c){continue}var j=!N.rowinfo[c.uid]?c.expanded:N.rowinfo[c.uid].expanded;if(N.dataview.filters.length==0){c._visible=true}if(c._visible!==false){if(j||c[J.leaf]){w.push(c);if(c.records&&c.records.length>0){var aK=aF(c.records,new Array());for(var x=0;x<aK.length;x++){w.push(aK[x])}}}else{w.push(c)}}}return w};var ao=N.source.hierarchy.length===0?N.source.records:N.source.hierarchy;ao=N.dataview.evaluate(ao);N.dataViewRecords=ao;if(this.showSubAggregates){var p=function(s,c){if(s!=0){if(c.length>0){if(c[c.length-1]){if(!c[c.length-1].aggregate){c.push({_visible:true,level:s,siblings:c,aggregate:true,leaf:true})}}else{if(a.jqx.browser.msie&&a.jqx.browser.version<9){if(c[c.length-2]){if(!c[c.length-2].aggregate){c.push({_visible:true,level:s,siblings:c,aggregate:true,leaf:true})}}}}}}for(var j=0;j<c.length;j++){if(c[j]&&c[j].records){p(s+1,c[j].records)}}};p(0,ao)}var ap=function(s){var w=0;var i=new Array();for(var c=0;c<s.length;c++){var j=s[c];if(j[J.level]==0){w++}if(w>N.dataview.pagesize*N.dataview.pagenum&&w<=N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize){i.push(j)}if(w>N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize){break}}return i};if(N.source.hierarchy.length===0){if(N.dataview.pagesize=="all"||!N.pageable||N.serverProcessing){var ak=ao;if(N.pageable&&N.serverProcessing&&ao.length>N.dataview.pagesize){var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize)}}else{var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize)}var v=ak}else{var ao=aF.call(N,ao,new Array());if(N.dataview.pagesize=="all"||!N.pageable){var ak=ao}else{var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize);if(this.pageSizeMode=="root"){ak=ap(ao)}}var v=ak;var I=N.dataview.pagenum;N.updatepagerdetails();if(N.dataview.pagenum!=I){if(N.dataview.pagesize=="all"||!N.pageable){var ak=ao}else{var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize);if(this.pageSizeMode=="root"){ak=ap(ao)}}var v=ak}}N.renderedRecords=v;var D=v.length;var aG=N.tableZIndex;var k=0;var aq=0;if(O){for(var P=0;P<b;P++){var T=N.columns.records[P];var aw=T.width;if(aw<T.minwidth){aw=T.minwidth}if(aw>T.maxwidth){aw=T.maxwidth}var av=a('<table><tr><td role="gridcell" style="max-width: '+aw+"px; width:"+aw+'px;" class="'+aI+'"></td></tr></table>');a(document.body).append(av);var ag=av.find("td");k=1+parseInt(ag.css("padding-left"))+parseInt(ag.css("padding-right"));av.remove();break}}var B=N.rtl?" "+N.toTP("jqx-grid-table-rtl"):"";var y="<table cellspacing='0' class='"+N.toTP("jqx-grid-table")+B+"' id='table"+N.element.id+"'><colgroup>";var W="<table cellspacing='0' class='"+N.toTP("jqx-grid-table")+B+"' id='pinnedtable"+N.element.id+"'><colgroup>";var ab=null;for(var P=0;P<b;P++){var T=N.columns.records[P];if(T.hidden){continue}ab=T;var aw=T.width;if(aw<T.minwidth){aw=T.minwidth}if(aw>T.maxwidth){aw=T.maxwidth}aw-=k;if(aw<0){aw=0}if(O){var H=aw;if(P==0){H++}W+="<col style='max-width: "+aw+"px; width: "+H+"px;'>";y+="<col style='max-width: "+aw+"px; width: "+H+"px;'>"}else{W+="<col style='max-width: "+aw+"px; width: "+aw+"px;'>";y+="<col style='max-width: "+aw+"px; width: "+aw+"px;'>"}aq+=aw}y+="</colgroup>";W+="</colgroup>";N._hiddencolumns=false;var r=false;if(D===0){var n='<tr role="row">';var q=N.host.height();if(N.pageable){q-=N.pagerHeight;if(N.pagerPosition==="both"){q-=N.pagerHeight}}q-=N.columnsHeight;if(N.filterable){var aB=N.filter.find(".filterrow");var A=N.filter.find(".filterrow-hidden");var E=1;if(A.length>0){E=0}q-=N.filterHeight+N.filterHeight*aB.length*E}if(N.showstatusbar){q-=N.statusBarHeight}if(N.showAggregates){q-=N.aggregatesHeight}if(q<25){q=25}if(N.hScrollBar[0].style.visibility!="hidden"){q-=N.hScrollBar.outerHeight()}if(N.height==="auto"||N.height===null||N.autoheight){q=100}var aw=N.host.width()+2;var av='<td colspan="'+N.columns.records.length+'" role="gridcell" style="border-right-color: transparent; min-height: '+q+"px; height: "+q+"px;  min-width:"+aq+"px; max-width:"+aq+"px; width:"+aq+"px;";var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-grid-cell")+" "+N.toTP("jqx-item");aI+=" "+N.toTP("jqx-center-align");av+='" class="'+aI+'">';if(!N._loading){av+=N.gridlocalization.emptydatastring}av+="</td>";n+=av;y+=n;W+=n;N.table[0].style.width=aq+2+"px";ay=aq}var m=N.source._source.hierarchy&&N.source._source.hierarchy.groupingDataFields?N.source._source.hierarchy.groupingDataFields.length:0;for(var Q=0;Q<v.length;Q++){var at=v[Q];var ac=at.uid;if(m>0){if(at[J.level]<m){ac=at.uid}}if(at.uid===undefined){at.uid=N.dataview.generatekey()}var n='<tr data-key="'+ac+'" role="row" id="row'+Q+N.element.id+'">';var an='<tr data-key="'+ac+'" role="row" id="row'+Q+N.element.id+'">';if(at.aggregate){var n='<tr data-role="summaryrow" role="row" id="row'+Q+N.element.id+'">';var an='<tr data-role="summaryrow" role="row" id="row'+Q+N.element.id+'">'}var U=0;if(!N.rowinfo[ac]){var z=at[J.checked];if(z===undefined){z=false}N.rowinfo[ac]={selected:at[J.selected],checked:z,icon:at[J.icon],aggregate:at.aggregate,row:at,leaf:at[J.leaf],expanded:at[J.expanded]}}else{if(N.rowinfo[ac].checked===undefined){N.rowinfo[ac].checked=at[J.checked]}if(N.rowinfo[ac].icon===undefined){N.rowinfo[ac].icon=at[J.icon]}if(N.rowinfo[ac].aggregate===undefined){N.rowinfo[ac].aggregate=at[J.aggregate]}if(N.rowinfo[ac].row===undefined){N.rowinfo[ac].row=at}if(N.rowinfo[ac].leaf===undefined){N.rowinfo[ac].leaf=at[J.leaf]}if(N.rowinfo[ac].expanded===undefined){N.rowinfo[ac].expanded=at[J.expanded]}}var h=N.rowinfo[ac];h.row=at;if(at.originalRecord){h.originalRecord=at.originalRecord}var o=0;for(var P=0;P<b;P++){var M=N.columns.records[P];if(M.pinned||(N.rtl&&N.columns.records[b-1].pinned)){r=true}var aw=M.width;if(aw<M.minwidth){aw=M.minwidth}if(aw>M.maxwidth){aw=M.maxwidth}aw-=k;if(aw<0){aw=0}var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-grid-cell")+" "+N.toTP("jqx-item");if(M.pinned){aI+=" "+N.toTP("jqx-grid-cell-pinned")}if(N.sortcolumn===M.displayfield){aI+=" "+N.toTP("jqx-grid-cell-sort")}if(N.altRows&&Q%2!=0){aI+=" "+N.toTP("jqx-grid-cell-alt")}if(N.rtl){aI+=" "+N.toTP("jqx-cell-rtl")}var R="";if(m>0&&!O&&!at.aggregate){if(at[J.level]<m){R+=' colspan="'+b+'"';var H=0;for(var K=0;K<b;K++){var S=N.columns.records[K];if(S.hidden){continue}var Z=S.width;if(Z<S.minwidth){aw=S.minwidth}if(Z>S.maxwidth){aw=S.maxwidth}Z-=k;if(Z<0){Z=0}H+=Z}aw=H}}var av='<td role="gridcell"'+R+' style="max-width:'+aw+"px; width:"+aw+"px;";var aj='<td role="gridcell"'+R+' style="pointer-events: none; visibility: hidden; border-color: transparent; max-width:'+aw+"px; width:"+aw+"px;";if(P==b-1&&b==1){av+="border-right-color: transparent;";aj+="border-right-color: transparent;"}if(m>0&&at[J.level]<m&&!at.aggregate){if(N.rtl){aI+=" "+N.toTP("jqx-right-align")}}else{if(M.cellsalign!="left"){if(M.cellsalign==="right"){aI+=" "+N.toTP("jqx-right-align")}else{aI+=" "+N.toTP("jqx-center-align")}}}if(h){if(h.selected){if(N.editKey!==ac){if(N.selectionMode!=="none"){aI+=" "+N.toTP("jqx-grid-cell-selected");aI+=" "+N.toTP("jqx-fill-state-pressed")}}}if(h.locked){aI+=" "+N.toTP("jqx-grid-cell-locked")}if(h.aggregate){aI+=" "+N.toTP("jqx-grid-cell-pinned")}}if(!(M.hidden)){if(o==0&&!N.rtl){av+="border-left-width: 0px;";aj+="border-left-width: 0px;"}else{av+="border-right-width: 0px;";aj+="border-right-width: 0px;"}o++;U+=k+aw}else{av+="display: none;";aj+="display: none;";N._hiddencolumns=true}if(M.pinned){av+="pointer-events: auto;";aj+="pointer-events: auto;"}var u="";if((N.source.hierarchy.length==0||(!at.records||(at.records&&at.records.length===0)))&&!this.virtualModeCreateRecords){h.leaf=true}if(at.records&&at.records.length>0){h.leaf=false}if(N.dataview.filters.length>0){if(at.records&&at.records.length>0){var aa=false;for(var L=0;L<at.records.length;L++){if(at.records[L]._visible!==false&&at.records[L].aggregate==undefined){aa=true;break}}if(!aa){h.leaf=true}else{h.leaf=false}}}if(h&&!h.leaf){if(h.expanded){u+=N.toTP("jqx-tree-grid-expand-button")+" ";if(!N.rtl){u+=N.toTP("jqx-grid-group-expand")}else{u+=N.toTP("jqx-grid-group-expand-rtl")}u+=" "+N.toTP("jqx-icon-arrow-down")}else{u+=N.toTP("jqx-tree-grid-collapse-button")+" ";if(!N.rtl){u+=N.toTP("jqx-grid-group-collapse");u+=" "+N.toTP("jqx-icon-arrow-right")}else{u+=N.toTP("jqx-grid-group-collapse-rtl");u+=" "+N.toTP("jqx-icon-arrow-left")}}}if(!N.autoRowHeight||o===1||(N.autoRowHeight&&!M.autoCellHeight)){aI+=" "+N.toTP("jqx-grid-cell-nowrap")}var V=N._getcellvalue(M,h.row);if(m>0&&!at.aggregate){if(at[J.level]<m){V=at.label}}if(M.cellsFormat!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(V)){V=a.jqx.dataFormat.formatdate(V,M.cellsFormat,N.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(V)||(!isNaN(parseFloat(V))&&isFinite(V))){V=a.jqx.dataFormat.formatnumber(V,M.cellsFormat,N.gridlocalization)}}}}if(M.cellclassname!=""&&M.cellclassname){if(typeof M.cellclassname=="string"){aI+=" "+M.cellclassname}else{var aH=M.cellclassname(Q,M.datafield,N._getcellvalue(M,h.row),h.row,V);if(aH){aI+=" "+aH}}}if(M.cellsRenderer!=""&&M.cellsRenderer){var C=M.cellsRenderer(ac,M.datafield,N._getcellvalue(M,h.row),h.row,V);if(C!==undefined){V=C}}if(h.aggregate){if(M.aggregates){var au=at.siblings.slice(0,at.siblings.length-1);var X=N._calculateaggregate(M,null,true,au);at[M.displayfield]="";if(X){if(M.aggregatesRenderer){if(X){var G=M.aggregatesRenderer(X[M.datafield],M,null,N.getcolumnaggregateddata(M.datafield,M.aggregates,false,au),"subAggregates");V=G;at[M.displayfield]+=name+":"+X[M.datafield]+"\n"}}else{V="";at[M.displayfield]="";a.each(X,function(){var i=this;for(obj in i){var c=obj;c=N._getaggregatename(c);var j='<div style="position: relative; margin: 0px; overflow: hidden;">'+c+":"+i[obj]+"</div>";V+=j;at[M.displayfield]+=c+":"+i[obj]+"\n"}})}}else{V=""}}}if((o===1&&!N.rtl)||(M==ab&&N.rtl)||(m>0&&at[J.level]<m)){var ae="";var d=N.toThemeProperty("jqx-tree-grid-indent");var Y=h.leaf?1:0;for(var F=0;F<at[J.level]+Y;F++){ae+="<span class='"+d+"'></span>"}var al="<span class='"+u+"'></span>";var az="";var e="";if(this.checkboxes&&!at.aggregate){var aC=N.toThemeProperty("jqx-tree-grid-checkbox")+" "+d+" "+N.toThemeProperty("jqx-checkbox-default")+" "+N.toThemeProperty("jqx-fill-state-normal")+" "+N.toThemeProperty("jqx-rc-all");var g=true;if(a.isFunction(this.checkboxes)){g=this.checkboxes(ac,at);if(g==undefined){g=false}}if(g){if(h){var ax=h.checked;if(this.hierarchicalCheckboxes==false&&ax===null){ax=false}if(ax){az+="<span class='"+aC+"'><div class='"+N.toThemeProperty("jqx-tree-grid-checkbox-tick")+" "+N.toThemeProperty("jqx-checkbox-check-checked")+"'></div></span>"}else{if(ax===false){az+="<span class='"+aC+"'></span>"}else{az+="<span class='"+aC+"'><div class='"+N.toThemeProperty("jqx-tree-grid-checkbox-tick")+" "+N.toThemeProperty("jqx-checkbox-check-indeterminate")+"'></div></span>"}}}else{az+="<span class='"+aC+"'></span>"}}}if(this.icons&&!at.aggregate){var af=N.toThemeProperty("jqx-tree-grid-icon")+" "+d;if(N.rtl){var af=N.toThemeProperty("jqx-tree-grid-icon")+" "+N.toThemeProperty("jqx-tree-grid-icon-rtl")+" "+d}var aA=N.toThemeProperty("jqx-tree-grid-icon-size")+" "+d;var f=h.icon;if(a.isFunction(this.icons)){h.icon=this.icons(ac,at);if(h.icon){f=true}}if(f){if(h.icon){e+="<span class='"+af+"'><img class='"+aA+"' src='"+h.icon+"'/></span>"}else{e+="<span class='"+af+"'></span>"}}}var ad=N.autoRowHeight&&o===1&&M.autoCellHeight?" "+N.toTP("jqx-grid-cell-wrap"):"";var ai=ae+al+az+e+"<span class='"+N.toThemeProperty("jqx-tree-grid-title")+ad+"'>"+V+"</span>";if(!N.rtl){V=ai}else{V="<span class='"+N.toThemeProperty("jqx-tree-grid-title")+ad+"'>"+V+"</span>"+e+az+al+ae}}if(m>0&&O&&P>=m){if(at[J.level]<m){av+="padding-left: 5px; border-left-width: 0px;";aj+="padding-left: 5px; border-left-width: 0px;";V="<span style='visibility: hidden;'>-</span>"}}av+='" class="'+aI+'">';av+=V;av+="</td>";aj+='" class="'+aI+'">';aj+=V;aj+="</td>";if(!M.pinned){n+=av;if(r){an+=aj}}else{an+=av;n+=av}if(m>0&&!O){if(at[J.level]<m&&!at.aggregate){break}}}if(ay==0){N.table[0].style.width=U+2+"px";ay=U}n+="</tr>";an+="</tr>";y+=n;W+=an;if(N.rowDetails&&!at.aggregate&&this.rowDetailsRenderer){var l='<tr data-role="row-details"><td valign="top" align="left" style="pointer-events: auto; max-width:'+aw+"px; width:"+aw+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+N.columns.records.length+'" role="gridcell"';var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-grid-cell")+" "+N.toTP("jqx-item");aI+=" "+N.toTP("jqx-details");aI+=" "+N.toTP("jqx-reset");var ah=this.rowDetailsRenderer(ac,at);if(ah){l+='" class="'+aI+'"><div style="pointer-events: auto; overflow: hidden;"><div data-role="details">'+ah+"</div></div></td></tr>";y+=l;W+=l}}}y+="</table>";W+="</table>";if(r){if(N.WinJS){MSApp.execUnsafeLocalFunction(function(){N.table.html(W+y)})}else{N.table[0].innerHTML=W+y}var aD=N.table.find("#table"+N.element.id);var aE=N.table.find("#pinnedtable"+N.element.id);aE.css("float","left");aE.css("pointer-events","none");aD.css("float","left");aE[0].style.position="absolute";aD[0].style.position="relative";aD[0].style.zIndex=aG-10;aE[0].style.zIndex=aG+10;N._table=aD;N._table[0].style.left="0px";N._pinnedTable=aE;if(O){aE[0].style.left="0px"}N._table[0].style.width=ay+"px";N._pinnedTable[0].style.width=ay+"px";if(N.rtl&&N._haspinned){N._pinnedTable[0].style.left=3-ay+parseInt(N.element.style.width)+"px"}}else{if(N.WinJS){MSApp.execUnsafeLocalFunction(function(){N.table.html(y)})}else{N.table[0].innerHTML=y}var K=N.table.find("#table"+N.element.id);N._table=K;if(a.jqx.browser.msie&&a.jqx.browser.version<10){N._table[0].style.width=ay+"px"}if(D===0){N._table[0].style.width=(2+ay)+"px"}}if(D===0){N._table[0].style.tableLayout="auto";if(N._pinnedTable){N._pinnedTable[0].style.tableLayout="auto"}}if(N.showAggregates){N._updatecolumnsaggregates()}if(N._loading&&D==0){N._arrange();this._showLoadElement()}if(N.rendered){N.rendered()}},propertyChangedHandler:function(b,c,e,d){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="pageSizeMode"||c=="hierarchicalCheckboxes"){b._renderrows()}},checkRow:function(c,d,b){var e=this.base;var g=e._names();if(e._loading){return}var f=e.rowinfo[c];if(f){f.checked=true;f.row[g.checked]=true;if(f.originalRecord){f.originalRecord[g.checked]=true}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(f.row,f.row)}if(d!==false){e._renderrows()}e._raiseEvent("rowCheck",{key:c,row:f.row})}else{var h=this.getRow(c);if(h){e.rowinfo[c]={row:h,checked:true};e.rowinfo[c].row[g.checked]=true;if(h.originalRecord){e.rowinfo[c].originalRecord=h.originalRecord}e._raiseEvent("rowCheck",{key:c,row:h});if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(h,h)}if(d!==false){e._renderrows()}}}},checkRows:function(d,n){var e=this.base;var j=this;var i=e._names();var l=function(o){var p=new Array();var q=function(s){for(var r=0;r<s.length;r++){p.push(s[r]);if(s[r].records){q(s[r].records)}}};if(o.records){q(o.records)}return p};if(d!=null){var f=0;var c=false;var g=0;var b=function(o){for(var p=0;p<o.length;p++){var q=o[p][i.checked];if(q===undefined){q=false}if(q!=false){if(o[p][i.checked]==null){c=true}if(o[p].records){b(o[p].records)}f++}g++}};if(d.records){b(d.records)}if(d!=n){if(f==g){this.checkRow(d.uid,false,"tree")}else{if(f>0){this.indeterminateRow(d.uid,false,"tree")}else{this.uncheckRow(d.uid,false,"tree")}}}else{var k=n[i.checked];var h=l(n);a.each(h,function(){if(k===true){j.checkRow(this.uid,false,"tree")}else{if(k===false){j.uncheckRow(this.uid,false,"tree")}else{j.indeterminateRow(this.uid,false,"tree")}}})}var m=d[i.parent]?d[i.parent]:null;this.checkRows(m,n)}else{var k=n[i.checked];var h=l(n);a.each(h,function(){if(k===true){j.checkRow(this.uid,false,"tree")}else{if(k===false){j.uncheckRow(this.uid,false,"tree")}else{j.indeterminateRow(this.uid,false,"tree")}}})}},indeterminateRow:function(c,d,b){var f=this.base;var h=f._names();if(f._loading){return}var e=this;var g=f.rowinfo[c];if(g){g.checked=null;g.row[h.checked]=null;if(g.originalRecord){g.originalRecord[h.checked]=null}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(g.row,g.row)}if(d!==false){f._renderrows()}}else{var i=this.getRow(c);if(i){f.rowinfo[c]={row:i,checked:null};f.rowinfo[c].row[h.checked]=null;if(i.originalRecord){f.rowinfo[c].originalRecord=i.originalRecord}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(i,i)}if(d!==false){f._renderrows()}}}},uncheckRow:function(c,d,b){var f=this.base;var h=f._names();if(f._loading){return}var e=this;var g=f.rowinfo[c];if(g){g.checked=false;g.row[h.checked]=false;if(g.originalRecord){g.originalRecord[h.checked]=false}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(g.row,g.row)}if(d!==false){f._renderrows()}f._raiseEvent("rowUncheck",{key:c,row:g.row})}else{var i=this.getRow(c);if(i){f.rowinfo[c]={row:i,checked:false};f.rowinfo[c].row[h.checked]=false;if(i.originalRecord){f.rowinfo[c].originalRecord=i.originalRecord}f._raiseEvent("rowUncheck",{key:c,row:i});if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(i,i)}if(d!==false){f._renderrows()}}}},expandRows:function(c){var e=this;if(!c){return}if(e.virtualModeCreateRecords){a.each(c,function(){var f=this;var g=function(){e.base._loading=false;e.expandRows(f.records)};e.base._loading=false;e.expandRow(f.uid,g)})}else{for(var d=0;d<c.length;d++){var b=c[d];e.expandRow(b.uid);e.expandRows(b.records)}}},collapseRows:function(b){if(!b){return}for(var c=0;c<b.length;c++){this.collapseRow(b[c].uid);this.collapseRows(b[c].records)}},expandAll:function(){var b=this.base;b.beginUpdate();this.expandRows(this.getRows());b.endUpdate()},collapseAll:function(){var b=this.base;b.beginUpdate();this.collapseRows(this.getRows());b.endUpdate()},expandRow:function(h,j){var d=this.base;if(d._loading){return}var e=d._names();var f=this;var b=d.rowinfo[h];if(!b){var k=this.getRow(h);if(k){d.rowinfo[h]={row:k};if(k.originalRecord){d.rowinfo[h].originalRecord=k.originalRecord}b=d.rowinfo[h]}}if(b){if(b.expanded){b.row[e.expanded]=true;return}b.expanded=true;b.row[e.expanded]=true;if(b.originalRecord){b.originalRecord[e.expanded]=true}if(this.virtualModeCreateRecords&&!b.row._loadedOnDemand){var c=function(m){b.row._loadedOnDemand=true;if(m===false){d._loading=false;f._hideLoadElement();b.leaf=true;b.row[e.leaf]=true;d._renderrows();if(j){j()}return}for(var n=0;n<m.length;n++){m[n][e.level]=b.row[e.level]+1;m[n][e.parent]=b.row;if(d.rowsByKey[m[n].uid]){d._loading=false;f._hideLoadElement();b.leaf=true;b.row[e.leaf]=true;d._renderrows();if(j){j()}throw new Error("Please, check whether you Add Records with unique ID/Key. ")}d.rowsByKey[m[n].uid]=m[n];f.virtualModeRecordCreating(m[n])}if(!b.row.records){b.row.records=m}else{b.row.records=b.row.records.concat(m)}if((!m)||(m&&m.length==0)){b.leaf=true;b.row[e.leaf]=true}if(b.originalRecord){b.originalRecord.records=m;b.originalRecord[e.expanded]=true;if(m.length==0){b.originalRecord[e.leaf]=true}}d._loading=false;f._hideLoadElement();var l=d.vScrollBar.css("visibility");d._renderrows();d._updateScrollbars();var o=l!=d.vScrollBar.css("visibility");if(d.height==="auto"||d.height===null||d.autoheight||o){d._arrange()}d._renderhorizontalscroll();if(j){j()}};if(!b.row[e.leaf]){d._loading=true;this._showLoadElement();this.virtualModeCreateRecords(b.row,c);return}}if(!d.updating()){var g=d.vScrollBar.css("visibility");d._renderrows();d._updateScrollbars();var i=g!=d.vScrollBar.css("visibility");if(d.height==="auto"||d.height===null||d.autoheight||i){d._arrange()}d._renderhorizontalscroll();d._raiseEvent("rowExpand",{row:b.row,key:h})}}},collapseRow:function(c){var d=this.base;var g=d._names();if(d._loading){return}var f=d.rowinfo[c];if(!f){var h=this.getRow(c);if(h){d.rowinfo[c]={row:h};if(h.originalRecord){d.rowinfo[c].originalRecord=h.originalRecord}f=d.rowinfo[c]}}if(f){if(!f.expanded){f.row[g.expanded]=false;return}f.expanded=false;f.row[g.expanded]=false;if(f.originalRecord){f.originalRecord[g.expanded]=false}if(!d.updating()){var b=d.vScrollBar.css("visibility");d._renderrows();d._updateScrollbars();var e=b!=d.vScrollBar.css("visibility");if(d.height==="auto"||d.height===null||d.autoheight||e){d._arrange()}d._renderhorizontalscroll();d._raiseEvent("rowCollapse",{row:f.row,key:c})}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxBulletChart","",{});a.extend(a.jqx._jqxBulletChart.prototype,{defineInstance:function(){var b={width:500,height:100,barSize:"50%",ranges:[{startValue:0,endValue:50,color:"#000000",opacity:0.7},{startValue:50,endValue:80,color:"#000000",opacity:0.5},{startValue:80,endValue:100,color:"#000000",opacity:0.3}],pointer:{value:65,label:"Value",size:"25%",color:""},target:{value:85,label:"Target",size:4,color:""},ticks:{position:"far",interval:20,size:10},title:"Title",description:"Description",orientation:"horizontal",labelsFormat:null,labelsFormatFunction:null,animationDuration:400,showTooltip:true,tooltipFormatFunction:null,disabled:false,rtl:false,events:["change"]};a.extend(true,this,b);return b},createInstance:function(b){if(!a.jqx.dataAdapter){throw new Error("jqxBulletChart: Missing reference to the following module: 'jqxdata.js'.")}this._setDefaultValues();this.render();var c=this;a.jqx.utilities.resize(this.host,function(){if(c._timer){clearTimeout(c._timer)}c._timer=setTimeout(function(){var d=c.animationDuration;c.animationDuration=0;c.render();setTimeout(function(){c.animationDuration=d},0)},10)},false,true)},render:function(){if(this.host.children().length>0){this._removeHandlers();if(this.showTooltip==true){this.host.jqxTooltip("destroy")}this.host.empty()}this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-bulletchart"));this.host.width(this.width);this.host.height(this.height);var n=this.host.width();var d=this.host.height();var l;var j=this.rtl?"rtl":"ltr";if(this.orientation=="horizontal"){l=a("<div style='position: absolute; visibility: hidden; padding: 5px;'><div class='"+this.toThemeProperty("jqx-bulletchart-title")+"' style='direction: "+j+";'>"+this.title+"</div><div class='"+this.toThemeProperty("jqx-bulletchart-description")+"' style='direction: "+j+";'>"+this.description+"</div></div>")}else{if(this.orientation=="vertical"){l=a("<div style='position: absolute; visibility: hidden; padding-bottom: 15px;'><div class='"+this.toThemeProperty("jqx-bulletchart-title")+"' style='width: "+n+"px; direction: "+j+";'>"+this.title+"</div><div class='"+this.toThemeProperty("jqx-bulletchart-description")+"' style='direction: "+j+";'>"+this.description+"</div></div>")}}this.host.append(l);var k=l.outerWidth();var g=l.outerHeight();l.remove();var e,h,i,b,o,m,f,c;if(this.orientation=="horizontal"){e="jqx-bulletchart-title-container-horizontal";h="jqx-bulletchart-chart-container-horizontal";i=this._checkPercentage(this.barSize,this.host);b=k;o=this.barSize;m=0;f=n-b;c=o;if(this.width&&this.width.toString().indexOf("%")>=0){var f=parseFloat(parseFloat(f*100)/n).toString()+"%";var b=parseFloat(parseFloat(b*100)/n).toString()+"%";this._percentageWidth=true}}else{if(this.orientation=="vertical"){e="jqx-bulletchart-title-container-vertical";h="jqx-bulletchart-chart-container-vertical";i=0;b="100%";o=g;m=this._checkPercentage(this.barSize,this.host);f=this.barSize;c=d-o}}if(this.rtl==false||(this.rtl==true&&this.orientation=="vertical")){this.host.append("<div id='"+this.element.id+"titleContainer' class='"+e+"' style='top: "+i+";'></div>")}this.host.append("<div id='"+this.element.id+"ChartContainer' class='"+h+"' style='top: "+i+"; left: "+m+";'></div>");if(this.rtl==true&&this.orientation=="horizontal"){this.host.append("<div id='"+this.element.id+"titleContainer' class='"+e+"' style='top: "+i+";'></div>")}this._titleContainer=a("#"+this.element.id+"titleContainer");this._chartContainer=a("#"+this.element.id+"ChartContainer");this._titleContainer.css({width:b,height:o});this._chartContainer.css({width:f,height:c});this._min=this.ranges[0].startValue;this._max=this.ranges[this.ranges.length-1].endValue;this._interval=this._max-this._min;this._valueToPixelsHorizontal=this._chartContainer.width()/this._interval;this._valueToPixelsVertical=this._chartContainer.height()/this._interval;this._checkValues();this._appendRanges();this._appendPointerAndTarget();this._appendTitleAndDescription();if(this.ticks.position!="none"){this._appendTicksAndLabels()}if(this.disabled==true){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(this.showTooltip==true){if(this.host.jqxTooltip!=undefined){this._initializeTooltip();this.host.data().jqxWidget=this}else{throw new Error("jqxBulletChart: Missing reference to the following module: 'jqxtooltip.js'.")}}this._updateValue(this.pointer.value,0,true)},refresh:function(b){if(!b){this.render()}},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object")){return this.pointer.value}else{if(b>this._max){b=this._max}else{if(b<this._min){b=this._min}}if(b!=this.pointer.value){this._updateValue(b,this.pointer.value);this.pointer.value=b;if(this.showTooltip==true){this._updateTooltip()}}}},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this._removeHandlers();if(this.showTooltip==true){this.host.jqxTooltip("destroy")}this.host.remove()},propertyChangedHandler:function(c,d,g,e){if(g!=e||e instanceof Object){var b=true;var f=function(){a.each(g,function(i,h){if(e[i]==undefined){c[d][i]=h}})};switch(d){case"barSize":break;case"ranges":a.each(g,function(i,h){a.each(h,function(k,j){if(e[i][k]==undefined){c[d][i][k]=j}})});this._setDefaultValues();break;case"pointer":f();this._updatePointer(e,g);return;case"target":f();this._updateTarget(e,g);return;case"ticks":b=false;f();a.each(g,function(i,h){if(g[i]!=c[d][i]){b=!(b&&false)}});break;case"showTooltip":if(e==true){if(this.host.jqxTooltip!=undefined){this._initializeTooltip()}else{throw new Error("jqxBulletChart: Missing reference to the following module: 'jqxtooltip.js'.")}}else{this._removeHandlers();this.host.jqxTooltip("destroy")}break;case"animationDuration":return;case"tooltipFormatFunction":this._updateTooltip();return;case"disabled":if(e==true){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}return}if(b==true){this.render()}}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},_removeHandlers:function(){var b=a("#"+this.element.id+"Pointer, #"+this.element.id+"Target");this.removeHandler(b,"mouseenter.bulletchart"+this.element.id);this.removeHandler(b,"mouseleave.bulletchart"+this.element.id)},_setDefaultValues:function(){var b=this.ranges;var c=this.ranges.length;for(var d=0;d<c;d++){if(b[d].startValue==undefined||b[d].endValue==undefined){throw new Error("jqxBulletChart: Each range must have its startValue and endValue set.")}if(b[d].color==undefined){this.ranges[d].color="#000000"}if(b[d].opacity==undefined){this.ranges[d].opacity=1-(1/c)*d}}var g=this.pointer;if(g.value==undefined){this.pointer.value=65}if(g.label==undefined){this.pointer.label="Value"}if(g.size==undefined){this.pointer.size="25%"}if(g.color==undefined){this.pointer.color=""}var f=this.target;if(f.value==undefined){this.target.value=85}if(f.label==undefined){this.target.label="Target"}if(f.size==undefined){this.target.size=5}if(f.color==undefined){this.target.color=""}var e=this.ticks;if(e.position==undefined){this.ticks.position="near"}if(e.interval==undefined){this.ticks.interval=20}if(e.size==undefined){this.ticks.size=10}},_checkValues:function(){if(this.pointer.value>this._max){this.pointer.value=this._max}else{if(this.pointer.value<this._min){this.pointer.value=this._min}}if(this.target.value>this._max){this.target.value=this._max}else{if(this.target.value<this._min){this.target.value=this._min}}},_appendRanges:function(){var e="";var g=this.ranges.length;for(var d=0;d<g;d++){var f=this.ranges[d];var l;if(this.orientation=="horizontal"){var h=this.rtl?"right":"left";var c=(f.startValue-this._min)*this._valueToPixelsHorizontal;var j=(f.endValue-f.startValue)*this._valueToPixelsHorizontal;l="<div class='"+this.toThemeProperty("jqx-bulletchart-range")+" "+this.toThemeProperty("jqx-bulletchart-range-horizontal")+"' style='"+h+": "+c+"px; width: "+j+"px; background-color: "+f.color+"; opacity: "+f.opacity+"'></div>"}else{if(this.orientation=="vertical"){var b=(f.startValue-this._min)*this._valueToPixelsVertical;var k=(f.endValue-f.startValue)*this._valueToPixelsVertical;l="<div class='"+this.toThemeProperty("jqx-bulletchart-range")+" "+this.toThemeProperty("jqx-bulletchart-range-vertical")+"' style='bottom: "+b+"px; height: "+k+"px; background-color: "+f.color+"; opacity: "+f.opacity+"'></div>"}}e+=l}this._chartContainer.append(e)},_appendPointerAndTarget:function(){var o="";var m=this.element.id+"Pointer";var f=this.element.id+"Target";var l=this.pointer.size;var k=this.target.value;var e=this.target.size;var j=k>0?0:parseInt(e);var p=this.pointer.color.length>0?"":this.toThemeProperty("jqx-fill-state-pressed");var g=this.target.color.length>0?"":this.toThemeProperty("jqx-fill-state-pressed");if(this.orientation=="horizontal"){var c=this._normaliseValue(l);var n=this._checkPercentage(l,this._chartContainer);var d=this.rtl?"right":"left";var t=(k-this._min)*this._valueToPixelsHorizontal-j;var u=t+parseInt(e)-this._chartContainer.width();if(t<0){t=0}else{if(u>0){t-=u}}var i=this._normaliseValue(e);o+="<div class='"+g+" "+this.toThemeProperty("jqx-bulletchart-target")+" "+this.toThemeProperty("jqx-bulletchart-target-horizontal")+"' id='"+f+"' style='"+d+": "+t+"px; width: "+i+"; background-color: "+this.target.color+"'></div>";o+="<div class='"+p+" "+this.toThemeProperty("jqx-bulletchart-pointer")+"' id='"+m+"' style='top: "+n+"; height: "+c+"; background-color: "+this.pointer.color+"'></div>"}else{if(this.orientation=="vertical"){var r=this._chartContainer.width();var q=this._normaliseValue(l);var s=this._checkPercentage(l,this._chartContainer);var b=(k-this._min)*this._valueToPixelsVertical-j;var u=b+parseInt(e)-this._chartContainer.height();if(b<0){b=0}else{if(u>0){b-=u}}var h=this._normaliseValue(e);o+="<div class='"+g+" "+this.toThemeProperty("jqx-bulletchart-target")+" "+this.toThemeProperty("jqx-bulletchart-target-vertical")+"' id='"+f+"' style='bottom: "+b+"px; height: "+h+"; background-color: "+this.target.color+"'></div>";o+="<div class='"+p+" "+this.toThemeProperty("jqx-bulletchart-pointer")+"' id='"+m+"' style='left: "+s+"; width: "+q+"; background-color: "+this.pointer.color+"'></div>"}}this._chartContainer.append(o)},_updatePointer:function(c,i){var h=a("#"+this.element.id+"Pointer");if(c.value>this._max){this.pointer.value=this._max}else{if(c.value<this._min){this.pointer.value=this._min}}if(c.value!=i.value){this._updateValue(c.value,i.value);if(this.showTooltip==true){this._updateTooltip()}}if(c.label!=i.label){if(this.showTooltip==true){this._updateTooltip()}}if(c.size!=i.size){var d=c.size;if(this.orientation=="horizontal"){var g=this._checkPercentage(d,this._chartContainer);var b=this._normaliseValue(d);h.css({top:g,height:b})}else{if(this.orientation=="vertical"){var f=this._checkPercentage(d,this._chartContainer);var e=this._normaliseValue(d);h.css({left:f,width:e})}}}if(c.color!=i.color){if(c.color==""){h.css("background-color","");h.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}else{h.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));h.css("background-color",c.color)}}},_updateTarget:function(b,d){var e=a("#"+this.element.id+"Target");if(b.value>this._max){this.target.value=this._max}else{if(b.value<this._min){this.target.value=this._min}}if(b.value!=d.value||b.size!=d.size){var h=b.value;var k=parseInt(b.size);var c=h>0?0:k;if(this.orientation=="horizontal"){var i=this.rtl?"right":"left";var j=(h-this._min)*this._valueToPixelsHorizontal-c;var g=j+k-this._chartContainer.width();if(j<0){j=0}else{if(g>0){j-=g}}if(this.rtl==false){e.css("left",j)}else{e.css("right",j)}e.width(k)}else{if(this.orientation=="vertical"){var f=(h-this._min)*this._valueToPixelsVertical-c;var g=f+k-this._chartContainer.height();if(f<0){f=0}else{if(g>0){f-=g}}e.css({bottom:f,height:k})}}if(this.showTooltip==true){this._updateTooltip()}}if(b.label!=d.label){if(this.showTooltip==true){this._updateTooltip()}}if(b.color!=d.color){if(b.color==""){e.css("background-color","");e.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}else{e.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));e.css("background-color",b.color)}}},_appendTitleAndDescription:function(){var d;if(this.orientation=="horizontal"){if(this.rtl==true){d=this.toThemeProperty("jqx-bulletchart-title-description-rtl")}else{d=this.toThemeProperty("jqx-bulletchart-title-description-ltr")}}else{d=this.toThemeProperty("jqx-bulletchart-title-description-vertical")}var g=this.rtl?"rtl":"ltr";var b="<div id='"+this.element.id+"Title' class='"+this.toThemeProperty("jqx-bulletchart-title")+" "+d+"' style='direction: "+g+";'>"+this.title+"</div><div id='"+this.element.id+"Description' class='"+this.toThemeProperty("jqx-bulletchart-description")+" "+d+"' style='direction: "+g+";'>"+this.description+"</div>";var e=a("<div style='position: absolute; visibility: hidden;'>"+b+"</div>");this._titleContainer.append(e);var h=e.children();var c=a(h[0]).height()+a(h[1]).height();e.remove();var f;if(this.orientation=="horizontal"){if(this.rtl==false){f=this.toThemeProperty("jqx-bulletchart-title-inner-container")+" "+this.toThemeProperty("jqx-bulletchart-title-inner-container-ltr")}else{f=this.toThemeProperty("jqx-bulletchart-title-inner-container")+" "+this.toThemeProperty("jqx-bulletchart-title-inner-container-rtl")}}else{f=""}this._titleContainer.append("<div class='"+f+"' style='height: "+c+"px;'>"+b+"</div>")},_appendTicksAndLabels:function(){var o=a("<div style='position: absolute; visibility: hidden;'></div>");this._chartContainer.append(o);var j="";var e=this._min<0?true:false;var b=this.ticks.size;if(this.orientation=="horizontal"){var k=this._titleContainer.width();var r=this._chartContainer.offset().top-this.host.offset().top;if(this.ticks.position=="both"||this.ticks.position=="far"){var l=this._chartContainer.height()+r}for(var h=0;h<=this._interval;h+=this.ticks.interval){var c=h*this._valueToPixelsHorizontal+k;if(h+this.ticks.interval>this._interval){c-=1}if(e){var d=(h+this._min)==0?true:false;if(d){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-horizontal")+" "+this.toThemeProperty("jqx-bulletchart-zero-tick")+"' style='top: "+r+"px; "+m+": "+c+"px; height: "+this._chartContainer.height()+"px;'></div>";e=false}}var n=this._labelValue(h);o.html(n);var p=c-o.width()/2;var m=this.rtl?"right":"left";if(this.ticks.position=="both"||this.ticks.position=="far"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-horizontal")+"' style='top: "+l+"px; "+m+": "+c+"px; height: "+b+"px;'></div>";j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='top: "+(l+b+2)+"px; "+m+": "+p+"px;'>"+n+"</div>"}if(this.ticks.position=="both"||this.ticks.position=="near"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-horizontal")+"' style='top: "+(r-b)+"px; "+m+": "+c+"px; height: "+b+"px;'></div>";j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='top: "+(r-(b+o.height()+2))+"px; "+m+": "+p+"px;'>"+n+"</div>"}}}else{if(this.orientation=="vertical"){var g=this._chartContainer.offset().left-this.host.offset().left;if(this.ticks.position=="both"||this.ticks.position=="far"){var q=this._chartContainer.width()}for(var h=0;h<=this._interval;h+=this.ticks.interval){var f=h*this._valueToPixelsVertical;if(h+this.ticks.interval>this._interval){f-=1}if(e){var d=(h+this._min)==0?true:false;if(d){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-vertical")+" "+this.toThemeProperty("jqx-bulletchart-zero-tick")+"' style='left: "+g+"px; bottom: "+f+"px; width: "+q+"px;'></div>";e=false}}if(this.ticks.position=="both"||this.ticks.position=="near"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-vertical")+"' style='left: "+(g-b)+"px; bottom: "+f+"px; width: "+b+"px;'></div>";var n=this._labelValue(h,"near");o.html(n);var p=o.height()/2-1;j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='left: "+(g-(b+o.width()+2))+"px; bottom: "+(f-p)+"px;'>"+n+"</div>"}if(this.ticks.position=="both"||this.ticks.position=="far"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-vertical")+"' style='left: "+(q+g)+"px; bottom: "+f+"px; width: "+b+"px;'></div>";var n=this._labelValue(h,"far");o.html(n);var p=o.height()/2-1;j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='left: "+(q+g+b+2)+"px; bottom: "+(f-p)+"px;'>"+n+"</div>"}}}}this.host.append(j);o.remove()},_labelValue:function(d,b){var e=d+this._min;var c;if(this.labelsFormatFunction){c=this.labelsFormatFunction(e,b)}else{c=a.jqx.dataFormat.formatnumber(e,this.labelsFormat)}return c},_initializeTooltip:function(){var c=this;var d=this._tooltipContent();this.host.jqxTooltip({theme:this.theme,position:"mouse",content:d,trigger:"none",autoHide:false,rtl:this.rtl});this.host.jqxTooltip("getInstance").val=a.proxy(this.val,this);var b=a("#"+this.element.id+"Pointer, #"+this.element.id+"Target");this.addHandler(b,"mouseenter.bulletchart"+this.element.id,function(e){if(c.disabled==false){c.host.jqxTooltip("open",e.pageX,e.pageY);if(e.target.id==c.element.id+"Pointer"&&c.pointer.color==""||e.target.id==c.element.id+"Target"&&c.target.color==""){a(e.target).removeClass(c.toThemeProperty("jqx-fill-state-pressed"));a(e.target).addClass(c.toThemeProperty("jqx-fill-state-hover"))}}});this.addHandler(b,"mouseleave.bulletchart"+this.element.id,function(e){if(c.disabled==false){c.host.jqxTooltip("close");if(e.target.id==c.element.id+"Pointer"&&c.pointer.color==""||e.target.id==c.element.id+"Target"&&c.target.color==""){a(e.target).removeClass(c.toThemeProperty("jqx-fill-state-hover"));a(e.target).addClass(c.toThemeProperty("jqx-fill-state-pressed"))}}})},_updateTooltip:function(){this.host.jqxTooltip({content:this._tooltipContent()})},_tooltipContent:function(){var c;if(this.tooltipFormatFunction){c=this.tooltipFormatFunction(this.pointer.value,this.target.value)}else{var b=a.jqx.dataFormat.formatnumber(this.pointer.value,this.labelsFormat);var d=a.jqx.dataFormat.formatnumber(this.target.value,this.labelsFormat);c="<div>"+this.pointer.label+": "+b+"</div><div>"+this.target.label+": "+d+"</div>"}return c},_updateValue:function(m,d,k){var j=this;var c=a("#"+this.element.id+"Pointer");var g,h,l,n;var f=function(p,r,q){if(j._min>=0){if(p=="vertical"){c.css("bottom",0)}else{if(j.rtl==true&&p=="horizontal"){c.css("right",0)}}g=(m-j._min)*r}else{if(m>=0){if(p=="horizontal"){if(j.rtl==true){h="right";l="left"}else{h="left"}}else{if(p=="vertical"){h="bottom";l="top"}}var o=-j._min*r}else{if(p=="horizontal"){if(j.rtl==true){h="left"}else{h="right";l="left"}}else{if(p=="vertical"){h="top"}}var o=q+j._min*r}c.css(h,o);if(l){c.css(l,"")}if(m*d<0){if(p=="horizontal"){c.width(0)}else{if(p=="vertical"){c.height(0)}}}g=Math.abs(m*r)}return g};var i=function(){if(!k){j._raiseEvent("0")}};if(this.orientation=="horizontal"){var e=f("horizontal",this._valueToPixelsHorizontal,this._chartContainer.width());setTimeout(function(){c.animate({width:e},j.animationDuration,i)},0)}else{if(this.orientation=="vertical"){var b=f("vertical",this._valueToPixelsVertical,this._chartContainer.height());setTimeout(function(){c.animate({height:b},j.animationDuration,i)},0)}}},_checkPercentage:function(f,d){var c=-1;if(f.indexOf){c=f.indexOf("%")}var g=function(h){if(!f.indexOf||f.indexOf("px")==-1){return h}else{return parseFloat(h.slice(0,f.indexOf("px")))}};var e=function(h){return parseFloat(h.slice(0,c))};if(c==-1){var b;if(this.orientation=="horizontal"){b=d.height()}else{if(this.orientation=="vertical"){b=d.width()}}return((b-g(f))/2)+"px"}else{return((100-e(f))/2)+"%"}},_normaliseValue:function(b){if(!b.indexOf||(b.indexOf("px")==-1&&b.indexOf("%")==-1)){return b+"px"}else{return b}}})})(jqxBaseFramework);(function(b){b.jqx.jqxWidget("jqxEditor","",{});b.extend(b.jqx._jqxEditor.prototype,{defineInstance:function(){var d={width:null,height:null,disabled:false,pasteMode:"html",editable:true,lineBreak:"default",toolbarPosition:"top",commands:{bold:{tooltip:"Bold",command:"bold",type:"toggleButton"},italic:{tooltip:"Italic",command:"italic",type:"toggleButton"},underline:{tooltip:"Underline",command:"underline",type:"toggleButton"},format:{placeHolder:"Format Block",tooltip:"Format Block",command:"formatblock",value:[{value:"p",label:"Paragraph"},{value:"h1",label:"Header 1"},{value:"h2",label:"Header 2"},{value:"h3",label:"Header 3"},{value:"h4",label:"Header 4"}],type:"list",width:120,dropDownWidth:190,height:25},font:{placeHolder:"Font",tooltip:"Font Name",command:"fontname",value:[{label:"Arial",value:"Arial, Helvetica, sans-serif"},{label:"Comic Sans MS",value:'"Comic Sans MS", cursive, sans-serif'},{label:"Courier New",value:'"Courier New", Courier, monospace'},{label:"Georgia",value:"Georgia,serif"},{label:"Impact",value:"Impact,Charcoal,sans-serif"},{label:"Lucida Console",value:"'Lucida Console',Monaco,monospace"},{label:"Tahoma",value:"Tahoma,Geneva,sans-serif"},{label:"Times New Roman",value:"'Times New Roman',Times,serif"},{label:"Trebuchet MS",value:'"Trebuchet MS",Helvetica,sans-serif'},{label:"Verdana",value:"Verdana,Geneva,sans-serif"}],type:"list",width:160,height:25,dropDownWidth:160},size:{placeHolder:"Size",tooltip:"Font Size",command:"fontsize",value:[{label:"1 (8pt)",value:"xx-small"},{label:"2 (10pt)",value:"x-small"},{label:"3 (12pt)",value:"small"},{label:"4 (14pt)",value:"medium"},{label:"5 (18pt)",value:"large"},{label:"6 (24pt)",value:"x-large"},{label:"7 (36pt)",value:"xx-large"}],type:"list",width:45,height:25,dropDownWidth:160},color:{tooltip:"Text Color",command:"forecolor",value:"#000",type:"colorPicker"},background:{tooltip:"Fill Color",command:"backcolor",value:"#fff",type:"colorPicker"},left:{tooltip:"Align Left",command:"justifyleft",type:"toggleButton"},center:{tooltip:"Align Center",command:"justifycenter",type:"toggleButton"},right:{tooltip:"Align Right",command:"justifyright",type:"toggleButton"},outdent:{tooltip:"Indent Less",command:"outdent",type:"button"},indent:{tooltip:"Indent More",command:"indent",type:"button"},ul:{tooltip:"Insert unordered list",command:"insertunorderedlist",type:"toggleButton"},ol:{tooltip:"Insert ordered list",command:"insertorderedlist",type:"toggleButton"},image:{tooltip:"Insert image",command:"insertimage",type:"button"},link:{tooltip:"Insert link",command:"createlink",type:"toggleButton"},html:{tooltip:"View source",command:"viewsource",type:"toggleButton"},clean:{tooltip:"Remove Formatting",command:"removeformat",type:"button"}},createCommand:null,defaultLocalization:{bold:"Bold",italic:"Italic",underline:"Underline",format:"Format Block",font:"Font Name",size:"Font Size",color:"Text Color",background:"Fill Color",left:"Align Left",center:"Align Center",right:"Align Right",outdent:"Indent Less",indent:"Indent More",ul:"Insert unordered list",ol:"Insert ordered list",image:"Insert image",link:"Insert link",html:"View source",clean:"Remove Formatting",Remove:"Remove",Ok:"Ok",Cancel:"Cancel",Change:"Change","Go to link":"Go to link","Open in a new window/tab":"Open in a new window/tab",Align:"Align",VSpace:"VSpace",HSpace:"HSpace",Width:"Width",Height:"Height",Title:"Title",URL:"URL","Insert Image":"Insert Image","Insert Link":"Insert Link","Alt Text":"Alt Text","not set":"&ltnot set&gt",Left:"Left",Right:"Right",Paragraph:"Paragraph",Header:"Header",Arial:"Arial","Comic Sans MS":"Comic Sans MS","Courier New":"Courier New",Georgia:"Georgia",Impact:"Impact","Lucida Console":"Lucida Console",Tahoma:"Tahoma","Times New Roman":"Times New Roman","Trebuchet MS":"Trebuchet MS",Verdana:"Verdana"},localization:null,tools:"bold italic underline | format font size | color background | left center right | outdent indent | ul ol | image | link | clean | html",readOnly:false,stylesheets:new Array(),rtl:false,colorPickerTemplate:'<div class="jqx-editor-color-picker"><div role="grid"><table class="jqx-editor-color-picker-table" cellspacing="0" cellpadding="0"><tbody><tr><td aria-label="RGB (0, 0, 0)"><div title="RGB (0, 0, 0)" style="background-color: rgb(0, 0, 0);"></div></td><td aria-label="RGB (68, 68, 68)"><div title="RGB (68, 68, 68)" style="background-color: rgb(68, 68, 68);"></div></td><td aria-label="RGB (102, 102, 102)"><div title="RGB (102, 102, 102)" style="background-color: rgb(102, 102, 102);"></div></td><td aria-label="RGB (153, 153, 153)"><div title="RGB (153, 153, 153)" style="background-color: rgb(153, 153, 153);"></div></td><td aria-label="RGB (204, 204, 204)"><div title="RGB (204, 204, 204)" style="background-color: rgb(204, 204, 204);"></div></td><td aria-label="RGB (238, 238, 238)"><div title="RGB (238, 238, 238)" style="background-color: rgb(238, 238, 238);"></div></td><td aria-label="RGB (243, 243, 243)"><div title="RGB (243, 243, 243)" style="background-color: rgb(243, 243, 243);"></div></td><td aria-label="RGB (255, 255, 255)"><div title="RGB (255, 255, 255)" style="background-color: rgb(255, 255, 255);"></div></td></tr></tbody></table></div><div role="grid"><table class="jqx-editor-color-picker-table" cellspacing="0" cellpadding="0"><tbody><tr><td aria-label="RGB (255, 0, 0)"><div title="RGB (255, 0, 0)" style="background-color: rgb(255, 0, 0);"></div></td><td aria-label="RGB (255, 153, 0)"><div title="RGB (255, 153, 0)" style="background-color: rgb(255, 153, 0);"></div></td><td aria-label="RGB (255, 255, 0)"><div title="RGB (255, 255, 0)" style="background-color: rgb(255, 255, 0);"></div></td><td aria-label="RGB (0, 255, 0)"><div title="RGB (0, 255, 0)" style="background-color: rgb(0, 255, 0);"></div></td><td aria-label="RGB (0, 255, 255)"><div title="RGB (0, 255, 255)" style="background-color: rgb(0, 255, 255);"></div></td><td aria-label="RGB (0, 0, 255)"><div title="RGB (0, 0, 255)" style="background-color: rgb(0, 0, 255);"></div></td><td aria-label="RGB (153, 0, 255)"><div title="RGB (153, 0, 255)" style="background-color: rgb(153, 0, 255);"></div></td><td aria-label="RGB (255, 0, 255)"><div title="RGB (255, 0, 255)" style="background-color: rgb(255, 0, 255);"></div></td></tr></tbody></table></div><div role="grid"><table class="jqx-editor-color-picker-table" cellspacing="0" cellpadding="0"><tbody><tr><td aria-label="RGB (244, 204, 204)"><div title="RGB (244, 204, 204)" style="background-color: rgb(244, 204, 204);"></div></td><td aria-label="RGB (252, 229, 205)"><div title="RGB (252, 229, 205)" style="background-color: rgb(252, 229, 205);"></div></td><td aria-label="RGB (255, 242, 204)"><div title="RGB (255, 242, 204)" style="background-color: rgb(255, 242, 204);"></div></td><td aria-label="RGB (217, 234, 211)"><div title="RGB (217, 234, 211)" style="background-color: rgb(217, 234, 211);"></div></td><td aria-label="RGB (208, 224, 227)"><div title="RGB (208, 224, 227)" style="background-color: rgb(208, 224, 227);"></div></td><td aria-label="RGB (207, 226, 243)"><div title="RGB (207, 226, 243)" style="background-color: rgb(207, 226, 243);"></div></td><td aria-label="RGB (217, 210, 233)"><div title="RGB (217, 210, 233)" style="background-color: rgb(217, 210, 233);"></div></td><td aria-label="RGB (234, 209, 220)"><div title="RGB (234, 209, 220)" style="background-color: rgb(234, 209, 220);"></div></td></tr><tr><td id="T-Kw-Jn88" aria-label="RGB (234, 153, 153)"><div title="RGB (234, 153, 153)" style="background-color: rgb(234, 153, 153);"></div></td><td aria-label="RGB (249, 203, 156)"><div title="RGB (249, 203, 156)" style="background-color: rgb(249, 203, 156);"></div></td><td aria-label="RGB (255, 229, 153)"><div title="RGB (255, 229, 153)" style="background-color: rgb(255, 229, 153);"></div></td><td aria-label="RGB (182, 215, 168)"><div title="RGB (182, 215, 168)" style="background-color: rgb(182, 215, 168);"></div></td><td aria-label="RGB (162, 196, 201)"><div title="RGB (162, 196, 201)" style="background-color: rgb(162, 196, 201);"></div></td><td aria-label="RGB (159, 197, 232)"><div title="RGB (159, 197, 232)" style="background-color: rgb(159, 197, 232);"></div></td><td aria-label="RGB (180, 167, 214)"><div title="RGB (180, 167, 214)" style="background-color: rgb(180, 167, 214);"></div></td><td aria-label="RGB (213, 166, 189)"><div title="RGB (213, 166, 189)" style="background-color: rgb(213, 166, 189);"></div></td></tr><tr><td aria-label="RGB (224, 102, 102)"><div title="RGB (224, 102, 102)" style="background-color: rgb(224, 102, 102);"></div></td><td aria-label="RGB (246, 178, 107)"><div title="RGB (246, 178, 107)" style="background-color: rgb(246, 178, 107);"></div></td><td aria-label="RGB (255, 217, 102)"><div title="RGB (255, 217, 102)" style="background-color: rgb(255, 217, 102);"></div></td><td aria-label="RGB (147, 196, 125)"><div title="RGB (147, 196, 125)" style="background-color: rgb(147, 196, 125);"></div></td><td aria-label="RGB (118, 165, 175)"><div title="RGB (118, 165, 175)" style="background-color: rgb(118, 165, 175);"></div></td><td aria-label="RGB (111, 168, 220)"><div title="RGB (111, 168, 220)" style="background-color: rgb(111, 168, 220);"></div></td><td aria-label="RGB (142, 124, 195)"><div title="RGB (142, 124, 195)" style="background-color: rgb(142, 124, 195);"></div></td><td aria-label="RGB (194, 123, 160)"><div title="RGB (194, 123, 160)" style="background-color: rgb(194, 123, 160);"></div></td></tr><tr><td id="T-Kw-Jn104" aria-label="RGB (204, 0, 0)"><div title="RGB (204, 0, 0)" style="background-color: rgb(204, 0, 0);"></div></td><td aria-label="RGB (230, 145, 56)"><div title="RGB (230, 145, 56)" style="background-color: rgb(230, 145, 56);"></div></td><td aria-label="RGB (241, 194, 50)"><div title="RGB (241, 194, 50)" style="background-color: rgb(241, 194, 50);"></div></td><td aria-label="RGB (106, 168, 79)"><div title="RGB (106, 168, 79)" style="background-color: rgb(106, 168, 79);"></div></td><td aria-label="RGB (69, 129, 142)"><div title="RGB (69, 129, 142)" style="background-color: rgb(69, 129, 142);"></div></td><td aria-label="RGB (61, 133, 198)"><div title="RGB (61, 133, 198)" style="background-color: rgb(61, 133, 198);"></div></td><td aria-label="RGB (103, 78, 167)"><div title="RGB (103, 78, 167)" style="background-color: rgb(103, 78, 167);"></div></td><td aria-label="RGB (166, 77, 121)"><div title="RGB (166, 77, 121)" style="background-color: rgb(166, 77, 121);"></div></td></tr><tr><td aria-label="RGB (153, 0, 0)"><div title="RGB (153, 0, 0)" style="background-color: rgb(153, 0, 0);"></div></td><td aria-label="RGB (180, 95, 6)"><div title="RGB (180, 95, 6)" style="background-color: rgb(180, 95, 6);"></div></td><td aria-label="RGB (191, 144, 0)"><div title="RGB (191, 144, 0)" style="background-color: rgb(191, 144, 0);"></div></td><td aria-label="RGB (56, 118, 29)"><div title="RGB (56, 118, 29)" style="background-color: rgb(56, 118, 29);"></div></td><td aria-label="RGB (19, 79, 92)"><div title="RGB (19, 79, 92)" style="background-color: rgb(19, 79, 92);"></div></td><td aria-label="RGB (11, 83, 148)"><div title="RGB (11, 83, 148)" style="background-color: rgb(11, 83, 148);"></div></td><td aria-label="RGB (53, 28, 117)"><div title="RGB (53, 28, 117)" style="background-color: rgb(53, 28, 117);"></div></td><td aria-label="RGB (116, 27, 71)"><div title="RGB (116, 27, 71)" style="background-color: rgb(116, 27, 71);"></div></td></tr><tr><td aria-label="RGB (102, 0, 0)"><div title="RGB (102, 0, 0)" style="background-color: rgb(102, 0, 0);"></div></td><td aria-label="RGB (120, 63, 4)"><div title="RGB (120, 63, 4)" style="background-color: rgb(120, 63, 4);"></div></td><td aria-label="RGB (127, 96, 0)"><div title="RGB (127, 96, 0)" style="background-color: rgb(127, 96, 0);"></div></td><td aria-label="RGB (39, 78, 19)"><div title="RGB (39, 78, 19)" style="background-color: rgb(39, 78, 19);"></div></td><td aria-label="RGB (12, 52, 61)"><div title="RGB (12, 52, 61)" style="background-color: rgb(12, 52, 61);"></div></td><td aria-label="RGB (7, 55, 99)"><div title="RGB (7, 55, 99)" style="background-color: rgb(7, 55, 99);"></div></td><td aria-label="RGB (32, 18, 77)"><div title="RGB (32, 18, 77)" style="background-color: rgb(32, 18, 77);"></div></td><td aria-label="RGB (76, 17, 48)"><div title="RGB (76, 17, 48)" style="background-color: rgb(76, 17, 48);"></div></td></tr></tbody></table></div></div>',touchMode:false,keyPressed:null,events:["change"]};b.extend(true,this,d);this.localization=this.defaultLocalization;return d},createInstance:function(f){var j=this;j.textArea=j.host;var d=j.host.attr("contenteditable");j.host.addClass(j.toThemeProperty("jqx-widget"));if(d==true||d=="true"){j.inline=true;j.widget=j.host;j.editorDocument=document;j.selection=new a(j.editorDocument);var i=b("<div class='jqx-editor-toolbar-container' unselectable='on' aria-label='Formatting options' role='toolbar'><div class='jqx-editor-toolbar'></div>");i.insertBefore(j.host);j.toolbarContainer=i;j.toolbar=i.find(".jqx-editor-toolbar");j.editor=j.host;j.contentEditableElement=j.element}else{var g=b("<div class='jqx-editor'><div class='jqx-editor-container'><div class='jqx-editor-toolbar-container' aria-label='Formatting options' role='toolbar'><div class='jqx-editor-toolbar'></div></div><div class='jqx-editor-content'><iframe  src='javascript:\"<html></html>\"' allowtransparency='true' frameborder='0'></iframe></div></div></div>");j.widget=g;j.widget[0].className=j.widget[0].className+" "+j.element.className;try{j.widget[0].style=j.element.style}catch(e){}var h=b.trim(j.host.html())+"&#8203;";if(j.lineBreak=="default"||j.lineBreak=="div"){h="<div>"+h+"</div>"}else{if(j.lineBreak=="p"){h="<p>"+h+"</p>"}}h=h.replace(/&lt;/ig,"<");h=h.replace(/&gt;/ig,">");j.host.css("display","none");j.host.after(g);g.find("iframe").after(j.host);j.container=g.find(".jqx-editor-container");j.toolbarContainer=g.find(".jqx-editor-toolbar-container");j.toolbar=g.find(".jqx-editor-toolbar");j.iframe=g.find("iframe");j.content=g.find(".jqx-editor-content");var k=function(){j.editorDocument=j.iframe[0].contentWindow.document;j.selection=new a(j.editorDocument);var o=0;j.addHandler(j.iframe,"load",function(){o++;if(o>1){j.iframe.off("load");j.content.find("iframe").remove();var q=b("<iframe  src='javascript:\"<html></html>\"' allowtransparency='true' frameborder='0'></iframe>").appendTo(j.content);j.iframe=g.find("iframe");k()}});if(!b.jqx.browser.mozilla){j.editorDocument.designMode="On"}j.editorDocument.open();var m=j.rtl?"direction:rtl;":"";var l=b.jqx.browser.msie?"::selection{color: #fff; background: #328EFD;};::-moz-selection{color: #fff; background: #328eD;};::selection:window-inactive {background: #c7c7c7; color: #000;}::-moz-selection:window-inactive {background: #c7c7c7; color: #000;}html{font-size:13px; height:100%;}body{padding-top:1px;margin-top:-1px; padding-right: 1px; overflow-x: hidden;word-wrap: break-word;-webkit-nbsp-mode: space;-webkit-line-break: after-white-space;":"";j.editorDocument.write("<!DOCTYPE html><html><head><meta charset='utf-8' /><style>html,body{padding:0; margin:0; font-size: 13px; font-family:Verdana,Geneva,sans-serif; background:#fff; min-height:100%; "+m+"}"+l+"}h1{font-size:2em;margin:.67em 0}h2{font-size: 1.5em; margin: .75em 0}h3{font-size: 1.17em; margin: .83em 0}h4{font-size:1em; margin: 1.12em 0 }h5{font-size: .83em; margin: 1.5em 0}h6{font-size: .75em; margin: 1.67em 0}p{margin: 0px;padding:0 .2em}ul,ol{padding-left:2.5em}a{color:#00a}code{font-size:1.23em}.jqx-editor-paste-element {position: absolute; left: -1000px; height: 1px; overflow: hidden; top: -1000px;}.jqx-editor-focus {border: 1px solid #aaa !important;}</style>"+b.map(j.stylesheets,function(q){return"<link rel='stylesheet' href='"+q+"'>"}).join("")+"</head><body autocorrect='off' contenteditable='true'></body></html>");j.contentEditableElement=j.editorDocument.body;if(j.host.is("textarea")){j._textArea=j.element;var n=j.host.data();n.jqxEditor.host=g;n.jqxEditor.element=g[0];j.element=g[0];g[0].id=j._textArea.id;j._textArea.id=j._textArea.id+"TextArea";b(j.element).addClass(j.toThemeProperty("jqx-widget"));j.host=b(j.element);j.host.data(n)}else{var n=j.host.data();n.jqxEditor.host=g;n.jqxEditor.element=g[0];j.element=g[0];j.host=b(j.element);j.host.data(n)}try{j.editorDocument.execCommand("useCSS",false,false);j.editorDocument.execCommand("enableInlineTableEditing",null,false)}catch(p){}try{j.editorDocument.execCommand("styleWithCSS",0,true)}catch(p){}j.editorDocument.close();j.editor=b(j.editorDocument.body);j.editor.html(h).attr("spellcheck",false).attr("autocorrect","off")};k();b.jqx.utilities.resize(j.host,function(){j.widget.css("width",j.width);j.widget.css("height",j.height);j._arrange()})}},focus:function(){var e=this;if(b.jqx.browser.mozilla){if(!e.focused){if(e.iframe){e.iframe.focus()}e.selection.selectNode(e.editor[0].firstChild,true);e.selection.getRange().collapse(true)}}e.editor.focus();var d=e.range!=null?e.range:e.getRange();e.selectRange(d)},print:function(){var d=window.open("","_blank","width=450,height=470,left=400,top=100,menubar=yes,toolbar=no,location=no,scrollbars=yes");d.document.open();d.document.write('<!doctype html><html><head><title>Print</title></head><body onload="print();">'+this.val()+"</body></html>");d.document.close()},refresh:function(d){var m=this;b.each(this.defaultLocalization,function(i,r){if(!m.localization[i]){m.localization[i]=r}});m._removeHandlers();m.toolbar.addClass(m.toThemeProperty("jqx-widget-header"));if(m.content){m.widget.css("width",m.width);m.widget.css("height",m.height);m.widget.addClass(m.toThemeProperty("jqx-editor"));m.widget.addClass(m.toThemeProperty("jqx-widget"));m.widget.addClass(m.toThemeProperty("jqx-rc-all"));m.widget.addClass(m.toThemeProperty("jqx-widget-header"));m.content.addClass(m.toThemeProperty("jqx-widget-content"));m.container.addClass(m.toThemeProperty("jqx-editor-container"))}else{m.toolbarContainer.addClass(m.toThemeProperty("jqx-widget-header"));m.toolbarContainer.addClass(m.toThemeProperty("jqx-editor-toolbar-inline"));m.toolbarContainer.addClass(m.toThemeProperty("jqx-widget"));m.toolbarContainer.addClass(m.toThemeProperty("jqx-rc-all"));m.toolbarContainer.hide();m.toolbarContainer.css("position","absolute");m.editor.addClass(m.toThemeProperty("jqx-editor-inline"));m.toolbarContainer.css("width",m.host.outerWidth()+"px")}var n=m.toolbarContainer.index();if(m.toolbarPosition=="top"&&n!=0||m.toolbarPosition=="bottom"&&n!=1){switch(m.toolbarPosition){case"bottom":m.toolbarContainer.insertAfter(m.content);break;case"top":default:m.toolbarContainer.insertBefore(m.content);break}}var h=m.tools;if(h!==false){var l=h.split(" ");var p=h.split(" | ");var q=function(i,r){b.each(r,function(y,F){var u=m.commands[this];if(!u){if(m.createCommand){u=m.createCommand(this.toString());if(!u){return true}if(!m.commands[this]){m.commands[this]=u}}else{return true}}else{if(m.createCommand){var x=m.createCommand(this.toString());u=b.extend(u,x)}}if(m.localization[this]){u.tooltip=m.localization[this]}switch(u.type){case"list":if(u.widget){u.widget.jqxDropDownList("destroy")}var A=function(R,Q,S){if(u.command=="formatblock"){return"<"+S+' unselectable="on" style="padding: 0px; margin: 0px;">'+Q+"</"+S+">"}else{if(u.command=="fontname"){return'<span unselectable="on" style="font-family: '+S+';">'+Q+"<span>"}else{if(u.command=="fontsize"){return'<span unselectable="on" style="font-size: '+S+';">'+Q+"<span>"}}}};var t=function(){var Q=m.toThemeProperty("jqx-editor-toolbar-icon")+" "+m.toThemeProperty("jqx-editor-toolbar-icon-"+u.command);var R="<div unselectable='on' style='margin-top: 0px; padding:0px;' class='"+Q+"'></div>";return R};var C=u.command=="formatblock"||u.command=="fontname"||u.command=="fontsize";var z=u.value||[];var N=new Array();var J=u.placeHolder||"Please Choose:";if(u.command=="fontname"){b.each(z,function(){var Q=m.localization[this.label];N.push({label:Q,value:this.value})})}else{if(u.command=="formatblock"){J=m.localization.format;b.each(z,function(){if(this.label.indexOf("Header")>=0){var Q=this.label.replace("Header",m.localization.Header)}else{var Q=m.localization[this.label]}N.push({label:Q,value:this.value})})}else{N=z}}var P={enableBrowserBoundsDetection:true,touchMode:m.touchMode,width:u.width||100,height:u.height||25,dropDownWidth:u.dropDownWidth||"auto",autoDropDownHeight:(u.value&&u.value.length)<12?true:false,placeHolder:J,source:N,theme:m.theme,keyboardSelection:false,focusable:false,disabled:m.disabled,rtl:m.rtl,selectionRenderer:u.command=="fontsize"?t:null,renderer:C?A:null};var D="jqx-disableselect "+m.toThemeProperty("jqx-editor-dropdownlist")+" "+m.toThemeProperty("jqx-editor-toolbar-item");var w=b("<div unselectable='on' class='"+D+"'></div>");w.appendTo(i);w.jqxDropDownList(P);if(u.init){u.init(w)}var F=null;var E=null;var K="";m.addHandler(w,"mousedown",function(R){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){var Q=b(".jqx-editor-dropdownlist");b.each(Q,function(S,T){if(T!=w[0]){b(T).jqxDropDownList("close")}})}});m.addHandler(w,"open",function(Q){if(!m.focused){m.focus()}m.updating=true;m.activeElement=w;F=w.val();K=""});m.addHandler(w,"change",function(Q){m.updating=false;m.activeElement=null;E=w.val();K=Q.args.type;if(b.jqx.browser.msie&&b.jqx.browser.version<9){m.focus()}});m.addHandler(w,"close",function(Q){m.updating=false;m.activeElement=null;if(F!=E){if(K=="mouse"||K=="keyboard"){m._refreshTools()}}});m._addCommandHandler(w,"change",u.command,null,u);break;case"colorPicker":if(u.widget){b(u.colorPicker).remove();u.widget.jqxDropDownButton("destroy")}var B=b('<div unselectable="on" style="padding-top: 4px;"></div>').attr("id","picker-"+u.command);var D="jqx-disableselect "+m.toThemeProperty("jqx-editor-dropdownpicker")+" "+m.toThemeProperty("jqx-editor-toolbar-item");var w=b("<div unselectable='on' class='"+D+"'></div>");w.appendTo(i);w.append(B);w.jqxDropDownButton({touchMode:m.touchMode,disabled:m.disabled,enableBrowserBoundsDetection:true,width:u.width||45,height:u.height||25,rtl:m.rtl,focusable:false,theme:m.theme});var I=b('<div unselectable="on" style="z-index: 55;">');var s=m.toThemeProperty("jqx-editor-toolbar-icon")+" "+m.toThemeProperty("jqx-editor-toolbar-icon-"+u.command);var O=b("<div unselectable='on' class='"+s+"'></div>");I.append(O);var L=b('<div unselectable="on" class="jqx-editor-color-bar">').attr("id","bar-"+u.command).css("background-color",u.value);I.append(L);w.jqxDropDownButton("setContent",I);B.append(b(m.colorPickerTemplate));u.colorPicker=B;if(u.init){u.init(w)}B.find("tr").attr("role","row").attr("unselectable","on");B.find("td").attr("role","gridcell").attr("unselectable","on").css("-webkit-user-select","none");B.find("div").attr("unselectable","on");m.addHandler(w,"mousedown",function(R){if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}if(b(".jqx-editor-dropdownpicker").length>0){var Q=b(".jqx-editor-dropdownpicker");b.each(Q,function(S,T){if(T!=w[0]){b(T).jqxDropDownButton("close")}})}});m.addHandler(w,"open",function(){if(!m.focused){m.focus()}m.updating=true;m.activeElement=B});m.addHandler(w,"close",function(Q){m.updating=false;m.activeElement=null;if(F!=E){if(K=="mouse"||K=="keyboard"){m._refreshTools()}}});m.addHandler(B,"keydown",function(Q){var Y=Q.keyCode;var V=b(B).find(".jqx-editor-color-picker-selected-cell");var aa=B.find("tr");var T=aa.length;var S=V.parent().children().length;var U=V.index();var W=-999;var Z=V.parent();b.each(aa,function(ab,ac){if(this==Z[0]){W=ab;return false}});switch(Y){case 27:w.jqxDropDownButton("close");break;case 13:b(V).trigger("mousedown");break;case 38:W--;break;case 40:W++;break;case 39:U++;break;case 37:U--;break}if(W>=0&&W<=T){if(U>=0&&U<=S){var Z=B.find("tr")[W];var X=b(Z).children()[U];var R=b(X).children().css("background-color");u.val(R)}}});var M=b(B).find("td");u.val=function(Q){var R=m._rgbToHex(Q);b.each(M,function(){var S=b(this).children().css("background-color");var T=m._rgbToHex(S);if(T==R){M.removeClass("jqx-editor-color-picker-selected-cell");b(this).addClass("jqx-editor-color-picker-selected-cell");b("#bar-"+u.command).css("background",S);return false}})};u.val(u.value);m._addCommandHandler(M,"mousedown",u.command,null,u);break;case"button":case"toggleButton":default:if(u.widget){if(u.type=="button"){u.widget.jqxButton("destroy")}else{u.widget.jqxToggleButton("destroy")}}var v=u.command;var H=u.action;var s=m.toThemeProperty("jqx-editor-toolbar-icon")+" "+m.toThemeProperty("jqx-editor-toolbar-icon-"+v);var O=b("<div unselectable='on' class='"+s+"'></div>");var w=b("<div unselectable='on'></div>").addClass("jqx-disableselect").addClass(m.toThemeProperty("jqx-editor-toolbar-button"));if(!u.init){w.append(O)}else{if(v){w.append(O)}}w.appendTo(i);if(u.type=="button"){w.jqxButton({disabled:m.disabled,rtl:m.rtl,theme:m.theme})}else{if(u.type=="toggleButton"){w.jqxToggleButton({disabled:m.disabled,rtl:m.rtl,uiToggle:false,theme:m.theme})}}if(u.init){u.init(w)}u.toggled=false;u.toggle=function(){u.toggled=!u.toggled};m.addHandler(w,"mousedown",function(Q){if(Q.preventDefault){Q.preventDefault()}if(Q.stopPropagation){Q.stopPropagation()}return false});if(!b.jqx.mobile.isTouchDevice()){m._addCommandHandler(w,"click",v,H,u)}else{m._addCommandHandler(w,"mousedown",v,H,u)}break}u.widget=w;if(w){try{if(u.tooltip!=""){u.widget.attr("title",u.tooltip);u.widget.attr("data-tooltip",u.tooltip)}if(u.command){u.widget.attr("data-command",u.command)}u.widget.attr("aria-label",u.tooltip)}catch(G){}if(u.type=="button"||u.type=="toggleButton"){if(r.length>2){if(y==0){w.css("border-right-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-l"))}else{if(y==r.length-1){w.css("border-left-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-r"))}}w.removeClass(m.toThemeProperty("jqx-rc-all"))}if(y!=0&&y!=r.length-1&&r.length>2){w.css("border-left-radius","0px");w.css("border-right-radius","0px");w.removeClass(m.toThemeProperty("jqx-rc-all"))}else{if(r.length==2){if(y==0){w.css("border-right-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-l"))}else{w.css("border-left-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-r"))}w.removeClass(m.toThemeProperty("jqx-rc-all"))}else{if(r.length==1){w.css("margin-right","0px")}}}}}})};m.toolbar.css("direction",!this.rtl?"ltr":"rtl");if(p.length==0){q(m.toolbar,l)}else{for(var j=0;j<p.length;j++){var f=p[j];var l=f.split(" ");var o=m.toThemeProperty("jqx-editor-toolbar-group")+" "+m.toThemeProperty("jqx-fill-state-normal");var k=b("<div class='"+o+"'></div>");k.addClass(m.toThemeProperty("jqx-rc-all"));m.toolbar.append(k);q(k,l)}var g=m.toolbar.find(".jqx-editor-toolbar-group");var e=g.length;for(var j=0;j<e;j++){if(b(g[j]).children().length==0){b(g[j]).remove()}}}if(b.jqx.browser.msie&&b.jqx.browser.version<8){b(".jqx-editor-toolbar-group").css("float","left");b(".jqx-editor-toolbar-group").children().css("float","left");b(".jqx-editor-toolbar-group").css("zoom","1");b(".jqx-editor-toolbar-group").children().css("zoom","1")}}m._arrange();m._addHandlers()},_arrange:function(){var d=this;if(d.content){if(d.tools==""||d.tools==false){d.content.height(d.container.outerHeight()-parseInt(d.container.css("padding-top"))-parseInt(d.container.css("padding-bottom"))-6);d.content.css("margin-top","4px");d.toolbar.hide()}else{d.toolbar.show();d.content.css("margin-top","0px");d.content.height(d.container.outerHeight()-d.toolbar.outerHeight()-parseInt(d.container.css("padding-top"))-parseInt(d.container.css("padding-bottom"))-2);if(d.toolbarPosition!="top"){d.content.css("margin-top","4px");d.content.css("margin-bottom","0px")}}if(b.jqx.browser.msie&&b.jqx.browser.version<8){d.content.css("margin-top","4px");d.content.height(d.container.height()-d.toolbar.outerHeight()-2*parseInt(d.container.css("padding-bottom"))-10);d.content.width(d.container.width()-2*parseInt(d.container.css("padding-left"))-2)}if(d.editor.height()<d.content.height()){d.editor.height(d.content.height())}}},propertyChangedHandler:function(d,e,h,g){var f=d;if(f.isInitialized==undefined||f.isInitialized==false){return}if(e=="pasteMode"||e=="lineBreak"||e=="editable"){return}if(e=="disabled"){d._refreshTools()}if(e=="width"||e=="height"||e=="toolbarPosition"){d._arrange();return}if(e=="theme"){b.jqx.utilities.setTheme(h,g,d.host)}d.refresh()},selectRange:function(d){var e=this;if(!d){d=e.getRange()}e.selection.selectRange(d)},getRange:function(){var d=this;return d.selection.getRange()},getSelectedElement:function(){var h,k,d,g;var i=this;try{if(i.editorDocument.getSelection){var l=i.editorDocument.getSelection();h=l.getRangeAt(l.rangeCount-1);d=h.startContainer;g=h.endContainer;k=h.commonAncestorContainer;if(d.nodeName=="#text"){k=k.parentNode}if(d.nodeName=="#text"){d=d.parentNode}if(d.nodeName.toLowerCase()=="body"){d=d.firstChild}if(g.nodeName=="#text"){g=g.parentNode}if(g.nodeName.toLowerCase()=="body"){g=g.lastChild}if(d==g){k=d}return g}else{if(i.editorDocument.selection){h=i.editorDocument.selection.createRange();if(!h.duplicate){return null}k=h.parentElement();var f=h.duplicate();var e=h.duplicate();f.collapse(true);e.moveToElementText(f.parentElement());e.setEndPoint("EndToStart",f);d=f.parentElement();f=h.duplicate();e=h.duplicate();e.collapse(false);f.moveToElementText(e.parentElement());f.setEndPoint("StartToEnd",e);g=e.parentElement();if(d.nodeName.toLowerCase()=="body"){d=d.firstChild}if(g.nodeName.toLowerCase()=="body"){g=g.lastChild}if(d==g){k=d}return g}}}catch(j){return null}return null},_addHandlers:function(){var e=this;e.addHandler(e.toolbar,"mousedown.editor"+e.element.id,function(g){if(g.preventDefault){g.preventDefault()}if(g.stopPropagation){g.stopPropagation()}return false});var f=function(){if(e._textArea){if(!e.updating){e._textArea.value=e.val()}}if(e.changed){e._raiseEvent("change");e.changed=false}e.focused=false;if(e.inline){e.host.removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.host.removeClass(e.toThemeProperty("jqx-editor-inline-focus"));if(e.tools==""||e.tools==null){return}e.toolbarContainer.fadeOut("fast")}};var d=function(){e.focused=true;if(e.inline){e.host.addClass(e.toThemeProperty("jqx-fill-state-focus"));e.host.addClass(e.toThemeProperty("jqx-editor-inline-focus"));e.host.addClass(e.toThemeProperty("jqx-rc-all"));if(e.tools==""||e.tools==null){return}e.toolbarContainer.fadeIn("fast");var g=e.host.coord();if(e.toolbarPosition!="bottom"){e.toolbarContainer.offset({left:g.left,top:g.top-e.toolbarContainer.outerHeight()-5})}else{e.toolbarContainer.offset({left:g.left,top:g.top+5+e.host.height()})}}};if(b.jqx.browser.mozilla){this.addHandler(b(document),"mousedown.editor"+e.element.id,function(g){f()})}e.addHandler(e.editor,"blur.editor"+e.element.id,function(g){f()});e.addHandler(e.editor,"focus.editor"+e.element.id,function(g){d()});e.addHandler(e.editor,"beforedeactivate.editor"+e.element.id,function(g){e.range=e.getRange()});e.addHandler(e.editor,"mousedown.editor"+e.element.id,function(g){if(!g.target.href){if(e.linkPopup){e.linkPopup.remove()}}e.range=e.getRange();if(b.jqx.browser.mozilla){d();g.stopPropagation()}if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}if(e.inline){e.editor.focus()}});if(b.jqx.mobile.isTouchDevice()){e.addHandler(b(e.editorDocument),"selectionchange.editor"+e.element.id,function(){if(e.editorDocument.activeElement!=e.editor[0]){setTimeout(function(){if(e.iframe){e.iframe[0].contentWindow.focus()}},500)}});e.addHandler(b(e.editorDocument),"touchstart.editor"+e.element.id,function(){setTimeout(function(){if(e.iframe){e.iframe[0].contentWindow.focus()}},500)})}e.addHandler(e.editor,"mouseup.editor"+e.element.id,function(g){if(e._documentMode=="source"){return true}e.range=e.getRange();e._refreshTools(null,true)});e.addHandler(e.editor,"keydown.editor"+e.element.id,function(g){if(e.keyPressed){e.keyPressed(g)}if(e._documentMode=="source"){return true}if(b.jqx.browser.mozilla){if(!e.focused){d()}}if(e.disabled){if(g.preventDefault){g.preventDefault()}return false}if(e.updating){if(e.activeElement){var m=b.Event("keydown");b.extend(m,g);e.activeElement.trigger(m)}if(g.preventDefault){g.preventDefault()}return false}var n=g||window.event;var q=n.keyCode;var r=String.fromCharCode(q).toLowerCase();if(!e.editable){var l=[9,33,34,35,36,37,38,39,40,40,45];if(b.inArray(n.keyCode,l)==-1&&!(n.ctrlKey&&r=="c")&&!(n.ctrlKey&&r=="a")){g.preventDefault()}}if(e.selection.getText().length>0||e.linkPopup){var l=[8,9,13,33,34,35,36,37,38,39,40,40,45,46];if(!b.inArray(n.keyCode,l)!=-1||(n.keyCode==65&&n.ctrlKey&&!n.altKey&&!n.shiftKey)){if(e._refreshToolsTimer){clearTimeout(e._refreshToolsTimer)}e._refreshToolsTimer=setTimeout(function(){e._refreshTools(null,true,n.keyCode)},10)}}if(q==13&&e.lineBreak!="default"){var k=e.getSelectedElement();if(k){var o=k.nodeName.toLowerCase();switch(o){case"pre":case"li":case"ul":case"ol":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return true}var p=k;while(p!=null){if(p.nodeName=="#document"){p=e.editorDocument.body;break}if(p.parentNode==e.editorDocument.body||p==e.editorDocument.body){break}p=p.parentNode}}if(p){var j=e.getRange();if(e.editorDocument.body.innerHTML=="<div></div>"&&e.lineBreak!="br"){e.selection.insertContent("&#8203;")}if(e.lineBreak=="div"){if(p==e.editorDocument.body){b(p).append("<div>&#8203;</div><span id='INSERTION_MARKER'>&nbsp;</span>")}else{b("<div>&#8203;</div><span id='INSERTION_MARKER'>&nbsp;</span>").insertAfter(p)}}else{if(e.lineBreak=="p"){if(p==e.editorDocument.body){b(p).append("<p>&#8203;</p><span id='INSERTION_MARKER'>&nbsp;</span>")}else{b("<p>&#8203;</p><span id='INSERTION_MARKER'>&nbsp;</span>").insertAfter(p)}}else{e.execute("insertHTML","<br/>&#8203;<span id='INSERTION_MARKER'>&nbsp;</span>")}}e.selectRange(j);var i=b(e.editorDocument).find("#INSERTION_MARKER");if(e.lineBreak!="br"){e.selection.selectNode(b(i).prev()[0],true)}else{e.selection.selectNode(i[0],true);if(e.getRange().setStartAfter){e.getRange().setStartAfter(i[0])}}i.remove();e.selection.collapse(false);if(p&&p.nodeName&&e.lineBreak=="br"){if(p.nodeName.toLowerCase()!="#text"){e.selection.selectNode(p,true);if(e.getRange().setStartAfter){e.getRange().setStartAfter(p)}e.selection.collapse(false)}}if(e.lineBreak!="br"){j=e.getRange();if(j.select){j.select()}}if(g.preventDefault){g.preventDefault()}return false}}if(n.ctrlKey&&(r=="k"||r=="u"||r=="b"||r=="i")){if(g.preventDefault){g.preventDefault()}var h=null;switch(r){case"k":h="link";break;case"u":h="underline";break;case"b":h="bold";break;case"i":h="italic";break}if(e.commands[h].widget){e.commands[h].widget.trigger("click")}return false}});e.addHandler(e.editor,"paste.editor"+e.element.id,function(l){if(e._documentMode=="source"){return true}if(e.readOnly){return true}e.updating=true;e.readOnly=true;var m=l;var k=function(q,p){if(p){if(!e.paragraphise){q=q.replace(/\n/g,"<br />")}else{q="<p>"+q+"</p>";q=q.replace(/\n/g,"</p><p>");q=q.replace(/<p>\s<\/p>/gi,"")}}else{q=q.replace(/<html[^>]*?>(.*)/gim,"$1");q=q.replace(/<\/html>/gi,"");q=q.replace(/<body[^>]*?>(.*)/gi,"$1");q=q.replace(/<\/body>/gi,"");q=q.replace(/<style[^>]*?>[\s\S]*?<\/style[^>]*>/gi,"");q=q.replace(/<(?:meta|link)[^>]*>\s*/gi,"");q=q.replace(/<\\?\?xml[^>]*>/gi,"");q=q.replace(/<w:[^>]*>[\s\S]*?<\/w:[^>]*>/gi,"");q=q.replace(/<o:p>\s*<\/o:p>/g,"");q=q.replace(/<o:p>[\s\S]*?<\/o:p>/g,"&nbsp;");q=q.replace(/<\/?\w+:[^>]*>/gi,"");q=q.replace(/<\!--[\s\S]*?-->/g,"");q=q.replace(/<\!\[[\s\S]*?\]>/g,"");q=q.replace(/\s*mso-[^:]+:[^;"']+;?/gi,"");q=q.replace(/<(\w[^>]*) style='([^\']*)'([^>]*)/gim,"<$1$3");q=q.replace(/<(\w[^>]*) style="([^\"]*)"([^>]*)/gim,"<$1$3");q=q.replace(/\s*margin: 0cm 0cm 0pt\s*;/gi,"");q=q.replace(/\s*margin: 0cm 0cm 0pt\s*"/gi,'"');q=q.replace(/\s*text-indent: 0cm\s*;/gi,"");q=q.replace(/\s*text-indent: 0cm\s*"/gi,'"');q=q.replace(/\s*text-align: [^\s;]+;?"/gi,'"');q=q.replace(/\s*page-break-before: [^\s;]+;?"/gi,'"');q=q.replace(/\s*font-variant: [^\s;]+;?"/gi,'"');q=q.replace(/\s*tab-stops:[^;"']*;?/gi,"");q=q.replace(/\s*tab-stops:[^"']*/gi,"");q=q.replace(/\s*face="[^"']*"/gi,"");q=q.replace(/\s*face=[^ >]*/gi,"");q=q.replace(/\s*font-family:[^;"']*;?/gi,"");q=q.replace(/\s*font-size:[^;"']*;?/gi,"");q=q.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<(\w+)[^>]*\sstyle="[^"']*display\s?:\s?none[\s \S]*?<\/\1>/ig,"");q=q.replace(/\s*style='\s*'/gi,"");q=q.replace(/\s*style="\s*"/gi,"");q=q.replace(/<span\s*[^>]*>\s*&nbsp;\s*<\/span>/gi,"&nbsp;");q=q.replace(/<span\s*[^>]*><\/span>/gi,"");q=q.replace(/<(\w[^>]*) align=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<span([^>]*)>([\s\S]*?)<\/span>/gi,"$2");q=q.replace(/<font\s*>([\s\S]*?)<\/font>/gi,"$1");q=q.replace(/<(u|i|strike)>&nbsp;<\/\1>/gi,"&nbsp;");q=q.replace(/<h\d>\s*<\/h\d>/gi,"");q=q.replace(/<(\w[^>]*) language=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<(\w[^>]*) onmouseover="([^\"']*)"([^>]*)/gi,"<$1$3");q=q.replace(/<(\w[^>]*) onmouseout="([^\"']*)"([^>]*)/gi,"<$1$3");q=q.replace(/<h(\d)([^>]*)>/gi,"<h$1>");q=q.replace(/<(h\d)><font[^>]*>([\s\S]*?)<\/font><\/\1>/gi,"<$1>$2</$1>");q=q.replace(/<(h\d)><em>([\s\S]*?)<\/em><\/\1>/gi,"<$1>$2</$1>");q=q.replace(/<b\b[^>]*>(.*?)<\/b[^>]*>/gi,"<strong>$1</strong>");q=q.replace(/<i\b[^>]*>(.*?)<\/i[^>]*>/gi,"<em>$1</em>");q=q.replace(/<\s+[^>]*>/gi,"");q=q.replace(/<span>([\s\S]*?)<\/span>/gi,"$1");q=q.replace(/<span>([\s\S]*?)<\/span>/gi,"$1");q=q.replace(/<div>([\s\S]*?)<\/div>/gi,"$1");q=q.replace(/<div>([\s\S]*?)<\/div>/gi,"$1");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");if(q.trim){q=q.trim()}if(!e.paragraphise){q.replace(/<p>/gi,"<br />");q.replace(/<\/p>/gi,"")}else{var o=q.substr(0,2);if("<p"!==o){q="<p>"+q+"</p>";q=q.replace(/\n/g,"</p><p>");q=q.replace(/<br[^>]*>/gi,"</p><p>")}}q=q.replace(/<br>/gi,"<br />");q=q.replace(/<br[^>]*><\/p>/gim,"</p>");q=q.replace(/<p>&nbsp;<\/p>/gi,"");q=q.replace(/<p>\s<\/p>/gi,"");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");q=q.replace(/MsoNormal/gi,"");q=q.replace(/<\/?meta[^>]*>/gi,"");q=q.replace(/<\/?xml[^>]*>/gi,"");q=q.replace(/<\?xml[^>]*\/>/gi,"");q=q.replace(/<!--(.*)-->/gi,"");q=q.replace(/<!--(.*)>/gi,"");q=q.replace(/<!(.*)-->/gi,"");q=q.replace(/<w:[^>]*>(.*)<\/w:[^>]*>/gi,"");q=q.replace(/<w:[^>]*\/>/gi,"");q=q.replace(/<\/?w:[^>]*>/gi,"");q=q.replace(/<m:[^>]*\/>/gi,"");q=q.replace(/<m:[^>]>(.*)<\/m:[^>]*>/gi,"");q=q.replace(/<o:[^>]*>(.*)<\/o:[^>]*>/gi,"");q=q.replace(/<o:[^>]*\/>/gi,"");q=q.replace(/<\/?m:[^>]*>/gi,"");q=q.replace(/style=\"([^>]*)\"/gi,"");q=q.replace(/style=\'([^>]*)\'/gi,"");q=q.replace(/class=\"(.*)\"/gi,"");q=q.replace(/class=\'(.*)\'/gi,"");q=q.replace(/<b>/gi,"<strong>");q=q.replace(/<\/b>/gi,"</strong>");q=q.replace(/<p[^>]*>/gi,"<p>");q=q.replace(/<\/p[^>]*>/gi,"</p>");q=q.replace(/<span[^>]*>/gi,"");q=q.replace(/<\/span[^>]*>/gi,"");q=q.replace(/<st1:[^>]*>/gi,"");q=q.replace(/<\/st1:[^>]*>/gi,"");q=q.replace(/<font[^>]*>/gi,"");q=q.replace(/<\/font[^>]*>/gi,"");q=q.replace("  ","");q=q.replace(/<strong><\/strong>/gi,"");q=q.replace(/<p><\/p>/gi,"");q=q.replace(/\/\*(.*)\*\//gi,"");q=q.replace(/<!--/gi,"");q=q.replace(/-->/gi,"");q=q.replace(/<style[^>]*>[^<]*<\/style[^>]*>/gi,"");q=q.trim()}return q};var n=e.getRange();if(e.pasteMode=="text"&&!b.jqx.browser.mozilla){e.selection.insertContent('<textarea cols="50" contenteditable="false" class="jqx-editor-paste-element"></textarea>')}else{e.selection.insertContent('<div class="jqx-editor-paste-element">&nbsp;</div>')}var g=b(window).scrollTop();var h=b(e.editorDocument).find(".jqx-editor-paste-element");h.css("top",g+"px");if(e.editor[0].createTextRange){l.preventDefault();var j=e.editor[0].createTextRange();j.moveToElementText(h[0]);j.execCommand("Paste")}else{var i=e.editorDocument.createRange();i.selectNodeContents(h[0]);e.selectRange(i)}if(e.pasteMode=="text"&&!b.jqx.browser.mozilla){h.select()}e.marker=h;setTimeout(function(){e.selectRange(n);var r=function(A){var y=e.editorDocument.createElement("div");var z=e.editorDocument.createDocumentFragment();y.innerHTML=A;while(y.firstChild){z.appendChild(y.firstChild)}return z};if(e.pasteMode!="text"){var x=r(e.marker.html());if(x.firstChild&&x.firstChild.className==="jqx-editor-paste-element"){var p=[];for(var u=0,s=x.childNodes.length;u<s;u++){p.push(x.childNodes[u].innerHTML)}x=r(p.join("<br />"))}var o=document.createElement("div");o.appendChild(x.cloneNode(true));var w=o.innerHTML}else{var w=e.marker.val();if(e.marker.html()!=""&&e.marker.val().indexOf("\n")==-1){var w=e.marker.html();w=w.replace(/&nbsp;/gm,"");w=w.replace(/\n\n/gm,"\n");w=w.replace(/<br[^>]*>/gi,"\n");w=w.replace(/<li[^>]*>/gi,"\n");w=w.replace(/<p[^>]*>/gi,"\n");e.marker.html(w);var w=e.marker.text()}}var q=k(w,e.pasteMode=="text");var v=e.getRange();e.selection.insertContent(q+"<span id='INSERTION_MARKER'>&nbsp;</span>");e.marker.remove();var t=b(e.editorDocument).find("#INSERTION_MARKER");e.selection.selectNode(t[0],true);if(e.getRange().setStartAfter){e.getRange().setStartAfter(t[0])}t.remove();e.selection.collapse(false);t.removeAttr("id");e._refreshTools();e.changed=true},100);e.updating=false;e.readOnly=false});e.addHandler(e.editor,"keyup.editor"+e.element.id,function(i){if(e._documentMode=="source"){return true}if(e.updating||e.disabled||!e.editable){if(i.preventDefault){i.preventDefault()}if(i.stopPropagation){i.stopPropagation()}return false}e.range=e.getRange();e.changed=true;var h=i||window.event;var g=h.keyCode;var j=[8,9,13,33,34,35,36,37,38,39,40,40,45,46];if(b.inArray(h.keyCode,j)!=-1||(h.keyCode==65&&h.ctrlKey&&!h.altKey&&!h.shiftKey)){e._refreshTools(null,true,h.keyCode)}});e.addHandler(e.editor,"click.editor"+e.element.id,function(g){if(e._documentMode=="source"){return true}if(e.editImage){b(e.editImage).removeClass("jqx-editor-focus");e.editImage=null}if(g.target.tagName.toLowerCase()=="img"){var h=g.target;e.editImage=h;b(e.editImage).addClass("jqx-editor-focus")}});e.addHandler(e.editor,"dblclick.editor"+e.element.id,function(g){if(e._documentMode=="source"){return true}if(g.target.tagName.toLowerCase()=="img"){var h=g.target;if(b("#imageWindow"+this.element.id).length>0){e.editImage=h;e._updateImageWindow()}}})},_updateLinkWindow:function(){var g=this;var i=b("#linkWindow"+this.element.id);i.jqxWindow({position:{center:g.widget}});i.jqxWindow("open");var e=i.find("input");var h=i.find(".jqx-editor-link-checkbox");var f=i.find("button:first");var d=b(i.find("button")[1]);if(g.editLink&&g.editLink.href){e[0].value=g.editLink.href||"";e[1].value=b(g.editLink).text()||g.editLink.href;h.val(b(g.editLink).attr("target")=="_blank");d.show()}else{e[0].value="";e[1].value="";if(!g.selection.isCollapsed()){var j=g.selection.getText();if(j.match(/^(?!:\/\/)([a-zA-Z0-9]+\.)?[a-zA-Z0-9][a-zA-Z0-9-]+\.[a-zA-Z]{2,6}?$/i)){e[0].value=j}else{e[1].value=j}}h.val(false);d.hide()}if(e[0].value.length>0){f.jqxButton({disabled:false})}else{f.jqxButton({disabled:true})}},_updateImageWindow:function(){var g=this;var i=g.editImage;if(!i){i=b("<img>")[0]}var h=b("#imageWindow"+this.element.id);h.jqxWindow({position:{center:g.widget}});h.jqxWindow("open");var e=h.find("input");var d=b(h.find("button")[1]);if(g.editImage){d.show()}else{d.hide()}e[0].value=i.src;if(e[0].value==""){e[0].value=""}e[1].value=i.alt;if(i.style.width!="auto"){e[2].value=i.style.width}else{e[2].value=""}if(i.style.height!="auto"){e[3].value=i.style.height}else{e[3].value=""}if(i.style.marginLeft&&i.style.marginLeft!="0px"){e[4].value=i.style.marginLeft}else{e[4].value=""}if(i.style.marginTop&&i.style.marginTop!="0px"){e[5].value=i.style.marginTop}else{e[5].value=""}var j=h.find(".jqx-editor-align");var f=b(i).css("float");if(f=="left"){j.jqxDropDownList({selectedIndex:1})}else{if(f=="right"){j.jqxDropDownList({selectedIndex:2})}else{j.jqxDropDownList({selectedIndex:0})}}},_removeHandlers:function(){var d=this;if(d.editor){d.removeHandler(d.editor,"blur.editor"+d.element.id);d.removeHandler(d.editor,"focus.editor"+d.element.id);d.removeHandler(d.editor,"click.editor"+d.element.id);d.removeHandler(d.editor,"mousedown.editor"+d.element.id);d.removeHandler(d.editor,"mouseup.editor"+d.element.id);d.removeHandler(d.editor,"keyup.editor"+d.element.id);d.removeHandler(d.editor,"keydown.editor"+d.element.id);d.removeHandler(d.editor,"beforedeactivate.editor"+d.element.id);d.removeHandler(d.editor,"dblclick.editor"+d.element.id)}if(d.toolbar){d.removeHandler(d.toolbar,"mousedown.editor"+d.element.id)}},getParentByTag:function(e,d){var d=d.toLowerCase(),f=e;do{if(d==""||f.nodeName.toLowerCase()==d){return f}}while(f=f.parentNode);return e},isStyleProperty:function(g,f,j,i){var f=f.toLowerCase(),h=g;do{if(h.nodeName.toLowerCase()==f&&h.style[j]==i){return !0}}while(h=h.parentNode);return !1},setStyleProperty:function(e,d){this.style[d]=!1;var f=this.getParentByTag(e,d);f&&f.tagName.toLowerCase()==d&&(this.style[d]=!0);if(d=="del"&&this.getParentByTag(e,"strike")&&this.getParentByTag(e,"strike").tagName.toLowerCase()=="strike"){this.style.del=!0}},updateStyle:function(f){var g=this;var f=g.getSelectedElement()?g.getSelectedElement():f;if(!f||!g.setStyleProperty){return}try{if(window.getComputedStyle){if(f.nodeName.toLowerCase()=="#text"){f=g.editor[0]}var d=window.getComputedStyle(f,null);var i=((d.getPropertyValue("font-weight")==401)?700:d.getPropertyValue("font-weight"));g.style={fontStyle:d.getPropertyValue("font-style"),fontSize:d.getPropertyValue("font-size"),textDecoration:d.getPropertyValue("text-decoration"),fontWeight:i,fontFamily:d.getPropertyValue("font-family"),textAlign:d.getPropertyValue("text-align"),color:g._rgbToHex(d.color),backColor:g._rgbToHex(d.backgroundColor)};g.style.fontStyle=d.getPropertyValue("font-style");g.style.vAlign=d.getPropertyValue("vertical-align");g.style.del=g.isStyleProperty(f,"span","textDecoration","line-through");g.style.u=g.isStyleProperty(f,"span","textDecoration","underline");var h=function(l){var k="transparent";var e="rgba(0, 0, 0, 0)";while(l&&(window.getComputedStyle(l).backgroundColor==k||window.getComputedStyle(l).backgroundColor==e)){l=l.parentNode}return l?window.getComputedStyle(l).backgroundColor:k};if(!g.style.backColor){g.style.backColor=g._rgbToHex(h(f))}}else{var d=f.currentStyle;g.style={fontStyle:d.fontStyle,fontSize:d.fontSize,textDecoration:d.textDecoration,fontWeight:d.fontWeight,fontFamily:d.fontFamily,textAlign:d.textAlign,color:g._rgbToHex(d.color),backColor:g._rgbToHex(d.backgroundColor)}}g.setStyleProperty(f,"h1");g.setStyleProperty(f,"h2");g.setStyleProperty(f,"h3");g.setStyleProperty(f,"h4");g.setStyleProperty(f,"h5");g.setStyleProperty(f,"h6");g.setStyleProperty(f,"del");g.setStyleProperty(f,"sub");g.setStyleProperty(f,"sup");g.setStyleProperty(f,"u");if(f.nodeName.toLowerCase()=="a"){if(g.style.textDecoration=="underline"){g.style.u=true}}if(g.style.h1||g.style.h2||g.style.h3||g.style.h4||g.style.h5||g.style.h6){g.style.heading=true}}catch(j){return null}},_refreshTools:function(e,f,n){var k=this;if(k.updating){return}var e=k.getSelectedElement()?k.getSelectedElement():e;if(!e||!k.setStyleProperty){return}k.updateStyle(e);var o=k.readOnly;k.readOnly=true;if(k.tools!==false){var j=k.tools.split(" ");var l=k.tools.split(" | ");var m=function(i){b.each(i,function(q,r){var p=k.commands[this];if(!p){return true}switch(p.type){case"list":p.widget.jqxDropDownList("clearSelection");p.widget.jqxDropDownList({disabled:k.disabled});break;case"colorPicker":p.val(p.value);p.widget.jqxDropDownButton({disabled:k.disabled});break;case"toggleButton":p.widget.jqxToggleButton("unCheck");p.widget.jqxToggleButton({disabled:k.disabled});break;case"button":default:p.widget.jqxButton({disabled:k.disabled});break}})};if(l.length==0){m(j)}else{for(var h=0;h<l.length;h++){var d=l[h];var j=d.split(" ");m(j)}}if(k.style){var g=function(i){b.each(i,function(x,E){var t=k.commands[this];if(!t){return true}if(t.refresh){t.refresh(t.widget,k.style);return true}switch(t.type){case"list":if(t.command=="fontname"){var B=-1;var D=999;for(var H=0;H<t.value.length;H++){var E=t.value[H].label.toLowerCase();var w=k.style.fontFamily.toLowerCase().indexOf(E);if(w>=0){if(w<D){B=H}D=Math.min(D,w)}}t.widget.jqxDropDownList("selectIndex",B)}else{if(t.command=="formatblock"){var E=null;if(k.style.h1){E="h1"}else{if(k.style.h2){E="h2"}else{if(k.style.h3){E="h3"}else{if(k.style.h4){E="h4"}else{if(k.style.h5){E="h5"}else{if(k.style.h6){E="h6"}}}}}}t.widget.jqxDropDownList("selectItem",E)}else{if(t.command=="fontsize"){var A="xx-small,x-small,small,medium,large,x-large,xx-large".split(",");var C=-1;try{var C=e.getAttribute("size")-1;if(C==-1){C=k.editorDocument.queryCommandValue(t.command)-1}}catch(I){}var s=A[C];t.widget.val(s)}}}break;case"colorPicker":var r=function(J){if(typeof J!="number"){return J}return"rgb("+(J&255)+", "+((J&65280)>>8)+", "+((J&16711680)>>16)+")"};var F=r(k.editorDocument.queryCommandValue(t.command));if(t.command=="backcolor"){if(k.style.backColor==null){F="#FFFFFF"}}var z=k._rgbToHex(F);if(z){t.val(z)}else{if(t.command=="forecolor"){t.val(k.style.color)}else{if(t.command=="backcolor"){t.val(k.style.backColor)}}}break;case"toggleButton":if(t.command=="viewsource"){return}if(!t.command){return}var q=false;var p=k.editorDocument.queryCommandState(t.command)&&k.editorDocument.queryCommandEnabled(t.command);if(t.command=="createlink"&&e.nodeName.toLowerCase()=="a"){var y=true;if(b(e).text().indexOf(k.selection.getText())==-1&&k.selection.getText()!=""){y=false}if(y){if(k.linkPopup){k.linkPopup.remove()}p=true;k.linkPopup=b("<div class='jqx-editor-link-popup' contentEditable='false' style='overflow: hidden; white-space: nowrap; padding: 5px; height: 17px; font-size: 12px; color: #222222; background: #F5F5F5; position: absolute; z-index: 9999;'>"+k.localization["Go to link"]+": <a target='_blank' style='color:#222222;' href='"+e.href+"'>"+e.href+"</a> - <a style='color:#222222;' href='#change'>"+k.localization.Change+"</a> - <a style='color:#222222;' href='#remove'>"+k.localization.Remove+"</a></div>").appendTo(k.editor);var u=b(e).coord();var v=u.left;if(u.left+k.linkPopup.width()>k.editor.width()){v=k.editor.width()-k.linkPopup.width()-15}k.linkPopup.offset({top:b(e).height()+u.top+5,left:v});k.addHandler(k.linkPopup,"mousedown",function(K){if(K.target&&K.target.href){var J=b(K.target).index();switch(J){case 1:k.editor.focus();k.selection.selectNode(e,true);k.commands.link.widget.trigger("click");break;case 2:try{k.editor.focus();k.selection.selectNode(e);k.execute("unlink");k.commands.underline.toggled=false;k.selection.collapse(false);k._refreshTools()}catch(L){}break;default:window.open(K.target.href,"_blank");break}}if(K.preventDefault){K.preventDefault()}if(K.stopPropagation){K.stopPropagation()}return false})}}if(t.command=="bold"){if(k.style.fontWeight&&(k.style.fontWeight>=600||k.style.fontWeight=="bold")){q=true}if(k.selection.isCollapsed()){t.toggled=p}else{t.toggled=p||q}p=t.toggled}else{if(t.command=="italic"){if(k.style.fontStyle&&k.style.fontStyle=="italic"){q=true}if(!f){p=t.toggled}else{t.toggled=p}}else{if(t.command=="underline"){if(k.style.u){q=true}if(!f){p=t.toggled}else{t.toggled=p}}else{if(t.command=="justifyleft"){if(k.style.textAlign=="left"){q=true}}else{if(t.command=="justifyright"){if(k.style.textAlign=="right"){q=true}}else{if(t.command=="justifycenter"){if(k.style.textAlign=="center"){q=true}}else{if(t.command=="justifyfull"){if(k.style.textAlign=="justify"){q=true}}else{b.each(k.style,function(J,K){if(t.command==J.toLowerCase()){q=true}})}}}}}}}var G=p;if(q&&t.command.indexOf("justify")!=-1){t.widget.jqxToggleButton("check")}else{if(G){t.widget.jqxToggleButton("check")}else{if(q&&k.range.collapsed===false){t.widget.jqxToggleButton("check")}else{if(b.jqx.browser.msie&&b.jqx.browser.version<9&&q&&!k.selection.isCollapsed()){t.widget.jqxToggleButton("check")}}}}break;case"button":default:if(t.refresh){t.refresh(t.widget,k.style)}break}})};if(l.length==0){g(j)}else{for(var h=0;h<l.length;h++){var d=l[h];var j=d.split(" ");g(j)}}}}k.readOnly=o},_rgbToHex:function(e){if(e){if(e.substr(0,1)==="#"){if(e.length==4){var h=e.substr(1,1);var f=e.substr(2,1);var d=e.substr(3,1);return"#"+h+h+f+f+d+d}return e}var i=/(.*?)rgb\((\d+),\s*(\d+),\s*(\d+)\)/i.exec(e);if(!i){return null}var h=parseInt(i[2],10).toString(16);var f=parseInt(i[3],10).toString(16);var d=parseInt(i[4],10).toString(16);return"#"+((h.length==1?"0"+h:h)+(f.length==1?"0"+f:f)+(d.length==1?"0"+d:d))}return null},_preventDefault:function(d,e){if(e!==false){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}}if(d.preventDefault){d.preventDefault()}if(d.stopPropagation){d.stopPropagation()}d.cancelBubble=true;d.returnValue=false},_addCommandHandler:function(g,f,i,h,d){var e=this;if(!i&&d.init){i="custom"}switch(i){case"custom":switch(d.type){case"list":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){d.value=b(this).val();e.execute("custom",d);if(!e.readOnly){e._refreshTools()}}}e._preventDefault(j,false)};break;case"colorPicker":action=function(l){if(e._documentMode!="source"){var j=b(d.colorPicker).find("td").removeClass("jqx-editor-color-picker-selected-cell");if(l.target.nodeName.toLowerCase()=="div"){var k=b(l.target).css("background-color");b(l.target).parent().addClass("jqx-editor-color-picker-selected-cell")}else{var k=b(l.target).find("div").css("background-color");b(l.target).addClass("jqx-editor-color-picker-selected-cell")}b("#bar-"+i).css("background",k);d.widget.val=function(){var n=function(p){if(typeof p!="number"){return p}return"rgb("+(p&255)+", "+((p&65280)>>8)+", "+((p&16711680)>>16)+")"};var o=n(k);var m=e._rgbToHex(o);return m};d.widget.jqxDropDownButton("close");e.execute("custom",d)}e._preventDefault(l);return false};break;case"button":case"toggleButton":default:action=function(j){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}e._preventDefault(j);var l=b(this).attr("data-command");var k=this;if(e._documentMode!="source"){if(d.toggle){d.toggle()}e.execute("custom",d);e._refreshTools()}return false};break}break;case"formatblock":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){e.execute(b(this).attr("data-command"),"<"+b(this).val()+">",d);if(!e.readOnly){e.commands.bold.toggled=false;e._refreshTools()}}}e._preventDefault(j,false)};break;case"fontsize":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){var l=b(this).val();var m="xx-small,x-small,small,medium,large,x-large,xx-large".split(",");var k=b(this).jqxDropDownList("getSelectedIndex")+1;var k=1+m.indexOf(l);e.execute(b(this).attr("data-command"),k,d)}}e._preventDefault(j,false)};break;case"fontname":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){var k=b(this).val();e.execute(b(this).attr("data-command"),k,d)}}e._preventDefault(j,false)};break;case"forecolor":case"backcolor":action=function(l){if(e._documentMode!="source"){var j=b(d.colorPicker).find("td").removeClass("jqx-editor-color-picker-selected-cell");if(l.target.nodeName.toLowerCase()=="div"){var k=b(l.target).css("background-color");b(l.target).parent().addClass("jqx-editor-color-picker-selected-cell")}else{var k=b(l.target).find("div").css("background-color");b(l.target).addClass("jqx-editor-color-picker-selected-cell")}b("#bar-"+i).css("background",k);d.widget.jqxDropDownButton("close");e.execute(i,k,d)}e._preventDefault(l);return false};break;case"viewsource":action=function(j){if(e.linkPopup){e.linkPopup.remove()}d.toggle();e.setMode(d.toggled);if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}e._preventDefault(j);return false};break;case"insertimage":action=function(j){e._insertImageAction(j,e,d)};break;case"createlink":action=function(j){e._createLinkAction(j,e,d)};break;default:action=function(j){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}e._preventDefault(j);var m=b(this).attr("data-command");var k=this;if(e._documentMode!="source"){if(m=="underline"){if(e.getSelectedElement()){var l=e.getSelectedElement();if(l&&l.nodeName.toLowerCase()=="a"){if(d.toggled){b(l).css("text-decoration","none")}else{b(l).css("text-decoration","underline")}d.toggle();e._refreshTools();return false}}}if(d.toggle){d.toggle()}e.execute(m,b(this).val(),d);e._refreshTools()}return false};break}e.addHandler(g,f,action);return false},_createLinkAction:function(d,k,l){var k=this;if(k._documentMode=="source"){k._preventDefault(d);return}if(!k.focused){k.editor.focus()}k.range=k.getRange();var e=k.getSelectedElement();if(e.nodeName.toLowerCase()=="a"){k.editLink=e}else{k.editLink=null}if(b("#linkWindow"+this.element.id).length>0){if(k.editLink){k.selection.selectNode(e,true)}k._updateLinkWindow();k._preventDefault(d);return false}var m=b("<div class='jqx-editor-window jqx-editor-link-window'><div>"+k.localization["Insert Link"]+"</div><div><table style='border-collapse: separate; border-spacing: 2px;'><tr><td align='right'>"+k.localization.URL+":</td><td><input style='width: 200px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+k.localization.Title+":</td><td><input style='width: 200px; height: 23px;' value=''/></td><tr/><tr><td align='right'></td><td><div class='jqx-editor-link-checkbox'>"+k.localization["Open in a new window/tab"]+"</div></td><tr/><tr><td align='right'></td><td align='right'><button>Ok</button><button style='margin-left: 5px;'>Remove</button><button style='margin-left: 5px;'>Cancel</button></td><tr/></table></div></div>");m[0].id="linkWindow"+this.element.id;var j=m.find("input");j.addClass(k.toThemeProperty("jqx-widget"));j.addClass(k.toThemeProperty("jqx-widget-content"));j.addClass(k.toThemeProperty("jqx-input"));var i=m.find(".jqx-editor-link-checkbox").jqxCheckBox({theme:k.theme,height:23,width:180});var g=m.find("button:first").jqxButton({theme:k.theme,disabled:true});var o=b(m.find("button")[1]).jqxButton({theme:k.theme});var h=m.find("button:last").jqxButton({theme:k.theme});g.val(k.localization.Ok);h.val(k.localization.Cancel);o.val(k.localization.Remove);k.addHandler(h,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(p){k.editor.focus();k.selectRange(k.range);k._refreshTools();k._preventDefault(p)});if(!k.editLink||(k.editLink&&!k.editLink.href)){o.hide()}var f=false;k.addHandler(b(j[0]),"focus",function(){if(j[1].value==""||j[1].value==j[0].value){f=true}else{f=false}});k.addHandler(b(j[1]),"keyup",function(p){if(p.keyCode){if(p.keyCode==13){g.trigger("click")}if(p.keyCode==27){h.trigger("click")}}});k.addHandler(b(j[0]),"keyup change",function(p){if(j[0].value.length>0){g.jqxButton({disabled:false})}else{g.jqxButton({disabled:true})}if(f){j[1].value=j[0].value}if(p.keyCode){if(p.keyCode==13){g.trigger("click")}if(p.keyCode==27){h.trigger("click")}}});k.addHandler(o,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(p){m.jqxWindow("close");try{k.editor.focus();k.selection.selectNode(k.editLink);k.execute("unlink");k.selection.collapse(false);k.commands.underline.toggled=false;k._refreshTools()}catch(q){}k._preventDefault(p)});k.addHandler(g,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(s){var q=m.find("input");var r=b("<a>"+(q[1].value||q[0].value)+"</a>");if(i.val()){r.attr("target","_blank")}r[0].href=b.trim(q[0].value);if(q[0].value.indexOf("http")==-1&&q[0].value.indexOf("mailto")==-1){r[0].href="http://"+b.trim(q[0].value)}if(!k.focused){k.editor.focus()}if(k.range){k.selectRange(k.range)}if(k.editLink){b(k.editLink).remove()}k.execute("insertHTML",""+r[0].outerHTML+"<span id='INSERTION_MARKER'>&nbsp;</span>",l);k.editor.focus();var p=b(k.editorDocument).find("#INSERTION_MARKER");k.selection.selectNode(p[0],true);if(k.getRange().setStartAfter){k.getRange().setStartAfter(p[0])}p.remove();k.selection.collapse(false);k._refreshTools();k._preventDefault(s)});k.updating=true;m.appendTo(document.body);k.addHandler(m,"open",function(){k.updating=true;setTimeout(function(){k.range=k.getRange();b(j[0]).focus()},25)});m.jqxWindow({resizable:false,width:280,okButton:g,cancelButton:h,theme:k.theme,isModal:true,position:{center:k.widget}});k.addHandler(m,"close",function(){k.updating=false});if(!k.focused){k.editor.focus();k.selectRange(k.range)}if(k.editLink){j[0].value=k.editLink.href||"";j[1].value=b(k.editLink).text();i.val(b(k.editLink).attr("target")=="_blank")}else{if(!k.selection.isCollapsed()){var n=k.selection.getText();if(n.match(/^(?!:\/\/)([a-zA-Z0-9]+\.)?[a-zA-Z0-9][a-zA-Z0-9-]+\.[a-zA-Z]{2,6}?$/i)){j[0].value=n}else{j[1].value=n}}}if(j[0].value.length>0){g.jqxButton({disabled:false})}else{g.jqxButton({disabled:true})}k._preventDefault(d);return false},_insertImageAction:function(j,i,g){if(i._documentMode=="source"){i._preventDefault(j);return}if(!i.focused){i.editor.focus()}i.range=i.getRange();if(b("#imageWindow"+this.element.id).length>0){i._updateImageWindow();i._preventDefault(j);return false}var h=b("<div class='jqx-editor-window jqx-editor-image-window'><div>"+i.localization["Insert Image"]+"</div><div><table style='border-collapse: separate; border-spacing: 2px;'><tr><td align='right'>"+i.localization.URL+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization["Alt Text"]+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization.Width+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization.Height+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization.HSpace+":</td><td><input style='width: 180px; height: 23px;' class='jqx-editor-hspace'/></td><tr/><tr><td align='right'>"+i.localization.VSpace+":</td><td><input style='width: 180px; height: 23px;' class='jqx-editor-vspace'/></td><tr/><tr><td align='right'>"+i.localization.Align+":</td><td><div class='jqx-editor-align'></div></td><tr/><tr><td align='right'></td><td align='right'><button>Ok</button><button style='margin-left: 5px;'>Remove</button><button style='margin-left: 5px;'>Cancel</button></td><tr/></table></div></div>");h[0].id="imageWindow"+this.element.id;var e=h.find("input");e.addClass(i.toThemeProperty("jqx-widget"));e.addClass(i.toThemeProperty("jqx-widget-content"));e.addClass(i.toThemeProperty("jqx-input"));h.find(".jqx-editor-align").jqxDropDownList({autoDropDownHeight:true,selectedIndex:0,theme:i.theme,height:23,width:180,source:[i.localization["not set"],i.localization.Left,i.localization.Right]});var f=h.find("button:first").jqxButton({theme:i.theme});var k=h.find("button:last").jqxButton({theme:i.theme});var d=b(h.find("button")[1]).jqxButton({theme:i.theme});f.val(i.localization.Ok);k.val(i.localization.Cancel);d.val(i.localization.Remove);d.hide();i.addHandler(d,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(l){b(i.editImage).removeClass("jqx-editor-focus");b(i.editImage).remove();i.editImage=null;i._preventDefault(l);h.jqxWindow("close");i._raiseEvent("change")});i.addHandler(k,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(l){b(i.editImage).removeClass("jqx-editor-focus");i.editImage=null;i._preventDefault(l)});i.addHandler(f,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(o){b(i.editImage).removeClass("jqx-editor-focus");var m=h.find("input");var p=i.editImage?b(i.editImage):b('<img style="border: 1px solid transparent;">');var n=p.attr("src",m[0].value).attr("unselectable","on");if(m[1].value){n.attr("alt",m[1].value).attr("title",m[1].value)}if(m[2].value&&!isNaN(parseInt(m[2].value))){n.width(m[2].value)}else{n.css("width","auto")}if(m[3].value&&!isNaN(parseInt(m[3].value))){n.height(m[3].value)}else{n.css("height","auto")}if(m[4].value){if(m[4].value.toString()=="auto"){n.css("margin-left","auto");n.css("margin-right","auto")}else{if(m[4].value.toString().indexOf("%")!=-1){n.css("margin-left",parseInt(m[4].value)+"%");n.css("margin-right",parseInt(m[4].value)+"%")}else{n.css("margin-left",parseInt(m[4].value)+"px");n.css("margin-right",parseInt(m[4].value)+"px")}}}else{n.css("margin-left","0px");n.css("margin-right","0px")}if(m[5].value){if(m[5].value.toString()=="auto"){n.css("margin-top","auto");n.css("margin-bottom","auto")}else{if(m[5].value.toString().indexOf("%")!=-1){n.css("margin-top",parseInt(m[5].value)+"%");n.css("margin-bottom",parseInt(m[5].value)+"%")}else{n.css("margin-top",parseInt(m[5].value)+"px");n.css("margin-bottom",parseInt(m[5].value)+"px")}}}else{n.css("margin-top","0px");n.css("margin-bottom","0px")}var q=h.find(".jqx-editor-align").jqxDropDownList("selectedIndex");if(q==1){n.css("float","left")}else{if(q==2){n.css("float","right")}else{if(q==0){n.css("float","none")}}}n.css("resize",false);n[0].oncontrolselect=function(){return false};n[0].selectstart=function(){return false};if(!i.editImage){if(!i.focused){i.editor.focus()}if(i.range){i.selectRange(i.range)}i.execute("insertHTML",n[0].outerHTML+"<span id='INSERTION_MARKER'>&nbsp;</span>",g);i.editor.focus();var l=b(i.editorDocument).find("#INSERTION_MARKER");i.selection.selectNode(l[0],true);if(i.getRange().setStartAfter){i.getRange().setStartAfter(l[0])}l.remove();i.selection.collapse(false);i._refreshTools();i._preventDefault(o)}i.editImage=null;i._preventDefault(o)});h.appendTo(document.body);i.updating=true;i.addHandler(h,"open",function(){i.updating=true;setTimeout(function(){i.range=i.getRange();b(e[0]).focus()},25)});h.jqxWindow({resizable:false,width:280,okButton:f,cancelButton:k,theme:i.theme,isModal:true,position:{center:i.widget}});i.addHandler(h,"close",function(){i.updating=false});if(!i.focused){i.editor.focus();i.selectRange(i.range)}i._preventDefault(j);return false},editmode:function(f){var e=this;if(!f&&!e.readOnly){e._removeHandlers();e.editor.attr("contentEditable",false);var d=document.createTextNode(e.editor.html());var g=b("<pre>");g.html(d).attr({id:"sourceText",contentEditable:true}).css("height","100%");e.editor.html(g);if(e.buttons.hasOwnProperty("html")){e.buttons.html.addClass("active")}g.focus()}else{if(f&&e.readOnly){var d=e.editor.find("#sourceText").text();e.editor.html(d);if(e.buttons.hasOwnProperty("html")){e.buttons.html.removeClass("active")}e.editor.attr("contentEditable",true);e._addHandlers()}}e.readOnly=!f},setMode:function(f){var i=this;if(!i.range){i.editor.focus();i.range=i.getRange()}var h;var e=i.editor[0];if(f){i._documentMode="source";var k=new c();var j=k.HTMLtoXML(e.innerHTML);j=k.FormatHTML(j);h=document.createTextNode(j);e.innerHTML="";var d=document.createElement("pre");e.contentEditable=false;d.style.height="100%";d.style.margin="0px";d.style.outline="none";d.style.display="block";d.id="sourceText";d.contentEditable=true;d.appendChild(h);e.appendChild(d);this.readOnly=true}else{this._documentMode="html";if(document.all){e.innerHTML=e.innerText}else{if(e.textContent){e.innerHTML=e.textContent}else{h=document.createRange();h.selectNodeContents(e.firstChild);e.innerHTML=h.toString()}}e.contentEditable=true;i.readOnly=false;i._refreshTools();i.editor.focus();i.selection.selectNode(i.editor[0]);i.editor.scrollTop(0);i.selection.collapse(true)}b.each(this.commands,function(){if(this.widget){if(this.command!="viewsource"){switch(this.type){case"list":this.widget.jqxDropDownList({disabled:f});break;case"colorPicker":this.widget.jqxDropDownButton({disabled:f});break;case"button":this.widget.jqxButton({disabled:f});break;case"toggleButton":this.widget.jqxToggleButton({toggled:false,disabled:f});break}}}});i.editor.focus();if(b.jqx.browser.mozilla){var g=b("<a href='#'>anchor</a>");i.editor.prepend(g);g.focus();g.remove();i.selection.collapse(true)}if(i.commands.html.widget){i.commands.html.widget.jqxToggleButton({toggled:f=="source"||f==true});i.commands.html.toggled=f=="source"||f==true}},execute:function(i,f,e){var g=this;if(!g.readOnly){var j=g.editorDocument;if(g._documentMode=="source"){return}if(g.linkPopup){g.linkPopup.remove()}g.editor.focus();if(b.jqx.browser.mozilla){}if(b.jqx.mobile.isTouchDevice()){setTimeout(function(){},25)}var d=function(m){try{if(m.command&&m.command.toLowerCase()=="inserthtml"){var l=g.getRange();var n=m.value;if(n.toString().indexOf("<")==-1){n="<span>"+m.value+"</span>"}g.selection.insertContent(""+n+"<span id='INSERTION_MARKER'>&nbsp;</span>");g.selectRange(l);setTimeout(function(){var p=b(g.editorDocument).find("#INSERTION_MARKER");g.selection.selectNode(b(p).prev()[0],true);p.remove();g.selection.collapse(false)},10)}else{if(m.command){if(j.queryCommandEnabled(m.command)){j.execCommand(m.command,false,m.value)}else{return false}}else{if(j.queryCommandEnabled(m)){j.execCommand(m,false,m)}else{return false}}}}catch(o){}};if(i=="custom"){var h=f.action(f.widget,g.editor);if(h){d(h)}}else{try{if(e&&e.action){var h=e.action(e.widget,g.editor);d(h)}else{if(j.queryCommandEnabled(i)){j.execCommand(i,false,f)}else{if(i=="insertHTML"){g.selection.insertContent(f)}else{return false}}}}catch(k){if(i=="insertHTML"){g.selection.insertContent(f)}else{return false}}}if(b.jqx.mobile.isTouchDevice()){setTimeout(function(){if(g.iframe){g.iframe[0].contentWindow.focus()}},500)}g._raiseEvent("change",{command:i,args:f});g.changed=true;g.range=g.getRange()}},destroy:function(){var h=this;h._removeHandlers();var l=h.tools.split(" ");var g=h.tools.split(" | ");b.jqx.utilities.resize(this.host,null,true);var f=function(i){b.each(i,function(n,o){var m=h.commands[this];if(!m){return true}switch(m.type){case"list":m.widget.jqxDropDownList("destroy");break;case"colorPicker":m.colorPicker.remove();m.widget.jqxDropDownButton("destroy");break;case"toggleButton":m.widget.jqxToggleButton("destroy");break;case"custom":if(h.destroyTool){h.destroyTool(this)}break;case"button":default:m.widget.jqxToggleButton("destroy");if(m.command==="insertimage"){if(b("#imageWindow"+h.element.id).length>0){b("#imageWindow"+h.element.id).find(".jqx-editor-align").jqxDropDownList("destroy");b("#imageWindow"+h.element.id).find("button").jqxButton("destroy")}}else{if(m.command==="createlink"){if(b("#linkWindow"+h.element.id).length>0){b("#linkWindow"+h.element.id).find(".jqx-editor-align").jqxDropDownList("destroy");b("#linkWindow"+h.element.id).find("button").jqxButton("destroy");b("#linkWindow"+h.element.id).find(".jqx-editor-link-checkbox").jqxCheckBox("destroy")}}}break}})};if(g.length==0){f(l)}else{for(var e=0;e<g.length;e++){var d=g[e];var l=d.split(" ");f(l)}}var j=b("#linkWindow"+this.element.id);var k=b("#imageWindow"+this.element.id);if(j&&j.length>0){j.jqxWindow("destroy")}if(k&&k.length>0){k.jqxWindow("destroy")}if(h.inline){h.toolbar.remove()}else{h.widget.remove();h.host.remove()}h.iframe.remove();h.iframe=null;h.selection=null;h.editorDocument=null;h.contentEditableElement=null},val:function(d){if(d!=undefined&&typeof d!="object"){this.editor.html(d)}return this.editor.html()},_raiseEvent:function(h,e){if(e==undefined){e={owner:null}}if(this._documentMode=="source"){return true}var f=h;args=e;args.owner=this;var g=new b.Event(f);g.owner=this;g.args=args;if(this._textArea){var d=b(this._textArea).trigger(g)}else{var d=this.host.trigger(g)}e=g.args;return d}});var a=function(d){var e={initialize:function(f){this.document=f},getSelection:function(){return(this.document.getSelection)?this.document.getSelection():this.document.selection},getRange:function(){var f=this.getSelection();if(!f){return null}try{return f.rangeCount>0?f.getRangeAt(0):(this.document.createRange?this.document.createRange():this.document.selection.createRange())}catch(g){return this.document.body.createTextRange()}},selectRange:function(f){if(f.select){f.select()}else{var g=this.getSelection();if(g.addRange){g.removeAllRanges();g.addRange(f)}}},selectNode:function(i,j){var h=this.getRange();var g=this.getSelection();if(h.moveToElementText){h.moveToElementText(i);h.select()}else{if(g.addRange){try{j?h.selectNodeContents(i):h.selectNode(i);g.removeAllRanges();g.addRange(h)}catch(f){var k=f}}else{g.setBaseAndExtent(i,0,i,1)}}return i},isCollapsed:function(){var f=this.getRange();if(f.item){return false}return f.boundingWidth==0||this.getSelection().isCollapsed},collapse:function(f){var h=this.getRange();var g=this.getSelection();if(h.select){h.collapse(f);h.select()}else{f?g.collapseToStart():g.collapseToEnd()}},getContent:function(){var h=this.getRange();var f=b("<div>")[0];if(this.isCollapsed()){return""}if(h.cloneContents){f.appendChild(h.cloneContents())}else{if(h.item!=undefined||h.htmlText!=undefined){b(f).html(h.item?h.item(0).outerHTML:h.htmlText)}else{b(f).html(h.toString())}}var g=b(f).html();return g},getText:function(){var g=this.getRange();var f=this.getSelection();return this.isCollapsed()?"":g.text||(f.toString?f.toString():"")},getNode:function(){var g=this.getRange();if(!b.jqx.browser.msie||b.jqx.browser.version>=9){var f=null;if(g){f=g.commonAncestorContainer;if(!g.collapsed){if(g.startContainer==g.endContainer){if(g.startOffset-g.endOffset<2){if(g.startContainer.hasChildNodes()){f=g.startContainer.childNodes[g.startOffset]}}}}while(typeof(f)!="element"){f=f.parentNode}}return d.id(f)}return d.id(g.item?g.item(0):g.parentElement())},insertContent:function(i){var h=this.getRange();if(h.pasteHTML){h.pasteHTML(i);h.collapse(false);h.select()}else{if(h.insertNode){h.deleteContents();if(h.createContextualFragment){h.insertNode(h.createContextualFragment(i))}else{var j=this.document;var g=j.createDocumentFragment();var f=j.createElement("div");g.appendChild(f);f.outerHTML=i;h.insertNode(g)}}}}};e.initialize(d);return e};var c=function(){var n=/^<([-A-Za-z0-9_]+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,f=/^<\/([-A-Za-z0-9_]+)[^>]*>/,j=/([-A-Za-z0-9_]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g;var i=e("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed");var d=e("address,applet,blockquote,button,center,dd,del,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul");var l=e("a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var");var g=e("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr");var m=e("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected");var k=e("script,style");var h=this.HTMLParser=function(p,x){var s,t,q,u=[],v=p;u.last=function(){return this[this.length-1]};while(p){t=true;if(!u.last()||!k[u.last()]){if(p.indexOf("<!--")==0){s=p.indexOf("-->");if(s>=0){if(x.comment){x.comment(p.substring(4,s))}p=p.substring(s+3);t=false}}else{if(p.indexOf("</")==0){q=p.match(f);if(q){p=p.substring(q[0].length);q[0].replace(f,r);t=false}}else{if(p.indexOf("<")==0){q=p.match(n);if(q){p=p.substring(q[0].length);q[0].replace(n,o);t=false}}}}if(t){s=p.indexOf("<");var w=s<0?p:p.substring(0,s);p=s<0?"":p.substring(s);if(x.chars){x.chars(w)}}}else{p=p.replace(new RegExp("(.*)</"+u.last()+"[^>]*>"),function(y,z){z=z.replace(/<!--(.*?)-->/g,"$1").replace(/<!\[CDATA\[(.*?)]]>/g,"$1");if(x.chars){x.chars(z)}return""});r("",u.last())}v=p}r();function o(y,B,C,z){B=B.toLowerCase();if(d[B]){while(u.last()&&l[u.last()]){r("",u.last())}}if(g[B]&&u.last()==B){r("",B)}z=i[B]||!!z;if(!z){u.push(B)}if(x.start){var A=[];C.replace(j,function(E,D){var F=arguments[2]?arguments[2]:arguments[3]?arguments[3]:arguments[4]?arguments[4]:m[D]?D:"";A.push({name:D,value:F,escaped:F.replace(/(^|[^\\])"/g,'$1\\"')})});if(x.start){x.start(B,A,z)}}}function r(y,A){if(!A){var B=0}else{for(var B=u.length-1;B>=0;B--){if(u[B].toLowerCase()==A.toLowerCase()){break}}}if(B>=0){for(var z=u.length-1;z>=B;z--){if(x.end){x.end(u[z])}}u.length=B}}};this.HTMLtoXML=function(p){var o="";p=p.replace(/\r/ig,"");p=p.replace(/\n/ig,"");h(p,{start:function(q,s,r){o+="<"+q;for(var t=0;t<s.length;t++){o+=" "+s[t].name+'="'+s[t].escaped+'"'}o+=(r?"/":"")+">"},end:function(q){o+="</"+q+">\r\n"},chars:function(q){o+=q},comment:function(q){o+="<!--"+q+"-->"}});return o};this.FormatHTML=function(D,r){var H,C,A,u,v,G;r=r||{};C=r.indent_size||4;A=r.indent_char||" ";v=r.brace_style||"collapse";u=Infinity;G=r.unformatted||["a","span","bdo","em","strong","dfn","code","samp","kbd","var","cite","abbr","acronym","q","sub","sup","tt","i","b","big","small","u","s","strike","font","ins","del","pre","address","dt","h1","h2","h3","h4","h5","h6"];function q(){this.pos=0;this.token="";this.current_mode="CONTENT";this.tags={parent:"parent1",parentcount:1,parent1:""};this.tag_type="";this.token_text=this.last_token=this.last_text=this.token_type="";this.Utils={whitespace:"\n\r\t ".split(""),single_token:"br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed,?php,?,?=".split(","),extra_liners:"head,body,/html".split(","),in_array:function(J,t){for(var I=0;I<t.length;I++){if(J===t[I]){return true}}return false}};this.get_content=function(){var t="",J=[],K=false;while(this.input.charAt(this.pos)!=="<"){if(this.pos>=this.input.length){return J.length?J.join(""):["","TK_EOF"]}t=this.input.charAt(this.pos);this.pos++;this.line_char_count++;if(this.Utils.in_array(t,this.Utils.whitespace)){if(J.length){K=true}this.line_char_count--;continue}else{if(K){if(this.line_char_count>=this.max_char){J.push("\n");for(var I=0;I<this.indent_level;I++){J.push(this.indent_string)}this.line_char_count=0}else{J.push(" ");this.line_char_count++}K=false}}J.push(t)}return J.length?J.join(""):""};this.get_contents_to=function(J){if(this.pos==this.input.length){return["","TK_EOF"]}var t="";var K="";var L=new RegExp("</"+J+"\\s*>","igm");L.lastIndex=this.pos;var I=L.exec(this.input);var M=I?I.index:this.input.length;if(this.pos<M){K=this.input.substring(this.pos,M);this.pos=M}return K};this.record_tag=function(t){if(this.tags[t+"count"]){this.tags[t+"count"]++;this.tags[t+this.tags[t+"count"]]=this.indent_level}else{this.tags[t+"count"]=1;this.tags[t+this.tags[t+"count"]]=this.indent_level}this.tags[t+this.tags[t+"count"]+"parent"]=this.tags.parent;this.tags.parent=t+this.tags[t+"count"]};this.retrieve_tag=function(t){if(this.tags[t+"count"]){var I=this.tags.parent;while(I){if(t+this.tags[t+"count"]===I){break}I=this.tags[I+"parent"]}if(I){this.indent_level=this.tags[t+this.tags[t+"count"]];this.tags.parent=this.tags[I+"parent"]}delete this.tags[t+this.tags[t+"count"]+"parent"];delete this.tags[t+this.tags[t+"count"]];if(this.tags[t+"count"]==1){delete this.tags[t+"count"]}else{this.tags[t+"count"]--}}};this.get_tag=function(){var K="",M=[],t=false,O,J;do{if(this.pos>=this.input.length){return M.length?M.join(""):["","TK_EOF"]}K=this.input.charAt(this.pos);this.pos++;this.line_char_count++;if(this.Utils.in_array(K,this.Utils.whitespace)){t=true;this.line_char_count--;continue}if(K==="'"||K==='"'){if(!M[1]||M[1]!=="!"){K+=this.get_unformatted(K);t=true}}if(K==="="){t=false}if(M.length&&M[M.length-1]!=="="&&K!==">"&&t){if(this.line_char_count>=this.max_char){this.print_newline(false,M);this.line_char_count=0}else{M.push(" ");this.line_char_count++}t=false}if(K==="<"){O=this.pos-1}M.push(K)}while(K!==">");var P=M.join("");var I;if(P.indexOf(" ")!=-1){I=P.indexOf(" ")}else{I=P.indexOf(">")}var N=P.substring(1,I).toLowerCase();if(P.charAt(P.length-2)==="/"||this.Utils.in_array(N,this.Utils.single_token)){this.tag_type="SINGLE"}else{if(N==="script"){this.record_tag(N);this.tag_type="SCRIPT"}else{if(N==="style"){this.record_tag(N);this.tag_type="STYLE"}else{if(this.Utils.in_array(N,G)){var L=this.get_unformatted("</"+N+">",P);M.push(L);if(O>0&&this.Utils.in_array(this.input.charAt(O-1),this.Utils.whitespace)){M.splice(0,0,this.input.charAt(O-1))}J=this.pos-1;if(this.Utils.in_array(this.input.charAt(J+1),this.Utils.whitespace)){M.push(this.input.charAt(J+1))}this.tag_type="SINGLE"}else{if(N.charAt(0)==="!"){if(N.indexOf("[if")!=-1){if(P.indexOf("!IE")!=-1){var L=this.get_unformatted("-->",P);M.push(L)}this.tag_type="START"}else{if(N.indexOf("[endif")!=-1){this.tag_type="END";this.unindent()}else{if(N.indexOf("[cdata[")!=-1){var L=this.get_unformatted("]]>",P);M.push(L);this.tag_type="SINGLE"}else{var L=this.get_unformatted("-->",P);M.push(L);this.tag_type="SINGLE"}}}}else{if(N.charAt(0)==="/"){this.retrieve_tag(N.substring(1));this.tag_type="END"}else{this.record_tag(N);this.tag_type="START"}if(this.Utils.in_array(N,this.Utils.extra_liners)){this.print_newline(true,this.output)}}}}}}return M.join("")};this.get_unformatted=function(I,J){if(J&&J.indexOf(I)!=-1){return""}var t="";var K="";var L=true;do{if(this.pos>=this.input.length){return K}t=this.input.charAt(this.pos);this.pos++;if(this.Utils.in_array(t,this.Utils.whitespace)){if(!L){this.line_char_count--;continue}if(t==="\n"||t==="\r"){K+="\n";this.line_char_count=0;continue}}K+=t;this.line_char_count++;L=true}while(K.indexOf(I)==-1);return K};this.get_token=function(){var t;if(this.last_token==="TK_TAG_SCRIPT"||this.last_token==="TK_TAG_STYLE"){var I=this.last_token.substr(7);t=this.get_contents_to(I);if(typeof t!=="string"){return t}return[t,"TK_"+I]}if(this.current_mode==="CONTENT"){t=this.get_content();if(typeof t!=="string"){return t}else{return[t,"TK_CONTENT"]}}if(this.current_mode==="TAG"){t=this.get_tag();if(typeof t!=="string"){return t}else{var J="TK_TAG_"+this.tag_type;return[t,J]}}};this.get_full_indent=function(t){t=this.indent_level+t||0;if(t<1){return""}return Array(t+1).join(this.indent_string)};this.printer=function(K,J,t,M,L){this.input=K||"";this.output=[];this.indent_character=J;this.indent_string="";this.indent_size=t;this.brace_style=L;this.indent_level=0;this.max_char=M;this.line_char_count=0;for(var I=0;I<this.indent_size;I++){this.indent_string+=this.indent_character}this.print_newline=function(P,N){this.line_char_count=0;if(!N||!N.length){return}if(!P){while(this.Utils.in_array(N[N.length-1],this.Utils.whitespace)){N.pop()}}N.push("\n");for(var O=0;O<this.indent_level;O++){N.push(this.indent_string)}};this.print_token=function(N){this.output.push(N)};this.indent=function(){this.indent_level++};this.unindent=function(){if(this.indent_level>0){this.indent_level--}}};return this}H=new q();H.printer(D,A,C,u,v);while(true){var w=H.get_token();H.token_text=w[0];H.token_type=w[1];if(H.token_type==="TK_EOF"){break}switch(H.token_type){case"TK_TAG_START":H.print_newline(false,H.output);H.print_token(H.token_text);H.indent();H.current_mode="CONTENT";break;case"TK_TAG_STYLE":case"TK_TAG_SCRIPT":H.print_newline(false,H.output);H.print_token(H.token_text);H.current_mode="CONTENT";break;case"TK_TAG_END":if(H.last_token==="TK_CONTENT"&&H.last_text===""){var F=H.token_text.match(/\w+/)[0];var y=H.output[H.output.length-1].match(/<\s*(\w+)/);if(y===null||y[1]!==F){H.print_newline(true,H.output)}}H.print_token(H.token_text);H.current_mode="CONTENT";break;case"TK_TAG_SINGLE":var o=H.token_text.match(/^\s*<([a-z]+)/i);if(!o||!H.Utils.in_array(o[1],G)){H.print_newline(false,H.output)}H.print_token(H.token_text);H.current_mode="CONTENT";break;case"TK_CONTENT":if(H.token_text!==""){H.print_token(H.token_text)}H.current_mode="TAG";break;case"TK_STYLE":case"TK_SCRIPT":if(H.token_text!==""){H.output.push("\n");var x=H.token_text;if(r.indent_scripts=="keep"){var z=0}else{if(r.indent_scripts=="separate"){var z=-H.indent_level}else{var z=1}}var p=H.get_full_indent(z);var s=x.match(/^\s*/)[0];var B=s.match(/[^\n\r]*$/)[0].split(H.indent_string).length-1;var E=H.get_full_indent(z-B);x=x.replace(/^\s*/,p).replace(/\r\n|\r|\n/g,"\n"+E).replace(/\s*$/,"");if(x){H.print_token(x);H.print_newline(true,H.output)}}H.current_mode="TAG";break}H.last_token=H.token_type;H.last_text=H.token_text}return H.output.join("")};function e(r){var q={},o=r.split(",");for(var p=0;p<o.length;p++){q[o[p]]=true}return q}}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxNotification","",{});a.extend(a.jqx._jqxNotification.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",appendContainer:null,position:"top-right",zIndex:99999,browserBoundsOffset:5,notificationOffset:5,opacity:0.9,hoverOpacity:1,autoOpen:false,animationOpenDelay:400,animationCloseDelay:800,closeOnClick:true,autoClose:true,autoCloseDelay:3000,showCloseButton:true,template:"info",icon:null,blink:false,disabled:false,rtl:false,events:["open","close","click"]};a.extend(true,this,b);return b},createInstance:function(b){var c=this;c.render();if(c.autoOpen==true){c.open()}},render:function(){var c=this;if(c.host.hasClass("jqx-notification")==false){c.host.addClass(c.toThemeProperty("jqx-rc-all"));c.host.addClass(c.toThemeProperty("jqx-notification"));c.host.css({zIndex:c.zIndex,display:"none",opacity:c.opacity});c._container=c._notificationContainer();c._appendContent();c._setHoverFunctions();c._instances=new Array();c._instanceKey=0;var b=a.data(document.body,"jqxNotifications");if(b==undefined){b=0}a.data(document.body,"jqxNotifications",(b+1))}else{c.refresh()}},refresh:function(b){if(!b){this._appendContent(true)}},open:function(){var c=this;if(c.disabled==false){var b=c.host.clone();b.removeAttr("id");b.width(c.width);b.height(c.height);if(this.width!=null&&this.width.toString().indexOf("%")!=-1){b.css("width",this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){b.css("height",this.height)}if(!c.appendContainer&&(c.position=="bottom-left"||c.position=="bottom-right")){b.css("margin-top",c.notificationOffset);c._container.prepend(b)}else{b.css("margin-bottom",c.notificationOffset);c._container.append(b)}c._addHandlers(b);b.fadeIn(c.animationOpenDelay,function(){c._raiseEvent("0")});if(c.blink==true){b._blinkInterval=setInterval(function(){b.fadeTo(400,c.opacity/1.5,function(){b.fadeTo(400,c.opacity)})},850)}if(c.autoClose==true){b._autoCloseTimeout=setTimeout(function(){c._close(b)},c.autoCloseDelay)}b._key=c._instanceKey;c._instances[c._instanceKey]=b;c._instanceKey++}},closeAll:function(){var c=this;for(var b=0;b<c._instances.length;b++){if(c._instances[b]){c._close(c._instances[b])}}},closeLast:function(){var c=this;for(var b=c._instances.length;b>=0;b--){if(c._instances[b]){c._close(c._instances[b]);break}}},destroy:function(){var c=this;c.closeAll();c.host.remove();var b=a.data(document.body,"jqxNotifications");a.data(document.body,"jqxNotifications",(b-1));c._destroyContainers(b-1)},propertyChangedHandler:function(c,d,h,f){var e=this;if(f!=h){switch(d){case"width":case"height":var b=h.indexOf&&h.indexOf("%")!=-1;b==undefined?b=false:b=b;var g=f.indexOf&&f.indexOf("%")!=-1;g==undefined?g=false:g=g;if(g!=b){e[d]=h}break;case"appendContainer":case"position":e._container=e._notificationContainer();break;case"browserBoundsOffset":if(!e.appendContainer){e._position(e._container)}break;case"opacity":e.host.css("opacity",f);break;case"showCloseButton":case"template":case"icon":case"rtl":e._appendContent(true);break}}},_raiseEvent:function(h,e){var g=this;var c=g.events[h];var f=new a.Event(c);f.owner=g;f.args=e;try{var b=g.host.trigger(f)}catch(d){}return b},_close:function(b){var c=this;if(c._instances[b._key]){c._instances[b._key]=false;clearInterval(b._blinkInterval);clearTimeout(b._autoCloseTimeout);b.fadeOut(c.animationCloseDelay,function(){c._removeHandlers(b);b.remove();c._raiseEvent("1")})}},_addHandlers:function(b){var d=this;d.addHandler(b,"click.notification"+d.element.id,function(e){d._raiseEvent("2");if(d.closeOnClick==true){d._close(b)}});d.addHandler(b,"mouseenter.notification"+d.element.id,function(e){if(!b._blinkInterval){d.mouseenterFunction(b)}});d.addHandler(b,"mouseleave.notification"+d.element.id,function(e){if(!b._blinkInterval&&b.css("display")!="none"){d.mouseleaveFunction(b)}});if(d.showCloseButton==true){var c=b.find(".jqx-notification-close-button");d.addHandler(c,"click.notification"+d.element.id,function(e){e.stopPropagation();d._close(b)})}},_removeHandlers:function(b){var d=this;d.removeHandler(b,"click.notification"+d.element.id);d.removeHandler(b,"click.mouseenter"+d.element.id);d.removeHandler(b,"click.mouseleave"+d.element.id);var c=b.find(".jqx-notification-close-button");if(c.length>0){d.removeHandler(c,"click.notification"+d.element.id)}},_appendContent:function(g){var j=this;var e;var b=j.host.html();if(!g){e=j.host.children().detach()}if(g){j.host.removeAttr("class");j.host.addClass(j.toThemeProperty("jqx-rc-all"));j.host.addClass(j.toThemeProperty("jqx-notification"))}var m=a("<table class='"+j.toThemeProperty("jqx-notification-table")+"'></table>");var d=a("<tr></tr>");m.append(d);var h=j.rtl?"jqx-notification-content-rtl":"";if(!g){var i=a("<td class='"+j.toThemeProperty("jqx-notification-content")+" "+h+"'></td>")}else{var i=j.host.find(".jqx-notification-content");b=i.html();e=i.detach();if(j.rtl){i.addClass("jqx-notification-content-rtl")}else{i.removeClass("jqx-notification-content-rtl")}}d.html(i);var f=function(){if(j.rtl==false){k.addClass("jqx-notification-icon-ltr");i.before(k)}else{k.addClass("jqx-notification-icon-rtl");i.after(k)}};var k;if(j.template){j.host.addClass("jqx-widget");j.host.addClass("jqx-popup");j.host.addClass("jqx-notification-"+j.template);k=a("<td class='"+j.toThemeProperty("jqx-notification-icon")+" jqx-notification-icon-"+j.template+"'></td>");f()}else{j.host.addClass(j.toThemeProperty("jqx-widget"));j.host.addClass(j.toThemeProperty("jqx-popup"));j.host.addClass(j.toThemeProperty("jqx-fill-state-normal"));if(j.icon){k=a("<td class='"+j.toThemeProperty("jqx-notification-icon")+"'></td>");j.icon.padding=j.icon.padding?parseInt(j.icon.padding):5;k.css({width:(parseInt(j.icon.width)+j.icon.padding),height:j.icon.height,"background-image":"url('"+j.icon.url+"')"});f()}}if(j.showCloseButton==true){var l;if(j.template){l="jqx-notification-close-button jqx-notification-close-button-"+j.template}else{l=j.toThemeProperty("jqx-icon-close")+" "+j.toThemeProperty("jqx-notification-close-button")}var c=a("<td class='"+j.toThemeProperty("jqx-notification-close-button-container")+"'><div class='"+l+" "+j.element.id+"CloseButton' title='Close'></div></td>");if(j.rtl==false){c.find("div").addClass("jqx-notification-close-button-ltr");i.after(c)}else{c.find("div").addClass("jqx-notification-close-button-rtl");i.before(c)}}j.host[0].innerHTML="";j.host.append(m);if(e.length>0){j.host.find(".jqx-notification-content").append(e)}else{j.host.find(".jqx-notification-content").html(b)}},_position:function(b){var e=this;var g;var d;var f;var c;switch(e.position){case"top-right":g="";d=e.browserBoundsOffset;f=e.browserBoundsOffset;c="";break;case"top-left":g=e.browserBoundsOffset;d="";f=e.browserBoundsOffset;c="";break;case"bottom-left":g=e.browserBoundsOffset;d="";f="";c=e.browserBoundsOffset;break;case"bottom-right":g="";d=e.browserBoundsOffset;f="";c=e.browserBoundsOffset;break}b.css({left:g,right:d,top:f,bottom:c})},_notificationContainer:function(){var c=this;var b;if(!c.appendContainer){b=a("#jqxNotificationDefaultContainer-"+c.position);if(b.length==0){a("body").append("<div id='jqxNotificationDefaultContainer-"+c.position+"' class='jqx-notification-container'></div>");b=a("#jqxNotificationDefaultContainer-"+c.position);if(c.width.indexOf&&c.width.indexOf("%")!=-1){b.addClass(c.toThemeProperty("jqx-notification-container-full-width"))}if(c.height.indexOf&&c.height.indexOf("%")!=-1){b.addClass(c.toThemeProperty("jqx-notification-container-full-height"))}c._position(b)}}else{b=a(c.appendContainer);if(b.length==0){throw new Error("jqxNotification: Invalid appendContainer jQuery Selector - "+c.appendContainer+"! Please, check whether the used ID or CSS Class name is correct.")}}return b},_destroyContainers:function(b){if(b==0){a(".jqx-notification-container").remove()}},_setHoverFunctions:function(){var b=this;var c=false;if(a.jqx.browser.browser=="msie"&&a.jqx.browser.version=="9.0"){c=true}if(c==false){b.mouseenterFunction=function(d){d.fadeTo("fast",b.hoverOpacity)};b.mouseleaveFunction=function(d){d.fadeTo("fast",b.opacity)}}else{b.mouseenterFunction=function(d){d.css("filter","alpha(opacity = "+(b.hoverOpacity*100)+")")};b.mouseleaveFunction=function(d){d.css("filter","alpha(opacity = "+(b.opacity*100)+")")}}}})})(jqxBaseFramework);if(!jqxBaseFramework){var jqxBaseFramework=window.minQuery||window.jQuery}(function(h,q,i){if(!q){return}h.jqx=h.jqx||{};h.jqx.AMD=false;var b=q.module("jqwidgets",[]);var u=q.module("jqwidgets-amd",[],function(){h.jqx.AMD=true});var f=null;var C=null;var v=null;var z=null;var s=null;var c=new Array();var D=new Array();var p=new Array();var r=new Array();var g=new Array();var d=new Array();var e={};var x=false;var l=function(){var E=document.getElementsByTagName("script");var G,F,H;for(G=0;F=E[G];G++){H=F.src;if(H.indexOf("jqxcore.js")>=0){var I=H.substring(0,H.indexOf("jqxcore.js"));break}}return I}();function y(I,J,E,G,F){if(G&&F){switch(I){case"jqxGrid":case"jqxDataTable":case"jqxTreeGrid":if(E.columns){var L=G.columns||G;var H=F.columns||F;if(L.length!=H.length){return false}var K={};h.each(L,function(M,O){var N=this;for(var P in this){if(N[P]!=H[M][P]){var Q=N.datafield||N.dataField;if(!K[Q]){K[Q]={}}K[Q][P]=N[P]}}});if(!h.isEmptyObject(K)){h.each(K,function(N,P){for(var O in P){var M=h(J).jqxProxy("getcolumnproperty",N,O);if(M!==P[O]){h(J).jqxProxy("setcolumnproperty",N,O,P[O])}}});return true}}break}}return false}function a(R,J,Q,I,N,M,E){var F=function(W){if(M==="jqxTree"||M==="jqxMenu"){return W}if(typeof W=="object"){if(W&&W._bindingUpdate!=null){return W}}var V={};var T=false;if(h.isArray(W)||(W instanceof Object&&!W.url&&!(W.localdata||W.localData))){if(M==="jqxChart"){return W}T=true;V.localData=W;V.type="array";if(W[0]){var U=new Array();if(h.type(W[0])=="object"){h.each(W[0],function(Y,Z){var aa={name:Y,type:h.type(Z)};U.push(aa)});V.datafields=U}}}else{if(W&&W.url){V=W}else{if(W&&(W.localdata||W.localData)){V=W}}}if(h.jqx.dataAdapter){var X=new h.jqx.dataAdapter(V);return X}else{if(T){return W}}return null};if(Q.jqxSource!=i){var O=R.$watchCollection(Q.jqxSource,function(V,U){if(V!=U){if(q.equals(V,U)){return}if(V&&U&&V._source&&U._source&&q.equals(V._source,U._source)){return}var T=F(V);h(J).jqxProxy({source:T});var W=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&W&&W.propertyChanged){W.propertyChanged("source",U,V)}}});E.push(O)}else{if(Q.jqxSettings!=i){var L={};var H=null;var P=f(Q.jqxSettings)(R);var K=J.controller();for(var G in K){if(P&&K[G]==P.source){H=G;break}}if(!H){for(var G in R){if(P&&R[G]==P.source){H=G;break}}}if(H){var S="";for(var G in R){if(R[G]==K){S=G;break}}if(S!=""){H=S+"."+H}var O=N.$watchCollection(H,function(W,V){if(W!=V){if(q.equals(W,V)){return}if(W&&V&&W._source&&V._source&&q.equals(W._source,V._source)){return}var U=h.isArray(W)||h.type(W)==="array";if(new Date()-L["jqxSettings.source"]>1000||L=={}||!L["jqxSettings.source"]||U){var T=F(W);h(J).jqxProxy({source:T});var X=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&X&&X.propertyChanged){X.propertyChanged("source",V,W)}L.property=new Date()}}});E.push(O)}var O=R.$watchCollection(Q.jqxSettings+".source",function(V,U){if(V!=U){if(q.equals(V,U)){return}if(V&&U&&V._source&&U._source&&q.equals(V._source,U._source)){return}if(new Date()-L.property>1000||!L["jqxSettings.property"]||L=={}){var T=F(V);h(J).jqxProxy({source:T});var W=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&W&&W.propertyChanged){W.propertyChanged("source",U,V)}L["jqxSettings.source"]=new Date()}}});E.push(O);var O=R.$watchCollection(Q.jqxSettings,function(V,U){if(!V){return}if(!U){var T=F(V.source);h(J).jqxProxy({source:T});return}if(V.source!=U.source){if(q.equals(V.source,U.source)){return}if(V&&U&&V.source&&U.source&&V.source._source&&U.source._source&&q.equals(V.source._source,U.source._source)){return}if(V.source&&U.source&&h.isArray(V.source)&&h.isArray(U.source)){if(A(V.source)==A(U.source)){return}}if(new Date()-L.property>1000||!L["jqxSettings.source"]||L=={}){var T=F(V.source);h(J).jqxProxy({source:T});var W=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&W&&W.propertyChanged){W.propertyChanged("source",U.source,V.source)}L["jqxSettings.source"]=new Date()}}});E.push(O)}}return F(I)}function A(E){if(E==null){return""}var F="";h.each(E,function(H){var J=this;if(H>0){F+=", "}F+="[";var G=0;if(h.type(J)=="object"){for(var I in J){if(G>0){F+=", "}F+="{"+I+":"+J[I]+"}";G++}}else{if(G>0){F+=", "}F+="{"+H+":"+J+"}";G++}F+="]"});return F}function k(I,G,F,E,H,J){h.extend(h.jqx["_"+E+""].prototype,{definedInstance:function(){if(this.element&&this.element!==G[0]){return true}if(this.base&&this.base.element!==G[0]){return true}var K=this;h.each(J,function(N,O){K.addHandler(h(G),N,function(P){I.$parent?h.proxy(O,H)(P):O(P);if(I.$root.$$phase!="$apply"&&I.$root.$$phase!="$digest"){I.$apply()}})});var L=F.$attr;h.each(F,function(Q,R){if(Q.indexOf("jqxOn")>=0){var N=L[Q].substring(7);var P=h.camelCase(N);var O=R;K.addHandler(h(G),P,function(T){T.data=F.data||F.jqxData;if(O.indexOf("(")>=0){var S=O.indexOf("(");var U=f(O.substring(0,S))(I);if(U){U(T)}else{I.$emit(P,T)}}else{I.$emit(O,T)}if(I.$root.$$phase!="$apply"&&I.$root.$$phase!="$digest"){I.$apply()}})}});if(F.jqxInstance){var M=f(F.jqxInstance).assign;if(M){M(I,K)}if(I.$root.$$phase!="$apply"&&I.$root.$$phase!="$digest"){I.$apply()}}}})}function j(J,H,F,E,I,K){if(!F.jqxSettings){return}var G=f(F.jqxSettings)(J);if(!G){return}if(!G.apply){G.apply=G[E]=function(){var L=arguments;var M=new Array();if(L.length==0){return true}h.each(D[I.$id+E+F.jqxSettings],function(N,O){var P=this;M.push({widgetName:E,element:P,result:h.jqx.jqxWidgetProxy(E,P,L)})});if(M.length==1){return M[0].result}return M};G.digest=function(){if(!/^\$(digest|apply)$/.test(J.$root.$$phase)){J.$digest()}};G.refresh=function(P,O){var M={};var L=h(H)[E]("getInstance");h.each(G,function(Q,S){if(Q==="created"||Q==="propertyChanged"||Q=="data"||Q=="refresh"||Q==E||Q=="apply"){return true}var R=L.events||L._events;if((R&&R.indexOf(Q)>=0)||Q.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}if(P!=i&&P.indexOf(Q)===-1){return true}M[Q]=S});if(M!=={}){if(O){h.each(M,function(Q,R){G[Q]=L[Q]});if(J.$root.$$phase!="$apply"&&J.$root.$$phase!="$digest"){J.$apply()}}else{h.each(D[I.$id+E+F.jqxSettings],function(Q,R){h(this).jqxProxy(M)});if(F.jqxWatchSettings!=i){if(I){var N=f(F.jqxSettings)(I);h.each(N,function(Q,U){if(Q.match(/(source|propertyChanged|created|data|apply|refresh)/g)){return true}var S=L.events||L._events;if((S&&S.indexOf(Q)>=0)||Q.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}if(Q===E){return true}if(!p[F.jqxSettings+"."+Q]){var T=Q;var R=I.$watch(F.jqxSettings+"."+Q,function(X,W){if(X!=W){if(q.equals(X,W)){return}var V={};V[T]=X;h.each(D[I.$id+E+F.jqxSettings],function(aa,ab){var Z=y(E,h(this),V,X,W);if(!Z){h(this).jqxProxy(V)}});var Y=q.extend({},J.$eval(F.jqxSettings));if(F.jqxSettings&&Y&&Y.propertyChanged){Y.propertyChanged(T,W,X)}}},true);p[F.jqxSettings+"."+Q]=R}})}}}}if(e[H[0].id]){M={};h.each(e[H[0].id],function(){if(P!=i&&P.indexOf(h.camelCase(this.value.substring(4)))===-1){return true}M[h.camelCase(this.value.substring(4))]=J.$eval(this.label);if(O){var Q=h.parse(this.label)(J).assign;if(Q){Q(J,L[h.camelCase(this.value.substring(4))])}}});if(!O){h.each(D[I.$id+E+F.jqxSettings],function(Q,R){h(this).jqxProxy(M)})}else{if(J.$root.$$phase!="$apply"&&J.$root.$$phase!="$digest"){J.$apply()}}}};D[I.$id+E+F.jqxSettings]=new Array();D[I.$id+E+F.jqxSettings].push(K)}else{if(!D[I.$id+E+F.jqxSettings]){D[I.$id+E+F.jqxSettings]=new Array()}D[I.$id+E+F.jqxSettings].push(K)}}function m(O,J,N,F,K,H,I){var L=/(jqxGrid|jqxTree|jqxMenu|jqxDataTable|jqxTreeGrid|jqxListBox|jqxTreeMap|jqxComboBox|jqxDropDownList|jqxChart)/ig;if(N.jqxSettings&&H&&H.source===i&&N.jqxSource===i&&F.match(L)){if(F.match(/(jqxTree|jqxMenu)/ig)){if(J[0].innerHTML.toLowerCase().indexOf("ul")===-1){H.source=[]}}else{H.source=[]}}if(H.source!==i&&N.jqxSettings){H.source=a(O,J,N,H.source,K,F,I)}else{if(N.jqxSource!==i){var E=q.extend({},O.$eval(N.jqxSource));var G=N.jqxSource&&N.jqxSource.dataBind?true:false;if(G){H.source=a(O,J,N,N.jqxSource,K,F,I)}else{H.source=a(O,J,N,E,K,F,I)}}}var M=O.$watch(N.ngDisabled,function(R,Q){if(R!=i){if(R!=Q||h(J).jqxProxy("disabled")!==R){var P={};P.disabled=R;h(J).jqxProxy(P)}}});I.push(M)}function n(Q,J,P,E,N){var H=new Array();var G=q.extend({},Q.$eval(P.jqxSettings));m(Q,J,P,E,N,G,H);var L={};var K={};if(e[J[0].id]){h.each(e[J[0].id],function(){var Y=this.label;var aa=this.value;var V=h.camelCase(aa.substring("4"));if(typeof P[Y]!=="undefined"){var T=Q.$eval(P[Y]);if(T===i&&h.type(P[Y])==="string"){T=P[Y]}if(V=="instance"){return true}if(h.type(T)==="array"&&E!=="source"){T=T.slice(0)}else{if(h.type(T)==="object"&&E!=="source"){T=h.extend({},T)}}var U=/(columnmenuopening|columnmenuclosing|aggregatesrenderer|tooltipFormatFunction|labelsFormatFunction|rendergridrows|draw|renderFiles|initTools|initFeedBack|onTargetDrop|drawBefore|dragStart|dragEnd|onDropTargetEnter|onDropTargetLeave|onDrag|createCommand|ready|render|initrowdetails|initTabContent|initContent|renderer|renderToolbar|renderStatusBar|groupsrenderer|pagerrenderer|groupcolumnrenderer|updatefilterconditions|handlekeyboardnavigation|updatefilterpanel|rendered|virtualModeCreateRecords|virtualModeRecordCreating|search|selectionRenderer)/ig;var S=/(searchMode)/ig;var W=/(ready|aggregatesrenderer|initrowdetails|initTabContent|initContent|renderToolbar|renderStatusBar|pagerRenderer)/ig;if(h.isFunction(T)&&!V.match(U)){K[index]=T}else{if(V.match(U)&&!V.match(S)){var X=function(){var ab=T.apply(this,arguments);if(V.match(W)&&!/^\$(digest|apply)$/.test(Q.$root.$$phase)){Q.$digest()}return ab};L[V]=X;return true}L[V]=T}var Z=function(af,ad){if(af!=ad){if(q.equals(af,ad)){return}var ae=h.camelCase(aa.substring("4"));if(ae=="watch"){if(P.jqxWatch.indexOf(",")>=0||P.jqxWatch.indexOf("[")>=0){var ah=P.jqxWatch;ah=ah.replace("[","");ah=ah.replace("]","");ah=ah.trim();ah=ah.split(",");h.each(ah,function(al,ao){var ap=this.split(".");for(var am=0;am<ap.length;am++){if(ap[am] in h(J).data().jqxWidget){ae=ap[am];break}else{if(ap[am].toLowerCase() in h(J).data().jqxWidget){ae=ap[am].toLowerCase();break}}}var aj={};aj[ae]=af[al];var ak=y(E,h(J),aj,af,ad);if(!ak){h(J).jqxProxy(aj);var an=q.extend({},Q.$eval(P.jqxSettings));if(P.jqxSettings&&an&&an.propertyChanged){an.propertyChanged(ae,ad,af)}}});return}var ah=P.jqxWatch.split(".");for(var ag=0;ag<ah.length;ag++){if(ah[ag] in h(J).data().jqxWidget){ae=ah[ag];break}else{if(ah[ag].toLowerCase() in h(J).data().jqxWidget){ae=ah[ag].toLowerCase();break}}}}var ab={};ab[ae]=af;var ac=y(E,h(J),ab,af,ad);if(!ac){h(J).jqxProxy(ab);var ai=q.extend({},Q.$eval(P.jqxSettings));if(P.jqxSettings&&ai&&ai.propertyChanged){ai.propertyChanged(ae,ad,af)}}}};if(V=="watch"){delete L[V];var Z=Q.$watch(P[Y],Z,true);H.push(Z)}else{var Z=Q.$watch(P[Y],Z);H.push(Z)}}})}if(J[0].id==""){if(i==c[E]){c[E]=0}J[0].id=E+c[E]++}var F=h(J)[E];if(!F){throw new Error("Missing required JavaScript references for: "+E);return null}h.each(G,function(V,W){if(V==="data"||V==="created"||V==="propertyChanged"){return true}var T=/(columnmenuopening|columnmenuclosing|aggregatesrenderer|tooltipFormatFunction|labelsFormatFunction|rendergridrows|renderFiles|initTools|draw|drawBefore|dragStart|dragEnd|initFeedBack|onTargetDrop|onDropTargetEnter|onDropTargetLeave|onDrag|createCommand|ready|render|initrowdetails|initTabContent|initContent|renderer|renderToolbar|renderStatusBar|groupsrenderer|pagerrenderer|groupcolumnrenderer|updatefilterconditions|handlekeyboardnavigation|updatefilterpanel|rendered|virtualModeCreateRecords|virtualModeRecordCreating|search|selectionRenderer)/ig;var U=/(searchMode)/ig;var S=/(ready|aggregatesrenderer|initrowdetails|initTabContent|initContent|renderToolbar|renderStatusBar|pagerRenderer)/ig;if(h.isFunction(W)&&!V.match(T)){K[V]=W}else{if(V.match(T)&&!V.match(U)){var X=function(){var Y=W.apply(this,arguments);if(V.match(S)&&!/^\$(digest|apply)$/.test(Q.$root.$$phase)){Q.$digest()}return Y};L[V]=X;return true}if(h.type(W)==="array"&&V!=="source"){W=W.slice(0)}else{if(h.type(W)==="object"&&V!=="source"){W=h.extend({},W)}}L[V]=W}});k(Q,J,P,E,N,K);var M=J[0];j(Q,J,P,E,N,M);var I=h(J)[E](L);var R=h(J)[E]("getInstance");B(Q,J,P,E,N,G,M,R,L,H);var O=Q.$on("$destroy",function(){if(R&&R.destroy&&!R.isDestroyed){R.isDestroyed=true;if(h(J).parents().length>0){h(J)[E]("destroy")}R=null}else{h(J).remove();R=null}for(var S=0;S<H.length;S++){H[S]()}L=[];K=[];O()});return R}function B(O,H,N,E,K,G,J,P,I,F){if(N.jqxSettings){if(N.jqxWatchSettings!=i){if(K){var M=f(N.jqxSettings)(K);h.each(M,function(Q,U){if(Q.match(/(source|created|propertyChanged|data|apply|refresh)/g)){return true}var S=P.events||P._events;if((S&&S.indexOf(Q)>=0)||Q.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}if(Q===E){return true}if(I.hasOwnProperty(Q)){var T=Q;var R=K.$watch(N.jqxSettings+"."+Q,function(Y,X){if(Y!=X){if(q.equals(Y,X)){return}var V={};V[T]=Y;var W=y(E,h(H),V,Y,X);if(!W){h(H).jqxProxy(V);var Z=q.extend({},O.$eval(N.jqxSettings));if(N.jqxSettings&&Z&&Z.propertyChanged){Z.propertyChanged(T,X,Y)}}}},true);p[N.jqxSettings+"."+Q]=R;F.push(R)}})}}var L=O.$watch(N.jqxSettings,function(U,T){var R={};var Q=false;if(U!=T){if(q.equals(U,T)){return}h.each(U,function(X,aa){if(X==="source"){if(T.source!=null){return true}else{var W=a(O,H,N,aa,K,F);R[X]=W}}if(X==="created"){return true}if(X==="propertyChanged"){return true}if(X==="data"){O.$apply();return true}var Y=P.events||P._events;if((Y&&Y.indexOf(X)>=0)||X.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}var Z=function(ac){if(N.jqxWatchSettings!=i){if(K){if(!p[N.jqxSettings+"."+ac]){var ac=X;var ab=K.$watch(N.jqxSettings+"."+ac,function(ag,af){if(ag!=af){if(q.equals(ag,af)){return}var ad={};ad[ac]=ag;var ae=y(E,h(H),ad,ag,af);if(!ae){h(H).jqxProxy(ad);var ah=q.extend({},O.$eval(N.jqxSettings));if(N.jqxSettings&&ah&&ah.propertyChanged){ah.propertyChanged(ac,af,ag)}}}},true);p[N.jqxSettings+"."+ac]=ab;F.push(ab)}}}};if(!(aa instanceof Object)&&(T==null||aa!==T[X])){R[X]=aa;Z(X);Q=true}else{if(X!==E&&X!=="apply"&&X!=="created"&&X!=="propertyChanged"&&(aa instanceof Object)&&(T==null||(A(aa)!==A(T[X]))||(A(aa)==""&&A(T[X])==""))){R[X]=aa;Z(X);Q=true}}});if(R!=={}&&Q){var S=y(E,h(H),R,U,T);if(!S){h(H).jqxProxy(R);var V=q.extend({},O.$eval(N.jqxSettings));if(N.jqxSettings&&V&&V.propertyChanged){V.propertyChanged(index,T,U)}}}}});F.push(L)}}function w(K,G,S,E){var P=K[0].nodeName.toLowerCase();var Q=h(K).parent();var H=h(K).html();var R=Q&&Q[0]&&Q[0].nodeName.toLowerCase()=="ng-include"?true:false;if(h(K).parents("[ui-view]").length>0){R=true}if(R&&!G){h(K).attr("data-jqx-ng-include",true);return}var L='<div id="jqx-ngwidget">'+H+"</div>";if(P.indexOf("jqx")>=0){var I=K[0].attributes;var M=K;if(P.indexOf("input")>=0){if(P.indexOf("date")>=0||P.indexOf("number")>=0){h(K).replaceWith('<div id="jqx-ngwidget"></div>')}else{if(P.indexOf("password")>=0){h(K).replaceWith('<input id="jqx-ngwidget" type="password"/>')}else{h(K).replaceWith('<input id="jqx-ngwidget"/>')}}}else{if(P.indexOf("jqx-button")>=0&&P.indexOf("jqx-button-group")==-1){h(K).replaceWith('<button id="jqx-ngwidget">'+H+"</button>")}else{if(P.indexOf("jqx-toggle-button")>=0){h(K).replaceWith('<button id="jqx-ngwidget">'+H+"</button>")}else{if(P.indexOf("jqx-link-button")>=0){if(h(K).find("a").length>0){var J=h(K).find("a");J.attr("id","jqx-ngwidget");h(K).replaceWith(J)}else{h(K).replaceWith('<a id="jqx-ngwidget">'+H+"</a>")}}else{if(P.indexOf("jqx-data-table")>=0||P.indexOf("jqx-grid")>=0){if(h(K).find("tr").length>0){h(K).replaceWith('<div id="jqx-ngwidget">'+H+"</div>")}else{h(K).replaceWith('<div id="jqx-ngwidget"></div>')}}else{if(P.indexOf("jqx-list-box")>=0||P.indexOf("jqx-drop-down-list")>=0||P.indexOf("jqx-combo-box")>=0){if(h(K).find("option").length>0){h(K).replaceWith('<select id="jqx-ngwidget">'+H+"</select>")}else{if(h(K).find("li").length>0){h(K).replaceWith('<ul id="jqx-ngwidget">'+H+"</ul>")}else{h(K).replaceWith('<div id="jqx-ngwidget"></div>')}}}else{if(P.indexOf("jqx-list-menu")>=0){h(K).replaceWith('<ul id="jqx-ngwidget" data-role="listmenu">'+H+"</ul>")}else{if(P.indexOf("jqx-tooltip")>=0){var F=h(K).children();F.detach();h(F).insertAfter(h(K));h.each(I,function(){if(h(F)[0]){h(F)[0].setAttribute(this.name,this.value)}});h(K).remove();K=F}else{h(K).replaceWith(L)}}}}}}}}M=Q.find("#jqx-ngwidget").removeAttr("id");h.each(I,function(){if(h(M)[0]){h(M)[0].setAttribute(this.name,this.value)}})}var O=K[0];if(M&&M.length){O=M[0]}var N=this;if(O.id==""){if(i==c[E]){c[E]=0}O.id=E+c[E]++}h.each(S,function(T,U){if(T!==E&&T!="jqxNgModel"&&T.indexOf("jqxOn")==-1&&T!="jqxData"&&T!="jqxWatchSettings"&&T!="jqxCreated"&&T!="jqxSource"&&T!="jqxCreate"&&T!="jqxSettings"&&T.indexOf("jqx")>=0){if(!e[O.id]){e[O.id]=new Array()}e[O.id].push({label:T,value:S.$attr[T]})}});return h(O)}function t(G,H){function F(L){H.filesCount=0;var I=L.length;if(L.scripts){var K=L.scripts.length;for(var N in L.deps){K++;var M=L.deps[N];K+=M.length}I=K}var J=function(S,P){var R=0;var O=0;var Q=function(){var Y=S[R];var T=h('script[src*="'+Y+'"]').length;if(T===0){var V=document.getElementsByTagName("head")[0];var U=document.createElement("script");U.type="text/javascript";var X=function(){H.filesCount++;O++;g[Y]=false;if(r[Y]!=i){h.each(r[Y],function(){this.documentReady=true;if(this.scriptsLoaded){this.scriptsLoaded()}})}r[Y]=true;if(H.filesCount==I){H.documentReady=true;if(H.scriptsLoaded){H.scriptsLoaded()}return}if(O===S.length&&P){P()}};if(U.addEventListener){U.addEventListener("load",X,false)}else{if(window.attachEvent){U.attachEvent("onreadystatechange",function(){if(U.readyState=="complete"||U.readyState=="loaded"){X()}})}}g[Y]=true;var W=l;if(Y=="globalize.js"){W=l+"globalization/"}U.src=W+Y;V.appendChild(U);R++;if(R<S.length){Q()}}else{H.filesCount++;if(H.filesCount==I){if(r[Y]===true||g[Y]===i){H.documentReady=true;if(H.scriptsLoaded){H.scriptsLoaded()}return}else{if(r[Y]==i){r[Y]=new Array()}r[Y].push(H);return}}R++;if(R<S.length){Q()}O++;if(O===S.length&&P){P()}}};Q()};if(!L.scripts){J(L)}else{J(L.scripts);h.each(L.deps,function(Q,P){var O=new Array();O.push(Q);J(O,function(){J(P)})})}}var E={jqxCalendar:["jqxdatetimeinput.js","jqxcalendar.js","jqxtooltip.js","globalize.js","jqxbuttons.js"],jqxDateTimeInput:["jqxdatetimeinput.js","jqxcalendar.js","jqxtooltip.js","globalize.js","jqxbuttons.js"],jqxScheduler:["jqxscheduler.js","jqxscheduler.api.js","jqxdate.js","jqxmenu.js","jqxwindow.js","jqxcheckbox.js","jqxnumberinput.js","jqxscrollbar.js","jqxlistbox.js","jqxdropdownlist.js","jqxinput.js","jqxradiobutton.js","jqxdatetimeinput.js","jqxcalendar.js","jqxtooltip.js","globalize.js","jqxbuttons.js"],jqxListBox:["jqxlistbox.js","jqxdata.js","jqxbuttons.js","jqxscrollbar.js"],jqxComboBox:["jqxlistbox.js","jqxdata.js","jqxbuttons.js","jqxscrollbar.js","jqxcombobox.js"],jqxDropDownList:["jqxlistbox.js","jqxdata.js","jqxbuttons.js","jqxscrollbar.js","jqxdropdownlist.js"],jqxGrid:{scripts:["jqxdatetimeinput.js","jqxcalendar.js","jqxmenu.js","jqxtooltip.js","jqxscrollbar.js","jqxbuttons.js","jqxlistbox.js","jqxdropdownlist.js","jqxcombobox.js","jqxcheckbox.js","globalize.js"],deps:{"jqxgrid.js":["jqxgrid.selection.js","jqxgrid.filter.js","jqxgrid.sort.js","jqxgrid.storage.js","jqxgrid.grouping.js","jqxgrid.pager.js","jqxgrid.columnsresize.js","jqxgrid.columnsreorder.js","jqxgrid.edit.js","jqxgrid.export.js","jqxgrid.aggregates.js"],"jqxdata.js":["jqxdata.export.js"]}},jqxDataTable:{scripts:["jqxdatatable.js","jqxdatetimeinput.js","jqxcalendar.js","jqxmenu.js","jqxtooltip.js","jqxscrollbar.js","jqxbuttons.js","jqxlistbox.js","jqxdropdownlist.js","jqxcombobox.js","jqxcheckbox.js","globalize.js","jqxinput.js"],deps:{"jqxdata.js":["jqxdata.export.js"]}},jqxTreeGrid:{scripts:["jqxdatetimeinput.js","jqxcalendar.js","jqxmenu.js","jqxtooltip.js","jqxscrollbar.js","jqxbuttons.js","jqxlistbox.js","jqxdropdownlist.js","jqxcombobox.js","jqxcheckbox.js","globalize.js","jqxinput.js"],deps:{"jqxdatatable.js":["jqxtreegrid.js"],"jqxdata.js":["jqxdata.export.js"]}},jqxDockingLayout:{scripts:["jqxmenu.js"],deps:{"jqxlayout.js":["jqxdockinglayout.js"]}},jqxCheckBox:["jqxcheckbox.js"],jqxRadioButton:["jqxradiobutton.js"],jqxBulletChart:["jqxbulletchart.js","jqxtooltip.js"],jqxRangeSelector:["jqxrangeselector.js"],jqxScrollView:["jqxbuttons.js","jqxscrollview.js"],jqxSwitchButton:["jqxswitchbutton.js"],jqxTouch:["jqxtouch.js"],jqxColorPicker:["jqxcolorpicker.js"],jqxInput:["jqxinput.js"],jqxTextArea:["jqxtextarea.js","jqxbuttons.js","jqxscrollbar.js"],jqxTagCloud:["jqxtagcloud.js"],jqxPopover:["jqxpopover.js"],jqxLayout:["jqxlayout.js","jqxmenu.js","jqxwindow.js"],jqxLoader:["jqxloader.js"],jqxResponsivePanel:["jqxresponsivepanel.js"],jqxEditor:["jqxeditor.js"],jqxNumberInput:["jqxbuttons.js","jqxnumberinput.js"],jqxMaskedInput:["jqxmaskedinput.js"],jqxSlider:["jqxbuttons.js","jqxslider.js"],jqxPanel:["jqxbuttons.js","jqxscrollbar.js","jqxpanel.js"],jqxButton:["jqxbuttons.js"],jqxLinkButton:["jqxbuttons.js"],jqxToggleButton:["jqxbuttons.js"],jqxRepeatButton:["jqxbuttons.js"],jqxDropDownButton:["jqxdropdownbutton.js"],jqxNotification:["jqxnotification.js"],jqxDockPanel:["jqxdockpanel.js"],jqxProgressBar:["jqxprogressbar.js"],jqxListMenu:["jqxbuttons.js","jqxscrollbar.js","jqxpanel.js","jqxlistmenu.js"],jqxTree:["jqxbuttons.js","jqxscrollbar.js","jqxpanel.js","jqxtree.js","jqxdata.js"],jqxMenu:["jqxmenu.js","jqxdata.js"],jqxTabs:["jqxtabs.js","jqxbuttons.js"],jqxDragDrop:["jqxdragdrop.js"],jqxDraw:["jqxdraw.js"],jqxWindow:["jqxwindow.js"],jqxDocking:["jqxwindow.js","jqxdocking.js"],jqxButtonGroup:["jqxbuttons.js","jqxbuttongroup.js"],jqxChart:["jqxdata.js","jqxchart.js"],jqxNavigationBar:["jqxnavigationbar.js"],jqxExpander:["jqxexpander.js"],jqxResponse:["jqxresponse.js"],jqxPasswordInput:["jqxpasswordinput.js"],jqxRating:["jqxrating.js"],jqxSplitter:["jqxbuttons.js","jqxsplitter.js"],jqxValidator:["jqxvalidator.js"],jqxTooltip:["jqxtooltip.js"],jqxGauge:["jqxdraw.js","jqxgauge.js"],jqxLinearGauge:["jqxdraw.js","jqxgauge.js"],jqxTreeMap:["jqxtreemap.js"],jqxRibbon:["jqxbuttons.js","jqxribbon.js"],jqxFormattedInput:["jqxbuttons.js","jqxformattedinput.js"],jqxComplexInput:["jqxbuttons.js","jqxcomplexinput.js"],jqxToolBar:["jqxtoolbar.js"],jqxFileUpload:["jqxfileupload.js"],jqxNavBar:["jqxnavbar.js"]};F(E[G])}h.jqx.angularCompile=function(F,E){if(F.length>0){F=F[0]}var H=q.element(F);var G=H.injector();if(E==i){E=F.innerHTML}G.invoke(["$compile","$rootScope",function(K,I){var J=H.html(E).scope();K(H)(J||I);if(!/^\$(digest|apply)$/.test(I.$$phase)){I.$digest()}else{if(!/^\$(digest|apply)$/.test(J.$$phase)){J.$digest()}}}])};function o(E){var F={};var G=function(V,O,U,J,I){if(h(O).attr("data-jqx-ng-include")){h(O).removeAttr("data-jqx-ng-include");var K=h(O.children()).detach();O=w(O,true,U,E);O.append(K);z(O)(V);var T=true;for(var N in U){if(N.toString().indexOf("jqx")==-1){continue}if(V[U[N]]!=i){T=false}if(U[N].split(".").length>1){var L=U[N].split(".");for(var M=0;M<L.length;M++){if(V[L[M]]!=i){T=false}}}}if(T&&U.jqxSettings){if(!f(U.jqxSettings)(V)){T=false}}if(T){V=V.$parent}}if(h.jqx.AMD){var Q={};d[E]=false;Q.documentReady=false;t(E,Q)}var H=O[0].style.visibility;var P=O[0].style.display;O[0].style.visibility="hidden";O[0].style.display="none";var S=V;var R=v(function(){v.cancel(R);R=i;var Z=function(){var af=J[0];O[0].style.visibility=H;O[0].style.display=P;var ag=n(V,O,U,E,S);var aj=E.toLowerCase();var ai=E.match(/(input|list|radio|checkbox|combobox|rating|slider|scrollbar|progress|range|editor|picker|range|gauge|textarea|calendar|switch|button)/ig);var ah={element:O[0],name:E,instance:h(O).data().jqxWidget,id:O[0].id,scope:V};var ab=function(){V.$emit(E+"Created",ah);if(U.jqxSettings&&f(U.jqxSettings)(V).created){C(function(){var ak=f(U.jqxSettings)(V).created;ak(ah)})}if(U.jqxCreated){C(function(){var ak=f(U.jqxCreated)(V);ak(ah)})}};if(E==="jqxGrid"||E==="jqxDataTable"){var ac=0;var ad=v(function(){if(!h(O).data().jqxWidget){v.cancel(ad);ad=i}else{if(h(O).data().jqxWidget.initializedcall||ac==25){v.cancel(ad);ad=i;ab()}}ac++},100)}else{ab()}C(function ae(){if(af){af.$render=function(){var an=af.$viewValue;if(an===i){an=af.$modelValue}if(E==="jqxRadioButton"){if(V.$eval(h(O).attr("value"))==af.$viewValue){h(O).val(true)}else{if(V.$eval(h(O).attr("value"))=="true"&&af.$viewValue==true){h(O).val(true)}else{h(O).val(false)}}return}else{if(E==="jqxCheckBox"){if(V.$eval(h(O).attr("ng-true-value"))==af.$viewValue){h(O).val(true)}if(V.$eval(h(O).attr("ng-false-value"))==af.$viewValue){h(O).val(false)}else{h(O).val(af.$viewValue)}return}}if(an!=h(O).val()){C(function(){h(O).val(an)})}};if(E==="jqxRadioButton"){if(V.$eval(h(O).attr("value"))==af.$viewValue){h(O).val(true)}else{if(V.$eval(h(O).attr("value"))=="true"&&af.$viewValue==true){h(O).val(true)}else{h(O).val(false)}}}else{if(E==="jqxCheckBox"){if(V.$eval(h(O).attr("ng-true-value"))==af.$viewValue){h(O).val(true)}if(V.$eval(h(O).attr("ng-false-value"))==af.$viewValue){h(O).val(false)}else{h(O).val(af.$viewValue)}}else{if(E==="jqxDropDownList"||E==="jqxComboBox"||E==="jqxListBox"||E==="jqxInput"||E==="jqxTextArea"){if(U.jqxNgModel!=i){var ak=h(O).data().jqxWidget;if(E!="jqxInput"){if(ak.valueMember){ak.selectItem(af.$viewValue[ak.valueMember])}else{if(ak.displayMember){ak.selectItem(af.$viewValue[ak.displayMember])}else{h(O).val(af.$viewValue)}}}else{h(O).val(af.$viewValue)}}else{h(O).val(af.$viewValue)}}else{if(E==="jqxDateTimeInput"||E==="jqxCalendar"){if(U.jqxNgModel!=i){var ak=h(O).data().jqxWidget;if(ak.selectionMode=="range"){ak.setRange(af.$viewValue)}else{ak.setDate(af.$viewValue)}}else{h(O).val(af.$viewValue)}}else{if(E=="jqxToggleButton"){var ak=h(O).data().jqxWidget;ak.toggled=true;ak.refresh()}else{h(O).val(af.$viewValue)}}}}}if(ai){var al="keyup change";if(E=="jqxScrollBar"){al="valueChanged"}if(E=="jqxToggleButton"){al="keyup click"}if(E=="jqxInput"){al="keyup change select"}var am;h(ag.host).on(al,function(ao){var an=ao.args;if(am){C.cancel(am)}am=C(function(){if(E==="jqxRadioButton"){if(an&&an.type!="api"){af.$setViewValue(V.$eval(h(O).attr("value")))}}else{if(E==="jqxCheckBox"){if(h(O).attr("ng-true-value")!=i&&an.checked){af.$setViewValue(h(O).attr("ng-true-value"))}else{if(h(O).attr("ng-false-value")!=i&&!an.checked){af.$setViewValue(h(O).attr("ng-false-value"))}else{af.$setViewValue(h(O).val())}}}else{if(E==="jqxDropDownList"||E==="jqxComboBox"||E==="jqxListBox"||E==="jqxInput"||E==="jqxTextArea"){var aq=h(O).val();if(U.jqxNgModel!=i){var ap=h(O).data().jqxWidget;if(ap.getSelectedItem){aq=ap.getSelectedItem();if(aq.originalItem){aq=aq.originalItem}}if(E==="jqxInput"||E==="jqxTextArea"){aq=ap.selectedItem}af.$setViewValue(aq)}else{af.$setViewValue(aq)}}else{if(E==="jqxDateTimeInput"||E==="jqxCalendar"){if(U.jqxNgModel!=i){var ap=h(O).data().jqxWidget;if(ap.selectionMode=="range"){af.$setViewValue(ap.getRange())}else{af.$setViewValue(ap.getDate())}}else{if(h.type(af.$viewValue)==="date"){var ap=h(O).data().jqxWidget;if(ap.selectionMode=="range"){af.$setViewValue(ap.getRange())}else{af.$setViewValue(ap.getDate())}}else{af.$setViewValue(h(O).val())}}}else{if(E=="jqxToggleButton"){var ap=h(O).data().jqxWidget;af.$setViewValue(ap.toggled)}else{af.$setViewValue(h(O).val())}}}}}V.$emit(E+"ModelChange",af.$viewValue)})})}}})};if(U.ngShow!==i&&U.jqxCreate===i){var Y=V.$watch(U.ngShow,function(ac,ab){if(ac){Z();Y()}});return}var aa=function(){if(U.jqxCreate!=null||U.jqxCreate!=null){if(U.jqxCreate===true||(U.jqxCreate!==null&&h.type(U.jqxCreate)=="object")){Z()}else{var ab=V.$watch(U.jqxCreate,function(ad,ac){if(typeof ad=="number"){C(Z,ad);ab()}else{if(ad){Z();ab()}}})}}else{Z()}};if(h.jqx.AMD){var X=function(){var ab=true;for(var ac in d){if(!d[ac]){ab=false;break}}if(ab){if(!x){V.$emit("jQWidgetsScriptsLoaded");x=true}for(var ac in d){h.each(d[ac],function(){this()});d[ac]=new Array()}}};if(Q.documentReady){var W={element:O[0],name:E,scope:V};V.$emit(E+"ScriptsLoaded",W);if(!d[E]){d[E]=new Array()}d[E].push(aa);X()}else{Q.scriptsLoaded=function(){var ab={element:O[0],name:E,scope:V};V.$emit(E+"ScriptsLoaded",ab);if(!d[E]){d[E]=new Array()}d[E].push(aa);X()}}}else{aa()}})};b.directive(E,["$timeout","$interval","$parse","$compile","$log",function(M,I,N,L,K){C=M;v=I;f=N;z=L;s=K;var J={};var H;return{restrict:"ACE",require:["?ngModel"],scope:false,template:function(P,O){w(P,false,O,E);H=this.scope},controller:["$scope","$attrs","$element","$transclude",function(R,O,Q,P){}],compile:function(P,O,Q){return{pre:function(V,T,R,U,S){},post:function(V,T,R,U,S){G(V,T,R,U,S)}}},link:G}}])}o("jqxBulletChart");o("jqxButtonGroup");o("jqxButton");o("jqxRepeatButton");o("jqxToggleButton");o("jqxLinkButton");o("jqxCalendar");o("jqxChart");o("jqxCheckBox");o("jqxComplexInput");o("jqxColorPicker");o("jqxComboBox");o("jqxDataTable");o("jqxDateTimeInput");o("jqxDocking");o("jqxDockPanel");o("jqxDragDrop");o("jqxDraw");o("jqxDropDownButton");o("jqxDropDownList");o("jqxEditor");o("jqxExpander");o("jqxFormattedInput");o("jqxFileUpload");o("jqxGauge");o("jqxLinearGauge");o("jqxGrid");o("jqxInput");o("jqxListBox");o("jqxListMenu");o("jqxMaskedInput");o("jqxMenu");o("jqxNavigationBar");o("jqxNavBar");o("jqxNotification");o("jqxNumberInput");o("jqxPanel");o("jqxPasswordInput");o("jqxProgressBar");o("jqxRadioButton");o("jqxRangeSelector");o("jqxRating");o("jqxRibbon");o("jqxScrollBar");o("jqxScrollView");o("jqxSlider");o("jqxSplitter");o("jqxSwitchButton");o("jqxTabs");o("jqxToolBar");o("jqxTooltip");o("jqxTouch");o("jqxTree");o("jqxTreeGrid");o("jqxTreeMap");o("jqxValidator");o("jqxWindow");o("jqxTagCloud");o("jqxPopover");o("jqxScheduler");o("jqxTextArea");o("jqxLayout");o("jqxDockingLayout");o("jqxResponsivePanel");o("jqxLoader")})(jqxBaseFramework,window.angular);(function(a){a.jqx.jqxWidget("jqxToolBar","",{});a.extend(a.jqx._jqxToolBar.prototype,{defineInstance:function(){var b={width:"100%",minWidth:null,maxWidth:null,height:35,tools:"",initTools:null,minimizeWidth:200,disabled:false,rtl:false,events:["open","close"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._toolToWidgetMapping={button:"jqxButton",toggleButton:"jqxToggleButton",dropdownlist:"jqxDropDownList",combobox:"jqxComboBox",input:"jqxInput"};b._toolChanges=new Array();b.render()},render:function(){var c=this,b=true;c.host.html("");c.host.removeClass(c.toThemeProperty("jqx-widget jqx-fill-state-normal jqx-rc-all jqx-toolbar jqx-fill-state-disabled"));c._setSize();c._destroyTools(false);if(c._toolWidgets){b=false;c._minimizeButton.add(c._minimizePopup).remove()}c._appendMinimizeButton();c._addClasses();c._createTools();if(c.disabled===true){c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"));c._disableTools(true)}c._minimize();c._removeHandlers();c._addHandlers();if(b===false&&c._toolChanges.length>0){c._restoreChanges()}},refresh:function(b){if(b!==true){this.render()}},getTools:function(){return this._toolWidgets},destroy:function(){var b=this;b._removeHandlers();b._destroyTools();b.host.remove()},_destroyTools:function(d){var c=this;if(d!==false){d=true}if(c._toolWidgets){for(var b=c._toolWidgets.length-1;b>=0;b--){c._destroyTool(b,d)}}},_destroyTool:function(c,g){var e=this;c=parseInt(c,10);var b=e._toolWidgets[c];if(b){var d=b.type;var f=e._getBothTools(b);if(d!=="custom"){f[e._toolToWidgetMapping[d]]("destroy")}else{f.remove()}if(b.menuSeparator){b.menuSeparator.remove()}e._toolWidgets.splice(c,1);if(e._checkType(d)){e._refreshButtonGroups()}e._minimize();if(g!==false){e._toolChanges.push({action:"destroyTool",index:c})}}},destroyTool:function(b){this._destroyTool(b,true)},addTool:function(j,g,f,b){var h=this,i,d,c,e;if(g==="first"){i=0}else{i=h._toolWidgets.length}if(h._toolWidgets[i-1]){d=h._toolWidgets[i-1].tool;if(h._toolWidgets[i-1].separatorAfterWidget){c="|"}else{c=h._toolWidgets[i-1].type}}if(f===true){e="|"}else{if(h._toolWidgets[i+1]){e=h._toolWidgets[i+1].type}}var k=h._initializeTool(i,j,d,c,e,b,false);if(g==="first"){h._toolWidgets.splice(0,0,k)}else{h._toolWidgets.push(k)}h._removeHandlers();h._addHandlers();if(h._checkType(j)){h._refreshButtonGroups()}if(g!=="first"&&h._minimizedTools>0){h._minimizeTool(true)}else{h._minimize()}h._toolChanges.push({action:"addTool",type:j,position:g,separator:f,initCallback:b})},_disableTools:function(b){var d=this;for(var c=0;c<d._toolWidgets.length;c++){d.disableTool(c,b)}},disableTool:function(d,c){var f=this;d=parseInt(d,10);var b=f._toolWidgets[d];if(b){var e=b.type;var g=f._getBothTools(b);if(e!=="custom"){g[f._toolToWidgetMapping[e]]({disabled:c})}f._toolChanges.push({action:"disableTool",index:d,disable:c})}},propertyChangedHandler:function(c,n,b,m){if(n!=="initTools"){if(m!==b){switch(n){case"theme":if(b!==""){c.host.removeClass("jqx-widget-"+b+" jqx-fill-state-normal-"+b+" jqx-rc-all-"+b+" jqx-toolbar-"+b);c._minimizePopup.removeClass("jqx-popup-"+b+" jqx-fill-state-normal-"+b+" jqx-rc-b-"+b+" jqx-toolbar-minimized-popup-"+b)}c._addClasses();c._minimizePopup.addClass(c.toThemeProperty("jqx-popup jqx-fill-state-normal jqx-rc-b jqx-toolbar-minimized-popup"));for(var e=0;e<c._toolWidgets.length;e++){var f=c._toolWidgets[e];if(f.type!=="custom"){var k=c._getBothTools(f);if(f.menuTool){if(f.menuSeparator){f.menuSeparator.removeClass("jqx-fill-state-pressed-"+b+" jqx-toolbar-minimized-popup-separator-"+b);f.menuSeparator.addClass(c.toThemeProperty("jqx-fill-state-pressed jqx-toolbar-minimized-popup-separator"))}}k[c._toolToWidgetMapping[c._toolWidgets[e].type]]({theme:m})}}a.jqx.utilities.setTheme(b,m,c.host);break;case"width":c.host.width(m);c._minimize();break;case"minWidth":c.host.css("min-width",m);c._minimize();break;case"maxWidth":c.host.css("max-width",m);c._minimize();break;case"height":c.host.height(m);for(var d=0;d<c._toolWidgets.length;d++){var o=c._toolWidgets[d];var h=o.type;var g=c._getBothTools(o);if(h==="button"||h==="toggleButton"||h==="repeatButton"||h==="linkButton"){g.css("height",m)}else{if(h==="dropdownlist"||h==="combobox"||h==="input"){g[c._toolToWidgetMapping[h]]({height:m-2})}}}break;case"tools":c._removeHandlers();c._destroyTools();c._createTools();c._addHandlers();c._minimize();break;case"minimizeWidth":if(c._isOpen===true){var l=parseInt(c._minimizePopup.css("left"),10)-(m-b);c._minimizePopup.css({width:m+"px",left:l+"px"})}else{c._minimizePopup.width(m)}break;case"rtl":c.render();break;case"disabled":if(m===true){c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"));c._disableTools(true)}else{c.host.removeClass(c.toThemeProperty("jqx-fill-state-disabled"));c._disableTools(false)}break}}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget jqx-fill-state-normal jqx-rc-all jqx-toolbar"));if(b.rtl===true){b.host.addClass(b.toThemeProperty("jqx-toolbar-rtl"))}},_checkType:function(b){if(b==="button"||b==="toggleButton"||b==="repeatButton"||b==="linkButton"){return true}return false},_refreshButtonGroups:function(){var c=this;function b(g,f,h,e,i,d){g[f+"Class"](c.toThemeProperty("jqx-toolbar-tool-inner-button"));g[h+"Class"](c.toThemeProperty("jqx-rc-all"));g[e+"Class"](c.toThemeProperty("jqx-rc-l"));g[i+"Class"](c.toThemeProperty("jqx-rc-r"));g.css("border-left-width",d+"px")}a.each(c._toolWidgets,function(e,i){if(c._checkType(i.type)){var g,f;var k=c._getBothTools(i);if(e>0){if(c._toolWidgets[e-1].separatorAfterWidget){g="|"}else{g=c._toolWidgets[e-1]}}if(i.separatorAfterWidget){f="|"}else{if(e<c._toolWidgets.length-1){f=c._toolWidgets[e+1]}}var d=g&&c._checkType(g.type);var j=i.separatorAfterWidget===false&&f&&c._checkType(f.type);if(!d&&!j){b(k,"remove","add","remove","remove",1)}else{if(!d&&j){b(k,"remove","remove","add","remove",1)}else{if(d&&j){b(k,"add","remove","remove","remove",0)}else{if(d&&!j){b(k,"remove","remove","remove","add",0)}}}}var h=c.rtl?"rtl":"ltr";if(!j){if(i.separatorAfterWidget){k.removeClass(c.toThemeProperty("jqx-toolbar-tool-no-separator-"+h));k.addClass(c.toThemeProperty("jqx-toolbar-tool-separator-"+h))}else{k.removeClass(c.toThemeProperty("jqx-toolbar-tool-separator-"+h));k.addClass(c.toThemeProperty("jqx-toolbar-tool-no-separator-"+h))}}else{k.removeClass(c.toThemeProperty("jqx-toolbar-tool-separator-"+h));k.removeClass(c.toThemeProperty("jqx-toolbar-tool-no-separator-"+h))}}})},_addHandlers:function(){var b=this;var c=b.element.id;a.jqx.utilities.resize(b.host,function(){if(a.jqx.browser.msie&&a.jqx.browser.version<8&&typeof b.width==="string"&&b.width.charAt(b.width.length-1)==="%"){var e=b.host.parent().width();var f=e*parseFloat(b.width.replace("%",""))/100;var d=parseInt(b.host.css("border-left-width"),10)+parseInt(b.host.css("border-right-width"),10)+parseInt(b.host.css("padding-left"),10)+parseInt(b.host.css("padding-right"),10);b.host.css("width",f-d-1)}if(b._isOpen===true){b._minimizePopup.hide();b._isOpen=false;b._raiseEvent("1")}b._minimize()});b.addHandler(a(document),"click.jqxToolbar"+c,function(){if(b._isOpen===true){b._openMinimizePopup()}});b.addHandler(b._minimizeButton,"click.jqxToolbar"+c,function(d){d.stopPropagation();b._openMinimizePopup()});b.addHandler(a(".jqx-popup"),"click.jqxToolbar"+c,function(d){if(!a(d.target).hasClass("jqx-window-content")){d.stopPropagation()}})},_removeHandlers:function(){var b=this;var c=b.element.id;b.removeHandler(a(document),"click.jqxToolbar"+c);b.removeHandler(b._minimizeButton,"click.jqxToolbar"+c);b.removeHandler(a(".jqx-popup"),"click.jqxToolbar"+c)},_setSize:function(){var b=this;b.host.width(b.width);b.host.height(b.height);if(b.minWidth){b.host.css("min-width",b.minWidth)}if(b.maxWidth){b.host.css("max-width",b.maxWidth)}},_createTools:function(){var c=this;var d=c.tools.split(" ");var e=a.trim(c.tools.replace(/\|/g,""));e=e.replace(/\s+/g," ");e=e.split(" ");c._toolWidgets=new Array();var b=0;a.each(e,function(j,m){if(e[j]!==d[j+b]){b++}var l=j+b;var h;if(c._toolWidgets[j-1]){h=c._toolWidgets[j-1].tool}var k=d[l];var g=d[l-1];var i=d[l+1];var f=c.initTools;var n=c._initializeTool(j,k,h,g,i,f,true);c._toolWidgets.push(n)});c._minimizePopup.css({display:"none",visibility:"visible"})},_initializeTool:function(k,h,d,p,q,f,n){var m=this,e,o;var g=m._initializeWidget(h,e,o,d);e=g.tool;o=g.menuTool;var c=true;e.addClass(m.toThemeProperty("jqx-toolbar-tool"));if(m.rtl===true){e.addClass(m.toThemeProperty("jqx-toolbar-tool-rtl"))}if(m.initTools){var t;if(n===true){t=m.initTools(h,k,e,false)}else{t=f(h,e,false)}if(!t||(t.minimizable!==false&&t.menuTool!==false)){if(n===true){m.initTools(h,k,o,true)}else{f(h,o,true)}o.addClass(m.toThemeProperty("jqx-toolbar-tool-minimized"))}else{if(h!=="custom"){o[m._toolToWidgetMapping[h]]("destroy")}else{o.remove()}if(t.minimizable===false){c=false}o=false}}var b=false;var u=e;if(o){u=u.add(o);o.css("display","none")}var l;var j=m.rtl?"rtl":"ltr";var s=["button","toggleButton","repeatButton","linkButton"];var r={button:"jqxButton",toggleButton:"jqxToggleButton",repeatButton:"jqxRepeatButton",linkButton:"jqxRepeatButton"};if(q==="|"){b=true;u.addClass(m.toThemeProperty("jqx-toolbar-tool-separator-"+j));if(o){l=a('<div class="'+m.toThemeProperty("jqx-fill-state-pressed jqx-toolbar-minimized-popup-separator")+'"></div>');m._minimizePopup.append(l)}}else{if(s.indexOf(h)===-1||(s.indexOf(h)!==-1&&s.indexOf(q)===-1)){u.addClass(m.toThemeProperty("jqx-toolbar-tool-no-separator-"+j))}}if(s.indexOf(p)===-1&&s.indexOf(h)!==-1&&s.indexOf(q)!==-1){if(m.rtl===false){u[r[h]]({roundedCorners:"left"})}else{u[r[h]]({roundedCorners:"right"});u.css("border-left-width",0)}}else{if(s.indexOf(p)!==-1&&s.indexOf(h)!==-1&&s.indexOf(q)!==-1){u.addClass(m.toThemeProperty("jqx-toolbar-tool-inner-button"));u.css("border-left-width",0)}else{if(s.indexOf(p)!==-1&&s.indexOf(h)!==-1&&s.indexOf(q)===-1){if(m.rtl===false){u[r[h]]({roundedCorners:"right"});u.css("border-left-width",0)}else{u[r[h]]({roundedCorners:"left"})}}}}if(a.jqx.browser.msie&&a.jqx.browser.version<8&&h==="combobox"){u.find(".jqx-combobox-arrow-normal").width(18)}var i={type:h,tool:e,separatorAfterWidget:b,minimizable:c,minimized:false,menuTool:o,menuSeparator:l};return i},_initializeWidget:function(f,e,d,h){var g=this;function c(){d=e.clone();if(h){h.after(e);g._minimizePopup.append(d)}else{g.host.prepend(e);g._minimizePopup.prepend(d)}}if(f!=="custom"&&g.host[g._toolToWidgetMapping[f]]===undefined){var b=g._toolToWidgetMapping[f].toLowerCase();throw new Error("jqxToolBar: Missing reference to "+b+".js")}switch(f){case"button":case"toggleButton":e=a("<button></button>");c();e.add(d)[g._toolToWidgetMapping[f]]({theme:g.theme,height:g.host.height(),disabled:g.disabled,rtl:g.rtl});break;case"dropdownlist":case"combobox":e=a("<div></div>");c();e.add(d)[g._toolToWidgetMapping[f]]({theme:g.theme,autoDropDownHeight:true,height:g.host.height()-2,disabled:g.disabled,rtl:g.rtl});break;case"input":e=a('<input type="text" />');c();e.add(d).jqxInput({theme:g.theme,height:g.host.height()-2,disabled:g.disabled,rtl:g.rtl});break;case"custom":e=a("<div></div>");c();break}return{tool:e,menuTool:d}},_appendMinimizeButton:function(){var b=this;b._minimizedTools=0;b._minimizeButton=a('<div class="'+b.toThemeProperty("jqx-menu-minimized-button jqx-toolbar-minimized-button")+'"></div>');b._minimizePopup=a('<div id="'+b.element.id+'Popup" class="'+b.toThemeProperty("jqx-popup jqx-fill-state-normal jqx-rc-b jqx-toolbar-minimized-popup")+'"></div>');if(b.rtl===true){b._minimizeButton.addClass(b.toThemeProperty("jqx-toolbar-minimized-button-rtl"));b._minimizePopup.addClass(b.toThemeProperty("jqx-toolbar-minimized-popup-rtl"))}b.host.append(b._minimizeButton);a("body").append(b._minimizePopup);b._isOpen=false;b._minimizePopup.width(b.minimizeWidth)},_openMinimizePopup:function(){var c=this;if(c._isOpen===false){var b=c.host.offset();var e=b.left;if(c.rtl===false){e+=c.host.outerWidth()-c._minimizePopup.outerWidth()}var d=b.top+c.host.outerHeight()-1;c._minimizePopup.css({left:e,top:d});c._minimizePopup.slideDown("fast");c._isOpen=true;c._raiseEvent("0")}else{c._minimizePopup.slideUp("fast");c._isOpen=false;c._raiseEvent("1")}},_minimize:function(){var g=this,e=0;if(g._minimizedTools>0){e=g._minimizeButton.outerWidth()+parseInt(g._minimizeButton.css("margin-left"),10)}var c=g.host.width()-parseInt(g.host.css("padding-left"),10)-parseInt(g.host.css("padding-right"),10)-e;if(c<0){return}var b=0;var d;for(var f=0;f<g._toolWidgets.length;f++){if(g._toolWidgets[f].minimized===false){var h=g._toolWidgets[f].tool.outerWidth(true);b+=h}else{if(d===undefined){d=g._toolWidgets[f].tool.outerWidth(true)}}}if(b>c){g._minimizeTool(true);g._minimize()}else{if(d!==undefined&&(b+d)<c){g._minimizeTool(false);g._minimize()}}},_minimizeTool:function(g){var e=this,b,f;if(g===true){for(var d=e._toolWidgets.length-1;d>=0;d--){b=e._toolWidgets[d];if(b.minimizable===false){continue}if(b.minimized===false){f=e._getToolValue(b.tool,b.type);b.tool[0].style.display="none";if(b.menuTool){b.menuTool.show();e._setToolValue(f,b.menuTool,b.type)}if(b.menuSeparator){b.menuSeparator.show()}e._toolWidgets[d].minimized=true;e._minimizedTools++;if(e._minimizedTools===1){e._minimizeButton.show()}break}}}else{for(var c=0;c<e._toolWidgets.length;c++){b=e._toolWidgets[c];if(b.minimized===true){if(b.menuTool){f=e._getToolValue(b.menuTool,b.type);b.menuTool.hide()}if(b.menuSeparator){b.menuSeparator.hide()}b.tool.show();if(b.menuTool){e._setToolValue(f,b.tool,b.type)}e._toolWidgets[c].minimized=false;e._minimizedTools--;if(e._minimizedTools===0){e._minimizeButton.hide()}break}}}},_getToolValue:function(b,c){var d;switch(c){case"button":case"custom":d=undefined;break;case"toggleButton":var e=b.hasClass("jqx-fill-state-pressed");d={text:b.text(),toggled:e};break;case"dropdownlist":case"combobox":d=b[this._toolToWidgetMapping[c]]("getSelectedIndex");break;case"input":d=b.val();break}return d},_setToolValue:function(d,b,c){if(d!==undefined){switch(c){case"button":case"custom":break;case"toggleButton":b.text(d.text);var e=b.hasClass("jqx-fill-state-pressed");if(e!==d.toggled){b.jqxToggleButton("toggle")}break;case"dropdownlist":case"combobox":d=b[this._toolToWidgetMapping[c]]("selectIndex",d);break;case"input":b.val(d);break}}},_restoreChanges:function(){var b=this;a.each(b._toolChanges,function(c,d){if(d.action==="addTool"){b.addTool(d.type,d.position,d.separator,d.initCallback)}else{if(d.action==="destroyTool"){b._destroyTool(d.index)}else{if(d.action==="disableTool"){b.disableTool(d.index,d.disable)}}}})},_getBothTools:function(b){var c=b.tool;if(b.menuTool){c=c.add(b.menuTool)}return c}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxComplexInput","",{});a.extend(a.jqx._jqxComplexInput.prototype,{defineInstance:function(){var b={width:null,height:null,decimalNotation:"default",value:"",spinButtons:false,spinButtonsStep:1,placeHolder:"",roundedCorners:true,disabled:false,rtl:false,events:["change"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._firefox=a.jqx.browser.browser==="mozilla";b._currentNumber={};b._allowedCharacters=new RegExp(/([\+\-\.0-9i])/i);b.render()},render:function(){var d=this;if(d.element.nodeName.toUpperCase()==="DIV"){d.baseHost=d.host;d.host=d.baseHost.children("input");d.element=d.host[0]}if(d.spinButtons===true){if(!d.baseHost){throw new Error("jqxComplexInput: Invalid HTML structure. Please initialize the complex input from a div with an input and another div inside.")}d._appendSpinButtons()}d._addClasses();d._setSize();d._removeHandlers();d._addHandlers();if(d.decimalNotation==="exponential"&&d.value.toLowerCase().indexOf("e")!==-1){var g=d._exponentialToDecimal(d.value);var f=g.realPart;var c=g.imaginaryPart;var b=c<0?"-":"+";var e=f+" "+b+" "+Math.abs(c)+"i";d._currentNumber={value:e,realPart:f,imaginaryPart:c}}else{d._currentNumber={value:d.value,realPart:d._getReal(d.value),imaginaryPart:d._getImaginary(d.value)}}if(d.decimalNotation==="default"){d.element.value=d.value}else{d._setNotation()}d._refreshPlaceHolder()},refresh:function(b){if(b!==true){this.render()}},destroy:function(){var b=this;b._removeHandlers();b.host.destroy()},val:function(e){var d=this;if(typeof e==="string"||typeof e==="object"&&a.isEmptyObject(e)===false){var h,c;if(typeof e==="string"){e=e.toLowerCase();if(e.indexOf("e")===-1){h=d._getReal(e);c=d._getImaginary(e)}else{var g=d._exponentialToDecimal(e);h=g.realPart*1;c=g.imaginaryPart*1}}else{if(typeof e==="object"&&a.isEmptyObject(e)===false){h=e.real;c=e.imaginary}}var b=c>=0?"+":"-";var f=h+" "+b+" "+Math.abs(c)+"i";if(f!==d._currentNumber.value){d.element.value=f;d._onChange(d.value);if(d.decimalNotation!=="default"){d._setNotation()}}}else{return d.element.value}},getReal:function(){return this._currentNumber.realPart},_getReal:function(f){if(!f||(typeof f==="object"&&a.isEmptyObject(f)===true)){f=this.element.value}var c=a.trim(f),e="";if((f.match(/i/g)||[]).length===0){return parseFloat(c)}if(f.charAt(0)==="+"){c=c.slice(1,f.length)}else{if(f.charAt(0)==="-"){c=c.slice(1,f.length);e="-"}}function g(h){c=c.slice(0,h);c=a.trim(c);return parseFloat(e+""+c)}var b=c.indexOf("+");if(b!==-1){return g(b)}var d=c.indexOf("-");if(d!==-1){return g(d)}return 0},getImaginary:function(){return this._currentNumber.imaginaryPart},_getImaginary:function(f){if(!f||(typeof f==="object"&&a.isEmptyObject(f)===true)){f=this.element.value}if((f.match(/i/g)||[]).length===0){return 0}var e=a.trim(f),d="";if(e.charAt(0)==="-"||e.charAt(0)==="+"){d=e.charAt(0)==="-"?"-":"+";e=a.trim(e.slice(1,f.length))}function g(i,h){e=e.slice(i+1,e.indexOf("i"));e=a.trim(e);if(e===""){e=1}return parseFloat(h+""+e)}var b=e.indexOf("+");if(b!==-1){return g(b,"+")}var c=e.indexOf("-");if(c!==-1){return g(c,"-")}e=d+""+e.slice(0,e.indexOf("i"));if(e===""||e==="+"){return 1}else{if(e==="-"){return -1}else{return parseFloat(e)}}},getDecimalNotation:function(f,c){var e=this;function d(k){var j=k.indexOf("e");var i=k.slice(j+1);var h=k.slice(0,j+1);h=h.replace("e","×10");h+=e._toSuperScript(i);h=h.replace("+","");return h}function b(n){var m=n.indexOf("e");var l=n.slice(m+1);var j=n.slice(0,m);var k=parseInt(l,10)%3;j=j*Math.pow(10,k);var i=n.slice(0,m).length-k-2;if(i>=0){j=j.toFixed(i)}var h=j+"×10"+e._toSuperScript((parseInt(l,10)-k).toString());return h}if(f==="real"){f=e._currentNumber.realPart}else{if(f==="imaginary"){f=e._currentNumber.imaginaryPart}}var g=f.toExponential();if(c==="scientific"){return d(g)}else{if(c==="engineering"){return b(g)}else{return g}}},propertyChangedHandler:function(e,i,d,g){if(g!==d){switch(i){case"width":case"height":e._setSize();break;case"decimalNotation":if(g==="default"){e.element.value=e._currentNumber.value}else{e._setNotation()}break;case"value":e.element.value=g;e._onChange(d);break;case"spinButtons":var k=function(){e.host.removeClass(e.toThemeProperty("jqx-rc-all"));if(e.rtl===false){e.host.addClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-r"))}else{e.host.addClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-l"))}};if(e._spinButtonsContainer){var j=e.host.width();var h=e._spinButtonsContainer.outerWidth();if(g===false){e.host.width(j+h);e._spinButtonsContainer.hide();e.host.addClass(e.toThemeProperty("jqx-rc-all"))}else{e.host.width(j-h);e._spinButtonsContainer.show();k()}}else{if(g===true){var l=a("<div></div>");if(e.baseHost){e.host.after(l);e.render()}else{var c=e.element.id;e.host.removeAttr("id");e.host.wrap('<div id="'+c+'" style="display: inline-block;"></div>');var b=a("#"+c);b.append(l);var f=e.host.data();f.jqxComplexInput.host=b;f.jqxComplexInput.element=b[0];e.baseHost=b;e.baseHost.data(f);e.render()}k()}}break;case"placeHolder":e._refreshPlaceHolder(d);break;case"roundedCorners":if(e._spinButtonsContainer){if(g===true){if(e.rtl===false){e.host.addClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-r"))}else{e.host.addClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-l"))}}else{if(e.rtl===false){e.host.removeClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-r"))}else{e.host.removeClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-l"))}}}else{if(g===true){e.host.addClass(e.toThemeProperty("jqx-rc-all"))}else{e.host.removeClass(e.toThemeProperty("jqx-rc-all"))}}break;case"disabled":if(g===true){e.host.attr("disabled",true);e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled jqx-input-disabled"));if(e._spinButtonsContainer){e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}}else{e.host.removeAttr("disabled");e.host.removeClass(e.toThemeProperty("jqx-fill-state-disabled jqx-input-disabled"));if(e._spinButtonsContainer){e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-fill-state-disabled"))}}break;case"rtl":if(e._spinButtonsContainer){if(g===true){e.host.addClass(e.toThemeProperty("jqx-complex-input-child-rtl"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-complex-input-spin-buttons-container-ltr"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-complex-input-child-rtl jqx-complex-input-spin-buttons-container-rtl"));if(e.roundedCorners===true){e.host.removeClass(e.toThemeProperty("jqx-rc-l"));e.host.addClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-l"))}}else{e.host.removeClass(e.toThemeProperty("jqx-complex-input-child-rtl"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-complex-input-child-rtl jqx-complex-input-spin-buttons-container-rtl"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-complex-input-spin-buttons-container-ltr"));if(e.roundedCorners===true){e.host.removeClass(e.toThemeProperty("jqx-rc-r"));e.host.addClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-r"))}}}break;case"theme":a.jqx.utilities.setTheme(d,g,e.host);break}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_appendSpinButtons:function(){var b=this;b._spinButtonsContainer=a(b.baseHost.children("div"));b._spinButtonsContainer.attr("unselectable","on");b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-fill-state-normal jqx-complex-input-child jqx-formatted-input-spin-buttons-container jqx-complex-input-spin-buttons-container"));if(b.rtl===false){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-complex-input-spin-buttons-container-ltr"))}else{b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-complex-input-child-rtl jqx-complex-input-spin-buttons-container-rtl"))}var c='<div unselectable="on" class="'+b.toThemeProperty("jqx-fill-state-normal jqx-formatted-input-spin-button")+'"><div class="'+b.toThemeProperty("jqx-input-icon")+'"></div></div>';b._upbutton=a(c);b._spinButtonsContainer.append(b._upbutton);b._downbutton=a(c);b._spinButtonsContainer.append(b._downbutton);b._upArrow=b._upbutton.find("div");b._upArrow.addClass(b.toThemeProperty("jqx-icon-arrow-up"));b._downArrow=b._downbutton.find("div");b._downArrow.addClass(b.toThemeProperty("jqx-icon-arrow-down"));b._upArrow.add(b._downArrow).attr("unselectable","on")},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget jqx-input jqx-complex-input jqx-widget-content"));if(b.baseHost){b.baseHost.addClass(b.toThemeProperty("jqx-widget jqx-complex-input-parent"));b.host.addClass(b.toThemeProperty("jqx-complex-input-child"))}if(b.roundedCorners===true){if(b._spinButtonsContainer){if(b.rtl===false){b.host.addClass(b.toThemeProperty("jqx-rc-l"));b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-rc-r"))}else{b.host.addClass(b.toThemeProperty("jqx-rc-r"));b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-rc-l"))}}else{b.host.addClass(b.toThemeProperty("jqx-rc-all"))}}if(b.disabled===true){b.host.attr("disabled",true);b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled jqx-input-disabled"));if(b._spinButtonsContainer){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}}if(b.rtl===true){b.host.add(b._spinButtonsContainer).addClass(b.toThemeProperty("jqx-complex-input-child-rtl"))}},_refreshPlaceHolder:function(c){var b=this;if("placeholder" in b.element){b.host.attr("placeHolder",b.placeHolder)}else{if(b.element.value===""||b.element.value===c){b.element.value=b.placeHolder}}},_setSize:function(){var d=this;function b(){var h=d.baseHost.height();var e=parseInt(d.host.css("border-left-width"),10)+parseInt(d.host.css("border-right-width"),10)+parseInt(d.host.css("padding-left"),10)+parseInt(d.host.css("padding-right"),10);var f=0;if(a.jqx.browser.msie&&a.jqx.browser.version<8){f=e;d.host.height(d.baseHost.height()-(parseInt(d.host.css("border-top-width"),10)+parseInt(d.host.css("border-bottom-width"),10)+parseInt(d.host.css("padding-top"),10)+parseInt(d.host.css("padding-bottom"),10))*2)}if(d._spinButtonsContainer){var g=typeof d.width==="string"&&d.width.charAt(d.width.length-1)==="%"?1:0;d.host.width(d.baseHost.width()-e-d._spinButtonsContainer.outerWidth()-f-g);if(a.jqx.browser.msie&&a.jqx.browser.version<8){d._spinButtonsContainer.height(h-(parseInt(d._spinButtonsContainer.css("border-top-width"),10)+parseInt(d._spinButtonsContainer.css("border-bottom-width"),10)+parseInt(d._spinButtonsContainer.css("padding-top"),10)+parseInt(d._spinButtonsContainer.css("padding-bottom"),10))*2)}}else{d.host.width(d.baseHost.width()-e-f)}}if(d.baseHost){d.baseHost.width(d.width);d.baseHost.height(d.height);b()}else{d.host.width(d.width);d.host.height(d.height)}if(a.jqx.browser.msie&&a.jqx.browser.version<9){d.host.css("line-height",d.host.height()+"px")}var c=d.baseHost||d.host;a.jqx.utilities.resize(c,function(){b();if((a.jqx.browser.msie&&a.jqx.browser.version<9||!a.jqx.browser.msie)&&typeof d.height==="string"&&d.height.charAt(d.height.length-1)==="%"){d.host.css("line-height",d.host.height()+"px")}})},_addHandlers:function(){var d=this,e;if(d.baseHost){e=d.baseHost[0].id}else{e=d.element.id}var b=[8,9,13,32,35,36,37,38,39,40,46];d.addHandler(d.host,"focus.jqxComplexInput"+e,function(){d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"));if(d._spinButtonsContainer){d._spinButtonsContainer.addClass(d.toThemeProperty("jqx-fill-state-focus"))}if(!("placeholder" in d.element)&&(d.element.value===d.placeHolder)){d.element.value=""}if(d.decimalNotation!=="default"){var f=d._getCaretPosition();d.element.value=d._currentNumber.value;d._setCaretPosition(f)}});d.addHandler(d.host,"blur.jqxComplexInput"+e,function(){d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"));if(d._spinButtonsContainer){d._spinButtonsContainer.removeClass(d.toThemeProperty("jqx-fill-state-focus"))}if(d.element.value!==d.value||(("placeholder" in d.element)||(!("placeholder" in d.element)&&d.element.value===""))){d._onChange(d.value)}if(!("placeholder" in d.element)&&(d.element.value===""||d.element.value===d.placeHolder)){d.element.value=d.placeHolder}if(d.decimalNotation!=="default"){d._setNotation()}});d.addHandler(d.host,"keydown.jqxComplexInput"+e,function(h){var i=!h.charCode?h.which:h.charCode;if(h.ctrlKey===true&&(i===67||i===86||i===88)){return}var g=String.fromCharCode(i);if(i>=96&&i<=105){g=(i-96).toString();i=i-48}if((!d._firefox&&i===187||d._firefox&&i===61)&&h.shiftKey===true){g="+"}else{if((!d._firefox&&i===189||d._firefox&&i===173)&&h.shiftKey===false){g="-"}else{if(i===190&&h.shiftKey===false){g="."}}}var k=d._allowedCharacters.test(g);if(k===true){if(g==="+"||g==="-"){var f=(d.element.value.match(/-/g)||[]).length+(d.element.value.match(/\+/g)||[]).length;if(f>1){return false}}else{if(g==="."){var j=(d.element.value.match(/\./g)||[]).length;if(j>1){return false}}else{if(g.toLowerCase()==="i"){if(d.element.value.indexOf(g.toLowerCase())!==-1){return false}}}}}else{if(b.indexOf(i)!==-1){return}else{return false}}});d.addHandler(d.host,"keypress.jqxComplexInput"+e,function(f){var g=!f.charCode?f.which:f.charCode;if(g===13){if(d.element.value!==d.value){d._onChange(d.value)}}});if(d._spinButtonsContainer){var c=d._upbutton.add(d._downbutton);d.addHandler(d._upbutton,"mousedown.jqxComplexInputSpinButtonUp"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._upbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._incrementOrDecrement(true)}});d.addHandler(d._upbutton,"mouseup.jqxComplexInputSpinButtonUp"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._upbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"))}});d.addHandler(d._downbutton,"mousedown.jqxComplexInputSpinButtonDown"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._downbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._incrementOrDecrement(false)}});d.addHandler(d._downbutton,"mouseup.jqxComplexInputSpinButtonDown"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._downbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"))}});d.addHandler(c,"mouseenter.jqxComplexInputSpinButtons"+e,function(g){if(!d.disabled&&d.value!==""&&d.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){d._upbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))}else{d._downbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))}}});d.addHandler(c,"mouseleave.jqxComplexInputSpinButtons"+e,function(g){if(!d.disabled&&d.value!==""&&d.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){d._upbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))}else{d._downbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))}}});d.addHandler(a("body"),"mouseup.jqxComplexInputSpinButtons"+e,function(){d._upbutton.add(d._downbutton).removeClass(d.toThemeProperty("jqx-fill-state-pressed"))})}},_removeHandlers:function(){var c=this,d;if(c.baseHost){d=c.baseHost[0].id}else{d=c.element.id}c.removeHandler(c.host,"focus.jqxComplexInput"+d);c.removeHandler(c.host,"blur.jqxComplexInput"+d);c.removeHandler(c.host,"keydown.jqxComplexInput"+d);c.removeHandler(c.host,"keypress.jqxComplexInput"+d);if(c._spinButtonsContainer){var b=c._upbutton.add(c._downbutton);c.removeHandler(c._upbutton,"mousedown.jqxComplexInputSpinButtonUp"+d);c.removeHandler(c._upbutton,"mouseup.jqxComplexInputSpinButtonUp"+d);c.removeHandler(c._downbutton,"mousedown.jqxComplexInputSpinButtonDown"+d);c.removeHandler(c._downbutton,"mouseup.jqxComplexInputSpinButtonDown"+d);c.removeHandler(b,"mouseenter.jqxComplexInputSpinButtons"+d);c.removeHandler(b,"mouseleave.jqxComplexInputSpinButtons"+d);c.removeHandler(a("body"),"mouseup.jqxComplexInputSpinButtons"+d)}},_onChange:function(c){var l=this,k,o;var n=l.element.value.toLowerCase();if(a.trim(n)!==""&&a.trim(n)!==l.placeHolder){if(n.indexOf("++")!==-1||n.indexOf("+-")!==-1){var f=n.indexOf("+");n=n.slice(0,f+1)+""+n.slice(f+2,n.length)}else{if(n.indexOf("--")!==-1||n.indexOf("-+")!==-1){var j=n.indexOf("-");n=n.slice(0,j+1)+""+n.slice(j+2,n.length)}}if(n.indexOf("..")!==-1){var d=n.indexOf(".");n=n.slice(0,d+1)+""+n.slice(d+2,n.length)}var m=l._getReal(n);var g=l._getImaginary(n);var b=" ";var e=g>=0?"+":"-";var h="i";k=m;o=g;if(isNaN(k)||isNaN(o)){l.element.value=c;return}l.element.value=m+""+b+""+e+""+b+""+Math.abs(g)+""+h;l.value=l.element.value}else{k=0;o=0;l.value=""}if(l.value!==c){l._currentNumber={value:l.value,realPart:k,imaginaryPart:o};l._raiseEvent("0",{value:l.value,oldValue:c,realPart:k,imaginaryPart:o})}},_incrementOrDecrement:function(j){var e=this,g,l,h=e.host.is(":focus"),k=e.element.value,i=e._currentNumber.realPart,d=e._currentNumber.imaginaryPart;if(h){g=e._getCaretPosition()}if(d>=0){l=k.indexOf("+")}else{if(k.charAt(0)==="-"){k=k.slice(1,k.length)}l=k.indexOf("-")}function f(o){var m=o.toString(),r=m.indexOf("."),q,p,n;if(r!==-1){p=parseInt(m.slice(0,r),10);n=m.slice(m.indexOf(".")+1);q="."}else{p=o;n="";q=""}if(j===true){o=p+e.spinButtonsStep}else{o=p-e.spinButtonsStep}o=parseFloat(o+""+q+""+n);return o}if(g===undefined||g<=l){i=f(i)}else{d=f(d)}var c=d>=0?"+":"-";var b=i+" "+c+" "+Math.abs(d)+"i";e.element.value=b;e._onChange(e.value);if(h){e._setCaretPosition(g)}else{if(e.decimalNotation!=="default"){e._setNotation()}}},_getCaretPosition:function(){var c=this.element;if("selectionStart" in c){return c.selectionStart}else{if(document.selection){c.focus();var d=document.selection.createRange();var b=document.selection.createRange().text.length;d.moveStart("character",-c.value.length);return d.text.length-b}}},_setCaretPosition:function(c){var b=this.element;setTimeout(function(){if("selectionStart" in b){b.focus();b.setSelectionRange(c,c)}else{var d=b.createTextRange();d.collapse(true);d.moveEnd("character",c);d.moveStart("character",c);d.select()}},10)},_exponentialToDecimal:function(h){var f=h.indexOf("e")+2;var e=h.slice(f);var b=e.indexOf("+");var g=e.indexOf("-");if(b!==-1&&(b<g||g===-1)){f=b}else{f=g}var d=e.slice(f);var i=h.replace(d,"");d=d.slice(0,d.length-1);var c=d.charAt(0);d=a.trim(d.slice(1));if(c==="-"){d="-"+d}i=parseFloat(i).toFixed(20)*1;d=parseFloat(d).toFixed(20)*1;return{realPart:i,imaginaryPart:d}},_setNotation:function(){var d=this;var e=d.getDecimalNotation(d._currentNumber.realPart,d.decimalNotation);var c=d.getDecimalNotation(Math.abs(d._currentNumber.imaginaryPart),d.decimalNotation);var b=d._currentNumber.imaginaryPart>=0?"+":"-";d.element.value=e+" "+b+" "+c+"i"},_toSuperScript:function(h,g){var f="-0123456789";var d="⁻⁰¹²³⁴⁵⁶⁷⁸⁹";var c="";for(var e=0;e<h.length;e++){if(g===true){var b=d.indexOf(h.charAt(e));c+=(b!==-1?f[b]:h[e])}else{var j=f.indexOf(h.charAt(e));c+=(j!==-1?d[j]:h[e])}}return c}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxFormattedInput","",{});a.extend(a.jqx._jqxFormattedInput.prototype,{defineInstance:function(){var b={width:null,height:null,radix:10,decimalNotation:"default",value:"0",min:"-9223372036854775808",max:"9223372036854775807",upperCase:false,spinButtons:true,spinButtonsStep:1,dropDown:false,dropDownWidth:null,popupZIndex:20000,placeHolder:"",roundedCorners:true,disabled:false,rtl:false,_opened:false,$popup:a("<ul></ul>"),item:'<li><a href="#"></a></li>',events:["open","close","change","radixChange"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._Long();b._regex={2:new RegExp(/([0-1])/),8:new RegExp(/([0-7])/),10:new RegExp(/([0-9\-])/),16:new RegExp(/([0-9]|[a-f])/i)};b.render()},render:function(){var e=this;e._radixNumber=e._getRadix(e.radix);if(e.value!==""){e._number=new e.longObj.math.Long.fromString((e.value).toString(),e._radixNumber)}if(e.baseHost){e.host=e.baseHost;e.element=e.host[0]}if(this.element.nodeName.toLowerCase()==="div"){this.baseHost=this.element;var b=this.host.find("input");var d=false;a.each(b,function(){var f=this.type;if(f===null||f==="text"||f==="textarea"){b=a(this);d=true;return false}});if(!d){throw new Error("jqxFormattedInput: Missing Text Input in the Input Group")}if(b.length>0){this.baseHost=a(this.element);this.host=b;this.element=b[0];this.baseHost.addClass(this.toThemeProperty("jqx-widget"));this.baseHost.addClass(this.toThemeProperty("jqx-rc-all"));this.baseHost.addClass(this.toThemeProperty("jqx-input-group"));var c=this.baseHost.children();a.each(c,function(f){a(this).addClass(e.toThemeProperty("jqx-input-group-addon"));a(this).removeClass(e.toThemeProperty("jqx-rc-all"));if(f===0){a(this).addClass(e.toThemeProperty("jqx-rc-l"))}if(f===c.length-1){a(this).addClass(e.toThemeProperty("jqx-rc-r"))}if(this!==e.element){a(this).addClass(e.toThemeProperty("jqx-fill-state-normal"))}if(this.nodeName.toLowerCase()==="div"){e.appendSpinButtons=function(i){e._spinButtonsContainer=a(i);e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-formatted-input-spin-buttons-container"));var h='<div class="'+e.toThemeProperty("jqx-fill-state-normal jqx-formatted-input-spin-button")+'"><div class="'+e.toThemeProperty("jqx-input-icon")+'"></div></div>';e._upbutton=a(h);e._spinButtonsContainer.append(e._upbutton);e._downbutton=a(h);e._spinButtonsContainer.append(e._downbutton);e._upArrow=e._upbutton.find("div");e._upArrow.addClass(e.toThemeProperty("jqx-icon-arrow-up"));e._downArrow=e._downbutton.find("div");e._downArrow.addClass(e.toThemeProperty("jqx-icon-arrow-down"));e._spinButtonsStepLong=new e.longObj.math.Long.fromNumber(e.spinButtonsStep)};var g=function(h){e._addon=a(h);e._addon.addClass(e.toThemeProperty("jqx-formatted-input-addon"));if(!e._arrow){e._arrow=a('<div class="'+e.toThemeProperty("jqx-icon")+" "+e.toThemeProperty("jqx-icon-arrow-down")+'"></div>');e._arrow.appendTo(e._addon)}};if(e.rtl===false){if(!e._spinButtonsContainer&&e.spinButtons===true){e.appendSpinButtons(this)}else{if(!e._addon&&e.dropDown===true&&((f===2)||(f===1&&e.spinButtons===false))){g(this)}}}else{if(!e._addon&&e.dropDown===true){g(this);if(e.spinButtons===true){e._addon.addClass(e.toThemeProperty("jqx-formatted-input-addon-rtl"))}}else{if(!e._spinButtonsContainer&&e.spinButtons===true&&((f===1)||(f===0&&e.dropDown===false))){e.appendSpinButtons(this);e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-formatted-input-spin-buttons-container-rtl"));if(e.dropDown===true){e._addon.addClass(e.toThemeProperty("jqx-formatted-input-addon-rtl"))}}}}}})}}e._inputAndAddon=e.host;if(e.baseHost){if(e._spinButtonsContainer){e._inputAndAddon=e._inputAndAddon.add(e._spinButtonsContainer)}if(e._addon){e._inputAndAddon=e._inputAndAddon.add(e._addon)}}e.removeHandlers();this.addHandlers();if(this.rtl){this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.host.attr("role","textbox");a.jqx.aria(this,"aria-autocomplete","both");a.jqx.aria(this,"aria-disabled",this.disabled);a.jqx.aria(this,"aria-readonly",false);a.jqx.aria(this,"aria-multiline",false);a.jqx.aria(this,"aria-haspopup",true);if(e.value!==""&&e.value!==null){if(e.upperCase===true){e.host.addClass(e.toThemeProperty("jqx-formatted-input-upper-case"))}else{e.host.addClass(e.toThemeProperty("jqx-formatted-input-lower-case"))}if(e._radixNumber===10&&e.decimalNotation==="exponential"){e.element.value=e._getDecimalNotation("exponential")}else{e.element.value=e.value}}else{if(e._spinButtonsContainer){e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}}if(e._radixNumber!==10&&e.min.toString()==="-9223372036854775808"){e._minLong=new e.longObj.math.Long.fromNumber(e.min)}else{e._setMinMax("min")}if(e._radixNumber!==10&&e.max.toString()==="9223372036854775807"){e._maxLong=new e.longObj.math.Long.fromNumber(e.max)}else{e._setMinMax("max")}},_refreshClasses:function(c){var b=c?"addClass":"removeClass";this.host[b](this.toThemeProperty("jqx-widget-content"));this.host[b](this.toThemeProperty("jqx-input"));this.host[b](this.toThemeProperty("jqx-formatted-input"));this.host[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){this.$popup[b](this.toThemeProperty("jqx-noshadow"))}this.$popup[b](this.toThemeProperty("jqx-input-popup"));this.$popup[b](this.toThemeProperty("jqx-menu"));this.$popup[b](this.toThemeProperty("jqx-menu-vertical"));this.$popup[b](this.toThemeProperty("jqx-menu-dropdown"));this.$popup[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-widget-content"));if(this.roundedCorners){this.host[b](this.toThemeProperty("jqx-rc-all"));this.$popup[b](this.toThemeProperty("jqx-rc-all"));if(this.baseHost){this.baseHost[b](this.toThemeProperty("jqx-rc-all"));if(this.rtl===false){this.host[b](this.toThemeProperty("jqx-rc-l"));if(this._addon){this._addon[b](this.toThemeProperty("jqx-rc-r"))}}else{this.host[b](this.toThemeProperty("jqx-rc-r"));if(this._addon){this._addon[b](this.toThemeProperty("jqx-rc-l"))}}}}else{this.host.removeClass(this.toThemeProperty("jqx-rc-all"));this.$popup.removeClass(this.toThemeProperty("jqx-rc-all"));if(this.baseHost){this.baseHost.removeClass(this.toThemeProperty("jqx-rc-all"));if(this.rtl===false){this.host.removeClass(this.toThemeProperty("jqx-rc-l"));if(this._addon){this._addon.removeClass(this.toThemeProperty("jqx-rc-r"))}}else{this.host.removeClass(this.toThemeProperty("jqx-rc-r"));if(this._addon){this._addon.removeClass(this.toThemeProperty("jqx-rc-l"))}}}}if(this.disabled){this.host[b](this.toThemeProperty("jqx-fill-state-disabled"));if(this.baseHost){if(this._spinButtonsContainer){this._spinButtonsContainer[b](this.toThemeProperty("jqx-fill-state-disabled"))}if(this._addon){this._addon[b](this.toThemeProperty("jqx-fill-state-disabled"))}}}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));if(this.baseHost&&this.value!==""&&this.value!==null){if(this._spinButtonsContainer){this._spinButtonsContainer.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(this._addon){this._addon.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}}}},selectAll:function(){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},selectLast:function(){var b=this.host;this.selectStart(b[0].value.length)},selectFirst:function(){this.selectStart(0)},selectStart:function(c){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(c,c)}else{var d=b[0].createTextRange();d.collapse(true);d.moveEnd("character",c);d.moveStart("character",c);d.select()}},10)},focus:function(){try{this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},refresh:function(){var f=this;this._refreshClasses(false);this._refreshClasses(true);if(!this.baseHost){if(this.width){this.host.width(this.width)}if(this.height){this.host.height(this.height)}}else{if(this.width){this.baseHost.width(this.width)}if(this.height){this.baseHost.height(this.height);var e=0;var j=this.baseHost.height()-2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.baseHost.css("display","inline-block")}a.each(this.baseHost.children(),function(){a(this).css("height","100%");if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(this).css("height",j+"px")}if(this!==f.element){e+=a(this).outerWidth()}});var c=(typeof f.width==="string"&&f.width.charAt(f.width.length-1)==="%")?1:0;this.host.css("width",this.baseHost.width()-e-c+"px");if(a.jqx.browser.msie&&a.jqx.browser.version<9){if(f._spinButtonsContainer){if(f.rtl===false||f.rtl===true&&f._addon){f._spinButtonsContainer.css("border-left-width","0")}}if(f._addon){if(f.rtl===false){f._addon.css("border-left-width","0")}else{if(!f._spinButtonsContainer){f._addon.css("border-right-width","0")}}}var h=0;if(a.jqx.browser.version<8){var g=0;var d=parseInt(f.host.css("border-left-width"),10)+parseInt(f.host.css("border-right-width"),10);var i=parseInt(f.host.css("padding-left"),10)+parseInt(f.host.css("padding-right"),10);if(f._spinButtonsContainer){d+=parseInt(f._spinButtonsContainer.css("border-left-width"),10)+parseInt(f._spinButtonsContainer.css("border-right-width"),10);i+=parseInt(f._spinButtonsContainer.css("padding-left"),10)+parseInt(f._spinButtonsContainer.css("padding-right"),10);if(!f._addon){g=2}}if(f._addon){d+=parseInt(f._addon.css("border-left-width"),10)+parseInt(f._addon.css("border-right-width"),10);i+=parseInt(f._addon.css("padding-left"),10)+parseInt(f._addon.css("padding-right"),10);if(!f._spinButtonsContainer){g=2}}f.host.width(f.host.width()-(i+d)-g);h=6}f.host.height(f.baseHost.height()-(parseInt(f.host.css("border-top-width"),10)+parseInt(f.host.css("border-bottom-width"),10)+parseInt(f.host.css("padding-top"),10)+parseInt(f.host.css("padding-bottom"),10)+h));var b=f.host.height()+"px";f.host.css("min-height",b);f.host.css("line-height",b)}}}this.host.attr("disabled",this.disabled);if(!this.host.attr("placeholder")){this._refreshPlaceHolder()}},_refreshPlaceHolder:function(){if("placeholder" in this.element){this.host.attr("placeHolder",this.placeHolder)}else{var b=this;if(this.element.value===""){this.element.value=this.placeHolder;this.host.focus(function(){if(b.element.value===b.placeHolder){b.element.value=""}});this.host.blur(function(){if(b.element.value===""||b.element.value===b.placeHolder){b.element.value=b.placeHolder}})}}},destroy:function(){this.removeHandlers();if(this.baseHost){a.jqx.utilities.resize(this.baseHost,null,true);this.baseHost.remove()}else{a.jqx.utilities.resize(this.host,null,true);this.host.remove()}if(this.$popup){this.$popup.remove()}},propertyChangedHandler:function(b,d,g,f){if(d==="placeHolder"){b._refreshPlaceHolder();return}if(d==="theme"){a.jqx.utilities.setTheme(g,f,b.host);return}if(d==="disabled"){a.jqx.aria(b,"aria-disabled",b.disabled)}if(d==="value"&&g.toString().toUpperCase()!==f.toString().toUpperCase()){b.val(f);return}if(g!==f&&d==="radix"){b._changeRadix(f);return}if(g!==f&&d==="decimalNotation"&&b._radixNumber===10){if(f==="exponential"){b.element.value=b._getDecimalNotation("exponential")}else{b.element.value=b._number.toString(10)}}if(g!==f&&(d==="min"||d==="max")){b._setMinMax(d);b._validateValue(b.value,true);b.value=b.element.value;return}if(g!==f&&(d==="upperCase")&&b.element.value!==""){if(f===true){b.host.removeClass(b.toThemeProperty("jqx-formatted-input-lower-case"));b.host.addClass(b.toThemeProperty("jqx-formatted-input-upper-case"))}else{b.host.removeClass(b.toThemeProperty("jqx-formatted-input-upper-case"));b.host.addClass(b.toThemeProperty("jqx-formatted-input-lower-case"))}return}function c(i,j){var k=b.host.width();var h=i.outerWidth();if(j===false){b.host.width(k+h);i.hide();if(b.rtl===true){if(b.spinButtons===true){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-formatted-input-spin-buttons-container-rtl-border"))}if(b.dropDown===true){b._addon.removeClass(b.toThemeProperty("jqx-formatted-input-addon-rtl"))}}}else{b.host.width(k-h);i.show();if(b.rtl===true&&b.spinButtons===true&&b.dropDown===true){b._spinButtonsContainer.removeClass(b.toThemeProperty("jqx-formatted-input-spin-buttons-container-rtl-border"));b._addon.addClass(b.toThemeProperty("jqx-formatted-input-addon-rtl"))}}}function e(j,l){if(l===true){var k=a("<div></div>");if(b.baseHost){var h=b.baseHost.children("div");if((b.rtl===false&&j==="spinButtons")||(b.rtl===true&&j==="dropDown")){h.before(k)}else{h.after(k)}b.render();b.host.width(b.host.width()-k.outerWidth())}else{var n=b.element.id;b.host.removeAttr("id");b.host.wrap('<div id="'+n+'" style="display: inline-block;"></div>');var m=a("#"+n);if(b.rtl===false){m.append(k)}else{m.prepend(k)}var i=b.host.data();i.jqxFormattedInput.host=m;i.jqxFormattedInput.element=m[0];b.baseHost=m;b.baseHost.data(i);b.render();b.refresh()}}}if(d==="spinButtons"){if(g!==f){if(b._spinButtonsContainer){c(b._spinButtonsContainer,f)}else{e("spinButtons",f)}return}else{return}}if(g!==f&&d==="spinButtonsStep"){b._spinButtonsStepLong=new b.longObj.math.Long.fromNumber(f)}if(d==="dropDown"){if(g!==f){if(b._addon){c(b._addon,f)}else{e("dropDown",f)}return}else{return}}b.refresh()},select:function(d,e,b){var c=this;if(!b){b=c.$popup.find(".jqx-fill-state-pressed").attr("data-value")}c._changeRadix(parseInt(b,10));c._setMaxLength(true);c.close()},val:function(g){var f=this;if((g||g==="")&&!(typeof g==="object"&&a.isEmptyObject(g)===true)&&g!=="binary"&&g!=="octal"&&g!=="decimal"&&g!=="exponential"&&g!=="scientific"&&g!=="engineering"&&g!=="hexadecimal"){g=g.toString();if(g.toUpperCase()!==f.element.value.toString().toUpperCase()){var b=f.element.value;if(f.upperCase===true){g=g.toUpperCase()}var e=g.split("");for(var c=0;c<e.length;c++){if(!f._regex[""+f._radixNumber+""].test(e[c])){return}}var h=f._validateValue(g,true);f._raiseEvent("2",{value:h,oldValue:b,radix:f._radixNumber});f.value=h;return h}else{return g}}else{if(g&&!(typeof g==="object"&&a.isEmptyObject(g)===true)){if(g==="exponential"||g==="scientific"||g==="engineering"){return f._getDecimalNotation(g)}else{var d=f._getRadix(g);return f._number.toString(d)}}else{return f.element.value}}},_changeRadix:function(d){var f=this;var e=f._getRadix(d);var g=f.value!==""?f._number.toString(e):"";var b=f.radix;var c=f.value;f.radix=d;f._radixNumber=e;f.element.value=g;f.value=g;this._raiseEvent("3",{radix:d,oldRadix:b,value:g,oldValue:c})},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b;if(this.baseHost){b=this.baseHost.trigger(e)}else{b=this.host.trigger(e)}return b},open:function(){var f=this;f._setPopupOptions();f._render(f._popupOptions);if(a.jqx.isHidden(this.host)){return}var c;if(f.baseHost){c=a.extend({},f.baseHost.coord(true),{height:f.baseHost[0].offsetHeight})}else{c=a.extend({},f.host.coord(true),{height:f.host[0].offsetHeight})}if(this.$popup.parent().length===0){var e=this.element.id+"_popup";this.$popup[0].id=e;a.jqx.aria(this,"aria-owns",e)}this.$popup.appendTo(a(document.body)).css({position:"absolute",zIndex:this.popupZIndex,top:c.top+c.height,left:c.left}).show();var b=0;var d=this.$popup.children();a.each(d,function(){b+=a(this).outerHeight(true)-1});this.$popup.height(b);this._opened=true;if(f.baseHost){f._addon.addClass(f.toThemeProperty("jqx-fill-state-pressed jqx-combobox-arrow-selected"));f._arrow.addClass(f.toThemeProperty("jqx-icon-arrow-down-selected"))}this._raiseEvent("0",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",true);return this},close:function(){var b=this;this.$popup.hide();this._opened=false;if(b.baseHost){b._addon.removeClass(b.toThemeProperty("jqx-fill-state-pressed jqx-combobox-arrow-selected"));b._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-down-selected"))}this._raiseEvent("1",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",false);return this},_render:function(c){var e=this;c=a(c).map(function(h,j){var k=j;var f;switch(h){case 0:f=2;break;case 1:f=8;break;case 2:f=10;break;case 3:f=16;break}h=a(e.item).attr("data-value",f);h.find("a").html(k).attr("data-value",f);var g="";if(e.rtl){g=" "+e.toThemeProperty("jqx-rtl")+" "+e.toThemeProperty("jqx-formatted-input-item-rtl")}h[0].className=e.toThemeProperty("jqx-item")+" "+e.toThemeProperty("jqx-menu-item")+" "+e.toThemeProperty("jqx-formatted-input-item")+" "+e.toThemeProperty("jqx-rc-all")+g;return h[0]});var b;switch(e._radixNumber){case 2:b=0;break;case 8:b=1;break;case 10:b=2;break;case 16:b=3;break}c.eq(b).addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.$popup.html(c);if(!this.dropDownWidth){if(e.baseHost){var d=(typeof e.width==="string"&&e.width.charAt(e.width.length-1)==="%")?1:0;this.$popup.width(this.baseHost.outerWidth()-6-d)}else{this.$popup.width(this.host.outerWidth()-6)}}else{this.$popup.width(this.dropDownWidth)}return this},next:function(){var c=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=c.next();if(!b.length){b=a(this.$popup.find("li")[0])}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},prev:function(){var c=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=c.prev();if(!b.length){b=this.$popup.find("li").last()}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},addHandlers:function(){var c=this;this.addHandler(this.host,"focus",a.proxy(this.onFocus,this));this.addHandler(this.host,"blur",a.proxy(this.onBlur,this));this.addHandler(this.host,"keypress",a.proxy(this.keypress,this));this.addHandler(this.host,"keyup",a.proxy(this.keyup,this));this.addHandler(this.host,"keydown",a.proxy(this.keydown,this));this.addHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.on){this.$popup.on("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.bind("mouseenter","li",a.proxy(this.mouseenter,this))}this.addHandler(this.host,"change",function(f){f.stopPropagation();f.preventDefault()});if(c.baseHost){var d=c.baseHost.attr("id");if(c._spinButtonsContainer){var b=c._upbutton.add(c._downbutton);c.addHandler(c._upbutton,"mousedown.jqxFormattedInputSpinButtonUp"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._upbutton.addClass(c.toThemeProperty("jqx-fill-state-pressed"));c._incrementOrDecrement("add")}});c.addHandler(c._upbutton,"mouseup.jqxFormattedInputSpinButtonUp"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._upbutton.removeClass(c.toThemeProperty("jqx-fill-state-pressed"))}});c.addHandler(c._downbutton,"mousedown.jqxFormattedInputSpinButtonDown"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._downbutton.addClass(c.toThemeProperty("jqx-fill-state-pressed"));c._incrementOrDecrement("subtract")}});c.addHandler(c._downbutton,"mouseup.jqxFormattedInputSpinButtonDown"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._downbutton.removeClass(c.toThemeProperty("jqx-fill-state-pressed"))}});c.addHandler(b,"mouseenter.jqxFormattedInputSpinButtons"+d,function(g){if(!c.disabled&&c.value!==""&&c.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){c._upbutton.addClass(c.toThemeProperty("jqx-fill-state-hover"));c._upArrow.addClass(c.toThemeProperty("jqx-icon-arrow-up-hover"))}else{c._downbutton.addClass(c.toThemeProperty("jqx-fill-state-hover"));c._downArrow.addClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}}});c.addHandler(b,"mouseleave.jqxFormattedInputSpinButtons"+d,function(g){if(!c.disabled&&c.value!==""&&c.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){c._upbutton.removeClass(c.toThemeProperty("jqx-fill-state-hover"));c._upArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-up-hover"))}else{c._downbutton.removeClass(c.toThemeProperty("jqx-fill-state-hover"));c._downArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}}});c.addHandler(a("body"),"mouseup.jqxFormattedInputSpinButtons"+d,function(){c._upbutton.add(c._downbutton).removeClass(c.toThemeProperty("jqx-fill-state-pressed"))})}if(c._addon){c.addHandler(c._addon,"click.jqxFormattedInputAddon"+d,function(){if(!c.disabled){if(c._opened){c.close()}else{c.open()}}});c.addHandler(c._addon,"mouseenter.jqxFormattedInputAddon"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._addon.addClass(c.toThemeProperty("jqx-fill-state-hover jqx-combobox-arrow-hover"));c._arrow.addClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}});c.addHandler(c._addon,"mouseleave.jqxFormattedInputAddon"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._addon.removeClass(c.toThemeProperty("jqx-fill-state-hover jqx-combobox-arrow-hover"));c._arrow.removeClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}});c.addHandler(c._addon.add(c._arrow),"blur.jqxFormattedInputAddon"+d,function(){if(c._opened&&!c.disabled){c.close()}})}a.jqx.utilities.resize(c.baseHost,function(){if(c._opened===true){c.close()}var e=0;if(c._spinButtonsContainer){e+=c._spinButtonsContainer.outerWidth()}if(c._addon){e+=c._addon.outerWidth()}c.host.css("width",c.baseHost.width()-e-1)})}},removeHandlers:function(){var c=this;this.removeHandler(this.host,"focus",a.proxy(this.onFocus,this));this.removeHandler(this.host,"blur",a.proxy(this.onBlur,this));this.removeHandler(this.host,"keypress",a.proxy(this.keypress,this));this.removeHandler(this.host,"keyup",a.proxy(this.keyup,this));this.removeHandler(this.host,"keydown",a.proxy(this.keydown,this));this.removeHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.off){this.$popup.off("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.unbind("mouseenter","li",a.proxy(this.mouseenter,this))}if(c.baseHost){var d=c.baseHost.attr("id");if(c._spinButtonsContainer){var b=c._upbutton.add(c._downbutton);c.removeHandler(c._upbutton,"mousedown.jqxFormattedInputSpinButtonUp"+d);c.removeHandler(c._upbutton,"mouseup.jqxFormattedInputSpinButtonUp"+d);c.removeHandler(c._downbutton,"mousedown.jqxFormattedInputSpinButtonDown"+d);c.removeHandler(c._downbutton,"mouseup.jqxFormattedInputSpinButtonDown"+d);c.removeHandler(b,"mouseenter.jqxFormattedInputSpinButtons"+d);c.removeHandler(b,"mouseleave.jqxFormattedInputSpinButtons"+d);c.removeHandler(a("body"),"mouseup.jqxFormattedInputSpinButtons"+d)}if(c._addon){c.removeHandler(c._addon,"click.jqxFormattedInputAddon"+d);c.removeHandler(c._addon,"mouseenter.jqxFormattedInputAddon"+d);c.removeHandler(c._addon,"mouseleave.jqxFormattedInputAddon"+d);c.removeHandler(c._addon.add(c._arrow),"blur.jqxFormattedInputAddon"+d)}}},move:function(b){if(!this._opened){return}switch(b.keyCode){case 9:case 13:case 27:b.preventDefault();break;case 38:b.preventDefault();this.prev();break;case 40:b.preventDefault();this.next();break}b.stopPropagation()},keydown:function(k){var j=this;this.suppressKeyPressRepeat=~a.inArray(k.keyCode,[40,38,9,13,27]);this.move(k);var o=!k.charCode?k.which:k.charCode,m=String.fromCharCode(o);if(o>=96&&o<=105){m=o-96;o=o-48}if(k.altKey===true){if(o===40){if(j._addon){this.open()}return}else{if(o===38){if(j._addon){this.close()}return}}}if(k.ctrlKey===true){if(o===67){return}else{if(o===65){j.selectAll();return}}}var d=[8,9,13,37,38,39,40,46,88];var i=j._regex[""+j._radixNumber+""];if(d.indexOf(o)===-1&&(!i.test(m)&&!i.test(k.key)&&!i.test(k["char"]))){k.preventDefault();return false}else{var l=j.host[0].selectionStart;var g=j.host[0].selectionEnd-l;var f=this._getCaretPosition(this.host[0]);var b=this.element.value;var c=b.split("");if(o===8){if(g>0){c.splice(l,g)}else{c.splice(f-1,1)}}else{if(o===46){if(g>0){c.splice(l,g)}else{c.splice(f,1)}}else{if(o===88){if(k.ctrlKey===true){if(g>0){c.splice(l,g)}}else{k.preventDefault()}}else{if(o===189){if(c[0]==="-"){c.splice(0,1);j._minus=false}else{c.splice(0,0,"-");j._minus=true}k.preventDefault()}else{var h=d.indexOf(o)===-1?m:"";if(g>0){c.splice(l,g);c.splice(l,0,h)}else{c.splice(f,0,h)}}}}}c=c.join("");if(c!==b){var n=j._validateValue(c,false);if(n===false){j._inputAndAddon.addClass(j.toThemeProperty("jqx-input-invalid"))}else{j._inputAndAddon.removeClass(j.toThemeProperty("jqx-input-invalid"))}}}},keypress:function(c){var b=this;if(b.suppressKeyPressRepeat){return}b.move(c)},keyup:function(c){var b=this;switch(c.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(this._opened){this.select(c,this)}else{b._change()}break;case 27:if(!this._opened){return}this.close();break;case 189:if(b._radixNumber===10){if(b._minus===true){b.element.value="-"+b.element.value}else{b.element.value=b.element.value.slice(1)}}break}c.stopPropagation();c.preventDefault();if(b.element.value!==""){if(b.upperCase){b.host.addClass(b.toThemeProperty("jqx-formatted-input-upper-case"))}else{b.host.addClass(b.toThemeProperty("jqx-formatted-input-lower-case"))}if(b._spinButtonsContainer){b._spinButtonsContainer.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}}else{b.host.removeClass(b.toThemeProperty("jqx-formatted-input-upper-case jqx-formatted-input-lower-case"));if(b._spinButtonsContainer){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}}},_getCaretPosition:function(b){var d=0;if(document.selection){b.focus();var c=document.selection.createRange();c.moveStart("character",-b.value.length);d=c.text.length}else{if(b.selectionStart||b.selectionStart==="0"){d=b.selectionStart}}return(d)},onBlur:function(){var b=this;if(b._opened){b.close()}b._setMaxLength();b._inputAndAddon.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._change();if(b._radixNumber===10&&b.decimalNotation==="exponential"){b.element.value=b._getDecimalNotation("exponential")}b._refreshPlaceHolder()},onFocus:function(){var b=this;b._setMaxLength(true);b._inputAndAddon.addClass(b.toThemeProperty("jqx-fill-state-focus"));if(b._radixNumber===10&&b.decimalNotation==="exponential"){b.element.value=b._number.toString(10)}},click:function(c){c.stopPropagation();c.preventDefault();var b=a(c.target).attr("data-value");this.select(c,this,b)},mouseenter:function(b){this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed"));a(b.currentTarget).addClass(this.toThemeProperty("jqx-fill-state-pressed"))},_change:function(){var c=this;var b=c.value;var d=c._validateValue(c.element.value,true);c._inputAndAddon.removeClass(c.toThemeProperty("jqx-input-invalid"));if(d.toUpperCase()!==b.toString().toUpperCase()){c._raiseEvent("2",{value:d,oldValue:b,radix:c._radixNumber});c.value=d}},_getRadix:function(b){switch(b){case 10:case"decimal":return 10;case 2:case"binary":return 2;case 8:case"octal":return 8;case 16:case"hexadecimal":return 16}},_setPopupOptions:function(){var b=this;b._popupOptions=new Array();if(b.value!==""){b._popupOptions.push(b._number.toString(2)+" <em>(BIN)</em>");b._popupOptions.push(b._number.toString(8)+" <em>(OCT)</em>");b._popupOptions.push(b._number.toString(10)+" <em>(DEC)</em>");b._popupOptions.push(b._number.toString(16)+" <em>(HEX)</em>")}else{b._popupOptions.push("BIN");b._popupOptions.push("OCT");b._popupOptions.push("DEC");b._popupOptions.push("HEX")}},_validateValue:function(e,g){var d=this;if(e!==""){var f=new d.longObj.math.Long.fromString((e).toString(),d._radixNumber);if(f.lessThan(d._minLong)){if(g){d._number=d._minLong;var c=d._minLong.toString(d._radixNumber);if(d._radixNumber===16&&d.upperCase===true){c=c.toUpperCase()}d.element.value=c;return c}else{return false}}else{if(f.greaterThan(d._maxLong)){if(g){d._number=d._maxLong;var b=d._maxLong.toString(d._radixNumber);if(d._radixNumber===16&&d.upperCase===true){b=b.toUpperCase()}d.element.value=b;return b}else{return false}}else{if(g){d._number=f;d.element.value=e;return e}else{return true}}}}else{if(g){d.element.value="";return e}else{return true}}},_getNegativeDecimal:function(l,h){var o=l;if(h===8){var n=new Array();for(var f=0;f<11;f++){var b=parseInt(l.charAt(f),8).toString(2);while(b.length!==3){b="0"+b}n.push(b)}o=n.join("");if(o.charAt(0)==="0"){o=o.slice(1)}}else{if(h===16){var p=new Array();for(var e=0;e<8;e++){var m=parseInt(l.charAt(e),16).toString(2);while(m.length!==4){m="0"+m}p.push(m)}o=p.join("")}}var d="";for(var c=0;c<o.length;c++){var g=o.charAt(c)==="1"?"0":"1";d+=g}d=(parseInt(d,2)+1)*-1;return d},_setMaxLength:function(c){var d=this;var b;if(c===true){switch(d._radixNumber){case 2:b=64;break;case 8:b=22;break;case 10:b=20;break;case 16:b=16;break}}else{b=524288}d.host.attr("maxlength",b)},_setMinMax:function(b){var c=this;c["_"+b+"Long"]=new c.longObj.math.Long.fromString((c[b]).toString(),c._radixNumber)},_getDecimalNotation:function(c){var e=this;var f=e._number.toString(10);function h(k){if(k==="0"){return parseInt(k,10).toExponential()}var j;if(k.charAt(0)==="-"){j="-";k=k.slice(1,k.length)}else{j=""}var l=k.length-1;while(k.charAt(k.length-1)==="0"){k=k.slice(0,k.length-1)}var i=k.slice(1,k.length);if(i!==""){i="."+i}return j+""+k.charAt(0)+i+"e+"+l}function d(l){var k=l.indexOf("e");var j=l.slice(k+1);var i=l.slice(0,k+1);i=i.replace("e","×10");i+=e._toSuperScript(j);i=i.replace("+","");return i}function b(o){var n=o.indexOf("e");var m=o.slice(n+1);var k=o.slice(0,n);var l=parseInt(m,10)%3;k=k*Math.pow(10,l);var j=o.slice(0,n).length-l-2;if(j>=0){k=k.toFixed(j)}var i=k+"×10"+e._toSuperScript((parseInt(m,10)-l).toString());return i}var g=h(f);if(c==="scientific"){return d(g)}else{if(c==="engineering"){return b(g)}else{return g}}},_toSuperScript:function(h,g){var f="-0123456789";var d="⁻⁰¹²³⁴⁵⁶⁷⁸⁹";var c="";for(var e=0;e<h.length;e++){if(g===true){var b=d.indexOf(h.charAt(e));c+=(b!==-1?f[b]:h[e])}else{var j=f.indexOf(h.charAt(e));c+=(j!==-1?d[j]:h[e])}}return c},_incrementOrDecrement:function(c){var b=this;if(b._number.toString(b._radixNumber)!==b.element.value){b._number=new b.longObj.math.Long.fromString(b.element.value,b._radixNumber)}b._number=b._number[c](b._spinButtonsStepLong);b.element.value=b._number.toString(b._radixNumber);b._change()},_negativeBinary:function(u,r){var s="";u=u.slice(1,u.length);while(u.length<64){u="0"+u}for(var o=0;o<u.length;o++){var t=u.charAt(o)==="1"?"0":"1";s+=t}var d=true;var g="";for(var n=s.length-1;n>=0;n--){var q=s.charAt(n);var b;if(q==="0"){if(d===true){b="1";d=false}else{b="0"}}else{if(d===true){b="0"}else{b="1"}}g=b+""+g}switch(r){case 2:return g;case 8:g="00"+g;var f="";for(var m=22;m>=1;m--){var p=g[m*3-3]+""+g[m*3-2]+""+g[m*3-1];f=parseInt(p,2).toString(8)+""+f}return f;case 16:var e="";for(var h=16;h>=1;h--){var c=g[h*4-4]+""+g[h*4-3]+""+g[h*4-2]+""+g[h*4-1];e=parseInt(c,2).toString(16)+""+e}return e}},_Long:function(){var c=this;c.longObj=new Object();var b=c.longObj;b.math=new Object();b.math.Long=new Object();b.math.Long=function(d,e){this.lowBits=d|0;this.highBits=e|0};b.math.Long.IntCache={};b.math.Long.fromInt=function(d){if(-128<=d&&d<128){var f=b.math.Long.IntCache[d];if(f){return f}}var e=new b.math.Long(d|0,d<0?-1:0);if(-128<=d&&d<128){b.math.Long.IntCache[d]=e}return e};b.math.Long.fromNumber=function(d){if(isNaN(d)||!isFinite(d)){return b.math.Long.ZERO}else{if(d<=-b.math.Long.TWO_PWR_63_DBL_){return b.math.Long.MIN_VALUE}else{if(d+1>=b.math.Long.TWO_PWR_63_DBL_){return b.math.Long.MAX_VALUE}else{if(d<0){return b.math.Long.fromNumber(-d).negate()}else{return new b.math.Long((d%b.math.Long.TWO_PWR_32_DBL_)|0,(d/b.math.Long.TWO_PWR_32_DBL_)|0)}}}}};b.math.Long.fromBits=function(d,e){return new b.math.Long(d,e)};b.math.Long.fromString=function(f,j){if(f.length===0){throw new Error("number format error: empty string")}var g=j||10;if(g<2||36<g){throw new Error("radix out of range: "+g)}if(f.charAt(0)==="-"){return b.math.Long.fromString(f.substring(1),g).negate()}else{if(f.indexOf("-")>=0){throw new Error('number format error: interior "-" character: '+f)}}var k=b.math.Long.fromNumber(Math.pow(g,8));var m=b.math.Long.ZERO;for(var e=0;e<f.length;e+=8){var l=Math.min(8,f.length-e);var h=parseInt(f.substring(e,e+l),g);if(l<8){var d=b.math.Long.fromNumber(Math.pow(g,l));m=m.multiply(d).add(b.math.Long.fromNumber(h))}else{m=m.multiply(k);m=m.add(b.math.Long.fromNumber(h))}}return m};b.math.Long.TWO_PWR_16_DBL_=1<<16;b.math.Long.TWO_PWR_24_DBL_=1<<24;b.math.Long.TWO_PWR_32_DBL_=b.math.Long.TWO_PWR_16_DBL_*b.math.Long.TWO_PWR_16_DBL_;b.math.Long.TWO_PWR_31_DBL_=b.math.Long.TWO_PWR_32_DBL_/2;b.math.Long.TWO_PWR_48_DBL_=b.math.Long.TWO_PWR_32_DBL_*b.math.Long.TWO_PWR_16_DBL_;b.math.Long.TWO_PWR_64_DBL_=b.math.Long.TWO_PWR_32_DBL_*b.math.Long.TWO_PWR_32_DBL_;b.math.Long.TWO_PWR_63_DBL_=b.math.Long.TWO_PWR_64_DBL_/2;b.math.Long.ZERO=b.math.Long.fromInt(0);b.math.Long.ONE=b.math.Long.fromInt(1);b.math.Long.NEG_ONE=b.math.Long.fromInt(-1);b.math.Long.MAX_VALUE=b.math.Long.fromBits(4294967295|0,2147483647|0);b.math.Long.MIN_VALUE=b.math.Long.fromBits(0,2147483648|0);b.math.Long.TWO_PWR_24_=b.math.Long.fromInt(1<<24);b.math.Long.prototype.toInt=function(){return this.lowBits};b.math.Long.prototype.toNumber=function(){return this.highBits*b.math.Long.TWO_PWR_32_DBL_+this.getLowBitsUnsigned()};b.math.Long.prototype.toString=function(j){var h=j||10;if(h<2||36<h){throw new Error("radix out of range: "+h)}if(this.isZero()){return"0"}var k,m;if(this.isNegative()){if(this.equals(b.math.Long.MIN_VALUE)){var f=b.math.Long.fromNumber(h);var d=this.div(f);k=d.multiply(f).subtract(this);return d.toString(h)+k.toInt().toString(h)}else{switch(h){case 2:case 8:case 16:m="-"+this.negate().toString(2);return c._negativeBinary(m,h);default:m="-"+this.negate().toString(h);return m}}}var l=b.math.Long.fromNumber(Math.pow(h,6));k=this;m="";while(true){var i=k.div(l);var g=k.subtract(i.multiply(l)).toInt();var e=g.toString(h);k=i;if(k.isZero()){return e+m}else{while(e.length<6){e="0"+e}m=""+e+m}}};b.math.Long.prototype.getHighBits=function(){return this.highBits};b.math.Long.prototype.getLowBits=function(){return this.lowBits};b.math.Long.prototype.getLowBitsUnsigned=function(){return(this.lowBits>=0)?this.lowBits:b.math.Long.TWO_PWR_32_DBL_+this.lowBits};b.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative()){if(this.equals(b.math.Long.MIN_VALUE)){return 64}else{return this.negate().getNumBitsAbs()}}else{var e=this.highBits!==0?this.highBits:this.lowBits;for(var d=31;d>0;d--){if((e&(1<<d))!==0){break}}return this.highBits!==0?d+33:d+1}};b.math.Long.prototype.isZero=function(){return this.highBits===0&&this.lowBits===0};b.math.Long.prototype.isNegative=function(){return this.highBits<0};b.math.Long.prototype.isOdd=function(){return(this.lowBits&1)===1};b.math.Long.prototype.equals=function(d){return(this.highBits===d.highBits)&&(this.lowBits===d.lowBits)};b.math.Long.prototype.notEquals=function(d){return(this.highBits!==d.highBits)||(this.lowBits!==d.lowBits)};b.math.Long.prototype.lessThan=function(d){return this.compare(d)<0};b.math.Long.prototype.lessThanOrEqual=function(d){return this.compare(d)<=0};b.math.Long.prototype.greaterThan=function(d){return this.compare(d)>0};b.math.Long.prototype.greaterThanOrEqual=function(d){return this.compare(d)>=0};b.math.Long.prototype.compare=function(e){if(this.equals(e)){return 0}var d=this.isNegative();var f=e.isNegative();if(d&&!f){return -1}if(!d&&f){return 1}if(this.subtract(e).isNegative()){return -1}else{return 1}};b.math.Long.prototype.negate=function(){if(this.equals(b.math.Long.MIN_VALUE)){return b.math.Long.MIN_VALUE}else{return this.not().add(b.math.Long.ONE)}};b.math.Long.prototype.add=function(k){var i=this.highBits>>>16;var e=this.highBits&65535;var l=this.lowBits>>>16;var f=this.lowBits&65535;var n=k.highBits>>>16;var g=k.highBits&65535;var o=k.lowBits>>>16;var h=k.lowBits&65535;var p=0,j=0,d=0,m=0;m+=f+h;d+=m>>>16;m&=65535;d+=l+o;j+=d>>>16;d&=65535;j+=e+g;p+=j>>>16;j&=65535;p+=i+n;p&=65535;return b.math.Long.fromBits((d<<16)|m,(p<<16)|j)};b.math.Long.prototype.subtract=function(d){return this.add(d.negate())};b.math.Long.prototype.multiply=function(k){if(this.isZero()){return b.math.Long.ZERO}else{if(k.isZero()){return b.math.Long.ZERO}}if(this.equals(b.math.Long.MIN_VALUE)){return k.isOdd()?b.math.Long.MIN_VALUE:b.math.Long.ZERO}else{if(k.equals(b.math.Long.MIN_VALUE)){return this.isOdd()?b.math.Long.MIN_VALUE:b.math.Long.ZERO}}if(this.isNegative()){if(k.isNegative()){return this.negate().multiply(k.negate())}else{return this.negate().multiply(k).negate()}}else{if(k.isNegative()){return this.multiply(k.negate()).negate()}}if(this.lessThan(b.math.Long.TWO_PWR_24_)&&k.lessThan(b.math.Long.TWO_PWR_24_)){return b.math.Long.fromNumber(this.toNumber()*k.toNumber())}var i=this.highBits>>>16;var e=this.highBits&65535;var l=this.lowBits>>>16;var f=this.lowBits&65535;var n=k.highBits>>>16;var g=k.highBits&65535;var o=k.lowBits>>>16;var h=k.lowBits&65535;var p=0,j=0,d=0,m=0;m+=f*h;d+=m>>>16;m&=65535;d+=l*h;j+=d>>>16;d&=65535;d+=f*o;j+=d>>>16;d&=65535;j+=e*h;p+=j>>>16;j&=65535;j+=l*o;p+=j>>>16;j&=65535;j+=f*g;p+=j>>>16;j&=65535;p+=i*h+e*o+l*g+f*n;p&=65535;return b.math.Long.fromBits((d<<16)|m,(p<<16)|j)};b.math.Long.prototype.div=function(f){if(f.isZero()){throw new Error("division by zero")}else{if(this.isZero()){return b.math.Long.ZERO}}var i,k;if(this.equals(b.math.Long.MIN_VALUE)){if(f.equals(b.math.Long.ONE)||f.equals(b.math.Long.NEG_ONE)){return b.math.Long.MIN_VALUE}else{if(f.equals(b.math.Long.MIN_VALUE)){return b.math.Long.ONE}else{var d=this.shiftRight(1);i=d.div(f).shiftLeft(1);if(i.equals(b.math.Long.ZERO)){return f.isNegative()?b.math.Long.ONE:b.math.Long.NEG_ONE}else{k=this.subtract(f.multiply(i));var m=i.add(k.div(f));return m}}}}else{if(f.equals(b.math.Long.MIN_VALUE)){return b.math.Long.ZERO}}if(this.isNegative()){if(f.isNegative()){return this.negate().div(f.negate())}else{return this.negate().div(f).negate()}}else{if(f.isNegative()){return this.div(f.negate()).negate()}}var g=b.math.Long.ZERO;k=this;while(k.greaterThanOrEqual(f)){i=Math.max(1,Math.floor(k.toNumber()/f.toNumber()));var l=Math.ceil(Math.log(i)/Math.LN2);var j=(l<=48)?1:Math.pow(2,l-48);var e=b.math.Long.fromNumber(i);var h=e.multiply(f);while(h.isNegative()||h.greaterThan(k)){i-=j;e=b.math.Long.fromNumber(i);h=e.multiply(f)}if(e.isZero()){e=b.math.Long.ONE}g=g.add(e);k=k.subtract(h)}return g};b.math.Long.prototype.modulo=function(d){return this.subtract(this.div(d).multiply(d))};b.math.Long.prototype.not=function(){return b.math.Long.fromBits(~this.lowBits,~this.highBits)};b.math.Long.prototype.and=function(d){return b.math.Long.fromBits(this.lowBits&d.lowBits,this.highBits&d.highBits)};b.math.Long.prototype.or=function(d){return b.math.Long.fromBits(this.lowBits|d.lowBits,this.highBits|d.highBits)};b.math.Long.prototype.xor=function(d){return b.math.Long.fromBits(this.lowBits^d.lowBits,this.highBits^d.highBits)};b.math.Long.prototype.shiftLeft=function(f){f&=63;if(f===0){return this}else{var d=this.lowBits;if(f<32){var e=this.highBits;return b.math.Long.fromBits(d<<f,(e<<f)|(d>>>(32-f)))}else{return b.math.Long.fromBits(0,d<<(f-32))}}};b.math.Long.prototype.shiftRight=function(f){f&=63;if(f===0){return this}else{var e=this.highBits;if(f<32){var d=this.lowBits;return b.math.Long.fromBits((d>>>f)|(e<<(32-f)),e>>f)}else{return b.math.Long.fromBits(e>>(f-32),e>=0?0:-1)}}};b.math.Long.prototype.shiftRightUnsigned=function(f){f&=63;if(f===0){return this}else{var e=this.highBits;if(f<32){var d=this.lowBits;return b.math.Long.fromBits((d>>>f)|(e<<(32-f)),e>>>f)}else{if(f===32){return b.math.Long.fromBits(e,0)}else{return b.math.Long.fromBits(e>>>(f-32),0)}}}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxRibbon","",{});a.extend(a.jqx._jqxRibbon.prototype,{defineInstance:function(){var b={width:null,height:"auto",mode:"default",position:"top",selectedIndex:-1,selectionMode:"click",popupCloseMode:"click",animationType:"fade",animationDelay:400,scrollPosition:"both",disabled:false,rtl:false,scrollStep:10,scrollDelay:30,reorder:false,initContent:null,_roundedCorners:true,_removeByDrag:false,events:["select","unselect","change","_removeByDrag","reorder"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._browser=a.jqx.browser;if(b.mode!=="popup"&&b.selectedIndex===-1){b.selectedIndex=0}b._originalHTML=b.host.html();b._render(true)},render:function(){this._render()},refresh:function(b){if(b!==true){this._render()}},destroy:function(){var b=this;b._removeHandlers();b.host.remove()},selectAt:function(b){this._selectAt(b)},clearSelection:function(){this._clearSelection()},disableAt:function(b){var c=this;c._items[b]._disabled=true;a(c._items[b]).addClass(c.toThemeProperty("jqx-fill-state-disabled"));if(b===c.selectedIndex){c._clearSelection()}},enableAt:function(b){var c=this;c._items[b]._disabled=false;a(c._items[b]).removeClass(c.toThemeProperty("jqx-fill-state-disabled"))},hideAt:function(b){var c=this;a(c._items[b]).css("display","none");c._checkScrollButtons();if(b===c.selectedIndex){c._clearSelection()}else{c._updatePositions()}},showAt:function(b){var c=this;if(c._orientation==="horizontal"){a(c._items[b]).css("display","inline-block")}else{a(c._items[b]).css("display","inherit")}c._checkScrollButtons();c._updatePositions()},val:function(b){var c=this;if(b){c._selectAt(b)}else{return c.selectedIndex}},addAt:function(b,e){var c=this;c._removeHandlers();var f=a('<li class="'+c.toThemeProperty("jqx-ribbon-item")+" "+c.toThemeProperty("jqx-ribbon-item-"+c.position)+'">'+e.title+"</li>");var d=a('<div class="'+c.toThemeProperty("jqx-widget-content")+" "+c.toThemeProperty("jqx-ribbon-content-section")+" "+c.toThemeProperty("jqx-ribbon-content-section-"+c.position)+'"></div>');d.append(e.content);switch(c.position){case"top":f.addClass(c.toThemeProperty("jqx-rc-t"));d.addClass(c.toThemeProperty("jqx-rc-b"));break;case"bottom":f.addClass(c.toThemeProperty("jqx-rc-b"));d.addClass(c.toThemeProperty("jqx-rc-t"));break;case"left":f.addClass(c.toThemeProperty("jqx-rc-l"));d.addClass(c.toThemeProperty("jqx-rc-r"));break;case"right":f.addClass(c.toThemeProperty("jqx-rc-r"));d.addClass(c.toThemeProperty("jqx-rc-l"));break}if(c.mode==="popup"){d.addClass(c.toThemeProperty("jqx-ribbon-content-section-popup"));if(c._orientation==="horizontal"){d.addClass(c.toThemeProperty("jqx-ribbon-content-section-horizontal-popup"))}else{d.addClass(c.toThemeProperty("jqx-ribbon-content-section-vertical-popup"))}}if(c.rtl===true){f.addClass(c.toThemeProperty("jqx-ribbon-item-rtl"))}if(c._items.length-1>=b){a(c._items[b]).before(f);a(c._contentSections[b]).before(d)}else{c._header.append(f);c._content.append(d)}c._updateItems();c._addHandlers();c._checkScrollButtons();if(b<=c.selectedIndex){c.selectedIndex++}c._updatePositions()},removeAt:function(b){var c=this;if(b===c.selectedIndex){c._clearSelection()}a(c._items[b]).add(c._contentSections[b]).remove();c._updateItems();c._updatePositions()},updateAt:function(b,c){var d=this;a(d._items[b]).html(c.newTitle);a(d._contentSections[b]).html(c.newContent);d._items[b]._isInitialized=false;if(d.initContent&&b===d.selectedIndex){d.initContent(b);d._items[b]._isInitialized=true}d._updatePositions()},setPopupLayout:function(c,f,d,b){var e=this;if(e.mode==="popup"){if(!a(e._contentSections[c]).attr("data-width")){if(a(e._contentSections[c])[0].style.width){a(e._contentSections[c]).attr("data-width",a(e._contentSections[c])[0].style.width)}if(a(e._contentSections[c])[0].style.height){a(e._contentSections[c]).attr("data-height",a(e._contentSections[c])[0].style.height)}}if(d){a(e._contentSections[c]).css("width",d)}if(b){a(e._contentSections[c]).css("height",b)}e._contentSections[c]._layout=f;e._positionContent(c)}},propertyChangedHandler:function(c,d,f,e){if(e!==f){switch(d){case"width":case"height":c.host.css(d,e);c._updateSize();break;case"position":c._render();break;case"mode":c._content.width("auto");c._removeHandlers(null,f);c._render();break;case"selectedIndex":c._selectAt(e,f);break;case"selectionMode":c._removeHandlers(f);c._addHandlers();break;case"scrollPosition":c._scrollButtons.removeClass(c.toThemeProperty("jqx-ribbon-scrollbutton-"+f));c._scrollButtons.addClass(c.toThemeProperty("jqx-ribbon-scrollbutton-"+e));var b=a(c._scrollButtons[0]);var g=a(c._scrollButtons[1]);c._scrollButtons.removeClass(c.toThemeProperty("jqx-rc-tr"));c._scrollButtons.removeClass(c.toThemeProperty("jqx-rc-bl"));b.removeClass(c.toThemeProperty("jqx-rc-tl"));g.removeClass(c.toThemeProperty("jqx-rc-br"));c._scrollButtonRc(b,g);c._checkScrollButtons();c._updatePositions();break;case"disabled":if(e===true){c._removeHandlers();c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{c.host.removeClass(c.toThemeProperty("jqx-fill-state-disabled"));c._addHandlers()}break;case"theme":a.jqx.utilities.setTheme(f,e,c.host);break;case"rtl":if(e===true){c._header.addClass(c.toThemeProperty("jqx-ribbon-header-rtl"));c._items.addClass(c.toThemeProperty("jqx-ribbon-item-rtl"))}else{c._header.removeClass(c.toThemeProperty("jqx-ribbon-header-rtl"));c._items.removeClass(c.toThemeProperty("jqx-ribbon-item-rtl"))}c._positionSelectionToken(c.selectedIndex);break}}},_raiseEvent:function(g,e){var c=this.events[g];var f=new jQuery.Event(c);f.owner=this;f.args=e;var b;try{b=this.host.trigger(f)}catch(d){}return b},_render:function(c){var d=this;if(c!==true){d._removeHandlers()}d._selectionTokenOffsetY=0;switch(d._browser.browser){case"mozilla":d._browserWidthRtlFlag=0;d._browserScrollRtlFlag=1;d._selectionTokenOffsetX=1;break;case"msie":d._browserWidthRtlFlag=0;d._browserScrollRtlFlag=-1;if(d._browser.version==="8.0"){d._selectionTokenOffsetX=1}else{if(d._browser.version==="7.0"){d._selectionTokenOffsetX=0;if(d.mode==="popup"&&(d.position==="bottom"||d.position==="right")){d._selectionTokenOffsetY=2}}else{d._selectionTokenOffsetX=0}}break;default:d._browserWidthRtlFlag=1;d._browserScrollRtlFlag=1;d._selectionTokenOffsetX=0}if(c===true){var b=d.host.children();d._header=a(b[0]);d._content=a(b[1]);d._checkStructure(b)}d._header.css("float","none");d._content.css("padding","0px");d.host.width(d.width);d.host.height(d.height);if(d.position==="bottom"||d.position==="right"){d._content.after(d._header)}if(d.position==="top"||d.position==="bottom"){d._orientation="horizontal"}else{d._orientation="vertical"}if(d.position==="right"){d._header.css("float","right")}else{if(d.position==="left"){d._header.css("float","left")}}d._contentSections=d._content.children();a.each(d._contentSections,function(){if(a(this).attr("data-width")!==undefined){a(this).css("width",a(this).attr("data-width"));a(this).css("height",a(this).attr("data-height"));a(this).removeAttr("data-width");a(this).removeAttr("data-height")}});if(c===true){d._selectionToken=a('<div class="'+d.toThemeProperty("jqx-ribbon-selection-token")+" "+d.toThemeProperty("jqx-ribbon-selection-token-"+d.position)+" "+d.toThemeProperty("jqx-widget-content")+'"></div>');d.host.append(d._selectionToken)}d._updateItems();d._addClasses();if(c===true){d._appendScrollButtons();d._checkScrollButtons()}d._allowSelection=true;if(d.selectedIndex!==-1){a(d._items[d.selectedIndex]).addClass(d.toThemeProperty("jqx-widget-content")).addClass(d.toThemeProperty("jqx-ribbon-item-selected"));d._positionSelectionToken(d.selectedIndex);a(d._contentSections[d.selectedIndex]).css("display","block");if(d.initContent){d.initContent(d.selectedIndex);d._items[d.selectedIndex]._isInitialized=true}}if(!d.disabled){d._addHandlers()}else{d.host.addClass(d.toThemeProperty("jqx-fill-state-disabled"))}a.jqx.utilities.resize(d.host,function(){d._updateSize()})},_updateSize:function(){var b=this;if(b._browser.version==="7.0"&&b._browser.browser==="msie"){if(b._orientation==="horizontal"){b._header.css("width",(b.host.width()-parseInt(b._header.css("padding-left"),10)-parseInt(b._header.css("padding-right"),10)-parseInt(b._header.css("border-left-width"),10)-parseInt(b._header.css("border-right-width"),10)));b._contentSections.width(b._content.width()-parseInt(b._contentSections.css("border-left-width"),10)-parseInt(b._contentSections.css("border-right-width"),10)-parseInt(b._contentSections.css("padding-left"),10)-parseInt(b._contentSections.css("padding-right"),10));if(b.mode==="default"&&typeof b.height==="string"&&b.height.indexOf("%")!==-1){b._contentSections.height(b._content.height()-b._header.height()-parseInt(b._contentSections.css("border-bottom-width"),10)-parseInt(b._contentSections.css("border-top-width"),10)-1)}}else{b._header.css("height",(b.host.height()-parseInt(b._header.css("padding-top"),10)-parseInt(b._header.css("padding-bottom"),10)-parseInt(b._header.css("border-top-width"),10)-parseInt(b._header.css("border-bottom-width"),10)));b._contentSections.height(b._content.height()-parseInt(b._contentSections.css("border-top-width"),10)-parseInt(b._contentSections.css("border-bottom-width"),10)-parseInt(b._contentSections.css("padding-top"),10)-parseInt(b._contentSections.css("padding-bottom"),10));if(b.mode==="default"&&typeof b.width==="string"&&b.height.indexOf("%")!==-1){var c=b.position==="left"?parseInt(b._contentSections.css("border-left-width"),10)+parseInt(b._contentSections.css("border-right-width"),10)+1:0;b._contentSections.width(b._content.width()-b._header.width()-c)}}}b._checkScrollButtons(true);b._updatePositions();if(b.mode==="popup"){b._positionPopup()}},_stopAnimation:function(){var b=this;if(!b._allowSelection){b.selectedIndex=b._animatingIndex;a(b._contentSections[b._animatingIndex]).finish();b._clearSelection(true,b._animatingIndex);b._allowSelection=true}},_selectAt:function(b,e){var c=this;if(e===undefined){e=c.selectedIndex}if(b!==e){c._stopAnimation();if(c._allowSelection){c._animatingIndex=b;c._clearSelection(true,e);c._allowSelection=false;c._selecting=b;if(c.selectionMode==="click"){a(c._items[b]).removeClass(c.toThemeProperty("jqx-fill-state-hover"));a(c._items[b]).removeClass(c.toThemeProperty("jqx-ribbon-item-hover"))}if(c.mode==="popup"&&c._roundedCorners){c._header.removeClass(c.toThemeProperty("jqx-rc-all"));switch(c.position){case"top":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-t"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-b"));break;case"bottom":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-b"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-t"));break;case"left":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-l"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-r"));break;case"right":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-r"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-l"));break}}a(c._items[b]).addClass(c.toThemeProperty("jqx-widget-content")).addClass(c.toThemeProperty("jqx-ribbon-item-selected"));c._selectionToken.css("display","block");c._updatePositions(b);switch(c.animationType){case"fade":a(c._contentSections[b]).fadeToggle(c.animationDelay,function(){c._animationComplete(b,e)});break;case"slide":var d=c.position;if(d==="top"){d="up"}else{if(d==="bottom"){d="down"}}c.slideAnimation=c._slide(a(c._contentSections[b]),{mode:"show",direction:d,duration:c.animationDelay},b,e);break;case"none":a(c._contentSections[b]).css("display","block");c._animationComplete(b,e);break}}else{}}},_clearSelection:function(b,e){var c=this;if(c.mode==="popup"){if(c._roundedCorners){c._header.addClass(c.toThemeProperty("jqx-rc-all"))}}c._selecting=-1;if(e===undefined){e=c.selectedIndex}a(c._items[e]).removeClass(c.toThemeProperty("jqx-widget-content")).removeClass(c.toThemeProperty("jqx-ribbon-item-selected"));c._selectionToken.css("display","none");if(b!==true&&c.animationType!=="none"){if(c.animationType==="fade"){a(c._contentSections[e]).fadeOut(c.animationDelay,function(){c._clearSelectionComplete(e)})}else{if(c.animationType==="slide"){var d=c.position;if(d==="top"){d="up"}else{if(d==="bottom"){d="down"}}c._stopAnimation();e=c.selectedIndex;c.slideAnimation=c._slide(a(c._contentSections[e]),{mode:"hide",direction:d,duration:c.animationDelay},e);c.selectedIndex=-1}}}else{a(c._contentSections[e]).css("display","none");c._clearSelectionComplete(e,b)}},_addHandlers:function(){var g=this,b=g.element.id;var i=function(m){if(g.popupCloseMode==="click"&&g.mode==="popup"){if(m.target.tagName==="svg"){return}var l=a(m.target).closest(".jqx-ribbon");if(l.length>0&&l.attr("id")!==b){g._clearSelection();return}if(m.target.className.indexOf("jqx-ribbon-content-popup")!==-1){g._clearSelection();return}if(a(m.target).ischildof(g.host)){return}var k=false;a.each(a(m.target).parents(),function(){if(this.className!==undefined){if(this.className.indexOf){if(this.className.indexOf("jqx-ribbon")!==-1){k=true;return false}if(this.className.indexOf("jqx-ribbon")!==-1){if(b===this.id){k=true}return false}}}});if(!k){g._clearSelection()}}};if(g.selectionMode==="click"){g.addHandler(g._items,"click.ribbon"+b,function(l){var m=a(l.target).closest("li")[0],k=m._index;if(!g._items[k]._disabled){if(k!==g.selectedIndex){g._selectAt(k)}else{if(g.mode==="popup"){if(g.popupCloseMode!=="none"){a(m).addClass(g.toThemeProperty("jqx-fill-state-hover"));a(m).addClass(g.toThemeProperty("jqx-ribbon-item-hover"));g._clearSelection()}}}}});var d=function(k){return((g._selecting!==k&&g._allowSelection===false)||((g._selecting===-1||g.selectedIndex!==k)&&g._allowSelection===true))&&!g._items[k]._disabled};g.addHandler(g._items,"mouseenter.ribbon"+b,function(k){var l=a(k.target).closest("li")[0];if(d(l._index)){a(l).addClass(g.toThemeProperty("jqx-fill-state-hover"));a(l).addClass(g.toThemeProperty("jqx-ribbon-item-hover"))}});g.addHandler(g._items,"mouseleave.ribbon"+b,function(k){var l=a(k.target).closest("li")[0];if(d(l._index)){a(l).removeClass(g.toThemeProperty("jqx-fill-state-hover"));a(l).removeClass(g.toThemeProperty("jqx-ribbon-item-hover"))}});if(g.mode==="popup"){g.addHandler(g.host,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(g._contentSections,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(a(document),"mousedown.ribbon"+b,function(k){i(k)})}var j=false,e;if(g._removeByDrag===true){g._items.addClass(g.toThemeProperty("jqx-ribbon-item-docking-layout"))}g.addHandler(g._items,"mousedown.ribbon"+b,function(k){var l=a(k.target).closest("li")[0];if((g.reorder===true||g._removeByDrag===true)&&l._index===g.selectedIndex){j=true;e=l._index;l.style.cursor="move"}});g.addHandler(g.host,"mouseup.ribbon"+b,function(){j=false;g._items.css("cursor","")});g.addHandler(g._items,"mouseenter.ribbon"+b,function(n){if(g.reorder===true&&j===true){var l=a(n.target).closest("li")[0]._index,m=a(g._items[e]).html(),k=a(g._contentSections[e]).contents().detach();g._supressSelectionEvents=true;g._oldReorderIndex=e;g.removeAt(e);g.clearSelection();g.addAt(l,{title:m,content:k});g.selectAt(l);setTimeout(function(){a(g._items[l]).mousedown()},0)}});g.addHandler(g._header,"mouseleave.ribbon"+b,function(k){if(g._removeByDrag===true&&j===true){g._raiseEvent("3",{draggedIndex:e,x:k.pageX,y:k.pageY});if(g._items.length>1){g.removeAt(e)}j=false;k.target.style.cursor=""}})}else{if(g.selectionMode==="hover"){g.addHandler(g._items,"mouseenter.ribbon"+b,function(l){var k=a(l.target).closest("li")[0]._index;if(!g._items[k]._disabled&&k!==g.selectedIndex){g._selectAt(k)}});if(g.mode==="popup"){g.addHandler(g.host,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(g._contentSections,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(a(document),"mousedown.ribbon"+b,function(k){i(k)});g.addHandler(g._items,"click.ribbon"+b,function(l){var k=a(l.target).closest("li")[0]._index;if(!g._items[k]._disabled){if(g.mode==="popup"){if(g.popupCloseMode!=="none"){g._clearSelection()}}}})}}}var h=(g.rtl&&g._browser.browser==="msie")?-1:1;var c=a(g._scrollButtons[0]);g.addHandler(c,"mousedown.ribbon"+b,function(){if(g._orientation==="horizontal"){g._timeoutNear=setInterval(function(){var k=g._header.scrollLeft();g._header.scrollLeft(k-g.scrollStep*h);g._updatePositions()},g.scrollDelay)}else{g._timeoutNear=setInterval(function(){var k=g._header.scrollTop();g._header.scrollTop(k-g.scrollStep);g._updatePositions()},g.scrollDelay)}return false});g.addHandler(c,"mouseup.ribbon"+b,function(){clearInterval(g._timeoutNear)});var f=a(g._scrollButtons[1]);g.addHandler(f,"mousedown.ribbon"+b,function(){if(g._orientation==="horizontal"){g._timeoutFar=setInterval(function(){var k=g._header.scrollLeft();g._header.scrollLeft(k+g.scrollStep*h);g._updatePositions()},g.scrollDelay)}else{g._timeoutFar=setInterval(function(){var k=g._header.scrollTop();g._header.scrollTop(k+g.scrollStep);g._updatePositions()},g.scrollDelay)}return false});g.addHandler(f,"mouseup.ribbon"+b,function(){clearInterval(g._timeoutFar)})},_removeHandlers:function(f,e){var c=this,g=c.element.id;if(!f){f=c.selectionMode}if(!e){e=c.mode}c.removeHandler(c._items,"mouseenter.ribbon"+g);if(f==="click"){c.removeHandler(c._items,"click.ribbon"+g);c.removeHandler(c._items,"mouseleave.ribbon"+g);c.removeHandler(c._items,"mousedown.ribbon"+g);c.removeHandler(c.host,"mouseup.ribbon"+g);c.removeHandler(c._header,"mouseleave.ribbon"+g)}else{if(f==="hover"){if(e==="popup"){c.removeHandler(c.host,"mouseleave.ribbon"+g)}}}var b=a(c._scrollButtons[0]);c.removeHandler(b,"mousedown.ribbon"+g);c.removeHandler(b,"mouseup.ribbon"+g);var d=a(c._scrollButtons[1]);c.removeHandler(d,"mousedown.ribbon"+g);c.removeHandler(d,"mouseup.ribbon"+g)},_checkStructure:function(c){var d=this;var f=c.length;if(f!==2){throw new Error("jqxRibbon: Invalid HTML structure. You need to add a ul and a div to the widget container.")}var b=d._header.children().length;var e=d._content.children().length;if(b!==e){throw new Error("jqxRibbon: Invalid HTML structure. For each list item you must have a corresponding div element.")}},_addClasses:function(){var d=this;d._contentSections.removeClass();d._content.removeClass();d._header.removeClass(d.toThemeProperty("jqx-rc-all jqx-widget-header jqx-disableselect jqx-rc-t jqx-rc-b jqx-rc-l jqx-rc-r jqx-rc-all jqx-ribbon-header-"+d._orientation+"-popup jqx-ribbon-header-bottom jqx-ribbon-header-auto jqx-ribbon-header-right jqx-ribbon-header-rtl"));d._items.removeClass(d.toThemeProperty("jqx-fill-state-disabled jqx-ribbon-item-rtl jqx-widget-content jqx-ribbon-item-selected jqx-rc-t jqx-rc-b jqx-rc-l jqx-rc-r jqx-ribbon-item-docking-layout jqx-ribbon-item jqx-ribbon-item-"+d.position));d.host.removeClass();d.host.addClass(d.toThemeProperty("jqx-widget")+" "+d.toThemeProperty("jqx-ribbon"));d._header.addClass(d.toThemeProperty("jqx-widget-header")+" "+d.toThemeProperty("jqx-disableselect")+" "+d.toThemeProperty("jqx-ribbon-header")+" "+d.toThemeProperty("jqx-ribbon-header-"+d._orientation));d._items.addClass(d.toThemeProperty("jqx-ribbon-item")+" "+d.toThemeProperty("jqx-ribbon-item-"+d.position));d._content.addClass(d.toThemeProperty("jqx-widget-content")+" "+d.toThemeProperty("jqx-ribbon-content")+" "+d.toThemeProperty("jqx-ribbon-content-"+d._orientation));d._contentSections.addClass(d.toThemeProperty("jqx-widget-content")+" "+d.toThemeProperty("jqx-ribbon-content-section")+" "+d.toThemeProperty("jqx-ribbon-content-section-"+d.position));if(d._roundedCorners){switch(d.position){case"top":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-t"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-b"));break;case"bottom":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-b"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-t"));break;case"left":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-l"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-r"));break;case"right":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-r"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-l"));break}}else{switch(d.position){case"top":d._items.addClass(d.toThemeProperty("jqx-rc-t"));break;case"bottom":d._items.addClass(d.toThemeProperty("jqx-rc-b"));break;case"left":d._items.addClass(d.toThemeProperty("jqx-rc-l"));break;case"right":d._items.addClass(d.toThemeProperty("jqx-rc-r"));break}}var c,b;if(d.mode==="popup"){if(d.selectedIndex===-1){if(d._roundedCorners){d.host.addClass(d.toThemeProperty("jqx-rc-all"));d._header.addClass(d.toThemeProperty("jqx-rc-all"))}}d.host.addClass(d.toThemeProperty("jqx-ribbon-popup"));d._header.addClass(d.toThemeProperty("jqx-ribbon-header-"+d._orientation+"-popup"));d._content.addClass(d.toThemeProperty("jqx-ribbon-content-popup"));d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-section-popup"));d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-popup-"+d.position));if(d._orientation==="horizontal"){d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-section-horizontal-popup"))}else{d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-section-vertical-popup"))}d._positionPopup()}else{if(d._orientation==="horizontal"){if(d.height!=="auto"){b=d._header.outerHeight();if(d.position==="top"){d._content.css("padding-top",b)}else{d._header.addClass(d.toThemeProperty("jqx-ribbon-header-bottom"));d._content.css("padding-bottom",b)}}else{d._header.addClass(d.toThemeProperty("jqx-ribbon-header-auto"))}}else{if(d._orientation==="vertical"){if(d.width!=="auto"){c=d._header.outerWidth();if(d.position==="left"){d._content.css("padding-left",c)}else{d._header.addClass(d.toThemeProperty("jqx-ribbon-header-right"));d._content.css("padding-right",c)}}else{d.host.addClass(d.toThemeProperty("jqx-ribbon-auto"));d._header.addClass(d.toThemeProperty("jqx-ribbon-header-auto"));d._content.addClass(d.toThemeProperty("jqx-ribbon-content-auto-width"))}}}}if(d._browser.version==="7.0"&&d._browser.browser==="msie"){if(d._orientation==="horizontal"){d._header.css("width",(d.host.width()-parseInt(d._header.css("padding-left"),10)-parseInt(d._header.css("padding-right"),10)-parseInt(d._header.css("border-left-width"),10)-parseInt(d._header.css("border-right-width"),10)));d._items.height(d._items.height()-parseInt(d._items.css("padding-top"),10)-parseInt(d._items.css("padding-bottom"),10)-parseInt(d._items.css("border-top-width"),10)-parseInt(d._items.css("border-bottom-width"),10));d._contentSections.width(d._contentSections.width()-parseInt(d._contentSections.css("border-left-width"),10)-parseInt(d._contentSections.css("border-right-width"),10)-parseInt(d._contentSections.css("padding-left"),10)-parseInt(d._contentSections.css("padding-right"),10));if(d.mode==="default"){if(d.height!=="auto"){if(d.position==="top"){d._contentSections.css("padding-top",b)}else{d._contentSections.css("padding-bottom",b)}d._content.css("height",d.host.height()+2);d._contentSections.css("height",d._content.height()-parseInt(d._contentSections.css("border-bottom-width"),10)-parseInt(d._contentSections.css("border-top-width"),10)-1)}}else{}}else{var e;if(d.position==="left"){d._content.addClass(d.toThemeProperty("jqx-ribbon-content-left"));e=parseInt(d._contentSections.css("border-left-width"),10)+parseInt(d._contentSections.css("border-right-width"),10)+1}else{d._content.addClass(d.toThemeProperty("jqx-ribbon-content-right"));e=0}d._header.css("height",(d.host.height()-parseInt(d._header.css("padding-top"),10)-parseInt(d._header.css("padding-bottom"),10)-parseInt(d._header.css("border-top-width"),10)-parseInt(d._header.css("border-bottom-width"),10)));d._items.width(d._items.width()-parseInt(d._items.css("padding-left"),10)-parseInt(d._items.css("padding-right"),10)-parseInt(d._items.css("border-left-width"),10)-parseInt(d._items.css("border-right-width"),10));d._contentSections.height(d._contentSections.height()-parseInt(d._contentSections.css("border-top-width"),10)-parseInt(d._contentSections.css("border-bottom-width"),10)-parseInt(d._contentSections.css("padding-top"),10)-parseInt(d._contentSections.css("padding-bottom"),10));if(d.mode==="default"){if(d.width!=="auto"){if(d.position==="left"){d._contentSections.css("padding-left",c)}else{d._contentSections.css("padding-right",c)}d._contentSections.width(d._content.width()-d._header.width()-e)}}else{}}}if(d.rtl===true){d._header.addClass(d.toThemeProperty("jqx-ribbon-header-rtl"));d._items.addClass(d.toThemeProperty("jqx-ribbon-item-rtl"))}},_positionPopup:function(){var e=this;var c=(e._browser.version==="7.0"&&e._browser.browser==="msie");switch(e.position){case"top":e._content.css("top",e._header.outerHeight());break;case"bottom":if(!c){e._content.css("bottom",e._header.outerHeight())}else{e._content.css("bottom",e._header.height())}break;case"left":e._content.css("left",e._header.outerWidth());break;case"right":e._content.css("right",e._header.outerWidth());if(c){var b=e._content.children();for(var d=0;d<b.length;d++){var f=a(b[d]);f.css("right",f.outerWidth())}}break}},_appendScrollButtons:function(){var d=this;var e='<div class="'+d.toThemeProperty("jqx-ribbon-scrollbutton")+" "+d.toThemeProperty("jqx-ribbon-scrollbutton-"+d.position)+" "+d.toThemeProperty("jqx-ribbon-scrollbutton-"+d.scrollPosition)+" "+d.toThemeProperty("jqx-widget-header")+'"><div class="'+d.toThemeProperty("jqx-ribbon-scrollbutton-inner")+'"></div></div>';var b=a(e);var f=a(e);var c=(d._orientation==="horizontal")?["left","right"]:["up","down"];b.find(".jqx-ribbon-scrollbutton-inner").addClass(d.toThemeProperty("jqx-icon-arrow-"+c[0]));f.find(".jqx-ribbon-scrollbutton-inner").addClass(d.toThemeProperty("jqx-icon-arrow-"+c[1]));b.addClass(d.toThemeProperty("jqx-ribbon-scrollbutton-lt"));f.addClass(d.toThemeProperty("jqx-ribbon-scrollbutton-rb"));d._scrollButtons=b.add(f);d.host.append(d._scrollButtons);if(d._orientation==="horizontal"){d._scrollButtons.height(d._header.height())}else{d._scrollButtons.width(d._header.width())}d._scrollButtonRc(b,f);switch(d.position){case"top":case"bottom":b.css("margin-left","-1px");f.css("margin-right","-1px");break;case"right":case"left":b.css("margin-top","-1px");f.css("margin-bottom","-1px");break}},_scrollButtonRc:function(b,d){var c=this;if(!c.roundedCorners){return}switch(c.position){case"top":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-tl"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-tr"))}break;case"bottom":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-bl"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-br"))}break;case"left":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-tl"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-bl"))}break;case"right":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-tr"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-br"))}break}},_updateItems:function(){var c=this;c._items=c._header.children();c._items.attr("unselectable","on");c._contentSections=c._content.children();for(var b=0;b<c._items.length;b++){if(c._items[b]._index===undefined){c._items[b]._disabled=false;c._items[b]._isInitialized=false;c._contentSections[b]._layout="default"}if(c._items[b]._index===c.selectedIndex){c.selectedIndex=b}c._items[b]._index=b;c._contentSections[b]._index=b}},_positionContent:function(f){var g=this;var c,k,l,h,b,j;if(g._orientation==="horizontal"){c=g.host.outerWidth();k=g.host.offset().left;l=a(g._items[f]).outerWidth();h=a(g._items[f]).offset().left;b=a(g._contentSections[f]).outerWidth();j="left"}else{c=g.host.outerHeight();k=g.host.offset().top;l=a(g._items[f]).outerHeight();h=a(g._items[f]).offset().top;b=a(g._contentSections[f]).outerHeight();j="top"}var e=a(g._contentSections[f]);var d=function(m){if(m<0){m=0}else{if(m+b>c){m=c-b}}e.css(j,m)};var i;switch(e[0]._layout){case"near":i=h-k;d(i);break;case"far":i=h-k-(b-l);d(i);break;case"center":i=h-k-(b-l)/2;d(i);break;default:e.css(j,"")}},_checkScrollButtons:function(d){var f=this;var g=0;a.each(f._items,function(){var i=a(this);if(i.css("display")!=="none"){g+=(f._orientation==="horizontal")?i.outerWidth(true):i.outerHeight(true)}});var h=f._orientation==="horizontal"?["margin-left","margin-right"]:["margin-top","margin-bottom"];var b=(f._orientation==="horizontal")?f._header.width():f._header.height();if(!f._itemMargins){f._itemMargins=[];f._itemMargins.push(a(f._items[0]).css(h[0]));f._itemMargins.push(a(f._items[f._items.length-1]).css(h[1]))}if(g>b){f._scrollButtons.css("display","block");var e=f.rtl?f._itemMargins[0]:17;var c=f.rtl?f._itemMargins[0]:17;switch(f.scrollPosition){case"near":c=0;e=34;break;case"far":c=34;e=17;break}a(f._items[0]).css(h[0],e);a(f._items[f._items.length-1]).css(h[1],c)}else{a(f._items[0]).css(h[0],f._itemMargins[0]);a(f._items[f._items.length-1]).css(h[1],f._itemMargins[1]);f._scrollButtons.css("display","none")}if(d===true){if(f._orientation==="horizontal"){f._scrollButtons.height(f._header.height())}else{f._scrollButtons.width(f._header.width())}}},_positionSelectionToken:function(h){var i=this;if(h!==-1){var e=a(i._items[h]);var j,b,d,k,g;if(i._orientation==="horizontal"){var f,m;if(i.rtl===true){if(i._browserWidthRtlFlag===1){f=i._header[0].scrollWidth-i._header[0].clientWidth}else{f=0}m=i._browserScrollRtlFlag}else{f=0;m=1}d=e[0].offsetLeft+f-i._header[0].scrollLeft*m-i._selectionTokenOffsetX+2;g=i._header.outerHeight()-1;var c=e.width()+parseInt(e.css("padding-left"),10)+parseInt(e.css("padding-right"),10);if(i.position==="top"){j=g-i._selectionTokenOffsetY;b=""}else{j="";b=g-i._selectionTokenOffsetY}i._selectionToken.css({top:j,bottom:b,left:d,width:c})}else{j=e[0].offsetTop-i._header[0].scrollTop-i._selectionTokenOffsetX+2;g=i._header.outerWidth()-1;var l=e.height()+parseInt(e.css("padding-top"),10)+parseInt(e.css("padding-bottom"),10);if(i.position==="left"){d=g-i._selectionTokenOffsetY;k=""}else{d="";k=g-i._selectionTokenOffsetY}i._selectionToken.css({top:j,left:d,right:k,height:l})}}},_updatePositions:function(b){var c=this;if(isNaN(b)){b=c.selectedIndex}if(b!==-1){c._positionSelectionToken(b);if(c.mode==="popup"&&c._contentSections[b]._layout!=="default"){c._positionContent(b)}if(c.mode==="popup"&&(c.position==="left"||c.position==="right")){c._content.width("auto");var d=c._contentSections[b].style.width&&c._contentSections[b].style.width.toString().indexOf("%")>=0;if(d){c._content[0].style.width=c._contentSections[b].style.width;c._content.width(a(c._contentSections[b]).width()-c._header.width())}else{c._content.width(a(c._contentSections[b]).width())}}}},_animationComplete:function(c,e){var d=this,b=e!==-1?e:null;d._content.css("pointer-events","auto");if(d._supressSelectionEvents!==true){d._raiseEvent("0",{selectedIndex:c});d._raiseEvent("2",{unselectedIndex:b,selectedIndex:c})}else{if(c!==d._oldReorderIndex){d._raiseEvent("4",{newIndex:c,oldIndex:d._oldReorderIndex})}d._supressSelectionEvents=false}d.selectedIndex=c;if(d.initContent&&d._items[c]._isInitialized===false){d.initContent(c);d._items[c]._isInitialized=true}d._allowSelection=true;d._selecting=null},_clearSelectionComplete:function(d,b){var c=this;c._selecting=null;if(d===undefined){d=c.selectedIndex}if(d!==-1){c._content.css("pointer-events","none");if(c._supressSelectionEvents!==true){c._raiseEvent("1",{unselectedIndex:d})}}if(b!==true){c.selectedIndex=-1}},_slide:function(f,e,m,s){var q=this;if(!q.activeAnimations){q.activeAnimations=[]}if(q.activeAnimations.length>0){for(var k=0;k<q.activeAnimations.length;k++){q.activeAnimations[k].clearQueue();q.activeAnimations[k].finish()}}else{f.clearQueue();f.finish()}var h="ui-effects-";var d={save:function(u,v){for(var o=0;o<v.length;o++){if(v[o]!==null&&u.length>0){u.data(h+v[o],u[0].style[v[o]])}}},restore:function(u,w){var v,o;for(o=0;o<w.length;o++){if(w[o]!==null){v=u.data(h+w[o]);if(v===undefined){v=""}u.css(w[o],v)}}},createWrapper:function(o){if(o.parent().is(".ui-effects-wrapper")){return o.parent()}var u={width:o.outerWidth(true),height:o.outerHeight(true),"float":o.css("float")},x=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i={width:o.width(),height:o.height()},w=document.activeElement;try{w.id}catch(v){w=document.body}o.wrap(x);if(o[0]===w||a.contains(o[0],w)){a(w).focus()}x=o.parent();if(o.css("position")==="static"){x.css({position:"relative"});o.css({position:"relative"})}else{a.extend(u,{position:o.css("position"),zIndex:o.css("z-index")});a.each(["top","left","bottom","right"],function(y,z){u[z]=o.css(z);if(isNaN(parseInt(u[z],10))){u[z]="auto"}});o.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}o.css(i);return x.css(u).show()},removeWrapper:function(i){var o=document.activeElement;if(i.parent().is(".ui-effects-wrapper")){i.parent().replaceWith(i);if(i[0]===o||a.contains(i[0],o)){a(o).focus()}}return i}};var p=["position","top","bottom","left","right","width","height"],l=e.mode,t=l==="show",r=e.direction||"left",g=(r==="up"||r==="down")?"top":"left",c=(r==="up"||r==="left"),b,j={};d.save(f,p);f.show();b=e.distance||f[g==="top"?"outerHeight":"outerWidth"](true);d.createWrapper(f).css({overflow:"hidden"});if(t){f.css(g,c?(isNaN(b)?"-"+b:-b):b)}j[g]=(t?(c?"+=":"-="):(c?"-=":"+="))+b;var n=function(){f.clearQueue();f.stop(true,true)};q.activeAnimations.push(f);f.animate(j,{duration:e.duration,easing:e.easing,complete:function(){q.activeAnimations.pop(f);if(l==="show"){q._animationComplete(m,s)}else{if(l==="hide"){f.hide();q._clearSelectionComplete(m)}}d.restore(f,p);d.removeWrapper(f)}});return n}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxNavBar","",{});a.extend(a.jqx._jqxNavBar.prototype,{defineInstance:function(){var b={height:"auto",minimizedHeight:30,popupAnimationDelay:250,minimizeButtonPosition:"left",width:"100%",selectedItem:0,selection:true,disabled:false,rtl:false,minimized:false,columns:null,minimizedTitle:"",orientation:"horizontal",events:["change"]};a.extend(true,this,b)},createInstance:function(b){this.render()},render:function(){var b=this;if(b.ul&&b.ul.parent()[0]!==b.element){b.ul.detach();b.host.children().remove();b.host.append(b.ul);if(b.popup){b.popup.remove()}b.host.height(null);b.host.removeClass(b.toThemeProperty("jqx-widget-header"));b.host.removeClass(b.toThemeProperty("jqx-navbar-minimized"))}b.ul=b.host.children();b._items=b.ul.children();a.each(b._items,function(){a(this).removeClass()});if(this.width!==null&&(this.width.toString().indexOf("%")>=0||this.width.toString().indexOf("px")>=0)){this.element.style.width=this.width}else{this.element.style.width=this.width+"px"}b._layoutItems();b._addClasses();b._addHandlers();b._handleMinimize();a.jqx.utilities.resize(this.host,function(){b._resizePopup()})},_layoutItems:function(){var k=this;var t=1;var s=0;var o=this.height===null||this.height==="auto";if(k.orientation==="horizontal"){if(k._items.length>5){var c=50+"%";k._items.css("width",c);var q=k.height;t=Math.ceil(k._items.length/2);if(!o){var p;var h=false;if(q.toString().indexOf("%")>=0){p=parseInt(q)/t;p+="%";h=true}else{p=parseInt(q)/t}s=2;if(h){k._items.css("height",p);k._items.css("line-height",k._items.height()+"px")}else{k._items.height(p);k._items.css("line-height",p+"px")}}}else{var c=k.host.width/2;var g=k._items.length;var c=100/g+"%";k._items.css("width",c);if(!o){if(k.height.toString().indexOf("%")>=0){k._items.css("height",p);k._items.css("line-height",k.height)}else{k._items.height(k.height);k._items.css("line-height",parseInt(k.height)+"px")}}s=g}if(k.columns){var q=k.height;var l=0;for(var e=0;e<k._items.length;e++){var r=k._items[e];a(r).css("width",k.columns[l]);l++;if(l>=k.columns.length){l=0;if(k.columns.length!==k._items.length){t++}}}var h=false;var p;if(q.toString().indexOf("%")>=0){p=parseInt(q)/t;p+="%";h=true}else{p=parseInt(q)/t}if(!o){if(h){k._items.css("height",p);k._items.css("line-height",k._items.height()+"px")}else{k._items.height(p);k._items.css("line-height",p+"px")}}s=k.columns.length}}else{var q=k.height;var l=0;for(var e=0;e<k._items.length;e++){var r=k._items[e];a(r).css("width","100%")}t=k._items.length;if(!o){var h=false;var p;if(q.toString().indexOf("%")>=0){p=parseInt(q)/t;p+="%";h=true}else{p=parseInt(q)/t}if(h){k._items.css("height",p);k._items.css("line-height",k._items.height()+"px")}else{k._items.height(p);k._items.css("line-height",p+"px")}}s=1}if(k.selection){var b=0;var f=k._items.length/s;var n=false;if(f<t){n=true}for(var e=0;e<t;e++){for(var d=0;d<s;d++){if(d<s-1){var m=k.rtl?"left":"right";a(k._items[b]).css("border-"+m+"-width","1px");a(k._items[b]).css("border-"+m+"-style","solid")}if(t>1&&e>0){a(k._items[b]).css("border-top-width","1px");a(k._items[b]).css("border-top-style","solid")}if(n&&e===t-2&&d===s-1){a(k._items[b]).css("border-bottom-width","1px");a(k._items[b]).css("border-bottom-style","solid")}b++}}}if(a.jqx.browser.msie&&a.jqx.browser.version<8){k._items.css("padding-left","0px");k._items.css("padding-right","0px");a.each(k._items,function(){a(this).css("border-left-width","0px");a(this).css("border-right-width","0px");a(this).css("position","relative");a(this).css("margin-left","-1px")});k.host.css("border","none")}},_handlePopupHeight:function(){var b=this;if(!b.minimized){return}var d;var c=false;if(b.height.toString().indexOf("%")>=0){b.host.css("height",b.height);d=b.host.height()-b.minimizedHeight-1;c=true}if(c){b.popup.height(d);b.ul.height(d);b.host.height(b.minimizedHeight);b._layoutItems()}},_handleMinimize:function(){var d=this;if(d.minimized){var f=d.host;f.height(d.minimizedHeight);f.css("box-sizing","border-box");f.addClass(d.toThemeProperty("jqx-widget-header"));f.addClass(d.toThemeProperty("jqx-navbar-minimized"));var c=a('<div style="cursor: pointer; height: 100%; margin:0px; margin-left: 5px; margin-right:5px;"></div>');f.append(c);c.css("float",d.minimizeButtonPosition);var e=a('<div style="height: 100%; margin:0px; margin-left: 5px; margin-right:5px;"></div>');e.append(d.minimizedTitle);e.css("float",d.minimizeButtonPosition==="left"?"right":"left");if(d.minimizedHeight!=="auto"){if(d.minimizedHeight.toString().indexOf("%")>=0){e.css("line-height",d.minimizedHeight)}else{e.css("line-height",parseInt(d.minimizedHeight)+"px")}}f.append(e);c.addClass(d.toThemeProperty("jqx-menu-minimized-button"));f.removeClass(d.toThemeProperty("jqx-widget-content"));d.ul.detach();var b=a("<div style='box-sizing: border-box; z-index: 999999; display: none; position: absolute;'></div>");b.addClass(d.toThemeProperty("jqx-widget jqx-widget-content jqx-popup jqx-navbar jqx-navbar-popup"));b.append(d.ul);d.popup=b;a(document.body).append(b);d.opened=false;c.click(function(){if(!d.opened){d.open()}else{d.close()}});d.button=c}},close:function(){var b=this;b.popup.fadeOut(b.popupAnimationDelay);b.opened=false},open:function(){var b=this;b.popup.fadeIn(b.popupAnimationDelay);b.popup.css("top",parseInt(b.host.coord().top)+b.host.outerHeight()-1);b.popup.width(b.host.width());var c=b.host.coord().left;b.popup.css("left",c);if(c.toString().indexOf(".5")>=0){b.popup.width(b.host.width()-0.5)}b._handlePopupHeight();b.opened=true},_resizePopup:function(){var b=this;if(b.minimized&&b.popup){b.popup.width(b.host.width());var c=b.host.coord().left;b.popup.css("left",c);if(c.toString().indexOf(".5")>=0){b.popup.width(b.host.width()-0.5)}b.popup.css("top",parseInt(b.host.coord().top)+b.host.outerHeight()-1);b._handlePopupHeight()}},selectAt:function(c){var d=this;if(!d.selection){return}a(d._items[d.selectedItem]).removeClass(d.toThemeProperty("jqx-fill-state-pressed"));a(d._items[c]).addClass(d.toThemeProperty("jqx-fill-state-pressed"));var b=d.selectedItem;d.selectedItem=c;d._raiseEvent("0",{selectedItem:c,oldSelectedItem:b})},getSelectedIndex:function(){return this.selectedItem},destroy:function(){var b=this;b._removeHandlers();b.host.remove()},propertyChangedHandler:function(b,c,e,d){b.render()},_raiseEvent:function(h,e){var g=this;var c=g.events[h];var f=new a.Event(c);f.owner=g;f.args=e;try{var b=g.host.trigger(f)}catch(d){}return b},_removeHandlers:function(){var b=this;b.removeHandler(b._items,"click.navbar"+b.element.id);b.removeHandler(b._items,"mouseenter.navbar"+b.element.id);b.removeHandler(b._items,"mouseleave.navbar"+b.element.id)},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-navbar"));if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}b._items.addClass(b.toThemeProperty("jqx-navbar-block"));if(b.selection){b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-fill-state-normal"));b._items.addClass(b.toThemeProperty("jqx-fill-state-normal"));b._items.addClass(b.toThemeProperty("jqx-button"));if(b.selectedItem!==-1){a(b._items[b.selectedItem]).addClass(b.toThemeProperty("jqx-fill-state-pressed"))}}else{this.host.css("border","none")}if(b.rtl){b._items.addClass(b.toThemeProperty("jqx-navbar-block-rtl"))}},_addHandlers:function(){var b=this;b.addHandler(b._items,"click.navbar"+b.element.id,function(d){if(!b.disabled&&b.selection){var c=a(b._items).index(this);b.selectAt(c)}});b.addHandler(b._items,"mouseenter.navbar"+b.element.id,function(c){if(!b.disabled&&b.selection){a(c.target).addClass(b.toThemeProperty("jqx-fill-state-hover"))}});b.addHandler(b._items,"mouseleave.navbar"+b.element.id,function(c){if(!b.disabled&&b.selection){a(c.target).removeClass(b.toThemeProperty("jqx-fill-state-hover"))}})}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxFileUpload","",{});a.extend(a.jqx._jqxFileUpload.prototype,{defineInstance:function(){var b={width:null,height:"auto",uploadUrl:"",fileInputName:"",autoUpload:false,multipleFilesUpload:true,accept:null,browseTemplate:"",uploadTemplate:"",cancelTemplate:"",localization:null,renderFiles:null,disabled:false,rtl:false,events:["select","remove","uploadStart","uploadEnd"]};a.extend(true,this,b)},createInstance:function(){var b=this;if(b.host.jqxButton===undefined){throw new Error("jqxFileUpload: Missing reference to jqxbuttons.js")}if(a.jqx.browser.msie){if(a.jqx.browser.version<11){b._ieOldWebkit=true;if(a.jqx.browser.version<8){b._ie7=true}}}else{if(a.jqx.browser.webkit){b._ieOldWebkit=true}}b._fluidWidth=typeof b.width==="string"&&b.width.charAt(b.width.length-1)==="%";b._fluidHeight=typeof b.height==="string"&&b.height.charAt(b.height.length-1)==="%";b._render(true)},_render:function(b){var c=this;c._setSize();c._addClasses();if(b===true){c._appendElements()}else{c._removeHandlers()}c._addHandlers();if(c._ie7){c._borderAndPadding("width",c.host);if(c.height!=="auto"){c._borderAndPadding("height",c.host)}}a.jqx.utilities.resize(c.host,null,true);a.jqx.utilities.resize(c.host,function(){if(c._fluidWidth){if(c._ie7){c.host.css("width",c.width);c._borderAndPadding("width",c.host)}for(var f=0;f<c._fileRows.length;f++){var d=c._fileRows[f];var h=d.fileRow;if(c._ie7){h.css("width","100%");c._borderAndPadding("width",h)}if(!c.renderFiles){c._setMaxWidth(d)}}if(c.rtl&&c._ieOldWebkit){for(var e=0;e<c._forms.length;e++){var g=c._browseButton.position();c._forms[e].form.css({left:g.left,top:g.top})}}}if(c._ie7&&c._fluidHeight){c.host.css("height",c.height);c._borderAndPadding("height",c.host)}})},render:function(){this._render(false)},refresh:function(b){if(b!==true){this._render(false)}},destroy:function(){var b=this;b.cancelAll();b._removeHandlers(true);b.host.remove()},browse:function(){if(a.jqx.browser.msie&&a.jqx.browser.version<10){return}var b=this;if(b.multipleFilesUpload===true||(b.multipleFilesUpload===false&&b._fileRows.length===0)){b._forms[b._forms.length-1].fileInput.click()}},_uploadFile:function(b){var c=this;if(c._uploadQueue.length===0){c._uploadQueue.push(b)}if(!c.renderFiles){b.uploadFile.add(b.cancelFile).hide();b.loadingElement.show()}b.fileInput.attr("name",c.fileInputName);c._raiseEvent("2",{file:b.fileName});b.form[0].submit();c._fileObjectToRemove=b},uploadFile:function(b){var c=this;c._uploadFile(c._fileRows[b])},uploadAll:function(){var c=this;if(c._fileRows.length>0){for(var b=c._fileRows.length-1;b>=0;b--){c._uploadQueue.push(c._fileRows[b])}c._uploadFile(c._fileRows[0])}},cancelFile:function(b){var c=this;c._removeSingleFileRow(c._fileRows[b])},cancelAll:function(){var c=this;if(c._fileRows.length>0){for(var b=0;b<c._fileRows.length;b++){c._removeFileRow(c._fileRows[b])}setTimeout(function(){c._browseButton.css("margin-bottom",0)},400);c._fileRows.length=0;c._hideButtons(true)}},propertyChangedHandler:function(e,m,c,k){var b=e.element.id;if(m==="localization"){if(k.browseButton&&(!c||k.browseButton!==c.browseButton)){e._browseButton.text(k.browseButton);e._browseButton.jqxButton({width:"auto"})}if(k.uploadButton&&(!c||k.uploadButton!==c.uploadButton)){e._uploadButton.text(k.uploadButton);e._uploadButton.jqxButton({width:"auto"})}if(k.cancelButton&&(!c||k.cancelButton!==c.cancelButton)){e._cancelButton.text(k.cancelButton);e._cancelButton.jqxButton({width:"auto"})}if(!e.renderFiles){if(k.uploadFileTooltip&&(!c||k.uploadFileTooltip!==c.uploadFileTooltip)){a("#"+b+" .jqx-file-upload-file-upload").attr("title",k.uploadFileTooltip)}if(k.uploadFileTooltip&&(!c||k.cancelFileTooltip!==c.cancelFileTooltip)){a("#"+b+" .jqx-file-upload-file-cancel").attr("title",k.cancelFileTooltip)}}return}if(k!==c){switch(m){case"width":e.host.css("width",k);if(e._ie7){e._borderAndPadding("width",e.host);for(var d=0;d<e._fileRows.length;d++){var n=e._fileRows[d].fileRow;n.css("width","100%");e._borderAndPadding("width",n)}}e._fluidWidth=typeof k==="string"&&k.charAt(k.length-1)==="%";return;case"height":e.host.css("height",k);if(e._ie7){e._borderAndPadding("height",e.host)}e._fluidHeight=typeof k==="string"&&k.charAt(k-1)==="%";return;case"uploadUrl":for(var g=0;g<e._forms.length;g++){e._forms[g].form.attr("action",k)}return;case"accept":for(var f=0;f<e._forms.length;f++){e._forms[f].fileInput.attr("accept",k)}return;case"theme":a.jqx.utilities.setTheme(c,k,e.host);e._browseButton.jqxButton({theme:k});e._uploadButton.jqxButton({theme:k});e._cancelButton.jqxButton({theme:k});return;case"browseTemplate":e._browseButton.jqxButton({template:k});return;case"uploadTemplate":e._uploadButton.jqxButton({template:k});return;case"cancelTemplate":e._cancelButton.jqxButton({template:k});return;case"disabled":e._browseButton.jqxButton({disabled:k});e._uploadButton.jqxButton({disabled:k});e._cancelButton.jqxButton({disabled:k});if(k===true){e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(e.toThemeProperty("jqx-fill-state-disabled"))}return;case"rtl":var h=function(l){var o=l?"addClass":"removeClass";e._browseButton[o](e.toThemeProperty("jqx-file-upload-button-browse-rtl"));e._cancelButton[o](e.toThemeProperty("jqx-file-upload-button-cancel-rtl"));e._uploadButton[o](e.toThemeProperty("jqx-file-upload-button-upload-rtl"));if(a.jqx.browser.msie&&a.jqx.browser.version>8){e._uploadButton[o](e.toThemeProperty("jqx-file-upload-button-upload-rtl-ie"))}for(var i=0;i<e._fileRows.length;i++){var j=e._fileRows[i];j.fileNameContainer[o](e.toThemeProperty("jqx-file-upload-file-name-rtl"));j.cancelFile[o](e.toThemeProperty("jqx-file-upload-file-cancel-rtl"));j.uploadFile[o](e.toThemeProperty("jqx-file-upload-file-upload-rtl"));j.loadingElement[o](e.toThemeProperty("jqx-file-upload-loading-element-rtl"))}};h(k);return}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_setSize:function(){var b=this;b.host.css("width",b.width);b.host.css("height",b.height)},_borderAndPadding:function(d,c){var b;if(d==="width"){b=parseInt(c.css("border-left-width"),10)+parseInt(c.css("border-right-width"),10)+parseInt(c.css("padding-left"),10)+parseInt(c.css("padding-right"),10)}else{b=parseInt(c.css("border-top-width"),10)+parseInt(c.css("border-bottom-width"),10)+parseInt(c.css("padding-top"),10)+parseInt(c.css("padding-bottom"),10)}c.css(d,c[d]()-b)},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget jqx-widget-content jqx-rc-all jqx-file-upload"));if(b.disabled===true){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}},_appendElements:function(){var g=this,c="Browse",b=90,h="Upload All",e=90,d="Cancel All",f=90;var i=g.element.id;if(g.localization){if(g.localization.browseButton){c=g.localization.browseButton;b="auto"}if(g.localization.uploadButton){h=g.localization.uploadButton;e="auto"}if(g.localization.cancelButton){d=g.localization.cancelButton;f="auto"}}g._browseButton=a('<button id="'+i+'BrowseButton" class="'+g.toThemeProperty("jqx-file-upload-button-browse")+'">'+c+"</button>");g.host.append(g._browseButton);g._browseButton.jqxButton({theme:g.theme,width:b,template:g.browseTemplate,disabled:g.disabled});g._browseButton.after('<div style="clear: both;"></div>');g._bottomButtonsContainer=a('<div class="'+g.toThemeProperty("jqx-file-upload-buttons-container")+'"></div>');g.host.append(g._bottomButtonsContainer);g._uploadButton=a('<button id="'+i+'UploadButton" class="'+g.toThemeProperty("jqx-file-upload-button-upload")+'">'+h+"</button>");g._bottomButtonsContainer.append(g._uploadButton);g._uploadButton.jqxButton({theme:g.theme,width:e,template:g.uploadTemplate,disabled:g.disabled});g._cancelButton=a('<button id="'+i+'CancelButton" class="'+g.toThemeProperty("jqx-file-upload-button-cancel")+'">'+d+"</button>");g._bottomButtonsContainer.append(g._cancelButton);g._cancelButton.jqxButton({theme:g.theme,width:f,template:g.cancelTemplate,disabled:g.disabled});g._bottomButtonsContainer.after('<div style="clear: both;"></div>');if(g.rtl){g._browseButton.addClass(g.toThemeProperty("jqx-file-upload-button-browse-rtl"));g._cancelButton.addClass(g.toThemeProperty("jqx-file-upload-button-cancel-rtl"));g._uploadButton.addClass(g.toThemeProperty("jqx-file-upload-button-upload-rtl"));if(a.jqx.browser.msie&&a.jqx.browser.version>8){g._uploadButton.addClass(g.toThemeProperty("jqx-file-upload-button-upload-rtl-ie"))}}g._uploadIframe=a('<iframe name="'+i+'Iframe" class="'+g.toThemeProperty("jqx-file-upload-iframe")+'" src=""></iframe>');g.host.append(g._uploadIframe);g._iframeInitialized=false;g._uploadQueue=[];g._forms=[];g._addFormAndFileInput();g._fileRows=[]},_addFormAndFileInput:function(){var f=this;var i=f.element.id;var e=a('<form class="'+f.toThemeProperty("jqx-file-upload-form")+'" action="'+f.uploadUrl+'" target="'+i+'Iframe" method="post" enctype="multipart/form-data"></form>');f.host.append(e);var d=a('<input type="file" class="'+f.toThemeProperty("jqx-file-upload-file-input")+'" />');if(f.accept){d.attr("accept",f.accept)}e.append(d);if(f._ieOldWebkit){var c=f._browseButton.position();var g=f._browseButton.outerWidth();var h=f._browseButton.outerHeight();var b=f.rtl&&f._ie7?12:0;e.css({left:c.left-b,top:c.top,width:g,height:h});e.addClass(f.toThemeProperty("jqx-file-upload-form-ie9"));d.addClass(f.toThemeProperty("jqx-file-upload-file-input-ie9"));f.addHandler(e,"mouseenter.jqxFileUpload"+i,function(){f._browseButton.addClass(f.toThemeProperty("jqx-fill-state-hover"))});f.addHandler(e,"mouseleave.jqxFileUpload"+i,function(){f._browseButton.removeClass(f.toThemeProperty("jqx-fill-state-hover"))});f.addHandler(e,"mousedown.jqxFileUpload"+i,function(){f._browseButton.addClass(f.toThemeProperty("jqx-fill-state-pressed"))});f.addHandler(a(document),"mouseup.jqxFileUpload"+i,function(){if(f._browseButton.hasClass("jqx-fill-state-pressed")){f._browseButton.removeClass(f.toThemeProperty("jqx-fill-state-pressed"))}})}f.addHandler(d,"change.jqxFileUpload"+i,function(){var l=this.value,j;if(!a.jqx.browser.mozilla){if(l.indexOf("fakepath")!==-1){l=l.slice(12)}else{l=l.slice(l.lastIndexOf("\\")+1)}}if(a.jqx.browser.msie&&a.jqx.browser.version<10){j="IE9 and earlier do not support getting the file size."}else{j=this.files[0].size}var k=f._addFileRow(l,e,d,j);if(f._fileRows.length===1){f._browseButton.css("margin-bottom","10px");f._hideButtons(false)}if(f._ieOldWebkit){f.removeHandler(e,"mouseenter.jqxFileUpload"+i);f.removeHandler(e,"mouseleave.jqxFileUpload"+i);f.removeHandler(e,"mousedown.jqxFileUpload"+i)}f._addFormAndFileInput();f.removeHandler(d,"change.jqxFileUpload"+i);if(f.autoUpload===true){f._uploadFile(k)}});if(f._ieOldWebkit===true){f.addHandler(d,"click.jqxFileUpload"+i,function(j){if(f.multipleFilesUpload===false&&f._fileRows.length>0){j.preventDefault()}})}f._forms.push({form:e,fileInput:d})},_addFileRow:function(f,b,e,d){var h=this,l,g,m,j,n,i="Cancel",k="Upload File";l=a('<div class="'+h.toThemeProperty("jqx-widget-content jqx-rc-all jqx-file-upload-file-row")+'"></div>');if(h._fileRows.length===0){h._browseButton.after(l)}else{h._fileRows[h._fileRows.length-1].fileRow.after(l)}if(!h.renderFiles){g=a('<div class="'+h.toThemeProperty("jqx-widget-header jqx-rc-all jqx-file-upload-file-name")+'">'+f+"</div>");l.append(g);if(h.localization){if(h.localization.cancelFileTooltip){i=h.localization.cancelFileTooltip}if(h.localization.uploadFileTooltip){k=h.localization.uploadFileTooltip}}j=a('<div class="'+h.toThemeProperty("jqx-widget-header jqx-rc-all jqx-file-upload-file-cancel")+'" title="'+i+'"><div class="'+h.toThemeProperty("jqx-icon-close jqx-file-upload-icon")+'"></div></div>');l.append(j);n=a('<div class="'+h.toThemeProperty("jqx-widget-header jqx-rc-all jqx-file-upload-file-upload")+'" title="'+k+'"><div class="'+h.toThemeProperty("jqx-icon-arrow-up jqx-file-upload-icon jqx-file-upload-icon-upload")+'"></div></div>');l.append(n);m=a('<div class="'+h.toThemeProperty("jqx-file-upload-loading-element")+'"></div>');l.append(m);if(h.rtl){g.addClass(h.toThemeProperty("jqx-file-upload-file-name-rtl"));j.addClass(h.toThemeProperty("jqx-file-upload-file-cancel-rtl"));n.addClass(h.toThemeProperty("jqx-file-upload-file-upload-rtl"));m.addClass(h.toThemeProperty("jqx-file-upload-loading-element-rtl"))}h._setMaxWidth({fileNameContainer:g,uploadFile:n,cancelFile:j})}else{l.html(h.renderFiles(f))}if(h._ie7){h._borderAndPadding("width",l);h._borderAndPadding("height",l);if(!h.renderFiles){h._borderAndPadding("height",g);h._borderAndPadding("height",n);h._borderAndPadding("height",j)}}var c={fileRow:l,fileNameContainer:g,fileName:f,uploadFile:n,cancelFile:j,loadingElement:m,form:b,fileInput:e,index:h._fileRows.length};h._addFileHandlers(c);h._fileRows.push(c);h._raiseEvent("0",{file:f,size:d});return c},_setMaxWidth:function(c){var e=this;var f=c.cancelFile.outerWidth(true)+c.uploadFile.outerWidth(true);var b=e._ie7?6:0;var d=e.host.width()-parseInt(e.host.css("padding-left"),10)-parseInt(e.host.css("padding-right"),10)-f-b-7;c.fileNameContainer.css("max-width",d)},_addFileHandlers:function(b){var c=this;if(!c.renderFiles){var d=c.element.id;c.addHandler(b.uploadFile,"mouseenter.jqxFileUpload"+d,function(){if(c.disabled===false){b.uploadFile.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.uploadFile,"mouseleave.jqxFileUpload"+d,function(){if(c.disabled===false){b.uploadFile.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.uploadFile,"click.jqxFileUpload"+d,function(){if(c.disabled===false){c._uploadFile(b)}});c.addHandler(b.cancelFile,"mouseenter.jqxFileUpload"+d,function(){if(c.disabled===false){b.cancelFile.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.cancelFile,"mouseleave.jqxFileUpload"+d,function(){if(c.disabled===false){b.cancelFile.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.cancelFile,"click.jqxFileUpload"+d,function(){if(c.disabled===false){c._removeSingleFileRow(b)}})}},_removeSingleFileRow:function(c){var d=this;d._removeFileRow(c);d._fileRows.splice(c.index,1);if(d._fileRows.length===0){setTimeout(function(){d._browseButton.css("margin-bottom",0)},400);d._hideButtons(true)}else{for(var b=0;b<d._fileRows.length;b++){d._fileRows[b].index=b}}},_removeFileRow:function(b){var c=this;var d=c.element.id;if(!c.renderFiles){c.removeHandler(b.uploadFile,"mouseenter.jqxFileUpload"+d);c.removeHandler(b.uploadFile,"mouseleave.jqxFileUpload"+d);c.removeHandler(b.uploadFile,"click.jqxFileUpload"+d);c.removeHandler(b.cancelFile,"mouseenter.jqxFileUpload"+d);c.removeHandler(b.cancelFile,"mouseleave.jqxFileUpload"+d);c.removeHandler(b.cancelFile,"click.jqxFileUpload"+d)}b.fileRow.fadeOut(function(){b.fileRow.remove();b.form.remove()});c._raiseEvent("1",{file:b.fileName})},_hideButtons:function(b){var c=this;if(b===true){c._bottomButtonsContainer.fadeOut()}else{c._bottomButtonsContainer.fadeIn()}},_addHandlers:function(){var b=this;var c=b.element.id;if(!b._ieOldWebkit){b.addHandler(b._browseButton,"click.jqxFileUpload"+c,function(){b.browse()})}b.addHandler(b._uploadButton,"click.jqxFileUpload"+c,function(){b.uploadAll()});b.addHandler(b._cancelButton,"click.jqxFileUpload"+c,function(){b.cancelAll()});b.addHandler(b._uploadIframe,"load.jqxFileUpload"+c,function(){if(a.jqx.browser.chrome||a.jqx.browser.webkit){b._iframeInitialized=true}if(b._iframeInitialized===false){b._iframeInitialized=true}else{var d=b._uploadIframe.contents().find("body").html();b._raiseEvent("3",{file:b._uploadQueue[b._uploadQueue.length-1].fileName,response:d});if(b._fileObjectToRemove){b._removeSingleFileRow(b._fileObjectToRemove);b._fileObjectToRemove=null}b._uploadQueue.pop();if(b._uploadQueue.length>0){b._uploadFile(b._uploadQueue[b._uploadQueue.length-1])}}})},_removeHandlers:function(b){var d=this;var e=d.element.id;d.removeHandler(d._browseButton,"click.jqxFileUpload"+e);d.removeHandler(d._uploadButton,"click.jqxFileUpload"+e);d.removeHandler(d._cancelButton,"click.jqxFileUpload"+e);d.removeHandler(d._uploadIframe,"load.jqxFileUpload"+e);if(b===true){var c=d._forms[d._forms.length-1];d.removeHandler(c.fileInput,"change.jqxFileUpload"+e);if(d._ieOldWebkit){d.removeHandler(c.form,"mouseenter.jqxFileUpload"+e);d.removeHandler(c.form,"mouseleave.jqxFileUpload"+e);d.removeHandler(c.form,"mousedown.jqxFileUpload"+e);d.removeHandler(a("body"),"mouseup.jqxFileUpload"+e)}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxLoader","",{});a.extend(a.jqx._jqxLoader.prototype,{defineInstance:function(){var b={width:200,height:150,text:"Loading...",html:null,textPosition:"bottom",imagePosition:"center",isModal:false,autoOpen:false,rtl:false,events:["create"]};a.extend(true,this,b)},createInstance:function(b){var c=this;c._render(true);c._raiseEvent("0")},render:function(){this._render()},open:function(){var b=this;if(this.width!==null&&this.width.toString().indexOf("%")!==-1){b.host.css("width",this.width)}if(this.height!==null&&this.height.toString().indexOf("%")!==-1){b.host.css("height",this.height)}b.host.show();b.host.css("left",-b.host.width()/2);b.host.css("top",-b.host.height()/2);if(b.isModal){b._modal.show()}},close:function(){var b=this;b.host.hide();if(b.isModal){b._modal.hide()}},_checkBrowser:function(){var b=this;if(a.jqx.browser.browser==="msie"){if(a.jqx.browser.version==="7.0"){if(b.isModal===false){b.host.addClass(b.toThemeProperty("jqx-loader-ie-transparency"))}b.host.css("top",Math.max(0,((a(window).height()-a(b.host).outerHeight())/2)+a(window).scrollTop())+"px");b.host.css("left",Math.max(0,((a(window).width()-a(b.host).outerWidth())/2)+a(window).scrollLeft())+"px");a(window).resize(function(){b.host.css("top",Math.max(0,((a(window).height()-a(b.host).outerHeight())/2)+a(window).scrollTop())+"px");b.host.css("left",Math.max(0,((a(window).width()-a(b.host).outerWidth())/2)+a(window).scrollLeft())+"px")});this.host.css({"margin-top":"0","margin-left":"0"})}else{if(a.jqx.browser.version==="8.0"){if(b.isModal===false){b.host.addClass(b.toThemeProperty("jqx-loader-ie-transparency"))}}}}},_textPos:function(){var b=this;this._text=b.host.children("div:eq(1)");if(this._image){this._image.css("background-position-y",b.imagePosition)}if(b.textPosition==="top"){this._text.addClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-bottom"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-right"))}else{if(b.textPosition==="bottom"){this._text.addClass(b.toThemeProperty("jqx-loader-text-bottom"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-right"))}else{if(b.textPosition==="left"){this._text.addClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-right"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-bottom"))}else{if(b.textPosition==="right"){this._text.addClass(b.toThemeProperty("jqx-loader-text-right"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-bottom"))}}}}},refresh:function(b){if(b!==true){this._render(false)}},destroy:function(){var b=this;b._removeHandlers();b.host.remove()},propertyChangedHandler:function(b,c,e,d){if(d!==e){switch(c){case"width":b.host.width(d);break;case"height":b.host.height(d);break;case"text":b._text.text(d);break;case"html":b.host.html(d);break;case"textPosition":b._textPos(d);break;case"rtl":if(d===true){b._text.addClass(b.toThemeProperty("jqx-loader-rtl"))}else{b._text.removeClass(b.toThemeProperty("jqx-loader-rtl"))}break}}},_raiseEvent:function(h,e){var g=this;var c=g.events[h];var f=new a.Event(c);f.owner=g;f.args=e;try{var b=g.host.trigger(f)}catch(d){}return b},_render:function(b){var c=this;c.host.width(c.width);c.host.height(c.height);if(c.autoOpen===false){c.host.hide()}if(b){if(c.html===null){c.host.append('<div class="'+c.toThemeProperty("jqx-loader-icon")+'"></div><div class="'+c.toThemeProperty("jqx-loader-text")+'">'+c.text+"</div>");c._image=c.host.children("div:eq(0)");c._text=c.host.children("div:eq(1)")}else{c.host.html(this.html)}if(c.isModal===true){var d=c.host.css("display");c._modal=a('<div id="'+c.element.id+'Modal" class="'+c.toThemeProperty("jqx-loader-modal")+'" style="display: '+d+';"></div>');a("body").append(c._modal)}}c._checkBrowser();c._textPos();c._addClass();c._removeHandlers();c._addHandlers()},_addHandlers:function(){var b=this;if(b.isModal===true){b.addHandler(a(document),"keyup.loader"+b.element.id,function(c){if(c.keyCode===27){b.close()}})}},_removeHandlers:function(){var b=this;b.removeHandler(a(document),"keyup.loader"+b.element.id)},_addClass:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-loader"));b.host.addClass(b.toThemeProperty("jqx-rc-all"));b.host.addClass(b.toThemeProperty("jqx-fill-state-normal"));if(b.rtl){b._text.addClass(b.toThemeProperty("jqx-loader-rtl"))}if(a.jqx.browser.msie){b.host.addClass(this.toThemeProperty("jqx-noshadow"))}b.host.addClass(this.toThemeProperty("jqx-rc-t"));b.host.addClass(this.toThemeProperty("jqx-rc-b"));b.host.addClass(this.toThemeProperty("jqx-popup"))}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxTextArea","",{});a.extend(a.jqx._jqxTextArea.prototype,{defineInstance:function(){var b=this;var c={disabled:false,filter:b._filter,sort:b._sort,highlight:b._highlight,dropDownWidth:null,renderer:b._renderer,opened:false,$popup:a("<ul></ul>"),source:[],roundedCorners:true,searchMode:"default",placeHolder:"",width:null,height:null,rtl:false,displayMember:"",valueMember:"",popupZIndex:20000,items:8,item:'<li><a href="#"></a></li>',minLength:1,maxLength:null,scrollBarSize:a.jqx.utilities.scrollBarSize,query:"",events:["change","select","open","close"]};a.extend(true,b,c)},createInstance:function(){var b=this;b.render();b.isInitialized=true},render:function(){var c=this,f=c.element.id;if(c.isInitialized===true){c.refresh();return}if(a.jqx.utilities.scrollBarSize!==15){c.scrollBarSize=a.jqx.utilities.scrollBarSize}var b=a('<div id="panelWrapper'+f+'" style="overflow: hidden; width: 100%; height: 100%; background-color: transparent; -webkit-appearance: none; outline: none; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;"></div>');var e=a('<div id="verticalScrollBar'+f+'" style="align: left; valign: top; left: 0px; top: 0px; position: absolute;"></div>');c._id=c.element.id;if(c.element.tagName.toLowerCase()==="div"){c._baseHost=c.host;c.host.append(b);b.append('<textarea id="area'+f+'" class="'+c.toThemeProperty("jqx-text-area-element")+'"></textarea>');b.append(e)}else{if(c.element.tagName.toLowerCase()==="textarea"){c._baseHost=a(c.element);c._baseHost.wrap("<div></div>");c._baseHost.wrap(b);c._baseHost.after(e);c.host=c._baseHost.parent().parent();c.host[0].style.cssText=c.element.style.cssText;c.element.style.cssText="";c._baseHost.addClass(c.toThemeProperty("jqx-text-area-element"))}}var d=c.host;c.wrapper=b;c.textarea=d.find("textarea");c._addClasses();if(!d.jqxButton){throw new Error("jqxTextArea: Missing reference to jqxbuttons.js.")}if(!d.jqxScrollBar){throw new Error("jqxTextArea: Missing reference to jqxscrollbar.js.")}if(null===c.width&&d[0].style&&null!==d[0].style.width){c.width=d[0].style.width}if(null===c.height&&d[0].style&&null!==d[0].style.height){c.height=d[0].style.height}c._setSize();if(a.trim(c.textarea.val())===""){c.textarea.val("")}c.textarea.attr("placeholder",c.placeHolder);if(c.maxLength!==null){c.textarea.attr("maxlength",c.maxLength)}if(a.jqx.browser.msie&&a.jqx.browser.version<10&&c.textarea.val()===""){c.textarea.val(c.placeHolder)}c.vScrollBar=e;e.jqxScrollBar({vertical:true,width:15,height:"100%",max:c.height,theme:c.theme});if((c.source instanceof Array&&c.source.length)||c.source._source||a.isFunction(c.source)){c._oldsource=c.source;c._updateSource();c._addPopupClasses();a.jqx.aria(c,"aria-haspopup",true)}c._arrange();c._addHandlers()},refresh:function(c){if(c!==true){var b=this;b._setSize();b._arrange();b._removeHandlers();b._addHandlers();if(b.opened===true){b.open()}}},_arrange:function(){var d=this;var e=d.textarea;var c=e[0].scrollHeight-e.height();var b=e[0].scrollHeight-e.height();if(b<0){b=0}d.vScrollBar.jqxScrollBar({max:b,value:e[0].scrollTop});if(c<5){e.width(d.host.width());d.vScrollBar.css("visibility","hidden")}else{e.width(d.host.width()-d.scrollBarSize);d.vScrollBar.css("visibility","visible");d._arrangeScrollbars(d.scrollBarSize)}},val:function(e){var d=this,c=d.textarea,f=c.val(),b;if(a.jqx.browser.msie&&a.jqx.browser.version<10&&f===d.placeHolder){f=""}if(arguments.length===0||(typeof e==="object"&&a.isEmptyObject(e)===true)){if(d.displayMember!==""&&d.valueMember!==""&&d.selectedItem){if(f===""){return""}return d.selectedItem}return f}if(e&&e.label){if(d.selectedItem&&e.label===d.selectedItem.label&&e.value===d.selectedItem.value){return e.label}d.selectedItem={label:e.label,value:e.value};d.host.attr("data-value",e.value);d.host.attr("data-label",e.label);c.val(e.label);b=e.label}else{if(f===e){return e}c.val(e);d.host.attr("data-value",e);d.host.attr("data-label",e);b=e}d._arrange();d._raiseEvent("0");return b},focus:function(){this.textarea.focus()},selectAll:function(){var b=this.textarea;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},_arrangeScrollbars:function(b){var k=this;var d=k.host.width();var j=k.host.height();var i=k.vScrollBar;var h=i[0].style.visibility!=="hidden";var g=2;var f=2;i.width(b);i.height(parseInt(j,10)-g+"px");i.css({left:parseInt(d,10)-parseInt(b,10)-g-f+"px",top:"0px"});if(k.rtl){i.css({left:"0px"});var c=h?parseInt(b,10)+"px":0;if(k.textarea.children().css("direction")!=="rtl"){var e=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){e=true}if(!e){k.textarea.css("padding-left",c)}}}else{if(i.css("visibility")!=="hidden"){k.textarea.css("width",k.host.width()-k.vScrollBar.outerWidth())}}i.jqxScrollBar("refresh")},destroy:function(){var b=this;if(b.opened){b._removeItemHandlers()}b.$popup.remove();b.vScrollBar.jqxScrollBar("destroy");b._removeHandlers();b.host.remove()},propertyChangedHandler:function(b,c,e,d){if(b.isInitialized===undefined||b.isInitialized===false){return}if(d!==e){switch(c){case"theme":b.vScrollBar.jqxScrollBar({theme:b.theme});break;case"width":b.host.css("width",d);b._arrange();break;case"height":b.host.css("height",d);b._arrange();break;case"source":b._oldsource=d;b._updateSource();break;case"displayMember":case"valueMember":b.source=b._oldsource;b._updateSource();break;case"opened":if(d===true){b.open()}else{b.close()}break;case"maxLength":b.textarea.attr("maxlength",d);break;case"placeHolder":b.textarea.attr("placeholder",d);if(a.jqx.browser.msie&&a.jqx.browser.version<10&&b.textarea.val()===e){b.textarea.val(d)}break;case"scrollBarSize":b._arrange();break;case"dropDownWidth":b.$popup.width(d);break;case"roundedCorners":if(d===true){b.host.add(b.$popup).addClass(b.toThemeProperty("jqx-rc-all"))}else{b.host.add(b.$popup).removeClass(b.toThemeProperty("jqx-rc-all"))}break;case"disabled":b.vScrollBar.jqxScrollBar({disabled:d});if(d===true){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"));b.textarea.attr("disabled","")}else{b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));b.textarea.removeAttr("disabled")}a.jqx.aria(b,"aria-disabled",d);break;case"rtl":if(d===true){b.textarea.addClass(b.toThemeProperty("jqx-text-area-element-rtl"))}else{b.textarea.removeClass(b.toThemeProperty("jqx-text-area-element-rtl"))}b._arrange();break}}},_raiseEvent:function(h,c){var e=this;if(c===undefined){c={owner:null}}var d=e.events[h];c.owner=e;var g=new a.Event(d);g.owner=e;g.args=c;if(g.preventDefault){g.preventDefault()}var f;if(d==="change"||e._baseHost[0].tagName.toLowerCase()==="div"){f=e.host}else{f=e._baseHost}var b=f.trigger(g);return b},_addHandlers:function(){var c=this,f=c.element.id,e=c.host,d=c.textarea;a.jqx.utilities.resize(c._baseHost,function(){c._ttimer=setTimeout(function(){c._arrange()},100)},false,true);var b=a.jqx.browser.mozilla?"wheel":"mousewheel";c.addHandler(e,b+".jqxTextArea"+f,function(g){c.wheel(g,c)});c.addHandler(e,"mouseenter.jqxTextArea"+f,function(){c.focused=true});c.addHandler(e,"mouseleave.jqxTextArea"+f,function(){c.focused=false});c.addHandler(e,"focus.jqxTextArea"+f,function(){c.focused=true});c.addHandler(e,"blur.jqxTextArea"+f,function(){c.focused=false});c.addHandler(c.wrapper,"scroll.jqxTextArea"+f,function(){if(c.wrapper[0].scrollTop!==0){c.wrapper[0].scrollTop=0}if(c.wrapper[0].scrollLeft!==0){c.wrapper[0].scrollLeft=0}});c.addHandler(d,"change.jqxTextArea"+f,function(g){g.stopPropagation();g.preventDefault();c._arrange();c._raiseEvent("0")});c.addHandler(d,"select.jqxTextArea"+f,function(g){g.stopPropagation();g.preventDefault()});c.addHandler(d,"scroll.jqxTextArea"+f,function(){c._arrange()});c.addHandler(d,"focus.jqxTextArea"+f,function(){c.host.addClass(c.toThemeProperty("jqx-fill-state-focus"));if(a.jqx.browser.msie&&a.jqx.browser.version<10&&c.textarea.val()===c.placeHolder){c.textarea.val("")}});c.addHandler(d,"blur.jqxTextArea"+f,function(){c.host.removeClass(c.toThemeProperty("jqx-fill-state-focus"));if(a.jqx.browser.msie&&a.jqx.browser.version<10){var g=c.textarea.val();if(g===""){c.textarea.val(c.placeHolder)}else{if(c.maxLength!==null&&g.length>c.maxLength){c.textarea.val(g.substr(0,c.maxLength))}}}});c.addHandler(d,"keydown.jqxTextArea"+f,function(g){c._suppressKeyPressRepeat=~a.inArray(g.keyCode,[40,38,9,13,27]);c._move(g)});c.addHandler(d,"keypress.jqxTextArea"+f,function(g){if(c.maxLength!==null&&a.jqx.browser.msie&&a.jqx.browser.version<10&&d.val().length>c.maxLength){return false}if(c._suppressKeyPressRepeat){return}c._move(g)});c.addHandler(d,"keyup.jqxTextArea"+f,function(g){switch(g.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!c.opened){return}c._select();break;case 27:if(!c.opened){return}c.close();break;default:if(c.timer){clearTimeout(c.timer)}c.timer=setTimeout(function(){c._suggest()},300)}g.stopPropagation();g.preventDefault();c._arrange()});c.addHandler(c.vScrollBar,"valueChanged.jqxTextArea"+f,function(g){d.scrollTop(g.currentValue)});c.addHandler(c.$popup,"mousedown.jqxTextArea"+f,function(g){g.stopPropagation();g.preventDefault();c._select()})},_removeHandlers:function(){var b=this,e=b.element.id,d=b.host,c=b.textarea;a.jqx.utilities.resize(b._baseHost,null,true);b.removeHandler(d,"mousewheel.jqxTextArea"+e);b.removeHandler(d,"mouseenter.jqxTextArea"+e);b.removeHandler(d,"mouseleave.jqxTextArea"+e);b.removeHandler(d,"focus.jqxTextArea"+e);b.removeHandler(d,"blur.jqxTextArea"+e);b.removeHandler(b.wrapper,"scroll.jqxTextArea"+e);b.removeHandler(c,"change.jqxTextArea"+e);b.removeHandler(c,"select.jqxTextArea"+e);b.removeHandler(c,"scroll.jqxTextArea"+e);b.removeHandler(c,"focus.jqxTextArea"+e);b.removeHandler(c,"blur.jqxTextArea"+e);b.removeHandler(c,"keydown.jqxTextArea"+e);b.removeHandler(c,"keypress.jqxTextArea"+e);b.removeHandler(c,"keyup.jqxTextArea"+e);b.removeHandler(b.vScrollBar,"valueChanged.jqxTextArea"+e);b.removeHandler(b.$popup,"mousedown.jqxTextArea"+e)},_addItemHandlers:function(){var b=this;b.addHandler(b.$popup.find("li"),"mouseenter.jqxTextArea"+b.element.id,function(c){b.$popup.find(".jqx-fill-state-pressed").removeClass(b.toThemeProperty("jqx-fill-state-pressed"));a(c.currentTarget).addClass(b.toThemeProperty("jqx-fill-state-pressed"))})},_removeItemHandlers:function(){var b=this;b.removeHandler(b.$popup.find("li"),"mouseenter.jqxTextArea"+b.element.id)},wheel:function(d,c){var e=0;if(d.originalEvent&&a.jqx.browser.msie&&d.originalEvent.wheelDelta){e=d.originalEvent.wheelDelta/120}if(!d){d=window.event}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}else{if(d.originalEvent.wheelDelta){e=d.originalEvent.wheelDelta/120}else{if(d.originalEvent.detail){e=-d.originalEvent.detail/3}else{if(d.originalEvent.deltaY){e=-d.originalEvent.deltaY/3}}}}}if(e){var b=c._handleDelta(e);if(!b){if(d.preventDefault){d.preventDefault()}}if(!b){return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(f){var c=this,d=c.vScrollBar.jqxScrollBar("getInstance");if(c.focused){var e=d.value;if(f<0){c.scrollDown()}else{c.scrollUp()}var b=d.value;if(e!==b){return false}}return true},scrollDown:function(){var b=this;if(b.vScrollBar.css("visibility")==="hidden"){return false}var d=b.vScrollBar.jqxScrollBar("getInstance");var c=Math.min(d.value+d.largestep,d.max);d.setPosition(c);b._arrange();return true},scrollUp:function(){var b=this;if(b.vScrollBar.css("visibility")==="hidden"){return false}var d=b.vScrollBar.jqxScrollBar("getInstance");var c=Math.max(d.value-d.largestep,d.min);d.setPosition(c);b._arrange();return true},_setSize:function(){var b=this;b.host.css("width",b.width);b.host.css("height",b.height)},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-panel"));b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-text-area"));b.textarea.addClass(b.toThemeProperty("jqx-widget-content"));if(b.roundedCorners===true){b.host.addClass(b.toThemeProperty("jqx-rc-all"))}if(b.disabled===true){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"));b.textarea.attr("disabled","");a.jqx.aria(b,"aria-disabled",true)}else{a.jqx.aria(b,"aria-disabled",false)}if(b.rtl===true){b.textarea.addClass(b.toThemeProperty("jqx-text-area-element-rtl"))}},_addPopupClasses:function(){var c=this,b=c.$popup;b.addClass(c.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){b.addClass(c.toThemeProperty("jqx-noshadow"))}b.addClass(c.toThemeProperty("jqx-input-popup"));b.addClass(c.toThemeProperty("jqx-menu"));b.addClass(c.toThemeProperty("jqx-menu-vertical"));b.addClass(c.toThemeProperty("jqx-menu-dropdown"));b.addClass(c.toThemeProperty("jqx-widget"));b.addClass(c.toThemeProperty("jqx-widget-content"));if(c.roundedCorners){b.addClass(c.toThemeProperty("jqx-rc-all"))}},_updateSource:function(){var d=this;var b=function(f){var e=[];e=a.map(f,function(h){if(h===undefined){return null}if(typeof h==="string"||h instanceof String){return{label:h,value:h}}if(typeof h!=="string"&&h instanceof String===false){var g="";var i="";if(d.displayMember!==""&&d.displayMember!==undefined){if(h[d.displayMember]){g=h[d.displayMember]}}if(d.valueMember!==""&&d.valueMember!==undefined){i=h[d.valueMember]}if(g===""){g=h.label}if(i===""){i=h.value}return{label:g,value:i}}return h});return e};if(d.source&&d.source._source){d.adapter=d.source;if(d.adapter._source.localdata){d.adapter.unbindBindingUpdate(d.element.id);d.adapter.bindBindingUpdate(d.element.id,function(){d.source=b(d.adapter.records)})}else{var c={};if(d.adapter._options.data){a.extend(d.adapter._options.data,c)}else{if(d.source._source.data){a.extend(c,d.source._source.data)}d.adapter._options.data=c}d.adapter.unbindDownloadComplete(d.element.id);d.adapter.bindDownloadComplete(d.element.id,function(){d.source=b(d.adapter.records)})}d.source.dataBind();return}if(!a.isFunction(d.source)){d.source=b(d.source)}},open:function(){var d=this;if(a.jqx.isHidden(d.host)){return}var c=a.extend({},d.host.coord(true),{height:d.host[0].offsetHeight});if(d.$popup.parent().length===0){var f=d._id+"_popup";d.$popup[0].id=f;a.jqx.aria(d,"aria-owns",f)}d.$popup.appendTo(a(document.body)).css({position:"absolute",zIndex:d.popupZIndex,top:c.top+c.height,left:c.left}).show();var b=0;var e=d.$popup.children();a.each(e,function(){b+=a(this).outerHeight(true)-1});d.$popup.height(b);d.opened=true;d._raiseEvent("2",{popup:d.$popup});a.jqx.aria(d,"aria-expanded",true);d._addItemHandlers();return d},close:function(){var b=this;b._removeItemHandlers();b.$popup.hide();b.opened=false;b._raiseEvent("3",{popup:b.$popup});a.jqx.aria(b,"aria-expanded",false);return b},_suggest:function(){var c=this,b;c.query=c.textarea[0].value;if(!c.query||c.query.length<c.minLength){return c.opened?c.close():c}if(a.isFunction(c.source)){b=c.source(c.query,a.proxy(c._load,this))}else{b=c.source}if(b){return c._load(b)}return c},_load:function(b){var c=this;b=a.grep(b,function(d){return c.filter(d)});b=c.sort(b);if(!b.length){if(c.opened){return c.close()}else{return c}}return c._render(b.slice(0,c.items)).open()},_filter:function(c){var b=this;var d=b.query;var e=c;if(c.label!==undefined){e=c.label}else{if(b.displayMember){e=c[b.displayMember]}}switch(b.searchMode){case"none":break;case"contains":return a.jqx.string.contains(e,d);case"equals":return a.jqx.string.equals(e,d);case"equalsignorecase":return a.jqx.string.equalsIgnoreCase(e,d);case"startswith":return a.jqx.string.startsWith(e,d);case"startswithignorecase":return a.jqx.string.startsWithIgnoreCase(e,d);case"endswith":return a.jqx.string.endsWith(e,d);case"endswithignorecase":return a.jqx.string.endsWithIgnoreCase(e,d);default:return a.jqx.string.containsIgnoreCase(e,d)}},_sort:function(c){var b=this,j=[],e=[],g=[];for(var d=0;d<c.length;d++){var f=c[d];var h=f;if(f.label){h=f.label}else{if(b.displayMember){h=f[b.displayMember]}}if(h.toString().toLowerCase().indexOf(b.query.toString().toLowerCase())===0){j.push(f)}else{if(h.toString().indexOf(b.query)>=0){e.push(f)}else{if(h.toString().toLowerCase().indexOf(b.query.toString().toLowerCase())>=0){g.push(f)}}}}return j.concat(e,g)},_render:function(b){var c=this;b=a(b).map(function(e,f){var h=f;if(f.value!==undefined){if(f.label!==undefined){e=a(c.item).attr({"data-name":f.label,"data-value":f.value})}else{e=a(c.item).attr({"data-name":f.value,"data-value":f.value})}}else{if(f.label!==undefined){e=a(c.item).attr({"data-value":f.label,"data-name":f.label})}else{if(c.displayMember!==undefined&&c.displayMember!==""){e=a(c.item).attr({"data-name":f[c.displayMember],"data-value":f[c.valueMember]})}else{e=a(c.item).attr({"data-value":f,"data-name":f})}}}if(f.label){h=f.label}else{if(c.displayMember){h=f[c.displayMember]}}e.find("a").html(c.highlight(h));var g="",d="";if(c.roundedCorners===true){g=" "+c.toThemeProperty("jqx-rc-all")}if(c.rtl){d=" "+c.toThemeProperty("jqx-rtl")}e[0].className=c.toThemeProperty("jqx-item")+" "+c.toThemeProperty("jqx-menu-item")+g+d;return e[0]});b.first().addClass(c.toThemeProperty("jqx-fill-state-pressed"));c.$popup.html(b);if(!c.dropDownWidth){c.$popup.width(c.host.outerWidth()-6)}else{c.$popup.width(c.dropDownWidth)}return c},_highlight:function(c){var d=this.query;d=d.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var b=new RegExp("("+d+")","ig");return c.replace(b,function(e,f){return"<b>"+f+"</b>"})},_select:function(){var b=this;var d=b.$popup.find(".jqx-fill-state-pressed").attr("data-value");var c=b.$popup.find(".jqx-fill-state-pressed").attr("data-name");b.textarea[0].value=b.renderer(c,b.textarea[0].value);b.selectedItem={label:c,value:d};b.host.attr("data-value",d);b.host.attr("data-label",c);b._raiseEvent("1",{item:{label:c,value:d}});b._arrange();b.textarea[0].scrollTop=b.textarea[0].scrollHeight;b._raiseEvent("0");return b.close()},_renderer:function(b){return b},_move:function(c){var b=this;if(!b.opened){return}switch(c.keyCode){case 9:case 13:case 27:c.preventDefault();break;case 38:if(!c.shiftKey){c.preventDefault();b._prev()}break;case 40:if(!c.shiftKey){c.preventDefault();b._next()}break}c.stopPropagation()},_next:function(){var b=this,d=b.$popup.find(".jqx-fill-state-pressed").removeClass(b.toThemeProperty("jqx-fill-state-pressed")),c=d.next();if(!c.length){c=a(b.$popup.find("li")[0])}c.addClass(b.toThemeProperty("jqx-fill-state-pressed"))},_prev:function(){var b=this,d=b.$popup.find(".jqx-fill-state-pressed").removeClass(b.toThemeProperty("jqx-fill-state-pressed")),c=d.prev();if(!c.length){c=b.$popup.find("li").last()}c.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxPopover","",{});a.extend(a.jqx._jqxPopover.prototype,{defineInstance:function(){var b={arrowOffsetValue:null,animationType:"fade",position:"bottom",animationOpenDelay:"fast",animationCloseDelay:"fast",autoClose:true,isModal:false,height:null,initContent:null,offset:null,rtl:false,showArrow:true,showCloseButton:false,selector:null,title:"",width:null,_toggleElement:null,_popover:null,_popoverTop:0,_popoverLeft:0,_init:false,_ie8:(a.jqx.browser.msie&&a.jqx.browser.version===8),_ie7:(a.jqx.browser.msie&&a.jqx.browser.version<8),_left:0,_top:0,events:["open","close"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._content=b.host.children()},render:function(){var h=this;var c=h.element.id;h._content.detach();h._toggleElement=a(h.selector);if(h._toggleElement.length===0){throw new Error('jqxPopover: Invalid Popover toggler: "'+h.selector+'".')}else{if(h._toggleElement===null){throw new Error("jqxPopover: Missing Popover toggler.")}}var k=a('<div id="'+c+'" class="'+h.toThemeProperty("jqx-popover")+'"><div class="'+h.toThemeProperty("jqx-popover-arrow")+'"></div><div class="'+h.toThemeProperty("jqx-popover-title")+'"></div><div class="'+h.toThemeProperty("jqx-popover-content")+'"></div></div>');a("body").append(k);var g=h.host.data();h.host.detach();h.host=k;h.host.data(g);h.element=k[0];h.element.id=c;h._popover=a("#"+c);var j=h._popover.find(".jqx-popover-title");j.append(h.title);var i=h._popover.find(".jqx-popover-content");i.append(h._content);h._popover.hide();h._removeHandlers();h._addHandlers();h._popover.addClass(h.position);j.addClass(h.toThemeProperty("jqx-widget-header"));h._popover.addClass(h.toThemeProperty("jqx-widget jqx-widget-content jqx-rc-all"));if(h.showArrow){h._popover.addClass(h.toThemeProperty("jqx-popover-arrow-"+h.position))}if(h.rtl){j.addClass(h.toThemeProperty("jqx-rtl"));j.css("direction","rtl");i.css("direction","rtl")}if(h.showCloseButton){var d=a('<div class="'+this.toThemeProperty("jqx-window-close-button-background")+'"></div>');var e=a('<div style="width: 100%; height: 100%;" class="'+this.toThemeProperty("jqx-window-close-button")+" "+this.toThemeProperty("jqx-icon-close")+'"></div>');d.append(e);j.append(d);j.css("min-height","16px");d.addClass(h.toThemeProperty("jqx-popover-close-button"));h.closeButton=e;if(h.rtl){d.addClass(h.toThemeProperty("jqx-popover-close-button-rtl"))}}if(h.arrowOffsetValue){if(h.position=="bottom"||h.position=="top"){var b=a(".jqx-popover-arrow").css("margin-left");a(".jqx-popover-arrow").css("margin-left",parseInt(b)+h.arrowOffsetValue)}else{var f=a(".jqx-popover-arrow").css("margin-top");a(".jqx-popover-arrow").css("margin-top",parseInt(f)+h.arrowOffsetValue)}}if(h.width||h.height){h._popover.css("width",h.width);h._popover.css("height",h.height)}},refresh:function(b){this.render()},destroy:function(){var b=this;if(b.length!==0){b._removeHandlers();b._popover.remove();b._removeModalBackground()}},propertyChangedHandler:function(b,c,f,e){var d=this;d.render()},_stickToToggleElement:function(){var g=this;g._popover.css("left","0px");g._popover.css("top","0px");var j=g._toggleElement;var e=j.offset();var b=j.outerHeight();var h=j.outerWidth();var d=g._popover.height();var i=g._popover.width();switch(g.position){case"left":g._popoverTop=e.top-d/2+b/2;g._popoverLeft=e.left-g._popover.outerWidth();break;case"right":g._popoverTop=e.top-d/2+b/2;g._popoverLeft=e.left+h;break;case"top":g._popoverTop=e.top-g._popover.outerHeight();g._popoverLeft=e.left-i/2+h/2;break;case"bottom":g._popoverTop=e.top+b;g._popoverLeft=e.left-i/2+h/2;break}var c=g.offset?g.offset.left:0;var f=g.offset?g.offset.top:0;g._popover.css("top",f+g._popoverTop);g._popover.css("left",c+g._popoverLeft)},open:function(){var c=this;c._stickToToggleElement();function d(){c._popover.show();c._raiseEvent("0");c._isOpen=true}function b(){if(c.initContent&&c._init===false){c.initContent();c._init=true;c._stickToToggleElement()}}if(c._ie7===true){d();b();return}switch(c.animationType){case"fade":c._popover.fadeIn(c.animationOpenDelay,function(){c._raiseEvent("0");b()});break;case"none":d();b();break}c._makeModalBackground()},close:function(){var c=this;function b(){c._popover.hide();c._raiseEvent("1")}if(c._ie7===true){b();return}switch(c.animationType){case"fade":c._popover.fadeOut(c.animationCloseDelay,function(){c._raiseEvent("1")});break;case"none":b();break}c._removeModalBackground()},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this._popover.trigger(e);return b},_makeModalBackground:function(){var b=this;if(b.isModal===true){b.modalBackground=a("<div></div>");b.modalBackground.addClass(this.toThemeProperty("jqx-popover-modal-background"));a(document.body).prepend(b.modalBackground);a(document.body).addClass(b.toThemeProperty("jqx-unselectable"));b.host.addClass(b.toThemeProperty("jqx-selectable"))}},_removeModalBackground:function(){var b=this;if((b.isModal===true)&&(b.modalBackground!==undefined)){b.modalBackground.remove();a(document.body).removeClass(b.toThemeProperty("jqx-unselectable"));b.host.removeClass(b.toThemeProperty("jqx-selectable"))}},_addHandlers:function(){var b=this,c=b.element.id;b.addHandler(a(document),"keydown.jqxPopover"+c,function(d){if(d.keyCode==27){b.close()}});b.addHandler(a(document),"click.jqxPopover"+c,function(d){if(b.closeButton&&d.target==b.closeButton[0]){b.close()}if(b.autoClose===true){if(d.target!=b.element&&!a(d.target).ischildof(b._popover)){if(!b.isModal){b.close()}}}});b.addHandler(a(window),"resize.jqxPopover"+c,function(d){if(b.element.style.display!="none"){b._stickToToggleElement()}});if(b.selector){b.addHandler(b._toggleElement,"click.jqxPopover"+c,function(d){d.stopPropagation();if(b.host.css("display")!="none"){b.close()}else{b.open()}})}},_removeHandlers:function(){var b=this,c=b.element.id;b.removeHandler(a(document),"click.jqxPopover"+c);if(b.selector){b.removeHandler(b._toggleElement,"click.jqxPopover"+c)}b.removeHandler(a(document),"keydown.jqxPopover"+c);b.removeHandler(a(window),"resize.jqxPopover"+c)}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxLayout","",{});a.extend(a.jqx._jqxLayout.prototype,{defineInstance:function(){var b={width:null,height:null,minGroupWidth:100,minGroupHeight:100,layout:[],resizable:true,contextMenu:false,rtl:false,events:["create","resize","pin","unpin"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._originalElement=b.host.clone();b._coordinates=[];b._ie7=a.jqx.browser.msie&&a.jqx.browser.version<8;b._touchDevice=a.jqx.mobile.isTouchDevice();b.render()},render:function(){var e=this,g,b,h;e._tabbedGroupsList=[];if(e.dockingLayout){e._overlayGroups=[];if(e._isInitialized===true){g=e.dockingLayout._overlay.detach();b=e.dockingLayout._dropOverlay.detach();h=e.dockingLayout._edgeOverlays.detach()}}if(e._isInitialized===true){e._detachContent(e.layout[0].items)}e.host.empty();if(!e.host.jqxRibbon){throw new Error("jqxLayout: Missing reference to jqxribbon.js.")}e._setSize();e._addClasses();e._removeHandlers();if(!e._isInitialized){if(e.layout[0].type!=="layoutGroup"){throw new Error('jqxLayout: Invalid layout structure. The first member of the layout array has to be with type: "layoutGroup".')}var f=e.layout[0].items[0].width,d=e.layout[0].items[0].height;if(!(f&&typeof f==="string"&&f.charAt(f.length-1)==="%"||d&&typeof d==="string"&&d.charAt(d.length-1)==="%")){e.layout[0].initialPxWidth=e.host.width();e.layout[0].initialPxHeight=e.host.height();e._pxToPercent(e.layout[0],true)}}e._createLayout(e.layout,e.host,{type:"host"},0);if(e.resizable===true){e._addResizeFeedbacks();e._getGroupCoordinates();e._addHandlers()}if(e.contextMenu===true){e._initMenu()}if(!e._isInitialized){e._isInitialized=true;e._raiseEvent("0");if(e._ie7){a.jqx.utilities.resize(e.host,function(){e.render()})}}else{if(e.dockingLayout){if(!e._ie7){e.host.append(g,b,h)}else{a("body").append(g,b,h)}e.dockingLayout._trackFloatGroups()}}for(var c=0;c<e._tabbedGroupsList.length;c++){e._validateTabbedGroup(e._tabbedGroupsList[c])}},refresh:function(b){if(b!==true){this.render()}},destroy:function(){var b=this;b._mouseupHandler=null;b._docUP=null;b._removeHandlers();if(b.contextMenu===true){b._menu.jqxMenu("destroy")}b.host.remove()},saveLayout:function(){var d=this,b=[];for(var c=0;c<d.layout.length;c++){d._copyItem(d.layout[c],b)}return b},loadLayout:function(c){if(c!==undefined&&a.isEmptyObject(c)===false){var b=this;b.layout=c;b._isInitialized=false;b.render()}},propertyChangedHandler:function(b,d,g,f){if(d!=="layout"){if(f!==g){switch(d){case"width":case"height":b.host.css(d,f);break;case"theme":a.jqx.utilities.setTheme(g,f,b.host);if(b._menuInitialized){a.jqx.utilities.setTheme(g,f,b._menu)}if(b.dockingLayout){if(a("."+b.element.id+"FloatGroup").length>0){a("."+b.element.id+"FloatGroup").jqxWindow({theme:f})}}break;case"layout":case"resizable":b.render();break;case"contextMenu":if(f===true&&!b._menuInitialized){b.render()}break;case"rtl":var c=a("."+b.element.id+"FloatGroup");if(c.length>0){c.jqxWindow({rtl:f})}var e=b.host.add(c);if(f===true){e.find(".jqx-layout-pseudo-window-title-ltr").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-title-ltr")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-title-rtl"));e.find(".jqx-layout-pseudo-window-pin-background-ltr").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-ltr")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-rtl"));e.find(".jqx-layout-pseudo-window-close-background-ltr").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-ltr")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-rtl"));e.find(".jqx-layout-ribbon-header").removeClass(b.toThemeProperty("jqx-layout-ribbon-header-ltr")).addClass(b.toThemeProperty("jqx-layout-ribbon-header-rtl"))}else{e.find(".jqx-layout-pseudo-window-title-rtl").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-title-rtl")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-title-ltr"));e.find(".jqx-layout-pseudo-window-pin-background-rtl").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-rtl")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-ltr"));e.find(".jqx-layout-pseudo-window-close-background-rtl").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-rtl")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-ltr"));e.find(".jqx-layout-ribbon-header").removeClass(b.toThemeProperty("jqx-layout-ribbon-header-rtl")).addClass(b.toThemeProperty("jqx-layout-ribbon-header-ltr"))}e.find(".jqx-ribbon").jqxRibbon({rtl:f});break}}}else{b.render()}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_setSize:function(){var b=this;b.host.css({width:b.width,height:b.height})},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-layout jqx-widget jqx-widget-content jqx-rc-all"))},_getPercentage:function(c,b,d){return(c/b.widget[d]())*100},_addHandlers:function(){var g=this,b=g.element.id,d,j;g._resize={allowed:false};g._clickedToResize=false;function i(l,o){for(var m=0;m<g._coordinates.length;m++){var n=g._coordinates[m];if(l>=n.x.from&&l<=n.x.to&&o>=n.y.from&&o<=n.y.to){if(n.orientation==="horizontal"){g.element.style.cursor="col-resize"}else{g.element.style.cursor="row-resize"}g._resize={allowed:true,widget:n.widget,side:n.side};break}else{g.element.style.cursor="default";g._resize.allowed=false}}}function k(l){if(g._resize.allowed===true){var r=g._resize.widget,w=r.current.parent,x=g._percentToPx("width",r.current.minWidth,w),t=g._percentToPx("height",r.current.minHeight,w),n=w.items[r.current.index-1],q=w.items[r.current.index+1];g._resizeStartPosition={x:l.pageX,y:l.pageY};if(!x){x=g._percentToPx("width",g.minGroupWidth,w)}if(!t){t=g._percentToPx("height",g.minGroupHeight,w)}switch(g._resize.side){case"left":var u=g._percentToPx("width",n.minWidth,w);if(!u){u=g._percentToPx("width",g.minGroupWidth,w)}d=n.widget.offset().left+u;j=r.offset().left+r.width()-x;break;case"right":var m=g._percentToPx("width",q.minWidth,w);if(!m){m=g._percentToPx("width",g.minGroupWidth,w)}d=r.offset().left+x;j=q.widget.offset().left+q.widget.width()-m;break;case"top":var v=g._percentToPx("height",n.minHeight,w);if(!v){v=g._percentToPx("height",g.minGroupHeight,w)}d=n.widget.offset().top+v;j=r.offset().top+r.height()-t;break;case"bottom":var o=g._percentToPx("height",q.minHeight,w);if(!o){o=g._percentToPx("height",g.minGroupHeight,w)}d=r.offset().top+t;j=q.widget.offset().top+q.widget.height()-o;break}var p=function(z,A){A=(typeof A==="undefined")?{top:0,left:0}:A;if(z!==top){var y=z.frameElement.getBoundingClientRect();A.left+=y.left;A.top+=y.top;A=p(z.parent,A)}return A},s;g._clickedToResize=true;g._overlay[0].style.display="block";if(g._resize.side==="left"||g._resize.side==="right"){g._verticalFeedback[0].style.height=g._resize.widget.height()+"px";s=g._ie7?p(window).top:0;g._verticalFeedback.offset({top:g._resize.widget.offset().top-g.host.offset().top+a(window).scrollTop()-s})}else{g._horizontalFeedback[0].style.width=g._resize.widget.width()+"px";s=g._ie7?p(window).left:0;g._horizontalFeedback.offset({left:g._resize.widget.offset().left-g.host.offset().left+a(window).scrollLeft()+1-s})}}}function c(n,o,t,r,m){var p=m.charAt(0).toUpperCase()+m.slice(1),s=o.parent,l,q;if(n){l=g._percentToPx(m,t["min"+p],s);q=parseFloat(t[m])/100*o.parent.widget[m]()-r}else{l=g._percentToPx(m,o["min"+p],s);q=parseFloat(o[m])/100*o.parent.widget[m]()-r}if(!l){l=g._percentToPx(m,g["minGroup"+p],s)}if(q<l){return l}else{return q}}function e(l){if(g._clickedToResize===true){var r=function(){g._clickedToResize=false;g._overlay[0].style.display="none";g._verticalFeedback[0].style.display="none";g._horizontalFeedback[0].style.display="none"},p=l.pageX,o=l.pageY,u=g._resize.widget.current,x=g._resize.widget.offset(),t=x.left,m=x.top,y,v,q,w,s,n;if(l.pageX===g._resizeStartPosition.x&&l.pageY===g._resizeStartPosition.y){r();return}if(g._resize.side==="left"||g._resize.side==="right"){n=u.width;if(g._resize.side==="left"){y=u.parent.items[u.index-1];v=t;q=p<v}else{y=u.parent.items[u.index+1];v=t+u.widget.width();q=p>=v}w=Math.abs(p-v);if(w===0){r();return}if(q){s=g._getPercentage(c(true,u,y,w,"width"),u.parent,"width");w=Math.abs(s-parseFloat(y.width));y.width=s+"%";u.width=parseFloat(u.width)+w+"%"}else{s=g._getPercentage(c(false,u,y,w,"width"),u.parent,"width");w=Math.abs(s-parseFloat(u.width));u.width=s+"%";y.width=parseFloat(y.width)+w+"%"}if(u.width===n){r();return}}else{n=u.height;if(g._resize.side==="top"){y=u.parent.items[u.index-1];v=m;q=o<v}else{y=u.parent.items[u.index+1];v=m+u.widget.height();q=o>=v}w=Math.abs(o-v);if(w===0){r();return}if(q){s=g._getPercentage(c(true,u,y,w,"height"),u.parent,"height");w=Math.abs(s-parseFloat(y.height));y.height=s+"%";u.height=parseFloat(u.height)+w+"%"}else{s=g._getPercentage(c(false,u,y,w,"height"),u.parent,"height");w=Math.abs(s-parseFloat(u.height));u.height=s+"%";y.height=parseFloat(y.height)+w+"%"}if(u.height===n){r();return}}r();g.render();g._raiseEvent("1",{item:u})}}function f(m){if(g._clickedToResize===true){var l=m.pageX,n=m.pageY;if(g._resize.side==="left"||g._resize.side==="right"){g._verticalFeedback[0].style.display="block";if(l<d){l=d;g._verticalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{if(l>j){l=j;g._verticalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{g._verticalFeedback.removeClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}}g._verticalFeedback.offset({left:l-2})}else{g._horizontalFeedback[0].style.display="block";if(n<d){n=d;g._horizontalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{if(n>j){n=j;g._horizontalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{g._horizontalFeedback.removeClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}}g._horizontalFeedback.offset({top:n-2});g._horizontalFeedback.offset({left:g._resize.widget.offset().left+a(window).scrollLeft()+1})}}}g._docUP=e;if(!g._touchDevice){g.addHandler(g.host,"mousemove.jqxLayout"+b,function(m){if(g._clickedToResize===false&&(!g.dockingLayout||g.dockingLayout&&g.dockingLayout._windowDragged!==true)){var l=m.pageX,n=m.pageY;i(l,n)}});g.addHandler(a(document),"mousemove.jqxLayout"+b,function(l){f(l)});g.addHandler(g.host,"mousedown.jqxLayout"+b,function(l){k(l)});g.addHandler(a(document),"mouseup.jqxLayout"+b,function(l){e(l)})}else{g.addHandler(a(document),"touchstart.jqxDockingLayout"+b,function(m){var l=m.originalEvent.touches[0];i(l.pageX,l.pageY);k(l)});g.addHandler(a(document),"touchmove.jqxDockingLayout"+b,function(m){var l=m.originalEvent.touches[0];f(l)});g.addHandler(a(document),"touchend.jqxDockingLayout"+b,function(m){var l=m.originalEvent.changedTouches[0];e(l)})}g.addHandler(a(document),"selectstart.jqxLayout"+b,function(){if(g._clickedToResize===true){return false}});if(g.dockingLayout){try{if(document.referrer!=""||window.frameElement){if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g._mouseupHandler,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g._mouseupHandler)}}}}catch(h){}}},_removeHandlers:function(){var c=this,d=c.element.id;if(!c._touchDevice){c.removeHandler(c.host,"mousemove.jqxLayout"+d);c.removeHandler(a(document),"mousemove.jqxLayout"+d);c.removeHandler(c.host,"mousedown.jqxLayout"+d);c.removeHandler(a(document),"mouseup.jqxLayout"+d)}else{c.removeHandler(a(document),"touchstart.jqxLayout"+d);c.removeHandler(a(document),"touchmove.jqxLayout"+d);c.removeHandler(a(document),"touchend.jqxLayout"+d)}c.removeHandler(a(document),"selectstart.jqxLayout"+d);if(c.dockingLayout){try{if(document.referrer!=""||window.frameElement){if(window.top.document.removeEventListener){window.top.document.removeEventListener("mouseup",c._mouseupHandler,false)}else{if(window.top.document.detachEvent){window.top.document.detachEvent("onmouseup",c._mouseupHandler)}}}}catch(b){}}a("."+d+"FloatGroup").off("close")},_createLayout:function(o,e,k){function m(w){var v=e.children(),x=v.eq(0),i=v.eq(1);x.text(w.title);c=f._originalElement.find('[data-container="'+w.contentContainer+'"]').html();if(c===undefined){c=""}i.html(c)}var f=this,d=k.type;for(var s=0;s<o.length;s++){var p=o[s],b,c,q,l;switch(p.type){case"layoutGroup":b=a("<div></div>");b.addClass(f.toThemeProperty("jqx-layout-group-default"));if(p.orientation==="horizontal"){b.addClass(f.toThemeProperty("jqx-layout-group-default-horizontal"))}e.append(b);if(d==="host"){b.addClass(f.toThemeProperty("jqx-layout-group-root"))}else{var r=k.orientation==="horizontal"?p.width:"100%";var n=k.orientation==="horizontal"?"100%":p.height;b.css({width:r,height:n})}break;case"tabbedGroup":if(d!=="floatGroup"){b=a('<div class="'+f.toThemeProperty("jqx-layout-group-tabbed")+'"><div class="jqx-layout-window-header"><div></div></div><div><div class="jqx-layout-ribbon"><ul class="jqx-layout-ribbon-header jqx-layout-ribbon-header-'+(f.rtl?"rtl":"ltr")+'"></ul><div class="jqx-layout-ribbon-content"></div></div></div></div>');e.append(b);f._addRightClickHandler(b.find(".jqx-layout-window-header"),b)}else{b=a('<div class="jqx-layout-ribbon"><ul class="jqx-layout-ribbon-header jqx-layout-ribbon-header-'+(f.rtl?"rtl":"ltr")+'"></ul><div class="jqx-layout-ribbon-content"></div></div>');e.children().eq(1).append(b)}break;case"documentGroup":case"autoHideGroup":b=a("<div><ul></ul><div></div></div>");e.append(b);if(p.type==="documentGroup"){b.find("ul").addClass("jqx-layout-ribbon-header jqx-layout-ribbon-header-"+(f.rtl?"rtl":"ltr"))}if(f._ie7&&p.type==="autoHideGroup"){b.css("z-index",9999-500*s)}break;case"floatGroup":if(!f._isInitialized){if(!f.dockingLayout){throw new Error("Float groups are only available in the jqxDockingLayout widget. Initialize a jqxDockingLayout (requires jqxdockinglayout.js) instead of a jqxLayout.")}b=a('<div class="'+f.toThemeProperty("jqx-docking-layout-group-floating")+'"><div></div><div></div></div>');e.append(b)}else{return}break;case"layoutPanel":b={};if(d==="tabbedGroup"){var t=e.find(".jqx-layout-window-header").text();if(t===""){e.find(".jqx-layout-window-header div:eq(0)").text(p.title)}l=a("<li>"+p.title+"</li>");e.find(".jqx-layout-ribbon-header").append(l);if(!f._isInitialized){c=f._originalElement.find('[data-container="'+p.contentContainer+'"]').html();if(c===undefined){c=""}}else{c=p.detachedContent}q=a("<div></div>");q.append(c);e.find(".jqx-layout-ribbon-content").append(q);f._addRightClickHandler(l,b)}else{if(d==="autoHideGroup"){a(e.children()[0]).append("<li>"+p.title+"</li>");if(!f._isInitialized){c=f._originalElement.find('[data-container="'+p.contentContainer+'"]').html();if(c===undefined){c=""}}else{c=p.detachedContent}q=a("<div></div>");q.append(c);var h;if(k.alignment==="left"||k.alignment==="right"){h="jqx-layout-group-auto-hide-content-vertical"}else{h="jqx-layout-group-auto-hide-content-horizontal"}q.addClass(f.toThemeProperty(h));var g=a('<div><div class="jqx-layout-window"><div><div>'+p.title+"</div></div></div></div>");g.children().append(q);a(e.children()[1]).append(g);f._addRightClickHandler(g.find(".jqx-layout-window"),b)}else{if(d==="floatGroup"){m(p)}}}break;case"documentPanel":b={};if(d==="floatGroup"){m(p)}else{l=a("<li>"+p.title+"</li>");a(e.children()[0]).append(l);if(!f._isInitialized){c=f._originalElement.find('[data-container="'+p.contentContainer+'"]').html();if(c===undefined){c=""}}else{c=p.detachedContent}q=a("<div></div>");q.append(c);a(e.children()[1]).append(q);f._addRightClickHandler(l,b)}break}if(p.items&&p.items.length>0){var j=b;f._createLayout(p.items,j,p)}f._createWidget(k,e,p,b,s);if(f.dockingLayout&&(p.type==="documentGroup"||p.type==="tabbedGroup"||(p.type==="layoutGroup"&&p.items.length===0))){var u={element:b,width:b.width(),height:b.height(),offset:b.offset(),settings:p};f._overlayGroups.push(u);if(p.parent.type==="floatGroup"){p.parent._overlayGroup=u}}}},_createWidget:function(m,k,i,e,g){var f=this,b=m.orientation==="horizontal"?i.width:"100%",l=m.orientation==="horizontal"?"100%":i.height,d=false;i.parent=m;i.widget=e;i.index=g;if(i.widget){i.widget.current=i}function h(){var o=0;for(var n=0;n<i.items.length;n++){if(i.items[n].selected===true){o=n;break}}i.items[o].selected=true;return o}switch(i.type){case"tabbedGroup":var j,c;if(m.type!=="floatGroup"){j=f._initWindowPanel(e,b,l,i.type);c=e.find(".jqx-layout-ribbon");f._tabbedGroupsList.push(i)}else{c=e}if(f.dockingLayout&&(i.allowDrag!==false)){d=true}c.jqxRibbon({theme:f.theme,width:"100%",height:"100%",position:"bottom",selectionMode:"click",animationType:"none",rtl:f.rtl,_roundedCorners:false,initContent:function(n){var o=i.items[n];if(!o.initialized&&o.initContent){o.initContent(c.find(".jqx-ribbon-content-section").eq(n));o.initialized=true}},_removeByDrag:d,reorder:true});c.on("select",function(p){p.stopPropagation();if(p.target.id===c[0].id){p.stopPropagation();var n=p.args.selectedIndex;i.items[n].selected=true;var o=a(a(c.children()[1]).children()[n]).text();if(m.type!=="floatGroup"){j.html(o)}else{m.widget.find(".jqx-window-header").children().eq(0).html(o)}}});c.on("unselect",function(n){n.stopPropagation();if(n.target.id===c[0].id){i.items[n.args.unselectedIndex].selected=false}});c.on("reorder",function(o){f._swapPanelsInLayout(i.items,o.args.newIndex,o.args.oldIndex);var n=o.args.newIndex;setTimeout(function(){if(i.items[n]){f._addRightClickHandler(a(c.find(".jqx-ribbon-item")[n]),i.items[n].widget)}},200)});if(d){c.on("_removeByDrag",function(n){f.dockingLayout._removeByDragHandler(n,i,c);if(i.parent.type==="floatGroup"&&i.items.length===1){c.jqxRibbon({_removeByDrag:false})}});f.dockingLayout._addTabbedGroupHandlers(i,e)}c.jqxRibbon("selectAt",h());break;case"documentGroup":if(f.dockingLayout&&(i.allowDrag!==false)){d=true}e.jqxRibbon({theme:f.theme,width:b,height:l,_roundedCorners:false,position:"top",selectedIndex:h(),selectionMode:"click",animationType:"none",rtl:f.rtl,initContent:function(n){var o=i.items[n];if(!o.initialized&&o.initContent){o.initContent(e.find(".jqx-ribbon-content-section").eq(n));o.initialized=true}},_removeByDrag:d,reorder:true});e.on("select",function(n){n.stopPropagation();if(n.target.id===e[0].id){i.items[n.args.selectedIndex].selected=true}});e.on("unselect",function(n){n.stopPropagation();if(n.target.id===e[0].id){i.items[n.args.unselectedIndex].selected=false}});e.on("reorder",function(o){f._swapPanelsInLayout(i.items,o.args.newIndex,o.args.oldIndex);var n=o.args.newIndex;setTimeout(function(){f._addRightClickHandler(a(e.find(".jqx-ribbon-item")[n]),i.items[n].widget)},200)});if(d){e.on("_removeByDrag",function(n){f.dockingLayout._removeByDragHandler(n,i,e)})}e.addClass(f.toThemeProperty("jqx-layout-group-document"));break;case"autoHideGroup":e.jqxRibbon({theme:f.theme,width:b,height:l,mode:"popup",popupCloseMode:"click",position:i.alignment,selectionMode:"click",animationType:"none",_roundedCorners:false,rtl:f.rtl,initContent:function(o){var q=i.alignment==="top"||i.alignment==="left"?1:0,p=a(a(e.children()[q]).children()[o]),n=p.find(".jqx-layout-window");n.current=e.current.items[o];n.css("border","none");f._initWindowPanel(n,"100%","100%",i.type);if(!i.items[o].initialized&&i.items[o].initContent){i.items[o].initContent(e.find(".jqx-ribbon-content-section").eq(o).children().children().eq(1));i.items[o].initialized=true}}});e.addClass(f.toThemeProperty("jqx-layout-group-auto-hide"));break;case"floatGroup":e.addClass(f.element.id+"FloatGroup");e.jqxWindow({theme:f.theme,width:i.width,maxWidth:null,height:i.height,maxHeight:null,position:{x:i.position.x,y:i.position.y},showCloseButton:i.allowClose!==false,closeButtonAction:"close",rtl:f.rtl,initContent:function(){var o=e.find(".jqx-window-header");o.on("mousedown",function(){f.dockingLayout._windowDragged=true;if(i._overlayGroup){i._overlayGroup.self=true}f.dockingLayout._interval();if(f.resizable){f._overlay[0].style.display="block"}var r,p,q;if(i.items[0].type==="documentPanel"){r={type:"documentGroup"};p=i.items[0];q=p.title}else{if(i.items[0].type==="layoutPanel"){r={type:"tabbedGroup"};p=i.items[0];q=p.title}else{if(i.items[0].type==="tabbedGroup"){r=i.items[0]}}}f.dockingLayout._draggedWindow={fromGroup:r,fromPanel:p,title:q,element:e};f.dockingLayout._showEdgeOverlays()});o.on("mouseup",function(){f.dockingLayout._hideOverlays()});if(i.items[0].type==="tabbedGroup"){var n=i.items[0].items[e.find(".jqx-ribbon").jqxRibbon("selectedIndex")].title;e.jqxWindow("setTitle",n)}}});e.on("moved",function(n){i.position.x=n.args.x;i.position.y=n.args.y;if(i._overlayGroup){f.dockingLayout._updateOverlayGroup(i._overlayGroup)}f.dockingLayout._windowCreate=false;f.dockingLayout._hideOverlays();f.dockingLayout._clearTextSelection()});e.on("resized",function(n){i.width=n.args.width;i.height=n.args.height;var o=a(this).offset();i.position.x=o.left;i.position.y=o.top;if(i._overlayGroup){f.dockingLayout._updateOverlayGroup(i._overlayGroup)}});e.on("close",function(n){n.stopPropagation();if(n.target.id===e[0].id){if(e.current._overlayGroup){e.current._overlayGroup.removed=true;f.dockingLayout._updateOverlayGroups()}f.dockingLayout._removeFloatGroupObject(e.current)}});break}},_initWindowPanel:function(d,n,m,e){var i=this;d.addClass(i.toThemeProperty("jqx-widget jqx-widget-content jqx-window jqx-layout-pseudo-window jqx-rc-all"));if(!i._ie7){d.css({width:n,height:m})}else{var k=d.parent();if(e==="tabbedGroup"){var b=parseInt(d.css("border-left-width"),10),t=parseInt(d.css("border-right-width"),10),r=parseInt(d.css("border-top-width"),10),g=parseInt(d.css("border-bottom-width"),10),q,s;if(n==="100%"){q=k.width()}else{q=parseFloat(n)/100*k.width()}q-=b+t;if(m==="100%"){s=k.height()}else{s=parseFloat(m)/100*k.height()}s-=r+g;d.css({width:q,height:s})}else{if(e==="autoHideGroup"){d.css({width:n,height:m})}}}var f=i.rtl?"rtl":"ltr";var p=a(d.children()[0]);var u=p.children();u.addClass(i.toThemeProperty("jqx-layout-pseudo-window-title jqx-layout-pseudo-window-title-"+f));p.addClass(i.toThemeProperty("jqx-widget-header jqx-window-header jqx-disableselect jqx-layout-pseudo-window-header"));if(i._ie7){p.css("width",p.width()-parseInt(p.css("padding-left"),10)-parseInt(p.css("padding-right"),10));p.css("height",p.height()-parseInt(p.css("padding-top"),10)-parseInt(p.css("padding-bottom"),10))}var j=0,c,h;if((i.dockingLayout&&d.current.allowClose!==false)||(!i.dockingLayout&&d.current.allowClose===true)){c=a('<div class="'+i.toThemeProperty("jqx-window-close-button-background jqx-layout-pseudo-window-close-background jqx-layout-pseudo-window-close-background-"+f)+'" title="Close"><div class="'+i.toThemeProperty("jqx-window-close-button jqx-icon-close jqx-layout-pseudo-window-close-icon")+'"></div></div>');p.append(c);j+=16}if((e==="tabbedGroup"&&d.current.allowPin!==false)||(e==="autoHideGroup"&&d.current.parent.allowUnpin!==false)){var l;switch(e){case"tabbedGroup":l="jqx-layout-pseudo-window-pin-icon";d.pinned=false;break;case"autoHideGroup":l="jqx-layout-pseudo-window-pinned-icon";d.pinned=true;break}h=a('<div class="'+i.toThemeProperty("jqx-window-close-button-background jqx-layout-pseudo-window-pin-background")+'" title="Auto Hide"><div class="'+i.toThemeProperty(l)+'"></div></div>');if(c){h.addClass(i.toThemeProperty("jqx-layout-pseudo-window-pin-background-"+f))}else{if(i.rtl===false){h.css("right",0)}}p.append(h);j+=16;if(i.dockingLayout&&e==="autoHideGroup"){i.dockingLayout._addAutoHideGroupHandlers(d.current,p,d.current.title,a(d.children()[1]).contents())}}u.css("max-width",p.width()-j);var o=a(d.children()[1]);o.css("height",1+d.height()-p.outerHeight());o.css("margin-left","-1px");o.css("margin-right","-1px");i._addWindowPanelHandlers(c,h,d);return u},_addWindowPanelHandlers:function(g,c,b){var f=this,h=f.element.id,e=b.current,d=e.type;if(g){f.addHandler(g,"click.jqxLayout"+h,function(){if(d==="tabbedGroup"&&e.items.length>1){var i=b.find(".jqx-ribbon-item-selected")[0]._index;f._close(e.items[i])}else{b.fadeOut(function(){f._close(e);b.remove()})}})}if(c){f.addHandler(c,"click.jqxLayout"+h,function(){if(d==="tabbedGroup"&&e.pinValid===true){f._pin(e)}else{if(d==="layoutPanel"){f._unPin(e.parent)}}})}},_getGroupCoordinates:function(){var d=this;d._coordinates=[];function b(e){return e==="layoutGroup"||e==="tabbedGroup"||e==="documentGroup"}function c(n){for(var j=0;j<n.length;j++){var p=n[j];if(b(p.type)){var g=n[j-1],k=n[j+1],h=p.widget.offset(),o,e,m,f,l;if(g&&b(g.type)){if(p.parent.orientation==="horizontal"){o=h.left-5;e=o+10;m=h.top-5;f=m+p.widget.height()+10;l="left"}else{o=h.left-5;e=o+p.widget.width()+10;m=h.top-5;f=m+10;l="top"}d._coordinates.push({x:{from:o,to:e},y:{from:m,to:f},widget:p.widget,side:l,orientation:p.parent.orientation})}if(k&&b(k.type)){if(p.parent.orientation==="horizontal"){o=h.left+p.widget.width()-5;e=o+10;m=h.top-5;f=m+p.widget.height()+10;l="right"}else{o=h.left-5;e=o+p.widget.width()+10;m=h.top+p.widget.height()-5;f=m+10;l="bottom"}d._coordinates.push({x:{from:o,to:e},y:{from:m,to:f},widget:p.widget,side:l,orientation:p.parent.orientation})}if(p.items){c(p.items)}}}}c(d.layout[0].items)},_close:function(e){var g=this,i;e.removed=true;if(e.type==="tabbedGroup"||e.type==="autoHideGroup"||e.type==="documentGroup"){i=e.type==="tabbedGroup"?e.widget.find(".jqx-ribbon"):e.widget;i.jqxRibbon("destroy");if(e.parent.items){var f=e.parent.items[e.index-1],d=e.parent.items[e.index+1],h=e.parent.orientation==="vertical"?"height":"width";var c=function(k){var j=(parseFloat(k[h])+parseFloat(e[h]))+"%";if(k.type==="documentGroup"){if(h==="height"){k.widget.jqxRibbon({height:j})}else{k.widget.jqxRibbon({width:j})}}else{if(k.type==="layoutGroup"||k.type==="tabbedGroup"){k.widget.css(h,j)}}k[h]=j;g._raiseEvent("1",{item:k})};if(f&&f.type!=="autoHideGroup"&&f.type!=="floatGroup"){c(f)}else{if(d&&d.type!=="autoHideGroup"&&d.type!=="floatGroup"){c(d)}}}}else{if(e.type==="layoutPanel"){if(e.parent.type==="tabbedGroup"){i=e.parent.widget.find(".jqx-ribbon");i.jqxRibbon("removeAt",e.index);g._updateLayout(g.layout);if(e.index===0){i.jqxRibbon("selectAt",0)}else{i.jqxRibbon("selectAt",e.index-1)}return}else{if(e.parent.type==="autoHideGroup"){i=e.parent.widget;i.jqxRibbon("removeAt",e.index);var b=i.children("ul").children();if(b.length===0){g._close(i.current)}}}}}g._updateLayout(g.layout);g.render()},_updateLayout:function(b){for(var d=0;d<b.length;d++){if(b[d].removed===true){b.splice(d,1);for(var c=0;c<b.length;c++){b[c].index=c}}else{if(b[d].items){this._updateLayout(b[d].items)}}}},_pin:function(d){var h=this,l=d.parent,k,g,i;if(d.alignment){k=d.alignment}else{var f=Math.abs(d.parent.items.length-1-d.index),c=Math.abs(0-d.index);if(c<f){k=d.parent.orientation==="horizontal"?"left":"top"}else{k=d.parent.orientation==="horizontal"?"right":"bottom"}}var b=k==="top"||k==="left"?d.index+1:d.index-1;if(k==="left"||k==="right"){g="width";i=d.pinnedWidth}else{g="height";i=d.pinnedHeight}if(!i){if(g==="width"){i=(8000/d.parent.widget.width())+"%"}else{if(g==="height"){i=(3000/d.parent.widget.height())+"%"}}}h._detachContent(d.items,true);var j={type:"autoHideGroup",alignment:k,items:d.items};j[g]=i;j["min"+g.charAt(0).toUpperCase()+g.slice(1)]=d["min"+g.charAt(0).toUpperCase()+g.slice(1)];j["unpinned"+g.charAt(0).toUpperCase()+g.slice(1)]=d[g];j.allowDrag=d.allowDrag;j.allowDrop=d.allowDrop;var e=l.items[b];e[g]=parseFloat(e[g])+parseFloat(d[g])-parseFloat(i)+"%";l.items.splice(d.index,0,j);d.removed=true;d.widget.find(".jqx-ribbon").jqxRibbon("destroy");d.widget.remove();h._updateLayout(h.layout);h.render();h._raiseEvent("1",{item:e});h._raiseEvent("2",{item:j})},_unPin:function(f){var h=this,k=f.parent,j=f.alignment,b=j==="top"||j==="left"?f.index+1:f.index-1,m=k.items[b],g,c,e;if(j==="left"||j==="right"){g="width";c=f.unpinnedWidth}else{g="height";c=f.unpinnedHeight}if(!c){c="10%"}h._detachContent(f.items,true);var i={type:"tabbedGroup",alignment:j,items:f.items};i["pinned"+g.charAt(0).toUpperCase()+g.slice(1)]=f[g];i.allowDrag=f.allowDrag;i.allowDrop=f.allowDrop;if(m){var d=parseFloat(m[g])+parseFloat(f[g])-parseFloat(c)+"%",l=m["min"+g.charAt(0).toUpperCase()+g.slice(1)];if(!l){l=h["minGroup"+g.charAt(0).toUpperCase()+g.slice(1)]}if(parseFloat(d)<h._getPercentage(l,k,g)){c=f[g];d=h._getPercentage(l,k,g)+"%";i["min"+g.charAt(0).toUpperCase()+g.slice(1)]=f.widget.width()}else{i["min"+g.charAt(0).toUpperCase()+g.slice(1)]=f["min"+g.charAt(0).toUpperCase()+g.slice(1)]}i[g]=c;m[g]=d;e=m}else{i["min"+g.charAt(0).toUpperCase()+g.slice(1)]=f["min"+g.charAt(0).toUpperCase()+g.slice(1)];i[g]="100%";e=i}k.items.splice(f.index,0,i);f.removed=true;f.widget.jqxRibbon("destroy");h._updateLayout(h.layout);h.render();h._raiseEvent("1",{item:e});h._raiseEvent("3",{item:i})},_copyItem:function(c,g){var f={};for(var e in c){if(c.hasOwnProperty(e)&&e!=="parent"&&e!=="widget"&&e!=="initialized"){if(e==="position"){f.position={x:c.position.x,y:c.position.y}}else{if(e==="items"){var b=[];for(var d=0;d<c.items.length;d++){this._copyItem(c.items[d],b)}f.items=b}else{f[e]=c[e]}}}}g.push(f)},_addResizeFeedbacks:function(){var b=this;b._horizontalFeedback=a('<div class="'+b.toThemeProperty("jqx-fill-state-normal jqx-layout-resize-feedback jqx-layout-resize-feedback-horizontal")+'"></div>');b._verticalFeedback=a('<div class="'+b.toThemeProperty("jqx-fill-state-normal jqx-layout-resize-feedback jqx-layout-resize-feedback-vertical")+'"></div>');b._overlay=a('<div class="'+b.toThemeProperty("jqx-layout-overlay")+'"></div>');if(b.dockingLayout&&b.dockingLayout._windowDragged){b._overlay[0].style.display="block"}b.host.append(b._horizontalFeedback,b._verticalFeedback,b._overlay)},_detachContent:function(h,d){function c(l){if(l.prevent===true){l.prevent=false}else{var i=l.parent.widget.find(".jqx-ribbon-content-section").eq(l.index);f=i.contents().detach();i.remove();l.detachedContent=f;if(d===true){l.prevent=true}}}for(var e=h.length-1;e>=0;e--){var k=h[e],j=k.type,f;if(j==="layoutGroup"||j==="tabbedGroup"||j==="documentGroup"||j==="autoHideGroup"||j==="floatGroup"){if(k.items&&k.items.length>0){this._detachContent(k.items)}}else{if(j==="layoutPanel"){if(k.parent.type==="tabbedGroup"){c(k)}else{if(k.parent.type==="autoHideGroup"){if(k.prevent===true){k.prevent=false}else{if(k.parent.alignment==="left"||k.parent.alignment==="right"){var b=k.parent.widget.find(".jqx-layout-group-auto-hide-content-vertical").eq(e);f=b.contents().detach();b.remove()}else{var g=k.parent.widget.find(".jqx-layout-group-auto-hide-content-horizontal").eq(e);f=g.contents().detach();g.remove()}k.detachedContent=f;if(d===true){k.prevent=true}}}}}else{if(j==="documentPanel"){c(k)}}}}},_pxToPercent:function(f,b){function g(k,j){var h,i;k=parseInt(k,10);if(b){i=e.host[j]()}else{i=f["initialPx"+j.charAt(0).toUpperCase()+j.slice(1)]}h=(100*k/i).toString()+"%";return h}var e=this;for(var d=0;d<f.items.length;d++){var c=f.items[d];if(c.width!==undefined){c.initialPxWidth=c.width;c.width=g(c.width,"width")}else{c.initialPxWidth=f.initialPxWidth}if(c.height!==undefined){c.initialPxHeight=c.height;c.height=g(c.height,"height")}else{c.initialPxHeight=f.initialPxHeight}if(c.unpinnedWidth!==undefined){c.unpinnedWidth=g(c.unpinnedWidth,"width")}if(c.pinnedWidth!==undefined){c.pinnedWidth=g(c.pinnedWidth,"width")}if(c.unpinnedHeight!==undefined){c.unpinnedHeight=g(c.unpinnedHeight,"height")}if(c.pinnedHeight!==undefined){c.pinnedHeight=g(c.pinnedHeight,"height")}if(c.type==="layoutGroup"&&c.items&&c.items.length>0){e._pxToPercent(c,false)}}},_percentToPx:function(d,c,b){if(c===undefined){return undefined}else{if(typeof c!=="string"||(typeof c==="string"&&c.charAt(c.length-1)!=="%")){return parseFloat(c)}else{return parseFloat(c.slice(0,c.length-1))/100*b.widget[d]()}}},_swapPanelsInLayout:function(f,d,c){var e=f[d];f[d]=f[c];f[d].index=d;f[c]=e;f[c].index=c},_initMenu:function(){var c=this;if(!c._menuInitialized){var f=c.element.id,e="",d=function(h,g,i){c._menu.jqxMenu("disable","dockOption"+f,h);c._menu.jqxMenu("disable","autoHideOption"+f,g);c._menu.jqxMenu("disable","closeOption"+f,i)};if(!c.host.jqxMenu){throw new Error("jqxLayout: Missing reference to jqxmenu.js.")}if(c.dockingLayout){e='<li id="floatOption'+f+'">Float</li>'}c._menu=a('<div class="'+c.toThemeProperty("jqx-layout-context-menu jqx-layout-context-menu-"+f)+'"><ul>'+e+'<li id="dockOption'+f+'">Dock</li><li id="autoHideOption'+f+'" style="white-space: nowrap;">Auto Hide</li><li id="closeOption'+f+'">Close</li></ul></div>');a("body").append(c._menu);c._menu.jqxMenu({theme:c.theme,width:100,height:"auto",autoOpenPopup:false,mode:"popup",popupZIndex:99999,rtl:c.rtl});c._menuInitialized=true;c._menu.on("itemclick",function(g){c._handleMenuItemClick(a(g.target).text())});function b(g){if(c.dockingLayout){return g.allowClose===false}else{return g.allowClose!==true}}c._menu.on("shown",function(){switch(c._contextMenuTarget.type){case"tabbedGroup":d(true,c._contextMenuTarget.allowPin===false||c._contextMenuTarget.pinValid===false,b(c._contextMenuTarget));break;case"layoutPanel":var g=c._contextMenuTarget.parent;if(g.type==="tabbedGroup"){d(true,g.allowPin===false||c._isMiddleTabbedGroup(g),b(g))}else{if(g.type==="autoHideGroup"){d(g.allowUnpin===false,true,b(c._contextMenuTarget))}}break;case"documentPanel":d(true,true,b(c._contextMenuTarget));break}})}},_addRightClickHandler:function(d,b){var c=this;if(c.contextMenu===true){c.addHandler(d,"mousedown.jqxLayout"+c.element.id,function(e){if(c.contextMenu===true&&((e.which&&e.which===3)||(e.button&&e.button===2))){var f=a(window).scrollTop(),g=a(window).scrollLeft();c._contextMenuTarget=b.current;c._menu.jqxMenu("open",parseInt(e.clientX,10)+5+g,parseInt(e.clientY,10)+5+f)}});c.addHandler(d,"contextmenu.jqxLayout"+c.element.id,function(){if(c.contextMenu===true){return false}})}},_handleMenuItemClick:function(f){var e=this,c=e._contextMenuTarget.type,b=e._contextMenuTarget.parent;switch(f){case"Float":switch(c){case"tabbedGroup":e.dockingLayout._floatTabbedGroup(e._contextMenuTarget,e._contextMenuTarget.widget);break;case"layoutPanel":if(b.type==="tabbedGroup"){e.dockingLayout._removeByDragHandler(undefined,b,b.widget,e._contextMenuTarget.index,false)}else{if(b.type==="autoHideGroup"){var d=e._contextMenuTarget.parent.widget.find(".jqx-ribbon-content").children().eq(e._contextMenuTarget.index).find(".jqx-layout-window").children().eq(1).contents();e.dockingLayout._floatAutoHideGroup(e._contextMenuTarget,e._contextMenuTarget.title,d)}}break;case"documentPanel":e.dockingLayout._removeByDragHandler(undefined,b,b.widget,e._contextMenuTarget.index,false);break}break;case"Dock":e._unPin(e._contextMenuTarget.parent);break;case"Auto Hide":switch(c){case"tabbedGroup":e._pin(e._contextMenuTarget);break;case"layoutPanel":e._pin(e._contextMenuTarget.parent);break}break;case"Close":switch(c){case"tabbedGroup":e._close(e._contextMenuTarget);break;case"layoutPanel":if(e._contextMenuTarget.parent.items.length>1){e._close(e._contextMenuTarget)}else{e._close(e._contextMenuTarget.parent)}break;case"documentPanel":e._closeDocumentPanel(e._contextMenuTarget.index,e._contextMenuTarget.parent.items,e._contextMenuTarget.parent,e._contextMenuTarget.parent.widget,false);break}}},_closeDocumentPanel:function(c,f,b,j,e){var g=this;if(e===false){j.jqxRibbon("removeAt",c)}if(f.length>1){var h=false;f[c].removed=true;g._updateLayout(f);for(var d=0;d<f.length;d++){if(f[d].selected===true){h=true;break}}setTimeout(function(){if(h===false){if(f[c]){j.jqxRibbon("selectAt",c)}else{j.jqxRibbon("selectAt",c-1)}}else{j.jqxRibbon("render")}},0)}else{g._close(b)}},_isMiddleTabbedGroup:function(b){return !(b.index===0||b.index===b.parent.items.length-1)},_validateTabbedGroup:function(c){var e=this,d=true;d=d&&c.parent.items.length>1;if(d){if(c.parent.items.length===2){var b=c.index===0?1:0;if(c.parent.items[b].type==="autoHideGroup"){d=false}}}if(d){d=d&&!e._isMiddleTabbedGroup(c)}c.pinValid=d;if(d===false){c.widget.find(".jqx-layout-pseudo-window-pin-background").addClass("jqx-fill-state-disabled")}},_mouseupHandler:function(d){var c=this;try{if(c.dockingLayout){c._docUP(d);c.dockingLayout._windowCreate=false;c.dockingLayout._hideOverlays()}}catch(b){}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxDockingLayout","jqxLayout",{});a.extend(a.jqx._jqxDockingLayout.prototype,{defineInstance:function(){if(this.base===null){throw new Error("jqxDockingLayout: Missing reference to jqxlayout.js.")}this.base.dockingLayout=this;var b={events:["float","dock"]};a.extend(true,this,b)},createInstance:function(){var b=this;if(!b.base.host.jqxWindow){throw new Error("jqxDockingLayout: Missing reference to jqxwindow.js.")}b._oldIE=a.jqx.browser.msie&&a.jqx.browser.version<9;b._addClasses();b._createOverlay();b._createEdgeOverlays()},loadLayout:function(b){if(b!==undefined&&a.isEmptyObject(b)===false){var c=this.base,d=c.element.id;if(a("."+d+"FloatGroup").length>0){a("."+d+"FloatGroup").off();a("."+d+"FloatGroup").jqxWindow("destroy")}c.loadLayout(b)}},destroy:function(){var b=this,c=b.base,d=c.element.id;if(a("."+d+"FloatGroup").length>0){a("."+d+"FloatGroup").off();a("."+d+"FloatGroup").jqxWindow("destroy")}b._removeHandlers();c.destroy()},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.base.host.trigger(e);return b},_addClasses:function(){var b=this.base;b.host.addClass(b.toThemeProperty("jqx-docking-layout"))},_removeHandlers:function(){var b=this,c=b.base,d=c.element.id;b.removeHandler(a(document),"mousemove.jqxDockingLayout"+d);b.removeHandler(c.host,"mouseleave.jqxDockingLayout"+d);if(c._touchDevice){b.removeHandler(a(document),"touchmove.jqxDockingLayout"+d);b.removeHandler(a(document),"touchend.jqxDockingLayout"+d)}},_removeByDragHandler:function(b,i,e,g,d){if(g===undefined){g=b.args.draggedIndex}if(d===undefined){d=true}if(!e.hasClass("jqx-ribbon")){e=e.find(".jqx-ribbon")}var f=this,j=i.items,c=j[g],h=i.widget.find(".jqx-ribbon-content-section").eq(g).contents().detach();f._createFloatGroup(b,c.title,h,"documentGroup",i,c);f.base._closeDocumentPanel(g,j,i,e,d)},_floatTabbedGroup:function(h,f,b){var g=this,l,d,j=[],c=f.find(".jqx-ribbon");for(var e=0;e<h.items.length;e++){var m=h.items[e],k=c.find(".jqx-ribbon-content-section").eq(e).contents().detach();if(m.selected){l=m.title;d=e}j.push(k)}g._createFloatGroup(b,l,j,"tabbedGroup",h,null,d);g.base._close(h);if(b){b.target.style.cursor=""}},_addTabbedGroupHandlers:function(h,f){var g=this,c=g.base,b=c.element.id,e=f.find(".jqx-layout-window-header"),i=false,d,k=c._touchDevice?["touchstart","touchend"]:["mousedown","mouseup"];function j(l){if(i===true&&c._clickedToResize!==true){g._floatTabbedGroup(h,f,l);i=false}}g.addHandler(e,k[0]+".jqxDockingLayout"+b,function(l){if(h.allowDrag!==false){i=true;l.target.style.cursor="move";if(c._touchDevice){var m=l.originalEvent.touches[0];d=document.elementFromPoint(m.pageX,m.pageY)}}});g.addHandler(e,k[1]+".jqxDockingLayout"+b,function(l){i=false;l.target.style.cursor=""});if(!c._touchDevice){g.addHandler(e,"mouseleave.jqxDockingLayout"+b,function(l){j({pageX:l.pageX,pageY:l.pageY,target:l.target})})}else{g.addHandler(a(document),"touchmove.jqxDockingLayout"+b,function(l){l.preventDefault();var m=l.originalEvent.touches[0];if(d!==document.elementFromPoint(m.pageX,m.pageY)){j({pageX:m.pageX,pageY:m.pageY,target:d})}})}},_floatAutoHideGroup:function(e,f,d,c){var b=this;b._createFloatGroup(c,f,d.detach(),"autoHideGroup",e,e);b.base._close(e)},_addAutoHideGroupHandlers:function(g,e,i,h){var f=this,c=f.base,b=c.element.id,j=false,d,l=c._touchDevice?["touchstart","touchend"]:["mousedown","mouseup"];function k(m){if(j===true){f._floatAutoHideGroup(g,i,h,m);j=false;m.target.style.cursor=""}}f.addHandler(e,l[0]+".jqxDockingLayout"+b,function(m){if(g.parent.allowDrag!==false){j=true;m.target.style.cursor="move";if(c._touchDevice){var n=m.originalEvent.touches[0];d=document.elementFromPoint(n.pageX,n.pageY)}}});f.addHandler(e,l[1]+".jqxDockingLayout"+b,function(m){j=false;m.target.style.cursor=""});if(!c._touchDevice){f.addHandler(e,"mouseleave.jqxDockingLayout"+b,function(m){k({pageX:m.pageX,pageY:m.pageY,target:m.target})})}else{f.addHandler(a(document),"touchmove.jqxDockingLayout"+b,function(m){m.preventDefault();var n=m.originalEvent.touches[0];if(d!==document.elementFromPoint(n.pageX,n.pageY)){k({pageX:n.pageX,pageY:n.pageY,target:d})}})}},_createFloatGroup:function(B,H,z,f,F,p,e){var l=this,g=l.base,o,n,v,u,D,b,d=a('<div class="'+g.toThemeProperty("jqx-docking-layout-group-floating")+" "+g.element.id+'FloatGroup"><div></div><div></div></div>');a("body").append(d);if(f==="documentGroup"){if(B){o=B.args.x;n=B.args.y}v=F.widget.width();u=F.widget.height();D=z}else{if(f==="tabbedGroup"){if(B){o=B.pageX;n=B.pageY}v=F.widget.width();u=F.widget.height();D="";b=a("<div></div>");var G=a("<div></div>"),E=a('<ul class="jqx-layout-ribbon-header jqx-layout-ribbon-header-'+(l.rtl?"rtl":"ltr")+'"></ul>');for(var C=0;C<F.items.length;C++){var h=F.items[C],t=a("<div></div>");var r=a("<li>"+h.title+"</li>");E.append(r);t.append(z[C]);G.append(t)}b.append(E);b.append(G);D=b}else{if(f==="autoHideGroup"){if(B){o=B.pageX;n=B.pageY}v=F.parent.widget.find(".jqx-ribbon-content").width();u=F.parent.widget.height();D=z}}}if(!o&&!n){var c=g.host.offset();o=(g.host.width()-v)/2+c.left+100;n=(g.host.height()-u)/2+c.top+10}d.on("moved close",function(j){l._hideOverlays();var i=d.current;if(j.type==="moved"){i.position.x=j.args.x;i.position.y=j.args.y;if(i._overlayGroup){l._updateOverlayGroup(i._overlayGroup)}l._clearTextSelection()}else{if(i._overlayGroup){i._overlayGroup.removed=true;l._updateOverlayGroups()}i.removed=true;g._updateLayout(g.layout)}});d.on("resized",function(j){var i=d.current,k=a(this).offset();i.width=j.args.width;i.height=j.args.height;i.position.x=k.left;i.position.y=k.top;if(i._overlayGroup){l._updateOverlayGroup(i._overlayGroup)}});d.jqxWindow({theme:g.theme,title:H,content:D,width:v,maxWidth:null,height:u,maxHeight:null,position:{x:o-100,y:n-10},closeButtonAction:"close",rtl:g.rtl,initContent:function(){var j=d.find(".jqx-window-header"),i;if(f==="autoHideGroup"){i=F.parent}else{i=F}if(B){l._draggedWindow={fromGroup:i,fromPanel:p,title:H,element:d};j.trigger("mousedown",[o,n]);l._windowDragged=true;l._windowCreate=true;l._interval();if(g.resizable){g._overlay[0].style.display="block"}l._showEdgeOverlays()}j.on("mousedown",function(){l._windowDragged=true;if(d.current._overlayGroup){d.current._overlayGroup.self=true}l._interval();if(g.resizable){g._overlay[0].style.display="block"}l._draggedWindow={fromGroup:i,fromPanel:p,title:H,element:d};l._showEdgeOverlays()});j.on("mouseup",function(){l._hideOverlays();l._windowCreate=false});if(f==="tabbedGroup"){b.jqxRibbon({theme:g.theme,width:"100%",height:"100%",position:"bottom",selectedIndex:e,selectionMode:"click",animationType:"none",rtl:g.rtl,reorder:true,_removeByDrag:true});b.on("select",function(k){if(!(k.owner.widgetName&&k.owner.widgetName!=="jqxRibbon")){var x=d.current.items[0].items[k.args.selectedIndex];d.jqxWindow("setTitle",x.title);x.selected=true}});b.on("unselect",function(k){if(!(k.owner.widgetName&&k.owner.widgetName!=="jqxRibbon")){d.current.items[0].items[k.args.unselectedIndex].selected=false}});b.on("reorder",function(k){g._swapPanelsInLayout(d.current.items[0].items,k.args.newIndex,k.args.oldIndex)});b.on("_removeByDrag",function(k){l._removeByDragHandler(k,d.current.items[0],b);if(d.current.items[0].items.length===1){b.jqxRibbon({_removeByDrag:false})}})}}});var m={type:"floatGroup",parent:{type:"host"},widget:d,position:{x:o-100,y:n-10},index:g.layout.length,width:v,height:u},s,q;d.current=m;if(p){m.items=[];g._copyItem(p,m.items);s=m.items;q=m}else{m.items=[{type:"tabbedGroup",items:[],parent:m,widget:b}];s=m.items[0].items;for(var A=0;A<F.items.length;A++){g._copyItem(F.items[A],s)}q=m.items[0]}for(var w=0;w<s.length;w++){s[w].parent=q}g.layout.push(m);l._raiseEvent("0",{item:m});l._trackFloatGroups()},_interval:function(){var c=this;if(c._oldIE===true){var b=c._overlay.width(),d=c._overlay.height();c._oldIEInterval=setInterval(function(){c._checkPosition(b,d);if(c._windowCreate){c._draggedWindow.element.jqxWindow("move",c._x-50,c._y-10)}},1000)}},_createOverlay:function(){var e=this,f=e.base,i=f.element.id;e._overlay=a('<div class="'+f.toThemeProperty("jqx-docking-layout-overlay")+'"></div>');var c=a('<div class="jqx-docking-layout-overlay-section"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-top")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-top")+'"></div></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div></div><div class="jqx-docking-layout-overlay-section"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-left")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-left")+'"></div></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-center")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-inner-square-content jqx-docking-layout-overlay-highlight")+'"></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-right")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-right")+'"></div></div></div></div></div><div class="jqx-docking-layout-overlay-section"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-bottom")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-bottom")+'"></div></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div></div>');e._overlay.append(c);e._overlayCenter=e._overlay.find(".jqx-docking-layout-overlay-square-center").children();e._dropOverlay=a('<div class="'+e.toThemeProperty("jqx-docking-layout-drop-overlay")+'"></div>');if(!f._ie7){f.host.append(e._overlay,e._dropOverlay)}else{a("body").append(e._overlay,e._dropOverlay)}e._addOverlayHandlers();e._squares=e._overlay.find(".jqx-docking-layout-overlay-square-top").add(e._overlay.find(".jqx-docking-layout-overlay-square-left")).add(e._overlay.find(".jqx-docking-layout-overlay-square-center")).add(e._overlay.find(".jqx-docking-layout-overlay-square-right")).add(e._overlay.find(".jqx-docking-layout-overlay-square-bottom"));e._sansCenter=e._squares.not(".jqx-docking-layout-overlay-square-center").find(".jqx-docking-layout-overlay-inner-square");var d=false;function h(k,j,m,l){e._dropOverlay.show();e._dropOverlay[0].style.width=k+"px";e._dropOverlay[0].style.height=j+"px";e._dropOverlay.offset({left:m,top:l})}function g(l){l=l.closest(".jqx-docking-layout-overlay-square");d=l;if(l.find(".jqx-docking-layout-overlay-inner-square").hasClass("jqx-fill-state-disabled")){return}var m=e._dropToGroup.element.width(),k=e._dropToGroup.element.height(),j=e._dropToGroup.element.offset();if(l.hasClass("jqx-docking-layout-overlay-square-top")){h(m,k/2,j.left,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-left")){h(m/2,k,j.left,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-center")&&!e._overlayCenter.hasClass("jqx-docking-layout-square-disabled")){h(m,k,j.left,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-right")){h(m/2,k,j.left+m/2,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-bottom")){h(m,k/2,j.left,j.top+k/2)}else{if(f._touchDevice){e._dropOverlay.hide();d=false}}}}}}}function b(t){var l=e._dropToGroup.settings;if(t.find(".jqx-docking-layout-overlay-inner-square").hasClass("jqx-fill-state-disabled")){e._hideOverlays();return}if(t.hasClass("jqx-docking-layout-overlay-square-top")){e._dropHandler(0,"vertical","height","top")}else{if(t.hasClass("jqx-docking-layout-overlay-square-left")){e._dropHandler(0,"horizontal","width","left")}else{if(t.hasClass("jqx-docking-layout-overlay-square-center")){var p=e._getDraggedWindowInformation(),s=p.title,q=p.content,k,r;if(l.type==="documentGroup"){k=l.widget;r="documentPanel"}else{if(l.type==="tabbedGroup"){if(l.parent.type==="floatGroup"){k=l.widget}else{k=l.widget.find(".jqx-ribbon")}r="layoutPanel"}}if(l.type==="layoutGroup"){e._dropToEmptyLayoutGroup(p)}else{for(var n=0;n<s.length;n++){k.jqxRibbon("addAt",k.find(".jqx-ribbon-content-section").length,{title:s[n],content:q[n]});var m=l.items.length,o={type:r,title:s[n],parent:l,index:m};l.items.push(o);f._addRightClickHandler(a(k.find(".jqx-ribbon-item")[m]),{current:o})}}if(l.parent.type==="floatGroup"){l.widget.jqxRibbon({_removeByDrag:true})}e._clearTextSelection();e._raiseEvent("1",{position:"center",item:l})}else{if(t.hasClass("jqx-docking-layout-overlay-square-right")){e._dropHandler(1,"horizontal","width","right")}else{if(t.hasClass("jqx-docking-layout-overlay-square-bottom")){e._dropHandler(1,"vertical","height","bottom")}}}}}e._removeFloatGroupObject(e._draggedWindow.element.current);e._draggedWindow.element.remove();e._hideOverlays()}if(!f._touchDevice){e.addHandler(e._squares,"mouseenter.jqxDockingLayout"+i,function(){g(a(this))});e.addHandler(e._squares,"mouseleave.jqxDockingLayout"+i,function(){e._dropOverlay.hide()});e.addHandler(e._squares,"mouseup.jqxDockingLayout"+i,function(){b(a(this))})}else{e.addHandler(a(document),"touchmove.jqxDockingLayout"+i,function(j){if(e._windowDragged){j.preventDefault();var k=j.originalEvent.touches[0],l=a(document.elementFromPoint(k.pageX,k.pageY));g(l)}});e.addHandler(a(document),"touchend.jqxDockingLayout"+i,function(){if(d!==false){b(d);d=false}})}},_addOverlayHandlers:function(){var c=this,b=c._overlay.width(),d=c._overlay.height();if(!c.base._touchDevice){c.addHandler(a(document),"mousemove.jqxDockingLayout"+c.base.element.id,function(e){c._x=e.pageX;c._y=e.pageY;if(c._windowDragged&&!c._oldIE){c._checkPosition(b,d);if(c._windowCreate){c._draggedWindow.element.jqxWindow("move",e.pageX-50,e.pageY-10)}}})}else{c.addHandler(a(document),"touchmove.jqxDockingLayout"+c.base.element.id,function(f){var e=f.originalEvent.touches[0];c._x=e.pageX;c._y=e.pageY;if(c._windowDragged&&!c._oldIE){c._checkPosition(b,d);if(c._windowCreate){c._draggedWindow.element.jqxWindow("move",e.pageX-50,e.pageY-10)}}})}},_checkPosition:function(h,n){var g=this,c=g.base,l=g._x,k=g._y;for(var f=0;f<c._overlayGroups.length;f++){var o=c._overlayGroups[f];if(!o.self){var b=o.width,m=o.height,e=o.offset,d=e.left,j=e.top;if(l>=d&&l<=d+b&&k>=j&&k<=j+m){if(((o.settings.type==="documentGroup"&&g._draggedWindow.fromGroup.type==="documentGroup")||(o.settings.type==="tabbedGroup"&&(g._draggedWindow.fromGroup.type==="tabbedGroup"||g._draggedWindow.fromGroup.type==="autoHideGroup"))||(o.settings.type==="layoutGroup"))&&o.settings.allowDrop!==false){g._overlayCenter.removeClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{g._overlayCenter.addClass(c.toThemeProperty("jqx-fill-state-disabled"));if(o.settings.parent.type==="floatGroup"){return}}if(o.settings.parent.type==="floatGroup"){g._sansCenter.addClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{g._sansCenter.removeClass(c.toThemeProperty("jqx-fill-state-disabled"))}g._overlay[0].style.display="block";g._overlay.offset({left:parseInt(d+b/2-h/2,10),top:parseInt(j+m/2-n/2,10)});g._dropToGroup=o;return}}}g._overlay[0].style.display="none"},_dropHandler:function(p,u,w,z){var f=this,d=f.base,h=f._dropToGroup.settings,c=h.parent,m=f._getDraggedWindowInformation(),A=m.title,r=m.content,o=m.groupType,y=m.itemType,l=[],b,v;if(c.orientation===u){b=h.index+p;v={type:o,parent:c};v[w]=f._draggedWindow.element[w]();for(var t=0;t<A.length;t++){l.push({type:y,title:A[t],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(t)})}v.items=l;f._setOptimalDimension(w,v,h);c.items.splice(b,0,v)}else{var x,e;if(w==="width"){x="height";e="minHeight"}else{x="width";e="minWidth"}var g={type:"layoutGroup",orientation:u,parent:h.parent,index:h.index};g[x]=h[x];if(h[e]){g[e]=h[e]}h.parent.items.splice(h.index,1);h.parent.items.splice(h.index,0,g);h.parent=g;v={type:o,parent:g};for(var s=0;s<A.length;s++){l.push({type:y,title:A[s],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(s)})}v.items=l;delete h[x];h[w]="50%";v[w]="50%";g.items=[h];g.items.splice(0+p,0,v)}d.render();var n=v.widget.find(".jqx-ribbon-content-section");for(var q=0;q<n.length;q++){a(n[q]).append(r[q])}f._clearTextSelection();d._raiseEvent("1",{item:h});f._raiseEvent("1",{position:z,item:v})},_setOptimalDimension:function(d,b,c){var e=this,j=d==="width"?"minWidth":"minHeight",g=c[j]||e.base["minGroup"+d.charAt(0).toUpperCase()+d.slice(1)],f;f=parseFloat(c[d])-g/c.parent.widget[d]()*100;var i=b[d]/c.parent.widget[d]()*100;if(f<i){b[d]=parseFloat(c[d])/2+"%";c[d]=parseFloat(c[d])-parseFloat(b[d])+"%";var h=parseInt(parseFloat(c[d])/100*c.parent.widget[d](),10);if(h<g){c[j]=h}}else{b[d]=i+"%";c[d]=parseFloat(c[d])-i+"%"}},_dropToEmptyLayoutGroup:function(e){var f=this,d=f._dropToGroup.settings,h=e.groupType,g={type:h,items:[],parent:d};if(d.orientation==="horizontal"){g.width="100%"}else{if(d.orientation==="vertical"){g.height="100%"}}for(var c=0;c<e.title.length;c++){var l={type:e.itemType,title:e.title[c],parent:g,prevent:true,selected:f._getFloatGroupItemSelection(c)};g.items.push(l)}d.items.push(g);f.base.render();var k=g.widget.find(".jqx-ribbon-content-section");for(var b=0;b<k.length;b++){a(k[b]).append(e.content[b])}},_getFloatGroupItemSelection:function(b){var d=this,c;if(d._draggedWindow.fromPanel){c=true}else{c=d._draggedWindow.element.current.items[0].items[b].selected}return c},_createEdgeOverlays:function(){function b(e){var h=e==="left"||e==="right"?"horizontal":"vertical",g='<div class="'+d.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-mini-window-edge-"+h)+'"><div class="'+d.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header jqx-docking-layout-overlay-inner-square-header-"+h)+'"></div><div class="'+d.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-inner-square-content jqx-docking-layout-overlay-inner-square-content-"+h)+'"></div></div>',j='<div class="'+d.toThemeProperty("jqx-docking-layout-overlay-square-edge-arrow-container jqx-docking-layout-overlay-square-edge-arrow-container-"+h)+'"><div class="'+d.toThemeProperty("jqx-fill-state-pressed jqx-docking-layout-overlay-square-edge-arrow jqx-docking-layout-overlay-square-edge-arrow-"+e)+'"></div></div>',i;if(e==="left"||e==="top"){i=g+j}else{i=j+g}var f=a('<div class="'+d.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-edge")+'"><div class="'+d.toThemeProperty("jqx-docking-layout-overlay-inner-square-edge")+'">'+i+"</div></div>");return f}var c=this,d=c.base;c._leftOverlay=b("left");c._rightOverlay=b("right");c._topOverlay=b("top");c._bottomOverlay=b("bottom");c._edgeOverlays=c._leftOverlay.add(c._rightOverlay).add(c._topOverlay).add(c._bottomOverlay);if(!d._ie7){d.host.append(c._edgeOverlays)}else{a("body").append(c._edgeOverlays)}c._addEdgeOverlaysHandlers()},_addEdgeOverlaysHandlers:function(){function g(k,j,m,l){d._dropOverlay.show();d._dropOverlay[0].style.width=k;d._dropOverlay[0].style.height=j;d._dropOverlay.offset({left:m,top:l})}var d=this,e=d.base,i=e.element.id,c,f=false;function h(j){c=e.host.offset();j=a(j).closest(".jqx-docking-layout-overlay-square-edge")[0];f=j;switch(j){case d._leftOverlay[0]:g("100px",e.host.height()+"px",c.left,c.top);break;case d._rightOverlay[0]:g("100px",e.host.height()+"px",c.left+e.host.width()-100,c.top);break;case d._topOverlay[0]:g(e.host.width()+"px","100px",c.left,c.top);break;case d._bottomOverlay[0]:g(e.host.width()+"px","100px",c.left,c.top+e.host.height()-100);break;default:if(e._touchDevice){f=false}}}function b(j){switch(j){case d._leftOverlay[0]:d._dropToEdge("left",0,"horizontal","width");break;case d._rightOverlay[0]:d._dropToEdge("right",e.layout[0].items.length-1,"horizontal","width");break;case d._topOverlay[0]:d._dropToEdge("top",0,"vertical","height");break;case d._bottomOverlay[0]:d._dropToEdge("bottom",e.layout[0].items.length-1,"vertical","height");break}}if(!e._touchDevice){d.addHandler(d._edgeOverlays,"mouseenter.jqxDockingLayout"+i,function(){h(this)});d.addHandler(d._edgeOverlays,"mouseleave.jqxDockingLayout"+i,function(){d._dropOverlay.hide()});d.addHandler(d._edgeOverlays,"mouseup.jqxDockingLayout"+i,function(){b(this)})}else{d.addHandler(a(document),"touchmove.jqxDockingLayout"+i,function(k){if(d._windowDragged){k.preventDefault();var l=k.originalEvent.touches[0],j=a(document.elementFromPoint(l.pageX,l.pageY));h(j)}});d.addHandler(a(document),"touchend.jqxDockingLayout"+i,function(){if(f!==false){b(f);f=false}})}},_dropToEdge:function(c,d,u,w){var f=this,b=f.base,h=b.layout[0],m=f._getDraggedWindowInformation(),z=m.title,r=m.content,o=m.groupType,y=m.itemType,l=[],v,q;f._removeFloatGroupObject(f._draggedWindow.element.current);if(h.orientation===u){v={type:o,parent:h};v[w]=f._draggedWindow.element[w]();for(var t=0;t<z.length;t++){l.push({type:y,title:z[t],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(t)})}v.items=l;q=h.items[d];f._setOptimalDimension(w,v,q);if(c==="left"||c==="top"){h.items.splice(d,0,v)}else{h.items.push(v)}}else{var x,e;if(w==="width"){x="height";e="minHeight"}else{x="width";e="minWidth"}var g={type:"layoutGroup",orientation:u,parent:h.parent,index:h.index};v={type:o,parent:g};for(var s=0;s<z.length;s++){l.push({type:y,title:z[s],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(s)})}v.items=l;delete h[x];delete v[x];v[w]="50%";h[w]="50%";h.parent=g;if(c==="left"||c==="top"){g.items=[v,h]}else{g.items=[h,v]}b.layout[0]=g;q=h}b.render();var n=v.widget.find(".jqx-ribbon-content-section");for(var p=0;p<n.length;p++){a(n[p]).append(r[p])}f._clearTextSelection();b._raiseEvent("1",{item:q});f._raiseEvent("1",{position:c+"-edge",item:v});f._draggedWindow.element.remove();f._hideOverlays()},_showEdgeOverlays:function(){var h=this,c=h.base,l=c.host.width(),d=c.host.height(),k=c.host.offset(),b=a(),i=true,j=true,e=true,g=true;function f(o){if(!o.items||o.items.length===0){return}var m=o.orientation,p=o.items[0],n=o.items[o.items.length-1];if(m==="horizontal"){if(p.type==="autoHideGroup"){i=i&&false}else{if(p.type==="layoutGroup"){f(p)}}if(n.type==="autoHideGroup"){j=j&&false}else{if(n.type==="layoutGroup"){f(n)}}}else{if(m==="vertical"){if(p.type==="autoHideGroup"){e=e&&false}else{if(p.type==="layoutGroup"){f(p)}}if(n.type==="autoHideGroup"){g=g&&false}else{if(n.type==="layoutGroup"){f(n)}}}}}f(c.layout[0]);if(i){b=b.add(h._leftOverlay)}if(j){b=b.add(h._rightOverlay)}if(e){b=b.add(h._topOverlay)}if(g){b=b.add(h._bottomOverlay)}b.show();h._leftOverlay.offset({left:k.left+5,top:k.top+d/2-20});h._rightOverlay.offset({left:k.left+l-40,top:k.top+d/2-20});h._topOverlay.offset({left:k.left+l/2-20,top:k.top+5});h._bottomOverlay.offset({left:k.left+l/2-20,top:k.top+d-40})},_hideOverlays:function(){var b=this,c=b.base;b._windowDragged=false;if(b._oldIE===true){clearInterval(b._oldIEInterval)}if(c.resizable){setTimeout(function(){b.base._overlay[0].style.display="none"},0)}b._overlay.hide();b._edgeOverlays.hide();b._dropOverlay.hide()},_getDraggedWindowInformation:function(){var f=this,h=[],e=[],b,g;if(f._draggedWindow.fromPanel){h.push(f._draggedWindow.title);e.push(f._draggedWindow.element.find(".jqx-window-content").contents().detach())}else{for(var d=0;d<f._draggedWindow.element.current.items[0].items.length;d++){var c=f._draggedWindow.element.current.items[0].items[d];h.push(c.title);e.push(f._draggedWindow.element.find(".jqx-ribbon-content-section").eq(d).contents().detach())}}if(f._draggedWindow.fromGroup.type==="documentGroup"){b="documentGroup";g="documentPanel"}else{b="tabbedGroup";g="layoutPanel"}return{title:h,content:e,groupType:b,itemType:g}},_removeFloatGroupObject:function(c){var b=this.base;c.removed=true;b._updateLayout(b.layout)},_trackFloatGroups:function(){var f=this,g=f.base;for(var d=1;d<g.layout.length;d++){var b=g.layout[d];if(b.items[0].type==="tabbedGroup"){var c=b.items[0].widget,e={element:c,width:c.width(),height:c.height(),offset:c.offset(),settings:b.items[0]};b._overlayGroup=e;g._overlayGroups.push(e)}}},_updateOverlayGroup:function(c){if(c){var b=c.element;c.width=b.width();c.height=b.height();c.offset=b.offset();c.self=false}},_updateOverlayGroups:function(){var d=this.base._overlayGroups;for(var b=d.length-1;b>=0;b--){var c=d[b];if(c.removed===true){d.splice(b,1)}}},_clearTextSelection:function(){if(window.getSelection){if(window.getSelection().empty){window.getSelection().empty()}else{if(window.getSelection().removeAllRanges){window.getSelection().removeAllRanges()}}}else{if(document.selection){document.selection.empty()}}}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxResponsivePanel","",{});a.extend(a.jqx._jqxResponsivePanel.prototype,{defineInstance:function(){var b={width:null,height:null,collapseBreakpoint:1000,collapseWidth:null,toggleButton:null,toggleButtonSize:30,animationType:"fade",animationDirection:"left",animationShowDelay:"fast",animationHideDelay:"fast",autoClose:true,initContent:null,_collapsed:false,_opened:false,_init:false,_ie7:(a.jqx.browser.msie&&a.jqx.browser.version<8),events:["collapse","expand","open","close"]};a.extend(true,this,b)},createInstance:function(){var b=this;if(b.initContent&&b._init===false){b.initContent();b._init=true}b._render(true)},_render:function(c){var d=this;if(c===true&&d.toggleButton){d._toggleButton=a(d.toggleButton);if(d._toggleButton.length===0){throw new Error('jqxResponsivePanel: Invalid toggleButton selector: "'+d.toggleButton+'".')}var b=a('<div class="'+d.toThemeProperty("jqx-menu-minimized-button")+" "+d.toThemeProperty("jqx-responsive-panel-button-inner")+'"></div>');d._toggleButton.append(b)}d._setSize();d._addClasses();if(c===false){d._removeHandlers()}d._addHandlers();d._checkWindowSize()},render:function(){this._render(false)},refresh:function(b){if(b!==true){this._checkWindowSize()}},destroy:function(b){var c=this;c._removeHandlers();c.host.remove();if(b!==true&&c.toggleButton){c._toggleButton.remove()}},propertyChangedHandler:function(b,c,e,d){if(d!==e&&c!=="toggleButton"&&c!=="initContent"){switch(c){case"width":case"height":b.host.css(c,d);break;case"collapseBreakpoint":b._checkWindowSize();break;case"toggleButtonSize":if(b.toggleButton){b._toggleButton.css({width:d,height:d})}break;default:b.render()}}},open:function(){var b=this;if(b._collapsed===true&&b._opened===false){function d(){b.host.show();b._opened=true;b._raiseEvent("2");if(b.initContent&&b._init===false){b.initContent();b._init=true}}if(b._ie7===true){d();return}switch(b.animationType){case"fade":b.host.fadeIn(b.animationShowDelay,function(){b._raiseEvent("2");b._opened=true;if(b.initContent&&b._init===false){b.initContent();b._init=true}});break;case"slide":var c=b.animationDirection;if(c==="top"){c="up"}else{if(c==="bottom"){c="down"}}b._slide(b.host,{mode:"show",direction:c,duration:b.animationShowDelay});break;case"none":d();break}}},close:function(){var b=this;if(b._collapsed===true&&b._opened===true){if(b._ie7===true){b.host.hide();b._opened=false;b._raiseEvent("3");return}switch(b.animationType){case"fade":b.host.fadeOut(b.animationHideDelay,function(){b._opened=false;b._raiseEvent("3")});break;case"slide":var c=b.animationDirection;if(c==="top"){c="up"}else{if(c==="bottom"){c="down"}}b._slide(b.host,{mode:"hide",direction:c,duration:b.animationHideDelay});break;case"none":b.host.hide();b._opened=false;b._raiseEvent("3");break}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_setSize:function(){var b=this;b.host.css("width",b.width);b.host.css("height",b.height);if(b.toggleButton){b._toggleButton.css({width:b.toggleButtonSize,height:b.toggleButtonSize})}},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-responsive-panel"));b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-rc-all"));if(b.toggleButton){b._toggleButton.addClass(b.toThemeProperty("jqx-responsive-panel-button"));b._toggleButton.addClass(b.toThemeProperty("jqx-fill-state-normal"));b._toggleButton.addClass(b.toThemeProperty("jqx-rc-all"))}},isCollapsed:function(){return this._collapsed},isOpened:function(){return this._opened},_addHandlers:function(){var b=this,c=b.element.id;b.addHandler(b.host,"click.jqxResponsivePanel"+c,function(d){d.stopPropagation()});b.addHandler(a(document),"click.jqxResponsivePanel"+c,function(){if(b._collapsed===true&&b.autoClose===true){b.close()}});b.addHandler(a(window),"resize.jqxResponsivePanel"+c,function(){setTimeout(function(){b._checkWindowSize()},0)});if(b.toggleButton){b.addHandler(b._toggleButton,"mouseenter.jqxResponsivePanel"+c,function(){b._toggleButton.addClass(b.toThemeProperty("jqx-fill-state-hover"))});b.addHandler(b._toggleButton,"mouseleave.jqxResponsivePanel"+c,function(){b._toggleButton.removeClass(b.toThemeProperty("jqx-fill-state-hover"))});b.addHandler(b._toggleButton,"mousedown.jqxResponsivePanel"+c,function(){b._toggleButton.addClass(b.toThemeProperty("jqx-fill-state-pressed"))});b.addHandler(a(document),"mouseup.jqxResponsivePanel"+c,function(){b._toggleButton.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))});b.addHandler(b._toggleButton,"click.jqxResponsivePanel"+c,function(d){d.stopPropagation();if(b._opened===true){b.close()}else{b.open()}})}},_removeHandlers:function(){var b=this,c=b.element.id;b.removeHandler(b.host,"click.jqxResponsivePanel"+c);b.removeHandler(a(document),"click.jqxResponsivePanel"+c);b.removeHandler(a(window),"resize.jqxResponsivePanel"+c);if(b.toggleButton){b.removeHandler(b._toggleButton,"mouseenter.jqxResponsivePanel"+c);b.removeHandler(b._toggleButton,"mouseleave.jqxResponsivePanel"+c);b.removeHandler(b._toggleButton,"mousedown.jqxResponsivePanel"+c);b.removeHandler(a(document),"mouseup.jqxResponsivePanel"+c);b.removeHandler(b._toggleButton,"click.jqxResponsivePanel"+c)}},_checkWindowSize:function(){var c=this;var b=this.host.parent().width();if(c._collapsed===false&&b<=c.collapseBreakpoint){if(c.toggleButton){c._toggleButton.show()}if(c._opened===false){c.host.hide()}c.host.removeClass(c.toThemeProperty("jqx-responsive-panel-expanded"));c.host.addClass(c.toThemeProperty("jqx-responsive-panel-collapsed"));c._collapsed=true;c._raiseEvent("0");if(c.collapseWidth){c.host.width(c.collapseWidth)}c.host.trigger("resize")}else{if(c._collapsed===true&&b>c.collapseBreakpoint){if(c.collapseWidth){c.host.width(c.width)}if(c.toggleButton){c._toggleButton.hide()}if(c._opened===false){c.host.show()}c.host.removeClass(c.toThemeProperty("jqx-responsive-panel-collapsed"));c.host.addClass(c.toThemeProperty("jqx-responsive-panel-expanded"));c._collapsed=false;c._raiseEvent("1");if(c.initContent&&c._init===false){c.initContent();c._init=true}c.host.trigger("resize")}}},_slide:function(f,e){var m=this;if(!m.activeAnimations){m.activeAnimations=[]}if(m.activeAnimations.length>0){for(var k=0;k<m.activeAnimations.length;k++){m.activeAnimations[k].clearQueue();m.activeAnimations[k].finish()}}else{f.clearQueue();f.finish()}var h="ui-effects-";var d={save:function(s,t){for(var o=0;o<t.length;o++){if(t[o]!==null&&s.length>0){s.data(h+t[o],s[0].style[t[o]])}}},restore:function(s,u){var t,o;for(o=0;o<u.length;o++){if(u[o]!==null){t=s.data(h+u[o]);if(t===undefined){t=""}s.css(u[o],t)}}},createWrapper:function(o){if(o.parent().is(".ui-effects-wrapper")){return o.parent()}var s={width:o.outerWidth(true),height:o.outerHeight(true),"float":o.css("float")},v=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i={width:o.width(),height:o.height()},u=document.activeElement;try{u.id}catch(t){u=document.body}o.wrap(v);if(o[0]===u||a.contains(o[0],u)){a(u).focus()}v=o.parent();if(o.css("position")==="static"){v.css({position:"relative"});o.css({position:"relative"})}else{a.extend(s,{position:o.css("position"),zIndex:o.css("z-index")});a.each(["top","left","bottom","right"],function(w,x){s[x]=o.css(x);if(isNaN(parseInt(s[x],10))){s[x]="auto"}});o.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}o.css(i);return v.css(s).show()},removeWrapper:function(i){var o=document.activeElement;if(i.parent().is(".ui-effects-wrapper")){i.parent().replaceWith(i);if(i[0]===o||a.contains(i[0],o)){a(o).focus()}}return i}};var p=["position","top","bottom","left","right","width","height"],l=e.mode,r=l==="show",q=e.direction||"left",g=(q==="up"||q==="down")?"top":"left",c=(q==="up"||q==="left"),b,j={};d.save(f,p);f.show();b=e.distance||f[g==="top"?"outerHeight":"outerWidth"](true);d.createWrapper(f).css({overflow:"hidden"});if(r){f.css(g,c?(isNaN(b)?"-"+b:-b):b)}j[g]=(r?(c?"+=":"-="):(c?"-=":"+="))+b;var n=function(){f.clearQueue();f.stop(true,true)};m.activeAnimations.push(f);f.animate(j,{duration:e.duration,easing:e.easing,complete:function(){m.activeAnimations.pop(f);if(l==="show"){m._opened=true;m._raiseEvent("2");if(m.initContent&&m._init===false){m.initContent();m._init=true}}else{if(l==="hide"){f.hide();m._opened=false;m._raiseEvent("3")}}d.restore(f,p);d.removeWrapper(f)}});return n}})})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxTagCloud","",{});a.extend(a.jqx._jqxTagCloud.prototype,{defineInstance:function(){var b={width:null,height:null,source:null,disabled:false,rtl:false,valueMember:"value",displayMember:"label",urlMember:"url",urlBase:"",autoBind:true,takeTopWeightedItems:false,displayLimit:null,minValueToDisplay:0,maxValueToDisplay:0,minFontSize:10,maxFontSize:24,fontSizeUnit:"px",displayValue:false,sortBy:"none",alterTextCase:"none",sortOrder:"ascending",textColor:null,minColor:null,maxColor:null,tagRenderer:null};a.extend(true,this,b);return b},createInstance:function(){var b=this;b.render();b.dataBind(b.source,true)},dataBind:function(b,c){var h=this;h.records=[];var e=b._source?true:false;var i;if(e){i=b;b=b._source}else{b.datafields=[{name:h.displayMember},{name:h.valueMember},{name:h.urlMember}];i=new a.jqx.dataAdapter(b,{autoBind:true})}var j=function(){if(b.type!==undefined){i._options.type=b.type}if(b.formatdata!==undefined){i._options.formatData=b.formatdata}if(b.contenttype!==undefined){i._options.contentType=b.contenttype}if(b.async!==undefined){i._options.async=b.async}};var f=function(k){k._setSourceData(i);k._raiseEvent(1,{records:k.records});k._renderTags()};j(this);switch(b.datatype){case"local":case"array":default:if(b.localdata!=null||a.isArray(b)){i.unbindBindingUpdate(h.element.id);if(h.autoBind||(!h.autoBind&&!c)){i.dataBind()}f(h);i.bindBindingUpdate(h.element.id,function(k){f(h,k)})}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(b.localdata!=null){i.unbindBindingUpdate(h.element.id);if(h.autoBind||(!h.autoBind&&!c)){i.dataBind()}f(h);i.bindBindingUpdate(h.element.id,function(){f(h)});return}var d={};if(i._options.data){a.extend(i._options.data,d)}else{if(b.data){a.extend(d,b.data)}i._options.data=d}var g=function(){f(h)};i.unbindDownloadComplete(h.element.id);i.bindDownloadComplete(h.element.id,g);if(h.autoBind||(!h.autoBind&&!c)){i.dataBind()}}h._raiseEvent(2,{records:h.records})},destroy:function(){var b=this;b.removeHandler(b._el,"keydown");b.removeHandler(b._el,"click");b.host.empty();b.host.remove()},findTagIndex:function(c){var d=this;for(var b=0;b<d.records.length;b++){if(d.records[b][d.displayMember]===c){return d.records[b].index}}return -1},getHiddenTagsList:function(){return this.hiddenList.slice()},getRenderedTags:function(){return this.renderedData.slice()},getTagsList:function(){return this.records.slice()},insertAt:function(b,e){var d=this;e.index=b;if(e[this.displayMember]===undefined){throw new Error("jqxTagCloud: Insert tag requires a valid displayMember field to be supplied in the parameter")}var f=e[d.valueMember]!==undefined?parseFloat(e[d.valueMember]):0;e[d.valueMember]=isNaN(f)?0:f;if(d.source.insertTag&&typeof(d.source.insertTag)==="function"){d.source.insertTag(b,e,function(h){if(h){d.records.splice(b,0,e);for(var g=b+1;g<d.records.length;g++){d.records[g].index+=1}for(g=0;g<d.hiddenList.length;g++){if(d.hiddenList[g]>=b){d.hiddenList[g]++}}d._renderTags()}})}else{d.records.splice(b,0,e);for(var c=b+1;c<d.records.length;c++){d.records[c].index+=1}for(c=0;c<d.hiddenList.length;c++){if(d.hiddenList[c]>=b){d.hiddenList[c]++}}d._renderTags()}},updateAt:function(b,d){var c=this;if(d[this.displayMember]===undefined){throw new Error("jqxTagCloud: Update tag requires a valid displayMember field to be supplied in the parameter")}d.index=b;d.uid=c.records[b].uid;if(c.source.updateTag&&typeof(c.source.updateTag)==="function"){c.source.updateTag(b,d,function(e){if(e){a.each(d,function(f,g){c.records[b][f]=g});c._renderTags()}})}else{a.each(d,function(e,f){c.records[b][e]=f});c._renderTags()}},removeAt:function(b){var d=this;if(d.source.deleteTag&&typeof(d.source.deleteTag)==="function"){d.source.deleteTag(b,function(f){if(f){d.records.splice(b,1);for(var e=b;e<d.records.length;e++){d.records[e].index-=1}for(e=0;e<d.hiddenList.length;e++){if(d.hiddenList[e]>b){d.hiddenList[e]--}else{if(d.hiddenList[e]===b){d.hiddentList.splice(b,1)}}}}})}else{d.records.splice(b,1);for(var c=b;c<d.records.length;c++){d.records[c].index-=1}for(c=0;c<d.hiddenList.length;c++){if(d.hiddenList[c]>b){d.hiddenList[c]--}else{if(d.hiddenList[c]===b){d.hiddentList.splice(b,1)}}}}d._renderTags()},hideItem:function(b){var d=this;if(!(typeof(b)!=="number"||d.hiddenList.indexOf(b)!==-1)){d.hiddenList.push(b);var e=-1;for(var c=0;c<d.renderedData.length;c++){if(d.renderedData[c].index===b){e=c}}if(e!==-1){a(d._el).find("li")[e].style.display="none"}}},showItem:function(b){var d=this;if(d.hiddenList.indexOf(b)!==-1){var e=-1;for(var c=0;c<d.renderedData.length;c++){if(d.renderedData[c].index===b){e=c}}if(e!==-1){a(d._el).find("li")[e].style.display=""}d.hiddenList.splice(d.hiddenList.indexOf(b),1)}},render:function(){var b=this;b._updateSize();b.renderedData=[];b._el=a("<ul>");b.host.addClass(b.toThemeProperty("jqx-widget jqx-tag-cloud"));b._setRtl();b.host.append(b._el);b.focusedItem=null;b.minColor=b._parseColor(b.minColor);b.maxColor=b._parseColor(b.maxColor);b.displayLimit=parseInt(b.displayLimit);if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}b.addHandler(b._el,"click",function(d){if(a(document.activeElement).parents("#"+b._el[0].parentElement.id).length){}else{if(b.focusedItem!=null){a(b.focusedItem).focus()}else{a(b._el).find("a")[0].focus();b.focusedItem=document.activeElement}}if(b.disabled){d.preventDefault()}if(d.target.tagName.toLowerCase()==="a"){d.target.focus();b.focusedItem=document.activeElement}if(d.target.tagName.toLowerCase()==="li"){a(d.target).find("a").focus();b.focusedItem=document.activeElement}var c=a(d.target).closest("li").index();if(c!==-1){b._raiseEvent(0,{label:b.renderedData[c][b.displayMember],url:b.renderedData[c][b.urlMember],value:b.renderedData[c][b.valueMember],visibleIndex:c,index:b.renderedData[c].index,target:a(d.target).closest("li")[0],originalEvent:d})}});b._addKeyboardSupport()},resize:function(c,b){var d=this;d.width=c;d.height=b;d._updateSize()},propertyChangedHandler:function(b,c,f,e){var d=this;if(c==="source"){d.dataBind(b.source)}if(c==="displayLimit"){d[c]=parseInt(e)}if(c==="minColor"||c==="maxColor"){d[c]=d._parseColor(e)}if(c==="rtl"){d._setRtl();return}if(c==="width"||c==="height"){d._updateSize();return}if(c==="textColor"){if(!(d.minColor&&d.maxColor)){d._updateColor();return}}d._renderTags()},_alterCase:function(d){var c=this;function e(f){return f.replace(/\w\S*/g,function(g){return g.charAt(0).toUpperCase()+g.substr(1).toLowerCase()})}if(c.alterTextCase!=="none"){switch(c.alterTextCase){case"allLower":for(var b=0;b<d.length;b++){d[b][c.displayMember]=d[b][c.displayMember].toString().toLowerCase()}break;case"allUpper":for(b=0;b<d.length;b++){d[b][c.displayMember]=d[b][c.displayMember].toString().toUpperCase()}break;case"firstUpper":for(b=0;b<d.length;b++){d[b][c.displayMember]=d[b][c.displayMember].toString().toLowerCase();d[b][c.displayMember]=d[b][c.displayMember].substr(0,1).toUpperCase()+d[b][c.displayMember].substr(1)}break;case"titleCase":for(b=0;b<d.length;b++){d[b][c.displayMember]=e(d[b][c.displayMember].toString())}break;default:throw new Error("jqxTagCloud: Invalid alterTextCase value. Possible values: 'none', 'allLower', 'allUpper', 'firstUpper', 'titleCase'")}}return d},_addKeyboardSupport:function(){var b=this;b.addHandler(b._el,"keydown",function(c){if(c.keyCode==39){a("a:focus").closest("li").next().find("a").focus();b.focusedItem=document.activeElement}if(c.keyCode==37){a("a:focus").closest("li").prev().find("a").focus();b.focusedItem=document.activeElement}})},_renderTags:function(){var c=this;var f=c.records.slice();a.each(c.records,function(i,j){if(j[c.displayMember]===undefined){throw new Error("jqxTagCloud: 'label' property must be specified for every element.")}});f=c._filter(f);f=c._sort(f);f=c._alterCase(f);c._el.empty();if(f.length===0){return}var h=c._getMaxValue(f);var e=c._getMinValue(f);var g=h-e;for(var b=0;b<f.length;b++){var d=c._prepareTag(f[b],e,g);c._el.append(d);if(c.hiddenList.indexOf(f[b].index)!=-1){d[0].style.display="none"}}c.renderedData=f;c.focusedItem=null},_prepareTag:function(k,q,o){var m=this;if(!o){o=1}var f=a("<li>");var l="";if(null!==m.tagRenderer&&typeof(m.tagRenderer)==="function"){l=m.tagRenderer.apply(m,arguments)}else{l=k[m.displayMember]+(m.displayValue?"("+k[m.valueMember]+")":"")}l=a('<a rel="tag">').append(l);var g="javascript:void(0)";if(undefined!==k[m.urlMember]){g=(m.urlBase!=null?m.urlBase:"")+k[m.urlMember]}l.attr("href",g);f.append(l);f.addClass(m.toThemeProperty("jqx-tag-cloud-item"));var s=+m.minFontSize+((m.maxFontSize-m.minFontSize)*((k[m.valueMember]-q)/o));f[0].style.fontSize=s+m.fontSizeUnit;if(m.minColor&&m.maxColor){var p=m.minColor.split("(")[1].split(")")[0];p=p.split(",");var h=parseInt(p[0]);var j=parseInt(p[1]);var r=parseInt(p[2]);var i=parseFloat(p[3]);p=m.maxColor.split("(")[1].split(")")[0];p=p.split(",");var b=parseInt(p[0]);var e=parseInt(p[1]);var n=parseInt(p[2]);var d=parseFloat(p[3]);h+=Math.floor(((k[m.valueMember]-q)/o)*(b-h));j+=Math.floor(((k[m.valueMember]-q)/o)*(e-j));r+=Math.floor(((k[m.valueMember]-q)/o)*(n-r));i+=((k[m.valueMember]-q)/o)*(d-i);f[0].style.color="rgba("+h+","+j+","+r+","+i+")";f.find("a")[0].style.color="inherit"}else{if(m.textColor!==null){f[0].style.color=m.textColor;f.find("a")[0].style.color="inherit"}}return f},_parseColor:function(e){function k(b){var c={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};if(typeof c[b.toLowerCase()]!="undefined"){return c[b.toLowerCase()]}return false}var f=a("<span>").css("color",e);e=f.css("color");var i,h,d;if(e.substr(0,4)==="rgba"){return e}else{if(e.substr(0,3)==="rgb"){var j=e.split("(")[1].split(")")[0];j=j.split(",");i=parseInt(j[0]);h=parseInt(j[1]);d=parseInt(j[2]);return("rgba("+i+","+h+","+d+",1)")}else{if(e.substr(0,1)==="#"&&e.length===7){i=parseInt(e.substr(1,2),16);h=parseInt(e.substr(3,2),16);d=parseInt(e.substr(5,2),16);return("rgba("+i+","+h+","+d+",1)")}else{if(e.substr(0,1)==="#"&&e.length===4){i=parseInt(e.substr(1,1)+e.substr(1,1),16);h=parseInt(e.substr(2,1)+e.substr(2,1),16);d=parseInt(e.substr(3,1)+e.substr(3,1),16);return("rgba("+i+","+h+","+d+",1)")}else{if(e=k(e)){i=parseInt(e.substr(1,2),16);h=parseInt(e.substr(3,2),16);d=parseInt(e.substr(5,2),16);return("rgba("+i+","+h+","+d+",1)")}}}}}return e},_events:["itemClick","bindingUpdateComplete","bindingComplete"],_raiseEvent:function(d,b){var c=this._events[d],e=a.Event(c);e.args=b;return this.host.trigger(e)},_filter:function(d){var c=this;if(c.minValueToDisplay!=0){for(var b=0;b<d.length;){if(d[b][c.valueMember]<c.minValueToDisplay){d.splice(b,1)}else{b++}}}if(c.maxValueToDisplay!=0){for(var b=0;b<d.length;){if(d[b][c.valueMember]>c.maxValueToDisplay){d.splice(b,1)}else{b++}}}if(c.displayLimit!=null&&!isNaN(c.displayLimit)){if(c.takeTopWeightedItems===true){d.sort(function(f,e){if(f[c.valueMember]<e[c.valueMember]){return 1}if(f[c.valueMember]>e[c.valueMember]){return -1}return 0});d=d.slice(0,c.displayLimit);d.sort(function(f,e){if(f.index<e.index){return -1}if(f.index>e.index){return 1}return 0})}else{d=d.slice(0,c.displayLimit)}}return d},_sort:function(c){var b=this;if(b.sortBy!=="none"){if(b.sortBy==="label"){c.sort(function(e,d){if(e[b.displayMember]<d[b.displayMember]){return -1}if(e[b.displayMember]>d[b.displayMember]){return 1}return 0})}else{if(b.sortBy==="value"){c.sort(function(e,d){if(e[b.valueMember]<d[b.valueMember]){return -1}if(e[b.valueMember]>d[b.valueMember]){return 1}return 0})}else{throw new Error("jqxTagCloud: sortBy option needs to be either 'none' or 'label' or 'value'")}}if(b.sortOrder==="ascending"){return c}else{if(b.sortOrder==="descending"){return c.reverse()}else{throw new Error("jqxTagCloud: sortOrder option needs to be either 'ascending' or 'descending'")}}}return c},_getMaxValue:function(e){var d=this;var b=e[0][d.valueMember];for(var c=0;c<e.length;c++){if(b<e[c][d.valueMember]){b=e[c][d.valueMember]}}return b},_getMinValue:function(e){var d=this;var c=e[0][d.valueMember];for(var b=0;b<e.length;b++){if(c>e[b][d.valueMember]){c=e[b][d.valueMember]}}return c},_setSourceData:function(d){var c=this;c.records=d.records;for(var b=0;b<c.records.length;b++){var e=c.records[b][c.valueMember]!==undefined?parseFloat(c.records[b][c.valueMember]):0;c.records[b][c.valueMember]=isNaN(e)?0:e;c.records[b].index=b}c.hiddenList=[]},_updateColor:function(){var b=this;if(b.textColor){a(b._el).find("li").css("color",b.textColor)}},_updateSize:function(){var b=this;if(b.width){b.host.width(b.width)}if(b.height){b.host.height(b.height)}},_setRtl:function(){var b=this;if(b.rtl){b.host.addClass(b.toThemeProperty("jqx-rtl"))}else{b.host.removeClass(b.toThemeProperty("jqx-rtl"))}}})})(jqxBaseFramework);(function(f){f.jqx.timeSpan=function(){var q={ticksPerMillisecond:10000,millisecondsPerTick:1/10000,ticksPerSecond:1000*10000,secondsPerTick:1/(1000*10000),ticksPerMinute:1000*10000*60,minutesPerTick:1/(1000*10000*60),ticksPerHour:1000*10000*3600,hoursPerTick:1/(1000*10000*3600),ticksPerDay:1000*10000*3600*24,daysPerTick:1/(1000*10000*3600*24),millisPerSecond:1000,millisPerMinute:1000*60,millisPerHour:1000*60*60,millisPerDay:1000*60*60*24,_ticks:0};f.extend(true,this,q);var r=this;r.ticks=function(){return r._ticks};r.days=function(){return parseInt(r._ticks/r.ticksPerDay)};r.timeToMS=function(v,z,x,w){var y=v*3600+z*60+x+w/1000;return parseInt(y*r.ticksPerSecond)};r.hours=function(){return parseInt(r._ticks/r.ticksPerHour)%24};r.milliseconds=function(){return parseInt(r._ticks/r.ticksPerMillisecond)%1000};r.minutes=function(){return parseInt(r._ticks/r.ticksPerMinute)%60};r.seconds=function(){return parseInt(r._ticks/r.ticksPerSecond)%60};r.totalDays=function(){return parseInt(r._ticks*r.daysPerTick)};r.totalHours=function(){return parseInt(r._ticks*r.hoursPerTick)};r.totalMilliseconds=function(){var v=r._ticks*r.millisecondsPerTick;return parseInt(v)};r.totalMinutes=function(){return parseInt(r._ticks*r.minutesPerTick)};r.totalSeconds=function(){return parseInt(r._ticks*r.secondsPerTick)};if(arguments.length===1){r._ticks=arguments[0]}else{if(arguments.length===3){r._ticks=r.timeToMS(arguments[0],arguments[1],arguments[2])}else{if(arguments.length===4){var u=arguments[0];var n=arguments[1];var p=arguments[2];var t=arguments[3];var o=0;var s=(u*3600*24+n*3600+p*60+t)*1000+o;r._ticks=s*r.ticksPerMillisecond}else{if(arguments.length===5){var u=arguments[0];var n=arguments[1];var p=arguments[2];var t=arguments[3];var o=arguments[4];var s=(u*3600*24+n*3600+p*60+t)*1000+o;r._ticks=s*r.ticksPerMillisecond}}}}r.add=function(w){var v=r._ticks+w._ticks;var x=new f.jqx.timeSpan(v);return x};r.substract=function(w){var v=_ticks-w._ticks;return new f.jqx.timeSpan(v)};r.duration=function(){if(r._ticks>=0){return new f.jqx.timeSpan(r._ticks)}else{return new f.jqx.timeSpan(-r._ticks)}};r.equals=function(v){return r._ticks==v._ticks};r.valueOf=function(){return r._ticks};r.compare=function(w,v){if(w._ticks>v._ticks){return 1}if(w._ticks<v._ticks){return -1}return 0};r.interval=function(x,y){var w=x*y;var v=w+(x>=0?0.5:-0.5);return new f.jqx.timeSpan(v*r.ticksPerMillisecond)};r.fromDays=function(v){return r.interval(v,r.millisPerDay)};r.fromHours=function(v){return r.interval(v,r.millisPerHour)};r.fromMilliseconds=function(v){return r.interval(v,1)};r.fromMinutes=function(v){return r.interval(v,r.millisPerMinute)};r.fromSeconds=function(v){return r.interval(v,r.millisPerSecond)};r.fromTicks=function(v){return new f.jqx.timeSpan(v)};return r};var g=[{id:"Local",offset:0,offsetHours:0,displayName:"",supportsDaylightSavingTime:false},{id:"Dateline Standard Time",offset:-720,offsetHours:-12,displayName:"(UTC-12:00) International Date Line West",supportsDaylightSavingTime:false},{id:"UTC-11",offset:-660,offsetHours:-11,displayName:"(UTC-11:00) Coordinated Universal Time-11",supportsDaylightSavingTime:false},{id:"Hawaiteratoran Standard Time",offset:-600,offsetHours:-10,displayName:"(UTC-10:00) Hawaiterator",supportsDaylightSavingTime:false},{id:"Alaskan Standard Time",offset:-540,offsetHours:-9,displayName:"(UTC-09:00) Alaska",supportsDaylightSavingTime:true},{id:"Pacific Standard Time (Mexico)",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Baja California",supportsDaylightSavingTime:true},{id:"Pacific Standard Time",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Pacific Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Arizona",supportsDaylightSavingTime:false},{id:"Mountain Standard Time (Mexico)",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",supportsDaylightSavingTime:true},{id:"Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Mountain Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central America Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central America",supportsDaylightSavingTime:false},{id:"Canada Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Saskatchewan",supportsDaylightSavingTime:false},{id:"Central Standard Time (Mexico)",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",supportsDaylightSavingTime:true},{id:"SA Pacific Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Bogota, Lima, Quito, Rio Branco",supportsDaylightSavingTime:false},{id:"Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Eastern Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Indiana (East)",supportsDaylightSavingTime:true},{id:"Venezuela Standard Time",offset:-270,offsetHours:-4.5,displayName:"(UTC-04:30) Caracas",supportsDaylightSavingTime:false},{id:"Atlantic Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Atlantic Time (Canada)",supportsDaylightSavingTime:true},{id:"Paraguay Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Asuncion",supportsDaylightSavingTime:true},{id:"Central Brazilian Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Cuiaba",supportsDaylightSavingTime:true},{id:"Pacific SA Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Santiago",supportsDaylightSavingTime:true},{id:"SA Western Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",supportsDaylightSavingTime:false},{id:"Newfoundland Standard Time",offset:-210,offsetHours:-3.5,displayName:"(UTC-03:30) Newfoundland",supportsDaylightSavingTime:true},{id:"SA Eastern Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Cayenne, Fortaleza",supportsDaylightSavingTime:false},{id:"Argentina Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Buenos Aires",supportsDaylightSavingTime:true},{id:"E. South America Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Brasilia",supportsDaylightSavingTime:true},{id:"Bahia Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Salvador",supportsDaylightSavingTime:true},{id:"Montevideo Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Montevideo",supportsDaylightSavingTime:true},{id:"Greenland Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Greenland",supportsDaylightSavingTime:true},{id:"UTC-02",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Coordinated Universal Time-02",supportsDaylightSavingTime:false},{id:"Mid-Atlantic Standard Time",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Mid-Atlantic - Old",supportsDaylightSavingTime:true},{id:"Azores Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Azores",supportsDaylightSavingTime:true},{id:"Cape Verde Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Cape Verde Is.",supportsDaylightSavingTime:false},{id:"Morocco Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Casablanca",supportsDaylightSavingTime:true},{id:"UTC",offset:0,offsetHours:0,displayName:"(UTC) Coordinated Universal Time",supportsDaylightSavingTime:false},{id:"GMT Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Dublin, Edinburgh, Lisbon, London",supportsDaylightSavingTime:true},{id:"Greenwich Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Monrovia, Reykjavik",supportsDaylightSavingTime:false},{id:"Central European Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",supportsDaylightSavingTime:true},{id:"Namibia Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Windhoek",supportsDaylightSavingTime:true},{id:"W. Central Africa Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) West Central Africa",supportsDaylightSavingTime:false},{id:"W. Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",supportsDaylightSavingTime:true},{id:"Central Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",supportsDaylightSavingTime:true},{id:"Romance Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",supportsDaylightSavingTime:true},{id:"FLE Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",supportsDaylightSavingTime:true},{id:"South Africa Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Harare, Pretoria",supportsDaylightSavingTime:false},{id:"Turkey Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Istanbul",supportsDaylightSavingTime:true},{id:"GTB Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Athens, Bucharest",supportsDaylightSavingTime:true},{id:"Libya Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Tripoli",supportsDaylightSavingTime:true},{id:"E. Europe Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) E. Europe",supportsDaylightSavingTime:true},{id:"Jordan Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Amman",supportsDaylightSavingTime:true},{id:"Middle East Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Beirut",supportsDaylightSavingTime:true},{id:"Egypt Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Cairo",supportsDaylightSavingTime:true},{id:"Syria Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Damascus",supportsDaylightSavingTime:true},{id:"Israel Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Jerusalem",supportsDaylightSavingTime:true},{id:"Arab Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kuwait, Riyadh",supportsDaylightSavingTime:false},{id:"E. Africa Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Nairobi",supportsDaylightSavingTime:false},{id:"Arabic Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Baghdad",supportsDaylightSavingTime:true},{id:"Kaliningrad Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kaliningrad, Minsk",supportsDaylightSavingTime:true},{id:"Iran Standard Time",offset:210,offsetHours:3.5,displayName:"(UTC+03:30) Tehran",supportsDaylightSavingTime:true},{id:"Mauritius Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Port Louis",supportsDaylightSavingTime:true},{id:"Georgian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Tbilisi",supportsDaylightSavingTime:false},{id:"Caucasus Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Yerevan",supportsDaylightSavingTime:true},{id:"Arabian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Abu Dhabi, Muscat",supportsDaylightSavingTime:false},{id:"Azerbaijan Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Baku",supportsDaylightSavingTime:true},{id:"Russian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Moscow, St. Petersburg, Volgograd",supportsDaylightSavingTime:true},{id:"Afghanistan Standard Time",offset:270,offsetHours:4.5,displayName:"(UTC+04:30) Kabul",supportsDaylightSavingTime:false},{id:"Pakistan Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Islamabad, Karachi",supportsDaylightSavingTime:true},{id:"West Asia Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Ashgabat, Tashkent",supportsDaylightSavingTime:false},{id:"India Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",supportsDaylightSavingTime:false},{id:"Sri Lanka Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Sri Jayawardenepura",supportsDaylightSavingTime:false},{id:"Nepal Standard Time",offset:345,offsetHours:5.75,displayName:"(UTC+05:45) Kathmandu",supportsDaylightSavingTime:false},{id:"Central Asia Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Astana",supportsDaylightSavingTime:false},{id:"Bangladesh Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Dhaka",supportsDaylightSavingTime:true},{id:"Ekaterinburg Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Ekaterinburg",supportsDaylightSavingTime:true},{id:"Myanmar Standard Time",offset:390,offsetHours:6.5,displayName:"(UTC+06:30) Yangon (Rangoon)",supportsDaylightSavingTime:false},{id:"SE Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Bangkok, Hanoi, Jakarta",supportsDaylightSavingTime:false},{id:"N. Central Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Novosibirsk",supportsDaylightSavingTime:true},{id:"Ulaanbaatar Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Ulaanbaatar",supportsDaylightSavingTime:false},{id:"China Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",supportsDaylightSavingTime:false},{id:"Singapore Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Kuala Lumpur, Singapore",supportsDaylightSavingTime:false},{id:"North Asia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Krasnoyarsk",supportsDaylightSavingTime:true},{id:"Taipei Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Taipei",supportsDaylightSavingTime:false},{id:"W. Australia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Perth",supportsDaylightSavingTime:true},{id:"Korea Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Seoul",supportsDaylightSavingTime:false},{id:"North Asia East Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Irkutsk",supportsDaylightSavingTime:true},{id:"Tokyo Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Osaka, Sapporo, Tokyo",supportsDaylightSavingTime:false},{id:"AUS Central Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Darwin",supportsDaylightSavingTime:false},{id:"Cen. Australia Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Adelaide",supportsDaylightSavingTime:true},{id:"West Pacific Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Guam, Port Moresby",supportsDaylightSavingTime:false},{id:"Tasmania Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Hobart",supportsDaylightSavingTime:true},{id:"E. Australia Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Brisbane",supportsDaylightSavingTime:false},{id:"AUS Eastern Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Canberra, Melbourne, Sydney",supportsDaylightSavingTime:true},{id:"Yakutsk Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Yakutsk",supportsDaylightSavingTime:true},{id:"Vladivostok Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Vladivostok",supportsDaylightSavingTime:true},{id:"Central Pacific Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Solomon Is., New Caledonia",supportsDaylightSavingTime:false},{id:"Magadan Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Magadan",supportsDaylightSavingTime:true},{id:"Kamchatka Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",supportsDaylightSavingTime:true},{id:"Fiji Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Fiji",supportsDaylightSavingTime:true},{id:"New Zealand Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Auckland, Wellington",supportsDaylightSavingTime:true},{id:"UTC+12",offset:720,offsetHours:12,displayName:"(UTC+12:00) Coordinated Universal Time+12",supportsDaylightSavingTime:false},{id:"Tonga Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Nuku'alofa",supportsDaylightSavingTime:false},{id:"Samoa Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Samoa",supportsDaylightSavingTime:true}];var a=[0,31,59,90,120,151,181,212,243,273,304,334,365];var m=[0,31,60,91,121,152,182,213,244,274,305,335,366];var j=365*4+1;var c=(365*4+1)*25-1;var h=((365*4+1)*25-1)*4+1;var d=(((365*4+1)*25-1)*4+1)*4;var b=(((365*4+1)*25-1)*4+1)*4+((365*4+1)*25-1)*3-367;var l=(((365*4+1)*25-1)*4+1)*25-366;var k=0;var i=((((365*4+1)*25-1)*4+1)*25-366)*(1000*10000*3600*24)-1;var e=((((365*4+1)*25-1)*4+1)*25-366)*(1000*60*60*24);f.jqx.date=function(){var r=this;r.ticksPerMillisecond=10000;r.millisecondsPerTick=1/10000;r.ticksPerSecond=1000*10000;r.secondsPerTick=1/(1000*10000);r.ticksPerMinute=1000*10000*60;r.minutesPerTick=1/(1000*10000*60);r.ticksPerHour=1000*10000*3600;r.hoursPerTick=1/(1000*10000*3600);r.ticksPerDay=1000*10000*3600*24;r.daysPerTick=1/(1000*10000*3600*24);r.millisPerSecond=1000;r.millisPerMinute=1000*60;r.millisPerHour=1000*60*60;r.millisPerDay=1000*60*60*24;r.daysPerYear=365;r.daysPer4Years=j;r.daysPer100Years=c;r.daysPer400Years=h;r.daysTo1601=d;r.daysTo1899=b;r.daysTo10000=l;r.minTicks=0;r.maxTicks=i;r.maxMillis=e;r.datePartYear=0;r.datePartDayOfYear=1;r.datePartMonth=2;r.datePartDay=3;r.daysToMonth365=a;r.daysToMonth366=m;r.minValue=new Date(0);r.maxValue=new Date(((((365*4+1)*25-1)*4+1)*25-366)*(1000*10000*3600*24)-1);r.ticksMask=4611686018427388000;r.flagsMask=13835058055282164000;r.localMask=9223372036854776000;r.ticksCeiling=4611686018427388000;r.kindUnspecified=0;r.kindUtc=4611686018427388000;r.kindLocal=9223372036854776000;r.kindLocalAmbiguousDst=13835058055282164000;r.kindShift=62;r.regexTrim=/^\s+|\s+$/g;r.regexInfinity=/^[+-]?infinity$/i;r.regexHex=/^0x[a-f0-9]+$/i;r.regexParseFloat=/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/;r.calendar={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:","};r.dateData=0;r.timeZone=null;r.timeZones=g;r.internalMS=function(){return r.dateData};r.getDatePart=function(y){var x=r.internalMS();var z=parseInt(x/r.millisPerDay);var G=parseInt(z/r.daysPer400Years);z-=G*r.daysPer400Years;var B=parseInt(z/r.daysPer100Years);if(B==4){B=3}z-=B*r.daysPer100Years;var D=parseInt(z/r.daysPer4Years);z-=D*r.daysPer4Years;var E=parseInt(z/r.daysPerYear);if(E==4){E=3}if(y==r.datePartYear){return parseInt(G*400+B*100+D*4+E+1)}z-=E*r.daysPerYear;if(y==r.datePartDayOfYear){return parseInt(z+1)}var C=E==3&&(D!=24||B==3);var F=C?r.daysToMonth366:r.daysToMonth365;var A=z>>5+1;while(z>=F[A]){A++}if(y==r.datePartMonth){return parseInt(A)}return parseInt(z-F[A-1]+1)};r.dayOfWeek=function(){var y=r.dateData;var x=parseInt(y/r.millisPerDay+1)%7;return x},r.dayOfYear=function(){return r.getDatePart(r.datePartDayOfYear)};r.subtract=function(x){return new f.jqx.timeSpan(r.dateData*r.ticksPerMillisecond-x.dateData*r.ticksPerMillisecond)};r.dateToMS=function(z,A,x){if(z>=1&&z<=9999&&A>=1&&A<=12){z=parseInt(z);var D=r.isLeapYear(z)?r.daysToMonth366:r.daysToMonth365;if(x>=1&&x<=D[A]-D[A-1]){var C=z-1;var B=C*365+parseInt(C/4)-parseInt(C/100)+parseInt(C/400)+D[A-1]+x-1;return B*r.millisPerDay}}};r.isLeapYear=function(x){if(x<1||x>9999){throw new Error("Year out of Range")}return x%4==0&&(x%100!=0||x%400==0)};r.timeToMS=function(x,B,z,y){if(x>=0&&x<24&&B>=0&&B<60&&z>=0&&z<60){var A=parseInt(x*3600+B*60+z);if(y>0&&y<1000){return(A*r.millisPerSecond)+y}return A*r.millisPerSecond}};r.daysInMonth=function(x,y){if(y<1||y>12){throw new Error("Month out of Range")}var z=r.isLeapYear(x)?r.daysToMonth366:r.daysToMonth365;return z[y]-z[y-1]};r.arrayIndexOf=function(A,z){if(A.indexOf){return A.indexOf(z)}for(var x=0,y=A.length;x<y;x++){if(A[x]===z){return x}}return -1};r.startsWith=function(y,x){return y.indexOf(x)===0};r.endsWith=function(y,x){return y.substr(y.length-x.length)===x},r.trim=function(x){return(x+"").replace(r.regexTrim,"")};r.expandFormat=function(B,A){A=A||"F";var z,y=B.patterns,x=A.length;if(x===1){z=y[A];if(!z){throw"Invalid date format string '"+A+"'."}A=z}else{if(x===2&&A.charAt(0)==="%"){A=A.charAt(1)}}return A};r.getEra=function(z,y){if(!y){return 0}if(typeof z==="string"){return 0}var C,B=z.getTime();for(var A=0,x=y.length;A<x;A++){C=y[A].start;if(C===null||B>=C){return A}}return 0};r.toUpper=function(x){return x.split("\u00A0").join(" ").toUpperCase()};r.toUpperArray=function(x){var A=[];for(var z=0,y=x.length;z<y;z++){A[z]=r.toUpper(x[z])}return A};r.getEraYear=function(y,A,x,B){var z=y.getFullYear();if(!B&&A.eras){z-=A.eras[x].offset}return z};r.getDayIndex=function(B,A,y){var x,C=B.days,z=B._upperDays;if(!z){B._upperDays=z=[r.toUpperArray(C.names),r.toUpperArray(C.namesAbbr),r.toUpperArray(C.namesShort)]}A=A.toUpperCase();if(y){x=r.arrayIndexOf(z[1],A);if(x===-1){x=r.arrayIndexOf(z[2],A)}}else{x=r.arrayIndexOf(z[0],A)}return x};r.getMonthIndex=function(E,D,z){var x=E.months,y=E.monthsGenitive||E.months,B=E._upperMonths,C=E._upperMonthsGen;if(!B){E._upperMonths=B=[r.toUpperArray(x.names),r.toUpperArray(x.namesAbbr)];E._upperMonthsGen=C=[r.toUpperArray(y.names),r.toUpperArray(y.namesAbbr)]}D=r.toUpper(D);var A=r.arrayIndexOf(z?B[1]:B[0],D);if(A<0){A=r.arrayIndexOf(z?C[1]:C[0],D)}return A};r.appendPreOrPostMatch=function(A,x){var z=0,C=false;for(var B=0,y=A.length;B<y;B++){var D=A.charAt(B);switch(D){case"'":if(C){x.push("'")}else{z++}C=false;break;case"\\":if(C){x.push("\\")}C=!C;break;default:x.push(D);C=false;break}}return z};r.getTokenRegExp=function(){return/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g};r.tryparseDate=function(ad,ae,U){if(ae==undefined||ae==null){ae=r.calendar}else{if(ae!=null){if(ae&&f.type(ae)==="string"&&Globalize){var aj=Globalize.cultures[ae];if(aj){ae=aj.calendar}}}}if(U!=undefined){if(f.type(U)==="array"){for(var ak=0;ak<U.length;ak++){var am=r.parseDate(ad,U[ak],ae);if(am){return am}}}var am=r.parseDate(ad,U,ae);if(am){return am}}var I=this;if(ad==""){return null}if(ad!=null&&!ad.substring){ad=ad.toString()}if(ad!=null&&ad.substring(0,6)=="/Date("){var ao=/^\/Date\((-?\d+)(\+|-)?(\d+)?\)\/$/;var al=new Date(+ad.replace(/\/Date\((\d+)\)\//,"$1"));if(al=="Invalid Date"){var ag=ad.match(/^\/Date\((\d+)([-+]\d\d)(\d\d)\)\/$/);var al=null;if(ag){al=new Date(1*ag[1]+3600000*ag[2]+60000*ag[3])}}if(al==null||al=="Invalid Date"||isNaN(al)){var J=ao.exec(ad);if(J){var M=new Date(parseInt(J[1]));if(J[2]){var S=parseInt(J[3]);if(J[2]==="-"){S=-S}var O=M.getUTCMinutes();M.setUTCMinutes(O-S)}if(!isNaN(M.valueOf())){return M}}}return al}var G={jqxdate:"yyyy-MM-dd HH:mm:ss",d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",ISO8601:"yyyy-MM-ddTHH:mm:ss.sssZ",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"MM-dd-yyyy",d4:"MM.dd.yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",iso:"yyyy-MM-ddTHH:mm:ssZ",iso_date1:"yyyy-MM-dd",iso_date2:"yyyy-MM-dd",iso_date3:"yyyy-ddd",iso_date4:"yyyy-MM-dd HH:mm",iso_date5:"yyyy-MM-dd HH:mm Z",iso_date6:"yyyy-MMM-dd",iso_date7:"yyyy-MM",iso_date8:"yyyy-MMM",iso_date9:"yyyy-MMMM",iso_date10:"yyyy-MMMM-dd",iso_time1:"HH:mm:ss.tttt",iso_time2:"HH:mm:ss",iso_time3:"HH:mm",iso_time4:"HH",iso_time5:"yyyyyy-MM-dd",iso_time6:"yyyyyy-MM-dd"};for(var L in G){al=r.parseDate(ad,G[L],ae);if(al){return al}}var F=ae.patterns;for(L in F){al=r.parseDate(ad,F[L],ae);if(al){if(L=="ISO"){var W=r.parseDate(ad,F.ISO2,ae);if(W){return W}}return al}}if(f.type(ad)==="string"){ad=r.trim(ad);var af=[":","/","-"," ",","];var E=function(at,y,ar){return ar.replace(new RegExp(at,"g"),y)};ad=E(", ",",",ad);var A="";var R=ad;if(ad.indexOf(":")>=0){A=ad.substring(ad.indexOf(":")-2);A=r.trim(A);R=ad.substring(0,ad.indexOf(":")-2)}else{if(ad.toUpperCase().indexOf("AM")>=0){A=ad.substring(ad.toUpperCase().indexOf("AM")-2);A=r.trim(A);R=ad.substring(0,ad.toUpperCase().indexOf("AM")-2)}else{if(ad.toUpperCase().indexOf("PM")>=0){A=ad.substring(ad.toUpperCase().indexOf("PM")-2);A=r.trim(A);R=ad.substring(0,ad.toUpperCase().indexOf("PM")-2)}}}var x=new Date();var ac=false;if(R){for(var ak=0;ak<af.length;ak++){if(R.indexOf(af[ak])>=0){D=R.split(af[ak]);break}}var z=new Array();var P=new Array();var Y=new Array();var K=null;var aq=null;for(var ak=0;ak<D.length;ak++){var H=D[ak];var X=r.parseDate(H,"d",ae)||r.parseDate(H,"dd",ae)||r.parseDate(H,"ddd",ae)||r.parseDate(H,"dddd",ae);if(X){z.push(X.getDate());if(H.length>2){K=ak;break}}}for(var ak=0;ak<D.length;ak++){var H=D[ak];var N=r.parseDate(H,"M",ae)||r.parseDate(H,"MM",ae)||r.parseDate(H,"MMM",ae)||r.parseDate(H,"MMMM",ae);if(N){if(K!=undefined&&K==ak){continue}P.push(N.getMonth());if(H.length>2){aq=ak;break}}}for(var ak=0;ak<D.length;ak++){var H=D[ak];var Z=r.parseDate(H,"yyyy",ae);if(Z){if(K!=undefined&&K==ak){continue}if(aq!=undefined&&aq==ak){continue}Y.push(Z.getFullYear())}}var ah=new Array();for(var an=0;an<z.length;an++){for(var ag=0;ag<P.length;ag++){for(var ab=0;ab<Y.length;ab++){var M=new Date(Y[ab],P[ag],z[an]);if(Y[ab]<1970){M.setFullYear(Y[ab])}if(M.getTime()!=NaN){ah.push(M)}}}}if(ah.length>0){x=ah[0];ac=true}}if(A){var aa=A.indexOf(":")>=0?A.split(":"):A;var C=r.parseDate(A,"h:mm tt",ae)||r.parseDate(A,"HH:mm:ss.fff",ae)||r.parseDate(A,"HH:mm:ss.ff",ae)||r.parseDate(A,"h:mm:ss tt",ae)||r.parseDate(A,"HH:mm:ss.tttt",ae)||r.parseDate(A,"HH:mm:ss",ae)||r.parseDate(A,"HH:mm",ae)||r.parseDate(A,"HH",ae);var Q=0,B=0,T=0,V=0;if(C&&C.getTime()!=NaN){Q=C.getHours();B=C.getMinutes();T=C.getSeconds();V=C.getMilliseconds()}else{if(aa.length==1){Q=parseInt(aa[0])}if(aa.length==2){Q=parseInt(aa[0]);B=parseInt(aa[1])}if(aa.length==3){Q=parseInt(aa[0]);B=parseInt(aa[1]);if(aa[2].indexOf(".")>=0){T=parseInt(aa[2].toString().split(".")[0]);V=parseInt(aa[2].toString().split(".")[1])}else{T=parseInt(aa[2])}}if(aa.length==4){Q=parseInt(aa[0]);B=parseInt(aa[1]);T=parseInt(aa[2]);V=parseInt(aa[3])}}if(x&&!isNaN(Q)&&!isNaN(B)&&!isNaN(T)&&!isNaN(V)){x.setHours(Q,B,T,V);ac=true}}if(ac){return x}}if(ad!=null){var W=null;var D=[":","/","-"];var ai=true;for(var H=0;H<D.length;H++){if(ad.indexOf(D[H])!=-1){ai=false}}if(ai){var ap=new Number(ad);if(!isNaN(ap)){return new Date(ap)}}}return null};r.getParseRegExp=function(x,I){var K=x._parseRegExp;if(!K){x._parseRegExp=K={}}else{var B=K[I];if(B){return B}}var H=r.expandFormat(x,I).replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1"),F=["^"],y=[],E=0,A=0,N=r.getTokenRegExp(),C;while((C=N.exec(H))!==null){var M=H.slice(E,C.index);E=N.lastIndex;A+=r.appendPreOrPostMatch(M,F);if(A%2){F.push(C[0]);continue}var z=C[0],D=z.length,J;switch(z){case"dddd":case"ddd":case"MMMM":case"MMM":case"gg":case"g":J="(\\D+)";break;case"tt":case"t":J="(\\D*)";break;case"yyyy":case"fff":case"ff":case"f":J="(\\d{"+D+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":J="(\\d\\d?)";break;case"zzz":J="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":J="([+-]?\\d\\d?)";break;case"/":J="(\\"+x["/"]+")";break;default:throw"Invalid date format pattern '"+z+"'.";break}if(J){F.push(J)}y.push(C[0])}r.appendPreOrPostMatch(H.slice(E),F);F.push("$");var L=F.join("").replace(/\s+/g,"\\s+"),G={regExp:L,groups:y};return K[I]=G};r.outOfRange=function(z,x,y){return z<x||z>y};r.expandYear=function(C,A){var y=new Date(),x=r.getEra(y);if(A<100){var z=C.twoDigitYearMax;z=typeof z==="string"?new Date().getFullYear()%100+parseInt(z,10):z;var B=r.getEraYear(y,C,x);A+=B-(B%100);if(A>z){A-=100}}return A};r.parseDate=function(S,Z,N){if(N==undefined||N==null){N=r.calendar}S=r.trim(S);var K=N,ae=r.getParseRegExp(K,Z),E=new RegExp(ae.regExp).exec(S);if(E===null){return null}var aa=ae.groups,Q=null,I=null,ad=null,ac=null,J=null,C=0,V,U=0,ab=0,x=0,z=null,L=false;for(var W=0,Y=aa.length;W<Y;W++){var y=E[W+1];if(y){var R=aa[W],B=R.length,D=parseInt(y,10);switch(R){case"dd":case"d":ac=D;if(r.outOfRange(ac,1,31)){return null}break;case"MMM":case"MMMM":case"MMMMM":case"MMMMMM":case"MMMMMMM":case"MMMMMMMM":ad=r.getMonthIndex(K,y,B===3);if(r.outOfRange(ad,0,11)){return null}break;case"M":case"MM":ad=D-1;if(r.outOfRange(ad,0,11)){return null}break;case"y":case"yy":case"yyyy":I=B<4?r.expandYear(K,D):D;if(r.outOfRange(I,0,9999)){return null}break;case"h":case"hh":C=D;if(C===12){C=0}if(r.outOfRange(C,0,11)){return null}break;case"H":case"HH":C=D;if(r.outOfRange(C,0,23)){return null}break;case"m":case"mm":U=D;if(r.outOfRange(U,0,59)){return null}break;case"s":case"ss":ab=D;if(r.outOfRange(ab,0,59)){return null}break;case"tt":case"t":L=K.PM&&(y===K.PM[0]||y===K.PM[1]||y===K.PM[2]);if(!L&&(!K.AM||(y!==K.AM[0]&&y!==K.AM[1]&&y!==K.AM[2]))){return null}break;case"f":case"ff":case"fff":x=D*Math.pow(10,3-B);if(r.outOfRange(x,0,999)){return null}break;case"ddd":case"dddd":J=r.getDayIndex(K,y,B===3);if(r.outOfRange(J,0,6)){return null}break;case"zzz":var A=y.split(/:/);if(A.length!==2){return null}V=parseInt(A[0],10);if(r.outOfRange(V,-12,13)){return null}var G=parseInt(A[1],10);if(r.outOfRange(G,0,59)){return null}z=(V*60)+(r.startsWith(y,"-")?-G:G);break;case"z":case"zz":V=D;if(r.outOfRange(V,-12,13)){return null}z=V*60;break;case"g":case"gg":var M=y;if(!M||!K.eras){return null}M=trim(eraNathat.toLowerCase());for(var X=0,T=K.eras.length;X<T;X++){if(M===K.eras[X].nathat.toLowerCase()){Q=X;break}}if(Q===null){return null}break}}}var H=new Date(),P,F=K.convert;P=H.getFullYear();if(I===null){I=P}else{if(K.eras){I+=K.eras[(Q||0)].offset}}if(ad===null){ad=0}if(ac===null){ac=1}if(F){H=F.toGregorian(I,ad,ac);if(H===null){return null}}else{H.setFullYear(I,ad,ac);if(H.getDate()!==ac){return null}if(J!==null&&H.getDay()!==J){return null}}if(L&&C<12){C+=12}H.setHours(C,U,ab,x);if(z!==null){var O=H.getMinutes()-(z+H.getTimezoneOffset());H.setHours(H.getHours()+parseInt(O/60,10),O%60)}return H},r.toString=function(U,L){if(U===undefined){U="yyyy-MM-dd HH:mm:ss"}if(f.jqx.date.cache&&f.jqx.date.cache[r.dateData+U]){return f.jqx.date.cache[r.dateData+U]}if(L&&f.type(L)==="string"&&Globalize){var V=Globalize.cultures[L];if(V){L=V.calendar}}var Q=r.toDate();if(L==undefined||L==null){L=r.calendar}if(typeof Q==="string"){return Q}var A=Q.toString()+"_"+U;if(!U||!U.length||U==="i"){var X;X=r.formatDate(Q,L.patterns.F,L);return X}var R=L.eras,y=U==="s";U=r.expandFormat(L,U);X=[];var D,S=["0","00","000"],H,I,x=/([^d]|^)(d|dd)([^d]|$)/g,W=0,N=r.getTokenRegExp(),z;function F(Y,ab){var aa,Z=Y+"";if(ab>1&&Z.length<ab){aa=(S[ab-2]+Z);return aa.substr(aa.length-ab,ab)}else{aa=Z}return aa}function T(){if(H||I){return H}H=x.test(U);I=true;return H}function B(Z,Y){if(z){return z[Y]}if(Z.getMonth!=undefined){switch(Y){case 0:return Z.getFullYear();case 1:return Z.getMonth();case 2:return Z.getDate()}}}for(;;){var E=N.lastIndex,M=N.exec(U);var J=U.slice(E,M?M.index:U.length);W+=r.appendPreOrPostMatch(J,X);if(!M){break}if(W%2){X.push(M[0]);continue}var O=M[0],C=O.length;switch(O){case"ddd":case"dddd":var K=(C===3)?L.days.namesAbbr:L.days.names;X.push(K[Q.getDay()]);break;case"d":case"dd":H=true;X.push(F(B(Q,2),C));break;case"MMM":case"MMMM":var P=B(Q,1);X.push(L.months[C===3?"namesAbbr":"names"][P]);break;case"M":case"MM":X.push(F(B(Q,1)+1,C));break;case"y":case"yy":case"yyyy":P=r.getEraYear(Q,L,r.getEra(Q,R),y);if(C<4){P=P%100}X.push(F(P,C));break;case"h":case"hh":D=Q.getHours()%12;if(D===0){D=12}X.push(F(D,C));break;case"H":case"HH":X.push(F(Q.getHours(),C));break;case"m":case"mm":X.push(F(Q.getMinutes(),C));break;case"s":case"ss":X.push(F(Q.getSeconds(),C));break;case"t":case"tt":P=Q.getHours()<12?(L.AM?L.AM[0]:" "):(L.PM?L.PM[0]:" ");X.push(C===1?P.charAt(0):P);break;case"f":case"ff":case"fff":X.push(F(Q.getMilliseconds(),3).substr(0,C));break;case"z":case"zz":D=Q.getTimezoneOffset()/60;X.push((D<=0?"+":"-")+F(Math.floor(Math.abs(D)),C));break;case"zzz":D=Q.getTimezoneOffset()/60;X.push((D<=0?"+":"-")+F(Math.floor(Math.abs(D)),2)+":"+F(Math.abs(Q.getTimezoneOffset()%60),2));break;case"g":case"gg":if(L.eras){X.push(L.eras[r.getEra(Q,R)].name)}break;case"/":X.push(L["/"]);break;default:throw"Invalid date format pattern '"+O+"'.";break}}var G=X.join("");if(!f.jqx.date.cache){f.jqx.date.cache=new Array()}f.jqx.date.cache[r.dateData+U]=G;return G};r.add=function(B,C,y){var z=r.internalMS();if(C===undefined){if(y===false){r.dateData=(z+parseInt(B._ticks/r.ticksPerMillisecond));return r}var x=new f.jqx.date((z+parseInt(B._ticks/r.ticksPerMillisecond)));x.timeZone=r.timeZone;return x}var A=(B*C);if(A<=-r.maxMillis||A>=r.maxMillis){throw new Error("Out of Range")}if(y===false){r.dateData=(z+A);return r}var x=new f.jqx.date(z+A);x.timeZone=r.timeZone;return x};r.addDays=function(y,x){return r.add(y,r.millisPerDay,x)};r.clone=function(){var x=new f.jqx.date(r.dateData);x.timeZone=r.timeZone;return x};r.clearTime=function(){var A=r.month();var z=r.year();var y=r.day();var x=new f.jqx.date(z,A,y,0,0,0,0);x.timeZone=r.timeZone;return x};r.addHours=function(y,x){return r.add(y,r.millisPerHour,x)};r.addMilliseconds=function(y,x){return r.add(y,1,x)};r.addMinutes=function(y,x){return r.add(y,r.millisPerMinute,x)};r.addMonths=function(z,B){if(z<-120000||z>120000){throw new Error("Invalid Months Value")}var F=parseInt(r.getDatePart(r.datePartYear));var x=parseInt(r.getDatePart(r.datePartMonth));var D=parseInt(r.getDatePart(r.datePartDay));var C=x-1+z;if(C>=0){x=C%12+1;F=F+C/12}else{x=12+(C+1)%12;F=F+(C-11)/12}F=parseInt(F);if(F<1||F>9999){throw new Error("Year out of range")}var E=r.daysInMonth(F,x);if(D>E){D=E}if(B===false){r.dateData=(r.dateToMS(F,x,D)+r.internalMS()%r.millisPerDay);return r}var A=new f.jqx.date((r.dateToMS(F,x,D)+r.internalMS()%r.millisPerDay));A.timeZone=r.timeZone;return A};r.addSeconds=function(y,x){return r.add(y,r.millisPerSecond,x)};r.addYears=function(y,x){return r.addMonths(y*12,x)};r.getTimeZoneOffset=function(){var y=new Date();var x=new Date(y.getFullYear(),0,1);var z=new Date(y.getFullYear(),6,1);var A=y.getTimezoneOffset()<Math.max(x.getTimezoneOffset(),z.getTimezoneOffset());return{offset:-(y.getTimezoneOffset()/60),dst:+A}};r.isInDaylightSavingTime=function(){var y=new Date();var z=new Date(y.getFullYear(),0,1);var x=new Date(y.getFullYear(),6,1);return r.date().getTimezoneOffset()<Math.max(z.getTimezoneOffset(),x.getTimezoneOffset())};r.supportsDaylightSavingTime=function(){var y=new Date();var z=new Date(y.getFullYear(),0,1);var x=new Date(y.getFullYear(),6,1);return z.getTimezoneOffset()!=x.getTimezoneOffset()};r.date=function(){var A=r.month();var z=r.year();var y=r.day();var x=new f.jqx.date(z,A,y);x.timeZone=r.timeZone;return x};r.isWeekend=function(){return r.dayOfWeek()==0||r.dayOfWeek()==6};r.toDate=function(J){var E=r.month();var F=r.year();var G=r.day();var A=r.hour();var z=r.minute();var x=r.second();var L=r.millisecond();var K=new Date(F,E-1,G);if(F<1970){K.setFullYear(F)}K.setHours(A,z,x,L);if(J){var D=r.timeZones.filter(function(M){return M.id==J});if(D.length){var B=D[0].offset;if(J=="Local"){B=-K.getTimezoneOffset()}var C=K.getTime();var I=K.getTimezoneOffset()*60*1000;if(r.timeZone){var y=r.timeZones.filter(function(M){return M.id==r.timeZone});if(y.length){var I=-y[0].offset*60*1000}}var H=C+I;K=new Date(H+(60*1000*B))}}return K};r.toTimeZone=function(y){var A=y;if(A==null){A="Local"}var x=r.toDate(A);var z=new f.jqx.date(x);z.timeZone=y;return z};r.day=function(){return r.getDatePart(r.datePartDay)};r.month=function(){return r.getDatePart(r.datePartMonth)};r.year=function(){return r.getDatePart(r.datePartYear)};r.millisecond=function(){return parseInt((r.internalMS())%1000)};r.hour=function(){return parseInt((r.internalMS()/r.millisPerHour)%24)};r.minute=function(){return parseInt((r.internalMS()/r.millisPerMinute)%60)};r.second=function(){return parseInt((r.internalMS()/r.millisPerSecond)%60)};r.valueOf=function(){return r.dateData};r.equals=function(x){return r.dateData===x.dateData};if(arguments.length===0){var o=new Date();r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{if(arguments.length===1){if(arguments[0]==undefined){arguments[0]="todayDate"}var v=typeof arguments[0]==="number"&&isFinite(arguments[0]);if(!v&&f.type(arguments[0])==="string"){if(arguments[0]==="today"){var o=new Date();r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{if(arguments[0]==="todayDate"){var o=new Date();o.setHours(0,0,0,0);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{var o=r.tryparseDate(arguments[0]);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}}}else{if(typeof(arguments[0])==="number"){r.dateData=arguments[0]}else{if(f.type(arguments[0])=="date"){var o=arguments[0];r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{r.dateData=arguments[0]}}}}else{if(arguments.length===2){if(arguments[0]==undefined){arguments[0]="todayDate"}var v=typeof arguments[0]==="number"&&isFinite(arguments[0]);if(!v&&f.type(arguments[0])==="string"){if(arguments[0]==="today"){var o=new Date();r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{if(arguments[0]==="todayDate"){var o=new Date();o.setHours(0,0,0,0);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{var o=r.tryparseDate(arguments[0]);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}}}else{if(typeof(arguments[0])==="number"){r.dateData=arguments[0]}else{if(f.type(arguments[0])=="date"){var o=arguments[0];r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{r.dateData=arguments[0]}}}r.timeZone=arguments[1]}else{if(arguments.length>2){if(f.type(arguments[0])==="string"){var o=r.tryparseDate(arguments[0],arguments[2],arguments[1]);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{var t=arguments[0];var s=arguments[1];var u=arguments[2];var q=arguments[3];var p=arguments[4];var n=arguments[5];var w=arguments[6];if(q===undefined){q=0}if(p===undefined){p=0}if(n===undefined){n=0}if(w===undefined){w=0}s--;var o=new Date(t,s,u,q,p,n,w);if(t<1970){o.setFullYear(t)}r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}}}}}return r}})(jqxBaseFramework);if(!Array.prototype.filter){Array.prototype.filter=function(b){if(this===void 0||this===null){throw new TypeError()}var f=Object(this);var a=f.length>>>0;if(typeof b!=="function"){throw new TypeError()}var e=[];var d=arguments[1];for(var c=0;c<a;c++){if(c in f){var g=f[c];if(b.call(d,g,c,f)){e.push(g)}}}return e}};(function(a){if(!a.jqx.scheduler){a.jqx.scheduler={}}a.jqx.jqxWidget("jqxScheduler","",{});a.extend(a.jqx._jqxScheduler.prototype,{defineInstance:function(){var c={altRows:false,autoShowLoadElement:true,columnsHeight:30,columns:[],columnGroups:null,dataview:null,disabled:false,enableHover:true,appointmentOpacity:0.8,headerZIndex:359,height:600,timeRulerWidth:60,loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxScheduler raises the 'bindingComplete' event when the binding is completed.",localization:null,ready:null,renderToolBar:null,renderAppointment:null,rendered:null,rendering:null,rtl:false,showToolbar:true,showLegend:false,legendPosition:"bottom",legendHeight:34,rowsHeight:27,touchRowsHeight:36,appointmentsMinHeight:18,touchAppointmentsMinHeight:27,serverProcessing:false,selectionMode:"multiplerows",scrollBarSize:a.jqx.utilities.scrollBarSize,touchScrollBarSize:a.jqx.utilities.touchScrollBarSize,showHeader:true,maxHeight:999999,maxWidth:999999,autoBind:true,showAllDayRow:true,changedAppointments:new Array(),renderMode:"simple",views:new Array(),view:0,min:new a.jqx.date(0),max:new a.jqx.date(9999,12,31),date:new a.jqx.date("todayDate"),colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF","#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8","#E8601A","#FF9639","#F5BD6A","#599994","#115D6E","#D02841","#FF7C41","#FFC051","#5B5F4D","#364651","#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00","#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B","#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63","#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6","#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F","#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825","#993144","#FFA257","#CCA56A","#ADA072","#949681","#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932","#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54","#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3","#444546","#FFBB6E","#F28D00","#D94F00","#7F203B","#583C39","#674E49","#948658","#F0E99A","#564E49","#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17","#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5","#844341","#D5CC92","#BBA146","#897B26","#55591C","#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472","#96003A","#FF7347","#FFBC7B","#FF4154","#642223","#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E","#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7","#7B1A25","#BF5322","#9DA860","#CEA457","#B67818","#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46","#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800","#FF6800","#A0A700","#FF8D00","#678900","#0069A5"],colorSchemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],resources:null,contextMenu:true,contextMenuOpen:null,contextMenuClose:null,contextMenuItemClick:null,contextMenuCreate:null,timeZone:null,statuses:{free:"white",tentative:"tentative",busy:"transparent",outOfOffice:"#800080"},appointmentDataFields:{from:"from",to:"to",id:"id",calendarId:"calendarId",description:"description",location:"location",subject:"subject",background:"background",color:"color",borderColor:"borderColor",style:"style",recurrencePattern:"recurrencePattern",recurrenceException:"recurrenceException",draggable:"draggable",resizable:"resizable",resourceId:"resourceId",status:"status",tooltip:"tooltip",hidden:"hidden",allDay:"allDay",timeZone:"timeZone",ownerId:"ownerId"},appointmentTooltips:true,tableColumns:1,tableRows:1,dayNameFormat:"full",touchDayNameFormat:"abbr",toolBarRangeFormat:"dd MMMM yyyy",toolBarRangeFormatAbbr:"dd MM yyyy",columnRenderer:null,exportSettings:{columnsHeader:true,hiddenColumns:false,serverURL:null,characterSet:null,collapsedRecords:false,recordsInView:true,fileName:"jqxScheduler"},source:{beforeprocessing:null,beforesend:null,loaderror:null,localdata:null,data:null,datatype:"array",datafields:[],url:"",root:"",record:"",id:"",totalrecords:0,recordstartindex:0,recordendindex:0,loadallrecords:true,sortcolumn:null,sortdirection:null,sort:null,filter:null,sortcomparer:null},editDialogDateTimeFormatString:"dd/MM/yyyy hh:mm tt",editDialogDateFormatString:"dd/MM/yyyy",editDialogOpen:null,editDialogCreate:null,editDialogKeyDown:null,editDialogClose:null,toolbarHeight:54,tableZIndex:369,_updating:false,touchMode:"auto",width:800,that:this,beginDrag:null,endDrag:null,dragging:null,timeZones:[{id:"Dateline Standard Time",offset:-720,offsetHours:-12,displayName:"(UTC-12:00) International Date Line West",supportsDaylightSavingTime:false},{id:"UTC-11",offset:-660,offsetHours:-11,displayName:"(UTC-11:00) Coordinated Universal Time-11",supportsDaylightSavingTime:false},{id:"Hawaiteratoran Standard Time",offset:-600,offsetHours:-10,displayName:"(UTC-10:00) Hawaiterator",supportsDaylightSavingTime:false},{id:"Alaskan Standard Time",offset:-540,offsetHours:-9,displayName:"(UTC-09:00) Alaska",supportsDaylightSavingTime:true},{id:"Pacific Standard Time (Mexico)",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Baja California",supportsDaylightSavingTime:true},{id:"Pacific Standard Time",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Pacific Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Arizona",supportsDaylightSavingTime:false},{id:"Mountain Standard Time (Mexico)",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",supportsDaylightSavingTime:true},{id:"Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Mountain Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central America Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central America",supportsDaylightSavingTime:false},{id:"Canada Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Saskatchewan",supportsDaylightSavingTime:false},{id:"Central Standard Time (Mexico)",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",supportsDaylightSavingTime:true},{id:"SA Pacific Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Bogota, Lima, Quito, Rio Branco",supportsDaylightSavingTime:false},{id:"Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Eastern Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Indiana (East)",supportsDaylightSavingTime:true},{id:"Venezuela Standard Time",offset:-270,offsetHours:-4.5,displayName:"(UTC-04:30) Caracas",supportsDaylightSavingTime:false},{id:"Atlantic Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Atlantic Time (Canada)",supportsDaylightSavingTime:true},{id:"Paraguay Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Asuncion",supportsDaylightSavingTime:true},{id:"Central Brazilian Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Cuiaba",supportsDaylightSavingTime:true},{id:"Pacific SA Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Santiago",supportsDaylightSavingTime:true},{id:"SA Western Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Georgetown, La Paz, Manaus",supportsDaylightSavingTime:false},{id:"Newfoundland Standard Time",offset:-210,offsetHours:-3.5,displayName:"(UTC-03:30) Newfoundland",supportsDaylightSavingTime:true},{id:"SA Eastern Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Cayenne, Fortaleza",supportsDaylightSavingTime:false},{id:"Argentina Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Buenos Aires",supportsDaylightSavingTime:true},{id:"E. South America Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Brasilia",supportsDaylightSavingTime:true},{id:"Bahia Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Salvador",supportsDaylightSavingTime:true},{id:"Montevideo Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Montevideo",supportsDaylightSavingTime:true},{id:"Greenland Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Greenland",supportsDaylightSavingTime:true},{id:"UTC-02",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Coordinated Universal Time-02",supportsDaylightSavingTime:false},{id:"Mid-Atlantic Standard Time",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Mid-Atlantic - Old",supportsDaylightSavingTime:true},{id:"Azores Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Azores",supportsDaylightSavingTime:true},{id:"Cape Verde Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Cape Verde Is.",supportsDaylightSavingTime:false},{id:"Morocco Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Casablanca",supportsDaylightSavingTime:true},{id:"UTC",offset:0,offsetHours:0,displayName:"(UTC) Coordinated Universal Time",supportsDaylightSavingTime:false},{id:"GMT Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Dublin, Edinburgh, Lisbon, London",supportsDaylightSavingTime:true},{id:"Greenwich Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Monrovia, Reykjavik",supportsDaylightSavingTime:false},{id:"Central European Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",supportsDaylightSavingTime:true},{id:"Namibia Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Windhoek",supportsDaylightSavingTime:true},{id:"W. Central Africa Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) West Central Africa",supportsDaylightSavingTime:false},{id:"W. Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Amsterdam, Berlin, Rome",supportsDaylightSavingTime:true},{id:"Central Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Belgrade, Budapest, Prague",supportsDaylightSavingTime:true},{id:"Romance Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",supportsDaylightSavingTime:true},{id:"FLE Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia",supportsDaylightSavingTime:true},{id:"South Africa Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Harare, Pretoria",supportsDaylightSavingTime:false},{id:"Turkey Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Istanbul",supportsDaylightSavingTime:true},{id:"GTB Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Athens, Bucharest",supportsDaylightSavingTime:true},{id:"Libya Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Tripoli",supportsDaylightSavingTime:true},{id:"E. Europe Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) E. Europe",supportsDaylightSavingTime:true},{id:"Jordan Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Amman",supportsDaylightSavingTime:true},{id:"Middle East Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Beirut",supportsDaylightSavingTime:true},{id:"Egypt Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Cairo",supportsDaylightSavingTime:true},{id:"Syria Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Damascus",supportsDaylightSavingTime:true},{id:"Israel Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Jerusalem",supportsDaylightSavingTime:true},{id:"Arab Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kuwait, Riyadh",supportsDaylightSavingTime:false},{id:"E. Africa Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Nairobi",supportsDaylightSavingTime:false},{id:"Arabic Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Baghdad",supportsDaylightSavingTime:true},{id:"Kaliningrad Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kaliningrad, Minsk",supportsDaylightSavingTime:true},{id:"Iran Standard Time",offset:210,offsetHours:3.5,displayName:"(UTC+03:30) Tehran",supportsDaylightSavingTime:true},{id:"Mauritius Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Port Louis",supportsDaylightSavingTime:true},{id:"Georgian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Tbilisi",supportsDaylightSavingTime:false},{id:"Caucasus Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Yerevan",supportsDaylightSavingTime:true},{id:"Arabian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Abu Dhabi, Muscat",supportsDaylightSavingTime:false},{id:"Azerbaijan Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Baku",supportsDaylightSavingTime:true},{id:"Russian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Moscow, St. Petersburg, Volgograd",supportsDaylightSavingTime:true},{id:"Afghanistan Standard Time",offset:270,offsetHours:4.5,displayName:"(UTC+04:30) Kabul",supportsDaylightSavingTime:false},{id:"Pakistan Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Islamabad, Karachi",supportsDaylightSavingTime:true},{id:"West Asia Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Ashgabat, Tashkent",supportsDaylightSavingTime:false},{id:"India Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",supportsDaylightSavingTime:false},{id:"Sri Lanka Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Sri Jayawardenepura",supportsDaylightSavingTime:false},{id:"Nepal Standard Time",offset:345,offsetHours:5.75,displayName:"(UTC+05:45) Kathmandu",supportsDaylightSavingTime:false},{id:"Central Asia Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Astana",supportsDaylightSavingTime:false},{id:"Bangladesh Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Dhaka",supportsDaylightSavingTime:true},{id:"Ekaterinburg Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Ekaterinburg",supportsDaylightSavingTime:true},{id:"Myanmar Standard Time",offset:390,offsetHours:6.5,displayName:"(UTC+06:30) Yangon (Rangoon)",supportsDaylightSavingTime:false},{id:"SE Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Bangkok, Hanoi, Jakarta",supportsDaylightSavingTime:false},{id:"N. Central Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Novosibirsk",supportsDaylightSavingTime:true},{id:"Ulaanbaatar Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Ulaanbaatar",supportsDaylightSavingTime:false},{id:"China Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Beijing, Chongqing, Hong Kong",supportsDaylightSavingTime:false},{id:"Singapore Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Kuala Lumpur, Singapore",supportsDaylightSavingTime:false},{id:"North Asia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Krasnoyarsk",supportsDaylightSavingTime:true},{id:"Taipei Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Taipei",supportsDaylightSavingTime:false},{id:"W. Australia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Perth",supportsDaylightSavingTime:true},{id:"Korea Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Seoul",supportsDaylightSavingTime:false},{id:"North Asia East Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Irkutsk",supportsDaylightSavingTime:true},{id:"Tokyo Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Osaka, Sapporo, Tokyo",supportsDaylightSavingTime:false},{id:"AUS Central Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Darwin",supportsDaylightSavingTime:false},{id:"Cen. Australia Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Adelaide",supportsDaylightSavingTime:true},{id:"West Pacific Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Guam, Port Moresby",supportsDaylightSavingTime:false},{id:"Tasmania Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Hobart",supportsDaylightSavingTime:true},{id:"E. Australia Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Brisbane",supportsDaylightSavingTime:false},{id:"AUS Eastern Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Canberra, Melbourne, Sydney",supportsDaylightSavingTime:true},{id:"Yakutsk Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Yakutsk",supportsDaylightSavingTime:true},{id:"Vladivostok Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Vladivostok",supportsDaylightSavingTime:true},{id:"Central Pacific Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Solomon Is., New Caledonia",supportsDaylightSavingTime:false},{id:"Magadan Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Magadan",supportsDaylightSavingTime:true},{id:"Kamchatka Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",supportsDaylightSavingTime:true},{id:"Fiji Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Fiji",supportsDaylightSavingTime:true},{id:"New Zealand Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Auckland, Wellington",supportsDaylightSavingTime:true},{id:"UTC+12",offset:720,offsetHours:12,displayName:"(UTC+12:00) Coordinated Universal Time+12",supportsDaylightSavingTime:false},{id:"Tonga Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Nuku'alofa",supportsDaylightSavingTime:false},{id:"Samoa Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Samoa",supportsDaylightSavingTime:true}]};a.extend(true,this,c);this.that=this;return c},createInstance:function(d){var h=this;h._views=new Array();h._view=h.view;for(var e=0;e<h.views.length;e++){if(a.type(h.views[e])==="string"){h._views.push({type:h.views[e]})}else{h._views.push(h.views[e])}}for(var e=0;e<h._views.length;e++){if(h._views[e].type==h.view){h._view=e;break}}if(a.jqx.utilities.scrollBarSize!=15){h.scrollBarSize=a.jqx.utilities.scrollBarSize}if(h.source&&!h.source.dataBind){h.source=new a.jqx.dataAdapter(h.source)}var c=h.source._source.datafields;if(c&&c.length>0){h._camelCase=h.source._source.dataFields!==undefined;h.selectionMode=h.selectionMode.toLowerCase()}if(h.host.attr("tabindex")==null){h.host.attr("tabindex","0")}h.host.attr("role","grid");h.host.attr("align","left");h.host.addClass(h.toTP("jqx-grid"));h.host.addClass(h.toTP("jqx-scheduler"));h.host.addClass(h.toTP("jqx-reset"));h.host.addClass(h.toTP("jqx-rc-all"));h.host.addClass(h.toTP("jqx-widget"));h.host.addClass(h.toTP("jqx-widget-content jqx-disableselect"));if(h._testmodules()){return}h.overlay=a("<div style='z-index: 999; position:absolute;'></div>");h.overlay.hide();h.overlay.appendTo(h.host);h.render(true);a.jqx.utilities.resize(h.host,function(){var l=a(window).width();var i=a(window).height();h._hostWidth=null;h._hostHeight=null;var k=h.host.width();var m=h.host.height();h._hostWidth=k;h._hostHeight=m;if(h._lastHostWidth!=k||h._lastHostHeight!=m){h._updatesize(h._lastHostWidth!=k,h._lastHostHeight!=m)}h._lastWidth=l;h._lastHeight=i;h._lastHostWidth=k;h._lastHostHeight=m});h.editRecurrenceDialog=null;var f=a("<div><div>"+h.schedulerLocalization.editRecurringAppointmentDialogTitleString+"</div><div><div>"+h.schedulerLocalization.editRecurringAppointmentDialogContentString+"</div><div style='position: absolute; white-space:nowrap; text-overflow: ellipsis; left:0px; width:100%; bottom: 0px;'><button title='"+h.schedulerLocalization.editRecurringAppointmentDialogOccurrenceString+"' id='editRecurringAppointmentOccurrence."+h.element.id+"' style='white-space:nowrap; text-overflow: ellipsis; border-left-width: 0px;  border-bottom-width: 0px; border-radius:0px; width:50%;'>"+h.schedulerLocalization.editRecurringAppointmentDialogOccurrenceString+"</button><button title='"+h.schedulerLocalization.editRecurringAppointmentDialogSeriesString+"' id='editRecurringAppointmentSeries."+h.element.id+"' style=' white-space:nowrap; text-overflow: ellipsis; border-bottom-width: 0px;  border-left-width: 0px; border-right-width:0px; width:50%; border-radius:0px;'>"+h.schedulerLocalization.editRecurringAppointmentDialogSeriesString+"</button></div></div></div>");a(f).jqxWindow({rtl:h.rtl,autoFocus:false,animationType:"none",autoOpen:false,theme:h.theme,minWidth:300,minHeight:110,resizable:false});var g=f.find("button");g.jqxButton({theme:h.theme,width:"50%",height:30});var j=false;g.mousedown(function(){j=true;var i=this.id;if(i.indexOf("editRecurringAppointmentOccurrence")>=0){h.editSeries(false)}else{h.editSeries(true)}a(f).jqxWindow("close")});this.addHandler(a(f),"open",function(i){h._raiseEvent("editRecurrenceDialogOpen",{dialog:f,appointment:h.selectedJQXAppointment?h.selectedJQXAppointment.boundAppointment:null})});h.addHandler(a(f),"keydown",function(i){if(i.keyCode==13){if(a(document.activeElement).ischildof(a(f))){if(document.activeElement.nodeName.toLowerCase()=="button"){a(document.activeElement).trigger("mousedown");a(document.activeElement).trigger("mouseup");return true}}}});this.addHandler(a(f),"close",function(i){if(!j){h._removeFeedbackAndStopResize();h.overlay.hide();h.focus();h._raiseEvent("editRecurrenceDialogClose",{dialog:f,appointment:h.selectedJQXAppointment?h.selectedJQXAppointment.boundAppointment:null});return false}j=false;h.overlay.hide();h.focus();h._raiseEvent("editRecurrenceDialogClose",{dialog:f,appointment:h.selectedJQXAppointment?h.selectedJQXAppointment.boundAppointment:null})});h.editRecurrenceDialog=f},_initMenu:function(){var d=this;if(this.host.jqxMenu){if(this.menu){if(this._hasOpenedMenu){return}this.removeHandler(this.menu,"keydown");this.removeHandler(this.menu,"closed");this.removeHandler(this.menu,"itemclick");this.menu.jqxMenu("destroy");this.menu.removeData();this.menu.remove()}this.menuitemsarray=new Array();this.menu=a('<div id="menu.jqxscheduler'+this.element.id+'" style="white-space: nowrap; z-index: 9999999999999;"></div>');this.host.append(this.menu);this.addHandler(a(window),"orientationchange.jqxscheduler"+this.element.id,function(){d.menu.jqxMenu("close");d._hasOpenedMenu=false});this.addHandler(a(window),"orientationchanged.jqxscheduler"+this.element.id,function(){d.menu.jqxMenu("close");d._hasOpenedMenu=false});this.removeHandler(this.menu,"keydown");this.addHandler(this.menu,"keydown",function(f){if(f.keyCode==27){d.menu.jqxMenu("close");d._hasOpenedMenu=false;d.focus()}});this.addHandler(this.menu,"open",function(f){if(d.contextMenuOpen){d.contextMenuOpen(d.menu,d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null,f)}d._raiseEvent("contextMenuOpen",{menu:d.menu,appointment:d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null});d._removeFeedbackAndStopResize()});this.addHandler(this.menu,"close",function(f){if(d.contextMenuClose){d.contextMenuClose(d.menu,d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null,f)}d._hasOpenedMenu=false;if(document.activeElement&&document.activeElement.className.indexOf("jqx-menu")>=0){d.focus()}d._raiseEvent("contextMenuClose",{menu:d.menu,appointment:d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null})});this.addHandler(this.host,"contextmenu",function(f){f.preventDefault();f.stopPropagation();return false});this.addHandler(this.menu,"itemclick",function(i){var h=d.menu.jqxMenu("getItem",i.args.id);d._raiseEvent("contextMenuItemClick",{item:h,menu:d.menu,appointment:d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null});if(d.contextMenuItemClick){var g=d.contextMenuItemClick(d.menu,d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null,i);if(g==true){if(new Date()-d.renderedTime>500){d._renderrows()}d.menu.jqxMenu("close");d._hasOpenedMenu=false;return}}if(h.id=="createAppointment"){d._initDialog();d._openDialog();if(i.args.clickType=="keyboard"){d.menu.jqxMenu("close");d._hasOpenedMenu=false}}else{if(h.id=="editAppointment"){var f=d.getJQXAppointmentByElement(d.selectedAppointment);if(!f.readOnly){var g=d._initDialog(f);if(g!==false){d._openDialog()}}if(i.args.clickType=="keyboard"){d.menu.jqxMenu("close");d._hasOpenedMenu=false}}else{if(i.args.clickType=="keyboard"){d.menu.jqxMenu("close");d._hasOpenedMenu=false}return true}}});var e=new Array();e.push({label:this.schedulerLocalization.contextMenuEditAppointmentString,id:"editAppointment"});e.push({label:this.schedulerLocalization.contextMenuCreateAppointmentString,id:"createAppointment"});var c={rtl:this.rtl,keyboardNavigation:true,source:e,popupZIndex:999999,autoOpenPopup:false,mode:"popup",theme:this.theme,animationShowDuration:0,animationHideDuration:0,animationShowDelay:0};if(d.contextMenuCreate){d.contextMenuCreate(d.menu,c)}d._raiseEvent("contextMenuCreate",{menu:d.menu,settings:c});this.menu.jqxMenu(c)}},getViewStart:function(){var e=this.getVisibleDate();var c=this._views[this._view].type;var f=this._views[this._view];switch(c){case"dayView":case"timelineDayView":return e}var d=this.getFirstDayOfWeek(e);return d},getViewEnd:function(){var f=this.getViewStart();var e=1;var c=this._views[this._view].type;var d=this._views[this._view];switch(c){case"dayView":case"timelineDayView":e=1;break;case"weekView":case"timelineWeekView":e=7;break;case"monthView":case"timelineMonthView":e=41;break}return f.addDays(e)},getFirstDayOfWeek:function(e){var d=e;var c=this.schedulerLocalization.firstDay;if(c<0||c>6){c=6}while(d.dayOfWeek()!=c){d.addDays(-1,false)}return d},getVisibleDate:function(){var e=this.date;if(e<this.min){e=this.min}if(e>this.max){e=this.max}var c=this._views[this._view].type;var g=this._views[this._view];e=e.clearTime();switch(c){case"dayView":case"weekView":case"timelineDayView":case"timelineWeekView":return e}var f=e.day();var d=e.addDays(-f+1);e=d;return e},_builddataloadelement:function(){if(this.dataloadelement){this.dataloadelement.remove()}this.dataloadelement=a('<div class="jqx-datatable-load" style="z-index: 99998; background-color:rgba(50,50,50,0.1); overflow: hidden; position: absolute;"></div>');var d=a('<div style="z-index: 99999; margin-left: -66px; left: 50%; top: 50%; margin-top: -24px; position: relative; width: 100px; height: 33px; padding: 5px; font-family: verdana; font-size: 12px; color: #767676; border-color: #898989; border-width: 1px; border-style: solid; background: #f6f6f6; border-collapse: collapse;"><div style="float: left;"><div style="float: left; overflow: hidden; width: 32px; height: 32px;" class="jqx-grid-load"/><span style="margin-top: 10px; float: left; display: block; margin-left: 5px;" >'+this.schedulerLocalization.loadString+"</span></div></div>");d.addClass(this.toTP("jqx-rc-all"));this.dataloadelement.addClass(this.toTP("jqx-rc-all"));d.addClass(this.toTP("jqx-fill-state-normal"));this.dataloadelement.append(d);this.dataloadelement.width(this.width);this.dataloadelement.height(this.height);this.host.prepend(this.dataloadelement);if(this.source._source.url!=""){var c=false;if(this.height==="auto"||this.height===null||this.autoheight){if(this.maxHeight==999999){c=true}}if(c){this.host.height(100);this.dataloadelement.height(100)}else{this.host.height(this.height);this.dataloadelement.height(this.height)}var e=false;if(this.width==="auto"||this.width===null||this.autoWidth){e=true}if(e){this.host.width(300);this.dataloadelement.width(300)}else{this.host.width(this.width);this.dataloadelement.width(this.width)}}},_measureElement:function(d){var c=a("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");c.addClass(this.toTP("jqx-widget"));a(document.body).append(c);if(d=="cell"){this._cellheight=c.height()}else{this._columnheight=c.height()}c.remove()},_testmodules:function(){var f="";var d=this;var c=function(){if(f.length!=""){f+=","}};if(!this.host.jqxScrollBar){c();f+=" jqxscrollbar.js"}if(!this.host.jqxButton){c();f+=" jqxbuttons.js"}if(!a.jqx.dataAdapter){c();f+=" jqxdata.js"}if(!this.host.jqxDateTimeInput){c();f+=" jqxdatetimeinput.js"}if(!this.host.jqxCalendar){c();f+=" jqxcalendar.js"}try{if(!Globalize){c();f+=" globalize.js"}}catch(e){}if(f!=""){throw new Error("jqxScheduler: Missing references to the following module(s): "+f);this.host.remove();return true}return false},focus:function(){try{if(this.editDialog&&this.editDialog.jqxWindow("isOpen")){var d=this;setTimeout(function(){d.editDialogFields.subject.focus();d.editDialogFields.subject.select()},1);this.focused=true;return}if(document.activeElement==this.element){return}this.host.focus();var d=this;setTimeout(function(){d.host.focus()},25);this.focused=true}catch(c){}},hiddenParent:function(){return a.jqx.isHidden(this.host)},_updatesize:function(i,h){if(this._loading){return}var f=this;var g=f.host.width();var e=f.host.height();if(!f._oldWidth){f._oldWidth=g}if(!f._oldHeight){f._oldHeight=e}if(f._resizeTimer!=undefined){clearTimeout(f._resizeTimer);f._resizeTimer=null}var d=300;var c=function(){if(f._resizeTimer){clearTimeout(f._resizeTimer)}f.resizingGrid=true;if(a.jqx.isHidden(f.host)){return}f._updatecolumnwidths();f.refresh();f._oldWidth=g;f._oldHeight=e;f.resizingGrid=false};c();f._resizeTimer=setTimeout(function(){var k=f.host.width();var j=f.host.height();if(f._oldWidth!=k||f._oldHeight!=j){c()}},d)},resize:function(d,c){if(d!=undefined){this.width=d}if(c!=undefined){this.height=c}this._updatecolumnwidths();this.refresh()},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var c=a.jqx.mobile.isTouchDevice();this.touchDevice=c;if(this.touchMode==true){c=true;a.jqx.mobile.setMobileSimulator(this.element);this.touchDevice=c}else{if(this.touchMode==false){c=false}}if(c){this.touchDevice=true;this.host.addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-content").addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-header").addClass(this.toThemeProperty("jqx-touch"));this.scrollBarSize=this.touchScrollBarSize}return c},toTP:function(c){return this.toThemeProperty(c)},localizestrings:function(c,d){this._cellscache=new Array();if(a.jqx.dataFormat){a.jqx.dataFormat.cleardatescache()}if(this._loading){throw new Error("jqxScheduler: "+this.loadingErrorMessage);return false}if(c!=null){for(var e in this.schedulerLocalization){if(c[e]){this.schedulerLocalization[e]=c[e]}}if(c.loadingErrorMessage){this.loadingErrorMessage=c.loadingErrorMessage}if(d!==false){this._builddataloadelement();a(this.dataloadelement).css("visibility","hidden");a(this.dataloadelement).css("display","none")}}else{this.schedulerLocalization={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"dd-MMMM-yyyy",d4:"dd-MM-yy",d5:"H:mm",d6:"HH:mm",d7:"HH:mm tt",d8:"dd/MMMM/yyyy",d9:"MMMM-dd",d10:"MM-dd",d11:"MM-dd-yyyy"},agendaDateColumn:"Date",agendaTimeColumn:"Time",agendaAppointmentColumn:"Appointment",backString:"Back",forwardString:"Forward",toolBarPreviousButtonString:"previous",toolBarNextButtonString:"next",emptyDataString:"No data to display",loadString:"Loading...",clearString:"Clear",todayString:"Today",dayViewString:"Day",weekViewString:"Week",monthViewString:"Month",timelineDayViewString:"Timeline Day",timelineWeekViewString:"Timeline Week",timelineMonthViewString:"Timeline Month",loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxScheduler raises the 'bindingComplete' event when the binding is completed.",editRecurringAppointmentDialogTitleString:"Edit Recurring Appointment",editRecurringAppointmentDialogContentString:"Do you want to edit only this occurrence or the series?",editRecurringAppointmentDialogOccurrenceString:"Edit Occurrence",editRecurringAppointmentDialogSeriesString:"Edit The Series",editDialogTitleString:"Edit Appointment",editDialogCreateTitleString:"Create New Appointment",contextMenuEditAppointmentString:"Edit Appointment",contextMenuCreateAppointmentString:"Create New Appointment",editDialogSubjectString:"Subject",editDialogLocationString:"Location",editDialogFromString:"From",editDialogToString:"To",editDialogAllDayString:"All day",editDialogExceptionsString:"Exceptions",editDialogResetExceptionsString:"Reset on Save",editDialogDescriptionString:"Description",editDialogResourceIdString:"Owner",editDialogStatusString:"Status",editDialogColorString:"Color",editDialogColorPlaceHolderString:"Select Color",editDialogTimeZoneString:"Time Zone",editDialogSelectTimeZoneString:"Select Time Zone",editDialogSaveString:"Save",editDialogDeleteString:"Delete",editDialogCancelString:"Cancel",editDialogRepeatString:"Repeat",editDialogRepeatEveryString:"Repeat every",editDialogRepeatEveryWeekString:"week(s)",editDialogRepeatEveryYearString:"year(s)",editDialogRepeatEveryDayString:"day(s)",editDialogRepeatNeverString:"Never",editDialogRepeatDailyString:"Daily",editDialogRepeatWeeklyString:"Weekly",editDialogRepeatMonthlyString:"Monthly",editDialogRepeatYearlyString:"Yearly",editDialogRepeatEveryMonthString:"month(s)",editDialogRepeatEveryMonthDayString:"Day",editDialogRepeatFirstString:"first",editDialogRepeatSecondString:"second",editDialogRepeatThirdString:"third",editDialogRepeatFourthString:"fourth",editDialogRepeatLastString:"last",editDialogRepeatEndString:"End",editDialogRepeatAfterString:"After",editDialogRepeatOnString:"On",editDialogRepeatOfString:"of",editDialogRepeatOccurrencesString:"occurrence(s)",editDialogRepeatSaveString:"Save Occurrence",editDialogRepeatSaveSeriesString:"Save Series",editDialogRepeatDeleteString:"Delete Occurrence",editDialogRepeatDeleteSeriesString:"Delete Series",editDialogStatuses:{free:"Free",tentative:"Tentative",busy:"Busy",outOfOffice:"Out of Office"}}}},_updateScrollbars:function(s){var k=false;var e=this;if(e.width==="auto"||e.width===null||e.autowidth){if(e.maxWidth==999999){k=true}}var i=e._views[e._view].type;var h=e._views[e._view];if(i=="monthView"&&e.resources&&e.resources.orientation=="none"){var l=e.vScrollBar[0].style.visibility;e.hScrollBar[0].style.visibility="hidden";e.vScrollBar[0].style.visibility="hidden";if((l!=e.vScrollBar[0].style.visibility)){e._updatecolumnwidths()}return}var c=parseInt(e.scrollBarSize);var t=e.table?e.table.height():0;var j=0;var o="inherit";var l=e.vScrollBar[0].style.visibility;var p=e.hScrollBar[0].style.visibility;if(!s){var g=e.host.height()}else{var g=s}if(!e.columnGroups){g-=e.showHeader?e.columnsHeight:0}else{g-=e.showHeader?e.columnsheader.height():0}if(e.filterable){g-=e.filter.height()}if(e.pageable){g-=e.pagerHeight;if(e.pagerPosition==="both"){g-=e.pagerHeight}}if(e.showToolbar){g-=e.toolbarHeight}if(e.showLegend&&e._resources.length>0){g-=e.legendHeight}var n=false;if(e.height==="auto"||e.height===null||e.autoheight){if(e.maxHeight==999999){n=true}}if(!n&&t>g&&(e.getRows().length>0)){e.vScrollBar[0].style.visibility=o;j=4+parseInt(c);e.vScrollBar.jqxScrollBar({max:t-g})}else{e.vScrollBar[0].style.visibility="hidden"}if((l!=e.vScrollBar[0].style.visibility)){e._updatecolumnwidths()}var q=e.table?e.table.width():0;if(q>4){q-=4}var r=parseInt(e.host.css("border-left-width"))+parseInt(e.host.css("border-right-width"));var m=r+e.host.width()-j;if(q>m&&!k){e.hScrollBar[0].style.visibility=o;e.hScrollBar.jqxScrollBar({max:2+r+q-m});j=4+parseInt(c);if(!n&&t!=g){if(t>g-j+4&&(e.getRows().length>0)){e.hScrollBar.jqxScrollBar({max:r+q-m});var d=e.vScrollBar[0].style.visibility==="hidden";e.vScrollBar[0].style.visibility=o;e._updatecolumnwidths();if(d){e.hScrollBar.jqxScrollBar({max:q-m+r})}var f=e.table?e.table.width():0;if(f>3){f-=3}if(f!=q){if(f<m){e.hScrollBar.jqxScrollBar({max:r+f-m});e.hScrollBar[0].style.visibility="hidden";j=0}else{if(!d){e.hScrollBar.jqxScrollBar({max:q-m+r-c})}}}}if(t-g>0){e.vScrollBar.jqxScrollBar({max:t-g+j})}else{e.vScrollBar[0].style.visibility="hidden"}}}else{e.hScrollBar[0].style.visibility="hidden"}if(e.getRows().length===0){e.vScrollBar[0].style.visibility="hidden";e.bottomRight[0].style.visibility="hidden"}if(e.vScrollBar[0].style.visibility=="hidden"){if(e.vScrollInstance.value!=0){e.vScrollInstance.setPosition(0)}}},_measureElementWidth:function(e){var d=a("<span style='visibility: hidden; white-space: nowrap;'>"+e+"</span>");d.addClass(this.toTP("jqx-widget"));d.addClass(this.toTP("jqx-grid"));d.addClass(this.toTP("jqx-grid-column-header"));d.addClass(this.toTP("jqx-widget-header"));a(document.body).append(d);var c=d.outerWidth()+20;d.remove();return c},_arrangeAutoHeight:function(e){if(!e){e=0}if(this.height==="auto"||this.height===null||this.autoheight){var h=this.table.height();var g=0;if(!this.columnGroups){g+=this.showHeader?this.columnsHeight:-1}else{g+=this.showHeader?this.columnsheader.height():-1}g+=this.showLegend&&this._resources.length>0?this.legendHeight:0;g+=this.showToolbar?this.toolbarHeight:0;g+=this.pageable?this.pagerHeight:0;if(this.pagerPosition==="both"){g+=this.pageable?this.pagerHeight:0}g+=h;if(this.filterable){var f=this.filter.find(".filterrow");var c=this.filter.find(".filterrow-hidden");var d=1;if(c.length>0){d=0}g+=this.filterHeight-1+this.filterHeight*f.length*d}if(g+e>this.maxHeight){this.host.height(this.maxHeight)}else{this.host.height(g+e)}return true}return false},_arrangeAutoWidth:function(e){if(!e){e=0}if(this.width==="auto"||this.width===null||this.autowidth){var d=0;for(var f=0;f<this.columns.records.length;f++){var c=this.columns.records[f].width;if(this.columns.records[f].hidden){continue}if(c=="auto"){c=this._measureElementWidth(this.columns.records[f].text);d+=c}else{d+=c}}width=d;if(width+e>this.maxWidth){this.host.width(this.maxWidth)}else{this.host.width(width+e)}return true}return false},_measureTopAndHeight:function(){var c=this.host.height();var d=0;if(this.showToolbar){d+=this.toolbarHeight;c-=parseInt(this.toolbarHeight)}if(this.showLegend&&this.legendPosition!="bottom"&&this._resources.length>0){d+=parseInt(this.legendHeight)+1}return{top:d,height:c}},_arrange:function(){if(!this.table){return}this._arrangeAutoHeight();this._arrangeAutoWidth();var e=this.legendHeight;if(this._resources.length==0){e=0}var u=this._hostWidth?this._hostWidth:this.host.width();var r=this._hostHeight?this._hostHeight:this.host.height();var k=r;var j=this;if(this.showLegend&&this.legendPosition=="top"){this.legendbartop[0].style.visibility="inherit"}else{this.legendbartop[0].style.visibility="hidden"}var q=0;if(this.showToolbar){this.toolbar.width(u);this.toolbar[0].style.height=this.toolbarHeight-1+"px";this.toolbar[0].style.top="0px";q+=this.toolbarHeight;r-=parseInt(this.toolbarHeight)}else{this.toolbar[0].style.height="0px"}if(this.showLegend&&this.legendPosition=="bottom"){this.legendbarbottom[0].style.width=u+"px";this.legendbarbottom[0].style.height=e+"px"}else{this.legendbarbottom[0].style.height="0px"}if(this.showLegend&&this.legendPosition=="top"){if(this.legendbartop[0].style.width!=u+"px"){this.legendbartop[0].style.width=parseInt(u)+"px"}if(this.legendbartop[0].style.height!=e+"px"){this.legendbartop[0].style.height=parseInt(e-1)+"px"}if(this.legendbartop[0].style.top!=q+"px"){this.legendbartop[0].style.top=q+"px"}var f=q+e+"px";if(this.content[0].style.top!=f){q=q+e;this.content[0].style.top=q+"px"}}this._updateScrollbars(k);var c=parseInt(this.scrollBarSize);var n=4;var g=2;var h=0;if(this.vScrollBar[0].style.visibility!="hidden"){h=c+n}if(this.hScrollBar[0].style.visibility!="hidden"){g=c+n+2}if("hidden"!=this.vScrollBar[0].style.visibility||"hidden"!=this.hScrollBar[0].style.visibility){var v=this._arrangeAutoHeight(g-2);var s=this._arrangeAutoWidth(h+1);if(v||s){this.legendbartop[0].style.width=parseInt(u)+"px";this.toolbar[0].style.width=parseInt(u)+"px";this.legendbarbottom[0].style.width=parseInt(u)+"px";this.filter[0].style.width=parseInt(u)+"px"}if(v){var x=this._measureTopAndHeight();q=x.top;r=x.height}}var o=0;if(this.showLegend&&this.legendPosition=="bottom"){g+=e;o+=e}else{if(this.showLegend){g+=e}}if(this.hScrollBar[0].style.height!=c+"px"){this.hScrollBar[0].style.height=parseInt(c)+"px"}if(this.hScrollBar[0].style.top!=q+r-n-c-o+"px"||this.hScrollBar[0].style.left!="0px"){this.hScrollBar[0].style.top=q+r-n-c-o-1+"px";this.hScrollBar[0].style.left="0px"}var m=this.hScrollBar[0].style.width;var i=false;var w=false;if(h==0){if(m!=(u-2)+"px"){this.hScrollBar[0].style.width=(u-2)+"px";i=true}}else{if(m!=(u-c-n)+"px"){this.hScrollBar[0].style.width=(u-c-n+"px");i=true}}if(this.vScrollBar[0].style.width!=c+"px"){this.vScrollBar[0].style.width=c+"px";w=true}if(this.vScrollBar[0].style.height!=parseInt(r)-g+"px"){this.vScrollBar[0].style.height=(parseInt(r)-g+"px");w=true}if(this.vScrollBar[0].style.left!=parseInt(u)-parseInt(c)-n+"px"||this.vScrollBar[0].style.top!=q+"px"){this.vScrollBar[0].style.top=q+"px";this.vScrollBar[0].style.left=parseInt(u)-parseInt(c)-n+"px"}if(this.rtl){this.vScrollBar.css({left:"0px",top:q});if(this.vScrollBar.css("visibility")!="hidden"){this.hScrollBar.css({left:c+2})}}var l=this.vScrollInstance;l.disabled=this.disabled;var t=this.hScrollInstance;t.disabled=this.disabled;if(i){t.refresh()}if(w){l.refresh()}var p=function(y){if((y.vScrollBar[0].style.visibility!="hidden")&&(y.hScrollBar[0].style.visibility!="hidden")){y.bottomRight[0].style.visibility="inherit";y.bottomRight[0].style.left=1+parseInt(y.vScrollBar.css("left"))+"px";y.bottomRight[0].style.top=parseInt(y.hScrollBar.css("top"))+"px";if(y.rtl){y.bottomRight.css("left","0px")}y.bottomRight[0].style.width=parseInt(c)+3+"px";y.bottomRight[0].style.height=parseInt(c)+4+"px"}else{y.bottomRight[0].style.visibility="hidden"}};p(this);if(this.content[0].style.width!=u-h+"px"){this.content[0].style.width=u-h+"px"}if(this.content[0].style.height!=r-g+3+"px"){this.content[0].style.height=r-g+3+"px"}if(this.content[0].style.top!=q+"px"){this.content[0].style.top=parseInt(q)+"px"}if(this.rtl){this.content.css("left",h)}if(this.showLegend&&this.legendPosition=="bottom"){this.legendbarbottom.css("top",q-1+r-e-(this.pageable?this.pagerHeight:0));if(this.rtl){if(this.hScrollBar.css("visibility")=="hidden"){this.legendbarbottom.css("left",this.content.css("left"))}else{this.legendbarbottom.css("left","0px")}}}this.vScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;this.hScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;if(u!=parseInt(this.dataloadelement[0].style.width)){this.dataloadelement[0].style.width=this.element.style.width}if(r!=parseInt(this.dataloadelement[0].style.height)){this.dataloadelement[0].style.height=this.element.style.height}this._hostWidth=u;this._hostHeight=k;var d=this.schedulercontent.coord();this._tableOffset=d},scrollOffset:function(e,d){if(arguments.length==0||(e!=null&&typeof(e)=="object"&&!e.top)){return{left:this.hScrollBar.jqxScrollBar("value"),top:this.vScrollBar.jqxScrollBar("value")}}if(e!=null&&typeof(e)=="object"){var d=e.left;var c=e.top;var e=c}if(e==null||d==null||e==undefined||d==undefined){return}this.vScrollBar.jqxScrollBar("setPosition",e);this.hScrollBar.jqxScrollBar("setPosition",d)},scrollleft:function(c){if(c==null||c==undefined){return}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.jqxScrollBar("setPosition",c)}},scrolltop:function(c){if(c==null||c==undefined){return}if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar("setPosition",c)}},beginAppointmentsUpdate:function(){this._appupdating=true},endAppointmentsUpdate:function(){this._appupdating=false;this._renderrows()},beginUpdate:function(){this._updating=true;this._datachanged=false},endUpdate:function(c){this._updating=false;if(c===false){return}this._rendercolumnheaders();this.refresh()},updating:function(){return this._updating},databind:function(i,j,d){if(this.loadingstate===true){return}if(this.host.css("display")=="block"){if(this.autoShowLoadElement){a(this.dataloadelement).css("visibility","visible");a(this.dataloadelement).css("display","block");this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height())}else{a(this.dataloadelement).css("visibility","hidden");a(this.dataloadelement).css("display","none")}}var h=this;if(i==null){i={}}if(i.sortcomparer==undefined||i.sortcomparer==null){i.sortcomparer=null}if(i.filter==undefined||i.filter==null){i.filter=null}if(i.sort==undefined||i.sort==null){i.sort=null}if(i.data==undefined||i.data==null){i.data=null}var f=null;if(i!=null){f=i._source!=undefined?i._source.url:i.url}this.dataview=this.dataview||new a.jqx.scheduler.dataView("dataView");this.resourcesDataView=this.resourcesDataView||new a.jqx.scheduler.dataView("resourcesDataView");this.dataview.pageable=this.pageable;this.dataview.scheduler=this;this.resourcesDataView.scheduler=this;this._loading=true;this.appointments=new Array();this.uiappointments=new Array();var c=1;if(this.resources&&this.resources.source){c=2}var e=0;var g=function(){if(e==c){var l=h._resources.length>1?h._resources.length:1;if(h.resources&&h.resources.orientation==="horizontal"){h.tableColumns=l;h.tableRows=1}else{if(h.resources&&h.resources.orientation==="vertical"){h.tableRows=l;h.tableColumns=1}else{h.tableColumns=1;h.tableRows=1}}h._render();if(h.autoShowLoadElement&&!h._loading){a(h.dataloadelement).css("visibility","hidden");a(h.dataloadelement).css("display","none")}h._updateTouchScrolling();h._raiseEvent("bindingComplete");if(d){d()}if(!h.initializedcall){h.initializedcall=true;h.isInitialized=true;if((h.width!=null&&h.width.toString().indexOf("%")!=-1)||(h.height!=null&&h.height.toString().indexOf("%")!=-1)){h._updatesize(true)}if(h.ready){h.ready()}if(h.host.css("visibility")=="hidden"){var k=a.jqx.browser.msie&&a.jqx.browser.version<8;if(h.vScrollBar.css("visibility")=="visible"){h.vScrollBar.css("visibility","inherit")}if(h.hScrollBar.css("visibility")=="visible"){h.hScrollBar.css("visibility","inherit")}h._intervalTimer=setInterval(function(){if(h.host.css("visibility")=="visible"){h._updatesize(true);clearInterval(h._intervalTimer)}},100)}}}};this.dataview.update=function(B){h._loading=false;h.appointmentsByKey=new Array();var H=h.source._source.datafields;if(h.groups&&h.groups.length>0){var t=Object.prototype.toString;var l=h.groups[0];Object.prototype.toString=(typeof l=="function")?l:function(){return this[l]};if(!h.source.records.sort){var y=new Array();var q=0;a.each(data,function(){y[startindex+q++]=this});data=y}h.source.records.sort(function(L,K){if(L===undefined){L=null}if(K===undefined){K=null}if(L===null&&K===null){return 0}if(L===null&&K!==null){return -1}if(L!==null&&K===null){return 1}var O=0;var N=0;if(L&&L.uid){O=L.uid}if(K&&K.uid){N=K.uid}L=L.toString();K=K.toString();if(a.jqx.dataFormat.isNumber(L)&&a.jqx.dataFormat.isNumber(K)){if(L<K){return -1}if(L>K){return 1}return 0}else{if(a.jqx.dataFormat.isDate(L)&&a.jqx.dataFormat.isDate(K)){if(L<K){return -1}if(L>K){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(L)&&!a.jqx.dataFormat.isNumber(K)){L=String(L).toLowerCase();K=String(K).toLowerCase()}}}try{if(L<K){return -1}if(L>K){return 1}}catch(M){var P=M}if(typeof(O)=="number"){if(O<N){return -1}if(O>N){return 1}}return 0});Object.prototype.toString=t}var o=["from","to","id","style","description","location","subject","background","color","borderColor","recurrencePattern","recurrenceException","draggable","resizable","tooltip","hidden","allDay","timeZone","ownerId","resourceId"];var m=new Array();for(var C=0;C<h.source.records.length;C++){var p=h.source.records[C];var n={};for(var J in h.appointmentDataFields){var l=h.appointmentDataFields[J];var A=p[l];if(J=="from"||J=="to"){A=new a.jqx.date(A)}if(J=="style"){if(A){var u=h.getAppointmentColors(A);n.color=u.color;n.background=u.background;n.borderColor=u.border}}if(J=="recurrencePattern"){if(A){A=new a.jqx.scheduler.recurrencePattern(A);A.timeZone=p.timeZone||h.timeZone}}if(J=="recurrenceException"){var E=new Array();if(A){if(A.indexOf("EXDATE:")>=0){A=A.substring(A.indexOf("EXDATE:")+7)}var v=new Array();if(A.indexOf(",")>=0){v=A.split(",")}else{v.push(A)}for(var D=0;D<v.length;D++){var z=v[D];if(z.indexOf(";")>=0){var r=z.split(";")[1];z=z.split(";")[0];if(r.toLowerCase().indexOf("display")>=0&&r.toLowerCase().indexOf("none")){n.hidden=true}}try{var G=a.jqx.scheduler.utilities.untilStringToDate(z);if(G!="Invalid Date"){if(n.timeZone){G=new a.jqx.date(G,n.timeZone)}else{if(h.timeZone){G=G.toTimeZone(h.timeZone)}else{G=new a.jqx.date(G)}}}}catch(I){var G=new a.jqx.date(z,h.timeZone)}E.push(G)}}A=E}n[J]=A}for(var w in o){var J=o[w];if(n[J]==undefined){var A="";if(J=="originalData"){continue}if(J=="ownerId"){A=null}if(J=="timeZone"){A=null}if(J=="recurrencePattern"){A=null}if(J=="recurrenceException"){A=null}if(J=="allDay"){A=false}if(J=="draggable"){A=true}if(J=="resizable"){A=true}if(J=="hidden"){A=false}if(J=="resourceId"){A=null}if(J=="from"){A=new a.jqx.date()}if(J=="to"){A=new a.jqx.date().addHours(1)}n[J]=A}}n.originalData=p;if(h.resources&&!h.resources.source){if(m.indexOf(n.resourceId)==-1){m.push(n.resourceId)}}h.appointmentsByKey[p.uid]=n;h.appointments.push(n);var x=new a.jqx.scheduler.appointment(n);if(n.timeZone){x.from=x.from.toTimeZone(n.timeZone);x.to=x.to.toTimeZone(n.timeZone)}if(h.timeZone){if(!n.timeZone){x.timeZone=h.timeZone}x.from=x.from.toTimeZone(h.timeZone);x.to=x.to.toTimeZone(h.timeZone)}else{x.from=x.from.toTimeZone(null);x.to=x.to.toTimeZone(null)}n.jqxAppointment=x;if(n.recurrenceException){for(var F=0;F<n.recurrenceException.length;F++){var G=x.recurrenceException[F];var s=x.clone();s.occurrenceFrom=G;var k=x.duration();if(h.allDay){k=new a.jqx.timeSpan(10000*(h.to-h.from))}s.from=G;s.to=G.add(k);s.rootAppointment=x;s.hidden=true;x.exceptions.push(s)}}x.boundAppointment=n;x.scheduler=h;h.uiappointments.push(x)}h._resources=m;e++;g()};this.resourcesDataView.update=function(k){if(h.resources.dataField){h._resources=new Array();for(var l=0;l<k.length;l++){if(h._resources.indexOf(k[l][h.resources.dataField])>=0){continue}h._resources.push(k[l][h.resources.dataField])}}else{h._resources=k}if(h.resources.orientation==undefined){h.resources.orientation="none"}e++;g()};this.dataview.databind(i);if(this.resources&&this.resources.source){this.resourcesDataView.databind(this.resources.source)}},_raiseEvent:function(h,d){if(d==undefined){d={owner:null}}var e=h;var f=d;f.owner=this;var g=new a.Event(e);g.owner=this;g.args=f;var c=this.host.trigger(g);d=g.args;return c},ensureAppointmentVisible:function(c){if(this.appointmentsByKey[c]){return this._ensureAppointmentVisible(this.appointmentsByKey[c].jqxAppointment)}return false},_ensureAppointmentVisible:function(i){if(this.vScrollBar[0].style.visibility==="hidden"&&this.hScrollBar[0].style.visibility==="hidden"){return false}if(!i){return false}var E=i.id;var r=a('[data-key="'+E+'"]');if(r.length>0){var d=r[0]}else{if(i.elements&&i.elements.length>0){var g=i.elements[0];var d=g.element}else{return false}}var x=this.vScrollInstance.value;var w=this.hScrollInstance.value;if(this.rtl){var w=this.hScrollInstance.max-w}var q=this.element.clientHeight;var t=this.element.clientWidth;var z=0;if(!this.columnGroups){z+=this.showHeader?this.columnsHeight:0}else{z+=this.showHeader?this.columnsheader.height():0}var p=this._views[this._view].type;var m=this._views[this._view];var B=0;if(p=="dayView"||p=="weekView"){var v=this.showAllDayRow;if(m.timeRuler&&(p==="dayView"||p==="weekView")){if(m.timeRuler.showAllDayRow!=undefined){v=m.timeRuler.showAllDayRow}}if(v){if(this.tableRows==1){B=this.table[0].rows[0].clientHeight}else{B=this.table[0].rows[1].clientHeight}}var o=i.duration().days()>=1||i.allDay;if(o&&this.tableRows==1&&this.tableColumns==1){return false}}if(this.showToolbar){z+=this.toolbarHeight}q-=z;if(this.showLegend&&this._resources.length>0){q-=this.legendHeight}var f=0;var k=0;var e=x-f;var A=q+e-B;var u=w-k;var D=t+u;var C=d;C=a(C);var h=C[0].clientHeight;var j=C.position().top-B;var l=j+h;if(j<=e){var y=j;if(y<0){y=0}if(!o||(o&&this.tableRows>1)){this.vScrollBar.jqxScrollBar("setPosition",y)}}else{if(j>=A){var y=j;if(y<0){y=0}if(!o||(o&&this.tableRows>1)){this.vScrollBar.jqxScrollBar("setPosition",y-2)}}}var s=C.position().left;s=Math.round(s);var c=s+C.outerWidth();if(Math.round(C.position().left)===0){this.hScrollBar.jqxScrollBar("setPosition",0)}if(s<=u){var n=s-C.outerWidth()+k;if(n<0){n=0}if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",s)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-s)}}if(s>D){if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",s)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-s)}}},ensureDateVisible:function(e,m){var h=this;var n=a.type(e)=="date"?e:e.toDate();for(var g=0;g<h.rows.length;g++){for(var f=0;f<h.rows[g].cells.length;f++){var l=h.rows[g].cells[f];if(m){if(l.getAttribute("data-view")!==m){continue}}var k=l.getAttribute("data-date");var c=h._getDateByString;var d=c(k);if(d.valueOf()==n.valueOf()){return h.ensureVisible(l)}}}},ensureVisible:function(c){if(this.vScrollBar[0].style.visibility==="hidden"&&this.hScrollBar[0].style.visibility==="hidden"){return false}var u=this.vScrollBar.jqxScrollBar("value");var t=this.hScrollBar.jqxScrollBar("value");if(this.rtl){t=this.hScrollBar.jqxScrollBar("max")-t}var n=this._hostHeight;var q=this._hostWidth;var x=0;if(!this.columnGroups){x+=this.showHeader?this.columnsHeight:0}else{x+=this.showHeader?this.columnsheader.height():0}if(this.showToolbar){x+=this.toolbarHeight}n-=x;if(this.showLegend&&this._resources.length>0){n-=this.legendHeight}if(this.hScrollBar.css("visibility")!="hidden"){n-=20}var f=0;var i=0;var m=this._views[this._view].type;var k=this._views[this._view];var z=0;if(m=="dayView"||m=="weekView"){var s=this.showAllDayRow;if(k.timeRuler&&(m==="dayView"||m==="weekView")){if(k.timeRuler.showAllDayRow!=undefined){s=k.timeRuler.showAllDayRow}}if(s){if(this.tableRows==1){z=this.table[0].rows[0].clientHeight}else{z=this.table[0].rows[1].clientHeight}}}var e=u-f;var y=n+e-z;var r=t-i;var B=q+r;var A=c;A=a(A);var g=A.position().top-z;var j=g+A.outerHeight();var p=A.position().left;p=Math.round(p);var d=p+A.outerWidth();if(Math.round(A.position().left)===0){this.hScrollBar.jqxScrollBar("setPosition",0)}if(p<=r){var l=p-A.outerWidth()+i;if(l<0){l=0}if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",l)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-l)}}if(d>=B){if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",2+i+d-q)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-(2+i+d-q))}}var h=A.parent().index();if(this.tableRows>0){h--}if(Math.round(A.position().top)===0||h===0){return this.vScrollBar.jqxScrollBar("setPosition",0)}else{var o=this.table[0].rows.length-1;var w=this.table[0].rows[o];if(w[0]===A.parent()[0]){return this.vScrollBar.jqxScrollBar("setPosition",this.vScrollBar.jqxScrollBar("max"))}}if(g<=e){var v=g;if(v<0){v=0}return this.vScrollBar.jqxScrollBar("setPosition",v)}if(j>=y){return this.vScrollBar.jqxScrollBar("setPosition",4+j-n+z)}},getColumn:function(c){var d=null;if(this.columns.records){a.each(this.columns.records,function(){if(this.datafield==c||this.displayfield==c){d=this;return false}})}return d},_setcolumnproperty:function(d,f,g){if(d==null||f==null||g==null){return null}f=f.toLowerCase();var e=this.getColumn(d);if(e==null){return}var h=e[f];e[f]=g;var c=this.getColumn(d);if(c!=null){c[f]=g}switch(f){case"text":case"hidden":case"hideable":case"renderer":case"align":case"cellsalign":case"contenttype":case"cellclass":case"cellclassname":case"class":case"width":case"minwidth":case"maxwidth":if(f=="align"){this._rendercolumnheaders();this.refresh()}else{if(f=="text"||f=="class"||f=="hidden"||f=="pinned"||f=="resizable"||f=="renderer"){this._rendercolumnheaders();this.refresh()}else{if(f=="width"||f=="maxwidth"||f=="minwidth"){e._width=null;e._percentagewidth=null;this._updatecolumnwidths();this.refresh()}else{this.refresh()}}}break}},getColumnProperty:function(c,e){if(c==null||e==null){return null}e=e.toLowerCase();var d=this.getColumn(c);return d[e]},setColumnProperty:function(c,d,e){this._setcolumnproperty(c,d,e)},hideColumn:function(c){this._setcolumnproperty(c,"hidden",true)},showColumn:function(c){this._setcolumnproperty(c,"hidden",false)},updateBoundData:function(d,c){this.databind(this.source,d,c)},_refreshColumns:function(){this._initializeColumns();this.columnsheader=this.columnsheader||a('<div style="overflow: hidden;"></div>');this.columnsheader.children().remove();var c=this.columnsHeight;c=this._preparecolumnGroups();this.columnsheader.height(c);this._rendercolumnheaders()},_refreshColumnTitles:function(){var q=this._views[this._view].type;var p=this._views[this._view];var m=this;var e=new Array();if(m.columns.records[0].timeColumn){e.push({})}if(p.timeRuler&&p.timeRuler.timeZones){for(var w=0;w<p.timeRuler.timeZones.length;w++){e.push({})}}var r=function(B,H,J){var C="halfHour";if(p.timeRuler&&p.timeRuler.scale){C=p.timeRuler.scale}var L=24;var A=0;var K=23;if(p.timeRuler){if(p.timeRuler.scaleStartHour!=undefined){var A=parseInt(p.timeRuler.scaleStartHour)}if(p.timeRuler.scaleEndHour!=undefined){var K=parseInt(p.timeRuler.scaleEndHour)}if(A<0){A=0}if(K<0){K=23}if(A>23){A=0}if(K>23){K=23}L=K-A+1}var E=60;var I=2;if(C){switch(C){case"sixtyMinutes":case"hour":I=1;break;case"thirdyMinutes":case"halfHour":I=2;break;case"fifteenMinutes":case"quarterHour":I=4;break;case"tenMinutes":I=6;break;case"fiveMinutes":I=12;break}}var N=new Array();var M="auto";if(p.timeRuler&&p.timeRuler.formatString){M=p.timeRuler.formatString}var z=A;var F=L;var j=B.addHours(z);for(var G=0;G<F;G++){var y=j.toDate();if(M==="auto"){if((y.getHours()==0&&y.getMinutes()==0)||(y.getHours()==12&&y.getMinutes()==0)){var D="hh tt"}else{var D="hh:mm"}}else{if(a.isFunction(M)){var D=M(y)}}if(a.jqx.dataFormat.isDate(y)){y=a.jqx.dataFormat.formatdate(y,D,m.schedulerLocalization)}j=j.addMinutes(E);e.push({});m.columns.records[e.length-1].text=y}};var l=this.tableColumns;for(var u=0;u<this.tableColumns;u++){switch(q){case"dayView":var h=this.getViewStart();if(false===p.showWeekends){if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}}e.push({});this.columns.records[e.length-1].text=this._getDayName(h.dayOfWeek());break;case"weekView":case"monthView":for(var w=0;w<7;w++){var v=this.schedulerLocalization.firstDay+w;if(false===p.showWeekends){if(w===0||w===6){continue}}e.push({});this.columns.records[e.length-1].text=this._getDayName(v)}break;case"timelineDayView":var g=m._resources[u]?m._resources[u]:"Resource"+u;r(m.getViewStart(),g);break;case"timelineWeekView":for(var w=0;w<7;w++){var v=this.schedulerLocalization.firstDay+w;if(false===p.showWeekends){if(w===0||w===6){continue}}r(m.getViewStart().addDays(w),this._getDayName(v))}break;case"timelineMonthView":var o=m.getViewStart();var x="auto";if(p.timeRuler&&p.timeRuler.formatString){x=p.timeRuler.formatString}for(var w=0;w<41;w++){var v=o.dayOfWeek();if(false===p.showWeekends){if(v===0||v===6){continue}}var s=o.toDate();if(x==="auto"){var d="dd";s=o.toDate();if(s.getDate()===1){d="MMM dd"}}else{if(a.isFunction(x)){var d=x(s)}}if(a.jqx.dataFormat.isDate(s)){s=a.jqx.dataFormat.formatdate(s,d,m.schedulerLocalization)}o=o.addDays(1);e.push({});m.columns.records[e.length-1].text=s}break}}var k=m.columnsHeight;var c=function(j,y){var i=m.columnGroupslevel*m.columnsHeight;i=i-(y.level*m.columnsHeight);return i};var t=0;for(var w=0;w<this.columns.records.length;w++){var f=this.columns.records[w];if(f.timeColumn){continue}if(m.columnGroups){if(m.columnGroups.length){k=c(f.datafield,f)}}var n=f.renderer!=null?f.renderer(f.text,f.align,k):m._rendercolumnheader(f.text,f.align,k,f);if(n==null){n=m._rendercolumnheader(f.text,f.align,k,m)}if(f.renderer!=null){n=a(n)}a(f.element).html(n)}},refresh:function(d){if(d!=true){var c=this;if(a.jqx.isHidden(c.host)){return}c.table[0].style.top="0px";c.vScrollInstance.setPosition(0);c._renderrows();c._arrange();c._renderhorizontalscroll();c._updateTouchScrolling();c._refreshToolBar();c._updateFocusedCell()}},_updateFocusedCell:function(){var k=this;if(k.focusedCell){k._updateCellsSelection();return}var e=k._views[k._view].type;var h=k._views[k._view];var d=k.showAllDayRow;if(h.timeRuler&&(e==="dayView"||e==="weekView")){if(h.timeRuler.showAllDayRow!=undefined){d=h.timeRuler.showAllDayRow}}if(!d||(e!="dayView"&&e!="weekView")){k.focusedCell=k.rows[0].cells[0];if(k.rtl){k.focusedCell=k.rows[0].cells[k.rows[0].cells.length-1]}}else{k.focusedCell=k.rows[1].cells[0];if(k.rtl){k.focusedCell=k.rows[1].cells[k.rows[1].cells.length-1]}}if(k.focusedCell.className.indexOf("jqx-scheduler-disabled-cell")>=0){k.focusedCell=null;for(var g=0;g<this.rows.length;g++){for(var f=0;f<this.rows[g].cells.length;f++){var c=this.rows[g].cells[f];if(c.className.indexOf("jqx-scheduler-disabled-cell")==-1){k.focusedCell=c;break}}if(k.focusedCell){break}}}k._lastSelectedCell=k.focusedCell;k._updateCellsSelection()},_updateTouchScrolling:function(){var d=this.that;return;if(d.isTouchDevice()){var f=a.jqx.mobile.getTouchEventName("touchstart");var e=a.jqx.mobile.getTouchEventName("touchend");var c=a.jqx.mobile.getTouchEventName("touchmove");if(d.schedulercontent){d.removeHandler(d.schedulercontent,f+".touchScroll");d.removeHandler(d.schedulercontent,c+".touchScroll");d.removeHandler(d.schedulercontent,e+".touchScroll");d.removeHandler(d.schedulercontent,"touchcancel.touchScroll");a.jqx.mobile.touchScroll(d.schedulercontent[0],Math.max(d.vScrollInstance.max,d.hScrollInstance.max),function(i,h){if(d.vScrollBar.css("visibility")!="hidden"){var g=d.vScrollInstance.value;d.vScrollInstance.setPosition(g+h)}if(d.hScrollBar.css("visibility")!="hidden"){var g=d.hScrollInstance.value;d.hScrollInstance.setPosition(g+i)}d.scrolled=new Date();d.vScrollInstance.thumbCapture=true},this.element.id,this.hScrollBar,this.vScrollBar)}}},scrollWidth:function(){return this.hScrollInstance.max},scrollHeight:function(){return this.vScrollInstance.max},scrollLeft:function(c){if(this.hScrollBar[0].style.visibility!="hidden"){this.hScrollInstance.setPosition(c)}},scrollTop:function(c){if(this.vScrollBar[0].style.visibility!="hidden"){this.vScrollInstance.setPosition(c)}},render:function(j){var f="<div style='overflow: hidden; -webkit-appearance: none; outline: none; width:100%; height: 100%; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div id='wrapper"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; align:left; left: 0px; top: 0px; valign:top; position: relative;'><div id='toolbar' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='legendbartop' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='filter' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='content"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; border: none; padding: 0px; margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='verticalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='horizontalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; border: none; position: absolute;'></div><div id='aggregates' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='legendbarbottom' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='pager' style='z-index: 20; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div></div></div>";this.element.innerHTML=f;this.wrapper=this.host.find("#wrapper"+this.element.id);this.content=this.host.find("#content"+this.element.id);this.content.addClass(this.toTP("jqx-reset"));var h=this.host.find("#verticalScrollBar"+this.element.id);var l=this.host.find("#horizontalScrollBar"+this.element.id);this.bottomRight=this.host.find("#bottomRight").addClass(this.toTP("jqx-grid-bottomright")).addClass(this.toTP("jqx-scrollbar-state-normal"));if(this.vScrollBar){this.vScrollBar.jqxScrollBar("destroy")}if(this.hScrollBar){this.hScrollBar.jqxScrollBar("destroy")}this.vScrollBar=h.jqxScrollBar({vertical:true,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme,_triggervaluechanged:false});this.hScrollBar=l.jqxScrollBar({vertical:false,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme,_triggervaluechanged:false});this.vScrollBar.css("visibility","hidden");this.hScrollBar.css("visibility","hidden");this.vScrollInstance=a.data(this.vScrollBar[0],"jqxScrollBar").instance;this.hScrollInstance=a.data(this.hScrollBar[0],"jqxScrollBar").instance;this.pager=this.host.find("#pager");this.pager[0].id="pager"+this.element.id;this.toolbar=this.host.find("#toolbar");this.toolbar[0].id="toolbar"+this.element.id;this.toolbar.addClass(this.toTP("jqx-scheduler-toolbar"));this.toolbar.addClass(this.toTP("jqx-widget-header"));this.legendbarbottom=this.host.find("#legendbarbottom");this.legendbarbottom[0].id="legendbarbottom"+this.element.id;this.legendbarbottom.addClass(this.toTP("jqx-scheduler-legend-bar-bottom"));this.legendbarbottom.addClass(this.toTP("jqx-scheduler-legend-bar"));this.legendbarbottom.addClass(this.toTP("jqx-widget-header"));this.pager.addClass(this.toTP("jqx-grid-pager"));this.pager.addClass(this.toTP("jqx-widget-header"));this.legendbartop=this.host.find("#legendbartop");this.legendbartop.addClass(this.toTP("jqx-scheduler-legend-bar-top"));this.legendbartop.addClass(this.toTP("jqx-scheduler-legend-bar"));this.legendbartop.addClass(this.toTP("jqx-widget-header"));this.schedulertable=null;if(this.localizestrings){this.localizestrings();if(this.localization!=null){this.localizestrings(this.localization,false)}}this._builddataloadelement();this._cachedcolumns=this.columns;var c=this.source.datafields;if(c==null&&this.source._source){c=this.source._source.datafields}if(c){for(var d=0;d<this.columns.length;d++){var e=this.columns[d];if(e&&e.cellsFormat&&e.cellsFormat.length>2){for(var k=0;k<c.length;k++){if(c[k].name==e.datafield&&!c[k].format){c[k].format=e.cellsFormat;break}}}}}this.databind(this.source);if(this.showToolbar){this.toolbar.css("visibility","inherit")}if(this.showLegend){this.legendbarbottom.css("visibility","inherit")}this.tableheight=null;var g=this;var i=function(){if(g.content){g.content[0].scrollTop=0;g.content[0].scrollLeft=0}if(g.schedulercontent){g.schedulercontent[0].scrollLeft=0;g.schedulercontent[0].scrollTop=0}};this.removeHandler(this.content,"scroll");this.removeHandler(this.content,"mousedown");this.addHandler(this.content,"scroll",function(m){i();return false});if(j!==true){this._render()}},_render:function(){var h=this;if(h.dataview==null){return}if(h._loading){return}if(h.columnsHeight!=25||h.columnGroups){h._measureElement("column")}h.rowinfo=new Array();h._removeHandlers();if(h.columns==null){h.columns=new a.jqx.dataCollection(h.element)}else{h._initializeColumns()}h.host.height(h.height);h.host.width(h.width);a.jqx.utilities.html(h.content,"");h.columnsheader=h.columnsheader||a('<div style="overflow: hidden;"></div>');h.columnsheader.remove();h.columnsheader.addClass(h.toTP("jqx-widget-header"));h.columnsheader.addClass(h.toTP("jqx-grid-header"));if(!h.showHeader){h.columnsheader.css("display","none")}else{if(h.columnsheader){h.columnsheader.css("display","block")}}h.schedulercontent=h.schedulercontent||a('<div style="width: 100%; overflow: hidden; position: absolute;"></div>');h.schedulercontent.remove();var f=h.columnsHeight;f=h._preparecolumnGroups();h.columnsheader.height(f);h.content.append(h.columnsheader);h.content.append(h.schedulercontent);h._rendercolumnheaders();h.tableheight=null;h.schedulercontent.find("#contenttable"+h.element.id).remove();if(h.table!=null){h.table.remove();h.table=null}if(h.pinnedtable!=null){h.pinnedtable.remove();h.pinnedtable=null}h.table=a('<div id="contenttable'+h.element.id+'" style="overflow: hidden; position: relative;"></div>');h.pinnedtable=a('<div id="contenttable2'+h.element.id+'" style="display: none; overflow: hidden; position: relative;"></div>');h.schedulercontent.addClass(h.toTP("jqx-grid-content"));h.schedulercontent.addClass(h.toTP("jqx-widget-content"));h.schedulercontent.append(h.table);if(h.tableRows==1){h.schedulercontent.append(h.pinnedtable)}h._renderrows();h._arrange();h._resourcesElements=new Array();var e=function(i,j){var i=a("<div style='margin:5px; position: relative;'></div>").appendTo(i);h._resourcesElements[j]=new Array();a.each(h._resources,function(o){var m=h.getColors(o);var n=this;var p=a("<div data-toggle='on' style='border-color: "+m.border+"; background: "+m.background+";' class='"+h.toThemeProperty("jqx-scheduler-legend")+"'></div>");p.appendTo(i);var l=a("<div class='"+h.toThemeProperty("jqx-scheduler-legend-label")+"'>"+n+"</div>");l.appendTo(i);h._resourcesElements[j][n]=p;var k=function(){if(p.attr("data-toggle")=="on"){h.hideAppointmentsByResource(n)}else{h.showAppointmentsByResource(n)}};h.addHandler(p,"mousedown",function(){k();return false});h.addHandler(l,"mousedown",function(){k();return false})})};e(h.legendbarbottom,"bottom");e(h.legendbartop,"top");if(h.legendPosition=="top"){h.legendbarbottom.hide()}else{h.legendbartop.hide()}if(h._resources.length==0){h.legendbarbottom.hide();h.legendbartop.hide()}if(h.renderToolBar){h.renderToolBar(h.toolbar)}else{h._renderToolBar()}if(h.disabled){h.host.addClass(h.toThemeProperty("jqx-fill-state-disabled"))}h._renderhorizontalscroll();h._addHandlers();h.clearSelection();var d=h._views[h._view].type;var g=h._views[h._view];var c=h.showAllDayRow;if(g.timeRuler&&(d==="dayView"||d==="weekView")){if(g.timeRuler.showAllDayRow!=undefined){c=g.timeRuler.showAllDayRow}}if(!c||(d!="dayView"&&d!="weekView")){h.focusedCell=h.rows[0].cells[0]}else{h.focusedCell=h.rows[1].cells[0]}h._lastSelectedCell=h.focusedCell;h._updateCellsSelection()},clear:function(){if(this.source){this.source.records=new Array();this.source.hierarchy=new Array()}this.dataview._filteredData=new Array();this.databind(null);this._render()},getJQXAppointmentByElement:function(e){var g=this;var f=e.getAttribute?e.getAttribute("data-key"):e.attr("data-key");if(f.indexOf(".")>=0){var d=f.substring(0,f.indexOf("."));var i=f.substring(f.indexOf(".")+1);var h=g.appointmentsByKey[d];var c=h.jqxAppointment.renderedAppointments[f]}else{var h=g.appointmentsByKey[f];var c=h.jqxAppointment}return c},_renderToolBar:function(){var j=this;var c=a('<div style="width: 100%; height: 100%; position: relative;"></div>');var l=(this.toolbarHeight-20)/2;c.css("top",l);j.toolbarLeftButton=a('<div type="button" style="outline: none; padding: 0px; margin-top: 3px; margin-left: 3px; margin-right: 3px; width: 27px; float: left;"></div>');j.toolbarRightButton=a('<div type="button" style="outline: none; padding: 0px; margin-top: 3px; margin-right: 3px; width: 27px; float: left;"></div>');j.toolbarLeftButton.attr("title",j.schedulerLocalization.toolBarPreviousButtonString);j.toolbarRightButton.attr("title",j.schedulerLocalization.toolBarNextButtonString);j.toolbarRightButton.jqxButton({enableHover:false,enableDefault:false,enablePressed:false,cursor:"pointer",disabled:j.disabled,theme:j.theme});j.toolbarLeftButton.jqxButton({enableHover:false,enableDefault:false,enablePressed:false,cursor:"pointer",disabled:j.disabled,theme:j.theme});j.dateTimeInput=a('<div style="outline: none; padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: left;"></div>');j.toolbarLeftButton.find(".jqx-icon-arrow-left").remove();j.toolbarRightButton.find(".jqx-icon-arrow-right").remove();var f=a("<div style='outline: none; margin-left: 6px; width: 15px; height: 15px;'></div>");f.addClass(j.toThemeProperty("jqx-icon-arrow-left"));j.toolbarLeftButton.wrapInner(f);var k=a("<div style='outline: none; margin-left: 6px; width: 15px; height: 15px;'></div>");k.addClass(j.toThemeProperty("jqx-icon-arrow-right"));j.toolbarRightButton.wrapInner(k);if(j.rtl){j.toolbarLeftButton.css("float","right");j.toolbarRightButton.css("float","right");j.dateTimeInput.css("float","right")}j.addHandler(j.toolbarRightButton,"mouseenter",function(){k.addClass(j.toThemeProperty("jqx-icon-arrow-right-hover"))});j.addHandler(j.toolbarLeftButton,"mouseenter",function(){f.addClass(j.toThemeProperty("jqx-icon-arrow-left-hover"))});j.addHandler(j.toolbarRightButton,"mouseleave",function(){k.removeClass(j.toThemeProperty("jqx-icon-arrow-right-hover"))});j.addHandler(j.toolbarLeftButton,"mouseleave",function(){f.removeClass(j.toThemeProperty("jqx-icon-arrow-left-hover"))});j.addHandler(j.toolbarRightButton,"mousedown",function(){k.addClass(j.toThemeProperty("jqx-icon-arrow-right-selected"))});j.addHandler(j.toolbarRightButton,"mouseup",function(){k.removeClass(j.toThemeProperty("jqx-icon-arrow-right-selected"))});j.addHandler(j.toolbarLeftButton,"mousedown",function(){f.addClass(j.toThemeProperty("jqx-icon-arrow-left-selected"))});j.addHandler(j.toolbarLeftButton,"mouseup",function(){f.removeClass(j.toThemeProperty("jqx-icon-arrow-left-selected"))});j.addHandler(a(document),"mouseup.pagerbuttons"+j.element.id,function(){k.removeClass(j.toThemeProperty("jqx-icon-arrow-right-selected"));f.removeClass(j.toThemeProperty("jqx-icon-arrow-left-selected"))});j.addHandler(j.toolbarRightButton,"click",function(){if(!j.toolbarRightButton.jqxButton("disabled")){if(!j.rtl){j.navigateForward()}else{j.navigateBackward()}j.focus()}});j.addHandler(j.toolbarLeftButton,"click",function(){if(!j.toolbarLeftButton.jqxButton("disabled")){if(!j.rtl){j.navigateBackward()}else{j.navigateForward()}j.focus()}});j.toolbar.children().remove();j.toolbar.append(c);if(!j.rtl){c.append(j.toolbarLeftButton);c.append(j.dateTimeInput);c.append(j.toolbarRightButton)}else{c.append(j.toolbarRightButton);c.append(j.dateTimeInput);c.append(j.toolbarLeftButton)}j.toolbarDetails=a('<div class="'+j.toTP("jqx-scheduler-toolbar-details")+'" style="margin-left: 7px; margin-top:2px; float: left;"></div>');j.toolbarViews=a('<div style="margin-right: 10px; margin-top:0px; float: right;"></div>');if(j.rtl){j.toolbarDetails.css("float","right");j.toolbarDetails.css("margin-left","0px");j.toolbarDetails.css("margin-right","7px");j.toolbarViews.css("margin-left","10px");j.toolbarViews.css("margin-right","0px");j.toolbarViews.css("float","left")}var i=new Array();if(!j.rtl){i.push(j.toolbarLeftButton);i.push(j.dateTimeInput);i.push(j.toolbarRightButton)}else{i.push(j.toolbarRightButton);i.push(j.dateTimeInput);i.push(j.toolbarLeftButton)}var m=j._views.length-1;a.each(j._views,function(q){var r="";var o=q;if(j.rtl){o=m-q}if(j._views[o].text!=undefined){r=j._views[o].text}else{switch(j._views[o].type){case"dayView":r=j.schedulerLocalization.dayViewString;break;case"weekView":r=j.schedulerLocalization.weekViewString;break;case"monthView":r=j.schedulerLocalization.monthViewString;break;case"agendaView":r=j.schedulerLocalization.agendaViewString;break;case"timelineDayView":r=j.schedulerLocalization.timelineDayViewString;break;case"timelineWeekView":r=j.schedulerLocalization.timelineWeekViewString;break;case"timelineMonthView":r=j.schedulerLocalization.timelineMonthViewString;break}}var p='<span data-type="'+j._views[o].type+'" style="cursor: pointer; outline: none; margin-left: -1px; position: relative;">'+r+"</span>";var n=a(p);n.addClass(j.toTP("jqx-group-button-normal jqx-button jqx-fill-state-normal"));i.push(n);if(o==0){n.addClass(j.toTP("jqx-rc-l"))}if(o==j._views.length-1){n.addClass(j.toTP("jqx-rc-r"))}if(o===j._view){n.addClass(j.toTP("jqx-fill-state-pressed"))}n.mouseenter(function(){n.addClass(j.toTP("jqx-fill-state-hover"))});n.mouseleave(function(){n.removeClass(j.toTP("jqx-fill-state-hover"))});n.mousedown(function(){j._setView(o);j.focus()});a(j.toolbarViews).append(n)});c.append(j.toolbarDetails);c.append(j.toolbarViews);if(j._views.length<2){j.toolbarViews.hide()}j.dateTimeInput.jqxDateTimeInput({rtl:j.rtl,localization:j._getDateTimeInputLocalization(),firstDayOfWeek:j.schedulerLocalization.firstDay,todayString:j.schedulerLocalization.todayString,clearString:j.schedulerLocalization.clearString,showFooter:true,height:19,width:18,renderMode:"simple"});j.addHandler(j.dateTimeInput,"change",function(n){if(!j.fromNavigate){j.navigateTo(new a.jqx.date(n.args.date,j.timeZone));j.focus()}});j.tabKeyElements=i;var h=j._views[j._view].type;var e=function(n){var p=a.jqx.formatDate(j.getViewStart().toDate(),n,j.schedulerLocalization);var o=a.jqx.formatDate(j.getViewEnd().toDate(),n,j.schedulerLocalization);if(h==="dayView"||h==="timelineDayView"){j.toolbarDetails.html(p)}else{j.toolbarDetails.html(p+" - "+o)}if(j.rtl){j.toolbarDetails.addClass("jqx-rtl");j.toolbarDetails.html("<span style='direction:rtl;'>"+o+"<span> - <span style='direction:rtl;'>"+p+"</span>")}else{j.toolbarDetails[0].style.direction="ltr"}};e(j.toolBarRangeFormat);var d=j.toolbarViews.width()+j.toolbarDetails.width()+120;var g=j.toolBarRangeFormat;if(d>j.host.width()){g=j.toolBarRangeFormatAbbr;e(g);var d=j.toolbarViews.width()+j.toolbarDetails.width()+120;if(d>j.host.width()){j.toolbarDetails.hide();var d=j.toolbarViews.width()+120;if(d>j.host.width()){j.toolbarViews.hide()}}}else{j.currentToolbarFormat=j.toolBarRangeFormat}},_setView:function(c){var d=this;d.toolbarViews.find(".jqx-fill-state-pressed").removeClass(d.toTP("jqx-fill-state-pressed"));if(!d.rtl){a(d.toolbarViews.children()[c]).addClass(d.toTP("jqx-fill-state-pressed"))}else{a(d.toolbarViews.children()[d._views.length-1-c]).addClass(d.toTP("jqx-fill-state-pressed"))}if(d._view===c){return}d._view=c;d._refreshColumns();var f=d.hScrollBar[0].style.visibility;d.refresh();var e=d.hScrollBar[0].style.visibility;if(f!==e){d._renderrows()}if(d.selectedJQXAppointment){d._ensureAppointmentVisible(d.selectedJQXAppointment)}},_getDateTimeInputLocalization:function(){var c=this;var d={};d.backString=c.schedulerLocalization.backString;d.forwardString=c.schedulerLocalization.forwardString;d.todayString=c.schedulerLocalization.todayString;d.clearString=c.schedulerLocalization.clearString;d.calendar=c.schedulerLocalization;return d},setView:function(c){switch(c){case"dayView":this._setView(0);break;case"weekView":this._setView(1);break;case"monthView":this._setView(2);break;case"timelineDayView":this._setView(3);break;case"timelineWeekView":this._setView(4);break;case"timelineMonthView":this._setView(5);break}this.view=c},navigateForward:function(){var e=this;var i=this._views[this._view].type;var j=this._views[this._view];var d=new a.jqx.date(this.date,e.timeZone);var k=function(){while((d.dayOfWeek()==0||d.dayOfWeek()==6)&&false===j.showWeekends){d=d.addDays(1)}return d};switch(i){case"dayView":case"timelineDayView":d=d.addDays(1);d=k();break;case"weekView":case"timelineWeekView":d=d.addDays(7);break;case"monthView":case"timelineMonthView":var h=d.day();var f=d.month();var g=d.year();var c=new a.jqx.date(g,f,1);c.timeZone=e.timeZone;d=c.addMonths(1);break}return this.navigateTo(d)},navigateBackward:function(){var e=this;var i=this._views[this._view].type;var j=this._views[this._view];var d=new a.jqx.date(this.date,e.timeZone);var k=function(){while((d.dayOfWeek()==0||d.dayOfWeek()==6)&&false===j.showWeekends){d=d.addDays(-1)}return d};switch(i){case"dayView":case"timelineDayView":d=d.addDays(-1);d=k();break;case"weekView":case"timelineWeekView":d=d.addDays(-7);break;case"monthView":case"timelineMonthView":var h=d.day();var f=d.month();var g=d.year();var c=new a.jqx.date(g,f,1);c.timeZone=e.timeZone;d=c.addMonths(-1);break}return this.navigateTo(d)},_refreshToolBar:function(e){var g=this;var h=g.getViewStart();var f=g.getViewEnd();var d=function(j){var m=a.jqx.formatDate(h.toDate(),j,g.schedulerLocalization);var k=a.jqx.formatDate(f.toDate(),j,g.schedulerLocalization);var i=g._views[g._view].type;var l=g._views[g._view];if(l.showWeekends===false){if(h.dayOfWeek()==0||h.dayOfWeek()==6){h=h.addDays(1)}if(h.dayOfWeek()==0||h.dayOfWeek()==6){h=h.addDays(1)}if(f.dayOfWeek()==0||f.dayOfWeek()==6){f=f.addDays(-1)}if(f.dayOfWeek()==0||f.dayOfWeek()==6){f=f.addDays(-1)}var m=a.jqx.formatDate(h.toDate(),j,g.schedulerLocalization);var k=a.jqx.formatDate(f.toDate(),j,g.schedulerLocalization)}if(i==="dayView"||i==="timelineDayView"){g.toolbarDetails.html(m)}else{g.toolbarDetails.html(m+" - "+k)}if(g.rtl){g.toolbarDetails.addClass("jqx-rtl");g.toolbarDetails.html("<span style='direction:rtl;'>"+k+"<span> - <span style='direction:rtl;'>"+m+"</span>")}else{g.toolbarDetails[0].style.direction="ltr"}};if(e){d(g._lastFormatString||g.toolBarRangeFormat);return}d(g.toolBarRangeFormat);g.toolbarDetails.show();g.toolbarViews.show();var c=g.toolbarViews.width()+g.toolbarDetails.width()+120;if(c>g.host.width()){d(g.toolBarRangeFormatAbbr);var c=g.toolbarViews.width()+g.toolbarDetails.width()+120;if(c>g.host.width()){g.toolbarDetails.hide();var c=g.toolbarViews.width()+120;if(c>g.host.width()){g.toolbarViews.hide()}}}},navigateTo:function(c){var d=this;if(a.type(c)=="date"){c=new a.jqx.date(c)}if(c<this.min){return}if(c>this.max){return}c.timeZone=d.timeZone;d.date=c;d._refreshToolBar(true);d.fromNavigate=true;d.dateTimeInput.val(c.toDate());d.fromNavigate=false;d._refreshColumnTitles();d._renderrows();d._updateFocusedCell()},_preparecolumnGroups:function(){var o=this.columnsHeight;if(this.columnGroups){this.columnshierarchy=new Array();if(this.columnGroups.length){var m=this;for(var g=0;g<this.columnGroups.length;g++){this.columnGroups[g].parent=null;this.columnGroups[g].groups=null}for(var g=0;g<this.columns.records.length;g++){this.columns.records[g].parent=null;this.columns.records[g].groups=null}var n=function(j){for(var t=0;t<m.columnGroups.length;t++){var u=m.columnGroups[t];if(u.name===j){return u}}return null};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];if(!p.groups){p.groups=null}if(p.parentGroup){p.parentgroup=p.parentGroup}if(p.parentgroup){var r=n(p.parentgroup);if(r){p.parent=r;if(!r.groups){r.groups=new Array()}if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];if(p.columngroup){var r=n(p.columngroup);if(r){if(!r.groups){r.groups=new Array()}p.parent=r;if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}var q=0;for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];var d=p;p.level=0;while(d.parent){d=d.parent;p.level++}var d=p;var c=p.level;q=Math.max(q,p.level);while(d.parent){d=d.parent;if(d){d.level=--c}}}var l=function(x){var w=new Array();if(x.columngroup){w.push(x)}if(!x.groups){return new Array()}for(var v=0;v<x.groups.length;v++){if(x.groups[v].columngroup){w.push(x.groups[v])}else{if(x.groups[v].groups){var u=l(x.groups[v]);for(var t=0;t<u.length;t++){w.push(u[t])}}}}return w};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];var e=l(p);p.columns=e;var h=new Array();var s=0;for(var f=0;f<e.length;f++){h.push(this.columns.records.indexOf(e[f]));if(e[f].pinned){s++}}if(s!=0){throw new Error("jqxScheduler: Column Groups initialization Error. Please, check the initialization of the jqxScheduler's columns array. The columns in a column group cannot be pinned.")}h.sort(function(j,i){j=parseInt(j);i=parseInt(i);if(j<i){return -1}if(j>i){return 1}return 0});for(var k=1;k<h.length;k++){if(h[k]!=h[k-1]+1){throw new Error("jqxScheduler: Column Groups initialization Error. Please, check the initialization of the jqxScheduler's columns array. The columns in a column group are expected to be siblings in the columns array.");this.host.remove()}}}}this.columnGroupslevel=1+q;o=this.columnGroupslevel*this.columnsHeight}return o},wheel:function(e,d){if(d.editRecurrenceDialog&&d.editRecurrenceDialog.jqxWindow("isOpen")){return true}if(d.editDialog&&d.editDialog.jqxWindow("isOpen")){return true}if(d.autoheight&&d.hScrollBar.css("visibility")=="hidden"){e.returnValue=true;return true}var f=0;if(!e){e=window.event}if(e.originalEvent&&e.originalEvent.wheelDelta){e.wheelDelta=e.originalEvent.wheelDelta}if(e.wheelDelta){f=e.wheelDelta/120}else{if(e.detail){f=-e.detail/3}}if(f){var c=d._handleDelta(f);if(c){if(e.preventDefault){e.preventDefault()}if(e.originalEvent!=null){e.originalEvent.mouseHandled=true}if(e.stopPropagation!=undefined){e.stopPropagation()}}if(c){c=false;e.returnValue=c;return c}else{return false}}if(e.preventDefault){e.preventDefault()}e.returnValue=false},_handleDelta:function(e){if(this.vScrollBar.css("visibility")!="hidden"){var d=this.vScrollInstance.value;if(e<0){this.vScrollInstance.setPosition(this.vScrollInstance.value+2*10)}else{this.vScrollInstance.setPosition(this.vScrollInstance.value-2*10)}var c=this.vScrollInstance.value;if(d!=c){return true}}else{if(this.hScrollBar.css("visibility")!="hidden"){var d=this.hScrollInstance.value;if(e>0){if(this.hScrollInstance.value>2*10){this.hScrollInstance.setPosition(this.hScrollInstance.value-2*10)}else{this.hScrollInstance.setPosition(0)}}else{if(this.hScrollInstance.value<this.hScrollInstance.max){this.hScrollInstance.setPosition(this.hScrollInstance.value+2*10)}else{this.hScrollInstance.setPosition(this.hScrollInstance.max)}}var c=this.hScrollInstance.value;if(d!=c){return true}}}return false},_removeHandlers:function(){var f=this;if(f._mousewheelfunc){f.removeHandler(this.host,"mousewheel",f._mousewheelfunc)}f.removeHandler(a(document),"keydown.scheduler"+f.element.id);f.removeHandler(f.host,"focus");f.removeHandler(f.host,"blur");f.removeHandler(f.host,"dragstart."+f.element.id);f.removeHandler(f.host,"selectstart."+f.element.id);f.removeHandler(a(window),"jqxReady."+f.element.id);f.removeHandler(f.host,"mousewheel",f._mousewheelfunc);var e="mousedown";if(f.isTouchDevice()){e=a.jqx.mobile.getTouchEventName("touchstart");if(a.jqx.browser.msie&&a.jqx.browser.version<10){e="mousedown"}}if(f.table){f.removeHandler(f.table,"mouseleave")}var d="mousemove.scheduler"+f.element.id;var g="mouseup.scheduler"+f.element.id;if(f.isTouchDevice()&&f.touchMode!==true){d=a.jqx.mobile.getTouchEventName("touchmove")+".scheduler"+f.element.id;g=a.jqx.mobile.getTouchEventName("touchend")+".scheduler"+f.element.id}f.removeHandler(a(document),d);f.removeHandler(a(document),g);if(!f.isTouchDevice()){try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var h=null;if(window.parent&&document.referrer){h=document.referrer}if(h&&h.indexOf(document.location.host)!=-1){f.removeHandler(a(window.top.document),"mouseup.jqxscheduler"+f.element.id)}}}}catch(c){}}f.removeHandler(f.host,d);f.removeHandler(a(document),"keydown.jqxscheduler"+f.element.id);f.removeHandler(f.host,"keydown");if(f.table){f.removeHandler(f.table,"dblclick");f.removeHandler(f.pinnedtable,e);f.removeHandler(f.table,e)}},selectAppointment:function(c){if(this.appointmentsByKey[c]){this._selectAppointment(this.appointmentsByKey[c].jqxAppointment)}},_selectAppointment:function(e,j,g){if(!e){return}var i=this;if(i.selectedAppointment){i.clearAppointmentsSelection()}var f=e.id;var d=a('[data-key="'+f+'"]');if(d.length>0){i.selectedJQXAppointment=e;if(!j){i.selectedAppointment=a(d[0])}else{i.selectedAppointment=a(j)}d.addClass(i.toTP("jqx-scheduler-selected-appointment"));if(e.resizable){d.find(".jqx-scheduler-appointment-resize-indicator").show()}var c=i._views[i._view].type;var h=i._views[i._view];switch(c){case"dayView":case"weekView":break;case"monthView":case"timeLineMonthView":case"timeLineDayView":case"timeLineWeekView":if(d.length>1){a.each(d,function(k){if(!i.rtl){if(k>0){a(this).find(".jqx-scheduler-appointment-left-resize-indicator").hide()}if(k<d.length-1){a(this).find(".jqx-scheduler-appointment-right-resize-indicator").hide()}}else{if(k>0){a(this).find(".jqx-scheduler-appointment-right-resize-indicator").hide()}if(k<d.length-1){a(this).find(".jqx-scheduler-appointment-left-resize-indicator").hide()}}})}break}if(g=="mouse"){i.clearSelection();return}}i.clearSelection()},clearAppointmentsSelection:function(){var e=this;if(e.selectedAppointment){var d=e.selectedAppointment.attr("data-key");var c=a('[data-key="'+d+'"]');c.removeClass(e.toTP("jqx-scheduler-selected-appointment"));c.find(".jqx-scheduler-appointment-resize-indicator").hide();e.selectedAppointment=null;e.selectedJQXAppointment=null}},selectCell:function(d,n,m){var h=this;var o=d.toDate();for(var g=0;g<h.rows.length;g++){for(var f=0;f<h.rows[g].cells.length;f++){var l=h.rows[g].cells[f];if(m){if(l.getAttribute("data-view")!==m){continue}}var k=l.getAttribute("data-date");var c=h._getDateByString;var e=c(k);if(n&&l.getAttribute("data-end-date")){if(e.valueOf()==d.valueOf()){l.setAttribute("data-selected",true);h.focusedCell=l;h._lastSelectedCell=l;h._updateCellsSelection();h.ensureVisible(h.focusedCell);return}}else{if(!n&&l.getAttribute("data-end-date")){continue}}if(e.valueOf()==o.valueOf()){l.setAttribute("data-selected",true);h.focusedCell=l;h._lastSelectedCell=l;h._updateCellsSelection();h.ensureVisible(h.focusedCell);return}}}h._updateCellsSelection()},selectRange:function(n,o,r,q){var l=this;if(n<this.min){n=this.min}if(o>this.max){o=this.max}var g=n.toDate();var e=o.toDate();var h=false;for(var k=0;k<l.rows.length;k++){for(var f=0;f<l.rows[k].cells.length;f++){var p=l.rows[k].cells[f];if(q){if(p.getAttribute("data-view")!==q){continue}}var m=p.getAttribute("data-date");var c=l._getDateByString;var d=c(m);if(r&&p.getAttribute("data-end-date")){if(d.valueOf()>=g.valueOf()&&d.valueOf()<=e.valueOf()){p.setAttribute("data-selected",true)}}else{if(!r&&p.getAttribute("data-end-date")){continue}}if(d.valueOf()>=g.valueOf()&&d.valueOf()<=e.valueOf()){p.setAttribute("data-selected",true);if(!h){l._lastSelectedCell=p;l.focusedCell=p;h=true}}}}l._updateCellsSelection()},_selectRange:function(c,s){var k=this;var l=c;var w=s.getAttribute("data-view");if(c.getAttribute("data-view")!==w){return}var r=s.getAttribute("data-date");var n=l.getAttribute("data-date");if(null==r||null==n){return}var D=s.getAttribute("data-end-date");var G=l.getAttribute("data-end-date");var I=D!=null||G!=null;var t=D!=null&&G!=null;var o=k._getDateByString;var v=o(r);var u=o(n);if(v<this.min.toDate()){v=this.min.toDate()}if(u<this.min.toDate()){u=this.min.toDate()}if(v>this.max.toDate()){v=this.max.toDate()}if(u>this.max.toDate()){u=this.max.toDate()}var x=Math.min(v,u);var B=Math.max(v,u);var q=k.rows;var g=0;var f=0;if(g>0&&k.rtl){g=0;f=1}var e=q.length;if(I){e=1;if(c.getAttribute("data-end-date")==null){u.setHours(0,0,0,0);var C=new a.jqx.date(u,k.timeZone).toString();var F=a(l).parent().index();a.each(q[0].cells,function(){var i=this.getAttribute("data-date");if(i===C){c=this;t=s.getAttribute("data-end-date")!=null&&c.getAttribute("data-end-date")!=null;var J=s.getAttribute("data-date");var j=c.getAttribute("data-date");var L=o(J);var K=o(j);x=Math.min(L,K);B=Math.max(L,K);return false}})}}for(var A=0;A<e;A++){var h=q[A];if(I&&this.tableRows>1){var z=parseInt(c.getAttribute("data-view"));var m=q.length/k.tableRows;var p=(-1+z)*m;d=q[p];h=q[p]}var d=h.cells;for(var y=g;y<d.length-f;y++){if(d[y].getAttribute("data-view")!==w){continue}d[y].removeAttribute("data-selected");if(!t&&d[y].getAttribute("data-end-date")){continue}var H=d[y].getAttribute("data-date");var E=o(H).valueOf();if(x<=E&&E<=B){d[y].setAttribute("data-selected","true")}}}k._updateCellsSelection()},findCell:function(t,q){var l=this;var m=null;if(!l._tableOffset){var d=l.schedulercontent.coord();l._tableOffset=d}var h=l._tableOffset;var f=h.top;var o=h.left;if(q<f){return null}if(t<o){return null}if(q>f+l._hostHeight){return null}if(t>o+l._hostWidth){return null}var r=false;var s=l.table[0].rows;var p=l._views[l._view];var u=p.type;var E=0;var n=l.vScrollInstance.value;var v=l.hScrollInstance.value;for(var C=0;C<s.length;C++){if(r){break}var k=s[C];var e=k.cells;var A=false;if(C==0&&u=="dayView"||u=="weekView"){A=l.showAllDayRow;if(p.timeRuler&&(u==="dayView"||u==="weekView")){if(p.timeRuler.showAllDayRow!=undefined){A=p.timeRuler.showAllDayRow}}if(A){E=l._allDayRowFullHeight}}for(var D=0;D<e.length;D++){var c=e[D];if(D==0&&c.getAttribute("data-time-slot")){continue}if(!c._left){var g=c.offsetLeft+o;var w=c.offsetTop+f;var B=c.offsetWidth;var z=c.offsetHeight;c._left=g;c._top=w;c._width=B;c._height=z}else{var g=c._left;var w=c._top;var B=c._width;var z=c._height}c._left=g;c._top=w;c._width=B;c._height=z;if(B===0||z===0){continue}if(!l.rtl){g-=v}else{if(l.hScrollInstance.element.style.visibility!="hidden"){g-=(l.hScrollInstance.max-v)}}w-=n;if(C==0&&A){w+=n}if(w<=q&&q<w+z){if(g<=t&&t<g+B){m=c;r=true;break}}else{break}}}return m},_removeFeedbackAndStopResize:function(){var e=this;if(!e.feedback){return}e.feedback.remove();e.feedback=null;e.pinnedfeedback.remove();e.pinnedfeedback=null;if(e.feedbacks){for(var d=0;d<e.feedbacks.length;d++){e.feedbacks[d].remove()}}e.feedbacks=new Array();e.leftResize=false;e.rightResize=false;e.topResize=false;e.bottomResize=false;e.overlay.hide();e.resizing=false;e.resizeFrom=null;e._dragCell=null;e._dragStartCell=null;e.resizeTo=null;e.dragOrResize=false;e.isMouseDown=false;if(e.selectedJQXAppointment){var c=a('[data-key="'+e.selectedJQXAppointment.id+'"]');c.removeClass(e.toTP("jqx-scheduler-feedback-appointment jqx-disableselect"))}if(e.openedMonthCellPopup){e.openedMonthCellPopup.remove()}},_saveChangesAfterDragOrResize:function(f,c,s,n){var m=this;if(f===false){if(!c.isException()){if(!c.rootAppointment.recurrenceException){c.rootAppointment.recurrenceException=new Array()}if(c.rootAppointment!=null){c.rootAppointment.exceptions.push(c);c.rootAppointment.recurrenceException.push(c.occurrenceFrom)}else{c.exceptions.push(c);c.recurrenceException.push(c.occurrenceFrom)}}else{var e=c.rootAppointment?c.rootAppointment.exceptions:c.exceptions;for(var k=0;k<e.length;k++){if(e[k].occurrenceFrom.equals(c.occurrenceFrom)){e[k]=c;break}}}}else{if(f===true){if(c.isException()){var e=c.rootAppointment?c.rootAppointment.exceptions:c.exceptions;for(var k=0;k<e.length;k++){if(e[k].occurrenceFrom.equals(c.occurrenceFrom)){for(var h=0;h<c.rootAppointment.recurrenceException.length;h++){if(c.rootAppointment.recurrenceException[h].equals(e[k].occurrenceFrom)){var r=c.from;var g=new a.jqx.date(e[k].occurrenceFrom.year(),e[k].occurrenceFrom.month(),e[k].occurrenceFrom.day(),c.from.hour(),c.from.minute(),c.from.second());c.rootAppointment.recurrenceException[h]=g;break}}e[k]=c;var r=c.from;var g=new a.jqx.date(e[k].occurrenceFrom.year(),e[k].occurrenceFrom.month(),e[k].occurrenceFrom.day(),c.from.hour(),c.from.minute(),c.from.second());e[k].occurrenceFrom=g;break}}}if(c.rootAppointment!=null){c.rootAppointment.recurrencePattern=c.rootAppointment.recurrencePattern.createNewPattern();var q=c.rootAppointment.from;var o=c.rootAppointment.duration();var d=c.rootAppointment.recurrencePattern.freq;var g=null;switch(d){case"daily":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break;case"weekly":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break;case"monthly":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break;case"yearly":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break}if(n){c.rootAppointment.from=q;c.rootAppointment.to=q.add(c.duration())}else{c.rootAppointment.from=g;c.rootAppointment.to=g.add(o)}c.rootAppointment.allDay=c.allDay;c.rootAppointment.resourceId=c.resourceId;c.rootAppointment.color=c.color;c.rootAppointment.borderColor=c.borderColor;c.rootAppointment.background=c.background;c.rootAppointment.timezone=c.timezone;c.rootAppointment.subject=c.subject;c.rootAppointment.description=c.description;c.rootAppointment.location=c.location;c.rootAppointment.category=c.category;c.rootAppointment.status=c.status;if(!m.resizing){c.rootAppointment.recurrencePattern.setFrom(g)}else{c.rootAppointment.recurrencePattern.setFrom(q)}}else{c.recurrencePattern=c.recurrencePattern.createNewPattern();c.recurrencePattern.setFrom(c.from)}var p=a(s).attr("data-view");var l=m._resources[parseInt(p)-1];if(l!=null){if(c.rootAppointment!=null){c.rootAppointment.resourceId=l}else{c.resourceId=l}}}}},_handleMouseUp:function(l,j,h){var g=this;clearInterval(g._verticalIntervalDragVelocity);clearInterval(g._horizontalIntervalDragVelocity);clearInterval(g._intervalDrag);clearInterval(g._horizontalIntervalDrag);var c=l;var k=false;if(!h){if(g._dragStartCell==j){k=true}}else{if(g.resizeTo){if(c.to.equals(g.resizeTo)){k=true}}else{if(g.resizeFrom){if(c.from.equals(g.resizeFrom)){k=true}}}}if(k){var i=a('[data-key="'+l.id+'"]');i.removeClass(g.toTP("jqx-scheduler-feedback-appointment jqx-disableselect"));g._removeFeedbackAndStopResize();return}var e=c.duration();var d=c.duration().days()>=1||c.allDay;var f=function(p,m){if(m.allDay||d){var u=g.getMaxAllDayAppointments(g.appointmentsToRender)}if(h){if(g.resizeTo){if(g.resizeTo>g.max){g.resizeTo=g.max}if(g.resizeTo<g.min){g.resizeTo=g.min}m.to=g.resizeTo}else{if(g.resizeFrom){if(g.resizeFrom>g.max){g.resizeFrom=g.max}if(g.resizeFrom<g.min){g.resizeFrom=g.min}m.from=g.resizeFrom}}}else{var z=g._views[g._view].type;var B=g._views[g._view];var q=a(j).attr("data-date");var y=a(j).attr("data-end-date")!=null;var t=new a.jqx.date(q,g.timeZone);if(t<g.min){t=g.min}if(t>g.max){t=g.max}if(g.rtl&&d&&y){m.to=a.jqx.scheduler.utilities.getEndOfDay(t)}else{if(g.rtl&&(z=="monthView"||z=="timelineMonthView")){m.to=a.jqx.scheduler.utilities.getEndOfDay(t)}else{if(g.rtl&&(z=="timelineDayView"||z=="timelineWeekView")){var o=g.getMinutesPerScale();m.to=t.addMinutes(o)}else{m.from=t}}}if(z==="dayView"||z==="weekView"){if(!d&&!y){m.to=t.add(e);m.allDay=false}else{if(!d&&y){m.to=a.jqx.scheduler.utilities.getEndOfDay(t);m.allDay=true}else{if(d&&y&&!g.rtl){m.to=t.add(e);m.allDay=true}else{if(d&&y&&g.rtl){m.from=a.jqx.scheduler.utilities.getStartOfDay(m.to.add(new a.jqx.timeSpan(-e)));m.allDay=true}else{if(d&&!y){var s=30;var r=B.timeRuler&&B.timeRuler.scale;switch(r){case"sixtyMinutes":case"hour":s=60;break;case"fifteenMinutes":case"quarterHour":s=15;break;case"tenMinutes":s=10;break;case"fiveMinutes":s=5;break}m.to=t.addMinutes(s);m.allDay=false}}}}}}else{if(z==="monthView"){if(!g.rtl){m.to=t.add(e)}else{m.from=a.jqx.scheduler.utilities.getStartOfDay(m.to.add(new a.jqx.timeSpan(-e)))}}else{if(z==="timelineDayView"||z==="timelineWeekView"||z==="timelineMonthView"){if(!g.rtl){m.to=t.add(e)}else{if(z=="timelineMonthView"){m.from=a.jqx.scheduler.utilities.getStartOfDay(m.to.add(new a.jqx.timeSpan(-e)))}else{var o=g.getMinutesPerScale();m.from=t.addMinutes(o).add(new a.jqx.timeSpan(-e))}}}}}}g._saveChangesAfterDragOrResize(p,m,j,g.resizing);var z=a(j).attr("data-view");var w=g._resources[parseInt(z)-1];if(w!=null){m.resourceId=w}g.resizing=false;g.resizeFrom=null;g._dragCell=null;g.resizeTo=null;g._raiseEvent("appointmentChange",{appointment:m.boundAppointment});g.changedAppointments[m.id]={type:"Update",appointment:m.boundAppointment};g.table.find(".jqx-icon-arrow-down").hide();if((g._views[g._view].type=="weekView"||g._views[g._view].type=="dayView")&&(m.allDay||d)){if(g.tableRows>1){g._renderrows()}else{var v=g.getViewStart();var A=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(v,A);g._renderAppointments(v,A);var x=g.getMaxAllDayAppointments(g.appointmentsToRender);if(x!=u){var n=x*(g._defaultRowHeight-2);if(g.isTouchDevice()){n=Math.max(22+g._defaultRowHeight,17+n)}else{n=Math.max(3*g._defaultRowHeight,17+n)}if(g.tableRows==1){a(a(g.table[0].rows[0]).find("td")).css("height",n+"px")}else{a(a(g.table[0].rows[1]).find("td")).css("height",n+"px")}a(g.oldRow).find("td").css("height",n+"px");g.pinnedtable.height(n);g._updateScrollbars(g._hostHeight?g._hostHeight:g.host.height())}}}else{var v=g.getViewStart();var A=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(v,A);g._renderAppointments(v,A)}g._removeFeedbackAndStopResize()};if(c.isRecurrentAppointment()){f(false,c)}else{f(null,c)}},_handleResize:function(O,M,k,P,u){var L=this;var h=L._views[L._view].type;var K=L._views[L._view];if(h==="dayView"||h==="weekView"){var B=u.duration().days()>=1||u.allDay;if(!B&&!k.getAttribute("data-end-date")){var g=function(i){if(i<10){return false}return true};var m=L.findCell(L.feedback.coord().left,M);if(L.topResize){if(!L._lastResizeY){L._lastResizeY=L.mouseDownPosition.top}if(M>L._lastResizeY+a(k).height()/2){var H=L.selectedAppointmentTableBounds.height+L.selectedAppointmentTableBounds.top-P.top-a(k).height()-3;if(g(H)){L.feedback.css("top",2+P.top+a(k).height());L.feedback.height(H);L._lastResizeY=L.feedback.coord().top;var W=new a.jqx.date(m.getAttribute("data-date"),L.timeZone);L.resizeFrom=W.addMinutes(L.getMinutesPerScale())}}else{if(M<L._lastResizeY-a(k).height()/2){var H=L.selectedAppointmentTableBounds.height+L.selectedAppointmentTableBounds.top-P.top-3;if(g(H)){L.feedback.css("top",2+P.top);L.feedback.height(H);L._lastResizeY=L.feedback.coord().top;L.resizeFrom=new a.jqx.date(m.getAttribute("data-date"),L.timeZone)}}}}else{if(L.bottomResize){if(!L._lastResizeY){L._lastResizeY=L.mouseDownPosition.top}if(M>L._lastResizeY+a(k).height()/2){var Q=-5+a(k).height()+P.top-L.selectedAppointmentTableBounds.height-L.selectedAppointmentTableBounds.top;var H=L.selectedAppointmentTableBounds.height+Q;if(g(H)){L.feedback.height(H);L._lastResizeY=L.selectedAppointmentTableBounds.height+Q+L.feedback.coord().top;L.resizeTo=new a.jqx.date(m.getAttribute("data-date"),L.timeZone).addMinutes(L.getMinutesPerScale())}}else{if(M<L._lastResizeY-a(k).height()/2){var Q=-5+P.top-L.selectedAppointmentTableBounds.height-L.selectedAppointmentTableBounds.top;var H=L.selectedAppointmentTableBounds.height+Q;if(g(H)){L.feedback.height(H);L._lastResizeY=L.selectedAppointmentTableBounds.height+Q+L.feedback.coord().top;L.resizeTo=new a.jqx.date(m.getAttribute("data-date"),L.timeZone)}}}}}}else{var A=function(i){if(i<10){return false}return true};if(L.leftResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left-L.cellWidth;if(A(e)){L.feedback.css("left",5+P.left+L.cellWidth);L.feedback.width(e-5);L.feedback.hide();L.pinnedfeedback.css("left",5+P.left+L.cellWidth);L.pinnedfeedback.width(e-5);L._lastResizeX=L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone).addDays(1)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone)).addDays(-1)}}}else{if(O<L._lastResizeX-a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left;if(A(e)){L.feedback.css("left",5+P.left);L.feedback.width(e-5);L.feedback.hide();L.pinnedfeedback.css("left",5+P.left);L.pinnedfeedback.width(e-5);L._lastResizeX=L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone))}}}}}else{if(L.rightResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var Q=a(k).width()+P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.hide();L.feedback.width(e-6);L.pinnedfeedback.width(e-6);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone))}else{L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var Q=P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.hide();L.feedback.width(e-6);L.pinnedfeedback.width(e-6);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone).addDays(-1))}else{L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone).addDays(1)}}}}}}}}else{if(h==="timelineMonthView"){var A=function(i){if(i<10){return false}return true};var s=L.findCell(O,L.feedback.coord().top);if(L.leftResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left-a(k).width();if(A(e)){L.feedback.css("left",P.left+a(k).width());L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(1)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(-1))}}}else{if(O<L._lastResizeX-a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left;if(A(e)){L.feedback.css("left",P.left);L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone))}}}}}else{if(L.rightResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var Q=a(k).width()+P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q-5;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone))}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var Q=P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q-5;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(-1))}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(1)}}}}}}}else{if(h==="monthView"){var A=function(i){if(i<10){return false}return true};var v=-5;if(L.tableColumns>1){v=parseInt(-5/L.tableColumns)}for(var V=0;V<L.columns.records.length/L.tableColumns;V++){v+=L.columns.records[V].width}var t=L.selectedJQXAppointment.resourceId;var n=L._resources.indexOf(t);if(L.resources&&L.resources.orientation=="none"){n=-1}var f="0px";if(n!=-1&&L.tableRows==1){f=v*n+"px"}var J=k.offsetWidth;var T=k.offsetHeight;var I=18;if(L.isTouchDevice()){I=2}for(var V=0;V<6;V++){L.feedbacks[V][0].style.left=f;L.feedbacks[V][0].style.width=v+"px";L.feedbacks[V][0].style.display="block";L.feedbacks[V][0].style.top=parseInt(L.rows[V].top)+I+"px";if(L.tableRows>1){L.feedbacks[V][0].style.top=parseInt(L.rows[6*n+V].top)+I+"px"}a(L.feedbacks[V][0]).find(".jqx-scheduler-appointment-resize-indicator").css("visibility","inherit")}var o=L.selectedJQXAppointment.elements;var c=o[0].cells[0].cell;var N=o[o.length-1];var S=N.lastCellY;var l=N.lastCellX;var q=o[0].cellY;var E=o[0].cellX;var z=parseInt(P.top);var X=parseInt(P.left);if(!L.rtl){if(L.leftResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}else{for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.width=o[U].width+"px";F[0].style.top=o[U].y+"px"}}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){F[0].style.left=1+P.left+"px";F[0].style.width=-1+w.x+w.width-P.left+"px"}else{if(z>q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z<q){F[0].style.left=f;F[0].style.width=w.x+w.width-parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=v-P.left+parseInt(f)+"px";F[0].style.left=P.left+"px"}}if(D>S){F[0].style.display="none"}if(D<z){F[0].style.display="none"}if(z>=S){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(z>S||(z==S&&X>l)){if(r==D){F[0].style.display="block";F[0].style.width=o[U].width+"px";F[0].style.left=o[U].x+"px"}}else{if(z==S&&X<=l){if(q!=S){F[0].style.width=o[U].width-P.left+parseInt(f)+"px"}}}}}}var G=new a.jqx.date(k.getAttribute("data-date"),L.timeZone);if(G<L.selectedJQXAppointment.to){L.resizeFrom=G}else{L.resizeFrom=L.selectedJQXAppointment.from}}else{if(L.rightResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.top=o[U].y+"px"}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){if(X>=E){F[0].style.width=X+J-E-5+"px"}else{F[0].style.width=w.width+"px"}}else{if(z<q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z>q){F[0].style.left=p+"px";F[0].style.width=v-E+parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=X+J-5-parseInt(f)+"px"}}if(D<q){F[0].style.display="none"}if(D>z&&D>q){F[0].style.display="none"}if(z<=q){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(z<q||(z==q&&X<E)){if(r==D){F[0].style.display="block";F[0].style.width=o[U].width+"px"}}}}}var G=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone));if(G>L.selectedJQXAppointment.from){L.resizeTo=G}else{L.resizeTo=L.selectedJQXAppointment.to}}}}else{if(L.leftResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}else{for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.width=o[U].width+"px";F[0].style.top=o[U].y+"px"}}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){F[0].style.left=1+P.left+"px";F[0].style.width=-1+w.x+w.width-P.left+"px"}else{if(z<q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z>q){F[0].style.left=f;F[0].style.width=w.x+w.width-parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=v-P.left+parseInt(f)+"px";F[0].style.left=P.left+"px"}}if(D<q){F[0].style.display="none"}if(D>z){F[0].style.display="none"}if(z<q){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.display="block";F[0].style.width=o[U].width+"px";F[0].style.left=o[U].cellX+"px"}}}if(z==q){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(z<q||(z==q)){if(r==D&&q!=S){F[0].style.left=1+P.left+parseInt(f)+"px";if(1+P.left+parseInt(f)>w.x+w.width){F[0].style.left=w.x+"px"}F[0].style.width=-1+w.x+w.width-P.left+"px"}}}}}var G=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone));if(G>L.selectedJQXAppointment.from){L.resizeTo=G}else{L.resizeTo=L.selectedJQXAppointment.to}}else{if(L.rightResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.top=o[U].y+"px"}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){if(X>=E){F[0].style.width=X+J-E-5+"px"}else{F[0].style.width=w.width+"px"}}else{if(z>q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z<q){F[0].style.left=p+"px";F[0].style.width=v-E+parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=X+J-5-parseInt(f)+"px"}}if(D>S){F[0].style.display="none"}if(D<z){F[0].style.display="none"}if(z>S){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.display="block"}if(D==S){F[0].style.width=o[U].width+"px";F[0].style.left=o[U].cellX+"px"}}}if(z<=S){if(D==S){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(D!=z&&r==D&&q!=S){F[0].style.width=o[U].width+"px";F[0].style.left=o[U].cellX+"px"}else{if(D==z&&r==D&&q!=S){F[0].style.left=o[U].cellX+"px";F[0].style.width=X+J-5-parseInt(f)-o[U].cellX+"px"}}}}}}var G=new a.jqx.date(k.getAttribute("data-date"),L.timeZone);if(G<L.selectedJQXAppointment.to){L.resizeFrom=G}else{L.resizeFrom=L.selectedJQXAppointment.from}}}}var d=new Array();for(var V=0;V<6;V++){var F=L.feedbacks[V];if(F[0].style.display=="block"){d.push(F)}}a.each(d,function(i){if(!L.rtl){if(i>0){a(this).find(".jqx-scheduler-appointment-left-resize-indicator")[0].style.visibility="hidden"}if(i<d.length-1){a(this).find(".jqx-scheduler-appointment-right-resize-indicator")[0].style.visibility="hidden"}}else{if(i>0){a(this).find(".jqx-scheduler-appointment-right-resize-indicator")[0].style.visibility="hidden"}if(i<d.length-1){a(this).find(".jqx-scheduler-appointment-left-resize-indicator")[0].style.visibility="hidden"}}})}else{if(h==="timelineDayView"||h==="timelineWeekView"){var R=L.getMinutesPerScale();var A=function(i){if(i<10){return false}return true};var s=L.findCell(O,L.feedback.coord().top);if(L.leftResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left-a(k).width();if(A(e)){L.feedback.css("left",2+P.left+a(k).width());L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}else{L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left;if(A(e)){L.feedback.css("left",2+P.left);L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}else{L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}}}}}else{if(L.rightResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var Q=a(k).width()+P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var Q=P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}}}}}}}}}}if(h==="timelineDayView"||h==="timelineMonthView"||h==="timelineWeekView"){clearInterval(L._horizontalIntervalDrag);L._horizontalIntervalDrag=setInterval(function(){var j=L.host.width();var y=L.host.coord().left;var i=y+25;var x=j+i-45;if(!L.rtl){if(O<i){L.hScrollInstance.setPosition(L.hScrollInstance.value-5)}else{if(O>x){L.hScrollInstance.setPosition(L.hScrollInstance.value+5)}}}else{if(O>x){L.hScrollInstance.setPosition(L.hScrollInstance.value-5)}else{if(O<i){L.hScrollInstance.setPosition(L.hScrollInstance.value+5)}}}},5)}else{if(h==="dayView"||h==="weekView"){clearInterval(L._intervalDrag);L._intervalDrag=setInterval(function(){var Y=L.host.height();var j=0;if(!L.columnGroups){j+=L.showHeader?L.columnsHeight:0}else{j+=L.showHeader?L.columnsheader.height():0}if(L.showToolbar){j+=L.toolbarHeight}Y-=j;var y=L.legendHeight;if(L._resources.length==0){y=0}if(L.showLegend){Y-=y}var ab=j+L.host.coord().top;var i=L.showAllDayRow;if(K.timeRuler&&(h==="dayView"||h==="weekView")){if(K.timeRuler.showAllDayRow!=undefined){i=K.timeRuler.showAllDayRow}}var x=u.duration().days()>=1||u.allDay;if(i&&x){ab-=20}else{if(i&&L.resizing){ab+=a(L.table[0].rows[0]).height();Y-=a(L.table[0].rows[0]).height()}}var aa=ab+25;var Z=Y+aa-45;if(M<aa){L.vScrollInstance.setPosition(L.vScrollInstance.value-5)}else{if(M>Z){L.vScrollInstance.setPosition(L.vScrollInstance.value+5)}}},5)}}L.resizing=true},_startTimers:function(c,i,e){var g=this;var h=g.host.coord();var f=0;var d=0;if(g.hScrollInstance.element.style.visibility!="hidden"){clearInterval(g._horizontalIntervalDragVelocity);g._horizontalIntervalDragVelocity=setInterval(function(){f++;if(f>40){f=40}},100);clearInterval(g._horizontalIntervalDrag);g._horizontalIntervalDrag=setInterval(function(){var k=g._hostWidth;var m=h.left;var j=m+30;var l=k+j-60;if(!g.rtl){if(c<j){g.hScrollInstance.setPosition(g.hScrollInstance.value-10-f)}else{if(c>l){g.hScrollInstance.setPosition(g.hScrollInstance.value+10+f)}else{f=0}}}else{if(c<j){g.hScrollInstance.setPosition(g.hScrollInstance.value+10+f)}else{if(c>l){g.hScrollInstance.setPosition(g.hScrollInstance.value-10-f)}else{f=0}}}},10)}if(g.vScrollInstance.element.style.visibility!="hidden"){clearInterval(g._verticalIntervalDragVelocity);g._verticalIntervalDragVelocity=setInterval(function(){d++;if(d>40){d=40}},100);clearInterval(g._intervalDrag);g._intervalDrag=setInterval(function(){var n=g._hostHeight;var p=0;if(!g.columnGroups){p+=g.showHeader?g.columnsHeight:0}else{p+=g.showHeader?g.columnsheader.height():0}var q=g._views[g._view].type;var s=g._views[g._view];if(g.showToolbar){p+=g.toolbarHeight}n-=p;if(g.showLegend&&g._resources.length>0){n-=g.legendHeight}var l=h.top;var r=p+l;if(q=="dayView"||q=="weekView"){var k=g.showAllDayRow;if(s.timeRuler&&(q==="dayView"||q==="weekView")){if(s.timeRuler.showAllDayRow!=undefined){k=s.timeRuler.showAllDayRow}}var m=e.duration().days()>=1||e.allDay;if(k&&m){r-=20}else{if(k&&g.resizing){r+=a(g.table[0].rows[0]).height()}}}var o=r+30;var j=l+n+p-30;if(i<o){g.vScrollInstance.setPosition(g.vScrollInstance.value-10-d)}else{if(i>j){g.vScrollInstance.setPosition(g.vScrollInstance.value+10+d)}else{d=0}}},10)}},_hoverCell:function(c){var d=this;if(!d.enableHover){return true}if(d._resources.length>0){if(c.className.indexOf("pinned")>=0){return true}}if(c.className.indexOf("time-column")>=0){return true}if(c.className.indexOf("jqx-scheduler-disabled-cell")>=0){return true}d.hoveredCell=c;if(!c){return true}c.className+=" "+d.toTP("jqx-fill-state-hover")+" "+d.toTP("jqx-grid-cell-hover")+" "+d.toTP("jqx-scheduler-cell-hover")},_removeHoveredCell:function(){var e=this;if(e.hoveredCell){var d=e.hoveredCell;var c=function(f){var g=d.className;g=g.replace(" "+e.toTP("jqx-fill-state-hover"),"");g=g.replace(" "+e.toTP("jqx-grid-cell-hover"),"");g=g.replace(" "+e.toTP("jqx-scheduler-cell-hover"),"");d.className=g};c(d)}e.hoveredCell=null},_addHandlers:function(){var i=this;this._mousewheelfunc=this._mousewheelfunc||function(m){i.wheel(m,i);return false};this.focused=false;var f=false;this.addHandler(a(document),"keydown.scheduler"+i.element.id,function(m){f=false;if(m.keyCode===9&&m.shiftKey&&!i.focused){f=true}});this.addHandler(this.host,"focus",function(n){if(i.focusedCell&&!i.selectedAppointment&&!f){a(i.focusedCell).addClass(i.toThemeProperty("jqx-scheduler-cell-focus"))}i.focused=true;if(f){if(i.appointmentsToRender.length>0){var m=i.appointmentsToRender[i.appointmentsToRender.length-1];i._selectAppointment(m);i._lastSelectedAppointment=m}else{if(!i.focusedCell){i._updateFocusedCell()}else{if(i.focusedCell){if(i.focusedCell.className.indexOf("-focus")==-1){i._updateCellsSelection();return false}}}}}});this.addHandler(this.host,"blur",function(m){if(i.focusedCell){if(document.activeElement==i.element){return true}if(a(document.activeElement).ischildof(i.host)){return true}a(i.focusedCell).removeClass(i.toThemeProperty("jqx-scheduler-cell-focus"));i.focused=false}});this.addHandler(this.host,"dragstart."+this.element.id,function(m){return false});this.addHandler(this.host,"selectstart."+this.element.id,function(m){if(i.enableBrowserSelection){return true}if(i.showToolBar){if(a(m.target).ischildof(i.toolbar)){return true}}if(i.rowDetails){if(a(m.target).parents("[data-role=details]").length>0){return true}}if(undefined==i.editKey){return false}});this.addHandler(a(window),"jqxReady."+this.element.id,function(){});this.removeHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"mousewheel",this._mousewheelfunc);this.vScrollInstance.valueChanged=function(m){if(i._timer){clearTimeout(i._timer)}i._timer=setTimeout(function(){if(i.table){i.table[0].style.top=0-i.vScrollInstance.value+"px"}},1)};this.hScrollInstance.valueChanged=function(m){if(i._htimer){clearTimeout(i._htimer)}i._htimer=setTimeout(function(){if(i.table){i._renderhorizontalscroll()}},1)};var d="mousedown";if(this.isTouchDevice()){d=a.jqx.mobile.getTouchEventName("touchstart");if(a.jqx.browser.msie&&a.jqx.browser.version<10){d="mousedown"}}this.addHandler(this.table,"mouseleave",function(m){i._removeHoveredCell()});if(i.isTouchDevice()){i.enableHover=false}var g="mousemove.scheduler"+this.element.id;var e="mouseup.scheduler"+this.element.id;if(this.isTouchDevice()&&this.touchMode!==true){g=a.jqx.mobile.getTouchEventName("touchmove")+".scheduler"+this.element.id;e=a.jqx.mobile.getTouchEventName("touchend")+".scheduler"+this.element.id}this.addHandler(a(document),g,function(P){var B=P.pageX;var A=P.pageY;if(i.isTouchDevice()){var W=a.jqx.position(P);B=W.left;A=W.top;if(isNaN(B)||isNaN(A)){var W=a.jqx.position(P.originalEvent);B=W.left;A=W.top}}if(i.disabled||P.which===3){return true}if(!i.isMouseDown){return true}if(i.hScrollInstance.isScrolling()||i.vScrollInstance.isScrolling()){return true}if(i._hostWidth){var o=i.host.coord();if(o.left+i._hostWidth<B||B<o.left){return true}if(o.top+i._hostHeight<A||A<o.top){return true}}if(i.mouseDownPosition){if((Math.abs(i.mouseDownPosition.left-B)>=3&&Math.abs(i.mouseDownPosition.left-B)<=10)||(Math.abs(i.mouseDownPosition.top-A)>=3&&Math.abs(i.mouseDownPosition.top-A)<=10)){i.dragOrResize=true}}if(i.selectedAppointment&&i.dragOrResize){var s=null;if(i._hasOpenedMenu){return true}if(i.editRecurrenceDialog.jqxWindow("isOpen")){return true}var F=i._views[i._view].type;var z=i._views[i._view];var E=false;if(P.target.nodeName.toLowerCase()==="td"){var u=P.target}else{var u=i.findCell(B,A)}if(!u){return true}if(u.getAttribute("data-time-slot")!=undefined){return true}if(u.className.indexOf("jqx-grid-cell-pinned")>=0){return true}if(!i.feedback){s=i.getJQXAppointmentByElement(i.selectedAppointment);if(!s.draggable&&!s.resizable){s=null;return true}if(i.beginDrag){var T=i.beginDrag(s);if(!T){return true}}var p=a('[data-key="'+s.id+'"]');var N=i.selectedAppointment.position();i.feedback=i.selectedAppointment.clone(true);i.pinnedfeedback=i.selectedAppointment.clone(true);var U=!(i.selectedAppointment[0].style.cursor=="row-resize"||i.selectedAppointment[0].style.cursor=="col-resize"||i.resizing);var r=function(x){if(U){x.find(".jqx-scheduler-appointment-resize-indicator").hide()}p.addClass(i.toTP("jqx-scheduler-feedback-appointment jqx-disableselect"));x.addClass(i.toTP("jqx-scheduler-feedback-appointment"));x.addClass(i.toTP("jqx-scheduler-feedback-drag-appointment"));if(!U){x.css("z-index",400)}else{x.css("z-index",401)}};r(i.feedback);r(i.pinnedfeedback);if(i._views[i._view].type!="monthView"||U){i.table.append(i.feedback);if(i.tableRows==1){i.pinnedtable.append(i.pinnedfeedback)}else{i.table.append(i.pinnedfeedback)}i.feedback.css("left",N.left);i.feedback.css("top",N.top);i.pinnedfeedback.css("left",N.left);i.pinnedfeedback.css("top",N.top);if(i._views[i._view].type=="monthView"&&i.isTouchDevice()){i.feedbacks=new Array();for(var R=0;R<6;R++){i.feedbacks.push(i.feedback.clone(true));a(i.feedbacks[R]).hide();i.table.append(a(i.feedbacks[R]))}}}else{i.feedbacks=new Array();for(var R=0;R<6;R++){i.feedbacks.push(i.feedback.clone(true));a(i.feedbacks[R]).hide();i.table.append(a(i.feedbacks[R]))}}}if(i.dragging){var T=i.dragging(s,u,i.feedback);if(false===T){return true}}var W=a(u).position();if(i.endDrag){var q=i.feedback.css("left");var n=i.feedback.css("top");var I=i.feedback.width();var v=i.feedback.height}if(!s){s=i.selectedJQXAppointment}var H=s.resourceId;var Q=i._resources.indexOf(H);if(i.resources&&i.resources.orientation=="none"){Q=-1}var K=false;var S=i.isTouchDevice();if(S&&i.touchMode!==true&&i._dragCell==null&&!(i.leftResize||i.rightResize||i.topResize||i.bottomResize||i.resizing)){switch(F){case"dayView":case"weekView":var E=s.duration().days()>=1||s.allDay;if(!E){if(A>=i.selectedAppointmentBounds.top-15&&A<=i.selectedAppointmentBounds.top+15){K=true;i.topResize=true}if(A>=i.selectedAppointmentBounds.top-15+i.selectedAppointmentBounds.height&&A<=i.selectedAppointmentBounds.top+i.selectedAppointmentBounds.height+15){K=true;i.bottomResize=true}}else{if(B>=i.selectedAppointmentBounds.left-15&&B<=i.selectedAppointmentBounds.left+15){K=true;i.leftResize=true}if(B>=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width-15&&B<=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width+15){K=true;i.rightResize=true}}break;default:if(B>=i.selectedAppointmentBounds.left-15&&B<=i.selectedAppointmentBounds.left+15){K=true;i.leftResize=true}if(B>=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width-15&&B<=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width+15){K=true;i.rightResize=true}break}}if(S&&(i.leftResize||i.rightResize||i.topResize||i.bottomResize||i.resizing)||K){if(u.getAttribute("data-view")!=Q+1){if(i.resources.orientation!="none"){return true}}var w=i._getDateByString(u.getAttribute("data-date"));if(w<i.min.toDate()||w>i.max.toDate()){return}i._handleResize(B,A,u,W,s);i._oldResizeTD=u}else{if(!S&&i.selectedAppointment[0].style.cursor=="row-resize"||i.selectedAppointment[0].style.cursor=="col-resize"||i.resizing){if(u.getAttribute("data-view")!=Q+1){if(i.resources&&i.resources.orientation!="none"){return true}}var w=i._getDateByString(u.getAttribute("data-date"));if(w<i.min.toDate()||w>i.max.toDate()){return}i._handleResize(B,A,u,W,s);i._oldResizeTD=u}else{if(!s.draggable){i._removeFeedbackAndStopResize();return true}if(i._dragCell==u){i._startTimers(B,A,s);if(i.isTouchDevice()&&i.touchMode!==true){P.stopPropagation();return false}else{return}}var w=i._getDateByString(u.getAttribute("data-date"));if(w<i.min.toDate()||w>i.max.toDate()){return}var m=s.duration();if(F.indexOf("month")>=0&&new a.jqx.date(w).add(m)>i.max){return}var D=i.vScrollBar[0].style.visibility=="hidden"?0:6+i.vScrollBar.outerWidth();i._dragCell=u;i.feedback[0].style.left=2+W.left+"px";i.feedback[0].style.top=2+W.top+"px";if(F==="dayView"||F==="weekView"){i.pinnedfeedback.css("left",2+W.left);i.pinnedfeedback.css("top",2+W.top);var M=0;if(u.getAttribute("data-end-date")){var J=i.appointmentsMinHeight;if(i.isTouchDevice()){J=i.touchAppointmentsMinHeight}if(z.appointmentHeight){J=z.appointmentHeight}E=s.duration().days()>=1||s.allDay;i.feedback.css("top",2+W.top+J);i.pinnedfeedback.css("top",2+W.top+18);if(E){i.pinnedfeedback.css("top",s.elements[0].y);M=i.selectedAppointment.width();if(2+W.left+M>i.host.width()-D){var C=2+W.left+M-i.host.width()+D+6;M-=C}i.feedback.width(M);i.feedback.height(J);i.pinnedfeedback.width(M);i.pinnedfeedback.height(J)}else{M=a(u).width()-4;i.feedback.width(M);i.feedback.height(J);i.pinnedfeedback.width(M);i.pinnedfeedback.height(J)}i.feedback.hide();i.pinnedfeedback.show()}else{i.feedback.show();i.pinnedfeedback.hide();var t=2;var O=30;var V=z.timeRuler&&z.timeRuler.scale;switch(V){case"sixtyMinutes":case"hour":t=1;break;case"thirdyMinutes":case"halfHour":t=2;break;case"fifteenMinutes":case"quarterHour":t=4;break;case"tenMinutes":t=6;break;case"fiveMinutes":t=12;break}M=a(u).width()-4;i.feedback.width(M);E=s.duration().days()>=1||s.allDay;if(E){i.feedback.height((a(u).height())-6)}else{i.feedback.height(i.selectedAppointment.height())}}i._startTimers(B,A,s)}else{if(F==="monthView"){i.feedback.css("left",1+W.left);var G=i.selectedAppointmentTableBounds;var L=parseInt(G.top);if(L>W.top&&L<W.top+u.offsetHeight){i.feedback.css("top",L+"px")}else{i.feedback.css("top",i.selectedAppointment.height()+W.top-2)}if(i.isTouchDevice()){i.feedback.css("top",W.top+2)}M=i.selectedAppointment.width();i.feedback.width(M);i.feedback.height(i.selectedAppointment.height());i._startTimers(B,A,s)}else{if(F==="timelineDayView"||F==="timelineMonthView"||F==="timelineWeekView"){var G=i.selectedAppointmentTableBounds;var L=parseInt(G.top);if(L>W.top&&L<W.top+u.offsetHeight){i.feedback.css("top",L+"px")}i._startTimers(B,A,s)}}}}}if(i.endDrag){var T=i.endDrag(s,u,i.feedback);if(!T){i.feedback.width(I)}i.feedback.height(v);i.feedback.css("top",n);i.feedback.css("left",q);return true}if(i.isTouchDevice()&&i.touchMode!==true){P.stopPropagation();return false}}});var l=function(m){i.isMouseDown=false;i.dragOrResize=false;if(i.contextMenu&&i.menu&&m.which!==3){i.menu.jqxMenu("close");i._hasOpenedMenu=false}if(m.which===3){return true}if(i.selectedAppointment&&i.feedback){if(i.editRecurrenceDialog.jqxWindow("isOpen")){return}i._handleMouseUp(i.selectedJQXAppointment,i._dragCell,i.resizing)}};this.addHandler(a(document),e,function(m){return l(m)});if(!this.isTouchDevice()){try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var c=null;if(window.parent&&document.referrer){c=document.referrer}if(c&&c.indexOf(document.location.host)!=-1){var h=function(m){if(!self.disabled){return l(m)}};i.addHandler(a(window.top.document),"mouseup.jqxscheduler"+i.element.id,h)}}}}catch(k){}}this.addHandler(this.host,g,function(o){var C=o.pageX;var A=o.pageY;if(i.disabled||o.which===3){return true}if(i.selectedAppointment&&i.isMouseDown){return true}if(i.hScrollInstance.isScrolling()||i.vScrollInstance.isScrolling()){return true}if(i._hasOpenedMenu){return true}if(i.overlay[0].style.display!=="none"){return true}var n=null;if(o.target.className.indexOf("jqx-scheduler-appointment")>=0&&o.target.className.indexOf("jqx-scheduler-appointment-inner-content")==-1&&o.target.className.indexOf("jqx-scheduler-appointment-content")==-1&&o.target.className.indexOf("jqx-scheduler-appointment-resize-indicator")==-1){n=o.target}var u=o.target;for(var v=0;v<4;v++){if(u.parentNode){if(u.className.indexOf("jqx-scheduler-appointment")>=0&&u.className.indexOf("jqx-scheduler-appointment-innter-content")==-1&&u.className.indexOf("jqx-scheduler-appointment-content")==-1&&u.className.indexOf("jqx-scheduler-appointment-resize-indicator")==-1){n=u}u=u.parentNode}else{break}}if(n){var B=i._views[i._view].type;var E=i._views[i._view];var D=i.getJQXAppointmentByElement(n);if(D.resizable){var t=D.duration();var p=D.allDay||t.days()>=1||(t.hours()==23&&t.minutes==59&&t.seconds==59);var z=a(n).coord();var w=a(n).position();i.selectedAppointmentBounds={top:z.top,left:z.left,width:a(n).width(),height:a(n).height()};i.selectedAppointmentTableBounds={top:w.top,left:w.left,width:a(n).width(),height:a(n).height()};var m=i.selectedAppointmentBounds;if(B=="weekView"||B=="dayView"){if(!p){if(A>=m.top-3&&A<=m.top+6){n.style.cursor="row-resize";i.topResize=true;i.bottomResize=false}else{if(A>=m.top+m.height-6&&A<=m.top+m.height+3){n.style.cursor="row-resize";i.topResize=false;i.bottomResize=true}else{n.style.cursor="pointer"}}}else{if(C>=m.left-3&&C<=m.left+6){n.style.cursor="col-resize";i.leftResize=true;i.rightResize=false}else{if(C>=m.left+m.width-6&&C<=m.left+m.width+3){n.style.cursor="col-resize";i.leftResize=false;i.rightResize=true}else{n.style.cursor="pointer"}}}}else{if(B=="monthView"&&D.elements.length>1){var s=i.table.coord();for(var v=0;v<D.elements.length;v++){var q=D.elements[v];var m={top:s.top+q.y,left:s.left+q.x,width:q.width,height:q.height};if((v==0&&!i.rtl)||(v==D.elements.length-1&&i.rtl)){if(C>=m.left-3&&C<=m.left+6){if(A>=m.top&&A<=m.top+m.height){n.style.cursor="col-resize";i.leftResize=true;i.rightResize=false;i.selectedAppointment=a(n);break}else{n.style.cursor="pointer"}}else{n.style.cursor="pointer"}}else{if((v==D.elements.length-1&&!i.rtl)||(v==0&&i.rtl)){if(C>=m.left+m.width-6&&C<=m.left+m.width+3){if(A>=m.top&&A<=m.top+m.height){n.style.cursor="col-resize";i.leftResize=false;i.rightResize=true;i.selectedAppointment=a(n);break}else{n.style.cursor="pointer"}}else{n.style.cursor="pointer"}}}}}else{if(C>=m.left-3&&C<=m.left+6){n.style.cursor="col-resize";i.leftResize=true;i.rightResize=false}else{if(C>=m.left+m.width-6&&C<=m.left+m.width+3){n.style.cursor="col-resize";i.leftResize=false;i.rightResize=true}else{n.style.cursor="pointer"}}}}}}if(!i.enableHover){return true}if(o.target.nodeName.toLowerCase()==="td"){var r=o.target}else{var r=i.findCell(C,A)}if(!r){return true}i._removeHoveredCell();if(i.renderedRecords&&i.renderedRecords.length===0){return true}if(i.isMouseDown){if(Math.abs(i.mousecaptureposition.left-C)>3||Math.abs(i.mousecaptureposition.top-A)>3){if(i.mousecaptureposition.clickedcell.length===0){i.selectionarea[0].style.visibility="hidden";return}if(i.lastHoveredCell!=r){if(i._selectRangeTimer){clearTimeout(i._selectRangeTimer)}i._selectRangeTimer=setTimeout(function(){i._selectRange(r,i.mousecaptureposition.clickedcell[0])},1)}i.lastHoveredCell=r}}else{if(!n){i._hoverCell(r)}}return true});this.addHandler(a(document),"keydown.jqxscheduler"+i.element.id,function(m){if(i.focused&&m.ctrlKey){if(m.keyCode==68){return false}}});this.addHandler(this.host,"keydown",function(m){return i._handleKey(m)});if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.addHandler(this.table,"dblclick",function(m){i.table.trigger("mousedown",m)})}var j=function(G){var H=G.target;var t=null;if(i.disabled){return true}if(!i.menu&&G.which==3){i._initMenu()}var m=i.table.coord();var z=G.pageX;var v=G.pageY;if(a.jqx.browser.msie&&a.jqx.browser.version<9){if(arguments&&arguments.length==2){z=arguments[1].pageX;v=arguments[1].pageY}}if(i.isTouchDevice()){var I=a.jqx.position(G);z=I.left;v=I.top;if(isNaN(z)||isNaN(v)){var I=a.jqx.position(G.originalEvent);z=I.left;v=I.top}}var t=i.findCell(z,v);if(G.target.nodeName.toLowerCase()==="td"){var t=G.target}else{var t=i.findCell(z,v)}if(G.target.nodeName.toLowerCase()==="span"&&(G.target.className.indexOf("jqx-icon-arrow-down")>=0||G.target.className.indexOf("jqx-icon-close")>=0)){if(G.target.mousedown){G.target.mousedown()}return true}var r=a(t).parent();var K=r.attr("data-key");i.mousecaptureposition={left:G.pageX,top:G.pageY,clickedrow:a(r).index(),clickedcell:a(t)};if(G.which!==3){i.isMouseDown=true}else{i.isMouseDown=false}if(i.contextMenu&&i.menu&&G.which!==3){i.menu.jqxMenu("close");i._hasOpenedMenu=false}var q=function(y){if(G.which===3){if(i.contextMenu&&i.menu){if(y){i.menu.find("li:first").show()}else{i.menu.find("li:first").hide()}var x=i.menu.coord();if(i.menu.css("display")=="block"&&x.left==G.pageX&&x.top==G.pageY){i._hasOpenedMenu=true;G.preventDefault();G.stopPropagation();return}i.menu.jqxMenu("open",G.pageX,G.pageY);i._hasOpenedMenu=true;G.preventDefault();G.stopPropagation();setTimeout(function(){i.menu.jqxMenu("focus")},50)}}};var F=function(){for(var L=0;L<w.length;L++){var y=w[L].cells;for(var x=0;x<y.length;x++){y[x].removeAttribute("data-selected")}}};var p=G.target.className.indexOf("jqx-scheduler-appointment")>=0&&G.target.className.indexOf("jqx-scheduler-appointment-inner-content")==-1&&G.target.className.indexOf("jqx-scheduler-appointment-status")==-1&&G.target.className.indexOf("jqx-scheduler-appointment-resize-indicator")==-1&&G.target.className.indexOf("jqx-scheduler-appointment-content")==-1?a(G.target):a(G.target).parents(".jqx-scheduler-appointment");if(p.length==0){p=null}if(p&&p[0].className.indexOf("feedback")==-1){if(p.parents(".jqx-scheduler-month-cell-popup").length>0){return true}i.mouseDownPosition={top:v,left:z};var E=a(p).coord();i.selectedAppointmentBounds={top:E.top,left:E.left,width:a(p).width(),height:a(p).height()};var I=a(p).position();i.selectedAppointmentTableBounds={top:I.top,left:I.left,width:a(p).width(),height:a(p).height()};if(!i._dragStartCell){i._dragStartCell=i.findCell(E.left,E.top)}var o=i.getJQXAppointmentByElement(p);i._selectAppointment(o,p,"mouse");i._raiseEvent("appointmentClick",{appointment:o.boundAppointment});i.clearSelection();var s=new Date().getTime();var C=300;if(a.jqx.browser.msie&&a.jqx.browser.version<9){C=1000}if(!i.clickTime){i.clickTime=new Date()}if((s-i.clickTime.getTime()<C)&&i._lastSelectedAppointment&&o.id==i._lastSelectedAppointment.id&&G.which!=3){if(!o.readOnly&&!i.editRecurrenceDialog.jqxWindow("isOpen")){var A=i._initDialog(o);if(A!==false){i._openDialog()}}i.mouseDownPosition=null;i.isMouseDown=false;if(G.preventDefault){G.preventDefault()}i._raiseEvent("appointmentDoubleClick",{appointment:o.boundAppointment})}else{i.focus()}i._lastSelectedAppointment=o;if(G.preventDefault){G.preventDefault()}G.stopPropagation();i.clickTime=new Date();if(!o.readOnly){if(G.which==3){q(true)}}return}else{if(G.which===3){var J=i.getSelection();if(J!==null){q(false)}else{i.clearAppointmentsSelection();t.setAttribute("data-selected","true");i._lastSelectedCell=t;i.focusedCell=t;i._updateCellsSelection(t);q(false);i._raiseEvent("cellClick",{cell:t})}}else{if(G.which!=3){i.clearAppointmentsSelection()}}}var B=function(){if(!i.enableBrowserSelection){if(G.preventDefault){G.preventDefault()}}var x=a(document).scrollTop();i.host.focus();a(document).scrollTop(x)};if(K!==undefined&&G.which!=3){i.clickedTD=t;i._raiseEvent("cellClick",{cell:t});var n=i.rowinfo[K];var D=false;if(n){var s=new Date().getTime();var C=300;if(!i.clickTime){i.clickTime=new Date()}i.focus();if(i._lastSelectedCell&&i._lastSelectedCell.getAttribute("data-selected")=="true"&&t.getAttribute("data-selected")==="true"&&(s-i.clickTime.getTime()<C)){i._raiseEvent("cellDoubleClick",{cell:t});D=true;i._initDialog();i._openDialog();if(G.preventDefault){G.preventDefault()}}}var w=i.table[0].rows;if(t.getAttribute("data-selected")!="true"||G.shiftKey||s-i.clickTime.getTime()>C){if(t.getAttribute("data-time-slot")=="true"){return}if(!G.shiftKey){i.shiftSelectedCell=null}if(G.shiftKey&&i._lastSelectedCell){if(!i.shiftSelectedCell){i.shiftSelectedCell=i._lastSelectedCell}if(t.getAttribute("data-view")===i.shiftSelectedCell.getAttribute("data-view")){F()}i._selectRange(t,i.shiftSelectedCell)}if(!G.shiftKey){F();var u=i._getDateByString(t.getAttribute("data-date"));if(u>=i.min.toDate()&&u<=i.max.toDate()){t.setAttribute("data-selected","true")}else{t.setAttribute("data-selected","false")}}a('[data-key="'+K+'"]').removeClass(i.toTP("jqx-scheduler-selected-appointment"));i.selectedAppointment=null;var u=i._getDateByString(t.getAttribute("data-date"));if(u>=i.min.toDate()&&u<=i.max.toDate()){i._lastSelectedCell=t;i.focusedCell=t}i._updateCellsSelection(t);if(i.openedMonthCellPopup){i.openedMonthCellPopup.remove()}}i.clickTime=new Date();if(G.stopPropagation){G.stopPropagation()}}};this.addHandler(this.pinnedtable,d,function(n){var m=j(n);if(m!=undefined){return m}});this.addHandler(this.table,d,function(n){var m=j(n);if(m!=undefined){return m}})},moveAppointment:function(l,d,h,g,k){var i=this;var j=g.getAttribute("data-end-date");if(l){if(i.editRecurrenceDialog.jqxWindow("isOpen")){return}clearInterval(i._verticalIntervalDragVelocity);clearInterval(i._horizontalIntervalDragVelocity);clearInterval(i._intervalDrag);clearInterval(i._horizontalIntervalDrag);var e=l.duration();var c=l.duration().days()>=1||l.allDay;var f=function(s){if(!k){var m=i._views[i._view].type;var p=i._views[i._view];var q=d;l.from=q;if(m==="dayView"||m==="weekView"){if(!c&&!j){l.to=q.add(e);l.allDay=false}else{if(!c&&j){l.to=a.jqx.scheduler.utilities.getEndOfDay(q);l.allDay=true}else{if(c&&j){l.to=q.add(e)}else{if(c&&!j){var o=30;var r=p.timeRuler&&p.timeRuler.scale;switch(r){case"sixtyMinutes":case"hour":o=60;break;case"fifteenMinutes":case"quarterHour":o=15;break;case"tenMinutes":o=10;break;case"fiveMinutes":o=5;break}l.to=q.addMinutes(o);l.allDay=false}}}}}else{if(m==="monthView"){l.to=q.add(e)}else{if(m==="timelineDayView"||m==="timelineWeekView"||m==="timelineMonthView"){l.to=q.add(e)}}}}i._saveChangesAfterDragOrResize(s,l,g,k);if(h!=null){l.resourceId=h}i.table.find(".jqx-icon-arrow-down").hide();if(l.allDay||c){i._renderrows()}else{var t=i.getViewStart();var n=a.jqx.scheduler.utilities.getEndOfDay(i.getViewEnd());i._prepareAppointmentsInView(t,n);i._renderAppointments(t,n)}i._raiseEvent("appointmentChange",{appointment:l.boundAppointment});i.changedAppointments[l.id]={type:"Update",appointment:l.boundAppointment};i._ensureAppointmentVisible(i.selectedJQXAppointment)};if(l.isRecurrentAppointment()){f(false)}else{f(null)}}},getAppointmentProperty:function(e,c){var f=this;var d=null;if(this.appointmentsByKey[e]){d=this.appointmentsByKey[e].jqxAppointment}if(!d){return}return d[c]},setAppointmentProperty:function(f,c,h){var g=this;var d=null;if(this.appointmentsByKey[f]){d=this.appointmentsByKey[f].jqxAppointment}if(!d){return}d[c]=h;g.changedAppointments[f]={type:c,appointment:d.boundAppointment};switch(f){case"draggable":case"resizable":break;case"background":case"color":case"borderColor":case"status":case"tooltip":case"subject":case"location":case"description":case"style":var i=g.getViewStart();var e=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(i,e);g._renderAppointments(i,e);break;case"hidden":case"timeZone":if(d.isAllDayAppointment()){g._renderrows()}else{var i=g.getViewStart();var e=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(i,e);g._renderAppointments(i,e)}break;default:g._renderrows()}},deleteAppointment:function(c){if(this.appointmentsByKey[c]){this._deleteAppointment(this.appointmentsByKey[c].jqxAppointment)}},_deleteAppointment:function(c){var h=this;if(c.rootAppointment){if(!c.isException()){if(c.rootAppointment!=null){c.rootAppointment.exceptions.push(h.editAppointment);c.rootAppointment.recurrenceException.push(h.editAppointment.occurrenceFrom)}else{c.exceptions.push(h.editAppointment);c.recurrenceException.push(h.editAppointment.occurrenceFrom)}}else{var g=c.rootAppointment?c.rootAppointment.exceptions:c.exceptions;for(var f=0;f<g.length;f++){if(g[f].occurrenceFrom.equals(h.editAppointment.occurrenceFrom)){g[f]=c;break}}}c.hidden=true;h._renderrows();return}h._raiseEvent("appointmentDelete",{appointment:c.boundAppointment});var e=c.id;delete h.appointmentsByKey[e];var d=-1;for(var f=0;f<h.appointments.length;f++){if(h.appointments[f]==c.boundAppointment||h.appointments[f].id==c.boundAppointment.id){d=f;break}}if(d!=-1){h.appointments.splice(d,1)}d=-1;for(var f=0;f<h.uiappointments.length;f++){if(h.uiappointments[f]==c||h.uiappointments[f].id==c.id){d=f;break}}if(d!=-1){h.uiappointments.splice(d,1)}if(h.selectedJQXAppointment==c){h.clearAppointmentsSelection();if(h.uiappointments[d+1]){h.selectAppointment(h.uiappointments[d+1].id)}else{if(h.uiappointments[d-1]){h.selectAppointment(h.uiappointments[d-1].id)}else{if(h.uiappointments[0]){h.selectAppointment(h.uiappointments[0].id)}}}}h.changedAppointments[e]={type:"Delete",appointment:c.boundAppointment};h._renderrows()},addAppointment:function(n){var h=this;if(!n.scheduler){n.scheduler=this}if(!n.duration){if(!n.from&&!n.to){var g=n;var e={};var f=["from","to","id","style","description","location","subject","background","color","borderColor","recurrencePattern","recurrenceException","draggable","resizable","tooltip","hidden","allDay","timeZone","ownerId","resourceId"];for(var u in h.appointmentDataFields){var c=h.appointmentDataFields[u];var p=g[c];if(u=="from"||u=="to"){p=new a.jqx.date(p)}if(u=="style"){if(p){var k=h.getAppointmentColors(p);e.color=k.color;e.background=k.background;e.borderColor=k.border}}if(u=="recurrencePattern"){if(p){p=new a.jqx.scheduler.recurrencePattern(p);p.timeZone=g.timeZone||h.timeZone}}if(u=="recurrenceException"){var r=new Array();if(p){if(p.indexOf("EXDATE:")>=0){p=p.substring(p.indexOf("EXDATE:")+7)}var l=new Array();if(p.indexOf(",")>=0){l=p.split(",")}else{l.push(p)}for(var q=0;q<l.length;q++){var o=l[q];if(o.indexOf(";")>=0){var i=o.split(";")[1];o=o.split(";")[0];if(i.toLowerCase().indexOf("display")>=0&&i.toLowerCase().indexOf("none")){e.hidden=true}}try{var s=a.jqx.scheduler.utilities.untilStringToDate(o);if(s!="Invalid Date"){if(e.timeZone){s=new a.jqx.date(s,e.timeZone)}else{if(h.timeZone){s=s.toTimeZone(h.timeZone)}else{s=new a.jqx.date(s)}}}}catch(t){var s=new a.jqx.date(o,h.timeZone)}r.push(s)}}p=r}e[u]=p}for(var m in f){var u=f[m];if(e[u]==undefined){var p="";if(u=="originalData"){continue}if(u=="ownerId"){p=null}if(u=="timeZone"){p=null}if(u=="recurrencePattern"){p=null}if(u=="recurrenceException"){p=null}if(u=="allDay"){p=false}if(u=="draggable"){p=true}if(u=="resizable"){p=true}if(u=="hidden"){p=false}if(u=="resourceId"){p=null}if(u=="from"){p=new a.jqx.date()}if(u=="to"){p=new a.jqx.date().addHours(1)}e[u]=p}}e.originalData=g;var n=new a.jqx.scheduler.appointment(e);if(e.timeZone){n.from=n.from.toTimeZone(e.timeZone);n.to=n.to.toTimeZone(e.timeZone)}if(h.timeZone){if(!e.timeZone){n.timeZone=h.timeZone}n.from=n.from.toTimeZone(h.timeZone);n.to=n.to.toTimeZone(h.timeZone)}else{n.from=n.from.toTimeZone(null);n.to=n.to.toTimeZone(null)}}else{var j=new a.jqx.scheduler.appointment();for(var u in n){j[u]=n[u]}n=j}}var u=h.dataview.generatekey();n.id=u;h.appointmentsByKey[u]=n;h.appointments.push(n);var d={};for(var u in h.appointmentDataFields){var c=h.appointmentDataFields[u];var p=n[u];if(u=="from"||u=="to"){p=p.toDate()}d[c]=p}n.boundAppointment=d;n.jqxAppointment=n;h._raiseEvent("appointmentAdd",{appointment:n.boundAppointment});h.uiappointments.push(n);h.changedAppointments[u]={type:"Add",appointment:n.boundAppointment};if(h.hiddenResources&&h.hiddenResources[n.resourceId]){h.hideAppointmentsByResource(n.resourceId)}else{h._renderrows()}h._selectAppointment(n);h._lastSelectedAppointment=n},initRepeatPanels:function(i,k,d){var j=this;var c=a("<div></div>");k.append(c);var l=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatString+"</div>").appendTo(c);var n=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(c);var m=a("<div></div>").appendTo(n);var s=a("<div></div>");k.append(s);var o=a("<div></div>");s.append(o);var q=function(I,B){var v=a("<div></div>").appendTo(I);var F=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEndString+"</div>").appendTo(v);var E=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(v);var H=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatNeverString+"</span></div>").appendTo(E);H.jqxRadioButton({rtl:j.rtl,groupName:"end"+B,theme:j.theme,width:200,height:25,checked:true});j.editDialogFields[B].repeatEndNever=H;j.editDialogFields[B].repeatEndNeverLabel=F;var A=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(v);var z=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(v);var G=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatAfterString+"</span></div>").appendTo(z);G.jqxRadioButton({rtl:j.rtl,groupName:"end"+B,theme:j.theme,width:60,height:25,checked:false});var C=a("<div style='margin-left: 3px; float:left;'></div>").appendTo(z);C.jqxNumberInput({rtl:j.rtl,decimal:10,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var w=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatOccurrencesString+"</div>").appendTo(z);j.editDialogFields[B].repeatEndAfter=G;j.editDialogFields[B].repeatEndAfterValue=C;j.editDialogFields[B].repeatEndAfterLabel=A;var y=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(v);var x=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(v);var u=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatOnString+"</span></div>").appendTo(x);u.jqxRadioButton({rtl:j.rtl,groupName:"end"+B,theme:j.theme,height:25,checked:false});var D=a("<div style='margin-left: 3px; float:left;'></div>").appendTo(x);D.jqxDateTimeInput({rtl:j.rtl,localization:j._getDateTimeInputLocalization(),firstDayOfWeek:j.schedulerLocalization.firstDay,todayString:j.schedulerLocalization.todayString,clearString:j.schedulerLocalization.clearString,value:d,formatString:j.editDialogDateFormatString,height:25,width:150,theme:j.theme});var t=D.jqxDateTimeInput("getInstance");j.editDialogFields[B].repeatEndOn=u;j.editDialogFields[B].repeatEndOnValue=D;j.editDialogFields[B].repeatEndOnLabel=y;return v};o.detach();j.editDialogFields.repeatEndPanel={};j.editDialogFields.repeatEndPanelContainer=o;q(o,"repeatEndPanel");var r=function(){var A=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var ae=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(A);var az=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(A);var an=a("<div style='float:left;'></div>").appendTo(az);an.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var W=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryDayString+"</div>").appendTo(az);j.editDialogFields.daily={};j.editDialogFields.daily.repeatDayInterval=an;j.editDialogFields.daily.repeatDayLabel=ae;j.editDialogFields.daily.panel=A;A.detach();j.editDialogFields.weekly={};var F=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var ah=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(F);var u=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(F);var au=a("<div style='float:left;'></div>").appendTo(u);au.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var X=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryWeekString+"</div>").appendTo(u);j.editDialogFields.weekly.repeatWeekInterval=au;j.editDialogFields.weekly.repeatWeekIntervalLabel=ah;var G=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatOnString+"</div>").appendTo(F);var aa=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(F);var U=a("<div style='float:left;'></div>").appendTo(aa);j.editDialogFields.weekly.repeatDaysLabel=G;j.editDialogFields.weekly.repeatDays=new Array();for(var ax=0;ax<7;ax++){var Q=j._getDayName(ax,"firstTwoLetters");var C=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+Q+"</span></div>");U.append(C);var Z=ax==1?true:false;C.jqxCheckBox({rtl:j.rtl,height:25,checked:Z,width:50,theme:j.theme});j.editDialogFields.weekly.repeatDays.push(C)}j.editDialogFields.weekly.panel=F;F.detach();j.editDialogFields.monthly={};var V=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var aw=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(V);var N=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(V);var B=a("<div style='float:left;'></div>").appendTo(N);B.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var aj=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryMonthString+"</div>").appendTo(N);j.editDialogFields.monthly.repeatMonth=B;j.editDialogFields.monthly.repeatMonthLabel=aw;var ao=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatOnString+"</div>").appendTo(V);var I=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(V);var y=a("<div style='float:left;'></div>").appendTo(I);var am=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatEveryMonthDayString+"</span></div>").appendTo(y);am.jqxRadioButton({rtl:j.rtl,groupName:"month",height:25,width:60,checked:true,theme:j.theme});var ap=a("<div style='float:left;'></div>").appendTo(y);ap.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});j.editDialogFields.monthly.repeatMonthDay=ap;j.editDialogFields.monthly.repeatMonthDayBool=am;j.editDialogFields.monthly.repeatMonthDayLabel=ao;var P=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(V);var ak=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(V);var ab=a("<div style='float:left;'></div>").appendTo(ak);var H=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'></span></div>").appendTo(ab);H.jqxRadioButton({groupName:"month",height:25,width:25,checked:false,theme:j.theme});var M=a("<div style='float:left;'></div>").appendTo(ab);var R=new Array();R.push(j.schedulerLocalization.editDialogRepeatFirstString);R.push(j.schedulerLocalization.editDialogRepeatSecondString);R.push(j.schedulerLocalization.editDialogRepeatThirdString);R.push(j.schedulerLocalization.editDialogRepeatFourthString);R.push(j.schedulerLocalization.editDialogRepeatLastString);M.jqxDropDownList({dropDownWidth:150,selectedIndex:0,source:R,autoDropDownHeight:true,height:25,width:"auto",theme:j.theme});var T=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(ab);var ad=new Array();for(var ax=0;ax<7;ax++){var Q=j._getDayName(ax);ad.push(Q)}T.jqxDropDownList({rtl:j.rtl,dropDownWidth:150,autoDropDownHeight:true,selectedIndex:1,source:ad,height:25,width:"auto",theme:j.theme});j.editDialogFields.monthly.repeatDayOfWeekBool=H;j.editDialogFields.monthly.repeatDayOfWeek=T;j.editDialogFields.monthly.repeatDayOfWeekLabel=P;j.editDialogFields.monthly.repeatDayOfWeekType=M;j.editDialogFields.monthly.panel=V;V.detach();j.editDialogFields.yearly={};var ar=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var S=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(ar);var al=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ar);var ac=a("<div style='float:left;'></div>").appendTo(al);ac.jqxNumberInput({decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var E=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryYearString+"</div>").appendTo(al);j.editDialogFields.yearly.repeatYear=ac;j.editDialogFields.yearly.repeatYearLabel=S;var O=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatOnString+"</div>").appendTo(ar);var ai=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ar);var Y=a("<div style='float:left;'></div>").appendTo(ai);var ag=a("<div style='position:relative; top: 6px; float:left;'></span></div>").appendTo(Y);ag.jqxRadioButton({rtl:j.rtl,groupName:"year",height:25,width:25,checked:true,theme:j.theme});j.editDialogFields.yearly.repeatYearBool=ag;j.editDialogFields.yearly.repeatYearBoolLabel=O;var w=a("<div style='float:left;'></div>").appendTo(Y);var aq=new Array();for(var ax=0;ax<12;ax++){var ay=j.schedulerLocalization.months.names[ax];aq.push(ay)}w.jqxDropDownList({selectedIndex:0,height:25,dropDownWidth:150,width:"auto",source:aq,theme:j.theme});j.editDialogFields.yearly.repeatYearMonth=w;var z=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(Y);z.jqxNumberInput({decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});j.editDialogFields.yearly.repeatYearDay=z;var af=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(ar);var t=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ar);var at=a("<div style='float:left;'></div>").appendTo(t);var D=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'></span></div>").appendTo(at);D.jqxRadioButton({rtl:j.rtl,groupName:"year",height:25,width:25,checked:false,theme:j.theme});var av=a("<div style='float:left;'></div>").appendTo(at);j.editDialogFields.yearly.repeatDayOfWeekBool=D;j.editDialogFields.yearly.repeatDayOfWeekType=av;j.editDialogFields.yearly.repeatDayOfWeekLabel=af;var L=new Array();L.push(j.schedulerLocalization.editDialogRepeatFirstString);L.push(j.schedulerLocalization.editDialogRepeatSecondString);L.push(j.schedulerLocalization.editDialogRepeatThirdString);L.push(j.schedulerLocalization.editDialogRepeatFourthString);L.push(j.schedulerLocalization.editDialogRepeatLastString);av.jqxDropDownList({dropDownWidth:150,selectedIndex:0,source:L,autoDropDownHeight:true,height:25,width:"auto",theme:j.theme});var J=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(at);j.editDialogFields.yearly.repeatDayOfWeek=J;var v=new Array();for(var ax=0;ax<7;ax++){var Q=j._getDayName(ax);v.push(Q)}J.jqxDropDownList({rtl:j.rtl,dropDownWidth:150,selectedIndex:1,autoDropDownHeight:true,source:v,height:25,width:"auto",theme:j.theme});var aq=new Array();var K=a("<div style='line-height:25px; height: 25px; margin-left: 5px; float:left;'>"+j.schedulerLocalization.editDialogRepeatOfString+"</div>").appendTo(at);var x=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(at);for(var ax=0;ax<12;ax++){var ay=j.schedulerLocalization.months.names[ax];aq.push(ay)}j.editDialogFields.yearly.repeatDayOfWeekMonth=x;x.jqxDropDownList({rtl:j.rtl,dropDownWidth:150,selectedIndex:0,source:aq,height:25,width:"auto",theme:j.theme});j.editDialogFields.yearly.panel=ar;ar.detach()};if(j.editAppointment&&j.editAppointment.rootAppointment){r()}else{r()}var h=a("<div></div>");k.append(h);var g=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogExceptionsString+"</div>").appendTo(h);var f=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(h);var e=a("<div style='position:relative; top: 6px;'>"+j.schedulerLocalization.editDialogResetExceptionsString+"</div>").appendTo(f);e.jqxCheckBox({height:25,width:25,theme:j.theme});h.hide();j.editDialogFields.resetExceptions=e;j.editDialogFields.resetExceptionsLabel=g;j.editDialogFields.resetExceptionsContainer=h;var p=new Array();p.push(j.schedulerLocalization.editDialogRepeatNeverString);p.push(j.schedulerLocalization.editDialogRepeatDailyString);p.push(j.schedulerLocalization.editDialogRepeatWeeklyString);p.push(j.schedulerLocalization.editDialogRepeatMonthlyString);p.push(j.schedulerLocalization.editDialogRepeatYearlyString);m.jqxDropDownList({rtl:j.rtl,width:"100%",height:25,autoDropDownHeight:true,theme:j.theme,source:p,selectedIndex:0});j.editDialogFields.repeat=m;j.editDialogFields.repeatLabel=l;j.editDialogFields.repeatContainer=c;j.editDialogFields.repeatPanel=s;this.addHandler(m,"change",function(v){var u=v.args.item.index;var t=function(){s.children().detach();switch(u){case 0:break;case 1:j.editDialogFields.daily.panel.css("visibility","visible");s.append(j.editDialogFields.daily.panel);break;case 2:j.editDialogFields.weekly.panel.css("visibility","visible");s.append(j.editDialogFields.weekly.panel);break;case 3:j.editDialogFields.monthly.panel.css("visibility","visible");s.append(j.editDialogFields.monthly.panel);break;case 4:j.editDialogFields.yearly.panel.css("visibility","visible");s.append(j.editDialogFields.yearly.panel);break}s.append(o);if(u==0){j.editDialogFields.repeatEndPanelContainer.hide()}else{j.editDialogFields.repeatEndPanelContainer.show()}if(!j.isTouchDevice()){i.jqxWindow({height:150});i.jqxWindow({height:k[0].scrollHeight+40})}}()})},_initDialog:function(c,d){var o=this;var l=null;if(c&&c.isRecurrentAppointment()&&!o.editRecurrenceDialog.jqxWindow("isOpen")){var n=o.host.coord();var q=n.top+o.host.height()/2-o.editRecurrenceDialog.height()/2;var h=n.left+o.host.width()/2-o.editRecurrenceDialog.width()/2;o.editRecurrenceDialog.find("button:first").focus();setTimeout(function(){o.editRecurrenceDialog.find("button:first").focus()},25);o.editRecurrenceDialog.jqxWindow("move",h,q);o.editRecurrenceDialog.jqxWindow("open");o.editSeries=function(i){if(i){o._initDialog(c.rootAppointment);o._openDialog()}else{o._initDialog(c);o._openDialog()}};o.overlay.show();o.overlay.width(o.host.width());o.overlay.height(o.host.height());var n=o.host.coord();o.overlay.offset(n);if(!o.editDialog){o._initDialog()}return false}o.editAppointment=c;if(!c){l=o.getSelection();if(!l){o.focus();o.focusedCell.setAttribute("data-selected","true");o._lastSelectedCell=o.focusedCell;o._updateCellsSelection(o.focusedCell);l=o.getSelection()}}if(l||c){var e=l?l.from:c.from;var j=l?l.to:c.to;var p=o.getSelectedCells();if(p.length>0){var g=p[p.length-1].getAttribute("data-end-date");if(g){j=a.jqx.scheduler.utilities.getEndOfDay(j)}}o._editStart=e;o._editEnd=j}if(o.editDialogFields&&o.editDialogFields.resourceContainer&&o._resources.length>0){var f=new Array();for(var k=0;k<o._resources.length;k++){f.push(o._resources[k])}var s=true;if(f.length>10){s=false}o.editDialogFields.resource.jqxDropDownList({source:f,selectedIndex:0,autoDropDownHeight:s});if(!c){o.editDialogFields.resource.val(l.resourceId)}}if(o.editDialogFields&&o.editDialogFields.repeatContainer){if(c&&c.rootAppointment){o.editDialogFields.repeatContainer.hide();o.editDialogFields.repeatPanel.hide()}else{o.editDialogFields.repeatContainer.show();o.editDialogFields.repeatPanel.show()}}if(o.editDialog==null){o.editDialog=null;var r=c==null?o.schedulerLocalization.editDialogCreateTitleString:o.schedulerLocalization.editDialogTitleString;var m=a("<div><div>"+r+"</div><div id='dialog"+this.element.id+"'></div></div>");a(m).jqxWindow({rtl:o.rtl,autoFocus:false,autoOpen:false,animationType:"none",theme:o.theme,width:530,maxHeight:800,minHeight:110,resizable:false,initContent:function(){o.editDialogFields={};if(e==null&&j==null&&o._editStart&&o._editEnd){e=o._editStart;j=o._editEnd}m.jqxWindow("setTitle",r);var I=a(m.children()[1]);var B=a("<div></div>");I.append(B);var D=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogSubjectString+"</div>").appendTo(B);var ae=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(B);var V=a("<input/>").appendTo(ae);V.jqxInput({rtl:o.rtl,width:"100%",height:25,theme:o.theme});o.editDialogFields.subject=V;o.editDialogFields.subjectLabel=D;o.editDialogFields.subjectContainer=B;var Q=a("<div></div>");I.append(Q);var A=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogLocationString+"</div>").appendTo(Q);var aa=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(Q);var U=a("<input/>").appendTo(aa);U.jqxInput({rtl:o.rtl,width:"100%",height:25,theme:o.theme});o.editDialogFields.location=U;o.editDialogFields.locationLabel=A;o.editDialogFields.locationContainer=Q;var M=a("<div></div>");I.append(M);var Y=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogFromString+"</div>").appendTo(M);var aw=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(M);var ar=a("<div></div>").appendTo(aw);var W=null;if(!e){var az=new Date();az.setHours(9,0,0);W=az}else{W=e.toDate()}ar.jqxDateTimeInput({rtl:o.rtl,localization:o._getDateTimeInputLocalization(),firstDayOfWeek:o.schedulerLocalization.firstDay,todayString:o.schedulerLocalization.todayString,clearString:o.schedulerLocalization.clearString,value:W,formatString:o.editDialogDateTimeFormatString,width:"100%",showTimeButton:true,height:25,theme:o.theme});o.editDialogFields.from=ar;o.editDialogFields.fromLabel=Y;o.editDialogFields.fromContainer=M;var aD=a("<div></div>");I.append(aD);var z=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogToString+"</div>").appendTo(aD);var Z=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(aD);var T=a("<div></div>").appendTo(Z);var y=null;if(!j){var az=new Date();az.setHours(10,0,0);y=az}else{y=j.toDate()}T.jqxDateTimeInput({rtl:o.rtl,localization:o._getDateTimeInputLocalization(),firstDayOfWeek:o.schedulerLocalization.firstDay,todayString:o.schedulerLocalization.todayString,clearString:o.schedulerLocalization.clearString,value:y,formatString:o.editDialogDateTimeFormatString,width:"100%",showTimeButton:true,height:25,theme:o.theme});o.editDialogFields.to=T;o.editDialogFields.toLabel=z;o.editDialogFields.toContainer=aD;o._changeFromUser=true;o.addHandler(ar,"change",function(aI){if(!o._changeFromUser){return}var aG=aI.args;var aL=aI.args.oldValue;var aK=T.val("date");var aF=new a.jqx.date(aK)-new a.jqx.date(aL);if(aF>0){var aH=aF*10000;var aJ=a.jqx.timeSpan(aH);var i=new a.jqx.date(aI.args.newValue).add(aJ);T.val(i.toDate())}});o.addHandler(T,"change",function(aF){if(!o._changeFromUser){return}var i=aF.args;var aH=aF.args.oldValue;var aG=T.val("date");if(ar.val("date")>=aG){T.val(aH)}});var u=a("<div></div>");I.append(u);var S=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogAllDayString+"</div>").appendTo(u);var at=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(u);var aj=a("<div style='position:relative; top: 6px;'></div>").appendTo(at);aj.jqxCheckBox({rtl:o.rtl,height:25,width:25,theme:o.theme});o.editDialogFields.allDay=aj;o.editDialogFields.allDayLabel=S;o.editDialogFields.allDayContainer=u;o.addHandler(u,"change",function(i){if(i.args.checked){T.jqxDateTimeInput({showTimeButton:false,formatString:o.editDialogDateFormatString});ar.jqxDateTimeInput({showTimeButton:false,formatString:o.editDialogDateFormatString})}else{T.jqxDateTimeInput({showTimeButton:true,formatString:o.editDialogDateTimeFormatString});ar.jqxDateTimeInput({showTimeButton:true,formatString:o.editDialogDateTimeFormatString})}});if(a.jqx.scheduler.utilities.getStartOfDay(e).equals(e)&&a.jqx.scheduler.utilities.getEndOfDay(j).equals(j)){o.editDialogFields.allDay.val(true)}if(o._views[o._view].type.indexOf("month")>=0||(e&&e.equals(j))||(j&&j.equals(a.jqx.scheduler.utilities.getEndOfDay(j)))){o.editDialogFields.allDay.val(true)}var x=a("<div></div>");I.append(x);var X=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogTimeZoneString+"</div>").appendTo(x);var au=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(x);var ap=a("<div></div>").appendTo(au);var v=new Array();v.push({displayName:o.schedulerLocalization.editDialogSelectTimeZoneString,id:null});v=v.concat(o.timeZones);for(var ax=0;ax<v.length;ax++){var av=v[ax];var H=av.displayName.indexOf(")");if(H>=0){var ag=av.displayName.substring(2+H)}else{var ag=av.displayName}av.searchName=ag}ap.jqxDropDownList({rtl:o.rtl,placeHolder:o.schedulerLocalization.editDialogSelectTimeZoneString,width:"100%",height:25,theme:o.theme,searchMember:"searchName",source:v,displayMember:"displayName",valueMember:"id"});o.editDialogFields.timeZone=ap;o.editDialogFields.timeZoneLabel=X;o.editDialogFields.timeZoneContainer=x;o.initRepeatPanels(m,I,j.toDate());if(o.editDialogFields&&o.editDialogFields.repeatContainer){if(o.editAppointment&&o.editAppointment.rootAppointment){o.editDialogFields.repeatContainer.hide();o.editDialogFields.repeatPanel.hide()}else{o.editDialogFields.repeatContainer.show();o.editDialogFields.repeatPanel.show()}}var L=a("<div></div>");I.append(L);var aB=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogDescriptionString+"</div>").appendTo(L);var P=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(L);var E=a("<textarea resizable='off' style='position:relative; top: 3px;'></textarea>").appendTo(P);E.jqxInput({rtl:o.rtl,height:40,width:"100%",theme:o.theme});o.editDialogFields.description=E;o.editDialogFields.descriptionLabel=aB;o.editDialogFields.descriptionContainer=L;var ad=a("<div></div>");I.append(ad);var aE=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogColorString+"</div>").appendTo(ad);var R=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ad);var G=a("<div></div>").appendTo(R);var J=function(aF){if(aF==-1){return""}var i=o.colors[aF];var aG="";var aG="";aG+="<div style='margin-top: 1px; float: left; border-radius: 3px; width: 96%; height: 20px; border: none; background:"+i+"; margin-left: 2%;'></div>";return aG};var ao=function(aH,aF){if(aF<0){aH.css("top","4px");aH.css("position","relative");return aH[0].outerHTML}var i=o.colors[aF];var aG="";aG+="<div style='margin-top: 2px; float: left; border-radius: 3px; width: 96%; height: 20px; border: none; background:"+i+"; margin-left: 2%;'></div>";return aG};G.jqxDropDownList({rtl:o.rtl,selectedIndex:-1,placeHolder:o.schedulerLocalization.editDialogColorPlaceHolderString,selectionRenderer:ao,renderer:J,source:o.colors,height:25,width:"100%",theme:o.theme});o.editDialogFields.color=G;o.editDialogFields.colorLabel=aE;o.editDialogFields.colorContainer=ad;var ai=a("<div></div>");I.append(ai);var aA=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogStatusString+"</div>").appendTo(ai);var O=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ai);var C=a("<div></div>").appendTo(O);C.jqxDropDownList({rtl:o.rtl,selectedIndex:2,autoDropDownHeight:true,source:o.schedulerLocalization.editDialogStatuses,height:25,width:"100%",theme:o.theme});o.editDialogFields.status=C;o.editDialogFields.statusLabel=aA;o.editDialogFields.statusContainer=ai;var ah=a("<div></div>");I.append(ah);var N=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogResourceIdString+"</div>").appendTo(ah);var an=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ah);var ac=a("<div></div>").appendTo(an);var F=new Array();for(var ax=0;ax<o._resources.length;ax++){F.push(o._resources[ax])}var w=true;if(F.length>10){w=false}ac.jqxDropDownList({rtl:o.rtl,source:F,selectedIndex:0,autoDropDownHeight:w,height:25,width:"100%",theme:o.theme});o.editDialogFields.resource=ac;o.editDialogFields.resourceLabel=N;o.editDialogFields.resourceContainer=ah;if(F.length==0){ah.hide()}if(!c&&l){o.editDialogFields.resource.val(l.resourceId)}var af=a("<div></div>");I.append(af);var am=a("<div style='width:100%;' class='jqx-scheduler-edit-dialog-field'></div>").appendTo(af);var aq=a("<button style='margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogCancelString+"</button>").appendTo(am);var ak=a("<button style='margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogDeleteString+"</button>").appendTo(am);var al=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatDeleteSeriesString+"</button>").appendTo(am);var K=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatDeleteString+"</button>").appendTo(am);var ab=a("<button style='margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogSaveString+"</button>").appendTo(am);var aC=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatSaveSeriesString+"</button>").appendTo(am);var t=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatSaveString+"</button>").appendTo(am);var ay=25;if(o.isTouchDevice()){ay=null}ak.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});al.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});K.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});ab.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});aq.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});aC.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});t.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});aC.hide();t.hide();o.editDialogFields.saveOccurrenceButton=t;o.editDialogFields.saveSeriesButton=aC;o.editDialogFields.saveButton=ab;o.editDialogFields.cancelButton=aq;o.editDialogFields.deleteButton=ak;o.editDialogFields.deleteSeriesButton=al;o.editDialogFields.deleteExceptionsButton=K;o.editDialogFields.buttons=am;o.addHandler(ak,"click",function(){m.jqxWindow("close");o.overlay.hide();o._deleteAppointment(o.editAppointment)});o.addHandler(aq,"click",function(){m.jqxWindow("close");o.overlay.hide()});o.addHandler(t,"click",function(){if(!o.editAppointment.isException()){if(o.editAppointment.rootAppointment!=null){o.editAppointment.rootAppointment.exceptions.push(o.editAppointment);o.editAppointment.rootAppointment.recurrenceException.push(o.editAppointment.occurrenceFrom)}else{o.editAppointment.exceptions.push(o.editAppointment);o.editAppointment.recurrenceException.push(o.editAppointment.occurrenceFrom)}}else{var aH=o.editAppointment.rootAppointment?o.editAppointment.rootAppointment.exceptions:o.editAppointment.exceptions;for(var aG=0;aG<aH.length;aG++){if(aH[aG].occurrenceFrom.equals(o.editAppointment.occurrenceFrom)){aH[aG]=o.editAppointment;break}}}var aF=o._setAppointmentPropertiesFromDialog(o.editAppointment,"occurrence");if(!aF){return}o.changedAppointments[o.editAppointment.id]={type:"Update",appointment:o.editAppointment.boundAppointment};o._raiseEvent("appointmentChange",{appointment:o.editAppointment.boundAppointment});o._renderrows();m.jqxWindow("close");o.overlay.hide()});o.addHandler(aC,"click",function(){var aF=o.editAppointment;if(aF.rootAppointment){aF=aF.rootAppointment}var i=o._setAppointmentPropertiesFromDialog(aF,"series");if(!i){return}o.changedAppointments[aF.id]={type:"Update",appointment:aF.boundAppointment};o._raiseEvent("appointmentChange",{appointment:aF.boundAppointment});o._renderrows();m.jqxWindow("close");o.overlay.hide()});o.addHandler(ab,"click",function(){var i=true;if(o.editAppointment==null){var aF=new a.jqx.scheduler.appointment();i=o._setAppointmentPropertiesFromDialog(aF,"none");if(i){o.addAppointment(aF)}}else{if(o.editAppointment.rootAppointment){t.trigger("click");i=false}else{if(o.editAppointment.isRecurrentAppointment()){aC.trigger("click");i=false}else{i=o._setAppointmentPropertiesFromDialog(o.editAppointment,"none");if(i){o.changedAppointments[o.editAppointment.id]={type:"Update",appointment:o.editAppointment?o.editAppointment.boundAppointment:null};o._raiseEvent("appointmentChange",{appointment:o.editAppointment.boundAppointment});o._renderrows()}}}}if(i){m.jqxWindow("close");o.overlay.hide()}});o.addHandler(m,"close",function(i){o.overlay.hide();o.focus();if(o.editDialogClose){o.editDialogClose(m,o.editDialogFields,o.editAppointment?o.editAppointment.boundAppointment:null)}o._raiseEvent("editDialogClose",{dialog:m,fields:o.editDialogFields,appointment:o.editAppointment?o.editAppointment.boundAppointment:null})});if(o.editDialogCreate){o.editDialogCreate(m,o.editDialogFields,o.editAppointment)}o._raiseEvent("editDialogCreate",{dialog:m,fields:o.editDialogFields,appointment:o.editAppointment?o.editAppointment.boundAppointment:null});m.jqxWindow({height:I[0].scrollHeight+40})}});o.editDialog=m}if(!o.dialogOpenings){o.dialogOpenings=0}o.removeHandler(o.editDialog,"open");o.addHandler(o.editDialog,"open",function(u){if(o.editDialogOpen&&o.editDialogFields){var i=o.editDialogOpen(m,o.editDialogFields,o.editAppointment?o.editAppointment.boundAppointment:null);if(i==true){return}}o._raiseEvent("editDialogOpen",{dialog:m,fields:o.editDialogFields,appointment:o.editAppointment?o.editAppointment.boundAppointment:null});var t=function(){setTimeout(function(){if(!d){o.editDialogFields.subject.focus();o.editDialogFields.subject.select()}else{o.editDialogFields.deleteButton.focus()}},1)};if(0==o.dialogOpenings&&!c){o.dialogOpenings++;if(!o.isTouchDevice()){o.editDialog.jqxWindow({height:150});o.editDialog.jqxWindow({height:a(o.editDialog.children())[1].scrollHeight+40})}t();return}if(o.editDialogFields){o.editDialogFields.subject.val("");t();o.editDialogFields.resetExceptions.val(false);o.editDialogFields.description.val("");if(!c){o.editDialogFields.deleteButton.hide()}if(c){o.dialogOpenings++;o.editDialogFields.deleteButton.show();o.editDialogFields.subject.val(c.subject);o.editDialogFields.description.val(c.description);o.editDialogFields.timeZone.val(c.timeZone);if(o.colors.indexOf(c.borderColor)>=0){o.editDialogFields.color.val(c.borderColor)}else{o.editDialogFields.color.jqxDropDownList("clearSelection")}o.editDialogFields.allDay.val(c.allDay);o.editDialogFields.resource.val(c.resourceId);o.editDialogFields.status.val(c.status);if(c.timeZone){c.from=c.from.toTimeZone(c.timeZone);c.to=c.to.toTimeZone(c.timeZone)}e=c.from;j=c.to;if(a.jqx.scheduler.utilities.getStartOfDay(e).equals(e)&&a.jqx.scheduler.utilities.getEndOfDay(j).equals(j)){o.editDialogFields.allDay.val(true)}o._setAppointmentPropertiesToDialog(c,e,j,l?l.resourceId:null)}else{o.editDialogFields.saveButton.show();o._setAppointmentPropertiesToDialog(null,e,j,l?l.resourceId:null)}if(e&&j){o._changeFromUser=false;o.editDialogFields.from.val(e.toDate());o.editDialogFields.to.val(j.toDate());o._changeFromUser=true}if(!o.isTouchDevice()){o.editDialog.jqxWindow({height:150});o.editDialog.jqxWindow({height:a(o.editDialog.children())[1].scrollHeight+40})}}});o.removeHandler(o.editDialog,"keydown");o.addHandler(o.editDialog,"keydown",function(t){if(o.editDialogKeyDown){var i=o.editDialogKeyDown(m,o.editDialogFields,o.editAppointment,t);if(i!=undefined){return i}}if(t.keyCode==13){if(a(document.activeElement).ischildof(o.editDialog)){if(document.activeElement.nodeName.toLowerCase()=="button"){return true}if(c){if(c.isException()||c.rootAppointment){o.editDialogFields.saveOccurrenceButton.trigger("click")}else{if(c.isRecurrentAppointment()){o.editDialogFields.saveSeriesButton.trigger("click")}else{o.editDialogFields.saveButton.trigger("click")}}}else{o.editDialogFields.saveButton.trigger("click")}}}else{if(t.keyCode==27){o.editDialogFields.cancelButton.trigger("click")}}})},openMenu:function(e,c){var d=this;if(!d.menu){d._initMenu()}if(d.contextMenu&&d.menu){if(!d.selectedAppointment){d.menu.jqxMenu("hideItem","editAppointment")}else{d.menu.jqxMenu("showItem","editAppointment")}if(arguments.length<2){if(d.selectedAppointment){var f=d.selectedAppointment.coord();e=f.left;c=f.top}else{if(d.focusedCell){var f=a(d.focusedCell).coord()}}e=f.left;c=f.top}d.menu.jqxMenu("open",e,c);d._hasOpenedMenu=true}},closeMenu:function(){var c=this;if(c.contextMenu&&c.menu){setTimeout(function(){c.menu.jqxMenu("close")})}},closeDialog:function(){that.editDialog.jqxWindow("close")},openDialog:function(d,e){var f=this;if(f.selectedJQXAppointment){var c=f._initDialog(f.selectedJQXAppointment);if(c!==false){f._openDialog(d,e)}}else{if(f.getSelection()==null){f.focus();f.focusedCell.setAttribute("data-selected","true");f._lastSelectedCell=f.focusedCell;f._updateCellsSelection(f.focusedCell)}f._initDialog();f._openDialog(d,e)}},_openDialog:function(c,e){var f=this;var j=f.host.coord();f.overlay.show();f.overlay.css("z-index",9999999);f.overlay.width(f.host.width());f.overlay.height(f.host.height());f.overlay.offset(j);var i=f.isTouchDevice();if(i){f.editDialog.jqxWindow("move",j.left,j.top);f.editDialog.jqxWindow({draggable:false,maxWidth:f.host.width(),maxHeight:f.host.height()});f.editDialog.jqxWindow({width:f.host.width(),height:f.host.height()});f.editDialog.jqxWindow("open")}else{if(c!=undefined&&e!=undefined){f.editDialog.jqxWindow("move",c,e);f.editDialog.jqxWindow("open")}else{var d=f.editDialog.height();if(d<400){d=400}var h=j.top+f.host.height()/2-d/2;var g=j.left+f.host.width()/2-f.editDialog.width()/2;f.editDialog.jqxWindow("move",g,h);f.editDialog.jqxWindow("open")}}setTimeout(function(){f.overlay.css("z-index",999)},50)},_setAppointmentPropertiesFromDialog:function(d,e){var f=this;var c=function(m){var v=f._views[f._view].type;var s=f._views[f._view];var x=f.editDialogFields.from.val("date");var h=f.editDialogFields.to.val("date");if(x>h){f.editDialogFields.from.jqxDateTimeInput("focus");return false}if(x==h){if(v.indexOf("month")>=0){return true}return false}m.resourceId=f.editDialogFields.resource.val();m.description=f.editDialogFields.description.val();m.allDay=f.editDialogFields.allDay.val();m.status=f.editDialogFields.status.val();m.location=f.editDialogFields.location.val();m.timeZone=f.editDialogFields.timeZone.val();if(m.timeZone==""&&f.timeZone!=""){m.timeZone=f.timeZone}m.from=new a.jqx.date(x,m.timeZone);m.to=new a.jqx.date(h,m.timeZone);if(f.timeZone){m.from=m.from.toTimeZone(f.timeZone);m.to=m.to.toTimeZone(f.timeZone)}else{m.from=m.from.toTimeZone(null);m.to=m.to.toTimeZone(null)}if(m.allDay){m.from=a.jqx.scheduler.utilities.getStartOfDay(m.from);m.to=a.jqx.scheduler.utilities.getEndOfDay(m.to)}if(f.editDialogFields.color.val()){var t=f.getAppointmentColors(f.editDialogFields.color.val());m.color=t.color;m.background=t.background;m.borderColor=t.border}m.subject=f.editDialogFields.subject.val();var g=f.editDialogFields.repeat.jqxDropDownList("selectedIndex");var q=new a.jqx.scheduler.recurrencePattern();var j=f.editDialogFields.repeatEndPanel;q.timeZone=f.timeZone;q.from=m.from.clone();if(e=="occurrence"){if(m.rootAppointment){q.from=m.rootAppointment.from.clone()}}if(f.editDialogFields.resetExceptions.val()){m.exceptions=new Array();m.recurrenceException=new Array()}if(j.repeatEndNever.val()){q.count=1000;q.to=new a.jqx.date(9999,12,31)}else{if(j.repeatEndAfter.val()){q.count=j.repeatEndAfterValue.val();q.to=new a.jqx.date(9999,12,31)}else{if(j.repeatEndOn.val()){q.count=1000;var h=new a.jqx.date(j.repeatEndOnValue.jqxDateTimeInput("getDate"),f.timeZone);q.to=h}}}switch(g){case 0:default:m.clearRecurrence();break;case 1:var k=f.editDialogFields.daily;var C=k.repeatDayInterval.val();q.interval=C;q.freq="daily";break;case 2:var u=f.editDialogFields.weekly;var C=u.repeatWeekInterval.val();var p=[{Sunday:0},{Monday:1},{Tuesday:2},{Wednesday:3},{Thursday:4},{Friday:5},{Saturday:6}];var o=u.repeatDays;var n=new Array();q.weekDays={};for(var z=0;z<7;z++){var y=o[z].val();if(y){if(z==0){n.push(6)}else{n.push(z-1)}a.extend(q.weekDays,p[z])}}q.freq="weekly";q.byweekday=n;q.interval=C;break;case 3:var A=f.editDialogFields.monthly;var C=A.repeatMonth.val();if(A.repeatMonthDayBool.val()){q.day=A.repeatMonthDay.val();q.bymonthday=new Array();q.bymonthday.push(q.day)}else{var w=A.repeatDayOfWeek.jqxDropDownList("selectedIndex");var r=new Array();if(w==0){w=6}else{w--}var l=A.repeatDayOfWeekType.jqxDropDownList("selectedIndex");var B="";switch(l){case 0:B=1;break;case 1:B=2;break;case 2:B=3;break;case 3:B=4;break;case 4:B=-1;break}r.push([w,B]);q.bynweekday=r}q.freq="monthly";q.interval=C;break;case 4:var D=f.editDialogFields.yearly;var C=D.repeatYear.val();if(D.repeatYearBool.val()){q.day=D.repeatYearDay.val();q.month=D.repeatYearMonth.jqxDropDownList("selectedIndex");q.bymonth=new Array();q.bymonth.push(1+q.month);q.byyearday=new Array();q.byyearday.push(q.day)}else{q.month=D.repeatDayOfWeekMonth.jqxDropDownList("selectedIndex");q.bymonth=new Array();q.bymonth.push(1+q.month);var w=D.repeatDayOfWeek.jqxDropDownList("selectedIndex");var r=new Array();if(w==0){w=6}else{w--}var l=D.repeatDayOfWeekType.jqxDropDownList("selectedIndex");var B="";switch(l){case 0:B=1;break;case 1:B=2;break;case 2:B=3;break;case 3:B=4;break;case 4:B=-1;break}r.push([w,B]);q.bynweekday=r}q.freq="yearly";q.interval=C;break}if(m.rootAppointment){m.rootAppointment.recurrencePattern=q}else{if(g>0){m.recurrencePattern=q}}return true}(d);return c},_setAppointmentPropertiesToDialog:function(f,i,e,h){var g=this;var d=function(){var p=g.editDialogFields.repeatEndPanel;p.repeatEndNever.jqxRadioButton({checked:true});p.repeatEndAfterValue.val(1);p.repeatEndOnValue.val(l);var l=e.toDate();if(g.editDialogFields.daily){var j=g.editDialogFields.daily;j.repeatDayInterval.val(1)}if(g.editDialogFields.weekly){var o=g.editDialogFields.weekly;for(var m=0;m<o.repeatDays.length;m++){if(m==1){o.repeatDays[m].jqxCheckBox({checked:true})}else{o.repeatDays[m].jqxCheckBox({checked:false})}}o.repeatWeekInterval.val(1)}if(g.editDialogFields.monthly){var n=g.editDialogFields.monthly;n.repeatDayOfWeek.jqxDropDownList("selectIndex",1);n.repeatDayOfWeekBool.jqxRadioButton({checked:false});n.repeatDayOfWeekType.jqxDropDownList("selectIndex",0);n.repeatMonthDayBool.jqxRadioButton({checked:true});n.repeatMonthDay.val(1);n.repeatMonth.val(1)}if(g.editDialogFields.yearly){var k=g.editDialogFields.yearly;k.repeatDayOfWeekMonth.jqxDropDownList("selectIndex",0);k.repeatDayOfWeekBool.jqxRadioButton({checked:false});k.repeatDayOfWeekType.jqxDropDownList("selectIndex",0);k.repeatDayOfWeek.jqxDropDownList("selectIndex",1);k.repeatYear.val(1);k.repeatYearMonth.jqxDropDownList("selectIndex",0);k.repeatYearDay.val(1);k.repeatYearBool.val(true)}};d();if(f&&f.isRecurrentAppointment()){if(!f.rootAppointment){g.editDialogFields.resetExceptionsContainer.show()}else{g.editDialogFields.resetExceptionsContainer.hide()}}else{if(f){g.editDialogFields.resetExceptionsContainer.hide();g.editDialogFields.repeat.jqxDropDownList("selectIndex",0)}}if(!f){g.editDialogFields.timeZone.jqxDropDownList("clearSelection");if(!h){g.editDialogFields.resource.jqxDropDownList("selectIndex",0)}else{g.editDialogFields.resource.val(h)}g.editDialogFields.allDay.val(false);if(g._views[g._view].type.indexOf("month")>=0||(i&&i.equals(e))||(e&&e.equals(a.jqx.scheduler.utilities.getEndOfDay(e)))){g.editDialogFields.allDay.val(true)}g.editDialogFields.color.jqxDropDownList("clearSelection");g.editDialogFields.description.val("");g.editDialogFields.subject.val("");g.editDialogFields.repeat.jqxDropDownList("selectIndex",0);return}var c=function(j){var r=j.recurrencePattern;if(j.rootAppointment){var r=j.rootAppointment.recurrencePattern}if(r==null){return}var k=r.freq;var p=0;if(k=="daily"){p=1}if(k=="weekly"){p=2}if(k=="monthly"){p=3}if(k=="yearly"){p=4}var n=g.editDialogFields.repeatEndPanel;if(r.count!=1000){n.repeatEndAfter.jqxRadioButton({checked:true});n.repeatEndAfterValue.val(r.count)}else{if(r.to.year()!=9999){n.repeatEndOn.jqxRadioButton({checked:true});n.repeatEndOnValue.val(r.to.toDate())}else{n.repeatEndNever.jqxRadioButton({checked:true})}}g.editDialogFields.repeat.jqxDropDownList("selectIndex",p);switch(p){case 1:var l=r.interval;var q=g.editDialogFields.daily;q.repeatDayInterval.val(l);break;case 2:var l=r.interval;var z=g.editDialogFields.weekly;z.repeatWeekInterval.val(l);var y=r.byweekday;for(var o=0;o<7;o++){var w=z.repeatDays[o];w.val(false)}for(var o=0;o<y.length;o++){var w=y[o];if(w==6){z.repeatDays[0].val(true)}else{z.repeatDays[w+1].val(true)}}break;case 3:var u=g.editDialogFields.monthly;u.repeatMonth.val(r.interval);if(r.bymonthday.length>0){u.repeatMonthDayBool.jqxRadioButton({checked:true});u.repeatMonthDay.val(r.day)}else{u.repeatDayOfWeekBool.jqxRadioButton({checked:true});var s=r.bynweekday;var m=s[0][0];m++;if(m==7){m=0}u.repeatDayOfWeek.jqxDropDownList("selectIndex",m);var x=s[0][1];var v="";switch(x){case 1:v=0;break;case 2:v=1;break;case 3:v=2;break;case 4:v=3;break;case -1:v=4;break}u.repeatDayOfWeekType.jqxDropDownList("selectIndex",v)}break;case 4:var t=g.editDialogFields.yearly;if(r.byyearday&&r.byyearday.length>0){t.repeatYearDay.val(r.byyearday[0]);t.repeatYearBool.val(true)}if(r.bymonth&&r.bymonth.length>0){t.repeatYearMonth.val(r.bymonth[0]);t.repeatYearBool.val(true)}if(!r.byyearday||(r.byyearday&&r.byyearday.length==0)){t.repeatDayOfWeekMonth.val(r.bymonth[0]);t.repeatDayOfWeekBool.jqxRadioButton({checked:true});var s=r.bynweekday;var m=s[0][0];m++;if(m==7){m=0}t.repeatDayOfWeek.jqxDropDownList("selectIndex",m);var x=s[0][1];var v="";switch(x){case 1:v=0;break;case 2:v=1;break;case 3:v=2;break;case 4:v=3;break;case -1:v=4;break}t.repeatDayOfWeekType.jqxDropDownList("selectIndex",v)}break}};c(f)},_updateCellsSelection:function(){var g=this;var m=g.rows;var c=0;var d=0;if(c>0&&g.rtl){c=0;d=1}for(var f=0;f<m.length;f++){var l=m[f].cells;for(var e=c;e<l.length-d;e++){var k=l[e];if(k.getAttribute("data-selected")=="true"){var h=k.jqxClassName||k.className;if(h.indexOf("jqx-fill-state-pressed")>=0){if(k!=g.focusedCell){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"")}else{if(k==g.focusedCell&&g.focused){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");if(!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}}}if(k.className!=h){k.className=h}k.jqxClassName=h;continue}h=h.replace(" jqx-fill-state-pressed","");h=h.replace(" jqx-fill-state-pressed-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");h=h.replace(" jqx-grid-cell-selected","");h=h.replace(" jqx-grid-cell-selected-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-selected","");h=h.replace(" jqx-scheduler-cell-selected-"+g.theme,"");h=h+=" "+g.toTP("jqx-fill-state-pressed jqx-grid-cell-selected jqx-scheduler-cell-selected");if(k==g.focusedCell&&g.focused&&!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}if(k.className!=h){k.className=h}k.jqxClassName=h}else{var h=k.jqxClassName||k.className;if(h.indexOf("jqx-fill-state-pressed")==-1){if(k!=g.focusedCell){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"")}else{if(k==g.focusedCell&&g.focused){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");if(!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}}}if(k.className!=h){k.className=h}k.jqxClassName=h;continue}else{if(k==g.focusedCell&&g.focused){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");if(!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}if(k.className!=h){k.className=h}k.jqxClassName=h}}h=h.replace(" jqx-fill-state-pressed","");h=h.replace(" jqx-fill-state-pressed-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");h=h.replace(" jqx-grid-cell-selected","");h=h.replace(" jqx-grid-cell-selected-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-selected","");h=h.replace(" jqx-scheduler-cell-selected-"+g.theme,"");if(k==g.focusedCell&&g.focused&&!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}if(k.className!=h){k.className=h}k.jqxClassName=h;k.removeAttribute("data-selected")}}}},_getuikey:function(d,g){var f=null;var e=this.table[0].rows;f=a(e[d]).attr("data-key");if(a(e[d]).attr("data-role")){var c=a(e[d]);if(g=="next"){while(c){c=c.next();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}else{if(g=="prev"){while(c){c=c.prev();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}}return null}return f},getRows:function(){var j=this._views[this._view].type;var l=this._views[this._view];var e="halfHour";if(l.timeRuler&&l.timeRuler.scale){e=l.timeRuler.scale}var k=24;var c=this.showAllDayRow;if(l.timeRuler&&(j==="dayView"||j==="weekView")){var d=0;var g=23;if(l.timeRuler.scaleStartHour!=undefined){var d=parseInt(l.timeRuler.scaleStartHour)}if(l.timeRuler.scaleEndHour!=undefined){var g=parseInt(l.timeRuler.scaleEndHour)}if(d<0){d=0}if(g<0){g=23}if(d>23){d=0}if(g>23){g=23}k=g-d+1;if(l.timeRuler.showAllDayRow!=undefined){c=l.timeRuler.showAllDayRow}}var m=new Array();var h=0;switch(j){case"dayView":case"weekView":default:var h=k*2;if(e==="hour"||e==="sixtyMinutes"){var h=k}else{if(e==="quarterHour"||e==="fifteenMinutes"){var h=k*4}else{if(e==="tenMinutes"){var h=k*6}else{if(e==="fiveMinutes"){var h=k*12}}}}if(c){h++}break;case"monthView":var h=6;break;case"timelineDayView":case"timelineWeekView":case"timelineMonthView":var h=1;break;case"agendaView":var h=this.appointments?this.appointments.length:0;break}for(var f=0;f<h;f++){m.push({uid:f})}return m},getKey:function(c){var d=this.getRows();if(d){return d[c].uid}else{return -1}},_getkey:function(e){if(this._loading){throw new Error("jqxScheduler: "+this.loadingErrorMessage);return false}var f=null;var d=function(){var l=this.table[0].rows;var k=null;var n=0;if(this.pageable){n-=this.dataview.pagenum*this.dataview.pagesize}if(this.groups.length>0){var h=0;for(var j=0;j<l.length;j++){var o=a(l[j]);var m=o.children()[0].getAttribute("colspan");if(m>0){continue}if(h===n+e){k=o.attr("data-key");return k}h++}return k}if(this.rowDetails){var h=0;for(var j=0;j<l.length;j++){if(h===e+n){k=a(l[j]).attr("data-key");return k}if(j%2==1){h++}}}else{k=a(l[n+e]).attr("data-key")}return k};f=d.call(this);if(f==null){if(this.pageable){var c=Math.floor(e/this.dataview.pagesize);if(this.dataview.pagenum!=c){var g=this.getRows()[e];if(g&&g.uid!=null){return g.uid}else{if(isNaN(c)){return null}this.goToPage(c);f=d.call(this)}}}}return f},_getDateByString:function(k){var f=k.split(" ");var m=f[0].split("-");var i=f[1].split(":");var h=parseInt(m[0],10);var g=parseInt(m[1],10)-1;var j=parseInt(m[2],10);var e=parseInt(i[0],10);var d=parseInt(i[1],10);var l=parseInt(i[2],10);var c=new Date(h,g,j,e,d,l);if(h<1970){c.setFullYear(h,g,j)}return c},_getCellByDate:function(c,e,d){var n=this.table[0].rows;if(e===undefined){e=false}if(d===undefined){if(this.focusedCell){d=this.focusedCell.getAttribute("data-view")}}for(var h=0;h<n.length;h++){var m=n[h];if(m.getAttribute("data-group-row")){continue}for(var g=0;g<m.cells.length;g++){var l=m.cells[g];if(l.getAttribute("rowspan")!=null){continue}if(l.getAttribute("data-view")!==d){continue}if(l.getAttribute("data-time-slot")){continue}if(e&&l.getAttribute("data-end-date")!=null){continue}var k=l.getAttribute("data-date");var f=this._getDateByString(k);if(f.valueOf()==c.valueOf()){return l}}}},_handleKey:function(t){if(this._loading){return true}var u=t.shiftKey;var n=t.ctrlKey||t.metaKey;var j=this;var x=t.charCode?t.charCode:t.keyCode?t.keyCode:0;if(j._hasOpenedMenu){if(x==27){j.closeMenu()}else{j.menu.jqxMenu("focus")}return true}if(x===13||(j.selectedAppointment&&x==46)){if(j.editRecurrenceDialog&&j.editRecurrenceDialog.jqxWindow("isOpen")){return true}if(j.editDialog&&j.editDialog.jqxWindow("isOpen")){return true}if(!j.selectedAppointment){j._initDialog();j._openDialog()}else{var d=j.getJQXAppointmentByElement(j.selectedAppointment);if(!d.readOnly){var p=j._initDialog(d,"delete");if(p!==false){j._openDialog()}}}}if(x===27){if(j.dragOrResize){j.table.find(".jqx-icon-arrow-down").hide();var g=j.getViewStart();var f=a.jqx.scheduler.utilities.getEndOfDay(j.getViewEnd());j._prepareAppointmentsInView(g,f);j._renderAppointments(g,f);j._removeFeedbackAndStopResize();return false}}var s=function(A){var C=j.selectedAppointment;var z=j.getJQXAppointmentByElement(C);var y=z.elements[0].cells[0].cell;var M=z.elements[z.elements.length-1].cells[z.elements[z.elements.length-1].cells.length-1].cell;var F=j.rows[j.rows.length-1].cells[j.rows[j.rows.length-1].cells.length-1];if(u||(!u&&!n&&(A=="down"||A=="right"))){y=M}var I=j._views[j._view].type;var H=j._views[j._view];var J=y;switch(A){case"left":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);if(G>0&&!u){J=E.cells[G-1]}else{if(I=="monthView"&&!u){var B=E.aboveRow;if(B){J=B.cells[B.cells.length-1]}}}break;case"right":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);if(G<E.cells.length-1){J=E.cells[G+1]}else{if(I=="monthView"){var Q=E.belowRow;if(Q){J=Q.cells[0]}}}if(I=="monthView"&&!u&&n&&M==F){J=y}break;case"up":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);var B=E.aboveRow;if(B&&!u){J=B.cells[G]}break;case"down":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);var Q=E.belowRow;if(Q){J=Q.cells[G]}break}var O=J.getAttribute("data-date");var N=new a.jqx.date(O,j.timeZone);var I=a(J).attr("data-view");var K=j._resources[parseInt(I)-1];if(u){var I=j._views[j._view].type;var H=j._views[j._view];var D=false;if(I==="dayView"||I==="weekView"){if(y.getAttribute("data-end-date")){if(A=="left"&&(z.elements[0].cells.length>1||j.rtl)){if(!j.rtl){z.to=a.jqx.scheduler.utilities.getEndOfDay(N.addDays(-1))}else{z.to=a.jqx.scheduler.utilities.getEndOfDay(N.addDays(1))}D=true}else{if(A=="right"){if(!j.rtl||(j.rtl&&z.elements[0].cells.length>1)){z.to=a.jqx.scheduler.utilities.getEndOfDay(N)}D=true}}}else{if(A=="up"&&z.elements[0].cells.length>1){z.to=N;D=true}else{if(A=="down"){z.to=N.addMinutes(j.getMinutesPerScale());D=true}}}}else{if(I.indexOf("month")>=0){if(A=="left"&&(z.elements[0].cells.length>1||z.elements.length>1)){z.to=a.jqx.scheduler.utilities.getEndOfDay(N.addDays(-1));D=true}else{if(A=="right"){z.to=a.jqx.scheduler.utilities.getEndOfDay(N);D=true}}}else{if((!j.rtl&&A=="left"&&z.elements[0].cells.length>1)||(j.rtl&&A=="right"&&z.elements[0].cells.length>1)){z.to=N;if(j.rtl){z.to=N.addMinutes(j.getMinutesPerScale())}D=true}else{if((!j.rtl&&A=="right")||(j.rtl&&A=="left")){z.to=N.addMinutes(j.getMinutesPerScale());if(j.rtl){z.to=z.to.addMinutes(j.getMinutesPerScale())}D=true}}}}if(D){j.moveAppointment(z,N,K,J,true)}}else{if(n){j.moveAppointment(z,N,K,J)}else{j.clearAppointmentsSelection();var L=true;if(A=="down"){L=false}j.selectCell(N,L,I);j.ensureVisible(J)}}if(j.selectedAppointment){j.selectedAppointment.removeClass(j.toTP("jqx-scheduler-selected-appointment"));var P=j.selectedAppointment.attr("data-key");a('[data-key="'+P+'"]').addClass(j.toTP("jqx-scheduler-selected-appointment"));j.clearSelection()}};if(t.altKey&&j._resourcesElements&&j._resources&&j._resources.length>0){var h=function(y){var z=j._resourcesElements.bottom[y];if(z.attr("data-toggle")=="on"){j.hideAppointmentsByResource(y)}else{j.showAppointmentsByResource(y)}};var k=x>=49&&x<=58?k=x-48:-1;if(k>=1){a.each(j._resources,function(y,z){if(y==k-1){h(z);return false}});return false}}if(t.ctrlKey){if(!j.selectedAppointment){if(x==37){j.toolbarLeftButton.trigger("click");j.ensureVisible(j.focusedCell);return false}else{if(x==39){j.toolbarRightButton.trigger("click");j.ensureVisible(j.focusedCell);return false}}}if(x==49){j._setView(0);return false}else{if(x==50){j._setView(1);return false}else{if(x==51){j._setView(2);return false}else{if(x==52){j._setView(3);return false}else{if(x==53){j._setView(4);return false}else{if(x==54){j._setView(5);return false}else{if(x==68){j.dateTimeInput.jqxDateTimeInput("open");return false}else{if(x==77){j.openMenu();return false}}}}}}}}}if(x==9){if(!t.shiftKey){if(j.selectedAppointment){j.clearSelection();var e=j.selectedAppointment;var d=j.getJQXAppointmentByElement(e);var i=j.tabKeyAppointments.indexOf(d);if(i<j.tabKeyAppointments.length-1){d=j.tabKeyAppointments[i+1];j._selectAppointment(d);j._lastSelectedAppointment=d;j._ensureAppointmentVisible(d);return false}else{j.clearAppointmentsSelection();return true}}else{var d=j.tabKeyAppointments[0];if(d){j._selectAppointment(d);j._lastSelectedAppointment=d;j._ensureAppointmentVisible(d);return false}else{if(!j.focusedCell){j._updateFocusedCell();j.ensureVisible(j.focusedCell);return false}else{if(j.focusedCell){if(j.focusedCell.className.indexOf("-focus")==-1){j._updateCellsSelection();j.ensureVisible(j.focusedCell);return false}}}}}}else{if(j.selectedAppointment){j.clearSelection();var e=j.selectedAppointment;var d=j.getJQXAppointmentByElement(e);if(d){var i=j.tabKeyAppointments.indexOf(d);if(i>0){d=j.tabKeyAppointments[i-1];j._selectAppointment(d);j._lastSelectedAppointment=d;j._ensureAppointmentVisible(d);return false}else{j.clearAppointmentsSelection();if(!j.focusedCell){j._updateFocusedCell();j.ensureVisible(j.focusedCell);return false}else{if(j.focusedCell){if(j.focusedCell.className.indexOf("-focus")==-1){j._updateCellsSelection();j.ensureVisible(j.focusedCell);return false}}}return true}}}else{if(!j.focusedCell){j._updateFocusedCell();j.ensureVisible(j.focusedCell)}else{if(j.focusedCell){if(j.focusedCell.className.indexOf("-focus")==-1){j._updateCellsSelection();j.ensureVisible(j.focusedCell);return false}}}}}}if(j.selectedAppointment){if(x==37){s("left")}else{if(x==38){s("up")}else{if(x==40){s("down")}else{if(x==39){s("right")}}}}if(x>=37&&x<=40){return false}return}var l=this._lastSelectedCell;if(!l){return}if(!a(this._lastSelectedCell).parent()[0]){this._lastSelectedCell=this.rows[0].cells[0];l=this._lastSelectedCell}var o=this.table[0].rows;var q=this._views[this._view].type;var m=this._views[this._view];var w="halfHour";if(m.timeRuler&&m.timeRuler.scale){w=m.timeRuler.scale}var r=function(K,G){var C=30;switch(w){case"sixtyMinutes":case"hour":C=60;break;case"thirdyMinutes":case"halfHour":C=30;break;case"fifteenMinutes":case"quarterHour":C=15;break;case"tenMinutes":C=10;break;case"fiveMinutes":C=5;break}var I=K.getAttribute("data-date");var H=function(U,N,P){if(U&&U.getAttribute("rowspan")==null&&U.getAttribute("data-time-slot")==null){if(P<j.min||P>j.max){return}var S=j.table[0].rows;var R=j._lastSelectedCell;j._lastSelectedCell=U;if(t.shiftKey&&j._lastSelectedCell){if(!j.shiftSelectedCell){j.shiftSelectedCell=l}}else{if(!t.shiftKey){j.shiftSelectedCell=null}}if(!j.shiftSelectedCell){for(var Q=0;Q<S.length;Q++){var T=S[Q];if(T.getAttribute("data-group-row")){continue}for(var O=0;O<T.cells.length;O++){var N=T.cells[O];N.removeAttribute("data-selected","false")}}U.setAttribute("data-selected","true");j.focusedCell=U}else{if(U.getAttribute("data-end-date")&&j.shiftSelectedCell.getAttribute("data-end-date")){j.focusedCell=U;j._selectRange(U,j.shiftSelectedCell)}else{if(!U.getAttribute("data-end-date")&&!j.shiftSelectedCell.getAttribute("data-end-date")){j.focusedCell=U;j._selectRange(U,j.shiftSelectedCell)}else{j.focusedCell=R;j._lastSelectedCell=R}}}j.ensureVisible(j.focusedCell)}};var z=new a.jqx.date(I,j.timeZone);var A=K.getAttribute("data-view");switch(G){case"left":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);if(F>0){var D=M.cells[F-1];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone)}H(D,K,J);break;case"right":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);if(F<M.cells.length-1){var D=M.cells[F+1];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone)}H(D,K,J);break;case"up":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var y=M.aboveRow;if(y){var D=y.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J)}break;case"down":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var E=M.belowRow;if(E){var D=E.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J)}break;case"home":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var B=j.rows[0];var D=B.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J);break;case"end":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var L=j.rows[j.rows.length-1];var D=L.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J);break}j._updateCellsSelection()};var v=function(){r(l,"home")};var c=function(){r(l,"end")};if(x==36||(n&&x==38)){v();return false}else{if(x==35||(n&&x==40)){c();return false}else{if(x==37){if(j.selectedAppointment){s(l,"left")}else{r(l,"left")}return false}else{if(x==38){if(j.selectedAppointment){s(l,"up")}else{r(l,"up")}return false}else{if(x==40){if(j.selectedAppointment){s(l,"down")}else{r(l,"down")}return false}else{if(x==39){if(j.selectedAppointment){s(l,"right")}else{r(l,"right")}return false}}}}}}},getSelectedCells:function(){var h=this;var k=h.table[0].rows;var g=k.length;var c=new Array();for(var f=0;f<g;f++){var e=k[f].cells;for(var d=0;d<e.length;d++){if(e[d].getAttribute("data-selected")){c.push(e[d])}}}return c.sort(function(i,j){return h._sortByDate(i,j)})},getSelection:function(){var f=this;var c=f.getSelectedCells();if(c.length==0){return null}var i=c[0].getAttribute("data-date");var h=c[c.length-1].getAttribute("data-date");var e=f.getMinutesPerScale();var d=f._views[f._view].type;if(d.toLowerCase().indexOf("month")>=0){e=0}if(c[0].getAttribute("data-end-date")){e=0}h=new a.jqx.date(h,f.timeZone).addMinutes(e);var d=parseInt(c[0].getAttribute("data-view"))-1;var g=f._resources[d];if(f._views[f._view].type.toLowerCase().indexOf("month")>=0){return{from:new a.jqx.date(i,f.timeZone),to:a.jqx.scheduler.utilities.getEndOfDay(h),resourceId:g}}return{from:new a.jqx.date(i,f.timeZone),to:h,resourceId:g}},clearSelection:function(){var g=this;var h=g.table[0].rows;var f=h.length;for(var e=0;e<f;e++){var d=h[e].cells;for(var c=0;c<d.length;c++){d[c].removeAttribute("data-selected")}}g._updateCellsSelection()},_getvirtualcolumnsindexes:function(d,l,h,k,c){if(this.rtl){d=this.hScrollInstance.max-d}var e=0;var i=-1;var f=h+k;if(this.autorowheight){return{start:0,end:h+k}}if(!c){for(var g=0;g<h+k;g++){var m=g;if(!this.columns.records[g].hidden){e+=this.columns.records[g].width}if(e>=d&&i==-1){i=g}if(e>l+d){f=g;break}}}f++;if(f>h+k){f=h+k}if(i==-1){i=0}return{start:i,end:f}},_renderhorizontalscroll:function(){var l=this;var h=l.hScrollInstance;var j=h.value;if(l.hScrollBar[0].style.visibility==="hidden"){h.value=0;j=0}var e=parseInt(j);if(l.table==null){return}var c=function(t){if(t.parentNode&&t.parentNode.nodeName!="#document-fragment"){return true}return false};var k=l._getvirtualcolumnsindexes(e,l._hostWidth,0,l.columns.records.length,false);var n=k.start;var q=k.end;var g=l.table[0].rows;for(var s=0;s<n;s++){var r=s;var d=l.columns.records[r].element[0];if(c(d)){d.parentNode.removeChild(d)}}for(var s=q;s<l.columns.records.length;s++){var r=s;var d=l.columns.records[r].element[0];if(c(d)){d.parentNode.removeChild(d)}}for(var s=n;s<q;s++){var r=s;d=l.columns.records[r].element[0];if(!c(d)){l.columnsrow[0].appendChild(d)}}var p=l.columnsrow;var i=0;var o=l.columns.records.length-i;var f=l.columns.records;var m=l.source.records.length==0;if(l.rtl){if(l.hScrollBar.css("visibility")!="hidden"){e=h.max-e}}l.table[0].style.left=-e+"px";if(l.pinnedtable[0].style.display=="block"){l.pinnedtable[0].style.left=-e+"px"}p[0].style.marginLeft=-e+"px"},_getDayName:function(c,e){if(c>=7){c-=7}if(!e){e=this.dayNameFormat;if(this.isTouchDevice()){e=this.touchDayNameFormat}}var d=this.schedulerLocalization.days.names[c];switch(e){case"full":d=this.schedulerLocalization.days.names[c];break;case"abbr":d=this.schedulerLocalization.days.namesAbbr[c];break;case"shortest":d=this.schedulerLocalization.days.namesShort[c];break;case"firstTwoLetters":d=d.substring(0,2);break;case"firstLetter":d=d.substring(0,1);break}return d},_initializeColumns:function(){if(this._views.length===0){this._views.push({type:"dayView"})}var o=this._views[this._view].type;var m=this._views[this._view];if(this.columns&&this.columns.records){for(var x=0;x<this.columns.records.length;x++){this._removecolumnhandlers(this.columns.records[x])}}this.columns=new Array();var z=new Array();var k=this;var p=function(F,L){var G="halfHour";if(m.timeRuler&&m.timeRuler.scale){G=m.timeRuler.scale}var O=24;var E=0;var N=23;if(m.timeRuler){if(m.timeRuler.scaleStartHour!=undefined){var E=parseInt(m.timeRuler.scaleStartHour)}if(m.timeRuler.scaleEndHour!=undefined){var N=parseInt(m.timeRuler.scaleEndHour)}if(E<0){E=0}if(N<0){N=23}if(E>23){E=0}if(N>23){N=23}O=N-E+1}var I=60;var M=2;if(G){switch(G){case"sixtyMinutes":case"hour":M=1;break;case"thirdyMinutes":case"halfHour":M=2;break;case"fifteenMinutes":case"quarterHour":M=4;break;case"tenMinutes":M=6;break;case"fiveMinutes":M=12;break}}var Q=new Array();var P="auto";if(m.timeRuler&&m.timeRuler.formatString){P=m.timeRuler.formatString}var D=E;var J=O;var B=F.addHours(D);var j="auto";if(m.columnWidth){j=M*m.columnWidth}else{j=M*80}for(var K=0;K<J;K++){var C=B.toDate();if(P==="auto"){if((C.getHours()==0&&C.getMinutes()==0)||(C.getHours()==12&&C.getMinutes()==0)){var H="hh tt"}else{var H="hh:mm"}}else{if(a.isFunction(P)){var H=P(C)}}if(a.jqx.dataFormat.isDate(C)){C=a.jqx.dataFormat.formatdate(C,H,k.schedulerLocalization)}B=B.addMinutes(I,false);k.columns.push({columnGroup:L,text:C,width:j})}};for(var v=0;v<this.tableColumns;v++){if(this.tableColumns>1){var g=k._resources[v]?k._resources[v]:"Resource"+v;z.push({text:g,name:g})}var u="left";if(this.rtl){u="right"}switch(o){case"dayView":var h=this.getViewStart();if(false===m.showWeekends){if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}}var t="auto";if(m&&m.columnWidth){t=m.columnWidth}var g=k._resources[v]?k._resources[v]:"Resource"+v;this.columns.push({align:u,width:t,columnGroup:g,text:this._getDayName(h.dayOfWeek())});break;case"weekView":case"monthView":for(var x=0;x<7;x++){var w=this.schedulerLocalization.firstDay+x;if(false===m.showWeekends){if(x===0||x===6){continue}}var t="auto";if(m&&m.columnWidth){t=m.columnWidth}var g=k._resources[v]?k._resources[v]:"Resource"+v;this.columns.push({align:o=="weekView"?u:"center",width:t,columnGroup:g,text:this._getDayName(w)})}break;case"timelineDayView":var g=k._resources[v]?k._resources[v]:"Resource"+v;p(k.getViewStart(),g);break;case"timelineWeekView":for(var x=0;x<7;x++){var w=this.schedulerLocalization.firstDay+x;if(false===m.showWeekends){if(x===0||x===6){continue}}var g=k._resources[v]?k._resources[v]:"Resource"+v;z.push({align:k.rtl?"right":"left",parentGroup:g,name:this._getDayName(w)+v,text:this._getDayName(w)});p(k.getViewStart().addDays(x),this._getDayName(w)+v)}break;case"timelineMonthView":var l=k.getViewStart();var y="auto";if(m.timeRuler&&m.timeRuler.formatString){y=m.timeRuler.formatString}for(var x=0;x<41;x++){var w=l.dayOfWeek();if(false===m.showWeekends){if(w===0||w===6){continue}}var t="auto";if(m.columnWidth){t=m.columnWidth}else{t=100}var q=l.toDate();if(y==="auto"){var d="dd";q=l.toDate();if(q.getDate()===1){d="MMM dd"}}else{if(a.isFunction(y)){var d=y(q)}}if(a.jqx.dataFormat.isDate(q)){q=a.jqx.dataFormat.formatdate(q,d,k.schedulerLocalization)}l=l.addDays(1);var g=k._resources[v]?k._resources[v]:"Resource"+v;k.columns.push({columnGroup:g,text:q,width:t})}break;case"agendaView":k.columns.push({text:k.schedulerLocalization.agendaDateColumn});k.columns.push({text:k.schedulerLocalization.agendaTimeColumn});k.columns.push({text:k.schedulerLocalization.agendaAppointmentColumn});break}}if(z.length>0){this.columnGroups=z}var k=this;var r=new a.jqx.dataCollection(this.element);var e=0;this._columns=this.columns;var A="left";var f=new b(k,this);f.visibleindex=e++;f.text="";f.width=k.timeRulerWidth;f.editable=false;f.timeColumn=true;A="left";f.text="";f.hidden=false;f.width=k.timeRulerWidth;var c=false;if(m.timeRuler&&(o==="dayView"||o==="weekView")){f._text=m.timeRuler.text||"";A=m.timeRuler.position||"left";f.hidden=m.timeRuler.hidden||false;f.width=m.timeRuler.width||k.timeRulerWidth;if(m.timeRuler.timeZones){c=true}}else{if(o!=="dayView"&&o!=="weekView"){f.hidden=true}}var n=function(i){var j=new b(k,k);j.visibleindex=e++;j.text="";j.width=k.timeRulerWidth;j.editable=false;j.timeColumn=true;A="left";j.text="";j.hidden=false;j.timeZone=m.timeRuler.timeZones[i].id;j.width=k.timeRulerWidth;if(m.timeRuler&&(o==="dayView"||o==="weekView")){j._text=m.timeRuler.timeZones[x].text||"";j.hidden=m.timeRuler.hidden||false;j.width=m.timeRuler.width||k.timeRulerWidth;r.add(j)}};if(A==="left"&&(o==="dayView"||o==="weekView")){if(m.timeRuler&&m.timeRuler.timeZones){for(var x=0;x<m.timeRuler.timeZones.length;x++){n(x)}}r.add(f)}var s=new Array();a.each(this.columns,function(i){if(k.columns[i]!=undefined){var j=new b(k,this);j.visibleindex=e++;r.add(j)}});if(A==="right"&&(o==="dayView"||o==="weekView")){if(m.timeRuler){for(var x=0;x<m.timeRuler.timeZones.length;x++){n(x)}}r.add(f)}if(this.rtl){r.records.reverse()}this.columns=r},_getColumnsLengthPerView:function(){var c=this._views[this._view].type;var e=this._views[this._view];var d=1;switch(c){case"dayView":d=1;break;case"weekView":if(e.showWeekends!==false){d=7}else{d=5}break;case"monthView":if(e.showWeekends!==false){d=7}else{d=5}break;case"timelineDayView":case"timelineWeekView":case"timelineMonthView":d=this.columns.records.length;break;case"agendaView":d=this.columns.records.length;break}return d},shadeColor:function(c,h){var i=parseInt(c.slice(1),16),d=h<0?0:255,j=h<0?h*-1:h,g=i>>16,e=i>>8&255,k=i&255;return"#"+(16777216+(Math.round((d-g)*j)+g)*65536+(Math.round((d-e)*j)+e)*256+(Math.round((d-k)*j)+k)).toString(16).slice(1)},hexToRgba:function(d,f){var c=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(d);var e=function(){var g=a.jqx.browser.msie&&a.jqx.browser.version<10;if(this.alpha==undefined||g){return"rgb("+this.r+", "+this.g+", "+this.b+")"}if(this.alpha>1){this.alpha=1}else{if(this.alpha<0){this.alpha=0}}return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"};if(f==undefined){return c?{r:parseInt(c[1],16),g:parseInt(c[2],16),b:parseInt(c[3],16),toString:e}:null}if(f>1){f=1}else{if(f<0){f=0}}return c?{r:parseInt(c[1],16),g:parseInt(c[2],16),b:parseInt(c[3],16),alpha:f,toString:e}:null},getAppointmentColors:function(g){var f="";var e="";var d="";f=this.hexToRgba(g,this.appointmentOpacity).toString();e=g;var c=function(i){var h=105;var j=(i.r*0.299)+(i.g*0.587)+(i.b*0.114);var k=(255-j<h)?"Black":"White";return k};d=c(this.hexToRgba(g,0.7));return{background:f,color:d,border:e}},getColors:function(h){if(h==-1){h=0}var d="";var f="";var g="";var j=this.resources?this.resources.colorScheme:null;if(!j){j="scheme01"}var c=new Array();for(var e=0;e<this.colorSchemes.length;e++){if(this.colorSchemes[e].name==j){c=this.colorSchemes[e].colors;break}}while(h>c.length-1){var k=parseInt(j.substring(6));if(k>=27){k=0}c=c.concat(this.colorSchemes[k].colors);k++}d=c[h];d=this.hexToRgba(c[h],0.7).toString();f=c[h];var i=function(m){var l=105;var n=(m.r*0.299)+(m.g*0.587)+(m.b*0.114);var o=(255-n<l)?"Black":"White";return o};g=i(this.hexToRgba(c[h],0.7));return{background:d,color:g,border:f}},_renderrows:function(){var T=this;if(T._loading){return}if(T._updating||T._appupdating){return}if(T.rendering){T.rendering()}var T=this;var aC=T._views[T._view].type;var F=T._views[T._view];var ax=1;var e=T.getViewStart();var aK=a.jqx.scheduler.utilities.getEndOfDay(T.getViewEnd());T._prepareAppointmentsInView(e,aK);if(aC==="weekView"||aC==="dayView"){var ax=T.getMaxAllDayAppointments(T.appointmentsToRender)}var Y=T.tableRows>1?T.tableRows:0;var aI="halfHour";var A=null;var aM;if(F.rowHeight){A=F.rowHeight}if(F&&F.allDayRowHeight){aM=F.allDayRowHeight}if(F.timeRuler&&F.timeRuler.scale){aI=F.timeRuler.scale}var aJ=0;T.table[0].rows=new Array();T.rows=new Array();var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-widget-content");if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}var d=T.columns.records.length;var at=T._getColumnsLengthPerView();var U=a.jqx.browser.msie&&a.jqx.browser.version<8;if(U){T.host.attr("hideFocus","true")}T._lastSelectedCell=null;T.focusedCell=null;var D=new Array();var aA=T.source.records;aA=T.dataview.evaluate(aA);T.dataViewRecords=aA;T.cells=new Array();var D=T.dataViewRecords;T.renderedRecords=T.getRows();var aV=T.tableZIndex;var ag=T.getRows().length;var o=0;var aE=0;if(U){for(var V=0;V<d;V++){var aa=T.columns.records[V];var aH=aa.width;if(aH<aa.minwidth){aH=aa.minwidth}if(aH>aa.maxwidth){aH=aa.maxwidth}var aG=a('<table><tr><td role="gridcell" style="max-width: '+aH+"px; width:"+aH+'px;" class="'+a1+'"></td></tr></table>');a(document.body).append(aG);var aq=aG.find("td");o=1+parseInt(aq.css("padding-left"))+parseInt(aq.css("padding-right"));aG.remove();break}}var J=T.rtl?" "+T.toTP("jqx-grid-table-rtl"):"";var G="<table cellspacing='0' cellpadding='0' class='"+T.toTP("jqx-grid-table")+J+"' id='table"+T.element.id+"'><colgroup>";var aU=0;var a0=d;var aO=2;var al=30;switch(aI){case"sixtyMinutes":case"hour":al=60;aO=1;break;case"thirtyMinutes":case"halfHour":al=30;aO=2;break;case"fifteenMinutes":case"quarterHour":al=15;aO=4;break;case"tenMinutes":al=10;aO=6;break;case"fiveMinutes":al=5;aO=12;break}var aZ=1;if(aC==="timelineDayView"||aC==="timelineWeekView"){d=aO*d;aZ=aO;at=d/T.tableColumns}else{if(aC==="timelineMonthView"){at=d/T.tableColumns}else{if(aC==="monthView"){at=d/T.tableColumns}}}var h=function(i){var c=T.columns.records[i];if(c){return c}while(i>=T.columns.records.length){i-=T.columns.records.length}var c=T.columns.records[i];return c};for(var V=0;V<d;V++){var aa=h(V);if(aa.hidden){aU++;a0--;continue}var aH=aa.width/aZ;if(aH<aa.minwidth){aH=aa.minwidth/aZ}if(aH>aa.maxwidth){aH=aa.maxwidth/aZ}aH-=o;if(aH<0){aH=0}if(U){var N=aH;if(V==aU){N++}G+="<col style='max-width: "+N+"px; width: "+N+"px;'>"}else{G+="<col style='max-width: "+aH+"px; width: "+aH+"px;'>"}aE+=aH}G+="</colgroup>";T._hiddencolumns=false;if(ag===0){var s='<tr role="row">';var y=T.host.height();if(T.pageable){y-=T.pagerHeight;if(T.pagerPosition==="both"){y-=T.pagerHeight}}y-=T.columnsHeight;if(T.showLegend&&T._resources.length>0){y-=T.legendHeight}if(y<25){y=25}if(T.hScrollBar[0].style.visibility!="hidden"){y-=T.hScrollBar.outerHeight()}if(T.height==="auto"||T.height===null||T.autoheight){y=300}var aG='<td colspan="'+T.columns.records.length+'" role="gridcell" style="border: none; min-height: '+y+"px; height: "+y+"px; max-width:"+aE+"px; width:"+aE+"px;";var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}a1+=" "+T.toTP("jqx-center-align");aG+='" class="'+a1+'">';aG+=T.schedulerLocalization.emptyDataString;aG+="</td>";s+=aG;G+=s;T.table[0].style.width=aE+2+"px";aJ=aE}var ar=T.getRows();var e=T.getViewStart();var y=T._hostHeight?T._hostHeight:T.host.height();var aY=0;if(!T.columnGroups){aY+=T.showHeader?T.columnsHeight:0}else{aY+=T.showHeader?T.columnsheader.height():0}if(T.showToolbar){aY+=T.toolbarHeight}if(T.showLegend&&T._resources.length>0){aY+=T.legendHeight}var g=T.showAllDayRow;var n=23;if(F.resourceHeaderRowHeight){n=F.resourcesRowHeight}n+=2;if(F.showAllDayRow!=undefined){g=F.showAllDayRow}var k=T._columnswidth>T._hostWidth;var aj=k?(3+T.scrollBarSize):0;var ae=T.tableRows>1?T.resources.unitsInView:1;if(ae==undefined){ae=T._resources.length}if(T.resources&&T.resources.resourceRowHeight){A=T.resources.resourceRowHeight}if(A==null||A=="auto"){var p=T.rowsHeight;var an=3*p;if(T.isTouchDevice()){p=T.touchRowsHeight;var an=22+p}if(T.tableRows==1){A=y>0?(y-aY):p;if(T.columns.records.length>10){A=y>0?(y-T.scrollBarSize-5-aY):p}}else{A=y>0?(y-aY-n)/(ag):p;if(T.columns.records.length>10){A=y>0?(y-T.scrollBarSize-5-aY-ae*n)/(ae*ag):p}}if(aC==="dayView"||aC==="weekView"){if(g){if(aM==null||aM=="auto"){A=y>0?(y-aY)/(T.tableRows*(ag)):an;aM=A}else{A=y>0?(y-aY-aM-ae*n)/(ae*(ag-1)):p}}}else{if(aC==="monthView"){if(T.hScrollBar[0].style.visibility=="hidden"){aj=0}if(T.tableRows==1){A=y>0?(y-aY-aj)/ag:p}else{A=y>0?(y-aY-n-aj)/(ag):p}}}A=Math.max(p,A);if(!aM){aM=an}aM=Math.max(an,aM);T._allDayRowHeight=aM;T._defaultRowHeight=p;aM=ax*(p-2);aM=Math.max(an,17+aM);T._allDayRowFullHeight=aM;if(F.allDayRowHeight){T._allDayRowHeight=F.allDayRowHeight;aM=ax*(F.allDayRowHeight-2);T._allDayRowFullHeight=aM}}var az=new Array();if(T.resources&&T.resources.colorScheme){for(var am=0;am<T.colorSchemes.length;am++){if(T.colorSchemes[am].name==T.resources.colorScheme){az=T.colorSchemes[am].colors;break}}while(T._resources.length>az.length-1){var aS=parseInt(T.resources.colorScheme.substring(6));if(aS>=27){aS=0}az=az.concat(T.colorSchemes[aS].colors);aS++}}for(var aB=0;aB<T.tableRows;aB++){var ao=0;var Q=0;var f=23;if(F.timeRuler&&F.timeRuler.scaleStartHour!=undefined){var Q=parseInt(F.timeRuler.scaleStartHour)}if(F.timeRuler&&F.timeRuler.scaleEndHour!=undefined){var f=parseInt(F.timeRuler.scaleEndHour)}var z=e;if(false===F.showWeekends){if(z.dayOfWeek()==0||z.dayOfWeek()==6){z=z.addDays(1)}}var ap=new Array();var l=aC!="monthView"&&aC!="timelineDayView"&&aC!="timelineWeekView"&&aC!="timelineMonthView"&&g?1:0;if(T.tableRows>1){var s='<tr data-group-row="true" role="row">';var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}if(!U){a1+=" "+T.toTP("jqx-grid-cell-pinned");X+=' colspan="'+d+'"';var N=0;for(var O=0;O<d;O++){var Z=h(O);var ai=Z.width/aZ;if(ai<Z.minwidth){aH=Z.minwidth/aZ}if(ai>Z.maxwidth){aH=Z.maxwidth/aZ}ai-=o;if(ai<0){ai=0}if(!Z.hidden){N+=ai}}aH=N}else{a1+=" "+T.toTP("jqx-grid-cell-pinned")}var aG='<td style="height:'+n+"px;";if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}if(T._resources.length>0&&T.resources.colorScheme&&T.resources.orientation!="none"){var aL="";var x="";var C="";var K=function(i){var c=105;var j=(i.r*0.299)+(i.g*0.587)+(i.b*0.114);var q=(255-j<c)?"Black":"White";return q};aL=az[aB];aL=T.hexToRgba(az[aB],0.7).toString();C=K(T.hexToRgba(az[aB],0.7));x=az[aB];aG+="background: "+aL+";";aG+="border-color: "+x+";";aG+="color: "+C+";"}aG+='" class="'+a1+'" role="gridcell" '+X+"";var aT=T._resources[aB];aG+=">"+aT;aG+="</td>";s+=aG;G+=s}for(var W=0;W<ag;W++){var aF={};var ak=W;aF.uid=ak;var s='<tr data-key="'+ak+'" role="row">';var ab=0;var v=0;if(ap[0]&&W>l){var al=30;if(aC!="monthView"){switch(aI){case"sixtyMinutes":case"hour":al=60;break;case"thirdyMinutes":case"halfHour":al=30;break;case"fifteenMinutes":case"quarterHour":al=15;break;case"tenMinutes":al=10;break;case"fiveMinutes":al=5;break}for(var R=0;R<d;R++){ap[R]=ap[R].addMinutes(al,false)}}else{for(var R=0;R<d;R++){ap[R]=ap[R].addDays(7,false)}}}var av=0;var ac=1;var ah=0;if(F.showWeekends||F.showWeekends==undefined){ah=(T.columns.records.length)/(7*T.tableColumns);ah*=aO}else{ah=(T.columns.records.length)/(5*T.tableColumns);ah*=aO}var au=0;if(T.rtl){au=1}var aQ=0;for(var V=0;V<d;V++){var P=h(V);if(av>=at){av=0;aQ=0;au=0;if(T.rtl){au=1}ac++}if(!ap[V]){if(!T.rtl){if(aC.toString().indexOf("timelineDayView")>=0){var H=V;ap[V]=z.addHours(Q).addMinutes(H*al,false)}else{if(aC.toString().indexOf("timelineWeekView")>=0){ap[V]=z.addDays(aQ).addHours(Q,false).addMinutes(au*al,false)}else{ap[V]=z.addDays(av).addHours(Q,false)}}if(T.timeZone){ap[V].timeZone=T.timeZone}}else{if(aC.toString().indexOf("timelineDayView")>=0){var H=1+V;ap[V]=z.addHours(1+f).addMinutes(-H*al,false)}else{if(aC.toString().indexOf("timelineWeekView")>=0){if(F.showWeekends||F.showWeekends==undefined){ap[V]=z.addDays(6-aQ).addHours(1+f,false).addMinutes(-au*al,false)}else{ap[V]=z.addDays(4-aQ).addHours(1+f,false).addMinutes(-au*al,false)}}else{if(aC=="dayView"||aC=="monthView"||aC=="weekView"){if(F.showWeekends||F.showWeekends==undefined){ap[V]=z.addDays(6-av).addHours(Q,false)}else{ap[V]=z.addDays(4-av).addHours(Q,false)}}else{ap[V]=z.addDays(at-av-1).addHours(Q,false)}}}if(T.timeZone){ap[V].timeZone=T.timeZone}}}au++;if(au>=ah){au=0;aQ++}if(!P.timeColumn&&(aC==="dayView"||aC==="weekView")){av++}else{if(aC==="monthView"||aC==="timelineMonthView"){av++}else{if(aC=="timelineDayView"||aC=="timelineWeekView"){av++}}}var B=ap[V];var aH=P.width/aZ;if(aH<P.minwidth){aH=P.minwidth/aZ}if(aH>P.maxwidth){aH=P.maxwidth/aZ}aH-=o;if(aH<0){aH=0}var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(P.pinned){a1+=" "+T.toTP("jqx-grid-cell-pinned")}if(T.sortcolumn===P.displayfield){a1+=" "+T.toTP("jqx-grid-cell-sort")}if(T.altRows&&W%2!=0){a1+=" "+T.toTP("jqx-grid-cell-alt")}if(W==0&&g&&(aC==="dayView"||aC==="weekView")){a1+=" "+T.toTP("jqx-grid-cell-alt")}if(B>T.max||B<T.min){a1+=" "+T.toTP("jqx-scheduler-disabled-cell")}if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}var X="";var ak=T.dataview.generatekey();var aD=aB+ac;if(T.resources&&T.resources.orientation=="none"){aD=-1}var aG='<td data-key="'+ak+'" data-view="'+(aD)+'" data-date="'+B.toString()+'" role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px;  height:"+A+"px;";if(W==0&&g&&(aC==="dayView"||aC==="weekView")){var aG='<td  data-key="'+ak+'" data-view="'+(aD)+'" data-end-date="'+a.jqx.scheduler.utilities.getEndOfDay(B).toString()+'" data-date="'+B.clearTime().toString()+'" role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px; height:"+aM+"px;"}if(T.resources&&T._resources.length>0&&T.resources.colorScheme&&T.resources.orientation!=="none"){var aL="";var x="";aL=az[aB+ac-1];if(!(W==0&&g&&(aC==="dayView"||aC==="weekView"))){aL=T.hexToRgba(az[aB+ac-1],0.3).toString()}else{aL=T.shadeColor(az[aB+ac-1],0.3).toString()}if(!(W==0&&g&&(aC==="dayView"||aC==="weekView"))){if(aC.indexOf("month")==-1){if(!P.timeColumn){if(F.showWorkTime!==false){var M=1;var I=5;var aw=8;var m=18;if(F.workTime){var M=F.workTime.fromDayOfWeek?F.workTime.fromDayOfWeek:0;var I=F.workTime.toDayOfWeek?F.workTime.toDayOfWeek:0;var aw=F.workTime.fromHour?F.workTime.fromHour:8;var m=F.workTime.toHour?F.workTime.toHour:8}if(B.dayOfWeek()>=M&&B.dayOfWeek()<=I){if(B.hour()>=aw&&B.hour()<m){aL=T.hexToRgba(az[aB+ac-1],0.1).toString()}}}}}}x=az[ac+aB-1];aG+="background: "+aL+";";aG+="border-color: "+x+";"}if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}if(P.timeColumn&&!P.hidden&&(aC==="dayView"||aC==="weekView")){var a1=T.toTP("jqx-scheduler-time-column")+" "+T.toTP("jqx-widget-header")+" "+T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(T.tableRows>1){var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item")}if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}if(W>0){if(B.minute()===0){var aG='<td classname="jqx-disableselect" data-time-slot="true" data-date="'+B.toString()+'" rowspan='+aO+' role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px;";if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}else{if(T.rtl&&V==0){aG+="border-left-color: transparent;"}}}else{v++;continue}}else{if(T.resources&&T.resources.orientation=="none"){aD=-1}if(W==0&&g&&(aC==="dayView"||aC==="weekView")){var aG='<td data-view="'+(aD)+'" data-time-slot="true" data-end-date="'+a.jqx.scheduler.utilities.getEndOfDay(B).toString()+'" data-date="'+B.toString()+'" role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px;"}if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}else{if(V==0&&d==1&&T.rtl){aG+="border-right-color: transparent;"}}if(T.rtl){aG+="border-left-width: 1px;"}if(T.tableRows>1){aG+="background: "+aL+";";aG+="border-color: "+x+";"}}}else{if(W>0){aG+="border-left-width: 1px;"}}if(P.cellsalign!="left"){if(P.cellsalign==="right"){a1+=" "+T.toTP("jqx-right-align")}else{a1+=" "+T.toTP("jqx-center-align")}}if(!P.timeColumn){if(T.rowinfo[aF.uid]){if(T.rowinfo[aF.uid].selected){if(T.editKey!==aF.uid){if(T.selectionMode!=="none"){a1+=" "+T.toTP("jqx-grid-cell-selected");a1+=" "+T.toTP("jqx-fill-state-pressed");a1+=" "+T.toTP("jqx-scheduler-cell-selected")}}}}}if(!(P.hidden)){ab+=o+aH;if(v==0&&!T.rtl){aG+="border-left-width: 0px;"}v++}else{aG+="display: none;";T._hiddencolumns=true}if(!(W==0&&g&&(aC==="dayView"||aC==="weekView"))){if(aC.indexOf("month")==-1){a1+=" "+T.toTP("jqx-grid-cell-nowrap");if(W%2==1&&!P.timeColumn){a1+=" "+T.toTP("jqx-scheduler-middle-cell")}if(!P.timeColumn){if(F.showWorkTime!==false){var M=1;var I=5;var aw=8;var m=18;if(F.workTime){var M=F.workTime.fromDayOfWeek?F.workTime.fromDayOfWeek:0;var I=F.workTime.toDayOfWeek?F.workTime.toDayOfWeek:0;var aw=F.workTime.fromHour?F.workTime.fromHour:8;var m=F.workTime.toHour?F.workTime.toHour:8}if(B.dayOfWeek()>=M&&B.dayOfWeek()<=I){if(B.hour()>=aw&&B.hour()<m){a1+=" "+T.toTP("jqx-scheduler-work-time-cell")}else{a1+=" "+T.toTP("jqx-scheduler-not-work-time-cell")}}else{a1+=" "+T.toTP("jqx-scheduler-not-work-time-cell")}}}}}var af="";if(aC==="monthView"){if(!T.touchDevice){a1+=" "+T.toTP("jqx-top-align")}var ad="dd";af=B.toDate();var aX=T.toTP("jqx-scheduler-month-outer-cell")+" ";var ay=T.toTP("jqx-scheduler-month-weekend-cell");if(T.date.month()==B.month()){aX=""}if(!B.isWeekend()){ay=""}else{a1+=" "+ay}if(af.getDate()===1){ad="MMM dd"}if(T.touchDevice){if(A>16){af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell-touch")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer; width:16px; height: 16px;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}else{af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell-touch")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}}else{if(A>16){af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer; width:16px; height: 16px;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}else{af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}}}else{if(aC==="timelineWeekView"||aC==="timelineDayView"||aC==="timelineMonthView"){a1+=" "+T.toTP("jqx-right-align jqx-bottom-align");af="<span style='display: none; float: right; cursor: pointer; width:16px; height: 16px;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span>"}}if(W==0&&g&&(aC==="dayView"||aC==="weekView")&&!P.timeColumn){a1+=" "+T.toTP("jqx-top-align");a1+=" "+T.toTP("jqx-scheduler-all-day-cell");if(T.rtl){a1+=" "+T.toTP("jqx-rtl")}af=B.toDate();af="<span>"+a.jqx.dataFormat.formatdate(af,"dd",T.schedulerLocalization)+"</span>"}var r=P.cellsFormat;if(P.timeColumn&&!P.hidden){af=B.toDate();if(P.timeZone){af=B.clone().toTimeZone(P.timeZone);af=af.toDate()}if(!P.timeColumn.format){if(af.getHours()==0||af.getHours()==12){r="hh tt"}else{r="hh:mm"}}if(a.jqx.dataFormat.isDate(af)){af=a.jqx.dataFormat.formatdate(af,r,T.schedulerLocalization)}if(W<l){if(!T.rtl){a1+=" "+T.toTP("jqx-scheduler-time-column-header-cell")}else{a1+=" "+T.toTP("jqx-scheduler-time-column-header-cell-rtl")}af=""}if(W<l){if(P._text){a1+=" "+T.toTP("jqx-bottom-align")}if(F.timeRuler&&F.timeRuler.timeZones&&F.timeRuler.timeZones.length>0){if(V<F.timeRuler.timeZones.length){af=P._text}}}}else{if(r!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(af)){af=a.jqx.dataFormat.formatdate(af,r,T.schedulerLocalization)}else{if(a.jqx.dataFormat.isNumber(af)||(!isNaN(parseFloat(af))&&isFinite(af))){af=a.jqx.dataFormat.formatnumber(af,r,T.schedulerLocalization)}}}}}if(P.cellclassname!=""&&P.cellclassname){if(typeof P.cellclassname=="string"){a1+=" "+P.cellclassname}else{var aW=P.cellclassname(W,P.datafield,af,aF);if(aW){a1+=" "+aW}}}if(P.cellsRenderer!=""&&P.cellsRenderer){var aP=ar.indexOf(aF);af=P.cellsRenderer(aP,P.datafield,af,aF)}aG+='" class="'+a1+'">';aG+=af;aG+="</td>";s+=aG}if(aJ==0){T.table[0].style.width=ab+2+"px";T.pinnedtable[0].style.width=ab+2+"px";aJ=ab}s+="</tr>";G+=s;if(!T.rowinfo[aF.uid]){T.rowinfo[aF.uid]={row:aF}}else{if(!("row" in T.rowinfo[aF.uid])){T.rowinfo[aF.uid].row=aF}}}}G+="</table>";T.table[0].innerHTML=G;T.pinnedtable[0].innerHTML=G;T.table[0].rows=T.table[0].firstChild.rows;var aN=a.jqx.browser.msie&&a.jqx.browser.version<9;if(g&&(aC==="dayView"||aC==="weekView")&&T.tableRows==1){T.pinnedtable[0].style.display="block";T.pinnedtable[0].style.zIndex="400";T.pinnedtable[0].style.position="absolute";T.pinnedtable[0].style.top="0px";T.pinnedtable[0].style.height=aM+"px";if(!aN){if(T.tableRows==1){T.oldRow=T.table[0].rows[0];T.table[0].rows[0]=T.pinnedtable.find("tr")[0]}else{T.oldRow=T.table[0].rows[1];T.table[0].rows[1]=T.pinnedtable.find("tr")[1]}}}else{T.pinnedtable[0].style.display="none"}var O=a(T.table[0].firstChild);var aR=a(T.pinnedtable[0].firstChild);T._table=O;T._pinnedtable=aR;if(a.jqx.browser.msie&&a.jqx.browser.version<10){T._table[0].style.width=aJ+"px";T._pinnedtable[0].style.width=aJ+"px"}if(ag===0){T._table[0].style.width=(2+aJ)+"px";T._pinnedtable[0].style.width=(2+aJ)+"px"}T._table.addClass("jqx-grid-table-one-cell jqx-disableselect");T._pinnedtable.addClass("jqx-grid-table-one-cell jqx-disableselect");T.rowByCell=new Array();T.columnCells=new Array();function E(){var c={};c.cells=new Array();c.indexOf=function(j){for(var q=0;q<c.cells.length;q++){if(c.cells[q].getAttribute("data-key")==j.getAttribute("data-key")){return q}}return -1};return c}T.cellWidth=0;T.cellHeight=0;var S=T.table[0].rows.length;for(var W=0;W<S;W++){var u=T.table[0].rows[W];if(u.getAttribute("data-group-row")){continue}var aF=new E();aF.aboveRow=null;aF.belowRow=null;if(T.rows.length>0){aF.aboveRow=T.rows[T.rows.length-1];T.rows[T.rows.length-1].belowRow=aF}if(T._views[T._view].type=="monthView"){aF.top=a(u).position().top}T.rows.push(aF);for(var V=0;V<u.cells.length;V++){var L=u.cells[V];if(L.getAttribute("data-time-slot")){continue}if(L.style.display==="none"){continue}if(L.className.indexOf("jqx-grid-cell-pinned")>=0){continue}if(!T.columnCells[aF.cells.length]){T.columnCells[aF.cells.length]=new Array()}T.columnCells[aF.cells.length].push(L);if(T.cellWidth==0){T.cellWidth=L.clientWidth}if(T.cellHeight==0&&(S==1||W>1)){T.cellHeight=L.clientHeight}aF.cells.push(L);T.rowByCell[L.getAttribute("data-key")]=aF}}if(ag===0){T._table[0].style.tableLayout="auto"}T._renderAppointments(e,aK);if(T.pinnedtable[0].style.display!="none"||((aC=="dayView"||aC=="weekView")&&T.tableRows>1)){T._updateScrollbars(T.host.height())}if(T.rendered){T.rendered()}T.renderedTime=new Date()},showAppointmentsByResource:function(g){var f=this;for(var e=0;e<f.uiappointments.length;e++){var h=f.uiappointments[e];if(h.resourceId==g){h.hidden=false;h.hiddenByResourceId=false;if(h.exceptions){for(var d=0;d<h.exceptions.length;d++){h.exceptions[d].hiddenByResourceId=false;h.exceptions[d].hidden=false}}}}if(f._resourcesElements){var c=f.getColors(f._resources.indexOf(g));f._resourcesElements.top[g].attr("data-toggle","on");f._resourcesElements.top[g].css("background",c.background);f._resourcesElements.bottom[g].attr("data-toggle","on");f._resourcesElements.bottom[g].css("background",c.background)}if(f.hiddenResources){delete f.hiddenResources[g]}f._renderrows()},hideAppointmentsByResource:function(f){var e=this;for(var d=0;d<e.uiappointments.length;d++){var g=e.uiappointments[d];if(g.resourceId==f){g.hidden=true;g.hiddenByResourceId=true;if(g.exceptions){for(var c=0;c<g.exceptions.length;c++){g.exceptions[c].hiddenByResourceId=true;g.exceptions[c].hidden=true}}}}if(e._resourcesElements){e._resourcesElements.top[f].attr("data-toggle","off");e._resourcesElements.top[f].css("background","transparent");e._resourcesElements.bottom[f].attr("data-toggle","off");e._resourcesElements.bottom[f].css("background","transparent")}if(!e.hiddenResources){e.hiddenResources=new Array()}e.hiddenResources[f]=true;e._renderrows()},_prepareAppointmentsInView:function(h,g){var k=this;if(k._appupdating){return}var n=new Array();for(var t=0;t<this.uiappointments.length;t++){var o=this.uiappointments[t];if(o.hidden&&o.recurrencePattern==null){continue}var p=a.jqx.scheduler.utilities.rangeIntersection(o.from,o.to,h,g);if(p&&!o.recurrencePattern){n.push(o)}o.renderedAppointments=new Array();var w=false;if(o.recurrencePattern){var v=o.getOccurrences(h,g);var u=o.exceptions;for(var s=0;s<v.length;s++){var f=v[s];if(f.hidden){continue}var d=true;for(var q=0;q<u.length;q++){var l=u[q];var x=l.occurrenceFrom?l.occurrenceFrom:l;if(k.selectedJQXAppointment&&k.selectedJQXAppointment.rootAppointment){if(!w&&k.selectedJQXAppointment.occurrenceFrom.clearTime().equals(x.clearTime())){k.selectedJQXAppointment=l;w=true}}if(x.clearTime().equals(f.from.clearTime())){d=false;break}}if(!d){continue}if(k.selectedJQXAppointment&&k.selectedJQXAppointment.rootAppointment){if(!w&&k.selectedJQXAppointment.occurrenceFrom.clearTime().equals(f.occurrenceFrom.clearTime())){k.selectedJQXAppointment=f;w=true}}o.renderedAppointments[f.id]=f;n.push(f)}for(var q=0;q<u.length;q++){var l=u[q];var x=l.occurrenceFrom?l.from:l;var r=o.createOccurrence(x);if(l.occurrenceFrom){l.cloneAppointmentAttributes(r);if(l.hidden){continue}}if(r!=o){n.push(l);o.renderedAppointments[l.id]=l}}}}var c=new Array();this.tabKeyAppointments=new Array();for(var t=0;t<n.length;t++){var e=n[t];c.push(e);this.tabKeyAppointments.push(e)}c.sort(this._sortAppointmentsByFrom);if(this._resources.length>0){this.tabKeyAppointments.sort(function(j,i){return k._sortAppointmentsByResourceId(j,i,k)})}else{this.tabKeyAppointments.sort(this._sortAppointmentsByFrom)}this.appointmentsToRender=c},_renderDayWeekAppointments:function(){var M=this;var aa=M._views[M._view].type;var L=M._views[M._view];var B=new Array();var J=new Array();var Y=this.rows;var F=M.showAllDayRow;if(L.timeRuler&&L.timeRuler.showAllDayRow!=undefined){F=L.timeRuler.showAllDayRow}for(var g=0;g<this.appointmentsToRender.length;g++){var t=this.appointmentsToRender[g];var v=t.from;var ac=t.to;var U=a.jqx.scheduler.utilities.getEndOfDay(ac);var E=v.day();var f=t.allDay;var w=M._getDateByString;var G=new Array();var s=new Array();var q=t.resourceId;var k=M._resources.indexOf(q);if(M.resources&&M.resources.orientation=="none"){k=-1}var C=v.toDate().valueOf();var l=ac.toDate().valueOf();var P=U.toDate().valueOf();var ad=function(j,i){if(j.date<i.date){return -1}if(j.date==i.date){return 0}if(j.date>i.date){return 1}};if(!t.allDay&&t.duration().days()<1||!F){var r=ac.toDate();var H=false;if(r.getHours()==0&&r.getMinutes()==0){H=true}for(var W=0;W<M.columnCells.length;W++){if(!M.columnCells[W]){continue}var z=M.columnCells[W];if(M.rtl){z=M.columnCells[M.columnCells.length-1-W]}for(var V=0;V<z.length;V++){if(z[V].getAttribute("data-end-date")){continue}var o=z[V].getAttribute("data-date");var X=w(o);var n=X.valueOf();if(n>ac){continue}if(C<=n&&n<l){if(k!=-1){if((1+k)!=z[V].getAttribute("data-view")){continue}}if(E!=X.getDate()){G.sort(ad);s.push(G);G=new Array();E=v.addDays(1).day()}G.push({cell:z[V],date:X})}}}G.sort(ad);s.push(G);var D=new Array();for(var W=0;W<s.length;W++){var z=s[W];if(z.length==0){continue}var d=M.cellWidth;var e=z[z.length-1].cell.offsetTop+M.cellHeight;var O=z[0].cell.offsetLeft;var N=z[0].cell.offsetTop;var R=M.getMinutesPerScale();var r=new a.jqx.date(z[z.length-1].date,M.timeZone).addMinutes(R);var ab={cells:z,x:O,y:N,height:e-N,width:d,appointment:t,from:new a.jqx.date(z[0].date,M.timeZone),to:r};D.push(ab);B.push(ab)}t.elements=D;if(t.rootAppointment){t.rootAppointment.elements=t.rootAppointment.elements.concat(t.elements)}}else{var z=Y[0].cells;if(this.tableRows>1){var T=Y.length/M.tableRows;var c=k*T;z=Y[c].cells}for(var V=0;V<z.length;V++){var o=z[V].getAttribute("data-date");var ae=w(o);var X=new a.jqx.date(ae,M.timeZone);X=a.jqx.scheduler.utilities.getEndOfDay(X);var n=X.toDate().valueOf();if(n>U){continue}if(v<=X&&X<=U){if(k!=-1){if((1+k)!=z[V].getAttribute("data-view")){continue}}if(G.length==0){X=a.jqx.scheduler.utilities.getStartOfDay(X)}G.push({cell:z[V],date:X})}}G.sort(ad);s.push(G);var D=new Array();for(var W=0;W<s.length;W++){var z=s[W];if(z.length==0){break}var m=a(z[0].cell).position();var d=a(z[z.length-1].cell).position().left+this.cellWidth-m.left;var e=a(z[z.length-1].cell).position().top;var O=m.left;var N=m.top;if(this.rtl){var m=a(z[z.length-1].cell).position();var O=m.left;var d=a(z[0].cell).position().left+this.cellWidth-m.left}var S=z[z.length-1].date;S=new a.jqx.date(a.jqx.scheduler.utilities.getEndOfDay(S),M.timeZone);var ab={cells:z,x:O,y:N,height:e-N+this.cellHeight,width:d,appointment:t,from:a.jqx.scheduler.utilities.getStartOfDay(new a.jqx.date(z[0].date,M.timeZone)),to:S};D.push(ab);J.push(ab)}t.elements=D;if(t.rootAppointment){t.rootAppointment.elements=t.rootAppointment.elements.concat(t.elements)}}}var A=this.getViewStart();var Q=this.getViewEnd();if(this._resources.length<2||this.resources.orientation=="none"){var Z=new Array();var h=A;var I=0;while(h<Q){Z[I]=new Array();for(var W=0;W<B.length;W++){var u=B[W];if(u.from.day()==h.day()){u.column=-1;u.columnSpan=1;Z[I].push(u)}}I++;h=h.addDays(1)}for(var W=0;W<Z.length;W++){this._renderAppointmentsInDay(Z[W])}this._renderAllDayAppointments(J)}else{for(var V=0;V<this._resources.length;V++){var K=this._resources[V];var Z=new Array();var h=A;var I=0;while(h<Q){Z[I]=new Array();for(var W=0;W<B.length;W++){var u=B[W];if(u.from.day()==h.day()){u.column=-1;u.columnSpan=1;if(u.appointment.resourceId==K){Z[I].push(u)}}}I++;h=h.addDays(1)}for(var W=0;W<Z.length;W++){this._renderAppointmentsInDay(Z[W])}var p=new Array();for(var W=0;W<J.length;W++){if(J[W].appointment.resourceId==K){p.push(J[W])}}this._renderAllDayAppointments(p)}}},_renderAllDayAppointments:function(am){var Z=this;var H=this.showAllDayRow;var Y=this._views[this._view];if(Y.timeRuler&&Y.timeRuler.showAllDayRow!=undefined){H=Y.timeRuler.showAllDayRow}if(!H){return}if(am.length==0){return}var C=am;var G=1;G=this.getMaxAllDayAppointments(am);if(this.tableRows==1){var B=this.table[0].rows[0].clientHeight/G}else{var B=this.table[0].rows[1].clientHeight/G}for(var ak=0;ak<am.length;ak++){var z=am[ak];z.row=-1;var e=this.getCollisionAppointments(z,am);e.sort(this._sortAppointmentsByFrom);var t=e.indexOf(z);if(t>=0){for(var af=t;af<e.length;af++){e[af].row=-1}}for(var ah=0;ah<G;ah++){var o=ah;for(var R in e){if(R=="indexOf"){break}var V=e[R];if(V.row==-1&&!this.isBusyRow(o,e)){V.row=o;var ai=G;var d=this.getMaxAllDayAppointments(e);if(ai>d){ai=d}V.rowsCount=ai}}}}for(var ah=0;ah<C.length;ah++){var z=C[ah];var e=this.getCollisionAppointments(z,C);e.sort(this._sortAppointmentsByFrom);var n=1;for(var R in e){if(R=="indexOf"){break}var L=e[R];n=Math.max(n,L.rowsCount)}for(var R in e){if(R=="indexOf"){break}var L=e[R];L.rowsCount=n}if(e.length==1){z.rowSpan=n}else{var E=0;var g=true;for(var af=z.row;af<n;af++){for(var R in e){if(R=="indexOf"){break}var V=e[R];if(V==z){continue}if(V.row==af){g=false}}if(!g){break}E++}z.rowSpan=E}}var al=Z.appointmentsMinHeight+2;if(Z.isTouchDevice()){var al=Z.touchAppointmentsMinHeight+2}for(var ab=0;ab<C.length;ab++){var aa=al;var z=C[ab];z.height=al;var D=aa*z.row;z.y=18+z.y+D+(4*z.row);z.x+=3;z.width-=8}for(var ab=0;ab<C.length;ab++){var ag=C[ab];var K="";var M="auto";var Y=this._views[this._view];var q=ag.appointment.from;var ap=ag.appointment.to;if(Y.timeRuler&&Y.timeRuler.formatString){M=Y.timeRuler.formatString}var ac=M;if(M==="auto"){if((q.hour()==0&&q.minute()==0)||(q.hour()==12&&q.minute()==0)){var ac="hh tt"}else{var ac="hh:mm"}if((ap.hour()==0&&ap.minute()==0)||(ap.hour()==12&&ap.minute()==0)){var A="hh tt"}else{var A="hh:mm"}}var v=q.toString(ac);var w=ap.toString(A);var I=ag.appointment.duration();var f=ag.appointment.allDay||(I.hours===23&&I.minutes===59&&I.seconds===59);var X=ag.appointment.background;var Q=ag.appointment.subject?ag.appointment.subject:"(No Title)";var J=ag.appointment.color;var k=ag.appointment.resourceId;var ad=Z.getColors(Z._resources.indexOf(k));var ae=" data-resourceId='"+k+"' ";var U=ag.appointment.borderColor;var u=ag.appointment.location;if(u.length>0){u=", "+u}if(!X){X=ad.background}if(!U){U=ad.border}if(!J){J=ad.color}var c=ag.appointment.isRecurrentAppointment();var s=ag.appointment.isException();var h=v+"-"+w;if(f){h=""}var aj="";var y=Z.toTP("jqx-scheduler-appointment-status");var P="";var O=Z.statuses[ag.appointment.status];var l=false;if(O){if(O=="transparent"){l=false}else{P="<div style='background: "+O+"; border-right-color: "+U+"' class='"+y+"'></div>";if(O=="tentative"){y=Z.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");P="<div style='background-color: "+U+"; border-right-color: "+U+"' class='"+y+"'></div>"}l=true}}var F="";if(Z.rtl){var y=Z.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");P="<div style='background: "+O+"; border-left-color: "+U+"' class='"+y+"'></div>";if(O=="tentative"){y=Z.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");P="<div style='background-color: "+U+"; border-left-color: "+U+"' class='"+y+"'></div>"}F=P;P=""}var T="";var N=Q+u;if(Z.renderAppointment){var ao=Z.renderAppointment({appointment:ag.appointment.boundAppointment,textColor:J,background:X,borderColor:U,html:N,cssClass:"",style:"",width:ag.width,height:ag.height,view:Z._views[Z._view].type});if(ao){var K=ao.html;if(K!=N){N=K}J=ao.textColor;X=ao.background;U=ao.borderColor;if(ao.cssClass){T=ao.cssClass+" "}if(ao.style!=""){var ad=Z.getAppointmentColors(ao.style);X=ad.background;U=ad.border;J=ad.color}}}if(aj===""){if(l){var aj="<div style='white-space:nowrap;' class='"+Z.toTP("jqx-scheduler-appointment-content")+"'>"+P+"<div class='"+Z.toTP("jqx-scheduler-appointment-inner-content")+"'>"+N+"</div>"+F+"</div>"}else{var aj="<div style='white-space:nowrap;' class='"+Z.toTP("jqx-scheduler-appointment-content")+"'><div class='"+Z.toTP("jqx-scheduler-appointment-inner-content")+"'>"+N+"</div></div>"}}var an="";if(Z.rtl){an=Z.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(s){var i=J.toLowerCase()=="white"?Z.toTP("jqx-icon-recurrence-exception-white"):Z.toTP("jqx-icon-recurrence-exception");K="<div data-key='"+ag.appointment.id+"'"+ae+"class='"+an+T+Z.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ag.x+"px; top: "+ag.y+"px; width: "+ag.width+"px; line-height: "+ag.height+"px; height: "+ag.height+"px; border-color:"+U+"; color:"+J+"; background:"+X+";'><div class='"+i+"'></div>"+aj+"<div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{if(c){var r=J.toLowerCase()=="white"?Z.toTP("jqx-icon-recurrence-white"):Z.toTP("jqx-icon-recurrence");K="<div data-key='"+ag.appointment.id+"'"+ae+"class='"+an+T+Z.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ag.x+"px; top: "+ag.y+"px; width: "+ag.width+"px; line-height: "+ag.height+"px; height: "+ag.height+"px; border-color:"+U+"; color:"+J+"; background:"+X+";'><div class='"+r+"'></div>"+aj+"<div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{K="<div data-key='"+ag.appointment.id+"'"+ae+"class='"+an+T+Z.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ag.x+"px; top: "+ag.y+"px; width: "+ag.width+"px; line-height: "+ag.height+"px; height: "+ag.height+"px; border-color:"+U+"; color:"+J+"; background:"+X+";'>"+aj+"<div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}}var S=a(K);if(this.tableRows==1){S.appendTo(this.pinnedtable)}else{S.appendTo(this.table)}ag.element=S;if(this.appointmentTooltips){if(!ag.appointment.tooltip){var W=ag.appointment.subject;if(W){var u=ag.appointment.location;if(u){W+="\n"+u}S[0].setAttribute("title",W)}}else{S[0].setAttribute("title",ag.appointment.tooltip)}}}},_renderAppointmentsInDay:function(al,ak){if(al.length==0){return}var Y=this;var X=this._views[this._view];var C=al;var D=this.getViewStart();var ab=this.getViewEnd();var ag=1;var q=0;if(X.timeRuler){q=this.columns.records[1].width;if(X.timeRuler.timeZones){q=this.columns.records[1+X.timeRuler.timeZones.length].width}}else{q=this.columns.records[1].width}ag=this.getMaxColumnsInADay(al);var o=q/ag;if(o<0){return}for(var aj=0;aj<al.length;aj++){var A=al[aj];A.column=-1;var e=this.getCollisionAppointments(A,al);e.sort(this._sortAppointmentsByFrom);var u=e.indexOf(A);if(u>=0){for(var ae=u;ae<e.length;ae++){e[ae].column=-1}}for(var ah=0;ah<ag;ah++){var f=ah;for(var Q in e){if(Q=="indexOf"){break}var U=e[Q];if(U.column==-1&&!this.isBusyColumn(f,e)){U.column=f;var h=ag;var d=this.getMaxColumnsInADay(e);if(h>d){h=d}U.columnsCount=h}}}}for(var ah=0;ah<C.length;ah++){var A=C[ah];var e=this.getCollisionAppointments(A,C);e.sort(this._sortAppointmentsByFrom);var H=1;for(var Q in e){if(Q=="indexOf"){break}var K=e[Q];if(K.columnsCount==undefined){continue}H=Math.max(H,K.columnsCount)}for(var Q in e){if(Q=="indexOf"){break}var K=e[Q];K.columnsCount=H}if(e.length==1){A.columnSpan=H}else{var E=0;var g=true;for(var ae=A.column;ae<H;ae++){for(var Q in e){if(Q=="indexOf"){break}var U=e[Q];if(U.column==undefined){continue}if(U==A){continue}if(U.column==ae){g=false}}if(!g){break}E++}A.columnSpan=E}}for(var Z=0;Z<C.length;Z++){var F=q/C[Z].columnsCount;var A=C[Z];A.width=-5+(F*A.columnSpan);var an=F*A.column;A.x=2+A.x+an;A.height-=5;A.y+=1}for(var Z=0;Z<C.length;Z++){var af=C[Z];var J="";var L="auto";var X=this._views[this._view];var r=af.appointment.from;var ap=af.appointment.to;if(X.timeRuler&&X.timeRuler.formatString){L=X.timeRuler.formatString}var aa=L;if(L==="auto"){if((r.hour()==0&&r.minute()==0)||(r.hour()==12&&r.minute()==0)){var aa="hh tt"}else{var aa="hh:mm"}if((ap.hour()==0&&ap.minute()==0)||(ap.hour()==12&&ap.minute()==0)){var B="hh tt"}else{var B="hh:mm"}}var w=r.toString(aa);var y=ap.toString(B);var W=af.appointment.background;var P=af.appointment.subject?af.appointment.subject:"(No Title)";var v=af.appointment.location?af.appointment.location:"";var I=af.appointment.color;var l=af.appointment.resourceId;var ac=Y.getColors(Y._resources.indexOf(l));var ad=" data-resourceId='"+l+"' ";var T=af.appointment.borderColor;if(!W){W=ac.background}if(!T){T=ac.border}if(!I){I=ac.color}var c=af.appointment.isRecurrentAppointment();var t=af.appointment.isException();var ai="";var z=Y.toTP("jqx-scheduler-appointment-status");var O="";var N=Y.statuses[af.appointment.status];var n=false;if(N){if(N=="transparent"){n=false}else{O="<div style='background: "+N+"; border-right-color: "+T+"' class='"+z+"'></div>";if(N=="tentative"){z=Y.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");O="<div style='background-color: "+T+"; border-right-color: "+T+"' class='"+z+"'></div>"}n=true}}var G="";if(Y.rtl){var z=Y.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");O="<div style='background: "+N+"; border-left-color: "+T+"' class='"+z+"'></div>";if(N=="tentative"){z=Y.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");O="<div style='background-color: "+T+"; border-left-color: "+T+"' class='"+z+"'></div>"}G=O;O=""}var S="";var M=P+"<br/>"+v;if(!v){var M=P}if(Y.renderAppointment){var ao=Y.renderAppointment({appointment:af.appointment.boundAppointment,textColor:I,background:W,borderColor:T,html:M,cssClass:"",style:"",width:af.width,height:af.height,view:Y._views[Y._view].type});if(ao){var J=ao.html;if(J!=M){M=J}I=ao.textColor;W=ao.background;T=ao.borderColor;if(ao.cssClass){S=ao.cssClass+" "}if(ao.style!=""){var ac=Y.getAppointmentColors(ao.style);W=ac.background;T=ac.border;I=ac.color}}}if(ai===""){if(n){var ai="<div class='"+Y.toTP("jqx-scheduler-appointment-content")+"'>"+O+"<div class='"+Y.toTP("jqx-scheduler-appointment-inner-content")+"'>"+M+"</div>"+G+"</div>"}else{var ai="<div class='"+Y.toTP("jqx-scheduler-appointment-content")+"'><div class='"+Y.toTP("jqx-scheduler-appointment-inner-content")+"'>"+M+"</div></div>"}}var am="";if(Y.rtl){am=Y.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(t){var k=I.toLowerCase()=="white"?Y.toTP("jqx-icon-recurrence-exception-white"):Y.toTP("jqx-icon-recurrence-exception");J="<div data-key='"+af.appointment.id+"'"+ad+"class='"+am+S+Y.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; border-color:"+T+"; color:"+I+"; background:"+W+";'><div class='"+k+"'></div>"+ai+"<div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-top-resize-indicator")+"'></div><div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-bottom-resize-indicator")+"'></div></div>"}else{if(c){var s=I.toLowerCase()=="white"?Y.toTP("jqx-icon-recurrence-white"):Y.toTP("jqx-icon-recurrence");J="<div data-key='"+af.appointment.id+"'"+ad+"class='"+am+S+Y.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; border-color:"+T+"; color:"+I+"; background:"+W+";'><div class='"+s+"'></div>"+ai+"<div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-top-resize-indicator")+"'></div><div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-bottom-resize-indicator")+"'></div></div>"}else{J="<div data-key='"+af.appointment.id+"'"+ad+"class='"+am+S+Y.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; border-color:"+T+"; color:"+I+"; background:"+W+";'>"+ai+"<div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-top-resize-indicator")+"'></div><div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-bottom-resize-indicator")+"'></div></div>"}}var R=a(J);R.appendTo(this.table);af.element=R;if(this.appointmentTooltips){if(!af.appointment.tooltip){var V=af.appointment.subject;if(V){var v=af.appointment.location;if(v){V+="\n"+v}R[0].setAttribute("title",V)}}else{R[0].setAttribute("title",af.appointment.tooltip)}}}},getCollisionAppointments:function(c,g){var k=new Array();var h=c.from;var j=c.to;for(var e=0;e<g.length;e++){var l=g[e];var f=l.from;var d=l.to;if(a.jqx.scheduler.utilities.rangeIntersection(h,j,f,d)){k.push(l)}}return k},getAllDayCollisionAppointments:function(c,g){var k=new Array();var h=a.jqx.scheduler.utilities.getStartOfDay(c.from);var j=a.jqx.scheduler.utilities.getEndOfDay(c.to);for(var e=0;e<g.length;e++){var l=g[e];var f=a.jqx.scheduler.utilities.getStartOfDay(l.from);var d=a.jqx.scheduler.utilities.getEndOfDay(l.to);if(a.jqx.scheduler.utilities.rangeIntersection(h,j,f,d)){k.push(l)}}return k},_renderAppointments:function(f,d){var e=this;if(e._appupdating){return}e.table.find(".jqx-scheduler-appointment").remove();e.pinnedtable.find(".jqx-scheduler-appointment").remove();var c=e._views[e._view].type;if(c==="dayView"||c==="weekView"){e._renderDayWeekAppointments(f,d)}else{if(c==="monthView"){e._renderMonthAppointments(f,d)}else{if(c==="timelineWeekView"||c==="timelineDayView"||c==="timelineMonthView"){e._renderTimelineAppointments(f,d)}}}if(e.selectedJQXAppointment){e._selectAppointment(e.selectedJQXAppointment)}},_renderTimelineAppointments:function(u,H){var D=this;var P=D._views[D._view].type;var C=D._views[D._view];var v=new Array();var O=this.rows;var K=this.cellHeight;var J=this.cellWidth;var I=D.getMinutesPerScale();for(var e=0;e<this.appointmentsToRender.length;e++){var p=this.appointmentsToRender[e];var q=p.from;var R=p.to;var s=D._getDateByString;var A=new Array();var w=q.toDate().valueOf();var h=R.toDate().valueOf();if(P==="timelineMonthView"){w=q.clearTime().toDate().valueOf()}var S=function(j,i){if(j.date<i.date){return -1}if(j.date==i.date){return 0}if(j.date>i.date){return 1}};var r=D.rows[0];var n=p.resourceId;var g=D._resources.indexOf(n);if(D._resources.length>0){if(D.resources.orientation!=="horizontal"){if(g>=1){r=D.rows[g]}}}if(D.resources&&D.resources.orientation=="none"){g=-1;var r=D.rows[0]}var t=r.cells;for(var L=0;L<t.length;L++){var l=t[L].getAttribute("data-date");t[L].appointments=new Array();var N=s(l);var k=N.valueOf();if(k>R){continue}if(w<=k&&k<h){if(g!=-1){if((1+g)!=t[L].getAttribute("data-view")){continue}}A.push({cell:t[L],date:N});r=M}}A.sort(S);var z=new Array();var t=A;if(t.length==0){break}var m=D.appointmentsMinHeight;if(D.isTouchDevice()){m=D.touchAppointmentsMinHeight}if(C.appointmentHeight){m=C.appointmentHeight}var G=a(t[0].cell).position();var d=m;var c=a(t[t.length-1].cell).position().left-G.left+J;var F=G.left;var E=G.top;if(D.rtl){var G=a(t[t.length-1].cell).position();var c=a(t[0].cell).position().left-G.left+J;var F=G.left;var E=G.top}var o=new a.jqx.date(t[t.length-1].date,D.timeZone).addMinutes(I);if(P==="timelineMonthView"){var o=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(t[t.length-1].date,D.timeZone))}var Q={cellX:F,cellY:E,cellHeight:K,cells:t,x:F,y:E,height:d,width:c,appointment:p,from:new a.jqx.date(t[0].date,D.timeZone),to:o};z.push(Q);v.push(Q);p.elements=z;if(p.rootAppointment){p.rootAppointment.elements=p.rootAppointment.elements.concat(p.elements)}}if(this._resources.length<2||this.resources.orientation=="none"){this._renderUITimelineAppointments(v,u,H)}else{for(var L=0;L<this._resources.length;L++){var B=this._resources[L];var f=new Array();for(var M=0;M<v.length;M++){if(v[M].appointment.resourceId==B){f.push(v[M])}}this._renderUITimelineAppointments(f,u,H)}}},_renderUITimelineAppointments:function(ak,w,Z){var V=this;var al=V._views[V._view].type;var T=V._views[V._view];var D=ak;var C=1;var V=this;var Q=new Array();C=V.getMaxTimelineAppointments(ak,Q,w,Z);var h=V.appointmentsMinHeight;if(V.isTouchDevice()){h=V.touchAppointmentsMinHeight}if(T.appointmentHeight){h=T.appointmentHeight}for(var aj=0;aj<ak.length;aj++){var g=ak[aj];g.row=-1;var e=V.getCollisionAppointments(g,ak);e.sort(V._sortAppointmentsByFrom);var t=e.indexOf(g);if(t>=0){for(var ae=t;ae<e.length;ae++){e[ae].row=-1}}for(var ag=0;ag<C;ag++){var o=ag;for(var M in e){if(M=="indexOf"){break}var R=e[M];if(R.row==-1&&!V.isBusyRow(o,e)){R.row=o;var ah=C;var d=V.getMaxTimelineAppointments(e,Q,w,Z);if(ah>d){ah=d}R.rowsCount=ah}}}}for(var ag=0;ag<D.length;ag++){var g=D[ag];var e=V.getCollisionAppointments(g,D);e.sort(V._sortAppointmentsByFrom);var n=1;for(var M in e){if(M=="indexOf"){break}var G=e[M];n=Math.max(n,G.rowsCount)}for(var M in e){if(M=="indexOf"){break}var G=e[M];G.rowsCount=n}if(e.length==1){g.rowSpan=n}else{var z=0;var f=true;for(var ae=g.row;ae<n;ae++){for(var M in e){if(M=="indexOf"){break}var R=e[M];if(R==g){continue}if(R.row==ae){f=false}}if(!f){break}z++}g.rowSpan=z}}for(var X=0;X<D.length;X++){var W=h;var g=D[X];g.height=W;var y=2+(3+W)*g.row;g.y=g.y+y;g.x+=1;g.width-=5}var ad="";for(var X=0;X<D.length;X++){var af=D[X];var F="";var H="auto";var T=V._views[V._view];var q=af.appointment.from;var ao=af.appointment.to;if(T.timeRuler&&T.timeRuler.formatString){H=T.timeRuler.formatString}var U=af.appointment.background;var L=af.appointment.subject?af.appointment.subject:"(No Title)";var u=af.appointment.location;if(u&&u.length>1){u=", "+u}var E=af.appointment.color;var k=af.appointment.resourceId;var aa=V.getColors(V._resources.indexOf(k));var ab=" data-resourceId='"+k+"' ";var P=af.appointment.borderColor;if(!U){U=aa.background}if(!P){P=aa.border}if(!E){E=aa.color}var c=af.appointment.isRecurrentAppointment();var s=af.appointment.isException();var ai="";var v=V.toTP("jqx-scheduler-appointment-status");var K="";var J=V.statuses[af.appointment.status];var l=false;if(J){if(J=="transparent"){l=false}else{K="<div style='background: "+J+"; border-right-color: "+P+"' class='"+v+"'></div>";if(J=="tentative"){v=V.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");K="<div style='background-color: "+P+"; border-right-color: "+P+"' class='"+v+"'></div>"}l=true}}var A="";if(V.rtl){var v=V.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");K="<div style='background: "+J+"; border-left-color: "+P+"' class='"+v+"'></div>";if(J=="tentative"){v=V.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");K="<div style='background-color: "+P+"; border-left-color: "+P+"' class='"+v+"'></div>"}A=K;K=""}var O="";var I=L+"<br/>"+u;if(V.renderAppointment){var an=V.renderAppointment({appointment:af.appointment.boundAppointment,textColor:E,background:U,borderColor:P,html:I,cssClass:"",style:"",width:af.width,height:af.height,view:V._views[V._view].type});if(an){var F=an.html;if(F!=I){I=F}E=an.textColor;U=an.background;P=an.borderColor;if(an.cssClass){O=an.cssClass+" "}if(an.style!=""){var aa=V.getAppointmentColors(an.style);U=aa.background;P=aa.border;E=aa.color}}}if(ai===""){if(l){var ai="<div style='white-space:nowrap;' class='"+V.toTP("jqx-scheduler-appointment-content")+"'>"+K+"<div class='"+V.toTP("jqx-scheduler-appointment-inner-content")+"'>"+I+"</div>"+A+"</div>"}else{var ai="<div style='white-space:nowrap;' class='"+V.toTP("jqx-scheduler-appointment-content")+"'><div class='"+V.toTP("jqx-scheduler-appointment-inner-content")+"'>"+I+"</div></div>"}}var am="";if(V.rtl){am=V.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(s){var i=E.toLowerCase()=="white"?V.toTP("jqx-icon-recurrence-exception-white"):V.toTP("jqx-icon-recurrence-exception");F="<div data-key='"+af.appointment.id+"'"+ab+"class='"+am+O+V.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; line-height: "+af.height+"px; border-color:"+P+"; color:"+E+"; background:"+U+";'><div class='"+i+"'></div>"+ai+"<div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{if(c){var r=E.toLowerCase()=="white"?V.toTP("jqx-icon-recurrence-white"):V.toTP("jqx-icon-recurrence");F="<div data-key='"+af.appointment.id+"'"+ab+"class='"+am+O+V.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; line-height: "+af.height+"px; border-color:"+P+"; color:"+E+"; background:"+U+";'><div class='"+r+"'></div>"+ai+"<div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{F="<div data-key='"+af.appointment.id+"'"+ab+"class='"+am+O+V.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; line-height: "+af.height+"px; border-color:"+P+"; color:"+E+"; background:"+U+";'>"+ai+"<div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}}ad=F;var N=a(F);N.appendTo(this.table);af.element=N;if(this.appointmentTooltips){if(!af.appointment.tooltip){var S=af.appointment.subject;if(S){var u=af.appointment.location;if(u){S+="\n"+u}N[0].setAttribute("title",S)}}else{N[0].setAttribute("title",af.appointment.tooltip)}}}var ac=V.table.find(".jqx-scheduler-appointment");var B=function(m){for(var j=0;j<ac.length;j++){var p=ac[j].getAttribute("data-key");if(p==m){return ac[j]}}};for(var X=0;X<D.length;X++){var af=D[X];var Y=false;var N=a(B(af.appointment.id));a.each(af.cells,function(p){var m=a(this.cell);var aq=af.cellY;var ap=af.cellX;var j=af.cellHeight;if(!m[0].appointments){m[0].appointments=new Array()}m[0].appointments.push({ui:N,appointment:af});N=N;if(af.y+af.height>=aq+j-12){N[0].style.visibility="hidden";var x=m.find(".jqx-icon-arrow-down");if(x.length>0){x[0].style.display="block";x[0].mousedown=function(){if(V.openedMonthCellPopup){V.openedMonthCellPopup.remove()}var ar=a("<div></div>");var av=new a.jqx.date(m.attr("data-date"),V.timeZone);var ay=a("<div class='"+V.toTP("jqx-scheduler-month-cell")+"'><span style='float: right; cursor: pointer; width:16px; height: 16px;' class='"+V.toTP("jqx-icon-close")+"'></span></div>");ay.height(16);ay.find("span")[0].mousedown=function(){ar.remove()};ay.addClass(V.toTP("jqx-widget-header"));ar.addClass(V.toTP("jqx-widget"));ar.addClass(V.toTP("jqx-window"));ar.addClass(V.toTP("jqx-scheduler-month-cell-popup"));ar.addClass(V.toTP("jqx-popup"));var az=a("<div></div>");ar.append(ay);ar.append(az);az.addClass(V.toTP("jqx-widget-content"));var at=m.width();var aB=21;for(var aw=0;aw<m[0].appointments.length;aw++){var au=m[0].appointments[aw].ui.clone(true);au.css("left","3px");au.css("top","0px");au.css("margin-top","2px");au.css("position","relative");au.css("visibility","visible");au.width(at-6);aB+=au.outerHeight()+4;az.append(au)}ar.css("overflow","hidden");ar.css("position","absolute");var aA=V.table.height()-aq-25;if(aA<j){aA=j}ar.css("max-height",aA);ar.height(aB);ar.width(at);ar.css("z-index","999999");var ax=m.position();ar.css("top",ax.top);ar.css("left",ax.left);V.table.append(ar);V.openedMonthCellPopup=ar}}}})}},_renderMonthAppointments:function(){var L=this;var V=L._views[L._view].type;var K=L._views[L._view];var B=new Array();var T=this.rows;var P=a(".jqx-scheduler-month-cell:first").height();for(var f=0;f<this.appointmentsToRender.length;f++){var s=this.appointmentsToRender[f];var u=a.jqx.scheduler.utilities.getStartOfDay(s.from);var X=a.jqx.scheduler.utilities.getEndOfDay(s.to);var d=s.allDay;var w=L._getDateByString;var G=new Array();var r=new Array();var C=u.toDate().valueOf();var l=X.toDate().valueOf();var Y=function(j,i){if(j.date<i.date){return -1}if(j.date==i.date){return 0}if(j.date>i.date){return 1}};var v=-1;var p=s.resourceId;var k=L._resources.indexOf(p);if(L.resources&&L.resources.orientation=="none"){k=-1}for(var R=0;R<L.rows.length;R++){var z=L.rows[R].cells;for(var Q=0;Q<z.length;Q++){var n=z[Q].getAttribute("data-date");var S=w(n);var m=S.valueOf();if(m>X){continue}z[Q].appointments=new Array();if(k!=-1){if((1+k)!=z[Q].getAttribute("data-view")){continue}}if(C<=m&&m<l){if(v!=R&&v!=-1){G.sort(Y);r.push(G);G=new Array()}G.push({cell:z[Q],date:S});v=R}}}G.sort(Y);r.push(G);var D=new Array();for(var R=0;R<r.length;R++){var z=r[R];if(z.length==0){break}var o=L.appointmentsMinHeight;if(L.isTouchDevice()){o=L.touchAppointmentsMinHeight}if(K.appointmentHeight){o=K.appointmentHeight}var e=o;var F=a(z[z.length-1].cell).position().left;var c=F-a(z[0].cell).position().left+L.columns.records[0].width;var H=a(z[0].cell).position();var N=H.left;var M=H.top+P;var q=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(z[z.length-1].date,L.timeZone));var E=new a.jqx.date(z[0].date,L.timeZone);if(L.rtl){var q=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(z[0].date,L.timeZone));var E=new a.jqx.date(z[z.length-1].date,L.timeZone);var H=a(z[z.length-1].cell).position();var N=H.left;var M=H.top+P;var F=a(z[0].cell).position().left;var c=F-a(z[z.length-1].cell).position().left+L.columns.records[0].width}var W={cells:z,cellY:parseInt(H.top),cellX:parseInt(H.left),lastCellY:parseInt(H.top),lastCellX:F,x:N,y:M,height:e,width:c,appointment:s,from:E,to:q};D.push(W);B.push(W)}s.elements=D;if(s.rootAppointment){s.rootAppointment.elements=s.rootAppointment.elements.concat(s.elements)}}var A=this.getViewStart();var O=this.getViewEnd();if(this._resources.length<2||this.resources.orientation=="none"){var U=new Array();var g=A;var I=0;while(g<O){U[I]=new Array();for(var R=0;R<B.length;R++){var t=B[R];if(g<=t.from&&t.to<g.addDays(7)){t.row=-1;t.rowSpan=1;U[I].push(t)}}I++;g=g.addDays(7)}for(var R=0;R<U.length;R++){if(U[R].length>0){this._renderUIMonthAppointments(U[R])}}}else{for(var Q=0;Q<this._resources.length;Q++){var J=this._resources[Q];var h=new Array();var U=new Array();var g=A;var I=0;while(g<O){U[I]=new Array();for(var R=0;R<B.length;R++){var t=B[R];if(g<=t.from&&t.to<g.addDays(7)){t.row=-1;t.rowSpan=1;if(t.appointment.resourceId==J){U[I].push(t)}}}I++;g=g.addDays(7)}for(var R=0;R<U.length;R++){if(U[R].length>0){this._renderUIMonthAppointments(U[R])}}}}},_renderUIMonthAppointments:function(ag){var R=this._views[this._view];var C=ag;var w=this.getViewStart();var X=this.getViewEnd();var B=1;var T=this;B=this.getMaxMonthAppointments(ag);var h=T.appointmentsMinHeight;if(T.isTouchDevice()){h=T.touchAppointmentsMinHeight}if(R.appointmentHeight){h=R.appointmentHeight}for(var af=0;af<ag.length;af++){var g=ag[af];g.row=-1;var e=this.getCollisionAppointments(g,ag);e.sort(this._sortAppointmentsByFrom);var t=e.indexOf(g);if(t>=0){for(var aa=t;aa<e.length;aa++){e[aa].row=-1}}for(var ac=0;ac<B;ac++){var o=ac;for(var L in e){if(L=="indexOf"){break}var P=e[L];if(P.row==-1&&!this.isBusyRow(o,e)){P.row=o;var ad=B;var d=this.getMaxMonthAppointments(e);if(ad>d){ad=d}P.rowsCount=ad}}}}for(var ac=0;ac<C.length;ac++){var g=C[ac];var e=this.getCollisionAppointments(g,C);e.sort(this._sortAppointmentsByFrom);var n=1;for(var L in e){if(L=="indexOf"){break}var F=e[L];n=Math.max(n,F.rowsCount)}for(var L in e){if(L=="indexOf"){break}var F=e[L];F.rowsCount=n}if(e.length==1){g.rowSpan=n}else{var z=0;var f=true;for(var aa=g.row;aa<n;aa++){for(var L in e){if(L=="indexOf"){break}var P=e[L];if(P==g){continue}if(P.row==aa){f=false}}if(!f){break}z++}g.rowSpan=z}}for(var V=0;V<C.length;V++){var U=h;var g=C[V];g.height=U;var y=2+(3+U)*g.row;g.y=g.y+y;g.x+=1;g.width-=5}for(var V=0;V<C.length;V++){var ab=C[V];var E="";var G="auto";var R=this._views[this._view];var q=ab.appointment.from;var aj=ab.appointment.to;if(R.timeRuler&&R.timeRuler.formatString){G=R.timeRuler.formatString}var S=ab.appointment.background;var K=ab.appointment.subject?ab.appointment.subject:"(No Title)";var D=ab.appointment.color;var k=ab.appointment.resourceId;var Y=T.getColors(T._resources.indexOf(k));var Z=" data-resourceId='"+k+"' ";var O=ab.appointment.borderColor;var u=ab.appointment.location;if(u&&u.length>1){u=", "+u}if(!S){S=Y.background}if(!O){O=Y.border}if(!D){D=Y.color}var c=ab.appointment.isRecurrentAppointment();var s=ab.appointment.isException();var ae="";var v=T.toTP("jqx-scheduler-appointment-status");var J="";var I=T.statuses[ab.appointment.status];var l=false;if(I){if(I=="transparent"){l=false}else{J="<div style='background: "+I+"; border-right-color: "+O+"' class='"+v+"'></div>";if(I=="tentative"){v=T.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");J="<div style='background-color: "+O+"; border-right-color: "+O+"' class='"+v+"'></div>"}l=true}}var A="";if(T.rtl){var v=T.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");J="<div style='background: "+I+"; border-left-color: "+O+"' class='"+v+"'></div>";if(I=="tentative"){v=T.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");J="<div style='background-color: "+O+"; border-left-color: "+O+"' class='"+v+"'></div>"}A=J;J=""}var N="";var H=K+u;if(T.renderAppointment){var ai=T.renderAppointment({appointment:ab.appointment.boundAppointment,textColor:D,background:S,borderColor:O,html:H,cssClass:"",style:"",width:ab.width,height:ab.height,view:T._views[T._view].type});if(ai){var E=ai.html;if(E!=H){H=E}D=ai.textColor;S=ai.background;O=ai.borderColor;if(ai.cssClass){N=ai.cssClass+" "}if(ai.style!=""){var Y=T.getAppointmentColors(ai.style);S=Y.background;O=Y.border;D=Y.color}}}if(ae===""){if(l){var ae="<div style='white-space:nowrap;' class='"+T.toTP("jqx-scheduler-appointment-content")+"'>"+J+"<div class='"+T.toTP("jqx-scheduler-appointment-inner-content")+"'>"+H+"</div>"+A+"</div>"}else{var ae="<div style='white-space:nowrap;' class='"+T.toTP("jqx-scheduler-appointment-content")+"'><div class='"+T.toTP("jqx-scheduler-appointment-inner-content")+"'>"+H+"</div></div>"}}var ah="";if(T.rtl){ah=T.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(s){var i=D.toLowerCase()=="white"?T.toTP("jqx-icon-recurrence-exception-white"):T.toTP("jqx-icon-recurrence-exception");E="<div data-key='"+ab.appointment.id+"'"+Z+"class='"+ah+N+T.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ab.x+"px; top: "+ab.y+"px; width: "+ab.width+"px; line-height: "+ab.height+"px; height: "+ab.height+"px; border-color:"+O+"; color:"+D+"; background:"+S+";'><div class='"+i+"'></div>"+ae+"<div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{if(c){var r=D.toLowerCase()=="white"?T.toTP("jqx-icon-recurrence-white"):T.toTP("jqx-icon-recurrence");E="<div data-key='"+ab.appointment.id+"'"+Z+"class='"+ah+N+T.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ab.x+"px; top: "+ab.y+"px; width: "+ab.width+"px; line-height: "+ab.height+"px; height: "+ab.height+"px; border-color:"+O+"; color:"+D+"; background:"+S+";'><div class='"+r+"'></div>"+ae+"<div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{E="<div data-key='"+ab.appointment.id+"'"+Z+"class='"+ah+N+T.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ab.x+"px; top: "+ab.y+"px; width: "+ab.width+"px; line-height: "+ab.height+"px; height: "+ab.height+"px; border-color:"+O+"; color:"+D+"; background:"+S+";'>"+ae+"<div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}}var M=a(E);M.appendTo(this.table);ab.element=M;if(this.appointmentTooltips){if(!ab.appointment.tooltip){var Q=ab.appointment.subject;if(Q){var u=ab.appointment.location;if(u){Q+="\n"+u}M[0].setAttribute("title",Q)}}else{M[0].setAttribute("title",ab.appointment.tooltip)}}var W=false;a.each(ab.cells,function(){var m=a(this.cell);var j=m.position();if(!m[0].appointments){m[0].appointments=new Array()}m[0].appointments.push({ui:M,appointment:ab});if(ab.y+ab.height+2>=j.top+m.height()){M.css("visibility","hidden");var p=m.find(".jqx-icon-arrow-down");p.show();p[0].mousedown=function(){if(T.openedMonthCellPopup){T.openedMonthCellPopup.remove()}var ak=a("<div></div>");var ap=m.find("div").clone(true);ap.find("span").removeClass().addClass(T.toTP("jqx-icon-close"));ap.find("span")[0].mousedown=function(){ak.remove()};ap.addClass(T.toTP("jqx-widget-header"));ak.addClass(T.toTP("jqx-widget"));ak.addClass(T.toTP("jqx-window"));ak.addClass(T.toTP("jqx-scheduler-month-cell-popup"));ak.addClass(T.toTP("jqx-popup"));var an=a("<div></div>");ak.append(ap);ak.append(an);an.addClass(T.toTP("jqx-widget-content jqx-disableselect"));var am=m.width();var x=5+m.find("div").outerHeight();for(var al=0;al<m[0].appointments.length;al++){var ao=m[0].appointments[al].ui.clone(true);ao.css("left","3px");ao.css("top","0px");ao.css("margin-top","2px");ao.css("position","relative");ao.css("visibility","visible");ao.width(am-6);x+=ao.outerHeight()+4;an.append(ao)}ak.css("overflow","hidden");ak.css("position","absolute");ak.height(x);ak.width(am);ak.css("z-index","999999");ak.css("top",j.top);ak.css("left",j.left);T.table.append(ak);T.openedMonthCellPopup=ak}}})}},_sortByDate:function(c,f){var e=c.getAttribute("data-date");e=this._getDateByString(e);var d=f.getAttribute("data-date");d=this._getDateByString(d);if(e<d){return -1}if(e>d){return 1}if(e==d){return 0}},_sortAppointmentsByFrom:function(c,g){if(c.from==g.from){var e=c.to-c.from;var f=e*10000;var e=g.to-g.from;var d=e*10000;if(f>d){return -1}}if(c.from<g.from){return -1}if(c.from>g.from){return 1}if(c.from==g.from){return 0}},_sortAppointmentsByResourceId:function(c,g,f){var e=f._resources.indexOf(c.resourceId);var d=f._resources.indexOf(g.resourceId);if(e==d){return 0}if(e<d){return -1}if(e>d){return -1}},isBusyRow:function(f,e){for(var d=0;d<e.length;d++){var c=e[d];if(c.row==f){return true}}return false},isBusyColumn:function(f,e){for(var d=0;d<e.length;d++){var c=e[d];if(c.column==f){return true}}return false},getMaxTimelineAppointments:function(d,t,g,f){if(d.length==0){return 1}var j=this;var u=j._views[j._view].type;var k=j._views[j._view];var l=1;var n=g;var v=f;var r=this.getMinutesPerScale();var o=null;var s=null;var x="";for(var h in d){if(h=="indexOf"){break}var e=d[h];if(!o){o=e.from}if(!s){s=e.to}o=Math.min(e.from,o);s=Math.max(e.to,s);x+=e.appointment.id}x+=o;x+=s;if(t[x]){return t[x]}o=new a.jqx.date(o,j.timeZone);s=new a.jqx.date(s,j.timeZone);var n=o;while(o<s){var q=n;if(u==="timelineMonthView"){var c=q.addDays(1)}else{var c=q.addMinutes(r)}var p=0;for(var h in d){if(h=="indexOf"){break}var e=d[h];var i=e.from;var w=e.to;var m=a.jqx.scheduler.utilities.rangeIntersection(q,c,i,w);if(m){p++}}l=Math.max(p,l);if(u==="timelineMonthView"){n=n.addDays(1,false)}else{n=n.addMinutes(r,false)}}t[x]=l;return l},getMaxMonthAppointments:function(h){var j=this._views[this._view].type;var m=this._views[this._view];if(h.length==0){return 1}var p=1;var i=this.getViewStart().clone();var f=this.getViewEnd();while(i<f){var k=i;var l=a.jqx.scheduler.utilities.getEndOfDay(k);var o=0;for(var g in h){if(g=="indexOf"){break}var c=h[g];var e=c.from;var d=c.to;var n=a.jqx.scheduler.utilities.rangeIntersection(k,l,e,d);if(n){o++}}p=Math.max(o,p);i=i.addDays(1,false)}return p},getMaxAllDayAppointments:function(f){var k=this._views[this._view].type;var m=this._views[this._view];var g=this;if(f.length==0){return 1}var o=function(s){var z=1;var t=g.getViewStart();var q=g.getViewEnd();while(t<q){var u=t;var v=a.jqx.scheduler.utilities.getEndOfDay(u);var y=0;for(var r in s){if(r=="indexOf"){break}var i=s[r];var w=i;if(i.appointment){w=i.appointment}if(w.hidden==true){continue}if(!w.duration){continue}if(w.allDay||w.duration().days()>=1){var p=i.from;var j=i.to;var x=a.jqx.scheduler.utilities.rangeIntersection(u,v,p,j);if(x){y++}}}z=Math.max(y,z);t=t.addDays(1,false)}return z};if(this._resources.length<2||(!this.resources.orientation||this.resources.orientation=="none")){var n=o(f)}else{var l=1;for(var d=0;d<this._resources.length;d++){var c=this._resources[d];var h=new Array();for(var e=0;e<f.length;e++){if(f[e].appointment&&f[e].appointment.resourceId==c){h.push(f[e])}else{if(f[e].resourceId!=undefined&&f[e].resourceId==c){h.push(f[e])}}}var n=o(h);l=Math.max(l,n)}n=l}return n},getMinutesPerScale:function(){var c=this._views[this._view].type;var e=this._views[this._view];var d=30;var f="halfHour";if(e.timeRuler&&e.timeRuler.scale){f=e.timeRuler.scale}switch(f){case"sixtyMinutes":case"hour":d=60;break;case"thirdyMinutes":case"halfHour":d=30;break;case"fifteenMinutes":case"quarterHour":d=15;break;case"tenMinutes":d=10;break;case"fiveMinutes":d=5;break}return d},getMaxColumnsInADay:function(l){var n=this._views[this._view].type;var q=this._views[this._view];var f=30;var d="halfHour";if(q.timeRuler&&q.timeRuler.scale){d=q.timeRuler.scale}switch(d){case"sixtyMinutes":case"hour":f=60;break;case"thirdyMinutes":case"halfHour":f=30;break;case"fifteenMinutes":case"quarterHour":f=15;break;case"tenMinutes":f=10;break;case"fiveMinutes":f=5;break}if(l.length==0){return 1}var e=1;var m=l[0].from.clone();var j=m.addMinutes(f);var i=a.jqx.scheduler.utilities.getEndOfDay(m);while(m<i){var p=m;var o=j;var s=0;for(var k in l){if(k=="indexOf"){break}var c=l[k];if(!c.from&&!c.to){continue}var h=c.from;var g=c.to;var r=a.jqx.scheduler.utilities.rangeIntersection(p,o,h,g);if(r){s++}}e=Math.max(s,e);m=m.addMinutes(f,false);j=j.addMinutes(f,false)}return e},getTouches:function(c){return a.jqx.mobile.getTouches(c)},_updatecolumnwidths:function(){var i=this;var k=this._hostWidth;var c=k;if(this.vScrollBar.css("visibility")!=="hidden"){k-=parseInt(this.scrollBarSize)+6;if(this.rtl){k+=3}c=k}var j="";if(this.columns==undefined||this.columns.records==undefined){return}var i=this;var h=false;a.each(this.columns.records,function(l,m){if(!(this.hidden)){if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){var m=0;var n=i.vScrollBar[0].style.visibility=="hidden"?0:i.scrollBarSize+5;m=parseFloat(this.width)*c/100;if(this._percentagewidth!=undefined){m=parseFloat(this._percentagewidth)*(c)/100}if(m<this.minwidth&&this.minwidth!="auto"){m=this.minwidth}if(m>this.maxwidth&&this.maxwidth!="auto"){m=this.maxwidth}k-=Math.round(m)}else{if(this.width!="auto"&&!this._width){k-=this.width}else{j+=this.text}}}});var f=this.columnsheader.find("#columntable"+this.element.id);if(f.length==0){return}var d=0;var g=f.find(".jqx-grid-column-header");var e=0;a.each(this.columns.records,function(o,t){var m=this.element;var w=false;var v=this.width;var q=this.width;if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){v=parseFloat(this._percentagewidth)*c/100}else{v=parseFloat(this.width)*c/100}v=Math.round(v);w=true}if(this.width!="auto"&&!this._width&&!w){if(parseInt(m[0].style.width)!=this.width){m.width(this.width)}}else{if(w){if(v<this.minwidth&&this.minwidth!="auto"){v=this.minwidth;this.width=v}if(v>this.maxwidth&&this.maxwidth!="auto"){v=this.maxwidth;this.width=v}if(parseInt(m[0].style.width)!=v){m.width(v);this.width=v}}else{var n=i.columns.records.length;var p=i._views[i._view].type;if(p==="dayView"||p==="weekView"){var r=i._views[i._view];if(r.timeRuler){if(r.timeRuler.timeZones){n-=r.timeRuler.timeZones.length}n--}else{n--}}var l=Math.floor(k*(1/n));if(i.resources&&i.resources.resourceColumnWidth&&i.resources.resourceColumnWidth!="auto"){l=i.resources.resourceColumnWidth}else{if(i.resources&&i.resources.resourceColumnWidth&&i.resources.resourceColumnWidth=="auto"){if(i.resources.orientation=="horizontal"){l=Math.round((2+k)*(1/i._getColumnsLengthPerView()))}}}var s=(k*(1/n))-l;d+=s;if(d>=1){d-=1;l++}if(d>=0.5&&o==i.columns.records.length-1){l++}if(l<0){var u=a("<span>"+this.text+"</span>");a(document.body).append(u);l=10+u.width();u.remove()}if(l<this.minwidth){l=this.minwidth}if(l>this.maxwidth){l=this.maxwidth}this._width="auto";this.width=l;m.width(this.width)}}if(parseInt(m[0].style.left)!=e){m.css("left",e)}if(!(this.hidden)){e+=this.width}this._requirewidthupdate=true;if(q!==this.width){h=true}});this.columnsheader.width(2+e);f.width(this.columnsheader.width());this._resizecolumnGroups();if(h){this._renderrows()}},_rendercolumnheaders:function(){var h=this;if(this._updating){return}var m=this._views[this._view];this._columnsbydatafield=new Array();this.columnsheader.find("#columntable"+this.element.id).remove();var i=a('<div id="columntable'+this.element.id+'" style="height: 100%; position: relative;"></div>');i[0].cells=new Array();var s=0;var e=0;var o="";var q=this._hostWidth;if(!q){this._hostWidth=this.host.width()}var v=this._hostWidth;var n=v;var w=this.getRows().length;var u=this.rowsHeight;if(this.isTouchDevice()){u=this.touchRowsHeight}if(w*u>this.host.height()){this.vScrollBar[0].style.visibility="inherit"}if(this.vScrollBar.css("visibility")!=="hidden"){v-=parseInt(this.scrollBarSize)+6;if(this.rtl){v+=3}n=v}var r=new Array();a.each(this.columns.records,function(j,k){if(!(this.hidden)){if(this.width!="auto"&&!this._width){if(this.width<this.minwidth&&this.minwidth!="auto"){v-=this.minwidth}else{if(this.width>this.maxwidth&&this.maxwidth!="auto"){v-=this.maxwidth}else{if(this.width.toString().indexOf("%")!=-1){var k=0;k=parseFloat(this.width)*n/100;if(k<this.minwidth&&this.minwidth!="auto"){k=this.minwidth}if(k>this.maxwidth&&this.maxwidth!="auto"){k=this.maxwidth}v-=k}else{if(typeof this.width=="string"){this.width=parseInt(this.width)}v-=this.width}}}}else{o+=this.text}}r[r.length]=this});if(this.rtl){for(var t=0;t<r.length;t++){this.columns.replace(t,r[t])}}var g=this.headerZIndex;var l=0;var f=h.columnsHeight;var c=function(k,x){var j=h.columnGroupslevel*h.columnsHeight;j=j-(x.level*h.columnsHeight);return j};var p=0;var d=document.createDocumentFragment();a.each(this.columns.records,function(D,I){this.height=h.columnsHeight;if(h.columnGroups){if(h.columnGroups.length){this.height=c(this.datafield,this);f=this.height}}var y=h.toTP("jqx-grid-column-header")+" "+h.toTP("jqx-widget-header");if(h.rtl){y+=" "+h.toTP("jqx-grid-column-header-rtl")}if(!h.enableBrowserSelection){y+=" "+h.toTP("jqx-disableselect")}var E=!h.rtl?g--:g++;var k=document.createElement("div");k.setAttribute("role","columnheader");k.style.position="absolute";k.style.zIndex=E;k.style.height="100%";k.className=y;var z=a(k);if(h.rtl&&D===0){z[0].style.borderLeftColor="transparent"}if(h.columnGroups){z[0].style.height=f+"px";z[0].style.bottom="0px"}else{if(!this.timeColumn){z[0].style.height=-1+f+"px"}}this.uielement=z;this.element=z;if(this.classname!=""&&this.classname){z.addClass(this.classname)}var J=this.width;var K=false;if(this.width===null){this.width="auto"}if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){J=parseFloat(this._percentagewidth)*n/100}else{J=parseFloat(this.width)*n/100}J=Math.round(J);K=true}if(this.width!="auto"&&!this._width&&!K){if(J<this.minwidth&&this.minwidth!="auto"){J=this.minwidth}if(J>this.maxwidth&&this.maxwidth!="auto"){J=this.maxwidth}z[0].style.width=parseInt(J)+"px"}else{if(K){if(J<this.minwidth&&this.minwidth!="auto"){J=this.minwidth}if(J>this.maxwidth&&this.maxwidth!="auto"){J=this.maxwidth}if(this._percentagewidth==undefined||this.width.toString().indexOf("%")!=-1){this._percentagewidth=this.width}z.width(J);this.width=J}else{var A=h.columns.records.length;var C=h._views[h._view].type;if(C==="dayView"||C==="weekView"){var G=h._views[h._view];if(G.timeRuler){if(G.timeRuler.timeZones){A-=G.timeRuler.timeZones.length}A--}else{A--}}var j=Math.floor(v*(1/A));if(h.resources&&h.resources.resourceColumnWidth&&h.resources.resourceColumnWidth!="auto"){j=h.resources.resourceColumnWidth}else{if(h.resources&&h.resources.resourceColumnWidth&&h.resources.resourceColumnWidth=="auto"){if(h.resources.orientation=="horizontal"){j=Math.round((2+v)*(1/h._getColumnsLengthPerView()))}}}var H=(v*(1/A))-j;p+=H;if(p>=1){p-=1;j++}if(p>=0.5&&D==h.columns.records.length-1){j++}if(isNaN(j)){j=this.minwidth}if(j<0){$element=a("<span>"+this.text+"</span>");a(document.body).append($element);j=10+$element.width();$element.remove()}if(j<this.minwidth){j=this.minwidth}if(j>this.maxwidth){j=this.maxwidth}this._width="auto";this.width=parseInt(j);J=this.width;z.width(this.width)}}if(this.timeColumn){z.css("border-bottom-color","transparent");if(m.timeRuler&&m.timeRuler.timeZones){if(D<m.timeRuler.timeZones.length){z.css("border-right-color","transparent")}}if(this.tableRows==1){z.addClass(h.toTP("jqx-scheduler-time-column"))}}if(this.hidden){z.css("display","none")}var x=a(z.children()[0]);i[0].cells[D]=z[0];var B=h._rendercolumnheader(this.text,this.align,f,h);z[0].innerHTML=B;d.appendChild(z[0]);var F=this;z[0].style.left=e+"px";if(!(this.hidden)){e+=J}});i[0].appendChild(d);if(e>0){this.columnsheader[0].style.width=2+e+"px"}else{this.columnsheader[0].style.width=e+"px"}this._columnswidth=e;this.columnsrow=i;h.columnsheader.append(i);i[0].style.width=e+"px";if(this.columnGroups){this._rendercolumnGroups()}},_rendercolumnGroups:function(){if(!this.columnGroups){return}var s=this.headerZIndex+this.columns.records.length;var n=this;var g=n.toTP("jqx-grid-column-header")+" "+n.toTP("jqx-grid-columngroup-header")+" "+n.toTP("jqx-widget-header");if(n.rtl){g+=" "+n.toTP("jqx-grid-columngroup-header-rtl")}var e=this.columnsheader.find("#columntable"+this.element.id);e.find("jqx-grid-columngroup-header").remove();for(var h=0;h<this.columnGroupslevel-1;h++){for(var l=0;l<this.columnGroups.length;l++){var p=this.columnGroups[l];var c=p.level;if(c!==h){continue}var o=c*this.columnsHeight;var d=99999;if(p.groups){var r=function(v){var u=0;for(var t=0;t<v.groups.length;t++){var i=v.groups[t];if(!i.groups){if(!i.hidden){u+=i.width;d=Math.min(parseInt(i.element[0].style.left),d)}}else{u+=r(i)}}return u};p.width=r(p);p.left=d;var q=this.columnsHeight;var m=s--;var f=a('<div role="columnheader" style="z-index: '+m+';position: absolute;" class="'+g+'"></div>');var k=a(this._rendercolumnheader(p.text,p.align,this.columnsHeight,this));if(p.renderer){p.renderer(f,p.text)}f.append(k);f[0].style.left=d+"px";if(d===0){f[0].style.borderLeftColor="transparent"}f[0].style.top=o+"px";f[0].style.height=q+"px";f[0].style.width=-1+p.width+"px";e.append(f);p.element=f}}}},_resizecolumnGroups:function(){if(!this.columnGroups){return}for(var d=0;d<this.columnGroups.length;d++){var j=this.columnGroups[d];var k=j.level;var h=k*this.columnsHeight;var g=99999;if(j.groups){var f=function(n){var m=0;for(var l=0;l<n.groups.length;l++){var i=n.groups[l];if(!i.groups){m+=i.width;g=Math.min(parseInt(i.element[0].style.left),g)}else{m+=f(i)}}return m};j.width=f(j);j.left=g;var c=this.columnsHeight;var e=j.element;e[0].style.left=g+"px";e[0].style.top=h+"px";e[0].style.height=c+"px";e[0].style.width=-1+j.width+"px"}}},_removecolumnhandlers:function(f){var d=this;var c=a(f.element);if(c.length>0){d.removeHandler(c,"mouseenter");d.removeHandler(c,"mouseleave");var e=a(f.filtericon);d.removeHandler(e,"mousedown");d.removeHandler(e,"click");d.removeHandler(c,"click")}},destroy:function(){var c=this;c._removeHandlers();if(c.editDialog){c.editDialog.jqxWindow("destroy")}if(c.menu){c.menu.jqxMenu("destroy")}c.editRecurrenceDialog.jqxWindow("destroy");c.vScrollBar.jqxScrollBar("destroy");c.hScrollBar.jqxScrollBar("destroy");delete c.vScrollBar;delete c.hScrollBar;delete c._mousewheelfunc;a.jqx.utilities.resize(c.host,null,true);c.host.remove()},propertyChangedHandler:function(c,d,f,e){if(this.isInitialized==undefined||this.isInitialized==false){return}if(e!==f){if(d=="filterable"){c._render()}else{if(d==="height"){c.host.height(c.height);c.host.width(c.width);c._updatesize(false,true)}else{if(d==="width"){c.host.height(c.height);c.host.width(c.width);c._updatesize(true,false)}else{if(d==="source"){c.updateBoundData()}else{if(d=="resources"){c.updateBoundData()}else{if(d==="columns"||d==="columnGroups"){c._columns=null;c._render()}else{if(d==="selectionMode"){c.selectionMode=e.toLowerCase()}else{if(d=="touchMode"){c._removeHandlers();c.touchDevice=null;c.vScrollBar.jqxScrollBar({touchMode:e});c.hScrollBar.jqxScrollBar({touchMode:e});c.refresh();c._addHandlers()}else{if(d=="enableHover"){return}else{if(d=="disabled"){if(e){c.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{c.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}c.host.find(".jqx-grid-group-collapse").css("cursor",e?"default":"pointer");c.host.find(".jqx-grid-group-expand").css("cursor",e?"default":"pointer")}else{if(d=="columnsHeight"){c._render()}else{if(d=="theme"){a.jqx.utilities.setTheme(f,e,c.host);if(c.editDialog){a.jqx.utilities.setTheme(f,e,c.editDialog)}if(c.editRecurrenceDialog){a.jqx.utilities.setTheme(f,e,c.editRecurrenceDialog)}if(c.menu){c.menu.jqxMenu({theme:c.theme})}c.vScrollBar.jqxScrollBar({theme:c.theme});c.hScrollBar.jqxScrollBar({theme:c.theme});c.refresh()}else{c.refresh()}}}}}}}}}}}}}},_rendercolumnheader:function(h,i,e,f){var g="4px";if(f.columnGroups){g=(e/2-this._columnheight/2);if(g<0){g=4}g+="px"}else{if(this.columnsHeight!=25){g=(this.columnsHeight/2-this._columnheight/2);if(g<0){g=4}g+="px"}}var d='<div style="overflow: hidden; text-overflow: ellipsis; text-align: '+i+"; margin-left: 4px; margin-right: 4px; margin-bottom: "+g+"; margin-top: "+g+';"><span style="text-overflow: ellipsis; cursor: default;">'+h+"</span></div>";if(this.columnRenderer){var c=this.columnRenderer(h,i,e,d);if(c!=undefined){return c}}return d}});function b(c,d){this.owner=c;this.datafield=null;this.displayfield=null;this.text="";this.sortable=true;this.editable=true;this.hidden=false;this.hideable=true;this.groupable=true;this.renderer=null;this.cellsRenderer=null;this.columntype=null;this.cellsFormat="";this.align="center";this.cellsalign="center";this.width="auto";this.minwidth=60;this.maxwidth="auto";this.pinned=false;this.visibleindex=-1;this.filterable=true;this.filter=null;this.resizable=true;this.draggable=true;this.initeditor=null;this.createeditor=null;this.destroyeditor=null;this.geteditorvalue=null;this.autoCellHeight=true;this.validation=null;this.classname="";this.cellclassname="";this.rendered=null;this.exportable=true;this.nullable=true;this.columngroup=null;this.columntype="textbox";this.getcolumnproperties=function(){return{nullable:this.nullable,sortable:this.sortable,hidden:this.hidden,groupable:this.groupable,width:this.width,align:this.align,editable:this.editable,minwidth:this.minwidth,maxwidth:this.maxwidth,resizable:this.resizable,datafield:this.datafield,text:this.text,exportable:this.exportable,cellsalign:this.cellsalign,pinned:this.pinned,cellsFormat:this.cellsFormat,columntype:this.columntype,classname:this.classname,cellclassname:this.cellclassname,menu:this.menu}},this.setproperty=function(e,f){if(this[e]){var g=this[e];this[e]=f;this.owner._columnPropertyChanged(this,e,f,g)}else{if(this[e.toLowerCase()]){var g=this[e.toLowerCase()];this[e.toLowerCase()]=f;this.owner._columnPropertyChanged(this,e.toLowerCase(),f,g)}}};this._initfields=function(f){if(f!=null){var e=this;if(a.jqx.hasProperty(f,"dataField")){this.datafield=a.jqx.get(f,"dataField")}if(a.jqx.hasProperty(f,"displayField")){this.displayfield=a.jqx.get(f,"displayField")}else{this.displayfield=this.datafield}if(a.jqx.hasProperty(f,"columnType")){this.columntype=a.jqx.get(f,"columnType")}if(a.jqx.hasProperty(f,"validation")){this.validation=a.jqx.get(f,"validation")}if(a.jqx.hasProperty(f,"autoCellHeight")){this.autoCellHeight=a.jqx.get(f,"autoCellHeight")}if(a.jqx.hasProperty(f,"text")){this.text=a.jqx.get(f,"text")}else{this.text=this.displayfield}if(a.jqx.hasProperty(f,"sortable")){this.sortable=a.jqx.get(f,"sortable")}if(a.jqx.hasProperty(f,"hidden")){this.hidden=a.jqx.get(f,"hidden")}if(a.jqx.hasProperty(f,"groupable")){this.groupable=a.jqx.get(f,"groupable")}if(a.jqx.hasProperty(f,"renderer")){this.renderer=a.jqx.get(f,"renderer")}if(a.jqx.hasProperty(f,"align")){this.align=a.jqx.get(f,"align")}if(a.jqx.hasProperty(f,"cellsAlign")){this.cellsalign=a.jqx.get(f,"cellsAlign")}if(a.jqx.hasProperty(f,"cellsFormat")){this.cellsFormat=a.jqx.get(f,"cellsFormat")}if(a.jqx.hasProperty(f,"width")){this.width=a.jqx.get(f,"width")}if(a.jqx.hasProperty(f,"minWidth")){this.minwidth=a.jqx.get(f,"minWidth")}if(a.jqx.hasProperty(f,"maxWidth")){this.maxwidth=a.jqx.get(f,"maxWidth")}if(a.jqx.hasProperty(f,"cellsRenderer")){this.cellsRenderer=a.jqx.get(f,"cellsRenderer")}if(a.jqx.hasProperty(f,"columnType")){this.columntype=a.jqx.get(f,"columnType")}if(a.jqx.hasProperty(f,"pinned")){this.pinned=a.jqx.get(f,"pinned")}if(a.jqx.hasProperty(f,"filterable")){this.filterable=a.jqx.get(f,"filterable")}if(a.jqx.hasProperty(f,"filter")){this.filter=a.jqx.get(f,"filter")}if(a.jqx.hasProperty(f,"resizable")){this.resizable=a.jqx.get(f,"resizable")}if(a.jqx.hasProperty(f,"draggable")){this.draggable=a.jqx.get(f,"draggable")}if(a.jqx.hasProperty(f,"editable")){this.editable=a.jqx.get(f,"editable")}if(a.jqx.hasProperty(f,"initEditor")){this.initeditor=a.jqx.get(f,"initEditor")}if(a.jqx.hasProperty(f,"createEditor")){this.createeditor=a.jqx.get(f,"createEditor")}if(a.jqx.hasProperty(f,"destroyEditor")){this.destroyeditor=a.jqx.get(f,"destroyEditor")}if(a.jqx.hasProperty(f,"getEditorValue")){this.geteditorvalue=a.jqx.get(f,"getEditorValue")}if(a.jqx.hasProperty(f,"className")){this.classname=a.jqx.get(f,"className")}if(a.jqx.hasProperty(f,"cellClassName")){this.cellclassname=a.jqx.get(f,"cellClassName")}if(a.jqx.hasProperty(f,"rendered")){this.rendered=a.jqx.get(f,"rendered")}if(a.jqx.hasProperty(f,"exportable")){this.exportable=a.jqx.get(f,"exportable")}if(a.jqx.hasProperty(f,"nullable")){this.nullable=a.jqx.get(f,"nullable")}if(a.jqx.hasProperty(f,"columnGroup")){this.columngroup=a.jqx.get(f,"columnGroup")}if(!f instanceof String&&!(typeof f=="string")){for(var g in f){if(!e.hasOwnProperty(g)){if(!e.hasOwnProperty(g.toLowerCase())){c.host.remove();throw new Error("jqxScheduler: Invalid property name - "+g+".")}}}}}};this._initfields(d);return this}a.jqx.dataCollection=function(c){this.records=new Array();this.owner=c;this.updating=false;this.beginUpdate=function(){this.updating=true};this.resumeupdate=function(){this.updating=false};this.clear=function(){this.records=new Array()};this.replace=function(e,d){this.records[e]=d};this.isempty=function(d){if(this.records[d]==undefined){return true}return false};this.initialize=function(d){if(d<1){d=1}this.records[d-1]=-1};this.length=function(){return this.records.length};this.indexOf=function(d){return this.records.indexOf(d)};this.add=function(d){if(d==null){return false}this.records[this.records.length]=d;return true};this.insertAt=function(e,d){if(e==null||e==undefined){return false}if(d==null){return false}if(e>=0){if(e<this.records.length){this.records.splice(e,0,d);return true}else{return this.add(d)}}return false};this.remove=function(e){if(e==null||e==undefined){return false}var d=this.records.indexOf(e);if(d!=-1){this.records.splice(d,1);return true}return false};this.removeAt=function(e){if(e==null||e==undefined){return false}if(e<0){return false}if(e<this.records.length){var d=this.records[e];this.records.splice(e,1);return true}return false};return this};a.jqx.scheduler.dataView=function(c){this.that=this;this.scheduler=null;this.records=[];this.rows=[];this.columns=[];this.filters=new Array();this.pagesize=0;this.pagenum=0;this.source=null;this.databind=function(q,l){var g=this;if(a.isArray(q)){g.update(q);return}var p=q._source?true:false;var f=null;this._sortData=null;this._sortHierarchyData=null;if(p){f=q;q=q._source}else{f=new a.jqx.dataAdapter(q,{autoBind:false})}var d=function(m){f.recordids=[];f.records=new Array();f.cachedrecords=new Array();f.originaldata=new Array();f._options.totalrecords=m.totalrecords;f._options.originaldata=m.originaldata;f._options.recordids=m.recordids;f._options.cachedrecords=new Array();f._options.pagenum=m.pagenum;f._options.pageable=m.pageable;if(q.type!=undefined){f._options.type=q.type}if(q.formatdata!=undefined){f._options.formatData=q.formatdata}if(q.contenttype!=undefined){f._options.contentType=q.contenttype}if(q.async!=undefined){f._options.async=q.async}if(q.updaterow!=undefined){f._options.updaterow=q.updaterow}if(q.addrow!=undefined){f._options.addrow=q.addrow}if(q.deleterow!=undefined){f._options.deleterow=q.deleterow}if(m.pagesize==0){m.pagesize=10}f._options.pagesize=m.pagesize};var s=function(m){m.originaldata=f.originaldata;m.records=f.records;m.hierarchy=f.hierarchy;if(!m.scheduler.serverProcessing){m._sortData=null;m._sortfield=null;m._filteredData=null;m._sortHierarchyData=null}if(!m.hierarchy){m.hierarchy=new Array();f.hierarchy=new Array()}if(f._source.totalrecords){m.totalrecords=f._source.totalrecords}else{if(f._source.totalRecords){m.totalrecords=f._source.totalRecords}else{if(m.hierarchy.length!==0){m.totalrecords=m.hierarchy.length}else{m.totalrecords=m.records.length}}}m.cachedrecords=f.cachedrecords};d(this);this.source=q;if(l!==undefined){uniqueId=l}var g=this;switch(q.datatype){case"local":case"array":default:if(q.localdata==null){q.localdata=[]}if(q.localdata!=null){f.unbindBindingUpdate(c+g.scheduler.element.id);if((!g.scheduler.autoBind&&g.scheduler.isInitialized)||g.scheduler.autoBind){f.dataBind()}var k=function(){s(g);g.update(f.records)};k();f.bindBindingUpdate(c+g.scheduler.element.id,k)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(q.localdata!=null){f.unbindBindingUpdate(c+g.scheduler.element.id);if((!g.scheduler.autoBind&&g.scheduler.isInitialized)||g.scheduler.autoBind){f.dataBind()}var k=function(m){s(g);g.update(f.records)};k();f.bindBindingUpdate(c+g.scheduler.element.id,k);return}var t={};var o=0;var u={};for(var i=0;i<this.filters.length;i++){var e=this.filters[i].datafield;var j=this.filters[i].filter;var h=j.getfilters();u[e+"operator"]=j.operator;for(var r=0;r<h.length;r++){h[r].datafield=e;var n=h[r].value;u["filtervalue"+o]=n.toString();u["filtercondition"+o]=h[r].condition;u["filteroperator"+o]=h[r].operator;u["filterdatafield"+o]=e;o++}}u.filterslength=o;a.extend(u,{sortdatafield:g.sortfield,sortorder:g.sortfielddirection,pagenum:g.pagenum,pagesize:g.scheduler.pageSize});var v=f._options.data;if(f._options.data){a.extend(f._options.data,u)}else{if(q.data){a.extend(u,q.data)}f._options.data=u}var k=function(){var w=a.jqx.browser.msie&&a.jqx.browser.version<9;var x=function(){s(g);g.update(q.records)};if(w){try{x()}catch(m){}}else{x()}};f.unbindDownloadComplete(c+g.scheduler.element.id);f.bindDownloadComplete(c+g.scheduler.element.id,k);f._source.loaderror=function(x,m,w){k()};if((!g.scheduler.autoBind&&g.scheduler.isInitialized)||g.scheduler.autoBind){f.dataBind()}f._options.data=v}};this.addFilter=function(g,f){this._sortData=null;this._sortHierarchyData=null;var e=-1;for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==g){e=d;break}}if(e==-1){this.filters[this.filters.length]={filter:f,datafield:g}}else{this.filters[e]={filter:f,datafield:g}}};this.removeFilter=function(e){this._sortData=null;this._sortHierarchyData=null;for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==e){this.filters.splice(d,1);break}}};this._compare=function(e,d,g){var e=e;var d=d;if(e===undefined){e=null}if(d===undefined){d=null}if(e===null&&d===null){return 0}if(e===null&&d!==null){return 1}if(e!==null&&d===null){return 1}e=e.toString();d=d.toString();if(a.jqx.dataFormat){if(g&&g!=""){switch(g){case"number":case"int":case"float":if(e<d){return -1}if(e>d){return 1}return 0;case"date":case"time":if(e<d){return -1}if(e>d){return 1}return 0;case"string":case"text":e=String(e).toLowerCase();d=String(d).toLowerCase();break}}else{if(a.jqx.dataFormat.isNumber(e)&&a.jqx.dataFormat.isNumber(d)){if(e<d){return -1}if(e>d){return 1}return 0}else{if(a.jqx.dataFormat.isDate(e)&&a.jqx.dataFormat.isDate(d)){if(e<d){return -1}if(e>d){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(e)&&!a.jqx.dataFormat.isNumber(d)){e=String(e).toLowerCase();d=String(d).toLowerCase()}}}}}try{if(e<d){return -1}if(e>d){return 1}}catch(f){var h=f}return 0};this._equals=function(e,d){return(this._compare(e,d)===0)};this.evaluate=function(m){if(this.scheduler.serverProcessing){return m}var d=new Array();if(this.filters.length){var g=new Array();var l=function(p,t){for(var r=0;r<p.length;r++){var s=p[r];s._visible=true;var n=undefined;for(var q=0;q<this.filters.length;q++){var o=this.filters[q].filter;var u=s[this.filters[q].datafield];var v=o.evaluate(u);if(n==undefined){n=v}else{if(o.operator=="or"){n=n||v}else{n=n&&v}}}s._visible=false;if(n||s.aggregate){s._visible=true;t.push(s);g[s.uid]=s}}};if(!this._filteredData){if(this.source.hierarchy||(this.scheduler.source.hierarchy&&this.scheduler.source.hierarchy.length>0)){var k=new Array();var h=function(o,p){for(var n=0;n<p.length;n++){var q=p[n];k.push(q);if(q.records&&q.records.length>0){h(q,q.records)}}};h(null,m);l.call(this,k,d);for(var e=0;e<d.length;e++){var f=d[e];while(f.parent){var j=f.parent;if(!g[j.uid]){j._visible=true;g[j.uid]=j}f=j}}d=m}else{l.call(this,m,d)}this._filteredData=d;this.rows=d}else{this.rows=this._filteredData}}else{this.rows=m}return this.rows};this.getid=function(k,e,f){if(a(k,e).length>0){return a(k,e).text()}if(this.rows&&k!=""&&k!=undefined&&this.rows.length>0){var j=this.rows[this.rows.length-1][k];if(j==null){j=null}for(var g=1;g<=100;g++){var h=this.scheduler.appointmentsByKey[g+j];if(!h){if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){var h=this.scheduler.appointmentsByKey["jqx"+j+g];if(h){continue}return"jqx"+j+g}return j+g}}}if(k!=undefined){if(k.toString().length>0){var d=a(e).attr(k);if(d!=null&&d.toString().length>0){if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){return"jqx"+d}return d}}}if(this.rows&&this.rows.length>0){var h=this.scheduler.appointmentsByKey[f];if(h){var j=this.rows[this.rows.length-1][k];if(j==null){j=""}for(var g=1;g<=1000;g++){var h=this.scheduler.appointmentsByKey[g+j];if(!h){if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){var h=this.scheduler.appointmentsByKey["jqx"+j+g];if(h){continue}return"jqx"+j+g}return j+g}}}}if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){var h=this.scheduler.appointmentsByKey["jqx"+f];if(!h){return"jqx"+f}else{for(var g=f+1;g<=100;g++){var h=this.scheduler.appointmentsByKey["jqx"+g];if(!h){var h=this.scheduler.appointmentsByKey["jqx"+g];if(h){continue}return"jqx"+g}}}}return f};this.generatekey=function(){var d=function(){return(((1+Math.random())*16)|0)};return(""+d()+d()+"-"+d()+"-"+d()+"-"+d()+"-"+d())};return this}})(jqxBaseFramework);(function(a){if(!a.jqx.scheduler){a.jqx.scheduler={}}a.jqx.scheduler.utilities={weekDays:{Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6},guid:function(){function b(){return Math.floor((1+Math.random())*65536).toString(16).substring(1)}return b()+b()},areWeekDaysIncluded:function(d,c){var b=false;a.each(d,function(e,f){if(f===c){b=true;return false}});return b},getStartOfDay:function(c){var b=new a.jqx.date(c.year(),c.month(),c.day(),0,0,0);b.timeZone=c.timeZone;return b},getEndOfDay:function(c){var b=new a.jqx.date(c.year(),c.month(),c.day(),23,59,59);b.timeZone=c.timeZone;return b},getDaysCount:function(d,c){var b=1;while(d<c){if(d.day()!=c.day()){b++}d=d.addDays(1)}return b},getStartOfWeek:function(e,g){var c=e.dayOfWeek();var b=g.firstDay;if(c<b){c+=7}var d=c-b;var f=e.addDays(-d);return f.date()},getEndOfWeek:function(d,e,c){var f=7;var b=that.getStartOfWeek(d,dateTimeFormat,c);return b.addDays(f)},getEndOfMonth:function(d,e){var c=d.daysInMonth();var b=new a.jqx.date(d.year(),d.month(),c,23,59,59);b.timeZone=d.timeZone;return b},rangeIntersection:function(i,h,f,e){var g=i.valueOf();var d=f.valueOf();var c=h.valueOf();var b=e.valueOf();if(d>=g&&d<c){return true}if(d<g&&b>g){return true}if(g==d||c==b){return true}if(g<d){if(c>d&&c<b){return true}if(c>b){return true}}else{if(b>g&&b<c){return true}if(b>c){return true}}return false},rangeContains:function(e,d,c,b){return(e<=c&&b<=d)},monthDays:[31,28,31,30,31,30,31,31,30,31,30,31],msPerDay:1000*60*60*24,maxYear:9999,ORDINAL_BASE:new Date(1970,0,1),getYearDay:function(b){var c=new Date(b.getFullYear(),b.getMonth(),b.getDate());return Math.ceil((c-new Date(b.getFullYear(),0,1))/a.jqx.scheduler.utilities.msPerDay)+1},isLeapYear:function(b){if(b instanceof Date){b=b.getFullYear()}return((b%4===0)&&(b%100!==0))||(b%400===0)},tzOffset:function(b){return b.getTimezoneOffset()*60*1000},monthRange:function(c,d){var b=new Date(c,d,1);return[a.jqx.scheduler.utilities.getWeekday(b),a.jqx.scheduler.utilities.getMonthDays(b)]},getMonthDays:function(b){var c=b.getMonth();return c==1&&a.jqx.scheduler.utilities.isLeapYear(b)?29:a.jqx.scheduler.utilities.monthDays[c]},getWeekday:function(b){var c=[6,0,1,2,3,4,5];return c[b.getDay()]},combine:function(b,c){c=c||b;return new Date(b.getFullYear(),b.getMonth(),b.getDate(),c.getHours(),c.getMinutes(),c.getSeconds())},sort:function(b){b.sort(function(d,c){return d.getTime()-c.getTime()})},timeToUntilString:function(e){var c=new Date(e);var b,f=[c.getUTCFullYear(),c.getUTCMonth()+1,c.getUTCDate(),"T",c.getUTCHours(),c.getUTCMinutes(),c.getUTCSeconds(),"Z"];for(var d=0;d<f.length;d++){b=f[d];if(!/[TZ]/.test(b)&&b<10){f[d]="0"+String(b)}}return f.join("")},untilStringToDate:function(d){var b=/^(\d{4})(\d{2})(\d{2})(T(\d{2})(\d{2})(\d{2})Z)?$/;var c=b.exec(d);if(!c){throw new Error("Invalid UNTIL value: "+d)}return new Date(Date.UTC(c[1],c[2]-1,c[3],c[5]||0,c[6]||0,c[7]||0))},Time:function(b,d,c){this.hour=b;this.minute=d;this.second=c;this.that=this;this.getHours=function(){return that.hour};this.getMinutes=function(){return that.minute},this.getSeconds=function(){return that.second},this.getTime=function(){return((that.hour*60*60)+(that.minute*60)+that.second)*1000}}};a.jqx.scheduler.appointment=function(){var c=this;c.from=new a.jqx.date();c.to=new a.jqx.date().addHours(1);c.subject="";c.description="";c.location="";c.tooltip="";c.hidden=false;c.resourceId=null;c.id="";c.background=null;c.color=null;c.borderColor=null;c.status="busy";c.style=null;c.exceptions=new Array();c.exceptionDates=new Array();c.recurrencePattern=null;c.recurrenceException=new Array();c.occurrenceEnumerator=null;c.rootAppointment=null;c.hiddenByResourceId=false;c.draggable=true;c.resizable=true;c.recurrentAppointment=false;c.allDay=false;c.readOnly=false;c.showStatus=true;c.timeZone=null;c.scheduler=null;c.elements=new Array();c.duration=function(){var e=c.to-c.from;var f=e*10000;return new a.jqx.timeSpan(f)};c.range=function(){if(!c.allDay){return{from:c.from,to:c.to}}else{return{from:a.jqx.scheduler.utilities.getStartOfDay(c.from),to:a.jqx.scheduler.utilities.getEndOfDay(c.to)}}};c.clearRecurrence=function(){if(c.recurrencePattern){c.exceptions=new Array();c.exceptionDates=new Array();c.recurrencePattern=null;c.recurrenceException=new Array();c.hidden=false}};c.isAllDayAppointment=function(){return this.duration().days()>=1||this.allDay};c.cloneAppointmentAttributes=function(e){e.subject=c.subject;e.description=c.description;e.location=c.location;e.tooltip=c.tooltip;e.resourceId=c.resourceId;e.category=c.category;e.status=c.status;e.rootAppointment=c;e.color=c.color;e.borderColor=c.borderColor;e.background=c.background;e.hidden=c.hidden;e.timezone=c.timeZone;e.style=c.style;e.hiddenByResourceId=c.hiddenByResourceId};c.createOccurrence=function(g){if(g==null){return null}var f=new a.jqx.scheduler.appointment();f.allDay=c.allDay;var e=c.duration();if(c.allDay){e=new a.jqx.timeSpan(10000*(c.to-c.from))}f.from=g;f.to=g.add(e);f.occurrenceFrom=g.clone();f.subject=c.subject;f.description=c.description;f.location=c.location;f.tooltip=c.tooltip;f.resourceId=c.resourceId;f.category=c.category;f.status=c.status;f.rootAppointment=c;f.color=c.color;f.borderColor=c.borderColor;f.background=c.background;f.recurrentAppointment=true;f.timeZone=c.timeZone;f.style=c.style;f.hiddenByResourceId=c.hiddenByResourceId;if(c.hiddenByResourceId){f.hidden=true}f.id=c.id+"."+a.jqx.scheduler.utilities.guid();c.hidden=true;c.occurrenceIndex++;return f};c.clone=function(){var e=new a.jqx.scheduler.appointment();e.allDay=c.allDay;e.from=c.from.clone();e.to=c.to.clone();e.subject=c.subject;e.description=c.description;e.location=c.location;e.tooltip=c.tooltip;e.resourceId=c.resourceId;e.category=c.category;e.status=c.status;e.color=c.color;e.borderColor=c.borderColor;e.background=c.background;e.style=c.style;e.timeZone=c.timeZone;e.hiddenByResourceId=c.hiddenByResourceId;if(c.hiddenByResourceId){e.hidden=true}e.id=c.id+"."+a.jqx.scheduler.utilities.guid();return e};c.isRecurrentAppointment=function(){return c.recurrentAppointment||c.recurrencePattern!=null};c.anyExceptions=function(){return c.exceptions!=null&&c.exceptions.length>0};c.anyOccurrences=function(){return c.occurrenceEnumerator!=null&&c.occurrenceEnumerator.getNextAppointment()};c.isException=function(){var g=c.rootAppointment||this;if(!g.recurrenceException){return false}for(var f=0;f<g.recurrenceException.length;f++){var e=g.recurrenceException[f];if(c.occurrenceFrom&&e.equals(c.occurrenceFrom)){return true}}return false};c.getOccurrences=function(h,g){c.occurrenceIndex=0;var f=h!==null?h:c.from;var e=new a.jqx.scheduler.recurrentAppointmentsList(c,c.calendar,f,g,c.scheduler);c.occurrences=e.list;return e.list};if(arguments.length===1){if(a.type(arguments[0])=="object"){for(var b in arguments[0]){var d=arguments[0][b];if(this[b]!==undefined){this[b]=d}}}else{c.from=arguments[0];c.to=new a.jqx.date(c.from).addHours(1)}}else{if(arguments.length===2){c.from=arguments[0];c.to=arguments[1]}else{if(arguments.length===3){c.from=arguments[0];c.to=arguments[1];c.subject=arguments[2]}else{if(arguments.length===3){c.from=arguments[0];c.to=arguments[1];c.subject=arguments[2];c.description=arguments[3]}}}}if(c.recurrencePattern!=null){c.recurrencePattern.setFrom(c.from)}};a.jqx.scheduler.recurrentAppointmentsList=function(){var b=this;b.recurrentAppointment=null;b.currentTime=null;b.calendar=a.jqx.scheduler.calendar;b.from=new a.jqx.date(0);b.to=new a.jqx.date(9999,12,31);b.foundItems=0;b.list=new Array();b.scheduler=null;b.getOccurrences=function(c,e,d){if(c==undefined){return b.list}return new a.jqx.scheduler.recurrentAppointmentsList(c,b.calendar,e,d).list};b.current=function(){return b.recurrentAppointment.createOccurrence(b.currentTime)};b.fillList=function(){b.currentTime=null;b.foundItems=0;b.list=new Array();var c=b.recurrentAppointment.recurrencePattern;c.step=0;c.current=0;c.currentYearDay=0;if(c==null){return false}while(b.getNextAppointment(c)){var d=b.current();if(d){b.list.push(d)}}};b.getNextAppointment=function(h){if(b.recurrentAppointment==null){return false}var d=4294967295;var j=this.scheduler._views[this.scheduler._view].type;var l=this.scheduler._views[this.scheduler._view];var f=0;switch(h.freq){case"weekly":f=7;break;case"monthly":f=31;break;case"yearly":f=365;break}for(var e=0;e<d;e++){var k=h.getNewOccurenceDate();h.currentTime=k;if((h.to<k&&h.to.addDays(f)>=k)||(b.to<k&&b.to.addDays(f)>=k)){b.currentTime=null;return true}if(h.to.addDays(f)<k||b.to.addDays(f)<k){b.currentTime=null;return false}var g=true;g=b.getCanSetTime(h,k,g);if(h.canCreateNewOccurence(k,b.calendar)){var c=true;if(false===l.showWeekends){if(k.dayOfWeek()==6||k.dayOfWeek()==0){c=false}}if(c){b.foundItems++}}if(!g){continue}b.currentTime=k;if(b.foundItems>h.count){return false}return true}return false};b.getCanSetTime=function(c,e,d){if(!c.canCreateNewOccurence(e,b.calendar)){d=false}if(e<b.from&&e.add(b.recurrentAppointment.duration())<=b.from){d=false}if(b.to<=e){d=false}return d};b.isException=function(f,c,g){var e=b.recurrentAppointment.exceptions;for(var d=0;d<e.length;d++){if(g.isDateInExceptionAppointment(f,c,e[d])){if(-1===g.newExceptions.indexOf(e[d])){return true}}}return false};if(arguments&&arguments.length>0){b.recurrentAppointment=arguments[0];if(arguments[1]){b.calendar=arguments[1]}if(arguments[2]){b.from=arguments[2]}if(arguments[3]){b.to=arguments[3]}if(arguments[4]){b.scheduler=arguments[4]}if(arguments[2]===undefined){b.from=new a.jqx.date(0);b.to=new a.jqx.date(9999,12,31)}b.fillList()}return b};a.jqx.scheduler.recurrencePattern=function(){var c=this;var b={from:new a.jqx.date(0),to:new a.jqx.date(9999,12,31),count:1000,interval:1,exceptions:new Array(),newExceptions:new Array(),month:1,day:1,current:0,currentYearDay:0,step:0,days:[],bynweekday:[],isEveryWeekDay:true,timeZone:null,weekDays:{Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6},freq:"daily",bymonth:null,bymonthday:null,byyearday:null,byweekno:null,byweekday:null};a.extend(true,c,b);c.getNewOccurenceDate=function(){var o=function(n,C){var k=0,D=[];if(n instanceof Array){for(;k<C;k++){D[k]=[].concat(n)}}else{for(;k<C;k++){D[k]=n}}return D};var d=function(k,i){var n=k%i;return(n*i<0)?n+i:n};var v=function(D,k){if(arguments.length===1){k=D;D=0}var n=[];for(var C=D;C<k;C++){n.push(C)}return n};var u=[0,31,60,91,121,152,182,213,244,274,305,335,366];var l=[0,31,59,90,120,151,181,212,243,273,304,334,365];var t=c.from.year();var j=[6,0,1,2,3,4,5];var r=function(i){c.yearlen=i%4==0&&(i%100!=0||i%400==0)?366:365;c.nextyearlen=(1+i)%4==0&&((1+i)%100!=0||(1+i)%400==0)?366:365;var k=new Date(i,0,1);var C=j[new Date(i,0,1).getDay()];var n=(function(){for(var D=[],E=0;E<55;E++){D=D.concat(v(7))}return D}());if(c.yearlen==365){c.wdaymask=n.slice(C);c.mrange=[].concat(l)}else{c.wdaymask=n.slice(C);c.mrange=[].concat(u)}};r(t);switch(c.freq){case"daily":default:var g=c.from.add(new a.jqx.timeSpan(c.step*c.interval,0,0,0));c.step++;return g;case"weekly":if(c.byweekday){var g=new a.jqx.date(c.from,c.timeZone);g=g.addDays(7*(c.step*c.interval));if(c.step>=1){g=g.addDays(-c.from.dayOfWeek());var s=g.addDays(7)}else{var s=g.addDays(7-c.from.dayOfWeek())}var e=g;for(var z=0;z<7;z++){if(j[e.dayOfWeek()]===c.byweekday[c.current]){break}if(e>=s){break}e=e.addDays(1)}g=e;c.current++;if(undefined==c.byweekday[c.current]){c.current=0;c.step++}}return g;case"monthly":if(c.bynweekday.length>0){var g=new a.jqx.date(c.from.year(),c.from.month(),1,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths(c.step*c.interval);var B=g.month();var f=[c.mrange.slice(B-1,B+1)][0];var h=f[0];var m=f[1];m-=1;c.nwdaymask=o(0,c.yearlen);c.step++;for(var y=0;y<c.bynweekday.length;y++){var q=c.bynweekday[y][0],x=c.bynweekday[y][1];if(x<0){z=m+(x+1)*7;z-=d(c.wdaymask[z]-q,7)}else{z=h+(x-1)*7;z+=d(7-c.wdaymask[z]+q,7)}if(h<=z&&z<=m){c.nwdaymask[z]=1}}var w=z+1;var A=w-h;var g=new a.jqx.date(c.from.year(),c.from.month(),A,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths((c.step-1)*c.interval)}else{if(c.bymonthday.length>0){var g=new a.jqx.date(c.from.year(),c.from.month(),c.bymonthday[c.current],c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths(c.step*c.interval);c.current++;if(!c.bymonthday[c.current]){c.current=0;c.step++}}else{var g=new a.jqx.date(c.from.year(),c.from.month(),c.day,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths(c.step*c.interval);c.step++}}return g;case"yearly":if(c.bymonth&&c.bymonth.length>0){if(c.bynweekday.length>0){var g=new a.jqx.date(c.from.year(),c.bymonth[c.current],1,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);r(g.year());var B=g.month();var f=[c.mrange.slice(B-1,B+1)][0];var h=f[0];var m=f[1];m-=1;c.nwdaymask=o(0,c.yearlen);for(var y=0;y<c.bynweekday.length;y++){var q=c.bynweekday[y][0],x=c.bynweekday[y][1];if(x<0){z=m+(x+1)*7;z-=d(c.wdaymask[z]-q,7)}else{z=h+(x-1)*7;z+=d(7-c.wdaymask[z]+q,7)}if(h<=z&&z<=m){c.nwdaymask[z]=1}}var w=z+1;var A=w-h;g=new a.jqx.date(g.year(),c.bymonth[c.current],A,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;c.step++}else{if(c.byyearday.length>0){var g=new a.jqx.date(c.from.year(),c.bymonth[c.current],c.byyearday[c.currentYearDay],c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.currentYearDay++;if(!c.byyearday[c.currentYearDay]){c.currentYearDay=0;c.current++;if(!c.bymonth[c.current]){c.current=0;c.step++}}}else{var g=new a.jqx.date(c.from.year(),c.bymonth[c.current],c.from.day(),c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.current++;if(!c.bymonth[c.current]){c.current=0;c.step++}}}}else{if(c.byyearday&&c.byyearday.length>0){var g=new a.jqx.date(c.from.year(),c.from.month(),c.byyearday[c.current],c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.current++;if(!c.byyearday[c.current]){c.current=0;c.step++}}else{if(c.byweekno!=null){var p=function(n,k){var i=1;var C=new a.jqx.date(k.year(),1,1,k.hour(),k.minute(),k.second());C.timeZone=c.timeZone;while(i!=n){C=C.addDays(7);i++;if(i>53){break}}while(a.jqx.scheduler.utilities.getWeekday(C.toDate())!=c.wkst){C=C.addDays(1)}return C};var g=c.from.addYears(c.step*c.interval);g=p(c.byweekno[c.current],g);if(c.byweekday){var e=g;for(var z=0;z<7;z++){if(j[e.dayOfWeek()]===c.byweekday[c.currentYearDay]){break}e=e.addDays(1)}g=e;c.currentYearDay++;if(!c.byweekday[c.currentYearDay]){c.currentYearDay=0;c.current++;if(!c.byweekno[c.current]){c.current=0;c.step++}}}else{c.current++;if(!c.byweekno[c.current]){c.current=0;c.step++}}}else{var g=new a.jqx.date(c.from.year(),c.month,c.day,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.step++}}}return g}};c.isDateInExceptionAppointment=function(d,e,f){switch(c.freq){case"daily":case"weekly":default:return d.year()==f.from.year()&&d.dayOfYear()==f.from.dayOfYear()}};c.createNewPattern=function(){if(c.ical){var d=new a.jqx.scheduler.recurrencePattern(c.ical);return d}else{var d=new a.jqx.scheduler.recurrencePattern();d.from=c.from;d.to=c.to;d.count=c.count;d.interval=c.interval;d.exceptions=c.exceptions;d.newExceptions=c.newExceptions;d.weekDays=c.weekDays;d.isEveryWeekDay=c.isEveryWeekDay;d.month=c.month;d.day=c.day;d.current=c.current;d.currentYearDay=c.currentYearDay;d.step=c.step;d.days=c.days;d.bynweekday=c.bynweekday;d.bymonth=c.bymonth;d.bymonthday=c.bymonthday;d.byyearday=c.byyearday;d.byweekno=c.byweekno;d.byweekday=c.byweekday;d.freq=d.freq;d.timeZone=d.timeZone;return d}};c.equals=function(e){var d=c.from==e.from&&c.to==e.to&&c.count===e.count&&c.interval===e.interval&&c.day===e.day&&c.month===e.month;return d};c.isDayOfWeekIncluded=function(e){var d=e.dayOfWeek();return a.jqx.scheduler.utilities.areWeekDaysIncluded(c.weekDays,d)};c.getWeekIndexFromDate=function(g,f){var e=f.firstDay;var h=a.jqx.scheduler.utilities.getStartOfWeek(c.from,f,e);var d=new a.jqx.timeSpan(g.subtract(h));return parseInt(d.days()/7)};c.canCreateNewOccurence=function(e,g){var d=e.toDate();switch(c.freq){case"daily":default:if(c.bymonth){if(c.bymonth.indexOf(e.month())==-1){return false}}if(c.isEveryWeekDay){if(!c.isDayOfWeekIncluded(e,g)){return false}else{return true}}else{return true}break;case"weekly":var f=c.getWeekIndexFromDate(e,g);if(c.bymonth){if(c.bymonth.indexOf(e.month())==-1){return false}}if((f%c.interval)!=0){return false}if(c.weekDays=={}){if(c.from.dayOfWeek()!=start.dayOfWeek()){return false}}else{if(!c.isDayOfWeekIncluded(e,g)){return false}}break;case"monthly":case"yearly":if(c.bymonth){if(c.bymonth.indexOf(e.month())==-1){return false}}if(e<c.from){return false}break}return true};c.toString=function(){var d={};d.dtstart=this.from.toDate();d.until=this.to?this.to.toDate():null;d.count=this.count;d.bymonth=this.bymonth?this.bymonth:new Array().push(this.month);var e={};e.YEARLY=0;e.MONTHLY=1;e.WEEKLY=2;e.DAILY=3;e.HOURLY=4;e.MINUTELY=5;e.SECONDLY=6;d.freq=e[this.freq.toUpperCase()];d.byweekday=new Array();var g=["MO","TU","WE","TH","FR","SA","SU"];a.each(this.weekDays,function(){d.byweekday.push(this)});if(this.byyearday!=undefined){d.byyearday=this.byyearday}if(this.byweekno!=undefined){d.byweekno=this.byweekno}d.bymonthday=this.bymonthday;d.wkst=g[this.wkst];d.interval=this.interval;var f=new a.jqx.ICalRule(d);return f.toString()};c.init=function(j){var d=new a.jqx.ICalRule(c.ical,j);var f=d.options;c.from=f.dtstart?new a.jqx.date(f.dtstart,c.timeZone):c.from;c.count=f.count!=undefined?f.count:c.count;c.freq=d.FREQUENCIES[f.freq].toLowerCase();c.interval=f.interval!=undefined?f.interval:c.interval;c.to=f.until?new a.jqx.date(f.until,c.timeZone):c.to;c.wkst=f.wkst;c.bymonth=f.bymonth;if(c.bymonth&&c.bymonth.length>0){c.month=c.bymonth[0]}else{c.month=c.from.month()}c.day=c.from.day();if(f.byweekday!=undefined){var h={Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6};c.weekDays={};for(var g=0;g<f.byweekday.length;g++){var e=f.byweekday[g];switch(e){case 0:c.weekDays.Monday=1;break;case 1:c.weekDays.Tuesday=2;break;case 2:c.weekDays.Wednesday=3;break;case 3:c.weekDays.Thursday=4;break;case 4:c.weekDays.Friday=5;break;case 5:c.weekDays.Saturday=6;break;case 6:c.weekDays.Sunday=0;break}}c.byweekday=f.byweekday}c.byweekno=f.byweekno;if(f.bynweekday){c.bynweekday=f.bynweekday}if(f.bymonthday!=undefined){c.bymonthday=f.bymonthday.sort();if(c.bymonthday[0]){c.day=c.bymonthday[0]}}if(f.byyearday!=undefined){c.day=f.byyearday[0];c.byyearday=f.byyearday.sort()}return f};c.setFrom=function(d){c.from=d.clone();if(c.ical){c.init(d)}};if(arguments.length==1){c.ical=arguments[0];c.init()}return c};a.jqx.scheduler.calendar={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:","};a.jqx.ICalRule=function(u,n){var D=this;var m=function(R,j){if(arguments.length===1){j=R;R=0}var k=[];for(var v=R;v<j;v++){k.push(v)}return k};var A=function(k,v){var j=0,R=[];if(k instanceof Array){for(;j<v;j++){R[j]=[].concat(k)}}else{for(;j<v;j++){R[j]=k}}return R};var C=function(i){return(i instanceof Array&&i.length==0)?false:Boolean(i)};var B=function(i,j){return i.indexOf(j)!=-1};var G=[].concat(A(1,31),A(2,28),A(3,31),A(4,30),A(5,31),A(6,30),A(7,31),A(8,31),A(9,30),A(10,31),A(11,30),A(12,31),A(1,7));var s=[].concat(A(1,31),A(2,29),A(3,31),A(4,30),A(5,31),A(6,30),A(7,31),A(8,31),A(9,30),A(10,31),A(11,30),A(12,31),A(1,7));var h=m(1,29),g=m(1,30),P=m(1,31),O=m(1,32);var J=[].concat(O,g,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));var b=[].concat(O,h,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));h=m(-28,0);g=m(-29,0);P=m(-30,0);O=m(-31,0);var K=[].concat(O,g,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));var e=[].concat(O,h,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));var c=[0,31,60,91,121,152,182,213,244,274,305,335,366];var z=[0,31,59,90,120,151,181,212,243,273,304,334,365];var q=(function(){for(var j=[],k=0;k<55;k++){j=j.concat(m(7))}return j}());var f=function(j,k){var i=this;if(k===0){throw new Error("Can't create weekday with n == 0")}this.weekday=j;this.n=k;this.nth=function(v){return i.n==v?i:new f(i.weekday,v)};this.equals=function(v){return i.weekday==v.weekday&&i.n==v.n};this.toString=function(){var v=["MO","TU","WE","TH","FR","SA","SU"][i.weekday];if(this.n){v=(i.n>0?"+":"")+String(i.n)+v}return v};this.getJsWeekday=function(){return i.weekday==6?0:i.weekday+1}};this.FREQUENCIES=["YEARLY","MONTHLY","WEEKLY","DAILY","HOURLY","MINUTELY","SECONDLY"];this.YEARLY=0;this.MONTHLY=1;this.WEEKLY=2;this.DAILY=3;this.HOURLY=4;this.MINUTELY=5;this.SECONDLY=6;this.MO=new f(0);this.TU=new f(1);this.WE=new f(2);this.TH=new f(3);this.FR=new f(4);this.SA=new f(5);this.SU=new f(6);var d={freq:null,dtstart:null,interval:1,wkst:D.MO,count:null,until:null,bysetpos:null,bymonth:null,bymonthday:null,byyearday:null,byweekno:null,byweekday:null,byhour:null,byminute:null,bysecond:null,byeaster:null};this._string=null;this.toString=function(){var aa=this.origOptions;var Y,Z,V,W,U,k=[];Z=Object.keys(aa);V=Object.keys(d);for(var R=0;R<Z.length;R++){if(!B(V,Z[R])){continue}Y=Z[R].toUpperCase();W=aa[Z[R]];U=[];if(W===null||W instanceof Array&&!W.length){continue}switch(Y){case"FREQ":W=D.FREQUENCIES[aa.freq];break;case"WKST":W=W.toString();break;case"BYWEEKDAY":Y="BYDAY";if(!(W instanceof Array)){W=[W]}for(var T,v=0;v<W.length;v++){T=W[v];if(T instanceof f){}else{if(T instanceof Array){T=new f(T[0],T[1])}else{T=new f(T)}}U[v]=T.toString()}W=U;break;case"DTSTART":case"UNTIL":W=a.jqx.scheduler.utilities.timeToUntilString(W);break;default:if(W instanceof Array){for(var v=0;v<W.length;v++){U[v]=String(W[v])}W=U}else{W=String(W)}}k.push([Y,W])}var X=[];for(var R=0;R<k.length;R++){var S=k[R];X.push(S[0]+"="+S[1].toString())}return X.join(";")};this.parseString=function(v){v=v.replace(/^\s+|\s+$/,"");if(!v.length){return null}var S,R,X,W,T,Y=v.split(";"),aa={};for(S=0;S<Y.length;S++){T=Y[S].split("=");X=T[0];W=T[1];if(X==""){continue}switch(X){case"COUNT":case"INTERVAL":case"BYSETPOS":case"BYMONTH":case"BYMONTHDAY":case"BYYEARDAY":case"BYWEEKNO":case"BYHOUR":case"BYMINUTE":case"BYSECOND":if(W.indexOf(",")!=-1){W=W.split(",");for(R=0;R<W.length;R++){if(/^[+-]?\d+$/.test(W[R])){W[R]=Number(W[R])}}}else{if(/^[+-]?\d+$/.test(W)){W=Number(W)}}X=X.toLowerCase();aa[X]=W;break;case"BYDAY":var k,U,V,Z=W.split(",");aa.byweekday=[];for(R=0;R<Z.length;R++){V=Z[R];if(V.length==2){U=D[V];aa.byweekday.push(U)}else{V=V.match(/^([+-]?\d)([A-Z]{2})$/);k=Number(V[1]);U=V[2];U=D[U].weekday;aa.byweekday.push(new f(U,k))}}break;case"FREQ":aa.freq=D[W];break;case"WKST":aa.wkst=D[W];break;case"DTSTART":aa.dtstart=a.jqx.scheduler.utilities.untilStringToDate(W);break;case"UNTIL":aa.until=a.jqx.scheduler.utilities.untilStringToDate(W);break;case"BYEASTER":aa.byeaster=Number(W);break;default:throw new Error("Unknown ICalRule property '"+X+"'")}}D.options=aa;return aa};if(a.type(u)==="string"){this.options=this.parseString(u)}else{this.options=u||{}}var u=this.options;if(!Array.prototype.forEach){Array.prototype.forEach=function(V,j){var R,v;if(this==null){throw new TypeError(" this is null or not defined")}var U=Object(this);var i=U.length>>>0;if(typeof V!=="function"){throw new TypeError(V+" is not a function")}if(arguments.length>1){R=j}v=0;while(v<i){var S;if(v in U){S=U[v];V.call(R,S,v,U)}v++}}}if(!Object.keys){Object.keys=(function(){var k=Object.prototype.hasOwnProperty,v=!({toString:null}).propertyIsEnumerable("toString"),j=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],i=j.length;return function(T){if(typeof T!=="object"&&(typeof T!=="function"||T===null)){throw new TypeError("Object.keys called on non-object")}var R=[],U,S;for(U in T){if(k.call(T,U)){R.push(U)}}if(v){for(S=0;S<i;S++){if(k.call(T,j[S])){R.push(j[S])}}}return R}}())}this.origOptions={};var E=[],w=Object.keys(this.options),p=Object.keys(d);w.forEach(function(i){this.origOptions[i]=this.options[i];if(!B(p,i)){E.push(i)}},this);if(E.length){throw new Error("Invalid options: "+E.join(", "))}if(!D.FREQUENCIES[this.options.freq]&&u.byeaster===null){throw new Error("Invalid Frequency: "+String(u.freq))}p.forEach(function(i){if(!B(w,i)){u[i]=d[i]}});var x=this.options;if(x.byeaster!==null){x.freq=this.YEARLY}if(!x.dtstart){x.dtstart=new Date();x.dtstart.setMilliseconds(0)}if(n){x.dtstart=n.toDate()}if(x.wkst===null){x.wkst=this.MO.weekday}else{if(typeof x.wkst=="number"){}else{x.wkst=x.wkst.weekday}}if(x.bysetpos!==null){if(typeof x.bysetpos=="number"){x.bysetpos=[x.bysetpos]}for(var N=0;N<x.bysetpos.length;N++){var H=x.bysetpos[N];if(H==0||!(-366<=H&&H<=366)){throw new Error("bysetpos must be between 1 and 366, or between -366 and -1")}}}if(!(C(x.byweekno)||C(x.byyearday)||C(x.bymonthday)||x.byweekday!==null||x.byeaster!==null)){switch(x.freq){case this.YEARLY:if(!x.bymonth){x.bymonth=x.dtstart.getMonth()+1}x.bymonthday=x.dtstart.getDate();break;case this.MONTHLY:x.bymonthday=x.dtstart.getDate();break;case this.WEEKLY:x.byweekday=a.jqx.scheduler.utilities.getWeekday(x.dtstart);break}}if(x.bymonth!==null&&!(x.bymonth instanceof Array)){x.bymonth=[x.bymonth]}if(x.byyearday!==null&&!(x.byyearday instanceof Array)){x.byyearday=[x.byyearday]}if(x.bymonthday===null){x.bymonthday=[];x.bynmonthday=[]}else{if(x.bymonthday instanceof Array){var Q=[],I=[];for(N=0;N<x.bymonthday.length;N++){var H=x.bymonthday[N];if(H>0){Q.push(H)}else{if(H<0){I.push(H)}}}x.bymonthday=Q;x.bynmonthday=I}else{if(x.bymonthday<0){x.bynmonthday=[x.bymonthday];x.bymonthday=[]}else{x.bynmonthday=[];x.bymonthday=[x.bymonthday]}}}if(x.byweekno!==null&&!(x.byweekno instanceof Array)){x.byweekno=[x.byweekno]}if(x.byweekday===null){x.bynweekday=null}else{if(typeof x.byweekday=="number"){x.byweekday=[x.byweekday];x.bynweekday=null}else{if(x.byweekday instanceof f){if(!x.byweekday.n||x.freq>this.MONTHLY){x.byweekday=[x.byweekday.weekday];x.bynweekday=null}else{x.bynweekday=[[x.byweekday.weekday,x.byweekday.n]];x.byweekday=null}}else{var r=[],F=[];for(N=0;N<x.byweekday.length;N++){var o=x.byweekday[N];if(typeof o=="number"){r.push(o)}else{if(!o.n||x.freq>this.MONTHLY){r.push(o.weekday)}else{F.push([o.weekday,o.n])}}}x.byweekday=C(r)?r:null;x.bynweekday=C(F)?F:null}}}if(x.byhour===null){x.byhour=(x.freq<this.HOURLY)?[x.dtstart.getHours()]:null}else{if(typeof x.byhour=="number"){x.byhour=[x.byhour]}}if(x.byminute===null){x.byminute=(x.freq<this.MINUTELY)?[x.dtstart.getMinutes()]:null}else{if(typeof x.byminute=="number"){x.byminute=[x.byminute]}}if(x.bysecond===null){x.bysecond=(x.freq<this.SECONDLY)?[x.dtstart.getSeconds()]:null}else{if(typeof x.bysecond=="number"){x.bysecond=[x.bysecond]}}if(x.freq>=this.HOURLY){this.timeset=null}else{this.timeset=[];if(x.byhour){for(N=0;N<x.byhour.length;N++){var t=x.byhour[N];for(var M=0;M<x.byminute.length;M++){var l=x.byminute[M];for(var L=0;L<x.bysecond.length;L++){var y=x.bysecond[L];this.timeset.push(new a.jqx.scheduler.utilities.Time(t,l,y))}}}}a.jqx.scheduler.utilities.sort(this.timeset)}return this}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxangular.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxangular.js
new file mode 100644 (file)
index 0000000..b0ae2ee
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+if(!jqxBaseFramework){var jqxBaseFramework=window.minQuery||window.jQuery}(function(h,q,i){if(!q){return}h.jqx=h.jqx||{};h.jqx.AMD=false;var b=q.module("jqwidgets",[]);var u=q.module("jqwidgets-amd",[],function(){h.jqx.AMD=true});var f=null;var C=null;var v=null;var z=null;var s=null;var c=new Array();var D=new Array();var p=new Array();var r=new Array();var g=new Array();var d=new Array();var e={};var x=false;var l=function(){var E=document.getElementsByTagName("script");var G,F,H;for(G=0;F=E[G];G++){H=F.src;if(H.indexOf("jqxcore.js")>=0){var I=H.substring(0,H.indexOf("jqxcore.js"));break}}return I}();function y(I,J,E,G,F){if(G&&F){switch(I){case"jqxGrid":case"jqxDataTable":case"jqxTreeGrid":if(E.columns){var L=G.columns||G;var H=F.columns||F;if(L.length!=H.length){return false}var K={};h.each(L,function(M,O){var N=this;for(var P in this){if(N[P]!=H[M][P]){var Q=N.datafield||N.dataField;if(!K[Q]){K[Q]={}}K[Q][P]=N[P]}}});if(!h.isEmptyObject(K)){h.each(K,function(N,P){for(var O in P){var M=h(J).jqxProxy("getcolumnproperty",N,O);if(M!==P[O]){h(J).jqxProxy("setcolumnproperty",N,O,P[O])}}});return true}}break}}return false}function a(R,J,Q,I,N,M,E){var F=function(W){if(M==="jqxTree"||M==="jqxMenu"){return W}if(typeof W=="object"){if(W&&W._bindingUpdate!=null){return W}}var V={};var T=false;if(h.isArray(W)||(W instanceof Object&&!W.url&&!(W.localdata||W.localData))){if(M==="jqxChart"){return W}T=true;V.localData=W;V.type="array";if(W[0]){var U=new Array();if(h.type(W[0])=="object"){h.each(W[0],function(Y,Z){var aa={name:Y,type:h.type(Z)};U.push(aa)});V.datafields=U}}}else{if(W&&W.url){V=W}else{if(W&&(W.localdata||W.localData)){V=W}}}if(h.jqx.dataAdapter){var X=new h.jqx.dataAdapter(V);return X}else{if(T){return W}}return null};if(Q.jqxSource!=i){var O=R.$watchCollection(Q.jqxSource,function(V,U){if(V!=U){if(q.equals(V,U)){return}if(V&&U&&V._source&&U._source&&q.equals(V._source,U._source)){return}var T=F(V);h(J).jqxProxy({source:T});var W=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&W&&W.propertyChanged){W.propertyChanged("source",U,V)}}});E.push(O)}else{if(Q.jqxSettings!=i){var L={};var H=null;var P=f(Q.jqxSettings)(R);var K=J.controller();for(var G in K){if(P&&K[G]==P.source){H=G;break}}if(!H){for(var G in R){if(P&&R[G]==P.source){H=G;break}}}if(H){var S="";for(var G in R){if(R[G]==K){S=G;break}}if(S!=""){H=S+"."+H}var O=N.$watchCollection(H,function(W,V){if(W!=V){if(q.equals(W,V)){return}if(W&&V&&W._source&&V._source&&q.equals(W._source,V._source)){return}var U=h.isArray(W)||h.type(W)==="array";if(new Date()-L["jqxSettings.source"]>1000||L=={}||!L["jqxSettings.source"]||U){var T=F(W);h(J).jqxProxy({source:T});var X=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&X&&X.propertyChanged){X.propertyChanged("source",V,W)}L.property=new Date()}}});E.push(O)}var O=R.$watchCollection(Q.jqxSettings+".source",function(V,U){if(V!=U){if(q.equals(V,U)){return}if(V&&U&&V._source&&U._source&&q.equals(V._source,U._source)){return}if(new Date()-L.property>1000||!L["jqxSettings.property"]||L=={}){var T=F(V);h(J).jqxProxy({source:T});var W=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&W&&W.propertyChanged){W.propertyChanged("source",U,V)}L["jqxSettings.source"]=new Date()}}});E.push(O);var O=R.$watchCollection(Q.jqxSettings,function(V,U){if(!V){return}if(!U){var T=F(V.source);h(J).jqxProxy({source:T});return}if(V.source!=U.source){if(q.equals(V.source,U.source)){return}if(V&&U&&V.source&&U.source&&V.source._source&&U.source._source&&q.equals(V.source._source,U.source._source)){return}if(V.source&&U.source&&h.isArray(V.source)&&h.isArray(U.source)){if(A(V.source)==A(U.source)){return}}if(new Date()-L.property>1000||!L["jqxSettings.source"]||L=={}){var T=F(V.source);h(J).jqxProxy({source:T});var W=q.extend({},R.$eval(Q.jqxSettings));if(Q.jqxSettings&&W&&W.propertyChanged){W.propertyChanged("source",U.source,V.source)}L["jqxSettings.source"]=new Date()}}});E.push(O)}}return F(I)}function A(E){if(E==null){return""}var F="";h.each(E,function(H){var J=this;if(H>0){F+=", "}F+="[";var G=0;if(h.type(J)=="object"){for(var I in J){if(G>0){F+=", "}F+="{"+I+":"+J[I]+"}";G++}}else{if(G>0){F+=", "}F+="{"+H+":"+J+"}";G++}F+="]"});return F}function k(I,G,F,E,H,J){h.extend(h.jqx["_"+E+""].prototype,{definedInstance:function(){if(this.element&&this.element!==G[0]){return true}if(this.base&&this.base.element!==G[0]){return true}var K=this;h.each(J,function(N,O){K.addHandler(h(G),N,function(P){I.$parent?h.proxy(O,H)(P):O(P);if(I.$root.$$phase!="$apply"&&I.$root.$$phase!="$digest"){I.$apply()}})});var L=F.$attr;h.each(F,function(Q,R){if(Q.indexOf("jqxOn")>=0){var N=L[Q].substring(7);var P=h.camelCase(N);var O=R;K.addHandler(h(G),P,function(T){T.data=F.data||F.jqxData;if(O.indexOf("(")>=0){var S=O.indexOf("(");var U=f(O.substring(0,S))(I);if(U){U(T)}else{I.$emit(P,T)}}else{I.$emit(O,T)}if(I.$root.$$phase!="$apply"&&I.$root.$$phase!="$digest"){I.$apply()}})}});if(F.jqxInstance){var M=f(F.jqxInstance).assign;if(M){M(I,K)}if(I.$root.$$phase!="$apply"&&I.$root.$$phase!="$digest"){I.$apply()}}}})}function j(J,H,F,E,I,K){if(!F.jqxSettings){return}var G=f(F.jqxSettings)(J);if(!G){return}if(!G.apply){G.apply=G[E]=function(){var L=arguments;var M=new Array();if(L.length==0){return true}h.each(D[I.$id+E+F.jqxSettings],function(N,O){var P=this;M.push({widgetName:E,element:P,result:h.jqx.jqxWidgetProxy(E,P,L)})});if(M.length==1){return M[0].result}return M};G.digest=function(){if(!/^\$(digest|apply)$/.test(J.$root.$$phase)){J.$digest()}};G.refresh=function(P,O){var M={};var L=h(H)[E]("getInstance");h.each(G,function(Q,S){if(Q==="created"||Q==="propertyChanged"||Q=="data"||Q=="refresh"||Q==E||Q=="apply"){return true}var R=L.events||L._events;if((R&&R.indexOf(Q)>=0)||Q.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}if(P!=i&&P.indexOf(Q)===-1){return true}M[Q]=S});if(M!=={}){if(O){h.each(M,function(Q,R){G[Q]=L[Q]});if(J.$root.$$phase!="$apply"&&J.$root.$$phase!="$digest"){J.$apply()}}else{h.each(D[I.$id+E+F.jqxSettings],function(Q,R){h(this).jqxProxy(M)});if(F.jqxWatchSettings!=i){if(I){var N=f(F.jqxSettings)(I);h.each(N,function(Q,U){if(Q.match(/(source|propertyChanged|created|data|apply|refresh)/g)){return true}var S=L.events||L._events;if((S&&S.indexOf(Q)>=0)||Q.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}if(Q===E){return true}if(!p[F.jqxSettings+"."+Q]){var T=Q;var R=I.$watch(F.jqxSettings+"."+Q,function(X,W){if(X!=W){if(q.equals(X,W)){return}var V={};V[T]=X;h.each(D[I.$id+E+F.jqxSettings],function(aa,ab){var Z=y(E,h(this),V,X,W);if(!Z){h(this).jqxProxy(V)}});var Y=q.extend({},J.$eval(F.jqxSettings));if(F.jqxSettings&&Y&&Y.propertyChanged){Y.propertyChanged(T,W,X)}}},true);p[F.jqxSettings+"."+Q]=R}})}}}}if(e[H[0].id]){M={};h.each(e[H[0].id],function(){if(P!=i&&P.indexOf(h.camelCase(this.value.substring(4)))===-1){return true}M[h.camelCase(this.value.substring(4))]=J.$eval(this.label);if(O){var Q=h.parse(this.label)(J).assign;if(Q){Q(J,L[h.camelCase(this.value.substring(4))])}}});if(!O){h.each(D[I.$id+E+F.jqxSettings],function(Q,R){h(this).jqxProxy(M)})}else{if(J.$root.$$phase!="$apply"&&J.$root.$$phase!="$digest"){J.$apply()}}}};D[I.$id+E+F.jqxSettings]=new Array();D[I.$id+E+F.jqxSettings].push(K)}else{if(!D[I.$id+E+F.jqxSettings]){D[I.$id+E+F.jqxSettings]=new Array()}D[I.$id+E+F.jqxSettings].push(K)}}function m(O,J,N,F,K,H,I){var L=/(jqxGrid|jqxTree|jqxMenu|jqxDataTable|jqxTreeGrid|jqxListBox|jqxTreeMap|jqxComboBox|jqxDropDownList|jqxChart)/ig;if(N.jqxSettings&&H&&H.source===i&&N.jqxSource===i&&F.match(L)){if(F.match(/(jqxTree|jqxMenu)/ig)){if(J[0].innerHTML.toLowerCase().indexOf("ul")===-1){H.source=[]}}else{H.source=[]}}if(H.source!==i&&N.jqxSettings){H.source=a(O,J,N,H.source,K,F,I)}else{if(N.jqxSource!==i){var E=q.extend({},O.$eval(N.jqxSource));var G=N.jqxSource&&N.jqxSource.dataBind?true:false;if(G){H.source=a(O,J,N,N.jqxSource,K,F,I)}else{H.source=a(O,J,N,E,K,F,I)}}}var M=O.$watch(N.ngDisabled,function(R,Q){if(R!=i){if(R!=Q||h(J).jqxProxy("disabled")!==R){var P={};P.disabled=R;h(J).jqxProxy(P)}}});I.push(M)}function n(Q,J,P,E,N){var H=new Array();var G=q.extend({},Q.$eval(P.jqxSettings));m(Q,J,P,E,N,G,H);var L={};var K={};if(e[J[0].id]){h.each(e[J[0].id],function(){var Y=this.label;var aa=this.value;var V=h.camelCase(aa.substring("4"));if(typeof P[Y]!=="undefined"){var T=Q.$eval(P[Y]);if(T===i&&h.type(P[Y])==="string"){T=P[Y]}if(V=="instance"){return true}if(h.type(T)==="array"&&E!=="source"){T=T.slice(0)}else{if(h.type(T)==="object"&&E!=="source"){T=h.extend({},T)}}var U=/(columnmenuopening|columnmenuclosing|aggregatesrenderer|tooltipFormatFunction|labelsFormatFunction|rendergridrows|draw|renderFiles|initTools|initFeedBack|onTargetDrop|drawBefore|dragStart|dragEnd|onDropTargetEnter|onDropTargetLeave|onDrag|createCommand|ready|render|initrowdetails|initTabContent|initContent|renderer|renderToolbar|renderStatusBar|groupsrenderer|pagerrenderer|groupcolumnrenderer|updatefilterconditions|handlekeyboardnavigation|updatefilterpanel|rendered|virtualModeCreateRecords|virtualModeRecordCreating|search|selectionRenderer)/ig;var S=/(searchMode)/ig;var W=/(ready|aggregatesrenderer|initrowdetails|initTabContent|initContent|renderToolbar|renderStatusBar|pagerRenderer)/ig;if(h.isFunction(T)&&!V.match(U)){K[index]=T}else{if(V.match(U)&&!V.match(S)){var X=function(){var ab=T.apply(this,arguments);if(V.match(W)&&!/^\$(digest|apply)$/.test(Q.$root.$$phase)){Q.$digest()}return ab};L[V]=X;return true}L[V]=T}var Z=function(af,ad){if(af!=ad){if(q.equals(af,ad)){return}var ae=h.camelCase(aa.substring("4"));if(ae=="watch"){if(P.jqxWatch.indexOf(",")>=0||P.jqxWatch.indexOf("[")>=0){var ah=P.jqxWatch;ah=ah.replace("[","");ah=ah.replace("]","");ah=ah.trim();ah=ah.split(",");h.each(ah,function(al,ao){var ap=this.split(".");for(var am=0;am<ap.length;am++){if(ap[am] in h(J).data().jqxWidget){ae=ap[am];break}else{if(ap[am].toLowerCase() in h(J).data().jqxWidget){ae=ap[am].toLowerCase();break}}}var aj={};aj[ae]=af[al];var ak=y(E,h(J),aj,af,ad);if(!ak){h(J).jqxProxy(aj);var an=q.extend({},Q.$eval(P.jqxSettings));if(P.jqxSettings&&an&&an.propertyChanged){an.propertyChanged(ae,ad,af)}}});return}var ah=P.jqxWatch.split(".");for(var ag=0;ag<ah.length;ag++){if(ah[ag] in h(J).data().jqxWidget){ae=ah[ag];break}else{if(ah[ag].toLowerCase() in h(J).data().jqxWidget){ae=ah[ag].toLowerCase();break}}}}var ab={};ab[ae]=af;var ac=y(E,h(J),ab,af,ad);if(!ac){h(J).jqxProxy(ab);var ai=q.extend({},Q.$eval(P.jqxSettings));if(P.jqxSettings&&ai&&ai.propertyChanged){ai.propertyChanged(ae,ad,af)}}}};if(V=="watch"){delete L[V];var Z=Q.$watch(P[Y],Z,true);H.push(Z)}else{var Z=Q.$watch(P[Y],Z);H.push(Z)}}})}if(J[0].id==""){if(i==c[E]){c[E]=0}J[0].id=E+c[E]++}var F=h(J)[E];if(!F){throw new Error("Missing required JavaScript references for: "+E);return null}h.each(G,function(V,W){if(V==="data"||V==="created"||V==="propertyChanged"){return true}var T=/(columnmenuopening|columnmenuclosing|aggregatesrenderer|tooltipFormatFunction|labelsFormatFunction|rendergridrows|renderFiles|initTools|draw|drawBefore|dragStart|dragEnd|initFeedBack|onTargetDrop|onDropTargetEnter|onDropTargetLeave|onDrag|createCommand|ready|render|initrowdetails|initTabContent|initContent|renderer|renderToolbar|renderStatusBar|groupsrenderer|pagerrenderer|groupcolumnrenderer|updatefilterconditions|handlekeyboardnavigation|updatefilterpanel|rendered|virtualModeCreateRecords|virtualModeRecordCreating|search|selectionRenderer)/ig;var U=/(searchMode)/ig;var S=/(ready|aggregatesrenderer|initrowdetails|initTabContent|initContent|renderToolbar|renderStatusBar|pagerRenderer)/ig;if(h.isFunction(W)&&!V.match(T)){K[V]=W}else{if(V.match(T)&&!V.match(U)){var X=function(){var Y=W.apply(this,arguments);if(V.match(S)&&!/^\$(digest|apply)$/.test(Q.$root.$$phase)){Q.$digest()}return Y};L[V]=X;return true}if(h.type(W)==="array"&&V!=="source"){W=W.slice(0)}else{if(h.type(W)==="object"&&V!=="source"){W=h.extend({},W)}}L[V]=W}});k(Q,J,P,E,N,K);var M=J[0];j(Q,J,P,E,N,M);var I=h(J)[E](L);var R=h(J)[E]("getInstance");B(Q,J,P,E,N,G,M,R,L,H);var O=Q.$on("$destroy",function(){if(R&&R.destroy&&!R.isDestroyed){R.isDestroyed=true;if(h(J).parents().length>0){h(J)[E]("destroy")}R=null}else{h(J).remove();R=null}for(var S=0;S<H.length;S++){H[S]()}L=[];K=[];O()});return R}function B(O,H,N,E,K,G,J,P,I,F){if(N.jqxSettings){if(N.jqxWatchSettings!=i){if(K){var M=f(N.jqxSettings)(K);h.each(M,function(Q,U){if(Q.match(/(source|created|propertyChanged|data|apply|refresh)/g)){return true}var S=P.events||P._events;if((S&&S.indexOf(Q)>=0)||Q.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}if(Q===E){return true}if(I.hasOwnProperty(Q)){var T=Q;var R=K.$watch(N.jqxSettings+"."+Q,function(Y,X){if(Y!=X){if(q.equals(Y,X)){return}var V={};V[T]=Y;var W=y(E,h(H),V,Y,X);if(!W){h(H).jqxProxy(V);var Z=q.extend({},O.$eval(N.jqxSettings));if(N.jqxSettings&&Z&&Z.propertyChanged){Z.propertyChanged(T,X,Y)}}}},true);p[N.jqxSettings+"."+Q]=R;F.push(R)}})}}var L=O.$watch(N.jqxSettings,function(U,T){var R={};var Q=false;if(U!=T){if(q.equals(U,T)){return}h.each(U,function(X,aa){if(X==="source"){if(T.source!=null){return true}else{var W=a(O,H,N,aa,K,F);R[X]=W}}if(X==="created"){return true}if(X==="propertyChanged"){return true}if(X==="data"){O.$apply();return true}var Y=P.events||P._events;if((Y&&Y.indexOf(X)>=0)||X.match(/(mousedown|click|mouseenter|mouseleave|mouseup|keydown|keyup|focus|blur|keypress)/g)){return true}var Z=function(ac){if(N.jqxWatchSettings!=i){if(K){if(!p[N.jqxSettings+"."+ac]){var ac=X;var ab=K.$watch(N.jqxSettings+"."+ac,function(ag,af){if(ag!=af){if(q.equals(ag,af)){return}var ad={};ad[ac]=ag;var ae=y(E,h(H),ad,ag,af);if(!ae){h(H).jqxProxy(ad);var ah=q.extend({},O.$eval(N.jqxSettings));if(N.jqxSettings&&ah&&ah.propertyChanged){ah.propertyChanged(ac,af,ag)}}}},true);p[N.jqxSettings+"."+ac]=ab;F.push(ab)}}}};if(!(aa instanceof Object)&&(T==null||aa!==T[X])){R[X]=aa;Z(X);Q=true}else{if(X!==E&&X!=="apply"&&X!=="created"&&X!=="propertyChanged"&&(aa instanceof Object)&&(T==null||(A(aa)!==A(T[X]))||(A(aa)==""&&A(T[X])==""))){R[X]=aa;Z(X);Q=true}}});if(R!=={}&&Q){var S=y(E,h(H),R,U,T);if(!S){h(H).jqxProxy(R);var V=q.extend({},O.$eval(N.jqxSettings));if(N.jqxSettings&&V&&V.propertyChanged){V.propertyChanged(index,T,U)}}}}});F.push(L)}}function w(K,G,S,E){var P=K[0].nodeName.toLowerCase();var Q=h(K).parent();var H=h(K).html();var R=Q&&Q[0]&&Q[0].nodeName.toLowerCase()=="ng-include"?true:false;if(h(K).parents("[ui-view]").length>0){R=true}if(R&&!G){h(K).attr("data-jqx-ng-include",true);return}var L='<div id="jqx-ngwidget">'+H+"</div>";if(P.indexOf("jqx")>=0){var I=K[0].attributes;var M=K;if(P.indexOf("input")>=0){if(P.indexOf("date")>=0||P.indexOf("number")>=0){h(K).replaceWith('<div id="jqx-ngwidget"></div>')}else{if(P.indexOf("password")>=0){h(K).replaceWith('<input id="jqx-ngwidget" type="password"/>')}else{h(K).replaceWith('<input id="jqx-ngwidget"/>')}}}else{if(P.indexOf("jqx-button")>=0&&P.indexOf("jqx-button-group")==-1){h(K).replaceWith('<button id="jqx-ngwidget">'+H+"</button>")}else{if(P.indexOf("jqx-toggle-button")>=0){h(K).replaceWith('<button id="jqx-ngwidget">'+H+"</button>")}else{if(P.indexOf("jqx-link-button")>=0){if(h(K).find("a").length>0){var J=h(K).find("a");J.attr("id","jqx-ngwidget");h(K).replaceWith(J)}else{h(K).replaceWith('<a id="jqx-ngwidget">'+H+"</a>")}}else{if(P.indexOf("jqx-data-table")>=0||P.indexOf("jqx-grid")>=0){if(h(K).find("tr").length>0){h(K).replaceWith('<div id="jqx-ngwidget">'+H+"</div>")}else{h(K).replaceWith('<div id="jqx-ngwidget"></div>')}}else{if(P.indexOf("jqx-list-box")>=0||P.indexOf("jqx-drop-down-list")>=0||P.indexOf("jqx-combo-box")>=0){if(h(K).find("option").length>0){h(K).replaceWith('<select id="jqx-ngwidget">'+H+"</select>")}else{if(h(K).find("li").length>0){h(K).replaceWith('<ul id="jqx-ngwidget">'+H+"</ul>")}else{h(K).replaceWith('<div id="jqx-ngwidget"></div>')}}}else{if(P.indexOf("jqx-list-menu")>=0){h(K).replaceWith('<ul id="jqx-ngwidget" data-role="listmenu">'+H+"</ul>")}else{if(P.indexOf("jqx-tooltip")>=0){var F=h(K).children();F.detach();h(F).insertAfter(h(K));h.each(I,function(){if(h(F)[0]){h(F)[0].setAttribute(this.name,this.value)}});h(K).remove();K=F}else{h(K).replaceWith(L)}}}}}}}}M=Q.find("#jqx-ngwidget").removeAttr("id");h.each(I,function(){if(h(M)[0]){h(M)[0].setAttribute(this.name,this.value)}})}var O=K[0];if(M&&M.length){O=M[0]}var N=this;if(O.id==""){if(i==c[E]){c[E]=0}O.id=E+c[E]++}h.each(S,function(T,U){if(T!==E&&T!="jqxNgModel"&&T.indexOf("jqxOn")==-1&&T!="jqxData"&&T!="jqxWatchSettings"&&T!="jqxCreated"&&T!="jqxSource"&&T!="jqxCreate"&&T!="jqxSettings"&&T.indexOf("jqx")>=0){if(!e[O.id]){e[O.id]=new Array()}e[O.id].push({label:T,value:S.$attr[T]})}});return h(O)}function t(G,H){function F(L){H.filesCount=0;var I=L.length;if(L.scripts){var K=L.scripts.length;for(var N in L.deps){K++;var M=L.deps[N];K+=M.length}I=K}var J=function(S,P){var R=0;var O=0;var Q=function(){var Y=S[R];var T=h('script[src*="'+Y+'"]').length;if(T===0){var V=document.getElementsByTagName("head")[0];var U=document.createElement("script");U.type="text/javascript";var X=function(){H.filesCount++;O++;g[Y]=false;if(r[Y]!=i){h.each(r[Y],function(){this.documentReady=true;if(this.scriptsLoaded){this.scriptsLoaded()}})}r[Y]=true;if(H.filesCount==I){H.documentReady=true;if(H.scriptsLoaded){H.scriptsLoaded()}return}if(O===S.length&&P){P()}};if(U.addEventListener){U.addEventListener("load",X,false)}else{if(window.attachEvent){U.attachEvent("onreadystatechange",function(){if(U.readyState=="complete"||U.readyState=="loaded"){X()}})}}g[Y]=true;var W=l;if(Y=="globalize.js"){W=l+"globalization/"}U.src=W+Y;V.appendChild(U);R++;if(R<S.length){Q()}}else{H.filesCount++;if(H.filesCount==I){if(r[Y]===true||g[Y]===i){H.documentReady=true;if(H.scriptsLoaded){H.scriptsLoaded()}return}else{if(r[Y]==i){r[Y]=new Array()}r[Y].push(H);return}}R++;if(R<S.length){Q()}O++;if(O===S.length&&P){P()}}};Q()};if(!L.scripts){J(L)}else{J(L.scripts);h.each(L.deps,function(Q,P){var O=new Array();O.push(Q);J(O,function(){J(P)})})}}var E={jqxCalendar:["jqxdatetimeinput.js","jqxcalendar.js","jqxtooltip.js","globalize.js","jqxbuttons.js"],jqxDateTimeInput:["jqxdatetimeinput.js","jqxcalendar.js","jqxtooltip.js","globalize.js","jqxbuttons.js"],jqxScheduler:["jqxscheduler.js","jqxscheduler.api.js","jqxdate.js","jqxmenu.js","jqxwindow.js","jqxcheckbox.js","jqxnumberinput.js","jqxscrollbar.js","jqxlistbox.js","jqxdropdownlist.js","jqxinput.js","jqxradiobutton.js","jqxdatetimeinput.js","jqxcalendar.js","jqxtooltip.js","globalize.js","jqxbuttons.js"],jqxListBox:["jqxlistbox.js","jqxdata.js","jqxbuttons.js","jqxscrollbar.js"],jqxComboBox:["jqxlistbox.js","jqxdata.js","jqxbuttons.js","jqxscrollbar.js","jqxcombobox.js"],jqxDropDownList:["jqxlistbox.js","jqxdata.js","jqxbuttons.js","jqxscrollbar.js","jqxdropdownlist.js"],jqxGrid:{scripts:["jqxdatetimeinput.js","jqxcalendar.js","jqxmenu.js","jqxtooltip.js","jqxscrollbar.js","jqxbuttons.js","jqxlistbox.js","jqxdropdownlist.js","jqxcombobox.js","jqxcheckbox.js","globalize.js"],deps:{"jqxgrid.js":["jqxgrid.selection.js","jqxgrid.filter.js","jqxgrid.sort.js","jqxgrid.storage.js","jqxgrid.grouping.js","jqxgrid.pager.js","jqxgrid.columnsresize.js","jqxgrid.columnsreorder.js","jqxgrid.edit.js","jqxgrid.export.js","jqxgrid.aggregates.js"],"jqxdata.js":["jqxdata.export.js"]}},jqxDataTable:{scripts:["jqxdatatable.js","jqxdatetimeinput.js","jqxcalendar.js","jqxmenu.js","jqxtooltip.js","jqxscrollbar.js","jqxbuttons.js","jqxlistbox.js","jqxdropdownlist.js","jqxcombobox.js","jqxcheckbox.js","globalize.js","jqxinput.js"],deps:{"jqxdata.js":["jqxdata.export.js"]}},jqxTreeGrid:{scripts:["jqxdatetimeinput.js","jqxcalendar.js","jqxmenu.js","jqxtooltip.js","jqxscrollbar.js","jqxbuttons.js","jqxlistbox.js","jqxdropdownlist.js","jqxcombobox.js","jqxcheckbox.js","globalize.js","jqxinput.js"],deps:{"jqxdatatable.js":["jqxtreegrid.js"],"jqxdata.js":["jqxdata.export.js"]}},jqxDockingLayout:{scripts:["jqxmenu.js"],deps:{"jqxlayout.js":["jqxdockinglayout.js"]}},jqxCheckBox:["jqxcheckbox.js"],jqxRadioButton:["jqxradiobutton.js"],jqxBulletChart:["jqxbulletchart.js","jqxtooltip.js"],jqxRangeSelector:["jqxrangeselector.js"],jqxScrollView:["jqxbuttons.js","jqxscrollview.js"],jqxSwitchButton:["jqxswitchbutton.js"],jqxTouch:["jqxtouch.js"],jqxColorPicker:["jqxcolorpicker.js"],jqxInput:["jqxinput.js"],jqxTextArea:["jqxtextarea.js","jqxbuttons.js","jqxscrollbar.js"],jqxTagCloud:["jqxtagcloud.js"],jqxPopover:["jqxpopover.js"],jqxLayout:["jqxlayout.js","jqxmenu.js","jqxwindow.js"],jqxLoader:["jqxloader.js"],jqxResponsivePanel:["jqxresponsivepanel.js"],jqxEditor:["jqxeditor.js"],jqxNumberInput:["jqxbuttons.js","jqxnumberinput.js"],jqxMaskedInput:["jqxmaskedinput.js"],jqxSlider:["jqxbuttons.js","jqxslider.js"],jqxPanel:["jqxbuttons.js","jqxscrollbar.js","jqxpanel.js"],jqxButton:["jqxbuttons.js"],jqxLinkButton:["jqxbuttons.js"],jqxToggleButton:["jqxbuttons.js"],jqxRepeatButton:["jqxbuttons.js"],jqxDropDownButton:["jqxdropdownbutton.js"],jqxNotification:["jqxnotification.js"],jqxDockPanel:["jqxdockpanel.js"],jqxProgressBar:["jqxprogressbar.js"],jqxListMenu:["jqxbuttons.js","jqxscrollbar.js","jqxpanel.js","jqxlistmenu.js"],jqxTree:["jqxbuttons.js","jqxscrollbar.js","jqxpanel.js","jqxtree.js","jqxdata.js"],jqxMenu:["jqxmenu.js","jqxdata.js"],jqxTabs:["jqxtabs.js","jqxbuttons.js"],jqxDragDrop:["jqxdragdrop.js"],jqxDraw:["jqxdraw.js"],jqxWindow:["jqxwindow.js"],jqxDocking:["jqxwindow.js","jqxdocking.js"],jqxButtonGroup:["jqxbuttons.js","jqxbuttongroup.js"],jqxChart:["jqxdata.js","jqxchart.js"],jqxNavigationBar:["jqxnavigationbar.js"],jqxExpander:["jqxexpander.js"],jqxResponse:["jqxresponse.js"],jqxPasswordInput:["jqxpasswordinput.js"],jqxRating:["jqxrating.js"],jqxSplitter:["jqxbuttons.js","jqxsplitter.js"],jqxValidator:["jqxvalidator.js"],jqxTooltip:["jqxtooltip.js"],jqxGauge:["jqxdraw.js","jqxgauge.js"],jqxLinearGauge:["jqxdraw.js","jqxgauge.js"],jqxTreeMap:["jqxtreemap.js"],jqxRibbon:["jqxbuttons.js","jqxribbon.js"],jqxFormattedInput:["jqxbuttons.js","jqxformattedinput.js"],jqxComplexInput:["jqxbuttons.js","jqxcomplexinput.js"],jqxToolBar:["jqxtoolbar.js"],jqxFileUpload:["jqxfileupload.js"],jqxNavBar:["jqxnavbar.js"]};F(E[G])}h.jqx.angularCompile=function(F,E){if(F.length>0){F=F[0]}var H=q.element(F);var G=H.injector();if(E==i){E=F.innerHTML}G.invoke(["$compile","$rootScope",function(K,I){var J=H.html(E).scope();K(H)(J||I);if(!/^\$(digest|apply)$/.test(I.$$phase)){I.$digest()}else{if(!/^\$(digest|apply)$/.test(J.$$phase)){J.$digest()}}}])};function o(E){var F={};var G=function(V,O,U,J,I){if(h(O).attr("data-jqx-ng-include")){h(O).removeAttr("data-jqx-ng-include");var K=h(O.children()).detach();O=w(O,true,U,E);O.append(K);z(O)(V);var T=true;for(var N in U){if(N.toString().indexOf("jqx")==-1){continue}if(V[U[N]]!=i){T=false}if(U[N].split(".").length>1){var L=U[N].split(".");for(var M=0;M<L.length;M++){if(V[L[M]]!=i){T=false}}}}if(T&&U.jqxSettings){if(!f(U.jqxSettings)(V)){T=false}}if(T){V=V.$parent}}if(h.jqx.AMD){var Q={};d[E]=false;Q.documentReady=false;t(E,Q)}var H=O[0].style.visibility;var P=O[0].style.display;O[0].style.visibility="hidden";O[0].style.display="none";var S=V;var R=v(function(){v.cancel(R);R=i;var Z=function(){var af=J[0];O[0].style.visibility=H;O[0].style.display=P;var ag=n(V,O,U,E,S);var aj=E.toLowerCase();var ai=E.match(/(input|list|radio|checkbox|combobox|rating|slider|scrollbar|progress|range|editor|picker|range|gauge|textarea|calendar|switch|button)/ig);var ah={element:O[0],name:E,instance:h(O).data().jqxWidget,id:O[0].id,scope:V};var ab=function(){V.$emit(E+"Created",ah);if(U.jqxSettings&&f(U.jqxSettings)(V).created){C(function(){var ak=f(U.jqxSettings)(V).created;ak(ah)})}if(U.jqxCreated){C(function(){var ak=f(U.jqxCreated)(V);ak(ah)})}};if(E==="jqxGrid"||E==="jqxDataTable"){var ac=0;var ad=v(function(){if(!h(O).data().jqxWidget){v.cancel(ad);ad=i}else{if(h(O).data().jqxWidget.initializedcall||ac==25){v.cancel(ad);ad=i;ab()}}ac++},100)}else{ab()}C(function ae(){if(af){af.$render=function(){var an=af.$viewValue;if(an===i){an=af.$modelValue}if(E==="jqxRadioButton"){if(V.$eval(h(O).attr("value"))==af.$viewValue){h(O).val(true)}else{if(V.$eval(h(O).attr("value"))=="true"&&af.$viewValue==true){h(O).val(true)}else{h(O).val(false)}}return}else{if(E==="jqxCheckBox"){if(V.$eval(h(O).attr("ng-true-value"))==af.$viewValue){h(O).val(true)}if(V.$eval(h(O).attr("ng-false-value"))==af.$viewValue){h(O).val(false)}else{h(O).val(af.$viewValue)}return}}if(an!=h(O).val()){C(function(){h(O).val(an)})}};if(E==="jqxRadioButton"){if(V.$eval(h(O).attr("value"))==af.$viewValue){h(O).val(true)}else{if(V.$eval(h(O).attr("value"))=="true"&&af.$viewValue==true){h(O).val(true)}else{h(O).val(false)}}}else{if(E==="jqxCheckBox"){if(V.$eval(h(O).attr("ng-true-value"))==af.$viewValue){h(O).val(true)}if(V.$eval(h(O).attr("ng-false-value"))==af.$viewValue){h(O).val(false)}else{h(O).val(af.$viewValue)}}else{if(E==="jqxDropDownList"||E==="jqxComboBox"||E==="jqxListBox"||E==="jqxInput"||E==="jqxTextArea"){if(U.jqxNgModel!=i){var ak=h(O).data().jqxWidget;if(E!="jqxInput"){if(ak.valueMember){ak.selectItem(af.$viewValue[ak.valueMember])}else{if(ak.displayMember){ak.selectItem(af.$viewValue[ak.displayMember])}else{h(O).val(af.$viewValue)}}}else{h(O).val(af.$viewValue)}}else{h(O).val(af.$viewValue)}}else{if(E==="jqxDateTimeInput"||E==="jqxCalendar"){if(U.jqxNgModel!=i){var ak=h(O).data().jqxWidget;if(ak.selectionMode=="range"){ak.setRange(af.$viewValue)}else{ak.setDate(af.$viewValue)}}else{h(O).val(af.$viewValue)}}else{if(E=="jqxToggleButton"){var ak=h(O).data().jqxWidget;ak.toggled=true;ak.refresh()}else{h(O).val(af.$viewValue)}}}}}if(ai){var al="keyup change";if(E=="jqxScrollBar"){al="valueChanged"}if(E=="jqxToggleButton"){al="keyup click"}if(E=="jqxInput"){al="keyup change select"}var am;h(ag.host).on(al,function(ao){var an=ao.args;if(am){C.cancel(am)}am=C(function(){if(E==="jqxRadioButton"){if(an&&an.type!="api"){af.$setViewValue(V.$eval(h(O).attr("value")))}}else{if(E==="jqxCheckBox"){if(h(O).attr("ng-true-value")!=i&&an.checked){af.$setViewValue(h(O).attr("ng-true-value"))}else{if(h(O).attr("ng-false-value")!=i&&!an.checked){af.$setViewValue(h(O).attr("ng-false-value"))}else{af.$setViewValue(h(O).val())}}}else{if(E==="jqxDropDownList"||E==="jqxComboBox"||E==="jqxListBox"||E==="jqxInput"||E==="jqxTextArea"){var aq=h(O).val();if(U.jqxNgModel!=i){var ap=h(O).data().jqxWidget;if(ap.getSelectedItem){aq=ap.getSelectedItem();if(aq.originalItem){aq=aq.originalItem}}if(E==="jqxInput"||E==="jqxTextArea"){aq=ap.selectedItem}af.$setViewValue(aq)}else{af.$setViewValue(aq)}}else{if(E==="jqxDateTimeInput"||E==="jqxCalendar"){if(U.jqxNgModel!=i){var ap=h(O).data().jqxWidget;if(ap.selectionMode=="range"){af.$setViewValue(ap.getRange())}else{af.$setViewValue(ap.getDate())}}else{if(h.type(af.$viewValue)==="date"){var ap=h(O).data().jqxWidget;if(ap.selectionMode=="range"){af.$setViewValue(ap.getRange())}else{af.$setViewValue(ap.getDate())}}else{af.$setViewValue(h(O).val())}}}else{if(E=="jqxToggleButton"){var ap=h(O).data().jqxWidget;af.$setViewValue(ap.toggled)}else{af.$setViewValue(h(O).val())}}}}}V.$emit(E+"ModelChange",af.$viewValue)})})}}})};if(U.ngShow!==i&&U.jqxCreate===i){var Y=V.$watch(U.ngShow,function(ac,ab){if(ac){Z();Y()}});return}var aa=function(){if(U.jqxCreate!=null||U.jqxCreate!=null){if(U.jqxCreate===true||(U.jqxCreate!==null&&h.type(U.jqxCreate)=="object")){Z()}else{var ab=V.$watch(U.jqxCreate,function(ad,ac){if(typeof ad=="number"){C(Z,ad);ab()}else{if(ad){Z();ab()}}})}}else{Z()}};if(h.jqx.AMD){var X=function(){var ab=true;for(var ac in d){if(!d[ac]){ab=false;break}}if(ab){if(!x){V.$emit("jQWidgetsScriptsLoaded");x=true}for(var ac in d){h.each(d[ac],function(){this()});d[ac]=new Array()}}};if(Q.documentReady){var W={element:O[0],name:E,scope:V};V.$emit(E+"ScriptsLoaded",W);if(!d[E]){d[E]=new Array()}d[E].push(aa);X()}else{Q.scriptsLoaded=function(){var ab={element:O[0],name:E,scope:V};V.$emit(E+"ScriptsLoaded",ab);if(!d[E]){d[E]=new Array()}d[E].push(aa);X()}}}else{aa()}})};b.directive(E,["$timeout","$interval","$parse","$compile","$log",function(M,I,N,L,K){C=M;v=I;f=N;z=L;s=K;var J={};var H;return{restrict:"ACE",require:["?ngModel"],scope:false,template:function(P,O){w(P,false,O,E);H=this.scope},controller:["$scope","$attrs","$element","$transclude",function(R,O,Q,P){}],compile:function(P,O,Q){return{pre:function(V,T,R,U,S){},post:function(V,T,R,U,S){G(V,T,R,U,S)}}},link:G}}])}o("jqxBulletChart");o("jqxButtonGroup");o("jqxButton");o("jqxRepeatButton");o("jqxToggleButton");o("jqxLinkButton");o("jqxCalendar");o("jqxChart");o("jqxCheckBox");o("jqxComplexInput");o("jqxColorPicker");o("jqxComboBox");o("jqxDataTable");o("jqxDateTimeInput");o("jqxDocking");o("jqxDockPanel");o("jqxDragDrop");o("jqxDraw");o("jqxDropDownButton");o("jqxDropDownList");o("jqxEditor");o("jqxExpander");o("jqxFormattedInput");o("jqxFileUpload");o("jqxGauge");o("jqxLinearGauge");o("jqxGrid");o("jqxInput");o("jqxListBox");o("jqxListMenu");o("jqxMaskedInput");o("jqxMenu");o("jqxNavigationBar");o("jqxNavBar");o("jqxNotification");o("jqxNumberInput");o("jqxPanel");o("jqxPasswordInput");o("jqxProgressBar");o("jqxRadioButton");o("jqxRangeSelector");o("jqxRating");o("jqxRibbon");o("jqxScrollBar");o("jqxScrollView");o("jqxSlider");o("jqxSplitter");o("jqxSwitchButton");o("jqxTabs");o("jqxToolBar");o("jqxTooltip");o("jqxTouch");o("jqxTree");o("jqxTreeGrid");o("jqxTreeMap");o("jqxValidator");o("jqxWindow");o("jqxTagCloud");o("jqxPopover");o("jqxScheduler");o("jqxTextArea");o("jqxLayout");o("jqxDockingLayout");o("jqxResponsivePanel");o("jqxLoader")})(jqxBaseFramework,window.angular);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxbulletchart.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxbulletchart.js
new file mode 100644 (file)
index 0000000..3b33f0b
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxBulletChart","",{});a.extend(a.jqx._jqxBulletChart.prototype,{defineInstance:function(){var b={width:500,height:100,barSize:"50%",ranges:[{startValue:0,endValue:50,color:"#000000",opacity:0.7},{startValue:50,endValue:80,color:"#000000",opacity:0.5},{startValue:80,endValue:100,color:"#000000",opacity:0.3}],pointer:{value:65,label:"Value",size:"25%",color:""},target:{value:85,label:"Target",size:4,color:""},ticks:{position:"far",interval:20,size:10},title:"Title",description:"Description",orientation:"horizontal",labelsFormat:null,labelsFormatFunction:null,animationDuration:400,showTooltip:true,tooltipFormatFunction:null,disabled:false,rtl:false,events:["change"]};a.extend(true,this,b);return b},createInstance:function(b){if(!a.jqx.dataAdapter){throw new Error("jqxBulletChart: Missing reference to the following module: 'jqxdata.js'.")}this._setDefaultValues();this.render();var c=this;a.jqx.utilities.resize(this.host,function(){if(c._timer){clearTimeout(c._timer)}c._timer=setTimeout(function(){var d=c.animationDuration;c.animationDuration=0;c.render();setTimeout(function(){c.animationDuration=d},0)},10)},false,true)},render:function(){if(this.host.children().length>0){this._removeHandlers();if(this.showTooltip==true){this.host.jqxTooltip("destroy")}this.host.empty()}this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-bulletchart"));this.host.width(this.width);this.host.height(this.height);var n=this.host.width();var d=this.host.height();var l;var j=this.rtl?"rtl":"ltr";if(this.orientation=="horizontal"){l=a("<div style='position: absolute; visibility: hidden; padding: 5px;'><div class='"+this.toThemeProperty("jqx-bulletchart-title")+"' style='direction: "+j+";'>"+this.title+"</div><div class='"+this.toThemeProperty("jqx-bulletchart-description")+"' style='direction: "+j+";'>"+this.description+"</div></div>")}else{if(this.orientation=="vertical"){l=a("<div style='position: absolute; visibility: hidden; padding-bottom: 15px;'><div class='"+this.toThemeProperty("jqx-bulletchart-title")+"' style='width: "+n+"px; direction: "+j+";'>"+this.title+"</div><div class='"+this.toThemeProperty("jqx-bulletchart-description")+"' style='direction: "+j+";'>"+this.description+"</div></div>")}}this.host.append(l);var k=l.outerWidth();var g=l.outerHeight();l.remove();var e,h,i,b,o,m,f,c;if(this.orientation=="horizontal"){e="jqx-bulletchart-title-container-horizontal";h="jqx-bulletchart-chart-container-horizontal";i=this._checkPercentage(this.barSize,this.host);b=k;o=this.barSize;m=0;f=n-b;c=o;if(this.width&&this.width.toString().indexOf("%")>=0){var f=parseFloat(parseFloat(f*100)/n).toString()+"%";var b=parseFloat(parseFloat(b*100)/n).toString()+"%";this._percentageWidth=true}}else{if(this.orientation=="vertical"){e="jqx-bulletchart-title-container-vertical";h="jqx-bulletchart-chart-container-vertical";i=0;b="100%";o=g;m=this._checkPercentage(this.barSize,this.host);f=this.barSize;c=d-o}}if(this.rtl==false||(this.rtl==true&&this.orientation=="vertical")){this.host.append("<div id='"+this.element.id+"titleContainer' class='"+e+"' style='top: "+i+";'></div>")}this.host.append("<div id='"+this.element.id+"ChartContainer' class='"+h+"' style='top: "+i+"; left: "+m+";'></div>");if(this.rtl==true&&this.orientation=="horizontal"){this.host.append("<div id='"+this.element.id+"titleContainer' class='"+e+"' style='top: "+i+";'></div>")}this._titleContainer=a("#"+this.element.id+"titleContainer");this._chartContainer=a("#"+this.element.id+"ChartContainer");this._titleContainer.css({width:b,height:o});this._chartContainer.css({width:f,height:c});this._min=this.ranges[0].startValue;this._max=this.ranges[this.ranges.length-1].endValue;this._interval=this._max-this._min;this._valueToPixelsHorizontal=this._chartContainer.width()/this._interval;this._valueToPixelsVertical=this._chartContainer.height()/this._interval;this._checkValues();this._appendRanges();this._appendPointerAndTarget();this._appendTitleAndDescription();if(this.ticks.position!="none"){this._appendTicksAndLabels()}if(this.disabled==true){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(this.showTooltip==true){if(this.host.jqxTooltip!=undefined){this._initializeTooltip();this.host.data().jqxWidget=this}else{throw new Error("jqxBulletChart: Missing reference to the following module: 'jqxtooltip.js'.")}}this._updateValue(this.pointer.value,0,true)},refresh:function(b){if(!b){this.render()}},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object")){return this.pointer.value}else{if(b>this._max){b=this._max}else{if(b<this._min){b=this._min}}if(b!=this.pointer.value){this._updateValue(b,this.pointer.value);this.pointer.value=b;if(this.showTooltip==true){this._updateTooltip()}}}},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this._removeHandlers();if(this.showTooltip==true){this.host.jqxTooltip("destroy")}this.host.remove()},propertyChangedHandler:function(c,d,g,e){if(g!=e||e instanceof Object){var b=true;var f=function(){a.each(g,function(i,h){if(e[i]==undefined){c[d][i]=h}})};switch(d){case"barSize":break;case"ranges":a.each(g,function(i,h){a.each(h,function(k,j){if(e[i][k]==undefined){c[d][i][k]=j}})});this._setDefaultValues();break;case"pointer":f();this._updatePointer(e,g);return;case"target":f();this._updateTarget(e,g);return;case"ticks":b=false;f();a.each(g,function(i,h){if(g[i]!=c[d][i]){b=!(b&&false)}});break;case"showTooltip":if(e==true){if(this.host.jqxTooltip!=undefined){this._initializeTooltip()}else{throw new Error("jqxBulletChart: Missing reference to the following module: 'jqxtooltip.js'.")}}else{this._removeHandlers();this.host.jqxTooltip("destroy")}break;case"animationDuration":return;case"tooltipFormatFunction":this._updateTooltip();return;case"disabled":if(e==true){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}return}if(b==true){this.render()}}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},_removeHandlers:function(){var b=a("#"+this.element.id+"Pointer, #"+this.element.id+"Target");this.removeHandler(b,"mouseenter.bulletchart"+this.element.id);this.removeHandler(b,"mouseleave.bulletchart"+this.element.id)},_setDefaultValues:function(){var b=this.ranges;var c=this.ranges.length;for(var d=0;d<c;d++){if(b[d].startValue==undefined||b[d].endValue==undefined){throw new Error("jqxBulletChart: Each range must have its startValue and endValue set.")}if(b[d].color==undefined){this.ranges[d].color="#000000"}if(b[d].opacity==undefined){this.ranges[d].opacity=1-(1/c)*d}}var g=this.pointer;if(g.value==undefined){this.pointer.value=65}if(g.label==undefined){this.pointer.label="Value"}if(g.size==undefined){this.pointer.size="25%"}if(g.color==undefined){this.pointer.color=""}var f=this.target;if(f.value==undefined){this.target.value=85}if(f.label==undefined){this.target.label="Target"}if(f.size==undefined){this.target.size=5}if(f.color==undefined){this.target.color=""}var e=this.ticks;if(e.position==undefined){this.ticks.position="near"}if(e.interval==undefined){this.ticks.interval=20}if(e.size==undefined){this.ticks.size=10}},_checkValues:function(){if(this.pointer.value>this._max){this.pointer.value=this._max}else{if(this.pointer.value<this._min){this.pointer.value=this._min}}if(this.target.value>this._max){this.target.value=this._max}else{if(this.target.value<this._min){this.target.value=this._min}}},_appendRanges:function(){var e="";var g=this.ranges.length;for(var d=0;d<g;d++){var f=this.ranges[d];var l;if(this.orientation=="horizontal"){var h=this.rtl?"right":"left";var c=(f.startValue-this._min)*this._valueToPixelsHorizontal;var j=(f.endValue-f.startValue)*this._valueToPixelsHorizontal;l="<div class='"+this.toThemeProperty("jqx-bulletchart-range")+" "+this.toThemeProperty("jqx-bulletchart-range-horizontal")+"' style='"+h+": "+c+"px; width: "+j+"px; background-color: "+f.color+"; opacity: "+f.opacity+"'></div>"}else{if(this.orientation=="vertical"){var b=(f.startValue-this._min)*this._valueToPixelsVertical;var k=(f.endValue-f.startValue)*this._valueToPixelsVertical;l="<div class='"+this.toThemeProperty("jqx-bulletchart-range")+" "+this.toThemeProperty("jqx-bulletchart-range-vertical")+"' style='bottom: "+b+"px; height: "+k+"px; background-color: "+f.color+"; opacity: "+f.opacity+"'></div>"}}e+=l}this._chartContainer.append(e)},_appendPointerAndTarget:function(){var o="";var m=this.element.id+"Pointer";var f=this.element.id+"Target";var l=this.pointer.size;var k=this.target.value;var e=this.target.size;var j=k>0?0:parseInt(e);var p=this.pointer.color.length>0?"":this.toThemeProperty("jqx-fill-state-pressed");var g=this.target.color.length>0?"":this.toThemeProperty("jqx-fill-state-pressed");if(this.orientation=="horizontal"){var c=this._normaliseValue(l);var n=this._checkPercentage(l,this._chartContainer);var d=this.rtl?"right":"left";var t=(k-this._min)*this._valueToPixelsHorizontal-j;var u=t+parseInt(e)-this._chartContainer.width();if(t<0){t=0}else{if(u>0){t-=u}}var i=this._normaliseValue(e);o+="<div class='"+g+" "+this.toThemeProperty("jqx-bulletchart-target")+" "+this.toThemeProperty("jqx-bulletchart-target-horizontal")+"' id='"+f+"' style='"+d+": "+t+"px; width: "+i+"; background-color: "+this.target.color+"'></div>";o+="<div class='"+p+" "+this.toThemeProperty("jqx-bulletchart-pointer")+"' id='"+m+"' style='top: "+n+"; height: "+c+"; background-color: "+this.pointer.color+"'></div>"}else{if(this.orientation=="vertical"){var r=this._chartContainer.width();var q=this._normaliseValue(l);var s=this._checkPercentage(l,this._chartContainer);var b=(k-this._min)*this._valueToPixelsVertical-j;var u=b+parseInt(e)-this._chartContainer.height();if(b<0){b=0}else{if(u>0){b-=u}}var h=this._normaliseValue(e);o+="<div class='"+g+" "+this.toThemeProperty("jqx-bulletchart-target")+" "+this.toThemeProperty("jqx-bulletchart-target-vertical")+"' id='"+f+"' style='bottom: "+b+"px; height: "+h+"; background-color: "+this.target.color+"'></div>";o+="<div class='"+p+" "+this.toThemeProperty("jqx-bulletchart-pointer")+"' id='"+m+"' style='left: "+s+"; width: "+q+"; background-color: "+this.pointer.color+"'></div>"}}this._chartContainer.append(o)},_updatePointer:function(c,i){var h=a("#"+this.element.id+"Pointer");if(c.value>this._max){this.pointer.value=this._max}else{if(c.value<this._min){this.pointer.value=this._min}}if(c.value!=i.value){this._updateValue(c.value,i.value);if(this.showTooltip==true){this._updateTooltip()}}if(c.label!=i.label){if(this.showTooltip==true){this._updateTooltip()}}if(c.size!=i.size){var d=c.size;if(this.orientation=="horizontal"){var g=this._checkPercentage(d,this._chartContainer);var b=this._normaliseValue(d);h.css({top:g,height:b})}else{if(this.orientation=="vertical"){var f=this._checkPercentage(d,this._chartContainer);var e=this._normaliseValue(d);h.css({left:f,width:e})}}}if(c.color!=i.color){if(c.color==""){h.css("background-color","");h.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}else{h.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));h.css("background-color",c.color)}}},_updateTarget:function(b,d){var e=a("#"+this.element.id+"Target");if(b.value>this._max){this.target.value=this._max}else{if(b.value<this._min){this.target.value=this._min}}if(b.value!=d.value||b.size!=d.size){var h=b.value;var k=parseInt(b.size);var c=h>0?0:k;if(this.orientation=="horizontal"){var i=this.rtl?"right":"left";var j=(h-this._min)*this._valueToPixelsHorizontal-c;var g=j+k-this._chartContainer.width();if(j<0){j=0}else{if(g>0){j-=g}}if(this.rtl==false){e.css("left",j)}else{e.css("right",j)}e.width(k)}else{if(this.orientation=="vertical"){var f=(h-this._min)*this._valueToPixelsVertical-c;var g=f+k-this._chartContainer.height();if(f<0){f=0}else{if(g>0){f-=g}}e.css({bottom:f,height:k})}}if(this.showTooltip==true){this._updateTooltip()}}if(b.label!=d.label){if(this.showTooltip==true){this._updateTooltip()}}if(b.color!=d.color){if(b.color==""){e.css("background-color","");e.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}else{e.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));e.css("background-color",b.color)}}},_appendTitleAndDescription:function(){var d;if(this.orientation=="horizontal"){if(this.rtl==true){d=this.toThemeProperty("jqx-bulletchart-title-description-rtl")}else{d=this.toThemeProperty("jqx-bulletchart-title-description-ltr")}}else{d=this.toThemeProperty("jqx-bulletchart-title-description-vertical")}var g=this.rtl?"rtl":"ltr";var b="<div id='"+this.element.id+"Title' class='"+this.toThemeProperty("jqx-bulletchart-title")+" "+d+"' style='direction: "+g+";'>"+this.title+"</div><div id='"+this.element.id+"Description' class='"+this.toThemeProperty("jqx-bulletchart-description")+" "+d+"' style='direction: "+g+";'>"+this.description+"</div>";var e=a("<div style='position: absolute; visibility: hidden;'>"+b+"</div>");this._titleContainer.append(e);var h=e.children();var c=a(h[0]).height()+a(h[1]).height();e.remove();var f;if(this.orientation=="horizontal"){if(this.rtl==false){f=this.toThemeProperty("jqx-bulletchart-title-inner-container")+" "+this.toThemeProperty("jqx-bulletchart-title-inner-container-ltr")}else{f=this.toThemeProperty("jqx-bulletchart-title-inner-container")+" "+this.toThemeProperty("jqx-bulletchart-title-inner-container-rtl")}}else{f=""}this._titleContainer.append("<div class='"+f+"' style='height: "+c+"px;'>"+b+"</div>")},_appendTicksAndLabels:function(){var o=a("<div style='position: absolute; visibility: hidden;'></div>");this._chartContainer.append(o);var j="";var e=this._min<0?true:false;var b=this.ticks.size;if(this.orientation=="horizontal"){var k=this._titleContainer.width();var r=this._chartContainer.offset().top-this.host.offset().top;if(this.ticks.position=="both"||this.ticks.position=="far"){var l=this._chartContainer.height()+r}for(var h=0;h<=this._interval;h+=this.ticks.interval){var c=h*this._valueToPixelsHorizontal+k;if(h+this.ticks.interval>this._interval){c-=1}if(e){var d=(h+this._min)==0?true:false;if(d){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-horizontal")+" "+this.toThemeProperty("jqx-bulletchart-zero-tick")+"' style='top: "+r+"px; "+m+": "+c+"px; height: "+this._chartContainer.height()+"px;'></div>";e=false}}var n=this._labelValue(h);o.html(n);var p=c-o.width()/2;var m=this.rtl?"right":"left";if(this.ticks.position=="both"||this.ticks.position=="far"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-horizontal")+"' style='top: "+l+"px; "+m+": "+c+"px; height: "+b+"px;'></div>";j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='top: "+(l+b+2)+"px; "+m+": "+p+"px;'>"+n+"</div>"}if(this.ticks.position=="both"||this.ticks.position=="near"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-horizontal")+"' style='top: "+(r-b)+"px; "+m+": "+c+"px; height: "+b+"px;'></div>";j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='top: "+(r-(b+o.height()+2))+"px; "+m+": "+p+"px;'>"+n+"</div>"}}}else{if(this.orientation=="vertical"){var g=this._chartContainer.offset().left-this.host.offset().left;if(this.ticks.position=="both"||this.ticks.position=="far"){var q=this._chartContainer.width()}for(var h=0;h<=this._interval;h+=this.ticks.interval){var f=h*this._valueToPixelsVertical;if(h+this.ticks.interval>this._interval){f-=1}if(e){var d=(h+this._min)==0?true:false;if(d){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-vertical")+" "+this.toThemeProperty("jqx-bulletchart-zero-tick")+"' style='left: "+g+"px; bottom: "+f+"px; width: "+q+"px;'></div>";e=false}}if(this.ticks.position=="both"||this.ticks.position=="near"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-vertical")+"' style='left: "+(g-b)+"px; bottom: "+f+"px; width: "+b+"px;'></div>";var n=this._labelValue(h,"near");o.html(n);var p=o.height()/2-1;j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='left: "+(g-(b+o.width()+2))+"px; bottom: "+(f-p)+"px;'>"+n+"</div>"}if(this.ticks.position=="both"||this.ticks.position=="far"){j+="<div class='"+this.toThemeProperty("jqx-bulletchart-ticks")+" "+this.toThemeProperty("jqx-bulletchart-ticks-vertical")+"' style='left: "+(q+g)+"px; bottom: "+f+"px; width: "+b+"px;'></div>";var n=this._labelValue(h,"far");o.html(n);var p=o.height()/2-1;j+="<div class='"+this.toThemeProperty("jqx-bulletchart-labels")+"' style='left: "+(q+g+b+2)+"px; bottom: "+(f-p)+"px;'>"+n+"</div>"}}}}this.host.append(j);o.remove()},_labelValue:function(d,b){var e=d+this._min;var c;if(this.labelsFormatFunction){c=this.labelsFormatFunction(e,b)}else{c=a.jqx.dataFormat.formatnumber(e,this.labelsFormat)}return c},_initializeTooltip:function(){var c=this;var d=this._tooltipContent();this.host.jqxTooltip({theme:this.theme,position:"mouse",content:d,trigger:"none",autoHide:false,rtl:this.rtl});this.host.jqxTooltip("getInstance").val=a.proxy(this.val,this);var b=a("#"+this.element.id+"Pointer, #"+this.element.id+"Target");this.addHandler(b,"mouseenter.bulletchart"+this.element.id,function(e){if(c.disabled==false){c.host.jqxTooltip("open",e.pageX,e.pageY);if(e.target.id==c.element.id+"Pointer"&&c.pointer.color==""||e.target.id==c.element.id+"Target"&&c.target.color==""){a(e.target).removeClass(c.toThemeProperty("jqx-fill-state-pressed"));a(e.target).addClass(c.toThemeProperty("jqx-fill-state-hover"))}}});this.addHandler(b,"mouseleave.bulletchart"+this.element.id,function(e){if(c.disabled==false){c.host.jqxTooltip("close");if(e.target.id==c.element.id+"Pointer"&&c.pointer.color==""||e.target.id==c.element.id+"Target"&&c.target.color==""){a(e.target).removeClass(c.toThemeProperty("jqx-fill-state-hover"));a(e.target).addClass(c.toThemeProperty("jqx-fill-state-pressed"))}}})},_updateTooltip:function(){this.host.jqxTooltip({content:this._tooltipContent()})},_tooltipContent:function(){var c;if(this.tooltipFormatFunction){c=this.tooltipFormatFunction(this.pointer.value,this.target.value)}else{var b=a.jqx.dataFormat.formatnumber(this.pointer.value,this.labelsFormat);var d=a.jqx.dataFormat.formatnumber(this.target.value,this.labelsFormat);c="<div>"+this.pointer.label+": "+b+"</div><div>"+this.target.label+": "+d+"</div>"}return c},_updateValue:function(m,d,k){var j=this;var c=a("#"+this.element.id+"Pointer");var g,h,l,n;var f=function(p,r,q){if(j._min>=0){if(p=="vertical"){c.css("bottom",0)}else{if(j.rtl==true&&p=="horizontal"){c.css("right",0)}}g=(m-j._min)*r}else{if(m>=0){if(p=="horizontal"){if(j.rtl==true){h="right";l="left"}else{h="left"}}else{if(p=="vertical"){h="bottom";l="top"}}var o=-j._min*r}else{if(p=="horizontal"){if(j.rtl==true){h="left"}else{h="right";l="left"}}else{if(p=="vertical"){h="top"}}var o=q+j._min*r}c.css(h,o);if(l){c.css(l,"")}if(m*d<0){if(p=="horizontal"){c.width(0)}else{if(p=="vertical"){c.height(0)}}}g=Math.abs(m*r)}return g};var i=function(){if(!k){j._raiseEvent("0")}};if(this.orientation=="horizontal"){var e=f("horizontal",this._valueToPixelsHorizontal,this._chartContainer.width());setTimeout(function(){c.animate({width:e},j.animationDuration,i)},0)}else{if(this.orientation=="vertical"){var b=f("vertical",this._valueToPixelsVertical,this._chartContainer.height());setTimeout(function(){c.animate({height:b},j.animationDuration,i)},0)}}},_checkPercentage:function(f,d){var c=-1;if(f.indexOf){c=f.indexOf("%")}var g=function(h){if(!f.indexOf||f.indexOf("px")==-1){return h}else{return parseFloat(h.slice(0,f.indexOf("px")))}};var e=function(h){return parseFloat(h.slice(0,c))};if(c==-1){var b;if(this.orientation=="horizontal"){b=d.height()}else{if(this.orientation=="vertical"){b=d.width()}}return((b-g(f))/2)+"px"}else{return((100-e(f))/2)+"%"}},_normaliseValue:function(b){if(!b.indexOf||(b.indexOf("px")==-1&&b.indexOf("%")==-1)){return b+"px"}else{return b}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxbuttongroup.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxbuttongroup.js
new file mode 100644 (file)
index 0000000..bc56d96
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxButtonGroup","",{});a.extend(a.jqx._jqxButtonGroup.prototype,{defineInstance:function(){var b={mode:"default",roundedCorners:true,disabled:false,enableHover:false,orientation:"horizontal",width:null,height:null,_eventsMap:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend")},_events:["selected","unselected","buttonclick"],_buttonId:{},_selected:null,_pressed:null,rtl:false,_baseId:"group_button",aria:{"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(b){var c=this;c._isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(c);c.addHandler(c.host,"selectstart",function(d){if(!c.disabled){d.preventDefault()}})},refresh:function(){var b=this;if(b.width){if(b.width.toString()&&b.width.indexOf("%")>=0){b.element.style.width=b.width}else{b.host.width(b.width)}}if(b.height){b.host.height(b.height)}b._refreshButtons()},render:function(){this.refresh()},resize:function(){this.refresh()},_getEvent:function(c){var b=this;if(b._isTouchDevice){var d=b._eventsMap[c]||c;d+="."+b.element.id;return d}c+="."+b.element.id;return c},_refreshButtons:function(){var f=this;if(f.lastElement){f.lastElement.remove()}f.lastElement=a("<div style='clear: both;'></div>");var c=f.host.children(),e=c.length,g;switch(f.mode){case"radio":f.host.attr("role","radiogroup");break;case"checkbox":case"default":f.host.attr("role","group");break}var d=new Number(100/e).toFixed(2);for(var b=0;b<e;b+=1){g=a(c[b]);if(f.width){if(f.orientation==="horizontal"){g.css("width",d+"%");g.css("box-sizing","border-box");g.css("-moz-box-sizing","border-box");g.css("white-space","nowrap");g.css("text-overflow","ellipsis");g.css("overflow","hidden")}else{g.css("box-sizing","border-box");g.css("-moz-box-sizing","border-box");g.css("width","100%")}}f._refreshButton(g,b,e)}f.lastElement.appendTo(f.host)},_refreshButton:function(c,b,d){(function(e){var f=this;e=f._render(e);f._removeStyles(e);f._addStyles(e,b,d);f._performLayout(e);f._removeButtonListeners(e);f._addButtonListeners(e);f._handleButtonId(e,b);if(f.mode=="radio"){e.attr("role","radio")}else{e.attr("role","button")}e.attr("disabled",f.disabled);if(f.disabled){e.addClass(f.toThemeProperty("jqx-fill-state-disabled"))}else{e.removeClass(f.toThemeProperty("jqx-fill-state-disabled"))}}).apply(this,[c])},destroy:function(b){var f=this;var d=f.host.children(),e=d.length,g;for(var c=0;c<e;c+=1){g=a(d[c]);f._removeStyles(g);f._removeButtonListeners(g)}if(b!=false){f.host.remove()}},_render:function(b){var c=this;if(b[0].tagName.toLowerCase()==="button"){return c._renderFromButton(b)}else{return c._renderButton(b)}},_renderButton:function(b){var c;b.wrapInner("<div/>");return b},_removeStyles:function(b){var c=this;var d=c.toThemeProperty;c.host.removeClass("jqx-widget");c.host.removeClass("jqx-rc-all");b.removeClass(d.call(this,"jqx-fill-state-normal"));b.removeClass(d.call(this,"jqx-group-button-normal"));b.removeClass(d.call(this,"jqx-rc-tl"));b.removeClass(d.call(this,"jqx-rc-bl"));b.removeClass(d.call(this,"jqx-rc-tr"));b.removeClass(d.call(this,"jqx-rc-br"));b.css("margin-left",0)},_addStyles:function(c,b,e){var d=this;var f=this.toThemeProperty;d.host.addClass(f.call(this,"jqx-widget"));d.host.addClass(f.call(this,"jqx-rc-all"));d.host.addClass(f.call(this,"jqx-buttongroup"));c.addClass(f.call(this,"jqx-button"));c.addClass(f.call(this,"jqx-group-button-normal"));c.addClass(f.call(this,"jqx-fill-state-normal"));if(d.roundedCorners){if(b===0){d._addRoundedCorners(c,true)}else{if(b===e-1){d._addRoundedCorners(c,false)}}}if(d.orientation=="horizontal"){c.css("margin-left",-parseInt(c.css("border-left-width"),10))}else{c.css("margin-top",-parseInt(c.css("border-left-width"),10))}},_addRoundedCorners:function(b,d){var c=this;var e=c.toThemeProperty;if(c.orientation=="horizontal"){if(d){b.addClass(e.call(this,"jqx-rc-tl"));b.addClass(e.call(this,"jqx-rc-bl"))}else{b.addClass(e.call(this,"jqx-rc-tr"));b.addClass(e.call(this,"jqx-rc-br"))}}else{if(d){b.addClass(e.call(this,"jqx-rc-tl"));b.addClass(e.call(this,"jqx-rc-tr"))}else{b.addClass(e.call(this,"jqx-rc-bl"));b.addClass(e.call(this,"jqx-rc-br"))}}},_centerContent:function(c,b){c.css({"margin-top":(b.height()-c.height())/2,"margin-left":(b.width()-c.width())/2});return c},_renderFromButton:function(b){var c=b.val();if(c==""){c=b.html()}var e;var d=b[0].id;b.wrap("<div/>");e=b.parent();e.attr("style",b.attr("style"));b.remove();a.jqx.utilities.html(e,c);e[0].id=d;return e},_performLayout:function(b){if(this.orientation=="horizontal"){if(this.rtl){b.css("float","right")}else{b.css("float","left")}}else{b.css("float","none")}this._centerContent(a(b.children()),b)},_mouseEnterHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)||!b.enableHover){return}var f=b.toThemeProperty;c.addClass(f.call(b,"jqx-group-button-hover"));c.addClass(f.call(b,"jqx-fill-state-hover"))},_mouseLeaveHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)||!b.enableHover){return}var f=b.toThemeProperty;c.removeClass(f.call(b,"jqx-group-button-hover"));c.removeClass(f.call(b,"jqx-fill-state-hover"))},_mouseDownHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)){return}b._pressed=c;var f=b.toThemeProperty;c.addClass(f.call(b,"jqx-group-button-pressed"));c.addClass(f.call(b,"jqx-fill-state-pressed"))},_mouseUpHandler:function(d){var b=d.data.self,c=a(d.currentTarget);if(b._isDisabled(c)){return}b._handleSelection(c);b._pressed=null;c=b._buttonId[c[0].id];b._raiseEvent(2,{index:c.num,button:c.btn})},_isDisabled:function(b){if(!b||!b[0]){return false}return this._buttonId[b[0].id].disabled},_documentUpHandler:function(d){var b=d.data.self,c=b._pressed;if(c&&!b._buttonId[c[0].id].selected){c.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._pressed=null}},_addButtonListeners:function(c){var e=this;var b=e.addHandler;var d=e._getEvent;b(c,d.call(e,"mouseenter"),e._mouseEnterHandler,{self:e});b(c,d.call(e,"mouseleave"),e._mouseLeaveHandler,{self:e});b(c,d.call(e,"mousedown"),e._mouseDownHandler,{self:e});b(c,d.call(e,"mouseup"),e._mouseUpHandler,{self:e});b(a(document),d.call(e,"mouseup"),e._documentUpHandler,{self:e})},_removeButtonListeners:function(c){var e=this;var b=e.removeHandler;var d=e._getEvent;b(c,d.call(e,"mouseenter"),e._mouseEnterHandler);b(c,d.call(e,"mouseleave"),e._mouseLeaveHandler);b(c,d.call(e,"mousedown"),e._mouseDownHandler);b(c,d.call(e,"mouseup"),e._mouseUpHandler);b(a(document),d.call(e,"mouseup"),e._documentUpHandler)},_handleSelection:function(b){var c=this;if(c.mode==="radio"){c._handleRadio(b)}else{if(c.mode==="checkbox"){c._handleCheckbox(b)}else{c._handleDefault(b)}}},_handleRadio:function(b){var d=this;var c=d._getSelectedButton();if(c&&c.btn[0].id!==b[0].id){d._unselectButton(c.btn,true)}for(var e in d._buttonId){d._buttonId[e].selected=true;d._unselectButton(d._buttonId[e].btn,false)}d._selectButton(b,true)},_handleCheckbox:function(c){var d=this;var b=d._buttonId[c[0].id];if(b.selected){d._unselectButton(b.btn,true)}else{d._selectButton(c,true)}},_handleDefault:function(b){var c=this;c._selectButton(b,false);for(var d in c._buttonId){c._buttonId[d].selected=true;c._unselectButton(c._buttonId[d].btn,false)}},_getSelectedButton:function(){var b=this;for(var c in b._buttonId){if(b._buttonId[c].selected){return b._buttonId[c]}}return null},_getSelectedButtons:function(){var c=this;var b=[];for(var d in c._buttonId){if(c._buttonId[d].selected){b.push(c._buttonId[d].num)}}return b},_getButtonByIndex:function(b){var c=this;var e;for(var d in c._buttonId){if(c._buttonId[d].num===b){return c._buttonId[d]}}return null},_selectButton:function(c,e){var d=this;var b=d._buttonId[c[0].id];if(b.selected){return}var f=d.toThemeProperty;b.btn.addClass(f.call(this,"jqx-group-button-pressed"));b.btn.addClass(f.call(this,"jqx-fill-state-pressed"));b.selected=true;if(e){d._raiseEvent(0,{index:b.num,button:b.btn})}a.jqx.aria(b.btn,"aria-checked",true)},_unselectButton:function(c,e){var d=this;var b=d._buttonId[c[0].id];if(!b.selected){return}var f=d.toThemeProperty;b.btn.removeClass(f.call(this,"jqx-group-button-pressed"));b.btn.removeClass(f.call(this,"jqx-fill-state-pressed"));b.selected=false;if(e){d._raiseEvent(1,{index:b.num,button:b.btn})}a.jqx.aria(b.btn,"aria-checked",false)},setSelection:function(b){var d=this;if(b===-1){d.clearSelection();return}if(d.mode==="checkbox"){if(typeof b==="number"){d._setSelection(b)}else{for(var c=0;c<b.length;c+=1){d._setSelection(b[c])}}}else{if(typeof b==="number"&&d.mode==="radio"){d._setSelection(b)}}},_setSelection:function(b){var d=this;var c=d._getButtonByIndex(b);if(c){d._handleSelection(c.btn)}},getSelection:function(){var b=this;if(b.mode==="radio"){if(b._getSelectedButton()){return b._getSelectedButton().num}}else{if(b.mode==="checkbox"){return b._getSelectedButtons()}}return undefined},disable:function(){var c=this;c.disabled=true;var d;for(var b in c._buttonId){d=c._buttonId[b];c.disableAt(d.num)}a.jqx.aria(c,"aria-disabled",true)},enable:function(){var c=this;c.disabled=false;var d;for(var b in c._buttonId){d=c._buttonId[b];c.enableAt(d.num)}a.jqx.aria(c,"aria-disabled",false)},disableAt:function(b){var d=this;var c=d._getButtonByIndex(b);if(!c.disabled){c.disabled=true;c.btn.addClass(d.toThemeProperty("jqx-fill-state-disabled"))}},enableAt:function(b){var d=this;var c=d._getButtonByIndex(b);if(c.disabled){c.disabled=false;c.btn.removeClass(d.toThemeProperty("jqx-fill-state-disabled"))}},_handleButtonId:function(b,d){var f=b[0].id,e={btn:b,num:d,selected:false},c;if(!f){f=this._baseId+b.index()}b[0].id=f;this._buttonId[f]=e;return f},_raiseEvent:function(d,c){var b=a.Event(this._events[d]);b.args=c;return this.host.trigger(b)},_unselectAll:function(){for(var b in this._buttonId){this._unselectButton(this._buttonId[b].btn,false)}},clearSelection:function(){this._unselectAll()},propertyChangedHandler:function(b,c,e,d){if(c=="theme"&&d!=null){a.jqx.utilities.setTheme(e,d,b.host)}if(c==="mode"){b._unselectAll();b.refresh();return}else{if(c==="disabled"){if(d){b.disable()}else{b.enable()}}else{b.refresh()}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxbuttons.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxbuttons.js
new file mode 100644 (file)
index 0000000..9dd4224
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.cssroundedcorners=function(b){var c={all:"jqx-rc-all",top:"jqx-rc-t",bottom:"jqx-rc-b",left:"jqx-rc-l",right:"jqx-rc-r","top-right":"jqx-rc-tr","top-left":"jqx-rc-tl","bottom-right":"jqx-rc-br","bottom-left":"jqx-rc-bl"};for(prop in c){if(!c.hasOwnProperty(prop)){continue}if(b==prop){return c[prop]}}};a.jqx.jqxWidget("jqxButton","",{});a.extend(a.jqx._jqxButton.prototype,{defineInstance:function(){var b={cursor:"arrow",roundedCorners:"all",disabled:false,height:null,width:null,overrideTheme:false,enableHover:true,enableDefault:true,enablePressed:true,rtl:false,_ariaDisabled:false,_scrollAreaButton:false,template:"default",aria:{"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(d){var b=this;b._setSize();if(!b._ariaDisabled){b.host.attr("role","button")}if(!b.overrideTheme){b.host.addClass(b.toThemeProperty(a.jqx.cssroundedcorners(b.roundedCorners)));if(b.enableDefault){b.host.addClass(b.toThemeProperty("jqx-button"))}b.host.addClass(b.toThemeProperty("jqx-widget"))}b.isTouchDevice=a.jqx.mobile.isTouchDevice();if(!b._ariaDisabled){a.jqx.aria(this)}if(b.cursor!="arrow"){if(!b.disabled){b.host.css({cursor:b.cursor})}else{b.host.css({cursor:"arrow"})}}var g="mouseenter mouseleave mousedown focus blur";if(b._scrollAreaButton){var g="mousedown"}if(b.isTouchDevice){b.addHandler(b.host,a.jqx.mobile.getTouchEventName("touchstart"),function(h){b.isPressed=true;b.refresh()});b.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchend")+"."+b.element.id,function(h){b.isPressed=false;b.refresh()})}b.addHandler(b.host,g,function(h){switch(h.type){case"mouseenter":if(!b.isTouchDevice){if(!b.disabled&&b.enableHover){b.isMouseOver=true;b.refresh()}}break;case"mouseleave":if(!b.isTouchDevice){if(!b.disabled&&b.enableHover){b.isMouseOver=false;b.refresh()}}break;case"mousedown":if(!b.disabled){b.isPressed=true;b.refresh()}break;case"focus":if(!b.disabled){b.isFocused=true;b.refresh()}break;case"blur":if(!b.disabled){b.isFocused=false;b.refresh()}break}});b.mouseupfunc=function(h){if(!b.disabled){if(b.isPressed||b.isMouseOver){b.isPressed=false;b.refresh()}}};b.addHandler(a(document),"mouseup.button"+b.element.id,b.mouseupfunc);try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var f="";if(window.parent&&document.referrer){f=document.referrer}if(f.indexOf(document.location.host)!=-1){var e=function(h){b.isPressed=false;b.refresh()};if(window.top.document){b.addHandler(a(window.top.document),"mouseup",e)}}}}}catch(c){}b.propertyChangeMap.roundedCorners=function(h,j,i,k){h.host.removeClass(h.toThemeProperty(a.jqx.cssroundedcorners(i)));h.host.addClass(h.toThemeProperty(a.jqx.cssroundedcorners(k)))};b.propertyChangeMap.width=function(h,j,i,k){h._setSize();h.refresh()};b.propertyChangeMap.height=function(h,j,i,k){h._setSize();h.refresh()};b.propertyChangeMap.disabled=function(h,j,i,k){if(i!=k){h.host[0].disabled=k;h.host.attr("disabled",k);h.refresh();if(!k){h.host.css({cursor:h.cursor})}else{h.host.css({cursor:"default"})}a.jqx.aria(h,"aria-disabled",h.disabled)}};b.propertyChangeMap.rtl=function(h,j,i,k){if(i!=k){h.refresh()}};b.propertyChangeMap.template=function(h,j,i,k){if(i!=k){h.host.removeClass("jqx-"+i);h.refresh()}};b.propertyChangeMap.theme=function(h,j,i,k){h.host.removeClass();if(h.enableDefault){h.host.addClass(h.toThemeProperty("jqx-button"))}h.host.addClass(h.toThemeProperty("jqx-widget"));if(!h.overrideTheme){h.host.addClass(h.toThemeProperty(a.jqx.cssroundedcorners(h.roundedCorners)))}h._oldCSSCurrent=null;h.refresh()};if(b.disabled){b.element.disabled=true;b.host.attr("disabled",true)}},resize:function(c,b){this.width=c;this.height=b;this._setSize()},val:function(){var c=this;var b=c.host.find("input");if(b.length>0){if(arguments.length==0||typeof(value)=="object"){return b.val()}b.val(value);c.refresh();return b.val()}if(arguments.length==0||typeof(value)=="object"){if(c.element.nodeName.toLowerCase()=="button"){return a(c.element).text()}return c.element.value}c.element.value=arguments[0];if(c.element.nodeName.toLowerCase()=="button"){a(c.element).text(arguments[0])}c.refresh()},_setSize:function(){var b=this;if(b.width!=null&&(b.width.toString().indexOf("px")!=-1||b.width.toString().indexOf("%")!=-1)){b.host.css("width",b.width)}else{if(b.width!=undefined&&!isNaN(b.width)){b.host.css("width",b.width)}}if(b.height!=null&&(b.height.toString().indexOf("px")!=-1||b.height.toString().indexOf("%")!=-1)){b.host.css("height",b.height)}else{if(b.height!=undefined&&!isNaN(b.height)){b.host.css("height",parseInt(b.height))}}},_removeHandlers:function(){var b=this;b.removeHandler(b.host,"selectstart");b.removeHandler(b.host,"click");b.removeHandler(b.host,"focus");b.removeHandler(b.host,"blur");b.removeHandler(b.host,"mouseenter");b.removeHandler(b.host,"mouseleave");b.removeHandler(b.host,"mousedown");b.removeHandler(a(document),"mouseup.button"+b.element.id,b.mouseupfunc);if(b.isTouchDevice){b.removeHandler(b.host,a.jqx.mobile.getTouchEventName("touchstart"));b.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchend")+"."+b.element.id)}b.mouseupfunc=null;delete b.mouseupfunc},focus:function(){this.host.focus()},destroy:function(){var b=this;b._removeHandlers();var c=a.data(b.element,"jqxButton");if(c){delete c.instance}b.host.removeClass();b.host.removeData();b.host.remove();delete b.set;delete b.get;delete b.call;delete b.element;delete b.host},render:function(){this.refresh()},refresh:function(){var c=this;if(c.overrideTheme){return}var e=c.toThemeProperty("jqx-fill-state-focus");var i=c.toThemeProperty("jqx-fill-state-disabled");var b=c.toThemeProperty("jqx-fill-state-normal");if(!c.enableDefault){b=""}var h=c.toThemeProperty("jqx-fill-state-hover");var f=c.toThemeProperty("jqx-fill-state-pressed");var g=c.toThemeProperty("jqx-fill-state-pressed");if(!c.enablePressed){f=""}var d="";if(!c.host){return}c.host[0].disabled=c.disabled;if(c.disabled){d=b+" "+i;if(c.template!=="default"&&c.template!==""){d+=" jqx-"+c.template}c.host.addClass(d);c._oldCSSCurrent=d;return}else{if(c.isMouseOver&&!c.isTouchDevice){if(c.isPressed){d=g}else{d=h}}else{if(c.isPressed){d=f}else{d=b}}}if(c.isFocused){d+=" "+e}if(c.template!=="default"&&c.template!==""){d+=" jqx-"+c.template}if(d!=c._oldCSSCurrent){if(c._oldCSSCurrent){c.host.removeClass(c._oldCSSCurrent)}c.host.addClass(d);c._oldCSSCurrent=d}if(c.rtl){c.host.addClass(c.toThemeProperty("jqx-rtl"));c.host.css("direction","rtl")}}});a.jqx.jqxWidget("jqxLinkButton","",{});a.extend(a.jqx._jqxLinkButton.prototype,{defineInstance:function(){this.disabled=false;this.height=null;this.width=null;this.rtl=false;this.href=null},createInstance:function(d){var c=this;this.host.onselectstart=function(){return false};this.host.attr("role","button");var b=this.height||this.host.height();var e=this.width||this.host.width();this.href=this.host.attr("href");this.target=this.host.attr("target");this.content=this.host.text();this.element.innerHTML="";this.host.append("<input type='button' class='jqx-wrapper'/>");var f=this.host.find("input");f.addClass(this.toThemeProperty("jqx-reset"));f.width(e);f.height(b);f.val(this.content);this.host.find("tr").addClass(this.toThemeProperty("jqx-reset"));this.host.find("td").addClass(this.toThemeProperty("jqx-reset"));this.host.find("tbody").addClass(this.toThemeProperty("jqx-reset"));this.host.css("color","inherit");this.host.addClass(this.toThemeProperty("jqx-link"));f.css({width:e});f.css({height:b});var g=d==undefined?{}:d[0]||{};f.jqxButton(g);if(this.disabled){this.host[0].disabled=true}this.propertyChangeMap.disabled=function(h,j,i,k){h.host[0].disabled=k;h.host.find("input").jqxButton({disabled:k})};this.addHandler(f,"click",function(h){if(!this.disabled){c.onclick(h)}return false})},onclick:function(b){if(this.target!=null){window.open(this.href,this.target)}else{window.location=this.href}}});a.jqx.jqxWidget("jqxRepeatButton","jqxButton",{});a.extend(a.jqx._jqxRepeatButton.prototype,{defineInstance:function(){this.delay=50},createInstance:function(e){var c=this;var d=a.jqx.mobile.isTouchDevice();var b=!d?"mouseup."+this.base.element.id:"touchend."+this.base.element.id;var f=!d?"mousedown."+this.base.element.id:"touchstart."+this.base.element.id;this.addHandler(a(document),b,function(g){if(c.timeout!=null){clearTimeout(c.timeout);c.timeout=null;c.refresh()}if(c.timer!=undefined){clearInterval(c.timer);c.timer=null;c.refresh()}});this.addHandler(this.base.host,f,function(g){if(c.timer!=null){clearInterval(c.timer)}c.timeout=setTimeout(function(){clearInterval(c.timer);c.timer=setInterval(function(h){c.ontimer(h)},c.delay)},150)});this.mousemovefunc=function(g){if(!d){if(g.which==0){if(c.timer!=null){clearInterval(c.timer);c.timer=null}}}};this.addHandler(this.base.host,"mousemove",this.mousemovefunc)},destroy:function(){var c=a.jqx.mobile.isTouchDevice();var b=!c?"mouseup."+this.base.element.id:"touchend."+this.base.element.id;var e=!c?"mousedown."+this.base.element.id:"touchstart."+this.base.element.id;this.removeHandler(this.base.host,"mousemove",this.mousemovefunc);this.removeHandler(this.base.host,e);this.removeHandler(a(document),b);this.timer=null;delete this.mousemovefunc;delete this.timer;var d=a.data(this.base.element,"jqxRepeatButton");if(d){delete d.instance}a(this.base.element).removeData();this.base.destroy();delete this.base},stop:function(){clearInterval(this.timer);this.timer=null},ontimer:function(b){var b=new a.Event("click");if(this.base!=null&&this.base.host!=null){this.base.host.trigger(b)}}});a.jqx.jqxWidget("jqxToggleButton","jqxButton",{});a.extend(a.jqx._jqxToggleButton.prototype,{defineInstance:function(){this.toggled=false;this.uiToggle=true;this.aria={"aria-checked":{name:"toggled",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}}},createInstance:function(c){var b=this;b.base.overrideTheme=true;b.isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(this);b.propertyChangeMap.roundedCorners=function(d,f,e,g){d.base.host.removeClass(d.toThemeProperty(a.jqx.cssroundedcorners(e)));d.base.host.addClass(d.toThemeProperty(a.jqx.cssroundedcorners(g)))};b.propertyChangeMap.toggled=function(d,f,e,g){d.refresh()};b.propertyChangeMap.disabled=function(d,f,e,g){d.base.disabled=g;d.refresh()};b.addHandler(b.base.host,"click",function(d){if(!b.base.disabled&&b.uiToggle){b.toggle()}});if(!b.isTouchDevice){b.addHandler(b.base.host,"mouseenter",function(d){if(!b.base.disabled){b.refresh()}});b.addHandler(b.base.host,"mouseleave",function(d){if(!b.base.disabled){b.refresh()}})}b.addHandler(b.base.host,"mousedown",function(d){if(!b.base.disabled){b.refresh()}});b.addHandler(a(document),"mouseup.togglebutton"+b.base.element.id,function(d){if(!b.base.disabled){b.refresh()}})},destroy:function(){this._removeHandlers();this.base.destroy()},_removeHandlers:function(){this.removeHandler(this.base.host,"click");this.removeHandler(this.base.host,"mouseenter");this.removeHandler(this.base.host,"mouseleave");this.removeHandler(this.base.host,"mousedown");this.removeHandler(a(document),"mouseup.togglebutton"+this.base.element.id)},toggle:function(){this.toggled=!this.toggled;this.refresh();a.jqx.aria(this,"aria-checked",this.toggled)},unCheck:function(){this.toggled=false;this.refresh()},check:function(){this.toggled=true;this.refresh()},refresh:function(){var c=this;var h=c.base.toThemeProperty("jqx-fill-state-disabled");var b=c.base.toThemeProperty("jqx-fill-state-normal");if(!c.base.enableDefault){b=""}var g=c.base.toThemeProperty("jqx-fill-state-hover");var e=c.base.toThemeProperty("jqx-fill-state-pressed");var f=c.base.toThemeProperty("jqx-fill-state-pressed");var d="";c.base.host[0].disabled=c.base.disabled;if(c.base.disabled){d=b+" "+h;c.base.host.addClass(d);return}else{if(c.base.isMouseOver&&!c.isTouchDevice){if(c.base.isPressed||c.toggled){d=f}else{d=g}}else{if(c.base.isPressed||c.toggled){d=e}else{d=b}}}if(c.base.template!=="default"&&c.base.template!==""){d+=" jqx-"+c.base.template}if(c.base.host.hasClass(h)&&h!=d){c.base.host.removeClass(h)}if(c.base.host.hasClass(b)&&b!=d){c.base.host.removeClass(b)}if(c.base.host.hasClass(g)&&g!=d){c.base.host.removeClass(g)}if(c.base.host.hasClass(e)&&e!=d){c.base.host.removeClass(e)}if(c.base.host.hasClass(f)&&f!=d){c.base.host.removeClass(f)}if(!c.base.host.hasClass(d)){c.base.host.addClass(d)}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxcalendar.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxcalendar.js
new file mode 100644 (file)
index 0000000..55a97cf
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxCalendar","",{});a.extend(a.jqx._jqxCalendar.prototype,{defineInstance:function(){var b={disabled:false,restrictedDates:new Array(),multipleMonthRows:1,multipleMonthColumns:1,minDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),maxDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),min:new Date(1900,0,1),max:new Date(2100,0,1),navigationDelay:400,stepMonths:1,width:null,height:null,value:a.jqx._jqxDateTimeInput.getDateTime(new Date()),firstDayOfWeek:0,showWeekNumbers:false,showDayNames:true,enableWeekend:false,enableOtherMonthDays:true,showOtherMonthDays:true,rowHeaderWidth:25,columnHeaderHeight:20,titleHeight:25,dayNameFormat:"firstTwoLetters",monthNameFormat:"default",titleFormat:["MMMM yyyy","yyyy","yyyy","yyyy"],enableViews:true,readOnly:false,culture:"default",enableFastNavigation:true,enableHover:true,enableAutoNavigation:true,enableTooltips:false,backText:"Back",forwardText:"Forward",specialDates:new Array(),keyboardNavigation:true,selectionMode:"default",selectableDays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],todayString:"Today",clearString:"Clear",showFooter:false,selection:{from:null,to:null},canRender:true,_checkForHiddenParent:true,height:null,rtl:false,view:"month",views:["month","year","decade"],changing:null,change:null,localization:{backString:"Back",forwardString:"Forward",todayString:"Today",clearString:"Clear",calendar:{name:"Gregorian_USEnglish","/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss"}}},events:["backButtonClick","nextButtonClick","valuechanged","cellMouseDown","cellMouseUp","cellSelected","cellUnselected","change","viewChange"]};a.extend(true,this,b);this.minDate._setYear(1900);this.minDate._setMonth(1);this.minDate._setDay(1);this.minDate._setHours(0);this.minDate._setMinutes(0);this.minDate._setSeconds(0);this.minDate._setMilliseconds(0);this.maxDate._setYear(2100);this.maxDate._setMonth(1);this.maxDate._setDay(1);this.maxDate._setHours(0);this.maxDate._setMinutes(0);this.maxDate._setSeconds(0);this.maxDate._setMilliseconds(0);this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0);return b},createInstance:function(e){this.setCalendarSize();if(this.element.id===""){this.element.id=a.jqx.utilities.createId()}if(a.type(this.value)=="date"){this.value=a.jqx._jqxDateTimeInput.getDateTime(this.value)}this.element.innerHTML="";this.host.attr("data-role","calendar");var i=this.element.id;var h=this;this.propertyChangeMap.width=function(j,l,k,m){h.setCalendarSize()};this.propertyChangeMap.height=function(j,l,k,m){h.setCalendarSize()};if(a.global){a.global.preferCulture(this.culture)}if(this.culture!="default"){if(a.global){a.global.preferCulture(this.culture);this.localization.calendar=a.global.culture.calendar}else{if(Globalize){var c=Globalize.culture(this.culture);this.localization.calendar=c.calendar}}this.firstDayOfWeek=this.localization.calendar.firstDay}if(this.localization.backString!="Back"){this.backText=this.localization.backString}if(this.localization.forwardString!="Forward"){this.forwardText=this.localization.forwardString}if(this.localization.todayString!="Today"&&this.localization.todayString){this.todayString=this.localization.todayString}if(this.localization.clearString!="Clear"&&this.localization.clearString){this.clearString=this.localization.clearString}if(this.localization.calendar&&this.localization.calendar.firstDay!=undefined){this.firstDayOfWeek=this.localization.calendar.firstDay}this.setMaxDate(this.max,false);this.setMinDate(this.min,false);if(!this.host.attr("tabIndex")){this.host.attr("tabIndex",0)}this.host.css("outline","none");this.host.addClass(this.toThemeProperty("jqx-calendar"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this._addInput();if(this.views.indexOf("month")==-1){this.view="year"}if(this.views.indexOf("year")==-1&&this.views.indexOf("month")==-1){this.view="decade"}this.addHandler(this.host,"keydown",function(k){var j=true;if(h.keyboardNavigation){if(h._handleKey!=undefined){j=h._handleKey(k);if(!j){if(k.stopPropagation){k.stopPropagation()}if(k.preventDefault){k.preventDefault()}}}}return j});var d=false;var g=this;var b=false;if(h.width!=null&&h.width.toString().indexOf("%")!=-1){b=true}if(h.height!=null&&h.height.toString().indexOf("%")!=-1){b=true}a.jqx.utilities.resize(this.host,function(){var j=g.host.find("#View"+h.element.id);if(!d){d=true;g.render()}else{g.refreshTitle(j)}if(b){if(h.refreshTimer){clearTimeout(h.refreshTimer)}h.refreshTimer=setTimeout(function(){h.refreshControl()},1)}},false,this._checkForHiddenParent);var f="View";this.propertyChangeMap.disabled=function(j,l,k,m){if(m){j.host.addClass(h.toThemeProperty("jqx-fill-state-disabled"))}else{j.host.removeClass(h.toThemeProperty("jqx-fill-state-disabled"))}h.refreshControl()}},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}this.input.val(this.getDate().toString())},setCalendarSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.css("width",this.width)}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.css("height",this.height)}},_getYearAndMonthPart:function(c){if(!c){return new Date(1900,0,1)}var b=new Date(c.getFullYear(),c.getMonth(),1);return b},_handleKey:function(p){if(this.readOnly){return true}var A=p.keyCode;var y=this;var b=this._getSelectedDate();if(b==undefined){if(this.view=="month"&&(A==37||A==38||A==39||A==40)){this.selectedDate=new Date(this.value.year,this.value.month-1,1);this._selectDate(this.selectedDate,"key");b=this.selectedDate}else{return true}}if(p.altKey){return true}if(this._animating){return false}if(this.view!="month"&&A==13){var d=this._getSelectedCell();this._setDateAndSwitchViews(d,p,"keyboard")}if(this.view=="year"){var w=b.getMonth();var j=this._getYearAndMonthPart(this.getMinDate());var m=this._getYearAndMonthPart(this.getMaxDate());switch(A){case 37:if(w==0){var h=new Date(b.getFullYear()-1,11,1);if(h>=j){this.selectedDate=h;this.navigateBackward()}else{if(this.selectedDate!=j){this.selectedDate=j;this.navigateBackward()}}}else{var h=new Date(b.getFullYear(),w-1,1);if(h>=j){this._selectDate(h,"key")}}return false;case 38:var h=new Date(b.getFullYear(),w-4,1);if(h<j){h=j}if(w-4<0){this.selectedDate=h;this.navigateBackward()}else{this._selectDate(h,"key")}return false;case 40:var h=new Date(b.getFullYear(),w+4,1);if(h>m){h=m}if(w+4>11){this.selectedDate=h;this.navigateForward()}else{this._selectDate(h,"key")}return false;case 39:if(w==11){var h=new Date(b.getFullYear()+1,0,1);if(h<=m){this.selectedDate=h;this.navigateForward()}else{if(this.selectedDate!=m){this.selectedDate=m;this.navigateForward()}}}else{var h=new Date(b.getFullYear(),w+1,1);if(h<=m){this._selectDate(h,"key")}}return false}return true}if(this.view=="decade"){var o=this._renderStartDate.getFullYear();var k=this._renderEndDate.getFullYear();var n=b.getFullYear();var v=this.getMinDate().getFullYear();var c=this.getMaxDate().getFullYear();switch(A){case 37:if(n-1>=v){if(n<=o){this.selectedDate=new Date(n-1,b.getMonth(),1);this.navigateBackward()}else{this._selectDate(new Date(n-1,b.getMonth(),1),"key")}}return false;case 38:var x=n-4;if(n-4<v){x=v}if(x<o){this.selectedDate=new Date(x,b.getMonth(),1);this.navigateBackward()}else{this._selectDate(new Date(x,b.getMonth(),1),"key")}return false;case 40:var x=n+4;if(x>c){x=c}if(x>k){this.selectedDate=new Date(x,b.getMonth(),1);this.navigateForward()}else{this._selectDate(new Date(x,b.getMonth(),1),"key")}return false;case 39:if(n+1<=c){if(n==k){this.selectedDate=new Date(n+1,b.getMonth(),1);this.navigateForward()}else{this._selectDate(new Date(n+1,b.getMonth(),1),"key")}}return false}return true}var u=new a.jqx._jqxDateTimeInput.getDateTime(b);var f=this.getViewStart();var e=this.getViewEnd();var t=u;var s=a.data(this.element,"View"+this.element.id);if(s==undefined||s==null){return true}if(A==36){u._setDay(1);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");return false}if(A==35){var r=this.value._daysInMonth(this.value.year,this.value.month);u._setDay(r);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");return false}var g=1;if(p.ctrlKey){g=12}if(A==34){var z=this.navigateForward(g);if(z){u._addMonths(g);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key")}return false}if(A==33){var z=this.navigateBackward(g);if(z){u._addMonths(-g);if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key")}return false}if(A==38){u._addDays(-7);if(u.dateTime<this.getMinDate()){return false}if(u.dateTime<f){var z=this.navigateBackward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l<=u.dateTime){this.value.day=l.getDate();this.navigateBackward();this._selectDate(u.dateTime,"key");break}}return false}else{if(A==40){u._addDays(7);if(u.dateTime>this.getMaxDate()){return false}if(u.dateTime>e){var z=this.navigateForward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l>=u.dateTime){this.value.day=l.getDate();this.navigateForward();this._selectDate(u.dateTime,"key");break}}return false}}if(A==37){u._addDays(-1);if(u.dateTime<this.getMinDate()){return false}if(u.dateTime<f){var z=this.navigateBackward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l<=u.dateTime){if(u.dateTime<this.getMinDate()||u.dateTime>this.getMaxDate()){return false}if(this._isDisabled(u.dateTime)){return false}this.navigateBackward();this._selectDate(u.dateTime,"key");break}}return false}else{if(A==39){u._addDays(1);if(u.dateTime>this.getMaxDate()){return false}if(u.dateTime>e){var z=this.navigateForward();if(!z){return false}}if(this._isDisabled(u.dateTime)){return false}this._selectDate(u.dateTime,"key");for(var q=0;q<s.cells.length;q++){var d=s.cells[q];var l=d.getDate();if(d.isOtherMonth&&d.isSelected&&l>=u.dateTime){if(u.dateTime<this.getMinDate()||u.dateTime>this.getMaxDate()){return false}this.navigateForward();this._selectDate(u.dateTime,"key");break}}return false}}return true},render:function(){if(!this.canRender){return}this.host.children().remove();var c=this._renderSingleCalendar("View"+this.element.id);var b=this;this.host.append(c)},addSpecialDate:function(b,c,d){if(this.multipleMonthRows==1&&this.multipleMonthColumns==1){var e=this.specialDates.length;this.specialDates[e]={Date:b,Class:c,Tooltip:d};this.refreshControl()}},refresh:function(b){this.render()},invalidate:function(){this.refreshControl()},refreshControl:function(){if(this.multipleMonthRows==1&&this.multipleMonthColumns==1){this.refreshSingleCalendar("View"+this.element.id,null)}},getViewStart:function(){var c=this.getVisibleDate();var b=this.getFirstDayOfWeek(c);return b.dateTime},getViewEnd:function(){var c=this.getViewStart();var b=new a.jqx._jqxDateTimeInput.getDateTime(c);b._addDays(41);return b.dateTime},refreshSingleCalendar:function(f,e){if(!this.canRender){return}var h=this.host.find("#"+f);var d=this.getVisibleDate();var b=this.getFirstDayOfWeek(d);this.refreshCalendarCells(h,b,f);this.refreshTitle(h);this.refreshRowHeader(h,f);if(this.selectedDate!=undefined){this._selectDate(this.selectedDate)}var g=this.host.height()-this.titleHeight-this.columnHeaderHeight;if(!this.showDayNames){g=this.host.height()-this.titleHeight}if(this.showFooter){g-=20}var c=h.find("#cellsTable"+f);var i=h.find("#calendarRowHeader"+f);c.height(g);i.height(g)},refreshRowHeader:function(s,m){if(!this.showWeekNumbers){return}var c=this.getVisibleDate();var h=this.getFirstDayOfWeek(c);var n=h.dayOfWeek;var t=this.getWeekOfYear(h);var f=new a.jqx._jqxDateTimeInput.getDateTime(new Date(h.dateTime));f._addDays(5);f.dayOfWeek=f.dateTime.getDay();var k=this.getWeekOfYear(f);var e=this.rowHeader.find("table");e.width(this.rowHeaderWidth);var g=h;var q=new Array();for(var p=0;p<6;p++){var o=t.toString();var b=new a.jqx._jqxCalendar.cell(g.dateTime);var l=p+1+this.element.id;var j=a(e[0].rows[p].cells[0]);b.element=j;b.row=p;b.column=0;var d=j.find("#headerCellContent"+l);d.addClass(this.toThemeProperty("jqx-calendar-row-cell"));d[0].innerHTML=t;q[p]=b;g=new a.jqx._jqxDateTimeInput.getDateTime(new Date(g._addWeeks(1)));t=this.getWeekOfYear(g)}var r=a.data(this.element,s[0].id);r.rowCells=q;this._refreshOtherMonthRows(r,m)},_refreshOtherMonthRows:function(f,e){if(this.showOtherMonthDays){return}this._displayLastRow(true,e);this._displayFirstRow(true,e);var d=false;var g=false;for(var c=0;c<f.cells.length;c++){var b=f.cells[c];if(b.isVisible&&c<7){d=true}else{if(b.isVisible&&c>=f.cells.length-7){g=true}}}if(!d){this._displayFirstRow(false,e)}if(!g){this._displayLastRow(false,e)}},_displayLastRow:function(b,c){var g=this.host.find("#"+c);var f=g.find("#calendarRowHeader"+g[0].id).find("table");var d=null;if(this.showWeekNumbers){if(f[0].cells){var d=a(f[0].rows[5])}}var e=a(g.find("#cellTable"+g[0].id)[0].rows[5]);if(b){if(this.showWeekNumbers&&d){d.css("display","table-row")}e.css("display","table-row")}else{if(this.showWeekNumbers&&d){d.css("display","none")}e.css("display","none")}},_displayFirstRow:function(b,c){var e=this.host.find("#"+c);var d=e.find("#calendarRowHeader"+e[0].id).find("table");var f=null;if(this.showWeekNumbers){if(d[0].cells){var f=a(d[0].rows[0])}}var g=a(e.find("#cellTable"+e[0].id)[0].rows[0]);if(b){if(this.showWeekNumbers&&f){f.css("display","table-row")}g.css("display","table-row")}else{if(this.showWeekNumbers&&f){f.css("display","none")}g.css("display","none")}},_renderSingleCalendar:function(p,k){if(!this.canRender){return}var m=this.host.find("#"+p.toString());if(m!=null){m.remove()}var s=a("<div id='"+p.toString()+"'></div>");var b=this.getVisibleDate();var l=this.getFirstDayOfWeek(b);var e=new a.jqx._jqxDateTimeInput.getDateTime(l.dateTime);e._addMonths(1);var r=a.jqx._jqxCalendar.monthView(l,e,null,null,null,s);if(k==undefined||k==null){this.host.append(s);if(this.height!=undefined&&!isNaN(this.height)){s.height(this.height)}else{if(this.height!=null&&this.height.toString().indexOf("px")!=-1){s.height(this.height)}}if(this.width!=undefined&&!isNaN(this.width)){s.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("px")!=-1){s.width(this.width)}}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){s.width("100%")}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){s.height("100%")}}else{k.append(s)}a.data(this.element,p,r);var q=this.host.height()-this.titleHeight-this.columnHeaderHeight;if(!this.showDayNames){q=this.host.height()-this.titleHeight}if(this.showFooter){q-=20}if(this.rowHeaderWidth<0){this.rowHeaderWidth=0}if(this.columnHeaderHeight<0){this.columnHeaderHeight=0}if(this.titleHeight<0){this.titleHeight=0}var g=this.rowHeaderWidth;var j=this.columnHeaderHeight;if(!this.showWeekNumbers){g=0}if(!this.showDayNames){j=0}var u="<div style='height:"+this.titleHeight+"px;'><table role='grid' style='margin: 0px; width: 100%; height: 100%; border-spacing: 0px;' cellspacing='0' cellpadding='0'><tr role='row' id='calendarTitle' width='100%'><td role='gridcell' NOWRAP id='leftNavigationArrow'></td><td aria-live='assertive' aria-atomic='true' role='gridcell' align='center' NOWRAP id='calendarTitleHeader'></td><td role='gridcell' NOWRAP id='rightNavigationArrow'></td></tr></table></div>";var c="<table role='grid' class='"+this.toThemeProperty("jqx-calendar-month")+"' style='margin: 0px; border-spacing: 0px;' cellspacing='0' cellpadding='0'><tr role='row' id='calendarHeader' height='"+j+"'><td role='gridcell' id='selectCell' width='"+g+"'></td><td role='gridcell' colspan='2' style='border: none; padding-left: 2px; padding-right: 2px' id='calendarColumnHeader'></td></tr><tr role='row' id='calendarContent'><td role='gridcell' id='calendarRowHeader' valign='top' height='"+q+"' width='"+g+"'></td><td role='gridcell' valign='top' colspan='2' style='padding-left: 2px; padding-right: 2px' id='cellsTable' height='"+q+"'></td></tr></table>";var o="<div id='footer' style='margin: 0px; display: none; height:"+d+"px;'><table style='width: 100%; height: 100%; border-spacing: 0px;' cellspacing='0' cellpadding='0'><tr id='calendarFooter'><td align='right' id='todayButton'></td><td align='left' colspan='2' id=doneButton></td></tr></table></div>";s[0].innerHTML=u+c+o;this.header=s.find("#calendarHeader");this.header[0].id="calendarHeader"+p;this.header.addClass(this.toThemeProperty("calendar-header"));this.columnHeader=s.find("#calendarColumnHeader");this.columnHeader[0].id="calendarColumnHeader"+p;this.table=s.find("#cellsTable");this.table[0].id="cellsTable"+p;this.rowHeader=s.find("#calendarRowHeader");this.rowHeader[0].id="calendarRowHeader"+p;this.selectCell=s.find("#selectCell");this.selectCell[0].id="selectCell"+p;this.title=s.find("#calendarTitle");this.title[0].id="calendarTitle"+p;this.leftButton=s.find("#leftNavigationArrow");this.leftButton[0].id="leftNavigationArrow"+p;this.titleHeader=s.find("#calendarTitleHeader");this.titleHeader[0].id="calendarTitleHeader"+p;this.rightButton=s.find("#rightNavigationArrow");this.rightButton[0].id="rightNavigationArrow"+p;this.footer=s.find("#calendarFooter");this._footer=s.find("#footer");this._footer[0].id="footer"+p;this.footer[0].id="calendarFooter"+p;this.todayButton=s.find("#todayButton");this.todayButton[0].id="todayButton"+p;this.doneButton=s.find("#doneButton");this.doneButton[0].id="doneButton"+p;this.title.addClass(this.toThemeProperty("jqx-calendar-title-container"));var d=20;if(this.showFooter){this._footer.css("display","block")}s.find("tr").addClass(this.toThemeProperty("jqx-reset"));s.addClass(this.toThemeProperty("jqx-widget-content"));s.addClass(this.toThemeProperty("jqx-calendar-month-container"));this.month=s;this.selectCell.addClass(this.toThemeProperty("jqx-reset"));this.selectCell.addClass(this.toThemeProperty("jqx-calendar-top-left-header"));if(this.showWeekNumbers){this._renderRowHeader(s)}else{this.table[0].colSpan=3;this.columnHeader[0].colSpan=3;this.rowHeader.css("display","none");this.selectCell.css("display","none")}if(this.showFooter){this.footer.height(20);var i=a("<a href='javascript:;'>"+this.todayString+"</a>");i.appendTo(this.todayButton);var h=a("<a href='javascript:;'>"+this.clearString+"</a>");h.appendTo(this.doneButton);h.addClass(this.toThemeProperty("jqx-calendar-footer"));i.addClass(this.toThemeProperty("jqx-calendar-footer"));var n=this;var f="mousedown";if(a.jqx.mobile.isTouchDevice()){f=a.jqx.mobile.getTouchEventName("touchstart")}this.addHandler(i,f,function(){if(n.today){n.today()}else{n.setDate(new Date(),"mouse")}return false});this.addHandler(h,f,function(){if(n.clear){n.clear()}else{n.setDate(null,"mouse")}return false})}if(this.view!="month"){this.header.hide()}if(this.showDayNames&&this.view=="month"){this.renderColumnHeader(s)}this.oldView=this.view;this.renderCalendarCells(s,l,p);if(k==undefined||k==null){this.renderTitle(s)}this._refreshOtherMonthRows(r,p);s.find("tbody").css({border:"none",background:"transparent"});if(this.selectedDate!=undefined){this._selectDate(this.selectedDate)}var t=this;this.addHandler(this.host,"focus",function(){t.focus()});return s},_getTitleFormat:function(){switch(this.view){case"month":return this.titleFormat[0];case"year":return this.titleFormat[1];case"decade":return this.titleFormat[2];case"centuries":return this.titleFormat[3]}},renderTitle:function(t){var k=a("<div role='button' style='float: left;'></div>");var l=a("<div role='button' style='float: right;'></div>");var o=this.title;o.addClass(this.toThemeProperty("jqx-reset"));o.addClass(this.toThemeProperty("jqx-widget-header"));o.addClass(this.toThemeProperty("jqx-calendar-title-header"));var e=o.find("td");if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(e.css("background-color")!="transparent"){var g=o.css("background-color");e.css("background-color",g)}if(e.css("background-image")!="transparent"){var d=o.css("background-image");var p=o.css("background-repeat");var c=o.css("background-position");e.css("background-image",d);e.css("background-repeat",p);e.css("background-position","left center scroll")}}else{e.css("background-color","transparent")}if(this.disabled){o.addClass(this.toThemeProperty("jqx-calendar-title-header-disabled"))}k.addClass(this.toThemeProperty("jqx-calendar-title-navigation"));k.addClass(this.toThemeProperty("jqx-icon-arrow-left"));k.appendTo(this.leftButton);var m=this.leftButton;l.addClass(this.toThemeProperty("jqx-calendar-title-navigation"));l.addClass(this.toThemeProperty("jqx-icon-arrow-right"));l.appendTo(this.rightButton);var b=this.rightButton;if(this.enableTooltips){if(a(m).jqxTooltip){a(m).jqxTooltip({name:this.element.id,position:"mouse",theme:this.theme,content:this.backText});a(b).jqxTooltip({name:this.element.id,position:"mouse",theme:this.theme,content:this.forwardText})}}var n=this.titleHeader;var v=this._format(this.value.dateTime,this._getTitleFormat(),this.culture);if(this.view=="decade"){var q=this._format(this._renderStartDate,this._getTitleFormat(),this.culture);var j=this._format(this._renderEndDate,this._getTitleFormat(),this.culture);v=q+" - "+j}else{if(this.view=="centuries"){var q=this._format(this._renderCenturyStartDate,this._getTitleFormat(),this.culture);var j=this._format(this._renderCenturyEndDate,this._getTitleFormat(),this.culture);v=q+" - "+j}}var f=a("<div style='background: transparent; margin: 0; padding: 0; border: none;'>"+v+"</div>");n.append(f);f.addClass(this.toThemeProperty("jqx-calendar-title-content"));var s=parseInt(k.width());var i=t.width()-2*s;var r=n.find(".jqx-calendar-title-content").width(i);a.data(k,"navigateLeft",this);a.data(l,"navigateRight",this);var h=a.jqx.mobile.isTouchDevice();if(!this.disabled){var u=this;this.addHandler(n,"mousedown",function(A){if(u.enableViews){if(!u._viewAnimating&&!u._animating){var x=u.view;u.oldView=x;switch(u.view){case"month":u.view="year";break;case"year":u.view="decade";break}if(u.views.indexOf("year")==-1&&u.view=="year"){u.view="decade"}if(u.views.indexOf("decade")==-1&&u.view=="decade"){u.view=x}if(x!=u.view){var z="View"+u.element.id;var B=u.host.find("#"+z);var y=u.getVisibleDate();var w=u.getFirstDayOfWeek(y);u.renderCalendarCells(B,w,z,true);u.refreshTitle(B);u._raiseEvent("8")}}return false}});this.addHandler(k,"mousedown",function(x){if(!u._animating){a.data(k,"navigateLeftRepeat",true);var w=a.data(k,"navigateLeft");if(w.enableFastNavigation&&!h){w.startRepeat(w,k,true,u.navigationDelay+200)}w.navigateBackward(1,"arrow");x.stopPropagation();x.preventDefault();return w._raiseEvent(0,x)}else{return false}});this.addHandler(k,"mouseup",function(w){a.data(k,"navigateLeftRepeat",false)});this.addHandler(k,"mouseleave",function(w){a.data(k,"navigateLeftRepeat",false)});this.addHandler(l,"mousedown",function(x){if(!u._animating){a.data(l,"navigateRightRepeat",true);var w=a.data(l,"navigateRight");if(w.enableFastNavigation&&!h){w.startRepeat(w,l,false,u.navigationDelay+200)}w.navigateForward(1,"arrow");x.stopPropagation();x.preventDefault();return w._raiseEvent(1,x)}else{return false}});this.addHandler(l,"mouseup",function(w){a.data(l,"navigateRightRepeat",false)});this.addHandler(l,"mouseleave",function(w){a.data(l,"navigateRightRepeat",false)})}},refreshTitle:function(f){var g=this._format(this.value.dateTime,this._getTitleFormat(),this.culture);if(this.view=="decade"){var d=this._format(this._renderStartDate,this._getTitleFormat(),this.culture);var b=this._format(this._renderEndDate,this._getTitleFormat(),this.culture);g=d+" - "+b}else{if(this.view=="centuries"){var d=this._format(this._renderCenturyStartDate,this._getTitleFormat(),this.culture);var b=this._format(this._renderCenturyEndDate,this._getTitleFormat(),this.culture);g=d+" - "+b}}var e=this.titleHeader;if(this.titleHeader){var c=e.find(".jqx-calendar-title-content");var h=a("<div style='background: transparent; margin: 0; padding: 0; border: none;'>"+g+"</div>");e.append(h);h.addClass(this.toThemeProperty("jqx-calendar-title-content"));if(c!=null){c.remove()}}},startRepeat:function(d,b,f,e){var c=window.setTimeout(function(){var g=a.data(b,"navigateLeftRepeat");if(!f){g=a.data(b,"navigateRightRepeat")}if(g){if(e<25){e=25}if(f){d.navigateBackward(1,"arrow");d.startRepeat(d,b,true,e)}else{d.navigateForward(1,"arrow");c=d.startRepeat(d,b,false,e)}}else{window.clearTimeout(c);return}},e)},navigateForward:function(h,g){if(h==undefined||h==null){h=this.stepMonths}var f=this.value.year;if(this.view=="decade"){f=this._renderStartDate.getFullYear()+12;if(this._renderEndDate.getFullYear()>=this.getMaxDate().getFullYear()){return}}else{if(this.view=="year"){f=this.value.year+1}else{if(this.view=="centuries"){f=this.value.year+100}}}if(this.view!="month"){var b=this.getMaxDate().getFullYear();if(b<f||f>b){f=b}if(this.value.year==f){if(this.view==="decade"){if(this.value.year>this._renderEndDate.getFullYear()){this.value.year=f;this.value.month=1;this.value.day=1}else{return}}else{return}}this.value.year=f;this.value.month=1;this.value.day=1}var c=this.value.day;var i=this.value.month;if(i+h<=12){var e=this.value._daysInMonth(this.value.year,this.value.month+h);if(c>e){c=e}}if(this.view=="month"){var d=new Date(this.value.year,this.value.month-1+h,c);if(g=="arrow"&&this.selectableDays.length==7&&this.selectionMode!="range"){this.selectedDate=new Date(this.value.year,this.value.month-1+h,1)}}else{var d=new Date(this.value.year,this.value.month-1,c)}return this.navigateTo(d)},navigateBackward:function(g,f){if(g==undefined||g==null){g=this.stepMonths}var e=this.value.year;if(this.view=="decade"){e=this._renderStartDate.getFullYear()-12}else{if(this.view=="year"){e=this.value.year-1}else{if(this.view=="centuries"){e=this.value.year-100}}}if(this.view!="month"){var i=this.getMinDate().getFullYear();if(e<i){e=i}if(this.view=="decade"){if(this._renderStartDate){if(this._renderStartDate.getFullYear()==e){return}}}this.value.year=e;this.value.month=1;this.value.day=1}var b=this.value.day;var h=this.value.month;if(h-g>=1){var d=this.value._daysInMonth(this.value.year,this.value.month-g);if(b>d){b=d}}if(this.view=="month"){var c=new Date(this.value.year,this.value.month-1-g,b);if(f=="arrow"&&this.selectableDays.length==7&&this.selectionMode!="range"){this.selectedDate=new Date(this.value.year,this.value.month-1-g,1)}}else{var c=new Date(this.value.year,this.value.month-1,b)}return this.navigateTo(c)},_isRestrictedRange:function(d,c){if(d>c){return true}var b=d;while(b.valueOf()<=c.valueOf()){if(this._isRestrictedDate(b)){return true}b.setDate(b.getDate()+1)}return false},_hasUnrestrictedRanges:function(d,c){if(d>c){return false}var b=d;while(b.valueOf()<=c.valueOf()){if(!this._isRestrictedDate(b)){return true}b.setDate(b.getDate()+1)}return false},_getNextUnrestrictedDay:function(d,c){if(d>c){return null}var b=d;while(b.valueOf()<=c.valueOf()){if(!this._isRestrictedDate(b)){return b}b.setDate(b.getDate()+1)}return null},_isRestrictedDate:function(d){var c=this;if(!a.isArray(c.restrictedDates)){return false}for(var g=0;g<c.restrictedDates.length;g++){var b=c.restrictedDates[g];if(typeof(b)=="object"&&b.from!=undefined&&b.to!=undefined){var f=b.from;var e=b.to;if(d.valueOf()>=f.valueOf()&&d.valueOf()<=e.valueOf()){return true}}else{if(b.getMonth()==d.getMonth()&&b.getDate()==d.getDate()&&b.getFullYear()==d.getFullYear()){return true}}}return false},_isDisabled:function(d){var e=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var b=d.getDay();var c=e[b];if(this.selectableDays.indexOf(c)==-1){return true}if(this._isRestrictedDate(d)){return true}return false},refreshCalendarCells:function(x,f,m){if(this.view=="year"||this.view=="decade"||this.view=="centuries"){this.refreshViews(x,f,m);return}var s=this.table;var q=s.find("#cellTable"+m.toString());var e=f;var c=new Array();var n=0;var u=new a.jqx._jqxDateTimeInput.getDateTime(new Date());for(var p=0;p<6;p++){for(var o=0;o<7;o++){var d=p+1;var h=o;if(this.rtl){h=6-h}var t=h+1;var l="#cell"+d+t+this.element.id;var w=new Date(e.dateTime.getFullYear(),e.dateTime.getMonth(),e.dateTime.getDate());var b=new a.jqx._jqxCalendar.cell(w);var g=a(q[0].rows[p].cells[t-1]);g[0].id=l.substring(1);b.element=g;b.row=p;b.column=o;b.isVisible=true;b.isOtherMonth=false;b.isToday=false;b.isWeekend=false;b.isHighlighted=false;b.isSelected=false;if(e.month!=this.value.month){b.isOtherMonth=true;b.isVisible=this.showOtherMonthDays}if(this._isRestrictedDate(w)){b.isRestricted=true;b.isDisabled=true}if(!b.isDisabled){if(w<this.getMinDate()||w>this.getMaxDate()||this._isDisabled(w)){b.isDisabled=true}}if(e.month==u.month&&e.day==u.day&&e.year==u.year){b.isToday=true}if(e.isWeekend()){b.isWeekend=true}a.data(this.element,"cellContent"+l.substring(1),b);a.data(this.element,l.substring(1),b);c[n]=b;n++;a.jqx.utilities.html(g,e.day);this._applyCellStyle(b,g,g);e=new a.jqx._jqxDateTimeInput.getDateTime(new Date(e._addDays(1)))}}var v=a.data(this.element,x[0].id);if(v!=undefined&&v!=null){v.cells=c}this.renderedCells=c;this._refreshOtherMonthRows(v,m)},_getDecadeAndCenturiesData:function(){var k=new Array();var p=new Array();var c=this.getMaxDate().getFullYear()-this.getMinDate().getFullYear();if(c<12){c=12}var f=this.getMinDate();var b=this.getMaxDate();var l=this.value.dateTime.getFullYear();if(this.view=="decade"){if(l+12>b.getFullYear()){l=b.getFullYear()-11}if(l<f.getFullYear()){l=f.getFullYear()}for(var h=0;h<c;h++){var d=new Date(f.getFullYear()+h,0,1);if(f.getFullYear()<=l&&l<=d.getFullYear()){var g=new Date(d.getFullYear(),d.getMonth(),1);for(var e=0;e<12;e++){var o=new Date(g.getFullYear()+e,this.value.dateTime.getMonth(),this.value.dateTime.getDate());var m=o.getFullYear();if(f.getFullYear()<=m&&m<=b.getFullYear()){k.push(m);p.push(o);if(e==0){this._renderStartDate=o}this._renderEndDate=o}else{k.push(m);p.push(o)}}break}}}else{if(this.view=="centuries"){for(var h=0;h<c;h+=120){var d=new Date(f.getFullYear()+h+120,0,1);if(f.getFullYear()<=l&&l<=d.getFullYear()){var g=new Date(d.getFullYear()-130,d.getMonth(),1);if(g<f){g=f}for(var e=0;e<12;e++){var n=new Date(g.getFullYear()+e*10,g.getMonth(),1);if(g.getFullYear()>=f.getFullYear()&&n.getFullYear()<=b.getFullYear()){k.push("<span style='visibility: hidden;'>-</span>"+n.getFullYear()+"-"+(n.getFullYear()+9));p.push(n);if(e==0){this._renderCenturyStartDate=n}this._renderCenturyEndDate=new Date(n.getFullYear()+9,0,1)}}break}}}}return{years:k,dates:p}},refreshViews:function(A,m,s){var B=this;var c=new Array();var w=A.find("#cellTable"+s.toString());var D=this._getDecadeAndCenturiesData();var l=D.years;var C=D.dates;var t=0;var f=this.getMinDate();var n=this.getMaxDate();for(var v=0;v<3;v++){for(var u=0;u<4;u++){var d=v+1;var q=u;if(this.rtl){q=3-q}var x=q+1;var z=new Date(this.value.dateTime);z.setDate(1);z.setMonth(v*4+q);var b=new a.jqx._jqxCalendar.cell(z);var e=w[0].rows["row"+(1+v)+this.element.id];var o=a(e.cells[u]);b.isSelected=false;b.isVisible=true;b.element=o;b.row=v;b.column=u;b.index=c.length;var p="";if(this.view=="year"){var h=this.localization.calendar.months.names;var g=h[v*4+q];switch(this.monthNameFormat){case"default":g=this.localization.calendar.months.namesAbbr[v*4+q];break;case"shortest":g=this.localization.calendar.months.namesShort[v*4+q];break;case"firstTwoLetters":g=g.substring(0,2);break;case"firstLetter":g=g.substring(0,1);break}p=g}else{if(this.view=="decade"||this.view=="centuries"){p=l[v*4+q];if(undefined==p){p="<span style='cursor: default; visibility: hidden;'>2013</span>"}b.setDate(C[v*4+q])}}var z=b.getDate();if(this.view=="year"){if(z.getMonth()==this.getDate().getMonth()&&z.getFullYear()==this.getDate().getFullYear()){b.isSelected=true}}else{if(z.getFullYear()==this.getDate().getFullYear()){b.isSelected=true}}if(this.view=="year"){if(this._getYearAndMonthPart(z)<this._getYearAndMonthPart(f)){b.isDisabled=true}if(this._getYearAndMonthPart(z)>this._getYearAndMonthPart(n)){b.isDisabled=true}}else{if(z.getFullYear()<f.getFullYear()){b.isDisabled=true}if(z.getFullYear()>n.getFullYear()){b.isDisabled=true}}a.jqx.utilities.html(o,p);c[t]=b;t++}}var y=a.data(this.element,A[0].id);if(y!=undefined&&y!=null){y.cells=c}this.renderedCells=c;this._applyCellStyles()},_createViewClone:function(){var b=this.host.find(".jqx-calendar-month");var c=b.clone();c.css("position","absolute");c.css("top",b.position().top);return c},_addCellsTable:function(h,g){var e=this;var c=this.showFooter?20:0;if(this.view!="month"){g.height(this.host.height()-this.titleHeight)}else{g.height(this.host.height()-this.titleHeight-this.columnHeaderHeight-c)}this._viewAnimating=true;var b=this.host.find(".jqx-calendar-month-container");b.css("position","relative");var d=this.host.find(".jqx-calendar-month");var f=this._createViewClone();b.append(f);if(this.view!="month"){this.header.fadeOut(0);if(this.showWeekNumbers){this.rowHeader.fadeOut(0)}if(this.showFooter){this._footer.fadeOut(0)}}else{this.header.fadeIn(this.navigationDelay+200);if(this.showWeekNumbers){this.rowHeader.fadeIn(this.navigationDelay+200)}if(this.showFooter){this._footer.fadeIn(this.navigationDelay+200)}}h.children().remove();h.append(g);this._animateViews(f,g,function(){if(!e.selectedDate&&e.selectionMode!="range"){e.selectedDate=e.renderedCells[0].getDate()}try{e.renderedCells[0].element.focus();setTimeout(function(){e.renderedCells[0].element.focus()},10)}catch(i){}e._viewAnimating=false});g.addClass(this.toThemeProperty("jqx-calendar-view"))},_animateViews:function(c,b,e){var d=this;d._viewAnimating=true;if(d.oldView==d.view){c.remove();b.fadeOut(0);b.fadeIn(0);e();return}c.fadeOut(this.navigationDelay+100,function(){c.remove()});b.fadeOut(0);b.fadeIn(this.navigationDelay+200,function(){e()})},focus:function(){try{if(this.renderedCells&&this.renderedCells.length>0){var d=this;var c=false;if(!d.selectedDate&&d.selectionMode!="range"){this.setDate(new Date(),"mouse")}this.element.focus()}}catch(b){}},renderViews:function(E,n,v){var F=this;var e=new Array();var z=a("<table role='grid' style='border-color: transparent; width: 100%; height: 100%;' cellspacing='2' cellpadding='0' id=cellTable"+v.toString()+"><tr role='row' id='row1"+this.element.id+"'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row' id='row2"+this.element.id+"'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row' id='row3"+this.element.id+"'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr></table>");var q=this.host.find(".jqx-calendar-month-container");q.css("position","relative");var A=E.find("#cellsTable"+E[0].id);A[0].style.borderColor="transparent";var I=this._getDecadeAndCenturiesData();var m=I.years;var H=I.dates;var w=0;var g=this.getMinDate();var o=this.getMaxDate();var t=new Date(this.value.dateTime);t.setDate(1);for(var y=0;y<3;y++){for(var x=0;x<4;x++){var d=y+1;var u=x;if(this.rtl){u=3-u}var B=u+1;var f=z[0].rows["row"+(1+y)+this.element.id];var D=new Date(t);D.setMonth(y*4+u);var c=new a.jqx._jqxCalendar.cell(D);var p=a(f.cells[x]);c.isVisible=true;c.element=p;c.row=y;c.column=x;c.index=e.length;c.isSelected=false;var s="";if(this.view=="year"){if(D.getMonth()==this.getDate().getMonth()&&D.getFullYear()==this.getDate().getFullYear()){c.isSelected=true}var l=this.localization.calendar.months.names;var h=l[y*4+u];switch(this.monthNameFormat){case"default":h=this.localization.calendar.months.namesAbbr[y*4+u];break;case"shortest":h=this.localization.calendar.months.namesShort[y*4+u];break;case"firstTwoLetters":h=h.substring(0,2);break;case"firstLetter":h=h.substring(0,1);break}s=h}else{if(this.view=="decade"||this.view=="centuries"){s=m[y*4+u];c.setDate(H[y*4+u]);if(c.getDate().getFullYear()==this.getDate().getFullYear()){c.isSelected=true}if(undefined==s){s="<span style='cursor: default; visibility: hidden;'>2013</span>"}}}var D=c.getDate();if(this.view=="year"){var b=new Date(D);b.setDate(1);b.setHours(0,0,0,0);b.setMonth(D.getMonth()+1);b=new Date(b.valueOf()-1);if(this._getYearAndMonthPart(D)<this._getYearAndMonthPart(g)||this._getYearAndMonthPart(D)>this._getYearAndMonthPart(o)||!this._hasUnrestrictedRanges(D,b)){c.isDisabled=true}}else{var G=new Date(D);G.setMonth(0);G.setDate(1);G.setHours(0,0,0,0);G.setFullYear(D.getFullYear()+1);G=new Date(G.valueOf()-1);if(D.getFullYear()<g.getFullYear()||D.getFullYear()>o.getFullYear()||!this._hasUnrestrictedRanges(D,G)){c.isDisabled=true}}a.jqx.utilities.html(p,s);e[w]=c;w++}}a.each(e,function(){var j=this.element;var i=this;if(!F.disabled){F.addHandler(j,"mousedown",function(k){F._setDateAndSwitchViews(i,k,"mouse")});F.addHandler(j,"mouseover",function(r){var k=F.renderedCells[i.index];if(F.view!="centuries"&&k.element.html().toLowerCase().indexOf("span")!=-1){return}k.isHighlighted=true;F._applyCellStyle(k,k.element,k.element)});F.addHandler(j,"mouseout",function(r){var k=F.renderedCells[i.index];if(F.view!="centuries"&&k.element.html().toLowerCase().indexOf("span")!=-1){return}k.isHighlighted=false;F._applyCellStyle(k,k.element,k.element)})}});var C=a.data(this.element,E[0].id);if(C!=undefined&&C!=null){C.cells=e}this.renderedCells=e;this._addCellsTable(A,z);this._applyCellStyles()},_setDateAndSwitchViews:function(m,d,j){if(!this._viewAnimating&&!this._animating){var g=this.getDate();var e=this.renderedCells[m.index].getDate();var k=this.value.dateTime.getDate();var l=new Date(e);if(this.views.indexOf("month")!=-1){l.setDate(k)}else{l.setDate(1);e.setDate(1)}if(l.getMonth()==e.getMonth()){e=l}var i=this.getMinDate();var c=this.getMaxDate();if(this.view=="year"){if(this._getYearAndMonthPart(e)<this._getYearAndMonthPart(i)){return}if(this._getYearAndMonthPart(e)>this._getYearAndMonthPart(c)){return}}else{if(e.getFullYear()<i.getFullYear()){return}if(e.getFullYear()>c.getFullYear()){return}}if(this.selectionMode!="range"){this._selectDate(e)}this.oldView=this.view;switch(this.view){case"year":this.view="month";break;case"decade":this.view="year";break}if(this.views.indexOf("month")==-1){this.view="year"}if(this.views.indexOf("year")==-1){this.view="decade"}if(this.view=="year"){if(this._getYearAndMonthPart(e)<this._getYearAndMonthPart(i)){e=i}if(this._getYearAndMonthPart(e)>this._getYearAndMonthPart(c)){e=c}}else{if(e.getFullYear()<i.getFullYear()){e=i}if(e.getFullYear()>c.getFullYear()){e=c}}if(this.changing&&(this.selectedDate&&(this.selectedDate.getFullYear()!=e.getFullYear()||this.selectedDate.getMonth()!=e.getMonth()||this.selectedDate.getDate()!=e.getDate()))){e=this.selectedDate}this.value._setYear(e.getFullYear());this.value._setDay(e.getDate());this.value._setMonth(e.getMonth()+1);this.value._setDay(e.getDate());var h=this.getVisibleDate();var b=this.getFirstDayOfWeek(h);var f="View"+this.element.id;this.renderCalendarCells(this.month,b,f,true);this.refreshTitle(this.month);if(this.showWeekNumbers){this.refreshRowHeader(this.month,f)}if(this.views.length==3){if(this.view=="month"){if(this.selectionMode!="range"){this._selectDate(this.selectedDate,"view")}else{var n=this;a.each(this.renderedCells,function(r){var o=this;var t=o.getDate();var p=a(o.element);var q=p;if(p.length==0){return false}var s=function(v){if(v==null){return new Date()}var u=new Date();u.setHours(0,0,0,0);u.setFullYear(v.getFullYear(),v.getMonth(),v.getDate());return u};if(!o.isOtherMonth&&s(t).toString()==s(e).toString()){n.value._setMonth(e.getMonth()+1);n.value._setDay(e.getDate());n.value._setYear(e.getFullYear())}o.isSelected=false;o.isDisabled=false;if(s(t)<s(n.selection.from)&&n._clicks==1){o.isDisabled=true}if(n.getMaxDate()<t){o.isDisabled=true}if(n.getMinDate()>t){o.isDisabled=true}if(n._isDisabled(t)){o.isDisabled=true}if(!o.isDisabled){if(s(t)>=s(n.selection.from)&&s(t)<=s(n.selection.to)){o.isSelected=true}}});this._applyCellStyles()}}}if(this.view!="month"){if(this.oldView=="year"||(this.views.indexOf("year")==-1&&this.view=="decade")){if(j!="keyboard"){this._raiseEvent("3")}this._raiseEvent("5",{selectionType:"mouse"})}}this._raiseEvent("8")}},renderCalendarCells:function(D,m,s,q){if(this.view=="year"||this.view=="decade"||this.view=="centuries"){this.renderViews(D,m,s);return}var x=a("<table role='grid' style='width: 100%; height: 100%; border-color: transparent;' cellspacing='2' cellpadding='1' id=cellTable"+s.toString()+"><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr></table>");var y=this.table;y[0].style.borderColor="transparent";if(q==undefined){var g=y.find("#cellTable"+s.toString());if(g!=null){g.remove()}y.append(x)}var l=m;var b=this.showDayNames?1:0;var f=this.showWeekNumbers?1:0;var d=new Array();var t=0;var v=(D.width()-this.rowHeaderWidth-2)/7;if(!this.showWeekNumbers){v=(D.width()-2)/7}v=parseInt(v);var A=new a.jqx._jqxDateTimeInput.getDateTime(new Date());for(var w=0;w<6;w++){for(var u=0;u<7;u++){var e=w+1;var o=u;if(this.rtl){o=6-o}var z=o+1;var p="#cell"+e+z+this.element.id;var C=new Date(l.dateTime.getFullYear(),l.dateTime.getMonth(),l.dateTime.getDate());var c=new a.jqx._jqxCalendar.cell(C);var n=a(x[0].rows[w].cells[z-1]);n[0].id=p.substring(1);c.isVisible=true;c.isDisabled=false;if(l.month!=this.value.month){c.isOtherMonth=true;c.isVisible=this.showOtherMonthDays}if(this._isRestrictedDate(C)){c.isRestricted=true;c.isDisabled=true}if(!c.isDisabled){if(C<this.getMinDate()||C>this.getMaxDate()||this._isDisabled(C)){c.isDisabled=true}}if(l.month==A.month&&l.day==A.day&&l.year==A.year){c.isToday=true}if(l.isWeekend()){c.isWeekend=true}c.element=n;c.row=b;c.column=f;a.jqx.utilities.html(n,l.day);l=new a.jqx._jqxDateTimeInput.getDateTime(new Date(l._addDays(1)));a.data(this.element,"cellContent"+p.substring(1),c);a.data(this.element,""+p.substring(1),c);var E=this;this.addHandler(n,"mousedown",function(I){if(!E.readOnly&&!E.disabled){var H=a(I.target);var j=a.data(E.element,H[0].id);var i=E._raiseEvent(3,I);if(j!=null&&j!=undefined){var r=j.getDate();if(E.getMinDate()<=r&&r<=E.getMaxDate()){if(!j.isDisabled){if(j.isOtherMonth&&E.enableAutoNavigation){if(j.row<2){E.navigateBackward()}else{E.navigateForward()}E._selectDate(j.getDate(),"mouse",I.shiftKey)}else{var F=new Date(E.getDate());E._selectDate(j.getDate(),"mouse",I.shiftKey);E.value._setYear(r.getFullYear());E.value._setDay(1);E.value._setMonth(r.getMonth()+1);E.value._setDay(r.getDate());var G=E.host.find(".jqx-calendar-month");G.stop();G.css("margin-left","0px");var k=E.getDate();E._raiseEvent("2");if(j.isOtherMonth){E._raiseEvent("5",{selectionType:"mouse"})}}}}}return false}});if(!E.disabled){var h=function(F,j){if(!E.readOnly){var r=a(F.target);var i=a.data(E.element,r[0].id);if(i!=null&&i!=undefined){var k=i.getDate();if(E.getMinDate()<=k&&k<=E.getMaxDate()){i.isHighlighted=j;E._applyCellStyle(i,i.element,r)}}}};this.addHandler(n,"mouseenter",function(i){h(i,true);return false});this.addHandler(n,"mouseleave",function(i){h(i,false);return false})}f++;d[t]=c;t++}f=0;b++}var B=a.data(this.element,D[0].id);if(B!=undefined&&B!=null){B.cells=d}this.renderedCells=d;if(q!=undefined){this._addCellsTable(y,x)}this._applyCellStyles();this._refreshOtherMonthRows(B,s)},setMaxDate:function(b,c){if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.maxDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(c!==false){this.render()}},getMaxDate:function(){if(this.maxDate!=null&&this.maxDate!=undefined){return this.maxDate.dateTime}return null},setMinDate:function(b,c){if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.minDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(c!==false){this.render()}},getMinDate:function(){if(this.minDate!=null&&this.minDate!=undefined){return this.minDate.dateTime}return null},navigateTo:function(f,h){if(this.view=="month"){var g=this.getMinDate();var c=new Date(this.getMaxDate().getFullYear(),this.getMaxDate().getMonth()+1,this.getMaxDate().getDate());if((f<this._getYearAndMonthPart(g))||(f>this._getYearAndMonthPart(c))){return false}}else{if(f&&(f.getFullYear()<this.getMinDate().getFullYear()||f.getFullYear()>this.getMaxDate().getFullYear())){return false}}if(f==null){return false}if(h==undefined){var i=this;if(this._animating){return}this._animating=true;var d=this.host.find(".jqx-calendar-month-container");if(this._viewClone){this._viewClone.stop();this._viewClone.remove()}if(this._newViewClone){this._newViewClone.stop();this._newViewClone.remove()}var k=this.host.find(".jqx-calendar-month");k.stop();k.css("margin-left","0px");var b=k.clone();this._viewClone=b;var j=new Date(this.value.dateTime);this.value._setYear(f.getFullYear());this.value._setDay(f.getDate());this.value._setMonth(f.getMonth()+1);i.refreshControl();d.css("position","relative");b.css("position","absolute");b.css("top",k.position().top);d.append(b);if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.month.css("position","relative");this.month.css("overflow","hidden");this.table.css("position","relative");this.table.css("overflow","hidden")}var e=-this.host.width();if(f<j){if(this.view=="month"&&f.getMonth()!=j.getMonth()){e=this.host.width()}else{if(f.getFullYear()!=j.getFullYear()){e=this.host.width()}}}b.animate({marginLeft:parseInt(e)+"px"},this.navigationDelay,function(){b.remove()});var l=k.clone();this._newViewClone=l;l.css("position","absolute");l.css("top",k.position().top);d.append(l);l.css("margin-left",-e);k.css("visibility","hidden");l.animate({marginLeft:"0px"},this.navigationDelay,function(){l.remove();k.css("visibility","inherit");i._animating=false})}else{this.value._setYear(f.getFullYear());this.value._setDay(f.getDate());this.value._setMonth(f.getMonth()+1);var k=this.host.find(".jqx-calendar-month");k.stop();k.css("margin-left","0px");this.refreshControl()}this._raiseEvent("2");this._raiseEvent("8");return true},setDate:function(b){if(b!=null&&typeof(b)=="string"){b=new Date(b)}if(this.canRender==false){this.canRender=true;this.render()}this.navigateTo(b,"api");this._selectDate(b);if(this.selectionMode=="range"){this._selectDate(b,"mouse")}return true},val:function(b){if(arguments.length!=0){if(b==null){this.setDate(null)}if(b instanceof Date){this.setDate(b)}if(typeof(b)=="string"){this.setDate(b)}}return this.getDate()},getDate:function(){if(this.selectedDate==undefined){return new Date()}return this.selectedDate},getValue:function(){if(this.value==undefined){return new Date()}return this.value.dateTime},setRange:function(c,b){if(this.canRender==false){this.canRender=true;this.render()}this.navigateTo(c,"api");this._selectDate(c,"mouse");this._selectDate(b,"mouse")},getRange:function(){return this.selection},_selectDate:function(d,g,c){if(this.selectionMode=="none"){return}if(g==null||g==undefined){g="none"}if(c==null||c==undefined){c=false}var i=a.data(this.element,"View"+this.element.id);if(i==undefined||i==null){return}if(this.changing){if(d&&this.selectedDate){if(this.selectedDate.getFullYear()!=d.getFullYear()||this.selectedDate.getDate()!=d.getDate()||this.selectedDate.getMonth()!=d.getMonth()){var j=this.changing(this.selectedDate,d)}if(j){d=j}}}var k=this;if(this.input){if(d!=null){this.input.val(d.toString())}else{this.input.val("")}}var e=this.selectedDate;this.selectedDate=d;if(this.view!="month"){if(e!=d){this._raiseEvent(7)}a.each(this.renderedCells,function(p){var l=this;var q=l.getDate();var m=a(l.element);var o=m.find("#cellContent"+m[0].id);if(d==null){l.isSelected=false;l.isDisabled=false}else{l.isSelected=false;if(q){if((q.getMonth()==d.getMonth()&&k.view=="year"&&q.getFullYear()==d.getFullYear())||(k.view=="decade"&&q.getFullYear()==d.getFullYear())){l.isSelected=true;try{if(g!="none"){l.element.focus()}}catch(n){}}}}k._applyCellStyle(l,m,m)});if(this.change){this.change(d)}return}if(this.view=="month"){if(this.selectionMode=="range"&&g=="key"){var f=this.getVisibleDate();var b=this.getFirstDayOfWeek(f);this.refreshCalendarCells(this.month,b,"View"+this.element.id)}}var h=false;a.each(this.renderedCells,function(r){var w=this;var o=w.getDate();var v=a(w.element);var l=v;if(v.length==0){return false}if(d==null){w.isSelected=false;w.isDisabled=false;if(r==0){k.selection={from:null,to:null};k._raiseEvent("2");k._raiseEvent("5",{selectionType:g})}}else{if(k.selectionMode!="range"||g=="key"){if(o.getDate()==d.getDate()&&o.getMonth()==d.getMonth()&&o.getFullYear()==d.getFullYear()&&w.isSelected){k._applyCellStyle(w,v,l);k._raiseEvent("5",{selectionType:g});return}if(w.isSelected){k._raiseEvent("6",{selectionType:g})}w.isSelected=false;if(o.getDate()==d.getDate()&&o.getMonth()==d.getMonth()&&o.getFullYear()==d.getFullYear()){w.isSelected=true;if(r==0){k.selection={date:d}}try{if(g!="none"){w.element.focus();k.host.focus()}}catch(s){}if(!w.isOtherMonth){k.value._setMonth(d.getMonth()+1);k.value._setDay(d.getDate());k.value._setYear(d.getFullYear());k._raiseEvent("2");k._raiseEvent("5",{selectionType:g})}}if(k.selectionMode=="range"){k._clicks=0;k.selection={from:d,to:d}}}else{if(k.selectionMode=="range"){if(g=="view"){w.isSelected=false;w.isDisabled=false;if(k.getMaxDate()<o){w.isDisabled=true}if(k.getMinDate()>o){w.isDisabled=true}if(k._isRestrictedDate(o)){w.isDisabled=true;w.isRestricted=true}if(!w.isDisabled&&k._isDisabled(o)){w.isDisabled=true}k._applyCellStyle(w,v,l);return true}if(r==0){if(g!="none"){if(k._clicks==undefined){k._clicks=0}k._clicks++;if(c){k._clicks++}if(k._clicks==1){k.selection={from:d,to:d}}else{var u=k.selection.from;var q=u<=d?u:d;var t=u<=d?d:u;if(q){var m=new Date(q.getFullYear(),q.getMonth(),q.getDate())}if(t){var n=new Date(t.getFullYear(),t.getMonth(),t.getDate(),23,59,59)}k.selection={from:m,to:n};k._clicks=0}}else{if(k.selection==null||k.selection.from==null){k.selection={from:d,to:d};if(k._clicks==undefined){k._clicks=0}k._clicks++;if(k._clicks==2){k._clicks=0}}}}var p=function(y){if(y==null){return new Date()}var x=new Date();x.setHours(0,0,0,0);x.setFullYear(y.getFullYear(),y.getMonth(),y.getDate());return x};if(!w.isOtherMonth&&p(o).toString()==p(d).toString()){k.value._setMonth(d.getMonth()+1);k.value._setDay(d.getDate());k.value._setYear(d.getFullYear());k._raiseEvent("2");k._raiseEvent("5",{selectionType:g})}w.isSelected=false;w.isDisabled=h;if(p(o)<p(k.selection.from)&&k._clicks==1){w.isDisabled=true}if(k.getMaxDate()<o){w.isDisabled=true}if(k.getMinDate()>o){w.isDisabled=true}if(k._isRestrictedDate(o)){w.isRestricted=true;w.isDisabled=true}if(!w.isDisabled&&k._isDisabled(o)){w.isDisabled=true}if(!w.isDisabled){if(p(o)>=p(k.selection.from)&&p(o)<=p(k.selection.to)){w.isSelected=true}}else{if(!k.allowRestrictedDaysInRange&&p(o)>=p(k.selection.from)&&k.selection.to==k.selection.from){h=true}}}}}k._applyCellStyle(w,v,l)});if(k.selectionMode=="range"&&k._clicks==0){k._raiseEvent(7);return}else{if(k.selectionMode=="range"){return}}if(e!=d){k._raiseEvent(7);if(this.change){this.change(d)}}},_getSelectedDate:function(){var d=a.data(this.element,"View"+this.element.id);if(d==undefined||d==null){return}if(this.view!="month"){return this.selectedDate}for(var c=0;c<d.cells.length;c++){var b=d.cells[c];var e=b.getDate();if(b.isSelected){return e}}if(this.selectedDate){return this.selectedDate}},_getSelectedCell:function(){var d=a.data(this.element,"View"+this.element.id);if(d==undefined||d==null){return}for(var c=0;c<d.cells.length;c++){var b=d.cells[c];var e=b.getDate();if(b.isSelected){return b}}},_applyCellStyle:function(c,d,g){var e=this;if(g==null||(g!=null&&g.length==0)){g=d}var b="";b=this.toThemeProperty("jqx-rc-all");b+=" "+this.toThemeProperty("jqx-item");if(this.disabled||(c.isDisabled&&!c.isRestricted)){b+=" "+this.toThemeProperty("jqx-calendar-cell-disabled");b+=" "+this.toThemeProperty("jqx-fill-state-disabled")}if(!this.disabled&&c.isRestricted){b+=" "+this.toThemeProperty("jqx-calendar-cell-restrictedDate")}if(c.isOtherMonth&&this.enableOtherMonthDays&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-othermonth")}if(c.isWeekend&&this.enableWeekend&&c.isVisible&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-weekend")}if(!c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-hidden")}else{b+=" "+this.toThemeProperty("jqx-calendar-cell");if(this.view!="month"){if(g.length>0&&g.html().toLowerCase().indexOf("span")!=-1){g.css("cursor","default")}}}g.removeAttr("aria-selected");if(c.isSelected&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-selected");b+=" "+this.toThemeProperty("jqx-fill-state-pressed");g.attr("aria-selected",true);this.host.removeAttr("aria-activedescendant").attr("aria-activedescendant",g[0].id);var f=c.getDate();if(this._isDisabled(f)){b+=" "+this.toThemeProperty("jqx-calendar-cell-selected-invalid")}}if(c.isHighlighted&&c.isVisible&&this.enableHover){if(!c.isDisabled){b+=" "+this.toThemeProperty("jqx-calendar-cell-hover");b+=" "+this.toThemeProperty("jqx-fill-state-hover")}}b+=" "+this.toThemeProperty("jqx-calendar-cell-"+this.view);if(c.isToday&&c.isVisible){b+=" "+this.toThemeProperty("jqx-calendar-cell-today")}g[0].className=b;if(this.specialDates.length>0){var h=this;a.each(this.specialDates,function(){if(this.Class!=undefined&&this.Class!=null&&this.Class!=""){g.removeClass(this.Class)}else{g.removeClass(e.toThemeProperty("jqx-calendar-cell-specialDate"))}var i=c.getDate();if(i.getFullYear()==this.Date.getFullYear()&&i.getMonth()==this.Date.getMonth()&&i.getDate()==this.Date.getDate()){if(c.tooltip==null&&this.Tooltip!=null){c.tooltip=this.Tooltip;if(a(g).jqxTooltip){var j=this.Class;a(g).jqxTooltip({value:{cell:c,specialDate:this.Date},name:h.element.id,content:this.Tooltip,position:"mouse",theme:h.theme,opening:function(k){if(g.hasClass(e.toThemeProperty("jqx-calendar-cell-specialDate"))){return true}if(g.hasClass(j)){return true}return false}})}}g.removeClass(e.toThemeProperty("jqx-calendar-cell-othermonth"));g.removeClass(e.toThemeProperty("jqx-calendar-cell-weekend"));if(this.Class==undefined||this.Class==""){g.addClass(e.toThemeProperty("jqx-calendar-cell-specialDate"));return false}else{g.addClass(this.Class);return false}}})}},_applyCellStyles:function(){var f=a.data(this.element,"View"+this.element.id);if(f==undefined||f==null){return}for(var e=0;e<f.cells.length;e++){var b=f.cells[e];var c=a(b.element);var d=c.find("#cellContent"+c[0].id);if(d.length==0){d=c}this._applyCellStyle(b,c,d)}},getWeekOfYear:function(f){var b=new Date(f.dateTime);dowOffset=this.firstDayOfWeek;var e=new Date(b.getFullYear(),0,1);var c=e.getDay()-dowOffset;c=(c>=0?c:c+7);var d=Math.floor((b.getTime()-e.getTime()-(b.getTimezoneOffset()-e.getTimezoneOffset())*60000)/86400000)+1;var g;if(c<4){g=Math.floor((d+c-1)/7)+1;if(g>52){nYear=new Date(b.getFullYear()+1,0,1);nday=nYear.getDay()-dowOffset;nday=nday>=0?nday:nday+7;g=nday<4?1:53}}else{g=Math.floor((d+c-1)/7)}return g},renderColumnHeader:function(w){if(!this.showDayNames){return}var t=a("<table role='grid' style='border-spacing: 0px; border-collapse: collapse; width: 100%; height: 100%;' cellspacing='0' cellpadding='1'><tr role='row'><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td><td role='gridcell'></td></tr></table>");t.find("table").addClass(this.toThemeProperty("jqx-reset"));t.find("tr").addClass(this.toThemeProperty("jqx-reset"));t.find("td").css({background:"transparent",padding:1,margin:0,border:"none"});t.addClass(this.toThemeProperty("jqx-reset"));t.addClass(this.toThemeProperty("jqx-widget-content"));t.addClass(this.toThemeProperty("jqx-calendar-column-header"));this.columnHeader.append(t);var d=this.getVisibleDate();var h=this.getFirstDayOfWeek(d);var m=h.dayOfWeek;var x=this.getWeekOfYear(h);var q=this.firstDayOfWeek;var v=this.localization.calendar.days.names;var n=new Array();var g=h;var o=(w.width()-this.rowHeaderWidth-2)/7;if(!this.showWeekNumbers){o=(w.width()-2)/7}for(var s=0;s<7;s++){var f=v[q];if(this.rtl){f=v[6-q]}switch(this.dayNameFormat){case"default":f=this.localization.calendar.days.namesAbbr[q];if(this.rtl){f=this.localization.calendar.days.namesAbbr[6-q]}break;case"shortest":f=this.localization.calendar.days.namesShort[q];if(this.rtl){f=this.localization.calendar.days.namesShort[6-q]}break;case"firstTwoLetters":f=f.substring(0,2);break;case"firstLetter":f=f.substring(0,1);break}var b=new a.jqx._jqxCalendar.cell(g.dateTime);var k=s+1;var l=k+this.element.id;var j=a(t[0].rows[0].cells[s]);var p=s;if(this.enableTooltips){if(a(j).jqxTooltip){a(j).jqxTooltip({name:this.element.id,content:v[q],theme:this.theme,position:"mouse"})}}if(q>=6){q=0}else{q++}s=p;b.element=j;b.row=0;b.column=s+1;var e=this._textwidth(f);var c="<div style='padding: 0; margin: 0; border: none; background: transparent;' id='columnCell"+l+"'>"+f+"</div>";j.append(c);j.find("#columnCell"+l).addClass(this.toThemeProperty("jqx-calendar-column-cell"));j.width(o);if(this.disabled){j.find("#columnCell"+l).addClass(this.toThemeProperty("jqx-calendar-column-cell-disabled"))}if(e>0&&o>0){while(e>j.width()){if(f.length==0){break}f=f.substring(0,f.length-1);a.jqx.utilities.html(j.find("#columnCell"+l),f);e=this._textwidth(f)}}n[s]=b;g=new a.jqx._jqxDateTimeInput.getDateTime(new Date(g._addDays(1)))}if(parseInt(this.columnHeader.width())>parseInt(this.host.width())){this.columnHeader.width(this.host.width())}var u=a.data(this.element,w[0].id);u.columnCells=n},_format:function(d,e,b){var f=false;try{if(Globalize!=undefined){f=true}}catch(c){}if(a.global){a.global.culture.calendar=this.localization.calendar;return a.global.format(d,e,this.culture)}else{if(f){try{if(Globalize.cultures[this.culture]){Globalize.cultures[this.culture].calendar=this.localization.calendar;return Globalize.format(d,e,this.culture)}else{return Globalize.format(d,e,this.culture)}}catch(c){return Globalize.format(d,e)}}else{if(a.jqx.dataFormat){return a.jqx.dataFormat.formatdate(d,e,this.localization.calendar)}}}},_textwidth:function(d){var c=a("<span>"+d+"</span>");c.addClass(this.toThemeProperty("jqx-calendar-column-cell"));a(this.host).append(c);var b=c.width();c.remove();return b},_textheight:function(d){var c=a("<span>"+d+"</span>");a(this.host).append(c);var b=c.height();c.remove();return b},_renderRowHeader:function(k){var g=this.getVisibleDate();var c=this.getFirstDayOfWeek(g);var f=c.dayOfWeek;var s=this.getWeekOfYear(c);var o=new a.jqx._jqxDateTimeInput.getDateTime(new Date(c.dateTime));o._addDays(5);o.dayOfWeek=o.dateTime.getDay();var m=this.getWeekOfYear(o);if(53==s&&o.dateTime.getMonth()==0){s=1}var l=a("<table style='overflow: hidden; width: 100%; height: 100%;' cellspacing='0' cellpadding='1'><tr><td></td></tr><tr><td/></tr><tr><td/></tr><tr><td/></tr><tr><td/></tr><tr><td/></tr></table>");l.find("table").addClass(this.toThemeProperty("jqx-reset"));l.find("td").addClass(this.toThemeProperty("jqx-reset"));l.find("tr").addClass(this.toThemeProperty("jqx-reset"));l.addClass(this.toThemeProperty("jqx-calendar-row-header"));l.width(this.rowHeaderWidth);this.rowHeader.append(l);var d=c;var r=new Array();for(var h=0;h<6;h++){var e=s.toString();var q=new a.jqx._jqxCalendar.cell(d.dateTime);var j=h+1+this.element.id;var p=a(l[0].rows[h].cells[0]);q.element=p;q.row=h;q.column=0;var b="<div style='background: transparent; border: none; padding: 0; margin: 0;' id ='headerCellContent"+j+"'>"+e+"</div>";p.append(b);p.find("#headerCellContent"+j).addClass(this.toThemeProperty("jqx-calendar-row-cell"));r[h]=q;d=new a.jqx._jqxDateTimeInput.getDateTime(new Date(d._addWeeks(1)));s=this.getWeekOfYear(d)}var n=a.data(this.element,k[0].id);n.rowCells=r},getFirstDayOfWeek:function(e){var d=e;if(this.firstDayOfWeek<0||this.firstDayOfWeek>6){this.firstDayOfWeek=6}var c=d.dayOfWeek-this.firstDayOfWeek;if(c<=0){c+=7}var b=a.jqx._jqxDateTimeInput.getDateTime(d._addDays(-c));return b},getVisibleDate:function(){var c=new a.jqx._jqxDateTimeInput.getDateTime(new Date(this.value.dateTime));if(c<this.minDate){c=this.minDate}if(c>this.maxDate){this.visibleDate=this.maxDate}c.dateTime.setHours(0);var d=c.day;var b=a.jqx._jqxDateTimeInput.getDateTime(c._addDays(-d+1));c=b;return c},destroy:function(b){this.host.removeClass();if(b!=false){this.host.remove()}},_raiseEvent:function(i,c){if(c==undefined){c={owner:null}}var e=this.events[i];var f=c?c:{};f.owner=this;var g=new a.Event(e);g.owner=this;g.args=f;if(i==0||i==1||i==2||i==3||i==4||i==5||i==6||i==7||i==8){g.args.date=g.args.selectedDate=this.getDate();g.args.range=this.getRange();var h=this.getViewStart();var d=this.getViewEnd();g.args.view={from:h,to:d}}var b=this.host.trigger(g);if(i==0||i==1){b=false}return b},propertyMap:function(b){if(b=="value"){if(this.selectionMode!="range"){return this.getDate()}else{return this.getRange()}}return null},updateSize:function(){var d=this.host.find("#View"+this.element.id);if(d.length>0){this.setCalendarSize();if(this.height!=undefined&&!isNaN(this.height)){d.height(this.height)}else{if(this.height!=null&&this.height.toString().indexOf("px")!=-1){d.height(this.height)}}if(this.width!=undefined&&!isNaN(this.width)){d.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("px")!=-1){d.width(this.width)}}var c=this.host.height()-this.titleHeight-this.columnHeaderHeight;var b="View"+this.element.id;d.find("#cellsTable"+b).height(c);d.find("#calendarRowHeader"+b).height(c);this.refreshControl()}},resize:function(){this.updateSize()},clear:function(){if(this.selectionMode=="range"){this._clicks=1;this.setRange(null,null);this._raiseEvent(7)}else{this.setDate(null,"mouse")}this._clicks=0;this.selection={from:null,to:null}},today:function(){if(this.selectionMode=="range"){this.setRange(new Date(),new Date())}else{this.setDate(new Date(),"mouse")}},propertyChangedHandler:function(d,e,g,f){if(this.isInitialized==undefined||this.isInitialized==false){return}if(e=="enableHover"){return}if(e=="keyboardNavigation"){return}if(e=="localization"){if(this.localization){if(this.localization.backString){this.backText=this.localization.backString}if(this.localization.forwardString){this.forwardText=this.localization.forwardString}if(this.localization.todayString){this.todayString=this.localization.todayString}if(this.localization.clearString){this.clearString=this.localization.clearString}this.firstDayOfWeek=this.localization.calendar.firstDay}}if(e=="culture"){try{if(a.global){a.global.preferCulture(d.culture);d.localization.calendar=a.global.culture.calendar}else{if(Globalize){var b=Globalize.culture(d.culture);d.localization.calendar=b.calendar}}}catch(c){}}if(e=="views"){if(d.views.indexOf("month")==-1){d.view="year"}if(d.views.indexOf("year")==-1&&d.views.indexOf("month")==-1){d.view="decade"}d.render();return}if(e=="showFooter"){d.render()}if(e=="width"||e=="height"){d.updateSize();return}else{if(e=="theme"){a.jqx.utilities.setTheme(g,f,d.host)}else{if(e=="rowHeaderWidth"||e=="showWeekNumbers"){d.render()}else{d.view="month";d.render()}}}}})})(jqxBaseFramework);(function(a){a.jqx._jqxCalendar.cell=function(c){var b={dateTime:new a.jqx._jqxDateTimeInput.getDateTime(c),_date:c,getDate:function(){return this._date},setDate:function(d){this.dateTime=new a.jqx._jqxDateTimeInput.getDateTime(d);this._date=d},isToday:false,isWeekend:false,isOtherMonth:false,isVisible:true,isSelected:false,isHighlighted:false,element:null,row:-1,column:-1,tooltip:null};return b};a.jqx._jqxCalendar.monthView=function(c,h,d,b,f,e){var g={start:c,end:h,cells:d,rowCells:b,columnCells:f,element:e};return g}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.annotations.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.annotations.js
new file mode 100644 (file)
index 0000000..06db7d0
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleAnnotations:true,_renderAnnotation:function(f,g,c){var j=this.seriesGroups[f];var q=this.renderer;if(isNaN(f)){return}var l=this._get([this.getXAxisDataPointOffset(g.xValue,f),g.x]);var k=this._get([this.getValueAxisDataPointOffset(g.yValue,f),g.y]);var v=this._get([this.getXAxisDataPointOffset(g.xValue2,f),g.x2]);var e=this._get([this.getValueAxisDataPointOffset(g.yValue2,f),g.y2]);if(j.polar||j.spider){var r=this.getPolarDataPointOffset(g.xValue,g.yValue,f);if(r&&!isNaN(r.x)&&!isNaN(r.y)){l=r.x;k=r.y}else{l=g.x;k=g.y}}if(isNaN(k)||isNaN(l)){return false}if(j.orientation=="horizontal"){var w=l;l=k;k=w;w=v;v=e;e=w}if(g.offset){if(!isNaN(g.offset.x)){l+=g.offset.x;v+=g.offset.x}if(!isNaN(g.offset.y)){k+=g.offset.y;e+=g.offset.y}}var p=this._get([g.width,v-l]);var o=this._get([g.height,e-k]);var d;switch(g.type){case"rect":d=q.rect(l,k,p,o);break;case"circle":d=q.rect(l,k,g.radius);break;case"line":d=q.rect(l,k,v,e);break;case"path":d=q.path(g.path);break}q.attr(d,{fill:g.fillColor,stroke:g.lineColor,opacity:this._get([g.fillOpacity,g.opacity]),"stroke-opacity":this._get([g.lineOpacity,g.opacity]),"stroke-width":g.lineWidth,"stroke-dasharray":g.dashStyle||"none"});var u;if(g.text){var m=g.text;var z=0,h=0;if(m.offset){if(!isNaN(m.offset.x)){z+=m.offset.x}if(!isNaN(m.offset.y)){h+=m.offset.y}}u=q.text(m.value,l+z,k+h,NaN,NaN,m.angle,{},m.clip===true,m.horizontalAlignment||"center",m.verticalAlignment||"center",m.rotationPoint||"centermiddle");q.attr(u,{fill:m.fillColor,stroke:m.lineColor,"class":m["class"]})}var b=["click","mouseenter","mouseleave"];var n=this;for(var t=0;t<b.length;t++){var s=this._getEvent(b[t])||b[t];if(d){this.renderer.addHandler(d,s,function(){n._raiseAnnotationEvent(g,s)})}if(u){this.renderer.addHandler(u,s,function(){n._raiseAnnotationEvent(g,s)})}}},_raiseAnnotationEvent:function(b,c){this._raiseEvent("annotation_"+c,{annotation:b})}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.api.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.api.js
new file mode 100644 (file)
index 0000000..e4be8a2
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleApi:true,getItemsCount:function(f,b){var d=this.seriesGroups[f];if(!this._isSerieVisible(f,b)){return 0}var e=this._renderData;if(!d||!e||e.length<=f){return 0}var c=d.series[b];if(!c){return 0}return e[f].offsets[b].length},getXAxisRect:function(c){var b=this._renderData;if(!b||b.length<=c){return undefined}if(!b[c].xAxis){return undefined}return b[c].xAxis.rect},getXAxisLabels:function(k){var d=[];var l=this._renderData;if(!l||l.length<=k){return d}l=l[k].xAxis;if(!l){return d}var j=this.seriesGroups[k];if(j.polar||j.spider){for(var e=0;e<l.polarLabels.length;e++){var h=l.polarLabels[e];d.push({offset:{x:h.x,y:h.y},value:h.value})}return d}var c=this._getXAxis(k);var g=this.getXAxisRect(k);var b=c.position=="top"||c.position=="right";var f=j.orientation=="horizontal";for(var e=0;e<l.data.length;e++){if(f){d.push({offset:{x:g.x+(b?0:g.width),y:g.y+l.data.data[e]},value:l.data.xvalues[e]})}else{d.push({offset:{x:g.x+l.data.data[e],y:g.y+(b?g.height:0)},value:l.data.xvalues[e]})}}return d},getValueAxisRect:function(c){var b=this._renderData;if(!b||b.length<=c){return undefined}if(!b[c].valueAxis){return undefined}return b[c].valueAxis.rect},getValueAxisLabels:function(h){var c=[];var j=this._renderData;if(!j||j.length<=h){return c}j=j[h].valueAxis;if(!j){return c}var k=this._getValueAxis(h);var b=k.position=="top"||k.position=="right";var g=this.seriesGroups[h];var e=g.orientation=="horizontal";if(g.polar||g.spider){for(var d=0;d<j.polarLabels.length;d++){var f=j.polarLabels[d];c.push({offset:{x:f.x,y:f.y},value:f.value})}return c}for(var d=0;d<j.items.length;d++){if(e){c.push({offset:{x:j.itemOffsets[j.items[d]].x+j.itemWidth/2,y:j.rect.y+(b?j.rect.height:0)},value:j.items[d]})}else{c.push({offset:{x:j.rect.x+j.rect.width,y:j.itemOffsets[j.items[d]].y+j.itemWidth/2},value:j.items[d]})}}return c},getPlotAreaRect:function(){return this._plotRect},getRect:function(){return this._rect},showToolTip:function(f,c,e,b,d){var g=this.getItemCoord(f,c,e);if(isNaN(g.x)||isNaN(g.y)){return}this._startTooltipTimer(f,c,e,g.x,g.y,b,d)},hideToolTip:function(c){if(isNaN(c)){c=0}var b=this;b._cancelTooltipTimer();setTimeout(function(){b._hideToolTip(0)},c)}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.core.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.core.js
new file mode 100644 (file)
index 0000000..aadfd98
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxChart","",{});a.extend(a.jqx._jqxChart.prototype,{defineInstance:function(){a.extend(true,this,this._defaultSettings);this._createColorsCache()},_defaultSettings:{title:"Title",description:"Description",source:[],seriesGroups:[],categoryAxis:null,xAxis:{},valueAxis:null,renderEngine:"",enableAnimations:true,enableAxisTextAnimation:false,backgroundImage:"",background:"#FFFFFF",padding:{left:5,top:5,right:5,bottom:5},backgroundColor:"#FFFFFF",showBorderLine:true,borderLineWidth:1,borderLineColor:null,borderColor:null,titlePadding:{left:5,top:5,right:5,bottom:10},showLegend:true,legendLayout:null,enabled:true,colorScheme:"scheme01",animationDuration:500,showToolTips:true,toolTipShowDelay:500,toolTipDelay:500,toolTipHideDelay:4000,toolTipMoveDuration:300,toolTipFormatFunction:null,toolTipAlignment:"dataPoint",localization:undefined,columnSeriesOverlap:false,rtl:false,legendPosition:null,greyScale:false,axisPadding:5,enableCrosshairs:false,crosshairsColor:"#BCBCBC",crosshairsDashStyle:"2,2",crosshairsLineWidth:1,enableEvents:true,_itemsToggleState:[],_isToggleRefresh:false,_isSelectorRefresh:false,_sliders:[],_selectorRange:[],_rangeSelectorInstances:{},_resizeState:{},renderer:null,_isRangeSelectorInstance:false,drawBefore:null,draw:null,_renderData:{},enableSampling:true,samplingThreshold:5000},_defaultLineColor:"#BCBCBC",_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_getEvent:function(b){if(this._isTouchDevice){return this._touchEvents[b]}else{return b}},destroy:function(){this.host.remove()},createInstance:function(d){if(!a.jqx.dataAdapter){throw"jqxdata.js is not loaded"}var c=this;c._refreshOnDownloadComlete();c._isTouchDevice=a.jqx.mobile.isTouchDevice();c.addHandler(c.host,c._getEvent("mousemove"),function(g){if(c.enabled==false){return}if(!c._isRangeSelectorInstance){c.host.css("cursor","default")}var f=g.pageX||g.clientX||g.screenX;var j=g.pageY||g.clientY||g.screenY;var i=c.host.offset();if(c._isTouchDevice){var h=a.jqx.position(g);f=h.left;j=h.top}f-=i.left;j-=i.top;c.onmousemove(f,j)});c.addHandler(c.host,c._getEvent("mouseleave"),function(h){if(c.enabled==false){return}var f=c._mouseX;var i=c._mouseY;var g=c._plotRect;if(g&&f>=g.x&&f<=g.x+g.width&&i>=g.y&&i<=g.y+g.height){return}c._cancelTooltipTimer();c._hideToolTip(0);c._unselect()});c.addHandler(c.host,"click",function(g){if(c.enabled==false){return}var f=g.pageX||g.clientX||g.screenX;var j=g.pageY||g.clientY||g.screenY;var i=c.host.offset();if(c._isTouchDevice){var h=a.jqx.position(g);f=h.left;j=h.top}f-=i.left;j-=i.top;c._mouseX=f;c._mouseY=j;if(!isNaN(c._lastClickTs)){if((new Date()).valueOf()-c._lastClickTs<100){return}}this._hostClickTimer=setTimeout(function(){if(!c._isTouchDevice){c._cancelTooltipTimer();c._hideToolTip();c._unselect()}if(c._pointMarker&&c._pointMarker.element){var l=c.seriesGroups[c._pointMarker.gidx];var k=l.series[c._pointMarker.sidx];g.stopImmediatePropagation();c._raiseItemEvent("click",l,k,c._pointMarker.iidx)}},100)});var e=c.element.style;if(e){var b=false;if(e.width!=null){b|=e.width.toString().indexOf("%")!=-1}if(e.height!=null){b|=e.height.toString().indexOf("%")!=-1}if(b){a.jqx.utilities.resize(this.host,function(){if(c.timer){clearTimeout(c.timer)}var f=1;c.timer=setTimeout(function(){var g=c.enableAnimations;c.enableAnimations=false;c.refresh();c.enableAnimations=g},f)},false,true)}}},_refreshOnDownloadComlete:function(){var d=this;var e=this.source;if(e instanceof a.jqx.dataAdapter){var f=e._options;if(f==undefined||(f!=undefined&&!f.autoBind)){e.autoSync=false;e.dataBind()}var c=this.element.id;if(e.records.length==0){var b=function(){if(d.ready){d.ready()}d.refresh()};e.unbindDownloadComplete(c);e.bindDownloadComplete(c,b)}else{if(d.ready){d.ready()}}e.unbindBindingUpdate(c);e.bindBindingUpdate(c,function(){if(d._supressBindingRefresh){return}d.refresh()})}},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(c=="source"){this._refreshOnDownloadComlete()}this.refresh()},_initRenderer:function(b){if(!a.jqx.createRenderer){throw"Please include jqxdraw.js"}return a.jqx.createRenderer(this,b)},_internalRefresh:function(){var b=this;if(a.jqx.isHidden(b.host)){return}b._stopAnimations();if(!b.renderer||(!b._isToggleRefresh&&!b._isUpdate)){b._hideToolTip(0);b._isVML=false;b.host.empty();b._measureDiv=undefined;b._initRenderer(b.host)}var d=b.renderer;if(!d){return}var c=d.getRect();b._render({x:1,y:1,width:c.width,height:c.height});this._raiseEvent("refreshBegin",{instance:this});if(d instanceof a.jqx.HTML5Renderer){d.refresh()}b._isUpdate=false;this._raiseEvent("refreshEnd",{instance:this})},saveAsPNG:function(d,b,c){return this._saveAsImage("png",d,b,c)},saveAsJPEG:function(d,b,c){return this._saveAsImage("jpeg",d,b,c)},saveAsPDF:function(d,b,c){return this._saveAsImage("pdf",d,b,c)},_saveAsImage:function(e,h,b,c){var g=false;for(var d=0;d<this.seriesGroups.length&&!g;d++){var f=this._getXAxis(d);if(f&&f.rangeSelector){g=true}}return a.jqx._widgetToImage(this,e,h,b,c,g?this._selectorSaveAsImageCallback:undefined)},_selectorSaveAsImageCallback:function(D,h){var r=D;for(var B=0;B<r.seriesGroups.length;B++){var o=r._getXAxis(B);if(!o||!o.rangeSelector||o.rangeSelector.renderTo){continue}var m=r._rangeSelectorInstances[B];if(!m){continue}var s=m.jqxChart("getInstance");var e=s.renderEngine;var d=s.renderer.getRect();var f=s.renderer.getContainer().find("canvas")[0];var p=f.getContext("2d");var w=r._sliders[B];var b=r.seriesGroups[B].orientation=="horizontal";var c=!b?"width":"height";var v=b?"width":"height";var A=!b?"x":"y";var g=b?"x":"y";var k={};k[A]=w.startOffset+w.rect[A];k[g]=w.rect[g];k[c]=w.endOffset-w.startOffset;k[v]=w.rect[v];var n=o.rangeSelector.colorSelectedRange||"blue";var u=o.rangeSelector.colorUnselectedRange||"white";var l=o.rangeSelector.colorRangeLine||"grey";var q=[];q.push(s.renderer.rect(k.x,k.y,k.width,k.height,{fill:n,opacity:0.1}));if(!b){q.push(s.renderer.line(a.jqx._ptrnd(w.rect.x),a.jqx._ptrnd(w.rect.y),a.jqx._ptrnd(k.x),a.jqx._ptrnd(w.rect.y),{stroke:l,opacity:0.5}));q.push(s.renderer.line(a.jqx._ptrnd(k.x+k.width),a.jqx._ptrnd(w.rect.y),a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(w.rect.y),{stroke:l,opacity:0.5}));q.push(s.renderer.line(a.jqx._ptrnd(k.x),a.jqx._ptrnd(w.rect.y),a.jqx._ptrnd(k.x),a.jqx._ptrnd(w.rect.y+w.rect.height),{stroke:l,opacity:0.5}));q.push(s.renderer.line(a.jqx._ptrnd(k.x+k.width),a.jqx._ptrnd(w.rect.y),a.jqx._ptrnd(k.x+k.width),a.jqx._ptrnd(w.rect.y+w.rect.height),{stroke:l,opacity:0.5}))}else{q.push(s.renderer.line(a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(w.rect.y),a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(k.y),{stroke:l,opacity:0.5}));q.push(s.renderer.line(a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(k.y+k.height),a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(w.rect.y+w.rect.height),{stroke:l,opacity:0.5}));q.push(s.renderer.line(a.jqx._ptrnd(w.rect.x),a.jqx._ptrnd(k.y),a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(k.y),{stroke:l,opacity:0.5}));q.push(s.renderer.line(a.jqx._ptrnd(w.rect.x),a.jqx._ptrnd(k.y+k.height),a.jqx._ptrnd(w.rect.x+w.rect.width),a.jqx._ptrnd(k.y+k.height),{stroke:l,opacity:0.5}))}s.renderer.refresh();var t=p.getImageData(d.x,d.y,d.width,d.height);var C=h.getContext("2d");C.putImageData(t,parseInt(m.css("left")),parseInt(m.css("top")),1,1,d.width,d.height);for(var z=0;z<q.length;z++){s.renderer.removeElement(q[z])}s.renderer.refresh()}return true},refresh:function(){this._internalRefresh()},update:function(){this._isUpdate=true;this._internalRefresh()},_seriesTypes:["line","stackedline","stackedline100","spline","stackedspline","stackedspline100","stepline","stackedstepline","stackedstepline100","area","stackedarea","stackedarea100","splinearea","stackedsplinearea","stackedsplinearea100","steparea","stackedsteparea","stackedsteparea100","rangearea","splinerangearea","steprangearea","column","stackedcolumn","stackedcolumn100","rangecolumn","scatter","stackedscatter","stackedscatter100","bubble","stackedbubble","stackedbubble100","pie","donut","candlestick","ohlc","waterfall","stackedwaterfall"],clear:function(){var b=this;for(var c in b._defaultSettings){b[c]=b._defaultSettings[c]}b.title="";b.description="";b.refresh()},_render:function(C){var m=this;var I=m.renderer;m._colorsCache.clear();if(!m._isToggleRefresh&&m._isUpdate&&m._renderData){m._renderDataClone()}m._renderData=[];I.clear();m._unselect();m._hideToolTip(0);var n=m.backgroundImage;if(n==undefined||n==""){m.host.css({"background-image":""})}else{m.host.css({"background-image":(n.indexOf("(")!=-1?n:"url('"+n+"')")})}m._rect=C;var Y=m.padding||{left:5,top:5,right:5,bottom:5};var q=I.createClipRect(C);var L=I.beginGroup();I.setClip(L,q);var ai=I.rect(C.x,C.y,C.width-2,C.height-2);if(n==undefined||n==""){I.attr(ai,{fill:m.backgroundColor||m.background||"white"})}else{I.attr(ai,{fill:"transparent"})}if(m.showBorderLine!=false){var F=m.borderLineColor==undefined?m.borderColor:m.borderLineColor;if(F==undefined){F=m._defaultLineColor}var o=this.borderLineWidth;if(isNaN(o)||o<0||o>10){o=1}I.attr(ai,{"stroke-width":o,stroke:F})}else{if(a.jqx.browser.msie&&a.jqx.browser.version<9){I.attr(ai,{"stroke-width":1,stroke:m.backgroundColor||"white"})}}if(a.isFunction(m.drawBefore)){m.drawBefore(I,C)}var V={x:Y.left,y:Y.top,width:C.width-Y.left-Y.right,height:C.height-Y.top-Y.bottom};m._paddedRect=V;var e=m.titlePadding||{left:2,top:2,right:2,bottom:2};var l;if(m.title&&m.title.length>0){var S=m.toThemeProperty("jqx-chart-title-text",null);l=I.measureText(m.title,0,{"class":S});I.text(m.title,V.x+e.left,V.y+e.top,V.width-(e.left+e.right),l.height,0,{"class":S},true,"center","center");V.y+=l.height;V.height-=l.height}if(m.description&&m.description.length>0){var T=m.toThemeProperty("jqx-chart-title-description",null);l=I.measureText(m.description,0,{"class":T});I.text(m.description,V.x+e.left,V.y+e.top,V.width-(e.left+e.right),l.height,0,{"class":T},true,"center","center");V.y+=l.height;V.height-=l.height}if(m.title||m.description){V.y+=(e.bottom+e.top);V.height-=(e.bottom+e.top)}var b={x:V.x,y:V.y,width:V.width,height:V.height};m._plotRect=b;m._buildStats(b);var H=m._isPieOnlySeries();var s=m.seriesGroups;var E;var D={xAxis:{},valueAxis:{}};for(var Z=0;Z<s.length&&!H;Z++){if(s[Z].type=="pie"||s[Z].type=="donut"){continue}var z=m._getXAxis(Z);if(!z){throw"seriesGroup["+Z+"] is missing xAxis definition"}var ae=z==m._getXAxis()?-1:Z;D.xAxis[ae]=0}var U=m.axisPadding;if(isNaN(U)){U=5}var r={left:0,right:0,leftCount:0,rightCount:0};var p=[];for(Z=0;Z<s.length;Z++){var ad=s[Z];if(ad.type=="pie"||ad.type=="donut"||ad.spider==true||ad.polar==true){p.push({width:0,position:0,xRel:0});continue}E=ad.orientation=="horizontal";var z=m._getXAxis(Z);var ae=z==m._getXAxis()?-1:Z;var k=m._getValueAxis(Z);var O=k==m._getValueAxis()?-1:Z;var R=!E?k.axisSize:z.axisSize;var f={x:0,y:b.y,width:b.width,height:b.height};var Q=E?m._getXAxis(Z).position:k.position;if(!R||R=="auto"){if(E){R=this._renderXAxis(Z,f,true,b).width;if((D.xAxis[ae]&1)==1){R=0}else{if(R>0){D.xAxis[ae]|=1}}}else{R=m._renderValueAxis(Z,f,true,b).width;if((D.valueAxis[O]&1)==1){R=0}else{if(R>0){D.valueAxis[O]|=1}}}}if(Q!="left"&&m.rtl==true){Q="right"}if(Q!="right"){Q="left"}if(r[Q+"Count"]>0&&r[Q]>0&&R>0){r[Q]+=U}p.push({width:R,position:Q,xRel:r[Q]});r[Q]+=R;r[Q+"Count"]++}var u=Math.max(1,Math.max(C.width,C.height));var ac={top:0,bottom:0,topCount:0,bottomCount:0};var W=[];for(Z=0;Z<s.length;Z++){var ad=s[Z];if(ad.type=="pie"||ad.type=="donut"||ad.spider==true||ad.polar==true){W.push({height:0,position:0,yRel:0});continue}E=ad.orientation=="horizontal";var k=this._getValueAxis(Z);var O=k==m._getValueAxis()?-1:Z;var z=m._getXAxis(Z);var ae=z==m._getXAxis()?-1:Z;var ab=!E?z.axisSize:k.axisSize;var Q=E?k.position:z.position;if(!ab||ab=="auto"){if(E){ab=m._renderValueAxis(Z,{x:0,y:0,width:u,height:0},true,b).height;if((D.valueAxis[O]&2)==2){ab=0}else{if(ab>0){D.valueAxis[O]|=2}}}else{ab=m._renderXAxis(Z,{x:0,y:0,width:u,height:0},true).height;if((D.xAxis[ae]&2)==2){ab=0}else{if(ab>0){D.xAxis[ae]|=2}}}}if(Q!="top"){Q="bottom"}if(ac[Q+"Count"]>0&&ac[Q]>0&&ab>0){ac[Q]+=U}W.push({height:ab,position:Q,yRel:ac[Q]});ac[Q]+=ab;ac[Q+"Count"]++}m._createAnimationGroup("series");var t=(m.showLegend!=false);var B=!t?{width:0,height:0}:m._renderLegend(m.legendLayout?m._rect:V,true);if(this.legendLayout&&(!isNaN(this.legendLayout.left)||!isNaN(this.legendLayout.top))){B={width:0,height:0}}if(V.height<ac.top+ac.bottom+B.height||V.width<r.left+r.right){I.endGroup();return}b.height-=ac.top+ac.bottom+B.height;b.x+=r.left;b.width-=r.left+r.right;b.y+=ac.top;var G=[];if(!H){var af=m._getXAxis().tickMarksColor||m._defaultLineColor;for(Z=0;Z<s.length;Z++){var ad=s[Z];if(ad.polar==true||ad.spider==true||ad.type=="pie"||ad.type=="donut"){continue}E=ad.orientation=="horizontal";var ae=m._getXAxis(Z)==m._getXAxis()?-1:Z;var O=m._getValueAxis(Z)==m._getValueAxis()?-1:Z;var f={x:b.x,y:0,width:b.width,height:W[Z].height};if(W[Z].position!="top"){f.y=b.y+b.height+W[Z].yRel}else{f.y=b.y-W[Z].yRel-W[Z].height}if(E){if((D.valueAxis[O]&4)==4){continue}if(!m._isGroupVisible(Z)){continue}m._renderValueAxis(Z,f,false,b);D.valueAxis[O]|=4}else{G.push(f);if((D.xAxis[ae]&4)==4){continue}if(!m._isGroupVisible(Z)){continue}m._renderXAxis(Z,f,false,b);D.xAxis[ae]|=4}}}if(t){var A=m.legendLayout?m._rect:V;var P=V.x+a.jqx._ptrnd((V.width-B.width)/2);var N=b.y+b.height+ac.bottom;var R=V.width;var ab=B.height;if(m.legendLayout){if(!isNaN(m.legendLayout.left)){P=m.legendLayout.left}if(!isNaN(m.legendLayout.top)){N=m.legendLayout.top}if(!isNaN(m.legendLayout.width)){R=m.legendLayout.width}if(!isNaN(m.legendLayout.height)){ab=m.legendLayout.height}}if(P+R>A.x+A.width){R=A.x+A.width-P}if(N+ab>A.y+A.height){ab=A.y+A.height-N}m._renderLegend({x:P,y:N,width:R,height:ab})}m._hasHorizontalLines=false;if(!H){for(Z=0;Z<s.length;Z++){var ad=s[Z];if(ad.polar==true||ad.spider==true||ad.type=="pie"||ad.type=="donut"){continue}E=s[Z].orientation=="horizontal";var f={x:b.x-p[Z].xRel-p[Z].width,y:b.y,width:p[Z].width,height:b.height};if(p[Z].position!="left"){f.x=b.x+b.width+p[Z].xRel}var ae=m._getXAxis(Z)==m._getXAxis()?-1:Z;var O=m._getValueAxis(Z)==m._getValueAxis()?-1:Z;if(E){G.push(f);if((D.xAxis[ae]&8)==8){continue}if(!m._isGroupVisible(Z)){continue}m._renderXAxis(Z,f,false,b);D.xAxis[ae]|=8}else{if((D.valueAxis[O]&8)==8){continue}if(!m._isGroupVisible(Z)){continue}m._renderValueAxis(Z,f,false,b);D.valueAxis[O]|=8}}}if(b.width<=0||b.height<=0){return}m._plotRect={x:b.x,y:b.y,width:b.width,height:b.height};for(Z=0;Z<s.length;Z++){this._drawPlotAreaLines(Z,true,{gridLines:false,tickMarks:false,alternatingBackground:true});this._drawPlotAreaLines(Z,false,{gridLines:false,tickMarks:false,alternatingBackground:true})}for(Z=0;Z<s.length;Z++){this._drawPlotAreaLines(Z,true,{gridLines:true,tickMarks:true,alternatingBackground:false});this._drawPlotAreaLines(Z,false,{gridLines:true,tickMarks:true,alternatingBackground:false})}var K=false;for(Z=0;Z<s.length&&!K;Z++){var ad=s[Z];if(ad.annotations!==undefined||a.isFunction(ad.draw)||a.isFunction(ad.drawBefore)){K=true;break}}var M=I.beginGroup();if(!K){var J=I.createClipRect({x:b.x-2,y:b.y,width:b.width+4,height:b.height});I.setClip(M,J)}for(Z=0;Z<s.length;Z++){var ad=s[Z];var c=false;for(var ag in m._seriesTypes){if(m._seriesTypes[ag]==ad.type){c=true;break}}if(!c){throw'Invalid serie type "'+ad.type+'"'}if(a.isFunction(ad.drawBefore)){ad.drawBefore(I,C,Z,this)}if(ad.polar==true||ad.spider==true){if(ad.type.indexOf("pie")==-1&&ad.type.indexOf("donut")==-1){m._renderSpiderAxis(Z,b)}}m._renderAxisBands(Z,b,true);m._renderAxisBands(Z,b,false)}for(Z=0;Z<s.length;Z++){var ad=s[Z];if(m._isColumnType(ad.type)){m._renderColumnSeries(Z,b)}else{if(ad.type.indexOf("pie")!=-1||ad.type.indexOf("donut")!=-1){m._renderPieSeries(Z,b)}else{if(ad.type.indexOf("line")!=-1||ad.type.indexOf("area")!=-1){m._renderLineSeries(Z,b)}else{if(ad.type.indexOf("scatter")!=-1||ad.type.indexOf("bubble")!=-1){m._renderScatterSeries(Z,b)}else{if(ad.type.indexOf("candlestick")!=-1||ad.type.indexOf("ohlc")!=-1){m._renderCandleStickSeries(Z,b,ad.type.indexOf("ohlc")!=-1)}}}}}if(ad.annotations){if(!this._moduleAnnotations){throw"Please include 'jqxchart.annotations.js'"}for(var X=0;X<ad.annotations.length;X++){m._renderAnnotation(Z,ad.annotations[X],b)}}if(a.isFunction(ad.draw)){m.draw(I,C,Z,this)}}I.endGroup();if(m.enabled==false){var aa=I.rect(C.x,C.y,C.width,C.height);I.attr(aa,{fill:"#777777",opacity:0.5,stroke:"#00FFFFFF"})}if(a.isFunction(m.draw)){m.draw(I,C)}I.endGroup();m._startAnimation("series");var ah=false;for(var Z=0;Z<m.seriesGroups.length&&!ah;Z++){var z=m._getXAxis(Z);if(z&&z.rangeSelector){ah=true}}if(ah){if(!this._moduleRangeSelector){throw"Please include 'jqxchart.rangeselector.js'"}var d=[];if(!this._isSelectorRefresh){m.removeHandler(a(document),m._getEvent("mousemove"),m._onSliderMouseMove);m.removeHandler(a(document),m._getEvent("mousedown"),m._onSliderMouseDown);m.removeHandler(a(document),m._getEvent("mouseup"),m._onSliderMouseUp)}if(!m._isSelectorRefresh){m._rangeSelectorInstances={}}for(Z=0;Z<m.seriesGroups.length;Z++){var v=this._getXAxis(Z);if(d.indexOf(v)==-1){if(this._renderXAxisRangeSelector(Z,G[Z])){d.push(v)}}}}},_isPieOnlySeries:function(){var c=this.seriesGroups;if(c.length==0){return false}for(var b=0;b<c.length;b++){if(c[b].type!="pie"&&c[b].type!="donut"){return false}}return true},_renderChartLegend:function(S,B,P,u){var k=this;var C=k.renderer;var H={x:B.x+3,y:B.y+3,width:B.width-6,height:B.height-6};var D={width:H.width,height:0};var F=0,E=0;var p=20;var l=0;var f=10;var N=10;var v=0;for(var M=0;M<S.length;M++){var I=S[M].css;if(!I){I=k.toThemeProperty("jqx-chart-legend-text",null)}p=20;var z=S[M].text;var j=C.measureText(z,0,{"class":I});if(j.height>p){p=j.height}if(j.width>v){v=j.width}if(u){if(M!=0){E+=p}if(E>H.height){E=0;F+=v+2*N+f;v=j.width;D.width=F+v}}else{if(F!=0){F+=N}if(F+2*f+j.width>H.width&&j.width<H.width){F=0;E+=p;p=20;l=H.width;D.height=E+p}}var J=false;if(j.width>B.width){J=true;var q=B.width;var Q=z;var U=Q.split(/\s+/).reverse();var m=[];var s="";var o=[];while(undefined!=(word=U.pop())){m.push(word);s=m.join(" ");var A=k.renderer.measureText(s,0,{"class":I});if(A.width>q&&o.length>0){m.pop();m=[word];s=m.join(" ")}o.push({text:s})}j.width=0;var b=0;for(var G=0;G<o.length;G++){var T=o[G].text;var A=k.renderer.measureText(T,0,{"class":I});j.width=Math.max(j.width,A.width);b+=j.height}j.height=b}var w=H.x+F+j.width<B.x+B.width&&H.y+E+j.height<B.y+B.height;if(k.legendLayout){var w=H.x+F+j.width<k._rect.x+k._rect.width&&H.y+E+j.height<k._rect.y+k._rect.height}if(!P&&w){var h=S[M].seriesIndex;var n=S[M].groupIndex;var c=S[M].itemIndex;var V=S[M].fillColor;var R=S[M].lineColor;var e=k._isSerieVisible(n,h,c);var O=C.beginGroup();var L=e?S[M].opacity:0.1;if(J){var Q=z;var q=B.width;var U=Q.split(/\s+/).reverse();var m=[];var s="";var d=0;var o=[];while(undefined!=(word=U.pop())){m.push(word);s=m.join(" ");var A=k.renderer.measureText(s,0,{"class":I});if(A.width>q&&o.length>0){m.pop();d+=A.height;m=[word];s=m.join(" ")}o.push({text:s,dy:d})}for(var G=0;G<o.length;G++){var T=o[G].text;d=o[G].dy;var A=k.renderer.measureText(T,0,{"class":I});if(u){k.renderer.text(T,H.x+F+1.5*f,H.y+E+d,j.width,p,0,{"class":I},false,"left","center")}else{k.renderer.text(T,H.x+F+1.5*f,H.y+E+d,j.width,p,0,{"class":I},false,"center","center")}}var K=C.rect(H.x+F,H.y+E+f/2+d/2,f,f);if(u){E+=d}k.renderer.attr(K,{fill:V,"fill-opacity":L,stroke:R,"stroke-width":1,"stroke-opacity":S[M].opacity})}else{var K=C.rect(H.x+F,H.y+E+f/2,f,f);k.renderer.attr(K,{fill:V,"fill-opacity":L,stroke:R,"stroke-width":1,"stroke-opacity":S[M].opacity});if(u){k.renderer.text(z,H.x+F+1.5*f,H.y+E,j.width,j.height+f/2,0,{"class":I},false,"left","center")}else{k.renderer.text(z,H.x+F+1.5*f,H.y+E,j.width,p,0,{"class":I},false,"center","center")}}k.renderer.endGroup();k._setLegendToggleHandler(n,h,c,O)}if(u){}else{F+=j.width+2*f;if(l<F){l=F}}}if(P){D.height=a.jqx._ptrnd(E+p+5);D.width=a.jqx._ptrnd(l);return D}},isSerieVisible:function(d,b,c){return this._isSerieVisible(d,b,c)},_isSerieVisible:function(f,b,d){while(this._itemsToggleState.length<f+1){this._itemsToggleState.push([])}var e=this._itemsToggleState[f];while(e.length<b+1){e.push(isNaN(d)?true:[])}var c=e[b];if(isNaN(d)){return c}if(!a.isArray(c)){e[b]=c=[]}while(c.length<d+1){c.push(true)}return c[d]},isGroupVisible:function(b){return this._isGroupVisible(b)},_isGroupVisible:function(e){var d=false;var c=this.seriesGroups[e].series;if(!c){return d}for(var b=0;b<c.length;b++){if(this._isSerieVisible(e,b)){d=true;break}}return d},_toggleSerie:function(h,b,e,c){var g=!this._isSerieVisible(h,b,e);if(c!=undefined){g=c}var i=this.seriesGroups[h];var f=i.series[b];this._raiseEvent("toggle",{state:g,seriesGroup:i,serie:f,elementIndex:e});if(isNaN(e)){this._itemsToggleState[h][b]=g}else{var d=this._itemsToggleState[h][b];if(!a.isArray(d)){d=[]}while(d.length<e){d.push(true)}d[e]=g}this._isToggleRefresh=true;this.update();this._isToggleRefresh=false},showSerie:function(d,b,c){this._toggleSerie(d,b,c,true)},hideSerie:function(d,b,c){this._toggleSerie(d,b,c,false)},_setLegendToggleHandler:function(j,c,h,e){var i=this.seriesGroups[j];var f=i.series[c];var b=f.enableSeriesToggle;if(b==undefined){b=i.enableSeriesToggle!=false}if(b){var d=this;this.renderer.addHandler(e,"click",function(g){d._toggleSerie(j,c,h)})}},_renderLegend:function(c,e){var o=this;var d=[];for(var v=0;v<o.seriesGroups.length;v++){var t=o.seriesGroups[v];if(t.showLegend==false){continue}for(var q=0;q<t.series.length;q++){var m=t.series[q];if(m.showLegend==false){continue}var u=o._getSerieSettings(v,q);var p;if(t.type=="pie"||t.type=="donut"){var k=o._getXAxis(v);var h=m.legendFormatSettings||t.legendFormatSettings||k.formatSettings||m.formatSettings||t.formatSettings;var n=m.legendFormatFunction||t.legendFormatFunction||k.formatFunction||m.formatFunction||t.formatFunction;var j=o._getDataLen(v);for(var r=0;r<j;r++){p=o._getDataValue(r,m.displayText,v);p=o._formatValue(p,h,n,v,q,r);var l=o._getColors(v,q,r);d.push({groupIndex:v,seriesIndex:q,itemIndex:r,text:p,css:m.displayTextClass,fillColor:l.fillColor,lineColor:l.lineColor,opacity:u.opacity})}continue}var h=m.legendFormatSettings||t.legendFormatSettings;var n=m.legendFormatFunction||t.legendFormatFunction;p=o._formatValue(m.displayText||m.dataField||"",h,n,v,q,NaN);var l=o._getSeriesColors(v,q);var f=this._get([m.legendFillColor,m.legendColor,l.fillColor]);var b=this._get([m.legendLineColor,m.legendColor,l.lineColor]);d.push({groupIndex:v,seriesIndex:q,text:p,css:m.displayTextClass,fillColor:f,lineColor:b,opacity:u.opacity})}}return o._renderChartLegend(d,c,e,(o.legendLayout&&o.legendLayout.flow=="vertical"))},_getInterval:function(d,c){var b=this._get([d.unitInterval,c]);if(!isNaN(d.step)){b=d.step*c}return b},_renderXAxis:function(d,w,Q,c){var f=this;var q=f._getXAxis(d);var P=f.seriesGroups[d];var W=P.orientation=="horizontal";var G={width:0,height:0};var O=f._getAxisSettings(q);if(!q||!O.visible||P.type=="spider"){return G}if(!f._isGroupVisible(d)||this._isPieGroup(d)){return G}var V=f._alignValuesWithTicks(d);while(f._renderData.length<d+1){f._renderData.push({})}if(f.rtl){q.flip=true}var A=W?w.height:w.width;var v=q.text;var s=f._calculateXOffsets(d,A);var S=s.axisStats;var h=q.rangeSelector;var E=0;if(h){if(!this._moduleRangeSelector){throw"Please include 'jqxchart.rangeselector.js'"}E=this._selectorGetSize(q)}var D=(W&&q.position=="right")||(!W&&q.position=="top");if(!Q&&h){if(W){w.width-=E;if(q.position!="right"){w.x+=E}}else{w.height-=E;if(q.position=="top"){w.y+=E}}}var j={rangeLength:s.rangeLength,itemWidth:s.itemWidth,intervalWidth:s.intervalWidth,data:s,settings:O,isMirror:D,rect:w};f._renderData[d].xAxis=j;var F=S.interval;if(isNaN(F)){return G}if(W){O.title.angle-=90;O.labels.angle-=90}var l=this._getInterval(O.gridLines,F);var J=this._getInterval(O.tickMarks,F);var B=this._getInterval(O.labels,F);var K;var U=S.min;var r=S.max;var M=s.padding;var R=q.flip==true||f.rtl;if(q.type=="date"){O.gridLines.offsets=this._generateDTOffsets(U,r,A,M,l,F,S.dateTimeUnit,V,NaN,false,R);O.tickMarks.offsets=this._generateDTOffsets(U,r,A,M,J,F,S.dateTimeUnit,V,NaN,false,R);K=this._generateDTOffsets(U,r,A,M,B,F,S.dateTimeUnit,V,NaN,true,R)}else{O.gridLines.offsets=this._generateOffsets(U,r,A,M,l,F,V,NaN,false,R);O.tickMarks.offsets=this._generateOffsets(U,r,A,M,J,F,V,NaN,false,R);K=this._generateOffsets(U,r,A,M,B,F,V,NaN,true,R)}var m=f.renderer.getRect();var k=m.width-w.x-w.width;var o=f._getDataLen(d);var n;if(f._elementRenderInfo&&f._elementRenderInfo.length>d){n=f._elementRenderInfo[d].xAxis}var p=[];var I;if(O.labels.formatFunction){I=O.labels.formatFunction}var u;if(O.labels.formatSettings){u=a.extend({},O.labels.formatSettings)}if(q.type=="date"){if(q.dateFormat&&!I){if(u){u.dateFormat=u.dateFormat||q.dateFormat}else{u={dateFormat:q.dateFormat}}}else{if(!I&&(!u||(u&&!u.dateFormat))){I=this._getDefaultDTFormatFn(q.baseUnit||"day")}}}for(var N=0;N<K.length;N++){var L=K[N].value;var H=K[N].offset;var T=undefined;if(q.type!="date"&&S.useIndeces&&q.dataField){T=Math.round(L);L=f._getDataValue(T,q.dataField);if(L==undefined){L=""}}var v=f._formatValue(L,u,I,d,undefined,T);if(v==undefined||v.toString()==""){if(isNaN(T)){T=N}if(T>=S.filterRange.min&&T<=S.filterRange.max){v=S.useIndeces?(S.min+T).toString():(L==undefined?"":L.toString())}}var b={key:L,text:v,targetX:H,x:H};if(n&&n.itemOffsets[L]){b.x=n.itemOffsets[L].x;b.y=n.itemOffsets[L].y}p.push(b)}var C=f._getAnimProps(d);var t=C.enabled&&p.length<500?C.duration:0;if(f.enableAxisTextAnimation==false){t=0}var z={items:p,renderData:j};var e=f._renderAxis(W,D,O,{x:w.x,y:w.y,width:w.width,height:w.height},c,F,false,true,z,Q,t);if(W){e.width+=E}else{e.height+=E}return e},_animateAxisText:function(f,h){var c=f.items;var d=f.textSettings;for(var e=0;e<c.length;e++){var g=c[e];if(!g){continue}if(!g.visible){continue}var b=g.targetX;var j=g.targetY;if(!isNaN(g.x)&&!isNaN(g.y)){b=g.x+(b-g.x)*h;j=g.y+(j-g.y)*h}if(g.element){this.renderer.removeElement(g.element);g.element=undefined}g.element=this.renderer.text(g.text,b,j,g.width,g.height,d.angle,{"class":d.style},false,d.halign,d.valign,d.textRotationPoint)}},_getPolarAxisCoords:function(e,b){var i=this.seriesGroups[e];var p=b.x+a.jqx.getNum([i.offsetX,b.width/2]);var o=b.y+a.jqx.getNum([i.offsetY,b.height/2]);var k=Math.min(b.width,b.height);var f=i.radius;if(this._isPercent(f)){f=parseFloat(f)/100*k/2}if(isNaN(f)){f=k/2*0.6}var h=this._alignValuesWithTicks(e);var n=this._get([i.startAngle,i.minAngle,0])-90;if(isNaN(n)){n=0}else{n=2*Math.PI*n/360}var m=this._get([i.endAngle,i.maxAngle,360])-90;if(isNaN(m)){m=2*Math.PI}else{m=2*Math.PI*m/360}if(n>m){var l=n;n=m;m=l}var t=a.jqx._rnd(Math.abs(n-m)/(Math.PI*2),0.001,true);var q=Math.PI*2*f*t;var g=this._calcGroupOffsets(e,b).xoffsets;if(!g){return}var j=!(Math.abs(Math.abs(m-n)-Math.PI*2)>0.00001);if(i.spider){axisStats=this._getXAxisStats(e,this._getXAxis(e),q);var r=axisStats.interval;if(isNaN(r)||r==0){r=1}var d=(axisStats.max-axisStats.min)/r+(j?1:0);d=Math.round(d);if(d>2){var c=Math.cos(Math.abs(m-n)/2/d);c=a.jqx._rnd(c,0.01);if(c==0){c=1}var s=f/c;if(s>f&&h){f=s}}}f=a.jqx._ptrnd(f);return{x:p,y:o,r:f,adjR:this._get([s,f]),itemWidth:g.itemWidth,rangeLength:g.rangeLength,valuesOnTicks:h,startAngle:n,endAngle:m,isClosedCircle:j,axisSize:q}},_toPolarCoord:function(j,f,h,e){var c=Math.abs(j.startAngle-j.endAngle)/(Math.PI*2);var b=(h-f.x)*2*Math.PI*c/Math.max(1,f.width)+j.startAngle;var d=((f.height+f.y)-e)*j.r/Math.max(1,f.height);var i=j.x+d*Math.cos(b);var g=j.y+d*Math.sin(b);return{x:a.jqx._ptrnd(i),y:a.jqx._ptrnd(g)}},_renderSpiderAxis:function(A,k){var ap=this;var g=ap._getXAxis(A);var aB=this._getAxisSettings(g);if(!g||!aB.visible){return}var X=ap.seriesGroups[A];var S=ap._getPolarAxisCoords(A,k);if(!S){return}var M=a.jqx._ptrnd(S.x);var L=a.jqx._ptrnd(S.y);var t=S.adjR;var Y=S.startAngle;var W=S.endAngle;if(t<1){return}var aw=a.jqx._rnd(Math.abs(Y-W)/(Math.PI*2),0.001,true);var h=Math.PI*2*t*aw;var c=S.isClosedCircle;var w=this._renderData[A].xoffsets;if(!w.rangeLength){return}var T=w.axisStats.interval;if(isNaN(T)||T<1){T=1}var at=X.orientation=="horizontal";var aa=(at&&g.position=="right")||(!at&&g.position=="top");while(ap._renderData.length<A+1){ap._renderData.push({})}var au={rangeLength:w.rangeLength,itemWidth:w.itemWidth,data:w,rect:k,settings:aB};ap._renderData[A].xAxis=au;ap._renderData[A].polarCoords=S;var az=true;for(var R=0;R<A;R++){var B=ap._renderData[R].xAxis;var b=ap._renderData[R].polarCoords;var E=ap._getXAxis(R);var V=false;for(var P in S){if(S[P]!=b[P]){V=true;break}}if(!V||E!=g){az=false}}var e=aB.gridLines;var U=aB.tickMarks;var z=aB.labels;var ad=this._getInterval(e,T);var aE=this._getInterval(U,T);var an=this._getInterval(z,T);var H=ap._alignValuesWithTicks(A);var ae=ap.renderer;var ai;var af=w.axisStats;var aD=af.min;var r=af.max;var u=this._getPaddingSize(w.axisStats,g,H,h,true,c,false);var aj=g.flip==true||ap.rtl;if(g.type=="date"){e.offsets=this._generateDTOffsets(aD,r,h,u,ad,T,g.baseUnit,true,0,false,aj);U.offsets=this._generateDTOffsets(aD,r,h,u,aE,T,g.baseUnit,true,0,false,aj);ai=this._generateDTOffsets(aD,r,h,u,an,T,g.baseUnit,true,0,true,aj)}else{e.offsets=this._generateOffsets(aD,r,h,u,ad,T,true,0,false,aj);U.offsets=this._generateOffsets(aD,r,h,u,aE,T,true,0,false,aj);ai=this._generateOffsets(aD,r,h,u,an,T,true,0,false,aj)}var ak=ap.renderer.getRect();var ax=ak.width-k.x-k.width;var ah=ap._getDataLen(A);var s;if(ap._elementRenderInfo&&ap._elementRenderInfo.length>A){s=ap._elementRenderInfo[A].xAxis}var ar=[];var ag=this._getDataLen(A);for(var R=0;R<ai.length;R++){var G=ai[R].offset;var I=ai[R].value;if(g.type!="date"&&af.useIndeces&&g.dataField){var ay=Math.round(I);if(ay>=ag){continue}I=ap._getDataValue(ay,g.dataField);if(I==undefined){I=""}}var aq=ap._formatValue(I,z.formatSettings,z.formatFunction,A,undefined,ay);if(aq==undefined||aq.toString()==""){aq=af.useIndeces?(af.min+R).toString():(I==undefined?"":I.toString())}var d={key:I,text:aq,targetX:G,x:G};if(s&&s.itemOffsets[I]){d.x=s.itemOffsets[I].x;d.y=s.itemOffsets[I].y}ar.push(d)}var aA={items:ar,renderData:au};var l={stroke:e.color,fill:"none","stroke-width":e.width,"stroke-dasharray":e.dashStyle||""};if(!X.spider){if(aw==1){ae.circle(M,L,t,l)}else{var F=-Y/Math.PI*180;var aF=-W/Math.PI*180;this.renderer.pieslice(M,L,0,t,Math.min(F,aF),Math.max(F,aF),undefined,l)}}var N=ar.length;var m=2*Math.PI/(N);var am=Y;var f,D;if(e.visible&&az){if(!H&&!c){e.offsets.unshift({offset:-u.right})}for(var R=0;R<e.offsets.length;R++){var n=e.offsets[R].offset;if(!H){if(c){n+=u.right/2}else{n+=u.right}}var C=am+n*2*Math.PI*aw/Math.max(1,h);if(C-W>0.01){continue}var q=a.jqx._ptrnd(M+t*Math.cos(C));var p=a.jqx._ptrnd(L+t*Math.sin(C));ae.line(M,L,q,p,l)}}if(U.visible&&az){var Q=5;var o={stroke:U.color,fill:"none","stroke-width":U.width,"stroke-dasharray":U.dashStyle||""};if(!H&&!c){U.offsets.unshift({offset:-u.right})}for(var R=0;R<U.offsets.length;R++){var n=U.offsets[R].offset;if(!H){if(c){n+=u.right/2}else{n+=u.right}}var C=am+n*2*Math.PI*aw/Math.max(1,h);if(C-W>0.01){continue}var ac={x:M+t*Math.cos(C),y:L+t*Math.sin(C)};var ab={x:M+(t+Q)*Math.cos(C),y:L+(t+Q)*Math.sin(C)};ae.line(a.jqx._ptrnd(ac.x),a.jqx._ptrnd(ac.y),a.jqx._ptrnd(ab.x),a.jqx._ptrnd(ab.y),o)}}var ao=[];if(X.spider){var v=[];if(g.type=="date"){v=this._generateDTOffsets(aD,r,h,u,T,T,g.baseUnit,true,0,false,aj)}else{v=this._generateOffsets(aD,r,h,u,T,T,true,0,false,aj)}if(!H&&!c){v.unshift({offset:-u.right})}for(var R=0;R<v.length;R++){var n=v[R].offset;if(!H){if(c){n+=u.right/2}else{n+=u.right}}var C=am+n*2*Math.PI*aw/Math.max(1,h);if(C-W>0.01){continue}ao.push(C)}au.offsetAngles=ao}var Z=ap._renderSpiderValueAxis(A,k,(H?S.adjR:S.r),ao);if(!Z){Z=[]}if(X.spider){if(!H){for(var R=0;R<Z.length;R++){Z[R]=Z[R]*S.adjR/S.r}}Z.push(t);this._renderSpiderLines(M,L,Z,S,ao,l)}if(az&&z.visible){au.polarLabels=[];for(var R=0;R<ar.length;R++){var n=ar[R].x;var C=am+n*2*Math.PI*aw/Math.max(1,h);C=(360-C/(2*Math.PI)*360)%360;if(C<0){C=360+C}var al=ae.measureText(ar[R].text,0,{"class":aB.labels.style});var O=(H?S.adjR:S.r)+(U.visible?7:2);var av=aB.labels;var aC;if(av.autoRotate){var K=a.jqx._ptRotate(M-al.width/2,L-O-al.height,M,L,-C/180*Math.PI);var J=a.jqx._ptRotate(M+al.width/2,L-O,M,L,-C/180*Math.PI);al.width=Math.abs(K.x-J.x);al.height=Math.abs(K.y-J.y);aC={x:Math.min(K.x,J.x),y:Math.min(K.y,J.y)}}else{aC=this._adjustTextBoxPosition(M,L,al,O,C,false,false,false)}au.polarLabels.push({x:aC.x,y:aC.y,value:ar[R].text});ae.text(ar[R].text,aC.x,aC.y,al.width,al.height,av.autoRotate?90-C:av.angle,{"class":av.style},false,av.halign,av.valign)}}},_renderSpiderLines:function(h,f,u,m,e,b){var p=this.renderer;var q=m.startAngle;var o=m.endAngle;var g=m.isClosedCircle;for(var r=0;r<u.length;r++){var d=u[r];var c=undefined,n=undefined;for(var s=0;s<e.length;s++){var t=e[s];var l=a.jqx._ptrnd(h+d*Math.cos(t));var k=a.jqx._ptrnd(f+d*Math.sin(t));if(c){p.line(c.x,c.y,l,k,b)}c={x:l,y:k};if(!n){n={x:l,y:k}}}if(n&&g){p.line(c.x,c.y,n.x,n.y,b)}}},_renderSpiderValueAxis:function(d,C,P,O){var h=this;var t=this.seriesGroups[d];var D=this._getPolarAxisCoords(d,C);if(!D){return}var L=a.jqx._ptrnd(D.x);var J=a.jqx._ptrnd(D.y);P=P||D.r;var f=D.startAngle;var V=D.endAngle;var T=a.jqx._rnd(Math.abs(f-V)/(Math.PI*2),0.001,true);if(P<1){return}P=a.jqx._ptrnd(P);var e=this._getValueAxis(d);settings=this._getAxisSettings(e);if(!e||false==settings.visible){return}var H=this._stats.seriesGroups[d].mu;var z=settings.labels;var w=z.formatSettings;var b=t.type.indexOf("stacked")!=-1&&t.type.indexOf("100")!=-1;if(b&&!w){w={sufix:"%"}}var u=this._get([z.step,z.unitInterval/H]);if(isNaN(u)){u=1}u=Math.max(1,Math.round(u));this._calcValueAxisItems(d,P,u);var c=settings.gridLines;var A=settings.tickMarks;var q=this._getInterval(c,H);var M=this._getInterval(A,H);var k=settings.labels;var j={stroke:c.color,fill:"none","stroke-width":1,"stroke-dasharray":c.dashStyle||""};var n=this._renderData[d].valueAxis;var v=n.items;if(v.length&&settings.line.visible){var m=L+Math.cos(f)*P;var W=J+Math.sin(f)*P;if(O.indexOf(f)==-1){var R=a.extend({},j);R["stroke-width"]=settings.line.lineWidth;R.stroke=settings.line.color;R["stroke-dasharray"]=settings.line.dashStyle;this.renderer.line(L,J,m,W,R)}}v=v.reverse();var G=this.renderer;n.polarLabels=[];for(var U=0;U<v.length-1;U++){var N=v[U];if(isNaN(N)){continue}var B=(k.formatFunction)?k.formatFunction(N):this._formatNumber(N,w);var g=G.measureText(B,0,{"class":k.style});var K=L+(e.showTickMarks!=false?3:2);var I=J-n.itemWidth*U-g.height/2;var s=f;var F=a.jqx._ptRotate(K,I,L,J,s);var E=a.jqx._ptRotate(K+g.width,I+g.height,L,J,s);K=Math.min(F.x,E.x);I=Math.min(F.y,E.y);g.width=Math.abs(F.x-E.x);g.height=Math.abs(F.y-E.y);n.polarLabels.push({x:K,y:I,value:B});G.text(B,K,I,g.width,g.height,k.autoRotate?(90+f*180/Math.PI):k.angle,{"class":k.style},false,k.halign,k.valign)}var p=e.logarithmicScale==true;var r=p?v.length:n.rangeLength;aIncrement=2*Math.PI/r;var Q=[];if(c.visible||t.spider){var j={stroke:c.color,fill:"none","stroke-width":1,"stroke-dasharray":c.dashStyle||""};for(var U=0;U<r;U+=q){var I=a.jqx._ptrnd(P*U/r);if(t.spider){Q.push(I);continue}if(T!=1){var l=-f/Math.PI*180;var S=-V/Math.PI*180;this.renderer.pieslice(L,J,0,I,Math.min(l,S),Math.max(l,S),undefined,j)}else{G.circle(L,J,I,j)}}}if(A.visible){tickMarkSize=5;var j={stroke:A.color,fill:"none","stroke-width":1,"stroke-dasharray":A.dashStyle||""};var o=L-Math.round(tickMarkSize/2);var m=o+tickMarkSize;for(var U=0;U<r;U+=M){if(c.visible&&(U%q)==0){continue}var I=a.jqx._ptrnd(J-P*U/r);G.line(a.jqx._ptrnd(o),I,a.jqx._ptrnd(m),I,j)}}return Q},_renderAxis:function(H,D,Q,z,c,F,m,V,C,U,d){if(Q.customDraw&&!U){return{width:NaN,height:NaN}}var t=Q.title,n=Q.labels,e=Q.gridLines,A=Q.tickMarks,P=Q.padding;var o=A.visible?A.size:0;var R=2;var G={width:0,height:0};var q={width:0,height:0};if(H){G.height=q.height=z.height}else{G.width=q.width=z.width}if(!U&&D){if(H){z.x-=z.width}}var l=C.renderData;var b=l.itemWidth;if(t.visible&&t.text!=undefined&&t!=""){var p=t.angle;var f=this.renderer.measureText(t.text,p,{"class":t.style});q.width=f.width;q.height=f.height;if(!U){this.renderer.text(t.text,z.x+t.offset.x+(H?(!D?R+P.left:-P.right-R+2*z.width-q.width):0),z.y+t.offset.y+(!H?(!D?z.height-R-q.height-P.bottom:P.top+R):0),H?q.width:z.width,!H?q.height:z.height,p,{"class":t.style},true,t.halign,t.valign,t.rotationPoint)}}var L=0;var u=V?-b/2:0;if(V&&!H){n.halign="center"}var N=z.x;var M=z.y;var E=n.textOffset;if(E){if(!isNaN(E.x)){N+=E.x}if(!isNaN(E.y)){M+=E.y}}if(!H){N+=u;if(D){M+=q.height>0?q.height+3*R:2*R;M+=o-(V?o:o/4)}else{M+=V?o:o/4}M+=P.top}else{N+=P.left+R+(q.width>0?q.width+R:0)+(D?z.width-q.width:0);M+=u}var T=0;var K=0;var r=C.items;l.itemOffsets={};if(this._isToggleRefresh||!this._isUpdate){d=0}var k=false;var j=0;for(var S=0;S<r.length&&n.visible;S++,L+=b){if(!r[S]){continue}var v=r[S].text;if(!isNaN(r[S].targetX)){L=r[S].targetX}var f=this.renderer.measureText(v,n.angle,{"class":n.style});if(f.width>K){K=f.width}if(f.height>T){T=f.height}j+=H?T:K;if(!U){if((H&&L>z.height+2)||(!H&&L>z.width+2)){break}var J=H?N+(D?(q.width==0?o:o-R):0):N+L;var I=H?M+L:M;l.itemOffsets[r[S].key]={x:J,y:I};if(!k){if(!isNaN(r[S].x)||!isNaN(r[S].y)&&d){k=true}}r[S].targetX=J;r[S].targetY=I;r[S].width=!H?b:z.width-P.left-P.right-2*R-o-((q.width>0)?q.width+R:0);r[S].height=H?b:z.height-P.top-P.bottom-2*R-o-((q.height>0)?q.height+R:0);r[S].visible=true}}l.avgWidth=r.length==0?0:j/r.length;if(!U){var s={items:r,textSettings:n};if(isNaN(d)||!k){d=0}this._animateAxisText(s,d==0?1:0);if(d!=0){var g=this;this._enqueueAnimation("series",undefined,undefined,d,function(i,h,w){g._animateAxisText(h,w)},s)}}G.width+=2*R+o+q.width+K+(H&&q.width>0?R:0);G.height+=2*R+o+q.height+T+(!H&&q.height>0?R:0);if(!H){G.height+=P.top+P.bottom}else{G.width+=P.left+P.right}var B={};if(!U&&Q.line.visible){var O={stroke:Q.line.color,"stroke-width":Q.line.width,"stroke-dasharray":Q.line.dashStyle||""};if(H){var J=z.x+z.width+(D?P.left:-P.right);J=a.jqx._ptrnd(J);this.renderer.line(J,z.y,J,z.y+z.height,O)}else{var I=a.jqx._ptrnd(z.y+(D?z.height-P.bottom:P.top));this.renderer.line(a.jqx._ptrnd(z.x),I,a.jqx._ptrnd(z.x+z.width+1),I,O)}}G.width=a.jqx._rup(G.width);G.height=a.jqx._rup(G.height);return G},_drawPlotAreaLines:function(j,w,f){var C=this.seriesGroups[j];var c=C.orientation!="horizontal";if(!this._renderData||this._renderData.length<=j){return}var H=w?"valueAxis":"xAxis";var u=this._renderData[j][H];if(!u){return}var m=this._renderData.axisDrawState;if(!m){m=this._renderData.axisDrawState={}}var z="",h;if(w){z="valueAxis_"+((C.valueAxis)?j:"")+(c?"swap":"");h=this._getValueAxis(j)}else{z="xAxis_"+((C.xAxis||C.categoryAxis)?j:"")+(c?"swap":"");h=this._getXAxis(j)}if(m[z]){m=m[z]}else{m=m[z]={}}if(!w){c=!c}var F=u.settings;if(!F){return}if(F.customDraw){return}var E=F.gridLines,p=F.tickMarks,t=F.padding;var e=u.rect;var k=this._plotRect;if(!E||!p){return}var o=0.5;var d=[];var b={stroke:E.color,"stroke-width":E.width,"stroke-dasharray":E.dashStyle||""};var B=w?e.y+e.height:e.x;var n=E.offsets;if(w&&!h.flip){n=a.extend([],n);n=n.reverse()}if(n&&n.length>0){for(var A=0;A<n.length;A++){if(c){D=a.jqx._ptrnd(e.y+n[A].offset);if(D<e.y-o){break}}else{D=a.jqx._ptrnd(e.x+n[A].offset);if(D>e.x+e.width+o){break}}if(f.gridLines&&E.visible!=false&&m.gridLines!=true){if(c){this.renderer.line(a.jqx._ptrnd(k.x),D,a.jqx._ptrnd(k.x+k.width),D,b)}else{this.renderer.line(D,a.jqx._ptrnd(k.y),D,a.jqx._ptrnd(k.y+k.height),b)}}d[D]=true;if(f.alternatingBackground&&(E.alternatingBackgroundColor||E.alternatingBackgroundColor2)&&m.alternatingBackground!=true){var l=((A%2)==0)?E.alternatingBackgroundColor2:E.alternatingBackgroundColor;if(l){var G;if(c){G=this.renderer.rect(a.jqx._ptrnd(k.x),B,a.jqx._ptrnd(k.width-1),D-B,b)}else{G=this.renderer.rect(B,a.jqx._ptrnd(k.y),D-B,a.jqx._ptrnd(k.height),b)}this.renderer.attr(G,{"stroke-width":0,fill:l,opacity:E.alternatingBackgroundOpacity||1})}B=D}}}var b={stroke:p.color,"stroke-width":p.width,"stroke-dasharray":p.dashStyle||""};if(f.tickMarks&&p.visible&&m.tickMarks!=true){var s=p.size;var n=p.offsets;for(var A=0;A<n.length;A++){var D=a.jqx._ptrnd((c?e.y+n[A].offset:e.x+n[A].offset));if(d[D-1]){D--}else{if(d[D+1]){D++}}if(c){if(D>e.y+e.height+o){break}}else{if(D>e.x+e.width+o){break}}var v=!u.isMirror?-s:s;if(c){var r=e.x+e.width+(h.position=="right"?t.left:-t.right);if(!w){r=e.x+(u.isMirror?t.left:-t.right+e.width)}this.renderer.line(r,D,r+v,D,b)}else{var q=e.y+(u.isMirror?e.height:0);q+=u.isMirror?-t.bottom:t.top;q=a.jqx._ptrnd(q);this.renderer.line(D,q,D,q-v,b)}}}m.tickMarks=m.tickMarks||f.tickMarks;m.gridLines=m.gridLines||f.gridLines;m.alternatingBackground=m.alternatingBackground||f.alternatingBackground},_calcValueAxisItems:function(j,d,l){var n=this._stats.seriesGroups[j];if(!n||!n.isValid){return false}var w=this.seriesGroups[j];var b=w.orientation=="horizontal";var f=this._getValueAxis(j);var m=f.valuesOnTicks!=false;var e=f.dataField;var o=n.intervals;var s=d/o;var u=n.min;var r=n.mu;var c=f.logarithmicScale==true;var k=f.logarithmicScaleBase||10;var h=w.type.indexOf("stacked")!=-1&&w.type.indexOf("100")!=-1;if(c){r=!isNaN(f.unitInterval)?f.unitInterval:1}if(!m){o=Math.max(o-1,1)}while(this._renderData.length<j+1){this._renderData.push({})}this._renderData[j].valueAxis={};var q=this._renderData[j].valueAxis;q.itemWidth=q.intervalWidth=s;q.items=[];var p=q.items;for(var v=0;v<=o;v++){var t=0;if(c){if(h){t=n.max/Math.pow(k,o-v)}else{t=u*Math.pow(k,v)}}else{t=m?u+v*r:u+(v+0.5)*r}if(v%l!=0){p.push(NaN);continue}p.push(t)}q.rangeLength=c&&!h?n.intervals:(n.intervals)*r;if(f.flip!=true){p=p.reverse()}return true},_getDecimalPlaces:function(b,g,c){var h=0;if(isNaN(c)){c=10}for(var f=0;f<b.length;f++){var k=g===undefined?b[f]:b[f][g];if(isNaN(k)){continue}var d=k.toString();for(var e=0;e<d.length;e++){if(d[e]<"0"||d[e]>"9"){h=d.length-(e+1);if(h>=0){return Math.min(h,c)}}}if(h>0){k*=Math.pow(10,h)}while(Math.round(k)!=k&&h<c){h++;k*=10}}return h},_renderValueAxis:function(f,z,N,e){var M=this.seriesGroups[f];var R=M.orientation=="horizontal";var r=this._getValueAxis(f);if(!r){throw"SeriesGroup "+f+" is missing valueAxis definition"}var G={width:0,height:0};if(!this._isGroupVisible(f)||this._isPieOnlySeries()||M.type=="spider"){return G}var Q=r.valuesOnTicks!=false;var H=this._stats.seriesGroups[f];var j=H.mu;var F=r.logarithmicScale==true;var C=r.logarithmicScaleBase||10;if(F){j=!isNaN(r.unitInterval)?r.unitInterval:1}if(j==0){j=1}if(isNaN(j)){return G}var K=this._getAxisSettings(r);var q=K.title,u=K.labels;var o=this._get([u.step,u.unitInterval/j]);if(isNaN(o)){o=1}o=Math.max(1,Math.round(o));if(!this._calcValueAxisItems(f,(R?z.width:z.height),o)||!K.visible){return G}if(!R){q.angle=(!this.rtl?-90:90);if(q.rotationPoint=="centercenter"){if(q.valign=="top"){q.rotationPoint="rightcenter"}else{if(q.valign=="bottom"){q.rotationPoint="leftcenter"}}}}var k=this._renderData[f].valueAxis;var h=u.formatSettings;var c=M.type.indexOf("stacked")!=-1&&M.type.indexOf("100")!=-1;if(c&&!h){h={sufix:"%"}}if(!u.formatFunction&&(!h||!h.decimalPlaces)){h=h||{};h.decimalPlaces=this._getDecimalPlaces([H.min,H.max,j],undefined,3)}var p=[];var m;if(this._elementRenderInfo&&this._elementRenderInfo.length>f){m=this._elementRenderInfo[f].valueAxis}for(var L=0;L<k.items.length;L++){var J=k.items[L];if(isNaN(J)){p.push(undefined);continue}var w=(u.formatFunction)?u.formatFunction(J):this._formatNumber(J,h);var b={key:J,text:w};if(m&&m.itemOffsets[J]){b.x=m.itemOffsets[J].x;b.y=m.itemOffsets[J].y}p.push(b)}if(F&&j!=1){var n=[];for(var L=0;L<p.length;L++){if(L%j==0){n.push(p[p.length-L-1])}else{n.push(undefined)}}p=n.reverse()}var d=K.gridLines;var l=F?j:this._getInterval(d,j);var B=R?z.width:z.height;var P=H.logarithmic?H.minPow:H.min;var s=H.logarithmic?H.maxPow:H.max;var O=(r.flip==true);if(d.visible||r.alternatingBackgroundColor||r.alternatingBackgroundColor2){d.offsets=this._generateOffsets(P,s,B,{left:0,right:0},l,j,true,0,false,!O);if(F&&!isNaN(d.step)){var n=[];for(var L=0;L<d.offsets.length;L+=d.step){n.push(d.offsets[L])}d.offsets=n}}var v=K.tickMarks;var I=F?j:this._getInterval(v,j);if(v.visible){v.offsets=this._generateOffsets(P,s,B,{left:0,right:0},I,j,true,0,false,!O);if(F&&!isNaN(v.step)){var n=[];for(var L=0;L<v.offsets.length;L+=v.step){n.push(v.offsets[L])}v.offsets=n}}var E=(R&&r.position=="top")||(!R&&r.position=="right")||(!R&&this.rtl&&r.position!="left");var A={items:p,renderData:k};var D=this._getAnimProps(f);var t=D.enabled&&p.length<500?D.duration:0;if(this.enableAxisTextAnimation==false){t=0}k.settings=K;k.isMirror=E;k.rect=z;return this._renderAxis(!R,E,K,z,e,j,F,Q,A,N,t)},_generateOffsets:function(n,q,t,l,u,d,b,r,s,g){var f=[];var m=1;if(d<1){m=1000000;n*=m;q*=m;d*=m}var h=q-n;var k=t-l.left-l.right;if(h==0){if(s||b){f.push({offset:l.left+k/2,value:n/m})}else{f.push({offset:0,value:n/m})}return f}var v=k/h;var c=v*d;var e=l.left;if(!b){if(!s){q+=d}}for(var p=n;p<=q;p+=d,e+=c){f.push({offset:e,value:p/m})}if(!b&&f.length>1){if(isNaN(r)){r=s?0:c/2}for(var p=0;p<f.length;p++){f[p].offset-=r;if(f[p].offset<=2){f[p].offset=0}if(f[p].offset>=t-2){f[p].offset=t}}}if(u>d){var o=[];var j=Math.round(u/d);for(var p=0;p<f.length;p++){if((p%j)==0){o.push({offset:f[p].offset,value:f[p].value})}}f=o}if(g){for(var p=0;p<f.length;p++){f[p].offset=t-f[p].offset}}return f},_generateDTOffsets:function(p,s,z,n,A,c,o,b,u,v,g){if(!o){o="day"}var f=[];if(p>s){return f}if(p==s){if(v){f.push({offset:b?z/2:n.left,value:p})}else{if(b){f.push({offset:z/2,value:p})}}return f}var j=z-n.left-n.right;var w=p;var k=n.left;var e=k;c=Math.max(c,1);var m=c;var d=Math.min(1,c);if(c>1&&o!="millisecond"){c=1}while(a.jqx._ptrnd(e)<=a.jqx._ptrnd(n.left+j+(b?0:n.right))){f.push({offset:e,value:w});var B=new Date(w.valueOf());if(o=="millisecond"){B.setMilliseconds(w.getMilliseconds()+c)}else{if(o=="second"){B.setSeconds(w.getSeconds()+c)}else{if(o=="minute"){B.setMinutes(w.getMinutes()+c)}else{if(o=="hour"){var l=B.valueOf();B.setHours(w.getHours()+c);if(l==B.valueOf()){B.setHours(w.getHours()+c+1)}}else{if(o=="day"){B.setDate(w.getDate()+c)}else{if(o=="month"){B.setMonth(w.getMonth()+c)}else{if(o=="year"){B.setFullYear(w.getFullYear()+c)}}}}}}}w=B;e=k+(w.valueOf()-p.valueOf())*d/(s.valueOf()-p.valueOf())*j}if(g){for(var r=0;r<f.length;r++){f[r].offset=z-f[r].offset}}if(m>1&&o!="millisecond"){var q=[];for(var r=0;r<f.length;r+=m){q.push({offset:f[r].offset,value:f[r].value})}f=q}if(!b&&!v&&f.length>1){var q=[];q.push({offset:0,value:undefined});for(var r=1;r<f.length;r++){q.push({offset:f[r-1].offset+(f[r].offset-f[r-1].offset)/2,value:undefined})}var t=q.length;if(t>1){q.push({offset:q[t-1].offset+(q[t-1].offset-q[t-2].offset)})}else{q.push({offset:z,value:undefined})}f=q}if(A>c){var q=[];var h=Math.round(A/m);for(var r=0;r<f.length;r++){if((r%h)==0){q.push({offset:f[r].offset,value:f[r].value})}}f=q}return f},_hasStackValueReversal:function(e,s){var g=this.seriesGroups[e];var h=-1!=g.type.indexOf("stacked");if(!h){return false}var b=-1!=g.type.indexOf("waterfall");var q=this._getDataLen(e);var t=0;var l=false;var u=[];for(var o=0;o<g.series.length;o++){u[o]=this._isSerieVisible(e,o)}for(var p=0;p<q;p++){var m=(b&&p!=0)?t:s;var d=0,r=0;var c=undefined;if(!b){l=false}for(var n=0;n<g.series.length;n++){if(!u[n]){continue}val=this._getDataValueAsNumber(p,g.series[n].dataField,e);if(isNaN(val)){continue}if(g.series[n].summary){var f=this._getDataValue(p,g.series[n].summary,e);if(undefined!==f){continue}}var k=!l?val<s:val<0;l=true;if(c==undefined){c=k}if(k!=c){return true}c=k;t+=val}}return false},_getValueAxis:function(b){var c=b==undefined?this.valueAxis:this.seriesGroups[b].valueAxis||this.valueAxis;if(!c){c=this.valueAxis={}}return c},_buildStats:function(J){var W={seriesGroups:[]};this._stats=W;for(var s=0;s<this.seriesGroups.length;s++){var C=this.seriesGroups[s];W.seriesGroups[s]={};var F=this._getXAxis(s);var n=this._getValueAxis(s);var q=this._getXAxisStats(s,F,(C.orientation=="vertical")?J.width:J.height);var z=W.seriesGroups[s];z.isValid=true;var K=(C.orientation=="horizontal")?J.width:J.height;var M=n.logarithmicScale==true;var L=n.logarithmicScaleBase;if(isNaN(L)){L=10}var G=-1!=C.type.indexOf("stacked");var e=G&&-1!=C.type.indexOf("100");var I=-1!=C.type.indexOf("range");var S=C.type.indexOf("waterfall")!=-1;if(S&&!this._moduleWaterfall){throw"Please include 'jqxchart.waterfall.js'"}if(e){z.psums=[];z.nsums=[]}var t=NaN,O=NaN;var d=NaN,f=NaN;var r=n?n.baselineValue:NaN;if(isNaN(r)){r=M&&!e?1:0}var g=false;if(r!=0&&G){g=this._hasStackValueReversal(s,r);if(g){r=0}}if(G&&S){g=this._hasStackValueReversal(s,r)}var B=this._getDataLen(s);var c=0;var X=NaN;var m=[];if(S){for(var k=0;k<C.series.length;k++){m.push(NaN)}}var v=NaN;for(var V=0;V<B&&z.isValid;V++){if(F.rangeSelector){var h=F.dataField?this._getDataValue(V,F.dataField,s):V;if(h&&q.isDateTime){h=this._castAsDate(h,F.dateFormat)}if(q.useIndeces){h=V}if(h&&(h.valueOf()<q.min.valueOf()||h.valueOf()>q.max.valueOf())){continue}}var Y=n.minValue;var E=n.maxValue;if(n.baselineValue){if(isNaN(Y)){Y=r}else{Y=Math.min(r,Y)}if(isNaN(E)){E=r}else{E=Math.max(r,E)}}var u=0,w=0;for(var k=0;k<C.series.length;k++){if(!this._isSerieVisible(s,k)){continue}var H=NaN,R=NaN,A=NaN;if(C.type.indexOf("candle")!=-1||C.type.indexOf("ohlc")!=-1){var b=["Open","Low","Close","High"];for(var T in b){var l=this._getDataValueAsNumber(V,C.series[k]["dataField"+b[T]],s);if(isNaN(l)){continue}A=isNaN(R)?l:Math.min(A,l);R=isNaN(R)?l:Math.max(R,l)}}else{if(I){var Z=this._getDataValueAsNumber(V,C.series[k].dataFieldFrom,s);var D=this._getDataValueAsNumber(V,C.series[k].dataFieldTo,s);R=Math.max(Z,D);A=Math.min(Z,D)}else{H=this._getDataValueAsNumber(V,C.series[k].dataField,s);if(S){if(this._isSummary(s,V)){var U=this._getDataValue(V,C.series[k].summary,s);if(U!==undefined){continue}}if(!G){if(isNaN(m[k])){m[k]=H}else{H+=m[k]}m[k]=H}else{if(!isNaN(v)){H+=v}v=H}}if(isNaN(H)||(M&&H<=0)){continue}A=R=H}}if((isNaN(E)||R>E)&&((isNaN(n.maxValue))?true:R<=n.maxValue)){E=R}if((isNaN(Y)||A<Y)&&((isNaN(n.minValue))?true:A>=n.minValue)){Y=A}if(!isNaN(H)&&G&&!S){if(H>r){u+=H}else{if(H<r){w+=H}}}}if(!e){if(!isNaN(n.maxValue)){u=Math.min(n.maxValue,u)}if(!isNaN(n.minValue)){w=Math.max(n.minValue,w)}}if(M&&e){for(var k=0;k<C.series.length;k++){if(!this._isSerieVisible(s,k)){X=0.01;continue}var H=this._getDataValueAsNumber(V,C.series[k].dataField,s);if(isNaN(H)||H<=0){X=0.01;continue}var P=u==0?0:H/u;if(isNaN(X)||P<X){X=P}}}var o=u-w;if(c<o){c=o}if(e){z.psums[V]=u;z.nsums[V]=w}if(E>O||isNaN(O)){O=E}if(Y<t||isNaN(t)){t=Y}if(u>d||isNaN(d)){d=u}if(w<f||isNaN(f)){f=w}}if(e){d=d==0?0:Math.max(d,-f);f=f==0?0:Math.min(f,-d)}if(t==O){if(t==0){t=-1;O=1}else{if(t<0){O=0}else{if(!M){t=0}else{if(t==1){t=t/L;O=O*L}}}}}var Q={gmin:t,gmax:O,gsumP:d,gsumN:f,gbase:r,isLogAxis:M,logBase:L,minPercent:X,gMaxRange:c,isStacked:G,isStacked100:e,isWaterfall:S,hasStackValueReversal:g,valueAxis:n,valueAxisSize:K};z.context=Q}this._mergeCommonValueAxisStats();for(var V=0;V<W.seriesGroups.length;V++){var z=W.seriesGroups[V];var N=this._calcOutputGroupStats(z.context);for(var T in N){z[T]=N[T]}delete z.context}},_mergeCommonValueAxisStats:function(){var f={};for(var e=0;e<this.seriesGroups.length;e++){if(this.seriesGroups[e].valueAxis){continue}var d=this._stats.seriesGroups[e].context;if(isNaN(f.gmin)||f.gmin>d.gmin){f.gmin=d.gmin}if(isNaN(f.gmax)||f.gmax<d.gmax){f.gmax=d.gmax}if(isNaN(f.gsumP)||f.gsumP<d.gsumP){f.gsumP=d.gsumP}if(isNaN(f.gsumN)||f.gsumN<d.gsumN){f.gsumN=d.gsumN}if(isNaN(f.logBase)||f.logBase>d.logBase){f.logBase=d.logBase}if(isNaN(f.minPercent)||f.minPercent>d.minPercent){f.minPercent=d.minPercent}}for(var e=0;e<this.seriesGroups.length;e++){if(this.seriesGroups[e].valueAxis){continue}var b=this._stats.seriesGroups[e].context;for(var c in f){b[c]=f[c]}}},_calcOutputGroupStats:function(g){var c=g.gmin,f=g.gmax,A=g.gsumP,B=g.gsumN,z=g.gbase,d=g.isLogAxis,j=g.logBase,t=g.minPercent,k=g.gMaxRange,l=g.isStacked,h=g.isStacked100,e=g.isWaterfall,n=g.hasStackValueReversal,w=g.valueAxis,u=g.valueAxisSize;var s=g.valueAxis.unitInterval;if(!s){s=this._calcInterval(l?B:c,l?A:f,Math.max(u/80,2))}if(c==f){c=z;f=2*f}var i=NaN;var b=0;var q=0;if(d){if(h){i=0;var r=1;b=q=a.jqx.log(100,j);while(r>t){r/=j;b--;i++}c=Math.pow(j,b)}else{if(l&&!e){f=Math.max(f,A)}q=a.jqx._rnd(a.jqx.log(f,j),1,true);f=Math.pow(j,q);b=a.jqx._rnd(a.jqx.log(c,j),1,false);c=Math.pow(j,b)}s=j}if(c<B){B=c}if(f>A){A=f}var v=d?c:a.jqx._rnd(l&&!e?B:c,s,false);var o=d?f:a.jqx._rnd(l&&!e?A:f,s,true);if(h&&o>100){o=100}if(h&&!d){o=(o>0)?100:0;v=(v<0)?-100:0;s=w.unitInterval;if(isNaN(s)||s<=0||s>=100){s=10}if((100%s)!=0){for(;s>=1;s--){if((100%s)==0){break}}}}if(isNaN(o)||isNaN(v)||isNaN(s)){return{}}if(isNaN(i)){i=parseInt(((o-v)/(s==0?1:s)).toFixed())}if(d&&!h){i=q-b;k=Math.pow(j,i)}if(i<1){return{}}var m={min:v,max:o,logarithmic:d,logBase:j,base:d?v:z,minPow:b,maxPow:q,mu:s,maxRange:k,intervals:i,hasStackValueReversal:n};return m},_getDataLen:function(c){var b=this.source;if(c!=undefined&&c!=-1&&this.seriesGroups[c].source){b=this.seriesGroups[c].source}if(b instanceof a.jqx.dataAdapter){b=b.records}if(b){return b.length}return 0},_getDataValue:function(b,e,d){var c=this.source;if(d!=undefined&&d!=-1){c=this.seriesGroups[d].source||c}if(c instanceof a.jqx.dataAdapter){c=c.records}if(!c||b<0||b>c.length-1){return undefined}if(a.isFunction(e)){return e(b,c)}return(e&&e!="")?c[b][e]:c[b]},_getDataValueAsNumber:function(b,e,c){var d=this._getDataValue(b,e,c);if(this._isDate(d)){return d.valueOf()}if(typeof(d)!="number"){d=parseFloat(d)}if(typeof(d)!="number"){d=undefined}return d},_isPieGroup:function(b){var c=this.seriesGroups[b];if(!c||!c.type){return false}return c.type.indexOf("pie")!=-1||c.type.indexOf("donut")!=-1},_renderPieSeries:function(e,c){var f=this._getDataLen(e);var g=this.seriesGroups[e];var m=this._calcGroupOffsets(e,c).offsets;for(var p=0;p<g.series.length;p++){var k=g.series[p];if(k.customDraw){continue}var v=this._getSerieSettings(e,p);var h=k.colorScheme||g.colorScheme||this.colorScheme;var r=this._getAnimProps(e,p);var b=r.enabled&&f<5000&&!this._isToggleRefresh&&this._isVML!=true?r.duration:0;if(a.jqx.mobile.isMobileBrowser()&&(this.renderer instanceof a.jqx.HTML5Renderer)){b=0}var t=this._get([k.minAngle,k.startAngle]);if(isNaN(t)||t<0||t>360){t=0}var z=this._get([k.maxAngle,k.endAngle]);if(isNaN(z)||z<0||z>360){z=360}var o={rect:c,minAngle:t,maxAngle:z,groupIndex:e,serieIndex:p,settings:v,items:[]};for(var u=0;u<f;u++){var n=m[p][u];if(!n.visible){continue}var q=n.fromAngle;var d=n.toAngle;var w=this.renderer.pieslice(n.x,n.y,n.innerRadius,n.outerRadius,q,b==0?d:q,n.centerOffset);this._setRenderInfo(e,p,u,{element:w});var j={displayValue:n.displayValue,itemIndex:u,visible:n.visible,x:n.x,y:n.y,innerRadius:n.innerRadius,outerRadius:n.outerRadius,fromAngle:q,toAngle:d,centerOffset:n.centerOffset};o.items.push(j)}this._animatePieSlices(o,0);var l=this;this._enqueueAnimation("series",undefined,undefined,b,function(s,i,A){l._animatePieSlices(i,A)},o)}},_sliceSortFunction:function(d,c){return d.fromAngle-c.fromAngle},_animatePieSlices:function(o,c){var j;if(this._elementRenderInfo&&this._elementRenderInfo.length>o.groupIndex&&this._elementRenderInfo[o.groupIndex].series&&this._elementRenderInfo[o.groupIndex].series.length>o.serieIndex){j=this._elementRenderInfo[o.groupIndex].series[o.serieIndex]}var f=360*c;var u=this.seriesGroups[o.groupIndex];var n=this._getLabelsSettings(o.groupIndex,o.serieIndex,NaN);var m=n.visible;var b=[];for(var t=0;t<o.items.length;t++){var w=o.items[t];if(!w.visible){continue}var p=w.fromAngle;var e=w.fromAngle+c*(w.toAngle-w.fromAngle);if(j&&j[w.displayValue]){var l=j[w.displayValue].fromAngle;var d=j[w.displayValue].toAngle;p=l+(p-l)*c;e=d+(e-d)*c}b.push({index:t,from:p,to:e})}if(j){b.sort(this._sliceSortFunction)}var z=NaN;for(var t=0;t<b.length;t++){var w=o.items[b[t].index];var q=this._getRenderInfo(o.groupIndex,o.serieIndex,w.itemIndex);var p=b[t].from;var e=b[t].to;if(j){if(!isNaN(z)&&p>z){p=z}z=e;if(t==b.length-1&&e!=b[0].from){e=o.maxAngle+b[0].from}}var r=this.renderer.pieSlicePath(w.x,w.y,w.innerRadius,w.outerRadius,p,e,w.centerOffset);this.renderer.attr(q.element,{d:r});var h=this._getColors(o.groupIndex,o.serieIndex,w.itemIndex,"radialGradient",w.outerRadius);var v=o.settings;q.colors=h;q.settings=v;this.renderer.attr(q.element,{fill:h.fillColor,stroke:h.lineColor,"stroke-width":v.stroke,"fill-opacity":v.opacity,"stroke-opacity":v.opacity,"stroke-dasharray":"none"||v.dashStyle});var k=u.series[o.serieIndex];if(m){this._showPieLabel(o.groupIndex,o.serieIndex,w.itemIndex,n)}if(c==1){this._installHandlers(q.element,"pieslice",o.groupIndex,o.serieIndex,w.itemIndex)}}},_showPieLabel:function(e,f,C,p,h){var k=this._renderData[e].offsets[f][C];if(k.elementInfo.labelElement){this.renderer.removeElement(k.elementInfo.labelElement)}if(!p){p=this._getLabelsSettings(e,f,NaN)}var D=k.fromAngle,F=k.toAngle;var l=Math.abs(D-F);var q=l>180?1:0;if(l>360){D=0;F=360}var r=D*Math.PI*2/360;var i=F*Math.PI*2/360;var j=l/2+D;j=j%360;var E=j*Math.PI*2/360;var v;if(p.autoRotate==true){v=j<90||j>270?360-j:180-j}var u=p.linesEnabled;var o=this._showLabel(e,f,C,{x:0,y:0,width:0,height:0},"center","center",true,false,false,v);var d=p.radius||k.outerRadius+Math.max(o.width,o.height);if(this._isPercent(d)){d=parseFloat(d)/100*Math.min(this._plotRect.width,this._plotRect.height)/2}d+=k.centerOffset;if(isNaN(h)){h=0}d+=h;var z=this.seriesGroups[e];var n=z.series[f];var B=a.jqx.getNum([n.offsetX,z.offsetX,this._plotRect.width/2]);var A=a.jqx.getNum([n.offsetY,z.offsetY,this._plotRect.height/2]);var c=this._plotRect.x+B;var b=this._plotRect.y+A;var w=this._adjustTextBoxPosition(c,b,o,d,j,k.outerRadius>d,p.linesAngles!=false,p.autoRotate==true);var m={};k.elementInfo.labelElement=this._showLabel(e,f,C,{x:w.x,y:w.y,width:o.width,height:o.height},"left","top",false,false,false,v,m);if(d>k.outerRadius+5&&u!=false){var t={lineColor:k.elementInfo.colors.lineColor,stroke:k.elementInfo.settings.stroke,opacity:k.elementInfo.settings.opacity,dashStyle:k.elementInfo.settings.dashStyle};k.elementInfo.labelArrowPath=this._updateLebelArrowPath(k.elementInfo.labelArrowPath,c,b,d,k.outerRadius+h,E,p.linesAngles!=false,t,m)}},_updateLebelArrowPath:function(d,j,f,h,l,g,o,e,r){var c=a.jqx._ptrnd(j+(h-0)*Math.cos(g));var n=a.jqx._ptrnd(f-(h-0)*Math.sin(g));var b=a.jqx._ptrnd(j+(l+2)*Math.cos(g));var m=a.jqx._ptrnd(f-(l+2)*Math.sin(g));var p=[];p.push({x:r.x+r.width/2,y:r.y});p.push({x:r.x+r.width/2,y:r.y+r.height});p.push({x:r.x,y:r.y+r.height/2});p.push({x:r.x+r.width,y:r.y+r.height/2});if(!o){p.push({x:r.x,y:r.y});p.push({x:r.x+r.width,y:r.y});p.push({x:r.x+r.width,y:r.y+r.height});p.push({x:r.x,y:r.y+r.height})}p=p.sort(function(s,i){return a.jqx._ptdist(s.x,s.y,j,f)-a.jqx._ptdist(i.x,i.y,j,f)});p=p.sort(function(s,i){return(Math.abs(s.x-j)+Math.abs(s.y-f))-(Math.abs(i.x-j)+Math.abs(i.y-f))});for(var k=0;k<p.length;k++){p[k].x=a.jqx._ptrnd(p[k].x);p[k].y=a.jqx._ptrnd(p[k].y)}c=p[0].x;n=p[0].y;var q="M "+c+","+n+" L"+b+","+m;if(o){q="M "+c+","+n+" L"+b+","+n+" L"+b+","+m}if(d){this.renderer.attr(d,{d:q})}else{d=this.renderer.path(q,{})}this.renderer.attr(d,{fill:"none",stroke:e.lineColor,"stroke-width":e.stroke,"stroke-opacity":e.opacity,"stroke-dasharray":"none"||e.dashStyle});return d},_adjustTextBoxPosition:function(f,e,n,g,s,c,i,o){var d=s*Math.PI*2/360;var k=a.jqx._ptrnd(f+g*Math.cos(d));var j=a.jqx._ptrnd(e-g*Math.sin(d));if(o){var l=n.width;var p=n.height;var t=Math.atan(p/l)%(Math.PI*2);var u=d%(Math.PI*2);var r=0,q=0;var m=0;if(u<=t){m=l/2*Math.cos(d)}else{if(u>=t&&u<Math.PI-t){m=(p/2)*Math.sin(d)}else{if(u>=Math.PI-t&&u<Math.PI+t){m=l/2*Math.cos(d)}else{if(u>=Math.PI+t&&u<2*Math.PI-t){m=p/2*Math.sin(d)}else{if(u>=2*Math.PI-t&&u<2*Math.PI){m=l/2*Math.cos(d)}}}}}g+=Math.abs(m)+3;var k=a.jqx._ptrnd(f+g*Math.cos(d));var j=a.jqx._ptrnd(e-g*Math.sin(d));k-=n.width/2;j-=n.height/2;return{x:k,y:j}}if(!c){if(!i){if(s>=0&&s<45||s>=315&&s<360){j-=n.height/2}else{if(s>=45&&s<135){j-=n.height;k-=n.width/2}else{if(s>=135&&s<225){j-=n.height/2;k-=n.width}else{if(s>=225&&s<315){k-=n.width/2}}}}}else{if(s>=90&&s<270){j-=n.height/2;k-=n.width}else{j-=n.height/2}}}else{k-=n.width/2;j-=n.height/2}return{x:k,y:j}},_isColumnType:function(b){return(b.indexOf("column")!=-1||b.indexOf("waterfall")!=-1)},_getColumnGroupsCount:function(c){var e=0;c=c||"vertical";var f=this.seriesGroups;for(var d=0;d<f.length;d++){var b=f[d].orientation||"vertical";if(this._isColumnType(f[d].type)&&b==c){e++}}return e},_getColumnGroupIndex:function(g){var b=0;var c=this.seriesGroups[g].orientation||"vertical";for(var e=0;e<g;e++){var f=this.seriesGroups[e];var d=f.orientation||"vertical";if(this._isColumnType(f.type)&&d==c){b++}}return b},_renderAxisBands:function(e,C,K){var z=K?this._getXAxis(e):this._getValueAxis(e);var t=this.seriesGroups[e];var v=K?undefined:t.bands;if(!v){for(var P=0;P<e;P++){var n=K?this._getXAxis(P):this._getValueAxis(P);if(n==z){return}}v=z.bands}if(!a.isArray(v)){return}var o=C;var V=t.orientation=="horizontal";if(V){o={x:C.y,y:C.x,width:C.height,height:C.width}}this._calcGroupOffsets(e,o);for(var P=0;P<v.length;P++){var c=v[P];var T=this._get([c.minValue,c.from]);var w=this._get([c.maxValue,c.to]);var s=K?this.getXAxisDataPointOffset(T,e):this.getValueAxisDataPointOffset(T,e);var U=K?this.getXAxisDataPointOffset(w,e):this.getValueAxisDataPointOffset(w,e);var A=Math.abs(s-U);var J;if(t.polar||t.spider){var r=this._renderData[e];var d=r.polarCoords;if(!K){var F=this._toPolarCoord(d,C,C.x,r.baseOffset);var E=this._toPolarCoord(d,C,C.x,s);var D=this._toPolarCoord(d,C,C.x,U);var q=a.jqx._ptdist(F.x,F.y,E.x,E.y);var p=a.jqx._ptdist(F.x,F.y,D.x,D.y);var h=Math.round(-d.startAngle*360/(2*Math.PI));var Q=Math.round(-d.endAngle*360/(2*Math.PI));if(h>Q){var I=h;h=Q;Q=I}if(t.spider){var G=r.xAxis.offsetAngles;var H="";var M=[p,q];var B=G;if(d.isClosedCircle){B=a.extend([],G);B.push(B[0])}for(var L in M){for(var N=0;N<B.length;N++){var S=L==0?N:G.length-N-1;var l=d.x+M[L]*Math.cos(B[S]);var g=d.y+M[L]*Math.sin(B[S]);if(H==""){H+="M "}else{H+=" L"}H+=a.jqx._ptrnd(l)+","+a.jqx._ptrnd(g)}if(L==0){var l=d.x+M[1]*Math.cos(B[S]);var g=d.y+M[1]*Math.sin(B[S]);H+=" L"+a.jqx._ptrnd(l)+","+a.jqx._ptrnd(g)}}H+=" Z";J=this.renderer.path(H)}else{J=this.renderer.pieslice(d.x,d.y,q,p,h,Q)}}else{if(t.spider){p1=this.getPolarDataPointOffset(T,this._stats.seriesGroups[e].max,e);p2=this.getPolarDataPointOffset(w,this._stats.seriesGroups[e].max,e);var H="M "+d.x+","+d.y;H+=" L "+p1.x+","+p1.y;H+=" L "+p2.x+","+p2.y;J=this.renderer.path(H)}else{var f={};var m={x:Math.min(s,U),y:C.y,width:A,height:C.height};this._columnAsPieSlice(f,0,C,d,m);J=f.element}}}else{var b={x:Math.min(s,U),y:o.y,width:A,height:o.height};if(!K){b={x:o.x,y:Math.min(s,U),width:o.width,height:A}}if(V){var I=b.x;b.x=b.y;b.y=I;I=b.width;b.width=b.height;b.height=I}if(A==0||A==1){J=this.renderer.line(a.jqx._ptrnd(b.x),a.jqx._ptrnd(b.y),a.jqx._ptrnd(b.x+(V?0:b.width)),a.jqx._ptrnd(b.y+(V?b.height:0)))}else{J=this.renderer.rect(b.x,b.y,b.width,b.height)}}var W=c.fillColor||c.color||"#AAAAAA";var R=c.lineColor||W;var u=c.lineWidth;if(isNaN(u)){u=1}var O=c.opacity;if(isNaN(O)||O<0||O>1){O=1}this.renderer.attr(J,{fill:W,"fill-opacity":O,stroke:R,"stroke-opacity":O,"stroke-width":u,"stroke-dasharray":c.dashStyle})}},_getColumnGroupWidth:function(m,h,o){var e=this.seriesGroups[m];var l=e.type.indexOf("stacked")!=-1;var d=l?1:e.series.length;var k=this._getColumnGroupsCount(e.orientation);if(isNaN(k)||0==k){k=1}var n=h.rangeLength>=1?h.itemWidth:o*0.9;var c=e.columnsMinWidth;if(isNaN(c)){c=1}if(!isNaN(e.columnsMaxWidth)){c=Math.min(e.columnsMaxWidth,c)}if(c>n&&h.length>0){n=Math.max(n,o*0.9/h.length)}var i=c;if(!l){var f=e.seriesGapPercent;if(isNaN(f)||f<0){f=10}f/=100;var b=c;b*=(1+f);i+=e.series.length*b}var j=Math.max(n/k,i);return{requiredWidth:i,availableWidth:n,targetWidth:j}},_getColumnSerieWidthAndOffset:function(d,e){var m=this.seriesGroups[d];var u=m.series[e];var c=m.orientation=="horizontal";var b=this._plotRect;if(c){b={x:b.y,y:b.x,width:b.height,height:b.width}}var v=this._calcGroupOffsets(d,b);if(!v||v.xoffsets.length==0){return}var l=true;var w=this._getColumnGroupsCount(m.orientation);if(m.type=="candlestick"||m.type=="ohlc"){w=1}var q=this._getColumnGroupIndex(d);var r=this._getColumnGroupWidth(d,v.xoffsets,c?b.height:b.width);var h=0;var f=r.targetWidth;if(this.columnSeriesOverlap==true||(Math.round(f)>Math.round(r.availableWidth/w))){w=1;q=0}if(l){h-=(f*w)/2}h+=f*q;var D=m.columnsGapPercent;if(D<=0){D=0}if(isNaN(D)||D>=100){D=25}D/=100;var k=f*D;if(k+r.requiredWidth>r.targetWidth){k=Math.max(0,r.targetWidth-r.requiredWidth)}if(Math.round(f)>Math.round(r.availableWidth)){k=0}f-=k;h+=k/2;var z=m.seriesGapPercent;if(isNaN(z)||z<0){z=10}var n=m.type.indexOf("stacked")!=-1;var t=f;if(!n){t/=m.series.length}var A=this._get([m.seriesGap,(f*z/100)/(m.series.length-1)]);if(m.polar==true||m.spider==true||n||m.series.length<=1){A=0}var o=A*(m.series.length-1);if(m.series.length>1&&o>f-m.series.length*1){o=f-m.series.length*1;A=o/Math.max(1,(m.series.length-1))}var g=t-(o/m.series.length);var C=0;var i=m.columnsMaxWidth;if(!isNaN(i)){if(g>i){C=g-i;g=i}}var B=C/2;var j=0;if(!n){var E=(f-(g*m.series.length)-o)/2;var p=Math.max(0,e);j=E+g*e+p*A}else{j=C/2}return{width:g,offset:h+j}},_renderColumnSeries:function(f,c){var j=this.seriesGroups[f];if(!j.series||j.series.length==0){return}var h=this._getDataLen(f);var e=j.orientation=="horizontal";var A=c;if(e){A={x:c.y,y:c.x,width:c.height,height:c.width}}var p=this._calcGroupOffsets(f,A);if(!p||p.xoffsets.length==0){return}var m;if(j.polar==true||j.spider==true){m=this._getPolarAxisCoords(f,A)}var r={groupIndex:f,rect:c,vertical:!e,seriesCtx:[],renderData:p,polarAxisCoords:m};r.columnGroupWidth=this._getColumnGroupWidth(f,p.xoffsets,e?A.height:A.width);var g=this._getGroupGradientType(f);for(var t=0;t<j.series.length;t++){var n=j.series[t];if(n.customDraw){continue}var w=n.dataField;var u=this._getAnimProps(f,t);var b=u.enabled&&!this._isToggleRefresh&&p.xoffsets.length<100?u.duration:0;var k=this._getColumnSerieWidthAndOffset(f,t);var q=this._isSerieVisible(f,t);var l=this._getSerieSettings(f,t);var B=this._getColors(f,t,NaN,this._getGroupGradientType(f),4);var d=[];if(a.isFunction(n.colorFunction)&&!m){for(var z=p.xoffsets.first;z<=p.xoffsets.last;z++){d.push(this._getColors(f,t,z,g,4))}}var v={seriesIndex:t,serieColors:B,itemsColors:d,settings:l,columnWidth:k.width,xAdjust:k.offset,isVisible:q};r.seriesCtx.push(v)}this._animColumns(r,b==0?1:0);var o=this;this._enqueueAnimation("series",undefined,undefined,b,function(s,i,C){o._animColumns(i,C)},r)},_getPercent:function(d,c,b,e){if(isNaN(d)){d=c}if(!isNaN(b)&&!isNaN(d)&&d<b){d=b}if(!isNaN(e)&&!isNaN(d)&&d>e){d=e}if(isNaN(d)){return NaN}return d},_getColumnVOffsets:function(n,j,e,D,u,c){var p=this.seriesGroups[j];var H=this._getPercent(p.columnsTopWidthPercent,100,0,100);var v=this._getPercent(p.columnsBottomWidthPercent,100,0,100);if(H==0&&v==0){v=100}var J=this._getPercent(p.columnsNeckHeightPercent,NaN,0,100)/100;var E=this._getPercent(p.columnsNeckWidthPercent,100,0,100)/100;var r=[];var I=NaN;for(var q=0;q<e.length;q++){var N=e[q];var k=N.seriesIndex;var G=p.series[k];var o=n.offsets[k][D].from;var P=n.offsets[k][D].to;var z=n.xoffsets.data[D];var g;var h=N.isVisible;if(!h){P=o}var b=this._elementRenderInfo;if(h&&b&&b.length>j&&b[j].series.length>k){var F=n.xoffsets.xvalues[D];g=b[j].series[k][F];if(g&&!isNaN(g.from)&&!isNaN(g.to)){o=g.from+(o-g.from)*c;P=g.to+(P-g.to)*c;z=g.xoffset+(z-g.xoffset)*c}}if(!g){P=o+(P-o)*(u?1:c)}if(isNaN(o)){o=isNaN(I)?n.baseOffset:I}if(!isNaN(P)&&u){I=P}else{I=o}if(isNaN(P)){P=o}var C={from:o,to:P,xOffset:z};if(H!=100||v!=100){C.funnel=true;C.toWidthPercent=H;C.fromWidthPercent=v}r.push(C)}if(u&&r.length>1&&!(this._elementRenderInfo&&this._elementRenderInfo.length>j)){var l=0,m=0,K=-Infinity,w=Infinity,L=Infinity,B=-Infinity;for(var M=0;M<r.length;M++){var N=e[M];if(N.isVisible){if(r[M].to>=r[M].from){m+=r[M].to-r[M].from;L=Math.min(L,r[M].from);B=Math.max(B,r[M].to)}else{l+=r[M].from-r[M].to;K=Math.max(K,r[M].from);w=Math.min(w,r[M].to)}}}var O=l;var t=m;l*=c;m*=c;var d=0,f=0;for(var M=0;M<r.length;M++){if(r[M].to>=r[M].from){var A=r[M].to-r[M].from;if(A+f>m){A=Math.max(0,m-f);r[M].to=r[M].from+A}if(H!=100||v!=100){r[M].funnel=true;if(!isNaN(J)&&t*J>=f){r[M].fromWidthPercent=E*100}else{r[M].fromWidthPercent=(Math.abs(r[M].from-L)/t)*(H-v)+v}if(!isNaN(J)&&t*J>=(0+(f+A))){r[M].toWidthPercent=E*100}else{r[M].toWidthPercent=(Math.abs(r[M].to-L)/t)*(H-v)+v}}f+=A}else{var A=r[M].from-r[M].to;if(A+d>l){A=Math.max(0,l-d);r[M].to=r[M].from-A}if(H!=100||v!=100){r[M].funnel=true;if(!isNaN(J)&&O*J>=d){r[M].fromWidthPercent=E*100}else{r[M].fromWidthPercent=(Math.abs(r[M].from-K)/O)*(H-v)+v}if(!isNaN(J)&&O*J>=(0+(d+A))){r[M].toWidthPercent=E*100}else{r[M].toWidthPercent=(Math.abs(r[M].to-K)/O)*(H-v)+v}}d+=A}}}return r},_columnAsPieSlice:function(d,k,m,o){var e=this._toPolarCoord(m,k,o.x,o.y);var f=this._toPolarCoord(m,k,o.x,o.y+o.height);var l=a.jqx._ptdist(m.x,m.y,f.x,f.y);var i=a.jqx._ptdist(m.x,m.y,e.x,e.y);var c=k.width;var n=Math.abs(m.startAngle-m.endAngle)*180/Math.PI;var b=-((o.x-k.x)*n)/c;var h=-((o.x+o.width-k.x)*n)/c;var j=m.startAngle;j=360*j/(Math.PI*2);b-=j;h-=j;if(d){if(d.element!=undefined){var g=this.renderer.pieSlicePath(m.x,m.y,l,i,h,b,0);g+=" Z";this.renderer.attr(d.element,{d:g})}else{d.element=this.renderer.pieslice(m.x,m.y,l,i,h,b,0)}}return{fromAngle:h,toAngle:b,innerRadius:l,outerRadius:i}},_setRenderInfo:function(e,b,d,c){this._renderData[e].offsets[b][d].elementInfo=c},_getRenderInfo:function(d,b,c){return this._renderData[d].offsets[b][c].elementInfo||{}},_animColumns:function(ai,d){var p=this;var q=ai.groupIndex;var B=this.seriesGroups[q];var v=ai.renderData;var aa=B.type.indexOf("waterfall")!=-1;var G=this._getXAxis(q);var I=B.type.indexOf("stacked")!=-1;var e=ai.polarAxisCoords;var A=this._getGroupGradientType(q);var s=ai.columnGroupWidth.targetWidth;var z=-1;for(var ab=0;ab<B.series.length;ab++){if(this._isSerieVisible(q,ab)){z=ab;break}}var aj=NaN,t=NaN;for(var ab=0;ab<ai.seriesCtx.length;ab++){var ah=ai.seriesCtx[ab];if(isNaN(aj)||aj>ah.xAdjust){aj=ah.xAdjust}if(isNaN(t)||t<ah.xAdjust+ah.columnWidth){t=ah.xAdjust+ah.columnWidth}}var r=Math.abs(t-aj);var D=this._get([B.columnsGapPercent,25])/100;if(isNaN(D)<0||D>=1){D=0.25}var f=D*r;var Z=ai.renderData.xoffsets;var S=-1;var O={};var R=B.skipOverlappingPoints==true;for(var ad=Z.first;ad<=Z.last;ad++){var V=Z.data[ad];if(isNaN(V)){continue}if(S!=-1&&Math.abs(V-S)<(r-1+f)&&R){continue}else{S=V}var F=this._getColumnVOffsets(v,q,ai.seriesCtx,ad,I,d);var L=false;if(aa){for(var C=0;C<B.series.length;C++){if(B.series[C].summary&&Z.xvalues[ad][B.series[C].summary]){L=true}}}for(var C=0;C<ai.seriesCtx.length;C++){var ah=ai.seriesCtx[C];var m=ah.seriesIndex;var E=B.series[m];var w=F[C].from;var ak=F[C].to;var K=F[C].xOffset;var g=(ai.vertical?ai.rect.x:ai.rect.y)+ah.xAdjust;var ae=ah.settings;var W=ah.itemsColors.length!=0?ah.itemsColors[ad-v.xoffsets.first]:ah.serieColors;var h=this._isSerieVisible(q,m);if(!h){continue}var V=a.jqx._ptrnd(g+K);var Q={x:V,width:ah.columnWidth};if(F[C].funnel){Q.fromWidthPercent=F[C].fromWidthPercent;Q.toWidthPercent=F[C].toWidthPercent}var k=true;if(ai.vertical){Q.y=w;Q.height=ak-w;if(Q.height<0){Q.y+=Q.height;Q.height=-Q.height;k=false}}else{Q.x=w<ak?w:ak;Q.width=Math.abs(w-ak);k=w-ak<0;Q.y=V;Q.height=ah.columnWidth}var n=w-ak;if(isNaN(n)){continue}n=Math.abs(n);var H=undefined;var c=p._getRenderInfo(q,m,ad);var u=c.element;var P=c.labelElement;var N=u==undefined;if(P){p.renderer.removeElement(P);P=undefined}if(!e){if(F[C].funnel){var Y=this._getTrapezoidPath(a.extend({},Q),ai.vertical,k);if(N){u=this.renderer.path(Y,{})}else{this.renderer.attr(u,{d:Y})}}else{if(N){u=this.renderer.rect(Q.x,Q.y,ai.vertical?Q.width:0,ai.vertical?0:Q.height)}else{if(ai.vertical==true){this.renderer.attr(u,{x:Q.x,y:Q.y,height:n})}else{this.renderer.attr(u,{x:Q.x,y:Q.y,width:n})}}}}else{var l={element:u};H=this._columnAsPieSlice(l,ai.rect,e,Q);u=l.element;var W=this._getColors(q,m,undefined,"radialGradient",H.outerRadius)}if(n<1&&(d!=1||e)){this.renderer.attr(u,{display:"none"})}else{this.renderer.attr(u,{display:"block"})}if(N){this.renderer.attr(u,{fill:W.fillColor,"fill-opacity":ae.opacity,"stroke-opacity":ae.opacity,stroke:W.lineColor,"stroke-width":ae.stroke,"stroke-dasharray":ae.dashStyle})}if(P){this.renderer.removeElement(P)}if(!h||(n==0&&d<1)){c={element:u,labelElement:P};p._setRenderInfo(q,m,ad,c);continue}if(aa&&this._get([E.showWaterfallLines,B.showWaterfallLines])!=false){if(!I||(I&&C==z)){var ac=I?-1:C;if(d==1&&!isNaN(v.offsets[C][ad].from)&&!isNaN(v.offsets[C][ad].to)){var M=O[ac];if(M!=undefined){var ag={x:M.x,y:a.jqx._ptrnd(M.y)};var af={x:V,y:ag.y};var T=B.columnsTopWidthPercent/100;if(isNaN(T)){T=1}else{if(T>1||T<0){T=1}}var X=B.columnsBottomWidthPercent/100;if(isNaN(X)){X=1}else{if(X>1||X<0){X=1}}var o=ai.vertical?Q.width:Q.height;ag.x=ag.x-o/2+o/2*T;if(L){var b=o*T/2;af.x=af.x+o/2-(G.flip?-b:b)}else{var b=o*X/2;af.x=af.x+o/2-(G.flip?-b:b)}if(!ai.vertical){this._swapXY([ag]);this._swapXY([af])}this.renderer.line(ag.x,ag.y,af.x,af.y,{stroke:M.color,"stroke-width":ae.stroke,"stroke-opacity":ae.opacity,"fill-opacity":ae.opacity,"stroke-dasharray":ae.dashStyle})}}}if(d==1&&n!=0){O[I?-1:C]={y:ak,x:(ai.vertical?Q.x+Q.width:Q.y+Q.height),color:W.lineColor}}}if(e){var U=this._toPolarCoord(e,ai.rect,Q.x+Q.width/2,Q.y);var o=this._showLabel(q,m,ad,Q,undefined,undefined,true);var J=H.outerRadius+10;labelOffset=this._adjustTextBoxPosition(e.x,e.y,o,J,(H.fromAngle+H.toAngle)/2,true,false,false);P=this._showLabel(q,m,ad,{x:labelOffset.x,y:labelOffset.y},undefined,undefined,false,false,false)}else{P=this._showLabel(q,m,ad,Q,undefined,undefined,false,false,k)}c={element:u,labelElement:P};p._setRenderInfo(q,m,ad,c);if(d==1){this._installHandlers(u,"column",q,m,ad)}}}},_getTrapezoidPath:function(g,h,f){var l="";var b=g.fromWidthPercent/100;var c=g.toWidthPercent/100;if(!h){var e=g.width;g.width=g.height;g.height=e;e=g.x;g.x=g.y;g.y=e}var j=g.x+g.width/2;var k=[{x:j-g.width*(!f?b:c)/2,y:g.y+g.height},{x:j-g.width*(!f?c:b)/2,y:g.y},{x:j+g.width*(!f?c:b)/2,y:g.y},{x:j+g.width*(!f?b:c)/2,y:g.y+g.height}];if(!h){this._swapXY(k)}l+="M "+a.jqx._ptrnd(k[0].x)+","+a.jqx._ptrnd(k[0].y);for(var d=1;d<k.length;d++){l+=" L "+a.jqx._ptrnd(k[d].x)+","+a.jqx._ptrnd(k[d].y)}l+=" Z";return l},_swapXY:function(d){for(var c=0;c<d.length;c++){var b=d[c].x;d[c].x=d[c].y;d[c].y=b}},_renderCandleStickSeries:function(e,c,t){var m=this;var h=m.seriesGroups[e];if(!h.series||h.series.length==0){return}var d=h.orientation=="horizontal";var v=c;if(d){v={x:c.y,y:c.x,width:c.height,height:c.width}}var n=m._calcGroupOffsets(e,v);if(!n||n.xoffsets.length==0){return}var w=v.width;var k;if(h.polar||h.spider){k=m._getPolarAxisCoords(e,v);w=2*k.r}var g=m._alignValuesWithTicks(e);var f=m._getGroupGradientType(e);var i=[];for(var p=0;p<h.series.length;p++){i[p]=m._getColumnSerieWidthAndOffset(e,p)}for(var p=0;p<h.series.length;p++){if(!this._isSerieVisible(e,p)){continue}var u=m._getSerieSettings(e,p);var l=h.series[p];if(l.customDraw){continue}var j=a.isFunction(l.colorFunction)?undefined:m._getColors(e,p,NaN,f);var o={rect:c,inverse:d,groupIndex:e,seriesIndex:p,symbolType:l.symbolType,symbolSize:l.symbolSize,"fill-opacity":u.opacity,"stroke-opacity":u.opacity,"stroke-width":u.stroke,"stroke-dasharray":u.dashStyle,gradientType:f,colors:j,renderData:n,polarAxisCoords:k,columnsInfo:i,isOHLC:t,items:[],self:m};var q=m._getAnimProps(e,p);var b=q.enabled&&!m._isToggleRefresh&&n.xoffsets.length<5000?q.duration:0;m._animCandleStick(o,0);var r;m._enqueueAnimation("series",undefined,undefined,b,function(A,s,z){m._animCandleStick(s,z)},o)}},_animCandleStick:function(t,b){var q=["Open","Low","Close","High"];var e=t.columnsInfo[t.seriesIndex].width;var g=t.self.seriesGroups[t.groupIndex];var v=t.renderData.xoffsets;var E=-1;var n=Math.abs(v.data[v.last]-v.data[v.first]);n*=b;var c=NaN,r=NaN;for(var z=0;z<t.columnsInfo.length;z++){var w=t.columnsInfo[z];if(isNaN(c)||c>w.offset){c=w.offset}if(isNaN(r)||r<w.offset+w.width){r=w.offset+w.width}}var m=Math.abs(r-c);var B=g.skipOverlappingPoints!=false;for(var A=v.first;A<=v.last;A++){var l=v.data[A];if(isNaN(l)){continue}if(E!=-1&&Math.abs(l-E)<m&&B){continue}var C=Math.abs(v.data[A]-v.data[v.first]);if(C>n){break}E=l;var D=t.items[A]=t.items[A]||{};for(var z in q){var F=t.self._getDataValueAsNumber(A,g.series[t.seriesIndex]["dataField"+q[z]],t.groupIndex);if(isNaN(F)){break}var k=t.renderData.offsets[t.seriesIndex][A][q[z]];if(isNaN(k)){break}D[q[z]]=k}l+=t.inverse?t.rect.y:t.rect.x;if(t.polarAxisCoords){var s=this._toPolarCoord(t.polarAxisCoords,this._plotRect,l,k);l=s.x;k=s.y}l=a.jqx._ptrnd(l);for(var f in q){D[f]=a.jqx._ptrnd(D[f])}var h=t.colors;if(!h){h=t.self._getColors(t.groupIndex,t.seriesIndex,A,t.gradientType)}if(!t.isOHLC){var u=D.lineElement;if(!u){u=t.inverse?this.renderer.line(D.Low,l,D.High,l):this.renderer.line(l,D.Low,l,D.High);this.renderer.attr(u,{fill:h.fillColor,"fill-opacity":t["fill-opacity"],"stroke-opacity":t["fill-opacity"],stroke:h.lineColor,"stroke-width":t["stroke-width"],"stroke-dasharray":t["stroke-dasharray"]});D.lineElement=u}var p=D.stickElement;l-=e/2;if(!p){var d=h.fillColor;if(D.Close<=D.Open&&h.fillColorAlt){d=h.fillColorAlt}p=t.inverse?this.renderer.rect(Math.min(D.Open,D.Close),l,Math.abs(D.Close-D.Open),e):this.renderer.rect(l,Math.min(D.Open,D.Close),e,Math.abs(D.Close-D.Open));this.renderer.attr(p,{fill:d,"fill-opacity":t["fill-opacity"],"stroke-opacity":t["fill-opacity"],stroke:h.lineColor,"stroke-width":t["stroke-width"],"stroke-dasharray":t["stroke-dasharray"]});D.stickElement=p}if(b==1){this._installHandlers(p,"column",t.groupIndex,t.seriesIndex,A)}}else{var o="M"+l+","+D.Low+" L"+l+","+D.High+" M"+(l-e/2)+","+D.Open+" L"+l+","+D.Open+" M"+(l+e/2)+","+D.Close+" L"+l+","+D.Close;if(t.inverse){o="M"+D.Low+","+l+" L"+D.High+","+l+" M"+D.Open+","+(l-e/2)+" L"+D.Open+","+l+" M"+D.Close+","+l+" L"+D.Close+","+(l+e/2)}var u=D.lineElement;if(!u){u=this.renderer.path(o,{});this.renderer.attr(u,{fill:h.fillColor,"fill-opacity":t["fill-opacity"],"stroke-opacity":t["fill-opacity"],stroke:h.lineColor,"stroke-width":t["stroke-width"],"stroke-dasharray":t["stroke-dasharray"]});D.lineElement=u}if(b==1){this._installHandlers(u,"column",t.groupIndex,t.seriesIndex,A)}}}},_renderScatterSeries:function(e,C,E){var t=this.seriesGroups[e];if(!t.series||t.series.length==0){return}var f=t.type.indexOf("bubble")!=-1;var u=t.orientation=="horizontal";var m=C;if(u){m={x:C.y,y:C.x,width:C.height,height:C.width}}var n=this._calcGroupOffsets(e,m);if(!n||n.xoffsets.length==0){return}var M=m.width;var c;if(t.polar||t.spider){c=this._getPolarAxisCoords(e,m);M=2*c.r}var U=this._alignValuesWithTicks(e);var q=this._getGroupGradientType(e);if(!E){E="to"}for(var g=0;g<t.series.length;g++){var S=this._getSerieSettings(e,g);var J=t.series[g];if(J.customDraw){continue}var z=J.dataField;var l=a.isFunction(J.colorFunction);var K=this._getColors(e,g,NaN,q);var T=NaN,w=NaN;if(f){for(var R=n.xoffsets.first;R<=n.xoffsets.last;R++){var B=this._getDataValueAsNumber(R,(J.radiusDataField||J.sizeDataField),e);if(typeof(B)!="number"){throw"Invalid radiusDataField value at ["+R+"]"}if(!isNaN(B)){if(isNaN(T)||B<T){T=B}if(isNaN(w)||B>w){w=B}}}}var j=J.minRadius||J.minSymbolSize;if(isNaN(j)){j=M/50}var D=J.maxRadius||J.maxSymbolSize;if(isNaN(D)){D=M/25}if(j>D){D=j}var L=J.radius;if(isNaN(L)&&!isNaN(J.symbolSize)){L=(J.symbolType=="circle")?J.symbolSize/2:J.symbolSize}else{L=5}var F=this._getAnimProps(e,g);var A=F.enabled&&!this._isToggleRefresh&&n.xoffsets.length<5000?F.duration:0;var v={groupIndex:e,seriesIndex:g,symbolType:J.symbolType,symbolSize:J.symbolSize,"fill-opacity":S.opacity,"stroke-opacity":S.opacity,"stroke-width":S.stroke,"stroke-dasharray":S.dashStyle,items:[],polarAxisCoords:c};for(var R=n.xoffsets.first;R<=n.xoffsets.last;R++){var B=this._getDataValueAsNumber(R,z,e);if(typeof(B)!="number"){continue}var I=n.xoffsets.data[R];var G=n.xoffsets.xvalues[R];var H=n.offsets[g][R][E];if(H<m.y||H>m.y+m.height){continue}if(isNaN(I)||isNaN(H)){continue}if(u){var P=I;I=H;H=P+C.y}else{I+=C.x}var N=L;if(f){var o=this._getDataValueAsNumber(R,(J.radiusDataField||J.sizeDataField),e);if(typeof(o)!="number"){continue}N=j+(D-j)*(o-T)/Math.max(1,w-T);if(isNaN(N)){N=j}}n.offsets[g][R].radius=N;var k=NaN,O=NaN;var p=0;var b=this._elementRenderInfo;if(G!=undefined&&b&&b.length>e&&b[e].series.length>g){var d=b[e].series[g][G];if(d&&!isNaN(d.to)){k=d.to;O=d.xoffset;p=L;if(u){var P=O;O=k;k=P+C.y}else{O+=C.x}if(f){p=j+(D-j)*(d.valueRadius-T)/Math.max(1,w-T);if(isNaN(p)){p=j}}}}if(l){K=this._getColors(e,g,R,q)}v.items.push({from:p,to:N,itemIndex:R,fill:K.fillColor,stroke:K.lineColor,x:I,y:H,xFrom:O,yFrom:k})}this._animR(v,0);var h=this;var Q;this._enqueueAnimation("series",undefined,undefined,A,function(s,i,r){h._animR(i,r)},v)}},_animR:function(o,g){var j=o.items;var p=o.symbolType||"circle";var c=o.symbolSize;for(var e=0;e<j.length;e++){var n=j[e];var l=n.x;var k=n.y;var b=Math.round((n.to-n.from)*g+n.from);if(!isNaN(n.yFrom)){k=n.yFrom+(k-n.yFrom)*g}if(!isNaN(n.xFrom)){l=n.xFrom+(l-n.xFrom)*g}if(o.polarAxisCoords){var m=this._toPolarCoord(o.polarAxisCoords,this._plotRect,l,k);l=m.x;k=m.y}l=a.jqx._ptrnd(l);k=a.jqx._ptrnd(k);b=a.jqx._ptrnd(b);var f=this._getRenderInfo(o.groupIndex,o.seriesIndex,j[e].itemIndex);var d=f.element;var h=f.labelElement;if(p=="circle"){if(!d){d=this.renderer.circle(l,k,b);this.renderer.attr(d,{fill:n.fill,"fill-opacity":o["fill-opacity"],"stroke-opacity":o["fill-opacity"],stroke:n.stroke,"stroke-width":o["stroke-width"],"stroke-dasharray":o["stroke-dasharray"]})}if(this._isVML){this.renderer.updateCircle(d,undefined,undefined,b)}else{this.renderer.attr(d,{r:b,cy:k,cx:l})}}else{if(d){this.renderer.removeElement(d)}d=this._drawSymbol(p,l,k,n.fill,o["fill-opacity"],n.stroke,o["stroke-opacity"]||o["fill-opacity"],o["stroke-width"],o["stroke-dasharray"],c||b)}if(h){this.renderer.removeElement(h)}h=this._showLabel(o.groupIndex,o.seriesIndex,n.itemIndex,{x:l-b,y:k-b,width:2*b,height:2*b});if(g>=1){this._installHandlers(d,"circle",o.groupIndex,o.seriesIndex,n.itemIndex)}this._setRenderInfo(o.groupIndex,o.seriesIndex,j[e].itemIndex,{element:d,labelElement:h})}},_showToolTip:function(n,l,G,z,e){var u=this;var k=u._getXAxis(G);var b=u._getValueAxis(G);if(u._ttEl&&G==u._ttEl.gidx&&z==u._ttEl.sidx&&e==u._ttEl.iidx){return}var j=u.seriesGroups[G];var o=j.series[z];var h=u.enableCrosshairs&&!(j.polar||j.spider);if(u._pointMarker){n=parseInt(u._pointMarker.x+5);l=parseInt(u._pointMarker.y-5)}else{h=false}var i=h&&u.showToolTips==false;n=a.jqx._ptrnd(n);l=a.jqx._ptrnd(l);var H=u._ttEl==undefined;if(j.showToolTips==false||o.showToolTips==false){return}var g=u._get([o.toolTipFormatSettings,j.toolTipFormatSettings,b.toolTipFormatSettings,u.toolTipFormatSettings]);var r=u._get([o.toolTipFormatFunction,j.toolTipFormatFunction,b.toolTipFormatFunction,u.toolTipFormatFunction]);var m=u._getColors(G,z,e);var s=u._getDataValue(e,k.dataField,G);if(k.dataField==undefined||k.dataField==""){s=e}if(k.type=="date"){s=u._castAsDate(s,(g?g.dateFormat:undefined)||k.dateFormat)}var q="";if(a.isFunction(r)){var v={};var B=0;for(var c in o){if(c.indexOf("dataField")==0){v[c.substring(9,c.length).toLowerCase()]=u._getDataValue(e,o[c],G);B++}}if(B==0){v=u._getDataValue(e,undefined,G)}else{if(B==1){v=v[""]}}q=r(v,e,o,j,s,k)}else{q=u._getFormattedValue(G,z,e,g,r);var d=this._getAxisSettings(k);var L=d.toolTipFormatSettings;var f=d.toolTipFormatFunction;if(!f&&!L&&k.type=="date"){f=this._getDefaultDTFormatFn(k.baseUnit||"day")}var K=u._formatValue(s,L,f,G,z,e);if(!u._isPieGroup(G)){var p=(k.displayText||k.dataField||"");if(p.length>0){q=p+": "+K+"<br>"+q}else{q=K+"<br>"+q}}else{s=u._getDataValue(e,o.displayText||o.dataField,G);K=u._formatValue(s,L,f,G,z,e);q=K+": "+q}}if(!u._ttEl){u._ttEl={}}u._ttEl.sidx=z;u._ttEl.gidx=G;u._ttEl.iidx=e;rect=u.renderer.getRect();if(h){var D=a.jqx._ptrnd(u._pointMarker.x);var C=a.jqx._ptrnd(u._pointMarker.y);if(u._ttEl.vLine&&u._ttEl.hLine){u.renderer.attr(u._ttEl.vLine,{x1:D,x2:D});u.renderer.attr(u._ttEl.hLine,{y1:C,y2:C})}else{var A=u.crosshairsColor||u._defaultLineColor;u._ttEl.vLine=u.renderer.line(D,u._plotRect.y,D,u._plotRect.y+u._plotRect.height,{stroke:A,"stroke-width":u.crosshairsLineWidth||1,"stroke-dasharray":u.crosshairsDashStyle||""});u._ttEl.hLine=u.renderer.line(u._plotRect.x,C,u._plotRect.x+u._plotRect.width,C,{stroke:A,"stroke-width":u.crosshairsLineWidth||1,"stroke-dasharray":u.crosshairsDashStyle||""})}}if(!i&&u.showToolTips!=false){var E=o.toolTipClass||j.toolTipClass||this.toThemeProperty("jqx-chart-tooltip-text",null);var I=o.toolTipBackground||j.toolTipBackground||"#FFFFFF";var J=o.toolTipLineColor||j.toolTipLineColor||m.lineColor;var w=this.getItemCoord(G,z,e);var F=0;if(u._pointMarker&&u._pointMarker.element){F=o.symbolSizeSelected;if(isNaN(F)){F=o.symbolSize}if(isNaN(F)||F>50||F<0){F=j.symbolSize}if(isNaN(F)||F>50||F<0){F=8}}u._createTooltip(w,j,q,{css:E,fill:I,stroke:J,symbolSize:F})}},_fitTooltip:function(c,h,j,k,e){var d={};var b=2+e/2;var f=7;if(h.x-j.width-f-b>c.x&&h.y+h.height/2-j.height/2>c.y&&h.y+h.height/2+j.height/2<c.y+c.height){d.left={arrowLocation:"right",x:h.x-j.width-f-b,y:h.y+h.height/2-j.height/2,width:j.width+f,height:j.height}}if(h.x+h.width+j.width+f+b<c.x+c.width&&h.y+h.height/2-j.height/2>c.y&&h.y+h.height/2+j.height/2<c.y+c.height){d.right={arrowLocation:"left",x:h.x+h.width+b,y:h.y+h.height/2-j.height/2,width:j.width+f,height:j.height}}if(h.y-j.height-b-f>c.y&&h.x+h.width/2-j.width/2>c.x&&h.x+h.width/2+j.width/2<c.x+c.width){d.top={arrowLocation:"bottom",x:h.x+h.width/2-j.width/2,y:h.y-j.height-b-f,width:j.width,height:j.height+f}}if(h.y+h.height+j.height+f+b<c.y+c.height&&h.x+h.width/2-j.width/2>c.x&&h.x+h.width/2+j.width/2<c.x+c.width){d.bottom={arrowLocation:"top",x:h.x+h.width/2-j.width/2,y:h.y+h.height+b,width:j.width,height:j.height+f}}if(h.width>h.height||((k.type.indexOf("stackedcolumn")!=-1||k.type.indexOf("stackedwaterfall")!=-1)&&k.orientation!="horizontal")){if(d.left){return d.left}if(d.right){return d.right}}else{if(d.top){return d.top}if(d.bottom){return d.bottom}}for(var g in d){if(d[g]){return d[g]}}return{arrowLocation:""}},_createTooltip:function(C,j,u,v){var p=this;var t=j.type;var A=false;var B=p._ttEl.box;if(!B){A=true;B=p._ttEl.box=document.createElement("div");var e=10000000;B.style.position="absolute";B.style.cursor="default";a(b).css({"z-index":e,"box-sizing":"content-box"});a(document.body).append(B);var b=document.createElement("div");b.id="arrowOuterDiv";b.style.width="0px";b.style.height="0px";b.style.position="absolute";a(b).css({"z-index":e+1,"box-sizing":"content-box"});var g=document.createElement("div");g.id="arrowInnerDiv";g.style.width="0px";g.style.height="0px";g.style.position="absolute";var s=document.createElement("div");s.id="contentDiv";s.style.position="absolute";a(s).css({"box-sizing":"content-box"});a(s).addClass("jqx-rc-all jqx-button");a(s).appendTo(a(B));a(b).appendTo(a(B));a(g).appendTo(a(B));a(g).css({"z-index":e+2,"box-sizing":"content-box"})}if(!u||u.length==0){a(B).fadeTo(0,0);return}s=a(B).find("#contentDiv")[0];b=a(B).find("#arrowOuterDiv")[0];g=a(B).find("#arrowInnerDiv")[0];s.style.backgroundColor=v.fill;s.style.borderColor=v.stroke;var l="<span class='"+v.css+"'>"+u+"</span>";a(s).html(l);var o=this._measureHtml(l,"jqx-rc-all jqx-button");rect=p._plotRect;if(o.width>rect.width||o.height>rect.height){return}var n={width:o.width,height:o.height};arrowLocation="";var z=5;var q=7;var r=p._isColumnType(t);x=Math.max(C.x,rect.x);y=Math.max(C.y,rect.y);if(p.toolTipAlignment=="dataPoint"){if(t.indexOf("pie")!=-1||t.indexOf("donut")!=-1){var k=(C.fromAngle+C.toAngle)/2;k=k*(Math.PI/180);var f=(!isNaN(C.innerRadius)&&C.innerRadius>0)?(C.innerRadius+C.outerRadius)/2:C.outerRadius*0.75;x=C.x=C.center.x+Math.cos(k)*f;y=C.y=C.center.y-Math.sin(k)*f;C.width=C.height=1}else{if(r&&(j.polar||j.spider)){C.width=C.height=1}}var w=this._fitTooltip(this._plotRect,C,n,j,v.symbolSize);if(w.arrowLocation!=""){arrowLocation=w.arrowLocation;x=w.x;y=w.y;n.width=w.width;n.height=w.height}}else{arrowLocation=""}if(arrowLocation=="top"||arrowLocation=="bottom"){n.height+=q;x-=q/2;if(arrowLocation=="bottom"){y-=q}}else{if(arrowLocation=="left"||arrowLocation=="right"){n.width+=q;y-=q/2;if(arrowLocation=="right"){x-=q}}}if(x+n.width>rect.x+rect.width){arrowLocation="";x=rect.x+rect.width-n.width}if(y+n.height>rect.y+rect.height){arrowLocation="";y=rect.y+rect.height-n.height}var h={x:0,y:0},d={x:0,y:0};a(s).css({width:o.width,height:o.height,left:0,top:0});b.style["margin-top"]=b.style["margin-left"]=0;g.style["margin-top"]=g.style["margin-left"]=0;s.style["margin-top"]=s.style["margin-left"]=0;var i=q+"px solid";var c=q+"px solid transparent";switch(arrowLocation){case"left":h={x:0,y:(o.height-q)/2};contentPostion={x:q,y:0};s.style["margin-left"]=q+"px";b.style["margin-left"]=0+"px";b.style["margin-top"]=h.y+"px";b.style["border-left"]="";b.style["border-right"]=i+" "+v.stroke;b.style["border-top"]=c;b.style["border-bottom"]=c;g.style["margin-left"]=1+"px";g.style["margin-top"]=h.y+"px";g.style["border-left"]="";g.style["border-right"]=i+" "+v.fill;g.style["border-top"]=c;g.style["border-bottom"]=c;break;case"right":h={x:n.width-q,y:(o.height-q)/2};contentPostion={x:0,y:0};b.style["margin-left"]=h.x+"px";b.style["margin-top"]=h.y+"px";b.style["border-left"]=i+" "+v.stroke;b.style["border-right"]="";b.style["border-top"]=c;b.style["border-bottom"]=c;g.style["margin-left"]=h.x-1+"px";g.style["margin-top"]=h.y+"px";g.style["border-left"]=i+" "+v.fill;g.style["border-right"]="";g.style["border-top"]=c;g.style["border-bottom"]=c;break;case"top":h={x:n.width/2-q/2,y:0};contentPostion={x:0,y:q};s.style["margin-top"]=contentPostion.y+"px";b.style["margin-left"]=h.x+"px";b.style["border-top"]="";b.style["border-bottom"]=i+" "+v.stroke;b.style["border-left"]=c;b.style["border-right"]=c;g.style["margin-left"]=h.x+"px";g.style["margin-top"]=1+"px";g.style["border-top"]="";g.style["border-bottom"]=i+" "+v.fill;g.style["border-left"]=c;g.style["border-right"]=c;break;case"bottom":h={x:n.width/2-q/2,y:n.height-q};contentPostion={x:0,y:0};b.style["margin-left"]=h.x+"px";b.style["margin-top"]=h.y+"px";b.style["border-top"]=i+" "+v.stroke;b.style["border-bottom"]="";b.style["border-left"]=c;b.style["border-right"]=c;g.style["margin-left"]=h.x+"px";g.style["margin-top"]=h.y-1+"px";g.style["border-top"]=i+" "+v.fill;g.style["border-bottom"]="";g.style["border-left"]=c;g.style["border-right"]=c;break}if(arrowLocation==""){a(b).hide();a(g).hide()}else{a(b).show();a(g).show()}a(B).css({width:n.width+"px",height:n.height+"px"});var m=p.host.coord();if(A){a(B).fadeOut(0,0);B.style.left=x+m.left+"px";B.style.top=y+m.top+"px"}a(B).clearQueue();a(B).animate({left:x+m.left,top:y+m.top,opacity:1},p.toolTipMoveDuration,"easeInOutCirc");a(B).fadeTo(400,1)},_measureHtml:function(c,b){var e=this._measureDiv;if(!e){this._measureDiv=e=document.createElement("div");e.style.position="absolute";e.style.cursor="default";e.style.overflow="hidden";e.style.display="none";a(e).addClass(b);this.host.append(e)}a(e).html(c);var d={width:a(e).width()+2,height:a(e).height()+2};if(a.jqx.browser&&a.jqx.browser.mozilla){d.height+=3}return d},_hideToolTip:function(b){if(!this._ttEl){return}if(this._ttEl.box){if(b==0){a(this._ttEl.box).hide()}else{a(this._ttEl.box).fadeOut()}}this._hideCrosshairs();this._ttEl.gidx=undefined},_hideCrosshairs:function(){if(!this._ttEl){return}if(this._ttEl.vLine){this.renderer.removeElement(this._ttEl.vLine);this._ttEl.vLine=undefined}if(this._ttEl.hLine){this.renderer.removeElement(this._ttEl.hLine);this._ttEl.hLine=undefined}},_get:function(b){return a.jqx.getByPriority(b)},_getAxisSettings:function(f){if(!f){return{}}var l=this;var k=f.gridLines||{};var n={visible:this._get([k.visible,f.showGridLines,true]),color:l._get([k.color,f.gridLinesColor,l._defaultLineColor]),unitInterval:l._get([k.unitInterval,k.interval,f.gridLinesInterval]),step:l._get([k.step,f.gridLinesStep]),dashStyle:l._get([k.dashStyle,f.gridLinesDashStyle]),width:l._get([k.lineWidth,1]),offsets:[],alternatingBackgroundColor:f.alternatingBackgroundColor,alternatingBackgroundColor2:f.alternatingBackgroundColor2,alternatingBackgroundOpacity:f.alternatingBackgroundOpacity};var d=f.tickMarks||{};var h={visible:this._get([d.visible,f.showTickMarks,true]),color:l._get([d.color,f.tickMarksColor,l._defaultLineColor]),unitInterval:l._get([d.unitInterval,d.interval,f.tickMarksInterval]),step:l._get([d.step,f.tickMarksStep]),dashStyle:l._get([d.dashStyle,f.tickMarksDashStyle]),width:l._get([d.lineWidth,1]),size:l._get([d.size,4]),offsets:[]};var e=f.title||{};var c={visible:l._get([e.visible,true]),text:l._get([f.description,e.text]),style:l._get([f.descriptionClass,e["class"],l.toThemeProperty("jqx-chart-axis-description",null)]),halign:l._get([f.horizontalDescriptionAlignment,e.horizontalAlignment,"center"]),valign:l._get([f.verticalDescriptionAlignment,e.verticalAlignment,"center"]),angle:0,rotationPoint:l._get([e.rotationPoint,"centercenter"]),offset:l._get([e.offset,{x:0,y:0}])};var i=f.line||{};var b={visible:l._get([i.visible,true]),color:l._get([i.color,n.color,l._defaultLineColor]),dashStyle:l._get([i.dashStyle,n.dashStyle,""]),width:l._get([i.lineWidth,1])};var j=f.padding||{};j={left:j.left||0,right:j.right||0,top:j.top||0,bottom:j.bottom||0};var g=this._getAxisLabelsSettings(f);var m={visible:this._get([f.visible,f.showValueAxis,f.showXAxis,f.showCategoryAxis,true]),customDraw:this._get([f.customDraw,false]),gridLines:n,tickMarks:h,line:b,title:c,labels:g,padding:j,toolTipFormatFunction:this._get([f.toolTipFormatFunction,f.formatFunction,g.formatFunction]),toolTipFormatSettings:this._get([f.toolTipFormatSettings,f.formatSettings,g.formatSettings])};return m},_getAxisLabelsSettings:function(d){var b=this;var e=d.labels||{};var c={visible:b._get([d.showLabels,e.visible,true]),unitInterval:b._get([e.unitInterval,e.interval,d.labelsInterval]),step:b._get([e.step,d.labelsStep]),angle:b._get([d.textRotationAngle,e.angle,0]),style:b._get([d["class"],e["class"],b.toThemeProperty("jqx-chart-axis-text",null)]),halign:b._get([d.horizontalTextAlignment,e.horizontalAlignment,"center"]),valign:b._get([d.verticalTextAlignment,e.verticalAlignment,"center"]),textRotationPoint:b._get([d.textRotationPoint,e.rotationPoint,"auto"]),textOffset:b._get([d.textOffset,e.offset,{x:0,y:0}]),autoRotate:b._get([d.labelsAutoRotate,e.autoRotate,false]),formatSettings:b._get([d.formatSettings,e.formatSettings,undefined]),formatFunction:b._get([d.formatFunction,e.formatFunction,undefined])};return c},_getLabelsSettings:function(p,l,h,t){var j=this.seriesGroups[p];var r=j.series[l];var m=isNaN(h)?undefined:this._getDataValue(h,r.dataField,p);var k=t||["Visible","Offset","Angle","HorizontalAlignment","VerticalAlignment","Class","BackgroundColor","BorderColor","BorderOpacity","Padding","Opacity","BackgroundOpacity","LinesAngles","LinesEnabled","AutoRotate","Radius"];var q={};for(var f=0;f<k.length;f++){var n=k[f];var c="labels"+n;var b="label"+n;var o=n.substring(0,1).toLowerCase()+n.substring(1);var d=undefined;if(j.labels&&typeof(j.labels)=="object"){d=j.labels[o]}if(r.labels&&typeof(r.labels)=="object"&&undefined!=r.labels[o]){d=r.labels[o]}d=this._get([r[c],r[b],d,j[c],j[b]]);if(a.isFunction(d)){q[o]=d(m,h,r,j)}else{q[o]=d}}q["class"]=q["class"]||this.toThemeProperty("jqx-chart-label-text",null);q.visible=this._get([q.visible,r.showLabels,j.showLabels,r.labels!=undefined?true:undefined,j.labels!=undefined?true:undefined]);var e=q.padding||1;q.padding={left:this._get([e.left,isNaN(e)?1:e]),right:this._get([e.right,isNaN(e)?1:e]),top:this._get([e.top,isNaN(e)?1:e]),bottom:this._get([e.bottom,isNaN(e)?1:e])};return q},_showLabel:function(J,E,f,b,t,i,e,k,c,F,B){var m=this.seriesGroups[J];var r=m.series[E];var C={width:0,height:0},q;if(isNaN(f)){return}var I=this._getLabelsSettings(J,E,f);if(!I.visible){return e?C:undefined}if(b.width<0||b.height<0){return e?C:undefined}var g=I.angle;if(!isNaN(F)){g=F}var j=I.offset||{};var G={x:j.x,y:j.y};if(isNaN(G.x)){G.x=0}if(isNaN(G.y)){G.y=0}t=t||I.horizontalAlignment||"center";i=i||I.verticalAlignment||"center";var v=this._getFormattedValue(J,E,f,undefined,undefined,true);var s=b.width;var H=b.height;if(k==true&&t!="center"){t=t=="right"?"left":"right"}if(c==true&&i!="center"&&i!="middle"){i=i=="top"?"bottom":"top";G.y*=-1}C=this.renderer.measureText(v,g,{"class":I["class"]});if(e){return C}var p=0,n=0;if(s>0){if(t==""||t=="center"){p+=(s-C.width)/2}else{if(t=="right"){p+=(s-C.width)}}}if(H>0){if(i==""||i=="center"){n+=(H-C.height)/2}else{if(i=="bottom"){n+=(H-C.height)}}}p+=b.x+G.x;n+=b.y+G.y;var o=this._plotRect;if(p<=o.x){p=o.x+2}if(n<=o.y){n=o.y+2}var l={width:Math.max(C.width,1),height:Math.max(C.height,1)};if(n+l.height>=o.y+o.height){n=o.y+o.height-(q?(l.height+q.height)/2:l.height)-2}if(p+l.width>=o.x+o.width){p=o.x+o.width-l.width-2}var d;var A=I.backgroundColor;var D=I.borderColor;var z=I.padding;if(A||D){d=this.renderer.beginGroup();var b=this.renderer.rect(p-z.left,n-z.top,C.width+z.left+z.right,C.height+z.bottom+z.bottom,{fill:A||"transparent","fill-opacity":I.backgroundOpacity||1,stroke:D||"transparent","stroke-opacity":I.borderOpacity,"stroke-width":1})}var u=this.renderer.text(v,p,n,C.width,C.height,g,{"class":I["class"],opacity:I.opacity||1},false,"center","center");if(B){B.x=p-z.left;B.y=n-z.top;B.width=C.width+z.left+z.right;B.height=C.height+z.bottom+z.bottom}if(this._isVML){this.renderer.removeElement(u);this.renderer.getContainer()[0].appendChild(u)}if(d){this.renderer.endGroup()}return d||u},_getAnimProps:function(j,f){var e=this.seriesGroups[j];var c=!isNaN(f)?e.series[f]:undefined;var b=this.enableAnimations==true;if(e.enableAnimations){b=e.enableAnimations==true}if(c&&c.enableAnimations){b=c.enableAnimations==true}var i=this.animationDuration;if(isNaN(i)){i=1000}var d=e.animationDuration;if(!isNaN(d)){i=d}if(c){var h=c.animationDuration;if(!isNaN(h)){i=h}}if(i>5000){i=1000}return{enabled:b,duration:i}},_isColorTransition:function(f,d,e,g){if(g-1<e.xoffsets.first){return false}var b=this._getColors(f,d,g,this._getGroupGradientType(f));var c=this._getColors(f,d,g-1,this._getGroupGradientType(f));return(b.fillColor!=c.fillColor)},_renderLineSeries:function(k,Q){var H=this.seriesGroups[k];if(!H.series||H.series.length==0){return}var s=H.type.indexOf("area")!=-1;var K=H.type.indexOf("stacked")!=-1;var e=K&&H.type.indexOf("100")!=-1;var ae=H.type.indexOf("spline")!=-1;var t=H.type.indexOf("step")!=-1;var O=H.type.indexOf("range")!=-1;var af=H.polar==true||H.spider==true;if(af){t=false}if(t&&ae){return}var A=this._getDataLen(k);var ac=Q.width/A;var aj=H.orientation=="horizontal";var C=this._getXAxis(k).flip==true;var z=Q;if(aj){z={x:Q.y,y:Q.x,width:Q.height,height:Q.width}}var D=this._calcGroupOffsets(k,z);if(!D||D.xoffsets.length==0){return}if(!this._linesRenderInfo){this._linesRenderInfo={}}this._linesRenderInfo[k]={};for(var n=H.series.length-1;n>=0;n--){var g=this._getSerieSettings(k,n);var ah={groupIndex:k,rect:z,serieIndex:n,swapXY:aj,isArea:s,isSpline:ae,isRange:O,isPolar:af,settings:g,segments:[],pointsLength:0};var j=this._isSerieVisible(k,n);if(!j){this._linesRenderInfo[k][n]=ah;continue}var J=H.series[n];if(J.customDraw){continue}var w=a.isFunction(J.colorFunction);var U=D.xoffsets.first;var G=U;var N=this._getColors(k,n,NaN,this._getGroupGradientType(k));var ab=false;var u;do{var W=[];var T=[];var r=[];var P=-1;var p=0,o=0;var R=NaN;var E=NaN;var ai=NaN;if(D.xoffsets.length<1){continue}var S=this._getAnimProps(k,n);var L=S.enabled&&!this._isToggleRefresh&&D.xoffsets.length<10000&&this._isVML!=true?S.duration:0;var v=U;u=false;var d=this._getColors(k,n,U,this._getGroupGradientType(k));for(var ad=U;ad<=D.xoffsets.last;ad++){U=ad;var X=D.xoffsets.data[ad];var V=D.xoffsets.xvalues[ad];if(isNaN(X)){continue}X=Math.max(X,1);p=X;o=D.offsets[n][ad].to;var aa=D.offsets[n][ad].from;if(isNaN(o)||isNaN(aa)){if(J.emptyPointsDisplay=="connect"){continue}else{if(J.emptyPointsDisplay=="zero"){if(isNaN(o)){o=D.baseOffset}if(isNaN(aa)){aa=D.baseOffset}}else{u=true;break}}}if(w&&this._isColorTransition(k,n,D,U)){if(W.length>1){U--;break}}var c=this._elementRenderInfo;if(c&&c.length>k&&c[k].series.length>n){var f=c[k].series[n][V];var ai=a.jqx._ptrnd(f?f.to:undefined);var I=a.jqx._ptrnd(z.x+(f?f.xoffset:undefined));r.push(aj?{y:I,x:ai,index:ad}:{x:I,y:ai,index:ad})}G=ad;if(g.stroke<2){if(o-z.y<=1){o=z.y+1}if(aa-z.y<=1){aa=z.y+1}if(z.y+z.height-o<=1){o=z.y+z.height-1}if(z.y+z.height-o<=1){aa=z.y+z.height-1}}if(!s&&e){if(o<=z.y){o=z.y+1}if(o>=z.y+z.height){o=z.y+z.height-1}if(aa<=z.y){aa=z.y+1}if(aa>=z.y+z.height){aa=z.y+z.height-1}}X=Math.max(X,1);p=X+z.x;if(H.skipOverlappingPoints==true&&!isNaN(R)&&Math.abs(R-p)<=1){continue}if(t&&!isNaN(R)&&!isNaN(E)){if(E!=o){W.push(aj?{y:p,x:a.jqx._ptrnd(E)}:{x:p,y:a.jqx._ptrnd(E)})}}W.push(aj?{y:p,x:a.jqx._ptrnd(o),index:ad}:{x:p,y:a.jqx._ptrnd(o),index:ad});T.push(aj?{y:p,x:a.jqx._ptrnd(aa),index:ad}:{x:p,y:a.jqx._ptrnd(aa),index:ad});R=p;E=o;if(isNaN(ai)){ai=o}}if(W.length==0){U++;continue}var F=W[W.length-1].index;if(w){N=this._getColors(k,n,F,this._getGroupGradientType(k))}var l=z.x+D.xoffsets.data[v];var Z=z.x+D.xoffsets.data[G];if(s&&H.alignEndPointsWithIntervals==true){var B=C?-1:1;if(l>z.x){l=z.x}if(Z<z.x+z.width){Z=z.x+z.width}if(C){var Y=l;l=Z;Z=Y}}Z=a.jqx._ptrnd(Z);l=a.jqx._ptrnd(l);var m=D.baseOffset;ai=a.jqx._ptrnd(ai);var h=a.jqx._ptrnd(o)||m;if(O){W=W.concat(T.reverse())}ah.pointsLength+=W.length;var b={lastItemIndex:F,colorSettings:N,pointsArray:W,pointsStart:r,left:l,right:Z,pyStart:ai,pyEnd:h,yBase:m,labelElements:[],symbolElements:[]};ah.segments.push(b)}while(U<D.xoffsets.length-1||u);this._linesRenderInfo[k][n]=ah}var M=this._linesRenderInfo[k];var ag=[];for(var ad in M){ag.push(M[ad])}ag=ag.sort(function(ak,i){return ak.serieIndex-i.serieIndex});if(s&&K){ag.reverse()}for(var ad=0;ad<ag.length;ad++){var ah=ag[ad];this._animateLine(ah,L==0?1:0);var q=this;this._enqueueAnimation("series",undefined,undefined,L,function(ak,i,al){q._animateLine(i,al)},ah)}},_animateLine:function(w,b){var C=w.settings;var f=w.groupIndex;var g=w.serieIndex;var j=this.seriesGroups[f];var s=j.series[g];var v=this._getSymbol(f,g);var p=this._getLabelsSettings(f,g,NaN,["Visible"]).visible;var o=true;if(w.isPolar){if(!isNaN(j.endAngle)&&Math.round(Math.abs((isNaN(j.startAngle)?0:j.startAngle)-j.endAngle))!=360){o=false}}var q=0;for(var d=0;d<w.segments.length;d++){var u=w.segments[d];var z=this._calculateLine(f,w.pointsLength,q,u.pointsArray,u.pointsStart,u.yBase,b,w.isArea,w.swapXY);q+=u.pointsArray.length;if(z==""){continue}var r=z.split(" ");var A=r.length;var h=z;if(h!=""){h=this._buildLineCmd(z,w.isRange,u.left,u.right,u.pyStart,u.pyEnd,u.yBase,w.isArea,w.isPolar,o,w.isSpline,w.swapXY)}else{h="M 0 0"}var l=u.colorSettings;if(!u.pathElement){u.pathElement=this.renderer.path(h,{"stroke-width":C.stroke,stroke:l.lineColor,"stroke-opacity":C.opacity,"fill-opacity":C.opacity,"stroke-dasharray":C.dashStyle,fill:w.isArea?l.fillColor:"none"});this._installHandlers(u.pathElement,"path",f,g,u.lastItemIndex)}else{this.renderer.attr(u.pathElement,{d:h})}if(u.labelElements){for(var B=0;B<u.labelElements.length;B++){this.renderer.removeElement(u.labelElements[B])}u.labelElements=[]}if(u.symbolElements){for(var B=0;B<u.symbolElements.length;B++){this.renderer.removeElement(u.symbolElements[B])}u.symbolElements=[]}if(u.pointsArray.length==r.length){if(v!="none"||p){var E=s.symbolSize;var D=w.rect;for(var B=0;B<r.length;B++){var t=r[B].split(",");t={x:parseFloat(t[0]),y:parseFloat(t[1])};if(t.x<D.x||t.x>D.x+D.width||t.y<D.y||t.y>D.y+D.height){continue}if(v!="none"){var n=this._getColors(f,g,u.pointsArray[B].index,this._getGroupGradientType(f));var e=this._drawSymbol(v,t.x,t.y,n.fillColorSymbol,C.opacity,n.lineColorSymbol,C.opacity,1,undefined,E);u.symbolElements.push(e)}if(p){var k=(B>0?r[B-1]:r[B]).split(",");k={x:parseFloat(k[0]),y:parseFloat(k[1])};var m=(B<r.length-1?r[B+1]:r[B]).split(",");m={x:parseFloat(m[0]),y:parseFloat(m[1])};t=this._adjustLineLabelPosition(f,g,u.pointsArray[B].index,t,k,m);if(t){var c=this._showLabel(f,g,u.pointsArray[B].index,{x:t.x,y:t.y,width:0,height:0});u.labelElements.push(c)}}}}}if(b==1&&v!="none"){for(var B=0;B<u.symbolElements.length;B++){if(isNaN(u.pointsArray[B].index)){continue}this._installHandlers(u.symbolElements[B],"symbol",f,g,u.pointsArray[B].index)}}}},_adjustLineLabelPosition:function(i,g,d,h,f,e){var b=this._showLabel(i,g,d,{width:0,height:0},"","",true);if(!b){return}var c={x:h.x-b.width/2,y:0};c.y=h.y-1.5*b.height;return c},_calculateLine:function(h,v,p,o,n,f,e,z,c){var w=this.seriesGroups[h];var m;if(w.polar==true||w.spider==true){m=this._getPolarAxisCoords(h,this._plotRect)}var s="";var t=o.length;if(!z&&n.length==0){var r=v*e;t=r-p}var j=NaN;for(var u=0;u<t+1&&u<o.length;u++){if(u>0){s+=" "}var k=o[u].y;var l=o[u].x;var b=!z?k:f;var d=l;if(n&&n.length>u){b=n[u].y;d=n[u].x;if(isNaN(b)||isNaN(d)){b=k;d=l}}j=d;if(t<=o.length&&u>0&&u==t){d=o[u-1].x;b=o[u-1].y}if(c){l=a.jqx._ptrnd((l-b)*(z?e:1)+b);k=a.jqx._ptrnd(k)}else{l=a.jqx._ptrnd((l-d)*e+d);k=a.jqx._ptrnd((k-b)*e+b)}if(m){var q=this._toPolarCoord(m,this._plotRect,l,k);l=q.x;k=q.y}s+=l+","+k}return s},_buildLineCmd:function(k,o,g,s,e,m,d,r,c,j,f,b){var p=k;var l=b?d+","+g:g+","+d;var h=b?d+","+s:s+","+d;if(r&&!c&&!o){p=l+" "+k+" "+h}if(f){p=this._getBezierPoints(p)}var n=p.split(" ");if(n.length==0){return""}if(n.length==1){var q=n[0].split(",");return"M "+n[0]+" L"+(parseFloat(q[0])+1)+","+(parseFloat(q[1])+1)}var i=n[0].replace("M","");if(r&&!c){if(!o){p="M "+l+" L "+i+" "+p}else{p="M "+i+" L "+i+(f?"":(" L "+i+" "))+p}}else{if(!f){p="M "+i+" L "+i+" "+p}}if((c&&j)||o){p+=" Z"}return p},_getSerieSettings:function(h,b){var g=this.seriesGroups[h];var f=g.type.indexOf("area")!=-1;var e=g.type.indexOf("line")!=-1;var c=g.series[b];var j=c.dashStyle||g.dashStyle||"";var d=c.opacity||g.opacity;if(isNaN(d)||d<0||d>1){d=1}var i=c.lineWidth;if(isNaN(i)&&i!="auto"){i=g.lineWidth}if(i=="auto"||isNaN(i)||i<0||i>15){if(f){i=2}else{if(e){i=3}else{i=1}}}return{stroke:i,opacity:d,dashStyle:j}},_getColors:function(u,p,d,e,b){var k=this.seriesGroups[u];var o=k.series[p];var c=this._get([o.useGradientColors,k.useGradientColors,k.useGradient,true]);var l=this._getSeriesColors(u,p,d);if(!l.fillColor){l.fillColor=r;l.fillColorSelected=a.jqx.adjustColor(r,1.1);l.fillColorAlt=a.jqx.adjustColor(r,4);l.fillColorAltSelected=a.jqx.adjustColor(r,3);l.lineColor=l.symbolColor=a.jqx.adjustColor(r,0.9);l.lineColorSelected=l.symbolColorSelected=a.jqx.adjustColor(r,0.9)}var h=[[0,1.4],[100,1]];var f=[[0,1],[25,1.1],[50,1.4],[100,1]];var n=[[0,1.3],[90,1.2],[100,1]];var j=NaN;if(!isNaN(b)){j=b==2?h:f}if(c){var q={};for(var s in l){q[s]=l[s]}l=q;if(e=="verticalLinearGradient"||e=="horizontalLinearGradient"){var g=e=="verticalLinearGradient"?j||h:j||f;var m=["fillColor","fillColorSelected","fillColorAlt","fillColorAltSelected"];for(var v in m){var r=l[m[v]];if(r){l[m[v]]=this.renderer._toLinearGradient(r,e=="verticalLinearGradient",g)}}}else{if(e=="radialGradient"){var t;var j=h;if((k.type=="pie"||k.type=="donut"||k.polar)&&d!=undefined&&this._renderData[u]&&this._renderData[u].offsets[p]){t=this._renderData[u].offsets[p][d];j=n}l.fillColor=this.renderer._toRadialGradient(l.fillColor,j,t);l.fillColorSelected=this.renderer._toRadialGradient(l.fillColorSelected,j,t)}}}return l},_installHandlers:function(c,f,i,h,d){if(!this.enableEvents){return false}var j=this;var e=this.seriesGroups[i];var k=this.seriesGroups[i].series[h];var b=e.type.indexOf("line")!=-1||e.type.indexOf("area")!=-1;if(!b){this.renderer.addHandler(c,"mousemove",function(m){var l=j._selected;if(l&&l.isLineType&&l.linesUnselectMode=="click"&&!(l.group==i&&l.series==h)){return}var g=m.pageX||m.clientX||m.screenX;var o=m.pageY||m.clientY||m.screenY;var n=j.host.offset();g-=n.left;o-=n.top;if(j._mouseX==g&&j._mouseY==o){return}if(j._ttEl){if(j._ttEl.gidx==i&&j._ttEl.sidx==h&&j._ttEl.iidx==d){return}}j._startTooltipTimer(i,h,d)});this.renderer.addHandler(c,"mouseout",function(l){return;if(!isNaN(j._lastClickTs)&&(new Date()).valueOf()-j._lastClickTs<100){return}if(d!=undefined){j._cancelTooltipTimer()}if(b){return}var g=j._selected;if(g&&g.isLineType&&g.linesUnselectMode=="click"&&!(g.group==i&&g.series==h)){return}j._unselect()})}this.renderer.addHandler(c,"mouseover",function(l){var g=j._selected;if(g&&g.isLineType&&g.linesUnselectMode=="click"&&!(g.group==i&&g.series==h)){return}j._select(c,f,i,h,d,d)});this.renderer.addHandler(c,"click",function(g){clearTimeout(j._hostClickTimer);j._lastClickTs=(new Date()).valueOf();if(b&&(f!="symbol"&&f!="pointMarker")){return}if(j._isColumnType(e.type)){j._unselect()}if(isNaN(d)){return}g.stopImmediatePropagation();j._raiseItemEvent("click",e,k,d)})},_getHorizontalOffset:function(A,s,k,j){var c=this._plotRect;var h=this._getDataLen(A);if(h==0){return{index:undefined,value:k}}var p=this._calcGroupOffsets(A,this._plotRect);if(p.xoffsets.length==0){return{index:undefined,value:undefined}}var n=k;var m=j;var w=this.seriesGroups[A];var l;if(w.polar||w.spider){l=this._getPolarAxisCoords(A,c)}var e=this._getXAxis(A).flip==true;var b,o,v,f;for(var t=p.xoffsets.first;t<=p.xoffsets.last;t++){var u=p.xoffsets.data[t];var d=p.offsets[s][t].to;var q=0;if(l){var r=this._toPolarCoord(l,c,u+c.x,d);u=r.x;d=r.y;q=a.jqx._ptdist(n,m,u,d)}else{if(w.orientation=="horizontal"){u+=c.y;var z=d;d=u;u=z;q=a.jqx._ptdist(n,m,u,d)}else{u+=c.x;q=Math.abs(n-u)}}if(isNaN(b)||b>q){b=q;o=t;v=u;f=d}}return{index:o,value:p.xoffsets.data[o],polarAxisCoords:l,x:v,y:f}},onmousemove:function(l,k){if(this._mouseX==l&&this._mouseY==k){return}this._mouseX=l;this._mouseY=k;if(!this._selected){return}var B=this._selected.group;var r=this._selected.series;var w=this.seriesGroups[B];var o=w.series[r];var b=this._plotRect;if(this.renderer){b=this.renderer.getRect();b.x+=5;b.y+=5;b.width-=10;b.height-=10}if(l<b.x||l>b.x+b.width||k<b.y||k>b.y+b.height){this._hideToolTip();this._unselect();return}var e=w.orientation=="horizontal";var b=this._plotRect;if(w.type.indexOf("line")!=-1||w.type.indexOf("area")!=-1){var h=this._getHorizontalOffset(B,this._selected.series,l,k);var v=h.index;if(v==undefined){return}if(this._selected.item!=v){var q=this._linesRenderInfo[B][r].segments;var t=0;while(v>q[t].lastItemIndex){t++;if(t>=q.length){return}}var c=q[t].pathElement;var C=q[t].lastItemIndex;this._unselect(false);this._select(c,"path",B,r,v,C)}var n=this._getSymbol(this._selected.group,this._selected.series);if(n=="none"){n="circle"}var p=this._calcGroupOffsets(B,b);var d=p.offsets[this._selected.series][v].to;var u=d;if(w.type.indexOf("range")!=-1){u=p.offsets[this._selected.series][v].from}var m=e?l:k;if(!isNaN(u)&&Math.abs(m-u)<Math.abs(m-d)){k=u}else{k=d}if(isNaN(k)){return}l=h.value;if(e){var z=l;l=k;k=z+b.y}else{l+=b.x}if(h.polarAxisCoords){l=h.x;k=h.y}k=a.jqx._ptrnd(k);l=a.jqx._ptrnd(l);if(this._pointMarker&&this._pointMarker.element){this.renderer.removeElement(this._pointMarker.element);this._pointMarker.element=undefined}if(isNaN(l)||isNaN(k)){return}var j=this._getSeriesColors(B,r,v);var f=o.opacity;if(isNaN(f)||f<0||f>1){f=w.opacity}if(isNaN(f)||f<0||f>1){f=1}var A=o.symbolSizeSelected;if(isNaN(A)){A=o.symbolSize}if(isNaN(A)||A>50||A<0){A=w.symbolSize}if(isNaN(A)||A>50||A<0){A=8}if(this.showToolTips||this.enableCrosshairs){this._pointMarker={type:n,x:l,y:k,gidx:B,sidx:r,iidx:v};this._pointMarker.element=this._drawSymbol(n,l,k,j.fillColorSymbolSelected,f,j.lineColorSymbolSelected,f,1,undefined,A);this._installHandlers(this._pointMarker.element,"pointMarker",B,r,v)}this._startTooltipTimer(B,this._selected.series,v)}},_drawSymbol:function(i,l,j,c,m,k,f,g,b,o){var e;var h=o||6;var d=h/2;switch(i){case"none":return undefined;case"circle":e=this.renderer.circle(l,j,h/2);break;case"square":h=h-1;d=h/2;e=this.renderer.rect(l-d,j-d,h,h);break;case"diamond":var n="M "+(l-d)+","+(j)+" L"+(l)+","+(j-d)+" L"+(l+d)+","+(j)+" L"+(l)+","+(j+d)+" Z";e=this.renderer.path(n);break;case"triangle_up":case"triangle":var n="M "+(l-d)+","+(j+d)+" L "+(l+d)+","+(j+d)+" L "+(l)+","+(j-d)+" Z";e=this.renderer.path(n);break;case"triangle_down":var n="M "+(l-d)+","+(j-d)+" L "+(l)+","+(j+d)+" L "+(l+d)+","+(j-d)+" Z";e=this.renderer.path(n);break;case"triangle_left":var n="M "+(l-d)+","+(j)+" L "+(l+d)+","+(j+d)+" L "+(l+d)+","+(j-d)+" Z";e=this.renderer.path(n);break;case"triangle_right":var n="M "+(l-d)+","+(j-d)+" L "+(l-d)+","+(j+d)+" L "+(l+d)+","+(j)+" Z";e=this.renderer.path(n);break;default:e=this.renderer.circle(l,j,h)}this.renderer.attr(e,{fill:c,"fill-opacity":m,stroke:k,"stroke-width":g,"stroke-opacity":f,"stroke-dasharray":b||""});if(i!="circle"){this.renderer.attr(e,{r:h/2});if(i!="square"){this.renderer.attr(e,{x:l,y:j})}}return e},_getSymbol:function(f,b){var c=["circle","square","diamond","triangle_up","triangle_down","triangle_left","triangle_right"];var e=this.seriesGroups[f];var d=e.series[b];var h;if(d.symbolType!=undefined){h=d.symbolType}if(h==undefined){h=e.symbolType}if(h=="default"){return c[b%c.length]}else{if(h!=undefined){return h}}return"none"},_startTooltipTimer:function(k,j,d,i,h,b,f){this._cancelTooltipTimer();var l=this;var e=l.seriesGroups[k];var c=this.toolTipShowDelay||this.toolTipDelay;if(isNaN(c)||c>10000||c<0){c=500}if(this._ttEl||(true==this.enableCrosshairs&&false==this.showToolTips)){c=0}if(!isNaN(b)){c=b}clearTimeout(this._tttimerHide);if(isNaN(i)){i=l._mouseX}if(isNaN(h)){h=l._mouseY-3}if(c==0){l._showToolTip(i,h,k,j,d)}this._tttimer=setTimeout(function(){if(c!=0){l._showToolTip(i,h,k,j,d)}var g=l.toolTipHideDelay;if(!isNaN(f)){g=f}if(isNaN(g)){g=4000}l._tttimerHide=setTimeout(function(){l._hideToolTip();l._unselect()},g)},c)},_cancelTooltipTimer:function(){clearTimeout(this._tttimer)},_getGroupGradientType:function(c){var b=this.seriesGroups[c];if(b.type.indexOf("area")!=-1){return b.orientation=="horizontal"?"horizontalLinearGradient":"verticalLinearGradient"}else{if(this._isColumnType(b.type)||b.type.indexOf("candle")!=-1){if(b.polar){return"radialGradient"}return b.orientation=="horizontal"?"verticalLinearGradient":"horizontalLinearGradient"}else{if(b.type.indexOf("scatter")!=-1||b.type.indexOf("bubble")!=-1||this._isPieGroup(c)){return"radialGradient"}}}return undefined},_select:function(h,l,o,n,i,m){if(this._selected){if((this._selected.item!=i||this._selected.series!=n||this._selected.group!=o)){this._unselect()}else{return}}var k=this.seriesGroups[o];var p=k.series[n];if(k.enableSelection==false||p.enableSelection==false){return}var f=k.type.indexOf("line")!=-1&&k.type.indexOf("area")==-1;this._selected={element:h,type:l,group:o,series:n,item:i,iidxBase:m,isLineType:f,linesUnselectMode:p.linesUnselectMode||k.linesUnselectMode};var b=this._getColors(o,n,m||i,this._getGroupGradientType(o));var c=b.fillColorSelected;if(f){c="none"}var e=this._getSerieSettings(o,n);var d=(l=="symbol")?b.lineColorSymbolSelected:b.lineColorSelected;c=(l=="symbol")?b.fillColorSymbolSelected:c;var j=(l=="symbol")?1:e.stroke;if(this.renderer.getAttr(h,"fill")==b.fillColorAlt){c=b.fillColorAltSelected}this.renderer.attr(h,{stroke:d,fill:c,"stroke-width":j});if(k.type.indexOf("pie")!=-1||k.type.indexOf("donut")!=-1){this._applyPieSelect()}this._raiseItemEvent("mouseover",k,p,i)},_applyPieSelect:function(){var c=this;c._createAnimationGroup("animPieSlice");var e=this._selected;if(!e){return}var f=this.getItemCoord(e.group,e.series,e.item);if(!f){return}var d=this._getRenderInfo(e.group,e.series,e.item);var b={element:d,coord:f};this._enqueueAnimation("animPieSlice",undefined,undefined,300,function(i,g,j){var l=g.coord;var h=l.selectedRadiusChange*j;var k=c.renderer.pieSlicePath(l.center.x,l.center.y,l.innerRadius==0?0:(l.innerRadius+h),l.outerRadius+h,l.fromAngle,l.toAngle,l.centerOffset);c.renderer.attr(g.element.element,{d:k});c._showPieLabel(e.group,e.series,e.item,undefined,h)},b);c._startAnimation("animPieSlice")},_applyPieUnselect:function(){this._stopAnimations();var b=this._selected;if(!b){return}var d=this.getItemCoord(b.group,b.series,b.item);if(!d||!d.center){return}var c=this.renderer.pieSlicePath(d.center.x,d.center.y,d.innerRadius,d.outerRadius,d.fromAngle,d.toAngle,d.centerOffset);this.renderer.attr(b.element,{d:c});this._showPieLabel(b.group,b.series,b.item,undefined,0)},_unselect:function(){var o=this;if(o._selected){var n=o._selected.group;var m=o._selected.series;var f=o._selected.item;var k=o._selected.iidxBase;var j=o._selected.type;var i=o.seriesGroups[n];var p=i.series[m];var e=i.type.indexOf("line")!=-1&&i.type.indexOf("area")==-1;var b=o._getColors(n,m,k||f,o._getGroupGradientType(n));var c=b.fillColor;if(e){c="none"}var d=o._getSerieSettings(n,m);var l=(j=="symbol")?b.lineColorSymbol:b.lineColor;c=(j=="symbol")?b.fillColorSymbol:c;if(this.renderer.getAttr(o._selected.element,"fill")==b.fillColorAltSelected){c=b.fillColorAlt}var h=(j=="symbol")?1:d.stroke;o.renderer.attr(o._selected.element,{stroke:l,fill:c,"stroke-width":h});if(i.type.indexOf("pie")!=-1||i.type.indexOf("donut")!=-1){this._applyPieUnselect()}o._selected=undefined;if(!isNaN(f)){o._raiseItemEvent("mouseout",i,p,f)}}if(o._pointMarker){if(o._pointMarker.element){o.renderer.removeElement(o._pointMarker.element);o._pointMarker.element=undefined}o._pointMarker=undefined;o._hideCrosshairs()}},_raiseItemEvent:function(f,g,e,c){var d=e[f]||g[f];var h=0;for(;h<this.seriesGroups.length;h++){if(this.seriesGroups[h]==g){break}}if(h==this.seriesGroups.length){return}var b={event:f,seriesGroup:g,serie:e,elementIndex:c,elementValue:this._getDataValue(c,e.dataField,h)};if(d&&a.isFunction(d)){d(b)}this._raiseEvent(f,b)},_raiseEvent:function(d,c){var e=new a.Event(d);e.owner=this;c.event=d;e.args=c;var b=this.host.trigger(e);return b},_calcInterval:function(d,j,h){var m=Math.abs(j-d);var k=m/h;var f=[1,2,3,4,5,10,15,20,25,50,100];var b=[0.5,0.25,0.125,0.1];var c=0.1;var g=f;if(k<1){g=b;c=10}var l=0;do{l=0;if(k>=1){c*=10}else{c/=10}for(var e=1;e<g.length;e++){if(Math.abs(g[l]*c-k)>Math.abs(g[e]*c-k)){l=e}else{break}}}while(l==g.length-1);return g[l]*c},_renderDataClone:function(){if(!this._renderData||this._isToggleRefresh){return}var d=this._elementRenderInfo=[];if(this._isSelectorRefresh){return}for(var h=0;h<this._renderData.length;h++){var c=this._getXAxis(h).dataField;while(d.length<=h){d.push({})}var b=d[h];var f=this._renderData[h];if(!f.offsets){continue}if(f.valueAxis){b.valueAxis={itemOffsets:{}};for(var j in f.valueAxis.itemOffsets){b.valueAxis.itemOffsets[j]=f.valueAxis.itemOffsets[j]}}if(f.xAxis){b.xAxis={itemOffsets:{}};for(var j in f.xAxis.itemOffsets){b.xAxis.itemOffsets[j]=f.xAxis.itemOffsets[j]}}b.series=[];var g=b.series;var l=this._isPieGroup(h);for(var m=0;m<f.offsets.length;m++){g.push({});for(var e=0;e<f.offsets[m].length;e++){if(!l){g[m][f.xoffsets.xvalues[e]]={value:f.offsets[m][e].value,valueRadius:f.offsets[m][e].valueRadius,xoffset:f.xoffsets.data[e],from:f.offsets[m][e].from,to:f.offsets[m][e].to}}else{var k=f.offsets[m][e];g[m][k.displayValue]={value:k.value,x:k.x,y:k.y,fromAngle:k.fromAngle,toAngle:k.toAngle}}}}}},getPolarDataPointOffset:function(d,c,f){var e=this._renderData[f];if(!e){return{x:NaN,y:NaN}}var h=this.getValueAxisDataPointOffset(c,f);var b=this.getXAxisDataPointOffset(d,f);var g=this._toPolarCoord(e.polarCoords,e.xAxis.rect,b,h);return{x:g.x,y:g.y}},_getDataPointOffsetDiff:function(j,i,b,f,g,d,h){var e=this._getDataPointOffset(j,b,f,g,d,h);var c=this._getDataPointOffset(i,b,f,g,d,h);return Math.abs(e-c)},_getXAxisRenderData:function(d){if(d>=this._renderData.length){return}var e=this.seriesGroups[d];var c=this._renderData[d].xAxis;if(!c){return}if(e.xAxis==undefined){for(var b=0;b<=d;b++){if(this.seriesGroups[b].xAxis==undefined){break}}c=this._renderData[b].xAxis}return c},getXAxisDataPointOffset:function(j,l){var k=this.seriesGroups[l];if(isNaN(j)){return NaN}renderData=this._getXAxisRenderData(l);if(!renderData){return NaN}var f=renderData.data.axisStats;var i=f.min.valueOf();var b=f.max.valueOf();var g=b-i;if(g==0){g=1}if(j.valueOf()>b||j.valueOf()<i){return NaN}var c=this._getXAxis(l);var d=k.orientation=="horizontal"?"height":"width";var n=k.orientation=="horizontal"?"y":"x";var h=(j.valueOf()-i)/g;var m=renderData.rect[d]-renderData.data.padding.left-renderData.data.padding.right;if(k.polar||k.spider){var e=this._renderData[l].polarCoords;if(e.isClosedCircle){m=renderData.data.axisSize}}return this._plotRect[n]+renderData.data.padding.left+m*(c.flip?(1-h):h)},getValueAxisDataPointOffset:function(g,h){var j=this._getValueAxis(h);if(!j){return NaN}var i=this._renderData[h];if(!i){return NaN}var f=j.flip==true;var d=i.logBase;var e=i.scale;var b=i.gbase;var c=i.baseOffset;return this._getDataPointOffset(g,b,d,e,c,f)},_getDataPointOffset:function(f,c,d,h,e,b){var g;if(isNaN(f)){f=c}if(!isNaN(d)){g=(a.jqx.log(f,d)-a.jqx.log(c,d))*h}else{g=(f-c)*h}if(this._isVML){g=Math.round(g)}if(b){g=e+g}else{g=e-g}return g},_calcGroupOffsets:function(l,L){var z=this.seriesGroups[l];while(this._renderData.length<l+1){this._renderData.push({})}if(this._renderData[l]!=null&&this._renderData[l].offsets!=undefined){return this._renderData[l]}if(this._isPieGroup(l)){return this._calcPieSeriesGroupOffsets(l,L)}var o=this._getValueAxis(l);if(!o||!z.series||z.series.length==0){return this._renderData[l]}var A=o.flip==true;var O=o.logarithmicScale==true;var N=o.logarithmicScaleBase||10;var T=[];var F=z.type.indexOf("stacked")!=-1;var d=F&&z.type.indexOf("100")!=-1;var K=z.type.indexOf("range")!=-1;var U=this._isColumnType(z.type);var Z=z.type.indexOf("waterfall")!=-1;var s=this._getDataLen(l);var r=z.baselineValue||o.baselineValue||0;if(d){r=0}var ag=this._stats.seriesGroups[l];if(!ag||!ag.isValid){return}var aj=ag.hasStackValueReversal;if(aj){r=0}if(Z&&F){if(aj){return}else{r=ag.base}}if(r>ag.max){r=ag.max}if(r<ag.min){r=ag.min}var q=(d||O)?ag.maxRange:ag.max-ag.min;var an=ag.min;var C=ag.max;var M=L.height/(O?ag.intervals:q);var ai=0;if(d){if(an*C<0){q/=2;ai=-(q+r)*M}else{ai=-r*M}}else{ai=-(r-an)*M}if(A){ai=L.y-ai}else{ai+=L.y+L.height}var ah=[];var ad=[];var S=[];var al,H;if(O){al=a.jqx.log(C,N)-a.jqx.log(r,N);if(F){al=ag.intervals;r=d?0:an}H=ag.intervals-al;if(!A){ai=L.y+al/ag.intervals*L.height}}ai=a.jqx._ptrnd(ai);var c=(an*C<0)?L.height/2:L.height;var m=[];var W=[];var ao=F&&(U||O);var am=[];T=new Array(z.series.length);for(var ab=0;ab<z.series.length;ab++){T[ab]=new Array(s)}for(var ac=0;ac<s;ac++){if(!Z&&F){W=[]}for(var ab=0;ab<z.series.length;ab++){if(!F&&O){m=[]}var D=z.series[ab];var E=D.dataField;var aq=D.dataFieldFrom;var P=D.dataFieldTo;var Y=D.radiusDataField||D.sizeDataField;T[ab][ac]={};var g=this._isSerieVisible(l,ab);if(z.type.indexOf("candle")!=-1||z.type.indexOf("ohlc")!=-1){var b=["Open","Close","High","Low"];for(var ak in b){var p="dataField"+b[ak];if(D[p]){T[ab][ac][b[ak]]=this._getDataPointOffset(this._getDataValueAsNumber(ac,D[p],l),r,O?N:NaN,M,ai,A)}}continue}if(F){while(W.length<=ac){W.push(0)}}var ap=NaN;if(K){ap=this._getDataValueAsNumber(ac,aq,l);if(isNaN(ap)){ap=r}}var J=NaN;if(K){J=this._getDataValueAsNumber(ac,P,l)}else{J=this._getDataValueAsNumber(ac,E,l)}var e=this._getDataValueAsNumber(ac,Y,l);if(F){W[ac]+=g?J:0}if(!g){J=NaN}if(isNaN(J)||(O&&J<=0)){T[ab][ac]={from:undefined,to:undefined};continue}var I;if(F){if(ao){I=(J>=r)?ah:ad}else{J=W[ac]}}var af=M*(J-r);if(K){af=M*(J-ap)}if(F&&ao){if(!am[ac]){am[ac]=true;af=M*(J-r)}else{af=M*J}}if(O){while(m.length<=ac){m.push({p:{value:0,height:0},n:{value:0,height:0}})}var B=(K||K)?ap:r;var aa=J>B?m[ac].p:m[ac].n;aa.value+=J;if(d){J=aa.value/(ag.psums[ac]+ag.nsums[ac])*100;af=(a.jqx.log(J,N)-ag.minPow)*M}else{af=a.jqx.log(aa.value,N)-a.jqx.log(B,N);af*=M}af-=aa.height;aa.height+=af}var R=ai;if(K){var t=0;if(O){t=(a.jqx.log(ap,N)-a.jqx.log(r,N))*M}else{t=(ap-r)*M}R+=A?t:-t}if(F){if(d&&!O){var w=(ag.psums[ac]-ag.nsums[ac]);if(J>r){af=(ag.psums[ac]/w)*c;if(ag.psums[ac]!=0){af*=J/ag.psums[ac]}}else{af=(ag.nsums[ac]/w)*c;if(ag.nsums[ac]!=0){af*=J/ag.nsums[ac]}}}if(ao){if(isNaN(I[ac])){I[ac]=R}R=I[ac]}}if(isNaN(S[ac])){S[ac]=0}var ae=S[ac];af=Math.abs(af);var V=af;if(af>=1){h_new=this._isVML?Math.round(af):a.jqx._ptrnd(af)-1;if(Math.abs(af-h_new)>0.5){af=Math.round(af)}else{af=h_new}}ae+=af-V;if(!F){ae=0}if(Math.abs(ae)>0.5){if(ae>0){af-=1;ae-=1}else{af+=1;ae+=1}}S[ac]=ae;if(ab==z.series.length-1&&d){var v=0;for(var X=0;X<ab;X++){v+=Math.abs(T[X][ac].to-T[X][ac].from)}v+=af;if(v<c){if(af>0.5){af=a.jqx._ptrnd(af+c-v)}else{var X=ab-1;while(X>=0){var G=Math.abs(T[X][ac].to-T[X][ac].from);if(G>1){if(T[X][ac].from>T[X][ac].to){T[X][ac].from+=c-v}break}X--}}}}if(A){af*=-1}var Q=J<r;if(K){Q=ap>J}var n=isNaN(ap)?J:{from:ap,to:J};if(Q){if(ao){I[ac]+=af}T[ab][ac]={from:R,to:R+af,value:n,valueRadius:e}}else{if(ao){I[ac]-=af}T[ab][ac]={from:R,to:R-af,value:n,valueRadius:e}}}}var u=this._renderData[l];u.baseOffset=ai;u.gbase=r;u.logBase=O?N:NaN;u.scale=M;u.offsets=!Z?T:this._applyWaterfall(T,s,l,ai,r,O?N:NaN,M,A,F);u.xoffsets=this._calculateXOffsets(l,L.width);return this._renderData[l]},_isPercent:function(b){return(typeof(b)==="string"&&b.length>0&&b.indexOf("%")==b.length-1)},_calcPieSeriesGroupOffsets:function(e,b){var z=this;var m=this._getDataLen(e);var n=this.seriesGroups[e];var A=this._renderData[e]={};var G=A.offsets=[];for(var C=0;C<n.series.length;C++){var t=n.series[C];var E=this._get([t.minAngle,t.startAngle]);if(isNaN(E)||E<0||E>360){E=0}var M=this._get([t.maxAngle,t.endAngle]);if(isNaN(M)||M<0||M>360){M=360}var f=M-E;var o=t.initialAngle||0;if(o<E){o=E}if(o>M){o=M}var c=t.centerOffset||0;var K=a.jqx.getNum([t.offsetX,n.offsetX,b.width/2]);var J=a.jqx.getNum([t.offsetY,n.offsetY,b.height/2]);var w=Math.min(b.width,b.height)/2;var v=o;var g=t.radius;if(z._isPercent(g)){g=parseFloat(g)/100*w}if(isNaN(g)){g=w*0.4}var l=t.innerRadius;if(z._isPercent(l)){l=parseFloat(l)/100*w}if(isNaN(l)||l>=g){l=0}var d=t.selectedRadiusChange;if(z._isPercent(d)){d=parseFloat(d)/100*(g-l)}if(isNaN(d)){d=0.1*(g-l)}G.push([]);var h=0;var j=0;for(var F=0;F<m;F++){var L=this._getDataValueAsNumber(F,t.dataField,e);if(isNaN(L)){continue}if(!this._isSerieVisible(e,C,F)&&t.hiddenPointsDisplay!=true){continue}if(L>0){h+=L}else{j+=L}}var r=h-j;if(r==0){r=1}for(var F=0;F<m;F++){var L=this._getDataValueAsNumber(F,t.dataField,e);if(isNaN(L)){G[C].push({});continue}var D=t.displayText||t.displayField;var k=this._getDataValue(F,D,e);if(k==undefined){k=F}var I=0;var B=this._isSerieVisible(e,C,F);if(B||t.hiddenPointsDisplay==true){I=Math.abs(L)/r*f}var q=b.x+K;var p=b.y+J;var H=c;if(a.isFunction(c)){H=c({seriesIndex:C,seriesGroupIndex:e,itemIndex:F})}if(isNaN(H)){H=0}var u={key:e+"_"+C+"_"+F,value:L,displayValue:k,x:q,y:p,fromAngle:v,toAngle:v+I,centerOffset:H,innerRadius:l,outerRadius:g,selectedRadiusChange:d,visible:B};G[C].push(u);v+=I}}return A},_isPointSeriesOnly:function(){for(var b=0;b<this.seriesGroups.length;b++){var c=this.seriesGroups[b];if(c.type.indexOf("line")==-1&&c.type.indexOf("area")==-1&&c.type.indexOf("scatter")==-1&&c.type.indexOf("bubble")==-1){return false}}return true},_hasColumnSeries:function(){var d=["column","ohlc","candlestick","waterfall"];for(var c=0;c<this.seriesGroups.length;c++){var e=this.seriesGroups[c];for(var b in d){if(e.type.indexOf(d[b])!=-1){return true}}}return false},_alignValuesWithTicks:function(f){var b=this._isPointSeriesOnly();var c=this.seriesGroups[f];var e=this._getXAxis(f);var d=e.valuesOnTicks==undefined?b:e.valuesOnTicks!=false;if(f==undefined){return d}if(c.valuesOnTicks==undefined){return d}return c.valuesOnTicks},_getYearsDiff:function(c,b){return b.getFullYear()-c.getFullYear()},_getMonthsDiff:function(c,b){return 12*(b.getFullYear()-c.getFullYear())+b.getMonth()-c.getMonth()},_getDateDiff:function(f,e,d,b){var c=0;if(d!="year"&&d!="month"){c=e.valueOf()-f.valueOf()}switch(d){case"year":c=this._getYearsDiff(f,e);break;case"month":c=this._getMonthsDiff(f,e);break;case"day":c/=(24*3600*1000);break;case"hour":c/=(3600*1000);break;case"minute":c/=(60*1000);break;case"second":c/=(1000);break;case"millisecond":break}if(d!="year"&&d!="month"&&b!=false){c=a.jqx._rnd(c,1,true)}return c},_getBestDTUnit:function(k,p,q,d,g){var f="day";var m=p.valueOf()-k.valueOf();if(m<1000){f="second"}else{if(m<3600000){f="minute"}else{if(m<86400000){f="hour"}else{if(m<2592000000){f="day"}else{if(m<31104000000){f="month"}else{f="year"}}}}}var o=[{key:"year",cnt:m/(1000*60*60*24*365)},{key:"month",cnt:m/(1000*60*60*24*30)},{key:"day",cnt:m/(1000*60*60*24)},{key:"hour",cnt:m/(1000*60*60)},{key:"minute",cnt:m/(1000*60)},{key:"second",cnt:m/1000},{key:"millisecond",cnt:m}];var l=-1;for(var h=0;h<o.length;h++){if(o[h].key==f){l=h;break}}var b=-1,n=-1;for(;l<o.length;l++){if(o[l].cnt/100>d){break}var c=this._estAxisInterval(k,p,q,d,o[l].key,g);var e=this._getDTIntCnt(k,p,c,o[l].key);if(b==-1||b<e){b=e;n=l}}f=o[n].key;return f},_getXAxisStats:function(f,m,D){var k=this._getDataLen(f);var b=m.type=="date"||m.type=="time";if(b&&!this._autoDateFormats){if(!this._autoDateFormats){this._autoDateFormats=[]}var o=this._testXAxisDateFormat();if(o){this._autoDateFormats.push(o)}}var n=b?this._castAsDate(m.minValue,m.dateFormat):this._castAsNumber(m.minValue);var q=b?this._castAsDate(m.maxValue,m.dateFormat):this._castAsNumber(m.maxValue);if(this._selectorRange&&this._selectorRange[f]){var g=this._selectorRange[f].min;if(!isNaN(g)){n=b?this._castAsDate(g,m.dateFormat):this._castAsNumber(g)}var h=this._selectorRange[f].max;if(!isNaN(h)){q=b?this._castAsDate(h,m.dateFormat):this._castAsNumber(h)}}var w=n,C=q;var e,p;var c=m.type==undefined||m.type=="auto";var j=(c||m.type=="basic");var z=0,d=0;for(var B=0;B<k&&m.dataField;B++){var v=this._getDataValue(B,m.dataField,f);v=b?this._castAsDate(v,m.dateFormat):this._castAsNumber(v);if(isNaN(v)){continue}if(b){z++}else{d++}if(isNaN(e)||v<e){e=v}if(isNaN(p)||v>=p){p=v}}if(c&&((!b&&d==k)||(b&&z==k))){j=false}if(j){e=0;p=Math.max(0,k-1)}if(isNaN(w)){w=e}if(isNaN(C)){C=p}if(b){if(!this._isDate(w)){w=this._isDate(C)?C:new Date()}if(!this._isDate(C)){C=this._isDate(w)?w:new Date()}}else{if(isNaN(w)){w=0}if(isNaN(C)){C=j?Math.max(0,k-1):w}}if(e==undefined){e=w}if(p==undefined){p=C}var r=m.rangeSelector;if(r){var s=r.minValue||w;if(s&&b){s=this._castAsDate(s,r.dateFormat||m.dateFormat)}var u=r.maxValue||C;if(u&&b){u=this._castAsDate(u,r.dateFormat||m.rangeSelector)}if(w<s){w=s}if(C<s){C=u}if(w>u){w=s}if(C>u){C=u}}var E=m.unitInterval;var t,F;if(b){t=m.baseUnit;if(!t){t=this._getBestDTUnit(w,C,f,D)}F=t=="hour"||t=="minute"||t=="second"||t=="millisecond"}var E=m.unitInterval;if(isNaN(E)||E<=0){E=this._estAxisInterval(w,C,f,D,t)}var A={min:w,max:C};var l=this.seriesGroups[f];if(!b&&(l.polar||l.spider)){w=a.jqx._rnd(w,E,false);C=a.jqx._rnd(C,E,true)}return{min:w,max:C,dsRange:{min:e,max:p},filterRange:A,useIndeces:j,isDateTime:b,isTimeUnit:F,dateTimeUnit:t,interval:E}},_getDefaultDTFormatFn:function(d){var b=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var c;if(d=="year"||d=="month"||d=="day"){c=function(e){return e.getDate()+"-"+b[e.getMonth()]+"-"+e.getFullYear()}}else{c=function(e){return e.getDate()+"-"+b[e.getMonth()]+"-"+e.getFullYear()+"<br>"+e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()}}return c},_getDTIntCnt:function(f,c,d,i){var e=0;var g=new Date(f);var h=new Date(c);if(d<=0){return 1}while(g.valueOf()<h.valueOf()){if(i=="millisecond"){g.setMilliseconds(g.getMilliseconds()+d)}else{if(i=="second"){g.setSeconds(g.getSeconds()+d)}else{if(i=="minute"){g.setMinutes(g.getMinutes()+d)}else{if(i=="hour"){var b=g.valueOf();g.setHours(g.getHours()+d);if(b===g.valueOf()){g.setHours(g.getHours()+d+1)}}else{if(i=="day"){g.setDate(g.getDate()+d)}else{if(i=="month"){g.setMonth(g.getMonth()+d)}else{if(i=="year"){g.setFullYear(g.getFullYear()+d)}}}}}}}e++}return e},_estAxisInterval:function(e,h,m,b,j,c){if(isNaN(e)||isNaN(h)){return NaN}var d=[1,2,5,10,15,20,50,100,200,500];var g=0;var f=b/((!isNaN(c)&&c>0)?c:50);if(this._renderData&&this._renderData.length>m&&this._renderData[m].xAxis&&!isNaN(this._renderData[m].xAxis.avgWidth)){var o=Math.max(1,this._renderData[m].xAxis.avgWidth);if(o!=0&&isNaN(c)){f=0.9*b/o}}if(f<=1){return Math.abs(h-e)}var n=0;while(true){var l=g>=d.length?Math.pow(10,3+g-d.length):d[g];if(this._isDate(e)&&this._isDate(h)){n=this._getDTIntCnt(e,h,l,j)}else{n=(h-e)/l}if(n<=f){break}g++}var k=this.seriesGroups[m];if(k.spider||k.polar){if(2*l>h-e){l=h-e}}return l},_getPaddingSize:function(l,e,f,c,n,g,o){var h=l.min;var j=l.max;var b=l.interval;var d=l.dateTimeUnit;if(n){var k=(c/Math.max(1,j-h+b))*b;if(g){return{left:0,right:k}}else{if(f){return{left:0,right:0}}return{left:k/2,right:k/2}}}if(f&&!o){return{left:0,right:0}}if(this._isDate(h)&&this._isDate(j)){var m=this._getDTIntCnt(h,j,Math.min(b,j-h),d);var i=c/Math.max(2,m);return{left:i/2,right:i/2}}var m=Math.max(1,j-h);if(m==1){sz=c/4;return{left:sz,right:sz}}var i=c/(m+1);return{left:i/2,right:i/2}},_calculateXOffsets:function(e,E){var D=this.seriesGroups[e];var n=this._getXAxis(e);var v=[];var l=[];var m=this._getDataLen(e);var d=this._getXAxisStats(e,n,E);var u=d.min;var B=d.max;var b=d.isDateTime;var F=d.isTimeUnit;var C=this._hasColumnSeries();var c=D.polar||D.spider;var w=this._get([D.startAngle,D.minAngle,0]);var s=this._get([D.endAngle,D.maxAngle,360]);var p=c&&!(Math.abs(Math.abs(s-w)-360)>0.0001);var k=this._alignValuesWithTicks(e);var r=this._getPaddingSize(d,n,k,E,c,p,C);var H=B-u;var A=d.filterRange;if(H==0){H=1}var G=E-r.left-r.right;if(c&&k){r.left=r.right=0}var h=-1,o=-1;for(var z=0;z<m;z++){var t=(n.dataField===undefined)?z:this._getDataValue(z,n.dataField,e);if(d.useIndeces){if(z<A.min||z>A.max){v.push(NaN);l.push(undefined);continue}v.push(a.jqx._ptrnd(r.left+(z-u)/H*G));l.push(t);if(h==-1){h=z}if(o==-1||o<z){o=z}continue}t=b?this._castAsDate(t,n.dateFormat):this._castAsNumber(t);if(isNaN(t)||t<A.min||t>A.max){v.push(NaN);l.push(undefined);continue}var q=0;if(!b||(b&&F)){diffFromMin=t-u;q=(t-u)*G/H}else{q=(t.valueOf()-u.valueOf())/(B.valueOf()-u.valueOf())*G}q=a.jqx._ptrnd(r.left+q);v.push(q);l.push(t);if(h==-1){h=z}if(o==-1||o<z){o=z}}if(n.flip==true){for(var z=0;z<v.length;z++){if(!isNaN(v[z])){v[z]=E-v[z]}}}if(F||b){H=this._getDateDiff(u,B,n.baseUnit);H=a.jqx._rnd(H,1,false)}var j=Math.max(1,H);var f=G/j;if(h==o&&j==1){v[h]=r.left+G/2}if(this.enableSampling&&v.length>this.samplingThreshold){this._sampleXOffsets(E,v,l,h,o)}return{axisStats:d,data:v,xvalues:l,first:h,last:o,length:o==-1?0:o-h+1,itemWidth:f,intervalWidth:f*d.interval,rangeLength:H,useIndeces:d.useIndeces,padding:r,axisSize:G}},_sampleXOffsets:function(h,d,b,g,e){var e=NaN;for(var c=0;c<d.length;c++){var f=Math.round(d[c]);if(isNaN(f)){continue}if(!isNaN(e)&&Math.abs(d[e]-f)<1){continue}e=c}},_getXAxis:function(b){if(b==undefined||this.seriesGroups.length<=b){return this.categoryAxis||this.xAxis}return this.seriesGroups[b].categoryAxis||this.seriesGroups[b].xAxis||this.categoryAxis||this.xAxis},_isGreyScale:function(e,b){var d=this.seriesGroups[e];var c=d.series[b];if(c.greyScale==true){return true}else{if(c.greyScale==false){return false}}if(d.greyScale==true){return true}else{if(d.greyScale==false){return false}}return this.greyScale==true},_getSeriesColors:function(f,c,e){var b=this._getSeriesColorsInternal(f,c,e);if(this._isGreyScale(f,c)){for(var d in b){b[d]=a.jqx.toGreyScale(b[d])}}return b},_getColorFromScheme:function(o,l,b){var d="#000000";var n=this.seriesGroups[o];var g=n.series[l];if(this._isPieGroup(o)){var c=this._getDataLen(o);d=this._getItemColorFromScheme(g.colorScheme||n.colorScheme||this.colorScheme,l*c+b,o,l)}else{var m=0;for(var f=0;f<=o;f++){for(var e in this.seriesGroups[f].series){if(f==o&&e==l){break}else{m++}}}var k=this.colorScheme;if(n.colorScheme){k=n.colorScheme;sidex=seriesIndex}if(k==undefined||k==""){k=this.colorSchemes[0].name}if(!k){return d}for(var f=0;f<this.colorSchemes.length;f++){var h=this.colorSchemes[f];if(h.name==k){while(m>h.colors.length){m-=h.colors.length;if(++f>=this.colorSchemes.length){f=0}h=this.colorSchemes[f]}d=h.colors[m%h.colors.length]}}}return d},_createColorsCache:function(){this._colorsCache={get:function(b){if(this._store[b]){return this._store[b]}},set:function(c,b){if(this._size<10000){this._store[c]=b;this._size++}},clear:function(){this._store={};this._size=0},_size:0,_store:{}}},_getSeriesColorsInternal:function(m,d,b){var f=this.seriesGroups[m];var o=f.series[d];if(!a.isFunction(o.colorFunction)&&f.type!="pie"&&f.type!="donut"){b=NaN}var h=m+"_"+d+"_"+(isNaN(b)?"NaN":b);if(this._colorsCache.get(h)){return this._colorsCache.get(h)}var c={lineColor:"#222222",lineColorSelected:"#151515",lineColorSymbol:"#222222",lineColorSymbolSelected:"#151515",fillColor:"#222222",fillColorSelected:"#333333",fillColorSymbol:"#222222",fillColorSymbolSelected:"#333333",fillColorAlt:"#222222",fillColorAltSelected:"#333333"};var i;if(a.isFunction(o.colorFunction)){var j=!isNaN(b)?this._getDataValue(b,o.dataField,m):NaN;if(f.type.indexOf("range")!=-1&&!isNaN(b)){var e=this._getDataValue(b,o.dataFieldFrom,m);var l=this._getDataValue(b,o.dataFieldTo,m);j={from:e,to:l}}i=o.colorFunction(j,b,o,f);if(typeof(i)=="object"){for(var k in i){c[k]=i[k]}}else{c.fillColor=i}}else{for(var k in c){if(o[k]){c[k]=o[k]}}if(!o.fillColor&&!o.color){c.fillColor=this._getColorFromScheme(m,d,b)}else{o.fillColor=o.fillColor||o.color}}var n={fillColor:{baseColor:"fillColor",adjust:1},fillColorSelected:{baseColor:"fillColor",adjust:1.1},fillColorSymbol:{baseColor:"fillColor",adjust:1},fillColorSymbolSelected:{baseColor:"fillColorSymbol",adjust:2},fillColorAlt:{baseColor:"fillColor",adjust:4},fillColorAltSelected:{baseColor:"fillColor",adjust:3},lineColor:{baseColor:"fillColor",adjust:0.95},lineColorSelected:{baseColor:"lineColor",adjust:0.95},lineColorSymbol:{baseColor:"lineColor",adjust:1},lineColorSymbolSelected:{baseColor:"lineColorSelected",adjust:1}};for(var k in c){if(typeof(i)!="object"||!i[k]){if(o[k]){c[k]=o[k]}}}for(var k in c){if(typeof(i)!="object"||!i[k]){if(!o[k]){c[k]=a.jqx.adjustColor(c[n[k].baseColor],n[k].adjust)}}}this._colorsCache.set(h,c);return c},_getItemColorFromScheme:function(d,f,k,h){if(d==undefined||d==""){d=this.colorSchemes[0].name}for(var g=0;g<this.colorSchemes.length;g++){if(d==this.colorSchemes[g].name){break}}var e=0;while(e<=f){if(g==this.colorSchemes.length){g=0}var b=this.colorSchemes[g].colors.length;if(e+b<=f){e+=b;g++}else{var c=this.colorSchemes[g].colors[f-e];if(this._isGreyScale(k,h)&&c.indexOf("#")==0){c=a.jqx.toGreyScale(c)}return c}}},getColorScheme:function(b){for(var c=0;c<this.colorSchemes.length;c++){if(this.colorSchemes[c].name==b){return this.colorSchemes[c].colors}}return undefined},addColorScheme:function(c,b){for(var d=0;d<this.colorSchemes.length;d++){if(this.colorSchemes[d].name==c){this.colorSchemes[d].colors=b;return}}this.colorSchemes.push({name:c,colors:b})},removeColorScheme:function(b){for(var c=0;c<this.colorSchemes.length;c++){if(this.colorSchemes[c].name==b){this.colorSchemes.splice(c,1);break}}},colorSchemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],_formatValue:function(g,i,c,f,b,d){if(g==undefined){return""}if(this._isObject(g)&&!this._isDate(g)&&!c){return""}if(c){if(!a.isFunction(c)){return g.toString()}try{return c(g,d,b,f)}catch(h){return h.message}}if(this._isNumber(g)){return this._formatNumber(g,i)}if(this._isDate(g)){return this._formatDate(g,i)}if(i){return(i.prefix||"")+g.toString()+(i.sufix||"")}return g.toString()},_getFormattedValue:function(f,h,A,p,d,l){var w=this.seriesGroups[f];var n=w.series[h];var m="";var j=p,k=d;if(!k){k=n.formatFunction||w.formatFunction}if(!j){j=n.formatSettings||w.formatSettings}if(!n.formatFunction&&n.formatSettings){k=undefined}var o={},t=0;for(var b in n){if(b.indexOf("dataField")==0){o[b.substring(9).toLowerCase()]=this._getDataValue(A,n[b],f);t++}}if(t==0){o=this._getDataValue(A,undefined,f)}if(w.type.indexOf("waterfall")!=-1&&this._isSummary(f,A)){o=this._renderData[f].offsets[h][A].value;t=0}if(k&&a.isFunction(k)){try{return k(t==1?o[""]:o,A,n,w)}catch(z){return z.message}}if(t==1&&this._isPieGroup(f)){return this._formatValue(o[""],j,k,f,h,A)}if(t>0){var u=0;for(var b in o){if(u>0&&m!=""){m+="<br>"}var r="dataField"+(b.length>0?b.substring(0,1).toUpperCase()+b.substring(1):"");var q="displayText"+(b.length>0?b.substring(0,1).toUpperCase()+b.substring(1):"");var v=n[q]||n[r];var c=o[b];if(undefined!=c){c=this._formatValue(c,j,k,f,h,A)}else{continue}if(l===true){m+=c}else{m+=v+": "+c}u++}}else{if(undefined!=o){m=this._formatValue(o,j,k,f,h,A)}}return m||""},_isNumberAsString:function(d){if(typeof(d)!="string"){return false}d=a.trim(d);for(var b=0;b<d.length;b++){var c=d.charAt(b);if((c>="0"&&c<="9")||c==","||c=="."){continue}if(c=="-"&&b==0){continue}if((c=="("&&b==0)||(c==")"&&b==d.length-1)){continue}return false}return true},_castAsDate:function(f,c){if(f instanceof Date&&!isNaN(f)){return f}if(typeof(f)=="string"){var b;if(c){b=a.jqx.dataFormat.parsedate(f,c);if(this._isDate(b)){return b}}if(this._autoDateFormats){for(var e=0;e<this._autoDateFormats.length;e++){b=a.jqx.dataFormat.parsedate(f,this._autoDateFormats[e]);if(this._isDate(b)){return b}}}var d=this._detectDateFormat(f);if(d){b=a.jqx.dataFormat.parsedate(f,d);if(this._isDate(b)){this._autoDateFormats.push(d);return b}}b=new Date(f);if(this._isDate(b)){if(f.indexOf(":")==-1){b.setHours(0,0,0,0)}}return b}return undefined},_castAsNumber:function(c){if(c instanceof Date&&!isNaN(c)){return c.valueOf()}if(typeof(c)=="string"){if(this._isNumber(c)){c=parseFloat(c)}else{if(!/[a-zA-Z]/.test(c)){var b=new Date(c);if(b!=undefined){c=b.valueOf()}}}}return c},_isNumber:function(b){if(typeof(b)=="string"){if(this._isNumberAsString(b)){b=parseFloat(b)}}return typeof b==="number"&&isFinite(b)},_isDate:function(b){return b instanceof Date&&!isNaN(b.getDate())},_isBoolean:function(b){return typeof b==="boolean"},_isObject:function(b){return(b&&(typeof b==="object"||a.isFunction(b)))||false},_formatDate:function(d,c){var b=d.toString();if(c){if(c.dateFormat){b=a.jqx.dataFormat.formatDate(d,c.dateFormat)}b=(c.prefix||"")+b+(c.sufix||"")}return b},_formatNumber:function(n,e){if(!this._isNumber(n)){return n}e=e||{};var q=".";var o="";var r=this;if(r.localization){q=r.localization.decimalSeparator||r.localization.decimalseparator||q;o=r.localization.thousandsSeparator||r.localization.thousandsseparator||o}if(e.decimalSeparator){q=e.decimalSeparator}if(e.thousandsSeparator){o=e.thousandsSeparator}var m=e.prefix||"";var p=e.sufix||"";var h=e.decimalPlaces;if(isNaN(h)){h=this._getDecimalPlaces([n],undefined,3)}var l=e.negativeWithBrackets||false;var g=(n<0);if(g&&l){n*=-1}var d=n.toString();var b;var k=Math.pow(10,h);d=(Math.round(n*k)/k).toString();if(isNaN(d)){d=""}b=d.lastIndexOf(".");if(h>0){if(b<0){d+=q;b=d.length-1}else{if(q!=="."){d=d.replace(".",q)}}while((d.length-1-b)<h){d+="0"}}b=d.lastIndexOf(q);b=(b>-1)?b:d.length;var f=d.substring(b);var c=0;for(var j=b;j>0;j--,c++){if((c%3===0)&&(j!==b)&&(!g||(j>1)||(g&&l))){f=o+f}f=d.charAt(j-1)+f}d=f;if(g&&l){d="("+d+")"}return m+d+p},_defaultNumberFormat:{prefix:"",sufix:"",decimalSeparator:".",thousandsSeparator:",",decimalPlaces:2,negativeWithBrackets:false},_calculateControlPoints:function(g,f){var e=g[f],m=g[f+1],d=g[f+2],j=g[f+3],c=g[f+4],i=g[f+5];var l=0.4;var o=Math.sqrt(Math.pow(d-e,2)+Math.pow(j-m,2));var b=Math.sqrt(Math.pow(c-d,2)+Math.pow(i-j,2));var h=(o+b);if(h==0){h=1}var n=l*o/h;var k=l-n;return[d+n*(e-c),j+n*(m-i),d-k*(e-c),j-k*(m-i)]},_getBezierPoints:function(d){var c="";var h=[],e=[];var g=d.split(" ");for(var f=0;f<g.length;f++){var j=g[f].split(",");h.push(parseFloat(j[0]));h.push(parseFloat(j[1]));if(isNaN(h[h.length-1])||isNaN(h[h.length-2])){continue}}var b=h.length;if(b<=1){return""}else{if(b==2){c="M"+a.jqx._ptrnd(h[0])+","+a.jqx._ptrnd(h[1])+" L"+a.jqx._ptrnd(h[0]+1)+","+a.jqx._ptrnd(h[1]+1)+" ";return c}}for(var f=0;f<b-4;f+=2){e=e.concat(this._calculateControlPoints(h,f))}for(var f=2;f<b-5;f+=2){c+=" C"+a.jqx._ptrnd(e[2*f-2])+","+a.jqx._ptrnd(e[2*f-1])+" "+a.jqx._ptrnd(e[2*f])+","+a.jqx._ptrnd(e[2*f+1])+" "+a.jqx._ptrnd(h[f+2])+","+a.jqx._ptrnd(h[f+3])+" "}if(b<4||(Math.abs(h[0]-h[2])<3||Math.abs(h[1]-h[3])<3)||this._isVML){c="M"+a.jqx._ptrnd(h[0])+","+a.jqx._ptrnd(h[1])+" L"+a.jqx._ptrnd(h[2])+","+a.jqx._ptrnd(h[3])+" "+c}else{c="M"+a.jqx._ptrnd(h[0])+","+a.jqx._ptrnd(h[1])+" Q"+a.jqx._ptrnd(e[0])+","+a.jqx._ptrnd(e[1])+" "+a.jqx._ptrnd(h[2])+","+a.jqx._ptrnd(h[3])+" "+c}if(Math.abs(h[b-2]-h[b-4])<3||Math.abs(h[b-1]-h[b-3])<3||this._isVML){c+=" L"+a.jqx._ptrnd(h[b-2])+","+a.jqx._ptrnd(h[b-1])+" "}else{c+=" Q"+a.jqx._ptrnd(e[b*2-10])+","+a.jqx._ptrnd(e[b*2-9])+" "+a.jqx._ptrnd(h[b-2])+","+a.jqx._ptrnd(h[b-1])+" "}return c},_animTickInt:50,_createAnimationGroup:function(b){if(!this._animGroups){this._animGroups={}}this._animGroups[b]={animations:[],startTick:NaN}},_startAnimation:function(c){var e=new Date();var b=e.getTime();this._animGroups[c].startTick=b;this._runAnimation();this._enableAnimTimer()},_enqueueAnimation:function(e,d,c,g,f,b,h){if(g<0){g=0}if(h==undefined){h="easeInOutSine"}this._animGroups[e].animations.push({key:d,properties:c,duration:g,fn:f,context:b,easing:h})},_stopAnimations:function(){clearTimeout(this._animtimer);this._animtimer=undefined;this._animGroups=undefined},_enableAnimTimer:function(){if(!this._animtimer){var b=this;this._animtimer=setTimeout(function(){b._runAnimation()},this._animTickInt)}},_runAnimation:function(q){if(this._animGroups){var t=new Date();var h=t.getTime();var o={};for(var l in this._animGroups){var s=this._animGroups[l].animations;var m=this._animGroups[l].startTick;var g=0;for(var n=0;n<s.length;n++){var u=s[n];var b=(h-m);if(u.duration>g){g=u.duration}var r=u.duration>0?b/u.duration:1;var k=r;if(u.easing&&u.duration!=0){k=a.easing[u.easing](r,b,0,1,u.duration)}if(r>1){r=1;k=1}if(u.fn){u.fn(u.key,u.context,k);continue}var f={};for(var l=0;l<u.properties.length;l++){var c=u.properties[l];var e=0;if(r==1){e=c.to}else{e=easeParecent*(c.to-c.from)+c.from}f[c.key]=e}this.renderer.attr(u.key,f)}if(m+g>h){o[l]=({startTick:m,animations:s})}}this._animGroups=o;if(this.renderer instanceof a.jqx.HTML5Renderer){this.renderer.refresh()}}this._animtimer=null;for(var l in this._animGroups){this._enableAnimTimer();break}},_fixCoords:function(d,e){var b=this.seriesGroups[e].orientation=="horizontal";if(!b){return d}var c=d.x;d.x=d.y;d.y=c+this._plotRect.y-this._plotRect.x;var c=d.width;d.width=d.height;d.height=c;return d},getItemCoord:function(b,d,u){var k=this;if(k._isPieGroup(b)&&(!k._isSerieVisible(b,d,u)||!k._renderData||k._renderData.length<=b)){return{x:NaN,y:NaN}}if(!k._isSerieVisible(b,d)||!k._renderData||k._renderData.length<=b){return{x:NaN,y:NaN}}var q=k.seriesGroups[b];var j=q.series[d];var o=k._getItemCoord(b,d,u);if(k._isPieGroup(b)){if(isNaN(o.x)||isNaN(o.y)||isNaN(o.fromAngle)||isNaN(o.toAngle)){return{x:NaN,y:NaN}}var i=this._plotRect;var p=o.fromAngle*(Math.PI/180);var e=o.toAngle*(Math.PI/180);x1=i.x+o.center.x+Math.cos(p)*o.outerRadius;x2=i.x+o.center.x+Math.cos(e)*o.outerRadius;y1=i.y+o.center.y-Math.sin(p)*o.outerRadius;y2=i.y+o.center.y-Math.sin(e)*o.outerRadius;var h=Math.min(x1,x2);var m=Math.abs(x2-x1);var f=Math.min(y1,y2);var l=Math.abs(y2-y1);o={x:h,y:f,width:m,height:l,center:o.center,centerOffset:o.centerOffset,innerRadius:o.innerRadius,outerRadius:o.outerRadius,selectedRadiusChange:o.selectedRadiusChange,fromAngle:o.fromAngle,toAngle:o.toAngle};return o}if(q.type.indexOf("column")!=-1||q.type.indexOf("waterfall")!=-1){var v=this._getColumnSerieWidthAndOffset(b,d);o.height=Math.abs(o.y.to-o.y.from);o.y=Math.min(o.y.to,o.y.from);o.x+=v.offset;o.width=v.width}else{if(q.type.indexOf("ohlc")!=-1||q.type.indexOf("candlestick")!=-1){var v=this._getColumnSerieWidthAndOffset(b,d);var f=o.y;var t=Math.min(f.Open,f.Close,f.Low,f.High);var r=Math.max(f.Open,f.Close,f.Low,f.High);o.height=Math.abs(r-t);o.y=t;o.x+=v.offset;o.width=v.width}else{if(q.type.indexOf("line")!=-1||q.type.indexOf("area")!=-1){o.width=o.height=0;o.y=o.y.to}else{if(q.type.indexOf("bubble")!=-1||q.type.indexOf("scatter")!=-1){o.center={x:o.x,y:o.y.to};var c=o.y.radius;if(j.symbolType!="circle"&&j.symbolType!=undefined){c/=2}o.y=o.y.to;o.radius=c;o.width=2*c;o.height=2*c}}}}o=this._fixCoords(o,b);if(q.polar||q.spider){var n=this._toPolarCoord(this._renderData[b].polarCoords,this._plotRect,o.x,o.y);o.x=n.x;o.y=n.y;if(o.center){o.center=this._toPolarCoord(this._renderData[b].polarCoords,this._plotRect,o.center.x,o.center.y)}}if(q.type.indexOf("bubble")!=-1||q.type.indexOf("scatter")!=-1){o.x-=c;o.y-=c}return o},_getItemCoord:function(o,j,b){var e=this.seriesGroups[o],l,k;if(!e||!this._renderData){return{x:NaN,y:NaN}}var f=e.series[j];if(!f){return{x:NaN,y:NaN}}var h=this._plotRect;if(this._isPieGroup(o)){var m=this._renderData[o].offsets[j][b];if(!m){return{x:NaN,y:NaN}}var c=(m.fromAngle+m.toAngle)/2*(Math.PI/180);l=h.x+m.x+Math.cos(c)*m.outerRadius;k=h.y+m.y-Math.sin(c)*m.outerRadius;return{x:l,y:k,center:{x:m.x,y:m.y},centerOffset:m.centerOffset,innerRadius:m.innerRadius,outerRadius:m.outerRadius,selectedRadiusChange:m.selectedRadiusChange,fromAngle:m.fromAngle,toAngle:m.toAngle}}else{l=h.x+this._renderData[o].xoffsets.data[b];k=this._renderData[o].offsets[j][b];if(isNaN(l)||!k){return{x:NaN,y:NaN}}}var n={};for(var d in k){n[d]=k[d]}return{x:l,y:n}},_detectDateFormat:function(g,e){var d={en_US_d:"M/d/yyyy",en_US_D:"dddd, MMMM dd, yyyy",en_US_t:"h:mm tt",en_US_T:"h:mm:ss tt",en_US_f:"dddd, MMMM dd, yyyy h:mm tt",en_US_F:"dddd, MMMM dd, yyyy h:mm:ss tt",en_US_M:"MMMM dd",en_US_Y:"yyyy MMMM",en_US_S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",en_CA_d:"dd/MM/yyyy",en_CA_D:"MMMM-dd-yy",en_CA_f:"MMMM-dd-yy h:mm tt",en_CA_F:"MMMM-dd-yy h:mm:ss tt",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",de_DE_d:"dd.MM.yyyy",de_DE_D:"dddd, d. MMMM yyyy",de_DE_t:"HH:mm",de_DE_T:"HH:mm:ss",de_DE_f:"dddd, d. MMMM yyyy HH:mm",de_DE_F:"dddd, d. MMMM yyyy HH:mm:ss",de_DE_M:"dd MMMM",de_DE_Y:"MMMM yyyy",fr_FR_d:"dd/MM/yyyy",fr_FR_D:"dddd d MMMM yyyy",fr_FR_t:"HH:mm",fr_FR_T:"HH:mm:ss",fr_FR_f:"dddd d MMMM yyyy HH:mm",fr_FR_F:"dddd d MMMM yyyy HH:mm:ss",fr_FR_M:"d MMMM",fr_FR_Y:"MMMM yyyy",it_IT_d:"dd/MM/yyyy",it_IT_D:"dddd d MMMM yyyy",it_IT_t:"HH:mm",it_IT_T:"HH:mm:ss",it_IT_f:"dddd d MMMM yyyy HH:mm",it_IT_F:"dddd d MMMM yyyy HH:mm:ss",it_IT_M:"dd MMMM",it_IT_Y:"MMMM yyyy",ru_RU_d:"dd.MM.yyyy",ru_RU_D:"d MMMM yyyy '?.'",ru_RU_t:"H:mm",ru_RU_T:"H:mm:ss",ru_RU_f:"d MMMM yyyy '?.' H:mm",ru_RU_F:"d MMMM yyyy '?.' H:mm:ss",ru_RU_Y:"MMMM yyyy",cs_CZ_d:"d.M.yyyy",cs_CZ_D:"d. MMMM yyyy",cs_CZ_t:"H:mm",cs_CZ_T:"H:mm:ss",cs_CZ_f:"d. MMMM yyyy H:mm",cs_CZ_F:"d. MMMM yyyy H:mm:ss",cs_CZ_M:"dd MMMM",cs_CZ_Y:"MMMM yyyy",he_IL_d:"dd MMMM yyyy",he_IL_D:"dddd dd MMMM yyyy",he_IL_t:"HH:mm",he_IL_T:"HH:mm:ss",he_IL_f:"dddd dd MMMM yyyy HH:mm",he_IL_F:"dddd dd MMMM yyyy HH:mm:ss",he_IL_M:"dd MMMM",he_IL_Y:"MMMM yyyy",hr_HR_d:"d.M.yyyy.",hr_HR_D:"d. MMMM yyyy.",hr_HR_t:"H:mm",hr_HR_T:"H:mm:ss",hr_HR_f:"d. MMMM yyyy. H:mm",hr_HR_F:"d. MMMM yyyy. H:mm:ss",hr_HR_M:"d. MMMM",hu_HU_d:"yyyy.MM.dd.",hu_HU_D:"yyyy. MMMM d.",hu_HU_t:"H:mm",hu_HU_T:"H:mm:ss",hu_HU_f:"yyyy. MMMM d. H:mm",hu_HU_F:"yyyy. MMMM d. H:mm:ss",hu_HU_M:"MMMM d.",hu_HU_Y:"yyyy. MMMM",jp_JP_d:"gg y/M/d",jp_JP_D:"gg y'?'M'?'d'?'",jp_JP_t:"H:mm",jp_JP_T:"H:mm:ss",jp_JP_f:"gg y'?'M'?'d'?' H:mm",jp_JP_F:"gg y'?'M'?'d'?' H:mm:ss",jp_JP_M:"M'?'d'?'",jp_JP_Y:"gg y'?'M'?'",lt_LT_d:"yyyy.MM.dd",lt_LT_D:"yyyy 'm.' MMMM d 'd.'",lt_LT_t:"HH:mm",lt_LT_T:"HH:mm:ss",lt_LT_f:"yyyy 'm.' MMMM d 'd.' HH:mm",lt_LT_F:"yyyy 'm.' MMMM d 'd.' HH:mm:ss",lt_LT_M:"MMMM d 'd.'",lt_LT_Y:"yyyy 'm.' MMMM",sa_IN_d:"dd-MM-yyyy",sa_IN_D:"dd MMMM yyyy dddd",sa_IN_t:"HH:mm",sa_IN_T:"HH:mm:ss",sa_IN_f:"dd MMMM yyyy dddd HH:mm",sa_IN_F:"dd MMMM yyyy dddd HH:mm:ss",sa_IN_M:"dd MMMM",basic_y:"yyyy",basic_ym:"yyyy-MM",basic_d:"yyyy-MM-dd",basic_dhm:"yyyy-MM-dd hh:mm",basic_bhms:"yyyy-MM-dd hh:mm:ss",basic2_ym:"MM-yyyy",basic2_d:"MM-dd-yyyy",basic2_dhm:"MM-dd-yyyy hh:mm",basic2_dhms:"MM-dd-yyyy hh:mm:ss",basic3_ym:"yyyy/MM",basic3_d:"yyyy/MM/dd",basic3_dhm:"yyyy/MM/dd hh:mm",basic3_bhms:"yyyy/MM/dd hh:mm:ss",basic4_ym:"MM/yyyy",basic4_d:"MM/dd/yyyy",basic4_dhm:"MM/dd/yyyy hh:mm",basic4_dhms:"MM/dd/yyyy hh:mm:ss"};if(e){d=a.extend({},d,e)}var c=[];if(!a.isArray(g)){c.push(g)}else{c=g}for(var f in d){d[f]={format:d[f],count:0}}for(var h=0;h<c.length;h++){value=c[h];if(value==null||value==undefined){continue}for(var f in d){var b=a.jqx.dataFormat.parsedate(value,d[f].format);if(b!=null){d[f].count++}}}var k={key:undefined,count:0};for(var f in d){if(d[f].count>k.count){k.key=f;k.count=d[f].count}}return k.key?d[k.key].format:""},_testXAxisDateFormat:function(h){var k=this;var d=k._getXAxis(h);var c=k._getDataLen(h);var e={};if(k.localization&&k.localization.patterns){for(var j in k.localization.patterns){e["local_"+j]=k.localization.patterns[j]}}var g=[];for(var f=0;f<c&&f<10;f++){value=k._getDataValue(f,d.dataField,h);if(value==null||value==undefined){continue}g.push(value)}var b=k._detectDateFormat(g,e);return b}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.js
new file mode 100644 (file)
index 0000000..2ca3425
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDraw","",{});a.extend(a.jqx._jqxDraw.prototype,{defineInstance:function(){var d={renderEngine:""};a.extend(true,this,d);var e=["clear","on","off","removeElement","attr","getAttr","line","circle","rect","path","pieslice","text","measureText"];for(var c in e){this._addFn(a.jqx._jqxDraw.prototype,e[c])}},_addFn:function(d,c){if(d[c]){return}d[c]=function(){return this.renderer[c].apply(this.renderer,arguments)}},createInstance:function(c){},_initRenderer:function(c){return a.jqx.createRenderer(this,c)},_internalRefresh:function(){var c=this;if(a.jqx.isHidden(c.host)){return}if(!c.renderer){c.host.empty();c._initRenderer(c.host)}var e=c.renderer;if(!e){return}var d=e.getRect();c._render({x:1,y:1,width:d.width,height:d.height});if(e instanceof a.jqx.HTML5Renderer){e.refresh()}},_saveAsImage:function(e,f,c,d){return a.jqx._widgetToImage(this,e,f,c,d)},_render:function(d){var c=this;var e=c.renderer;c._plotRect=d},refresh:function(){this._internalRefresh()},getSize:function(){var c=this._plotRect;return{width:c.width,height:c.height}},saveAsPNG:function(e,c,d){return this._saveAsImage("png",e,c,d)},saveAsJPEG:function(e,c,d){return this._saveAsImage("jpeg",e,c,d)}})})(jqxBaseFramework);(function(a){a.jqx.toGreyScale=function(c){if(c.indexOf("#")==-1){return c}var d=a.jqx.cssToRgb(c);d[0]=d[1]=d[2]=Math.round(0.3*d[0]+0.59*d[1]+0.11*d[2]);var e=a.jqx.rgbToHex(d[0],d[1],d[2]);return"#"+e[0]+e[1]+e[2]},a.jqx.adjustColor=function(f,e){if(typeof(f)!="string"){return"#000000"}if(f.indexOf("#")==-1){return f}var h=a.jqx.cssToRgb(f);var d=a.jqx.rgbToHsl(h);d[2]=Math.min(1,d[2]*e);d[1]=Math.min(1,d[1]*e*1.1);h=a.jqx.hslToRgb(d);var f="#";for(var j=0;j<3;j++){var k=Math.round(h[j]);k=a.jqx.decToHex(k);if(k.toString().length==1){f+="0"}f+=k}return f.toUpperCase()};a.jqx.decToHex=function(c){return c.toString(16)};a.jqx.hexToDec=function(c){return parseInt(c,16)};a.jqx.rgbToHex=function(e,d,c){return[a.jqx.decToHex(e),a.jqx.decToHex(d),a.jqx.decToHex(c)]};a.jqx.hexToRgb=function(d,f,c){return[a.jqx.hexToDec(d),a.jqx.hexToDec(f),a.jqx.hexToDec(c)]};a.jqx.cssToRgb=function(c){if(c.indexOf("rgb")<=-1){return a.jqx.hexToRgb(c.substring(1,3),c.substring(3,5),c.substring(5,7))}return c.substring(4,c.length-1).split(",")};a.jqx.hslToRgb=function(d){var f=parseFloat(d[0]);var e=parseFloat(d[1]);var c=parseFloat(d[2]);if(e==0){r=g=b=c}else{var i=c<0.5?c*(1+e):c+e-c*e;var j=2*c-i;r=a.jqx.hueToRgb(j,i,f+1/3);g=a.jqx.hueToRgb(j,i,f);b=a.jqx.hueToRgb(j,i,f-1/3)}return[r*255,g*255,b*255]};a.jqx.hueToRgb=function(e,d,c){if(c<0){c+=1}if(c>1){c-=1}if(c<1/6){return e+(d-e)*6*c}else{if(c<1/2){return d}else{if(c<2/3){return e+(d-e)*(2/3-c)*6}}}return e};a.jqx.rgbToHsl=function(j){var c=parseFloat(j[0])/255;var i=parseFloat(j[1])/255;var k=parseFloat(j[2])/255;var m=Math.max(c,i,k),e=Math.min(c,i,k);var f,o,d=(m+e)/2;if(m==e){f=o=0}else{var n=m-e;o=d>0.5?n/(2-m-e):n/(m+e);switch(m){case c:f=(i-k)/n+(i<k?6:0);break;case i:f=(k-c)/n+2;break;case k:f=(c-i)/n+4;break}f/=6}return[f,o,d]};a.jqx.swap=function(c,e){var d=c;c=e;e=d};a.jqx.getNum=function(c){if(!a.isArray(c)){if(isNaN(c)){return 0}}else{for(var d=0;d<c.length;d++){if(!isNaN(c[d])){return c[d]}}}return 0};a.jqx._ptdist=function(d,f,c,e){return Math.sqrt((c-d)*(c-d)+(e-f)*(e-f))};a.jqx._ptrnd=function(d){if(!document.createElementNS){if(Math.round(d)==d){return d}return a.jqx._rnd(d,1,false,true)}var c=a.jqx._rnd(d,0.5,false,true);if(Math.abs(c-Math.round(c))!=0.5){return c>d?c-0.5:c+0.5}return c};a.jqx._ptRotate=function(e,k,d,j,h){var c=Math.sqrt(Math.pow(Math.abs(e-d),2)+Math.pow(Math.abs(k-j),2));var f=Math.asin((e-d)/c);var i=f+h;e=d+Math.cos(i)*c;k=j+Math.sin(i)*c;return{x:e,y:k}};a.jqx._rup=function(d){var c=Math.round(d);if(d>c){c++}return c};a.jqx.log=function(d,c){return Math.log(d)/(c?Math.log(c):1)};a.jqx._mod=function(d,c){var e=Math.abs(d>c?c:d);var f=1;if(e!=0){while(e*f<100){f*=10}}d=d*f;c=c*f;return(d%c)/f};a.jqx._rnd=function(e,h,f,d){if(isNaN(e)){return e}if(undefined===d){d=true}var c=e-((d==true)?e%h:a.jqx._mod(e,h));if(e==c){return c}if(f){if(e>c){c+=h}}else{if(c>e){c-=h}}return(h==1)?Math.round(c):c};a.jqx.commonRenderer={pieSlicePath:function(m,l,j,u,D,E,e){if(!u){u=1}var o=Math.abs(D-E);var s=o>180?1:0;if(o>=360){E=D+359.99}var t=D*Math.PI*2/360;var k=E*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e+j>0){if(e>0){var n=o/2+D;var C=n*Math.PI*2/360;m+=e*Math.cos(C);l-=e*Math.sin(C)}if(p){var z=j;B=m+z*Math.cos(t);h=l-z*Math.sin(t);A=m+z*Math.cos(k);f=l-z*Math.sin(k)}}var w=m+u*Math.cos(t);var v=m+u*Math.cos(k);var d=l-u*Math.sin(t);var c=l-u*Math.sin(k);var q="";var i=(Math.abs(Math.abs(E-D)-360)>0.02);if(p){q="M "+A+","+f;q+=" a"+j+","+j;q+=" 0 "+s+",1 "+(B-A)+","+(h-f);if(i){q+=" L"+w+","+d}else{q+=" M"+w+","+d}q+=" a"+u+","+u;q+=" 0 "+s+",0 "+(v-w)+","+(c-d);if(i){q+=" Z"}}else{q="M "+v+","+c;q+=" a"+u+","+u;q+=" 0 "+s+",1 "+(w-v)+","+(d-c);if(i){q+=" L"+m+","+l;q+=" Z"}}return q},measureText:function(q,h,i,p,n){var f=n._getTextParts(q,h,i);var k=f.width;var c=f.height;if(false==p){c/=0.6}var d={};if(isNaN(h)){h=0}if(h==0){d={width:a.jqx._rup(k),height:a.jqx._rup(c)}}else{var m=h*Math.PI*2/360;var e=Math.abs(Math.sin(m));var l=Math.abs(Math.cos(m));var j=Math.abs(k*e+c*l);var o=Math.abs(k*l+c*e);d={width:a.jqx._rup(o),height:a.jqx._rup(j)}}if(p){d.textPartsInfo=f}return d},alignTextInRect:function(t,p,c,u,o,q,k,s,f,e){var m=f*Math.PI*2/360;var d=Math.sin(m);var l=Math.cos(m);var n=o*d;var j=o*l;if(k=="center"||k==""||k=="undefined"){t=t+c/2}else{if(k=="right"){t=t+c}}if(s=="center"||s=="middle"||s==""||s=="undefined"){p=p+u/2}else{if(s=="bottom"){p+=u-q/2}else{if(s=="top"){p+=q/2}}}e=e||"";var h="middle";if(e.indexOf("top")!=-1){h="top"}else{if(e.indexOf("bottom")!=-1){h="bottom"}}var i="center";if(e.indexOf("left")!=-1){i="left"}else{if(e.indexOf("right")!=-1){i="right"}}if(i=="center"){t-=j/2;p-=n/2}else{if(i=="right"){t-=j;p-=n}}if(h=="top"){t-=q*d;p+=q*l}else{if(h=="middle"){t-=q*d/2;p+=q*l/2}}t=a.jqx._rup(t);p=a.jqx._rup(p);return{x:t,y:p}}};a.jqx.svgRenderer=function(){};a.jqx.svgRenderer.prototype={_svgns:"http://www.w3.org/2000/svg",init:function(h){var f="<table id=tblChart cellspacing='0' cellpadding='0' border='0' align='left' valign='top'><tr><td colspan=2 id=tdTop></td></tr><tr><td id=tdLeft></td><td><div class='chartContainer' style='position:relative' onselectstart='return false;'></div></td></tr></table>";h.append(f);this.host=h;var c=h.find(".chartContainer");c[0].style.width=h.width()+"px";c[0].style.height=h.height()+"px";var j;try{var d=document.createElementNS(this._svgns,"svg");d.setAttribute("id","svgChart");d.setAttribute("version","1.1");d.setAttribute("width","100%");d.setAttribute("height","100%");d.setAttribute("overflow","hidden");c[0].appendChild(d);this.canvas=d}catch(i){return false}this._id=new Date().getTime();this.clear();this._layout();this._runLayoutFix();return true},getType:function(){return"SVG"},refresh:function(){},_runLayoutFix:function(){var c=this;this._fixLayout()},_fixLayout:function(){var i=a(this.canvas).position();var e=(parseFloat(i.left)==parseInt(i.left));var c=(parseFloat(i.top)==parseInt(i.top));if(a.jqx.browser.msie){var e=true,c=true;var f=this.host;var d=0,h=0;while(f&&f.position&&f[0].parentNode){var j=f.position();d+=parseFloat(j.left)-parseInt(j.left);h+=parseFloat(j.top)-parseInt(j.top);f=f.parent()}e=parseFloat(d)==parseInt(d);c=parseFloat(h)==parseInt(h)}if(!e){this.host.find("#tdLeft")[0].style.width="0.5px"}if(!c){this.host.find("#tdTop")[0].style.height="0.5px"}},_layout:function(){var d=a(this.canvas).offset();var c=this.host.find(".chartContainer");this._width=Math.max(a.jqx._rup(this.host.width())-1,0);this._height=Math.max(a.jqx._rup(this.host.height())-1,0);c[0].style.width=this._width;c[0].style.height=this._height;this._fixLayout()},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeElement(this.canvas.firstElementChild)}this._defaultParent=undefined;this._defs=document.createElementNS(this._svgns,"defs");this._gradients={};this.canvas.appendChild(this._defs)},removeElement:function(e){if(undefined==e){return}this.removeHandler(e);try{while(e.firstChild){this.removeElement(e.firstChild)}if(e.parentNode){e.parentNode.removeChild(e)}else{this.canvas.removeChild(e)}}catch(d){var c=d}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElementNS(this._svgns,"g");c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(e){var f=document.createElementNS(this._svgns,"clipPath");var d=document.createElementNS(this._svgns,"rect");this.attr(d,{x:e.x,y:e.y,width:e.width,height:e.height,fill:"none"});this._clipId=this._clipId||0;f.id="cl"+this._id+"_"+(++this._clipId).toString();f.appendChild(d);this._defs.appendChild(f);return f},getWindowHref:function(){var d=a.jqx.browser;if(d&&d.browser=="msie"&&d.version<10){return""}var c=window.location.href;if(!c){return c}c=c.replace(/([\('\)])/g,"\\$1");c=c.replace(/#.*$/,"");return c},setClip:function(e,d){var c="url("+this.getWindowHref()+"#"+d.id+")";return this.attr(e,{"clip-path":c})},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},shape:function(c,f){var d=document.createElementNS(this._svgns,c);if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},_getTextParts:function(t,j,k){var h={width:0,height:0,parts:[]};if(undefined===t){return h}var o=0.6;var u=t.toString().split("<br>");var q=this._activeParent();var m=document.createElementNS(this._svgns,"text");this.attr(m,k);for(var l=0;l<u.length;l++){var d=u[l];var f=m.ownerDocument.createTextNode(d);m.appendChild(f);q.appendChild(m);var s;try{s=m.getBBox()}catch(p){}var n=a.jqx._rup(s.width);var c=a.jqx._rup(s.height*o);m.removeChild(f);h.width=Math.max(h.width,n);h.height+=c+(l>0?4:0);h.parts.push({width:n,height:c,text:d})}q.removeChild(m);return h},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(z,t,s,E,C,K,M,L,v,m,d){var B=this._measureText(z,K,M,true);var l=B.textPartsInfo;var j=l.parts;var D;if(!v){v="center"}if(!m){m="center"}if(j.length>1||L){D=this.beginGroup()}if(L){var k=this.createClipRect({x:a.jqx._rup(t)-1,y:a.jqx._rup(s)-1,width:a.jqx._rup(E)+2,height:a.jqx._rup(C)+2});this.setClip(D,k)}var q=this._activeParent();var O=0,n=0;var c=0.6;O=l.width;n=l.height;if(isNaN(E)||E<=0){E=O}if(isNaN(C)||C<=0){C=n}var u=E||0;var J=C||0;if(!K||K==0){s+=n;if(m=="center"||m=="middle"){s+=(J-n)/2}else{if(m=="bottom"){s+=J-n}}if(!E){E=O}if(!C){C=n}var q=this._activeParent();var p=0;for(var I=j.length-1;I>=0;I--){var A=document.createElementNS(this._svgns,"text");this.attr(A,M);this.attr(A,{cursor:"default"});var H=A.ownerDocument.createTextNode(j[I].text);A.appendChild(H);var P=t;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(u-o)/2}else{if(v=="right"){P+=(u-o)}}this.attr(A,{x:a.jqx._rup(P),y:a.jqx._rup(s+p),width:a.jqx._rup(o),height:a.jqx._rup(f)});q.appendChild(A);p-=j[I].height+4}if(D){this.endGroup();return D}return A}var F=a.jqx.commonRenderer.alignTextInRect(t,s,E,C,O,n,v,m,K,d);t=F.x;s=F.y;var G=this.shape("g",{transform:"translate("+t+","+s+")"});var e=this.shape("g",{transform:"rotate("+K+")"});G.appendChild(e);var p=0;for(var I=j.length-1;I>=0;I--){var N=document.createElementNS(this._svgns,"text");this.attr(N,M);this.attr(N,{cursor:"default"});var H=N.ownerDocument.createTextNode(j[I].text);N.appendChild(H);var P=0;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(l.width-o)/2}else{if(v=="right"){P+=(l.width-o)}}this.attr(N,{x:a.jqx._rup(P),y:a.jqx._rup(p),width:a.jqx._rup(o),height:a.jqx._rup(f)});e.appendChild(N);p-=f+4}q.appendChild(G);if(D){this.endGroup()}return G},line:function(e,h,d,f,i){var c=this.shape("line",{x1:e,y1:h,x2:d,y2:f});this.attr(c,i);return c},path:function(d,e){var c=this.shape("path");c.setAttribute("d",d);if(e){this.attr(c,e)}return c},rect:function(c,j,d,f,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=Math.max(1,a.jqx._rnd(d,1,false));f=Math.max(1,a.jqx._rnd(f,1,false));var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},circle:function(c,h,e,f){var d=this.shape("circle",{cx:c,cy:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,e,h,c,k,d){var f=this.pieSlicePath(l,j,i,e,h,c,k);var m=this.shape("path");m.setAttribute("d",f);if(d){this.attr(m,d)}return m},attr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=e[d]}else{c.setAttribute(d,e[d])}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=""}else{c.removeAttribute(e[d])}}},getAttr:function(d,c){return d.getAttribute(c)},_gradients:{},_toLinearGradient:function(f,k,l){var d="grd"+this._id+f.replace("#","")+(k?"v":"h");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"linearGradient");this.attr(e,{x1:"0%",y1:"0%",x2:k?"0%":"100%",y2:k?"100%":"0%",id:d});for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c},_toRadialGradient:function(f,l,k){var d="grd"+this._id+f.replace("#","")+"r"+(k!=undefined?k.key:"");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"radialGradient");if(k==undefined){this.attr(e,{cx:"50%",cy:"50%",r:"100%",fx:"50%",fy:"50%",id:d})}else{this.attr(e,{cx:k.x,cy:k.y,r:k.outerRadius,id:d,gradientUnits:"userSpaceOnUse"})}for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c}};a.jqx.vmlRenderer=function(){};a.jqx.vmlRenderer.prototype={init:function(j){var h="<div class='chartContainer' style=\"position:relative;overflow:hidden;\"><div>";j.append(h);this.host=j;var c=j.find(".chartContainer");c[0].style.width=j.width()+"px";c[0].style.height=j.height()+"px";var f=true;try{for(var d=0;d<document.namespaces.length;d++){if(document.namespaces[d].name=="v"&&document.namespaces[d].urn=="urn:schemas-microsoft-com:vml"){f=false;break}}}catch(k){return false}if(a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9&&(document.childNodes&&document.childNodes.length>0&&document.childNodes[0].data&&document.childNodes[0].data.indexOf("DOCTYPE")!=-1)){if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml")}this._ie8mode=true}else{if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().cssText="v\\:* { behavior: url(#default#VML); display: inline-block; }"}}this.canvas=c[0];this._width=Math.max(a.jqx._rup(c.width()),0);this._height=Math.max(a.jqx._rup(c.height()),0);c[0].style.width=this._width+2;c[0].style.height=this._height+2;this._id=new Date().getTime();this.clear();return true},getType:function(){return"VML"},refresh:function(){},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeHandler(this.canvas.firstElementChild);this.canvas.removeChild(this.canvas.firstElementChild)}this._gradients={};this._defaultParent=undefined},removeElement:function(c){if(c!=null){this.removeHandler(c);c.parentNode.removeChild(c)}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElement("v:group");d.style.position="absolute";d.coordorigin="0,0";d.coordsize=this._width+","+this._height;d.style.left=0;d.style.top=0;d.style.width=this._width;d.style.height=this._height;c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(c){var d=document.createElement("div");d.style.height=(c.height+1)+"px";d.style.width=(c.width+1)+"px";d.style.position="absolute";d.style.left=c.x+"px";d.style.top=c.y+"px";d.style.overflow="hidden";this._clipId=this._clipId||0;d.id="cl"+this._id+"_"+(++this._clipId).toString();this._activeParent().appendChild(d);return d},setClip:function(d,c){},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},_getTextParts:function(q,h,j){var f={width:0,height:0,parts:[]};var o=0.6;var s=q.toString().split("<br>");var p=this._activeParent();var l=document.createElement("v:textbox");this.attr(l,j);p.appendChild(l);for(var k=0;k<s.length;k++){var d=s[k];var e=document.createElement("span");e.appendChild(document.createTextNode(d));l.appendChild(e);if(j&&j["class"]){e.className=j["class"]}var n=a(l);var m=a.jqx._rup(n.width());var c=a.jqx._rup(n.height()*o);if(c==0&&a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9){var t=n.css("font-size");if(t){c=parseInt(t);if(isNaN(c)){c=0}}}l.removeChild(e);f.width=Math.max(f.width,m);f.height+=c+(k>0?2:0);f.parts.push({width:m,height:c,text:d})}p.removeChild(l);return f},_measureText:function(f,e,d,c){if(Math.abs(e)>45){e=90}else{e=0}return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(u,p,o,D,z,J,L,K,t,k){var E;if(L&&L.stroke){E=L.stroke}if(E==undefined){E="black"}var v=this._measureText(u,J,L,true);var f=v.textPartsInfo;var c=f.parts;var M=v.width;var l=v.height;if(isNaN(D)||D==0){D=M}if(isNaN(z)||z==0){z=l}var B;if(!t){t="center"}if(!k){k="center"}if(c.length>0||K){B=this.beginGroup()}if(K){var d=this.createClipRect({x:a.jqx._rup(p),y:a.jqx._rup(o),width:a.jqx._rup(D),height:a.jqx._rup(z)});this.setClip(B,d)}var n=this._activeParent();var s=D||0;var I=z||0;if(Math.abs(J)>45){J=90}else{J=0}var A=0,H=0;if(t=="center"){A+=(s-M)/2}else{if(t=="right"){A+=(s-M)}}if(k=="center"){H=(I-l)/2}else{if(k=="bottom"){H=I-l}}if(J==0){o+=l+H;p+=A}else{p+=M+A;o+=H}var m=0,N=0;var e;for(var G=c.length-1;G>=0;G--){var C=c[G];var q=(M-C.width)/2;if(J==0&&t=="left"){q=0}else{if(J==0&&t=="right"){q=M-C.width}else{if(J==90){q=(l-C.width)/2}}}var j=m-C.height;H=J==90?q:j;A=J==90?j:q;e=document.createElement("v:textbox");e.style.position="absolute";e.style.left=a.jqx._rup(p+A);e.style.top=a.jqx._rup(o+H);e.style.width=a.jqx._rup(C.width);e.style.height=a.jqx._rup(C.height);if(J==90){e.style.filter="progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";e.style.height=a.jqx._rup(C.height)+5}var F=document.createElement("span");F.appendChild(document.createTextNode(C.text));if(L&&L["class"]){F.className=L["class"]}e.appendChild(F);n.appendChild(e);m-=C.height+(G>0?2:0)}if(B){this.endGroup();return n}return e},shape:function(c,f){var d=document.createElement(this._createElementMarkup(c));if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},line:function(f,i,e,h,j){var c="M "+f+","+i+" L "+e+","+h+" X E";var d=this.path(c);this.attr(d,j);return d},_createElementMarkup:function(c){var d="<v:"+c+' style=""></v:'+c+">";if(this._ie8mode){d=d.replace('style=""','style="behavior: url(#default#VML);"')}return d},path:function(d,e){var c=document.createElement(this._createElementMarkup("shape"));c.style.position="absolute";c.coordsize=this._width+" "+this._height;c.coordorigin="0 0";c.style.width=parseInt(this._width);c.style.height=parseInt(this._height);c.style.left=0+"px";c.style.top=0+"px";c.setAttribute("path",d);this._activeParent().appendChild(c);if(e){this.attr(c,e)}return c},rect:function(c,j,d,e,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=a.jqx._rup(d);e=a.jqx._rup(e);var f=this.shape("rect",i);f.style.position="absolute";f.style.left=c;f.style.top=j;f.style.width=d;f.style.height=e;f.strokeweight=0;if(i){this.attr(f,i)}return f},circle:function(c,h,e,f){var d=this.shape("oval");c=a.jqx._ptrnd(c-e);h=a.jqx._ptrnd(h-e);e=a.jqx._rup(e);d.style.position="absolute";d.style.left=c;d.style.top=h;d.style.width=e*2;d.style.height=e*2;if(f){this.attr(d,f)}return d},updateCircle:function(e,c,f,d){if(c==undefined){c=parseFloat(e.style.left)+parseFloat(e.style.width)/2}if(f==undefined){f=parseFloat(e.style.top)+parseFloat(e.style.height)/2}if(d==undefined){d=parseFloat(e.width)/2}c=a.jqx._ptrnd(c-d);f=a.jqx._ptrnd(f-d);d=a.jqx._rup(d);e.style.left=c;e.style.top=f;e.style.width=d*2;e.style.height=d*2},pieSlicePath:function(m,l,j,u,E,F,e){if(!u){u=1}var o=Math.abs(E-F);var s=o>180?1:0;if(o>360){E=0;F=360}var t=E*Math.PI*2/360;var k=F*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e>0){var n=o/2+E;var D=n*Math.PI*2/360;m+=e*Math.cos(D);l-=e*Math.sin(D)}if(p){var z=j;B=a.jqx._ptrnd(m+z*Math.cos(t));h=a.jqx._ptrnd(l-z*Math.sin(t));A=a.jqx._ptrnd(m+z*Math.cos(k));f=a.jqx._ptrnd(l-z*Math.sin(k))}var w=a.jqx._ptrnd(m+u*Math.cos(t));var v=a.jqx._ptrnd(m+u*Math.cos(k));var d=a.jqx._ptrnd(l-u*Math.sin(t));var c=a.jqx._ptrnd(l-u*Math.sin(k));u=a.jqx._ptrnd(u);j=a.jqx._ptrnd(j);m=a.jqx._ptrnd(m);l=a.jqx._ptrnd(l);var i=Math.round(E*65535);var C=Math.round((F-E)*65536);if(j<0){j=1}var q="";if(p){q="M"+B+" "+h;q+=" AE "+m+" "+l+" "+j+" "+j+" "+i+" "+C;q+=" L "+v+" "+c;i=Math.round((E-F)*65535);C=Math.round(F*65536);q+=" AE "+m+" "+l+" "+u+" "+u+" "+C+" "+i;q+=" L "+B+" "+h}else{q="M"+m+" "+l;q+=" AE "+m+" "+l+" "+u+" "+u+" "+i+" "+C}q+=" X E";return q},pieslice:function(m,k,j,f,i,c,l,e){var h=this.pieSlicePath(m,k,j,f,i,c,l);var d=this.path(h,e);if(e){this.attr(d,e)}return d},_keymap:[{svg:"fill",vml:"fillcolor"},{svg:"stroke",vml:"strokecolor"},{svg:"stroke-width",vml:"strokeweight"},{svg:"stroke-dasharray",vml:"dashstyle"},{svg:"fill-opacity",vml:"fillopacity"},{svg:"stroke-opacity",vml:"strokeopacity"},{svg:"opacity",vml:"opacity"},{svg:"cx",vml:"style.left"},{svg:"cy",vml:"style.top"},{svg:"height",vml:"style.height"},{svg:"width",vml:"style.width"},{svg:"x",vml:"style.left"},{svg:"y",vml:"style.top"},{svg:"d",vml:"v"},{svg:"display",vml:"style.display"}],_translateParam:function(c){for(var d in this._keymap){if(this._keymap[d].svg==c){return this._keymap[d].vml}}return c},attr:function(d,f){if(!d||!f){return}for(var e in f){var c=this._translateParam(e);if(undefined==f[e]){continue}if(c=="fillcolor"&&f[e].indexOf("grd")!=-1){d.type=f[e]}else{if(c=="fillcolor"&&f[e]=="transparent"){d.style.filter="alpha(opacity=0)";d["-ms-filter"]="progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"}else{if(c=="opacity"||c=="fillopacity"){if(d.fill){d.fill.opacity=f[e]}}else{if(c=="textContent"){d.children[0].innerText=f[e]}else{if(c=="dashstyle"){d.dashstyle=f[e].replace(","," ")}else{if(c.indexOf("style.")==-1){d[c]=f[e]}else{d.style[c.replace("style.","")]=f[e]}}}}}}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){c.removeAttribute(e[d])}},getAttr:function(e,d){var c=this._translateParam(d);if(c=="opacity"||c=="fillopacity"){if(e.fill){return e.fill.opacity}else{return 1}}if(c.indexOf("style.")==-1){return e[c]}return e.style[c.replace("style.","")]},_gradients:{},_toRadialGradient:function(c,e,d){return c},_toLinearGradient:function(j,m,n){if(this._ie8mode){return j}var e="grd"+j.replace("#","")+(m?"v":"h");var f="#"+e+"";if(this._gradients[f]){return f}var h=document.createElement(this._createElementMarkup("fill"));h.type="gradient";h.method="linear";h.angle=m?0:90;var d="";for(var k=0;k<n.length;k++){var l=n[k];if(l>0){d+=", "}d+=l[0]+"% "+a.jqx.adjustColor(j,l[1])}h.colors=d;var c=document.createElement(this._createElementMarkup("shapetype"));c.appendChild(h);c.id=e;this.canvas.appendChild(c);return f}};a.jqx.HTML5Renderer=function(){};a.jqx.ptrnd=function(d){if(Math.abs(Math.round(d)-d)==0.5){return d}var c=Math.round(d);if(c<d){c=c-1}return c+0.5};a.jqx.HTML5Renderer.prototype={init:function(c){try{this.host=c;this.host.append("<div class='chartContainer' style='position:relative' onselectstart='return false;'><canvas id='__jqxCanvasWrap' style='width:100%; height: 100%;'/></div>");this.canvas=c.find("#__jqxCanvasWrap");this.canvas[0].width=c.width();this.canvas[0].height=c.height();this.ctx=this.canvas[0].getContext("2d");this._elements={};this._maxId=0;this._gradientId=0;this._gradients={};this._currentPoint={x:0,y:0};this._lastCmd="";this._pos=0}catch(d){return false}return true},getType:function(){return"HTML5"},getContainer:function(){var c=this.host.find(".chartContainer");return c},getRect:function(){return{x:0,y:0,width:this.canvas[0].width-1,height:this.canvas[0].height-1}},beginGroup:function(){},endGroup:function(){},setClip:function(){},createClipRect:function(c){},addHandler:function(c,e,d){},removeHandler:function(c,e,d){},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},clear:function(){this._elements={};this._maxId=0;this._renderers._gradients={};this._gradientId=0},removeElement:function(c){if(undefined==c){return}if(this._elements[c.id]){delete this._elements[c.id]}},shape:function(c,f){var d={type:c,id:this._maxId++};for(var e in f){d[e]=f[e]}this._elements[d.id]=d;return d},attr:function(c,e){for(var d in e){c[d]=e[d]}},removeAttr:function(c,e){for(var d in e){delete c[e[d]]}},rect:function(c,j,d,f,i){if(isNaN(c)){throw'Invalid value for "x"'}if(isNaN(j)){throw'Invalid value for "y"'}if(isNaN(d)){throw'Invalid value for "width"'}if(isNaN(f)){throw'Invalid value for "height"'}var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},path:function(c,e){var d=this.shape("path",e);this.attr(d,{d:c});return d},line:function(d,f,c,e,h){return this.path("M "+d+","+f+" L "+c+","+e,h)},circle:function(c,h,e,f){var d=this.shape("circle",{x:c,y:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,f,h,c,k,d){var e=this.path(this.pieSlicePath(l,j,i,f,h,c,k),d);this.attr(e,{x:l,y:j,innerRadius:i,outerRadius:f,angleFrom:h,angleTo:c});return e},_getCSSStyle:function(d){var k=document.styleSheets;try{for(var f=0;f<k.length;f++){for(var c=0;k[f].cssRules&&c<k[f].cssRules.length;c++){if(k[f].cssRules[c].selectorText.indexOf(d)!=-1){return k[f].cssRules[c].style}}}}catch(h){}return{}},_getTextParts:function(s,h,j){var n="Arial";var t="10pt";var o="";if(j&&j["class"]){var c=this._getCSSStyle(j["class"]);if(c.fontSize){t=c.fontSize}if(c.fontFamily){n=c.fontFamily}if(c.fontWeight){o=c.fontWeight}}this.ctx.font=o+" "+t+" "+n;var f={width:0,height:0,parts:[]};var m=0.6;var q=s.toString().split("<br>");for(var k=0;k<q.length;k++){var e=q[k];var l=this.ctx.measureText(e).width;var p=document.createElement("span.jqxchart");p.font=this.ctx.font;p.textContent=e;document.body.appendChild(p);var d=p.offsetHeight*m;document.body.removeChild(p);f.width=Math.max(f.width,a.jqx._rup(l));f.height+=d+(k>0?4:0);f.parts.push({width:l,height:d,text:e})}return f},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(o,n,l,d,p,h,i,e,j,m,f){var q=this.shape("text",{text:o,x:n,y:l,width:d,height:p,angle:h,clip:e,halign:j,valign:m,rotateAround:f});if(i){this.attr(q,i)}q.fontFamily="Arial";q.fontSize="10pt";q.fontWeight="";q.color="#000000";if(i&&i["class"]){var c=this._getCSSStyle(i["class"]);q.fontFamily=c.fontFamily||q.fontFamily;q.fontSize=c.fontSize||q.fontSize;q.fontWeight=c.fontWeight||q.fontWeight;q.color=c.color||q.color}var k=this._measureText(o,0,i,true);this.attr(q,{textPartsInfo:k.textPartsInfo,textWidth:k.width,textHeight:k.height});if(d<=0||isNaN(d)){this.attr(q,{width:k.width})}if(p<=0||isNaN(p)){this.attr(q,{height:k.height})}return q},_toLinearGradient:function(d,j,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,j?"vertical":"horizontal",c);return e},_toRadialGradient:function(d,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,"radial",c);return e},createGradient:function(e,d,c){this._renderers.createGradient(this,e,d,c)},_renderers:{createGradient:function(f,e,d,c){f._gradients[e]={orientation:d,colorStops:c}},setStroke:function(d,e){var c=d.ctx;c.strokeStyle=e.stroke||"transparent";c.lineWidth=e["stroke-width"]||1;if(e["fill-opacity"]!=undefined){c.globalAlpha=e["fill-opacity"]}else{if(e.opacity!=undefined){c.globalAlpha=e.opacity}else{c.globalAlpha=1}}if(c.setLineDash){if(e["stroke-dasharray"]){c.setLineDash(e["stroke-dasharray"].split(","))}else{c.setLineDash([])}}},setFillStyle:function(d,h){var p=d.ctx;p.fillStyle="transparent";if(h["fill-opacity"]!=undefined){p.globalAlpha=h["fill-opacity"]}else{if(h.opacity!=undefined){p.globalAlpha=h.opacity}else{p.globalAlpha=1}}if(h.fill&&h.fill.indexOf("#")==-1&&d._gradients[h.fill]){var n=d._gradients[h.fill].orientation!="horizontal";var k=d._gradients[h.fill].orientation=="radial";var e=a.jqx.ptrnd(h.x);var o=a.jqx.ptrnd(h.y);var c=a.jqx.ptrnd(h.x+(n?0:h.width));var l=a.jqx.ptrnd(h.y+(n?h.height:0));var m;if((h.type=="circle"||h.type=="path"||h.type=="rect")&&k){x=a.jqx.ptrnd(h.x);y=a.jqx.ptrnd(h.y);r1=h.innerRadius||0;r2=h.outerRadius||h.r||0;if(h.type=="rect"){x+=h.width/2;y+=h.height/2}m=p.createRadialGradient(x,y,r1,x,y,r2)}if(!k){if(isNaN(e)||isNaN(c)||isNaN(o)||isNaN(l)){e=0;o=0;c=n?0:p.canvas.width;l=n?p.canvas.height:0}m=p.createLinearGradient(e,o,c,l)}var f=d._gradients[h.fill].colorStops;for(var j=0;j<f.length;j++){m.addColorStop(f[j].percent,f[j].color)}p.fillStyle=m}else{if(h.fill){p.fillStyle=h.fill}}},rect:function(c,d){if(d.width==0||d.height==0){return}c.fillRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height);c.strokeRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height)},circle:function(c,d){if(d.r==0){return}c.beginPath();c.arc(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.r,0,Math.PI*2,false);c.closePath();c.fill();c.stroke()},_parsePoint:function(d){var c=this._parseNumber(d);var e=this._parseNumber(d);return({x:c,y:e})},_parseNumber:function(e){var f=false;for(var c=this._pos;c<e.length;c++){if((e[c]>="0"&&e[c]<="9")||e[c]=="."||e[c]=="e"||(e[c]=="-"&&!f)||(e[c]=="-"&&c>=1&&e[c-1]=="e")){f=true;continue}if(!f&&(e[c]==" "||e[c]==",")){this._pos++;continue}break}var d=parseFloat(e.substring(this._pos,c));if(isNaN(d)){return undefined}this._pos=c;return d},_cmds:"mlcaz",_isRelativeCmd:function(c){return a.jqx.string.contains(this._cmds,c)},_parseCmd:function(c){for(var d=this._pos;d<c.length;d++){if(a.jqx.string.containsIgnoreCase(this._cmds,c[d])){this._pos=d+1;this._lastCmd=c[d];return this._lastCmd}if(c[d]==" "){this._pos++;continue}if(c[d]>="0"&&c[d]<="9"){this._pos=d;if(this._lastCmd==""){break}else{return this._lastCmd}}}return undefined},_toAbsolutePoint:function(c){return{x:this._currentPoint.x+c.x,y:this._currentPoint.y+c.y}},path:function(E,N){var B=N.d;this._pos=0;this._lastCmd="";var n=undefined;this._currentPoint={x:0,y:0};E.beginPath();var I=0;while(this._pos<B.length){var H=this._parseCmd(B);if(H==undefined){break}if(H=="M"||H=="m"){var F=this._parsePoint(B);if(F==undefined){break}E.moveTo(F.x,F.y);this._currentPoint=F;if(n==undefined){n=F}continue}if(H=="L"||H=="l"){var F=this._parsePoint(B);if(F==undefined){break}E.lineTo(F.x,F.y);this._currentPoint=F;continue}if(H=="A"||H=="a"){var j=this._parseNumber(B);var h=this._parseNumber(B);var L=this._parseNumber(B)*(Math.PI/180);var P=this._parseNumber(B);var f=this._parseNumber(B);var q=this._parsePoint(B);if(this._isRelativeCmd(H)){q=this._toAbsolutePoint(q)}if(j==0||h==0){continue}var k=this._currentPoint;var K={x:Math.cos(L)*(k.x-q.x)/2+Math.sin(L)*(k.y-q.y)/2,y:-Math.sin(L)*(k.x-q.x)/2+Math.cos(L)*(k.y-q.y)/2};var l=Math.pow(K.x,2)/Math.pow(j,2)+Math.pow(K.y,2)/Math.pow(h,2);if(l>1){j*=Math.sqrt(l);h*=Math.sqrt(l)}var t=(P==f?-1:1)*Math.sqrt(((Math.pow(j,2)*Math.pow(h,2))-(Math.pow(j,2)*Math.pow(K.y,2))-(Math.pow(h,2)*Math.pow(K.x,2)))/(Math.pow(j,2)*Math.pow(K.y,2)+Math.pow(h,2)*Math.pow(K.x,2)));if(isNaN(t)){t=0}var J={x:t*j*K.y/h,y:t*-h*K.x/j};var D={x:(k.x+q.x)/2+Math.cos(L)*J.x-Math.sin(L)*J.y,y:(k.y+q.y)/2+Math.sin(L)*J.x+Math.cos(L)*J.y};var C=function(i){return Math.sqrt(Math.pow(i[0],2)+Math.pow(i[1],2))};var z=function(m,i){return(m[0]*i[0]+m[1]*i[1])/(C(m)*C(i))};var O=function(m,i){return(m[0]*i[1]<m[1]*i[0]?-1:1)*Math.acos(z(m,i))};var G=O([1,0],[(K.x-J.x)/j,(K.y-J.y)/h]);var p=[(K.x-J.x)/j,(K.y-J.y)/h];var o=[(-K.x-J.x)/j,(-K.y-J.y)/h];var M=O(p,o);if(z(p,o)<=-1){M=Math.PI}if(z(p,o)>=1){M=0}if(f==0&&M>0){M=M-2*Math.PI}if(f==1&&M<0){M=M+2*Math.PI}var z=(j>h)?j:h;var A=(j>h)?1:j/h;var w=(j>h)?h/j:1;E.translate(D.x,D.y);E.rotate(L);E.scale(A,w);E.arc(0,0,z,G,G+M,1-f);E.scale(1/A,1/w);E.rotate(-L);E.translate(-D.x,-D.y);continue}if((H=="Z"||H=="z")&&n!=undefined){E.lineTo(n.x,n.y);this._currentPoint=n;continue}if(H=="C"||H=="c"){var e=this._parsePoint(B);var d=this._parsePoint(B);var c=this._parsePoint(B);E.bezierCurveTo(e.x,e.y,d.x,d.y,c.x,c.y);this._currentPoint=c;continue}}E.fill();E.stroke();E.closePath()},text:function(A,G){var p=a.jqx.ptrnd(G.x);var o=a.jqx.ptrnd(G.y);var v=a.jqx.ptrnd(G.width);var t=a.jqx.ptrnd(G.height);var s=G.halign;var k=G.valign;var D=G.angle;var c=G.rotateAround;var f=G.textPartsInfo;var e=f.parts;var E=G.clip;if(E==undefined){E=true}A.save();if(!s){s="center"}if(!k){k="center"}if(E){A.rect(p,o,v,t);A.clip()}var H=G.textWidth;var l=G.textHeight;var q=v||0;var C=t||0;A.fillStyle=G.color;A.font=G.fontWeight+" "+G.fontSize+" "+G.fontFamily;if(!D||D==0){o+=l;if(k=="center"||k=="middle"){o+=(C-l)/2}else{if(k=="bottom"){o+=C-l}}if(!v){v=H}if(!t){t=l}var n=0;for(var B=e.length-1;B>=0;B--){var u=e[B];var I=p;var m=e[B].width;var d=e[B].height;if(s=="center"){I+=(q-m)/2}else{if(s=="right"){I+=(q-m)}}A.fillText(u.text,I,o+n);n-=u.height+(B>0?4:0)}A.restore();return}var z=a.jqx.commonRenderer.alignTextInRect(p,o,v,t,H,l,s,k,D,c);p=z.x;o=z.y;var j=D*Math.PI*2/360;A.translate(p,o);A.rotate(j);var n=0;var F=f.width;for(var B=e.length-1;B>=0;B--){var I=0;if(s=="center"){I+=(F-e[B].width)/2}else{if(s=="right"){I+=(F-e[B].width)}}A.fillText(e[B].text,I,n);n-=e[B].height+4}A.restore()}},refresh:function(){this.ctx.clearRect(0,0,this.canvas[0].width,this.canvas[0].height);for(var c in this._elements){var d=this._elements[c];this._renderers.setFillStyle(this,d);this._renderers.setStroke(this,d);this._renderers[this._elements[c].type](this.ctx,d)}}};a.jqx.createRenderer=function(c,e){var d=c;var f=d.renderer=null;if(document.createElementNS&&(d.renderEngine!="HTML5"&&d.renderEngine!="VML")){f=new a.jqx.svgRenderer();if(!f.init(e)){if(d.renderEngine=="SVG"){throw"Your browser does not support SVG"}return null}}if(f==null&&d.renderEngine!="HTML5"){f=new a.jqx.vmlRenderer();if(!f.init(e)){if(d.renderEngine=="VML"){throw"Your browser does not support VML"}return null}d._isVML=true}if(f==null&&(d.renderEngine=="HTML5"||d.renderEngine==undefined)){f=new a.jqx.HTML5Renderer();if(!f.init(e)){throw"Your browser does not support HTML5 Canvas"}}d.renderer=f;return f},a.jqx._widgetToImage=function(q,k,f,o,i,h){var m=q;if(!m){return false}if(f==undefined||f==""){f="image."+k}var n=m.renderEngine;var d=m.enableAnimations;m.enableAnimations=false;m.renderEngine="HTML5";if(m.renderEngine!=n){try{m.refresh()}catch(j){m.renderEngine=n;m.refresh();m.enableAnimations=d;return false}}var c=m.renderer.getContainer().find("canvas")[0];var l=true;if(a.isFunction(h)){l=h(q,c)}var p=true;if(l){p=a.jqx.exportImage(c,k,f,o,i)}if(m.renderEngine!=n){m.renderEngine=n;m.refresh();m.enableAnimations=d}return p};a.jqx.getByPriority=function(c){var e=undefined;for(var d=0;d<c.length&&e==undefined;d++){if(e==undefined&&c[d]!=undefined){e=c[d]}}return e};a.jqx.exportImage=function(f,o,h,s,k){if(!f){return false}var m=o.toLowerCase()==="pdf";if(m){o="jpeg"}if(h==undefined||h==""){h="image."+o}if(s==undefined||s==""){throw"Please specifiy export server"}var u=true;try{if(f){var i=f.toDataURL("image/"+o);if(m){if(!a.jqx.pdfExport){a.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var j=595;switch(a.jqx.pdfExport.paperSize){case"legal":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=1008}break;case"letter":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=792}break;case"a3":var j=841;if(a.jqx.pdfExport.orientation!=="portrait"){j=1190}break;case"a4":var j=595;if(a.jqx.pdfExport.orientation!=="portrait"){j=842}break;case"a5":var j=420;if(a.jqx.pdfExport.orientation!=="portrait"){j=595}break}var l=a(f).width();var p=l*72/96;if(p>=j-20){p=j-20}var q=new pdfDataExport(a.jqx.pdfExport.orientation,"pt",a.jqx.pdfExport.paperSize);q.addImage(i,"JPEG",10,10,p,0);q.save(h);return}i=i.replace("data:image/"+o+";base64,","");if(k){a.ajax({dataType:"string",url:s,type:"POST",data:{content:i,fname:h},async:false,success:function(v,e,w){u=true},error:function(v,e,w){u=false}})}else{var d=document.createElement("form");d.method="POST";d.action=s;d.style.display="none";document.body.appendChild(d);var t=document.createElement("input");t.name="fname";t.value=h;t.style.display="none";var c=document.createElement("input");c.name="content";c.value=i;c.style.display="none";d.appendChild(t);d.appendChild(c);d.submit();document.body.removeChild(d);u=true}}}catch(n){u=false}return u}})(jqxBaseFramework);(function(a){jqxPlot=function(){};jqxPlot.prototype={get:function(e,c,d){return d!==undefined?e[c][d]:e[c]},min:function(h,e){var d=NaN;for(var c=0;c<h.length;c++){var f=this.get(h,c,e);if(isNaN(d)||f<d){d=f}}return d},max:function(h,e){var c=NaN;for(var d=0;d<h.length;d++){var f=this.get(h,d,e);if(isNaN(c)||f>c){c=f}}return c},sum:function(h,d){var e=0;for(var c=0;c<h.length;c++){var f=this.get(h,c,d);if(!isNaN(f)){e+=f}}return e},count:function(h,d){var e=0;for(var c=0;c<h.length;c++){var f=this.get(h,c,d);if(!isNaN(f)){e++}}return e},avg:function(d,c){return this.sum(d,c)/Math.max(1,count(d,c))},filter:function(f,e){if(!e){return f}var c=[];for(var d=0;d<f.length;d++){if(e(f[d])){c.push(f[d])}}return c},scale:function(e,k,l,i){if(isNaN(e)||e<Math.min(k[0],k[1])||e>Math.max(k[0],k[1])){return NaN}var p=NaN;var n=1;if(!i||(i.type===undefined||i.type!="logarithmic")){var m=Math.abs(k[1]-k[0]);if(!m){m=1}n=Math.abs(e-Math.min(k[0],k[1]))/m}else{if(i.type==="logarithmic"){var f=i.base;if(isNaN(f)){f=10}var j=Math.min(k[0],k[1]);if(j<=0){j=1}var o=Math.max(k[0],k[1]);if(o<=0){o=1}var h=a.jqx._rnd(a.jqx.log(o,f),1,o<1?false:true);o=Math.pow(f,h);var d=a.jqx._rnd(a.jqx.log(j,f),1,false);j=Math.pow(f,d);var c=a.jqx.log(e,f);n=Math.abs(c-d)/(h-d)}}p=Math.min(l[0],l[1])+n*Math.abs(l[1]-l[0]);if(i&&i.flip){p=Math.max(l[0],l[1])-p}return p},axis:function(q,s,m){if(m<=1){return[s,q]}var h=q;var k=s;if(isNaN(m)||m<2){m=2}var c=0;while(Math.round(q)!=q&&Math.round(s)!=s&&c<10){q*=10;s*=10;c++}var n=(s-q)/m;while(c<10&&Math.round(n)!=n){q*=10;s*=10;n*=10;c++}var w=[1,2,5];var j=0;var t=0;while(true){var o=t%w.length;var f=Math.floor(t/w.length);var p=Math.pow(10,f)*w[o];o=(t+1)%w.length;f=Math.floor((t+1)/w.length);var l=Math.pow(10,f)*w[o];if(n>=p&&n<l){break}t++}var e=l;var u=[];var v=a.jqx._rnd(q,e,false);var d=c<=0?1:Math.pow(10,c);while(v<s+e){u.push(v/d);v+=e}return u}}})(jqxBaseFramework);(function(a){a.jqx.toGreyScale=function(c){if(c.indexOf("#")==-1){return c}var d=a.jqx.cssToRgb(c);d[0]=d[1]=d[2]=Math.round(0.3*d[0]+0.59*d[1]+0.11*d[2]);var e=a.jqx.rgbToHex(d[0],d[1],d[2]);return"#"+e[0]+e[1]+e[2]},a.jqx.adjustColor=function(f,e){if(typeof(f)!="string"){return"#000000"}if(f.indexOf("#")==-1){return f}var h=a.jqx.cssToRgb(f);var d=a.jqx.rgbToHsl(h);d[2]=Math.min(1,d[2]*e);d[1]=Math.min(1,d[1]*e*1.1);h=a.jqx.hslToRgb(d);var f="#";for(var j=0;j<3;j++){var k=Math.round(h[j]);k=a.jqx.decToHex(k);if(k.toString().length==1){f+="0"}f+=k}return f.toUpperCase()};a.jqx.decToHex=function(c){return c.toString(16)};a.jqx.hexToDec=function(c){return parseInt(c,16)};a.jqx.rgbToHex=function(e,d,c){return[a.jqx.decToHex(e),a.jqx.decToHex(d),a.jqx.decToHex(c)]};a.jqx.hexToRgb=function(d,f,c){return[a.jqx.hexToDec(d),a.jqx.hexToDec(f),a.jqx.hexToDec(c)]};a.jqx.cssToRgb=function(c){if(c.indexOf("rgb")<=-1){return a.jqx.hexToRgb(c.substring(1,3),c.substring(3,5),c.substring(5,7))}return c.substring(4,c.length-1).split(",")};a.jqx.hslToRgb=function(d){var f=parseFloat(d[0]);var e=parseFloat(d[1]);var c=parseFloat(d[2]);if(e==0){r=g=b=c}else{var i=c<0.5?c*(1+e):c+e-c*e;var j=2*c-i;r=a.jqx.hueToRgb(j,i,f+1/3);g=a.jqx.hueToRgb(j,i,f);b=a.jqx.hueToRgb(j,i,f-1/3)}return[r*255,g*255,b*255]};a.jqx.hueToRgb=function(e,d,c){if(c<0){c+=1}if(c>1){c-=1}if(c<1/6){return e+(d-e)*6*c}else{if(c<1/2){return d}else{if(c<2/3){return e+(d-e)*(2/3-c)*6}}}return e};a.jqx.rgbToHsl=function(j){var c=parseFloat(j[0])/255;var i=parseFloat(j[1])/255;var k=parseFloat(j[2])/255;var m=Math.max(c,i,k),e=Math.min(c,i,k);var f,o,d=(m+e)/2;if(m==e){f=o=0}else{var n=m-e;o=d>0.5?n/(2-m-e):n/(m+e);switch(m){case c:f=(i-k)/n+(i<k?6:0);break;case i:f=(k-c)/n+2;break;case k:f=(c-i)/n+4;break}f/=6}return[f,o,d]};a.jqx.swap=function(c,e){var d=c;c=e;e=d};a.jqx.getNum=function(c){if(!a.isArray(c)){if(isNaN(c)){return 0}}else{for(var d=0;d<c.length;d++){if(!isNaN(c[d])){return c[d]}}}return 0};a.jqx._ptdist=function(d,f,c,e){return Math.sqrt((c-d)*(c-d)+(e-f)*(e-f))};a.jqx._ptrnd=function(d){if(!document.createElementNS){if(Math.round(d)==d){return d}return a.jqx._rnd(d,1,false,true)}var c=a.jqx._rnd(d,0.5,false,true);if(Math.abs(c-Math.round(c))!=0.5){return c>d?c-0.5:c+0.5}return c};a.jqx._ptRotate=function(e,k,d,j,h){var c=Math.sqrt(Math.pow(Math.abs(e-d),2)+Math.pow(Math.abs(k-j),2));var f=Math.asin((e-d)/c);var i=f+h;e=d+Math.cos(i)*c;k=j+Math.sin(i)*c;return{x:e,y:k}};a.jqx._rup=function(d){var c=Math.round(d);if(d>c){c++}return c};a.jqx.log=function(d,c){return Math.log(d)/(c?Math.log(c):1)};a.jqx._mod=function(d,c){var e=Math.abs(d>c?c:d);var f=1;if(e!=0){while(e*f<100){f*=10}}d=d*f;c=c*f;return(d%c)/f};a.jqx._rnd=function(e,h,f,d){if(isNaN(e)){return e}var c=e-((d==true)?e%h:a.jqx._mod(e,h));if(e==c){return c}if(f){if(e>c){c+=h}}else{if(c>e){c-=h}}return c};a.jqx.commonRenderer={pieSlicePath:function(l,k,i,t,C,D,e){if(!t){t=1}var n=Math.abs(C-D);var q=n>180?1:0;if(n>=360){D=C+359.99}var s=C*Math.PI*2/360;var j=D*Math.PI*2/360;var A=l,z=l,h=k,f=k;var o=!isNaN(i)&&i>0;if(o){e=0}if(e+i>0){if(e>0){var m=n/2+C;var B=m*Math.PI*2/360;l+=e*Math.cos(B);k-=e*Math.sin(B)}if(o){var w=i;A=l+w*Math.cos(s);h=k-w*Math.sin(s);z=l+w*Math.cos(j);f=k-w*Math.sin(j)}}var v=l+t*Math.cos(s);var u=l+t*Math.cos(j);var d=k-t*Math.sin(s);var c=k-t*Math.sin(j);var p="";if(o){p="M "+z+","+f;p+=" a"+i+","+i;p+=" 0 "+q+",1 "+(A-z)+","+(h-f);p+=" L"+v+","+d;p+=" a"+t+","+t;p+=" 0 "+q+",0 "+(u-v)+","+(c-d)}else{p="M "+u+","+c;p+=" a"+t+","+t;p+=" 0 "+q+",1 "+(v-u)+","+(d-c);p+=" L"+l+","+k+" Z"}return p},measureText:function(q,h,i,p,n){var f=n._getTextParts(q,h,i);var k=f.width;var c=f.height;if(false==p){c/=0.6}var d={};if(isNaN(h)){h=0}if(h==0){d={width:a.jqx._rup(k),height:a.jqx._rup(c)}}else{var m=h*Math.PI*2/360;var e=Math.abs(Math.sin(m));var l=Math.abs(Math.cos(m));var j=Math.abs(k*e+c*l);var o=Math.abs(k*l+c*e);d={width:a.jqx._rup(o),height:a.jqx._rup(j)}}if(p){d.textPartsInfo=f}return d},alignTextInRect:function(t,p,c,u,o,q,k,s,f,e){var m=f*Math.PI*2/360;var d=Math.sin(m);var l=Math.cos(m);var n=o*d;var j=o*l;if(k=="center"||k==""||k=="undefined"){t=t+c/2}else{if(k=="right"){t=t+c}}if(s=="center"||s=="middle"||s==""||s=="undefined"){p=p+u/2}else{if(s=="bottom"){p+=u-q/2}else{if(s=="top"){p+=q/2}}}e=e||"";var h="middle";if(e.indexOf("top")!=-1){h="top"}else{if(e.indexOf("bottom")!=-1){h="bottom"}}var i="center";if(e.indexOf("left")!=-1){i="left"}else{if(e.indexOf("right")!=-1){i="right"}}if(i=="center"){t-=j/2;p-=n/2}else{if(i=="right"){t-=j;p-=n}}if(h=="top"){t-=q*d;p+=q*l}else{if(h=="middle"){t-=q*d/2;p+=q*l/2}}t=a.jqx._rup(t);p=a.jqx._rup(p);return{x:t,y:p}}};a.jqx.svgRenderer=function(){};a.jqx.svgRenderer.prototype={_svgns:"http://www.w3.org/2000/svg",init:function(h){var f="<table id=tblChart cellspacing='0' cellpadding='0' border='0' align='left' valign='top'><tr><td colspan=2 id=tdTop></td></tr><tr><td id=tdLeft></td><td><div class='chartContainer' onselectstart='return false;'></div></td></tr></table>";h.append(f);this.host=h;var c=h.find(".chartContainer");c[0].style.width=h.width()+"px";c[0].style.height=h.height()+"px";var j;try{var d=document.createElementNS(this._svgns,"svg");d.setAttribute("id","svgChart");d.setAttribute("version","1.1");d.setAttribute("width","100%");d.setAttribute("height","100%");d.setAttribute("overflow","hidden");c[0].appendChild(d);this.canvas=d}catch(i){return false}this._id=new Date().getTime();this.clear();this._layout();this._runLayoutFix();return true},getType:function(){return"SVG"},refresh:function(){},_runLayoutFix:function(){var c=this;this._fixLayout()},_fixLayout:function(){var i=a(this.canvas).position();var e=(parseFloat(i.left)==parseInt(i.left));var c=(parseFloat(i.top)==parseInt(i.top));if(a.jqx.browser.msie){var e=true,c=true;var f=this.host;var d=0,h=0;while(f&&f.position&&f[0].parentNode){var j=f.position();d+=parseFloat(j.left)-parseInt(j.left);h+=parseFloat(j.top)-parseInt(j.top);f=f.parent()}e=parseFloat(d)==parseInt(d);c=parseFloat(h)==parseInt(h)}if(!e){this.host.find("#tdLeft")[0].style.width="0.5px"}if(!c){this.host.find("#tdTop")[0].style.height="0.5px"}},_layout:function(){var d=a(this.canvas).offset();var c=this.host.find(".chartContainer");this._width=Math.max(a.jqx._rup(this.host.width())-1,0);this._height=Math.max(a.jqx._rup(this.host.height())-1,0);c[0].style.width=this._width;c[0].style.height=this._height;this._fixLayout()},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeElement(this.canvas.firstElementChild)}this._defaultParent=undefined;this._defs=document.createElementNS(this._svgns,"defs");this._gradients={};this.canvas.appendChild(this._defs)},removeElement:function(e){if(undefined==e){return}this.removeHandler(e);try{while(e.firstChild){this.removeElement(e.firstChild)}if(e.parentNode){e.parentNode.removeChild(e)}else{this.canvas.removeChild(e)}}catch(d){var c=d}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElementNS(this._svgns,"g");c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(e){var f=document.createElementNS(this._svgns,"clipPath");var d=document.createElementNS(this._svgns,"rect");this.attr(d,{x:e.x,y:e.y,width:e.width,height:e.height,fill:"none"});this._clipId=this._clipId||0;f.id="cl"+this._id+"_"+(++this._clipId).toString();f.appendChild(d);this._defs.appendChild(f);return f},getWindowHref:function(){var d=a.jqx.browser;if(d&&d.browser=="msie"&&d.version<10){return""}var c=window.location.href;if(!c){return c}c=c.replace(/([\('\)])/g,"\\$1");c=c.replace(/#.*$/,"");return c},setClip:function(e,d){var c="url("+this.getWindowHref()+"#"+d.id+")";return this.attr(e,{"clip-path":c})},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},shape:function(c,f){var d=document.createElementNS(this._svgns,c);if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},_getTextParts:function(t,j,k){var h={width:0,height:0,parts:[]};if(undefined===t){return h}var o=0.6;var u=t.toString().split("<br>");var q=this._activeParent();var m=document.createElementNS(this._svgns,"text");this.attr(m,k);for(var l=0;l<u.length;l++){var d=u[l];var f=m.ownerDocument.createTextNode(d);m.appendChild(f);q.appendChild(m);var s;try{s=m.getBBox()}catch(p){}var n=a.jqx._rup(s.width);var c=a.jqx._rup(s.height*o);m.removeChild(f);h.width=Math.max(h.width,n);h.height+=c+(l>0?4:0);h.parts.push({width:n,height:c,text:d})}q.removeChild(m);return h},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(z,t,s,E,C,K,M,L,v,m,d){var B=this._measureText(z,K,M,true);var l=B.textPartsInfo;var j=l.parts;var D;if(!v){v="center"}if(!m){m="center"}if(j.length>1||L){D=this.beginGroup()}if(L){var k=this.createClipRect({x:a.jqx._rup(t)-1,y:a.jqx._rup(s)-1,width:a.jqx._rup(E)+2,height:a.jqx._rup(C)+2});this.setClip(D,k)}var q=this._activeParent();var O=0,n=0;var c=0.6;O=l.width;n=l.height;if(isNaN(E)||E<=0){E=O}if(isNaN(C)||C<=0){C=n}var u=E||0;var J=C||0;if(!K||K==0){s+=n;if(m=="center"||m=="middle"){s+=(J-n)/2}else{if(m=="bottom"){s+=J-n}}if(!E){E=O}if(!C){C=n}var q=this._activeParent();var p=0;for(var I=j.length-1;I>=0;I--){var A=document.createElementNS(this._svgns,"text");this.attr(A,M);this.attr(A,{cursor:"default"});var H=A.ownerDocument.createTextNode(j[I].text);A.appendChild(H);var P=t;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(u-o)/2}else{if(v=="right"){P+=(u-o)}}this.attr(A,{x:a.jqx._rup(P),y:a.jqx._rup(s+p),width:a.jqx._rup(o),height:a.jqx._rup(f)});q.appendChild(A);p-=j[I].height+4}if(D){this.endGroup();return D}return A}var F=a.jqx.commonRenderer.alignTextInRect(t,s,E,C,O,n,v,m,K,d);t=F.x;s=F.y;var G=this.shape("g",{transform:"translate("+t+","+s+")"});var e=this.shape("g",{transform:"rotate("+K+")"});G.appendChild(e);var p=0;for(var I=j.length-1;I>=0;I--){var N=document.createElementNS(this._svgns,"text");this.attr(N,M);this.attr(N,{cursor:"default"});var H=N.ownerDocument.createTextNode(j[I].text);N.appendChild(H);var P=0;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(l.width-o)/2}else{if(v=="right"){P+=(l.width-o)}}this.attr(N,{x:a.jqx._rup(P),y:a.jqx._rup(p),width:a.jqx._rup(o),height:a.jqx._rup(f)});e.appendChild(N);p-=f+4}q.appendChild(G);if(D){this.endGroup()}return G},line:function(e,h,d,f,i){var c=this.shape("line",{x1:e,y1:h,x2:d,y2:f});this.attr(c,i);return c},path:function(d,e){var c=this.shape("path");c.setAttribute("d",d);if(e){this.attr(c,e)}return c},rect:function(c,j,d,f,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=Math.max(1,a.jqx._rnd(d,1,false));f=Math.max(1,a.jqx._rnd(f,1,false));var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},circle:function(c,h,e,f){var d=this.shape("circle",{cx:c,cy:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,e,h,c,k,d){var f=this.pieSlicePath(l,j,i,e,h,c,k);var m=this.shape("path");m.setAttribute("d",f);if(d){this.attr(m,d)}return m},attr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=e[d]}else{c.setAttribute(d,e[d])}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=""}else{c.removeAttribute(e[d])}}},getAttr:function(d,c){return d.getAttribute(c)},_gradients:{},_toLinearGradient:function(f,k,l){var d="grd"+this._id+f.replace("#","")+(k?"v":"h");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"linearGradient");this.attr(e,{x1:"0%",y1:"0%",x2:k?"0%":"100%",y2:k?"100%":"0%",id:d});for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c},_toRadialGradient:function(f,l,k){var d="grd"+this._id+f.replace("#","")+"r"+(k!=undefined?k.key:"");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"radialGradient");if(k==undefined){this.attr(e,{cx:"50%",cy:"50%",r:"100%",fx:"50%",fy:"50%",id:d})}else{this.attr(e,{cx:k.x,cy:k.y,r:k.outerRadius,id:d,gradientUnits:"userSpaceOnUse"})}for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c}};a.jqx.vmlRenderer=function(){};a.jqx.vmlRenderer.prototype={init:function(j){var h="<div class='chartContainer' style=\"position:relative;overflow:hidden;\"><div>";j.append(h);this.host=j;var c=j.find(".chartContainer");c[0].style.width=j.width()+"px";c[0].style.height=j.height()+"px";var f=true;try{for(var d=0;d<document.namespaces.length;d++){if(document.namespaces[d].name=="v"&&document.namespaces[d].urn=="urn:schemas-microsoft-com:vml"){f=false;break}}}catch(k){return false}if(a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9&&(document.childNodes&&document.childNodes.length>0&&document.childNodes[0].data&&document.childNodes[0].data.indexOf("DOCTYPE")!=-1)){if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml")}this._ie8mode=true}else{if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().cssText="v\\:* { behavior: url(#default#VML); display: inline-block; }"}}this.canvas=c[0];this._width=Math.max(a.jqx._rup(c.width()),0);this._height=Math.max(a.jqx._rup(c.height()),0);c[0].style.width=this._width+2;c[0].style.height=this._height+2;this._id=new Date().getTime();this.clear();return true},getType:function(){return"VML"},refresh:function(){},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeHandler(this.canvas.firstElementChild);this.canvas.removeChild(this.canvas.firstElementChild)}this._gradients={};this._defaultParent=undefined},removeElement:function(c){if(c!=null){this.removeHandler(c);c.parentNode.removeChild(c)}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElement("v:group");d.style.position="absolute";d.coordorigin="0,0";d.coordsize=this._width+","+this._height;d.style.left=0;d.style.top=0;d.style.width=this._width;d.style.height=this._height;c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(c){var d=document.createElement("div");d.style.height=(c.height+1)+"px";d.style.width=(c.width+1)+"px";d.style.position="absolute";d.style.left=c.x+"px";d.style.top=c.y+"px";d.style.overflow="hidden";this._clipId=this._clipId||0;d.id="cl"+this._id+"_"+(++this._clipId).toString();this._activeParent().appendChild(d);return d},setClip:function(d,c){},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},_getTextParts:function(q,h,j){var f={width:0,height:0,parts:[]};var o=0.6;var s=q.toString().split("<br>");var p=this._activeParent();var l=document.createElement("v:textbox");this.attr(l,j);p.appendChild(l);for(var k=0;k<s.length;k++){var d=s[k];var e=document.createElement("span");e.appendChild(document.createTextNode(d));l.appendChild(e);if(j&&j["class"]){e.className=j["class"]}var n=a(l);var m=a.jqx._rup(n.width());var c=a.jqx._rup(n.height()*o);if(c==0&&a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9){var t=n.css("font-size");if(t){c=parseInt(t);if(isNaN(c)){c=0}}}l.removeChild(e);f.width=Math.max(f.width,m);f.height+=c+(k>0?2:0);f.parts.push({width:m,height:c,text:d})}p.removeChild(l);return f},_measureText:function(f,e,d,c){if(Math.abs(e)>45){e=90}else{e=0}return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(u,p,o,D,z,J,L,K,t,k){var E;if(L&&L.stroke){E=L.stroke}if(E==undefined){E="black"}var v=this._measureText(u,J,L,true);var f=v.textPartsInfo;var c=f.parts;var M=v.width;var l=v.height;if(isNaN(D)||D==0){D=M}if(isNaN(z)||z==0){z=l}var B;if(!t){t="center"}if(!k){k="center"}if(c.length>0||K){B=this.beginGroup()}if(K){var d=this.createClipRect({x:a.jqx._rup(p),y:a.jqx._rup(o),width:a.jqx._rup(D),height:a.jqx._rup(z)});this.setClip(B,d)}var n=this._activeParent();var s=D||0;var I=z||0;if(Math.abs(J)>45){J=90}else{J=0}var A=0,H=0;if(t=="center"){A+=(s-M)/2}else{if(t=="right"){A+=(s-M)}}if(k=="center"){H=(I-l)/2}else{if(k=="bottom"){H=I-l}}if(J==0){o+=l+H;p+=A}else{p+=M+A;o+=H}var m=0,N=0;var e;for(var G=c.length-1;G>=0;G--){var C=c[G];var q=(M-C.width)/2;if(J==0&&t=="left"){q=0}else{if(J==0&&t=="right"){q=M-C.width}else{if(J==90){q=(l-C.width)/2}}}var j=m-C.height;H=J==90?q:j;A=J==90?j:q;e=document.createElement("v:textbox");e.style.position="absolute";e.style.left=a.jqx._rup(p+A);e.style.top=a.jqx._rup(o+H);e.style.width=a.jqx._rup(C.width);e.style.height=a.jqx._rup(C.height);if(J==90){e.style.filter="progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";e.style.height=a.jqx._rup(C.height)+5}var F=document.createElement("span");F.appendChild(document.createTextNode(C.text));if(L&&L["class"]){F.className=L["class"]}e.appendChild(F);n.appendChild(e);m-=C.height+(G>0?2:0)}if(B){this.endGroup();return n}return e},shape:function(c,f){var d=document.createElement(this._createElementMarkup(c));if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},line:function(f,i,e,h,j){var c="M "+f+","+i+" L "+e+","+h+" X E";var d=this.path(c);this.attr(d,j);return d},_createElementMarkup:function(c){var d="<v:"+c+' style=""></v:'+c+">";if(this._ie8mode){d=d.replace('style=""','style="behavior: url(#default#VML);"')}return d},path:function(d,e){var c=document.createElement(this._createElementMarkup("shape"));c.style.position="absolute";c.coordsize=this._width+" "+this._height;c.coordorigin="0 0";c.style.width=parseInt(this._width);c.style.height=parseInt(this._height);c.style.left=0+"px";c.style.top=0+"px";c.setAttribute("path",d);this._activeParent().appendChild(c);if(e){this.attr(c,e)}return c},rect:function(c,j,d,e,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=a.jqx._rup(d);e=a.jqx._rup(e);var f=this.shape("rect",i);f.style.position="absolute";f.style.left=c;f.style.top=j;f.style.width=d;f.style.height=e;f.strokeweight=0;if(i){this.attr(f,i)}return f},circle:function(c,h,e,f){var d=this.shape("oval");c=a.jqx._ptrnd(c-e);h=a.jqx._ptrnd(h-e);e=a.jqx._rup(e);d.style.position="absolute";d.style.left=c;d.style.top=h;d.style.width=e*2;d.style.height=e*2;if(f){this.attr(d,f)}return d},updateCircle:function(e,c,f,d){if(c==undefined){c=parseFloat(e.style.left)+parseFloat(e.style.width)/2}if(f==undefined){f=parseFloat(e.style.top)+parseFloat(e.style.height)/2}if(d==undefined){d=parseFloat(e.width)/2}c=a.jqx._ptrnd(c-d);f=a.jqx._ptrnd(f-d);d=a.jqx._rup(d);e.style.left=c;e.style.top=f;e.style.width=d*2;e.style.height=d*2},pieSlicePath:function(m,l,j,u,E,F,e){if(!u){u=1}var o=Math.abs(E-F);var s=o>180?1:0;if(o>360){E=0;F=360}var t=E*Math.PI*2/360;var k=F*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e>0){var n=o/2+E;var D=n*Math.PI*2/360;m+=e*Math.cos(D);l-=e*Math.sin(D)}if(p){var z=j;B=a.jqx._ptrnd(m+z*Math.cos(t));h=a.jqx._ptrnd(l-z*Math.sin(t));A=a.jqx._ptrnd(m+z*Math.cos(k));f=a.jqx._ptrnd(l-z*Math.sin(k))}var w=a.jqx._ptrnd(m+u*Math.cos(t));var v=a.jqx._ptrnd(m+u*Math.cos(k));var d=a.jqx._ptrnd(l-u*Math.sin(t));var c=a.jqx._ptrnd(l-u*Math.sin(k));u=a.jqx._ptrnd(u);j=a.jqx._ptrnd(j);m=a.jqx._ptrnd(m);l=a.jqx._ptrnd(l);var i=Math.round(E*65535);var C=Math.round((F-E)*65536);if(j<0){j=1}var q="";if(p){q="M"+B+" "+h;q+=" AE "+m+" "+l+" "+j+" "+j+" "+i+" "+C;q+=" L "+v+" "+c;i=Math.round((E-F)*65535);C=Math.round(F*65536);q+=" AE "+m+" "+l+" "+u+" "+u+" "+C+" "+i;q+=" L "+B+" "+h}else{q="M"+m+" "+l;q+=" AE "+m+" "+l+" "+u+" "+u+" "+i+" "+C}q+=" X E";return q},pieslice:function(m,k,j,f,i,c,l,e){var h=this.pieSlicePath(m,k,j,f,i,c,l);var d=this.path(h,e);if(e){this.attr(d,e)}return d},_keymap:[{svg:"fill",vml:"fillcolor"},{svg:"stroke",vml:"strokecolor"},{svg:"stroke-width",vml:"strokeweight"},{svg:"stroke-dasharray",vml:"dashstyle"},{svg:"fill-opacity",vml:"fillopacity"},{svg:"stroke-opacity",vml:"strokeopacity"},{svg:"opacity",vml:"opacity"},{svg:"cx",vml:"style.left"},{svg:"cy",vml:"style.top"},{svg:"height",vml:"style.height"},{svg:"width",vml:"style.width"},{svg:"x",vml:"style.left"},{svg:"y",vml:"style.top"},{svg:"d",vml:"v"},{svg:"display",vml:"style.display"}],_translateParam:function(c){for(var d in this._keymap){if(this._keymap[d].svg==c){return this._keymap[d].vml}}return c},attr:function(d,f){if(!d||!f){return}for(var e in f){var c=this._translateParam(e);if(undefined==f[e]){continue}if(c=="fillcolor"&&f[e].indexOf("grd")!=-1){d.type=f[e]}else{if(c=="fillcolor"&&f[e]=="transparent"){d.style.filter="alpha(opacity=0)";d["-ms-filter"]="progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"}else{if(c=="opacity"||c=="fillopacity"){if(d.fill){d.fill.opacity=f[e]}}else{if(c=="textContent"){d.children[0].innerText=f[e]}else{if(c=="dashstyle"){d.dashstyle=f[e].replace(","," ")}else{if(c.indexOf("style.")==-1){d[c]=f[e]}else{d.style[c.replace("style.","")]=f[e]}}}}}}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){c.removeAttribute(e[d])}},getAttr:function(e,d){var c=this._translateParam(d);if(c=="opacity"||c=="fillopacity"){if(e.fill){return e.fill.opacity}else{return 1}}if(c.indexOf("style.")==-1){return e[c]}return e.style[c.replace("style.","")]},_gradients:{},_toRadialGradient:function(c,e,d){return c},_toLinearGradient:function(j,m,n){if(this._ie8mode){return j}var e="grd"+j.replace("#","")+(m?"v":"h");var f="#"+e+"";if(this._gradients[f]){return f}var h=document.createElement(this._createElementMarkup("fill"));h.type="gradient";h.method="linear";h.angle=m?0:90;var d="";for(var k=0;k<n.length;k++){var l=n[k];if(l>0){d+=", "}d+=l[0]+"% "+a.jqx.adjustColor(j,l[1])}h.colors=d;var c=document.createElement(this._createElementMarkup("shapetype"));c.appendChild(h);c.id=e;this.canvas.appendChild(c);return f}};a.jqx.HTML5Renderer=function(){};a.jqx.ptrnd=function(d){if(Math.abs(Math.round(d)-d)==0.5){return d}var c=Math.round(d);if(c<d){c=c-1}return c+0.5};a.jqx.HTML5Renderer.prototype={_elements:{},init:function(c){try{this.host=c;this.host.append("<canvas id='__jqxCanvasWrap' style='width:100%; height: 100%;'/>");this.canvas=c.find("#__jqxCanvasWrap");this.canvas[0].width=c.width();this.canvas[0].height=c.height();this.ctx=this.canvas[0].getContext("2d")}catch(d){return false}return true},getType:function(){return"HTML5"},getContainer:function(){if(this.canvas&&this.canvas.length==1){return this.canvas}return undefined},getRect:function(){return{x:0,y:0,width:this.canvas[0].width-1,height:this.canvas[0].height-1}},beginGroup:function(){},endGroup:function(){},setClip:function(){},createClipRect:function(c){},addHandler:function(c,e,d){},removeHandler:function(c,e,d){},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},clear:function(){this._elements={};this._maxId=0;this._renderers._gradients={};this._gradientId=0},removeElement:function(c){if(undefined==c){return}if(this._elements[c.id]){delete this._elements[c.id]}},_maxId:0,shape:function(c,f){var d={type:c,id:this._maxId++};for(var e in f){d[e]=f[e]}this._elements[d.id]=d;return d},attr:function(c,e){for(var d in e){c[d]=e[d]}},removeAttr:function(c,e){for(var d in e){delete c[e[d]]}},rect:function(c,j,d,f,i){if(isNaN(c)){throw'Invalid value for "x"'}if(isNaN(j)){throw'Invalid value for "y"'}if(isNaN(d)){throw'Invalid value for "width"'}if(isNaN(f)){throw'Invalid value for "height"'}var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},path:function(c,e){var d=this.shape("path",e);this.attr(d,{d:c});return d},line:function(d,f,c,e,h){return this.path("M "+d+","+f+" L "+c+","+e,h)},circle:function(c,h,e,f){var d=this.shape("circle",{x:c,y:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,f,h,c,k,d){var e=this.path(this.pieSlicePath(l,j,i,f,h,c,k),d);this.attr(e,{x:l,y:j,innerRadius:i,outerRadius:f,angleFrom:h,angleTo:c});return e},_getCSSStyle:function(d){var k=document.styleSheets;try{for(var f=0;f<k.length;f++){for(var c=0;k[f].cssRules&&c<k[f].cssRules.length;c++){if(k[f].cssRules[c].selectorText.indexOf(d)!=-1){return k[f].cssRules[c].style}}}}catch(h){}return{}},_getTextParts:function(s,h,j){var n="Arial";var t="10pt";var o="";if(j&&j["class"]){var c=this._getCSSStyle(j["class"]);if(c.fontSize){t=c.fontSize}if(c.fontFamily){n=c.fontFamily}if(c.fontWeight){o=c.fontWeight}}this.ctx.font=o+" "+t+" "+n;var f={width:0,height:0,parts:[]};var m=0.6;var q=s.toString().split("<br>");for(var k=0;k<q.length;k++){var e=q[k];var l=this.ctx.measureText(e).width;var p=document.createElement("span");p.font=this.ctx.font;p.textContent=e;document.body.appendChild(p);var d=p.offsetHeight*m;document.body.removeChild(p);f.width=Math.max(f.width,a.jqx._rup(l));f.height+=d+(k>0?4:0);f.parts.push({width:l,height:d,text:e})}return f},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(o,n,l,d,p,h,i,e,j,m,f){var q=this.shape("text",{text:o,x:n,y:l,width:d,height:p,angle:h,clip:e,halign:j,valign:m,rotateAround:f});if(i){this.attr(q,i)}q.fontFamily="Arial";q.fontSize="10pt";q.fontWeight="";q.color="#000000";if(i&&i["class"]){var c=this._getCSSStyle(i["class"]);q.fontFamily=c.fontFamily||q.fontFamily;q.fontSize=c.fontSize||q.fontSize;q.fontWeight=c.fontWeight||q.fontWeight;q.color=c.color||q.color}var k=this._measureText(o,0,i,true);this.attr(q,{textPartsInfo:k.textPartsInfo,textWidth:k.width,textHeight:k.height});if(d<=0||isNaN(d)){this.attr(q,{width:k.width})}if(p<=0||isNaN(p)){this.attr(q,{height:k.height})}return q},_toLinearGradient:function(d,j,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,j?"vertical":"horizontal",c);return e},_toRadialGradient:function(d,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,"radial",c);return e},_gradientId:0,createGradient:function(e,d,c){this._renderers.createGradient(e,d,c)},_renderers:{_gradients:{},createGradient:function(e,d,c){this._gradients[e]={orientation:d,colorStops:c}},setStroke:function(c,d){c.strokeStyle=d.stroke||"transparent";c.lineWidth=d["stroke-width"]||1;if(d["fill-opacity"]!=undefined){c.globalAlpha=d["fill-opacity"]}else{if(d.opacity!=undefined){c.globalAlpha=d.opacity}else{c.globalAlpha=1}}if(c.setLineDash){if(d["stroke-dasharray"]){c.setLineDash(d["stroke-dasharray"].split(","))}else{c.setLineDash([])}}},setFillStyle:function(o,f){o.fillStyle="transparent";if(f["fill-opacity"]!=undefined){o.globalAlpha=f["fill-opacity"]}else{if(f.opacity!=undefined){o.globalAlpha=f.opacity}else{o.globalAlpha=1}}if(f.fill&&f.fill.indexOf("#")==-1&&this._gradients[f.fill]){var m=this._gradients[f.fill].orientation!="horizontal";var j=this._gradients[f.fill].orientation=="radial";var d=a.jqx.ptrnd(f.x);var n=a.jqx.ptrnd(f.y);var c=a.jqx.ptrnd(f.x+(m?0:f.width));var k=a.jqx.ptrnd(f.y+(m?f.height:0));var l;if((f.type=="circle"||f.type=="path")&&j){x=a.jqx.ptrnd(f.x);y=a.jqx.ptrnd(f.y);r1=f.innerRadius||0;r2=f.outerRadius||f.r||0;l=o.createRadialGradient(x,y,r1,x,y,r2)}if(!j){if(isNaN(d)||isNaN(c)||isNaN(n)||isNaN(k)){d=0;n=0;c=m?0:o.canvas.width;k=m?o.canvas.height:0}l=o.createLinearGradient(d,n,c,k)}var e=this._gradients[f.fill].colorStops;for(var h=0;h<e.length;h++){l.addColorStop(e[h].percent,e[h].color)}o.fillStyle=l}else{if(f.fill){o.fillStyle=f.fill}}},rect:function(c,d){if(d.width==0||d.height==0){return}c.fillRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height);c.strokeRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height)},circle:function(c,d){if(d.r==0){return}c.beginPath();c.arc(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.r,0,Math.PI*2,false);c.closePath();c.fill();c.stroke()},_parsePoint:function(d){var c=this._parseNumber(d);var e=this._parseNumber(d);return({x:c,y:e})},_parseNumber:function(e){var f=false;for(var c=this._pos;c<e.length;c++){if((e[c]>="0"&&e[c]<="9")||e[c]=="."||(e[c]=="-"&&!f)){f=true;continue}if(!f&&(e[c]==" "||e[c]==",")){this._pos++;continue}break}var d=parseFloat(e.substring(this._pos,c));if(isNaN(d)){return undefined}this._pos=c;return d},_pos:0,_cmds:"mlcaz",_lastCmd:"",_isRelativeCmd:function(c){return a.jqx.string.contains(this._cmds,c)},_parseCmd:function(c){for(var d=this._pos;d<c.length;d++){if(a.jqx.string.containsIgnoreCase(this._cmds,c[d])){this._pos=d+1;this._lastCmd=c[d];return this._lastCmd}if(c[d]==" "){this._pos++;continue}if(c[d]>="0"&&c[d]<="9"){this._pos=d;if(this._lastCmd==""){break}else{return this._lastCmd}}}return undefined},_toAbsolutePoint:function(c){return{x:this._currentPoint.x+c.x,y:this._currentPoint.y+c.y}},_currentPoint:{x:0,y:0},path:function(E,N){var B=N.d;this._pos=0;this._lastCmd="";var n=undefined;this._currentPoint={x:0,y:0};E.beginPath();var I=0;while(this._pos<B.length){var H=this._parseCmd(B);if(H==undefined){break}if(H=="M"||H=="m"){var F=this._parsePoint(B);if(F==undefined){break}E.moveTo(F.x,F.y);this._currentPoint=F;if(n==undefined){n=F}continue}if(H=="L"||H=="l"){var F=this._parsePoint(B);if(F==undefined){break}E.lineTo(F.x,F.y);this._currentPoint=F;continue}if(H=="A"||H=="a"){var j=this._parseNumber(B);var h=this._parseNumber(B);var L=this._parseNumber(B)*(Math.PI/180);var P=this._parseNumber(B);var f=this._parseNumber(B);var q=this._parsePoint(B);if(this._isRelativeCmd(H)){q=this._toAbsolutePoint(q)}if(j==0||h==0){continue}var k=this._currentPoint;var K={x:Math.cos(L)*(k.x-q.x)/2+Math.sin(L)*(k.y-q.y)/2,y:-Math.sin(L)*(k.x-q.x)/2+Math.cos(L)*(k.y-q.y)/2};var l=Math.pow(K.x,2)/Math.pow(j,2)+Math.pow(K.y,2)/Math.pow(h,2);if(l>1){j*=Math.sqrt(l);h*=Math.sqrt(l)}var t=(P==f?-1:1)*Math.sqrt(((Math.pow(j,2)*Math.pow(h,2))-(Math.pow(j,2)*Math.pow(K.y,2))-(Math.pow(h,2)*Math.pow(K.x,2)))/(Math.pow(j,2)*Math.pow(K.y,2)+Math.pow(h,2)*Math.pow(K.x,2)));if(isNaN(t)){t=0}var J={x:t*j*K.y/h,y:t*-h*K.x/j};var D={x:(k.x+q.x)/2+Math.cos(L)*J.x-Math.sin(L)*J.y,y:(k.y+q.y)/2+Math.sin(L)*J.x+Math.cos(L)*J.y};var C=function(i){return Math.sqrt(Math.pow(i[0],2)+Math.pow(i[1],2))};var z=function(m,i){return(m[0]*i[0]+m[1]*i[1])/(C(m)*C(i))};var O=function(m,i){return(m[0]*i[1]<m[1]*i[0]?-1:1)*Math.acos(z(m,i))};var G=O([1,0],[(K.x-J.x)/j,(K.y-J.y)/h]);var p=[(K.x-J.x)/j,(K.y-J.y)/h];var o=[(-K.x-J.x)/j,(-K.y-J.y)/h];var M=O(p,o);if(z(p,o)<=-1){M=Math.PI}if(z(p,o)>=1){M=0}if(f==0&&M>0){M=M-2*Math.PI}if(f==1&&M<0){M=M+2*Math.PI}var z=(j>h)?j:h;var A=(j>h)?1:j/h;var w=(j>h)?h/j:1;E.translate(D.x,D.y);E.rotate(L);E.scale(A,w);E.arc(0,0,z,G,G+M,1-f);E.scale(1/A,1/w);E.rotate(-L);E.translate(-D.x,-D.y);continue}if((H=="Z"||H=="z")&&n!=undefined){E.lineTo(n.x,n.y);this._currentPoint=n;continue}if(H=="C"||H=="c"){var e=this._parsePoint(B);var d=this._parsePoint(B);var c=this._parsePoint(B);E.bezierCurveTo(e.x,e.y,d.x,d.y,c.x,c.y);this._currentPoint=c;continue}}E.fill();E.stroke();E.closePath()},text:function(A,G){var p=a.jqx.ptrnd(G.x);var o=a.jqx.ptrnd(G.y);var v=a.jqx.ptrnd(G.width);var t=a.jqx.ptrnd(G.height);var s=G.halign;var k=G.valign;var D=G.angle;var c=G.rotateAround;var f=G.textPartsInfo;var e=f.parts;var E=G.clip;if(E==undefined){E=true}A.save();if(!s){s="center"}if(!k){k="center"}if(E){A.rect(p,o,v,t);A.clip()}var H=G.textWidth;var l=G.textHeight;var q=v||0;var C=t||0;A.fillStyle=G.color;A.font=G.fontWeight+" "+G.fontSize+" "+G.fontFamily;if(!D||D==0){o+=l;if(k=="center"||k=="middle"){o+=(C-l)/2}else{if(k=="bottom"){o+=C-l}}if(!v){v=H}if(!t){t=l}var n=0;for(var B=e.length-1;B>=0;B--){var u=e[B];var I=p;var m=e[B].width;var d=e[B].height;if(s=="center"){I+=(q-m)/2}else{if(s=="right"){I+=(q-m)}}A.fillText(u.text,I,o+n);n-=u.height+(B>0?4:0)}A.restore();return}var z=a.jqx.commonRenderer.alignTextInRect(p,o,v,t,H,l,s,k,D,c);p=z.x;o=z.y;var j=D*Math.PI*2/360;A.translate(p,o);A.rotate(j);var n=0;var F=f.width;for(var B=e.length-1;B>=0;B--){var I=0;if(s=="center"){I+=(F-e[B].width)/2}else{if(s=="right"){I+=(F-e[B].width)}}A.fillText(e[B].text,I,n);n-=e[B].height+4}A.restore()}},refresh:function(){this.ctx.clearRect(0,0,this.canvas[0].width,this.canvas[0].height);for(var c in this._elements){var d=this._elements[c];this._renderers.setFillStyle(this.ctx,d);this._renderers.setStroke(this.ctx,d);this._renderers[this._elements[c].type](this.ctx,d)}}};a.jqx.createRenderer=function(c,e){var d=c;var f=d.renderer=null;if(document.createElementNS&&(d.renderEngine!="HTML5"&&d.renderEngine!="VML")){f=new a.jqx.svgRenderer();if(!f.init(e)){if(d.renderEngine=="SVG"){throw"Your browser does not support SVG"}return null}}if(f==null&&d.renderEngine!="HTML5"){f=new a.jqx.vmlRenderer();if(!f.init(e)){if(d.renderEngine=="VML"){throw"Your browser does not support VML"}return null}d._isVML=true}if(f==null&&(d.renderEngine=="HTML5"||d.renderEngine==undefined)){f=new a.jqx.HTML5Renderer();if(!f.init(e)){throw"Your browser does not support HTML5 Canvas"}}d.renderer=f;return f},a.jqx._widgetToImage=function(o,j,f,m,h){var k=o;if(!k){return false}if(f==undefined||f==""){f="image."+j}var l=k.renderEngine;var d=k.enableAnimations;k.enableAnimations=false;k.renderEngine="HTML5";if(k.renderEngine!=l){try{k.refresh()}catch(i){k.renderEngine=l;k.refresh();k.enableAnimations=d;return false}}var c=k.renderer.getContainer()[0];var n=a.jqx.exportImage(c,j,f,m,h);if(k.renderEngine!=l){k.renderEngine=l;k.refresh();k.enableAnimations=d}return n};a.jqx.getByPriority=function(c){var e=undefined;for(var d=0;d<c.length&&e==undefined;d++){if(e==undefined&&c[d]!=undefined){e=c[d]}}return e};a.jqx.exportImage=function(f,o,h,s,k){if(!f){return false}var m=o.toLowerCase()==="pdf";if(m){o="jpeg"}if(h==undefined||h==""){h="image."+o}if(s==undefined||s==""){throw"Please specifiy export server"}var u=true;try{if(f){var i=f.toDataURL("image/"+o);if(m){if(!a.jqx.pdfExport){a.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var j=595;switch(a.jqx.pdfExport.paperSize){case"legal":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=1008}break;case"letter":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=792}break;case"a3":var j=841;if(a.jqx.pdfExport.orientation!=="portrait"){j=1190}break;case"a4":var j=595;if(a.jqx.pdfExport.orientation!=="portrait"){j=842}break;case"a5":var j=420;if(a.jqx.pdfExport.orientation!=="portrait"){j=595}break}var l=a(f).width();var p=l*72/96;if(p>=j-20){p=j-20}var q=new pdfDataExport(a.jqx.pdfExport.orientation,"pt",a.jqx.pdfExport.paperSize);q.addImage(i,"JPEG",10,10,p,0);q.save(h);return}i=i.replace("data:image/"+o+";base64,","");if(k){a.ajax({dataType:"string",url:s,type:"POST",data:{content:i,fname:h},async:false,success:function(v,e,w){u=true},error:function(v,e,w){u=false}})}else{var d=document.createElement("form");d.method="POST";d.action=s;d.style.display="none";document.body.appendChild(d);var t=document.createElement("input");t.name="fname";t.value=h;t.style.display="none";var c=document.createElement("input");c.name="content";c.value=i;c.style.display="none";d.appendChild(t);d.appendChild(c);d.submit();document.body.removeChild(d);u=true}}}catch(n){u=false}return u}})(jqxBaseFramework);(function(a){a.jqx.jqxWidget("jqxChart","",{});a.extend(a.jqx._jqxChart.prototype,{defineInstance:function(){a.extend(true,this,this._defaultSettings);this._createColorsCache()},_defaultSettings:{title:"Title",description:"Description",source:[],seriesGroups:[],categoryAxis:null,xAxis:{},valueAxis:null,renderEngine:"",enableAnimations:true,enableAxisTextAnimation:false,backgroundImage:"",background:"#FFFFFF",padding:{left:5,top:5,right:5,bottom:5},backgroundColor:"#FFFFFF",showBorderLine:true,borderLineWidth:1,borderLineColor:null,borderColor:null,titlePadding:{left:5,top:5,right:5,bottom:10},showLegend:true,legendLayout:null,enabled:true,colorScheme:"scheme01",animationDuration:500,showToolTips:true,toolTipShowDelay:500,toolTipDelay:500,toolTipHideDelay:4000,toolTipMoveDuration:300,toolTipFormatFunction:null,toolTipAlignment:"dataPoint",localization:undefined,columnSeriesOverlap:false,rtl:false,legendPosition:null,greyScale:false,axisPadding:5,enableCrosshairs:false,crosshairsColor:"#BCBCBC",crosshairsDashStyle:"2,2",crosshairsLineWidth:1,enableEvents:true,_itemsToggleState:[],_isToggleRefresh:false,_isSelectorRefresh:false,_sliders:[],_selectorRange:[],_rangeSelectorInstances:{},_resizeState:{},renderer:null,_isRangeSelectorInstance:false,drawBefore:null,draw:null,_renderData:{},enableSampling:true,samplingThreshold:5000},_defaultLineColor:"#BCBCBC",_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_getEvent:function(c){if(this._isTouchDevice){return this._touchEvents[c]}else{return c}},destroy:function(){this.host.remove()},createInstance:function(e){if(!a.jqx.dataAdapter){throw"jqxdata.js is not loaded"}var d=this;d._refreshOnDownloadComlete();d._isTouchDevice=a.jqx.mobile.isTouchDevice();d.addHandler(d.host,d._getEvent("mousemove"),function(i){if(d.enabled==false){return}if(!d._isRangeSelectorInstance){d.host.css("cursor","default")}var h=i.pageX||i.clientX||i.screenX;var l=i.pageY||i.clientY||i.screenY;var k=d.host.offset();if(d._isTouchDevice){var j=a.jqx.position(i);h=j.left;l=j.top}h-=k.left;l-=k.top;d.onmousemove(h,l)});d.addHandler(d.host,d._getEvent("mouseleave"),function(j){if(d.enabled==false){return}var h=d._mouseX;var k=d._mouseY;var i=d._plotRect;if(i&&h>=i.x&&h<=i.x+i.width&&k>=i.y&&k<=i.y+i.height){return}d._cancelTooltipTimer();d._hideToolTip(0);d._unselect()});d.addHandler(d.host,"click",function(i){if(d.enabled==false){return}var h=i.pageX||i.clientX||i.screenX;var l=i.pageY||i.clientY||i.screenY;var k=d.host.offset();if(d._isTouchDevice){var j=a.jqx.position(i);h=j.left;l=j.top}h-=k.left;l-=k.top;d._mouseX=h;d._mouseY=l;if(!isNaN(d._lastClickTs)){if((new Date()).valueOf()-d._lastClickTs<100){return}}this._hostClickTimer=setTimeout(function(){if(!d._isTouchDevice){d._cancelTooltipTimer();d._hideToolTip();d._unselect()}if(d._pointMarker&&d._pointMarker.element){var n=d.seriesGroups[d._pointMarker.gidx];var m=n.series[d._pointMarker.sidx];i.stopImmediatePropagation();d._raiseItemEvent("click",n,m,d._pointMarker.iidx)}},100)});var f=d.element.style;if(f){var c=false;if(f.width!=null){c|=f.width.toString().indexOf("%")!=-1}if(f.height!=null){c|=f.height.toString().indexOf("%")!=-1}if(c){a.jqx.utilities.resize(this.host,function(){if(d.timer){clearTimeout(d.timer)}var h=1;d.timer=setTimeout(function(){var i=d.enableAnimations;d.enableAnimations=false;d.refresh();d.enableAnimations=i},h)},false,true)}}},_refreshOnDownloadComlete:function(){var e=this;var f=this.source;if(f instanceof a.jqx.dataAdapter){var h=f._options;if(h==undefined||(h!=undefined&&!h.autoBind)){f.autoSync=false;f.dataBind()}var d=this.element.id;if(f.records.length==0){var c=function(){if(e.ready){e.ready()}e.refresh()};f.unbindDownloadComplete(d);f.bindDownloadComplete(d,c)}else{if(e.ready){e.ready()}}f.unbindBindingUpdate(d);f.bindBindingUpdate(d,function(){if(e._supressBindingRefresh){return}e.refresh()})}},propertyChangedHandler:function(c,d,f,e){if(this.isInitialized==undefined||this.isInitialized==false){return}if(d=="source"){this._refreshOnDownloadComlete()}this.refresh()},_initRenderer:function(c){if(!a.jqx.createRenderer){throw"Please include jqxdraw.js"}return a.jqx.createRenderer(this,c)},_internalRefresh:function(){var c=this;if(a.jqx.isHidden(c.host)){return}c._stopAnimations();if(!c.renderer||(!c._isToggleRefresh&&!c._isUpdate)){c._hideToolTip(0);c._isVML=false;c.host.empty();c._measureDiv=undefined;c._initRenderer(c.host)}var e=c.renderer;if(!e){return}var d=e.getRect();c._render({x:1,y:1,width:d.width,height:d.height});this._raiseEvent("refreshBegin",{instance:this});if(e instanceof a.jqx.HTML5Renderer){e.refresh()}c._isUpdate=false;this._raiseEvent("refreshEnd",{instance:this})},saveAsPNG:function(e,c,d){return this._saveAsImage("png",e,c,d)},saveAsJPEG:function(e,c,d){return this._saveAsImage("jpeg",e,c,d)},saveAsPDF:function(e,c,d){return this._saveAsImage("pdf",e,c,d)},_saveAsImage:function(f,k,c,d){var j=false;for(var e=0;e<this.seriesGroups.length&&!j;e++){var h=this._getXAxis(e);if(h&&h.rangeSelector){j=true}}return a.jqx._widgetToImage(this,f,k,c,d,j?this._selectorSaveAsImageCallback:undefined)},_selectorSaveAsImageCallback:function(G,l){var u=G;for(var E=0;E<u.seriesGroups.length;E++){var q=u._getXAxis(E);if(!q||!q.rangeSelector||q.rangeSelector.renderTo){continue}var o=u._rangeSelectorInstances[E];if(!o){continue}var v=o.jqxChart("getInstance");var f=v.renderEngine;var e=v.renderer.getRect();var h=v.renderer.getContainer().find("canvas")[0];var s=h.getContext("2d");var B=u._sliders[E];var c=u.seriesGroups[E].orientation=="horizontal";var d=!c?"width":"height";var A=c?"width":"height";var D=!c?"x":"y";var k=c?"x":"y";var m={};m[D]=B.startOffset+B.rect[D];m[k]=B.rect[k];m[d]=B.endOffset-B.startOffset;m[A]=B.rect[A];var p=q.rangeSelector.colorSelectedRange||"blue";var z=q.rangeSelector.colorUnselectedRange||"white";var n=q.rangeSelector.colorRangeLine||"grey";var t=[];t.push(v.renderer.rect(m.x,m.y,m.width,m.height,{fill:p,opacity:0.1}));if(!c){t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(m.x),a.jqx._ptrnd(B.rect.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(m.x+m.width),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(B.rect.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(m.x),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(m.x),a.jqx._ptrnd(B.rect.y+B.rect.height),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(m.x+m.width),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(m.x+m.width),a.jqx._ptrnd(B.rect.y+B.rect.height),{stroke:n,opacity:0.5}))}else{t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(B.rect.y),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y+m.height),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(B.rect.y+B.rect.height),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x),a.jqx._ptrnd(m.y),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y),{stroke:n,opacity:0.5}));t.push(v.renderer.line(a.jqx._ptrnd(B.rect.x),a.jqx._ptrnd(m.y+m.height),a.jqx._ptrnd(B.rect.x+B.rect.width),a.jqx._ptrnd(m.y+m.height),{stroke:n,opacity:0.5}))}v.renderer.refresh();var w=s.getImageData(e.x,e.y,e.width,e.height);var F=l.getContext("2d");F.putImageData(w,parseInt(o.css("left")),parseInt(o.css("top")),1,1,e.width,e.height);for(var C=0;C<t.length;C++){v.renderer.removeElement(t[C])}v.renderer.refresh()}return true},refresh:function(){this._internalRefresh()},update:function(){this._isUpdate=true;this._internalRefresh()},_seriesTypes:["line","stackedline","stackedline100","spline","stackedspline","stackedspline100","stepline","stackedstepline","stackedstepline100","area","stackedarea","stackedarea100","splinearea","stackedsplinearea","stackedsplinearea100","steparea","stackedsteparea","stackedsteparea100","rangearea","splinerangearea","steprangearea","column","stackedcolumn","stackedcolumn100","rangecolumn","scatter","stackedscatter","stackedscatter100","bubble","stackedbubble","stackedbubble100","pie","donut","candlestick","ohlc","waterfall","stackedwaterfall"],clear:function(){var c=this;for(var d in c._defaultSettings){c[d]=c._defaultSettings[d]}c.title="";c.description="";c.refresh()},_render:function(E){var n=this;var K=n.renderer;n._colorsCache.clear();if(!n._isToggleRefresh&&n._isUpdate&&n._renderData){n._renderDataClone()}n._renderData=[];K.clear();n._unselect();n._hideToolTip(0);var o=n.backgroundImage;if(o==undefined||o==""){n.host.css({"background-image":""})}else{n.host.css({"background-image":(o.indexOf("(")!=-1?o:"url('"+o+"')")})}n._rect=E;var aa=n.padding||{left:5,top:5,right:5,bottom:5};var s=K.createClipRect(E);var N=K.beginGroup();K.setClip(N,s);var ak=K.rect(E.x,E.y,E.width-2,E.height-2);if(o==undefined||o==""){K.attr(ak,{fill:n.backgroundColor||n.background||"white"})}else{K.attr(ak,{fill:"transparent"})}if(n.showBorderLine!=false){var H=n.borderLineColor==undefined?n.borderColor:n.borderLineColor;if(H==undefined){H=n._defaultLineColor}var p=this.borderLineWidth;if(isNaN(p)||p<0||p>10){p=1}K.attr(ak,{"stroke-width":p,stroke:H})}else{if(a.jqx.browser.msie&&a.jqx.browser.version<9){K.attr(ak,{"stroke-width":1,stroke:n.backgroundColor||"white"})}}if(a.isFunction(n.drawBefore)){n.drawBefore(K,E)}var X={x:aa.left,y:aa.top,width:E.width-aa.left-aa.right,height:E.height-aa.top-aa.bottom};n._paddedRect=X;var f=n.titlePadding||{left:2,top:2,right:2,bottom:2};var m;if(n.title&&n.title.length>0){var U=n.toThemeProperty("jqx-chart-title-text",null);m=K.measureText(n.title,0,{"class":U});K.text(n.title,X.x+f.left,X.y+f.top,X.width-(f.left+f.right),m.height,0,{"class":U},true,"center","center");X.y+=m.height;X.height-=m.height}if(n.description&&n.description.length>0){var V=n.toThemeProperty("jqx-chart-title-description",null);m=K.measureText(n.description,0,{"class":V});K.text(n.description,X.x+f.left,X.y+f.top,X.width-(f.left+f.right),m.height,0,{"class":V},true,"center","center");X.y+=m.height;X.height-=m.height}if(n.title||n.description){X.y+=(f.bottom+f.top);X.height-=(f.bottom+f.top)}var c={x:X.x,y:X.y,width:X.width,height:X.height};n._plotRect=c;n._buildStats(c);var J=n._isPieOnlySeries();var u=n.seriesGroups;var G;var F={xAxis:{},valueAxis:{}};for(var ab=0;ab<u.length&&!J;ab++){if(u[ab].type=="pie"||u[ab].type=="donut"){continue}var B=n._getXAxis(ab);if(!B){throw"seriesGroup["+ab+"] is missing xAxis definition"}var ag=B==n._getXAxis()?-1:ab;F.xAxis[ag]=0}var W=n.axisPadding;if(isNaN(W)){W=5}var t={left:0,right:0,leftCount:0,rightCount:0};var q=[];for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.type=="pie"||af.type=="donut"||af.spider==true||af.polar==true){q.push({width:0,position:0,xRel:0});continue}G=af.orientation=="horizontal";var B=n._getXAxis(ab);var ag=B==n._getXAxis()?-1:ab;var l=n._getValueAxis(ab);var Q=l==n._getValueAxis()?-1:ab;var T=!G?l.axisSize:B.axisSize;var k={x:0,y:c.y,width:c.width,height:c.height};var S=G?n._getXAxis(ab).position:l.position;if(!T||T=="auto"){if(G){T=this._renderXAxis(ab,k,true,c).width;if((F.xAxis[ag]&1)==1){T=0}else{if(T>0){F.xAxis[ag]|=1}}}else{T=n._renderValueAxis(ab,k,true,c).width;if((F.valueAxis[Q]&1)==1){T=0}else{if(T>0){F.valueAxis[Q]|=1}}}}if(S!="left"&&n.rtl==true){S="right"}if(S!="right"){S="left"}if(t[S+"Count"]>0&&t[S]>0&&T>0){t[S]+=W}q.push({width:T,position:S,xRel:t[S]});t[S]+=T;t[S+"Count"]++}var z=Math.max(1,Math.max(E.width,E.height));var ae={top:0,bottom:0,topCount:0,bottomCount:0};var Y=[];for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.type=="pie"||af.type=="donut"||af.spider==true||af.polar==true){Y.push({height:0,position:0,yRel:0});continue}G=af.orientation=="horizontal";var l=this._getValueAxis(ab);var Q=l==n._getValueAxis()?-1:ab;var B=n._getXAxis(ab);var ag=B==n._getXAxis()?-1:ab;var ad=!G?B.axisSize:l.axisSize;var S=G?l.position:B.position;if(!ad||ad=="auto"){if(G){ad=n._renderValueAxis(ab,{x:0,y:0,width:z,height:0},true,c).height;if((F.valueAxis[Q]&2)==2){ad=0}else{if(ad>0){F.valueAxis[Q]|=2}}}else{ad=n._renderXAxis(ab,{x:0,y:0,width:z,height:0},true).height;if((F.xAxis[ag]&2)==2){ad=0}else{if(ad>0){F.xAxis[ag]|=2}}}}if(S!="top"){S="bottom"}if(ae[S+"Count"]>0&&ae[S]>0&&ad>0){ae[S]+=W}Y.push({height:ad,position:S,yRel:ae[S]});ae[S]+=ad;ae[S+"Count"]++}n._createAnimationGroup("series");var v=(n.showLegend!=false);var D=!v?{width:0,height:0}:n._renderLegend(n.legendLayout?n._rect:X,true);if(this.legendLayout&&(!isNaN(this.legendLayout.left)||!isNaN(this.legendLayout.top))){D={width:0,height:0}}if(X.height<ae.top+ae.bottom+D.height||X.width<t.left+t.right){K.endGroup();return}c.height-=ae.top+ae.bottom+D.height;c.x+=t.left;c.width-=t.left+t.right;c.y+=ae.top;var I=[];if(!J){var ah=n._getXAxis().tickMarksColor||n._defaultLineColor;for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.polar==true||af.spider==true||af.type=="pie"||af.type=="donut"){continue}G=af.orientation=="horizontal";var ag=n._getXAxis(ab)==n._getXAxis()?-1:ab;var Q=n._getValueAxis(ab)==n._getValueAxis()?-1:ab;var k={x:c.x,y:0,width:c.width,height:Y[ab].height};if(Y[ab].position!="top"){k.y=c.y+c.height+Y[ab].yRel}else{k.y=c.y-Y[ab].yRel-Y[ab].height}if(G){if((F.valueAxis[Q]&4)==4){continue}if(!n._isGroupVisible(ab)){continue}n._renderValueAxis(ab,k,false,c);F.valueAxis[Q]|=4}else{I.push(k);if((F.xAxis[ag]&4)==4){continue}if(!n._isGroupVisible(ab)){continue}n._renderXAxis(ab,k,false,c);F.xAxis[ag]|=4}}}if(v){var C=n.legendLayout?n._rect:X;var R=X.x+a.jqx._ptrnd((X.width-D.width)/2);var P=c.y+c.height+ae.bottom;var T=X.width;var ad=D.height;if(n.legendLayout){if(!isNaN(n.legendLayout.left)){R=n.legendLayout.left}if(!isNaN(n.legendLayout.top)){P=n.legendLayout.top}if(!isNaN(n.legendLayout.width)){T=n.legendLayout.width}if(!isNaN(n.legendLayout.height)){ad=n.legendLayout.height}}if(R+T>C.x+C.width){T=C.x+C.width-R}if(P+ad>C.y+C.height){ad=C.y+C.height-P}n._renderLegend({x:R,y:P,width:T,height:ad})}n._hasHorizontalLines=false;if(!J){for(ab=0;ab<u.length;ab++){var af=u[ab];if(af.polar==true||af.spider==true||af.type=="pie"||af.type=="donut"){continue}G=u[ab].orientation=="horizontal";var k={x:c.x-q[ab].xRel-q[ab].width,y:c.y,width:q[ab].width,height:c.height};if(q[ab].position!="left"){k.x=c.x+c.width+q[ab].xRel}var ag=n._getXAxis(ab)==n._getXAxis()?-1:ab;var Q=n._getValueAxis(ab)==n._getValueAxis()?-1:ab;if(G){I.push(k);if((F.xAxis[ag]&8)==8){continue}if(!n._isGroupVisible(ab)){continue}n._renderXAxis(ab,k,false,c);F.xAxis[ag]|=8}else{if((F.valueAxis[Q]&8)==8){continue}if(!n._isGroupVisible(ab)){continue}n._renderValueAxis(ab,k,false,c);F.valueAxis[Q]|=8}}}if(c.width<=0||c.height<=0){return}n._plotRect={x:c.x,y:c.y,width:c.width,height:c.height};for(ab=0;ab<u.length;ab++){this._drawPlotAreaLines(ab,true,{gridLines:false,tickMarks:false,alternatingBackground:true});this._drawPlotAreaLines(ab,false,{gridLines:false,tickMarks:false,alternatingBackground:true})}for(ab=0;ab<u.length;ab++){this._drawPlotAreaLines(ab,true,{gridLines:true,tickMarks:true,alternatingBackground:false});this._drawPlotAreaLines(ab,false,{gridLines:true,tickMarks:true,alternatingBackground:false})}var M=false;for(ab=0;ab<u.length&&!M;ab++){var af=u[ab];if(af.annotations!==undefined||a.isFunction(af.draw)||a.isFunction(af.drawBefore)){M=true;break}}var O=K.beginGroup();if(!M){var L=K.createClipRect({x:c.x-2,y:c.y,width:c.width+4,height:c.height});K.setClip(O,L)}for(ab=0;ab<u.length;ab++){var af=u[ab];var d=false;for(var ai in n._seriesTypes){if(n._seriesTypes[ai]==af.type){d=true;break}}if(!d){throw'Invalid serie type "'+af.type+'"'}if(a.isFunction(af.drawBefore)){af.drawBefore(K,E,ab,this)}if(af.polar==true||af.spider==true){if(af.type.indexOf("pie")==-1&&af.type.indexOf("donut")==-1){n._renderSpiderAxis(ab,c)}}n._renderAxisBands(ab,c,true);n._renderAxisBands(ab,c,false)}for(ab=0;ab<u.length;ab++){var af=u[ab];if(n._isColumnType(af.type)){n._renderColumnSeries(ab,c)}else{if(af.type.indexOf("pie")!=-1||af.type.indexOf("donut")!=-1){n._renderPieSeries(ab,c)}else{if(af.type.indexOf("line")!=-1||af.type.indexOf("area")!=-1){n._renderLineSeries(ab,c)}else{if(af.type.indexOf("scatter")!=-1||af.type.indexOf("bubble")!=-1){n._renderScatterSeries(ab,c)}else{if(af.type.indexOf("candlestick")!=-1||af.type.indexOf("ohlc")!=-1){n._renderCandleStickSeries(ab,c,af.type.indexOf("ohlc")!=-1)}}}}}if(af.annotations){if(!this._moduleAnnotations){throw"Please include 'jqxchart.annotations.js'"}for(var Z=0;Z<af.annotations.length;Z++){n._renderAnnotation(ab,af.annotations[Z],c)}}if(a.isFunction(af.draw)){n.draw(K,E,ab,this)}}K.endGroup();if(n.enabled==false){var ac=K.rect(E.x,E.y,E.width,E.height);K.attr(ac,{fill:"#777777",opacity:0.5,stroke:"#00FFFFFF"})}if(a.isFunction(n.draw)){n.draw(K,E)}K.endGroup();n._startAnimation("series");var aj=false;for(var ab=0;ab<n.seriesGroups.length&&!aj;ab++){var B=n._getXAxis(ab);if(B&&B.rangeSelector){aj=true}}if(aj){if(!this._moduleRangeSelector){throw"Please include 'jqxchart.rangeselector.js'"}var e=[];if(!this._isSelectorRefresh){n.removeHandler(a(document),n._getEvent("mousemove"),n._onSliderMouseMove);n.removeHandler(a(document),n._getEvent("mousedown"),n._onSliderMouseDown);n.removeHandler(a(document),n._getEvent("mouseup"),n._onSliderMouseUp)}if(!n._isSelectorRefresh){n._rangeSelectorInstances={}}for(ab=0;ab<n.seriesGroups.length;ab++){var A=this._getXAxis(ab);if(e.indexOf(A)==-1){if(this._renderXAxisRangeSelector(ab,I[ab])){e.push(A)}}}}},_isPieOnlySeries:function(){var d=this.seriesGroups;if(d.length==0){return false}for(var c=0;c<d.length;c++){if(d[c].type!="pie"&&d[c].type!="donut"){return false}}return true},_renderChartLegend:function(T,C,Q,v){var l=this;var D=l.renderer;var I={x:C.x+3,y:C.y+3,width:C.width-6,height:C.height-6};var E={width:I.width,height:0};var G=0,F=0;var q=20;var m=0;var h=10;var O=10;var w=0;for(var N=0;N<T.length;N++){var J=T[N].css;if(!J){J=l.toThemeProperty("jqx-chart-legend-text",null)}q=20;var A=T[N].text;var k=D.measureText(A,0,{"class":J});if(k.height>q){q=k.height}if(k.width>w){w=k.width}if(v){if(N!=0){F+=q}if(F>I.height){F=0;G+=w+2*O+h;w=k.width;E.width=G+w}}else{if(G!=0){G+=O}if(G+2*h+k.width>I.width&&k.width<I.width){G=0;F+=q;q=20;m=I.width;E.height=F+q}}var K=false;if(k.width>C.width){K=true;var s=C.width;var R=A;var V=R.split(/\s+/).reverse();var n=[];var u="";var p=[];while(undefined!=(word=V.pop())){n.push(word);u=n.join(" ");var B=l.renderer.measureText(u,0,{"class":J});if(B.width>s&&p.length>0){n.pop();n=[word];u=n.join(" ")}p.push({text:u})}k.width=0;var c=0;for(var H=0;H<p.length;H++){var U=p[H].text;var B=l.renderer.measureText(U,0,{"class":J});k.width=Math.max(k.width,B.width);c+=k.height}k.height=c}var z=I.x+G+k.width<C.x+C.width&&I.y+F+k.height<C.y+C.height;if(l.legendLayout){var z=I.x+G+k.width<l._rect.x+l._rect.width&&I.y+F+k.height<l._rect.y+l._rect.height}if(!Q&&z){var j=T[N].seriesIndex;var o=T[N].groupIndex;var d=T[N].itemIndex;var W=T[N].fillColor;var S=T[N].lineColor;var f=l._isSerieVisible(o,j,d);var P=D.beginGroup();var M=f?T[N].opacity:0.1;if(K){var R=A;var s=C.width;var V=R.split(/\s+/).reverse();var n=[];var u="";var e=0;var p=[];while(undefined!=(word=V.pop())){n.push(word);u=n.join(" ");var B=l.renderer.measureText(u,0,{"class":J});if(B.width>s&&p.length>0){n.pop();e+=B.height;n=[word];u=n.join(" ")}p.push({text:u,dy:e})}for(var H=0;H<p.length;H++){var U=p[H].text;e=p[H].dy;var B=l.renderer.measureText(U,0,{"class":J});if(v){l.renderer.text(U,I.x+G+1.5*h,I.y+F+e,k.width,q,0,{"class":J},false,"left","center")}else{l.renderer.text(U,I.x+G+1.5*h,I.y+F+e,k.width,q,0,{"class":J},false,"center","center")}}var L=D.rect(I.x+G,I.y+F+h/2+e/2,h,h);if(v){F+=e}l.renderer.attr(L,{fill:W,"fill-opacity":M,stroke:S,"stroke-width":1,"stroke-opacity":T[N].opacity})}else{var L=D.rect(I.x+G,I.y+F+h/2,h,h);l.renderer.attr(L,{fill:W,"fill-opacity":M,stroke:S,"stroke-width":1,"stroke-opacity":T[N].opacity});if(v){l.renderer.text(A,I.x+G+1.5*h,I.y+F,k.width,k.height+h/2,0,{"class":J},false,"left","center")}else{l.renderer.text(A,I.x+G+1.5*h,I.y+F,k.width,q,0,{"class":J},false,"center","center")}}l.renderer.endGroup();l._setLegendToggleHandler(o,j,d,P)}if(v){}else{G+=k.width+2*h;if(m<G){m=G}}}if(Q){E.height=a.jqx._ptrnd(F+q+5);E.width=a.jqx._ptrnd(m);return E}},isSerieVisible:function(e,c,d){return this._isSerieVisible(e,c,d)},_isSerieVisible:function(h,c,e){while(this._itemsToggleState.length<h+1){this._itemsToggleState.push([])}var f=this._itemsToggleState[h];while(f.length<c+1){f.push(isNaN(e)?true:[])}var d=f[c];if(isNaN(e)){return d}if(!a.isArray(d)){f[c]=d=[]}while(d.length<e+1){d.push(true)}return d[e]},isGroupVisible:function(c){return this._isGroupVisible(c)},_isGroupVisible:function(f){var e=false;var d=this.seriesGroups[f].series;if(!d){return e}for(var c=0;c<d.length;c++){if(this._isSerieVisible(f,c)){e=true;break}}return e},_toggleSerie:function(j,c,f,d){var i=!this._isSerieVisible(j,c,f);if(d!=undefined){i=d}var k=this.seriesGroups[j];var h=k.series[c];this._raiseEvent("toggle",{state:i,seriesGroup:k,serie:h,elementIndex:f});if(isNaN(f)){this._itemsToggleState[j][c]=i}else{var e=this._itemsToggleState[j][c];if(!a.isArray(e)){e=[]}while(e.length<f){e.push(true)}e[f]=i}this._isToggleRefresh=true;this.update();this._isToggleRefresh=false},showSerie:function(e,c,d){this._toggleSerie(e,c,d,true)},hideSerie:function(e,c,d){this._toggleSerie(e,c,d,false)},_setLegendToggleHandler:function(k,d,i,f){var j=this.seriesGroups[k];var h=j.series[d];var c=h.enableSeriesToggle;if(c==undefined){c=j.enableSeriesToggle!=false}if(c){var e=this;this.renderer.addHandler(f,"click",function(l){e._toggleSerie(k,d,i)})}},_renderLegend:function(d,f){var p=this;var e=[];for(var z=0;z<p.seriesGroups.length;z++){var v=p.seriesGroups[z];if(v.showLegend==false){continue}for(var t=0;t<v.series.length;t++){var n=v.series[t];if(n.showLegend==false){continue}var w=p._getSerieSettings(z,t);var q;if(v.type=="pie"||v.type=="donut"){var l=p._getXAxis(z);var j=n.legendFormatSettings||v.legendFormatSettings||l.formatSettings||n.formatSettings||v.formatSettings;var o=n.legendFormatFunction||v.legendFormatFunction||l.formatFunction||n.formatFunction||v.formatFunction;var k=p._getDataLen(z);for(var u=0;u<k;u++){q=p._getDataValue(u,n.displayText,z);q=p._formatValue(q,j,o,z,t,u);var m=p._getColors(z,t,u);e.push({groupIndex:z,seriesIndex:t,itemIndex:u,text:q,css:n.displayTextClass,fillColor:m.fillColor,lineColor:m.lineColor,opacity:w.opacity})}continue}var j=n.legendFormatSettings||v.legendFormatSettings;var o=n.legendFormatFunction||v.legendFormatFunction;q=p._formatValue(n.displayText||n.dataField||"",j,o,z,t,NaN);var m=p._getSeriesColors(z,t);var h=this._get([n.legendFillColor,n.legendColor,m.fillColor]);var c=this._get([n.legendLineColor,n.legendColor,m.lineColor]);e.push({groupIndex:z,seriesIndex:t,text:q,css:n.displayTextClass,fillColor:h,lineColor:c,opacity:w.opacity})}}return p._renderChartLegend(e,d,f,(p.legendLayout&&p.legendLayout.flow=="vertical"))},_getInterval:function(e,d){var c=this._get([e.unitInterval,d]);if(!isNaN(e.step)){c=e.step*d}return c},_renderXAxis:function(e,A,S,d){var h=this;var s=h._getXAxis(e);var R=h.seriesGroups[e];var Y=R.orientation=="horizontal";var I={width:0,height:0};var Q=h._getAxisSettings(s);if(!s||!Q.visible||R.type=="spider"){return I}if(!h._isGroupVisible(e)||this._isPieGroup(e)){return I}var X=h._alignValuesWithTicks(e);while(h._renderData.length<e+1){h._renderData.push({})}if(h.rtl){s.flip=true}var C=Y?A.height:A.width;var z=s.text;var u=h._calculateXOffsets(e,C);var U=u.axisStats;var j=s.rangeSelector;var G=0;if(j){if(!this._moduleRangeSelector){throw"Please include 'jqxchart.rangeselector.js'"}G=this._selectorGetSize(s)}var F=(Y&&s.position=="right")||(!Y&&s.position=="top");if(!S&&j){if(Y){A.width-=G;if(s.position!="right"){A.x+=G}}else{A.height-=G;if(s.position=="top"){A.y+=G}}}var k={rangeLength:u.rangeLength,itemWidth:u.itemWidth,intervalWidth:u.intervalWidth,data:u,settings:Q,isMirror:F,rect:A};h._renderData[e].xAxis=k;var H=U.interval;if(isNaN(H)){return I}if(Y){Q.title.angle-=90;Q.labels.angle-=90}var m=this._getInterval(Q.gridLines,H);var L=this._getInterval(Q.tickMarks,H);var D=this._getInterval(Q.labels,H);var M;var W=U.min;var t=U.max;var O=u.padding;var T=s.flip==true||h.rtl;if(s.type=="date"){Q.gridLines.offsets=this._generateDTOffsets(W,t,C,O,m,H,U.dateTimeUnit,X,NaN,false,T);Q.tickMarks.offsets=this._generateDTOffsets(W,t,C,O,L,H,U.dateTimeUnit,X,NaN,false,T);M=this._generateDTOffsets(W,t,C,O,D,H,U.dateTimeUnit,X,NaN,true,T)}else{Q.gridLines.offsets=this._generateOffsets(W,t,C,O,m,H,X,NaN,false,T);Q.tickMarks.offsets=this._generateOffsets(W,t,C,O,L,H,X,NaN,false,T);M=this._generateOffsets(W,t,C,O,D,H,X,NaN,true,T)}var n=h.renderer.getRect();var l=n.width-A.x-A.width;var p=h._getDataLen(e);var o;if(h._elementRenderInfo&&h._elementRenderInfo.length>e){o=h._elementRenderInfo[e].xAxis}var q=[];var K;if(Q.labels.formatFunction){K=Q.labels.formatFunction}var w;if(Q.labels.formatSettings){w=a.extend({},Q.labels.formatSettings)}if(s.type=="date"){if(s.dateFormat&&!K){if(w){w.dateFormat=w.dateFormat||s.dateFormat}else{w={dateFormat:s.dateFormat}}}else{if(!K&&(!w||(w&&!w.dateFormat))){K=this._getDefaultDTFormatFn(s.baseUnit||"day")}}}for(var P=0;P<M.length;P++){var N=M[P].value;var J=M[P].offset;var V=undefined;if(s.type!="date"&&U.useIndeces&&s.dataField){V=Math.round(N);N=h._getDataValue(V,s.dataField);if(N==undefined){N=""}}var z=h._formatValue(N,w,K,e,undefined,V);if(z==undefined||z.toString()==""){if(isNaN(V)){V=P}if(V>=U.filterRange.min&&V<=U.filterRange.max){z=U.useIndeces?(U.min+V).toString():(N==undefined?"":N.toString())}}var c={key:N,text:z,targetX:J,x:J};if(o&&o.itemOffsets[N]){c.x=o.itemOffsets[N].x;c.y=o.itemOffsets[N].y}q.push(c)}var E=h._getAnimProps(e);var v=E.enabled&&q.length<500?E.duration:0;if(h.enableAxisTextAnimation==false){v=0}var B={items:q,renderData:k};var f=h._renderAxis(Y,F,Q,{x:A.x,y:A.y,width:A.width,height:A.height},d,H,false,true,B,S,v);if(Y){f.width+=G}else{f.height+=G}return f},_animateAxisText:function(h,k){var d=h.items;var e=h.textSettings;for(var f=0;f<d.length;f++){var j=d[f];if(!j){continue}if(!j.visible){continue}var c=j.targetX;var l=j.targetY;if(!isNaN(j.x)&&!isNaN(j.y)){c=j.x+(c-j.x)*k;l=j.y+(l-j.y)*k}if(j.element){this.renderer.removeElement(j.element);j.element=undefined}j.element=this.renderer.text(j.text,c,l,j.width,j.height,e.angle,{"class":e.style},false,e.halign,e.valign,e.textRotationPoint)}},_getPolarAxisCoords:function(f,c){var k=this.seriesGroups[f];var s=c.x+a.jqx.getNum([k.offsetX,c.width/2]);var q=c.y+a.jqx.getNum([k.offsetY,c.height/2]);var m=Math.min(c.width,c.height);var h=k.radius;if(this._isPercent(h)){h=parseFloat(h)/100*m/2}if(isNaN(h)){h=m/2*0.6}var j=this._alignValuesWithTicks(f);var p=this._get([k.startAngle,k.minAngle,0])-90;if(isNaN(p)){p=0}else{p=2*Math.PI*p/360}var o=this._get([k.endAngle,k.maxAngle,360])-90;if(isNaN(o)){o=2*Math.PI}else{o=2*Math.PI*o/360}if(p>o){var n=p;p=o;o=n}var w=a.jqx._rnd(Math.abs(p-o)/(Math.PI*2),0.001,true);var t=Math.PI*2*h*w;var i=this._calcGroupOffsets(f,c).xoffsets;if(!i){return}var l=!(Math.abs(Math.abs(o-p)-Math.PI*2)>0.00001);if(k.spider){axisStats=this._getXAxisStats(f,this._getXAxis(f),t);var u=axisStats.interval;if(isNaN(u)||u==0){u=1}var e=(axisStats.max-axisStats.min)/u+(l?1:0);e=Math.round(e);if(e>2){var d=Math.cos(Math.abs(o-p)/2/e);d=a.jqx._rnd(d,0.01);if(d==0){d=1}var v=h/d;if(v>h&&j){h=v}}}h=a.jqx._ptrnd(h);return{x:s,y:q,r:h,adjR:this._get([v,h]),itemWidth:i.itemWidth,rangeLength:i.rangeLength,valuesOnTicks:j,startAngle:p,endAngle:o,isClosedCircle:l,axisSize:t}},_toPolarCoord:function(l,h,j,f){var d=Math.abs(l.startAngle-l.endAngle)/(Math.PI*2);var c=(j-h.x)*2*Math.PI*d/Math.max(1,h.width)+l.startAngle;var e=((h.height+h.y)-f)*l.r/Math.max(1,h.height);var k=l.x+e*Math.cos(c);var i=l.y+e*Math.sin(c);return{x:a.jqx._ptrnd(k),y:a.jqx._ptrnd(i)}},_renderSpiderAxis:function(D,m){var at=this;var k=at._getXAxis(D);var aE=this._getAxisSettings(k);if(!k||!aE.visible){return}var aa=at.seriesGroups[D];var V=at._getPolarAxisCoords(D,m);if(!V){return}var P=a.jqx._ptrnd(V.x);var O=a.jqx._ptrnd(V.y);var w=V.adjR;var ab=V.startAngle;var Z=V.endAngle;if(w<1){return}var az=a.jqx._rnd(Math.abs(ab-Z)/(Math.PI*2),0.001,true);var l=Math.PI*2*w*az;var d=V.isClosedCircle;var B=this._renderData[D].xoffsets;if(!B.rangeLength){return}var W=B.axisStats.interval;if(isNaN(W)||W<1){W=1}var aw=aa.orientation=="horizontal";var ad=(aw&&k.position=="right")||(!aw&&k.position=="top");while(at._renderData.length<D+1){at._renderData.push({})}var ax={rangeLength:B.rangeLength,itemWidth:B.itemWidth,data:B,rect:m,settings:aE};at._renderData[D].xAxis=ax;at._renderData[D].polarCoords=V;var aC=true;for(var U=0;U<D;U++){var E=at._renderData[U].xAxis;var c=at._renderData[U].polarCoords;var H=at._getXAxis(U);var Y=false;for(var S in V){if(V[S]!=c[S]){Y=true;break}}if(!Y||H!=k){aC=false}}var f=aE.gridLines;var X=aE.tickMarks;var C=aE.labels;var ag=this._getInterval(f,W);var aH=this._getInterval(X,W);var aq=this._getInterval(C,W);var K=at._alignValuesWithTicks(D);var ah=at.renderer;var al;var ai=B.axisStats;var aG=ai.min;var u=ai.max;var z=this._getPaddingSize(B.axisStats,k,K,l,true,d,false);var am=k.flip==true||at.rtl;if(k.type=="date"){f.offsets=this._generateDTOffsets(aG,u,l,z,ag,W,k.baseUnit,true,0,false,am);X.offsets=this._generateDTOffsets(aG,u,l,z,aH,W,k.baseUnit,true,0,false,am);al=this._generateDTOffsets(aG,u,l,z,aq,W,k.baseUnit,true,0,true,am)}else{f.offsets=this._generateOffsets(aG,u,l,z,ag,W,true,0,false,am);X.offsets=this._generateOffsets(aG,u,l,z,aH,W,true,0,false,am);al=this._generateOffsets(aG,u,l,z,aq,W,true,0,false,am)}var an=at.renderer.getRect();var aA=an.width-m.x-m.width;var ak=at._getDataLen(D);var v;if(at._elementRenderInfo&&at._elementRenderInfo.length>D){v=at._elementRenderInfo[D].xAxis}var av=[];var aj=this._getDataLen(D);for(var U=0;U<al.length;U++){var J=al[U].offset;var L=al[U].value;if(k.type!="date"&&ai.useIndeces&&k.dataField){var aB=Math.round(L);if(aB>=aj){continue}L=at._getDataValue(aB,k.dataField);if(L==undefined){L=""}}var au=at._formatValue(L,C.formatSettings,C.formatFunction,D,undefined,aB);if(au==undefined||au.toString()==""){au=ai.useIndeces?(ai.min+U).toString():(L==undefined?"":L.toString())}var e={key:L,text:au,targetX:J,x:J};if(v&&v.itemOffsets[L]){e.x=v.itemOffsets[L].x;e.y=v.itemOffsets[L].y}av.push(e)}var aD={items:av,renderData:ax};var n={stroke:f.color,fill:"none","stroke-width":f.width,"stroke-dasharray":f.dashStyle||""};if(!aa.spider){if(az==1){ah.circle(P,O,w,n)}else{var I=-ab/Math.PI*180;var aI=-Z/Math.PI*180;this.renderer.pieslice(P,O,0,w,Math.min(I,aI),Math.max(I,aI),undefined,n)}}var Q=av.length;var o=2*Math.PI/(Q);var ap=ab;var h,G;if(f.visible&&aC){if(!K&&!d){f.offsets.unshift({offset:-z.right})}for(var U=0;U<f.offsets.length;U++){var p=f.offsets[U].offset;if(!K){if(d){p+=z.right/2}else{p+=z.right}}var F=ap+p*2*Math.PI*az/Math.max(1,l);if(F-Z>0.01){continue}var t=a.jqx._ptrnd(P+w*Math.cos(F));var s=a.jqx._ptrnd(O+w*Math.sin(F));ah.line(P,O,t,s,n)}}if(X.visible&&aC){var T=5;var q={stroke:X.color,fill:"none","stroke-width":X.width,"stroke-dasharray":X.dashStyle||""};if(!K&&!d){X.offsets.unshift({offset:-z.right})}for(var U=0;U<X.offsets.length;U++){var p=X.offsets[U].offset;if(!K){if(d){p+=z.right/2}else{p+=z.right}}var F=ap+p*2*Math.PI*az/Math.max(1,l);if(F-Z>0.01){continue}var af={x:P+w*Math.cos(F),y:O+w*Math.sin(F)};var ae={x:P+(w+T)*Math.cos(F),y:O+(w+T)*Math.sin(F)};ah.line(a.jqx._ptrnd(af.x),a.jqx._ptrnd(af.y),a.jqx._ptrnd(ae.x),a.jqx._ptrnd(ae.y),q)}}var ar=[];if(aa.spider){var A=[];if(k.type=="date"){A=this._generateDTOffsets(aG,u,l,z,W,W,k.baseUnit,true,0,false,am)}else{A=this._generateOffsets(aG,u,l,z,W,W,true,0,false,am)}if(!K&&!d){A.unshift({offset:-z.right})}for(var U=0;U<A.length;U++){var p=A[U].offset;if(!K){if(d){p+=z.right/2}else{p+=z.right}}var F=ap+p*2*Math.PI*az/Math.max(1,l);if(F-Z>0.01){continue}ar.push(F)}ax.offsetAngles=ar}var ac=at._renderSpiderValueAxis(D,m,(K?V.adjR:V.r),ar);if(!ac){ac=[]}if(aa.spider){if(!K){for(var U=0;U<ac.length;U++){ac[U]=ac[U]*V.adjR/V.r}}ac.push(w);this._renderSpiderLines(P,O,ac,V,ar,n)}if(aC&&C.visible){ax.polarLabels=[];for(var U=0;U<av.length;U++){var p=av[U].x;var F=ap+p*2*Math.PI*az/Math.max(1,l);F=(360-F/(2*Math.PI)*360)%360;if(F<0){F=360+F}var ao=ah.measureText(av[U].text,0,{"class":aE.labels.style});var R=(K?V.adjR:V.r)+(X.visible?7:2);var ay=aE.labels;var aF;if(ay.autoRotate){var N=a.jqx._ptRotate(P-ao.width/2,O-R-ao.height,P,O,-F/180*Math.PI);var M=a.jqx._ptRotate(P+ao.width/2,O-R,P,O,-F/180*Math.PI);ao.width=Math.abs(N.x-M.x);ao.height=Math.abs(N.y-M.y);aF={x:Math.min(N.x,M.x),y:Math.min(N.y,M.y)}}else{aF=this._adjustTextBoxPosition(P,O,ao,R,F,false,false,false)}ax.polarLabels.push({x:aF.x,y:aF.y,value:av[U].text});ah.text(av[U].text,aF.x,aF.y,ao.width,ao.height,ay.autoRotate?90-F:ay.angle,{"class":ay.style},false,ay.halign,ay.valign)}}},_renderSpiderLines:function(l,h,z,o,f,c){var s=this.renderer;var t=o.startAngle;var q=o.endAngle;var k=o.isClosedCircle;for(var u=0;u<z.length;u++){var e=z[u];var d=undefined,p=undefined;for(var v=0;v<f.length;v++){var w=f[v];var n=a.jqx._ptrnd(l+e*Math.cos(w));var m=a.jqx._ptrnd(h+e*Math.sin(w));if(d){s.line(d.x,d.y,n,m,c)}d={x:n,y:m};if(!p){p={x:n,y:m}}}if(p&&k){s.line(d.x,d.y,p.x,p.y,c)}}},_renderSpiderValueAxis:function(e,F,S,R){var k=this;var w=this.seriesGroups[e];var G=this._getPolarAxisCoords(e,F);if(!G){return}var O=a.jqx._ptrnd(G.x);var M=a.jqx._ptrnd(G.y);S=S||G.r;var h=G.startAngle;var Y=G.endAngle;var W=a.jqx._rnd(Math.abs(h-Y)/(Math.PI*2),0.001,true);if(S<1){return}S=a.jqx._ptrnd(S);var f=this._getValueAxis(e);settings=this._getAxisSettings(f);if(!f||false==settings.visible){return}var K=this._stats.seriesGroups[e].mu;var C=settings.labels;var B=C.formatSettings;var c=w.type.indexOf("stacked")!=-1&&w.type.indexOf("100")!=-1;if(c&&!B){B={sufix:"%"}}var z=this._get([C.step,C.unitInterval/K]);if(isNaN(z)){z=1}z=Math.max(1,Math.round(z));this._calcValueAxisItems(e,S,z);var d=settings.gridLines;var D=settings.tickMarks;var t=this._getInterval(d,K);var P=this._getInterval(D,K);var m=settings.labels;var l={stroke:d.color,fill:"none","stroke-width":1,"stroke-dasharray":d.dashStyle||""};var p=this._renderData[e].valueAxis;var A=p.items;if(A.length&&settings.line.visible){var o=O+Math.cos(h)*S;var Z=M+Math.sin(h)*S;if(R.indexOf(h)==-1){var U=a.extend({},l);U["stroke-width"]=settings.line.lineWidth;U.stroke=settings.line.color;U["stroke-dasharray"]=settings.line.dashStyle;this.renderer.line(O,M,o,Z,U)}}A=A.reverse();var J=this.renderer;p.polarLabels=[];for(var X=0;X<A.length-1;X++){var Q=A[X];if(isNaN(Q)){continue}var E=(m.formatFunction)?m.formatFunction(Q):this._formatNumber(Q,B);var j=J.measureText(E,0,{"class":m.style});var N=O+(f.showTickMarks!=false?3:2);var L=M-p.itemWidth*X-j.height/2;var v=h;var I=a.jqx._ptRotate(N,L,O,M,v);var H=a.jqx._ptRotate(N+j.width,L+j.height,O,M,v);N=Math.min(I.x,H.x);L=Math.min(I.y,H.y);j.width=Math.abs(I.x-H.x);j.height=Math.abs(I.y-H.y);p.polarLabels.push({x:N,y:L,value:E});J.text(E,N,L,j.width,j.height,m.autoRotate?(90+h*180/Math.PI):m.angle,{"class":m.style},false,m.halign,m.valign)}var s=f.logarithmicScale==true;var u=s?A.length:p.rangeLength;aIncrement=2*Math.PI/u;var T=[];if(d.visible||w.spider){var l={stroke:d.color,fill:"none","stroke-width":1,"stroke-dasharray":d.dashStyle||""};for(var X=0;X<u;X+=t){var L=a.jqx._ptrnd(S*X/u);if(w.spider){T.push(L);continue}if(W!=1){var n=-h/Math.PI*180;var V=-Y/Math.PI*180;this.renderer.pieslice(O,M,0,L,Math.min(n,V),Math.max(n,V),undefined,l)}else{J.circle(O,M,L,l)}}}if(D.visible){tickMarkSize=5;var l={stroke:D.color,fill:"none","stroke-width":1,"stroke-dasharray":D.dashStyle||""};var q=O-Math.round(tickMarkSize/2);var o=q+tickMarkSize;for(var X=0;X<u;X+=P){if(d.visible&&(X%t)==0){continue}var L=a.jqx._ptrnd(M-S*X/u);J.line(a.jqx._ptrnd(q),L,a.jqx._ptrnd(o),L,l)}}return T},_renderAxis:function(K,G,T,C,d,I,o,Y,F,X,e){if(T.customDraw&&!X){return{width:NaN,height:NaN}}var z=T.title,p=T.labels,f=T.gridLines,D=T.tickMarks,S=T.padding;var q=D.visible?D.size:0;var U=2;var J={width:0,height:0};var t={width:0,height:0};if(K){J.height=t.height=C.height}else{J.width=t.width=C.width}if(!X&&G){if(K){C.x-=C.width}}var n=F.renderData;var c=n.itemWidth;if(z.visible&&z.text!=undefined&&z!=""){var s=z.angle;var j=this.renderer.measureText(z.text,s,{"class":z.style});t.width=j.width;t.height=j.height;if(!X){this.renderer.text(z.text,C.x+z.offset.x+(K?(!G?U+S.left:-S.right-U+2*C.width-t.width):0),C.y+z.offset.y+(!K?(!G?C.height-U-t.height-S.bottom:S.top+U):0),K?t.width:C.width,!K?t.height:C.height,s,{"class":z.style},true,z.halign,z.valign,z.rotationPoint)}}var O=0;var A=Y?-c/2:0;if(Y&&!K){p.halign="center"}var Q=C.x;var P=C.y;var H=p.textOffset;if(H){if(!isNaN(H.x)){Q+=H.x}if(!isNaN(H.y)){P+=H.y}}if(!K){Q+=A;if(G){P+=t.height>0?t.height+3*U:2*U;P+=q-(Y?q:q/4)}else{P+=Y?q:q/4}P+=S.top}else{Q+=S.left+U+(t.width>0?t.width+U:0)+(G?C.width-t.width:0);P+=A}var W=0;var N=0;var u=F.items;n.itemOffsets={};if(this._isToggleRefresh||!this._isUpdate){e=0}var m=false;var l=0;for(var V=0;V<u.length&&p.visible;V++,O+=c){if(!u[V]){continue}var B=u[V].text;if(!isNaN(u[V].targetX)){O=u[V].targetX}var j=this.renderer.measureText(B,p.angle,{"class":p.style});if(j.width>N){N=j.width}if(j.height>W){W=j.height}l+=K?W:N;if(!X){if((K&&O>C.height+2)||(!K&&O>C.width+2)){break}var M=K?Q+(G?(t.width==0?q:q-U):0):Q+O;var L=K?P+O:P;n.itemOffsets[u[V].key]={x:M,y:L};if(!m){if(!isNaN(u[V].x)||!isNaN(u[V].y)&&e){m=true}}u[V].targetX=M;u[V].targetY=L;u[V].width=!K?c:C.width-S.left-S.right-2*U-q-((t.width>0)?t.width+U:0);u[V].height=K?c:C.height-S.top-S.bottom-2*U-q-((t.height>0)?t.height+U:0);u[V].visible=true}}n.avgWidth=u.length==0?0:l/u.length;if(!X){var v={items:u,textSettings:p};if(isNaN(e)||!m){e=0}this._animateAxisText(v,e==0?1:0);if(e!=0){var k=this;this._enqueueAnimation("series",undefined,undefined,e,function(i,h,w){k._animateAxisText(h,w)},v)}}J.width+=2*U+q+t.width+N+(K&&t.width>0?U:0);J.height+=2*U+q+t.height+W+(!K&&t.height>0?U:0);if(!K){J.height+=S.top+S.bottom}else{J.width+=S.left+S.right}var E={};if(!X&&T.line.visible){var R={stroke:T.line.color,"stroke-width":T.line.width,"stroke-dasharray":T.line.dashStyle||""};if(K){var M=C.x+C.width+(G?S.left:-S.right);M=a.jqx._ptrnd(M);this.renderer.line(M,C.y,M,C.y+C.height,R)}else{var L=a.jqx._ptrnd(C.y+(G?C.height-S.bottom:S.top));this.renderer.line(a.jqx._ptrnd(C.x),L,a.jqx._ptrnd(C.x+C.width+1),L,R)}}J.width=a.jqx._rup(J.width);J.height=a.jqx._rup(J.height);return J},_drawPlotAreaLines:function(k,A,h){var E=this.seriesGroups[k];var d=E.orientation!="horizontal";if(!this._renderData||this._renderData.length<=k){return}var J=A?"valueAxis":"xAxis";var w=this._renderData[k][J];if(!w){return}var n=this._renderData.axisDrawState;if(!n){n=this._renderData.axisDrawState={}}var B="",j;if(A){B="valueAxis_"+((E.valueAxis)?k:"")+(d?"swap":"");j=this._getValueAxis(k)}else{B="xAxis_"+((E.xAxis||E.categoryAxis)?k:"")+(d?"swap":"");j=this._getXAxis(k)}if(n[B]){n=n[B]}else{n=n[B]={}}if(!A){d=!d}var H=w.settings;if(!H){return}if(H.customDraw){return}var G=H.gridLines,q=H.tickMarks,v=H.padding;var f=w.rect;var l=this._plotRect;if(!G||!q){return}var p=0.5;var e=[];var c={stroke:G.color,"stroke-width":G.width,"stroke-dasharray":G.dashStyle||""};var D=A?f.y+f.height:f.x;var o=G.offsets;if(A&&!j.flip){o=a.extend([],o);o=o.reverse()}if(o&&o.length>0){for(var C=0;C<o.length;C++){if(d){F=a.jqx._ptrnd(f.y+o[C].offset);if(F<f.y-p){break}}else{F=a.jqx._ptrnd(f.x+o[C].offset);if(F>f.x+f.width+p){break}}if(h.gridLines&&G.visible!=false&&n.gridLines!=true){if(d){this.renderer.line(a.jqx._ptrnd(l.x),F,a.jqx._ptrnd(l.x+l.width),F,c)}else{this.renderer.line(F,a.jqx._ptrnd(l.y),F,a.jqx._ptrnd(l.y+l.height),c)}}e[F]=true;if(h.alternatingBackground&&(G.alternatingBackgroundColor||G.alternatingBackgroundColor2)&&n.alternatingBackground!=true){var m=((C%2)==0)?G.alternatingBackgroundColor2:G.alternatingBackgroundColor;if(m){var I;if(d){I=this.renderer.rect(a.jqx._ptrnd(l.x),D,a.jqx._ptrnd(l.width-1),F-D,c)}else{I=this.renderer.rect(D,a.jqx._ptrnd(l.y),F-D,a.jqx._ptrnd(l.height),c)}this.renderer.attr(I,{"stroke-width":0,fill:m,opacity:G.alternatingBackgroundOpacity||1})}D=F}}}var c={stroke:q.color,"stroke-width":q.width,"stroke-dasharray":q.dashStyle||""};if(h.tickMarks&&q.visible&&n.tickMarks!=true){var u=q.size;var o=q.offsets;for(var C=0;C<o.length;C++){var F=a.jqx._ptrnd((d?f.y+o[C].offset:f.x+o[C].offset));if(e[F-1]){F--}else{if(e[F+1]){F++}}if(d){if(F>f.y+f.height+p){break}}else{if(F>f.x+f.width+p){break}}var z=!w.isMirror?-u:u;if(d){var t=f.x+f.width+(j.position=="right"?v.left:-v.right);if(!A){t=f.x+(w.isMirror?v.left:-v.right+f.width)}this.renderer.line(t,F,t+z,F,c)}else{var s=f.y+(w.isMirror?f.height:0);s+=w.isMirror?-v.bottom:v.top;s=a.jqx._ptrnd(s);this.renderer.line(F,s,F,s-z,c)}}}n.tickMarks=n.tickMarks||h.tickMarks;n.gridLines=n.gridLines||h.gridLines;n.alternatingBackground=n.alternatingBackground||h.alternatingBackground},_calcValueAxisItems:function(k,e,m){var o=this._stats.seriesGroups[k];if(!o||!o.isValid){return false}var A=this.seriesGroups[k];var c=A.orientation=="horizontal";var h=this._getValueAxis(k);var n=h.valuesOnTicks!=false;var f=h.dataField;var p=o.intervals;var u=e/p;var w=o.min;var t=o.mu;var d=h.logarithmicScale==true;var l=h.logarithmicScaleBase||10;var j=A.type.indexOf("stacked")!=-1&&A.type.indexOf("100")!=-1;if(d){t=!isNaN(h.unitInterval)?h.unitInterval:1}if(!n){p=Math.max(p-1,1)}while(this._renderData.length<k+1){this._renderData.push({})}this._renderData[k].valueAxis={};var s=this._renderData[k].valueAxis;s.itemWidth=s.intervalWidth=u;s.items=[];var q=s.items;for(var z=0;z<=p;z++){var v=0;if(d){if(j){v=o.max/Math.pow(l,p-z)}else{v=w*Math.pow(l,z)}}else{v=n?w+z*t:w+(z+0.5)*t}if(z%m!=0){q.push(NaN);continue}q.push(v)}s.rangeLength=d&&!j?o.intervals:(o.intervals)*t;if(h.flip!=true){q=q.reverse()}return true},_getDecimalPlaces:function(c,k,d){var l=0;if(isNaN(d)){d=10}for(var h=0;h<c.length;h++){var m=k===undefined?c[h]:c[h][k];if(isNaN(m)){continue}var e=m.toString();for(var f=0;f<e.length;f++){if(e[f]<"0"||e[f]>"9"){l=e.length-(f+1);if(l>=0){return Math.min(l,d)}}}if(l>0){m*=Math.pow(10,l)}while(Math.round(m)!=m&&l<d){l++;m*=10}}return l},_renderValueAxis:function(h,B,P,f){var O=this.seriesGroups[h];var T=O.orientation=="horizontal";var t=this._getValueAxis(h);if(!t){throw"SeriesGroup "+h+" is missing valueAxis definition"}var I={width:0,height:0};if(!this._isGroupVisible(h)||this._isPieOnlySeries()||O.type=="spider"){return I}var S=t.valuesOnTicks!=false;var J=this._stats.seriesGroups[h];var k=J.mu;var H=t.logarithmicScale==true;var E=t.logarithmicScaleBase||10;if(H){k=!isNaN(t.unitInterval)?t.unitInterval:1}if(k==0){k=1}if(isNaN(k)){return I}var M=this._getAxisSettings(t);var s=M.title,w=M.labels;var p=this._get([w.step,w.unitInterval/k]);if(isNaN(p)){p=1}p=Math.max(1,Math.round(p));if(!this._calcValueAxisItems(h,(T?B.width:B.height),p)||!M.visible){return I}if(!T){s.angle=(!this.rtl?-90:90);if(s.rotationPoint=="centercenter"){if(s.valign=="top"){s.rotationPoint="rightcenter"}else{if(s.valign=="bottom"){s.rotationPoint="leftcenter"}}}}var l=this._renderData[h].valueAxis;var j=w.formatSettings;var d=O.type.indexOf("stacked")!=-1&&O.type.indexOf("100")!=-1;if(d&&!j){j={sufix:"%"}}if(!w.formatFunction&&(!j||!j.decimalPlaces)){j=j||{};j.decimalPlaces=this._getDecimalPlaces([J.min,J.max,k],undefined,3)}var q=[];var n;if(this._elementRenderInfo&&this._elementRenderInfo.length>h){n=this._elementRenderInfo[h].valueAxis}for(var N=0;N<l.items.length;N++){var L=l.items[N];if(isNaN(L)){q.push(undefined);continue}var A=(w.formatFunction)?w.formatFunction(L):this._formatNumber(L,j);var c={key:L,text:A};if(n&&n.itemOffsets[L]){c.x=n.itemOffsets[L].x;c.y=n.itemOffsets[L].y}q.push(c)}if(H&&k!=1){var o=[];for(var N=0;N<q.length;N++){if(N%k==0){o.push(q[q.length-N-1])}else{o.push(undefined)}}q=o.reverse()}var e=M.gridLines;var m=H?k:this._getInterval(e,k);var D=T?B.width:B.height;var R=J.logarithmic?J.minPow:J.min;var u=J.logarithmic?J.maxPow:J.max;var Q=(t.flip==true);if(e.visible||t.alternatingBackgroundColor||t.alternatingBackgroundColor2){e.offsets=this._generateOffsets(R,u,D,{left:0,right:0},m,k,true,0,false,!Q);if(H&&!isNaN(e.step)){var o=[];for(var N=0;N<e.offsets.length;N+=e.step){o.push(e.offsets[N])}e.offsets=o}}var z=M.tickMarks;var K=H?k:this._getInterval(z,k);if(z.visible){z.offsets=this._generateOffsets(R,u,D,{left:0,right:0},K,k,true,0,false,!Q);if(H&&!isNaN(z.step)){var o=[];for(var N=0;N<z.offsets.length;N+=z.step){o.push(z.offsets[N])}z.offsets=o}}var G=(T&&t.position=="top")||(!T&&t.position=="right")||(!T&&this.rtl&&t.position!="left");var C={items:q,renderData:l};var F=this._getAnimProps(h);var v=F.enabled&&q.length<500?F.duration:0;if(this.enableAxisTextAnimation==false){v=0}l.settings=M;l.isMirror=G;l.rect=B;return this._renderAxis(!T,G,M,B,f,k,H,S,C,P,v)},_generateOffsets:function(p,t,w,n,z,e,c,u,v,j){var h=[];var o=1;if(e<1){o=1000000;p*=o;t*=o;e*=o}var k=t-p;var m=w-n.left-n.right;if(k==0){if(v||c){h.push({offset:n.left+m/2,value:p/o})}else{h.push({offset:0,value:p/o})}return h}var A=m/k;var d=A*e;var f=n.left;if(!c){if(!v){t+=e}}for(var s=p;s<=t;s+=e,f+=d){h.push({offset:f,value:s/o})}if(!c&&h.length>1){if(isNaN(u)){u=v?0:d/2}for(var s=0;s<h.length;s++){h[s].offset-=u;if(h[s].offset<=2){h[s].offset=0}if(h[s].offset>=w-2){h[s].offset=w}}}if(z>e){var q=[];var l=Math.round(z/e);for(var s=0;s<h.length;s++){if((s%l)==0){q.push({offset:h[s].offset,value:h[s].value})}}h=q}if(j){for(var s=0;s<h.length;s++){h[s].offset=w-h[s].offset}}return h},_generateDTOffsets:function(s,v,C,p,D,d,q,c,z,A,j){if(!q){q="day"}var h=[];if(s>v){return h}if(s==v){if(A){h.push({offset:c?C/2:p.left,value:s})}else{if(c){h.push({offset:C/2,value:s})}}return h}var l=C-p.left-p.right;var B=s;var m=p.left;var f=m;d=Math.max(d,1);var o=d;var e=Math.min(1,d);if(d>1&&q!="millisecond"){d=1}while(a.jqx._ptrnd(f)<=a.jqx._ptrnd(p.left+l+(c?0:p.right))){h.push({offset:f,value:B});var E=new Date(B.valueOf());if(q=="millisecond"){E.setMilliseconds(B.getMilliseconds()+d)}else{if(q=="second"){E.setSeconds(B.getSeconds()+d)}else{if(q=="minute"){E.setMinutes(B.getMinutes()+d)}else{if(q=="hour"){var n=E.valueOf();E.setHours(B.getHours()+d);if(n==E.valueOf()){E.setHours(B.getHours()+d+1)}}else{if(q=="day"){E.setDate(B.getDate()+d)}else{if(q=="month"){E.setMonth(B.getMonth()+d)}else{if(q=="year"){E.setFullYear(B.getFullYear()+d)}}}}}}}B=E;f=m+(B.valueOf()-s.valueOf())*e/(v.valueOf()-s.valueOf())*l}if(j){for(var u=0;u<h.length;u++){h[u].offset=C-h[u].offset}}if(o>1&&q!="millisecond"){var t=[];for(var u=0;u<h.length;u+=o){t.push({offset:h[u].offset,value:h[u].value})}h=t}if(!c&&!A&&h.length>1){var t=[];t.push({offset:0,value:undefined});for(var u=1;u<h.length;u++){t.push({offset:h[u-1].offset+(h[u].offset-h[u-1].offset)/2,value:undefined})}var w=t.length;if(w>1){t.push({offset:t[w-1].offset+(t[w-1].offset-t[w-2].offset)})}else{t.push({offset:C,value:undefined})}h=t}if(D>d){var t=[];var k=Math.round(D/o);for(var u=0;u<h.length;u++){if((u%k)==0){t.push({offset:h[u].offset,value:h[u].value})}}h=t}return h},_hasStackValueReversal:function(f,v){var k=this.seriesGroups[f];var l=-1!=k.type.indexOf("stacked");if(!l){return false}var c=-1!=k.type.indexOf("waterfall");var t=this._getDataLen(f);var w=0;var n=false;var z=[];for(var q=0;q<k.series.length;q++){z[q]=this._isSerieVisible(f,q)}for(var s=0;s<t;s++){var o=(c&&s!=0)?w:v;var e=0,u=0;var d=undefined;if(!c){n=false}for(var p=0;p<k.series.length;p++){if(!z[p]){continue}val=this._getDataValueAsNumber(s,k.series[p].dataField,f);if(isNaN(val)){continue}if(k.series[p].summary){var h=this._getDataValue(s,k.series[p].summary,f);if(undefined!==h){continue}}var m=!n?val<v:val<0;n=true;if(d==undefined){d=m}if(m!=d){return true}d=m;w+=val}}return false},_getValueAxis:function(c){var d=c==undefined?this.valueAxis:this.seriesGroups[c].valueAxis||this.valueAxis;if(!d){d=this.valueAxis={}}return d},_buildStats:function(M){var Z={seriesGroups:[]};this._stats=Z;for(var v=0;v<this.seriesGroups.length;v++){var F=this.seriesGroups[v];Z.seriesGroups[v]={};var I=this._getXAxis(v);var q=this._getValueAxis(v);var t=this._getXAxisStats(v,I,(F.orientation=="vertical")?M.width:M.height);var C=Z.seriesGroups[v];C.isValid=true;var N=(F.orientation=="horizontal")?M.width:M.height;var P=q.logarithmicScale==true;var O=q.logarithmicScaleBase;if(isNaN(O)){O=10}var J=-1!=F.type.indexOf("stacked");var f=J&&-1!=F.type.indexOf("100");var L=-1!=F.type.indexOf("range");var V=F.type.indexOf("waterfall")!=-1;if(V&&!this._moduleWaterfall){throw"Please include 'jqxchart.waterfall.js'"}if(f){C.psums=[];C.nsums=[]}var w=NaN,R=NaN;var e=NaN,h=NaN;var u=q?q.baselineValue:NaN;if(isNaN(u)){u=P&&!f?1:0}var k=false;if(u!=0&&J){k=this._hasStackValueReversal(v,u);if(k){u=0}}if(J&&V){k=this._hasStackValueReversal(v,u)}var E=this._getDataLen(v);var d=0;var aa=NaN;var o=[];if(V){for(var m=0;m<F.series.length;m++){o.push(NaN)}}var A=NaN;for(var Y=0;Y<E&&C.isValid;Y++){if(I.rangeSelector){var l=I.dataField?this._getDataValue(Y,I.dataField,v):Y;if(l&&t.isDateTime){l=this._castAsDate(l,I.dateFormat)}if(t.useIndeces){l=Y}if(l&&(l.valueOf()<t.min.valueOf()||l.valueOf()>t.max.valueOf())){continue}}var ab=q.minValue;var H=q.maxValue;if(q.baselineValue){if(isNaN(ab)){ab=u}else{ab=Math.min(u,ab)}if(isNaN(H)){H=u}else{H=Math.max(u,H)}}var z=0,B=0;for(var m=0;m<F.series.length;m++){if(!this._isSerieVisible(v,m)){continue}var K=NaN,U=NaN,D=NaN;if(F.type.indexOf("candle")!=-1||F.type.indexOf("ohlc")!=-1){var c=["Open","Low","Close","High"];for(var W in c){var n=this._getDataValueAsNumber(Y,F.series[m]["dataField"+c[W]],v);if(isNaN(n)){continue}D=isNaN(U)?n:Math.min(D,n);U=isNaN(U)?n:Math.max(U,n)}}else{if(L){var ac=this._getDataValueAsNumber(Y,F.series[m].dataFieldFrom,v);var G=this._getDataValueAsNumber(Y,F.series[m].dataFieldTo,v);U=Math.max(ac,G);D=Math.min(ac,G)}else{K=this._getDataValueAsNumber(Y,F.series[m].dataField,v);if(V){if(this._isSummary(v,Y)){var X=this._getDataValue(Y,F.series[m].summary,v);if(X!==undefined){continue}}if(!J){if(isNaN(o[m])){o[m]=K}else{K+=o[m]}o[m]=K}else{if(!isNaN(A)){K+=A}A=K}}if(isNaN(K)||(P&&K<=0)){continue}D=U=K}}if((isNaN(H)||U>H)&&((isNaN(q.maxValue))?true:U<=q.maxValue)){H=U}if((isNaN(ab)||D<ab)&&((isNaN(q.minValue))?true:D>=q.minValue)){ab=D}if(!isNaN(K)&&J&&!V){if(K>u){z+=K}else{if(K<u){B+=K}}}}if(!f){if(!isNaN(q.maxValue)){z=Math.min(q.maxValue,z)}if(!isNaN(q.minValue)){B=Math.max(q.minValue,B)}}if(P&&f){for(var m=0;m<F.series.length;m++){if(!this._isSerieVisible(v,m)){aa=0.01;continue}var K=this._getDataValueAsNumber(Y,F.series[m].dataField,v);if(isNaN(K)||K<=0){aa=0.01;continue}var S=z==0?0:K/z;if(isNaN(aa)||S<aa){aa=S}}}var s=z-B;if(d<s){d=s}if(f){C.psums[Y]=z;C.nsums[Y]=B}if(H>R||isNaN(R)){R=H}if(ab<w||isNaN(w)){w=ab}if(z>e||isNaN(e)){e=z}if(B<h||isNaN(h)){h=B}}if(f){e=e==0?0:Math.max(e,-h);h=h==0?0:Math.min(h,-e)}if(w==R){if(w==0){w=-1;R=1}else{if(w<0){R=0}else{if(!P){w=0}else{if(w==1){w=w/O;R=R*O}}}}}var T={gmin:w,gmax:R,gsumP:e,gsumN:h,gbase:u,isLogAxis:P,logBase:O,minPercent:aa,gMaxRange:d,isStacked:J,isStacked100:f,isWaterfall:V,hasStackValueReversal:k,valueAxis:q,valueAxisSize:N};C.context=T}this._mergeCommonValueAxisStats();for(var Y=0;Y<Z.seriesGroups.length;Y++){var C=Z.seriesGroups[Y];var Q=this._calcOutputGroupStats(C.context);for(var W in Q){C[W]=Q[W]}delete C.context}},_mergeCommonValueAxisStats:function(){var h={};for(var f=0;f<this.seriesGroups.length;f++){if(this.seriesGroups[f].valueAxis){continue}var e=this._stats.seriesGroups[f].context;if(isNaN(h.gmin)||h.gmin>e.gmin){h.gmin=e.gmin}if(isNaN(h.gmax)||h.gmax<e.gmax){h.gmax=e.gmax}if(isNaN(h.gsumP)||h.gsumP<e.gsumP){h.gsumP=e.gsumP}if(isNaN(h.gsumN)||h.gsumN<e.gsumN){h.gsumN=e.gsumN}if(isNaN(h.logBase)||h.logBase>e.logBase){h.logBase=e.logBase}if(isNaN(h.minPercent)||h.minPercent>e.minPercent){h.minPercent=e.minPercent}}for(var f=0;f<this.seriesGroups.length;f++){if(this.seriesGroups[f].valueAxis){continue}var c=this._stats.seriesGroups[f].context;for(var d in h){c[d]=h[d]}}},_calcOutputGroupStats:function(i){var d=i.gmin,h=i.gmax,D=i.gsumP,E=i.gsumN,C=i.gbase,e=i.isLogAxis,l=i.logBase,w=i.minPercent,m=i.gMaxRange,n=i.isStacked,j=i.isStacked100,f=i.isWaterfall,q=i.hasStackValueReversal,B=i.valueAxis,z=i.valueAxisSize;var v=i.valueAxis.unitInterval;if(!v){v=this._calcInterval(n?E:d,n?D:h,Math.max(z/80,2))}if(d==h){d=C;h=2*h}var k=NaN;var c=0;var t=0;if(e){if(j){k=0;var u=1;c=t=a.jqx.log(100,l);while(u>w){u/=l;c--;k++}d=Math.pow(l,c)}else{if(n&&!f){h=Math.max(h,D)}t=a.jqx._rnd(a.jqx.log(h,l),1,true);h=Math.pow(l,t);c=a.jqx._rnd(a.jqx.log(d,l),1,false);d=Math.pow(l,c)}v=l}if(d<E){E=d}if(h>D){D=h}var A=e?d:a.jqx._rnd(n&&!f?E:d,v,false);var s=e?h:a.jqx._rnd(n&&!f?D:h,v,true);if(j&&s>100){s=100}if(j&&!e){s=(s>0)?100:0;A=(A<0)?-100:0;v=B.unitInterval;if(isNaN(v)||v<=0||v>=100){v=10}if((100%v)!=0){for(;v>=1;v--){if((100%v)==0){break}}}}if(isNaN(s)||isNaN(A)||isNaN(v)){return{}}if(isNaN(k)){k=parseInt(((s-A)/(v==0?1:v)).toFixed())}if(e&&!j){k=t-c;m=Math.pow(l,k)}if(k<1){return{}}var o={min:A,max:s,logarithmic:e,logBase:l,base:e?A:C,minPow:c,maxPow:t,mu:v,maxRange:m,intervals:k,hasStackValueReversal:q};return o},_getDataLen:function(d){var c=this.source;if(d!=undefined&&d!=-1&&this.seriesGroups[d].source){c=this.seriesGroups[d].source}if(c instanceof a.jqx.dataAdapter){c=c.records}if(c){return c.length}return 0},_getDataValue:function(c,f,e){var d=this.source;if(e!=undefined&&e!=-1){d=this.seriesGroups[e].source||d}if(d instanceof a.jqx.dataAdapter){d=d.records}if(!d||c<0||c>d.length-1){return undefined}if(a.isFunction(f)){return f(c,d)}return(f&&f!="")?d[c][f]:d[c]},_getDataValueAsNumber:function(c,f,d){var e=this._getDataValue(c,f,d);if(this._isDate(e)){return e.valueOf()}if(typeof(e)!="number"){e=parseFloat(e)}if(typeof(e)!="number"){e=undefined}return e},_isPieGroup:function(c){var d=this.seriesGroups[c];if(!d||!d.type){return false}return d.type.indexOf("pie")!=-1||d.type.indexOf("donut")!=-1},_renderPieSeries:function(f,d){var h=this._getDataLen(f);var j=this.seriesGroups[f];var o=this._calcGroupOffsets(f,d).offsets;for(var t=0;t<j.series.length;t++){var m=j.series[t];if(m.customDraw){continue}var A=this._getSerieSettings(f,t);var k=m.colorScheme||j.colorScheme||this.colorScheme;var v=this._getAnimProps(f,t);var c=v.enabled&&h<5000&&!this._isToggleRefresh&&this._isVML!=true?v.duration:0;if(a.jqx.mobile.isMobileBrowser()&&(this.renderer instanceof a.jqx.HTML5Renderer)){c=0}var w=this._get([m.minAngle,m.startAngle]);if(isNaN(w)||w<0||w>360){w=0}var C=this._get([m.maxAngle,m.endAngle]);if(isNaN(C)||C<0||C>360){C=360}var q={rect:d,minAngle:w,maxAngle:C,groupIndex:f,serieIndex:t,settings:A,items:[]};for(var z=0;z<h;z++){var p=o[t][z];if(!p.visible){continue}var u=p.fromAngle;var e=p.toAngle;var B=this.renderer.pieslice(p.x,p.y,p.innerRadius,p.outerRadius,u,c==0?e:u,p.centerOffset);this._setRenderInfo(f,t,z,{element:B});var l={displayValue:p.displayValue,itemIndex:z,visible:p.visible,x:p.x,y:p.y,innerRadius:p.innerRadius,outerRadius:p.outerRadius,fromAngle:u,toAngle:e,centerOffset:p.centerOffset};q.items.push(l)}this._animatePieSlices(q,0);var n=this;this._enqueueAnimation("series",undefined,undefined,c,function(s,i,D){n._animatePieSlices(i,D)},q)}},_sliceSortFunction:function(d,c){return d.fromAngle-c.fromAngle},_animatePieSlices:function(p,d){var k;if(this._elementRenderInfo&&this._elementRenderInfo.length>p.groupIndex&&this._elementRenderInfo[p.groupIndex].series&&this._elementRenderInfo[p.groupIndex].series.length>p.serieIndex){k=this._elementRenderInfo[p.groupIndex].series[p.serieIndex]}var h=360*d;var w=this.seriesGroups[p.groupIndex];var o=this._getLabelsSettings(p.groupIndex,p.serieIndex,NaN);var n=o.visible;var c=[];for(var v=0;v<p.items.length;v++){var A=p.items[v];if(!A.visible){continue}var q=A.fromAngle;var f=A.fromAngle+d*(A.toAngle-A.fromAngle);if(k&&k[A.displayValue]){var m=k[A.displayValue].fromAngle;var e=k[A.displayValue].toAngle;q=m+(q-m)*d;f=e+(f-e)*d}c.push({index:v,from:q,to:f})}if(k){c.sort(this._sliceSortFunction)}var B=NaN;for(var v=0;v<c.length;v++){var A=p.items[c[v].index];var t=this._getRenderInfo(p.groupIndex,p.serieIndex,A.itemIndex);var q=c[v].from;var f=c[v].to;if(k){if(!isNaN(B)&&q>B){q=B}B=f;if(v==c.length-1&&f!=c[0].from){f=p.maxAngle+c[0].from}}var u=this.renderer.pieSlicePath(A.x,A.y,A.innerRadius,A.outerRadius,q,f,A.centerOffset);this.renderer.attr(t.element,{d:u});var j=this._getColors(p.groupIndex,p.serieIndex,A.itemIndex,"radialGradient",A.outerRadius);var z=p.settings;t.colors=j;t.settings=z;this.renderer.attr(t.element,{fill:j.fillColor,stroke:j.lineColor,"stroke-width":z.stroke,"fill-opacity":z.opacity,"stroke-opacity":z.opacity,"stroke-dasharray":"none"||z.dashStyle});var l=w.series[p.serieIndex];if(n){this._showPieLabel(p.groupIndex,p.serieIndex,A.itemIndex,o)}if(d==1){this._installHandlers(t.element,"pieslice",p.groupIndex,p.serieIndex,A.itemIndex)}}},_showPieLabel:function(f,h,E,q,i){var l=this._renderData[f].offsets[h][E];if(l.elementInfo.labelElement){this.renderer.removeElement(l.elementInfo.labelElement)}if(!q){q=this._getLabelsSettings(f,h,NaN)}var F=l.fromAngle,H=l.toAngle;var m=Math.abs(F-H);var t=m>180?1:0;if(m>360){F=0;H=360}var u=F*Math.PI*2/360;var j=H*Math.PI*2/360;var k=m/2+F;k=k%360;var G=k*Math.PI*2/360;var z;if(q.autoRotate==true){z=k<90||k>270?360-k:180-k}var w=q.linesEnabled;var p=this._showLabel(f,h,E,{x:0,y:0,width:0,height:0},"center","center",true,false,false,z);var e=q.radius||l.outerRadius+Math.max(p.width,p.height);if(this._isPercent(e)){e=parseFloat(e)/100*Math.min(this._plotRect.width,this._plotRect.height)/2}e+=l.centerOffset;if(isNaN(i)){i=0}e+=i;var B=this.seriesGroups[f];var o=B.series[h];var D=a.jqx.getNum([o.offsetX,B.offsetX,this._plotRect.width/2]);var C=a.jqx.getNum([o.offsetY,B.offsetY,this._plotRect.height/2]);var d=this._plotRect.x+D;var c=this._plotRect.y+C;var A=this._adjustTextBoxPosition(d,c,p,e,k,l.outerRadius>e,q.linesAngles!=false,q.autoRotate==true);var n={};l.elementInfo.labelElement=this._showLabel(f,h,E,{x:A.x,y:A.y,width:p.width,height:p.height},"left","top",false,false,false,z,n);if(e>l.outerRadius+5&&w!=false){var v={lineColor:l.elementInfo.colors.lineColor,stroke:l.elementInfo.settings.stroke,opacity:l.elementInfo.settings.opacity,dashStyle:l.elementInfo.settings.dashStyle};l.elementInfo.labelArrowPath=this._updateLebelArrowPath(l.elementInfo.labelArrowPath,d,c,e,l.outerRadius+i,G,q.linesAngles!=false,v,n)}},_updateLebelArrowPath:function(e,l,h,k,n,j,q,f,u){var d=a.jqx._ptrnd(l+(k-0)*Math.cos(j));var p=a.jqx._ptrnd(h-(k-0)*Math.sin(j));var c=a.jqx._ptrnd(l+(n+2)*Math.cos(j));var o=a.jqx._ptrnd(h-(n+2)*Math.sin(j));var s=[];s.push({x:u.x+u.width/2,y:u.y});s.push({x:u.x+u.width/2,y:u.y+u.height});s.push({x:u.x,y:u.y+u.height/2});s.push({x:u.x+u.width,y:u.y+u.height/2});if(!q){s.push({x:u.x,y:u.y});s.push({x:u.x+u.width,y:u.y});s.push({x:u.x+u.width,y:u.y+u.height});s.push({x:u.x,y:u.y+u.height})}s=s.sort(function(v,i){return a.jqx._ptdist(v.x,v.y,l,h)-a.jqx._ptdist(i.x,i.y,l,h)});s=s.sort(function(v,i){return(Math.abs(v.x-l)+Math.abs(v.y-h))-(Math.abs(i.x-l)+Math.abs(i.y-h))});for(var m=0;m<s.length;m++){s[m].x=a.jqx._ptrnd(s[m].x);s[m].y=a.jqx._ptrnd(s[m].y)}d=s[0].x;p=s[0].y;var t="M "+d+","+p+" L"+c+","+o;if(q){t="M "+d+","+p+" L"+c+","+p+" L"+c+","+o}if(e){this.renderer.attr(e,{d:t})}else{e=this.renderer.path(t,{})}this.renderer.attr(e,{fill:"none",stroke:f.lineColor,"stroke-width":f.stroke,"stroke-opacity":f.opacity,"stroke-dasharray":"none"||f.dashStyle});return e},_adjustTextBoxPosition:function(f,e,o,i,u,c,j,p){var d=u*Math.PI*2/360;var l=a.jqx._ptrnd(f+i*Math.cos(d));var k=a.jqx._ptrnd(e-i*Math.sin(d));if(p){var m=o.width;var q=o.height;var v=Math.atan(q/m)%(Math.PI*2);var z=d%(Math.PI*2);var t=0,s=0;var n=0;if(z<=v){n=m/2*Math.cos(d)}else{if(z>=v&&z<Math.PI-v){n=(q/2)*Math.sin(d)}else{if(z>=Math.PI-v&&z<Math.PI+v){n=m/2*Math.cos(d)}else{if(z>=Math.PI+v&&z<2*Math.PI-v){n=q/2*Math.sin(d)}else{if(z>=2*Math.PI-v&&z<2*Math.PI){n=m/2*Math.cos(d)}}}}}i+=Math.abs(n)+3;var l=a.jqx._ptrnd(f+i*Math.cos(d));var k=a.jqx._ptrnd(e-i*Math.sin(d));l-=o.width/2;k-=o.height/2;return{x:l,y:k}}if(!c){if(!j){if(u>=0&&u<45||u>=315&&u<360){k-=o.height/2}else{if(u>=45&&u<135){k-=o.height;l-=o.width/2}else{if(u>=135&&u<225){k-=o.height/2;l-=o.width}else{if(u>=225&&u<315){l-=o.width/2}}}}}else{if(u>=90&&u<270){k-=o.height/2;l-=o.width}else{k-=o.height/2}}}else{l-=o.width/2;k-=o.height/2}return{x:l,y:k}},_isColumnType:function(c){return(c.indexOf("column")!=-1||c.indexOf("waterfall")!=-1)},_getColumnGroupsCount:function(d){var f=0;d=d||"vertical";var h=this.seriesGroups;for(var e=0;e<h.length;e++){var c=h[e].orientation||"vertical";if(this._isColumnType(h[e].type)&&c==d){f++}}return f},_getColumnGroupIndex:function(j){var c=0;var d=this.seriesGroups[j].orientation||"vertical";for(var f=0;f<j;f++){var h=this.seriesGroups[f];var e=h.orientation||"vertical";if(this._isColumnType(h.type)&&e==d){c++}}return c},_renderAxisBands:function(f,F,N){var C=N?this._getXAxis(f):this._getValueAxis(f);var w=this.seriesGroups[f];var A=N?undefined:w.bands;if(!A){for(var S=0;S<f;S++){var p=N?this._getXAxis(S):this._getValueAxis(S);if(p==C){return}}A=C.bands}if(!a.isArray(A)){return}var q=F;var Y=w.orientation=="horizontal";if(Y){q={x:F.y,y:F.x,width:F.height,height:F.width}}this._calcGroupOffsets(f,q);for(var S=0;S<A.length;S++){var d=A[S];var W=this._get([d.minValue,d.from]);var B=this._get([d.maxValue,d.to]);var v=N?this.getXAxisDataPointOffset(W,f):this.getValueAxisDataPointOffset(W,f);var X=N?this.getXAxisDataPointOffset(B,f):this.getValueAxisDataPointOffset(B,f);var D=Math.abs(v-X);var M;if(w.polar||w.spider){var u=this._renderData[f];var e=u.polarCoords;if(!N){var I=this._toPolarCoord(e,F,F.x,u.baseOffset);var H=this._toPolarCoord(e,F,F.x,v);var G=this._toPolarCoord(e,F,F.x,X);var t=a.jqx._ptdist(I.x,I.y,H.x,H.y);var s=a.jqx._ptdist(I.x,I.y,G.x,G.y);var m=Math.round(-e.startAngle*360/(2*Math.PI));var T=Math.round(-e.endAngle*360/(2*Math.PI));if(m>T){var L=m;m=T;T=L}if(w.spider){var J=u.xAxis.offsetAngles;var K="";var P=[s,t];var E=J;if(e.isClosedCircle){E=a.extend([],J);E.push(E[0])}for(var O in P){for(var Q=0;Q<E.length;Q++){var V=O==0?Q:J.length-Q-1;var n=e.x+P[O]*Math.cos(E[V]);var l=e.y+P[O]*Math.sin(E[V]);if(K==""){K+="M "}else{K+=" L"}K+=a.jqx._ptrnd(n)+","+a.jqx._ptrnd(l)}if(O==0){var n=e.x+P[1]*Math.cos(E[V]);var l=e.y+P[1]*Math.sin(E[V]);K+=" L"+a.jqx._ptrnd(n)+","+a.jqx._ptrnd(l)}}K+=" Z";M=this.renderer.path(K)}else{M=this.renderer.pieslice(e.x,e.y,t,s,m,T)}}else{if(w.spider){p1=this.getPolarDataPointOffset(W,this._stats.seriesGroups[f].max,f);p2=this.getPolarDataPointOffset(B,this._stats.seriesGroups[f].max,f);var K="M "+e.x+","+e.y;K+=" L "+p1.x+","+p1.y;K+=" L "+p2.x+","+p2.y;M=this.renderer.path(K)}else{var h={};var o={x:Math.min(v,X),y:F.y,width:D,height:F.height};this._columnAsPieSlice(h,0,F,e,o);M=h.element}}}else{var c={x:Math.min(v,X),y:q.y,width:D,height:q.height};if(!N){c={x:q.x,y:Math.min(v,X),width:q.width,height:D}}if(Y){var L=c.x;c.x=c.y;c.y=L;L=c.width;c.width=c.height;c.height=L}if(D==0||D==1){M=this.renderer.line(a.jqx._ptrnd(c.x),a.jqx._ptrnd(c.y),a.jqx._ptrnd(c.x+(Y?0:c.width)),a.jqx._ptrnd(c.y+(Y?c.height:0)))}else{M=this.renderer.rect(c.x,c.y,c.width,c.height)}}var Z=d.fillColor||d.color||"#AAAAAA";var U=d.lineColor||Z;var z=d.lineWidth;if(isNaN(z)){z=1}var R=d.opacity;if(isNaN(R)||R<0||R>1){R=1}this.renderer.attr(M,{fill:Z,"fill-opacity":R,stroke:U,"stroke-opacity":R,"stroke-width":z,"stroke-dasharray":d.dashStyle})}},_getColumnGroupWidth:function(n,i,p){var f=this.seriesGroups[n];var m=f.type.indexOf("stacked")!=-1;var e=m?1:f.series.length;var l=this._getColumnGroupsCount(f.orientation);if(isNaN(l)||0==l){l=1}var o=i.rangeLength>=1?i.itemWidth:p*0.9;var d=f.columnsMinWidth;if(isNaN(d)){d=1}if(!isNaN(f.columnsMaxWidth)){d=Math.min(f.columnsMaxWidth,d)}if(d>o&&i.length>0){o=Math.max(o,p*0.9/i.length)}var j=d;if(!m){var h=f.seriesGapPercent;if(isNaN(h)||h<0){h=10}h/=100;var c=d;c*=(1+h);j+=f.series.length*c}var k=Math.max(o/l,j);return{requiredWidth:j,availableWidth:o,targetWidth:k}},_getColumnSerieWidthAndOffset:function(e,f){var o=this.seriesGroups[e];var z=o.series[f];var d=o.orientation=="horizontal";var c=this._plotRect;if(d){c={x:c.y,y:c.x,width:c.height,height:c.width}}var A=this._calcGroupOffsets(e,c);if(!A||A.xoffsets.length==0){return}var n=true;var B=this._getColumnGroupsCount(o.orientation);if(o.type=="candlestick"||o.type=="ohlc"){B=1}var u=this._getColumnGroupIndex(e);var v=this._getColumnGroupWidth(e,A.xoffsets,d?c.height:c.width);var j=0;var h=v.targetWidth;if(this.columnSeriesOverlap==true||(Math.round(h)>Math.round(v.availableWidth/B))){B=1;u=0}if(n){j-=(h*B)/2}j+=h*u;var G=o.columnsGapPercent;if(G<=0){G=0}if(isNaN(G)||G>=100){G=25}G/=100;var m=h*G;if(m+v.requiredWidth>v.targetWidth){m=Math.max(0,v.targetWidth-v.requiredWidth)}if(Math.round(h)>Math.round(v.availableWidth)){m=0}h-=m;j+=m/2;var C=o.seriesGapPercent;if(isNaN(C)||C<0){C=10}var p=o.type.indexOf("stacked")!=-1;var w=h;if(!p){w/=o.series.length}var D=this._get([o.seriesGap,(h*C/100)/(o.series.length-1)]);if(o.polar==true||o.spider==true||p||o.series.length<=1){D=0}var q=D*(o.series.length-1);if(o.series.length>1&&q>h-o.series.length*1){q=h-o.series.length*1;D=q/Math.max(1,(o.series.length-1))}var i=w-(q/o.series.length);var F=0;var k=o.columnsMaxWidth;if(!isNaN(k)){if(i>k){F=i-k;i=k}}var E=F/2;var l=0;if(!p){var H=(h-(i*o.series.length)-q)/2;var t=Math.max(0,f);l=H+i*f+t*D}else{l=F/2}return{width:i,offset:j+l}},_renderColumnSeries:function(h,d){var l=this.seriesGroups[h];if(!l.series||l.series.length==0){return}var k=this._getDataLen(h);var f=l.orientation=="horizontal";var D=d;if(f){D={x:d.y,y:d.x,width:d.height,height:d.width}}var t=this._calcGroupOffsets(h,D);if(!t||t.xoffsets.length==0){return}var o;if(l.polar==true||l.spider==true){o=this._getPolarAxisCoords(h,D)}var v={groupIndex:h,rect:d,vertical:!f,seriesCtx:[],renderData:t,polarAxisCoords:o};v.columnGroupWidth=this._getColumnGroupWidth(h,t.xoffsets,f?D.height:D.width);var j=this._getGroupGradientType(h);for(var w=0;w<l.series.length;w++){var p=l.series[w];if(p.customDraw){continue}var B=p.dataField;var z=this._getAnimProps(h,w);var c=z.enabled&&!this._isToggleRefresh&&t.xoffsets.length<100?z.duration:0;var m=this._getColumnSerieWidthAndOffset(h,w);var u=this._isSerieVisible(h,w);var n=this._getSerieSettings(h,w);var E=this._getColors(h,w,NaN,this._getGroupGradientType(h),4);var e=[];if(a.isFunction(p.colorFunction)&&!o){for(var C=t.xoffsets.first;C<=t.xoffsets.last;C++){e.push(this._getColors(h,w,C,j,4))}}var A={seriesIndex:w,serieColors:E,itemsColors:e,settings:n,columnWidth:m.width,xAdjust:m.offset,isVisible:u};v.seriesCtx.push(A)}this._animColumns(v,c==0?1:0);var q=this;this._enqueueAnimation("series",undefined,undefined,c,function(s,i,F){q._animColumns(i,F)},v)},_getPercent:function(e,d,c,f){if(isNaN(e)){e=d}if(!isNaN(c)&&!isNaN(e)&&e<c){e=c}if(!isNaN(f)&&!isNaN(e)&&e>f){e=f}if(isNaN(e)){return NaN}return e},_getColumnVOffsets:function(p,l,f,G,z,d){var t=this.seriesGroups[l];var K=this._getPercent(t.columnsTopWidthPercent,100,0,100);var A=this._getPercent(t.columnsBottomWidthPercent,100,0,100);if(K==0&&A==0){A=100}var M=this._getPercent(t.columnsNeckHeightPercent,NaN,0,100)/100;var H=this._getPercent(t.columnsNeckWidthPercent,100,0,100)/100;var v=[];var L=NaN;for(var u=0;u<f.length;u++){var Q=f[u];var m=Q.seriesIndex;var J=t.series[m];var q=p.offsets[m][G].from;var S=p.offsets[m][G].to;var C=p.xoffsets.data[G];var j;var k=Q.isVisible;if(!k){S=q}var c=this._elementRenderInfo;if(k&&c&&c.length>l&&c[l].series.length>m){var I=p.xoffsets.xvalues[G];j=c[l].series[m][I];if(j&&!isNaN(j.from)&&!isNaN(j.to)){q=j.from+(q-j.from)*d;S=j.to+(S-j.to)*d;C=j.xoffset+(C-j.xoffset)*d}}if(!j){S=q+(S-q)*(z?1:d)}if(isNaN(q)){q=isNaN(L)?p.baseOffset:L}if(!isNaN(S)&&z){L=S}else{L=q}if(isNaN(S)){S=q}var F={from:q,to:S,xOffset:C};if(K!=100||A!=100){F.funnel=true;F.toWidthPercent=K;F.fromWidthPercent=A}v.push(F)}if(z&&v.length>1&&!(this._elementRenderInfo&&this._elementRenderInfo.length>l)){var n=0,o=0,N=-Infinity,B=Infinity,O=Infinity,E=-Infinity;for(var P=0;P<v.length;P++){var Q=f[P];if(Q.isVisible){if(v[P].to>=v[P].from){o+=v[P].to-v[P].from;O=Math.min(O,v[P].from);E=Math.max(E,v[P].to)}else{n+=v[P].from-v[P].to;N=Math.max(N,v[P].from);B=Math.min(B,v[P].to)}}}var R=n;var w=o;n*=d;o*=d;var e=0,h=0;for(var P=0;P<v.length;P++){if(v[P].to>=v[P].from){var D=v[P].to-v[P].from;if(D+h>o){D=Math.max(0,o-h);v[P].to=v[P].from+D}if(K!=100||A!=100){v[P].funnel=true;if(!isNaN(M)&&w*M>=h){v[P].fromWidthPercent=H*100}else{v[P].fromWidthPercent=(Math.abs(v[P].from-O)/w)*(K-A)+A}if(!isNaN(M)&&w*M>=(0+(h+D))){v[P].toWidthPercent=H*100}else{v[P].toWidthPercent=(Math.abs(v[P].to-O)/w)*(K-A)+A}}h+=D}else{var D=v[P].from-v[P].to;if(D+e>n){D=Math.max(0,n-e);v[P].to=v[P].from-D}if(K!=100||A!=100){v[P].funnel=true;if(!isNaN(M)&&R*M>=e){v[P].fromWidthPercent=H*100}else{v[P].fromWidthPercent=(Math.abs(v[P].from-N)/R)*(K-A)+A}if(!isNaN(M)&&R*M>=(0+(e+D))){v[P].toWidthPercent=H*100}else{v[P].toWidthPercent=(Math.abs(v[P].to-N)/R)*(K-A)+A}}e+=D}}}return v},_columnAsPieSlice:function(e,m,o,q){var f=this._toPolarCoord(o,m,q.x,q.y);var h=this._toPolarCoord(o,m,q.x,q.y+q.height);var n=a.jqx._ptdist(o.x,o.y,h.x,h.y);var k=a.jqx._ptdist(o.x,o.y,f.x,f.y);var d=m.width;var p=Math.abs(o.startAngle-o.endAngle)*180/Math.PI;var c=-((q.x-m.x)*p)/d;var j=-((q.x+q.width-m.x)*p)/d;var l=o.startAngle;l=360*l/(Math.PI*2);c-=l;j-=l;if(e){if(e.element!=undefined){var i=this.renderer.pieSlicePath(o.x,o.y,n,k,j,c,0);i+=" Z";this.renderer.attr(e.element,{d:i})}else{e.element=this.renderer.pieslice(o.x,o.y,n,k,j,c,0)}}return{fromAngle:j,toAngle:c,innerRadius:n,outerRadius:k}},_setRenderInfo:function(f,c,e,d){this._renderData[f].offsets[c][e].elementInfo=d},_getRenderInfo:function(e,c,d){return this._renderData[e].offsets[c][d].elementInfo||{}},_animColumns:function(al,e){var s=this;var t=al.groupIndex;var E=this.seriesGroups[t];var A=al.renderData;var ad=E.type.indexOf("waterfall")!=-1;var J=this._getXAxis(t);var L=E.type.indexOf("stacked")!=-1;var f=al.polarAxisCoords;var D=this._getGroupGradientType(t);var v=al.columnGroupWidth.targetWidth;var C=-1;for(var ae=0;ae<E.series.length;ae++){if(this._isSerieVisible(t,ae)){C=ae;break}}var am=NaN,w=NaN;for(var ae=0;ae<al.seriesCtx.length;ae++){var ak=al.seriesCtx[ae];if(isNaN(am)||am>ak.xAdjust){am=ak.xAdjust}if(isNaN(w)||w<ak.xAdjust+ak.columnWidth){w=ak.xAdjust+ak.columnWidth}}var u=Math.abs(w-am);var G=this._get([E.columnsGapPercent,25])/100;if(isNaN(G)<0||G>=1){G=0.25}var h=G*u;var ac=al.renderData.xoffsets;var V=-1;var R={};var U=E.skipOverlappingPoints==true;for(var ag=ac.first;ag<=ac.last;ag++){var Y=ac.data[ag];if(isNaN(Y)){continue}if(V!=-1&&Math.abs(Y-V)<(u-1+h)&&U){continue}else{V=Y}var I=this._getColumnVOffsets(A,t,al.seriesCtx,ag,L,e);var O=false;if(ad){for(var F=0;F<E.series.length;F++){if(E.series[F].summary&&ac.xvalues[ag][E.series[F].summary]){O=true}}}for(var F=0;F<al.seriesCtx.length;F++){var ak=al.seriesCtx[F];var o=ak.seriesIndex;var H=E.series[o];var B=I[F].from;var an=I[F].to;var N=I[F].xOffset;var k=(al.vertical?al.rect.x:al.rect.y)+ak.xAdjust;var ah=ak.settings;var Z=ak.itemsColors.length!=0?ak.itemsColors[ag-A.xoffsets.first]:ak.serieColors;var l=this._isSerieVisible(t,o);if(!l){continue}var Y=a.jqx._ptrnd(k+N);var T={x:Y,width:ak.columnWidth};if(I[F].funnel){T.fromWidthPercent=I[F].fromWidthPercent;T.toWidthPercent=I[F].toWidthPercent}var m=true;if(al.vertical){T.y=B;T.height=an-B;if(T.height<0){T.y+=T.height;T.height=-T.height;m=false}}else{T.x=B<an?B:an;T.width=Math.abs(B-an);m=B-an<0;T.y=Y;T.height=ak.columnWidth}var p=B-an;if(isNaN(p)){continue}p=Math.abs(p);var K=undefined;var d=s._getRenderInfo(t,o,ag);var z=d.element;var S=d.labelElement;var Q=z==undefined;if(S){s.renderer.removeElement(S);S=undefined}if(!f){if(I[F].funnel){var ab=this._getTrapezoidPath(a.extend({},T),al.vertical,m);if(Q){z=this.renderer.path(ab,{})}else{this.renderer.attr(z,{d:ab})}}else{if(Q){z=this.renderer.rect(T.x,T.y,al.vertical?T.width:0,al.vertical?0:T.height)}else{if(al.vertical==true){this.renderer.attr(z,{x:T.x,y:T.y,height:p})}else{this.renderer.attr(z,{x:T.x,y:T.y,width:p})}}}}else{var n={element:z};K=this._columnAsPieSlice(n,al.rect,f,T);z=n.element;var Z=this._getColors(t,o,undefined,"radialGradient",K.outerRadius)}if(p<1&&(e!=1||f)){this.renderer.attr(z,{display:"none"})}else{this.renderer.attr(z,{display:"block"})}if(Q){this.renderer.attr(z,{fill:Z.fillColor,"fill-opacity":ah.opacity,"stroke-opacity":ah.opacity,stroke:Z.lineColor,"stroke-width":ah.stroke,"stroke-dasharray":ah.dashStyle})}if(S){this.renderer.removeElement(S)}if(!l||(p==0&&e<1)){d={element:z,labelElement:S};s._setRenderInfo(t,o,ag,d);continue}if(ad&&this._get([H.showWaterfallLines,E.showWaterfallLines])!=false){if(!L||(L&&F==C)){var af=L?-1:F;if(e==1&&!isNaN(A.offsets[F][ag].from)&&!isNaN(A.offsets[F][ag].to)){var P=R[af];if(P!=undefined){var aj={x:P.x,y:a.jqx._ptrnd(P.y)};var ai={x:Y,y:aj.y};var W=E.columnsTopWidthPercent/100;if(isNaN(W)){W=1}else{if(W>1||W<0){W=1}}var aa=E.columnsBottomWidthPercent/100;if(isNaN(aa)){aa=1}else{if(aa>1||aa<0){aa=1}}var q=al.vertical?T.width:T.height;aj.x=aj.x-q/2+q/2*W;if(O){var c=q*W/2;ai.x=ai.x+q/2-(J.flip?-c:c)}else{var c=q*aa/2;ai.x=ai.x+q/2-(J.flip?-c:c)}if(!al.vertical){this._swapXY([aj]);this._swapXY([ai])}this.renderer.line(aj.x,aj.y,ai.x,ai.y,{stroke:P.color,"stroke-width":ah.stroke,"stroke-opacity":ah.opacity,"fill-opacity":ah.opacity,"stroke-dasharray":ah.dashStyle})}}}if(e==1&&p!=0){R[L?-1:F]={y:an,x:(al.vertical?T.x+T.width:T.y+T.height),color:Z.lineColor}}}if(f){var X=this._toPolarCoord(f,al.rect,T.x+T.width/2,T.y);var q=this._showLabel(t,o,ag,T,undefined,undefined,true);var M=K.outerRadius+10;labelOffset=this._adjustTextBoxPosition(f.x,f.y,q,M,(K.fromAngle+K.toAngle)/2,true,false,false);S=this._showLabel(t,o,ag,{x:labelOffset.x,y:labelOffset.y},undefined,undefined,false,false,false)}else{S=this._showLabel(t,o,ag,T,undefined,undefined,false,false,m)}d={element:z,labelElement:S};s._setRenderInfo(t,o,ag,d);if(e==1){this._installHandlers(z,"column",t,o,ag)}}}},_getTrapezoidPath:function(j,k,h){var n="";var c=j.fromWidthPercent/100;var d=j.toWidthPercent/100;if(!k){var f=j.width;j.width=j.height;j.height=f;f=j.x;j.x=j.y;j.y=f}var l=j.x+j.width/2;var m=[{x:l-j.width*(!h?c:d)/2,y:j.y+j.height},{x:l-j.width*(!h?d:c)/2,y:j.y},{x:l+j.width*(!h?d:c)/2,y:j.y},{x:l+j.width*(!h?c:d)/2,y:j.y+j.height}];if(!k){this._swapXY(m)}n+="M "+a.jqx._ptrnd(m[0].x)+","+a.jqx._ptrnd(m[0].y);for(var e=1;e<m.length;e++){n+=" L "+a.jqx._ptrnd(m[e].x)+","+a.jqx._ptrnd(m[e].y)}n+=" Z";return n},_swapXY:function(e){for(var d=0;d<e.length;d++){var c=e[d].x;e[d].x=e[d].y;e[d].y=c}},_renderCandleStickSeries:function(f,d,w){var o=this;var j=o.seriesGroups[f];if(!j.series||j.series.length==0){return}var e=j.orientation=="horizontal";var A=d;if(e){A={x:d.y,y:d.x,width:d.height,height:d.width}}var p=o._calcGroupOffsets(f,A);if(!p||p.xoffsets.length==0){return}var B=A.width;var m;if(j.polar||j.spider){m=o._getPolarAxisCoords(f,A);B=2*m.r}var i=o._alignValuesWithTicks(f);var h=o._getGroupGradientType(f);var k=[];for(var t=0;t<j.series.length;t++){k[t]=o._getColumnSerieWidthAndOffset(f,t)}for(var t=0;t<j.series.length;t++){if(!this._isSerieVisible(f,t)){continue}var z=o._getSerieSettings(f,t);var n=j.series[t];if(n.customDraw){continue}var l=a.isFunction(n.colorFunction)?undefined:o._getColors(f,t,NaN,h);var q={rect:d,inverse:e,groupIndex:f,seriesIndex:t,symbolType:n.symbolType,symbolSize:n.symbolSize,"fill-opacity":z.opacity,"stroke-opacity":z.opacity,"stroke-width":z.stroke,"stroke-dasharray":z.dashStyle,gradientType:h,colors:l,renderData:p,polarAxisCoords:m,columnsInfo:k,isOHLC:w,items:[],self:o};var u=o._getAnimProps(f,t);var c=u.enabled&&!o._isToggleRefresh&&p.xoffsets.length<5000?u.duration:0;o._animCandleStick(q,0);var v;o._enqueueAnimation("series",undefined,undefined,c,function(D,s,C){o._animCandleStick(s,C)},q)}},_animCandleStick:function(w,c){var t=["Open","Low","Close","High"];var f=w.columnsInfo[w.seriesIndex].width;var k=w.self.seriesGroups[w.groupIndex];var A=w.renderData.xoffsets;var H=-1;var p=Math.abs(A.data[A.last]-A.data[A.first]);p*=c;var d=NaN,u=NaN;for(var C=0;C<w.columnsInfo.length;C++){var B=w.columnsInfo[C];if(isNaN(d)||d>B.offset){d=B.offset}if(isNaN(u)||u<B.offset+B.width){u=B.offset+B.width}}var o=Math.abs(u-d);var E=k.skipOverlappingPoints!=false;for(var D=A.first;D<=A.last;D++){var n=A.data[D];if(isNaN(n)){continue}if(H!=-1&&Math.abs(n-H)<o&&E){continue}var F=Math.abs(A.data[D]-A.data[A.first]);if(F>p){break}H=n;var G=w.items[D]=w.items[D]||{};for(var C in t){var I=w.self._getDataValueAsNumber(D,k.series[w.seriesIndex]["dataField"+t[C]],w.groupIndex);if(isNaN(I)){break}var m=w.renderData.offsets[w.seriesIndex][D][t[C]];if(isNaN(m)){break}G[t[C]]=m}n+=w.inverse?w.rect.y:w.rect.x;if(w.polarAxisCoords){var v=this._toPolarCoord(w.polarAxisCoords,this._plotRect,n,m);n=v.x;m=v.y}n=a.jqx._ptrnd(n);for(var h in t){G[h]=a.jqx._ptrnd(G[h])}var l=w.colors;if(!l){l=w.self._getColors(w.groupIndex,w.seriesIndex,D,w.gradientType)}if(!w.isOHLC){var z=G.lineElement;if(!z){z=w.inverse?this.renderer.line(G.Low,n,G.High,n):this.renderer.line(n,G.Low,n,G.High);this.renderer.attr(z,{fill:l.fillColor,"fill-opacity":w["fill-opacity"],"stroke-opacity":w["fill-opacity"],stroke:l.lineColor,"stroke-width":w["stroke-width"],"stroke-dasharray":w["stroke-dasharray"]});G.lineElement=z}var s=G.stickElement;n-=f/2;if(!s){var e=l.fillColor;if(G.Close<=G.Open&&l.fillColorAlt){e=l.fillColorAlt}s=w.inverse?this.renderer.rect(Math.min(G.Open,G.Close),n,Math.abs(G.Close-G.Open),f):this.renderer.rect(n,Math.min(G.Open,G.Close),f,Math.abs(G.Close-G.Open));this.renderer.attr(s,{fill:e,"fill-opacity":w["fill-opacity"],"stroke-opacity":w["fill-opacity"],stroke:l.lineColor,"stroke-width":w["stroke-width"],"stroke-dasharray":w["stroke-dasharray"]});G.stickElement=s}if(c==1){this._installHandlers(s,"column",w.groupIndex,w.seriesIndex,D)}}else{var q="M"+n+","+G.Low+" L"+n+","+G.High+" M"+(n-f/2)+","+G.Open+" L"+n+","+G.Open+" M"+(n+f/2)+","+G.Close+" L"+n+","+G.Close;if(w.inverse){q="M"+G.Low+","+n+" L"+G.High+","+n+" M"+G.Open+","+(n-f/2)+" L"+G.Open+","+n+" M"+G.Close+","+n+" L"+G.Close+","+(n+f/2)}var z=G.lineElement;if(!z){z=this.renderer.path(q,{});this.renderer.attr(z,{fill:l.fillColor,"fill-opacity":w["fill-opacity"],"stroke-opacity":w["fill-opacity"],stroke:l.lineColor,"stroke-width":w["stroke-width"],"stroke-dasharray":w["stroke-dasharray"]});G.lineElement=z}if(c==1){this._installHandlers(z,"column",w.groupIndex,w.seriesIndex,D)}}}},_renderScatterSeries:function(f,E,G){var v=this.seriesGroups[f];if(!v.series||v.series.length==0){return}var h=v.type.indexOf("bubble")!=-1;var w=v.orientation=="horizontal";var o=E;if(w){o={x:E.y,y:E.x,width:E.height,height:E.width}}var p=this._calcGroupOffsets(f,o);if(!p||p.xoffsets.length==0){return}var O=o.width;var d;if(v.polar||v.spider){d=this._getPolarAxisCoords(f,o);O=2*d.r}var W=this._alignValuesWithTicks(f);var u=this._getGroupGradientType(f);if(!G){G="to"}for(var j=0;j<v.series.length;j++){var U=this._getSerieSettings(f,j);var L=v.series[j];if(L.customDraw){continue}var B=L.dataField;var n=a.isFunction(L.colorFunction);var M=this._getColors(f,j,NaN,u);var V=NaN,A=NaN;if(h){for(var T=p.xoffsets.first;T<=p.xoffsets.last;T++){var D=this._getDataValueAsNumber(T,(L.radiusDataField||L.sizeDataField),f);if(typeof(D)!="number"){throw"Invalid radiusDataField value at ["+T+"]"}if(!isNaN(D)){if(isNaN(V)||D<V){V=D}if(isNaN(A)||D>A){A=D}}}}var l=L.minRadius||L.minSymbolSize;if(isNaN(l)){l=O/50}var F=L.maxRadius||L.maxSymbolSize;if(isNaN(F)){F=O/25}if(l>F){F=l}var N=L.radius;if(isNaN(N)&&!isNaN(L.symbolSize)){N=(L.symbolType=="circle")?L.symbolSize/2:L.symbolSize}else{N=5}var H=this._getAnimProps(f,j);var C=H.enabled&&!this._isToggleRefresh&&p.xoffsets.length<5000?H.duration:0;var z={groupIndex:f,seriesIndex:j,symbolType:L.symbolType,symbolSize:L.symbolSize,"fill-opacity":U.opacity,"stroke-opacity":U.opacity,"stroke-width":U.stroke,"stroke-dasharray":U.dashStyle,items:[],polarAxisCoords:d};for(var T=p.xoffsets.first;T<=p.xoffsets.last;T++){var D=this._getDataValueAsNumber(T,B,f);if(typeof(D)!="number"){continue}var K=p.xoffsets.data[T];var I=p.xoffsets.xvalues[T];var J=p.offsets[j][T][G];if(J<o.y||J>o.y+o.height){continue}if(isNaN(K)||isNaN(J)){continue}if(w){var R=K;K=J;J=R+E.y}else{K+=E.x}var P=N;if(h){var q=this._getDataValueAsNumber(T,(L.radiusDataField||L.sizeDataField),f);if(typeof(q)!="number"){continue}P=l+(F-l)*(q-V)/Math.max(1,A-V);if(isNaN(P)){P=l}}p.offsets[j][T].radius=P;var m=NaN,Q=NaN;var t=0;var c=this._elementRenderInfo;if(I!=undefined&&c&&c.length>f&&c[f].series.length>j){var e=c[f].series[j][I];if(e&&!isNaN(e.to)){m=e.to;Q=e.xoffset;t=N;if(w){var R=Q;Q=m;m=R+E.y}else{Q+=E.x}if(h){t=l+(F-l)*(e.valueRadius-V)/Math.max(1,A-V);if(isNaN(t)){t=l}}}}if(n){M=this._getColors(f,j,T,u)}z.items.push({from:t,to:P,itemIndex:T,fill:M.fillColor,stroke:M.lineColor,x:K,y:J,xFrom:Q,yFrom:m})}this._animR(z,0);var k=this;var S;this._enqueueAnimation("series",undefined,undefined,C,function(X,i,s){k._animR(i,s)},z)}},_animR:function(q,j){var l=q.items;var s=q.symbolType||"circle";var d=q.symbolSize;for(var f=0;f<l.length;f++){var p=l[f];var n=p.x;var m=p.y;var c=Math.round((p.to-p.from)*j+p.from);if(!isNaN(p.yFrom)){m=p.yFrom+(m-p.yFrom)*j}if(!isNaN(p.xFrom)){n=p.xFrom+(n-p.xFrom)*j}if(q.polarAxisCoords){var o=this._toPolarCoord(q.polarAxisCoords,this._plotRect,n,m);n=o.x;m=o.y}n=a.jqx._ptrnd(n);m=a.jqx._ptrnd(m);c=a.jqx._ptrnd(c);var h=this._getRenderInfo(q.groupIndex,q.seriesIndex,l[f].itemIndex);var e=h.element;var k=h.labelElement;if(s=="circle"){if(!e){e=this.renderer.circle(n,m,c);this.renderer.attr(e,{fill:p.fill,"fill-opacity":q["fill-opacity"],"stroke-opacity":q["fill-opacity"],stroke:p.stroke,"stroke-width":q["stroke-width"],"stroke-dasharray":q["stroke-dasharray"]})}if(this._isVML){this.renderer.updateCircle(e,undefined,undefined,c)}else{this.renderer.attr(e,{r:c,cy:m,cx:n})}}else{if(e){this.renderer.removeElement(e)}e=this._drawSymbol(s,n,m,p.fill,q["fill-opacity"],p.stroke,q["stroke-opacity"]||q["fill-opacity"],q["stroke-width"],q["stroke-dasharray"],d||c)}if(k){this.renderer.removeElement(k)}k=this._showLabel(q.groupIndex,q.seriesIndex,p.itemIndex,{x:n-c,y:m-c,width:2*c,height:2*c});if(j>=1){this._installHandlers(e,"circle",q.groupIndex,q.seriesIndex,p.itemIndex)}this._setRenderInfo(q.groupIndex,q.seriesIndex,l[f].itemIndex,{element:e,labelElement:k})}},_showToolTip:function(p,n,J,C,f){var z=this;var m=z._getXAxis(J);var c=z._getValueAxis(J);if(z._ttEl&&J==z._ttEl.gidx&&C==z._ttEl.sidx&&f==z._ttEl.iidx){return}var l=z.seriesGroups[J];var q=l.series[C];var j=z.enableCrosshairs&&!(l.polar||l.spider);if(z._pointMarker){p=parseInt(z._pointMarker.x+5);n=parseInt(z._pointMarker.y-5)}else{j=false}var k=j&&z.showToolTips==false;p=a.jqx._ptrnd(p);n=a.jqx._ptrnd(n);var K=z._ttEl==undefined;if(l.showToolTips==false||q.showToolTips==false){return}var i=z._get([q.toolTipFormatSettings,l.toolTipFormatSettings,c.toolTipFormatSettings,z.toolTipFormatSettings]);var v=z._get([q.toolTipFormatFunction,l.toolTipFormatFunction,c.toolTipFormatFunction,z.toolTipFormatFunction]);var o=z._getColors(J,C,f);var w=z._getDataValue(f,m.dataField,J);if(m.dataField==undefined||m.dataField==""){w=f}if(m.type=="date"){w=z._castAsDate(w,(i?i.dateFormat:undefined)||m.dateFormat)}var u="";if(a.isFunction(v)){var A={};var E=0;for(var d in q){if(d.indexOf("dataField")==0){A[d.substring(9,d.length).toLowerCase()]=z._getDataValue(f,q[d],J);E++}}if(E==0){A=z._getDataValue(f,undefined,J)}else{if(E==1){A=A[""]}}u=v(A,f,q,l,w,m)}else{u=z._getFormattedValue(J,C,f,i,v);var e=this._getAxisSettings(m);var O=e.toolTipFormatSettings;var h=e.toolTipFormatFunction;if(!h&&!O&&m.type=="date"){h=this._getDefaultDTFormatFn(m.baseUnit||"day")}var N=z._formatValue(w,O,h,J,C,f);if(!z._isPieGroup(J)){var s=(m.displayText||m.dataField||"");if(s.length>0){u=s+": "+N+"<br>"+u}else{u=N+"<br>"+u}}else{w=z._getDataValue(f,q.displayText||q.dataField,J);N=z._formatValue(w,O,h,J,C,f);u=N+": "+u}}if(!z._ttEl){z._ttEl={}}z._ttEl.sidx=C;z._ttEl.gidx=J;z._ttEl.iidx=f;rect=z.renderer.getRect();if(j){var G=a.jqx._ptrnd(z._pointMarker.x);var F=a.jqx._ptrnd(z._pointMarker.y);if(z._ttEl.vLine&&z._ttEl.hLine){z.renderer.attr(z._ttEl.vLine,{x1:G,x2:G});z.renderer.attr(z._ttEl.hLine,{y1:F,y2:F})}else{var D=z.crosshairsColor||z._defaultLineColor;z._ttEl.vLine=z.renderer.line(G,z._plotRect.y,G,z._plotRect.y+z._plotRect.height,{stroke:D,"stroke-width":z.crosshairsLineWidth||1,"stroke-dasharray":z.crosshairsDashStyle||""});z._ttEl.hLine=z.renderer.line(z._plotRect.x,F,z._plotRect.x+z._plotRect.width,F,{stroke:D,"stroke-width":z.crosshairsLineWidth||1,"stroke-dasharray":z.crosshairsDashStyle||""})}}if(!k&&z.showToolTips!=false){var H=q.toolTipClass||l.toolTipClass||this.toThemeProperty("jqx-chart-tooltip-text",null);var L=q.toolTipBackground||l.toolTipBackground||"#FFFFFF";var M=q.toolTipLineColor||l.toolTipLineColor||o.lineColor;var B=this.getItemCoord(J,C,f);var I=0;if(z._pointMarker&&z._pointMarker.element){I=q.symbolSizeSelected;if(isNaN(I)){I=q.symbolSize}if(isNaN(I)||I>50||I<0){I=l.symbolSize}if(isNaN(I)||I>50||I<0){I=8}}z._createTooltip(B,l,u,{css:H,fill:L,stroke:M,symbolSize:I})}},_fitTooltip:function(d,k,l,m,f){var e={};var c=2+f/2;var h=7;if(k.x-l.width-h-c>d.x&&k.y+k.height/2-l.height/2>d.y&&k.y+k.height/2+l.height/2<d.y+d.height){e.left={arrowLocation:"right",x:k.x-l.width-h-c,y:k.y+k.height/2-l.height/2,width:l.width+h,height:l.height}}if(k.x+k.width+l.width+h+c<d.x+d.width&&k.y+k.height/2-l.height/2>d.y&&k.y+k.height/2+l.height/2<d.y+d.height){e.right={arrowLocation:"left",x:k.x+k.width+c,y:k.y+k.height/2-l.height/2,width:l.width+h,height:l.height}}if(k.y-l.height-c-h>d.y&&k.x+k.width/2-l.width/2>d.x&&k.x+k.width/2+l.width/2<d.x+d.width){e.top={arrowLocation:"bottom",x:k.x+k.width/2-l.width/2,y:k.y-l.height-c-h,width:l.width,height:l.height+h}}if(k.y+k.height+l.height+h+c<d.y+d.height&&k.x+k.width/2-l.width/2>d.x&&k.x+k.width/2+l.width/2<d.x+d.width){e.bottom={arrowLocation:"top",x:k.x+k.width/2-l.width/2,y:k.y+k.height+c,width:l.width,height:l.height+h}}if(k.width>k.height||((m.type.indexOf("stackedcolumn")!=-1||m.type.indexOf("stackedwaterfall")!=-1)&&m.orientation!="horizontal")){if(e.left){return e.left}if(e.right){return e.right}}else{if(e.top){return e.top}if(e.bottom){return e.bottom}}for(var j in e){if(e[j]){return e[j]}}return{arrowLocation:""}},_createTooltip:function(F,l,z,A){var s=this;var w=l.type;var D=false;var E=s._ttEl.box;if(!E){D=true;E=s._ttEl.box=document.createElement("div");var f=10000000;E.style.position="absolute";E.style.cursor="default";a(c).css({"z-index":f,"box-sizing":"content-box"});a(document.body).append(E);var c=document.createElement("div");c.id="arrowOuterDiv";c.style.width="0px";c.style.height="0px";c.style.position="absolute";a(c).css({"z-index":f+1,"box-sizing":"content-box"});var i=document.createElement("div");i.id="arrowInnerDiv";i.style.width="0px";i.style.height="0px";i.style.position="absolute";var v=document.createElement("div");v.id="contentDiv";v.style.position="absolute";a(v).css({"box-sizing":"content-box"});a(v).addClass("jqx-rc-all jqx-button");a(v).appendTo(a(E));a(c).appendTo(a(E));a(i).appendTo(a(E));a(i).css({"z-index":f+2,"box-sizing":"content-box"})}if(!z||z.length==0){a(E).fadeTo(0,0);return}v=a(E).find("#contentDiv")[0];c=a(E).find("#arrowOuterDiv")[0];i=a(E).find("#arrowInnerDiv")[0];v.style.backgroundColor=A.fill;v.style.borderColor=A.stroke;var n="<span class='"+A.css+"'>"+z+"</span>";a(v).html(n);var q=this._measureHtml(n,"jqx-rc-all jqx-button");rect=s._plotRect;if(q.width>rect.width||q.height>rect.height){return}var p={width:q.width,height:q.height};arrowLocation="";var C=5;var t=7;var u=s._isColumnType(w);x=Math.max(F.x,rect.x);y=Math.max(F.y,rect.y);if(s.toolTipAlignment=="dataPoint"){if(w.indexOf("pie")!=-1||w.indexOf("donut")!=-1){var m=(F.fromAngle+F.toAngle)/2;m=m*(Math.PI/180);var h=(!isNaN(F.innerRadius)&&F.innerRadius>0)?(F.innerRadius+F.outerRadius)/2:F.outerRadius*0.75;x=F.x=F.center.x+Math.cos(m)*h;y=F.y=F.center.y-Math.sin(m)*h;F.width=F.height=1}else{if(u&&(l.polar||l.spider)){F.width=F.height=1}}var B=this._fitTooltip(this._plotRect,F,p,l,A.symbolSize);if(B.arrowLocation!=""){arrowLocation=B.arrowLocation;x=B.x;y=B.y;p.width=B.width;p.height=B.height}}else{arrowLocation=""}if(arrowLocation=="top"||arrowLocation=="bottom"){p.height+=t;x-=t/2;if(arrowLocation=="bottom"){y-=t}}else{if(arrowLocation=="left"||arrowLocation=="right"){p.width+=t;y-=t/2;if(arrowLocation=="right"){x-=t}}}if(x+p.width>rect.x+rect.width){arrowLocation="";x=rect.x+rect.width-p.width}if(y+p.height>rect.y+rect.height){arrowLocation="";y=rect.y+rect.height-p.height}var j={x:0,y:0},e={x:0,y:0};a(v).css({width:q.width,height:q.height,left:0,top:0});c.style["margin-top"]=c.style["margin-left"]=0;i.style["margin-top"]=i.style["margin-left"]=0;v.style["margin-top"]=v.style["margin-left"]=0;var k=t+"px solid";var d=t+"px solid transparent";switch(arrowLocation){case"left":j={x:0,y:(q.height-t)/2};contentPostion={x:t,y:0};v.style["margin-left"]=t+"px";c.style["margin-left"]=0+"px";c.style["margin-top"]=j.y+"px";c.style["border-left"]="";c.style["border-right"]=k+" "+A.stroke;c.style["border-top"]=d;c.style["border-bottom"]=d;i.style["margin-left"]=1+"px";i.style["margin-top"]=j.y+"px";i.style["border-left"]="";i.style["border-right"]=k+" "+A.fill;i.style["border-top"]=d;i.style["border-bottom"]=d;break;case"right":j={x:p.width-t,y:(q.height-t)/2};contentPostion={x:0,y:0};c.style["margin-left"]=j.x+"px";c.style["margin-top"]=j.y+"px";c.style["border-left"]=k+" "+A.stroke;c.style["border-right"]="";c.style["border-top"]=d;c.style["border-bottom"]=d;i.style["margin-left"]=j.x-1+"px";i.style["margin-top"]=j.y+"px";i.style["border-left"]=k+" "+A.fill;i.style["border-right"]="";i.style["border-top"]=d;i.style["border-bottom"]=d;break;case"top":j={x:p.width/2-t/2,y:0};contentPostion={x:0,y:t};v.style["margin-top"]=contentPostion.y+"px";c.style["margin-left"]=j.x+"px";c.style["border-top"]="";c.style["border-bottom"]=k+" "+A.stroke;c.style["border-left"]=d;c.style["border-right"]=d;i.style["margin-left"]=j.x+"px";i.style["margin-top"]=1+"px";i.style["border-top"]="";i.style["border-bottom"]=k+" "+A.fill;i.style["border-left"]=d;i.style["border-right"]=d;break;case"bottom":j={x:p.width/2-t/2,y:p.height-t};contentPostion={x:0,y:0};c.style["margin-left"]=j.x+"px";c.style["margin-top"]=j.y+"px";c.style["border-top"]=k+" "+A.stroke;c.style["border-bottom"]="";c.style["border-left"]=d;c.style["border-right"]=d;i.style["margin-left"]=j.x+"px";i.style["margin-top"]=j.y-1+"px";i.style["border-top"]=k+" "+A.fill;i.style["border-bottom"]="";i.style["border-left"]=d;i.style["border-right"]=d;break}if(arrowLocation==""){a(c).hide();a(i).hide()}else{a(c).show();a(i).show()}a(E).css({width:p.width+"px",height:p.height+"px"});var o=s.host.coord();if(D){a(E).fadeOut(0,0);E.style.left=x+o.left+"px";E.style.top=y+o.top+"px"}a(E).clearQueue();a(E).animate({left:x+o.left,top:y+o.top,opacity:1},s.toolTipMoveDuration,"easeInOutCirc");a(E).fadeTo(400,1)},_measureHtml:function(d,c){var f=this._measureDiv;if(!f){this._measureDiv=f=document.createElement("div");f.style.position="absolute";f.style.cursor="default";f.style.overflow="hidden";f.style.display="none";a(f).addClass(c);this.host.append(f)}a(f).html(d);var e={width:a(f).width()+2,height:a(f).height()+2};if(a.jqx.browser&&a.jqx.browser.mozilla){e.height+=3}return e},_hideToolTip:function(c){if(!this._ttEl){return}if(this._ttEl.box){if(c==0){a(this._ttEl.box).hide()}else{a(this._ttEl.box).fadeOut()}}this._hideCrosshairs();this._ttEl.gidx=undefined},_hideCrosshairs:function(){if(!this._ttEl){return}if(this._ttEl.vLine){this.renderer.removeElement(this._ttEl.vLine);this._ttEl.vLine=undefined}if(this._ttEl.hLine){this.renderer.removeElement(this._ttEl.hLine);this._ttEl.hLine=undefined}},_get:function(c){return a.jqx.getByPriority(c)},_getAxisSettings:function(h){if(!h){return{}}var n=this;var m=h.gridLines||{};var p={visible:this._get([m.visible,h.showGridLines,true]),color:n._get([m.color,h.gridLinesColor,n._defaultLineColor]),unitInterval:n._get([m.unitInterval,m.interval,h.gridLinesInterval]),step:n._get([m.step,h.gridLinesStep]),dashStyle:n._get([m.dashStyle,h.gridLinesDashStyle]),width:n._get([m.lineWidth,1]),offsets:[],alternatingBackgroundColor:h.alternatingBackgroundColor,alternatingBackgroundColor2:h.alternatingBackgroundColor2,alternatingBackgroundOpacity:h.alternatingBackgroundOpacity};var e=h.tickMarks||{};var j={visible:this._get([e.visible,h.showTickMarks,true]),color:n._get([e.color,h.tickMarksColor,n._defaultLineColor]),unitInterval:n._get([e.unitInterval,e.interval,h.tickMarksInterval]),step:n._get([e.step,h.tickMarksStep]),dashStyle:n._get([e.dashStyle,h.tickMarksDashStyle]),width:n._get([e.lineWidth,1]),size:n._get([e.size,4]),offsets:[]};var f=h.title||{};var d={visible:n._get([f.visible,true]),text:n._get([h.description,f.text]),style:n._get([h.descriptionClass,f["class"],n.toThemeProperty("jqx-chart-axis-description",null)]),halign:n._get([h.horizontalDescriptionAlignment,f.horizontalAlignment,"center"]),valign:n._get([h.verticalDescriptionAlignment,f.verticalAlignment,"center"]),angle:0,rotationPoint:n._get([f.rotationPoint,"centercenter"]),offset:n._get([f.offset,{x:0,y:0}])};var k=h.line||{};var c={visible:n._get([k.visible,true]),color:n._get([k.color,p.color,n._defaultLineColor]),dashStyle:n._get([k.dashStyle,p.dashStyle,""]),width:n._get([k.lineWidth,1])};var l=h.padding||{};l={left:l.left||0,right:l.right||0,top:l.top||0,bottom:l.bottom||0};var i=this._getAxisLabelsSettings(h);var o={visible:this._get([h.visible,h.showValueAxis,h.showXAxis,h.showCategoryAxis,true]),customDraw:this._get([h.customDraw,false]),gridLines:p,tickMarks:j,line:c,title:d,labels:i,padding:l,toolTipFormatFunction:this._get([h.toolTipFormatFunction,h.formatFunction,i.formatFunction]),toolTipFormatSettings:this._get([h.toolTipFormatSettings,h.formatSettings,i.formatSettings])};return o},_getAxisLabelsSettings:function(e){var c=this;var f=e.labels||{};var d={visible:c._get([e.showLabels,f.visible,true]),unitInterval:c._get([f.unitInterval,f.interval,e.labelsInterval]),step:c._get([f.step,e.labelsStep]),angle:c._get([e.textRotationAngle,f.angle,0]),style:c._get([e["class"],f["class"],c.toThemeProperty("jqx-chart-axis-text",null)]),halign:c._get([e.horizontalTextAlignment,f.horizontalAlignment,"center"]),valign:c._get([e.verticalTextAlignment,f.verticalAlignment,"center"]),textRotationPoint:c._get([e.textRotationPoint,f.rotationPoint,"auto"]),textOffset:c._get([e.textOffset,f.offset,{x:0,y:0}]),autoRotate:c._get([e.labelsAutoRotate,f.autoRotate,false]),formatSettings:c._get([e.formatSettings,f.formatSettings,undefined]),formatFunction:c._get([e.formatFunction,f.formatFunction,undefined])};return d},_getLabelsSettings:function(q,m,j,v){var k=this.seriesGroups[q];var u=k.series[m];var n=isNaN(j)?undefined:this._getDataValue(j,u.dataField,q);var l=v||["Visible","Offset","Angle","HorizontalAlignment","VerticalAlignment","Class","BackgroundColor","BorderColor","BorderOpacity","Padding","Opacity","BackgroundOpacity","LinesAngles","LinesEnabled","AutoRotate","Radius"];var t={};for(var h=0;h<l.length;h++){var o=l[h];var d="labels"+o;var c="label"+o;var p=o.substring(0,1).toLowerCase()+o.substring(1);var e=undefined;if(k.labels&&typeof(k.labels)=="object"){e=k.labels[p]}if(u.labels&&typeof(u.labels)=="object"&&undefined!=u.labels[p]){e=u.labels[p]}e=this._get([u[d],u[c],e,k[d],k[c]]);if(a.isFunction(e)){t[p]=e(n,j,u,k)}else{t[p]=e}}t["class"]=t["class"]||this.toThemeProperty("jqx-chart-label-text",null);t.visible=this._get([t.visible,u.showLabels,k.showLabels,u.labels!=undefined?true:undefined,k.labels!=undefined?true:undefined]);var f=t.padding||1;t.padding={left:this._get([f.left,isNaN(f)?1:f]),right:this._get([f.right,isNaN(f)?1:f]),top:this._get([f.top,isNaN(f)?1:f]),bottom:this._get([f.bottom,isNaN(f)?1:f])};return t},_showLabel:function(M,H,i,c,z,k,f,m,d,I,E){var o=this.seriesGroups[M];var u=o.series[H];var F={width:0,height:0},t;if(isNaN(i)){return}var L=this._getLabelsSettings(M,H,i);if(!L.visible){return f?F:undefined}if(c.width<0||c.height<0){return f?F:undefined}var j=L.angle;if(!isNaN(I)){j=I}var l=L.offset||{};var J={x:l.x,y:l.y};if(isNaN(J.x)){J.x=0}if(isNaN(J.y)){J.y=0}z=z||L.horizontalAlignment||"center";k=k||L.verticalAlignment||"center";var B=this._getFormattedValue(M,H,i,undefined,undefined,true);var v=c.width;var K=c.height;if(m==true&&z!="center"){z=z=="right"?"left":"right"}if(d==true&&k!="center"&&k!="middle"){k=k=="top"?"bottom":"top";J.y*=-1}F=this.renderer.measureText(B,j,{"class":L["class"]});if(f){return F}var s=0,p=0;if(v>0){if(z==""||z=="center"){s+=(v-F.width)/2}else{if(z=="right"){s+=(v-F.width)}}}if(K>0){if(k==""||k=="center"){p+=(K-F.height)/2}else{if(k=="bottom"){p+=(K-F.height)}}}s+=c.x+J.x;p+=c.y+J.y;var q=this._plotRect;if(s<=q.x){s=q.x+2}if(p<=q.y){p=q.y+2}var n={width:Math.max(F.width,1),height:Math.max(F.height,1)};if(p+n.height>=q.y+q.height){p=q.y+q.height-(t?(n.height+t.height)/2:n.height)-2}if(s+n.width>=q.x+q.width){s=q.x+q.width-n.width-2}var e;var D=L.backgroundColor;var G=L.borderColor;var C=L.padding;if(D||G){e=this.renderer.beginGroup();var c=this.renderer.rect(s-C.left,p-C.top,F.width+C.left+C.right,F.height+C.bottom+C.bottom,{fill:D||"transparent","fill-opacity":L.backgroundOpacity||1,stroke:G||"transparent","stroke-opacity":L.borderOpacity,"stroke-width":1})}var A=this.renderer.text(B,s,p,F.width,F.height,j,{"class":L["class"],opacity:L.opacity||1},false,"center","center");if(E){E.x=s-C.left;E.y=p-C.top;E.width=F.width+C.left+C.right;E.height=F.height+C.bottom+C.bottom}if(this._isVML){this.renderer.removeElement(A);this.renderer.getContainer()[0].appendChild(A)}if(e){this.renderer.endGroup()}return e||A},_getAnimProps:function(k,h){var f=this.seriesGroups[k];var d=!isNaN(h)?f.series[h]:undefined;var c=this.enableAnimations==true;if(f.enableAnimations){c=f.enableAnimations==true}if(d&&d.enableAnimations){c=d.enableAnimations==true}var j=this.animationDuration;if(isNaN(j)){j=1000}var e=f.animationDuration;if(!isNaN(e)){j=e}if(d){var i=d.animationDuration;if(!isNaN(i)){j=i}}if(j>5000){j=1000}return{enabled:c,duration:j}},_isColorTransition:function(h,e,f,i){if(i-1<f.xoffsets.first){return false}var c=this._getColors(h,e,i,this._getGroupGradientType(h));var d=this._getColors(h,e,i-1,this._getGroupGradientType(h));return(c.fillColor!=d.fillColor)},_renderLineSeries:function(m,T){var K=this.seriesGroups[m];if(!K.series||K.series.length==0){return}var v=K.type.indexOf("area")!=-1;var N=K.type.indexOf("stacked")!=-1;var f=N&&K.type.indexOf("100")!=-1;var ah=K.type.indexOf("spline")!=-1;var w=K.type.indexOf("step")!=-1;var R=K.type.indexOf("range")!=-1;var ai=K.polar==true||K.spider==true;if(ai){w=false}if(w&&ah){return}var D=this._getDataLen(m);var af=T.width/D;var am=K.orientation=="horizontal";var F=this._getXAxis(m).flip==true;var C=T;if(am){C={x:T.y,y:T.x,width:T.height,height:T.width}}var G=this._calcGroupOffsets(m,C);if(!G||G.xoffsets.length==0){return}if(!this._linesRenderInfo){this._linesRenderInfo={}}this._linesRenderInfo[m]={};for(var p=K.series.length-1;p>=0;p--){var j=this._getSerieSettings(m,p);var ak={groupIndex:m,rect:C,serieIndex:p,swapXY:am,isArea:v,isSpline:ah,isRange:R,isPolar:ai,settings:j,segments:[],pointsLength:0};var l=this._isSerieVisible(m,p);if(!l){this._linesRenderInfo[m][p]=ak;continue}var M=K.series[p];if(M.customDraw){continue}var B=a.isFunction(M.colorFunction);var X=G.xoffsets.first;var J=X;var Q=this._getColors(m,p,NaN,this._getGroupGradientType(m));var ae=false;var z;do{var Z=[];var W=[];var u=[];var S=-1;var s=0,q=0;var U=NaN;var H=NaN;var al=NaN;if(G.xoffsets.length<1){continue}var V=this._getAnimProps(m,p);var O=V.enabled&&!this._isToggleRefresh&&G.xoffsets.length<10000&&this._isVML!=true?V.duration:0;var A=X;z=false;var e=this._getColors(m,p,X,this._getGroupGradientType(m));for(var ag=X;ag<=G.xoffsets.last;ag++){X=ag;var aa=G.xoffsets.data[ag];var Y=G.xoffsets.xvalues[ag];if(isNaN(aa)){continue}aa=Math.max(aa,1);s=aa;q=G.offsets[p][ag].to;var ad=G.offsets[p][ag].from;if(isNaN(q)||isNaN(ad)){if(M.emptyPointsDisplay=="connect"){continue}else{if(M.emptyPointsDisplay=="zero"){if(isNaN(q)){q=G.baseOffset}if(isNaN(ad)){ad=G.baseOffset}}else{z=true;break}}}if(B&&this._isColorTransition(m,p,G,X)){if(Z.length>1){X--;break}}var d=this._elementRenderInfo;if(d&&d.length>m&&d[m].series.length>p){var h=d[m].series[p][Y];var al=a.jqx._ptrnd(h?h.to:undefined);var L=a.jqx._ptrnd(C.x+(h?h.xoffset:undefined));u.push(am?{y:L,x:al,index:ag}:{x:L,y:al,index:ag})}J=ag;if(j.stroke<2){if(q-C.y<=1){q=C.y+1}if(ad-C.y<=1){ad=C.y+1}if(C.y+C.height-q<=1){q=C.y+C.height-1}if(C.y+C.height-q<=1){ad=C.y+C.height-1}}if(!v&&f){if(q<=C.y){q=C.y+1}if(q>=C.y+C.height){q=C.y+C.height-1}if(ad<=C.y){ad=C.y+1}if(ad>=C.y+C.height){ad=C.y+C.height-1}}aa=Math.max(aa,1);s=aa+C.x;if(K.skipOverlappingPoints==true&&!isNaN(U)&&Math.abs(U-s)<=1){continue}if(w&&!isNaN(U)&&!isNaN(H)){if(H!=q){Z.push(am?{y:s,x:a.jqx._ptrnd(H)}:{x:s,y:a.jqx._ptrnd(H)})}}Z.push(am?{y:s,x:a.jqx._ptrnd(q),index:ag}:{x:s,y:a.jqx._ptrnd(q),index:ag});W.push(am?{y:s,x:a.jqx._ptrnd(ad),index:ag}:{x:s,y:a.jqx._ptrnd(ad),index:ag});U=s;H=q;if(isNaN(al)){al=q}}if(Z.length==0){X++;continue}var I=Z[Z.length-1].index;if(B){Q=this._getColors(m,p,I,this._getGroupGradientType(m))}var n=C.x+G.xoffsets.data[A];var ac=C.x+G.xoffsets.data[J];if(v&&K.alignEndPointsWithIntervals==true){var E=F?-1:1;if(n>C.x){n=C.x}if(ac<C.x+C.width){ac=C.x+C.width}if(F){var ab=n;n=ac;ac=ab}}ac=a.jqx._ptrnd(ac);n=a.jqx._ptrnd(n);var o=G.baseOffset;al=a.jqx._ptrnd(al);var k=a.jqx._ptrnd(q)||o;if(R){Z=Z.concat(W.reverse())}ak.pointsLength+=Z.length;var c={lastItemIndex:I,colorSettings:Q,pointsArray:Z,pointsStart:u,left:n,right:ac,pyStart:al,pyEnd:k,yBase:o,labelElements:[],symbolElements:[]};ak.segments.push(c)}while(X<G.xoffsets.length-1||z);this._linesRenderInfo[m][p]=ak}var P=this._linesRenderInfo[m];var aj=[];for(var ag in P){aj.push(P[ag])}aj=aj.sort(function(an,i){return an.serieIndex-i.serieIndex});if(v&&N){aj.reverse()}for(var ag=0;ag<aj.length;ag++){var ak=aj[ag];this._animateLine(ak,O==0?1:0);var t=this;this._enqueueAnimation("series",undefined,undefined,O,function(an,i,ao){t._animateLine(i,ao)},ak)}},_animateLine:function(B,c){var F=B.settings;var h=B.groupIndex;var j=B.serieIndex;var l=this.seriesGroups[h];var v=l.series[j];var A=this._getSymbol(h,j);var s=this._getLabelsSettings(h,j,NaN,["Visible"]).visible;var q=true;if(B.isPolar){if(!isNaN(l.endAngle)&&Math.round(Math.abs((isNaN(l.startAngle)?0:l.startAngle)-l.endAngle))!=360){q=false}}var t=0;for(var e=0;e<B.segments.length;e++){var z=B.segments[e];var C=this._calculateLine(h,B.pointsLength,t,z.pointsArray,z.pointsStart,z.yBase,c,B.isArea,B.swapXY);t+=z.pointsArray.length;if(C==""){continue}var u=C.split(" ");var D=u.length;var k=C;if(k!=""){k=this._buildLineCmd(C,B.isRange,z.left,z.right,z.pyStart,z.pyEnd,z.yBase,B.isArea,B.isPolar,q,B.isSpline,B.swapXY)}else{k="M 0 0"}var n=z.colorSettings;if(!z.pathElement){z.pathElement=this.renderer.path(k,{"stroke-width":F.stroke,stroke:n.lineColor,"stroke-opacity":F.opacity,"fill-opacity":F.opacity,"stroke-dasharray":F.dashStyle,fill:B.isArea?n.fillColor:"none"});this._installHandlers(z.pathElement,"path",h,j,z.lastItemIndex)}else{this.renderer.attr(z.pathElement,{d:k})}if(z.labelElements){for(var E=0;E<z.labelElements.length;E++){this.renderer.removeElement(z.labelElements[E])}z.labelElements=[]}if(z.symbolElements){for(var E=0;E<z.symbolElements.length;E++){this.renderer.removeElement(z.symbolElements[E])}z.symbolElements=[]}if(z.pointsArray.length==u.length){if(A!="none"||s){var H=v.symbolSize;var G=B.rect;for(var E=0;E<u.length;E++){var w=u[E].split(",");w={x:parseFloat(w[0]),y:parseFloat(w[1])};if(w.x<G.x||w.x>G.x+G.width||w.y<G.y||w.y>G.y+G.height){continue}if(A!="none"){var p=this._getColors(h,j,z.pointsArray[E].index,this._getGroupGradientType(h));var f=this._drawSymbol(A,w.x,w.y,p.fillColorSymbol,F.opacity,p.lineColorSymbol,F.opacity,1,undefined,H);z.symbolElements.push(f)}if(s){var m=(E>0?u[E-1]:u[E]).split(",");m={x:parseFloat(m[0]),y:parseFloat(m[1])};var o=(E<u.length-1?u[E+1]:u[E]).split(",");o={x:parseFloat(o[0]),y:parseFloat(o[1])};w=this._adjustLineLabelPosition(h,j,z.pointsArray[E].index,w,m,o);if(w){var d=this._showLabel(h,j,z.pointsArray[E].index,{x:w.x,y:w.y,width:0,height:0});z.labelElements.push(d)}}}}}if(c==1&&A!="none"){for(var E=0;E<z.symbolElements.length;E++){if(isNaN(z.pointsArray[E].index)){continue}this._installHandlers(z.symbolElements[E],"symbol",h,j,z.pointsArray[E].index)}}}},_adjustLineLabelPosition:function(k,i,e,j,h,f){var c=this._showLabel(k,i,e,{width:0,height:0},"","",true);if(!c){return}var d={x:j.x-c.width/2,y:0};d.y=j.y-1.5*c.height;return d},_calculateLine:function(j,z,q,p,o,h,f,B,d){var A=this.seriesGroups[j];var n;if(A.polar==true||A.spider==true){n=this._getPolarAxisCoords(j,this._plotRect)}var u="";var v=p.length;if(!B&&o.length==0){var t=z*f;v=t-q}var k=NaN;for(var w=0;w<v+1&&w<p.length;w++){if(w>0){u+=" "}var l=p[w].y;var m=p[w].x;var c=!B?l:h;var e=m;if(o&&o.length>w){c=o[w].y;e=o[w].x;if(isNaN(c)||isNaN(e)){c=l;e=m}}k=e;if(v<=p.length&&w>0&&w==v){e=p[w-1].x;c=p[w-1].y}if(d){m=a.jqx._ptrnd((m-c)*(B?f:1)+c);l=a.jqx._ptrnd(l)}else{m=a.jqx._ptrnd((m-e)*f+e);l=a.jqx._ptrnd((l-c)*f+c)}if(n){var s=this._toPolarCoord(n,this._plotRect,m,l);m=s.x;l=s.y}u+=m+","+l}return u},_buildLineCmd:function(m,q,i,v,f,o,e,u,d,l,h,c){var s=m;var n=c?e+","+i:i+","+e;var j=c?e+","+v:v+","+e;if(u&&!d&&!q){s=n+" "+m+" "+j}if(h){s=this._getBezierPoints(s)}var p=s.split(" ");if(p.length==0){return""}if(p.length==1){var t=p[0].split(",");return"M "+p[0]+" L"+(parseFloat(t[0])+1)+","+(parseFloat(t[1])+1)}var k=p[0].replace("M","");if(u&&!d){if(!q){s="M "+n+" L "+k+" "+s}else{s="M "+k+" L "+k+(h?"":(" L "+k+" "))+s}}else{if(!h){s="M "+k+" L "+k+" "+s}}if((d&&l)||q){s+=" Z"}return s},_getSerieSettings:function(j,c){var i=this.seriesGroups[j];var h=i.type.indexOf("area")!=-1;var f=i.type.indexOf("line")!=-1;var d=i.series[c];var l=d.dashStyle||i.dashStyle||"";var e=d.opacity||i.opacity;if(isNaN(e)||e<0||e>1){e=1}var k=d.lineWidth;if(isNaN(k)&&k!="auto"){k=i.lineWidth}if(k=="auto"||isNaN(k)||k<0||k>15){if(h){k=2}else{if(f){k=3}else{k=1}}}return{stroke:k,opacity:e,dashStyle:l}},_getColors:function(z,s,e,f,c){var m=this.seriesGroups[z];var q=m.series[s];var d=this._get([q.useGradientColors,m.useGradientColors,m.useGradient,true]);var n=this._getSeriesColors(z,s,e);if(!n.fillColor){n.fillColor=u;n.fillColorSelected=a.jqx.adjustColor(u,1.1);n.fillColorAlt=a.jqx.adjustColor(u,4);n.fillColorAltSelected=a.jqx.adjustColor(u,3);n.lineColor=n.symbolColor=a.jqx.adjustColor(u,0.9);n.lineColorSelected=n.symbolColorSelected=a.jqx.adjustColor(u,0.9)}var k=[[0,1.4],[100,1]];var h=[[0,1],[25,1.1],[50,1.4],[100,1]];var p=[[0,1.3],[90,1.2],[100,1]];var l=NaN;if(!isNaN(c)){l=c==2?k:h}if(d){var t={};for(var v in n){t[v]=n[v]}n=t;if(f=="verticalLinearGradient"||f=="horizontalLinearGradient"){var j=f=="verticalLinearGradient"?l||k:l||h;var o=["fillColor","fillColorSelected","fillColorAlt","fillColorAltSelected"];for(var A in o){var u=n[o[A]];if(u){n[o[A]]=this.renderer._toLinearGradient(u,f=="verticalLinearGradient",j)}}}else{if(f=="radialGradient"){var w;var l=k;if((m.type=="pie"||m.type=="donut"||m.polar)&&e!=undefined&&this._renderData[z]&&this._renderData[z].offsets[s]){w=this._renderData[z].offsets[s][e];l=p}n.fillColor=this.renderer._toRadialGradient(n.fillColor,l,w);n.fillColorSelected=this.renderer._toRadialGradient(n.fillColorSelected,l,w)}}}return n},_installHandlers:function(d,h,j,i,e){if(!this.enableEvents){return false}var k=this;var f=this.seriesGroups[j];var l=this.seriesGroups[j].series[i];var c=f.type.indexOf("line")!=-1||f.type.indexOf("area")!=-1;if(!c){this.renderer.addHandler(d,"mousemove",function(o){var n=k._selected;if(n&&n.isLineType&&n.linesUnselectMode=="click"&&!(n.group==j&&n.series==i)){return}var m=o.pageX||o.clientX||o.screenX;var q=o.pageY||o.clientY||o.screenY;var p=k.host.offset();m-=p.left;q-=p.top;if(k._mouseX==m&&k._mouseY==q){return}if(k._ttEl){if(k._ttEl.gidx==j&&k._ttEl.sidx==i&&k._ttEl.iidx==e){return}}k._startTooltipTimer(j,i,e)});this.renderer.addHandler(d,"mouseout",function(n){return;if(!isNaN(k._lastClickTs)&&(new Date()).valueOf()-k._lastClickTs<100){return}if(e!=undefined){k._cancelTooltipTimer()}if(c){return}var m=k._selected;if(m&&m.isLineType&&m.linesUnselectMode=="click"&&!(m.group==j&&m.series==i)){return}k._unselect()})}this.renderer.addHandler(d,"mouseover",function(n){var m=k._selected;if(m&&m.isLineType&&m.linesUnselectMode=="click"&&!(m.group==j&&m.series==i)){return}k._select(d,h,j,i,e,e)});this.renderer.addHandler(d,"click",function(m){clearTimeout(k._hostClickTimer);k._lastClickTs=(new Date()).valueOf();if(c&&(h!="symbol"&&h!="pointMarker")){return}if(k._isColumnType(f.type)){k._unselect()}if(isNaN(e)){return}m.stopImmediatePropagation();k._raiseItemEvent("click",f,l,e)})},_getHorizontalOffset:function(C,u,l,k){var d=this._plotRect;var j=this._getDataLen(C);if(j==0){return{index:undefined,value:l}}var q=this._calcGroupOffsets(C,this._plotRect);if(q.xoffsets.length==0){return{index:undefined,value:undefined}}var o=l;var n=k;var A=this.seriesGroups[C];var m;if(A.polar||A.spider){m=this._getPolarAxisCoords(C,d)}var f=this._getXAxis(C).flip==true;var c,p,z,h;for(var v=q.xoffsets.first;v<=q.xoffsets.last;v++){var w=q.xoffsets.data[v];var e=q.offsets[u][v].to;var s=0;if(m){var t=this._toPolarCoord(m,d,w+d.x,e);w=t.x;e=t.y;s=a.jqx._ptdist(o,n,w,e)}else{if(A.orientation=="horizontal"){w+=d.y;var B=e;e=w;w=B;s=a.jqx._ptdist(o,n,w,e)}else{w+=d.x;s=Math.abs(o-w)}}if(isNaN(c)||c>s){c=s;p=v;z=w;h=e}}return{index:p,value:q.xoffsets.data[p],polarAxisCoords:m,x:z,y:h}},onmousemove:function(m,l){if(this._mouseX==m&&this._mouseY==l){return}this._mouseX=m;this._mouseY=l;if(!this._selected){return}var D=this._selected.group;var u=this._selected.series;var A=this.seriesGroups[D];var p=A.series[u];var c=this._plotRect;if(this.renderer){c=this.renderer.getRect();c.x+=5;c.y+=5;c.width-=10;c.height-=10}if(m<c.x||m>c.x+c.width||l<c.y||l>c.y+c.height){this._hideToolTip();this._unselect();return}var f=A.orientation=="horizontal";var c=this._plotRect;if(A.type.indexOf("line")!=-1||A.type.indexOf("area")!=-1){var j=this._getHorizontalOffset(D,this._selected.series,m,l);var z=j.index;if(z==undefined){return}if(this._selected.item!=z){var t=this._linesRenderInfo[D][u].segments;var v=0;while(z>t[v].lastItemIndex){v++;if(v>=t.length){return}}var d=t[v].pathElement;var E=t[v].lastItemIndex;this._unselect(false);this._select(d,"path",D,u,z,E)}var o=this._getSymbol(this._selected.group,this._selected.series);if(o=="none"){o="circle"}var q=this._calcGroupOffsets(D,c);var e=q.offsets[this._selected.series][z].to;var w=e;if(A.type.indexOf("range")!=-1){w=q.offsets[this._selected.series][z].from}var n=f?m:l;if(!isNaN(w)&&Math.abs(n-w)<Math.abs(n-e)){l=w}else{l=e}if(isNaN(l)){return}m=j.value;if(f){var B=m;m=l;l=B+c.y}else{m+=c.x}if(j.polarAxisCoords){m=j.x;l=j.y}l=a.jqx._ptrnd(l);m=a.jqx._ptrnd(m);if(this._pointMarker&&this._pointMarker.element){this.renderer.removeElement(this._pointMarker.element);this._pointMarker.element=undefined}if(isNaN(m)||isNaN(l)){return}var k=this._getSeriesColors(D,u,z);var h=p.opacity;if(isNaN(h)||h<0||h>1){h=A.opacity}if(isNaN(h)||h<0||h>1){h=1}var C=p.symbolSizeSelected;if(isNaN(C)){C=p.symbolSize}if(isNaN(C)||C>50||C<0){C=A.symbolSize}if(isNaN(C)||C>50||C<0){C=8}if(this.showToolTips||this.enableCrosshairs){this._pointMarker={type:o,x:m,y:l,gidx:D,sidx:u,iidx:z};this._pointMarker.element=this._drawSymbol(o,m,l,k.fillColorSymbolSelected,h,k.lineColorSymbolSelected,h,1,undefined,C);this._installHandlers(this._pointMarker.element,"pointMarker",D,u,z)}this._startTooltipTimer(D,this._selected.series,z)}},_drawSymbol:function(k,n,l,d,o,m,h,i,c,q){var f;var j=q||6;var e=j/2;switch(k){case"none":return undefined;case"circle":f=this.renderer.circle(n,l,j/2);break;case"square":j=j-1;e=j/2;f=this.renderer.rect(n-e,l-e,j,j);break;case"diamond":var p="M "+(n-e)+","+(l)+" L"+(n)+","+(l-e)+" L"+(n+e)+","+(l)+" L"+(n)+","+(l+e)+" Z";f=this.renderer.path(p);break;case"triangle_up":case"triangle":var p="M "+(n-e)+","+(l+e)+" L "+(n+e)+","+(l+e)+" L "+(n)+","+(l-e)+" Z";f=this.renderer.path(p);break;case"triangle_down":var p="M "+(n-e)+","+(l-e)+" L "+(n)+","+(l+e)+" L "+(n+e)+","+(l-e)+" Z";f=this.renderer.path(p);break;case"triangle_left":var p="M "+(n-e)+","+(l)+" L "+(n+e)+","+(l+e)+" L "+(n+e)+","+(l-e)+" Z";f=this.renderer.path(p);break;case"triangle_right":var p="M "+(n-e)+","+(l-e)+" L "+(n-e)+","+(l+e)+" L "+(n+e)+","+(l)+" Z";f=this.renderer.path(p);break;default:f=this.renderer.circle(n,l,j)}this.renderer.attr(f,{fill:d,"fill-opacity":o,stroke:m,"stroke-width":i,"stroke-opacity":h,"stroke-dasharray":c||""});if(k!="circle"){this.renderer.attr(f,{r:j/2});if(k!="square"){this.renderer.attr(f,{x:n,y:l})}}return f},_getSymbol:function(h,c){var d=["circle","square","diamond","triangle_up","triangle_down","triangle_left","triangle_right"];var f=this.seriesGroups[h];var e=f.series[c];var i;if(e.symbolType!=undefined){i=e.symbolType}if(i==undefined){i=f.symbolType}if(i=="default"){return d[c%d.length]}else{if(i!=undefined){return i}}return"none"},_startTooltipTimer:function(l,k,e,j,i,c,h){this._cancelTooltipTimer();var m=this;var f=m.seriesGroups[l];var d=this.toolTipShowDelay||this.toolTipDelay;if(isNaN(d)||d>10000||d<0){d=500}if(this._ttEl||(true==this.enableCrosshairs&&false==this.showToolTips)){d=0}if(!isNaN(c)){d=c}clearTimeout(this._tttimerHide);if(isNaN(j)){j=m._mouseX}if(isNaN(i)){i=m._mouseY-3}if(d==0){m._showToolTip(j,i,l,k,e)}this._tttimer=setTimeout(function(){if(d!=0){m._showToolTip(j,i,l,k,e)}var n=m.toolTipHideDelay;if(!isNaN(h)){n=h}if(isNaN(n)){n=4000}m._tttimerHide=setTimeout(function(){m._hideToolTip();m._unselect()},n)},d)},_cancelTooltipTimer:function(){clearTimeout(this._tttimer)},_getGroupGradientType:function(d){var c=this.seriesGroups[d];if(c.type.indexOf("area")!=-1){return c.orientation=="horizontal"?"horizontalLinearGradient":"verticalLinearGradient"}else{if(this._isColumnType(c.type)||c.type.indexOf("candle")!=-1){if(c.polar){return"radialGradient"}return c.orientation=="horizontal"?"verticalLinearGradient":"horizontalLinearGradient"}else{if(c.type.indexOf("scatter")!=-1||c.type.indexOf("bubble")!=-1||this._isPieGroup(d)){return"radialGradient"}}}return undefined},_select:function(i,m,p,o,j,n){if(this._selected){if((this._selected.item!=j||this._selected.series!=o||this._selected.group!=p)){this._unselect()}else{return}}var l=this.seriesGroups[p];var q=l.series[o];if(l.enableSelection==false||q.enableSelection==false){return}var h=l.type.indexOf("line")!=-1&&l.type.indexOf("area")==-1;this._selected={element:i,type:m,group:p,series:o,item:j,iidxBase:n,isLineType:h,linesUnselectMode:q.linesUnselectMode||l.linesUnselectMode};var c=this._getColors(p,o,n||j,this._getGroupGradientType(p));var d=c.fillColorSelected;if(h){d="none"}var f=this._getSerieSettings(p,o);var e=(m=="symbol")?c.lineColorSymbolSelected:c.lineColorSelected;d=(m=="symbol")?c.fillColorSymbolSelected:d;var k=(m=="symbol")?1:f.stroke;if(this.renderer.getAttr(i,"fill")==c.fillColorAlt){d=c.fillColorAltSelected}this.renderer.attr(i,{stroke:e,fill:d,"stroke-width":k});if(l.type.indexOf("pie")!=-1||l.type.indexOf("donut")!=-1){this._applyPieSelect()}this._raiseItemEvent("mouseover",l,q,j)},_applyPieSelect:function(){var d=this;d._createAnimationGroup("animPieSlice");var f=this._selected;if(!f){return}var h=this.getItemCoord(f.group,f.series,f.item);if(!h){return}var e=this._getRenderInfo(f.group,f.series,f.item);var c={element:e,coord:h};this._enqueueAnimation("animPieSlice",undefined,undefined,300,function(k,i,l){var n=i.coord;var j=n.selectedRadiusChange*l;var m=d.renderer.pieSlicePath(n.center.x,n.center.y,n.innerRadius==0?0:(n.innerRadius+j),n.outerRadius+j,n.fromAngle,n.toAngle,n.centerOffset);d.renderer.attr(i.element.element,{d:m});d._showPieLabel(f.group,f.series,f.item,undefined,j)},c);d._startAnimation("animPieSlice")},_applyPieUnselect:function(){this._stopAnimations();var c=this._selected;if(!c){return}var e=this.getItemCoord(c.group,c.series,c.item);if(!e||!e.center){return}var d=this.renderer.pieSlicePath(e.center.x,e.center.y,e.innerRadius,e.outerRadius,e.fromAngle,e.toAngle,e.centerOffset);this.renderer.attr(c.element,{d:d});this._showPieLabel(c.group,c.series,c.item,undefined,0)},_unselect:function(){var p=this;if(p._selected){var o=p._selected.group;var n=p._selected.series;var h=p._selected.item;var l=p._selected.iidxBase;var k=p._selected.type;var j=p.seriesGroups[o];var q=j.series[n];var f=j.type.indexOf("line")!=-1&&j.type.indexOf("area")==-1;var c=p._getColors(o,n,l||h,p._getGroupGradientType(o));var d=c.fillColor;if(f){d="none"}var e=p._getSerieSettings(o,n);var m=(k=="symbol")?c.lineColorSymbol:c.lineColor;d=(k=="symbol")?c.fillColorSymbol:d;if(this.renderer.getAttr(p._selected.element,"fill")==c.fillColorAltSelected){d=c.fillColorAlt}var i=(k=="symbol")?1:e.stroke;p.renderer.attr(p._selected.element,{stroke:m,fill:d,"stroke-width":i});if(j.type.indexOf("pie")!=-1||j.type.indexOf("donut")!=-1){this._applyPieUnselect()}p._selected=undefined;if(!isNaN(h)){p._raiseItemEvent("mouseout",j,q,h)}}if(p._pointMarker){if(p._pointMarker.element){p.renderer.removeElement(p._pointMarker.element);p._pointMarker.element=undefined}p._pointMarker=undefined;p._hideCrosshairs()}},_raiseItemEvent:function(h,i,f,d){var e=f[h]||i[h];var j=0;for(;j<this.seriesGroups.length;j++){if(this.seriesGroups[j]==i){break}}if(j==this.seriesGroups.length){return}var c={event:h,seriesGroup:i,serie:f,elementIndex:d,elementValue:this._getDataValue(d,f.dataField,j)};if(e&&a.isFunction(e)){e(c)}this._raiseEvent(h,c)},_raiseEvent:function(e,d){var f=new a.Event(e);f.owner=this;d.event=e;f.args=d;var c=this.host.trigger(f);return c},_calcInterval:function(e,l,k){var o=Math.abs(l-e);var m=o/k;var h=[1,2,3,4,5,10,15,20,25,50,100];var c=[0.5,0.25,0.125,0.1];var d=0.1;var j=h;if(m<1){j=c;d=10}var n=0;do{n=0;if(m>=1){d*=10}else{d/=10}for(var f=1;f<j.length;f++){if(Math.abs(j[n]*d-m)>Math.abs(j[f]*d-m)){n=f}else{break}}}while(n==j.length-1);return j[n]*d},_renderDataClone:function(){if(!this._renderData||this._isToggleRefresh){return}var e=this._elementRenderInfo=[];if(this._isSelectorRefresh){return}for(var k=0;k<this._renderData.length;k++){var d=this._getXAxis(k).dataField;while(e.length<=k){e.push({})}var c=e[k];var h=this._renderData[k];if(!h.offsets){continue}if(h.valueAxis){c.valueAxis={itemOffsets:{}};for(var l in h.valueAxis.itemOffsets){c.valueAxis.itemOffsets[l]=h.valueAxis.itemOffsets[l]}}if(h.xAxis){c.xAxis={itemOffsets:{}};for(var l in h.xAxis.itemOffsets){c.xAxis.itemOffsets[l]=h.xAxis.itemOffsets[l]}}c.series=[];var j=c.series;var n=this._isPieGroup(k);for(var o=0;o<h.offsets.length;o++){j.push({});for(var f=0;f<h.offsets[o].length;f++){if(!n){j[o][h.xoffsets.xvalues[f]]={value:h.offsets[o][f].value,valueRadius:h.offsets[o][f].valueRadius,xoffset:h.xoffsets.data[f],from:h.offsets[o][f].from,to:h.offsets[o][f].to}}else{var m=h.offsets[o][f];j[o][m.displayValue]={value:m.value,x:m.x,y:m.y,fromAngle:m.fromAngle,toAngle:m.toAngle}}}}}},getPolarDataPointOffset:function(e,d,h){var f=this._renderData[h];if(!f){return{x:NaN,y:NaN}}var j=this.getValueAxisDataPointOffset(d,h);var c=this.getXAxisDataPointOffset(e,h);var i=this._toPolarCoord(f.polarCoords,f.xAxis.rect,c,j);return{x:i.x,y:i.y}},_getDataPointOffsetDiff:function(l,k,c,h,i,e,j){var f=this._getDataPointOffset(l,c,h,i,e,j);var d=this._getDataPointOffset(k,c,h,i,e,j);return Math.abs(f-d)},_getXAxisRenderData:function(e){if(e>=this._renderData.length){return}var f=this.seriesGroups[e];var d=this._renderData[e].xAxis;if(!d){return}if(f.xAxis==undefined){for(var c=0;c<=e;c++){if(this.seriesGroups[c].xAxis==undefined){break}}d=this._renderData[c].xAxis}return d},getXAxisDataPointOffset:function(l,n){var m=this.seriesGroups[n];if(isNaN(l)){return NaN}renderData=this._getXAxisRenderData(n);if(!renderData){return NaN}var h=renderData.data.axisStats;var k=h.min.valueOf();var c=h.max.valueOf();var i=c-k;if(i==0){i=1}if(l.valueOf()>c||l.valueOf()<k){return NaN}var d=this._getXAxis(n);var e=m.orientation=="horizontal"?"height":"width";var p=m.orientation=="horizontal"?"y":"x";var j=(l.valueOf()-k)/i;var o=renderData.rect[e]-renderData.data.padding.left-renderData.data.padding.right;if(m.polar||m.spider){var f=this._renderData[n].polarCoords;if(f.isClosedCircle){o=renderData.data.axisSize}}return this._plotRect[p]+renderData.data.padding.left+o*(d.flip?(1-j):j)},getValueAxisDataPointOffset:function(i,j){var l=this._getValueAxis(j);if(!l){return NaN}var k=this._renderData[j];if(!k){return NaN}var h=l.flip==true;var e=k.logBase;var f=k.scale;var c=k.gbase;var d=k.baseOffset;return this._getDataPointOffset(i,c,e,f,d,h)},_getDataPointOffset:function(h,d,e,j,f,c){var i;if(isNaN(h)){h=d}if(!isNaN(e)){i=(a.jqx.log(h,e)-a.jqx.log(d,e))*j}else{i=(h-d)*j}if(this._isVML){i=Math.round(i)}if(c){i=f+i}else{i=f-i}return i},_calcGroupOffsets:function(n,O){var C=this.seriesGroups[n];while(this._renderData.length<n+1){this._renderData.push({})}if(this._renderData[n]!=null&&this._renderData[n].offsets!=undefined){return this._renderData[n]}if(this._isPieGroup(n)){return this._calcPieSeriesGroupOffsets(n,O)}var q=this._getValueAxis(n);if(!q||!C.series||C.series.length==0){return this._renderData[n]}var D=q.flip==true;var R=q.logarithmicScale==true;var Q=q.logarithmicScaleBase||10;var W=[];var I=C.type.indexOf("stacked")!=-1;var e=I&&C.type.indexOf("100")!=-1;var N=C.type.indexOf("range")!=-1;var X=this._isColumnType(C.type);var ac=C.type.indexOf("waterfall")!=-1;var v=this._getDataLen(n);var u=C.baselineValue||q.baselineValue||0;if(e){u=0}var aj=this._stats.seriesGroups[n];if(!aj||!aj.isValid){return}var am=aj.hasStackValueReversal;if(am){u=0}if(ac&&I){if(am){return}else{u=aj.base}}if(u>aj.max){u=aj.max}if(u<aj.min){u=aj.min}var t=(e||R)?aj.maxRange:aj.max-aj.min;var aq=aj.min;var F=aj.max;var P=O.height/(R?aj.intervals:t);var al=0;if(e){if(aq*F<0){t/=2;al=-(t+u)*P}else{al=-u*P}}else{al=-(u-aq)*P}if(D){al=O.y-al}else{al+=O.y+O.height}var ak=[];var ag=[];var V=[];var ao,K;if(R){ao=a.jqx.log(F,Q)-a.jqx.log(u,Q);if(I){ao=aj.intervals;u=e?0:aq}K=aj.intervals-ao;if(!D){al=O.y+ao/aj.intervals*O.height}}al=a.jqx._ptrnd(al);var d=(aq*F<0)?O.height/2:O.height;var o=[];var Z=[];var ar=I&&(X||R);var ap=[];W=new Array(C.series.length);for(var ae=0;ae<C.series.length;ae++){W[ae]=new Array(v)}for(var af=0;af<v;af++){if(!ac&&I){Z=[]}for(var ae=0;ae<C.series.length;ae++){if(!I&&R){o=[]}var G=C.series[ae];var H=G.dataField;var au=G.dataFieldFrom;var S=G.dataFieldTo;var ab=G.radiusDataField||G.sizeDataField;W[ae][af]={};var m=this._isSerieVisible(n,ae);if(C.type.indexOf("candle")!=-1||C.type.indexOf("ohlc")!=-1){var c=["Open","Close","High","Low"];for(var an in c){var s="dataField"+c[an];if(G[s]){W[ae][af][c[an]]=this._getDataPointOffset(this._getDataValueAsNumber(af,G[s],n),u,R?Q:NaN,P,al,D)}}continue}if(I){while(Z.length<=af){Z.push(0)}}var at=NaN;if(N){at=this._getDataValueAsNumber(af,au,n);if(isNaN(at)){at=u}}var M=NaN;if(N){M=this._getDataValueAsNumber(af,S,n)}else{M=this._getDataValueAsNumber(af,H,n)}var l=this._getDataValueAsNumber(af,ab,n);if(I){Z[af]+=m?M:0}if(!m){M=NaN}if(isNaN(M)||(R&&M<=0)){W[ae][af]={from:undefined,to:undefined};continue}var L;if(I){if(ar){L=(M>=u)?ak:ag}else{M=Z[af]}}var ai=P*(M-u);if(N){ai=P*(M-at)}if(I&&ar){if(!ap[af]){ap[af]=true;ai=P*(M-u)}else{ai=P*M}}if(R){while(o.length<=af){o.push({p:{value:0,height:0},n:{value:0,height:0}})}var E=(N||N)?at:u;var ad=M>E?o[af].p:o[af].n;ad.value+=M;if(e){M=ad.value/(aj.psums[af]+aj.nsums[af])*100;ai=(a.jqx.log(M,Q)-aj.minPow)*P}else{ai=a.jqx.log(ad.value,Q)-a.jqx.log(E,Q);ai*=P}ai-=ad.height;ad.height+=ai}var U=al;if(N){var w=0;if(R){w=(a.jqx.log(at,Q)-a.jqx.log(u,Q))*P}else{w=(at-u)*P}U+=D?w:-w}if(I){if(e&&!R){var B=(aj.psums[af]-aj.nsums[af]);if(M>u){ai=(aj.psums[af]/B)*d;if(aj.psums[af]!=0){ai*=M/aj.psums[af]}}else{ai=(aj.nsums[af]/B)*d;if(aj.nsums[af]!=0){ai*=M/aj.nsums[af]}}}if(ar){if(isNaN(L[af])){L[af]=U}U=L[af]}}if(isNaN(V[af])){V[af]=0}var ah=V[af];ai=Math.abs(ai);var Y=ai;if(ai>=1){h_new=this._isVML?Math.round(ai):a.jqx._ptrnd(ai)-1;if(Math.abs(ai-h_new)>0.5){ai=Math.round(ai)}else{ai=h_new}}ah+=ai-Y;if(!I){ah=0}if(Math.abs(ah)>0.5){if(ah>0){ai-=1;ah-=1}else{ai+=1;ah+=1}}V[af]=ah;if(ae==C.series.length-1&&e){var A=0;for(var aa=0;aa<ae;aa++){A+=Math.abs(W[aa][af].to-W[aa][af].from)}A+=ai;if(A<d){if(ai>0.5){ai=a.jqx._ptrnd(ai+d-A)}else{var aa=ae-1;while(aa>=0){var J=Math.abs(W[aa][af].to-W[aa][af].from);if(J>1){if(W[aa][af].from>W[aa][af].to){W[aa][af].from+=d-A}break}aa--}}}}if(D){ai*=-1}var T=M<u;if(N){T=at>M}var p=isNaN(at)?M:{from:at,to:M};if(T){if(ar){L[af]+=ai}W[ae][af]={from:U,to:U+ai,value:p,valueRadius:l}}else{if(ar){L[af]-=ai}W[ae][af]={from:U,to:U-ai,value:p,valueRadius:l}}}}var z=this._renderData[n];z.baseOffset=al;z.gbase=u;z.logBase=R?Q:NaN;z.scale=P;z.offsets=!ac?W:this._applyWaterfall(W,v,n,al,u,R?Q:NaN,P,D,I);z.xoffsets=this._calculateXOffsets(n,O.width);return this._renderData[n]},_isPercent:function(c){return(typeof(c)==="string"&&c.length>0&&c.indexOf("%")==c.length-1)},_calcPieSeriesGroupOffsets:function(f,c){var C=this;var o=this._getDataLen(f);var p=this.seriesGroups[f];var D=this._renderData[f]={};var J=D.offsets=[];for(var F=0;F<p.series.length;F++){var w=p.series[F];var H=this._get([w.minAngle,w.startAngle]);if(isNaN(H)||H<0||H>360){H=0}var P=this._get([w.maxAngle,w.endAngle]);if(isNaN(P)||P<0||P>360){P=360}var h=P-H;var q=w.initialAngle||0;if(q<H){q=H}if(q>P){q=P}var d=w.centerOffset||0;var N=a.jqx.getNum([w.offsetX,p.offsetX,c.width/2]);var M=a.jqx.getNum([w.offsetY,p.offsetY,c.height/2]);var B=Math.min(c.width,c.height)/2;var A=q;var j=w.radius;if(C._isPercent(j)){j=parseFloat(j)/100*B}if(isNaN(j)){j=B*0.4}var n=w.innerRadius;if(C._isPercent(n)){n=parseFloat(n)/100*B}if(isNaN(n)||n>=j){n=0}var e=w.selectedRadiusChange;if(C._isPercent(e)){e=parseFloat(e)/100*(j-n)}if(isNaN(e)){e=0.1*(j-n)}J.push([]);var k=0;var l=0;for(var I=0;I<o;I++){var O=this._getDataValueAsNumber(I,w.dataField,f);if(isNaN(O)){continue}if(!this._isSerieVisible(f,F,I)&&w.hiddenPointsDisplay!=true){continue}if(O>0){k+=O}else{l+=O}}var v=k-l;if(v==0){v=1}for(var I=0;I<o;I++){var O=this._getDataValueAsNumber(I,w.dataField,f);if(isNaN(O)){J[F].push({});continue}var G=w.displayText||w.displayField;var m=this._getDataValue(I,G,f);if(m==undefined){m=I}var L=0;var E=this._isSerieVisible(f,F,I);if(E||w.hiddenPointsDisplay==true){L=Math.abs(O)/v*h}var u=c.x+N;var t=c.y+M;var K=d;if(a.isFunction(d)){K=d({seriesIndex:F,seriesGroupIndex:f,itemIndex:I})}if(isNaN(K)){K=0}var z={key:f+"_"+F+"_"+I,value:O,displayValue:m,x:u,y:t,fromAngle:A,toAngle:A+L,centerOffset:K,innerRadius:n,outerRadius:j,selectedRadiusChange:e,visible:E};J[F].push(z);A+=L}}return D},_isPointSeriesOnly:function(){for(var c=0;c<this.seriesGroups.length;c++){var d=this.seriesGroups[c];if(d.type.indexOf("line")==-1&&d.type.indexOf("area")==-1&&d.type.indexOf("scatter")==-1&&d.type.indexOf("bubble")==-1){return false}}return true},_hasColumnSeries:function(){var e=["column","ohlc","candlestick","waterfall"];for(var d=0;d<this.seriesGroups.length;d++){var f=this.seriesGroups[d];for(var c in e){if(f.type.indexOf(e[c])!=-1){return true}}}return false},_alignValuesWithTicks:function(h){var c=this._isPointSeriesOnly();var d=this.seriesGroups[h];var f=this._getXAxis(h);var e=f.valuesOnTicks==undefined?c:f.valuesOnTicks!=false;if(h==undefined){return e}if(d.valuesOnTicks==undefined){return e}return d.valuesOnTicks},_getYearsDiff:function(d,c){return c.getFullYear()-d.getFullYear()},_getMonthsDiff:function(d,c){return 12*(c.getFullYear()-d.getFullYear())+c.getMonth()-d.getMonth()},_getDateDiff:function(h,f,e,c){var d=0;if(e!="year"&&e!="month"){d=f.valueOf()-h.valueOf()}switch(e){case"year":d=this._getYearsDiff(h,f);break;case"month":d=this._getMonthsDiff(h,f);break;case"day":d/=(24*3600*1000);break;case"hour":d/=(3600*1000);break;case"minute":d/=(60*1000);break;case"second":d/=(1000);break;case"millisecond":break}if(e!="year"&&e!="month"&&c!=false){d=a.jqx._rnd(d,1,true)}return d},_getBestDTUnit:function(m,s,t,e,k){var h="day";var o=s.valueOf()-m.valueOf();if(o<1000){h="second"}else{if(o<3600000){h="minute"}else{if(o<86400000){h="hour"}else{if(o<2592000000){h="day"}else{if(o<31104000000){h="month"}else{h="year"}}}}}var q=[{key:"year",cnt:o/(1000*60*60*24*365)},{key:"month",cnt:o/(1000*60*60*24*30)},{key:"day",cnt:o/(1000*60*60*24)},{key:"hour",cnt:o/(1000*60*60)},{key:"minute",cnt:o/(1000*60)},{key:"second",cnt:o/1000},{key:"millisecond",cnt:o}];var n=-1;for(var l=0;l<q.length;l++){if(q[l].key==h){n=l;break}}var c=-1,p=-1;for(;n<q.length;n++){if(q[n].cnt/100>e){break}var d=this._estAxisInterval(m,s,t,e,q[n].key,k);var f=this._getDTIntCnt(m,s,d,q[n].key);if(c==-1||c<f){c=f;p=n}}h=q[p].key;return h},_getXAxisStats:function(h,o,G){var m=this._getDataLen(h);var c=o.type=="date"||o.type=="time";if(c&&!this._autoDateFormats){if(!this._autoDateFormats){this._autoDateFormats=[]}var q=this._testXAxisDateFormat();if(q){this._autoDateFormats.push(q)}}var p=c?this._castAsDate(o.minValue,o.dateFormat):this._castAsNumber(o.minValue);var t=c?this._castAsDate(o.maxValue,o.dateFormat):this._castAsNumber(o.maxValue);if(this._selectorRange&&this._selectorRange[h]){var j=this._selectorRange[h].min;if(!isNaN(j)){p=c?this._castAsDate(j,o.dateFormat):this._castAsNumber(j)}var k=this._selectorRange[h].max;if(!isNaN(k)){t=c?this._castAsDate(k,o.dateFormat):this._castAsNumber(k)}}var B=p,F=t;var f,s;var d=o.type==undefined||o.type=="auto";var l=(d||o.type=="basic");var C=0,e=0;for(var E=0;E<m&&o.dataField;E++){var A=this._getDataValue(E,o.dataField,h);A=c?this._castAsDate(A,o.dateFormat):this._castAsNumber(A);if(isNaN(A)){continue}if(c){C++}else{e++}if(isNaN(f)||A<f){f=A}if(isNaN(s)||A>=s){s=A}}if(d&&((!c&&e==m)||(c&&C==m))){l=false}if(l){f=0;s=Math.max(0,m-1)}if(isNaN(B)){B=f}if(isNaN(F)){F=s}if(c){if(!this._isDate(B)){B=this._isDate(F)?F:new Date()}if(!this._isDate(F)){F=this._isDate(B)?B:new Date()}}else{if(isNaN(B)){B=0}if(isNaN(F)){F=l?Math.max(0,m-1):B}}if(f==undefined){f=B}if(s==undefined){s=F}var u=o.rangeSelector;if(u){var v=u.minValue||B;if(v&&c){v=this._castAsDate(v,u.dateFormat||o.dateFormat)}var z=u.maxValue||F;if(z&&c){z=this._castAsDate(z,u.dateFormat||o.rangeSelector)}if(B<v){B=v}if(F<v){F=z}if(B>z){B=v}if(F>z){F=z}}var H=o.unitInterval;var w,I;if(c){w=o.baseUnit;if(!w){w=this._getBestDTUnit(B,F,h,G)}I=w=="hour"||w=="minute"||w=="second"||w=="millisecond"}var H=o.unitInterval;if(isNaN(H)||H<=0){H=this._estAxisInterval(B,F,h,G,w)}var D={min:B,max:F};var n=this.seriesGroups[h];if(!c&&(n.polar||n.spider)){B=a.jqx._rnd(B,H,false);F=a.jqx._rnd(F,H,true)}return{min:B,max:F,dsRange:{min:f,max:s},filterRange:D,useIndeces:l,isDateTime:c,isTimeUnit:I,dateTimeUnit:w,interval:H}},_getDefaultDTFormatFn:function(e){var c=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var d;if(e=="year"||e=="month"||e=="day"){d=function(f){return f.getDate()+"-"+c[f.getMonth()]+"-"+f.getFullYear()}}else{d=function(f){return f.getDate()+"-"+c[f.getMonth()]+"-"+f.getFullYear()+"<br>"+f.getHours()+":"+f.getMinutes()+":"+f.getSeconds()}}return d},_getDTIntCnt:function(h,d,e,k){var f=0;var i=new Date(h);var j=new Date(d);if(e<=0){return 1}while(i.valueOf()<j.valueOf()){if(k=="millisecond"){i.setMilliseconds(i.getMilliseconds()+e)}else{if(k=="second"){i.setSeconds(i.getSeconds()+e)}else{if(k=="minute"){i.setMinutes(i.getMinutes()+e)}else{if(k=="hour"){var c=i.valueOf();i.setHours(i.getHours()+e);if(c===i.valueOf()){i.setHours(i.getHours()+e+1)}}else{if(k=="day"){i.setDate(i.getDate()+e)}else{if(k=="month"){i.setMonth(i.getMonth()+e)}else{if(k=="year"){i.setFullYear(i.getFullYear()+e)}}}}}}}f++}return f},_estAxisInterval:function(f,k,o,c,l,d){if(isNaN(f)||isNaN(k)){return NaN}var e=[1,2,5,10,15,20,50,100,200,500];var j=0;var h=c/((!isNaN(d)&&d>0)?d:50);if(this._renderData&&this._renderData.length>o&&this._renderData[o].xAxis&&!isNaN(this._renderData[o].xAxis.avgWidth)){var q=Math.max(1,this._renderData[o].xAxis.avgWidth);if(q!=0&&isNaN(d)){h=0.9*c/q}}if(h<=1){return Math.abs(k-f)}var p=0;while(true){var n=j>=e.length?Math.pow(10,3+j-e.length):e[j];if(this._isDate(f)&&this._isDate(k)){p=this._getDTIntCnt(f,k,n,l)}else{p=(k-f)/n}if(p<=h){break}j++}var m=this.seriesGroups[o];if(m.spider||m.polar){if(2*n>k-f){n=k-f}}return n},_getPaddingSize:function(n,f,h,d,p,i,q){var j=n.min;var l=n.max;var c=n.interval;var e=n.dateTimeUnit;if(p){var m=(d/Math.max(1,l-j+c))*c;if(i){return{left:0,right:m}}else{if(h){return{left:0,right:0}}return{left:m/2,right:m/2}}}if(h&&!q){return{left:0,right:0}}if(this._isDate(j)&&this._isDate(l)){var o=this._getDTIntCnt(j,l,Math.min(c,l-j),e);var k=d/Math.max(2,o);return{left:k/2,right:k/2}}var o=Math.max(1,l-j);if(o==1){sz=d/4;return{left:sz,right:sz}}var k=d/(o+1);return{left:k/2,right:k/2}},_calculateXOffsets:function(f,G){var F=this.seriesGroups[f];var o=this._getXAxis(f);var z=[];var m=[];var n=this._getDataLen(f);var e=this._getXAxisStats(f,o,G);var w=e.min;var D=e.max;var c=e.isDateTime;var H=e.isTimeUnit;var E=this._hasColumnSeries();var d=F.polar||F.spider;var A=this._get([F.startAngle,F.minAngle,0]);var u=this._get([F.endAngle,F.maxAngle,360]);var q=d&&!(Math.abs(Math.abs(u-A)-360)>0.0001);var l=this._alignValuesWithTicks(f);var t=this._getPaddingSize(e,o,l,G,d,q,E);var J=D-w;var C=e.filterRange;if(J==0){J=1}var I=G-t.left-t.right;if(d&&l){t.left=t.right=0}var j=-1,p=-1;for(var B=0;B<n;B++){var v=(o.dataField===undefined)?B:this._getDataValue(B,o.dataField,f);if(e.useIndeces){if(B<C.min||B>C.max){z.push(NaN);m.push(undefined);continue}z.push(a.jqx._ptrnd(t.left+(B-w)/J*I));m.push(v);if(j==-1){j=B}if(p==-1||p<B){p=B}continue}v=c?this._castAsDate(v,o.dateFormat):this._castAsNumber(v);if(isNaN(v)||v<C.min||v>C.max){z.push(NaN);m.push(undefined);continue}var s=0;if(!c||(c&&H)){diffFromMin=v-w;s=(v-w)*I/J}else{s=(v.valueOf()-w.valueOf())/(D.valueOf()-w.valueOf())*I}s=a.jqx._ptrnd(t.left+s);z.push(s);m.push(v);if(j==-1){j=B}if(p==-1||p<B){p=B}}if(o.flip==true){for(var B=0;B<z.length;B++){if(!isNaN(z[B])){z[B]=G-z[B]}}}if(H||c){J=this._getDateDiff(w,D,o.baseUnit);J=a.jqx._rnd(J,1,false)}var k=Math.max(1,J);var h=I/k;if(j==p&&k==1){z[j]=t.left+I/2}if(this.enableSampling&&z.length>this.samplingThreshold){this._sampleXOffsets(G,z,m,j,p)}return{axisStats:e,data:z,xvalues:m,first:j,last:p,length:p==-1?0:p-j+1,itemWidth:h,intervalWidth:h*e.interval,rangeLength:J,useIndeces:e.useIndeces,padding:t,axisSize:I}},_sampleXOffsets:function(k,e,c,j,f){var f=NaN;for(var d=0;d<e.length;d++){var h=Math.round(e[d]);if(isNaN(h)){continue}if(!isNaN(f)&&Math.abs(e[f]-h)<1){continue}f=d}},_getXAxis:function(c){if(c==undefined||this.seriesGroups.length<=c){return this.categoryAxis||this.xAxis}return this.seriesGroups[c].categoryAxis||this.seriesGroups[c].xAxis||this.categoryAxis||this.xAxis},_isGreyScale:function(f,c){var e=this.seriesGroups[f];var d=e.series[c];if(d.greyScale==true){return true}else{if(d.greyScale==false){return false}}if(e.greyScale==true){return true}else{if(e.greyScale==false){return false}}return this.greyScale==true},_getSeriesColors:function(h,d,f){var c=this._getSeriesColorsInternal(h,d,f);if(this._isGreyScale(h,d)){for(var e in c){c[e]=a.jqx.toGreyScale(c[e])}}return c},_getColorFromScheme:function(q,n,c){var e="#000000";var p=this.seriesGroups[q];var k=p.series[n];if(this._isPieGroup(q)){var d=this._getDataLen(q);e=this._getItemColorFromScheme(k.colorScheme||p.colorScheme||this.colorScheme,n*d+c,q,n)}else{var o=0;for(var h=0;h<=q;h++){for(var f in this.seriesGroups[h].series){if(h==q&&f==n){break}else{o++}}}var m=this.colorScheme;if(p.colorScheme){m=p.colorScheme;sidex=seriesIndex}if(m==undefined||m==""){m=this.colorSchemes[0].name}if(!m){return e}for(var h=0;h<this.colorSchemes.length;h++){var l=this.colorSchemes[h];if(l.name==m){while(o>l.colors.length){o-=l.colors.length;if(++h>=this.colorSchemes.length){h=0}l=this.colorSchemes[h]}e=l.colors[o%l.colors.length]}}}return e},_createColorsCache:function(){this._colorsCache={get:function(c){if(this._store[c]){return this._store[c]}},set:function(d,c){if(this._size<10000){this._store[d]=c;this._size++}},clear:function(){this._store={};this._size=0},_size:0,_store:{}}},_getSeriesColorsInternal:function(n,e,c){var h=this.seriesGroups[n];var p=h.series[e];if(!a.isFunction(p.colorFunction)&&h.type!="pie"&&h.type!="donut"){c=NaN}var i=n+"_"+e+"_"+(isNaN(c)?"NaN":c);if(this._colorsCache.get(i)){return this._colorsCache.get(i)}var d={lineColor:"#222222",lineColorSelected:"#151515",lineColorSymbol:"#222222",lineColorSymbolSelected:"#151515",fillColor:"#222222",fillColorSelected:"#333333",fillColorSymbol:"#222222",fillColorSymbolSelected:"#333333",fillColorAlt:"#222222",fillColorAltSelected:"#333333"};var j;if(a.isFunction(p.colorFunction)){var k=!isNaN(c)?this._getDataValue(c,p.dataField,n):NaN;if(h.type.indexOf("range")!=-1&&!isNaN(c)){var f=this._getDataValue(c,p.dataFieldFrom,n);var m=this._getDataValue(c,p.dataFieldTo,n);k={from:f,to:m}}j=p.colorFunction(k,c,p,h);if(typeof(j)=="object"){for(var l in j){d[l]=j[l]}}else{d.fillColor=j}}else{for(var l in d){if(p[l]){d[l]=p[l]}}if(!p.fillColor&&!p.color){d.fillColor=this._getColorFromScheme(n,e,c)}else{p.fillColor=p.fillColor||p.color}}var o={fillColor:{baseColor:"fillColor",adjust:1},fillColorSelected:{baseColor:"fillColor",adjust:1.1},fillColorSymbol:{baseColor:"fillColor",adjust:1},fillColorSymbolSelected:{baseColor:"fillColorSymbol",adjust:2},fillColorAlt:{baseColor:"fillColor",adjust:4},fillColorAltSelected:{baseColor:"fillColor",adjust:3},lineColor:{baseColor:"fillColor",adjust:0.95},lineColorSelected:{baseColor:"lineColor",adjust:0.95},lineColorSymbol:{baseColor:"lineColor",adjust:1},lineColorSymbolSelected:{baseColor:"lineColorSelected",adjust:1}};for(var l in d){if(typeof(j)!="object"||!j[l]){if(p[l]){d[l]=p[l]}}}for(var l in d){if(typeof(j)!="object"||!j[l]){if(!p[l]){d[l]=a.jqx.adjustColor(d[o[l].baseColor],o[l].adjust)}}}this._colorsCache.set(i,d);return d},_getItemColorFromScheme:function(e,h,m,l){if(e==undefined||e==""){e=this.colorSchemes[0].name}for(var k=0;k<this.colorSchemes.length;k++){if(e==this.colorSchemes[k].name){break}}var f=0;while(f<=h){if(k==this.colorSchemes.length){k=0}var c=this.colorSchemes[k].colors.length;if(f+c<=h){f+=c;k++}else{var d=this.colorSchemes[k].colors[h-f];if(this._isGreyScale(m,l)&&d.indexOf("#")==0){d=a.jqx.toGreyScale(d)}return d}}},getColorScheme:function(c){for(var d=0;d<this.colorSchemes.length;d++){if(this.colorSchemes[d].name==c){return this.colorSchemes[d].colors}}return undefined},addColorScheme:function(d,c){for(var e=0;e<this.colorSchemes.length;e++){if(this.colorSchemes[e].name==d){this.colorSchemes[e].colors=c;return}}this.colorSchemes.push({name:d,colors:c})},removeColorScheme:function(c){for(var d=0;d<this.colorSchemes.length;d++){if(this.colorSchemes[d].name==c){this.colorSchemes.splice(d,1);break}}},colorSchemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],_formatValue:function(i,k,d,h,c,f){if(i==undefined){return""}if(this._isObject(i)&&!this._isDate(i)&&!d){return""}if(d){if(!a.isFunction(d)){return i.toString()}try{return d(i,f,c,h)}catch(j){return j.message}}if(this._isNumber(i)){return this._formatNumber(i,k)}if(this._isDate(i)){return this._formatDate(i,k)}if(k){return(k.prefix||"")+i.toString()+(k.sufix||"")}return i.toString()},_getFormattedValue:function(h,j,C,q,f,m){var A=this.seriesGroups[h];var o=A.series[j];var n="";var k=q,l=f;if(!l){l=o.formatFunction||A.formatFunction}if(!k){k=o.formatSettings||A.formatSettings}if(!o.formatFunction&&o.formatSettings){l=undefined}var p={},v=0;for(var c in o){if(c.indexOf("dataField")==0){p[c.substring(9).toLowerCase()]=this._getDataValue(C,o[c],h);v++}}if(v==0){p=this._getDataValue(C,undefined,h)}if(A.type.indexOf("waterfall")!=-1&&this._isSummary(h,C)){p=this._renderData[h].offsets[j][C].value;v=0}if(l&&a.isFunction(l)){try{return l(v==1?p[""]:p,C,o,A)}catch(B){return B.message}}if(v==1&&this._isPieGroup(h)){return this._formatValue(p[""],k,l,h,j,C)}if(v>0){var w=0;for(var c in p){if(w>0&&n!=""){n+="<br>"}var u="dataField"+(c.length>0?c.substring(0,1).toUpperCase()+c.substring(1):"");var t="displayText"+(c.length>0?c.substring(0,1).toUpperCase()+c.substring(1):"");var z=o[t]||o[u];var d=p[c];if(undefined!=d){d=this._formatValue(d,k,l,h,j,C)}else{continue}if(m===true){n+=d}else{n+=z+": "+d}w++}}else{if(undefined!=p){n=this._formatValue(p,k,l,h,j,C)}}return n||""},_isNumberAsString:function(e){if(typeof(e)!="string"){return false}e=a.trim(e);for(var c=0;c<e.length;c++){var d=e.charAt(c);if((d>="0"&&d<="9")||d==","||d=="."){continue}if(d=="-"&&c==0){continue}if((d=="("&&c==0)||(d==")"&&c==e.length-1)){continue}return false}return true},_castAsDate:function(h,d){if(h instanceof Date&&!isNaN(h)){return h}if(typeof(h)=="string"){var c;if(d){c=a.jqx.dataFormat.parsedate(h,d);if(this._isDate(c)){return c}}if(this._autoDateFormats){for(var f=0;f<this._autoDateFormats.length;f++){c=a.jqx.dataFormat.parsedate(h,this._autoDateFormats[f]);if(this._isDate(c)){return c}}}var e=this._detectDateFormat(h);if(e){c=a.jqx.dataFormat.parsedate(h,e);if(this._isDate(c)){this._autoDateFormats.push(e);return c}}c=new Date(h);if(this._isDate(c)){if(h.indexOf(":")==-1){c.setHours(0,0,0,0)}}return c}return undefined},_castAsNumber:function(d){if(d instanceof Date&&!isNaN(d)){return d.valueOf()}if(typeof(d)=="string"){if(this._isNumber(d)){d=parseFloat(d)}else{if(!/[a-zA-Z]/.test(d)){var c=new Date(d);if(c!=undefined){d=c.valueOf()}}}}return d},_isNumber:function(c){if(typeof(c)=="string"){if(this._isNumberAsString(c)){c=parseFloat(c)}}return typeof c==="number"&&isFinite(c)},_isDate:function(c){return c instanceof Date&&!isNaN(c.getDate())},_isBoolean:function(c){return typeof c==="boolean"},_isObject:function(c){return(c&&(typeof c==="object"||a.isFunction(c)))||false},_formatDate:function(e,d){var c=e.toString();if(d){if(d.dateFormat){c=a.jqx.dataFormat.formatDate(e,d.dateFormat)}c=(d.prefix||"")+c+(d.sufix||"")}return c},_formatNumber:function(p,f){if(!this._isNumber(p)){return p}f=f||{};var t=".";var q="";var u=this;if(u.localization){t=u.localization.decimalSeparator||u.localization.decimalseparator||t;q=u.localization.thousandsSeparator||u.localization.thousandsseparator||q}if(f.decimalSeparator){t=f.decimalSeparator}if(f.thousandsSeparator){q=f.thousandsSeparator}var o=f.prefix||"";var s=f.sufix||"";var k=f.decimalPlaces;if(isNaN(k)){k=this._getDecimalPlaces([p],undefined,3)}var n=f.negativeWithBrackets||false;var j=(p<0);if(j&&n){p*=-1}var e=p.toString();var c;var m=Math.pow(10,k);e=(Math.round(p*m)/m).toString();if(isNaN(e)){e=""}c=e.lastIndexOf(".");if(k>0){if(c<0){e+=t;c=e.length-1}else{if(t!=="."){e=e.replace(".",t)}}while((e.length-1-c)<k){e+="0"}}c=e.lastIndexOf(t);c=(c>-1)?c:e.length;var h=e.substring(c);var d=0;for(var l=c;l>0;l--,d++){if((d%3===0)&&(l!==c)&&(!j||(l>1)||(j&&n))){h=q+h}h=e.charAt(l-1)+h}e=h;if(j&&n){e="("+e+")"}return o+e+s},_defaultNumberFormat:{prefix:"",sufix:"",decimalSeparator:".",thousandsSeparator:",",decimalPlaces:2,negativeWithBrackets:false},_calculateControlPoints:function(i,h){var f=i[h],o=i[h+1],e=i[h+2],l=i[h+3],d=i[h+4],k=i[h+5];var n=0.4;var q=Math.sqrt(Math.pow(e-f,2)+Math.pow(l-o,2));var c=Math.sqrt(Math.pow(d-e,2)+Math.pow(k-l,2));var j=(q+c);if(j==0){j=1}var p=n*q/j;var m=n-p;return[e+p*(f-d),l+p*(o-k),e-m*(f-d),l-m*(o-k)]},_getBezierPoints:function(e){var d="";var k=[],f=[];var j=e.split(" ");for(var h=0;h<j.length;h++){var l=j[h].split(",");k.push(parseFloat(l[0]));k.push(parseFloat(l[1]));if(isNaN(k[k.length-1])||isNaN(k[k.length-2])){continue}}var c=k.length;if(c<=1){return""}else{if(c==2){d="M"+a.jqx._ptrnd(k[0])+","+a.jqx._ptrnd(k[1])+" L"+a.jqx._ptrnd(k[0]+1)+","+a.jqx._ptrnd(k[1]+1)+" ";return d}}for(var h=0;h<c-4;h+=2){f=f.concat(this._calculateControlPoints(k,h))}for(var h=2;h<c-5;h+=2){d+=" C"+a.jqx._ptrnd(f[2*h-2])+","+a.jqx._ptrnd(f[2*h-1])+" "+a.jqx._ptrnd(f[2*h])+","+a.jqx._ptrnd(f[2*h+1])+" "+a.jqx._ptrnd(k[h+2])+","+a.jqx._ptrnd(k[h+3])+" "}if(c<4||(Math.abs(k[0]-k[2])<3||Math.abs(k[1]-k[3])<3)||this._isVML){d="M"+a.jqx._ptrnd(k[0])+","+a.jqx._ptrnd(k[1])+" L"+a.jqx._ptrnd(k[2])+","+a.jqx._ptrnd(k[3])+" "+d}else{d="M"+a.jqx._ptrnd(k[0])+","+a.jqx._ptrnd(k[1])+" Q"+a.jqx._ptrnd(f[0])+","+a.jqx._ptrnd(f[1])+" "+a.jqx._ptrnd(k[2])+","+a.jqx._ptrnd(k[3])+" "+d}if(Math.abs(k[c-2]-k[c-4])<3||Math.abs(k[c-1]-k[c-3])<3||this._isVML){d+=" L"+a.jqx._ptrnd(k[c-2])+","+a.jqx._ptrnd(k[c-1])+" "}else{d+=" Q"+a.jqx._ptrnd(f[c*2-10])+","+a.jqx._ptrnd(f[c*2-9])+" "+a.jqx._ptrnd(k[c-2])+","+a.jqx._ptrnd(k[c-1])+" "}return d},_animTickInt:50,_createAnimationGroup:function(c){if(!this._animGroups){this._animGroups={}}this._animGroups[c]={animations:[],startTick:NaN}},_startAnimation:function(e){var f=new Date();var c=f.getTime();this._animGroups[e].startTick=c;this._runAnimation();this._enableAnimTimer()},_enqueueAnimation:function(f,e,d,i,h,c,j){if(i<0){i=0}if(j==undefined){j="easeInOutSine"}this._animGroups[f].animations.push({key:e,properties:d,duration:i,fn:h,context:c,easing:j})},_stopAnimations:function(){clearTimeout(this._animtimer);this._animtimer=undefined;this._animGroups=undefined},_enableAnimTimer:function(){if(!this._animtimer){var c=this;this._animtimer=setTimeout(function(){c._runAnimation()},this._animTickInt)}},_runAnimation:function(t){if(this._animGroups){var w=new Date();var l=w.getTime();var s={};for(var n in this._animGroups){var v=this._animGroups[n].animations;var o=this._animGroups[n].startTick;var k=0;for(var q=0;q<v.length;q++){var z=v[q];var c=(l-o);if(z.duration>k){k=z.duration}var u=z.duration>0?c/z.duration:1;var m=u;if(z.easing&&z.duration!=0){m=a.easing[z.easing](u,c,0,1,z.duration)}if(u>1){u=1;m=1}if(z.fn){z.fn(z.key,z.context,m);continue}var h={};for(var n=0;n<z.properties.length;n++){var e=z.properties[n];var f=0;if(u==1){f=e.to}else{f=easeParecent*(e.to-e.from)+e.from}h[e.key]=f}this.renderer.attr(z.key,h)}if(o+k>l){s[n]=({startTick:o,animations:v})}}this._animGroups=s;if(this.renderer instanceof a.jqx.HTML5Renderer){this.renderer.refresh()}}this._animtimer=null;for(var n in this._animGroups){this._enableAnimTimer();break}},_fixCoords:function(e,f){var c=this.seriesGroups[f].orientation=="horizontal";if(!c){return e}var d=e.x;e.x=e.y;e.y=d+this._plotRect.y-this._plotRect.x;var d=e.width;e.width=e.height;e.height=d;return e},getItemCoord:function(c,e,w){var l=this;if(l._isPieGroup(c)&&(!l._isSerieVisible(c,e,w)||!l._renderData||l._renderData.length<=c)){return{x:NaN,y:NaN}}if(!l._isSerieVisible(c,e)||!l._renderData||l._renderData.length<=c){return{x:NaN,y:NaN}}var t=l.seriesGroups[c];var k=t.series[e];var p=l._getItemCoord(c,e,w);if(l._isPieGroup(c)){if(isNaN(p.x)||isNaN(p.y)||isNaN(p.fromAngle)||isNaN(p.toAngle)){return{x:NaN,y:NaN}}var j=this._plotRect;var q=p.fromAngle*(Math.PI/180);var f=p.toAngle*(Math.PI/180);x1=j.x+p.center.x+Math.cos(q)*p.outerRadius;x2=j.x+p.center.x+Math.cos(f)*p.outerRadius;y1=j.y+p.center.y-Math.sin(q)*p.outerRadius;y2=j.y+p.center.y-Math.sin(f)*p.outerRadius;var i=Math.min(x1,x2);var n=Math.abs(x2-x1);var h=Math.min(y1,y2);var m=Math.abs(y2-y1);p={x:i,y:h,width:n,height:m,center:p.center,centerOffset:p.centerOffset,innerRadius:p.innerRadius,outerRadius:p.outerRadius,selectedRadiusChange:p.selectedRadiusChange,fromAngle:p.fromAngle,toAngle:p.toAngle};return p}if(t.type.indexOf("column")!=-1||t.type.indexOf("waterfall")!=-1){var z=this._getColumnSerieWidthAndOffset(c,e);p.height=Math.abs(p.y.to-p.y.from);p.y=Math.min(p.y.to,p.y.from);p.x+=z.offset;p.width=z.width}else{if(t.type.indexOf("ohlc")!=-1||t.type.indexOf("candlestick")!=-1){var z=this._getColumnSerieWidthAndOffset(c,e);var h=p.y;var v=Math.min(h.Open,h.Close,h.Low,h.High);var u=Math.max(h.Open,h.Close,h.Low,h.High);p.height=Math.abs(u-v);p.y=v;p.x+=z.offset;p.width=z.width}else{if(t.type.indexOf("line")!=-1||t.type.indexOf("area")!=-1){p.width=p.height=0;p.y=p.y.to}else{if(t.type.indexOf("bubble")!=-1||t.type.indexOf("scatter")!=-1){p.center={x:p.x,y:p.y.to};var d=p.y.radius;if(k.symbolType!="circle"&&k.symbolType!=undefined){d/=2}p.y=p.y.to;p.radius=d;p.width=2*d;p.height=2*d}}}}p=this._fixCoords(p,c);if(t.polar||t.spider){var o=this._toPolarCoord(this._renderData[c].polarCoords,this._plotRect,p.x,p.y);p.x=o.x;p.y=o.y;if(p.center){p.center=this._toPolarCoord(this._renderData[c].polarCoords,this._plotRect,p.center.x,p.center.y)}}if(t.type.indexOf("bubble")!=-1||t.type.indexOf("scatter")!=-1){p.x-=d;p.y-=d}return p},_getItemCoord:function(p,k,c){var f=this.seriesGroups[p],m,l;if(!f||!this._renderData){return{x:NaN,y:NaN}}var h=f.series[k];if(!h){return{x:NaN,y:NaN}}var j=this._plotRect;if(this._isPieGroup(p)){var n=this._renderData[p].offsets[k][c];if(!n){return{x:NaN,y:NaN}}var d=(n.fromAngle+n.toAngle)/2*(Math.PI/180);m=j.x+n.x+Math.cos(d)*n.outerRadius;l=j.y+n.y-Math.sin(d)*n.outerRadius;return{x:m,y:l,center:{x:n.x,y:n.y},centerOffset:n.centerOffset,innerRadius:n.innerRadius,outerRadius:n.outerRadius,selectedRadiusChange:n.selectedRadiusChange,fromAngle:n.fromAngle,toAngle:n.toAngle}}else{m=j.x+this._renderData[p].xoffsets.data[c];l=this._renderData[p].offsets[k][c];if(isNaN(m)||!l){return{x:NaN,y:NaN}}}var o={};for(var e in l){o[e]=l[e]}return{x:m,y:o}},_detectDateFormat:function(k,f){var e={en_US_d:"M/d/yyyy",en_US_D:"dddd, MMMM dd, yyyy",en_US_t:"h:mm tt",en_US_T:"h:mm:ss tt",en_US_f:"dddd, MMMM dd, yyyy h:mm tt",en_US_F:"dddd, MMMM dd, yyyy h:mm:ss tt",en_US_M:"MMMM dd",en_US_Y:"yyyy MMMM",en_US_S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",en_CA_d:"dd/MM/yyyy",en_CA_D:"MMMM-dd-yy",en_CA_f:"MMMM-dd-yy h:mm tt",en_CA_F:"MMMM-dd-yy h:mm:ss tt",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",de_DE_d:"dd.MM.yyyy",de_DE_D:"dddd, d. MMMM yyyy",de_DE_t:"HH:mm",de_DE_T:"HH:mm:ss",de_DE_f:"dddd, d. MMMM yyyy HH:mm",de_DE_F:"dddd, d. MMMM yyyy HH:mm:ss",de_DE_M:"dd MMMM",de_DE_Y:"MMMM yyyy",fr_FR_d:"dd/MM/yyyy",fr_FR_D:"dddd d MMMM yyyy",fr_FR_t:"HH:mm",fr_FR_T:"HH:mm:ss",fr_FR_f:"dddd d MMMM yyyy HH:mm",fr_FR_F:"dddd d MMMM yyyy HH:mm:ss",fr_FR_M:"d MMMM",fr_FR_Y:"MMMM yyyy",it_IT_d:"dd/MM/yyyy",it_IT_D:"dddd d MMMM yyyy",it_IT_t:"HH:mm",it_IT_T:"HH:mm:ss",it_IT_f:"dddd d MMMM yyyy HH:mm",it_IT_F:"dddd d MMMM yyyy HH:mm:ss",it_IT_M:"dd MMMM",it_IT_Y:"MMMM yyyy",ru_RU_d:"dd.MM.yyyy",ru_RU_D:"d MMMM yyyy '?.'",ru_RU_t:"H:mm",ru_RU_T:"H:mm:ss",ru_RU_f:"d MMMM yyyy '?.' H:mm",ru_RU_F:"d MMMM yyyy '?.' H:mm:ss",ru_RU_Y:"MMMM yyyy",cs_CZ_d:"d.M.yyyy",cs_CZ_D:"d. MMMM yyyy",cs_CZ_t:"H:mm",cs_CZ_T:"H:mm:ss",cs_CZ_f:"d. MMMM yyyy H:mm",cs_CZ_F:"d. MMMM yyyy H:mm:ss",cs_CZ_M:"dd MMMM",cs_CZ_Y:"MMMM yyyy",he_IL_d:"dd MMMM yyyy",he_IL_D:"dddd dd MMMM yyyy",he_IL_t:"HH:mm",he_IL_T:"HH:mm:ss",he_IL_f:"dddd dd MMMM yyyy HH:mm",he_IL_F:"dddd dd MMMM yyyy HH:mm:ss",he_IL_M:"dd MMMM",he_IL_Y:"MMMM yyyy",hr_HR_d:"d.M.yyyy.",hr_HR_D:"d. MMMM yyyy.",hr_HR_t:"H:mm",hr_HR_T:"H:mm:ss",hr_HR_f:"d. MMMM yyyy. H:mm",hr_HR_F:"d. MMMM yyyy. H:mm:ss",hr_HR_M:"d. MMMM",hu_HU_d:"yyyy.MM.dd.",hu_HU_D:"yyyy. MMMM d.",hu_HU_t:"H:mm",hu_HU_T:"H:mm:ss",hu_HU_f:"yyyy. MMMM d. H:mm",hu_HU_F:"yyyy. MMMM d. H:mm:ss",hu_HU_M:"MMMM d.",hu_HU_Y:"yyyy. MMMM",jp_JP_d:"gg y/M/d",jp_JP_D:"gg y'?'M'?'d'?'",jp_JP_t:"H:mm",jp_JP_T:"H:mm:ss",jp_JP_f:"gg y'?'M'?'d'?' H:mm",jp_JP_F:"gg y'?'M'?'d'?' H:mm:ss",jp_JP_M:"M'?'d'?'",jp_JP_Y:"gg y'?'M'?'",lt_LT_d:"yyyy.MM.dd",lt_LT_D:"yyyy 'm.' MMMM d 'd.'",lt_LT_t:"HH:mm",lt_LT_T:"HH:mm:ss",lt_LT_f:"yyyy 'm.' MMMM d 'd.' HH:mm",lt_LT_F:"yyyy 'm.' MMMM d 'd.' HH:mm:ss",lt_LT_M:"MMMM d 'd.'",lt_LT_Y:"yyyy 'm.' MMMM",sa_IN_d:"dd-MM-yyyy",sa_IN_D:"dd MMMM yyyy dddd",sa_IN_t:"HH:mm",sa_IN_T:"HH:mm:ss",sa_IN_f:"dd MMMM yyyy dddd HH:mm",sa_IN_F:"dd MMMM yyyy dddd HH:mm:ss",sa_IN_M:"dd MMMM",basic_y:"yyyy",basic_ym:"yyyy-MM",basic_d:"yyyy-MM-dd",basic_dhm:"yyyy-MM-dd hh:mm",basic_bhms:"yyyy-MM-dd hh:mm:ss",basic2_ym:"MM-yyyy",basic2_d:"MM-dd-yyyy",basic2_dhm:"MM-dd-yyyy hh:mm",basic2_dhms:"MM-dd-yyyy hh:mm:ss",basic3_ym:"yyyy/MM",basic3_d:"yyyy/MM/dd",basic3_dhm:"yyyy/MM/dd hh:mm",basic3_bhms:"yyyy/MM/dd hh:mm:ss",basic4_ym:"MM/yyyy",basic4_d:"MM/dd/yyyy",basic4_dhm:"MM/dd/yyyy hh:mm",basic4_dhms:"MM/dd/yyyy hh:mm:ss"};if(f){e=a.extend({},e,f)}var d=[];if(!a.isArray(k)){d.push(k)}else{d=k}for(var h in e){e[h]={format:e[h],count:0}}for(var l=0;l<d.length;l++){value=d[l];if(value==null||value==undefined){continue}for(var h in e){var c=a.jqx.dataFormat.parsedate(value,e[h].format);if(c!=null){e[h].count++}}}var m={key:undefined,count:0};for(var h in e){if(e[h].count>m.count){m.key=h;m.count=e[h].count}}return m.key?e[m.key].format:""},_testXAxisDateFormat:function(k){var m=this;var e=m._getXAxis(k);var d=m._getDataLen(k);var f={};if(m.localization&&m.localization.patterns){for(var l in m.localization.patterns){f["local_"+l]=m.localization.patterns[l]}}var j=[];for(var h=0;h<d&&h<10;h++){value=m._getDataValue(h,e.dataField,k);if(value==null||value==undefined){continue}j.push(value)}var c=m._detectDateFormat(j,f);return c}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleApi:true,getItemsCount:function(h,c){var e=this.seriesGroups[h];if(!this._isSerieVisible(h,c)){return 0}var f=this._renderData;if(!e||!f||f.length<=h){return 0}var d=e.series[c];if(!d){return 0}return f[h].offsets[c].length},getXAxisRect:function(d){var c=this._renderData;if(!c||c.length<=d){return undefined}if(!c[d].xAxis){return undefined}return c[d].xAxis.rect},getXAxisLabels:function(m){var e=[];var n=this._renderData;if(!n||n.length<=m){return e}n=n[m].xAxis;if(!n){return e}var l=this.seriesGroups[m];if(l.polar||l.spider){for(var f=0;f<n.polarLabels.length;f++){var k=n.polarLabels[f];e.push({offset:{x:k.x,y:k.y},value:k.value})}return e}var d=this._getXAxis(m);var j=this.getXAxisRect(m);var c=d.position=="top"||d.position=="right";var h=l.orientation=="horizontal";for(var f=0;f<n.data.length;f++){if(h){e.push({offset:{x:j.x+(c?0:j.width),y:j.y+n.data.data[f]},value:n.data.xvalues[f]})}else{e.push({offset:{x:j.x+n.data.data[f],y:j.y+(c?j.height:0)},value:n.data.xvalues[f]})}}return e},getValueAxisRect:function(d){var c=this._renderData;if(!c||c.length<=d){return undefined}if(!c[d].valueAxis){return undefined}return c[d].valueAxis.rect},getValueAxisLabels:function(k){var d=[];var l=this._renderData;if(!l||l.length<=k){return d}l=l[k].valueAxis;if(!l){return d}var m=this._getValueAxis(k);var c=m.position=="top"||m.position=="right";var j=this.seriesGroups[k];var f=j.orientation=="horizontal";if(j.polar||j.spider){for(var e=0;e<l.polarLabels.length;e++){var h=l.polarLabels[e];d.push({offset:{x:h.x,y:h.y},value:h.value})}return d}for(var e=0;e<l.items.length;e++){if(f){d.push({offset:{x:l.itemOffsets[l.items[e]].x+l.itemWidth/2,y:l.rect.y+(c?l.rect.height:0)},value:l.items[e]})}else{d.push({offset:{x:l.rect.x+l.rect.width,y:l.itemOffsets[l.items[e]].y+l.itemWidth/2},value:l.items[e]})}}return d},getPlotAreaRect:function(){return this._plotRect},getRect:function(){return this._rect},showToolTip:function(h,d,f,c,e){var i=this.getItemCoord(h,d,f);if(isNaN(i.x)||isNaN(i.y)){return}this._startTooltipTimer(h,d,f,i.x,i.y,c,e)},hideToolTip:function(d){if(isNaN(d)){d=0}var c=this;c._cancelTooltipTimer();setTimeout(function(){c._hideToolTip(0)},d)}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleAnnotations:true,_renderAnnotation:function(h,j,d){var l=this.seriesGroups[h];var t=this.renderer;if(isNaN(h)){return}var n=this._get([this.getXAxisDataPointOffset(j.xValue,h),j.x]);var m=this._get([this.getValueAxisDataPointOffset(j.yValue,h),j.y]);var A=this._get([this.getXAxisDataPointOffset(j.xValue2,h),j.x2]);var f=this._get([this.getValueAxisDataPointOffset(j.yValue2,h),j.y2]);if(l.polar||l.spider){var u=this.getPolarDataPointOffset(j.xValue,j.yValue,h);if(u&&!isNaN(u.x)&&!isNaN(u.y)){n=u.x;m=u.y}else{n=j.x;m=j.y}}if(isNaN(m)||isNaN(n)){return false}if(l.orientation=="horizontal"){var B=n;n=m;m=B;B=A;A=f;f=B}if(j.offset){if(!isNaN(j.offset.x)){n+=j.offset.x;A+=j.offset.x}if(!isNaN(j.offset.y)){m+=j.offset.y;f+=j.offset.y}}var s=this._get([j.width,A-n]);var q=this._get([j.height,f-m]);var e;switch(j.type){case"rect":e=t.rect(n,m,s,q);break;case"circle":e=t.rect(n,m,j.radius);break;case"line":e=t.rect(n,m,A,f);break;case"path":e=t.path(j.path);break}t.attr(e,{fill:j.fillColor,stroke:j.lineColor,opacity:this._get([j.fillOpacity,j.opacity]),"stroke-opacity":this._get([j.lineOpacity,j.opacity]),"stroke-width":j.lineWidth,"stroke-dasharray":j.dashStyle||"none"});var z;if(j.text){var o=j.text;var C=0,k=0;if(o.offset){if(!isNaN(o.offset.x)){C+=o.offset.x}if(!isNaN(o.offset.y)){k+=o.offset.y}}z=t.text(o.value,n+C,m+k,NaN,NaN,o.angle,{},o.clip===true,o.horizontalAlignment||"center",o.verticalAlignment||"center",o.rotationPoint||"centermiddle");t.attr(z,{fill:o.fillColor,stroke:o.lineColor,"class":o["class"]})}var c=["click","mouseenter","mouseleave"];var p=this;for(var w=0;w<c.length;w++){var v=this._getEvent(c[w])||c[w];if(e){this.renderer.addHandler(e,v,function(){p._raiseAnnotationEvent(j,v)})}if(z){this.renderer.addHandler(z,v,function(){p._raiseAnnotationEvent(j,v)})}}},_raiseAnnotationEvent:function(c,d){this._raiseEvent("annotation_"+d,{annotation:c})}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleRangeSelector:true,_renderXAxisRangeSelector:function(p,n){var s=this;s._isTouchDevice=a.jqx.mobile.isTouchDevice();var i=s.seriesGroups[p];var e=s._getXAxis(p);var l=e?e.rangeSelector:undefined;if(!s._isSelectorRefresh){var q=(l&&l.renderTo)?l.renderTo:s.host;q.find(".rangeSelector").remove()}if(!e||e.visible==false||i.type=="spider"){return false}if(!s._isGroupVisible(p)){return false}if(!l){return false}var h=i.orientation=="horizontal";if(l.renderTo){h=false}if(s.rtl){e.flip=true}var d=h?this.host.height():this.host.width();d-=4;var o=this._getXAxisStats(p,e,d);var k=e.position;if(l.renderTo&&l.position){k=l.position}if(!this._isSelectorRefresh){var m=l.renderTo;var c="<div class='rangeSelector jqx-disableselect' style='position: absolute; background-color: transparent;' onselectstart='return false;'></div>";var f=a(c).appendTo(m?m:this.host.find(".chartContainer"));if(!m){var j=this.host.coord();selectorSize=this._selectorGetSize(e);if(!h){f.css("left",j.left+1);f.css("top",j.top+n.y+(k!="top"?n.height:-selectorSize));f.css("height",selectorSize);f.css("width",d)}else{f.css("left",j.left+1+n.x+(k!="right"?-selectorSize:n.width));f.css("top",j.top);f.css("height",d);f.css("width",selectorSize);n.height=selectorSize}}else{f.css({width:m.width(),height:m.height()});n.width=m.width();n.height=m.height()}this._refreshSelector(p,e,o,f,n,h)}this._isSelectorRefresh=false;return true},_refreshSelector:function(h,f,e,F,d,c){var k={};var z=f.rangeSelector;var m=this.seriesGroups[h];for(var B in z){k[B]=z[B]}delete k.padding;var u=k.minValue;var A=k.maxValue;if(undefined==u){u=Math.min(e.min.valueOf(),e.dsRange.min.valueOf())}if(undefined==A){A=Math.max(e.max.valueOf(),e.dsRange.max.valueOf())}if(this._isDate(e.min)){u=new Date(u)}if(this._isDate(e.max)){A=new Date(A)}var n=f.position;if(z.renderTo&&z.position){n=z.position}k.dataField=f.dataField;k.rangeSelector=undefined;k.type=f.type;k.baseUnit=z.baseUnit||f.baseUnit;k.minValue=u;k.maxValue=A;k.flip=f.flip;k.position=n;var l=5;var t=2,E=2,D=2,H=2;if(!z.renderTo){t=c?0:d.x;E=c?0:this._rect.width-d.x-d.width;D=c?d.y:l;H=c?this._paddedRect.height-this._plotRect.height:l}var p=z.padding;if(p==undefined&&!z.renderTo){p={left:t,top:D,right:E,bottom:H}}else{p={left:((p&&p.left)?p.left:t),top:((p&&p.top)?p.top:D),right:((p&&p.right)?p.right:E),bottom:((p&&p.bottom)?p.bottom:H)}}var w=f.rangeSelector.dataField;for(var B=0;undefined==w&&B<this.seriesGroups.length;B++){for(var v=0;undefined==w&&v<this.seriesGroups[B].series.length;v++){w=this.seriesGroups[B].series[v].dataField}}var o={padding:p,title:z.title||"",description:z.description||"",titlePadding:z.titlePadding,colorScheme:z.colorScheme||this.colorScheme,backgroundColor:z.backgroundColor||this.backgroundColor||"transparent",backgroundImage:z.backgroundImage||"",showBorderLine:z.showBorderLine||(z.renderTo?true:false),borderLineWidth:z.borderLineWidth||this.borderLineWidth,borderLineColor:z.borderLineColor||this.borderLineColor,rtl:z.rtl||this.rtl,greyScale:z.greyScale||this.greyScale,showLegend:false,enableAnimations:false,enableEvents:false,showToolTips:false,source:this.source,xAxis:k,seriesGroups:[{orientation:c?"horizontal":"vertical",valueAxis:{visible:false},type:f.rangeSelector.serieType||"area",series:[{dataField:w,opacity:0.8,lineWidth:1}]}]};F.empty();F.jqxChart(o);var q=this;F.on(q._getEvent("mousemove"),function(){q._unselect();q._hideToolTip()});var C=F.jqxChart("getInstance");if(!C._plotRect){return}var G=C._paddedRect;G.height=C._plotRect.height;if(!c&&n=="top"){G.y+=C._renderData[0].xAxis.rect.height}else{if(c){var s=C._renderData[0].xAxis.rect.width;G.width-=s;if(n!="right"){G.x+=s}}}q._createSliderElements(h,F,G,z);q.addHandler(a(document),q._getEvent("mousemove")+"."+q.element.id,q._onSliderMouseMove,{self:this,groupIndex:h,renderTo:F,swapXY:c});q.addHandler(a(F),q._getEvent("mousedown"),q._onSliderMouseDown,{self:this,groupIndex:h,renderTo:F,swapXY:c});q.addHandler(a(F),q._getEvent("mouseup"),q._onSliderMouseUp,{self:this,groupIndex:h,renderTo:F,swapXY:c})},_createSliderElements:function(u,n,o,p){n.find(".slider").remove();var t=p.colorSelectedRange||"blue";var i=p.colorUnselectedRange||"white";var c=a("<div class='slider' style='position: absolute;'></div>");c.css({background:t,opacity:0.1,left:o.x,top:o.y,width:o.width,height:o.height});c.appendTo(n);if(!this._sliders){this._sliders=[]}while(this._sliders.length<u+1){this._sliders.push({})}var l="<div class='slider' style='position: absolute;  background: "+i+"; opacity: 0.5;'></div>";var d="<div class='slider' style='position: absolute; background: grey; opacity: 0.5;'></div>";var j="<div class='slider jqx-rc-all' style='position: absolute; background: white; border-style: solid; border-width: 1px; border-color: grey;'></div>";this._sliders[u]={element:c,host:n,fullRect:{x:c.coord().left,y:c.coord().top,width:o.width,height:o.height},rect:o,left:a(l),right:a(l),leftTop:a(d),rightTop:a(d),leftBorder:a(d),leftBar:a(j),rightBorder:a(d),rightBar:a(j)};this._sliders[u].left.appendTo(n);this._sliders[u].right.appendTo(n);this._sliders[u].leftTop.appendTo(n);this._sliders[u].rightTop.appendTo(n);this._sliders[u].leftBorder.appendTo(n);this._sliders[u].rightBorder.appendTo(n);this._sliders[u].leftBar.appendTo(n);this._sliders[u].rightBar.appendTo(n);var s=this._renderData[u].xAxis;var f=s.data.axisStats;var q=f.min.valueOf();var h=f.max.valueOf();var k=this._valueToOffset(u,q);var m=this._valueToOffset(u,h);if(k>m){var e=m;m=k;k=e}if(this.seriesGroups[u].orientation!="horizontal"){c.css({left:Math.round(o.x+k),top:o.y,width:Math.round(m-k),height:o.height})}else{c.css({top:Math.round(o.y+k),left:o.x,height:Math.round(m-k),width:o.width})}this._setSliderPositions(u,k,m)},_setSliderPositions:function(f,t,i){var v=this.seriesGroups[f];var e=this._getXAxis(f);var p=e.rangeSelector;var c=v.orientation=="horizontal";if(e.rangeSelector.renderTo){c=false}var k=e.position;if(p.renderTo&&p.position){k=p.position}var m=(c&&k=="right")||(!c&&k=="top");var o=this._sliders[f];var s=c?"top":"left";var h=c?"left":"top";var j=c?"height":"width";var q=c?"width":"height";var l=c?"y":"x";var n=c?"x":"y";var d=o.rect;o.left.css(s,d[l]);o.left.css(h,d[n]);o.left.css(j,t);o.left.css(q,d[q]);o.right.css(s,d[l]+i);o.right.css(h,d[n]);o.right.css(j,d[j]-i+1);o.right.css(q,d[q]);o.leftTop.css(s,d[l]);o.leftTop.css(h,d[n]+(((c&&k=="right")||(!c&&k!="top"))?0:d[q]));o.leftTop.css(j,t);o.leftTop.css(q,1);o.rightTop.css(s,d[l]+i);o.rightTop.css(h,d[n]+(((c&&k=="right")||(!c&&k!="top"))?0:d[q]));o.rightTop.css(j,d[j]-i+1);o.rightTop.css(q,1);o.leftBorder.css(s,d[l]+t);o.leftBorder.css(h,d[n]);o.leftBorder.css(j,1);o.leftBorder.css(q,d[q]);var u=d[q]/4;if(u>20){u=20}if(u<3){u=3}o.leftBar.css(s,d[l]+t-3);o.leftBar.css(h,d[n]+d[q]/2-u/2);o.leftBar.css(j,5);o.leftBar.css(q,u);o.rightBorder.css(s,d[l]+i);o.rightBorder.css(h,d[n]);o.rightBorder.css(j,1);o.rightBorder.css(q,d[q]);o.rightBar.css(s,d[l]+i-3);o.rightBar.css(h,d[n]+d[q]/2-u/2);o.rightBar.css(j,5);o.rightBar.css(q,u)},_resizeState:{},_onSliderMouseDown:function(e){var c=e.data.self;var d=c._sliders[e.data.groupIndex];if(!d){return}if(c._resizeState.state==undefined){c._testAndSetReadyResize(e)}if(c._resizeState.state!="ready"){return}c._resizeState.state="resizing"},_valueToOffset:function(o,m){var n=this.seriesGroups[o];var e=this._sliders[o];var d=e.host.jqxChart("getInstance");var p=d._renderData[0].xAxis;var i=p.data.axisStats;var l=i.min.valueOf();var c=i.max.valueOf();var j=c-l;if(j==0){j=1}var f=this._getXAxis(o);var h=n.orientation=="horizontal"?"height":"width";var k=(m.valueOf()-l)/j;return e.fullRect[h]*(f.flip?(1-k):k)},_offsetToValue:function(q,h){var e=this._sliders[q];var p=this.seriesGroups[q];var f=this._getXAxis(q);var i=p.orientation=="horizontal"?"height":"width";var k=e.fullRect[i];if(k==0){k=1}var l=h/k;var d=e.host.jqxChart("getInstance");var o=d._renderData[0].xAxis;var j=o.data.axisStats;var m=j.min.valueOf();var c=j.max.valueOf();var n=h/k*(c-m)+m;if(f.flip==true){n=c-h/k*(c-m)}if(this._isDate(j.min)||this._isDate(j.max)){n=new Date(n)}else{if(f.dataField==undefined){n=Math.round(n)}if(n<j.min){n=j.min}if(n>j.max){n=j.max}}return n},_onSliderMouseUp:function(q){var l=q.data.self;var h=q.data.groupIndex;var c=q.data.swapXY;var n=l._sliders[h];if(!n){return}if(l._resizeState.state!="resizing"){return}l._resizeState={};l.host.css("cursor","default");var i=!c?"left":"top";var d=!c?"width":"height";var p=!c?"x":"y";var o=n.element.coord()[i];var e=o+(!c?n.element.width():n.element.height());var j=l._offsetToValue(h,o-n.fullRect[p]);var s=l._offsetToValue(h,e-n.fullRect[p]);var k=n.host.jqxChart("getInstance");var m=k._renderData[0].xAxis;var u=m.data.axisStats;if(!u.isTimeUnit&&(s.valueOf()-j.valueOf())>86400000){j.setHours(0,0,0,0);s.setDate(s.getDate()+1);s.setHours(0,0,0,0)}var f=l._getXAxis(h);if(f.flip){var t=j;j=s;s=t}f.minValue=j;f.maxValue=s;l._isSelectorRefresh=true;var v=l.enableAnimations;l._raiseEvent("rangeSelectionChanging",{instance:l,minValue:j,maxValue:s});l.enableAnimations=false;l.update();l.enableAnimations=v;l._raiseEvent("rangeSelectionChanged",{instance:l,minValue:j,maxValue:s})},_onSliderMouseMove:function(w){var q=w.data.self;var A=w.data.renderTo;var k=w.data.groupIndex;var t=q._sliders[k];var e=w.data.swapXY;if(!t){return}var h=t.fullRect;var j=t.element;var B=a.jqx.position(w);var u=j.coord();var s=e?"left":"top";var o=!e?"left":"top";var i=e?"width":"height";var f=!e?"width":"height";var v=!e?"x":"y";if(q._resizeState.state=="resizing"){if(q._resizeState.side=="left"){var p=Math.round(B[o]-u[o]);var n=h[v];if(u[o]+p>=n&&u[o]+p<=n+h[f]){var l=parseInt(j.css(o));var d=Math.max(2,(e?j.height():j.width())-p);j.css(f,d);j.css(o,l+p)}}else{if(q._resizeState.side=="right"){var c=e?j.height():j.width();var p=Math.round(B[o]-u[o]-c);var n=h[v];if(u[o]+c+p>=n&&u[o]+p+c<=n+h[f]){var d=Math.max(2,c+p);j.css(f,d)}}else{if(q._resizeState.side=="move"){var c=e?j.height():j.width();var l=parseInt(j.css(o));var p=Math.round(B[o]-q._resizeState.startPos);if(u[o]+p>=h[v]&&u[o]+p+c<=h[v]+h[f]){q._resizeState.startPos=B[o];j.css(o,l+p)}}}}var z=parseInt(j.css(o))-t.rect[v];var m=z+(e?j.height():j.width());q._setSliderPositions(k,z,m)}else{q._testAndSetReadyResize(w)}},_testAndSetReadyResize:function(c){var t=c.data.self;var m=c.data.renderTo;var q=c.data.groupIndex;var d=t._sliders[q];var i=c.data.swapXY;var o=d.fullRect;var f=d.element;var h=a.jqx.position(c);var j=f.coord();var l=i?"left":"top";var s=!i?"left":"top";var k=i?"width":"height";var n=!i?"width":"height";var e=!i?"x":"y";var p=t._isTouchDevice?30:5;if(h[l]>=j[l]&&h[l]<=j[l]+o[k]){if(Math.abs(h[s]-j[s])<=p){m.css("cursor",i?"row-resize":"col-resize");t._resizeState={state:"ready",side:"left"}}else{if(Math.abs(h[s]-j[s]-(!i?f.width():f.height()))<=p){m.css("cursor",i?"row-resize":"col-resize");t._resizeState={state:"ready",side:"right"}}else{if(h[s]+p>j[s]&&h[s]-p<j[s]+(!i?f.width():f.height())){m.css("cursor","pointer");t._resizeState={state:"ready",side:"move",startPos:h[s]}}else{m.css("cursor","default");t._resizeState={}}}}}else{m.css("cursor","default");t._resizeState={}}},_selectorGetSize:function(c){if(c.rangeSelector.renderTo){return 0}return c.rangeSelector.size||this._paddedRect.height/3}})})(jqxBaseFramework);(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleWaterfall:true,_isSummary:function(e,c){var f=this.seriesGroups[e];for(var d=0;d<f.series.length;d++){if(undefined===f.series[d].summary){continue}summaryValue=this._getDataValue(c,f.series[d].summary,e);if(undefined!==summaryValue){return true}}return false},_applyWaterfall:function(C,D,l,h,E,m,G,f,s){var q=this.seriesGroups[l];if(C.length==0){return C}var w=h;var c={};var d=[];var e=undefined;var H=[];for(var A=0;A<q.series.length;A++){H.push(this._isSerieVisible(l,A))}var u={};for(var B=0;B<D;B++){var o=h;var p=0;var n=this._isSummary(l,B);for(var A=0;A<C.length;A++){if(!H[A]){continue}var F=0;if(n){F=o==h?E:0;C[A][B].value=c[A];C[A][B].summary=true;e=C[A][B].value<F;if(f){e=!e}var v=0;if(!isNaN(m)){v=this._getDataPointOffsetDiff(C[A][B].value+p,p==0?E:p,F||E,m,G,h,f)}else{v=this._getDataPointOffsetDiff(C[A][B].value,F,F,NaN,G,h,f)}C[A][B].to=o+(e?v:-v);C[A][B].from=o;if(s){p+=C[A][B].value;o=C[A][B].to}continue}var z=s?-1:A;if(isNaN(C[A][B].value)){continue}if(undefined===u[z]){F=E;u[z]=true}e=C[A][B].value<F;if(f){e=!e}var t=NaN,v=NaN;if(!s){t=B==0?h:C[A][d[A]].to}else{t=w}var v=0;if(!isNaN(m)){v=this._getDataPointOffsetDiff(C[A][B].value+(isNaN(c[z])?0:c[z]),isNaN(c[z])?E:c[z],F||E,m,G,t,f)}else{v=this._getDataPointOffsetDiff(C[A][B].value,F,F,NaN,G,h,f)}C[A][B].to=w=t+(e?v:-v);C[A][B].from=t;if(isNaN(c[z])){c[z]=C[A][B].value}else{c[z]+=C[A][B].value}if(z==-1){if(isNaN(c[A])){c[A]=C[A][B].value}else{c[A]+=C[A][B].value}}if(!s){d[A]=B}}}return C}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.rangeselector.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.rangeselector.js
new file mode 100644 (file)
index 0000000..047f252
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleRangeSelector:true,_renderXAxisRangeSelector:function(o,m){var q=this;q._isTouchDevice=a.jqx.mobile.isTouchDevice();var h=q.seriesGroups[o];var d=q._getXAxis(o);var k=d?d.rangeSelector:undefined;if(!q._isSelectorRefresh){var p=(k&&k.renderTo)?k.renderTo:q.host;p.find(".rangeSelector").remove()}if(!d||d.visible==false||h.type=="spider"){return false}if(!q._isGroupVisible(o)){return false}if(!k){return false}var f=h.orientation=="horizontal";if(k.renderTo){f=false}if(q.rtl){d.flip=true}var c=f?this.host.height():this.host.width();c-=4;var n=this._getXAxisStats(o,d,c);var j=d.position;if(k.renderTo&&k.position){j=k.position}if(!this._isSelectorRefresh){var l=k.renderTo;var b="<div class='rangeSelector jqx-disableselect' style='position: absolute; background-color: transparent;' onselectstart='return false;'></div>";var e=a(b).appendTo(l?l:this.renderer.getContainer());if(!l){var i=this.host.coord();i.top=0;i.left=0;selectorSize=this._selectorGetSize(d);if(!f){e.css("left",i.left+1);e.css("top",i.top+m.y+(j!="top"?m.height:-selectorSize));e.css("height",selectorSize);e.css("width",c)}else{e.css("left",i.left+1+m.x+(j!="right"?-selectorSize:m.width));e.css("top",i.top);e.css("height",c);e.css("width",selectorSize);m.height=selectorSize}}else{e.css({width:l.width(),height:l.height()});m.width=l.width();m.height=l.height()}this._refreshSelector(o,d,n,e,m,f)}this._isSelectorRefresh=false;return true},_refreshSelector:function(f,e,d,A,c,b){var g={};var u=e.rangeSelector;var k=this.seriesGroups[f];for(var w in u){g[w]=u[w]}delete g.padding;var r=g.minValue;var v=g.maxValue;if(undefined==r){r=Math.min(d.min.valueOf(),d.dsRange.min.valueOf())}if(undefined==v){v=Math.max(d.max.valueOf(),d.dsRange.max.valueOf())}if(this._isDate(d.min)){r=new Date(r)}if(this._isDate(d.max)){v=new Date(v)}var l=e.position;if(u.renderTo&&u.position){l=u.position}g.dataField=e.dataField;delete g.rangeSelector;g.type=e.type;g.baseUnit=u.baseUnit||e.baseUnit;g.minValue=r;g.maxValue=v;g.flip=e.flip;g.position=l;var h=5;var q=2,z=2,y=2,C=2;if(!u.renderTo){q=b?0:c.x;z=b?0:this._rect.width-c.x-c.width;y=b?c.y:h;C=b?this._paddedRect.height-this._plotRect.height:h}var n=u.padding;if(n==undefined&&!u.renderTo){n={left:q,top:y,right:z,bottom:C}}else{n={left:((n&&n.left)?n.left:q),top:((n&&n.top)?n.top:y),right:((n&&n.right)?n.right:z),bottom:((n&&n.bottom)?n.bottom:C)}}var t=e.rangeSelector.dataField;for(var w=0;undefined==t&&w<this.seriesGroups.length;w++){for(var s=0;undefined==t&&s<this.seriesGroups[w].series.length;s++){t=this.seriesGroups[w].series[s].dataField}}var m={padding:n,_isRangeSelectorInstance:true,title:u.title||"",description:u.description||"",titlePadding:u.titlePadding,colorScheme:u.colorScheme||this.colorScheme,backgroundColor:u.backgroundColor||this.backgroundColor||"transparent",backgroundImage:u.backgroundImage||"",showBorderLine:u.showBorderLine||(u.renderTo?true:false),borderLineWidth:u.borderLineWidth||this.borderLineWidth,borderLineColor:u.borderLineColor||this.borderLineColor,rtl:u.rtl||this.rtl,greyScale:u.greyScale||this.greyScale,renderEngine:this.renderEngine,showLegend:false,enableAnimations:false,enableEvents:false,showToolTips:false,source:this.source,xAxis:g,seriesGroups:[{orientation:b?"horizontal":"vertical",valueAxis:{visible:false},type:e.rangeSelector.serieType||"area",skipOverlappingPoints:a.jqx.getByPriority([e.rangeSelector.skipOverlappingPoints,true]),columnSeriesOverlap:a.jqx.getByPriority([e.rangeSelector.columnSeriesOverlap,false]),columnsGapPercent:a.jqx.getByPriority([e.rangeSelector.columnsGapPercent,25]),seriesGapPercent:a.jqx.getByPriority([e.rangeSelector.seriesGapPercent,25]),series:[{dataField:t,opacity:0.8,lineWidth:1}]}]};if(!m.showBorderLine){m.borderLineWidth=1;m.borderLineColor=a.jqx.getByPriority([this.backgroundColor,this.background,"#FFFFFF"]);m.showBorderLine=true}var o=this;o._supressBindingRefresh=true;A.empty();A.jqxChart(m);o._rangeSelectorInstances[f]=A;o._supressBindingRefresh=false;A.on(o._getEvent("mousemove"),function(){o._unselect();o._hideToolTip()});var x=A.jqxChart("getInstance");if(!x._plotRect){return}var B=x._paddedRect;B.height=x._plotRect.height;if(!b&&l=="top"){B.y+=x._renderData[0].xAxis.rect.height}else{if(b){var p=x._renderData[0].xAxis.rect.width;B.width-=p;if(l!="right"){B.x+=p}}}o._createSliderElements(f,A,B,u);this.addHandler(a(document),o._getEvent("mousemove")+"."+this.element.id,o._onSliderMouseMove,{self:this,groupIndex:f,renderTo:A,swapXY:b});this.addHandler(a(A),o._getEvent("mousedown"),this._onSliderMouseDown,{self:this,groupIndex:f,renderTo:A,swapXY:b});this.addHandler(a(document),o._getEvent("mouseup")+"."+this.element.id,o._onSliderMouseUp,{element:this.element.id,self:this,groupIndex:f,renderTo:A,swapXY:b})},_createSliderElements:function(r,l,m,n){l.find(".slider").remove();var q=n.colorSelectedRange||"blue";var g=n.colorUnselectedRange||"white";var b=a("<div class='slider' style='position: relative;'></div>");b.css({background:q,opacity:0.1,left:m.x,top:m.y,width:m.width,height:m.height});b.appendTo(l);while(this._sliders.length<r+1){this._sliders.push({})}var j="<div class='slider' style='position: absolute;  background: "+g+"; opacity: 0.5;'></div>";var c="<div class='slider' style='position: absolute; background: grey; opacity: 0.5;'></div>";var h="<div class='slider jqx-rc-all' style='position: absolute; background: white; border-style: solid; border-width: 1px; border-color: grey;'></div>";this._sliders[r]={element:b,host:l,_sliderInitialAbsoluteRect:{x:b.coord().left,y:b.coord().top,width:m.width,height:m.height},_hostInitialAbsolutePos:{x:l.coord().left,y:l.coord().top},getRect:function(){return{x:this.host.coord().left-this._hostInitialAbsolutePos.x+this._sliderInitialAbsoluteRect.x,y:this.host.coord().top-this._hostInitialAbsolutePos.y+this._sliderInitialAbsoluteRect.y,width:this._sliderInitialAbsoluteRect.width,height:this._sliderInitialAbsoluteRect.height}},rect:m,left:a(j),right:a(j),leftTop:a(c),rightTop:a(c),leftBorder:a(c),leftBar:a(h),rightBorder:a(c),rightBar:a(h)};this._sliders[r].left.appendTo(l);this._sliders[r].right.appendTo(l);this._sliders[r].leftTop.appendTo(l);this._sliders[r].rightTop.appendTo(l);this._sliders[r].leftBorder.appendTo(l);this._sliders[r].rightBorder.appendTo(l);this._sliders[r].leftBar.appendTo(l);this._sliders[r].rightBar.appendTo(l);var p=this._renderData[r].xAxis;var e=p.data.axisStats;var o=e.min.valueOf();var f=e.max.valueOf();var i=this._valueToOffset(r,o);var k=this._valueToOffset(r,f);if(i>k){var d=k;k=i;i=d}if(this.seriesGroups[r].orientation!="horizontal"){b.css({left:Math.round(m.x+i),top:m.y,width:Math.round(k-i),height:m.height})}else{b.css({top:Math.round(m.y+i),left:m.x,height:Math.round(k-i),width:m.width})}this._setSliderPositions(r,i,k)},_setSliderPositions:function(e,r,h){var t=this.seriesGroups[e];var d=this._getXAxis(e);var o=d.rangeSelector;var b=t.orientation=="horizontal";if(d.rangeSelector.renderTo){b=false}var j=d.position;if(o.renderTo&&o.position){j=o.position}var l=(b&&j=="right")||(!b&&j=="top");var n=this._sliders[e];var q=b?"top":"left";var f=b?"left":"top";var i=b?"height":"width";var p=b?"width":"height";var k=b?"y":"x";var m=b?"x":"y";var c=n.rect;n.left.css(q,c[k]);n.left.css(f,c[m]);n.left.css(i,r);n.left.css(p,c[p]);n.right.css(q,c[k]+h);n.right.css(f,c[m]);n.right.css(i,c[i]-h+1);n.right.css(p,c[p]);n.leftTop.css(q,c[k]);n.leftTop.css(f,c[m]+(((b&&j=="right")||(!b&&j!="top"))?0:c[p]));n.leftTop.css(i,r);n.leftTop.css(p,1);n.rightTop.css(q,c[k]+h);n.rightTop.css(f,c[m]+(((b&&j=="right")||(!b&&j!="top"))?0:c[p]));n.rightTop.css(i,c[i]-h+1);n.rightTop.css(p,1);n.leftBorder.css(q,c[k]+r);n.leftBorder.css(f,c[m]);n.leftBorder.css(i,1);n.leftBorder.css(p,c[p]);var s=c[p]/4;if(s>20){s=20}if(s<3){s=3}n.leftBar.css(q,c[k]+r-3);n.leftBar.css(f,c[m]+c[p]/2-s/2);n.leftBar.css(i,5);n.leftBar.css(p,s);n.rightBorder.css(q,c[k]+h);n.rightBorder.css(f,c[m]);n.rightBorder.css(i,1);n.rightBorder.css(p,c[p]);n.rightBar.css(q,c[k]+h-3);n.rightBar.css(f,c[m]+c[p]/2-s/2);n.rightBar.css(i,5);n.rightBar.css(p,s)},_resizeState:{},_onSliderMouseDown:function(d){d.stopImmediatePropagation();d.stopPropagation();var b=d.data.self;var c=b._sliders[d.data.groupIndex];if(!c){return}if(b._resizeState.state==undefined){b._testAndSetReadyResize(d)}if(b._resizeState.state!="ready"){return}a.jqx._rangeSelectorTarget=b;b._resizeState.state="resizing"},_valueToOffset:function(m,k){var l=this.seriesGroups[m];var d=this._sliders[m];var c=d.host.jqxChart("getInstance");var n=c._renderData[0].xAxis;var g=n.data.axisStats;var j=g.min.valueOf();var b=g.max.valueOf();var h=b-j;if(h==0){h=1}var e=this._getXAxis(m);var f=l.orientation=="horizontal"?"height":"width";var i=(k.valueOf()-j)/h;return d.getRect()[f]*(e.flip?(1-i):i)},_offsetToValue:function(o,f){var d=this._sliders[o];var n=this.seriesGroups[o];var e=this._getXAxis(o);var g=n.orientation=="horizontal"?"height":"width";var i=d.getRect()[g];if(i==0){i=1}var j=f/i;var c=d.host.jqxChart("getInstance");var m=c._renderData[0].xAxis;var h=m.data.axisStats;var k=h.min.valueOf();var b=h.max.valueOf();var l=f/i*(b-k)+k;if(e.flip==true){l=b-f/i*(b-k)}if(this._isDate(h.min)||this._isDate(h.max)){l=new Date(l)}else{if(e.dataField==undefined||h.useIndeces){l=Math.round(l)}if(l<h.min){l=h.min}if(l>h.max){l=h.max}}return l},_onSliderMouseUp:function(p){var k=a.jqx._rangeSelectorTarget;if(!k){return}var g=p.data.groupIndex;var b=p.data.swapXY;var m=k._sliders[g];if(!m){return}if(k._resizeState.state!="resizing"){return}p.stopImmediatePropagation();p.stopPropagation();k._resizeState={};k.host.css("cursor","default");var h=!b?"left":"top";var c=!b?"width":"height";var o=!b?"x":"y";var n=m.element.coord()[h];var e=n+(!b?m.element.width():m.element.height());var d=m.getRect();var i=k._offsetToValue(g,n-d[o]);var q=k._offsetToValue(g,e-d[o]);var j=m.host.jqxChart("getInstance");var l=j._renderData[0].xAxis;var s=l.data.axisStats;if(!s.isTimeUnit&&(q.valueOf()-i.valueOf())>86400000){i.setHours(0,0,0,0);q.setDate(q.getDate()+1);q.setHours(0,0,0,0)}var f=k._getXAxis(g);if(f.flip){var r=i;i=q;q=r}k._selectorRange[g]={min:i,max:q};k._isSelectorRefresh=true;var t=k.enableAnimations;k._raiseEvent("rangeSelectionChanging",{instance:k,minValue:i,maxValue:q});k.enableAnimations=false;k.update();k.enableAnimations=t;k._raiseEvent("rangeSelectionChanged",{instance:k,minValue:i,maxValue:q})},_onSliderMouseMove:function(t){var o=t.data.self;var v=t.data.renderTo;var i=t.data.groupIndex;var q=o._sliders[i];var d=t.data.swapXY;if(!q){return}var f=q.getRect();var h=q.element;var w=a.jqx.position(t);var r=h.coord();var p=d?"left":"top";var m=!d?"left":"top";var g=d?"width":"height";var e=!d?"width":"height";var s=!d?"x":"y";if(o._resizeState.state=="resizing"){t.stopImmediatePropagation();t.stopPropagation();if(o._resizeState.side=="left"){var n=Math.round(w[m]-r[m]);var l=f[s];if(r[m]+n>=l&&r[m]+n<=l+f[e]){var j=parseInt(h.css(m));var c=Math.max(2,(d?h.height():h.width())-n);h.css(e,c);h.css(m,j+n)}}else{if(o._resizeState.side=="right"){var b=d?h.height():h.width();var n=Math.round(w[m]-r[m]-b);var l=f[s];if(r[m]+b+n>=l&&r[m]+n+b<=l+f[e]){var c=Math.max(2,b+n);h.css(e,c)}}else{if(o._resizeState.side=="move"){var b=d?h.height():h.width();var j=parseInt(h.css(m));var n=Math.round(w[m]-o._resizeState.startPos);if(r[m]+n>=f[s]&&r[m]+n+b<=f[s]+f[e]){o._resizeState.startPos=w[m];h.css(m,j+n)}}}}var u=parseInt(h.css(m))-q.rect[s];var k=u+(d?h.height():h.width());o._setSliderPositions(i,u,k)}else{o._testAndSetReadyResize(t)}},_testAndSetReadyResize:function(b){var q=b.data.self;var k=b.data.renderTo;var o=b.data.groupIndex;var c=q._sliders[o];var g=b.data.swapXY;var m=c.getRect();var e=c.element;var f=a.jqx.position(b);var h=e.coord();var j=g?"left":"top";var p=!g?"left":"top";var i=g?"width":"height";var l=!g?"width":"height";var d=!g?"x":"y";var n=q._isTouchDevice?30:5;if(f[j]>=h[j]&&f[j]<=h[j]+m[i]){if(Math.abs(f[p]-h[p])<=n){k.css("cursor",g?"row-resize":"col-resize");q._resizeState={state:"ready",side:"left"}}else{if(Math.abs(f[p]-h[p]-(!g?e.width():e.height()))<=n){k.css("cursor",g?"row-resize":"col-resize");q._resizeState={state:"ready",side:"right"}}else{if(f[p]+n>h[p]&&f[p]-n<h[p]+(!g?e.width():e.height())){k.css("cursor","pointer");q._resizeState={state:"ready",side:"move",startPos:f[p]}}else{k.css("cursor","default");q._resizeState={}}}}}else{k.css("cursor","default");q._resizeState={}}},_selectorGetSize:function(b){if(b.rangeSelector.renderTo){return 0}return b.rangeSelector.size||this._paddedRect.height/3}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.waterfall.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxchart.waterfall.js
new file mode 100644 (file)
index 0000000..9a3a733
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxChart.prototype,{_moduleWaterfall:true,_isSummary:function(d,b){var e=this.seriesGroups[d];for(var c=0;c<e.series.length;c++){if(undefined===e.series[c].summary){continue}summaryValue=this._getDataValue(b,e.series[c].summary,d);if(undefined!==summaryValue){return true}}return false},_applyWaterfall:function(x,z,g,f,A,h,C,e,p){var o=this.seriesGroups[g];if(x.length==0){return x}var t=f;var b={};var c=[];var d=undefined;var D=[];for(var v=0;v<o.series.length;v++){D.push(this._isSerieVisible(g,v))}var r={};for(var w=0;w<z;w++){var m=f;var n=0;var l=this._isSummary(g,w);for(var v=0;v<x.length;v++){if(!D[v]){continue}var B=0;if(l){B=m==f?A:0;x[v][w].value=b[v];x[v][w].summary=true;d=x[v][w].value<B;if(e){d=!d}var s=0;if(!isNaN(h)){s=this._getDataPointOffsetDiff(x[v][w].value+n,n==0?A:n,B||A,h,C,f,e)}else{s=this._getDataPointOffsetDiff(x[v][w].value,B,B,NaN,C,f,e)}x[v][w].to=m+(d?s:-s);x[v][w].from=m;if(p){n+=x[v][w].value;m=x[v][w].to}continue}var u=p?-1:v;if(isNaN(x[v][w].value)){continue}if(undefined===r[u]){B=A;r[u]=true}d=x[v][w].value<B;if(e){d=!d}var q=NaN,s=NaN;if(!p){q=w==0?f:x[v][c[v]].to}else{q=t}var s=0;if(!isNaN(h)){s=this._getDataPointOffsetDiff(x[v][w].value+(isNaN(b[u])?0:b[u]),isNaN(b[u])?A:b[u],B||A,h,C,q,e)}else{s=this._getDataPointOffsetDiff(x[v][w].value,B,B,NaN,C,f,e)}x[v][w].to=t=q+(d?s:-s);x[v][w].from=q;if(isNaN(b[u])){b[u]=x[v][w].value}else{b[u]+=x[v][w].value}if(u==-1){if(isNaN(b[v])){b[v]=x[v][w].value}else{b[v]+=x[v][w].value}}if(!p){c[v]=w}}}return x}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxcheckbox.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxcheckbox.js
new file mode 100644 (file)
index 0000000..03da666
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxCheckBox","",{});a.extend(a.jqx._jqxCheckBox.prototype,{defineInstance:function(){var b={animationShowDelay:300,animationHideDelay:300,width:null,height:null,boxSize:"13px",checked:false,hasThreeStates:false,disabled:false,enableContainerClick:true,locked:false,groupName:"",keyboardCheck:true,enableHover:true,hasInput:true,rtl:false,updated:null,disabledContainer:false,_canFocus:true,aria:{"aria-checked":{name:"checked",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}},events:["checked","unchecked","indeterminate","change"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},_addInput:function(){if(this.hasInput){if(this.input){this.input.remove()}var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}this.input.val(this.checked);this.host.attr("role","checkbox");a.jqx.aria(this)}},render:function(){this.init=true;var d=this;this.setSize();this.propertyChangeMap.width=function(h,j,i,k){d.setSize()};this.propertyChangeMap.height=function(h,j,i,k){d.setSize()};this._removeHandlers();if(this.checkbox){this.checkbox.remove();this.checkbox=null}if(this.checkMark){this.checkMark.remove();this.checkMark=null}if(this.box){this.box.remove();this.box=null}if(this.clear){this.clear.remove();this.clear=null}if(this.boxSize==null){this.boxSize=13}var g=parseInt(this.boxSize)+"px";var f="13px";var e=Math.floor((parseInt(this.boxSize)-13)/2);var b=e;e+="px";b+="px";if(this.boxSize!="13px"){this.checkbox=a('<div><div style="width: '+g+"; height: "+g+';"><span style="position: relative; left: '+e+"; top: "+b+"; width: "+f+"; height: "+f+';"></span></div></div>')}else{this.checkbox=a('<div><div style="width: '+g+"; height: "+g+';"><span style="width: '+g+"; height: "+g+';"></span></div></div>')}this.host.prepend(this.checkbox);if(!this.disabledContainer){if(!this.host.attr("tabIndex")){this.host.attr("tabIndex",0)}this.clear=a('<div style="clear: both;"></div>');this.host.append(this.clear)}this.checkMark=a(this.checkbox[0].firstChild.firstChild);this.box=this.checkbox;this.box.addClass(this.toThemeProperty("jqx-checkbox-default")+" "+this.toThemeProperty("jqx-fill-state-normal")+" "+this.toThemeProperty("jqx-rc-all"));if(this.disabled){this.disable()}if(!this.disabledContainer){this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-checkbox"))}if(this.locked&&!this.disabledContainer){this.host.css("cursor","auto")}var c=this.element.getAttribute("checked");if(c=="checked"||c=="true"||c==true){this.checked=true}this._addInput();this._render();this._addHandlers();this.init=false},refresh:function(b){if(!b){this.setSize();this._render()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}},_addHandlers:function(){var d=this;var c=a.jqx.mobile.isTouchDevice();var b="mousedown";if(c){b=a.jqx.mobile.getTouchEventName("touchend")}this.addHandler(this.box,b,function(e){if(!d.disabled&&!d.enableContainerClick&&!d.locked){d.toggle();if(d.updated){e.owner=d;d.updated(e,d.checked,d.oldChecked)}if(e.preventDefault){e.preventDefault()}return false}});if(!this.disabledContainer){this.addHandler(this.host,"keydown",function(e){if(!d.disabled&&!d.locked&&d.keyboardCheck){if(e.keyCode==32){if(!d._canFocus){return true}d.toggle();if(d.updated){e.owner=d;d.updated(e,d.checked,d.oldChecked)}if(e.preventDefault){e.preventDefault()}return false}}});this.addHandler(this.host,b,function(e){if(!d.disabled&&d.enableContainerClick&&!d.locked){d.toggle();if(e.preventDefault){e.preventDefault()}if(d._canFocus){d.focus()}return false}});this.addHandler(this.host,"selectstart",function(e){if(!d.disabled&&d.enableContainerClick){if(e.preventDefault){e.preventDefault()}return false}});this.addHandler(this.host,"mouseup",function(e){if(!d.disabled&&d.enableContainerClick){if(e.preventDefault){e.preventDefault()}}});this.addHandler(this.host,"focus",function(e){if(!d.disabled&&!d.locked){if(!d._canFocus){return true}if(d.enableHover){d.box.addClass(d.toThemeProperty("jqx-checkbox-hover"))}d.box.addClass(d.toThemeProperty("jqx-fill-state-focus"));if(e.preventDefault){e.preventDefault()}d.hovered=true;return false}});this.addHandler(this.host,"blur",function(e){if(!d.disabled&&!d.locked){if(!d._canFocus){return true}if(d.enableHover){d.box.removeClass(d.toThemeProperty("jqx-checkbox-hover"))}d.box.removeClass(d.toThemeProperty("jqx-fill-state-focus"));if(e.preventDefault){e.preventDefault()}d.hovered=false;return false}});this.addHandler(this.host,"mouseenter",function(e){if(d.locked){d.host.css("cursor","arrow")}if(d.enableHover){if(!d.disabled&&d.enableContainerClick&&!d.locked){d.box.addClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.addClass(d.toThemeProperty("jqx-fill-state-hover"));if(e.preventDefault){e.preventDefault()}d.hovered=true;return false}}});this.addHandler(this.host,"mouseleave",function(e){if(d.enableHover){if(!d.disabled&&d.enableContainerClick&&!d.locked){d.box.removeClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.removeClass(d.toThemeProperty("jqx-fill-state-hover"));if(e.preventDefault){e.preventDefault()}d.hovered=false;return false}}});this.addHandler(this.box,"mouseenter",function(){if(d.locked){return}if(!d.disabled&&!d.enableContainerClick){d.box.addClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.box,"mouseleave",function(){if(!d.disabled&&!d.enableContainerClick){d.box.removeClass(d.toThemeProperty("jqx-checkbox-hover"));d.box.removeClass(d.toThemeProperty("jqx-fill-state-hover"))}})}},focus:function(){try{this.host.focus()}catch(b){}},_removeHandlers:function(){var c=a.jqx.mobile.isTouchDevice();var b="mousedown";if(c){b="touchend"}if(this.box){this.removeHandler(this.box,b);this.removeHandler(this.box,"mouseenter");this.removeHandler(this.box,"mouseleave")}this.removeHandler(this.host,b);this.removeHandler(this.host,"mouseup");this.removeHandler(this.host,"selectstart");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"blur");this.removeHandler(this.host,"focus")},_render:function(){if(!this.disabled){if(this.enableContainerClick){this.host.css("cursor","pointer")}else{if(!this.init){this.host.css("cursor","auto")}}}else{this.disable()}if(this.rtl){this.box.addClass(this.toThemeProperty("jqx-checkbox-rtl"));this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.updateStates()},_setState:function(c,b){if(this.checked!=c){this.checked=c;if(this.checked){this.checkMark[0].className=this.toThemeProperty("jqx-checkbox-check-checked")}else{if(this.checked==null){this.checkMark[0].className=this.toThemeProperty("jqx-checkbox-check-indeterminate")}else{this.checkMark[0].className=""}}}if(b===false||b===true){this.locked=b}},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object")){return this.checked}if(typeof b=="string"){if(b=="true"){this.check()}if(b=="false"){this.uncheck()}if(b==""){this.indeterminate()}}else{if(b==true){this.check()}if(b==false){this.uncheck()}if(b==null){this.indeterminate()}}return this.checked},check:function(){this.checked=true;var b=this;this.checkMark.removeClass();if(a.jqx.browser.msie||this.animationShowDelay==0){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-checked"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-checked"));this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}if(this.groupName!=null&&this.groupName.length>0){var c=a.find(this.toThemeProperty(".jqx-checkbox",true));a.each(c,function(){var d=a(this).jqxCheckBox("groupName");if(d==b.groupName&&this!=b.element){a(this).jqxCheckBox("uncheck")}})}this._raiseEvent("0",true);this._raiseEvent("3",{checked:true});if(this.input!=undefined){this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)}},uncheck:function(){this.checked=false;var b=this;if(a.jqx.browser.msie||this.animationHideDelay==0){if(b.checkMark[0].className!=""){b.checkMark[0].className=""}}else{this.checkMark.css("opacity",1);this.checkMark.stop().animate({opacity:0},this.animationHideDelay,function(){if(b.checkMark[0].className!=""){b.checkMark[0].className=""}})}this._raiseEvent("1");this._raiseEvent("3",{checked:false});if(this.input!=undefined){this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)}},indeterminate:function(){this.checked=null;this.checkMark.removeClass();if(a.jqx.browser.msie||this.animationShowDelay==0){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-indeterminate"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-indeterminate"));this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}this._raiseEvent("2");this._raiseEvent("3",{checked:null});if(this.input!=undefined){this.input.val(this.checked);a.jqx.aria(this,"aria-checked","undefined")}},toggle:function(){if(this.disabled){return}if(this.locked){return}if(this.groupName!=null&&this.groupName.length>0){if(this.checked!=true){this.checked=true;this.updateStates()}return}this.oldChecked=this.checked;if(this.checked==true){this.checked=this.hasThreeStates?null:false}else{this.checked=this.checked!=null}this.updateStates();if(this.input!=undefined){this.input.val(this.checked)}},updateStates:function(){if(this.checked){this.check()}else{if(this.checked==false){this.uncheck()}else{if(this.checked==null){this.indeterminate()}}}},disable:function(){this.disabled=true;if(this.checked==true){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-disabled"))}else{if(this.checked==null){this.checkMark.addClass(this.toThemeProperty("jqx-checkbox-check-indeterminate-disabled"))}}this.box.addClass(this.toThemeProperty("jqx-checkbox-disabled-box"));this.host.addClass(this.toThemeProperty("jqx-checkbox-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.box.addClass(this.toThemeProperty("jqx-checkbox-disabled"));a.jqx.aria(this,"aria-disabled",this.disabled)},enable:function(){if(this.checked==true){this.checkMark.removeClass(this.toThemeProperty("jqx-checkbox-check-disabled"))}else{if(this.checked==null){this.checkMark.removeClass(this.toThemeProperty("jqx-checkbox-check-indeterminate-disabled"))}}this.box.removeClass(this.toThemeProperty("jqx-checkbox-disabled-box"));this.host.removeClass(this.toThemeProperty("jqx-checkbox-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.box.removeClass(this.toThemeProperty("jqx-checkbox-disabled"));this.disabled=false;a.jqx.aria(this,"aria-disabled",this.disabled)},destroy:function(){this.host.remove()},_raiseEvent:function(g,e){if(this.init){return}var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(c=="enableContainerClick"&&!b.disabled&&!b.locked){if(d){b.host.css("cursor","pointer")}else{b.host.css("cursor","auto")}}if(c=="rtl"){if(d){b.box.addClass(b.toThemeProperty("jqx-checkbox-rtl"));b.host.addClass(b.toThemeProperty("jqx-rtl"))}else{b.box.removeClass(b.toThemeProperty("jqx-checkbox-rtl"));b.host.removeClass(b.toThemeProperty("jqx-rtl"))}}if(c=="boxSize"){b.render()}if(c=="theme"){a.jqx.utilities.setTheme(e,d,b.host)}if(c=="checked"){if(d!=e){switch(d){case true:b.check();break;case false:b.uncheck();break;case null:b.indeterminate();break}}}if(c=="disabled"){if(d!=e){if(d){b.disable()}else{b.enable()}}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxcolorpicker.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxcolorpicker.js
new file mode 100644 (file)
index 0000000..9db89df
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxColorPicker","",{});a.extend(a.jqx._jqxColorPicker.prototype,{defineInstance:function(){var b={disabled:false,height:null,width:null,color:new a.jqx.color({hex:"ff0000"}),redString:"R:",greenString:"G:",blueString:"B:",showTransparent:false,colorMode:"saturation",_delayLoading:false,events:["colorchange"]};a.extend(true,this,b);return b},createInstance:function(c){this.render();var b=this;a.jqx.utilities.resize(this.host,function(){b._setSize();b.refresh()},false,!this._delayLoading)},render:function(){this.element.innerHTML="";var b=this;this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(typeof this.color=="string"){this.color=new a.jqx.color({hex:this.color})}this._setSize();this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-color-picker"));this.container=a("<div style='width: 100%; height: 100%; position: relative;'></div>");this.container.appendTo(this.host);this.colorMap=a("<div style='left: 0; top: 0; position: absolute;'></div>");this.colorMap.appendTo(this.container);this.colorBar=a("<div style='left: 0; top: 0; position: absolute;'></div>");this.colorBar.appendTo(this.container);this.colorPanel=a("<div style='left: 0; top: 0; position: absolute;'></div>");this.colorPanel.appendTo(this.container);this.hexPanel=a("<div style='float: left;'></div>");this.hexPanel.appendTo(this.colorPanel);this.hexPanel.append('<span style="text-align: left;" >#</span>');this.hex=a("<input maxlength='6' style='height: 18px;'/>");this.hex.addClass(this.toThemeProperty("jqx-input"));this.hex.addClass(this.toThemeProperty("jqx-widget-content"));this.hex.appendTo(this.hexPanel);this.colorPanel.append('<div style="font-size: 1px; clear: both;"></div>');this.rgb=a("<div style='margin-top: 2px;'></div>");this.rgb.appendTo(this.colorPanel);this.red=a("<input style='width: 25px; height: 18px;' maxlength='3'/>");this.red.addClass(this.toThemeProperty("jqx-input"));this.red.addClass(this.toThemeProperty("jqx-widget-content"));this.rgb.append('<span style="text-align: left;">'+this.redString+"</span>");this.red.appendTo(this.rgb);this.green=a("<input style='margin-right: 2px; height: 18px; width: 25px;' maxlength='3'/>");this.green.addClass(this.toThemeProperty("jqx-input"));this.green.addClass(this.toThemeProperty("jqx-widget-content"));this.rgb.append('<span style="text-align: left;">'+this.greenString+"</span>");this.green.appendTo(this.rgb);this.colorPanel.addClass(this.toThemeProperty("jqx-color-picker-map-overlay"));this._mapImageOverlayURL=this._getImageUrl(this.colorPanel);this.colorPanel.removeClass(this.toThemeProperty("jqx-color-picker-map-overlay"));this.blue=a("<input style='height: 18px; width: 25px;' maxlength='3'/>");this.blue.addClass(this.toThemeProperty("jqx-input"));this.blue.addClass(this.toThemeProperty("jqx-widget-content"));this.rgb.append('<span style="text-align: left;">'+this.blueString+"</span>");this.blue.appendTo(this.rgb);this.preview=a("<div style='background: red; position: absolute;'></div>");this.preview.addClass(this.toThemeProperty("jqx-widget-content"));this.preview.appendTo(this.colorPanel);this.colorBarPointer=a("<div style='top: 0; left: 0; position: absolute; width: 100%;'></div>");this.colorBarPointer.addClass(this.toThemeProperty("jqx-color-picker-bar-pointer"));this.colorMapPointer=a("<div style='top: 0; left: 0; position: absolute; width: 100%;'></div>");this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer"));this.transparent=a("<div style='text-align: center; clear: both;'><a style='text-align: center;' href='#'>transparent</a></div>");if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.element.disabled=true}this._addHandlers()},val:function(b){if(arguments.length==0){return"#"+this.color.hex}this.setColor(b);return this.color.hex},_setPositionFromValue:function(){var d=this;var c=d.color.h;var i=100-d.color.v;var b=d.colorMap.height();var e=d.colorMap.width();var h=c*e/360;var g=i*b/100;if(this.colorMode=="saturation"){var f=100-d.color.s;f=f*b/100;d._saturation=100-d.color.s;d.colorMapPointer.css("margin-left",h-8);d.colorMapPointer.css("margin-top",g-8);d.colorBarPointer.css("margin-top",f-8);d.colorMapImageOverlay.css("opacity",(100-d.color.s)/100)}else{var c=d.color.s;var h=c*e/100;var g=i*b/100;var f=360-d.color.h;f=f*b/360;d._hue=d.color.h;d.colorMapPointer.css("margin-left",h-8);d.colorMapPointer.css("margin-top",g-8);d.colorBarPointer.css("margin-top",f-8)}},updateRGB:function(){var b=this;b.color.setRgb(b.red.val(),b.green.val(),b.blue.val());b._updateUI();b._raiseEvent("0",{color:b.color});b.color.transparent=false},_setPosition:function(f,c,h){var e=parseInt(f.pageX);var g=parseInt(c.offset().left);var b=parseInt(f.pageY);var d=parseInt(c.offset().top);if(this._isTouchDevice){var i=a.jqx.position(f);e=i.left;b=i.top}if(h[0].className.indexOf("jqx-color-picker-bar")==-1){h.css("margin-left",e-8-g)}if(b>=d&&b<=d+c.height()){h.css("margin-top",b-8-d)}},_handleKeyInput:function(c,d,b){if(c.disabled){return}if(!c._validateKey(d)){return d}b.val(c._setValueInRange(b.val(),0,255));this.updateRGB();this._setPositionFromValue()},_addHandlers:function(){var d=this;this.addHandler(this.colorMapPointer,"dragStart",function(j){j.preventDefault();return false});this.addHandler(this.colorBarPointer,"dragStart",function(j){j.preventDefault();return false});this.addHandler(this.transparent,"click",function(j){d._raiseEvent("0",{color:"transparent"});j.preventDefault();d.color.transparent=true});this.addHandler(this.host,"selectionstart",function(j){j.preventDefault();return false});this.addHandler(this.blue,"keyup blur",function(j){d._handleKeyInput(d,j,d.blue)});this.addHandler(this.green,"keyup blur",function(j){d._handleKeyInput(d,j,d.green)});this.addHandler(this.red,"keyup blur",function(j){d._handleKeyInput(d,j,d.red)});this.addHandler(this.hex,"keyup blur",function(j){if(d.disabled){return}if(!d._validateKey(j)){return j}if(d.hex.val().toString().length==6){d.hex.val(d.color.validateHex(d.hex.val()));d.color.setHex(d.hex.val());d._updateUI();d._setPositionFromValue();d._raiseEvent("0",{color:d.color})}});this.addHandler(this.colorMap,"dragstart",function(j){j.preventDefault();return false});var f=function(k){d._setPosition(k,d.colorMap,d.colorMapPointer);if(d.colorMode=="saturation"){var j=d._valuesFromMouse(k,d.colorMap,360,100);if(j.x>360){j.x=360}d.color.setHsv(j.x,d._saturation!=null?100-d._saturation:100,100-j.y)}else{var j=d._valuesFromMouse(k,d.colorMap,100,100);if(j.x>100){j.x=100}d.color.setHsv(d._hue!=null?d._hue:360,j.x,100-j.y)}d._updateUI();d._raiseEvent("0",{color:d.color});d.color.transparent=false};var c="mousedown.picker"+this.element.id;if(this._isTouchDevice){c=a.jqx.mobile.getTouchEventName("touchstart")+".picker"+this.element.id}this.addHandler(this.colorMap,c,function(j){if(d.disabled){return}d.beginDrag=true;f(j)});var b="mousemove.picker"+this.element.id;if(this._isTouchDevice){b=a.jqx.mobile.getTouchEventName("touchmove")+".picker"+this.element.id}this.addHandler(a(document),b,function(j){if(d.disabled){return}if(d.beginDrag==true){f(j);if(d._isTouchDevice){j.preventDefault()}}});if(!this._isTouchDevice){this.addHandler(this.colorBar,"dragstart",function(j){j.preventDefault();return false})}var e=function(k){d._setPosition(k,d.colorBar,d.colorBarPointer);if(d.colorMode=="saturation"){var j=d._valuesFromMouse(k,d.colorBar,100,100);d.color.s=j.y;d._saturation=j.y;d.colorMapImageOverlay.css("opacity",(d.color.s)/100);d.color.setHsv(d.color.h,100-d.color.s,d.color.v)}else{var j=d._valuesFromMouse(k,d.colorBar,100,360);d.color.h=360-j.y;d._hue=d.color.h;d.color.setHsv(d.color.h,d.color.s,d.color.v)}d._updateUI();d._raiseEvent("0",{color:d.color});d.color.transparent=false};var h="mousemove.colorBar"+this.element.id;var g="mousedown.colorBar"+this.element.id;var i="mouseup.colorBar"+this.element.id;if(this._isTouchDevice){h=a.jqx.mobile.getTouchEventName("touchmove")+".colorBar"+this.element.id;g=a.jqx.mobile.getTouchEventName("touchstart")+".colorBar"+this.element.id;i=a.jqx.mobile.getTouchEventName("touchend")+".colorBar"+this.element.id}this.addHandler(this.colorBar,g,function(j){if(d.disabled){return}d.beginDragBar=true;e(j)});this.addHandler(a(document),h,function(j){if(d.disabled){return}if(d.beginDragBar==true){e(j);if(d._isTouchDevice){j.preventDefault()}}});this.addHandler(a(document),i,function(j){if(d.disabled){return}d.beginDrag=false;d.beginDragBar=false})},_removeHandlers:function(){this.removeHandler(this.transparent,"click");this.removeHandler(this.host,"selectionstart");this.removeHandler(this.blue,"keyup blur");this.removeHandler(this.green,"keyup blur");this.removeHandler(this.red,"keyup blur");this.removeHandler(this.hex,"keyup blur");this.removeHandler(this.colorMap,"dragstart");this.removeHandler(this.colorBar,"dragstart");this.removeHandler(this.colorMapPointer,"dragStart");this.removeHandler(this.colorBarPointer,"dragStart");var g=this.element.id;var e="mousemove.colorBar"+g;var d="mousedown.colorBar"+g;var f="mouseup.colorBar"+g;var c="mousedown.picker"+g;var b="mousemove.picker"+g;if(this._isTouchDevice){e=a.jqx.mobile.getTouchEventName("touchmove")+".colorBar"+g;d=a.jqx.mobile.getTouchEventName("touchstart")+".colorBar"+g;f=a.jqx.mobile.getTouchEventName("touchend")+".colorBar"+g;c=a.jqx.mobile.getTouchEventName("touchstart")+".picker"+g;b=a.jqx.mobile.getTouchEventName("touchmove")+".picker"+g}this.removeHandler(this.colorMap,c);this.removeHandler(this.colorMap,b);this.removeHandler(this.colorBar,d);this.removeHandler(this.colorBar,e);this.removeHandler(a(document),b);this.removeHandler(a(document),e);this.removeHandler(a(document),f)},_raiseEvent:function(g,c){if(c==undefined){c={owner:null}}var d=this.events[g];var e=c?c:{};e.owner=this;var f=new a.Event(d);f.owner=this;f.args=e;var b=this.host.trigger(f);return b},setColor:function(b){if(!b){return}if(b=="transparent"){this.color.transparent=true;this.color.hex="000";this.color.r=0;this.color.g=0;this.color.b=0}else{if(b.r){this.color=new a.jqx.color({rgb:b})}else{if(b.substring(0,1)=="#"){this.color=new a.jqx.color({hex:b.substring(1)})}else{this.color=new a.jqx.color({hex:b})}}}this._updateUI();this._setPositionFromValue();this._raiseEvent("0",{color:this.color})},getColor:function(){return this.color},resize:function(c,b){this.width=c;this.height=b;this._setSize();this.refresh()},propertyChangedHandler:function(b,c,e,d){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="colorMode"){b.refresh()}if(c=="color"){b._updateUI();b._setPositionFromValue();b._raiseEvent("0",{color:d})}if(c=="width"||c=="height"){b._setSize();b.refresh()}if(c=="showTransparent"){b.refresh()}if(c=="disabled"){this.element.disabled=d;if(d){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}else{b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}}},_valuesFromMouse:function(j,g,c,b){var k=0;var i=0;var f=g.offset();var p=g.height();var d=g.width();var n=j.pageX;var m=j.pageY;if(this._isTouchDevice){var l=a.jqx.position(j);n=l.left;m=l.top}if(n<f.left){k=0}else{if(n>f.left+d){k=d}else{k=n-f.left+1}}if(m<f.top){i=0}else{if(m>f.top+p){i=p}else{i=m-f.top+1}}var h=parseInt(k/d*c);var o=parseInt(i/p*b);return{x:h,y:o}},_validateKey:function(b){if(b.keyCode==9||b.keyCode==16||b.keyCode==38||b.keyCode==29||b.keyCode==40||b.keyCode==17||b.keyCode==37||(b.ctrlKey&&(b.keyCode=="c".charCodeAt()||b.keyCode=="v".charCodeAt()))||(b.ctrlKey&&(b.keyCode=="C".charCodeAt()||b.keyCode=="V".charCodeAt()))){return false}if(b.ctrlKey||b.shiftKey){return false}return true},_setValueInRange:function(d,c,b){if(d==""||isNaN(d)){return c}d=parseInt(d);if(d>b){return b}if(d<c){return c}return d},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.host.removeClass();this._removeHandlers();this.host.remove()},setPointerStyle:function(c){this.colorMapPointer.removeClass();if(c=="transparent"||c.hex==""){this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer"))}var b=105;var d=(c.r*0.299)+(c.g*0.587)+(c.b*0.114);var e=(255-d<b)?"Black":"White";if(e=="Black"){this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer"))}else{this.colorMapPointer.addClass(this.toThemeProperty("jqx-color-picker-pointer-alt"))}},_updateUI:function(){var c=this;c.red.val(c.color.r);c.green.val(c.color.g);c.blue.val(c.color.b);c.hex.val(c.color.hex);var b=new a.jqx.color({hex:"fff"});if(this.colorMode=="saturation"){b.setHsv(this.color.h,100,this.color.v);c.colorBar.css("background","#"+b.hex)}else{b.setHsv(this.color.h,100,100);c.colorMap.css("background-color","#"+b.hex)}c.preview.css("background","#"+this.color.hex);c.setPointerStyle(this.color)},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.host.width()<130){this.host.width(150)}if(this.host.height()<70){this.host.height(70)}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height)}},_arrange:function(){var d=this.host.height();var g=this.host.width();var b=d-44;if(this.showTransparent){b=d-64}if(b<=0){return}this.colorMap.width(85*g/100);this.colorMap.height(b);this.colorBar.height(b);this.colorBar.css("left",this.colorMap.width()+4);this.colorBar.width(8*g/100);this.colorBarPointer.width(this.colorBar.width());this.colorPanel.width(g);this.colorPanel.height(40);if(this.showTransparent){this.colorPanel.height(60)}this.colorPanel.css("top",b+4);this.colorPanel.css("text-align","left");this.hex.width(this.colorMap.width()-this.colorBar.width()-4);var c=this.red.prev().outerWidth()-this.hex.prev().outerWidth();if(c<4){c=4}this.hex.css("margin-left",c+"px");this.preview.width(this.colorBar.width()+7);this.preview.height(25);this.preview.addClass(this.toThemeProperty("jqx-rc-all"));this.preview.addClass(this.toThemeProperty("jqx-color-picker-preview"));this.preview.css("left",this.colorMap.width()-2);this.preview.css("top","5px");var e=this.hex.width();var f=e-this.blue.prev().outerWidth()-this.green.prev().outerWidth()-6;if(f>0){this.blue.width(f/3);this.green.width(f/3);this.red.width(f/3);return}},_getColorPointer:function(){var b=a("<div></div>");b.addClass(this.toThemeProperty("jqx-color-picker-pointer"));return b},_getImageUrl:function(c){var b=c.css("backgroundImage");b=b.replace('url("',"");b=b.replace('")',"");b=b.replace("url(","");b=b.replace(")","");return b},refresh:function(){if(this._delayLoading){return}this._saturation=null;this._hue=null;this.colorMap.removeClass();this.colorBar.removeClass();this.colorMap.addClass(this.toThemeProperty("jqx-disableselect"));this.colorBar.addClass(this.toThemeProperty("jqx-disableselect"));this.colorPanel.addClass(this.toThemeProperty("jqx-color-picker-panel"));this.colorBar.css("background-image","");this.colorMap.css("background-image","");if(this.colorMode=="saturation"){this.colorMap.addClass(this.toThemeProperty("jqx-color-picker-map"));this.colorBar.addClass(this.toThemeProperty("jqx-color-picker-bar"))}else{this.colorMap.addClass(this.toThemeProperty("jqx-color-picker-map-hue"));this.colorBar.addClass(this.toThemeProperty("jqx-color-picker-bar-hue"))}this._barImageURL=this._getImageUrl(this.colorBar);this._mapImageURL=this._getImageUrl(this.colorMap);this._arrange();this.colorBar.children().remove();this.colorBarImageContainer=a("<div style='overflow: hidden;'></div>");this.colorBarImageContainer.width(this.colorBar.width());this.colorBarImageContainer.height(this.colorBar.height());this.colorBarImageContainer.appendTo(this.colorBar);this.colorBarImage=a("<img/>");this.colorBarImage.appendTo(this.colorBarImageContainer);this.colorBarImage.attr("src",this._barImageURL);this.colorBar.css("background-image","none");this.colorBarImage.attr("width",this.colorBar.width());this.colorBarImage.attr("height",this.colorBar.height());this.colorBarPointer.appendTo(this.colorBar);this.colorMap.children().remove();this.colorMapImage=a("<img/>");this.colorMapImage.appendTo(this.colorMap);this.colorMapImage.attr("src",this._mapImageURL);this.colorMap.css("background-image","none");this.colorMapImage.attr("width",this.colorMap.width());this.colorMapImage.attr("height",this.colorMap.height());this.colorMapImageOverlay=a("<img style='position: absolute; left: 0; top: 0;'/>");this.colorMapImageOverlay.prependTo(this.colorMap);this.colorMapImageOverlay.attr("src",this._mapImageOverlayURL);this.colorMapImageOverlay.attr("width",this.colorMap.width());this.colorMapImageOverlay.attr("height",this.colorMap.height());this.colorMapImageOverlay.css("opacity",0);this.colorMapPointer.appendTo(this.colorMap);if(this.showTransparent){this.transparent.appendTo(this.colorPanel)}this._updateUI();this._setPositionFromValue()}});a.jqx.color=function(d){var b={r:0,g:0,b:0,h:0,s:0,v:0,hex:"",hexToRgb:function(i){i=this.validateHex(i);var h="00",f="00",e="00";if(i.length==6){h=i.substring(0,2);f=i.substring(2,4);e=i.substring(4,6)}else{if(i.length>4){h=i.substring(4,i.length);i=i.substring(0,4)}if(i.length>2){f=i.substring(2,i.length);i=i.substring(0,2)}if(i.length>0){e=i.substring(0,i.length)}}return{r:this.hexToInt(h),g:this.hexToInt(f),b:this.hexToInt(e)}},validateHex:function(e){e=new String(e).toUpperCase();e=e.replace(/[^A-F0-9]/g,"0");if(e.length>6){e=e.substring(0,6)}return e},webSafeDec:function(e){e=Math.round(e/51);e*=51;return e},hexToWebSafe:function(i){var h,f,e;if(i.length==3){h=i.substring(0,1);f=i.substring(1,1);e=i.substring(2,1)}else{h=i.substring(0,2);f=i.substring(2,4);e=i.substring(4,6)}return intToHex(this.webSafeDec(this.hexToInt(h)))+this.intToHex(this.webSafeDec(this.hexToInt(f)))+this.intToHex(this.webSafeDec(this.hexToInt(e)))},rgbToWebSafe:function(e){return{r:this.webSafeDec(e.r),g:this.webSafeDec(e.g),b:this.webSafeDec(e.b)}},rgbToHex:function(e){return this.intToHex(e.r)+this.intToHex(e.g)+this.intToHex(e.b)},intToHex:function(f){var e=(parseInt(f).toString(16));if(e.length==1){e=("0"+e)}return e.toUpperCase()},hexToInt:function(e){return(parseInt(e,16))},hslToRgb:function(v){var n=parseInt(v.h)/360;var w=parseInt(v.s)/100;var k=parseInt(v.l)/100;if(k<=0.5){var f=k*(1+w)}else{var f=k+w-(k*w)}var i=2*k-f;var t=n+(1/3);var j=n;var m=n-(1/3);var e=Math.round(this.hueToRgb(i,f,t)*255);var o=Math.round(this.hueToRgb(i,f,j)*255);var u=Math.round(this.hueToRgb(i,f,m)*255);return{r:e,g:o,b:u}},hueToRgb:function(g,f,e){if(e<0){e+=1}else{if(e>1){e-=1}}if((e*6)<1){return g+(f-g)*e*6}else{if((e*2)<1){return f}else{if((e*3)<2){return g+(f-g)*((2/3)-e)*6}else{return g}}}},rgbToHsv:function(h){var k=h.r/255;var j=h.g/255;var f=h.b/255;hsv={h:0,s:0,v:0};var i=0;var e=0;if(k>=j&&k>=f){e=k;i=(j>f)?f:j}else{if(j>=f&&j>=k){e=j;i=(k>f)?f:k}else{e=f;i=(j>k)?k:j}}hsv.v=e;hsv.s=(e)?((e-i)/e):0;if(!hsv.s){hsv.h=0}else{delta=e-i;if(k==e){hsv.h=(j-f)/delta}else{if(j==e){hsv.h=2+(f-k)/delta}else{hsv.h=4+(k-j)/delta}}hsv.h=parseInt(hsv.h*60);if(hsv.h<0){hsv.h+=360}}hsv.s=parseInt(hsv.s*100);hsv.v=parseInt(hsv.v*100);return hsv},hsvToRgb:function(l){rgb={r:0,g:0,b:0};var k=l.h;var r=l.s;var n=l.v;if(r==0){if(n==0){rgb.r=rgb.g=rgb.b=0}else{rgb.r=rgb.g=rgb.b=parseInt(n*255/100)}}else{if(k==360){k=0}k/=60;r=r/100;n=n/100;var j=parseInt(k);var m=k-j;var g=n*(1-r);var e=n*(1-(r*m));var o=n*(1-(r*(1-m)));switch(j){case 0:rgb.r=n;rgb.g=o;rgb.b=g;break;case 1:rgb.r=e;rgb.g=n;rgb.b=g;break;case 2:rgb.r=g;rgb.g=n;rgb.b=o;break;case 3:rgb.r=g;rgb.g=e;rgb.b=n;break;case 4:rgb.r=o;rgb.g=g;rgb.b=n;break;case 5:rgb.r=n;rgb.g=g;rgb.b=e;break}rgb.r=parseInt(rgb.r*255);rgb.g=parseInt(rgb.g*255);rgb.b=parseInt(rgb.b*255)}return rgb},setRgb:function(h,f,e){var j=function(g){if(g<0||g>255){return 0}if(isNaN(parseInt(g))){return 0}return g};this.r=j(h);this.g=j(f);this.b=j(e);var i=this.rgbToHsv(this);this.h=i.h;this.s=i.s;this.v=i.v;this.hex=this.rgbToHex(this)},setHsl:function(g,f,e){this.h=g;this.s=f;this.l=e;var i=this.hslToRgb(this);this.r=i.r;this.g=i.g;this.b=i.b;this.hex=this.rgbToHex(i)},setHsv:function(g,f,e){this.h=g;this.s=f;this.v=e;var i=this.hsvToRgb(this);this.r=i.r;this.g=i.g;this.b=i.b;this.hex=this.rgbToHex(i)},setHex:function(e){this.hex=e;var g=this.hexToRgb(this.hex);this.r=g.r;this.g=g.g;this.b=g.b;var f=this.rgbToHsv(g);this.h=f.h;this.s=f.s;this.v=f.v}};if(d){if(d.hex){var c=b.validateHex(d.hex);b.setHex(c)}else{if(d.r){b.setRgb(d.r,d.g,d.b)}else{if(d.h){b.setHsv(d.h,d.s,d.v)}else{if(d.rgb){b.setRgb(d.rgb.r,d.rgb.g,d.rgb.b)}}}}}return b}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxcombobox.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxcombobox.js
new file mode 100644 (file)
index 0000000..1e01877
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxComboBox","",{});a.extend(a.jqx._jqxComboBox.prototype,{defineInstance:function(){var b={disabled:false,width:200,height:25,items:new Array(),selectedIndex:-1,selectedItems:new Array(),_selectedItems:new Array(),source:null,scrollBarSize:a.jqx.utilities.scrollBarSize,arrowSize:18,enableHover:true,enableSelection:true,visualItems:new Array(),groups:new Array(),equalItemsWidth:true,itemHeight:-1,visibleItems:new Array(),emptyGroupText:"Group",emptyString:"",openDelay:250,closeDelay:300,animationType:"default",dropDownWidth:"auto",dropDownHeight:"200px",autoDropDownHeight:false,enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",searchMode:"startswithignorecase",autoComplete:false,remoteAutoComplete:false,remoteAutoCompleteDelay:500,selectionMode:"default",minLength:2,displayMember:"",valueMember:"",groupMember:"",searchMember:"",keyboardSelection:true,renderer:null,autoOpen:false,checkboxes:false,promptText:"",placeHolder:"",rtl:false,listBox:null,validateSelection:null,showCloseButtons:true,renderSelectedItem:null,search:null,popupZIndex:100000,searchString:null,multiSelect:false,showArrow:true,_disabledItems:new Array(),touchMode:"auto",autoBind:true,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["open","close","select","unselect","change","checkChange","bindingComplete"]};a.extend(true,this,b);return b},createInstance:function(b){var c=this;this.host.attr("role","combobox");a.jqx.aria(this,"aria-autocomplete","both");if(a.jqx._jqxListBox==null||a.jqx._jqxListBox==undefined){throw new Error("jqxComboBox: Missing reference to jqxlistbox.js.")}a.jqx.aria(this);if(this.promptText!=""){this.placeHolder=this.promptText}this.render()},render:function(){var n=this;var p=n.element.nodeName.toLowerCase();if(p=="select"||p=="ul"||p=="ol"){n.field=n.element;if(n.field.className){n._className=n.field.className}var m={title:n.field.title};if(n.field.id.length){m.id=n.field.id.replace(/[^\w]/g,"_")+"_jqxComboBox"}else{m.id=a.jqx.utilities.createId()+"_jqxComboBox"}var c=a("<div></div>",m);if(!n.width){n.width=a(n.field).width()}if(!n.height){n.height=a(n.field).outerHeight()}a(n.field).hide().after(c);var k=n.host.data();n.host=c;n.host.data(k);n.element=c[0];n.element.id=n.field.id;n.field.id=m.id;if(n._className){n.host.addClass(n._className);a(n.field).removeClass(n._className)}if(n.field.tabIndex){var f=n.field.tabIndex;n.field.tabIndex=-1;n.element.tabIndex=f}var s=a.jqx.parseSourceTag(n.field);n.source=s.items;if(n.selectedIndex==-1){n.selectedIndex=s.index}}n.removeHandlers();n.isanimating=false;n.id=a.jqx.utilities.createId();n.element.innerHTML="";var g=a("<div style='background-color: transparent; -webkit-appearance: none; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; border: 0px; position: relative;'><div id='dropdownlistWrapper' style='padding: 0; margin: 0; border: none; background-color: transparent; float: left; width:100%; height: 100%; position: relative;'><div id='dropdownlistContent' style='padding: 0; margin: 0; border-top: none; border-bottom: none; float: left; position: absolute;'/><div id='dropdownlistArrow' role='button' style='padding: 0; margin: 0; border-left-width: 1px; border-bottom-width: 0px; border-top-width: 0px; border-right-width: 0px; float: right; position: absolute;'/></div></div>");n.comboStructure=g;if(a.jqx._jqxListBox==null||a.jqx._jqxListBox==undefined){throw"jqxComboBox: Missing reference to jqxlistbox.js."}n.touch=a.jqx.mobile.isTouchDevice();if(n.touchMode===true){n.touch=true}n.host.append(g);n.dropdownlistWrapper=n.host.find("#dropdownlistWrapper");n.dropdownlistArrow=n.host.find("#dropdownlistArrow");n.dropdownlistContent=n.host.find("#dropdownlistContent");n.dropdownlistContent.addClass(n.toThemeProperty("jqx-combobox-content"));n.dropdownlistContent.addClass(n.toThemeProperty("jqx-widget-content"));n.dropdownlistWrapper[0].id="dropdownlistWrapper"+n.element.id;n.dropdownlistArrow[0].id="dropdownlistArrow"+n.element.id;n.dropdownlistContent[0].id="dropdownlistContent"+n.element.id;n.dropdownlistContent.append(a('<input autocomplete="off" style="margin: 0; padding: 0; border: 0;" type="textarea"/>'));n.input=n.dropdownlistContent.find("input");n.input.addClass(n.toThemeProperty("jqx-combobox-input"));n.input.addClass(n.toThemeProperty("jqx-widget-content"));if(n.host.attr("tabindex")){n.input.attr("tabindex",n.host.attr("tabindex"));n.host.removeAttr("tabindex")}n._addInput();if(n.rtl){n.input.css({direction:"rtl"});n.dropdownlistContent.addClass(n.toThemeProperty("jqx-combobox-content-rtl"))}try{var q="listBox"+n.id;var i=a(a.find("#"+q));if(i.length>0){i.remove()}a.jqx.aria(this,"aria-owns",q);a.jqx.aria(this,"aria-haspopup",true);a.jqx.aria(this,"aria-multiline",false);if(n.listBoxContainer){n.listBoxContainer.jqxListBox("destroy")}if(n.container){n.container.remove()}var b=a("<div style='overflow: hidden; border: none; background-color: transparent; position: absolute;' id='listBox"+n.id+"'><div id='innerListBox"+n.id+"'></div></div>");b.hide();b.appendTo(document.body);n.container=b;n.listBoxContainer=a(a.find("#innerListBox"+n.id));var d=n.width;if(n.dropDownWidth!="auto"){d=n.dropDownWidth}if(n.dropDownHeight==null){n.dropDownHeight=200}n.container.width(parseInt(d)+25);n.container.height(parseInt(n.dropDownHeight)+25);n.addHandler(n.listBoxContainer,"bindingComplete",function(e){if(!n.listBox){n.listBox=a.data(n.listBoxContainer[0],"jqxListBox").instance}n._raiseEvent("6")});var j=true;n.listBoxContainer.jqxListBox({_checkForHiddenParent:false,allowDrop:false,allowDrag:false,checkboxes:n.checkboxes,emptyString:n.emptyString,autoBind:!n.remoteAutoComplete&&n.autoBind,renderer:n.renderer,rtl:n.rtl,itemHeight:n.itemHeight,selectedIndex:n.selectedIndex,incrementalSearch:false,width:d,scrollBarSize:n.scrollBarSize,autoHeight:n.autoDropDownHeight,height:n.dropDownHeight,groupMember:n.groupMember,searchMember:n.searchMember,displayMember:n.displayMember,valueMember:n.valueMember,source:n.source,theme:n.theme,rendered:function(){n.listBox=a.data(n.listBoxContainer[0],"jqxListBox").instance;if(n.remoteAutoComplete){if(n.autoDropDownHeight){n.container.height(n.listBox.virtualSize.height+25);n.listBoxContainer.height(n.listBox.virtualSize.height);n.listBox._arrange()}else{n.listBox._arrange();n.listBox.ensureVisible(0);n.listBox._renderItems();n.container.height(n.listBoxContainer.height()+25)}if(n.searchString!=undefined&&n.searchString.length>=n.minLength){var e=n.listBoxContainer.jqxListBox("items");if(e){if(e.length>0){if(!n.isOpened()){n.open()}}else{n.close()}}else{n.close()}}else{n.close()}}else{n.renderSelection("mouse");if(n.multiSelect){n.doMultiSelect(false)}}if(n.rendered){n.rendered()}}});n.listBoxContainer.css({position:"absolute",zIndex:n.popupZIndex,top:0,left:0});n.listBoxContainer.css("border-top-width","1px");n.listBoxContainer.addClass(n.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){n.listBoxContainer.addClass(n.toThemeProperty("jqx-noshadow"))}n.listBox=a.data(n.listBoxContainer[0],"jqxListBox").instance;n.listBox.enableSelection=n.enableSelection;n.listBox.enableHover=n.enableHover;n.listBox.equalItemsWidth=n.equalItemsWidth;n.listBox._arrange();n.addHandler(n.listBoxContainer,"unselect",function(e){if(!n.multiSelect){n._raiseEvent("3",{index:e.args.index,type:e.args.type,item:e.args.item})}});n.addHandler(n.listBoxContainer,"change",function(e){if(!n.multiSelect){n.selectedIndex=n.listBox.selectedIndex;n._raiseEvent("4",{index:e.args.index,type:e.args.type,item:e.args.item})}});if(n.animationType=="none"){n.container.css("display","none")}else{n.container.hide()}j=false}catch(l){throw l}var r=this;r.input.attr("disabled",r.disabled);var h=a.jqx.browser.msie&&a.jqx.browser.version<8;if(!h){r.input.attr("placeholder",r.placeHolder)}n.propertyChangeMap.disabled=function(e,u,t,v){if(v){e.host.addClass(r.toThemeProperty("jqx-combobox-state-disabled"));e.host.addClass(r.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.addClass(r.toThemeProperty("jqx-combobox-content-disabled"))}else{e.host.removeClass(r.toThemeProperty("jqx-combobox-state-disabled"));e.host.removeClass(r.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.removeClass(r.toThemeProperty("jqx-combobox-content-disabled"))}e.input.attr("disabled",e.disabled);a.jqx.aria(e,"aria-disabled",e.disabled);e.input.attr("disabled",e.disabled)};if(n.disabled){n.host.addClass(n.toThemeProperty("jqx-combobox-state-disabled"));n.host.addClass(n.toThemeProperty("jqx-fill-state-disabled"));n.dropdownlistContent.addClass(n.toThemeProperty("jqx-combobox-content-disabled"))}n.host.addClass(n.toThemeProperty("jqx-combobox-state-normal"));n.host.addClass(n.toThemeProperty("jqx-combobox"));n.host.addClass(n.toThemeProperty("jqx-rc-all"));n.host.addClass(n.toThemeProperty("jqx-widget"));n.host.addClass(n.toThemeProperty("jqx-widget-content"));n.dropdownlistArrowIcon=a("<div></div>");n.dropdownlistArrowIcon.addClass(n.toThemeProperty("jqx-icon-arrow-down"));n.dropdownlistArrowIcon.addClass(n.toThemeProperty("jqx-icon"));n.dropdownlistArrow.append(n.dropdownlistArrowIcon);n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-combobox-arrow-normal"));n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-fill-state-normal"));if(!n.rtl){n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-rc-r"))}else{n.dropdownlistArrow.addClass(n.toThemeProperty("jqx-rc-l"))}n._setSize();n._updateHandlers();n.addHandler(n.input,"keyup.textchange",function(e){var t=n._search(e);if(n.cinput&&n.input){if(!n.displayMember){n.cinput[0].value=n.input[0].value}else{n._updateInputSelection()}}});if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(n.host.parents(".jqx-window").length>0){var o=n.host.parents(".jqx-window").css("z-index");b.css("z-index",o+10);n.listBoxContainer.css("z-index",o+10)}}if(n.checkboxes){n.input.attr("readonly",true);a.jqx.aria(this,"aria-readonly",true)}else{a.jqx.aria(this,"aria-readonly",false)}if(!n.remoteAutoComplete){n.searchString=""}},_addInput:function(){var b=this.host.attr("name");this.cinput=a("<input type='hidden'/>");this.host.append(this.cinput);if(b){this.cinput.attr("name",b)}},_updateInputSelection:function(){if(this.cinput){var c=new Array();if(this.selectedIndex==-1){this.cinput.val("")}else{var e=this.getSelectedItem();if(e!=null){this.cinput.val(e.value);c.push(e.value)}else{this.cinput.val(this.dropdownlistContent.text())}}if(this.checkboxes||this.multiSelect){if(!this.multiSelect){var b=this.getCheckedItems()}else{var b=this.getSelectedItems()}var f="";if(b!=null){for(var d=0;d<b.length;d++){if(d==b.length-1){f+=b[d].value}else{f+=b[d].value+","}c.push(b[d].value)}}this.cinput.val(f)}if(this.field&&this.cinput){if(this.field.nodeName.toLowerCase()=="select"){a.each(this.field,function(g,h){a(this).removeAttr("selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this).attr("selected",true)}})}else{a.each(this.items,function(g,h){a(this.originalItem.originalItem).removeAttr("data-selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this.originalItem.originalItem).attr("data-selected",true)}})}}}},_search:function(m){var d=this;if(m.keyCode==9){return}if(d.searchMode=="none"||d.searchMode==null||d.searchMode=="undefined"){return}if(m.keyCode==16||m.keyCode==17||m.keyCode==20){return}if(d.checkboxes){return}if(d.multiSelect){var n=a("<span style='visibility: hidden; white-space: nowrap;'>"+d.input.val()+"</span>");n.addClass(d.toThemeProperty("jqx-widget"));a(document.body).append(n);var j=n.width()+15;n.remove();if(j>d.host.width()){j=d.host.width()}if(j<25){j=25}d.input.css("width",j+"px");if(d.selectedItems.length==0){d.input.css("width","100%");d.input.attr("placeholder",d.placeHolder)}else{d.input.attr("placeholder","")}var f=parseInt(this._findPos(d.host[0])[1])+parseInt(d.host.outerHeight())-1+"px";var o=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();if((o!=null&&o)){f=a.jqx.mobile.getTopPos(this.element)+parseInt(d.host.outerHeight());if(a("body").css("border-top-width")!="0px"){f=parseInt(f)-this._getBodyOffset().top+"px"}}d.container.css("top",f);var i=parseInt(d.host.height());d.dropdownlistArrow.height(i)}if(!d.isanimating){if(m.altKey&&m.keyCode==38){d.hideListBox("altKey");return false}if(m.altKey&&m.keyCode==40){if(!d.isOpened()){d.showListBox("altKey")}return false}}if(m.keyCode==37||m.keyCode==39){return false}if(m.altKey||m.keyCode==18){return}if(m.keyCode>=33&&m.keyCode<=40){return}if(m.ctrlKey||d.ctrlKey){if(m.keyCode!=88&&m.keyCode!=86){return}}var l=d.input.val();if(l.length==0&&!d.autoComplete){d.listBox.searchString=d.input.val();d.listBox.clearSelection();d.hideListBox("search");d.searchString=d.input.val();return}if(d.remoteAutoComplete){var s=this;var p=function(){s.listBox.vScrollInstance.value=0};if(l.length>=s.minLength){if(!m.ctrlKey&&!m.altKey){if(s.searchString!=l){var k=s.listBoxContainer.jqxListBox("source");if(k==null){s.listBoxContainer.jqxListBox({source:s.source})}if(d._searchTimer){clearTimeout(d._searchTimer)}if(m.keyCode!=13&&m.keyCode!=27){d._searchTimer=setTimeout(function(){p();if(s.autoDropDownHeight){s.listBox.autoHeight=true}s.searchString=s.input.val();if(s.search!=null){s.search(s.input.val())}else{throw"'search' function is not defined"}},d.remoteAutoCompleteDelay)}}s.searchString=l}}else{if(d._searchTimer){clearTimeout(d._searchTimer)}p();s.searchString="";s.listBoxContainer.jqxListBox({source:null})}return}var s=this;if(l===s.searchString){return}if(!(m.keyCode=="27"||m.keyCode=="13")){var b=d._updateItemsVisibility(l);var e=b.matchItems;var c=b.index;if(!d.autoComplete&&!d.removeAutoComplete){if(!d.multiSelect||(d.multiSelect&&c>=0)){d.listBox.selectIndex(c);var r=d.listBox.isIndexInView(c);if(!r){d.listBox.ensureVisible(c)}else{d.listBox._renderItems()}}}if(d.autoComplete&&e.length===0){d.hideListBox("search")}}if(m.keyCode=="13"){var g=d.container.css("display")=="block";if(g&&!d.isanimating){d.hideListBox("keyboard");d._oldvalue=d.listBox.selectedValue;return}}else{if(m.keyCode=="27"){var g=d.container.css("display")=="block";if(g&&!d.isanimating){if(!h.multiSelect){var q=d.listBox.getVisibleItem(d._oldvalue);if(q){var h=this;setTimeout(function(){if(h.autoComplete){h._updateItemsVisibility("")}h.listBox.selectIndex(q.index);h.renderSelection("api")},h.closeDelay)}else{d.clearSelection()}}else{h.input.val("");h.listBox.selectedValue=null}d.hideListBox("keyboard");d.renderSelection("api");m.preventDefault();return false}}else{if(!d.isOpened()&&!d.opening&&!m.ctrlKey){if(d.listBox.visibleItems&&d.listBox.visibleItems.length>0){if(d.input.val()!=d.searchString&&d.searchString!=undefined&&c!=-1){d.showListBox("search")}}}d.searchString=d.input.val();if(d.searchString==""){if(!d.listBox.itemsByValue[""]){c=-1;if(!d.multiSelect){d.clearSelection()}}}var q=d.listBox.getVisibleItem(c);if(q!=undefined){d._updateInputSelection()}}}},val:function(c){if(!this.input){return""}var d=function(f){for(var e in f){if(f.hasOwnProperty(e)){return false}}if(typeof c=="number"){return false}if(typeof c=="date"){return false}if(typeof c=="boolean"){return false}if(typeof c=="string"){return false}return true};if(d(c)||arguments.length==0){var b=this.getSelectedItem();if(b){return b.value}return this.input.val()}else{var b=this.getItemByValue(c);if(b!=null){this.selectItem(b)}else{this.input.val(c)}return this.input.val()}},focus:function(){var c=this;var b=function(){c.input.focus();var d=c.input.val();c._setSelection(0,d.length)};b();setTimeout(function(){b()},10)},_setSelection:function(e,b){try{if("selectionStart" in this.input[0]){this.input[0].focus();this.input[0].setSelectionRange(e,b)}else{var c=this.input[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",e);c.select()}}catch(d){}},setContent:function(b){this.input.val(b)},_updateItemsVisibility:function(l){var i=this.getItems();if(i==undefined){return{index:-1,matchItem:new Array()}}var j=this;var g=-1;var m=new Array();var k=0;a.each(i,function(p){var r="";if(!this.isGroup){if(this.searchLabel){r=this.searchLabel}else{if(this.label){r=this.label}else{if(this.value){r=this.value}else{if(this.title){r=this.title}else{r="jqxItem"}}}}r=r.toString();var q=false;switch(j.searchMode){case"containsignorecase":q=a.jqx.string.containsIgnoreCase(r,l);break;case"contains":q=a.jqx.string.contains(r,l);break;case"equals":q=a.jqx.string.equals(r,l);break;case"equalsignorecase":q=a.jqx.string.equalsIgnoreCase(r,l);break;case"startswith":q=a.jqx.string.startsWith(r,l);break;case"startswithignorecase":q=a.jqx.string.startsWithIgnoreCase(r,l);break;case"endswith":q=a.jqx.string.endsWith(r,l);break;case"endswithignorecase":q=a.jqx.string.endsWithIgnoreCase(r,l);break}if(j.autoComplete&&!q){this.visible=false}if(q&&j.autoComplete){m[k++]=this;this.visible=true;g=this.visibleIndex}if(l==""&&j.autoComplete){this.visible=true;q=false}if(j.multiSelect){this.disabled=false;if(j.selectedItems.indexOf(this.value)>=0||j._disabledItems.indexOf(this.value)>=0){this.disabled=true;q=false}}if(!j.multiSelect){if(q&&!j.autoComplete){g=this.visibleIndex;return false}}else{if(q&&!j.autoComplete){if(g===-1){g=this.visibleIndex}return true}}}});this.listBox.searchString=l;var f=this;var h=function(){if(!f.multiSelect){return}var p=0;var s=false;var r=null;for(var q=0;q<f.listBox.items.length;q++){f.listBox.selectedIndexes[q]=-1;if(!f.listBox.items[q].disabled){if(s==false){r=f.listBox.items[q];p=r.visibleIndex;s=true}}}f.listBox.selectedIndex=-1;f.listBox.selectedIndex=p;f.listBox.selectedIndexes[p]=p;if(f.listBox.visibleItems.length>0){if(r){f.listBox.selectedValue=r.value}else{f.listBox.selectedValue=null}}else{f.listBox.selectedValue=null}f.listBox.ensureVisible(0)};if(!this.autoComplete){h();return{index:g,matchItems:m}}this.listBox.renderedVisibleItems=new Array();var b=this.listBox.vScrollInstance.value;this.listBox.vScrollInstance.value=0;this.listBox.visibleItems=new Array();this.listBox._renderItems();var e=this.listBox.selectedValue;var o=this.listBox.getItemByValue(e);if(!this.multiSelect){if(o){if(o.visible){this.listBox.selectedIndex=o.visibleIndex;for(var d=0;d<this.listBox.items.length;d++){this.listBox.selectedIndexes[d]=-1}this.listBox.selectedIndexes[o.visibleIndex]=o.visibleIndex}else{for(var d=0;d<this.listBox.items.length;d++){this.listBox.selectedIndexes[d]=-1}this.listBox.selectedIndex=-1}}}else{h()}this.listBox._renderItems();var n=this.listBox._calculateVirtualSize().height;if(n<b){b=0;this.listBox.vScrollInstance.refresh()}if(this.autoDropDownHeight){this._disableSelection=true;if(this.listBox.autoHeight!=this.autoDropDownHeight){this.listBoxContainer.jqxListBox({autoHeight:this.autoDropDownHeight})}this.container.height(n+25);this.listBox.invalidate();this._disableSelection=false}else{if(n<parseInt(this.dropDownHeight)){var c=this.listBox.hScrollBar[0].style.visibility=="hidden"?0:20;this.listBox.height=c+n;this.container.height(n+25+c);this.listBox.invalidate()}else{this.listBox.height=parseInt(this.dropDownHeight);this.container.height(parseInt(this.dropDownHeight)+25);this.listBox.invalidate()}}this.listBox.vScrollInstance.setPosition(b);return{index:g,matchItems:m}},findItems:function(e){var b=this.getItems();var d=this;var c=0;var f=new Array();a.each(b,function(g){var j="";if(!this.isGroup){if(this.label){j=this.label}else{if(this.value){j=this.value}else{if(this.title){j=this.title}else{j="jqxItem"}}}var h=false;switch(d.searchMode){case"containsignorecase":h=a.jqx.string.containsIgnoreCase(j,e);break;case"contains":h=a.jqx.string.contains(j,e);break;case"equals":h=a.jqx.string.equals(j,e);break;case"equalsignorecase":h=a.jqx.string.equalsIgnoreCase(j,e);break;case"startswith":h=a.jqx.string.startsWith(j,e);break;case"startswithignorecase":h=a.jqx.string.startsWithIgnoreCase(j,e);break;case"endswith":h=a.jqx.string.endsWith(j,e);break;case"endswithignorecase":h=a.jqx.string.endsWithIgnoreCase(j,e);break}if(h){f[c++]=this}}});return f},_resetautocomplete:function(){a.each(this.listBox.items,function(b){this.visible=true});this.listBox.vScrollInstance.value=0;this.listBox._addItems();this.listBox.autoHeight=false;this.listBox.height=this.dropDownHeight;this.container.height(parseInt(this.dropDownHeight)+25);this.listBoxContainer.height(parseInt(this.dropDownHeight));this.listBox._arrange();this.listBox._addItems();this.listBox._renderItems()},getItems:function(){var b=this.listBox.items;return b},getVisibleItems:function(){return this.listBox.getVisibleItems()},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true;this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true;this.host.height(this.height)}if(e){var c=this;var b=this.host.width();if(this.dropDownWidth!="auto"){b=this.dropDownWidth}this.listBoxContainer.jqxListBox({width:b});this.container.width(parseInt(b)+25);this._arrange()}var c=this;var d=function(){if(c.multiSelect){c.host.height(c.height)}c._arrange();if(c.multiSelect){c.host.height("auto")}};c.oldWidth=c.host.width();c.oldHeight=c.host.height();a.jqx.utilities.resize(this.host,function(){var f=c.host.width();var g=c.host.height();if(f!=c.oldWidth||g!=c.oldHeight){d();c.hideListBox("api")}c.oldWidth=f;c.oldHeight=g})},isOpened:function(){var c=this;var b=a.data(document.body,"openedCombojqxListBox"+this.element.id);if(this.container.css("display")!="block"){return false}if(b!=null&&b==c.listBoxContainer){return true}return false},_updateHandlers:function(){var d=this;var e=false;this.removeHandlers();if(this.multiSelect){this.addHandler(this.dropdownlistContent,"click",function(f){if(f.target.href){return false}d.input.focus();setTimeout(function(){d.input.focus()},10)});this.addHandler(this.dropdownlistContent,"focus",function(f){if(f.target.href){return false}d.input.focus();setTimeout(function(){d.input.focus()},10)})}if(!this.touch){if(this.host.parents()){this.addHandler(this.host.parents(),"scroll.combobox"+this.element.id,function(f){var g=d.isOpened();if(g){d.close()}})}this.addHandler(this.host,"mouseenter",function(){if(!d.disabled&&d.enableHover){e=true;d.host.addClass(d.toThemeProperty("jqx-combobox-state-hover"));d.dropdownlistArrowIcon.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));d.dropdownlistArrow.addClass(d.toThemeProperty("jqx-combobox-arrow-hover"));d.dropdownlistArrow.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mouseleave",function(){if(!d.disabled&&d.enableHover){d.host.removeClass(d.toThemeProperty("jqx-combobox-state-hover"));d.dropdownlistArrowIcon.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));d.dropdownlistArrow.removeClass(d.toThemeProperty("jqx-combobox-arrow-hover"));d.dropdownlistArrow.removeClass(d.toThemeProperty("jqx-fill-state-hover"));e=false}})}if(d.autoOpen){this.addHandler(this.host,"mouseenter",function(){var f=d.isOpened();if(!f&&d.autoOpen){d.open();d.host.focus()}});this.addHandler(a(document),"mousemove."+d.id,function(i){var h=d.isOpened();if(h&&d.autoOpen){var m=d.host.coord();var l=m.top;var k=m.left;var j=d.container.coord();var f=j.left;var g=j.top;canClose=true;if(i.pageY>=l&&i.pageY<=l+d.host.height()+2){if(i.pageX>=k&&i.pageX<k+d.host.width()){canClose=false}}if(i.pageY>=g&&i.pageY<=g+d.container.height()-20){if(i.pageX>=f&&i.pageX<f+d.container.width()){canClose=false}}if(canClose){d.close()}}})}var c="mousedown";if(this.touch){c=a.jqx.mobile.getTouchEventName("touchstart")}var b=function(h){if(!d.disabled){var f=d.container.css("display")=="block";if(!d.isanimating){if(f){d.hideListBox("api");if(!a.jqx.mobile.isTouchDevice()){d.input.focus();setTimeout(function(){d.input.focus()},10)}return true}else{if(d.autoDropDownHeight){d.container.height(d.listBoxContainer.height()+25);var g=d.listBoxContainer.jqxListBox("autoHeight");if(!g){d.listBoxContainer.jqxListBox({autoHeight:d.autoDropDownHeight});d.listBox._arrange();d.listBox.ensureVisible(0);d.listBox._renderItems();d.container.height(d.listBoxContainer.height()+25)}}d.showListBox("api");if(!a.jqx.mobile.isTouchDevice()){setTimeout(function(){d.input.focus()},10)}else{return true}}}}};this.addHandler(this.dropdownlistArrow,c,function(f){b(f)});this.addHandler(this.dropdownlistArrowIcon,c,function(f){});this.addHandler(this.host,"focus",function(){d.focus()});this.addHandler(this.input,"focus",function(f){d.focused=true;d.host.addClass(d.toThemeProperty("jqx-combobox-state-focus"));d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"));d.dropdownlistContent.addClass(d.toThemeProperty("jqx-combobox-content-focus"));if(f.stopPropagation){f.stopPropagation()}});this.addHandler(this.input,"blur",function(){d.focused=false;if(!d.isOpened()&&!d.opening){if(d.selectionMode=="dropDownList"){d._selectOldValue()}d.host.removeClass(d.toThemeProperty("jqx-combobox-state-focus"));d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"));d.dropdownlistContent.removeClass(d.toThemeProperty("jqx-combobox-content-focus"))}if(d._searchTimer){clearTimeout(d._searchTimer)}});this.addHandler(a(document),"mousedown."+this.id,d.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id});if(this.touch){this.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id,d.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id})}this.addHandler(this.host,"keydown",function(k){var h=d.container.css("display")=="block";d.ctrlKey=k.ctrlKey;if(d.host.css("display")=="none"){return true}if(k.keyCode=="13"||k.keyCode=="9"){if(h&&!d.isanimating){if(d.listBox.selectedIndex!=-1){d.renderSelection("mouse");var f=d.listBox.selectedIndex;var j=d.listBox.getVisibleItem(f);if(j){d.listBox.selectedValue=j.value}d._setSelection(d.input.val().length,d.input.val().length);d.hideListBox("keyboard")}if(k.keyCode=="13"){d._oldvalue=d.listBox.selectedValue}if(!d.keyboardSelection){d._raiseEvent("2",{index:d.selectedIndex,type:"keyboard",item:d.getItem(d.selectedIndex)})}if(k.keyCode=="9"){return true}return false}}if(k.keyCode==115){if(!d.isanimating){if(!d.isOpened()){d.showListBox("keyboard")}else{if(d.isOpened()){d.hideListBox("keyboard")}}}return false}if(k.altKey){if(d.host.css("display")=="block"){if(!d.isanimating){if(k.keyCode==38){if(d.isOpened()){d.hideListBox("altKey")}}else{if(k.keyCode==40){if(!d.isOpened()){d.showListBox("altKey")}}}}}}if(k.keyCode=="27"||k.keyCode=="9"){if(d.isOpened()&&!d.isanimating){if(k.keyCode=="27"){if(!d.multiSelect){var j=d.listBox.getItemByValue(d._oldvalue);if(j){setTimeout(function(){if(d.autoComplete){d._updateItemsVisibility("")}d.listBox.selectIndex(j.index);d.renderSelection("api")},d.closeDelay)}else{d.clearSelection()}}else{d.listBox.selectedValue=null;d.input.val("")}}d.hideListBox("keyboard");if(k.keyCode=="9"){return true}d.renderSelection("api");k.preventDefault();return false}}var g=k.keyCode;if(h&&!d.disabled&&g!=8){return d.listBox._handleKeyDown(k)}else{if(!d.disabled&&!h){var g=k.keyCode;if(g==33||g==34||g==35||g==36||g==38||g==40){return d.listBox._handleKeyDown(k)}}}if(g===8&&d.multiSelect){if(d.input.val().length===0){var i=d.selectedItems[d.selectedItems.length-1];d.selectedItems.pop();d._selectedItems.pop();if(i){d._raiseEvent("3",{index:i.index,type:"keyboard",item:i});d._raiseEvent("4",{index:i.index,type:"keyboard",item:i})}d.listBox.selectedValue=null;d.doMultiSelect();return false}}});this.addHandler(this.listBoxContainer,"checkChange",function(f){d.renderSelection("mouse");d._updateInputSelection();d._raiseEvent(5,{label:f.args.label,value:f.args.value,checked:f.args.checked,item:f.args.item})});this.addHandler(this.listBoxContainer,"select",function(f){if(!d.disabled){if(f.args.type!="keyboard"||d.keyboardSelection){d.renderSelection(f.args.type);if(!d.multiSelect){d._raiseEvent("2",{index:f.args.index,type:f.args.type,item:f.args.item})}if(f.args.type=="mouse"){d._oldvalue=d.listBox.selectedValue;if(!d.checkboxes){d.hideListBox("mouse");if(!d.touch){d.input.focus()}else{return false}}}}}});if(this.listBox!=null&&this.listBox.content!=null){this.addHandler(this.listBox.content,"click",function(f){if(!d.disabled){if(d.listBox.itemswrapper){if(f.target===d.listBox.itemswrapper[0]){return true}}if(f.target&&f.target.className){if(f.target.className.indexOf("jqx-fill-state-disabled")>=0){return true}}d.renderSelection("mouse");d._oldvalue=d.listBox.selectedValue;if(!d.touch&&!d.ishiding){if(!d.checkboxes){d.hideListBox("mouse");d.input.focus()}}if(d.touch===true){if(!d.checkboxes){d.hideListBox("mouse")}}}})}},_selectOldValue:function(){var b=this;if(b.listBox.selectedIndex==-1){if(!b.multiSelect){var c=b.listBox.getItemByValue(b._oldvalue);if(c){setTimeout(function(){if(b.autoComplete){b._updateItemsVisibility("")}b.listBox.selectIndex(c.index);b.renderSelection("api")},b.closeDelay)}else{b.clearSelection();b.listBox.selectIndex(0);b.renderSelection("api")}}else{b.listBox.selectedValue=null;b.input.val("")}}else{b.renderSelection("api")}},removeHandlers:function(){var c=this;if(this.dropdownlistWrapper!=null){this.removeHandler(this.dropdownlistWrapper,"mousedown")}if(this.dropdownlistContent){this.removeHandler(this.dropdownlistContent,"click");this.removeHandler(this.dropdownlistContent,"focus")}this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"focus");if(this.input!=null){this.removeHandler(this.input,"focus");this.removeHandler(this.input,"blur")}this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(a(document),"mousemove."+c.id);if(this.listBoxContainer){this.removeHandler(this.listBoxContainer,"checkChange");this.removeHandler(this.listBoxContainer,"select")}if(this.host.parents()){this.removeHandler(this.host.parents(),"scroll.combobox"+this.element.id)}if(this.dropdownlistArrowIcon&&this.dropdownlistArrow){var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(this.dropdownlistArrowIcon,b);this.removeHandler(this.dropdownlistArrow,b)}},getItem:function(b){var c=this.listBox.getItem(b);return c},getItemByValue:function(c){var b=this.listBox.getItemByValue(c);return b},getVisibleItem:function(b){var c=this.listBox.getVisibleItem(b);return c},renderSelection:function(j){if(j==undefined||j=="none"){return}if(this._disableSelection===true){return}if(this.listBox==null){return}if(this.multiSelect){return}var k=this.listBox.visibleItems[this.listBox.selectedIndex];if(this.autoComplete&&!this.checkboxes){if(this.listBox.selectedValue!==undefined){var k=this.getItemByValue(this.listBox.selectedValue)}}if(this.checkboxes){var f=this.getCheckedItems();if(f!=null&&f.length>0){k=f[0]}else{k=null}}if(k==null){var d=a.jqx.browser.msie&&a.jqx.browser.version<8;this.input.val("");this.input.attr("value","");if(!d){this.input.attr("placeholder",this.placeHolder)}this._updateInputSelection();return}this.selectedIndex=this.listBox.selectedIndex;var c=a("<span></span>");if(k.label!=undefined&&k.label!=null&&k.label.toString().length>0){a.jqx.utilities.html(c,k.label)}else{if(k.value!=undefined&&k.value!=null&&k.value.toString().length>0){a.jqx.utilities.html(c,k.value)}else{if(k.title!=undefined&&k.title!=null&&k.title.toString().length>0){a.jqx.utilities.html(c,k.title)}else{a.jqx.utilities.html(c,this.emptyString)}}}var b=c.outerHeight();if(this.checkboxes){var g=this.getCheckedItems();var h="";for(var e=0;e<g.length;e++){if(e==g.length-1){h+=g[e].label}else{h+=g[e].label+", "}}this.input.val(h)}else{this.input.val(c.text())}c.remove();this._updateInputSelection();if(this.renderSelectedItem){var l=this.renderSelectedItem(this.listBox.selectedIndex,k);if(l!=undefined){this.input[0].value=l}}this.input.attr("value",this.input.val());if(this.listBox&&this.listBox._activeElement){a.jqx.aria(this,"aria-activedescendant",this.listBox._activeElement.id)}},dataBind:function(){this.listBoxContainer.jqxListBox({source:this.source});this.renderSelection("mouse");if(this.source==null){this.clearSelection()}},clear:function(){this.listBoxContainer.jqxListBox({source:null});this.clearSelection()},clearSelection:function(b){this.selectedIndex=-1;this.listBox.clearSelection();this.input.val("");if(this.multiSelect){this.listBox.selectedValue="";this.selectedItems=new Array();this._selectedItems=new Array();this.doMultiSelect(false)}},unselectIndex:function(c,d){if(isNaN(c)){return}if(this.autoComplete){this._updateItemsVisibility("")}this.listBox.unselectIndex(c,d);this.renderSelection("mouse");if(this.multiSelect){if(c>=0){var b=this.getItem(c);var e=this.selectedItems.indexOf(b.value);if(e>=0){if(b.value===this.listBox.selectedValue){this.listBox.selectedValue=null}this.selectedItems.splice(e,1);this._selectedItems.splice(e,1)}}this.doMultiSelect(false)}},selectIndex:function(b,d,e,c){if(this.autoComplete){this._updateItemsVisibility("")}this.listBox.selectIndex(b,d,e,c);this.renderSelection("mouse");this.selectedIndex=b;if(this.multiSelect){this.doMultiSelect()}},selectItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.selectedIndex=-1;this.listBox.selectItem(b);this.selectedIndex=this.listBox.selectedIndex;this.renderSelection("mouse");if(this.multiSelect){this.doMultiSelect(false)}}},unselectItem:function(d){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.unselectItem(d);this.renderSelection("mouse");if(this.multiSelect){var b=this.getItemByValue(d);if(b){var c=this.selectedItems.indexOf(b.value);if(c>=0){if(b.value===this.listBox.selectedValue){this.listBox.selectedValue=null}this.selectedItems.splice(c,1);this._selectedItems.splice(c,1)}}this.doMultiSelect(false)}}},checkItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.checkItem(b)}},uncheckItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.uncheckItem(b)}},indeterminateItem:function(b){if(this.autoComplete){this._updateItemsVisibility("")}if(this.listBox!=undefined){this.listBox.indeterminateItem(b)}},getSelectedValue:function(){return this.listBox.selectedValue},getSelectedIndex:function(){if(!this.multiSelect){return this.listBox.selectedIndex}else{if(this.remoteAutoComplete&&this.multiSelect&&this._selectedItems.length>0){return this.getSelectedItems()[0].index}if(this._selectedItems&&this._selectedItems.length>0){return this.getSelectedItems()[0].index}}},getSelectedItem:function(){if(!this.multiSelect){return this.getVisibleItem(this.listBox.selectedIndex)}else{if(this.remoteAutoComplete&&this.multiSelect&&this._selectedItems.length>0){return this.getSelectedItems()[0]}if(this._selectedItems&&this._selectedItems.length>0){return this.getSelectedItems()[0]}return null}},getSelectedItems:function(){if(this.remoteAutoComplete&&this.multiSelect){return this._selectedItems}var c=new Array();var b=this;a.each(this.selectedItems,function(){var d=b.getItemByValue(this);if(d){c.push(d)}else{var d=b._selectedItems[this];if(d){c.push(d)}}});return c},getCheckedItems:function(){return this.listBox.getCheckedItems()},checkIndex:function(b){this.listBox.checkIndex(b)},uncheckIndex:function(b){this.listBox.uncheckIndex(b)},indeterminateIndex:function(b){this.listBox.indeterminateIndex(b)},checkAll:function(){this.listBox.checkAll();this.renderSelection("mouse")},uncheckAll:function(){this.listBox.uncheckAll();this.renderSelection("mouse")},insertAt:function(c,b){if(c==null){return false}return this.listBox.insertAt(c,b)},addItem:function(b){return this.listBox.addItem(b)},removeAt:function(c){var b=this.listBox.removeAt(c);this.renderSelection("mouse");return b},removeItem:function(c){var b=this.listBox.removeItem(c);this.renderSelection("mouse");return b},updateItem:function(c,d){var b=this.listBox.updateItem(c,d);this.renderSelection("mouse");return b},updateAt:function(d,c){var b=this.listBox.updateAt(d,c);this.renderSelection("mouse");return b},ensureVisible:function(b){return this.listBox.ensureVisible(b)},disableAt:function(b){var c=this.getVisibleItem(b);if(c){this._disabledItems.push(c.value)}return this.listBox.disableAt(b)},enableAt:function(b){var c=this.getVisibleItem(b);if(c){this._disabledItems.splice(this._disabledItems.indexOf(c.value),1)}return this.listBox.enableAt(b)},disableItem:function(b){var b=this.getVisibleItem(b);if(b){this._disabledItems.push(b.value)}return this.listBox.disableItem(b)},enableItem:function(b){var b=this.getVisibleItem(b);if(b){this._disabledItems.splice(this._disabledItems.indexOf(b.value),1)}return this.listBox.enableItem(b)},_findPos:function(c){while(c&&(c.type=="hidden"||c.nodeType!=1||a.expr.filters.hidden(c))){c=c.nextSibling}if(c){var b=a(c).coord(true);return[b.left,b.top]}},testOffset:function(h,f,c){var g=h.outerWidth();var j=h.outerHeight();var i=a(window).width()+a(window).scrollLeft();var e=a(window).height()+a(window).scrollTop();if(f.left+g>i){if(g>this.host.width()){var d=this.host.coord().left;var b=g-this.host.width();f.left=d-b+2}}if(f.left<0){f.left=parseInt(this.host.coord().left)+"px"}f.top-=Math.min(f.top,(f.top+j>e&&e>j)?Math.abs(j+c+23):0);return f},open:function(){if(!this.isOpened()&&!this.opening){this.showListBox("api")}},close:function(){if(this.isOpened()){this.hideListBox("api")}},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},showListBox:function(l){if(this.listBox.items&&this.listBox.items.length==0){return}if(l=="search"&&!this.autoComplete&&!this.remoteAutoComplete){if(this.autoDropDownHeight){this.container.height(this.listBoxContainer.height()+25)}}if(this.autoComplete||this.multiSelect&&!this.remoteAutoComplete){if(l!="search"){this._updateItemsVisibility("");if(this.multiSelect){var p=this.getVisibleItems();for(var t=0;t<p.length;t++){if(!p[t].disabled){this.ensureVisible(t);break}}}}}if(this.remoteAutoComplete){this.listBox.clearSelection()}if(l!="search"){this._oldvalue=this.listBox.selectedValue}a.jqx.aria(this,"aria-expanded",true);if(this.dropDownWidth=="auto"&&this.width!=null&&this.width.indexOf&&this.width.indexOf("%")!=-1){if(this.listBox.host.width()!=this.host.width()){var r=this.host.width();this.listBoxContainer.jqxListBox({width:r});this.container.width(parseInt(r)+25)}}var o=this;var h=this.listBoxContainer;var v=this.listBox;var e=a(window).scrollTop();var f=a(window).scrollLeft();var m=parseInt(this._findPos(this.host[0])[1])+parseInt(this.host.outerHeight())-1+"px";var d,q=parseInt(Math.round(this.host.coord(true).left));d=q+"px";var u=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();this.ishiding=false;var g=a.jqx.utilities.hasTransform(this.host);if(g||(u!=null&&u)){d=a.jqx.mobile.getLeftPos(this.element);m=a.jqx.mobile.getTopPos(this.element)+parseInt(this.host.outerHeight());if(a("body").css("border-top-width")!="0px"){m=parseInt(m)-this._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){d=parseInt(d)-this._getBodyOffset().left+"px"}}this.host.addClass(this.toThemeProperty("jqx-combobox-state-selected"));this.dropdownlistArrowIcon.addClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-combobox-arrow-selected"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.host.addClass(this.toThemeProperty("jqx-combobox-state-focus"));this.host.addClass(this.toThemeProperty("jqx-fill-state-focus"));this.dropdownlistContent.addClass(this.toThemeProperty("jqx-combobox-content-focus"));this.container.css("left",d);this.container.css("top",m);v._arrange();var c=true;var b=false;if(this.dropDownHorizontalAlignment=="right"||this.rtl){var k=this.container.outerWidth();var s=Math.abs(k-this.host.width());if(k>this.host.width()){this.container.css("left",25+parseInt(Math.round(q))-s+"px")}else{this.container.css("left",25+parseInt(Math.round(q))+s+"px")}}if(this.enableBrowserBoundsDetection){var j=this.testOffset(h,{left:parseInt(this.container.css("left")),top:parseInt(m)},parseInt(this.host.outerHeight()));if(parseInt(this.container.css("top"))!=j.top){b=true;h.css("top",23);h.addClass(this.toThemeProperty("jqx-popup-up"))}else{h.css("top",0)}this.container.css("top",j.top);this.container.css("top",j.top);if(parseInt(this.container.css("left"))!=j.left){this.container.css("left",j.left)}}if(this.animationType=="none"){this.container.css("display","block");a.data(document.body,"openedCombojqxListBoxParent",o);a.data(document.body,"openedCombojqxListBox"+o.element.id,h);h.css("margin-top",0);h.css("opacity",1)}else{this.container.css("display","block");var n=h.outerHeight();h.stop();if(this.animationType=="fade"){h.css("margin-top",0);h.css("opacity",0);h.animate({opacity:1},this.openDelay,function(){o.isanimating=false;o.opening=false;a.data(document.body,"openedCombojqxListBoxParent",o);a.data(document.body,"openedCombojqxListBox"+o.element.id,h)})}else{h.css("opacity",1);if(b){h.css("margin-top",n)}else{h.css("margin-top",-n)}this.isanimating=true;this.opening=true;h.animate({"margin-top":0},this.openDelay,function(){o.isanimating=false;o.opening=false;a.data(document.body,"openedCombojqxListBoxParent",o);a.data(document.body,"openedCombojqxListBox"+o.element.id,h)})}}v._renderItems();if(!b){this.host.addClass(this.toThemeProperty("jqx-rc-b-expanded"));h.addClass(this.toThemeProperty("jqx-rc-t-expanded"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-rc-b-expanded"))}else{this.host.addClass(this.toThemeProperty("jqx-rc-t-expanded"));h.addClass(this.toThemeProperty("jqx-rc-b-expanded"));this.dropdownlistArrow.addClass(this.toThemeProperty("jqx-rc-t-expanded"))}h.addClass(this.toThemeProperty("jqx-fill-state-focus"));this._raiseEvent("0",v)},doMultiSelect:function(c){if(this.checkboxes){this.multiSelect=false}var e=this;if(!this.multiSelect){var g=e.dropdownlistContent.find(".jqx-button");var d="mousedown";if(this.touch){d=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(g,d);this.removeHandler(g.find(".jqx-icon-close"),d);g.remove();this.selectedItems=new Array();this._selectedItems=new Array();return}if(this.validateSelection){var k=this.validateSelection(this.listBox.selectedValue);if(!k){return}}var h=this.selectedItems;if(this.listBox.selectedValue){if(this.selectedItems.indexOf(this.listBox.selectedValue)===-1){var j=this.getItemByValue(this.listBox.selectedValue);if(j&&j.visible){this.selectedItems.push(this.listBox.selectedValue);this._selectedItems.push(j);this._raiseEvent("2",{index:j.index,item:j});this._raiseEvent("4",{index:j.index,item:j})}}this.listBox.selectedIndex=0}var f=this.listBox.items;if(!f){return}for(var b=0;b<f.length;b++){f[b].disabled=false;if(this.selectedItems.indexOf(f[b].value)>=0||this._disabledItems.indexOf(this.value)>=0){f[b].disabled=true}}this.listBox._renderItems();this.searchString="";this.input.val("");var f="";var d="mousedown";var g=e.dropdownlistContent.find(".jqx-button");if(this.touch){d=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(g,d);this.removeHandler(g.find(".jqx-icon-close"),d);g.remove();e.input.detach();if(this.selectedItems.length>0){e.input.css("width","25px");e.input.attr("placeholder","")}else{e.input.css("width","100%");e.input.attr("placeholder",this.placeHolder)}a.each(this.selectedItems,function(l){var n=e.getItemByValue(this);if(!n||e.remoteAutoComplete){n=e._selectedItems[l]}var p=a('<div style="overflow: hidden; float: left;"></div>');p.addClass(e.toThemeProperty("jqx-button"));p.addClass(e.toThemeProperty("jqx-combobox-multi-item"));p.addClass(e.toThemeProperty("jqx-fill-state-normal"));p.addClass(e.toThemeProperty("jqx-rc-all"));if(n){var q=n.label;if(e.renderSelectedItem){var i=e.renderSelectedItem(l,n);if(i){q=i}}if(p[0].innerHTML==""){p[0].innerHTML='<a data-value="'+n.value+'" style="float: left;" href="#">'+q+"</a>"}if(e.rtl){p[0].innerHTML='<a data-value="'+n.value+'" style="float: right;" href="#">'+q+"</a>"}var o=!e.rtl?"right":"left";if(e.showCloseButtons){var m='<div style="position: relative; overflow: hidden; float: '+o+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){m='<div style="position: relative; overflow: hidden; float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>'}if(e.rtl){var m='<div style="position: relative; overflow: hidden; float: '+o+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){m='<div style="position: relative; overflow: hidden; float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -7px; float: none; width: 16px; height: 16px;" class="'+e.toThemeProperty("jqx-icon-close")+'"></div></div>'}}p[0].innerHTML+=m}}else{if(p[0].innerHTML==""){p[0].innerHTML='<a href="#"></a>'}}e.dropdownlistContent.append(p)});e.dropdownlistContent.append(e.input);e.input.val("");if(c!==false){e.input.focus();setTimeout(function(){e.input.focus()},10)}var g=e.dropdownlistContent.find(".jqx-button");if(this.touchMode===true){d="mousedown"}this.addHandler(g,d,function(l){if(l.target.className.indexOf("jqx-icon-close")>=0){return true}if(e.disabled){return true}var m=a(l.target).attr("data-value");var i=e.getItemByValue(m);if(i){e.listBox.selectedValue=null;e.listBox.clearSelection()}e.listBox.scrollTo(0,0);e.open();if(l.preventDefault){l.preventDefault()}if(l.stopPropagation){l.stopPropagation()}return false});this.addHandler(g.find(".jqx-icon-close"),d,function(p){if(e.disabled){return}var r=a(p.target).parent().parent().find("a").attr("data-value");var o=e.getItemByValue(r);if(o||(e.remoteAutoComplete&&!o&&e.selectedItems.indexOf(r)>=0)){e.listBox.selectedValue=null;var l=e.selectedItems.indexOf(r);var n=o&&o.index>=0?o.index:l;if(l>=0){e.selectedItems.splice(l,1);var q=e._selectedItems[l];if(!q){q=o}e._selectedItems.splice(l,1);e._raiseEvent("3",{index:n,type:"mouse",item:q});e._raiseEvent("4",{index:n,type:"mouse",item:q});e.doMultiSelect()}else{for(var m=0;m<e.selectedItems.length;m++){var q=e.selectedItems[m];if(q==r){e.selectedItems.splice(m,1);e._selectedItems.splice(m,1);e._raiseEvent("3",{index:n,type:"mouse",item:o});e._raiseEvent("4",{index:n,type:"mouse",item:o});e.doMultiSelect();break}}}}});e.dropdownlistArrow.height(this.host.height());e._updateInputSelection()},hideListBox:function(h){var f=this.listBoxContainer;var g=this.listBox;var c=this.container;if(this.container[0].style.display=="none"){return}a.jqx.aria(this,"aria-expanded",false);if(h=="keyboard"||h=="mouse"){this.listBox.searchString=""}if(h=="keyboard"||h=="mouse"&&this.multiSelect){this.doMultiSelect()}var d=this;a.data(document.body,"openedCombojqxListBox"+this.element.id,null);if(this.animationType=="none"){this.opening=false;this.container.css("display","none")}else{if(!this.ishiding){var b=f.outerHeight();f.css("margin-top",0);f.stop();this.opening=false;this.isanimating=true;var e=-b;if(parseInt(this.container.coord().top)<parseInt(this.host.coord().top)){e=b}if(this.animationType=="fade"){f.css({opacity:1});f.animate({opacity:0},this.closeDelay,function(){d.isanimating=false;c.css("display","none");d.ishiding=false})}else{f.animate({"margin-top":e},this.closeDelay,function(){d.isanimating=false;c.css("display","none");d.ishiding=false})}}}this.ishiding=true;this.host.removeClass(this.toThemeProperty("jqx-combobox-state-selected"));this.dropdownlistArrowIcon.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-combobox-arrow-selected"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));if(!this.focused){this.host.removeClass(this.toThemeProperty("jqx-combobox-state-focus"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this.dropdownlistContent.removeClass(this.toThemeProperty("jqx-combobox-content-focus"))}this.host.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));this.host.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));this.dropdownlistArrow.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));this._raiseEvent("1",g)},closeOpenedListBox:function(e){var d=e.data.me;var b=a(e.target);var c=e.data.listbox;if(c==null){return true}if(a(e.target).ischildof(e.data.me.host)){return}var f=d;var g=false;a.each(b.parents(),function(){if(this.className!="undefined"){if(this.className.indexOf){if(this.className.indexOf("jqx-listbox")!=-1){g=true;return false}if(this.className.indexOf("jqx-combobox")!=-1){if(d.element.id==this.id){g=true}return false}}}});if(c!=null&&!g){if(d.isOpened()){d.hideListBox("api");d.input.blur()}}return true},loadFromSelect:function(b){this.listBox.loadFromSelect(b);this.clearSelection()},refresh:function(b){this._setSize();this._arrange();if(this.listBox){this.renderSelection()}},resize:function(){this._setSize();this._arrange()},_arrange:function(){var d=parseInt(this.host.width());var j=parseInt(this.host.height());var e=this.arrowSize;var f=this.arrowSize;var h=1;if(!this.showArrow){f=0;e=0;this.dropdownlistArrow.hide();h=0;this.host.css("cursor","arrow")}var b=d-f-1*h;if(b>0){this.dropdownlistContent[0].style.width=b+"px"}if(this.rtl){this.dropdownlistContent[0].style.width=(-1+b+"px")}this.dropdownlistContent[0].style.height=j+"px";this.dropdownlistContent[0].style.left="0px";this.dropdownlistContent[0].style.top="0px";this.dropdownlistArrow[0].style.width=f+1+"px";this.dropdownlistArrow[0].style.height=j+"px";this.dropdownlistArrow[0].style.left=1+b+"px";this.input[0].style.width="100%";if(!this.multiSelect){this.input.height(j)}var c=this.input.height();if(c==0){c=parseInt(this.input.css("font-size"))+3}if(this.input[0].className.indexOf("jqx-rc-all")==-1){this.input.addClass(this.toThemeProperty("jqx-rc-all"))}var i=parseInt(j)/2-parseInt(c)/2;if(i>0){}if(this.rtl){this.dropdownlistArrow.css("left","0px");this.dropdownlistContent.css("left",this.dropdownlistArrow.width());if(a.jqx.browser.msie&&a.jqx.browser.version<=8){this.dropdownlistContent.css("left",1+this.dropdownlistArrow.width())}}if(this.multiSelect){this.input.css("float","left");this.dropdownlistWrapper.parent().css("height","auto");this.dropdownlistContent.css("height","auto");this.dropdownlistWrapper.css("height","auto");this.dropdownlistContent.css("position","relative");this.dropdownlistContent.css("cursor","text");this.host.css("height","auto");this.host.css("min-height",this.height);this.dropdownlistContent.css("min-height",this.height);var j=parseInt(this.host.height());this.dropdownlistArrow.height(j);var g=parseInt(this.host.css("min-height"));var i=parseInt(g)/2-parseInt(c)/2;if(i>0){this.input.css("margin-top",i)}}},destroy:function(){if(this.source&&this.source.unbindBindingUpdate){this.source.unbindBindingUpdate(this.element.id);this.source.unbindBindingUpdate(this.listBoxContainer[0].id);this.source.unbindDownloadComplete(this.element.id);this.source.unbindDownloadComplete(this.listBoxContainer[0].id)}a.jqx.utilities.resize(this.host,null,true);this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBoxContainer,"unselect");this.removeHandler(this.listBoxContainer,"change");this.removeHandler(this.listBoxContainer,"bindingComplete");this.removeHandler(this.dropdownlistWrapper,"selectstart");this.removeHandler(this.dropdownlistWrapper,"mousedown");this.removeHandler(this.host,"keydown");this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBox.content,"click");this.removeHandlers();this.removeHandler(this.input,"keyup.textchange");this.listBoxContainer.jqxListBox("destroy");this.listBoxContainer.remove();this.host.removeClass();this.removeHandler(a(document),"mousedown."+this.id,this.closeOpenedListBox);if(this.touch){this.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id)}this.cinput.remove();delete this.cinput;this.dropdownlistArrow.remove();delete this.dropdownlistArrow;this.dropdownlistArrowIcon.remove();delete this.dropdownlistArrowIcon;delete this.dropdownlistWrapper;delete this.listBoxContainer;delete this.input;delete this.dropdownlistContent;delete this.comboStructure;this.container.remove();delete this.listBox;delete this.container;var b=a.data(this.element,"jqxComboBox");if(b){delete b.instance}this.host.removeData();this.host.remove();delete this.host;delete this.set;delete this.get;delete this.call;delete this.element},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);e.owner=this;if(f==2||f==3||f==4||f==5){e.args=c}var b=this.host.trigger(e);return b},propertyChangedHandler:function(b,c,f,e){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="itemHeight"){b.listBoxContainer.jqxListBox({itemHeight:e})}if(c=="renderSelectedItem"){b.renderSelection("mouse")}if(c=="renderer"){b.listBoxContainer.jqxListBox({renderer:e})}if(c=="enableSelection"){b.listBoxContainer.jqxListBox({enableSelection:e})}if(c=="enableHover"){b.listBoxContainer.jqxListBox({enableHover:e})}if(c==="touchMode"){b.listBoxContainer.jqxListBox({touchMode:e});b.touch=a.jqx.mobile.isTouchDevice();if(b.touchMode===true){b.touch=true}b._updateHandlers()}if(c=="multiSelect"){if(e){b.doMultiSelect(false)}else{b.doMultiSelect(false);b.dropdownlistWrapper.parent().css("height","100%");b.dropdownlistContent.css("height","100");b.dropdownlistWrapper.css("height","100");b.dropdownlistContent.css("position","relative");b.host.css("min-height",null);b._setSize();b._arrange()}}if(c=="showArrow"){b._arrange();if(b.multiSelect){b.doMultiSelect(false)}}if(c=="placeHolder"){b.input.attr("placeholder",b.placeHolder)}if(c=="popupZIndex"){b.listBoxContainer.css({zIndex:b.popupZIndex})}if(c=="promptText"){b.placeHolder=e}if(c=="autoOpen"){b._updateHandlers()}if(c=="renderer"){b.listBox.renderer=b.renderer}if(c=="itemHeight"){b.listBox.itemHeight=e}if(c=="source"){b.input.val("");b.listBoxContainer.jqxListBox({source:b.source});b.renderSelection("mouse");if(b.source==null){b.clearSelection()}if(b.multiSelect){b.selectedItems=new Array();b._selectedItems=new Array();b.doMultiSelect(false)}}if(c=="rtl"){if(e){b.dropdownlistArrow.css("float","left");b.dropdownlistContent.css("float","right")}else{b.dropdownlistArrow.css("float","right");b.dropdownlistContent.css("float","left")}b.listBoxContainer.jqxListBox({rtl:b.rtl})}if(c=="displayMember"||c=="valueMember"){b.listBoxContainer.jqxListBox({displayMember:b.displayMember,valueMember:b.valueMember});b.renderSelection("mouse")}if(c=="autoDropDownHeight"){b.listBoxContainer.jqxListBox({autoHeight:b.autoDropDownHeight});if(b.autoDropDownHeight){b.container.height(b.listBoxContainer.height()+25)}else{b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}b.listBox._arrange();b.listBox._updatescrollbars()}if(c=="dropDownHeight"){if(!b.autoDropDownHeight){b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}}if(c=="dropDownWidth"||c=="scrollBarSize"){var d=b.width;if(b.dropDownWidth!="auto"){d=b.dropDownWidth}b.listBoxContainer.jqxListBox({width:d,scrollBarSize:b.scrollBarSize});b.container.width(parseInt(d)+25)}if(c=="autoComplete"){b._resetautocomplete()}if(c=="checkboxes"){b.listBoxContainer.jqxListBox({checkboxes:b.checkboxes});if(b.checkboxes){b.input.attr("readonly",true);a.jqx.aria(b,"aria-readonly",true)}else{a.jqx.aria(b,"aria-readonly",false)}}if(c=="theme"&&e!=null){b.listBoxContainer.jqxListBox({theme:e});b.listBoxContainer.addClass(b.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){b.listBoxContainer.addClass(b.toThemeProperty("jqx-noshadow"))}a.jqx.utilities.setTheme(f,e,b.host)}if(c=="rtl"){b.render();b.refresh()}if(c=="width"||c=="height"){b._setSize();if(c=="width"){if(b.dropDownWidth=="auto"){var d=b.host.width();b.listBoxContainer.jqxListBox({width:d});b.container.width(parseInt(d)+25)}}b._arrange()}if(c=="selectedIndex"){b.listBox.selectIndex(e);b.renderSelection("mouse")}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxcomplexinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxcomplexinput.js
new file mode 100644 (file)
index 0000000..e811843
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxComplexInput","",{});a.extend(a.jqx._jqxComplexInput.prototype,{defineInstance:function(){var b={width:null,height:null,decimalNotation:"default",value:"",spinButtons:false,spinButtonsStep:1,placeHolder:"",roundedCorners:true,disabled:false,rtl:false,events:["change"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._firefox=a.jqx.browser.browser==="mozilla";b._currentNumber={};b._allowedCharacters=new RegExp(/([\+\-\.0-9i])/i);b.render()},render:function(){var d=this;if(d.element.nodeName.toUpperCase()==="DIV"){d.baseHost=d.host;d.host=d.baseHost.children("input");d.element=d.host[0]}if(d.spinButtons===true){if(!d.baseHost){throw new Error("jqxComplexInput: Invalid HTML structure. Please initialize the complex input from a div with an input and another div inside.")}d._appendSpinButtons()}d._addClasses();d._setSize();d._removeHandlers();d._addHandlers();if(d.decimalNotation==="exponential"&&d.value.toLowerCase().indexOf("e")!==-1){var g=d._exponentialToDecimal(d.value);var f=g.realPart;var c=g.imaginaryPart;var b=c<0?"-":"+";var e=f+" "+b+" "+Math.abs(c)+"i";d._currentNumber={value:e,realPart:f,imaginaryPart:c}}else{d._currentNumber={value:d.value,realPart:d._getReal(d.value),imaginaryPart:d._getImaginary(d.value)}}if(d.decimalNotation==="default"){d.element.value=d.value}else{d._setNotation()}d._refreshPlaceHolder()},refresh:function(b){if(b!==true){this.render()}},destroy:function(){var b=this;b._removeHandlers();b.host.destroy()},val:function(e){var d=this;if(typeof e==="string"||typeof e==="object"&&a.isEmptyObject(e)===false){var h,c;if(typeof e==="string"){e=e.toLowerCase();if(e.indexOf("e")===-1){h=d._getReal(e);c=d._getImaginary(e)}else{var g=d._exponentialToDecimal(e);h=g.realPart*1;c=g.imaginaryPart*1}}else{if(typeof e==="object"&&a.isEmptyObject(e)===false){h=e.real;c=e.imaginary}}var b=c>=0?"+":"-";var f=h+" "+b+" "+Math.abs(c)+"i";if(f!==d._currentNumber.value){d.element.value=f;d._onChange(d.value);if(d.decimalNotation!=="default"){d._setNotation()}}}else{return d.element.value}},getReal:function(){return this._currentNumber.realPart},_getReal:function(f){if(!f||(typeof f==="object"&&a.isEmptyObject(f)===true)){f=this.element.value}var c=a.trim(f),e="";if((f.match(/i/g)||[]).length===0){return parseFloat(c)}if(f.charAt(0)==="+"){c=c.slice(1,f.length)}else{if(f.charAt(0)==="-"){c=c.slice(1,f.length);e="-"}}function g(h){c=c.slice(0,h);c=a.trim(c);return parseFloat(e+""+c)}var b=c.indexOf("+");if(b!==-1){return g(b)}var d=c.indexOf("-");if(d!==-1){return g(d)}return 0},getImaginary:function(){return this._currentNumber.imaginaryPart},_getImaginary:function(f){if(!f||(typeof f==="object"&&a.isEmptyObject(f)===true)){f=this.element.value}if((f.match(/i/g)||[]).length===0){return 0}var e=a.trim(f),d="";if(e.charAt(0)==="-"||e.charAt(0)==="+"){d=e.charAt(0)==="-"?"-":"+";e=a.trim(e.slice(1,f.length))}function g(i,h){e=e.slice(i+1,e.indexOf("i"));e=a.trim(e);if(e===""){e=1}return parseFloat(h+""+e)}var b=e.indexOf("+");if(b!==-1){return g(b,"+")}var c=e.indexOf("-");if(c!==-1){return g(c,"-")}e=d+""+e.slice(0,e.indexOf("i"));if(e===""||e==="+"){return 1}else{if(e==="-"){return -1}else{return parseFloat(e)}}},getDecimalNotation:function(f,c){var e=this;function d(k){var j=k.indexOf("e");var i=k.slice(j+1);var h=k.slice(0,j+1);h=h.replace("e","×10");h+=e._toSuperScript(i);h=h.replace("+","");return h}function b(n){var m=n.indexOf("e");var l=n.slice(m+1);var j=n.slice(0,m);var k=parseInt(l,10)%3;j=j*Math.pow(10,k);var i=n.slice(0,m).length-k-2;if(i>=0){j=j.toFixed(i)}var h=j+"×10"+e._toSuperScript((parseInt(l,10)-k).toString());return h}if(f==="real"){f=e._currentNumber.realPart}else{if(f==="imaginary"){f=e._currentNumber.imaginaryPart}}var g=f.toExponential();if(c==="scientific"){return d(g)}else{if(c==="engineering"){return b(g)}else{return g}}},propertyChangedHandler:function(e,i,d,g){if(g!==d){switch(i){case"width":case"height":e._setSize();break;case"decimalNotation":if(g==="default"){e.element.value=e._currentNumber.value}else{e._setNotation()}break;case"value":e.element.value=g;e._onChange(d);break;case"spinButtons":var k=function(){e.host.removeClass(e.toThemeProperty("jqx-rc-all"));if(e.rtl===false){e.host.addClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-r"))}else{e.host.addClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-l"))}};if(e._spinButtonsContainer){var j=e.host.width();var h=e._spinButtonsContainer.outerWidth();if(g===false){e.host.width(j+h);e._spinButtonsContainer.hide();e.host.addClass(e.toThemeProperty("jqx-rc-all"))}else{e.host.width(j-h);e._spinButtonsContainer.show();k()}}else{if(g===true){var l=a("<div></div>");if(e.baseHost){e.host.after(l);e.render()}else{var c=e.element.id;e.host.removeAttr("id");e.host.wrap('<div id="'+c+'" style="display: inline-block;"></div>');var b=a("#"+c);b.append(l);var f=e.host.data();f.jqxComplexInput.host=b;f.jqxComplexInput.element=b[0];e.baseHost=b;e.baseHost.data(f);e.render()}k()}}break;case"placeHolder":e._refreshPlaceHolder(d);break;case"roundedCorners":if(e._spinButtonsContainer){if(g===true){if(e.rtl===false){e.host.addClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-r"))}else{e.host.addClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-l"))}}else{if(e.rtl===false){e.host.removeClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-r"))}else{e.host.removeClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-l"))}}}else{if(g===true){e.host.addClass(e.toThemeProperty("jqx-rc-all"))}else{e.host.removeClass(e.toThemeProperty("jqx-rc-all"))}}break;case"disabled":if(g===true){e.host.attr("disabled",true);e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled jqx-input-disabled"));if(e._spinButtonsContainer){e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}}else{e.host.removeAttr("disabled");e.host.removeClass(e.toThemeProperty("jqx-fill-state-disabled jqx-input-disabled"));if(e._spinButtonsContainer){e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-fill-state-disabled"))}}break;case"rtl":if(e._spinButtonsContainer){if(g===true){e.host.addClass(e.toThemeProperty("jqx-complex-input-child-rtl"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-complex-input-spin-buttons-container-ltr"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-complex-input-child-rtl jqx-complex-input-spin-buttons-container-rtl"));if(e.roundedCorners===true){e.host.removeClass(e.toThemeProperty("jqx-rc-l"));e.host.addClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-r"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-l"))}}else{e.host.removeClass(e.toThemeProperty("jqx-complex-input-child-rtl"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-complex-input-child-rtl jqx-complex-input-spin-buttons-container-rtl"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-complex-input-spin-buttons-container-ltr"));if(e.roundedCorners===true){e.host.removeClass(e.toThemeProperty("jqx-rc-r"));e.host.addClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.removeClass(e.toThemeProperty("jqx-rc-l"));e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-rc-r"))}}}break;case"theme":a.jqx.utilities.setTheme(d,g,e.host);break}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_appendSpinButtons:function(){var b=this;b._spinButtonsContainer=a(b.baseHost.children("div"));b._spinButtonsContainer.attr("unselectable","on");b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-fill-state-normal jqx-complex-input-child jqx-formatted-input-spin-buttons-container jqx-complex-input-spin-buttons-container"));if(b.rtl===false){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-complex-input-spin-buttons-container-ltr"))}else{b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-complex-input-child-rtl jqx-complex-input-spin-buttons-container-rtl"))}var c='<div unselectable="on" class="'+b.toThemeProperty("jqx-fill-state-normal jqx-formatted-input-spin-button")+'"><div class="'+b.toThemeProperty("jqx-input-icon")+'"></div></div>';b._upbutton=a(c);b._spinButtonsContainer.append(b._upbutton);b._downbutton=a(c);b._spinButtonsContainer.append(b._downbutton);b._upArrow=b._upbutton.find("div");b._upArrow.addClass(b.toThemeProperty("jqx-icon-arrow-up"));b._downArrow=b._downbutton.find("div");b._downArrow.addClass(b.toThemeProperty("jqx-icon-arrow-down"));b._upArrow.add(b._downArrow).attr("unselectable","on")},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget jqx-input jqx-complex-input jqx-widget-content"));if(b.baseHost){b.baseHost.addClass(b.toThemeProperty("jqx-widget jqx-complex-input-parent"));b.host.addClass(b.toThemeProperty("jqx-complex-input-child"))}if(b.roundedCorners===true){if(b._spinButtonsContainer){if(b.rtl===false){b.host.addClass(b.toThemeProperty("jqx-rc-l"));b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-rc-r"))}else{b.host.addClass(b.toThemeProperty("jqx-rc-r"));b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-rc-l"))}}else{b.host.addClass(b.toThemeProperty("jqx-rc-all"))}}if(b.disabled===true){b.host.attr("disabled",true);b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled jqx-input-disabled"));if(b._spinButtonsContainer){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}}if(b.rtl===true){b.host.add(b._spinButtonsContainer).addClass(b.toThemeProperty("jqx-complex-input-child-rtl"))}},_refreshPlaceHolder:function(c){var b=this;if("placeholder" in b.element){b.host.attr("placeHolder",b.placeHolder)}else{if(b.element.value===""||b.element.value===c){b.element.value=b.placeHolder}}},_setSize:function(){var d=this;function b(){var h=d.baseHost.height();var e=parseInt(d.host.css("border-left-width"),10)+parseInt(d.host.css("border-right-width"),10)+parseInt(d.host.css("padding-left"),10)+parseInt(d.host.css("padding-right"),10);var f=0;if(a.jqx.browser.msie&&a.jqx.browser.version<8){f=e;d.host.height(d.baseHost.height()-(parseInt(d.host.css("border-top-width"),10)+parseInt(d.host.css("border-bottom-width"),10)+parseInt(d.host.css("padding-top"),10)+parseInt(d.host.css("padding-bottom"),10))*2)}if(d._spinButtonsContainer){var g=typeof d.width==="string"&&d.width.charAt(d.width.length-1)==="%"?1:0;d.host.width(d.baseHost.width()-e-d._spinButtonsContainer.outerWidth()-f-g);if(a.jqx.browser.msie&&a.jqx.browser.version<8){d._spinButtonsContainer.height(h-(parseInt(d._spinButtonsContainer.css("border-top-width"),10)+parseInt(d._spinButtonsContainer.css("border-bottom-width"),10)+parseInt(d._spinButtonsContainer.css("padding-top"),10)+parseInt(d._spinButtonsContainer.css("padding-bottom"),10))*2)}}else{d.host.width(d.baseHost.width()-e-f)}}if(d.baseHost){d.baseHost.width(d.width);d.baseHost.height(d.height);b()}else{d.host.width(d.width);d.host.height(d.height)}if(a.jqx.browser.msie&&a.jqx.browser.version<9){d.host.css("line-height",d.host.height()+"px")}var c=d.baseHost||d.host;a.jqx.utilities.resize(c,function(){b();if((a.jqx.browser.msie&&a.jqx.browser.version<9||!a.jqx.browser.msie)&&typeof d.height==="string"&&d.height.charAt(d.height.length-1)==="%"){d.host.css("line-height",d.host.height()+"px")}})},_addHandlers:function(){var d=this,e;if(d.baseHost){e=d.baseHost[0].id}else{e=d.element.id}var b=[8,9,13,32,35,36,37,38,39,40,46];d.addHandler(d.host,"focus.jqxComplexInput"+e,function(){d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"));if(d._spinButtonsContainer){d._spinButtonsContainer.addClass(d.toThemeProperty("jqx-fill-state-focus"))}if(!("placeholder" in d.element)&&(d.element.value===d.placeHolder)){d.element.value=""}if(d.decimalNotation!=="default"){var f=d._getCaretPosition();d.element.value=d._currentNumber.value;d._setCaretPosition(f)}});d.addHandler(d.host,"blur.jqxComplexInput"+e,function(){d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"));if(d._spinButtonsContainer){d._spinButtonsContainer.removeClass(d.toThemeProperty("jqx-fill-state-focus"))}if(d.element.value!==d.value||(("placeholder" in d.element)||(!("placeholder" in d.element)&&d.element.value===""))){d._onChange(d.value)}if(!("placeholder" in d.element)&&(d.element.value===""||d.element.value===d.placeHolder)){d.element.value=d.placeHolder}if(d.decimalNotation!=="default"){d._setNotation()}});d.addHandler(d.host,"keydown.jqxComplexInput"+e,function(h){var i=!h.charCode?h.which:h.charCode;if(h.ctrlKey===true&&(i===67||i===86||i===88)){return}var g=String.fromCharCode(i);if(i>=96&&i<=105){g=(i-96).toString();i=i-48}if((!d._firefox&&i===187||d._firefox&&i===61)&&h.shiftKey===true){g="+"}else{if((!d._firefox&&i===189||d._firefox&&i===173)&&h.shiftKey===false){g="-"}else{if(i===190&&h.shiftKey===false){g="."}}}var k=d._allowedCharacters.test(g);if(k===true){if(g==="+"||g==="-"){var f=(d.element.value.match(/-/g)||[]).length+(d.element.value.match(/\+/g)||[]).length;if(f>1){return false}}else{if(g==="."){var j=(d.element.value.match(/\./g)||[]).length;if(j>1){return false}}else{if(g.toLowerCase()==="i"){if(d.element.value.indexOf(g.toLowerCase())!==-1){return false}}}}}else{if(b.indexOf(i)!==-1){return}else{return false}}});d.addHandler(d.host,"keypress.jqxComplexInput"+e,function(f){var g=!f.charCode?f.which:f.charCode;if(g===13){if(d.element.value!==d.value){d._onChange(d.value)}}});if(d._spinButtonsContainer){var c=d._upbutton.add(d._downbutton);d.addHandler(d._upbutton,"mousedown.jqxComplexInputSpinButtonUp"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._upbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._incrementOrDecrement(true)}});d.addHandler(d._upbutton,"mouseup.jqxComplexInputSpinButtonUp"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._upbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"))}});d.addHandler(d._downbutton,"mousedown.jqxComplexInputSpinButtonDown"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._downbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._incrementOrDecrement(false)}});d.addHandler(d._downbutton,"mouseup.jqxComplexInputSpinButtonDown"+e,function(){if(!d.disabled&&d.value!==""&&d.value!==null){d._downbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"))}});d.addHandler(c,"mouseenter.jqxComplexInputSpinButtons"+e,function(g){if(!d.disabled&&d.value!==""&&d.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){d._upbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))}else{d._downbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))}}});d.addHandler(c,"mouseleave.jqxComplexInputSpinButtons"+e,function(g){if(!d.disabled&&d.value!==""&&d.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){d._upbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))}else{d._downbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))}}});d.addHandler(a("body"),"mouseup.jqxComplexInputSpinButtons"+e,function(){d._upbutton.add(d._downbutton).removeClass(d.toThemeProperty("jqx-fill-state-pressed"))})}},_removeHandlers:function(){var c=this,d;if(c.baseHost){d=c.baseHost[0].id}else{d=c.element.id}c.removeHandler(c.host,"focus.jqxComplexInput"+d);c.removeHandler(c.host,"blur.jqxComplexInput"+d);c.removeHandler(c.host,"keydown.jqxComplexInput"+d);c.removeHandler(c.host,"keypress.jqxComplexInput"+d);if(c._spinButtonsContainer){var b=c._upbutton.add(c._downbutton);c.removeHandler(c._upbutton,"mousedown.jqxComplexInputSpinButtonUp"+d);c.removeHandler(c._upbutton,"mouseup.jqxComplexInputSpinButtonUp"+d);c.removeHandler(c._downbutton,"mousedown.jqxComplexInputSpinButtonDown"+d);c.removeHandler(c._downbutton,"mouseup.jqxComplexInputSpinButtonDown"+d);c.removeHandler(b,"mouseenter.jqxComplexInputSpinButtons"+d);c.removeHandler(b,"mouseleave.jqxComplexInputSpinButtons"+d);c.removeHandler(a("body"),"mouseup.jqxComplexInputSpinButtons"+d)}},_onChange:function(c){var l=this,k,o;var n=l.element.value.toLowerCase();if(a.trim(n)!==""&&a.trim(n)!==l.placeHolder){if(n.indexOf("++")!==-1||n.indexOf("+-")!==-1){var f=n.indexOf("+");n=n.slice(0,f+1)+""+n.slice(f+2,n.length)}else{if(n.indexOf("--")!==-1||n.indexOf("-+")!==-1){var j=n.indexOf("-");n=n.slice(0,j+1)+""+n.slice(j+2,n.length)}}if(n.indexOf("..")!==-1){var d=n.indexOf(".");n=n.slice(0,d+1)+""+n.slice(d+2,n.length)}var m=l._getReal(n);var g=l._getImaginary(n);var b=" ";var e=g>=0?"+":"-";var h="i";k=m;o=g;if(isNaN(k)||isNaN(o)){l.element.value=c;return}l.element.value=m+""+b+""+e+""+b+""+Math.abs(g)+""+h;l.value=l.element.value}else{k=0;o=0;l.value=""}if(l.value!==c){l._currentNumber={value:l.value,realPart:k,imaginaryPart:o};l._raiseEvent("0",{value:l.value,oldValue:c,realPart:k,imaginaryPart:o})}},_incrementOrDecrement:function(j){var e=this,g,l,h=e.host.is(":focus"),k=e.element.value,i=e._currentNumber.realPart,d=e._currentNumber.imaginaryPart;if(h){g=e._getCaretPosition()}if(d>=0){l=k.indexOf("+")}else{if(k.charAt(0)==="-"){k=k.slice(1,k.length)}l=k.indexOf("-")}function f(o){var m=o.toString(),r=m.indexOf("."),q,p,n;if(r!==-1){p=parseInt(m.slice(0,r),10);n=m.slice(m.indexOf(".")+1);q="."}else{p=o;n="";q=""}if(j===true){o=p+e.spinButtonsStep}else{o=p-e.spinButtonsStep}o=parseFloat(o+""+q+""+n);return o}if(g===undefined||g<=l){i=f(i)}else{d=f(d)}var c=d>=0?"+":"-";var b=i+" "+c+" "+Math.abs(d)+"i";e.element.value=b;e._onChange(e.value);if(h){e._setCaretPosition(g)}else{if(e.decimalNotation!=="default"){e._setNotation()}}},_getCaretPosition:function(){var c=this.element;if("selectionStart" in c){return c.selectionStart}else{if(document.selection){c.focus();var d=document.selection.createRange();var b=document.selection.createRange().text.length;d.moveStart("character",-c.value.length);return d.text.length-b}}},_setCaretPosition:function(c){var b=this.element;setTimeout(function(){if("selectionStart" in b){b.focus();b.setSelectionRange(c,c)}else{var d=b.createTextRange();d.collapse(true);d.moveEnd("character",c);d.moveStart("character",c);d.select()}},10)},_exponentialToDecimal:function(h){var f=h.indexOf("e")+2;var e=h.slice(f);var b=e.indexOf("+");var g=e.indexOf("-");if(b!==-1&&(b<g||g===-1)){f=b}else{f=g}var d=e.slice(f);var i=h.replace(d,"");d=d.slice(0,d.length-1);var c=d.charAt(0);d=a.trim(d.slice(1));if(c==="-"){d="-"+d}i=parseFloat(i).toFixed(20)*1;d=parseFloat(d).toFixed(20)*1;return{realPart:i,imaginaryPart:d}},_setNotation:function(){var d=this;var e=d.getDecimalNotation(d._currentNumber.realPart,d.decimalNotation);var c=d.getDecimalNotation(Math.abs(d._currentNumber.imaginaryPart),d.decimalNotation);var b=d._currentNumber.imaginaryPart>=0?"+":"-";d.element.value=e+" "+b+" "+c+"i"},_toSuperScript:function(h,g){var f="-0123456789";var d="⁻⁰¹²³⁴⁵⁶⁷⁸⁹";var c="";for(var e=0;e<h.length;e++){if(g===true){var b=d.indexOf(h.charAt(e));c+=(b!==-1?f[b]:h[e])}else{var j=f.indexOf(h.charAt(e));c+=(j!==-1?d[j]:h[e])}}return c}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxcore.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxcore.js
new file mode 100644 (file)
index 0000000..38750ef
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+var jqxBaseFramework=window.minQuery||window.jQuery;(function(a){a.jqx=a.jqx||{};a.jqx.define=function(b,c,d){b[c]=function(){if(this.baseType){this.base=new b[this.baseType]();this.base.defineInstance()}this.defineInstance()};b[c].prototype.defineInstance=function(){};b[c].prototype.base=null;b[c].prototype.baseType=undefined;if(d&&b[d]){b[c].prototype.baseType=d}};a.jqx.invoke=function(e,d){if(d.length==0){return}var f=typeof(d)==Array||d.length>0?d[0]:d;var c=typeof(d)==Array||d.length>1?Array.prototype.slice.call(d,1):a({}).toArray();while(e[f]==undefined&&e.base!=null){if(e[f]!=undefined&&a.isFunction(e[f])){return e[f].apply(e,c)}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]!=undefined&&a.isFunction(e[b])){return e[b].apply(e,c)}}e=e.base}if(e[f]!=undefined&&a.isFunction(e[f])){return e[f].apply(e,c)}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]!=undefined&&a.isFunction(e[b])){return e[b].apply(e,c)}}return};a.jqx.hasProperty=function(c,b){if(typeof(b)=="object"){for(var e in b){var d=c;while(d){if(d.hasOwnProperty(e)){return true}if(d.hasOwnProperty(e.toLowerCase())){return true}d=d.base}return false}}else{while(c){if(c.hasOwnProperty(b)){return true}if(c.hasOwnProperty(b.toLowerCase())){return true}c=c.base}}return false};a.jqx.hasFunction=function(e,d){if(d.length==0){return false}if(e==undefined){return false}var f=typeof(d)==Array||d.length>0?d[0]:d;var c=typeof(d)==Array||d.length>1?Array.prototype.slice.call(d,1):{};while(e[f]==undefined&&e.base!=null){if(e[f]&&a.isFunction(e[f])){return true}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]&&a.isFunction(e[b])){return true}}e=e.base}if(e[f]&&a.isFunction(e[f])){return true}if(typeof f=="string"){var b=f.toLowerCase();if(e[b]&&a.isFunction(e[b])){return true}}return false};a.jqx.isPropertySetter=function(c,b){if(b.length==1&&typeof(b[0])=="object"){return true}if(b.length==2&&typeof(b[0])=="string"&&!a.jqx.hasFunction(c,b)){return true}return false};a.jqx.validatePropertySetter=function(f,d,b){if(!a.jqx.propertySetterValidation){return true}if(d.length==1&&typeof(d[0])=="object"){for(var e in d[0]){var g=f;while(!g.hasOwnProperty(e)&&g.base){g=g.base}if(!g||!g.hasOwnProperty(e)){if(!b){var c=g.hasOwnProperty(e.toString().toLowerCase());if(!c){throw"Invalid property: "+e}else{return true}}return false}}return true}if(d.length!=2){if(!b){throw"Invalid property: "+d.length>=0?d[0]:""}return false}while(!f.hasOwnProperty(d[0])&&f.base){f=f.base}if(!f||!f.hasOwnProperty(d[0])){if(!b){throw"Invalid property: "+d[0]}return false}return true};a.jqx.set=function(f,e){var d=0;if(e.length==1&&typeof(e[0])=="object"){if(f.isInitialized&&Object.keys&&Object.keys(e[0]).length>1){var g=!f.base?f.element:f.base.element;var j=a.data(g,f.widgetName).initArgs;if(JSON&&JSON.stringify&&e[0]&&j[0]){try{if(JSON.stringify(e[0])==JSON.stringify(j[0])){return}}catch(h){}}f.batchUpdate=e[0];var b={};var c={};a.each(e[0],function(k,l){var m=f;while(!m.hasOwnProperty(k)&&m.base!=null){m=m.base}if(m.hasOwnProperty(k)){if(f[k]!=l){b[k]=f[k];c[k]=l;d++}}else{if(m.hasOwnProperty(k.toLowerCase())){if(f[k.toLowerCase()]!=l){b[k.toLowerCase()]=f[k.toLowerCase()];c[k.toLowerCase()]=l;d++}}}});if(d<2){f.batchUpdate=null}}a.each(e[0],function(k,l){var m=f;while(!m.hasOwnProperty(k)&&m.base!=null){m=m.base}if(m.hasOwnProperty(k)){a.jqx.setvalueraiseevent(m,k,l)}else{if(m.hasOwnProperty(k.toLowerCase())){a.jqx.setvalueraiseevent(m,k.toLowerCase(),l)}else{if(a.jqx.propertySetterValidation){throw"jqxCore: invalid property '"+k+"'"}}}});if(f.batchUpdate!=null){f.batchUpdate=null;if(f.propertiesChangedHandler&&d>1){f.propertiesChangedHandler(f,b,c)}}}else{if(e.length==2){while(!f.hasOwnProperty(e[0])&&f.base){f=f.base}if(f.hasOwnProperty(e[0])){a.jqx.setvalueraiseevent(f,e[0],e[1])}else{if(f.hasOwnProperty(e[0].toLowerCase())){a.jqx.setvalueraiseevent(f,e[0].toLowerCase(),e[1])}else{if(a.jqx.propertySetterValidation){throw"jqxCore: invalid property '"+e[0]+"'"}}}}}};a.jqx.setvalueraiseevent=function(c,d,e){var b=c[d];c[d]=e;if(!c.isInitialized){return}if(c.propertyChangedHandler!=undefined){c.propertyChangedHandler(c,d,b,e)}if(c.propertyChangeMap!=undefined&&c.propertyChangeMap[d]!=undefined){c.propertyChangeMap[d](c,d,b,e)}};a.jqx.get=function(e,d){if(d==undefined||d==null){return undefined}if(e.propertyMap){var c=e.propertyMap(d);if(c!=null){return c}}if(e.hasOwnProperty(d)){return e[d]}if(e.hasOwnProperty(d.toLowerCase())){return e[d.toLowerCase()]}var b=undefined;if(typeof(d)==Array){if(d.length!=1){return undefined}b=d[0]}else{if(typeof(d)=="string"){b=d}}while(!e.hasOwnProperty(b)&&e.base){e=e.base}if(e){return e[b]}return undefined};a.jqx.serialize=function(e){var b="";if(a.isArray(e)){b="[";for(var d=0;d<e.length;d++){if(d>0){b+=", "}b+=a.jqx.serialize(e[d])}b+="]"}else{if(typeof(e)=="object"){b="{";var c=0;for(var d in e){if(c++>0){b+=", "}b+=d+": "+a.jqx.serialize(e[d])}b+="}"}else{b=e.toString()}}return b};a.jqx.propertySetterValidation=true;a.jqx.jqxWidgetProxy=function(g,c,b){var d=a(c);var f=a.data(c,g);if(f==undefined){return undefined}var e=f.instance;if(a.jqx.hasFunction(e,b)){return a.jqx.invoke(e,b)}if(a.jqx.isPropertySetter(e,b)){if(a.jqx.validatePropertySetter(e,b)){a.jqx.set(e,b);return undefined}}else{if(typeof(b)=="object"&&b.length==0){return}else{if(typeof(b)=="object"&&b.length==1&&a.jqx.hasProperty(e,b[0])){return a.jqx.get(e,b[0])}else{if(typeof(b)=="string"&&a.jqx.hasProperty(e,b[0])){return a.jqx.get(e,b)}}}}throw"jqxCore: Invalid parameter '"+a.jqx.serialize(b)+"' does not exist.";return undefined};a.jqx.applyWidget=function(c,d,k,l){var g=false;try{g=window.MSApp!=undefined}catch(f){}var m=a(c);if(!l){l=new a.jqx["_"+d]()}else{l.host=m;l.element=c}if(c.id==""){c.id=a.jqx.utilities.createId()}var j={host:m,element:c,instance:l,initArgs:k};l.widgetName=d;a.data(c,d,j);a.data(c,"jqxWidget",j.instance);var h=new Array();var l=j.instance;while(l){l.isInitialized=false;h.push(l);l=l.base}h.reverse();h[0].theme=a.jqx.theme||"";a.jqx.jqxWidgetProxy(d,c,k);for(var b in h){l=h[b];if(b==0){l.host=m;l.element=c;l.WinJS=g}if(l!=undefined){if(l.definedInstance){l.definedInstance()}if(l.createInstance!=null){if(g){MSApp.execUnsafeLocalFunction(function(){l.createInstance(k)})}else{l.createInstance(k)}}}}for(var b in h){if(h[b]!=undefined){h[b].isInitialized=true}}if(g){MSApp.execUnsafeLocalFunction(function(){j.instance.refresh(true)})}else{j.instance.refresh(true)}};a.jqx.jqxWidget=function(b,c,f){var j=false;try{jqxArgs=Array.prototype.slice.call(f,0)}catch(h){jqxArgs=""}try{j=window.MSApp!=undefined}catch(h){}var g=b;var l="";if(c){l="_"+c}a.jqx.define(a.jqx,"_"+g,l);var k=new Array();if(!window[g]){var d=function(m){if(m==null){return""}var e=a.type(m);switch(e){case"string":case"number":case"date":case"boolean":case"bool":if(m===null){return""}return m.toString()}var n="";a.each(m,function(p){var r=this;if(p>0){n+=", "}n+="[";var o=0;if(a.type(r)=="object"){for(var q in r){if(o>0){n+=", "}n+="{"+q+":"+r[q]+"}";o++}}else{if(o>0){n+=", "}n+="{"+p+":"+r+"}";o++}n+="]"});return n};window[g]=function(e,r){var m=[];if(!r){r={}}m.push(r);var n=e;if(a.type(n)==="object"&&e[0]){n=e[0].id;if(n===""){n=e[0].id=a.jqx.utilities.createId()}}if(window.jqxWidgets&&window.jqxWidgets[n]){if(r){a.each(window.jqxWidgets[n],function(s){var t=a(this.element).data();if(t&&t.jqxWidget){a(this.element)[g](r)}})}if(window.jqxWidgets[n].length==1){var p=a(window.jqxWidgets[n][0].widgetInstance.element).data();if(p&&p.jqxWidget){return window.jqxWidgets[n][0]}}var p=a(window.jqxWidgets[n][0].widgetInstance.element).data();if(p&&p.jqxWidget){return window.jqxWidgets[n]}}var o=a(e);if(o.length===0){throw new Error("Invalid Selector - "+e+"! Please, check whether the used ID or CSS Class name is correct.")}var q=[];a.each(o,function(v){var x=o[v];var u=null;if(!k[g]){var y=x.id;x.id="";u=a(x).clone();x.id=y}a.jqx.applyWidget(x,g,m,undefined);if(!k[g]){var t=a.data(x,"jqxWidget");var w=u[g]().data().jqxWidget.defineInstance();var s=function(A){var z=a.data(A,"jqxWidget");this.widgetInstance=z;var B=a.extend(this,z);B.on=function(C,D){B.addHandler(B.host,C,D)};B.off=function(C){B.removeHandler(B.host,C)};return B};k[g]=s;a.each(w,function(A,z){Object.defineProperty(s.prototype,A,{get:function(){if(this.widgetInstance){return this.widgetInstance[A]}return z},set:function(C){if(this.widgetInstance&&this.widgetInstance[A]!=C){if(this.widgetInstance[A]!=C&&d(this.widgetInstance[A])!=d(C)){var B={};B[A]=C;this.widgetInstance.host[g](B);this.widgetInstance[A]=C}}}})})}var t=new k[g](x);q.push(t);if(!window.jqxWidgets){window.jqxWidgets=new Array()}if(!window.jqxWidgets[n]){window.jqxWidgets[n]=new Array()}window.jqxWidgets[n].push(t)});if(q.length===1){return q[0]}return q}}a.fn[g]=function(){var e=Array.prototype.slice.call(arguments,0);if(e.length==0||(e.length==1&&typeof(e[0])=="object")){if(this.length==0){if(this.selector){throw new Error("Invalid Selector - "+this.selector+"! Please, check whether the used ID or CSS Class name is correct.")}else{throw new Error("Invalid Selector! Please, check whether the used ID or CSS Class name is correct.")}}return this.each(function(){var p=a(this);var o=this;var q=a.data(o,g);if(q==null){a.jqx.applyWidget(o,g,e,undefined)}else{a.jqx.jqxWidgetProxy(g,this,e)}})}else{if(this.length==0){if(this.selector){throw new Error("Invalid Selector - "+this.selector+"! Please, check whether the used ID or CSS Class name is correct.")}else{throw new Error("Invalid Selector! Please, check whether the used ID or CSS Class name is correct.")}}var n=null;var m=0;this.each(function(){var o=a.jqx.jqxWidgetProxy(g,this,e);if(m==0){n=o;m++}else{if(m==1){var p=[];p.push(n);n=p}n.push(o)}})}return n};try{a.extend(a.jqx["_"+g].prototype,Array.prototype.slice.call(f,0)[0])}catch(h){}a.extend(a.jqx["_"+g].prototype,{toThemeProperty:function(e,m){return a.jqx.toThemeProperty(this,e,m)}});a.jqx["_"+g].prototype.refresh=function(){if(this.base){this.base.refresh(true)}};a.jqx["_"+g].prototype.createInstance=function(){};a.jqx["_"+g].prototype.applyTo=function(n,m){if(!(m instanceof Array)){var e=[];e.push(m);m=e}a.jqx.applyWidget(n,g,m,this)};a.jqx["_"+g].prototype.getInstance=function(){return this};a.jqx["_"+g].prototype.propertyChangeMap={};a.jqx["_"+g].prototype.addHandler=function(o,e,m,n){a.jqx.addHandler(o,e,m,n)};a.jqx["_"+g].prototype.removeHandler=function(n,e,m){a.jqx.removeHandler(n,e,m)}};a.jqx.toThemeProperty=function(c,d,h){if(c.theme==""){return d}var g=d.split(" ");var b="";for(var f=0;f<g.length;f++){if(f>0){b+=" "}var e=g[f];if(h!=null&&h){b+=e+"-"+c.theme}else{b+=e+" "+e+"-"+c.theme}}return b};a.jqx.addHandler=function(g,h,e,f){var c=h.split(" ");for(var b=0;b<c.length;b++){var d=c[b];if(window.addEventListener){switch(d){case"mousewheel":if(a.jqx.browser.mozilla){g[0].addEventListener("DOMMouseScroll",e,false)}else{g[0].addEventListener("mousewheel",e,false)}continue;case"mousemove":if(!f){g[0].addEventListener("mousemove",e,false);continue}break}}if(f==undefined||f==null){if(g.on){g.on(d,e)}else{g.bind(d,e)}}else{if(g.on){g.on(d,f,e)}else{g.bind(d,f,e)}}}};a.jqx.removeHandler=function(f,g,e){if(!g){if(f.off){f.off()}else{f.unbind()}return}var c=g.split(" ");for(var b=0;b<c.length;b++){var d=c[b];if(window.removeEventListener){switch(d){case"mousewheel":if(a.jqx.browser.mozilla){f[0].removeEventListener("DOMMouseScroll",e,false)}else{f[0].removeEventListener("mousewheel",e,false)}continue;case"mousemove":if(e){f[0].removeEventListener("mousemove",e,false);continue}break}}if(d==undefined){if(f.off){f.off()}else{f.unbind()}continue}if(e==undefined){if(f.off){f.off(d)}else{f.unbind(d)}}else{if(f.off){f.off(d,e)}else{f.unbind(d,e)}}}};a.jqx.theme=a.jqx.theme||"";a.jqx.resizeDelay=a.jqx.resizeDelay||10;a.jqx.ready=function(){a(window).trigger("jqxReady")};a.jqx.init=function(){a.each(arguments[0],function(b,c){if(b=="theme"){a.jqx.theme=c}if(b=="scrollBarSize"){a.jqx.utilities.scrollBarSize=c}if(b=="touchScrollBarSize"){a.jqx.utilities.touchScrollBarSize=c}if(b=="scrollBarButtonsVisibility"){a.jqx.utilities.scrollBarButtonsVisibility=c}})};a.jqx.utilities=a.jqx.utilities||{};a.extend(a.jqx.utilities,{scrollBarSize:15,touchScrollBarSize:10,scrollBarButtonsVisibility:"visible",createId:function(){var b=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return"jqxWidget"+b()+b()},setTheme:function(f,g,e){if(typeof e==="undefined"){return}var h=e[0].className.split(" "),b=[],j=[],d=e.children();for(var c=0;c<h.length;c+=1){if(h[c].indexOf(f)>=0){if(f.length>0){b.push(h[c]);j.push(h[c].replace(f,g))}else{j.push(h[c].replace("-"+g,"")+"-"+g)}}}this._removeOldClasses(b,e);this._addNewClasses(j,e);for(var c=0;c<d.length;c+=1){this.setTheme(f,g,a(d[c]))}},_removeOldClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.removeClass(d[b])}},_addNewClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.addClass(d[b])}},getOffset:function(b){var d=a.jqx.mobile.getLeftPos(b[0]);var c=a.jqx.mobile.getTopPos(b[0]);return{top:c,left:d}},resize:function(d,m,l,k){if(k===undefined){k=true}var g=-1;var f=this;var c=function(o){if(!f.hiddenWidgets){return -1}var p=-1;for(var n=0;n<f.hiddenWidgets.length;n++){if(o.id){if(f.hiddenWidgets[n].id==o.id){p=n;break}}else{if(f.hiddenWidgets[n].id==o[0].id){p=n;break}}}return p};if(this.resizeHandlers){for(var e=0;e<this.resizeHandlers.length;e++){if(d.id){if(this.resizeHandlers[e].id==d.id){g=e;break}}else{if(this.resizeHandlers[e].id==d[0].id){g=e;break}}}if(l===true){if(g!=-1){this.resizeHandlers.splice(g,1)}if(this.resizeHandlers.length==0){var j=a(window);if(j.off){j.off("resize.jqx");j.off("orientationchange.jqx");j.off("orientationchanged.jqx")}else{j.unbind("resize.jqx");j.unbind("orientationchange.jqx");j.unbind("orientationchanged.jqx")}this.resizeHandlers=null}var b=c(d);if(b!=-1&&this.hiddenWidgets){this.hiddenWidgets.splice(b,1)}return}}else{if(l===true){var b=c(d);if(b!=-1&&this.hiddenWidgets){this.hiddenWidgets.splice(b,1)}return}}var f=this;var h=function(p,x){if(!f.resizeHandlers){return}var y=function(C){var B=-1;var D=C.parentNode;while(D){B++;D=D.parentNode}return B};var o=function(E,C){if(!E.widget||!C.widget){return 0}var D=y(E.widget[0]);var B=y(C.widget[0]);try{if(D<B){return -1}if(D>B){return 1}}catch(F){var G=F}return 0};var q=function(C){if(f.hiddenWidgets.length>0){f.hiddenWidgets.sort(o);var B=function(){var E=false;var G=new Array();for(var F=0;F<f.hiddenWidgets.length;F++){var D=f.hiddenWidgets[F];if(a.jqx.isHidden(D.widget)){E=true;G.push(D)}else{if(D.callback){D.callback(x)}}}f.hiddenWidgets=G;if(!E){clearInterval(f.__resizeInterval)}};if(C==false){B();if(f.__resizeInterval){clearInterval(f.__resizeInterval)}return}if(f.__resizeInterval){clearInterval(f.__resizeInterval)}f.__resizeInterval=setInterval(function(){B()},100)}};if(f.hiddenWidgets&&f.hiddenWidgets.length>0){q(false)}f.hiddenWidgets=new Array();f.resizeHandlers.sort(o);for(var u=0;u<f.resizeHandlers.length;u++){var A=f.resizeHandlers[u];var w=A.widget;var t=A.data;if(!t){continue}if(!t.jqxWidget){continue}var n=t.jqxWidget.width;var z=t.jqxWidget.height;if(t.jqxWidget.base){if(n==undefined){n=t.jqxWidget.base.width}if(z==undefined){z=t.jqxWidget.base.height}}if(n===undefined&&z===undefined){n=t.jqxWidget.element.style.width;z=t.jqxWidget.element.style.height}var v=false;if(n!=null&&n.toString().indexOf("%")!=-1){v=true}if(z!=null&&z.toString().indexOf("%")!=-1){v=true}if(a.jqx.isHidden(w)){if(c(w)===-1){if(v||p===true){if(A.data.nestedWidget!==true){f.hiddenWidgets.push(A)}}}}else{if(p===undefined||p!==true){if(v){A.callback(x);if(f.hiddenWidgets.indexOf(A)>=0){f.hiddenWidgets.splice(f.hiddenWidgets.indexOf(A),1)}}if(t.jqxWidget.element){var r=t.jqxWidget.element.className;if(r.indexOf("dropdownlist")>=0||r.indexOf("datetimeinput")>=0||r.indexOf("combobox")>=0||r.indexOf("menu")>=0){if(t.jqxWidget.isOpened){var s=t.jqxWidget.isOpened();if(s){t.jqxWidget.close()}}}}}}}q()};if(!this.resizeHandlers){this.resizeHandlers=new Array();var j=a(window);if(j.on){this._resizeTimer=null;this._initResize=null;j.on("resize.jqx",function(n){if(f._resizeTimer!=undefined){clearTimeout(f._resizeTimer)}if(!f._initResize){f._initResize=true;h(null,"resize")}else{f._resizeTimer=setTimeout(function(){h(null,"resize")},a.jqx.resizeDelay)}});j.on("orientationchange.jqx",function(n){h(null,"orientationchange")});j.on("orientationchanged.jqx",function(n){h(null,"orientationchange")})}else{j.bind("resize.jqx",function(n){h(null,"orientationchange")});j.bind("orientationchange.jqx",function(n){h(null,"orientationchange")});j.bind("orientationchanged.jqx",function(n){h(null,"orientationchange")})}}if(k){if(g===-1){this.resizeHandlers.push({id:d[0].id,widget:d,callback:m,data:d.data()})}}if(a.jqx.isHidden(d)&&k===true){h(true)}a.jqx.resize=function(){h(null,"resize")}},html:function(c,d){if(!a(c).on){return a(c).html(d)}try{return a.access(c,function(s){var f=c[0]||{},m=0,j=c.length;if(s===undefined){return f.nodeType===1?f.innerHTML.replace(rinlinejQuery,""):undefined}var r=/<(?:script|style|link)/i,n="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",h=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,p=/<([\w:]+)/,g=/<(?:script|object|embed|option|style)/i,k=new RegExp("<(?:"+n+")[\\s/>]","i"),q=/^\s+/,t={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};if(typeof s==="string"&&!r.test(s)&&(a.support.htmlSerialize||!k.test(s))&&(a.support.leadingWhitespace||!q.test(s))&&!t[(p.exec(s)||["",""])[1].toLowerCase()]){s=s.replace(h,"<$1></$2>");try{for(;m<j;m++){f=this[m]||{};if(f.nodeType===1){a.cleanData(f.getElementsByTagName("*"));f.innerHTML=s}}f=0}catch(o){}}if(f){c.empty().append(s)}},null,d,arguments.length)}catch(b){return a(c).html(d)}},hasTransform:function(d){var c="";c=d.css("transform");if(c==""||c=="none"){c=d.parents().css("transform");if(c==""||c=="none"){var b=a.jqx.utilities.getBrowser();if(b.browser=="msie"){c=d.css("-ms-transform");if(c==""||c=="none"){c=d.parents().css("-ms-transform")}}else{if(b.browser=="chrome"){c=d.css("-webkit-transform");if(c==""||c=="none"){c=d.parents().css("-webkit-transform")}}else{if(b.browser=="opera"){c=d.css("-o-transform");if(c==""||c=="none"){c=d.parents().css("-o-transform")}}else{if(b.browser=="mozilla"){c=d.css("-moz-transform");if(c==""||c=="none"){c=d.parents().css("-moz-transform")}}}}}}else{return c!=""&&c!="none"}}if(c==""||c=="none"){c=a(document.body).css("transform")}return c!=""&&c!="none"&&c!=null},getBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(c)||/(webkit)[ \/]([\w.]+)/.exec(c)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(c)||/(msie) ([\w.]+)/.exec(c)||c.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(c)||[];var d={browser:b[1]||"",version:b[2]||"0"};if(c.indexOf("rv:11.0")>=0&&c.indexOf(".net4.0c")>=0){d.browser="msie";d.version="11";b[1]="msie"}if(c.indexOf("edge")>=0){d.browser="msie";d.version="12";b[1]="msie"}d[b[1]]=b[1];return d}});a.jqx.browser=a.jqx.utilities.getBrowser();a.jqx.isHidden=function(c){if(!c||!c[0]){return false}var b=c[0].offsetWidth,d=c[0].offsetHeight;if(b===0||d===0){return true}else{return false}};a.jqx.ariaEnabled=true;a.jqx.aria=function(c,e,d){if(!a.jqx.ariaEnabled){return}if(e==undefined){a.each(c.aria,function(g,h){var k=!c.base?c.host.attr(g):c.base.host.attr(g);if(k!=undefined&&!a.isFunction(k)){var j=k;switch(h.type){case"number":j=new Number(k);if(isNaN(j)){j=k}break;case"boolean":j=k=="true"?true:false;break;case"date":j=new Date(k);if(j=="Invalid Date"||isNaN(j)){j=k}break}c[h.name]=j}else{var k=c[h.name];if(a.isFunction(k)){k=c[h.name]()}if(k==undefined){k=""}try{!c.base?c.host.attr(g,k.toString()):c.base.host.attr(g,k.toString())}catch(f){}}})}else{try{if(c.host){if(!c.base){if(c.host){if(c.element.setAttribute){c.element.setAttribute(e,d.toString())}else{c.host.attr(e,d.toString())}}else{c.attr(e,d.toString())}}else{if(c.base.host){c.base.host.attr(e,d.toString())}else{c.attr(e,d.toString())}}}else{if(c.setAttribute){c.setAttribute(e,d.toString())}}}catch(b){}}};if(!Array.prototype.indexOf){Array.prototype.indexOf=function(c){var b=this.length;var d=Number(arguments[1])||0;d=(d<0)?Math.ceil(d):Math.floor(d);if(d<0){d+=b}for(;d<b;d++){if(d in this&&this[d]===c){return d}}return -1}}a.jqx.mobile=a.jqx.mobile||{};a.jqx.position=function(b){var e=parseInt(b.pageX);var d=parseInt(b.pageY);if(a.jqx.mobile.isTouchDevice()){var c=a.jqx.mobile.getTouches(b);var f=c[0];e=parseInt(f.pageX);d=parseInt(f.pageY)}return{left:e,top:d}};a.extend(a.jqx.mobile,{_touchListener:function(h,f){var b=function(j,l){var k=document.createEvent("MouseEvents");k.initMouseEvent(j,l.bubbles,l.cancelable,l.view,l.detail,l.screenX,l.screenY,l.clientX,l.clientY,l.ctrlKey,l.altKey,l.shiftKey,l.metaKey,l.button,l.relatedTarget);k._pageX=l.pageX;k._pageY=l.pageY;return k};var g={mousedown:"touchstart",mouseup:"touchend",mousemove:"touchmove"};var d=b(g[h.type],h);h.target.dispatchEvent(d);var c=h.target["on"+g[h.type]];if(typeof c==="function"){c(h)}},setMobileSimulator:function(c,e){if(this.isTouchDevice()){return}this.simulatetouches=true;if(e==false){this.simulatetouches=false}var d={mousedown:"touchstart",mouseup:"touchend",mousemove:"touchmove"};var b=this;if(window.addEventListener){var f=function(){for(var g in d){if(c.addEventListener){c.removeEventListener(g,b._touchListener);c.addEventListener(g,b._touchListener,false)}}};if(a.jqx.browser.msie){f()}else{f()}}},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var c="Browser CodeName: "+navigator.appCodeName+"";c+="Browser Name: "+navigator.appName+"";c+="Browser Version: "+navigator.appVersion+"";c+="Platform: "+navigator.platform+"";c+="User-agent header: "+navigator.userAgent+"";if(c.indexOf("Android")!=-1){return true}if(c.indexOf("IEMobile")!=-1){return true}if(c.indexOf("Windows Phone")!=-1){return true}if(c.indexOf("WPDesktop")!=-1){return true}if(c.indexOf("ZuneWP7")!=-1){return true}if(c.indexOf("BlackBerry")!=-1&&c.indexOf("Mobile Safari")!=-1){return true}if(c.indexOf("ipod")!=-1){return true}if(c.indexOf("nokia")!=-1||c.indexOf("Nokia")!=-1){return true}if(c.indexOf("Chrome/17")!=-1){return false}if(c.indexOf("CrOS")!=-1){return false}if(c.indexOf("Opera")!=-1&&c.indexOf("Mobi")==-1&&c.indexOf("Mini")==-1&&c.indexOf("Platform: Win")!=-1){return false}if(c.indexOf("Opera")!=-1&&c.indexOf("Mobi")!=-1&&c.indexOf("Opera Mobi")!=-1){return true}var d={ios:"i(?:Pad|Phone|Pod)(?:.*)CPU(?: iPhone)? OS ",android:"(Android |HTC_|Silk/)",blackberry:"BlackBerry(?:.*)Version/",rimTablet:"RIM Tablet OS ",webos:"(?:webOS|hpwOS)/",bada:"Bada/"};try{if(this.touchDevice!=undefined){return this.touchDevice}this.touchDevice=false;for(i in d){if(d.hasOwnProperty(i)){prefix=d[i];match=c.match(new RegExp("(?:"+prefix+")([^\\s;]+)"));if(match){if(i.toString()=="blackberry"){this.touchDevice=false;return false}this.touchDevice=true;return true}}}var f=navigator.userAgent;if(navigator.platform.toLowerCase().indexOf("win")!=-1){if(f.indexOf("Windows Phone")>=0||f.indexOf("WPDesktop")>=0||f.indexOf("IEMobile")>=0||f.indexOf("ZuneWP7")>=0){this.touchDevice=true;return true}else{if(f.indexOf("Touch")>=0){var b=("MSPointerDown" in window)||("pointerdown" in window);if(b){this.touchDevice=true;return true}if(f.indexOf("ARM")>=0){this.touchDevice=true;return true}this.touchDevice=false;return false}}}if(navigator.platform.toLowerCase().indexOf("win")!=-1){this.touchDevice=false;return false}if(("ontouchstart" in window)||window.DocumentTouch&&document instanceof DocumentTouch){this.touchDevice=true}return this.touchDevice}catch(g){this.touchDevice=false;return false}},getLeftPos:function(b){var c=b.offsetLeft;while((b=b.offsetParent)!=null){if(b.tagName!="HTML"){c+=b.offsetLeft;if(document.all){c+=b.clientLeft}}}return c},getTopPos:function(c){var e=c.offsetTop;var b=a(c).coord();while((c=c.offsetParent)!=null){if(c.tagName!="HTML"){e+=(c.offsetTop-c.scrollTop);if(document.all){e+=c.clientTop}}}var d=navigator.userAgent.toLowerCase();var f=(d.indexOf("windows phone")!=-1||d.indexOf("WPDesktop")!=-1||d.indexOf("ZuneWP7")!=-1||d.indexOf("msie 9")!=-1||d.indexOf("msie 11")!=-1||d.indexOf("msie 10")!=-1)&&d.indexOf("touch")!=-1;if(f){return b.top}if(this.isSafariMobileBrowser()){if(this.isSafari4MobileBrowser()&&this.isIPadSafariMobileBrowser()){return e}if(d.indexOf("version/7")!=-1){return b.top}if(d.indexOf("version/6")!=-1||d.indexOf("version/5")!=-1){e=e+a(window).scrollTop()}return b.top}return e},isChromeMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("android")!=-1;return b},isOperaMiniMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("opera mini")!=-1||c.indexOf("opera mobi")!=-1;return b},isOperaMiniBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("opera mini")!=-1;return b},isNewSafariMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("ipod")!=-1;b=b&&(c.indexOf("version/5")!=-1);return b},isSafari4MobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("ipod")!=-1;b=b&&(c.indexOf("version/4")!=-1);return b},isWindowsPhone:function(){var c=navigator.userAgent.toLowerCase();var b=(c.indexOf("windows phone")!=-1||c.indexOf("WPDesktop")!=-1||c.indexOf("ZuneWP7")!=-1||c.indexOf("msie 9")!=-1||c.indexOf("msie 11")!=-1||c.indexOf("msie 10")!=-1&&c.indexOf("touch")!=-1);return b},isSafariMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("ipod")!=-1;return b},isIPadSafariMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1;return b},isMobileBrowser:function(){var c=navigator.userAgent.toLowerCase();var b=c.indexOf("ipad")!=-1||c.indexOf("iphone")!=-1||c.indexOf("android")!=-1;return b},getTouches:function(b){if(b.originalEvent){if(b.originalEvent.touches&&b.originalEvent.touches.length){return b.originalEvent.touches}else{if(b.originalEvent.changedTouches&&b.originalEvent.changedTouches.length){return b.originalEvent.changedTouches}}}if(!b.touches){b.touches=new Array();b.touches[0]=b.originalEvent!=undefined?b.originalEvent:b;if(b.originalEvent!=undefined&&b.pageX){b.touches[0]=b}if(b.type=="mousemove"){b.touches[0]=b}}return b.touches},getTouchEventName:function(b){if(this.isWindowsPhone()){var c=navigator.userAgent.toLowerCase();if(c.indexOf("windows phone 8.1")!=-1){if(b.toLowerCase().indexOf("start")!=-1){return"pointerdown"}if(b.toLowerCase().indexOf("move")!=-1){return"pointermove"}if(b.toLowerCase().indexOf("end")!=-1){return"pointerup"}}if(b.toLowerCase().indexOf("start")!=-1){return"MSPointerDown"}if(b.toLowerCase().indexOf("move")!=-1){return"MSPointerMove"}if(b.toLowerCase().indexOf("end")!=-1){return"MSPointerUp"}}else{return b}},dispatchMouseEvent:function(b,f,d){if(this.simulatetouches){return}var c=document.createEvent("MouseEvent");c.initMouseEvent(b,true,true,f.view,1,f.screenX,f.screenY,f.clientX,f.clientY,false,false,false,false,0,null);if(d!=null){d.dispatchEvent(c)}},getRootNode:function(b){while(b.nodeType!==1){b=b.parentNode}return b},setTouchScroll:function(b,c){if(!this.enableScrolling){this.enableScrolling=[]}this.enableScrolling[c]=b},touchScroll:function(d,y,g,D,b,k){if(d==null){return}var B=this;var t=0;var j=0;var l=0;var u=0;var m=0;var n=0;if(!this.scrolling){this.scrolling=[]}this.scrolling[D]=false;var h=false;var q=a(d);var v=["select","input","textarea"];var c=0;var e=0;if(!this.enableScrolling){this.enableScrolling=[]}this.enableScrolling[D]=true;var D=D;var C=this.getTouchEventName("touchstart")+".touchScroll";var p=this.getTouchEventName("touchend")+".touchScroll";var A=this.getTouchEventName("touchmove")+".touchScroll";var c=function(E){if(!B.enableScrolling[D]){return true}if(a.inArray(E.target.tagName.toLowerCase(),v)!==-1){return}var F=B.getTouches(E);var G=F[0];if(F.length==1){B.dispatchMouseEvent("mousedown",G,B.getRootNode(G.target))}h=false;j=G.pageY;m=G.pageX;if(B.simulatetouches){if(G._pageY!=undefined){j=G._pageY;m=G._pageX}}B.scrolling[D]=true;t=0;u=0;return true};if(q.on){q.on(C,c)}else{q.bind(C,c)}var x=function(J){if(!B.enableScrolling[D]){return true}if(!B.scrolling[D]){return true}var L=B.getTouches(J);if(L.length>1){return true}var H=L[0].pageY;var I=L[0].pageX;if(B.simulatetouches){if(L[0]._pageY!=undefined){H=L[0]._pageY;I=L[0]._pageX}}var E=H-j;var F=I-m;e=H;touchHorizontalEnd=I;l=E-t;n=F-u;h=true;t=E;u=F;var G=b!=null?b[0].style.visibility!="hidden":true;var K=k!=null?k[0].style.visibility!="hidden":true;if(G||K){if((n!==0&&G)||(l!==0&&K)){g(-n*1,-l*1,F,E,J);J.preventDefault();J.stopPropagation();if(J.preventManipulation){J.preventManipulation()}return false}}};if(q.on){q.on(A,x)}else{q.bind(A,x)}if(this.simulatetouches){var o=a(window).on!=undefined||a(window).bind;var z=function(E){B.scrolling[D]=false};a(window).on!=undefined?a(document).on("mouseup.touchScroll",z):a(document).bind("mouseup.touchScroll",z);if(window.frameElement){if(window.top!=null){var r=function(E){B.scrolling[D]=false};if(window.top.document){a(window.top.document).on?a(window.top.document).on("mouseup",r):a(window.top.document).bind("mouseup",r)}}}var s=a(document).on!=undefined||a(document).bind;var w=function(E){if(!B.scrolling[D]){return true}B.scrolling[D]=false;var G=B.getTouches(E)[0],F=B.getRootNode(G.target);B.dispatchMouseEvent("mouseup",G,F);B.dispatchMouseEvent("click",G,F)};a(document).on!=undefined?a(document).on("touchend",w):a(document).bind("touchend",w)}var f=function(E){if(!B.enableScrolling[D]){return true}var G=B.getTouches(E)[0];if(!B.scrolling[D]){return true}B.scrolling[D]=false;if(h){B.dispatchMouseEvent("mouseup",G,F)}else{var G=B.getTouches(E)[0],F=B.getRootNode(G.target);B.dispatchMouseEvent("mouseup",G,F);B.dispatchMouseEvent("click",G,F);return true}};if(q.on){q.on("dragstart",function(E){E.preventDefault()});q.on("selectstart",function(E){E.preventDefault()})}q.on?q.on(p+" touchcancel.touchScroll",f):q.bind(p+" touchcancel.touchScroll",f)}});a.jqx.cookie=a.jqx.cookie||{};a.extend(a.jqx.cookie,{cookie:function(e,f,c){if(arguments.length>1&&String(f)!=="[object Object]"){c=a.extend({},c);if(f===null||f===undefined){c.expires=-1}if(typeof c.expires==="number"){var h=c.expires,d=c.expires=new Date();d.setDate(d.getDate()+h)}f=String(f);return(document.cookie=[encodeURIComponent(e),"=",c.raw?f:encodeURIComponent(f),c.expires?"; expires="+c.expires.toUTCString():"",c.path?"; path="+c.path:"",c.domain?"; domain="+c.domain:"",c.secure?"; secure":""].join(""))}c=f||{};var b,g=c.raw?function(j){return j}:decodeURIComponent;return(b=new RegExp("(?:^|; )"+encodeURIComponent(e)+"=([^;]*)").exec(document.cookie))?g(b[1]):null}});a.jqx.string=a.jqx.string||{};a.extend(a.jqx.string,{replace:function(f,d,e){if(d===e){return this}var b=f;var c=b.indexOf(d);while(c!=-1){b=b.replace(d,e);c=b.indexOf(d)}return b},contains:function(b,c){if(b==null||c==null){return false}return b.indexOf(c)!=-1},containsIgnoreCase:function(b,c){if(b==null||c==null){return false}return b.toString().toUpperCase().indexOf(c.toString().toUpperCase())!=-1},equals:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);if(c.length==b.length){return b.slice(0,c.length)==c}return false},equalsIgnoreCase:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);if(c.length==b.length){return b.toUpperCase().slice(0,c.length)==c.toUpperCase()}return false},startsWith:function(b,c){if(b==null||c==null){return false}return b.slice(0,c.length)==c},startsWithIgnoreCase:function(b,c){if(b==null||c==null){return false}return b.toUpperCase().slice(0,c.length)==c.toUpperCase()},normalize:function(b){if(b.charCodeAt(b.length-1)==65279){b=b.substring(0,b.length-1)}return b},endsWith:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);return b.slice(-c.length)==c},endsWithIgnoreCase:function(b,c){if(b==null||c==null){return false}b=this.normalize(b);return b.toUpperCase().slice(-c.length)==c.toUpperCase()}});a.extend(a.easing,{easeOutBack:function(f,g,e,k,j,h){if(h==undefined){h=1.70158}return k*((g=g/j-1)*g*((h+1)*g+h)+1)+e},easeInQuad:function(f,g,e,j,h){return j*(g/=h)*g+e},easeInOutCirc:function(f,g,e,j,h){if((g/=h/2)<1){return -j/2*(Math.sqrt(1-g*g)-1)+e}return j/2*(Math.sqrt(1-(g-=2)*g)+1)+e},easeInOutSine:function(f,g,e,j,h){return -j/2*(Math.cos(Math.PI*g/h)-1)+e},easeInCubic:function(f,g,e,j,h){return j*(g/=h)*g*g+e},easeOutCubic:function(f,g,e,j,h){return j*((g=g/h-1)*g*g+1)+e},easeInOutCubic:function(f,g,e,j,h){if((g/=h/2)<1){return j/2*g*g*g+e}return j/2*((g-=2)*g*g+2)+e},easeInSine:function(f,g,e,j,h){return -j*Math.cos(g/h*(Math.PI/2))+j+e},easeOutSine:function(f,g,e,j,h){return j*Math.sin(g/h*(Math.PI/2))+e},easeInOutSine:function(f,g,e,j,h){return -j/2*(Math.cos(Math.PI*g/h)-1)+e}})})(jqxBaseFramework);(function(b){b.extend(b.event.special,{close:{noBubble:true},open:{noBubble:true},cellclick:{noBubble:true},rowclick:{noBubble:true},tabclick:{noBubble:true},selected:{noBubble:true},expanded:{noBubble:true},collapsed:{noBubble:true},valuechanged:{noBubble:true},expandedItem:{noBubble:true},collapsedItem:{noBubble:true},expandingItem:{noBubble:true},collapsingItem:{noBubble:true}});b.fn.extend({ischildof:function(f){var d=b(this).parents().get();for(var c=0;c<d.length;c++){if(typeof f!="string"){var e=d[c];if(f!==undefined){if(e==f[0]){return true}}}else{if(f!==undefined){if(b(d[c]).is(f)){return true}}}}return false}});b.fn.jqxProxy=function(){var e=b(this).data().jqxWidget;var c=Array.prototype.slice.call(arguments,0);var d=e.element;if(!d){d=e.base.element}return b.jqx.jqxWidgetProxy(e.widgetName,d,c)};var a=this.originalVal=b.fn.val;b.fn.val=function(d){if(typeof d=="undefined"){if(b(this).hasClass("jqx-widget")){var c=b(this).data().jqxWidget;if(c&&c.val){return c.val()}}return a.call(this)}else{if(b(this).hasClass("jqx-widget")){var c=b(this).data().jqxWidget;if(c&&c.val){if(arguments.length!=2){return c.val(d)}else{return c.val(d,arguments[1])}}}return a.call(this,d)}};if(b.fn.modal&&b.fn.modal.Constructor){b.fn.modal.Constructor.prototype.enforceFocus=function(){b(document).off("focusin.bs.modal").on("focusin.bs.modal",b.proxy(function(c){if(this.$element[0]!==c.target&&!this.$element.has(c.target).length){if(b(c.target).parents().hasClass("jqx-popup")){return true}this.$element.trigger("focus")}},this))}}b.fn.coord=function(o){var e,k,j={top:0,left:0},f=this[0],m=f&&f.ownerDocument;if(!m){return}e=m.documentElement;if(!b.contains(e,f)){return j}if(typeof f.getBoundingClientRect!==undefined){j=f.getBoundingClientRect()}var d=function(p){return b.isWindow(p)?p:p.nodeType===9?p.defaultView||p.parentWindow:false};k=d(m);var h=0;var c=0;var g=navigator.userAgent.toLowerCase();var n=g.indexOf("ipad")!=-1||g.indexOf("iphone")!=-1;if(n){h=2}if(true==o){if(b(document.body).css("position")!="static"){var l=b(document.body).coord();h=-l.left;c=-l.top}}return{top:c+j.top+(k.pageYOffset||e.scrollTop)-(e.clientTop||0),left:h+j.left+(k.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdata.export.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdata.export.js
new file mode 100644 (file)
index 0000000..4d5711c
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(b){var a=(function(){var c={},u,q,j,l,g,h,o,p;function d(B,A,x,z,y,v,w){this.hierarchy=y;this.exportFormat=v;this.filename=w;B.beginFile(w);n(B);k(B);B.endFile(w);return B.getFile()}function n(z){var x=true;b.each(q,function(){if(this.hidden){x=false;return false}});z.beginHeader(x);var w=0;for(var v in q){if(q[v].columnsDataFields){v=q[v].columnsDataFields[w].displayfield}var y=m(v,q[v]);z.appendHeaderCell(q[v],v,y,x,w);w++}z.endHeader(x)}function k(x){x.beginBody();if(this.hierarchy){var w=function(z){for(var y=0;y<z.length;y+=1){if(z[y]!==undefined){x.beginRow(z[y].level);e(x,z[y],y,true);if(z[y].records){x.beginRows(z[y].level);w(z[y].records);x.endRows(z[y].level)}x.endRow(z[y].level)}}};w(u);x.endBody();return}for(var v=0;v<u.length;v+=1){if(u[v]!==undefined){e(x,u[v],v)}}x.endBody()}function e(A,z,B,v){var x;if(v!=true){A.beginRow()}var y=0;for(var w in q){if(q[w].columnsDataFields){w=q[w].columnsDataFields[y].displayfield}x=s(B,w);if(x){if(x.level!=undefined){if(x.index-1>z.level&&x.index-1<x.maxLevel){y++;continue}}if(x.maxLevel!=undefined){if(x.index-1==x.maxLevel){x=b.extend({},x);x.merge=x.maxLevel-z.level-1}}}if(z.level!=undefined&&z.label!=undefined){if(this.exportFormat==="xml"||this.exportFormat==="json"){var C={};C.text="group";A.appendBodyCell(z.label,C,x,z,y,"group");break}}if(z.hasOwnProperty(w)){A.appendBodyCell(z[w],q[w],x,z,y)}else{A.appendBodyCell("",q[w],x,z,y)}y++}if(v!=true){A.endRow()}}function m(w,x){if(x.style){return j[x.style]}var v=t();if(v.length>0){return v[0].style}return null}function t(){if(!g){g=new Array();b.each(j,function(v,w){g[g.length]={name:v,style:w}})}return g}function s(A,z){var B=q[z];if(B){if(B.customCellStyles){var x=B.customCellStyles[A];if(x){return j[x]}}if(B.cellStyle){if(B.cellAltStyle){var w=A%2;if(w==0){return j[B.cellStyle]}return j[B.cellAltStyle]}return j[B.cellStyle]}else{var v=t();if(v.length>0){var w=A%(v.length-1);var y=v[w+1].style;return y}}}return null}function r(y,w,x){var v=document.createElement("input");v.name=w;v.value=y;v.type="hidden";x.appendChild(v);return v}function f(x,v,w){var y=document.createElement("textarea");y.name=v;y.value=x;w.appendChild(y);return y}function i(w,z,y,v,A){var x=document.createElement("form");r(w,"filename",x);r(z,"format",x);f(y,"content",x);if(v==undefined||v==""){if(window&&window.location.toString().indexOf("jqwidgets.com")>=0){v="http://jqwidgets.com/export_server/save-file.php"}else{v="http://jquerygrid.net/export_server/save-file.php"}}x.action=v;x.method="post";if(A){x.acceptCharset=A}document.body.appendChild(x);return x}l=function(A,y,x,w,z,v){if(!(this instanceof a)){return new a(A,y,x,z,v)}u=A;q=y;j=x;this.exportTo=function(F,D,B,C){F=F.toString().toLowerCase();var E=c[F];if(typeof E==="undefined"){throw"You can't export to "+F+" format."}return d(E,u,q,j,D,B,C)};this.exportToFile=function(L,B,O,F,I){if(L==="pdf"){var N=this.exportTo(L,I,L,B);if(!b.jqx.pdfExport){b.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var M=new pdfDataExport(b.jqx.pdfExport.orientation,"pt",b.jqx.pdfExport.paperSize);M.cellInitialize();var K=b(N).find("th");var J=b(N).find("tr");var P=0;M.setFontSize(13*72/96);var G=595;switch(b.jqx.pdfExport.paperSize){case"legal":var G=612;if(b.jqx.pdfExport.orientation!=="portrait"){G=1008}break;case"letter":var G=612;if(b.jqx.pdfExport.orientation!=="portrait"){G=792}break;case"a3":var G=841;if(b.jqx.pdfExport.orientation!=="portrait"){G=1190}break;case"a4":var G=595;if(b.jqx.pdfExport.orientation!=="portrait"){G=842}break;case"a5":var G=420;if(b.jqx.pdfExport.orientation!=="portrait"){G=595}break}G-=20;var E=0;var C=[];b.each(K,function(Q){var R=parseInt(this.style.width);if(isNaN(R)){R=25}var S=R*72/96;C[Q]=S;E+=S});if(E>G){b.each(C,function(Q){C[Q]=(C[Q]/E)*100;C[Q]=C[Q]*G/100})}b.each(K,function(R){var V=C[R];var U=25*72/96;var T=M.getTextDimensions(b(this).html());var S=b(this).html();if(T.w+3>V){var Q=M.splitTextToSize(S,V-3);var W=Q[0];if(W.length>3){S=W.substring(0,W.length-3)+"..."}else{S=W.substring(0,1)+"..."}var Q=M.splitTextToSize(S,V-3);var W=Q[0];if(W!=S){S=W}}M.cell(10,10,V,U,S,P)});P++;b.each(J,function(X){if(X===0){return true}var R=b(this).children();var S=R.length>K.length;if(S){var aa=R.length-K.length;var ab="";var Z=C[0];var W=25*72/96;for(var T=0;T<=aa;T++){var Q=R[T].innerHTML;if(Q==="+"||Q==="-"){Q=Q+" "}if(Q==="&nbsp;"){Q="   "}ab+=Q}var V=M.getTextDimensions(ab);if(V.w+3>Z){var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U.length>3){ab=U.substring(0,U.length-3)+"..."}else{ab=U.substring(0,1)+"..."}var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U!=ab){ab=U}}M.cell(10,10,Z,W,ab,P);for(var T=aa+1;T<R.length;T++){var X=T-aa;var Z=C[X];var W=25*72/96;var ab=b(R[T]).html();var V=M.getTextDimensions(b(R[T]).html());if(V.w+3>Z){var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U.length>3){ab=U.substring(0,U.length-3)+"..."}else{ab=U.substring(0,1)+"..."}var Y=M.splitTextToSize(ab,Z-3);var U=Y[0];if(U!=ab){ab=U}}M.cell(10,10,Z,W,ab,P)}P++;return true}b.each(R,function(ad){var ah=C[ad];var ag=25*72/96;var af=b(this).html();var ae=M.getTextDimensions(b(this).html());if(ae.w+3>ah){var ac=M.splitTextToSize(af,ah-3);var ai=ac[0];if(ai.length>3){af=ai.substring(0,ai.length-3)+"..."}else{af=ai.substring(0,1)+"..."}var ac=M.splitTextToSize(af,ah-3);var ai=ac[0];if(ai!=af){af=ai}}M.cell(10,10,ah,ag,af,P)});P++});if(b.jqx.browser.msie&&b.jqx.browser.version<10){throw new Error("PDF export requires a browser with HTML5 support");return}M.save(B);return}var H=this.exportTo(L,I,L,B),D=i(B,L,H,O,F);D.submit();document.body.removeChild(D)};this.exportToLocalFile=function(F,C,D,B){var E=this.exportTo(F,D,B);document.location.href="data:application/octet-stream;filename="+C+","+encodeURIComponent(E)}};l.extend=function(v,w){if(w instanceof b.jqx.dataAdapter.DataExportModuleBase){c[v]=w}else{throw"The module "+v+" is not instance of DataExportModuleBase."}};return l}());b.jqx.dataAdapter.ArrayExporter=a})(jqxBaseFramework);(function(b){var a=function(){this.formatData=function(f,e,c,h){if(e==="date"){var d="";if(typeof f==="string"){d=b.jqx.dataFormat.tryparsedate(f);f=d}if(f===""||f===null){return""}d=b.jqx.dataFormat.formatdate(f,c,h);if(d.toString()=="NaN"||d==null){return""}f=d}else{if(e==="number"||e==="float"||e==="int"||e=="integer"){if(f===""||f===null){return""}if(!isNaN(new Number(f))){var g=b.jqx.dataFormat.formatnumber(f,c,h);if(g.toString()=="NaN"){return""}else{f=g}}}else{f=f}}if(f===null){return""}return f};this.getFormat=function(f){var c=f?f.formatString:"";var e=f?f.localization:"";var d="string";d=f?f.type:"string";if(d=="number"||d=="float"){if(!c){c="f2"}}if(d=="int"||d=="integer"){if(!c){c="n0"}}if(d=="date"){if(!c){c="d"}}return{type:d,formatString:c,localization:e}};this.beginFile=function(){throw"Not implemented!"};this.beginHeader=function(){throw"Not implemented!"};this.appendHeaderCell=function(){throw"Not implemented!"};this.endHeader=function(){throw"Not implemented!"};this.beginBody=function(){throw"Not implemented!"};this.beginRow=function(){throw"Not implemented!"};this.beginRows=function(){throw"Not implemented!"};this.endRows=function(){throw"Not implemented!"};this.appendBodyCell=function(){throw"Not implemented!"};this.endRow=function(){throw"Not implemented!"};this.endBody=function(){throw"Not implemented!"};this.endFile=function(){throw"Not implemented!"};this.getFile=function(){throw"Not implemented!"}};b.jqx.dataAdapter.DataExportModuleBase=a})(jqxBaseFramework);(function(d){var c=function(j){var e,h,g;var l=0;var i=this;this.beginFile=function(){e=""};this.beginHeader=function(){};this.appendHeaderCell=function(q,r,p,m,n){if(p){if(p.level!=undefined){if(n<p.maxLevel){return}else{if(n===p.maxLevel){if(m){k(q.text)}for(var o=0;o<p.maxLevel;o++){k("")}return}}}}g=m;if(m){k(q.text)}};this.endHeader=function(){this.endRow()};this.beginBody=function(){l=0};this.beginRow=function(){if((l>0)||(l==0&&g)){e+="\n"}l++};this.appendBodyCell=function(q,m,p,r,n){if(p){if(p.maxLevel!=undefined){if(n===p.maxLevel){k(q,m);for(var o=0;o<p.maxLevel-r.level-1;o++){k("",m)}return}}}k(q,m)};this.endRow=function(){e=e.substring(0,e.length-1)};this.endBody=function(){};this.endFile=function(){};this.getFile=function(){return e};function f(m,o){if(o){var n=i.getFormat(o);m=i.formatData(m,n.type,n.formatString,n.localization)}m='"'+m+'"';return m}function k(m,n){m=f(m,n);e+=m+j}};c.prototype=new d.jqx.dataAdapter.DataExportModuleBase();var a=function(){};a.prototype=new c(",");var b=function(){};b.prototype=new c("\t");d.jqx.dataAdapter.ArrayExporter.extend("csv",new a());d.jqx.dataAdapter.ArrayExporter.extend("tsv",new b())})(jqxBaseFramework);(function(d){var a=function(){var i=false;var g;var h;var j=0;this.setPDF=function(){i=true};this.beginFile=function(k){if(i||k==undefined){g='<table style="empty-cells: show;" cellspacing="0" cellpadding="2">'}else{g='<html>\n\t<head>\n\t\t<title></title>\n\t\t<meta http-equiv=Content-type content="text/html; charset=UTF-8">\n\t</head>\n\t<body>\n\t\t<table style="empty-cells: show;" cellspacing="0" cellpadding="2">'}};this.beginHeader=function(){if(i){g+="\n\t<thead><tr>"}else{g+="\n\t\t\t<thead>"}};this.appendHeaderCell=function(m,n,l,k){h=k;if(!k){return}if(i){g+='\n\t\t\t\t<th style="'+f(l)+'">'+m.text+"</th>"}else{if(l.disabled){return}if(l.merge){if(m.width){g+="\n\t\t\t\t<th colspan="+(1+l.merge)+' style="width: '+m.width+"px; "+f(l)+'">'+m.text+"</th>"}else{g+="\n\t\t\t\t<th colspan="+(1+l.merge)+' style="'+f(l)+'">'+m.text+"</th>"}}else{if(m.width){g+='\n\t\t\t\t<th style="width: '+m.width+"px; "+f(l)+'">'+m.text+"</th>"}else{g+='\n\t\t\t\t<th style="'+f(l)+'">'+m.text+"</th>"}}}};this.endHeader=function(){if(i){g+="\n\t</tr></thead>"}else{g+="\n\t\t\t</thead>"}};this.beginBody=function(){if(i){g+="\n\t<tbody>"}else{g+="\n\t\t\t<tbody>"}j=0};this.beginRow=function(){if(i){g+="\n\t<tr>"}else{g+="\n\t\t\t\t<tr>"}j++};this.appendBodyCell=function(l,n,k){var m=this.getFormat(n);if(l===""){l="&nbsp;"}if(i){if(j==1&&!h){g+='\n\t\t\t\t\t<td style="'+f(k)+' border-top-width: 1px;">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}else{g+='\n\t\t\t\t\t<td style="'+f(k)+'">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}}else{if(k.merge){if(j==1&&!h){g+="\n\t\t\t\t\t<td colspan="+(1+k.merge)+' style="'+f(k)+' border-top-width: 1px;">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}else{g+="\n\t\t\t\t\t<td colspan="+(1+k.merge)+' style="'+f(k)+'">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}}else{if(j==1&&!h){g+='\n\t\t\t\t\t<td style="'+f(k)+' border-top-width: 1px;">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}else{g+='\n\t\t\t\t\t<td style="'+f(k)+'">'+this.formatData(l,m.type,m.formatString,m.localization)+"</td>"}}}};this.endRow=function(){if(i){g+="\n\t</tr>"}else{g+="\n\t\t\t\t</tr>"}};this.endBody=function(){if(i){g+="\n\t</tbody>"}else{g+="\n\t\t\t</tbody>"}};this.endFile=function(k){if(i||k==undefined){g+="\n</table>"}else{g+="\n\t\t</table>\n\t</body>\n</html>\n"}};this.getFile=function(){return g};function f(m){var k="";for(var l in m){if(m.hasOwnProperty(l)){if(i&&l=="font-size"){m[l]="100%"}k+=l+":"+m[l]+";"}}return k}};a.prototype=new d.jqx.dataAdapter.DataExportModuleBase();var e=function(){};e.prototype=new a();var c=function(){};c.prototype=new a();var b=new c();d.jqx.dataAdapter.ArrayExporter.extend("html",new e());d.jqx.dataAdapter.ArrayExporter.extend("pdf",b)})(jqxBaseFramework);(function(b){var a=function(){var h,l,d,i,c,j,m={style:"",stylesMap:{font:{color:"Color","font-family":"FontName","font-style":"Italic","font-weight":"Bold"},interior:{"background-color":"Color",background:"Color"},alignment:{left:"Left",center:"Center",right:"Right"}},startStyle:function(p){this.style+='\n\t\t<Style ss:ID="'+p+'" ss:Name="'+p+'">'},buildAlignment:function(q){if(q["text-align"]){var r=this.stylesMap.alignment[q["text-align"]];if(!r){r="Left"}var p='\n\t\t\t<Alignment ss:Vertical="Bottom" ss:Horizontal="'+r+'"/>';this.style+=p}},buildBorder:function(s){if(s["border-color"]){var r="\n\t\t\t<Borders>";var u='\n\t\t\t\t<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';var p='\n\t\t\t\t<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';var q='\n\t\t\t\t<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';var t='\n\t\t\t\t<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="'+s["border-color"]+'"/>';r+=u;r+=p;r+=q;r+=t;r+="\n\t\t\t</Borders>";this.style+=r}},buildFont:function(q){var r=this.stylesMap.font,p="\n\t\t\t<Font ";for(var s in r){if(typeof q[s]!=="undefined"){if(s==="font-style"&&q[s].toString().toLowerCase()==="italic"){p+='ss:Italic="1" '}else{if(s==="font-weight"&&q[s].toString().toLowerCase()==="bold"){p+='ss:Bold="1" '}else{if(s==="color"){p+="ss:"+r[s]+'="'+q[s]+'" '}}}}}p+="/>";this.style+=p},buildInterior:function(q){var r=this.stylesMap.interior,t="\n\t\t\t<Interior ";var p=false;for(var s in r){if(typeof q[s]!=="undefined"){t+="ss:"+r[s]+'="'+q[s]+'" ';p=true}}if(p){t+='ss:Pattern="Solid"'}t+="/>";this.style+=t},buildFormat:function(q){if(q.dataType=="number"||q.dataType=="float"||q.dataType=="int"||q.dataType=="integer"){var p=q.formatString;if(p==""||p.indexOf("n")!=-1||p.indexOf("N")!=-1){this.style+='\n\t\t\t<NumberFormat ss:Format="0"/>'}else{if(p=="f"||p=="F"||p=="D"||p.indexOf("d")!=-1){this.style+='\n\t\t\t<NumberFormat ss:Format="#,##0.00_);[Red](#,##0.00)"/>'}else{if(p.indexOf("p")!=-1||p.indexOf("P")!=-1){this.style+='\n\t\t\t<NumberFormat ss:Format="Percent"/>'}else{if(p.indexOf("c")!=-1||p.indexOf("C")!=-1){if(parseInt(q.currencysymbol.charCodeAt(0))==8364){this.style+='\n\t\t\t<NumberFormat ss:Format="Euro Currency"/>'}else{this.style+='\n\t\t\t<NumberFormat ss:Format="Currency"/>'}}}}}}else{if(q.dataType=="date"){this.style+='\n\t\t\t<NumberFormat ss:Format="Short Date"/>'}}},closeStyle:function(){this.style+="\n\t\t</Style>"},toString:function(){var p=this.style;this.style="";return p}};this.beginFile=function(){c={};j=0;h='<?xml version="1.0"?>\n\t<?mso-application progid="Excel.Sheet"?> \n\t<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" \n\txmlns:o="urn:schemas-microsoft-com:office:office" \n\txmlns:x="urn:schemas-microsoft-com:office:excel" \n\txmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" \n\txmlns:html="http://www.w3.org/TR/REC-html40"> \n\t<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> \n\t<Version>12.00</Version> \n\t</DocumentProperties> \n\t<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> \n\t<WindowHeight>8130</WindowHeight> \n\t<WindowWidth>15135</WindowWidth> \n\t<WindowTopX>120</WindowTopX> \n\t<WindowTopY>45</WindowTopY> \n\t<ProtectStructure>False</ProtectStructure> \n\t<ProtectWindows>False</ProtectWindows> \n\t</ExcelWorkbook> \n\t<Styles>'};this.beginHeader=function(){l='\n\t<Worksheet ss:Name="Sheet1">\n\t\t<Table>';d=[];i=[]};this.appendHeaderCell=function(r,s,q){var p=r.width!=undefined?r.width:r.text.length*10;l+='\n\t\t\t<Column ss:Width="'+p+'"/>';d.push(r);i.push(q)};this.endHeader=function(p){if(p){this.beginRow();for(var q=0;q<d.length;q+=1){if(i[q].disabled){continue}g.call(this,d[q]["text"],null,i[q])}this.endRow()}};this.beginBody=function(){};this.beginRow=function(q){if(q!=undefined){l+="\n\t\t\t";for(var p=0;p<q;p++){l+="\t"}l+="<Row>";return}l+="\n\t\t\t<Row>"};this.beginRows=function(p){l+="\n\t\t\t\t<Rows>"};this.appendBodyCell=function(r,p,q,s){g.call(this,r,p,q,s)};this.endRow=function(q){if(q!=undefined){l+="\n\t\t\t";for(var p=0;p<q;p++){l+="\t"}l+="</Row>";return}l+="\n\t\t\t</Row>"};this.endRows=function(q){if(q!=undefined){l+="\n\t\t\t";for(var p=0;p<q;p++){l+="\t"}l+="</Rows>";return}};this.endBody=function(){l+="\n\t\t</Table>"};this.endFile=function(){l+="\n\t</Worksheet>\n</Workbook>";h+="\n\t</Styles>"};this.getFile=function(){return h+l};function g(s,v,r,u){var q="String";var t=this.getFormat(v);if(s!=null&&s.toString().substring(0,3)=="_AG"){s=s.toString().substring(3);q="String"}else{if(t.type=="date"){s=this.formatData(s,t.type,t.formatString,t.localization);if(s===null||s===""){s="";q="String"}}if(t.type=="string"){if(s===null||s===undefined){s=""}else{if(s.toString().indexOf("&")>=0){s=s.toString().replace(/&/g,"&amp;")}if(s.toString().indexOf(">")>=0){s=s.toString().replace(/>/g,"&gt;")}if(s.toString().indexOf("<")>=0){s=s.toString().replace(/</g,"&lt;")}if(s.toString().indexOf('"')>=0){s=s.toString().replace(/"/g,"&quot;")}if(s.toString().indexOf("'")>=0){s=s.toString().replace(/'/g,"&apos;")}}}if(r.dataType=="number"||r.dataType=="float"||r.dataType=="int"||r.dataType=="integer"){q="Number";s=parseFloat(s);if(s===null||isNaN(s)||s===""){s="";q="String"}if(s&&q!="String"&&s!=""){if(v&&v.formatString&&v.formatString.indexOf("p")>=0){s=s/100}}r.currencysymbol=v.localization.currencysymbol}}var p=f(r);if(r.merge){l+='\n\t\t\t\t<Cell ss:MergeAcross="'+r.merge+'" ss:StyleID="'+p+'"><Data ss:Type="'+q+'">'+s+"</Data></Cell>"}else{l+='\n\t\t\t\t<Cell ss:StyleID="'+p+'"><Data ss:Type="'+q+'">'+s+"</Data></Cell>"}}function n(){j+=1;return"xls-style-"+j}function k(q){for(var p in c){if(o(q,c[p])&&o(c[p],q)){return p}}return undefined}function o(t,q){var s=true;for(var r in t){if(t[r]!==q[r]){s=false}}return s}function e(q,p){m.startStyle(q);m.buildAlignment(p);m.buildBorder(p);m.buildFont(p);m.buildInterior(p);m.buildFormat(p);m.closeStyle();h+=m.toString()}function f(p){if(!p){return""}var q=k(p);if(typeof q==="undefined"){q=n();c[q]=p;e(q,p)}return q}};a.prototype=new b.jqx.dataAdapter.DataExportModuleBase();b.jqx.dataAdapter.ArrayExporter.extend("xls",new a())})(jqxBaseFramework);(function(b){var a=function(){var e,c,d;this.beginFile=function(){e='<?xml version="1.0" encoding="UTF-8" ?>';e+="\n<table>"};this.beginHeader=function(){c=[]};this.appendHeaderCell=function(f,g){c.push(g)};this.endHeader=function(){};this.beginBody=function(g,f){};this.beginRow=function(g){if(g!=undefined){if(this.hierarchy){e+="\n\t";for(var f=0;f<g;f++){e+="\t\t"}e+="<row>";d=0;return}}e+="\n\t<row>";d=0};this.beginRows=function(g){if(g!=undefined){e+="\n\t\t";for(var f=0;f<g;f++){e+="\t\t"}e+="<rows>";d=0;return}e+="\n\t\t<rows>"};this.appendBodyCell=function(j,n,g,m,h,l){var k=this.getFormat(n);j=this.formatData(j,k.type,k.formatString,k.localization);if(k.type=="string"){if(j.toString().indexOf("&")>=0){j=j.toString().replace(/&/g,"&amp;")}if(j.toString().indexOf(">")>=0){j=j.toString().replace(/>/g,"&gt;")}if(j.toString().indexOf("<")>=0){j=j.toString().replace(/</g,"&lt;")}if(j.toString().indexOf('"')>=0){j=j.toString().replace(/"/g,"&quot;")}if(j.toString().indexOf("'")>=0){j=j.toString().replace(/'/g,"&apos;")}}if(m.level!=undefined){if(this.hierarchy){e+="\n\t\t";for(var f=0;f<m.level;f++){e+="\t\t"}if(l===undefined){e+="<"+c[d]+">"+j+"</"+c[d]+">"}else{e+="<"+l+">"+j+"</"+l+">"}}else{if(l!=undefined){e+="\n\t\t<"+l+">"+j+"</"+l+">"}else{e+="\n\t\t<"+c[d]+">"+j+"</"+c[d]+">"}}}else{e+="\n\t\t<"+c[d]+">"+j+"</"+c[d]+">"}d++};this.endRow=function(g){if(g!=undefined){if(this.hierarchy){e+="\n\t";for(var f=0;f<g;f++){e+="\t\t"}e+="</row>";d=0;return}}e+="\n\t</row>";d=0};this.endRows=function(g){if(g!=undefined){e+="\n\t\t";for(var f=0;f<g;f++){e+="\t\t"}e+="</rows>";d=0;return}e+="\n\t\t</rows>"};this.endBody=function(){};this.endFile=function(){e+="\n</table>"};this.getFile=function(){return e}};a.prototype=new b.jqx.dataAdapter.DataExportModuleBase();b.jqx.dataAdapter.ArrayExporter.extend("xml",new a())})(jqxBaseFramework);(function(d){var j=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,l={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(n){return'"'+n.replace(j,function(o){var p=l[o];return typeof p==="string"?p:"\\u"+("0000"+o.charCodeAt(0).toString(16)).slice(-4)})+'"'}function b(o){return o<10?"0"+o:o}function e(o){var n;if(isFinite(o.valueOf())){n=o.getUTCFullYear()+"-"+b(o.getUTCMonth()+1)+"-"+b(o.getUTCDate())+"T"+b(o.getUTCHours())+":"+b(o.getUTCMinutes())+":"+b(o.getUTCSeconds())+'Z"'}else{n="null"}return n}function g(q){var n=q.length,o=[],p;for(p=0;p<n;p++){o.push(h(p,q)||"null")}return"["+o.join(",")+"]"}function m(q){var o=[],p,n;for(p in q){if(Object.prototype.hasOwnProperty.call(q,p)){n=h(p,q);if(n){o.push(a(p)+":"+n)}}}return"{"+o.join(",")+"}"}function i(n){switch(Object.prototype.toString.call(n)){case"[object Date]":return e(n);case"[object Array]":return g(n)}return m(n)}function k(o,n){switch(n){case"string":return a(o);case"number":case"float":case"integer":case"int":return isFinite(o)?o:"null";case"boolean":return o}return"null"}function h(o,n){var q=n[o],p=typeof q;if(q&&typeof q==="object"&&typeof q.toJSON==="function"){q=q.toJSON(o);p=typeof q}if(/(number|float|int|integer|string|boolean)/.test(p)||(!q&&p==="object")){return k(q,p)}else{return i(q)}}function f(n){if(window.JSON&&typeof window.JSON.stringify==="function"){return window.JSON.stringify(n)}return h("",{"":n})}var c=function(){var q=this;this.prepareData=function(t,v){if(v){var u=q.getFormat(v);t=q.formatData(t,u.type,u.formatString,u.localization)}return t};var n,p,r,o=[],s=0;this.beginFile=function(){p=[]};this.beginHeader=function(){};this.appendHeaderCell=function(t){};this.endHeader=function(){};this.beginBody=function(u,t){};this.beginRow=function(){if(hierarchy){o[s]={}}else{r={}}};this.beginRows=function(){o[s].rows=[];s++;o[s]={}};this.endRows=function(){s--};this.appendBodyCell=function(u,t){var v=this.prepareData(u,t);if(hierarchy){o[s][t.text]=v}else{r[t.text]=v}};this.endRow=function(){if(hierarchy){if(s==0){p.push(o[s])}else{o[s-1].rows.push(o[s])}}else{p.push(r)}};this.endBody=function(){};this.endFile=function(){n=f(p)};this.getFile=function(){return n}};c.prototype=new d.jqx.dataAdapter.DataExportModuleBase();d.jqx.dataAdapter.ArrayExporter.extend("json",new c())})(jqxBaseFramework);var pdfDataExport=(function(){if(typeof btoa==="undefined"){window.btoa=function(m){var h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",s=h.split(""),g,f,e,q,p,o,n,t,l=0,u=0,k="",j=[],d;do{g=m.charCodeAt(l++);f=m.charCodeAt(l++);e=m.charCodeAt(l++);t=g<<16|f<<8|e;q=t>>18&63;p=t>>12&63;o=t>>6&63;n=t&63;j[u++]=s[q]+s[p]+s[o]+s[n]}while(l<m.length);k=j.join("");d=m.length%3;return(d?k.slice(0,d-3):k)+"===".slice(d||3)}}if(typeof atob==="undefined"){window.atob=function(l){var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",f,e,d,p,o,n,m,q,k=0,r=0,h="",j=[];if(!l){return l}l+="";do{p=g.indexOf(l.charAt(k++));o=g.indexOf(l.charAt(k++));n=g.indexOf(l.charAt(k++));m=g.indexOf(l.charAt(k++));q=p<<18|o<<12|n<<6|m;f=q>>16&255;e=q>>8&255;d=q&255;if(n===64){j[r++]=String.fromCharCode(f)}else{if(m===64){j[r++]=String.fromCharCode(f,e)}else{j[r++]=String.fromCharCode(f,e,d)}}}while(k<l.length);h=j.join("");return h}}var c=typeof Object.keys==="function"?function(d){return Object.keys(d).length}:function(d){var f=0,g;for(g in d){if(d.hasOwnProperty(g)){f++}}return f},a=function(d){this.topics={};this.context=d;this.publish=function(h,m){if(this.topics[h]){var j=this.topics[h],o=[],n,g,e,f,k=function(){};m=Array.prototype.slice.call(arguments,1);for(g=0,e=j.length;g<e;g++){f=j[g];n=f[0];if(f[1]){f[0]=k;o.push(g)}n.apply(this.context,m)}for(g=0,e=o.length;g<e;g++){j.splice(o[g],1)}}};this.subscribe=function(e,g,f){if(!this.topics[e]){this.topics[e]=[[g,f]]}else{this.topics[e].push([g,f])}return{topic:e,callback:g}};this.unsubscribe=function(h){if(this.topics[h.topic]){var f=this.topics[h.topic],g,e;for(g=0,e=f.length;g<e;g++){if(f[g][0]===h.callback){f.splice(g,1)}}}}};function b(D,ad,L,U){if(typeof D==="undefined"){D="p"}else{D=D.toString().toLowerCase()}if(typeof ad==="undefined"){ad="mm"}if(typeof L==="undefined"){L="a4"}if(typeof U==="undefined"&&typeof zpipe==="undefined"){U=false}var aq=L.toString().toLowerCase(),am="0.9.0rc2",s=[],E=0,at=U,T="1.3",M={a3:[841.89,1190.55],a4:[595.28,841.89],a5:[420.94,595.28],letter:[612,792],legal:[612,1008]},ac="0 g",G="0 G",g=0,f=[],m=2,u=false,C=[],ag={},P={},ah=16,d,y=0.200025,A,B,ai,N={title:"",subject:"",author:"",keywords:"",creator:""},Q=0,S=0,O={},F=new a(O),ae,ao,o=function(i){return i.toFixed(2)},n=function(i){return i.toFixed(3)},z=function(i){var k=(i).toFixed(0);if(i<10){return"0"+k}else{return k}},q=function(i){var k=(i).toFixed(0);if(k.length<10){return new Array(11-k.length).join("0")+k}else{return k}},aa=function(i){if(u){f[g].push(i)}else{s.push(i);E+=i.length+1}},v=function(){m++;C[m]=E;aa(m+" 0 obj");return m},J=function(i){aa("stream");aa(i);aa("endstream")},ak,R,an,aj,Z=function(){ak=B*ai;R=A*ai;var az,ay,k,au,av,ax,aw;for(az=1;az<=g;az++){v();aa("<</Type /Page");aa("/Parent 1 0 R");aa("/Resources 2 0 R");aa("/Contents "+(m+1)+" 0 R>>");aa("endobj");ay=f[az].join("\n");v();if(at){k=[];for(av=0;av<ay.length;++av){k[av]=ay.charCodeAt(av)}aw=adler32cs.from(ay);ax=new Deflater(6);ax.append(new Uint8Array(k));ay=ax.flush();k=[new Uint8Array([120,156]),new Uint8Array(ay),new Uint8Array([aw&255,(aw>>8)&255,(aw>>16)&255,(aw>>24)&255])];ay="";for(av in k){if(k.hasOwnProperty(av)){ay+=String.fromCharCode.apply(null,k[av])}}aa("<</Length "+ay.length+" /Filter [/FlateDecode]>>")}else{aa("<</Length "+ay.length+">>")}J(ay);aa("endobj")}C[1]=E;aa("1 0 obj");aa("<</Type /Pages");an="/Kids [";for(av=0;av<g;av++){an+=(3+2*av)+" 0 R "}aa(an+"]");aa("/Count "+g);aa("/MediaBox [0 0 "+o(ak)+" "+o(R)+"]");aa(">>");aa("endobj")},W=function(i){i.objectNumber=v();aa("<</BaseFont/"+i.PostScriptName+"/Type/Font");if(typeof i.encoding==="string"){aa("/Encoding/"+i.encoding)}aa("/Subtype/Type1>>");aa("endobj")},I=function(){var i;for(i in ag){if(ag.hasOwnProperty(i)){W(ag[i])}}},K=function(){F.publish("putXobjectDict")},w=function(){aa("/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]");aa("/Font <<");var i;for(i in ag){if(ag.hasOwnProperty(i)){aa("/"+i+" "+ag[i].objectNumber+" 0 R")}}aa(">>");aa("/XObject <<");K();aa(">>")},h=function(){I();F.publish("putResources");C[2]=E;aa("2 0 obj");aa("<<");w();aa(">>");aa("endobj");F.publish("postPutResources")},l=function(au,k,av){var i;if(P[k]===i){P[k]={}}P[k][av]=au},ar={},t=function(i,av,ax,au){var aw="F"+(c(ag)+1).toString(10),k=ag[aw]={id:aw,PostScriptName:i,fontName:av,fontStyle:ax,encoding:au,metadata:{}};l(aw,av,ax);F.publish("addFont",k);return aw},e=function(){var k="helvetica",aD="times",aF="courier",aC="normal",aB="bold",aA="italic",aE="bolditalic",au="StandardEncoding",ax=[["Helvetica",k,aC],["Helvetica-Bold",k,aB],["Helvetica-Oblique",k,aA],["Helvetica-BoldOblique",k,aE],["Courier",aF,aC],["Courier-Bold",aF,aB],["Courier-Oblique",aF,aA],["Courier-BoldOblique",aF,aE],["Times-Roman",aD,aC],["Times-Bold",aD,aB],["Times-Italic",aD,aA],["Times-BoldItalic",aD,aE]],az,av,ay,aw;for(az=0,av=ax.length;az<av;az++){ay=t(ax[az][0],ax[az][1],ax[az][2],au);aw=ax[az][0].split("-");l(ay,aw[0],aw[1]||"")}F.publish("addFonts",{fonts:ag,dictionary:P})},r=function(aE,av){var aA,ay,ax,aw,aC,aB,au,aD,k,az;if(av===ax){av={}}aw=av.sourceEncoding?aw:"Unicode";aB=av.outputEncoding;if((av.autoencode||aB)&&ag[d].metadata&&ag[d].metadata[aw]&&ag[d].metadata[aw].encoding){aC=ag[d].metadata[aw].encoding;if(!aB&&ag[d].encoding){aB=ag[d].encoding}if(!aB&&aC.codePages){aB=aC.codePages[0]}if(typeof aB==="string"){aB=aC[aB]}if(aB){aD=false;au=[];for(aA=0,ay=aE.length;aA<ay;aA++){k=aB[aE.charCodeAt(aA)];if(k){au.push(String.fromCharCode(k))}else{au.push(aE[aA])}if(au[aA].charCodeAt(0)>>8){aD=true}}aE=au.join("")}}aA=aE.length;while(aD===ax&&aA!==0){if(aE.charCodeAt(aA-1)>>8){aD=true}aA--}if(!aD){return aE}else{au=av.noBOM?[]:[254,255];for(aA=0,ay=aE.length;aA<ay;aA++){k=aE.charCodeAt(aA);az=k>>8;if(az>>8){throw new Error("Character at position "+aA.toString(10)+" of string '"+aE+"' exceeds 16bits. Cannot be encoded into UCS-2 BE")}au.push(az);au.push(k-(az<<8))}return String.fromCharCode.apply(ax,au)}},Y=function(k,i){return r(k,i).replace(/\\/g,"\\\\").replace(/\(/g,"\\(").replace(/\)/g,"\\)")},X=function(){aa("/Producer (pdfDataExport "+am+")");if(N.title){aa("/Title ("+Y(N.title)+")")}if(N.subject){aa("/Subject ("+Y(N.subject)+")")}if(N.author){aa("/Author ("+Y(N.author)+")")}if(N.keywords){aa("/Keywords ("+Y(N.keywords)+")")}if(N.creator){aa("/Creator ("+Y(N.creator)+")")}var i=new Date();aa("/CreationDate (D:"+[i.getFullYear(),z(i.getMonth()+1),z(i.getDate()),z(i.getHours()),z(i.getMinutes()),z(i.getSeconds())].join("")+")")},V=function(){aa("/Type /Catalog");aa("/Pages 1 0 R");aa("/OpenAction [3 0 R /FitH null]");aa("/PageLayout /OneColumn");F.publish("putCatalog")},j=function(){aa("/Size "+(m+1));aa("/Root "+m+" 0 R");aa("/Info "+(m-1)+" 0 R")},ap=function(){g++;u=true;f[g]=[]},af=function(){ap();aa(o(y*ai)+" w");aa(G);if(Q!==0){aa(Q.toString(10)+" J")}if(S!==0){aa(S.toString(10)+" j")}F.publish("addPage",{pageNumber:g})},x=function(au,aw){var i,k;if(au===k){au=ag[d].fontName}if(aw===k){aw=ag[d].fontStyle}try{i=P[au][aw]}catch(av){i=k}if(!i){throw new Error("Unable to look up font label for font '"+au+"', '"+aw+"'. Refer to getFontList() for available fonts.")}return i},p=function(){u=false;s=[];C=[];aa("%PDF-"+T);Z();h();v();aa("<<");X();aa(">>");aa("endobj");v();aa("<<");V();aa(">>");aa("endobj");var au=E,k;aa("xref");aa("0 "+(m+1));aa("0000000000 65535 f ");for(k=1;k<=m;k++){aa(q(C[k])+" 00000 n ")}aa("trailer");aa("<<");j();aa(">>");aa("startxref");aa(au);aa("%%EOF");u=true;return s.join("\n")},ab=function(i){var k="S";if(i==="F"){k="f"}else{if(i==="FD"||i==="DF"){k="B"}}return k},H=function(ax,au){var aw,az,ay,aA,av,k;switch(ax){case aw:return p();case"save":if(navigator.getUserMedia){if(window.URL===undefined){return O.output("dataurlnewwindow")}else{if(window.URL.createObjectURL===undefined){return O.output("dataurlnewwindow")}}}az=p();ay=az.length;aA=new Uint8Array(new ArrayBuffer(ay));for(av=0;av<ay;av++){aA[av]=az.charCodeAt(av)}k=new Blob([aA],{type:"application/pdf"});saveAs(k,au);break;case"datauristring":case"dataurlstring":return"data:application/pdf;base64,"+btoa(p());case"datauri":case"dataurl":document.location.href="data:application/pdf;base64,"+btoa(p());break;case"dataurlnewwindow":window.open("data:application/pdf;base64,"+btoa(p()));break;default:throw new Error('Output type "'+ax+'" is not supported.')}};if(ad==="pt"){ai=1}else{if(ad==="mm"){ai=72/25.4}else{if(ad==="cm"){ai=72/2.54}else{if(ad==="in"){ai=72}else{throw ("Invalid unit: "+ad)}}}}if(M.hasOwnProperty(aq)){A=M[aq][1]/ai;B=M[aq][0]/ai}else{try{A=L[1];B=L[0]}catch(al){throw ("Invalid format: "+L)}}if(D==="p"||D==="portrait"){D="p";if(B>A){ae=B;B=A;A=ae}}else{if(D==="l"||D==="landscape"){D="l";if(A>B){ae=B;B=A;A=ae}}else{throw ("Invalid orientation: "+D)}}O.internal={pdfEscape:Y,getStyle:ab,getFont:function(){return ag[x.apply(O,arguments)]},getFontSize:function(){return ah},btoa:btoa,write:function(i,av,au,k){aa(arguments.length===1?i:Array.prototype.join.call(arguments," "))},getCoordinateString:function(i){return o(i*ai)},getVerticalCoordinateString:function(i){return o((A-i)*ai)},collections:{},newObject:v,putStream:J,events:F,scaleFactor:ai,pageSize:{width:B,height:A},output:function(k,i){return H(k,i)}};O.addPage=function(){af();return this};O.text=function(aD,aC,aA,au){var av,ay,ax,aB,k,az,aw;if(typeof aD==="number"){ay=aA;ax=aD;aB=aC;aD=ay;aC=ax;aA=aB}if(typeof aD==="string"&&aD.match(/[\n\r]/)){aD=aD.split(/\r\n|\r|\n/g)}if(typeof au==="undefined"){au={noBOM:true,autoencode:true}}else{if(au.noBOM===av){au.noBOM=true}if(au.autoencode===av){au.autoencode=true}}if(typeof aD==="string"){az=Y(aD,au)}else{if(aD instanceof Array){k=aD.concat();for(aw=k.length-1;aw!==-1;aw--){k[aw]=Y(k[aw],au)}az=k.join(") Tj\nT* (")}else{throw new Error('Type of text must be string or Array. "'+aD+'" is not recognized.')}}aa("BT\n/"+d+" "+ah+" Tf\n"+ah+" TL\n"+ac+"\n"+o(aC*ai)+" "+o((A-aA)*ai)+" Td\n("+az+") Tj\nET");return this};O.line=function(k,av,i,au){aa(o(k*ai)+" "+o((A-av)*ai)+" m "+o(i*ai)+" "+o((A-au)*ai)+" l S");return this};O.lines=function(k,aD,aC,aM,aI){var aw,aK,aA,aB,az,ay,aG,aE,aL,aJ,ax,aH,av,aF,au;if(typeof k==="number"){aK=aC;aA=k;aB=aD;k=aK;aD=aA;aC=aB}aI=ab(aI);aM=aM===aw?[1,1]:aM;aa(n(aD*ai)+" "+n((A-aC)*ai)+" m ");az=aM[0];ay=aM[1];aE=k.length;aF=aD;au=aC;for(aG=0;aG<aE;aG++){aL=k[aG];if(aL.length===2){aF=aL[0]*az+aF;au=aL[1]*ay+au;aa(n(aF*ai)+" "+n((A-au)*ai)+" l")}else{aJ=aL[0]*az+aF;ax=aL[1]*ay+au;aH=aL[2]*az+aF;av=aL[3]*ay+au;aF=aL[4]*az+aF;au=aL[5]*ay+au;aa(n(aJ*ai)+" "+n((A-ax)*ai)+" "+n(aH*ai)+" "+n((A-av)*ai)+" "+n(aF*ai)+" "+n((A-au)*ai)+" c")}}aa(aI);return this};O.rect=function(i,ax,k,av,au){var aw=ab(au);aa([o(i*ai),o((A-ax)*ai),o(k*ai),o(-av*ai),"re",aw].join(" "));return this};O.triangle=function(av,ay,k,aw,i,au,ax){this.lines([[k-av,aw-ay],[i-k,au-aw],[av-i,ay-au]],av,ay,[1,1],ax);return this};O.roundedRect=function(k,az,au,aw,ay,ax,av){var i=4/3*(Math.SQRT2-1);this.lines([[(au-2*ay),0],[(ay*i),0,ay,ax-(ax*i),ay,ax],[0,(aw-2*ax)],[0,(ax*i),-(ay*i),ax,-ay,ax],[(-au+2*ay),0],[-(ay*i),0,-ay,-(ax*i),-ay,-ax],[0,(-aw+2*ax)],[0,-(ax*i),(ay*i),-ax,ay,-ax]],k+ay,az,[1,1],av);return this};O.ellipse=function(i,az,ax,aw,k){var ay=ab(k),av=4/3*(Math.SQRT2-1)*ax,au=4/3*(Math.SQRT2-1)*aw;aa([o((i+ax)*ai),o((A-az)*ai),"m",o((i+ax)*ai),o((A-(az-au))*ai),o((i+av)*ai),o((A-(az-aw))*ai),o(i*ai),o((A-(az-aw))*ai),"c"].join(" "));aa([o((i-av)*ai),o((A-(az-aw))*ai),o((i-ax)*ai),o((A-(az-au))*ai),o((i-ax)*ai),o((A-az)*ai),"c"].join(" "));aa([o((i-ax)*ai),o((A-(az+au))*ai),o((i-av)*ai),o((A-(az+aw))*ai),o(i*ai),o((A-(az+aw))*ai),"c"].join(" "));aa([o((i+av)*ai),o((A-(az+aw))*ai),o((i+ax)*ai),o((A-(az+au))*ai),o((i+ax)*ai),o((A-az)*ai),"c",ay].join(" "));return this};O.circle=function(i,av,au,k){return this.ellipse(i,av,au,au,k)};O.setProperties=function(i){var k;for(k in N){if(N.hasOwnProperty(k)&&i[k]){N[k]=i[k]}}return this};O.setFontSize=function(i){ah=i;return this};O.setFont=function(i,k){d=x(i,k);return this};O.setFontStyle=O.setFontType=function(k){var i;d=x(i,k);return this};O.getFontList=function(){var au={},k,av,i;for(k in P){if(P.hasOwnProperty(k)){au[k]=i=[];for(av in P[k]){if(P[k].hasOwnProperty(av)){i.push(av)}}}}return au};O.setLineWidth=function(i){aa((i*ai).toFixed(2)+" w");return this};O.setDrawColor=function(aw,av,au,i){var k;if(av===undefined||(i===undefined&&aw===av===au)){if(typeof aw==="string"){k=aw+" G"}else{k=o(aw/255)+" G"}}else{if(i===undefined){if(typeof aw==="string"){k=[aw,av,au,"RG"].join(" ")}else{k=[o(aw/255),o(av/255),o(au/255),"RG"].join(" ")}}else{if(typeof aw==="string"){k=[aw,av,au,i,"K"].join(" ")}else{k=[o(aw),o(av),o(au),o(i),"K"].join(" ")}}}aa(k);return this};O.setFillColor=function(aw,av,au,i){var k;if(av===undefined||(i===undefined&&aw===av===au)){if(typeof aw==="string"){k=aw+" g"}else{k=o(aw/255)+" g"}}else{if(i===undefined){if(typeof aw==="string"){k=[aw,av,au,"rg"].join(" ")}else{k=[o(aw/255),o(av/255),o(au/255),"rg"].join(" ")}}else{if(typeof aw==="string"){k=[aw,av,au,i,"k"].join(" ")}else{k=[o(aw),o(av),o(au),o(i),"k"].join(" ")}}}aa(k);return this};O.setTextColor=function(au,k,i){if((au===0&&k===0&&i===0)||(typeof k==="undefined")){ac=n(au/255)+" g"}else{ac=[n(au/255),n(k/255),n(i/255),"rg"].join(" ")}return this};O.CapJoinStyles={0:0,butt:0,but:0,bevel:0,1:1,round:1,rounded:1,circle:1,2:2,projecting:2,project:2,square:2,milter:2};O.setLineCap=function(i){var k=this.CapJoinStyles[i];if(k===undefined){throw new Error("Line cap style of '"+i+"' is not recognized. See or extend .CapJoinStyles property for valid styles")}Q=k;aa(k.toString(10)+" J");return this};O.setLineJoin=function(i){var k=this.CapJoinStyles[i];if(k===undefined){throw new Error("Line join style of '"+i+"' is not recognized. See or extend .CapJoinStyles property for valid styles")}S=k;aa(k.toString(10)+" j");return this};O.output=H;O.save=function(i){O.output("save",i)};for(ao in b.API){if(b.API.hasOwnProperty(ao)){if(ao==="events"&&b.API.events.length){(function(av,ax){var aw,au,k;for(k=ax.length-1;k!==-1;k--){aw=ax[k][0];au=ax[k][1];av.subscribe.apply(av,[aw].concat(typeof au==="function"?[au]:au))}}(F,b.API.events))}else{O[ao]=b.API[ao]}}}e();d="F1";af();F.publish("initialized");return O}b.API={events:[]};return b}());(function(i){var b=0,m=0,a,o,h,c={x:undefined,y:undefined,w:undefined,h:undefined,ln:undefined},f=1,e=false,d=function(p,t,q,r,s){c={x:p,y:t,w:q,h:r,ln:s}},k=function(){return c},j=function(p){b=p},l=function(){return b},n=function(p){m=p},g=function(p){return m};i.getTextDimensions=function(p){a=this.internal.getFont().fontName;o=this.internal.getFontSize();h=this.internal.getFont().fontStyle;var s=0.264583*72/25.4,q,r;r=document.createElement("font");r.id="pdfDataExportCell";r.style.fontStyle=h;r.style.fontName=a;r.style.fontSize=o+"pt";r.innerText=p;document.body.appendChild(r);q={w:(r.offsetWidth+1)*s,h:(r.offsetHeight+1)*s};document.body.removeChild(r);return q};i.cellAddPage=function(){this.addPage();d(undefined,undefined,undefined,undefined,undefined);e=true;f+=1;n(1)};i.cellInitialize=function(){b=0;c={x:undefined,y:undefined,w:undefined,h:undefined,ln:undefined};f=1;e=false;n(0)};i.cell=function(v,u,z,r,p,t){this.lnMod=this.lnMod===undefined?0:this.lnMod;if(this.printingHeaderRow!==true&&this.lnMod!==0){t=t+this.lnMod}if((((t*r)+u+(r*2))/f)>=this.internal.pageSize.height&&f===1&&!e){this.cellAddPage();if(this.printHeaders&&this.tableHeaderRow){this.printHeaderRow(t);this.lnMod+=1;t+=1}if(l()===0){j(Math.round((this.internal.pageSize.height-(r*2))/r))}}else{if(e&&k().ln!==t&&g()===l()){this.cellAddPage();if(this.printHeaders&&this.tableHeaderRow){this.printHeaderRow(t);this.lnMod+=1;t+=1}}}var A=k(),q=this.getTextDimensions(p),s=1;if(A.x!==undefined&&A.ln===t){v=A.x+A.w}if(A.y!==undefined&&A.y===u){u=A.y}if(A.h!==undefined&&A.h===r){r=A.h}if(A.ln!==undefined&&A.ln===t){t=A.ln;s=0}if(e){u=r*(g()+s)}else{u=(u+(r*Math.abs(l()*f-t-l())))}this.rect(v,u,z,r);this.text(p,v+3,u+r-3);n(g()+s);d(v,u,z,r,t);return this};i.getKeys=(typeof Object.keys==="function")?function(p){if(!p){return[]}return Object.keys(p)}:function(p){var q=[],r;for(r in p){if(p.hasOwnProperty(r)){q.push(r)}}return q};i.arrayMax=function(u,t){var p=u[0],q,s,r;for(q=0,s=u.length;q<s;q+=1){r=u[q];if(t){if(t(p,r)===-1){p=r}}else{if(r>p){p=r}}}return p};i.table=function(J,r,I){var v=[],p=[],D,z,B,x,E,y,G={},A={},u,s,H=[],C,F=[],t,q,w;this.lnMod=0;if(I){z=I.autoSize||false;B=this.printHeaders=I.printHeaders||true;x=I.autoStretch||true}if(!J){throw"No data for PDF table"}if(r===undefined||(r===null)){v=this.getKeys(J[0])}else{if(r[0]&&(typeof r[0]!=="string")){for(E=0,y=r.length;E<y;E+=1){D=r[E];v.push(D.name);p.push(D.prompt)}}else{v=r}}if(I.autoSize){w=function(K){return K[D]};for(E=0,y=v.length;E<y;E+=1){D=v[E];G[D]=J.map(w);H.push(this.getTextDimensions(p[E]||D).w);s=G[D];for(C=0,y=s.length;C<y;C+=1){u=s[C];H.push(this.getTextDimensions(u).w)}A[D]=i.arrayMax(H)}}if(I.printHeaders){for(E=0,y=v.length;E<y;E+=1){D=v[E];F.push([10,10,A[D],25,String(p.length?p[E]:D)])}this.setTableHeaderRow(F);this.printHeaderRow(1)}for(E=0,y=J.length;E<y;E+=1){t=J[E];for(C=0,q=v.length;C<q;C+=1){D=v[C];this.cell(10,10,A[D],25,String(t[D]),E+2)}}return this};i.setTableHeaderRow=function(p){this.tableHeaderRow=p};i.printHeaderRow=function(p){if(!this.tableHeaderRow){throw"Property tableHeaderRow does not exist."}var q,s,r,t;this.printingHeaderRow=true;for(r=0,t=this.tableHeaderRow.length;r<t;r+=1){q=this.tableHeaderRow[r];s=[].concat(q);this.cell.apply(this,s.concat(p))}this.printingHeaderRow=false}}(pdfDataExport.API));(function(c){var b=c.getCharWidthsArray=function(s,u){if(!u){u={}}var h=u.widths?u.widths:this.internal.getFont().metadata.Unicode.widths,r=h.fof?h.fof:1,n=u.kerning?u.kerning:this.internal.getFont().metadata.Unicode.kerning,p=n.fof?n.fof:1;var m,j,o,k,q=0,t=h[0]||r,g=[];for(m=0,j=s.length;m<j;m++){o=s.charCodeAt(m);g.push((h[o]||t)/r+(n[o]&&n[o][q]||0)/p);q=o}return g};var e=function(j){var h=j.length,g=0;while(h){h--;g+=j[h]}return g};var a=c.getStringUnitWidth=function(h,g){return e(b.call(this,h,g))};var d=function(g,n,h,j){var q=[];var m=0,k=g.length,p=0;while(m!==k&&p+n[m]<h){p+=n[m];m++}q.push(g.slice(0,m));var o=m;p=0;while(m!==k){if(p+n[m]>j){q.push(g.slice(o,m));p=0;o=m}p+=n[m];m++}if(o!==m){q.push(g.slice(o,m))}return q};var f=function(s,k,v){if(!v){v={}}var t=b(" ",v)[0];var r=s.split(" ");var w=[],x=[w],h=v.textIndent||0,u=0,p=0,g,q;var o,m,n;for(o=0,m=r.length;o<m;o++){g=r[o];q=b(g,v);p=e(q);if(h+u+p>k){if(p>k){n=d(g,q,k-(h+u),k);w.push(n.shift());w=[n.pop()];while(n.length){x.push([n.shift()])}p=e(q.slice(g.length-w[0].length))}else{w=[g]}x.push(w);h=p;u=t}else{w.push(g);h+=u+p;u=t}}var j=[];for(o=0,m=x.length;o<m;o++){j.push(x[o].join(" "))}return j};c.splitTextToSize=function(q,m,r){if(!r){r={}}var h=r.fontSize||this.internal.getFontSize(),g=(function(l){var t={0:1},i={};if(!l.widths||!l.kerning){var u=this.internal.getFont(l.fontName,l.fontStyle),s="Unicode";if(u.metadata[s]){return{widths:u.metadata[s].widths||t,kerning:u.metadata[s].kerning||i}}}else{return{widths:l.widths,kerning:l.kerning}}return{widths:t,kerning:i}}).call(this,r);var p;if(q.match(/[\n\r]/)){p=q.split(/\r\n|\r|\n/g)}else{p=[q]}var j=1*this.internal.scaleFactor*m/h;g.textIndent=r.textIndent?r.textIndent*1*this.internal.scaleFactor/h:0;var o,n,k=[];for(o=0,n=p.length;o<n;o++){k=k.concat(f(p[o],j,g))}return k}})(pdfDataExport.API);(function(c){var d="addImage_";var f=function(m){var l,h;if(!m.charCodeAt(0)===255||!m.charCodeAt(1)===216||!m.charCodeAt(2)===255||!m.charCodeAt(3)===224||!m.charCodeAt(6)==="J".charCodeAt(0)||!m.charCodeAt(7)==="F".charCodeAt(0)||!m.charCodeAt(8)==="I".charCodeAt(0)||!m.charCodeAt(9)==="F".charCodeAt(0)||!m.charCodeAt(10)===0){throw new Error("getJpegSize requires a binary jpeg file")}var j=m.charCodeAt(4)*256+m.charCodeAt(5);var k=4,g=m.length;while(k<g){k+=j;if(m.charCodeAt(k)!==255){throw new Error("getJpegSize could not find the size of the image")}if(m.charCodeAt(k+1)===192){h=m.charCodeAt(k+5)*256+m.charCodeAt(k+6);l=m.charCodeAt(k+7)*256+m.charCodeAt(k+8);return[l,h]}else{k+=2;j=m.charCodeAt(k)*256+m.charCodeAt(k+1)}}},b=function(g){var m=this.internal.newObject(),h=this.internal.write,l=this.internal.putStream;g.n=m;h("<</Type /XObject");h("/Subtype /Image");h("/Width "+g.w);h("/Height "+g.h);if(g.cs==="Indexed"){h("/ColorSpace [/Indexed /DeviceRGB "+(g.pal.length/3-1)+" "+(m+1)+" 0 R]")}else{h("/ColorSpace /"+g.cs);if(g.cs==="DeviceCMYK"){h("/Decode [1 0 1 0 1 0 1 0]")}}h("/BitsPerComponent "+g.bpc);if("f" in g){h("/Filter /"+g.f)}if("dp" in g){h("/DecodeParms <<"+g.dp+">>")}if("trns" in g&&g.trns.constructor==Array){var k="";for(var j=0;j<g.trns.length;j++){k+=(g[k][j]+" "+g.trns[j]+" ");h("/Mask ["+k+"]")}}if("smask" in g){h("/SMask "+(m+1)+" 0 R")}h("/Length "+g.data.length+">>");l(g.data);h("endobj")},e=function(){var g=this.internal.collections[d+"images"];for(var h in g){b.call(this,g[h])}},a=function(){var g=this.internal.collections[d+"images"],h=this.internal.write,k;for(var j in g){k=g[j];h("/I"+k.i,k.n,"0","R")}};c.addImage=function(g,s,q,p,t,l){if(typeof g==="object"&&g.nodeType===1){var j=document.createElement("canvas");j.width=g.clientWidth;j.height=g.clientHeight;var u=j.getContext("2d");if(!u){throw ("addImage requires canvas to be supported by browser.")}u.drawImage(g,0,0,j.width,j.height);g=j.toDataURL("image/jpeg");s="JPEG"}if(s.toUpperCase()!=="JPEG"){throw new Error("addImage currently only supports format 'JPEG', not '"+s+"'")}var i,n=this.internal.collections[d+"images"],m=this.internal.getCoordinateString,o=this.internal.getVerticalCoordinateString;if(g.substring(0,23)==="data:image/jpeg;base64,"){g=atob(g.replace("data:image/jpeg;base64,",""))}if(n){i=Object.keys?Object.keys(n).length:(function(w){var h=0;for(var v in w){if(w.hasOwnProperty(v)){h++}}return h})(n)}else{i=0;this.internal.collections[d+"images"]=n={};this.internal.events.subscribe("putResources",e);this.internal.events.subscribe("putXobjectDict",a)}var r=f(g);var k={w:r[0],h:r[1],cs:"DeviceRGB",bpc:8,f:"DCTDecode",i:i,data:g};n[i]=k;if(!t&&!l){t=-96;l=-96}if(t<0){t=(-1)*k.w*72/t/this.internal.scaleFactor}if(l<0){l=(-1)*k.h*72/l/this.internal.scaleFactor}if(t===0){t=l*k.w/k.h}if(l===0){l=t*k.h/k.w}this.internal.write("q",m(t),"0 0",m(l),m(q),o(p+l),"cm /I"+k.i,"Do Q");return this}})(pdfDataExport.API);(function(a){var e=function(q){var w="0123456789abcdef",o="klmnopqrstuvwxyz",h={};for(var r=0;r<o.length;r++){h[o[r]]=w[r]}var p,m={},n=1,t,k=m,g=[],s,l="",u="",v,j=q.length-1,f;r=1;while(r!=j){f=q[r];r+=1;if(f=="'"){if(t){v=t.join("");t=p}else{t=[]}}else{if(t){t.push(f)}else{if(f=="{"){g.push([k,v]);k={};v=p}else{if(f=="}"){s=g.pop();s[0][s[1]]=k;v=p;k=s[0]}else{if(f=="-"){n=-1}else{if(v===p){if(h.hasOwnProperty(f)){l+=h[f];v=parseInt(l,16)*n;n=+1;l=""}else{l+=f}}else{if(h.hasOwnProperty(f)){u+=h[f];k[v]=parseInt(u,16)*n;n=+1;v=p;u=""}else{u+=f}}}}}}}}return m};var d={codePages:["WinAnsiEncoding"],WinAnsiEncoding:e("{19m8n201n9q201o9r201s9l201t9m201u8m201w9n201x9o201y8o202k8q202l8r202m9p202q8p20aw8k203k8t203t8v203u9v2cq8s212m9t15m8w15n9w2dw9s16k8u16l9u17s9z17x8y17y9y}")},c={Unicode:{Courier:d,"Courier-Bold":d,"Courier-BoldOblique":d,"Courier-Oblique":d,Helvetica:d,"Helvetica-Bold":d,"Helvetica-BoldOblique":d,"Helvetica-Oblique":d,"Times-Roman":d,"Times-Bold":d,"Times-BoldItalic":d,"Times-Italic":d}},b={Unicode:{"Courier-Oblique":e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-BoldItalic":e("{'widths'{k3o2q4ycx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2r202m2n2n3m2o3m2p5n202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5n4l4m4m4m4n4m4o4s4p4m4q4m4r4s4s4y4t2r4u3m4v4m4w3x4x5t4y4s4z4s5k3x5l4s5m4m5n3r5o3x5p4s5q4m5r5t5s4m5t3x5u3x5v2l5w1w5x2l5y3t5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q2l6r3m6s3r6t1w6u1w6v3m6w1w6x4y6y3r6z3m7k3m7l3m7m2r7n2r7o1w7p3r7q2w7r4m7s3m7t2w7u2r7v2n7w1q7x2n7y3t202l3mcl4mal2ram3man3mao3map3mar3mas2lat4uau1uav3maw3way4uaz2lbk2sbl3t'fof'6obo2lbp3tbq3mbr1tbs2lbu1ybv3mbz3mck4m202k3mcm4mcn4mco4mcp4mcq5ycr4mcs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz2w203k6o212m6o2dw2l2cq2l3t3m3u2l17s3x19m3m}'kerning'{cl{4qu5kt5qt5rs17ss5ts}201s{201ss}201t{cks4lscmscnscoscpscls2wu2yu201ts}201x{2wu2yu}2k{201ts}2w{4qx5kx5ou5qx5rs17su5tu}2x{17su5tu5ou}2y{4qx5kx5ou5qx5rs17ss5ts}'fof'-6ofn{17sw5tw5ou5qw5rs}7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qs}3v{17su5tu5os5qs}7p{17su5tu}ck{4qu5kt5qt5rs17ss5ts}4l{4qu5kt5qt5rs17ss5ts}cm{4qu5kt5qt5rs17ss5ts}cn{4qu5kt5qt5rs17ss5ts}co{4qu5kt5qt5rs17ss5ts}cp{4qu5kt5qt5rs17ss5ts}6l{4qu5ou5qw5rt17su5tu}5q{ckuclucmucnucoucpu4lu}5r{ckuclucmucnucoucpu4lu}7q{cksclscmscnscoscps4ls}6p{4qu5ou5qw5rt17sw5tw}ek{4qu5ou5qw5rt17su5tu}el{4qu5ou5qw5rt17su5tu}em{4qu5ou5qw5rt17su5tu}en{4qu5ou5qw5rt17su5tu}eo{4qu5ou5qw5rt17su5tu}ep{4qu5ou5qw5rt17su5tu}es{17ss5ts5qs4qu}et{4qu5ou5qw5rt17sw5tw}eu{4qu5ou5qw5rt17ss5ts}ev{17ss5ts5qs4qu}6z{17sw5tw5ou5qw5rs}fm{17sw5tw5ou5qw5rs}7n{201ts}fo{17sw5tw5ou5qw5rs}fp{17sw5tw5ou5qw5rs}fq{17sw5tw5ou5qw5rs}7r{cksclscmscnscoscps4ls}fs{17sw5tw5ou5qw5rs}ft{17su5tu}fu{17su5tu}fv{17su5tu}fw{17su5tu}fz{cksclscmscnscoscps4ls}}}"),"Helvetica-Bold":e("{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}"),Courier:e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Courier-BoldOblique":e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-Bold":e("{'widths'{k3q2q5ncx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2l202m2n2n3m2o3m2p6o202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5x4l4s4m4m4n4s4o4s4p4m4q3x4r4y4s4y4t2r4u3m4v4y4w4m4x5y4y4s4z4y5k3x5l4y5m4s5n3r5o4m5p4s5q4s5r6o5s4s5t4s5u4m5v2l5w1w5x2l5y3u5z3m6k2l6l3m6m3r6n2w6o3r6p2w6q2l6r3m6s3r6t1w6u2l6v3r6w1w6x5n6y3r6z3m7k3r7l3r7m2w7n2r7o2l7p3r7q3m7r4s7s3m7t3m7u2w7v2r7w1q7x2r7y3o202l3mcl4sal2lam3man3mao3map3mar3mas2lat4uau1yav3maw3tay4uaz2lbk2sbl3t'fof'6obo2lbp3rbr1tbs2lbu2lbv3mbz3mck4s202k3mcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3rek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3m3u2l17s4s19m3m}'kerning'{cl{4qt5ks5ot5qy5rw17sv5tv}201t{cks4lscmscnscoscpscls4wv}2k{201ts}2w{4qu5ku7mu5os5qx5ru17su5tu}2x{17su5tu5ou5qs}2y{4qv5kv7mu5ot5qz5ru17su5tu}'fof'-6o7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qu}3v{17su5tu5os5qu}fu{17su5tu5ou5qu}7p{17su5tu5ou5qu}ck{4qt5ks5ot5qy5rw17sv5tv}4l{4qt5ks5ot5qy5rw17sv5tv}cm{4qt5ks5ot5qy5rw17sv5tv}cn{4qt5ks5ot5qy5rw17sv5tv}co{4qt5ks5ot5qy5rw17sv5tv}cp{4qt5ks5ot5qy5rw17sv5tv}6l{17st5tt5ou5qu}17s{ckuclucmucnucoucpu4lu4wu}5o{ckuclucmucnucoucpu4lu4wu}5q{ckzclzcmzcnzcozcpz4lz4wu}5r{ckxclxcmxcnxcoxcpx4lx4wu}5t{ckuclucmucnucoucpu4lu4wu}7q{ckuclucmucnucoucpu4lu}6p{17sw5tw5ou5qu}ek{17st5tt5qu}el{17st5tt5ou5qu}em{17st5tt5qu}en{17st5tt5qu}eo{17st5tt5qu}ep{17st5tt5ou5qu}es{17ss5ts5qu}et{17sw5tw5ou5qu}eu{17sw5tw5ou5qu}ev{17ss5ts5qu}6z{17sw5tw5ou5qu5rs}fm{17sw5tw5ou5qu5rs}fn{17sw5tw5ou5qu5rs}fo{17sw5tw5ou5qu5rs}fp{17sw5tw5ou5qu5rs}fq{17sw5tw5ou5qu5rs}7r{cktcltcmtcntcotcpt4lt5os}fs{17sw5tw5ou5qu5rs}ft{17su5tu5ou5qu}7m{5os}fv{17su5tu5ou5qu}fw{17su5tu5ou5qu}fz{cksclscmscnscoscps4ls}}}"),Helvetica:e("{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}"),"Helvetica-BoldOblique":e("{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}"),"Courier-Bold":e("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-Italic":e("{'widths'{k3n2q4ycx2l201n3m201o5t201s2l201t2l201u2l201w3r201x3r201y3r2k1t2l2l202m2n2n3m2o3m2p5n202q5t2r1p2s2l2t2l2u3m2v4n2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w4n3x4n3y4n3z3m4k5w4l3x4m3x4n4m4o4s4p3x4q3x4r4s4s4s4t2l4u2w4v4m4w3r4x5n4y4m4z4s5k3x5l4s5m3x5n3m5o3r5p4s5q3x5r5n5s3x5t3r5u3r5v2r5w1w5x2r5y2u5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q1w6r3m6s3m6t1w6u1w6v2w6w1w6x4s6y3m6z3m7k3m7l3m7m2r7n2r7o1w7p3m7q2w7r4m7s2w7t2w7u2r7v2s7w1v7x2s7y3q202l3mcl3xal2ram3man3mao3map3mar3mas2lat4wau1vav3maw4nay4waz2lbk2sbl4n'fof'6obo2lbp3mbq3obr1tbs2lbu1zbv3mbz3mck3x202k3mcm3xcn3xco3xcp3xcq5tcr4mcs3xct3xcu3xcv3xcw2l2m2ucy2lcz2ldl4mdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr4nfs3mft3mfu3mfv3mfw3mfz2w203k6o212m6m2dw2l2cq2l3t3m3u2l17s3r19m3m}'kerning'{cl{5kt4qw}201s{201sw}201t{201tw2wy2yy6q-t}201x{2wy2yy}2k{201tw}2w{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}2x{17ss5ts5os}2y{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}'fof'-6o6t{17ss5ts5qs}7t{5os}3v{5qs}7p{17su5tu5qs}ck{5kt4qw}4l{5kt4qw}cm{5kt4qw}cn{5kt4qw}co{5kt4qw}cp{5kt4qw}6l{4qs5ks5ou5qw5ru17su5tu}17s{2ks}5q{ckvclvcmvcnvcovcpv4lv}5r{ckuclucmucnucoucpu4lu}5t{2ks}6p{4qs5ks5ou5qw5ru17su5tu}ek{4qs5ks5ou5qw5ru17su5tu}el{4qs5ks5ou5qw5ru17su5tu}em{4qs5ks5ou5qw5ru17su5tu}en{4qs5ks5ou5qw5ru17su5tu}eo{4qs5ks5ou5qw5ru17su5tu}ep{4qs5ks5ou5qw5ru17su5tu}es{5ks5qs4qs}et{4qs5ks5ou5qw5ru17su5tu}eu{4qs5ks5qw5ru17su5tu}ev{5ks5qs4qs}ex{17ss5ts5qs}6z{4qv5ks5ou5qw5ru17su5tu}fm{4qv5ks5ou5qw5ru17su5tu}fn{4qv5ks5ou5qw5ru17su5tu}fo{4qv5ks5ou5qw5ru17su5tu}fp{4qv5ks5ou5qw5ru17su5tu}fq{4qv5ks5ou5qw5ru17su5tu}7r{5os}fs{4qv5ks5ou5qw5ru17su5tu}ft{17su5tu5qs}fu{17su5tu5qs}fv{17su5tu5qs}fw{17su5tu5qs}}}"),"Times-Roman":e("{'widths'{k3n2q4ycx2l201n3m201o6o201s2l201t2l201u2l201w2w201x2w201y2w2k1t2l2l202m2n2n3m2o3m2p5n202q6o2r1m2s2l2t2l2u3m2v3s2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v1w3w3s3x3s3y3s3z2w4k5w4l4s4m4m4n4m4o4s4p3x4q3r4r4s4s4s4t2l4u2r4v4s4w3x4x5t4y4s4z4s5k3r5l4s5m4m5n3r5o3x5p4s5q4s5r5y5s4s5t4s5u3x5v2l5w1w5x2l5y2z5z3m6k2l6l2w6m3m6n2w6o3m6p2w6q2l6r3m6s3m6t1w6u1w6v3m6w1w6x4y6y3m6z3m7k3m7l3m7m2l7n2r7o1w7p3m7q3m7r4s7s3m7t3m7u2w7v3k7w1o7x3k7y3q202l3mcl4sal2lam3man3mao3map3mar3mas2lat4wau1vav3maw3say4waz2lbk2sbl3s'fof'6obo2lbp3mbq2xbr1tbs2lbu1zbv3mbz2wck4s202k3mcm4scn4sco4scp4scq5tcr4mcs3xct3xcu3xcv3xcw2l2m2tcy2lcz2ldl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek2wel2wem2wen2weo2wep2weq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr3sfs3mft3mfu3mfv3mfw3mfz3m203k6o212m6m2dw2l2cq2l3t3m3u1w17s4s19m3m}'kerning'{cl{4qs5ku17sw5ou5qy5rw201ss5tw201ws}201s{201ss}201t{ckw4lwcmwcnwcowcpwclw4wu201ts}2k{201ts}2w{4qs5kw5os5qx5ru17sx5tx}2x{17sw5tw5ou5qu}2y{4qs5kw5os5qx5ru17sx5tx}'fof'-6o7t{ckuclucmucnucoucpu4lu5os5rs}3u{17su5tu5qs}3v{17su5tu5qs}7p{17sw5tw5qs}ck{4qs5ku17sw5ou5qy5rw201ss5tw201ws}4l{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cm{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cn{4qs5ku17sw5ou5qy5rw201ss5tw201ws}co{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cp{4qs5ku17sw5ou5qy5rw201ss5tw201ws}6l{17su5tu5os5qw5rs}17s{2ktclvcmvcnvcovcpv4lv4wuckv}5o{ckwclwcmwcnwcowcpw4lw4wu}5q{ckyclycmycnycoycpy4ly4wu5ms}5r{cktcltcmtcntcotcpt4lt4ws}5t{2ktclvcmvcnvcovcpv4lv4wuckv}7q{cksclscmscnscoscps4ls}6p{17su5tu5qw5rs}ek{5qs5rs}el{17su5tu5os5qw5rs}em{17su5tu5os5qs5rs}en{17su5qs5rs}eo{5qs5rs}ep{17su5tu5os5qw5rs}es{5qs}et{17su5tu5qw5rs}eu{17su5tu5qs5rs}ev{5qs}6z{17sv5tv5os5qx5rs}fm{5os5qt5rs}fn{17sv5tv5os5qx5rs}fo{17sv5tv5os5qx5rs}fp{5os5qt5rs}fq{5os5qt5rs}7r{ckuclucmucnucoucpu4lu5os}fs{17sv5tv5os5qx5rs}ft{17ss5ts5qs}fu{17sw5tw5qs}fv{17sw5tw5qs}fw{17ss5ts5qs}fz{ckuclucmucnucoucpu4lu5os5rs}}}"),"Helvetica-Oblique":e("{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}")}};a.events.push(["addFonts",function(i){var f,g,h,k,j="Unicode",l;for(g in i.fonts){if(i.fonts.hasOwnProperty(g)){f=i.fonts[g];h=b[j][f.PostScriptName];if(h){if(f.metadata[j]){k=f.metadata[j]}else{k=f.metadata[j]={}}k.widths=h.widths;k.kerning=h.kerning}l=c[j][f.PostScriptName];if(l){if(f.metadata[j]){k=f.metadata[j]}else{k=f.metadata[j]={}}k.encoding=l;if(l.codePages&&l.codePages.length){f.encoding=l.codePages[0]}}}}}])})(pdfDataExport.API);var saveAs=saveAs||(navigator.msSaveBlob&&navigator.msSaveBlob.bind(navigator))||(function(h){var r=h.document,l=function(){return h.URL||h.webkitURL||h},e=h.URL||h.webkitURL||h,n=$("<a></a>")[0],g="download" in n,j=function(t){var s=r.createEvent("MouseEvents");s.initMouseEvent("click",true,false,h,0,0,0,0,0,false,false,false,false,0,null);return t.dispatchEvent(s)},o=h.webkitRequestFileSystem,p=h.requestFileSystem||o||h.mozRequestFileSystem,m=function(s){(h.setImmediate||h.setTimeout)(function(){throw s},0)},c="application/octet-stream",k=0,b=[],i=function(){var t=b.length;while(t--){var s=b[t];if(typeof s==="string"){e.revokeObjectURL(s)}else{s.remove()}}b.length=0},q=function(t,s,w){s=[].concat(s);var v=s.length;while(v--){var x=t["on"+s[v]];if(typeof x==="function"){try{x.call(t,w||t)}catch(u){m(u)}}}},f=function(t,u){var v=this,B=t.type,E=false,x,w,s=function(){var F=l().createObjectURL(t);b.push(F);return F},A=function(){q(v,"writestart progress write writeend".split(" "))},D=function(){if(E||!x){x=s(t)}if(w){w.location.href=x}v.readyState=v.DONE;A()},z=function(F){return function(){if(v.readyState!==v.DONE){return F.apply(this,arguments)}}},y={create:true,exclusive:false},C;v.readyState=v.INIT;if(!u){u="download"}if(g){x=s(t);n.href=x;n.download=u;if(j(n)){v.readyState=v.DONE;A();return}}if(h.chrome&&B&&B!==c){C=t.slice||t.webkitSlice;t=C.call(t,0,t.size,c);E=true}if(o&&u!=="download"){u+=".download"}if(B===c||o){w=h}else{w=h.open()}if(!p){D();return}k+=t.size;p(h.TEMPORARY,k,z(function(F){F.root.getDirectory("saved",y,z(function(G){var H=function(){G.getFile(u,y,z(function(I){I.createWriter(z(function(J){J.onwriteend=function(K){w.location.href=I.toURL();b.push(I);v.readyState=v.DONE;q(v,"writeend",K)};J.onerror=function(){var K=J.error;if(K.code!==K.ABORT_ERR){D()}};"writestart progress write abort".split(" ").forEach(function(K){J["on"+K]=v["on"+K]});J.write(t);v.abort=function(){J.abort();v.readyState=v.DONE};v.readyState=v.WRITING}),D)}),D)};G.getFile(u,{create:false},z(function(I){I.remove();H()}),z(function(I){if(I.code===I.NOT_FOUND_ERR){H()}else{D()}}))}),D)}),D)},d=f.prototype,a=function(s,t){return new f(s,t)};d.abort=function(){var s=this;s.readyState=s.DONE;q(s,"abort")};d.readyState=d.INIT=0;d.WRITING=1;d.DONE=2;d.error=d.onwritestart=d.onprogress=d.onwrite=d.onabort=d.onerror=d.onwriteend=null;if(h.addEventListener){h.addEventListener("unload",i,false)}return a}(self));(function(a){var b="pdfDataExport IE Below 9 Shim plugin";a.output=function(e,d){return this.internal.output(e,d);var c="Output.pdf";switch(e){case"datauristring":case"dataurlstring":case"datauri":case"dataurl":case"dataurlnewwindow":console.log(b+": Data URIs are not supported on IE6-9.");break;case"save":c=d;break}}})(pdfDataExport.API);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdata.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdata.js
new file mode 100644 (file)
index 0000000..70a57d9
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(i){i.jqx.observableArray=function(e,J){if(typeof(e)=="string"){e=i.parseJSON(e)}if(!Object.defineProperty||!(function(){try{Object.defineProperty({},"x",{});return true}catch(M){return false}}())){var L=Object.defineProperty;Object.defineProperty=function(O,P,N){if(L){try{return L(O,P,N)}catch(M){}}if(O!==Object(O)){throw TypeError("Object.defineProperty called on non-object")}if(Object.prototype.__defineGetter__&&("get" in N)){Object.prototype.__defineGetter__.call(O,P,N.get)}if(Object.prototype.__defineSetter__&&("set" in N)){Object.prototype.__defineSetter__.call(O,P,N.set)}if("value" in N){O[P]=N.value}else{if(!O[P]){O[P]=N}}return O}}if(!Array.prototype.forEach){Array.prototype.forEach=function(N){if(this===void 0||this===null){throw TypeError()}var Q=Object(this);var M=Q.length>>>0;if(typeof N!=="function"){throw TypeError()}var P=arguments[1],O;for(O=0;O<M;O++){if(O in Q){N.call(P,Q[O],O,Q)}}}}if(typeof Object.getOwnPropertyNames!=="function"){Object.getOwnPropertyNames=function(O){if(O!==Object(O)){throw TypeError("Object.getOwnPropertyNames called on non-object")}var M=[],N;for(N in O){if(Object.prototype.hasOwnProperty.call(O,N)){M.push(N)}}return M}}var I=this,H,K=[];I.notifier=null;I.name="observableArray";I.observing=true;I.changes=new Array();var J=J;I.observe=function(){I.observing=true;if(arguments.length==1){J=arguments[0]}};I.unobserve=function(){I.observing=false};I.toArray=function(){return K.slice(0)};I.toJSON=function(X,O){var U=K;if(O){U=O}var T=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,W={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function M(Z){return'"'+Z.replace(T,function(aa){var ab=W[aa];return typeof ab==="string"?ab:"\\u"+("0000"+aa.charCodeAt(0).toString(16)).slice(-4)})+'"'}function N(Z){return Z<10?"0"+Z:Z}function P(aa){var Z;if(isFinite(aa.valueOf())){Z=aa.getUTCFullYear()+"-"+N(aa.getUTCMonth()+1)+"-"+N(aa.getUTCDate())+"T"+N(aa.getUTCHours())+":"+N(aa.getUTCMinutes())+":"+N(aa.getUTCSeconds())+'Z"'}else{Z="null"}return Z}function Q(ac){var Z=ac.length,aa=[],ab;for(ab=0;ab<Z;ab++){aa.push(R(ab,ac)||"null")}return"["+aa.join(",")+"]"}function Y(ac){var aa=[],ab,Z;for(ab in ac){if(Object.prototype.hasOwnProperty.call(ac,ab)){if(ab!=""&&X&&X.indexOf(ab)===-1){continue}Z=R(ab,ac);if(Z){aa.push(M(ab)+":"+Z)}}}return"{"+aa.join(",")+"}"}function S(Z){switch(Object.prototype.toString.call(Z)){case"[object Date]":return P(Z);case"[object Array]":return Q(Z)}return Y(Z)}function V(aa,Z){switch(Z){case"string":return M(aa);case"number":case"float":case"integer":case"int":return isFinite(aa)?aa:"null";case"boolean":return aa}return"null"}function R(aa,Z){var ac=Z[aa],ab=typeof ac;if(ac&&typeof ac==="object"&&typeof ac.toJSON==="function"){ac=ac.toJSON(aa);ab=typeof ac}if(/(number|float|int|integer|string|boolean)/.test(ab)||(!ac&&ab==="object")){return V(ac,ab)}else{return S(ac)}}if(!X&&window.JSON&&typeof window.JSON.stringify==="function"){return window.JSON.stringify(U)}return R("",{"":U})};I.defineIndexProperty=function(O){if(!(O in I)){var M=function(V,S,U,R){var T=V[S];var Q=T;var P=function(){return Q};var W=function(ab){T=ab;if(Q!==T){var aa=Q;Q=T;if(typeof H==="function"){var Y=K.indexOf(R);var Z="";var X=function(ad,ac){Object.getOwnPropertyNames(ad).forEach(function(ae){var af=i.type(ad[ae]);if(af=="array"||af=="object"){X(ad[ae],ac+"."+ae)}else{if(S===ae){Z=ac+"."+ae}}})};X(R,Y);H({object:I,type:"update",path:Z,index:Y,name:S,newValue:T,oldValue:aa})}}Q=T;return T};if(V[S]&&S!="length"){if(Object.defineProperty){Object.defineProperty(V,S,{get:P,set:W})}else{if(Object.prototype.__defineGetter__&&Object.prototype.__defineSetter__){Object.prototype.__defineGetter__.call(V,S,P);Object.prototype.__defineSetter__.call(V,S,W)}}}};var N=function(S,R,P){var Q=i.type(S);if(/(number|float|int|integer|string|boolean)/.test(Q)){return}if(S===undefined){return}Object.getOwnPropertyNames(S).forEach(function(T){var U=i.type(S[T]);if(U=="array"||U=="object"){M(S,T,R+"."+T,P);N(S[T],R+"."+T,P)}else{M(S,T,R+"."+T,P)}})};Object.defineProperty(I,O,{configurable:true,enumerable:true,get:function(){return K[O]},set:function(Q){var P=K[O];if(I.toJSON(null,P)!=I.toJSON(null,Q)){K[O]=Q;if(typeof H==="function"){H({object:I,type:"update",path:O.toString(),index:O,name:"index",newValue:Q,oldValue:P})}N(Q,O,Q)}}});N(I[O],O,I[O])}};I.push=function(){var M;for(var N=0,O=arguments.length;N<O;N++){M=K.length;K.push(arguments[N]);I.defineIndexProperty(M);if(typeof H==="function"){H({object:I,type:"add",name:"length",index:M,newValue:K.length,oldValue:M})}}return K.length};I.pop=function(){if(~K.length){var M=K.length-1,N=K.pop();delete I[M];if(typeof H==="function"){H({object:I,type:"delete",name:"length",index:M,newValue:K.length,oldValue:M})}return N}};I.unshift=function(){var M=K.length;for(var N=0,O=arguments.length;N<O;N++){K.splice(N,0,arguments[N]);I.defineIndexProperty(K.length-1)}if(typeof H==="function"){H({object:I,type:"add",index:0,name:"length",newValue:K.length,oldValue:M})}return K.length};I.shift=function(){var M=K.length;if(~K.length){var N=K.shift();K.length===0&&delete I[M];if(typeof H==="function"){H({object:I,type:"delete",index:M,name:"length",newValue:K.length,oldValue:M})}return N}};I.slice=function(Q,N,P){var M=K.slice(Q,N);var O=new i.jqx.observableArray(M,P);return O};I.splice=function(Q,R,M){var P=[],U,T;Q=!~Q?K.length-Q:Q;R=(R==null?K.length-Q:R)||0;while(R--){U=K.splice(Q,1)[0];P.push(U);delete I[K.length];if(typeof H==="function"){H({object:I,type:"delete",index:Q,name:"length",newValue:-1,oldValue:Q})}}for(var N=2,S=arguments.length;N<S;N++){K.splice(Q,0,arguments[N]);defineIndexProperty(K.length-1);if(typeof H==="function"){H({object:I,type:"add",index:Q,name:"length",newValue:K.length-1,oldValue:Q})}Q++}var O=new i.jqx.observableArray(P,M);return O};Object.defineProperty(I,"length",{configurable:false,enumerable:true,get:function(){return K.length},set:function(M){var N=Number(M);if(N%1===0&&N>=0){if(N<K.length){I.splice(N)}else{if(N>K.length){I.push.apply(I,new Array(N-K.length))}}}else{throw new RangeError("Invalid array length")}return M}});i.jqx.observableArray.prototype.fromArray=function(O,N){var M=new i.jqx.observableArray(O,N);return M};i.jqx.observableArray.prototype.clone=function(){var M=new i.jqx.observableArray(K,J);M.observing=I.observing;M.changes=I.changes;M.notifier=I.notifier;return M};I.remove=function(N){if(N<0||N>=I.length){throw new Error("Invalid index : "+N)}if(I.hasOwnProperty(N)){var M=I[N];I[N]=undefined;K[N]=undefined;if(typeof H==="function"){H({object:I,type:"delete",index:N,name:"index",newValue:undefined,oldValue:M})}return true}return false};I.concat=function(N,P){var M=K.concat(N);var O=new i.jqx.observableArray(M,P);return O};Object.getOwnPropertyNames(Array.prototype).forEach(function(M){if(!(M in I)){var N=function(){var Q=I.observing;I.observing=false;var P=K[M];var O=P.apply(K,arguments);I.observing=Q;return O};Object.defineProperty(I,M,{configurable:false,enumerable:true,writeable:false,value:N})}});I.set=function(N,P){if(i.type(N)=="string"&&N.split(".").length>1){var M=N.split(".");var Q=I;for(var O=0;O<M.length;O++){if(O===0){if(M[O]>=I.length){throw new Error("Invalid Index: "+N)}}if(O<M.length-1){Q=Q[M[O]]}else{Q[M[O]]=P}}return true}if(N>=I.length){I.push(P)}else{I[N]=P}return true};I.get=function(M){return I[M]};if(e instanceof Array){I.push.apply(I,e)}H=function(){if(!I.observing){return}if(arguments&&arguments[0]){I.changes.push(arguments[0])}if(J){J.apply(I,arguments)}if(I.notifier){I.notifier.apply(I,arguments)}};return I};i.jqx.formatDate=function(H,J,I){var e=i.jqx.dataFormat.formatdate(H,J,I);return e};i.jqx.formatNumber=function(H,J,I){var e=i.jqx.dataFormat.formatnumber(H,J,I);return e};i.jqx.dataAdapter=function(J,e){if(J!=undefined){if(J.dataFields!==undefined){J.datafields=J.dataFields}if(J.dataType!==undefined){J.datatype=J.dataType}if(J.localData!==undefined){J.localdata=J.localData}if(J.sortColumn!==undefined){J.sortcolumn=J.sortColumn}if(J.sortDirection!==undefined){J.sortdirection=J.sortDirection}if(J.sortOrder!==undefined){J.sortdirection=J.sortOrder}if(J.formatData!==undefined){J.formatdata=J.formatData}if(J.processData!==undefined){J.processdata=J.processData}if(J.pageSize!==undefined){J.pagesize=J.pageSize}if(J.pageNum!==undefined){J.pagenum=J.pageNum}if(J.updateRow!==undefined){J.updaterow=J.updateRow}if(J.addRow!==undefined){J.addrow=J.addRow}if(J.deleteRow!==undefined){J.deleterow=J.deleteRow}if(J.contentType!==undefined){J.contenttype=J.contentType}if(J.totalRecords!=undefined){J.totalrecords=J.totalRecords}if(J.loadError!=undefined){J.loadError=J.loadError}if(J.sortComparer!=undefined){J.sortcomparer=J.sortComparer}}this._source=J;this._options=e||{};if(J.beforeLoadComplete!=undefined){this._options.beforeLoadComplete=this._source.beforeLoadComplete}if(J.downloadComplete!=undefined){this._options.downloadComplete=this._source.downloadComplete}if(J.loadComplete!=undefined){this._options.loadComplete=this._source.loadComplete}if(J.autoBind!=undefined){this._options.downloadComplete=this._source.autoBind}if(J.formatData!=undefined){this._options.formatData=this._source.formatData}if(J.loadError!=undefined){this._options.loadError=this._source.loadError}if(J.beforeSend!=undefined){this._options.beforeSend=this._source.beforeSend}if(J.contentType!=undefined){this._options.contentType=this._source.contentType}if(J.async!=undefined){this._options.async=this._source.async}if(J.loadServerData!=undefined){this._options.loadServerData=this._source.loadServerData}if(J.uniqueDataFields!=undefined){this._options.uniqueDataFields=this._source.uniqueDataFields}this.records=new Array();this._downloadComplete=new Array();this._bindingUpdate=new Array();if(J!=undefined&&J.localdata!=null&&typeof J.localdata=="function"){var I=J.localdata();if(I!=null){J._localdata=J.localdata;var H=this;if(J._localdata.subscribe){H._oldlocaldata=[];J._localdata.subscribe(function(K){var L=function(M){if(i.isArray(M)){return i.makeArray(L(i(M)))}return i.extend(true,{},M)};if(H.suspendKO==false||H.suspendKO==undefined||H._oldlocaldata.length==0){H._oldlocaldata=L(K)}},J._localdata,"beforeChange");J._localdata.subscribe(function(L){if(H.suspendKO==false||H.suspendKO==undefined){var K="";H._oldrecords=H.records;if(H._oldlocaldata.length==0){J.localdata=J._localdata()}if(H._oldlocaldata.length==0){K="change"}else{if(L){if(H._oldlocaldata.length==L.length){K="update"}if(H._oldlocaldata.length>L.length){K="remove"}if(H._oldlocaldata.length<L.length){K="add"}}}H.dataBind(null,K)}},J._localdata,"change");H._knockoutdatasource=true}J.localdata=I}}if(this._options.autoBind==true){this.dataBind()}};i.jqx.dataAdapter.prototype={getrecords:function(){return this.records},beginUpdate:function(){this.isUpdating=true},endUpdate:function(e){this.isUpdating=false;if(e!=false){if(this._changedrecords&&this._changedrecords.length>0){this.callBindingUpdate("update");this._changedrecords=[]}else{this.dataBind(null,"")}}},formatDate:function(H,J,I){var e=i.jqx.dataFormat.formatdate(H,J,I);return e},formatNumber:function(H,J,I){var e=i.jqx.dataFormat.formatnumber(H,J,I);return e},dataBind:function(R,Z){if(this.isUpdating==true){return}var W=this._source;if(!W){return}if(W.generatedfields){W.datafields=null;W.generatedfields=null}i.jqx.dataFormat.datescache=new Array();if(W.dataFields!=null){W.datafields=W.dataFields}if(W.recordstartindex==undefined){W.recordstartindex=0}if(W.recordendindex==undefined){W.recordendindex=0}if(W.loadallrecords==undefined){W.loadallrecords=true}if(W.root==undefined){W.root=""}if(W.record==undefined){W.record=""}if(W.sort!=undefined){this.sort=W.sort}if(W.filter!=undefined){this.filter=W.filter}else{this.filter=null}if(W.sortcolumn!=undefined){this.sortcolumn=W.sortcolumn}if(W.sortdirection!=undefined){this.sortdirection=W.sortdirection}if(W.sortcomparer!=undefined){this.sortcomparer=W.sortcomparer}this.records=new Array();var K=this._options||{};this.virtualmode=K.virtualmode!=undefined?K.virtualmode:false;this.totalrecords=K.totalrecords!=undefined?K.totalrecords:0;this.pageable=K.pageable!=undefined?K.pageable:false;this.pagesize=K.pagesize!=undefined?K.pagesize:0;this.pagenum=K.pagenum!=undefined?K.pagenum:0;this.cachedrecords=K.cachedrecords!=undefined?K.cachedrecords:new Array();this.originaldata=new Array();this.recordids=new Array();this.updaterow=K.updaterow!=undefined?K.updaterow:null;this.addrow=K.addrow!=undefined?K.addrow:null;this.deleterow=K.deleterow!=undefined?K.deleterow:null;this.cache=K.cache!=undefined?K.cache:false;this.unboundmode=false;if(W.formatdata!=undefined){K.formatData=W.formatdata}if(W.data!=undefined){if(K.data==undefined){K.data={}}i.extend(K.data,W.data)}if(W.mapchar!=undefined){this.mapChar=W.mapchar?W.mapchar:">"}else{this.mapChar=K.mapChar?K.mapChar:">"}if(K.unboundmode||W.unboundmode){this.unboundmode=K.unboundmode||W.unboundmode}if(W.cache!=undefined){this.cache=W.cache}if(this.koSubscriptions){for(var ab=0;ab<this.koSubscriptions.length;ab++){this.koSubscriptions[ab].dispose()}}this.koSubscriptions=new Array();if(this.pagenum<0){this.pagenum=0}var ag=this;var Q=W.datatype;if(W.datatype==="csv"||W.datatype==="tab"||W.datatype==="tsv"||W.datatype=="text"){Q="text"}var N=K.async!=undefined?K.async:true;if(W.async!=undefined){N=W.async}switch(Q){case"local":case"array":case"observablearray":case"observableArray":default:if(W.localdata==undefined&&W.length){W.localdata=new Array();for(var Y=0;Y<W.length;Y++){W.localdata[W.localdata.length]=W[Y];W[Y].uid=Y}}if(W.beforeprocessing&&i.isFunction(W.beforeprocessing)){W.beforeprocessing(W.localdata)}var M=W.localdata.length;this.totalrecords=this.virtualmode?(W.totalrecords||M):M;if(this.unboundmode){this.totalrecords=this.unboundmode?(W.totalrecords||M):M;var ac=W.datafields?W.datafields.length:0;if(ac>0){for(var Y=0;Y<this.totalrecords;Y++){var I={};for(var X=0;X<ac;X++){I[W.datafields[X].name]=""}I.uid=Y;W.localdata[W.localdata.length]=I}}}if(this.totalrecords==undefined){this.totalrecords=0}var ac=W.datafields?W.datafields.length:0;var H=function(an,ap){var ao={};for(var al=0;al<ap;al++){var ak=W.datafields?W.datafields[al]:{};var aq="";if(undefined==ak||ak==null){continue}if(ak.map){if(i.isFunction(ak.map)){aq=ak.map(an)}else{var ai=ak.map.split(ag.mapChar);if(ai.length>0){var am=an;for(var aj=0;aj<ai.length;aj++){if(!am){continue}am=am[ai[aj]]}aq=am}else{aq=an[ak.map]}}if(aq!=undefined&&aq!=null){aq=aq.toString()}else{if(aq==undefined&&aq!=null){aq=""}}}var ar=false;if(aq==""){ar=true;aq=an[ak.name];if(aq!=undefined&&aq!=null){if(W._localdata&&aq.subscribe){aq=aq()}else{if(ak.type!="array"){aq=aq.toString()}}}}if(aq=="[object Object]"&&ak.map&&ar){aq=""}aq=ag.getvaluebytype(aq,ak);if(ak.displayname!=undefined){ao[ak.displayname]=aq}else{ao[ak.name]=aq}}return ao};if(W._localdata){this._changedrecords=[];this.records=new Array();var af=W._localdata();i.each(af,function(al,ao){if(typeof ao==="string"){ag.records.push(ao)}else{var aj={};var an=0;var am=this;i.each(this,function(ax,aC){var ar=null;var aD="string";var aB=ax;if(ac>0){var aF=false;var aA=false;for(var aw=0;aw<ac;aw++){var av=W.datafields[aw];if(av!=undefined&&(av.name==ax)){aF=true;ar=av.map;aD=av.type;aB=av.name;break}else{if(av!=undefined&&av.map&&(av.map.indexOf(ax)>=0)){aF=true;ar=av.map;aD=av.type;aB=av.name;aA=true;var aE=am[ax];if(ar!=null){var aq=ar.split(ag.mapChar);if(aq.length>0){var ay=am;for(var at=0;at<aq.length;at++){ay=ay[aq[at]]}aE=ay}else{aE=am[ar]}}if(aD!="string"){aE=ag.getvaluebytype(aE,{type:aD})}aj[aB]=aE;if(aj[aB]!=undefined){an+=aj[aB].toString().length+aj[aB].toString().substr(0,1)}}}}if(!aF){return true}if(aA){return true}}var au=i.isFunction(am[ax]);if(au){var aE=am[ax]();if(aD!="string"){aE=ag.getvaluebytype(aE,{type:aD})}aj[ax]=aE;if(am[ax].subscribe){var az=al;ag.koSubscriptions[ag.koSubscriptions.length]=am[ax].subscribe(function(aH){var aG=az;aj[ax]=aH;var aI={index:aG,oldrecord:aj,record:aj};ag._changedrecords.push(aI);if(ag.isUpdating){return}ag.callBindingUpdate("update");ag._changedrecords=[];return false})}}else{var aE=am[ax];if(ar!=null){var aq=ar.split(ag.mapChar);if(aq.length>0){var ay=am;for(var at=0;at<aq.length;at++){ay=ay[aq[at]]}aE=ay}else{aE=am[ar]}}if(aD!="string"){aE=ag.getvaluebytype(aE,{type:aD})}aj[aB]=aE;if(aj[aB]!=undefined){an+=aj[aB].toString().length+aj[aB].toString().substr(0,1)}}});var ak=ag.getid(W.id,am,al);aj.uid=ak;ag.records.push(aj);aj._koindex=an;if(ag._oldrecords){var ai=ag.records.length-1;if(Z=="update"){if(ag._oldrecords[ai]._koindex!=an){var ap={index:ai,oldrecord:ag._oldrecords[ai],record:aj};ag._changedrecords.push(ap)}}}}});if(Z=="add"){var M=ag.records.length;for(var Y=0;Y<M;Y++){var I=ag.records[Y];var L=false;for(var U=0;U<ag._oldrecords.length;U++){if(ag._oldrecords[U]._koindex===I._koindex){L=true;break}}if(!L){ag._changedrecords.push({index:Y,oldrecord:null,record:I,position:(Y!=0?"last":"first")})}}}else{if(Z=="remove"){var M=ag._oldrecords.length;for(var Y=0;Y<M;Y++){var P=ag._oldrecords[Y];if(!ag.records[Y]){ag._changedrecords.push({index:Y,oldrecord:P,record:null})}else{if(ag.records[Y]._koindex!=P._koindex){ag._changedrecords.push({index:Y,oldrecord:P,record:null})}}}}}}else{if(!i.isArray(W.localdata)){this.records=new Array();var V=0;var T=new Array();i.each(W.localdata,function(ak){var aj=ag.getid(W.id,this,ak);if(ac==0){if(!(typeof this==="string"||this instanceof String)){for(var am in this){V++;var an=i.type(this[am]);T.push({name:am,type:an})}ac=V;W.datafields=T;W.generatedfields=T}}if(ac>0){var ai=this;var al=H(ai,ac);al.uid=aj;ag.records[ag.records.length]=al}else{this.uid=aj;ag.records[ag.records.length]=this}})}else{if(ac==0){var V=0;var T=new Array();i.each(W.localdata,function(ak,am){var ai=i.extend({},this);if(typeof am==="string"){ag.records=W.localdata;return false}else{var aj=ag.getid(W.id,ai,ak);if(typeof(aj)==="object"){aj=ak}ai.uid=aj;if(ak==0){for(var an in this){V++;var ao=i.type(this[an]);T.push({name:an,type:ao})}ac=V;W.datafields=T;W.generatedfields=T}if(ac>0){var al=H(ai,ac);al.uid=aj;ag.records[ag.records.length]=al}else{ag.records[ag.records.length]=ai}}})}else{i.each(W.localdata,function(ak){var ai=this;var al=H(ai,ac);var aj=ag.getid(W.id,al,ak);if(typeof(aj)==="object"){aj=ak}var ai=i.extend({},al);ai.uid=aj;ag.records[ag.records.length]=ai})}}}this.originaldata=W.localdata;this.cachedrecords=this.records;this.addForeignValues(W);if(K.uniqueDataFields){var S=this.getUniqueRecords(this.records,K.uniqueDataFields);this.records=S;this.cachedrecords=S}if(K.beforeLoadComplete){var ad=K.beforeLoadComplete(ag.records,this.originaldata);if(ad!=undefined){ag.records=ad;ag.cachedrecords=ad}}if(K.autoSort&&K.autoSortField){var O=Object.prototype.toString;Object.prototype.toString=(typeof field=="function")?field:function(){return this[K.autoSortField]};ag.records.sort(function(aj,ai){if(aj===undefined){aj=null}if(ai===undefined){ai=null}if(aj===null&&ai===null){return 0}if(aj===null&&ai!==null){return 1}if(aj!==null&&ai===null){return -1}aj=aj.toString();ai=ai.toString();if(aj===null&&ai===null){return 0}if(aj===null&&ai!==null){return 1}if(aj!==null&&ai===null){return -1}if(i.jqx.dataFormat.isNumber(aj)&&i.jqx.dataFormat.isNumber(ai)){if(aj<ai){return -1}if(aj>ai){return 1}return 0}else{if(i.jqx.dataFormat.isDate(aj)&&i.jqx.dataFormat.isDate(ai)){if(aj<ai){return -1}if(aj>ai){return 1}return 0}else{if(!i.jqx.dataFormat.isNumber(aj)&&!i.jqx.dataFormat.isNumber(ai)){aj=String(aj).toLowerCase();ai=String(ai).toLowerCase()}}}try{if(aj<ai){return -1}if(aj>ai){return 1}}catch(ak){var al=ak}return 0});Object.prototype.toString=O}ag.loadedData=W.localdata;ag.buildHierarchy();if(i.isFunction(K.loadComplete)){K.loadComplete(W.localdata,ag.records)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":if(W.localdata!=null){if(i.isFunction(W.beforeprocessing)){W.beforeprocessing(W.localdata)}if(W.datatype==="xml"){ag.loadxml(W.localdata,W.localdata,W)}else{if(Q==="text"){ag.loadtext(W.localdata,W)}else{ag.loadjson(W.localdata,W.localdata,W)}}ag.addForeignValues(W);if(K.uniqueDataFields){var S=ag.getUniqueRecords(ag.records,K.uniqueDataFields);ag.records=S;ag.cachedrecords=S}if(K.beforeLoadComplete){var ad=K.beforeLoadComplete(ag.records,this.originaldata);if(ad!=undefined){ag.records=ad;ag.cachedrecords=ad}}ag.loadedData=W.localdata;ag.buildHierarchy.call(ag);if(i.isFunction(K.loadComplete)){K.loadComplete(W.localdata,ag.records)}ag.callBindingUpdate(Z);return}var ae=K.data!=undefined?K.data:{};if(W.processdata){W.processdata(ae)}if(i.isFunction(K.processData)){K.processData(ae)}if(i.isFunction(K.formatData)){var e=K.formatData(ae);if(e!=undefined){ae=e}}var aa="application/x-www-form-urlencoded";if(K.contentType){aa=K.contentType}var J="GET";if(W.type){J=W.type}if(K.type){J=K.type}if(W.url&&W.url.length>0){if(i.isFunction(K.loadServerData)){ag._requestData(ae,W,K)}else{this.xhr=i.jqx.data.ajax({dataType:Q,cache:this.cache,type:J,url:W.url,async:N,timeout:W.timeout,contentType:aa,data:ae,success:function(al,ai,ao){if(i.isFunction(W.beforeprocessing)){var an=W.beforeprocessing(al,ai,ao);if(an!=undefined){al=an}}if(i.isFunction(K.downloadComplete)){var an=K.downloadComplete(al,ai,ao);if(an!=undefined){al=an}}if(al==null){ag.records=new Array();ag.cachedrecords=new Array();ag.originaldata=new Array();ag.callDownloadComplete();if(i.isFunction(K.loadComplete)){K.loadComplete(new Array())}return}var aj=al;if(al.records){aj=al.records}if(al.totalrecords!=undefined){W.totalrecords=al.totalrecords}else{if(al.totalRecords!=undefined){W.totalrecords=al.totalRecords}}if(W.datatype==="xml"){ag.loadxml(null,aj,W)}else{if(Q==="text"){ag.loadtext(aj,W)}else{ag.loadjson(null,aj,W)}}ag.addForeignValues(W);if(K.uniqueDataFields){var ak=ag.getUniqueRecords(ag.records,K.uniqueDataFields);ag.records=ak;ag.cachedrecords=ak}if(K.beforeLoadComplete){var am=K.beforeLoadComplete(ag.records,al);if(am!=undefined){ag.records=am;ag.cachedrecords=am}}ag.loadedData=al;ag.buildHierarchy.call(ag);ag.callDownloadComplete();if(i.isFunction(K.loadComplete)){K.loadComplete(al,ai,ao,ag.records)}},error:function(ak,ai,aj){if(i.isFunction(W.loaderror)){W.loaderror(ak,ai,aj)}if(i.isFunction(K.loadError)){K.loadError(ak,ai,aj)}ak=null;ag.callDownloadComplete()},beforeSend:function(aj,ai){if(i.isFunction(K.beforeSend)){K.beforeSend(aj,ai)}if(i.isFunction(W.beforesend)){W.beforesend(aj,ai)}}})}}else{ag.buildHierarchy(new Array());ag.callDownloadComplete();if(i.isFunction(K.loadComplete)){if(!ah){var ah={}}K.loadComplete(ah)}}break}this.callBindingUpdate(Z)},buildHierarchy:function(K){var e=this._source;var P=new Array();if(!e.datafields){return}if(e.hierarchy&&!e.hierarchy.reservedNames){e.hierarchy.reservedNames={leaf:"leaf",parent:"parent",expanded:"expanded",checked:"checked",selected:"selected",level:"level",icon:"icon",data:"data"}}else{if(e.hierarchy){var O=e.hierarchy.reservedNames;if(!O.leaf){O.leaf="leaf"}if(!O.parent){O.parent="parent"}if(!O.expanded){O.expanded="expanded"}if(!O.checked){O.checked="checked"}if(!O.selected){O.selected="selected"}if(!O.level){O.level="level"}if(!O.data){O.data="data"}}}if(!e.hierarchy){return}var N=this;var O=e.hierarchy.reservedNames;if(e.hierarchy.root){if(e.dataType=="xml"){var P=this.getRecordsHierarchy("uid","parentuid","records",null,K);this.hierarchy=P;return P}else{this.hierarchy=this.records;var R=e.hierarchy.root;for(var L=0;L<this.records.length;L++){var M=this.records[L];if(!M){continue}var H=function(S){if(e.hierarchy.record){S.records=S[R][e.hierarchy.record]}else{var U=R.split(N.mapChar);var T=null;if(U.length>1){var W=S;for(var V=0;V<U.length;V++){if(W!=undefined){W=W[U[V]]}}T=W}else{T=S[R]}S.records=T}if(S.records==null||(S.records&&S.records.length==0)){S[O.leaf]=true}};H(M);M[O.level]=0;var I=this.getid(e.id,M,L);M.uid=I;M[O.parent]=null;M[O.data]=M;if(M[O.expanded]===undefined){M[O.expanded]=false}var Q=function(W,U){if(!U){W.records=new Array();return}for(var V=0;V<U.length;V++){var S=U[V];if(!S){continue}H(S);S[O.level]=W[O.level]+1;S[O.parent]=W;S[O.data]=S;var T=N.getid(e.id,S,V);if(T==V&&e.id==null){S.uid=W.uid+"_"+T}else{S.uid=T}if(S[O.expanded]===undefined){S[O.expanded]=false}Q(S,S.records)}};Q(M,M.records)}}return this.hierarchy}if(e.hierarchy.keyDataField&&e.hierarchy.parentDataField){var P=this.getRecordsHierarchy(e.hierarchy.keyDataField.name,e.hierarchy.parentDataField.name,"records",null,K);this.hierarchy=P;return P}if(e.hierarchy.groupingDataFields){var J=new Array();for(var L=0;L<e.hierarchy.groupingDataFields.length;L++){J.push(e.hierarchy.groupingDataFields[L].name)}var P=this.getGroupedRecords(J,"records","label",null,"data",null,"parent",K);this.hierarchy=P;return P}},addRecord:function(H,e,M,I){var J=this;var N=function(){return{leaf:"leaf",parent:"parent",expanded:"expanded",checked:"checked",selected:"selected",level:"level",icon:"icon",data:"data"}};if(H!=undefined){if(M!=undefined){if(this.hierarchy.length>0){var K=function(O){if(O){for(var P=0;P<O.length;P++){var Q=O[P];if(Q.uid==M){var R=(J._source&&J._source.hierarchy)?J._source.hierarchy.reservedNames:null;if(R==null){R=N()}H[R.parent]=Q;H[R.level]=Q[R.level]+1;if(!Q.records){Q.records=new Array();Q[R.leaf]=false}else{Q[R.leaf]=false}if(e=="last"){Q.records.push(H)}else{if(typeof e==="number"&&isFinite(e)){Q.records.splice(e,0,H)}else{Q.records.splice(0,0,H)}}return true}if(Q.records){K(Q.records)}}}};K(this.hierarchy)}}else{if(this.hierarchy&&this.hierarchy.length>=0&&(this._source.hierarchy||I)){var L=(J._source&&J._source.hierarchy)?J._source.hierarchy.reservedNames:null;if(L==null){L=N()}H[L.level]=0;if(e=="last"){this.hierarchy.push(H)}else{if(typeof e==="number"&&isFinite(e)){this.hierarchy.splice(e,0,H)}else{this.hierarchy.splice(0,0,H)}}}else{if(e=="last"){this.records.push(H)}else{if(typeof e==="number"&&isFinite(e)){this.records.splice(e,0,H)}else{this.records.splice(0,0,H)}}}return true}}return false},deleteRecord:function(H){var J=this;if(this.hierarchy.length>0){var K=function(L){if(L){for(var O=0;O<L.length;O++){var P=L[O];if(P.uid==H){L.splice(O,1);if(J.recordids[H]){delete J.recordids[H]}var N=function(T){for(var Q=0;Q<T.length;Q++){var S=T[Q].uid;for(var R=0;R<J.records.length;R++){var U=J.records[R];if(U.uid==S){J.records.splice(R,1);break}}if(T[Q].records){N(T[Q].records)}}};if(P.records){N(P.records)}for(var M=0;M<J.records.length;M++){var P=J.records[M];if(P.uid==H){J.records.splice(M,1);break}}return true}if(P.records){K(P.records)}}}};K(this.hierarchy)}else{for(var e=0;e<this.records.length;e++){var I=this.records[e];if(I.uid==H){this.records.splice(e,1);return true}}}return false},addForeignValues:function(H){var Q=this;var V=H.datafields?H.datafields.length:0;for(var N=0;N<V;N++){var L=H.datafields[N];if(L!=undefined){if(L.values!=undefined){if(L.value==undefined){L.value=L.name}if(L.values.value==undefined){L.values.value=L.value}var T=new Array();var K,M;if(Q.pageable&&Q.virtualmode){K=Q.pagenum*Q.pagesize;M=K+Q.pagesize;if(M>Q.totalrecords){M=Q.totalrecords}}else{if(Q.virtualmode){K=H.recordstartindex;M=H.recordendindex;if(M>Q.totalrecords){M=Q.totalrecords}}else{K=0;M=Q.records.length}}for(var O=K;O<M;O++){var P=Q.records[O];var I=L.name;var U=P[L.value];if(T[U]!=undefined){P[I]=T[U]}else{for(var J=0;J<L.values.source.length;J++){var S=L.values.source[J];var e=S[L.values.value];if(e==undefined){e=S.uid}if(e==U){var R=S[L.values.name];P[I]=R;T[U]=R;break}}}}}else{if(L.value!=undefined){for(var O=0;O<Q.records.length;O++){var P=Q.records[O];P[L.name]=P[L.value]}}}}}},abort:function(){if(this.xhr&&this.xhr.readyState!=4){this.xhr.abort();me.callDownloadComplete()}},_requestData:function(H,J,e){var I=this;var K=function(P){if(P.totalrecords){J.totalrecords=P.totalrecords;I.totalrecords=P.totalrecords}if(P.records){I.records=P.records;I.cachedrecords=P.records}I.addForeignValues(J);if(e.uniqueDataFields){var N=I.getUniqueRecords(I.records,e.uniqueDataFields);I.records=N;I.cachedrecords=N}if(e.beforeLoadComplete){var O=e.beforeLoadComplete(I.records,data);if(O!=undefined){I.records=O;I.cachedrecords=O}}for(var M=0;M<I.records.length;M++){var L=I.records[M];if(undefined==L){continue}if(undefined==L.uid){L.uid=I.getid(J.id,L,M)}}I.buildHierarchy.call(I);if(i.isFunction(e.loadComplete)){e.loadComplete(P)}I.callDownloadComplete()};e.loadServerData(H,J,K)},getUniqueRecords:function(I,L){if(I&&L){var e=I.length;var Q=L.length;var N=new Array();var O=new Array();for(var P=0;P<e;P++){var M=I[P];var J="";if(M==undefined){continue}for(var K=0;K<Q;K++){var H=L[K];J+=M[H]+"_"}if(!O[J]){N[N.length]=M}O[J]=true}}return N},getAggregatedData:function(S,P,M,H){var L=M;if(!L){L=this.records}var Q={};var K=new Array();var J=L.length;if(J==0){return}if(J==undefined){return}for(var O=0;O<J;O++){var R=L[O];for(var N=0;N<S.length;N++){var I=S[N];var U=R[I.name];if(I.aggregates){Q[I.name]=Q[I.name]||{};K[I.name]=K[I.name]||0;K[I.name]++;var e=function(W){for(obj in W){var X=Q[I.name][obj];if(X==null){Q[I.name][obj]=0;X=0}if(i.isFunction(W[obj])){X=W[obj](X,U,I.name,R,H)}Q[I.name][obj]=X}};var T=parseFloat(U);if(isNaN(T)){T=false}else{T=true}if(T){U=parseFloat(U)}if(typeof U==="number"&&isFinite(U)){i.each(I.aggregates,function(){var W=Q[I.name][this];if(W==null){W=0;if(this=="min"){W=9999999999999}if(this=="max"){W=-9999999999999}}if(this=="sum"||this=="avg"||this=="stdev"||this=="stdevp"||this=="var"||this=="varp"){W+=parseFloat(U)}else{if(this=="product"){if(O==0){W=parseFloat(U)}else{W*=parseFloat(U)}}else{if(this=="min"){W=Math.min(W,parseFloat(U))}else{if(this=="max"){W=Math.max(W,parseFloat(U))}else{if(this=="count"){W++}else{if(typeof(this)=="object"){e(this);return}}}}}}Q[I.name][this]=W})}else{i.each(I.aggregates,function(){if(this=="min"||this=="max"||this=="count"||this=="product"||this=="sum"||this=="avg"||this=="stdev"||this=="stdevp"||this=="var"||this=="varp"){if(U===null){return true}var W=Q[I.name][this];if(W==null){W=0}Q[I.name][this]=W;return true}if(typeof(this)=="object"){e(this)}})}}}}for(var N=0;N<S.length;N++){var I=S[N];if(!Q[I.name]){Q[I.name]={};i.each(I.aggregates,function(W){Q[I.name][this]=0})}if(Q[I.name]["avg"]!=undefined){var U=Q[I.name]["avg"];var V=K[I.name];if(V===0||V==undefined){Q[I.name]["avg"]=0}else{Q[I.name]["avg"]=U/V}}else{if(Q[I.name]["count"]!=undefined){Q[I.name]["count"]=J}}if(Q[I.name]["stdev"]||Q[I.name]["stdevp"]||Q[I.name]["var"]||Q[I.name]["varp"]){i.each(I.aggregates,function(ac){if(this=="stdev"||this=="var"||this=="varp"||this=="stdevp"){var ad=Q[I.name][this];var ab=J;var W=(ad/J);var Y=0;for(var Z=0;Z<J;Z++){var aa=L[Z];var ae=aa[I.name];Y+=(ae-W)*(ae-W)}var X=(this=="stdevp"||this=="varp")?ab:ab-1;if(X==0){X=1}if(this=="var"||this=="varp"){Q[I.name][this]=Y/X}else{if(this=="stdevp"||this=="stdev"){Q[I.name][this]=Math.sqrt(Y/X)}}}})}if(I.formatStrings){i.each(I.aggregates,function(X){var W=I.formatStrings[X];if(W){if(this=="min"||this=="max"||this=="count"||this=="product"||this=="sum"||this=="avg"||this=="stdev"||this=="stdevp"||this=="var"||this=="varp"){var Y=Q[I.name][this];Q[I.name][this]=i.jqx.dataFormat.formatnumber(Y,W,P)}else{if(typeof this=="object"){for(obj in this){var Y=Q[I.name][obj];Q[I.name][obj]=i.jqx.dataFormat.formatnumber(Y,W,P)}}}}})}}return Q},bindDownloadComplete:function(H,e){this._downloadComplete[this._downloadComplete.length]={id:H,func:e}},unbindDownloadComplete:function(H){for(var e=0;e<this._downloadComplete.length;e++){if(this._downloadComplete[e].id==H){this._downloadComplete[e].func=null;this._downloadComplete.splice(e,1);break}}},callDownloadComplete:function(){for(var e=0;e<this._downloadComplete.length;e++){var H=this._downloadComplete[e];if(H.func!=null){H.func()}}},setSource:function(e){this._source=e},generatekey:function(){var e=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e())},getGroupedRecords:function(aj,am,W,ae,ak,ab,ad,an,K){var ag=0;var aa=this;if(!K){K=0}var I=new Array();for(var N=0;N<aj.length;N++){I[N]=aa.generatekey()}if(!am){am="items"}if(!W){W="group"}if(!ak){ak="record"}if(!ad){ad="parentItem"}if(undefined===ab){ab="value"}var S=new Array();var L=0;var J=new Array();var R=aj.length;var al=new Array();if(!an){var an=this.records}var P=an.length;var af=function(ao){var ap=ao;if(ae){i.each(ae,function(){if(this.name&&this.map){ap[this.map]=ap[this.name]}})}return ap};for(var V=0;V<P;V++){var ai=af(an[V]);id=ai[aa.uniqueId];var H=new Array();var X=0;for(N=0;N<R;N++){var Q=aj[N];var ac=ai[Q];if(null==ac){continue}H[X++]={value:ac,hash:I[N]}}if(H.length!=R){break}var Y=null;var T="";var e=-1;for(var Z=0;Z<H.length;Z++){e++;var ah=H[Z].value;var M=H[Z].hash;T=T+"_"+M+"_"+ah;if(J[T]!=undefined&&J[T]!=null){Y=J[T];continue}if(Y==null){Y={level:0};Y[ad]=null;Y[W]=ah;Y[ak]=ai;if(ai.expanded!==undefined){Y.expanded=ai.expanded}else{Y.expanded=false}if(ab){Y[ab]=ai[ab]}Y[am]=new Array();var O=S.length+K;if(!this._source.id||typeof ai.uid==="number"||isFinite(ai.uid)){O="Row"+O}Y.uid=O;S[L++]=Y}else{var U={level:Y.level+1};U[ad]=Y;U[W]=ah;U[am]=new Array();U[ak]=ai;if(ai.expanded!==undefined){U.expanded=ai.expanded}else{U.expanded=false}if(ab){U[ab]=ai[ab]}U.uid=Y.uid+"_"+Y[am].length;Y[am][Y[am].length]=U;Y=U}J[T]=Y}if(ai){ai.leaf=true}if(Y!=null){if(this._source.id==null){if(undefined==ai.uid){ai.uid=Y.uid+"_"+Y[am].length}else{if(ai.uid.toString().indexOf(Y.uid)==-1){ai.uid=Y.uid+"_"+ai.uid}}}ai[ad]=Y;ai.level=Y.level+1;Y[am][Y[am].length]=ai}else{if(undefined==ai.uid){ai.uid=this.generatekey()}}}return S},getRecordsHierarchy:function(L,J,aa,U,H){var e=new Array();var I=this.records;if(H){I=H}if(this.records.length==0){return null}var Y=aa!=null?aa:"items";var R=[];var ab=I;var O=ab.length;var P=(this._source&&this._source.hierarchy)?this._source.hierarchy.reservedNames:null;var W=function(ac){var ad=ac;if(U){i.each(U,function(){if(this.name&&this.map){ad[this.map]=ad[this.name]}})}return ad};for(var X=0;X<O;X++){var Z=i.extend({},ab[X]);var T=Z[J];var S=Z[L];R[S]={parentid:T,item:Z}}for(var X=0;X<O;X++){var Z=i.extend({},ab[X]);var T=Z[J];var S=Z[L];if(R[T]!=undefined){var Z={parentid:T,item:R[S].item};var Q=R[T].item;if(!Q[Y]){Q[Y]=[]}var M=Q[Y].length;var K=Z.item;if(!P){if(K.parent==undefined){K.parent=Q}}else{if(K[P.parent]==undefined){K[P.parent]=Q}}var N=W(K);Q[Y][M]=N;R[T].item=Q;R[S]=Z}else{var K=R[S].item;if(!P){if(K.parent==undefined){K.parent=null}}else{if(K[P.parent]==undefined){K[P.parent]=null}}var N=W(K);if(!P){N.level=0}else{N[P.level]=0}e[e.length]=N}}if(e.length!=0){var V=function(af,ac){for(var ad=0;ad<ac.length;ad++){if(!P){ac[ad].level=af}else{ac[ad][P.level]=af}var ae=ac[ad][Y];if(ae){if(ae.length>0){V(af+1,ae)}else{if(!P){ac[ad].leaf=true}else{ac[ad][P.leaf]=true}}}else{if(!P){ac[ad].leaf=true}else{ac[ad][P.leaf]=true}}}};V(0,e)}return e},bindBindingUpdate:function(H,e){this._bindingUpdate[this._bindingUpdate.length]={id:H,func:e}},unbindBindingUpdate:function(H){for(var e=0;e<this._bindingUpdate.length;e++){if(this._bindingUpdate[e].id==H){this._bindingUpdate[e].func=null;this._bindingUpdate.splice(e,1);break}}},callBindingUpdate:function(e){for(var I=0;I<this._bindingUpdate.length;I++){var H=this._bindingUpdate[I];if(H.func!=null){H.func(e)}}},getid:function(N,H,K){if(N!=null&&N.name!=undefined){if(N.name){var e=i(H).attr(N.name);if(e!=null&&e.toString().length>0){return e}else{if(N.map){try{var e=i(H).attr(N.map);if(e!=null&&e.toString().length>0){return e}else{if(i(N.map,H).length>0){return i(N.map,H).text()}else{if(i(N.name,H).length>0){return i(N.name,H).text()}}}}catch(J){return K}}}return}}if(i(N,H).length>0){return i(N,H).text()}if(N){if(N.toString().length>0){var e=i(H).attr(N);if(e!=null&&e.toString().length>0){return i.trim(e).split(" ").join("").replace(/([ #;?%&,.+*~\':"!^$[\]()=>|\/@])/g,"")}else{var I=N.split(this.mapChar);if(I.length>1){var M=H;for(var L=0;L<I.length;L++){if(M!=undefined){M=M[I[L]]}}if(M!=undefined){return M}}else{if(H[N]!=undefined){return H[N]}}}}}return K},loadjson:function(ae,af,R){if(typeof(ae)=="string"){ae=i.parseJSON(ae)}if(R.root==undefined){R.root=""}if(R.record==undefined){R.record=""}var ae=ae||af;if(!ae){ae=[]}var ad=this;if(R.root!=""){var K=R.root.split(ad.mapChar);if(K.length>1){var aa=ae;for(var Q=0;Q<K.length;Q++){if(aa!=undefined){aa=aa[K[Q]]}}ae=aa}else{if(ae[R.root]!==undefined){ae=ae[R.root]}else{i.each(ae,function(ah){var ag=this;if(this==R.root){ae=this;return false}else{if(this[R.root]!=undefined){ae=this[R.root]}}})}if(!ae){var K=R.root.split(ad.mapChar);if(K.length>0){var aa=ae;for(var Q=0;Q<K.length;Q++){if(aa!=undefined){aa=aa[K[Q]]}}ae=aa}}}}else{if(!ae.length){for(obj in ae){if(i.isArray(ae[obj])){ae=ae[obj];break}}}}if(ae!=null&&ae.length==undefined){ae=i.makeArray(ae)}if(ae==null||ae==undefined||ae=="undefined"||ae.length==undefined){console.log("jqxDataAdapter: JSON Parse error! Invalid JSON. Please, check your JSON or your jqxDataAdapter initialization!");return}if(ae.length==0){this.totalrecords=0;return}var J=ae.length;this.totalrecords=this.virtualmode?(R.totalrecords||J):J;this.records=new Array();this.originaldata=new Array();var W=this.records;var T=!this.pageable?R.recordstartindex:this.pagesize*this.pagenum;this.recordids=new Array();if(R.loadallrecords){T=0;J=this.totalrecords}var P=0;if(this.virtualmode){T=!this.pageable?R.recordstartindex:this.pagesize*this.pagenum;P=T;T=0;J=this.totalrecords}var Y=R.datafields?R.datafields.length:0;if(Y==0){var e=ae[0];var ab=new Array();for(obj in e){var H=obj;ab[ab.length]={name:H}}R.datafields=ab;R.generatedfields=R.datafields;Y=ab.length}var M=T;for(var V=T;V<J;V++){var I=ae[V];if(I==undefined){break}if(R.record&&R.record!=""){I=I[R.record];if(I==undefined){continue}}var ac=this.getid(R.id,I,V);if(typeof(ac)==="object"){ac=V}if(!this.recordids[ac]){this.recordids[ac]=I;var L={};for(var U=0;U<Y;U++){var N=R.datafields[U];var S="";if(undefined==N||N==null){continue}if(N.map){if(i.isFunction(N.map)){S=N.map(I)}else{var K=N.map.split(ad.mapChar);if(K.length>0){var Z=I;for(var Q=0;Q<K.length;Q++){if(Z!=undefined){Z=Z[K[Q]]}}S=Z}else{S=I[N.map]}}if(S!=undefined&&S!=null){S=this.getvaluebytype(S,N)}else{if(S==undefined&&S!=null){S=""}}}if(S==""&&!N.map){S=I[N.name];if(S==undefined&&S!=null){S=""}if(N.value!=undefined){if(S!=undefined){var X=S[N.value];if(X!=undefined){S=X}}}}S=this.getvaluebytype(S,N);if(N.displayname!=undefined){L[N.displayname]=S}else{L[N.name]=S}if(N.type==="array"){var O=function(aj){if(!aj){return}for(var ap=0;ap<aj.length;ap++){var am=aj[ap];if(!am){continue}for(var an=0;an<Y;an++){var ai=R.datafields[an];var ao="";if(undefined==ai||ai==null){continue}if(ai.map){if(i.isFunction(ai.map)){ao=ai.map(am)}else{var ag=ai.map.split(ad.mapChar);if(ag.length>0){var al=am;for(var ah=0;ah<ag.length;ah++){if(al!=undefined){al=al[ag[ah]]}}ao=al}else{ao=am[ai.map]}}if(ao!=undefined&&ao!=null){ao=this.getvaluebytype(ao,ai)}else{if(ao==undefined&&ao!=null){ao=""}}}if(ao==""&&!ai.map){ao=am[ai.name];if(ao==undefined&&ao!=null){ao=""}if(ai.value!=undefined){if(ao!=undefined){var ak=ao[ai.value];if(ak!=undefined){ao=ak}}}}ao=this.getvaluebytype(ao,ai);if(ai.displayname!=undefined){am[ai.displayname]=ao}else{am[ai.name]=ao}if(ai.type==="array"){O.call(this,ao)}}}};O.call(this,S)}}if(R.recordendindex<=0||T<R.recordendindex){W[P+M]=i.extend({},L);W[P+M].uid=ac;this.originaldata[P+M]=i.extend({},W[V]);M++}}}this.records=W;this.cachedrecords=this.records},loadxml:function(K,ai,U){if(typeof(K)=="string"){K=ai=i(i.parseXML(K));K=null}if(U.root==undefined){U.root=""}if(U.record==undefined){U.record=""}var K;if(i.jqx.browser.msie&&ai){if(ai.xml!=undefined){K=i(U.root+" "+U.record,i.parseXML(ai.xml))}else{K=K||i(U.root+" "+U.record,ai)}}else{K=K||i(U.root+" "+U.record,ai)}if(!K){K=[]}var J=K.length;if(K.length==0){return}this.totalrecords=this.virtualmode?(U.totalrecords||J):J;this.records=new Array();this.originaldata=new Array();var aa=this.records;var X=!this.pageable?U.recordstartindex:this.pagesize*this.pagenum;this.recordids=new Array();if(U.loadallrecords){X=0;J=this.totalrecords}var S=0;if(this.virtualmode){X=!this.pageable?U.recordstartindex:this.pagesize*this.pagenum;S=X;X=0;J=this.totalrecords}var ac=U.datafields?U.datafields.length:0;if(ac==0){var e=K[0];var af=new Array();for(obj in e){var H=obj;af[af.length]={name:H}}U.datafields=af;U.generatedfields=U.datafields;ac=af.length}var T=X;var ae=false;for(var Z=X;Z<J;Z++){var I=K[Z];if(I==undefined){break}var ah=this.getid(U.id,I,Z);if(!this.recordids[ah]){this.recordids[ah]=I;var L={};var P=false;if(U.hierarchy&&U.hierarchy.root){P=true}for(var Y=0;Y<ac;Y++){var Q=U.datafields[Y];var W="";if(undefined==Q||Q==null){continue}if(Q.map){if(i.isFunction(Q.map)){W=Q.map(I)}else{var M=Q.map.indexOf("[");if(M<0){W=i(Q.map,I);if(W.length==1){W=W.text()}else{ae=true;var ag=new Array();for(var ab=0;ab<W.length;ab++){ag.push(i(W[ab]).text())}W=ag;if(P&&ag.length>0){W=ag[0]}}}else{var ad=Q.map.substring(0,M-1);var O=Q.map.indexOf("]");var R=Q.map.substring(M+1,O);W=i(ad,I).attr(R);if(W==undefined){W=i(I).attr(R)}if(W==undefined){W=""}}if(W==""){W=i(I).attr(Q.map);if(W==undefined){W=""}}}}if(W==""){W=i(Q.name,I);if(W.length==1){W=W.text()}else{var ag=new Array();for(var ab=0;ab<W.length;ab++){ag.push(i(W[ab]).text())}W=ag;if(P&&ag.length>0){W=ag[0]}}if(W==""){W=i(I).attr(Q.name);if(W==undefined){W=""}}if(W==""){if(I.nodeName&&I.nodeName==Q.name&&I.firstChild){W=i(I.firstChild).text()}}}var V=W;W=this.getvaluebytype(W,Q);if(Q.displayname!=undefined){L[Q.displayname]=W}else{L[Q.name]=W}}if(U.recordendindex<=0||X<U.recordendindex){aa[S+T]=i.extend({},L);aa[S+T].uid=ah;this.originaldata[S+T]=i.extend({},aa[Z]);T++}}}if(U.hierarchy&&U.hierarchy.root){for(var Z=X;Z<J;Z++){var I=K[Z];var N=aa[Z];if(i(I).parent().length>0){var ah=this.getid(U.id,i(I).parents(U.hierarchy.record+":first"));N.parentuid=ah}else{N.parentuid=null}}}this.records=aa;this.cachedrecords=this.records},loadtext:function(Y,P){if(Y==null){return}var e=P.rowDelimiter||this.rowDelimiter||"\n";var L=Y.split(e);var J=L.length;var X=Y.split("\r");if(J==1&&X.length>1){L=X;J=L.length}this.totalrecords=this.virtualmode?(P.totalrecords||J):J;this.records=new Array();this.originaldata=new Array();var U=this.records;var R=!this.pageable?P.recordstartindex:this.pagesize*this.pagenum;this.recordids=new Array();if(P.loadallrecords){R=0;J=this.totalrecords}var N=0;if(this.virtualmode){R=!this.pageable?P.recordstartindex:this.pagesize*this.pagenum;N=R;R=0;J=this.totalrecords}var V=P.datafields.length;var O=P.columnDelimiter||this.columnDelimiter;if(!O){O=(P.datatype==="tab"||P.datatype==="tsv")?"\t":","}for(var T=R;T<J;T++){var I=L[T];var W=null;if(!this.recordids[W]){if(P.id==null){W=T;this.recordids[W]=I}var K={};var H=L[T].split(O);for(var S=0;S<V;S++){if(S>=H.length){continue}var M=P.datafields[S];var Q=H[S];if(M.map&&i.isFunction(M.map)){Q=M.map(I)}if(M.type){Q=this.getvaluebytype(Q,M)}var Z=M.map||M.name||S.toString();K[Z]=Q;if(P.id!=null){if(P.id===M.name){W=Q;this.recordids[W]=I}}}if(W==null){W=T}U[N+T]=i.extend({},K);U[N+T].uid=W;this.originaldata[N+T]=i.extend({},U[T])}}this.records=U;this.cachedrecords=this.records},getvaluebytype:function(L,H){var J=L;if(L==null){return L}if(i.isArray(L)&&H.type!="array"){for(var I=0;I<L.length;I++){L[I]=this.getvaluebytype(L[I],H)}return L}if(H.type=="date"){if(L=="NaN"){L=""}else{var K=new Date(L);if(typeof L=="string"){if(H.format){var e=i.jqx.dataFormat.parsedate(L,H.format);if(e!=null){K=e}}}if(K.toString()=="NaN"||K.toString()=="Invalid Date"){if(i.jqx.dataFormat){L=i.jqx.dataFormat.tryparsedate(L)}else{L=K}}else{L=K}if(L==null){L=J}}}else{if(H.type=="float"||H.type=="number"||H.type=="decimal"){if(L=="NaN"){L=""}else{var L=parseFloat(L);if(isNaN(L)){L=J}}}else{if(H.type=="int"||H.type=="integer"){var L=parseInt(L);if(isNaN(L)){L=J}}else{if(H.type=="bool"||H.type=="boolean"){if(L!=null){if(L.toLowerCase!=undefined){if(L.toLowerCase()=="false"){L=false}else{if(L.toLowerCase()=="true"){L=true}}}}if(L==1){L=true}else{if(L==0&&L!==""){L=false}else{L=""}}}}}}return L}};i.jqx.dataFormat={};i.extend(i.jqx.dataFormat,{regexTrim:/^\s+|\s+$/g,regexInfinity:/^[+-]?infinity$/i,regexHex:/^0x[a-f0-9]+$/i,regexParseFloat:/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/,toString:Object.prototype.toString,isBoolean:function(e){return typeof e==="boolean"},isObject:function(e){return(e&&(typeof e==="object"||i.isFunction(e)))||false},isDate:function(e){return e instanceof Date},arrayIndexOf:function(J,I){if(J.indexOf){return J.indexOf(I)}for(var e=0,H=J.length;e<H;e++){if(J[e]===I){return e}}return -1},isString:function(e){return typeof e==="string"},isNumber:function(e){return typeof e==="number"&&isFinite(e)},isNull:function(e){return e===null},isUndefined:function(e){return typeof e==="undefined"},isValue:function(e){return(this.isObject(e)||this.isString(e)||this.isNumber(e)||this.isBoolean(e))},isEmpty:function(e){if(!this.isString(e)&&this.isValue(e)){return false}else{if(!this.isValue(e)){return true}}e=i.trim(e).replace(/\&nbsp\;/ig,"").replace(/\&#160\;/ig,"");return e===""},startsWith:function(H,e){return H.indexOf(e)===0},endsWith:function(H,e){return H.substr(H.length-e.length)===e},trim:function(e){return(e+"").replace(this.regexTrim,"")},isArray:function(e){return this.toString.call(e)==="[object Array]"},defaultcalendar:function(){var e={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"MM-dd-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:","};return e},expandFormat:function(K,J){J=J||"F";var I,H=K.patterns,e=J.length;if(e===1){I=H[J];if(!I){throw"Invalid date format string '"+J+"'."}J=I}else{if(e===2&&J.charAt(0)==="%"){J=J.charAt(1)}}return J},getEra:function(I,H){if(!H){return 0}if(typeof I==="string"){return 0}var L,K=I.getTime();for(var J=0,e=H.length;J<e;J++){L=H[J].start;if(L===null||K>=L){return J}}return 0},toUpper:function(e){return e.split("\u00A0").join(" ").toUpperCase()},toUpperArray:function(e){var J=[];for(var I=0,H=e.length;I<H;I++){J[I]=this.toUpper(e[I])}return J},getEraYear:function(H,J,e,K){var I=H.getFullYear();if(!K&&J.eras){I-=J.eras[e].offset}return I},toUpper:function(e){if(e){return e.toUpperCase()}return""},getDayIndex:function(K,J,H){var e,L=K.days,I=K._upperDays;if(!I){K._upperDays=I=[this.toUpperArray(L.names),this.toUpperArray(L.namesAbbr),this.toUpperArray(L.namesShort)]}J=J.toUpperCase();if(H){e=this.arrayIndexOf(I[1],J);if(e===-1){e=this.arrayIndexOf(I[2],J)}}else{e=this.arrayIndexOf(I[0],J)}return e},getMonthIndex:function(N,M,I){var e=N.months,H=N.monthsGenitive||N.months,K=N._upperMonths,L=N._upperMonthsGen;if(!K){N._upperMonths=K=[this.toUpperArray(e.names),this.toUpperArray(e.namesAbbr)];N._upperMonthsGen=L=[this.toUpperArray(H.names),this.toUpperArray(H.namesAbbr)]}M=this.toUpper(M);var J=this.arrayIndexOf(I?K[1]:K[0],M);if(J<0){J=this.arrayIndexOf(I?L[1]:L[0],M)}return J},appendPreOrPostMatch:function(J,e){var I=0,L=false;for(var K=0,H=J.length;K<H;K++){var M=J.charAt(K);switch(M){case"'":if(L){e.push("'")}else{I++}L=false;break;case"\\":if(L){e.push("\\")}L=!L;break;default:e.push(M);L=false;break}}return I},getTokenRegExp:function(){return/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g},formatlink:function(e,I){var H="";if(I&&I.target){H="target="+I.target}if(H!=""){return"<a "+H+' href="'+e+'">'+e+"</a>"}return'<a href="'+e+'">'+e+"</a>"},formatemail:function(e){return'<a href="mailto:'+e+'">'+e+"</a>"},formatNumber:function(e,I,H){return this.formatnumber(e,I,H)},formatnumber:function(T,S,O){if(O==undefined||O==null||O==""){O=this.defaultcalendar()}if(S===""||S===null){return T}if(!this.isNumber(T)){T*=1}var P;if(S.length>1){P=parseInt(S.slice(1),10)}var V={};var Q=S.charAt(0).toUpperCase();V.thousandsSeparator=O.thousandsseparator;V.decimalSeparator=O.decimalseparator;switch(Q){case"D":case"d":case"F":case"f":V.decimalPlaces=P;break;case"N":case"n":V.decimalPlaces=0;break;case"C":case"c":V.decimalPlaces=P;if(O.currencysymbolposition=="before"){V.prefix=O.currencysymbol}else{V.suffix=O.currencysymbol}break;case"P":case"p":V.suffix=O.percentsymbol;V.decimalPlaces=P;break;default:throw"Bad number format specifier: "+Q}if(this.isNumber(T)){var K=(T<0);var I=T+"";var R=(V.decimalSeparator)?V.decimalSeparator:".";var e;if(this.isNumber(V.decimalPlaces)){var L=V.decimalPlaces;var N=Math.pow(10,L);I=(T*N).toFixed(0)/N+"";e=I.lastIndexOf(".");if(L>0){if(e<0){I+=R;e=I.length-1}else{if(R!=="."){I=I.replace(".",R)}}while((I.length-1-e)<L){I+="0"}}}else{var I=T+"";e=I.lastIndexOf(".");if(e>0&&L==undefined){if(R!=="."){I=I.replace(".",R)}}}if(V.thousandsSeparator){var U=V.thousandsSeparator;e=I.lastIndexOf(R);e=(e>-1)?e:I.length;var J=I.substring(e);var H=-1;for(var M=e;M>0;M--){H++;if((H%3===0)&&(M!==e)&&(!K||(M>1))){J=U+J}J=I.charAt(M-1)+J}I=J}I=(V.prefix)?V.prefix+I:I;I=(V.suffix)?I+V.suffix:I;return I}else{return T}},tryparsedate:function(ai,aj){if(aj==undefined||aj==null){aj=this.defaultcalendar()}var O=this;if(ai==""){return null}if(ai!=null&&!ai.substring){ai=ai.toString()}if(ai!=null&&ai.substring(0,6)=="/Date("){var ar=/^\/Date\((-?\d+)(\+|-)?(\d+)?\)\/$/;var ap=new Date(+ai.replace(/\/Date\((\d+)\)\//,"$1"));if(ap=="Invalid Date"){var al=ai.match(/^\/Date\((\d+)([-+]\d\d)(\d\d)\)\/$/);var ap=null;if(al){ap=new Date(1*al[1]+3600000*al[2]+60000*al[3])}}if(ap==null||ap=="Invalid Date"||isNaN(ap)){var P=ar.exec(ai);if(P){var R=new Date(parseInt(P[1]));if(P[2]){var X=parseInt(P[3]);if(P[2]==="-"){X=-X}var T=R.getUTCMinutes();R.setUTCMinutes(T-X)}if(!isNaN(R.valueOf())){return R}}}return ap}patterns=aj.patterns;for(prop in patterns){ap=O.parsedate(ai,patterns[prop],aj);if(ap){if(prop=="ISO"){var aa=O.parsedate(ai,patterns.ISO2,aj);if(aa){return aa}}return ap}}if(ai!=null){var aa=null;var L=[":","/","-"];var an=true;for(var N=0;N<L.length;N++){if(ai.indexOf(L[N])!=-1){an=false}}if(an){var at=new Number(ai);if(!isNaN(at)){return new Date(at)}}}if(i.type(ai)==="string"){var ae=O;ai=ae.trim(ai);var ak=[":","/","-"," ",","];var M=function(ax,av,aw){return aw.replace(new RegExp(ax,"g"),av)};ai=M(", ",",",ai);var I="";var W=ai;if(ai.indexOf(":")>=0){I=ai.substring(ai.indexOf(":")-2);I=ae.trim(I);W=ai.substring(0,ai.indexOf(":")-2)}else{if(ai.toUpperCase().indexOf("AM")>=0){I=ai.substring(ai.toUpperCase().indexOf("AM")-2);I=ae.trim(I);W=ai.substring(0,ai.toUpperCase().indexOf("AM")-2)}else{if(ai.toUpperCase().indexOf("PM")>=0){I=ai.substring(ai.toUpperCase().indexOf("PM")-2);I=ae.trim(I);W=ai.substring(0,ai.toUpperCase().indexOf("PM")-2)}}}var e=new Date();var ag=false;if(W){for(var ao=0;ao<ak.length;ao++){if(W.indexOf(ak[ao])>=0){L=W.split(ak[ao]);break}}var H=new Array();var U=new Array();var ac=new Array();var Q=null;var au=null;for(var ao=0;ao<L.length;ao++){var N=L[ao];var ab=ae.parsedate(N,"d",aj)||ae.parsedate(N,"dd",aj)||ae.parsedate(N,"ddd",aj)||ae.parsedate(N,"dddd",aj);if(ab){if(N.length<=2){Q=ao;H.push(ab.getDate());break}}}for(var ao=0;ao<L.length;ao++){var N=L[ao];var S=ae.parsedate(N,"M",aj)||ae.parsedate(N,"MM",aj)||ae.parsedate(N,"MMM",aj)||ae.parsedate(N,"MMMM",aj);if(S){if(Q!=undefined&&Q==ao){continue}U.push(S.getMonth());if(N.length>2){au=ao;break}}}for(var ao=0;ao<L.length;ao++){var N=L[ao];var ad=ae.parsedate(N,"yyyy",aj);if(ad){if(Q!=undefined&&Q==ao){continue}if(au!=undefined&&au==ao){continue}ac.push(ad.getFullYear())}}var am=new Array();for(var aq=0;aq<H.length;aq++){for(var al=0;al<U.length;al++){for(var ah=0;ah<ac.length;ah++){var R=new Date(ac[ah],U[al],H[aq]);if(ac[ah]<1970){R.setFullYear(ac[ah])}if(R.getTime()!=NaN){am.push(R)}}}}if(am.length>0){e=am[0];ag=true}}if(I){var af=I.indexOf(":")>=0?I.split(":"):I;var K=ae.parsedate(I,"h:mm tt",aj)||ae.parsedate(I,"h:mm:ss tt",aj)||ae.parsedate(I,"HH:mm:ss.fff",aj)||ae.parsedate(I,"HH:mm:ss.ff",aj)||ae.parsedate(I,"HH:mm:ss.tttt",aj)||ae.parsedate(I,"HH:mm:ss",aj)||ae.parsedate(I,"HH:mm",aj)||ae.parsedate(I,"HH",aj);var V=0,J=0,Y=0,Z=0;if(K&&K.getTime()!=NaN){V=K.getHours();J=K.getMinutes();Y=K.getSeconds();Z=K.getMilliseconds()}else{if(af.length==1){V=parseInt(af[0])}if(af.length==2){V=parseInt(af[0]);J=parseInt(af[1])}if(af.length==3){V=parseInt(af[0]);J=parseInt(af[1]);if(af[2].indexOf(".")>=0){Y=parseInt(af[2].toString().split(".")[0]);Z=parseInt(af[2].toString().split(".")[1])}else{Y=parseInt(af[2])}}if(af.length==4){V=parseInt(af[0]);J=parseInt(af[1]);Y=parseInt(af[2]);Z=parseInt(af[3])}}if(e&&!isNaN(V)&&!isNaN(J)&&!isNaN(Y)&&!isNaN(Z)){e.setHours(V,J,Y,Z);ag=true}}if(ag){return e}}return null},getparseregexp:function(e,R){var T=e._parseRegExp;if(!T){e._parseRegExp=T={}}else{var K=T[R];if(K){return K}}var Q=this.expandFormat(e,R).replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1"),O=["^"],H=[],N=0,J=0,W=this.getTokenRegExp(),L;while((L=W.exec(Q))!==null){var V=Q.slice(N,L.index);N=W.lastIndex;J+=this.appendPreOrPostMatch(V,O);if(J%2){O.push(L[0]);continue}var I=L[0],M=I.length,S;switch(I){case"dddd":case"ddd":case"MMMM":case"MMM":case"gg":case"g":S="(\\D+)";break;case"tt":case"t":S="(\\D*)";break;case"yyyy":case"fff":case"ff":case"f":S="(\\d{"+M+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":S="(\\d\\d?)";break;case"zzz":S="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":S="([+-]?\\d\\d?)";break;case"/":S="(\\"+e["/"]+")";break;default:throw"Invalid date format pattern '"+I+"'.";break}if(S){O.push(S)}H.push(L[0])}this.appendPreOrPostMatch(Q.slice(N),O);O.push("$");var U=O.join("").replace(/\s+/g,"\\s+"),P={regExp:U,groups:H};return T[R]=P},outOfRange:function(I,e,H){return I<e||I>H},expandYear:function(L,J){var H=new Date(),e=this.getEra(H);if(J<100){var I=L.twoDigitYearMax;I=typeof I==="string"?new Date().getFullYear()%100+parseInt(I,10):I;var K=this.getEraYear(H,L,e);J+=K-(K%100);if(J>I){J-=100}}return J},parsedate:function(ab,ai,W){if(W==undefined||W==null){W=this.defaultcalendar()}ab=this.trim(ab);var T=W,an=this.getparseregexp(T,ai),N=new RegExp(an.regExp).exec(ab);if(N===null){return null}var aj=an.groups,Z=null,R=null,am=null,al=null,S=null,L=0,ae,ad=0,ak=0,e=0,I=null,U=false;for(var af=0,ah=aj.length;af<ah;af++){var H=N[af+1];if(H){var aa=aj[af],K=aa.length,M=parseInt(H,10);switch(aa){case"dd":case"d":al=M;if(this.outOfRange(al,1,31)){return null}break;case"MMM":case"MMMM":am=this.getMonthIndex(T,H,K===3);if(this.outOfRange(am,0,11)){return null}break;case"M":case"MM":am=M-1;if(this.outOfRange(am,0,11)){return null}break;case"y":case"yy":case"yyyy":R=K<4?this.expandYear(T,M):M;if(this.outOfRange(R,0,9999)){return null}break;case"h":case"hh":L=M;if(L===12){L=0}if(this.outOfRange(L,0,11)){return null}break;case"H":case"HH":L=M;if(this.outOfRange(L,0,23)){return null}break;case"m":case"mm":ad=M;if(this.outOfRange(ad,0,59)){return null}break;case"s":case"ss":ak=M;if(this.outOfRange(ak,0,59)){return null}break;case"tt":case"t":U=T.PM&&(H===T.PM[0]||H===T.PM[1]||H===T.PM[2]);if(!U&&(!T.AM||(H!==T.AM[0]&&H!==T.AM[1]&&H!==T.AM[2]))){return null}break;case"f":case"ff":case"fff":e=M*Math.pow(10,3-K);if(this.outOfRange(e,0,999)){return null}break;case"ddd":case"dddd":S=this.getDayIndex(T,H,K===3);if(this.outOfRange(S,0,6)){return null}break;case"zzz":var J=H.split(/:/);if(J.length!==2){return null}ae=parseInt(J[0],10);if(this.outOfRange(ae,-12,13)){return null}var P=parseInt(J[1],10);if(this.outOfRange(P,0,59)){return null}I=(ae*60)+(this.startsWith(H,"-")?-P:P);break;case"z":case"zz":ae=M;if(this.outOfRange(ae,-12,13)){return null}I=ae*60;break;case"g":case"gg":var V=H;if(!V||!T.eras){return null}V=trim(V.toLowerCase());for(var ag=0,ac=T.eras.length;ag<ac;ag++){if(V===T.eras[ag].name.toLowerCase()){Z=ag;break}}if(Z===null){return null}break}}}var Q=new Date(),Y,O=T.convert;Y=Q.getFullYear();if(R===null){R=Y}else{if(T.eras){R+=T.eras[(Z||0)].offset}}if(am===null){am=0}if(al===null){al=1}if(O){Q=O.toGregorian(R,am,al);if(Q===null){return null}}else{Q.setFullYear(R,am,al);if(Q.getDate()!==al){return null}if(S!==null&&Q.getDay()!==S){return null}}if(U&&L<12){L+=12}Q.setHours(L,ad,ak,e);if(I!==null){var X=Q.getMinutes()-(I+Q.getTimezoneOffset());Q.setHours(Q.getHours()+parseInt(X/60,10),X%60)}return Q},cleardatescache:function(){this.datescache=new Array()},formatDate:function(e,I,H){return this.formatdate(e,I,H)},formatdate:function(Z,ad,U){if(U==undefined||U==null){U=this.defaultcalendar()}if(typeof Z==="string"){return Z}var J=Z.toString()+"_"+ad;if(this.datescache&&this.datescache[J]){return this.datescache[J]}if(!ad||!ad.length||ad==="i"){var af;af=this.formatDate(Z,U.patterns.F,U);return af}var aa=U.eras,H=ad==="s";ad=this.expandFormat(U,ad);af=[];var M,ab=["0","00","000"],Q,R,e=/([^d]|^)(d|dd)([^d]|$)/g,ae=0,W=this.getTokenRegExp(),I;function O(ag,aj){var ai,ah=ag+"";if(aj>1&&ah.length<aj){ai=(ab[aj-2]+ah);return ai.substr(ai.length-aj,aj)}else{ai=ah}return ai}function ac(){if(Q||R){return Q}Q=e.test(ad);R=true;return Q}function K(ah,ag){if(I){return I[ag]}if(ah.getMonth!=undefined){switch(ag){case 0:return ah.getFullYear();case 1:return ah.getMonth();case 2:return ah.getDate()}}}for(;;){var N=W.lastIndex,V=W.exec(ad);var S=ad.slice(N,V?V.index:ad.length);ae+=this.appendPreOrPostMatch(S,af);if(!V){break}if(ae%2){af.push(V[0]);continue}var X=V[0],L=X.length;switch(X){case"ddd":case"dddd":var T=(L===3)?U.days.namesAbbr:U.days.names;af.push(T[Z.getDay()]);break;case"d":case"dd":Q=true;af.push(O(K(Z,2),L));break;case"MMM":case"MMMM":var Y=K(Z,1);af.push(U.months[L===3?"namesAbbr":"names"][Y]);break;case"M":case"MM":af.push(O(K(Z,1)+1,L));break;case"y":case"yy":case"yyyy":Y=this.getEraYear(Z,U,this.getEra(Z,aa),H);if(L<4){Y=Y%100}af.push(O(Y,L));break;case"h":case"hh":M=Z.getHours()%12;if(M===0){M=12}af.push(O(M,L));break;case"H":case"HH":af.push(O(Z.getHours(),L));break;case"m":case"mm":af.push(O(Z.getMinutes(),L));break;case"s":case"ss":af.push(O(Z.getSeconds(),L));break;case"t":case"tt":Y=Z.getHours()<12?(U.AM?U.AM[0]:" "):(U.PM?U.PM[0]:" ");af.push(L===1?Y.charAt(0):Y);break;case"f":case"ff":case"fff":af.push(O(Z.getMilliseconds(),3).substr(0,L));break;case"z":case"zz":M=Z.getTimezoneOffset()/60;af.push((M<=0?"+":"-")+O(Math.floor(Math.abs(M)),L));break;case"zzz":M=Z.getTimezoneOffset()/60;af.push((M<=0?"+":"-")+O(Math.floor(Math.abs(M)),2)+":"+O(Math.abs(Z.getTimezoneOffset()%60),2));break;case"g":case"gg":if(U.eras){af.push(U.eras[this.getEra(Z,aa)].name)}break;case"/":af.push(U["/"]);break;default:throw"Invalid date format pattern '"+X+"'.";break}}var P=af.join("");if(!this.datescache){this.datescache=new Array()}this.datescache[J]=P;return P}});i.jqx.data={};var l,E,p=/#.*$/,a=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,f=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,j=/^(?:GET|HEAD)$/,o=/^\/\//,k=/\?/,b=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,d=/([?&])_=[^&]*/,h=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,t=/\s+/,F=i.fn.load,G={},C={},q=["*/"]+["*"];try{E=location.href}catch(A){E=document.createElement("a");E.href="";E=E.href}l=h.exec(E.toLowerCase())||[];function r(e){return function(K,M){if(typeof K!=="string"){M=K;K="*"}var H,N,O,J=K.toLowerCase().split(t),I=0,L=J.length;if(i.isFunction(M)){for(;I<L;I++){H=J[I];O=/^\+/.test(H);if(O){H=H.substr(1)||"*"}N=e[H]=e[H]||[];N[O?"unshift":"push"](M)}}}}function v(H,Q,L,O,N,J){N=N||Q.dataTypes[0];J=J||{};J[N]=true;var P,M=H[N],I=0,e=M?M.length:0,K=(H===G);for(;I<e&&(K||!P);I++){P=M[I](Q,L,O);if(typeof P==="string"){if(!K||J[P]){P=undefined}else{Q.dataTypes.unshift(P);P=v(H,Q,L,O,P,J)}}}if((K||!P)&&!J["*"]){P=v(H,Q,L,O,"*",J)}return P}function u(I,J){var H,e,K=i.jqx.data.ajaxSettings.flatOptions||{};for(H in J){if(J[H]!==undefined){(K[H]?I:(e||(e={})))[H]=J[H]}}if(e){i.extend(true,I,e)}}i.extend(i.jqx.data,{ajaxSetup:function(H,e){if(e){u(H,i.jqx.data.ajaxSettings)}else{e=H;H=i.jqx.data.ajaxSettings}u(H,e);return H},ajaxSettings:{url:E,isLocal:f.test(l[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":q},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":window.String,"text html":true,"text json":i.parseJSON,"text xml":i.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:r(G),ajaxTransport:r(C),ajax:function(M,J){if(typeof M==="object"){J=M;M=undefined}J=J||{};var P,ad,K,Y,R,V,I,X,Q=i.jqx.data.ajaxSetup({},J),af=Q.context||Q,T=af!==Q&&(af.nodeType||af instanceof i)?i(af):i.event,ae=i.Deferred(),aa=i.Callbacks("once memory"),N=Q.statusCode||{},U={},ab={},L=0,O="canceled",W={readyState:0,setRequestHeader:function(ag,ah){if(!L){var e=ag.toLowerCase();ag=ab[e]=ab[e]||ag;U[ag]=ah}return this},getAllResponseHeaders:function(){return L===2?ad:null},getResponseHeader:function(ag){var e;if(L===2){if(!K){K={};while((e=a.exec(ad))){K[e[1].toLowerCase()]=e[2]}}e=K[ag.toLowerCase()]}return e===undefined?null:e},overrideMimeType:function(e){if(!L){Q.mimeType=e}return this},abort:function(e){e=e||O;if(Y){Y.abort(e)}S(0,e);return this}};function S(ak,ag,al,ai){var e,ao,am,aj,an,ah=ag;if(L===2){return}L=2;if(R){clearTimeout(R)}Y=undefined;ad=ai||"";W.readyState=ak>0?4:0;if(al){aj=B(Q,W,al)}if(ak>=200&&ak<300||ak===304){if(Q.ifModified){an=W.getResponseHeader("Last-Modified");if(an){i.lastModified[P]=an}an=W.getResponseHeader("Etag");if(an){i.etag[P]=an}}if(ak===304){ah="notmodified";e=true}else{e=c(Q,aj);ah=e.state;ao=e.data;am=e.error;e=!am}}else{am=ah;if(!ah||ak){ah="error";if(ak<0){ak=0}}}W.status=ak;W.statusText=(ag||ah)+"";if(e){ae.resolveWith(af,[ao,ah,W])}else{ae.rejectWith(af,[W,ah,am])}W.statusCode(N);N=undefined;if(I){T.trigger("ajax"+(e?"Success":"Error"),[W,Q,e?ao:am])}aa.fireWith(af,[W,ah]);if(I){T.trigger("ajaxComplete",[W,Q]);if(!(--i.active)){i.event.trigger("ajaxStop")}}}ae.promise(W);W.success=W.done;W.error=W.fail;W.complete=aa.add;W.statusCode=function(ag){if(ag){var e;if(L<2){for(e in ag){N[e]=[N[e],ag[e]]}}else{e=ag[W.status];W.always(e)}}return this};Q.url=((M||Q.url)+"").replace(p,"").replace(o,l[1]+"//");Q.dataTypes=i.trim(Q.dataType||"*").toLowerCase().split(t);if(Q.crossDomain==null){V=h.exec(Q.url.toLowerCase());Q.crossDomain=!!(V&&(V[1]!==l[1]||V[2]!==l[2]||(V[3]||(V[1]==="http:"?80:443))!=(l[3]||(l[1]==="http:"?80:443))))}if(Q.data&&Q.processData&&typeof Q.data!=="string"){Q.data=i.param(Q.data,Q.traditional)}v(G,Q,J,W);if(L===2){return W}I=Q.global;Q.type=Q.type.toUpperCase();Q.hasContent=!j.test(Q.type);if(I&&i.active++===0){i.event.trigger("ajaxStart")}if(!Q.hasContent){if(Q.data){Q.url+=(k.test(Q.url)?"&":"?")+Q.data;delete Q.data}P=Q.url;if(Q.cache===false){var H=i.now(),ac=Q.url.replace(d,"$1_="+H);Q.url=ac+((ac===Q.url)?(k.test(Q.url)?"&":"?")+"_="+H:"")}}if(Q.data&&Q.hasContent&&Q.contentType!==false||J.contentType){W.setRequestHeader("Content-Type",Q.contentType)}if(Q.ifModified){P=P||Q.url;if(i.lastModified[P]){W.setRequestHeader("If-Modified-Since",i.lastModified[P])}if(i.etag[P]){W.setRequestHeader("If-None-Match",i.etag[P])}}W.setRequestHeader("Accept",Q.dataTypes[0]&&Q.accepts[Q.dataTypes[0]]?Q.accepts[Q.dataTypes[0]]+(Q.dataTypes[0]!=="*"?", "+q+"; q=0.01":""):Q.accepts["*"]);for(X in Q.headers){W.setRequestHeader(X,Q.headers[X])}if(Q.beforeSend&&(Q.beforeSend.call(af,W,Q)===false||L===2)){return W.abort()}O="abort";for(X in {success:1,error:1,complete:1}){W[X](Q[X])}Y=v(C,Q,J,W);if(!Y){S(-1,"No Transport")}else{W.readyState=1;if(I){T.trigger("ajaxSend",[W,Q])}if(Q.async&&Q.timeout>0){R=setTimeout(function(){W.abort("timeout")},Q.timeout)}try{L=1;Y.send(U,S)}catch(Z){if(L<2){S(-1,Z)}else{throw Z}}}return W},active:0,lastModified:{},etag:{}});function B(P,O,L){var K,M,J,e,H=P.contents,N=P.dataTypes,I=P.responseFields;for(M in I){if(M in L){O[I[M]]=L[M]}}while(N[0]==="*"){N.shift();if(K===undefined){K=P.mimeType||O.getResponseHeader("content-type")}}if(K){for(M in H){if(H[M]&&H[M].test(K)){N.unshift(M);break}}}if(N[0] in L){J=N[0]}else{for(M in L){if(!N[0]||P.converters[M+" "+N[0]]){J=M;break}if(!e){e=M}}J=J||e}if(J){if(J!==N[0]){N.unshift(J)}return L[J]}}function c(R,J){var P,H,N,L,O=R.dataTypes.slice(),I=O[0],Q={},K=0;if(R.dataFilter){J=R.dataFilter(J,R.dataType)}if(O[1]){for(P in R.converters){Q[P.toLowerCase()]=R.converters[P]}}for(;(N=O[++K]);){if(N!=="*"){if(I!=="*"&&I!==N){P=Q[I+" "+N]||Q["* "+N];if(!P){for(H in Q){L=H.split(" ");if(L[1]===N){P=Q[I+" "+L[0]]||Q["* "+L[0]];if(P){if(P===true){P=Q[H]}else{if(Q[H]!==true){N=L[0];O.splice(K--,0,N)}}break}}}}if(P!==true){if(P&&R["throws"]){J=P(J)}else{try{J=P(J)}catch(M){return{state:"parsererror",error:P?M:"No conversion from "+I+" to "+N}}}}}I=N}}return{state:"success",data:J}}var y=[],n=/\?/,D=/(=)\?(?=&|$)|\?\?/,z=i.now();i.jqx.data.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=y.pop()||(i.expando+"_"+(z++));this[e]=true;return e}});i.jqx.data.ajaxPrefilter("json jsonp",function(Q,L,P){var O,e,N,J=Q.data,H=Q.url,I=Q.jsonp!==false,M=I&&D.test(H),K=I&&!M&&typeof J==="string"&&!(Q.contentType||"").indexOf("application/x-www-form-urlencoded")&&D.test(J);if(Q.dataTypes[0]==="jsonp"||M||K){O=Q.jsonpCallback=i.isFunction(Q.jsonpCallback)?Q.jsonpCallback():Q.jsonpCallback;e=window[O];if(M){Q.url=H.replace(D,"$1"+O)}else{if(K){Q.data=J.replace(D,"$1"+O)}else{if(I){Q.url+=(n.test(H)?"&":"?")+Q.jsonp+"="+O}}}Q.converters["script json"]=function(){if(!N){i.error(O+" was not called")}return N[0]};Q.dataTypes[0]="json";window[O]=function(){N=arguments};P.always(function(){window[O]=e;if(Q[O]){Q.jsonpCallback=L.jsonpCallback;y.push(O)}if(N&&i.isFunction(e)){e(N[0])}N=e=undefined});return"script"}});i.jqx.data.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){i.globalEval(e);return e}}});i.jqx.data.ajaxPrefilter("script",function(e){if(e.cache===undefined){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});i.jqx.data.ajaxTransport("script",function(I){if(I.crossDomain){var e,H=document.head||document.getElementsByTagName("head")[0]||document.documentElement;return{send:function(J,K){e=document.createElement("script");e.async="async";if(I.scriptCharset){e.charset=I.scriptCharset}e.src=I.url;e.onload=e.onreadystatechange=function(M,L){if(L||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(H&&e.parentNode){H.removeChild(e)}e=undefined;if(!L){K(200,"success")}}};H.insertBefore(e,H.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var w,x=window.ActiveXObject?function(){for(var e in w){w[e](0,1)}}:false,m=0;function g(){try{return new window.XMLHttpRequest()}catch(H){}}function s(){try{return new window.ActiveXObject("Microsoft.XMLHTTP")}catch(H){}}i.jqx.data.ajaxSettings.xhr=window.ActiveXObject?function(){return !this.isLocal&&g()||s()}:g;(function(e){i.extend(i.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(i.jqx.data.ajaxSettings.xhr());if(i.support.ajax){i.jqx.data.ajaxTransport(function(e){if(!e.crossDomain||i.support.cors){var H;return{send:function(N,I){var L,K,M=e.xhr();if(e.username){M.open(e.type,e.url,e.async,e.username,e.password)}else{M.open(e.type,e.url,e.async)}if(e.xhrFields){for(K in e.xhrFields){M[K]=e.xhrFields[K]}}if(e.mimeType&&M.overrideMimeType){M.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!N["X-Requested-With"]){N["X-Requested-With"]="XMLHttpRequest"}try{for(K in N){M.setRequestHeader(K,N[K])}}catch(J){}M.send((e.hasContent&&e.data)||null);H=function(W,Q){var R,P,O,U,T;try{if(H&&(Q||M.readyState===4)){H=undefined;if(L){M.onreadystatechange=i.noop;if(x){delete w[L]}}if(Q){if(M.readyState!==4){M.abort()}}else{R=M.status;O=M.getAllResponseHeaders();U={};T=M.responseXML;if(T&&T.documentElement){U.xml=T}try{U.text=M.responseText}catch(V){}try{P=M.statusText}catch(V){P=""}if(!R&&e.isLocal&&!e.crossDomain){R=U.text?200:404}else{if(R===1223){R=204}}}}}catch(S){if(!Q){I(-1,S)}}if(U){I(R,P,U,O)}};if(!e.async){H()}else{if(M.readyState===4){setTimeout(H,0)}else{L=++m;if(x){if(!w){w={};i(window).unload(x)}w[L]=H}M.onreadystatechange=H}}},abort:function(){if(H){H(0,1)}}}}})}i.jqx.filter=function(){this.operator="and";var M=0;var J=1;var P=["EMPTY","NOT_EMPTY","CONTAINS","CONTAINS_CASE_SENSITIVE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_CASE_SENSITIVE","STARTS_WITH","STARTS_WITH_CASE_SENSITIVE","ENDS_WITH","ENDS_WITH_CASE_SENSITIVE","EQUAL","EQUAL_CASE_SENSITIVE","NULL","NOT_NULL"];var R=["EQUAL","NOT_EQUAL","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","NULL","NOT_NULL"];var S=["EQUAL","NOT_EQUAL","LESS_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN","GREATER_THAN_OR_EQUAL","NULL","NOT_NULL"];var L=["EQUAL","NOT_EQUAL"];var K=new Array();var Q=new Array();this.evaluate=function(X){var V=true;for(var W=0;W<K.length;W++){var U=K[W].evaluate(X);if(W==0){V=U}else{if(Q[W]==J||Q[W]=="or"){V=V||U}else{V=V&&U}}}return V};this.getfilterscount=function(){return K.length};this.setoperatorsbyfiltertype=function(U,V){switch(U){case"numericfilter":R=V;break;case"stringfilter":P=V;break;case"datefilter":S=V;break;case"booleanfilter":L=V;break}};this.getoperatorsbyfiltertype=function(U){var V=new Array();switch(U){case"numericfilter":V=R.slice(0);break;case"stringfilter":V=P.slice(0);break;case"datefilter":V=S.slice(0);break;case"booleanfilter":V=L.slice(0);break}return V};var O=function(){var U=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(U()+"-"+U()+"-"+U())};this.createfilter=function(Y,V,X,W,U,Z){if(Y==null||Y==undefined){return null}switch(Y){case"numericfilter":return new N(V,X.toUpperCase());case"stringfilter":return new T(V,X.toUpperCase());case"datefilter":return new H(V,X.toUpperCase(),U,Z);case"booleanfilter":return new I(V,X.toUpperCase());case"custom":return new e(V,X.toUpperCase(),W)}throw new Error("jqxGrid: There is no such filter type. The available filter types are: 'numericfilter', 'stringfilter', 'datefilter' and 'booleanfilter'");return null};this.getfilters=function(){var U=new Array();for(var V=0;V<K.length;V++){var W={value:K[V].filtervalue,condition:K[V].comparisonoperator,operator:Q[V],type:K[V].type};if(K[V].data){W.id=K[V].data}U[V]=W}return U};this.addfilter=function(U,V){K[K.length]=V;V.key=O();Q[Q.length]=U};this.removefilter=function(V){for(var U=0;U<K.length;U++){if(K[U].key==V.key){K.splice(U,1);Q.splice(U,1);break}}};this.getoperatorat=function(U){if(U==undefined||U==null){return null}if(U<0||U>K.length){return null}return Q[U]};this.setoperatorat=function(V,U){if(V==undefined||V==null){return null}if(V<0||V>K.length){return null}Q[U]=U};this.getfilterat=function(U){if(U==undefined||U==null){return null}if(U<0||U>K.length){return null}return K[U]};this.setfilterat=function(U,V){if(U==undefined||U==null){return null}if(U<0||U>K.length){return null}V.key=O();K[U]=V};this.clear=function(){K=new Array();Q=new Array()};var T=function(V,U){this.filtervalue=V;this.comparisonoperator=U;this.type="stringfilter";this.evaluate=function(af){var ae=this.filtervalue;var al=this.comparisonoperator;if(af==null||af==undefined||af==""){if(al=="NULL"){return true}if(al=="EQUAL"&&af==ae){return true}if(al=="NOT_EQUAL"&&af!=ae){return true}if(al!="EMPTY"){return false}else{if(af==""){return true}}}var an="";try{an=af.toString()}catch(ag){return true}var am=function(ap,ao){switch(al){case"EQUAL":return i.jqx.string.equalsIgnoreCase(ap,ao);case"EQUAL_CASE_SENSITIVE":return i.jqx.string.equals(ap,ao);case"NOT_EQUAL":return !i.jqx.string.equalsIgnoreCase(ap,ao);case"NOT_EQUAL_CASE_SENSITIVE":return !i.jqx.string.equals(ap,ao);case"CONTAINS":return i.jqx.string.containsIgnoreCase(ap,ao);case"CONTAINS_CASE_SENSITIVE":return i.jqx.string.contains(ap,ao);case"DOES_NOT_CONTAIN":return !i.jqx.string.containsIgnoreCase(ap,ao);case"DOES_NOT_CONTAIN_CASE_SENSITIVE":return !i.jqx.string.contains(ap,ao);case"EMPTY":return ap=="";case"NOT_EMPTY":return ap!="";case"NOT_NULL":return ap!=null;case"STARTS_WITH":return i.jqx.string.startsWithIgnoreCase(ap,ao);case"ENDS_WITH":return i.jqx.string.endsWithIgnoreCase(ap,ao);case"ENDS_WITH_CASE_SENSITIVE":return i.jqx.string.endsWith(ap,ao);case"STARTS_WITH_CASE_SENSITIVE":return i.jqx.string.startsWith(ap,ao);default:return false}};var Z=new Array();if(ae&&ae.indexOf){if(ae.indexOf("|")>=0||ae.indexOf(" AND ")>=0||ae.indexOf(" OR ")>=0||ae.indexOf(" and ")>=0||ae.indexOf(" or ")>=0){var aa=am(an,ae);if(aa){return aa}var ab=ae.indexOf(" AND ")>=0?ae.split(" AND "):new Array();var Y=ae.indexOf(" OR ")>=0?ae.split(" OR "):new Array();var X=ae.indexOf(" and ")>=0?ae.split(" and "):new Array();var ac=ae.indexOf(" or ")>=0?ae.split(" or "):new Array();var W=ae.indexOf("|")>=0?ae.split("|"):new Array();if(W.length>0){for(var ak=0;ak<W.length;ak++){W[ak]=i.trim(W[ak])}}var aj=ae.indexOf(" ")>=0?ae.split(" "):new Array();if(aj.length>0){for(var ak=0;ak<aj.length;ak++){aj[ak]=i.trim(aj[ak])}}ab=ab.concat(aj);ab=ab.concat(X);Y=Y.concat(W);Y=Y.concat(ac);if(ab.length>0){for(var ak=0;ak<ab.length;ak++){if(!ab[ak].indexOf(" OR ")>=0){Z.push(ab[ak])}}}if(Y.length>0){for(var ak=0;ak<Y.length;ak++){if(!Y[ak].indexOf(" AND ")>=0){Z.push(Y[ak])}}}var ai=undefined;for(var ah=0;ah<Z.length;ah++){var af=Z[ah];var aa=am(an,af);var ad=ah<ab.length?"and":"or";if(ai==undefined){ai=aa}else{if(ad=="or"){ai=ai||aa}else{ai=ai&&aa}}}return ai}}return am(an,ae)}};var I=function(V,U){this.filtervalue=V;this.comparisonoperator=U;this.type="booleanfilter";this.evaluate=function(Y){var X=this.filtervalue;var W=this.comparisonoperator;if(Y==null||Y==undefined){if(W=="NULL"){return true}return false}var Z=Y;switch(W){case"EQUAL":return Z==X||Z.toString()==X.toString();case"NOT_EQUAL":return Z!=X&&Z.toString()!=X.toString();default:return false}}};var N=function(V,U){this.filtervalue=V;this.comparisonoperator=U;this.type="numericfilter";this.evaluate=function(ag){var af=this.filtervalue;var al=this.comparisonoperator;if(ag===null||ag===undefined||ag===""){if(al=="NOT_NULL"){return false}if(al=="NULL"){return true}else{switch(al){case"EQUAL":return ag==af;case"NOT_EQUAL":return ag!=af}return false}}else{if(al=="NULL"){return false}if(al=="NOT_NULL"){return true}}var an=ag;try{an=parseFloat(an)}catch(ah){if(ag.toString()!=""){return false}}var am=function(ap,ao){switch(al){case"EQUAL":return ap==ao;case"NOT_EQUAL":return ap!=ao;case"GREATER_THAN":return ap>ao;case"GREATER_THAN_OR_EQUAL":return ap>=ao;case"LESS_THAN":return ap<ao;case"LESS_THAN_OR_EQUAL":return ap<=ao;case"STARTS_WITH":return i.jqx.string.startsWithIgnoreCase(ap.toString(),ao.toString());case"ENDS_WITH":return i.jqx.string.endsWithIgnoreCase(ap.toString(),ao.toString());case"ENDS_WITH_CASE_SENSITIVE":return i.jqx.string.endsWith(ap.toString(),ao.toString());case"STARTS_WITH_CASE_SENSITIVE":return i.jqx.string.startsWith(ap.toString(),ao.toString());case"CONTAINS":return i.jqx.string.containsIgnoreCase(ap.toString(),ao.toString());case"CONTAINS_CASE_SENSITIVE":return i.jqx.string.contains(ap.toString(),ao.toString());case"DOES_NOT_CONTAIN":return !i.jqx.string.containsIgnoreCase(ap.toString(),ao.toString());case"DOES_NOT_CONTAIN_CASE_SENSITIVE":return !i.jqx.string.contains(ap.toString(),ao.toString());default:return true}};var aa=new Array();if(af&&af.indexOf){if(af.indexOf("|")>=0||af.indexOf(" AND ")>=0||af.indexOf(" OR ")>=0||af.indexOf(" and ")>=0||af.indexOf(" or ")>=0){var ab=am(an,af);if(ab){return ab}af=af.toString();var ac=af.indexOf(" AND ")>=0?af.split(" AND "):new Array();var Z=af.indexOf(" OR ")>=0?af.split(" OR "):new Array();var Y=af.indexOf(" and ")>=0?af.split(" and "):new Array();var ad=af.indexOf(" or ")>=0?af.split(" or "):new Array();ac=ac.concat(Y);Z=Z.concat(ad);var X=af.indexOf("|")>=0?af.split("|"):new Array();if(X.length>0){for(var ak=0;ak<X.length;ak++){X[ak]=i.trim(X[ak])}}Z=Z.concat(X);if(ac.length>0){for(var ak=0;ak<ac.length;ak++){if(!ac[ak].indexOf(" OR ")>=0){aa.push(ac[ak])}}}if(Z.length>0){for(var ak=0;ak<Z.length;ak++){if(!Z[ak].indexOf(" AND ")>=0){aa.push(Z[ak])}}}var aj=undefined;for(var ai=0;ai<aa.length;ai++){var ag=aa[ai];if(ag&&ag.indexOf&&ag.indexOf("..")>=0){var W=ag.toString().split("..");if(W.length==2){ab=an>=W[0]&&an<=W[1]}}else{var ab=am(an,ag)}var ae=ai<ac.length?"and":"or";if(aj==undefined){aj=ab}else{if(ae=="or"){aj=aj||ab}else{aj=aj&&ab}}}return aj}}if(af&&af.indexOf&&af.indexOf("..")>=0){aa=af.toString().split("..");if(aa.length==2){return an>=aa[0]&&an<=aa[1]}}return am(an,af)}};var H=function(X,V,W,ab){this.filtervalue=X;this.type="datefilter";var Z=this;if(W!=undefined&&ab!=undefined){var Y=i.jqx.dataFormat.parsedate(X,W,ab);if(Y!=null){this.filterdate=Y}else{var U=i.jqx.dataFormat.tryparsedate(X,ab);if(U!=null){this.filterdate=U}}}else{var aa=new Date(X);if(aa.toString()=="NaN"||aa.toString()=="Invalid Date"){this.filterdate=i.jqx.dataFormat.tryparsedate(X)}else{this.filterdate=aa}}if(!this.filterdate){var aa=new Date(X);if(aa.toString()=="NaN"||aa.toString()=="Invalid Date"){this.filterdate=i.jqx.dataFormat.tryparsedate(X)}else{this.filterdate=aa}}this.comparisonoperator=V;this.evaluate=function(ao){var an=this.filtervalue;var aw=this.comparisonoperator;if(ao==null||ao==undefined||ao==""){if(aw=="NOT_NULL"){return false}if(aw=="NULL"){return true}else{switch(aw){case"EQUAL":return ao==an;case"NOT_EQUAL":return ao!=an}return false}}else{if(aw=="NULL"){return false}if(aw=="NOT_NULL"){return true}}var ay=new Date();ay.setFullYear(1900,0,1);ay.setHours(12,0,0,0);try{var av=new Date(ao);if(av.toString()=="NaN"||av.toString()=="Invalid Date"){ao=i.jqx.dataFormat.tryparsedate(ao)}else{ao=av}ay=ao;var at=false;if(W!=undefined&&ab!=undefined){if(W.indexOf("t")>=0||W.indexOf("T")>=0||W.indexOf(":")>=0||W.indexOf("f")>=0){at=true;if(an&&an.toString().indexOf(":")==-1){var aj=i.jqx.dataFormat.tryparsedate(an.toString()+":00",ab);if(aj!=null){Z.filterdate=aj}}}}if(!at){ay.setHours(0);ay.setMinutes(0);ay.setSeconds(0)}}catch(ap){if(ao.toString()!=""){return false}}if(Z.filterdate!=null){an=Z.filterdate}else{if(an&&an.indexOf){if(an.indexOf(":")!=-1||!isNaN(parseInt(an))){var ai=new Date(ay);ai.setHours(12,0,0,0);var ah=an.split(":");for(var au=0;au<ah.length;au++){if(au==0){ai.setHours(ah[au])}if(au==1){ai.setMinutes(ah[au])}if(au==2){ai.setSeconds(ah[au])}}an=ai}}}if(at){if(an&&an.setFullYear){if(ay&&ay.getFullYear){if(W.indexOf("d")==-1&&W.indexOf("M")==-1&&W.indexOf("y")==-1){an.setFullYear(ay.getFullYear(),ay.getMonth(),ay.getDate())}}}}var ax=function(aA,az){if(aA==null){aA=""}switch(aw){case"EQUAL":return aA.toString()==az.toString();case"NOT_EQUAL":return aA.toString()!=az.toString();case"GREATER_THAN":return aA>az;case"GREATER_THAN_OR_EQUAL":return aA>=az;case"LESS_THAN":return aA<az;case"LESS_THAN_OR_EQUAL":return aA<=az;case"STARTS_WITH":return i.jqx.string.startsWithIgnoreCase(aA.toString(),az.toString());case"ENDS_WITH":return i.jqx.string.endsWithIgnoreCase(aA.toString(),az.toString());case"ENDS_WITH_CASE_SENSITIVE":return i.jqx.string.endsWith(aA.toString(),az.toString());case"STARTS_WITH_CASE_SENSITIVE":return i.jqx.string.startsWith(aA.toString(),az.toString());case"CONTAINS":return i.jqx.string.containsIgnoreCase(aA.toString(),az.toString());case"CONTAINS_CASE_SENSITIVE":return i.jqx.string.contains(aA.toString(),az.toString());case"DOES_NOT_CONTAIN":return !i.jqx.string.containsIgnoreCase(aA.toString(),az.toString());case"DOES_NOT_CONTAIN_CASE_SENSITIVE":return !i.jqx.string.contains(aA.toString(),az.toString());default:return true}};var ag=new Array();if(an&&an.indexOf){if(an.indexOf("|")>=0||an.indexOf(" AND ")>=0||an.indexOf(" OR ")>=0||an.indexOf(" and ")>=0||an.indexOf(" or ")>=0){var aj=ax(ay,an);if(aj){return aj}var ak=an.indexOf(" AND ")>=0?an.split(" AND "):new Array();var af=an.indexOf(" OR ")>=0?an.split(" OR "):new Array();var ae=an.indexOf(" and ")>=0?an.split(" and "):new Array();var al=an.indexOf(" or ")>=0?an.split(" or "):new Array();ak=ak.concat(ae);af=af.concat(al);var ad=an.indexOf("|")>=0?an.split("|"):new Array();if(ad.length>0){for(var au=0;au<ad.length;au++){ad[au]=i.trim(ad[au])}}af=af.concat(ad);if(ak.length>0){for(var au=0;au<ak.length;au++){if(!ak[au].indexOf(" OR ")>=0){ag.push(ak[au])}}}if(af.length>0){for(var au=0;au<af.length;au++){if(!af[au].indexOf(" AND ")>=0){ag.push(af[au])}}}var ar=undefined;for(var aq=0;aq<ag.length;aq++){var ao=ag[aq];if(ao&&ao.indexOf&&ao.indexOf("..")>=0){var ac=ao.toString().split("..");if(ac.length==2){aj=ay>=ac[0]&&ay<=ac[1]}}else{var aj=ax(ay,ao)}var am=aq<ak.length?"and":"or";if(ar==undefined){ar=aj}else{if(am=="or"){ar=ar||aj}else{ar=ar&&aj}}}return ar}}if(an&&an.indexOf&&an.indexOf("..")>=0){ag=an.toString().split("..");if(ag.length==2){return ay>=ag[0]&&ay<=ag[1]}}return ax(ay,an)}};var e=function(V,U,W){this.filtervalue=V;this.comparisonoperator=U;this.evaluate=function(Y,X){return W(this.filtervalue,Y,this.comparisonoperator)}}};i.jqx.longInt=function(){var H=this;H.longObj=new Object();var e=H.longObj;e.mathObj=new Object();e.mathObj.Long=new Object();e.mathObj.Long=function(I,J){this.lowBits=I|0;this.highBits=J|0};e.mathObj.Long.IntCache={};e.mathObj.Long.fromInt=function(I){if(-128<=I&&I<128){var K=e.mathObj.Long.IntCache[I];if(K){return K}}var J=new e.mathObj.Long(I|0,I<0?-1:0);if(-128<=I&&I<128){e.mathObj.Long.IntCache[I]=J}return J};e.mathObj.Long.fromNumber=function(I){if(isNaN(I)||!isFinite(I)){return e.mathObj.Long.ZERO}else{if(I<=-e.mathObj.Long.TWO_PWR_63_DBL_){return e.mathObj.Long.MIN_VALUE}else{if(I+1>=e.mathObj.Long.TWO_PWR_63_DBL_){return e.mathObj.Long.MAX_VALUE}else{if(I<0){return e.mathObj.Long.fromNumber(-I).negate()}else{return new e.mathObj.Long((I%e.mathObj.Long.TWO_PWR_32_DBL_)|0,(I/e.mathObj.Long.TWO_PWR_32_DBL_)|0)}}}}};e.mathObj.Long.fromBits=function(I,J){return new e.mathObj.Long(I,J)};e.mathObj.Long.fromString=function(K,N){if(K.length===0){throw new Error("number format error: empty string")}var L=N||10;if(L<2||36<L){throw new Error("radix out of range: "+L)}if(K.charAt(0)==="-"){return e.mathObj.Long.fromString(K.substring(1),L).negate()}else{if(K.indexOf("-")>=0){throw new Error('number format error: interior "-" character: '+K)}}var O=e.mathObj.Long.fromNumber(Math.pow(L,8));var Q=e.mathObj.Long.ZERO;for(var J=0;J<K.length;J+=8){var P=Math.min(8,K.length-J);var M=parseInt(K.substring(J,J+P),L);if(P<8){var I=e.mathObj.Long.fromNumber(Math.pow(L,P));Q=Q.multiply(I).add(e.mathObj.Long.fromNumber(M))}else{Q=Q.multiply(O);Q=Q.add(e.mathObj.Long.fromNumber(M))}}return Q};e.mathObj.Long.TWO_PWR_16_DBL_=1<<16;e.mathObj.Long.TWO_PWR_24_DBL_=1<<24;e.mathObj.Long.TWO_PWR_32_DBL_=e.mathObj.Long.TWO_PWR_16_DBL_*e.mathObj.Long.TWO_PWR_16_DBL_;e.mathObj.Long.TWO_PWR_31_DBL_=e.mathObj.Long.TWO_PWR_32_DBL_/2;e.mathObj.Long.TWO_PWR_48_DBL_=e.mathObj.Long.TWO_PWR_32_DBL_*e.mathObj.Long.TWO_PWR_16_DBL_;e.mathObj.Long.TWO_PWR_64_DBL_=e.mathObj.Long.TWO_PWR_32_DBL_*e.mathObj.Long.TWO_PWR_32_DBL_;e.mathObj.Long.TWO_PWR_63_DBL_=e.mathObj.Long.TWO_PWR_64_DBL_/2;e.mathObj.Long.ZERO=e.mathObj.Long.fromInt(0);e.mathObj.Long.ONE=e.mathObj.Long.fromInt(1);e.mathObj.Long.NEG_ONE=e.mathObj.Long.fromInt(-1);e.mathObj.Long.MAX_VALUE=e.mathObj.Long.fromBits(4294967295|0,2147483647|0);e.mathObj.Long.MIN_VALUE=e.mathObj.Long.fromBits(0,2147483648|0);e.mathObj.Long.TWO_PWR_24_=e.mathObj.Long.fromInt(1<<24);e.mathObj.Long.prototype.toInt=function(){return this.lowBits};e.mathObj.Long.prototype.toNumber=function(){return this.highBits*e.mathObj.Long.TWO_PWR_32_DBL_+this.getLowBitsUnsigned()};e.mathObj.Long.prototype.toString=function(O){var M=O||10;if(M<2||36<M){throw new Error("radix out of range: "+M)}if(this.isZero()){return"0"}var P,R;if(this.isNegative()){if(this.equals(e.mathObj.Long.MIN_VALUE)){var K=e.mathObj.Long.fromNumber(M);var I=this.div(K);P=I.multiply(K).subtract(this);return I.toString(M)+P.toInt().toString(M)}else{switch(M){case 2:case 8:case 16:R="-"+this.negate().toString(2);return H._negativeBinary(R,M);default:R="-"+this.negate().toString(M);return R}}}var Q=e.mathObj.Long.fromNumber(Math.pow(M,6));P=this;R="";while(true){var N=P.div(Q);var L=P.subtract(N.multiply(Q)).toInt();var J=L.toString(M);P=N;if(P.isZero()){return J+R}else{while(J.length<6){J="0"+J}R=""+J+R}}};e.mathObj.Long.prototype.getHighBits=function(){return this.highBits};e.mathObj.Long.prototype.getLowBits=function(){return this.lowBits};e.mathObj.Long.prototype.getLowBitsUnsigned=function(){return(this.lowBits>=0)?this.lowBits:e.mathObj.Long.TWO_PWR_32_DBL_+this.lowBits};e.mathObj.Long.prototype.getNumBitsAbs=function(){if(this.isNegative()){if(this.equals(e.mathObj.Long.MIN_VALUE)){return 64}else{return this.negate().getNumBitsAbs()}}else{var J=this.highBits!==0?this.highBits:this.lowBits;for(var I=31;I>0;I--){if((J&(1<<I))!==0){break}}return this.highBits!==0?I+33:I+1}};e.mathObj.Long.prototype.isZero=function(){return this.highBits===0&&this.lowBits===0};e.mathObj.Long.prototype.isNegative=function(){return this.highBits<0};e.mathObj.Long.prototype.isOdd=function(){return(this.lowBits&1)===1};e.mathObj.Long.prototype.equals=function(I){return(this.highBits===I.highBits)&&(this.lowBits===I.lowBits)};e.mathObj.Long.prototype.notEquals=function(I){return(this.highBits!==I.highBits)||(this.lowBits!==I.lowBits)};e.mathObj.Long.prototype.lessThan=function(I){return this.compare(I)<0};e.mathObj.Long.prototype.lessThanOrEqual=function(I){return this.compare(I)<=0};e.mathObj.Long.prototype.greaterThan=function(I){return this.compare(I)>0};e.mathObj.Long.prototype.greaterThanOrEqual=function(I){return this.compare(I)>=0};e.mathObj.Long.prototype.compare=function(J){if(this.equals(J)){return 0}var I=this.isNegative();var K=J.isNegative();if(I&&!K){return -1}if(!I&&K){return 1}if(this.subtract(J).isNegative()){return -1}else{return 1}};e.mathObj.Long.prototype.negate=function(){if(this.equals(e.mathObj.Long.MIN_VALUE)){return e.mathObj.Long.MIN_VALUE}else{return this.not().add(e.mathObj.Long.ONE)}};e.mathObj.Long.prototype.add=function(P){var N=this.highBits>>>16;var J=this.highBits&65535;var Q=this.lowBits>>>16;var K=this.lowBits&65535;var S=P.highBits>>>16;var L=P.highBits&65535;var T=P.lowBits>>>16;var M=P.lowBits&65535;var U=0,O=0,I=0,R=0;R+=K+M;I+=R>>>16;R&=65535;I+=Q+T;O+=I>>>16;I&=65535;O+=J+L;U+=O>>>16;O&=65535;U+=N+S;U&=65535;return e.mathObj.Long.fromBits((I<<16)|R,(U<<16)|O)};e.mathObj.Long.prototype.subtract=function(I){return this.add(I.negate())};e.mathObj.Long.prototype.multiply=function(P){if(this.isZero()){return e.mathObj.Long.ZERO}else{if(P.isZero()){return e.mathObj.Long.ZERO}}if(this.equals(e.mathObj.Long.MIN_VALUE)){return P.isOdd()?e.mathObj.Long.MIN_VALUE:e.mathObj.Long.ZERO}else{if(P.equals(e.mathObj.Long.MIN_VALUE)){return this.isOdd()?e.mathObj.Long.MIN_VALUE:e.mathObj.Long.ZERO}}if(this.isNegative()){if(P.isNegative()){return this.negate().multiply(P.negate())}else{return this.negate().multiply(P).negate()}}else{if(P.isNegative()){return this.multiply(P.negate()).negate()}}if(this.lessThan(e.mathObj.Long.TWO_PWR_24_)&&P.lessThan(e.mathObj.Long.TWO_PWR_24_)){return e.mathObj.Long.fromNumber(this.toNumber()*P.toNumber())}var N=this.highBits>>>16;var J=this.highBits&65535;var Q=this.lowBits>>>16;var K=this.lowBits&65535;var S=P.highBits>>>16;var L=P.highBits&65535;var T=P.lowBits>>>16;var M=P.lowBits&65535;var U=0,O=0,I=0,R=0;R+=K*M;I+=R>>>16;R&=65535;I+=Q*M;O+=I>>>16;I&=65535;I+=K*T;O+=I>>>16;I&=65535;O+=J*M;U+=O>>>16;O&=65535;O+=Q*T;U+=O>>>16;O&=65535;O+=K*L;U+=O>>>16;O&=65535;U+=N*M+J*T+Q*L+K*S;U&=65535;return e.mathObj.Long.fromBits((I<<16)|R,(U<<16)|O)};e.mathObj.Long.prototype.div=function(K){if(K.isZero()){throw new Error("division by zero")}else{if(this.isZero()){return e.mathObj.Long.ZERO}}var N,P;if(this.equals(e.mathObj.Long.MIN_VALUE)){if(K.equals(e.mathObj.Long.ONE)||K.equals(e.mathObj.Long.NEG_ONE)){return e.mathObj.Long.MIN_VALUE}else{if(K.equals(e.mathObj.Long.MIN_VALUE)){return e.mathObj.Long.ONE}else{var I=this.shiftRight(1);N=I.div(K).shiftLeft(1);if(N.equals(e.mathObj.Long.ZERO)){return K.isNegative()?e.mathObj.Long.ONE:e.mathObj.Long.NEG_ONE}else{P=this.subtract(K.multiply(N));var R=N.add(P.div(K));return R}}}}else{if(K.equals(e.mathObj.Long.MIN_VALUE)){return e.mathObj.Long.ZERO}}if(this.isNegative()){if(K.isNegative()){return this.negate().div(K.negate())}else{return this.negate().div(K).negate()}}else{if(K.isNegative()){return this.div(K.negate()).negate()}}var L=e.mathObj.Long.ZERO;P=this;while(P.greaterThanOrEqual(K)){N=Math.max(1,Math.floor(P.toNumber()/K.toNumber()));var Q=Math.ceil(Math.log(N)/Math.LN2);var O=(Q<=48)?1:Math.pow(2,Q-48);var J=e.mathObj.Long.fromNumber(N);var M=J.multiply(K);while(M.isNegative()||M.greaterThan(P)){N-=O;J=e.mathObj.Long.fromNumber(N);M=J.multiply(K)}if(J.isZero()){J=e.mathObj.Long.ONE}L=L.add(J);P=P.subtract(M)}return L};e.mathObj.Long.prototype.modulo=function(I){return this.subtract(this.div(I).multiply(I))};e.mathObj.Long.prototype.not=function(){return e.mathObj.Long.fromBits(~this.lowBits,~this.highBits)};e.mathObj.Long.prototype.and=function(I){return e.mathObj.Long.fromBits(this.lowBits&I.lowBits,this.highBits&I.highBits)};e.mathObj.Long.prototype.or=function(I){return e.mathObj.Long.fromBits(this.lowBits|I.lowBits,this.highBits|I.highBits)};e.mathObj.Long.prototype.xor=function(I){return e.mathObj.Long.fromBits(this.lowBits^I.lowBits,this.highBits^I.highBits)};e.mathObj.Long.prototype.shiftLeft=function(K){K&=63;if(K===0){return this}else{var I=this.lowBits;if(K<32){var J=this.highBits;return e.mathObj.Long.fromBits(I<<K,(J<<K)|(I>>>(32-K)))}else{return e.mathObj.Long.fromBits(0,I<<(K-32))}}};e.mathObj.Long.prototype.shiftRight=function(K){K&=63;if(K===0){return this}else{var J=this.highBits;if(K<32){var I=this.lowBits;return e.mathObj.Long.fromBits((I>>>K)|(J<<(32-K)),J>>K)}else{return e.mathObj.Long.fromBits(J>>(K-32),J>=0?0:-1)}}};e.mathObj.Long.prototype.shiftRightUnsigned=function(K){K&=63;if(K===0){return this}else{var J=this.highBits;if(K<32){var I=this.lowBits;return e.mathObj.Long.fromBits((I>>>K)|(J<<(32-K)),J>>>K)}else{if(K===32){return e.mathObj.Long.fromBits(J,0)}else{return e.mathObj.Long.fromBits(J>>>(K-32),0)}}}};return e};i.jqx.math=function(){var H=new Object();var e=new i.jqx.longInt();H.getDecimalNotation=function(M,K){if(K==="decimal"){return M}M=M.toString();function I(T){var S="-0123456789";var Q="⁻⁰¹²³⁴⁵⁶⁷⁸⁹";var P="";for(var R=0;R<T.length;R++){var U=S.indexOf(T.charAt(R));P+=(U!==-1?Q[U]:T[R])}return P}function O(R){if(R==="0"){return parseInt(R).toExponential()}var Q;if(R.charAt(0)==="-"){Q="-";R=R.slice(1,R.length)}else{Q=""}var S=R.length-1;while(R.charAt(R.length-1)==="0"){R=R.slice(0,R.length-1)}var P=R.slice(1,R.length);if(P!==""){P="."+P}return Q+""+R.charAt(0)+P+"e+"+S}function L(S){var R=S.indexOf("e");var Q=S.slice(R+1);var P=S.slice(0,R+1);P=P.replace("e","×10");P+=I(Q);P=P.replace("+","");return P}function J(V){var U=V.indexOf("e");var T=V.slice(U+1);var R=V.slice(0,U);var S=parseInt(T,10)%3;R=R*Math.pow(10,S);var Q=V.slice(0,U).length-S-2;if(Q>=0){R=R.toFixed(Q)}var P=R+"×10"+I((parseInt(T,10)-S).toString());return P}var N=O(M);if(K==="scientific"){return L(N)}else{if(K==="engineering"){return J(N)}else{return N}}};i.extend(H,e.mathObj.Long);return H}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdatatable.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdatatable.js
new file mode 100644 (file)
index 0000000..0fcead4
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(b){b.jqx.jqxWidget("jqxDataTable","",{});b.extend(b.jqx._jqxDataTable.prototype,{defineInstance:function(){var c={altRows:false,aggregatesHeight:34,autoShowLoadElement:true,autoRowHeight:true,columnsHeight:30,columns:[],columnGroups:null,columnsResize:false,columnsReorder:false,dataview:null,disabled:false,editable:false,editSettings:{saveOnPageChange:true,saveOnBlur:true,saveOnSelectionChange:true,cancelOnEsc:true,saveOnEnter:true,editSingleCell:false,editOnDoubleClick:true,editOnF2:true},enableHover:true,enableBrowserSelection:false,filterHeight:30,filterable:false,filterMode:"default",groupsRenderer:null,groups:new Array(),headerZIndex:359,height:null,handleKeyboardNavigation:null,indentWidth:25,initRowDetails:false,loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxDataTable raises the 'bindingComplete' event when the binding is completed.",localization:null,pagerHeight:28,pageSize:10,pageSizeOptions:["5","10","20"],pageable:false,pagerPosition:"bottom",pagerMode:"default",pageSizeMode:"default",pagerButtonsCount:5,pagerRenderer:null,ready:null,rendertoolbar:null,rowDetails:false,renderStatusBar:null,rendered:null,rendering:null,rtl:false,sortable:false,showtoolbar:false,showstatusbar:false,statusBarHeight:34,serverProcessing:false,selectionMode:"multiplerows",scrollBarSize:b.jqx.utilities.scrollBarSize,touchScrollBarSize:b.jqx.utilities.touchScrollBarSize,showAggregates:false,showHeader:true,maxHeight:999999,maxWidth:999999,autoBind:true,beginEdit:null,endEdit:null,autokoupdates:true,columnsVirtualization:false,exportSettings:{columnsHeader:true,hiddenColumns:false,serverURL:null,characterSet:null,collapsedRecords:false,recordsInView:true,fileName:"jqxDataTable"},source:{beforeprocessing:null,beforesend:null,loaderror:null,localdata:null,data:null,datatype:"array",datafields:[],url:"",root:"",record:"",id:"",totalrecords:0,recordstartindex:0,recordendindex:0,loadallrecords:true,sortcolumn:null,sortdirection:null,sort:null,filter:null,sortcomparer:null},toolbarHeight:34,tableZIndex:369,_updating:false,touchmode:"auto",width:null,that:this,incrementalSearch:true,events:["bindingComplete","sort","filter","pageChanged","pageSizeChanged","rowClick","rowDoubleClick","cellValueChanged","rowBeginEdit","rowEndEdit","rowSelect","rowUnselect","rowCheck","rowUncheck","columnResized","columnReordered","rowExpand","rowCollapse","cellBeginEdit","cellEndEdit"]};b.extend(true,this,c);this.that=this;return c},createInstance:function(e){var l=this;if(b.jqx.utilities.scrollBarSize!=15){l.scrollBarSize=b.jqx.utilities.scrollBarSize}if((l.element.nodeName.toLowerCase()=="table")||b(l.element).children("table").length>0){var n=l.host.find("tbody tr");var d=l.host.find("th");var w=new Array();if(d.length===0){d=n[0];n.splice(0,1)}if(l.localizestrings){l.localizestrings();if(l.localization!=null){l.localizestrings(l.localization,false)}}var z=[];for(var u=0;u<n.length;u++){var k=n[u];var h={};for(var t=0;t<d.length;t++){var g=b.trim(b(d[t]).text());if(u===0){var s={name:g};if(l.columns[t]&&l.columns[t].cellsFormat){var v=l.columns[t].cellsFormat.toLowerCase();if(v.indexOf("p")!=-1||v.indexOf("c")!=-1||v.indexOf("n")!=-1||v.indexOf("f")!=-1){s.type="number"}if(v.indexOf("d")!=-1||v.indexOf("m")!=-1||v.indexOf("y")!=-1||v.indexOf("h")!=-1||v.indexOf("m")!=-1||v.indexOf("s")!=-1||v.indexOf("t")!=-1){s.type="date"}}w.push(s)}var c=b(k).find("td:eq("+t+")");var f=w[t].type;if(f){var p=l.getvaluebytype(b.trim(c.text()),w[t]);h[g]=p}else{h[g]=b.trim(c.text())}}z[z.length]=h}l.host.wrap("<div></div>");var m=l.host.parent();var q=l.host.data();q.jqxDataTable.host=m;q.jqxDataTable.element=m[0];l.host.parent()[0].id=l.element.id;try{l.host.parent()[0].style=l.element.style}catch(r){}l.element=m[0];l.host=m;l.host.data(q);var o={dataFields:w,localdata:z,datatype:"array"};var y=new b.jqx.dataAdapter(o);l.source=y}if(l.source&&!l.source.dataBind){l.source=new b.jqx.dataAdapter(l.source)}var x=l.source._source.datafields;if(x&&x.length>0){l._camelCase=l.source._source.dataFields!==undefined;l.selectionMode=l.selectionMode.toLowerCase()}if(l.host.attr("tabindex")==null){l.host.attr("tabindex","0")}l.host.attr("role","grid");l.host.attr("align","left");l.host.addClass(l.toTP("jqx-grid"));l.host.addClass(l.toTP("jqx-reset"));l.host.addClass(l.toTP("jqx-rc-all"));l.host.addClass(l.toTP("jqx-widget"));l.host.addClass(l.toTP("jqx-widget-content"));if(l._testmodules()){return}l.render(true);b.jqx.utilities.resize(l.host,function(){var A=b(window).width();var i=b(window).height();var j=l.host.width();var B=l.host.height();if(l._lastHostWidth!=j||l._lastHostHeight!=B){l._updatesize(l._lastHostWidth!=j,l._lastHostHeight!=B)}l._lastWidth=A;l._lastHeight=i;l._lastHostWidth=j;l._lastHostHeight=B})},getvaluebytype:function(h,d){var f=h;if(h==null){return h}if(this.gridlocalization.decimalseparator==","){if(h.indexOf(this.gridlocalization.decimalseparator)>=0){h=h.replace(this.gridlocalization.decimalseparator,".")}}if(h.indexOf(this.gridlocalization.currencysymbol)>=0){h=h.replace(this.gridlocalization.currencysymbol,"")}if(h.indexOf(this.gridlocalization.percentagesymbol)>=0){h=h.replace(this.gridlocalization.percentagesymbol,"")}if(b.isArray(h)&&d.type!="array"){for(var e=0;e<h.length;e++){h[e]=this.getvaluebytype(h[e],d)}return h}if(d.type=="date"){if(h=="NaN"){h=""}else{var g=new Date(h);if(typeof h=="string"){if(d.format){var c=b.jqx.dataFormat.parsedate(h,d.format);if(c!=null){g=c}}}if(g.toString()=="NaN"||g.toString()=="Invalid Date"){if(b.jqx.dataFormat){h=b.jqx.dataFormat.tryparsedate(h)}else{h=g}}else{h=g}if(h==null){h=f}}}else{if(d.type=="float"||d.type=="number"||d.type=="decimal"){if(h=="NaN"){h=""}else{var h=parseFloat(h);if(isNaN(h)){h=f}}}else{if(d.type=="int"||d.type=="integer"){var h=parseInt(h);if(isNaN(h)){h=f}}else{if(d.type=="bool"||d.type=="boolean"){if(h!=null){if(h.toLowerCase!=undefined){if(h.toLowerCase()=="false"){h=false}else{if(h.toLowerCase()=="true"){h=true}}}}if(h==1){h=true}else{if(h==0&&h!==""){h=false}else{h=""}}}}}}return h},_builddataloadelement:function(){if(this.dataloadelement){this.dataloadelement.remove()}this.dataloadelement=b('<div class="jqx-datatable-load" style="z-index: 99998; background-color:rgba(50,50,50,0.1); overflow: hidden; position: absolute;"></div>');var d=b('<div style="z-index: 99999; margin-left: -66px; left: 50%; top: 50%; margin-top: -24px; position: relative; width: 100px; height: 33px; padding: 5px; font-family: verdana; font-size: 12px; color: #767676; border-color: #898989; border-width: 1px; border-style: solid; background: #f6f6f6; border-collapse: collapse;"><div style="float: left;"><div style="float: left; overflow: hidden; width: 32px; height: 32px;" class="jqx-grid-load"/><span style="margin-top: 10px; float: left; display: block; margin-left: 5px;" >'+this.gridlocalization.loadtext+"</span></div></div>");d.addClass(this.toTP("jqx-rc-all"));this.dataloadelement.addClass(this.toTP("jqx-rc-all"));d.addClass(this.toTP("jqx-fill-state-normal"));this.dataloadelement.append(d);this.dataloadelement.width(this.width);this.dataloadelement.height(this.height);this.host.prepend(this.dataloadelement);if(this.source._source.url!=""){var c=false;if(this.height==="auto"||this.height===null||this.autoheight){if(this.maxHeight==999999){c=true}}if(c){this.host.height(100);this.dataloadelement.height(100)}else{this.host.height(this.height);this.dataloadelement.height(this.height)}var e=false;if(this.width==="auto"||this.width===null||this.autoWidth){e=true}if(e){this.host.width(300);this.dataloadelement.width(300)}else{this.host.width(this.width);this.dataloadelement.width(this.width)}}},_measureElement:function(d){var c=b("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");c.addClass(this.toTP("jqx-widget"));b(document.body).append(c);if(d=="cell"){this._cellheight=c.height()}else{this._columnheight=c.height()}c.remove()},_testmodules:function(){var g="";var e=this;var c=function(){if(g.length!=""){g+=","}};if(!this.host.jqxScrollBar){c();g+=" jqxscrollbar.js"}if(!this.host.jqxButton){c();g+=" jqxbuttons.js"}if(!b.jqx.dataAdapter){c();g+=" jqxdata.js"}if(g!=""||this.editable||this.filterable||this.pageable){var d=[];var f=function(h){switch(h){case"checkbox":if(!e.host.jqxCheckBox&&!d.checkbox){d.checkbox=true;c();g+=" jqxcheckbox.js"}break;case"dropdownlist":if(!e.host.jqxDropDownList&&!d.dropdownlist){c();d.dropdownlist=true;g+=" jqxdropdownlist.js(requires: jqxlistbox.js)"}else{if(!e.host.jqxListBox&&!d.listbox){c();d.listbox=true;g+=" jqxlistbox.js"}}break}};if((this.filterable&&this.filterMode!="simple")||(this.pagerMode=="advanced"&&this.pageable)){f("dropdownlist")}if(g!=""){throw new Error("jqxDataTable: Missing references to the following module(s): "+g);this.host.remove();return true}}return false},focus:function(){try{this.wrapper.focus();this.host.focus();var d=this;setTimeout(function(){d.wrapper.focus();d.host.focus()},25);this.focused=true}catch(c){}},hiddenParent:function(){return b.jqx.isHidden(this.host)},isBindingCompleted:function(){return !this._loading},_updatesize:function(i,h){if(this._loading){return}var f=this;var g=f.host.width();var e=f.host.height();if(!f._oldWidth){f._oldWidth=g}if(!f._oldHeight){f._oldHeight=e}if(f._resizeTimer!=undefined){clearTimeout(f._resizeTimer);f._resizeTimer=null}var d=300;var c=function(){if(f._resizeTimer){clearTimeout(f._resizeTimer)}f.resizingGrid=true;if(b.jqx.isHidden(f.host)){return}f._updatecolumnwidths();f.refresh();f._oldWidth=g;f._oldHeight=e;f.resizingGrid=false};c();f._resizeTimer=setTimeout(function(){var k=f.host.width();var j=f.host.height();if(f._oldWidth!=k||f._oldHeight!=j){c()}},d)},resize:function(d,c){if(d!=undefined){this.width=d}if(c!=undefined){this.height=c}this._updatecolumnwidths();this.refresh()},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var c=b.jqx.mobile.isTouchDevice();this.touchDevice=c;if(this.touchmode==true){c=true;b.jqx.mobile.setMobileSimulator(this.element);this.touchDevice=c}else{if(this.touchmode==false){c=false}}if(c){this.touchDevice=true;this.host.addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-content").addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-header").addClass(this.toThemeProperty("jqx-touch"));this.scrollBarSize=this.touchScrollBarSize}return c},toTP:function(c){return this.toThemeProperty(c)},localizestrings:function(c,f){this._cellscache=new Array();if(b.jqx.dataFormat){b.jqx.dataFormat.cleardatescache()}if(this._loading){throw new Error("jqxDataTable: "+this.loadingErrorMessage);return false}if(c!=null){for(var h in c){if(h.toLowerCase()!==h){c[h.toLowerCase()]=c[h]}}var j=["pagergotopagestring","pagershowrowsstring","pagerrangestring","pagernextbuttonstring","pagerpreviousbuttonstring","pagerfirstbuttonstring","pagerlastbuttonstring","toppagerstring","firstDay","days","months","AM","PM","patterns","percentsymbol","currencysymbol","currencysymbolposition","decimalseparator","thousandsseparator","filterapplystring","filteraddnew","filtercancelstring","filterclearstring","filterstring","filterstringcomparisonoperators","filternumericcomparisonoperators","filterdatecomparisonoperators","filterbooleancomparisonoperators","emptydatastring","filterselectstring","todaystring","clearstring","validationstring","loadtext","filtersearchstring","loadingErrorMessage"];var g=this;for(var e=0;e<j.length;e++){var d=j[e];if(c[d]!==undefined){g.gridlocalization[d]=c[d]}}if(c.loadingErrorMessage){this.loadingErrorMessage=c.loadingErrorMessage}if(f!==false){this._builddataloadelement();b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")}}else{this.gridlocalization={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"dd-MMMM-yyyy",d4:"dd-MM-yy",d5:"H:mm",d6:"HH:mm",d7:"HH:mm tt",d8:"dd/MMMM/yyyy",d9:"MMMM-dd",d10:"MM-dd",d11:"MM-dd-yyyy"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:",",pagergotopagestring:"Go to page:",pagershowrowsstring:"Show rows:",pagerrangestring:" of ",pagerpreviousbuttonstring:"previous",pagernextbuttonstring:"next",pagerfirstbuttonstring:"first",pagerlastbuttonstring:"last",filterapplystring:"Apply",filtercancelstring:"Cancel",filterclearstring:"Clear Filter",filterstring:"advanced",filtersearchstring:"Search:",filterstringcomparisonoperators:["empty","not empty","contains","contains(match case)","does not contain","does not contain(match case)","starts with","starts with(match case)","ends with","ends with(match case)","equal","equal(match case)","null","not null"],filternumericcomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterdatecomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterbooleancomparisonoperators:["equal","not equal"],validationstring:"Entered value is not valid",emptydatastring:"No data to display",filterselectstring:"Select Filter",loadtext:"Loading...",clearstring:"Clear",todaystring:"Today",loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxDataTable raises the 'bindingComplete' event when the binding is completed."}}},_updateScrollbars:function(m){var p=false;if(this.width==="auto"||this.width===null||this.autowidth){if(this.maxWidth==999999){p=true}}var d=parseInt(this.scrollBarSize);var j=this.table?this.table.height():0;var n=0;var e="inherit";var h=this.vScrollBar[0].style.visibility;var l=this.hScrollBar[0].style.visibility;if(!m){var g=this.host.height()}else{var g=m}if(!this.columnGroups){g-=this.showHeader?this.columnsHeight:0}else{g-=this.showHeader?this.columnsheader.height():0}if(this.filterable){g-=this.filter.height()}if(this.pageable){g-=this.pagerHeight;if(this.pagerPosition==="both"){g-=this.pagerHeight}}if(this.showtoolbar){g-=this.toolbarHeight}if(this.showstatusbar){g-=this.statusBarHeight}if(this.showAggregates){g-=this.aggregatesHeight}var q=false;if(this.height==="auto"||this.height===null||this.autoheight){if(this.maxHeight==999999){q=true}}if(!q&&j>g&&(this.source.records.length>0||this.source.hierarchy.length>0)){this.vScrollBar[0].style.visibility=e;n=4+parseInt(d);this.vScrollBar.jqxScrollBar({max:j-g})}else{this.vScrollBar[0].style.visibility="hidden"}if((h!=this.vScrollBar[0].style.visibility)){this._updatecolumnwidths();var i=this.table.height();if(j!=i){j=i;if(!q&&j>g&&(this.source.records.length>0||this.source.hierarchy.length>0)){this.vScrollBar[0].style.visibility=e;n=4+parseInt(d);this.vScrollBar.jqxScrollBar({max:j-g})}}}var o=this.table?this.table.width():0;if(o>3){o-=3}var c=parseInt(this.host.css("border-left-width"))+parseInt(this.host.css("border-right-width"));var r=c+this.host.width()-n;if(o>r&&!p){this.hScrollBar[0].style.visibility=e;this.hScrollBar.jqxScrollBar({max:o-r});n=4+parseInt(d);if(!q){if(j>g-n+4&&(this.source.records.length>0||this.source.hierarchy.length>0)){this.hScrollBar.jqxScrollBar({max:c+o-r});var f=this.vScrollBar[0].style.visibility==="hidden";this.vScrollBar[0].style.visibility=e;this._updatecolumnwidths();if(f){this.hScrollBar.jqxScrollBar({max:o-r+n+c})}var k=this.table?this.table.width():0;if(k>3){k-=3}if(k!=o){if(k<r){this.hScrollBar.jqxScrollBar({max:c+k-r});this.hScrollBar[0].style.visibility="hidden";n=0}}}this.vScrollBar.jqxScrollBar({max:j-g+n})}}else{this.hScrollBar[0].style.visibility="hidden"}if(this.source.records.length===0&&(this.source.hierarchy&&this.source.hierarchy.length===0)){this.vScrollBar[0].style.visibility="hidden";this.bottomRight[0].style.visibility="hidden"}if(this.vScrollBar[0].style.visibility=="hidden"){if(this.vScrollInstance.value!=0){this.vScrollInstance.setPosition(0)}}},_measureElementWidth:function(e){var d=b("<span style='visibility: hidden; white-space: nowrap;'>"+e+"</span>");d.addClass(this.toTP("jqx-widget"));d.addClass(this.toTP("jqx-grid"));d.addClass(this.toTP("jqx-grid-column-header"));d.addClass(this.toTP("jqx-widget-header"));b(document.body).append(d);var c=d.outerWidth()+20;d.remove();return c},_arrangeAutoHeight:function(e){if(!e){e=0}if(this.height==="auto"||this.height===null||this.autoheight){var h=this.table.height();var g=0;if(!this.columnGroups){g+=this.showHeader?this.columnsHeight:-1}else{g+=this.showHeader?this.columnsheader.height():-1}g+=this.showstatusbar?this.statusBarHeight:0;g+=this.showAggregates?this.aggregatesHeight:0;g+=this.showtoolbar?this.toolbarHeight:0;g+=this.pageable?this.pagerHeight:0;if(this.pagerPosition==="both"){g+=this.pageable?this.pagerHeight:0}g+=h;if(this.filterable){var f=this.filter.find(".filterrow");var c=this.filter.find(".filterrow-hidden");var d=1;if(c.length>0){d=0}g+=this.filterHeight-1+this.filterHeight*f.length*d}if(g+e>this.maxHeight){this.host.height(this.maxHeight)}else{this.host.height(g+e)}return true}return false},_arrangeAutoWidth:function(e){if(!e){e=0}if(this.width==="auto"||this.width===null||this.autowidth){var d=0;for(var f=0;f<this.columns.records.length;f++){var c=this.columns.records[f].width;if(this.columns.records[f].hidden){continue}if(c=="auto"){c=this._measureElementWidth(this.columns.records[f].text);d+=c}else{d+=c}}width=d;if(width+e>this.maxWidth){this.host.width(this.maxWidth)}else{this.host.width(width+e)}return true}return false},_measureTopAndHeight:function(){var d=this.host.height();var h=0;if(this.showtoolbar){h+=this.toolbarHeight;d-=parseInt(this.toolbarHeight)}if(this.filterable){var g=this.filter.find(".filterrow");var e=this.filter.find(".filterrow-hidden");var f=1;if(e.length>0){f=0}h+=this.filterHeight;d-=parseInt(this.filterHeight);var c=f==1?g.length:0;h+=this.filterHeight*c;d-=this.filterHeight*c}if(this.pageable&&this.pagerPosition!="bottom"){h+=parseInt(this.pagerHeight)+1;if(d>this.pagerHeight&&this.pagerPosition==="both"){d-=parseInt(this.pagerHeight)}}return{top:h,height:d}},_arrange:function(){if(!this.table){return}this._arrangeAutoHeight();this._arrangeAutoWidth();var v=this.host.width();var r=this.host.height();var j=r;var i=this;if(this.pageable){if(this.pagerPosition==="bottom"){this.toppager[0].style.visibility="hidden";this.pager[0].style.visibility="inherit"}else{if(this.pagerPosition==="both"){this.toppager[0].style.visibility="inherit";this.pager[0].style.visibility="inherit"}else{if(this.pagerPosition==="top"){this.toppager[0].style.visibility="inherit";this.pager[0].style.visibility="hidden"}}}}else{this.toppager[0].style.visibility="hidden";this.pager[0].style.visibility="hidden"}var q=0;if(this.showtoolbar){this.toolbar.width(v);this.toolbar.height(this.toolbarHeight-1);this.toolbar.css("top",0);q+=this.toolbarHeight;r-=parseInt(this.toolbarHeight)}else{this.toolbar[0].style.height="0px"}if(this.filterable){this.filter.width(v);this.filter.css("top",q);var t=this.filter.find(".filterrow");var h=this.filter.find(".filterrow-hidden");var A=1;if(h.length>0){A=0}this.filter.height(this.filterHeight-1+this.filterHeight*t.length*A);q+=this.filterHeight;r-=parseInt(this.filterHeight);var x=A==1?t.length:0;q+=this.filterHeight*x;r-=this.filterHeight*x}if(this.showstatusbar){this.statusbar.width(!this.table?v:Math.max(v,this.table.width()));this.statusbar.height(this.statusBarHeight-1)}else{this.statusbar[0].style.height="0px"}if(this.showAggregates){this.aggregates.height(this.aggregatesHeight-1)}else{this.aggregates[0].style.height="0px"}if(this.pageable&&this.pagerPosition!="bottom"){this.toppager[0].style.width=v+"px";this.toppager[0].style.height=parseInt(this.pagerHeight)+"px";this.toppager[0].style.top=parseInt(q)+"px";q+=parseInt(this.pagerHeight)+1;if(r>this.pagerHeight){r-=parseInt(this.pagerHeight)}}else{if(this.toppager[0].style.width!=v+"px"){this.toppager[0].style.width=parseInt(v)+"px"}if(this.toppager[0].style.height!=this.pagerHeight+"px"){this.toppager[0].style.height=parseInt(this.pagerHeight)+"px"}if(this.toppager[0].style.top!=q+"px"){this.toppager[0].style.top=q+"px"}var y=this.pagerPosition!="bottom"?this.pagerHeight:0;var d=q+y+"px";if(this.content[0].style.top!=d){this.content[0].style.top=q+this.pagerHeight+"px"}}this._updateScrollbars(j);var c=parseInt(this.scrollBarSize);var n=4;var e=2;var f=0;if(this.vScrollBar[0].style.visibility!="hidden"){f=c+n}if(this.hScrollBar[0].style.visibility!="hidden"){e=c+n+2}if(this.showAggregates){if(this.hScrollBar[0].style.visibility==="hidden"){this.aggregates.width(!this.table?v:Math.max(v,this.table.width())+4)}else{this.aggregates.width("auto")}}if("hidden"!=this.vScrollBar[0].style.visibility||"hidden"!=this.hScrollBar[0].style.visibility){var w=this._arrangeAutoHeight(e-2);var s=this._arrangeAutoWidth(f+1);if(w||s){var v=this.host.width();this.toppager[0].style.width=parseInt(v)+"px";this.toolbar[0].style.width=parseInt(v)+"px";this.statusbar[0].style.width=parseInt(v)+"px";this.filter[0].style.width=parseInt(v)+"px"}if(w){var B=this._measureTopAndHeight();q=B.top;r=B.height}}var m=0;if(this.pageable){m=this.pagerHeight;if(this.pagerPosition!="top"){e+=this.pagerHeight}}if(this.showAggregates){e+=this.aggregatesHeight;m+=this.aggregatesHeight}if(this.showstatusbar){e+=this.statusBarHeight;m+=this.statusBarHeight}if(this.hScrollBar[0].style.height!=c+"px"){this.hScrollBar[0].style.height=parseInt(c)+"px"}if(this.hScrollBar[0].style.top!=q+r-n-c-m+"px"||this.hScrollBar[0].style.left!="0px"){this.hScrollBar[0].style.top=q+r-n-c-m-1+"px";this.hScrollBar[0].style.left="0px"}var l=this.hScrollBar[0].style.width;var g=false;var z=false;if(f==0){if(l!=(v-2)+"px"){this.hScrollBar[0].style.width=(v-2)+"px";g=true}}else{if(l!=(v-c-n)+"px"){this.hScrollBar[0].style.width=(v-c-n+"px");g=true}}if(this.vScrollBar[0].style.width!=c+"px"){this.vScrollBar[0].style.width=c+"px";z=true}if(this.vScrollBar[0].style.height!=parseInt(r)-e+"px"){this.vScrollBar[0].style.height=(parseInt(r)-e+"px");z=true}if(this.vScrollBar[0].style.left!=parseInt(v)-parseInt(c)-n+"px"||this.vScrollBar[0].style.top!=q+"px"){this.vScrollBar[0].style.top=q+"px";this.vScrollBar[0].style.left=parseInt(v)-parseInt(c)-n+"px"}if(this.rtl){this.vScrollBar.css({left:"0px",top:q});if(this.vScrollBar.css("visibility")!="hidden"){this.hScrollBar.css({left:c+2})}}var k=this.vScrollInstance;k.disabled=this.disabled;var u=this.hScrollInstance;u.disabled=this.disabled;if(g){u.refresh()}if(z){k.refresh()}var o=function(C){if((C.vScrollBar[0].style.visibility!="hidden")&&(C.hScrollBar[0].style.visibility!="hidden")){C.bottomRight[0].style.visibility="inherit";C.bottomRight[0].style.left=1+parseInt(C.vScrollBar.css("left"))+"px";C.bottomRight[0].style.top=parseInt(C.hScrollBar.css("top"))+"px";if(C.rtl){C.bottomRight.css("left","0px")}C.bottomRight[0].style.width=parseInt(c)+3+"px";C.bottomRight[0].style.height=parseInt(c)+4+"px";if(C.showAggregates){C.bottomRight.css("z-index",99);C.bottomRight.height(parseInt(c)+4+C.aggregatesHeight);C.bottomRight.css({top:parseInt(C.hScrollBar.css("top"))-C.aggregatesHeight})}}else{C.bottomRight[0].style.visibility="hidden"}};o(this);if(this.content[0].style.width!=v-f+"px"){this.content[0].style.width=v-f+"px"}if(this.content[0].style.height!=r-e+3+"px"){this.content[0].style.height=r-e+3+"px"}if(this.content[0].style.top!=q+"px"){this.content[0].style.top=parseInt(q)+"px"}if(this.rtl){this.content.css("left",f);if(this.filter&&(this.filter.children().length>0)){b(this.filter.children()).css("left",f)}if(this.table){var p=this.table.width();if(p<v-f){this.content.css("left",v-p+2);if(this.filter&&(this.filter.children().length>0)){b(this.filter.children()).css("left",v-p+2)}}}}if(this.showAggregates){this.aggregates.css("top",q+r-this.aggregatesHeight-(this.pageable?this.pagerHeight:0)-(this.showstatusbar?(this.statusBarHeight+1):0));if(this.rtl){this.aggregates.css("left","0px")}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.css({top:q+r-n-c-m+this.aggregatesHeight+"px"});this.aggregates.css("top",1+q+r-c-5-this.aggregatesHeight-(this.pageable?this.pagerHeight:0)-(this.showstatusbar?(this.statusBarHeight+1):0))}o(this)}if(this.showstatusbar){this.statusbar.css("top",q+r-this.statusBarHeight-(this.pageable?this.pagerHeight:0));if(this.rtl){if(this.hScrollBar.css("visibility")=="hidden"){this.statusbar.css("left",this.content.css("left"))}else{this.statusbar.css("left","0px")}}}if(this.pageable){this.pager[0].style.width=v+"px";this.pager[0].style.height=this.pagerHeight+"px";this.pager[0].style.top=parseInt(q)+parseInt(r)-parseInt(this.pagerHeight)-1+"px"}else{this.pager[0].style.height="0px"}this.vScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;this.hScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;if(v!=parseInt(this.dataloadelement[0].style.width)){this.dataloadelement[0].style.width=this.element.style.width}if(r!=parseInt(this.dataloadelement[0].style.height)){this.dataloadelement[0].style.height=this.element.style.height}this._hostwidth=v},scrollOffset:function(e,d){if(arguments.length==0||(e!=null&&typeof(e)=="object"&&!e.top)){return{left:this.hScrollBar.jqxScrollBar("value"),top:this.vScrollBar.jqxScrollBar("value")}}if(e!=null&&typeof(e)=="object"){var d=e.left;var c=e.top;var e=c}if(e==null||d==null||e==undefined||d==undefined){return}this.vScrollBar.jqxScrollBar("setPosition",e);this.hScrollBar.jqxScrollBar("setPosition",d)},scrollleft:function(c){if(c==null||c==undefined){return}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.jqxScrollBar("setPosition",c)}},scrolltop:function(c){if(c==null||c==undefined){return}if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar("setPosition",c)}},beginUpdate:function(){this._updating=true;this._datachanged=false},endUpdate:function(c){this._updating=false;if(c===false){return}this._rendercolumnheaders();this.refresh()},updating:function(){return this._updating},databind:function(g,i,c){if(this.loadingstate===true){return}if(this.host.css("display")=="block"){if(this.autoShowLoadElement){b(this.dataloadelement).css("visibility","visible");b(this.dataloadelement).css("display","block");this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height())}else{b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")}}var f=this;if(g==null){g={}}if(g.sortcomparer==undefined||g.sortcomparer==null){g.sortcomparer=null}if(g.filter==undefined||g.filter==null){g.filter=null}if(g.sort==undefined||g.sort==null){g.sort=null}if(g.data==undefined||g.data==null){g.data=null}var d=null;if(g!=null){d=g._source!=undefined?g._source.url:g.url}this.dataview=this.dataview||new b.jqx.dataView();this.dataview.pageable=this.pageable;this.dataview.grid=this;if(!f.initializedcall){if(g._source){if(this.sortable){if(g._source.sortcolumn!=undefined){this.sortcolumn=g._source.sortcolumn;this.source.sortcolumn=this.sortcolumn;this.dataview.sortfield=g._source.sortcolumn;g._source.sortcolumn=null}if(g._source.sortdirection!=undefined){this.dataview.sortfielddirection=g._source.sortdirection;var h=g._source.sortdirection;if(h=="a"||h=="asc"||h=="ascending"||h==true){var e=true}else{var e=false}if(h!=null){this.sortdirection={ascending:e,descending:!e}}else{this.sortdirection={ascending:false,descending:false}}}}}if(this.pageable){if(g._source){if(g._source.pagenum!=undefined){this.dataview.pagenum=g._source.pagenum}if(g._source.pagesize!=undefined){this.pageSize=g._source.pagesize;this.dataview.pagesize=g._source.pagesize}else{this.dataview.pagesize=g._source.pagesize;if(this.dataview.pagesize==undefined){this.dataview.pagesize=this.pageSize}}}}if(this.sortable){if(g.sortcolumn){this.dataview.sortfield=g.sortcolumn}if(g.sortdirection){this.dataview.sortfielddirection=g.sortdirection}}}this._loading=true;this.dataview.update=function(z){f._loading=false;f.rowsByKey=new Array();var m=f.source._source.datafields;if(f.groups&&f.groups.length>0){var u=Object.prototype.toString;var w=f.groups[0];Object.prototype.toString=(typeof w=="function")?w:function(){return this[w]};if(!f.source.records.sort){var v=new Array();var t=0;b.each(data,function(){v[startindex+t++]=this});data=v}f.source.records.sort(function(B,j){if(B===undefined){B=null}if(j===undefined){j=null}if(B===null&&j===null){return 0}if(B===null&&j!==null){return -1}if(B!==null&&j===null){return 1}var E=0;var D=0;if(B&&B.uid){E=B.uid}if(j&&j.uid){D=j.uid}B=B.toString();j=j.toString();if(b.jqx.dataFormat.isNumber(B)&&b.jqx.dataFormat.isNumber(j)){if(B<j){return -1}if(B>j){return 1}return 0}else{if(b.jqx.dataFormat.isDate(B)&&b.jqx.dataFormat.isDate(j)){if(B<j){return -1}if(B>j){return 1}return 0}else{if(!b.jqx.dataFormat.isNumber(B)&&!b.jqx.dataFormat.isNumber(j)){B=String(B).toLowerCase();j=String(j).toLowerCase()}}}try{if(B<j){return -1}if(B>j){return 1}}catch(C){var F=C}if(typeof(E)=="number"){if(E<D){return -1}if(E>D){return 1}}return 0});Object.prototype.toString=u}for(var q=0;q<f.source.records.length;q++){var A=f.source.records[q];f.rowsByKey[A.uid]=A;if(A.records&&A.records.length>0){var l=function(B){for(var C=0;C<B.length;C++){if(!B[C]){continue}f.rowsByKey[B[C].uid]=B[C];if(B[C].records&&B[C].records.length>0){l(B[C].records)}}};l(A.records)}if(q===0){var k=false;if(m){for(var o=0;o<m.length;o++){if(!m[o]){continue}if(!m[o].type){k=true;m[o].type="string";var y=A[m[o].name];if(y==undefined){continue}if(y===true||y===false){m[o].type="boolean"}if(y!=null&&y.toString().indexOf(f.gridlocalization.currencysymbol)>-1||y.toString().indexOf(f.gridlocalization.percentsymbol)>-1){var r=y.toString().split(" ").length;var s=new Number(f._toNumber(y.toString()));if(!isNaN(s)&&r==1){m[o].type="number"}}if(b.jqx.dataFormat.isNumber(y)||(!isNaN(parseFloat(y))&&isFinite(y))){m[o].type="number"}if(b.jqx.dataFormat.isDate(y)){m[o].type="date"}}}}if(k){for(var o=0;o<m.length;o++){var x=f.source.getvaluebytype(A[m[o].name],m[o]);if(x!=null&&m[o].type=="number"){var p=x;p=new Number(f._toNumber(p.toString()));if(!isNaN(p)){x=p}}A[m[o].name]=x}}}}if(i==="pager"||i==="filter"||i==="sort"){f.refresh()}else{f._render()}if(f.autoShowLoadElement&&!f._loading){b(f.dataloadelement).css("visibility","hidden");b(f.dataloadelement).css("display","none")}if(f.pageable){if(!f.disabled){if(f.pagernexttop){f.pagerfirsttop.jqxButton({disabled:false});f.pagerfirstbottom.jqxButton({disabled:false});f.pagerlasttop.jqxButton({disabled:false});f.pagerlastbottom.jqxButton({disabled:false});f.pagernexttop.jqxButton({disabled:false});f.pagerprevioustop.jqxButton({disabled:false});if(f.pagershowrowscombotop.jqxDropDownList){if(f.pagerMode=="advanced"){f.pagershowrowscombotop.jqxDropDownList({disabled:false});f.pagershowrowscombobottom.jqxDropDownList({disabled:false})}}f.pagernextbottom.jqxButton({disabled:false});f.pagerpreviousbottom.jqxButton({disabled:false})}}}f._updateTouchScrolling();f._raiseEvent("bindingComplete");if(c){c()}if(!f.initializedcall){f.initializedcall=true;f.isInitialized=true;if(f.ready){f.ready()}if((f.width!=null&&f.width.toString().indexOf("%")!=-1)||(f.height!=null&&f.height.toString().indexOf("%")!=-1)){f._updatesize(true)}if(f.host.css("visibility")=="hidden"){var n=b.jqx.browser.msie&&b.jqx.browser.version<8;if(f.vScrollBar.css("visibility")=="visible"){f.vScrollBar.css("visibility","inherit")}if(f.hScrollBar.css("visibility")=="visible"){f.hScrollBar.css("visibility","inherit")}f._intervalTimer=setInterval(function(){if(f.host.css("visibility")=="visible"){f._updatesize(true);clearInterval(f._intervalTimer)}},100)}}};this.dataview.databind(g)},_raiseEvent:function(g,d){if(d==undefined){d={owner:null}}var e=g;args=d;args.owner=this;var f=new b.Event(e);f.owner=this;f.args=args;var c=this.host.trigger(f);d=f.args;return c},ensureColumnVisible:function(d){var g=0;var c=0;for(var f=0;f<this.columns.records.length;f++){if(this.columns.records[f].datafield!=d){g+=this.columns.records[f].width}else{g+=this.columns.records[f].width;c=this.columns.records[f].width;break}}if(this.hScrollBar.css("visibility")!="hidden"){var h=this.hScrollBar.jqxScrollBar("value");var e=h+this.host.width();if(h>g-c){this.hScrollBar.jqxScrollBar("setPosition",g-c)}else{if(g>e){this.hScrollBar.jqxScrollBar("setPosition",h+g-e)}}}},ensurerowvisiblebykey:function(o){if(this.vScrollBar[0].style.visibility==="hidden"){return false}var p=this._getuirow(o);if(!p){return}var m=this.vScrollBar.jqxScrollBar("value");var e=this.host.height();var g=0;if(!this.columnGroups){g+=this.showHeader?this.columnsHeight:0}else{g+=this.showHeader?this.columnsheader.height():0}if(this.filterable){g+=this.filter.height()}if(this.pageable){if(this.pagerPosition==="top"){g+=this.pagerHeight}}if(this.showtoolbar){g+=this.toolbarHeight}e-=g;if(this.pageable&&this.pagerPosition!=="top"){e-=this.pagerHeight}if(this.showstatusbar){e-=this.statusBarHeightt}if(this.showAggregates){e-=this.aggregatesHeight}if(this.hScrollBar.css("visibility")!="hidden"){e-=20}var n=this.host.coord().top+g;var f=m;var c=e+f;var i=p.coord().top+m-n;i=Math.round(i);var l=i+p.outerHeight();l=Math.round(l);if(Math.round(p.position().top)===0){return this.vScrollBar.jqxScrollBar("setPosition",0)}else{var j=b(this._table.children()[1]).children().length-1;var d=this._getuikey(j);var k=this._getuirow(d);if(k){if(k[0]===p[0]){return this.vScrollBar.jqxScrollBar("setPosition",this.vScrollBar.jqxScrollBar("max"))}}}if(i<f){var h=i-p.height();if(h<0){h=0}return this.vScrollBar.jqxScrollBar("setPosition",h)}if(l>c){return this.vScrollBar.jqxScrollBar("setPosition",4+l-e-m)}},ensureRowVisible:function(c){var d=this._getkey(c);this.ensurerowvisiblebykey(d)},getColumn:function(c){var d=null;if(this.columns.records){b.each(this.columns.records,function(){if(this.datafield==c||this.displayfield==c){d=this;return false}})}return d},_setcolumnproperty:function(e,g,h){if(e==null||g==null||h==null){return null}var d=g;g=g.toLowerCase();var f=this.getColumn(e);if(f==null){return}var i=f[g];f[g]=h;f[d]=h;var c=this.getColumn(e);if(c!=null){c[g]=h}switch(g){case"filteritems":case"text":case"editable":case"resizable":case"draggable":case"hidden":case"hideable":case"renderer":case"cellsrenderer":case"align":case"aggregates":case"cellsalign":case"cellsformat":case"pinned":case"contenttype":case"filterable":case"groupable":case"cellclass":case"cellclassname":case"class":case"width":case"minwidth":case"maxwidth":if(g=="align"){this._rendercolumnheaders();this.refresh()}else{if(g=="text"||g=="class"||g=="hidden"||g=="pinned"||g=="resizable"||g=="renderer"){this._rendercolumnheaders();this.refresh()}else{if(g=="width"||g=="maxwidth"||g=="minwidth"){f._width=null;f._percentagewidth=null;this._updatecolumnwidths();this.refresh()}else{this.refresh()}}}break}},getColumnProperty:function(c,e){if(c==null||e==null){return null}e=e.toLowerCase();var d=this.getColumn(c);return d[e]},setColumnProperty:function(c,d,e){this._setcolumnproperty(c,d,e)},hideColumn:function(c){this._setcolumnproperty(c,"hidden",true)},showColumn:function(c){this._setcolumnproperty(c,"hidden",false)},updateBoundData:function(d,c){this.databind(this.source,d,c)},refresh:function(c){if(c!=true){if(b.jqx.isHidden(this.host)){return}this.vScrollInstance.setPosition(0);this._renderrows();this.updatepagerdetails();this._arrange();if(this._arrangeFilterRow){this._arrangeFilterRow()}this._renderhorizontalscroll();this._showicons();if(this.showAggregates){this._updateaggregates()}this._updateTouchScrolling()}},_updateTouchScrolling:function(){var d=this.that;if(d.isTouchDevice()){var f=b.jqx.mobile.getTouchEventName("touchstart");var e=b.jqx.mobile.getTouchEventName("touchend");var c=b.jqx.mobile.getTouchEventName("touchmove");if(d.gridcontent){d.removeHandler(d.gridcontent,f+".touchScroll");d.removeHandler(d.gridcontent,c+".touchScroll");d.removeHandler(d.gridcontent,e+".touchScroll");d.removeHandler(d.gridcontent,"touchcancel.touchScroll");b.jqx.mobile.touchScroll(d.gridcontent[0],Math.max(d.vScrollInstance.max,d.hScrollInstance.max),function(i,h){if(d.vScrollBar.css("visibility")!="hidden"){var g=d.vScrollInstance.value;d.vScrollInstance.setPosition(g+h)}if(d.hScrollBar.css("visibility")!="hidden"){var g=d.hScrollInstance.value;d.hScrollInstance.setPosition(g+i)}d.scrolled=new Date();d.vScrollInstance.thumbCapture=true},this.element.id,this.hScrollBar,this.vScrollBar)}}},_showicons:function(){if(!this.table){return}for(var e=0;e<this.columns.records.length;e++){var g=this.columns.records[e];b(g.filtericon).hide();b(g.sortasc).hide();b(g.sortdesc).hide();if(this.filterMode!=="simple"){for(var d=0;d<this.dataview.filters.length;d++){var f=this.dataview.filters[d];if(f.datafield===g.displayfield){b(g.filtericon).show();break}}}if(this.sortcolumn!==null){if(this.sortcolumn===g.displayfield){if(this.sortdirection!=null){if(this.sortdirection.ascending){b(g.sortasc).show()}else{b(g.sortdesc).show()}}}}if((g.align!="left"&&g.align!="center"&&!this.rtl)||(this.rtl&&g.align!="right"&&g.align!="center")){var h=b.jqx.isHidden(b(g.filtericon))?0:16;h+=b.jqx.isHidden(b(g.sortasc))?0:16;h+=b.jqx.isHidden(b(g.sortdesc))?0:16;var c=b(b(b(g.element).children()[0]).children()[0]);if(!this.rtl){if(h>0){c.css("margin-right",4+h+"px")}else{c.css("margin-right","4px")}}else{if(h>0){c.css("margin-left",4+h+"px")}else{c.css("margin-left","4px")}}}}},render:function(j){var f="<div style='overflow: hidden; -webkit-appearance: none; outline: none; width:100%; height: 100%; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div id='wrapper"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; align:left; left: 0px; top: 0px; valign:top; position: relative;'><div id='toolbar' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='toppager' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='filter' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='content"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; border: none; padding: 0px; margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='verticalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='horizontalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; border: none; position: absolute;'></div><div id='aggregates' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='statusbar' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='pager' style='z-index: 20; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div></div></div>";this.element.innerText="";this.element.innerHTML=f;this.wrapper=this.host.find("#wrapper"+this.element.id);this.content=this.host.find("#content"+this.element.id);this.content.addClass(this.toTP("jqx-reset"));var h=this.host.find("#verticalScrollBar"+this.element.id);var l=this.host.find("#horizontalScrollBar"+this.element.id);this.bottomRight=this.host.find("#bottomRight").addClass(this.toTP("jqx-grid-bottomright")).addClass(this.toTP("jqx-scrollbar-state-normal"));if(this.vScrollBar){this.vScrollBar.jqxScrollBar("destroy")}if(this.hScrollBar){this.hScrollBar.jqxScrollBar("destroy")}this.vScrollBar=h.jqxScrollBar({vertical:true,rtl:this.rtl,touchMode:this.touchmode,theme:this.theme,_triggervaluechanged:false});this.hScrollBar=l.jqxScrollBar({vertical:false,rtl:this.rtl,touchMode:this.touchmode,theme:this.theme,_triggervaluechanged:false});this.vScrollBar.css("visibility","hidden");this.hScrollBar.css("visibility","hidden");this.vScrollInstance=b.data(this.vScrollBar[0],"jqxScrollBar").instance;this.hScrollInstance=b.data(this.hScrollBar[0],"jqxScrollBar").instance;this.filter=this.host.find("#filter");this.filter[0].id="filter"+this.element.id;this.filter.addClass(this.toTP("jqx-widget-header"));this.filter.addClass(this.toTP("jqx-grid-toolbar"));this.pager=this.host.find("#pager");this.pager[0].id="pager"+this.element.id;this.toolbar=this.host.find("#toolbar");this.toolbar[0].id="toolbar"+this.element.id;this.toolbar.addClass(this.toTP("jqx-grid-toolbar"));this.toolbar.addClass(this.toTP("jqx-widget-header"));this.aggregates=this.host.find("#aggregates");this.aggregates[0].id="aggregates"+this.element.id;this.aggregates.addClass(this.toTP("jqx-grid-statusbar"));this.aggregates.addClass(this.toTP("jqx-widget-header"));this.statusbar=this.host.find("#statusbar");this.statusbar[0].id="statusbar"+this.element.id;this.statusbar.addClass(this.toTP("jqx-grid-statusbar"));this.statusbar.addClass(this.toTP("jqx-widget-header"));this.pager.addClass(this.toTP("jqx-grid-pager"));this.pager.addClass(this.toTP("jqx-widget-header"));this.toppager=this.host.find("#toppager");this.toppager.addClass(this.toTP("jqx-grid-pager-top"));this.toppager.addClass(this.toTP("jqx-widget-header"));this.gridtable=null;if(this.localizestrings){this.localizestrings();if(this.localization!=null){this.localizestrings(this.localization,false)}}this._builddataloadelement();this._cachedcolumns=this.columns;var c=this.source.datafields;if(c==null&&this.source._source){c=this.source._source.datafields}if(c){for(var d=0;d<this.columns.length;d++){var e=this.columns[d];if(e&&e.cellsFormat&&e.cellsFormat.length>2){for(var k=0;k<c.length;k++){if(c[k].name==e.datafield&&!c[k].format){c[k].format=e.cellsFormat;break}}}}}this.databind(this.source);if(this.showtoolbar){this.toolbar.css("visibility","inherit")}if(this.showstatusbar){this.statusbar.css("visibility","inherit")}if(this.showAggregates){this.aggregates.css("visibility","inherit")}this.tableheight=null;var g=this;var i=function(){if(g.content){g.content[0].scrollTop=0;g.content[0].scrollLeft=0}if(g.gridcontent){g.gridcontent[0].scrollLeft=0;g.gridcontent[0].scrollTop=0}};this.removeHandler(this.content,"scroll");this.removeHandler(this.content,"mousedown");this.addHandler(this.content,"scroll",function(m){i();return false});if(j!==true){this._render()}},_render:function(){if(this.dataview==null){return}if(this._loading){return}if(this.columnsHeight!=25||this.columnGroups){this._measureElement("column")}if(this.filterable){this.filter[0].style.visibility="inherit"}else{this.filter[0].style.visibility="hidden"}this.rowinfo=new Array();this._removeHandlers();if(this.columns==null){this.columns=new b.jqx.dataCollection(this.element)}else{this._initializeColumns()}this.host.height(this.height);this.host.width(this.width);b.jqx.utilities.html(this.content,"");this.columnsheader=this.columnsheader||b('<div style="overflow: hidden;"></div>');this.columnsheader.remove();this.columnsheader.addClass(this.toTP("jqx-widget-header"));this.columnsheader.addClass(this.toTP("jqx-grid-header"));if(!this.showHeader){this.columnsheader.css("display","none")}else{if(this.columnsheader){this.columnsheader.css("display","block")}}this.gridcontent=this.gridcontent||b('<div style="width: 100%; overflow: hidden; position: absolute;"></div>');this.gridcontent.remove();var c=this.columnsHeight;c=this._preparecolumnGroups();this.columnsheader.height(c);this.content.append(this.columnsheader);this.content.append(this.gridcontent);this._rendercolumnheaders();this.tableheight=null;this.gridcontent.find("#contenttable"+this.element.id).remove();if(this.table!=null){this.table.remove();this.table=null}this.table=b('<div id="contenttable'+this.element.id+'" style="overflow: hidden; position: relative;"></div>');this.gridcontent.addClass(this.toTP("jqx-grid-content"));this.gridcontent.addClass(this.toTP("jqx-widget-content"));this.gridcontent.append(this.table);this._renderrows();if(this.filterable){this._renderfilter()}if(this.pageable){this._initpager()}this._arrange();if(this.renderStatusBar){this.renderStatusBar(this.statusbar)}if(this.rendertoolbar){this.rendertoolbar(this.toolbar)}if(this.showAggregates){this._updateaggregates()}if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._renderhorizontalscroll();this._showicons();this._addHandlers()},clear:function(){if(this.source){this.source.records=new Array();this.source.hierarchy=new Array()}this.dataview._filteredData=new Array();this.databind(null);this._render()},_initpager:function(){var g=this;var c=this.gridlocalization.pagergotopagestring;var i=this.gridlocalization.pagerrangestring;var d=this.gridlocalization.pagershowrowsstring;var h=(this.pagerHeight-17)/2;this.pagerdiv=this.pagerdiv||b('<div style="width: 100%; height: 100%; position: relative;"></div>');this.toppagerdiv=this.toppagerdiv||b('<div style="width: 100%; height: 100%; position: relative;"></div>');if(!this.pageable){this.pagerdiv.remove();this.toppagerdiv.remove();return}if(!this.pagerRenderer){this.pagerdiv.css("top",h);this.toppagerdiv.css("top",h);var f=function(s,E){var n=this;var r=b('<div style="margin-right: 7px; width: 27px; height: 17px; float: right;"><input style="margin-top: 0px; text-align: right; width: 27px;" type="text"/></div>');var D=b('<div style="float: right; margin-right: 7px;"></div>');var t=b('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var j=b('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var m=b('<div type="button" style="margin-left: 3px; padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var q=b('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');var z=b('<div style="margin-right: 7px; float: right;"></div>');var x=b('<div style="margin-right: 7px; float: right;"></div>');var p=b('<div style="padding-bottom: 3px; margin-right: 3px; float: right;"></div>');r.attr("disabled",n.disabled);var A=b('<div id="gridpagerlist" style="margin-top: 0px; margin-right: 7px; float: right;"></div>');A[0].id="gridpagerlist"+E+n.element.id;n.removeHandler(t,"mousedown");n.removeHandler(t,"mouseup");n.removeHandler(t,"click");n.removeHandler(j,"mousedown");n.removeHandler(j,"mouseup");n.removeHandler(j,"click");n.removeHandler(m,"mousedown");n.removeHandler(m,"mouseup");n.removeHandler(m,"click");n.removeHandler(q,"mousedown");n.removeHandler(q,"mouseup");n.removeHandler(q,"click");if(!n.rtl){j.attr("title",n.gridlocalization.pagerpreviousbuttonstring);t.attr("title",n.gridlocalization.pagernextbuttonstring)}else{t.attr("title",n.gridlocalization.pagerpreviousbuttonstring);j.attr("title",n.gridlocalization.pagernextbuttonstring)}if(b.jqx.browser.msie&&b.jqx.browser.version<8){p.css("padding-top","3px")}this["pagerfirst"+E]=m;this["pagerlast"+E]=q;this["pagernext"+E]=t;this["pagerprevious"+E]=j;this["pagergotoinput"+E]=r;this["pagerdetails"+E]=z;this["pagershowrows"+E]=x;this["pagergotolabel"+E]=D;this["pagershowrowscombo"+E]=A;this["pagerbuttons"+E]=p;if(n.pagerMode=="default"){if(!n.rtl){m.attr("title",n.gridlocalization.pagerfirstbuttonstring);q.attr("title",n.gridlocalization.pagerlastbuttonstring)}else{q.attr("title",n.gridlocalization.pagerfirstbuttonstring);m.attr("title",n.gridlocalization.pagerlastbuttonstring)}var v=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");v.addClass(n.toThemeProperty("jqx-icon-arrow-first"));m.wrapInner(v);var o=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");o.addClass(n.toThemeProperty("jqx-icon-arrow-last"));q.wrapInner(o);if(!n.rtl){s.append(m);s.append(j);s.append(p);s.append(t);s.append(q)}else{s.append(q);s.append(t);s.append(p);s.append(j);s.append(m)}q.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});m.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});var C=!n.rtl?"left":"right";p.css("float",C);q.css("float",C);m.css("float",C);t.css("float",C);j.css("float",C);z.css("float",n.rtl?"left":"right");if(n.rtl){z.css("margin-left","7px");z.css("margin-right","0px")}else{z.css("margin-left","0px");z.css("margin-right","7px")}}else{if(!n.rtl){s.append(t);s.append(j)}}t.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});j.jqxButton({cursor:"pointer",disabled:n.disabled,theme:n.theme});var k=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");k.addClass(n.toThemeProperty("jqx-icon-arrow-left"));j.wrapInner(k);var l=b("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");l.addClass(n.toThemeProperty("jqx-icon-arrow-right"));t.wrapInner(l);if(!n.rtl){s.append(z)}if(n.pagerMode!="default"){if(!n.rtl){s.append(A);s.append(x);s.append(r);s.append(D)}else{s.append(D);s.append(r);s.append(x);s.append(A);s.append(z);s.append(t);s.append(j)}var u=n.pageSizeOptions;A.jqxDropDownList({_checkForHiddenParent:false,rtl:n.rtl,disabled:n.disabled,source:u,enableBrowserBoundsDetection:true,keyboardSelection:false,autoDropDownHeight:true,width:44,height:16,theme:n.theme});var B=0;for(var y=0;y<u.length;y++){if(this.pageSize>=u[y]){B=y}}D[0].innerHTML=c;A.jqxDropDownList({selectedIndex:B});var w=r.find("input");w.addClass(n.toThemeProperty("jqx-input"));w.addClass(n.toThemeProperty("jqx-widget-content"));if(this.rtl){w.css("direction","rtl")}var n=this;this.removeHandler(A,"select");this.addHandler(A,"select",function(K){if(K.args){if(n.vScrollInstance){n.vScrollInstance.setPosition(0)}var I=K.args.index;n.pagershowrowscombotop.data().jqxDropDownList.instance.selectIndex(I);n.pagershowrowscombobottom.data().jqxDropDownList.instance.selectIndex(I);n.pagershowrowscombobottom.data().jqxDropDownList.instance.renderSelection("mouse");n.pagershowrowscombotop.data().jqxDropDownList.instance.renderSelection("mouse");var L=n.dataview.pagenum*n.dataview.pagesize;var H=u[I];var J=n.pageSize;n.pageSize=parseInt(H);if(isNaN(n.pageSize)){n.pageSize=10}if(H>=100){n.pagershowrowscombotop.jqxDropDownList({width:55});n.pagershowrowscombobottom.jqxDropDownList({width:55})}else{n.pagershowrowscombotop.jqxDropDownList({width:44});n.pagershowrowscombobottom.jqxDropDownList({width:44})}n.dataview.pagesize=n.pageSize;var G=Math.floor(L/n.dataview.pagesize);if(G!==n.dataview.pagenum||parseInt(H)!==parseInt(J)){n._raiseEvent("pageSizeChanged",{pagenum:G,oldpageSize:J,pageSize:n.dataview.pagesize});var F=n.goToPage(G);if(!F){if(!n.serverProcessing){n.refresh()}else{n.updateBoundData("pager")}}}}});var r=r.find("input");r.addClass(n.toThemeProperty("jqx-grid-pager-input"));r.addClass(n.toThemeProperty("jqx-rc-all"));this.removeHandler(r,"keydown");this.removeHandler(r,"change");n.addHandler(r,"keydown",function(F){if(F.keyCode>=65&&F.keyCode<=90){return false}if(F.keyCode=="13"){var G=r.val();G=parseInt(G);if(!isNaN(G)){n.goToPage(G-1)}return false}});n.addHandler(r,"change",function(){var F=r.val();F=parseInt(F);if(!isNaN(F)){n.goToPage(F-1)}})}x[0].innerHTML=d;n.addHandler(t,"mouseenter",function(){l.addClass(n.toThemeProperty("jqx-icon-arrow-right-hover"))});n.addHandler(j,"mouseenter",function(){k.addClass(n.toThemeProperty("jqx-icon-arrow-left-hover"))});n.addHandler(t,"mouseleave",function(){l.removeClass(n.toThemeProperty("jqx-icon-arrow-right-hover"))});n.addHandler(j,"mouseleave",function(){k.removeClass(n.toThemeProperty("jqx-icon-arrow-left-hover"))});n.addHandler(t,"mousedown",function(){l.addClass(n.toThemeProperty("jqx-icon-arrow-right-selected"))});n.addHandler(t,"mouseup",function(){l.removeClass(n.toThemeProperty("jqx-icon-arrow-right-selected"))});n.addHandler(j,"mousedown",function(){k.addClass(n.toThemeProperty("jqx-icon-arrow-left-selected"))});n.addHandler(j,"mouseup",function(){k.removeClass(n.toThemeProperty("jqx-icon-arrow-left-selected"))});if(n.pagerMode==="default"){n.addHandler(q,"mouseenter",function(){o.addClass(n.toThemeProperty("jqx-icon-arrow-last-hover"))});n.addHandler(m,"mouseenter",function(){v.addClass(n.toThemeProperty("jqx-icon-arrow-first-hover"))});n.addHandler(q,"mouseleave",function(){o.removeClass(n.toThemeProperty("jqx-icon-arrow-last-hover"))});n.addHandler(m,"mouseleave",function(){v.removeClass(n.toThemeProperty("jqx-icon-arrow-first-hover"))});n.addHandler(q,"mousedown",function(){o.addClass(n.toThemeProperty("jqx-icon-arrow-last-selected"))});n.addHandler(m,"mousedown",function(){v.addClass(n.toThemeProperty("jqx-icon-arrow-first-selected"))});n.addHandler(q,"mouseup",function(){o.removeClass(n.toThemeProperty("jqx-icon-arrow-last-selected"))});n.addHandler(m,"mouseup",function(){v.removeClass(n.toThemeProperty("jqx-icon-arrow-first-selected"))})}n.addHandler(b(document),"mouseup.pagerbuttons"+E+this.element.id,function(){l.removeClass(n.toThemeProperty("jqx-icon-arrow-right-selected"));k.removeClass(n.toThemeProperty("jqx-icon-arrow-left-selected"));if(o){o.removeClass(n.toThemeProperty("jqx-icon-arrow-last-selected"));v.removeClass(n.toThemeProperty("jqx-icon-arrow-first-selected"))}});n.addHandler(t,"click",function(){if(!t.jqxButton("disabled")){if(!n.rtl){n.goToNextPage()}else{n.goToPrevPage()}}});n.addHandler(j,"click",function(){if(!j.jqxButton("disabled")){if(!n.rtl){n.goToPrevPage()}else{n.goToNextPage()}}});if(this.pagerMode==="default"){n.addHandler(m,"click",function(){if(!m.jqxButton("disabled")){if(!n.rtl){n.goToPage(0)}else{var G=n.dataview.totalrecords;var F=Math.ceil(G/n.pageSize);n.goToPage(F-1)}}});n.addHandler(q,"click",function(){if(!q.jqxButton("disabled")){if(!n.rtl){var G=n.dataview.totalrecords;var F=Math.ceil(G/n.pageSize);n.goToPage(F-1)}else{n.goToPage(0)}}})}};this.pagerdiv.children().remove();this.toppagerdiv.children().remove();f.call(this,this.pagerdiv,"bottom");f.call(this,this.toppagerdiv,"top");this.pager.append(this.pagerdiv);this.toppager.append(this.toppagerdiv);this.updatepagerdetails()}else{this.pagerdiv.children().remove();this.toppager.children().remove();var e=this.pagerRenderer();if(e!=null){this.pagerdiv.append(b(e))}this.pager.append(this.pagerdiv);var e=this.pagerRenderer();if(e!=null){this.toppagerdiv.append(b(e))}this.toppager.append(this.toppagerdiv)}},_updatepagertheme:function(){},goToPage:function(f,h){if(this._loading){return false}if(this.editKey!=undefined){if(this.editSettings.saveOnPageChange){var e=this.endroweditbykey(this.editKey);if(!e){return false}}else{return false}}if(f==null||f==undefined){f=0}if(f==-1){f=0}if(f<0){return false}var d=this.dataview.totalrecords;var g=this.dataview.pagenum;var c=Math.ceil(d/this.pageSize);if(f>=c){if(this.dataview.totalrecords==0){this.dataview.pagenum=0;this.updatepagerdetails()}if(f>0){f=c-1}}if(this.dataview.pagenum!=f){if(this.pageable){this.dataview.pagenum=f;this._raiseEvent("pageChanged",{pagenum:f,oldpagenum:g,pageSize:this.dataview.pagesize})}if(!this.serverProcessing){this.refresh();if(h){if(b.isFunction(h)){h()}}}else{this.updateBoundData("pager",h)}return true}return false},goToPrevPage:function(e){if(this.dataview.pagenum>0){return this.goToPage(this.dataview.pagenum-1,e)}else{if(this.pagerMode!="default"&&this.pagerMode!="advanced"){var d=this.dataview.totalrecords;var c=Math.ceil(d/this.pageSize);return this.goToPage(c-1,e)}}return false},goToNextPage:function(e){var d=this.dataview.totalrecords;if(this.summaryrows){d+=this.summaryrows.length}var c=Math.ceil(d/this.pageSize);if(this.dataview.pagenum<c-1){return this.goToPage(this.dataview.pagenum+1,e)}else{if(this.pagerMode!="default"&&this.pagerMode!="advanced"){return this.goToPage(0,e)}}return false},updatepagerdetails:function(){if(!this.pageable){return}var j=this;if(!this.serverProcessing){if(this.source.hierarchy){var m=j._names();var g=0;var r=function(y,w){for(var x=0;x<w.length;x++){if(j.dataview.filters.length==0){w[x]._visible=true}if(w[x]._visible!==false){g++}if(j.treeGrid&&j.treeGrid.pageSizeMode=="root"){continue}if(w[x].records&&(w[x][m.expanded]||w[x][m.leaf])){if(w[x]._visible!==false){r(y+1,w[x].records);if(this.treeGrid&&b(this.treeGrid).jqxTreeGrid("showSubAggregates")){if(y!=0){g--}}}}}};r(0,this.dataview.rows);this.dataview.totalrecords=g}else{this.dataview.totalrecords=this.dataview.rows.length}}var d=this.dataview.pagenum*this.pageSize;var u=(this.dataview.pagenum+1)*this.pageSize;if(u>=this.dataview.totalrecords){u=this.dataview.totalrecords}var v=this.dataview.totalrecords;d++;var t=Math.ceil(v/this.dataview.pagesize);if(t>=1){t--}t++;if(this.pageSizeMode=="root"){t=Math.ceil(this.rootRecordsLength/this.dataview.pagesize);if(t>=1){t--}t++;v=this.rootRecordsLength;this.dataview.totalrecords=this.rootRecordsLength}if(this.pagerMode!="default"){if(this["pagergotoinputbottom"]){var k=this["pagergotoinputbottom"].find("input");k.val(this.dataview.pagenum+1);k.attr("title","1 - "+t);k=this["pagergotoinputtop"].find("input");k.val(this.dataview.pagenum+1);k.attr("title","1 - "+t)}}else{var o="";var n=this.pagerButtonsCount;if(n==0||!n){n=5}var s=0;if(this.rtl){s=n-1}while((this.rtl&&s>=0)||(!this.rtl&&s<n)){var e=1+s;var p=this.dataview.pagenum/n;var f=Math.floor(p);e+=f*n;var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(e>t&&!this.rtl){break}else{if(this.rtl&&e>t){s--;continue}}if(!this.rtl){if(s==0&&e>n){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(-1+e)+"'>...</a>"}}if(this.dataview.pagenum===e-1){c+=" "+this.toTP("jqx-fill-state-pressed")}if(!this.rtl){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+e+"'>"+e+"</a>";if(s===n-1){var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(t>=1+e){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(1+e)+"'>...</a>"}}}else{if(s===n-1){var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(t>=1+e){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(1+e)+"'>...</a>"}}if(this.dataview.pagenum===e-1){c+=" "+this.toTP("jqx-fill-state-pressed")}o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+e+"'>"+e+"</a>"}if(this.rtl){var c=this.toTP("jqx-grid-pager-number");c+=" "+this.toTP("jqx-rc-all");if(s==0&&e>n){o+="<a class='"+c+"' tabindex=-1 href='javascript:;' data-page='"+(-1+e)+"'>...</a>"}}if(!this.rtl){s++}else{s--}}if(!this["pagerbuttonsbottom"]){return}var h=this["pagerbuttonsbottom"].find("a");this.removeHandler(h,"click");this.removeHandler(h,"mouseenter");this.removeHandler(h,"mouseleave");var h=this["pagerbuttonstop"].find("a");this.removeHandler(h,"click");this.removeHandler(h,"mouseenter");this.removeHandler(h,"mouseleave");this["pagerbuttonsbottom"][0].innerHTML=o;this["pagerbuttonstop"][0].innerHTML=o;if(this.disabled){this.host.find(".jqx-grid-pager-number").css("cursor","default")}var q=function(){h.click(function(i){if(j.disabled){return}var w=b(i.target).attr("data-page");j.goToPage(parseInt(w)-1)});h.mouseenter(function(i){if(j.disabled){return}b(i.target).addClass(j.toTP("jqx-fill-state-hover"))});h.mouseleave(function(i){if(j.disabled){return}b(i.target).removeClass(j.toTP("jqx-fill-state-hover"))})};if(this.pagerPosition==="both"||this.pagerPosition==="bottom"){var h=this["pagerbuttonsbottom"].find("a");q(h)}if(this.pagerPosition==="both"||this.pagerPosition==="top"){var h=this["pagerbuttonstop"].find("a");q(h)}}if(u==0&&u<d){d=0}if(this["pagerdetailsbottom"]){if(!this.rtl){this["pagerdetailsbottom"][0].innerHTML=d+"-"+u+this.gridlocalization.pagerrangestring+v;this["pagerdetailstop"][0].innerHTML=d+"-"+u+this.gridlocalization.pagerrangestring+v}else{this["pagerdetailsbottom"][0].innerHTML=v+this.gridlocalization.pagerrangestring+u+"-"+d;this["pagerdetailstop"][0].innerHTML=v+this.gridlocalization.pagerrangestring+u+"-"+d}}if(this.pagerMode=="default"){var l=this["pagerbuttonsbottom"].width()+b(this["pagerdetailsbottom"]).width()+160;this.pagerdiv.css("min-width",l);this.toppagerdiv.css("min-width",l)}if(d>u){this.goToPrevPage()}},_preparecolumnGroups:function(){var o=this.columnsHeight;if(this.columnGroups){this.columnshierarchy=new Array();if(this.columnGroups.length){var m=this;for(var g=0;g<this.columnGroups.length;g++){this.columnGroups[g].parent=null;this.columnGroups[g].groups=null}for(var g=0;g<this.columns.records.length;g++){this.columns.records[g].parent=null;this.columns.records[g].groups=null}var n=function(j){for(var t=0;t<m.columnGroups.length;t++){var u=m.columnGroups[t];if(u.name===j){return u}}return null};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];if(!p.groups){p.groups=null}if(p.parentGroup){p.parentgroup=p.parentGroup}if(p.parentgroup){var r=n(p.parentgroup);if(r){p.parent=r;if(!r.groups){r.groups=new Array()}if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];if(p.columngroup){var r=n(p.columngroup);if(r){if(!r.groups){r.groups=new Array()}p.parent=r;if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}var q=0;for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];var d=p;p.level=0;while(d.parent){d=d.parent;p.level++}var d=p;var c=p.level;q=Math.max(q,p.level);while(d.parent){d=d.parent;if(d){d.level=--c}}}var l=function(x){var w=new Array();if(x.columngroup){w.push(x)}if(!x.groups){return new Array()}for(var v=0;v<x.groups.length;v++){if(x.groups[v].columngroup){w.push(x.groups[v])}else{if(x.groups[v].groups){var u=l(x.groups[v]);for(var t=0;t<u.length;t++){w.push(u[t])}}}}return w};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];var e=l(p);p.columns=e;var h=new Array();var s=0;for(var f=0;f<e.length;f++){h.push(this.columns.records.indexOf(e[f]));if(e[f].pinned){s++}}if(s!=0){throw new Error("jqxDataTable: Column Groups initialization Error. Please, check the initialization of the jqxDataTable's columns array. The columns in a column group cannot be pinned.")}h.sort(function(j,i){j=parseInt(j);i=parseInt(i);if(j<i){return -1}if(j>i){return 1}return 0});for(var k=1;k<h.length;k++){if(h[k]!=h[k-1]+1){throw new Error("jqxDataTable: Column Groups initialization Error. Please, check the initialization of the jqxDataTable's columns array. The columns in a column group are expected to be siblings in the columns array.");this.host.remove()}}}}this.columnGroupslevel=1+q;o=this.columnGroupslevel*this.columnsHeight}return o},wheel:function(e,d){if(d.autoheight&&d.hScrollBar.css("visibility")=="hidden"){e.returnValue=true;return true}var f=0;if(!e){e=window.event}if(e.originalEvent&&e.originalEvent.wheelDelta){e.wheelDelta=e.originalEvent.wheelDelta}if(e.wheelDelta){f=e.wheelDelta/120}else{if(e.detail){f=-e.detail/3}}if(f){var c=d._handleDelta(f);if(c){if(e.preventDefault){e.preventDefault()}if(e.originalEvent!=null){e.originalEvent.mouseHandled=true}if(e.stopPropagation!=undefined){e.stopPropagation()}}if(c){c=false;e.returnValue=c;return c}else{return false}}if(e.preventDefault){e.preventDefault()}e.returnValue=false},_handleDelta:function(e){if(this.vScrollBar.css("visibility")!="hidden"){var d=this.vScrollInstance.value;if(e<0){this.vScrollInstance.setPosition(this.vScrollInstance.value+2*10)}else{this.vScrollInstance.setPosition(this.vScrollInstance.value-2*10)}var c=this.vScrollInstance.value;if(d!=c){return true}}else{if(this.hScrollBar.css("visibility")!="hidden"){var d=this.hScrollInstance.value;if(e>0){if(this.hScrollInstance.value>2*10){this.hScrollInstance.setPosition(this.hScrollInstance.value-2*10)}else{this.hScrollInstance.setPosition(0)}}else{if(this.hScrollInstance.value<this.hScrollInstance.max){this.hScrollInstance.setPosition(this.hScrollInstance.value+2*10)}else{this.hScrollInstance.setPosition(this.hScrollInstance.max)}}var c=this.hScrollInstance.value;if(d!=c){return true}}}return false},_removeHandlers:function(){this.removeHandler(this.host,"focus");this.removeHandler(b(window),"jqxReady."+this.element.id);if(this._mousewheelfunc){this.removeHandler(this.host,"mousewheel",this._mousewheelfunc)}var c="mousedown";if(this.isTouchDevice()){c=b.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(this.host,"dragstart."+this.element.id);this.removeHandler(this.host,"keydown");if(this.table){this.removeHandler(this.table,"mouseleave");this.removeHandler(this.table,"mousemove");this.removeHandler(this.table,c);this.removeHandler(this.table,"selectstart."+this.element.id);if(b.jqx.browser.msie&&b.jqx.browser.version<9){this.removeHandler(this.table,"dblclick")}}},_addHandlers:function(){var e=this;this._mousewheelfunc=this._mousewheelfunc||function(h){e.wheel(h,e);return false};this.addHandler(this.host,"dragstart."+this.element.id,function(h){return false});this.addHandler(this.table,"selectstart."+this.element.id,function(h){if(e.enableBrowserSelection){return true}if(e.filterable){if(b(h.target).ischildof(e.filterrow)){return true}}if(e.rowDetails){if(b(h.target).parents("[data-role=details]").length>0){return true}}if(undefined==e.editKey){return false}});this.addHandler(b(window),"jqxReady."+this.element.id,function(){e._updatecolumnwidths();e.refresh()});if(this.editable){this.addHandler(b(document),"mousedown.gridedit"+this.element.id,function(j){if(e.editable&&e.editSettings.saveOnBlur){if(e.editKey!=null){if(!e.vScrollInstance.isScrolling()&&!e.vScrollInstance.isScrolling()){var r=e.host.coord();var o=e.host.width();var k=e.host.height();var t=false;var h=false;var s=false;if(j.pageY<r.top||j.pageY>r.top+k){t=true;h=true}if(j.pageX<r.left||j.pageX>r.left+o){t=true;s=true}if(t){var l=function(x){var w=b(x.children()[0]).data();if(w&&!w.jqxWidget){w=x.data()}if(!w){w=x.data()}if(w.jqxWidget&&w.jqxWidget.container&&w.jqxWidget.container[0].style.display=="block"){var i=w.jqxWidget;var y=i.container.coord().top;var v=i.container.coord().top+i.container.height();if(h&&(j.pageY<y||j.pageY>v)){t=true;i.close();return true}else{return false}}};var q=e._editors;if(q){for(var m=0;m<q.length;m++){var n=q[m].editor;var u=l(n);var p=n.attr("aria-owns");if(p){if(p==document.activeElement.id){return true}if(b(document.activeElement).ischildof(b("#"+p))){return true}}else{p=n.children().attr("aria-owns");if(p){if(p==document.activeElement.id){return true}if(b(document.activeElement).ischildof(b("#"+p))){return true}}}if(u===false){return}}}}if(t){e.endroweditbykey(e.editKey)}}}}})}this.removeHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"focus",function(h){if(h.preventDefault){}});this.vScrollInstance.valueChanged=function(h){if(e._timer){clearTimeout(e._timer)}e._timer=setTimeout(function(){if(e.table){e.table[0].style.top=0-e.vScrollInstance.value+"px"}},5)};this.hScrollInstance.valueChanged=function(h){if(e._timer){clearTimeout(e._timer)}e._timer=setTimeout(function(){if(e.table){e._renderhorizontalscroll()}},5)};var d="mousedown";if(this.isTouchDevice()){d=b.jqx.mobile.getTouchEventName("touchend");if(b.jqx.browser.msie&&b.jqx.browser.version<10){d="mousedown"}}var g=function(r,q){var l=null;var m=e._table.coord();var t=m.top;var z=m.left;var A=e._table[0].rows;for(var n=0;n<A.length;n++){var w=A[n];var v=w.cells;for(var o=0;o<v.length;o++){var s=v[o];var k=s.offsetLeft+z;var p=s.offsetTop+t;var h=s.offsetWidth;var u=s.offsetHeight;if(h===0||u===0){continue}if(p<=q&&q<p+u){if(k<=r&&r<k+h){l=s;break}}else{break}}}return l};var c=function(){if(e.hoveredRow){var i=e.hoveredRow[0].cells;var h=function(l){for(var m=0;m<l.length;m++){var k=l[m];var n=k.className;n=n.replace(" "+e.toTP("jqx-fill-state-hover"),"");n=n.replace(" "+e.toTP("jqx-grid-cell-hover"),"");k.className=n}};h(i);if(e._pinnedTable&&i.length>0){var j=e._pinnedTable[0].rows[e.hoveredRow[0].rowIndex].cells;h(j)}}e.hoveredRow=null};this.addHandler(this.table,"mouseleave",function(h){c();if(e.wrapper){e.wrapper.parent().removeAttr("tabindex",0);e.wrapper.removeAttr("tabindex",1);e.content.removeAttr("tabindex",2)}});var f=function(n){if(!e.enableHover){return true}e.hoveredRow=n;if(!n){return true}var k=n[0].cells;var m=e.rowDetails&&!e.treeGrid;var p=m&&!e.treeGrid?1:0;var j=0;if(p>0&&e.rtl){p=0;j=1}for(var l=p;l<k.length-j;l++){var h=k[l];h.className+=" "+e.toTP("jqx-fill-state-hover")+" "+e.toTP("jqx-grid-cell-hover")}if(e._pinnedTable){if(e._pinnedTable[0].rows.length){var o=e._pinnedTable[0].rows[e.hoveredRow[0].rowIndex].cells;for(var l=p;l<o.length-j;l++){var h=o[l];h.className+=" "+e.toTP("jqx-fill-state-hover")+" "+e.toTP("jqx-grid-cell-hover")}}}};if(e.isTouchDevice()){e.enableHover=false}this.addHandler(this.table,"mousemove",function(i){var h=i.pageX;var l=i.pageY;if(e.disabled){return true}if(!e.enableHover){return true}if(e.hScrollInstance.isScrolling()||e.vScrollInstance.isScrolling()){return true}var k=g(h,l);if(!k){return true}var j=b(k).parent();c();if(e.rowDetails&&e.treeGrid){if(j.attr("data-role")=="row-details"){return true}}if(e.renderedRecords&&e.renderedRecords.length===0){return true}if(e.editKey!=null){if(e.editKey===j.attr("data-key")){return true}}f(j);return true});this.addHandler(this.host,"keydown",function(h){return e._handleKey(h)});if(b.jqx.browser.msie&&b.jqx.browser.version<9){this.addHandler(this.table,"dblclick",function(h){e.table.trigger("mousedown",h)})}this.addHandler(this.table,d,function(A){var C=A.target;var p=null;if(e.disabled){return true}var h=e.table.coord();var r=A.pageX;var q=A.pageY;if(b.jqx.browser.msie&&b.jqx.browser.version<9){if(arguments&&arguments.length==2){r=arguments[1].pageX;q=arguments[1].pageY}}if(e.isTouchDevice()){var D=b.jqx.position(A);r=D.left;q=D.top;if(isNaN(r)||isNaN(q)){var D=b.jqx.position(A.originalEvent);r=D.left;q=D.top}}p=g(r,q);var o=b(p).parent();var E=o.attr("data-key");if(e.rowDetails&&e.treeGrid){if(o.attr("data-role")=="row-details"){return true}}var u=function(){if(!e.enableBrowserSelection){if(A.preventDefault){A.preventDefault()}A.stopPropagation()}e.host.focus()};if(E!==undefined){var l=b(p).index();var j=e.columns.records[l];if(E==e.editKey){if(e.editSettings.editSingleCell){if(e.clickedTD==p){return true}else{if(e.editKey!=null&&e.editSettings.saveOnSelectionChange){var t=e.endroweditbykey(e.editKey);if(!t){return true}}}}else{return true}}else{if(e.editKey!=null&&e.editSettings.saveOnSelectionChange){var t=e.endroweditbykey(e.editKey);if(!t){return true}}}e.clickedTD=p;var k=e.rowinfo[E];if(k&&k.group){return true}var z=false;if(k){var B=e.getrowdisplayindex(k.row);var s=e.getrowindex(k.row);e._raiseEvent("rowClick",{index:B,boundIndex:s,key:E,row:k.row,originalEvent:A,dataField:j.datafield});var n=new Date().getTime();var v=300;if(!e.clickTime){e.clickTime=new Date()}if(e._lastSelectedKey==E&&(n-e.clickTime.getTime()<v)){e._raiseEvent("rowDoubleClick",{index:B,boundIndex:s,key:E,row:k.row,originalEvent:A,dataField:j.datafield});z=true;if(A.preventDefault){A.preventDefault()}}}e.clickTime=new Date();if(p.className.indexOf("jqx-grid-group")>=0){if(!k.expanded){e.showdetailsbykey(E)}else{e.hidedetailsbykey(E)}}else{if(A.target&&A.target.className.indexOf&&A.target.className.indexOf("jqx-grid-group")>=0&&e.treeGrid){if(!k.expanded){e.treeGrid.expandRow(E)}else{e.treeGrid.collapseRow(E)}f(e._getuirow(E));if(A.stopPropagation){A.stopPropagation()}if(A.preventDefault){A.preventDefault()}}else{if(A.target&&A.target.className.indexOf&&A.target.className.indexOf("checkbox")>=0&&e.treeGrid){if(!k.checked){e.treeGrid.checkRow(E)}else{e.treeGrid.uncheckRow(E)}f(e._getuirow(E));if(A.stopPropagation){A.stopPropagation()}}else{var l=b(p).index();var j=e.columns.records[l];if(A.stopPropagation){A.stopPropagation()}if(e.editable&&e.editKey==null){if(e._lastSelectedKey==E&&e.editSettings.editOnDoubleClick&&z){var t=e.beginroweditbykey(E,j);return true}}if(e.isTouchDevice()){if(e.scrolled&&new Date()-e.scrolled<500){if(!e.enableBrowserSelection){if(A.preventDefault){A.preventDefault()}}return false}}if(e.selectionMode==="singlerow"&&e.selectionMode!=="custom"){e.selectrowbykey(E,"mouse",false);e._lastSelectedKey=E;e._updateSelection();if(A.preventDefault){A.preventDefault()}u();return true}else{if(e.selectionMode!=="custom"){if(!A.ctrlKey&&!A.metaKey){e.clearSelection(false)}if(A.shiftKey){if(e._lastSelectedKey){var k=e.rowinfo[e._lastSelectedKey];e._doSelection(e._lastSelectedKey,true,false);var i=b(e._table.children()[1]).children(("[data-key="+e._lastSelectedKey+"]"));var m=i.index();var w=o.index();e._selectRange(w,m);e.selectrowbykey(E,"mouse",false);e._updateSelection();if(A.preventDefault){A.preventDefault()}u();return true}}}e._lastSelectedKey=E;e.clickTime=new Date();if(e.selectionMode!=="custom"){if(k){if(k.selected){e.unselectrowbykey(E,"mouse",false)}else{e.selectrowbykey(E,"mouse",false)}u()}}else{return true}e._updateSelection();if(!e.enableBrowserSelection){if(A.preventDefault){A.preventDefault()}}return true}}}}}})},_updateSelection:function(){var l=this;var r=b(l._table.children()[1]).children();var n=l._pinnedTable?b(l._pinnedTable.children()[1]).children():null;var e=l.rowDetails&&!l.treeGrid;var d=e?1:0;var f=0;if(d>0&&l.rtl){d=0;f=1}for(var h=0;h<r.length;h++){var q=r[h].cells;if(n){var c=n[h].cells}var p=null;if(r[h].getAttribute){p=r[h].getAttribute("data-key")}if(l.rowinfo[p]&&l.selectionMode!=="none"){if(l.rowinfo[p].selected){for(var g=d;g<q.length-f;g++){var o=q[g];b(o).addClass(l.toTP("jqx-grid-cell-selected")+" "+l.toTP("jqx-fill-state-pressed"));if(c){b(c[g]).addClass(l.toTP("jqx-grid-cell-selected")+" "+l.toTP("jqx-fill-state-pressed"))}}}else{for(var g=d;g<q.length-f;g++){var o=q[g];if(c){var k=c[g]}var m=o.className;m=m.replace(" jqx-fill-state-pressed","");m=m.replace(" jqx-fill-state-pressed-"+l.theme,"");m=m.replace(" jqx-grid-cell-selected","");m=m.replace(" jqx-grid-cell-selected-"+l.theme,"");o.className=m;if(k){k.className=m}}}}}},_selectRange:function(f,e){var c=b(b(this._table.children()[1]).children()[e]);var j=this;if(f>e){var h=e;var d=c;while(h<f){var d=d.next();var g=d.attr("data-key");j._doSelection(g,true,false);h++}}else{if(f<e){var h=e;var d=c;while(h>f){var d=d.prev();var g=d.attr("data-key");this._doSelection(g,true,false);h--}}}},_getuikey:function(d,g){var f=null;var e=b(this._table.children()[1]).children();f=b(e[d]).attr("data-key");if(b(e[d]).attr("data-role")){var c=b(e[d]);if(g=="next"){while(c){c=c.next();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}else{if(g=="prev"){while(c){c=c.prev();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}}return null}return f},getRows:function(){return this.source.records},getView:function(){var d=this;var e=this._names();var f=new Array();var c=function(k,h){if(!h){return}for(var j=0;j<h.length;j++){if(!h[j]){continue}if(h[j]._visible!==false){var g=b.extend({},h[j]);k.push(g);if(h[j][e.expanded]){g.records=new Array();c(g.records,h[j].records)}else{if(d.dataview.filters.length>0){g.records=new Array();c(g.records,h[j].records)}}}}};c(f,this.dataViewRecords);return f},getKeys:function(){var d=new Array();var e=this.source.records;for(var c=0;c<e.length;c++){d.push(e[c].uid)}return d},getKey:function(c){var d=this.getRows();if(d){return d[c].uid}else{return -1}},_getkey:function(e){if(this._loading){throw new Error("jqxDataTable: "+this.loadingErrorMessage);return false}var f=null;var d=function(){var l=b(this._table.children()[1]).children();var k=null;var n=0;if(this.pageable){n-=this.dataview.pagenum*this.dataview.pagesize}if(this.groups.length>0){var h=0;for(var j=0;j<l.length;j++){var o=b(l[j]);var m=o.children()[0].getAttribute("colspan");if(m>0){continue}if(h===n+e){k=o.attr("data-key");return k}h++}return k}if(this.rowDetails){var h=0;for(var j=0;j<l.length;j++){if(h===e+n){k=b(l[j]).attr("data-key");return k}if(j%2==1){h++}}}else{k=b(l[n+e]).attr("data-key")}return k};f=d.call(this);if(f==null){if(this.pageable){var c=Math.floor(e/this.dataview.pagesize);if(this.dataview.pagenum!=c){var g=this.getRows()[e];if(g&&g.uid!=null){return g.uid}else{if(isNaN(c)){return null}this.goToPage(c);f=d.call(this)}}}}return f},_getuirow:function(g){try{var c=b(this._table.children()[1]).children(("[data-key="+g+"]"));if(c.length>0){return c}}catch(e){var d=b(this._table.children()[1]).children();for(var f=0;f<d.length;f++){var j=d[f];var h=j.getAttribute("data-key");if(g==h){return b(j)}}return null}return null},_getpinneduirow:function(g){if(!this._pinnedTable){return null}try{var c=b(this._pinnedTable.children()[1]).children(("[data-key="+g+"]"));if(c.length>0){return c}}catch(e){var d=b(this._pinnedTable.children()[1]).children();for(var f=0;f<d.length;f++){var j=d[f];var h=j.getAttribute("data-key");if(g==h){return b(j)}}return null}return null},_names:function(){var d={leaf:"leaf",parent:"parent",expanded:"expanded",checked:"checked",selected:"selected",level:"level",icon:"icon",data:"data"};if(!this.source||(this.source&&!this.source._source.hierarchy)){return d}var c=this.source._source.hierarchy.reservedNames;if(!c){return d}return c},_getMatches:function(f,g){if(f==undefined||f.length==0){return -1}var c=this.renderedRecords;if(g!=undefined){c=c.slice(g)}var e=0;if(this.rowDetails&&!this.treeGrid){e++}if(e<this.columns.records.length){var d=this.columns.records[e].datafield}else{new Array()}var h=new Array();b.each(c,function(k){var l=this[d];if(!l){l=""}var j=b.jqx.string.startsWithIgnoreCase(l.toString(),f);if(j){h.push(this.uid)}});return h},_handleKey:function(X){if(this._loading){return true}if(b(X.target).ischildof(this.filter)){return true}if(b(X.target).ischildof(this.toolbar)){return true}if(b(X.target).ischildof(this.statusbar)){return true}var T=this._names();var I=this;var s=X.charCode?X.charCode:X.keyCode?X.keyCode:0;var n=this._lastSelectedKey;var V=this.rowinfo[n];var v=this._getuirow(n);var x=X.shiftKey&&this.selectionMode!="singlerow";var Q=X.ctrlKey||X.metaKey;if(!v){return}if(this.handleKeyboardNavigation){var u=this.handleKeyboardNavigation(s);if(u){return true}}if(this.editable&&this.editKey==undefined&&s===113&&this.editSettings.editOnF2){this.beginroweditbykey(v.attr("data-key"))}if(this.editKey==undefined){if(!Q&&!x&&this.incrementalSearch&&(!(s>=33&&s<=40))){var z=-1;if(!this._searchString){this._searchString=""}if((s==8||s==46)&&this._searchString.length>=1){this._searchString=this._searchString.substr(0,this._searchString.length-1)}var e=String.fromCharCode(s);var H=(!isNaN(parseInt(e)));var J=false;if((s>=65&&s<=97)||H||s==8||s==32||s==46){if(!X.shiftKey){e=e.toLocaleLowerCase()}if(s!=8&&s!=32&&s!=46){if(!(this._searchString.length>0&&this._searchString.substr(0,1)==e)){this._searchString+=e}}if(s==32){this._searchString+=" "}this._searchTime=new Date();var n=this.getSelection();if(n.length>=1){var t=n[0].uid;var C=-1;for(var S=0;S<this.renderedRecords.length;S++){if(this.renderedRecords[S].uid==t){C=S;break}}var B=this._getMatches(this._searchString,C);if(B.length==0||(B.length>0&&B[0]==t)){var B=this._getMatches(this._searchString)}}else{var B=this._getMatches(this._searchString)}if(B.length>0){var n=this.getSelection();if(n.length>=1){var c=B.indexOf(n[0].uid);if(c==-1){this.clearSelection(false);this.selectrowbykey(B[0])}else{var h=c+1;if(h>=B.length){h=0}this.clearSelection(false);this.selectrowbykey(B[h])}}else{this.clearSelection(false);this.selectrowbykey(B[0])}this._lastSearchString=this._searchString}}if(this._searchTimer!=undefined){clearTimeout(this._searchTimer)}if(s==27||s==13){this._searchString="";this._lastSearchString=""}this._searchTimer=setTimeout(function(){I._searchString="";I._lastSearchString=""},500);if(z>=0){return}if(J){return false}}}if(this.editKey!=undefined){if(s===27&&this.editSettings.cancelOnEsc){this.endroweditbykey(this.editKey,true)}else{if(s===13&&this.editSettings.saveOnEnter){if(X.target&&X.target.nodeName.toLowerCase()!="div"&&X.target.nodeName.toLowerCase()!="input"){return true}this.endroweditbykey(this.editKey,false)}else{if(this.editSettings.editSingleCell){if(this.editColumn){var P=this.columns.records.indexOf(this.editColumn);if(s==9&&P<this.columns.records.length-1&&!X.shiftKey){var M=this.editKey;var y=null;for(var S=P+1;S<this.columns.records.length;S++){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){y=this.columns.records[S];break}}if(y){this.endroweditbykey(this.editKey,false);this.beginroweditbykey(M,y)}}else{if(s==9&&X.shiftKey&&P>0){var M=this.editKey;var E=null;for(var S=P-1;S>=0;S--){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){E=this.columns.records[S];break}}if(E){this.endroweditbykey(this.editKey,false);this.beginroweditbykey(M,E)}}}if(s==9){var o=this.rowinfo[this.editKey];var C=this.getrowindex(o);var v=this._getuirow(this.editKey);if(!X.shiftKey&&!y){var N=null;for(var S=0;S<this.columns.records.length;S++){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){N=this.columns.records[S];break}}if(N){while(v){v=v.next();if(v){var D=v.attr("data-role");if(!D){var F=v.attr("data-key");break}}}if(F){this.clearSelection(false);this._lastSelectedKey=F;var o=this.rowsByKey[F];var C=this.getrowindex(o);var L=this.getrowdisplayindex(o);this._raiseEvent("rowSelect",{key:F,index:L,boundIndex:C,row:this.rowsByKey[F]});var q=this.endroweditbykey(this.editKey,false);if(q){this._doSelection(F,true,true);this.beginroweditbykey(F,N)}else{this.beginroweditbykey(this.editKey,N)}}}}else{if(!E&&X.shiftKey){var N=null;for(var S=this.columns.records.length-1;S>=0;S--){if(this.columns.records[S].editable&&!this.columns.records[S].hidden){N=this.columns.records[S];break}}if(N){while(v){v=v.prev();if(v){var D=v.attr("data-role");if(!D){var F=v.attr("data-key");break}}}if(F){this.clearSelection(false);this._lastSelectedKey=F;var o=this.rowsByKey[F];var C=this.getrowindex(o);var L=this.getrowdisplayindex(o);this._raiseEvent("rowSelect",{key:F,index:L,boundIndex:C,row:this.rowsByKey[F]});this.endroweditbykey(this.editKey,false);this._doSelection(F,true,true);this.beginroweditbykey(F,N)}}}}return false}}}}}return true}if(X.ctrlKey||X.metaKey){var f=String.fromCharCode(s).toLowerCase();if(f=="c"||f=="x"){var n=this.getSelection();if(n.length>=1){var w="";for(var K=0;K<this.renderedRecords.length;K++){var Y=this.renderedRecords[K];for(var S=0;S<n.length;S++){var o=n[S];if(o.uid===Y.uid){for(var R=0;R<this.columns.records.length;R++){var A=this.getCellTextByKey(o.uid,this.columns.records[R].displayfield);w+=A;if(R<this.columns.records.length-1){w+="\t"}}w+="\r\n";break}}}if(w!=""){w=w.substring(0,w.length-1)}if(window.clipboardData){window.clipboardData.setData("Text",w)}else{var O=b('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');O.val(w);b("body").append(O);O.select();setTimeout(function(){document.designMode="off";O.select();O.remove()},100)}}}}if(s===32&&this.treeGrid){if(this.treeGrid.checkboxes){var n=this.getSelection();if(n.length>1){for(var S=0;S<n.length;S++){var G=n[S].uid;if(this.rowinfo[G].checked){this.treeGrid.uncheckRow(G,false)}else{this.treeGrid.checkRow(G,false)}}this._renderrows();return false}else{var t=v.attr("data-key");if(t){if(this.rowinfo[t].checked){this.treeGrid.uncheckRow(t)}else{this.treeGrid.checkRow(t)}return false}}}}var d=v.index();var W=function(Z){var j=null;var p=b(I._table.children()[1]).children().length-1;var i=b(b(I._table.children()[1]).children()[p]);var aa=i.attr("data-role");if(!aa){j=i.attr("data-key")}else{while(i){i=i.prev();if(i){var aa=i.attr("data-role");if(!aa){j=i.attr("data-key");break}}}}if(Z=="all"){return{row:i,key:j}}return j};var g=function(p){var j=null;var i=b(b(I._table.children()[1]).children()[0]);var Z=i.attr("data-role");if(!Z){j=i.attr("data-key")}else{while(i){i=i.next();if(i){var Z=i.attr("data-role");if(!Z){j=i.attr("data-key");break}}}}if(p=="all"){return{row:i,key:j}}return j};var t=null;var l=function(){if(!Q&&!x){I.clearSelection(false)}if(s==33||s==37){var j=d;t=I._getuikey(j,"prev");if(!t){t=g()}}else{if(s==34||s==39){var j=d;t=I._getuikey(j,"next");if(!t){t=W()}}else{if(s==38){t=W()}else{if(s==40){t=g()}}}}I._lastSelectedKey=t;var p=I.rowsByKey[t];var j=I.getrowindex(p);var i=I.getrowdisplayindex(p);I._raiseEvent("rowSelect",{key:t,index:i,boundIndex:j,row:I.rowsByKey[t]});I._doSelection(t,true,true);I.host.focus()};var k=function(){I.clearSelection(false);var i=g();if(x||Q){I._selectRange(v.index(),0)}else{I._lastSelectedKey=i}I.selectrowbykey(i,"keyboard")};var r=function(){I.clearSelection(false);var i=W("all");var j=i.key;if(x||Q){I._selectRange(v.index(),i.row.index())}else{I._lastSelectedKey=j}I.selectrowbykey(j,"keyboard")};if(this.treeGrid&&this.rtl){if(s==37){s=39}else{if(s==39){s=37}}}if(s==36||(Q&&s==38)){k();return false}else{if(s==35||(Q&&s==40)){r();return false}else{if(s==33||s==37){var t=v.attr("data-key");if(this.rowDetails&&s==37&&!this.treeGrid){this.hidedetailsbykey(t);return false}else{if(this.treeGrid&&s==37){if(this.rowinfo[t].row&&!this.rowinfo[t].row[T.parent]&&!this.rowinfo[t][T.leaf]&&!this.rowinfo[t].expanded){return false}if(this.rowinfo[t].expanded&&!this.rowinfo[t][T.leaf]){this.treeGrid.collapseRow(t);return false}else{if(this.rowinfo[t].row&&this.rowinfo[t].row[T.parent]){t=this.rowinfo[t].row[T.parent].uid}}if(this.rowinfo[t][T.leaf]){return false}}}if(this.pageable&&!this.treeGrid){if(!this.rtl){this.goToPrevPage(l)}else{this.goToNextPage(l)}return false}if(this.treeGrid&&this.pageable&&s==33){this.goToPrevPage(l);return false}}else{if(s==34||s==39){var t=v.attr("data-key");if(this.rowDetails&&s==39&&!this.treeGrid){this.showdetailsbykey(t);return false}else{if(this.treeGrid&&s==39){if(this.rowinfo[t][T.leaf]){return false}if(!this.rowinfo[t].expanded){this.treeGrid.expandRow(t);return false}else{if(this.rowinfo[t].row&&this.rowinfo[t].row.records&&this.rowinfo[t].row.records.length>0){if(this.dataview.filters.length>0){var m=this.rowinfo[t].row.records;for(var S=0;S<m.length;S++){if(m[S]._visible){t=m[S].uid;break}}}else{t=this.rowinfo[t].row.records[0].uid}}}}}if(this.pageable&&!this.treeGrid){if(!this.rtl){this.goToNextPage(l)}else{this.goToPrevPage(l)}return false}if(this.treeGrid&&this.pageable&&s==34){this.goToNextPage(l);return false}}else{if(s==38){while(v){v=v.prev();if(v){var D=v.attr("data-role");if(!D){t=v.attr("data-key");break}}}if(this.pageable&&t==null){this.goToPrevPage(l);return false}}else{if(s==40){while(v){v=v.next();if(v){var D=v.attr("data-role");if(!D){t=v.attr("data-key");break}}}if(this.pageable&&t==null){this.goToNextPage(l);return false}}}}}}}if(t!=null){if(!Q&&!x){this.clearSelection(false)}if(this.rowinfo[t]){if(this.rowinfo[t].selected&&(Q||x)){this._doSelection(this._lastSelectedKey,false,false);this._lastSelectedKey=t;var o=this.rowsByKey[t];var C=this.getrowindex(o);I._updateSelection();var L=this.getrowdisplayindex(o);this._raiseEvent("rowUnselect",{key:t,index:L,boundIndex:C,row:o});return false}}this._lastSelectedKey=t;var o=this.rowsByKey[t];var C=this.getrowindex(o);this._doSelection(t,true,false);I._updateSelection();var L=this.getrowdisplayindex(o);this._raiseEvent("rowSelect",{key:t,index:L,boundIndex:C,row:o});if(this.treeGrid){if(s==37){var v=this._getuirow(t);var U=null;if(v){var D=v.attr("data-role");if(!D){U=v.attr("data-key")}}if(this.pageable&&U==null&&this.dataview.pagenum>0){while(this._getuirow(t)==null&&this.dataview.pagenum>0){this.goToPrevPage()}}}else{if(s==39){var v=this._getuirow(t);var U=null;if(v){var D=v.attr("data-role");if(!D){U=v.attr("data-key")}}if(this.pageable&&U==null){this.goToNextPage()}}}}return false}},_selection:function(c){if("selectionStart" in c[0]){var h=c[0];var i=h.selectionEnd-h.selectionStart;return{start:h.selectionStart,end:h.selectionEnd,length:i,text:h.value}}else{var f=document.selection.createRange();if(f==null){return{start:0,end:h.value.length,length:0}}var d=c[0].createTextRange();var g=d.duplicate();d.moveToBookmark(f.getBookmark());g.setEndPoint("EndToStart",d);var i=f.text.length;return{start:g.text.length,end:g.text.length+f.text.length,length:i,text:f.text}}},_doSelection:function(c,e,d){if(c==null){this.clearSelection();return}if(this.selectionMode==="singlerow"){this.clearSelection(false)}var f=this.rowinfo[c];if(f){f.selected=e;this.ensurerowvisiblebykey(c)}else{this.ensurerowvisiblebykey(c);var f=this.rowinfo[c];if(f){f.selected=e}else{this.rowinfo[c]={selected:e}}}if(this.selectionMode!="none"){if(d!==false){this._renderrows()}}},clearSelection:function(e){if(this.rowinfo){var f=this.getRows();for(var h in this.rowinfo){var g=this.rowinfo[h];if(g.selected){g.selected=false;var d=f.indexOf(g.row);var c=this.getrowdisplayindex(g.row);this._raiseEvent("rowUnselect",{key:h,index:c,boundIndex:d,row:g.row})}}}if(e!==false){this._renderrows()}},exportData:function(t){if(!b.jqx.dataAdapter.ArrayExporter){if(!this.treeGrid){throw"jqxDataTable: Missing reference to jqxdata.export.js!"}throw"jqxTreeGrid: Missing reference to jqxdata.export.js!"}var h=this.exportSettings.columnsHeader;if(h==undefined){h=true}var w=this.exportSettings.hiddenColumns;if(w==undefined){w=false}var P=this.exportSettings.serverURL;var I=this.exportSettings.characterSet;var ac=this.exportSettings.collapsedRecords;if(ac==undefined){ac=false}var F=this.exportSettings.fileName;if(F===undefined){F=this.treeGrid?"jqxTreeGrid_Data":"jqxDataTable_Data"}var s=this;var Y=this.getRows();if(this.exportSettings.recordsInView==true){Y=this.getView()}if(this.treeGrid&&this.treeGrid.virtualModeCreateRecords){var Y=this.treeGrid.getRows()}if(this.groups&&this.groups.length>0){var k=this.source.getGroupedRecords(this.groups,"records","label",null,"data",null,"parent",Y);var m=function(o,ae){for(var ag=0;ag<o.length;ag++){var j=b.extend({},o[ag]);ae.push(j);if(j.records&&j.records.length>0){var ah=m(j.records,new Array());for(var af=0;af<ah.length;af++){if(ah[af].leaf){ae.push(ah[af])}else{ae.push(ah[af])}}}}return ae};var S=m.call(this,k,new Array());Y=S}if(Y.length==0){throw"No data to export."}this.exporting=true;if(this.altRows){this._renderrows()}var p=new Array();for(var X=0;X<this.columns.records.length;X++){if(!w&&this.columns.records[X].hidden){continue}p.push(b.extend({},this.columns.records[X]))}if(this.groups&&this.groups.length>0){if(p.length>0){var aa=this._names();for(var X=0;X<Y.length;X++){if(!Y[X][aa.leaf]){if(!s.rtl){Y[X][p[0].displayfield]=Y[X].label}else{Y[X][p[p.length-1].displayfield]=Y[X].label}}}}}var g=0;if(this.treeGrid){var L=this.treeGrid.getRows();if(this.exportSettings.recordsInView==true){L=this.getView()}var aa=this._names();var d=function(ae){for(var af=0;af<ae.length;af++){var j=ae[af];var o=j[aa.expanded]||(!j[aa.expanded]&&ac);g=Math.max(g,1+j[aa.level]);if(j.records&&j.records.length>0&&o){d(ae[af].records)}}};d(L);if(t!="xml"&&t!="json"){var u=p.length;for(var X=0;X<g;X++){var Q=new a(this,this);Q.width=this.indentWidth;Q.datafield="Level"+X;Q.displayfield="Level"+X;Q.align="center";Q.cellsalign="center";Q.text="";if(!this.rtl){p.splice(X,0,Q)}else{p.splice(u,0,Q)}}var y=new Array();var x=this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?true:false;var U=function(af){for(var ah=0;ah<af.length;ah++){var o=b.extend({},af[ah]);for(var ag=0;ag<o[aa.level];ag++){o["Level"+ag]=""}var ae=o[aa.expanded]||(!o[aa.expanded]&&ac);if(t=="xls"||t=="html"||t=="pdf"){if(o.records&&o.records.length>0){o["Level"+o[aa.level]]=ae?"-":"+"}else{o["Level"+o[aa.level]]=""}}else{o["Level"+o[aa.level]]=""}if(o[aa.leaf]){o["Level"+o[aa.level]]=""}for(var ag=o[aa.level]+1;ag<g;ag++){o["Level"+ag]=""}if(x&&!o[aa.leaf]){if(!s.rtl){o[p[g].displayfield]=o.label}else{o[p[p.length-g-1].displayfield]=o.label}}if(o.aggregate){var aj=t=="xls"?"_AG":"";for(var ag=g;ag<p.length;ag++){var ai=ag;if(s.rtl){ai=p.length-ag-1}if(o[p[ai].displayfield]!=undefined){o[p[ai].displayfield]=aj+o[p[ai].displayfield]}}}y.push(o);if(ae&&!o[aa.leaf]){U(o.records)}}};U(L);Y=y}else{Y=L}}var f=w!=undefined?w:false;var Z={};var C={};var l=[];var M=this.host.find(".jqx-grid-cell:first");var n=this.host.find(".jqx-grid-cell-alt:first");var ad=this.toThemeProperty;M.removeClass(ad("jqx-grid-cell-selected"));M.removeClass(ad("jqx-fill-state-pressed"));n.removeClass(ad("jqx-grid-cell-selected"));n.removeClass(ad("jqx-fill-state-pressed"));M.removeClass(ad("jqx-grid-cell-hover"));M.removeClass(ad("jqx-fill-state-hover"));n.removeClass(ad("jqx-grid-cell-hover"));n.removeClass(ad("jqx-fill-state-hover"));var E="cell";var B=1;var K="column";var z=1;var A=[];for(var V=0;V<p.length;V++){var Q=p[V];if(Q.cellclassname!=""){Q.customCellStyles=new Array();if(typeof Q.cellclassname=="string"){Q.customCellStyles.push(Q.cellclassname)}else{for(var X=0;X<Y.length;X++){var c=X;var W=Q.cellclassname(c,Q.displayfield,Y[X][Q.displayfield],Y[X]);if(W){Q.customCellStyles[X]=W}}}}}b.each(p,function(ag){var aj=ag;if(s.treeGrid){if(ag>=g){aj=p.length-g-1}else{if(g>0&&ag<g){aj=0}}}var ak=b(s._table[0].rows[0].cells[aj]);if(s._table[0].rows.length>1){var j=b(s._table[0].rows[1].cells[aj]);if(j.length==0){var j=b(s._table[0].rows[1].cells[0])}}if(ak.length==0){var ak=b(s._table[0].rows[0].cells[0])}var af=this;var ah=function(am){var ao=s.toThemeProperty;am.removeClass(ao("jqx-cell"));am.removeClass(ao("jqx-grid-cell-selected"));am.removeClass(ao("jqx-fill-state-pressed"));am.removeClass(ao("jqx-grid-cell-hover"));am.removeClass(ao("jqx-fill-state-hover"));if(af.customCellStyles){for(var an in af.customCellStyles){am.removeClass(af.customCellStyles[an])}}};ah(ak);if(j){ah(j)}if(this.displayfield==null){return true}if(s.showAggregates){if(s.getcolumnaggregateddata){A.push(s.getcolumnaggregateddata(this.displayfield,this.aggregates,true,Y))}}var ai=s._getexportcolumntype(this);if(this.exportable&&(!this.hidden||f)){Z[this.displayfield]={};Z[this.displayfield].text=this.text;Z[this.displayfield].width=parseInt(this.width);if(isNaN(Z[this.displayfield].width)){Z[this.displayfield].width=60}if(Z[this.displayfield].width>500){Z[this.displayfield].width=500}Z[this.displayfield].formatString=this.cellsFormat;Z[this.displayfield].localization=s.gridlocalization;Z[this.displayfield].type=ai;Z[this.displayfield].cellsAlign=this.cellsalign;Z[this.displayfield].hidden=!h;Z[this.displayfield].index=aj;Z[this.displayfield].maxIndex=p.length}E="cell"+B;var al=this.element;if(t!="json"&&t!="xml"){K="column"+z;var i=function(o,au,at,am,ar,ao,an,ap,aq){C[o]={index:1+an,maxIndex:p.length};if(ao.rtl){C[o].index=p.length-an}if(t=="html"||t=="xls"||t=="pdf"){if(au){C[o]["font-size"]=au.css("font-size");C[o]["font-weight"]=au.css("font-weight");C[o]["font-style"]=au.css("font-style");C[o]["background-color"]=ao._getexportcolor(au.css("background-color"));C[o]["color"]=ao._getexportcolor(au.css("color"));C[o]["border-color"]=ao._getexportcolor(au.css("border-top-color"))}if(at){C[o]["text-align"]=ar.align}else{C[o]["text-align"]=ar.cellsalign;C[o]["formatString"]=ar.cellsFormat;C[o]["dataType"]=ai}if(t=="html"||t=="pdf"){C[o]["border-top-width"]="0px";if(!ao.rtl){C[o]["border-left-width"]="0px";C[o]["border-right-width"]="1px"}else{C[o]["border-left-width"]="1px";C[o]["border-right-width"]="0px";if(an==p.length-g-1&&at){C[o]["border-right-width"]="1px"}}C[o]["border-bottom-width"]="1px";if(au){C[o]["border-top-style"]=au.css("border-top-style");C[o]["border-left-style"]=au.css("border-left-style");C[o]["border-right-style"]=au.css("border-right-style");C[o]["border-bottom-style"]=au.css("border-bottom-style")}if(at){if(an==0&&!ao.rtl){C[o]["border-left-width"]="1px"}else{if(an==p.length-1&&ao.rtl){C[o]["border-right-width"]="1px"}}if(au){C[o]["border-top-width"]="1px";C[o]["border-bottom-width"]=au.css("border-bottom-width")}}else{if(an==0&&!ao.rtl){C[o]["border-left-width"]="1px"}else{if(an==p.length-1&&ao.rtl){C[o]["border-right-width"]="1px"}}}if(au){C[o]["height"]=au.css("height")}if(ao.treeGrid&&!at){if(C[o].index-1<g){if(ao.rtl){C[o]["border-left-width"]="0px"}else{C[o]["border-right-width"]="0px"}}else{if(C[o].index-1==g){if(!ao.rtl){C[o]["border-left-width"]="0px"}else{C[o]["border-right-width"]="0px"}}}}}}if(ar.exportable&&(!ar.hidden||f)){if(ap==true){if(!Z[ar.displayfield].customCellStyles){Z[ar.displayfield].customCellStyles=new Array()}Z[ar.displayfield].customCellStyles[aq]=o}else{if(at){Z[ar.displayfield].style=o}else{if(!am){Z[ar.displayfield].cellStyle=o}else{Z[ar.displayfield].cellAltStyle=o}}}}};i(K,al,true,false,this,s,ag);z++;i(E,ak,false,false,this,s,ag);if(s.altRows){E="cellalt"+B;i(E,j,false,true,this,s,ag)}if(this.customCellStyles){for(var ae in af.customCellStyles){ak.removeClass(af.customCellStyles[ae])}for(var ae in af.customCellStyles){ak.addClass(af.customCellStyles[ae]);i(E+af.customCellStyles[ae],ak,false,false,this,s,ag,true,ae);ak.removeClass(af.customCellStyles[ae])}}B++}});if(t!="json"&&t!="xml"){if(g>0&&this.treeGrid){var ab=g+1;if(this.rtl){ab=p.length-g}if(C["column"+ab]){var e=C["column"+ab];e.merge=g;e["border-left-width"]="1px";var H=C["cell"+ab];for(var X=0;X<p.length;X++){var ab=X+1;if(this.rtl){ab=p.length-X}C["column"+ab].level=X;C["column"+ab].maxLevel=g;C["cell"+ab].maxLevel=g;var Q=p[X];if(Q.customCellStyles){for(var R in Q.customCellStyles){if(C["cell"+ab+Q.customCellStyles[R]]){C["cell"+ab+Q.customCellStyles[R]].maxLevel=g}}}if(C["cellalt"+ab]){C["cellalt"+ab].maxLevel=g}}for(var X=0;X<g;X++){var ab=X+1;var D=X;if(this.rtl){ab=p.length-X}var r=C["column"+ab];r.disabled=true;C["cell"+ab].level=D;C["cell"+ab].maxLevel=g;C["column"+ab].level=D;if(C["cellalt"+ab]){C["cellalt"+ab].level=D;C["cellalt"+ab].maxLevel=g}var Q=p[X];if(Q.customCellStyles){for(var R in Q.customCellStyles){if(C["cell"+ab+Q.customCellStyles[R]]){C["cell"+ab+Q.customCellStyles[R]].maxLevel=g;C["cell"+ab+Q.customCellStyles[R]].level=D}}}if(t=="html"||t=="pdf"||t=="xls"){r["font-size"]=e["font-size"];r["font-weight"]=e["font-weight"];r["font-style"]=e["font-style"];r["background-color"]=e["background-color"];r.color=e.color;r["border-color"]=e["border-color"];if(t=="html"||t=="pdf"){r["border-top-width"]=e["border-top-width"];r["border-left-width"]=e["border-left-width"];if(this.rtl){r["border-right-width"]=e["border-right-width"];if(X==0){r["border-right-width"]="1px"}}if(X==0&&!this.rtl){r["border-left-width"]="0px"}else{if(X==0&&this.rtl){r["border-left-width"]="0px"}}if(!this.rtl){r["border-right-width"]="0px"}else{if(this.rtl){r["border-left-width"]="0px"}}r["border-bottom-width"]="0px";var r=C["cell"+ab];if(!this.rtl){r["border-right-width"]="0px"}else{if(this.rtl){r["border-left-width"]="0px"}}}}}}}}if(this.showAggregates){var G=[];var N=t=="xls"?"_AG":"";var O=0;if(this.rowDetails&&!this.treeGrid){O++}if(A.length>0){b.each(p,function(j){if(this.aggregates){for(var ae=0;ae<this.aggregates.length;ae++){if(!G[ae]){G[ae]={}}if(G[ae]){var af=s._getaggregatename(this.aggregates[ae]);var ag=s._getaggregatetype(this.aggregates[ae]);var o=A[j-O];if(o){G[ae][this.displayfield]=N+af+": "+o[ag]}}}}});b.each(p,function(j){for(var o=0;o<G.length;o++){if(G[o][this.displayfield]==undefined){G[o][this.displayfield]=N}}})}b.each(G,function(){Y.push(this)})}var J=this;var T=b.jqx.dataAdapter.ArrayExporter(Y,Z,C,P,this.treeGrid&&(t=="xml"||t=="json"));if(F==undefined){this._renderrows();var v=T.exportTo(t);if(this.showAggregates){b.each(G,function(){Y.pop(this)})}setTimeout(function(){J.exporting=false},50);return v}else{var q=this.treeGrid&&(t=="xml"||t=="json");T.exportToFile(t,F,P,I,q)}if(this.showAggregates){b.each(G,function(){Y.pop(this)})}this._renderrows();setTimeout(function(){J.exporting=false},50)},_getexportcolor:function(l){var f=l;if(l=="transparent"){f="#FFFFFF"}if(!f||!f.toString()){f="#FFFFFF"}if(f.toString().indexOf("rgb")!=-1){var i=f.split(",");if(f.toString().indexOf("rgba")!=-1){var d=parseInt(i[0].substring(5));var h=parseInt(i[1]);var j=parseInt(i[2]);var k=parseInt(i[3].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);if(d==0&&h==0&&j==0&&k==0){return"#ffffff"}return"#"+e}var d=parseInt(i[0].substring(4));var h=parseInt(i[1]);var j=parseInt(i[2].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);return"#"+e}else{if(f.toString().indexOf("#")!=-1){if(f.toString().length==4){var c=f.toString().substring(1,4);f+=c}}}return f},_rgbToHex:function(c){return this._intToHex(c.r)+this._intToHex(c.g)+this._intToHex(c.b)},_intToHex:function(d){var c=(parseInt(d).toString(16));if(c.length==1){c=("0"+c)}return c.toUpperCase()},_getexportcolumntype:function(g){var h=this;var f="string";var e=h.source.datafields||((h.source._source)?h.source._source.datafields:null);if(e){var j="";b.each(e,function(){if(this.name==g.displayfield){if(this.type){j=this.type}return false}});if(j){return j}}if(g!=null){if(this.dataview.cachedrecords==undefined){return f}var c=null;if(!this.virtualmode){if(this.dataview.cachedrecords.length==0){return f}c=this.dataview.cachedrecords[0][g.displayfield];if(c!=null&&c.toString()==""){return"string"}}else{b.each(this.dataview.cachedrecords,function(){c=this[g.displayfield];return false})}if(c!=null){if(g.cellsFormat.indexOf("c")!=-1){return"number"}if(g.cellsFormat.indexOf("n")!=-1){return"number"}if(g.cellsFormat.indexOf("p")!=-1){return"number"}if(g.cellsFormat.indexOf("d")!=-1){return"date"}if(g.cellsFormat.indexOf("y")!=-1){return"date"}if(g.cellsFormat.indexOf("M")!=-1){return"date"}if(g.cellsFormat.indexOf("m")!=-1){return"date"}if(g.cellsFormat.indexOf("t")!=-1){return"date"}if(typeof c=="boolean"){f="boolean"}else{if(b.jqx.dataFormat.isNumber(c)){f="number"}else{var i=new Date(c);if(i.toString()=="NaN"||i.toString()=="Invalid Date"){if(b.jqx.dataFormat){i=b.jqx.dataFormat.tryparsedate(c);if(i!=null){if(i&&i.getFullYear()){if(i.getFullYear()==1970&&i.getMonth()==0&&i.getDate()==1){var d=new Number(c);if(!isNaN(d)){return"number"}return"string"}}return"date"}else{f="string"}}else{f="string"}}else{f="date"}}}}}return f},showDetails:function(c){var d=this._getkey(c);this.showdetailsbykey(d)},hideDetails:function(c){var d=this._getkey(c);this.hidedetailsbykey(d)},setCellValueByKey:function(D,s,w){var o=this;var j=this.rowsByKey[D];var k=this.getrowindex(j);var h=j;if(h!=null&&h[s]==w){return false}if(h!=null&&h[s]===null&&w===""){return}var n="";if(h!=null&&h[s]!==w){var e=this.getColumn(s);var f="string";var A=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(A){var t="";b.each(A,function(){if(this.name==e.displayfield){if(this.type){t=this.type}return false}});if(t){f=t}}n=h[s];if(!e.nullable||(w!=null&&w!==""&&e.nullable&&w.label===undefined)){if(b.jqx.dataFormat.isNumber(n)||f=="number"||f=="float"||f=="int"||f=="decimal"&&f!="date"){w=new Number(w);w=parseFloat(w);if(isNaN(w)){w=0}}else{if(b.jqx.dataFormat.isDate(n)||f=="date"){if(w!=""){var z=w;z=new Date(z);if(z!="Invalid Date"&&z!=null){w=z}else{if(z=="Invalid Date"){z=new Date();w=z}}}}}if(h[s]===w){return}}o.dataview._filteredData=null;o.dataview._sortData=null;o.dataview._sortHierarchyData=null;h[s]=w;if(this.treeGrid){var r=this.treeGrid.getRow(D);if(r){r[s]=w}}if(w!=null&&w.label!=null){var e=this.getColumn(s);h[e.displayfield]=w.label;h[s]=w.value;if(this.treeGrid){var r=this.treeGrid.getRow(D);if(r){r[e.displayfield]=w.label;r[s]=w.value}}}}if(this.source&&this.source._knockoutdatasource&&!this._updateFromAdapter&&this.autokoupdates){if(this.source._source._localdata){var y=k;var v=this.source._source._localdata()[y];this.source.suspendKO=true;var l=v;if(l[s]&&l[s].subscribe){if(w!=null&&w.label!=null){l[e.displayfield](w.label);l[s](w.value)}else{l[s](w)}}else{var A=this.source._source.datafields;var d=null;var B=null;if(A){b.each(A,function(){if(this.name==s){B=this.map;return false}})}if(B==null){if(w!=null&&w.label!=null){l[s]=w.value;l[e.displayfield]=w.label}else{l[s]=w}}else{var g=B.split(this.source.mapChar);if(g.length>0){var c=l;for(var u=0;u<g.length-1;u++){c=c[g[u]]}c[g[g.length-1]]=w}}this.source._source._localdata.replace(v,b.extend({},l))}this.source.suspendKO=false}}if(this.source.updaterow&&(sync==undefined||sync==true)){var m=false;var q=function(p){if(false==p){this.setCellValue(j,s,n,true,false)}};try{var i=D;m=this.source.updaterow(i,h,q);if(m==undefined){m=true}}catch(x){m=false;this.setCellValue(j,s,n);return}}var C=this.getrowdisplayindex(j);var e=this.getColumn(s);this._raiseEvent("cellValueChanged",{value:w,oldValue:n,dataField:s,displayField:e.displayfield,key:D,boundIndex:k,index:C,row:this.rowsByKey[D]});if(this.editable){if(this.editKey!=null){return}}this._renderrows()},setCellValue:function(g,d,f){if(g==null||d==null){return false}var c=parseInt(g);var e=this._getkey(c);this.setCellValueByKey(e,d,f)},getCellText:function(f,d){if(f==null||d==null){return false}var c=parseInt(f);var e=this._getkey(c);return this.getCellTextByKey(e,d)},getCellTextByKey:function(e,d){if(e==null||d==null){return null}var c=this.getCellValueByKey(e,d);var f=this.getColumn(d);if(f&&f.cellsFormat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(c)){c=b.jqx.dataFormat.formatdate(c,f.cellsFormat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(c)||(!isNaN(parseFloat(c))&&isFinite(c))){c=b.jqx.dataFormat.formatnumber(c,f.cellsFormat,this.gridlocalization)}}}}return c},getCellValue:function(f,d){if(f==null||d==null){return false}var c=parseInt(f);var e=this._getkey(c);return this.getCellValueByKey(e,d)},getCellValueByKey:function(e,d){var h=this.rowsByKey[e];if(!h&&this.treeGrid){h=this.treeGrid.getRow(e)}var c=this.getrowindex(h);var f=h;var g="";if(f!=null){return f[d]}return null},beginRowEdit:function(c){var d=this._getkey(c);this.beginroweditbykey(d)},beginCellEdit:function(d,c){var e=this._getkey(d);var f=this.getColumn(c);this.beginroweditbykey(e,f)},endCellEdit:function(d,c,e){this.endRowEdit(d,e)},endRowEdit:function(c,e){var d=this._getkey(c);this.endroweditbykey(d,e)},getrowindex:function(f){var d=this.getRows().indexOf(f);if(d!=-1){return d}if(this.groups&&this.groups.length>0){var c=this.getRows();for(var e=0;e<c.length;e++){if(f.originalRecord){if(c[e].uid==f.originalRecord.uid){d=e;break}}else{if(c[e].uid==f.uid){d=e;break}}}}return d},getrowdisplayindex:function(g){if(this.treeGrid){return -1}var c=this.getView();var e=c.indexOf(g);if(e!=-1){return e}if(g==undefined){return e}var d=c;for(var f=0;f<d.length;f++){if(d[f].uid==g.uid||(g.originalRecord&&d[f].uid==g.originalRecord.uid)){e=f;break}}return e},beginroweditbykey:function(G,q){if(this.beginEdit){var A=this.beginEdit(G,q);if(A===false){return false}}var D=!this.treeGrid?this.groups.length:this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?this.source._source.hierarchy.groupingDataFields.length:0;if(D>0){var m=this.rowsByKey[G];if(this.treeGrid){var m=this.treeGrid.getRow(G)}if(m.level<D){return false}}if(this._lastSelectedKey==null){this.selectrowbykey(G)}if(this.editKey===G&&this.editKey!=undefined){return false}if(this.rowinfo[G]&&this.rowinfo[G].locked){return false}if(this.editKey!=null){this.endroweditbykey(G,true);return false}var E=this.editSettings.editSingleCell;if(!q&&E&&this.columns.records&&this.columns.records.length>0){for(var y=0;y<this.columns.records.length;y++){q=this.columns.records[y];if(q.editable&&!q.hidden){break}}if(!q){return false}}if(E&&q&&!q.editable){this.editKey=null;return false}if(E){this.editColumn=q}var o=this;var m=this.rowsByKey[G];if(this.treeGrid){var m=this.treeGrid.getRow(G)}var n=this.getrowindex(m);var C=this._getuirow(G);var s=this._getpinneduirow(G);this._editors=new Array();var p=false;if(C){var h=C[0].cells;var t=0;for(var y=0;y<h.length;y++){var g=this.columns.records[y];var d=h[y];if(g.rowDetailscolumn){continue}if(g.checkboxcolumn){continue}if(g.pinned){d=s[0].cells[y]}if(E&&q&&g.datafield!=q.datafield){continue}b(d).removeClass(this.toTP("jqx-grid-cell-selected"));b(d).removeClass(this.toTP("jqx-fill-state-pressed"));b(d).removeClass(this.toTP("jqx-grid-cell-hover"));b(d).removeClass(this.toTP("jqx-fill-state-hover"));if(g.columntype=="none"){continue}var u=b(d).outerWidth();var w=b(d).width();if(t===0){t=b(d).outerHeight()-1}b(d).css("padding","0px");cellContent="<div style='height:"+t+"px; width: 100%; overflow: hidden; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 9999;'></div>";var r=this.getCellTextByKey(G,g.displayfield);d.innerHTML=cellContent;var e=b(d.firstChild);switch(g.columntype){case"textbox":case"default":var j=b("<input style='border: none;' autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' type='textbox'/>").appendTo(e);if(this.rtl){j.css("direction","rtl")}j.addClass(this.toThemeProperty("jqx-input"));j.addClass(this.toThemeProperty("jqx-widget-content"));j.addClass(this.toThemeProperty("jqx-cell-editor"));j[0].onfocus=function(i){setTimeout(function(){if(i){var H=b(i.target).parent().parent().index();if(H>=0){o.ensureColumnVisible(o.columns.records[H].datafield)}}else{var H=b(document.activeElement).parent().parent().index();if(H>=0){o.ensureColumnVisible(o.columns.records[H].datafield)}}if(o.content){o.content[0].scrollTop=0;o.content[0].scrollLeft=0}if(o.gridcontent){o.gridcontent[0].scrollLeft=0;o.gridcontent[0].scrollTop=0}},10)};if(!g.editable){j.attr("disabled",true);j.attr("readOnly",true);j.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{if(!p){p=true;var f=b.jqx.browser.msie&&b.jqx.browser.version>10;if(!f){j.focus()}var c=j;setTimeout(function(){var I=c.val().length;if(!f){c.focus()}try{if("selectionStart" in c[0]){c[0].setSelectionRange(0,I)}else{var i=c[0].createTextRange();i.collapse(true);i.moveEnd("character",I);i.moveStart("character",0);i.select()}}catch(H){var J=H}},10)}}j.width(w);j.height(t);if(b.jqx.browser.msie&&b.jqx.browser.version<9){j.css("line-height",parseInt(t)+"px")}j.css("text-align",g.cellsalign);if(r===null){r=""}if(r==undefined){r=""}j.val(r);if(g.createeditor){var B=r;var r=this.getCellValueByKey(G,g.displayfield);g.createeditor(!this.treeGrid?n:G,r,j,B,w,t)}this._editors.push({column:g,editor:j});if(g.cellsFormat!=""){if(g.cellsFormat.indexOf("p")!=-1||g.cellsFormat.indexOf("c")!=-1||g.cellsFormat.indexOf("n")!=-1||g.cellsFormat.indexOf("f")!=-1){j.keydown(function(H){var N=H.charCode?H.charCode:H.keyCode?H.keyCode:0;var K=String.fromCharCode(N);var L=parseInt(K);if(isNaN(L)){return true}if(o._selection(j).length>0){return true}var J="";var I=j.val();if(g.cellsFormat.length>1){var M=parseInt(g.cellsFormat.substring(1));if(isNaN(M)){M=0}}else{var M=0}if(M>0){if(I.indexOf(o.gridlocalization.decimalseparator)!=-1){if(o._selection(j).start>I.indexOf(o.gridlocalization.decimalseparator)){return true}}}for(var O=0;O<I.length-M;O++){var i=I.substring(O,O+1);if(i.match(/^[0-9]+$/)!=null){J+=i}}if(J.length>=11){return false}})}}if(g.initeditor){var B=r;var r=this.getCellValueByKey(G,g.displayfield);g.initeditor(!this.treeGrid?n:G,r,j,B,w,t)}break;case"custom":case"template":if(!this.editorsCache){this.editorsCache=new Array()}var k=b("<div style='width: 100%; height: 100%; border: none;'></div>").appendTo(e);var x=b.trim(g.datafield).split(" ").join("");if(x.indexOf(".")!=-1){x=x.replace(".","")}var z=this.editorsCache["templateeditor_"+x];if(g.columntype=="custom"){var z=this.editorsCache["customeditor_"+x+"_"+G]}var B=r;var r=this.getCellValueByKey(G,g.displayfield);if(!z){var j=b("<div style='border: none;'></div>");j.width(u);j.height(t);z=j;if(r===null){r=""}if(g.columntype!="custom"){this.editorsCache["templateeditor_"+x]=j}else{this.editorsCache["customeditor_"+x+"_"+G]=j}j.appendTo(k);if(g.createeditor){g.createeditor(!this.treeGrid?n:G,r,j,B,u,t)}}else{var j=z;j.width(u);j.height(t);j.appendTo(k)}if(g.initeditor){g.initeditor(!this.treeGrid?n:G,r,j,B,u,t)}this._editors.push({column:g,editor:j});break}}}this.editKey=G;this.beginUpdate();var F=this.getrowdisplayindex(m);this._raiseEvent("rowBeginEdit",{key:G,index:F,boundIndex:n,row:this.rowsByKey[G]});if(E){var m=this.rowsByKey[G];var v=null;var l=null;if(m){v=m[q.datafield];l=m[q.displayfield]}this._raiseEvent("cellBeginEdit",{value:v,displayValue:l,key:G,index:F,dataField:q.datafield,displayField:q.displayfield,boundIndex:n,row:this.rowsByKey[G]})}this.endUpdate(false)},_toNumber:function(f){if(!f.indexOf&&f!=undefined){f=f.toString()}if(f.indexOf(this.gridlocalization.currencysymbol)>-1){f=f.replace(this.gridlocalization.currencysymbol,"")}var c=function(l,j,k){var h=l;if(j==k){return l}var i=h.indexOf(j);while(i!=-1){h=h.replace(j,k);i=h.indexOf(j)}return h};f=c(f,this.gridlocalization.thousandsseparator,"");f=f.replace(this.gridlocalization.decimalseparator,".");if(f.indexOf(this.gridlocalization.percentsymbol)>-1){f=f.replace(this.gridlocalization.percentsymbol,"")}var g="";for(var d=0;d<f.length;d++){var e=f.substring(d,d+1);if(e==="-"){g+="-"}if(e==="."){g+="."}if(e.match(/^[0-9]+$/)!=null){g+=e}}f=g;f=f.replace(/ /g,"");return f},_geteditorvalue:function(h,j,k,d){var m=new String();if(j){if(!h.geteditorvalue){switch(h.columntype){case"textbox":default:m=j.val();if(h.cellsFormat!=""){var l="string";var g=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(g){var n="";b.each(g,function(){if(this.name==h.displayfield){if(this.type){n=this.type}return false}});if(n){l=n}}var i=l==="number"||l==="float"||l==="int"||l==="integer";var f=l==="date"||l==="time";if(i||(l==="string"&&(h.cellsFormat.indexOf("p")!=-1||h.cellsFormat.indexOf("c")!=-1||h.cellsFormat.indexOf("n")!=-1||h.cellsFormat.indexOf("f")!=-1))){if(m===""&&h.nullable){return""}m=this._toNumber(m);m=new Number(m);if(isNaN(m)){m=""}}if(f||(l==="string"&&(h.cellsFormat.indexOf("H")!=-1||h.cellsFormat.indexOf("m")!=-1||h.cellsFormat.indexOf("M")!=-1||h.cellsFormat.indexOf("y")!=-1||h.cellsFormat.indexOf("h")!=-1||h.cellsFormat.indexOf("d")!=-1))){if(m===""&&h.nullable){return""}var e=m;m=new Date(m);if(m=="Invalid Date"||m==null||h.cellsFormat.length>1){if(b.jqx.dataFormat){m=b.jqx.dataFormat.parsedate(e,h.cellsFormat,this.gridlocalization)}if(m=="Invalid Date"||m==null){m=""}}}}if(h.displayfield!=h.datafield){m={label:m,value:m}}break}}if(h.geteditorvalue){var c=this.getCellValueByKey(d,h.displayfield);m=h.geteditorvalue(!this.treeGrid?k:d,c,j)}}return m},_validateEditors:function(c){var k=this;var d=true;var s=k.rowsByKey[c];var l=k.getrowindex(s);var m=k._editors;var c=k.editKey;var p=k._getuirow(c);for(var h=0;h<m.length;h++){var j=m[h].editor;var f=m[h].column;var o=k._geteditorvalue(f,j,l,c);if(f.validation){j.removeClass(k.toThemeProperty("jqx-grid-validation-label"));var e=f.datafield;try{var r=f.validation({value:o,row:c,datafield:f.datafield,displayfield:f.displayfield,column:f},o);var g=k.gridlocalization.validationstring;if(r.message!=undefined){g=r.message}var q=typeof r=="boolean"?r:r.result;if(!q){if(r.showmessage==undefined||r.showmessage==true){k._showvalidationpopup(p,e,g,j)}d=false}}catch(n){k._showvalidationpopup(p,e,k.gridlocalization.validationstring,j);d=false}}}return d},endroweditbykey:function(p,r){var k=this;if(k.editKey===null){return}if(this.endEdit){var n=this.endEdit(p);if(n===false){return}}var t=k.rowsByKey[p];var l=k.getrowindex(t);var m=k._editors;var e=k.editKey;var q=k._getuirow(e);if(r!==true){var d=true;if(m){d=k._validateEditors(e);if(d){var h=b.extend({},t);var c=b.extend({},t);for(var g=0;g<m.length;g++){var j=m[g].editor;var f=m[g].column;var o=k._geteditorvalue(f,j,l,e);if(o&&o.label!=undefined){h[f.displayfield]=o.label;h[f.datafield]=o.value}else{h[f.displayfield]=o}}var s=function(){k.dataview._sortHierarchyData=null;k.dataview._sortData=null;for(var x=0;x<m.length;x++){var B=m[x].editor;var v=m[x].column;var C=k._geteditorvalue(v,B,l,e);var u=c[v.displayfield];if(C&&C.label!=undefined){t[v.displayfield]=C.label;t[v.datafield]=C.value}else{t[v.displayfield]=C}if(k.treeGrid){var D=k.treeGrid.getRow(e);if(D){D[v.displayfield]=C}}if(k.editorsCache){var E=function(i){if(i&&i.jqxWidget){var G=i.jqxWidget.element.className;if(G.indexOf("dropdownlist")>=0||G.indexOf("datetimeinput")>=0||G.indexOf("combobox")>=0||G.indexOf("menu")>=0){if(i.jqxWidget.isOpened){var F=i.jqxWidget.isOpened();if(F){i.jqxWidget.close()}}}}};var z="customeditor_"+v.displayfield+"_"+p;var y="templateeditor_"+v.displayfield;if(k.editorsCache[z]){var w=b(k.editorsCache[z]).data();var A=k.editorsCache[z];if(!w.jqxWidget&&b(A).children()[0]&&b(b(A).children()[0]).data().jqxWidget){w=b(b(A).children()[0]).data()}E(w);k.editorsCache[z].detach()}if(k.editorsCache[y]){k.editorsCache[y].detach();var w=b(k.editorsCache[y]).data();var A=k.editorsCache[y];if(!w.jqxWidget&&b(A).children()[0]&&b(b(A).children()[0]).data().jqxWidget){w=b(b(A).children()[0]).data()}E(w)}}if(C!=u){k.beginUpdate();k._raiseEvent("cellValueChanged",{value:C,oldValue:u,dataField:v.datafield,displayField:v.displayfield,key:p,index:l,row:t});k.endUpdate(false)}}};k.updaterowbykey(k.editKey,h,false,s)}}if(!d){return false}}k._detachEditors(e);return true},_detachEditors:function(l){var g=this;var m=g.rowsByKey[l];var i=g.getrowindex(m);if(g.editorsCache){for(var h in g.editorsCache){var f=b(g.editorsCache[h]).data();if(f&&f.jqxWidget){var c=f.jqxWidget.element.className;if(c.indexOf("dropdownlist")>=0||c.indexOf("datetimeinput")>=0||c.indexOf("combobox")>=0||c.indexOf("menu")>=0){if(f.jqxWidget.isOpened){var e=f.jqxWidget.isOpened();if(e){f.jqxWidget.close()}}}}b(g.editorsCache[h]).detach()}}g.beginUpdate();var d=g.getrowdisplayindex(m);if(g.editSettings.editSingleCell){var m=g.rowsByKey[l];var k=null;var j=null;if(m){k=m[g.editColumn.datafield];j=m[g.editColumn.displayfield]}g._raiseEvent("cellEndEdit",{value:k,displayValue:j,key:l,index:d,dataField:g.editColumn.datafield,displayField:g.editColumn.displayfield,boundIndex:i,row:g.rowsByKey[l]})}g._raiseEvent("rowEndEdit",{key:l,index:d,boundIndex:i,row:g.rowsByKey[l]});g.endUpdate(false);g.editColumn=null;g.editKey=null;g._renderrows();g._renderhorizontalscroll();g.host.focus();setTimeout(function(){g.host.focus()},10)},_showvalidationpopup:function(r,e,s,m){if(s==undefined){var s=this.gridlocalization.validationstring}m.addClass(this.toThemeProperty("jqx-grid-validation-label"));var p=b("<div style='z-index: 99999; top: 0px; left: 0px; position: absolute;'></div>");var o=b("<div style='width: 20px; height: 20px; z-index: 999999; top: 0px; left: 0px; position: absolute;'></div>");p.html(s);o.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));p.addClass(this.toThemeProperty("jqx-grid-validation"));p.addClass(this.toThemeProperty("jqx-rc-all"));p.hide();o.hide();p.prependTo(this.table);o.prependTo(this.table);var h=this.hScrollInstance;var j=h.value;var g=parseInt(j);var l=this.getColumn(e).uielement;if(!r){return}var k=r;p.css("top",parseInt(k.position().top)+30+"px");var c=parseInt(p.css("top"));o.css("top",c-11);o.removeClass();o.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));var f=false;if(c>=this._table.height()){o.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));o.addClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));c=parseInt(k.position().top)-k.outerHeight()-5;if(c<0){c=0;o.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));f=true}p.css("top",c+"px");o.css("top",c+p.outerHeight()-9)}var n=-g+parseInt(b(l).position().left);var q=parseInt(this._table.css("left"));if(isNaN(q)){q=0}if(q!=0){g=0}o.css("left",g+n+30);var d=p.width();if(d+n>this.host.width()-20){var i=d+n-this.host.width()+40;n-=i}if(!f){p.css("left",g+n)}else{p.css("left",g+parseInt(b(l).position().left)-p.outerWidth())}m.mouseenter(function(){if(m.hasClass("jqx-grid-validation-label")){p.show();o.show()}});m.mouseleave(function(){p.hide();o.hide()});if(!this.popups){this.popups=new Array()}this.popups[this.popups.length]={validation:p,validationrow:o}},addRow:function(d,p,j,n){if(p!=undefined){this._datachanged=true;if(j==undefined){j="last"}var o=false;var k=this.that;if(d==null){var f=this.dataview.filters&&this.dataview.filters.length>0;var m=!f?this.dataview.totalrecords:this.source.records.length;if(!this.pageable){if(this.source._source.totalrecords){this.dataview.totalrecords=this.source._source.totalrecords}else{if(this.source._source.totalRecords){this.dataview.totalrecords=this.source._source.totalRecords}else{if(this.source.hierarchy.length!==0){this.dataview.totalrecords=this.source.hierarchy.length}else{this.dataview.totalrecords=this.source.records.length}}}var m=!f?this.dataview.totalrecords:this.source.records.length}if(!b.isArray(p)){d=this.dataview.getid(this.dataview.source.id,p,m);if(this.getColumn(this.dataview.source.id)){p[this.dataview.source.id]=d}}else{var c=new Array();b.each(p,function(e,q){var r=k.dataview.getid(k.dataview.source.id,p[e],m+e);c.push(r);if(k.getColumn(k.dataview.source.id)){p[e][k.dataview.source.id]=r}});d=c}}else{if(!b.isArray(p)){if(this.getColumn(this.dataview.source.id)){p[this.dataview.source.id]=d}}else{b.each(p,function(e,q){var r=d[e];if(k.getColumn(k.dataview.source.id)){p[e][k.dataview.source.id]=r}})}}var i=this.treeGrid?(this.treeGrid.virtualModeCreateRecords?true:false):false;var g=function(t,e,y,r){if(t._loading){throw new Error("jqxDataTable: "+t.loadingErrorMessage);return false}var q=t.vScrollInstance.value;var x=false;if(!b.isArray(y)){y.uid=e;t.rowsByKey[e]=y;if(e==n){n=null}x=t.source.addRecord(y,r,n,i)}else{b.each(y,function(z,A){var B=null;if(e!=null&&e[z]!=null){B=e[z]}this.uid=B;t.rowsByKey[B]=this;if(e==n){n=null}x=t.source.addRecord(this,r,n,i)})}if(t.groups&&t.groups.length>0){var u=Object.prototype.toString;var w=t.groups[0];Object.prototype.toString=(typeof w=="function")?w:function(){return this[w]};if(!t.source.records.sort){var v=new Array();var s=0;b.each(data,function(){v[startindex+s++]=this});data=v}t.source.records.sort(function(A,z){if(A===undefined){A=null}if(z===undefined){z=null}if(A===null&&z===null){return 0}if(A===null&&z!==null){return -1}if(A!==null&&z===null){return 1}var D=0;var C=0;if(A&&A.uid){D=A.uid}if(z&&z.uid){C=z.uid}A=A.toString();z=z.toString();if(b.jqx.dataFormat.isNumber(A)&&b.jqx.dataFormat.isNumber(z)){if(A<z){return -1}if(A>z){return 1}return 0}else{if(b.jqx.dataFormat.isDate(A)&&b.jqx.dataFormat.isDate(z)){if(A<z){return -1}if(A>z){return 1}return 0}else{if(!b.jqx.dataFormat.isNumber(A)&&!b.jqx.dataFormat.isNumber(z)){A=String(A).toLowerCase();z=String(z).toLowerCase()}}}try{if(A<z){return -1}if(A>z){return 1}}catch(B){var E=B}if(typeof(D)=="number"){if(D<C){return -1}if(D>C){return 1}}return 0});Object.prototype.toString=u}t.dataview._filteredData=null;t.dataview._sortData=null;t.dataview._sortHierarchyData=null;if(t._updating==undefined||t._updating==false){t.refresh()}if(t.source&&t.source._knockoutdatasource&&!t._updateFromAdapter&&t.autokoupdates){if(t.source._source._localdata){t.source.suspendKO=true;t.source._source._localdata.push(y);t.source.suspendKO=false}}t.vScrollInstance.setPosition(q);return x};if(this.source.addrow){var h=function(e,q){if(e==true||e==undefined){if(q!=undefined){d=q}g(k,d,p,j)}};try{if(!k.treeGrid){o=this.source.addrow(d,p,j,h)}else{o=this.source.addrow(d,p,j,n,h)}if(o==undefined){o=true}}catch(l){o=false}if(o==false){return false}}else{g(this,d,p,j)}return o}return false},deleteRow:function(c){var d=this._getkey(c);this.deleterowbykey(d)},deleterowbykey:function(g){if(g!=undefined){this._datachanged=true;var h=false;var f=this.that;var d=function(m,l){if(m._loading){throw new Error("jqxDataTable: "+m.loadingErrorMessage);return false}m.dataview._filteredData=null;m.dataview._sortData=null;m.dataview._sortHierarchyData=null;var o=false;var p=m.vScrollInstance.value;if(!b.isArray(l)){var o=false;if(m.rowsByKey[l]){o=true;if(m.rowinfo[l].selected){m.unselectrowbykey(l,false)}if(m.treeGrid){var n=m._names();var k=m.rowsByKey[l][n.parent]}delete m.rowsByKey[l];if(m.treeGrid){if(m.rowinfo[l]){var i=m.rowinfo[l].row.records;var j=function(q){for(var r=0;r<q.length;r++){var s=q[r].uid;delete m.rowsByKey[s];delete m.rowinfo[s];if(q[r].records){j(q[r].records)}}};if(i){j(i)}}}delete m.rowinfo[l];m.source.deleteRecord(l);if(k){if(n&&k.records&&k.records.length==0){k[n.leaf]=true;m.rowinfo[k.uid][n.leaf]=true}}}}else{b.each(l,function(){var t=this;if(m.rowsByKey[t]){o=true;if(m.rowinfo[t].selected){m.unselectrowbykey(t,false)}if(m.treeGrid){var u=m._names();var s=m.rowsByKey[t][u.parent]}delete m.rowsByKey[t];if(m.treeGrid){if(m.rowinfo[t]){var q=m.rowinfo[t].row.records;var r=function(v){for(var w=0;w<v.length;w++){var x=v[w].uid;delete m.rowsByKey[x];delete m.rowinfo[x];if(v[w].records){r(v[w].records)}}};if(q){r(q);delete m.rowinfo[t]}}}m.source.deleteRecord(t);if(s){if(u&&s.records&&s.records.length==0){s[u.leaf]=true;m.rowinfo[s.uid][u.leaf]=true}}}})}m.refresh();if(m.source&&m.source._knockoutdatasource&&!m._updateFromAdapter&&m.autokoupdates){if(m.source._source._localdata){m.source.suspendKO=true;m.source._source._localdata.pop(rowdata);m.source.suspendKO=false}}m.vScrollInstance.setPosition(p);return o};if(this.source.deleterow){var c=function(i){if(i==true||i==undefined){d(f,g)}};try{this.source.deleterow(g,c);if(h==undefined){h=true}}catch(e){h=false}}else{h=d(f,g)}return h}return false},updateRow:function(c,e){var d=this._getkey(c);this.updaterowbykey(d,e)},updaterowbykey:function(c,k,g,i){if(c!=undefined&&k!=undefined){var f=this.that;var j=false;var d=function(o,l,t){if(o._loading){throw new Error("jqxDataTable: "+o.loadingErrorMessage);return false}o.dataview._filteredData=null;o.dataview._sortData=null;o.dataview._sortHierarchyData=null;var r=false;if(!b.isArray(l)){var n=o.rowsByKey[l];var s=function(v){if(!v){r=false}else{for(var u=0;u<o.columns.records.length;u++){v[o.columns.records[u].datafield]=t[o.columns.records[u].datafield];if(o.groups.length>0&&v.originalRecord){v.originalRecord[o.columns.records[u].datafield]=t[o.columns.records[u].datafield]}}r=true}};s(n);if(o.treeGrid){n=o.treeGrid.getRow(l);s(n)}}else{b.each(l,function(w,x){var v=o.rowsByKey[this];var u=function(z,y){if(!v){r=false}else{v[this]=t[w]}r=true};u(this,v);if(o.treeGrid){v=o.treeGrid.getRow(this);u(this,v)}})}var m=o.vScrollInstance.value;if(g==undefined||g==true){if(o._updating==undefined||o._updating==false){o._renderrows()}}if(o.showAggregates&&o._updatecolumnsaggregates){o._updatecolumnsaggregates()}if(o.source&&o.source._knockoutdatasource&&!o._updateFromAdapter&&o.autokoupdates){if(o.source._source._localdata){var n=o.rowsByKey[l];var p=o.getrowindex(n);var q=o.source._source._localdata()[p];o.source.suspendKO=true;o.source._source._localdata.replace(q,b.extend({},n));o.source.suspendKO=false}}o.vScrollInstance.setPosition(m);o._renderrows(false);return r};if(this.source.updaterow){var e=function(l){if(l==true||l==undefined){d(f,c,k);if(i){i()}}};try{j=this.source.updaterow(c,k,e);if(j==undefined){j=true}}catch(h){j=false}}else{j=d(f,c,k);if(j&&i){i()}}return j}return false},lockRow:function(c){var d=this._getkey(c);this.lockrowbykey(d)},unlockRow:function(c){var d=this._getkey(c);this.unlockrowbykey(d)},lockrowbykey:function(c){if(this.rowinfo[c]){this.rowinfo[c].locked=true}else{this.rowinfo[c]={locked:true}}this._renderrows()},unlockrowbykey:function(c){if(this.rowinfo[c]){this.rowinfo[c].locked=false}else{this.rowinfo[c]={locked:false}}this._renderrows()},selectRow:function(c){var d=this._getkey(c);this.selectrowbykey(d)},unselectRow:function(c){var d=this._getkey(c);this.unselectrowbykey(d)},selectrowbykey:function(e,h,f){if(h!="keyboard"&&h!="mouse"){this._lastSelectedKey=e}var g=f!==false?true:false;this._doSelection(e,true,g);var i=this.rowsByKey[e];var d=this.getrowindex(i);var c=this.getrowdisplayindex(i);this._raiseEvent("rowSelect",{key:e,index:c,boundIndex:d,row:this.rowsByKey[e]})},unselectrowbykey:function(e,f){var g=f!==false?true:false;this._doSelection(e,false,g);var h=this.rowsByKey[e];var d=this.getrowindex(h);var c=this.getrowdisplayindex(h);this._raiseEvent("rowUnselect",{key:e,index:c,boundIndex:d,row:this.rowsByKey[e]})},getSelection:function(){var c=new Array();if(this.rowinfo){for(var e in this.rowinfo){var d=this.rowinfo[e];if(d.selected){c.push(d.row)}}}return c},showdetailsbykey:function(k){if(!this.rowDetails){return}var l=this.rowinfo[k];if(l){l.expanded=true;var f=b(this._table.children()[1]).children(("[data-key="+k+"]"));var i=b(this._pinnedTable.children()[1]).children(("[data-key="+k+"]"));if(f){var c=i.children();var h=b(c[0]);if(this.rtl){var h=b(c[c.length-1])}if(!this.rtl){h.removeClass(this.toThemeProperty("jqx-grid-group-collapse"));h.addClass(this.toThemeProperty("jqx-grid-group-expand"));h.removeClass(this.toThemeProperty("jqx-icon-arrow-right"));h.addClass(this.toThemeProperty("jqx-icon-arrow-down"))}else{h.removeClass(this.toThemeProperty("jqx-grid-group-collapse-rtl"));h.addClass(this.toThemeProperty("jqx-grid-group-expand-rtl"));h.removeClass(this.toThemeProperty("jqx-icon-arrow-left"));h.addClass(this.toThemeProperty("jqx-icon-arrow-down"))}f.next().show();var d=i.next();d.show();if(b.jqx.browser.msie&&b.jqx.browser.version<8){f.next().children().show();i.next().children().show()}if(!l.initialized){var j=l.detailsHeight;var m=this.initRowDetails(k,l.row,b(b(d).children().children().children()[0]),l);l.details=b(d).children().children().children()[0];l.initialized=true;if(m===false||l.detailsHeight!=j){if(m===false){l.expanded=false;l.nodetails=true;d.hide()}this._renderrows()}}this._updateScrollbars();if(this.height==="auto"||this.height===null||this.autoheight){this._arrange()}var g=this.getrowindex(l.row);var e=this.getrowdisplayindex(l.row);this._raiseEvent("rowExpand",{row:l.row,index:e,boundIndex:g,rowKey:k})}}},hidedetailsbykey:function(h){if(!this.rowDetails){return}var j=this.rowinfo[h];if(j){j.expanded=false;var d=b(this._table.children()[1]).children(("[data-key="+h+"]"));var e=b(this._pinnedTable.children()[1]).children(("[data-key="+h+"]"));if(d){var g=e.children();var i=b(g[0]);if(this.rtl){var i=b(g[g.length-1])}if(!this.rtl){i.addClass(this.toThemeProperty("jqx-grid-group-collapse"));i.removeClass(this.toThemeProperty("jqx-grid-group-expand"));i.addClass(this.toThemeProperty("jqx-icon-arrow-right"));i.removeClass(this.toThemeProperty("jqx-icon-arrow-down"))}else{i.addClass(this.toThemeProperty("jqx-grid-group-collapse-rtl"));i.removeClass(this.toThemeProperty("jqx-grid-group-expand-rtl"));i.addClass(this.toThemeProperty("jqx-icon-arrow-left"));i.removeClass(this.toThemeProperty("jqx-icon-arrow-down"))}d.next().hide();e.next().hide();if(b.jqx.browser.msie&&b.jqx.browser.version<8){d.next().children().hide();e.next().children().hide()}this._updateScrollbars();if(this.height==="auto"||this.height===null||this.autoheight){this._arrange()}var f=this.getrowindex(j.row);var c=this.getrowdisplayindex(j.row);this._raiseEvent("rowCollapse",{row:j.row,index:c,boundIndex:f,rowKey:h})}}},_getvirtualcolumnsindexes:function(d,l,h,k,c){if(this.rowDetails||this.rtl||this.editcell||(this.width&&this.width.toString().indexOf("%")>=0)||this.exporting){return{start:0,end:h+k}}var e=0;var i=-1;var f=h+k;if(this.autorowheight){return{start:0,end:h+k}}if(!c){for(var g=0;g<h+k;g++){var m=g;if(!this.columns.records[g].hidden){e+=this.columns.records[g].width}if(e>=d&&i==-1){i=g}if(e>l+d){f=g;break}}}f++;if(f>h+k){f=h+k}if(i==-1){i=0}return{start:i,end:f}},_renderhorizontalscroll:function(){var t=this.hScrollInstance;var u=t.value;if(this.hScrollBar.css("visibility")==="hidden"){t.value=0;u=0}var h=parseInt(u);if(this.table==null){return}var q=this.columnsrow;var r=0;var i=this.columns.records.length-r;var e=this.columns.records;var l=this.source.records.length==0;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){h=t.max-h}}if(l&&!this._haspinned){this.table[0].style.left=-h+"px";q[0].style.marginLeft=-h+"px"}else{if(this._haspinned||this._haspinned==undefined){for(var w=0;w<r+i;w++){var f=e[w];if(f.pinned){var g=null;if(this.showAggregates){if(this.statusbar[0].cells){g=this.statusbar[0].cells[w]}}if(this.filterrow){if(this.filterrow[0].cells){filtercell=this.filterrow[0].cells[w]}}if(!this.rtl){var c=q[0].cells[w];c.style.marginLeft=h+"px";if(g){g.style.marginLeft=h+"px"}if(this.filterrow&&filtercell){filtercell.style.marginLeft=h+"px"}}else{var c=q[0].cells[w];c.style.marginLeft=-parseInt(u)+"px";if(g){g.style.marginLeft=-parseInt(u)+"px"}if(this.filterrow&&filtercell){filtercell.style.marginLeft=-parseInt(u)+"px"}}}}if(this.columnsVirtualization){var s=this._getvirtualcolumnsindexes(h,this.host.width(),0,this.columns.records.length,false);var n=s.start;var p=s.end;for(var o=0;o<n;o++){var m=o;var v=this.columns.records[m].element[0];if(this.columns.records[m].pinned){continue}if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=p;o<this.columns.records.length;o++){var m=o;var v=this.columns.records[m].element[0];if(this.columns.records[m].pinned){continue}if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=n;o<p;o++){var m=o;v=this.columns.records[m].element[0];if(this.columns.records[m].pinned){continue}if(!v.parentNode){this.columnsrow[0].appendChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(!d.parentNode){this.filterrow[0].appendChild(d)}}}}this._table[0].style.left=-h+"px";q[0].style.marginLeft=-h+"px"}else{if(this._haspinned==false){if(this.columnsVirtualization){var s=this._getvirtualcolumnsindexes(h,this.host.width(),0,this.columns.records.length,false);var n=s.start;var p=s.end;for(var o=0;o<n;o++){var m=o;var v=this.columns.records[m].element[0];if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=p;o<this.columns.records.length;o++){var m=o;var v=this.columns.records[m].element[0];if(v.parentNode){v.parentNode.removeChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(d.parentNode){d.parentNode.removeChild(d)}}}for(var o=n;o<p;o++){var m=o;v=this.columns.records[m].element[0];if(!v.parentNode){this.columnsrow[0].appendChild(v)}if(this.filterrow&&this.filterrow[0]){var d=this.filterrow[0].cells[m];if(!d.parentNode){this.filterrow[0].appendChild(d)}}}}this.table[0].style.left=-h+"px";q[0].style.marginLeft=-h+"px"}}if(this.filterrow){this.filterrow[0].style.left=-h+"px";if(this.rtl){this.filterrow[0].style.left=-h+parseInt(this.content.css("left"))+"px"}}}if(this.showAggregates){if(this.aggregates[0].cells){var k=0;if(this.rtl){if(this.vScrollBar.css("visibility")!="hidden"){if(this.hScrollBar.css("visibility")!="hidden"){k=2+parseInt(this.hScrollBar.css("left"))}else{k=3+parseInt(this.vScrollBar.width())}}}this.aggregates[0].style.marginLeft=-h+k+"px"}}},_initializeColumns:function(){var d=this.source.datafields;if(d==null&&this.source._source){d=this.source._source.datafields}var k=d?d.length>0:false;if(this.columns&&this.columns.records){for(var e=0;e<this.columns.records.length;e++){this._removecolumnhandlers(this.columns.records[e])}}var j=this;var c=new b.jqx.dataCollection(this.element);var h=0;this._haspinned=false;if(!this._columns){this._columns=this.columns}else{this.columns=this._columns}if(this.selectionMode=="checkbox"){var f=new a(j,this);f.visibleindex=h++;f.width=j.indentWidth;f.checkboxcolumn=true;f.editable=false;f.columntype="checkbox";f.groupable=false;f.draggable=false;f.filterable=false;f.resizable=false;f.datafield="_checkboxcolumn";c.add(f)}if(this.rowDetails&&!this.treeGrid){var f=new a(j,this);f.visibleindex=h++;f.width=j.indentWidth;f.editable=false;f.rowDetailscolumn=true;f.groupable=false;f.draggable=false;f.pinned=true;f.filterable=false;f.resizable=false;f.text="";c.add(f)}var g=new Array();b.each(this.columns,function(i){if(j.columns[i]!=undefined){var l=new a(j,this);l.visibleindex=h++;if(this.dataField!=undefined){this.datafield=this.dataField}if(this.pinned){j._haspinned=true}if(this.datafield==null){if(j.source&&j.source._source&&(j.source._source.datatype=="array")){if(!k){if(!j.source._source.datafields){j.source._source.datafields=new Array();j.source._source.datafields.push({name:i.toString()})}else{j.source._source.datafields.push({name:i.toString()})}}this.datafield=i.toString();this.displayfield=i.toString();l.datafield=this.datafield;l.displayfield=this.displayfield}}else{if(g[this.datafield]){throw new Error("jqxDataTable: Invalid column 'dataField' setting. jqxDataTable's columns should be initialized with unique data fields.");j.host.remove();return false}else{g[this.datafield]=true}}c.add(l)}});if(this.rtl){c.records.reverse()}this.columns=c},addFilter:function(c,e){var d=this.getColumn(c);if(!d){return}this.dataview.addFilter(c,e)},removeFilter:function(c){var d=this.getColumn(c);if(!d){return}this.dataview.removeFilter(c)},clearFilters:function(d,c){this.dataview.filters=new Array();this.dataview._filteredData=null;this.dataview._sortData=null;this.dataview._sortHierarchyData=null;if(c!==false){this.resetfilter()}if(d===false){return}this.applyFilters()},resetfilter:function(){if(this.filterinput){this.filterinput.val("")}if(this.filterrow){for(var e=0;e<this.filterrow[0].cells.length;e++){var c=this.filterrow[0].cells[e];var d=b(c).find("input:first");var h=b(c).find(".filterconditions");var g=this.columns.records[e];var k="";if(!g.filterable){continue}d.val("");var j=this.getcolumntypebydatafield(g);var f=new b.jqx.filter();switch(j){case"number":case"int":case"float":case"decimal":filtertype="numericfilter";conditions=f.getoperatorsbyfiltertype("numericfilter");break;case"boolean":case"bool":filtertype="booleanfilter";conditions=f.getoperatorsbyfiltertype("booleanfilter");break;case"date":case"time":filtertype="datefilter";conditions=f.getoperatorsbyfiltertype("datefilter");break;case"string":filtertype="stringfilter";conditions=f.getoperatorsbyfiltertype("stringfilter");break}if(h.length>0){if(filtertype==="stringfilter"){h.jqxDropDownList({selectedIndex:2})}else{h.jqxDropDownList({selectedIndex:0})}}}}},applyFilters:function(){if(this.editable){if(this.editKey!=null){var c=this.endroweditbykey(this.editKey)}}this.dataview._filteredData=null;this.dataview._sortData=null;this.dataview._sortHierarchyData=null;if(this.serverProcessing){this.dataview.pagenum=0;this.updateBoundData("filter")}else{this.goToPage(0);this.refresh()}if(arguments&&arguments.length>0){if(this._updateSimpleFilter){if(this.filtercolumnsList){var d=this.filtercolumnsList.jqxDropDownList("getSelectedItem").value;this._updateSimpleFilter(d)}}if(this._updateFilterRow){this._updateFilterRow()}}this._raiseEvent("filter",{filters:this.dataview.filters})},sortBy:function(d,f){this.dataview._filteredData=null;this.dataview._sortData=null;this.dataview._sortHierarchyData=null;if(this._loading){throw new Error("jqxDataTable: "+this.loadingErrorMessage);return false}if(this.editable){if(this.editKey!=null){var c=this.endroweditbykey(this.editKey)}}if(d==null){f=null;d=this.sortcolumn}if(d){var e=this;if(f=="a"||f=="asc"||f=="ascending"||f==true){ascending=true}else{ascending=false}if(f!=null){e.sortdirection={ascending:ascending,descending:!ascending}}else{e.sortdirection={ascending:false,descending:false}}if(f!=null){e.sortcolumn=d}else{e.sortcolumn=null}if(e.source.sort){e.dataview.sortfield=d;if(f==null){e.dataview.sortfielddirection=""}else{e.dataview.sortfielddirection=ascending?"asc":"desc"}if(e.source.sort&&!this._loading){e.source.sort(d,f)}}e.dataview.sortBy(d,f);e._raiseEvent("sort",{sortcolumn:this.sortcolumn,sortdirection:this.sortdirection})}if(!this.serverProcessing){this.refresh()}else{this.updateBoundData("sort")}},_togglesort:function(d){var f=this;if(this.disabled){return}if(d.sortable&&f.sortable){var c={sortcolumn:this.sortcolumn,sortdirection:this.sortdirection};var e=null;if(c.sortcolumn!=null&&c.sortcolumn==d.displayfield){e=c.sortdirection.ascending;if(e==true){e=false}else{e=null}}else{e=true}f.sortBy(d.displayfield,e)}},_renderfilter:function(){var h=this;var j=b("<div style='position: relative; margin: 4px;'><input style='height: 22px; direction: ltr;' role='textbox' type='text'/><div style='cursor: pointer; height: 100%;'><div></div></div></div>");j.height(22);var o=j.find("input");var g=j.find("div:first");j.addClass(this.toThemeProperty("jqx-rc-all"));j.addClass(this.toThemeProperty("jqx-widget"));j.addClass(this.toThemeProperty("jqx-input-group"));o.addClass(this.toThemeProperty("jqx-input"));o.addClass(this.toThemeProperty("jqx-rc-l"));o.addClass(this.toThemeProperty("jqx-input-group-addon"));o.addClass(this.toThemeProperty("jqx-widget"));o.addClass(this.toThemeProperty("jqx-widget-content"));g.addClass(this.toThemeProperty("jqx-fill-state-normal"));g.addClass(this.toThemeProperty("jqx-rc-r"));g.addClass(this.toThemeProperty("jqx-input-group-addon"));g.find("div").addClass(this.toThemeProperty("jqx-icon-search"));if(this.rtl){o.addClass(this.toThemeProperty("jqx-rtl"));o.css("direction","rtl")}this.filter.children().remove();this.filterbutton=g;var d=new Array();for(var f=0;f<h.columns.records.length;f++){if(h.columns.records[f].datafield&&h.columns.records[f].filterable){d.push({label:h.columns.records[f].text,value:h.columns.records[f].displayfield})}}var p=d.length<10?true:false;var l=b("<div style='position: relative; top: 50%; display: none; margin-right: 4px; margin-left: 4px; float: left;'>"+this.gridlocalization.filtersearchstring+"</div>");this.filter.append(l);var c=b("<div class='filtercolumns' style='position: relative; margin: 4px; float: left;'></div>");this.filter.append(c);if(c.jqxDropDownList){c.jqxDropDownList({theme:this.theme,enableBrowserBoundsDetection:true,autoDropDownHeight:p,rtl:h.rtl,dropDownWidth:220,selectedIndex:0,width:"auto",height:20,source:d,displayMember:"label",valueMember:"value"})}this.filtercolumnsList=c;var n=function(q){h.filterinput.val("");for(var r=0;r<h.dataview.filters.length;r++){var s=h.dataview.filters[r];if(s.datafield===q){h.filterinput.val(s.filter.getfilterat(0).filtervalue)}}};if(h.filterHeight!==30){h.filtercolumnsList.css("margin-top",h.filterHeight/2-10);j.css("margin-top",h.filterHeight/2-10)}h._updateSimpleFilter=n;this.addHandler(c,"select",function(q){var i=q.args.item.value;n(i)});if(this.filterMode==="simple"){this.filtercolumnsList.hide();l.show();l.css("margin-top",-this.filter.height()/2);j.css("float","left")}else{this.filtercolumnsList.show();l.hide()}var m=function(){if(!g.hasClass("jqx-fill-state-disabled")){var r=o.val();if(c.jqxDropDownList){var u=c.jqxDropDownList("getSelectedItem")}var w=function(B,x,i){var A=new b.jqx.filter();var z=h.getcolumntypebydatafield(B);var C=h._getfiltertype(z);if(C=="datefilter"){var y=A.createfilter(C,x,"EQUAL",null,B.cellsFormat,h.gridlocalization)}else{if(C=="numericfilter"||C=="booleanfilter"){if(C=="numericfilter"){if(h.gridlocalization.decimalseparator==","){if(x.indexOf(h.gridlocalization.decimalseparator)>=0){x=x.replace(h.gridlocalization.decimalseparator,".")}}if(x.indexOf(h.gridlocalization.currencysymbol)>=0){x=x.replace(h.gridlocalization.currencysymbol,"")}if(x.indexOf(h.gridlocalization.percentagesymbol)>=0){x=x.replace(h.gridlocalization.percentagesymbol,"")}}var y=A.createfilter(C,x,"EQUAL",null,B.cellsFormat,h.gridlocalization)}else{var y=A.createfilter(C,x,"CONTAINS")}}A.operator=i;A.addfilter(0,y);return A};if(h.filterMode!=="simple"){if(u){var v=u.value;var t=h.getColumn(v);var s=w(t,r,"and");if(r.length>0){h.removeFilter(v);h.addFilter(v,s);h.applyFilters()}else{h.removeFilter(v);h.applyFilters()}if(h.filterMode==="advanced"){if(h._updateFilterRow){h._updateFilterRow(true)}}}}else{h.clearFilters(false,false);if(r.length>0){for(var q=0;q<h.columns.records.length;q++){var t=h.columns.records[q];var s=w(t,r,"or");h.addFilter(t.datafield,s)}}h.applyFilters()}if(h.dataview.filters.length==0){h.filtericon.fadeOut(200)}else{h.filtericon.fadeIn(200)}}};o.keydown(function(i){if(i.keyCode===13){m();if(i.preventDefault){i.preventDefault()}return false}});g.click(function(){m()});this.filterinput=o;this.filter.append(j);if(this.filterMode=="advanced"){var e=b("<a style='float: left; position: relative; margin: 2px; margin-left: 10px;' href='#'>"+this.gridlocalization.filterstring+"</a>");j.append(e);this.addHandler(e,"click",function(q){var i=function(u){if(h.filterrow){for(var x=0;x<h.filterrow[0].cells.length;x++){var t=h.filterrow[0].cells[x];var v=b(t).find("input:first");var z=h.columns.records[x];if(!z.filterable){continue}if(u===true){v.val("")}for(var w=0;w<h.dataview.filters.length;w++){var y=h.dataview.filters[w];if(y.datafield===z.displayfield){v.val(y.filter.getfilterat(0).filtervalue);break}}}}};var s=function(v){if(h.filterrow){var u=0;for(var x=0;x<h.filterrow[0].cells.length;x++){var t=h.filterrow[0].cells[x];var w=b(t).find("input:first");var y=h.columns.records[x];if(y.hidden){t.style.visibility="hidden"}else{t.style.visibility="inherit"}if(!y.filterable){continue}t.style.left=parseInt(u)+parseInt(y.uielement[0].style.left)+"px";t.style.width=6+y.width+"px";if(w[0]){w[0].style.width=y.width-6-22+"px"}}}};h._updateFilterRow=i;h._arrangeFilterRow=s;var r=function(){h.filtercolumnsList.jqxDropDownList({disabled:true});h.filterinput.addClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filterinput.attr("disabled",true);h.filterbutton.addClass(h.toThemeProperty("jqx-fill-state-disabled"))};if(h.filter.find(".filterrow").length===0){h._renderadvancedfilter();r();i();h._arrange();s()}else{if(h.filter.find(".filterrow").css("display")==="none"){r();h.filter.find(".filterrow").removeClass("filterrow-hidden");i();h.filter.find(".filterrow").show();s()}else{h.filtercolumnsList.jqxDropDownList({disabled:false});h.filterinput.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filterinput.attr("disabled",false);h.filterbutton.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));n(h.filtercolumnsList.jqxDropDownList("getSelectedItem").value);h.filter.find(".filterrow").addClass("filterrow-hidden");h.filter.find(".filterrow").hide()}h._arrange()}return false})}var k=b("<div style='float: left; width: 16px; height: 16px; position: relative; margin: 3px;'></div>");k.attr("title",h.gridlocalization.filterclearstring);k.addClass(h.toThemeProperty("jqx-icon-close"));j.append(k);k.hide();h.filtericon=k;k.click(function(){h.clearFilters();h.filtericon.fadeOut(200)});if(h.dataview.filters.length>0){if(h.filterMode!="advanced"){n(h.dataview.filters[0].datafield)}else{if(h._updateFilterRow){h._updateFilterRow()}}}},_renderadvancedfilter:function(){var h=this;var c=function(){h.clearFilters(false,false);var n=h.filtercolumnsList.jqxDropDownList("getSelectedItem").value;var p=h.filterinput.val();for(var m=0;m<h.filterrow[0].cells.length;m++){var t=h.filterrow[0].cells[m];var s=b(t).find("input:first");var q=b(t).find(".filterconditions");var l=h.columns.records[m];var k="";if(!l.filterable){continue}if(l.displayfield===n){h.filterinput.val(s.val())}var o=h.getcolumntypebydatafield(l);var j=new b.jqx.filter();switch(o){case"number":case"int":case"float":case"decimal":filtertype="numericfilter";conditions=j.getoperatorsbyfiltertype("numericfilter");break;case"boolean":case"bool":filtertype="booleanfilter";conditions=j.getoperatorsbyfiltertype("booleanfilter");break;case"date":case"time":filtertype="datefilter";conditions=j.getoperatorsbyfiltertype("datefilter");break;case"string":filtertype="stringfilter";conditions=j.getoperatorsbyfiltertype("stringfilter");break}if(q.length==0){if(filtertype==="stringfilter"){k=conditions[2]}else{k=conditions[0]}}else{var w=q.jqxDropDownList("getSelectedItem");if(w){k=conditions[w.index]}else{if(filtertype==="stringfilter"){k=conditions[2]}else{k=conditions[0]}}}var u=s.val();if(u.length>0||(u.length==0&&k=="NOT_NULL")||(u.length==0&&k=="NOT_EMPTY")||(u.length==0&&k=="EMPTY")||(u.length==0&&k=="NULL")){var r=l.displayfield;var v=new b.jqx.filter();if(filtertype=="numericfilter"){if(h.gridlocalization.decimalseparator==","){if(u.indexOf(h.gridlocalization.decimalseparator)>=0){u=u.replace(h.gridlocalization.decimalseparator,".")}}if(u.indexOf(h.gridlocalization.currencysymbol)>=0){u=u.replace(h.gridlocalization.currencysymbol,"")}if(u.indexOf(h.gridlocalization.percentagesymbol)>=0){u=u.replace(h.gridlocalization.percentagesymbol,"")}}var j=v.createfilter(filtertype,u,k,null,l.cellsFormat,h.gridlocalization);v.addfilter(0,j);h.addFilter(r,v)}}if(h.dataview.filters.length>0){h.applyFilters()}else{h.clearFilters()}if(h.dataview.filters.length==0){h.filtericon.fadeOut(200)}else{h.filtericon.fadeIn(200)}};var e=function(){var m=b("<div style='position: relative;' class='filterrow'></div>").appendTo(h.filter);h.filterrow=m;m[0].cells=new Array();m.height(24);m.width(h.table.width());var k=0;var j=h.filtercolumnsList.jqxDropDownList("getSelectedItem").value;var l=h.filterinput.val();b.each(h.columns.records,function(){var p=this;var n=b("<div></div>").appendTo(m);n.css("position","absolute");n.css("left",k+parseInt(p.uielement[0].style.left));if(p.pinned){n.css("z-index",h.tableZIndex+h.columns.records.length);n.addClass(h.toThemeProperty("jqx-widget-header"))}m[0].cells.push(n[0]);if(!this.filterable){return true}var o=b("<input style='margin-left: 4px; height: 20px; float: left;' role='textbox' type='text'/>").appendTo(n);o.keydown(function(r){if(r.keyCode===13){c()}});if(p.displayfield===j){o.val(l)}o.addClass(h.toThemeProperty("jqx-input"));o.addClass(h.toThemeProperty("jqx-rc-all"));o.addClass(h.toThemeProperty("jqx-widget"));o.addClass(h.toThemeProperty("jqx-widget-content"));var q=b("<div style='cursor: pointer; margin-left: 4px; margin-bottom: 4px; margin-top: 6px; width: 18px; position: relative; margin-top: 4px; float: left;'></div>").appendTo(n);q.append(b("<div style='width: 16px; height: 16px;' class='"+h.toThemeProperty("jqx-grid-column-filterbutton")+"'></div>"));o.focus(function(){h.ensureColumnVisible(p.displayfield);h.filter[0].scrollLeft=0;h.ensureColumnVisible(p.displayfield);setTimeout(function(){h.filter[0].scrollLeft=0;h.ensureColumnVisible(p.displayfield)},10)});q.click(function(){var t=b("<div class='filterconditions' style='position: relative; margin-top: 1px; float: left;'></div>");t.insertAfter(q);q.remove();var r=h.getcolumntypebydatafield(p);var s=h._getfiltersbytype(r);if(r==="string"){index=2}else{index=0}t.jqxDropDownList({theme:h.theme,enableBrowserBoundsDetection:true,renderMode:"simple",arrowSize:0,selectedIndex:index,rtl:h.rtl,dropDownWidth:230,dropDownHeight:180,width:20,height:20,source:s,selectionRenderer:function(){return"<div style='width: 16px; height: 16px;' class='"+h.toThemeProperty("jqx-grid-column-filterbutton")+"'></div>"}});h.addHandler(t,"close",function(u){o.focus();setTimeout(function(){o.focus()},10)});t.removeAttr("tabindex");t.find("div").removeAttr("tabindex");t.jqxDropDownList("open")});o[0].style.width=p.width-6-22+"px"});b("<div style='clear: both;'></div>").appendTo(m)};e();var i=b("<div style='position:relative;' class='filterrow'></div>").appendTo(h.filter);var f=b("<input type='button' style='position: relative; float: left; margin-top: 4px; margin-left: 4px;' value='"+h.gridlocalization.filterapplystring+"'/>").appendTo(i);var g=b("<input type='button' style='position: relative; float: left; margin-top: 4px;  margin-left: 4px;' value='"+h.gridlocalization.filtercancelstring+"'/>").appendTo(i);var d=0;f.css("left",d);g.css("left",d);f.jqxButton({theme:h.theme});g.jqxButton({theme:h.theme});g.click(function(){h.filtercolumnsList.jqxDropDownList({disabled:false});h.filterinput.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filterinput.attr("disabled",false);h.filterbutton.removeClass(h.toThemeProperty("jqx-fill-state-disabled"));h.filter.find(".filterrow").addClass("filterrow-hidden");h.filter.find(".filterrow").hide();h._arrange()});f.click(function(){c()});h._renderhorizontalscroll()},_getfiltertype:function(c){var d="stringfilter";switch(c){case"number":case"int":case"float":case"decimal":d="numericfilter";break;case"boolean":case"bool":d="booleanfilter";break;case"date":case"time":d="datefilter";break;case"string":d="stringfilter";break}return d},getcolumntypebydatafield:function(e){var f=this;var d="string";var c=f.source.datafields||((f.source._source)?f.source._source.datafields:null);if(c){var g="";b.each(c,function(){if(this.name==e.displayfield){if(this.type){g=this.type}return false}});if(g){return g}}return d},_getfiltersbytype:function(c){var d=this;var e="";switch(c){case"number":case"float":case"int":e=d.gridlocalization.filternumericcomparisonoperators;break;case"date":e=d.gridlocalization.filterdatecomparisonoperators;break;case"boolean":case"bool":e=d.gridlocalization.filterbooleancomparisonoperators;break;case"string":default:e=d.gridlocalization.filterstringcomparisonoperators;break}return e},_getcellvalue:function(c,e){var d=null;d=e[c.datafield];if(c.displayfield!=null){d=e[c.displayfield]}if(d==null){d=""}return d},_renderrows:function(ap){if(this.editable){if(this.editKey!=null){if(ap!==false){var M=this.endroweditbykey(this.editKey)}}}if(this.treeGrid){this.treeGrid._renderrows();return}if(this._loading){return}if(this._updating){return}if(this.rendering){this.rendering()}var ab=this;var T=0;this.table[0].rows=new Array();var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-widget-content");if(this.rtl){H+=" "+this.toTP("jqx-cell-rtl")}var K=this.columns.records.length;var ao=b.jqx.browser.msie&&b.jqx.browser.version<8;if(ao){this.host.attr("hideFocus","true")}var R=ab.groups.length;var ai=new Array();var k=this.source.records;k=this.dataview.evaluate(k);this.dataViewRecords=k;if(this.dataview.pagesize=="all"||!this.pageable||this.serverProcessing){var u=k;if(this.pageable&&this.serverProcessing&&k.length>this.dataview.pagesize){var u=k.slice(this.dataview.pagesize*this.dataview.pagenum,this.dataview.pagesize*this.dataview.pagenum+this.dataview.pagesize)}}else{var u=k.slice(this.dataview.pagesize*this.dataview.pagenum,this.dataview.pagesize*this.dataview.pagenum+this.dataview.pagesize)}if(ab.groups&&ab.groups.length>0){var P=this.pageable?this.dataview.pagesize*this.dataview.pagenum:0;var z=function(w){var au=0;var i=new Array();for(var c=0;c<w.length;c++){var j=w[c];if(j.level==0){au++}if(au>ab.dataview.pagesize*ab.dataview.pagenum&&au<=ab.dataview.pagesize*ab.dataview.pagenum+ab.dataview.pagesize){i.push(j)}if(au>ab.dataview.pagesize*ab.dataview.pagenum+ab.dataview.pagesize){break}}return i};if(this.pageSizeMode==="root"){var v=ab.source.getGroupedRecords(ab.groups,"records","label",null,"data",null,"parent",k,0);ab.rootRecordsLength=v.length;v=z(v)}else{var v=ab.source.getGroupedRecords(ab.groups,"records","label",null,"data",null,"parent",u,P)}var y=function(j,w){for(var av=0;av<j.length;av++){var c=j[av];w.push(c);if(c.records&&c.records.length>0){var aw=y(c.records,new Array());for(var au=0;au<aw.length;au++){if(aw[au].leaf){w.push(aw[au])}else{w.push(aw[au])}}}}return w};var ai=y.call(ab,v,new Array());u=ai;this.rowsByKey=new Array();for(var am=0;am<u.length;am++){var G=u[am];this.rowsByKey[G.uid]=G}}var ai=u;this.renderedRecords=ai;var U=ai.length;var V=this.tableZIndex;var aq=0;var aa=0;if(ao){for(var al=0;al<K;al++){var Z=this.columns.records[al];var e=Z.width;if(e<Z.minwidth){e=Z.minwidth}if(e>Z.maxwidth){e=Z.maxwidth}var l=b('<table><tr><td role="gridcell" style="max-width: '+e+"px; width:"+e+'px;" class="'+H+'"></td></tr></table>');b(document.body).append(l);var n=l.find("td");aq=1+parseInt(n.css("padding-left"))+parseInt(n.css("padding-right"));l.remove();break}}var ak=this.rtl?" "+this.toTP("jqx-grid-table-rtl"):"";var B="<table cellspacing='0' cellpadding='0' class='"+this.toTP("jqx-grid-table")+ak+"' id='table"+this.element.id+"'><colgroup>";var ar="<table cellspacing='0' cellpadding='0' class='"+this.toTP("jqx-grid-table")+ak+"' id='pinnedtable"+this.element.id+"'><colgroup>";var I=0;var s=K;for(var al=0;al<K;al++){var Z=this.columns.records[al];if(Z.hidden){I++;s--;continue}var e=Z.width;if(e<Z.minwidth){e=Z.minwidth}if(e>Z.maxwidth){e=Z.maxwidth}e-=aq;if(e<0){e=0}if(ao){var ac=e;if(al==I){ac++}if(Z.rowDetailscolumn){var ac=ac+4;ar+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>";B+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>"}else{ar+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>";B+="<col style='max-width: "+ac+"px; width: "+ac+"px;'>"}}else{ar+="<col style='max-width: "+e+"px; width: "+e+"px;'>";B+="<col style='max-width: "+e+"px; width: "+e+"px;'>"}aa+=e}B+="</colgroup>";ar+="</colgroup>";this._hiddencolumns=false;var g=false;if(this.rowDetails&&this._pinnedTable){this._pinnedTable.find("[data-role=details]").detach();this._table.find("[data-role=details]").detach()}if(U===0){var o='<tr role="row">';var m=this.host.height();if(this.pageable){m-=this.pagerHeight;if(this.pagerPosition==="both"){m-=this.pagerHeight}}m-=this.columnsHeight;if(this.filterable){var ag=this.filter.find(".filterrow");var D=this.filter.find(".filterrow-hidden");var C=1;if(D.length>0){C=0}m-=this.filterHeight+this.filterHeight*ag.length*C}if(this.showstatusbar){m-=this.statusBarHeight}if(this.showAggregates){m-=this.aggregatesHeight}if(m<25){m=25}if(this.hScrollBar[0].style.visibility!="hidden"){m-=this.hScrollBar.outerHeight()}if(this.height==="auto"||this.height===null||this.autoheight){m=300}var l='<td colspan="'+this.columns.records.length+'" role="gridcell" style="border: none; min-height: '+m+"px; height: "+m+"px; max-width:"+aa+"px; width:"+aa+"px;";var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");H+=" "+this.toTP("jqx-center-align");l+='" class="'+H+'">';l+=this.gridlocalization.emptydatastring;l+="</td>";o+=l;B+=o;ar+=o;this.table[0].style.width=aa+2+"px";T=aa}var q=this.getRows();var x=new Array();for(var am=0;am<ai.length;am++){var G=ai[am];var L=G.uid;if(undefined===G.uid){G.uid=this.dataview.generatekey()}var o='<tr data-key="'+L+'" role="row" id="row'+am+this.element.id+'">';var E='<tr data-key="'+L+'" role="row" id="row'+am+this.element.id+'">';if(R>0){if(G.level<R){var o='<tr data-role="row-group" data-key="'+L+'" role="row" id="row'+am+this.element.id+'">';var E='<tr data-role="row-group" data-key="'+L+'" role="row" id="row'+am+this.element.id+'">'}}var p=0;var S=0;for(var al=0;al<K;al++){var ae=this.columns.records[al];if(ae.pinned||(this.rtl&&this.columns.records[K-1].pinned)){g=true}var e=ae.width;if(e<ae.minwidth){e=ae.minwidth}if(e>ae.maxwidth){e=ae.maxwidth}e-=aq;if(e<0){e=0}var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");if(ae.pinned){H+=" "+this.toTP("jqx-grid-cell-pinned")}if(this.sortcolumn===ae.displayfield){H+=" "+this.toTP("jqx-grid-cell-sort")}if(this.altRows&&am%2!=0){H+=" "+this.toTP("jqx-grid-cell-alt")}if(this.rtl){H+=" "+this.toTP("jqx-cell-rtl")}var O="";if(R>0){if(G.level<R){if(!ao){H+=" "+this.toTP("jqx-grid-cell-pinned");O+=' colspan="'+K+'"';var ac=0;for(var ad=0;ad<K;ad++){var at=ab.columns.records[ad];var A=at.width;if(A<at.minwidth){e=at.minwidth}if(A>at.maxwidth){e=at.maxwidth}A-=aq;if(A<0){A=0}if(!at.hidden){ac+=A}}e=ac}else{H+=" "+this.toTP("jqx-grid-cell-pinned")}}}var l='<td role="gridcell" '+O+' style="max-width:'+e+"px; width:"+e+"px;";var af='<td role="gridcell" '+O+' style="pointer-events: none; visibility: hidden; border-color: transparent; max-width:'+e+"px; width:"+e+"px;";if(al==K-1&&K==1){l+="border-right-color: transparent;";af+="border-right-color: transparent;"}var Y=false;if(R>0){if(G.level<R){Y=true}}if(!Y){if(ae.cellsalign!="left"){if(ae.cellsalign==="right"){H+=" "+this.toTP("jqx-right-align")}else{H+=" "+this.toTP("jqx-center-align")}}}else{if(this.rtl){H+=" "+this.toTP("jqx-right-align")}}if(this.rowinfo[G.uid]){if(this.rowinfo[G.uid].selected&&!ae.rowDetailscolumn){if(this.editKey!==G.uid){if(this.selectionMode!=="none"){H+=" "+this.toTP("jqx-grid-cell-selected");H+=" "+this.toTP("jqx-fill-state-pressed")}}}if(this.rowinfo[G.uid].locked){H+=" "+this.toTP("jqx-grid-cell-locked")}}if(!(ae.hidden)){p+=aq+e;if(S==0){l+="border-left-width: 0px;";af+="border-left-width: 0px;"}S++}else{if(!Y){l+="display: none;";af+="display: none;";this._hiddencolumns=true}}if(R>0&&ao&&Y&&al>=R){l+="font-size: 1px; border-color: transparent;  color: transparent;";af+="font-size: 1px; border-color: transparent; color: transparent;"}if(ae.pinned){l+="pointer-events: auto;";af+="pointer-events: auto;"}if(!Y&&ae.rowDetailscolumn){if(this.rowinfo[G.uid]){if(!this.rowinfo[G.uid].nodetails){if(this.rowinfo[G.uid].expanded){if(!this.rtl){H+=" "+this.toTP("jqx-grid-group-expand")}else{H+=" "+this.toTP("jqx-grid-group-expand-rtl")}H+=" "+this.toTP("jqx-icon-arrow-down")}else{if(!this.rtl){H+=" "+this.toTP("jqx-grid-group-collapse");H+=" "+this.toTP("jqx-icon-arrow-right")}else{H+=" "+this.toTP("jqx-grid-group-collapse-rtl");H+=" "+this.toTP("jqx-icon-arrow-left")}}}}else{if(!this.rtl){H+=" "+this.toTP("jqx-grid-group-collapse");H+=" "+this.toTP("jqx-icon-arrow-right")}else{H+=" "+this.toTP("jqx-grid-group-collapse-rtl");H+=" "+this.toTP("jqx-icon-arrow-left")}}}if(!this.autoRowHeight||(this.autoRowHeight&&!ae.autoCellHeight)){H+=" "+this.toTP("jqx-grid-cell-nowrap ")}var aj=ab._getcellvalue(ae,G);var f=ae.cellsFormat;if(R>0){if(G.level<R){aj=G.label;f=ab.getColumn(ab.groups[G.level]).cellsFormat}}if(f!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(aj)){aj=b.jqx.dataFormat.formatdate(aj,f,ab.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(aj)||(!isNaN(parseFloat(aj))&&isFinite(aj))){aj=b.jqx.dataFormat.formatnumber(aj,f,ab.gridlocalization)}}}}if(!Y){if(ae.cellclassname!=""&&ae.cellclassname){if(typeof ae.cellclassname=="string"){H+=" "+ae.cellclassname}else{var r=ae.cellclassname(am,ae.datafield,aj,G);if(r){H+=" "+r}}}if(ae.cellsRenderer!=""&&ae.cellsRenderer){var d=q.indexOf(G);if(d===-1){if(G.originalRecord){var d=q.indexOf(G.originalRecord)}}aj=ae.cellsRenderer(d,ae.datafield,aj,G);if(aj&&(aj.indexOf("<jqx-")>=0||aj.indexOf(" ng-")>=0)){x.push({rowKey:G.uid,row:d,column:ae.datafield,value:aj,columnIndex:al})}}}else{if(this.groupsRenderer){aj=this.groupsRenderer(aj,G,G.level)}}l+='" class="'+H+'">';l+=aj;l+="</td>";af+='" class="'+H+'">';af+=aj;af+="</td>";if(!ae.pinned){o+=l;if(g){E+=af}}else{E+=l;o+=l}if(R>0&&!ao){if(G.level<R){break}}}if(T==0){this.table[0].style.width=p+2+"px";T=p}o+="</tr>";E+="</tr>";B+=o;ar+=E;if(!this.rowinfo[G.uid]){this.rowinfo[G.uid]={group:Y,row:G,details:null,detailsHeight:200,initialized:false,expanded:false}}else{if(!("group" in this.rowinfo[G.uid])){this.rowinfo[G.uid].group=Y}if(!("row" in this.rowinfo[G.uid])){this.rowinfo[G.uid].row=G}if(!("details" in this.rowinfo[G.uid])){this.rowinfo[G.uid].details=null}if(!("detailsHeight" in this.rowinfo[G.uid])){this.rowinfo[G.uid].detailsHeight=200}if(!("initialized" in this.rowinfo[G.uid])){this.rowinfo[G.uid].initialized=false}if(!("expanded" in this.rowinfo[G.uid])){this.rowinfo[G.uid].expanded=false}}if(this.serverProcessing){this.rowinfo[G.uid].row=G}if(this.rowDetails){var F=this.rowinfo[G.uid].detailsHeight;if(this.rowinfo[G.uid]){if(this.rowinfo[G.uid].expanded){var ah='<tr data-role="row-details"><td valign="top" style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+this.columns.records.length+'" role="gridcell"'}else{var ah='<tr data-role="row-details" style="display: none;"><td valign="top" style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+this.columns.records.length+'" role="gridcell"'}}else{var ah='<tr data-role="row-details" style="display: none;"><td valign="top" style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+this.columns.records.length+'" role="gridcell"'}var H=this.toTP("jqx-cell")+" "+this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");H+=" "+this.toTP("jqx-details");H+=" "+this.toTP("jqx-reset");ah+='" class="'+H+'"><div style="pointer-events: auto; overflow: hidden; min-height: '+F+"px; max-height: "+F+"px; height: "+F+'px;"><div data-role="details"></div></div></td></tr>';B+=ah;ar+=ah}}B+="</table>";ar+="</table>";if(g){if(ab.WinJS){MSApp.execUnsafeLocalFunction(function(){ab.table.html(ar+B)})}else{ab.table[0].innerHTML=ar+B}var W=this.table.find("#table"+this.element.id);var X=this.table.find("#pinnedtable"+this.element.id);X.css("float","left");X.css("pointer-events","none");W.css("float","left");X[0].style.position="absolute";W[0].style.position="relative";W[0].style.zIndex=V-10;X[0].style.zIndex=V+10;this._table=W;this._table[0].style.left="0px";this._pinnedTable=X;this._pinnedTable[0].style.left="0px";this._pinnedTable[0].style.width=T+"px";this._table[0].style.width=T+"px";if(this.rtl){if(T>parseInt(this.element.style.width)&&this._haspinned){this._pinnedTable[0].style.left=3-T+parseInt(this.element.style.width)+"px"}}if(this.rowDetails){for(var am=0;am<U;am++){var G=ai[am];var L=G.uid;if(this.rowinfo[L].details){var N=b(this._table.children()[1]).children(("[data-key="+L+"]"));var Q=b(this._pinnedTable.children()[1]).children(("[data-key="+L+"]"));if(N){var h=Q.next();var J=b(b(h).children().children());J.children().detach();J.append(this.rowinfo[G.uid].details)}}}}}else{if(ab.WinJS){MSApp.execUnsafeLocalFunction(function(){ab.table.html(B)})}else{ab.table[0].innerHTML=B}var ad=this.table.find("#table"+this.element.id);this._table=ad;if(b.jqx.browser.msie&&b.jqx.browser.version<10){this._table[0].style.width=T+"px"}if(U===0){this._table[0].style.width=(2+T)+"px"}}if(U===0){this._table[0].style.tableLayout="auto";if(this._pinnedTable){this._pinnedTable[0].style.tableLayout="auto"}}if(x&&x.length>0){var an=this._table[0].rows;b.each(x,function(){var w=this.row;var au=this.rowKey;var j=this.column;var i=this.columnIndex;var t=ab._getuirow(au);if(t){var c=t[0].cells[i];if(b.jqx.angularCompile){b.jqx.angularCompile(c,"<div>"+c.innerHTML+"</div>")}}})}if(this.rendered){this.rendered()}},getcolumnindex:function(c){var d=this.getColumn(c);var e=this.columns.records.indexOf(d);return e},setcolumnindex:function(e,i,j){var h=this.getColumn(e);if(h.pinned){return}if(h.hidden){return}if(h.checkboxcolumn){return}if(h.grouped){return}var l=this.columns.records.indexOf(h);this.columns.records.splice(l,1);this.columns.records.splice(i,0,h);var f=0;var n=this.headerZIndex;this.columnsrow.children().detach();var k=this.toThemeProperty("jqx-grid-cell");k+=" "+this.toThemeProperty("jqx-grid-cell-pinned");k+=" "+this.toThemeProperty("jqx-item");var m=this;var c=null;if(m.filterrow!=undefined){var c=b(m.filterrow.children()[0])}this.columnsrow[0].cells=[];var g=false;b.each(this.columns.records,function(p,s){var q=this.uielement;m.columnsrow.append(q);if(!m.rtl){q.css("z-index",n--)}else{q.css("z-index",n++)}var o=!m.rtl?250+n-1:250+n+1;if(this.pinned){q.css("z-index",o)}var r=this.width;q.css("left",f);m.columnsrow[0].cells[m.columnsrow[0].cells.length]=q[0];if(this.hidden){g=true}if(!(this.hidden&&this.hideable)){f+=r}});if(this.groupable){var d=this.groups.length;if(d>0){if(l-d>=0){l-=d;i-=d}}}if(this.rowDetails){if(l-1>=0){l--;i--}}if(this.selectionMode=="checkbox"){if(l-1>=0){l--;i--}}var h=this._columns[l];this._columns.splice(l,1);this._columns.splice(i,0,h);this.resize();this._rendercolumnGroups();this._raiseEvent("columnReordered",{dataField:h.datafield,oldIndex:l,newIndex:i})},_pinnedColumnsLength:function(){var c=0;b.each(this.columns.records,function(){if(this.pinned){c++}if(this.grouped){c++}});if(this.rowDetails){c++}if(this.selectionMode=="checkbox"){c++}return c},_handlecolumnsReorder:function(){var g=this;var h=-1;var d=false;if(!g.columnsReorder){return}var f="mousemove.reorder"+this.element.id;var e="mousedown.reorder"+this.element.id;var i="mouseup.reorder"+this.element.id;var c=false;if(this.isTouchDevice()&&this.touchmode!==true){c=true;f=b.jqx.mobile.getTouchEventName("touchmove")+".reorder"+this.element.id;e=b.jqx.mobile.getTouchEventName("touchstart")+".reorder"+this.element.id;i=b.jqx.mobile.getTouchEventName("touchend")+".reorder"+this.element.id}this.removeHandler(b(document),f);this.addHandler(b(document),f,function(x){if(g.resizing){return true}if(g.reordercolumn!=null){var m=parseInt(x.pageX);var u=parseInt(x.pageY);if(c){var t=g.getTouches(x);var p=t[0];if(p!=undefined){m=parseInt(p.pageX);u=parseInt(p.pageY)}}var j=g.host.coord();var w=parseInt(j.left);var k=parseInt(j.top);if(g.dragmousedownoffset==undefined||g.dragmousedownoffset==null){g.dragmousedownoffset={left:0,top:0}}var B=parseInt(m)-parseInt(g.dragmousedownoffset.left);var s=parseInt(u)-parseInt(g.dragmousedownoffset.top);g.reordercolumn.css({left:B+"px",top:s+"px"});d=false;if(m>=w&&m<=w+g.host.width()){if(u>=k&&u<=k+g.host.height()){d=true}}h=-1;if(d){g.reordercolumnicon.removeClass(g.toThemeProperty("jqx-grid-dragcancel-icon"));g.reordercolumnicon.addClass(g.toThemeProperty("jqx-grid-drag-icon"));var n=g.columnsheader.coord();var q=n.top+g.columnsheader.height();if(g.columnsdropline!=null){if(u>=n.top&&u<=q){h=g._handlereordercolumnsdroplines(m);if(g.columnGroups){if(h!=-1){var l=0;l+=g._pinnedColumnsLength();var o=h.index;if(o>=l){var y=g.columns.records[o];if(y!=undefined){var v=g.columns.records.indexOf(g.getColumn(y.datafield));if(y.datafield==null){var v=g.columns.records.indexOf(g.getcolumnbytext(y.text))}var r=b.data(g.reordercolumn[0],"reorderrecord");var A=g.columns.records.indexOf(g.getColumn(r));var z=y;if(A<v){if(h.position=="before"){z=g.columns.records[v-1]}}if(z.columngroup!=g.getColumn(r).columngroup){g.columnsdropline.hide();return}}}}}}else{g.columnsdropline.fadeOut("slow")}}}else{if(g.columnsdropline!=null){g.columnsdropline.fadeOut("slow")}g.reordercolumnicon.removeClass(g.toThemeProperty("jqx-grid-drag-icon"));g.reordercolumnicon.addClass(g.toThemeProperty("jqx-grid-dragcancel-icon"))}if(x.preventDefault){x.preventDefault();x.stopPropagation()}if(c){x.preventDefault();x.stopPropagation();return false}}});this.columnsbounds=new Array();this.removeHandler(b(document),e);this.addHandler(b(document),e,function(k){if(g.resizing){return true}g.columnsbounds=new Array();var m=g.host.coord().left;var l=g.host.coord().top;if(g.showtoolbar){l+=g.toolbarHeight}if(g.filter){l+=g.filter.height()}var j=0;b.each(g.columns.records,function(o){var p=this;if(p.hidden){g.columnsbounds[g.columnsbounds.length]={top:l,column:p,left:m,width:0,height:2};return true}if(j==0){if(!g.rtl){m=parseInt(g.host.coord().left)-g.hScrollInstance.value}else{m=parseInt(g.host.coord().left)-g.hScrollInstance.max+g.hScrollInstance.value}}j++;var n=2+g.columnsHeight;if(g.columnshierarchy){l=b(p.uielement).coord().top;n=b(p.uielement).height()}g.columnsbounds[g.columnsbounds.length]={top:l,column:p,left:m,width:p.width,height:n};m+=p.width})});this.removeHandler(b(document),i);this.addHandler(b(document),i,function(j){if(g.resizing){return true}g.__drag=false;b(document.body).removeClass("jqx-disableselect");var l=parseInt(j.pageX);var t=parseInt(j.pageY);if(c){var o=g.getTouches(j);var n=o[0];l=parseInt(n.pageX);t=parseInt(n.pageY)}var m=g.host.coord();var v=parseInt(m.left);var w=parseInt(m.top);if(g.showtoolbar){w+=g.toolbarHeight}g.columndragstarted=false;g.dragmousedown=null;if(g.reordercolumn!=null){var k=b.data(g.reordercolumn[0],"reorderrecord");var x=g.columns.records.indexOf(g.getColumn(k));g.reordercolumn.remove();g.reordercolumn=null;var p=0;p+=g._pinnedColumnsLength();if(k!=null){if(d){if(h!=-1){var q=h.index;if(q>=p){var s=g.columns.records[q];if(s!=undefined){var u=g.columns.records.indexOf(g.getColumn(s.datafield));if(s.datafield==null){var u=g.columns.records.indexOf(g.getcolumnbytext(s.text))}if(g.columnGroups){var r=s;if(x<u){if(h.position=="before"){r=g.columns.records[u-1]}}if(r.columngroup!=g.getColumn(k).columngroup){if(g.columnsdropline!=null){g.columnsdropline.remove();g.columnsdropline=null}return}}if(x<u){if(h.position=="before"){g.setcolumnindex(k,u-1)}else{g.setcolumnindex(k,u)}}else{if(x>u){g.setcolumnindex(k,u)}}}}}}if(g.columnsdropline!=null){g.columnsdropline.remove();g.columnsdropline=null}}}})},getcolumnbytext:function(d){var c=null;if(this.columns.records){b.each(this.columns.records,function(){if(this.text==d){c=this;return false}})}return c},_handlereordercolumnsdroplines:function(i){var c=this;var h=-1;var e=c._pinnedColumnsLength();var g=parseInt(c.host.coord().left);var d=g+c.host.width();var f=c.vScrollBar.css("visibility")!="hidden"?19:0;if(!c.rtl){f=0}b.each(c.columnsbounds,function(j){if(j>=e){if(this.width==0){return true}if(i<=this.left+this.width/2){if(i>d){c.columnsdropline.fadeOut();return false}c.columnsdropline.css("left",f+parseInt(this.left)+"px");c.columnsdropline.css("top",parseInt(this.top)+"px");c.columnsdropline.height(this.height);c.columnsdropline.fadeIn("slow");h={index:j,position:"before"};return false}else{if(i>=this.left+this.width/2){if(this.left+this.width>d){c.columnsdropline.fadeOut();return false}c.columnsdropline.css("left",f+1+this.left+this.width);c.columnsdropline.css("top",this.top);c.columnsdropline.height(this.height);c.columnsdropline.fadeIn("slow");h={index:j,position:"after"}}}}});return h},_createreordercolumn:function(d,f,i){var h=this;var g=f;if(h.reordercolumn){h.reordercolumn.remove()}if(h.columnsdropline){h.columnsdropline.remove()}h.reordercolumn=b("<div></div>");var k=d.clone();h.reordercolumn.css("z-index",999999);k.css("border-width","1px");k.css("opacity","0.4");var j=b(k.find("."+h.toThemeProperty("jqx-grid-column-menubutton")));if(j.length>0){j.css("display","none")}var c=b(k.find(".jqx-icon-close"));if(c.length>0){c.css("display","none")}h.reordercolumnicon=b('<div style="z-index: 9999; position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px;"></div>');h.reordercolumnicon.addClass(h.toThemeProperty("jqx-grid-drag-icon"));h.reordercolumn.css("float","left");h.reordercolumn.css("position","absolute");var e=h.host.coord();k.width(d.width()+16);h.reordercolumn.append(k);h.reordercolumn.height(d.height());h.reordercolumn.width(k.width());h.reordercolumn.append(h.reordercolumnicon);b(document.body).append(h.reordercolumn);k.css("margin-left",0);k.css("left",0);k.css("top",0);h.reordercolumn.css("left",g.left+h.dragmousedown.left);h.reordercolumn.css("top",g.top+h.dragmousedown.top);if(i!=undefined&&i){h.columnsdropline=b('<div style="z-index: 9999; display: none; position: absolute;"></div>');h.columnsdropline.width(2);h.columnsdropline.addClass(h.toThemeProperty("jqx-grid-group-drag-line"));b(document.body).append(h.columnsdropline)}},_handlecolumnsdragreorder:function(d,g){if(this.reordercolumn){this.reordercolumn.remove()}if(this.columnsdropline){this.columnsdropline.remove()}this.dragmousedown=null;this.dragmousedownoffset=null;this.columndragstarted=false;this.reordercolumn=null;var h=this;var f;var c=false;if(this.isTouchDevice()&&this.touchmode!==true){c=true}var e="mousedown.drag";var f="mousemove.drag";if(c){e=b.jqx.mobile.getTouchEventName("touchstart")+".drag";f=b.jqx.mobile.getTouchEventName("touchmove")+".drag"}else{this.addHandler(g,"dragstart",function(i){return false})}this.addHandler(g,e,function(k){if(false==d.draggable){return true}if(h.resizing){return true}h.__drag=true;var j=k.pageX;var i=k.pageY;if(c){var l=h.getTouches(k);var n=l[0];j=n.pageX;i=n.pageY}h.dragmousedown={left:j,top:i};var m=b(k.target).coord();h.dragmousedownoffset={left:parseInt(j)-parseInt(m.left),top:parseInt(i-m.top)};if(k.preventDefault){k.preventDefault()}return true});this.addHandler(g,f,function(k){if(!d.draggable){return true}if(undefined==d.datafield){return true}if(d.pinned){return true}if(h.resizing){return true}if(h.dragmousedown){var j=k.pageX;var i=k.pageY;if(c){var m=h.getTouches(k);var o=m[0];if(o!=undefined){j=o.pageX;i=o.pageY}}f={left:j,top:i};if(!h.columndragstarted&&h.reordercolumn==null){var l=Math.abs(f.left-h.dragmousedown.left);var n=Math.abs(f.top-h.dragmousedown.top);if(l>3||n>3){h._createreordercolumn(g,f,true);b(document.body).addClass("jqx-disableselect");b.data(h.reordercolumn[0],"reorderrecord",d.datafield)}}}})},getTouches:function(c){return b.jqx.mobile.getTouches(c)},_handlecolumnsResize:function(){var i=this;if(this.columnsResize){var k=false;if(i.isTouchDevice()){k=true}var g="mousemove.resize"+this.element.id;var d="mousedown.resize"+this.element.id;var e="mouseup.resize"+this.element.id;if(k){var g=b.jqx.mobile.getTouchEventName("touchmove")+".resize"+this.element.id;var d=b.jqx.mobile.getTouchEventName("touchstart")+".resize"+this.element.id;var e=b.jqx.mobile.getTouchEventName("touchend")+".resize"+this.element.id}this.removeHandler(b(document),g);this.addHandler(b(document),g,function(n){if(i.resizablecolumn!=null&&!i.disabled&&i.resizing){if(i.resizeline!=null){var s=i.resizablecolumn.columnelement;var p=i.host.coord();var v=parseInt(i.resizestartline.coord().left);var l=v-i._startcolumnwidth;var w=i.resizablecolumn.column.minwidth;if(w=="auto"){w=0}else{w=parseInt(w)}var m=i.resizablecolumn.column.maxwidth;if(m=="auto"){m=0}else{m=parseInt(m)}var q=n.pageX;if(k){var t=b.jqx.mobile.getTouches(n);var r=t[0];q=r.pageX}l+=w;var u=m>0?v+m:0;var o=m==0?true:i._startcolumnwidth+q-v<m?true:false;if(i.rtl){var o=true}if(o){if(!i.rtl){if(q>=p.left&&q>=l){if(u!=0&&n.pageX<u){i.resizeline.css("left",q)}else{if(u==0){i.resizeline.css("left",q)}}if(k){return false}}}else{if(q>=p.left&&q<=p.left+i.host.width()){i.resizeline.css("left",q);if(k){return false}}}}}}if(!k&&i.resizablecolumn!=null){return false}});this.removeHandler(b(document),d);this.addHandler(b(document),d,function(m){if(i.resizablecolumn!=null&&!i.disabled){var l=i.resizablecolumn.columnelement;if(l.coord().top+l.height()+5<m.pageY){i.resizablecolumn=null;return}if(l.coord().top-5>m.pageY){i.resizablecolumn=null;return}i._startcolumnwidth=i.resizablecolumn.column.width;i.resizablecolumn.column._width=null;b(document.body).addClass("jqx-disableselect");b(document.body).addClass("jqx-position-reset");i._mouseDownResize=new Date();i.resizing=true;i._resizecolumn=i.resizablecolumn.column;i.resizeline=i.resizeline||b('<div style="position: absolute;"></div>');i.resizestartline=i.resizestartline||b('<div style="position: absolute;"></div>');i.resizebackground=i.resizebackground||b('<div style="position: absolute; left: 0; top: 0; background: #000;"></div>');i.resizebackground.css("opacity",0.01);i.resizebackground.css("cursor","col-resize");i.resizeline.css("cursor","col-resize");i.resizestartline.css("cursor","col-resize");i.resizeline.addClass(i.toThemeProperty("jqx-grid-column-resizeline"));i.resizestartline.addClass(i.toThemeProperty("jqx-grid-column-resizestartline"));b(document.body).append(i.resizeline);b(document.body).append(i.resizestartline);b(document.body).append(i.resizebackground);var n=i.resizablecolumn.columnelement.coord();i.resizebackground.css("left",i.host.coord().left);i.resizebackground.css("top",i.host.coord().top);i.resizebackground.width(i.host.width());i.resizebackground.height(i.host.height());i.resizebackground.css("z-index",999999999);var o=function(q){if(!i.rtl){q.css("left",parseInt(n.left)+i._startcolumnwidth)}else{q.css("left",parseInt(n.left))}var s=0;var t=i.showtoolbar?i.toolbarHeight:0;s+=t;var v=i.showstatusbar?i.statusBarHeight:0;s+=v;var r=i.showAggregates?i.aggregatesHeight:0;s+=r;if(i.pageable&&i.pagerPosition!="bottom"){s+=i.pagerHeight}if(i.filterable){s+=i.filter.height()}var p=0;if(i.pageable&&i.pagerPosition!="top"){p=i.pagerHeight}var u=i.hScrollBar.css("visibility")!="hidden"?i.scrollBarSize:0;q.css("top",parseInt(n.top));q.css("z-index",9999999999);if(i.columnGroups){q.height(i.host.height()+i.resizablecolumn.columnelement.height()-p-s-u-i.columnGroupslevel*i.columnsHeight)}else{q.height(i.host.height()-p-s-u)}q.show("fast")};o(i.resizeline);o(i.resizestartline);i.dragmousedown=null}});var f=function(){b(document.body).removeClass("jqx-disableselect");b(document.body).removeClass("jqx-position-reset");if(!i.resizing){return}i._mouseUpResize=new Date();var t=i._mouseUpResize-i._mouseDownResize;if(t<200){i.resizing=false;if(i._resizecolumn!=null&&i.resizeline!=null&&i.resizeline.css("display")=="block"){i._resizecolumn=null;i.resizeline.hide();i.resizestartline.hide();i.resizebackground.remove()}return}i.resizing=false;if(i.disabled){return}var n=i.host.width();if(i.vScrollBar[0].style.visibility!="hidden"){n-=20}if(n<0){n=0}if(i._resizecolumn!=null&&i.resizeline!=null&&i.resizeline.css("display")=="block"){var u=parseInt(i.resizeline.css("left"));var o=parseInt(i.resizestartline.css("left"));var s=i._startcolumnwidth+u-o;if(i.rtl){var s=i._startcolumnwidth-u+o}var r=i._resizecolumn.width;i._resizecolumn.width=s;if(i._resizecolumn._percentagewidth!=undefined){i._resizecolumn._percentagewidth=(s/n)*100}for(var q=0;q<i._columns.length;q++){if(i._columns[q].datafield===i._resizecolumn.datafield){i._columns[q].width=i._resizecolumn.width;break}}var l=i.hScrollBar[0].style.visibility;var p=i._resizecolumn.displayfield;i._updatecolumnwidths();i.refresh();i._resizecolumn=null;i.resizeline.hide();i.resizestartline.hide();i.resizebackground.remove();i.resizablecolumn=null;i._raiseEvent("columnResized",{dataField:p,oldWidth:r,newWidth:s})}else{i.resizablecolumn=null}};try{if(document.referrer!=""||window.frameElement){var c=null;if(window.top!=null&&window.top!=window.self){if(window.parent&&document.referrer){c=document.referrer}}if(c&&c.indexOf(document.location.host)!=-1){var h=function(l){f()};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",h,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",h)}}}}}catch(j){}this.removeHandler(b(document),e);this.addHandler(b(document),e,function(m){var l=b.data(document.body,"contextmenu"+i.element.id);if(l!=null&&i.autoshowcolumnsmenubutton){return true}f()})}},_updatecolumnwidths:function(){var k=this.host.width();var c=k;if(this.vScrollBar.css("visibility")!=="hidden"){k-=parseInt(this.scrollBarSize)+6;c=k}var j="";if(this.columns==undefined||this.columns.records==undefined){return}var i=this;var h=false;b.each(this.columns.records,function(l,m){if(!(this.hidden)){if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){var m=0;var n=i.vScrollBar[0].style.visibility=="hidden"?0:i.scrollBarSize+5;m=parseFloat(this.width)*c/100;if(this._percentagewidth!=undefined){m=parseFloat(this._percentagewidth)*(c)/100}if(m<this.minwidth&&this.minwidth!="auto"){m=this.minwidth}if(m>this.maxwidth&&this.maxwidth!="auto"){m=this.maxwidth}k-=Math.round(m)}else{if(this.width!="auto"&&!this._width){k-=this.width}else{j+=this.text}}}});var f=this.columnsheader.find("#columntable"+this.element.id);if(f.length==0){return}var d=0;var g=f.find(".jqx-grid-column-header");var e=0;b.each(this.columns.records,function(m,r){var o=b(g[m]);var l=false;var q=this.width;var p=this.width;if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){q=parseFloat(this._percentagewidth)*c/100}else{q=parseFloat(this.width)*c/100}q=Math.round(q);l=true}if(this.width!="auto"&&!this._width&&!l){if(parseInt(o[0].style.width)!=this.width){o.width(this.width)}}else{if(l){if(q<this.minwidth&&this.minwidth!="auto"){q=this.minwidth;this.width=q}if(q>this.maxwidth&&this.maxwidth!="auto"){q=this.maxwidth;this.width=q}if(parseInt(o[0].style.width)!=q){o.width(q);this.width=q}}else{var n=Math.floor(k*(this.text.length/j.length));if(isNaN(n)){n=this.minwidth}var s=(k*(this.text.length/j.length))-n;d+=s;if(d>=1){d-=1;n++}if(d>=0.5&&m==i.columns.records.length-1){n++}if(n<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);n=10+$element.width();$element.remove()}if(n<this.minwidth){n=this.minwidth}if(n>this.maxwidth){n=this.maxwidth}this._width="auto";this.width=n;o.width(this.width)}}if(parseInt(o[0].style.left)!=e){o.css("left",e)}if(!(this.hidden)){e+=this.width}this._requirewidthupdate=true;if(p!==this.width){h=true}});this.columnsheader.width(2+e);f.width(this.columnsheader.width());this._resizecolumnGroups();if(h){this._renderrows()}if(this.showAggregates){this._refreshcolumnsaggregates()}},_rendercolumnheaders:function(){var r=this;if(this._updating){return}this._columnsbydatafield=new Array();this.columnsheader.find("#columntable"+this.element.id).remove();var g=b('<div id="columntable'+this.element.id+'" style="height: 100%; position: relative;"></div>');g[0].cells=new Array();var l=0;var h=0;var s="";var u=this.host.width();var f=u;var w=new Array();var t=new Array();b.each(this.columns.records,function(j,k){if(!(this.hidden)){if(this.width!="auto"&&!this._width){if(this.width<this.minwidth&&this.minwidth!="auto"){u-=this.minwidth}else{if(this.width>this.maxwidth&&this.maxwidth!="auto"){u-=this.maxwidth}else{if(this.width.toString().indexOf("%")!=-1){var k=0;k=parseFloat(this.width)*f/100;if(k<this.minwidth&&this.minwidth!="auto"){k=this.minwidth}if(k>this.maxwidth&&this.maxwidth!="auto"){k=this.maxwidth}u-=k}else{if(typeof this.width=="string"){this.width=parseInt(this.width)}u-=this.width}}}}else{s+=this.text}}if(this.pinned||this.grouped||this.checkboxcolumn){if(r._haspinned){this.pinned=true}w[w.length]=this}else{t[t.length]=this}});if(!this.rtl){for(var o=0;o<w.length;o++){this.columns.replace(o,w[o])}for(var m=0;m<t.length;m++){this.columns.replace(w.length+m,t[m])}}else{var e=0;w.reverse();for(var o=this.columns.records.length-1;o>=this.columns.records.length-w.length;o--){this.columns.replace(o,w[e++])}for(var m=0;m<t.length;m++){this.columns.replace(m,t[m])}}var v=this.headerZIndex;var d=0;var n=r.columnsHeight;var q=function(j,k){var i=r.columnGroupslevel*r.columnsHeight;i=i-(k.level*r.columnsHeight);return i};var c=0;b.each(this.columns.records,function(J,H){this.height=r.columnsHeight;if(r.columnGroups){if(r.columnGroups.length){this.height=q(this.datafield,this);n=this.height}}var M=r.toTP("jqx-grid-column-header")+" "+r.toTP("jqx-widget-header");if(r.rtl){M+=" "+r.toTP("jqx-grid-column-header-rtl")}if(!r.enableBrowserSelection){M+=" "+r.toTP("jqx-disableselect")}var K=!self.rtl?250+v-1:250+v+1;var F=!r.rtl?v--:v++;var x=b('<div role="columnheader" style="z-index: '+F+';position: absolute; height: 100%;" class="'+M+'"><div style="height: 100%; width: 100%;"></div></div>');if(r.rtl&&J===0){x[0].style.borderLeftColor="transparent"}if(r.columnGroups){x[0].style.height=n+"px";x[0].style.bottom="0px";if(this.pinned){x[0].style.zIndex=K}}this.uielement=x;this.element=x;if(this.classname!=""&&this.classname){x.addClass(this.classname)}var C=this.width;var D=false;if(this.width===null){this.width="auto"}if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){C=parseFloat(this._percentagewidth)*f/100}else{C=parseFloat(this.width)*f/100}C=Math.round(C);D=true}if(this.width!="auto"&&!this._width&&!D){if(C<this.minwidth&&this.minwidth!="auto"){C=this.minwidth}if(C>this.maxwidth&&this.maxwidth!="auto"){C=this.maxwidth}x[0].style.width=parseInt(C)+"px"}else{if(D){if(C<this.minwidth&&this.minwidth!="auto"){C=this.minwidth}if(C>this.maxwidth&&this.maxwidth!="auto"){C=this.maxwidth}if(this._percentagewidth==undefined||this.width.toString().indexOf("%")!=-1){this._percentagewidth=this.width}x.width(C);this.width=C}else{var G=Math.floor(u*(this.text.length/s.length));var E=(u*(this.text.length/s.length))-G;c+=E;if(c>=1){c-=1;G++}if(c>=0.5&&J==r.columns.records.length-1){G++}if(isNaN(G)){G=this.minwidth}if(G<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);G=10+$element.width();$element.remove()}if(G<this.minwidth){G=this.minwidth}if(G>this.maxwidth){G=this.maxwidth}this._width="auto";this.width=parseInt(G);C=this.width;x.width(this.width)}}if(this.hidden){x.css("display","none")}var k=b(x.children()[0]);g[0].cells[J]=x[0];var p=false;var I=false;var z=this.renderer!=null?this.renderer(this.text,this.align,n):r._rendercolumnheader(this.text,this.align,n,r);if(z==null){z=r._rendercolumnheader(this.text,this.align,n,r)}if(this.renderer!=null){z=b(z)}p=true;if(r.WinJS){MSApp.execUnsafeLocalFunction(function(){k.append(b(z))})}else{if(this.renderer){k.append(b(z))}else{if(z){k[0].innerHTML=z}}}if(z!=null){var B=b('<div class="iconscontainer" style="height: '+n+'px; margin-left: -32px; display: block; position: absolute; left: 100%; top: 0%; width: 32px;"><div class="filtericon '+r.toTP("jqx-widget-header")+'" style="height: '+n+'px; float: right; display: none; width: 16px;"><div class="'+r.toTP("jqx-grid-column-filterbutton")+'" style="width: 100%; height:100%;"></div></div><div class="sortasc '+r.toTP("jqx-widget-header")+'" style="height: '+n+'px; float: right; display: none; width: 16px;"><div class="'+r.toTP("jqx-grid-column-sortascbutton")+'" style="width: 100%; height:100%;"></div></div><div class="sortdesc '+r.toTP("jqx-widget-header")+'" style="height: '+n+'px; float: right; display: none; width: 16px;"><div class="'+r.toTP("jqx-grid-column-sortdescbutton")+'" style="width: 100%; height:100%;"></div></div></div>');k.append(B);var N=B.children();this.sortasc=N[1];this.sortdesc=N[2];this.filtericon=N[0];this.iconscontainer=B;if(r.rtl){B.css("margin-left","0px");B.css("left","0px");b(this.sortasc).css("float","left");b(this.filtericon).css("float","left");b(this.sortdesc).css("float","left")}}g.append(x);if(r.columnsReorder&&this.draggable&&r._handlecolumnsdragreorder){r._handlecolumnsdragreorder(this,x)}var L=this;r.addHandler(x,"click",function(i){if(L.checkboxcolumn){return true}if(r._togglesort){if(!r._loading){r._togglesort(L)}}i.preventDefault()});if(r.columnsResize&&!I){var y=false;var j="mousemove";if(r.isTouchDevice()){y=true;j=b.jqx.mobile.getTouchEventName("touchstart")}r.addHandler(x,j,function(O){if(!L.resizable){r.resizablecolumn=null;return true}var i=parseInt(O.pageX);var Q=5;var T=parseInt(x.coord().left);if(r.hasTransform){T=b.jqx.utilities.getOffset(x).left}if(r._handlecolumnsResize){if(y){var P=b.jqx.mobile.getTouches(O);var S=P[0];i=S.pageX;Q=40;if(i>=T+L.width-Q){r.resizablecolumn={columnelement:x,column:L};x.css("cursor","col-resize")}else{x.css("cursor","");r.resizablecolumn=null}return true}var R=L.width;if(r.rtl){R=0}if(i>=T+R-Q){if(i<=T+R+Q){r.resizablecolumn={columnelement:x,column:L};x.css("cursor","col-resize");return false}else{x.css("cursor","");r.resizablecolumn=null}}else{x.css("cursor","");if(i<T+R-Q){if(!L._animating&&!L._menuvisible){x.mouseenter()}}r.resizablecolumn=null}}})}x.css("left",h);if(!(this.hidden)){h+=C}if(L.rendered){var A=L.rendered(b(k[0].firstChild),L.align,n);if(A&&B!=null){B.hide()}}});if(h>0){this.columnsheader.width(2+h)}else{this.columnsheader.width(h)}this.columnsrow=g;r.columnsheader.append(g);g.width(h);if(this._handlecolumnsdragdrop){this._handlecolumnsdragdrop()}if(this._handlecolumnsReorder){this._handlecolumnsReorder()}if(this._handlecolumnsResize){this._handlecolumnsResize()}if(this.columnGroups){this._rendercolumnGroups()}},_rendercolumnGroups:function(){if(!this.columnGroups){return}var o=0;for(var l=0;l<this.columns.records.length;l++){if(this.columns.records[l].pinned){o++}}var t=this.headerZIndex-o+this.columns.records.length;var n=this;var g=n.toTP("jqx-grid-column-header")+" "+n.toTP("jqx-grid-columngroup-header")+" "+n.toTP("jqx-widget-header");if(n.rtl){g+=" "+n.toTP("jqx-grid-columngroup-header-rtl")}var e=this.columnsheader.find("#columntable"+this.element.id);e.find("jqx-grid-columngroup-header").remove();for(var h=0;h<this.columnGroupslevel-1;h++){for(var l=0;l<this.columnGroups.length;l++){var q=this.columnGroups[l];var c=q.level;if(c!==h){continue}var p=c*this.columnsHeight;var d=99999;if(q.groups){var s=function(w){var v=0;for(var u=0;u<w.groups.length;u++){var i=w.groups[u];if(!i.groups){if(!i.hidden){v+=i.width;d=Math.min(parseInt(i.element[0].style.left),d)}}else{v+=s(i)}}return v};q.width=s(q);q.left=d;var r=this.columnsHeight;var m=t--;var f=b('<div role="columnheader" style="z-index: '+m+';position: absolute;" class="'+g+'"></div>');var k=b(this._rendercolumnheader(q.text,q.align,this.columnsHeight,this));f.append(k);f[0].style.left=d+"px";if(d===0){f[0].style.borderLeftColor="transparent"}f[0].style.top=p+"px";f[0].style.height=r+"px";f[0].style.width=-1+q.width+"px";e.append(f);q.element=f}}}},_resizecolumnGroups:function(){if(!this.columnGroups){return}for(var d=0;d<this.columnGroups.length;d++){var j=this.columnGroups[d];var k=j.level;var h=k*this.columnsHeight;var g=99999;if(j.groups){var f=function(n){var m=0;for(var l=0;l<n.groups.length;l++){var i=n.groups[l];if(!i.groups){if(!i.hidden){m+=i.width;g=Math.min(parseInt(i.element[0].style.left),g)}}else{m+=f(i)}}return m};j.width=f(j);j.left=g;var c=this.columnsHeight;var e=j.element;e[0].style.left=g+"px";e[0].style.top=h+"px";e[0].style.height=c+"px";e[0].style.width=-1+j.width+"px"}}},_removecolumnhandlers:function(f){var d=this;var c=b(f.element);if(c.length>0){d.removeHandler(c,"mouseenter");d.removeHandler(c,"mouseleave");var e=b(f.filtericon);d.removeHandler(e,"mousedown");d.removeHandler(e,"click");d.removeHandler(c,"click")}},_calculateaggregate:function(k,o,d,h){if(!k.datafield){return null}var e=k.aggregates;if(!e){e=o}if(e){var f=new Array();for(var n=0;n<e.length;n++){if(e[n]=="count"){continue}f[f.length]=k.cellsFormat}if(this.source&&this.source.getAggregatedData){if(h==undefined){h=this.getRows();if(this.dataViewRecords){h=this.dataViewRecords}}var s=h;var c=-1;if(this.treeGrid){var q=new Array();var r=function(u){for(var t=0;t<u.length;t++){if(u[t]==undefined){continue}if(c==-1){c=u[t].level}if(!u[t].aggregate){q.push(u[t])}if(!u[t].leaf&&u[t].records&&u[t].records.length>0){r(u[t].records)}}};r(h);h=q}if(this.treeGrid&&this.filterable&&this.dataview.filters.length>0){var p=new Array();for(var n=0;n<h.length;n++){if(h[n]&&h[n]._visible!==false){p.push(h[n])}}h=p;var l=new Array();for(var n=0;n<s.length;n++){if(s[n]&&s[n]._visible!==false){l.push(s[n])}}s=l}if(d==undefined||d==true){var m=this.source.getAggregatedData([{name:k.datafield,aggregates:e,formatStrings:f}],this.gridlocalization,h,c);if(this.treeGrid){var g=this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?this.source._source.hierarchy.groupingDataFields.length:0;if(g==0||c>=g){if(m){if(m[k.datafield].sum!=undefined||m[k.datafield].avg!=undefined){var j=this.source.getAggregatedData([{name:k.datafield,aggregates:e,formatStrings:f}],this.gridlocalization,s,c);if(m[k.datafield].sum!=undefined){m[k.datafield].sum=j[k.datafield].sum}if(m[k.datafield].avg!=undefined){m[k.datafield].avg=j[k.datafield].avg}}}}}return m}else{var m=this.source.getAggregatedData([{name:k.datafield,aggregates:e}],this.gridlocalization,h,c);if(this.treeGrid&&m){if(m[k.datafield].sum!=undefined||m[k.datafield].avg!=undefined){var g=this.source._source.hierarchy&&this.source._source.hierarchy.groupingDataFields?this.source._source.hierarchy.groupingDataFields.length:0;if(g==0||c>=g){var j=this.source.getAggregatedData([{name:k.datafield,aggregates:e}],this.gridlocalization,s,c);if(m[k.datafield].sum!=undefined){m[k.datafield].sum=j[k.datafield].sum}if(m[k.datafield].avg!=undefined){m[k.datafield].avg=j[k.datafield].avg}}}}return m}}}return null},getcolumnaggregateddata:function(d,h,i,e){var f=this.getColumn(d);if(!f){return""}var k=(i==undefined||i==false)?false:i;if(h==null){return""}var c=f.aggregates;f.aggregates=null;var j=this._calculateaggregate(f,h,k,e);var g={};if(j){g=j[d];f.aggregates=c}return g},_updatecolumnaggregates:function(e,h,c){var f=this;if(!h){c.children().remove();c.html("");if(e.aggregatesRenderer){var g={};if(e.aggregates){g=this.getcolumnaggregateddata(e.datafield,e.aggregates)}var d=e.aggregatesRenderer({},e,c,null);c.html(d)}return}c.children().remove();c.html("");if(e.aggregatesRenderer){if(h){var d=e.aggregatesRenderer(h[e.datafield],e,c,this.getcolumnaggregateddata(e.datafield,e.aggregates),"aggregates");c.html(d)}}else{b.each(h,function(){var j=this;for(g in j){var k=b('<div style="position: relative; margin: 4px; overflow: hidden;"></div>');var i=g;i=f._getaggregatename(i);k.html(i+":"+j[g]);if(f.rtl){k.addClass(f.toThemeProperty("jqx-rtl"))}c.append(k)}})}},_getaggregatetype:function(d){switch(d){case"min":case"max":case"count":case"avg":case"product":case"var":case"varp":case"stdev":case"stdevp":case"sum":return d}var c=d;for(var e in d){c=e;break}return c},_getaggregatename:function(d){var c=d;switch(d){case"min":c="Min";break;case"max":c="Max";break;case"count":c="Count";break;case"avg":c="Avg";break;case"product":c="Product";break;case"var":c="Var";break;case"stdevp":c="StDevP";break;case"stdev":c="StDev";break;case"varp":c="VarP";case"sum":c="Sum";break}if(d===c&&typeof(c)!="string"){for(var e in d){c=e;break}}return c},_updatecolumnsaggregates:function(){var g=this.getRows();if(this.dataViewRecords){g=this.dataViewRecords}var c=this.columns.records.length;if(undefined!=this.aggregates[0].cells){for(var f=0;f<c;f++){var h=b(this.aggregates[0].cells[f]);var e=this.columns.records[f];var d=this._calculateaggregate(e,null,true,g);this._updatecolumnaggregates(e,d,h)}}},_refreshcolumnsaggregates:function(){var c=this.columns.records.length;if(undefined!=this.aggregates[0].cells){var f=0;for(var e=0;e<c;e++){var g=b(this.aggregates[0].cells[e]);var d=this.columns.records[e];if(g){g.width(d.width);g[0].style.left=f+"px";if(!(d.hidden&&d.hideable)){f+=d.width}else{g.css("display","none")}}}}},_updateaggregates:function(){var c=b('<div style="position: relative;" id="statusrow'+this.element.id+'"></div>');var f=0;var m=this.columns.records.length;var l=this.toThemeProperty("jqx-grid-cell");if(this.rtl){l+=" "+this.toThemeProperty("jqx-grid-cell-rtl");f=0;c.css("border-left-width","0px");this.aggregates.css("border-left-color","transparent")}l+=" "+this.toThemeProperty("jqx-grid-cell-pinned");var n=m+10;var o=new Array();this.aggregates[0].cells=o;for(var h=0;h<m;h++){var g=this.columns.records[h];var i=this._calculateaggregate(g);var d=g.width;if(d<g.minwidth){d=g.minwidth}if(d>g.maxwidth){d=g.maxwidth}var e=l;if(g.cellsalign){e+=" "+this.toThemeProperty("jqx-"+g.cellsalign+"-align")}var k=b('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+e+'"></div>');c.append(k);k.css("left",f);if(!this.rtl){k.css("z-index",n--)}else{k.css("z-index",n++);if(h==0){k.css("border-left-width","0px")}}k.width(d);k[0].style.left=f+"px";if(!(g.hidden&&g.hideable)){f+=d}else{k.css("display","none")}o[o.length]=k[0];this._updatecolumnaggregates(g,i,k)}if(b.jqx.browser.msie&&b.jqx.browser.version<8){c.css("z-index",n--)}c.width(parseInt(f)+2);c.height(this.aggregatesHeight);this.aggregates.children().remove();this.aggregates.append(c);this.aggregates.removeClass(this.toThemeProperty("jqx-widget-header"));this.aggregates.addClass(l);this.aggregates.css("border-bottom-color","transparent");this.aggregates.css("border-top-width","1px");if(this.rtl&&this.hScrollBar.css("visibility")!="hidden"){this._renderhorizontalscroll()}},destroy:function(){var h=this;if(h.columns&&h.columns.records){for(var f=0;f<h.columns.records.length;f++){h._removecolumnhandlers(h.columns.records[f])}}h.removeHandler(b(document),"mouseup.pagerbuttonstop");h.removeHandler(b(document),"mouseup.pagerbuttonsbottom");h.removeHandler(h.content,"scroll");h.removeHandler(h.content,"mousedown");h.removeHandler(b(document),"mousedown.gridedit"+h.element.id);var g="mousemove.resize"+h.element.id;var c="mousedown.resize"+h.element.id;var e="mouseup.resize"+h.element.id;h.removeHandler(b(document),g);h.removeHandler(b(document),c);h.removeHandler(b(document),e);var g="mousemove.reorder"+h.element.id;var c="mousedown.reorder"+h.element.id;var e="mouseup.reorder"+h.element.id;h.removeHandler(b(document),g);h.removeHandler(b(document),c);h.removeHandler(b(document),e);if(h.filterable){if(h.filterrow){for(var f=0;f<h.filterrow[0].cells.length;f++){var k=h.filterrow[0].cells[f];var j=b(k).find(".filterconditions");var d=h.columns.records[f];if(j.length>0){j.jqxDropDownList("destroy")}}}if(h.filtercolumnsList){h.filtercolumnsList.jqxDropDownList("destroy")}}if(h.pageable){if(h.pagershowrowscombotop&&h.pagershowrowscombotop.jqxDropDownList){h.pagershowrowscombotop.jqxDropDownList("destroy")}if(h.pagershowrowscombobottom&&h.pagershowrowscombobottom.jqxDropDownList){h.pagershowrowscombobottom.jqxDropDownList("destroy")}var l=h.pagerbuttonsbottom.find("a");h.removeHandler(l,"click");h.removeHandler(l,"mouseenter");h.removeHandler(l,"mouseleave");l.remove();var l=h.pagerbuttonstop.find("a");h.removeHandler(l,"click");h.removeHandler(l,"mouseenter");h.removeHandler(l,"mouseleave");l.remove();if(h.pagernexttop){h.pagernexttop.jqxButton("destroy");h.pagerprevioustop.jqxButton("destroy");h.pagernextbottom.jqxButton("destroy");h.pagerpreviousbottom.jqxButton("destroy");h.pagerfirsttop.jqxButton("destroy");h.pagerfirstbottom.jqxButton("destroy");h.pagerlasttop.jqxButton("destroy");h.pagerlastbottom.jqxButton("destroy")}}h._removeHandlers();h.vScrollBar.jqxScrollBar("destroy");h.hScrollBar.jqxScrollBar("destroy");delete h.vScrollBar;delete h.hScrollBar;delete h._mousewheelfunc;b.jqx.utilities.resize(h.host,null,true);h.host.remove()},propertyChangedHandler:function(e,l,d,k){if(this.isInitialized==undefined||this.isInitialized==false){return}if(k!==d){if(l=="filterable"){e._render()}else{if(l==="height"){e.host.height(e.height);e.host.width(e.width);e._updatesize(false,true)}else{if(l==="width"){e.host.height(e.height);e.host.width(e.width);e._updatesize(true,false)}else{if(l==="source"){e.updateBoundData()}else{if(l==="columns"||l==="columnGroups"){e._columns=null;e._render()}else{if(l==="rtl"){e.content.css("left","");e.columns=e._columns;e.vScrollBar.jqxScrollBar({rtl:k});e.hScrollBar.jqxScrollBar({rtl:k});e._render()}else{if(l==="pagerMode"){e.pagerMode=k;e._initpager()}else{if(l=="pageSizeOptions"){e._initpager();var j=false;for(var f=0;f<k.length;f++){if(parseInt(k[f])==e.pageSize){j=true;break}}if(!j){b.jqx.set(e,[{pageSize:k[0]}])}}else{if(l=="pageSize"){var g=e.dataview.pagenum*e.dataview.pagesize;e.dataview.pagesize=e.pageSize;var h=Math.floor(g/e.dataview.pagesize);if(h!==e.dataview.pagenum||parseInt(k)!==parseInt(d)){e._raiseEvent("pageSizeChanged",{pagenum:k,oldpageSize:d,pageSize:e.dataview.pagesize});var m=e.goToPage(h);if(!m){if(!e.serverProcessing){e.refresh()}else{e.updateBoundData("pager")}}}}else{if(l==="pagerPosition"){e.refresh()}else{if(l==="selectionMode"){e.selectionMode=k.toLowerCase()}else{if(l=="touchmode"){e._removeHandlers();e.touchDevice=null;e.vScrollBar.jqxScrollBar({touchMode:k});e.hScrollBar.jqxScrollBar({touchMode:k});e.refresh();e._addHandlers()}else{if(l=="enableHover"){return}else{if(l=="disabled"){if(k){e.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(e.pageable){if(e.pagernexttop){e.pagernexttop.jqxButton({disabled:k});e.pagerprevioustop.jqxButton({disabled:k});e.pagernextbottom.jqxButton({disabled:k});e.pagerpreviousbottom.jqxButton({disabled:k});e.pagerfirsttop.jqxButton({disabled:k});e.pagerfirstbottom.jqxButton({disabled:k});e.pagerlasttop.jqxButton({disabled:k});e.pagerlastbottom.jqxButton({disabled:k});if(e.pagershowrowscombotop.jqxDropDownList){if(e.pagerMode=="advanced"){e.pagershowrowscombotop.jqxDropDownList({disabled:false});e.pagershowrowscombobottom.jqxDropDownList({disabled:false})}}}e.host.find(".jqx-grid-pager-number").css("cursor",k?"default":"pointer")}e.host.find(".jqx-grid-group-collapse").css("cursor",k?"default":"pointer");e.host.find(".jqx-grid-group-expand").css("cursor",k?"default":"pointer")}else{if(l=="columnsHeight"){e._render()}else{if(l=="theme"){b.jqx.utilities.setTheme(d,k,e.host);e.vScrollBar.jqxScrollBar({theme:e.theme});e.hScrollBar.jqxScrollBar({theme:e.theme});if(e.pageable&&e.pagernexttop){e.pagernexttop.jqxButton({theme:e.theme});e.pagerprevioustop.jqxButton({theme:e.theme});e.pagernextbottom.jqxButton({theme:e.theme});e.pagerpreviousbottom.jqxButton({theme:e.theme});e.pagerfirsttop.jqxButton({theme:e.theme});e.pagerfirstbottom.jqxButton({theme:e.theme});e.pagerlasttop.jqxButton({theme:e.theme});e.pagerlastbottom.jqxButton({theme:e.theme});if(e.pagershowrowscombotop.jqxDropDownList){if(e.pagerMode=="advanced"){e.pagershowrowscombotop.jqxDropDownList({theme:e.theme});e.pagershowrowscombobottom.jqxDropDownList({theme:e.theme})}}}if(e.filterable){var c=b(".filterconditions");if(c.length>0){c.jqxDropDownList({theme:e.theme})}if(e.filtercolumnsList){e.filtercolumnsList.jqxDropDownList({theme:e.theme})}}e.refresh()}else{e.refresh()}}}}}}}}}}}}}}}}}},_rendercolumnheader:function(f,g,c,d){var e="4px";if(d.columnGroups){e=(c/2-this._columnheight/2);if(e<0){e=4}e+="px"}else{if(this.columnsHeight!=25){e=(this.columnsHeight/2-this._columnheight/2);if(e<0){e=4}e+="px"}}return'<div style="overflow: hidden; text-overflow: ellipsis; text-align: '+g+"; margin-left: 4px; margin-right: 4px; margin-bottom: "+e+"; margin-top: "+e+';"><span style="text-overflow: ellipsis; cursor: default;">'+f+"</span></div>"}});function a(c,d){this.owner=c;this.datafield=null;this.displayfield=null;this.text="";this.sortable=true;this.editable=true;this.hidden=false;this.hideable=true;this.groupable=true;this.renderer=null;this.cellsRenderer=null;this.columntype=null;this.cellsFormat="";this.align="left";this.cellsalign="left";this.width="auto";this.minwidth=25;this.maxwidth="auto";this.pinned=false;this.visibleindex=-1;this.filterable=true;this.filter=null;this.resizable=true;this.draggable=true;this.initeditor=null;this.createeditor=null;this.destroyeditor=null;this.geteditorvalue=null;this.autoCellHeight=true;this.validation=null;this.classname="";this.cellclassname="";this.aggregates=null;this.aggregatesRenderer=null;this.rendered=null;this.exportable=true;this.nullable=true;this.columngroup=null;this.columntype="textbox";this.getcolumnproperties=function(){return{nullable:this.nullable,sortable:this.sortable,hidden:this.hidden,groupable:this.groupable,width:this.width,align:this.align,editable:this.editable,minwidth:this.minwidth,maxwidth:this.maxwidth,resizable:this.resizable,datafield:this.datafield,text:this.text,exportable:this.exportable,cellsalign:this.cellsalign,pinned:this.pinned,cellsFormat:this.cellsFormat,columntype:this.columntype,classname:this.classname,cellclassname:this.cellclassname,menu:this.menu}},this.setproperty=function(e,f){if(this[e]){var g=this[e];this[e]=f;this.owner._columnPropertyChanged(this,e,f,g)}else{if(this[e.toLowerCase()]){var g=this[e.toLowerCase()];this[e.toLowerCase()]=f;this.owner._columnPropertyChanged(this,e.toLowerCase(),f,g)}}};this._initfields=function(f){if(f!=null){var e=this;if(b.jqx.hasProperty(f,"dataField")){this.datafield=b.jqx.get(f,"dataField")}if(b.jqx.hasProperty(f,"displayField")){this.displayfield=b.jqx.get(f,"displayField")}else{this.displayfield=this.datafield}if(b.jqx.hasProperty(f,"columnType")){this.columntype=b.jqx.get(f,"columnType")}if(b.jqx.hasProperty(f,"validation")){this.validation=b.jqx.get(f,"validation")}if(b.jqx.hasProperty(f,"autoCellHeight")){this.autoCellHeight=b.jqx.get(f,"autoCellHeight")}if(b.jqx.hasProperty(f,"text")){this.text=b.jqx.get(f,"text")}else{this.text=this.displayfield}if(b.jqx.hasProperty(f,"sortable")){this.sortable=b.jqx.get(f,"sortable")}if(b.jqx.hasProperty(f,"hidden")){this.hidden=b.jqx.get(f,"hidden")}if(b.jqx.hasProperty(f,"groupable")){this.groupable=b.jqx.get(f,"groupable")}if(b.jqx.hasProperty(f,"renderer")){this.renderer=b.jqx.get(f,"renderer")}if(b.jqx.hasProperty(f,"align")){this.align=b.jqx.get(f,"align")}if(b.jqx.hasProperty(f,"cellsAlign")){this.cellsalign=b.jqx.get(f,"cellsAlign")}if(b.jqx.hasProperty(f,"cellsFormat")){this.cellsFormat=b.jqx.get(f,"cellsFormat")}if(b.jqx.hasProperty(f,"width")){this.width=b.jqx.get(f,"width")}if(b.jqx.hasProperty(f,"minWidth")){this.minwidth=b.jqx.get(f,"minWidth")}if(b.jqx.hasProperty(f,"maxWidth")){this.maxwidth=b.jqx.get(f,"maxWidth")}if(b.jqx.hasProperty(f,"cellsRenderer")){this.cellsRenderer=b.jqx.get(f,"cellsRenderer")}if(b.jqx.hasProperty(f,"columnType")){this.columntype=b.jqx.get(f,"columnType")}if(b.jqx.hasProperty(f,"pinned")){this.pinned=b.jqx.get(f,"pinned")}if(b.jqx.hasProperty(f,"filterable")){this.filterable=b.jqx.get(f,"filterable")}if(b.jqx.hasProperty(f,"filter")){this.filter=b.jqx.get(f,"filter")}if(b.jqx.hasProperty(f,"resizable")){this.resizable=b.jqx.get(f,"resizable")}if(b.jqx.hasProperty(f,"draggable")){this.draggable=b.jqx.get(f,"draggable")}if(b.jqx.hasProperty(f,"editable")){this.editable=b.jqx.get(f,"editable")}if(b.jqx.hasProperty(f,"initEditor")){this.initeditor=b.jqx.get(f,"initEditor")}if(b.jqx.hasProperty(f,"createEditor")){this.createeditor=b.jqx.get(f,"createEditor")}if(b.jqx.hasProperty(f,"destroyEditor")){this.destroyeditor=b.jqx.get(f,"destroyEditor")}if(b.jqx.hasProperty(f,"getEditorValue")){this.geteditorvalue=b.jqx.get(f,"getEditorValue")}if(b.jqx.hasProperty(f,"className")){this.classname=b.jqx.get(f,"className")}if(b.jqx.hasProperty(f,"cellClassName")){this.cellclassname=b.jqx.get(f,"cellClassName")}if(b.jqx.hasProperty(f,"aggregates")){this.aggregates=b.jqx.get(f,"aggregates")}if(b.jqx.hasProperty(f,"aggregatesRenderer")){this.aggregatesRenderer=b.jqx.get(f,"aggregatesRenderer")}if(b.jqx.hasProperty(f,"rendered")){this.rendered=b.jqx.get(f,"rendered")}if(b.jqx.hasProperty(f,"exportable")){this.exportable=b.jqx.get(f,"exportable")}if(b.jqx.hasProperty(f,"nullable")){this.nullable=b.jqx.get(f,"nullable")}if(b.jqx.hasProperty(f,"columnGroup")){this.columngroup=b.jqx.get(f,"columnGroup")}if(!f instanceof String&&!(typeof f=="string")){for(var g in f){if(!e.hasOwnProperty(g)){if(!e.hasOwnProperty(g.toLowerCase())){c.host.remove();throw new Error("jqxDataTable: Invalid property name - "+g+".")}}}}}};this._initfields(d);return this}b.jqx.dataCollection=function(c){this.records=new Array();this.owner=c;this.updating=false;this.beginUpdate=function(){this.updating=true};this.resumeupdate=function(){this.updating=false};this.clear=function(){this.records=new Array()};this.replace=function(e,d){this.records[e]=d};this.isempty=function(d){if(this.records[d]==undefined){return true}return false};this.initialize=function(d){if(d<1){d=1}this.records[d-1]=-1};this.length=function(){return this.records.length};this.indexOf=function(d){return this.records.indexOf(d)};this.add=function(d){if(d==null){return false}this.records[this.records.length]=d;return true};this.insertAt=function(e,d){if(e==null||e==undefined){return false}if(d==null){return false}if(e>=0){if(e<this.records.length){this.records.splice(e,0,d);return true}else{return this.add(d)}}return false};this.remove=function(e){if(e==null||e==undefined){return false}var d=this.records.indexOf(e);if(d!=-1){this.records.splice(d,1);return true}return false};this.removeAt=function(e){if(e==null||e==undefined){return false}if(e<0){return false}if(e<this.records.length){var d=this.records[e];this.records.splice(e,1);return true}return false};return this};b.jqx.dataView=function(){this.that=this;this.grid=null;this.records=[];this.rows=[];this.columns=[];this.filters=new Array();this.pagesize=0;this.pagenum=0;this.source=null;this.databind=function(p,k){var o=p._source?true:false;var e=null;this._sortData=null;this._sortHierarchyData=null;if(o){e=p;p=p._source}else{e=new b.jqx.dataAdapter(p,{autoBind:false})}var c=function(m){e.recordids=[];e.records=new Array();e.cachedrecords=new Array();e.originaldata=new Array();e._options.totalrecords=m.totalrecords;e._options.originaldata=m.originaldata;e._options.recordids=m.recordids;e._options.cachedrecords=new Array();e._options.pagenum=m.pagenum;e._options.pageable=m.pageable;if(p.type!=undefined){e._options.type=p.type}if(p.formatdata!=undefined){e._options.formatData=p.formatdata}if(p.contenttype!=undefined){e._options.contentType=p.contenttype}if(p.async!=undefined){e._options.async=p.async}if(p.updaterow!=undefined){e._options.updaterow=p.updaterow}if(p.addrow!=undefined){e._options.addrow=p.addrow}if(p.deleterow!=undefined){e._options.deleterow=p.deleterow}if(m.pagesize==0){m.pagesize=10}e._options.pagesize=m.pagesize};var r=function(m){m.originaldata=e.originaldata;m.records=e.records;m.hierarchy=e.hierarchy;if(!m.grid.serverProcessing){m._sortData=null;m._sortfield=null;m._filteredData=null;m._sortHierarchyData=null}if(!m.hierarchy){m.hierarchy=new Array();e.hierarchy=new Array()}if(e._source.totalrecords){m.totalrecords=e._source.totalrecords}else{if(e._source.totalRecords){m.totalrecords=e._source.totalRecords}else{if(m.hierarchy.length!==0){m.totalrecords=m.hierarchy.length}else{m.totalrecords=m.records.length}}}m.cachedrecords=e.cachedrecords};c(this);this.source=p;if(k!==undefined){uniqueId=k}var f=this;switch(p.datatype){case"local":case"array":default:if(p.localdata==null){p.localdata=[]}if(p.localdata!=null){e.unbindBindingUpdate(f.grid.element.id);if((!f.grid.autoBind&&f.grid.isInitialized)||f.grid.autoBind){e.dataBind()}var j=function(){r(f);f.update()};j();e.bindBindingUpdate(f.grid.element.id,j)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(p.localdata!=null){e.unbindBindingUpdate(f.grid.element.id);if((!f.grid.autoBind&&f.grid.isInitialized)||f.grid.autoBind){e.dataBind()}var j=function(m){r(f);f.update()};j();e.bindBindingUpdate(f.grid.element.id,j);return}var s={};var n=0;var t={};for(var h=0;h<this.filters.length;h++){var d=this.filters[h].datafield;var i=this.filters[h].filter;var g=i.getfilters();t[d+"operator"]=i.operator;for(var q=0;q<g.length;q++){g[q].datafield=d;var l=g[q].value;t["filtervalue"+n]=l.toString();t["filtercondition"+n]=g[q].condition;t["filteroperator"+n]=g[q].operator;t["filterdatafield"+n]=d;n++}}t.filterslength=n;b.extend(t,{sortdatafield:f.sortfield,sortorder:f.sortfielddirection,pagenum:f.pagenum,pagesize:f.grid.pageSize});var u=e._options.data;if(e._options.data){b.extend(e._options.data,t)}else{if(p.data){b.extend(t,p.data)}e._options.data=t}var j=function(){var v=b.jqx.browser.msie&&b.jqx.browser.version<9;var w=function(){r(f);f.update()};if(v){try{w()}catch(m){}}else{w()}};e.unbindDownloadComplete(f.grid.element.id);e.bindDownloadComplete(f.grid.element.id,j);e._source.loaderror=function(w,m,v){j()};if((!f.grid.autoBind&&f.grid.isInitialized)||f.grid.autoBind){e.dataBind()}e._options.data=u}};this.addFilter=function(f,e){this._sortData=null;this._sortHierarchyData=null;var d=-1;for(var c=0;c<this.filters.length;c++){if(this.filters[c].datafield==f){d=c;break}}if(d==-1){this.filters[this.filters.length]={filter:e,datafield:f}}else{this.filters[d]={filter:e,datafield:f}}};this.removeFilter=function(d){this._sortData=null;this._sortHierarchyData=null;for(var c=0;c<this.filters.length;c++){if(this.filters[c].datafield==d){this.filters.splice(c,1);break}}};this.sortBy=function(e,c){var d=this;if(c==null){this.sortfield="";this.sortfielddirection="";return}if(c==undefined){c=true}if(c=="a"||c=="asc"||c=="ascending"||c==true){c=true}else{c=false}if(e=="constructor"){e=""}this.sortfield=e;this.sortfielddirection=c?"asc":"desc"};this._sort=function(d){if(!this.sortfield||!this.sortfielddirection){return d}if(this._sortfield==this.sortfield&&this._sortfielddirection==this.sortfielddirection&&this._sortData){return this._sortData}var g=this;var j=Object.prototype.toString;Object.prototype.toString=(typeof g.sortfield=="function")?g.sortfield:function(){return this[g.sortfield]};var f="";if(this.source.datafields){b.each(this.source.datafields,function(){if(this.name==g.sortfield){if(this.type){f=this.type}return false}})}var c=new Array();for(var e=0;e<d.length;e++){c.push(b.extend({originalRecord:d[e]},d[e]))}this._sortfield=this.sortfield;this._sortfielddirection=this.sortfielddirection;if(this.sortfielddirection==="desc"){var h=c.sort(function(k,i){return g._compare(k,i,f)}).reverse()}else{var h=c.sort(function(k,i){return g._compare(k,i,f)})}this._sortData=h;Object.prototype.toString=j;return h};this._compare=function(d,c,f){var d=d;var c=c;if(d===undefined){d=null}if(c===undefined){c=null}if(d===null&&c===null){return 0}if(d===null&&c!==null){return 1}if(d!==null&&c===null){return 1}d=d.toString();c=c.toString();if(b.jqx.dataFormat){if(f&&f!=""){switch(f){case"number":case"int":case"float":if(d<c){return -1}if(d>c){return 1}return 0;case"date":case"time":if(d<c){return -1}if(d>c){return 1}return 0;case"string":case"text":d=String(d).toLowerCase();c=String(c).toLowerCase();break}}else{if(b.jqx.dataFormat.isNumber(d)&&b.jqx.dataFormat.isNumber(c)){if(d<c){return -1}if(d>c){return 1}return 0}else{if(b.jqx.dataFormat.isDate(d)&&b.jqx.dataFormat.isDate(c)){if(d<c){return -1}if(d>c){return 1}return 0}else{if(!b.jqx.dataFormat.isNumber(d)&&!b.jqx.dataFormat.isNumber(c)){d=String(d).toLowerCase();c=String(c).toLowerCase()}}}}}try{if(d<c){return -1}if(d>c){return 1}}catch(e){var g=e}return 0};this._equals=function(d,c){return(this._compare(d,c)===0)};this.evaluate=function(p){if(this.grid.serverProcessing){if(p){if(this.grid.source._source.id==""||this.grid.source._source.id==null){if(this.grid.pageable){var c=this.grid.pageSize*this.pagenum;this.grid.rowsByKey=new Array();var h=this;b.each(p,function(i){this.uid=c;h.grid.rowsByKey[this.uid]=this;c++})}}}return p}var d=new Array();if(this.filters.length){var j=new Array();var o=function(s,w){for(var u=0;u<s.length;u++){var v=s[u];v._visible=true;var q=undefined;for(var t=0;t<this.filters.length;t++){var r=this.filters[t].filter;var x=v[this.filters[t].datafield];var y=r.evaluate(x);if(q==undefined){q=y}else{if(r.operator=="or"){q=q||y}else{q=q&&y}}}v._visible=false;if(q||v.aggregate){v._visible=true;w.push(v);j[v.uid]=v}}};if(!this._filteredData){if(this.source.hierarchy||(this.grid.source.hierarchy&&this.grid.source.hierarchy.length>0)){var n=new Array();var k=function(r,s){for(var q=0;q<s.length;q++){var t=s[q];n.push(t);if(t.records&&t.records.length>0){k(t,t.records)}}};k(null,p);o.call(this,n,d);for(var e=0;e<d.length;e++){var g=d[e];while(g.parent){var m=g.parent;if(!j[m.uid]){m._visible=true;j[m.uid]=m}g=m}}d=p}else{o.call(this,p,d)}this._filteredData=d;this.rows=d}else{this.rows=this._filteredData}}else{this.rows=p}if(this.source.hierarchy||(this.grid.source.hierarchy&&this.grid.source.hierarchy.length>0)){var h=this;var l=new Array();this._sortData=null;var f=function(t,q){h._sortData=null;var r=null;if(h.source.hierarchy.groupingDataFields){if(q&&q.length>0&&q[0].level<h.source.hierarchy.groupingDataFields.length){r=new Array();for(var s=0;s<q.length;s++){r.push(b.extend({originalRecord:q[s]},q[s]))}}else{r=h._sort(q)}}else{r=h._sort(q)}if(t.records){t.records=r}else{t=t.concat(r)}for(var s=0;s<r.length;s++){if(r[s].records&&r[s].records.length){f(r[s],r[s].records)}}return t};if(this.sortfield||this.sortfielddirection){if(this._sortHierarchyData){l=this._sortHierarchyData}else{l=f(l,p)}this.rows=l;this._sortHierarchyData=l}}else{this.rows=this._sort(this.rows)}return this.rows};this.getid=function(j,d,e){if(b(j,d).length>0){return b(j,d).text()}if(this.rows&&j!=""&&j!=undefined&&this.rows.length>0){var h=this.rows[this.rows.length-1][j];if(h==null){h=null}for(var f=1;f<=100;f++){var g=this.grid.rowsByKey[f+h];if(!g){if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){var g=this.grid.rowsByKey["jqx"+h+f];if(g){continue}return"jqx"+h+f}return h+f}}}if(j!=undefined){if(j.toString().length>0){var c=b(d).attr(j);if(c!=null&&c.toString().length>0){if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){return"jqx"+c}return c}}}if(this.rows&&this.rows.length>0){var g=this.grid.rowsByKey[e];if(g){var h=this.rows[this.rows.length-1][j];if(h==null){h=""}for(var f=1;f<=1000;f++){var g=this.grid.rowsByKey[f+h];if(!g){if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){var g=this.grid.rowsByKey["jqx"+h+f];if(g){continue}return"jqx"+h+f}return h+f}}}}if(this.grid&&this.grid.treeGrid&&this.grid.treeGrid.virtualModeCreateRecords){var g=this.grid.rowsByKey["jqx"+e];if(!g){return"jqx"+e}else{for(var f=e+1;f<=100;f++){var g=this.grid.rowsByKey["jqx"+f];if(!g){var g=this.grid.rowsByKey["jqx"+f];if(g){continue}return"jqx"+f}}}}return e};this.generatekey=function(){var c=function(){return(((1+Math.random())*16)|0)};return(""+c()+c()+"-"+c()+"-"+c())};return this}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdate.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdate.js
new file mode 100644 (file)
index 0000000..9cc8b23
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(f){f.jqx.timeSpan=function(){var q={ticksPerMillisecond:10000,millisecondsPerTick:1/10000,ticksPerSecond:1000*10000,secondsPerTick:1/(1000*10000),ticksPerMinute:1000*10000*60,minutesPerTick:1/(1000*10000*60),ticksPerHour:1000*10000*3600,hoursPerTick:1/(1000*10000*3600),ticksPerDay:1000*10000*3600*24,daysPerTick:1/(1000*10000*3600*24),millisPerSecond:1000,millisPerMinute:1000*60,millisPerHour:1000*60*60,millisPerDay:1000*60*60*24,_ticks:0};f.extend(true,this,q);var r=this;r.ticks=function(){return r._ticks};r.days=function(){return parseInt(r._ticks/r.ticksPerDay)};r.timeToMS=function(v,z,x,w){var y=v*3600+z*60+x+w/1000;return parseInt(y*r.ticksPerSecond)};r.hours=function(){return parseInt(r._ticks/r.ticksPerHour)%24};r.milliseconds=function(){return parseInt(r._ticks/r.ticksPerMillisecond)%1000};r.minutes=function(){return parseInt(r._ticks/r.ticksPerMinute)%60};r.seconds=function(){return parseInt(r._ticks/r.ticksPerSecond)%60};r.totalDays=function(){return parseInt(r._ticks*r.daysPerTick)};r.totalHours=function(){return parseInt(r._ticks*r.hoursPerTick)};r.totalMilliseconds=function(){var v=r._ticks*r.millisecondsPerTick;return parseInt(v)};r.totalMinutes=function(){return parseInt(r._ticks*r.minutesPerTick)};r.totalSeconds=function(){return parseInt(r._ticks*r.secondsPerTick)};if(arguments.length===1){r._ticks=arguments[0]}else{if(arguments.length===3){r._ticks=r.timeToMS(arguments[0],arguments[1],arguments[2])}else{if(arguments.length===4){var u=arguments[0];var n=arguments[1];var p=arguments[2];var t=arguments[3];var o=0;var s=(u*3600*24+n*3600+p*60+t)*1000+o;r._ticks=s*r.ticksPerMillisecond}else{if(arguments.length===5){var u=arguments[0];var n=arguments[1];var p=arguments[2];var t=arguments[3];var o=arguments[4];var s=(u*3600*24+n*3600+p*60+t)*1000+o;r._ticks=s*r.ticksPerMillisecond}}}}r.add=function(w){var v=r._ticks+w._ticks;var x=new f.jqx.timeSpan(v);return x};r.substract=function(w){var v=_ticks-w._ticks;return new f.jqx.timeSpan(v)};r.duration=function(){if(r._ticks>=0){return new f.jqx.timeSpan(r._ticks)}else{return new f.jqx.timeSpan(-r._ticks)}};r.equals=function(v){return r._ticks==v._ticks};r.valueOf=function(){return r._ticks};r.compare=function(w,v){if(w._ticks>v._ticks){return 1}if(w._ticks<v._ticks){return -1}return 0};r.interval=function(x,y){var w=x*y;var v=w+(x>=0?0.5:-0.5);return new f.jqx.timeSpan(v*r.ticksPerMillisecond)};r.fromDays=function(v){return r.interval(v,r.millisPerDay)};r.fromHours=function(v){return r.interval(v,r.millisPerHour)};r.fromMilliseconds=function(v){return r.interval(v,1)};r.fromMinutes=function(v){return r.interval(v,r.millisPerMinute)};r.fromSeconds=function(v){return r.interval(v,r.millisPerSecond)};r.fromTicks=function(v){return new f.jqx.timeSpan(v)};return r};var g=[{id:"Local",offset:0,offsetHours:0,displayName:"",supportsDaylightSavingTime:false},{id:"Dateline Standard Time",offset:-720,offsetHours:-12,displayName:"(UTC-12:00) International Date Line West",supportsDaylightSavingTime:false},{id:"UTC-11",offset:-660,offsetHours:-11,displayName:"(UTC-11:00) Coordinated Universal Time-11",supportsDaylightSavingTime:false},{id:"Hawaiteratoran Standard Time",offset:-600,offsetHours:-10,displayName:"(UTC-10:00) Hawaiterator",supportsDaylightSavingTime:false},{id:"Alaskan Standard Time",offset:-540,offsetHours:-9,displayName:"(UTC-09:00) Alaska",supportsDaylightSavingTime:true},{id:"Pacific Standard Time (Mexico)",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Baja California",supportsDaylightSavingTime:true},{id:"Pacific Standard Time",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Pacific Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Arizona",supportsDaylightSavingTime:false},{id:"Mountain Standard Time (Mexico)",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",supportsDaylightSavingTime:true},{id:"Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Mountain Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central America Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central America",supportsDaylightSavingTime:false},{id:"Canada Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Saskatchewan",supportsDaylightSavingTime:false},{id:"Central Standard Time (Mexico)",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",supportsDaylightSavingTime:true},{id:"SA Pacific Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Bogota, Lima, Quito, Rio Branco",supportsDaylightSavingTime:false},{id:"Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Eastern Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Indiana (East)",supportsDaylightSavingTime:true},{id:"Venezuela Standard Time",offset:-270,offsetHours:-4.5,displayName:"(UTC-04:30) Caracas",supportsDaylightSavingTime:false},{id:"Atlantic Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Atlantic Time (Canada)",supportsDaylightSavingTime:true},{id:"Paraguay Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Asuncion",supportsDaylightSavingTime:true},{id:"Central Brazilian Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Cuiaba",supportsDaylightSavingTime:true},{id:"Pacific SA Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Santiago",supportsDaylightSavingTime:true},{id:"SA Western Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",supportsDaylightSavingTime:false},{id:"Newfoundland Standard Time",offset:-210,offsetHours:-3.5,displayName:"(UTC-03:30) Newfoundland",supportsDaylightSavingTime:true},{id:"SA Eastern Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Cayenne, Fortaleza",supportsDaylightSavingTime:false},{id:"Argentina Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Buenos Aires",supportsDaylightSavingTime:true},{id:"E. South America Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Brasilia",supportsDaylightSavingTime:true},{id:"Bahia Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Salvador",supportsDaylightSavingTime:true},{id:"Montevideo Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Montevideo",supportsDaylightSavingTime:true},{id:"Greenland Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Greenland",supportsDaylightSavingTime:true},{id:"UTC-02",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Coordinated Universal Time-02",supportsDaylightSavingTime:false},{id:"Mid-Atlantic Standard Time",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Mid-Atlantic - Old",supportsDaylightSavingTime:true},{id:"Azores Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Azores",supportsDaylightSavingTime:true},{id:"Cape Verde Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Cape Verde Is.",supportsDaylightSavingTime:false},{id:"Morocco Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Casablanca",supportsDaylightSavingTime:true},{id:"UTC",offset:0,offsetHours:0,displayName:"(UTC) Coordinated Universal Time",supportsDaylightSavingTime:false},{id:"GMT Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Dublin, Edinburgh, Lisbon, London",supportsDaylightSavingTime:true},{id:"Greenwich Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Monrovia, Reykjavik",supportsDaylightSavingTime:false},{id:"Central European Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",supportsDaylightSavingTime:true},{id:"Namibia Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Windhoek",supportsDaylightSavingTime:true},{id:"W. Central Africa Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) West Central Africa",supportsDaylightSavingTime:false},{id:"W. Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",supportsDaylightSavingTime:true},{id:"Central Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",supportsDaylightSavingTime:true},{id:"Romance Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",supportsDaylightSavingTime:true},{id:"FLE Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",supportsDaylightSavingTime:true},{id:"South Africa Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Harare, Pretoria",supportsDaylightSavingTime:false},{id:"Turkey Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Istanbul",supportsDaylightSavingTime:true},{id:"GTB Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Athens, Bucharest",supportsDaylightSavingTime:true},{id:"Libya Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Tripoli",supportsDaylightSavingTime:true},{id:"E. Europe Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) E. Europe",supportsDaylightSavingTime:true},{id:"Jordan Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Amman",supportsDaylightSavingTime:true},{id:"Middle East Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Beirut",supportsDaylightSavingTime:true},{id:"Egypt Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Cairo",supportsDaylightSavingTime:true},{id:"Syria Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Damascus",supportsDaylightSavingTime:true},{id:"Israel Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Jerusalem",supportsDaylightSavingTime:true},{id:"Arab Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kuwait, Riyadh",supportsDaylightSavingTime:false},{id:"E. Africa Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Nairobi",supportsDaylightSavingTime:false},{id:"Arabic Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Baghdad",supportsDaylightSavingTime:true},{id:"Kaliningrad Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kaliningrad, Minsk",supportsDaylightSavingTime:true},{id:"Iran Standard Time",offset:210,offsetHours:3.5,displayName:"(UTC+03:30) Tehran",supportsDaylightSavingTime:true},{id:"Mauritius Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Port Louis",supportsDaylightSavingTime:true},{id:"Georgian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Tbilisi",supportsDaylightSavingTime:false},{id:"Caucasus Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Yerevan",supportsDaylightSavingTime:true},{id:"Arabian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Abu Dhabi, Muscat",supportsDaylightSavingTime:false},{id:"Azerbaijan Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Baku",supportsDaylightSavingTime:true},{id:"Russian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Moscow, St. Petersburg, Volgograd",supportsDaylightSavingTime:true},{id:"Afghanistan Standard Time",offset:270,offsetHours:4.5,displayName:"(UTC+04:30) Kabul",supportsDaylightSavingTime:false},{id:"Pakistan Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Islamabad, Karachi",supportsDaylightSavingTime:true},{id:"West Asia Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Ashgabat, Tashkent",supportsDaylightSavingTime:false},{id:"India Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",supportsDaylightSavingTime:false},{id:"Sri Lanka Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Sri Jayawardenepura",supportsDaylightSavingTime:false},{id:"Nepal Standard Time",offset:345,offsetHours:5.75,displayName:"(UTC+05:45) Kathmandu",supportsDaylightSavingTime:false},{id:"Central Asia Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Astana",supportsDaylightSavingTime:false},{id:"Bangladesh Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Dhaka",supportsDaylightSavingTime:true},{id:"Ekaterinburg Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Ekaterinburg",supportsDaylightSavingTime:true},{id:"Myanmar Standard Time",offset:390,offsetHours:6.5,displayName:"(UTC+06:30) Yangon (Rangoon)",supportsDaylightSavingTime:false},{id:"SE Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Bangkok, Hanoi, Jakarta",supportsDaylightSavingTime:false},{id:"N. Central Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Novosibirsk",supportsDaylightSavingTime:true},{id:"Ulaanbaatar Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Ulaanbaatar",supportsDaylightSavingTime:false},{id:"China Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",supportsDaylightSavingTime:false},{id:"Singapore Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Kuala Lumpur, Singapore",supportsDaylightSavingTime:false},{id:"North Asia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Krasnoyarsk",supportsDaylightSavingTime:true},{id:"Taipei Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Taipei",supportsDaylightSavingTime:false},{id:"W. Australia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Perth",supportsDaylightSavingTime:true},{id:"Korea Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Seoul",supportsDaylightSavingTime:false},{id:"North Asia East Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Irkutsk",supportsDaylightSavingTime:true},{id:"Tokyo Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Osaka, Sapporo, Tokyo",supportsDaylightSavingTime:false},{id:"AUS Central Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Darwin",supportsDaylightSavingTime:false},{id:"Cen. Australia Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Adelaide",supportsDaylightSavingTime:true},{id:"West Pacific Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Guam, Port Moresby",supportsDaylightSavingTime:false},{id:"Tasmania Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Hobart",supportsDaylightSavingTime:true},{id:"E. Australia Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Brisbane",supportsDaylightSavingTime:false},{id:"AUS Eastern Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Canberra, Melbourne, Sydney",supportsDaylightSavingTime:true},{id:"Yakutsk Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Yakutsk",supportsDaylightSavingTime:true},{id:"Vladivostok Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Vladivostok",supportsDaylightSavingTime:true},{id:"Central Pacific Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Solomon Is., New Caledonia",supportsDaylightSavingTime:false},{id:"Magadan Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Magadan",supportsDaylightSavingTime:true},{id:"Kamchatka Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",supportsDaylightSavingTime:true},{id:"Fiji Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Fiji",supportsDaylightSavingTime:true},{id:"New Zealand Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Auckland, Wellington",supportsDaylightSavingTime:true},{id:"UTC+12",offset:720,offsetHours:12,displayName:"(UTC+12:00) Coordinated Universal Time+12",supportsDaylightSavingTime:false},{id:"Tonga Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Nuku'alofa",supportsDaylightSavingTime:false},{id:"Samoa Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Samoa",supportsDaylightSavingTime:true}];var a=[0,31,59,90,120,151,181,212,243,273,304,334,365];var m=[0,31,60,91,121,152,182,213,244,274,305,335,366];var j=365*4+1;var c=(365*4+1)*25-1;var h=((365*4+1)*25-1)*4+1;var d=(((365*4+1)*25-1)*4+1)*4;var b=(((365*4+1)*25-1)*4+1)*4+((365*4+1)*25-1)*3-367;var l=(((365*4+1)*25-1)*4+1)*25-366;var k=0;var i=((((365*4+1)*25-1)*4+1)*25-366)*(1000*10000*3600*24)-1;var e=((((365*4+1)*25-1)*4+1)*25-366)*(1000*60*60*24);f.jqx.date=function(){var r=this;r.ticksPerMillisecond=10000;r.millisecondsPerTick=1/10000;r.ticksPerSecond=1000*10000;r.secondsPerTick=1/(1000*10000);r.ticksPerMinute=1000*10000*60;r.minutesPerTick=1/(1000*10000*60);r.ticksPerHour=1000*10000*3600;r.hoursPerTick=1/(1000*10000*3600);r.ticksPerDay=1000*10000*3600*24;r.daysPerTick=1/(1000*10000*3600*24);r.millisPerSecond=1000;r.millisPerMinute=1000*60;r.millisPerHour=1000*60*60;r.millisPerDay=1000*60*60*24;r.daysPerYear=365;r.daysPer4Years=j;r.daysPer100Years=c;r.daysPer400Years=h;r.daysTo1601=d;r.daysTo1899=b;r.daysTo10000=l;r.minTicks=0;r.maxTicks=i;r.maxMillis=e;r.datePartYear=0;r.datePartDayOfYear=1;r.datePartMonth=2;r.datePartDay=3;r.daysToMonth365=a;r.daysToMonth366=m;r.minValue=new Date(0);r.maxValue=new Date(((((365*4+1)*25-1)*4+1)*25-366)*(1000*10000*3600*24)-1);r.ticksMask=4611686018427388000;r.flagsMask=13835058055282164000;r.localMask=9223372036854776000;r.ticksCeiling=4611686018427388000;r.kindUnspecified=0;r.kindUtc=4611686018427388000;r.kindLocal=9223372036854776000;r.kindLocalAmbiguousDst=13835058055282164000;r.kindShift=62;r.regexTrim=/^\s+|\s+$/g;r.regexInfinity=/^[+-]?infinity$/i;r.regexHex=/^0x[a-f0-9]+$/i;r.regexParseFloat=/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/;r.calendar={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:","};r.dateData=0;r.timeZone=null;r.timeZones=g;r.internalMS=function(){return r.dateData};r.getDatePart=function(y){var x=r.internalMS();var z=parseInt(x/r.millisPerDay);var G=parseInt(z/r.daysPer400Years);z-=G*r.daysPer400Years;var B=parseInt(z/r.daysPer100Years);if(B==4){B=3}z-=B*r.daysPer100Years;var D=parseInt(z/r.daysPer4Years);z-=D*r.daysPer4Years;var E=parseInt(z/r.daysPerYear);if(E==4){E=3}if(y==r.datePartYear){return parseInt(G*400+B*100+D*4+E+1)}z-=E*r.daysPerYear;if(y==r.datePartDayOfYear){return parseInt(z+1)}var C=E==3&&(D!=24||B==3);var F=C?r.daysToMonth366:r.daysToMonth365;var A=z>>5+1;while(z>=F[A]){A++}if(y==r.datePartMonth){return parseInt(A)}return parseInt(z-F[A-1]+1)};r.dayOfWeek=function(){var y=r.dateData;var x=parseInt(y/r.millisPerDay+1)%7;return x},r.dayOfYear=function(){return r.getDatePart(r.datePartDayOfYear)};r.subtract=function(x){return new f.jqx.timeSpan(r.dateData*r.ticksPerMillisecond-x.dateData*r.ticksPerMillisecond)};r.dateToMS=function(z,A,x){if(z>=1&&z<=9999&&A>=1&&A<=12){z=parseInt(z);var D=r.isLeapYear(z)?r.daysToMonth366:r.daysToMonth365;if(x>=1&&x<=D[A]-D[A-1]){var C=z-1;var B=C*365+parseInt(C/4)-parseInt(C/100)+parseInt(C/400)+D[A-1]+x-1;return B*r.millisPerDay}}};r.isLeapYear=function(x){if(x<1||x>9999){throw new Error("Year out of Range")}return x%4==0&&(x%100!=0||x%400==0)};r.timeToMS=function(x,B,z,y){if(x>=0&&x<24&&B>=0&&B<60&&z>=0&&z<60){var A=parseInt(x*3600+B*60+z);if(y>0&&y<1000){return(A*r.millisPerSecond)+y}return A*r.millisPerSecond}};r.daysInMonth=function(x,y){if(y<1||y>12){throw new Error("Month out of Range")}var z=r.isLeapYear(x)?r.daysToMonth366:r.daysToMonth365;return z[y]-z[y-1]};r.arrayIndexOf=function(A,z){if(A.indexOf){return A.indexOf(z)}for(var x=0,y=A.length;x<y;x++){if(A[x]===z){return x}}return -1};r.startsWith=function(y,x){return y.indexOf(x)===0};r.endsWith=function(y,x){return y.substr(y.length-x.length)===x},r.trim=function(x){return(x+"").replace(r.regexTrim,"")};r.expandFormat=function(B,A){A=A||"F";var z,y=B.patterns,x=A.length;if(x===1){z=y[A];if(!z){throw"Invalid date format string '"+A+"'."}A=z}else{if(x===2&&A.charAt(0)==="%"){A=A.charAt(1)}}return A};r.getEra=function(z,y){if(!y){return 0}if(typeof z==="string"){return 0}var C,B=z.getTime();for(var A=0,x=y.length;A<x;A++){C=y[A].start;if(C===null||B>=C){return A}}return 0};r.toUpper=function(x){return x.split("\u00A0").join(" ").toUpperCase()};r.toUpperArray=function(x){var A=[];for(var z=0,y=x.length;z<y;z++){A[z]=r.toUpper(x[z])}return A};r.getEraYear=function(y,A,x,B){var z=y.getFullYear();if(!B&&A.eras){z-=A.eras[x].offset}return z};r.getDayIndex=function(B,A,y){var x,C=B.days,z=B._upperDays;if(!z){B._upperDays=z=[r.toUpperArray(C.names),r.toUpperArray(C.namesAbbr),r.toUpperArray(C.namesShort)]}A=A.toUpperCase();if(y){x=r.arrayIndexOf(z[1],A);if(x===-1){x=r.arrayIndexOf(z[2],A)}}else{x=r.arrayIndexOf(z[0],A)}return x};r.getMonthIndex=function(E,D,z){var x=E.months,y=E.monthsGenitive||E.months,B=E._upperMonths,C=E._upperMonthsGen;if(!B){E._upperMonths=B=[r.toUpperArray(x.names),r.toUpperArray(x.namesAbbr)];E._upperMonthsGen=C=[r.toUpperArray(y.names),r.toUpperArray(y.namesAbbr)]}D=r.toUpper(D);var A=r.arrayIndexOf(z?B[1]:B[0],D);if(A<0){A=r.arrayIndexOf(z?C[1]:C[0],D)}return A};r.appendPreOrPostMatch=function(A,x){var z=0,C=false;for(var B=0,y=A.length;B<y;B++){var D=A.charAt(B);switch(D){case"'":if(C){x.push("'")}else{z++}C=false;break;case"\\":if(C){x.push("\\")}C=!C;break;default:x.push(D);C=false;break}}return z};r.getTokenRegExp=function(){return/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g};r.tryparseDate=function(ad,ae,U){if(ae==undefined||ae==null){ae=r.calendar}else{if(ae!=null){if(ae&&f.type(ae)==="string"&&Globalize){var aj=Globalize.cultures[ae];if(aj){ae=aj.calendar}}}}if(U!=undefined){if(f.type(U)==="array"){for(var ak=0;ak<U.length;ak++){var am=r.parseDate(ad,U[ak],ae);if(am){return am}}}var am=r.parseDate(ad,U,ae);if(am){return am}}var I=this;if(ad==""){return null}if(ad!=null&&!ad.substring){ad=ad.toString()}if(ad!=null&&ad.substring(0,6)=="/Date("){var ao=/^\/Date\((-?\d+)(\+|-)?(\d+)?\)\/$/;var al=new Date(+ad.replace(/\/Date\((\d+)\)\//,"$1"));if(al=="Invalid Date"){var ag=ad.match(/^\/Date\((\d+)([-+]\d\d)(\d\d)\)\/$/);var al=null;if(ag){al=new Date(1*ag[1]+3600000*ag[2]+60000*ag[3])}}if(al==null||al=="Invalid Date"||isNaN(al)){var J=ao.exec(ad);if(J){var M=new Date(parseInt(J[1]));if(J[2]){var S=parseInt(J[3]);if(J[2]==="-"){S=-S}var O=M.getUTCMinutes();M.setUTCMinutes(O-S)}if(!isNaN(M.valueOf())){return M}}}return al}var G={jqxdate:"yyyy-MM-dd HH:mm:ss",d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",ISO8601:"yyyy-MM-ddTHH:mm:ss.sssZ",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"MM-dd-yyyy",d4:"MM.dd.yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",iso:"yyyy-MM-ddTHH:mm:ssZ",iso_date1:"yyyy-MM-dd",iso_date2:"yyyy-MM-dd",iso_date3:"yyyy-ddd",iso_date4:"yyyy-MM-dd HH:mm",iso_date5:"yyyy-MM-dd HH:mm Z",iso_date6:"yyyy-MMM-dd",iso_date7:"yyyy-MM",iso_date8:"yyyy-MMM",iso_date9:"yyyy-MMMM",iso_date10:"yyyy-MMMM-dd",iso_time1:"HH:mm:ss.tttt",iso_time2:"HH:mm:ss",iso_time3:"HH:mm",iso_time4:"HH",iso_time5:"yyyyyy-MM-dd",iso_time6:"yyyyyy-MM-dd"};for(var L in G){al=r.parseDate(ad,G[L],ae);if(al){return al}}var F=ae.patterns;for(L in F){al=r.parseDate(ad,F[L],ae);if(al){if(L=="ISO"){var W=r.parseDate(ad,F.ISO2,ae);if(W){return W}}return al}}if(f.type(ad)==="string"){ad=r.trim(ad);var af=[":","/","-"," ",","];var E=function(at,y,ar){return ar.replace(new RegExp(at,"g"),y)};ad=E(", ",",",ad);var A="";var R=ad;if(ad.indexOf(":")>=0){A=ad.substring(ad.indexOf(":")-2);A=r.trim(A);R=ad.substring(0,ad.indexOf(":")-2)}else{if(ad.toUpperCase().indexOf("AM")>=0){A=ad.substring(ad.toUpperCase().indexOf("AM")-2);A=r.trim(A);R=ad.substring(0,ad.toUpperCase().indexOf("AM")-2)}else{if(ad.toUpperCase().indexOf("PM")>=0){A=ad.substring(ad.toUpperCase().indexOf("PM")-2);A=r.trim(A);R=ad.substring(0,ad.toUpperCase().indexOf("PM")-2)}}}var x=new Date();var ac=false;if(R){for(var ak=0;ak<af.length;ak++){if(R.indexOf(af[ak])>=0){D=R.split(af[ak]);break}}var z=new Array();var P=new Array();var Y=new Array();var K=null;var aq=null;for(var ak=0;ak<D.length;ak++){var H=D[ak];var X=r.parseDate(H,"d",ae)||r.parseDate(H,"dd",ae)||r.parseDate(H,"ddd",ae)||r.parseDate(H,"dddd",ae);if(X){z.push(X.getDate());if(H.length>2){K=ak;break}}}for(var ak=0;ak<D.length;ak++){var H=D[ak];var N=r.parseDate(H,"M",ae)||r.parseDate(H,"MM",ae)||r.parseDate(H,"MMM",ae)||r.parseDate(H,"MMMM",ae);if(N){if(K!=undefined&&K==ak){continue}P.push(N.getMonth());if(H.length>2){aq=ak;break}}}for(var ak=0;ak<D.length;ak++){var H=D[ak];var Z=r.parseDate(H,"yyyy",ae);if(Z){if(K!=undefined&&K==ak){continue}if(aq!=undefined&&aq==ak){continue}Y.push(Z.getFullYear())}}var ah=new Array();for(var an=0;an<z.length;an++){for(var ag=0;ag<P.length;ag++){for(var ab=0;ab<Y.length;ab++){var M=new Date(Y[ab],P[ag],z[an]);if(Y[ab]<1970){M.setFullYear(Y[ab])}if(M.getTime()!=NaN){ah.push(M)}}}}if(ah.length>0){x=ah[0];ac=true}}if(A){var aa=A.indexOf(":")>=0?A.split(":"):A;var C=r.parseDate(A,"h:mm tt",ae)||r.parseDate(A,"HH:mm:ss.fff",ae)||r.parseDate(A,"HH:mm:ss.ff",ae)||r.parseDate(A,"h:mm:ss tt",ae)||r.parseDate(A,"HH:mm:ss.tttt",ae)||r.parseDate(A,"HH:mm:ss",ae)||r.parseDate(A,"HH:mm",ae)||r.parseDate(A,"HH",ae);var Q=0,B=0,T=0,V=0;if(C&&C.getTime()!=NaN){Q=C.getHours();B=C.getMinutes();T=C.getSeconds();V=C.getMilliseconds()}else{if(aa.length==1){Q=parseInt(aa[0])}if(aa.length==2){Q=parseInt(aa[0]);B=parseInt(aa[1])}if(aa.length==3){Q=parseInt(aa[0]);B=parseInt(aa[1]);if(aa[2].indexOf(".")>=0){T=parseInt(aa[2].toString().split(".")[0]);V=parseInt(aa[2].toString().split(".")[1])}else{T=parseInt(aa[2])}}if(aa.length==4){Q=parseInt(aa[0]);B=parseInt(aa[1]);T=parseInt(aa[2]);V=parseInt(aa[3])}}if(x&&!isNaN(Q)&&!isNaN(B)&&!isNaN(T)&&!isNaN(V)){x.setHours(Q,B,T,V);ac=true}}if(ac){return x}}if(ad!=null){var W=null;var D=[":","/","-"];var ai=true;for(var H=0;H<D.length;H++){if(ad.indexOf(D[H])!=-1){ai=false}}if(ai){var ap=new Number(ad);if(!isNaN(ap)){return new Date(ap)}}}return null};r.getParseRegExp=function(x,I){var K=x._parseRegExp;if(!K){x._parseRegExp=K={}}else{var B=K[I];if(B){return B}}var H=r.expandFormat(x,I).replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1"),F=["^"],y=[],E=0,A=0,N=r.getTokenRegExp(),C;while((C=N.exec(H))!==null){var M=H.slice(E,C.index);E=N.lastIndex;A+=r.appendPreOrPostMatch(M,F);if(A%2){F.push(C[0]);continue}var z=C[0],D=z.length,J;switch(z){case"dddd":case"ddd":case"MMMM":case"MMM":case"gg":case"g":J="(\\D+)";break;case"tt":case"t":J="(\\D*)";break;case"yyyy":case"fff":case"ff":case"f":J="(\\d{"+D+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":J="(\\d\\d?)";break;case"zzz":J="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":J="([+-]?\\d\\d?)";break;case"/":J="(\\"+x["/"]+")";break;default:throw"Invalid date format pattern '"+z+"'.";break}if(J){F.push(J)}y.push(C[0])}r.appendPreOrPostMatch(H.slice(E),F);F.push("$");var L=F.join("").replace(/\s+/g,"\\s+"),G={regExp:L,groups:y};return K[I]=G};r.outOfRange=function(z,x,y){return z<x||z>y};r.expandYear=function(C,A){var y=new Date(),x=r.getEra(y);if(A<100){var z=C.twoDigitYearMax;z=typeof z==="string"?new Date().getFullYear()%100+parseInt(z,10):z;var B=r.getEraYear(y,C,x);A+=B-(B%100);if(A>z){A-=100}}return A};r.parseDate=function(S,Z,N){if(N==undefined||N==null){N=r.calendar}S=r.trim(S);var K=N,ae=r.getParseRegExp(K,Z),E=new RegExp(ae.regExp).exec(S);if(E===null){return null}var aa=ae.groups,Q=null,I=null,ad=null,ac=null,J=null,C=0,V,U=0,ab=0,x=0,z=null,L=false;for(var W=0,Y=aa.length;W<Y;W++){var y=E[W+1];if(y){var R=aa[W],B=R.length,D=parseInt(y,10);switch(R){case"dd":case"d":ac=D;if(r.outOfRange(ac,1,31)){return null}break;case"MMM":case"MMMM":case"MMMMM":case"MMMMMM":case"MMMMMMM":case"MMMMMMMM":ad=r.getMonthIndex(K,y,B===3);if(r.outOfRange(ad,0,11)){return null}break;case"M":case"MM":ad=D-1;if(r.outOfRange(ad,0,11)){return null}break;case"y":case"yy":case"yyyy":I=B<4?r.expandYear(K,D):D;if(r.outOfRange(I,0,9999)){return null}break;case"h":case"hh":C=D;if(C===12){C=0}if(r.outOfRange(C,0,11)){return null}break;case"H":case"HH":C=D;if(r.outOfRange(C,0,23)){return null}break;case"m":case"mm":U=D;if(r.outOfRange(U,0,59)){return null}break;case"s":case"ss":ab=D;if(r.outOfRange(ab,0,59)){return null}break;case"tt":case"t":L=K.PM&&(y===K.PM[0]||y===K.PM[1]||y===K.PM[2]);if(!L&&(!K.AM||(y!==K.AM[0]&&y!==K.AM[1]&&y!==K.AM[2]))){return null}break;case"f":case"ff":case"fff":x=D*Math.pow(10,3-B);if(r.outOfRange(x,0,999)){return null}break;case"ddd":case"dddd":J=r.getDayIndex(K,y,B===3);if(r.outOfRange(J,0,6)){return null}break;case"zzz":var A=y.split(/:/);if(A.length!==2){return null}V=parseInt(A[0],10);if(r.outOfRange(V,-12,13)){return null}var G=parseInt(A[1],10);if(r.outOfRange(G,0,59)){return null}z=(V*60)+(r.startsWith(y,"-")?-G:G);break;case"z":case"zz":V=D;if(r.outOfRange(V,-12,13)){return null}z=V*60;break;case"g":case"gg":var M=y;if(!M||!K.eras){return null}M=trim(eraNathat.toLowerCase());for(var X=0,T=K.eras.length;X<T;X++){if(M===K.eras[X].nathat.toLowerCase()){Q=X;break}}if(Q===null){return null}break}}}var H=new Date(),P,F=K.convert;P=H.getFullYear();if(I===null){I=P}else{if(K.eras){I+=K.eras[(Q||0)].offset}}if(ad===null){ad=0}if(ac===null){ac=1}if(F){H=F.toGregorian(I,ad,ac);if(H===null){return null}}else{H.setFullYear(I,ad,ac);if(H.getDate()!==ac){return null}if(J!==null&&H.getDay()!==J){return null}}if(L&&C<12){C+=12}H.setHours(C,U,ab,x);if(z!==null){var O=H.getMinutes()-(z+H.getTimezoneOffset());H.setHours(H.getHours()+parseInt(O/60,10),O%60)}return H},r.toString=function(U,L){if(U===undefined){U="yyyy-MM-dd HH:mm:ss"}if(f.jqx.date.cache&&f.jqx.date.cache[r.dateData+U]){return f.jqx.date.cache[r.dateData+U]}if(L&&f.type(L)==="string"&&Globalize){var V=Globalize.cultures[L];if(V){L=V.calendar}}var Q=r.toDate();if(L==undefined||L==null){L=r.calendar}if(typeof Q==="string"){return Q}var A=Q.toString()+"_"+U;if(!U||!U.length||U==="i"){var X;X=r.formatDate(Q,L.patterns.F,L);return X}var R=L.eras,y=U==="s";U=r.expandFormat(L,U);X=[];var D,S=["0","00","000"],H,I,x=/([^d]|^)(d|dd)([^d]|$)/g,W=0,N=r.getTokenRegExp(),z;function F(Y,ab){var aa,Z=Y+"";if(ab>1&&Z.length<ab){aa=(S[ab-2]+Z);return aa.substr(aa.length-ab,ab)}else{aa=Z}return aa}function T(){if(H||I){return H}H=x.test(U);I=true;return H}function B(Z,Y){if(z){return z[Y]}if(Z.getMonth!=undefined){switch(Y){case 0:return Z.getFullYear();case 1:return Z.getMonth();case 2:return Z.getDate()}}}for(;;){var E=N.lastIndex,M=N.exec(U);var J=U.slice(E,M?M.index:U.length);W+=r.appendPreOrPostMatch(J,X);if(!M){break}if(W%2){X.push(M[0]);continue}var O=M[0],C=O.length;switch(O){case"ddd":case"dddd":var K=(C===3)?L.days.namesAbbr:L.days.names;X.push(K[Q.getDay()]);break;case"d":case"dd":H=true;X.push(F(B(Q,2),C));break;case"MMM":case"MMMM":var P=B(Q,1);X.push(L.months[C===3?"namesAbbr":"names"][P]);break;case"M":case"MM":X.push(F(B(Q,1)+1,C));break;case"y":case"yy":case"yyyy":P=r.getEraYear(Q,L,r.getEra(Q,R),y);if(C<4){P=P%100}X.push(F(P,C));break;case"h":case"hh":D=Q.getHours()%12;if(D===0){D=12}X.push(F(D,C));break;case"H":case"HH":X.push(F(Q.getHours(),C));break;case"m":case"mm":X.push(F(Q.getMinutes(),C));break;case"s":case"ss":X.push(F(Q.getSeconds(),C));break;case"t":case"tt":P=Q.getHours()<12?(L.AM?L.AM[0]:" "):(L.PM?L.PM[0]:" ");X.push(C===1?P.charAt(0):P);break;case"f":case"ff":case"fff":X.push(F(Q.getMilliseconds(),3).substr(0,C));break;case"z":case"zz":D=Q.getTimezoneOffset()/60;X.push((D<=0?"+":"-")+F(Math.floor(Math.abs(D)),C));break;case"zzz":D=Q.getTimezoneOffset()/60;X.push((D<=0?"+":"-")+F(Math.floor(Math.abs(D)),2)+":"+F(Math.abs(Q.getTimezoneOffset()%60),2));break;case"g":case"gg":if(L.eras){X.push(L.eras[r.getEra(Q,R)].name)}break;case"/":X.push(L["/"]);break;default:throw"Invalid date format pattern '"+O+"'.";break}}var G=X.join("");if(!f.jqx.date.cache){f.jqx.date.cache=new Array()}f.jqx.date.cache[r.dateData+U]=G;return G};r.add=function(B,C,y){var z=r.internalMS();if(C===undefined){if(y===false){r.dateData=(z+parseInt(B._ticks/r.ticksPerMillisecond));return r}var x=new f.jqx.date((z+parseInt(B._ticks/r.ticksPerMillisecond)));x.timeZone=r.timeZone;return x}var A=(B*C);if(A<=-r.maxMillis||A>=r.maxMillis){throw new Error("Out of Range")}if(y===false){r.dateData=(z+A);return r}var x=new f.jqx.date(z+A);x.timeZone=r.timeZone;return x};r.addDays=function(y,x){return r.add(y,r.millisPerDay,x)};r.clone=function(){var x=new f.jqx.date(r.dateData);x.timeZone=r.timeZone;return x};r.clearTime=function(){var A=r.month();var z=r.year();var y=r.day();var x=new f.jqx.date(z,A,y,0,0,0,0);x.timeZone=r.timeZone;return x};r.addHours=function(y,x){return r.add(y,r.millisPerHour,x)};r.addMilliseconds=function(y,x){return r.add(y,1,x)};r.addMinutes=function(y,x){return r.add(y,r.millisPerMinute,x)};r.addMonths=function(z,B){if(z<-120000||z>120000){throw new Error("Invalid Months Value")}var F=parseInt(r.getDatePart(r.datePartYear));var x=parseInt(r.getDatePart(r.datePartMonth));var D=parseInt(r.getDatePart(r.datePartDay));var C=x-1+z;if(C>=0){x=C%12+1;F=F+C/12}else{x=12+(C+1)%12;F=F+(C-11)/12}F=parseInt(F);if(F<1||F>9999){throw new Error("Year out of range")}var E=r.daysInMonth(F,x);if(D>E){D=E}if(B===false){r.dateData=(r.dateToMS(F,x,D)+r.internalMS()%r.millisPerDay);return r}var A=new f.jqx.date((r.dateToMS(F,x,D)+r.internalMS()%r.millisPerDay));A.timeZone=r.timeZone;return A};r.addSeconds=function(y,x){return r.add(y,r.millisPerSecond,x)};r.addYears=function(y,x){return r.addMonths(y*12,x)};r.getTimeZoneOffset=function(){var y=new Date();var x=new Date(y.getFullYear(),0,1);var z=new Date(y.getFullYear(),6,1);var A=y.getTimezoneOffset()<Math.max(x.getTimezoneOffset(),z.getTimezoneOffset());return{offset:-(y.getTimezoneOffset()/60),dst:+A}};r.isInDaylightSavingTime=function(){var y=new Date();var z=new Date(y.getFullYear(),0,1);var x=new Date(y.getFullYear(),6,1);return r.date().getTimezoneOffset()<Math.max(z.getTimezoneOffset(),x.getTimezoneOffset())};r.supportsDaylightSavingTime=function(){var y=new Date();var z=new Date(y.getFullYear(),0,1);var x=new Date(y.getFullYear(),6,1);return z.getTimezoneOffset()!=x.getTimezoneOffset()};r.date=function(){var A=r.month();var z=r.year();var y=r.day();var x=new f.jqx.date(z,A,y);x.timeZone=r.timeZone;return x};r.isWeekend=function(){return r.dayOfWeek()==0||r.dayOfWeek()==6};r.toDate=function(J){var E=r.month();var F=r.year();var G=r.day();var A=r.hour();var z=r.minute();var x=r.second();var L=r.millisecond();var K=new Date(F,E-1,G);if(F<1970){K.setFullYear(F)}K.setHours(A,z,x,L);if(J){var D=r.timeZones.filter(function(M){return M.id==J});if(D.length){var B=D[0].offset;if(J=="Local"){B=-K.getTimezoneOffset()}var C=K.getTime();var I=K.getTimezoneOffset()*60*1000;if(r.timeZone){var y=r.timeZones.filter(function(M){return M.id==r.timeZone});if(y.length){var I=-y[0].offset*60*1000}}var H=C+I;K=new Date(H+(60*1000*B))}}return K};r.toTimeZone=function(y){var A=y;if(A==null){A="Local"}var x=r.toDate(A);var z=new f.jqx.date(x);z.timeZone=y;return z};r.day=function(){return r.getDatePart(r.datePartDay)};r.month=function(){return r.getDatePart(r.datePartMonth)};r.year=function(){return r.getDatePart(r.datePartYear)};r.millisecond=function(){return parseInt((r.internalMS())%1000)};r.hour=function(){return parseInt((r.internalMS()/r.millisPerHour)%24)};r.minute=function(){return parseInt((r.internalMS()/r.millisPerMinute)%60)};r.second=function(){return parseInt((r.internalMS()/r.millisPerSecond)%60)};r.valueOf=function(){return r.dateData};r.equals=function(x){return r.dateData===x.dateData};if(arguments.length===0){var o=new Date();r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{if(arguments.length===1){if(arguments[0]==undefined){arguments[0]="todayDate"}var v=typeof arguments[0]==="number"&&isFinite(arguments[0]);if(!v&&f.type(arguments[0])==="string"){if(arguments[0]==="today"){var o=new Date();r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{if(arguments[0]==="todayDate"){var o=new Date();o.setHours(0,0,0,0);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{var o=r.tryparseDate(arguments[0]);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}}}else{if(typeof(arguments[0])==="number"){r.dateData=arguments[0]}else{if(f.type(arguments[0])=="date"){var o=arguments[0];r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{r.dateData=arguments[0]}}}}else{if(arguments.length===2){if(arguments[0]==undefined){arguments[0]="todayDate"}var v=typeof arguments[0]==="number"&&isFinite(arguments[0]);if(!v&&f.type(arguments[0])==="string"){if(arguments[0]==="today"){var o=new Date();r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{if(arguments[0]==="todayDate"){var o=new Date();o.setHours(0,0,0,0);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{var o=r.tryparseDate(arguments[0]);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}}}else{if(typeof(arguments[0])==="number"){r.dateData=arguments[0]}else{if(f.type(arguments[0])=="date"){var o=arguments[0];r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{r.dateData=arguments[0]}}}r.timeZone=arguments[1]}else{if(arguments.length>2){if(f.type(arguments[0])==="string"){var o=r.tryparseDate(arguments[0],arguments[2],arguments[1]);r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}else{var t=arguments[0];var s=arguments[1];var u=arguments[2];var q=arguments[3];var p=arguments[4];var n=arguments[5];var w=arguments[6];if(q===undefined){q=0}if(p===undefined){p=0}if(n===undefined){n=0}if(w===undefined){w=0}s--;var o=new Date(t,s,u,q,p,n,w);if(t<1970){o.setFullYear(t)}r.dateData=r.dateToMS(o.getFullYear(),o.getMonth()+1,o.getDate())+r.timeToMS(o.getHours(),o.getMinutes(),o.getSeconds(),o.getMilliseconds())}}}}}return r}})(jqxBaseFramework);if(!Array.prototype.filter){Array.prototype.filter=function(b){if(this===void 0||this===null){throw new TypeError()}var f=Object(this);var a=f.length>>>0;if(typeof b!=="function"){throw new TypeError()}var e=[];var d=arguments[1];for(var c=0;c<a;c++){if(c in f){var g=f[c];if(b.call(d,g,c,f)){e.push(g)}}}return e}};
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdatetimeinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdatetimeinput.js
new file mode 100644 (file)
index 0000000..bf40417
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDateTimeInput","",{});a.extend(a.jqx._jqxDateTimeInput.prototype,{defineInstance:function(){var b={value:a.jqx._jqxDateTimeInput.getDateTime(new Date()),minDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),maxDate:a.jqx._jqxDateTimeInput.getDateTime(new Date()),min:new Date(1900,0,1),max:new Date(2100,0,1),rowHeaderWidth:25,enableViews:true,views:["month","year","decade"],selectableDays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],change:null,changing:null,columnHeaderHeight:20,placeHolder:"",titleHeight:25,firstDayOfWeek:0,showWeekNumbers:false,showTimeButton:false,cookies:false,cookieoptions:null,showFooter:false,formatString:"dd/MM/yyyy",width:200,height:25,dayNameFormat:"firstTwoLetters",textAlign:"left",readonly:false,culture:"default",activeEditor:null,showCalendarButton:true,openDelay:250,closeDelay:300,closeCalendarAfterSelection:true,isEditing:false,enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",enableAbsoluteSelection:false,disabled:false,buttonSize:18,animationType:"slide",dropDownWidth:"200px",restrictedDates:new Array(),dropDownHeight:"205px",selectionMode:"default",renderMode:"full",rtl:false,timeRange:null,_editor:false,todayString:"Today",clearString:"Clear",popupZIndex:9999999999999,allowNullDate:true,enableHover:true,allowKeyboardDelete:true,localization:{backString:"Back",forwardString:"Forward",todayString:"Today",clearString:"Clear",calendar:{name:"Gregorian_USEnglish","/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss"}}},events:["valueChanged","textchanged","mousedown","mouseup","keydown","keyup","keypress","open","close","change"],aria:{"aria-valuenow":{name:"getDate",type:"date"},"aria-valuetext":{name:"getText",type:"string"},"aria-valuemin":{name:"min",type:"date"},"aria-valuemax":{name:"max",type:"date"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0);this.minDate._setYear(1900);this.minDate._setMonth(1);this.minDate._setDay(1);this.minDate._setHours(1);this.minDate._setMinutes(1);this.minDate._setSeconds(1);this.minDate._setMilliseconds(1);this.maxDate._setYear(2100);this.maxDate._setMonth(1);this.maxDate._setDay(1);this.maxDate._setHours(1);this.maxDate._setMinutes(1);this.maxDate._setSeconds(1);this.maxDate._setMilliseconds(1);this.defaultMinDate=this.minDate;this.defaultMaxDate=this.maxDate;return b},createInstance:function(h){var b="";var e=this;if(!e.host.jqxCalendar){throw new Error("jqxDateTimeInput: Missing reference to jqxcalendar.js.")}if(e.host.attr("value")){b=true;var c=e.host.attr("value");if(e.selectionMode!="range"){var d=new Date(c);if(d!=undefined&&!isNaN(d)){e.value=a.jqx._jqxDateTimeInput.getDateTime(d)}}}if(e.value!=null&&e.value instanceof Date){e.value=a.jqx._jqxDateTimeInput.getDateTime(e.value)}else{if(e.value!=null&&typeof(e.value)=="string"){var d=new Date(e.value);if(d!=undefined&&!isNaN(d)){e.value=a.jqx._jqxDateTimeInput.getDateTime(d)}else{if(e.value.indexOf(",")>=0){e.value=e.value.replace(/\,/g,"/");var d=new Date(e.value);if(d!=undefined&&!isNaN(d)){e.value=a.jqx._jqxDateTimeInput.getDateTime(d)}}}}}this._initTimeRange();this._validateTimeRange();e.host.attr("data-role","input");e.render();a.jqx.aria(this);if(e.getDate()!=null){a.jqx.aria(this,"aria-label","Current focused date is "+e.getDate().toLocaleString())}else{a.jqx.aria(this,"aria-label","Current focused date is Null")}if(e.minDate!==e.defaultMinDate){e.min=e.minDate}if(e.maxDate!==e.defaultMaxDate){e.max=e.maxDate}e.setMaxDate(e.max,false);e.setMinDate(e.min,false);if(e.selectionMode=="range"){if(b){var c=e.host.attr("value");var g=c.substring(0,c.indexOf("-"));var f=c.substring(c.indexOf("-")+1);var k=new Date(g);var j=new Date(f);if(k!=undefined&&!isNaN(k)){if(j!=undefined&&!isNaN(j)){e.setRange(k,j)}}}else{if(e.getDate()!=null){e.setRange(e.getDate(),e.getDate())}}}},_validateTimeRange:function(){if(this.timeRange){var b=this.value.dateTime.getHours();var c=this.value.dateTime.getMinutes();if(b<=this.timeRange.minHour){this.value._setHours(this.timeRange.minHour);if(c<this.timeRange.minMinute){this.value._setMinutes(this.timeRange.minMinute);this._updateEditorsValue()}else{this._updateEditorsValue()}}if(b>=this.timeRange.maxHour){this.value._setHours(this.timeRange.maxHour);if(c>this.timeRange.maxMinute){this.value._setMinutes(this.timeRange.maxMinute);this._updateEditorsValue()}else{this._updateEditorsValue()}}}},_initTimeRange:function(){if(this.timeRange){if(this.timeRange.min){var c=null;if(this.timeRange.min.indexOf("AM")>=0||this.timeRange.min.indexOf("PM")>=0){c=this.timeRange.min.indexOf("AM")>=0?"AM":"PM"}var d=this.timeRange.min.split(":");var b=parseInt(d[0]);var f=parseInt(d[1]);if(c){this.timeRange.minDefaultHour=b;this.timeRange.minMeridian=c}if(c&&c=="PM"){b+=12}this.timeRange.minHour=b;this.timeRange.minMinute=f}if(this.timeRange.max){var c=null;if(this.timeRange.max.indexOf("AM")>=0||this.timeRange.max.indexOf("PM")>=0){c=this.timeRange.max.indexOf("AM")>=0?"AM":"PM"}var e=this.timeRange.max.split(":");var b=parseInt(e[0]);var f=parseInt(e[1]);if(c){this.timeRange.maxDefaultHour=b;this.timeRange.maxMeridian=c}if(c&&c=="PM"){b+=12}this.timeRange.maxHour=b;this.timeRange.maxMinute=f}}},_format:function(d,e,b){var f=false;try{if(Globalize!=undefined){f=true}}catch(c){}if(a.global){return a.global.format(d,e,this.culture)}else{if(f){try{var e=Globalize.format(d,e,this.culture);return e}catch(c){return Globalize.format(d,e)}}else{if(a.jqx.dataFormat){if(d instanceof Date){return a.jqx.dataFormat.formatdate(d,e,this.localization.calendar)}else{if(typeof d==="number"){return a.jqx.dataFormat.formatnumber(d,e,this.localization.calendar)}else{return a.jqx.dataFormat.formatdate(d,e,this.localization.calendar)}}}else{throw new Error("jqxDateTimeInput: Missing reference to globalize.js.")}}}},render:function(){var l=this;l._removeHandlers();l.element.innerHTML="";l.host.attr({role:"textbox"});l.id=a.jqx.utilities.createId();var f=a.jqx.utilities.createId();var k=a.jqx.utilities.createId();l._setSize();if(l.width==null){l.width=l.host.width();l.host.width(l.width)}l.touch=a.jqx.mobile.isTouchDevice();var c=a("<div class='jqx-max-size jqx-position-relative'></div>").appendTo(l.host);l.dateTimeInput=a("<input class='jqx-position-absolute' id='input"+l.element.id+"' autocomplete='off' type='textarea'/>").appendTo(c);l.dateTimeInput.addClass(l.toThemeProperty("jqx-reset"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-clear"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-input-content"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-widget-content"));l.dateTimeInput.addClass(l.toThemeProperty("jqx-rc-all"));l.dateTimeInput.attr("placeHolder",l.placeHolder);if(l.renderMode!="full"){l.dateTimeInput.remove()}var d=l.host.attr("name");if(d){l.dateTimeInput.attr("name",d)}if(l.host.attr("tabindex")){l.dateTimeInput.attr("tabindex",l.host.attr("tabindex"));l.host.removeAttr("tabindex")}if(l.rtl){l.dateTimeInput.css("direction","rtl");l.dateTimeInput.addClass("jqx-rtl")}l.calendarButton=a("<div style='height: 100%;' class='jqx-position-absolute'><div></div></div>").appendTo(c);if(!l.rtl){l.calendarButton.addClass(l.toThemeProperty("jqx-action-button"))}else{l.calendarButton.addClass(l.toThemeProperty("jqx-action-button-rtl"))}l.calendarButtonIcon=a(l.calendarButton.children()[0]);l.calendarButtonIcon.addClass(l.toThemeProperty("jqx-icon"));l.calendarButtonIcon.addClass(l.toThemeProperty("jqx-icon-calendar"));l.calendarButton.addClass(l.toThemeProperty("jqx-fill-state-normal"));if(!l.rtl){l.calendarButton.addClass(l.toThemeProperty("jqx-rc-r"))}else{l.calendarButton.addClass(l.toThemeProperty("jqx-rc-l"))}l.timeButton=a("<div style='height: 100%;' class='jqx-position-absolute'><div></div></div>").appendTo(c);if(!l.rtl){l.timeButton.addClass(l.toThemeProperty("jqx-action-button"))}else{l.timeButton.addClass(l.toThemeProperty("jqx-action-button-rtl"))}l.timeButtonIcon=a(l.timeButton.children()[0]);l.timeButtonIcon.addClass(l.toThemeProperty("jqx-icon"));l.timeButtonIcon.addClass(l.toThemeProperty("jqx-icon-time"));l.timeButton.addClass(l.toThemeProperty("jqx-fill-state-normal"));if(!l.rtl){l.timeButton.addClass(l.toThemeProperty("jqx-rc-r"))}else{l.timeButton.addClass(l.toThemeProperty("jqx-rc-l"))}var n=this;l._arrange();if(a.jqx._jqxCalendar!=null&&a.jqx._jqxCalendar!=undefined){try{var j="calendar"+l.id;var h=a(a.find("#"+j));if(h.length>0){h.remove()}a.jqx.aria(this,"aria-owns",j);a.jqx.aria(this,"aria-haspopup",true);a.jqx.aria(this,"aria-readonly",l.selectionMode=="range"?true:false);var b=a("<div style='overflow: hidden; background: transparent; position: absolute;' id='calendar"+l.id+"'><div id='innerCalendar"+l.id+"'></div><div id='innerTime"+l.id+"'></div></div>");if(a.jqx.utilities.getBrowser().browser=="opera"){b.hide()}b.appendTo(document.body);l.container=b;l.calendarContainer=a(a.find("#innerCalendar"+l.id)).jqxCalendar({restrictedDates:this.restrictedDates,changing:l.changing,change:l.change,enableViews:l.enableViews,selectableDays:l.selectableDays,views:l.views,rowHeaderWidth:l.rowHeaderWidth,titleHeight:l.titleHeight,columnHeaderHeight:l.columnHeaderHeight,_checkForHiddenParent:false,enableAutoNavigation:false,canRender:false,localization:l.localization,todayString:l.todayString,clearString:l.clearString,dayNameFormat:l.dayNameFormat,rtl:l.rtl,culture:l.culture,showFooter:l.showFooter,selectionMode:l.selectionMode,firstDayOfWeek:l.firstDayOfWeek,showWeekNumbers:l.showWeekNumbers,width:l.dropDownWidth,height:l.dropDownHeight,theme:l.theme});l.calendarContainer.css({position:"absolute",zIndex:l.popupZIndex,top:0,left:0});l.calendarContainer.addClass(l.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){l.calendarContainer.addClass(l.toThemeProperty("jqx-noshadow"))}l.timeContainer=a(a.find("#innerTime"+l.id));l.timeContainer.css({position:"absolute",zIndex:l.popupZIndex,top:0,left:0});l.timeContainer.addClass(l.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){l.timeContainer.addClass(l.toThemeProperty("jqx-noshadow"))}l._calendar=a.data(l.calendarContainer[0],"jqxCalendar").instance;var n=this;l._calendar.today=function(){n.today()};l._calendar.clear=function(){n.clear()};if(a.jqx.utilities.getBrowser().browser=="opera"){b.show()}b.height(parseInt(l.calendarContainer.height())+25);b.width(parseInt(l.calendarContainer.width())+25);if(l.selectionMode=="range"){l.readonly=true}if(l.animationType=="none"){l.container.css("display","none")}else{l.container.hide()}}catch(m){}}if(a.global){a.global.preferCulture(l.culture)}l.selectedText="";l._addHandlers();l.self=this;l.oldValue=l.getDate();l.items=new Array();l.editors=new Array();l._loadItems();l.editorText="";if(l.readonly==true){l.dateTimeInput.css("readonly",l.readonly)}l.dateTimeInput.css("text-align",l.textAlign);l.host.addClass(l.toThemeProperty("jqx-widget"));l.host.addClass(l.toThemeProperty("jqx-datetimeinput"));l.host.addClass(l.toThemeProperty("jqx-input"));l.host.addClass(l.toThemeProperty("jqx-overflow-hidden"));l.host.addClass(l.toThemeProperty("jqx-rc-all"));l.host.addClass(l.toThemeProperty("jqx-reset"));l.host.addClass(l.toThemeProperty("jqx-clear"));l.host.addClass(l.toThemeProperty("jqx-widget-content"));l.propertyChangeMap.disabled=function(e,q,p,r){if(r){e.host.addClass(n.toThemeProperty("jqx-input-disabled"));e.host.addClass(n.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(n.toThemeProperty("jqx-fill-state-disabled"));e.host.removeClass(n.toThemeProperty("jqx-input-disabled"))}a.jqx.aria(this,"aria-disabled",r)};if(l.disabled){l.host.addClass(l.toThemeProperty("jqx-input-disabled"));l.host.addClass(l.toThemeProperty("jqx-fill-state-disabled"));l.dateTimeInput.attr("disabled",true)}if(l.host.parents("form").length>0){l.addHandler(l.host.parents("form"),"reset",function(){setTimeout(function(){n.setDate(new Date())},10)})}if(l.cookies){var g=a.jqx.cookie.cookie("jqxDateTimeInput"+l.element.id);if(g!=null){l.setDate(new Date(g))}}if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(l.host.parents(".jqx-window").length>0){var o=l.host.parents(".jqx-window").css("z-index");l.container.css("z-index",o+10);l.calendarContainer.css("z-index",o+10)}}if(l.culture!="default"){l._applyCulture()}if(l.value){if(l.calendarContainer.jqxCalendar("_isDisabled",l.value.dateTime)){l.dateTimeInput.addClass(l.toThemeProperty("jqx-input-invalid"))}else{l.dateTimeInput.removeClass(l.toThemeProperty("jqx-input-invalid"))}}},val:function(c){var b=this;if(arguments.length!=0){if(c==null){b.setDate(null)}if(b.selectionMode=="range"){b.setRange(arguments[0],arguments[1]);return b.getText()}if(c instanceof Date){b.setDate(c)}if(typeof(c)=="string"){if(c=="date"){return b.getDate()}b.setDate(c)}if(b._calendar.getDate()!=b.getDate()){b._calendar.setDate(b.getDate())}}return b.getText()},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true;this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true;this.host.height(this.height)}var c=this;var d=function(){if(c.calendarContainer){c._arrange()}};if(e){if(this.calendarContainer){this._arrange();var b=this.host.width();if(this.dropDownWidth!="auto"){b=this.dropDownWidth}this.calendarContainer.jqxCalendar({width:b});this.container.width(parseInt(b)+25)}}a.jqx.utilities.resize(this.host,function(){d()})},_arrange:function(){if(this.height==null){this.height=27;this.host.height(27)}var d=parseInt(this.host.width());var b=parseInt(this.host.height());var h=this.buttonSize;var g=2;if(!this.showCalendarButton&&!this.showTimeButton){h=0;buttonHeight=0;this.calendarButton.hide();g=0}if(!this.showCalendarButton){this.calendarButton.hide()}else{this.calendarButton.show()}if(!this.showTimeButton){this.timeButton.hide()}else{this.timeButton.show()}var c=d-h-1*g;if(this.showTimeButton&&this.showCalendarButton){var c=d-2*h-1*g}else{if(this.showTimeButton||this.showCalendarButton){var c=d-h-1*g}}if(c>0){this.dateTimeInput[0].style.width=c+"px"}if(this.rtl){this.dateTimeInput[0].style.width=(-1+c+"px")}this.dateTimeInput[0].style.left="0px";this.dateTimeInput[0].style.top="0px";this.calendarButton[0].style.width=h+1+"px";this.calendarButton[0].style.left=1+c+"px";this.timeButton[0].style.width=h+1+"px";if(this.showCalendarButton){this.timeButton[0].style.left=1+this.calendarButton.width()+c+"px"}else{this.timeButton[0].style.left=1+c+"px"}if(this.renderMode!="full"){this.calendarButton[0].style.width="100%";this.calendarButton[0].style.left="0px";this.calendarButton.css("border","none");this.timeButton[0].style.width="100%";this.timeButton[0].style.left="0px";this.timeButton.css("border","none")}var e=this.dateTimeInput.height();if(e==0){e=parseInt(this.dateTimeInput.css("font-size"))+3;this.calendarButton.addClass(this.toThemeProperty("jqx-rc-all"));this.timeButton.addClass(this.toThemeProperty("jqx-rc-all"))}if(this.dateTimeInput[0].className.indexOf("jqx-rc-all")==-1){this.dateTimeInput.addClass(this.toThemeProperty("jqx-rc-all"))}var f=parseInt(b)/2-parseInt(e)/2;if(f>0){this.dateTimeInput[0].style.marginTop=parseInt(f)+"px"}if(this.rtl){this.calendarButton[0].style.width=h+"px";this.timeButton[0].style.width=h+"px";this.calendarButton.css("left","0px");if(this.showCalendarButton){this.timeButton.css("left",h+"px")}else{this.timeButton.css("left","0px")}this.dateTimeInput.css("left",this.calendarButton.width());if(this.showTimeButton&&this.showCalendarButton){this.dateTimeInput.css("left",this.timeButton.width()+this.calendarButton.width())}if(a.jqx.browser.msie&&a.jqx.browser.version<=8){this.dateTimeInput.css("left",1+this.calendarButton.width());if(this.showTimeButton&&this.showCalendarButton){this.dateTimeInput.css("left",1+this.timeButton.width()+this.calendarButton.width())}}}},_removeHandlers:function(){var b=this;this.removeHandler(a(document),"mousedown."+this.id);if(this.dateTimeInput){this.removeHandler(this.dateTimeInput,"keydown."+this.id);this.removeHandler(this.dateTimeInput,"blur");this.removeHandler(this.dateTimeInput,"focus");this.removeHandler(this.host,"focus");this.removeHandler(this.dateTimeInput,"mousedown");this.removeHandler(this.dateTimeInput,"mouseup");this.removeHandler(this.dateTimeInput,"keydown");this.removeHandler(this.dateTimeInput,"keyup");this.removeHandler(this.dateTimeInput,"keypress")}if(this.calendarButton!=null){this.removeHandler(this.calendarButton,"mousedown")}if(this.timeButton!=null){this.removeHandler(this.timeButton,"mousedown")}if(this.calendarContainer!=null){this.removeHandler(this.calendarContainer,"cellSelected");this.removeHandler(this.calendarContainer,"cellMouseDown")}this.removeHandler(a(window),"resize."+this.id)},isOpened:function(){var c=this;var b=a.data(document.body,"openedJQXCalendar"+this.id);if(b!=null&&b==c.calendarContainer){return true}return false},wheel:function(d,c){var e=0;if(!d){d=window.event}if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(!b){if(d.preventDefault){d.preventDefault()}d.returnValue=false;return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(b){if(b<0){this.spinDown()}else{this.spinUp()}return false},focus:function(){try{var c=this;this._setSelectionStart(0);this._selectGroup(-1);this.dateTimeInput.focus();setTimeout(function(){c._setSelectionStart(0);c._selectGroup(-1);c.dateTimeInput.focus()},25)}catch(b){}},_addHandlers:function(){var e=this.element.id;var c=this.element;var d=this;if(this.host.parents()){this.addHandler(this.host.parents(),"scroll.datetimeinput"+this.element.id,function(f){var g=d.isOpened();if(g){d.close()}})}this.addHandler(this.host,"mouseenter",function(){if(!d.disabled&&d.enableHover){hovered=true;d.calendarButtonIcon.addClass(d.toThemeProperty("jqx-icon-calendar-hover"));d.calendarButton.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mouseleave",function(){if(!d.disabled&&d.enableHover){d.calendarButtonIcon.removeClass(d.toThemeProperty("jqx-icon-calendar-hover"));d.calendarButton.removeClass(d.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mousewheel",function(f){d.wheel(f,d)});this.addHandler(a(document),"mousedown."+this.id,this._closeOpenedCalendar,{me:this});if(a.jqx.mobile.isTouchDevice()){this.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id,this._closeOpenedCalendar,{me:this})}this.addHandler(this.dateTimeInput,"keydown."+this.id,function(h){var g=a.data(document.body,"openedJQXCalendar"+d.id);if(g!=null&&g==d.calendarContainer){var f=d.handleCalendarKey(h,d);return f}});if(this.calendarContainer!=null){this.addHandler(this.calendarContainer,"keydown",function(f){if(f.keyCode==13){if(d.isOpened()){if(!d._calendar._viewAnimating&&d._calendar.view=="month"){d.hideCalendar("selected");d.dateTimeInput.focus();return false}}return true}else{if(f.keyCode==9){if(d.isOpened()){d.hideCalendar("selected");return true}}else{if(f.keyCode==27){if(d.isOpened()){d.hideCalendar();d.dateTimeInput.focus();return false}return true}}}d.timePopup=false;if(f.keyCode==84){d.timePopup=true}if(f.keyCode==115){if(d.isOpened()){d.hideCalendar("keyboard");d.dateTimeInput.focus();return false}else{if(!d.isOpened()){d.showCalendar("keyboard");d.dateTimeInput.focus();return false}}}if(f.altKey){if(f.keyCode==38){if(d.isOpened()){d.hideCalendar("keyboard");d.dateTimeInput.focus();return false}}else{if(f.keyCode==40){if(!d.isOpened()){d.showCalendar("keyboard");d.dateTimeInput.focus();return false}}}}});this.addHandler(this.calendarContainer,"cellSelected",function(g){if(d.closeCalendarAfterSelection){var f=a.data(document.body,"openedJQXCalendarValue");if(g.args.selectionType=="mouse"){if(d.selectionMode!="range"){d.hideCalendar("selected")}else{if(d._calendar._clicks==0){d.hideCalendar("selected")}}}}});this.addHandler(this.calendarContainer,"cellMouseDown",function(f){if(d.closeCalendarAfterSelection){if(d._calendar.value){a.data(document.body,"openedJQXCalendarValue",new a.jqx._jqxDateTimeInput.getDateTime(d._calendar.value.dateTime))}}})}this.addHandler(this.dateTimeInput,"blur",function(h){if(d.value!=null){d.isEditing=false;var g=d.value.dateTime.getDay();var f=d._oldDT;d._validateValue(true);if(h.stopPropagation){h.stopPropagation()}d._updateText();d._raiseEvent(9,h)}d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"focus",function(f){d.focus()});this.addHandler(this.dateTimeInput,"focus",function(g){if(d.value!=null){if(d.selectionMode!="range"){d._oldDT=new Date(d.value.dateTime)}else{d._oldDT=d.getRange()}var f=d._selection();d.isEditing=true;d._validateValue();d._updateText();d._setSelectionStart(0);d._selectGroup(-1,f);d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))}else{d._setSelectionStart(0);d._selectGroup(-1);d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))}if(g.stopPropagation){g.stopPropagation()}if(g.preventDefault){g.preventDefault();return false}});var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.addHandler(this.calendarButton,b,function(g){var h=d.container;var f=h.css("display")=="block";d.timePopup=false;d.calendarPopup=true;if(!d.disabled){if(!d.isanimating){if(f){d.hideCalendar();return false}else{d.showCalendar("mouse");g.preventDefault()}}}});this.addHandler(this.timeButton,b,function(g){var h=d.container;var f=h.css("display")=="block";d.timePopup=true;d.calendarPopup=false;if(!d.disabled){if(!d.isanimating){if(f){d.hideCalendar("mouse");return false}else{d.showCalendar("mouse");g.preventDefault()}}}});this.addHandler(this.dateTimeInput,"mousedown",function(f){return d._raiseEvent(2,f)});this.addHandler(this.dateTimeInput,"mouseup",function(f){return d._raiseEvent(3,f)});this.addHandler(this.dateTimeInput,"keydown",function(f){return d._raiseEvent(4,f)});this.addHandler(this.dateTimeInput,"keyup",function(f){return d._raiseEvent(5,f)});this.addHandler(this.dateTimeInput,"keypress",function(f){return d._raiseEvent(6,f)})},createID:function(){var b=Math.random()+"";b=b.replace(".","");b="99"+b;b=b/1;return"dateTimeInput"+b},setMaxDate:function(b,c){if(b==null){return}if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.maxDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(this._calendar!=null){this._calendar.setMaxDate(b)}if(c!=false){if(this.getDate()!=null&&this.getDate()>b){this.setDate(b)}a.jqx.aria(this,"aria-valuemax",b);this._refreshValue();this._updateText()}},getMaxDate:function(){if(this.maxDate!=null&&this.maxDate!=undefined){return this.maxDate.dateTime}return null},setMinDate:function(b,c){if(b==null){return}if(b!=null&&typeof(b)=="string"){b=new Date(b);if(b=="Invalid Date"){return}}this.minDate=a.jqx._jqxDateTimeInput.getDateTime(b);if(this._calendar!=null){this._calendar.setMinDate(b)}if(c!=false){if(this.getDate()!=null&&this.getDate()<b){this.setDate(b)}a.jqx.aria(this,"aria-valuemin",b);this._refreshValue();this._updateText()}},getMinDate:function(){if(this.minDate!=null&&this.minDate!=undefined){return this.minDate.dateTime}return null},_applyCulture:function(){var d=false;try{if(Globalize!=undefined){d=true}}catch(c){}try{if(a.global){a.global.preferCulture(this.culture);this.localization.calendar=a.global.culture.calendar}else{if(d){var b=Globalize.culture(this.culture);this.localization.calendar=b.calendar}}this._loadItems();if(this._calendar!=null){this._calendar.culture=this.culture;this._calendar.localization=this.localization;this._calendar.render()}}catch(c){}},propertyMap:function(b){if(b=="value"){if(this.selectionMode!="range"){return this.getDate()}else{return this.getRange()}}return null},propertyChangedHandler:function(c,d,f,e){if(c.isInitialized==undefined||c.isInitialized==false){return}if(d=="restrictedDates"){c.calendarContainer.css({restrictedDates:e})}if(d=="popupZIndex"){c.calendarContainer.css({zIndex:e})}if(d=="showCalendarButton"){c._arrange()}if(d=="showTimeButton"){c._arrange();if(c.timePopupElement){c.timePopupElement.remove();c.timePopupElement=null}}if(d=="selectionMode"){c._calendar.selectionMode=e;c.refreshValue()}if(d=="min"){if(typeof(e)=="string"){c.setMinDate(new Date(e))}else{c.setMinDate(e)}}if(d=="max"){if(typeof(e)=="string"){c.setMaxDate(new Date(e))}else{c.setMaxDate(e)}}if(d=="value"){if(e!=null&&e instanceof Date){if(isNaN(e.getFullYear())||isNaN(e.getMonth())||isNaN(e.getDate())){this.value=f;return}e=a.jqx._jqxDateTimeInput.getDateTime(e)}else{if(e!=null&&typeof(e)=="string"){var b=new Date(e);if(b!=undefined&&!isNaN(b)){this.value=a.jqx._jqxDateTimeInput.getDateTime(b)}}}}if(d=="views"){c.calendarContainer.jqxCalendar({views:e})}if(d=="enableViews"){c.calendarContainer.jqxCalendar({enableViews:e})}if(d=="selectableDays"){c.calendarContainer.jqxCalendar({selectableDays:e})}if(d=="showFooter"){c.calendarContainer.jqxCalendar({showFooter:e})}if(d=="rtl"){c.calendarContainer.jqxCalendar({rtl:e});if(e){c.dateTimeInput.css("direction","rtl");c.dateTimeInput.addClass("jqx-rtl")}else{c.dateTimeInput.css("direction","ltr");c.dateTimeInput.removeClass("jqx-rtl")}}if(d=="todayString"||d=="clearString"){c.calendarContainer.jqxCalendar({clearString:c.clearString,todayString:c.todayString})}if(d=="dayNameFormat"){c.calendarContainer.jqxCalendar({dayNameFormat:e})}if(d=="firstDayOfWeek"){c.calendarContainer.jqxCalendar({firstDayOfWeek:e})}if(d=="showWeekNumbers"){c.calendarContainer.jqxCalendar({showWeekNumbers:e})}if(d=="culture"||d=="localization"){c._applyCulture()}else{if(d=="formatString"){c._loadItems()}}if(d=="theme"){a.jqx.utilities.setTheme(f,e,c.host);c.calendarContainer.jqxCalendar({theme:e})}if(d=="width"||d=="height"){c.refresh();return}c._setOption(d,e,f);if(d=="dropDownWidth"||d=="dropDownHeight"){c.calendarContainer.jqxCalendar({width:c.dropDownWidth,height:c.dropDownHeight});c._calendar.render();c.container.height(c.calendarContainer.height());c.container.width(c.calendarContainer.width())}},clear:function(){if(this.allowNullDate){if(this.selectionMode!="range"){this.setDate(null)}else{this._calendar._clicks=1;this.setRange(null,null)}this._calendar._clicks=0}else{if(this.selectionMode!="range"){this.setDate(me.getMinDate())}else{this._calendar._clicks=1;this.setRange(me.getMinDate(),me.getMinDate());this._calendar._clicks=0}}this.hideCalendar()},today:function(){var c=new Date();c.setHours(0,0,0,0);if(this.selectionMode!="range"){this.setDate(c)}else{this._calendar._clicks=0;var b=new Date();b.setHours(23,59,59,0);this.setRange(c,b);this._calendar._clicks=0}this.hideCalendar()},setDate:function(d){var e=this.getDate();if(d!=null&&typeof(d)=="string"){var f=d;if(d.toString().indexOf(",")>=0){d=d.replace(/\,/g,"/");d=new Date(d);if(d=="Invalid Date"){d=f}}if(d.toString().indexOf("-")>=0){d=d.replace(/\-/g,"/");d=new Date(d);if(d=="Invalid Date"){d=f}}if(d!=""){var c=d;if(Globalize!=undefined){d=Globalize.parseDate(c,this.formatString,this.culture)}else{if(a.jqx.dataFormat){d=a.jqx.dataFormat.parsedate(c,this.formatString,this.localization.calendar)}else{d=new Date(d)}}if(d=="Invalid Date"){return}if(d===null&&c!==null){if(c!="Invalid Date"){d=c}}}}if(d==null||d=="null"||d=="undefined"){if(!this.allowNullDate){d=this.min}}if(d=="Invalid Date"){d=null}if(d==null||d=="null"||d=="undefined"||d===""){if(this.value!=null){this.value=null;this._calendar.setDate(null);this._refreshValue();if(this.cookies){if(this.value!=null){a.jqx.cookie.cookie("jqxDateTimeInput"+this.element.id,this.value.dateTime.toString(),this.cookieoptions)}}this._setSelectionStart(0);this._selectGroup(-1);this._raiseEvent("0",d,e);this._raiseEvent("9",d,e)}return}if(d<this.getMinDate()||d>this.getMaxDate()){return}if(this.value==null){this.value=new a.jqx._jqxDateTimeInput.getDateTime(new Date());this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0)}if(d.getFullYear){this.value._setYear(d.getFullYear());this.value._setDay(1);this.value._setMonth(d.getMonth()+1);this.value._setHours(d.getHours());this.value._setMinutes(d.getMinutes());this.value._setSeconds(d.getSeconds());this.value._setMilliseconds(d.getMilliseconds());this.value._setDay(d.getDate())}this._validateTimeRange();this._refreshValue();if(this.cookies){if(this.value!=null){a.jqx.cookie.cookie("jqxDateTimeInput"+this.element.id,this.value.dateTime.toString(),this.cookieoptions)}}var b=this.getDate();var g=(b-e);if(g!=0){this._raiseEvent("0",d,e);this._raiseEvent("9",d,e);return true}},getDate:function(){if(this.value==undefined){return null}return new Date(this.value.dateTime)},getText:function(){return this.dateTimeInput.val()},setRange:function(d,c){if(d=="Invalid Date"){d=null}if(c=="Invalid Date"){c=null}if(d!=null&&typeof(d)=="string"){d=new Date(d);if(d=="Invalid Date"){return}}if(c!=null&&typeof(c)=="string"){c=new Date(c);if(c=="Invalid Date"){return}}if(d&&isNaN(d)&&d.toString()=="NaN"&&typeof(d)!="string"){return}if(c&&isNaN(c)&&c.toString()=="NaN"&&typeof(c)!="string"){return}this._calendar.setRange(d,c);if(c&&d&&(c.valueOf()!=d.valueOf())){this._range={from:d,to:c}}else{this._range=this._calendar.getRange()}var b=d;if(b!=null&&b.getFullYear){if(this.value==null){this.value=new a.jqx._jqxDateTimeInput.getDateTime(new Date());this.value._setHours(0);this.value._setMinutes(0);this.value._setSeconds(0);this.value._setMilliseconds(0)}this.value._setYear(b.getFullYear());this.value._setMonth(b.getMonth()+1);this.value._setHours(b.getHours());this.value._setMinutes(b.getMinutes());this.value._setSeconds(b.getSeconds());this.value._setMilliseconds(b.getMilliseconds());this.value._setDay(b.getDate())}this._refreshValue();if(this.value){this._raiseEvent("0",this.value.dateTime)}else{this._raiseEvent("0",null)}},getRange:function(){var b=this._calendar.getRange();if(this._range){var d=this._range.from;var c=this._range.to;if(c&&d&&(c.valueOf()!=d.valueOf())){if(b.from){b.from.setHours(d.getHours(),d.getMinutes(),d.getSeconds(),d.getMilliseconds())}if(b.to){b.to.setHours(c.getHours(),c.getMinutes(),c.getSeconds(),c.getMilliseconds())}}}return b},_validateValue:function(e){var b=false;for(var d=0;d<this.items.length;d++){var c=this.editors[d].value;switch(this.items[d].type){case"FORMAT_AMPM":if(c<0){c=0}else{if(c>1){c=1}}break;case"Character":break;case"Day":if(c<1){c=1}else{if(c>31){c=31}}break;case"FORMAT_hh":if(c<1){c=1}else{if(c>12){c=12}}break;case"FORMAT_HH":if(c<0){c=0}else{if(c>23){c=23}}break;case"Millisecond":if(c<0){c=0}else{if(c>999){c=999}}break;case"Minute":if(c<0){c=0}else{if(c>59){c=59}}break;case"Month":if(c<1){c=1}else{if(c>12){c=12}}break;case"ReadOnly":break;case"Second":if(c<0){c=0}else{if(c>59){c=59}}break;case"Year":if(c<this.minDate.year){c=this.minDate.year}else{if(c>this.maxDate.year){c=this.maxDate.year}}break}if(this.editors[d].value!=c){this.editors[d].value=c;b=true}}this.updateValue();if(this.value!=null&&e===true){if(this.value.dateTime>this.maxDate.dateTime){this._internalSetValue(this.maxDate);this._updateEditorsValue()}else{if(this.value.dateTime<this.minDate.dateTime){this._internalSetValue(this.minDate);this._updateEditorsValue()}}this._updateText()}},spinUp:function(){var d=this.value;if(d==null){return}if(this.activeEditor!=null){var b=this.editors.indexOf(this.activeEditor);if(b==-1){return}if(this.items[b].type=="Day"){if(this.value!=null){this.activeEditor.maxValue=this.value._daysInMonth(this.value.year,this.value.month)}}var c=this.activeEditor.positions;this.activeEditor.increaseValue(this.enableAbsoluteSelection);this.activeEditor.positions=c}if(this.isEditing){this.isEditing=false}this.updateValue();this.isEditing=true;this._updateText();var e=this.editors.indexOf(this.activeEditor);if(e>=0){this._selectGroup(e)}},spinDown:function(){var d=this.value;if(d==null){return}if(this.activeEditor!=null){var b=this.editors.indexOf(this.activeEditor);if(b==-1){return}if(this.items[b].type=="Day"){if(this.value!=null){this.activeEditor.maxValue=this.value._daysInMonth(this.value.year,this.value.month)}}var c=this.activeEditor.positions;this.activeEditor.decreaseValue(this.enableAbsoluteSelection);this.activeEditor.positions=c}if(this.isEditing){this.isEditing=false}this.updateValue();this.isEditing=true;this._updateText();var e=this.editors.indexOf(this.activeEditor);if(e>=0){this._selectGroup(e)}},_passKeyToCalendar:function(c){if(c.keyCode==13||c.keyCode==9){this.hideCalendar("selected");return true}else{if(c.keyCode==27){var e=this.calendarContainer;var d=this._calendar;var f=this.closeCalendarAfterSelection;this.closeCalendarAfterSelection=false;d.setDate(this.value.dateTime);this.closeCalendarAfterSelection=f;this.hideCalendar()}}var f=this.closeCalendarAfterSelection;this.closeCalendarAfterSelection=false;var b=this._calendar._handleKey(c);this.closeCalendarAfterSelection=f;return b},handleCalendarKey:function(f,e){var c=a(f.target);var d=a.data(document.body,"openedJQXCalendar"+this.id);if(d!=null){if(d.length>0){var b=e._passKeyToCalendar(f);return b}}return true},_findPos:function(c){if(c==null){return}while(c&&(c.type=="hidden"||c.nodeType!=1||a.expr.filters.hidden(c))){c=c.nextSibling}var b=a(c).coord(true);return[b.left,b.top]},testOffset:function(h,f,c){var g=h.outerWidth();var k=h.outerHeight();var j=a(window).width()+a(window).scrollLeft();var e=a(window).height()+a(window).scrollTop();if(f.left+g>j){if(g>this.host.width()){var d=this.host.coord().left;var b=g-this.host.width();f.left=d-b+2}}if(f.left<0){f.left=parseInt(this.host.coord().left)+"px"}f.top-=Math.min(f.top,(f.top+k>e&&e>k)?Math.abs(k+c+23):0);return f},open:function(b){if(b=="time"){this.timePopup=true}else{this.timePopup=false}this.showCalendar()},close:function(b){this.hideCalendar()},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},initTimePopup:function(){this.timePopupElement=a("<div style='border-style: solid; border-width: 1px;'></div>").appendTo(this.timeContainer);this.timePopupElement.addClass(this.toThemeProperty("jqx-widget-content jqx-widget jqx-date-time-input-popup"));var t="";t+="<table><tbody><tr><td><a class='increment-hour-column' href='javascript:;' data-action='incrementHour'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td><a class='increment-minute-column' href='javascript:;' data-action='incrementMinute'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td><a class='increment-second-column' href='javascript:;' data-action='incrementSecond'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td><a class='increment-millisecond-column' href='javascript:;' data-action='incrementMSSecond'><div class='jqx-icon-up'></div></a></td><td class='separator'>&nbsp;</td><td class='increment-meridian-column'><a href='javascript:;' data-action='toggleMeridian'><div class='jqx-icon-up'></div></a></td></tr><tr><td><input type='text' class='jqx-timepicker-hour' maxlength='2'></td><td class='separator'>:</td><td><input type='text' class='jqx-timepicker-minute' maxlength='2'></td><td class='separator'>:</td><td><input type='text' class='jqx-timepicker-second' maxlength='2'></td><td class='separator'>:</td><td><input type='text' class='jqx-timepicker-millisecond' maxlength='3'></td><td class='separator'>&nbsp;</td><td><input type='text' class='jqx-timepicker-meridian' maxlength='2'></td></tr><tr><td><a class='decrement-hour-column' href='javascript:;' data-action='decrementHour'><div class='jqx-icon-down'></div></a></td><td class='separator'></td><td><a class='decrement-minute-column' href='javascript:;' data-action='decrementMinute'><div class='jqx-icon-down'></div></a></td><td class='separator'></td><td><a class='decrement-second-column' href='javascript:;' data-action='decrementSecond'><div class='jqx-icon-down'></div></a></td><td class='separator'></td><td><a class='decrement-millisecond-column' href='javascript:;' data-action='decrementMillisecond'><div class='jqx-icon-down'></div></a></td><td class='separator'>&nbsp;</td><td><a class='decrement-meridian-column' href='javascript:;' data-action='toggleMeridian'><div class='jqx-icon-down'></div></a></td></tr></tbody></table>";var m=this._getFormatValue(this.formatString);if(this.selectionMode!="range"){this.timePopupElement[0].innerHTML=t}else{this.timePopupElement[0].innerHTML="<table><tr><td>"+t+"</td><td>-</td><td>"+t+"</td></tr></table>"}this.timePopupElement.find(".jqx-icon-down").addClass(this.toThemeProperty("jqx-icon jqx-icon-arrow-down"));this.timePopupElement.find(".jqx-icon-up").addClass(this.toThemeProperty("jqx-icon jqx-icon-arrow-up"));var g=this.timePopupElement.find("input");g.addClass(this.toThemeProperty("jqx-input"));g.addClass(this.toThemeProperty("jqx-rc-all"));this.addHandler(g,"mousedown",function(v){v.stopPropagation()});var e=function(v){if(v.target.className.indexOf("hour")>=0){n._decrementHour(a(v.target))}if(v.target.className.indexOf("minute")>=0){n._decrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("second")>=0){n._decrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("millisecond")>=0){n._decrementMillisecond(a(v.target))}if(v.target.className.indexOf("meridian")>=0){n._decrementMeridian(a(v.target))}};var l=function(v){if(v.target.className.indexOf("hour")>=0){n._incrementHour(a(v.target))}if(v.target.className.indexOf("minute")>=0){n._incrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("second")>=0){n._incrementMinuteSecond(a(v.target))}if(v.target.className.indexOf("millisecond")>=0){n._incrementMillisecond(a(v.target))}if(v.target.className.indexOf("meridian")>=0){n._incrementMeridian(a(v.target))}};var s=function(w,v){var x=0;if(!w){w=window.event}if(w.originalEvent&&w.originalEvent.wheelDelta){w.wheelDelta=w.originalEvent.wheelDelta}if(w.originalEvent&&w.originalEvent.deltaY!=undefined){x=-w.originalEvent.deltaY}if(w.wheelDelta){x=w.wheelDelta/120}else{if(w.detail){x=-w.detail/3}}if(x){if(document.activeElement==w.target&&w.target.nodeName.toLowerCase()=="input"){if(x<0){e(w)}else{l(w)}}if(w.preventDefault){w.preventDefault()}w.returnValue=false}if(w.preventDefault){w.preventDefault()}w.returnValue=false};this.addHandler(g,"wheel",function(v){s(v)});this.addHandler(g,"keydown",function(w){var v=a(w.target);if(w.ctrlKey){if(w.keyCode==38){if(n.isOpened()){n.hideCalendar("keyboard");n.dateTimeInput.focus();return false}}else{if(w.keyCode==40){if(!n.isOpened()){n.showCalendar("keyboard");n.dateTimeInput.focus();return false}}}}if(w.keyCode==40){e(w);w.preventDefault()}else{if(w.keyCode==38){l(w);w.preventDefault()}else{if(w.keyCode==13){w.preventDefault();n.hideCalendar("keyboard");n.dateTimeInput.focus()}else{if(w.keyCode==27){w.preventDefault();n.hideCalendar("cancel");n.dateTimeInput.focus()}}}}});this.hourInput=a(g[0]);this.minuteInput=a(g[1]);this.secondInput=a(g[2]);this.mssecondInput=a(g[3]);this.meridianInput=a(g[4]);this.hourInput2=a(g[5]);this.minuteInput2=a(g[6]);this.secondInput2=a(g[7]);this.mssecondInput2=a(g[8]);this.meridianInput2=a(g[9]);var n=this;var p=this.timePopupElement.find(".increment-hour-column");this.hourIncrement=a(p[0]);this.hourIncrement2=a(p[1]);this.addHandler(g,"change",function(w){var v=a(w.target);if(v.val().length<=1){v.val("0"+a(w.target).val())}if(w.target.className.indexOf("hour")>=0){var x=parseInt(a(w.target).val());if(m.indexOf("HH")>=0){while(x>24){x=x-24}}else{while(x>12){x=x-12}}if(x<10){x="0"+x}if(v.val()!=x){v.val(x)}}if(w.target.className.indexOf("minute")>=0||w.target.className.indexOf("second")>=0){var x=parseInt(a(w.target).val());while(x>59){x--}if(x<10){x="0"+x}if(v.val()!=x){v.val(x)}}});this._incrementHour=function(v){var w=parseInt(v.val());w++;if(m.indexOf("HH")>=0){if(w>24){w=1}}else{if(w>12){w=1}}if(w<10){w="0"+w}v.val(w)};this._incrementMinuteSecond=function(v){var w=parseInt(v.val());w++;if(w>59){w=0}if(w<10){w="0"+w}v.val(w)};this._incrementMillisecond=function(v){var w=parseInt(v.val());w++;if(w>999){w=0}if(w<10){w="0"+w}v.val(w)};this._incrementMeridian=function(v){var w=v.val();if(w.toLowerCase().indexOf("a")>=0){w="PM"}else{w="AM"}v.val(w)};this._decrementHour=function(v){var w=parseInt(v.val());w--;if(m.indexOf("HH")>=0){if(w<0){w=23}}else{if(w<1){w=12}}if(w<10){w="0"+w}v.val(w)};this._decrementMinuteSecond=function(v){var w=parseInt(v.val());w--;if(w<0){w=59}if(w<10){w="0"+w}v.val(w)};this._decrementMillisecond=function(v){var w=parseInt(v.val());w--;if(w<0){w=999}if(w<10){w="0"+w}v.val(w)};this._decrementMeridian=function(v){var w=v.val();if(w.toLowerCase().indexOf("a")>=0){w="PM"}else{w="AM"}v.val(w)};this.addHandler(this.hourIncrement,"mousedown",function(v){v.stopPropagation();n._incrementHour(n.hourInput)});this.addHandler(this.hourIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementHour(n.hourInput2)});var q=this.timePopupElement.find(".increment-minute-column");this.minuteIncrement=a(q[0]);this.minuteIncrement2=a(q[1]);this.addHandler(this.minuteIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.minuteInput)});this.addHandler(this.minuteIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.minuteInput2)});var c=this.timePopupElement.find(".increment-second-column");this.secondIncrement=a(c[0]);this.secondIncrement2=a(c[1]);this.addHandler(this.secondIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.secondInput)});this.addHandler(this.secondIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMinuteSecond(n.secondInput2)});var d=this.timePopupElement.find(".increment-millisecond-column");this.millisecondsIncrement=a(d[0]);this.millisecondsIncrement2=a(d[1]);this.addHandler(this.millisecondsIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMillisecond(n.mssecondInput)});this.addHandler(this.millisecondsIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMillisecond(n.mssecondInput2)});var j=this.timePopupElement.find(".increment-meridian-column");this.meridianIncrement=a(j[0]);this.meridianIncrement2=a(j[1]);this.addHandler(this.meridianIncrement,"mousedown",function(v){v.stopPropagation();n._incrementMeridian(n.meridianInput)});this.addHandler(this.meridianIncrement2,"mousedown",function(v){v.stopPropagation();n._incrementMeridian(n.meridianInput2)});var o=this.timePopupElement.find(".decrement-hour-column");this.hourDecrement=a(o[0]);this.hourDecrement2=a(o[1]);this.addHandler(this.hourDecrement,"mousedown",function(v){v.stopPropagation();n._decrementHour(n.hourInput)});this.addHandler(this.hourDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementHour(n.hourInput2)});var k=this.timePopupElement.find(".decrement-minute-column");this.minuteDecrement=a(k[0]);this.minuteDecrement2=a(k[1]);this.addHandler(this.minuteDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.minuteInput)});this.addHandler(this.minuteDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.minuteInput2)});var u=this.timePopupElement.find(".decrement-second-column");this.secondDecrement=a(u[0]);this.secondDecrement2=a(u[1]);this.addHandler(this.secondDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.secondInput)});this.addHandler(this.secondDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMinuteSecond(n.secondInput2)});var b=this.timePopupElement.find(".decrement-millisecond-column");this.millisecondsDecrement=a(b[0]);this.millisecondsDecrement2=a(b[1]);this.addHandler(this.millisecondsDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMillisecond(n.mssecondInput)});this.addHandler(this.millisecondsDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMillisecond(n.mssecondInput2)});var f=this.timePopupElement.find(".decrement-meridian-column");this.meridianDecrement=a(f[0]);this.meridianDecrement2=a(f[1]);this.addHandler(this.meridianDecrement,"mousedown",function(v){v.stopPropagation();n._decrementMeridian(n.meridianInput)});this.addHandler(this.meridianDecrement2,"mousedown",function(v){v.stopPropagation();n._decrementMeridian(n.meridianInput2)});var r=this.timePopupElement.find("table");this.addHandler(this.timePopupElement,"mousedown",function(v){v.stopPropagation()});var h=function(v){var w=v.find("tr");if(m.indexOf("ss")==-1){n.secondInput.hide();n.secondInput2.hide();a(a(w[0]).children()[3]).hide();a(a(w[0]).children()[4]).hide();a(a(w[1]).children()[3]).hide();a(a(w[1]).children()[4]).hide();a(a(w[2]).children()[3]).hide();a(a(w[2]).children()[4]).hide()}if(m.indexOf("tt")==-1&&m.indexOf("hh")==-1){n.meridianInput.hide();n.meridianInput2.hide();a(a(w[0]).children()[7]).hide();a(a(w[0]).children()[8]).hide();a(a(w[1]).children()[7]).hide();a(a(w[1]).children()[8]).hide();a(a(w[2]).children()[7]).hide();a(a(w[2]).children()[8]).hide()}if(m.indexOf("zz")==-1){n.mssecondInput.hide();n.mssecondInput2.hide();a(a(w[0]).children()[5]).hide();a(a(w[0]).children()[6]).hide();a(a(w[1]).children()[5]).hide();a(a(w[1]).children()[6]).hide();a(a(w[2]).children()[5]).hide();a(a(w[2]).children()[6]).hide()}};if(r.length==1){h(r)}else{h(a(a(r)[1]));h(a(a(r)[2]))}},updateTimePopup:function(){var b=this._getFormatValue(this.formatString);if(this.selectionMode!="range"){var f=this.getDate();if(this.hourInput){if(f){var c=f.getHours();var h=f.getMinutes();var g=f.getHours();var e=f.getSeconds();var d=f.getMilliseconds()}else{var c=0;var h=0;var g=0;var e=0;var d=0}if(c>=12){g="PM";if(b.indexOf("HH")==-1){c-=12;if(c==0){c=12}}}else{g="AM"}if(this.meridianInput.css("display")!="none"){if(c==0){c=12}}if(c<10){c="0"+c}if(h<10){h="0"+h}if(e<10){e="0"+e}if(d<10){d="0"+d}this.hourInput.val(c);this.minuteInput.val(h);this.secondInput.val(e);this.mssecondInput.val(d);this.meridianInput.val(g)}}else{var f=this.getRange().from;if(this.hourInput){if(f){var c=f.getHours();var h=f.getMinutes();var g=f.getHours();var e=f.getSeconds();var d=f.getMilliseconds()}else{var c=0;var h=0;var g=0;var e=0;var d=0}if(c>=12){g="PM";if(b.indexOf("HH")==-1){c-=12;if(c==0){c=12}}}else{g="AM"}if(this.meridianInput.css("display")!="none"){if(c==0){c=12}}if(c<10){c="0"+c}if(h<10){h="0"+h}if(e<10){e="0"+e}if(d<10){d="0"+d}this.hourInput.val(c);this.minuteInput.val(h);this.secondInput.val(e);this.mssecondInput.val(d);this.meridianInput.val(g)}var f=this.getRange().to;if(this.hourInput2){if(f){var c=f.getHours();var h=f.getMinutes();var g=f.getHours();var e=f.getSeconds();var d=f.getMilliseconds()}else{var c=0;var h=0;var g=0;var e=0;var d=0}if(c>=12){g="PM";if(b.indexOf("HH")==-1){c-=12;if(c==0){c=12}}}else{g="AM"}if(this.meridianInput.css("display")!="none"){if(c==0){c=12}}if(c<10){c="0"+c}if(h<10){h="0"+h}if(e<10){e="0"+e}if(d<10){d="0"+d}this.hourInput2.val(c);this.minuteInput2.val(h);this.secondInput2.val(e);this.mssecondInput2.val(d);this.meridianInput2.val(g)}}},showCalendar:function(){var m=this.calendarContainer;var q=this._calendar;a.jqx.aria(this,"aria-expanded",true);if(this.showTimeButton){if(this.timePopup){if(!this.timePopupElement){this.initTimePopup()}this.calendarContainer.css("visibility","hidden");this.timeContainer.css("visibility","visible");this.updateTimePopup();var d=this.timeContainer.find("input");var s=0;for(var v=0;v<d.length;v++){if(d[v].style.display!="none"){s+=50}}this.container.width(parseInt(s));if(!this.touch){setTimeout(function(){d[0].focus();a(d[0]).select()},150+this.openDelay)}}else{this.container.width(parseInt(this.calendarContainer.width())+25);this.timeContainer.css("visibility","hidden");this.calendarContainer.css("visibility","visible")}}if(this.value!=null){if(this.selectionMode!="range"){this._oldDT=new Date(this.value.dateTime)}else{this._oldDT=this.getRange()}}else{this._oldDT=null}if(!q.canRender){q.canRender=true;q.render()}var l=this.container;var p=this;var g=a(window).scrollTop();var h=a(window).scrollLeft();var n=parseInt(this._findPos(this.host[0])[1])+parseInt(this.host.outerHeight())-1+"px";var e,r=parseInt(Math.round(this.host.coord(true).left));e=r+"px";var w=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();if((w!=null&&w)){e=a.jqx.mobile.getLeftPos(this.element);n=a.jqx.mobile.getTopPos(this.element)+parseInt(this.host.outerHeight());if(a("body").css("border-top-width")!="0px"){n=parseInt(n)-this._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){e=parseInt(e)-this._getBodyOffset().left+"px"}}this.container.css("left",e);this.container.css("top",n);var c=this.closeCalendarAfterSelection;this.closeCalendarAfterSelection=false;this.isEditing=false;if(p.selectionMode=="default"){this._validateValue();this._updateText();var t=this.value!=null?this.value.dateTime:new Date();q.setDate(t)}this.closeCalendarAfterSelection=c;var b=false;if(this.dropDownHorizontalAlignment=="right"||this.rtl){var k=this.container.outerWidth();var u=Math.abs(k-this.host.outerWidth()+2);if(!this.rtl){u-=2}if(k>this.host.width()){var f=23;this.container.css("left",f+parseInt(Math.round(r))-u+"px")}else{this.container.css("left",25+parseInt(Math.round(r))+u+"px")}}if(this.enableBrowserBoundsDetection){var j=this.testOffset(m,{left:parseInt(this.container.css("left")),top:parseInt(n)},parseInt(this.host.outerHeight()));if(parseInt(this.container.css("top"))!=j.top){b=true;m.css("top",23);m.addClass(this.toThemeProperty("jqx-popup-up"))}else{m.css("top",0)}this.container.css("top",j.top);if(parseInt(this.container.css("left"))!=j.left){this.container.css("left",j.left)}}this._raiseEvent(7,m);if(this.animationType!="none"){this.container.css("display","block");var o=parseInt(m.outerHeight());m.stop();this.isanimating=true;this.opening=true;if(this.animationType=="fade"){m.css("margin-top",0);m.css("opacity",0);m.animate({opacity:1},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.calendarContainer.focus()});if(this.timePopup){this.timeContainer.css("margin-top",0);this.timeContainer.css("opacity",0);this.timeContainer.animate({opacity:1},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.timeContainer.focus()})}}else{m.css("opacity",1);if(this.timePopup){this.timeContainer.css("opacity",1)}if(b){m.css("margin-top",o)}else{m.css("margin-top",-o)}if(this.timePopup){if(b){this.timeContainer.css("margin-top",o)}else{this.timeContainer.css("margin-top",-o)}this.timeContainer.animate({"margin-top":0},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.timeContainer.focus()})}m.animate({"margin-top":0},this.openDelay,function(){p.isanimating=false;p.opening=false;a.data(document.body,"openedJQXCalendar"+p.id,m);p.calendarContainer.focus()})}}else{m.stop();p.isanimating=false;p.opening=false;m.css("opacity",1);m.css("margin-top",0);this.container.css("display","block");a.data(document.body,"openedJQXCalendar"+p.id,m);this.calendarContainer.focus();if(this.timePopup){this.timeContainer.stop();this.timeContainer.css("opacity",1);this.timeContainer.css("margin-top",0);this.timeContainer.focus()}}if(this.value==null){if(this._calendar&&this._calendar._getSelectedCell()){this._calendar._getSelectedCell().isSelected=false}}if(this.timePopup){this.timeButtonIcon.addClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.timeButton.addClass(this.toThemeProperty("jqx-fill-state-hover"));this.timeButton.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}else{this.calendarButtonIcon.addClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.calendarButton.addClass(this.toThemeProperty("jqx-fill-state-hover"));this.calendarButton.addClass(this.toThemeProperty("jqx-fill-state-pressed"))}this.host.addClass(this.toThemeProperty("jqx-fill-state-focus"))},hideCalendar:function(k){var h=this.calendarContainer;var b=this.container;var p=this;a.jqx.aria(this,"aria-expanded",false);if(this.showTimeButton){if(this.timeContainer.css("visibility")!="hidden"&&k!="cancel"){if(this.selectionMode!="range"){var e=this.getDate();var g=parseInt(this.hourInput.val());var f=parseInt(this.minuteInput.val());var c=parseInt(this.secondInput.val());var q=parseInt(this.mssecondInput.val());var d=this.meridianInput.val();if(isNaN(g)){g=0}if(isNaN(f)){f=0}if(isNaN(c)){c=0}if(isNaN(q)){q=0}if(this.meridianInput.css("display")!="none"){if(d.toLowerCase().indexOf("p")>=0){if(g<12){g+=12}}if(d.toLowerCase().indexOf("a")>=0){if(g>=12){g-=12}}}if(!e){e=new Date()}e.setHours(g,f,c,q);this.setDate(e)}else{if(this.hourInput&&k!="selected"){var j=this.getRange();var g=parseInt(this.hourInput.val());var f=parseInt(this.minuteInput.val());var c=parseInt(this.secondInput.val());var q=parseInt(this.mssecondInput.val());var d=this.meridianInput.val();if(isNaN(g)){g=0}if(isNaN(f)){f=0}if(isNaN(c)){c=0}if(isNaN(q)){q=0}if(this.meridianInput.css("display")!="none"){if(d.toLowerCase().indexOf("p")>=0){if(g<12){g+=12}}if(d.toLowerCase().indexOf("a")>=0){if(g>=12){g-=12}}}var m=j.from;if(!m){m=new Date()}m.setHours(g,f,c,q);var g=parseInt(this.hourInput2.val());var f=parseInt(this.minuteInput2.val());var c=parseInt(this.secondInput2.val());var q=parseInt(this.mssecondInput2.val());var d=this.meridianInput2.val();if(f==""){f=0}if(c==""){c=0}if(q==""){q=0}if(this.meridianInput2.css("display")!="none"){if(d.toLowerCase().indexOf("p")>=0){if(g<12){g+=12}}if(d.toLowerCase().indexOf("a")>=0){if(g>=12){g-=12}}}var l=j.to;if(!l){l=new Date()}l.setHours(g,f,c,q);if(l.valueOf()<m.valueOf()){return false}this.setRange(m,l)}else{if(k=="selected"){return}}}}}a.data(document.body,"openedJQXCalendar"+this.id,null);if(this.animationType!="none"){var o=h.outerHeight();h.css("margin-top",0);if(this.showTimeButton){this.timeContainer.css("margin-top",0)}this.isanimating=true;var n=-o;if(parseInt(this.container.coord().top)<parseInt(this.host.coord().top)){n=o}if(this.animationType=="fade"){h.animate({opacity:0},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}else{h.animate({"margin-top":n},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}if(this.showTimeButton){if(this.animationType=="fade"){this.timeContainer.animate({opacity:0},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}else{this.timeContainer.animate({"margin-top":n},this.closeDelay,function(){b.css("display","none");p.isanimating=false})}}}else{b.css("display","none")}if(k!=undefined){this._updateSelectedDate(k)}this.timeButtonIcon.removeClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.timeButton.removeClass(this.toThemeProperty("jqx-fill-state-hover"));this.timeButton.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this.calendarButtonIcon.removeClass(this.toThemeProperty("jqx-icon-calendar-pressed"));this.calendarButton.removeClass(this.toThemeProperty("jqx-fill-state-hover"));this.calendarButton.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this._raiseEvent(8,h)},_updateSelectedDate:function(){var m=this.value;if(m==null){m=new a.jqx._jqxDateTimeInput.getDateTime(new Date());m._setHours(0);m._setMinutes(0);m._setSeconds(0);m._setMilliseconds(0)}var g=m.hour;var f=m.minute;var c=m.second;var b=m.millisecond;if(this.selectionMode=="range"&&this._calendar.getRange().from==null){this.setDate(null);return}var d=new a.jqx._jqxDateTimeInput.getDateTime(this._calendar.value.dateTime);d._setHours(g);d._setMinutes(f);d._setSeconds(c);d._setMilliseconds(b);var n=this.setDate(d.dateTime);if(this.selectionMode=="range"&&!n&&this._oldDT){var h=this.getRange();var j=this._oldDT;var l=false;var k=false;var e=this._oldDT.from;var d=h.from;if(d!=null&&e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){l=true}}var d=h.to;if(d!=null){e=this._oldDT.to;if(e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){k=true}}}if(l&&k){return true}this._raiseEvent(0,{});this._raiseEvent(9,{})}},_closeOpenedCalendar:function(b){var e=a(b.target);var k=a.data(document.body,"openedJQXCalendar"+b.data.me.id);var d=false;a.each(e.parents(),function(){if(this.className&&this.className.indexOf){if(this.className.indexOf("jqx-calendar")!=-1){d=true;return false}if(this.className.indexOf("jqx-date-time-input-popup")!=-1){d=true;return false}if(this.className.indexOf("jqx-input")!=-1){return false}}});if(a(b.target).ischildof(b.data.me.host)){return true}if(b.target!=null&&(b.target.tagName=="B"||b.target.tagName=="b")){var l=b.data.me.host.coord();var n=b.data.me.host.width();var c=b.data.me.host.height();var m=parseInt(l.top);var g=parseInt(l.left);if(m<=b.pageY&&b.pageY<=m+c){if(g<=b.pageX&&b.pageX<=g+n){return true}}}if(k!=null&&!d){if(k.length>0){var h=k[0].id.toString();var f=h.toString().substring(13);var j=a(document).find("#"+f);var o=b.data.me.hideCalendar();if(o!==false){a.data(document.body,"openedJQXCalendar"+b.data.me.id,null)}}}},_loadItems:function(){if(this.value!=null){this.items=new Array();var d=this._getFormatValue(this.formatString);this.items=this._parseFormatValue(d);this.editors=new Array();for(var b=0;b<this.items.length;b++){var c=this.items[b].getDateTimeEditorByItemType(this.value,this);this.editors[b]=c}}this._updateEditorsValue();this._updateText()},_updateText:function(){var d=this;var e="";if(d.items.length==0&&d.value!=null){d._loadItems()}if(d.value!=null){if(d.items.length>=1){e=d.format(d.value,0,d.items.length)}var b=d.dateTimeInput.val();if(b!=e){d._raiseEvent(1,d.value)}}if(d.selectionMode=="range"){var c=d.getRange();fromText=d.format(d.value,0,d.items.length);if(c.to){var g=a.jqx._jqxDateTimeInput.getDateTime(c.from);fromText=d.format(g,0,d.items.length);var f=a.jqx._jqxDateTimeInput.getDateTime(c.to);toText=d.format(f,0,d.items.length);var e=fromText+" - "+toText;if(e==" - "){e=""}}else{e=""}}d.dateTimeInput.val(e)},format:function(g,h,f){var b="";for(var e=h;e<f;++e){var c=this.items[e].dateParser(g,this);if(this.isEditing&&this.items[e].type!="ReadOnly"){if(this.selectionMode!="range"){var d=this.items[e].type=="Day"&&this.items[e].format.length>2;if(this.items[e].type=="FORMAT_AMPM"){d=true;if(this.editors[e].value==0){c=this.editors[e].amString}else{c=this.editors[e].pmString}}if(!d){c=this.items[e].dateParserInEditMode(new Number(this.editors[e].value),"d"+this.editors[e].maxEditPositions,this);while(c.length<this.editors[e].maxEditPositions){c="0"+c}}}}b+=c}return b},_getFormatValueGroupLength:function(b){for(i=1;i<b.toString().length;++i){if(b.substring(i,i+1)!=b.substring(0,1)){return i}}return b.length},_parseFormatValue:function(h){var c=new Array();var f=h.toString();var e=0;while(f.length>0){var d=this._getFormatValueGroupLength(f);var g=null;switch(f.substring(0,1)){case":":case"/":d=1;g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,1),"ReadOnly",this.culture);break;case'"':case"'":var b=f.indexOf(f[0],1);g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(1,1+Math.max(1,b-1)),"ReadOnly",this.culture);d=Math.max(1,b+1);break;case"\\":if(f.length>=2){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(1,1),"ReadOnly",this.culture);d=2}break;case"d":case"D":if(d>2){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Day",this.culture)}else{g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Day",this.culture)}break;case"f":case"F":if(d>7){d=7}if(d>3){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"ReadOnly",this.culture)}else{g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Millisecond",this.culture)}break;case"g":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"ReadOnly",this.culture);break;case"h":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"FORMAT_hh",this.culture);break;case"H":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"FORMAT_HH",this.culture);break;case"m":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Minute",this.culture);break;case"M":if(d>4){d=4}g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Month",this.culture);break;case"s":case"S":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Second",this.culture);break;case"t":case"T":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"FORMAT_AMPM",this.culture);break;case"y":case"Y":if(d>1){g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"Year",this.culture)}else{d=1;g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,1),dateTimeFormatInfo,"ReadOnly",this.culture)}break;case"z":g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,d),"ReadOnly",this.culture);break;default:d=1;g=a.jqx._jqxDateTimeInput.DateTimeFormatItem._create(f.substring(0,1),"ReadOnly",this.culture);break}c[e]=a.extend(true,{},g);f=f.substring(d);e++}return c},_getFormatValue:function(b){if(b==null||b.length==0){b="d"}if(b.length==1){switch(b.substring(0,1)){case"d":return this.localization.calendar.patterns.d;case"D":return this.localization.calendar.patterns.D;case"t":return this.localization.calendar.patterns.t;case"T":return this.localization.calendar.patterns.T;case"f":return this.localization.calendar.patterns.f;case"F":return this.localization.calendar.patterns.F;case"M":return this.localization.calendar.patterns.M;case"Y":return this.localization.calendar.patterns.Y;case"S":return this.localization.calendar.patterns.S}}if(b.length==2&&b.substring(0,1)=="%"){b=b.substring(1)}return b},_updateEditorsValue:function(){var j=this.value;if(j==null){return}var g=j.year;var h=j.day;var d=j.hour;var l=j.millisecond;var b=j.second;var c=j.minute;var f=j.month;if(this.items==null){return}for(var e=0;e<this.items.length;e++){switch(this.items[e].type){case"FORMAT_AMPM":var k=d%12;if(k==0){k=12}if(d>=0&&d<12){this.editors[e].value=0}else{this.editors[e].value=1}break;case"Day":this.editors[e].value=h;break;case"FORMAT_hh":var k=d%12;if(k==0){k=12}this.editors[e].value=k;break;case"FORMAT_HH":this.editors[e].value=d;break;case"Millisecond":this.editors[e].value=l;break;case"Minute":this.editors[e].value=c;break;case"Month":this.editors[e].value=f;break;case"Second":this.editors[e].value=b;break;case"Year":this.editors[e].value=g;break}}},updateValue:function(){if(this.isEditing){return}if(this.items&&this.items.length==0){return}var o=0;var s=1;var B=1;var l=0;var d=0;var I=0;var u=0;var H=1;var h=0;var m=false;var r=false;var C=false;var c=false;var b=false;var q=false;var x=false;var t=new Array();var e=null;var y=0;for(var A=0;A<this.items.length;A++){switch(this.items[A].type){case"FORMAT_AMPM":h=this.editors[A].value;e=this.editors[A];break;case"Character":break;case"Day":if(this.items[A].format.length<3){B=this.editors[A].value;t[y++]=this.editors[A];if(B==0){B=1}C=true}break;case"FORMAT_hh":var E=this.editors[A];l=E.value;c=true;break;case"FORMAT_HH":l=this.editors[A].value;c=true;break;case"Millisecond":d=this.editors[A].value;x=true;break;case"Minute":u=this.editors[A].value;b=true;break;case"Month":H=this.editors[A].value;r=true;if(H==0){H=1}break;case"ReadOnly":break;case"Second":I=this.editors[A].value;q=true;break;case"Year":m=true;s=this.editors[A].value;var G=this.editors[A].getDateTimeItem().format;if(G.length<3){var w="1900";if(w.Length==4){var v=""+w[0]+w[1];var D;D=parseInt(v);s=s+(D*100)}}if(s==0){s=1}break}}var F=this.value!=null?new Date(this.value.dateTime):null;if(s>0&&H>0&&B>0&&u>=0&&l>=0&&I>=0&&d>=0){var J=this.value;if(J!=null){if(!m){s=J.year}if(!r){H=J.month}if(!C){B=J.day}}try{if(H>12){H=12}if(H<1){H=1}if(J._daysInMonth(s,H)<=B){B=J._daysInMonth(s,H);if(t!=null&&t.length>0){for(A=0;A<t.length;A++){t[A].value=B}}}if(e!=null){if(e.value==0){if(l>=12){l-=12}}else{if(l+12<24){l+=12}}}var g=this.value.dateTime.getDate();this.value._setYear(parseInt(s));this.value._setDay(B);this.value._setMonth(H);if(c){this.value._setHours(l)}if(b){this.value._setMinutes(u)}if(q){this.value._setSeconds(I)}if(x){this.value._setMilliseconds(d)}this._validateTimeRange()}catch(j){this.value=J}if(F!=null){var z=this.value.dateTime.getFullYear()==F.getFullYear()&&this.value.dateTime.getDate()==F.getDate()&&this.value.dateTime.getMonth()==F.getMonth()&&this.value.dateTime.getHours()==F.getHours()&&this.value.dateTime.getMinutes()==F.getMinutes()&&this.value.dateTime.getSeconds()==F.getSeconds();if(!z){if(this.changing){var n=this.changing(F,this.value.dateTime);if(n){this.value=a.jqx._jqxDateTimeInput.getDateTime(n)}}this._raiseEvent("0",this.value.dateTime);if(this.cookies){if(this.value!=null){a.jqx.cookie.cookie("jqxDateTimeInput"+this.element.id,this.value.dateTime.toString(),this.cookieoptions)}}if(this.change){this.change(this.value.dateTime)}}}}var f=this.editors.indexOf(this.activeEditor);var p=this.items[f];if(this.value){if(this.calendarContainer.jqxCalendar("_isDisabled",this.value.dateTime)){this.dateTimeInput.addClass(this.toThemeProperty("jqx-input-invalid"))}else{this.dateTimeInput.removeClass(this.toThemeProperty("jqx-input-invalid"))}}},_internalSetValue:function(b){this.value._setYear(parseInt(b.year));this.value._setDay(b.day);this.value._setMonth(b.month);this.value._setHours(b.hour);this.value._setMinutes(b.minute);this.value._setSeconds(b.second);this.value._setMilliseconds(b.milisecond)},_raiseEvent:function(c,o,f){var n=this.events[c];var g={};g.owner=this;if(o==null){o={}}if(f==null){f=o}var m=o.charCode?o.charCode:o.keyCode?o.keyCode:0;var p=true;var l=this.readonly;var b=new a.Event(n);b.owner=this;b.args=g;b.args.date=this.getDate();this.element.value=this.dateTimeInput.val();if(c==9&&this.selectionMode!="range"){var d=b.args.date;if(this._oldDT){if(d!=null){if(!(d.getFullYear()!=this._oldDT.getFullYear()||d.getMonth()!=this._oldDT.getMonth()||d.getDate()!=this._oldDT.getDate()||d.getHours()!=this._oldDT.getHours()||d.getMinutes()!=this._oldDT.getMinutes()||d.getSeconds()!=this._oldDT.getSeconds())){return true}}a.jqx.aria(this,"aria-valuenow",this.getDate());a.jqx.aria(this,"aria-valuetext",this.getText());if(this.getDate()!=null){a.jqx.aria(this,"aria-label","Current focused date is "+this.getDate().toLocaleString())}else{a.jqx.aria(this,"aria-label","Current focused date is Null")}}b.args.oldValue=f;b.args.newValue=b.args.date;if(this._oldDT){b.args.oldValue=this._oldDT}}if(this.selectionMode=="range"){b.args.date=this.getRange();if(this._oldDT){var d=b.args.date.from;if(c==9){var k=false;var j=false;var e=this._oldDT.from;if(d!=null&&e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){k=true}}var d=b.args.date.to;if(d!=null){e=this._oldDT.to;if(e){if(!(d.getFullYear()!=e.getFullYear()||d.getMonth()!=e.getMonth()||d.getDate()!=e.getDate()||d.getHours()!=e.getHours()||d.getMinutes()!=e.getMinutes()||d.getSeconds()!=e.getSeconds())){j=true}}}if(k&&j){return true}var k=b.args.date.from;if(k==null){k=""}else{k=k.toString()}var j=b.args.date.to;if(j==null){j=""}else{j=j.toString()}a.jqx.aria(this,"aria-valuenow",k+"-"+j);a.jqx.aria(this,"aria-valuetext",this.getText());if(k&&j){a.jqx.aria(this,"aria-label","Current focused range is "+k.toLocaleString()+"-"+j.toLocaleString())}}}b.args.oldValue=f;b.args.newValue=b.args.date;if(this._oldDT){b.args.oldValue=this._oldDT}}if(this.host.css("display")=="none"){return true}if(c!=2&&c!=3&&c!=4&&c!=5&&c!=6){p=this.host.trigger(b);if(b.stopPropagation){b.stopPropagation()}}var h=this;if(!l){if(c==2&&!this.disabled){setTimeout(function(){h.isEditing=true;if(this.selectionMode=="range"){h._selectGroup(-1)}else{h._selectGroup(-1)}},25)}}if(c==4){if(l||this.disabled){if(m==8||m==46){this.isEditing=false;if(this.allowKeyboardDelete){if(this.allowNullDate){this.setDate(null)}else{if(this.selectionMode!="range"){this.setDate(this.getMinDate())}else{this.setRange(this.getMinDate(),this.getMinDate())}}}}if(m==9){return true}if(!o.altKey){return false}}p=this._handleKeyDown(o,m)}else{if(c==5){if(m==9){return true}if(l||this.disabled){return false}}else{if(c==6){if(m==9){return true}if(l||this.disabled){return false}p=this._handleKeyPress(o,m)}}}return p},_doLeftKey:function(){if(this.activeEditor!=null){if(!this.isEditing){this.isEditing=true}var b=this.activeEditor;var d=false;var e=this.editors.indexOf(this.activeEditor);var c=e;if(this.enableAbsoluteSelection){if(e>=0&&this.activeEditor.positions>0){this.activeEditor.positions--;this._selectGroup(e);return}}while(e>0){this.activeEditor=this.editors[--e];this._selectGroup(e);if(this.items[e].type!="ReadOnly"){d=true;break}}if(!d){if(c>=0){this.activeEditor=this.editors[c]}}if(this.activeEditor!=null&&b!=this.activeEditor){if(this.items[e].type!="ReadOnly"){if(this.enableAbsoluteSelection){this.activeEditor.positions=this.activeEditor.maxEditPositions-1}else{this.activeEditor.positions=0}}}if(this.activeEditor!=b){this._validateValue();this._updateText();this._selectGroup(this.editors.indexOf(this.activeEditor));return true}else{return false}}},_doRightKey:function(){if(this.activeEditor!=null){if(!this.isEditing){this.isEditing=true}var b=this.activeEditor;var d=false;var e=this.editors.indexOf(this.activeEditor);var c=e;if(this.enableAbsoluteSelection){if(e>=0&&this.activeEditor.positions<this.activeEditor.maxEditPositions-1){this.activeEditor.positions++;this._selectGroup(e);return}}while(e<=this.editors.length-2){this.activeEditor=this.editors[++e];this._selectGroup(e);if(this.items[e].type!="ReadOnly"){if(this.items[e].type=="Day"&&this.items[e].format.length>2){break}d=true;break}}if(!d){if(c>=0){this.activeEditor=this.editors[c]}}if(this.activeEditor!=null&&this.activeEditor!=b){if(this.items[e].type!="ReadOnly"){this.activeEditor.positions=0}}if(this.activeEditor!=b){this._validateValue();this._updateText();this._selectGroup(this.editors.indexOf(this.activeEditor));return true}else{return false}}},_saveSelectedText:function(){var b=this._selection();var d="";var c=this.dateTimeInput.val();if(b.start>0||b.length>0){for(i=b.start;i<b.end;i++){d+=c[i]}}if(window.clipboardData){window.clipboardData.setData("Text",d)}return d},_selectWithAdvancePattern:function(){var f=this.editors.indexOf(this.activeEditor);var g=false;if(this.items[f].type!="ReadOnly"){g=true}if(!g){return}var d=this.activeEditor;if(d!=null){var e=d.positions==d.maxEditPositions;if(e){this.editorText="";var c=d.value;var b=false;switch(this.items[f].type){case"FORMAT_AMPM":if(c<0){c=0}else{if(c>1){c=1}}break;case"Character":break;case"Day":if(c<1){c=1}else{if(c>31){c=31}}break;case"FORMAT_hh":if(c<1){c=1}else{if(c>12){c=12}}break;case"FORMAT_HH":if(c<0){c=0}else{if(c>23){c=23}}break;case"Millisecond":if(c<0){c=0}else{if(c>99){c=99}}break;case"Minute":if(c<0){c=0}else{if(c>59){c=59}}break;case"Month":if(c<1){c=1}else{if(c>12){c=12}}break;case"ReadOnly":break;case"Second":if(c<0){c=0}else{if(c>59){c=59}}break;case"Year":if(c<this.minDate.year){c=this.minDate.year}else{if(c>this.maxDate.year){c=this.maxDate.year}}break}if(d.value!=c){b=true}if(!b){this.isEditing=false;this._validateValue();this._updateText();this.isEditing=true;this._doRightKey();return true}return false}}},_handleKeyPress:function(k,o){var n=this._selection();var b=this;var d=k.ctrlKey||k.metaKey;if((d&&o==97)||(d&&o==65)){return true}if(o==8){if(n.start>0){b._setSelectionStart(n.start)}return false}if(o==46){if(n.start<this.items.length){b._setSelectionStart(n.start)}return false}if(n.start>=0){var f=String.fromCharCode(o);var l=parseInt(f);if(f=="p"||f=="a"||f=="A"||f=="P"){if(this.activeEditor.item.type=="FORMAT_AMPM"){if(this.activeEditor.value==0&&(f=="p"||f=="P")){this.spinUp()}else{if(this.activeEditor.value==1&&(f=="a"||f=="A")){this.spinDown()}}}}if(!isNaN(l)){if(this.container.css("display")=="block"){this.hideCalendar()}this.updateValue();this._updateText();var h=false;var j=this.editors.indexOf(this.activeEditor);var c=null;this.isEditing=true;if(j.type!="ReadOnly"){c=this.activeEditor}if(c!=null&&c.positions==0){this.editorText=""}if(this.activeEditor==null){this.activeEditor=this.editors[0]}if(this.activeEditor==null){return false}this.activeEditor.insert(f);if(c!=null&&this.editorText.length>=c.maxEditPositions){this.editorText=""}this.editorText+=f;var p=this._selectWithAdvancePattern();if(this.activeEditor.positions==this.activeEditor.maxEditPositions){var g=this._getLastEditableEditorIndex();if(this.editors.indexOf(this.activeEditor)==g&&p&&this.enableAbsoluteSelection){this.activeEditor.positions=this.activeEditor.maxEditPositions-1}else{this.activeEditor.positions=0}}h=true;this.updateValue();this._updateText();this._selectGroup(this.editors.indexOf(this.activeEditor));return false}}var m=this._isSpecialKey(o);return m},_getLastEditableEditorIndex:function(){var b=0;var c=this;for(itemIndex=this.items.length-1;itemIndex>=0;itemIndex--){if(this.items[itemIndex].type!="ReadOnly"){return itemIndex}}return -1},_handleKeyDown:function(h,o){var g=this;this.timePopup=false;if(o==84){this.timePopup=true}if(h.keyCode==115){if(g.isOpened()){g.hideCalendar("keyboard");return false}else{if(!g.isOpened()){g.showCalendar("keyboard");return false}}}if(h.altKey){if(h.keyCode==38){if(g.isOpened()){g.hideCalendar("keyboard");return false}}else{if(h.keyCode==40){if(!g.isOpened()){g.showCalendar("keyboard");return false}}}}else{if(h.ctrlKey){this.timePopup=true;if(h.keyCode==38){if(g.isOpened()){g.hideCalendar("keyboard");return false}}else{if(h.keyCode==40){if(!g.isOpened()){g.showCalendar("keyboard");return false}}}}}if(g.isOpened()){if(h.keyCode==9){g.hideCalendar("selected");return true}return}var m=g._selection();var b=h.ctrlKey||h.metaKey;if((b&&o==99)||(b&&o==67)){g._saveSelectedText(h);return true}if((b&&o==122)||(b&&o==90)){return false}if((b&&o==118)||(b&&o==86)||(h.shiftKey&&o==45)){var l=g.val();var j=this;var c=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');a("body").append(c);c.select();setTimeout(function(){var e=c.val();j.setDate(e);c.remove()},100);return true}if(o==8||o==46){if(!h.altKey&&!b&&o==46){g.isEditing=false;if(g.allowKeyboardDelete){if(g.allowNullDate){g.setDate(null)}else{if(g.selectionMode!="range"){g.setDate(g.getMinDate())}else{g.setRange(g.getMinDate(),g.getMinDate())}}}}else{if(g.activeEditor!=null){var f=g.editors.indexOf(g.activeEditor);if(g.activeEditor.positions>=0){var d=g._format(Number(g.activeEditor.value),"d"+g.activeEditor.maxEditPositions,g.culture);tmp=d;tmp=tmp.substring(0,g.activeEditor.positions)+"0"+tmp.substring(g.activeEditor.positions+1);if(parseInt(tmp)<g.activeEditor.minValue){tmp=g._format(Number(g.activeEditor.minValue),"d"+g.activeEditor.maxEditPositions,g.culture)}if(g.enableAbsoluteSelection){g.activeEditor.value=tmp}else{g.activeEditor.value=g.activeEditor.minValue}g._validateValue();g._updateText();if(o==8){var n=this;if(g.enableAbsoluteSelection&&g.activeEditor.positions>0){setTimeout(function(){n.activeEditor.positions=n.activeEditor.positions-1;n._selectGroup(f)},10)}else{setTimeout(function(){n._doLeftKey()},10)}}else{g._selectGroup(f)}}else{g._doLeftKey()}}}return false}if(o==38){this.spinUp();return false}else{if(o==40){this.spinDown();return false}}if(o==9){if(h.shiftKey){var p=this._doLeftKey()}else{var p=this._doRightKey()}if(!p){return true}else{return false}}if(o==37){if(this._editor){var p=this._doLeftKey();if(!p){this.isEditing=false;this._validateValue()}return !p}else{var p=this._doLeftKey();return false}}else{if(o==39||o==191){if(this._editor){var p=this._doRightKey();if(!p){this.isEditing=false;this._validateValue()}return !p}else{var p=this._doRightKey();return false}}}var k=this._isSpecialKey(o);if(this.value==null&&(o>=48&&o<=57||o>=96&&o<=105)){if(new Date()>=this.getMinDate()&&new Date()<=this.getMaxDate()){this.setDate(new Date())}else{this.setDate(this.getMaxDate())}}if(!a.jqx.browser.mozilla){return true}if(a.jqx.browser.mozilla&&a.jqx.browser.version>24){return true}return k},_isSpecialKey:function(b){if(b!=8&&b!=9&&b!=13&&b!=35&&b!=36&&b!=37&&b!=39&&b!=27&&b!=46){return false}return true},_selection:function(){if("selectionStart" in this.dateTimeInput[0]){var f=this.dateTimeInput[0];var g=f.selectionEnd-f.selectionStart;return{start:f.selectionStart,end:f.selectionEnd,length:g,text:f.value}}else{var c=document.selection.createRange();if(c==null){return{start:0,end:f.value.length,length:0}}var b=this.dateTimeInput[0].createTextRange();var d=b.duplicate();b.moveToBookmark(c.getBookmark());d.setEndPoint("EndToStart",b);var g=c.text.length;return{start:d.text.length,end:d.text.length+c.text.length,length:g,text:c.text}}},_selectGroup:function(k,m){if(this.host.css("display")=="none"){return}if(this.readonly){return}if(!m){var m=this._selection()}var f="";var b="";var c=null;for(var d=0;d<this.items.length;d++){b=this.items[d].dateParser(this.value,this);if(this.isEditing&&this.items[d].type!="ReadOnly"){var j=this.items[d].type=="Day"&&this.items[d].format.length>2;if(!j&&this.items[d].type!="FORMAT_AMPM"){b=this.items[d].dateParserInEditMode(new Number(this.editors[d].value),"d"+this.editors[d].maxEditPositions,this);while(b.length<this.editors[d].maxEditPositions){b="0"+b}}}f+=b;if(this.items[d].type=="ReadOnly"){continue}if(this.items[d].type=="Day"&&this.items[d].format.length>2){continue}if(k!=undefined&&k!=-1){if(d>=k){var l=f.length-b.length;var e=b.length;if(this.enableAbsoluteSelection){if(!isNaN(parseInt(b))&&this.isEditing&&k!=-1){e=1;l+=this.editors[d].positions}}if(l==this.dateTimeInput.val().length){l--}this._setSelection(l,l+e);c=this.editors[d];this.activeEditor=c;break}}else{if(f.length>=m.start){c=this.editors[d];this.activeEditor=c;var l=f.length-b.length;var e=1;if(this.enableAbsoluteSelection){if(!isNaN(parseInt(b))&&this.isEditing&&k!=-1){e=1;l+=this.editors[d].positions}}else{e=b.length}this._setSelection(l,l+e);break}}}if(d<this.items.length&&k==-1){if(this.items[d].type!="ReadOnly"){this.activeEditor.positions=0}}var h=this._selection();if(h.length==0){if(h.start>0){var g=this._getLastEditableEditorIndex();if(g>=0){}}}},_getLastEditableEditorIndex:function(){var b=-1;for(i=0;i<this.editors.length;i++){if(this.items[i].type=="ReadOnly"){continue}if(this.items[i].type=="Day"&&this.items[i].format.length>2){continue}b=i}return b},_setSelection:function(e,b){try{if("selectionStart" in this.dateTimeInput[0]){this.dateTimeInput[0].setSelectionRange(e,b)}else{var c=this.dateTimeInput[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",e);c.select()}}catch(d){}},_setSelectionStart:function(b){this._setSelection(b,b)},destroy:function(){this.host.removeClass("jqx-rc-all");if(this.timePopupElement){this.timePopupElement.remove()}this._calendar.destroy();this.container.remove();this._removeHandlers();this.dateTimeInput.remove();this.host.remove()},refreshValue:function(){this._refreshValue()},refresh:function(b){if(b!=true){this._setSize();this._arrange()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_setOption:function(b,c,d){if(b==="value"){if(this.selectionMode!="range"){this._oldDT=null}else{this._oldDT=null}this.value=c;this._refreshValue();this._raiseEvent(9,{type:"api"})}if(b=="maxDate"){this._calendar.maxDate=c;this._raiseEvent(9,{type:"api"})}if(b=="minDate"){this._calendar.minDate=c;this._raiseEvent(9,{type:"api"})}if(b=="showCalendarButton"){if(c){this.calendarButton.css("display","block")}else{this.calendarButton.css("display","none")}}if(b=="disabled"){this.dateTimeInput.attr("disabled",c)}if(b=="readonly"){this.readonly=c;this.dateTimeInput.css("readonly",c)}if(b=="textAlign"){this.dateTimeInput.css("text-align",c);this.textAlign=c}if(b=="width"){this.width=c;this.width=parseInt(this.width);this._arrange()}else{if(b=="height"){this.height=c;this.height=parseInt(this.height);this._arrange()}}},_refreshValue:function(){this._updateEditorsValue();this.updateValue();this._validateValue();this._updateText()}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.DateTimeFormatItem={};a.extend(a.jqx._jqxDateTimeInput.DateTimeFormatItem,{_create:function(d,c,b){this.format=d;this.type=c;this.culture=b;return this},_itemValue:function(){switch(this.format.length){case 1:return 9;case 2:return 99;case 3:default:return 999}},_maximumValue:function(){switch(this.format.length){case 1:return 9;case 2:return 99;case 3:default:return 999}},dateParser:function(b,c){if(b==null){return""}var d=c._format(b.dateTime,this.format.length==1?"%"+this.format:this.format,this.culture);return d},dateParserInEditMode:function(e,d,b){if(e==null){return""}var c=b._format(e.toString(),d.length==1?"%"+d:d,this.culture);return c},getDateTimeEditorByItemType:function(n,e){switch(this.type){case"FORMAT_AMPM":var f=a.jqx._jqxDateTimeInput.AmPmEditor._createAmPmEditor(this.format,n.hour/12,e.localization.calendar.AM[0],e.localization.calendar.PM[0],this,e);var d=a.extend({},f);return d;case"Character":return null;case"Day":var k=n.year;var s=n.month;var r;if(this.format.length==3){r=e.localization.calendar.days.namesAbbr}else{if(this.format.length>3){r=e.localization.calendar.days.names}else{r=null}}var t=n.day;if(r!=null){t=n.dayOfWeek+1}var g=a.jqx._jqxDateTimeInput.DateEditor._createDayEditor(n,n.day,1,n._daysInMonth(k,s),this.format.length==1?1:2,2,r,this,e);var d=a.extend({},g);return d;case"FORMAT_hh":var c=n.hour%12;if(c==0){c=12}var q=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(c,1,12,this.format.length==1?1:2,2,this,e);var d=a.extend({},q);return d;case"FORMAT_HH":var h=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.hour,0,23,this.format.length==1?1:2,2,this,e);var d=a.extend({},h);return d;case"Millisecond":var l=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.millisecond/this._itemValue(),0,this._maximumValue(),this.format.length,this.format.length,this,e);var d=a.extend({},l);return d;case"Minute":var o=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.minute,0,59,this.format.length==1?1:2,2,this,e);var d=a.extend({},o);return d;case"Month":var j;if(this.format.length==3){j=e.localization.calendar.months.namesAbbr}else{if(this.format.length>3){j=e.localization.calendar.months.names}else{j=null}}var m=a.jqx._jqxDateTimeInput.DateEditor._createMonthEditor(n.month,this.format.length==2?2:1,j,this,e);var d=a.extend({},m);return d;case"ReadOnly":return a.jqx._jqxDateTimeInput.DisabledEditor._create(this.format.length,n.day,this,e);case"Second":var b=a.jqx._jqxDateTimeInput.NumberEditor._createNumberEditor(n.second,0,59,this.format.length==1?1:2,2,this,e);var d=a.extend({},b);return d;case"Year":var p=a.jqx._jqxDateTimeInput.DateEditor._createYearEditor(n.year,4,this,e);var d=a.extend({},p);return d}return null}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.DateEditor=a.extend(a.jqx._jqxDateTimeInput.DateEditor,{formatValueLength:0,handleYears:false,handleDays:false,handleMonths:false,positions:0,value:0,minEditPositions:0,maxEditPositions:0,minValue:0,maxValue:0,item:null,dateTimeFormatInfo:null,days:null,dateTimeMonths:null,lastDayInput:null,minPositions:function(){if(this.handleYears){if(this.formatValueLength==4){if(this.positions<=1){return 1}else{if(this.positions>=4){return 4}}return this.positions}else{return this.minEditPositions}}return this.minEditPositions},initializeFields:function(e,f,b,d,c){this.minValue=e;this.maxValue=f;this.minEditPositions=b;this.maxEditPositions=d;this.updateActiveEditor(e);this.item=c},_createYearEditor:function(e,d,c,b){a.jqx._jqxDateTimeInput.DateEditor=a.extend(true,{},this);this.initializeFields(d<=4?0:0,d<4?99:9999,(d==2)?2:1,d>3?4:2,c);this.initializeYearEditor(e,d,c.culture);this.handleYears=true;this.that=b;return this},initializeYearEditor:function(d,c,e){this.formatValueLength=c;this.dateTimeFormatInfo=e;var b=d;b=Math.min(b,9999);b=Math.max(b,1);b=this.formatValueLength<4?b%100:b;this.updateActiveEditor(b);this.value=b},updateActiveEditor:function(b){this.value=b;this.positions=0},_createDayEditor:function(b,j,h,e,c,f,g,k,d){a.jqx._jqxDateTimeInput.DateEditor=a.extend(true,{},this);this.initializeFields(h,e,1,f,k);this.currentValue=b;this.value=j;this.days=g;this.handleDays=true;this.that=d;return this},getDayOfWeek:function(b){if(typeof this.currentValue==a.jqx._jqxDateTimeInput.DateTime){this.currentValue.dayOfWeek()}return b},defaultTextValue:function(){var d=this.value;var e=this.minEditPositions;var b=e;var c=this.that._format(this.value,"d"+b,"");return c},textValue:function(){if(this.handleDays){if(this.days==null){return this.defaultTextValue()}else{var b=(this.value%7)+1;b=this.getDayOfWeek(b);return this.days[b]}}else{if(this.handleMonths){if(this.dateTimeMonths==null||this.value<1||this.value>12){return this.defaultTextValue()}else{return this.dateTimeMonths[this.value-1]}}}return this.defaultTextValue()},defaultInsertString:function(c){if(c==null){return this.deleteValue()}if(c.length==0){return this.deleteValue()}var g=c.substring(0,1);if(isNaN(g)){return}var e=true;var d;var b=1;var f=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);d=f;if(this.positions>=this.maxEditPositions){this.positions=0}d=d.substring(0,this.positions)+g+d.substring(this.positions+1);d=this.setValueByString(d,b);return true},setValueByString:function(d,b){d=this.fixValueString(d);var c=new Number(d);this.value=c;this.positions+=b;return d},fixValueString:function(b){if(b.length>this.maxEditPositions){b=b.substring(b.length-this.maxEditPositions)}return b},initializeValueString:function(c){var b;b="";if(this.hasDigits()){b=c}return b},deleteValue:function(){if(this.value==this.minValue&&this.hasDigits()==false){return false}this.updateActiveEditor(this.minValue);return true},hasDigits:function(){return this.positions>0},insert:function(b){if(this.handleDays){if(this.days!=null){var c=false;c=this.insertLongString(b,c);if(c){return c}c=this.insertShortString(b,c);if(c){return c}}if(this.value==1&&this.lastDayInput!=null&&this.lastDayInput.toString().length>0&&this.lastDayInput.toString()=="0"){this.value=0}this.lastDayInput=b;return this.defaultInsertString(b)}else{if(this.handleMonths){if(this.dateTimeMonths!=null){var c=false;c=this.insertLongString2(b,c);if(c){return c}c=this.insertShortString2(b,c);if(c){return c}}}}return this.defaultInsertString(b)},insertShortString:function(d,e){if(d.length==1){for(i=0;i<6;++i){var c=(this.value+i)%7+1;var b=this.days[c-1];if(b.substring(0,1)==d){this.updateActiveEditor(c);e=true;return e}}}return e},insertLongString:function(c,d){if(c.length>0){for(i=0;i<6;++i){var b=(this.value+i)%7+1;if(this.days[b-1]==c){this.updateActiveEditor(b);d=true;return d}}}return d},_createMonthEditor:function(d,c,b,f,e){a.jqx._jqxDateTimeInput.DateEditor=a.extend(true,{},this);this.initializeFields(1,12,c,2,f);this.dateTimeMonths=b;this.value=d;if(this.dateTimeMonths!=null&&this.dateTimeMonths[12]!=null&&this.dateTimeMonths[12].length>0){this.dateTimeMonths=null}this.handleMonths=true;this.that=e;return this},insertLongString2:function(b,c){if(b.length>0){for(i=0;i<11;++i){month=(this.value+i)%12+1;if(this.dateTimeMonths[month-1]==b){this.updateActiveEditor(month);c=true;return c}}}return c},insertShortString2:function(c,d){if(c.length==1){for(i=0;i<11;++i){var e=(this.value+i)%12+1;var b=this.dateTimeMonths[e-1];if(b.substring(0,1)==c){this.updateActiveEditor(e);d=true;return d}}}return d},correctMaximumValue:function(b){if(b>this.maxValue){b=this.minValue}return b},correctMinimumValue:function(b){if(b<this.minValue){b=this.maxValue}return b},increaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)+1;if(f>9){f=0}if(!e){var b=this.value+1;b=this.correctMaximumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},decreaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)-1;if(f<0){f=9}if(!e){var b=this.value-1;b=this.correctMinimumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.NumberEditor={};a.extend(a.jqx._jqxDateTimeInput.NumberEditor,{formatValueLength:0,positions:0,value:0,minEditPositions:0,maxEditPositions:0,minValue:0,maxValue:0,item:null,minPositions:function(){if(this.handleYears){if(this.formatValueLength==4){if(this.positions<=1){return 1}else{if(this.positions>=4){return 4}}return this.positions}else{return this.minEditPositions}}return this.minEditPositions},_createNumberEditor:function(g,f,h,b,e,d,c){a.jqx._jqxDateTimeInput.NumberEditor=a.extend(true,{},this);this.initializeFields(f,h,b,e,d);this.that=c;return this},initializeFields:function(e,f,b,d,c){this.minValue=e;this.maxValue=f;this.minEditPositions=b;this.maxEditPositions=d;this.updateActiveEditor(e);this.item=c},updateActiveEditor:function(b){this.value=b;this.positions=0},getDayOfWeek:function(b){if(typeof this.currentValue==a.jqx._jqxDateTimeInput.DateTime){this.currentValue.dayOfWeek()}return b},textValue:function(){var d=this.value;var e=this.minEditPositions;var b=e;var c=this.that._format(this.value,"d"+b,"");return c},insert:function(c){if(c==null){return this.deleteValue()}if(c.length==0){return this.deleteValue()}var g=c.substring(0,1);if(isNaN(g)){return}var e=true;var d;var b=1;var f=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);d=f;if(this.positions>=this.maxEditPositions){this.positions=0}d=d.substring(0,this.positions)+g+d.substring(this.positions+1);d=this.setValueByString(d,b);return true},setValueByString:function(d,b){d=this.fixValueString(d);var c=new Number(d);this.value=c;this.positions+=b;return d},fixValueString:function(b){if(b.length>this.maxEditPositions){b=b.substring(b.length-this.maxEditPositions)}return b},initializeValueString:function(c){var b;b="";if(this.hasDigits()){b=c}return b},deleteValue:function(){if(this.value==this.minValue&&this.hasDigits()==false){return false}this.updateActiveEditor(this.minValue);return true},hasDigits:function(){return this.positions>0},correctMaximumValue:function(b){if(b>this.maxValue){b=this.minValue}return b},correctMinimumValue:function(b){if(b<this.minValue){b=this.maxValue}return b},increaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)+1;if(f>9){f=0}if(!e){var b=this.value+1;b=this.correctMaximumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},decreaseValue:function(e){var c=this.that._format(Number(this.value),"d"+this.maxEditPositions,this.culture);var f=c.toString()[this.positions];f=parseInt(f)-1;if(f<0){f=9}if(!e){var b=this.value-1;b=this.correctMinimumValue(b);this.updateActiveEditor(b);return true}var d=c.substring(0,this.positions)+f+c.substring(this.positions+1);if(d!=this.value||this.hasDigits()){this.updateActiveEditor(d);return true}else{return false}},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.DisabledEditor={};a.extend(a.jqx._jqxDateTimeInput.DisabledEditor,{_create:function(g,c,f,b,e,d){this.format=g;this.value=-1;this.item=e;this.that=d;return this},textValue:function(){return""},insert:function(b){return false},deleteValue:function(){return false},increaseValue:function(){return false},decreaseValue:function(){return false},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.AmPmEditor={};a.extend(a.jqx._jqxDateTimeInput.AmPmEditor,{_createAmPmEditor:function(g,c,f,b,e,d){this.format=g;this.value=c;this.amString=f;this.pmString=b;this.item=e;this.that=d;if(f==b){this.amString="<"+f;this.pmString=">"+b}return this},textValue:function(){var b=this.amString;if(this.value!=0){b=this.pmString}if(this.format.length==1&&b.length>1){b=b.substring(0,1)}return b},insert:function(f){var d=f.toString();if(d.Length==0){return this.deleteValue()}var c=false;if(this.amString.Length>0&&this.pmString.Length>0){var g=amString[0];var b=d[0];var e=pmString[0];if(g.toString()==b.toString()){this.value=0;c=true}else{if(e.toString()==b.toString()){this.value=1;c=true}}}else{if(this.pmString.Length>0){this.value=1;c=true}else{if(this.amString.Length>0){this.value=0;c=true}}}return c},deleteValue:function(){var b=true;if(this.amString.Length==0&&this.pmString.Length!=0){if(this.value==0){return false}this.value=0}else{if(this.value==1){return false}this.value=1}return b},increaseValue:function(){this.value=1-this.value;return true},decreaseValue:function(){this.increaseValue();return true},getDateTimeItem:function(){return this.item}})})(jqxBaseFramework);(function(a){a.jqx._jqxDateTimeInput.getDateTime=function(c){var b={dateTime:new Date(c),daysPer4Years:1461,daysPerYear:365,daysToMonth365:{0:0,1:31,2:59,3:90,4:120,5:151,6:181,7:212,8:243,9:273,10:304,11:334,12:365},daysToMonth366:{0:0,1:31,2:60,3:91,4:121,5:152,6:182,7:213,8:244,9:274,10:305,11:335,12:366},maxValue:3155378976000000000,millisPerDay:86400000,millisPerHour:3600000,millisPerMinute:60000,millisPerSecond:1000,minTicks:0,minValue:0,ticksPerDay:864000000000,ticksPerHour:36000000000,ticksPerMillisecond:10000,ticksPerMinute:600000000,ticksPerSecond:10000000,hour:c.getHours(),minute:c.getMinutes(),day:c.getDate(),second:c.getSeconds(),month:1+c.getMonth(),year:c.getFullYear(),millisecond:c.getMilliseconds(),dayOfWeek:c.getDay(),isWeekend:function(d){if(d==undefined||d==null){d=this.dateTime}var e=d.getDay()%6==0;return e},dayOfYear:function(e){if(e==undefined||e==null){e=this.dateTime}var d=new Date(e.getFullYear(),0,1);return Math.ceil((e-d)/86400000)},_setDay:function(d){if(d==undefined||d==null){d=0}this.dateTime.setDate(d);this.day=this.dateTime.getDate()},_setMonth:function(d){if(d==undefined||d==null){d=0}this.dateTime.setMonth(d-1);this.month=1+this.dateTime.getMonth()},_setYear:function(d){if(d==undefined||d==null){d=0}this.dateTime.setFullYear(d);this.year=this.dateTime.getFullYear()},_setHours:function(d){if(d==undefined||d==null){d=0}this.dateTime.setHours(d);this.hour=this.dateTime.getHours()},_setMinutes:function(d){if(d==undefined||d==null){d=0}this.dateTime.setMinutes(d);this.minute=this.dateTime.getMinutes()},_setSeconds:function(d){if(d==undefined||d==null){d=0}this.dateTime.setSeconds(d);this.second=this.dateTime.getSeconds()},_setMilliseconds:function(d){if(d==undefined||d==null){d=0}this.dateTime.setMilliseconds(d);this.millisecond=this.dateTime.getMilliseconds()},_addDays:function(f){var d=this.dateTime;var e=d.getDate();d.setDate(d.getDate()+f);if(e===d.getDate()){d.setHours(d.getHours()+d.getTimezoneOffset()/60)}return d},_addWeeks:function(e){var d=this.dateTime;d.setDate(d.getDate()+7*e);return d},_addMonths:function(e){var d=this.dateTime;d.setMonth(d.getMonth()+e);return d},_addYears:function(e){var d=this.dateTime;d.setFullYear(d.getFullYear()+e);return d},_addHours:function(e){var d=this.dateTime;d.setHours(d.getHours()+e);return d},_addMinutes:function(e){var d=this.dateTime;d.setMinutes(d.getMinutes()+e);return d},_addSeconds:function(e){var d=this.dateTime;d.setSeconds(d.getSeconds()+e);return d},_addMilliseconds:function(e){var d=this.dateTime;d.setMilliseconds(d.getMilliseconds()+e);return d},_isLeapYear:function(d){if((d<1)||(d>9999)){throw"invalid year"}if((d%4)!=0){return false}if((d%100)==0){return((d%400)==0)}return true},_dateToTicks:function(f,h,e){if(((f>=1)&&(f<=9999))&&((h>=1)&&(h<=12))){var d=this._isLeapYear(f)?this.daysToMonth366:this.daysToMonth365;if((e>=1)&&(e<=(d[h]-d[h-1]))){var f=f-1;var g=((((((f*365)+(f/4))-(f/100))+(f/400))+d[h-1])+e)-1;return(g*864000000000)}}},_daysInMonth:function(e,f){if((f<1)||(f>12)){throw ("Invalid month.")}var d=this._isLeapYear(e)?this.daysToMonth366:this.daysToMonth365;return(d[f]-d[f-1])},_timeToTicks:function(d,g,e){var f=((d*3600)+(g*60))+e;return(f*10000000)},_equalDate:function(d){if(this.year==d.getFullYear()&&this.day==d.getDate()&&this.month==d.getMonth()+1){return true}return false}};return b}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdocking.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdocking.js
new file mode 100644 (file)
index 0000000..e09e8e5
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDocking","",{});a.extend(a.jqx._jqxDocking.prototype,{defineInstance:function(){var b={orientation:"horizontal",mode:"default",floatingWindowOpacity:0.3,panelsRoundedCorners:true,disabled:false,width:"auto",height:"auto",windowsMode:null,cookies:false,cookieOptions:{},windowsOffset:5,rtl:false,keyboardNavigation:false,_windowOptions:{},_draggedFired:false,_dragging:false,_draggingItem:null,_panels:[],_windows:[],_indicator:null,_events:["dragEnd","dragStart"]};a.extend(true,this,b);return b},createInstance:function(){if(!this.host.jqxWindow){throw new Error("jqxDocking: Missing reference to jqxwindow.js.")}this._refresh(true);if(this.disabled){this.disabled=false;this.disable()}},refresh:function(b){if(!b){this._performLayout()}},_refresh:function(c){this._render();this._removeClasses();this._addClasses();this._setWindowsOptions(true);this._performLayout();this._cookieHandler();this._cookieExporter();this._removeEventListeners();this._addEventListeners();var b=a.Event("resize");this.host.trigger(b)},resize:function(){this._refresh()},_addClasses:function(){this.host.addClass("jqx-docking");for(var b=0;b<this._panels.length;b+=1){this._panels[b].addClass(this.toThemeProperty("jqx-docking-panel"));if(this.panelsRoundedCorners){this._panels[b].addClass(this.toThemeProperty("jqx-rc-all"))}}for(var b=0;b<this._windows.length;b+=1){this._windows[b].addClass(this.toThemeProperty("jqx-docking-window"))}},_removeClasses:function(){this.host.removeClass("jqx-docking");for(var b=0;b<this._panels.length;b+=1){this._panels[b].removeClass(this.toThemeProperty("jqx-docking-panel"));this._panels[b].removeClass(this.toThemeProperty("jqx-rc-all"))}for(var b=0;b<this._windows.length;b+=1){this._windows[b].removeClass(this.toThemeProperty("jqx-docking-window"))}},_render:function(){var b=this.host.children("div"),d;for(var c=0;c<b.length;c+=1){this._panels.push(a(b[c]));this._renderWindows(a(b[c]))}},focus:function(b){if(this.focusedWindow){a(this.focusedWindow).removeClass(this.toThemeProperty("jqx-fill-state-focus"))}if(!a.isEmptyObject(b)&&a.type(b)==="string"&&a("#"+b).length>0){this.focusedWindow=a("#"+b)[0]}else{this.focusedWindow=this._windows[0][0]}a(this.focusedWindow).addClass(this.toThemeProperty("jqx-fill-state-focus"));this.host.focus()},_renderWindows:function(b){var f=b.children("div");for(var d=0;d<f.length;d+=1){this._windows.push(a(f[d]));a(f[d]).jqxWindow({keyboardNavigation:false,rtl:this.rtl,theme:this.theme,enableResize:false,width:a(f[d]).css("width"),maxWidth:Number.MAX_VALUE});a(f[d]).detach();b.append(a(f[d]))}b.append('<div class="spacer" style="clear: both;"></div>');var e=this;if(this.keyboardNavigation){var c=function(i){if(i.keyCode===13){if(e.focusedWindow&&a(e.focusedWindow).jqxWindow("showCollapseButton")){a(e.focusedWindow).jqxWindow("_collapseButton").trigger("click")}}else{if((e.focusedWindow&&i.keyCode===27&&a(e.focusedWindow).jqxWindow("keyboardCloseKey")==="esc")||(e.focusedWindow&&a(e.focusedWindow).jqxWindow("keyboardCloseKey")==i.keyCode)){a(e.focusedWindow).jqxWindow("closeWindow",i)}}if(i.keyCode===9){if(e.focusedWindow==null){e.focusedWindow=e._windows[0];a(e.focusedWindow).focus();i.stopPropagation()}else{var g=-1;a.each(e._windows,function(j,k){if(this[0]==e.focusedWindow){g=j}});if(i.shiftKey){g--}else{g++}if(g>=e._windows.length||g<0){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.focusedWindow=null;i.stopPropagation();return true}var h=e._windows[g];if(!h){h=e._windows[0]}a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.focusedWindow=h[0];a(e.focusedWindow).focus()}a(e.focusedWindow).addClass(e.toThemeProperty("jqx-fill-state-focus"));if(i.preventDefault){i.preventDefault();i.stopPropagation()}}};a.each(e._windows,function(h,i){var g=a(this);e.removeHandler(g,"focus");e.removeHandler(g,"blur");e.removeHandler(g,"mousedown");e.addHandler(g,"mousedown",function(j){if(e.focusedWindow){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"))}e.focusedWindow=g[0];a(e.focusedWindow).addClass(e.toThemeProperty("jqx-fill-state-focus"));a(e.focusedWindow).focus()});e.addHandler(g,"focus",function(j){if(e.focusedWindow){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"))}e.focusedWindow=g[0];a(e.focusedWindow).addClass(e.toThemeProperty("jqx-fill-state-focus"))});e.addHandler(g,"blur",function(j){if(a(document.activeElement).ischildof(a(g))){return true}a(g).removeClass(e.toThemeProperty("jqx-fill-state-focus"))});e.removeHandler(g,"keydown");e.addHandler(g,"keydown",function(j){c(j)})});this.removeHandler(this.host,"keydown");this.addHandler(this.host,"keydown",function(g){c(g)});this.removeHandler(this.host,"blur");this.addHandler(this.host,"blur",function(g){if(e.focusedWindow){a(e.focusedWindow).removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.focusedWindow=null}})}},_performLayout:function(){this.host.css("width",this.width);this.host.css("height",this.height);this._performWindowsLayout();this._performPanelsLayout();this._performWindowsLayout()},_performPanelsLayout:function(){var b,e=this.host.width(),c=0;for(var d=0;d<this._panels.length;d+=1){b=this._panels[d];b.css("height","auto");b.css("min-width","auto");if(this.orientation==="vertical"){b.css("width","auto");b.css("float","none")}else{c+=this._handleHorizontalSize(b,c,e);if(d>0){b.css("margin-left",-this.windowsOffset)}}b.css("min-width",b.width())}if(this.orientation==="horizontal"){if(c<e){this._fillContainer(e,c)}}},_handleHorizontalSize:function(b,c,g){var e=g/this._panels.length,d,f=(b.outerWidth()-b.width());b.css("float","left");if(b.css("width")==="auto"||parseInt(b.css("width"),10)===0){b.width(e-f)}if(c+b.outerWidth()>=g){if(c+e<g){d=e-f;b.css("min-width",d);b.width(d)}else{d=b.width()-((c+b.outerWidth())-g);b.css("min-width",d);b.width(d)}}return b.outerWidth()},_fillContainer:function(f,b){var d=this._panels.length,e=this._panels[d-1],c=f-b+e.width();if(a.jqx.browser.msie&&a.jqx.browser.version<9){c-=this._panels.length}e.width(c)},_performWindowsLayout:function(){var b;for(var c=0;c<this._windows.length;c+=1){b=this._getWindowOptions(this._windows[c]);if(this._windows[c].ischildof(this.host)){if(b){if(b.mode!=="floating"){this._windows[c].css("margin",this.windowsOffset);this._windows[c].css("position","static")}}else{if(this.mode!=="floating"){this._windows[c].css("position","static");this._windows[c].css("margin",this.windowsOffset)}}}this._setWindowSize(this._windows[c],b)}},_setWindowSize:function(d,c){if(c.mode!=="floating"){if(d.ischildof(this.host)){var b=d.parent().width()-(d.outerWidth()-d.width())-2*this.windowsOffset;if(this.orientation==="vertical"){d.jqxWindow("width",b)}else{d.jqxWindow("width",b)}}}this._setWindowOption(d,"size",{width:d.width(),height:d.height()})},_setWindowsOptions:function(b){for(var f=0;f<this._windows.length;f+=1){var g,c=this._windows[f].attr("id"),d=this._getWindowOptions(c);if(!b){var e="TEDX"}g=null;if(this.windowsMode&&this.windowsMode.hasOwnProperty(c)){g=this.windowsMode[c];this._setWindowOption(this._windows[f],"mode",g)}else{if(typeof d!=="undefined"&&typeof d.mode==="undefined"){g=this.mode;this._setWindowOption(this._windows[f],"mode",g)}}if(b){this._setWindowOption(this._windows[f],"resizable",true);if(g=="floating"){this._windows[f].jqxWindow({enableResize:true})}else{this._windows[f].jqxWindow({enableResize:false})}this._setWindowOption(this._windows[f],"size",{height:this._windows[f].height(),width:this._windows[f].width()})}}},_removeEventListeners:function(){for(var b=0;b<this._windows.length;b+=1){this.removeHandler(this._windows[b],"moving",this._itemDragging);this.removeHandler(this._windows[b],"moved",this._itemDrop);this.removeHandler(this._windows[b],"resized",this._itemResized);this.removeHandler(this._windows[b],"collapse",this._collapsed);this.removeHandler(this._windows[b],"expand",this._expanded)}},_addEventListeners:function(){for(var b=0;b<this._windows.length;b+=1){this._addEventListenersTo(this._windows[b])}var c=this;a.jqx.utilities.resize(this.host,function(){c._performLayout()})},_addEventListenersTo:function(b){this.addHandler(b,"moving",this._itemDragging,{self:this});this.addHandler(b,"moved",this._itemDrop,{self:this});this.addHandler(b,"resized",this._itemResized,{self:this});this.addHandler(b,"collapse",this._collapsed,{self:this});this.addHandler(b,"expand",this._expanded,{self:this})},_itemDragging:function(g){var d=g.data.self,f=a(g.target),e=d._getWindowOptions(f);f.removeClass(d.toThemeProperty("jqx-docking-window"));f.css("margin","0px");if(!d._dragging){d._prepareForDragging(f)}if(e.mode==="floating"){return}var b={x:g.args.pageX,y:g.args.pageY},c=d._getMouseOverPanel(b);if(c){d._mouseOverPanel(c,b)}else{d._mouseLeavePanel()}if(!d._draggedFired){d._raiseEvent(1,{window:a(f).attr("id")});d._draggedFired=true}return true},_prepareForDragging:function(c){this._dragging=true;var b={parent:c.parent(),next:c.next(),prev:c.prev()};this._setWindowOption(c,"lastPosition",b);c.detach();a(document.body).append(c);this._setDraggingStyles(c);this._draggingItem=c},_setDraggingStyles:function(b){b.css({position:"absolute",left:b.offset().left,top:b.offset().top});b.fadeTo(0,this.floatingWindowOpacity)},_getMouseOverPanel:function(c){var e,b,g,f;for(var d=0;d<this._panels.length;d+=1){if(this._isMouseOverItem(this._panels[d],c,false)){return this._panels[d]}}return null},_mouseOverPanel:function(c,b){if(this._dragging){var e=c.children("div"),d=this._getHoverWindow(b,e);if(d==="indicator"){return}var f=this._centerOffset(d,b);this._handleIndicator(c,d,f)}},_getHoverWindow:function(c,f){var e,b,h,g;if(this._isMouseOverItem(this._indicator,c,true)){return"indicator"}for(var d=0;d<f.length;d+=1){if(this._isMouseOverItem(a(f[d]),c,true)){return a(f[d])}}return null},_centerOffset:function(f,b){if(f){var e={x:f.offset().left,y:f.offset().top},g=f.height(),d=f.width(),c;c=e.y+g/2;if(b.y>c){return"next"}return"prev"}return"all"},_handleIndicator:function(c,d,e){var b=this._getIndicator(d);if(e==="all"){if(this.orientation==="vertical"){b.insertBefore(c.children(".spacer"))}else{c.append(b)}}else{if(e==="prev"){b.insertBefore(d)}else{b.insertAfter(d)}}this._resizeIndicator(b,c)},_getIndicator:function(){var b=this._indicator;if(!b){b=a('<div class="'+this.toThemeProperty("jqx-docking-drop-indicator")+'"></div>')}this._indicator=b;this._indicator.css("margin",this.windowsOffset);if(this.orientation==="vertical"){this._indicator.css("float","left")}return b},_resizeIndicator:function(c,b){if(this.orientation==="horizontal"){c.width(b.width()-(c.outerWidth(true)-c.width()));c.height(this._draggingItem.height())}else{c.width(this._draggingItem.width());c.height(this._draggingItem.height())}},_mouseLeavePanel:function(b){if(this._indicator){this._indicator.remove();this._indicator=null}},_itemDrop:function(d){var b=d.data.self,c=a(d.currentTarget);b._dragging=false;if(b._indicator){c.detach();c.insertAfter(b._indicator);b._indicator.remove();b._dropFixer(c)}else{b._dropHandler(c)}c.fadeTo(0,1);c.focus();b._indicator=null;b._cookieExporter();b._draggedFired=false;b._raiseEvent(0,{window:c.attr("id")})},_dropFixer:function(b){b.css("position","static");b.addClass(this.toThemeProperty("jqx-docking-window"));b.css("margin",this.windowsOffset);b.jqxWindow("enableResize",false);if(this.orientation==="horizontal"){this._fixWindowSize(b)}},_dropHandler:function(c){var b=this._getWindowOptions(c);if(this.mode==="docked"){this._dropDocked(c)}else{this._dropFloating(c)}},_dropDocked:function(d){var c=this._getWindowOptions(d),b=c.lastPosition;d.detach();if(b.next[0]){d.insertBefore(b.next)}else{if(b.prev[0]){d.insertAfter(b.prev)}else{b.parent.append(d)}}this._dropFixer(d)},_fixWindowSize:function(b){a(b).jqxWindow({width:b.parent().width()-(b.outerWidth()-b.width())-2*parseInt(this.windowsOffset,10)})},_itemResized:function(d){var b=d.data.self,c=a(d.currentTarget);b._setWindowOption(c,"size",{width:d.args.width,height:d.args.height});b._cookieExporter()},_dropFloating:function(c){var b;if(!a(c).jqxWindow("collapsed")){b=this._getWindowOptions(c);a(c).jqxWindow("enableResize",b.resizable)}a(document.body).append(c);this._restoreWindowSize(c)},_restoreWindowSize:function(c){var b=this._getWindowOptions(c);a(c).jqxWindow({width:b.size.width})},_isMouseOverItem:function(i,e,d){if(!i){return false}var j=i.outerWidth(true),g=i.outerHeight(true),b=i.width(),h=i.height(),f=i.offset().top,c=i.offset().left;if(d){f-=(g-h)/2;c-=(j-b)/2;b=j;h=g}if((c<=e.x&&c+b>=e.x)&&(f<=e.y&&f+h+2*this._draggingItem.height()/3>=e.y)){return true}return false},_cookieHandler:function(){if(this.cookies){var b=a.jqx.cookie.cookie("jqxDocking"+this.element.id);if(b!==null){this.importLayout(b);layoutImported=true}}},_cookieExporter:function(){if(this.cookies){a.jqx.cookie.cookie("jqxDocking"+this.element.id,this.exportLayout(),this.cookieOptions)}},_indexOf:function(c,d){for(var b=0;b<d.length;b+=1){if(c[0]===d[b][0]){return b}}return -1},_exportFixed:function(){var e=[],g="",b,f;for(var d=0;d<this._panels.length;d+=1){g+='"panel'+d+'": {';b=this._panels[d].children();for(var c=0;c<b.length;c+=1){f=a(b[c]);if(f.attr("id")){e.push(f);g+='"'+f.attr("id")+'":{"collapsed":'+f.jqxWindow("collapsed")+"},"}}if(b.length>1){g=g.substring(0,g.length-1)}g+="},"}g=g.substring(0,g.length-1);return{JSON:g,children:e}},_exportFloating:function(c){var e="",d;e+='"floating":{';for(var b=0;b<this._windows.length;b+=1){d=a(this._windows[b]);if(this._indexOf(d,c)===-1){e+='"'+d.attr("id")+'":{"x":"'+d.css("left")+'","y":"'+d.css("top")+'","width":"'+d.jqxWindow("width")+'","height":"'+d.jqxWindow("height")+'","collapsed":'+d.jqxWindow("collapsed")+"},"}}if(e.substring(e.length-1,e.length)===","){e=e.substring(0,e.length-1)}e+="}";return e},_importFixed:function(b){for(var c in b){if(c!=="orientation"&&c!=="floating"&&b.hasOwnProperty(c)){order=c.substring(c.length-1,c.length);order=parseInt(order,10);children=b[c];for(var c in children){a("#"+c).css("position","static");if(children[c].collapsed){(function(d){setTimeout(function(){a("#"+d).jqxWindow("collapsed",true)},0)}(c))}this._panels[order].append(a("#"+c));if(this.orientation==="horizontal"){this._fixWindowSize(a("#"+c))}}}}},_importFloating:function(d){var f=d.floating,c,b;for(var e in f){if(f.hasOwnProperty(e)){a("#"+e).css("position","absolute");a(document.body).append(a("#"+e));b=this._dragging;a("#"+e).jqxWindow("move",f[e].x,f[e].y);this._dragging=b;a("#"+e).jqxWindow("width",f[e].width);a("#"+e).jqxWindow("height",f[e].height);a("#"+e).jqxWindow("enableResize",true);this._setWindowsOptions(true);(function(g){setTimeout(function(){a("#"+g).jqxWindow("collapsed",f[g].collapsed)},0)}(e));a("#"+e).fadeTo(0,1)}}},_getWindowOptions:function(b){if(typeof b==="object"&&b!==null){if(b.length>0){b=b.attr("id")}else{b=b.id}}return this._windowOptions[b]},_setWindowOption:function(c,b,d){if(typeof c==="object"&&c!==null){if(c.length>0){c=c.attr("id")}else{c=c.id}}if(typeof this._windowOptions[c]==="undefined"){this._windowOptions[c]={}}this._windowOptions[c][b]=d;if(b==="mode"){this.setWindowMode(c,d)}},_expanded:function(c){var b=c.data.self;b._cookieExporter()},_collapsed:function(c){var b=c.data.self;b._cookieExporter()},_raiseEvent:function(b){var c=a.Event(this._events[b]);c.args=arguments[1];return this.host.trigger(c)},_moveWindow:function(e,c,b){var d=c.children();var g=null;var f=0;a.each(d,function(h){if(a(this).css("position")=="static"){if(f==b&&this!=e[0]){g=this}f++}});if(f<=b){e.appendTo(c)}else{if(g!=null){e.insertBefore(g)}}e.css("position","static")},propertyChangedHandler:function(b,c,e,d){switch(c){case"rtl":a.each(b._windows,function(){this.jqxWindow({rtl:d})});break;case"theme":a.each(b._windows,function(){this.jqxWindow({theme:d})});break;case"orientation":case"height":case"width":b._performLayout();b._cookieExporter();break;case"panelsRoundedCorners":b._removeClasses();b._addClasses();break;case"disabled":if(d){b.disabled=false;b.disable()}else{b.disabled=true;b.enable()}break;case"windowsMode":case"mode":b._setWindowsOptions(false);break;case"cookies":b._cookieExporter();break;case"windowsOffset":b._performLayout();break}},destroy:function(){this._removeEventListeners();this.host.remove();this.windowsMode=null;this.cookieOptions=null;this._windowOptions=null;this._panels=null;this._windows=null;this._events=null},disable:function(){if(!this.disabled){this.disabled=true;this._removeEventListeners();for(var b=0;b<this._windows.length;b+=1){this._windows[b][0].style.opacity="";a(this._windows[b]).jqxWindow("disable")}}},enable:function(){if(this.disabled){this.disabled=false;this._addEventListeners();for(var b=0;b<this._windows.length;b+=1){a(this._windows[b]).jqxWindow("enable")}}},move:function(f,c,b){var c=this._panels[c];if(!c){return}var e=a(c.children(".spacer")),d;e.detach();f=a("#"+f);d=this._getWindowOptions(f);if(d.mode==="floating"){return}else{this._moveWindow(f,c,b)}c.append(e);this._cookieExporter();this._dropFixer(f)},exportLayout:function(){var c="{",b=this._exportFixed();c+=b.JSON+","+this._exportFloating(b.children)+',"orientation": "'+this.orientation+'"';c+="}";return c},importLayout:function(g){try{var f=a.parseJSON(g),b,c;this.orientation=f.orientation;this._performLayout();this._importFixed(f);this._importFloating(f)}catch(d){alert("Invalid JSON string.")}},setWindowMode:function(c,d){var c=a("#"+c),b=this._getWindowOptions(c);if(d==="floating"){c.css("position","absolute");this._windowOptions[c.attr("id")]["mode"]=d}else{if(b.mode==="floating"&&c.css("position")==="absolute"){if(b.lastPosition){this._dropDocked(c)}else{this._panels[0].append(c);this._dropFixer(c)}}}this._windowOptions[c.attr("id")]["mode"]=d},hideCloseButton:function(b){a("#"+b).jqxWindow("showCloseButton",false)},showCloseButton:function(b){a("#"+b).jqxWindow("showCloseButton",true)},hideCollapseButton:function(b){a("#"+b).jqxWindow("showCollapseButton",false)},showCollapseButton:function(b){a("#"+b).jqxWindow("showCollapseButton",true)},expandWindow:function(b,c){a("#"+b).jqxWindow("expand",c)},collapseWindow:function(b,c){a("#"+b).jqxWindow("collapse",c)},setWindowProperty:function(c,b,d){a("#"+c).jqxWindow(b,d)},getWindowProperty:function(c,b){return a("#"+c).jqxWindow(b)},setWindowPosition:function(d,b,e){var d=a("#"+d),c=this._getWindowOptions(d);if(c.mode==="floating"){d.css("position","absolute");a(d).jqxWindow("move",b,e,null,false)}},hideAllCloseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCloseButton",false)}},hideAllCollapseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCollapseButton",false)}},showAllCloseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCloseButton",true)}},showAllCollapseButtons:function(){for(var b=0;b<this._windows.length;b+=1){this._windows[b].jqxWindow("showCollapseButton",true)}},pinWindow:function(b){a("#"+b).jqxWindow("draggable",false)},unpinWindow:function(b){a("#"+b).jqxWindow("draggable",true)},setDraggingMode:function(c){var b=a("#"+c);this._prepareForDragging(b);b.fadeTo(0,1)},enableWindowResize:function(b){b=a("#"+b);if(b.css("position")==="absolute"){this._setWindowOption(b,"resizable",true);b.jqxWindow("enableResize",true)}},disableWindowResize:function(b){b=a("#"+b);this._setWindowOption(b,"resizable",false);b.jqxWindow("enableResize",false)},addWindow:function(e,f,d,c){var b="#"+e;a(b).jqxWindow({keyboardNavigation:false,rtl:this.rtl,theme:this.theme,enableResize:false,width:a(b).css("width"),maxWidth:Number.MAX_VALUE});this._panels[0].append(a(b));this._windows.push(a(b));if(f){this._setWindowOption(a(b),"mode",f)}else{this._setWindowOption(a(b),"mode",this.mode)}this._setWindowOption(a(b),"resizable",true);this._setWindowOption(a(b),"size",{width:a(b).width(),height:a(b).height()});if(f=="floating"){a(b).jqxWindow({enableResize:true})}else{a(b).jqxWindow({enableResize:false})}if(this._panels[d]!=null){this._setWindowOption(a(b),"size",{width:this._panels[d].width(),height:this._panels[d].height()})}this._addEventListenersTo(a(b));if(typeof d!=="undefined"&&typeof c!=="undefined"){this.move(e,d,c)}this._dropFixer(a(b))},closeWindow:function(b){a("#"+b).jqxWindow("closeWindow")}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdockinglayout.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdockinglayout.js
new file mode 100644 (file)
index 0000000..caf0c2a
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDockingLayout","jqxLayout",{});a.extend(a.jqx._jqxDockingLayout.prototype,{defineInstance:function(){if(this.base===null){throw new Error("jqxDockingLayout: Missing reference to jqxlayout.js.")}this.base.dockingLayout=this;var b={events:["float","dock"]};a.extend(true,this,b)},createInstance:function(){var b=this;if(!b.base.host.jqxWindow){throw new Error("jqxDockingLayout: Missing reference to jqxwindow.js.")}b._oldIE=a.jqx.browser.msie&&a.jqx.browser.version<9;b._addClasses();b._createOverlay();b._createEdgeOverlays()},loadLayout:function(b){if(b!==undefined&&a.isEmptyObject(b)===false){var c=this.base,d=c.element.id;if(a("."+d+"FloatGroup").length>0){a("."+d+"FloatGroup").off();a("."+d+"FloatGroup").jqxWindow("destroy")}c.loadLayout(b)}},destroy:function(){var b=this,c=b.base,d=c.element.id;if(a("."+d+"FloatGroup").length>0){a("."+d+"FloatGroup").off();a("."+d+"FloatGroup").jqxWindow("destroy")}b._removeHandlers();c.destroy()},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.base.host.trigger(e);return b},_addClasses:function(){var b=this.base;b.host.addClass(b.toThemeProperty("jqx-docking-layout"))},_removeHandlers:function(){var b=this,c=b.base,d=c.element.id;b.removeHandler(a(document),"mousemove.jqxDockingLayout"+d);b.removeHandler(c.host,"mouseleave.jqxDockingLayout"+d);if(c._touchDevice){b.removeHandler(a(document),"touchmove.jqxDockingLayout"+d);b.removeHandler(a(document),"touchend.jqxDockingLayout"+d)}},_removeByDragHandler:function(b,i,e,g,d){if(g===undefined){g=b.args.draggedIndex}if(d===undefined){d=true}if(!e.hasClass("jqx-ribbon")){e=e.find(".jqx-ribbon")}var f=this,j=i.items,c=j[g],h=i.widget.find(".jqx-ribbon-content-section").eq(g).contents().detach();f._createFloatGroup(b,c.title,h,"documentGroup",i,c);f.base._closeDocumentPanel(g,j,i,e,d)},_floatTabbedGroup:function(h,f,b){var g=this,l,d,j=[],c=f.find(".jqx-ribbon");for(var e=0;e<h.items.length;e++){var m=h.items[e],k=c.find(".jqx-ribbon-content-section").eq(e).contents().detach();if(m.selected){l=m.title;d=e}j.push(k)}g._createFloatGroup(b,l,j,"tabbedGroup",h,null,d);g.base._close(h);if(b){b.target.style.cursor=""}},_addTabbedGroupHandlers:function(h,f){var g=this,c=g.base,b=c.element.id,e=f.find(".jqx-layout-window-header"),i=false,d,k=c._touchDevice?["touchstart","touchend"]:["mousedown","mouseup"];function j(l){if(i===true&&c._clickedToResize!==true){g._floatTabbedGroup(h,f,l);i=false}}g.addHandler(e,k[0]+".jqxDockingLayout"+b,function(l){if(h.allowDrag!==false){i=true;l.target.style.cursor="move";if(c._touchDevice){var m=l.originalEvent.touches[0];d=document.elementFromPoint(m.pageX,m.pageY)}}});g.addHandler(e,k[1]+".jqxDockingLayout"+b,function(l){i=false;l.target.style.cursor=""});if(!c._touchDevice){g.addHandler(e,"mouseleave.jqxDockingLayout"+b,function(l){j({pageX:l.pageX,pageY:l.pageY,target:l.target})})}else{g.addHandler(a(document),"touchmove.jqxDockingLayout"+b,function(l){l.preventDefault();var m=l.originalEvent.touches[0];if(d!==document.elementFromPoint(m.pageX,m.pageY)){j({pageX:m.pageX,pageY:m.pageY,target:d})}})}},_floatAutoHideGroup:function(e,f,d,c){var b=this;b._createFloatGroup(c,f,d.detach(),"autoHideGroup",e,e);b.base._close(e)},_addAutoHideGroupHandlers:function(g,e,i,h){var f=this,c=f.base,b=c.element.id,j=false,d,l=c._touchDevice?["touchstart","touchend"]:["mousedown","mouseup"];function k(m){if(j===true){f._floatAutoHideGroup(g,i,h,m);j=false;m.target.style.cursor=""}}f.addHandler(e,l[0]+".jqxDockingLayout"+b,function(m){if(g.parent.allowDrag!==false){j=true;m.target.style.cursor="move";if(c._touchDevice){var n=m.originalEvent.touches[0];d=document.elementFromPoint(n.pageX,n.pageY)}}});f.addHandler(e,l[1]+".jqxDockingLayout"+b,function(m){j=false;m.target.style.cursor=""});if(!c._touchDevice){f.addHandler(e,"mouseleave.jqxDockingLayout"+b,function(m){k({pageX:m.pageX,pageY:m.pageY,target:m.target})})}else{f.addHandler(a(document),"touchmove.jqxDockingLayout"+b,function(m){m.preventDefault();var n=m.originalEvent.touches[0];if(d!==document.elementFromPoint(n.pageX,n.pageY)){k({pageX:n.pageX,pageY:n.pageY,target:d})}})}},_createFloatGroup:function(B,H,z,f,F,p,e){var l=this,g=l.base,o,n,v,u,D,b,d=a('<div class="'+g.toThemeProperty("jqx-docking-layout-group-floating")+" "+g.element.id+'FloatGroup"><div></div><div></div></div>');a("body").append(d);if(f==="documentGroup"){if(B){o=B.args.x;n=B.args.y}v=F.widget.width();u=F.widget.height();D=z}else{if(f==="tabbedGroup"){if(B){o=B.pageX;n=B.pageY}v=F.widget.width();u=F.widget.height();D="";b=a("<div></div>");var G=a("<div></div>"),E=a('<ul class="jqx-layout-ribbon-header jqx-layout-ribbon-header-'+(l.rtl?"rtl":"ltr")+'"></ul>');for(var C=0;C<F.items.length;C++){var h=F.items[C],t=a("<div></div>");var r=a("<li>"+h.title+"</li>");E.append(r);t.append(z[C]);G.append(t)}b.append(E);b.append(G);D=b}else{if(f==="autoHideGroup"){if(B){o=B.pageX;n=B.pageY}v=F.parent.widget.find(".jqx-ribbon-content").width();u=F.parent.widget.height();D=z}}}if(!o&&!n){var c=g.host.offset();o=(g.host.width()-v)/2+c.left+100;n=(g.host.height()-u)/2+c.top+10}d.on("moved close",function(j){l._hideOverlays();var i=d.current;if(j.type==="moved"){i.position.x=j.args.x;i.position.y=j.args.y;if(i._overlayGroup){l._updateOverlayGroup(i._overlayGroup)}l._clearTextSelection()}else{if(i._overlayGroup){i._overlayGroup.removed=true;l._updateOverlayGroups()}i.removed=true;g._updateLayout(g.layout)}});d.on("resized",function(j){var i=d.current,k=a(this).offset();i.width=j.args.width;i.height=j.args.height;i.position.x=k.left;i.position.y=k.top;if(i._overlayGroup){l._updateOverlayGroup(i._overlayGroup)}});d.jqxWindow({theme:g.theme,title:H,content:D,width:v,maxWidth:null,height:u,maxHeight:null,position:{x:o-100,y:n-10},closeButtonAction:"close",rtl:g.rtl,initContent:function(){var j=d.find(".jqx-window-header"),i;if(f==="autoHideGroup"){i=F.parent}else{i=F}if(B){l._draggedWindow={fromGroup:i,fromPanel:p,title:H,element:d};j.trigger("mousedown",[o,n]);l._windowDragged=true;l._windowCreate=true;l._interval();if(g.resizable){g._overlay[0].style.display="block"}l._showEdgeOverlays()}j.on("mousedown",function(){l._windowDragged=true;if(d.current._overlayGroup){d.current._overlayGroup.self=true}l._interval();if(g.resizable){g._overlay[0].style.display="block"}l._draggedWindow={fromGroup:i,fromPanel:p,title:H,element:d};l._showEdgeOverlays()});j.on("mouseup",function(){l._hideOverlays();l._windowCreate=false});if(f==="tabbedGroup"){b.jqxRibbon({theme:g.theme,width:"100%",height:"100%",position:"bottom",selectedIndex:e,selectionMode:"click",animationType:"none",rtl:g.rtl,reorder:true,_removeByDrag:true});b.on("select",function(k){if(!(k.owner.widgetName&&k.owner.widgetName!=="jqxRibbon")){var x=d.current.items[0].items[k.args.selectedIndex];d.jqxWindow("setTitle",x.title);x.selected=true}});b.on("unselect",function(k){if(!(k.owner.widgetName&&k.owner.widgetName!=="jqxRibbon")){d.current.items[0].items[k.args.unselectedIndex].selected=false}});b.on("reorder",function(k){g._swapPanelsInLayout(d.current.items[0].items,k.args.newIndex,k.args.oldIndex)});b.on("_removeByDrag",function(k){l._removeByDragHandler(k,d.current.items[0],b);if(d.current.items[0].items.length===1){b.jqxRibbon({_removeByDrag:false})}})}}});var m={type:"floatGroup",parent:{type:"host"},widget:d,position:{x:o-100,y:n-10},index:g.layout.length,width:v,height:u},s,q;d.current=m;if(p){m.items=[];g._copyItem(p,m.items);s=m.items;q=m}else{m.items=[{type:"tabbedGroup",items:[],parent:m,widget:b}];s=m.items[0].items;for(var A=0;A<F.items.length;A++){g._copyItem(F.items[A],s)}q=m.items[0]}for(var w=0;w<s.length;w++){s[w].parent=q}g.layout.push(m);l._raiseEvent("0",{item:m});l._trackFloatGroups()},_interval:function(){var c=this;if(c._oldIE===true){var b=c._overlay.width(),d=c._overlay.height();c._oldIEInterval=setInterval(function(){c._checkPosition(b,d);if(c._windowCreate){c._draggedWindow.element.jqxWindow("move",c._x-50,c._y-10)}},1000)}},_createOverlay:function(){var e=this,f=e.base,i=f.element.id;e._overlay=a('<div class="'+f.toThemeProperty("jqx-docking-layout-overlay")+'"></div>');var c=a('<div class="jqx-docking-layout-overlay-section"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-top")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-top")+'"></div></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div></div><div class="jqx-docking-layout-overlay-section"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-left")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-left")+'"></div></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-center")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-inner-square-content jqx-docking-layout-overlay-highlight")+'"></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-right")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-right")+'"></div></div></div></div></div><div class="jqx-docking-layout-overlay-section"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-widget-content jqx-docking-layout-overlay-square-bottom")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square")+'"><div class="'+f.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header")+'"></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-inner-square-content")+'"><div class="'+f.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-highlight jqx-docking-layout-overlay-highlight-bottom")+'"></div></div></div></div><div class="'+f.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-invisible")+'"></div></div>');e._overlay.append(c);e._overlayCenter=e._overlay.find(".jqx-docking-layout-overlay-square-center").children();e._dropOverlay=a('<div class="'+e.toThemeProperty("jqx-docking-layout-drop-overlay")+'"></div>');if(!f._ie7){f.host.append(e._overlay,e._dropOverlay)}else{a("body").append(e._overlay,e._dropOverlay)}e._addOverlayHandlers();e._squares=e._overlay.find(".jqx-docking-layout-overlay-square-top").add(e._overlay.find(".jqx-docking-layout-overlay-square-left")).add(e._overlay.find(".jqx-docking-layout-overlay-square-center")).add(e._overlay.find(".jqx-docking-layout-overlay-square-right")).add(e._overlay.find(".jqx-docking-layout-overlay-square-bottom"));e._sansCenter=e._squares.not(".jqx-docking-layout-overlay-square-center").find(".jqx-docking-layout-overlay-inner-square");var d=false;function h(k,j,m,l){e._dropOverlay.show();e._dropOverlay[0].style.width=k+"px";e._dropOverlay[0].style.height=j+"px";e._dropOverlay.offset({left:m,top:l})}function g(l){l=l.closest(".jqx-docking-layout-overlay-square");d=l;if(l.find(".jqx-docking-layout-overlay-inner-square").hasClass("jqx-fill-state-disabled")){return}var m=e._dropToGroup.element.width(),k=e._dropToGroup.element.height(),j=e._dropToGroup.element.offset();if(l.hasClass("jqx-docking-layout-overlay-square-top")){h(m,k/2,j.left,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-left")){h(m/2,k,j.left,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-center")&&!e._overlayCenter.hasClass("jqx-docking-layout-square-disabled")){h(m,k,j.left,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-right")){h(m/2,k,j.left+m/2,j.top)}else{if(l.hasClass("jqx-docking-layout-overlay-square-bottom")){h(m,k/2,j.left,j.top+k/2)}else{if(f._touchDevice){e._dropOverlay.hide();d=false}}}}}}}function b(t){var l=e._dropToGroup.settings;if(t.find(".jqx-docking-layout-overlay-inner-square").hasClass("jqx-fill-state-disabled")){e._hideOverlays();return}if(t.hasClass("jqx-docking-layout-overlay-square-top")){e._dropHandler(0,"vertical","height","top")}else{if(t.hasClass("jqx-docking-layout-overlay-square-left")){e._dropHandler(0,"horizontal","width","left")}else{if(t.hasClass("jqx-docking-layout-overlay-square-center")){var p=e._getDraggedWindowInformation(),s=p.title,q=p.content,k,r;if(l.type==="documentGroup"){k=l.widget;r="documentPanel"}else{if(l.type==="tabbedGroup"){if(l.parent.type==="floatGroup"){k=l.widget}else{k=l.widget.find(".jqx-ribbon")}r="layoutPanel"}}if(l.type==="layoutGroup"){e._dropToEmptyLayoutGroup(p)}else{for(var n=0;n<s.length;n++){k.jqxRibbon("addAt",k.find(".jqx-ribbon-content-section").length,{title:s[n],content:q[n]});var m=l.items.length,o={type:r,title:s[n],parent:l,index:m};l.items.push(o);f._addRightClickHandler(a(k.find(".jqx-ribbon-item")[m]),{current:o})}}if(l.parent.type==="floatGroup"){l.widget.jqxRibbon({_removeByDrag:true})}e._clearTextSelection();e._raiseEvent("1",{position:"center",item:l})}else{if(t.hasClass("jqx-docking-layout-overlay-square-right")){e._dropHandler(1,"horizontal","width","right")}else{if(t.hasClass("jqx-docking-layout-overlay-square-bottom")){e._dropHandler(1,"vertical","height","bottom")}}}}}e._removeFloatGroupObject(e._draggedWindow.element.current);e._draggedWindow.element.remove();e._hideOverlays()}if(!f._touchDevice){e.addHandler(e._squares,"mouseenter.jqxDockingLayout"+i,function(){g(a(this))});e.addHandler(e._squares,"mouseleave.jqxDockingLayout"+i,function(){e._dropOverlay.hide()});e.addHandler(e._squares,"mouseup.jqxDockingLayout"+i,function(){b(a(this))})}else{e.addHandler(a(document),"touchmove.jqxDockingLayout"+i,function(j){if(e._windowDragged){j.preventDefault();var k=j.originalEvent.touches[0],l=a(document.elementFromPoint(k.pageX,k.pageY));g(l)}});e.addHandler(a(document),"touchend.jqxDockingLayout"+i,function(){if(d!==false){b(d);d=false}})}},_addOverlayHandlers:function(){var c=this,b=c._overlay.width(),d=c._overlay.height();if(!c.base._touchDevice){c.addHandler(a(document),"mousemove.jqxDockingLayout"+c.base.element.id,function(e){c._x=e.pageX;c._y=e.pageY;if(c._windowDragged&&!c._oldIE){c._checkPosition(b,d);if(c._windowCreate){c._draggedWindow.element.jqxWindow("move",e.pageX-50,e.pageY-10)}}})}else{c.addHandler(a(document),"touchmove.jqxDockingLayout"+c.base.element.id,function(f){var e=f.originalEvent.touches[0];c._x=e.pageX;c._y=e.pageY;if(c._windowDragged&&!c._oldIE){c._checkPosition(b,d);if(c._windowCreate){c._draggedWindow.element.jqxWindow("move",e.pageX-50,e.pageY-10)}}})}},_checkPosition:function(h,n){var g=this,c=g.base,l=g._x,k=g._y;for(var f=0;f<c._overlayGroups.length;f++){var o=c._overlayGroups[f];if(!o.self){var b=o.width,m=o.height,e=o.offset,d=e.left,j=e.top;if(l>=d&&l<=d+b&&k>=j&&k<=j+m){if(((o.settings.type==="documentGroup"&&g._draggedWindow.fromGroup.type==="documentGroup")||(o.settings.type==="tabbedGroup"&&(g._draggedWindow.fromGroup.type==="tabbedGroup"||g._draggedWindow.fromGroup.type==="autoHideGroup"))||(o.settings.type==="layoutGroup"))&&o.settings.allowDrop!==false){g._overlayCenter.removeClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{g._overlayCenter.addClass(c.toThemeProperty("jqx-fill-state-disabled"));if(o.settings.parent.type==="floatGroup"){return}}if(o.settings.parent.type==="floatGroup"){g._sansCenter.addClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{g._sansCenter.removeClass(c.toThemeProperty("jqx-fill-state-disabled"))}g._overlay[0].style.display="block";g._overlay.offset({left:parseInt(d+b/2-h/2,10),top:parseInt(j+m/2-n/2,10)});g._dropToGroup=o;return}}}g._overlay[0].style.display="none"},_dropHandler:function(p,u,w,z){var f=this,d=f.base,h=f._dropToGroup.settings,c=h.parent,m=f._getDraggedWindowInformation(),A=m.title,r=m.content,o=m.groupType,y=m.itemType,l=[],b,v;if(c.orientation===u){b=h.index+p;v={type:o,parent:c};v[w]=f._draggedWindow.element[w]();for(var t=0;t<A.length;t++){l.push({type:y,title:A[t],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(t)})}v.items=l;f._setOptimalDimension(w,v,h);c.items.splice(b,0,v)}else{var x,e;if(w==="width"){x="height";e="minHeight"}else{x="width";e="minWidth"}var g={type:"layoutGroup",orientation:u,parent:h.parent,index:h.index};g[x]=h[x];if(h[e]){g[e]=h[e]}h.parent.items.splice(h.index,1);h.parent.items.splice(h.index,0,g);h.parent=g;v={type:o,parent:g};for(var s=0;s<A.length;s++){l.push({type:y,title:A[s],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(s)})}v.items=l;delete h[x];h[w]="50%";v[w]="50%";g.items=[h];g.items.splice(0+p,0,v)}d.render();var n=v.widget.find(".jqx-ribbon-content-section");for(var q=0;q<n.length;q++){a(n[q]).append(r[q])}f._clearTextSelection();d._raiseEvent("1",{item:h});f._raiseEvent("1",{position:z,item:v})},_setOptimalDimension:function(d,b,c){var e=this,j=d==="width"?"minWidth":"minHeight",g=c[j]||e.base["minGroup"+d.charAt(0).toUpperCase()+d.slice(1)],f;f=parseFloat(c[d])-g/c.parent.widget[d]()*100;var i=b[d]/c.parent.widget[d]()*100;if(f<i){b[d]=parseFloat(c[d])/2+"%";c[d]=parseFloat(c[d])-parseFloat(b[d])+"%";var h=parseInt(parseFloat(c[d])/100*c.parent.widget[d](),10);if(h<g){c[j]=h}}else{b[d]=i+"%";c[d]=parseFloat(c[d])-i+"%"}},_dropToEmptyLayoutGroup:function(e){var f=this,d=f._dropToGroup.settings,h=e.groupType,g={type:h,items:[],parent:d};if(d.orientation==="horizontal"){g.width="100%"}else{if(d.orientation==="vertical"){g.height="100%"}}for(var c=0;c<e.title.length;c++){var l={type:e.itemType,title:e.title[c],parent:g,prevent:true,selected:f._getFloatGroupItemSelection(c)};g.items.push(l)}d.items.push(g);f.base.render();var k=g.widget.find(".jqx-ribbon-content-section");for(var b=0;b<k.length;b++){a(k[b]).append(e.content[b])}},_getFloatGroupItemSelection:function(b){var d=this,c;if(d._draggedWindow.fromPanel){c=true}else{c=d._draggedWindow.element.current.items[0].items[b].selected}return c},_createEdgeOverlays:function(){function b(e){var h=e==="left"||e==="right"?"horizontal":"vertical",g='<div class="'+d.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-mini-window-edge-"+h)+'"><div class="'+d.toThemeProperty("jqx-widget-header jqx-docking-layout-overlay-inner-square-header jqx-docking-layout-overlay-inner-square-header-"+h)+'"></div><div class="'+d.toThemeProperty("jqx-widget-content jqx-fill-state-pressed jqx-docking-layout-overlay-inner-square-content jqx-docking-layout-overlay-inner-square-content-"+h)+'"></div></div>',j='<div class="'+d.toThemeProperty("jqx-docking-layout-overlay-square-edge-arrow-container jqx-docking-layout-overlay-square-edge-arrow-container-"+h)+'"><div class="'+d.toThemeProperty("jqx-fill-state-pressed jqx-docking-layout-overlay-square-edge-arrow jqx-docking-layout-overlay-square-edge-arrow-"+e)+'"></div></div>',i;if(e==="left"||e==="top"){i=g+j}else{i=j+g}var f=a('<div class="'+d.toThemeProperty("jqx-widget-content jqx-docking-layout-overlay-square jqx-docking-layout-overlay-square-edge")+'"><div class="'+d.toThemeProperty("jqx-docking-layout-overlay-inner-square-edge")+'">'+i+"</div></div>");return f}var c=this,d=c.base;c._leftOverlay=b("left");c._rightOverlay=b("right");c._topOverlay=b("top");c._bottomOverlay=b("bottom");c._edgeOverlays=c._leftOverlay.add(c._rightOverlay).add(c._topOverlay).add(c._bottomOverlay);if(!d._ie7){d.host.append(c._edgeOverlays)}else{a("body").append(c._edgeOverlays)}c._addEdgeOverlaysHandlers()},_addEdgeOverlaysHandlers:function(){function g(k,j,m,l){d._dropOverlay.show();d._dropOverlay[0].style.width=k;d._dropOverlay[0].style.height=j;d._dropOverlay.offset({left:m,top:l})}var d=this,e=d.base,i=e.element.id,c,f=false;function h(j){c=e.host.offset();j=a(j).closest(".jqx-docking-layout-overlay-square-edge")[0];f=j;switch(j){case d._leftOverlay[0]:g("100px",e.host.height()+"px",c.left,c.top);break;case d._rightOverlay[0]:g("100px",e.host.height()+"px",c.left+e.host.width()-100,c.top);break;case d._topOverlay[0]:g(e.host.width()+"px","100px",c.left,c.top);break;case d._bottomOverlay[0]:g(e.host.width()+"px","100px",c.left,c.top+e.host.height()-100);break;default:if(e._touchDevice){f=false}}}function b(j){switch(j){case d._leftOverlay[0]:d._dropToEdge("left",0,"horizontal","width");break;case d._rightOverlay[0]:d._dropToEdge("right",e.layout[0].items.length-1,"horizontal","width");break;case d._topOverlay[0]:d._dropToEdge("top",0,"vertical","height");break;case d._bottomOverlay[0]:d._dropToEdge("bottom",e.layout[0].items.length-1,"vertical","height");break}}if(!e._touchDevice){d.addHandler(d._edgeOverlays,"mouseenter.jqxDockingLayout"+i,function(){h(this)});d.addHandler(d._edgeOverlays,"mouseleave.jqxDockingLayout"+i,function(){d._dropOverlay.hide()});d.addHandler(d._edgeOverlays,"mouseup.jqxDockingLayout"+i,function(){b(this)})}else{d.addHandler(a(document),"touchmove.jqxDockingLayout"+i,function(k){if(d._windowDragged){k.preventDefault();var l=k.originalEvent.touches[0],j=a(document.elementFromPoint(l.pageX,l.pageY));h(j)}});d.addHandler(a(document),"touchend.jqxDockingLayout"+i,function(){if(f!==false){b(f);f=false}})}},_dropToEdge:function(c,d,u,w){var f=this,b=f.base,h=b.layout[0],m=f._getDraggedWindowInformation(),z=m.title,r=m.content,o=m.groupType,y=m.itemType,l=[],v,q;f._removeFloatGroupObject(f._draggedWindow.element.current);if(h.orientation===u){v={type:o,parent:h};v[w]=f._draggedWindow.element[w]();for(var t=0;t<z.length;t++){l.push({type:y,title:z[t],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(t)})}v.items=l;q=h.items[d];f._setOptimalDimension(w,v,q);if(c==="left"||c==="top"){h.items.splice(d,0,v)}else{h.items.push(v)}}else{var x,e;if(w==="width"){x="height";e="minHeight"}else{x="width";e="minWidth"}var g={type:"layoutGroup",orientation:u,parent:h.parent,index:h.index};v={type:o,parent:g};for(var s=0;s<z.length;s++){l.push({type:y,title:z[s],parent:v,prevent:true,selected:f._getFloatGroupItemSelection(s)})}v.items=l;delete h[x];delete v[x];v[w]="50%";h[w]="50%";h.parent=g;if(c==="left"||c==="top"){g.items=[v,h]}else{g.items=[h,v]}b.layout[0]=g;q=h}b.render();var n=v.widget.find(".jqx-ribbon-content-section");for(var p=0;p<n.length;p++){a(n[p]).append(r[p])}f._clearTextSelection();b._raiseEvent("1",{item:q});f._raiseEvent("1",{position:c+"-edge",item:v});f._draggedWindow.element.remove();f._hideOverlays()},_showEdgeOverlays:function(){var h=this,c=h.base,l=c.host.width(),d=c.host.height(),k=c.host.offset(),b=a(),i=true,j=true,e=true,g=true;function f(o){if(!o.items||o.items.length===0){return}var m=o.orientation,p=o.items[0],n=o.items[o.items.length-1];if(m==="horizontal"){if(p.type==="autoHideGroup"){i=i&&false}else{if(p.type==="layoutGroup"){f(p)}}if(n.type==="autoHideGroup"){j=j&&false}else{if(n.type==="layoutGroup"){f(n)}}}else{if(m==="vertical"){if(p.type==="autoHideGroup"){e=e&&false}else{if(p.type==="layoutGroup"){f(p)}}if(n.type==="autoHideGroup"){g=g&&false}else{if(n.type==="layoutGroup"){f(n)}}}}}f(c.layout[0]);if(i){b=b.add(h._leftOverlay)}if(j){b=b.add(h._rightOverlay)}if(e){b=b.add(h._topOverlay)}if(g){b=b.add(h._bottomOverlay)}b.show();h._leftOverlay.offset({left:k.left+5,top:k.top+d/2-20});h._rightOverlay.offset({left:k.left+l-40,top:k.top+d/2-20});h._topOverlay.offset({left:k.left+l/2-20,top:k.top+5});h._bottomOverlay.offset({left:k.left+l/2-20,top:k.top+d-40})},_hideOverlays:function(){var b=this,c=b.base;b._windowDragged=false;if(b._oldIE===true){clearInterval(b._oldIEInterval)}if(c.resizable){setTimeout(function(){b.base._overlay[0].style.display="none"},0)}b._overlay.hide();b._edgeOverlays.hide();b._dropOverlay.hide()},_getDraggedWindowInformation:function(){var f=this,h=[],e=[],b,g;if(f._draggedWindow.fromPanel){h.push(f._draggedWindow.title);e.push(f._draggedWindow.element.find(".jqx-window-content").contents().detach())}else{for(var d=0;d<f._draggedWindow.element.current.items[0].items.length;d++){var c=f._draggedWindow.element.current.items[0].items[d];h.push(c.title);e.push(f._draggedWindow.element.find(".jqx-ribbon-content-section").eq(d).contents().detach())}}if(f._draggedWindow.fromGroup.type==="documentGroup"){b="documentGroup";g="documentPanel"}else{b="tabbedGroup";g="layoutPanel"}return{title:h,content:e,groupType:b,itemType:g}},_removeFloatGroupObject:function(c){var b=this.base;c.removed=true;b._updateLayout(b.layout)},_trackFloatGroups:function(){var f=this,g=f.base;for(var d=1;d<g.layout.length;d++){var b=g.layout[d];if(b.items[0].type==="tabbedGroup"){var c=b.items[0].widget,e={element:c,width:c.width(),height:c.height(),offset:c.offset(),settings:b.items[0]};b._overlayGroup=e;g._overlayGroups.push(e)}}},_updateOverlayGroup:function(c){if(c){var b=c.element;c.width=b.width();c.height=b.height();c.offset=b.offset();c.self=false}},_updateOverlayGroups:function(){var d=this.base._overlayGroups;for(var b=d.length-1;b>=0;b--){var c=d[b];if(c.removed===true){d.splice(b,1)}}},_clearTextSelection:function(){if(window.getSelection){if(window.getSelection().empty){window.getSelection().empty()}else{if(window.getSelection().removeAllRanges){window.getSelection().removeAllRanges()}}}else{if(document.selection){document.selection.empty()}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdockpanel.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdockpanel.js
new file mode 100644 (file)
index 0000000..433d750
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDockPanel","",{});a.extend(a.jqx._jqxDockPanel.prototype,{defineInstance:function(){var b={width:null,height:null,lastchildfill:true,disabled:false,events:["layout"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.addClass(this.toThemeProperty("jqx-dockpanel"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.childrenCount=a(this.host).children().length;this.host.wrapInner('<div style="overflow: hidden; width: 100%; height: 100%;" class="innerContainer"></div>');this.$wrapper=this.host.find(".innerContainer");this.$wrapper.css("position","relative");this.sizeCache=new Array();this.performLayout();a.jqx.utilities.resize(this.host,function(){b.refresh()})},render:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}this.sizeCache=new Array();this.performLayout()},resize:function(c,b){this.width=c;this.height=b;this.render()},performLayout:function(){if(this.disabled){return}var e=this.childrenCount;var d=0;var c=0;var b=0;var h=0;var f=this;var g={width:this.host.width(),height:this.host.height()};if(this.sizeCache.length<this.$wrapper.children().length){a.each(this.$wrapper.children(),function(i){var k=a(this);k.css("position","absolute");var j={width:k.css("width"),height:k.css("height")};f.sizeCache[i]=j})}a.each(this.$wrapper.children(),function(j){var l=this.getAttribute("dock");if(l==undefined){l="left"}if(j==e-1&&f.lastchildfill){l="fill"}var k=a(this);k.css("position","absolute");k.css("width",f.sizeCache[j].width);k.css("height",f.sizeCache[j].height);var i={width:k.outerWidth(),height:k.outerHeight()};var m={x:b,y:h,width:Math.max(0,g.width-(b+d)),height:Math.max(0,g.height-(h+c))};if(j<e){switch(l){case"left":b+=i.width;m.width=i.width;break;case"top":h+=i.height;m.height=i.height;break;case"right":d+=i.width;m.x=Math.max(0,(g.width-d));m.width=i.width;break;case"bottom":c+=i.height;m.y=Math.max(0,(g.height-c));m.height=i.height;break}}k.css("left",m.x);k.css("top",m.y);k.css("width",m.width);k.css("height",m.height)});this._raiseevent(0)},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.host.remove()},_raiseevent:function(g,d,f){if(this.isInitialized!=undefined&&this.isInitialized==true){var c=this.events[g];var e=new a.Event(c);e.previousValue=d;e.currentValue=f;e.owner=this;var b=this.host.trigger(e);return b}},propertyChangedHandler:function(c,d,b,e){if(!this.isInitialized){return}c.render()},refresh:function(){this.render()}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdragdrop.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdragdrop.js
new file mode 100644 (file)
index 0000000..c495927
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDragDrop","",{});a.extend(a.jqx._jqxDragDrop.prototype,{defineInstance:function(){var b={restricter:"document",handle:false,feedback:"clone",opacity:0.6,revert:false,revertDuration:400,distance:5,disabled:false,tolerance:"intersect",data:null,dropAction:"default",dragZIndex:999999,appendTo:"parent",cursor:"move",onDragEnd:null,onDrag:null,onDragStart:null,onTargetDrop:null,onDropTargetEnter:null,onDropTargetLeave:null,initFeedback:null,dropTarget:null,isDestroyed:false,triggerEvents:true,_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_restricter:null,_zIndexBackup:0,_targetEnterFired:false,_oldOpacity:1,_feedbackType:undefined,_isTouchDevice:false,_events:["dragStart","dragEnd","dragging","dropTargetEnter","dropTargetLeave"]};a.extend(true,this,b);return b},createInstance:function(){this._createDragDrop()},_createDragDrop:function(){var c=a.data(document.body,"jqx-draggables")||1;this.appendTo=this._getParent();this._isTouchDevice=a.jqx.mobile.isTouchDevice();if((/(static|relative)/).test(this.host.css("position"))){if(!this.feedback||this.feedback==="original"){var d=this._getRelativeOffset(this.host);var b=this.appendTo.offset();if(this.appendTo.css("position")!="static"){b={left:0,top:0}}this.element.style.position="absolute";this.element.style.left=b.left+d.left+"px";this.element.style.top=b.top+d.top+"px"}}this._validateProperties();this._idHandler(c);if(this.disabled){this.disable()}if(typeof this.dropTarget==="string"){this.dropTarget=a(this.dropTarget)}this._refresh();c+=1;a.data(document.body,"jqx-draggables",c);this.host.addClass("jqx-draggable");if(!this.disabled){this.host.css("cursor",this.cursor)}},_getParent:function(){var b=this.appendTo;if(typeof this.appendTo==="string"){switch(this.appendTo){case"parent":b=this.host.parent();break;case"document":b=a(document);break;case"body":b=a(document.body);break;default:b=a(this.appendTo);break}}return b},_idHandler:function(b){if(!this.element.id){var c="jqx-draggable-"+b;this.element.id=c}},_refresh:function(){this._removeEventHandlers();this._addEventHandlers()},_getEvent:function(b){if(this._isTouchDevice){return this._touchEvents[b]}else{return b}},_validateProperties:function(){if(this.feedback==="clone"){this._feedbackType="clone"}else{this._feedbackType="original"}if(this.dropAction!=="default"){this.dropAction="nothing"}},_removeEventHandlers:function(){this.removeHandler(this.host,"dragstart");this.removeHandler(this.host,this._getEvent("mousedown")+".draggable."+this.element.id,this._mouseDown);this.removeHandler(a(document),this._getEvent("mousemove")+".draggable."+this.element.id,this._mouseMove);this.removeHandler(a(document),this._getEvent("mouseup")+".draggable."+this.element.id,this._mouseUp)},_addEventHandlers:function(){var b=this;this.addHandler(this.host,"dragstart",function(g){if(b.disabled){return true}var f=a.jqx.mobile.isTouchDevice();if(!f){g.preventDefault();return false}});this.addHandler(this.host,this._getEvent("mousedown")+".draggable."+this.element.id,this._mouseDown,{self:this});this.addHandler(a(document),this._getEvent("mousemove")+".draggable."+this.element.id,this._mouseMove,{self:this});this.addHandler(a(document),this._getEvent("mouseup")+".draggable."+this.element.id,this._mouseUp,{self:this});try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var e="";if(window.parent&&document.referrer){e=document.referrer}if(e.indexOf(document.location.host)!=-1){var d=function(f){b._mouseUp(b)};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",d,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",d)}}}}}}catch(c){}},_mouseDown:function(f){var b=f.data.self,d=b._getMouseCoordinates(f),c=b._mouseCapture(f);b._originalPageX=d.left;b._originalPageY=d.top;if(b.disabled){return true}var e=false;if(!b._mouseStarted){b._mouseUp(f);e=true}if(c){b._mouseDownEvent=f}if(b._isTouchDevice){return true}if(f.which!==1||!c){return true}f.preventDefault();if(e==true){}},_mouseMove:function(c){var b=c.data.self;if(b.disabled){return true}if(b._mouseStarted){b._mouseDrag(c);if(c.preventDefault){c.preventDefault()}return false}if(b._mouseDownEvent&&b._isMovedDistance(c)){if(b._mouseStart(b._mouseDownEvent,c)){b._mouseStarted=true}else{b._mouseStarted=false}if(b._mouseStarted){b._mouseDrag(c)}else{b._mouseUp(c)}}return !b._mouseStarted},_mouseUp:function(c){var b;if(c.data&&c.data.self){b=c.data.self}else{b=this}if(b.disabled){return true}b._mouseDownEvent=false;b._movedDistance=false;if(b._mouseStarted){b._mouseStarted=false;b._mouseStop(c)}if(b.feedback&&b.feedback[0]&&b._feedbackType!=="original"&&typeof b.feedback.remove==="function"&&!b.revert){b.feedback.remove()}if(!b._isTouchDevice){return false}},cancelDrag:function(){var b=this.revertDuration;this.revertDuration=0;this._mouseDownEvent=false;this._movedDistance=false;this._mouseStarted=false;this._mouseStop();this.feedback.remove();this.revertDuration=b},_isMovedDistance:function(b){var c=this._getMouseCoordinates(b);if(this._movedDistance){return true}if(c.left>=this._originalPageX+this.distance||c.left<=this._originalPageX-this.distance||c.top>=this._originalPageY+this.distance||c.top<=this._originalPageY-this.distance){this._movedDistance=true;return true}return false},_getMouseCoordinates:function(b){if(this._isTouchDevice){var c=a.jqx.position(b);return{left:c.left,top:c.top}}else{return{left:b.pageX,top:b.pageY}}},destroy:function(){this._enableSelection(this.host);this.host.removeData("draggable").off(".draggable").removeClass("jqx-draggable jqx-draggable-dragging jqx-draggable-disabled");this._removeEventHandlers();this.isDestroyed=true;return this},_disableSelection:function(b){b.each(function(){a(this).attr("unselectable","on").css({"-ms-user-select":"none","-moz-user-select":"none","-webkit-user-select":"none","user-select":"none"}).each(function(){this.onselectstart=function(){return false}})})},_enableSelection:function(b){b.each(function(){a(this).attr("unselectable","off").css({"-ms-user-select":"text","-moz-user-select":"text","-webkit-user-select":"text","user-select":"text"}).each(function(){this.onselectstart=null})})},_mouseCapture:function(b){if(this.disabled){return false}if(!this._getHandle(b)){return false}this._disableSelection(this.host);return true},_getScrollParent:function(b){var c;if((a.jqx.browser.msie&&(/(static|relative)/).test(b.css("position")))||(/absolute/).test(b.css("position"))){c=b.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.css(this,"position",1))&&(/(auto|scroll)/).test(a.css(this,"overflow",1)+a.css(this,"overflow-y",1)+a.css(this,"overflow-x",1))}).eq(0)}else{c=b.parents().filter(function(){return(/(auto|scroll)/).test(a.css(this,"overflow",1)+a.css(this,"overflow-y",1)+a.css(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(b.css("position"))||!c.length?a(document):c},_mouseStart:function(e){var d=this._getMouseCoordinates(e),c=this._getParentOffset(this.host);this.feedback=this._createFeedback(e);this._zIndexBackup=this.feedback.css("z-index");this.feedback[0].style.zIndex=this.dragZIndex;this._backupFeedbackProportions();this._backupeMargins();this._positionType=this.feedback.css("position");this._scrollParent=this._getScrollParent(this.feedback);this._offset=this.positionAbs=this.host.offset();this._offset={top:this._offset.top-this.margins.top,left:this._offset.left-this.margins.left};a.extend(this._offset,{click:{left:d.left-this._offset.left,top:d.top-this._offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset(),hostRelative:this._getRelativeOffset(this.host)});this.position=this._generatePosition(e);this.originalPosition=this._fixPosition();if(this.restricter){this._setRestricter()}this.feedback.addClass(this.toThemeProperty("jqx-draggable-dragging"));var b=this._raiseEvent(0,e);if(this.onDragStart&&typeof this.onDragStart==="function"){this.onDragStart(this.position)}this._mouseDrag(e,true);return true},_fixPosition:function(){var c=this._getRelativeOffset(this.host),b=this.position;b={left:this.position.left+c.left,top:this.position.top+c.top};return b},_mouseDrag:function(b,c){this.position=this._generatePosition(b);this.positionAbs=this._convertPositionTo("absolute");this.feedback[0].style.left=this.position.left+"px";this.feedback[0].style.top=this.position.top+"px";this._raiseEvent(2,b);if(this.onDrag&&typeof this.onDrag==="function"){this.onDrag(this.data,this.position)}this._handleTarget();return false},_over:function(b,d,e){if(this.dropTarget){var f=false,c=this;a.each(this.dropTarget,function(g,h){f=c._overItem(h,b,d,e);if(f.over){return false}})}return f},_overItem:function(i,c,e,g){i=a(i);var b=i.offset(),f=i.outerHeight(),d=i.outerWidth(),h;if(!i||i[0]===this.element){return}var h=false;switch(this.tolerance){case"intersect":if(c.left+e>b.left&&c.left<b.left+d&&c.top+g>b.top&&c.top<b.top+f){h=true}break;case"fit":if(e+c.left<=b.left+d&&c.left>=b.left&&g+c.top<=b.top+f&&c.top>=b.top){h=true}break}return{over:h,target:i}},_handleTarget:function(){if(this.dropTarget){var b=this.feedback.offset(),c=this.feedback.outerWidth(),d=this.feedback.outerHeight(),e=this._over(b,c,d);if(e.over){if(this._targetEnterFired&&e.target.length>0&&this._oldtarget&&this._oldtarget.length>0&&e.target[0]!=this._oldtarget[0]){this._raiseEvent(4,{target:this._oldtarget});if(this.onDropTargetLeave&&typeof this.onDropTargetLeave==="function"){this.onDropTargetLeave(this._oldtarget)}}if(!this._targetEnterFired||(e.target.length>0&&this._oldtarget&&this._oldtarget.length>0&&e.target[0]!=this._oldtarget[0])){this._targetEnterFired=true;this._raiseEvent(3,{target:e.target});if(this.onDropTargetEnter&&typeof this.onDropTargetEnter==="function"){this.onDropTargetEnter(e.target)}}this._oldtarget=e.target}else{if(this._targetEnterFired){this._targetEnterFired=false;this._raiseEvent(4,{target:this._oldtarget||e.target});if(this.onDropTargetLeave&&typeof this.onDropTargetLeave==="function"){this.onDropTargetLeave(this._oldtarget||e.target)}}}}},_mouseStop:function(d){var e=false,b=this._fixPosition(),c={width:this.host.outerWidth(),height:this.host.outerHeight()};this.feedback[0].style.opacity=this._oldOpacity;if(!this.revert){this.feedback[0].style.zIndex=this._zIndexBackup}this._enableSelection(this.host);if(this.dropped){e=this.dropped;this.dropped=false}if((!this.element||!this.element.parentNode)&&this.feedback==="original"){return false}this._dropElement(b);this.feedback.removeClass(this.toThemeProperty("jqx-draggable-dragging"));this._raiseEvent(1,d);if(this.onDragEnd&&typeof this.onDragEnd==="function"){this.onDragEnd(this.data)}if(this.onTargetDrop&&typeof this.onTargetDrop==="function"&&this._over(b,c.width,c.height).over){this.onTargetDrop(this._over(b,c.width,c.height).target)}this._revertHandler();return false},_dropElement:function(b){if(this.dropAction==="default"&&this.feedback&&this.feedback[0]!==this.element&&this.feedback!=="original"){if(!this.revert){if(!(/(fixed|absolute)/).test(this.host.css("position"))){this.host.css("position","relative");var c=this._getRelativeOffset(this.host);b=this.position;b.left-=c.left;b.top-=c.top;this.element.style.left=b.left+"px";this.element.style.top=b.top+"px"}}}},_revertHandler:function(){if(this.revert||(a.isFunction(this.revert)&&this.revert())){var b=this;if(this._feedbackType!="original"){if(this.feedback!=null){if(this.dropAction!="none"){a(this.feedback).animate({left:b.originalPosition.left-b._offset.hostRelative.left,top:b.originalPosition.top-b._offset.hostRelative.top},parseInt(this.revertDuration,10),function(){if(b.feedback&&b.feedback[0]&&b._feedbackType!=="original"&&typeof b.feedback.remove==="function"){b.feedback.remove()}})}else{if(b.feedback&&b.feedback[0]&&b._feedbackType!=="original"&&typeof b.feedback.remove==="function"){b.feedback.remove()}}}}else{this.element.style.zIndex=this.dragZIndex;a(this.host).animate({left:b.originalPosition.left-b._offset.hostRelative.left,top:b.originalPosition.top-b._offset.hostRelative.top},parseInt(this.revertDuration,10),function(){b.element.style.zIndex=b._zIndexBackup})}}},_getHandle:function(b){var c;if(!this.handle){c=true}else{a(this.handle,this.host).find("*").andSelf().each(function(){if(this==b.target){c=true}})}return c},_createFeedback:function(c){var b;if(typeof this._feedbackType==="function"){b=this._feedbackType()}else{if(this._feedbackType==="clone"){b=this.host.clone().removeAttr("id")}else{b=this.host}}if(!(/(absolute|fixed)/).test(b.css("position"))){b.css("position","absolute")}if(this.appendTo[0]!==this.host.parent()[0]||b[0]!==this.element){var d={};b.css({left:this.host.offset().left-this._getParentOffset(this.host).left+this._getParentOffset(b).left,top:this.host.offset().top-this._getParentOffset(this.host).top+this._getParentOffset(b).top});b.appendTo(this.appendTo)}if(typeof this.initFeedback==="function"){this.initFeedback(b)}return b},_getParentOffset:function(c){var c=c||this.feedback;this._offsetParent=c.offsetParent();var b=this._offsetParent.offset();if(this._positionType=="absolute"&&this._scrollParent[0]!==document&&a.contains(this._scrollParent[0],this._offsetParent[0])){b.left+=this._scrollParent.scrollLeft();b.top+=this._scrollParent.scrollTop()}if((this._offsetParent[0]==document.body)||(this._offsetParent[0].tagName&&this._offsetParent[0].tagName.toLowerCase()=="html"&&a.jqx.browser.msie)){b={top:0,left:0}}return{top:b.top+(parseInt(this._offsetParent.css("border-top-width"),10)||0),left:b.left+(parseInt(this._offsetParent.css("border-left-width"),10)||0)}},_getRelativeOffset:function(c){var d=this._scrollParent||c.parent();c=c||this.feedback;if(c.css("position")==="relative"){var b=this.host.position();return{top:b.top-(parseInt(c.css("top"),10)||0),left:b.left-(parseInt(c.css("left"),10)||0)}}else{return{top:0,left:0}}},_backupeMargins:function(){this.margins={left:(parseInt(this.host.css("margin-left"),10)||0),top:(parseInt(this.host.css("margin-top"),10)||0),right:(parseInt(this.host.css("margin-right"),10)||0),bottom:(parseInt(this.host.css("margin-bottom"),10)||0)}},_backupFeedbackProportions:function(){this.feedback[0].style.opacity=this.opacity;this._feedbackProportions={width:this.feedback.outerWidth(),height:this.feedback.outerHeight()}},_setRestricter:function(){if(this.restricter=="parent"){this.restricter=this.feedback[0].parentNode}if(this.restricter=="document"||this.restricter=="window"){this._handleNativeRestricter()}if(typeof this.restricter.left!=="undefined"&&typeof this.restricter.top!=="undefined"&&typeof this.restricter.height!=="undefined"&&typeof this.restricter.width!=="undefined"){this._restricter=[this.restricter.left,this.restricter.top,this.restricter.width,this.restricter.height]}else{if(!(/^(document|window|parent)$/).test(this.restricter)&&this.restricter.constructor!=Array){this._handleDOMParentRestricter()}else{if(this.restricter.constructor==Array){this._restricter=this.restricter}}}},_handleNativeRestricter:function(){this._restricter=[this.restricter==="document"?0:a(window).scrollLeft()-this._offset.relative.left-this._offset.parent.left,this.restricter==="document"?0:a(window).scrollTop()-this._offset.relative.top-this._offset.parent.top,(this.restricter==="document"?0:a(window).scrollLeft())+a(this.restricter==="document"?document:window).width()-this._feedbackProportions.width-this.margins.left,(this.restricter==="document"?0:a(window).scrollTop())+(a(this.restricter==="document"?document:window).height()||document.body.parentNode.scrollHeight)-this._feedbackProportions.height-this.margins.top]},_handleDOMParentRestricter:function(){var d=a(this.restricter),b=d[0];if(!b){return}var c=(a(b).css("overflow")!=="hidden");this._restricter=[(parseInt(a(b).css("borderLeftWidth"),10)||0)+(parseInt(a(b).css("paddingLeft"),10)||0),(parseInt(a(b).css("borderTopWidth"),10)||0)+(parseInt(a(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(a(b).css("borderLeftWidth"),10)||0)-(parseInt(a(b).css("paddingRight"),10)||0)-this._feedbackProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(a(b).css("borderTopWidth"),10)||0)-(parseInt(a(b).css("paddingBottom"),10)||0)-this._feedbackProportions.height-this.margins.top-this.margins.bottom];this._restrictiveContainer=d},_convertPositionTo:function(f,c){if(!c){c=this.position}var e,b,g;if(f==="absolute"){e=1}else{e=-1}if(this._positionType==="absolute"&&!(this._scrollParent[0]!=document&&a.contains(this._scrollParent[0],this._offsetParent[0]))){b=this._offsetParent}else{b=this._scrollParent}g=(/(html|body)/i).test(b[0].tagName);return this._getPosition(c,e,g,b)},_getPosition:function(c,d,e,b){return{top:(c.top+this._offset.relative.top*d+this._offset.parent.top*d-(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollTop():(e?0:b.scrollTop()))*d)),left:(c.left+this._offset.relative.left*d+this._offset.parent.left*d-(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollLeft():e?0:b.scrollLeft())*d))}},_generatePosition:function(f){var b=this._positionType=="absolute"&&!(this._scrollParent[0]!=document&&a.contains(this._scrollParent[0],this._offsetParent[0]))?this._offsetParent:this._scrollParent,i=(/(html|body)/i).test(b[0].tagName);var e=this._getMouseCoordinates(f),d=e.left,c=e.top;if(this.originalPosition){var h;if(this.restricter){if(this._restrictiveContainer){var g=this._restrictiveContainer.offset();h=[this._restricter[0]+g.left,this._restricter[1]+g.top,this._restricter[2]+g.left,this._restricter[3]+g.top]}else{h=this._restricter}if(e.left-this._offset.click.left<h[0]){d=h[0]+this._offset.click.left}if(e.top-this._offset.click.top<h[1]){c=h[1]+this._offset.click.top}if(e.left-this._offset.click.left>h[2]){d=h[2]+this._offset.click.left}if(e.top-this._offset.click.top>h[3]){c=h[3]+this._offset.click.top}}}return{top:(c-this._offset.click.top-this._offset.relative.top-this._offset.parent.top+(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollTop():(i?0:b.scrollTop())))),left:(d-this._offset.click.left-this._offset.relative.left-this._offset.parent.left+(a.jqx.browser.safari&&a.jqx.browser.version<526&&this._positionType=="fixed"?0:(this._positionType=="fixed"?-this._scrollParent.scrollLeft():i?0:b.scrollLeft())))}},_raiseEvent:function(c,e){if(this.triggerEvents!=undefined&&this.triggerEvents==false){return}var b=this._events[c],d=a.Event(b),e=e||{};e.position=this.position;e.element=this.element;a.extend(e,this.data);e.feedback=this.feedback;d.args=e;return this.host.trigger(d)},disable:function(){this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-draggable-disabled"));this._enableSelection(this.host)},enable:function(){this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-draggable-disabled"))},propertyChangedHandler:function(b,c,e,d){if(c==="dropTarget"){if(typeof d==="string"){b.dropTarget=a(d)}}else{if(c=="disabled"){if(d){b._enableSelection(b.host)}}else{if(c=="cursor"){b.host.css("cursor",b.cursor)}}}}})})(jqxBaseFramework);(function(a){jqxListBoxDragDrop=function(){a.extend(a.jqx._jqxListBox.prototype,{_hitTestBounds:function(b,c,e){var f=b.host.offset();var g=e-parseInt(f.top);var i=c-parseInt(f.left);var k=b._hitTest(i,g);if(g<0){return null}if(k!=null){var d=parseInt(f.left);var j=d+b.host.width();if(d<=c+k.width/2&&c<=j){return k}return null}if(b.items&&b.items.length>0){var h=b.items[b.items.length-1];if(b.groups.length<2){if(h.top+h.height+15>=g){return h}}}return null},_handleDragStart:function(d,c){var b=a.jqx.mobile.isTouchDevice();if(b){if(c.allowDrag){d.on(a.jqx.mobile.getTouchEventName("touchstart"),function(){a.jqx.mobile.setTouchScroll(false,c.element.id)})}}d.off("dragStart");d.on("dragStart",function(h){if(c.allowDrag&&!c.disabled){c.feedbackElement=a("<div style='z-index: 99999; position: absolute;'></div>");c.feedbackElement.addClass(c.toThemeProperty("jqx-listbox-feedback"));c.feedbackElement.appendTo(a(document.body));c.feedbackElement.hide();c.isDragging=true;c._dragCancel=false;var j=c._getMouseCoordinates(h);var g=c._hitTestBounds(c,j.left,j.top);var i=a.find(".jqx-listbox");c._listBoxes=i;a.each(c._listBoxes,function(){var k=a.data(this,"jqxListBox").instance;k._enableHover=k.enableHover;k.enableHover=false;a.jqx.mobile.setTouchScroll(false,c.element.id)});var f=function(){c._dragCancel=true;a(h.args.element).jqxDragDrop({triggerEvents:false});a(h.args.element).jqxDragDrop("cancelDrag");clearInterval(c._autoScrollTimer);a(h.args.element).jqxDragDrop({triggerEvents:true});a.each(c._listBoxes,function(){var k=a.data(this,"jqxListBox").instance;if(k._enableHover!=undefined){k.enableHover=k._enableHover;a.jqx.mobile.setTouchScroll(true,c.element.id)}})};if(g!=null&&!g.isGroup){c._dragItem=g;if(c.dragStart){var e=c.dragStart(g);if(e==false){f();return false}}if(g.disabled){f()}c._raiseEvent(4,{label:g.label,value:g.value,originalEvent:h.args})}else{if(g==null){f()}}}return false})},_handleDragging:function(c,b){c.off("dragging");c.on("dragging",function(f){var e=f.args;if(b._dragCancel){return}var g=b._getMouseCoordinates(f);var d=g;b._lastDraggingPosition=g;b._dragOverItem=null;b.feedbackElement.hide();a.each(b._listBoxes,function(){if(a.jqx.isHidden(a(this))){return true}var l=a(this).offset();var n=l.top+20;var h=a(this).height()+n-40;var j=l.left;var i=a(this).width();var o=j+i;var m=a.data(this,"jqxListBox").instance;var p=m._hitTestBounds(m,g.left,g.top);var k=m.vScrollInstance;if(p!=null){if(m.allowDrop&&!m.disabled){b._dragOverItem=p;if(p.element){b.feedbackElement.show();var q=a(p.element).offset().top+1;if(d.top>q+p.height/2){q=q+p.height}b.feedbackElement.css("top",q);b.feedbackElement.css("left",j);if(m.vScrollBar.css("visibility")!="visible"){b.feedbackElement.width(a(this).width())}else{b.feedbackElement.width(a(this).width()-20)}}}}if(g.left>=j&&g.left<o){if(e.position.top<n&&e.position.top>=n-30){clearInterval(m._autoScrollTimer);if(k.value!=0){b.feedbackElement.hide()}m._autoScrollTimer=setInterval(function(){var r=m.scrollUp();if(!r){clearInterval(m._autoScrollTimer)}},100)}else{if(e.position.top>h&&e.position.top<h+30){clearInterval(m._autoScrollTimer);if((m.vScrollBar.css("visibility")!="hidden")&&k.value!=k.max){b.feedbackElement.hide()}m._autoScrollTimer=setInterval(function(){var r=m.scrollDown();if(!r){clearInterval(m._autoScrollTimer)}},100)}else{clearInterval(m._autoScrollTimer)}}}else{if(b._dragOverItem==null){b.feedbackElement.hide()}clearInterval(m._autoScrollTimer)}})})},_handleDragEnd:function(c,b){var d=a.find(".jqx-listbox");c.off("dragEnd");c.on("dragEnd",function(f){clearInterval(b._autoScrollTimer);var o=a.jqx.mobile.isTouchDevice();var k=o?b._lastDraggingPosition:b._getMouseCoordinates(f);var g=a.find(".jqx-listbox");var h=null;b.feedbackElement.remove();if(b._dragCancel){f.stopPropagation();return}a.each(g,function(){if(a.jqx.isHidden(a(this))){return true}var w=parseInt(a(this).offset().left);var u=w+a(this).width();var x=a.data(this,"jqxListBox").instance;clearInterval(x._autoScrollTimer);if(x._enableHover!=undefined){x.enableHover=x._enableHover;a.jqx.mobile.setTouchScroll(true,b.element.id)}if(b._dragItem!=null){if(k.left+b._dragItem.width/2>=w&&k.left<u){var v=parseInt(a(this).offset().top);var t=v+a(this).height();if(k.top>=v&&k.top<=t){h=a(this)}}}});var s=b._dragItem;if(h!=null&&h.length>0){var n=a.data(h[0],"jqxListBox").instance;var l=n.allowDrop;if(l&&!n.disabled){var n=a.data(h[0],"jqxListBox").instance;var p=n._hitTestBounds(n,k.left,k.top);p=b._dragOverItem;if(p!=null&&!p.isGroup){var r=true;if(b.dragEnd){r=b.dragEnd(s,p,f.args);if(r==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true});if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}if(r==undefined){r=true}}if(r){var e=p.visibleIndex;var j=function(){var u=p.visibleIndex;for(var t=u-2;t<=u+2;t++){if(n.items&&n.items.length>t){var v=n.items[t];if(v!=null){if(v.value==s.value){return v.visibleIndex}}}}return u};if(n.dropAction!="none"){if(p.element){var q=a(p.element).offset().top+1}else{var q=a(n.element).offset().top+1}if(n.content.find(".draggable").length>0){n.content.find(".draggable").jqxDragDrop("destroy")}if(k.top>q+p.height/2){n.insertAt(b._dragItem,p.index+1)}else{n.insertAt(b._dragItem,p.index)}if(b.dropAction=="default"){if(s.visibleIndex>0){b.selectIndex(s.visibleIndex-1)}b.removeItem(s,true)}var m=j();n.clearSelection();n.selectIndex(m)}}}else{if(n.dropAction!="none"){if(n.content.find(".draggable").length>0){n.content.find(".draggable").jqxDragDrop("destroy")}if(b.dragEnd){var r=b.dragEnd(b._dragItem,null,f.args);if(r==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true});if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}if(r==undefined){r=true}}n.addItem(b._dragItem);if(n.dropAction=="default"){if(s.visibleIndex>0){b.selectIndex(s.visibleIndex-1)}b.removeItem(s,true)}n.clearSelection();n.selectIndex(n.items.length-1)}}}}else{if(b.dragEnd){var i=b.dragEnd(s,f.args);if(false==i){if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}}}if(s!=null){b._raiseEvent(5,{label:s.label,value:s.value,originalEvent:f.args})}return false})},_enableDragDrop:function(){if(this.allowDrag&&this.host.jqxDragDrop){var c=this.content.find(".draggable");if(c.length>0){var b=this;c.jqxDragDrop({cursor:"arrow",revertDuration:0,appendTo:"body",dragZIndex:99999,revert:true,initFeedback:function(d){var f=a('<span style="white-space: nowrap;" class="'+b.toThemeProperty("jqx-fill-state-normal")+'">'+d.text()+"</span>");a(document.body).append(f);var e=f.width();f.remove();d.width(e+5);d.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this._autoScrollTimer=null;b._dragItem=null;b._handleDragStart(c,b);b._handleDragging(c,b);b._handleDragEnd(c,b)}}},_getMouseCoordinates:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(this._isTouchDevice){var c=a.jqx.position(b.args);return{left:c.left,top:c.top}}else{return{left:b.args.pageX,top:b.args.pageY}}}})};jqxTreeDragDrop=function(){a.extend(a.jqx._jqxTree.prototype,{_hitTestBounds:function(b,g,f){var d=this;var e=null;if(b._visibleItems){var c=parseInt(b.host.offset().left);var h=b.host.outerWidth();a.each(b._visibleItems,function(j){if(g>=c&&g<c+h){if(this.top+5<f&&f<this.top+this.height){var i=a(this.element).parents("li:first");if(i.length>0){e=b.getItem(i[0]);if(e!=null){e.height=this.height;e.top=this.top;return false}}}}})}return e},_handleDragStart:function(d,c){if(c._dragOverItem){c._dragOverItem.titleElement.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}var b=a.jqx.mobile.isTouchDevice();if(b){if(c.allowDrag){d.on(a.jqx.mobile.getTouchEventName("touchstart"),function(){a.jqx.mobile.setTouchScroll(false,"panel"+c.element.id)})}}d.off("dragStart");d.on("dragStart",function(g){c.feedbackElement=a("<div style='z-index: 99999; position: absolute;'></div>");c.feedbackElement.addClass(c.toThemeProperty("jqx-listbox-feedback"));c.feedbackElement.appendTo(a(document.body));c.feedbackElement.hide();c._dragCancel=false;var e=g.args.position;var f=a.find(".jqx-tree");c._trees=f;a.each(f,function(){var j=a.data(this,"jqxTree").instance;var l=j.host.find(".draggable");j._syncItems(l);if(j.allowDrag&&!j.disabled){var i=a(g.target).parents("li:first");if(i.length>0){var k=j.getItem(i[0]);if(k){c._dragItem=k;if(j.dragStart){var h=j.dragStart(k);if(h==false){c._dragCancel=true;a(g.args.element).jqxDragDrop({triggerEvents:false});a(g.args.element).jqxDragDrop("cancelDrag");clearInterval(c._autoScrollTimer);a(g.args.element).jqxDragDrop({triggerEvents:j});return false}}j._raiseEvent(8,{label:k.label,value:k.value,originalEvent:g.args})}}}});return false})},_getMouseCoordinates:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(this._isTouchDevice){var c=a.jqx.position(b.args);return{left:c.left,top:c.top}}else{return{left:b.args.pageX,top:b.args.pageY}}},_handleDragging:function(c,b){var c=this.host.find(".draggable");c.off("dragging");c.on("dragging",function(h){var f=h.args;var d=f.position;var e=b._trees;if(b._dragCancel){return}if(b._dragOverItem){b._dragOverItem.titleElement.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}var i=true;var g=b._getMouseCoordinates(h);b._lastDraggingPosition=g;a.each(e,function(){if(a.jqx.isHidden(a(this))){return true}var m=a(this).offset();var q=m.top+20;var j=a(this).height()+q-40;var l=m.left;var k=a(this).width();var r=l+k;var p=a.data(this,"jqxTree").instance;if(p.disabled||!p.allowDrop){return}var n=p.vScrollInstance;var s=p._hitTestBounds(p,g.left,g.top);if(s!=null){if(b._dragOverItem){b._dragOverItem.titleElement.removeClass(p.toThemeProperty("jqx-fill-state-hover"))}b._dragOverItem=s;if(s.element){b.feedbackElement.show();var t=s.top;var o=g.top;b._dropPosition="before";if(o>t+s.height/3){t=s.top+s.height/2;b._dragOverItem.titleElement.addClass(b.toThemeProperty("jqx-fill-state-hover"));b.feedbackElement.hide();b._dropPosition="inside"}if(o>(s.top+s.height)-s.height/3){t=s.top+s.height;b._dragOverItem.titleElement.removeClass(b.toThemeProperty("jqx-fill-state-hover"));b.feedbackElement.show();b._dropPosition="after"}b.feedbackElement.css("top",t);var l=-2+parseInt(s.titleElement.offset().left);b.feedbackElement.css("left",l);b.feedbackElement.width(a(s.titleElement).width()+12)}}if(g.left>=l&&g.left<r){if(g.top+20>=q&&g.top<=q+p.host.height()){i=false}if(g.top<q&&g.top>=q-30){clearInterval(p._autoScrollTimer);if(n.value!=0){b.feedbackElement.hide()}p._autoScrollTimer=setInterval(function(){var v=p.panelInstance.scrollUp();var u=p.host.find(".draggable");p._syncItems(u);if(!v){clearInterval(p._autoScrollTimer)}},100)}else{if(g.top>j&&g.top<j+30){clearInterval(p._autoScrollTimer);if(n.value!=n.max){b.feedbackElement.hide()}p._autoScrollTimer=setInterval(function(){var v=p.panelInstance.scrollDown();var u=p.host.find(".draggable");p._syncItems(u);if(!v){clearInterval(p._autoScrollTimer)}},100)}else{clearInterval(p._autoScrollTimer)}}}else{clearInterval(p._autoScrollTimer)}});if(i){if(b.feedbackElement){b.feedbackElement.hide()}}})},_handleDragEnd:function(c,b){c.off("dragEnd");c.on("dragEnd",function(f){var d=b.host.find(".draggable");clearInterval(b._autoScrollTimer);var k=f.args.position;var s=b._trees;var t=null;var n=a.jqx.mobile.isTouchDevice();var g=n?b._lastDraggingPosition:b._getMouseCoordinates(f);b.feedbackElement.remove();if(b._dragCancel){return false}if(b._dragOverItem){b._dragOverItem.titleElement.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}a.each(s,function(){if(a.jqx.isHidden(a(this))){return true}var y=parseInt(a(this).offset().left);var w=y+a(this).width();var v=a.data(this,"jqxTree").instance;clearInterval(v._autoScrollTimer);if(b._dragItem!=null){if(g.left>=y&&g.left<w){var x=parseInt(a(this).offset().top);var u=x+a(this).height();if(g.top>=x&&g.top<=u){t=a(this)}}}});var r=b._dragItem;if(t!=null&&t.length>0){var l=t.jqxTree("allowDrop");if(l){var m=a.data(t[0],"jqxTree").instance;var o=b._dragOverItem;if(o!=null&&b._dragOverItem.treeInstance.element.id==m.element.id){var q=true;if(b.dragEnd){q=b.dragEnd(r,o,f.args,b._dropPosition,t);if(q==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true})}if(undefined==q){q=true}}if(q){var e=function(){var u=b._dragItem.treeInstance;u._refreshMapping();u._updateItemsNavigation();u._render(true,false);if(u.checkboxes){u._updateCheckStates()}b._dragItem.treeInstance=m;b._syncItems(b._dragItem.treeInstance.host.find(".draggable"))};if(m.dropAction!="none"){if(b._dragItem.id!=b._dragOverItem.id){if(b._dropPosition=="inside"){m._drop(b._dragItem.element,b._dragOverItem.element,-1,m);e()}else{var i=0;if(b._dropPosition=="after"){i++}m._drop(b._dragItem.element,b._dragOverItem.parentElement,i+a(b._dragOverItem.element).index(),m);e()}}}m._render(true,false);var p=m.host.find(".draggable");b._syncItems(p);b._dragOverItem=null;b._dragItem=null;m._refreshMapping();m._updateItemsNavigation();m.selectedItem=null;m.selectItem(r.element);if(m.checkboxes){m._updateCheckStates()}m._render(true,false)}}else{if(m.dropAction!="none"){if(m.allowDrop){var q=true;if(b.dragEnd){q=b.dragEnd(r,o,f.args,b._dropPosition,t);if(q==false){a(f.args.element).jqxDragDrop({triggerEvents:false});a(f.args.element).jqxDragDrop("cancelDrag");clearInterval(b._autoScrollTimer);a(f.args.element).jqxDragDrop({triggerEvents:true})}if(undefined==q){q=true}}if(q){b._dragItem.parentElement=null;m._drop(b._dragItem.element,null,-1,m);var h=b._dragItem.treeInstance;h._refreshMapping();h._updateItemsNavigation();if(h.checkboxes){h._updateCheckStates()}var p=h.host.find(".draggable");b._syncItems(p);b._dragItem.treeInstance=m;m.items[m.items.length]=b._dragItem;m._render(true,false);m._refreshMapping();m.selectItem(r.element);m._updateItemsNavigation();var p=m.host.find(".draggable");m._syncItems(p);if(m.checkboxes){m._updateCheckStates()}b._dragOverItem=null;b._dragItem=null}}}}}}else{if(b.dragEnd){var j=b.dragEnd(r,f.args);if(false==j){return false}}}if(r!=null){b._raiseEvent(7,{label:r.label,value:r.value,originalEvent:f.args})}return false})},_drop:function(f,b,e,c){if(a(b).parents("#"+f.id).length>0){return}if(b!=null){if(b.id==f.id){return}}var h=this;if(c.element.innerHTML.indexOf("UL")){var i=c.host.find("ul:first")}if(b==undefined&&b==null){if(e==undefined||e==-1){i.append(f)}else{if(i.children("li").eq(e).length==0){i.children("li").eq(e-1).after(f)}else{if(i.children("li").eq(e)[0].id!=f.id){i.children("li").eq(e).before(f)}}}}else{if(e==undefined||e==-1){b=a(b);var d=b.find("ul:first");if(d.length==0){ulElement=a("<ul></ul>");a(b).append(ulElement);d=b.find("ul:first");var g=c.itemMapping["id"+b[0].id].item;g.subtreeElement=d[0];g.hasItems=true;d.addClass(c.toThemeProperty("jqx-tree-dropdown"));d.append(f);f=d.find("li:first");g.parentElement=f}else{d.append(f)}}else{b=a(b);var d=b.find("ul:first");if(d.length==0){ulElement=a("<ul></ul>");a(b).append(ulElement);d=b.find("ul:first");if(b){var g=c.itemMapping["id"+b[0].id].item;g.subtreeElement=d[0];g.hasItems=true}d.addClass(c.toThemeProperty("jqx-tree-dropdown"));d.append(f);f=d.find("li:first");g.parentElement=f}else{if(d.children("li").eq(e).length==0){d.children("li").eq(e-1).after(f)}else{if(d.children("li").eq(e)[0].id!=f.id){d.children("li").eq(e).before(f)}}}}}},_enableDragDrop:function(){if(this.allowDrag&&this.host.jqxDragDrop){var d=this.host.find(".draggable");var c=this;if(d.length>0){d.jqxDragDrop({cursor:"arrow",revertDuration:0,appendTo:"body",dragZIndex:99999,revert:true,initFeedback:function(e){var g=a('<span style="white-space: nowrap;" class="'+c.toThemeProperty("jqx-fill-state-normal")+'">'+e.text()+"</span>");a(document.body).append(g);var f=g.width();g.remove();e.width(f+5);e.addClass(c.toThemeProperty("jqx-fill-state-pressed"))}});var b=d.jqxDragDrop("isDestroyed");if(b===true){d.jqxDragDrop("_createDragDrop")}this._autoScrollTimer=null;c._dragItem=null;c._handleDragStart(d,c);c._handleDragging(d,c);c._handleDragEnd(d,c)}}}})}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdraw.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdraw.js
new file mode 100644 (file)
index 0000000..f9ed667
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDraw","",{});a.extend(a.jqx._jqxDraw.prototype,{defineInstance:function(){var d={renderEngine:""};a.extend(true,this,d);var e=["clear","on","off","removeElement","attr","getAttr","line","circle","rect","path","pieslice","text","measureText"];for(var c in e){this._addFn(a.jqx._jqxDraw.prototype,e[c])}},_addFn:function(d,c){if(d[c]){return}d[c]=function(){return this.renderer[c].apply(this.renderer,arguments)}},createInstance:function(c){},_initRenderer:function(c){return a.jqx.createRenderer(this,c)},_internalRefresh:function(){var c=this;if(a.jqx.isHidden(c.host)){return}if(!c.renderer){c.host.empty();c._initRenderer(c.host)}var e=c.renderer;if(!e){return}var d=e.getRect();c._render({x:1,y:1,width:d.width,height:d.height});if(e instanceof a.jqx.HTML5Renderer){e.refresh()}},_saveAsImage:function(e,f,c,d){return a.jqx._widgetToImage(this,e,f,c,d)},_render:function(d){var c=this;var e=c.renderer;c._plotRect=d},refresh:function(){this._internalRefresh()},getSize:function(){var c=this._plotRect;return{width:c.width,height:c.height}},saveAsPNG:function(e,c,d){return this._saveAsImage("png",e,c,d)},saveAsJPEG:function(e,c,d){return this._saveAsImage("jpeg",e,c,d)}})})(jqxBaseFramework);(function(a){a.jqx.toGreyScale=function(c){if(c.indexOf("#")==-1){return c}var d=a.jqx.cssToRgb(c);d[0]=d[1]=d[2]=Math.round(0.3*d[0]+0.59*d[1]+0.11*d[2]);var e=a.jqx.rgbToHex(d[0],d[1],d[2]);return"#"+e[0]+e[1]+e[2]},a.jqx.adjustColor=function(f,e){if(typeof(f)!="string"){return"#000000"}if(f.indexOf("#")==-1){return f}var h=a.jqx.cssToRgb(f);var d=a.jqx.rgbToHsl(h);d[2]=Math.min(1,d[2]*e);d[1]=Math.min(1,d[1]*e*1.1);h=a.jqx.hslToRgb(d);var f="#";for(var j=0;j<3;j++){var k=Math.round(h[j]);k=a.jqx.decToHex(k);if(k.toString().length==1){f+="0"}f+=k}return f.toUpperCase()};a.jqx.decToHex=function(c){return c.toString(16)};a.jqx.hexToDec=function(c){return parseInt(c,16)};a.jqx.rgbToHex=function(e,d,c){return[a.jqx.decToHex(e),a.jqx.decToHex(d),a.jqx.decToHex(c)]};a.jqx.hexToRgb=function(d,f,c){return[a.jqx.hexToDec(d),a.jqx.hexToDec(f),a.jqx.hexToDec(c)]};a.jqx.cssToRgb=function(c){if(c.indexOf("rgb")<=-1){return a.jqx.hexToRgb(c.substring(1,3),c.substring(3,5),c.substring(5,7))}return c.substring(4,c.length-1).split(",")};a.jqx.hslToRgb=function(d){var f=parseFloat(d[0]);var e=parseFloat(d[1]);var c=parseFloat(d[2]);if(e==0){r=g=b=c}else{var i=c<0.5?c*(1+e):c+e-c*e;var j=2*c-i;r=a.jqx.hueToRgb(j,i,f+1/3);g=a.jqx.hueToRgb(j,i,f);b=a.jqx.hueToRgb(j,i,f-1/3)}return[r*255,g*255,b*255]};a.jqx.hueToRgb=function(e,d,c){if(c<0){c+=1}if(c>1){c-=1}if(c<1/6){return e+(d-e)*6*c}else{if(c<1/2){return d}else{if(c<2/3){return e+(d-e)*(2/3-c)*6}}}return e};a.jqx.rgbToHsl=function(j){var c=parseFloat(j[0])/255;var i=parseFloat(j[1])/255;var k=parseFloat(j[2])/255;var m=Math.max(c,i,k),e=Math.min(c,i,k);var f,o,d=(m+e)/2;if(m==e){f=o=0}else{var n=m-e;o=d>0.5?n/(2-m-e):n/(m+e);switch(m){case c:f=(i-k)/n+(i<k?6:0);break;case i:f=(k-c)/n+2;break;case k:f=(c-i)/n+4;break}f/=6}return[f,o,d]};a.jqx.swap=function(c,e){var d=c;c=e;e=d};a.jqx.getNum=function(c){if(!a.isArray(c)){if(isNaN(c)){return 0}}else{for(var d=0;d<c.length;d++){if(!isNaN(c[d])){return c[d]}}}return 0};a.jqx._ptdist=function(d,f,c,e){return Math.sqrt((c-d)*(c-d)+(e-f)*(e-f))};a.jqx._ptrnd=function(d){if(!document.createElementNS){if(Math.round(d)==d){return d}return a.jqx._rnd(d,1,false,true)}var c=a.jqx._rnd(d,0.5,false,true);if(Math.abs(c-Math.round(c))!=0.5){return c>d?c-0.5:c+0.5}return c};a.jqx._ptRotate=function(e,k,d,j,h){var c=Math.sqrt(Math.pow(Math.abs(e-d),2)+Math.pow(Math.abs(k-j),2));var f=Math.asin((e-d)/c);var i=f+h;e=d+Math.cos(i)*c;k=j+Math.sin(i)*c;return{x:e,y:k}};a.jqx._rup=function(d){var c=Math.round(d);if(d>c){c++}return c};a.jqx.log=function(d,c){return Math.log(d)/(c?Math.log(c):1)};a.jqx._mod=function(d,c){var e=Math.abs(d>c?c:d);var f=1;if(e!=0){while(e*f<100){f*=10}}d=d*f;c=c*f;return(d%c)/f};a.jqx._rnd=function(e,h,f,d){if(isNaN(e)){return e}if(undefined===d){d=true}var c=e-((d==true)?e%h:a.jqx._mod(e,h));if(e==c){return c}if(f){if(e>c){c+=h}}else{if(c>e){c-=h}}return(h==1)?Math.round(c):c};a.jqx.commonRenderer={pieSlicePath:function(m,l,j,u,D,E,e){if(!u){u=1}var o=Math.abs(D-E);var s=o>180?1:0;if(o>=360){E=D+359.99}var t=D*Math.PI*2/360;var k=E*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e+j>0){if(e>0){var n=o/2+D;var C=n*Math.PI*2/360;m+=e*Math.cos(C);l-=e*Math.sin(C)}if(p){var z=j;B=m+z*Math.cos(t);h=l-z*Math.sin(t);A=m+z*Math.cos(k);f=l-z*Math.sin(k)}}var w=m+u*Math.cos(t);var v=m+u*Math.cos(k);var d=l-u*Math.sin(t);var c=l-u*Math.sin(k);var q="";var i=(Math.abs(Math.abs(E-D)-360)>0.02);if(p){q="M "+A+","+f;q+=" a"+j+","+j;q+=" 0 "+s+",1 "+(B-A)+","+(h-f);if(i){q+=" L"+w+","+d}else{q+=" M"+w+","+d}q+=" a"+u+","+u;q+=" 0 "+s+",0 "+(v-w)+","+(c-d);if(i){q+=" Z"}}else{q="M "+v+","+c;q+=" a"+u+","+u;q+=" 0 "+s+",1 "+(w-v)+","+(d-c);if(i){q+=" L"+m+","+l;q+=" Z"}}return q},measureText:function(q,h,i,p,n){var f=n._getTextParts(q,h,i);var k=f.width;var c=f.height;if(false==p){c/=0.6}var d={};if(isNaN(h)){h=0}if(h==0){d={width:a.jqx._rup(k),height:a.jqx._rup(c)}}else{var m=h*Math.PI*2/360;var e=Math.abs(Math.sin(m));var l=Math.abs(Math.cos(m));var j=Math.abs(k*e+c*l);var o=Math.abs(k*l+c*e);d={width:a.jqx._rup(o),height:a.jqx._rup(j)}}if(p){d.textPartsInfo=f}return d},alignTextInRect:function(t,p,c,u,o,q,k,s,f,e){var m=f*Math.PI*2/360;var d=Math.sin(m);var l=Math.cos(m);var n=o*d;var j=o*l;if(k=="center"||k==""||k=="undefined"){t=t+c/2}else{if(k=="right"){t=t+c}}if(s=="center"||s=="middle"||s==""||s=="undefined"){p=p+u/2}else{if(s=="bottom"){p+=u-q/2}else{if(s=="top"){p+=q/2}}}e=e||"";var h="middle";if(e.indexOf("top")!=-1){h="top"}else{if(e.indexOf("bottom")!=-1){h="bottom"}}var i="center";if(e.indexOf("left")!=-1){i="left"}else{if(e.indexOf("right")!=-1){i="right"}}if(i=="center"){t-=j/2;p-=n/2}else{if(i=="right"){t-=j;p-=n}}if(h=="top"){t-=q*d;p+=q*l}else{if(h=="middle"){t-=q*d/2;p+=q*l/2}}t=a.jqx._rup(t);p=a.jqx._rup(p);return{x:t,y:p}}};a.jqx.svgRenderer=function(){};a.jqx.svgRenderer.prototype={_svgns:"http://www.w3.org/2000/svg",init:function(h){var f="<table id=tblChart cellspacing='0' cellpadding='0' border='0' align='left' valign='top'><tr><td colspan=2 id=tdTop></td></tr><tr><td id=tdLeft></td><td><div class='chartContainer' style='position:relative' onselectstart='return false;'></div></td></tr></table>";h.append(f);this.host=h;var c=h.find(".chartContainer");c[0].style.width=h.width()+"px";c[0].style.height=h.height()+"px";var j;try{var d=document.createElementNS(this._svgns,"svg");d.setAttribute("id","svgChart");d.setAttribute("version","1.1");d.setAttribute("width","100%");d.setAttribute("height","100%");d.setAttribute("overflow","hidden");c[0].appendChild(d);this.canvas=d}catch(i){return false}this._id=new Date().getTime();this.clear();this._layout();this._runLayoutFix();return true},getType:function(){return"SVG"},refresh:function(){},_runLayoutFix:function(){var c=this;this._fixLayout()},_fixLayout:function(){var i=a(this.canvas).position();var e=(parseFloat(i.left)==parseInt(i.left));var c=(parseFloat(i.top)==parseInt(i.top));if(a.jqx.browser.msie){var e=true,c=true;var f=this.host;var d=0,h=0;while(f&&f.position&&f[0].parentNode){var j=f.position();d+=parseFloat(j.left)-parseInt(j.left);h+=parseFloat(j.top)-parseInt(j.top);f=f.parent()}e=parseFloat(d)==parseInt(d);c=parseFloat(h)==parseInt(h)}if(!e){this.host.find("#tdLeft")[0].style.width="0.5px"}if(!c){this.host.find("#tdTop")[0].style.height="0.5px"}},_layout:function(){var d=a(this.canvas).offset();var c=this.host.find(".chartContainer");this._width=Math.max(a.jqx._rup(this.host.width())-1,0);this._height=Math.max(a.jqx._rup(this.host.height())-1,0);c[0].style.width=this._width;c[0].style.height=this._height;this._fixLayout()},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeElement(this.canvas.firstElementChild)}this._defaultParent=undefined;this._defs=document.createElementNS(this._svgns,"defs");this._gradients={};this.canvas.appendChild(this._defs)},removeElement:function(e){if(undefined==e){return}this.removeHandler(e);try{while(e.firstChild){this.removeElement(e.firstChild)}if(e.parentNode){e.parentNode.removeChild(e)}else{this.canvas.removeChild(e)}}catch(d){var c=d}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElementNS(this._svgns,"g");c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(e){var f=document.createElementNS(this._svgns,"clipPath");var d=document.createElementNS(this._svgns,"rect");this.attr(d,{x:e.x,y:e.y,width:e.width,height:e.height,fill:"none"});this._clipId=this._clipId||0;f.id="cl"+this._id+"_"+(++this._clipId).toString();f.appendChild(d);this._defs.appendChild(f);return f},getWindowHref:function(){var d=a.jqx.browser;if(d&&d.browser=="msie"&&d.version<10){return""}var c=window.location.href;if(!c){return c}c=c.replace(/([\('\)])/g,"\\$1");c=c.replace(/#.*$/,"");return c},setClip:function(e,d){var c="url("+this.getWindowHref()+"#"+d.id+")";return this.attr(e,{"clip-path":c})},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},shape:function(c,f){var d=document.createElementNS(this._svgns,c);if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},_getTextParts:function(t,j,k){var h={width:0,height:0,parts:[]};if(undefined===t){return h}var o=0.6;var u=t.toString().split("<br>");var q=this._activeParent();var m=document.createElementNS(this._svgns,"text");this.attr(m,k);for(var l=0;l<u.length;l++){var d=u[l];var f=m.ownerDocument.createTextNode(d);m.appendChild(f);q.appendChild(m);var s;try{s=m.getBBox()}catch(p){}var n=a.jqx._rup(s.width);var c=a.jqx._rup(s.height*o);m.removeChild(f);h.width=Math.max(h.width,n);h.height+=c+(l>0?4:0);h.parts.push({width:n,height:c,text:d})}q.removeChild(m);return h},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(z,t,s,E,C,K,M,L,v,m,d){var B=this._measureText(z,K,M,true);var l=B.textPartsInfo;var j=l.parts;var D;if(!v){v="center"}if(!m){m="center"}if(j.length>1||L){D=this.beginGroup()}if(L){var k=this.createClipRect({x:a.jqx._rup(t)-1,y:a.jqx._rup(s)-1,width:a.jqx._rup(E)+2,height:a.jqx._rup(C)+2});this.setClip(D,k)}var q=this._activeParent();var O=0,n=0;var c=0.6;O=l.width;n=l.height;if(isNaN(E)||E<=0){E=O}if(isNaN(C)||C<=0){C=n}var u=E||0;var J=C||0;if(!K||K==0){s+=n;if(m=="center"||m=="middle"){s+=(J-n)/2}else{if(m=="bottom"){s+=J-n}}if(!E){E=O}if(!C){C=n}var q=this._activeParent();var p=0;for(var I=j.length-1;I>=0;I--){var A=document.createElementNS(this._svgns,"text");this.attr(A,M);this.attr(A,{cursor:"default"});var H=A.ownerDocument.createTextNode(j[I].text);A.appendChild(H);var P=t;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(u-o)/2}else{if(v=="right"){P+=(u-o)}}this.attr(A,{x:a.jqx._rup(P),y:a.jqx._rup(s+p),width:a.jqx._rup(o),height:a.jqx._rup(f)});q.appendChild(A);p-=j[I].height+4}if(D){this.endGroup();return D}return A}var F=a.jqx.commonRenderer.alignTextInRect(t,s,E,C,O,n,v,m,K,d);t=F.x;s=F.y;var G=this.shape("g",{transform:"translate("+t+","+s+")"});var e=this.shape("g",{transform:"rotate("+K+")"});G.appendChild(e);var p=0;for(var I=j.length-1;I>=0;I--){var N=document.createElementNS(this._svgns,"text");this.attr(N,M);this.attr(N,{cursor:"default"});var H=N.ownerDocument.createTextNode(j[I].text);N.appendChild(H);var P=0;var o=j[I].width;var f=j[I].height;if(v=="center"){P+=(l.width-o)/2}else{if(v=="right"){P+=(l.width-o)}}this.attr(N,{x:a.jqx._rup(P),y:a.jqx._rup(p),width:a.jqx._rup(o),height:a.jqx._rup(f)});e.appendChild(N);p-=f+4}q.appendChild(G);if(D){this.endGroup()}return G},line:function(e,h,d,f,i){var c=this.shape("line",{x1:e,y1:h,x2:d,y2:f});this.attr(c,i);return c},path:function(d,e){var c=this.shape("path");c.setAttribute("d",d);if(e){this.attr(c,e)}return c},rect:function(c,j,d,f,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=Math.max(1,a.jqx._rnd(d,1,false));f=Math.max(1,a.jqx._rnd(f,1,false));var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},circle:function(c,h,e,f){var d=this.shape("circle",{cx:c,cy:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,e,h,c,k,d){var f=this.pieSlicePath(l,j,i,e,h,c,k);var m=this.shape("path");m.setAttribute("d",f);if(d){this.attr(m,d)}return m},attr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=e[d]}else{c.setAttribute(d,e[d])}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){if(d=="textContent"){c.textContent=""}else{c.removeAttribute(e[d])}}},getAttr:function(d,c){return d.getAttribute(c)},_gradients:{},_toLinearGradient:function(f,k,l){var d="grd"+this._id+f.replace("#","")+(k?"v":"h");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"linearGradient");this.attr(e,{x1:"0%",y1:"0%",x2:k?"0%":"100%",y2:k?"100%":"0%",id:d});for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c},_toRadialGradient:function(f,l,k){var d="grd"+this._id+f.replace("#","")+"r"+(k!=undefined?k.key:"");var c="url("+this.getWindowHref()+"#"+d+")";if(this._gradients[c]){return c}var e=document.createElementNS(this._svgns,"radialGradient");if(k==undefined){this.attr(e,{cx:"50%",cy:"50%",r:"100%",fx:"50%",fy:"50%",id:d})}else{this.attr(e,{cx:k.x,cy:k.y,r:k.outerRadius,id:d,gradientUnits:"userSpaceOnUse"})}for(var h=0;h<l.length;h++){var j=l[h];var n=document.createElementNS(this._svgns,"stop");var m="stop-color:"+a.jqx.adjustColor(f,j[1]);this.attr(n,{offset:j[0]+"%",style:m});e.appendChild(n)}this._defs.appendChild(e);this._gradients[c]=true;return c}};a.jqx.vmlRenderer=function(){};a.jqx.vmlRenderer.prototype={init:function(j){var h="<div class='chartContainer' style=\"position:relative;overflow:hidden;\"><div>";j.append(h);this.host=j;var c=j.find(".chartContainer");c[0].style.width=j.width()+"px";c[0].style.height=j.height()+"px";var f=true;try{for(var d=0;d<document.namespaces.length;d++){if(document.namespaces[d].name=="v"&&document.namespaces[d].urn=="urn:schemas-microsoft-com:vml"){f=false;break}}}catch(k){return false}if(a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9&&(document.childNodes&&document.childNodes.length>0&&document.childNodes[0].data&&document.childNodes[0].data.indexOf("DOCTYPE")!=-1)){if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml")}this._ie8mode=true}else{if(f){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().cssText="v\\:* { behavior: url(#default#VML); display: inline-block; }"}}this.canvas=c[0];this._width=Math.max(a.jqx._rup(c.width()),0);this._height=Math.max(a.jqx._rup(c.height()),0);c[0].style.width=this._width+2;c[0].style.height=this._height+2;this._id=new Date().getTime();this.clear();return true},getType:function(){return"VML"},refresh:function(){},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var c=this.host.find(".chartContainer");return c},clear:function(){while(this.canvas.childElementCount>0){this.removeHandler(this.canvas.firstElementChild);this.canvas.removeChild(this.canvas.firstElementChild)}this._gradients={};this._defaultParent=undefined},removeElement:function(c){if(c!=null){this.removeHandler(c);c.parentNode.removeChild(c)}},_openGroups:[],beginGroup:function(){var c=this._activeParent();var d=document.createElement("v:group");d.style.position="absolute";d.coordorigin="0,0";d.coordsize=this._width+","+this._height;d.style.left=0;d.style.top=0;d.style.width=this._width;d.style.height=this._height;c.appendChild(d);this._openGroups.push(d);return d},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(c){var d=document.createElement("div");d.style.height=(c.height+1)+"px";d.style.width=(c.width+1)+"px";d.style.position="absolute";d.style.left=c.x+"px";d.style.top=c.y+"px";d.style.overflow="hidden";this._clipId=this._clipId||0;d.id="cl"+this._id+"_"+(++this._clipId).toString();this._activeParent().appendChild(d);return d},setClip:function(d,c){},_clipId:0,addHandler:function(c,e,d){if(a(c).on){a(c).on(e,d)}else{a(c).bind(e,d)}},removeHandler:function(c,e,d){if(a(c).off){a(c).off(e,d)}else{a(c).unbind(e,d)}},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},_getTextParts:function(q,h,j){var f={width:0,height:0,parts:[]};var o=0.6;var s=q.toString().split("<br>");var p=this._activeParent();var l=document.createElement("v:textbox");this.attr(l,j);p.appendChild(l);for(var k=0;k<s.length;k++){var d=s[k];var e=document.createElement("span");e.appendChild(document.createTextNode(d));l.appendChild(e);if(j&&j["class"]){e.className=j["class"]}var n=a(l);var m=a.jqx._rup(n.width());var c=a.jqx._rup(n.height()*o);if(c==0&&a.jqx.browser.msie&&parseInt(a.jqx.browser.version)<9){var t=n.css("font-size");if(t){c=parseInt(t);if(isNaN(c)){c=0}}}l.removeChild(e);f.width=Math.max(f.width,m);f.height+=c+(k>0?2:0);f.parts.push({width:m,height:c,text:d})}p.removeChild(l);return f},_measureText:function(f,e,d,c){if(Math.abs(e)>45){e=90}else{e=0}return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(u,p,o,D,z,J,L,K,t,k){var E;if(L&&L.stroke){E=L.stroke}if(E==undefined){E="black"}var v=this._measureText(u,J,L,true);var f=v.textPartsInfo;var c=f.parts;var M=v.width;var l=v.height;if(isNaN(D)||D==0){D=M}if(isNaN(z)||z==0){z=l}var B;if(!t){t="center"}if(!k){k="center"}if(c.length>0||K){B=this.beginGroup()}if(K){var d=this.createClipRect({x:a.jqx._rup(p),y:a.jqx._rup(o),width:a.jqx._rup(D),height:a.jqx._rup(z)});this.setClip(B,d)}var n=this._activeParent();var s=D||0;var I=z||0;if(Math.abs(J)>45){J=90}else{J=0}var A=0,H=0;if(t=="center"){A+=(s-M)/2}else{if(t=="right"){A+=(s-M)}}if(k=="center"){H=(I-l)/2}else{if(k=="bottom"){H=I-l}}if(J==0){o+=l+H;p+=A}else{p+=M+A;o+=H}var m=0,N=0;var e;for(var G=c.length-1;G>=0;G--){var C=c[G];var q=(M-C.width)/2;if(J==0&&t=="left"){q=0}else{if(J==0&&t=="right"){q=M-C.width}else{if(J==90){q=(l-C.width)/2}}}var j=m-C.height;H=J==90?q:j;A=J==90?j:q;e=document.createElement("v:textbox");e.style.position="absolute";e.style.left=a.jqx._rup(p+A);e.style.top=a.jqx._rup(o+H);e.style.width=a.jqx._rup(C.width);e.style.height=a.jqx._rup(C.height);if(J==90){e.style.filter="progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";e.style.height=a.jqx._rup(C.height)+5}var F=document.createElement("span");F.appendChild(document.createTextNode(C.text));if(L&&L["class"]){F.className=L["class"]}e.appendChild(F);n.appendChild(e);m-=C.height+(G>0?2:0)}if(B){this.endGroup();return n}return e},shape:function(c,f){var d=document.createElement(this._createElementMarkup(c));if(!d){return undefined}for(var e in f){d.setAttribute(e,f[e])}this._activeParent().appendChild(d);return d},line:function(f,i,e,h,j){var c="M "+f+","+i+" L "+e+","+h+" X E";var d=this.path(c);this.attr(d,j);return d},_createElementMarkup:function(c){var d="<v:"+c+' style=""></v:'+c+">";if(this._ie8mode){d=d.replace('style=""','style="behavior: url(#default#VML);"')}return d},path:function(d,e){var c=document.createElement(this._createElementMarkup("shape"));c.style.position="absolute";c.coordsize=this._width+" "+this._height;c.coordorigin="0 0";c.style.width=parseInt(this._width);c.style.height=parseInt(this._height);c.style.left=0+"px";c.style.top=0+"px";c.setAttribute("path",d);this._activeParent().appendChild(c);if(e){this.attr(c,e)}return c},rect:function(c,j,d,e,i){c=a.jqx._ptrnd(c);j=a.jqx._ptrnd(j);d=a.jqx._rup(d);e=a.jqx._rup(e);var f=this.shape("rect",i);f.style.position="absolute";f.style.left=c;f.style.top=j;f.style.width=d;f.style.height=e;f.strokeweight=0;if(i){this.attr(f,i)}return f},circle:function(c,h,e,f){var d=this.shape("oval");c=a.jqx._ptrnd(c-e);h=a.jqx._ptrnd(h-e);e=a.jqx._rup(e);d.style.position="absolute";d.style.left=c;d.style.top=h;d.style.width=e*2;d.style.height=e*2;if(f){this.attr(d,f)}return d},updateCircle:function(e,c,f,d){if(c==undefined){c=parseFloat(e.style.left)+parseFloat(e.style.width)/2}if(f==undefined){f=parseFloat(e.style.top)+parseFloat(e.style.height)/2}if(d==undefined){d=parseFloat(e.width)/2}c=a.jqx._ptrnd(c-d);f=a.jqx._ptrnd(f-d);d=a.jqx._rup(d);e.style.left=c;e.style.top=f;e.style.width=d*2;e.style.height=d*2},pieSlicePath:function(m,l,j,u,E,F,e){if(!u){u=1}var o=Math.abs(E-F);var s=o>180?1:0;if(o>360){E=0;F=360}var t=E*Math.PI*2/360;var k=F*Math.PI*2/360;var B=m,A=m,h=l,f=l;var p=!isNaN(j)&&j>0;if(p){e=0}if(e>0){var n=o/2+E;var D=n*Math.PI*2/360;m+=e*Math.cos(D);l-=e*Math.sin(D)}if(p){var z=j;B=a.jqx._ptrnd(m+z*Math.cos(t));h=a.jqx._ptrnd(l-z*Math.sin(t));A=a.jqx._ptrnd(m+z*Math.cos(k));f=a.jqx._ptrnd(l-z*Math.sin(k))}var w=a.jqx._ptrnd(m+u*Math.cos(t));var v=a.jqx._ptrnd(m+u*Math.cos(k));var d=a.jqx._ptrnd(l-u*Math.sin(t));var c=a.jqx._ptrnd(l-u*Math.sin(k));u=a.jqx._ptrnd(u);j=a.jqx._ptrnd(j);m=a.jqx._ptrnd(m);l=a.jqx._ptrnd(l);var i=Math.round(E*65535);var C=Math.round((F-E)*65536);if(j<0){j=1}var q="";if(p){q="M"+B+" "+h;q+=" AE "+m+" "+l+" "+j+" "+j+" "+i+" "+C;q+=" L "+v+" "+c;i=Math.round((E-F)*65535);C=Math.round(F*65536);q+=" AE "+m+" "+l+" "+u+" "+u+" "+C+" "+i;q+=" L "+B+" "+h}else{q="M"+m+" "+l;q+=" AE "+m+" "+l+" "+u+" "+u+" "+i+" "+C}q+=" X E";return q},pieslice:function(m,k,j,f,i,c,l,e){var h=this.pieSlicePath(m,k,j,f,i,c,l);var d=this.path(h,e);if(e){this.attr(d,e)}return d},_keymap:[{svg:"fill",vml:"fillcolor"},{svg:"stroke",vml:"strokecolor"},{svg:"stroke-width",vml:"strokeweight"},{svg:"stroke-dasharray",vml:"dashstyle"},{svg:"fill-opacity",vml:"fillopacity"},{svg:"stroke-opacity",vml:"strokeopacity"},{svg:"opacity",vml:"opacity"},{svg:"cx",vml:"style.left"},{svg:"cy",vml:"style.top"},{svg:"height",vml:"style.height"},{svg:"width",vml:"style.width"},{svg:"x",vml:"style.left"},{svg:"y",vml:"style.top"},{svg:"d",vml:"v"},{svg:"display",vml:"style.display"}],_translateParam:function(c){for(var d in this._keymap){if(this._keymap[d].svg==c){return this._keymap[d].vml}}return c},attr:function(d,f){if(!d||!f){return}for(var e in f){var c=this._translateParam(e);if(undefined==f[e]){continue}if(c=="fillcolor"&&f[e].indexOf("grd")!=-1){d.type=f[e]}else{if(c=="fillcolor"&&f[e]=="transparent"){d.style.filter="alpha(opacity=0)";d["-ms-filter"]="progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"}else{if(c=="opacity"||c=="fillopacity"){if(d.fill){d.fill.opacity=f[e]}}else{if(c=="textContent"){d.children[0].innerText=f[e]}else{if(c=="dashstyle"){d.dashstyle=f[e].replace(","," ")}else{if(c.indexOf("style.")==-1){d[c]=f[e]}else{d.style[c.replace("style.","")]=f[e]}}}}}}}},removeAttr:function(c,e){if(!c||!e){return}for(var d in e){c.removeAttribute(e[d])}},getAttr:function(e,d){var c=this._translateParam(d);if(c=="opacity"||c=="fillopacity"){if(e.fill){return e.fill.opacity}else{return 1}}if(c.indexOf("style.")==-1){return e[c]}return e.style[c.replace("style.","")]},_gradients:{},_toRadialGradient:function(c,e,d){return c},_toLinearGradient:function(j,m,n){if(this._ie8mode){return j}var e="grd"+j.replace("#","")+(m?"v":"h");var f="#"+e+"";if(this._gradients[f]){return f}var h=document.createElement(this._createElementMarkup("fill"));h.type="gradient";h.method="linear";h.angle=m?0:90;var d="";for(var k=0;k<n.length;k++){var l=n[k];if(l>0){d+=", "}d+=l[0]+"% "+a.jqx.adjustColor(j,l[1])}h.colors=d;var c=document.createElement(this._createElementMarkup("shapetype"));c.appendChild(h);c.id=e;this.canvas.appendChild(c);return f}};a.jqx.HTML5Renderer=function(){};a.jqx.ptrnd=function(d){if(Math.abs(Math.round(d)-d)==0.5){return d}var c=Math.round(d);if(c<d){c=c-1}return c+0.5};a.jqx.HTML5Renderer.prototype={init:function(c){try{this.host=c;this.host.append("<div class='chartContainer' style='position:relative' onselectstart='return false;'><canvas id='__jqxCanvasWrap' style='width:100%; height: 100%;'/></div>");this.canvas=c.find("#__jqxCanvasWrap");this.canvas[0].width=c.width();this.canvas[0].height=c.height();this.ctx=this.canvas[0].getContext("2d");this._elements={};this._maxId=0;this._gradientId=0;this._gradients={};this._currentPoint={x:0,y:0};this._lastCmd="";this._pos=0}catch(d){return false}return true},getType:function(){return"HTML5"},getContainer:function(){var c=this.host.find(".chartContainer");return c},getRect:function(){return{x:0,y:0,width:this.canvas[0].width-1,height:this.canvas[0].height-1}},beginGroup:function(){},endGroup:function(){},setClip:function(){},createClipRect:function(c){},addHandler:function(c,e,d){},removeHandler:function(c,e,d){},on:function(c,e,d){this.addHandler(c,e,d)},off:function(c,e,d){this.removeHandler(c,e,d)},clear:function(){this._elements={};this._maxId=0;this._renderers._gradients={};this._gradientId=0},removeElement:function(c){if(undefined==c){return}if(this._elements[c.id]){delete this._elements[c.id]}},shape:function(c,f){var d={type:c,id:this._maxId++};for(var e in f){d[e]=f[e]}this._elements[d.id]=d;return d},attr:function(c,e){for(var d in e){c[d]=e[d]}},removeAttr:function(c,e){for(var d in e){delete c[e[d]]}},rect:function(c,j,d,f,i){if(isNaN(c)){throw'Invalid value for "x"'}if(isNaN(j)){throw'Invalid value for "y"'}if(isNaN(d)){throw'Invalid value for "width"'}if(isNaN(f)){throw'Invalid value for "height"'}var e=this.shape("rect",{x:c,y:j,width:d,height:f});if(i){this.attr(e,i)}return e},path:function(c,e){var d=this.shape("path",e);this.attr(d,{d:c});return d},line:function(d,f,c,e,h){return this.path("M "+d+","+f+" L "+c+","+e,h)},circle:function(c,h,e,f){var d=this.shape("circle",{x:c,y:h,r:e});if(f){this.attr(d,f)}return d},pieSlicePath:function(d,j,i,f,h,e,c){return a.jqx.commonRenderer.pieSlicePath(d,j,i,f,h,e,c)},pieslice:function(l,j,i,f,h,c,k,d){var e=this.path(this.pieSlicePath(l,j,i,f,h,c,k),d);this.attr(e,{x:l,y:j,innerRadius:i,outerRadius:f,angleFrom:h,angleTo:c});return e},_getCSSStyle:function(d){var k=document.styleSheets;try{for(var f=0;f<k.length;f++){for(var c=0;k[f].cssRules&&c<k[f].cssRules.length;c++){if(k[f].cssRules[c].selectorText.indexOf(d)!=-1){return k[f].cssRules[c].style}}}}catch(h){}return{}},_getTextParts:function(s,h,j){var n="Arial";var t="10pt";var o="";if(j&&j["class"]){var c=this._getCSSStyle(j["class"]);if(c.fontSize){t=c.fontSize}if(c.fontFamily){n=c.fontFamily}if(c.fontWeight){o=c.fontWeight}}this.ctx.font=o+" "+t+" "+n;var f={width:0,height:0,parts:[]};var m=0.6;var q=s.toString().split("<br>");for(var k=0;k<q.length;k++){var e=q[k];var l=this.ctx.measureText(e).width;var p=document.createElement("span.jqxchart");p.font=this.ctx.font;p.textContent=e;document.body.appendChild(p);var d=p.offsetHeight*m;document.body.removeChild(p);f.width=Math.max(f.width,a.jqx._rup(l));f.height+=d+(k>0?4:0);f.parts.push({width:l,height:d,text:e})}return f},_measureText:function(f,e,d,c){return a.jqx.commonRenderer.measureText(f,e,d,c,this)},measureText:function(e,d,c){return this._measureText(e,d,c,false)},text:function(o,n,l,d,p,h,i,e,j,m,f){var q=this.shape("text",{text:o,x:n,y:l,width:d,height:p,angle:h,clip:e,halign:j,valign:m,rotateAround:f});if(i){this.attr(q,i)}q.fontFamily="Arial";q.fontSize="10pt";q.fontWeight="";q.color="#000000";if(i&&i["class"]){var c=this._getCSSStyle(i["class"]);q.fontFamily=c.fontFamily||q.fontFamily;q.fontSize=c.fontSize||q.fontSize;q.fontWeight=c.fontWeight||q.fontWeight;q.color=c.color||q.color}var k=this._measureText(o,0,i,true);this.attr(q,{textPartsInfo:k.textPartsInfo,textWidth:k.width,textHeight:k.height});if(d<=0||isNaN(d)){this.attr(q,{width:k.width})}if(p<=0||isNaN(p)){this.attr(q,{height:k.height})}return q},_toLinearGradient:function(d,j,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,j?"vertical":"horizontal",c);return e},_toRadialGradient:function(d,h){if(this._renderers._gradients[d]){return d}var c=[];for(var f=0;f<h.length;f++){c.push({percent:h[f][0]/100,color:a.jqx.adjustColor(d,h[f][1])})}var e="gr"+this._gradientId++;this.createGradient(e,"radial",c);return e},createGradient:function(e,d,c){this._renderers.createGradient(this,e,d,c)},_renderers:{createGradient:function(f,e,d,c){f._gradients[e]={orientation:d,colorStops:c}},setStroke:function(d,e){var c=d.ctx;c.strokeStyle=e.stroke||"transparent";c.lineWidth=e["stroke-width"]||1;if(e["fill-opacity"]!=undefined){c.globalAlpha=e["fill-opacity"]}else{if(e.opacity!=undefined){c.globalAlpha=e.opacity}else{c.globalAlpha=1}}if(c.setLineDash){if(e["stroke-dasharray"]){c.setLineDash(e["stroke-dasharray"].split(","))}else{c.setLineDash([])}}},setFillStyle:function(d,h){var p=d.ctx;p.fillStyle="transparent";if(h["fill-opacity"]!=undefined){p.globalAlpha=h["fill-opacity"]}else{if(h.opacity!=undefined){p.globalAlpha=h.opacity}else{p.globalAlpha=1}}if(h.fill&&h.fill.indexOf("#")==-1&&d._gradients[h.fill]){var n=d._gradients[h.fill].orientation!="horizontal";var k=d._gradients[h.fill].orientation=="radial";var e=a.jqx.ptrnd(h.x);var o=a.jqx.ptrnd(h.y);var c=a.jqx.ptrnd(h.x+(n?0:h.width));var l=a.jqx.ptrnd(h.y+(n?h.height:0));var m;if((h.type=="circle"||h.type=="path"||h.type=="rect")&&k){x=a.jqx.ptrnd(h.x);y=a.jqx.ptrnd(h.y);r1=h.innerRadius||0;r2=h.outerRadius||h.r||0;if(h.type=="rect"){x+=h.width/2;y+=h.height/2}m=p.createRadialGradient(x,y,r1,x,y,r2)}if(!k){if(isNaN(e)||isNaN(c)||isNaN(o)||isNaN(l)){e=0;o=0;c=n?0:p.canvas.width;l=n?p.canvas.height:0}m=p.createLinearGradient(e,o,c,l)}var f=d._gradients[h.fill].colorStops;for(var j=0;j<f.length;j++){m.addColorStop(f[j].percent,f[j].color)}p.fillStyle=m}else{if(h.fill){p.fillStyle=h.fill}}},rect:function(c,d){if(d.width==0||d.height==0){return}c.fillRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height);c.strokeRect(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.width,d.height)},circle:function(c,d){if(d.r==0){return}c.beginPath();c.arc(a.jqx.ptrnd(d.x),a.jqx.ptrnd(d.y),d.r,0,Math.PI*2,false);c.closePath();c.fill();c.stroke()},_parsePoint:function(d){var c=this._parseNumber(d);var e=this._parseNumber(d);return({x:c,y:e})},_parseNumber:function(e){var f=false;for(var c=this._pos;c<e.length;c++){if((e[c]>="0"&&e[c]<="9")||e[c]=="."||e[c]=="e"||(e[c]=="-"&&!f)||(e[c]=="-"&&c>=1&&e[c-1]=="e")){f=true;continue}if(!f&&(e[c]==" "||e[c]==",")){this._pos++;continue}break}var d=parseFloat(e.substring(this._pos,c));if(isNaN(d)){return undefined}this._pos=c;return d},_cmds:"mlcaz",_isRelativeCmd:function(c){return a.jqx.string.contains(this._cmds,c)},_parseCmd:function(c){for(var d=this._pos;d<c.length;d++){if(a.jqx.string.containsIgnoreCase(this._cmds,c[d])){this._pos=d+1;this._lastCmd=c[d];return this._lastCmd}if(c[d]==" "){this._pos++;continue}if(c[d]>="0"&&c[d]<="9"){this._pos=d;if(this._lastCmd==""){break}else{return this._lastCmd}}}return undefined},_toAbsolutePoint:function(c){return{x:this._currentPoint.x+c.x,y:this._currentPoint.y+c.y}},path:function(E,N){var B=N.d;this._pos=0;this._lastCmd="";var n=undefined;this._currentPoint={x:0,y:0};E.beginPath();var I=0;while(this._pos<B.length){var H=this._parseCmd(B);if(H==undefined){break}if(H=="M"||H=="m"){var F=this._parsePoint(B);if(F==undefined){break}E.moveTo(F.x,F.y);this._currentPoint=F;if(n==undefined){n=F}continue}if(H=="L"||H=="l"){var F=this._parsePoint(B);if(F==undefined){break}E.lineTo(F.x,F.y);this._currentPoint=F;continue}if(H=="A"||H=="a"){var j=this._parseNumber(B);var h=this._parseNumber(B);var L=this._parseNumber(B)*(Math.PI/180);var P=this._parseNumber(B);var f=this._parseNumber(B);var q=this._parsePoint(B);if(this._isRelativeCmd(H)){q=this._toAbsolutePoint(q)}if(j==0||h==0){continue}var k=this._currentPoint;var K={x:Math.cos(L)*(k.x-q.x)/2+Math.sin(L)*(k.y-q.y)/2,y:-Math.sin(L)*(k.x-q.x)/2+Math.cos(L)*(k.y-q.y)/2};var l=Math.pow(K.x,2)/Math.pow(j,2)+Math.pow(K.y,2)/Math.pow(h,2);if(l>1){j*=Math.sqrt(l);h*=Math.sqrt(l)}var t=(P==f?-1:1)*Math.sqrt(((Math.pow(j,2)*Math.pow(h,2))-(Math.pow(j,2)*Math.pow(K.y,2))-(Math.pow(h,2)*Math.pow(K.x,2)))/(Math.pow(j,2)*Math.pow(K.y,2)+Math.pow(h,2)*Math.pow(K.x,2)));if(isNaN(t)){t=0}var J={x:t*j*K.y/h,y:t*-h*K.x/j};var D={x:(k.x+q.x)/2+Math.cos(L)*J.x-Math.sin(L)*J.y,y:(k.y+q.y)/2+Math.sin(L)*J.x+Math.cos(L)*J.y};var C=function(i){return Math.sqrt(Math.pow(i[0],2)+Math.pow(i[1],2))};var z=function(m,i){return(m[0]*i[0]+m[1]*i[1])/(C(m)*C(i))};var O=function(m,i){return(m[0]*i[1]<m[1]*i[0]?-1:1)*Math.acos(z(m,i))};var G=O([1,0],[(K.x-J.x)/j,(K.y-J.y)/h]);var p=[(K.x-J.x)/j,(K.y-J.y)/h];var o=[(-K.x-J.x)/j,(-K.y-J.y)/h];var M=O(p,o);if(z(p,o)<=-1){M=Math.PI}if(z(p,o)>=1){M=0}if(f==0&&M>0){M=M-2*Math.PI}if(f==1&&M<0){M=M+2*Math.PI}var z=(j>h)?j:h;var A=(j>h)?1:j/h;var w=(j>h)?h/j:1;E.translate(D.x,D.y);E.rotate(L);E.scale(A,w);E.arc(0,0,z,G,G+M,1-f);E.scale(1/A,1/w);E.rotate(-L);E.translate(-D.x,-D.y);continue}if((H=="Z"||H=="z")&&n!=undefined){E.lineTo(n.x,n.y);this._currentPoint=n;continue}if(H=="C"||H=="c"){var e=this._parsePoint(B);var d=this._parsePoint(B);var c=this._parsePoint(B);E.bezierCurveTo(e.x,e.y,d.x,d.y,c.x,c.y);this._currentPoint=c;continue}}E.fill();E.stroke();E.closePath()},text:function(A,G){var p=a.jqx.ptrnd(G.x);var o=a.jqx.ptrnd(G.y);var v=a.jqx.ptrnd(G.width);var t=a.jqx.ptrnd(G.height);var s=G.halign;var k=G.valign;var D=G.angle;var c=G.rotateAround;var f=G.textPartsInfo;var e=f.parts;var E=G.clip;if(E==undefined){E=true}A.save();if(!s){s="center"}if(!k){k="center"}if(E){A.rect(p,o,v,t);A.clip()}var H=G.textWidth;var l=G.textHeight;var q=v||0;var C=t||0;A.fillStyle=G.color;A.font=G.fontWeight+" "+G.fontSize+" "+G.fontFamily;if(!D||D==0){o+=l;if(k=="center"||k=="middle"){o+=(C-l)/2}else{if(k=="bottom"){o+=C-l}}if(!v){v=H}if(!t){t=l}var n=0;for(var B=e.length-1;B>=0;B--){var u=e[B];var I=p;var m=e[B].width;var d=e[B].height;if(s=="center"){I+=(q-m)/2}else{if(s=="right"){I+=(q-m)}}A.fillText(u.text,I,o+n);n-=u.height+(B>0?4:0)}A.restore();return}var z=a.jqx.commonRenderer.alignTextInRect(p,o,v,t,H,l,s,k,D,c);p=z.x;o=z.y;var j=D*Math.PI*2/360;A.translate(p,o);A.rotate(j);var n=0;var F=f.width;for(var B=e.length-1;B>=0;B--){var I=0;if(s=="center"){I+=(F-e[B].width)/2}else{if(s=="right"){I+=(F-e[B].width)}}A.fillText(e[B].text,I,n);n-=e[B].height+4}A.restore()}},refresh:function(){this.ctx.clearRect(0,0,this.canvas[0].width,this.canvas[0].height);for(var c in this._elements){var d=this._elements[c];this._renderers.setFillStyle(this,d);this._renderers.setStroke(this,d);this._renderers[this._elements[c].type](this.ctx,d)}}};a.jqx.createRenderer=function(c,e){var d=c;var f=d.renderer=null;if(document.createElementNS&&(d.renderEngine!="HTML5"&&d.renderEngine!="VML")){f=new a.jqx.svgRenderer();if(!f.init(e)){if(d.renderEngine=="SVG"){throw"Your browser does not support SVG"}return null}}if(f==null&&d.renderEngine!="HTML5"){f=new a.jqx.vmlRenderer();if(!f.init(e)){if(d.renderEngine=="VML"){throw"Your browser does not support VML"}return null}d._isVML=true}if(f==null&&(d.renderEngine=="HTML5"||d.renderEngine==undefined)){f=new a.jqx.HTML5Renderer();if(!f.init(e)){throw"Your browser does not support HTML5 Canvas"}}d.renderer=f;return f},a.jqx._widgetToImage=function(q,k,f,o,i,h){var m=q;if(!m){return false}if(f==undefined||f==""){f="image."+k}var n=m.renderEngine;var d=m.enableAnimations;m.enableAnimations=false;m.renderEngine="HTML5";if(m.renderEngine!=n){try{m.refresh()}catch(j){m.renderEngine=n;m.refresh();m.enableAnimations=d;return false}}var c=m.renderer.getContainer().find("canvas")[0];var l=true;if(a.isFunction(h)){l=h(q,c)}var p=true;if(l){p=a.jqx.exportImage(c,k,f,o,i)}if(m.renderEngine!=n){m.renderEngine=n;m.refresh();m.enableAnimations=d}return p};a.jqx.getByPriority=function(c){var e=undefined;for(var d=0;d<c.length&&e==undefined;d++){if(e==undefined&&c[d]!=undefined){e=c[d]}}return e};a.jqx.exportImage=function(f,o,h,s,k){if(!f){return false}var m=o.toLowerCase()==="pdf";if(m){o="jpeg"}if(h==undefined||h==""){h="image."+o}if(s==undefined||s==""){throw"Please specifiy export server"}var u=true;try{if(f){var i=f.toDataURL("image/"+o);if(m){if(!a.jqx.pdfExport){a.jqx.pdfExport={orientation:"portrait",paperSize:"a4"}}var j=595;switch(a.jqx.pdfExport.paperSize){case"legal":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=1008}break;case"letter":var j=612;if(a.jqx.pdfExport.orientation!=="portrait"){j=792}break;case"a3":var j=841;if(a.jqx.pdfExport.orientation!=="portrait"){j=1190}break;case"a4":var j=595;if(a.jqx.pdfExport.orientation!=="portrait"){j=842}break;case"a5":var j=420;if(a.jqx.pdfExport.orientation!=="portrait"){j=595}break}var l=a(f).width();var p=l*72/96;if(p>=j-20){p=j-20}var q=new pdfDataExport(a.jqx.pdfExport.orientation,"pt",a.jqx.pdfExport.paperSize);q.addImage(i,"JPEG",10,10,p,0);q.save(h);return}i=i.replace("data:image/"+o+";base64,","");if(k){a.ajax({dataType:"string",url:s,type:"POST",data:{content:i,fname:h},async:false,success:function(v,e,w){u=true},error:function(v,e,w){u=false}})}else{var d=document.createElement("form");d.method="POST";d.action=s;d.style.display="none";document.body.appendChild(d);var t=document.createElement("input");t.name="fname";t.value=h;t.style.display="none";var c=document.createElement("input");c.name="content";c.value=i;c.style.display="none";d.appendChild(t);d.appendChild(c);d.submit();document.body.removeChild(d);u=true}}}catch(n){u=false}return u}})(jqxBaseFramework);(function(a){jqxPlot=function(){};jqxPlot.prototype={get:function(e,c,d){return d!==undefined?e[c][d]:e[c]},min:function(h,e){var d=NaN;for(var c=0;c<h.length;c++){var f=this.get(h,c,e);if(isNaN(d)||f<d){d=f}}return d},max:function(h,e){var c=NaN;for(var d=0;d<h.length;d++){var f=this.get(h,d,e);if(isNaN(c)||f>c){c=f}}return c},sum:function(h,d){var e=0;for(var c=0;c<h.length;c++){var f=this.get(h,c,d);if(!isNaN(f)){e+=f}}return e},count:function(h,d){var e=0;for(var c=0;c<h.length;c++){var f=this.get(h,c,d);if(!isNaN(f)){e++}}return e},avg:function(d,c){return this.sum(d,c)/Math.max(1,count(d,c))},filter:function(f,e){if(!e){return f}var c=[];for(var d=0;d<f.length;d++){if(e(f[d])){c.push(f[d])}}return c},scale:function(e,k,l,i){if(isNaN(e)||e<Math.min(k[0],k[1])||e>Math.max(k[0],k[1])){return NaN}var p=NaN;var n=1;if(!i||(i.type===undefined||i.type!="logarithmic")){var m=Math.abs(k[1]-k[0]);if(!m){m=1}n=Math.abs(e-Math.min(k[0],k[1]))/m}else{if(i.type==="logarithmic"){var f=i.base;if(isNaN(f)){f=10}var j=Math.min(k[0],k[1]);if(j<=0){j=1}var o=Math.max(k[0],k[1]);if(o<=0){o=1}var h=a.jqx._rnd(a.jqx.log(o,f),1,o<1?false:true);o=Math.pow(f,h);var d=a.jqx._rnd(a.jqx.log(j,f),1,false);j=Math.pow(f,d);var c=a.jqx.log(e,f);n=Math.abs(c-d)/(h-d)}}p=Math.min(l[0],l[1])+n*Math.abs(l[1]-l[0]);if(i&&i.flip){p=Math.max(l[0],l[1])-p}return p},axis:function(q,s,m){if(m<=1){return[s,q]}var h=q;var k=s;if(isNaN(m)||m<2){m=2}var c=0;while(Math.round(q)!=q&&Math.round(s)!=s&&c<10){q*=10;s*=10;c++}var n=(s-q)/m;while(c<10&&Math.round(n)!=n){q*=10;s*=10;n*=10;c++}var w=[1,2,5];var j=0;var t=0;while(true){var o=t%w.length;var f=Math.floor(t/w.length);var p=Math.pow(10,f)*w[o];o=(t+1)%w.length;f=Math.floor((t+1)/w.length);var l=Math.pow(10,f)*w[o];if(n>=p&&n<l){break}t++}var e=l;var u=[];var v=a.jqx._rnd(q,e,false);var d=c<=0?1:Math.pow(10,c);while(v<s+e){u.push(v/d);v+=e}return u}}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdropdownbutton.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdropdownbutton.js
new file mode 100644 (file)
index 0000000..dd5aa82
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDropDownButton","",{});a.extend(a.jqx._jqxDropDownButton.prototype,{defineInstance:function(){var b={disabled:false,width:null,height:null,arrowSize:19,enableHover:true,openDelay:250,closeDelay:300,animationType:"default",enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",popupZIndex:20000,autoOpen:false,rtl:false,initContent:null,dropDownWidth:null,dropDownHeight:null,focusable:true,touchMode:false,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["open","close","opening","closing"]};a.extend(true,this,b);return b},createInstance:function(j){var g=this;if(!g.width){g.width=200}if(!g.height){g.height=25}g.isanimating=false;g.setupInstance();var c=a("<div style='background-color: transparent; -webkit-appearance: none; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; border: 0px; position: relative;'><div id='dropDownButtonWrapper' style='outline: none; background-color: transparent; border: none; float: left; width:100%; height: 100%; position: relative;'><div id='dropDownButtonContent' unselectable='on' style='outline: none; background-color: transparent; border: none; float: left; position: relative;'/><div id='dropDownButtonArrow' unselectable='on'  style='background-color: transparent; border: none; float: right; position: relative;'><div unselectable='on'></div></div></div></div>");if(g.host.attr("tabindex")){c.attr("tabindex",g.host.attr("tabindex"));g.host.removeAttr("tabindex")}else{c.attr("tabindex",0)}if(!g.focusable){c.removeAttr("tabIndex")}a.jqx.aria(this);g.popupContent=g.host.children();g.host.attr("role","button");if(g.popupContent.length==0){g.popupContent=a("<div>"+g.host.text()+"</div>");g.popupContent.css("display","block");g.element.innerHTML=""}else{g.popupContent.detach()}var k=this;g.addHandler(g.host,"loadContent",function(e){k._arrange()});try{var f="dropDownButtonPopup"+g.element.id;var d=a(a.find("#"+f));if(d.length>0){d.remove()}a.jqx.aria(this,"aria-haspopup",true);a.jqx.aria(this,"aria-owns",f);var b=a("<div class='dropDownButton' style='overflow: hidden; left: -1000px; top: -1000px; position: absolute;' id='dropDownButtonPopup"+g.element.id+"'></div>");b.addClass(g.toThemeProperty("jqx-widget-content"));b.addClass(g.toThemeProperty("jqx-dropdownbutton-popup"));b.addClass(g.toThemeProperty("jqx-popup"));b.addClass(g.toThemeProperty("jqx-rc-all"));b.css("z-index",g.popupZIndex);if(a.jqx.browser.msie){b.addClass(g.toThemeProperty("jqx-noshadow"))}g.popupContent.appendTo(b);b.appendTo(document.body);g.container=b;g.container.css("visibility","hidden")}catch(h){}g.touch=a.jqx.mobile.isTouchDevice();g.dropDownButtonStructure=c;g.host.append(c);g.dropDownButtonWrapper=g.host.find("#dropDownButtonWrapper");g.firstDiv=g.dropDownButtonWrapper.parent();g.dropDownButtonArrow=g.host.find("#dropDownButtonArrow");g.arrow=a(g.dropDownButtonArrow.children()[0]);g.dropDownButtonContent=g.host.find("#dropDownButtonContent");g.dropDownButtonContent.addClass(g.toThemeProperty("jqx-dropdownlist-content"));g.dropDownButtonWrapper.addClass(g.toThemeProperty("jqx-disableselect"));if(g.rtl){g.dropDownButtonContent.addClass(g.toThemeProperty("jqx-rtl"))}var m=this;if(g.host.parents()){g.addHandler(g.host.parents(),"scroll.dropdownbutton"+g.element.id,function(e){var n=m.isOpened();if(n){m.close()}})}g.addHandler(g.dropDownButtonWrapper,"selectstart",function(){return false});g.dropDownButtonWrapper[0].id="dropDownButtonWrapper"+g.element.id;g.dropDownButtonArrow[0].id="dropDownButtonArrow"+g.element.id;g.dropDownButtonContent[0].id="dropDownButtonContent"+g.element.id;var m=this;g.propertyChangeMap.disabled=function(e,o,n,p){if(p){e.host.addClass(m.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.addClass(m.toThemeProperty("jqx-fill-state-disabled"));e.dropDownButtonContent.addClass(m.toThemeProperty("jqx-dropdownlist-content-disabled"))}else{e.host.removeClass(m.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.removeClass(m.toThemeProperty("jqx-fill-state-disabled"));e.dropDownButtonContent.removeClass(m.toThemeProperty("jqx-dropdownlist-content-disabled"))}a.jqx.aria(e,"aria-disabled",e.disabled)};if(g.disabled){g.host.addClass(g.toThemeProperty("jqx-dropdownlist-state-disabled"));g.host.addClass(g.toThemeProperty("jqx-fill-state-disabled"));g.dropDownButtonContent.addClass(g.toThemeProperty("jqx-dropdownlist-content-disabled"))}var i=g.toThemeProperty("jqx-rc-all")+" "+g.toThemeProperty("jqx-fill-state-normal")+" "+g.toThemeProperty("jqx-widget")+" "+g.toThemeProperty("jqx-widget-content")+" "+g.toThemeProperty("jqx-dropdownlist-state-normal");g.host.addClass(i);g.arrow.addClass(g.toThemeProperty("jqx-icon-arrow-down"));g.arrow.addClass(g.toThemeProperty("jqx-icon"));g._setSize();g.render();if(a.jqx.browser.msie&&a.jqx.browser.version<8){g.container.css("display","none");if(g.host.parents(".jqx-window").length>0){var l=g.host.parents(".jqx-window").css("z-index");b.css("z-index",l+10);g.container.css("z-index",l+10)}}},setupInstance:function(){var c=this;var b={setContent:function(d){c.dropDownButtonContent.children().remove();c.dropDownButtonContent[0].innerHTML="";c.dropDownButtonContent.append(d)},val:function(d){if(arguments.length==0||typeof(d)=="object"){return c.dropDownButtonContent.text()}else{c.dropDownButtonContent.html(d)}},getContent:function(){if(c.dropDownButtonContent.children().length>0){return c.dropDownButtonContent.children()}return c.dropDownButtonContent.text()},_setSize:function(){if(c.width!=null&&c.width.toString().indexOf("px")!=-1){c.host[0].style.width=c.width}else{if(c.width!=undefined&&!isNaN(c.width)){c.host[0].style.width=parseInt(c.width)+"px"}}if(c.height!=null&&c.height.toString().indexOf("px")!=-1){c.host[0].style.height=c.height}else{if(c.height!=undefined&&!isNaN(c.height)){c.host[0].style.height=parseInt(c.height)+"px"}}var e=false;if(c.width!=null&&c.width.toString().indexOf("%")!=-1){e=true;c.host.width(c.width)}if(c.height!=null&&c.height.toString().indexOf("%")!=-1){e=true;c.host.height(c.height)}var d=this;if(e){c.refresh(false)}a.jqx.utilities.resize(c.host,function(){d._arrange()})},isOpened:function(){var e=this;var d=a.data(document.body,"openedJQXButton"+e.element.id);if(d!=null&&d==e.popupContent){return true}return false},focus:function(){try{c.host.focus()}catch(d){}},render:function(){c.removeHandlers();var d=this;var e=false;if(!c.touch){c.addHandler(c.host,"mouseenter",function(){if(!d.disabled&&d.enableHover){e=true;d.host.addClass(d.toThemeProperty("jqx-dropdownlist-state-hover"));d.arrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));d.host.addClass(d.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(c.host,"mouseleave",function(){if(!d.disabled&&d.enableHover){d.host.removeClass(d.toThemeProperty("jqx-dropdownlist-state-hover"));d.host.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d.arrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"));e=false}})}if(d.autoOpen){c.addHandler(c.host,"mouseenter",function(){var f=d.isOpened();if(!f&&d.autoOpen){d.open();d.host.focus()}});c.addHandler(a(document),"mousemove."+d.element.id,function(i){var h=d.isOpened();if(h&&d.autoOpen){var m=d.host.coord();var l=m.top;var k=m.left;var j=d.container.coord();var f=j.left;var g=j.top;canClose=true;if(i.pageY>=l&&i.pageY<=l+d.host.height()){if(i.pageX>=k&&i.pageX<k+d.host.width()){canClose=false}}if(i.pageY>=g&&i.pageY<=g+d.container.height()){if(i.pageX>=f&&i.pageX<f+d.container.width()){canClose=false}}if(canClose){d.close()}}})}c.addHandler(c.dropDownButtonWrapper,"mousedown",function(g){if(!d.disabled){var f=d.container.css("visibility")=="visible";if(!d.isanimating){if(f){d.close();return false}else{d.open();if(!d.focusable){if(g.preventDefault){g.preventDefault()}}}}}});if(c.touch){c.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+c.element.id,d.closeOpenedDropDown,{me:this,popup:c.container,id:c.element.id})}c.addHandler(a(document),"mousedown."+c.element.id,d.closeOpenedDropDown,{me:this,popup:c.container,id:c.element.id});c.addHandler(c.host,"keydown",function(g){var f=d.container.css("visibility")=="visible";if(d.host.css("display")=="none"){return true}if(g.keyCode=="13"){if(!d.isanimating){if(f){d.close()}}}if(g.keyCode==115){if(!d.isanimating){if(!d.isOpened()){d.open()}else{if(d.isOpened()){d.close()}}}return false}if(g.altKey){if(d.host.css("display")=="block"){if(g.keyCode==38){if(d.isOpened()){d.close()}}else{if(g.keyCode==40){if(!d.isOpened()){d.open()}}}}}if(g.keyCode=="27"){if(!d.ishiding){d.close();if(d.tempSelectedIndex!=undefined){d.selectIndex(d.tempSelectedIndex)}}}});c.addHandler(c.firstDiv,"focus",function(){d.host.addClass(d.toThemeProperty("jqx-dropdownlist-state-focus"));d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))});c.addHandler(c.firstDiv,"blur",function(){d.host.removeClass(d.toThemeProperty("jqx-dropdownlist-state-focus"));d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"))})},removeHandlers:function(){var d=this;c.removeHandler(c.dropDownButtonWrapper,"mousedown");c.removeHandler(c.host,"keydown");c.removeHandler(c.firstDiv,"focus");c.removeHandler(c.firstDiv,"blur");c.removeHandler(c.host,"mouseenter");c.removeHandler(c.host,"mouseleave");if(c.autoOpen){c.removeHandler(c.host,"mouseenter");c.removeHandler(c.host,"mouseleave")}c.removeHandler(a(document),"mousemove."+d.element.id)},_findPos:function(e){while(e&&(e.type=="hidden"||e.nodeType!=1||a.expr.filters.hidden(e))){e=e.nextSibling}var d=a(e).coord(true);return[d.left,d.top]},testOffset:function(j,h,e){var i=j.outerWidth();var l=j.outerHeight();var k=a(window).width()+a(window).scrollLeft();var g=a(window).height()+a(window).scrollTop();if(h.left+i>k){if(i>c.host.width()){var f=c.host.coord().left;var d=i-c.host.width();h.left=f-d+2}}if(h.left<0){h.left=parseInt(c.host.coord().left)+"px"}h.top-=Math.min(h.top,(h.top+l>g&&g>l)?Math.abs(l+e+22):0);return h},_getBodyOffset:function(){var e=0;var d=0;if(a("body").css("border-top-width")!="0px"){e=parseInt(a("body").css("border-top-width"));if(isNaN(e)){e=0}}if(a("body").css("border-left-width")!="0px"){d=parseInt(a("body").css("border-left-width"));if(isNaN(d)){d=0}}return{left:d,top:e}},open:function(){a.jqx.aria(this,"aria-expanded",true);var l=this;var r=this;if((l.dropDownWidth==null||l.dropDownWidth=="auto")&&l.width!=null&&l.width.indexOf&&l.width.indexOf("%")!=-1){var e=l.host.width();l.container.width(parseInt(e))}r._raiseEvent("2");var d=l.popupContent;var o=a(window).scrollTop();var j=a(window).scrollLeft();var n=parseInt(l._findPos(l.host[0])[1])+parseInt(l.host.outerHeight())-1+"px";var g,i=parseInt(Math.round(l.host.coord(true).left));g=i+"px";var q=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();l.ishiding=false;l.tempSelectedIndex=l.selectedIndex;if((q!=null&&q)){g=a.jqx.mobile.getLeftPos(l.element);n=a.jqx.mobile.getTopPos(l.element)+parseInt(l.host.outerHeight());if(a("body").css("border-top-width")!="0px"){n=parseInt(n)-l._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){g=parseInt(g)-l._getBodyOffset().left+"px"}}d.stop();l.host.addClass(l.toThemeProperty("jqx-dropdownlist-state-selected"));l.host.addClass(l.toThemeProperty("jqx-fill-state-pressed"));l.arrow.addClass(l.toThemeProperty("jqx-icon-arrow-down-selected"));var h=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){h=true}if(h){l.container.css("display","block")}l.container.css("left",g);l.container.css("top",n);var f=true;var s=false;var m=function(){if(l.dropDownHorizontalAlignment=="right"||l.rtl){var u=l.container.width();var t=Math.abs(u-l.host.width());if(u>l.host.width()){l.container.css("left",parseInt(Math.round(i))-t+"px")}else{l.container.css("left",parseInt(Math.round(i))+t+"px")}}};m.call(this);if(l.enableBrowserBoundsDetection){var k=l.testOffset(d,{left:parseInt(l.container.css("left")),top:parseInt(n)},parseInt(l.host.outerHeight()));if(parseInt(l.container.css("top"))!=k.top){s=true;l.container.height(d.outerHeight());d.css("top",23);if(l.interval){clearInterval(l.interval)}l.interval=setInterval(function(){if(d.outerHeight()!=r.container.height()){var t=r.testOffset(d,{left:parseInt(r.container.css("left")),top:parseInt(n)},parseInt(r.host.outerHeight()));r.container.css("top",t.top);r.container.height(d.outerHeight())}},50)}else{d.css("top",0)}l.container.css("top",k.top);if(parseInt(l.container.css("left"))!=k.left){l.container.css("left",k.left)}}if(l.animationType=="none"){l.container.css("visibility","visible");a.data(document.body,"openedJQXButtonParent",r);a.data(document.body,"openedJQXButton"+l.element.id,d);d.css("margin-top",0);d.css("opacity",1);l._raiseEvent("0");m.call(r)}else{l.container.css("visibility","visible");var p=d.outerHeight();r.isanimating=true;if(l.animationType=="fade"){d.css("margin-top",0);d.css("opacity",0);d.animate({opacity:1},l.openDelay,function(){a.data(document.body,"openedJQXButtonParent",r);a.data(document.body,"openedJQXButton"+r.element.id,d);r.ishiding=false;r.isanimating=false;r._raiseEvent("0")});m.call(r)}else{d.css("opacity",1);if(s){d.css("margin-top",p)}else{d.css("margin-top",-p)}m.call(r);d.animate({"margin-top":0},l.openDelay,function(){a.data(document.body,"openedJQXButtonParent",r);a.data(document.body,"openedJQXButton"+r.element.id,d);r.ishiding=false;r.isanimating=false;r._raiseEvent("0")})}}if(!s){l.host.addClass(l.toThemeProperty("jqx-rc-b-expanded"));l.container.addClass(l.toThemeProperty("jqx-rc-t-expanded"))}else{l.host.addClass(l.toThemeProperty("jqx-rc-t-expanded"));l.container.addClass(l.toThemeProperty("jqx-rc-b-expanded"))}if(l.focusable){l.firstDiv.focus();setTimeout(function(){r.firstDiv.focus()},10)}l.container.addClass(l.toThemeProperty("jqx-fill-state-focus"));l.host.addClass(r.toThemeProperty("jqx-dropdownlist-state-focus"));l.host.addClass(r.toThemeProperty("jqx-fill-state-focus"))},close:function(){a.jqx.aria(this,"aria-expanded",false);var i=this;var g=i.popupContent;var f=i.container;var h=this;h._raiseEvent("3");var e=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){e=true}if(!i.isOpened()){return}a.data(document.body,"openedJQXButton"+i.element.id,null);if(i.animationType=="none"){i.container.css("visibility","hidden");if(e){i.container.css("display","none")}}else{if(!h.ishiding){h.isanimating=true;g.stop();var d=g.outerHeight();g.css("margin-top",0);var j=-d;if(parseInt(i.container.coord().top)<parseInt(i.host.coord().top)){j=d}if(i.animationType=="fade"){g.css({opacity:1});g.animate({opacity:0},i.closeDelay,function(){f.css("visibility","hidden");h.isanimating=false;h.ishiding=false;if(e){f.css("display","none")}})}else{g.animate({"margin-top":j},i.closeDelay,function(){f.css("visibility","hidden");h.isanimating=false;h.ishiding=false;if(e){f.css("display","none")}})}}}i.ishiding=true;i.host.removeClass(i.toThemeProperty("jqx-dropdownlist-state-selected"));i.host.removeClass(i.toThemeProperty("jqx-fill-state-pressed"));i.arrow.removeClass(i.toThemeProperty("jqx-icon-arrow-down-selected"));i.host.removeClass(i.toThemeProperty("jqx-rc-b-expanded"));i.container.removeClass(i.toThemeProperty("jqx-rc-t-expanded"));i.host.removeClass(i.toThemeProperty("jqx-rc-t-expanded"));i.container.removeClass(i.toThemeProperty("jqx-rc-b-expanded"));i.container.removeClass(i.toThemeProperty("jqx-fill-state-focus"));i.host.removeClass(i.toThemeProperty("jqx-dropdownlist-state-focus"));i.host.removeClass(i.toThemeProperty("jqx-fill-state-focus"));i._raiseEvent("1")},closeOpenedDropDown:function(g){var e=g.data.me;var d=a(g.target);if(a(g.target).ischildof(g.data.me.host)){return true}if(a(g.target).ischildof(g.data.me.popupContent)){return true}var h=e;var f=false;a.each(d.parents(),function(){if(this.className!="undefined"){if(this.className.indexOf&&this.className.indexOf("dropDownButton")!=-1){f=true;return false}}});if(!f){e.close()}return true},refresh:function(){c._arrange()},_arrange:function(){var i=this;var h=parseInt(i.host.width());var d=parseInt(i.host.height());var g=i.arrowSize;var f=i.arrowSize;var j=3;var e=h-f-2*j;if(e>0){i.dropDownButtonContent[0].style.width=e+"px"}i.dropDownButtonContent[0].style.height=parseInt(d)+"px";i.dropDownButtonContent[0].style.left="0px";i.dropDownButtonContent[0].style.top="0px";i.dropDownButtonArrow[0].style.width=parseInt(f)+"px";i.dropDownButtonArrow[0].style.height=parseInt(d)+"px";if(i.rtl){i.dropDownButtonArrow.css("float","left");i.dropDownButtonContent.css("float","right");i.dropDownButtonContent.css("left",-j)}if(i.dropDownWidth!=null){if(i.dropDownWidth.toString().indexOf("%")>=0){var h=(parseInt(i.dropDownWidth)*i.host.width())/100;i.container.width(h)}else{i.container.width(i.dropDownWidth)}}if(i.dropDownHeight!=null){i.container.height(i.dropDownHeight)}},destroy:function(){var d=this;d.removeHandler(d.dropDownButtonWrapper,"selectstart");d.removeHandler(d.dropDownButtonWrapper,"mousedown");d.removeHandler(d.host,"keydown");d.host.removeClass();d.removeHandler(a(document),"mousedown."+d.element.id,self.closeOpenedDropDown);d.host.remove();d.container.remove()},_raiseEvent:function(h,e){if(e==undefined){e={owner:null}}if(h==2&&!c.contentInitialized){if(c.initContent){c.initContent();c.contentInitialized=true}}var f=c.events[h];args=e;args.owner=this;var g=new a.Event(f);g.owner=this;if(h==2||h==3||h==4){g.args=e}var d=c.host.trigger(g);return d},resize:function(e,d){c.width=e;c.height=d;c._setSize();c._arrange()},propertyChangedHandler:function(d,e,g,f){if(c.isInitialized==undefined||c.isInitialized==false){return}if(e=="rtl"){if(f){d.dropDownButtonArrow.css("float","left");d.dropDownButtonContent.css("float","right")}else{d.dropDownButtonArrow.css("float","right");d.dropDownButtonContent.css("float","left")}}if(e=="autoOpen"){d.render()}if(e=="theme"&&f!=null){a.jqx.utilities.setTheme(g,f,d.host)}if(e=="width"||e=="height"){d._setSize();d._arrange()}}};a.extend(true,this,b)}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxdropdownlist.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxdropdownlist.js
new file mode 100644 (file)
index 0000000..ac705da
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxDropDownList","",{});a.extend(a.jqx._jqxDropDownList.prototype,{defineInstance:function(){var b={disabled:false,width:null,height:null,items:new Array(),selectedIndex:-1,source:null,scrollBarSize:15,arrowSize:19,enableHover:true,enableSelection:true,visualItems:new Array(),groups:new Array(),equalItemsWidth:true,itemHeight:-1,visibleItems:new Array(),emptyGroupText:"Group",checkboxes:false,openDelay:250,closeDelay:300,animationType:"default",autoOpen:false,dropDownWidth:"auto",dropDownHeight:"200px",autoDropDownHeight:false,keyboardSelection:true,enableBrowserBoundsDetection:false,dropDownHorizontalAlignment:"left",displayMember:"",valueMember:"",groupMember:"",searchMember:"",searchMode:"startswithignorecase",incrementalSearch:true,incrementalSearchDelay:700,renderer:null,placeHolder:"Please Choose:",promptText:"Please Choose:",emptyString:"",rtl:false,selectionRenderer:null,listBox:null,popupZIndex:9999999999999,renderMode:"default",touchMode:"auto",_checkForHiddenParent:true,autoBind:true,focusable:true,filterable:false,filterHeight:27,filterPlaceHolder:"Looking for",filterDelay:100,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["open","close","select","unselect","change","checkChange","bindingComplete"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var q=this;if(!q.width){q.width=200}if(!q.height){q.height=25}var o=q.element.nodeName.toLowerCase();if(o=="select"||o=="ul"||o=="ol"){q.field=q.element;if(q.field.className){q._className=q.field.className}var k={title:q.field.title};if(q.field.id.length){k.id=q.field.id.replace(/[^\w]/g,"_")+"_jqxDropDownList"}else{k.id=a.jqx.utilities.createId()+"_jqxDropDownList"}var c=a("<div></div>",k);if(!q.width){q.width=a(q.field).width()}if(!q.height){q.height=a(q.field).outerHeight()}a(q.field).hide().after(c);var i=q.host.data();q.host=c;q.host.data(i);q.element=c[0];q.element.id=q.field.id;q.field.id=k.id;if(q._className){q.host.addClass(q._className);a(q.field).removeClass(q._className)}if(q.field.tabIndex){var f=q.field.tabIndex;q.field.tabIndex=-1;q.element.tabIndex=f}var r=a.jqx.parseSourceTag(q.field);q.source=r.items;if(q.selectedIndex==-1){q.selectedIndex=r.index}}q.element.innerHTML="";q.isanimating=false;q.id=q.element.id||a.jqx.utilities.createId();q.host.attr("role","combobox");a.jqx.aria(q,"aria-autocomplete","both");a.jqx.aria(q,"aria-readonly",false);var g="<div style='background-color: transparent; -webkit-appearance: none; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; border: 0px; position: relative;'><div id='dropdownlistWrapper' style='overflow: hidden; outline: none; background-color: transparent; border: none; float: left; width:100%; height: 100%; position: relative;'><div id='dropdownlistContent' unselectable='on' style='outline: none; background-color: transparent; border: none; float: left; position: relative;'></div><div id='dropdownlistArrow' unselectable='on' style='background-color: transparent; border: none; float: right; position: relative;'><div unselectable='on'></div></div></div></div>";if(a.jqx._jqxListBox==null||a.jqx._jqxListBox==undefined){throw new Error("jqxDropDownList: Missing reference to jqxlistbox.js.")}if(q.host.attr("tabindex")){q.host.attr("tabindex",q.host.attr("tabindex"));q.host.removeAttr("tabindex")}else{q.host.attr("tabindex",0)}var l=q;q.touch=a.jqx.mobile.isTouchDevice();q.comboStructure=g;q.element.innerHTML=g;q.dropdownlistWrapper=a(q.element.firstChild.firstChild);q.dropdownlistArrow=a(q.dropdownlistWrapper[0].firstChild.nextSibling);q.arrow=a(q.dropdownlistArrow[0].firstChild);q.dropdownlistContent=a(q.dropdownlistWrapper[0].firstChild);q.dropdownlistContent.addClass(q.toThemeProperty("jqx-dropdownlist-content jqx-disableselect"));if(q.rtl){q.dropdownlistContent.addClass(q.toThemeProperty("jqx-rtl jqx-dropdownlist-content-rtl"))}q.addHandler(q.dropdownlistWrapper,"selectstart",function(){return false});q.dropdownlistWrapper[0].id="dropdownlistWrapper"+q.element.id;q.dropdownlistArrow[0].id="dropdownlistArrow"+q.element.id;q.dropdownlistContent[0].id="dropdownlistContent"+q.element.id;q._addInput();if(q.promptText!="Please Choose:"){q.placeHolder=q.promptText}var n=q.toThemeProperty("jqx-widget")+" "+q.toThemeProperty("jqx-dropdownlist-state-normal")+" "+q.toThemeProperty("jqx-rc-all")+" "+q.toThemeProperty("jqx-fill-state-normal");q.element.className+=" "+n;q._firstDiv=a(q.element.firstChild);try{var p="listBox"+q.id;var h=a(a.find("#"+p));if(h.length>0){h.remove()}a.jqx.aria(q,"aria-owns",p);a.jqx.aria(q,"aria-haspopup",true);var b=a("<div style='overflow: hidden; background-color: transparent; border: none; position: absolute;' id='listBox"+q.id+"'><div id='innerListBox"+q.id+"'></div></div>");b.hide();b.appendTo(document.body);q.container=b;q.listBoxContainer=a(a.find("#innerListBox"+q.id));var d=q.width;if(q.dropDownWidth!="auto"){d=q.dropDownWidth}if(d==null){d=q.host.width();if(d==0){d=q.dropDownWidth}}if(q.dropDownHeight==null){q.dropDownHeight=200}var l=q;q.container.width(parseInt(d)+25);q.container.height(parseInt(q.dropDownHeight)+25);q.addHandler(q.listBoxContainer,"bindingComplete",function(e){if(!q.listBox){q.listBox=a.data(q.listBoxContainer[0],"jqxListBox").instance}q._raiseEvent("6")});q.listBoxContainer.jqxListBox({filterHeight:q.filterHeight,filterPlaceHolder:q.filterPlaceHolder,filterDelay:q.filterDelay,filterable:q.filterable,allowDrop:false,allowDrag:false,autoBind:q.autoBind,_checkForHiddenParent:false,focusable:q.focusable,touchMode:q.touchMode,checkboxes:q.checkboxes,rtl:q.rtl,_renderOnDemand:true,emptyString:q.emptyString,itemHeight:q.itemHeight,width:d,searchMode:q.searchMode,incrementalSearch:q.incrementalSearch,incrementalSearchDelay:q.incrementalSearchDelay,groupMember:q.groupMember,searchMember:q.searchMember,displayMember:q.displayMember,valueMember:q.valueMember,height:q.dropDownHeight,autoHeight:q.autoDropDownHeight,scrollBarSize:q.scrollBarSize,selectedIndex:q.selectedIndex,source:q.source,theme:q.theme,rendered:function(){if(q.selectedIndex!=q.listBoxContainer.jqxListBox("selectedIndex")){q.listBox=a.data(q.listBoxContainer[0],"jqxListBox").instance;q.listBoxContainer.jqxListBox({selectedIndex:q.selectedIndex});q.renderSelection("mouse")}else{q.renderSelection("mouse")}},renderer:q.renderer});q.listBoxContainer.css({position:"absolute",zIndex:q.popupZIndex,top:0,left:0});q.listBox=a.data(q.listBoxContainer[0],"jqxListBox").instance;q.listBox.enableSelection=q.enableSelection;q.listBox.enableHover=q.enableHover;q.listBox.equalItemsWidth=q.equalItemsWidth;q.listBox.selectIndex(q.selectedIndex);q.listBox._arrange();q.listBoxContainer.addClass(q.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){q.listBoxContainer.addClass(q.toThemeProperty("jqx-noshadow"))}q.addHandler(q.listBoxContainer,"unselect",function(e){q._raiseEvent("3",{index:e.args.index,type:e.args.type,item:e.args.item})});q.addHandler(q.listBoxContainer,"change",function(e){if(e.args){if(e.args.type!="keyboard"){q._raiseEvent("4",{index:e.args.index,type:e.args.type,item:e.args.item})}else{if(e.args.type=="keyboard"){if(!q.isOpened()){q._raiseEvent("4",{index:q.selectedIndex,type:"keyboard",item:q.getItem(q.selectedIndex)})}}}}});if(q.animationType=="none"){q.container.css("display","none")}else{q.container.hide()}}catch(j){if(console){console.log(j)}}var q=q;q.propertyChangeMap.disabled=function(e,t,s,u){if(u){e.host.addClass(q.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.addClass(q.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.addClass(q.toThemeProperty("jqx-dropdownlist-content-disabled"))}else{e.host.removeClass(q.toThemeProperty("jqx-dropdownlist-state-disabled"));e.host.removeClass(q.toThemeProperty("jqx-fill-state-disabled"));e.dropdownlistContent.removeClass(q.toThemeProperty("jqx-dropdownlist-content-disabled"))}a.jqx.aria(e,"aria-disabled",e.disabled)};if(q.disabled){q.host.addClass(q.toThemeProperty("jqx-dropdownlist-state-disabled"));q.host.addClass(q.toThemeProperty("jqx-fill-state-disabled"));q.dropdownlistContent.addClass(q.toThemeProperty("jqx-dropdownlist-content-disabled"))}q.arrow.addClass(q.toThemeProperty("jqx-icon-arrow-down"));q.arrow.addClass(q.toThemeProperty("jqx-icon"));if(q.renderMode==="simple"){q.arrow.remove();q.host.removeClass(q.toThemeProperty("jqx-fill-state-normal"));q.host.removeClass(q.toThemeProperty("jqx-rc-all"))}q._updateHandlers();q._setSize();q._arrange();if(q.listBox){q.renderSelection()}if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(q.host.parents(".jqx-window").length>0){var m=q.host.parents(".jqx-window").css("z-index");b.css("z-index",m+10);q.listBoxContainer.css("z-index",m+10)}}},resize:function(c,b){this.width=c;this.height=b;this._setSize();this._arrange()},val:function(c){if(!this.dropdownlistContent){return""}var d=function(f){for(var e in f){if(f.hasOwnProperty(e)){return false}}if(typeof c=="number"){return false}if(typeof c=="date"){return false}if(typeof c=="boolean"){return false}if(typeof c=="string"){return false}return true};if(this.input&&(d(c)||arguments.length==0)){return this.input.val()}var b=this.getItemByValue(c);if(b!=null){this.selectItem(b)}if(this.input){return this.input.val()}},focus:function(){try{var d=this;var c=function(){d.host.focus();if(d._firstDiv){d._firstDiv.focus()}};c();setTimeout(function(){c()},10)}catch(b){}},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}},getItems:function(){if(!this.listBox){return new Array()}return this.listBox.items},getVisibleItems:function(){return this.listBox.getVisibleItems()},_setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true;this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true;this.host.height(this.height)}var c=this;var d=function(){c._arrange();if(c.dropDownWidth=="auto"){var f=c.host.width();c.listBoxContainer.jqxListBox({width:f});c.container.width(parseInt(f)+25)}};if(e){var b=this.host.width();if(this.dropDownWidth!="auto"){b=this.dropDownWidth}this.listBoxContainer.jqxListBox({width:b});this.container.width(parseInt(b)+25)}a.jqx.utilities.resize(this.host,function(){d()},false,this._checkForHiddenParent)},isOpened:function(){var c=this;var b=a.data(document.body,"openedJQXListBox"+this.id);if(b!=null&&b==c.listBoxContainer){return true}return false},_updateHandlers:function(){var c=this;var d=false;this.removeHandlers();if(!this.touch){this.addHandler(this.host,"mouseenter",function(){if(!c.disabled&&c.enableHover&&c.renderMode!=="simple"){d=true;c.host.addClass(c.toThemeProperty("jqx-dropdownlist-state-hover"));c.arrow.addClass(c.toThemeProperty("jqx-icon-arrow-down-hover"));c.host.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.host,"mouseleave",function(){if(!c.disabled&&c.enableHover&&c.renderMode!=="simple"){c.host.removeClass(c.toThemeProperty("jqx-dropdownlist-state-hover"));c.host.removeClass(c.toThemeProperty("jqx-fill-state-hover"));c.arrow.removeClass(c.toThemeProperty("jqx-icon-arrow-down-hover"));d=false}})}if(this.host.parents()){this.addHandler(this.host.parents(),"scroll.dropdownlist"+this.element.id,function(e){var f=c.isOpened();if(f){c.close()}})}var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.addHandler(this.dropdownlistWrapper,b,function(f){if(!c.disabled){var e=c.container.css("display")=="block";if(!c.isanimating){if(e){c.hideListBox();return false}else{c.showListBox();if(!c.focusable){if(f.preventDefault){f.preventDefault()}}else{c.focus()}}}}});if(c.autoOpen){this.addHandler(this.host,"mouseenter",function(){var e=c.isOpened();if(!e&&c.autoOpen){c.open();c.host.focus()}});a(document).on("mousemove."+c.id,function(h){var g=c.isOpened();if(g&&c.autoOpen){var l=c.host.coord();var k=l.top;var j=l.left;var i=c.container.coord();var e=i.left;var f=i.top;canClose=true;if(h.pageY>=k&&h.pageY<=k+c.host.height()){if(h.pageX>=j&&h.pageX<j+c.host.width()){canClose=false}}if(h.pageY>=f&&h.pageY<=f+c.container.height()){if(h.pageX>=e&&h.pageX<e+c.container.width()){canClose=false}}if(canClose){c.close()}}})}if(this.touch){this.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id,c.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id})}else{this.addHandler(a(document),"mousedown."+this.id,c.closeOpenedListBox,{me:this,listbox:this.listBox,id:this.id})}this.addHandler(this.host,"keydown",function(f){var e=c.container.css("display")=="block";if(c.host.css("display")=="none"){return true}if(f.keyCode=="13"||f.keyCode=="9"){if(!c.isanimating){if(e){c.renderSelection();if(f.keyCode=="13"&&c.focusable){c._firstDiv.focus()}c.hideListBox();if(!c.keyboardSelection){c._raiseEvent("2",{index:c.selectedIndex,type:"keyboard",item:c.getItem(c.selectedIndex)})}if(f.keyCode=="13"){c._raiseEvent("4",{index:c.selectedIndex,type:"keyboard",item:c.getItem(c.selectedIndex)})}}if(e&&f.keyCode!="9"){return false}return true}}if(f.keyCode==115){if(!c.isanimating){if(!c.isOpened()){c.showListBox()}else{if(c.isOpened()){c.hideListBox()}}}return false}if(f.altKey){if(c.host.css("display")=="block"){if(f.keyCode==38){if(c.isOpened()){c.hideListBox();return true}}else{if(f.keyCode==40){if(!c.isOpened()){c.showListBox();return true}}}}}if(f.keyCode=="27"){if(!c.ishiding){if(c.isOpened()){c.hideListBox();if(c.tempSelectedIndex!=undefined){c.selectIndex(c.tempSelectedIndex)}}return true}}if(!c.disabled){c._kbnavigated=c.listBox._handleKeyDown(f);return c._kbnavigated}});this.addHandler(this.listBoxContainer,"checkChange",function(e){c.renderSelection();c._updateInputSelection();c._raiseEvent(5,{label:e.args.label,value:e.args.value,checked:e.args.checked,item:e.args.item})});this.addHandler(this.listBoxContainer,"select",function(e){if(!c.disabled){if(!e.args){return}if(e.args.type=="keyboard"&&!c.isOpened()){c.renderSelection()}if(e.args.type!="keyboard"||c.keyboardSelection){c.renderSelection();c._raiseEvent("2",{index:e.args.index,type:e.args.type,item:e.args.item,originalEvent:e.args.originalEvent});if(e.args.type=="mouse"){if(!c.checkboxes){c.hideListBox();if(c._firstDiv&&c.focusable){c._firstDiv.focus()}}}}}});if(this.listBox){if(this.listBox.content){this.addHandler(this.listBox.content,"click",function(e){if(!c.disabled){if(c.listBox.itemswrapper&&e.target===c.listBox.itemswrapper[0]){return true}c.renderSelection("mouse");if(!c.touch){if(!c.ishiding){if(!c.checkboxes){c.hideListBox();if(c._firstDiv&&c.focusable){c._firstDiv.focus()}}}}if(!c.keyboardSelection){if(c._kbnavigated===false){if(c.tempSelectedIndex!=c.selectedIndex){c._raiseEvent("4",{index:c.selectedIndex,type:"mouse",item:c.getItem(c.selectedIndex)})}c._kbnavigated=true}if(c._oldSelectedInd==undefined){c._oldSelectedIndx=c.selectedIndex}if(c.selectedIndex!=c._oldSelectedIndx){c._raiseEvent("2",{index:c.selectedIndex,type:"keyboard",item:c.getItem(c.selectedIndex)});c._oldSelectedIndx=c.selectedIndex}}}})}}this.addHandler(this.host,"focus",function(e){if(c.renderMode!=="simple"){c.host.addClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.addClass(c.toThemeProperty("jqx-fill-state-focus"))}});this.addHandler(this.host,"blur",function(){if(c.renderMode!=="simple"){c.host.removeClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.removeClass(c.toThemeProperty("jqx-fill-state-focus"))}});this.addHandler(this._firstDiv,"focus",function(e){if(c.renderMode!=="simple"){c.host.addClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.addClass(c.toThemeProperty("jqx-fill-state-focus"))}});this.addHandler(this._firstDiv,"blur",function(){if(c.renderMode!=="simple"){c.host.removeClass(c.toThemeProperty("jqx-dropdownlist-state-focus"));c.host.removeClass(c.toThemeProperty("jqx-fill-state-focus"))}})},removeHandlers:function(){var c=this;var b="mousedown";if(this.touch){b=a.jqx.mobile.getTouchEventName("touchstart")}this.removeHandler(this.dropdownlistWrapper,b);if(this.listBox){if(this.listBox.content){this.removeHandler(this.listBox.content,"click")}}this.removeHandler(this.host,"loadContent");this.removeHandler(this.listBoxContainer,"checkChange");this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur");this.removeHandler(this._firstDiv,"focus");this.removeHandler(this._firstDiv,"blur");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(a(document),"mousemove."+c.id)},getItem:function(b){var c=this.listBox.getItem(b);return c},getItemByValue:function(c){var b=this.listBox.getItemByValue(c);return b},selectItem:function(b){if(this.listBox!=undefined){this.listBox.selectItem(b);this.selectedIndex=this.listBox.selectedIndex;this.renderSelection("mouse")}},unselectItem:function(b){if(this.listBox!=undefined){this.listBox.unselectItem(b);this.renderSelection("mouse")}},checkItem:function(b){if(this.listBox!=undefined){this.listBox.checkItem(b)}},uncheckItem:function(b){if(this.listBox!=undefined){this.listBox.uncheckItem(b)}},indeterminateItem:function(b){if(this.listBox!=undefined){this.listBox.indeterminateItem(b)}},renderSelection:function(){if(this.listBox==null){return}if(this.height&&this.height.toString().indexOf("%")!=-1){this._arrange()}var r=this.listBox.visibleItems[this.listBox.selectedIndex];if(this.filterable){if(this.listBox.selectedIndex==-1){for(var e in this.listBox.selectedValues){var l=this.listBox.selectedValues[e];var b=this.listBox.getItemByValue(l);if(b){r=b}}}}var u=this;if(this.checkboxes){var v=this.getCheckedItems();if(v!=null&&v.length>0){r=v[0]}else{r=null}}if(r==null){var j=a('<span unselectable="on" style="color: inherit; border: none; background-color: transparent;"></span>');j.appendTo(a(document.body));j.addClass(this.toThemeProperty("jqx-widget"));j.addClass(this.toThemeProperty("jqx-listitem-state-normal"));j.addClass(this.toThemeProperty("jqx-item"));a.jqx.utilities.html(j,this.placeHolder);var s=this.dropdownlistContent.css("padding-top");var x=this.dropdownlistContent.css("padding-bottom");j.css("padding-top",s);j.css("padding-bottom",x);var q=j.outerHeight();j.remove();j.removeClass();a.jqx.utilities.html(this.dropdownlistContent,j);var h=this.host.height();if(this.height!=null&&this.height!=undefined){if(this.height.toString().indexOf("%")===-1){h=parseInt(this.height)}}var f=parseInt((parseInt(h)-parseInt(q))/2);if(f>0){this.dropdownlistContent.css("margin-top",f+"px");this.dropdownlistContent.css("margin-bottom",f+"px")}if(this.selectionRenderer){a.jqx.utilities.html(this.dropdownlistContent,this.selectionRenderer(j,-1,"",""));this.dropdownlistContent.css("margin-top","0px");this.dropdownlistContent.css("margin-bottom","0px");this._updateInputSelection()}else{this._updateInputSelection()}this.selectedIndex=this.listBox.selectedIndex;if(this.width==="auto"){this._arrange()}if(this.focusable&&this.isOpened()){this.focus()}return}this.selectedIndex=this.listBox.selectedIndex;var j=a(document.createElement("span"));j[0].setAttribute("unselectable","on");try{j[0].style.color="inherit"}catch(t){}j[0].style.borderWidth="0px";j[0].style.backgroundColor="transparent";j.appendTo(a(document.body));j.addClass(this.toThemeProperty("jqx-widget jqx-listitem-state-normal jqx-item"));var p=false;try{if(r.html!=undefined&&r.html!=null&&r.html.toString().length>0){a.jqx.utilities.html(j,r.html)}else{if(r.label!=undefined&&r.label!=null&&r.label.toString().length>0){a.jqx.utilities.html(j,r.label)}else{if(r.label===null||r.label===""){p=true;a.jqx.utilities.html(j,"")}else{if(r.value!=undefined&&r.value!=null&&r.value.toString().length>0){a.jqx.utilities.html(j,r.value)}else{if(r.title!=undefined&&r.title!=null&&r.title.toString().length>0){a.jqx.utilities.html(j,r.title)}else{if(r.label==""||r.label==null){p=true;a.jqx.utilities.html(j,"")}}}}}}}catch(n){var m=n}var s=this.dropdownlistContent[0].style.paddingTop;var x=this.dropdownlistContent[0].style.paddingBottom;if(s===""){s="0px"}if(x===""){x="0px"}j[0].style.paddingTop=s;j[0].style.paddingBottom=x;var q=j.outerHeight();if(q===0){q=16}if((r.label==""||r.label==null)&&p){a.jqx.utilities.html(j,"")}var c=this.width&&this.width.toString().indexOf("%")<=0;j.remove();j.removeClass();if(this.selectionRenderer){a.jqx.utilities.html(this.dropdownlistContent,this.selectionRenderer(j,r.index,r.label,r.value));if(this.focusable&&this.isOpened()){this.focus()}}else{if(this.checkboxes){var g=this.getCheckedItems();var k="";for(var o=0;o<g.length;o++){if(o==g.length-1){k+=g[o].label}else{k+=g[o].label+","}}j.text(k);if(c){j.css("max-width",this.host.width()-30)}j.css("overflow","hidden");j.css("display","block");if(!this.rtl){if(c){j.css("width",this.host.width()-30)}}j.css("text-overflow","ellipsis");j.css("padding-bottom",1+parseInt(x));this.dropdownlistContent.html(j);if(this.focusable&&this.isOpened()){this.focus()}}else{var d=this.host.width()-this.arrowSize-3;if(this.width&&this.width!=="auto"){if(c){if(!this.rtl){j.css("max-width",d+"px")}}j[0].style.overflow="hidden";j[0].style.display="block";j[0].style.paddingTop=(1+parseInt(x))+"px";if(!this.rtl){if(c){j[0].style.width=d+"px"}}j[0].style.textOverflow="ellipsis"}this.dropdownlistContent[0].innerHTML=j[0].innerHTML;if(this.focusable&&this.isOpened()){this.focus()}}}var h=this.host.height();if(this.height!=null&&this.height!=undefined){if(this.height.toString().indexOf("%")===-1){h=parseInt(this.height)}}var f=parseInt((parseInt(h)-parseInt(q))/2);if(f>0){this.dropdownlistContent[0].style.marginTop=f+"px";this.dropdownlistContent[0].style.marginBottom=f+"px"}if(this.selectionRenderer){this.dropdownlistContent[0].style.marginTop="0px";this.dropdownlistContent[0].style.marginBottom="0px"}if(this.dropdownlistContent&&this.input){this._updateInputSelection()}if(this.listBox&&this.listBox._activeElement){a.jqx.aria(this,"aria-activedescendant",this.listBox._activeElement.id)}if(this.width==="auto"){this._arrange()}},_updateInputSelection:function(){if(this.input){var c=new Array();if(this.selectedIndex==-1){this.input.val("")}else{var f=this.getSelectedItem();if(f!=null){this.input.val(f.value);c.push(f.value)}else{this.input.val(this.dropdownlistContent.text())}}if(this.checkboxes){var b=this.getCheckedItems();var g="";if(b!=null){for(var d=0;d<b.length;d++){var e=b[d].value;if(e==undefined){continue}if(d==b.length-1){g+=e}else{g+=e+","}c.push(e)}}this.input.val(g)}}if(this.field&&this.input){if(this.field.nodeName.toLowerCase()=="select"){a.each(this.field,function(h,i){a(this).removeAttr("selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this).attr("selected",true)}})}else{a.each(this.items,function(h,i){a(this.originalItem.originalItem).removeAttr("data-selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this.originalItem.originalItem).attr("data-selected",true)}})}}},setContent:function(b){a.jqx.utilities.html(this.dropdownlistContent,b);this._updateInputSelection()},dataBind:function(){this.listBoxContainer.jqxListBox({source:this.source});this.renderSelection("mouse");if(this.source==null){this.clearSelection()}},clear:function(){this.listBoxContainer.jqxListBox({source:null});this.clearSelection()},clearSelection:function(b){this.selectedIndex=-1;this._updateInputSelection();this.listBox.clearSelection();this.renderSelection();if(!this.selectionRenderer){a.jqx.utilities.html(this.dropdownlistContent,this.placeHolder)}},unselectIndex:function(b,c){if(isNaN(b)){return}this.listBox.unselectIndex(b,c);this.renderSelection()},selectIndex:function(b,d,e,c){this.listBox.selectIndex(b,d,e,c,"api")},getSelectedIndex:function(){return this.selectedIndex},getSelectedItem:function(){return this.listBox.getVisibleItem(this.selectedIndex)},getCheckedItems:function(){return this.listBox.getCheckedItems()},checkIndex:function(b){this.listBox.checkIndex(b)},uncheckIndex:function(b){this.listBox.uncheckIndex(b)},indeterminateIndex:function(b){this.listBox.indeterminateIndex(b)},checkAll:function(){this.listBox.checkAll();this.renderSelection("mouse")},uncheckAll:function(){this.listBox.uncheckAll();this.renderSelection("mouse")},addItem:function(b){return this.listBox.addItem(b)},insertAt:function(c,b){if(c==null){return false}return this.listBox.insertAt(c,b)},removeAt:function(c){var b=this.listBox.removeAt(c);this.renderSelection("mouse");return b},removeItem:function(c){var b=this.listBox.removeItem(c);this.renderSelection("mouse");return b},updateItem:function(c,d){var b=this.listBox.updateItem(c,d);this.renderSelection("mouse");return b},updateAt:function(d,c){var b=this.listBox.updateAt(d,c);this.renderSelection("mouse");return b},ensureVisible:function(b){return this.listBox.ensureVisible(b)},disableAt:function(b){return this.listBox.disableAt(b)},enableAt:function(b){return this.listBox.enableAt(b)},disableItem:function(b){return this.listBox.disableItem(b)},enableItem:function(b){return this.listBox.enableItem(b)},_findPos:function(c){while(c&&(c.type=="hidden"||c.nodeType!=1||a.expr.filters.hidden(c))){c=c.nextSibling}var b=a(c).coord(true);return[b.left,b.top]},testOffset:function(h,f,c){var g=h.outerWidth();var j=h.outerHeight();var i=a(window).width()+a(window).scrollLeft();var e=a(window).height()+a(window).scrollTop();if(f.left+g>i){if(g>this.host.width()){var d=this.host.coord().left;var b=g-this.host.width();f.left=d-b+2}}if(f.left<0){f.left=parseInt(this.host.coord().left)+"px"}f.top-=Math.min(f.top,(f.top+j>e&&e>j)?Math.abs(j+c+22):0);return f},open:function(){this.showListBox()},close:function(){this.hideListBox()},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},showListBox:function(){a.jqx.aria(this,"aria-expanded",true);if(this.listBox._renderOnDemand){this.listBoxContainer.jqxListBox({_renderOnDemand:false})}if(this.dropDownWidth=="auto"&&this.width!=null&&this.width.indexOf&&(this.width.indexOf("%")!=-1||this.width.indexOf("auto")!=-1)){if(this.listBox.host.width()!=this.host.width()){var c=this.host.width();this.listBoxContainer.jqxListBox({width:c});this.container.width(parseInt(c)+25)}}var p=this;var d=this.listBoxContainer;var j=this.listBox;var m=a(window).scrollTop();var h=a(window).scrollLeft();var k=parseInt(this._findPos(this.host[0])[1])+parseInt(this.host.outerHeight())-1+"px";var f,g=parseInt(Math.round(this.host.coord(true).left));f=g+"px";var o=a.jqx.mobile.isSafariMobileBrowser()||a.jqx.mobile.isWindowsPhone();if(this.listBox==null){return}this.ishiding=false;if(!this.keyboardSelection){this.listBox.selectIndex(this.selectedIndex);this.listBox.ensureVisible(this.selectedIndex)}this.tempSelectedIndex=this.selectedIndex;if(this.autoDropDownHeight){this.container.height(this.listBoxContainer.height()+25)}if((o!=null&&o)){f=a.jqx.mobile.getLeftPos(this.element);k=a.jqx.mobile.getTopPos(this.element)+parseInt(this.host.outerHeight());if(a("body").css("border-top-width")!="0px"){k=parseInt(k)-this._getBodyOffset().top+"px"}if(a("body").css("border-left-width")!="0px"){f=parseInt(f)-this._getBodyOffset().left+"px"}}d.stop();if(this.renderMode!=="simple"){this.host.addClass(this.toThemeProperty("jqx-dropdownlist-state-selected"));this.host.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down-selected"))}this.container.css("left",f);this.container.css("top",k);j._arrange();var e=true;var q=false;if(this.dropDownHorizontalAlignment=="right"||this.rtl){var l=this.container.outerWidth();var b=Math.abs(l-this.host.width());if(l>this.host.width()){this.container.css("left",25+parseInt(Math.round(g))-b+"px")}else{this.container.css("left",25+parseInt(Math.round(g))+b+"px")}}if(this.enableBrowserBoundsDetection){var i=this.testOffset(d,{left:parseInt(this.container.css("left")),top:parseInt(k)},parseInt(this.host.outerHeight()));if(parseInt(this.container.css("top"))!=i.top){q=true;d.css("top",23);d.addClass(this.toThemeProperty("jqx-popup-up"))}else{d.css("top",0)}this.container.css("top",i.top);if(parseInt(this.container.css("left"))!=i.left){this.container.css("left",i.left)}}if(this.animationType=="none"){this.container.css("display","block");a.data(document.body,"openedJQXListBoxParent",p);a.data(document.body,"openedJQXListBox"+this.id,d);d.css("margin-top",0);d.css("opacity",1);j._renderItems();p._raiseEvent("0",j)}else{this.container.css("display","block");p.isanimating=true;if(this.animationType=="fade"){d.css("margin-top",0);d.css("opacity",0);d.animate({opacity:1},this.openDelay,function(){a.data(document.body,"openedJQXListBoxParent",p);a.data(document.body,"openedJQXListBox"+p.id,d);p.ishiding=false;p.isanimating=false;j._renderItems();p._raiseEvent("0",j)})}else{d.css("opacity",1);var n=d.outerHeight();if(q){d.css("margin-top",n)}else{d.css("margin-top",-n)}d.animate({"margin-top":0},this.openDelay,function(){a.data(document.body,"openedJQXListBoxParent",p);a.data(document.body,"openedJQXListBox"+p.id,d);p.ishiding=false;p.isanimating=false;j._renderItems();p._raiseEvent("0",j)})}}if(!q){this.host.addClass(this.toThemeProperty("jqx-rc-b-expanded"));d.addClass(this.toThemeProperty("jqx-rc-t-expanded"))}else{this.host.addClass(this.toThemeProperty("jqx-rc-t-expanded"));d.addClass(this.toThemeProperty("jqx-rc-b-expanded"))}if(this.renderMode!=="simple"){d.addClass(this.toThemeProperty("jqx-fill-state-focus"));this.host.addClass(this.toThemeProperty("jqx-dropdownlist-state-focus"));this.host.addClass(this.toThemeProperty("jqx-fill-state-focus"))}},hideListBox:function(){a.jqx.aria(this,"aria-expanded",false);var f=this.listBoxContainer;var g=this.listBox;var c=this.container;var d=this;a.data(document.body,"openedJQXListBox"+this.id,null);if(this.animationType=="none"){this.container.css("display","none")}else{if(!d.ishiding){f.stop();var b=f.outerHeight();f.css("margin-top",0);d.isanimating=true;var e=-b;if(parseInt(this.container.coord().top)<parseInt(this.host.coord().top)){e=b}if(this.animationType=="fade"){f.css({opacity:1});f.animate({opacity:0},this.closeDelay,function(){c.css("display","none");d.isanimating=false;d.ishiding=false})}else{f.animate({"margin-top":e},this.closeDelay,function(){c.css("display","none");d.isanimating=false;d.ishiding=false})}}}this.ishiding=true;this.host.removeClass(this.toThemeProperty("jqx-dropdownlist-state-selected"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this.arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this.host.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));this.host.removeClass(this.toThemeProperty("jqx-rc-t-expanded"));f.removeClass(this.toThemeProperty("jqx-rc-b-expanded"));f.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this.host.removeClass(this.toThemeProperty("jqx-dropdownlist-state-focus"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-focus"));this._raiseEvent("1",g)},closeOpenedListBox:function(e){var d=e.data.me;var b=a(e.target);var c=e.data.listbox;if(c==null){return true}if(a(e.target).ischildof(e.data.me.host)){return true}if(!d.isOpened()){return true}if(a(e.target).ischildof(d.listBoxContainer)){return true}var f=d;var g=false;a.each(b.parents(),function(){if(this.className!="undefined"){if(this.className.indexOf){if(this.className.indexOf("jqx-listbox")!=-1){g=true;return false}if(this.className.indexOf("jqx-dropdownlist")!=-1){if(d.element.id==this.id){g=true}return false}}}});if(c!=null&&!g&&d.isOpened()){d.hideListBox()}return true},clearFilter:function(){this.listBox.clearFilter()},loadFromSelect:function(b){this.listBox.loadFromSelect(b)},refresh:function(b){if(b!==true){this._setSize();this._arrange();if(this.listBox){this.renderSelection()}}},_arrange:function(){var h=this;var d=parseInt(h.host.width());var j=parseInt(h.host.height());var f=h.arrowSize;var g=h.arrowSize;var i=3;var b=d-g-2*i;if(b>0&&h.width!=="auto"){h.dropdownlistContent[0].style.width=b+"px"}else{if(b<=0){h.dropdownlistContent[0].style.width="0px"}}if(h.width==="auto"){h.dropdownlistContent.css("width","auto");d=h.dropdownlistContent.width()+g+2*i;h.host.width(d)}h.dropdownlistContent[0].style.height=j+"px";h.dropdownlistContent[0].style.left="0px";h.dropdownlistContent[0].style.top="0px";h.dropdownlistArrow[0].style.width=g+"px";if(h.width&&h.width.toString().indexOf("%")>=0){var e=(g*100)/d;var c=(b*100)/d;h.dropdownlistArrow[0].style.width=e+"%";h.dropdownlistContent[0].style.width=c+"%"}h.dropdownlistArrow[0].style.height=j+"px";if(h.rtl){h.dropdownlistArrow.css("float","left");h.dropdownlistContent.css("float","right")}},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBoxContainer,"unselect");this.removeHandler(this.listBoxContainer,"change");this.removeHandler(this.dropdownlistWrapper,"selectstart");this.removeHandler(this.dropdownlistWrapper,"mousedown");this.removeHandler(this.host,"keydown");this.removeHandler(this.listBoxContainer,"select");this.removeHandler(this.listBox.content,"click");this.removeHandler(this.listBoxContainer,"bindingComplete");if(this.host.parents()){this.removeHandler(this.host.parents(),"scroll.dropdownlist"+this.element.id)}this.removeHandlers();this.listBoxContainer.jqxListBox("destroy");this.listBoxContainer.remove();this.host.removeClass();this.removeHandler(a(document),"mousedown."+this.id,this.closeOpenedListBox);if(this.touch){this.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+"."+this.id)}this.dropdownlistArrow.remove();delete this.dropdownlistArrow;delete this.dropdownlistWrapper;delete this.listBoxContainer;delete this.input;delete this.arrow;delete this.dropdownlistContent;delete this.listBox;delete this._firstDiv;this.container.remove();delete this.container;var b=a.data(this.element,"jqxDropDownList");if(b){delete b.instance}this.host.removeData();this.host.remove();delete this.comboStructure;delete this.host;delete this.element},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);e.owner=this;if(f==2||f==3||f==4||f==5){e.args=c}var b=this.host.trigger(e);return b},propertyChangedHandler:function(b,c,f,e){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="filterable"){b.listBoxContainer.jqxListBox({filterable:e})}if(c=="filterHeight"){b.listBoxContainer.jqxListBox({filterHeight:e})}if(c=="filterPlaceHolder"){b.listBoxContainer.jqxListBox({filterPlaceHolder:e})}if(c=="filterDelay"){b.listBoxContainer.jqxListBox({filterDelay:e})}if(c=="enableSelection"){b.listBoxContainer.jqxListBox({enableSelection:e})}if(c=="enableHover"){b.listBoxContainer.jqxListBox({enableHover:e})}if(c=="autoOpen"){b._updateHandlers()}if(c=="emptyString"){b.listBox.emptyString=b.emptyString}if(c=="itemHeight"){b.listBoxContainer.jqxListBox({itemHeight:e})}if(c=="renderer"){b.listBoxContainer.jqxListBox({renderer:e})}if(c=="rtl"){if(e){b.dropdownlistArrow.css("float","left");b.dropdownlistContent.css("float","right")}else{b.dropdownlistArrow.css("float","right");b.dropdownlistContent.css("float","left")}b.listBoxContainer.jqxListBox({rtl:b.rtl})}if(c=="source"){b.listBoxContainer.jqxListBox({source:b.source});b.listBox.selectedIndex=-1;b.listBox.selectIndex(this.selectedIndex);b.renderSelection();if(e==null){b.clear()}}if(c=="displayMember"||c=="valueMember"){b.listBoxContainer.jqxListBox({displayMember:b.displayMember,valueMember:b.valueMember});b.renderSelection()}if(c=="placeHolder"){b.renderSelection()}if(c=="theme"&&e!=null){b.listBoxContainer.jqxListBox({theme:e});b.listBoxContainer.addClass(b.toThemeProperty("jqx-popup"));a.jqx.utilities.setTheme(f,e,b.host)}if(c=="autoDropDownHeight"){b.listBoxContainer.jqxListBox({autoHeight:b.autoDropDownHeight});if(b.autoDropDownHeight){b.container.height(b.listBoxContainer.height()+25)}else{b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}b.listBox._arrange();b.listBox._updatescrollbars()}if(c=="searchMode"){b.listBoxContainer.jqxListBox({searchMode:b.searchMode})}if(c=="incrementalSearch"){b.listBoxContainer.jqxListBox({incrementalSearch:b.incrementalSearch})}if(c=="incrementalSearchDelay"){b.listBoxContainer.jqxListBox({incrementalSearchDelay:b.incrementalSearchDelay})}if(c=="dropDownHeight"){if(!b.autoDropDownHeight){b.listBoxContainer.jqxListBox({height:b.dropDownHeight});b.container.height(parseInt(b.dropDownHeight)+25)}}if(c=="dropDownWidth"||c=="scrollBarSize"){var d=b.width;if(b.dropDownWidth!="auto"){d=b.dropDownWidth}b.listBoxContainer.jqxListBox({width:d,scrollBarSize:b.scrollBarSize});b.container.width(parseInt(d)+25)}if(c=="width"||c=="height"){if(e!=f){this.refresh();if(c=="width"){if(b.dropDownWidth=="auto"){var d=b.host.width();b.listBoxContainer.jqxListBox({width:d});b.container.width(parseInt(d)+25)}}}}if(c=="checkboxes"){b.listBoxContainer.jqxListBox({checkboxes:b.checkboxes})}if(c=="selectedIndex"){if(b.listBox!=null){b.listBox.selectIndex(parseInt(e));b.renderSelection()}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxeditor.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxeditor.js
new file mode 100644 (file)
index 0000000..8516981
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(b){b.jqx.jqxWidget("jqxEditor","",{});b.extend(b.jqx._jqxEditor.prototype,{defineInstance:function(){var d={width:null,height:null,disabled:false,pasteMode:"html",editable:true,lineBreak:"default",toolbarPosition:"top",commands:{bold:{tooltip:"Bold",command:"bold",type:"toggleButton"},italic:{tooltip:"Italic",command:"italic",type:"toggleButton"},underline:{tooltip:"Underline",command:"underline",type:"toggleButton"},format:{placeHolder:"Format Block",tooltip:"Format Block",command:"formatblock",value:[{value:"p",label:"Paragraph"},{value:"h1",label:"Header 1"},{value:"h2",label:"Header 2"},{value:"h3",label:"Header 3"},{value:"h4",label:"Header 4"}],type:"list",width:120,dropDownWidth:190,height:25},font:{placeHolder:"Font",tooltip:"Font Name",command:"fontname",value:[{label:"Arial",value:"Arial, Helvetica, sans-serif"},{label:"Comic Sans MS",value:'"Comic Sans MS", cursive, sans-serif'},{label:"Courier New",value:'"Courier New", Courier, monospace'},{label:"Georgia",value:"Georgia,serif"},{label:"Impact",value:"Impact,Charcoal,sans-serif"},{label:"Lucida Console",value:"'Lucida Console',Monaco,monospace"},{label:"Tahoma",value:"Tahoma,Geneva,sans-serif"},{label:"Times New Roman",value:"'Times New Roman',Times,serif"},{label:"Trebuchet MS",value:'"Trebuchet MS",Helvetica,sans-serif'},{label:"Verdana",value:"Verdana,Geneva,sans-serif"}],type:"list",width:160,height:25,dropDownWidth:160},size:{placeHolder:"Size",tooltip:"Font Size",command:"fontsize",value:[{label:"1 (8pt)",value:"xx-small"},{label:"2 (10pt)",value:"x-small"},{label:"3 (12pt)",value:"small"},{label:"4 (14pt)",value:"medium"},{label:"5 (18pt)",value:"large"},{label:"6 (24pt)",value:"x-large"},{label:"7 (36pt)",value:"xx-large"}],type:"list",width:45,height:25,dropDownWidth:160},color:{tooltip:"Text Color",command:"forecolor",value:"#000",type:"colorPicker"},background:{tooltip:"Fill Color",command:"backcolor",value:"#fff",type:"colorPicker"},left:{tooltip:"Align Left",command:"justifyleft",type:"toggleButton"},center:{tooltip:"Align Center",command:"justifycenter",type:"toggleButton"},right:{tooltip:"Align Right",command:"justifyright",type:"toggleButton"},outdent:{tooltip:"Indent Less",command:"outdent",type:"button"},indent:{tooltip:"Indent More",command:"indent",type:"button"},ul:{tooltip:"Insert unordered list",command:"insertunorderedlist",type:"toggleButton"},ol:{tooltip:"Insert ordered list",command:"insertorderedlist",type:"toggleButton"},image:{tooltip:"Insert image",command:"insertimage",type:"button"},link:{tooltip:"Insert link",command:"createlink",type:"toggleButton"},html:{tooltip:"View source",command:"viewsource",type:"toggleButton"},clean:{tooltip:"Remove Formatting",command:"removeformat",type:"button"}},createCommand:null,defaultLocalization:{bold:"Bold",italic:"Italic",underline:"Underline",format:"Format Block",font:"Font Name",size:"Font Size",color:"Text Color",background:"Fill Color",left:"Align Left",center:"Align Center",right:"Align Right",outdent:"Indent Less",indent:"Indent More",ul:"Insert unordered list",ol:"Insert ordered list",image:"Insert image",link:"Insert link",html:"View source",clean:"Remove Formatting",Remove:"Remove",Ok:"Ok",Cancel:"Cancel",Change:"Change","Go to link":"Go to link","Open in a new window/tab":"Open in a new window/tab",Align:"Align",VSpace:"VSpace",HSpace:"HSpace",Width:"Width",Height:"Height",Title:"Title",URL:"URL","Insert Image":"Insert Image","Insert Link":"Insert Link","Alt Text":"Alt Text","not set":"&ltnot set&gt",Left:"Left",Right:"Right",Paragraph:"Paragraph",Header:"Header",Arial:"Arial","Comic Sans MS":"Comic Sans MS","Courier New":"Courier New",Georgia:"Georgia",Impact:"Impact","Lucida Console":"Lucida Console",Tahoma:"Tahoma","Times New Roman":"Times New Roman","Trebuchet MS":"Trebuchet MS",Verdana:"Verdana"},localization:null,tools:"bold italic underline | format font size | color background | left center right | outdent indent | ul ol | image | link | clean | html",readOnly:false,stylesheets:new Array(),rtl:false,colorPickerTemplate:'<div class="jqx-editor-color-picker"><div role="grid"><table class="jqx-editor-color-picker-table" cellspacing="0" cellpadding="0"><tbody><tr><td aria-label="RGB (0, 0, 0)"><div title="RGB (0, 0, 0)" style="background-color: rgb(0, 0, 0);"></div></td><td aria-label="RGB (68, 68, 68)"><div title="RGB (68, 68, 68)" style="background-color: rgb(68, 68, 68);"></div></td><td aria-label="RGB (102, 102, 102)"><div title="RGB (102, 102, 102)" style="background-color: rgb(102, 102, 102);"></div></td><td aria-label="RGB (153, 153, 153)"><div title="RGB (153, 153, 153)" style="background-color: rgb(153, 153, 153);"></div></td><td aria-label="RGB (204, 204, 204)"><div title="RGB (204, 204, 204)" style="background-color: rgb(204, 204, 204);"></div></td><td aria-label="RGB (238, 238, 238)"><div title="RGB (238, 238, 238)" style="background-color: rgb(238, 238, 238);"></div></td><td aria-label="RGB (243, 243, 243)"><div title="RGB (243, 243, 243)" style="background-color: rgb(243, 243, 243);"></div></td><td aria-label="RGB (255, 255, 255)"><div title="RGB (255, 255, 255)" style="background-color: rgb(255, 255, 255);"></div></td></tr></tbody></table></div><div role="grid"><table class="jqx-editor-color-picker-table" cellspacing="0" cellpadding="0"><tbody><tr><td aria-label="RGB (255, 0, 0)"><div title="RGB (255, 0, 0)" style="background-color: rgb(255, 0, 0);"></div></td><td aria-label="RGB (255, 153, 0)"><div title="RGB (255, 153, 0)" style="background-color: rgb(255, 153, 0);"></div></td><td aria-label="RGB (255, 255, 0)"><div title="RGB (255, 255, 0)" style="background-color: rgb(255, 255, 0);"></div></td><td aria-label="RGB (0, 255, 0)"><div title="RGB (0, 255, 0)" style="background-color: rgb(0, 255, 0);"></div></td><td aria-label="RGB (0, 255, 255)"><div title="RGB (0, 255, 255)" style="background-color: rgb(0, 255, 255);"></div></td><td aria-label="RGB (0, 0, 255)"><div title="RGB (0, 0, 255)" style="background-color: rgb(0, 0, 255);"></div></td><td aria-label="RGB (153, 0, 255)"><div title="RGB (153, 0, 255)" style="background-color: rgb(153, 0, 255);"></div></td><td aria-label="RGB (255, 0, 255)"><div title="RGB (255, 0, 255)" style="background-color: rgb(255, 0, 255);"></div></td></tr></tbody></table></div><div role="grid"><table class="jqx-editor-color-picker-table" cellspacing="0" cellpadding="0"><tbody><tr><td aria-label="RGB (244, 204, 204)"><div title="RGB (244, 204, 204)" style="background-color: rgb(244, 204, 204);"></div></td><td aria-label="RGB (252, 229, 205)"><div title="RGB (252, 229, 205)" style="background-color: rgb(252, 229, 205);"></div></td><td aria-label="RGB (255, 242, 204)"><div title="RGB (255, 242, 204)" style="background-color: rgb(255, 242, 204);"></div></td><td aria-label="RGB (217, 234, 211)"><div title="RGB (217, 234, 211)" style="background-color: rgb(217, 234, 211);"></div></td><td aria-label="RGB (208, 224, 227)"><div title="RGB (208, 224, 227)" style="background-color: rgb(208, 224, 227);"></div></td><td aria-label="RGB (207, 226, 243)"><div title="RGB (207, 226, 243)" style="background-color: rgb(207, 226, 243);"></div></td><td aria-label="RGB (217, 210, 233)"><div title="RGB (217, 210, 233)" style="background-color: rgb(217, 210, 233);"></div></td><td aria-label="RGB (234, 209, 220)"><div title="RGB (234, 209, 220)" style="background-color: rgb(234, 209, 220);"></div></td></tr><tr><td id="T-Kw-Jn88" aria-label="RGB (234, 153, 153)"><div title="RGB (234, 153, 153)" style="background-color: rgb(234, 153, 153);"></div></td><td aria-label="RGB (249, 203, 156)"><div title="RGB (249, 203, 156)" style="background-color: rgb(249, 203, 156);"></div></td><td aria-label="RGB (255, 229, 153)"><div title="RGB (255, 229, 153)" style="background-color: rgb(255, 229, 153);"></div></td><td aria-label="RGB (182, 215, 168)"><div title="RGB (182, 215, 168)" style="background-color: rgb(182, 215, 168);"></div></td><td aria-label="RGB (162, 196, 201)"><div title="RGB (162, 196, 201)" style="background-color: rgb(162, 196, 201);"></div></td><td aria-label="RGB (159, 197, 232)"><div title="RGB (159, 197, 232)" style="background-color: rgb(159, 197, 232);"></div></td><td aria-label="RGB (180, 167, 214)"><div title="RGB (180, 167, 214)" style="background-color: rgb(180, 167, 214);"></div></td><td aria-label="RGB (213, 166, 189)"><div title="RGB (213, 166, 189)" style="background-color: rgb(213, 166, 189);"></div></td></tr><tr><td aria-label="RGB (224, 102, 102)"><div title="RGB (224, 102, 102)" style="background-color: rgb(224, 102, 102);"></div></td><td aria-label="RGB (246, 178, 107)"><div title="RGB (246, 178, 107)" style="background-color: rgb(246, 178, 107);"></div></td><td aria-label="RGB (255, 217, 102)"><div title="RGB (255, 217, 102)" style="background-color: rgb(255, 217, 102);"></div></td><td aria-label="RGB (147, 196, 125)"><div title="RGB (147, 196, 125)" style="background-color: rgb(147, 196, 125);"></div></td><td aria-label="RGB (118, 165, 175)"><div title="RGB (118, 165, 175)" style="background-color: rgb(118, 165, 175);"></div></td><td aria-label="RGB (111, 168, 220)"><div title="RGB (111, 168, 220)" style="background-color: rgb(111, 168, 220);"></div></td><td aria-label="RGB (142, 124, 195)"><div title="RGB (142, 124, 195)" style="background-color: rgb(142, 124, 195);"></div></td><td aria-label="RGB (194, 123, 160)"><div title="RGB (194, 123, 160)" style="background-color: rgb(194, 123, 160);"></div></td></tr><tr><td id="T-Kw-Jn104" aria-label="RGB (204, 0, 0)"><div title="RGB (204, 0, 0)" style="background-color: rgb(204, 0, 0);"></div></td><td aria-label="RGB (230, 145, 56)"><div title="RGB (230, 145, 56)" style="background-color: rgb(230, 145, 56);"></div></td><td aria-label="RGB (241, 194, 50)"><div title="RGB (241, 194, 50)" style="background-color: rgb(241, 194, 50);"></div></td><td aria-label="RGB (106, 168, 79)"><div title="RGB (106, 168, 79)" style="background-color: rgb(106, 168, 79);"></div></td><td aria-label="RGB (69, 129, 142)"><div title="RGB (69, 129, 142)" style="background-color: rgb(69, 129, 142);"></div></td><td aria-label="RGB (61, 133, 198)"><div title="RGB (61, 133, 198)" style="background-color: rgb(61, 133, 198);"></div></td><td aria-label="RGB (103, 78, 167)"><div title="RGB (103, 78, 167)" style="background-color: rgb(103, 78, 167);"></div></td><td aria-label="RGB (166, 77, 121)"><div title="RGB (166, 77, 121)" style="background-color: rgb(166, 77, 121);"></div></td></tr><tr><td aria-label="RGB (153, 0, 0)"><div title="RGB (153, 0, 0)" style="background-color: rgb(153, 0, 0);"></div></td><td aria-label="RGB (180, 95, 6)"><div title="RGB (180, 95, 6)" style="background-color: rgb(180, 95, 6);"></div></td><td aria-label="RGB (191, 144, 0)"><div title="RGB (191, 144, 0)" style="background-color: rgb(191, 144, 0);"></div></td><td aria-label="RGB (56, 118, 29)"><div title="RGB (56, 118, 29)" style="background-color: rgb(56, 118, 29);"></div></td><td aria-label="RGB (19, 79, 92)"><div title="RGB (19, 79, 92)" style="background-color: rgb(19, 79, 92);"></div></td><td aria-label="RGB (11, 83, 148)"><div title="RGB (11, 83, 148)" style="background-color: rgb(11, 83, 148);"></div></td><td aria-label="RGB (53, 28, 117)"><div title="RGB (53, 28, 117)" style="background-color: rgb(53, 28, 117);"></div></td><td aria-label="RGB (116, 27, 71)"><div title="RGB (116, 27, 71)" style="background-color: rgb(116, 27, 71);"></div></td></tr><tr><td aria-label="RGB (102, 0, 0)"><div title="RGB (102, 0, 0)" style="background-color: rgb(102, 0, 0);"></div></td><td aria-label="RGB (120, 63, 4)"><div title="RGB (120, 63, 4)" style="background-color: rgb(120, 63, 4);"></div></td><td aria-label="RGB (127, 96, 0)"><div title="RGB (127, 96, 0)" style="background-color: rgb(127, 96, 0);"></div></td><td aria-label="RGB (39, 78, 19)"><div title="RGB (39, 78, 19)" style="background-color: rgb(39, 78, 19);"></div></td><td aria-label="RGB (12, 52, 61)"><div title="RGB (12, 52, 61)" style="background-color: rgb(12, 52, 61);"></div></td><td aria-label="RGB (7, 55, 99)"><div title="RGB (7, 55, 99)" style="background-color: rgb(7, 55, 99);"></div></td><td aria-label="RGB (32, 18, 77)"><div title="RGB (32, 18, 77)" style="background-color: rgb(32, 18, 77);"></div></td><td aria-label="RGB (76, 17, 48)"><div title="RGB (76, 17, 48)" style="background-color: rgb(76, 17, 48);"></div></td></tr></tbody></table></div></div>',touchMode:false,keyPressed:null,events:["change"]};b.extend(true,this,d);this.localization=this.defaultLocalization;return d},createInstance:function(f){var j=this;j.textArea=j.host;var d=j.host.attr("contenteditable");j.host.addClass(j.toThemeProperty("jqx-widget"));if(d==true||d=="true"){j.inline=true;j.widget=j.host;j.editorDocument=document;j.selection=new a(j.editorDocument);var i=b("<div class='jqx-editor-toolbar-container' unselectable='on' aria-label='Formatting options' role='toolbar'><div class='jqx-editor-toolbar'></div>");i.insertBefore(j.host);j.toolbarContainer=i;j.toolbar=i.find(".jqx-editor-toolbar");j.editor=j.host;j.contentEditableElement=j.element}else{var g=b("<div class='jqx-editor'><div class='jqx-editor-container'><div class='jqx-editor-toolbar-container' aria-label='Formatting options' role='toolbar'><div class='jqx-editor-toolbar'></div></div><div class='jqx-editor-content'><iframe  src='javascript:\"<html></html>\"' allowtransparency='true' frameborder='0'></iframe></div></div></div>");j.widget=g;j.widget[0].className=j.widget[0].className+" "+j.element.className;try{j.widget[0].style=j.element.style}catch(e){}var h=b.trim(j.host.html())+"&#8203;";if(j.lineBreak=="default"||j.lineBreak=="div"){h="<div>"+h+"</div>"}else{if(j.lineBreak=="p"){h="<p>"+h+"</p>"}}h=h.replace(/&lt;/ig,"<");h=h.replace(/&gt;/ig,">");j.host.css("display","none");j.host.after(g);g.find("iframe").after(j.host);j.container=g.find(".jqx-editor-container");j.toolbarContainer=g.find(".jqx-editor-toolbar-container");j.toolbar=g.find(".jqx-editor-toolbar");j.iframe=g.find("iframe");j.content=g.find(".jqx-editor-content");var k=function(){j.editorDocument=j.iframe[0].contentWindow.document;j.selection=new a(j.editorDocument);var o=0;j.addHandler(j.iframe,"load",function(){o++;if(o>1){j.iframe.off("load");j.content.find("iframe").remove();var q=b("<iframe  src='javascript:\"<html></html>\"' allowtransparency='true' frameborder='0'></iframe>").appendTo(j.content);j.iframe=g.find("iframe");k()}});if(!b.jqx.browser.mozilla){j.editorDocument.designMode="On"}j.editorDocument.open();var m=j.rtl?"direction:rtl;":"";var l=b.jqx.browser.msie?"::selection{color: #fff; background: #328EFD;};::-moz-selection{color: #fff; background: #328eD;};::selection:window-inactive {background: #c7c7c7; color: #000;}::-moz-selection:window-inactive {background: #c7c7c7; color: #000;}html{font-size:13px; height:100%;}body{padding-top:1px;margin-top:-1px; padding-right: 1px; overflow-x: hidden;word-wrap: break-word;-webkit-nbsp-mode: space;-webkit-line-break: after-white-space;":"";j.editorDocument.write("<!DOCTYPE html><html><head><meta charset='utf-8' /><style>html,body{padding:0; margin:0; font-size: 13px; font-family:Verdana,Geneva,sans-serif; background:#fff; min-height:100%; "+m+"}"+l+"}h1{font-size:2em;margin:.67em 0}h2{font-size: 1.5em; margin: .75em 0}h3{font-size: 1.17em; margin: .83em 0}h4{font-size:1em; margin: 1.12em 0 }h5{font-size: .83em; margin: 1.5em 0}h6{font-size: .75em; margin: 1.67em 0}p{margin: 0px;padding:0 .2em}ul,ol{padding-left:2.5em}a{color:#00a}code{font-size:1.23em}.jqx-editor-paste-element {position: absolute; left: -1000px; height: 1px; overflow: hidden; top: -1000px;}.jqx-editor-focus {border: 1px solid #aaa !important;}</style>"+b.map(j.stylesheets,function(q){return"<link rel='stylesheet' href='"+q+"'>"}).join("")+"</head><body autocorrect='off' contenteditable='true'></body></html>");j.contentEditableElement=j.editorDocument.body;if(j.host.is("textarea")){j._textArea=j.element;var n=j.host.data();n.jqxEditor.host=g;n.jqxEditor.element=g[0];j.element=g[0];g[0].id=j._textArea.id;j._textArea.id=j._textArea.id+"TextArea";b(j.element).addClass(j.toThemeProperty("jqx-widget"));j.host=b(j.element);j.host.data(n)}else{var n=j.host.data();n.jqxEditor.host=g;n.jqxEditor.element=g[0];j.element=g[0];j.host=b(j.element);j.host.data(n)}try{j.editorDocument.execCommand("useCSS",false,false);j.editorDocument.execCommand("enableInlineTableEditing",null,false)}catch(p){}try{j.editorDocument.execCommand("styleWithCSS",0,true)}catch(p){}j.editorDocument.close();j.editor=b(j.editorDocument.body);j.editor.html(h).attr("spellcheck",false).attr("autocorrect","off")};k();b.jqx.utilities.resize(j.host,function(){j.widget.css("width",j.width);j.widget.css("height",j.height);j._arrange()})}},focus:function(){var e=this;if(b.jqx.browser.mozilla){if(!e.focused){if(e.iframe){e.iframe.focus()}e.selection.selectNode(e.editor[0].firstChild,true);e.selection.getRange().collapse(true)}}e.editor.focus();var d=e.range!=null?e.range:e.getRange();e.selectRange(d)},print:function(){var d=window.open("","_blank","width=450,height=470,left=400,top=100,menubar=yes,toolbar=no,location=no,scrollbars=yes");d.document.open();d.document.write('<!doctype html><html><head><title>Print</title></head><body onload="print();">'+this.val()+"</body></html>");d.document.close()},refresh:function(d){var m=this;b.each(this.defaultLocalization,function(i,r){if(!m.localization[i]){m.localization[i]=r}});m._removeHandlers();m.toolbar.addClass(m.toThemeProperty("jqx-widget-header"));if(m.content){m.widget.css("width",m.width);m.widget.css("height",m.height);m.widget.addClass(m.toThemeProperty("jqx-editor"));m.widget.addClass(m.toThemeProperty("jqx-widget"));m.widget.addClass(m.toThemeProperty("jqx-rc-all"));m.widget.addClass(m.toThemeProperty("jqx-widget-header"));m.content.addClass(m.toThemeProperty("jqx-widget-content"));m.container.addClass(m.toThemeProperty("jqx-editor-container"))}else{m.toolbarContainer.addClass(m.toThemeProperty("jqx-widget-header"));m.toolbarContainer.addClass(m.toThemeProperty("jqx-editor-toolbar-inline"));m.toolbarContainer.addClass(m.toThemeProperty("jqx-widget"));m.toolbarContainer.addClass(m.toThemeProperty("jqx-rc-all"));m.toolbarContainer.hide();m.toolbarContainer.css("position","absolute");m.editor.addClass(m.toThemeProperty("jqx-editor-inline"));m.toolbarContainer.css("width",m.host.outerWidth()+"px")}var n=m.toolbarContainer.index();if(m.toolbarPosition=="top"&&n!=0||m.toolbarPosition=="bottom"&&n!=1){switch(m.toolbarPosition){case"bottom":m.toolbarContainer.insertAfter(m.content);break;case"top":default:m.toolbarContainer.insertBefore(m.content);break}}var h=m.tools;if(h!==false){var l=h.split(" ");var p=h.split(" | ");var q=function(i,r){b.each(r,function(y,F){var u=m.commands[this];if(!u){if(m.createCommand){u=m.createCommand(this.toString());if(!u){return true}if(!m.commands[this]){m.commands[this]=u}}else{return true}}else{if(m.createCommand){var x=m.createCommand(this.toString());u=b.extend(u,x)}}if(m.localization[this]){u.tooltip=m.localization[this]}switch(u.type){case"list":if(u.widget){u.widget.jqxDropDownList("destroy")}var A=function(R,Q,S){if(u.command=="formatblock"){return"<"+S+' unselectable="on" style="padding: 0px; margin: 0px;">'+Q+"</"+S+">"}else{if(u.command=="fontname"){return'<span unselectable="on" style="font-family: '+S+';">'+Q+"<span>"}else{if(u.command=="fontsize"){return'<span unselectable="on" style="font-size: '+S+';">'+Q+"<span>"}}}};var t=function(){var Q=m.toThemeProperty("jqx-editor-toolbar-icon")+" "+m.toThemeProperty("jqx-editor-toolbar-icon-"+u.command);var R="<div unselectable='on' style='margin-top: 0px; padding:0px;' class='"+Q+"'></div>";return R};var C=u.command=="formatblock"||u.command=="fontname"||u.command=="fontsize";var z=u.value||[];var N=new Array();var J=u.placeHolder||"Please Choose:";if(u.command=="fontname"){b.each(z,function(){var Q=m.localization[this.label];N.push({label:Q,value:this.value})})}else{if(u.command=="formatblock"){J=m.localization.format;b.each(z,function(){if(this.label.indexOf("Header")>=0){var Q=this.label.replace("Header",m.localization.Header)}else{var Q=m.localization[this.label]}N.push({label:Q,value:this.value})})}else{N=z}}var P={enableBrowserBoundsDetection:true,touchMode:m.touchMode,width:u.width||100,height:u.height||25,dropDownWidth:u.dropDownWidth||"auto",autoDropDownHeight:(u.value&&u.value.length)<12?true:false,placeHolder:J,source:N,theme:m.theme,keyboardSelection:false,focusable:false,disabled:m.disabled,rtl:m.rtl,selectionRenderer:u.command=="fontsize"?t:null,renderer:C?A:null};var D="jqx-disableselect "+m.toThemeProperty("jqx-editor-dropdownlist")+" "+m.toThemeProperty("jqx-editor-toolbar-item");var w=b("<div unselectable='on' class='"+D+"'></div>");w.appendTo(i);w.jqxDropDownList(P);if(u.init){u.init(w)}var F=null;var E=null;var K="";m.addHandler(w,"mousedown",function(R){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){var Q=b(".jqx-editor-dropdownlist");b.each(Q,function(S,T){if(T!=w[0]){b(T).jqxDropDownList("close")}})}});m.addHandler(w,"open",function(Q){if(!m.focused){m.focus()}m.updating=true;m.activeElement=w;F=w.val();K=""});m.addHandler(w,"change",function(Q){m.updating=false;m.activeElement=null;E=w.val();K=Q.args.type;if(b.jqx.browser.msie&&b.jqx.browser.version<9){m.focus()}});m.addHandler(w,"close",function(Q){m.updating=false;m.activeElement=null;if(F!=E){if(K=="mouse"||K=="keyboard"){m._refreshTools()}}});m._addCommandHandler(w,"change",u.command,null,u);break;case"colorPicker":if(u.widget){b(u.colorPicker).remove();u.widget.jqxDropDownButton("destroy")}var B=b('<div unselectable="on" style="padding-top: 4px;"></div>').attr("id","picker-"+u.command);var D="jqx-disableselect "+m.toThemeProperty("jqx-editor-dropdownpicker")+" "+m.toThemeProperty("jqx-editor-toolbar-item");var w=b("<div unselectable='on' class='"+D+"'></div>");w.appendTo(i);w.append(B);w.jqxDropDownButton({touchMode:m.touchMode,disabled:m.disabled,enableBrowserBoundsDetection:true,width:u.width||45,height:u.height||25,rtl:m.rtl,focusable:false,theme:m.theme});var I=b('<div unselectable="on" style="z-index: 55;">');var s=m.toThemeProperty("jqx-editor-toolbar-icon")+" "+m.toThemeProperty("jqx-editor-toolbar-icon-"+u.command);var O=b("<div unselectable='on' class='"+s+"'></div>");I.append(O);var L=b('<div unselectable="on" class="jqx-editor-color-bar">').attr("id","bar-"+u.command).css("background-color",u.value);I.append(L);w.jqxDropDownButton("setContent",I);B.append(b(m.colorPickerTemplate));u.colorPicker=B;if(u.init){u.init(w)}B.find("tr").attr("role","row").attr("unselectable","on");B.find("td").attr("role","gridcell").attr("unselectable","on").css("-webkit-user-select","none");B.find("div").attr("unselectable","on");m.addHandler(w,"mousedown",function(R){if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}if(b(".jqx-editor-dropdownpicker").length>0){var Q=b(".jqx-editor-dropdownpicker");b.each(Q,function(S,T){if(T!=w[0]){b(T).jqxDropDownButton("close")}})}});m.addHandler(w,"open",function(){if(!m.focused){m.focus()}m.updating=true;m.activeElement=B});m.addHandler(w,"close",function(Q){m.updating=false;m.activeElement=null;if(F!=E){if(K=="mouse"||K=="keyboard"){m._refreshTools()}}});m.addHandler(B,"keydown",function(Q){var Y=Q.keyCode;var V=b(B).find(".jqx-editor-color-picker-selected-cell");var aa=B.find("tr");var T=aa.length;var S=V.parent().children().length;var U=V.index();var W=-999;var Z=V.parent();b.each(aa,function(ab,ac){if(this==Z[0]){W=ab;return false}});switch(Y){case 27:w.jqxDropDownButton("close");break;case 13:b(V).trigger("mousedown");break;case 38:W--;break;case 40:W++;break;case 39:U++;break;case 37:U--;break}if(W>=0&&W<=T){if(U>=0&&U<=S){var Z=B.find("tr")[W];var X=b(Z).children()[U];var R=b(X).children().css("background-color");u.val(R)}}});var M=b(B).find("td");u.val=function(Q){var R=m._rgbToHex(Q);b.each(M,function(){var S=b(this).children().css("background-color");var T=m._rgbToHex(S);if(T==R){M.removeClass("jqx-editor-color-picker-selected-cell");b(this).addClass("jqx-editor-color-picker-selected-cell");b("#bar-"+u.command).css("background",S);return false}})};u.val(u.value);m._addCommandHandler(M,"mousedown",u.command,null,u);break;case"button":case"toggleButton":default:if(u.widget){if(u.type=="button"){u.widget.jqxButton("destroy")}else{u.widget.jqxToggleButton("destroy")}}var v=u.command;var H=u.action;var s=m.toThemeProperty("jqx-editor-toolbar-icon")+" "+m.toThemeProperty("jqx-editor-toolbar-icon-"+v);var O=b("<div unselectable='on' class='"+s+"'></div>");var w=b("<div unselectable='on'></div>").addClass("jqx-disableselect").addClass(m.toThemeProperty("jqx-editor-toolbar-button"));if(!u.init){w.append(O)}else{if(v){w.append(O)}}w.appendTo(i);if(u.type=="button"){w.jqxButton({disabled:m.disabled,rtl:m.rtl,theme:m.theme})}else{if(u.type=="toggleButton"){w.jqxToggleButton({disabled:m.disabled,rtl:m.rtl,uiToggle:false,theme:m.theme})}}if(u.init){u.init(w)}u.toggled=false;u.toggle=function(){u.toggled=!u.toggled};m.addHandler(w,"mousedown",function(Q){if(Q.preventDefault){Q.preventDefault()}if(Q.stopPropagation){Q.stopPropagation()}return false});if(!b.jqx.mobile.isTouchDevice()){m._addCommandHandler(w,"click",v,H,u)}else{m._addCommandHandler(w,"mousedown",v,H,u)}break}u.widget=w;if(w){try{if(u.tooltip!=""){u.widget.attr("title",u.tooltip);u.widget.attr("data-tooltip",u.tooltip)}if(u.command){u.widget.attr("data-command",u.command)}u.widget.attr("aria-label",u.tooltip)}catch(G){}if(u.type=="button"||u.type=="toggleButton"){if(r.length>2){if(y==0){w.css("border-right-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-l"))}else{if(y==r.length-1){w.css("border-left-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-r"))}}w.removeClass(m.toThemeProperty("jqx-rc-all"))}if(y!=0&&y!=r.length-1&&r.length>2){w.css("border-left-radius","0px");w.css("border-right-radius","0px");w.removeClass(m.toThemeProperty("jqx-rc-all"))}else{if(r.length==2){if(y==0){w.css("border-right-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-l"))}else{w.css("border-left-radius","0px");w.addClass(m.toThemeProperty("jqx-rc-r"))}w.removeClass(m.toThemeProperty("jqx-rc-all"))}else{if(r.length==1){w.css("margin-right","0px")}}}}}})};m.toolbar.css("direction",!this.rtl?"ltr":"rtl");if(p.length==0){q(m.toolbar,l)}else{for(var j=0;j<p.length;j++){var f=p[j];var l=f.split(" ");var o=m.toThemeProperty("jqx-editor-toolbar-group")+" "+m.toThemeProperty("jqx-fill-state-normal");var k=b("<div class='"+o+"'></div>");k.addClass(m.toThemeProperty("jqx-rc-all"));m.toolbar.append(k);q(k,l)}var g=m.toolbar.find(".jqx-editor-toolbar-group");var e=g.length;for(var j=0;j<e;j++){if(b(g[j]).children().length==0){b(g[j]).remove()}}}if(b.jqx.browser.msie&&b.jqx.browser.version<8){b(".jqx-editor-toolbar-group").css("float","left");b(".jqx-editor-toolbar-group").children().css("float","left");b(".jqx-editor-toolbar-group").css("zoom","1");b(".jqx-editor-toolbar-group").children().css("zoom","1")}}m._arrange();m._addHandlers()},_arrange:function(){var d=this;if(d.content){if(d.tools==""||d.tools==false){d.content.height(d.container.outerHeight()-parseInt(d.container.css("padding-top"))-parseInt(d.container.css("padding-bottom"))-6);d.content.css("margin-top","4px");d.toolbar.hide()}else{d.toolbar.show();d.content.css("margin-top","0px");d.content.height(d.container.outerHeight()-d.toolbar.outerHeight()-parseInt(d.container.css("padding-top"))-parseInt(d.container.css("padding-bottom"))-2);if(d.toolbarPosition!="top"){d.content.css("margin-top","4px");d.content.css("margin-bottom","0px")}}if(b.jqx.browser.msie&&b.jqx.browser.version<8){d.content.css("margin-top","4px");d.content.height(d.container.height()-d.toolbar.outerHeight()-2*parseInt(d.container.css("padding-bottom"))-10);d.content.width(d.container.width()-2*parseInt(d.container.css("padding-left"))-2)}if(d.editor.height()<d.content.height()){d.editor.height(d.content.height())}}},propertyChangedHandler:function(d,e,h,g){var f=d;if(f.isInitialized==undefined||f.isInitialized==false){return}if(e=="pasteMode"||e=="lineBreak"||e=="editable"){return}if(e=="disabled"){d._refreshTools()}if(e=="width"||e=="height"||e=="toolbarPosition"){d._arrange();return}if(e=="theme"){b.jqx.utilities.setTheme(h,g,d.host)}d.refresh()},selectRange:function(d){var e=this;if(!d){d=e.getRange()}e.selection.selectRange(d)},getRange:function(){var d=this;return d.selection.getRange()},getSelectedElement:function(){var h,k,d,g;var i=this;try{if(i.editorDocument.getSelection){var l=i.editorDocument.getSelection();h=l.getRangeAt(l.rangeCount-1);d=h.startContainer;g=h.endContainer;k=h.commonAncestorContainer;if(d.nodeName=="#text"){k=k.parentNode}if(d.nodeName=="#text"){d=d.parentNode}if(d.nodeName.toLowerCase()=="body"){d=d.firstChild}if(g.nodeName=="#text"){g=g.parentNode}if(g.nodeName.toLowerCase()=="body"){g=g.lastChild}if(d==g){k=d}return g}else{if(i.editorDocument.selection){h=i.editorDocument.selection.createRange();if(!h.duplicate){return null}k=h.parentElement();var f=h.duplicate();var e=h.duplicate();f.collapse(true);e.moveToElementText(f.parentElement());e.setEndPoint("EndToStart",f);d=f.parentElement();f=h.duplicate();e=h.duplicate();e.collapse(false);f.moveToElementText(e.parentElement());f.setEndPoint("StartToEnd",e);g=e.parentElement();if(d.nodeName.toLowerCase()=="body"){d=d.firstChild}if(g.nodeName.toLowerCase()=="body"){g=g.lastChild}if(d==g){k=d}return g}}}catch(j){return null}return null},_addHandlers:function(){var e=this;e.addHandler(e.toolbar,"mousedown.editor"+e.element.id,function(g){if(g.preventDefault){g.preventDefault()}if(g.stopPropagation){g.stopPropagation()}return false});var f=function(){if(e._textArea){if(!e.updating){e._textArea.value=e.val()}}if(e.changed){e._raiseEvent("change");e.changed=false}e.focused=false;if(e.inline){e.host.removeClass(e.toThemeProperty("jqx-fill-state-focus"));e.host.removeClass(e.toThemeProperty("jqx-editor-inline-focus"));if(e.tools==""||e.tools==null){return}e.toolbarContainer.fadeOut("fast")}};var d=function(){e.focused=true;if(e.inline){e.host.addClass(e.toThemeProperty("jqx-fill-state-focus"));e.host.addClass(e.toThemeProperty("jqx-editor-inline-focus"));e.host.addClass(e.toThemeProperty("jqx-rc-all"));if(e.tools==""||e.tools==null){return}e.toolbarContainer.fadeIn("fast");var g=e.host.coord();if(e.toolbarPosition!="bottom"){e.toolbarContainer.offset({left:g.left,top:g.top-e.toolbarContainer.outerHeight()-5})}else{e.toolbarContainer.offset({left:g.left,top:g.top+5+e.host.height()})}}};if(b.jqx.browser.mozilla){this.addHandler(b(document),"mousedown.editor"+e.element.id,function(g){f()})}e.addHandler(e.editor,"blur.editor"+e.element.id,function(g){f()});e.addHandler(e.editor,"focus.editor"+e.element.id,function(g){d()});e.addHandler(e.editor,"beforedeactivate.editor"+e.element.id,function(g){e.range=e.getRange()});e.addHandler(e.editor,"mousedown.editor"+e.element.id,function(g){if(!g.target.href){if(e.linkPopup){e.linkPopup.remove()}}e.range=e.getRange();if(b.jqx.browser.mozilla){d();g.stopPropagation()}if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}if(e.inline){e.editor.focus()}});if(b.jqx.mobile.isTouchDevice()){e.addHandler(b(e.editorDocument),"selectionchange.editor"+e.element.id,function(){if(e.editorDocument.activeElement!=e.editor[0]){setTimeout(function(){if(e.iframe){e.iframe[0].contentWindow.focus()}},500)}});e.addHandler(b(e.editorDocument),"touchstart.editor"+e.element.id,function(){setTimeout(function(){if(e.iframe){e.iframe[0].contentWindow.focus()}},500)})}e.addHandler(e.editor,"mouseup.editor"+e.element.id,function(g){if(e._documentMode=="source"){return true}e.range=e.getRange();e._refreshTools(null,true)});e.addHandler(e.editor,"keydown.editor"+e.element.id,function(g){if(e.keyPressed){e.keyPressed(g)}if(e._documentMode=="source"){return true}if(b.jqx.browser.mozilla){if(!e.focused){d()}}if(e.disabled){if(g.preventDefault){g.preventDefault()}return false}if(e.updating){if(e.activeElement){var m=b.Event("keydown");b.extend(m,g);e.activeElement.trigger(m)}if(g.preventDefault){g.preventDefault()}return false}var n=g||window.event;var q=n.keyCode;var r=String.fromCharCode(q).toLowerCase();if(!e.editable){var l=[9,33,34,35,36,37,38,39,40,40,45];if(b.inArray(n.keyCode,l)==-1&&!(n.ctrlKey&&r=="c")&&!(n.ctrlKey&&r=="a")){g.preventDefault()}}if(e.selection.getText().length>0||e.linkPopup){var l=[8,9,13,33,34,35,36,37,38,39,40,40,45,46];if(!b.inArray(n.keyCode,l)!=-1||(n.keyCode==65&&n.ctrlKey&&!n.altKey&&!n.shiftKey)){if(e._refreshToolsTimer){clearTimeout(e._refreshToolsTimer)}e._refreshToolsTimer=setTimeout(function(){e._refreshTools(null,true,n.keyCode)},10)}}if(q==13&&e.lineBreak!="default"){var k=e.getSelectedElement();if(k){var o=k.nodeName.toLowerCase();switch(o){case"pre":case"li":case"ul":case"ol":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return true}var p=k;while(p!=null){if(p.nodeName=="#document"){p=e.editorDocument.body;break}if(p.parentNode==e.editorDocument.body||p==e.editorDocument.body){break}p=p.parentNode}}if(p){var j=e.getRange();if(e.editorDocument.body.innerHTML=="<div></div>"&&e.lineBreak!="br"){e.selection.insertContent("&#8203;")}if(e.lineBreak=="div"){if(p==e.editorDocument.body){b(p).append("<div>&#8203;</div><span id='INSERTION_MARKER'>&nbsp;</span>")}else{b("<div>&#8203;</div><span id='INSERTION_MARKER'>&nbsp;</span>").insertAfter(p)}}else{if(e.lineBreak=="p"){if(p==e.editorDocument.body){b(p).append("<p>&#8203;</p><span id='INSERTION_MARKER'>&nbsp;</span>")}else{b("<p>&#8203;</p><span id='INSERTION_MARKER'>&nbsp;</span>").insertAfter(p)}}else{e.execute("insertHTML","<br/>&#8203;<span id='INSERTION_MARKER'>&nbsp;</span>")}}e.selectRange(j);var i=b(e.editorDocument).find("#INSERTION_MARKER");if(e.lineBreak!="br"){e.selection.selectNode(b(i).prev()[0],true)}else{e.selection.selectNode(i[0],true);if(e.getRange().setStartAfter){e.getRange().setStartAfter(i[0])}}i.remove();e.selection.collapse(false);if(p&&p.nodeName&&e.lineBreak=="br"){if(p.nodeName.toLowerCase()!="#text"){e.selection.selectNode(p,true);if(e.getRange().setStartAfter){e.getRange().setStartAfter(p)}e.selection.collapse(false)}}if(e.lineBreak!="br"){j=e.getRange();if(j.select){j.select()}}if(g.preventDefault){g.preventDefault()}return false}}if(n.ctrlKey&&(r=="k"||r=="u"||r=="b"||r=="i")){if(g.preventDefault){g.preventDefault()}var h=null;switch(r){case"k":h="link";break;case"u":h="underline";break;case"b":h="bold";break;case"i":h="italic";break}if(e.commands[h].widget){e.commands[h].widget.trigger("click")}return false}});e.addHandler(e.editor,"paste.editor"+e.element.id,function(l){if(e._documentMode=="source"){return true}if(e.readOnly){return true}e.updating=true;e.readOnly=true;var m=l;var k=function(q,p){if(p){if(!e.paragraphise){q=q.replace(/\n/g,"<br />")}else{q="<p>"+q+"</p>";q=q.replace(/\n/g,"</p><p>");q=q.replace(/<p>\s<\/p>/gi,"")}}else{q=q.replace(/<html[^>]*?>(.*)/gim,"$1");q=q.replace(/<\/html>/gi,"");q=q.replace(/<body[^>]*?>(.*)/gi,"$1");q=q.replace(/<\/body>/gi,"");q=q.replace(/<style[^>]*?>[\s\S]*?<\/style[^>]*>/gi,"");q=q.replace(/<(?:meta|link)[^>]*>\s*/gi,"");q=q.replace(/<\\?\?xml[^>]*>/gi,"");q=q.replace(/<w:[^>]*>[\s\S]*?<\/w:[^>]*>/gi,"");q=q.replace(/<o:p>\s*<\/o:p>/g,"");q=q.replace(/<o:p>[\s\S]*?<\/o:p>/g,"&nbsp;");q=q.replace(/<\/?\w+:[^>]*>/gi,"");q=q.replace(/<\!--[\s\S]*?-->/g,"");q=q.replace(/<\!\[[\s\S]*?\]>/g,"");q=q.replace(/\s*mso-[^:]+:[^;"']+;?/gi,"");q=q.replace(/<(\w[^>]*) style='([^\']*)'([^>]*)/gim,"<$1$3");q=q.replace(/<(\w[^>]*) style="([^\"]*)"([^>]*)/gim,"<$1$3");q=q.replace(/\s*margin: 0cm 0cm 0pt\s*;/gi,"");q=q.replace(/\s*margin: 0cm 0cm 0pt\s*"/gi,'"');q=q.replace(/\s*text-indent: 0cm\s*;/gi,"");q=q.replace(/\s*text-indent: 0cm\s*"/gi,'"');q=q.replace(/\s*text-align: [^\s;]+;?"/gi,'"');q=q.replace(/\s*page-break-before: [^\s;]+;?"/gi,'"');q=q.replace(/\s*font-variant: [^\s;]+;?"/gi,'"');q=q.replace(/\s*tab-stops:[^;"']*;?/gi,"");q=q.replace(/\s*tab-stops:[^"']*/gi,"");q=q.replace(/\s*face="[^"']*"/gi,"");q=q.replace(/\s*face=[^ >]*/gi,"");q=q.replace(/\s*font-family:[^;"']*;?/gi,"");q=q.replace(/\s*font-size:[^;"']*;?/gi,"");q=q.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<(\w+)[^>]*\sstyle="[^"']*display\s?:\s?none[\s \S]*?<\/\1>/ig,"");q=q.replace(/\s*style='\s*'/gi,"");q=q.replace(/\s*style="\s*"/gi,"");q=q.replace(/<span\s*[^>]*>\s*&nbsp;\s*<\/span>/gi,"&nbsp;");q=q.replace(/<span\s*[^>]*><\/span>/gi,"");q=q.replace(/<(\w[^>]*) align=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<span([^>]*)>([\s\S]*?)<\/span>/gi,"$2");q=q.replace(/<font\s*>([\s\S]*?)<\/font>/gi,"$1");q=q.replace(/<(u|i|strike)>&nbsp;<\/\1>/gi,"&nbsp;");q=q.replace(/<h\d>\s*<\/h\d>/gi,"");q=q.replace(/<(\w[^>]*) language=([^ |>]*)([^>]*)/gi,"<$1$3");q=q.replace(/<(\w[^>]*) onmouseover="([^\"']*)"([^>]*)/gi,"<$1$3");q=q.replace(/<(\w[^>]*) onmouseout="([^\"']*)"([^>]*)/gi,"<$1$3");q=q.replace(/<h(\d)([^>]*)>/gi,"<h$1>");q=q.replace(/<(h\d)><font[^>]*>([\s\S]*?)<\/font><\/\1>/gi,"<$1>$2</$1>");q=q.replace(/<(h\d)><em>([\s\S]*?)<\/em><\/\1>/gi,"<$1>$2</$1>");q=q.replace(/<b\b[^>]*>(.*?)<\/b[^>]*>/gi,"<strong>$1</strong>");q=q.replace(/<i\b[^>]*>(.*?)<\/i[^>]*>/gi,"<em>$1</em>");q=q.replace(/<\s+[^>]*>/gi,"");q=q.replace(/<span>([\s\S]*?)<\/span>/gi,"$1");q=q.replace(/<span>([\s\S]*?)<\/span>/gi,"$1");q=q.replace(/<div>([\s\S]*?)<\/div>/gi,"$1");q=q.replace(/<div>([\s\S]*?)<\/div>/gi,"$1");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");if(q.trim){q=q.trim()}if(!e.paragraphise){q.replace(/<p>/gi,"<br />");q.replace(/<\/p>/gi,"")}else{var o=q.substr(0,2);if("<p"!==o){q="<p>"+q+"</p>";q=q.replace(/\n/g,"</p><p>");q=q.replace(/<br[^>]*>/gi,"</p><p>")}}q=q.replace(/<br>/gi,"<br />");q=q.replace(/<br[^>]*><\/p>/gim,"</p>");q=q.replace(/<p>&nbsp;<\/p>/gi,"");q=q.replace(/<p>\s<\/p>/gi,"");q=q.replace(/<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g,"");q=q.replace(/MsoNormal/gi,"");q=q.replace(/<\/?meta[^>]*>/gi,"");q=q.replace(/<\/?xml[^>]*>/gi,"");q=q.replace(/<\?xml[^>]*\/>/gi,"");q=q.replace(/<!--(.*)-->/gi,"");q=q.replace(/<!--(.*)>/gi,"");q=q.replace(/<!(.*)-->/gi,"");q=q.replace(/<w:[^>]*>(.*)<\/w:[^>]*>/gi,"");q=q.replace(/<w:[^>]*\/>/gi,"");q=q.replace(/<\/?w:[^>]*>/gi,"");q=q.replace(/<m:[^>]*\/>/gi,"");q=q.replace(/<m:[^>]>(.*)<\/m:[^>]*>/gi,"");q=q.replace(/<o:[^>]*>(.*)<\/o:[^>]*>/gi,"");q=q.replace(/<o:[^>]*\/>/gi,"");q=q.replace(/<\/?m:[^>]*>/gi,"");q=q.replace(/style=\"([^>]*)\"/gi,"");q=q.replace(/style=\'([^>]*)\'/gi,"");q=q.replace(/class=\"(.*)\"/gi,"");q=q.replace(/class=\'(.*)\'/gi,"");q=q.replace(/<b>/gi,"<strong>");q=q.replace(/<\/b>/gi,"</strong>");q=q.replace(/<p[^>]*>/gi,"<p>");q=q.replace(/<\/p[^>]*>/gi,"</p>");q=q.replace(/<span[^>]*>/gi,"");q=q.replace(/<\/span[^>]*>/gi,"");q=q.replace(/<st1:[^>]*>/gi,"");q=q.replace(/<\/st1:[^>]*>/gi,"");q=q.replace(/<font[^>]*>/gi,"");q=q.replace(/<\/font[^>]*>/gi,"");q=q.replace("  ","");q=q.replace(/<strong><\/strong>/gi,"");q=q.replace(/<p><\/p>/gi,"");q=q.replace(/\/\*(.*)\*\//gi,"");q=q.replace(/<!--/gi,"");q=q.replace(/-->/gi,"");q=q.replace(/<style[^>]*>[^<]*<\/style[^>]*>/gi,"");q=q.trim()}return q};var n=e.getRange();if(e.pasteMode=="text"&&!b.jqx.browser.mozilla){e.selection.insertContent('<textarea cols="50" contenteditable="false" class="jqx-editor-paste-element"></textarea>')}else{e.selection.insertContent('<div class="jqx-editor-paste-element">&nbsp;</div>')}var g=b(window).scrollTop();var h=b(e.editorDocument).find(".jqx-editor-paste-element");h.css("top",g+"px");if(e.editor[0].createTextRange){l.preventDefault();var j=e.editor[0].createTextRange();j.moveToElementText(h[0]);j.execCommand("Paste")}else{var i=e.editorDocument.createRange();i.selectNodeContents(h[0]);e.selectRange(i)}if(e.pasteMode=="text"&&!b.jqx.browser.mozilla){h.select()}e.marker=h;setTimeout(function(){e.selectRange(n);var r=function(A){var y=e.editorDocument.createElement("div");var z=e.editorDocument.createDocumentFragment();y.innerHTML=A;while(y.firstChild){z.appendChild(y.firstChild)}return z};if(e.pasteMode!="text"){var x=r(e.marker.html());if(x.firstChild&&x.firstChild.className==="jqx-editor-paste-element"){var p=[];for(var u=0,s=x.childNodes.length;u<s;u++){p.push(x.childNodes[u].innerHTML)}x=r(p.join("<br />"))}var o=document.createElement("div");o.appendChild(x.cloneNode(true));var w=o.innerHTML}else{var w=e.marker.val();if(e.marker.html()!=""&&e.marker.val().indexOf("\n")==-1){var w=e.marker.html();w=w.replace(/&nbsp;/gm,"");w=w.replace(/\n\n/gm,"\n");w=w.replace(/<br[^>]*>/gi,"\n");w=w.replace(/<li[^>]*>/gi,"\n");w=w.replace(/<p[^>]*>/gi,"\n");e.marker.html(w);var w=e.marker.text()}}var q=k(w,e.pasteMode=="text");var v=e.getRange();e.selection.insertContent(q+"<span id='INSERTION_MARKER'>&nbsp;</span>");e.marker.remove();var t=b(e.editorDocument).find("#INSERTION_MARKER");e.selection.selectNode(t[0],true);if(e.getRange().setStartAfter){e.getRange().setStartAfter(t[0])}t.remove();e.selection.collapse(false);t.removeAttr("id");e._refreshTools();e.changed=true},100);e.updating=false;e.readOnly=false});e.addHandler(e.editor,"keyup.editor"+e.element.id,function(i){if(e._documentMode=="source"){return true}if(e.updating||e.disabled||!e.editable){if(i.preventDefault){i.preventDefault()}if(i.stopPropagation){i.stopPropagation()}return false}e.range=e.getRange();e.changed=true;var h=i||window.event;var g=h.keyCode;var j=[8,9,13,33,34,35,36,37,38,39,40,40,45,46];if(b.inArray(h.keyCode,j)!=-1||(h.keyCode==65&&h.ctrlKey&&!h.altKey&&!h.shiftKey)){e._refreshTools(null,true,h.keyCode)}});e.addHandler(e.editor,"click.editor"+e.element.id,function(g){if(e._documentMode=="source"){return true}if(e.editImage){b(e.editImage).removeClass("jqx-editor-focus");e.editImage=null}if(g.target.tagName.toLowerCase()=="img"){var h=g.target;e.editImage=h;b(e.editImage).addClass("jqx-editor-focus")}});e.addHandler(e.editor,"dblclick.editor"+e.element.id,function(g){if(e._documentMode=="source"){return true}if(g.target.tagName.toLowerCase()=="img"){var h=g.target;if(b("#imageWindow"+this.element.id).length>0){e.editImage=h;e._updateImageWindow()}}})},_updateLinkWindow:function(){var g=this;var i=b("#linkWindow"+this.element.id);i.jqxWindow({position:{center:g.widget}});i.jqxWindow("open");var e=i.find("input");var h=i.find(".jqx-editor-link-checkbox");var f=i.find("button:first");var d=b(i.find("button")[1]);if(g.editLink&&g.editLink.href){e[0].value=g.editLink.href||"";e[1].value=b(g.editLink).text()||g.editLink.href;h.val(b(g.editLink).attr("target")=="_blank");d.show()}else{e[0].value="";e[1].value="";if(!g.selection.isCollapsed()){var j=g.selection.getText();if(j.match(/^(?!:\/\/)([a-zA-Z0-9]+\.)?[a-zA-Z0-9][a-zA-Z0-9-]+\.[a-zA-Z]{2,6}?$/i)){e[0].value=j}else{e[1].value=j}}h.val(false);d.hide()}if(e[0].value.length>0){f.jqxButton({disabled:false})}else{f.jqxButton({disabled:true})}},_updateImageWindow:function(){var g=this;var i=g.editImage;if(!i){i=b("<img>")[0]}var h=b("#imageWindow"+this.element.id);h.jqxWindow({position:{center:g.widget}});h.jqxWindow("open");var e=h.find("input");var d=b(h.find("button")[1]);if(g.editImage){d.show()}else{d.hide()}e[0].value=i.src;if(e[0].value==""){e[0].value=""}e[1].value=i.alt;if(i.style.width!="auto"){e[2].value=i.style.width}else{e[2].value=""}if(i.style.height!="auto"){e[3].value=i.style.height}else{e[3].value=""}if(i.style.marginLeft&&i.style.marginLeft!="0px"){e[4].value=i.style.marginLeft}else{e[4].value=""}if(i.style.marginTop&&i.style.marginTop!="0px"){e[5].value=i.style.marginTop}else{e[5].value=""}var j=h.find(".jqx-editor-align");var f=b(i).css("float");if(f=="left"){j.jqxDropDownList({selectedIndex:1})}else{if(f=="right"){j.jqxDropDownList({selectedIndex:2})}else{j.jqxDropDownList({selectedIndex:0})}}},_removeHandlers:function(){var d=this;if(d.editor){d.removeHandler(d.editor,"blur.editor"+d.element.id);d.removeHandler(d.editor,"focus.editor"+d.element.id);d.removeHandler(d.editor,"click.editor"+d.element.id);d.removeHandler(d.editor,"mousedown.editor"+d.element.id);d.removeHandler(d.editor,"mouseup.editor"+d.element.id);d.removeHandler(d.editor,"keyup.editor"+d.element.id);d.removeHandler(d.editor,"keydown.editor"+d.element.id);d.removeHandler(d.editor,"beforedeactivate.editor"+d.element.id);d.removeHandler(d.editor,"dblclick.editor"+d.element.id)}if(d.toolbar){d.removeHandler(d.toolbar,"mousedown.editor"+d.element.id)}},getParentByTag:function(e,d){var d=d.toLowerCase(),f=e;do{if(d==""||f.nodeName.toLowerCase()==d){return f}}while(f=f.parentNode);return e},isStyleProperty:function(g,f,j,i){var f=f.toLowerCase(),h=g;do{if(h.nodeName.toLowerCase()==f&&h.style[j]==i){return !0}}while(h=h.parentNode);return !1},setStyleProperty:function(e,d){this.style[d]=!1;var f=this.getParentByTag(e,d);f&&f.tagName.toLowerCase()==d&&(this.style[d]=!0);if(d=="del"&&this.getParentByTag(e,"strike")&&this.getParentByTag(e,"strike").tagName.toLowerCase()=="strike"){this.style.del=!0}},updateStyle:function(f){var g=this;var f=g.getSelectedElement()?g.getSelectedElement():f;if(!f||!g.setStyleProperty){return}try{if(window.getComputedStyle){if(f.nodeName.toLowerCase()=="#text"){f=g.editor[0]}var d=window.getComputedStyle(f,null);var i=((d.getPropertyValue("font-weight")==401)?700:d.getPropertyValue("font-weight"));g.style={fontStyle:d.getPropertyValue("font-style"),fontSize:d.getPropertyValue("font-size"),textDecoration:d.getPropertyValue("text-decoration"),fontWeight:i,fontFamily:d.getPropertyValue("font-family"),textAlign:d.getPropertyValue("text-align"),color:g._rgbToHex(d.color),backColor:g._rgbToHex(d.backgroundColor)};g.style.fontStyle=d.getPropertyValue("font-style");g.style.vAlign=d.getPropertyValue("vertical-align");g.style.del=g.isStyleProperty(f,"span","textDecoration","line-through");g.style.u=g.isStyleProperty(f,"span","textDecoration","underline");var h=function(l){var k="transparent";var e="rgba(0, 0, 0, 0)";while(l&&(window.getComputedStyle(l).backgroundColor==k||window.getComputedStyle(l).backgroundColor==e)){l=l.parentNode}return l?window.getComputedStyle(l).backgroundColor:k};if(!g.style.backColor){g.style.backColor=g._rgbToHex(h(f))}}else{var d=f.currentStyle;g.style={fontStyle:d.fontStyle,fontSize:d.fontSize,textDecoration:d.textDecoration,fontWeight:d.fontWeight,fontFamily:d.fontFamily,textAlign:d.textAlign,color:g._rgbToHex(d.color),backColor:g._rgbToHex(d.backgroundColor)}}g.setStyleProperty(f,"h1");g.setStyleProperty(f,"h2");g.setStyleProperty(f,"h3");g.setStyleProperty(f,"h4");g.setStyleProperty(f,"h5");g.setStyleProperty(f,"h6");g.setStyleProperty(f,"del");g.setStyleProperty(f,"sub");g.setStyleProperty(f,"sup");g.setStyleProperty(f,"u");if(f.nodeName.toLowerCase()=="a"){if(g.style.textDecoration=="underline"){g.style.u=true}}if(g.style.h1||g.style.h2||g.style.h3||g.style.h4||g.style.h5||g.style.h6){g.style.heading=true}}catch(j){return null}},_refreshTools:function(e,f,n){var k=this;if(k.updating){return}var e=k.getSelectedElement()?k.getSelectedElement():e;if(!e||!k.setStyleProperty){return}k.updateStyle(e);var o=k.readOnly;k.readOnly=true;if(k.tools!==false){var j=k.tools.split(" ");var l=k.tools.split(" | ");var m=function(i){b.each(i,function(q,r){var p=k.commands[this];if(!p){return true}switch(p.type){case"list":p.widget.jqxDropDownList("clearSelection");p.widget.jqxDropDownList({disabled:k.disabled});break;case"colorPicker":p.val(p.value);p.widget.jqxDropDownButton({disabled:k.disabled});break;case"toggleButton":p.widget.jqxToggleButton("unCheck");p.widget.jqxToggleButton({disabled:k.disabled});break;case"button":default:p.widget.jqxButton({disabled:k.disabled});break}})};if(l.length==0){m(j)}else{for(var h=0;h<l.length;h++){var d=l[h];var j=d.split(" ");m(j)}}if(k.style){var g=function(i){b.each(i,function(x,E){var t=k.commands[this];if(!t){return true}if(t.refresh){t.refresh(t.widget,k.style);return true}switch(t.type){case"list":if(t.command=="fontname"){var B=-1;var D=999;for(var H=0;H<t.value.length;H++){var E=t.value[H].label.toLowerCase();var w=k.style.fontFamily.toLowerCase().indexOf(E);if(w>=0){if(w<D){B=H}D=Math.min(D,w)}}t.widget.jqxDropDownList("selectIndex",B)}else{if(t.command=="formatblock"){var E=null;if(k.style.h1){E="h1"}else{if(k.style.h2){E="h2"}else{if(k.style.h3){E="h3"}else{if(k.style.h4){E="h4"}else{if(k.style.h5){E="h5"}else{if(k.style.h6){E="h6"}}}}}}t.widget.jqxDropDownList("selectItem",E)}else{if(t.command=="fontsize"){var A="xx-small,x-small,small,medium,large,x-large,xx-large".split(",");var C=-1;try{var C=e.getAttribute("size")-1;if(C==-1){C=k.editorDocument.queryCommandValue(t.command)-1}}catch(I){}var s=A[C];t.widget.val(s)}}}break;case"colorPicker":var r=function(J){if(typeof J!="number"){return J}return"rgb("+(J&255)+", "+((J&65280)>>8)+", "+((J&16711680)>>16)+")"};var F=r(k.editorDocument.queryCommandValue(t.command));if(t.command=="backcolor"){if(k.style.backColor==null){F="#FFFFFF"}}var z=k._rgbToHex(F);if(z){t.val(z)}else{if(t.command=="forecolor"){t.val(k.style.color)}else{if(t.command=="backcolor"){t.val(k.style.backColor)}}}break;case"toggleButton":if(t.command=="viewsource"){return}if(!t.command){return}var q=false;var p=k.editorDocument.queryCommandState(t.command)&&k.editorDocument.queryCommandEnabled(t.command);if(t.command=="createlink"&&e.nodeName.toLowerCase()=="a"){var y=true;if(b(e).text().indexOf(k.selection.getText())==-1&&k.selection.getText()!=""){y=false}if(y){if(k.linkPopup){k.linkPopup.remove()}p=true;k.linkPopup=b("<div class='jqx-editor-link-popup' contentEditable='false' style='overflow: hidden; white-space: nowrap; padding: 5px; height: 17px; font-size: 12px; color: #222222; background: #F5F5F5; position: absolute; z-index: 9999;'>"+k.localization["Go to link"]+": <a target='_blank' style='color:#222222;' href='"+e.href+"'>"+e.href+"</a> - <a style='color:#222222;' href='#change'>"+k.localization.Change+"</a> - <a style='color:#222222;' href='#remove'>"+k.localization.Remove+"</a></div>").appendTo(k.editor);var u=b(e).coord();var v=u.left;if(u.left+k.linkPopup.width()>k.editor.width()){v=k.editor.width()-k.linkPopup.width()-15}k.linkPopup.offset({top:b(e).height()+u.top+5,left:v});k.addHandler(k.linkPopup,"mousedown",function(K){if(K.target&&K.target.href){var J=b(K.target).index();switch(J){case 1:k.editor.focus();k.selection.selectNode(e,true);k.commands.link.widget.trigger("click");break;case 2:try{k.editor.focus();k.selection.selectNode(e);k.execute("unlink");k.commands.underline.toggled=false;k.selection.collapse(false);k._refreshTools()}catch(L){}break;default:window.open(K.target.href,"_blank");break}}if(K.preventDefault){K.preventDefault()}if(K.stopPropagation){K.stopPropagation()}return false})}}if(t.command=="bold"){if(k.style.fontWeight&&(k.style.fontWeight>=600||k.style.fontWeight=="bold")){q=true}if(k.selection.isCollapsed()){t.toggled=p}else{t.toggled=p||q}p=t.toggled}else{if(t.command=="italic"){if(k.style.fontStyle&&k.style.fontStyle=="italic"){q=true}if(!f){p=t.toggled}else{t.toggled=p}}else{if(t.command=="underline"){if(k.style.u){q=true}if(!f){p=t.toggled}else{t.toggled=p}}else{if(t.command=="justifyleft"){if(k.style.textAlign=="left"){q=true}}else{if(t.command=="justifyright"){if(k.style.textAlign=="right"){q=true}}else{if(t.command=="justifycenter"){if(k.style.textAlign=="center"){q=true}}else{if(t.command=="justifyfull"){if(k.style.textAlign=="justify"){q=true}}else{b.each(k.style,function(J,K){if(t.command==J.toLowerCase()){q=true}})}}}}}}}var G=p;if(q&&t.command.indexOf("justify")!=-1){t.widget.jqxToggleButton("check")}else{if(G){t.widget.jqxToggleButton("check")}else{if(q&&k.range.collapsed===false){t.widget.jqxToggleButton("check")}else{if(b.jqx.browser.msie&&b.jqx.browser.version<9&&q&&!k.selection.isCollapsed()){t.widget.jqxToggleButton("check")}}}}break;case"button":default:if(t.refresh){t.refresh(t.widget,k.style)}break}})};if(l.length==0){g(j)}else{for(var h=0;h<l.length;h++){var d=l[h];var j=d.split(" ");g(j)}}}}k.readOnly=o},_rgbToHex:function(e){if(e){if(e.substr(0,1)==="#"){if(e.length==4){var h=e.substr(1,1);var f=e.substr(2,1);var d=e.substr(3,1);return"#"+h+h+f+f+d+d}return e}var i=/(.*?)rgb\((\d+),\s*(\d+),\s*(\d+)\)/i.exec(e);if(!i){return null}var h=parseInt(i[2],10).toString(16);var f=parseInt(i[3],10).toString(16);var d=parseInt(i[4],10).toString(16);return"#"+((h.length==1?"0"+h:h)+(f.length==1?"0"+f:f)+(d.length==1?"0"+d:d))}return null},_preventDefault:function(d,e){if(e!==false){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}}if(d.preventDefault){d.preventDefault()}if(d.stopPropagation){d.stopPropagation()}d.cancelBubble=true;d.returnValue=false},_addCommandHandler:function(g,f,i,h,d){var e=this;if(!i&&d.init){i="custom"}switch(i){case"custom":switch(d.type){case"list":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){d.value=b(this).val();e.execute("custom",d);if(!e.readOnly){e._refreshTools()}}}e._preventDefault(j,false)};break;case"colorPicker":action=function(l){if(e._documentMode!="source"){var j=b(d.colorPicker).find("td").removeClass("jqx-editor-color-picker-selected-cell");if(l.target.nodeName.toLowerCase()=="div"){var k=b(l.target).css("background-color");b(l.target).parent().addClass("jqx-editor-color-picker-selected-cell")}else{var k=b(l.target).find("div").css("background-color");b(l.target).addClass("jqx-editor-color-picker-selected-cell")}b("#bar-"+i).css("background",k);d.widget.val=function(){var n=function(p){if(typeof p!="number"){return p}return"rgb("+(p&255)+", "+((p&65280)>>8)+", "+((p&16711680)>>16)+")"};var o=n(k);var m=e._rgbToHex(o);return m};d.widget.jqxDropDownButton("close");e.execute("custom",d)}e._preventDefault(l);return false};break;case"button":case"toggleButton":default:action=function(j){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}e._preventDefault(j);var l=b(this).attr("data-command");var k=this;if(e._documentMode!="source"){if(d.toggle){d.toggle()}e.execute("custom",d);e._refreshTools()}return false};break}break;case"formatblock":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){e.execute(b(this).attr("data-command"),"<"+b(this).val()+">",d);if(!e.readOnly){e.commands.bold.toggled=false;e._refreshTools()}}}e._preventDefault(j,false)};break;case"fontsize":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){var l=b(this).val();var m="xx-small,x-small,small,medium,large,x-large,xx-large".split(",");var k=b(this).jqxDropDownList("getSelectedIndex")+1;var k=1+m.indexOf(l);e.execute(b(this).attr("data-command"),k,d)}}e._preventDefault(j,false)};break;case"fontname":action=function(j){if(e._documentMode!="source"){if(j.args.type!="none"){var k=b(this).val();e.execute(b(this).attr("data-command"),k,d)}}e._preventDefault(j,false)};break;case"forecolor":case"backcolor":action=function(l){if(e._documentMode!="source"){var j=b(d.colorPicker).find("td").removeClass("jqx-editor-color-picker-selected-cell");if(l.target.nodeName.toLowerCase()=="div"){var k=b(l.target).css("background-color");b(l.target).parent().addClass("jqx-editor-color-picker-selected-cell")}else{var k=b(l.target).find("div").css("background-color");b(l.target).addClass("jqx-editor-color-picker-selected-cell")}b("#bar-"+i).css("background",k);d.widget.jqxDropDownButton("close");e.execute(i,k,d)}e._preventDefault(l);return false};break;case"viewsource":action=function(j){if(e.linkPopup){e.linkPopup.remove()}d.toggle();e.setMode(d.toggled);if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}e._preventDefault(j);return false};break;case"insertimage":action=function(j){e._insertImageAction(j,e,d)};break;case"createlink":action=function(j){e._createLinkAction(j,e,d)};break;default:action=function(j){if(b(".jqx-editor-dropdownpicker").length>0){b(".jqx-editor-dropdownpicker").jqxDropDownButton("close")}if(b(".jqx-editor-dropdownlist").length>0){b(".jqx-editor-dropdownlist").jqxDropDownList("close")}e._preventDefault(j);var m=b(this).attr("data-command");var k=this;if(e._documentMode!="source"){if(m=="underline"){if(e.getSelectedElement()){var l=e.getSelectedElement();if(l&&l.nodeName.toLowerCase()=="a"){if(d.toggled){b(l).css("text-decoration","none")}else{b(l).css("text-decoration","underline")}d.toggle();e._refreshTools();return false}}}if(d.toggle){d.toggle()}e.execute(m,b(this).val(),d);e._refreshTools()}return false};break}e.addHandler(g,f,action);return false},_createLinkAction:function(d,k,l){var k=this;if(k._documentMode=="source"){k._preventDefault(d);return}if(!k.focused){k.editor.focus()}k.range=k.getRange();var e=k.getSelectedElement();if(e.nodeName.toLowerCase()=="a"){k.editLink=e}else{k.editLink=null}if(b("#linkWindow"+this.element.id).length>0){if(k.editLink){k.selection.selectNode(e,true)}k._updateLinkWindow();k._preventDefault(d);return false}var m=b("<div class='jqx-editor-window jqx-editor-link-window'><div>"+k.localization["Insert Link"]+"</div><div><table style='border-collapse: separate; border-spacing: 2px;'><tr><td align='right'>"+k.localization.URL+":</td><td><input style='width: 200px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+k.localization.Title+":</td><td><input style='width: 200px; height: 23px;' value=''/></td><tr/><tr><td align='right'></td><td><div class='jqx-editor-link-checkbox'>"+k.localization["Open in a new window/tab"]+"</div></td><tr/><tr><td align='right'></td><td align='right'><button>Ok</button><button style='margin-left: 5px;'>Remove</button><button style='margin-left: 5px;'>Cancel</button></td><tr/></table></div></div>");m[0].id="linkWindow"+this.element.id;var j=m.find("input");j.addClass(k.toThemeProperty("jqx-widget"));j.addClass(k.toThemeProperty("jqx-widget-content"));j.addClass(k.toThemeProperty("jqx-input"));var i=m.find(".jqx-editor-link-checkbox").jqxCheckBox({theme:k.theme,height:23,width:180});var g=m.find("button:first").jqxButton({theme:k.theme,disabled:true});var o=b(m.find("button")[1]).jqxButton({theme:k.theme});var h=m.find("button:last").jqxButton({theme:k.theme});g.val(k.localization.Ok);h.val(k.localization.Cancel);o.val(k.localization.Remove);k.addHandler(h,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(p){k.editor.focus();k.selectRange(k.range);k._refreshTools();k._preventDefault(p)});if(!k.editLink||(k.editLink&&!k.editLink.href)){o.hide()}var f=false;k.addHandler(b(j[0]),"focus",function(){if(j[1].value==""||j[1].value==j[0].value){f=true}else{f=false}});k.addHandler(b(j[1]),"keyup",function(p){if(p.keyCode){if(p.keyCode==13){g.trigger("click")}if(p.keyCode==27){h.trigger("click")}}});k.addHandler(b(j[0]),"keyup change",function(p){if(j[0].value.length>0){g.jqxButton({disabled:false})}else{g.jqxButton({disabled:true})}if(f){j[1].value=j[0].value}if(p.keyCode){if(p.keyCode==13){g.trigger("click")}if(p.keyCode==27){h.trigger("click")}}});k.addHandler(o,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(p){m.jqxWindow("close");try{k.editor.focus();k.selection.selectNode(k.editLink);k.execute("unlink");k.selection.collapse(false);k.commands.underline.toggled=false;k._refreshTools()}catch(q){}k._preventDefault(p)});k.addHandler(g,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(s){var q=m.find("input");var r=b("<a>"+(q[1].value||q[0].value)+"</a>");if(i.val()){r.attr("target","_blank")}r[0].href=b.trim(q[0].value);if(q[0].value.indexOf("http")==-1&&q[0].value.indexOf("mailto")==-1){r[0].href="http://"+b.trim(q[0].value)}if(!k.focused){k.editor.focus()}if(k.range){k.selectRange(k.range)}if(k.editLink){b(k.editLink).remove()}k.execute("insertHTML",""+r[0].outerHTML+"<span id='INSERTION_MARKER'>&nbsp;</span>",l);k.editor.focus();var p=b(k.editorDocument).find("#INSERTION_MARKER");k.selection.selectNode(p[0],true);if(k.getRange().setStartAfter){k.getRange().setStartAfter(p[0])}p.remove();k.selection.collapse(false);k._refreshTools();k._preventDefault(s)});k.updating=true;m.appendTo(document.body);k.addHandler(m,"open",function(){k.updating=true;setTimeout(function(){k.range=k.getRange();b(j[0]).focus()},25)});m.jqxWindow({resizable:false,width:280,okButton:g,cancelButton:h,theme:k.theme,isModal:true,position:{center:k.widget}});k.addHandler(m,"close",function(){k.updating=false});if(!k.focused){k.editor.focus();k.selectRange(k.range)}if(k.editLink){j[0].value=k.editLink.href||"";j[1].value=b(k.editLink).text();i.val(b(k.editLink).attr("target")=="_blank")}else{if(!k.selection.isCollapsed()){var n=k.selection.getText();if(n.match(/^(?!:\/\/)([a-zA-Z0-9]+\.)?[a-zA-Z0-9][a-zA-Z0-9-]+\.[a-zA-Z]{2,6}?$/i)){j[0].value=n}else{j[1].value=n}}}if(j[0].value.length>0){g.jqxButton({disabled:false})}else{g.jqxButton({disabled:true})}k._preventDefault(d);return false},_insertImageAction:function(j,i,g){if(i._documentMode=="source"){i._preventDefault(j);return}if(!i.focused){i.editor.focus()}i.range=i.getRange();if(b("#imageWindow"+this.element.id).length>0){i._updateImageWindow();i._preventDefault(j);return false}var h=b("<div class='jqx-editor-window jqx-editor-image-window'><div>"+i.localization["Insert Image"]+"</div><div><table style='border-collapse: separate; border-spacing: 2px;'><tr><td align='right'>"+i.localization.URL+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization["Alt Text"]+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization.Width+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization.Height+":</td><td><input style='width: 180px; height: 23px;' value=''/></td><tr/><tr><td align='right'>"+i.localization.HSpace+":</td><td><input style='width: 180px; height: 23px;' class='jqx-editor-hspace'/></td><tr/><tr><td align='right'>"+i.localization.VSpace+":</td><td><input style='width: 180px; height: 23px;' class='jqx-editor-vspace'/></td><tr/><tr><td align='right'>"+i.localization.Align+":</td><td><div class='jqx-editor-align'></div></td><tr/><tr><td align='right'></td><td align='right'><button>Ok</button><button style='margin-left: 5px;'>Remove</button><button style='margin-left: 5px;'>Cancel</button></td><tr/></table></div></div>");h[0].id="imageWindow"+this.element.id;var e=h.find("input");e.addClass(i.toThemeProperty("jqx-widget"));e.addClass(i.toThemeProperty("jqx-widget-content"));e.addClass(i.toThemeProperty("jqx-input"));h.find(".jqx-editor-align").jqxDropDownList({autoDropDownHeight:true,selectedIndex:0,theme:i.theme,height:23,width:180,source:[i.localization["not set"],i.localization.Left,i.localization.Right]});var f=h.find("button:first").jqxButton({theme:i.theme});var k=h.find("button:last").jqxButton({theme:i.theme});var d=b(h.find("button")[1]).jqxButton({theme:i.theme});f.val(i.localization.Ok);k.val(i.localization.Cancel);d.val(i.localization.Remove);d.hide();i.addHandler(d,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(l){b(i.editImage).removeClass("jqx-editor-focus");b(i.editImage).remove();i.editImage=null;i._preventDefault(l);h.jqxWindow("close");i._raiseEvent("change")});i.addHandler(k,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(l){b(i.editImage).removeClass("jqx-editor-focus");i.editImage=null;i._preventDefault(l)});i.addHandler(f,!b.jqx.mobile.isTouchDevice()?"click":b.jqx.mobile.getTouchEventName("touchstart"),function(o){b(i.editImage).removeClass("jqx-editor-focus");var m=h.find("input");var p=i.editImage?b(i.editImage):b('<img style="border: 1px solid transparent;">');var n=p.attr("src",m[0].value).attr("unselectable","on");if(m[1].value){n.attr("alt",m[1].value).attr("title",m[1].value)}if(m[2].value&&!isNaN(parseInt(m[2].value))){n.width(m[2].value)}else{n.css("width","auto")}if(m[3].value&&!isNaN(parseInt(m[3].value))){n.height(m[3].value)}else{n.css("height","auto")}if(m[4].value){if(m[4].value.toString()=="auto"){n.css("margin-left","auto");n.css("margin-right","auto")}else{if(m[4].value.toString().indexOf("%")!=-1){n.css("margin-left",parseInt(m[4].value)+"%");n.css("margin-right",parseInt(m[4].value)+"%")}else{n.css("margin-left",parseInt(m[4].value)+"px");n.css("margin-right",parseInt(m[4].value)+"px")}}}else{n.css("margin-left","0px");n.css("margin-right","0px")}if(m[5].value){if(m[5].value.toString()=="auto"){n.css("margin-top","auto");n.css("margin-bottom","auto")}else{if(m[5].value.toString().indexOf("%")!=-1){n.css("margin-top",parseInt(m[5].value)+"%");n.css("margin-bottom",parseInt(m[5].value)+"%")}else{n.css("margin-top",parseInt(m[5].value)+"px");n.css("margin-bottom",parseInt(m[5].value)+"px")}}}else{n.css("margin-top","0px");n.css("margin-bottom","0px")}var q=h.find(".jqx-editor-align").jqxDropDownList("selectedIndex");if(q==1){n.css("float","left")}else{if(q==2){n.css("float","right")}else{if(q==0){n.css("float","none")}}}n.css("resize",false);n[0].oncontrolselect=function(){return false};n[0].selectstart=function(){return false};if(!i.editImage){if(!i.focused){i.editor.focus()}if(i.range){i.selectRange(i.range)}i.execute("insertHTML",n[0].outerHTML+"<span id='INSERTION_MARKER'>&nbsp;</span>",g);i.editor.focus();var l=b(i.editorDocument).find("#INSERTION_MARKER");i.selection.selectNode(l[0],true);if(i.getRange().setStartAfter){i.getRange().setStartAfter(l[0])}l.remove();i.selection.collapse(false);i._refreshTools();i._preventDefault(o)}i.editImage=null;i._preventDefault(o)});h.appendTo(document.body);i.updating=true;i.addHandler(h,"open",function(){i.updating=true;setTimeout(function(){i.range=i.getRange();b(e[0]).focus()},25)});h.jqxWindow({resizable:false,width:280,okButton:f,cancelButton:k,theme:i.theme,isModal:true,position:{center:i.widget}});i.addHandler(h,"close",function(){i.updating=false});if(!i.focused){i.editor.focus();i.selectRange(i.range)}i._preventDefault(j);return false},editmode:function(f){var e=this;if(!f&&!e.readOnly){e._removeHandlers();e.editor.attr("contentEditable",false);var d=document.createTextNode(e.editor.html());var g=b("<pre>");g.html(d).attr({id:"sourceText",contentEditable:true}).css("height","100%");e.editor.html(g);if(e.buttons.hasOwnProperty("html")){e.buttons.html.addClass("active")}g.focus()}else{if(f&&e.readOnly){var d=e.editor.find("#sourceText").text();e.editor.html(d);if(e.buttons.hasOwnProperty("html")){e.buttons.html.removeClass("active")}e.editor.attr("contentEditable",true);e._addHandlers()}}e.readOnly=!f},setMode:function(f){var i=this;if(!i.range){i.editor.focus();i.range=i.getRange()}var h;var e=i.editor[0];if(f){i._documentMode="source";var k=new c();var j=k.HTMLtoXML(e.innerHTML);j=k.FormatHTML(j);h=document.createTextNode(j);e.innerHTML="";var d=document.createElement("pre");e.contentEditable=false;d.style.height="100%";d.style.margin="0px";d.style.outline="none";d.style.display="block";d.id="sourceText";d.contentEditable=true;d.appendChild(h);e.appendChild(d);this.readOnly=true}else{this._documentMode="html";if(document.all){e.innerHTML=e.innerText}else{if(e.textContent){e.innerHTML=e.textContent}else{h=document.createRange();h.selectNodeContents(e.firstChild);e.innerHTML=h.toString()}}e.contentEditable=true;i.readOnly=false;i._refreshTools();i.editor.focus();i.selection.selectNode(i.editor[0]);i.editor.scrollTop(0);i.selection.collapse(true)}b.each(this.commands,function(){if(this.widget){if(this.command!="viewsource"){switch(this.type){case"list":this.widget.jqxDropDownList({disabled:f});break;case"colorPicker":this.widget.jqxDropDownButton({disabled:f});break;case"button":this.widget.jqxButton({disabled:f});break;case"toggleButton":this.widget.jqxToggleButton({toggled:false,disabled:f});break}}}});i.editor.focus();if(b.jqx.browser.mozilla){var g=b("<a href='#'>anchor</a>");i.editor.prepend(g);g.focus();g.remove();i.selection.collapse(true)}if(i.commands.html.widget){i.commands.html.widget.jqxToggleButton({toggled:f=="source"||f==true});i.commands.html.toggled=f=="source"||f==true}},execute:function(i,f,e){var g=this;if(!g.readOnly){var j=g.editorDocument;if(g._documentMode=="source"){return}if(g.linkPopup){g.linkPopup.remove()}g.editor.focus();if(b.jqx.browser.mozilla){}if(b.jqx.mobile.isTouchDevice()){setTimeout(function(){},25)}var d=function(m){try{if(m.command&&m.command.toLowerCase()=="inserthtml"){var l=g.getRange();var n=m.value;if(n.toString().indexOf("<")==-1){n="<span>"+m.value+"</span>"}g.selection.insertContent(""+n+"<span id='INSERTION_MARKER'>&nbsp;</span>");g.selectRange(l);setTimeout(function(){var p=b(g.editorDocument).find("#INSERTION_MARKER");g.selection.selectNode(b(p).prev()[0],true);p.remove();g.selection.collapse(false)},10)}else{if(m.command){if(j.queryCommandEnabled(m.command)){j.execCommand(m.command,false,m.value)}else{return false}}else{if(j.queryCommandEnabled(m)){j.execCommand(m,false,m)}else{return false}}}}catch(o){}};if(i=="custom"){var h=f.action(f.widget,g.editor);if(h){d(h)}}else{try{if(e&&e.action){var h=e.action(e.widget,g.editor);d(h)}else{if(j.queryCommandEnabled(i)){j.execCommand(i,false,f)}else{if(i=="insertHTML"){g.selection.insertContent(f)}else{return false}}}}catch(k){if(i=="insertHTML"){g.selection.insertContent(f)}else{return false}}}if(b.jqx.mobile.isTouchDevice()){setTimeout(function(){if(g.iframe){g.iframe[0].contentWindow.focus()}},500)}g._raiseEvent("change",{command:i,args:f});g.changed=true;g.range=g.getRange()}},destroy:function(){var h=this;h._removeHandlers();var l=h.tools.split(" ");var g=h.tools.split(" | ");b.jqx.utilities.resize(this.host,null,true);var f=function(i){b.each(i,function(n,o){var m=h.commands[this];if(!m){return true}switch(m.type){case"list":m.widget.jqxDropDownList("destroy");break;case"colorPicker":m.colorPicker.remove();m.widget.jqxDropDownButton("destroy");break;case"toggleButton":m.widget.jqxToggleButton("destroy");break;case"custom":if(h.destroyTool){h.destroyTool(this)}break;case"button":default:m.widget.jqxToggleButton("destroy");if(m.command==="insertimage"){if(b("#imageWindow"+h.element.id).length>0){b("#imageWindow"+h.element.id).find(".jqx-editor-align").jqxDropDownList("destroy");b("#imageWindow"+h.element.id).find("button").jqxButton("destroy")}}else{if(m.command==="createlink"){if(b("#linkWindow"+h.element.id).length>0){b("#linkWindow"+h.element.id).find(".jqx-editor-align").jqxDropDownList("destroy");b("#linkWindow"+h.element.id).find("button").jqxButton("destroy");b("#linkWindow"+h.element.id).find(".jqx-editor-link-checkbox").jqxCheckBox("destroy")}}}break}})};if(g.length==0){f(l)}else{for(var e=0;e<g.length;e++){var d=g[e];var l=d.split(" ");f(l)}}var j=b("#linkWindow"+this.element.id);var k=b("#imageWindow"+this.element.id);if(j&&j.length>0){j.jqxWindow("destroy")}if(k&&k.length>0){k.jqxWindow("destroy")}if(h.inline){h.toolbar.remove()}else{h.widget.remove();h.host.remove()}h.iframe.remove();h.iframe=null;h.selection=null;h.editorDocument=null;h.contentEditableElement=null},val:function(d){if(d!=undefined&&typeof d!="object"){this.editor.html(d)}return this.editor.html()},_raiseEvent:function(h,e){if(e==undefined){e={owner:null}}if(this._documentMode=="source"){return true}var f=h;args=e;args.owner=this;var g=new b.Event(f);g.owner=this;g.args=args;if(this._textArea){var d=b(this._textArea).trigger(g)}else{var d=this.host.trigger(g)}e=g.args;return d}});var a=function(d){var e={initialize:function(f){this.document=f},getSelection:function(){return(this.document.getSelection)?this.document.getSelection():this.document.selection},getRange:function(){var f=this.getSelection();if(!f){return null}try{return f.rangeCount>0?f.getRangeAt(0):(this.document.createRange?this.document.createRange():this.document.selection.createRange())}catch(g){return this.document.body.createTextRange()}},selectRange:function(f){if(f.select){f.select()}else{var g=this.getSelection();if(g.addRange){g.removeAllRanges();g.addRange(f)}}},selectNode:function(i,j){var h=this.getRange();var g=this.getSelection();if(h.moveToElementText){h.moveToElementText(i);h.select()}else{if(g.addRange){try{j?h.selectNodeContents(i):h.selectNode(i);g.removeAllRanges();g.addRange(h)}catch(f){var k=f}}else{g.setBaseAndExtent(i,0,i,1)}}return i},isCollapsed:function(){var f=this.getRange();if(f.item){return false}return f.boundingWidth==0||this.getSelection().isCollapsed},collapse:function(f){var h=this.getRange();var g=this.getSelection();if(h.select){h.collapse(f);h.select()}else{f?g.collapseToStart():g.collapseToEnd()}},getContent:function(){var h=this.getRange();var f=b("<div>")[0];if(this.isCollapsed()){return""}if(h.cloneContents){f.appendChild(h.cloneContents())}else{if(h.item!=undefined||h.htmlText!=undefined){b(f).html(h.item?h.item(0).outerHTML:h.htmlText)}else{b(f).html(h.toString())}}var g=b(f).html();return g},getText:function(){var g=this.getRange();var f=this.getSelection();return this.isCollapsed()?"":g.text||(f.toString?f.toString():"")},getNode:function(){var g=this.getRange();if(!b.jqx.browser.msie||b.jqx.browser.version>=9){var f=null;if(g){f=g.commonAncestorContainer;if(!g.collapsed){if(g.startContainer==g.endContainer){if(g.startOffset-g.endOffset<2){if(g.startContainer.hasChildNodes()){f=g.startContainer.childNodes[g.startOffset]}}}}while(typeof(f)!="element"){f=f.parentNode}}return d.id(f)}return d.id(g.item?g.item(0):g.parentElement())},insertContent:function(i){var h=this.getRange();if(h.pasteHTML){h.pasteHTML(i);h.collapse(false);h.select()}else{if(h.insertNode){h.deleteContents();if(h.createContextualFragment){h.insertNode(h.createContextualFragment(i))}else{var j=this.document;var g=j.createDocumentFragment();var f=j.createElement("div");g.appendChild(f);f.outerHTML=i;h.insertNode(g)}}}}};e.initialize(d);return e};var c=function(){var n=/^<([-A-Za-z0-9_]+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,f=/^<\/([-A-Za-z0-9_]+)[^>]*>/,j=/([-A-Za-z0-9_]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g;var i=e("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed");var d=e("address,applet,blockquote,button,center,dd,del,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul");var l=e("a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var");var g=e("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr");var m=e("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected");var k=e("script,style");var h=this.HTMLParser=function(p,x){var s,t,q,u=[],v=p;u.last=function(){return this[this.length-1]};while(p){t=true;if(!u.last()||!k[u.last()]){if(p.indexOf("<!--")==0){s=p.indexOf("-->");if(s>=0){if(x.comment){x.comment(p.substring(4,s))}p=p.substring(s+3);t=false}}else{if(p.indexOf("</")==0){q=p.match(f);if(q){p=p.substring(q[0].length);q[0].replace(f,r);t=false}}else{if(p.indexOf("<")==0){q=p.match(n);if(q){p=p.substring(q[0].length);q[0].replace(n,o);t=false}}}}if(t){s=p.indexOf("<");var w=s<0?p:p.substring(0,s);p=s<0?"":p.substring(s);if(x.chars){x.chars(w)}}}else{p=p.replace(new RegExp("(.*)</"+u.last()+"[^>]*>"),function(y,z){z=z.replace(/<!--(.*?)-->/g,"$1").replace(/<!\[CDATA\[(.*?)]]>/g,"$1");if(x.chars){x.chars(z)}return""});r("",u.last())}v=p}r();function o(y,B,C,z){B=B.toLowerCase();if(d[B]){while(u.last()&&l[u.last()]){r("",u.last())}}if(g[B]&&u.last()==B){r("",B)}z=i[B]||!!z;if(!z){u.push(B)}if(x.start){var A=[];C.replace(j,function(E,D){var F=arguments[2]?arguments[2]:arguments[3]?arguments[3]:arguments[4]?arguments[4]:m[D]?D:"";A.push({name:D,value:F,escaped:F.replace(/(^|[^\\])"/g,'$1\\"')})});if(x.start){x.start(B,A,z)}}}function r(y,A){if(!A){var B=0}else{for(var B=u.length-1;B>=0;B--){if(u[B].toLowerCase()==A.toLowerCase()){break}}}if(B>=0){for(var z=u.length-1;z>=B;z--){if(x.end){x.end(u[z])}}u.length=B}}};this.HTMLtoXML=function(p){var o="";p=p.replace(/\r/ig,"");p=p.replace(/\n/ig,"");h(p,{start:function(q,s,r){o+="<"+q;for(var t=0;t<s.length;t++){o+=" "+s[t].name+'="'+s[t].escaped+'"'}o+=(r?"/":"")+">"},end:function(q){o+="</"+q+">\r\n"},chars:function(q){o+=q},comment:function(q){o+="<!--"+q+"-->"}});return o};this.FormatHTML=function(D,r){var H,C,A,u,v,G;r=r||{};C=r.indent_size||4;A=r.indent_char||" ";v=r.brace_style||"collapse";u=Infinity;G=r.unformatted||["a","span","bdo","em","strong","dfn","code","samp","kbd","var","cite","abbr","acronym","q","sub","sup","tt","i","b","big","small","u","s","strike","font","ins","del","pre","address","dt","h1","h2","h3","h4","h5","h6"];function q(){this.pos=0;this.token="";this.current_mode="CONTENT";this.tags={parent:"parent1",parentcount:1,parent1:""};this.tag_type="";this.token_text=this.last_token=this.last_text=this.token_type="";this.Utils={whitespace:"\n\r\t ".split(""),single_token:"br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed,?php,?,?=".split(","),extra_liners:"head,body,/html".split(","),in_array:function(J,t){for(var I=0;I<t.length;I++){if(J===t[I]){return true}}return false}};this.get_content=function(){var t="",J=[],K=false;while(this.input.charAt(this.pos)!=="<"){if(this.pos>=this.input.length){return J.length?J.join(""):["","TK_EOF"]}t=this.input.charAt(this.pos);this.pos++;this.line_char_count++;if(this.Utils.in_array(t,this.Utils.whitespace)){if(J.length){K=true}this.line_char_count--;continue}else{if(K){if(this.line_char_count>=this.max_char){J.push("\n");for(var I=0;I<this.indent_level;I++){J.push(this.indent_string)}this.line_char_count=0}else{J.push(" ");this.line_char_count++}K=false}}J.push(t)}return J.length?J.join(""):""};this.get_contents_to=function(J){if(this.pos==this.input.length){return["","TK_EOF"]}var t="";var K="";var L=new RegExp("</"+J+"\\s*>","igm");L.lastIndex=this.pos;var I=L.exec(this.input);var M=I?I.index:this.input.length;if(this.pos<M){K=this.input.substring(this.pos,M);this.pos=M}return K};this.record_tag=function(t){if(this.tags[t+"count"]){this.tags[t+"count"]++;this.tags[t+this.tags[t+"count"]]=this.indent_level}else{this.tags[t+"count"]=1;this.tags[t+this.tags[t+"count"]]=this.indent_level}this.tags[t+this.tags[t+"count"]+"parent"]=this.tags.parent;this.tags.parent=t+this.tags[t+"count"]};this.retrieve_tag=function(t){if(this.tags[t+"count"]){var I=this.tags.parent;while(I){if(t+this.tags[t+"count"]===I){break}I=this.tags[I+"parent"]}if(I){this.indent_level=this.tags[t+this.tags[t+"count"]];this.tags.parent=this.tags[I+"parent"]}delete this.tags[t+this.tags[t+"count"]+"parent"];delete this.tags[t+this.tags[t+"count"]];if(this.tags[t+"count"]==1){delete this.tags[t+"count"]}else{this.tags[t+"count"]--}}};this.get_tag=function(){var K="",M=[],t=false,O,J;do{if(this.pos>=this.input.length){return M.length?M.join(""):["","TK_EOF"]}K=this.input.charAt(this.pos);this.pos++;this.line_char_count++;if(this.Utils.in_array(K,this.Utils.whitespace)){t=true;this.line_char_count--;continue}if(K==="'"||K==='"'){if(!M[1]||M[1]!=="!"){K+=this.get_unformatted(K);t=true}}if(K==="="){t=false}if(M.length&&M[M.length-1]!=="="&&K!==">"&&t){if(this.line_char_count>=this.max_char){this.print_newline(false,M);this.line_char_count=0}else{M.push(" ");this.line_char_count++}t=false}if(K==="<"){O=this.pos-1}M.push(K)}while(K!==">");var P=M.join("");var I;if(P.indexOf(" ")!=-1){I=P.indexOf(" ")}else{I=P.indexOf(">")}var N=P.substring(1,I).toLowerCase();if(P.charAt(P.length-2)==="/"||this.Utils.in_array(N,this.Utils.single_token)){this.tag_type="SINGLE"}else{if(N==="script"){this.record_tag(N);this.tag_type="SCRIPT"}else{if(N==="style"){this.record_tag(N);this.tag_type="STYLE"}else{if(this.Utils.in_array(N,G)){var L=this.get_unformatted("</"+N+">",P);M.push(L);if(O>0&&this.Utils.in_array(this.input.charAt(O-1),this.Utils.whitespace)){M.splice(0,0,this.input.charAt(O-1))}J=this.pos-1;if(this.Utils.in_array(this.input.charAt(J+1),this.Utils.whitespace)){M.push(this.input.charAt(J+1))}this.tag_type="SINGLE"}else{if(N.charAt(0)==="!"){if(N.indexOf("[if")!=-1){if(P.indexOf("!IE")!=-1){var L=this.get_unformatted("-->",P);M.push(L)}this.tag_type="START"}else{if(N.indexOf("[endif")!=-1){this.tag_type="END";this.unindent()}else{if(N.indexOf("[cdata[")!=-1){var L=this.get_unformatted("]]>",P);M.push(L);this.tag_type="SINGLE"}else{var L=this.get_unformatted("-->",P);M.push(L);this.tag_type="SINGLE"}}}}else{if(N.charAt(0)==="/"){this.retrieve_tag(N.substring(1));this.tag_type="END"}else{this.record_tag(N);this.tag_type="START"}if(this.Utils.in_array(N,this.Utils.extra_liners)){this.print_newline(true,this.output)}}}}}}return M.join("")};this.get_unformatted=function(I,J){if(J&&J.indexOf(I)!=-1){return""}var t="";var K="";var L=true;do{if(this.pos>=this.input.length){return K}t=this.input.charAt(this.pos);this.pos++;if(this.Utils.in_array(t,this.Utils.whitespace)){if(!L){this.line_char_count--;continue}if(t==="\n"||t==="\r"){K+="\n";this.line_char_count=0;continue}}K+=t;this.line_char_count++;L=true}while(K.indexOf(I)==-1);return K};this.get_token=function(){var t;if(this.last_token==="TK_TAG_SCRIPT"||this.last_token==="TK_TAG_STYLE"){var I=this.last_token.substr(7);t=this.get_contents_to(I);if(typeof t!=="string"){return t}return[t,"TK_"+I]}if(this.current_mode==="CONTENT"){t=this.get_content();if(typeof t!=="string"){return t}else{return[t,"TK_CONTENT"]}}if(this.current_mode==="TAG"){t=this.get_tag();if(typeof t!=="string"){return t}else{var J="TK_TAG_"+this.tag_type;return[t,J]}}};this.get_full_indent=function(t){t=this.indent_level+t||0;if(t<1){return""}return Array(t+1).join(this.indent_string)};this.printer=function(K,J,t,M,L){this.input=K||"";this.output=[];this.indent_character=J;this.indent_string="";this.indent_size=t;this.brace_style=L;this.indent_level=0;this.max_char=M;this.line_char_count=0;for(var I=0;I<this.indent_size;I++){this.indent_string+=this.indent_character}this.print_newline=function(P,N){this.line_char_count=0;if(!N||!N.length){return}if(!P){while(this.Utils.in_array(N[N.length-1],this.Utils.whitespace)){N.pop()}}N.push("\n");for(var O=0;O<this.indent_level;O++){N.push(this.indent_string)}};this.print_token=function(N){this.output.push(N)};this.indent=function(){this.indent_level++};this.unindent=function(){if(this.indent_level>0){this.indent_level--}}};return this}H=new q();H.printer(D,A,C,u,v);while(true){var w=H.get_token();H.token_text=w[0];H.token_type=w[1];if(H.token_type==="TK_EOF"){break}switch(H.token_type){case"TK_TAG_START":H.print_newline(false,H.output);H.print_token(H.token_text);H.indent();H.current_mode="CONTENT";break;case"TK_TAG_STYLE":case"TK_TAG_SCRIPT":H.print_newline(false,H.output);H.print_token(H.token_text);H.current_mode="CONTENT";break;case"TK_TAG_END":if(H.last_token==="TK_CONTENT"&&H.last_text===""){var F=H.token_text.match(/\w+/)[0];var y=H.output[H.output.length-1].match(/<\s*(\w+)/);if(y===null||y[1]!==F){H.print_newline(true,H.output)}}H.print_token(H.token_text);H.current_mode="CONTENT";break;case"TK_TAG_SINGLE":var o=H.token_text.match(/^\s*<([a-z]+)/i);if(!o||!H.Utils.in_array(o[1],G)){H.print_newline(false,H.output)}H.print_token(H.token_text);H.current_mode="CONTENT";break;case"TK_CONTENT":if(H.token_text!==""){H.print_token(H.token_text)}H.current_mode="TAG";break;case"TK_STYLE":case"TK_SCRIPT":if(H.token_text!==""){H.output.push("\n");var x=H.token_text;if(r.indent_scripts=="keep"){var z=0}else{if(r.indent_scripts=="separate"){var z=-H.indent_level}else{var z=1}}var p=H.get_full_indent(z);var s=x.match(/^\s*/)[0];var B=s.match(/[^\n\r]*$/)[0].split(H.indent_string).length-1;var E=H.get_full_indent(z-B);x=x.replace(/^\s*/,p).replace(/\r\n|\r|\n/g,"\n"+E).replace(/\s*$/,"");if(x){H.print_token(x);H.print_newline(true,H.output)}}H.current_mode="TAG";break}H.last_token=H.token_type;H.last_text=H.token_text}return H.output.join("")};function e(r){var q={},o=r.split(",");for(var p=0;p<o.length;p++){q[o[p]]=true}return q}}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxexpander.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxexpander.js
new file mode 100644 (file)
index 0000000..65ae26f
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxExpander","",{});a.extend(a.jqx._jqxExpander.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",expanded:true,expandAnimationDuration:259,collapseAnimationDuration:250,animationType:"slide",toggleMode:"click",showArrow:true,arrowPosition:"right",headerPosition:"top",disabled:false,initContent:null,rtl:false,easing:"easeInOutSine",aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["expanding","expanded","collapsing","collapsed","resize"]};a.extend(true,this,b);return b},createInstance:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(this);this._cachedHTMLStructure=this.host.html();this.render()},expand:function(){if(this.disabled==false&&this.expanded==false&&this._expandChecker==1){var b=this;this._expandChecker=0;this._raiseEvent("0");this._header.removeClass(this.toThemeProperty("jqx-fill-state-normal"));this._header.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._header.addClass(this.toThemeProperty("jqx-expander-header-expanded"));if(this.headerPosition=="top"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded"))}else{if(this.headerPosition=="bottom"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded-top"))}}switch(this.animationType){case"slide":if(this.headerPosition=="top"){this._content.slideDown(this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}})}else{if(this.headerPosition=="bottom"){this._content.css({display:"inherit",height:0});if(a.jqx.browser.msie&&a.jqx.browser.version<8){this._content.css("display","block")}if(this._cntntEmpty==true){this._content.animate({height:0},this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}})}else{this._content.animate({height:this._contentHeight},this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}})}}}break;case"fade":this._content.fadeIn(this.expandAnimationDuration,this.easing,function(){b.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);b._raiseEvent("1");if(b.initContent&&b._initialized==false){b.initContent();b._initialized=true}});break;case"none":this._content.css("display","inherit");this.expanded=true;a.jqx.aria(b._header,"aria-expanded",true);a.jqx.aria(b._content,"aria-hidden",false);this._raiseEvent("1");if(this.initContent&&this._initialized==false){this.initContent();this._initialized=true}break}}},collapse:function(){if(this.disabled==false&&this.expanded==true&&this._expandChecker==0){var b=this;this._expandChecker=1;this._raiseEvent("2");this._header.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));this._header.addClass(this.toThemeProperty("jqx-fill-state-normal"));if(this.headerPosition=="top"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-expanded"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));if(b._hovered){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down-hover"))}this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"))}else{if(this.headerPosition=="bottom"){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-expanded-top"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));if(b._hovered){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-hover"))}}}switch(this.animationType){case"slide":if(this.headerPosition=="top"){this._content.slideUp(this.collapseAnimationDuration,this.easing,function(){b.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);b._raiseEvent("3")})}else{if(this.headerPosition=="bottom"){this._content.animate({height:0},this.expandAnimationDuration,function(){b._content.css("display","none");b.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);b._raiseEvent("3")})}}break;case"fade":this._content.fadeOut(this.collapseAnimationDuration,this.easing,function(){b.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);b._raiseEvent("3")});break;case"none":this._content.css("display","none");this.expanded=false;a.jqx.aria(b._header,"aria-expanded",false);a.jqx.aria(b._content,"aria-hidden",true);this._raiseEvent("3");break}}},setHeaderContent:function(b){this._header_text.html(b);this.invalidate()},getHeaderContent:function(){return this._header_text.html()},setContent:function(b){this._content.html(b);this._checkContent();this.invalidate()},getContent:function(){return this._content.html()},enable:function(){this.disabled=false;this.refresh();a.jqx.aria(this,"aria-disabled",false)},disable:function(){this.disabled=true;this.refresh();a.jqx.aria(this,"aria-disabled",true)},invalidate:function(){if(a.jqx.isHidden(this.host)){return}this._setSize()},refresh:function(b){if(b==true){return}this._removeHandlers();if(this.showArrow==true){this._arrow.css("display","inherit")}else{this._arrow.css("display","none")}this._setTheme();this._setSize();if(this.disabled==false){this._toggle()}this._keyBoard()},render:function(){this.widgetID=this.element.id;if(this._header){this._header.removeClass(this.toThemeProperty("jqx-expander-header-content"));this._header.removeClass(this.toThemeProperty("jqx-expander-header"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));this._header.removeClass(this.toThemeProperty("jqx-widget-header"));this._header_text.removeClass(this.toThemeProperty("jqx-expander-header-content"));this._header_text.removeClass(this.toThemeProperty("jqx-expander-header"));this._header_text.removeClass(this.toThemeProperty("jqx-widget-header"));this._header_text.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));this._header.attr("tabindex",null);this._content.attr("tabindex",null);this._header.css("margin-top",0);this._header[0].innerHTML=this._header_text[0].innerHTML;if(this.headerPosition=="bottom"){this._header.detach();this.host.prepend(this._header)}}this._header_temp=this.host.children("div:eq(0)");this._header_temp.wrap("<div></div>");this._header=this.host.children("div:eq(0)");this._content=this.host.children("div:eq(1)");if(this.headerPosition=="bottom"){this._header.detach();this.host.append(this._header)}this._header_text=this._header.children("div:eq(0)");var d=this._header_text[0].className;this._header.addClass(d);this._header_text.removeClass();if(!this.rtl){this._header_text.addClass(this.toThemeProperty("jqx-expander-header-content"))}else{this._header_text.addClass(this.toThemeProperty("jqx-expander-header-content-rtl"))}this._header.append("<div></div>");this._arrow=this._header.children("div:eq(1)");if(this.showArrow==true){this._arrow.css("display","inherit")}else{this._arrow.css("display","none")}this.tI=-1;if(this._header.attr("tabindex")==undefined){this.tI++;this._header.attr("tabindex",this.tI)}if(this._content.attr("tabindex")==undefined){this.tI++;this._content.attr("tabindex",this.tI)}this._setTheme();this._checkContent();var b="Invalid jqxExpander structure. Please add only two child div elements to your jqxExpander div that will represent the expander's header and content.";try{if(this._header.length==0||this._content.length==0||this.host.children().length<2||this.host.children().length>2){throw b}}catch(c){alert(c)}this._expandChecker;this._initialized;if(this.expanded==true){if(this.headerPosition=="top"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded"))}else{if(this.headerPosition=="bottom"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded-top"))}}if(this.initContent){this._setSize();this.initContent()}this._initialized=true;this._expandChecker=0}else{if(this.expanded==false){this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));this._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));if(this.headerPosition=="top"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"))}else{if(this.headerPosition=="bottom"){this._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"))}}this._initialized=false;this._expandChecker=1;this._content.css("display","none")}}this._setSize();if(this.disabled==false){this._toggle()}this._keyBoard();var e=this;a.jqx.utilities.resize(this.host,function(){e.invalidate()})},destroy:function(){this.removeHandler(a(window),"resize.expander"+this.widgetID);this.host.remove();a(this.element).removeData("jqxExpander")},focus:function(){try{if(this.disabled==false){this._header.focus()}}catch(b){}},propertyChangedHandler:function(b,c,e,d){if(c=="expanded"){if(d==true&&e==false){this.expanded=false;this.expand()}else{if(d==false&&e==true){this.expanded=true;this.collapse()}}}else{this.refresh()}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},resize:function(c,b){this.width=c;this.height=b;this._setSize()},_setSize:function(){this.host.width(this.width);this.host.height(this.height);this._header.height("auto");this._header.css("min-height",this._arrow.height());var c=this.arrowPosition;if(this.rtl){switch(c){case"left":c="right";break;case"right":c="left";break}}if(c=="right"){this._header_text.css({"float":"left","margin-left":"0px"});this._arrow.css({"float":"right",position:"relative"})}else{if(c=="left"){if(this.width=="auto"){this._header_text.css({"float":"left","margin-left":"17px"});this._arrow.css({"float":"left",position:"absolute"})}else{this._header_text.css({"float":"right","margin-left":"0px"});this._arrow.css({"float":"left",position:"relative"})}}}this._arrow.css("margin-top",this._header_text.height()/2-this._arrow.height()/2);if(this.height=="auto"){this._content.height("auto");this._contentHeight=this._content.height()}else{this._content.height("auto");var b=Math.round(this.host.height())-Math.round(this._header.outerHeight())-1;if(b<0){b=0}if(!this._contentHeight){this._contentHeight=this._content.height()}if(b!=this._contentHeight){this._content.height(b);this._contentHeight=Math.round(this._content.outerHeight())}else{this._content.height(this._contentHeight)}}},_toggle:function(){var b=this;if(this._isTouchDevice==false){this._header.removeClass(this.toThemeProperty("jqx-expander-header-disabled"));switch(this.toggleMode){case"click":this.addHandler(this._header,"click.expander"+this.widgetID,function(){b._animate()});break;case"dblclick":this.addHandler(this._header,"dblclick.expander"+this.widgetID,function(){b._animate()});break;case"none":this._header.addClass(this.toThemeProperty("jqx-expander-header-disabled"));break}}else{if(this.toggleMode!="none"){this.addHandler(this._header,a.jqx.mobile.getTouchEventName("touchstart")+"."+this.widgetID,function(){b._animate()})}else{return}}},_animate:function(){if(this.expanded==true){this.collapse();this._header.addClass(this.toThemeProperty("jqx-fill-state-hover"));this._header.addClass(this.toThemeProperty("jqx-expander-header-hover"));if(this.headerPosition=="top"){this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(this.headerPosition=="bottom"){this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom-hover"));this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-up-hover"))}}}else{this.expand();this._header.removeClass(this.toThemeProperty("jqx-fill-state-hover"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-hover"));if(this.headerPosition=="top"){this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(this.headerPosition=="bottom"){this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom-hover"));this._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-up-hover"))}}}},_removeHandlers:function(){this.removeHandler(this._header,"click.expander"+this.widgetID);this.removeHandler(this._header,"dblclick.expander"+this.widgetID);this.removeHandler(this._header,"mouseenter.expander"+this.widgetID);this.removeHandler(this._header,"mouseleave.expander"+this.widgetID)},_setTheme:function(){var b=this;this.host.addClass(this.toThemeProperty("jqx-widget"));this._header.addClass(this.toThemeProperty("jqx-widget-header"));this._content.addClass(this.toThemeProperty("jqx-widget-content"));if(this.rtl==true){this.host.addClass(this.toThemeProperty("jqx-rtl"))}if(this.disabled==false){this._header.removeClass(this.toThemeProperty("jqx-expander-header-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));if(this.expanded==true){this._header.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._header.addClass(this.toThemeProperty("jqx-expander-header-expanded"))}else{this._header.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"))}this._hovered=false;if(!b._isTouchDevice){this.addHandler(this._header,"mouseenter.expander"+this.widgetID,function(){b._hovered=true;if(b._expandChecker==1){b._header.removeClass(b.toThemeProperty("jqx-fill-state-normal"));b._header.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._header.addClass(b.toThemeProperty("jqx-fill-state-hover"));b._header.addClass(b.toThemeProperty("jqx-expander-header-hover"));if(b.headerPosition=="top"){if(b.expanded){b._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-up-hover"))}else{b._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))}b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(b.headerPosition=="bottom"){if(b.expanded){b._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))}b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-bottom-hover"));b._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-up-hover"))}}}});this.addHandler(this._header,"mouseleave.expander"+this.widgetID,function(){b._hovered=false;b._header.removeClass(b.toThemeProperty("jqx-fill-state-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-up-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-down-hover"));b._header.removeClass(b.toThemeProperty("jqx-expander-header-hover"));if(b.headerPosition=="top"){b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-down-hover"))}else{if(b.headerPosition=="bottom"){b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-bottom-hover"));b._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-up-hover"))}}if(b._expandChecker==1){b._header.addClass(b.toThemeProperty("jqx-fill-state-normal"))}else{b._header.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}})}}else{this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this._header.addClass(this.toThemeProperty("jqx-expander-header-disabled"))}this.host.addClass(this.toThemeProperty("jqx-expander"));this._header.addClass(this.toThemeProperty("jqx-expander-header"));this._content.addClass(this.toThemeProperty("jqx-expander-content"));if(this.headerPosition=="top"){this._content.addClass(this.toThemeProperty("jqx-expander-content-bottom"))}else{if(this.headerPosition=="bottom"){this._content.addClass(this.toThemeProperty("jqx-expander-content-top"))}}this._arrow.addClass(this.toThemeProperty("jqx-expander-arrow"))},_checkContent:function(){this._cntntEmpty=/^\s*$/.test(this._content.html());if(this._cntntEmpty==true){this._content.height(0);this._content.addClass(this.toThemeProperty("jqx-expander-content-empty"))}else{this._content.height(this._contentHeight);this._content.removeClass(this.toThemeProperty("jqx-expander-content-empty"))}},_keyBoard:function(){var b=this;this._focus();this.addHandler(this.host,"keydown.expander"+this.widgetID,function(c){var d=false;if((b.focusedH==true||b.focusedC==true)&&b.disabled==false){switch(c.keyCode){case 13:case 32:if(b.toggleMode!="none"){if(b.focusedH==true){b._animate()}d=true}break;case 38:if(c.ctrlKey==true&&b.focusedC==true){b._header.focus()}d=true;break;case 40:if(c.ctrlKey==true&&b.focusedH==true){b._content.focus()}d=true;break}return true}if(d&&c.preventDefault){c.preventDefault()}return !d})},_focus:function(){var b=this;this.addHandler(this._header,"focus.expander"+this.widgetID,function(){b.focusedH=true;a.jqx.aria(b._header,"aria-selected",true);b._header.addClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this._header,"blur.expander"+this.widgetID,function(){b.focusedH=false;a.jqx.aria(b._header,"aria-selected",false);b._header.removeClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this._header_text,"focus.expander"+this.widgetID,function(){b._header.focus()});this.addHandler(this._arrow,"focus.expander"+this.widgetID,function(){b._header.focus()});this.addHandler(this._content,"focus.expander"+this.widgetID,function(){b.focusedC=true;b._content.addClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this._content,"blur.expander"+this.widgetID,function(){b.focusedC=false;b._content.removeClass(b.toThemeProperty("jqx-fill-state-focus"))})}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxfileupload.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxfileupload.js
new file mode 100644 (file)
index 0000000..810f6ba
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxFileUpload","",{});a.extend(a.jqx._jqxFileUpload.prototype,{defineInstance:function(){var b={width:null,height:"auto",uploadUrl:"",fileInputName:"",autoUpload:false,multipleFilesUpload:true,accept:null,browseTemplate:"",uploadTemplate:"",cancelTemplate:"",localization:null,renderFiles:null,disabled:false,rtl:false,events:["select","remove","uploadStart","uploadEnd"]};a.extend(true,this,b)},createInstance:function(){var b=this;if(b.host.jqxButton===undefined){throw new Error("jqxFileUpload: Missing reference to jqxbuttons.js")}if(a.jqx.browser.msie){if(a.jqx.browser.version<11){b._ieOldWebkit=true;if(a.jqx.browser.version<8){b._ie7=true}}}else{if(a.jqx.browser.webkit){b._ieOldWebkit=true}}b._fluidWidth=typeof b.width==="string"&&b.width.charAt(b.width.length-1)==="%";b._fluidHeight=typeof b.height==="string"&&b.height.charAt(b.height.length-1)==="%";b._render(true)},_render:function(b){var c=this;c._setSize();c._addClasses();if(b===true){c._appendElements()}else{c._removeHandlers()}c._addHandlers();if(c._ie7){c._borderAndPadding("width",c.host);if(c.height!=="auto"){c._borderAndPadding("height",c.host)}}a.jqx.utilities.resize(c.host,null,true);a.jqx.utilities.resize(c.host,function(){if(c._fluidWidth){if(c._ie7){c.host.css("width",c.width);c._borderAndPadding("width",c.host)}for(var f=0;f<c._fileRows.length;f++){var d=c._fileRows[f];var h=d.fileRow;if(c._ie7){h.css("width","100%");c._borderAndPadding("width",h)}if(!c.renderFiles){c._setMaxWidth(d)}}if(c.rtl&&c._ieOldWebkit){for(var e=0;e<c._forms.length;e++){var g=c._browseButton.position();c._forms[e].form.css({left:g.left,top:g.top})}}}if(c._ie7&&c._fluidHeight){c.host.css("height",c.height);c._borderAndPadding("height",c.host)}})},render:function(){this._render(false)},refresh:function(b){if(b!==true){this._render(false)}},destroy:function(){var b=this;b.cancelAll();b._removeHandlers(true);b.host.remove()},browse:function(){if(a.jqx.browser.msie&&a.jqx.browser.version<10){return}var b=this;if(b.multipleFilesUpload===true||(b.multipleFilesUpload===false&&b._fileRows.length===0)){b._forms[b._forms.length-1].fileInput.click()}},_uploadFile:function(b){var c=this;if(c._uploadQueue.length===0){c._uploadQueue.push(b)}if(!c.renderFiles){b.uploadFile.add(b.cancelFile).hide();b.loadingElement.show()}b.fileInput.attr("name",c.fileInputName);c._raiseEvent("2",{file:b.fileName});b.form[0].submit();c._fileObjectToRemove=b},uploadFile:function(b){var c=this;c._uploadFile(c._fileRows[b])},uploadAll:function(){var c=this;if(c._fileRows.length>0){for(var b=c._fileRows.length-1;b>=0;b--){c._uploadQueue.push(c._fileRows[b])}c._uploadFile(c._fileRows[0])}},cancelFile:function(b){var c=this;c._removeSingleFileRow(c._fileRows[b])},cancelAll:function(){var c=this;if(c._fileRows.length>0){for(var b=0;b<c._fileRows.length;b++){c._removeFileRow(c._fileRows[b])}setTimeout(function(){c._browseButton.css("margin-bottom",0)},400);c._fileRows.length=0;c._hideButtons(true)}},propertyChangedHandler:function(e,m,c,k){var b=e.element.id;if(m==="localization"){if(k.browseButton&&(!c||k.browseButton!==c.browseButton)){e._browseButton.text(k.browseButton);e._browseButton.jqxButton({width:"auto"})}if(k.uploadButton&&(!c||k.uploadButton!==c.uploadButton)){e._uploadButton.text(k.uploadButton);e._uploadButton.jqxButton({width:"auto"})}if(k.cancelButton&&(!c||k.cancelButton!==c.cancelButton)){e._cancelButton.text(k.cancelButton);e._cancelButton.jqxButton({width:"auto"})}if(!e.renderFiles){if(k.uploadFileTooltip&&(!c||k.uploadFileTooltip!==c.uploadFileTooltip)){a("#"+b+" .jqx-file-upload-file-upload").attr("title",k.uploadFileTooltip)}if(k.uploadFileTooltip&&(!c||k.cancelFileTooltip!==c.cancelFileTooltip)){a("#"+b+" .jqx-file-upload-file-cancel").attr("title",k.cancelFileTooltip)}}return}if(k!==c){switch(m){case"width":e.host.css("width",k);if(e._ie7){e._borderAndPadding("width",e.host);for(var d=0;d<e._fileRows.length;d++){var n=e._fileRows[d].fileRow;n.css("width","100%");e._borderAndPadding("width",n)}}e._fluidWidth=typeof k==="string"&&k.charAt(k.length-1)==="%";return;case"height":e.host.css("height",k);if(e._ie7){e._borderAndPadding("height",e.host)}e._fluidHeight=typeof k==="string"&&k.charAt(k-1)==="%";return;case"uploadUrl":for(var g=0;g<e._forms.length;g++){e._forms[g].form.attr("action",k)}return;case"accept":for(var f=0;f<e._forms.length;f++){e._forms[f].fileInput.attr("accept",k)}return;case"theme":a.jqx.utilities.setTheme(c,k,e.host);e._browseButton.jqxButton({theme:k});e._uploadButton.jqxButton({theme:k});e._cancelButton.jqxButton({theme:k});return;case"browseTemplate":e._browseButton.jqxButton({template:k});return;case"uploadTemplate":e._uploadButton.jqxButton({template:k});return;case"cancelTemplate":e._cancelButton.jqxButton({template:k});return;case"disabled":e._browseButton.jqxButton({disabled:k});e._uploadButton.jqxButton({disabled:k});e._cancelButton.jqxButton({disabled:k});if(k===true){e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(e.toThemeProperty("jqx-fill-state-disabled"))}return;case"rtl":var h=function(l){var o=l?"addClass":"removeClass";e._browseButton[o](e.toThemeProperty("jqx-file-upload-button-browse-rtl"));e._cancelButton[o](e.toThemeProperty("jqx-file-upload-button-cancel-rtl"));e._uploadButton[o](e.toThemeProperty("jqx-file-upload-button-upload-rtl"));if(a.jqx.browser.msie&&a.jqx.browser.version>8){e._uploadButton[o](e.toThemeProperty("jqx-file-upload-button-upload-rtl-ie"))}for(var i=0;i<e._fileRows.length;i++){var j=e._fileRows[i];j.fileNameContainer[o](e.toThemeProperty("jqx-file-upload-file-name-rtl"));j.cancelFile[o](e.toThemeProperty("jqx-file-upload-file-cancel-rtl"));j.uploadFile[o](e.toThemeProperty("jqx-file-upload-file-upload-rtl"));j.loadingElement[o](e.toThemeProperty("jqx-file-upload-loading-element-rtl"))}};h(k);return}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_setSize:function(){var b=this;b.host.css("width",b.width);b.host.css("height",b.height)},_borderAndPadding:function(d,c){var b;if(d==="width"){b=parseInt(c.css("border-left-width"),10)+parseInt(c.css("border-right-width"),10)+parseInt(c.css("padding-left"),10)+parseInt(c.css("padding-right"),10)}else{b=parseInt(c.css("border-top-width"),10)+parseInt(c.css("border-bottom-width"),10)+parseInt(c.css("padding-top"),10)+parseInt(c.css("padding-bottom"),10)}c.css(d,c[d]()-b)},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget jqx-widget-content jqx-rc-all jqx-file-upload"));if(b.disabled===true){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}},_appendElements:function(){var g=this,c="Browse",b=90,h="Upload All",e=90,d="Cancel All",f=90;var i=g.element.id;if(g.localization){if(g.localization.browseButton){c=g.localization.browseButton;b="auto"}if(g.localization.uploadButton){h=g.localization.uploadButton;e="auto"}if(g.localization.cancelButton){d=g.localization.cancelButton;f="auto"}}g._browseButton=a('<button id="'+i+'BrowseButton" class="'+g.toThemeProperty("jqx-file-upload-button-browse")+'">'+c+"</button>");g.host.append(g._browseButton);g._browseButton.jqxButton({theme:g.theme,width:b,template:g.browseTemplate,disabled:g.disabled});g._browseButton.after('<div style="clear: both;"></div>');g._bottomButtonsContainer=a('<div class="'+g.toThemeProperty("jqx-file-upload-buttons-container")+'"></div>');g.host.append(g._bottomButtonsContainer);g._uploadButton=a('<button id="'+i+'UploadButton" class="'+g.toThemeProperty("jqx-file-upload-button-upload")+'">'+h+"</button>");g._bottomButtonsContainer.append(g._uploadButton);g._uploadButton.jqxButton({theme:g.theme,width:e,template:g.uploadTemplate,disabled:g.disabled});g._cancelButton=a('<button id="'+i+'CancelButton" class="'+g.toThemeProperty("jqx-file-upload-button-cancel")+'">'+d+"</button>");g._bottomButtonsContainer.append(g._cancelButton);g._cancelButton.jqxButton({theme:g.theme,width:f,template:g.cancelTemplate,disabled:g.disabled});g._bottomButtonsContainer.after('<div style="clear: both;"></div>');if(g.rtl){g._browseButton.addClass(g.toThemeProperty("jqx-file-upload-button-browse-rtl"));g._cancelButton.addClass(g.toThemeProperty("jqx-file-upload-button-cancel-rtl"));g._uploadButton.addClass(g.toThemeProperty("jqx-file-upload-button-upload-rtl"));if(a.jqx.browser.msie&&a.jqx.browser.version>8){g._uploadButton.addClass(g.toThemeProperty("jqx-file-upload-button-upload-rtl-ie"))}}g._uploadIframe=a('<iframe name="'+i+'Iframe" class="'+g.toThemeProperty("jqx-file-upload-iframe")+'" src=""></iframe>');g.host.append(g._uploadIframe);g._iframeInitialized=false;g._uploadQueue=[];g._forms=[];g._addFormAndFileInput();g._fileRows=[]},_addFormAndFileInput:function(){var f=this;var i=f.element.id;var e=a('<form class="'+f.toThemeProperty("jqx-file-upload-form")+'" action="'+f.uploadUrl+'" target="'+i+'Iframe" method="post" enctype="multipart/form-data"></form>');f.host.append(e);var d=a('<input type="file" class="'+f.toThemeProperty("jqx-file-upload-file-input")+'" />');if(f.accept){d.attr("accept",f.accept)}e.append(d);if(f._ieOldWebkit){var c=f._browseButton.position();var g=f._browseButton.outerWidth();var h=f._browseButton.outerHeight();var b=f.rtl&&f._ie7?12:0;e.css({left:c.left-b,top:c.top,width:g,height:h});e.addClass(f.toThemeProperty("jqx-file-upload-form-ie9"));d.addClass(f.toThemeProperty("jqx-file-upload-file-input-ie9"));f.addHandler(e,"mouseenter.jqxFileUpload"+i,function(){f._browseButton.addClass(f.toThemeProperty("jqx-fill-state-hover"))});f.addHandler(e,"mouseleave.jqxFileUpload"+i,function(){f._browseButton.removeClass(f.toThemeProperty("jqx-fill-state-hover"))});f.addHandler(e,"mousedown.jqxFileUpload"+i,function(){f._browseButton.addClass(f.toThemeProperty("jqx-fill-state-pressed"))});f.addHandler(a(document),"mouseup.jqxFileUpload"+i,function(){if(f._browseButton.hasClass("jqx-fill-state-pressed")){f._browseButton.removeClass(f.toThemeProperty("jqx-fill-state-pressed"))}})}f.addHandler(d,"change.jqxFileUpload"+i,function(){var l=this.value,j;if(!a.jqx.browser.mozilla){if(l.indexOf("fakepath")!==-1){l=l.slice(12)}else{l=l.slice(l.lastIndexOf("\\")+1)}}if(a.jqx.browser.msie&&a.jqx.browser.version<10){j="IE9 and earlier do not support getting the file size."}else{j=this.files[0].size}var k=f._addFileRow(l,e,d,j);if(f._fileRows.length===1){f._browseButton.css("margin-bottom","10px");f._hideButtons(false)}if(f._ieOldWebkit){f.removeHandler(e,"mouseenter.jqxFileUpload"+i);f.removeHandler(e,"mouseleave.jqxFileUpload"+i);f.removeHandler(e,"mousedown.jqxFileUpload"+i)}f._addFormAndFileInput();f.removeHandler(d,"change.jqxFileUpload"+i);if(f.autoUpload===true){f._uploadFile(k)}});if(f._ieOldWebkit===true){f.addHandler(d,"click.jqxFileUpload"+i,function(j){if(f.multipleFilesUpload===false&&f._fileRows.length>0){j.preventDefault()}})}f._forms.push({form:e,fileInput:d})},_addFileRow:function(f,b,e,d){var h=this,l,g,m,j,n,i="Cancel",k="Upload File";l=a('<div class="'+h.toThemeProperty("jqx-widget-content jqx-rc-all jqx-file-upload-file-row")+'"></div>');if(h._fileRows.length===0){h._browseButton.after(l)}else{h._fileRows[h._fileRows.length-1].fileRow.after(l)}if(!h.renderFiles){g=a('<div class="'+h.toThemeProperty("jqx-widget-header jqx-rc-all jqx-file-upload-file-name")+'">'+f+"</div>");l.append(g);if(h.localization){if(h.localization.cancelFileTooltip){i=h.localization.cancelFileTooltip}if(h.localization.uploadFileTooltip){k=h.localization.uploadFileTooltip}}j=a('<div class="'+h.toThemeProperty("jqx-widget-header jqx-rc-all jqx-file-upload-file-cancel")+'" title="'+i+'"><div class="'+h.toThemeProperty("jqx-icon-close jqx-file-upload-icon")+'"></div></div>');l.append(j);n=a('<div class="'+h.toThemeProperty("jqx-widget-header jqx-rc-all jqx-file-upload-file-upload")+'" title="'+k+'"><div class="'+h.toThemeProperty("jqx-icon-arrow-up jqx-file-upload-icon jqx-file-upload-icon-upload")+'"></div></div>');l.append(n);m=a('<div class="'+h.toThemeProperty("jqx-file-upload-loading-element")+'"></div>');l.append(m);if(h.rtl){g.addClass(h.toThemeProperty("jqx-file-upload-file-name-rtl"));j.addClass(h.toThemeProperty("jqx-file-upload-file-cancel-rtl"));n.addClass(h.toThemeProperty("jqx-file-upload-file-upload-rtl"));m.addClass(h.toThemeProperty("jqx-file-upload-loading-element-rtl"))}h._setMaxWidth({fileNameContainer:g,uploadFile:n,cancelFile:j})}else{l.html(h.renderFiles(f))}if(h._ie7){h._borderAndPadding("width",l);h._borderAndPadding("height",l);if(!h.renderFiles){h._borderAndPadding("height",g);h._borderAndPadding("height",n);h._borderAndPadding("height",j)}}var c={fileRow:l,fileNameContainer:g,fileName:f,uploadFile:n,cancelFile:j,loadingElement:m,form:b,fileInput:e,index:h._fileRows.length};h._addFileHandlers(c);h._fileRows.push(c);h._raiseEvent("0",{file:f,size:d});return c},_setMaxWidth:function(c){var e=this;var f=c.cancelFile.outerWidth(true)+c.uploadFile.outerWidth(true);var b=e._ie7?6:0;var d=e.host.width()-parseInt(e.host.css("padding-left"),10)-parseInt(e.host.css("padding-right"),10)-f-b-7;c.fileNameContainer.css("max-width",d)},_addFileHandlers:function(b){var c=this;if(!c.renderFiles){var d=c.element.id;c.addHandler(b.uploadFile,"mouseenter.jqxFileUpload"+d,function(){if(c.disabled===false){b.uploadFile.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.uploadFile,"mouseleave.jqxFileUpload"+d,function(){if(c.disabled===false){b.uploadFile.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.uploadFile,"click.jqxFileUpload"+d,function(){if(c.disabled===false){c._uploadFile(b)}});c.addHandler(b.cancelFile,"mouseenter.jqxFileUpload"+d,function(){if(c.disabled===false){b.cancelFile.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.cancelFile,"mouseleave.jqxFileUpload"+d,function(){if(c.disabled===false){b.cancelFile.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}});c.addHandler(b.cancelFile,"click.jqxFileUpload"+d,function(){if(c.disabled===false){c._removeSingleFileRow(b)}})}},_removeSingleFileRow:function(c){var d=this;d._removeFileRow(c);d._fileRows.splice(c.index,1);if(d._fileRows.length===0){setTimeout(function(){d._browseButton.css("margin-bottom",0)},400);d._hideButtons(true)}else{for(var b=0;b<d._fileRows.length;b++){d._fileRows[b].index=b}}},_removeFileRow:function(b){var c=this;var d=c.element.id;if(!c.renderFiles){c.removeHandler(b.uploadFile,"mouseenter.jqxFileUpload"+d);c.removeHandler(b.uploadFile,"mouseleave.jqxFileUpload"+d);c.removeHandler(b.uploadFile,"click.jqxFileUpload"+d);c.removeHandler(b.cancelFile,"mouseenter.jqxFileUpload"+d);c.removeHandler(b.cancelFile,"mouseleave.jqxFileUpload"+d);c.removeHandler(b.cancelFile,"click.jqxFileUpload"+d)}b.fileRow.fadeOut(function(){b.fileRow.remove();b.form.remove()});c._raiseEvent("1",{file:b.fileName})},_hideButtons:function(b){var c=this;if(b===true){c._bottomButtonsContainer.fadeOut()}else{c._bottomButtonsContainer.fadeIn()}},_addHandlers:function(){var b=this;var c=b.element.id;if(!b._ieOldWebkit){b.addHandler(b._browseButton,"click.jqxFileUpload"+c,function(){b.browse()})}b.addHandler(b._uploadButton,"click.jqxFileUpload"+c,function(){b.uploadAll()});b.addHandler(b._cancelButton,"click.jqxFileUpload"+c,function(){b.cancelAll()});b.addHandler(b._uploadIframe,"load.jqxFileUpload"+c,function(){if(a.jqx.browser.chrome||a.jqx.browser.webkit){b._iframeInitialized=true}if(b._iframeInitialized===false){b._iframeInitialized=true}else{var d=b._uploadIframe.contents().find("body").html();b._raiseEvent("3",{file:b._uploadQueue[b._uploadQueue.length-1].fileName,response:d});if(b._fileObjectToRemove){b._removeSingleFileRow(b._fileObjectToRemove);b._fileObjectToRemove=null}b._uploadQueue.pop();if(b._uploadQueue.length>0){b._uploadFile(b._uploadQueue[b._uploadQueue.length-1])}}})},_removeHandlers:function(b){var d=this;var e=d.element.id;d.removeHandler(d._browseButton,"click.jqxFileUpload"+e);d.removeHandler(d._uploadButton,"click.jqxFileUpload"+e);d.removeHandler(d._cancelButton,"click.jqxFileUpload"+e);d.removeHandler(d._uploadIframe,"load.jqxFileUpload"+e);if(b===true){var c=d._forms[d._forms.length-1];d.removeHandler(c.fileInput,"change.jqxFileUpload"+e);if(d._ieOldWebkit){d.removeHandler(c.form,"mouseenter.jqxFileUpload"+e);d.removeHandler(c.form,"mouseleave.jqxFileUpload"+e);d.removeHandler(c.form,"mousedown.jqxFileUpload"+e);d.removeHandler(a("body"),"mouseup.jqxFileUpload"+e)}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxformattedinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxformattedinput.js
new file mode 100644 (file)
index 0000000..0890579
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxFormattedInput","",{});a.extend(a.jqx._jqxFormattedInput.prototype,{defineInstance:function(){var b={width:null,height:null,radix:10,decimalNotation:"default",value:"0",min:"-9223372036854775808",max:"9223372036854775807",upperCase:false,spinButtons:true,spinButtonsStep:1,dropDown:false,dropDownWidth:null,popupZIndex:20000,placeHolder:"",roundedCorners:true,disabled:false,rtl:false,_opened:false,$popup:a("<ul></ul>"),item:'<li><a href="#"></a></li>',events:["open","close","change","radixChange"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._Long();b._regex={2:new RegExp(/([0-1])/),8:new RegExp(/([0-7])/),10:new RegExp(/([0-9\-])/),16:new RegExp(/([0-9]|[a-f])/i)};b.render()},render:function(){var e=this;e._radixNumber=e._getRadix(e.radix);if(e.value!==""){e._number=new e.longObj.math.Long.fromString((e.value).toString(),e._radixNumber)}if(e.baseHost){e.host=e.baseHost;e.element=e.host[0]}if(this.element.nodeName.toLowerCase()==="div"){this.baseHost=this.element;var b=this.host.find("input");var d=false;a.each(b,function(){var f=this.type;if(f===null||f==="text"||f==="textarea"){b=a(this);d=true;return false}});if(!d){throw new Error("jqxFormattedInput: Missing Text Input in the Input Group")}if(b.length>0){this.baseHost=a(this.element);this.host=b;this.element=b[0];this.baseHost.addClass(this.toThemeProperty("jqx-widget"));this.baseHost.addClass(this.toThemeProperty("jqx-rc-all"));this.baseHost.addClass(this.toThemeProperty("jqx-input-group"));var c=this.baseHost.children();a.each(c,function(f){a(this).addClass(e.toThemeProperty("jqx-input-group-addon"));a(this).removeClass(e.toThemeProperty("jqx-rc-all"));if(f===0){a(this).addClass(e.toThemeProperty("jqx-rc-l"))}if(f===c.length-1){a(this).addClass(e.toThemeProperty("jqx-rc-r"))}if(this!==e.element){a(this).addClass(e.toThemeProperty("jqx-fill-state-normal"))}if(this.nodeName.toLowerCase()==="div"){e.appendSpinButtons=function(i){e._spinButtonsContainer=a(i);e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-formatted-input-spin-buttons-container"));var h='<div class="'+e.toThemeProperty("jqx-fill-state-normal jqx-formatted-input-spin-button")+'"><div class="'+e.toThemeProperty("jqx-input-icon")+'"></div></div>';e._upbutton=a(h);e._spinButtonsContainer.append(e._upbutton);e._downbutton=a(h);e._spinButtonsContainer.append(e._downbutton);e._upArrow=e._upbutton.find("div");e._upArrow.addClass(e.toThemeProperty("jqx-icon-arrow-up"));e._downArrow=e._downbutton.find("div");e._downArrow.addClass(e.toThemeProperty("jqx-icon-arrow-down"));e._spinButtonsStepLong=new e.longObj.math.Long.fromNumber(e.spinButtonsStep)};var g=function(h){e._addon=a(h);e._addon.addClass(e.toThemeProperty("jqx-formatted-input-addon"));if(!e._arrow){e._arrow=a('<div class="'+e.toThemeProperty("jqx-icon")+" "+e.toThemeProperty("jqx-icon-arrow-down")+'"></div>');e._arrow.appendTo(e._addon)}};if(e.rtl===false){if(!e._spinButtonsContainer&&e.spinButtons===true){e.appendSpinButtons(this)}else{if(!e._addon&&e.dropDown===true&&((f===2)||(f===1&&e.spinButtons===false))){g(this)}}}else{if(!e._addon&&e.dropDown===true){g(this);if(e.spinButtons===true){e._addon.addClass(e.toThemeProperty("jqx-formatted-input-addon-rtl"))}}else{if(!e._spinButtonsContainer&&e.spinButtons===true&&((f===1)||(f===0&&e.dropDown===false))){e.appendSpinButtons(this);e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-formatted-input-spin-buttons-container-rtl"));if(e.dropDown===true){e._addon.addClass(e.toThemeProperty("jqx-formatted-input-addon-rtl"))}}}}}})}}e._inputAndAddon=e.host;if(e.baseHost){if(e._spinButtonsContainer){e._inputAndAddon=e._inputAndAddon.add(e._spinButtonsContainer)}if(e._addon){e._inputAndAddon=e._inputAndAddon.add(e._addon)}}e.removeHandlers();this.addHandlers();if(this.rtl){this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.host.attr("role","textbox");a.jqx.aria(this,"aria-autocomplete","both");a.jqx.aria(this,"aria-disabled",this.disabled);a.jqx.aria(this,"aria-readonly",false);a.jqx.aria(this,"aria-multiline",false);a.jqx.aria(this,"aria-haspopup",true);if(e.value!==""&&e.value!==null){if(e.upperCase===true){e.host.addClass(e.toThemeProperty("jqx-formatted-input-upper-case"))}else{e.host.addClass(e.toThemeProperty("jqx-formatted-input-lower-case"))}if(e._radixNumber===10&&e.decimalNotation==="exponential"){e.element.value=e._getDecimalNotation("exponential")}else{e.element.value=e.value}}else{if(e._spinButtonsContainer){e._spinButtonsContainer.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}}if(e._radixNumber!==10&&e.min.toString()==="-9223372036854775808"){e._minLong=new e.longObj.math.Long.fromNumber(e.min)}else{e._setMinMax("min")}if(e._radixNumber!==10&&e.max.toString()==="9223372036854775807"){e._maxLong=new e.longObj.math.Long.fromNumber(e.max)}else{e._setMinMax("max")}},_refreshClasses:function(c){var b=c?"addClass":"removeClass";this.host[b](this.toThemeProperty("jqx-widget-content"));this.host[b](this.toThemeProperty("jqx-input"));this.host[b](this.toThemeProperty("jqx-formatted-input"));this.host[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){this.$popup[b](this.toThemeProperty("jqx-noshadow"))}this.$popup[b](this.toThemeProperty("jqx-input-popup"));this.$popup[b](this.toThemeProperty("jqx-menu"));this.$popup[b](this.toThemeProperty("jqx-menu-vertical"));this.$popup[b](this.toThemeProperty("jqx-menu-dropdown"));this.$popup[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-widget-content"));if(this.roundedCorners){this.host[b](this.toThemeProperty("jqx-rc-all"));this.$popup[b](this.toThemeProperty("jqx-rc-all"));if(this.baseHost){this.baseHost[b](this.toThemeProperty("jqx-rc-all"));if(this.rtl===false){this.host[b](this.toThemeProperty("jqx-rc-l"));if(this._addon){this._addon[b](this.toThemeProperty("jqx-rc-r"))}}else{this.host[b](this.toThemeProperty("jqx-rc-r"));if(this._addon){this._addon[b](this.toThemeProperty("jqx-rc-l"))}}}}else{this.host.removeClass(this.toThemeProperty("jqx-rc-all"));this.$popup.removeClass(this.toThemeProperty("jqx-rc-all"));if(this.baseHost){this.baseHost.removeClass(this.toThemeProperty("jqx-rc-all"));if(this.rtl===false){this.host.removeClass(this.toThemeProperty("jqx-rc-l"));if(this._addon){this._addon.removeClass(this.toThemeProperty("jqx-rc-r"))}}else{this.host.removeClass(this.toThemeProperty("jqx-rc-r"));if(this._addon){this._addon.removeClass(this.toThemeProperty("jqx-rc-l"))}}}}if(this.disabled){this.host[b](this.toThemeProperty("jqx-fill-state-disabled"));if(this.baseHost){if(this._spinButtonsContainer){this._spinButtonsContainer[b](this.toThemeProperty("jqx-fill-state-disabled"))}if(this._addon){this._addon[b](this.toThemeProperty("jqx-fill-state-disabled"))}}}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));if(this.baseHost&&this.value!==""&&this.value!==null){if(this._spinButtonsContainer){this._spinButtonsContainer.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(this._addon){this._addon.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}}}},selectAll:function(){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},selectLast:function(){var b=this.host;this.selectStart(b[0].value.length)},selectFirst:function(){this.selectStart(0)},selectStart:function(c){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(c,c)}else{var d=b[0].createTextRange();d.collapse(true);d.moveEnd("character",c);d.moveStart("character",c);d.select()}},10)},focus:function(){try{this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},refresh:function(){var f=this;this._refreshClasses(false);this._refreshClasses(true);if(!this.baseHost){if(this.width){this.host.width(this.width)}if(this.height){this.host.height(this.height)}}else{if(this.width){this.baseHost.width(this.width)}if(this.height){this.baseHost.height(this.height);var e=0;var j=this.baseHost.height()-2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.baseHost.css("display","inline-block")}a.each(this.baseHost.children(),function(){a(this).css("height","100%");if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(this).css("height",j+"px")}if(this!==f.element){e+=a(this).outerWidth()}});var c=(typeof f.width==="string"&&f.width.charAt(f.width.length-1)==="%")?1:0;this.host.css("width",this.baseHost.width()-e-c+"px");if(a.jqx.browser.msie&&a.jqx.browser.version<9){if(f._spinButtonsContainer){if(f.rtl===false||f.rtl===true&&f._addon){f._spinButtonsContainer.css("border-left-width","0")}}if(f._addon){if(f.rtl===false){f._addon.css("border-left-width","0")}else{if(!f._spinButtonsContainer){f._addon.css("border-right-width","0")}}}var h=0;if(a.jqx.browser.version<8){var g=0;var d=parseInt(f.host.css("border-left-width"),10)+parseInt(f.host.css("border-right-width"),10);var i=parseInt(f.host.css("padding-left"),10)+parseInt(f.host.css("padding-right"),10);if(f._spinButtonsContainer){d+=parseInt(f._spinButtonsContainer.css("border-left-width"),10)+parseInt(f._spinButtonsContainer.css("border-right-width"),10);i+=parseInt(f._spinButtonsContainer.css("padding-left"),10)+parseInt(f._spinButtonsContainer.css("padding-right"),10);if(!f._addon){g=2}}if(f._addon){d+=parseInt(f._addon.css("border-left-width"),10)+parseInt(f._addon.css("border-right-width"),10);i+=parseInt(f._addon.css("padding-left"),10)+parseInt(f._addon.css("padding-right"),10);if(!f._spinButtonsContainer){g=2}}f.host.width(f.host.width()-(i+d)-g);h=6}f.host.height(f.baseHost.height()-(parseInt(f.host.css("border-top-width"),10)+parseInt(f.host.css("border-bottom-width"),10)+parseInt(f.host.css("padding-top"),10)+parseInt(f.host.css("padding-bottom"),10)+h));var b=f.host.height()+"px";f.host.css("min-height",b);f.host.css("line-height",b)}}}this.host.attr("disabled",this.disabled);if(!this.host.attr("placeholder")){this._refreshPlaceHolder()}},_refreshPlaceHolder:function(){if("placeholder" in this.element){this.host.attr("placeHolder",this.placeHolder)}else{var b=this;if(this.element.value===""){this.element.value=this.placeHolder;this.host.focus(function(){if(b.element.value===b.placeHolder){b.element.value=""}});this.host.blur(function(){if(b.element.value===""||b.element.value===b.placeHolder){b.element.value=b.placeHolder}})}}},destroy:function(){this.removeHandlers();if(this.baseHost){a.jqx.utilities.resize(this.baseHost,null,true);this.baseHost.remove()}else{a.jqx.utilities.resize(this.host,null,true);this.host.remove()}if(this.$popup){this.$popup.remove()}},propertyChangedHandler:function(b,d,g,f){if(d==="placeHolder"){b._refreshPlaceHolder();return}if(d==="theme"){a.jqx.utilities.setTheme(g,f,b.host);return}if(d==="disabled"){a.jqx.aria(b,"aria-disabled",b.disabled)}if(d==="value"&&g.toString().toUpperCase()!==f.toString().toUpperCase()){b.val(f);return}if(g!==f&&d==="radix"){b._changeRadix(f);return}if(g!==f&&d==="decimalNotation"&&b._radixNumber===10){if(f==="exponential"){b.element.value=b._getDecimalNotation("exponential")}else{b.element.value=b._number.toString(10)}}if(g!==f&&(d==="min"||d==="max")){b._setMinMax(d);b._validateValue(b.value,true);b.value=b.element.value;return}if(g!==f&&(d==="upperCase")&&b.element.value!==""){if(f===true){b.host.removeClass(b.toThemeProperty("jqx-formatted-input-lower-case"));b.host.addClass(b.toThemeProperty("jqx-formatted-input-upper-case"))}else{b.host.removeClass(b.toThemeProperty("jqx-formatted-input-upper-case"));b.host.addClass(b.toThemeProperty("jqx-formatted-input-lower-case"))}return}function c(i,j){var k=b.host.width();var h=i.outerWidth();if(j===false){b.host.width(k+h);i.hide();if(b.rtl===true){if(b.spinButtons===true){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-formatted-input-spin-buttons-container-rtl-border"))}if(b.dropDown===true){b._addon.removeClass(b.toThemeProperty("jqx-formatted-input-addon-rtl"))}}}else{b.host.width(k-h);i.show();if(b.rtl===true&&b.spinButtons===true&&b.dropDown===true){b._spinButtonsContainer.removeClass(b.toThemeProperty("jqx-formatted-input-spin-buttons-container-rtl-border"));b._addon.addClass(b.toThemeProperty("jqx-formatted-input-addon-rtl"))}}}function e(j,l){if(l===true){var k=a("<div></div>");if(b.baseHost){var h=b.baseHost.children("div");if((b.rtl===false&&j==="spinButtons")||(b.rtl===true&&j==="dropDown")){h.before(k)}else{h.after(k)}b.render();b.host.width(b.host.width()-k.outerWidth())}else{var n=b.element.id;b.host.removeAttr("id");b.host.wrap('<div id="'+n+'" style="display: inline-block;"></div>');var m=a("#"+n);if(b.rtl===false){m.append(k)}else{m.prepend(k)}var i=b.host.data();i.jqxFormattedInput.host=m;i.jqxFormattedInput.element=m[0];b.baseHost=m;b.baseHost.data(i);b.render();b.refresh()}}}if(d==="spinButtons"){if(g!==f){if(b._spinButtonsContainer){c(b._spinButtonsContainer,f)}else{e("spinButtons",f)}return}else{return}}if(g!==f&&d==="spinButtonsStep"){b._spinButtonsStepLong=new b.longObj.math.Long.fromNumber(f)}if(d==="dropDown"){if(g!==f){if(b._addon){c(b._addon,f)}else{e("dropDown",f)}return}else{return}}b.refresh()},select:function(d,e,b){var c=this;if(!b){b=c.$popup.find(".jqx-fill-state-pressed").attr("data-value")}c._changeRadix(parseInt(b,10));c._setMaxLength(true);c.close()},val:function(g){var f=this;if((g||g==="")&&!(typeof g==="object"&&a.isEmptyObject(g)===true)&&g!=="binary"&&g!=="octal"&&g!=="decimal"&&g!=="exponential"&&g!=="scientific"&&g!=="engineering"&&g!=="hexadecimal"){g=g.toString();if(g.toUpperCase()!==f.element.value.toString().toUpperCase()){var b=f.element.value;if(f.upperCase===true){g=g.toUpperCase()}var e=g.split("");for(var c=0;c<e.length;c++){if(!f._regex[""+f._radixNumber+""].test(e[c])){return}}var h=f._validateValue(g,true);f._raiseEvent("2",{value:h,oldValue:b,radix:f._radixNumber});f.value=h;return h}else{return g}}else{if(g&&!(typeof g==="object"&&a.isEmptyObject(g)===true)){if(g==="exponential"||g==="scientific"||g==="engineering"){return f._getDecimalNotation(g)}else{var d=f._getRadix(g);return f._number.toString(d)}}else{return f.element.value}}},_changeRadix:function(d){var f=this;var e=f._getRadix(d);var g=f.value!==""?f._number.toString(e):"";var b=f.radix;var c=f.value;f.radix=d;f._radixNumber=e;f.element.value=g;f.value=g;this._raiseEvent("3",{radix:d,oldRadix:b,value:g,oldValue:c})},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b;if(this.baseHost){b=this.baseHost.trigger(e)}else{b=this.host.trigger(e)}return b},open:function(){var f=this;f._setPopupOptions();f._render(f._popupOptions);if(a.jqx.isHidden(this.host)){return}var c;if(f.baseHost){c=a.extend({},f.baseHost.coord(true),{height:f.baseHost[0].offsetHeight})}else{c=a.extend({},f.host.coord(true),{height:f.host[0].offsetHeight})}if(this.$popup.parent().length===0){var e=this.element.id+"_popup";this.$popup[0].id=e;a.jqx.aria(this,"aria-owns",e)}this.$popup.appendTo(a(document.body)).css({position:"absolute",zIndex:this.popupZIndex,top:c.top+c.height,left:c.left}).show();var b=0;var d=this.$popup.children();a.each(d,function(){b+=a(this).outerHeight(true)-1});this.$popup.height(b);this._opened=true;if(f.baseHost){f._addon.addClass(f.toThemeProperty("jqx-fill-state-pressed jqx-combobox-arrow-selected"));f._arrow.addClass(f.toThemeProperty("jqx-icon-arrow-down-selected"))}this._raiseEvent("0",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",true);return this},close:function(){var b=this;this.$popup.hide();this._opened=false;if(b.baseHost){b._addon.removeClass(b.toThemeProperty("jqx-fill-state-pressed jqx-combobox-arrow-selected"));b._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-down-selected"))}this._raiseEvent("1",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",false);return this},_render:function(c){var e=this;c=a(c).map(function(h,j){var k=j;var f;switch(h){case 0:f=2;break;case 1:f=8;break;case 2:f=10;break;case 3:f=16;break}h=a(e.item).attr("data-value",f);h.find("a").html(k).attr("data-value",f);var g="";if(e.rtl){g=" "+e.toThemeProperty("jqx-rtl")+" "+e.toThemeProperty("jqx-formatted-input-item-rtl")}h[0].className=e.toThemeProperty("jqx-item")+" "+e.toThemeProperty("jqx-menu-item")+" "+e.toThemeProperty("jqx-formatted-input-item")+" "+e.toThemeProperty("jqx-rc-all")+g;return h[0]});var b;switch(e._radixNumber){case 2:b=0;break;case 8:b=1;break;case 10:b=2;break;case 16:b=3;break}c.eq(b).addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.$popup.html(c);if(!this.dropDownWidth){if(e.baseHost){var d=(typeof e.width==="string"&&e.width.charAt(e.width.length-1)==="%")?1:0;this.$popup.width(this.baseHost.outerWidth()-6-d)}else{this.$popup.width(this.host.outerWidth()-6)}}else{this.$popup.width(this.dropDownWidth)}return this},next:function(){var c=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=c.next();if(!b.length){b=a(this.$popup.find("li")[0])}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},prev:function(){var c=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=c.prev();if(!b.length){b=this.$popup.find("li").last()}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},addHandlers:function(){var c=this;this.addHandler(this.host,"focus",a.proxy(this.onFocus,this));this.addHandler(this.host,"blur",a.proxy(this.onBlur,this));this.addHandler(this.host,"keypress",a.proxy(this.keypress,this));this.addHandler(this.host,"keyup",a.proxy(this.keyup,this));this.addHandler(this.host,"keydown",a.proxy(this.keydown,this));this.addHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.on){this.$popup.on("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.bind("mouseenter","li",a.proxy(this.mouseenter,this))}this.addHandler(this.host,"change",function(f){f.stopPropagation();f.preventDefault()});if(c.baseHost){var d=c.baseHost.attr("id");if(c._spinButtonsContainer){var b=c._upbutton.add(c._downbutton);c.addHandler(c._upbutton,"mousedown.jqxFormattedInputSpinButtonUp"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._upbutton.addClass(c.toThemeProperty("jqx-fill-state-pressed"));c._incrementOrDecrement("add")}});c.addHandler(c._upbutton,"mouseup.jqxFormattedInputSpinButtonUp"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._upbutton.removeClass(c.toThemeProperty("jqx-fill-state-pressed"))}});c.addHandler(c._downbutton,"mousedown.jqxFormattedInputSpinButtonDown"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._downbutton.addClass(c.toThemeProperty("jqx-fill-state-pressed"));c._incrementOrDecrement("subtract")}});c.addHandler(c._downbutton,"mouseup.jqxFormattedInputSpinButtonDown"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._downbutton.removeClass(c.toThemeProperty("jqx-fill-state-pressed"))}});c.addHandler(b,"mouseenter.jqxFormattedInputSpinButtons"+d,function(g){if(!c.disabled&&c.value!==""&&c.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){c._upbutton.addClass(c.toThemeProperty("jqx-fill-state-hover"));c._upArrow.addClass(c.toThemeProperty("jqx-icon-arrow-up-hover"))}else{c._downbutton.addClass(c.toThemeProperty("jqx-fill-state-hover"));c._downArrow.addClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}}});c.addHandler(b,"mouseleave.jqxFormattedInputSpinButtons"+d,function(g){if(!c.disabled&&c.value!==""&&c.value!==null){var f=a(g.target);if(f.hasClass("jqx-icon-arrow-up")||f.children().hasClass("jqx-icon-arrow-up")){c._upbutton.removeClass(c.toThemeProperty("jqx-fill-state-hover"));c._upArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-up-hover"))}else{c._downbutton.removeClass(c.toThemeProperty("jqx-fill-state-hover"));c._downArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}}});c.addHandler(a("body"),"mouseup.jqxFormattedInputSpinButtons"+d,function(){c._upbutton.add(c._downbutton).removeClass(c.toThemeProperty("jqx-fill-state-pressed"))})}if(c._addon){c.addHandler(c._addon,"click.jqxFormattedInputAddon"+d,function(){if(!c.disabled){if(c._opened){c.close()}else{c.open()}}});c.addHandler(c._addon,"mouseenter.jqxFormattedInputAddon"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._addon.addClass(c.toThemeProperty("jqx-fill-state-hover jqx-combobox-arrow-hover"));c._arrow.addClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}});c.addHandler(c._addon,"mouseleave.jqxFormattedInputAddon"+d,function(){if(!c.disabled&&c.value!==""&&c.value!==null){c._addon.removeClass(c.toThemeProperty("jqx-fill-state-hover jqx-combobox-arrow-hover"));c._arrow.removeClass(c.toThemeProperty("jqx-icon-arrow-down-hover"))}});c.addHandler(c._addon.add(c._arrow),"blur.jqxFormattedInputAddon"+d,function(){if(c._opened&&!c.disabled){c.close()}})}a.jqx.utilities.resize(c.baseHost,function(){if(c._opened===true){c.close()}var e=0;if(c._spinButtonsContainer){e+=c._spinButtonsContainer.outerWidth()}if(c._addon){e+=c._addon.outerWidth()}c.host.css("width",c.baseHost.width()-e-1)})}},removeHandlers:function(){var c=this;this.removeHandler(this.host,"focus",a.proxy(this.onFocus,this));this.removeHandler(this.host,"blur",a.proxy(this.onBlur,this));this.removeHandler(this.host,"keypress",a.proxy(this.keypress,this));this.removeHandler(this.host,"keyup",a.proxy(this.keyup,this));this.removeHandler(this.host,"keydown",a.proxy(this.keydown,this));this.removeHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.off){this.$popup.off("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.unbind("mouseenter","li",a.proxy(this.mouseenter,this))}if(c.baseHost){var d=c.baseHost.attr("id");if(c._spinButtonsContainer){var b=c._upbutton.add(c._downbutton);c.removeHandler(c._upbutton,"mousedown.jqxFormattedInputSpinButtonUp"+d);c.removeHandler(c._upbutton,"mouseup.jqxFormattedInputSpinButtonUp"+d);c.removeHandler(c._downbutton,"mousedown.jqxFormattedInputSpinButtonDown"+d);c.removeHandler(c._downbutton,"mouseup.jqxFormattedInputSpinButtonDown"+d);c.removeHandler(b,"mouseenter.jqxFormattedInputSpinButtons"+d);c.removeHandler(b,"mouseleave.jqxFormattedInputSpinButtons"+d);c.removeHandler(a("body"),"mouseup.jqxFormattedInputSpinButtons"+d)}if(c._addon){c.removeHandler(c._addon,"click.jqxFormattedInputAddon"+d);c.removeHandler(c._addon,"mouseenter.jqxFormattedInputAddon"+d);c.removeHandler(c._addon,"mouseleave.jqxFormattedInputAddon"+d);c.removeHandler(c._addon.add(c._arrow),"blur.jqxFormattedInputAddon"+d)}}},move:function(b){if(!this._opened){return}switch(b.keyCode){case 9:case 13:case 27:b.preventDefault();break;case 38:b.preventDefault();this.prev();break;case 40:b.preventDefault();this.next();break}b.stopPropagation()},keydown:function(k){var j=this;this.suppressKeyPressRepeat=~a.inArray(k.keyCode,[40,38,9,13,27]);this.move(k);var o=!k.charCode?k.which:k.charCode,m=String.fromCharCode(o);if(o>=96&&o<=105){m=o-96;o=o-48}if(k.altKey===true){if(o===40){if(j._addon){this.open()}return}else{if(o===38){if(j._addon){this.close()}return}}}if(k.ctrlKey===true){if(o===67){return}else{if(o===65){j.selectAll();return}}}var d=[8,9,13,37,38,39,40,46,88];var i=j._regex[""+j._radixNumber+""];if(d.indexOf(o)===-1&&(!i.test(m)&&!i.test(k.key)&&!i.test(k["char"]))){k.preventDefault();return false}else{var l=j.host[0].selectionStart;var g=j.host[0].selectionEnd-l;var f=this._getCaretPosition(this.host[0]);var b=this.element.value;var c=b.split("");if(o===8){if(g>0){c.splice(l,g)}else{c.splice(f-1,1)}}else{if(o===46){if(g>0){c.splice(l,g)}else{c.splice(f,1)}}else{if(o===88){if(k.ctrlKey===true){if(g>0){c.splice(l,g)}}else{k.preventDefault()}}else{if(o===189){if(c[0]==="-"){c.splice(0,1);j._minus=false}else{c.splice(0,0,"-");j._minus=true}k.preventDefault()}else{var h=d.indexOf(o)===-1?m:"";if(g>0){c.splice(l,g);c.splice(l,0,h)}else{c.splice(f,0,h)}}}}}c=c.join("");if(c!==b){var n=j._validateValue(c,false);if(n===false){j._inputAndAddon.addClass(j.toThemeProperty("jqx-input-invalid"))}else{j._inputAndAddon.removeClass(j.toThemeProperty("jqx-input-invalid"))}}}},keypress:function(c){var b=this;if(b.suppressKeyPressRepeat){return}b.move(c)},keyup:function(c){var b=this;switch(c.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(this._opened){this.select(c,this)}else{b._change()}break;case 27:if(!this._opened){return}this.close();break;case 189:if(b._radixNumber===10){if(b._minus===true){b.element.value="-"+b.element.value}else{b.element.value=b.element.value.slice(1)}}break}c.stopPropagation();c.preventDefault();if(b.element.value!==""){if(b.upperCase){b.host.addClass(b.toThemeProperty("jqx-formatted-input-upper-case"))}else{b.host.addClass(b.toThemeProperty("jqx-formatted-input-lower-case"))}if(b._spinButtonsContainer){b._spinButtonsContainer.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}}else{b.host.removeClass(b.toThemeProperty("jqx-formatted-input-upper-case jqx-formatted-input-lower-case"));if(b._spinButtonsContainer){b._spinButtonsContainer.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}}},_getCaretPosition:function(b){var d=0;if(document.selection){b.focus();var c=document.selection.createRange();c.moveStart("character",-b.value.length);d=c.text.length}else{if(b.selectionStart||b.selectionStart==="0"){d=b.selectionStart}}return(d)},onBlur:function(){var b=this;if(b._opened){b.close()}b._setMaxLength();b._inputAndAddon.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._change();if(b._radixNumber===10&&b.decimalNotation==="exponential"){b.element.value=b._getDecimalNotation("exponential")}b._refreshPlaceHolder()},onFocus:function(){var b=this;b._setMaxLength(true);b._inputAndAddon.addClass(b.toThemeProperty("jqx-fill-state-focus"));if(b._radixNumber===10&&b.decimalNotation==="exponential"){b.element.value=b._number.toString(10)}},click:function(c){c.stopPropagation();c.preventDefault();var b=a(c.target).attr("data-value");this.select(c,this,b)},mouseenter:function(b){this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed"));a(b.currentTarget).addClass(this.toThemeProperty("jqx-fill-state-pressed"))},_change:function(){var c=this;var b=c.value;var d=c._validateValue(c.element.value,true);c._inputAndAddon.removeClass(c.toThemeProperty("jqx-input-invalid"));if(d.toUpperCase()!==b.toString().toUpperCase()){c._raiseEvent("2",{value:d,oldValue:b,radix:c._radixNumber});c.value=d}},_getRadix:function(b){switch(b){case 10:case"decimal":return 10;case 2:case"binary":return 2;case 8:case"octal":return 8;case 16:case"hexadecimal":return 16}},_setPopupOptions:function(){var b=this;b._popupOptions=new Array();if(b.value!==""){b._popupOptions.push(b._number.toString(2)+" <em>(BIN)</em>");b._popupOptions.push(b._number.toString(8)+" <em>(OCT)</em>");b._popupOptions.push(b._number.toString(10)+" <em>(DEC)</em>");b._popupOptions.push(b._number.toString(16)+" <em>(HEX)</em>")}else{b._popupOptions.push("BIN");b._popupOptions.push("OCT");b._popupOptions.push("DEC");b._popupOptions.push("HEX")}},_validateValue:function(e,g){var d=this;if(e!==""){var f=new d.longObj.math.Long.fromString((e).toString(),d._radixNumber);if(f.lessThan(d._minLong)){if(g){d._number=d._minLong;var c=d._minLong.toString(d._radixNumber);if(d._radixNumber===16&&d.upperCase===true){c=c.toUpperCase()}d.element.value=c;return c}else{return false}}else{if(f.greaterThan(d._maxLong)){if(g){d._number=d._maxLong;var b=d._maxLong.toString(d._radixNumber);if(d._radixNumber===16&&d.upperCase===true){b=b.toUpperCase()}d.element.value=b;return b}else{return false}}else{if(g){d._number=f;d.element.value=e;return e}else{return true}}}}else{if(g){d.element.value="";return e}else{return true}}},_getNegativeDecimal:function(l,h){var o=l;if(h===8){var n=new Array();for(var f=0;f<11;f++){var b=parseInt(l.charAt(f),8).toString(2);while(b.length!==3){b="0"+b}n.push(b)}o=n.join("");if(o.charAt(0)==="0"){o=o.slice(1)}}else{if(h===16){var p=new Array();for(var e=0;e<8;e++){var m=parseInt(l.charAt(e),16).toString(2);while(m.length!==4){m="0"+m}p.push(m)}o=p.join("")}}var d="";for(var c=0;c<o.length;c++){var g=o.charAt(c)==="1"?"0":"1";d+=g}d=(parseInt(d,2)+1)*-1;return d},_setMaxLength:function(c){var d=this;var b;if(c===true){switch(d._radixNumber){case 2:b=64;break;case 8:b=22;break;case 10:b=20;break;case 16:b=16;break}}else{b=524288}d.host.attr("maxlength",b)},_setMinMax:function(b){var c=this;c["_"+b+"Long"]=new c.longObj.math.Long.fromString((c[b]).toString(),c._radixNumber)},_getDecimalNotation:function(c){var e=this;var f=e._number.toString(10);function h(k){if(k==="0"){return parseInt(k,10).toExponential()}var j;if(k.charAt(0)==="-"){j="-";k=k.slice(1,k.length)}else{j=""}var l=k.length-1;while(k.charAt(k.length-1)==="0"){k=k.slice(0,k.length-1)}var i=k.slice(1,k.length);if(i!==""){i="."+i}return j+""+k.charAt(0)+i+"e+"+l}function d(l){var k=l.indexOf("e");var j=l.slice(k+1);var i=l.slice(0,k+1);i=i.replace("e","×10");i+=e._toSuperScript(j);i=i.replace("+","");return i}function b(o){var n=o.indexOf("e");var m=o.slice(n+1);var k=o.slice(0,n);var l=parseInt(m,10)%3;k=k*Math.pow(10,l);var j=o.slice(0,n).length-l-2;if(j>=0){k=k.toFixed(j)}var i=k+"×10"+e._toSuperScript((parseInt(m,10)-l).toString());return i}var g=h(f);if(c==="scientific"){return d(g)}else{if(c==="engineering"){return b(g)}else{return g}}},_toSuperScript:function(h,g){var f="-0123456789";var d="⁻⁰¹²³⁴⁵⁶⁷⁸⁹";var c="";for(var e=0;e<h.length;e++){if(g===true){var b=d.indexOf(h.charAt(e));c+=(b!==-1?f[b]:h[e])}else{var j=f.indexOf(h.charAt(e));c+=(j!==-1?d[j]:h[e])}}return c},_incrementOrDecrement:function(c){var b=this;if(b._number.toString(b._radixNumber)!==b.element.value){b._number=new b.longObj.math.Long.fromString(b.element.value,b._radixNumber)}b._number=b._number[c](b._spinButtonsStepLong);b.element.value=b._number.toString(b._radixNumber);b._change()},_negativeBinary:function(u,r){var s="";u=u.slice(1,u.length);while(u.length<64){u="0"+u}for(var o=0;o<u.length;o++){var t=u.charAt(o)==="1"?"0":"1";s+=t}var d=true;var g="";for(var n=s.length-1;n>=0;n--){var q=s.charAt(n);var b;if(q==="0"){if(d===true){b="1";d=false}else{b="0"}}else{if(d===true){b="0"}else{b="1"}}g=b+""+g}switch(r){case 2:return g;case 8:g="00"+g;var f="";for(var m=22;m>=1;m--){var p=g[m*3-3]+""+g[m*3-2]+""+g[m*3-1];f=parseInt(p,2).toString(8)+""+f}return f;case 16:var e="";for(var h=16;h>=1;h--){var c=g[h*4-4]+""+g[h*4-3]+""+g[h*4-2]+""+g[h*4-1];e=parseInt(c,2).toString(16)+""+e}return e}},_Long:function(){var c=this;c.longObj=new Object();var b=c.longObj;b.math=new Object();b.math.Long=new Object();b.math.Long=function(d,e){this.lowBits=d|0;this.highBits=e|0};b.math.Long.IntCache={};b.math.Long.fromInt=function(d){if(-128<=d&&d<128){var f=b.math.Long.IntCache[d];if(f){return f}}var e=new b.math.Long(d|0,d<0?-1:0);if(-128<=d&&d<128){b.math.Long.IntCache[d]=e}return e};b.math.Long.fromNumber=function(d){if(isNaN(d)||!isFinite(d)){return b.math.Long.ZERO}else{if(d<=-b.math.Long.TWO_PWR_63_DBL_){return b.math.Long.MIN_VALUE}else{if(d+1>=b.math.Long.TWO_PWR_63_DBL_){return b.math.Long.MAX_VALUE}else{if(d<0){return b.math.Long.fromNumber(-d).negate()}else{return new b.math.Long((d%b.math.Long.TWO_PWR_32_DBL_)|0,(d/b.math.Long.TWO_PWR_32_DBL_)|0)}}}}};b.math.Long.fromBits=function(d,e){return new b.math.Long(d,e)};b.math.Long.fromString=function(f,j){if(f.length===0){throw new Error("number format error: empty string")}var g=j||10;if(g<2||36<g){throw new Error("radix out of range: "+g)}if(f.charAt(0)==="-"){return b.math.Long.fromString(f.substring(1),g).negate()}else{if(f.indexOf("-")>=0){throw new Error('number format error: interior "-" character: '+f)}}var k=b.math.Long.fromNumber(Math.pow(g,8));var m=b.math.Long.ZERO;for(var e=0;e<f.length;e+=8){var l=Math.min(8,f.length-e);var h=parseInt(f.substring(e,e+l),g);if(l<8){var d=b.math.Long.fromNumber(Math.pow(g,l));m=m.multiply(d).add(b.math.Long.fromNumber(h))}else{m=m.multiply(k);m=m.add(b.math.Long.fromNumber(h))}}return m};b.math.Long.TWO_PWR_16_DBL_=1<<16;b.math.Long.TWO_PWR_24_DBL_=1<<24;b.math.Long.TWO_PWR_32_DBL_=b.math.Long.TWO_PWR_16_DBL_*b.math.Long.TWO_PWR_16_DBL_;b.math.Long.TWO_PWR_31_DBL_=b.math.Long.TWO_PWR_32_DBL_/2;b.math.Long.TWO_PWR_48_DBL_=b.math.Long.TWO_PWR_32_DBL_*b.math.Long.TWO_PWR_16_DBL_;b.math.Long.TWO_PWR_64_DBL_=b.math.Long.TWO_PWR_32_DBL_*b.math.Long.TWO_PWR_32_DBL_;b.math.Long.TWO_PWR_63_DBL_=b.math.Long.TWO_PWR_64_DBL_/2;b.math.Long.ZERO=b.math.Long.fromInt(0);b.math.Long.ONE=b.math.Long.fromInt(1);b.math.Long.NEG_ONE=b.math.Long.fromInt(-1);b.math.Long.MAX_VALUE=b.math.Long.fromBits(4294967295|0,2147483647|0);b.math.Long.MIN_VALUE=b.math.Long.fromBits(0,2147483648|0);b.math.Long.TWO_PWR_24_=b.math.Long.fromInt(1<<24);b.math.Long.prototype.toInt=function(){return this.lowBits};b.math.Long.prototype.toNumber=function(){return this.highBits*b.math.Long.TWO_PWR_32_DBL_+this.getLowBitsUnsigned()};b.math.Long.prototype.toString=function(j){var h=j||10;if(h<2||36<h){throw new Error("radix out of range: "+h)}if(this.isZero()){return"0"}var k,m;if(this.isNegative()){if(this.equals(b.math.Long.MIN_VALUE)){var f=b.math.Long.fromNumber(h);var d=this.div(f);k=d.multiply(f).subtract(this);return d.toString(h)+k.toInt().toString(h)}else{switch(h){case 2:case 8:case 16:m="-"+this.negate().toString(2);return c._negativeBinary(m,h);default:m="-"+this.negate().toString(h);return m}}}var l=b.math.Long.fromNumber(Math.pow(h,6));k=this;m="";while(true){var i=k.div(l);var g=k.subtract(i.multiply(l)).toInt();var e=g.toString(h);k=i;if(k.isZero()){return e+m}else{while(e.length<6){e="0"+e}m=""+e+m}}};b.math.Long.prototype.getHighBits=function(){return this.highBits};b.math.Long.prototype.getLowBits=function(){return this.lowBits};b.math.Long.prototype.getLowBitsUnsigned=function(){return(this.lowBits>=0)?this.lowBits:b.math.Long.TWO_PWR_32_DBL_+this.lowBits};b.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative()){if(this.equals(b.math.Long.MIN_VALUE)){return 64}else{return this.negate().getNumBitsAbs()}}else{var e=this.highBits!==0?this.highBits:this.lowBits;for(var d=31;d>0;d--){if((e&(1<<d))!==0){break}}return this.highBits!==0?d+33:d+1}};b.math.Long.prototype.isZero=function(){return this.highBits===0&&this.lowBits===0};b.math.Long.prototype.isNegative=function(){return this.highBits<0};b.math.Long.prototype.isOdd=function(){return(this.lowBits&1)===1};b.math.Long.prototype.equals=function(d){return(this.highBits===d.highBits)&&(this.lowBits===d.lowBits)};b.math.Long.prototype.notEquals=function(d){return(this.highBits!==d.highBits)||(this.lowBits!==d.lowBits)};b.math.Long.prototype.lessThan=function(d){return this.compare(d)<0};b.math.Long.prototype.lessThanOrEqual=function(d){return this.compare(d)<=0};b.math.Long.prototype.greaterThan=function(d){return this.compare(d)>0};b.math.Long.prototype.greaterThanOrEqual=function(d){return this.compare(d)>=0};b.math.Long.prototype.compare=function(e){if(this.equals(e)){return 0}var d=this.isNegative();var f=e.isNegative();if(d&&!f){return -1}if(!d&&f){return 1}if(this.subtract(e).isNegative()){return -1}else{return 1}};b.math.Long.prototype.negate=function(){if(this.equals(b.math.Long.MIN_VALUE)){return b.math.Long.MIN_VALUE}else{return this.not().add(b.math.Long.ONE)}};b.math.Long.prototype.add=function(k){var i=this.highBits>>>16;var e=this.highBits&65535;var l=this.lowBits>>>16;var f=this.lowBits&65535;var n=k.highBits>>>16;var g=k.highBits&65535;var o=k.lowBits>>>16;var h=k.lowBits&65535;var p=0,j=0,d=0,m=0;m+=f+h;d+=m>>>16;m&=65535;d+=l+o;j+=d>>>16;d&=65535;j+=e+g;p+=j>>>16;j&=65535;p+=i+n;p&=65535;return b.math.Long.fromBits((d<<16)|m,(p<<16)|j)};b.math.Long.prototype.subtract=function(d){return this.add(d.negate())};b.math.Long.prototype.multiply=function(k){if(this.isZero()){return b.math.Long.ZERO}else{if(k.isZero()){return b.math.Long.ZERO}}if(this.equals(b.math.Long.MIN_VALUE)){return k.isOdd()?b.math.Long.MIN_VALUE:b.math.Long.ZERO}else{if(k.equals(b.math.Long.MIN_VALUE)){return this.isOdd()?b.math.Long.MIN_VALUE:b.math.Long.ZERO}}if(this.isNegative()){if(k.isNegative()){return this.negate().multiply(k.negate())}else{return this.negate().multiply(k).negate()}}else{if(k.isNegative()){return this.multiply(k.negate()).negate()}}if(this.lessThan(b.math.Long.TWO_PWR_24_)&&k.lessThan(b.math.Long.TWO_PWR_24_)){return b.math.Long.fromNumber(this.toNumber()*k.toNumber())}var i=this.highBits>>>16;var e=this.highBits&65535;var l=this.lowBits>>>16;var f=this.lowBits&65535;var n=k.highBits>>>16;var g=k.highBits&65535;var o=k.lowBits>>>16;var h=k.lowBits&65535;var p=0,j=0,d=0,m=0;m+=f*h;d+=m>>>16;m&=65535;d+=l*h;j+=d>>>16;d&=65535;d+=f*o;j+=d>>>16;d&=65535;j+=e*h;p+=j>>>16;j&=65535;j+=l*o;p+=j>>>16;j&=65535;j+=f*g;p+=j>>>16;j&=65535;p+=i*h+e*o+l*g+f*n;p&=65535;return b.math.Long.fromBits((d<<16)|m,(p<<16)|j)};b.math.Long.prototype.div=function(f){if(f.isZero()){throw new Error("division by zero")}else{if(this.isZero()){return b.math.Long.ZERO}}var i,k;if(this.equals(b.math.Long.MIN_VALUE)){if(f.equals(b.math.Long.ONE)||f.equals(b.math.Long.NEG_ONE)){return b.math.Long.MIN_VALUE}else{if(f.equals(b.math.Long.MIN_VALUE)){return b.math.Long.ONE}else{var d=this.shiftRight(1);i=d.div(f).shiftLeft(1);if(i.equals(b.math.Long.ZERO)){return f.isNegative()?b.math.Long.ONE:b.math.Long.NEG_ONE}else{k=this.subtract(f.multiply(i));var m=i.add(k.div(f));return m}}}}else{if(f.equals(b.math.Long.MIN_VALUE)){return b.math.Long.ZERO}}if(this.isNegative()){if(f.isNegative()){return this.negate().div(f.negate())}else{return this.negate().div(f).negate()}}else{if(f.isNegative()){return this.div(f.negate()).negate()}}var g=b.math.Long.ZERO;k=this;while(k.greaterThanOrEqual(f)){i=Math.max(1,Math.floor(k.toNumber()/f.toNumber()));var l=Math.ceil(Math.log(i)/Math.LN2);var j=(l<=48)?1:Math.pow(2,l-48);var e=b.math.Long.fromNumber(i);var h=e.multiply(f);while(h.isNegative()||h.greaterThan(k)){i-=j;e=b.math.Long.fromNumber(i);h=e.multiply(f)}if(e.isZero()){e=b.math.Long.ONE}g=g.add(e);k=k.subtract(h)}return g};b.math.Long.prototype.modulo=function(d){return this.subtract(this.div(d).multiply(d))};b.math.Long.prototype.not=function(){return b.math.Long.fromBits(~this.lowBits,~this.highBits)};b.math.Long.prototype.and=function(d){return b.math.Long.fromBits(this.lowBits&d.lowBits,this.highBits&d.highBits)};b.math.Long.prototype.or=function(d){return b.math.Long.fromBits(this.lowBits|d.lowBits,this.highBits|d.highBits)};b.math.Long.prototype.xor=function(d){return b.math.Long.fromBits(this.lowBits^d.lowBits,this.highBits^d.highBits)};b.math.Long.prototype.shiftLeft=function(f){f&=63;if(f===0){return this}else{var d=this.lowBits;if(f<32){var e=this.highBits;return b.math.Long.fromBits(d<<f,(e<<f)|(d>>>(32-f)))}else{return b.math.Long.fromBits(0,d<<(f-32))}}};b.math.Long.prototype.shiftRight=function(f){f&=63;if(f===0){return this}else{var e=this.highBits;if(f<32){var d=this.lowBits;return b.math.Long.fromBits((d>>>f)|(e<<(32-f)),e>>f)}else{return b.math.Long.fromBits(e>>(f-32),e>=0?0:-1)}}};b.math.Long.prototype.shiftRightUnsigned=function(f){f&=63;if(f===0){return this}else{var e=this.highBits;if(f<32){var d=this.lowBits;return b.math.Long.fromBits((d>>>f)|(e<<(32-f)),e>>>f)}else{if(f===32){return b.math.Long.fromBits(e,0)}else{return b.math.Long.fromBits(e>>>(f-32),0)}}}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgauge.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgauge.js
new file mode 100644 (file)
index 0000000..5ceefb1
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(d){var b={defineInstance:function(){var e={width:350,height:350,radius:"50%",endAngle:270,startAngle:30,int64:false,value:0,min:0,max:220,disabled:false,ticksDistance:"20%",colorScheme:"scheme01",animationDuration:400,showRanges:true,easing:"easeOutCubic",labels:null,pointer:null,cap:null,caption:null,border:null,ticksMinor:null,ticksMajor:null,style:null,ranges:[],_radius:100,_border:null,_radiusDifference:2,_pointer:null,_labels:[],_cap:null,_ticks:[],_ranges:[],_gauge:null,_caption:null,_animationTimeout:10,renderer:null,_animations:[],aria:{"aria-valuenow":{name:"value",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}}};d.extend(true,this,e);return e},createInstance:function(f){var e=this;e.that=this;d.jqx.aria(e);e._radius=e.radius;e.endAngle=e.endAngle*Math.PI/180+Math.PI/2;e.startAngle=e.startAngle*Math.PI/180+Math.PI/2;if(e.int64===true){if(!d.jqx.longInt){throw new Error("jqxGauge: Missing reference to jqxdata.js")}d.jqx.longInt(e);e._value64=new d.jqx.math().fromString(e.value.toString(),10);e._min64=new d.jqx.math().fromString(e.min.toString(),10);e._max64=new d.jqx.math().fromString(e.max.toString(),10)}else{e.value=new Number(e.value)}e._refresh();e.renderer.getContainer().css("overflow","hidden");if(e.int64===true){e.setValue(e._value64,0)}else{e.setValue(e.value,0)}d.jqx.utilities.resize(e.host,function(){e._refresh()});e.host.addClass(e.toThemeProperty("jqx-widget"))},_validateEasing:function(){return !!d.easing[this.easing]},_validateProperties:function(){if(this.startAngle===this.endAngle){throw new Error("The end angle can not be equal to the start angle!")}if(!this._validateEasing()){this.easing="linear"}this.ticksDistance=this._validatePercentage(this.ticksDistance,"20%");this.border=this._borderConstructor(this.border,this);this.style=this.style||{fill:"#ffffff",stroke:"#E0E0E0"};this.ticksMinor=new this._tickConstructor(this.ticksMinor,this);this.ticksMajor=new this._tickConstructor(this.ticksMajor,this);this.cap=new this._capConstructor(this.cap,this);this.pointer=new this._pointerConstructor(this.pointer,this);this.labels=new this._labelsConstructor(this.labels,this);this.caption=new this._captionConstructor(this.caption,this);for(var e=0;e<this.ranges.length;e+=1){this.ranges[e]=new this._rangeConstructor(this.ranges[e],this)}},_hostInit:function(){var h=this._getScale(this.width,"width",this.host.parent()),e=this._getScale(this.height,"height",this.host.parent()),g=this._outerBorderOffset(),i=this.host,f;i.width(h);i.height(e);this.radius=f=(this._getScale(this._radius,"width",this.host)||h/2)-g;this._originalRadius=parseInt(this.radius,10)-this._radiusDifference;this._innerRadius=this._originalRadius;if(this.border){this._innerRadius-=this._getSize(this.border.size)}i[0].innerHTML="<div />";this._gaugeParent=i.children();this._gaugeParent.width(h);this._gaugeParent.height(e);this.renderer.init(this._gaugeParent)},_initRenderer:function(e){if(!d.jqx.createRenderer){throw"Please include a reference to jqxdraw.js"}return d.jqx.createRenderer(this,e)},_refresh:function(){var e=this;if(!e.renderer){e._isVML=false;e.host.empty();e._initRenderer(e.host)}var f=e.renderer;if(!f){return}if(e._ranges){d(e._ranges).remove()}if(e._pointer){d(e._pointer).remove()}if(e._labels){d(e._labels).remove()}if(e._cap){d(e._cap).remove()}if(e._ticks){d(e._ticks).remove()}if(e._border){d(e._border).remove()}if(e._caption){d(e._caption).remove()}e._caption=null;e._labels=[];e._cap=null;e._ticks=[];e._ranges=[];e._border=null;e._pointer=null;e._validateProperties();e._removeElements();e._hostInit();e._render();e.setValue(this.value,0)},val:function(e){if(arguments.length==0||typeof(e)=="object"){return this.value}this.setValue(e,0)},refresh:function(){this._refresh.apply(this,Array.prototype.slice(arguments))},_outerBorderOffset:function(){var e=parseInt(this.border.style["stroke-width"],10)||1;return e/2},_removeCollection:function(f){for(var e=0;e<f.length;e+=1){d(f[e]).remove()}f=[]},_render:function(){this._addBorder();this._addGauge();this._addRanges();this._addTicks();this._addLabels();this._addCaption();this._addPointer();this._addCap()},_addBorder:function(){if(!this.border.visible){return}var e=this.border.style.fill,f=this._outerBorderOffset();if(!e){e="#BABABA"}if(this.border.showGradient){if(e.indexOf("url")<0&&e.indexOf("#grd")<0){this._originalColor=e}else{e=this._originalColor}e=this.renderer._toLinearGradient(e,true,[[0,1],[25,1.1],[50,1.5],[100,1]])}this._border=this.renderer.circle(this._originalRadius+f,this._originalRadius+f,this._originalRadius);this.border.style.fill=e;this.renderer.attr(this._border,this.border.style)},_addGauge:function(){var g=this._originalRadius,e=this.renderer._toLinearGradient("#ffffff",[[3,2],[100,1]],true),f=this._outerBorderOffset();this._gauge=this.renderer.circle(g+f,g+f,this._innerRadius);this.renderer.attr(this._gauge,this.style)},_addCap:function(){var e="visible",g=this._outerBorderOffset();if(!this.cap.visible){e="hidden"}var h=this._originalRadius,f=this._getSize(this.cap.size),i;i=this.renderer.circle(h+g,h+g,f);this._capCenter=[h,h];this.renderer.attr(i,this.cap.style);d(i).css("visibility",e);this._cap=i},_addTicks:function(){var n=this;var p=this.ticksMinor,e=this.ticksMajor,l,o,m={};function k(i){n._drawTick({angle:n._getAngleByValue(i),distance:n._getDistance(n.ticksDistance),style:e.style,size:n._getSize(e.size),type:"major"})}function f(j){n._drawTick({angle:n._getAngleByValue(j),distance:n._getDistance(n.ticksDistance),style:p.style,size:n._getSize(p.size),type:"minor"})}if(n.int64===true){l=new d.jqx.math().fromString((p.interval).toString(),10);o=new d.jqx.math().fromString((e.interval).toString(),10);for(var h=new d.jqx.math().fromString((n.min).toString(),10),g=new d.jqx.math().fromString((n.min).toString(),10);h.lessThanOrEqual(n._max64)||g.lessThanOrEqual(n._max64);h=h.add(l),g=g.add(o)){if(g.lessThan(n._min64)||g.greaterThan(n._max64)){break}if(g.lessThanOrEqual(n._max64)&&e.visible){k(g);m[g.toString()]=true}if(!m[h.toString()]&&p.visible&&h.lessThanOrEqual(n._max64)){f(h)}}}else{l=p.interval;o=e.interval;for(var h=this.min,g=this.min;h<=this.max||g<=this.max;h+=l,g+=o){if(g<=this.max&&e.visible){k(g);m[g.toFixed(5)]=true}if(!m[h.toFixed(5)]&&p.visible&&h<=this.max){f(h)}}}this._handleTicksVisibility()},_handleTicksVisibility:function(){if(!this.ticksMinor.visible){this.host.children(".jqx-gauge-tick-minor").css("visibility","hidden")}else{this.host.children(".jqx-gauge-tick-minor").css("visibility","visible")}if(!this.ticksMajor.visible){this.host.children(".jqx-gauge-tick-major").css("visibility","hidden")}else{this.host.children(".jqx-gauge-tick-major").css("visibility","visible")}},_getSize:function(e){if(e.toString().indexOf("%")>=0){e=(parseInt(e,10)/100)*this._innerRadius}e=parseInt(e,10);return e},_getDistance:function(e){return this._getSize(e)+(this._originalRadius-this._innerRadius)},_drawTick:function(s){var l=this.that;var j=s.angle,g=s.distance,q=s.size,k=l._outerBorderOffset(),e=l._originalRadius,i=e-g,m=i-q,h=e+k+i*Math.sin(j),o=e+k+i*Math.cos(j),f=e+k+m*Math.sin(j),n=e+k+m*Math.cos(j),p;s.style["class"]=l.toThemeProperty("jqx-gauge-tick-"+s.type);if(l._isVML){h=Math.round(h);f=Math.round(f);o=Math.round(o);n=Math.round(n)}p=l.renderer.line(h,o,f,n,s.style);l._ticks.push(p)},_addRanges:function(){var f="visible";if(!this.showRanges){f="hidden"}else{var e=this.ranges;for(var g=0;g<e.length;g+=1){this._addRange(e[g],f)}}},_getMaxRangeSize:function(){var f,h=-1,j,e;for(var g=0;g<this.ranges.length;g+=1){j=this.ranges[g].startWidth;e=this.ranges[g].endWidth;if(j>h){h=j}if(e>h){h=e}}return h},_getRangeDistance:function(i,e){var h=this._getLabelsDistance(),f=this._getDistance(i),g=this._getMaxRangeSize();if(this.labels.position==="outside"){if(h<f+this._getMaxTickSize()){return this._getDistance(this.ticksDistance)+g/2+this._getSize(this.ticksMajor.size)}}else{if(this.labels.position==="inside"){if(h+this._getMaxTickSize()<f){return this._getSize(this.border.size)+this._originalRadius/20}}}return f},_addRange:function(m,g){var n=this.that;if((n.int64===true&&(m._startValue64.lessThan(n._min64)||m._endValue64.greaterThan(n._max64)))||(n.int64===false&&(m.startValue<n.min||m.endValue>n.max))){return}var q=n.int64?n._getAngleByValue(m._startValue64):n._getAngleByValue(m.startValue),j=n.int64?n._getAngleByValue(m._endValue64):n._getAngleByValue(m.endValue);var o=n._originalRadius,f=o-n._getRangeDistance(m.startDistance,m.startWidth),s=o-n._getRangeDistance(m.endDistance,m.endWidth),l=m.startWidth,e=m.endWidth,k=n._outerBorderOffset(),i={x:o+k+f*Math.sin(q),y:o+k+f*Math.cos(q)},r={x:o+k+s*Math.sin(j),y:o+k+s*Math.cos(j)},t=n._getProjectionPoint(q,o+k,f,l),p=n._getProjectionPoint(j,o+k,s,e),h="default",u,m;if(Math.abs(j-q)>Math.PI){h="opposite"}if(n._isVML){u=n._rangeVMLRender(i,r,o,t,p,e,l,f,s,h)}else{u=n._rangeSVGRender(i,r,o,t,p,e,l,f,s,h)}m.style.visibility=g;m.style["class"]=n.toThemeProperty("jqx-gauge-range");m=n.renderer.path(u,m.style);n._ranges.push(m)},_rangeSVGRender:function(i,m,k,o,l,e,j,f,n,h){var p="",f=k-f,n=k-n,g=["0,1","0,0"];if(h==="opposite"){g=["1,1","1,0"]}p="M"+i.x+","+i.y+" ";p+="A"+(k-f)+","+(k-f)+" 100 "+g[0]+" "+m.x+","+m.y+" ";p+="L "+(l.x)+","+(l.y)+" ";p+="A"+(k-e-f)+","+(k-e-f)+" 100 "+g[1]+" "+(o.x)+","+(o.y)+" ";p+="L "+(i.x)+","+(i.y)+" ";p+="z";return p},_rangeVMLRender:function(p,m,h,w,i,l,n,q,s,f){h-=h-q+10;var o="",r=Math.floor(h+(n+l)/2),q=Math.floor(h-q),s=Math.floor(s),t={x:(w.x+i.x)/2,y:(w.y+i.y)/2},e=Math.sqrt((i.x-w.x)*(i.x-w.x)+(i.y-w.y)*(i.y-w.y)),v=Math.floor(t.x+Math.sqrt(h*h-(e/2)*(e/2))*(w.y-i.y)/e),u=Math.floor(t.y+Math.sqrt(h*h-(e/2)*(e/2))*(i.x-w.x)/e),x={x:(p.x+m.x)/2,y:(p.y+m.y)/2},g=Math.sqrt((m.x-p.x)*(m.x-p.x)+(m.y-p.y)*(m.y-p.y)),k=Math.floor(x.x+Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(p.y-m.y)/g),j=Math.floor(x.y+Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(m.x-p.x)/g);if(f==="opposite"){v=Math.floor(t.x-Math.sqrt(h*h-(e/2)*(e/2))*(w.y-i.y)/e);u=Math.floor(t.y-Math.sqrt(h*h-(e/2)*(e/2))*(i.x-w.x)/e);k=Math.floor(x.x-Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(p.y-m.y)/g);j=Math.floor(x.y-Math.sqrt(Math.abs(r*r-(g/2)*(g/2)))*(m.x-p.x)/g)}h=Math.floor(h);m={x:Math.floor(m.x),y:Math.floor(m.y)};p={x:Math.floor(p.x),y:Math.floor(p.y)};w={x:Math.floor(w.x),y:Math.floor(w.y)};i={x:Math.floor(i.x),y:Math.floor(i.y)};o="m "+m.x+","+m.y;o+="at "+(k-r)+" "+(j-r)+" "+(r+k)+" "+(r+j)+" "+m.x+","+m.y+" "+p.x+","+p.y;o+="l "+w.x+","+w.y;o+="m "+m.x+","+m.y;o+="l "+i.x+","+i.y;o+="at "+(v-h)+" "+(u-h)+" "+(h+v)+" "+(h+u)+" "+i.x+","+i.y+" "+w.x+","+w.y;o+="qx "+w.x+" "+w.y;return o},_getProjectionPoint:function(i,f,h,g){var e={x:f+(h-g)*Math.sin(i),y:f+(h-g)*Math.cos(i)};return e},_addLabels:function(g){var f=this;if(f.labels.visible){var i=this._getDistance(this._getLabelsDistance()),h;if(f.int64===true){for(var e=new d.jqx.math().fromNumber(f.min.toString(),10);e.lessThanOrEqual(f._max64);e=e.add(f.labels._interval64)){if(e.lessThan(f._min64)||e.greaterThan(f._max64)){break}this._addLabel({angle:this._getAngleByValue(e),value:e.toString(),distance:i,style:this.labels.className})}}else{for(var e=this.min;e<=this.max;e+=this.labels.interval){this._addLabel({angle:this._getAngleByValue(e),value:this.labels.interval>=1?e:new Number(e).toFixed(2),distance:i,style:this.labels.className})}}}},_getLabelsDistance:function(){var g=this._getMaxLabelSize(),f=this._getDistance(this.labels.distance),e=this._getDistance(this.ticksDistance);g=g.width;if(this.labels.position==="inside"){return e+g-5}else{if(this.labels.position==="outside"){if(f<(e-g*1.5)){return f}return Math.max(e-g*1.5,0.6*g)}}return this.labels.distance},_addLabel:function(s){var j=this.that;var g=s.angle,f=j._originalRadius,p=f-s.distance,h=j.labels.offset,q=j.labels.formatValue,i=j._outerBorderOffset(),n=f+i+p*Math.sin(g)+h[0],l=f+i+p*Math.cos(g)+h[1],o=s.value,k=s.style||"",e,m;if(typeof q==="function"){o=q(o)}e=j.renderer.measureText(o,0,{"class":k});m=j.renderer.text(o,Math.round(n)-e.width/2,Math.round(l),e.width,e.height,0,{"class":this.toThemeProperty("jqx-gauge-label")});j._labels.push(m)},_addCaption:function(){if(this.caption.visible!==false){var i=this.that;var k=i.caption.value,j=i.toThemeProperty("jqx-gauge-caption"),g=i.caption.offset,m=i.renderer.measureText(k,0,{"class":j}),h=i._getPosition(this.caption.position,m,g),e=i.caption.style,f=i._outerBorderOffset(),l=i.renderer.text(k,h.left+f,h.top+f,m.width,m.height,0,{"class":j});this._caption=l}},_getPosition:function(e,f,j){var i=0,h=0,g=this._originalRadius;switch(e){case"left":i=(g-f.width)/2;h=g-f.height/2;break;case"right":i=g+(g-f.width)/2;h=g-f.height/2;break;case"bottom":i=(2*g-f.width)/2;h=(g+2*g-f.height)/2;break;default:i=(2*g-f.width)/2;h=(g+f.height)/2;break}return{left:i+j[0],top:h+j[1]}},_addPointer:function(){var g="visible";if(!this.pointer.visible){g="hidden"}var f=this._originalRadius,i=this._getSize(this.pointer.length),j=i*0.9,k=this._getAngleByValue(this.value),e=this.pointer.pointerType,h;h=this._computePointerPoints(this._getSize(this.pointer.width),k,i,e!=="default");this._pointer=this.renderer.path(h,this.pointer.style);d(this._pointer).css("visibility",g)},_computePointerPoints:function(e,g,h,f){if(!f){return this._computeArrowPoints(e,g,h)}else{return this._computeRectPoints(e,g,h)}},_computeArrowPoints:function(n,g,k){var f=this._originalRadius-0.5,l=Math.sin(g),q=Math.cos(g),j=this._outerBorderOffset(),o=f+j+k*l,m=f+j+k*q,i=f+j+n*q,e=f+j-n*l,h=f+j-n*q,s=f+j+n*l,p;if(this._isVML){i=Math.round(i);h=Math.round(h);e=Math.round(e);s=Math.round(s);o=Math.round(o);m=Math.round(m)}p="M "+i+","+e+" L "+h+","+s+" L "+o+","+m+"";return p},_computeRectPoints:function(q,i,o){var f=this._originalRadius,p=Math.sin(i),t=Math.cos(i),u=o,l=this._outerBorderOffset(),n=f+l-q*t+o*p,h=f+l+q*p+o*t,m=f+l+q*t+o*p,g=f+l-q*p+o*t,k=f+l+q*t,e=f+l-q*p,j=f+l-q*t,v=f+l+q*p,s;if(this._isVML){k=Math.round(k);j=Math.round(j);e=Math.round(e);v=Math.round(v);n=Math.round(n);h=Math.round(h);m=Math.round(m);g=Math.round(g)}s="M "+k+","+e+" L "+j+","+v+" L "+n+","+h+" "+m+","+g;return s},_getAngleByValue:function(s){var v=this,p=v.startAngle,t=p-v.endAngle,e,k,o,n,h;if(v.int64===true){s=new d.jqx.math().fromString(s.toString(),10);e=v._min64;k=v._max64;o=k.subtract(e);n=s.subtract(e);var f=o.toString(),j,r=n.toString(),g;if(f.length>15){var u=f.length-15;f=f.slice(0,15)+"."+f.slice(15);j=parseFloat(f);if(r.length>u){var q=r.length-u;r=r.slice(0,q)+"."+r.slice(q)}else{if(r.length===u){r="0."+r}else{var m="0.";for(var l=0;l<u-r.length;l++){m+="0"}r=m+""+r}}g=parseFloat(r)}else{j=o.toNumber();g=n.toNumber()}h=t*g/j+p+Math.PI}else{e=v.min;k=v.max;o=k-e;n=s-e;h=t*n/o+p+Math.PI}return h},_setValue:function(h){var f=this;if((f.int64===true&&h.lessThanOrEqual(f._max64)&&h.greaterThanOrEqual(f._min64))||(f.int64===false&&h<=f.max&&h>=f.min)){var i=f._getAngleByValue(h),e=f.pointer.pointerType,g=f._computePointerPoints(f._getSize(f.pointer.width),i,f._getSize(f.pointer.length),e!=="default");if(f._isVML){if(f._pointer){d(f._pointer).remove()}f._pointer=f.renderer.path(g,f.pointer.style)}else{f.renderer.attr(f._pointer,{d:g})}if(f.int64===true){f.value=h.toString();f._value64=new d.jqx.math().fromString(f.value,10)}else{f.value=h}d.jqx.aria(f,"aria-valuenow",h.toString())}},resize:function(f,e){this.width=f;this.height=e;this.refresh()},propertyChangedHandler:function(e,f,h,g){if(g==h){return}if(f=="min"){if(e.int64===true){e._min64=new d.jqx.math().fromString(g.toString(),10)}else{this.min=parseInt(g)}d.jqx.aria(e,"aria-valuemin",g)}if(f=="max"){if(e.int64===true){e._max64=new d.jqx.math().fromString(g.toString(),10)}else{this.max=parseInt(g)}d.jqx.aria(e,"aria-valuemax",g)}if(f==="disabled"){if(g){this.disable()}else{this.enable()}d.jqx.aria(this,"aria-disabled",g)}else{if(f==="value"){this.value=h;this.setValue(g)}else{if(f==="startAngle"){this.startAngle=this.startAngle*Math.PI/180+Math.PI/2}else{if(f==="endAngle"){this.endAngle=this.endAngle*Math.PI/180+Math.PI/2}else{if(f==="colorScheme"){this.pointer.style=null;this.cap.style=null}else{if(f==="radius"){this._radius=g}}}}if(f!=="animationDuration"&&f!=="easing"){this._refresh()}}}if(this.renderer instanceof d.jqx.HTML5Renderer){this.renderer.refresh()}},_tickConstructor:function(f,e){if(this.host){return new this._tickConstructor(f,e)}f=f||{};this.size=e._validatePercentage(f.size,"10%");if(e.int64===false){this.interval=parseFloat(f.interval)}else{this.interval=f.interval}if(!this.interval){this.interval=5}this.style=f.style||{stroke:"#898989","stroke-width":1};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}},_capConstructor:function(g,e){var f=e._getColorScheme(e.colorScheme)[0];if(this.host){return new this._capConstructor(g,e)}g=g||{};if(typeof g.visible==="undefined"){this.visible=true}else{this.visible=g.visible}this.size=e._validatePercentage(g.size,"4%");this.style=g.style||{fill:f,"stroke-width":"1px",stroke:f,"z-index":30}},_pointerConstructor:function(g,e){var f=e._getColorScheme(e.colorScheme)[0];if(this.host){return new this._pointerConstructor(g,e)}g=g||{};if(typeof g.visible==="undefined"){this.visible=true}else{this.visible=g.visible}this.pointerType=g.pointerType;if(this.pointerType!=="default"&&this.pointerType!=="rectangle"){this.pointerType="default"}this.style=g.style||{"z-index":0,stroke:f,fill:f,"stroke-width":1};this.length=e._validatePercentage(g.length,"70%");this.width=e._validatePercentage(g.width,"2%")},_labelsConstructor:function(f,e){if(this.host){return new this._labelsConstructor(f,e)}f=f||{};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}this.offset=f.offset;if(!(this.offset instanceof Array)){this.offset=[0,-10]}if(!f.interval){f.interval=20}if(e.int64===true){this.interval=f.interval;this._interval64=new d.jqx.math().fromString(f.interval.toString(),10)}else{this.interval=parseFloat(f.interval)}this.distance=e._validatePercentage(f.distance,"38%");this.position=f.position;if(this.position!=="inside"&&this.position!=="outside"){this.position="none"}this.formatValue=f.formatValue;if(typeof this.formatValue!=="function"){this.formatValue=function(g){return g}}},_captionConstructor:function(f,e){if(this.host){return new this._captionConstructor(f,e)}f=f||{};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}this.value=f.value||"";this.position=f.position;if(this.position!=="bottom"&&this.position!=="top"&&this.position!=="left"&&this.position!=="right"){this.position="bottom"}this.offset=f.offset;if(!(this.offset instanceof Array)){this.offset=[0,0]}},_rangeConstructor:function(f,e){if(this.host){return new this._rangeConstructor(f,e)}f=f||{};this.startDistance=e._validatePercentage(f.startDistance,"5%");this.endDistance=e._validatePercentage(f.endDistance,"5%");this.style=f.style||{fill:"#000000",stroke:"#111111"};this.startWidth=parseFloat(f.startWidth,10);if(!this.startWidth){this.startWidth=10}this.startWidth=Math.max(this.startWidth,2);this.endWidth=parseFloat(f.endWidth,10);if(!this.endWidth){this.endWidth=10}this.endWidth=Math.max(this.endWidth,2);if(f.startValue===undefined){f.startValue=0}if(f.endValue===undefined){f.endValue=100}if(e.int64===true){this.startValue=f.startValue;this.endValue=f.endValue;this._startValue64=new d.jqx.math().fromString(f.startValue.toString(),10);this._endValue64=new d.jqx.math().fromString(f.endValue.toString(),10)}else{this.startValue=parseFloat(f.startValue,10);this.endValue=parseFloat(f.endValue,10)}},_borderConstructor:function(f,e){if(this.host){return new this._borderConstructor(f,e)}f=f||{};this.size=e._validatePercentage(f.size,"10%");this.style=f.style||{stroke:"#cccccc"};if(typeof f.showGradient==="undefined"){this.showGradient=true}else{this.showGradient=f.showGradient}if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}}};var c={_events:["valueChanging","valueChanged"],_animationTimeout:10,_schemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],_getScale:function(e,g,f){if(e&&e.toString().indexOf("%")>=0){e=parseInt(e,10)/100;return f[g]()*e}return parseInt(e,10)},_removeElements:function(){this.host.children(".chartContainer").remove();this.host.children("#tblChart").remove()},_getMaxLabelSize:function(){var h=this.max,e=this.min;if(this.labels.interval<1){e=new Number(e).toFixed(2);h=new Number(h).toFixed(2)}var g=this.renderer.measureText(h,0,{"class":this.toThemeProperty("jqx-gauge-label")}),f=this.renderer.measureText(e,0,{"class":this.toThemeProperty("jqx-gauge-label")});if(f.width>g.width){return f}return g},disable:function(){this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))},enable:function(){this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))},destroy:function(){var e=this;if(e._timeout){clearTimeout(this._timeout)}e._timeout=null;d.jqx.utilities.resize(e.host,null,true);e._removeElements();e.renderer.clear();e.renderer=null;var f=d.data(e.element,"jqxGauge");if(f){delete f.instance}e.host.children().remove();e._caption=null;e._caption=null;e._pointer=null;e._labels=[];e._cap=null;e._ticks=[];e._ranges=[];e._border=null;e._gauge=null;e._caption=null;e.renderer=null;e._animations=[];e.host.removeData();e.host.removeClass();e.host.remove();e.that=null;e.element=null;e._gaugeParent=null;delete e._gaugeParent;delete e.element;delete e.host},_validatePercentage:function(f,e){if(parseFloat(f)!==0&&(!f||!parseInt(f,10))){f=e}return f},_getColorScheme:function(f){var e;for(var g=0;g<this._schemes.length;g+=1){e=this._schemes[g];if(e.name===f){return e.colors}}return null},setValue:function(f,g){var e=this;if(!e.disabled){g=g||e.animationDuration||0;if(e.int64===true){if(typeof f==="number"){f=new d.jqx.math().fromNumber(f,10)}else{if(typeof f==="string"){f=new d.jqx.math().fromString(f,10)}}if(f.greaterThan(e._max64)){f=new d.jqx.math().fromString(e._max64.toString(),10)}if(f.lessThan(e._min64)){f=new d.jqx.math().fromString(e._min64.toString(),10)}e._animate(e._value64,f,g)}else{if(f>e.max){f=e.max}if(f<e.min){f=e.min}e._animate(e.value,f,g)}d.jqx.aria(e,"aria-valuenow",f.toString())}},_animate:function(h,e,g){var f=this;if(f._timeout){f._endAnimation(f.int64?f._value64:f.value,false)}if(!g){f._endAnimation(e,true);return}f._animateHandler(h,e,0,g)},_animateHandler:function(i,e,h,g){var f=this;if(h<=g){this._timeout=setTimeout(function(){if(f.int64===true){var k=e.subtract(i);var j=new d.jqx.math().fromNumber((d.easing[f.easing](h/g,h,0,1,g))*100,10);f._value64=i.add(k.multiply(j).div(new d.jqx.math().fromNumber(100,10)));f.value=f._value64.toString();f._setValue(f._value64)}else{f.value=i+(e-i)*d.easing[f.easing](h/g,h,0,1,g);f._setValue(f.value)}f._raiseEvent(0,{value:f.value.toString()});f._animateHandler(i,e,h+f._animationTimeout,g)},this._animationTimeout)}else{this._endAnimation(e,true)}},_endAnimation:function(e,f){clearTimeout(this._timeout);this._timeout=null;this._setValue(e);if(f){this._raiseEvent(1,{value:e.toString()})}},_getMaxTickSize:function(){return Math.max(this._getSize(this.ticksMajor.size),this._getSize(this.ticksMinor.size))},_raiseEvent:function(g,f){var h=d.Event(this._events[g]),e;h.args=f||{};e=this.host.trigger(h);return e}},a={defineInstance:function(){var e={int64:false,value:-50,max:40,min:-60,width:100,height:300,pointer:{},labels:{},animationDuration:1000,showRanges:{},ticksMajor:{size:"15%",interval:5},ticksMinor:{size:"10%",interval:2.5},ranges:[],easing:"easeOutCubic",colorScheme:"scheme01",disabled:false,rangesOffset:0,background:{},ticksPosition:"both",rangeSize:"5%",scaleStyle:null,ticksOffset:null,scaleLength:"90%",orientation:"vertical",aria:{"aria-valuenow":{name:"value",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},_originalColor:"",_width:null,_height:null,renderer:null};d.extend(true,this,e)},createInstance:function(){d.jqx.aria(this);this.host.css("overflow","hidden");this.host.addClass(this.toThemeProperty("jqx-widget"));var e=this;if(e.int64===true){if(!d.jqx.longInt){throw new Error("jqxGauge: Missing reference to jqxdata.js")}d.jqx.longInt(e);e._value64=new d.jqx.math().fromString(e.value.toString(),10);e._min64=new d.jqx.math().fromString(e.min.toString(),10);e._max64=new d.jqx.math().fromString(e.max.toString(),10)}d.jqx.utilities.resize(this.host,function(){e.refresh(false,false)})},val:function(e){if(arguments.length==0||typeof(e)=="object"){return this.value}this.setValue(e,0)},_initRenderer:function(e){if(!d.jqx.createRenderer){throw"Please include a reference to jqxdraw.js"}return d.jqx.createRenderer(this,e)},refresh:function(h,g){var e=this;if(!e.renderer){e._isVML=false;e.host.empty();e._initRenderer(e.host)}var f=e.renderer;if(!f){return}e._validateProperties();e._reset();e._init();e._performLayout();e._render();if(g!==false){e.setValue(e.value,1)}},_getBorderSize:function(){var f=1,e;if(this._isVML){f=0}if(this.background){e=(parseInt(this.background.style["stroke-width"],10)||f)/2;if(this._isVML){return Math.round(e)}return e}return f},_validateProperties:function(){this.background=this._backgroundConstructor(this.background,this);this.ticksOffset=this.ticksOffset||this._getDefaultTicksOffset();this.rangesOffset=this.rangesOffset||0;this.rangeSize=this._validatePercentage(this.rangeSize,5);this.ticksOffset[0]=this._validatePercentage(this.ticksOffset[0],"5%");this.ticksOffset[1]=this._validatePercentage(this.ticksOffset[1],"5%");this.ticksMinor=this._tickConstructor(this.ticksMinor,this);this.ticksMajor=this._tickConstructor(this.ticksMajor,this);this.scaleStyle=this.scaleStyle||this.ticksMajor.style;this.labels=this._labelsConstructor(this.labels,this);this.pointer=this._pointerConstructor(this.pointer,this);for(var e=0;e<this.ranges.length;e+=1){this.ranges[e]=this._rangeConstructor(this.ranges[e],this)}},_getDefaultTicksOffset:function(){if(this.orientation==="horizontal"){return["5%","36%"]}return["36%","5%"]},_handleOrientation:function(){if(this.orientation==="vertical"){d.extend(this,linearVerticalGauge)}else{d.extend(this,linearHorizontalGauge)}},_reset:function(){this.host.empty()},_performLayout:function(){var e=parseInt(this.background.style["stroke-width"],10)||1;this._width-=e;this._height-=e;this.host.css("padding",e/2)},_init:function(){var f=this._getBorderSize(),e;this._width=this._getScale(this.width,"width",this.host.parent())-3;this._height=this._getScale(this.height,"height",this.host.parent())-3;this.element.innerHTML="<div/>";this.host.width(this._width);this.host.height(this._height);this.host.children().width(this._width);this.host.children().height(this._height);this.renderer.init(this.host.children());e=this.renderer.getContainer();e.width(this._width);e.height(this._height)},_render:function(){this._renderBackground();this._renderTicks();this._renderLabels();this._renderRanges();this._renderPointer()},_renderBackground:function(){if(!this.background.visible){return}var g=this.background.style,f=d.jqx._rup(this._getBorderSize()),e="rect",h;g=this._handleShapeOptions(g);if(this.background.backgroundType==="roundedRectangle"&&this._isVML){e="roundrect"}if(!this._Vml){g.x=f;g.y=f}h=this.renderer.shape(e,g);if(this._isVML){this._fixVmlRoundrect(h,g)}},_handleShapeOptions:function(g){var e=this.background.style.fill,f=this._getBorderSize();if(!e){e="#cccccc"}if(this.background.showGradient){if(e.indexOf("url")<0&&e.indexOf("#grd")<0){this._originalColor=e}else{e=this._originalColor}e=this.renderer._toLinearGradient(e,this.orientation==="horizontal",[[1,1.1],[90,1.5]])}this.background.style.fill=e;if(this.background.backgroundType==="roundedRectangle"){if(this._isVML){g.arcsize=this.background.borderRadius+"%"}else{g.rx=this.background.borderRadius;g.ry=this.background.borderRadius}}g.width=this._width-1;g.height=this._height-1;return g},_fixVmlRoundrect:function(g,f){var e=this._getBorderSize();g.style.position="absolute";g.style.left=e;g.style.top=e;g.style.width=this._width-1;g.style.height=this._height-1;g.strokeweight=0;delete f.width;delete f.height;delete f.arcsize;this.renderer.attr(g,f)},_renderTicks:function(){var k=this.ticksMinor,l=this.ticksMajor,f,i,h,g,e,m,j;if(this.int64){f=this._max64.subtract(this._min64);if(f.isNegative()){f=f.negate()}i=l._interval64;h=k._interval64;g=f.div(i);e=f.div(h)}else{f=Math.abs(this.max-this.min);i=l.interval;h=k.interval;g=f/i;e=f/h}m={size:this._getSize(l.size),style:l.style,visible:l.visible,interval:i};j={size:this._getSize(k.size),style:k.style,visible:k.visible,interval:h,checkOverlap:true};if(this.ticksPosition==="near"||this.ticksPosition==="both"){this._ticksRenderHandler(m);this._ticksRenderHandler(j)}if(this.ticksPosition==="far"||this.ticksPosition==="both"){m.isFar=true;j.isFar=true;this._ticksRenderHandler(m);this._ticksRenderHandler(j)}this._renderConnectionLine()},_ticksRenderHandler:function(f){if(!f.visible){return}var i=this._getSize(this.ticksOffset[0],"width"),g=this._getSize(this.ticksOffset[1],"height"),e=this._getBorderSize(),h=this._calculateTickOffset()+this._getMaxTickSize();if(f.isFar){h+=f.size}this._drawTicks(f,e,h+e)},_drawTicks:function(j,h,l){var g=this,e;function f(m){e=g._valueToCoordinates(m);if(!j.checkOverlap||!g._overlapTick(m)){g._renderTick(j.size,e,j.style,l)}}if(this.int64===true){for(var k=new d.jqx.math().fromString(this._min64.toString(),10);k.lessThanOrEqual(this._max64);k=k.add(j.interval)){f(k)}}else{for(var k=this.min;k<=this.max;k+=j.interval){f(k)}}},_calculateTickOffset:function(){var f=this._getSize(this.ticksOffset[0],"width"),e=this._getSize(this.ticksOffset[1],"height"),g=e;if(this.orientation==="vertical"){g=f}return g},_overlapTick:function(e){if(this.int64===true){e=e.add(this._min64);if((e.modulo(this.ticksMinor._interval64)).equals(e.modulo(this.ticksMajor._interval64))){return true}else{return false}}else{e+=this.min;if(e%this.ticksMinor.interval===e%this.ticksMajor.interval){return true}return false}},_renderConnectionLine:function(){if(!this.ticksMajor.visible&&!this.ticksMinor.visible){return}var f=this._getScaleLength(),e=this._getBorderSize(),h,j,i=this._getMaxTickSize(),g=i+e;if(this.int64===true){h=this._valueToCoordinates(this._max64);j=this._valueToCoordinates(this._min64)}else{h=this._valueToCoordinates(this.max);j=this._valueToCoordinates(this.min)}if(this.orientation==="vertical"){g+=this._getSize(this.ticksOffset[0],"width");this.renderer.line(g,h,g,j,this.scaleStyle)}else{g+=this._getSize(this.ticksOffset[1],"height");this.renderer.line(h,g,j,g,this.scaleStyle)}},_getScaleLength:function(){return this._getSize(this.scaleLength,(this.orientation==="vertical"?"height":"width"))},_renderTick:function(e,i,f,h){var g=this._handleTickCoordinates(e,i,h);this.renderer.line(Math.round(g.x1),Math.round(g.y1),Math.round(g.x2),Math.round(g.y2),f)},_handleTickCoordinates:function(e,g,f){if(this.orientation==="vertical"){return{x1:f-e,x2:f,y1:g,y2:g}}return{x1:g,x2:g,y1:f-e,y2:f}},_getTickCoordinates:function(f,g){var e=this._handleTickCoordinates(f,0,this._calculateTickOffset());if(this.orientation==="vertical"){e=e.x1}else{e=e.y1}e+=f;return e},_renderLabels:function(){if(!this.labels.visible){return}var g=this._getSize(this.ticksOffset[0],"width"),i=this._getMaxTickSize(),k=this.labels.position,j="height",f=this._getBorderSize(),h=this._calculateTickOffset()+i,e;if(this.orientation==="vertical"){g=this._getSize(this.ticksOffset[1],"height");j="width"}e=this._getMaxLabelSize()[j];if(k==="near"||k==="both"){this._labelListRender(h-i-e+f,g+f,e,"near")}if(k==="far"||k==="both"){this._labelListRender(h+i+e+f,g+f,e,"far")}},_labelListRender:function(k,e,f,m){var h,n,j,o,g=this._getScaleLength();k+=this._getSize(this.labels.offset);if(this.int64===true){h=this.labels._interval64;n=(this._max64.subtract(this._min64)).div(h).toNumber();o=(this.orientation==="vertical")?this._max64:this._min64}else{h=this.labels.interval;n=Math.abs(this.max-this.min)/h;o=(this.orientation==="vertical")?this.max:this.min}j=g/n;for(var l=0;l<=n;l+=1){this._renderLabel(e,m,k,f,o);if(this.int64===true){o=(this.orientation==="vertical")?o.subtract(h):o.add(h)}else{o+=(this.orientation==="vertical")?-h:h}e+=j}},_renderLabel:function(f,m,j,g,n){var i={"class":this.toThemeProperty("jqx-gauge-label")},h=this.labels.interval,l,e,k;k=this.labels.formatValue(n.toString(),m);e=this.renderer.measureText(k,0,i);if(this.orientation==="vertical"){l=(m==="near")?g-e.width:0;this.renderer.text(k,Math.round(j)+l-g/2,Math.round(f-e.height/2),e.width,e.height,0,i)}else{l=(m==="near")?g-e.height:0;this.renderer.text(k,Math.round(f-e.width/2),Math.round(j)+l-g/2,e.width,e.height,0,i)}},_renderRanges:function(){if(!this.showRanges){return}var h=(this.orientation==="vertical")?"width":"height",j=this._getSize(this.rangesOffset,h),g=this._getSize(this.rangeSize,h),e;for(var f=0;f<this.ranges.length;f+=1){e=this.ranges[f];e.size=g;this._renderRange(e,j)}},_renderRange:function(q,k){var h=this._getScaleLength(),j=this._getBorderSize(),i=this._getSize(this.ticksOffset[0],"width"),g=this._getSize(this.ticksOffset[1],"height"),n=this._getMaxTickSize(),p=this._getSize(q.size),m,f;if(this.int64===true){m=this._valueToCoordinates(q._endValue64);f=q._startValue64;if(f.lessThan(this._min64)){f=new d.jqx.math().fromString(this._min64.toString(),10)}}else{m=this._valueToCoordinates(q.endValue);f=q.startValue;if(f<this.min){f=this.min}}var o=Math.abs(this._valueToCoordinates(f)-m),l,e;if(this.orientation==="vertical"){l=this.renderer.rect(i+n+k-p+j,m,q.size,o,q.style)}else{e=o;l=this.renderer.rect(this._valueToCoordinates(q.startValue),g+n+j,e,q.size,q.style)}this.renderer.attr(l,q.style)},_renderPointer:function(){if(!this.pointer.visible){return}if(this.pointer.pointerType==="default"){this._renderColumnPointer()}else{this._renderArrowPointer()}},_renderColumnPointer:function(){this._pointer=this.renderer.rect(0,0,0,0,this.pointer.style);this.renderer.attr(this._pointer,this.pointer.style);if(this.int64===true){this._setValue(this._value64)}else{this._setValue(this.value)}},_renderArrowPointer:function(){var e=this._getArrowPathByValue(0);this._pointer=this.renderer.path(e,this.pointer.style)},_renderArrowPointerByValue:function(e){var f=this._getArrowPathByValue(e);this._pointer=this.renderer.path(f,this.pointer.style)},_getArrowPathByValue:function(o){var i=this._getBorderSize(),m=Math.ceil(this._valueToCoordinates(o))+i,g=i,h=Math.ceil(this._getSize(this.ticksOffset[0],"width")),f=Math.ceil(this._getSize(this.ticksOffset[1],"height")),j=Math.ceil(this._getSize(this.pointer.offset)),n=Math.ceil(this._getMaxTickSize()),r=Math.ceil(this._getSize(this.pointer.size)),k=Math.ceil(Math.sqrt((r*r)/3)),q,l,p;if(this.orientation==="vertical"){g+=h+n+j;l=(j>=0)?g+r:g-r;q="M "+g+" "+m+" L "+l+" "+(m-k)+" L "+l+" "+(m+k)}else{var e=this._getMaxLabelSize()["height"];g+=h+n+j+e;if(this._isVML){g-=2}p=m;m=g;g=p;l=m-r;q="M "+g+" "+m+" L "+(g-k)+" "+l+" L "+(g+k)+" "+l}return q},_setValue:function(e){if(this.pointer.pointerType==="default"){this._performColumnPointerLayout(e)}else{this._performArrowPointerLayout(e)}this.value=e},_performColumnPointerLayout:function(h){var e,i,p,m=this._valueToCoordinates(h),k=this._getBorderSize(),j=this._getSize(this.ticksOffset[0],"width"),g=this._getSize(this.ticksOffset[1],"height"),n=this._getMaxTickSize(),f=this._getSize(this.pointer.size),l=this._getSize(this.pointer.offset),o={};if(this.int64===true){e=this._valueToCoordinates(this._min64)}else{e=this._valueToCoordinates(this.min)}p=Math.abs(e-m);if(this.orientation==="vertical"){i=j+n;o={left:i+l+1+k,top:m,height:p,width:f}}else{i=g+n;o={left:e,top:i+l-f-1+k,height:f,width:p}}this._setRectAttrs(o)},_performArrowPointerLayout:function(f){var e=this._getArrowPathByValue(f);if(this._isVML){if(this._pointer){d(this._pointer).remove()}this._renderArrowPointerByValue(f)}else{this.renderer.attr(this._pointer,{d:e})}},_setRectAttrs:function(e){if(!this._isVML){this.renderer.attr(this._pointer,{x:e.left});this.renderer.attr(this._pointer,{y:e.top});this.renderer.attr(this._pointer,{width:e.width});this.renderer.attr(this._pointer,{height:e.height})}else{this._pointer.style.top=e.top;this._pointer.style.left=e.left;this._pointer.style.width=e.width;this._pointer.style.height=e.height}},_valueToCoordinates:function(t){var n=this._getBorderSize(),k=this._getScaleLength(),l=this._getSize(this.ticksOffset[0],"width"),j=this._getSize(this.ticksOffset[1],"height"),q,f,h;if(this.int64===true){q=t.subtract(this._min64);if(q.isNegative()){q.negate()}f=this._max64.subtract(this._min64);if(f.isNegative()){f.negate()}var e=q.toString(),g=f.toString(),m,s;if(g.length>15){var u=g.length-15;g=g.slice(0,15)+"."+g.slice(15);s=parseFloat(g);if(e.length>u){var r=e.length-u;e=e.slice(0,r)+"."+e.slice(r)}else{if(e.length===u){e="0."+e}else{var p="0.";for(var o=0;o<u-e.length;o++){p+="0"}e=p+""+e}}m=parseFloat(e)}else{m=q.toNumber();s=f.toNumber()}h=(m/s)*k}else{q=Math.abs(this.min-t);f=Math.abs(this.max-this.min);h=(q/f)*k}if(this.orientation==="vertical"){return this._height-h-(this._height-j-k)+n}return h+(this._width-l-k)+n},_getSize:function(e,f){f=f||(this.orientation==="vertical"?"width":"height");if(e.toString().indexOf("%")>=0){e=(parseInt(e,10)/100)*this["_"+f]}e=parseInt(e,10);return e},propertyChangedHandler:function(f,g,i,h){if(h==i){return}if(g=="min"){if(f.int64===true){f._min64=new d.jqx.math().fromString(h.toString(),10)}else{this.min=parseInt(h)}d.jqx.aria(this,"aria-valuemin",h)}if(g=="max"){if(f.int64===true){f._max64=new d.jqx.math().fromString(h.toString(),10)}else{this.max=parseInt(h)}d.jqx.aria(this,"aria-valuemax",h)}if(g==="disabled"){if(h){this.disable()}else{this.enable()}d.jqx.aria(this,"aria-disabled",h)}else{if(g==="value"){if(this._timeout!=undefined){clearTimeout(this._timeout);this._timeout=null}this.value=i;this.setValue(h)}else{if(g==="colorScheme"){this.pointer.style=null}else{if(g==="orientation"&&i!==h){var e=this.ticksOffset[0];this.ticksOffset[0]=this.ticksOffset[1];this.ticksOffset[1]=e}}if(g!=="animationDuration"&&g!=="easing"){this.refresh()}}}if(this.renderer instanceof d.jqx.HTML5Renderer){this.renderer.refresh()}},_backgroundConstructor:function(g,e){if(this.host){return new this._backgroundConstructor(g,e)}var f={rectangle:true,roundedRectangle:true};g=g||{};this.style=g.style||{stroke:"#cccccc",fill:null};if(g.visible||typeof g.visible==="undefined"){this.visible=true}else{this.visible=false}if(f[g.backgroundType]){this.backgroundType=g.backgroundType}else{this.backgroundType="roundedRectangle"}if(this.backgroundType==="roundedRectangle"){if(typeof g.borderRadius==="number"){this.borderRadius=g.borderRadius}else{this.borderRadius=15}}if(typeof g.showGradient==="undefined"){this.showGradient=true}else{this.showGradient=g.showGradient}},resize:function(f,e){this.width=f;this.height=e;this.refresh()},_tickConstructor:function(f,e){if(this.host){return new this._tickConstructor(f,e)}this.size=e._validatePercentage(f.size,"10%");if(f.interval){this.interval=f.interval}else{this.interval=5}if(e.int64===true){this._interval64=new d.jqx.math().fromString(this.interval.toString(),10)}else{this.interval=parseFloat(this.interval)}this.style=f.style||{stroke:"#A1A1A1","stroke-width":"1px"};if(typeof f.visible==="undefined"){this.visible=true}else{this.visible=f.visible}},_labelsConstructor:function(f,e){if(this.host){return new this._labelsConstructor(f,e)}this.position=f.position;if(this.position!=="far"&&this.position!=="near"&&this.position!=="both"){this.position="both"}if(typeof f.formatValue==="function"){this.formatValue=f.formatValue}else{this.formatValue=function(g){return g}}this.visible=f.visible;if(this.visible!==false&&this.visible!==true){this.visible=true}if(f.interval){this.interval=f.interval}else{this.interval=10}if(e.int64===true){this._interval64=new d.jqx.math().fromString(this.interval.toString(),10)}else{this.interval=parseFloat(this.interval)}this.offset=e._validatePercentage(f.offset,0)},_rangeConstructor:function(f,e){if(this.host){return new this._rangeConstructor(f,e)}if(f.startValue){this.startValue=f.startValue}else{this.startValue=e.min}if(f.endValue){this.endValue=f.endValue}else{this.endValue=e.max}if(e.int64===true){this._startValue64=new d.jqx.math().fromString(this.startValue.toString(),10);this._endValue64=new d.jqx.math().fromString(this.endValue.toString(),10);if(this._endValue64.lessThanOrEqual(this._startValue64)){this._endValue64=this._startValue64.add(new d.jqx.math().fromNumber(1,10));this.endValue=this._endValue64.toString()}}else{this.startValue=parseFloat(this.startValue);this.endValue=parseFloat(this.endValue);if(this.endValue<=this.startValue){this.endValue=this.startValue+1}}this.style=f.style||{fill:"#dddddd",stroke:"#dddddd"}},_pointerConstructor:function(g,e){if(this.host){return new this._pointerConstructor(g,e)}var f=e._getColorScheme(e.colorScheme)[0];this.pointerType=g.pointerType;if(this.pointerType!=="default"&&this.pointerType!=="arrow"){this.pointerType="default"}this.style=g.style||{fill:f,stroke:f,"stroke-width":1};this.size=e._validatePercentage(g.size,"7%");this.visible=g.visible;if(this.visible!==true&&this.visible!==false){this.visible=true}this.offset=e._validatePercentage(g.offset,0)}};d.extend(b,c);d.extend(a,c);d.jqx.jqxWidget("jqxLinearGauge","",{});d.jqx.jqxWidget("jqxGauge","",{});d.extend(d.jqx._jqxGauge.prototype,b);d.extend(d.jqx._jqxLinearGauge.prototype,a)})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.aggregates.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.aggregates.js
new file mode 100644 (file)
index 0000000..c75161c
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{_calculateaggregate:function(g,j,h,c){var f=g.aggregates;if(!f){f=j}if(f){var e=new Array();for(var d=0;d<f.length;d++){if(f[d]=="count"){continue}e[e.length]=g.cellsformat}if(this.source&&this.source.getAggregatedData){if(c==undefined){c=this.getrows()}if(this.virtualmode){var c=new Array();a.each(this.source._source.records,function(){c.push(this)})}if(h==undefined||h==true){var b=this.source.getAggregatedData([{name:g.datafield,aggregates:f,formatStrings:e}],this.gridlocalization,c);return b}else{var b=this.source.getAggregatedData([{name:g.datafield,aggregates:f}],this.gridlocalization,c);return b}}}return null},getcolumnaggregateddata:function(c,g,h,d){var e=this.getcolumn(c);var j=(h==undefined||h==false)?false:h;if(g==null){return""}var b=e.aggregates;e.aggregates=null;var i=this._calculateaggregate(e,g,j,d);var f={};if(i){f=i[c]}e.aggregates=b;return f},refreshaggregates:function(){this._updatecolumnsaggregates()},renderaggregates:function(){this._updateaggregates()},_updatecolumnaggregates:function(d,g,b){var e=this;if(!g){b.children().remove();b.html("");if(d.aggregatesrenderer){var f={};if(d.aggregates){f=this.getcolumnaggregateddata(d.datafield,d.aggregates)}var c=d.aggregatesrenderer({},d,b,null);b.html(c)}return}b.children().remove();b.html("");if(d.aggregatesrenderer){if(g){var c=d.aggregatesrenderer(g[d.datafield],d,b,this.getcolumnaggregateddata(d.datafield,g[d.datafield]));b.html(c)}}else{a.each(g,function(){var i=this;for(f in i){var j=a('<div style="position: relative; margin: 4px; overflow: hidden;"></div>');var h=f;h=e._getaggregatename(h);j.html(h+":"+i[f]);if(e.rtl){j.addClass(e.toThemeProperty("jqx-rtl"))}b.append(j)}})}},_getaggregatetype:function(c){switch(c){case"min":case"max":case"count":case"avg":case"product":case"var":case"varp":case"stdev":case"stdevp":case"sum":return c}var b=c;for(var d in c){b=d;break}return b},_getaggregatename:function(c){var b=c;switch(c){case"min":b="Min";break;case"max":b="Max";break;case"count":b="Count";break;case"avg":b="Avg";break;case"product":b="Product";break;case"var":b="Var";break;case"stdevp":b="StDevP";break;case"stdev":b="StDev";break;case"varp":b="VarP";case"sum":b="Sum";break}if(c===b&&typeof(b)!="string"){for(var d in c){b=d;break}}return b},_updatecolumnsaggregates:function(){var f=this.getrows();var b=this.columns.records.length;if(undefined!=this.statusbar[0].cells){for(var e=0;e<b;e++){var g=a(this.statusbar[0].cells[e]);var d=this.columns.records[e];var c=this._calculateaggregate(d,null,true,f);this._updatecolumnaggregates(d,c,g)}}},_updateaggregates:function(){var b=a('<div style="position: relative;" id="statusrow'+this.element.id+'"></div>');var f=0;var l=this.columns.records.length;var k=this.toThemeProperty("jqx-grid-cell");if(this.rtl){k+=" "+this.toThemeProperty("jqx-grid-cell-rtl");f=-1}k+=" "+this.toThemeProperty("jqx-grid-cell-pinned");var m=l+10;var n=new Array();this.statusbar[0].cells=n;var o=this.getrows();for(var g=0;g<l;g++){var e=this.columns.records[g];var h=this._calculateaggregate(e,e.aggregates,true,o);var c=e.width;if(c<e.minwidth){c=e.minwidth}if(c>e.maxwidth){c=e.maxwidth}var d=k;if(e.cellsalign){d+=" "+this.toThemeProperty("jqx-"+e.cellsalign+"-align")}var i=a('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+d+'"></div>');b.append(i);i.css("left",f);if(!this.rtl){i.css("z-index",m--)}else{i.css("z-index",m++)}i.width(c);i[0].left=f;if(!(e.hidden&&e.hideable)){f+=c}else{i.css("display","none")}n[n.length]=i[0];this._updatecolumnaggregates(e,h,i)}if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.css("z-index",m--)}b.width(parseFloat(f)+2);b.height(this.statusbarheight);this.statusbar.children().remove();this.statusbar.append(b);this.statusbar.removeClass(this.toThemeProperty("jqx-widget-header"));this.statusbar.addClass(k);this.statusbar.css("border-bottom-color","transparent");this.statusbar.css("border-top-width","1px");if(this.rtl&&this.hScrollBar.css("visibility")!="hidden"){this._renderhorizontalscroll()}this._arrange()}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.columnsreorder.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.columnsreorder.js
new file mode 100644 (file)
index 0000000..b88f4bb
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{getcolumnindex:function(b){var c=this.getcolumn(b);var d=this.columns.records.indexOf(c);return d},setcolumnindex:function(d,h,i){var g=this.getcolumn(d);if(g.pinned){return}if(g.hidden){return}if(g.checkboxcolumn){return}if(g.grouped){return}var k=this.columns.records.indexOf(g);this.columns.records.splice(k,1);this.columns.records.splice(h,0,g);var e=0;var m=this.headerZIndex;this.columnsrow.children().detach();var j=this.toThemeProperty("jqx-grid-cell");j+=" "+this.toThemeProperty("jqx-grid-cell-pinned");if(this.filterrow){a(this.filterrow.children()[0]).children().detach();this.filterrow[0].cells=[]}var l=this;var b=null;if(l.filterrow!=undefined){var b=a(l.filterrow.children()[0])}this.columnsrow[0].cells=[];var f=false;a.each(this.columns.records,function(n,q){var o=this.uielement;l.columnsrow.append(o);if(!l.rtl){o.css("z-index",m--)}else{o.css("z-index",m++)}var p=this.width;o.css("left",e);l.columnsrow[0].cells[l.columnsrow[0].cells.length]=o[0];if(l.filterrow){var r=a('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+j+'"></div>');b.append(r);r.css("left",e);r.css("z-index",m+1);r.width(this.width);r[0].left=e;r.append(this._filterwidget);l.filterrow[0].cells[l.filterrow[0].cells.length]=r[0]}if(this.hidden){f=true}if(!(this.hidden&&this.hideable)){e+=p}});if(this.groupable){var c=this.groups.length;if(c>0){if(k-c>=0){k-=c;h-=c}}}if(this.rowdetails){if(k-1>=0){k--;h--}}if(this.selectionmode=="checkbox"){if(k-1>=0){k--;h--}}var g=this._columns[k];this._columns.splice(k,1);this._columns.splice(h,0,g);this._raiseEvent(24,{columntext:g.text,datafield:g.datafield,oldindex:k,newindex:h});if(i==false){return}if(f||g.columntype=="checkbox"){this.prerenderrequired=true;this.rendergridcontent(true,false);this._updatecolumnwidths();this._updatecellwidths()}else{this._updatecolumnwidths();this._updatecellwidths()}if(this._updatefilterrowui&&this.filterable&&this.showfilterrow){this._updatefilterrowui()}if(this.showeverpresentrow){this._updateaddnewrowui()}this._rendercolumngroups();this._renderrows(this.virtualsizeinfo)},_pinnedColumnsLength:function(){var b=0;a.each(this.columns.records,function(){if(this.pinned){b++}if(this.grouped){b++}});if(this.selectionmode=="checkbox"){b++}return b},_handlecolumnsreorder:function(){var d=this;var g=-1;var c=false;if(!d.columnsreorder){return}var f="mousemove.reorder"+this.element.id;var e="mousedown.reorder"+this.element.id;var h="mouseup.reorder"+this.element.id;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true;f=a.jqx.mobile.getTouchEventName("touchmove")+".reorder"+this.element.id;e=a.jqx.mobile.getTouchEventName("touchstart")+".reorder"+this.element.id;h=a.jqx.mobile.getTouchEventName("touchend")+".reorder"+this.element.id}this.removeHandler(a(document),f);this.addHandler(a(document),f,function(j){if(d.resizing){return true}if(d.reordercolumn!=null){var k=parseInt(j.pageX);var r=parseInt(j.pageY);if(b){var o=d.getTouches(j);var n=o[0];if(n!=undefined){k=parseInt(n.pageX);r=parseInt(n.pageY)}}var m=d.host.coord();var s=parseInt(m.left);var t=parseInt(m.top);if(d.dragmousedownoffset==undefined||d.dragmousedownoffset==null){d.dragmousedownoffset={left:0,top:0}}var q=parseInt(k)-parseInt(d.dragmousedownoffset.left);var i=parseInt(r)-parseInt(d.dragmousedownoffset.top);d.reordercolumn.css({left:q+"px",top:i+"px"});c=false;if(k>=s&&k<=s+d.host.width()){if(r>=t&&r<=t+d.host.height()){c=true}}g=-1;if(c){d.reordercolumnicon.removeClass(d.toThemeProperty("jqx-grid-dragcancel-icon"));d.reordercolumnicon.addClass(d.toThemeProperty("jqx-grid-drag-icon"));var p=d.columnsheader.coord();var l=p.top+d.columnsheader.height();if(d.columnsdropline!=null){if(r>=p.top&&r<=l){g=d._handlereordercolumnsdroplines(k)}else{d.columnsdropline.fadeOut("slow")}}}else{if(d.columnsdropline!=null){d.columnsdropline.fadeOut("slow")}d.reordercolumnicon.removeClass(d.toThemeProperty("jqx-grid-drag-icon"));d.reordercolumnicon.addClass(d.toThemeProperty("jqx-grid-dragcancel-icon"))}if(b){j.preventDefault();j.stopPropagation();return false}}});this.columnsbounds=new Array();this.removeHandler(a(document),e);this.addHandler(a(document),e,function(j){if(d.resizing){return true}d.columnsbounds=new Array();var l=d.host.coord().left;var k=d.host.coord().top;if(d.showtoolbar){k+=d.toolbarheight}if(d.groupable&&d.showgroupsheader){k+=d.groupsheaderheight}var i=0;a.each(d.columns.records,function(n){var o=this;if(o.hidden){d.columnsbounds[d.columnsbounds.length]={top:k,column:o,left:l,width:0,height:2+d.rowsheight};return true}if(i==0){if(!d.rtl){l=parseInt(d.host.coord().left)-d.hScrollInstance.value}else{if(d.hScrollBar.css("visibility")!="hidden"){l=parseInt(d.host.coord().left)-d.hScrollInstance.max+d.hScrollInstance.value}else{l=parseInt(d.host.coord().left)+d.hScrollInstance.value}}}i++;var m=2+d.columnsheight;if(d.columnshierarchy){k=a(o.uielement).coord().top;m=a(o.uielement).height()}d.columnsbounds[d.columnsbounds.length]={top:k,column:o,left:l,width:o.width,height:m};l+=o.width})});this.removeHandler(a(document),h);this.addHandler(a(document),h,function(i){if(d.resizing){return true}d.__drag=false;a(document.body).removeClass("jqx-disableselect");var l=parseInt(i.pageX);var t=parseInt(i.pageY);if(b){var o=d.getTouches(i);var n=o[0];l=parseInt(n.pageX);t=parseInt(n.pageY)}var m=d.host.coord();var v=parseInt(m.left);var w=parseInt(m.top);var j=d.groupsheader.height();if(d.showtoolbar){w+=d.toolbarheight}d.columndragstarted=false;d.dragmousedown=null;if(d.reordercolumn!=null){var k=a.data(d.reordercolumn[0],"reorderrecord");var x=d.columns.records.indexOf(d.getcolumn(k));d.reordercolumn.remove();d.reordercolumn=null;var p=0;p+=d._pinnedColumnsLength();if(k!=null){if(c){if(g!=-1){var q=g.index;if(q>=p){var s=d.columns.records[q];if(s!=undefined){var u=d.columns.records.indexOf(d.getcolumn(s.datafield));if(s.datafield==null){var u=d.columns.records.indexOf(d.getcolumnbytext(s.text))}if(d.columngroups){var r=s;if(x<u){if(g.position=="before"){r=d.columns.records[u-1]}}if(r.columngroup!=d.getcolumn(k).columngroup){if(d.columnsdropline!=null){d.columnsdropline.remove();d.columnsdropline=null}return}}if(x<u){if(g.position=="before"){d.setcolumnindex(k,u-1)}else{d.setcolumnindex(k,u)}}else{if(x>u){d.setcolumnindex(k,u)}}if(d.autosavestate){if(d.savestate){d.savestate()}}}}}}if(d.columnsdropline!=null){d.columnsdropline.remove();d.columnsdropline=null}}}})},getcolumnbytext:function(c){var b=null;if(this.columns.records){a.each(this.columns.records,function(){if(this.text==c){b=this;return false}})}return b},_handlereordercolumnsdroplines:function(h){var b=this;var g=-1;var d=b._pinnedColumnsLength();var f=parseInt(b.host.coord().left);var c=f+b.host.width();var e=b.vScrollBar.css("visibility")!="hidden"?19:0;if(!b.rtl){e=0}a.each(b.columnsbounds,function(i){if(i>=d){if(this.width==0){return true}if(h<=this.left+this.width/2){if(h>c){b.columnsdropline.fadeOut();return false}b.columnsdropline.css("left",e+parseInt(this.left)+"px");b.columnsdropline.css("top",parseInt(this.top)+"px");b.columnsdropline.height(this.height);b.columnsdropline.fadeIn("slow");g={index:i,position:"before"};return false}else{if(h>=this.left+this.width/2){if(this.left+this.width>c){b.columnsdropline.fadeOut();return false}b.columnsdropline.css("left",e+1+this.left+this.width);b.columnsdropline.css("top",this.top);b.columnsdropline.height(this.height);b.columnsdropline.fadeIn("slow");g={index:i,position:"after"}}}}});return g},_createreordercolumn:function(c,e,h){var g=this;var f=e;if(g.reordercolumn){g.reordercolumn.remove()}if(g.columnsdropline){g.columnsdropline.remove()}g.reordercolumn=a("<div></div>");var j=c.clone();g.reordercolumn.css("z-index",999999);j.css("border-width","1px");j.css("opacity","0.4");var i=a(j.find("."+g.toThemeProperty("jqx-grid-column-menubutton")));if(i.length>0){i.css("display","none")}var b=a(j.find(".jqx-icon-close"));if(b.length>0){b.css("display","none")}g.reordercolumnicon=a('<div style="z-index: 9999; position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px;"></div>');g.reordercolumnicon.addClass(g.toThemeProperty("jqx-grid-drag-icon"));g.reordercolumn.css("float","left");g.reordercolumn.css("position","absolute");var d=g.host.coord();j.width(c.width()+16);g.reordercolumn.append(j);g.reordercolumn.height(c.height());g.reordercolumn.width(j.width());g.reordercolumn.append(g.reordercolumnicon);a(document.body).append(g.reordercolumn);j.css("margin-left",0);j.css("left",0);j.css("top",0);g.reordercolumn.css("left",f.left+g.dragmousedown.left);g.reordercolumn.css("top",f.top+g.dragmousedown.top);if(h!=undefined&&h){g.columnsdropline=a('<div style="z-index: 9999; display: none; position: absolute;"></div>');g.columnsdropline.width(2);g.columnsdropline.addClass(g.toThemeProperty("jqx-grid-group-drag-line"));a(document.body).append(g.columnsdropline)}},_handlecolumnsdragreorder:function(c,f){if(this.reordercolumn){this.reordercolumn.remove()}if(this.columnsdropline){this.columnsdropline.remove()}this.dragmousedown=null;this.dragmousedownoffset=null;this.columndragstarted=false;this.reordercolumn=null;var g=this;var e;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true}var d="mousedown.drag";var e="mousemove.drag";if(b){d=a.jqx.mobile.getTouchEventName("touchstart")+".drag";e=a.jqx.mobile.getTouchEventName("touchmove")+".drag"}else{this.addHandler(f,"dragstart",function(h){return false})}this.addHandler(f,d,function(j){if(false==c.draggable){return true}if(g.resizing){return true}g.__drag=true;var i=j.pageX;var h=j.pageY;if(b){var k=g.getTouches(j);var m=k[0];i=m.pageX;h=m.pageY}g.dragmousedown={left:i,top:h};var l=a(j.target).coord();g.dragmousedownoffset={left:parseInt(i)-parseInt(l.left),top:parseInt(h-l.top)};return true});this.addHandler(f,e,function(j){if(!c.draggable){return true}if(undefined==c.datafield){return true}if(c.pinned){return true}if(g.resizing){return true}if(g.dragmousedown){var i=j.pageX;var h=j.pageY;if(b){var l=g.getTouches(j);var n=l[0];if(n!=undefined){i=n.pageX;h=n.pageY}}e={left:i,top:h};if(!g.columndragstarted&&g.reordercolumn==null){var k=Math.abs(e.left-g.dragmousedown.left);var m=Math.abs(e.top-g.dragmousedown.top);if(k>3||m>3){g._createreordercolumn(f,e,true);a(document.body).addClass("jqx-disableselect");a.data(g.reordercolumn[0],"reorderrecord",c.datafield)}}}})}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.columnsresize.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.columnsresize.js
new file mode 100644 (file)
index 0000000..fae3032
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{autoresizecolumns:function(z,g){if(z!="cells"&&z!="all"&&z!="column"){z="all"}var A=this.that;var n=this.getrows();if(this.pageable){n=this.dataview.rows;if(this.groupable){n=this.dataview.records}}if(g==undefined){g=0}else{g=parseInt(g)}var e=n.length;if(e==undefined&&n!=undefined){var t=new Array();a.each(n,function(i){t.push(this)});n=t;e=n.length}var w=a("<span></span>");w.addClass(this.toThemeProperty("jqx-widget"));w.addClass(this.toThemeProperty("jqx-grid-cell"));a(document.body).append(w);var c=[];var f=[];var b=[];var q=[];var o=A.host.width();if(A.vScrollBar[0].style.visibility!="hidden"){o-=this.scrollbarsize+5}if(o<0){o=0}for(var x=0;x<e;x++){var k=n[x];for(var v=0;v<this.columns.records.length;v++){var d=this.columns.records[v];if(d.hidden){continue}if(this.groups.length>0&&v<=this.groups.length-1){continue}if(f[d.displayfield]==undefined){f[d.displayfield]=0}if(b[d.displayfield]==undefined){b[d.displayfield]=""}var r=k[d.displayfield];if(d.cellsformat!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(r)){r=a.jqx.dataFormat.formatdate(r,d.cellsformat,this.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(r)){r=a.jqx.dataFormat.formatnumber(r,d.cellsformat,this.gridlocalization)}}}}else{if(d.cellsrenderer){var s=A._defaultcellsrenderer(r,d);var p=d.cellsrenderer(x,d.datafield,r,s,d.getcolumnproperties(),k);if(p!=undefined){r=a(p).text()}}}if(z==undefined||z=="cells"||z=="all"){if(r!=null){var c=r.toString().length;var u=r.toString();var B=u.replace(/[^A-Z]/g,"").length;if(c>f[d.displayfield]){f[d.displayfield]=c;b[d.displayfield]=r;q[d.displayfield]=B}if(c>0&&c>=B){var m=B*20+(c-B)*15;var l=q[d.displayfield]*20+(f[d.displayfield]-q[d.displayfield])*15;if(m>l&&m>0&&l>0){f[d.displayfield]=c;b[d.displayfield]=r;q[d.displayfield]=B}}}}if(z=="column"||z=="all"){if(d.text.toString().length>f[d.displayfield]){b[d.displayfield]=d.text;f[d.displayfield]=d.text.length;var u=d.text.toString();var B=u.replace(/[^A-Z]/g,"").length;q[d.displayfield]=B}var r=d.text;var c=r.toString().length;var u=r.toString();var B=u.replace(/[^A-Z]/g,"").length;if(c>0&&c>=B){var m=B*20+(c-B)*15;var l=q[d.displayfield]*20+(f[d.displayfield]-q[d.displayfield])*15;if(m>l&&m>0&&l>0){f[d.displayfield]=c;b[d.displayfield]=r;q[d.displayfield]=B}}}}}if(!this.columns.records){return}for(var v=0;v<this.columns.records.length;v++){var d=this.columns.records[v];if(!d.displayfield){continue}if(b[d.displayfield]==undefined){b[d.displayfield]=d.text}if(w[0].className.indexOf("jqx-grid-column-header")>=0){w.removeClass(this.toThemeProperty("jqx-grid-column-header"))}if(b[d.displayfield]==d.text){w.addClass(this.toThemeProperty("jqx-grid-column-header"))}w[0].innerHTML=b[d.displayfield].toString();var y=w.outerWidth()+10;if(w.children().length>0){y=w.children().outerWidth()+10}if(a.jqx.browser.msie&&a.jqx.browser.version<8){y+=10}if(this.filterable&&this.showfilterrow){y+=5}y+=g;if(y>d.maxwidth){y=d.maxwidth}if(d._width!=undefined){d.__width=d._width}d._width=null;if(d.maxwidth=="auto"||y<=d.maxwidth){var h=d.width;if(y<d.minwidth){y=d.minwidth}d.width=y;if(d._percentagewidth!=undefined){d._percentagewidth=null}this._raiseEvent(14,{columntext:d.text,column:d.getcolumnproperties(),datafield:d.datafield,displayfield:d.displayfield,oldwidth:h,newwidth:y})}}w.remove();this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);for(var v=0;v<this.columns.records.length;v++){var d=this.columns.records[v];if(d.__width!=undefined){d._width=d.__width}}},autoresizecolumn:function(p,v,g){if(v!="cells"&&v!="all"&&v!="column"){v="all"}if(p==undefined){return false}var l=this.getrows();if(this.pageable){l=this.dataview.rows;if(this.groupable){l=this.dataview.records}}var d=this.getcolumn(p);if(d==undefined){return false}if(g==undefined){g=0}else{g=parseInt(g)}var e=l.length;var s=a("<span></span>");s.addClass(this.toThemeProperty("jqx-widget"));s.addClass(this.toThemeProperty("jqx-grid-cell"));a(document.body).append(s);var f=0;var b="";var o=0;var w=this.that;var m=w.host.width();if(w.vScrollBar[0].style.visibility!="hidden"){m-=this.scrollbarsize+5}if(m<0){m=0}if(v==undefined||v=="cells"||v=="all"){for(var t=0;t<e;t++){var q=l[t][d.displayfield];if(d.cellsformat!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(q)){q=a.jqx.dataFormat.formatdate(q,d.cellsformat,this.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(q)){q=a.jqx.dataFormat.formatnumber(q,d.cellsformat,this.gridlocalization)}}}}else{if(d.cellsrenderer){var n=d.cellsrenderer(t,d,q);if(n!=undefined){q=a(n).text()}}}if(q!=null){var c=q.toString().length;var r=q.toString();var x=r.replace(/[^A-Z]/g,"").length;if(c>f){f=c;b=q;o=x}if(c>0&&c>=x){var k=x*20+(c-x)*15;var j=o*20+(f-o)*15;if(k>j&&k>0&&j>0){f=c;b=q;o=x}}}}}if(v=="column"||v=="all"){if(d.text.toString().length>f){b=d.text}var q=d.text.toString();var c=q.toString().length;var r=q.toString();var x=r.replace(/[^A-Z]/g,"").length;if(c>0&&c>=x){var k=x*20+(c-x)*15;var j=o*20+(f-o)*15;if(k>j&&k>0&&j>0){f=c;b=q;o=x}}}if(b==undefined){b=d.text}s[0].innerHTML=b;if(b==d.text){s.addClass(this.toThemeProperty("jqx-grid-column-header"))}var u=s.outerWidth()+10;if(a.jqx.browser.msie&&a.jqx.browser.version<8){u+=5}if(this.filterable&&this.showfilterrow){u+=5}u+=g;s.remove();if(u>d.maxwidth){u=d.maxwidth}if(d.maxwidth=="auto"||u<=d.maxwidth){var h=d.width;if(u<d.minwidth){u=d.minwidth}d.width=u;if(d._width!=undefined){d.__width=d._width}d._width=null;if(d._percentagewidth!=undefined){d._percentagewidth=null}this._updatecolumnwidths();this._updatecellwidths();this._raiseEvent(14,{columntext:d.text,column:d.getcolumnproperties(),datafield:p,displayfield:d.displayfield,oldwidth:h,newwidth:u});this._renderrows(this.virtualsizeinfo);if(d._width!=undefined){d._width=d.__width}}},_handlecolumnsresize:function(){var j=this.that;if(this.columnsresize){var i=false;if(j.isTouchDevice()&&j.touchmode!==true){i=true}var f="mousemove.resize"+this.element.id;var c="mousedown.resize"+this.element.id;var d="mouseup.resize"+this.element.id;if(i){var f=a.jqx.mobile.getTouchEventName("touchmove")+".resize"+this.element.id;var c=a.jqx.mobile.getTouchEventName("touchstart")+".resize"+this.element.id;var d=a.jqx.mobile.getTouchEventName("touchend")+".resize"+this.element.id}this.removeHandler(a(document),f);this.addHandler(a(document),f,function(m){var n=a.data(document.body,"contextmenu"+j.element.id);if(n!=null&&j.autoshowcolumnsmenubutton){return true}if(j.resizablecolumn!=null&&!j.disabled&&j.resizing){if(j.resizeline!=null){var s=j.resizablecolumn.columnelement;var p=j.host.coord();var v=parseInt(j.resizestartline.coord().left);var k=v-j._startcolumnwidth;var w=j.resizablecolumn.column.minwidth;if(w=="auto"){w=0}else{w=parseInt(w)}var l=j.resizablecolumn.column.maxwidth;if(l=="auto"){l=0}else{l=parseInt(l)}var q=m.pageX;if(i){var t=j.getTouches(m);var r=t[0];q=r.pageX}k+=w;var u=l>0?v+l:0;var o=l==0?true:j._startcolumnwidth+q-v<l?true:false;if(j.rtl){var o=true}if(o){if(!j.rtl){if(q>=p.left&&q>=k){if(u!=0&&m.pageX<u){j.resizeline.css("left",q)}else{if(u==0){j.resizeline.css("left",q)}}if(i){return false}}}else{if(q>=p.left&&q<=p.left+j.host.width()){j.resizeline.css("left",q);if(i){return false}}}}}}if(!i&&j.resizablecolumn!=null){return false}});this.removeHandler(a(document),c);this.addHandler(a(document),c,function(p){var o=a.data(document.body,"contextmenu"+j.element.id);if(o!=null&&j.autoshowcolumnsmenubutton){return true}if(j.resizablecolumn!=null&&!j.disabled){var k=j.resizablecolumn.columnelement;if(k.coord().top+k.height()+5<p.pageY){j.resizablecolumn=null;return}if(k.coord().top-5>p.pageY){j.resizablecolumn=null;return}j._startcolumnwidth=j.resizablecolumn.column.width;j.resizablecolumn.column._width=null;a(document.body).addClass("jqx-disableselect");a(document.body).addClass("jqx-position-reset");j.host.addClass("jqx-disableselect");j.content.addClass("jqx-disableselect");j._mouseDownResize=new Date();j.resizing=true;if(j._lastmouseDownResize&&j.columnsautoresize){if(j._lastmouseDownResize-j._mouseDownResize<300&&j._lastmouseDownResize-j._mouseDownResize>-500){var n=j.resizablecolumn.column;if(n.resizable){var m=j.resizablecolumn.column.width;var l=j.hScrollBar[0].style.visibility;j._resizecolumn=null;j.resizeline.hide();j.resizestartline.hide();j.resizebackground.remove();j.resizablecolumn=null;j.autoresizecolumn(n.displayfield,"all");if(l!=j.hScrollBar[0].style.visibility){j.hScrollInstance.setPosition(0)}if(j.rtl){j._arrange()}if(j.autosavestate){if(j.savestate){j.savestate()}}p.stopPropagation();j.suspendClick=true;setTimeout(function(){j.suspendClick=false},100);return false}}}j._lastmouseDownResize=new Date();j._resizecolumn=j.resizablecolumn.column;j.resizeline=j.resizeline||a('<div style="position: absolute;"></div>');j.resizestartline=j.resizestartline||a('<div style="position: absolute;"></div>');j.resizebackground=j.resizebackground||a('<div style="position: absolute; left: 0; top: 0; background: #000;"></div>');j.resizebackground.css("opacity",0.01);j.resizebackground.css("cursor","col-resize");j.resizeline.css("cursor","col-resize");j.resizestartline.css("cursor","col-resize");j.resizeline.addClass(j.toThemeProperty("jqx-grid-column-resizeline"));j.resizestartline.addClass(j.toThemeProperty("jqx-grid-column-resizestartline"));a(document.body).append(j.resizeline);a(document.body).append(j.resizestartline);a(document.body).append(j.resizebackground);var q=j.resizablecolumn.columnelement.coord();j.resizebackground.css("left",j.host.coord().left);j.resizebackground.css("top",j.host.coord().top);j.resizebackground.width(j.host.width());j.resizebackground.height(j.host.height());j.resizebackground.css("z-index",9999);var r=function(t){if(!j.rtl){t.css("left",parseInt(q.left)+j._startcolumnwidth)}else{t.css("left",parseInt(q.left))}var w=j._groupsheader();var v=w?j.groupsheader.height():0;var y=j.showtoolbar?j.toolbarheight:0;v+=y;var s=j.showstatusbar?j.statusbarheight:0;v+=s;var u=0;if(j.pageable){u=j.pagerheight}var x=j.hScrollBar.css("visibility")=="visible"?17:0;t.css("top",parseInt(q.top));t.css("z-index",99999);if(j.columngroups){t.height(j.host.height()+j.resizablecolumn.columnelement.height()-u-v-x-j.columngroupslevel*j.columnsheight)}else{t.height(j.host.height()-u-v-x)}if(j.enableanimations){t.show("fast")}else{t.show()}};r(j.resizeline);r(j.resizestartline);j.dragmousedown=null}});var e=function(){a(document.body).removeClass("jqx-disableselect");a(document.body).removeClass("jqx-position-reset");if(j.showfilterrow||j.showstatusbar||j.showtoolbar||j.enablebrowserselection){j.host.removeClass("jqx-disableselect");j.content.removeClass("jqx-disableselect")}if(!j.resizing){return}j._mouseUpResize=new Date();var r=j._mouseUpResize-j._mouseDownResize;if(r<200){j.resizing=false;if(j._resizecolumn!=null&&j.resizeline!=null&&j.resizeline.css("display")=="block"){j._resizecolumn=null;j.resizeline.hide();j.resizestartline.hide();j.resizebackground.remove()}return}j.resizing=false;if(j.disabled){return}var p=j.host.width();if(j.vScrollBar[0].style.visibility!="hidden"){p-=20}if(p<0){p=0}if(j._resizecolumn!=null&&j.resizeline!=null&&j.resizeline.css("display")=="block"){var s=parseInt(j.resizeline.css("left"));var o=parseInt(j.resizestartline.css("left"));var l=j._startcolumnwidth+s-o;if(j.rtl){var l=j._startcolumnwidth-s+o}var q=j._resizecolumn.width;j._closemenu();if(l<j._resizecolumn.minwidth){l=j._resizecolumn.minwidth}j._resizecolumn.width=l;if(j._resizecolumn._percentagewidth!=undefined){j._resizecolumn._percentagewidth=(l/p)*100}for(var k=0;k<j._columns.length;k++){if(j._columns[k].datafield===j._resizecolumn.datafield){j._columns[k].width=j._resizecolumn.width;if(j._columns[k].width<j._resizecolumn.minwidth){j._columns[k].width=j._resizecolumn.minwidth}break}}var n=j.hScrollBar[0].style.visibility;j._updatecolumnwidths();j._updatecellwidths();j._raiseEvent(14,{columntext:j._resizecolumn.text,column:j._resizecolumn.getcolumnproperties(),datafield:j._resizecolumn.datafield,oldwidth:q,newwidth:l});j._renderrows(j.virtualsizeinfo);if(j.autosavestate){if(j.savestate){j.savestate()}}if(n!=j.hScrollBar[0].style.visibility){j.hScrollInstance.setPosition(0)}if(j.rtl){j._arrange()}j._resizecolumn=null;j.resizeline.hide();j.resizestartline.hide();j.resizebackground.remove();j.resizablecolumn=null}else{j.resizablecolumn=null}};try{if(document.referrer!=""||window.frameElement){var b=null;if(window.top!=null&&window.top!=window.self){if(window.parent&&document.referrer){b=document.referrer}}if(b&&b.indexOf(document.location.host)!=-1){var g=function(k){e()};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}catch(h){}this.removeHandler(a(document),d);this.addHandler(a(document),d,function(l){var k=a.data(document.body,"contextmenu"+j.element.id);if(k!=null&&j.autoshowcolumnsmenubutton){return true}e()})}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.edit.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.edit.js
new file mode 100644 (file)
index 0000000..3f7d730
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{_handledblclick:function(t,n){if(t.target==null){return}if(n.disabled){return}if(a(t.target).ischildof(this.columnsheader)){return}var w;if(t.which){w=(t.which==3)}else{if(t.button){w=(t.button==2)}}if(w){return}var B;if(t.which){B=(t.which==2)}else{if(t.button){B=(t.button==1)}}if(B){return}var v=this.showheader?this.columnsheader.height()+2:0;var o=this._groupsheader()?this.groupsheader.height():0;var A=this.showtoolbar?this.toolbarheight:0;o+=A;var e=this.host.offset();var m=t.pageX-e.left;var l=t.pageY-v-e.top-o;var b=this._hittestrow(m,l);if(!b){return}var h=b.row;var j=b.index;var q=t.target.className;var p=this.table[0].rows[j];if(p==null){return}n.mousecaptured=true;n.mousecaptureposition={left:t.pageX,top:t.pageY-o};var r=this.hScrollInstance;var s=r.value;var d=0;var k=this.groupable?this.groups.length:0;for(var u=0;u<p.cells.length;u++){var f=parseInt(a(this.columnsrow[0].cells[u]).css("left"));var g=f-s;if(n.columns.records[u].pinned){g=f}var c=this._getcolumnat(u);if(c!=null&&c.hidden){continue}var z=g+a(this.columnsrow[0].cells[u]).width();if(z>=m&&m>=g){d=u;break}}if(h!=null){var c=this._getcolumnat(d);if(!(q.indexOf("jqx-grid-group-expand")!=-1||q.indexOf("jqx-grid-group-collapse")!=-1)){if(h.boundindex!=-1){n.begincelledit(n.getboundindex(h),c.datafield,c.defaulteditorvalue)}}}},_getpreveditablecolumn:function(c){var b=this;while(c>0){c--;var d=b.getcolumnat(c);if(!d){return null}if(!d.editable){continue}if(!d.hidden){return d}}return null},_getnexteditablecolumn:function(c){var b=this;while(c<this.columns.records.length){c++;var d=b.getcolumnat(c);if(!d){return null}if(!d.editable){continue}if(!d.hidden){return d}}return null},_handleeditkeydown:function(E,y){if(y.handlekeyboardnavigation){var q=y.handlekeyboardnavigation(E);if(q==true){return true}}var J=E.charCode?E.charCode:E.keyCode?E.keyCode:0;if(y.showfilterrow&&y.filterable){if(this.filterrow){if(a(E.target).ischildof(this.filterrow)){return true}}}if(y.pageable){if(a(E.target).ischildof(this.pager)){return true}}if(this.showtoolbar){if(a(E.target).ischildof(this.toolbar)){return true}}if(this.showeverpresentrow){if(this.addnewrowtop){if(a(E.target).ischildof(this.addnewrowtop)){return true}}if(this.addnewrowbottom){if(a(E.target).ischildof(this.addnewrowbottom)){return true}}}if(this.showstatusbar){if(a(E.target).ischildof(this.statusbar)){return true}}if(this.rowdetails){if(a(E.target).ischildof(this.content.find("[role='rowgroup']"))){return true}}if(this.editcell){if(this.editmode==="selectedrow"){if(J===13){this.endrowedit(this.editcell.row,false)}else{if(J===27){this.endrowedit(this.editcell.row,true)}}if(J===9){return false}return true}if(this.editcell.columntype==null||this.editcell.columntype=="textbox"||this.editcell.columntype=="numberinput"||this.editcell.columntype=="combobox"||this.editcell.columntype=="datetimeinput"){if(J>=33&&J<=40&&y.selectionmode=="multiplecellsadvanced"){var i=this.editcell.columntype=="textbox"||this.editcell.columntype==null?this.editcell.editor:this.editcell.editor.find("input");var K=y._selection(i);var z=i.val().length;if(K.length>0&&this.editcell.columntype!="datetimeinput"){y._cancelkeydown=true}if(K.start>0&&J==37){y._cancelkeydown=true}if(K.start<z&&J==39&&this.editcell.columntype!="datetimeinput"){y._cancelkeydown=true}if(this.editcell.columntype=="datetimeinput"&&J==39){if(K.start+K.length<z){y._cancelkeydown=true}}}}else{if(this.editcell.columntype=="dropdownlist"){if(J==37||J==39&&y.selectionmode=="multiplecellsadvanced"){y._cancelkeydown=false}}else{if(this.selectionmode=="multiplecellsadvanced"&&this.editcell.columntype!="textbox"&&this.editcell.columntype!="numberinput"){y._cancelkeydown=true}}}if(J==32){if(y.editcell.columntype=="checkbox"){var f=y.getcolumn(y.editcell.datafield);if(f.editable){var o=!y.getcellvalue(y.editcell.row,y.editcell.column);if(f.cellbeginedit){var b=f.cellbeginedit(y.editcell.row,f.datafield,f.columntype,!o);if(b==false){return false}}var k=y.getrowdata(y.editcell.row);y.setcellvalue(y.editcell.row,y.editcell.column,o,true);y._raiseEvent(18,{rowindex:y.editcell.row,row:k,datafield:y.editcell.column,oldvalue:!o,value:o,columntype:"checkbox"});return false}}}if(J==9){var h=this.editcell.row;var w=this.editcell.column;var n=w;var B=y._getcolumnindex(w);var v=false;var d=y.getrowvisibleindex(h);this.editchar="";var e=this.editcell.validated;if(!this.editcell.validated){var e=this.endcelledit(this.editcell.row,this.editcell.column,false,true,false)}if(e!=false){if(E.shiftKey){var f=y._getpreveditablecolumn(B);if(f){w=f.datafield;v=true;if(y.selectionmode.indexOf("cell")!=-1){y.selectprevcell(h,n);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}else{var p=y._getlastvisiblecolumn();v=true;w=p.displayfield;h--;if(y.selectionmode.indexOf("cell")!=-1){y.clearselection();y.selectcell(h,w);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}}else{var f=y._getnexteditablecolumn(B);if(f){w=f.datafield;v=true;if(y.selectionmode.indexOf("cell")!=-1){y.selectnextcell(h,n);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}else{var I=y._getfirstvisiblecolumn();v=true;w=I.displayfield;h++;if(y.selectionmode.indexOf("cell")!=-1){y.clearselection();y.selectcell(h,w);y._oldselectedcell=y.selectedcell;setTimeout(function(){y.ensurecellvisible(d,w)},10)}}}if(v){y.begincelledit(h,w);if(this.editcell!=null&&this.editcell.columntype=="checkbox"){this._renderrows(this.virtualsizeinfo)}}else{if(this.editcell!=null){y.endcelledit(h,w,false);this._renderrows(this.virtualsizeinfo)}return true}}return false}else{if(J==13){var u=this.selectedcell;if(u){var x=this.getrowvisibleindex(u.rowindex)}this.endcelledit(this.editcell.row,this.editcell.column,false,true);if(this.selectionmode=="multiplecellsadvanced"){var c=y.getselectedcell();if(c!=null){if(y.selectcell){if(this.editcell==null){if(c.rowindex+1<this.dataview.totalrecords){if(this.sortcolumn!=c.datafield){var d=this.getrowvisibleindex(c.rowindex);var H=this.dataview.loadedrecords[d+1];if(H){if(!this.pageable||(this.pageable&&d+1<(this.dataview.pagenum+1)*this.pagesize)){this.clearselection(false);this.selectcell(this.getboundindex(H),c.datafield);var c=this.getselectedcell();this.ensurecellvisible(H.visibleindex,c.datafield)}}}else{if(u!=null){var G=this.dataview.loadedrecords[x+1];if(G){if(!this.pageable||(this.pageable&&x+1<this.pagesize)){this.clearselection(false);this.selectcell(this.getboundindex(G),c.datafield)}else{if(this.pageable&&x+1>=this.pagesize){this.clearselection(false);var G=this.dataview.loadedrecords[x];this.selectcell(this.getboundindex(G),c.datafield)}}}}}}}}}}return false}else{if(J==27){this.endcelledit(this.editcell.row,this.editcell.column,true,true);return false}}}}else{var A=false;if(J==113){A=true}if(!E.ctrlKey&&!E.altKey&&!E.metaKey){if(J>=48&&J<=57){this.editchar=String.fromCharCode(J);A=true}if(J>=65&&J<=90){this.editchar=String.fromCharCode(J);var t=false;if(E.shiftKey){t=E.shiftKey}else{if(E.modifiers){t=!!(E.modifiers&4)}}if(!t){this.editchar=this.editchar.toLowerCase()}A=true}else{if(J>=96&&J<=105){this.editchar=J-96;this.editchar=this.editchar.toString();A=true}}var s=a(".jqx-grid").length;A=A&&(s==1||(s>1&&y.focused));var l=a.data(document.body,"jqxgrid.edit");if(l!==undefined&&l!==""){if(J===13||A){if(l!=y.element.id){return true}}}}if(J==13||A){if(y.getselectedrowindex){var h=y.getselectedrowindex();switch(y.selectionmode){case"singlerow":case"multiplerows":case"multiplerowsextended":if(h>=0){var w="";for(var C=0;C<y.columns.records.length;C++){var f=y.getcolumnat(C);if(f.editable){w=f.datafield;break}}y.begincelledit(h,w)}break;case"singlecell":case"multiplecells":case"multiplecellsextended":var c=y.getselectedcell();if(c!=null){var f=y._getcolumnbydatafield(c.datafield);if(f.columntype!="checkbox"){y.begincelledit(c.rowindex,c.datafield)}}break;case"multiplecellsadvanced":var c=y.getselectedcell();if(c!=null){if(J==13){if(y.selectcell){if(c.rowindex+1<y.dataview.totalrecords){var d=this.getrowvisibleindex(c.rowindex);var H=this.dataview.loadedrecords[d+1];if(H){this.clearselection(false);this.selectcell(this.getboundindex(H),c.datafield);var c=this.getselectedcell();this.ensurecellvisible(H.visibleindex,c.datafield)}}}}else{if(y.editmode!=="selectedrow"){y.begincelledit(c.rowindex,c.datafield)}}}break}return false}}if(J==46){var g=y.getselectedcells();if(y.selectionmode.indexOf("cell")==-1){if(y._getcellsforcopypaste){g=y._getcellsforcopypaste()}}if(g!=null&&g.length>0){for(var r=0;r<g.length;r++){var c=g[r];if(!c.datafield){continue}var f=y.getcolumn(c.datafield);var F=y.getcellvalue(c.rowindex,c.datafield);if(F!==""&&f.editable&&y.enablekeyboarddelete){var j=null;if(f.columntype=="checkbox"){if(!f.threestatecheckbox){j=false}}if(f.cellbeginedit){var b=f.cellbeginedit(c.rowindex,f.datafield,f.columntype,j);if(b==false){return false}}var k=y.getrowdata(c.rowindex);y._raiseEvent(17,{rowindex:c.rowindex,row:k,datafield:c.datafield,value:F});if(r==g.length-1){y.setcellvalue(c.rowindex,c.datafield,j,true);if(f.displayfield!=f.datafield){y.setcellvalue(c.rowindex,f.displayfield,j,true)}}else{y.setcellvalue(c.rowindex,c.datafield,j,false);if(f.displayfield!=f.datafield){y.setcellvalue(c.rowindex,f.displayfield,j,true)}}if(f.cellendedit){var D=f.cellendedit(c.rowindex,f.datafield,f.columntype,j)}y._raiseEvent(18,{rowindex:c.rowindex,row:k,datafield:c.datafield,oldvalue:F,value:j})}}this.dataview.updateview();this._renderrows(this.virtualsizeinfo);return false}}if(J==32){var c=y.getselectedcell();if(c!=null){var f=y.getcolumn(c.datafield);if(f.columntype=="checkbox"&&f.editable){var o=!y.getcellvalue(c.rowindex,c.datafield);if(f.cellbeginedit){var b=f.cellbeginedit(c.rowindex,f.datafield,f.columntype,!o);if(b==false){return false}}var k=y.getrowdata(c.rowindex);y._raiseEvent(17,{rowindex:c.rowindex,row:k,datafield:c.datafield,value:!o,columntype:"checkbox"});y.setcellvalue(c.rowindex,c.datafield,o,true);y._raiseEvent(18,{rowindex:c.rowindex,row:k,datafield:c.datafield,oldvalue:!o,value:o,columntype:"checkbox"});return false}}}}return true},begincelledit:function(n,e,l,g,c){var f=this.getcolumn(e);this._cellscache=new Array();if(e==null){return}if(f.columntype=="number"||f.columntype=="button"){return}if(this.groupable){if(this.groups.indexOf(e)>=0){return}if(this.groups.indexOf(f.displayfield)>=0){return}}if(this.editrow!=undefined){return}if(this.editcell){if(this.editcell.row==n&&this.editcell.column==e){return true}if(this.editmode==="selectedrow"){if(this.editcell.row==n){return}}var d=this.endcelledit(this.editcell.row,this.editcell.column,false,true,false);if(false==d){return}}var i=f.columntype=="checkbox"||f.columntype=="button";this.host.removeClass("jqx-disableselect");this.content.removeClass("jqx-disableselect");if(f.editable){if(f.cellbeginedit){var k=this.getcell(n,e);var m=f.cellbeginedit(n,e,f.columntype,k!=null?k.value:null);if(m==false){return}}var j=this.getrowvisibleindex(n);this.editcell=this.getcell(n,e);if(this.editcell){this.editcell.visiblerowindex=j;if(!this.editcell.editing){if(!i){this.editcell.editing=true}this.editcell.columntype=f.columntype;this.editcell.defaultvalue=l;if(f.defaultvalue!=undefined){this.editcell.defaultvalue=f.defaultvalue}this.editcell.init=true;if(f.columntype!="checkbox"&&this.editmode!="selectedrow"){var h=this.getrowdata(n);this._raiseEvent(17,{rowindex:n,row:h,datafield:f.datafield,value:this.editcell.value,columntype:f.columntype})}a.data(document.body,"jqxgrid.edit",this.element.id);if(!i){var b=this.getrowvisibleindex(n);if(g!==false){this.ensurecellvisible(b,f.datafield)}if(c!==false){this._renderrows(this.virtualsizeinfo)}}if(this.editcell){this.editcell.init=false;return true}}}}else{if(!this.editcell){return}this.editcell.editor=null;this.editcell.editing=false;if(c!==false){this._renderrows(this.virtualsizeinfo)}this.editcell=null}},getScrollTop:function(){if(this._py){return pageYOffset}this._py=typeof pageYOffset!="undefined";if(this._py){return pageYOffset}else{var c=document.body;var b=document.documentElement;b=(b.clientHeight)?b:c;return b.scrollTop}},getScrollLeft:function(){if(typeof pageXOffset!="undefined"){return pageXOffset}else{var c=document.body;var b=document.documentElement;b=(b.clientHeight)?b:c;return b.scrollLeft}},endcelledit:function(h,n,j,e,o){if(h==undefined||n==undefined){if(this.editcell){h=this.editcell.row;n=this.editcell.column}if(j==undefined){j=true}}if(!this.editcell){return}var d=this.getcolumn(n);var u=this;if(u.editmode==="selectedrow"){this.endrowedit(h,j);return}var t=function(){if(o!=false){if(u.isTouchDevice()){return}if(!u.isNestedGrid){var v=u.getScrollTop();var x=u.getScrollLeft();try{u.element.focus();u.content.focus();if(v!=u.getScrollTop()){window.scrollTo(x,v)}setTimeout(function(){u.element.focus();u.content.focus();if(v!=u.getScrollTop()){window.scrollTo(x,v)}},10)}catch(w){}}}};if(d.columntype=="checkbox"||d.columntype=="button"){if(this.editcell){this.editcell.editor=null;this.editcell.editing=false;this.editcell=null}return true}var i=this._geteditorvalue(d);var g=function(w){w._hidecelleditor();if(d.cellendedit){d.cellendedit(h,n,d.columntype,w.editcell.value,i)}w.editchar=null;if(d.displayfield!=d.datafield){var v=w.getcellvalue(w.editcell.row,d.displayfield);var x=w.editcell.value;oldvalue={value:x,label:v}}else{oldvalue=w.editcell.value}var y=w.getrowdata(h);w._raiseEvent(18,{rowindex:h,row:y,datafield:n,displayfield:d.displayfield,oldvalue:i,value:i,columntype:d.columntype});w.editcell.editor=null;w.editcell.editing=false;w.editcell=null;if(e||e==undefined){w._renderrows(w.virtualsizeinfo)}t();if(!w.enablebrowserselection){w.host.addClass("jqx-disableselect");w.content.addClass("jqx-disableselect")}};if(j){g(this);return false}if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}if(d.cellvaluechanging){var b=d.cellvaluechanging(h,n,d.columntype,this.editcell.value,i);if(b!=undefined){i=b}}if(d.validation){var c=this.getcell(h,n);try{var p=d.validation(c,i);var l=this.gridlocalization.validationstring;if(p.message!=undefined){l=p.message}var m=typeof p=="boolean"?p:p.result;if(!m){if(p.showmessage==undefined||p.showmessage==true){this._showvalidationpopup(h,n,l)}this.editcell.validated=false;return false}}catch(r){this._showvalidationpopup(h,n,this.gridlocalization.validationstring);this.editcell.validated=false;return false}}if(d.displayfield!=d.datafield){var k=this.getcellvalue(this.editcell.row,d.displayfield);var q=this.editcell.value;oldvalue={value:q,label:k}}else{oldvalue=this.editcell.value}var f=this.getrowdata(h);if(d.cellendedit){var s=d.cellendedit(h,n,d.columntype,this.editcell.value,i);if(s==false){this._raiseEvent(18,{rowindex:h,row:f,datafield:n,displayfield:d.displayfield,oldvalue:oldvalue,value:oldvalue,columntype:d.columntype});g(this);return false}}this._raiseEvent(18,{rowindex:h,row:f,datafield:n,displayfield:d.displayfield,oldvalue:oldvalue,value:i,columntype:d.columntype});this._hidecelleditor(false);if(this.editcell!=undefined){this.editcell.editor=null;this.editcell.editing=false}this.editcell=null;this.editchar=null;this.setcellvalue(h,n,i,e);if(!this.enablebrowserselection){this.host.addClass("jqx-disableselect");this.content.addClass("jqx-disableselect")}if(!a.jqx.browser.msie){t()}a.data(document.body,"jqxgrid.edit","");return true},beginrowedit:function(e){var d=this;var f=-1;d._oldselectedrow=e;this._cellscache=new Array();var c=false;if(this.editmode!="selectedrow"){c=true}if(c){var b=this.editmode;this.editmode="selectedrow"}a.each(this.columns.records,function(h,j){if(d.editable&&this.editable){var g=d.getcell(e,this.datafield);d.begincelledit(e,this.datafield,null,false,false);var i=d.getrowdata(e);d._raiseEvent(17,{rowindex:e,row:i,datafield:this.datafield,value:g.value,columntype:this.columntype})}});if(d.editcell){d.editcell.init=true}this._renderrows(this.virtualsizeinfo);if(c){this.editmode=b}},endrowedit:function(k,o){var D=this;if(!this.editcell){return false}if(this.editcell.editor==undefined){return false}var C=function(){if(focus!=false){if(D.isTouchDevice()){return}if(!D.isNestedGrid){var i=D.getScrollTop();var F=D.getScrollLeft();try{D.element.focus();D.content.focus();if(i!=D.getScrollTop()){window.scrollTo(F,i)}setTimeout(function(){D.element.focus();D.content.focus();if(i!=D.getScrollTop()){window.scrollTo(F,i)}},10)}catch(E){}}}};var p=false;if(this.editmode!="selectedrow"){p=true}if(p){var v=this.editmode;this.editmode="selectedrow"}var h=false;var d={};if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}for(var B=0;B<this.columns.records.length;B++){var e=this.columns.records[B];if(!e.editable){continue}if(e.hidden){continue}if(e.columntype=="checkbox"){continue}var l=this._geteditorvalue(e);var g=function(F){F._hidecelleditor();var E=F.getcellvalue(F.editcell.row,e.displayfield);if(e.cellendedit){e.cellendedit(k,u,e.columntype,E,l)}F.editchar=null;if(e.displayfield!=e.datafield){var i=F.getcellvalue(F.editcell.row,e.displayfield);var H=E;n={value:H,label:i}}else{n=E}var G=F.getrowdata(k);F._raiseEvent(18,{rowindex:k,row:G,datafield:u,displayfield:e.displayfield,oldvalue:E,value:E,columntype:e.columntype});F.editcell.editing=false};if(o){g(this);continue}if(e.cellvaluechanging){var n=this.getcellvalue(this.editcell.row,e.displayfield);var b=e.cellvaluechanging(k,u,e.columntype,n,l);if(b!=undefined){l=b}}var u=e.datafield;if(e.validation){var c=this.getcell(k,e.datafield);try{var w=e.validation(c,l);var r=this.gridlocalization.validationstring;if(w.message!=undefined){r=w.message}var t=typeof w=="boolean"?w:w.result;if(!t){if(w.showmessage==undefined||w.showmessage==true){this._showvalidationpopup(k,u,r)}h=true;this.editcell[e.datafield].validated=false;continue}}catch(z){this._showvalidationpopup(k,u,this.gridlocalization.validationstring);this.editcell[e.datafield].validated=false;h=true;continue}}if(e.displayfield!=e.datafield){var q=this.getcellvalue(this.editcell.row,e.displayfield);var x=this.editcell.value;n={value:x,label:q}}else{n=this.getcellvalue(this.editcell.row,e.displayfield)}d[e.datafield]={newvalue:l,oldvalue:n}}var y={};var s={};if(!h){this._hidecelleditor(false);for(var B=0;B<this.columns.records.length;B++){var e=this.columns.records[B];var u=e.datafield;if(e.hidden){continue}if(!e.editable){continue}var f=this.getrowdata(k);if(e.columntype=="checkbox"){var l=this.getcellvalue(k,e.displayfield);this._raiseEvent(18,{rowindex:k,row:f,datafield:e.datafield,displayfield:e.displayfield,oldvalue:l,value:l,columntype:e.columntype});continue}if(!d[e.datafield]){continue}var l=d[e.datafield].newvalue;var n=d[e.datafield].oldvalue;if(e.cellendedit){var A=e.cellendedit(k,u,e.columntype,n,l);if(A==false){this._raiseEvent(18,{rowindex:k,row:f,datafield:u,displayfield:e.displayfield,oldvalue:n,value:n,columntype:e.columntype});g(this);continue}}if(!this.source.updaterow){this._raiseEvent(18,{rowindex:k,row:f,datafield:e.datafield,displayfield:e.displayfield,oldvalue:n,value:l,columntype:e.columntype})}y[e.datafield]=l;s[e.datafield]=n}var j=this.getrowid(k);var f=this.getrowdata(k);a.each(y,function(i,F){if(F&&F.label!=undefined){var E=D.getcolumn(i);f[E.displayfield]=F.label;f[E.datafield]=F.value}else{f[i]=F}});if(!this.enablebrowserselection){this.host.addClass("jqx-disableselect");this.content.addClass("jqx-disableselect")}a.data(document.body,"jqxgrid.edit","");this.editcell=null;this.editchar=null;if(this.source.updaterow){var m=false;var D=this;var t=function(I){var G=D.source.updaterow;D.source.updaterow=null;if(false==I){a.each(s,function(i,K){if(K&&K.label!=undefined){var J=D.getcolumn(i);f[J.displayfield]=K.label;f[J.datafield]=K.value}else{f[i]=K}});D.updaterow(j,f)}else{D.updaterow(j,f)}for(var F=0;F<D.columns.records.length;F++){var H=D.columns.records[F];var E=H.datafield;D._raiseEvent(18,{rowindex:k,datafield:H.datafield,row:f,displayfield:H.displayfield,oldvalue:s[H.datafield],value:f[H.displayfield],columntype:H.columntype})}D.source.updaterow=G};try{m=this.source.updaterow(j,f,t);if(m==undefined){m=true}}catch(z){m=false;return}}else{this.updaterow(j,f);this._renderrows(this.virtualsizeinfo)}}if(p){this.editmode=v}return h},_selection:function(b){if("selectionStart" in b[0]){var g=b[0];var h=g.selectionEnd-g.selectionStart;return{start:g.selectionStart,end:g.selectionEnd,length:h,text:g.value}}else{var d=document.selection.createRange();if(d==null){return{start:0,end:g.value.length,length:0}}var c=b[0].createTextRange();var f=c.duplicate();c.moveToBookmark(d.getBookmark());f.setEndPoint("EndToStart",c);var h=d.text.length;return{start:f.text.length,end:f.text.length+d.text.length,length:h,text:d.text}}},_setSelection:function(e,b,d){if("selectionStart" in d[0]){d[0].focus();d[0].setSelectionRange(e,b)}else{var c=d[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",e);c.select()}},findRecordIndex:function(g,c,b){var b=b;if(c){var e=b.length;for(var h=0;h<e;h++){var f=b[h];var d=f.label;if(g==d){return h}}}return -1},_destroyeditors:function(){var b=this;if(!this.columns.records){return}a.each(this.columns.records,function(f,j){var c=a.trim(this.datafield).split(" ").join("");switch(this.columntype){case"dropdownlist":var g=b.editors["dropdownlist_"+c];if(g){g.jqxDropDownList("destroy");b.editors["dropdownlist_"+c]=null}break;case"combobox":var k=b.editors["combobox_"+c];if(k){k.jqxComboBox("destroy");b.editors["combobox_"+c]=null}break;case"datetimeinput":var d=b.editors["datetimeinput_"+this.datafield];if(d){d.jqxDateTimeInput("destroy");b.editors["datetimeinput_"+c]=null}break;case"numberinput":var e=b.editors["numberinput_"+c];if(e){e.jqxNumberInput("destroy");b.editors["numberinput_"+c]=null}break;case"custom":case"template":if(b.destroyeditor){if(b.editors["templateeditor_"+c]){b.destroyeditor(b.editors["templateeditor_"+c]);b.editors["templateeditor_"+c]=null}}if(b.destroyeditor){var m=b.getrows.length();for(var l=0;l<m;l++){if(b.editors["customeditor_"+c+"_"+l]){b.destroyeditor(b.editors["customeditor_"+c+"_"+l],l);b.editors["customeditor_"+c+"_"+l]=null}}}break;case"textbox":default:var h=b.editors["textboxeditor_"+c];if(h){b.removeHandler(h,"keydown");b.editors["textbox_"+c]=null}break}});b.editors=new Array()},_showcelleditor:function(q,G,n,K,w){if(n==undefined){return}if(this.editcell==null){return}if(G.columntype=="checkbox"&&G.editable){return}if(w==undefined){w=true}if(this.editmode=="selectedrow"){this.editchar="";w=false}var E=G.datafield;var g=a(n);var s=this;var d=this.editcell.editor;var I=this.getcellvalue(q,E);var C=this.getcelltext(q,E);var j=this.hScrollInstance;var t=j.value;var i=parseInt(t);var J=this.columns.records.indexOf(G);this.editcell.element=n;if(this.editcell.validated==false){var H="";if(this.validationpopup){H=this.validationpopup.text()}this._showvalidationpopup(q,E,H)}var l=function(P){if(s.hScrollInstance.isScrolling()||s.vScrollInstance.isScrolling()){return}if(!w){return}if(s.isTouchDevice()){return}if(P){P.focus()}if(s.gridcontent[0].scrollTop!=0){s.scrolltop(Math.abs(s.gridcontent[0].scrollTop));s.gridcontent[0].scrollTop=0}if(s.gridcontent[0].scrollLeft!=0){s.gridcontent[0].scrollLeft=0}};switch(G.columntype){case"dropdownlist":if(this.host.jqxDropDownList){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");var A=a.trim(G.displayfield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}if(A.indexOf(".")!=-1){A=A.replace(".","")}var k=this.editors["dropdownlist_"+D];d=k==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='dropdownlisteditor'></div>"):k;d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(k==undefined){d.prependTo(this.table);d[0].id="dropdownlisteditor"+this.element.id+D;var f=this.source._source?true:false;var x=null;if(!f){x=new a.jqx.dataAdapter(this.source,{autoBind:false,uniqueDataFields:[A],async:false,autoSort:true,autoSortField:A})}else{var p={localdata:this.source.records,datatype:this.source.datatype,async:false};x=new a.jqx.dataAdapter(p,{autoBind:false,async:false,uniqueDataFields:[A],autoSort:true,autoSortField:A})}var u=!G.createeditor?true:false;d.jqxDropDownList({enableBrowserBoundsDetection:true,keyboardSelection:false,source:x,rtl:this.rtl,autoDropDownHeight:u,theme:this.theme,width:g.width()-2,height:g.height()-2,displayMember:A,valueMember:E});this.editors["dropdownlist_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxDropDownList({width:g.width()-2})}var c=d.jqxDropDownList("listBox").visibleItems;if(!G.createeditor){if(c.length<8){d.jqxDropDownList("autoDropDownHeight",true)}else{d.jqxDropDownList("autoDropDownHeight",false)}}var I=this.getcellvalue(q,A);var z=this.findRecordIndex(I,A,c);if(K){if(I!=""){d.jqxDropDownList("selectIndex",z,true)}else{d.jqxDropDownList("selectIndex",-1)}}if(!this.editcell){return}if(this.editcell.defaultvalue!=undefined){d.jqxDropDownList("selectIndex",this.editcell.defaultvalue,true)}if(w){d.jqxDropDownList("focus")}}break;case"combobox":if(this.host.jqxComboBox){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");var A=a.trim(G.displayfield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}if(A.indexOf(".")!=-1){A=A.replace(".","")}var r=this.editors["combobox_"+D];d=r==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='comboboxeditor'></div>"):r;d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(r==undefined){d.prependTo(this.table);d[0].id="comboboxeditor"+this.element.id+D;var f=this.source._source?true:false;var x=null;if(!f){x=new a.jqx.dataAdapter(this.source,{autoBind:false,uniqueDataFields:[A],async:false,autoSort:true,autoSortField:A})}else{var p={localdata:this.source.records,datatype:this.source.datatype,async:false};x=new a.jqx.dataAdapter(p,{autoBind:false,async:false,uniqueDataFields:[A],autoSort:true,autoSortField:A})}var u=!G.createeditor?true:false;d.jqxComboBox({enableBrowserBoundsDetection:true,keyboardSelection:false,source:x,rtl:this.rtl,autoDropDownHeight:u,theme:this.theme,width:g.width()-2,height:g.height()-2,displayMember:A,valueMember:E});d.removeAttr("tabindex");d.find("div").removeAttr("tabindex");this.editors["combobox_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxComboBox({width:g.width()-2})}var c=d.jqxComboBox("listBox").visibleItems;if(!G.createeditor){if(c.length<8){d.jqxComboBox("autoDropDownHeight",true)}else{d.jqxComboBox("autoDropDownHeight",false)}}var I=this.getcellvalue(q,A);var z=this.findRecordIndex(I,A,c);if(K){if(I!=""){d.jqxComboBox("selectIndex",z,true);d.jqxComboBox("val",I)}else{d.jqxComboBox("selectIndex",-1);d.jqxComboBox("val",I)}}if(!this.editcell){return}if(this.editcell.defaultvalue!=undefined){d.jqxComboBox("selectIndex",this.editcell.defaultvalue,true)}if(this.editchar&&this.editchar.length>0){d.jqxComboBox("input").val(this.editchar)}if(w){setTimeout(function(){l(d.jqxComboBox("input"));if(d){d.jqxComboBox("_setSelection",0,0);if(s.editchar){d.jqxComboBox("_setSelection",1,1);s.editchar=null}else{if(d.jqxComboBox("input")){var P=d.jqxComboBox("input").val();d.jqxComboBox("_setSelection",0,P.length)}}}},10)}}break;case"datetimeinput":if(this.host.jqxDateTimeInput){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var v=this.editors["datetimeinput_"+D];d=v==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='datetimeeditor'></div>"):v;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(v==undefined){d.prependTo(this.table);d[0].id="datetimeeditor"+this.element.id+D;var F={calendar:this.gridlocalization};d.jqxDateTimeInput({enableBrowserBoundsDetection:true,localization:F,_editor:true,theme:this.theme,rtl:this.rtl,width:g.width(),height:g.height(),formatString:G.cellsformat});this.editors["datetimeinput_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxDateTimeInput({width:g.width()-2})}if(K){if(I!=""&&I!=null){var L=new Date(I);if(L=="Invalid Date"){if(this.source.getvaluebytype){L=this.source.getvaluebytype(I,{name:G.datafield,type:"date"})}}d.jqxDateTimeInput("setDate",L)}else{d.jqxDateTimeInput("setDate",null)}if(this.editcell.defaultvalue!=undefined){d.jqxDateTimeInput("setDate",this.editcell.defaultvalue)}}if(w){setTimeout(function(){l(d.jqxDateTimeInput("dateTimeInput"))},10)}}break;case"numberinput":if(this.host.jqxNumberInput){n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var N=this.editors["numberinput_"+D];d=N==undefined?a("<div style='border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='numbereditor'></div>"):N;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(N==undefined){d.prependTo(this.table);d[0].id="numbereditor"+this.element.id+D;var m="";var y="left";var M=2;if(G.cellsformat){if(G.cellsformat.indexOf("c")!=-1){m=this.gridlocalization.currencysymbol;y=this.gridlocalization.currencysymbolposition;if(y=="before"){y="left"}else{y="right"}if(G.cellsformat.length>1){M=parseInt(G.cellsformat.substring(1),10)}}else{if(G.cellsformat.indexOf("p")!=-1){m=this.gridlocalization.percentsymbol;y="right";if(G.cellsformat.length>1){M=parseInt(G.cellsformat.substring(1),10)}}}}else{M=0}d.jqxNumberInput({decimalSeparator:this.gridlocalization.decimalseparator,decimalDigits:M,inputMode:"simple",theme:this.theme,rtl:this.rtl,width:g.width()-1,height:g.height()-1,spinButtons:true,symbol:m,symbolPosition:y});this.editors["numberinput_"+D]=d;if(G.createeditor){G.createeditor(q,I,d)}}if(G._requirewidthupdate){d.jqxNumberInput({width:g.width()-2})}if(K){if(I!=""&&I!=null){var O=I;d.jqxNumberInput("setDecimal",O)}else{d.jqxNumberInput("setDecimal",0)}if(this.editcell.defaultvalue!=undefined){d.jqxNumberInput("setDecimal",this.editcell.defaultvalue)}if(this.editchar&&this.editchar.length>0){var o=parseInt(this.editchar);if(!isNaN(o)){d.jqxNumberInput("setDecimal",o)}}if(w){setTimeout(function(){l(d.jqxNumberInput("numberInput"));d.jqxNumberInput("_setSelectionStart",0);if(s.editchar){if(G.cellsformat.length>0){d.jqxNumberInput("_setSelectionStart",2)}else{d.jqxNumberInput("_setSelectionStart",1)}s.editchar=null}else{var P=d.jqxNumberInput("spinButtons");if(P){var Q=d.jqxNumberInput("numberInput").val();s._setSelection(d.jqxNumberInput("numberInput")[0],Q.length,Q.length)}else{var Q=d.jqxNumberInput("numberInput").val();s._setSelection(d.jqxNumberInput("numberInput")[0],0,Q.length)}}d.jqxNumberInput("selectAll")},10)}}}break;case"custom":n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var B=this.editors["customeditor_"+D+"_"+q];d=B==undefined?a("<div style='overflow: hidden; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='customeditor'></div>"):B;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(B==undefined){d.prependTo(this.table);d[0].id="customeditor"+this.element.id+D+"_"+q;this.editors["customeditor_"+D+"_"+q]=d;var b=g.width()-1;var e=g.height()-1;d.width(b);d.height(e);if(G.createeditor){G.createeditor(q,I,d,C,b,e,this.editchar)}}if(G._requirewidthupdate){d.width(g.width()-2)}break;case"template":n.innerHTML="";var D=a.trim(G.datafield).split(" ").join("");if(D.indexOf(".")!=-1){D=D.replace(".","")}var h=this.editors["templateeditor_"+D];d=h==undefined?a("<div style='overflow: hidden; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; z-index: 99999; top: 0px; left: 0px; position: absolute;' id='templateeditor'></div>"):h;d.show();d.css("top",a(n).parent().position().top);if(this.oldhscroll){d.css("left",-i+parseInt(a(n).position().left))}else{d.css("left",parseInt(a(n).position().left))}if(G.pinned){d.css("left",i+parseInt(a(n).position().left))}if(h==undefined){d.prependTo(this.table);d[0].id="templateeditor"+this.element.id+D;this.editors["templateeditor_"+D]=d;var b=g.width()-1;var e=g.height()-1;d.width(b);d.height(e);if(G.createeditor){G.createeditor(q,I,d,C,b,e,this.editchar)}}if(G._requirewidthupdate){d.width(g.width()-2)}break;case"textbox":default:n.innerHTML="";d=this.editors["textboxeditor_"+G.datafield]||a("<input autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' type='textbox' id='textboxeditor'/>");d[0].id="textboxeditor"+this.element.id+G.datafield;d.appendTo(g);if(this.rtl){d.css("direction","rtl")}if(K||d[0].className==""){d.addClass(this.toThemeProperty("jqx-input"));d.addClass(this.toThemeProperty("jqx-widget-content"));if(this.editchar&&this.editchar.length>0){d.val(this.editchar)}else{if(G.cellsformat!=""){I=this.getcelltext(q,E)}if(I==undefined){I=""}d.val(I)}if(this.editcell.defaultvalue!=undefined){d.val(this.editcell.defaultvalue)}d.width(g.width()+1);d.height(g.height()+1);if(G.createeditor){G.createeditor(q,I,d)}if(G.cellsformat!=""){if(G.cellsformat.indexOf("p")!=-1||G.cellsformat.indexOf("c")!=-1||G.cellsformat.indexOf("n")!=-1||G.cellsformat.indexOf("f")!=-1){if(!this.editors["textboxeditor_"+G.datafield]){d.keydown(function(Q){var W=Q.charCode?Q.charCode:Q.keyCode?Q.keyCode:0;var T=String.fromCharCode(W);var U=parseInt(T);if(isNaN(U)){return true}if(s._selection(d).length>0){return true}var S="";var R=d.val();if(G.cellsformat.length>1){var V=parseInt(G.cellsformat.substring(1));if(isNaN(V)){V=0}}else{var V=0}if(V>0){if(R.indexOf(s.gridlocalization.decimalseparator)!=-1){if(s._selection(d).start>R.indexOf(s.gridlocalization.decimalseparator)){return true}}}for(var X=0;X<R.length-V;X++){var P=R.substring(X,X+1);if(P.match(/^[0-9]+$/)!=null){S+=P}}if(S.length>=11){return false}})}}}}this.editors["textboxeditor_"+G.datafield]=d;if(K){if(w){setTimeout(function(){l(d);if(s.editchar){s._setSelection(d[0],1,1);s.editchar=null}else{s._setSelection(d[0],0,d.val().length)}},25)}}break}if(d){d[0].style.zIndex=1+n.style.zIndex;if(a.jqx.browser.msie&&a.jqx.browser.version<8){d[0].style.zIndex=1+this.columns.records.length+n.style.zIndex}d.css("display","block");this.editcell.editor=d;if(!this.editcell[E]){this.editcell[E]={};this.editcell[E].editor=d}else{this.editcell[E].editor=d}}if(K){if(G.initeditor){G.initeditor(q,I,d,C,this.editchar)}}if(s.isTouchDevice()){return}setTimeout(function(){if(s.content){s.content[0].scrollTop=0;s.content[0].scrollLeft=0}if(s.gridcontent){s.gridcontent[0].scrollLeft=0;s.gridcontent[0].scrollTop=0}},10)},_setSelection:function(d,g,b){try{if("selectionStart" in d){d.setSelectionRange(g,b)}else{var c=d.createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",g);c.select()}}catch(e){var f=e}},_hideeditors:function(){if(this.editcells!=null){var b=this;for(var c in this.editcells){b.editcell=b.editcells[c];b._hidecelleditor()}}},_hidecelleditor:function(b){if(!this.editcell){return}if(this.editmode==="selectedrow"){for(var c=0;c<this.columns.records.length;c++){var e=this.columns.records[c];if(this.editcell[e.datafield]&&this.editcell[e.datafield].editor){this.editcell[e.datafield].editor.hide();var d=this.editcell[e.datafield].editor;switch(e.columntype){case"dropdownlist":d.jqxDropDownList({closeDelay:0});d.jqxDropDownList("hideListBox");d.jqxDropDownList({closeDelay:300});break;case"combobox":d.jqxComboBox({closeDelay:0});d.jqxComboBox("hideListBox");d.jqxComboBox({closeDelay:300});break;case"datetimeinput":if(d.jqxDateTimeInput("isOpened")){d.jqxDateTimeInput({closeDelay:0});d.jqxDateTimeInput("hideCalendar");d.jqxDateTimeInput({closeDelay:300})}break}}}if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}return}if(this.editcell.columntype=="checkbox"){return}if(this.editcell.editor){this.editcell.editor.hide();switch(this.editcell.columntype){case"dropdownlist":this.editcell.editor.jqxDropDownList({closeDelay:0});this.editcell.editor.jqxDropDownList("hideListBox");this.editcell.editor.jqxDropDownList({closeDelay:300});break;case"combobox":this.editcell.editor.jqxComboBox({closeDelay:0});this.editcell.editor.jqxComboBox("hideListBox");this.editcell.editor.jqxComboBox({closeDelay:300});break;case"datetimeinput":var f=this.editcell.editor;if(f.jqxDateTimeInput("isOpened")){f.jqxDateTimeInput({closeDelay:0});f.jqxDateTimeInput("hideCalendar");f.jqxDateTimeInput({closeDelay:300})}break}}if(this.validationpopup){this.validationpopup.hide();this.validationpopuparrow.hide()}if(!this.isNestedGrid){if(b!=false){this.element.focus()}}},_geteditorvalue:function(h){var o=new String();if(!this.editcell){return null}var l=this.editcell.editor;if(this.editmode=="selectedrow"){if(this.editcell[h.datafield]){var l=this.editcell[h.datafield].editor}}if(l){switch(h.columntype){case"textbox":default:o=l.val();if(h.cellsformat!=""){var n="string";var e=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(e){var p="";a.each(e,function(){if(this.name==h.displayfield){if(this.type){p=this.type}return false}});if(p){n=p}}var i=n==="number"||n==="float"||n==="int"||n==="integer";var f=n==="date"||n==="time";if(i||(n==="string"&&(h.cellsformat.indexOf("p")!=-1||h.cellsformat.indexOf("c")!=-1||h.cellsformat.indexOf("n")!=-1||h.cellsformat.indexOf("f")!=-1))){if(o===""&&h.nullable){return""}if(o.indexOf(this.gridlocalization.currencysymbol)>-1){o=o.replace(this.gridlocalization.currencysymbol,"")}var m=function(w,u,v){var s=w;if(u==v){return w}var t=s.indexOf(u);while(t!=-1){s=s.replace(u,v);t=s.indexOf(u)}return s};var k=o;k=new Number(k);if(!isNaN(k)){return k}o=m(o,this.gridlocalization.thousandsseparator,"");o=o.replace(this.gridlocalization.decimalseparator,".");if(o.indexOf(this.gridlocalization.percentsymbol)>-1){o=o.replace(this.gridlocalization.percentsymbol,"")}var d="";for(var r=0;r<o.length;r++){var b=o.substring(r,r+1);if(b==="-"){d+="-"}if(b==="."){d+="."}if(b.match(/^[0-9]+$/)!=null){d+=b}}o=d;o=o.replace(/ /g,"");o=new Number(o);if(isNaN(o)){o=""}}if(f||(n==="string"&&(h.cellsformat.indexOf("H")!=-1||h.cellsformat.indexOf("m")!=-1||h.cellsformat.indexOf("M")!=-1||h.cellsformat.indexOf("y")!=-1||h.cellsformat.indexOf("h")!=-1||h.cellsformat.indexOf("d")!=-1))){if(o===""&&h.nullable){return""}var c=o;if(a.jqx.dataFormat){o=a.jqx.dataFormat.tryparsedate(c,this.gridlocalization)}if(o=="Invalid Date"||o==null){o=""}}}if(h.displayfield!=h.datafield){o={label:o,value:o}}break;case"checkbox":if(l.jqxCheckBox){o=l.jqxCheckBox("checked")}break;case"datetimeinput":if(l.jqxDateTimeInput){l.jqxDateTimeInput({isEditing:false});l.jqxDateTimeInput("_validateValue");o=l.jqxDateTimeInput("getDate");if(o==null){return null}o=new Date(o.toString());if(h.displayfield!=h.datafield){o={label:o,value:o}}}break;case"dropdownlist":if(l.jqxDropDownList){var g=l.jqxDropDownList("selectedIndex");var q=l.jqxDropDownList("listBox").getVisibleItem(g);if(h.displayfield!=h.datafield){if(q){o={label:q.label,value:q.value}}else{o=""}}else{if(q){o=q.label}else{o=""}}if(o==null){o=""}}break;case"combobox":if(l.jqxComboBox){o=l.jqxComboBox("val");if(h.displayfield!=h.datafield){var q=l.jqxComboBox("getSelectedItem");if(q!=null){o={label:q.label,value:q.value}}}if(o==null){o=""}}break;case"numberinput":if(l.jqxNumberInput){if(this.touchdevice){l.jqxNumberInput("_doTouchHandling")}var j=l.jqxNumberInput("getDecimal");o=new Number(j);o=parseFloat(o);if(isNaN(o)){o=0}if(h.displayfield!=h.datafield){o={label:o,value:o}}}break}if(h.geteditorvalue){if(this.editmode=="selectedrow"){o=h.geteditorvalue(this.editcell.row,this.getcellvalue(this.editcell.row,h.datafield),l)}else{o=h.geteditorvalue(this.editcell.row,this.editcell.value,l)}}}return o},hidevalidationpopups:function(){if(this.popups){a.each(this.popups,function(){this.validation.remove();this.validationrow.remove()});this.popups=new Array()}if(this.validationpopup){this.validationpopuparrow.hide();this.validationpopup.hide()}},showvalidationpopup:function(f,j,h){if(h==undefined){var h=this.gridlocalization.validationstring}var g=a("<div style='z-index: 99999; top: 0px; left: 0px; position: absolute;'></div>");var r=a("<div style='width: 20px; height: 20px; z-index: 999999; top: 0px; left: 0px; position: absolute;'></div>");g.html(h);r.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));g.addClass(this.toThemeProperty("jqx-grid-validation"));g.addClass(this.toThemeProperty("jqx-rc-all"));g.prependTo(this.table);r.prependTo(this.table);var l=this.hScrollInstance;var n=l.value;var d=parseInt(n);var b=this.getcolumn(j).uielement;var p=null;for(var o=0;o<this.hittestinfo.length;o++){if(f===this.hittestinfo[o].row.visibleindex){p=this.hittestinfo[o]}}if(!p){this.ensurerowvisible(f);var s=this;g.remove();r.remove();setTimeout(function(){var v=null;for(var u=0;u<s.hittestinfo.length;u++){if(f===s.hittestinfo[u].row.visibleindex){v=s.hittestinfo[u]}}if(v){s.showvalidationpopup(f,j,h)}},25);return}var c=a(p.visualrow);g.css("top",parseInt(c.position().top)+30+"px");var k=parseInt(g.css("top"));r.css("top",k-12);r.removeClass();r.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));var q=false;if(k>=this._gettableheight()){r.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));r.addClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));k=parseInt(c.position().top)-this.rowsheight-5;if(k<0){k=0;this.validationpopuparrow.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));q=true}g.css("top",k+"px");r.css("top",k+g.outerHeight()-9)}var t=-d+parseInt(a(b).position().left);r.css("left",d+t+30);var m=g.width();if(m+t>this.host.width()-20){var e=m+t-this.host.width()+40;t-=e}if(!q){g.css("left",d+t)}else{g.css("left",d+parseInt(a(b).position().left)-g.outerWidth())}g.show();r.show();if(!this.popups){this.popups=new Array()}this.popups[this.popups.length]={validation:g,validationrow:r}},_showvalidationpopup:function(p,e,q){var c=this.editcell;var k=this.editcell.editor;if(this.editmode=="selectedrow"){var c=this.editcell[e];if(c&&c.editor){k=c.editor;c.element=k}}if(!k){return}if(this.validationpopup&&a.jqx.isHidden(this.validationpopup)){if(this.validationpopup.remove){this.validationpopup.remove();this.validationpopuparrow.remove()}this.validationpopup=null;this.validationpopuparrow=null;if(e===undefined&&q===undefined&&this.editors&&this.editors.length===0){return}}if(!this.validationpopup){var n=a("<div style='z-index: 99999; top: 0px; left: 0px; position: absolute;'></div>");var m=a("<div style='width: 20px; height: 20px; z-index: 999999; top: 0px; left: 0px; position: absolute;'></div>");n.html(q);m.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));n.addClass(this.toThemeProperty("jqx-grid-validation"));n.addClass(this.toThemeProperty("jqx-rc-all"));n.prependTo(this.table);m.prependTo(this.table);this.validationpopup=n;this.validationpopuparrow=m}else{this.validationpopup.html(q)}var h=this.hScrollInstance;var j=h.value;var g=parseInt(j);if(this.editmode=="selectedrow"){if(this.visiblerows&&this.visiblerows[this.editcell.visiblerowindex]){this.validationpopup.css("top",this.visiblerows[this.editcell.visiblerowindex].top+(this.rowsheight+5)+"px")}else{this.validationpopup.css("top",parseInt(a(c.editor).position().top)+(this.rowsheight+5)+"px")}}else{this.validationpopup.css("top",parseInt(a(c.element).parent().position().top)+(this.rowsheight+5)+"px")}var b=parseInt(this.validationpopup.css("top"));this.validationpopuparrow.css("top",b-11);this.validationpopuparrow.removeClass();this.validationpopuparrow.addClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));var o=this._gettableheight();var f=false;if(b>=o){this.validationpopuparrow.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-up"));this.validationpopuparrow.addClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));b=parseInt(a(c.element).parent().position().top)-this.rowsheight-5;if(this.editmode=="selectedrow"){if(this.visiblerows&&this.visiblerows[this.editcell.visiblerowindex]){b=this.visiblerows[this.editcell.visiblerowindex].top-this.rowsheight-5}else{b=parseInt(a(c.editor).position().top)-this.rowsheight-5}}if(b<0){b=0;this.validationpopuparrow.removeClass(this.toThemeProperty("jqx-grid-validation-arrow-down"));f=true}this.validationpopup.css("top",b+"px");this.validationpopuparrow.css("top",b+this.validationpopup.outerHeight()-9)}var l=-g+parseInt(a(c.element).position().left);this.validationpopuparrow.css("left",g+l+30);var d=this.validationpopup.width();if(d+l>this.host.width()-20){var i=d+l-this.host.width()+40;l-=i}if(!f){this.validationpopup.css("left",g+l)}else{this.validationpopup.css("left",g+parseInt(a(c.element).position().left)-this.validationpopup.outerWidth())}if(this.editcell.editor.css("display")=="none"){this.validationpopup.hide();this.validationpopuparrow.hide()}else{this.validationpopup.show();this.validationpopuparrow.show()}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.export.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.export.js
new file mode 100644 (file)
index 0000000..bd229ec
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{exportdata:function(q,z,y,o,r,t,f){if(!a.jqx.dataAdapter.ArrayExporter){throw"jqxGrid: Missing reference to jqxdata.export.js!"}if(y==undefined){y=true}var H=this;if(o==undefined){var o=this.getrows();if(o.length==0){throw"No data to export."}}this.exporting=true;if(!this.pageable){this.loadondemand=true}if(this.altrows){this._renderrows(this.virtualsizeinfo)}var F=r!=undefined?r:false;var E={};var n={};var v=[];var l=this.host.find(".jqx-grid-cell:first");var w=this.host.find(".jqx-grid-cell-alt:first");l.removeClass(this.toThemeProperty("jqx-grid-cell-selected"));l.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));w.removeClass(this.toThemeProperty("jqx-grid-cell-selected"));w.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));l.removeClass(this.toThemeProperty("jqx-grid-cell-hover"));l.removeClass(this.toThemeProperty("jqx-fill-state-hover"));w.removeClass(this.toThemeProperty("jqx-grid-cell-hover"));w.removeClass(this.toThemeProperty("jqx-fill-state-hover"));var g="cell";var e=1;var G="column";var c=1;var h=[];for(var B=0;B<this.columns.records.length;B++){var d=this.columns.records[B];if(d.cellclassname!=""){d.customCellStyles=new Array();if(typeof d.cellclassname=="string"){for(var C=0;C<o.length;C++){d.customCellStyles[C]=d.cellclassname}}else{for(var C=0;C<o.length;C++){var u=this.getrowboundindex(C);var b=d.cellclassname(u,d.displayfield,o[C][d.displayfield],o[C]);if(b){d.customCellStyles[C]=b}}}}}var x=new Array();a.each(this.columns.records,function(K){var N=a(H.table[0].rows[0].cells[K]);if(H.table[0].rows.length>1){var j=a(H.table[0].rows[1].cells[K])}var J=this;var L=function(P){P.removeClass(H.toThemeProperty("jqx-grid-cell-selected"));P.removeClass(H.toThemeProperty("jqx-fill-state-pressed"));P.removeClass(H.toThemeProperty("jqx-grid-cell-hover"));P.removeClass(H.toThemeProperty("jqx-fill-state-hover"));if(J.customCellStyles){for(var Q in J.customCellStyles){P.removeClass(J.customCellStyles[Q])}}};L(N);if(j){L(j)}if(this.displayfield==null){return true}if(H.showaggregates){if(H.getcolumnaggregateddata){h.push(H.getcolumnaggregateddata(this.displayfield,this.aggregates,true,o))}}var M=H._getexportcolumntype(this);if(this.exportable&&(!this.hidden||F)){E[this.displayfield]={};E[this.displayfield].text=this.text;E[this.displayfield].width=parseInt(this.width);if(isNaN(E[this.displayfield].width)){E[this.displayfield].width=60}E[this.displayfield].formatString=this.cellsformat;E[this.displayfield].localization=H.gridlocalization;E[this.displayfield].type=M;E[this.displayfield].cellsAlign=this.cellsalign;E[this.displayfield].hidden=!y;E[this.displayfield].displayfield=this.displayfield;x.push(E[this.displayfield])}g="cell"+e;var O=a(this.element);if(this.element==undefined){O=a(this.uielement)}G="column"+c;if(q=="html"||q=="xls"||q=="pdf"){var i=function(P,X,W,Q,V,S,R,T,U){n[P]={};if(X==undefined){return}n[P]["font-size"]=X.css("font-size");n[P]["font-weight"]=X.css("font-weight");n[P]["font-style"]=X.css("font-style");n[P]["background-color"]=S._getexportcolor(X.css("background-color"));n[P]["color"]=S._getexportcolor(X.css("color"));n[P]["border-color"]=S._getexportcolor(X.css("border-top-color"));if(W){n[P]["text-align"]=V.align}else{n[P]["text-align"]=V.cellsalign;n[P]["formatString"]=V.cellsformat;n[P]["dataType"]=M}if(q=="html"||q=="pdf"){n[P]["border-top-width"]=X.css("border-top-width");n[P]["border-left-width"]=X.css("border-left-width");n[P]["border-right-width"]=X.css("border-right-width");n[P]["border-bottom-width"]=X.css("border-bottom-width");n[P]["border-top-style"]=X.css("border-top-style");n[P]["border-left-style"]=X.css("border-left-style");n[P]["border-right-style"]=X.css("border-right-style");n[P]["border-bottom-style"]=X.css("border-bottom-style");if(W){if(R==0){n[P]["border-left-width"]=X.css("border-right-width")}n[P]["border-top-width"]=X.css("border-right-width");n[P]["border-bottom-width"]=X.css("border-bottom-width")}else{if(R==0){n[P]["border-left-width"]=X.css("border-right-width")}}n[P]["height"]=X.css("height")}if(V.exportable&&(!V.hidden||F)){if(T==true){if(!E[V.displayfield].customCellStyles){E[V.displayfield].customCellStyles=new Array()}E[V.displayfield].customCellStyles[U]=P}else{if(W){E[V.displayfield].style=P}else{if(!Q){E[V.displayfield].cellStyle=P}else{E[V.displayfield].cellAltStyle=P}}}}};i(G,O,true,false,this,H,K);c++;i(g,N,false,false,this,H,K);if(H.altrows){g="cellalt"+e;i(g,j,false,true,this,H,K)}if(this.customCellStyles){for(var I in J.customCellStyles){N.removeClass(J.customCellStyles[I])}for(var I in J.customCellStyles){N.addClass(J.customCellStyles[I]);i(g+J.customCellStyles[I],N,false,false,this,H,K,true,I);N.removeClass(J.customCellStyles[I])}}e++}});a.each(this.columns.records,function(i){if(E[this.displayfield]){E[this.displayfield].columnsDataFields=x}});if(this.showaggregates){var D=[];var A=q=="xls"?"_AG":"";var k=this.groupable?this.groups.length:0;if(this.rowdetails){k++}if(h.length>0){a.each(this.columns.records,function(j){if(this.aggregates){for(var J=0;J<this.aggregates.length;J++){if(!D[J]){D[J]={}}if(D[J]){var K=H._getaggregatename(this.aggregates[J]);var L=H._getaggregatetype(this.aggregates[J]);var I=h[j-k];if(I){D[J][this.displayfield]=A+K+": "+I[L]}}}}});a.each(this.columns.records,function(j){for(var I=0;I<D.length;I++){if(D[I][this.displayfield]==undefined){D[I][this.displayfield]=A}}})}a.each(D,function(){o.push(this)})}var m=this;var s=a.jqx.dataAdapter.ArrayExporter(o,E,n);if(z==undefined){this._renderrows(this.virtualsizeinfo);var p=s.exportTo(q);if(this.showaggregates){a.each(D,function(){o.pop(this)})}setTimeout(function(){m.exporting=false},50);return p}else{s.exportToFile(q,z,t,f)}if(this.showaggregates){a.each(D,function(){o.pop(this)})}this._renderrows(this.virtualsizeinfo);setTimeout(function(){m.exporting=false},50)},_getexportcolor:function(l){var f=l;if(l=="transparent"){f="#FFFFFF"}if(!f||!f.toString()){f="#FFFFFF"}if(f.toString().indexOf("rgb")!=-1){var i=f.split(",");if(f.toString().indexOf("rgba")!=-1){var d=parseInt(i[0].substring(5));var h=parseInt(i[1]);var j=parseInt(i[2]);var k=parseInt(i[3].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);if(d==0&&h==0&&j==0&&k==0){return"#ffffff"}return"#"+e}var d=parseInt(i[0].substring(4));var h=parseInt(i[1]);var j=parseInt(i[2].substring(1,4));var m={r:d,g:h,b:j};var e=this._rgbToHex(m);return"#"+e}else{if(f.toString().indexOf("#")!=-1){if(f.toString().length==4){var c=f.toString().substring(1,4);f+=c}}}return f},_rgbToHex:function(b){return this._intToHex(b.r)+this._intToHex(b.g)+this._intToHex(b.b)},_intToHex:function(c){var b=(parseInt(c).toString(16));if(b.length==1){b=("0"+b)}return b.toUpperCase()},_getexportcolumntype:function(f){var g=this;var e="string";var d=g.source.datafields||((g.source._source)?g.source._source.datafields:null);if(d){var i="";a.each(d,function(){if(this.name==f.displayfield){if(this.type){i=this.type}return false}});if(i){return i}}if(f!=null){if(this.dataview.cachedrecords==undefined){return e}var b=null;if(!this.virtualmode){if(this.dataview.cachedrecords.length==0){return e}b=this.dataview.cachedrecords[0][f.displayfield];if(b!=null&&b.toString()==""){return"string"}}else{a.each(this.dataview.cachedrecords,function(){b=this[f.displayfield];return false})}if(b!=null){if(f.cellsformat.indexOf("c")!=-1){return"number"}if(f.cellsformat.indexOf("n")!=-1){return"number"}if(f.cellsformat.indexOf("p")!=-1){return"number"}if(f.cellsformat.indexOf("d")!=-1){return"date"}if(f.cellsformat.indexOf("y")!=-1){return"date"}if(f.cellsformat.indexOf("M")!=-1){return"date"}if(f.cellsformat.indexOf("m")!=-1){return"date"}if(f.cellsformat.indexOf("t")!=-1){return"date"}if(typeof b=="boolean"){e="boolean"}else{if(a.jqx.dataFormat.isNumber(b)){e="number"}else{var h=new Date(b);if(h.toString()=="NaN"||h.toString()=="Invalid Date"){if(a.jqx.dataFormat){h=a.jqx.dataFormat.tryparsedate(b);if(h!=null){if(h&&h.getFullYear()){if(h.getFullYear()==1970&&h.getMonth()==0&&h.getDate()==1){var c=new Number(b);if(!isNaN(c)){return"number"}return"string"}}return"date"}else{e="string"}}else{e="string"}}else{e="date"}}}}}return e}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.filter.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.filter.js
new file mode 100644 (file)
index 0000000..04410bb
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{_updatefilterrowui:function(f){var m=this.columns.records.length;var e=0;var l=this;if(!this.filterrow){return}for(var i=0;i<m;i++){var g=this.columns.records[i];var c=g.width;if(c<g.minwidth){c=g.minwidth}if(c>g.maxwidth){c=g.maxwidth}var k=a(this.filterrow[0].cells[i]);k.css("left",e);var h=true;if(k.width()==c){h=false}if(f){h=true}k.width(c);k[0].left=e;if(!(g.hidden&&g.hideable)){e+=c}else{k.css("display","none")}if(!h){continue}if(g.createfilterwidget&&g.filtertype=="custom"){g.createfilterwidget(g,k)}else{if(g.filterable){var d=function(n,o){var j=a(o.children()[0]);j.width(c-10);j.attr("disabled",n.disabled)};switch(g.filtertype){case"number":case"input":a(k.children()[0]).width(c);k.find("input").width(c-30);k.find("input").attr("disabled",l.disabled);a(k.find(".jqx-dropdownlist-state-normal")).jqxDropDownList({theme:l.theme,disabled:l.disabled});break;case"date":case"range":if(this.host.jqxDateTimeInput){a(k.children()[0]).jqxDateTimeInput({theme:l.theme,disabled:l.disabled,width:c-10})}else{d(this,k)}break;case"textbox":case"default":d(this,k);break;case"list":case"checkedlist":if(this.host.jqxDropDownList){a(k.children()[0]).jqxDropDownList({theme:l.theme,disabled:l.disabled,width:c-10})}else{d(this,k)}break;case"bool":case"boolean":if(!this.host.jqxCheckBox){d(this,k)}else{a(k.children()[0]).jqxCheckBox({theme:l.theme,disabled:l.disabled})}break}}}}var b=a(this.filterrow.children()[0]);b.width(parseInt(e)+2);b.height(this.filterrowheight)},clearfilterrow:function(d){this._disablefilterrow=true;if(!this.columns.records){return}var l=this.columns.records.length;var e=0;for(var h=0;h<l;h++){var f=this.columns.records[h];var k=a(this.filterrow[0].cells[h]);if(typeof d=="string"){if(f.displayfield!=d){continue}}if(f.filterable){var c=function(n,o){var j=a(o.children()[0]);j.val("");if(j[0]){n["_oldWriteText"+j[0].id]=""}};switch(f.filtertype){case"number":case"input":k.find("input").val("");if(this.host.jqxDropDownList){var i=a(a(a(k).children()[0]).children()[1]);i.jqxDropDownList("clearSelection");var g=0;if(g==0){var b=this._getfiltersbytype(f.filtertype=="number"?"number":"string");var m=b.indexOf("contains");if(m!=-1&&f.filtercondition==null){g=m}}i.jqxDropDownList({selectedIndex:g});i.jqxDropDownList("ensureVisible",g)}break;case"date":case"range":if(this.host.jqxDateTimeInput){a(k.children()[0]).jqxDateTimeInput("setDate",null)}else{c(this,k)}break;case"textbox":case"default":c(this,k);break;case"list":if(this.host.jqxDropDownList){a(k.children()[0]).jqxDropDownList("clearSelection")}else{c(this,k)}break;case"checkedlist":if(this.host.jqxDropDownList){a(k.children()[0]).jqxDropDownList("checkAll",false)}else{c(this,k)}break;case"bool":case"boolean":if(!this.host.jqxCheckBox){c(this,k)}else{a(k.children()[0]).jqxCheckBox({checked:null})}break}}}this._disablefilterrow=false},_applyfilterfromfilterrow:function(){if(this._disablefilterrow==true){return}if(this.disabled){return}var z=this.columns.records.length;var D=this.that;for(var t=0;t<z;t++){var k=new a.jqx.filter();var u=this.columns.records[t];if(!u.filterable){continue}if(u.datafield===null){continue}var f=D._getcolumntypebydatafield(u);var d=D._getfiltertype(f);var l=1;var E=true;var e=u.filtertype;var B=function(j,L,I){var i=true;if(j._filterwidget){var G=j._filterwidget.val();if(G!=""){var J="equal";if(L=="stringfilter"){var J="contains"}if(L=="numericfilter"){if(D.gridlocalization.decimalseparator==","){if(G.indexOf(D.gridlocalization.decimalseparator)>=0){G=G.replace(D.gridlocalization.decimalseparator,".")}}}if(L!="stringfilter"){var K=0;if(G.indexOf(">")!=-1){J="greater_than";K=1}if(G.indexOf("<")!=-1){J="less_than";K=1}if(G.indexOf("=")!=-1){if(J=="greater_than"){J="greater_than_or_equal";K=2}else{if(J=="less_than"){J="less_than_or_equal";K=2}else{J="equal";K=1}}}if(K!=0){G=G.substring(K);if(G.length<1){return false}}}if(j.filtercondition!=undefined){J=j.filtercondition}if(L=="datefilter"){var H=I.createfilter(L,G,J,null,j.cellsformat,D.gridlocalization)}else{var H=I.createfilter(L,G,J)}I.addfilter(l,H)}else{i=false}}return i};switch(u.filtertype){case"range":case"date":if(u._filterwidget.jqxDateTimeInput){if(u.filtertype=="range"){var p=u._filterwidget.jqxDateTimeInput("getRange");if(p!=null&&p.from!=null&&p.to!=null){var o="GREATER_THAN_OR_EQUAL";var r=new Date(0);r.setHours(0);r.setMinutes(0);r.setFullYear(p.from.getFullYear(),p.from.getMonth(),p.from.getDate());var q=new Date(0);q.setHours(0);q.setMinutes(0);q.setFullYear(p.to.getFullYear(),p.to.getMonth(),p.to.getDate());q.setHours(p.to.getHours());q.setMinutes(p.to.getMinutes());q.setSeconds(p.to.getSeconds());var y=k.createfilter(d,r,o);k.addfilter(0,y);var c="LESS_THAN_OR_EQUAL";var x=k.createfilter(d,q,c);k.addfilter(0,x)}else{E=false}}else{var p=u._filterwidget.jqxDateTimeInput("getDate");if(p!=null){var r=new Date(0);r.setHours(0);r.setMinutes(0);r.setFullYear(p.getFullYear(),p.getMonth(),p.getDate());var y=k.createfilter(d,r,"EQUAL");k.addfilter(0,y)}else{E=false}}}else{E=B(u,d,k)}break;case"input":if(u._filterwidget){var p=u._filterwidget.find("input").val();var h=u._filterwidget.find(".filter").jqxDropDownList("selectedIndex");var w=k.getoperatorsbyfiltertype(d)[h];if(D.updatefilterconditions){var F=D.updatefilterconditions(d,k.getoperatorsbyfiltertype(d));if(F!=undefined){k.setoperatorsbyfiltertype(d,F)}var w=k.getoperatorsbyfiltertype(d)[h]}var n=w=="NULL"||w=="NOT_NULL";var s=w=="EMPTY"||w=="NOT_EMPTY";if(p!=undefined&&p.length>0||n||s){y=k.createfilter(d,p,w,null,u.cellsformat,D.gridlocalization);k.addfilter(0,y)}else{E=false}}else{E=false}break;case"number":if(u._filterwidget){var p=u._filterwidget.find("input").val();if(D.gridlocalization.decimalseparator==","){if(p.indexOf(D.gridlocalization.decimalseparator)>=0){p=p.replace(D.gridlocalization.decimalseparator,".")}}var h=u._filterwidget.find(".filter").jqxDropDownList("selectedIndex");var w=k.getoperatorsbyfiltertype(d)[h];if(D.updatefilterconditions){var F=D.updatefilterconditions(d,k.getoperatorsbyfiltertype(d));if(F!=undefined){k.setoperatorsbyfiltertype(d,F)}var w=k.getoperatorsbyfiltertype(d)[h]}var n=w=="NULL"||w=="NOT_NULL";var s=w=="EMPTY"||w=="NOT_EMPTY";if(p!=undefined&&p.length>0||n||s){y=k.createfilter(d,new Number(p),w,null,u.cellsformat,D.gridlocalization);k.addfilter(0,y)}else{E=false}}else{E=false}break;case"textbox":case"default":E=B(u,d,k);break;case"bool":case"boolean":if(u._filterwidget.jqxCheckBox){var p=u._filterwidget.jqxCheckBox("checked");if(p!=null){var o="equal";var m=k.createfilter(d,p,o);k.addfilter(l,m)}else{E=false}}else{E=B(u,d,k)}break;case"list":var g=u._filterwidget.jqxDropDownList("listBox");if(g.selectedIndex>0){var b=g.getItem(g.selectedIndex);var p=b.label;var A=b.value;var o="equal";if(p===""){o="NULL"}var m=k.createfilter(d,p,o);k.addfilter(l,m);if(A!==p){m.data=A}}else{E=false}break;case"checkedlist":if(u._filterwidget.jqxDropDownList){var g=u._filterwidget.jqxDropDownList("listBox");var C=g.getCheckedItems();if(C.length==0){for(var v=1;v<g.items.length;v++){var p=g.items[v].label;var A=g.items[v].value;var o="not_equal";if(p===""){o="NULL"}var m=k.createfilter(d,p,o);if(A!==p){m.data=A}k.addfilter(0,m)}E=true}else{if(C.length!=g.items.length){for(var v=0;v<C.length;v++){var p=C[v].label;var A=C[v].value;var o="equal";if(p===""){o="NULL"}var m=k.createfilter(d,p,o);if(A!==p){m.data=A}k.addfilter(l,m)}}else{E=false}}}else{E=B(u,d,k)}break}if(!this._loading){if(E){this.addfilter(u.displayfield,k,false)}else{this.removefilter(u.displayfield,false)}}}if(!this._loading){this.applyfilters("filterrow")}},_updatefilterrow:function(){var b=a('<div style="position: relative;" id="row00'+this.element.id+'"></div>');var f=0;var o=this.columns.records.length;var m=this.toThemeProperty("jqx-grid-cell");m+=" "+this.toThemeProperty("jqx-grid-cell-pinned");m+=" "+this.toThemeProperty("jqx-grid-cell-filter-row");var r=o+10;var s=new Array();var n=this.that;this.filterrow[0].cells=s;b.height(this.filterrowheight);this.filterrow.children().detach();this.filterrow.append(b);if(!this._filterrowcache){this._filterrowcache=new Array()}this._initcolumntypes();var g=false;var d=new Array();var q=document.createDocumentFragment();for(var h=0;h<o;h++){var e=this.columns.records[h];var c=e.width;if(c<e.minwidth){c=e.minwidth}if(c>e.maxwidth){c=e.maxwidth}var l=document.createElement("div");l.style.overflow="hidden";l.style.position="absolute";l.style.height="100%";l.className=m;l=a(l);q.appendChild(l[0]);l[0].style.left=f+"px";if(this.rtl){l.css("z-index",r++);l.css("border-left-width","1px")}else{l.css("z-index",r--)}if(c=="auto"){c=0}l[0].style.width=parseFloat(c)+"px";l[0].left=f;if(!(e.hidden&&e.hideable)){f+=c}else{l.css("display","none")}s[s.length]=l[0];var k=true;if(!this.rtl){if(this.groupable){var p=(this.showrowdetailscolumn&&this.rowdetails)?1:0;if(this.groups.length+p>h){k=false}}if(this.showrowdetailscolumn&&this.rowdetails&&h==0){k=false}}else{if(this.groupable){var p=(this.showrowdetailscolumn&&this.rowdetails)?1:0;if(this.groups.length+p+h>o-1){k=false}}if(this.showrowdetailscolumn&&this.rowdetails&&h==o-1){k=false}}if(k){if(e.filtertype=="custom"&&e.createfilterwidget){var i=function(){n._applyfilterfromfilterrow()};e.createfilterwidget(e,l,i)}else{if(e.filterable){if(this._filterrowcache[e.datafield]){g=true;l.append(this._filterrowcache[e.datafield]);e._filterwidget=this._filterrowcache[e.datafield]}else{this._addfilterwidget(e,l,c);d[e.datafield]=e._filterwidget}}}}}b[0].appendChild(q);this._filterrowcache=d;if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.css("z-index",r--)}b.width(parseFloat(f)+2);this.filterrow.addClass(m);this.filterrow.css("border-top-width","1px");this.filterrow.css("border-right-width","0px");if(g){this._updatefilterrowui(true)}},_addfilterwidget:function(C,d,A){var H=this.that;var z="";var E="";for(var F=0;F<H.dataview.filters.length;F++){var x=H.dataview.filters[F];if(x.datafield&&x.datafield==C.datafield){var F=x.filter.getfilters()[0];z=F.value;E=F.condition;C.filtercondition=E;break}}var g=function(I,J){var f=a('<input autocomplete="off" type="textarea"/>');f[0].id=a.jqx.utilities.createId();f.addClass(I.toThemeProperty("jqx-widget"));f.addClass(I.toThemeProperty("jqx-input"));f.addClass(I.toThemeProperty("jqx-rc-all"));f.addClass(I.toThemeProperty("jqx-widget-content"));if(I.rtl){f.css("direction","rtl")}if(I.disabled){f.attr("disabled",true)}f.attr("disabled",false);f.appendTo(J);f.width(A-10);f.height(I.filterrowheight-10);f.css("margin","4px");if(C.createfilterwidget){C.createfilterwidget(C,J,f)}C._filterwidget=f;f.focus(function(){I.content[0].scrollLeft=0;setTimeout(function(){I.content[0].scrollLeft=0},10);I.focusedfilter=f;f.addClass(I.toThemeProperty("jqx-fill-state-focus"));return false});f.blur(function(){f.removeClass(I.toThemeProperty("jqx-fill-state-focus"))});f.keydown(function(K){if(K.keyCode=="13"){I._applyfilterfromfilterrow()}if(f[0]._writeTimer){clearTimeout(f[0]._writeTimer)}f[0]._writeTimer=setTimeout(function(){if(!I._loading){if(!I["_oldWriteText"+f[0].id]){I["_oldWriteText"+f[0].id]=""}if(I["_oldWriteText"+f[0].id]!=f.val()){I._applyfilterfromfilterrow();I["_oldWriteText"+f[0].id]=f.val()}}},C.filterdelay);I.focusedfilter=f});I.host.removeClass("jqx-disableselect");I.content.removeClass("jqx-disableselect");f.val(z)};if(C.datatype!=null){if(C.filtertype=="number"){if(C.datatype=="string"||C.datatype=="date"||C.datatype=="bool"){C.filtertype="textbox"}}if(C.filtertype=="date"){if(C.datatype=="string"||C.datatype=="number"||C.datatype=="bool"){C.filtertype="textbox"}}if(C.filtertype=="bool"){if(C.datatype=="string"||C.datatype=="number"||C.datatype=="date"){C.filtertype="textbox"}}}switch(C.filtertype){case"number":case"input":var m=a("<div></div>");m.width(d.width());m.height(this.filterrowheight);d.append(m);var A=d.width()-20;var s=function(J,K,f){var I=a('<input style="float: left;" autocomplete="off" type="textarea"/>');if(H.rtl){I.css("float","right");I.css("direction","rtl")}I[0].id=a.jqx.utilities.createId();I.addClass(H.toThemeProperty("jqx-widget jqx-input jqx-rc-all jqx-widget-content"));I.appendTo(J);I.width(K-10);if(H.disabled){I.attr("disabled",true)}I.attr("disabled",false);I.height(H.filterrowheight-10);I.css("margin","4px");I.css("margin-right","2px");I.focus(function(){H.focusedfilter=I;I.addClass(H.toThemeProperty("jqx-fill-state-focus"))});I.blur(function(){I.removeClass(H.toThemeProperty("jqx-fill-state-focus"))});I.keydown(function(L){if(L.keyCode=="13"){H._applyfilterfromfilterrow()}if(I[0]._writeTimer){clearTimeout(I[0]._writeTimer)}I[0]._writeTimer=setTimeout(function(){if(!H._loading){if(H["_oldWriteText"+I[0].id]!=I.val()){H._applyfilterfromfilterrow();H["_oldWriteText"+I[0].id]=I.val()}}},C.filterdelay);H.focusedfilter=I});I.val(z);return I};s(m,A);var B=H._getfiltersbytype(C.filtertype=="number"?"number":"string");var t=a("<div class='filter' style='float: left;'></div>");t.css("margin-top","4px");t.appendTo(m);if(H.rtl){t.css("float","right")}var h=0;if(C.filtercondition!=null){var F=new a.jqx.filter();var r=F.getoperatorsbyfiltertype(C.filtertype=="number"?"numericfilter":"stringfilter");var e=r.indexOf(C.filtercondition.toUpperCase());if(e!=-1){h=e}}var D=170;if(C.filtertype=="input"){D=240;if(h==0){var e=B.indexOf("contains");if(e!=-1&&C.filtercondition==null){h=e}}}t.jqxDropDownList({disabled:H.disabled,touchMode:H.touchmode,rtl:H.rtl,dropDownHorizontalAlignment:"right",enableBrowserBoundsDetection:true,selectedIndex:h,width:18,height:21,dropDownHeight:150,dropDownWidth:D,source:B,theme:H.theme});t.jqxDropDownList({selectionRenderer:function(f){return""}});t.jqxDropDownList("setContent","");t.find(".jqx-dropdownlist-content").hide();if(C.createfilterwidget){C.createfilterwidget(C,d,m)}C._filterwidget=m;var j=null;this.addHandler(t,"select",function(){var f=t.jqxDropDownList("getSelectedItem").label;if(C._filterwidget.find("input").val().length>0&&!H.refreshingfilter){H._applyfilterfromfilterrow()}if(C.filtertype=="input"&&!H.refreshingfilter){H._applyfilterfromfilterrow()}else{if(C._filterwidget.find("input").val().length==0&&!H.refreshingfilter){if(j=="null"||j=="not null"||f=="null"||f=="not null"){H._applyfilterfromfilterrow()}}}j=f});break;case"textbox":case"default":default:g(this,d);break;case"none":break;case"date":case"range":if(this.host.jqxDateTimeInput){var b=a("<div></div>");b.css("margin","4px");b.appendTo(d);var n={calendar:this.gridlocalization,todayString:this.gridlocalization.todaystring,clearString:this.gridlocalization.clearstring};b.jqxDateTimeInput({readonly:true,disabled:H.disabled,localization:n,rtl:H.rtl,showFooter:true,formatString:C.cellsformat,selectionMode:C.filtertype,value:null,theme:this.theme,width:A-10,height:this.filterrowheight-10});if(C.createfilterwidget){C.createfilterwidget(C,d,b)}if(z&&z.toString().length>1){b.val(z)}C._filterwidget=b;this.addHandler(b,"valueChanged",function(f){if(!H.refreshingfilter){H._applyfilterfromfilterrow();H.focusedfilter=null}})}else{g(this,d)}break;case"list":case"checkedlist":if(this.host.jqxDropDownList){var q=this._getfilterdataadapter(C);var l=false;var t=a("<div></div>");t.css("margin","4px");var u=C.datafield;var v=C.filtertype=="checkedlist"?true:false;var D=A<150?220:"auto";q.dataBind();var p=q.records;var k=p.length<8?true:false;l=k;t.appendTo(d);t.jqxDropDownList({placeHolder:H.gridlocalization.filterchoosestring,disabled:H.disabled,touchMode:H.touchmode,rtl:H.rtl,checkboxes:v,dropDownWidth:D,source:q.records,autoDropDownHeight:k,theme:this.theme,width:A-10,height:this.filterrowheight-10,displayMember:C.displayfield,valueMember:u});if(C.createfilterwidget){C.createfilterwidget(C,d,t)}var c=t.jqxDropDownList("listBox");if(v){t.jqxDropDownList({selectionRenderer:function(){var f='<span class="'+H.toThemeProperty("jqx-item")+'" style="top: 2px; position: relative; color: inherit; border: none; background-color: transparent;">'+H.gridlocalization.filterselectstring+"</span>";return f}});var y=a('<span style="top: 2px; position: relative; color: inherit; border: none; background-color: transparent;">'+H.gridlocalization.filterselectstring+"</span>");y.addClass(this.toThemeProperty("jqx-item"));if(c!=undefined){if(!l){c.host.height(200)}c.insertAt(H.gridlocalization.filterselectallstring,0);t.jqxDropDownList("setContent",y);var i=true;var G=new Array();c.checkAll(false);H.addHandler(c.host,"checkChange",function(J){t[0]._selectionChanged=true;if(!i){return}if(J.args.label!=H.gridlocalization.filterselectallstring){i=false;c.host.jqxListBox("checkIndex",0,true,false);var f=c.host.jqxListBox("getCheckedItems");var I=c.host.jqxListBox("getItems");if(f.length==1){c.host.jqxListBox("uncheckIndex",0,true,false)}else{if(I.length!=f.length){c.host.jqxListBox("indeterminateIndex",0,true,false)}}i=true}else{i=false;if(J.args.checked){c.host.jqxListBox("checkAll",false)}else{c.host.jqxListBox("uncheckAll",false)}i=true}})}}else{c.insertAt({label:this.gridlocalization.filterchoosestring,value:""},0);t.jqxDropDownList({selectedIndex:0})}C._filterwidget=t;var o=t.jqxDropDownList("dropdownlistWrapper");if(C.filtertype=="list"){this.addHandler(t,"select",function(f){if(!H.refreshingfilter){if(f.args&&f.args.type!="none"){H._applyfilterfromfilterrow();H.focusedfilter=null}}})}else{this.addHandler(t,"close",function(f){if(t[0]._selectionChanged){H._applyfilterfromfilterrow();H.focusedfilter=null;t[0]._selectionChanged=false}})}}else{g(this,d)}break;case"bool":case"boolean":if(this.host.jqxCheckBox){var w=a('<div tabIndex=0 style="opacity: 0.99; position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -10px;"></div>');w.appendTo(d);w.jqxCheckBox({disabled:H.disabled,enableContainerClick:false,animationShowDelay:0,animationHideDelay:0,hasThreeStates:true,theme:this.theme,checked:null});if(C.createfilterwidget){C.createfilterwidget(C,d,w)}if(z===true||z=="true"){w.jqxCheckBox({checked:true})}else{if(z===false||z=="false"){w.jqxCheckBox({checked:false})}}C._filterwidget=w;this.addHandler(w,"change",function(f){if(!H.refreshingfilter){if(f.args){H.focusedfilter=null;H._applyfilterfromfilterrow()}}})}else{g(this,d)}break}},_getfilterdataadapter:function(b){var c=this.source._source?true:false;if(!c){dataadapter=new a.jqx.dataAdapter(this.source,{autoBind:false,uniqueDataFields:[b.displayfield],autoSort:true,autoSortField:b.displayfield,async:false})}else{var e={localdata:this.source.records,datatype:this.source.datatype,async:false};var d=this;dataadapter=new a.jqx.dataAdapter(e,{autoBind:false,autoSort:true,autoSortField:b.displayfield,async:false,uniqueDataFields:[b.displayfield],beforeLoadComplete:function(f){var k=new Array();if(b.cellsformat){var j=d._getcolumntypebydatafield(b);for(var g=0;g<f.length;g++){k.push(f[g]);var h=f[g][b.displayfield];f[g][b.displayfield+"JQValue"]=h;if(j==="date"){if(h!=null){f[g][b.displayfield]=dataadapter.formatDate(h,b.cellsformat,d.gridlocalization)}else{f[g][b.displayfield]=""}}else{if(j==="number"||j==="float"||j==="int"){if(h!=null){f[g][b.displayfield]=dataadapter.formatNumber(h,b.cellsformat,d.gridlocalization)}else{f[g][b.displayfield]=""}}}}return k}else{return f}}})}if(b.filteritems&&b.filteritems.length>0){var e={localdata:b.filteritems,datatype:this.source.datatype,async:false};dataadapter=new a.jqx.dataAdapter(e,{autoBind:false,async:false})}else{if(b.filteritems){if(b.filteritems._source){b.filteritems._options.autoBind=false;b.filteritems._options.async=false;return b.filteritems}else{if(a.isFunction(b.filteritems)){return b.filteritems()}}}}return dataadapter},refreshfilterrow:function(){if(!this.showfilterrow){return}this.refreshingfilter=true;this._updatefilterrowui();this._updatelistfilters(true,true);var h=this.that;var l=this.columns.records.length;for(var d=0;d<l;d++){var c=this.columns.records[d];if(c.filterable){if(c.filter){var b=c.filter.getfilters();if(b.length>0){var k=b[0].value;var e=c._filterwidget;var f=c._filterwidget.parent();if(e!=null){switch(c.filtertype){case"number":f.find("input").val(k);if(this.host.jqxDropDownList){var i=c.filter.getoperatorsbyfiltertype("numericfilter");e.find(".filter").jqxDropDownList("selectIndex",i.indexOf(b[0].condition))}break;case"input":f.find("input").val(k);if(this.host.jqxDropDownList){var i=c.filter.getoperatorsbyfiltertype("stringfilter");e.find(".filter").jqxDropDownList("selectIndex",i.indexOf(b[0].condition))}break;case"date":case"range":if(this.host.jqxDateTimeInput){var k=c.filter.getfilterat(0).filtervalue;if(k!=undefined){if(c.filter.getfilterat(1)){var g=c.filter.getfilterat(1).filtervalue}else{g=k}if(c.filtertype=="range"){a(f.children()[0]).jqxDateTimeInput("setRange",new Date(k),new Date(g))}else{a(f.children()[0]).jqxDateTimeInput("setDate",new Date(k))}}}else{e.val(k)}break;case"textbox":case"default":e.val(k);h["_oldWriteText"+e[0].id]=k;break;case"bool":case"boolean":if(!this.host.jqxCheckBox){e.val(k)}else{a(f.children()[0]).jqxCheckBox({checked:k})}break}}}}}}this.refreshingfilter=false},_destroyedfilters:function(){var g=this.that;var b=this.columns.records.length;for(var f=0;f<b;f++){var c=this.columns.records[f];if(c.filterable){var h=c._filterwidget;if(c.filtertype=="list"||c.filtertype=="checkedlist"){this.removeHandler(h,"select");this.removeHandler(h,"close");h.jqxDropDownList("destroy")}else{if(c.filtertype=="date"||c.filtertype=="range"){this.removeHandler(h,"valueChanged");h.jqxDateTimeInput("destroy")}else{if(c.filtertype=="bool"){this.removeHandler(h,"change");h.jqxCheckBox("destroy")}else{if(c.filtertype=="number"){var d=h.find(".jqx-input");this.removeHandler(d,"keydown");var e=a(h.children()[1]);e.jqxDropDownList("destroy")}else{this.removeHandler(h,"keydown")}}}}h.remove()}}},_updatelistfilters:function(l,k){var v=this.that;var t=this.columns.records.length;for(var p=0;p<t;p++){var q=this.columns.records[p];if(q.filterable){if(q.filtertype=="list"||q.filtertype=="checkedlist"){var h=q._filterwidget;if(!l){if(q.filter==undefined){h.jqxDropDownList("renderSelection");continue}}else{var e=this._getfilterdataadapter(q);h.jqxDropDownList({source:e});var d=h.jqxDropDownList("getItems");var o=true;if(d.length!=e.records.length+1){o=false}if(o){for(var s=1;s<d.length;s++){if(d[s].label!=e.records[s-1][q.displayfield]){o=false;break}}}if(o&&!k){continue}}var m=q.filtertype=="checkedlist"?true:false;var d=h.jqxDropDownList("getItems");var b=h.jqxDropDownList("listBox");h.jqxDropDownList("dataBind");if(m){h.jqxDropDownList({selectionRenderer:function(){return v.gridlocalization.filterselectstring}});b.insertAt(this.gridlocalization.filterselectallstring,0);var n=a('<span style="top: 2px; position: relative; color: inherit; border: none; background-color: transparent;">'+this.gridlocalization.filterselectstring+"</span>");n.addClass(this.toThemeProperty("jqx-item"));h.jqxDropDownList("setContent",n);b.checkAll(false);if(q.filter){var g=q.filter.getfilters();for(var s=0;s<b.items.length;s++){var f=b.items[s].label;var r=undefined;a.each(g,function(){var i;if(this.condition=="NOT_EQUAL"){if(f==this.value){i=false}else{i=true}}else{if(this.condition=="EQUAL"){if(f==this.value){i=true}else{i=false}}}if(r==undefined&&i!==undefined){r=i}else{if(this.condition=="EQUAL"){r=r||i}else{r=r&&i}}});if(r){b.checkIndex(s,false,false)}else{b.uncheckIndex(s,false,false)}}b._updateCheckedItems();var u=b.getCheckedItems().length;if(b.items.length!=u&&u>0){b.host.jqxListBox("indeterminateIndex",0,true,false)}}}else{b.insertAt({label:this.gridlocalization.filterchoosestring,value:""},0);h.jqxDropDownList({selectedIndex:0});if(q.filter){var g=q.filter.getfilters();var c=-1;for(var s=0;s<b.items.length;s++){var f=b.items[s].label;a.each(g,function(){if(this.condition=="NOT_EQUAL"){return true}if(f==this.value){c=s;return false}})}if(c!=-1){b.selectIndex(c)}}}if(d.length<8){h.jqxDropDownList("autoDropDownHeight",true)}else{h.jqxDropDownList("autoDropDownHeight",false)}}}}},_renderfiltercolumn:function(){var b=this.that;if(this.filterable){if(!this.columns.records){return}a.each(this.columns.records,function(d,e){var c=false;if(b.autoshowfiltericon){if(this.filter){a(this.filtericon).show();c=true}else{a(this.filtericon).hide()}}else{if(this.filterable){a(this.filtericon).show();c=true}}if(this.align=="right"&&!this.renderer){if(this.element){if(!c){this.element.firstChild.firstChild.style.marginRight="2px"}else{this.element.firstChild.firstChild.style.marginRight="18px"}}}})}},_initcolumntypes:function(){if(this.columns&&this.columns.records){var b=this.source._source.datafields;if(b){for(var c=0;c<this.columns.records.length;c++){var d=this.columns.records[c];if(d.datatype){continue}var e="";a.each(b,function(){if(this.name==d.displayfield){if(this.type){e=this.type}return false}});if(e!=""){d.datatype=e}else{d.datatype=""}}}}},_getcolumntypebydatafield:function(f){var g=this.that;var e="string";var d=g.source.datafields||((g.source._source)?g.source._source.datafields:null);if(d){var i="";a.each(d,function(){if(this.name==f.displayfield){if(this.type){i=this.type}return false}});if(i){return i}}if(f!=null){if(this.dataview.cachedrecords==undefined){return e}var b=null;if(!this.virtualmode){if(this.dataview.cachedrecords.length==0){return e}b=this.dataview.cachedrecords[0][f.displayfield];if(b!=null&&b.toString()==""){return"string"}}else{a.each(this.dataview.cachedrecords,function(){b=this[f.displayfield];return false})}if(b!=null){if(typeof b=="boolean"){e="boolean"}else{if(a.jqx.dataFormat.isNumber(b)){e="number"}else{var h=new Date(b);if(h.toString()=="NaN"||h.toString()=="Invalid Date"){if(a.jqx.dataFormat){h=a.jqx.dataFormat.tryparsedate(b);if(h!=null){if(h&&h.getFullYear()){if(h.getFullYear()==1970&&h.getMonth()==0&&h.getDate()==1){var c=new Number(b);if(!isNaN(c)){return"number"}return"string"}}return"date"}else{e="string"}}else{e="string"}}else{e="date"}}}}}return e},_getfiltersbytype:function(b){var c=this.that;var d="";switch(b){case"number":case"float":case"int":d=c.gridlocalization.filternumericcomparisonoperators;break;case"date":d=c.gridlocalization.filterdatecomparisonoperators;break;case"boolean":case"bool":d=c.gridlocalization.filterbooleancomparisonoperators;break;case"string":default:d=c.gridlocalization.filterstringcomparisonoperators;break}return d},_getfiltertype:function(b){var c="stringfilter";switch(b){case"number":case"int":case"float":case"decimal":c="numericfilter";break;case"boolean":case"bool":c="booleanfilter";break;case"date":case"time":case"range":c="datefilter";break;case"string":case"input":c="stringfilter";break}return c},_buildfilter:function(r,l,F){var f=a(l).find(".filter1");var G=a(l).find(".filter2");var K=a(l).find(".filter3");var k=a(l).find(".filtertext1"+r.element.id);var j=a(l).find(".filtertext2"+r.element.id);var A=k.val();var z=j.val();var M=r._getcolumntypebydatafield(F);var t=r._getfiltersbytype(M);var J=new a.jqx.filter();var w=r._getfiltertype(M);if(r.filtermode==="default"&&(F.filtertype!=="list"&&F.filtertype!=="checkedlist")){var E=f.jqxDropDownList("selectedIndex");var c=G.jqxDropDownList("selectedIndex");var D=K.jqxDropDownList("selectedIndex");var e=null;var d=null;if(r.updatefilterconditions){var p=r.updatefilterconditions(w,J.getoperatorsbyfiltertype(w));if(p!=undefined){J.setoperatorsbyfiltertype(w,p)}}var q=false;var L=J.getoperatorsbyfiltertype(w)[E];var K=J.getoperatorsbyfiltertype(w)[D];var v=L=="NULL"||L=="NOT_NULL";var h=L=="EMPTY"||L=="NOT_EMPTY";if(L==undefined){L=J.getoperatorsbyfiltertype(w)[0]}if(K==undefined){K=J.getoperatorsbyfiltertype(w)[0]}if(A.length>0||v||h){e=J.createfilter(w,A,L,null,F.cellsformat,r.gridlocalization);J.addfilter(c,e);q=true}var u=K=="NULL"||K=="NOT_NULL";var g=K=="EMPTY"||K=="NOT_EMPTY";if(z.length>0||u||g){d=J.createfilter(w,z,K,null,F.cellsformat,r.gridlocalization);J.addfilter(c,d);q=true}if(q){var C=F.displayfield;this.addfilter(C,J,true)}else{this._clearfilter(r,l,F)}}else{if(r.filtermode==="excel"||(F.filtertype==="list"||F.filtertype==="checkedlist")){var B=this;var n=false;var x=f.data().jqxListBox.instance;var I=this.filtermode==="excel"||F.filtertype==="checkedlist";var o=x.getCheckedItems();if(!I){var o=x.getSelectedItems()}if(o.length==0){for(var H=1;H<x.items.length;H++){var m=x.items[H].value;if(m===undefined){m=""}var b="not_equal";if(m&&m.indexOf){if(m.indexOf("|")>=0||m.indexOf(" AND ")>=0||m.indexOf(" OR ")>=0||m.indexOf(" and ")>=0||m.indexOf(" or ")>=0){m=m.replace("|","");m=m.replace("AND","");m=m.replace("OR","");m=m.replace("and","");m=m.replace("or","");var b="equal"}}if(w=="datefilter"){var y=J.createfilter(w,m,b,null,F.cellsformat,r.gridlocalization)}else{var y=J.createfilter(w,m,b,null)}J.addfilter(0,y)}n=true}else{if(o.length!=x.items.length){n=true;for(var H=0;H<o.length;H++){if(r.gridlocalization.filterselectallstring===o[H].value){continue}var m=o[H].value;if(m===undefined){m=""}var b="equal";if(w=="datefilter"){var y=J.createfilter(w,m,b,null,F.cellsformat,r.gridlocalization)}else{var y=J.createfilter(w,m,b,null)}var s=1;J.addfilter(s,y)}}else{n=false}}if(n){var C=F.displayfield;this.addfilter(C,J,true)}else{var C=F.displayfield;this.removefilter(C,true)}}}},_clearfilter:function(e,c,d){var b=d.displayfield;this.removefilter(b,true)},addfilter:function(d,e,c){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}var f=this.getcolumn(d);var b=this._getcolumn(d);if(f==undefined||f==null){return}f.filter=e;b.filter=e;this.dataview.addfilter(d,e);if(c==true&&c!=undefined){this.applyfilters("add")}},removefilter:function(d,c){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}var e=this.getcolumn(d);var b=this._getcolumn(d);if(e==undefined||e==null){return}if(e.filter==null){return}this.dataview.removefilter(d,e.filter);e.filter=null;b.filter=null;if(this.showfilterrow){this.clearfilterrow(d)}if(c==true||c!==false){this.applyfilters("remove")}},applyfilters:function(f){var c=false;if(this.dataview.filters.length>=0&&(this.virtualmode||!this.source.localdata)){if(this.source!=null&&this.source.filter){var g=-1;if(this.pageable){g=this.dataview.pagenum;this.dataview.pagenum=0}else{this.vScrollInstance.setPosition(0);this.loadondemand=true;this._renderrows(this.virtualsizeinfo)}if(this.pageable&&this.virtualmode){this.dataview.pagenum=0}this.source.filter(this.dataview.filters,this.dataview.records,this.dataview.records.length);if(this.pageable&&!this.virtualmode){this.dataview.pagenum=g}}}this._cellscache=new Array();if(this.dataview.clearsortdata){this.dataview.clearsortdata()}if(!this.virtualmode){var b=this.selectedrowindexes;var d=this.that;this.dataview.refresh();if(this.dataview.clearsortdata){if(this.sortcolumn&&this.sortdirection){var e=this.sortdirection.ascending?"asc":"desc";if(!this._loading){this.sortby(this.sortcolumn,e,null,false)}else{this.sortby(this.sortcolumn,e,null,false,false)}}}}else{if(this.pageable){this.dataview.updateview();if(this.gotopage){this.gotopage(0)}}this.rendergridcontent(false,false);if(this.showfilterrow){if(typeof f!="string"&&a.isEmptyObject(f)){this.refreshfilterrow()}}this._raiseEvent(13,{filters:this.dataview.filters});return}if(this.pageable){this.dataview.updateview();if(this.gotopage){this.gotopage(0);this.updatepagerdetails()}}this._updaterowsproperties();if(!this.groupable||(this.groupable&&this.groups.length==0)){this._rowdetailscache=new Array();this.virtualsizeinfo=null;this._pagescache=new Array();if(this.columns&&this.columns.records&&this.columns.records.length>0&&!this.columns.records[0].filtericon){this.prerenderrequired=true}this.rendergridcontent(true,false);this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);if(this.showaggregates&&this._updatecolumnsaggregates){this._updatecolumnsaggregates()}}else{this._rowdetailscache=new Array();this._render(true,true,false,false,false);if(this.showfilterrow){this._updatefocusedfilter()}this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}if(this.showfilterrow){if(typeof f!="string"&&a.isEmptyObject(f)){this.refreshfilterrow()}}this._raiseEvent(13,{filters:this.dataview.filters})},getfilterinformation:function(){var d=new Array();for(var b=0;b<this.dataview.filters.length;b++){var c=this.getcolumn(this.dataview.filters[b].datafield);d[b]={filter:this.dataview.filters[b].filter,datafield:c.datafield,displayfield:c.displayfield,filtercolumn:c.datafield,filtercolumntext:c.text}}return d},clearfilters:function(b){var d=this.that;if(this.showfilterrow){this.clearfilterrow()}if(this.columns.records){var c=b==true||b!==false;a.each(this.columns.records,function(){d.removefilter(this.displayfield,!c)})}if(b===false){return}if(b==true||b!==false){this.applyfilters("clear")}},_destroyfilterpanel:function(){var e=a(a.find("#filterclearbutton"+this.element.id));var d=a(a.find("#filterbutton"+this.element.id));var h=a(a.find("#filter1"+this.element.id));var c=a(a.find("#filter2"+this.element.id));var g=a(a.find("#filter3"+this.element.id));var f=a(a.find(".filtertext1"+this.element.id));var b=a(a.find(".filtertext2"+this.element.id));if(f.length>0&&b.length>0){f.removeClass();b.removeClass();f.remove();b.remove()}if(e.length>0){e.jqxButton("destroy");d.jqxButton("destroy");this.removeHandler(e,"click");this.removeHandler(d,"click")}if(h.length>0){h.jqxDropDownList("destroy")}if(c.length>0){c.jqxDropDownList("destroy")}if(g.length>0){g.jqxDropDownList("destroy")}var h=a(a.find("#filter1"+this.element.id+"ex"));var c=a(a.find("#filter2"+this.element.id+"ex"));var g=a(a.find("#filter3"+this.element.id+"ex"));if(h.length>0){h.jqxDropDownList("destroy")}if(c.length>0){c.jqxDropDownList("destroy")}if(g.length>0){g.jqxDropDownList("destroy")}},_updatefilterpanel:function(s,p,E){if(s==null||s==undefined){s=this}var Q=s._getcolumntypebydatafield(E);var u=s._getfiltersbytype(Q);if(!s.host.jqxDropDownList){throw new Error("jqxGrid: Missing reference to jqxdropdownlist.js.");return}s.filterpanel.detach();s.excelfilterpanel.detach();if(E.filterpanel){E.filterpanel.detach()}a(p).children().detach();var k=a(s.menuitemsarray[6]);a(k).css("height","175px");if(E.createfilterpanel&&!E.filterpanel){var K=a("<div class='filter' style='margin-left: 7px;'></div>");a(p).append(K);E.createfilterpanel(E.displayfield,K);E.filterpanel=K}if(E.filtertype==="list"||E.filtertype==="checkedlist"){a(p).append(s.excelfilterpanel)}else{if(E.filtertype!=="custom"){a(p).append(s.filterpanel)}else{if(E.filterpanel){a(p).append(E.filterpanel)}}}var g=a(p);var N=g.find("#filterclearbutton"+s.element.id);var l=g.find("#filterbutton"+s.element.id);var f=g.find(".filter1");var m=g.find(".filter2");var P=g.find(".filter3");var j=g.find(".filtertext1"+s.element.id);var h=g.find(".filtertext2"+s.element.id);if(this._hasdatefilter&&(E.filtertype!=="list"&&E.filtertype!=="checkedlist"&&E.filtertype!=="custom")){var e=j.parent();var d=h.parent();e.children().remove();d.children().remove();if(E.filtertype=="date"){s._showwhere.text(s.gridlocalization.filtershowrowdatestring);var b=a("<div class='filtertext1"+s.element.id+"' style='margin-top: 3px; margin-bottom: 3px;'></div>");e.append(b);var n=function(c){var i={calendar:s.gridlocalization,todayString:s.gridlocalization.todaystring,clearString:s.gridlocalization.clearstring};c.jqxDateTimeInput({disabled:s.disabled,localization:i,rtl:s.rtl,width:s._filterpanelwidth-15,height:20,value:null,formatString:E.cellsformat,theme:s.theme})};n(b);var b=a("<div class='filtertext2"+s.element.id+"' style='margin-top: 3px; margin-bottom: 3px;'></div>");d.append(b);n(b)}else{s._showwhere.text(s.gridlocalization.filtershowrowstring);var b=a("<input class='filtertext1"+s.element.id+"' style='height: 20px; margin-top: 3px; margin-bottom: 3px;' type='text'></input>");e.append(b);var n=function(c){c.addClass(s.toThemeProperty("jqx-input"));c.addClass(s.toThemeProperty("jqx-widget-content"));c.addClass(s.toThemeProperty("jqx-rc-all"));c.width(s._filterpanelwidth-15)};n(b);var b=a("<input class='filtertext2"+s.element.id+"' style='height: 20px; margin-top: 3px; margin-bottom: 3px;' type='text'></input>");d.append(b);n(b)}var j=g.find(".filtertext1"+s.element.id);var h=g.find(".filtertext2"+s.element.id)}if(E.filtertype!="date"){j.val("");h.val("")}else{j.val(null);h.val(null)}this.removeHandler(l,"click");this.addHandler(l,"click",function(){s._buildfilter(s,p,E);s._closemenu()});this.removeHandler(N,"click");this.addHandler(N,"click",function(){s._clearfilter(s,p,E);s._closemenu()});this.removeHandler(l,"keydown");this.addHandler(l,"keydown",function(c){if(c.keyCode===13){s._buildfilter(s,p,E);s._closemenu()}});this.removeHandler(N,"keydown");this.addHandler(N,"keydown",function(c){if(c.keyCode===13){s._clearfilter(s,p,E);s._closemenu()}});this.removeHandler(j,"keydown");this.addHandler(j,"keydown",function(c){if(c.keyCode===13){l.trigger("click")}if(c.keyCode===27){s._closemenu()}});this.removeHandler(h,"keydown");this.addHandler(h,"keydown",function(c){if(c.keyCode===13){l.trigger("click")}if(c.keyCode===27){s._closemenu()}});if(this.filtermode==="default"&&(E.filtertype!=="list"&&E.filtertype!=="checkedlist"&&E.filtertype!=="custom")){if(f.jqxDropDownList("source")!=u){f.jqxDropDownList({enableBrowserBoundsDetection:false,source:u});P.jqxDropDownList({enableBrowserBoundsDetection:false,source:u})}if(Q=="boolean"||Q=="bool"){f.jqxDropDownList({autoDropDownHeight:true,selectedIndex:0});P.jqxDropDownList({autoDropDownHeight:true,selectedIndex:0})}else{var H=false;if(u&&u.length){if(u.length<5){H=true}}f.jqxDropDownList({autoDropDownHeight:H,selectedIndex:2});P.jqxDropDownList({autoDropDownHeight:H,selectedIndex:2})}m.jqxDropDownList({selectedIndex:0});var z=E.filter;var M=new a.jqx.filter();var x="";switch(Q){case"number":case"int":case"float":case"decimal":x="numericfilter";o=M.getoperatorsbyfiltertype("numericfilter");break;case"boolean":case"bool":x="booleanfilter";o=M.getoperatorsbyfiltertype("booleanfilter");break;case"date":case"time":x="datefilter";o=M.getoperatorsbyfiltertype("datefilter");break;case"string":x="stringfilter";o=M.getoperatorsbyfiltertype("stringfilter");break}if(z!=null){var e=z.getfilterat(0);var d=z.getfilterat(1);var I=z.getoperatorat(0);if(s.updatefilterconditions){var o=[];var r=s.updatefilterconditions(x,o);if(r!=undefined){for(var O=0;O<r.length;O++){r[O]=r[O].toUpperCase()}z.setoperatorsbyfiltertype(x,r);o=r}}var w="default";if(e!=null){var D=o.indexOf(e.comparisonoperator);var A=e.filtervalue;j.val(A);f.jqxDropDownList({selectedIndex:D,animationType:w})}if(d!=null){var C=o.indexOf(d.comparisonoperator);var y=d.filtervalue;h.val(y);P.jqxDropDownList({selectedIndex:C,animationType:w})}if(z.getoperatorat(0)==undefined){m.jqxDropDownList({selectedIndex:0,animationType:w})}else{if(z.getoperatorat(0)=="and"||z.getoperatorat(0)==0){m.jqxDropDownList({selectedIndex:0})}else{m.jqxDropDownList({selectedIndex:1})}}}if(s.updatefilterpanel){s.updatefilterpanel(f,P,m,j,h,l,N,z,x,o)}if(!this._hasdatefilter||(this._hasdatefilter&&E.filtertype!="date")){if(!this.touchdevice){j.focus();setTimeout(function(){j.focus()},10)}}}else{if(this.filtermode==="excel"||E.filtertype==="list"||E.filtertype==="checkedlist"){var v=s._getfilterdataadapter(E);var x=s._getfiltertype(Q);var L=this.filtermode==="excel"||E.filtertype==="checkedlist";f.jqxListBox("focus");this.removeHandler(f,"keyup");this.addHandler(f,"keyup",function(c){if(c.keyCode===13){l.trigger("click")}if(c.keyCode===27){s._closemenu()}});if(E.cellsformat){f.jqxListBox({checkboxes:L,displayMember:E.displayfield,valueMember:E.displayfield+"JQValue",source:v})}else{f.jqxListBox({checkboxes:L,displayMember:E.displayfield,valueMember:E.displayfield,source:v})}if(L){f.jqxListBox("insertAt",s.gridlocalization.filterselectallstring,0);var F=f.data().jqxListBox.instance;F.checkAll(false);var B=this;if(E.filter){F.uncheckAll(false);var t=E.filter.getfilters();for(var J=0;J<F.items.length;J++){var G=F.items[J].value;a.each(t,function(){if(this.condition=="NOT_EQUAL"){if(G!=this.value){F.uncheckIndex(J,false,false);return false}else{if(G!=null&&this.value!=null&&G.toString()!=this.value.toString()){F.uncheckIndex(J,false,false);return false}}}else{if(this.condition=="EQUAL"){if(G==this.value){F.checkIndex(J,false,false);return false}else{if(G!=null&&this.value!=null&&G.toString()==this.value.toString()){F.checkIndex(J,false,false);return false}}}}})}F._updateCheckedItems();var q=F.getCheckedItems().length;if(F.items.length!=q&&q>0){F.host.jqxListBox("indeterminateIndex",0,true,false)}if(q===F.items.length-1){F.host.jqxListBox("checkIndex",0,true,false)}}}else{if(E.filter){var F=f.data().jqxListBox.instance;F.clearSelection();var t=E.filter.getfilters();for(var J=0;J<F.items.length;J++){var G=F.items[J].value;a.each(t,function(){if(this.condition=="NOT_EQUAL"){if(G!=this.value){F.unselectIndex(J,false,false);return false}}else{if(this.condition=="EQUAL"){if(G==this.value){F.selectIndex(J,true,false);return false}}}})}F._renderItems()}}}}},_initfilterpanel:function(z,b,c,p,w){if(z==null||z==undefined){z=this}b[0].innerHTML="";var t=a("<div class='filter' style='margin-left: 7px;'></div>");b.append(t);var n=a("<div class='filter' style='margin-top: 3px; margin-bottom: 3px;'></div>");n.text(z.gridlocalization.filtershowrowstring);this._showwhere=n;var o=w?"ex":"";var v=a("<div class='filter filter1' id='filter1"+z.element.id+o+"'></div>");var h=a("<div class='filter filter2' id='filter2"+z.element.id+o+"' style='margin-bottom: 3px;'></div>");var s=a("<div class='filter filter3' id='filter3"+z.element.id+o+"'></div>");var e=z._getcolumntypebydatafield(c);if(!v.jqxDropDownList){throw new Error("jqxGrid: jqxdropdownlist.js is not loaded.");return}var q=z._getfiltersbytype(e);this._hasdatefilter=false;this._filterpanelwidth=p;if(this.columns&&this.columns.records){for(var u=0;u<this.columns.records.length;u++){if(this.columns.records[u].filtertype=="date"){this._hasdatefilter=true;break}}}var k=a("<div class='filter'><input class='filtertext1"+z.element.id+"' style='height: 20px; margin-top: 3px; margin-bottom: 3px;' type='text'></input></div>");var m=k.find("input");m.addClass(this.toThemeProperty("jqx-input"));m.addClass(this.toThemeProperty("jqx-widget-content"));m.addClass(this.toThemeProperty("jqx-rc-all"));m.width(p-15);var l=a("<div class='filter'><input class='filtertext2"+z.element.id+"' style='height: 20px; margin-top: 3px;' type='text'></input></div>");var j=l.find("input");j.addClass(this.toThemeProperty("jqx-input"));j.addClass(this.toThemeProperty("jqx-widget-content"));j.addClass(this.toThemeProperty("jqx-rc-all"));j.width(p-15);if(z.rtl){m.css("direction","rtl");j.css("direction","rtl")}var g=a("<div class='filter' style='height: 25px; margin-left: 20px; margin-top: 7px;'></div>");var f=a('<span tabIndex=0 id="filterbutton'+z.element.id+'" class="filterbutton" style="padding: 4px 12px; margin-left: 2px;">'+z.gridlocalization.filterstring+"</span>");g.append(f);var x=a('<span tabIndex=0 id="filterclearbutton'+z.element.id+'" class="filterclearbutton" style="padding: 4px 12px; margin-left: 5px;">'+z.gridlocalization.filterclearstring+"</span>");g.append(x);f.jqxButton({height:20,theme:z.theme});x.jqxButton({height:20,theme:z.theme});var y=function(A){if(A){if(A.text().indexOf("case sensitive")!=-1){var i=A.text();i=i.replace("case sensitive","match case");A.text(i)}A.css("font-family",z.host.css("font-family"));A.css("font-size",z.host.css("font-size"));A.css("top","1px");A.css("position","relative");return A}return""};if(this.filtermode==="default"&&!w){t.append(n);t.append(v);v.jqxDropDownList({_checkForHiddenParent:false,rtl:z.rtl,enableBrowserBoundsDetection:false,selectedIndex:2,width:p-15,height:20,dropDownHeight:150,dropDownWidth:p-15,selectionRenderer:y,source:q,theme:z.theme});t.append(k);var r=new Array();r[0]=z.gridlocalization.filterandconditionstring;r[1]=z.gridlocalization.filterorconditionstring;h.jqxDropDownList({_checkForHiddenParent:false,rtl:z.rtl,enableBrowserBoundsDetection:false,autoDropDownHeight:true,selectedIndex:0,width:60,height:20,source:r,selectionRenderer:y,theme:z.theme});t.append(h);s.jqxDropDownList({_checkForHiddenParent:false,rtl:z.rtl,enableBrowserBoundsDetection:false,selectedIndex:2,width:p-15,height:20,dropDownHeight:150,dropDownWidth:p-15,selectionRenderer:y,source:q,theme:z.theme});t.append(s);t.append(l)}else{if(this.filtermode==="excel"||w){t.append(n);t.append(v);v.attr("tabindex",0);v.jqxListBox({rtl:z.rtl,_checkForHiddenParent:false,checkboxes:true,selectedIndex:2,width:p-15,height:120,theme:z.theme});var d=true;z.addHandler(v,"checkChange",function(B){if(!d){return}if(B.args.label!=z.gridlocalization.filterselectallstring){d=false;v.jqxListBox("checkIndex",0,true,false);var i=v.jqxListBox("getCheckedItems");var A=v.jqxListBox("getItems");if(i.length==1){v.jqxListBox("uncheckIndex",0,true,false)}else{if(A.length!=i.length){v.jqxListBox("indeterminateIndex",0,true,false)}}d=true}else{d=false;if(B.args.checked){v.jqxListBox("checkAll",false)}else{v.jqxListBox("uncheckAll",false)}d=true}})}}t.append(g);if(z.updatefilterpanel){z.updatefilterpanel(v,s,h,k,l,f,x,null,null,q)}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.grouping.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.grouping.js
new file mode 100644 (file)
index 0000000..2402ca1
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.dataview.grouping=function(){this.loadgrouprecords=function(E,H,s,F,I,f,R,G,x){var M=E;var j=this;var Q=new Array();for(var n=0;n<j.groups.length;n++){Q[n]=j.generatekey()}var K=new Array();var b=0;var Q=Q;var B=new Array();var P=H;var e=H;var C=j.groups.length;this.loadedrecords=new Array();this.bounditems=new Array();this.loadedrecords=new Array();this.loadedrootgroups=new Array();this.loadedgroups=new Array();this.loadedgroupsByKey=new Array();this.sortedgroups=new Array();var O=this.sortdata!=null;var S=O?this.sortdata:this.records;if(this.pageable){var A=Object.prototype.toString;var l=this.groups[0];if(this.groups.length==1){Object.prototype.toString=(typeof l=="function")?l:function(){return this[l]}}else{Object.prototype.toString=(typeof l=="function")?l:function(){var T="";for(var i=0;i<j.groups.length;i++){T+=this[j.groups[i]];if(i<j.groups.length-1){T+=" "}}return T}}if(O){var c=this.sortfield;Object.prototype.toString=(typeof l=="function")?l:function(){return this[l]+" "+this[c]}}var u=new Array();var D=0;if(!S[H]){a.each(S,function(i,q){u[H+i++]=this});S=u}if(!O){if(S.sort){S.sort(function(q,i){if(q===undefined){q=null}if(i===undefined){i=null}if(q===null&&i===null){return 0}if(q===null&&i!==null){return 1}if(q!==null&&i===null){return -1}q=q.toString();i=i.toString();if(a.jqx.dataFormat.isNumber(q)&&a.jqx.dataFormat.isNumber(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(a.jqx.dataFormat.isDate(q)&&a.jqx.dataFormat.isDate(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(q)&&!a.jqx.dataFormat.isNumber(i)){q=String(q).toLowerCase();i=String(i).toLowerCase()}}}try{if(q<i){return -1}if(q>i){return 1}}catch(T){var U=T}return 0})}}else{S.sort(function(q,i){var q=q.value;var i=i.value;if(q===undefined){q=null}if(i===undefined){i=null}if(q===null&&i===null){return 0}if(q===null&&i!==null){return 1}if(q!==null&&i===null){return -1}if(a.jqx.dataFormat.isNumber(q)&&a.jqx.dataFormat.isNumber(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(a.jqx.dataFormat.isDate(q)&&a.jqx.dataFormat.isDate(i)){if(q<i){return -1}if(q>i){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(q)&&!a.jqx.dataFormat.isNumber(i)){q=String(q).toLowerCase();i=String(i).toLowerCase()}}}try{if(q<i){return -1}if(q>i){return 1}}catch(T){var U=T}return 0})}Object.prototype.toString=A}if(this.virtualmode){var u=new Array();var D=0;for(var P=0;P<s-H;P++){if(S[P]){u[H+D++]=S[P]}else{if(S[H+D]){u[H+D]=S[H+D];D++}}}P=0;S=u}for(var d=H;d<s;d++){var y={};if(!O){y=a.extend({},S[d])}else{y=a.extend({},S[d].value)}id=y[j.uniqueId];if(I>=G||id!=R[I][j.uniqueId]||(f&&f[id])){x[x.length]=I}var L=new Array();var w=0;for(var n=0;n<C;n++){var t=j.groups[n];var J=y[t];if(J==null){J=""}L[w++]={value:J,hash:Q[n]}}if(L.length!=C){break}var k=null;var m="";var g=-1;for(var N=0;N<L.length;N++){g++;var p=L[N].value;var v=L[N].hash;m=m+"_"+v+"_"+p;if(B[m]!=undefined&&B[m]!=null){k=B[m];continue}if(k==null){k={group:p,subItems:new Array(),subGroups:new Array(),level:0};K[b++]=k;k.uniqueid=j.generatekey();j.loadedgroupsByKey[p]=k}else{var o={group:p,subItems:new Array(),subGroups:new Array(),parentItem:k,level:k.level+1};j.loadedgroupsByKey[k.uniqueid+"_"+p]=o;o.uniqueid=j.generatekey();k.subGroups[k.subGroups.length++]=o;k=o}B[m]=k}if(k!=null){if(undefined==y.uid){y.uid=this.getid(this.source.id,y,P)}if(!O){y.boundindex=P;this.recordsbyid["id"+y.uid]=S[d]}else{y.boundindex=S[d].index;this.recordsbyid["id"+y.uid]=S[d].value}this.bounditems[y.boundindex]=y;this.sortedgroups[P]=y;y.uniqueid=j.generatekey();y.parentItem=k;y.level=k.level+1;k.subItems[k.subItems.length++]=y}else{if(undefined==y.uid){y.uid=this.getid(this.source.id,y,P)}if(!O){y.boundindex=P;this.recordsbyid["id"+y.uid]=S[d]}else{y.boundindex=S[d].index;this.recordsbyid["id"+y.uid]=S[d].value}this.sortedgroups[P]=y;this.bounditems[y.boundindex]=y;y.uniqueid=j.generatekey()}I++;P++;e++}var h=function(q,T,U){for(var i=0;i<T.subItems.length;i++){T.subItems[i].visibleindex=E+U;q.rows[U]=T.subItems[i];q.loadedrecords[U]=T.subItems[i];U++}return U};var r=function(i,U,V){var q=function(Y){if(i.aggregates==true){var W=Y;var X={};if(W!=null){X.level=W.level;X.visibleindex=E+V;X.uniqueid=i.generatekey();i.rows[V]=X;i.loadedrecords[V++]=X;X.totalsrow=true;if(Y.subItems.length>0){W=Y.subItems[Y.subItems.length-1];X.parentItem=W.parentItem;if(X.parentItem.subItems){X.parentItem.subItems[X.parentItem.subItems.length]=X}}else{if(Y.subGroups.length>0){W=Y.subGroups[Y.subGroups.length-1];X.level=W.level;X.parentItem=Y;Y.subGroups[Y.subGroups.length]=X}}}}};for(subGroup in U.subGroups){var T=U.subGroups[subGroup];if(T.subGroups){i.loadedgroups[i.loadedgroups.length]=T;T.visibleindex=E+V;i.rows[V]=T;i.loadedrecords[V]=T;V++;if(T.subGroups.length>0){V=r(i,T,V)}else{if(T.subItems.length>0){V=h(i,T,V)}}q(T)}}if(U.subItems.length>0){V=h(i,U,V)}q(U);return V};var z=K.length;this.loadedgroups=new Array();this.rows=new Array();var M=0;for(var P=0;P<z;P++){var t=K[P];this.loadedrootgroups[P]=t;this.loadedgroups[this.loadedgroups.length]=t;t.visibleindex=E+M;this.rows[M]=t;this.loadedrecords[M]=t;M++;M=r(this,t,M)}return M};this._updategroupsinpage=function(C,r,K,d,u,j,f){var p=new Array();var w=[];if(this.groupable&&this.groups.length>0){var B=0;var h=new Array();var g=new Array();for(var m=0;m<C.groups.length;m++){g[m]=C.generatekey()}var F=0;var o=new Array();var k=0;if(f>this.totalrecords){f=this.totalrecords}for(var v=j;v<f;v++){var H=a.extend({},C.sortedgroups[v]);id=H[C.uniqueId];if(!C.pagesize||(K>=C.pagesize*C.pagenum&&K<C.pagesize*(C.pagenum+1))){if(d>=u||id!=p[d][C.uniqueId]||(updated&&updated[id])){w[w.length]=d}var e=new Array();var y=0;for(var m=0;m<C.groups.length;m++){var n=C.groups[m];var D=H[n];if(null==D){D=""}e[y++]={value:D,hash:g[m]}}if(e.length!=C.groups.length){break}var z=null;var s="";var c=-1;for(var A=0;A<e.length;A++){c++;var G=e[A].value;var l=e[A].hash;s=s+"_"+l+"_"+G;if(h[s]!=undefined&&h[s]!=null){z=h[s];continue}if(z==null){z={group:G,subItems:new Array(),subGroups:new Array(),level:0};o[k++]=z;var E=C.loadedgroupsByKey[G];if(E!=undefined){z.visibleindex=E.visibleindex;z.uniqueid=E.uniqueid}}else{var t={group:G,subItems:new Array(),subGroups:new Array(),parentItem:z,level:z.level+1};var E=C.loadedgroupsByKey[z.uniqueid+"_"+G];t.visibleindex=E.visibleindex;t.uniqueid=E.uniqueid;z.subGroups[z.subGroups.length++]=t;z=t}h[s]=z}if(z!=null){H.parentItem=z;H.level=z.level+1;z.subItems[z.subItems.length++]=H}d++}F++;K++}var x=function(L,M,q){for(var i=0;i<M.subItems.length;i++){p[q]=a.extend({},M.subItems[i]);q++}return q};var I=function(M){var q=false;for(subGroup in M.subGroups){var L=M.subGroups[subGroup];if(L.subGroups){if(L.subGroups.length>0){var i=I(L);if(i){q=true;return true}}if(L.subItems.length>0){q=true;return true}}}if(M.subItems.length>0){q=true;return true}return q};var b=function(q,M,i){for(subGroup in M.subGroups){var L=M.subGroups[subGroup];if(L.subGroups){if(I(L)){p[i]=L;i++;if(L.subGroups.length>0){i=b(q,L,i)}else{if(L.subItems.length>0){i=x(q,L,i)}}}}}if(M.subItems.length>0){i=x(q,M,i)}return i};var J=0;for(var F=0;F<o.length;F++){var n=o[F];if(I(n)){p[B]=n;B++;B=b(this,n,B)}}}return p}};a.extend(a.jqx._jqxGrid.prototype,{_initgroupsheader:function(){this.groupsheader.css("visibility","hidden");if(this._groupsheader()){this.groupsheader.css("visibility","inherit");var e=this;var c=this.gridlocalization.groupsheaderstring;this.groupsheaderdiv=this.groupsheaderdiv||a('<div style="width: 100%; position: relative;"></div>');this.groupsheaderdiv.height(this.groupsheaderheight);this.groupsheaderdiv.css("top",0);this.groupsheader.append(this.groupsheaderdiv);this.groupheadersbounds=new Array();var d=this.groups.length;this.groupsheaderdiv.children().remove();this.groupsheaderdiv[0].innerHTML="";var b=new Array();if(d>0){a.each(this.groups,function(i){var n=this;var m=e._getColumnText(this);var l=m.label;var k=e._rendergroupcolumn(l,n);k.addClass(e.toThemeProperty("jqx-grid-group-column"));e.groupsheaderdiv.append(k);if(e.closeablegroups){var j=a(k.find(".jqx-icon-close"));if(e.isTouchDevice()&&e.touchmode!==true){e.addHandler(j,"touchstart",function(){e.removegroupat(i);return false})}else{e.addHandler(j,"click",function(){e.removegroupat(i);return false})}}if(e.sortable){e.addHandler(k,"click",function(){var o=e.getcolumn(n);if(o!=null){e._togglesort(o)}return false})}b[b.length]=k;e._handlegroupstocolumnsdragdrop(this,k);if(i<d-1){var g=k.height();var h=a('<div style="float: left; position: relative;"></div>');if(e.rtl){h.css("float","right")}h.width(e.groupindentwidth/3);h.height(1);h.css("top",g/2);h.addClass(e.toThemeProperty("jqx-grid-group-column-line"));e.groupsheaderdiv.append(h)}})}else{var f=a('<div style="position: relative;">'+c+"</div>");this.groupsheaderdiv.append(f);if(this.rtl){f.addClass(this.toThemeProperty("jqx-rtl"))}}this._groupheaders=b;this._updategroupheadersbounds()}},_updategroupheadersbounds:function(){var c=this;var b=this.groupsheaderdiv.children().outerHeight();var d=(this.groupsheader.height()-b)/2;this.groupsheaderdiv.css("top",d);if(!this.rtl){this.groupsheaderdiv.css("left",d);this.groupsheaderdiv.css("right","")}else{this.groupsheaderdiv.css("left","");this.groupsheaderdiv.css("right",d)}if(this.rtl){this._groupheaders.reverse()}a.each(this._groupheaders,function(f){var e=this.coord();c.groupheadersbounds[f]={left:e.left,top:e.top,width:this.outerWidth(),height:this.outerHeight(),index:f}})},addgroup:function(c){if(c){var b=this;if(b.groups!==b.dataview.groups){b.dataview.groups=b.groups}b.groups[b.groups.length]=c;b.refreshgroups();this._raiseEvent(12,{type:"Add",index:b.groups[b.groups.length],groups:b.groups})}},insertgroup:function(d,c){if(d!=undefined&&d!=null&&d>=0&&d<=this.groups.length){if(c){var b=this;if(b.groups!==b.dataview.groups){b.dataview.groups=b.groups}b.groups.splice(d,0,c.toString());b.refreshgroups();this._raiseEvent(12,{type:"Insert",index:d,groups:b.groups})}}},refreshgroups:function(){this._refreshdataview();this._render(true,true,true,false)},_insertaftergroup:function(d,c){var b=this._getGroupIndexByDataField(d);this.insertgroup(b+1,c)},_insertbeforegroup:function(d,c){var b=this._getGroupIndexByDataField(d);this.insertgroup(b,c)},removegroupat:function(c){if(c>=0&&c!=null&&c!=undefined){var b=this;if(b.groups!==b.dataview.groups){b.dataview.groups=b.groups}b.groups.splice(c,1);b.refreshgroups();if(b.virtualmode){b.updatebounddata()}this._raiseEvent(12,{type:"Remove",index:c,groups:b.groups});return true}return false},cleargroups:function(){var b=this;b.groups=[];b.dataview.groups=b.groups;b.refreshgroups();this._raiseEvent(12,{type:"Clear",index:-1,groups:b.groups});return true},removegroup:function(c){if(c==null){return false}var b=this.groups.indexOf(c.toString());return this.removegroupat(b)},getrootgroupscount:function(){var b=this.dataview.loadedrootgroups.length;return b},collapsegroup:function(c){if(c>=0&&c.toString().indexOf(".")===-1){return this._setrootgroupstate(c,false)}var b=c.toString().split(".");var f=null;for(var d=0;d<b.length;d++){var c=parseInt(b[d]);if(d==0){var f=this.dataview.loadedrootgroups[c]}else{var e=f.subGroups[c];if(e){f=e;if(d==b.length-1){this._setgroupstate(f,false,true)}}}}},expandgroup:function(c){if(c>=0&&c.toString().indexOf(".")===-1){return this._setrootgroupstate(c,true)}var b=c.toString().split(".");var f=null;for(var d=0;d<b.length;d++){var c=parseInt(b[d]);if(d==0){var f=this.dataview.loadedrootgroups[c];this._setrootgroupstate(c,true)}else{var e=f.subGroups[c];if(e){f=e;this._setgroupstate(f,true,true)}}}},collapseallgroups:function(b){this._setbatchgroupstate(false,b)},expandallgroups:function(b){this._setbatchgroupstate(true,b)},isgroupexpanded:function(c){var d=this.dataview.loadedrootgroups[c];if(d==null){return null}var b=this.expandedgroups[d.uniqueid].expanded;return b},getgroup:function(e){var j=this.dataview.loadedrootgroups[e];if(j==null){return null}var f=this.expandedgroups[j.uniqueid].expanded;var g=j.group;var b=j.level;var c=new Array();this._getsubgroups(c,j);var i=this;var d={group:g,level:b,expanded:f,subgroups:c};if(j.subItems){var h=new Array();a.each(j.subItems,function(){var k=this.boundindex;h[h.length]=i.getrowdata(k)});if(h.length>0){d.subrows=h}}return d},getrootgroups:function(){var d=this.dataview.loadedrootgroups.length;var c=new Array();for(var b=0;b<d;b++){c[b]=this.getgroup(b)}return c},_getsubgroups:function(c,j){var i=this;for(obj in j.subGroups){var g=j.subGroups[obj];var e=i.expandedgroups[g.uniqueid].expanded;var f=g.group;var b=g.level;c[c.length]={group:f,level:b,expanded:e};if(g.subItems){var h=new Array();a.each(g.subItems,function(){var k=this.boundindex;h[h.length]=i.getrowdata(k)});c[c.length-1].subrows=h}if(g.subGroups){var d=new Array();i._getsubgroups(d,g)}}return c},_setbatchgroupstate:function(b,e){var c=this;for(obj in this.dataview.loadedrootgroups){c._setrootgroupstate(obj,b,false,true)}if(e==false){c._requiresupdate=true;c._renderrows(c.virtualsizeinfo);return true}var d=this.vScrollBar[0].style.visibility;this.rendergridcontent(true,false);if(d!=this.vScrollBar[0].style.visibility||this._hiddencolumns){this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}return true},_setrootgroupstate:function(d,b,f,c){if(d==undefined||d==null||d<0){return false}if(!this.groupable||this.groups.length==0){return false}var j=f!=undefined?f:true;if(d>=0&&d<this.dataview.loadedrootgroups.length){var h=this.dataview.loadedrootgroups[d];if(this.pageable){var g=new Array();for(var e=0;e<this.dataview.rows.length;e++){if(this.dataview.rows[e].group!=null&&this.dataview.rows[e].level===0){g.push(this.dataview.rows[e])}}h=g[d];if(!h){return}}return this._setgroupstate(h,b,j,c)}return false},_togglegroupstate:function(e,f){if(e==null||e==undefined){return false}var c=this.vScrollInstance.value;var d=this.expandedgroups[e.uniqueid];if(d==undefined){d=false}else{d=d.expanded}d=!d;var b=this._setgroupstate(e,d,f);if(c!==0&&this.vScrollBar.css("visibility")!=="hidden"){if(c<=this.vScrollInstance.max){this.vScrollInstance.setPosition(c)}else{this.vScrollInstance.setPosition(this.vScrollInstance.max)}}return b},_setgroupstate:function(f,b,h,c){if(f==null||f==undefined){return false}var e=false;if(this.editable&&this.editcell){this.endcelledit(this.editcell.row,this.editcell.column,false,false)}var d=this.expandedgroups[f.uniqueid];if(d==undefined){d={expanded:false};e=true}if(d.expanded!=b){e=true}if(e){this.expandedgroups[f.uniqueid]={expanded:b,group:f};this._setsubgroupsvisibility(this,f,!b,c);if(h){var g=this.vScrollBar[0].style.visibility;this.rendergridcontent(true,false);if(g!=this.vScrollBar[0].style.visibility||this._hiddencolumns){this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}}if(undefined==this.suspendgroupevents||this.suspendgroupevents==false){if(b){this._raiseEvent(4,{group:f.group,parentgroup:f.parentItem?f.parentItem.group:null,level:f.level,visibleindex:f.visibleindex})}else{this._raiseEvent(5,{group:f.group,parentgroup:f.parentItem?f.parentItem.group:null,level:f.level,visibleindex:f.visibleindex})}}return true}return false},_setgroupitemsvisibility:function(c,e,d){for(var b=0;b<e.subItems.length;b++){c._setrowvisibility(e.subItems[b].visibleindex,d,false)}},_setsubgroupsvisibility:function(c,g,f,d){if(g.parentItem!=null){if(this.hiddens[g.parentItem.visibleindex]){return}}else{if(g.parentItem==null){if(this.hiddens[g.visibleindex]){return}}}for(subGroup in g.subGroups){var e=g.subGroups[subGroup];if(!f){c._setrowvisibility(e.visibleindex,f,false)}var b=!f;if(!d){if(c.expandedgroups[e.uniqueid]==undefined){b=false}else{b=c.expandedgroups[e.uniqueid].expanded}}else{this.expandedgroups[e.uniqueid]={expanded:b,group:e}}if(e.subGroups){if(e.subGroups.length>0){c._setsubgroupsvisibility(c,e,!b||f,d)}else{if(e.subItems.length>0){c._setgroupitemsvisibility(c,e,!b||f)}}}if(f){c._setrowvisibility(e.visibleindex,f,false)}}if(g.subItems&&g.subItems.length>0){c._setgroupitemsvisibility(c,g,f)}},_handlecolumnsdragdrop:function(){var d=this;var g=-1;var c=false;if(!d.groupable){return}var f="mousemove.grouping"+this.element.id;var e="mousedown.grouping"+this.element.id;var h="mouseup.grouping"+this.element.id;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true;f=a.jqx.mobile.getTouchEventName("touchmove")+".grouping"+this.element.id;e=a.jqx.mobile.getTouchEventName("touchstart")+".grouping"+this.element.id;h=a.jqx.mobile.getTouchEventName("touchend")+".grouping"+this.element.id}this.removeHandler(a(document),f);this.addHandler(a(document),f,function(j){if(!d.showgroupsheader){return true}if(d.dragcolumn!=null){var l=parseInt(j.pageX);var u=parseInt(j.pageY);if(b){var r=d.getTouches(j);var p=r[0];l=parseInt(p.pageX);u=parseInt(p.pageY)}var n=d.host.coord();var v=parseInt(n.left);var w=parseInt(n.top);if(d.dragmousedownoffset==undefined||d.dragmousedownoffset==null){d.dragmousedownoffset={left:0,top:0}}var t=parseInt(l)-parseInt(d.dragmousedownoffset.left);var i=parseInt(u)-parseInt(d.dragmousedownoffset.top);d.dragcolumn.css({left:t+"px",top:i+"px"});c=false;if(l>=v&&l<=v+d.host.width()){if(u>=w&&u<=w+d.host.height()){c=true}}g=-1;if(c){d.dragcolumnicon.removeClass(d.toThemeProperty("jqx-grid-dragcancel-icon"));d.dragcolumnicon.addClass(d.toThemeProperty("jqx-grid-drag-icon"));var s=d.groupsheader.coord();var m=s.top+d.groupsheader.height();var q=a.data(d.dragcolumn[0],"datarecord");if(q){var k=d.groups.indexOf(q.toString())}else{var k=-1}var o=(k==-1)||(d.groups.length>1&&k>-1);if(d.dropline!=null){if(u>=s.top&&u<=m){if(o){g=d._handlegroupdroplines(l)}}else{d.dropline.fadeOut("slow")}}}else{if(d.dropline!=null){d.dropline.fadeOut("slow")}d.dragcolumnicon.removeClass(d.toThemeProperty("jqx-grid-drag-icon"));d.dragcolumnicon.addClass(d.toThemeProperty("jqx-grid-dragcancel-icon"))}if(b){j.preventDefault();j.stopPropagation();return false}}});this.removeHandler(a(document),h);this.addHandler(a(document),h,function(i){if(!d.showgroupsheader){return true}d.__drag=false;a(document.body).removeClass("jqx-disableselect");var m=parseInt(i.pageX);var s=parseInt(i.pageY);if(b){var p=d.getTouches(i);var o=p[0];m=parseInt(o.pageX);s=parseInt(o.pageY)}var n=d.host.coord();var t=parseInt(n.left);var u=parseInt(n.top);var k=d.groupsheader.height();if(d.showtoolbar){u+=d.toolbarheight}d.dragstarted=false;d.dragmousedown=null;if(d.dragcolumn!=null){var l=a.data(d.dragcolumn[0],"datarecord");d.dragcolumn.remove();d.dragcolumn=null;if(l!=null){if(!d.getcolumn(l).groupable){if(d.dropline!=null){d.dropline.remove();d.dropline=null}return}if(c){if(g!=-1){var q=g.index;var r=d.groups[q];var j=d._getGroupIndexByDataField(l);if(j!=q){if(j!=undefined&&j>=0){d.groups.splice(j,1)}if(g.position=="before"){if(!d.rtl){d._insertbeforegroup(r,l)}else{d._insertaftergroup(r,l)}}else{if(!d.rtl){d._insertaftergroup(r,l)}else{d._insertbeforegroup(r,l)}}}}else{if(d.groups.length==0){if(s>u&&s<=u+k){d.addgroup(l)}}else{if(s>u+k){var j=d._getGroupIndexByDataField(l);d.removegroupat(j)}}}}if(d.dropline!=null){d.dropline.remove();d.dropline=null}}}})},_getGroupIndexByDataField:function(b){for(var c=0;c<this.groups.length;c++){if(this.groups[c]==b){return c}}return -1},_isColumnInGroups:function(c){for(var b=0;b<this.groups.length;b++){if(this.groups[b]==c){return true}}return false},_handlegroupdroplines:function(d){var b=this;var c=-1;a.each(b.groupheadersbounds,function(e){if(d<=this.left+this.width/2){var f=this.left-3;if(e>0){f=this.left-1-b.groupindentwidth/6}b.dropline.css("left",f);b.dropline.css("top",this.top);b.dropline.height(this.height);b.dropline.fadeIn("slow");c={index:e,position:"before"};if(b.rtl){c={index:b.groupheadersbounds.length-1-e,position:"before"}}return false}else{if(d>=this.left+this.width/2){b.dropline.css("left",1+this.left+this.width);b.dropline.css("top",this.top);b.dropline.height(this.height);b.dropline.fadeIn("slow");c={index:e,position:"after"};if(b.rtl){c={index:b.groupheadersbounds.length-1-e,position:"after"}}}}});return c},_handlegroupstocolumnsdragdrop:function(c,e){this.dragmousedown=null;this.dragmousedownoffset=null;this.dragstarted=false;this.dragcolumn=null;var f=this;var d;var h="mousedown";var g="mousemove";var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true;h=a.jqx.mobile.getTouchEventName("touchstart");g=a.jqx.mobile.getTouchEventName("touchmove")}this.addHandler(e,"dragstart",function(i){return false});this.addHandler(e,h,function(i){if(!f.showgroupsheader){return true}var l=i.pageX;var k=i.pageY;f.__drag=true;f.dragmousedown={left:l,top:k};if(b){var j=f.getTouches(i);var n=j[0];l=n.pageX;k=n.pageY;f.dragmousedown={left:l,top:k};if(i.preventDefault){i.preventDefault()}}var m=a(i.target).coord();f.dragmousedownoffset={left:parseInt(l)-parseInt(m.left),top:parseInt(k-m.top)}});this.addHandler(e,g,function(i){if(!f.showgroupsheader){return true}if(f.dragmousedown){d={left:i.pageX,top:i.pageY};if(b){var k=f.getTouches(i);var m=k[0];d={left:m.pageX,top:m.pageY}}if(!f.dragstarted&&f.dragcolumn==null){var j=Math.abs(d.left-f.dragmousedown.left);var l=Math.abs(d.top-f.dragmousedown.top);if(j>3||l>3){f._createdragcolumn(e,d,true);a(document.body).addClass("jqx-disableselect");a.data(f.dragcolumn[0],"datarecord",c);if(i.preventDefault){i.preventDefault()}}}}})},_createdragcolumn:function(c,e,g){var h=this;var f=e;h.dragcolumn=a("<div></div>");var j=c.clone();h.dragcolumn.css("z-index",999999);j.css("border-width","1px");j.css("opacity","0.4");var i=a(j.find("."+h.toThemeProperty("jqx-grid-column-menubutton")));if(i.length>0){i.css("display","none")}var b=a(j.find(".jqx-icon-close"));if(b.length>0){b.css("display","none")}h.dragcolumnicon=a('<div style="z-index: 9999; position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -7px;"></div>');h.dragcolumnicon.addClass(h.toThemeProperty("jqx-grid-drag-icon"));h.dragcolumn.css("float","left");h.dragcolumn.css("position","absolute");var d=h.host.coord();j.width(c.width()+16);h.dragcolumn.append(j);h.dragcolumn.height(c.height());h.dragcolumn.width(j.width());h.dragcolumn.append(h.dragcolumnicon);a(document.body).append(h.dragcolumn);j.css("margin-left",0);j.css("left",0);j.css("top",0);h.dragcolumn.css("left",f.left+h.dragmousedown.left);h.dragcolumn.css("top",f.top+h.dragmousedown.top);if(g!=undefined&&g){h.dropline=a('<div style="display: none; position: absolute;"></div>');h.dropline.width(2);h.dropline.addClass(h.toThemeProperty("jqx-grid-group-drag-line"));a(document.body).append(h.dropline)}},iscolumngroupable:function(b){return this._getcolumnproperty(b,"groupable")},_handlecolumnstogroupsdragdrop:function(c,f){this.dragmousedown=null;this.dragmousedownoffset=null;this.dragstarted=false;this.dragcolumn=null;var g=this;var e;var b=false;if(this.isTouchDevice()&&this.touchmode!==true){b=true}var d="mousedown.drag";var e="mousemove.drag";if(b){d=a.jqx.mobile.getTouchEventName("touchstart")+".drag";e=a.jqx.mobile.getTouchEventName("touchmove")+".drag"}else{this.addHandler(f,"dragstart",function(h){return false})}this.addHandler(f,d,function(j){if(!g.showgroupsheader){return true}g.__drag=true;if(g._isColumnInGroups(c.displayfield)){if(f.css("cursor")!="col-resize"){return true}else{return true}}if(false==c.groupable){return true}var i=j.pageX;var h=j.pageY;if(b){var k=g.getTouches(j);var m=k[0];i=m.pageX;h=m.pageY}g.dragmousedown={left:i,top:h};if(b){if(j.preventDefault){j.preventDefault()}}var l=a(j.target).coord();g.dragmousedownoffset={left:parseInt(i)-parseInt(l.left),top:parseInt(h-l.top)}});this.addHandler(f,e,function(j){if(!g.showgroupsheader){return true}if(g._isColumnInGroups(c.displayfield)){if(f.css("cursor")!="col-resize"){return true}else{return true}}if(g.dragmousedown){var i=j.pageX;var h=j.pageY;if(b){var l=g.getTouches(j);var n=l[0];i=n.pageX;h=n.pageY}e={left:i,top:h};if(!g.dragstarted&&g.dragcolumn==null){var k=Math.abs(e.left-g.dragmousedown.left);var m=Math.abs(e.top-g.dragmousedown.top);if(k>3||m>3){g._createdragcolumn(f,e,true);a.data(g.dragcolumn[0],"datarecord",c.displayfield);if(j.preventDefault){j.preventDefault()}}}}})},_rendergroupcolumn:function(g,h){var e=a('<div style="float: left; position: relative;"></div>');if(this.rtl){e.css("float","right")}if(this.groupcolumnrenderer!=null){e[0].innerHTML=this.groupcolumnrenderer(g);e.addClass(this.toThemeProperty("jqx-grid-group-column"));e.addClass(this.toThemeProperty("jqx-fill-state-normal"))}if(this.closeablegroups){if(e[0].innerHTML==""){e[0].innerHTML='<a style="float: left;" href="#">'+g+"</a>"}if(this.rtl){e[0].innerHTML='<a style="float: right;" href="#">'+g+"</a>"}var d=!this.rtl?"right":"left";var c='<div style="float: '+d+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){c='<div style="float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -18px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>'}if(this.rtl){var c='<div style="float: '+d+'; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>';if(a.jqx.browser.msie&&a.jqx.browser.version<8){c='<div style="float: left; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-icon-close")+'"></div></div>'}}e[0].innerHTML+=c}else{if(e[0].innerHTML==""){e[0].innerHTML='<a href="#">'+g+"</a>"}}if(this.sortable){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>');if(this.closeablegroups){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -32px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 100%; top: 50%; margin-left: -32px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>')}if(this.rtl){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 0px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 0px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>');if(this.closeablegroups){var f=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortascbutton")+'"></div></div>');var b=a('<div style="float: right; min-height: 16px; min-width: 18px;"><div style="position: absolute; left: 0px; top: 50%; margin-left: 16px; margin-top: -8px; float: none; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-grid-column-sortdescbutton")+'"></div></div>')}}f.css("display","none");b.css("display","none");if(a.jqx.browser.msie&&a.jqx.browser.version<8){f.css("float","left");b.css("float","left")}e.append(f);e.append(b);a.data(document.body,"groupsortelements"+h,{sortasc:f,sortdesc:b})}e.addClass(this.toThemeProperty("jqx-fill-state-normal"));e.addClass(this.toThemeProperty("jqx-grid-group-column"));return e},_rendergroup:function(o,w,b,u,j,A,t){var F=w;var c=w.cells[b.level];if(this.rtl){c=w.cells[w.cells.length-1-b.level]}var E=this._findgroupstate(b.uniqueid);if(b.bounddata.subGroups.length>0||b.bounddata.subItems.length>0){var i=this.rtl?"-rtl":"";var B=this.toThemeProperty("jqx-icon-arrow-right");if(i){B=this.toThemeProperty("jqx-icon-arrow-left")}if(E){c.className+=" "+this.toThemeProperty("jqx-grid-group-expand"+i)+" "+this.toThemeProperty("jqx-icon-arrow-down")}else{c.className+=" "+this.toThemeProperty("jqx-grid-group-collapse"+i)+" "+B}}var s=this._getColumnText(this.groups[b.level]).label;var d=this.groupindentwidth;var q=this.rowdetails&&this.showrowdetailscolumn?(1+o)*d:(o)*d;var x=t-q;var g=b.level+1;if(this.rtl){g=0}var l=F.cells[g];var z=2;while(l!=undefined&&l.style.display=="none"&&z<F.cells.length-1){l=F.cells[g+z-1];z++}var f=a(l);if(!l){return}l.style.width=parseInt(x)+"px";if(l.className.indexOf("jqx-grid-cell-filter")!=-1){f.removeClass(this.toThemeProperty("jqx-grid-cell-filter"))}if(l.className.indexOf("jqx-grid-cell-sort")!=-1){f.removeClass(this.toThemeProperty("jqx-grid-cell-sort"))}if(l.className.indexOf("jqx-grid-cell-pinned")!=-1){f.removeClass(this.toThemeProperty("jqx-grid-cell-pinned"))}if(this.groupsrenderer!=null){var h={group:b.group,level:b.level,parent:b.bounddata.parentItem,subGroups:b.bounddata.subGroups,subItems:b.bounddata.subItems,groupcolumn:this._getColumnText(this.groups[b.level]).column};var p=this.groupsrenderer(s+": "+b.group,b.group,E,h);if(p){l.innerHTML=p}else{var k=b.bounddata.subItems.length>0?b.bounddata.subItems.length:b.bounddata.subGroups.length;l.innerHTML='<div class="'+this.toThemeProperty("jqx-grid-groups-row")+'" style="position: absolute;"><span>'+s+': </span><span class="'+this.toThemeProperty("jqx-grid-groups-row-details")+'">'+b.group+" ("+k+")</span></div>"}}else{var e=this._getcolumnbydatafield(this.groups[b.level]);var y=b.group;if(e!=null){if(e.cellsformat){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(y)){y=a.jqx.dataFormat.formatdate(y,e.cellsformat,this.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(y)){y=a.jqx.dataFormat.formatnumber(y,e.cellsformat,this.gridlocalization)}}}}var k=b.bounddata.subItems.length>0?b.bounddata.subItems.length:b.bounddata.subGroups.length;l.innerHTML='<div class="'+this.toThemeProperty("jqx-grid-groups-row")+'" style="position: absolute;"><span>'+s+': </span><span class="'+this.toThemeProperty("jqx-grid-groups-row-details")+'">'+y+" ("+k+")</span></div>"}else{throw new Error("jqxGrid: Unable to find '"+this.groups[b.level]+"' group in the Grid's columns collection.")}}if(this.rtl){if(!e){e=this._getcolumnbydatafield(this.groups[b.level])}var r=this.hScrollBar.css("visibility")=="hidden"?0:this.hScrollInstance.max-this.hScrollInstance.value;var C=this.vScrollBar.css("visibility")=="hidden"?0:this.scrollbarsize+6;var q=this.rowdetails&&this.showrowdetailscolumn?(2+b.level)*d:(1+b.level)*d;l.style.width=t+parseInt(r)-q-C+"px";f.addClass(this.toThemeProperty("jqx-rtl"));var v=a(w.cells[w.cells.length-1]).css("z-index");f.css("z-index",v);var D=f.find("div");var x=D.width();D.css("left","100%");var n=this.columns.records[w.cells.length-2-b.level]!=null?this.columns.records[w.cells.length-2-b.level].pinned:false;if(this.table.width()<t){t=this.table.width();if(this.vScrollBar.css("visibility")!="hidden"){t+=this.vScrollBar.outerWidth()}}if(e.pinned||n){if(this.rowdetails&&this.showrowdetailscolumn){t+=30}D.css("margin-left",-x);l.style.width=t+r-q-C+"px"}else{var r=this.hScrollBar.css("visibility")=="hidden"?0:this.hScrollInstance.max;l.style.width=t+r-q-C+"px";var x=D.width();D.css("margin-left",-x)}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.js
new file mode 100644 (file)
index 0000000..0b81f6e
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(b){b.jqx.jqxWidget("jqxGrid","",{});b.extend(b.jqx._jqxGrid.prototype,{defineInstance:function(){var d={disabled:false,width:600,height:400,pagerheight:28,groupsheaderheight:34,pagesize:10,pagesizeoptions:["5","10","20"],rowsheight:25,columnsheight:25,filterrowheight:31,groupindentwidth:30,rowdetails:false,enablerowdetailsindent:true,enablemousewheel:true,initrowdetails:null,layoutrowdetails:null,editable:false,editmode:"selectedcell",pageable:false,pagermode:"default",pagerbuttonscount:5,groupable:false,sortable:false,filterable:false,filtermode:"default",autoshowfiltericon:true,showfiltercolumnbackground:true,showpinnedcolumnbackground:true,showsortcolumnbackground:true,altrows:false,altstart:1,altstep:1,showrowdetailscolumn:true,showtoolbar:false,toolbarheight:34,showstatusbar:false,statusbarheight:34,enableellipsis:true,groups:[],groupsrenderer:null,groupcolumnrenderer:null,groupsexpandedbydefault:false,pagerrenderer:null,touchmode:"auto",columns:[],selectedrowindex:-1,selectedrowindexes:new Array(),selectedcells:new Array(),autobind:true,selectedcell:null,tableZIndex:799,headerZIndex:299,updatefilterconditions:null,showaggregates:false,showfilterrow:false,showeverpresentrow:false,everpresentrowposition:"top",everpresentrowactions:"add reset",everpresentrowactionsmode:"buttons",everpresentrowheight:30,autorowheight:false,autokoupdates:true,handlekeyboardnavigation:null,showsortmenuitems:true,showfiltermenuitems:true,showgroupmenuitems:true,enablebrowserselection:false,enablekeyboarddelete:true,clipboard:true,clipboardbegin:null,clipboardend:null,copytoclipboardwithheaders:false,copytoclipboardhiddencolumns:false,ready:null,updatefilterpanel:null,autogeneratecolumns:false,rowdetailstemplate:null,scrollfeedback:null,rendertoolbar:null,renderstatusbar:null,rendered:null,multipleselectionbegins:null,columngroups:null,cellhover:null,source:{beforeprocessing:null,beforesend:null,loaderror:null,localdata:null,data:null,datatype:"array",datafields:[],url:"",root:"",record:"",id:"",totalrecords:0,recordstartindex:0,recordendindex:0,loadallrecords:true,sortcolumn:null,sortdirection:null,sort:null,filter:null,sortcomparer:null},dataview:null,updatedelay:null,autoheight:false,autowidth:false,showheader:true,showgroupsheader:true,closeablegroups:true,scrollbarsize:b.jqx.utilities.scrollBarSize,touchscrollbarsize:b.jqx.utilities.touchScrollBarSize,scrollbarautoshow:b.jqx.utilities.scrollBarAutoShow,virtualmode:false,sort:null,columnsmenu:true,columnsresize:false,columnsautoresize:true,columnsreorder:false,columnsmenuwidth:15,autoshowcolumnsmenubutton:true,popupwidth:"auto",popupheight:"auto",columnmenuopening:null,columnmenuclosing:null,sorttogglestates:2,rendergridrows:null,enableanimations:true,enablecolumnsvirtualization:true,enabletooltips:false,selectionmode:"singlerow",enablehover:true,loadingerrormessage:"The data is still loading. When the data binding is completed, the Grid raises the 'bindingcomplete' event. Call this function in the 'bindingcomplete' event handler.",verticalscrollbarstep:25,verticalscrollbarlargestep:400,horizontalscrollbarstep:10,horizontalscrollbarlargestep:50,keyboardnavigation:true,touchModeStyle:"auto",autoshowloadelement:true,showdefaultloadelement:true,showemptyrow:true,autosavestate:false,autoloadstate:false,_updating:false,_pagescache:new Array(),_pageviews:new Array(),_cellscache:new Array(),_rowdetailscache:new Array(),_rowdetailselementscache:new Array(),_requiresupdate:false,_hasOpenedMenu:false,scrollmode:"physical",deferreddatafields:null,localization:null,rtl:false,menuitemsarray:[],events:["initialized","rowClick","rowSelect","rowUnselect","groupExpand","groupCollapse","sort","columnClick","cellClick","pageChanged","pageSizeChanged","bindingComplete","groupsChanged","filter","columnResized","cellSelect","cellUnselect","cellBeginEdit","cellEndEdit","cellValueChanged","rowExpand","rowCollapse","rowDoubleClick","cellDoubleClick","columnReordered","pageChanging"]};b.extend(true,this,d);return d},createInstance:function(i){this.that=this;var h=this;h.pagesize=parseInt(h.pagesize);h.toolbarheight=parseInt(h.toolbarheight);h.columnsheight=parseInt(h.columnsheight);h.filterrowheight=parseInt(h.filterrowheight);h.statusbarheight=parseInt(h.statusbarheight);h.groupsheaderheight=parseInt(h.groupsheaderheight);h.savedArgs=i&&i.length>0?i[0]:null;var g="<div class='jqx-clear jqx-border-reset jqx-overflow-hidden jqx-max-size jqx-position-relative'><div tabindex='1' class='jqx-clear jqx-max-size jqx-position-relative jqx-overflow-hidden jqx-background-reset' id='wrapper"+h.element.id+"'><div class='jqx-clear jqx-position-absolute' id='toolbar' style='visibility: hidden;'></div><div class='jqx-clear jqx-position-absolute' id='groupsheader' style='visibility: hidden;'></div><div class='jqx-clear jqx-overflow-hidden jqx-position-absolute jqx-border-reset jqx-background-reset' id='content"+h.element.id+"'></div><div class='jqx-clear jqx-position-absolute' id='verticalScrollBar"+h.element.id+"'></div><div class='jqx-clear jqx-position-absolute' id='horizontalScrollBar"+h.element.id+"'></div><div class='jqx-clear jqx-position-absolute jqx-border-reset' id='bottomRight'></div><div class='jqx-clear jqx-position-absolute' id='addrow'></div><div class='jqx-clear jqx-position-absolute' id='statusbar'></div><div class='jqx-clear jqx-position-absolute' id='pager' style='z-index: 20;'></div></div></div>";h.element.innerHTML="";if(b.jqx.utilities.scrollBarSize!=15){h.scrollbarsize=b.jqx.utilities.scrollBarSize}if(h.source){if(!h.source.dataBind){if(!b.jqx.dataAdapter){throw new Error("jqxGrid: Missing reference to jqxdata.js")}h.source=new b.jqx.dataAdapter(h.source)}var d=h.source._source.datafields;if(d&&d.length>0){h.editmode=h.editmode.toLowerCase();h.selectionmode=h.selectionmode.toLowerCase()}}h.host.attr("role","grid");h.host.attr("align","left");h.element.innerHTML=g;h.host.addClass(h.toTP("jqx-grid"));h.host.addClass(h.toTP("jqx-reset"));h.host.addClass(h.toTP("jqx-rc-all"));h.host.addClass(h.toTP("jqx-widget"));h.host.addClass(h.toTP("jqx-widget-content"));h.wrapper=h.host.find("#wrapper"+h.element.id);h.content=h.host.find("#content"+h.element.id);h.content.addClass(h.toTP("jqx-reset"));var k=h.host.find("#verticalScrollBar"+h.element.id);var o=h.host.find("#horizontalScrollBar"+h.element.id);h.bottomRight=h.host.find("#bottomRight").addClass(h.toTP("jqx-grid-bottomright")).addClass(h.toTP("jqx-scrollbar-state-normal"));if(!k.jqxScrollBar){throw new Error("jqxGrid: Missing reference to jqxscrollbar.js");return}h.editors=new Array();h.vScrollBar=k.jqxScrollBar({vertical:true,rtl:h.rtl,touchMode:h.touchmode,step:h.verticalscrollbarstep,largestep:h.verticalscrollbarlargestep,theme:h.theme,_triggervaluechanged:false});h.hScrollBar=o.jqxScrollBar({vertical:false,rtl:h.rtl,touchMode:h.touchmode,step:h.horizontalscrollbarstep,largestep:h.horizontalscrollbarlargestep,theme:h.theme,_triggervaluechanged:false});h.addnewrow=h.host.find("#addrow");h.addnewrow[0].id="addrow"+h.element.id;h.addnewrow.addClass(h.toTP("jqx-widget-header"));h.pager=h.host.find("#pager");h.pager[0].id="pager"+h.element.id;h.toolbar=h.host.find("#toolbar");h.toolbar[0].id="toolbar"+h.element.id;h.toolbar.addClass(h.toTP("jqx-grid-toolbar"));h.toolbar.addClass(h.toTP("jqx-widget-header"));h.statusbar=h.host.find("#statusbar");h.statusbar[0].id="statusbar"+h.element.id;h.statusbar.addClass(h.toTP("jqx-grid-statusbar"));h.statusbar.addClass(h.toTP("jqx-widget-header"));h.pager.addClass(h.toTP("jqx-grid-pager"));h.pager.addClass(h.toTP("jqx-widget-header"));h.groupsheader=h.host.find("#groupsheader");h.groupsheader.addClass(h.toTP("jqx-grid-groups-header"));h.groupsheader.addClass(h.toTP("jqx-widget-header"));h.groupsheader[0].id="groupsheader"+h.element.id;h.vScrollBar.css("visibility","hidden");h.hScrollBar.css("visibility","hidden");h.vScrollInstance=b.data(h.vScrollBar[0],"jqxScrollBar").instance;h.hScrollInstance=b.data(h.hScrollBar[0],"jqxScrollBar").instance;h.gridtable=null;h.isNestedGrid=h.host.parent()?h.host.parent().css("z-index")==9999:false;h.touchdevice=h.isTouchDevice();if(h.localizestrings){h.localizestrings();if(h.localization!=null){h.localizestrings(h.localization,false)}}if(h.rowdetailstemplate){if(undefined==h.rowdetailstemplate.rowdetails){h.rowdetailstemplate.rowdetails="<div></div>"}if(undefined==h.rowdetailstemplate.rowdetailsheight){h.rowdetailstemplate.rowdetailsheight=200}if(undefined==h.rowdetailstemplate.rowdetailshidden){h.rowdetailstemplate.rowdetailshidden=true}}if(h.showfilterrow&&!h.filterable){throw new Error('jqxGrid: "showfilterrow" requires setting the "filterable" property to true!');h.host.remove();return}if(h.autorowheight&&!h.autoheight&&!h.pageable){throw new Error('jqxGrid: "autorowheight" requires setting the "autoheight" or "pageable" property to true!');h.host.remove();return}if(h.virtualmode&&h.rendergridrows==null){throw new Error('jqxGrid: "virtualmode" requires setting the "rendergridrows"!');h.host.remove();return}if(h.virtualmode&&!h.pageable&&h.groupable){throw new Error('jqxGrid: "grouping" in "virtualmode" without paging is not supported!');h.host.remove();return}if(h._testmodules()){return}h._builddataloadelement();h._cachedcolumns=h.columns;if(h.columns&&h.columns.length>299){h.headerZIndex=h.columns.length+100}if(h.rowsheight!=25){h._measureElement("cell")}if(h.columnsheight!=25||h.columngroups){h._measureElement("column")}if(h.source){var d=h.source.datafields;if(d==null&&h.source._source){d=h.source._source.datafields}if(d){for(var e=0;e<h.columns.length;e++){var f=h.columns[e];if(f&&f.cellsformat&&f.cellsformat.length>2){for(var n=0;n<d.length;n++){if(d[n].name==f.datafield&&!d[n].format){d[n].format=f.cellsformat;break}}}}}}h.databind(h.source);if(h.showtoolbar){h.toolbar.css("visibility","inherit")}if(h.showstatusbar){h.statusbar.css("visibility","inherit")}h._arrange();if(h.pageable&&h._initpager){h._initpager()}h.tableheight=null;var j=h.that;var l=function(){if(j.content){j.content[0].scrollTop=0;j.content[0].scrollLeft=0}if(j.gridcontent){j.gridcontent[0].scrollLeft=0;j.gridcontent[0].scrollTop=0}};h.addHandler(h.content,"mousedown",function(){l()});h.addHandler(h.content,"scroll",function(m){l();return false});if(!h.showfilterrow){if(!h.showstatusbar&&!h.showtoolbar){h.host.addClass("jqx-disableselect")}h.content.addClass("jqx-disableselect")}if(h.enablebrowserselection){h.content.removeClass("jqx-disableselect");h.host.removeClass("jqx-disableselect")}h._resizeWindow();if(h.disabled){h.host.addClass(h.toThemeProperty("jqx-fill-state-disabled"))}h.hasTransform=b.jqx.utilities.hasTransform(h.host);if(h.scrollmode=="logical"){h.vScrollInstance.thumbStep=h.rowsheight;h.vScrollInstance.step=h.rowsheight}if(!b.jqx.isHidden(h.host)){if(h.filterable||h.groupable||h.sortable){h._initmenu()}}},_resizeWindow:function(){var e=this.that;if((this.width!=null&&this.width.toString().indexOf("%")!=-1)||(this.height!=null&&this.height.toString().indexOf("%")!=-1)){this._updatesizeonwindowresize=true;b.jqx.utilities.resize(this.host,function(j){var i=b(window).width();var g=b(window).height();var h=e.host.width();var k=e.host.height();if(e.autoheight){e._lastHostWidth=g}if(e._lastHostWidth!=h||e._lastHostHeight!=k){if(e.touchdevice&&e.editcell&&j!=="orientationchange"){return}e._updatesize(e._lastHostWidth!=h,e._lastHostHeight!=k)}e._lastWidth=i;e._lastHeight=g;e._lastHostWidth=h;e._lastHostHeight=k});var d=e.host.width();var f=e.host.height();e._lastHostWidth=d;e._lastHostHeight=f}},_builddataloadelement:function(){if(this.dataloadelement){this.dataloadelement.remove()}this.dataloadelement=b('<div style="overflow: hidden; position: absolute;"></div>');if(this.showdefaultloadelement){var d=b('<div style="z-index: 99999; margin-left: -66px; left: 50%; top: 50%; margin-top: -24px; position: relative; width: 100px; height: 33px; padding: 5px; font-family: verdana; font-size: 12px; color: #767676; border-color: #898989; border-width: 1px; border-style: solid; background: #f6f6f6; border-collapse: collapse;"><div style="float: left;"><div style="float: left; overflow: hidden; width: 32px; height: 32px;" class="jqx-grid-load"/><span style="margin-top: 10px; float: left; display: block; margin-left: 5px;" >'+this.gridlocalization.loadtext+"</span></div></div>");d.addClass(this.toTP("jqx-rc-all"));this.dataloadelement.addClass(this.toTP("jqx-rc-all"));d.addClass(this.toTP("jqx-fill-state-normal"));this.dataloadelement.append(d)}else{this.dataloadelement.addClass(this.toTP("jqx-grid-load"))}this.dataloadelement.width(this.width);this.dataloadelement.height(this.height);this.host.prepend(this.dataloadelement)},_measureElement:function(e){var d=b("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");d.addClass(this.toTP("jqx-widget"));b(document.body).append(d);if(e=="cell"){this._cellheight=d.height()}else{this._columnheight=d.height()}d.remove()},_measureMenuElement:function(){var e=b("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");e.addClass(this.toTP("jqx-widget"));e.addClass(this.toTP("jqx-menu"));e.addClass(this.toTP("jqx-menu-item-top"));e.addClass(this.toTP("jqx-fill-state-normal"));b(document.body).append(e);var d=e.outerHeight();e.remove();return d},_measureElementWidth:function(f){var e=b("<span style='visibility: hidden; white-space: nowrap;'>"+f+"</span>");e.addClass(this.toTP("jqx-widget"));e.addClass(this.toTP("jqx-grid"));e.addClass(this.toTP("jqx-grid-column-header"));e.addClass(this.toTP("jqx-widget-header"));b(document.body).append(e);var d=e.outerWidth()+20;e.remove();return d},_getBodyOffset:function(){var e=0;var d=0;if(b("body").css("border-top-width")!="0px"){e=parseInt(b("body").css("border-top-width"));if(isNaN(e)){e=0}}if(b("body").css("border-left-width")!="0px"){d=parseInt(b("body").css("border-left-width"));if(isNaN(d)){d=0}}return{left:d,top:e}},_testmodules:function(){var k="";var h=this.that;var d=function(){if(k.length!=""){k+=","}};if(this.columnsmenu&&!this.host.jqxMenu&&(this.sortable||this.groupable||this.filterable)){d();k+=" jqxmenu.js"}if(!this.host.jqxScrollBar){d();k+=" jqxscrollbar.js"}if(!this.host.jqxButton){d();k+=" jqxbuttons.js"}if(!b.jqx.dataAdapter){d();k+=" jqxdata.js"}if(this.pageable&&!this.gotopage){d();k+="jqxgrid.pager.js"}if(this.filterable&&!this.applyfilters){d();k+=" jqxgrid.filter.js"}if(this.groupable&&!this._initgroupsheader){d();k+=" jqxgrid.grouping.js"}if(this.columnsresize&&!this.autoresizecolumns){d();k+=" jqxgrid.columnsresize.js"}if(this.columnsreorder&&!this.setcolumnindex){d();k+=" jqxgrid.columnsreorder.js"}if(this.sortable&&!this.sortby){d();k+=" jqxgrid.sort.js"}if(this.editable&&!this.begincelledit){d();k+=" jqxgrid.edit.js"}if(this.showaggregates&&!this.getcolumnaggregateddata){d();k+=" jqxgrid.aggregates.js"}if(this.keyboardnavigation&&!this.selectrow){d();k+=" jqxgrid.selection.js"}if(k!=""||this.editable||this.filterable||this.pageable){var f=[];var j=function(i){switch(i){case"checkbox":if(!h.host.jqxCheckBox&&!f.checkbox){f.checkbox=true;d();k+=" jqxcheckbox.js"}break;case"numberinput":if(!h.host.jqxNumberInput&&!f.numberinput){f.numberinput=true;d();k+=" jqxnumberinput.js"}break;case"datetimeinput":if(!h.host.jqxDateTimeInput&&!f.datetimeinput){d();f.datetimeinput=true;k+=" jqxdatetimeinput.js(requires: jqxcalendar.js)"}else{if(!h.host.jqxCalendar&&!f.calendar){d();k+=" jqxcalendar.js"}}break;case"combobox":if(!h.host.jqxComboBox&&!f.combobox){d();f.combobox=true;k+=" jqxcombobox.js(requires: jqxlistbox.js)"}else{if(!h.host.jqxListBox&&!f.listbox){d();f.listbox=true;k+=" jqxlistbox.js"}}break;case"dropdownlist":if(!h.host.jqxDropDownList&&!f.dropdownlist){d();f.dropdownlist=true;k+=" jqxdropdownlist.js(requires: jqxlistbox.js)"}else{if(!h.host.jqxListBox&&!f.listbox){d();f.listbox=true;k+=" jqxlistbox.js"}}break}};if(this.filterable||this.pageable){j("dropdownlist")}for(var e=0;e<this.columns.length;e++){if(this.columns[e]==undefined){continue}var g=this.columns[e].columntype;j(g);if(this.filterable&&this.showfilterrow){var g=this.columns[e].filtertype;if(g=="checkedlist"||g=="bool"){j("checkbox")}if(g=="date"){j("datetimeinput")}}}if(k!=""){throw new Error("jqxGrid: Missing references to the following module(s): "+k);this.host.remove();return true}}return false},focus:function(){try{this.wrapper.focus();var e=this.that;setTimeout(function(){e.wrapper.focus()},25);this.focused=true}catch(d){}},hiddenParent:function(){return b.jqx.isHidden(this.host)},resize:function(e,d){this.width=e;this.height=d;this._updatesize(true,true)},_updatesize:function(i,h){if(this._loading){return}var f=this.that;f._newmax=null;var g=f.host.width();var e=f.host.height();if(!f._oldWidth){f._oldWidth=g}if(!f._oldHeight){f._oldHeight=e}if(f._resizeTimer){clearTimeout(f._resizeTimer)}var d=5;f._resizeTimer=setTimeout(function(){f.resizingGrid=true;if(b.jqx.isHidden(f.host)){return}if(f.editcell){f.endcelledit(f.editcell.row,f.editcell.column,true,true);f._oldselectedcell=null}if(j!=f._oldHeight||h==true){var k=f.groupable&&f.groups.length>0;var p=f.vScrollBar.css("visibility");if(!f.autoheight){if(f.virtualmode){f._pageviews=new Array()}if(!k&&!f.rowdetails&&!f.pageable){f._arrange();f.virtualsizeinfo=f._calculatevirtualheight();var j=Math.round(f.host.height())+2*f.rowsheight;if(parseInt(j)>=parseInt(f._oldHeight)){f.prerenderrequired=true}f._renderrows(f.virtualsizeinfo);if(f.rtl){f._updatecolumnwidths();if(f.table){f.table.width(f.columnsheader.width())}f._updatecellwidths()}}else{f._arrange();f.prerenderrequired=true;var j=Math.round(f.host.height())+2*f.rowsheight;realheight=f._gettableheight();var r=Math.round(j/f.rowsheight);var m=Math.max(f.dataview.totalrows,f.dataview.totalrecords);if(f.pageable){m=f.pagesize;if(f.pagesize>Math.max(f.dataview.totalrows,f.dataview.totalrecords)&&f.autoheight){m=Math.max(f.dataview.totalrows,f.dataview.totalrecords)}else{if(!f.autoheight){if(f.dataview.totalrows<f.pagesize){m=Math.max(f.dataview.totalrows,f.dataview.totalrecords)}}}}var o=m*f.rowsheight;var l=f._getpagesize();if(!f.pageable&&f.autoheight){r=m}if(f.virtualsizeinfo){f.virtualsizeinfo.visiblerecords=r}f.rendergridcontent(true,false);f._renderrows(f.virtualsizeinfo)}if(p!=f.vScrollBar.css("visibility")){f.vScrollInstance.setPosition(0);f._arrange();f._updatecolumnwidths();if(f.table){f.table.width(f.columnsheader.width())}f._updatecellwidths()}}}if(g!=f._oldWidth||i==true){var q=false;if(f.editcell&&f.editcell.editor){switch(f.editcell.columntype){case"dropdownlist":q=f.editcell.editor.jqxDropDownList("isOpened")||(f.editcell.editor.jqxDropDownList("isanimating")&&!f.editcell.editor.jqxDropDownList("ishiding"));if(q){f.editcell.editor.jqxDropDownList({openDelay:0});f.editcell.editor.jqxDropDownList("open");f.editcell.editor.jqxDropDownList({openDelay:250});return}break;case"combobox":q=f.editcell.editor.jqxComboBox("isOpened")||(f.editcell.editor.jqxComboBox("isanimating")&&!f.editcell.editor.jqxComboBox("ishiding"));if(q){f.editcell.editor.jqxComboBox({openDelay:0});f.editcell.editor.jqxComboBox("open");f.editcell.editor.jqxComboBox({openDelay:250});return}break;case"datetimeinput":if(q){q=f.editcell.editor.jqxDateTimeInput("isOpened")||(f.editcell.editor.jqxDateTimeInput("isanimating")&&!f.editcell.editor.jqxDateTimeInput("ishiding"));f.editcell.editor.jqxDateTimeInput({openDelay:0});f.editcell.editor.jqxDateTimeInput("open");f.editcell.editor.jqxDateTimeInput({openDelay:250});return}break}}var n=f.hScrollBar.css("visibility");f._arrange();f._updatecolumnwidths();if(f.table){f.table.width(f.columnsheader.width())}f._updatecellwidths();if(!(i==false&&f._oldWidth>g)){if(!h||f.dataview.rows.length==0){f._renderrows(f.virtualsizeinfo)}}if(n!=f.hScrollBar.css("visibility")){f.hScrollInstance.setPosition(0)}}f._oldWidth=g;f._oldHeight=j;f.resizingGrid=false},d)},getTouches:function(d){return b.jqx.mobile.getTouches(d)},_updateTouchScrolling:function(){var e=this.that;if(e.isTouchDevice()){e.scrollmode="logical";e.vScrollInstance.thumbStep=e.rowsheight;var g=b.jqx.mobile.getTouchEventName("touchstart");var f=b.jqx.mobile.getTouchEventName("touchend");var d=b.jqx.mobile.getTouchEventName("touchmove");e.enablehover=false;if(e.gridcontent){e.removeHandler(e.gridcontent,g+".touchScroll");e.removeHandler(e.gridcontent,d+".touchScroll");e.removeHandler(e.gridcontent,f+".touchScroll");e.removeHandler(e.gridcontent,"touchcancel.touchScroll");b.jqx.mobile.touchScroll(e.gridcontent[0],e.vScrollInstance.max,function(j,i){if(e.vScrollBar.css("visibility")=="visible"){var h=e.vScrollInstance.value;e.vScrollInstance.setPosition(h+i)}if(e.hScrollBar.css("visibility")=="visible"){var h=e.hScrollInstance.value;e.hScrollInstance.setPosition(h+j)}e.vScrollInstance.thumbCapture=true;e._lastScroll=new Date()},this.element.id,this.hScrollBar,this.vScrollBar);if(e._overlayElement){e.removeHandler(e._overlayElement,g+".touchScroll");e.removeHandler(e._overlayElement,d+".touchScroll");e.removeHandler(e._overlayElement,f+".touchScroll");e.removeHandler(e._overlayElement,"touchcancel.touchScroll");b.jqx.mobile.touchScroll(e._overlayElement[0],e.vScrollInstance.max,function(j,i){if(e.vScrollBar.css("visibility")=="visible"){var h=e.vScrollInstance.value;e.vScrollInstance.setPosition(h+i)}if(e.hScrollBar.css("visibility")=="visible"){var h=e.hScrollInstance.value;e.hScrollInstance.setPosition(h+j)}e.vScrollInstance.thumbCapture=true;e._lastScroll=new Date()},this.element.id,this.hScrollBar,this.vScrollBar);this.addHandler(this.host,g,function(){if(!e.editcell){e._overlayElement.css("visibility","visible")}else{e._overlayElement.css("visibility","hidden")}});this.addHandler(this.host,f,function(){if(!e.editcell){e._overlayElement.css("visibility","visible")}else{e._overlayElement.css("visibility","hidden")}})}}}},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var d=b.jqx.mobile.isTouchDevice();this.touchDevice=d;if(this.touchmode==true){if(b.jqx.browser.msie&&b.jqx.browser.version<9){this.enablehover=false;return false}d=true;b.jqx.mobile.setMobileSimulator(this.element);this.touchDevice=d}else{if(this.touchmode==false){d=false}}if(d&&this.touchModeStyle!=false){this.touchDevice=true;this.host.addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-content").addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-header").addClass(this.toThemeProperty("jqx-touch"));this.scrollbarsize=this.touchscrollbarsize}return d},toTP:function(d){return this.toThemeProperty(d)},localizestrings:function(d,e){this._cellscache=new Array();if(b.jqx.dataFormat){b.jqx.dataFormat.cleardatescache()}if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d!=null){for(var f in d){if(f.toLowerCase()!==f){d[f.toLowerCase()]=d[f]}}if(d.pagergotopagestring){this.gridlocalization.pagergotopagestring=d.pagergotopagestring}if(d.pagershowrowsstring){this.gridlocalization.pagershowrowsstring=d.pagershowrowsstring}if(d.pagerrangestring){this.gridlocalization.pagerrangestring=d.pagerrangestring}if(d.pagernextbuttonstring){this.gridlocalization.pagernextbuttonstring=d.pagernextbuttonstring}if(d.pagerpreviousbuttonstring){this.gridlocalization.pagerpreviousbuttonstring=d.pagerpreviousbuttonstring}if(d.pagerfirstbuttonstring){this.gridlocalization.pagerfirstbuttonstring=d.pagerfirstbuttonstring}if(d.pagerlastbuttonstring){this.gridlocalization.pagerlastbuttonstring=d.pagerlastbuttonstring}if(d.groupsheaderstring){this.gridlocalization.groupsheaderstring=d.groupsheaderstring}if(d.sortascendingstring){this.gridlocalization.sortascendingstring=d.sortascendingstring}if(d.sortdescendingstring){this.gridlocalization.sortdescendingstring=d.sortdescendingstring}if(d.sortremovestring){this.gridlocalization.sortremovestring=d.sortremovestring}if(d.groupbystring){this.gridlocalization.groupbystring=d.groupbystring}if(d.groupremovestring){this.gridlocalization.groupremovestring=d.groupremovestring}if(d.firstDay){this.gridlocalization.firstDay=d.firstDay}if(d.days){this.gridlocalization.days=d.days}if(d.months){this.gridlocalization.months=d.months}if(d.AM){this.gridlocalization.AM=d.AM}if(d.PM){this.gridlocalization.PM=d.PM}if(d.patterns){this.gridlocalization.patterns=d.patterns}if(d.percentsymbol){this.gridlocalization.percentsymbol=d.percentsymbol}if(d.currencysymbol){this.gridlocalization.currencysymbol=d.currencysymbol}if(d.currencysymbolposition){this.gridlocalization.currencysymbolposition=d.currencysymbolposition}if(d.decimalseparator!=undefined){this.gridlocalization.decimalseparator=d.decimalseparator}if(d.thousandsseparator!=undefined){this.gridlocalization.thousandsseparator=d.thousandsseparator}if(d.filterclearstring){this.gridlocalization.filterclearstring=d.filterclearstring}if(d.filterstring){this.gridlocalization.filterstring=d.filterstring}if(d.filtershowrowstring){this.gridlocalization.filtershowrowstring=d.filtershowrowstring}if(d.filtershowrowdatestring){this.gridlocalization.filtershowrowdatestring=d.filtershowrowdatestring}if(d.filterselectallstring){this.gridlocalization.filterselectallstring=d.filterselectallstring}if(d.filterchoosestring){this.gridlocalization.filterchoosestring=d.filterchoosestring}if(d.filterorconditionstring){this.gridlocalization.filterorconditionstring=d.filterorconditionstring}if(d.filterandconditionstring){this.gridlocalization.filterandconditionstring=d.filterandconditionstring}if(d.filterstringcomparisonoperators){this.gridlocalization.filterstringcomparisonoperators=d.filterstringcomparisonoperators}if(d.filternumericcomparisonoperators){this.gridlocalization.filternumericcomparisonoperators=d.filternumericcomparisonoperators}if(d.filterdatecomparisonoperators){this.gridlocalization.filterdatecomparisonoperators=d.filterdatecomparisonoperators}if(d.filterbooleancomparisonoperators){this.gridlocalization.filterbooleancomparisonoperators=d.filterbooleancomparisonoperators}if(d.emptydatastring){this.gridlocalization.emptydatastring=d.emptydatastring}if(d.filterselectstring){this.gridlocalization.filterselectstring=d.filterselectstring}if(d.todaystring){this.gridlocalization.todaystring=d.todaystring}if(d.clearstring){this.gridlocalization.clearstring=d.clearstring}if(d.validationstring){this.gridlocalization.validationstring=d.validationstring}if(d.loadtext){this.gridlocalization.loadtext=d.loadtext}if(d.addrowstring){this.gridlocalization.addrowstring=d.addrowstring}if(d.udpaterowstring){this.gridlocalization.udpaterowstring=d.udpaterowstring}if(d.deleterowstring){this.gridlocalization.deleterowstring=d.deleterowstring}if(d.resetrowstring){this.gridlocalization.resetrowstring=d.resetrowstring}if(d.everpresentrowplaceholder){this.gridlocalization.everpresentrowplaceholder=d.everpresentrowplaceholder}if(e!==false){if(this._initpager){this._initpager()}if(this._initgroupsheader){this._initgroupsheader()}if(this._initmenu){this._initmenu()}this._builddataloadelement();b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none");if(this.filterable&&this.showfilterrow){if(this._updatefilterrow){for(var f in this._filterrowcache){b(this._filterrowcache[f]).remove()}this._filterrowcache=[];this._updatefilterrow()}}if(this.showaggregates&&this.refresheaggregates){this.refresheaggregates()}this._renderrows(this.virtualsizeinfo)}}else{this.gridlocalization={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"dd-MMMM-yyyy",d4:"dd-MM-yy",d5:"H:mm",d6:"HH:mm",d7:"HH:mm tt",d8:"dd/MMMM/yyyy",d9:"MMMM-dd",d10:"MM-dd",d11:"MM-dd-yyyy"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:",",pagergotopagestring:"Go to page:",pagershowrowsstring:"Show rows:",pagerrangestring:" of ",pagerpreviousbuttonstring:"previous",pagernextbuttonstring:"next",pagerfirstbuttonstring:"first",pagerlastbuttonstring:"last",groupsheaderstring:"Drag a column and drop it here to group by that column",sortascendingstring:"Sort Ascending",sortdescendingstring:"Sort Descending",sortremovestring:"Remove Sort",groupbystring:"Group By this column",groupremovestring:"Remove from groups",filterclearstring:"Clear",filterstring:"Filter",filtershowrowstring:"Show rows where:",filtershowrowdatestring:"Show rows where date:",filterorconditionstring:"Or",filterandconditionstring:"And",filterselectallstring:"(Select All)",filterchoosestring:"Please Choose:",filterstringcomparisonoperators:["empty","not empty","contains","contains(match case)","does not contain","does not contain(match case)","starts with","starts with(match case)","ends with","ends with(match case)","equal","equal(match case)","null","not null"],filternumericcomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterdatecomparisonoperators:["equal","not equal","less than","less than or equal","greater than","greater than or equal","null","not null"],filterbooleancomparisonoperators:["equal","not equal"],validationstring:"Entered value is not valid",emptydatastring:"No data to display",filterselectstring:"Select Filter",loadtext:"Loading...",clearstring:"Clear",todaystring:"Today",addrowstring:"Add",udpaterowstring:"Update",deleterowstring:"Delete",resetrowstring:"Reset",everpresentrowplaceholder:"Enter "}}},_getmenudefaultheight:function(){var f=this;var e=0;if(this.sortable&&this._togglesort&&this.showsortmenuitems){e=3}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){e+=2}var d=f._measureMenuElement();var g=e*d+9;if(f.filterable&&!f.showfilterrow&&f.showfiltermenuitems){g+=180;if(b.jqx.browser.msie&&b.jqx.browser.version<8){g+=20}}return g},_initmenu:function(){var r=this.that;if(this.host.jqxMenu){if(this.gridmenu){if(this._hasOpenedMenu){return}if(this.filterable){if(this._destroyfilterpanel){this._destroyfilterpanel()}}this.removeHandler(this.gridmenu,"keydown");this.removeHandler(this.gridmenu,"closed");this.removeHandler(this.gridmenu,"itemclick");this.gridmenu.jqxMenu("destroy");this.gridmenu.removeData();this.gridmenu.remove()}this.menuitemsarray=new Array();this.gridmenu=b('<div id="gridmenu'+this.element.id+'" style="z-index: 9999999999999;"></div>');this.host.append(this.gridmenu);var w=b("<ul></ul>");var i='<div class="jqx-grid-sortasc-icon"></div>';var t=b("<li>"+i+this.gridlocalization.sortascendingstring+"</li>");var A='<div class="jqx-grid-sortdesc-icon"></div>';var x=b("<li>"+A+this.gridlocalization.sortdescendingstring+"</li>");var n='<div class="jqx-grid-sortremove-icon"></div>';var k=b("<li>"+n+this.gridlocalization.sortremovestring+"</li>");var j='<div class="jqx-grid-groupby-icon"></div>';var q=b("<li>"+j+this.gridlocalization.groupbystring+"</li>");var f=b("<li>"+j+this.gridlocalization.groupremovestring+"</li>");var d=b('<li type="separator"></li>');var v=b('<li class="filter" style="height: 175px;" ignoretheme="true"><div class="filter"></div></li>');var m=this.gridlocalization.sortascendingstring.length;var s=this.gridlocalization.sortascendingstring;if(this.gridlocalization.sortdescendingstring.length>m){m=this.gridlocalization.sortdescendingstring.length;s=this.gridlocalization.sortdescendingstring}if(this.gridlocalization.sortremovestring.length>m){m=this.gridlocalization.sortremovestring.length;s=this.gridlocalization.sortremovestring}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){if(this.gridlocalization.groupbystring.length>m){m=this.gridlocalization.groupbystring.length;s=this.gridlocalization.groupbystring}if(this.gridlocalization.groupremovestring.length>m){m=this.gridlocalization.groupremovestring.length;s=this.gridlocalization.groupremovestring}}var y=200;s=b.trim(s).replace(/\&nbsp\;/ig,"").replace(/\&#160\;/ig,"");var g=b("<span>"+s+"</span>");g.addClass(this.toThemeProperty("jqx-menu-item"));this.host.append(g);y=g.outerWidth()+60;g.remove();var e=0;if(this.sortable&&this._togglesort&&this.showsortmenuitems){w.append(t);this.menuitemsarray[0]=t[0];w.append(x);this.menuitemsarray[1]=x[0];w.append(k);this.menuitemsarray[2]=k[0];e=3}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){w.append(q);this.menuitemsarray[3]=q[0];w.append(f);this.menuitemsarray[4]=f[0];e+=2}var u=this._measureMenuElement();var l=e*u+9;var p=true;if(this.filterable&&!this.showfilterrow&&this.showfiltermenuitems){if(this._initfilterpanel){this.menuitemsarray[5]=v[0];this.menuitemsarray[6]=v[0];w.append(d);w.append(v);l+=180;if(b.jqx.browser.msie&&b.jqx.browser.version<8){l+=20}var o=b(v).find("div:first");this.excelfilterpanel=b("<div></div>");this.filterpanel=o;this.filtermenu=b(v);y+=20;this._initfilterpanel(this,o,"",y);this._initfilterpanel(this,this.excelfilterpanel,"",y,true);p=false;this.removeHandler(b(document),"click.menu"+r.element.id,r._closemenuafterclick,r);this.addHandler(b(document),"click.menu"+r.element.id,r._closemenuafterclick,r)}else{throw new Error("jqxGrid: Missing reference to jqxgrid.filter.js.")}}this.gridmenu.append(w);if(b.jqx.browser.msie&&b.jqx.browser.version<8&&this.filterable){b("#listBoxfilter1"+this.element.id).css("z-index",4990);b("#listBoxfilter2"+this.element.id).css("z-index",4990);b("#listBoxfilter3"+this.element.id).css("z-index",4990);b("#gridmenu"+this.element.id).css("z-index",5000);this.addHandler(b("#gridmenu"+this.element.id),"initialized",function(){b("#menuWrappergridmenu"+r.element.id).css("z-index",4980)})}if(this.menuitemsarray[0]==undefined){l=65}this.removeHandler(b(window),"orientationchange.jqxgrid"+this.element.id);this.removeHandler(b(window),"orientationchanged.jqxgrid"+this.element.id);this.addHandler(b(window),"orientationchange.jqxgrid"+this.element.id,function(){r.gridmenu.jqxMenu("close")});this.addHandler(b(window),"orientationchanged.jqxgrid"+this.element.id,function(){r.gridmenu.jqxMenu("close")});this.removeHandler(this.gridmenu,"keydown");this.addHandler(this.gridmenu,"keydown",function(F){if(F.keyCode==27){r.gridmenu.jqxMenu("close")}else{if(F.keyCode==13&&r.filterable){if(r._buildfilter){var E=b(b.find("#filter1"+r.element.id)).jqxDropDownList("container").css("display")=="block";var D=b(b.find("#filter2"+r.element.id)).jqxDropDownList("container").css("display")=="block";var B=b(b.find("#filter3"+r.element.id)).jqxDropDownList("container").css("display")=="block";var G=b(b.find("#filterclearbutton"+r.element.id)).hasClass("jqx-fill-state-focus");if(G){var C=b.data(document.body,"contextmenu"+r.element.id).column;r._clearfilter(r,r.element,C);r.gridmenu.jqxMenu("close")}else{if(!E&&!D&&!B){var C=b.data(document.body,"contextmenu"+r.element.id).column;r.gridmenu.jqxMenu("close");r._buildfilter(r,v,C)}}}}}});if(this.popupwidth!="auto"){y=this.popupwidth}this.gridmenu.jqxMenu({popupZIndex:999999,width:y,height:l,autoCloseOnClick:p,autoOpenPopup:false,mode:"popup",theme:this.theme,animationShowDuration:0,animationHideDuration:0,animationShowDelay:0});if(this.filterable){this.gridmenu.jqxMenu("_setItemProperty",v[0].id,"closeOnClick",false)}if(this.rtl){var z=this.that;b.each(w.find("li"),function(){b(this).addClass(z.toTP("jqx-rtl"))});var h=function(B){var C=B.find("div");C.css("float","right");C.css("margin-left","4px");C.css("margin-right","-4px")};h(k);h(x);h(t);h(q);h(f)}this._handlemenueevents()}else{this.columnsmenu=false}},_arrangemenu:function(){if(!this.gridmenu){this._initmenu()}var i=this.gridlocalization.sortascendingstring.length;var d=this.gridlocalization.sortascendingstring;if(this.gridlocalization.sortdescendingstring.length>i){i=this.gridlocalization.sortdescendingstring.length;d=this.gridlocalization.sortdescendingstring}if(this.gridlocalization.sortremovestring.length>i){i=this.gridlocalization.sortremovestring.length;d=this.gridlocalization.sortremovestring}if(this.groupable&&this._initgroupsheader){if(this.gridlocalization.groupbystring.length>i){i=this.gridlocalization.groupbystring.length;d=this.gridlocalization.groupbystring}if(this.gridlocalization.groupremovestring.length>i){i=this.gridlocalization.groupremovestring.length;d=this.gridlocalization.groupremovestring}}var e=200;d=b.trim(d).replace(/\&nbsp\;/ig,"").replace(/\&#160\;/ig,"");var f=b("<span>"+d+"</span>");f.addClass(this.toThemeProperty("jqx-menu-item"));this.host.append(f);e=f.outerWidth()+60;f.remove();var g=0;if(this.sortable&&this._togglesort&&this.showsortmenuitems){g=3}if(this.groupable&&this._initgroupsheader&&this.showgroupmenuitems){g+=2}var h=g*27+3;if(this.filterable&&this.showfiltermenuitems){if(this._initfilterpanel){h+=180;e+=20;if(b.jqx.browser.msie&&b.jqx.browser.version<8){h+=20}}}if(this.menuitemsarray[0]==undefined){h=65}if(this.popupwidth!="auto"){e=this.popupwidth}if(this.popupheight!="auto"){h=this.popupheight}this.gridmenu.jqxMenu({width:e,height:h})},_closemenuafterclick:function(e){var i=e!=null?e.data:this;var g=false;if(e.target==undefined||(e.target!=undefined&&e.target.className.indexOf==undefined)){i.gridmenu.jqxMenu("close");return}if(e.target.className.indexOf("filter")!=-1&&e.target.className.indexOf("jqx-grid-cell-filter")==-1){return}if(e.target.className.indexOf("jqx-grid-cell")!=-1){i.gridmenu.jqxMenu("close");return}if(i._hasOpenedMenu){if(b(e.target).ischildof(i.gridmenu)){return}}var d=i.host.coord();var f=i.gridmenu.coord();var k=e.pageX;var j=e.pageY;b.each(b(e.target).parents(),function(){if(this.id!=null&&this.id.indexOf&&this.id.indexOf("filter")!=-1){g=true;return false}if(this.className.indexOf&&this.className.indexOf("filter")!=-1&&this.className.indexOf("jqx-grid-cell-filter")==-1){g=true;return false}if(this.className.indexOf&&this.className.indexOf("jqx-grid-cell")!=-1){i.gridmenu.jqxMenu("close");return false}if(this.className.indexOf&&this.className.indexOf("jqx-grid-column")!=-1){i.gridmenu.jqxMenu("close");return false}});if(g){return}try{if(i.filtermode==="default"){var n=b(b.find("#filter1"+i.element.id)).jqxDropDownList("listBox").vScrollInstance._mouseup;var l=new Date();if(l-n<100){return}var m=b(b.find("#filter3"+i.element.id)).jqxDropDownList("listBox").vScrollInstance._mouseup;if(l-m<100){return}if((b(b.find("#filter3"+i.element.id)).jqxDropDownList("container")).css("display")=="block"){return}if((b(b.find("#filter1"+i.element.id)).jqxDropDownList("container")).css("display")=="block"){return}if((b(b.find("#filter2"+i.element.id)).jqxDropDownList("container")).css("display")=="block"){return}if(i._hasdatefilter){if(b(".filtertext1"+i.element.id)[0].nodeName.toLowerCase()=="div"){if(b(".filtertext1"+i.element.id).jqxDateTimeInput("container").css("display")=="block"){return}if(b(".filtertext2"+i.element.id).jqxDateTimeInput("container").css("display")=="block"){return}}}}else{var n=b(b.find("#filter1"+i.element.id)).data().jqxListBox.instance.vScrollInstance._mouseup;var l=new Date();if(l-n<100){return}var m=b(b.find("#filter1"+i.element.id)).data().jqxListBox.instance.hScrollInstance._mouseup;if(l-m<100){return}}}catch(h){}if(k>=f.left&&k<=f.left+i.gridmenu.width()){if(j>=f.top&&j<=f.top+i.gridmenu.height()){return}}i.gridmenu.jqxMenu("close")},_handlemenueevents:function(){var d=this.that;this.removeHandler(this.gridmenu,"closed");this.addHandler(this.gridmenu,"closed",function(e){d._closemenu()});this.removeHandler(this.gridmenu,"itemclick");this.addHandler(this.gridmenu,"itemclick",function(h){var g=h.args;for(var e=0;e<d.menuitemsarray.length;e++){var j=d.menuitemsarray[e];if(g==j){if(b(g).attr("ignoretheme")!=undefined){return}var k=b.data(document.body,"contextmenu"+d.element.id);var f=k.column;if(d.filterable){d.gridmenu.jqxMenu("close")}var m=f.displayfield;if(m==null){m=f.datafield}if(k!=null){switch(e){case 0:d.sortby(m,"ascending",null);break;case 1:d.sortby(m,"descending",null);break;case 2:d.sortby(m,null,null);break;case 3:d.addgroup(m);break;case 4:d.removegroup(m);break;case 5:var l=b(d.menuitemsarray[6]);b(l).css("display","block");break;case 7:break}}break}}})},getdatainformation:function(){var d=this.dataview.totalrecords;if(this.summaryrows){d+=this.summaryrows.length}return{rowscount:d,sortinformation:this.getsortinformation(),paginginformation:this.getpaginginformation()}},getsortinformation:function(){return{sortcolumn:this.sortcolumn,sortdirection:this.sortdirection}},getpaginginformation:function(){return{pagenum:this.dataview.pagenum,pagesize:this.pagesize,pagescount:Math.ceil(this.dataview.totalrecords/this.pagesize)}},_updaterowsproperties:function(){this._updatehiddenrows();this._updaterowheights();this._updaterowdetails()},_updatehiddenrows:function(){var e=this.that;this.hiddens=new Array();var d=this.hiddenboundrows;b.each(d,function(g){if(this.index!=undefined){var f=this.index;var h=e.getrowvisibleindex(g);e.hiddens[h]=this.hidden}})},_updaterowheights:function(){var e=this.that;this.heights=new Array();var d=this.heightboundrows;b.each(d,function(g){if(this.index!=undefined){var f=this.index;var h=e.getrowvisibleindex(g);e.heights[h]=this.height}})},_updaterowdetails:function(){var d=this.that;this.details=new Array();var e=this.detailboundrows;b.each(e,function(g){if(this.index!=undefined){var f=this.index;var h=d.getrowvisibleindex(g);d.details[h]=this.details}})},_getmenuitembyindex:function(d){if(d==undefined){return null}return this.menuitemsarray[d]},openmenu:function(e){if(this._openingmenu){return}this._openingmenu=true;this.closemenu();var h=this.getcolumn(e);if(!h.menu){return false}if(!this.gridmenu){this._initmenu()}var d=h.columnsmenu;b(h.element).trigger("mouseenter");this.menuOwner=h;var g=this;for(var f=0;f<g.columns.records.length;f++){if(g.columns.records[f].datafield!=e){b(g.columns.records[f].element).trigger("mouseleave")}}setTimeout(function(){if(b(d)[0].style.display=="block"){b(d).trigger("click")}g._openingmenu=false},200)},closemenu:function(){this._closemenu()},_closemenu:function(){if(this._hasOpenedMenu){var f=false;if(this.columnmenuclosing){var i=b.data(document.body,"contextmenu"+this.element.id);if(!i){i={column:{displayfield:null}}}f=this.columnmenuclosing(this.gridmenu,i.column.displayfield,b(this.gridmenu).height());if(f===false){return}}if(this.gridmenu!=null){this.gridmenu.jqxMenu("close")}var i=b.data(document.body,"contextmenu"+this.element.id);var e=16;if(i!=null&&this.autoshowcolumnsmenubutton){if(this.enableanimations){b(i.columnsmenu).animate({"margin-left":0},"fast",function(){b(i.columnsmenu).css("display","none")});var h=!this.rtl?-32:0;i.column.iconscontainer.animate({"margin-left":h},"fast")}else{b(i.columnsmenu).css("display","none");var h=!this.rtl?-32:0;i.column.iconscontainer.css("margin-left",h)}b.data(document.body,"contextmenu"+this.element.id,null)}this._hasOpenedMenu=false;this.menuOwner=null;var k=this._getmenuitembyindex(5);if(k){var j=b(k).find("#filter1"+this.element.id);var d=b(k).find("#filter2"+this.element.id);var g=b(k).find("#filter3"+this.element.id);if(j.length>0&&this.filtermode==="default"){j.jqxDropDownList("hideListBox");if(d.length>0){d.jqxDropDownList("hideListBox")}if(g.length>0){g.jqxDropDownList("hideListBox")}}}}},scrolloffset:function(e,d){if(e==null||d==null||e==undefined||d==undefined){return}this.vScrollBar.jqxScrollBar("setPosition",e);this.hScrollBar.jqxScrollBar("setPosition",d)},scrollleft:function(d){if(d==null||d==undefined){return}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.jqxScrollBar("setPosition",d)}},scrolltop:function(d){if(d==null||d==undefined){return}if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar("setPosition",d)}},beginupdate:function(e,d){this._updating=true;this._datachanged=false;if(e===true){this._batchupdate=true}if(d===true){this._stopbindings=true}},endupdate:function(){this.resumeupdate()},resumeupdate:function(){this._updating=false;if(this._batchupdate){this._batchupdate=false;this._datachanged=false;if(!this._stopbindings){this.render()}else{this.updatebounddata()}return}if(this._stopbindings){this.updatebounddata("data");return}if(this._datachanged==true){var d=this.vScrollInstance.value;this.render(true,true,false);this._datachanged=false;if(d!=0&&d<this.vScrollInstance.max){this.scrolltop(d)}}else{this.rendergridcontent(true);this._renderrows(this.virtualsizeinfo)}if(this.showaggregates&&this.renderaggregates){this.renderaggregates()}this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)},updating:function(){return this._updating},showloadelement:function(){if(this.renderloadelement){this.dataloadelement.html(this.renderloadelement())}this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height());b(this.dataloadelement).css("visibility","visible");b(this.dataloadelement).css("display","block")},hideloadelement:function(){b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")},_updatefocusedfilter:function(){var d=this.that;if(d.focusedfilter){d.focusedfilter.focus();setTimeout(function(){d.focusedfilter.focus();if(d.focusedfilter[0].nodeName.toLowerCase()=="input"){var g=d.focusedfilter.val().length;try{if("selectionStart" in d.focusedfilter[0]){d.focusedfilter[0].setSelectionRange(g,g)}else{var e=d.focusedfilter[0].createTextRange();e.collapse(true);e.moveEnd("character",g);e.moveStart("character",g);e.select()}}catch(f){}}},50)}},databind:function(g,i){if(this.loadingstate===true){return}if(this._stopbindings===true){return}if(this.host.css("display")=="block"){if(this.autoshowloadelement){b(this.dataloadelement).css("visibility","visible");b(this.dataloadelement).css("display","block");this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height());this._hideemptyrow()}else{b(this.dataloadelement).css("visibility","hidden");b(this.dataloadelement).css("display","none")}}if(!this._initgroupsheader&&this.groups.length>0){this.groups=new Array()}var f=this.that;if(g==null){g={}}if(!g.recordstartindex){g.recordstartindex=0}if(!g.recordendindex){g.recordendindex=0}if(g.loadallrecords==undefined||g.loadallrecords==null){g.loadallrecords=true}if(g.sortcomparer==undefined||g.sortcomparer==null){g.sortcomparer=null}if(g.filter==undefined||g.filter==null){g.filter=null}if(g.sort==undefined||g.sort==null){g.sort=null}if(g.data==undefined||g.data==null){g.data=null}var d=null;if(g!=null){d=g._source!=undefined?g._source.url:g.url}this.dataview=this.dataview||new b.jqx.dataview();if(b.jqx.dataview.sort){b.extend(this.dataview,new b.jqx.dataview.sort())}if(b.jqx.dataview.grouping){b.extend(this.dataview,new b.jqx.dataview.grouping())}this.dataview.suspendupdate();this.dataview.pageable=this.pageable;this.dataview.groupable=this.groupable;this.dataview.groups=this.groups;this.dataview.virtualmode=this.virtualmode;this.dataview.grid=this;this.dataview._clearcaches();if(!this.pageable&&this.virtualmode){this.loadondemand=true}if(!f.initializedcall){if(g._source){if(this.sortable){if(g._source.sortcolumn!=undefined){this.sortcolumn=g._source.sortcolumn;this.source.sortcolumn=this.sortcolumn;this.dataview.sortfield=g._source.sortcolumn;g._source.sortcolumn=null}if(g._source.sortdirection!=undefined){this.dataview.sortfielddirection=g._source.sortdirection;var h=g._source.sortdirection;if(h=="a"||h=="asc"||h=="ascending"||h==true){var e=true}else{var e=false}if(h!=null){this.sortdirection={ascending:e,descending:!e}}else{this.sortdirection={ascending:false,descending:false}}}}}if(this.pageable){if(g._source){if(g._source.pagenum!=undefined){this.dataview.pagenum=g._source.pagenum}if(g._source.pagesize!=undefined){this.pagesize=g._source.pagesize;this.dataview.pagesize=g._source.pagesize}else{this.dataview.pagesize=g._source.pagesize;if(this.dataview.pagesize==undefined){this.dataview.pagesize=this.pagesize}}}}if(this.sortable){if(g.sortcolumn){this.dataview.sortfield=g.sortcolumn}if(g.sortdirection){this.dataview.sortfielddirection=g.sortdirection}}if(this.filterable){if(this.columns){b.each(this.columns,function(){if(this.filter){f.dataview.addfilter(this.datafield,this.filter)}})}}}this._loading=true;this.dataview.update=function(l){if(!f.pageable&&f.virtualmode){f.loadondemand=true}f._loading=false;if(f.dataview.isupdating()){f.dataview.resumeupdate(false)}if(f.pageable&&f.pagerrenderer){if(f._initpager){f._initpager()}else{throw new Error("jqxGrid: Missing reference to jqxgrid.pager.js.")}}if((f.source&&f.source.sortcolumn)&&f.sortby&&!f.virtualmode){f.render();if(!f.source._source.sort){f.sortby(f.source.sortcolumn,f.source.sortdirection,f.source.sortcomparer)}f.source.sortcolumn=null}else{var k=f.vScrollInstance.value;var n=f.hScrollInstance.value;var o=f.source?f.source.datatype:"array";if(o!="local"||o!="array"){var q=f.virtualsizeinfo==null||(f.virtualsizeinfo!=null&&f.virtualsizeinfo.virtualheight==0);if(i=="cells"){var m=false;if(f.filterable&&f._initfilterpanel&&f.dataview.filters.length){m=true}if(false==l){if(!f.vScrollInstance.isScrolling()&&!f.hScrollInstance.isScrolling()){f._cellscache=new Array();f._pagescache=new Array();f._renderrows(f.virtualsizeinfo);if(f.showfilterrow&&f.filterable&&f.filterrow){f._updatelistfilters(true)}if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}if(f.sortcolumn){f.sortby(f.sortcolumn,f.dataview.sortfielddirection,f.source.sortcomparer)}if(f.autoshowloadelement){b(f.dataloadelement).css("visibility","hidden");b(f.dataloadelement).css("display","none")}if(f.virtualmode&&!f._loading){f.loadondemand=true;f._renderrows(f.virtualsizeinfo)}return}else{if(m){i="filter"}else{if(f.sortcolumn!=undefined){i="sort"}}}}if(!f.virtualmode||q||(f.virtualmode&&f.pageable)){if(f.initializedcall==true&&i=="pagechanged"){k=0;if(f.groupable&&f.groups.length>0){f._render(true,true,false,false,false);f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo)}else{f.rendergridcontent(true);if(f.pageable&&f.updatepagerdetails){f.updatepagerdetails();if(f.autoheight){f._updatepageviews();if(f.autorowheight){f._renderrows(this.virtualsizeinfo)}}else{if(f.autorowheight){f._updatepageviews();f._renderrows(this.virtualsizeinfo)}}}}if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}else{if(i=="filter"){if(f.virtualmode){f._render(true,true,false,false,false);f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo);f._updatefocusedfilter()}else{f._render(true,true,false,false,false);f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo);f._updatefocusedfilter()}}else{if(i=="sort"){if(f.virtualmode){f.rendergridcontent(true);if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}else{f._render(true,true,false,false,false);if(f.sortcolumn&&!f.source.sort){f.sortby(f.sortcolumn,f.dataview.sortfielddirection,f.source.sortcomparer)}}if(f.source.sort){f._updatefocusedfilter()}}else{if(i=="data"){f._render(true,true,false,false,false)}else{if(i=="state"){f._render(true,true,false,f.menuitemsarray&&f.menuitemsarray.length>0&&!f.virtualmode)}else{f._render(true,true,true,f.menuitemsarray&&f.menuitemsarray.length>0&&!f.virtualmode)}}}}}}else{if(f.virtualmode&&l==true&&!f.pageable){f._render(true,true,false,false,false);f._updatefocusedfilter();f._updatecolumnwidths();f._updatecellwidths();f._renderrows(f.virtualsizeinfo)}else{if(f.virtualmode&&!f.pageable&&l==false&&i!=undefined){f.rendergridcontent(true);if(f.showaggregates&&f._updateaggregates){f._updateaggregates()}}else{if(f.virtualmode&&f.dataview.totalrecords==0&&f.dataview.filters.length>0){f._render(true,true,true,f.menuitemsarray&&!f.virtualmode)}else{f._pagescache=new Array();f._renderrows(f.virtualsizeinfo)}}}}if(f.vScrollInstance.value!=k&&k<=f.vScrollInstance.max){f.vScrollInstance.setPosition(k)}if(f.hScrollInstance.value!=n&&n<=f.hScrollInstance.max){f.hScrollInstance.setPosition(n)}}}if(f.autoshowloadelement){b(f.dataloadelement).css("visibility","hidden");b(f.dataloadelement).css("display","none")}if(f.pageable){if(f.pagerrightbutton){f.pagerrightbutton.jqxButton({disabled:false});f.pagerleftbutton.jqxButton({disabled:false});f.pagershowrowscombo.jqxDropDownList({disabled:false})}if(f.pagerfirstbutton){f.pagerfirstbutton.jqxButton({disabled:false});f.pagerlastbutton.jqxButton({disabled:false})}}f._raiseEvent(11);if(!f.initializedcall){var p=function(){f._raiseEvent(0);f.initializedcall=true;f.isInitialized=true;if(f.ready){f.ready()}if(f.renderstatusbar){f.renderstatusbar(f.statusbar)}if(f.rendertoolbar){f.rendertoolbar(f.toolbar)}if(f.autoloadstate){if(f.loadstate){f.loadstate(null,true)}}};if(!b.jqx.isHidden(f.host)){p()}else{if(f.readyInterval){clearInterval(f.readyInterval)}f.readyInterval=setInterval(function(){if(!b.jqx.isHidden(f.host)){if(f.__isRendered){clearInterval(f.readyInterval);f.readyInterval=null;p();f._initmenu()}}},200)}if((f.width!=null&&f.width.toString().indexOf("%")!=-1)||(f.height!=null&&f.height.toString().indexOf("%")!=-1)){}if(f.host.css("visibility")=="hidden"){var j=b.jqx.browser.msie&&b.jqx.browser.version<8;if(f.vScrollBar.css("visibility")=="visible"){f.vScrollBar.css("visibility","inherit")}if(!f.autowidth){if(f.hScrollBar.css("visibility")=="visible"){f.hScrollBar.css("visibility","inherit")}}f._intervalTimer=setInterval(function(){if(f.host.css("visibility")=="visible"){f._updatesize(true);clearInterval(f._intervalTimer)}},100)}}else{f._updateTouchScrolling()}};this.dataview.databind(g);if(this.dataview.isupdating()){if(d!=undefined){this.dataview.suspend=false}else{this.dataview.resumeupdate(false)}}this._initializeRows()},scrollto:function(e,d){if(undefined!=e){this.hScrollInstance.setPosition(e)}if(undefined!=d){this.vScrollInstance.setPosition(d)}},scrollposition:function(){return{top:this.vScrollInstance.value,left:this.hScrollInstance.value}},ensurerowvisible:function(h){if(this.autoheight&&!this.pageable){return true}var e=this._getpagesize();var g=Math.floor(h/e);if(!this._pageviews[g]&&!this.pageable){this._updatepageviews()}var n=false;if(this.pageable&&this.gotopage&&!this.virtualmode){var g=Math.floor(h/e);if(this.dataview.pagenum!=g){if(this.groupable&&this.groups.length>0){return true}this.gotopage(g);n=true}}var l=this.vScrollInstance.value;var m=this._gettableheight()-this.rowsheight;var d=e*(h/e-g);d=Math.round(d);if(this._pageviews[g]){var k=this._pageviews[g].top;var j=k+d*this.rowsheight;if(this.rowdetails){for(var f=e*g;f<h;f++){if(this.details[f]){if(this.details[f].rowdetailshidden==false){j+=this.details[f].rowdetailsheight}}}}if(this.scrollmode=="deferred"){if(this.vScrollInstance.max<=j+this.rowsheight){j=this.vScrollInstance.max}}if(j<l){this.scrolltop(j);n=true}else{if(j>l+m+2){this.scrolltop(j-m);n=true}else{}}}else{if(this.pageable){var j=d*this.rowsheight;if(this.rowdetails){for(var f=e*g;f<e*g+d;f++){if(this.details[f]&&this.details[f].rowdetailshidden==false){j+=this.details[f].rowdetailsheight}}}if(j<l||j>l+m){this.scrollto(0,j);n=true}}}return n},ensurecellvisible:function(h,d){var n=this.that;var i=this.hScrollBar.jqxScrollBar("value");var j=n.hScrollInstance.max;if(n.rtl){if(this.hScrollBar.css("visibility")!="visible"){j=0}}var o=this.ensurerowvisible(h);var e=0;if(this.columns.records){var m=i;if(this.hScrollBar.css("visibility")=="hidden"){return}var l=this.host.width();var k=0;var f=this.vScrollBar.css("visibility")=="visible"?20:0;var g=false;b.each(this.columns.records,function(){if(this.hidden){return true}if(this.datafield==d){var q=0;var p=!n.rtl?m:j-i;if(e+this.width>p+l-f){q=e+this.width-l+f;if(n.rtl){q=j-q}n.scrollleft(q);g=true}else{if(e<=p){q=e-this.width;if(n.rtl){q=j-q}n.scrollleft(q);g=true}}if(k==0){if(n.rtl){n.scrollleft(j)}else{n.scrollleft(0)}g=true}else{if(k==n.columns.records.length-1){if(n.hScrollBar.css("visibility")=="visible"){if(!n.rtl){n.scrollleft(n.hScrollBar.jqxScrollBar("max"))}else{n.scrollleft(n.hScrollBar.jqxScrollBar("min"))}g=true}}}return false}k++;e+=this.width});if(!g){n.scrollleft(m)}}return o},setrowheight:function(e,d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(e==null||d==null){return false}this.heightboundrows[e]={index:e,height:d};e=this.getrowvisibleindex(e);if(e<0){return false}if(this.rows.records[e]){this.rows.records[e].height=d}else{row=new a(this,null);row.height=d;this.rows.replace(e,row)}this.heights[e]=d;this.rendergridcontent(true);return true},getrowheight:function(d){if(d==null){return null}d=this.getrowvisibleindex(d);if(d<0){return false}if(this.rows.records[d]){return this.rows.records[d].height}},setrowdetails:function(f,h,d,j){if(f==undefined||f==null||f<0){return}var e=f+"_";if(this._rowdetailscache[e]){var g=this._rowdetailscache[e].element;b(g).remove();this._rowdetailscache[e]=null}var i=this.dataview.generatekey();this.detailboundrows[f]={index:f,details:{rowdetails:h,rowdetailsheight:d,rowdetailshidden:j,key:i}};f=this.getrowvisibleindex(f);if(f<0){return false}return this._setrowdetails(f,h,d,j,i)},getcolumn:function(d){var e=null;if(this.columns.records){b.each(this.columns.records,function(){if(this.datafield==d||this.displayfield==d){e=this;return false}})}return e},_getcolumnindex:function(e){var d=-1;if(this.columns.records){b.each(this.columns.records,function(){d++;if(this.datafield==e){return false}})}return d},_getcolumnat:function(d){var e=this.columns.records[d];return e},_getprevvisiblecolumn:function(e){var d=this.that;while(e>0){e--;var f=d.getcolumnat(e);if(!f){return null}if(!f.hidden){return f}}return null},_getnextvisiblecolumn:function(e){var d=this.that;while(e<this.columns.records.length){e++;var f=d.getcolumnat(e);if(!f){return null}if(!f.hidden){return f}}return null},getcolumnat:function(d){if(!isNaN(d)){var e=this.columns.records[d];return e}return null},_getcolumn:function(d){var e=null;b.each(this._columns,function(){if(this.datafield==d||this.displayfield==d){e=this;return false}});return e},_setcolumnproperty:function(e,g,h){if(e==null||g==null||h==null){return null}g=g.toLowerCase();var f=this.getcolumn(e);if(f==null){return}var i=f[g];f[g]=h;var d=this._getcolumn(e);if(d!=null){d[g]=h}this._cellscache=new Array();switch(g){case"filteritems":if(this.filterable&&this.showfilterrow){this._updatelistfilters(true,true)}break;case"text":this.prerenderrequired=true;this._rendercolumnheaders();this._updatecellwidths();if(this._groupsheader()){if(this._initgroupsheader){this._initgroupsheader()}}this._renderrows(this.virtualsizeinfo);break;case"editable":case"resizable":case"draggable":if(g=="editable"){if(h!=i){if(this.editcell!=null&&this.endcelledit){this.endcelledit(this.editcell.row,this.editcell.column,true,true)}if(f.columntype=="checkbox"){this.prerenderrequired=true;this.rendergridcontent(true,false);if(this.updating()){return false}}if(this.updating()){return false}this._renderrows(this.virtualsizeinfo)}}break;case"hidden":case"hideable":case"renderer":case"cellsrenderer":case"align":case"aggregates":case"cellsalign":case"cellsformat":case"pinned":case"contenttype":case"filterable":case"groupable":case"cellclass":case"cellclassname":case"classname":case"class":this.prerenderrequired=true;if(g=="pinned"){this._initializeColumns();this._preparecolumngroups()}this.rendergridcontent(true);if(this.updating()){return false}if(g=="hidden"){this._updatecolumnwidths();this._updatecellwidths()}this._renderrows(this.virtualsizeinfo);if(this.showaggregates&&this._updateaggregates){this._updateaggregates()}break;case"width":case"minwidth":case"maxwidth":if(this.updating()){return false}f._width=null;f._percentagewidth=null;this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);break}},_getcolumnproperty:function(d,f){if(d==null||f==null){return null}f=f.toLowerCase();var e=this.getcolumn(d);return e[f]},setcolumnproperty:function(d,e,f){this._setcolumnproperty(d,e,f)},getcolumnproperty:function(d,e){return this._getcolumnproperty(d,e)},hidecolumn:function(d){this._setcolumnproperty(d,"hidden",true)},showcolumn:function(d){this._setcolumnproperty(d,"hidden",false)},iscolumnvisible:function(d){return !this._getcolumnproperty(d,"hidden")},pincolumn:function(d){this._setcolumnproperty(d,"pinned",true)},unpincolumn:function(d){this._setcolumnproperty(d,"pinned",false)},iscolumnpinned:function(d){return this._getcolumnproperty(d,"pinned")},_setrowdetails:function(j,d,n,h,e){if(n==0){n=100}if(j==null||n==null){return false}if(e!=null){this.details[j]={rowdetails:d,rowdetailsheight:n,rowdetailshidden:h,detailskey:e}}else{var m=this.details[j]!=null?this.details[j].detailskey:null;var l={rowdetails:d,rowdetailsheight:n,rowdetailshidden:h,detailskey:m};var k=this.that;for(var g=0;g<this.detailboundrows.length;g++){if(this.detailboundrows[g]!=undefined){var f=this.detailboundrows[g];if(f.details.detailskey==m){f.details.rowdetailsheight=l.rowdetailsheight;f.details.rowdetailshidden=l.rowdetailshidden;f.details.rowdetails=l.rowdetails;break}}}this.details[j]=l}this.rendergridcontent(true);this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);return true},getrowdetails:function(d){if(d==null){return false}d=this.getrowvisibleindex(d);return this._getrowdetails(d)},_getrowdetails:function(d){if(d==null){return false}if(d<0){return false}if(this.details[d]){return this.details[d]}if(this.rowdetailstemplate){return this.rowdetailstemplate}},getrecordscount:function(){return this.dataview.totalrecords},showrowdetails:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==null){return false}d=this.getrowvisibleindex(d);if(d<0){return false}var e=this._getrowdetails(d);return this._setrowdetailsvisibility(d,e,false)},hiderowdetails:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}d=this.getrowvisibleindex(d);if(d<0){return false}var e=this._getrowdetails(d);return this._setrowdetailsvisibility(d,e,true)},_togglerowdetails:function(i){var f=i.visibleindex;var g=this._getrowdetails(f);if(g!=null){var e=this.vScrollInstance.value;var h=!g.rowdetailshidden;var d=this._setrowdetailsvisibility(f,g,h);if(e!==0&&this.vScrollBar.css("visibility")!=="hidden"){if(e<=this.vScrollInstance.max){this.vScrollInstance.setPosition(e)}else{this.vScrollInstance.setPosition(this.vScrollInstance.max)}}return d}return false},_setrowdetailsvisibility:function(e,f,h){if(this.rowdetailstemplate){if(!this.details){this.details=new Array()}if(!this.details[e]){this.details[e]={rowdetailshidden:this.rowdetailstemplate.rowdetailshidden,rowdetailsheight:this.rowdetailstemplate.rowdetailsheight,rowdetails:this.rowdetailstemplate.rowdetails};var g=this.dataview.generatekey();this.details[e].detailskey=g;this.detailboundrows[e]={index:e,details:this.details[e]}}}if(f!=null){this.details[e].rowdetailshidden=h}else{return false}var d=this.details[e];if(h){this._raiseEvent(21,{rowindex:e,details:d.rowdetails,height:d.rowdetailsheight})}else{this._raiseEvent(20,{rowindex:e,details:d.rowdetails,height:d.rowdetailsheight})}return this._setrowdetails(e,d.rowdetails,d.rowdetailsheight,d.rowdetailshidden)},getrowvisibleindex:function(d){if(d==undefined||d==null||d<0){return false}if(this.virtualmode){var e=this.dataview.loadedrecords[d];if(e==undefined){return -1}return e.visibleindex}return this.getrowdisplayindex(d)},hiderow:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==undefined||d==null||d<0){return false}if(d==null){return false}this.hiddenboundrows[d]={index:d,hidden:true};d=this.getrowvisibleindex(d);return this._setrowvisibility(d,true)},showrow:function(d){if(this._loading){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==undefined||d==null||d<0){return false}if(d==null){return false}this.hiddenboundrows[d]={index:d,hidden:false};d=this.getrowvisibleindex(d);return this._setrowvisibility(d,false)},isrowhiddenat:function(d){if(d==null){return null}d=this.getrowvisibleindex(d);if(this.rows.records[d]){return this.rows.records[d].hidden}},_setrowvisibility:function(d,f,e){if(d==null){return false}this.hiddens[d]=f;if(e==undefined||e){this.rendergridcontent(true);return true}return false},_loadrows:function(){if(!this._pageviews[this.dataview.pagenum]&&!this.pageable){return}var p=!this.pageable?this._pageviews[this.dataview.pagenum].top:0;if(!this.pageable&&this._pagescache[this.dataview.pagenum]!=undefined){return null}if(!this.virtualsizeinfo){return}var t=this.that;var l=new Array();var q=new Array();var e=t.groupable&&t.groups.length>0;var j=this.dataview.totalrecords;var o=this.virtualsizeinfo.virtualheight;var s=0;this.rows.beginupdate();var f=this.dataview.pagesize;if(this.pageable&&e){f=this.dataview.rows.length}for(var g=0;g<f;g++){if(g>=this.dataview.rows.length){break}var k=this.dataview.rows[g];var u=null;if(!t.rows.records[k.visibleindex]){u=new a(t,k)}else{u=t.rows.records[k.visibleindex];u.setdata(k)}u.hidden=this.hiddens[u.visibleindex];if(this.rowdetailstemplate){u.rowdetails=this.rowdetailstemplate.rowdetails;u.rowdetailsheight=this.rowdetailstemplate.rowdetailsheight;u.rowdetailshidden=this.rowdetailstemplate.rowdetailshidden}var d=this.details[u.visibleindex];if(d){u.rowdetails=d.rowdetails;u.rowdetailsheight=d.rowdetailsheight;u.rowdetailshidden=d.rowdetailshidden}else{if(!this.rowdetailstemplate){u.rowdetails=null}}if(e&&this.pageable&&u.parentbounddata!=null){var r=l[u.parentbounddata.uniqueid];if(r!=null){var n=this._findgroupstate(r.uniqueid);if(this._setsubgroupsvisibility){this._setsubgroupsvisibility(this,u.parentbounddata,!n,false)}u.hidden=this.hiddens[u.visibleindex]}if(r!=null&&r!=undefined){u.parentrow=r;r.subrows[r.subrows.length++]=u}}if(u.hidden){continue}var h=k.visibleindex;if(!this.heights[h]){this.heights[h]=this.rowsheight}u.height=this.heights[h];if(this.rowdetails){if(u.rowdetails&&!u.rowdetailshidden){u.height+=u.rowdetailsheight}}l[u.uniqueid]=u;q[s++]=u;u.top=p;p+=u.height;var m=h;t.rows.replace(m,u)}if((this.autoheight||this.pageable)&&this.autorowheight){if(this._pageviews&&this._pageviews.length>0){this._pageviews[0].height=p}}this.rows.resumeupdate();if(q.length>0){this._pagescache[this.dataview.pagenum]=q}},_updateaddnewrowui:function(g){var m=this;var k=m.everpresentrowposition!="bottom"?m.addnewrowtop:m.addnewrowbottom;var o=m.columns.records.length;var f=0;for(var l=0;l<o;l++){var h=m.columns.records[l];if(h.addnewrowwidget){h.addnewrowwidget.detach()}}for(var l=0;l<o;l++){var h=m.columns.records[l];var e=h.width;if(e<h.minwidth){e=h.minwidth}if(e>h.maxwidth){e=h.maxwidth}var n=b(k[0].cells[l]);n.css("left",f);var i=true;if(n.width()==e){i=false}if(g){i=true}n.width(e);n[0].left=f;if(h.addnewrowwidget){n.html("");n.append(h.addnewrowwidget)}if(!(h.hidden&&h.hideable)){f+=e}else{n.css("display","none")}if(!i){continue}}var p=m.everpresentrowactions.split(" ");m.addnewrowbutton.show();m.addnewrowupdatebutton.show();m.addnewrowresetbutton.show();m.addnewrowdeletebutton.show();if(p.indexOf("add")==-1&&p.indexOf("addBottom")==-1){m.addnewrowbutton.hide()}if(p.indexOf("update")==-1){m.addnewrowupdatebutton.hide()}if(p.indexOf("reset")==-1){m.addnewrowresetbutton.hide()}if(p.indexOf("delete")==-1){m.addnewrowdeletebutton.hide()}var d=b(k.children()[0]);d.width(parseInt(f)+2);d.height(m.everpresentrowheight);d.css("max-height",m.everpresentrowheight+"px")},_removeaddnewrow:function(){var g=this;var d=g.columns.records.length;for(var f=0;f<d;f++){var e=g.columns.records[f];if(e.addnewrowwidget){if(e.destroyeverpresentrowwidget){e.destroyeverpresentrowwidget(e.addnewrowwidget)}else{e.addnewrowwidget.remove()}e.addnewrowwidget=null}}if(g.addnewrowbutton){g.addnewrowbutton.remove()}if(g.addnewrowupdatebutton){g.addnewrowupdatebutton.remove()}if(g.addnewrowdeletebutton){g.addnewrowdeletebutton.remove()}if(g.addnewrowresetbutton){g.addnewrowresetbutton.remove()}if(g.addnewrowpopup){g.addnewrowpopup.remove();g.addnewrowpopup=null}if(g.addnewrowtop){g.addnewrowtop.remove();g.addnewrowtop=null}if(g.addnewrowbottom){g.addnewrowbottom.remove();g.addnewrowbottom=null}},_updateaddnewrow:function(){var o=this;var f=o.everpresentrowposition!="bottom"?o.addnewrowtop:o.addnewrowbottom;var t=b('<div style="position: relative;" id="row000'+o.element.id+'"></div>');var i=0;var z=o.columns.records.length;var n=o.toThemeProperty("jqx-grid-cell");n+=" "+o.toThemeProperty("jqx-grid-cell-add-new-row");n+=" "+o.toThemeProperty("jqx-grid-cell-filter-row");var m=z+10;var h=new Array();var D=o.that;f[0].cells=h;t.height(o.everpresentrowheight);if(!o.showfilterrow&&o.everpresentrowposition!="bottom"){f.css("max-height",(o.everpresentrowheight-1)+"px")}else{if(o.showfilterrow&&o.everpresentrowposition!="bottom"){f.css("max-height",(o.everpresentrowheight-3)+"px")}}t.css("max-height",o.everpresentrowheight+"px");f.append(t);var C=b("<div style='border-width: 1px; border-style: solid; padding: 5px; z-index: 99999; display: none; position: absolute;'><div>").appendTo(b(document.body));var d=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.addrowstring+"</button>");var q=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.udpaterowstring+"</button>");var k=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.deleterowstring+"</button>");var p=b("<button style='position: relative; float: left; margin: 2px; border-radius: 0px; padding: 4px 8px;'>"+o.gridlocalization.resetrowstring+"</button>");C.addClass(o.toThemeProperty("jqx-popup"));C.addClass(o.toThemeProperty("jqx-rc-all"));C.addClass(o.toThemeProperty("jqx-fill-state-normal"));C.addClass(o.toThemeProperty("jqx-shadow"));C.append(d);C.append(q);C.append(k);C.append(p);var g=o.everpresentrowactions.split(" ");if(g.indexOf("add")==-1&&g.indexOf("addBottom")==-1){d.hide()}if(g.indexOf("update")==-1){q.hide()}if(g.indexOf("reset")==-1){p.hide()}if(g.indexOf("delete")==-1){k.hide()}o.addnewrowpopup=C;o.addnewrowbutton=d;o.addnewrowupdatebutton=q;o.addnewrowdeletebutton=k;o.addnewrowresetbutton=p;d.jqxButton({template:"success",theme:o.theme});k.jqxButton({template:"danger",theme:o.theme});q.jqxButton({template:"primary",theme:o.theme});p.jqxButton({template:"warning",theme:o.theme});q.mousedown(function(E){var P={};var I={};for(var G=0;G<z;G++){var F=o.columns.records[G];if(!F.geteverpresentrowwidgetvalue){continue}var L=F.geteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget);I[F.datafield]=L;if(F.datafield!=F.displayfield){I[F.datafield]=L.value;I[F.displayfield]=L.label}}var K=false;for(var G=0;G<z;G++){var F=o.columns.records[G];if(!F.geteverpresentrowwidgetvalue){continue}var L=F.geteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget);if(F.createeverpresentrowwidget&&F.validateeverpresentrowwidgetvalue){var J=F.validateeverpresentrowwidgetvalue(F.displayfield,L,I);var O=J;var H=o.gridlocalization.validationstring;if(O.message!=undefined){H=O.message}var N=typeof O=="boolean"?O:O.result;if(!N){L="invalid editor state";F.addnewrowwidget.attr("title",H);F.addnewrowwidget.addClass(o.toThemeProperty("jqx-input-invalid"))}else{F.addnewrowwidget.attr("title","");F.addnewrowwidget.removeClass(o.toThemeProperty("jqx-input-invalid"))}}if(L==="invalid editor state"){E.preventDefault();E.stopPropagation();K=true;continue}if(K){continue}}if(K){C.hide();o.focus();return}for(var G=0;G<z;G++){var F=o.columns.records[G];if(!F.geteverpresentrowwidgetvalue){continue}var L=F.geteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget);P[F.datafield]=L;if(F.datafield!=F.displayfield){P[F.datafield]=L.value;P[F.displayfield]=L.label}if(F.reseteverpresentrowwidgetvalue){F.reseteverpresentrowwidgetvalue(F.displayfield,F.addnewrowwidget)}}if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var M=o.getselectedcells()[0].rowindex}else{var M=o.selectedrowindexes[0]}rowData=o.getrowdata(M);if(rowData){o.updaterow(rowData.uid,P)}}C.hide();o.focus()});k.mousedown(function(G){if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var H=o.getselectedcells()[0].rowindex}else{var H=o.selectedrowindexes[0]}rowData=o.getrowdata(H);if(rowData){o.deleterow(rowData.uid)}}for(var F=0;F<z;F++){var E=o.columns.records[F];if(E.reseteverpresentrowwidgetvalue){E.reseteverpresentrowwidgetvalue(E.displayfield,E.addnewrowwidget)}}C.hide();o.focus();o.updateeverpresentrow()});d.mousedown(function(F){var P={};var J={};for(var H=0;H<z;H++){var G=o.columns.records[H];if(!G.geteverpresentrowwidgetvalue){continue}var M=G.geteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget);J[G.datafield]=M;if(G.datafield!=G.displayfield){J[G.datafield]=M.value;J[G.displayfield]=M.label}if(G.datafield!=G.displayfield){J[G.datafield]=M.label;J[G.displayfield]=M.value}}var L=false;for(var H=0;H<z;H++){var G=o.columns.records[H];if(!G.geteverpresentrowwidgetvalue){continue}var M=G.geteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget);if(G.createeverpresentrowwidget&&G.validateeverpresentrowwidgetvalue){var K=G.validateeverpresentrowwidgetvalue(G.displayfield,M,J);var O=K;var I=o.gridlocalization.validationstring;if(O.message!=undefined){I=O.message}var N=typeof O=="boolean"?O:O.result;if(!N){M="invalid editor state";G.addnewrowwidget.attr("title",I);G.addnewrowwidget.addClass(o.toThemeProperty("jqx-input-invalid"))}else{G.addnewrowwidget.attr("title","");G.addnewrowwidget.removeClass(o.toThemeProperty("jqx-input-invalid"))}}if(M==="invalid editor state"){F.preventDefault();F.stopPropagation();L=true;continue}if(L){continue}}if(L){C.hide();o.focus();return}for(var H=0;H<z;H++){var G=o.columns.records[H];if(!G.geteverpresentrowwidgetvalue){continue}var M=G.geteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget);P[G.datafield]=M;if(G.datafield!=G.displayfield){J[G.datafield]=M.label;J[G.displayfield]=M.value}if(G.reseteverpresentrowwidgetvalue){G.reseteverpresentrowwidgetvalue(G.displayfield,G.addnewrowwidget)}}var E=o.everpresentrowactions.indexOf("addBottom")>=0?"last":"first";o.addrow(null,P,E);C.hide();o.focus()});p.mousedown(function(G){var H={};for(var F=0;F<z;F++){var E=o.columns.records[F];if(E.reseteverpresentrowwidgetvalue){E.reseteverpresentrowwidgetvalue(E.displayfield,E.addnewrowwidget)}if(E.addnewrowwidget){E.addnewrowwidget.attr("title","");E.addnewrowwidget.removeClass(o.toThemeProperty("jqx-input-invalid"))}}C.hide();o.focus()});for(var w=0;w<z;w++){var x=o.columns.records[w];var u=x.width;if(u<x.minwidth){u=x.minwidth}if(u>x.maxwidth){u=x.maxwidth}var e=b('<div style="overflow: hidden; position: absolute; height: 100%;" class="'+n+'"></div>');t.append(e);e.css("left",i);if(o.rtl){e.css("z-index",m++);e.css("border-left-width","1px")}else{e.css("z-index",m--)}if(u=="auto"){u=0}e[0].style.width=parseFloat(u)+"px";e[0].left=i;if(!(x.hidden&&x.hideable)){i+=u}else{e.css("display","none")}h[h.length]=e[0];if(x.checkboxcolumn){var B=o.toThemeProperty("jqx-grid-cell");B+=" "+o.toThemeProperty("jqx-grid-cell-filter-row");B+=" "+o.toThemeProperty("jqx-grid-cell-pinned");e.removeClass().addClass(B);continue}var s=true;if(!o.rtl){if(o.groupable){var y=(o.showrowdetailscolumn&&o.rowdetails)?1:0;if(o.groups.length+y>w){s=false}}if(o.showrowdetailscolumn&&o.rowdetails&&w==0){s=false}}else{if(o.groupable){var y=(o.showrowdetailscolumn&&o.rowdetails)?1:0;if(o.groups.length+y+w>z-1){s=false}}if(o.showrowdetailscolumn&&o.rowdetails&&w==z-1){s=false}}o.updateeverpresentrow=function(){var G=null;if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var H=o.getselectedcells()[0].rowindex}else{var H=o.selectedrowindexes[0]}G=o.getrowdata(H)}if(!G){return}for(var F=0;F<o.columns.records.length;F++){var j=o.columns.records[F];if(j.seteverpresentrowwidgetvalue){var E=o.getcelltext(H,j.displayfield);j.seteverpresentrowwidgetvalue(j.addnewrowwidget,E)}}};if(s){if(x.createeverpresentrowwidget){var v=function(){d.trigger("mousedown")};x.addnewrowwidget=x.createeverpresentrowwidget(x.datafield,e,C,v);if(x.initeverpresentrowwidget){x.initeverpresentrowwidget(x.datafield,e,C)}}else{o._measureElement("column");var r=(o.everpresentrowheight/2-o._columnheight/2);if(r<0){r=4}r+="px";if(x.datafield==="addButtonColumn"){var l=b('<div style="padding-bottom: 2px; text-align: center; margin-top: '+r+';"><a href="#">'+o.gridlocalization.addrowstring+"</a></div>");e.append(l);l.mousedown(function(){d.trigger("mousedown")});continue}else{if(x.datafield==="resetButtonColumn"){var l=b('<div style="padding-bottom: 2px; text-align: center; margin-top: '+r+';"><a href="#">'+o.gridlocalization.resetrowstring+"</a></div>");e.append(l);l.mousedown(function(){p.trigger("mousedown")});continue}}var A=function(F,H,j){var E=b('<input style="box-sizing: border-box; padding-right: 4px; padding-left: 4px; border:none;" autocomplete="off" type="textarea"/>');E[0].id=b.jqx.utilities.createId();E.addClass(F.toThemeProperty("jqx-widget"));E.addClass(F.toThemeProperty("jqx-input"));E.addClass(F.toThemeProperty("jqx-widget-content"));E.addClass(F.toThemeProperty("jqx-enableselect"));E.addClass(F.toThemeProperty("jqx-grid-cell-add-new-row"));E.css("text-align",j.cellsalign);if(F.rtl){E.css("direction","rtl")}if(F.disabled){E.attr("disabled",true)}E.attr("disabled",false);E.attr("placeholder",F.gridlocalization.everpresentrowplaceholder+j.text);E.appendTo(H);E.css("width","100%");E.css("height",F.everpresentrowheight+"px");E.css("line-height",F.everpresentrowheight+"px");E.css("max-height",F.everpresentrowheight+"px");E.css("margin","0px");E.focus(function(){if(o.selectedcells.length>0||o.selectedrowindexes.length>0){if(o.selectionmode.indexOf("cell")>=0){var K=o.getselectedcells()[0].rowindex}else{var K=o.selectedrowindexes[0]}}E.addClass(F.toThemeProperty("jqx-fill-state-focus"));var I=F.columns.records.indexOf(j);if(F.everpresentrowactionsmode!=="columns"){C.css({display:"block",top:E.coord().top+F.everpresentrowheight-1,left:I>0?E.coord().left:E.coord().left-1})}var J=C.children().width();if(j.cellsalign==="right"){var J=d.width()+p.width();C.children().css("left",J-J+"px")}else{C.children().css("left","0px")}F.content[0].scrollLeft=0;F.content[0].scrollTop=0;setTimeout(function(){F.content[0].scrollLeft=0;F.content[0].scrollTop=0},50);return false});j.addnewrowwidget=E;if(!j.reseteverpresentrowwidgetvalue){j.reseteverpresentrowwidgetvalue=function(J,I){I.val("");I.focus();I.blur();I.removeClass(o.toThemeProperty("jqx-input-invalid"));I.attr("title","")}}if(!j.seteverpresentrowwidgetvalue){j.seteverpresentrowwidgetvalue=function(J,I){J.val(I)}}if(!j.geteverpresentrowwidgetvalue){var G=j;j.geteverpresentrowwidgetvalue=function(I,P,R){var U=P.val();if(R!==false&&G.validateeverpresentrowwidgetvalue){var Y={};var O={};for(var M=0;M<z;M++){var K=o.columns.records[M];if(!K.geteverpresentrowwidgetvalue){continue}var Q=K.geteverpresentrowwidgetvalue(K.displayfield,K.addnewrowwidget,false);O[K.datafield]=Q;if(K.datafield!=K.displayfield){O[K.datafield]=Q.value;O[K.displayfield]=Q.label}}var T=G.validateeverpresentrowwidgetvalue(G.displayfield,U,O);var X=T;var N=o.gridlocalization.validationstring;if(X.message!=undefined){N=X.message}var W=typeof X=="boolean"?X:X.result;if(!W){E.addClass(o.toThemeProperty("jqx-input-invalid"));E.attr("title",N);return"invalid editor state"}else{E.removeClass(o.toThemeProperty("jqx-input-invalid"));E.attr("title","")}}var S="string";var J=o.source.datafields||((o.source._source)?o.source._source.datafields:null);if(J){var V="";b.each(J,function(){if(this.name==G.displayfield){if(this.type){V=this.type}return false}});if(V){S=V}}if(S==="number"){var L=parseFloat(U);if(isNaN(L)){return null}}if(S==="date"){return b.jqx.dataFormat.tryparsedate(U,o.gridlocalization)}if(S==="bool"||S==="boolean"){if(U==="true"){return true}if(U=="1"){return true}if(U==="false"){return false}if(U=="0"){return false}if(U===true){return U}if(U===false){return U}return false}return U}}E.keydown(function(I){if(I.keyCode===13){if(o.everpresentrowactions.indexOf("add")>=0){d.trigger("mousedown")}else{if(o.everpresentrowactions.indexOf("update")>=0){q.trigger("mousedown")}else{if(o.everpresentrowactions.indexOf("delete")>=0){k.trigger("mousedown")}}}}});E.blur(function(){E.removeClass(F.toThemeProperty("jqx-fill-state-focus"));C.css("display","none")});if(j.initeverpresentrowwidget){j.initeverpresentrowwidget(j.datafield,H,C)}};A(this,e,x)}}}if(b.jqx.browser.msie&&b.jqx.browser.version<8){t.css("z-index",m--)}t.width(parseFloat(i)+2);f.addClass(n);f.css("border-bottom-width","0px");if(o.showfilterrow){f.css("border-top-width","0px")}else{f.css("border-top-width","1px")}f.css("box-sizing","border-box");f.css("border-right-width","0px")},_gettableheight:function(){if(this.tableheight!=undefined){return this.tableheight}var e=this.host.height();if(this.columnsheader){var d=this.columnsheader.outerHeight();if(!this.showheader){d=0}}e-=d;if(this.hScrollBar[0].style.visibility=="visible"){e-=this.hScrollBar.outerHeight()}if(this.pageable){e-=this.pager.outerHeight()}if(this._groupsheader()){e-=this.groupsheader.outerHeight()}if(this.showtoolbar){e-=this.toolbarheight}if(this.showstatusbar){e-=this.statusbarheight}if(this.showeverpresentrow&&this.everpresentrowposition==="bottom"){e-=this.everpresentrowheight}if(e>0){this.tableheight=e;return e}return this.host.height()},_getpagesize:function(){if(this.pageable){return this.pagesize}if(this.virtualmode){var e=Math.round(this.host.height())+2*this.rowsheight;var d=Math.round(e/this.rowsheight);return d}if(this.autoheight||this.autorowheight){if(this.dataview.totalrows==0){return 1}return this.dataview.totalrows}if(this.dataview.totalrows<100&&this.dataview.totalrecords<100&&this.dataview.totalrows>0){return this.dataview.totalrows}return 100},_calculatevirtualheight:function(){var n=this.that;var e=Math.round(this.host.height())+2*this.rowsheight;realheight=this._gettableheight();var p=Math.round(e/this.rowsheight);this.heights=new Array();this.hiddens=new Array();this.details=new Array();this.expandedgroups=new Array();this.hiddenboundrows=new Array();this.heightboundrows=new Array();this.detailboundrows=new Array();var h=Math.max(this.dataview.totalrows,this.dataview.totalrecords);if(this.pageable){h=this.pagesize;if(this.pagesize>Math.max(this.dataview.totalrows,this.dataview.totalrecords)&&this.autoheight){h=Math.max(this.dataview.totalrows,this.dataview.totalrecords)}else{if(!this.autoheight){if(this.dataview.totalrows<this.pagesize){h=Math.max(this.dataview.totalrows,this.dataview.totalrecords)}}}}var l=h*this.rowsheight;var m=0;var j=0;var k=0;var f=this._getpagesize();var d=f*this.rowsheight;var g=0;if(!this.pageable&&this.autoheight){p=h}if(h+f>0){while(g<=h+f){m+=d;if(g-f<h&&g>=h){var o=g-h;if(o>0){k-=d;this._pageviews[j-1]={top:k,height:d-o*this.rowsheight}}break}else{this._pageviews[j++]={top:k,height:d}}k=m;g+=f}}if(this.resizingGrid!=true){this.vScrollBar.jqxScrollBar({value:0})}if(l>realheight&&!this.autoheight){this.vScrollBar.css("visibility","visible");if(this.scrollmode=="deferred"){this.vScrollBar.jqxScrollBar({max:l})}else{this.vScrollBar.jqxScrollBar({max:l-realheight})}}else{this.vScrollBar.css("visibility","hidden")}this.dataview.pagesize=f;this.dataview.updateview();return{visiblerecords:p,virtualheight:l}},_updatepageviews:function(){if(this.updating()){return}this._pagescache=new Array();this._pageviews=new Array();this.tableheight=null;var u=this.that;var d=Math.round(this.host.height())+2*this.rowsheight;var v=Math.round(d/this.rowsheight);var n=Math.max(this.dataview.totalrows,this.dataview.totalrecords);var q=n*this.rowsheight;var t=0;var f=0;var o=0;var p=0;var j=0;var h=this._getpagesize();if(!this.pageable){for(var m=0;m<n;m++){var s={index:m,height:this.heights[m],hidden:this.hiddens[m],details:this.details[m]};if(this.heights[m]==undefined){this.heights[m]=this.rowsheight;s.height=this.rowsheight}if(this.hiddens[m]==undefined){this.hiddens[m]=false;s.hidden=false}if(this.details[m]==undefined){this.details[m]=null}if(s.height!=u.rowsheight){q-=u.rowsheight;q+=s.height}if(s.hidden){q-=s.height}else{f+=s.height;var l=0;if(this.rowdetails){if(this.rowdetailstemplate){if(!s.details){s.details=this.rowdetailstemplate}}if(s.details&&s.details.rowdetails&&!s.details.rowdetailshidden){l=s.details.rowdetailsheight;f+=l;q+=l}}t+=s.height+l}j++;if(j>=h||m==n-1){this._pageviews[o++]={top:p,height:f};f=0;p=t;j=0}}}else{if(this._updatepagedview){q=this._updatepagedview(n,q,0)}if(this.autoheight){this._arrange()}}var e=this._gettableheight();if(q>e){if(this.pageable&&this.gotopage){q=this._pageviews[0].height;if(q<0){q=this._pageviews[0].height}}if(this.vScrollBar.css("visibility")!="visible"){this.vScrollBar.css("visibility","visible")}if(q<=e||this.autoheight){this.vScrollBar.css("visibility","hidden")}if(q-e>0){if(this.scrollmode!="deferred"){var r=q-e;var g=this.vScrollInstance.max;this.vScrollBar.jqxScrollBar({max:r});if(r!=g){this.vScrollBar.jqxScrollBar({value:0})}}else{this.vScrollBar.jqxScrollBar({value:0,max:q})}}else{this.vScrollBar.jqxScrollBar({value:0,max:q})}}else{if(!this._loading){this.vScrollBar.css("visibility","hidden")}this.vScrollBar.jqxScrollBar({value:0})}this._arrange();if(this.autoheight){v=Math.round(this.host.height()/this.rowsheight)}this.virtualsizeinfo={visiblerecords:v,virtualheight:q}},updatebounddata:function(d){if(d!="data"&&d!="sort"&&d!="filter"&&d!="cells"&&d!="pagechanged"&&d!="pagesizechanged"&&!this.virtualmode){this.virtualsizeinfo=null;if(this.showfilterrow&&this.filterable&&this.filterrow){if(this.clearfilters){this.clearfilters(false)}this.filterrow.remove();this._filterrowcache=new Array();if(this.filterable&&this._destroyedfilters&&this.showfilterrow){this._destroyedfilters()}this.filterrow=null}else{if(this.filterable){if(this.clearfilters){this.clearfilters(false)}}}if(this.groupable){this.dataview.groups=[];this.groups=[]}if(this.pageable){this.pagenum=0;this.dataview.pagenum=0}if(this.sortable){this.sortcolumn=null;this.sortdirection="";this.dataview.sortfielddirection="";this.dataview.clearsortdata()}}this.databind(this.source,d)},refreshdata:function(){this._refreshdataview();this.render()},_updatevscrollbarmax:function(){if(this._pageviews&&this._pageviews.length>0){var f=this._pageviews[0].height;if(this.virtualmode||!this.pageable){f=this.virtualsizeinfo.virtualheight}var e=this._gettableheight();if(f>e){if(this.pageable&&this.gotopage){f=this._pageviews[0].height;if(f<0){f=this._pageviews[0].height}}if(this.vScrollBar.css("visibility")!="visible"){this.vScrollBar.css("visibility","visible")}if(f<=e||this.autoheight){this.vScrollBar.css("visibility","hidden")}if(f-e>0){var d=f-e;this.vScrollBar.jqxScrollBar({max:d})}else{this.vScrollBar.jqxScrollBar({value:0,max:f})}}else{this.vScrollBar.css("visibility","hidden");this.vScrollBar.jqxScrollBar({value:0})}}},_refreshdataview:function(){this.dataview.refresh()},refresh:function(d){if(d!=true){if(b.jqx.isHidden(this.host)){return}if(this.virtualsizeinfo!=null){this._cellscache=new Array();this._renderrows(this.virtualsizeinfo);this._updatesize()}}},render:function(){this._render(true,true,true,true)},invalidate:function(){if(this.virtualsizeinfo){this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo)}},clear:function(){this.databind(null);this.render()},_preparecolumngroups:function(){var o=this.columnsheight;if(this.columngroups){this.columnshierarchy=new Array();if(this.columngroups.length){var n=this;for(var h=0;h<this.columngroups.length;h++){this.columngroups[h].parent=null;this.columngroups[h].groups=null}for(var h=0;h<this.columns.records.length;h++){this.columns.records[h].parent=null;this.columns.records[h].groups=null}var p=function(j){for(var u=0;u<n.columngroups.length;u++){var v=n.columngroups[u];if(v.name===j){return v}}return null};for(var h=0;h<this.columngroups.length;h++){var q=this.columngroups[h];if(!q.groups){q.groups=null}if(q.parentgroup){var s=p(q.parentgroup);if(s){q.parent=s;if(!s.groups){s.groups=new Array()}if(s.groups.indexOf(q)===-1){s.groups.push(q)}}}}for(var h=0;h<this.columns.records.length;h++){var q=this.columns.records[h];if(q.columngroup){var s=p(q.columngroup);if(s){if(!s.groups){s.groups=new Array()}q.parent=s;if(s.groups.indexOf(q)===-1){s.groups.push(q)}}}}var r=0;for(var h=0;h<this.columns.records.length;h++){var q=this.columns.records[h];var e=q;q.level=0;while(e.parent){e=e.parent;q.level++}var e=q;var d=q.level;r=Math.max(r,q.level);while(e.parent){e=e.parent;if(e){e.level=--d}}}var m=function(y){var x=new Array();if(y.columngroup){x.push(y)}if(y.groups){for(var w=0;w<y.groups.length;w++){if(y.groups[w].columngroup){x.push(y.groups[w])}else{if(y.groups[w].groups){var v=m(y.groups[w]);for(var u=0;u<v.length;u++){x.push(v[u])}}}}}return x};for(var h=0;h<this.columngroups.length;h++){var q=this.columngroups[h];var f=m(q);q.columns=f;var k=new Array();var t=0;for(var g=0;g<f.length;g++){k.push(this.columns.records.indexOf(f[g]));if(f[g].pinned){t++}}if(t!=0){throw new Error("jqxGrid: Column Groups initialization Error. Please, check the initialization of the jqxGrid's columns array. The columns in a column group cannot be pinned.")}k.sort(function(j,i){j=parseInt(j);i=parseInt(i);if(j<i){return -1}if(j>i){return 1}return 0});for(var l=1;l<k.length;l++){if(k[l]!=k[l-1]+1){throw new Error("jqxGrid: Column Groups initialization Error. Please, check the initialization of the jqxGrid's columns array. The columns in a column group are expected to be siblings in the columns array.");this.host.remove()}}}}this.columngroupslevel=1+r;o=this.columngroupslevel*this.columnsheight}return o},_render:function(k,j,l,e,f){if(this.dataview==null){return}if(this._loading){return}if(this._batchupdate){return}if(b.jqx.isHidden(this.host)){var g=this;if(g.___hiddenTimer){clearInterval(g.___hiddenTimer);g.___hiddenTimer=null}this.___hiddenTimer=setInterval(function(){if(!b.jqx.isHidden(g.host)){clearInterval(g.___hiddenTimer);g.render()}},300);return}if(this.editcell!=null&&this.endcelledit){this.endcelledit(this.editcell.row,this.editcell.column,true,false)}this.validationpopup=null;this._removeHandlers();this._addHandlers();this._initializeRows();this._requiresupdate=j!=undefined?j:true;this._newmax=null;if(l){if(!this._requiresupdate){if(e!=false){this._initmenu()}}if(this.columns==null){this.columns=new b.jqx.collection(this.element)}else{var i=this;if(this.columns&&this.columns.name==="observableArray"){this.columns.notifier=function(p){var n=function(){i.columns=i._columns;i.render()};switch(p.type){case"add":n();break;case"update":if(p.name==="index"){i.beginupdate();for(var o in p.newValue){i.setcolumnproperty(p.newValue.datafield,o,p.newValue[o])}i.endupdate()}else{var m=p.path.split(".");i.setcolumnproperty(i.columns[m[0]].datafield,p.name,p.newValue)}break;case"delete":n();break}}}if(this.columngroups&&this.columngroups.name==="observableArray"){this.columngroups.notifier=function(m){i.render()}}this._initializeColumns()}}this.tableheight=null;this._pagescache=new Array();this._pageviews=new Array();this.visiblerows=new Array();this.hittestinfo=new Array();if(this._requiresupdate){this._clearcaches();if(e==true){this._initmenu()}}this.virtualsizeinfo=null;this.prerenderrequired=true;if((this.groupable&&this.groups.length>0&&this.rowdetails)||(this.rowdetails)){if(this.gridcontent){this._rowdetailscache=new Array();this._rowdetailselementscache=new Array();this.detailboundrows=new Array();this.details=new Array();b.jqx.utilities.html(this.gridcontent,"");this.gridcontent=null}}if(this.gridcontent){if(this.editable&&this._destroyeditors){this._destroyeditors()}}if(l){if(this.filterrow){this.filterrow.detach()}b.jqx.utilities.html(this.content,"");this.columnsheader=this.columnsheader||b('<div style="overflow: hidden;"></div>');this.columnsheader.remove();this.columnsheader.addClass(this.toTP("jqx-widget-header"));this.columnsheader.addClass(this.toTP("jqx-grid-header"))}else{if(this.gridcontent){b.jqx.utilities.html(this.gridcontent,"")}}if(!this.showheader){this.columnsheader.css("display","none")}else{if(this.columnsheader){this.columnsheader.css("display","block")}}this.gridcontent=this.gridcontent||b('<div style="width: 100%; overflow: hidden; position: absolute;"></div>');this.gridcontent.remove();var h=this.columnsheight;h=this._preparecolumngroups();if(this.showfilterrow&&this.filterable){this.columnsheader.height(h+this.filterrowheight);if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){this.columnsheader.height(h+this.filterrowheight+this.everpresentrowheight)}}else{if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){this.columnsheader.height(h+this.everpresentrowheight)}else{this.columnsheader.height(h)}}this.content.append(this.columnsheader);this.content.append(this.gridcontent);this._arrange();if(this._initgroupsheader){this._initgroupsheader()}this.selectionarea=this.selectionarea||b("<div style='z-index: 99999; visibility: hidden; position: absolute;'></div>");this.selectionarea.addClass(this.toThemeProperty("jqx-grid-selectionarea"));this.selectionarea.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.content.append(this.selectionarea);this.tableheight=null;this.rendergridcontent(false,l);if(this.groups.length>0&&this.groupable){var d=this.vScrollBar[0].style.visibility;this.suspendgroupevents=true;if(this.collapseallgroups){if(!this.groupsexpandedbydefault){this.collapseallgroups(false);this._updatescrollbarsafterrowsprerender()}else{this.expandallgroups(false)}}if(this.vScrollBar[0].style.visibility!=d){this._updatecolumnwidths();this._updatecellwidths()}this.suspendgroupevents=false}if(this.pageable&&this.updatepagerdetails){this.updatepagerdetails();if(this.autoheight){this._updatepageviews()}if(this.autorowheight){if(!this.autoheight){this._updatepageviews()}this._renderrows(this.virtualsizeinfo)}}if(this.showaggregates&&this._updateaggregates){this._updateaggregates()}this._addoverlayelement();if(this.scrollmode=="deferred"){this._addscrollelement()}if(this.showfilterrow&&this.filterable&&this.filterrow&&(f==undefined||f==true)){this._updatelistfilters(!l)}if(this.rendered){this.rendered("full")}this.__isRendered=true},_addoverlayelement:function(){if(this.autoheight){if(this._overlayElement){this._overlayElement.remove()}this._updateTouchScrolling();return}var d=b.jqx.utilities.getBrowser();if((d.browser=="msie"&&parseInt(d.version)<9)||this.isTouchDevice()){if(this._overlayElement){this._overlayElement.remove()}this._overlayElement=b("<div style='visibility: hidden; position: absolute; width: 100%; height: 100%;'></div>");this._overlayElement.css("background","white");this._overlayElement.css("z-index",18000);this._overlayElement.css("opacity",0.001);if(this.isTouchDevice()){if(this.vScrollBar.css("visibility")!=="hidden"||this.hScrollBar.css("visibility")!=="hidden"){var e=0;if(this.selectionmode=="checkbox"){e+=30}if(this.groupable||this.rowdetails){this._overlayElement.css("left",30*(this.groups.length+(this.rowdetails?1:0)))}var f=this._overlayElement.css("left");this._overlayElement.css("left",f+e)}else{if(this._overlayElement){this._overlayElement.remove()}}}else{this.content.prepend(this._overlayElement)}}this._updateTouchScrolling()},_addscrollelement:function(){if(this._scrollelement){this._scrollelement.remove()}if(this._scrollelementoverlay){this._scrollelementoverlay.remove()}this._scrollelementoverlay=b("<div style='visibility: hidden; position: absolute; width: 100%; height: 100%;'></div>");this._scrollelementoverlay.css("background","black");this._scrollelementoverlay.css("z-index",18000);this._scrollelementoverlay.css("opacity",0.1);this._scrollelement=b("<span style='visibility: hidden; top: 50%; right: 10px; position: absolute;'></span>");this._scrollelement.css("z-index",18005);this._scrollelement.addClass(this.toThemeProperty("jqx-button"));this._scrollelement.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._scrollelement.addClass(this.toThemeProperty("jqx-rc-all"));this._scrollelement.addClass(this.toThemeProperty("jqx-shadow"));this.content.prepend(this._scrollelement);this.content.prepend(this._scrollelementoverlay)},rendergridcontent:function(d,f){if(this.updating()){return false}if(d==undefined||d==null){d=false}this._requiresupdate=d;var h=this.prerenderrequired;if(this.prerenderrequired){this._arrange()}var g=this.that;var f=f;if(f==null||f==undefined){f=true}this.tableheight=null;g.virtualsizeinfo=g.virtualsizeinfo||g._calculatevirtualheight();if(g.pageable&&!g.autoheight){if(g.dataview.totalrows<g.pagesize){g._requiresupdate=true}}if(f){g._rendercolumnheaders()}else{if(this._rendersortcolumn){this._rendersortcolumn()}if(this._renderfiltercolumn){this._renderfiltercolumn()}}g._renderrows(g.virtualsizeinfo);if(this.gridcontent){if(this.gridcontent[0].scrollTop!=0){this.gridcontent[0].scrollTop=0}if(this.gridcontent[0].scrollLeft!=0){this.gridcontent[0].scrollLeft=0}}if(h){var e=this.tableheight;this._arrange();if(e!=this.tableheight&&this.autoheight){g._renderrows(g.virtualsizeinfo)}}if(this.rtl){this._renderhorizontalscroll()}if(this.autosavestate){if(this.initializedcall!=null){if(this.savestate){this.savestate()}}}return true},_updatecolumnwidths:function(){var l=this.host.width();var e=l;var j="";if(this.columns==undefined||this.columns.records==undefined){return}var n=this.that;var g=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;b.each(this.columns.records,function(p,q){if(!(this.hidden&&this.hideable)){if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){var q=0;var r=n.vScrollBar[0].style.visibility=="hidden"?0:n.scrollbarsize+5;if(n.scrollbarautoshow){r=0}var o=e;q=parseFloat(this.width)*o/100;r+=g;if(this._percentagewidth!=undefined){q=parseFloat(this._percentagewidth)*(o-r)/100}if(q<this.minwidth&&this.minwidth!="auto"){q=this.minwidth}if(q>this.maxwidth&&this.maxwidth!="auto"){q=this.maxwidth}l-=q}else{if(this.width!="auto"&&!this._width){l-=this.width}else{j+=this.text}}}});var f=this._gettableheight();if(!this.autoheight){if(this.virtualsizeinfo&&this.virtualsizeinfo.virtualheight>f){if(this.groupable&&this.groups.length>0){if(this.dataview&&this.dataview.loadedrootgroups&&!this.groupsexpandedbydefault){var m=this.dataview.loadedrootgroups.length*this.rowsheight;if(this.pageable){for(var d=0;d<this.dataview.rows.length;d++){if(this.dataview.rows[d].group&&this.dataview.rows[d].level===0){m+=this.rowsheight}}}if(m>f){l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}else{if(this.vScrollBar.css("visibility")=="visible"){l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}}}else{l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}}else{if(this.vScrollBar.css("visibility")!="hidden"){l-=this.scrollbarsize+5;e-=this.scrollbarsize+5}}}}var g=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;e-=g;if(!this.columnsheader){return}var i=this.columnsheader.find("#columntable"+this.element.id);if(i.length==0){return}var h=0;var k=this;b.each(this.columns.records,function(p,t){var r=b(this.element);if(!this.hidden&&this.element.style.display==="none"){this.element.style.display="block"}var o=false;var s=this.width;if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){s=parseFloat(this._percentagewidth)*e/100}else{s=parseFloat(this.width)*e/100}o=true}if(this.width!="auto"&&!this._width&&!o){if(parseInt(r[0].style.width)!=this.width){r.width(this.width)}}else{if(o){if(s<this.minwidth&&this.minwidth!="auto"){s=this.minwidth;this.width=s}if(s>this.maxwidth&&this.maxwidth!="auto"){s=this.maxwidth;this.width=s}if(parseInt(r[0].style.width)!=s){r.width(s);this.width=s}}else{var q=Math.floor(l*(this.text.length/j.length));if(isNaN(q)){q=this.minwidth}if(q==Infinity){q=0}if(q<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);q=10+$element.width();$element.remove()}if(q<this.minwidth){q=this.minwidth}if(q>this.maxwidth){q=this.maxwidth}this._width="auto";this.width=q;r.width(this.width)}}if(parseInt(r[0].style.left)!=h){r.css("left",h)}if(!(this.hidden&&this.hideable)){h+=this.width}this._requirewidthupdate=true});this.columnsheader.width(2+h);i.width(this.columnsheader.width());if(h==0){this.columnsheader[0].style.visibility="hidden"}else{this.columnsheader[0].style.visibility="inherit"}this._resizecolumngroups();if(this.showfilterrow&&this.filterrow){this.filterrow.width(this.columnsheader.width());this._updatefilterrowui()}if(this.showeverpresentrow){if(this.everpresentrowposition!=="bottom"){this.addnewrowtop.width(this.columnsheader.width())}else{this.addnewrowbottom.width(this.columnsheader.width())}this._updateaddnewrowui()}if(this.autowidth){this._arrange()}},_rendercolumnheaders:function(){var x=this.that;if(!this.prerenderrequired){if(this._rendersortcolumn){this._rendersortcolumn()}if(this._renderfiltercolumn){this._renderfiltercolumn()}if(this.showfilterrow&&this.filterrow){this.filterrow.width(this.columnsheader.width());this._updatefilterrowui()}if(this.showeverpresentrow){if(this.everpresentrowposition!=="bottom"){this.addnewrowtop.width(this.columnsheader.width())}else{this.addnewrowbottom.width(this.columnsheader.width())}this._updateaddnewrowui()}return}this._columnsbydatafield=new Array();this.columnsheader.find("#columntable"+this.element.id).remove();var o=b('<div id="columntable'+this.element.id+'" style="height: 100%; position: relative;"></div>');o[0].cells=new Array();var A=0;var h=0;var u="";var F=this.host.width();var s=F;var g=new Array();var z=new Array();var t=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;b.each(this.columns.records,function(j,k){if(!(this.hidden&&this.hideable)){if(this.width!="auto"&&!this._width){if(this.width<this.minwidth&&this.minwidth!="auto"){F-=this.minwidth}else{if(this.width>this.maxwidth&&this.maxwidth!="auto"){F-=this.maxwidth}else{if(this.width.toString().indexOf("%")!=-1){var k=0;var p=x.vScrollBar[0].style.visibility=="hidden"?0:x.scrollbarsize+5;p+=t;k=parseFloat(this.width)*(s-p)/100;if(k<this.minwidth&&this.minwidth!="auto"){k=this.minwidth}if(k>this.maxwidth&&this.maxwidth!="auto"){k=this.maxwidth}F-=k}else{if(typeof this.width=="string"){this.width=parseInt(this.width)}F-=this.width}}}}else{u+=this.text}}if(this.pinned||this.grouped||this.checkboxcolumn){if(x._haspinned){this.pinned=true}g[g.length]=this}else{z[z.length]=this}});if(!this.rtl){for(var C=0;C<g.length;C++){this.columns.replace(C,g[C])}for(var B=0;B<z.length;B++){this.columns.replace(g.length+B,z[B])}}else{var y=0;g.reverse();for(var C=this.columns.records.length-1;C>=this.columns.records.length-g.length;C--){this.columns.replace(C,g[y++])}for(var B=0;B<z.length;B++){this.columns.replace(B,z[B])}}var n=this.headerZIndex;var r=x.groupable?x.groups.length:0;if(this.rowdetails&&this.showrowdetailscolumn){r++}var l=x.columnsheader.height();if(this.showfilterrow){if(!this.columngroups){l=this.columnsheight}else{l-=this.filterrowheight}}if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){l-=this.everpresentrowheight}var v=this._gettableheight();if(this.virtualsizeinfo&&this.virtualsizeinfo.virtualheight>v&&!this.scrollbarautoshow){if(this.groupable&&this.groups.length>0){if(this.dataview&&this.dataview.loadedrootgroups&&!this.groupsexpandedbydefault){var D=0;if(!this.pageable){var D=this.dataview.loadedrootgroups.length*this.rowsheight}else{if(this.pageable){for(var w=0;w<this.dataview.rows.length;w++){if(this.dataview.rows[w].group&&this.dataview.rows[w].level===0){D+=this.rowsheight}}}}if(D>v){F-=this.scrollbarsize+5;s-=this.scrollbarsize+5}}else{F-=this.scrollbarsize+5;s-=this.scrollbarsize+5}}else{if(!this.autoheight){F-=this.scrollbarsize+5;s-=this.scrollbarsize+5}}}s-=t;var d=function(j,k){var i=x.columngroupslevel*x.columnsheight;i=i-(k.level*x.columnsheight);return i};var f=document.createDocumentFragment();b.each(this.columns.records,function(V,T){this.height=x.columnsheight;if(x.columngroups){if(x.columngroups.length){this.height=d(this.datafield,this);l=this.height}}var Z=x.toTP("jqx-grid-column-header")+" "+x.toTP("jqx-widget-header");if(x.rtl){Z+=" "+x.toTP("jqx-grid-column-header-rtl")}var X=!x.rtl?150+n-1:150+n+1;var R=!x.rtl?n--:n++;var G=b('<div role="columnheader" style="z-index: '+R+';position: absolute; height: 100%;" class="'+Z+'"><div style="height: 100%; width: 100%;"></div></div>');if(x.columngroups){G[0].style.height=l+"px";G[0].style.bottom="0px";if(this.pinned){G[0].style.zIndex=X}}this.uielement=G;if(this.classname!=""&&this.classname){G.addClass(this.classname)}var O=this.width;var P=false;if(this.width===null){this.width="auto"}if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){O=parseFloat(this._percentagewidth)*s/100}else{O=parseFloat(this.width)*s/100}P=true}if(this.width!="auto"&&!this._width&&!P){if(O<this.minwidth&&this.minwidth!="auto"){O=this.minwidth;this.width=O}if(O>this.maxwidth&&this.maxwidth!="auto"){O=this.maxwidth;this.width=O}G[0].style.width=parseInt(O)+"px"}else{if(P){if(O<this.minwidth&&this.minwidth!="auto"){O=this.minwidth}if(O>this.maxwidth&&this.maxwidth!="auto"){O=this.maxwidth}if(this._percentagewidth==undefined||this.width.toString().indexOf("%")!=-1){this._percentagewidth=this.width}G.width(O);this.width=O}else{if(!this.hidden){var S=Math.floor(F*(this.text.length/u.length));if(isNaN(S)){S=this.minwidth}if(S<0){$element=b("<span>"+this.text+"</span>");b(document.body).append($element);S=10+$element.width();$element.remove()}if(S<this.minwidth){S=this.minwidth}if(S>this.maxwidth){S=this.maxwidth}this._width="auto";this.width=S;O=this.width;G.width(this.width)}}}if(this.hidden&&this.hideable){G.css("display","none")}var p=b(G.children()[0]);var W=x.rtl?x.toTP("jqx-grid-column-menubutton")+" "+x.toTP("jqx-grid-column-menubutton-rtl"):x.toTP("jqx-grid-column-menubutton");W+=" "+x.toTP("jqx-icon-arrow-down");var J=b('<div style="height: '+l+'px; display: none; left: 100%; top: 0%; position: absolute;"><div class="'+W+'" style="width: 100%; height:100%;"></div></div>');if(!x.enableanimations){J.css("margin-left",-16)}if(x.rtl){J.css("left","0px")}this.columnsmenu=J[0];o[0].cells[V]=G[0];J[0].style.width=parseInt(x.columnsmenuwidth)+"px";var I=x.columnsmenu;var q=false;var U=false;var Q=(x.groupable&&r>0&&A<r)||(x.rowdetails&&A<r);if(x.rtl){Q=(x.groupable&&r>0&&A<r)||(x.rowdetails&&A<r);Q&=V>x.columns.records.length-1-r}if(Q){A++;I&=false;this.sortable=false;this.editable=false;U=true}else{var L=this.renderer!=null?this.renderer(this.text,this.align,l):x._rendercolumnheader(this.text,this.align,l,x);if(L==null){L=x._rendercolumnheader(this.text,this.align,l,x)}if(this.renderer!=null){L=b(L)}I&=true;q=true}if(x.WinJS){MSApp.execUnsafeLocalFunction(function(){p.append(b(L))})}else{if(this.renderer){p.append(b(L))}else{if(L){p[0].innerHTML=L}}}if(L!=null){var N=b('<div class="iconscontainer" style="height: '+l+'px; margin-left: -32px; display: block; position: absolute; left: 100%; top: 0%; width: 32px;"><div class="filtericon '+x.toTP("jqx-widget-header")+'" style="height: '+l+'px; float: right; display: none; width: 16px;"><div class="'+x.toTP("jqx-grid-column-filterbutton")+'" style="width: 100%; height:100%;"></div></div><div class="sortasc '+x.toTP("jqx-widget-header")+'" style="height: '+l+'px; float: right; display: none; width: 16px;"><div class="'+x.toTP("jqx-grid-column-sortascbutton")+" "+x.toTP("jqx-icon-arrow-up")+'" style="width: 100%; height:100%;"></div></div><div class="sortdesc '+x.toTP("jqx-widget-header")+'" style="height: '+l+'px; float: right; display: none; width: 16px;"><div class="'+x.toTP("jqx-grid-column-sortdescbutton")+" "+x.toTP("jqx-icon-arrow-down")+'" style="width: 100%; height:100%;"></div></div></div>');J.addClass(x.toTP("jqx-widget-header"));p.append(N);var aa=N.children();this.sortasc=aa[1];this.sortdesc=aa[2];this.filtericon=aa[0];this.iconscontainer=N;if(x.rtl){N.css("margin-left","0px");N.css("left","0px");b(this.sortasc).css("float","left");b(this.filtericon).css("float","left");b(this.sortdesc).css("float","left")}if(!x.autoshowfiltericon&&this.filterable){b(this.filtericon).css("display","block")}}this.element=G[0];if(I){x._handlecolumnsmenu(x,p,G,J,this);if(!this.menu){J.hide()}}f.appendChild(G[0]);if(x.groupable&&q){G[0].id=x.dataview.generatekey();if(x._handlecolumnstogroupsdragdrop){x._handlecolumnstogroupsdragdrop(this,G)}else{throw new Error("jqxGrid: Missing reference to jqxgrid.grouping.js.")}}if(x.columnsreorder&&this.draggable&&x._handlecolumnsdragreorder){x._handlecolumnsdragreorder(this,G)}var Y=this;x.addHandler(G,"click",function(i){if(Y.checkboxcolumn){return true}if(x.sorttogglestates>0&&x._togglesort){if(!x._loading){if(x.suspendClick){return true}x._togglesort(Y)}}i.preventDefault();x._raiseEvent(7,{column:Y.getcolumnproperties(),datafield:Y.datafield,originalEvent:i})});if(Y.resizable&&x.columnsresize&&!U){var H=false;var j="mousemove";if(x.isTouchDevice()&&x.touchmode!==true){H=true;j=b.jqx.mobile.getTouchEventName("touchstart")}x.addHandler(G,j,function(ab){var i=parseInt(ab.pageX);var ad=5;var ag=parseInt(G.coord().left);if(x.hasTransform){ag=b.jqx.utilities.getOffset(G).left}if(x.resizing){return true}if(x._handlecolumnsresize){if(H){var ac=x.getTouches(ab);var af=ac[0];i=af.pageX;ad=40;if(i>=ag+Y.width-ad){x.resizablecolumn={columnelement:G,column:Y};G.css("cursor","col-resize")}else{G.css("cursor","");x.resizablecolumn=null}return true}var ae=Y.width;if(x.rtl){ae=0}if(i>=ag+ae-ad){if(i<=ag+ae+ad){x.resizablecolumn={columnelement:G,column:Y};G.css("cursor","col-resize");return false}else{G.css("cursor","");x.resizablecolumn=null}}else{G.css("cursor","");if(i<ag+ae-ad){if(!Y._animating&&!Y._menuvisible){G.mouseenter()}}x.resizablecolumn=null}}})}G.css("left",h);if(!(this.hidden&&this.hideable)){h+=O}if(Y.rendered){var M=Y.rendered(b(p[0].firstChild),Y.align,l);if(M&&N!=null){N.hide()}}if(Y.checkboxcolumn){if(N){N.hide()}if(!x.host.jqxCheckBox){throw new Error("jqxGrid: Missing reference to jqxcheckbox.js")}p.html('<div style="cursor: pointer; margin-left: 5px; top: 50%; margin-top: -8px; position: relative;"></div>');var k=p.find("div:first");k.jqxCheckBox({_canFocus:false,disabled:x.disabled,disabledContainer:true,theme:x.theme,enableContainerClick:false,width:16,height:16,animationShowDelay:0,animationHideDelay:0});Y.checkboxelement=k;var K=k.data().jqxCheckBox.instance;x._checkboxcolumn=Y;K.updated=function(ab,i,ac){x._checkboxcolumnupdating=true;if(x.disabled){k.jqxCheckBox({disabled:x.disabled});i=ac}if(i){x.selectallrows()}else{x.unselectallrows()}x._checkboxcolumnupdating=false}}});if(h>0){this.columnsheader.width(2+h)}else{this.columnsheader.width(h)}o[0].appendChild(f);this.columnsrow=o;x.columnsheader.append(o);if(this.showfilterrow&&this._updatefilterrow){if(!this.columngroups){o.height(this.columnsheight)}else{o.height(this.columngroupslevel*this.columnsheight)}if(!this.filterrow){var E=b("<div style='position: relative !important; '></div>");E[0].id="filterrow."+this.element.id;E.height(this.filterrowheight);this.filterrow=E}this.filterrow.width(2+h);this.columnsheader.append(this.filterrow);this._updatefilterrow()}if(this.showeverpresentrow&&this.everpresentrowposition!=="bottom"){if(!this.columngroups){o.height(this.columnsheight)}else{o.height(this.columngroupslevel*this.columnsheight)}if(!this.addnewrowtop){var m=b("<div style='position: relative !important; z-index:"+this.headerZIndex+";'></div>");m[0].id="addnewrowtop."+this.element.id;m.height(this.everpresentrowheight);this.addnewrowtop=m}this.addnewrowtop.width(2+h);if(this.everpresentrowposition=="topAboveFilterRow"){if(this.filterrow){this.addnewrowtop.insertBefore(this.filterrow)}else{this.columnsheader.append(this.addnewrowtop)}}else{this.columnsheader.append(this.addnewrowtop)}this._updateaddnewrow()}else{if(this.showeverpresentrow&&this.everpresentrowposition==="bottom"){if(!this.addnewrowbottom){var e=b("<div style='position: relative !important; z-index:"+this.headerZIndex+";'></div>");e[0].id="addnewrowbottom."+this.element.id;e.height(this.everpresentrowheight);this.addnewrowbottom=e}this.addnewrowbottom.width(2+h);this.addnewrow.append(this.addnewrowbottom);this._updateaddnewrow()}}if(h==0){o[0].style.visibility="hidden"}else{o[0].style.visibility="inherit"}o.width(h);if(this._handlecolumnsdragdrop){this._handlecolumnsdragdrop()}if(this._handlecolumnsreorder){this._handlecolumnsreorder()}if(this._rendersortcolumn){this._rendersortcolumn()}if(this._renderfiltercolumn){this._renderfiltercolumn()}if(this._handlecolumnsresize){this._handlecolumnsresize()}if(this.columngroups){this._rendercolumngroups()}if(this._updatecheckboxselection){this._updatecheckboxselection()}},_rendercolumngroups:function(){if(!this.columngroups){return}var p=0;for(var m=0;m<this.columns.records.length;m++){if(this.columns.records[m].pinned){p++}}var u=this.headerZIndex-p+this.columns.records.length;var v=this.that;var h=v.toTP("jqx-grid-column-header")+" "+v.toTP("jqx-grid-columngroup-header")+" "+v.toTP("jqx-widget-header");if(v.rtl){h+=" "+v.toTP("jqx-grid-columngroup-header-rtl")}var f=this.columnsheader.find("#columntable"+this.element.id);f.find("jqx-grid-columngroup-header").remove();for(var k=0;k<this.columngroupslevel-1;k++){for(var m=0;m<this.columngroups.length;m++){var r=this.columngroups[m];var d=r.level;if(d!==k){continue}var q=d*this.columnsheight;var e=99999;if(r.groups){var t=function(y){var x=0;for(var w=0;w<y.groups.length;w++){var i=y.groups[w];if(!i.groups){if(!i.hidden){x+=i.width;e=Math.min(parseFloat(i.element.style.left),e)}}else{x+=t(i)}}return x};r.width=t(r);r.left=e;var s=this.columnsheight;var n=u--;var g=b('<div role="columnheader" style="z-index: '+n+';position: absolute;" class="'+h+'"></div>');var l=b(this._rendercolumnheader(r.text,r.align,this.columnsheight,this));if(r.renderer){var l=b("<div style='height: 100%; width: 100%;'></div>");var o=r.renderer(r.text,r.align,s);l.html(o)}g.append(l);g[0].style.left=e+"px";if(e===0){g[0].style.borderLeftColor="transparent"}g[0].style.top=q+"px";g[0].style.height=s+"px";g[0].style.width=-1+r.width+"px";f.append(g);r.element=g;if(r.rendered){r.rendered(l,r.align,s)}}}}},_resizecolumngroups:function(){if(!this.columngroups){return}for(var e=0;e<this.columngroups.length;e++){var k=this.columngroups[e];var l=k.level;var j=l*this.columnsheight;var h=99999;if(k.groups){var g=function(o){var n=0;for(var m=0;m<o.groups.length;m++){var i=o.groups[m];if(!i.groups){if(!i.hidden){n+=i.width;h=Math.min(parseFloat(i.element.style.left),h)}}else{n+=g(i)}}return n};k.width=g(k);k.left=h;var d=this.columnsheight;var f=k.element;f[0].style.left=h+"px";f[0].style.top=j+"px";f[0].style.height=d+"px";f[0].style.width=-1+k.width+"px"}}},_handlecolumnsmenu:function(p,g,h,k,m){p.dragmousedown=null;k[0].id=p.dataview.generatekey();g.append(k);h[0].columnsmenu=k[0];m.element=h[0];var l=this.columnsmenuwidth+1;var o=function(){if(!m.menu){return false}if(!p.resizing){if(m._menuvisible&&p._hasOpenedMenu){return false}m._animating=true;if(p.menuitemsarray&&p.menuitemsarray.length>0){if(!p.enableanimations){k.css("display","block");var q=!p.rtl?-48:16;m.iconscontainer.css("margin-left",q+"px");m._animating=false;m._menuvisible=true}else{k.css("display","block");k.stop();m.iconscontainer.stop();if(!p.rtl){k.css("margin-left","0px");k.animate({"margin-left":-l},"fast",function(){k.css("display","block");m._animating=false;m._menuvisible=true})}else{k.css("margin-left",-l);k.animate({"margin-left":"0px"},"fast",function(){k.css("display","block");m._animating=false;m._menuvisible=true})}var q=!p.rtl?-(32+l):l;m.iconscontainer.animate({"margin-left":q},"fast")}}}};var f="mouseenter";if(p.isTouchDevice()){f="touchstart"}p.addHandler(h,f,function(r){var q=parseInt(r.pageX);var t=p.columnsresize&&m.resizable?3:0;var v=parseInt(h.coord().left);if(p.hasTransform){v=b.jqx.utilities.getOffset(h).left}var u=m.width;if(p.rtl){u=0}if(t!=0){if(q>=v+u-t){if(q<=v+u+t){return false}}}var s=p.vScrollInstance.isScrolling();if(m.menu&&p.autoshowcolumnsmenubutton&&!s&&!p.disabled){o()}});if(!p.autoshowcolumnsmenubutton){k.css("display","block");var e=!p.rtl?-48:16;m.iconscontainer.css("margin-left",e+"px");if(!p.rtl){k.css({"margin-left":-l})}else{k.css({"margin-left":"0px"})}}p.addHandler(h,"mouseleave",function(q){if(p.menuitemsarray&&p.menuitemsarray.length>0&&m.menu){var s=b.data(document.body,"contextmenu"+p.element.id);if(s!=undefined&&k[0].id==s.columnsmenu.id){return}if(p.autoshowcolumnsmenubutton){if(!p.enableanimations){k.css("display","none");var r=!p.rtl?-32:0;m.iconscontainer.css("margin-left",r+"px");m._menuvisible=false}else{if(!p.rtl){k.css("margin-left",-l)}else{k.css("margin-left","0px")}k.stop();m.iconscontainer.stop();if(!p.rtl){k.animate({"margin-left":0},"fast",function(){k.css("display","none");m._menuvisible=false})}else{k.animate({"margin-left":-l},"fast",function(){k.css("display","none");m._menuvisible=false})}var r=!p.rtl?-32:0;m.iconscontainer.animate({"margin-left":r},"fast")}}}});var j=true;var d="";var i=b(m.filtericon);p.addHandler(k,"mousedown",function(q){if(!p.gridmenu){p._initmenu()}j=!b.data(p.gridmenu[0],"contextMenuOpened"+p.gridmenu[0].id);d=b.data(document.body,"contextmenu"+p.element.id);if(d!=null){d=d.column.datafield}});p.addHandler(i,"mousedown",function(q){if(!p.gridmenu){p._initmenu()}j=!b.data(p.gridmenu[0],"contextMenuOpened"+p.gridmenu[0].id);d=b.data(document.body,"contextmenu"+p.element.id);if(d!=null){d=d.column.datafield}});var n=function(){if(!m.menu){return false}if(!p.gridmenu){p._initmenu()}if(p.disabled){return false}for(var v=0;v<p.columns.records.length;v++){if(p.columns.records[v].datafield!=m.datafield){p.columns.records[v]._menuvisible=false}}var t=k.coord(true);var A=k.height();if(!j){j=true;if(d==m.datafield){p._closemenu();return false}}var x=p.host.coord(true);if(p.hasTransform){x=b.jqx.utilities.getOffset(p.host);t=b.jqx.utilities.getOffset(k)}if(x.left+p.host.width()>parseInt(t.left)+p.gridmenu.width()){p.gridmenu.jqxMenu("open",t.left,t.top+A)}else{p.gridmenu.jqxMenu("open",k.width()+t.left-p.gridmenu.width(),t.top+A)}if(p.gridmenu.width()<100){p._arrangemenu()}p._hasOpenedMenu=true;var y=p._getmenuitembyindex(0);var r=p._getmenuitembyindex(1);var C=p._getmenuitembyindex(2);var z=p._getmenuitembyindex(3);var q=p._getmenuitembyindex(4);var D=p._getmenuitembyindex(5);if(y!=null&&r!=null&&C!=null){var u=m.sortable&&p.sortable;p.gridmenu.jqxMenu("disable",y.id,!u);p.gridmenu.jqxMenu("disable",r.id,!u);p.gridmenu.jqxMenu("disable",C.id,!u);if(m.displayfield!=undefined){if(p.sortcolumn==m.displayfield){var w=p.getsortinformation();if(u){if(w.sortdirection.ascending){p.gridmenu.jqxMenu("disable",y.id,true)}else{p.gridmenu.jqxMenu("disable",r.id,true)}}}else{p.gridmenu.jqxMenu("disable",C.id,true)}}}if(z!=null&&q!=null){if(!p.groupable||!m.groupable){p.gridmenu.jqxMenu("disable",q.id,true);p.gridmenu.jqxMenu("disable",z.id,true)}else{if(p.groups&&p.groups.indexOf(m.datafield)!=-1){p.gridmenu.jqxMenu("disable",z.id,true);p.gridmenu.jqxMenu("disable",q.id,false)}else{p.gridmenu.jqxMenu("disable",z.id,false);p.gridmenu.jqxMenu("disable",q.id,true)}}}if(D!=null){p.menuOwner=m;p._updatefilterpanel(p,D,m);var s=0;if(p.sortable&&p._togglesort&&p.showsortmenuitems){s+=3}if(p.groupable&&p.addgroup&&p.showgroupmenuitems){s+=2}var B=s*27+3;if(b.jqx.browser.msie&&b.jqx.browser.version<8){B+=20;b(D).height(190)}if(p.filterable&&p.showfiltermenuitems){if(!m.filterable){p.gridmenu.height(B);b(D).css("display","none")}else{p.gridmenu.height(B+180);b(D).css("display","block")}}}if(p.columnmenuopening){var E=p.columnmenuopening(p.gridmenu,m.displayfield,p.gridmenu.height());if(false===E){p._closemenu()}}b.data(document.body,"contextmenu"+p.element.id,{column:m,columnsmenu:k[0]})};p.addHandler(i,"click",function(q){if(!m.menu){return false}if(!p.showfilterrow){if(k[0].style.display!="block"){h.trigger("mouseenter")}setTimeout(function(){if(k[0].style.display!="block"){h.trigger("mouseenter")}n()},200)}return false});p.addHandler(k,"click",function(q){if(!m.menu){return false}n();return false});if(p.isTouchDevice()){p.addHandler(k,b.jqx.mobile.getTouchEventName("touchstart"),function(q){if(!m.menu){return false}if(!p._hasOpenedMenu){n()}else{p._closemenu()}return false})}},_removecolumnhandlers:function(h){var e=this.that;var f=b(h.element);if(f.length>0){e.removeHandler(f,"mouseenter");e.removeHandler(f,"mouseleave");var g=b(h.filtericon);e.removeHandler(g,"mousedown");e.removeHandler(g,"click");e.removeHandler(f,"click");e.removeHandler(f,"mousemove");if(e.columnsreorder){e.removeHandler(f,"mousedown.drag");e.removeHandler(f,"mousemove.drag")}e.removeHandler(f,"dragstart");if(f[0].columnsmenu){var d=b(f[0].columnsmenu);e.removeHandler(d,"click");e.removeHandler(d,"mousedown");e.removeHandler(d,b.jqx.mobile.getTouchEventName("touchstart"))}}},_rendercolumnheader:function(h,i,e,d){var g="4px";if(d.columngroups){g=(e/2-this._columnheight/2);if(g<0){g=4}g+="px"}else{if(this.columnsheight!=25){g=(this.columnsheight/2-this._columnheight/2);if(g<0){g=4}g+="px"}}if(this.enableellipsis){return'<div style="padding-bottom: 2px; overflow: hidden; text-overflow: ellipsis; text-align: '+i+"; margin-left: 4px; margin-right: 2px; margin-bottom: "+g+"; margin-top: "+g+';"><span style="text-overflow: ellipsis; cursor: default;">'+h+"</span></div>"}if(i=="center"||i=="middle"){return'<div style="padding-bottom: 2px; text-align: center; margin-top: '+g+';"><a href="#">'+h+"</a></div>"}var f='<a style="margin-top: '+g+"; float: "+i+';" href="#">'+h+"</a>";return f},_renderrows:function(f,h,l){var r=this.that;if((this.pageable||this.groupable)&&(this.autoheight||this.autorowheight)){if(this.table!=null&&this.table[0].rows!=null&&this.table[0].rows.length<this.dataview.rows.length){r.prerenderrequired=true}}if(!this.pageable&&(this.autoheight||this.autorowheight)&&(this.virtualmode||this.unboundmode)){var p=this.source.totalrecords;if(!isNaN(p)){if(this.table!=null&&this.table[0].rows!=null&&this.table[0].rows.length!=p){r.prerenderrequired=true}}}if((this.autoheight||this.autorowheight)&&!r.prerenderrequired){if(this.table&&this.table[0].rows){if(this.table[0].rows.length<this.dataview.records.length){if(this.pageable&&this.table[0].rows.length<this.dataview.pagesize){r.prerenderrequired=true}else{if(!this.pageable){r.prerenderrequired=true}}}if(this.table[0].rows.length<this.dataview.cachedrecords.length){if(this.pageable&&this.table[0].rows.length<this.dataview.pagesize){r.prerenderrequired=true}else{if(!this.pageable){r.prerenderrequired=true}}}}}r._prerenderrows(f);if(r._requiresupdate){r._requiresupdate=false;r._updatepageviews()}var q=function(){if(r._loading){return}if(r.WinJS){MSApp.execUnsafeLocalFunction(function(){r._rendervisualrows()})}else{r._rendervisualrows()}if(r.virtualmode&&r.showaggregates&&r._updateaggregates){r.refreshaggregates()}};var t=b.jqx.browser.msie&&b.jqx.browser.version<10;if(this.virtualmode){var i=function(){if(r.rendergridrows){var w=r._startboundindex;if(w==undefined){w=0}var u=w+1+r.dataview.pagesize;if(w!=null&&u!=null){var v=r.source._source?true:false;var x=!v?r.source.recordstartindex:r.source._source.recordstartindex;if(x!=w||h==true){if(!v){r.source.recordstartindex=w;r.source.recordendindex=u}else{if(u>=r.source._source.totalrecords){u=r.source._source.totalrecords;w=u-r.dataview.pagesize-1;if(w<0){w=0}if(r.source._source.recordendindex==u&&r.source._source.recordstartindex==w){return}}r.source._source.recordstartindex=w;r.source._source.recordendindex=u}r.updatebounddata("cells")}}}};if(this.loadondemand){q();i();this.loadondemand=false}var j=this._browser==undefined?this._isIE10():this._browser;if(this.editable&&this.editcell&&!this.vScrollInstance.isScrolling()&&!this.hScrollInstance.isScrolling()){q()}else{if(this.autoheight){q()}else{if(j||t||(navigator&&navigator.userAgent.indexOf("Safari")!=-1)){if(this._scrolltimer!=null){clearTimeout(this._scrolltimer)}this._scrolltimer=setTimeout(function(){q()},5)}else{q()}}}}else{if(this.scrollmode=="deferred"&&(this.hScrollInstance.isScrolling()||this.vScrollInstance.isScrolling())){if(this._scrolltimer!=null){clearInterval(this._scrolltimer)}var s=this._getfirstvisualrow();if(s!=null){var m=function(z){if(s==null){return""}var y="<table>";var w=r.deferreddatafields;if(w==null){if(r.columns.records.length>0){w=new Array();w.push(r.columns.records[0].displayfield)}}for(var v=0;v<w.length;v++){var A=w[v];var x=r._getcolumnbydatafield(A);if(x){var u=r._getcellvalue(x,s);if(x.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(u)){u=b.jqx.dataFormat.formatdate(u,x.cellsformat,r.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(u)){u=b.jqx.dataFormat.formatnumber(u,x.cellsformat,r.gridlocalization)}}}}y+="<tr><td>"+u+"</td></tr>"}}y+="</table>";return y};var k=this.scrollfeedback?this.scrollfeedback(s.bounddata):m(s.bounddata);if(k!=this._scrollelementcontent){this._scrollelement[0].innerHTML=k;this._scrollelementcontent=k}}this._scrollelement.css("visibility","visible");this._scrollelementoverlay.css("visibility","visible");this._scrollelement.css("margin-top",-this._scrollelement.height()/2);this._scrolltimer=setInterval(function(){if(!r.hScrollInstance.isScrolling()&&!r.vScrollInstance.isScrolling()){q();r._scrollelement.css("visibility","hidden");r._scrollelementoverlay.css("visibility","hidden");clearInterval(r._scrolltimer);if(s){r.ensurerowvisible(s.visibleindex)}}},100);return}if(navigator&&navigator.userAgent.indexOf("Chrome")==-1&&navigator.userAgent.indexOf("Safari")!=-1){this._updatedelay=1}if(this.touchDevice!=undefined&&this.touchDevice==true){this._updatedelay=5}var j=this._browser==undefined?this._isIE10():this._browser;if(j||t){this._updatedelay=5}if((j)&&this.hScrollInstance.isScrolling()){q();return}if(b.jqx.browser.mozilla&&this._updatedelay==0&&(this.vScrollInstance.isScrolling()||this.hScrollInstance.isScrolling())){this._updatedelay=0}if(this.updatedelay!=null){this._updatedelay=this.updatedelay}if(this._updatedelay==0){q()}else{var d=this._jqxgridrendertimer;if(d!=null){clearTimeout(d)}if(this.vScrollInstance.isScrolling()||this.hScrollInstance.isScrolling()){if(this._updatedelay){d=setTimeout(function(){q()},this._updatedelay)}else{d=null;q()}this._jqxgridrendertimer=d}else{this._jqxgridrendertimer=d;q()}}}if(r.autorowheight&&!r.autoheight){if(this._pageviews.length>0){var e=this._gettableheight();var n=this._pageviews[0].height;if(n>e){if(this.pageable&&this.gotopage){n=this._pageviews[0].height;if(n<0){n=this._pageviews[0].height}}if(this.vScrollBar.css("visibility")!="visible"){this.vScrollBar.css("visibility","visible")}if(n<=e||this.autoheight){this.vScrollBar.css("visibility","hidden")}if(n-e>0){if(this.scrollmode!="deferred"){var o=n-e;var g=this.vScrollInstance.max;this.vScrollBar.jqxScrollBar({max:o});if(Math.round(o)!=Math.round(g)){this.vScrollBar.jqxScrollBar({value:0})}}}else{this.vScrollBar.jqxScrollBar({value:0,max:n})}}else{if(!this._loading){this.vScrollBar.css("visibility","hidden")}this.vScrollBar.jqxScrollBar({value:0})}this._arrange();if(this.virtualsizeinfo){this.virtualsizeinfo.virtualheight=n}}}},scrolling:function(){var e=this.vScrollInstance.isScrolling();var d=this.hScrollInstance.isScrolling();return{vertical:e,horizontal:d}},_renderhorizontalscroll:function(){var t=this.hScrollInstance;var u=t.value;if(this.hScrollBar.css("visibility")==="hidden"){t.value=0;u=0}var k=parseInt(u);if(this.table==null){return}var q=this.table[0].rows.length;var p=this.columnsrow;var r=this.groupable&&this.groups.length>0?this.groups.length:0;var l=this.columns.records.length-r;var f=this.columns.records;var n=this.dataview.rows.length==0;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){k=t.max-k}}if(n&&!this._haspinned){for(var w=0;w<q;w++){var s=this.table[0].rows[w];for(var v=0;v<r+l;v++){var d=s.cells[v];if(d!=undefined){var g=f[v];if(g.pinned){d.style.marginLeft=k+"px";if(w==0){var e=p[0].cells[v];e.style.marginLeft=k+"px"}}}}}this.table[0].style.marginLeft=-k+"px";p[0].style.marginLeft=-k+"px"}else{if(this._haspinned||this._haspinned==undefined){for(var w=0;w<q;w++){var s=this.table[0].rows[w];for(var v=0;v<r+l;v++){var d=s.cells[v];if(d!=undefined){var g=f[v];if(g.pinned){if(k==0&&d.style.marginLeft==""){continue}var h=null;var x=null;var o=null;if(this.showeverpresentrow&&this.addnewrowtop){if(this.addnewrowtop[0].cells){o=this.addnewrowtop[0].cells[v]}}if(this.showfilterrow&&this.filterrow){if(this.filterrow[0].cells){x=this.filterrow[0].cells[v]}}if(this.showaggregates){if(this.statusbar[0].cells){h=this.statusbar[0].cells[v]}}if(!this.rtl){d.style.marginLeft=k+"px";if(w==0){var e=p[0].cells[v];e.style.marginLeft=k+"px";if(h){h.style.marginLeft=k+"px"}if(x){x.style.marginLeft=k+"px"}if(o){o.style.marginLeft=k+"px"}}}else{d.style.marginLeft=-parseInt(u)+"px";if(w==0){var e=p[0].cells[v];e.style.marginLeft=-parseInt(u)+"px";if(h){h.style.marginLeft=-parseInt(u)+"px"}if(x){x.style.marginLeft=-parseInt(u)+"px"}if(o){o.style.marginLeft=-parseInt(u)+"px"}}}}}}}this.table[0].style.marginLeft=-k+"px";p[0].style.marginLeft=-k+"px"}else{if(this._haspinned==false){this.table[0].style.marginLeft=-k+"px";p[0].style.marginLeft=-k+"px"}}}if(this.showaggregates){if(this.statusbar[0].cells){var m=0;if(this.rtl){if(this.vScrollBar.css("visibility")!="hidden"){if(this.hScrollBar.css("visibility")!="hidden"){m=2+parseInt(this.hScrollBar.css("left"))}}}this.statusbar[0].style.marginLeft=-k+m+"px"}}if(this.showfilterrow&&this.filterrow){if(this.filterrow[0].cells){this.filterrow[0].style.marginLeft=-k+"px"}}if(this.showeverpresentrow&&this.addnewrowtop){if(this.addnewrowtop[0].cells){this.addnewrowtop[0].style.marginLeft=-k+"px"}}},_updaterowdetailsvisibility:function(){if(this.rowdetails){for(var d=0;d<this._rowdetailselementscache.length;d++){b(this._rowdetailselementscache[d]).css("display","none")}}},_getvisualcolumnsindexes:function(e,n,i,m,d,l){if(this.rowdetails||this.rtl||this.editcell||(this.width&&this.width.toString().indexOf("%")>=0)||this.exporting){return{start:0,end:i+m}}var f=0;var k=-1;var g=i+m;var o=false;if(this.autorowheight){return{start:0,end:i+m}}if(!d){for(var h=0;h<i+m;h++){var p=h;if(!o){if(this.columns.records[h].pinned&&l){o=true}}if(!this.columns.records[h].hidden){f+=this.columns.records[h].width}if(f>=e&&k==-1){k=h}if(f>n+e){g=h;break}}}g++;if(g>i+m){g=i+m}if(k==-1||o){k=0}return{start:k,end:g}},_getvirtualcolumnsindexes:function(e,m,i,l,d){if(this.rtl||this.editcell||this.exporting){return{start:0,end:i+l}}var f=0;var k=-1;var g=i+l;if(this.autorowheight){return{start:0,end:i+l}}if(!d){for(var h=0;h<i+l;h++){var n=h;if(!this.columns.records[h].hidden){f+=this.columns.records[h].width}if(f>=e&&k==-1){k=h}if(f>m+e){g=h;break}}}g++;if(g>i+l){g=i+l}if(k==-1){k=0}return{start:k,end:g}},_getfirstvisualrow:function(){var e=this.vScrollInstance;var g=e.value;var f=parseInt(g);if(this._pagescache.length==0){this.dataview.updateview();this._loadrows()}if(this.vScrollBar[0].style.visibility!="visible"){f=0}if(!this.pageable){var d=this._findvisiblerow(f,this._pageviews);if(d==-1){return null}if(d!=this.dataview.pagenum){this.dataview.pagenum=d;this.dataview.updateview();this._loadrows()}else{if(!this._pagescache[this.dataview.pagenum]){this._loadrows()}}}var h=this._findvisiblerow(f,this._pagescache[this.dataview.pagenum]);var i=this._pagescache[this.dataview.pagenum];if(i&&i[0]){return i[h]}},_rendervisualrows:function(){if(!this.virtualsizeinfo){return}var Y=this.vScrollInstance;var p=this.hScrollInstance;var j=Y.value;var C=p.value;var o=parseInt(j);var l=parseInt(C);var x=this._gettableheight();var J=this._hostwidth!=undefined?this._hostwidth:this.host.width();if(this.hScrollBar[0].style.visibility=="visible"){x+=29}if(this.scrollmode=="deferred"&&this._newmax!=0){if(o>this._newmax&&this._newmax!=null){o=this._newmax}}var ak=Y.isScrolling()||p.isScrolling()||this._keydown;var D=this.groupable&&this.groups.length>0;this.visiblerows=new Array();this.hittestinfo=new Array();if(this.editcell&&this.editrow==undefined){this._hidecelleditor(false)}if(this.editrow!=undefined){this._hideeditors()}if(this.virtualmode&&!this.pageable){this._pagescache=new Array()}if(this._pagescache.length==0){this.dataview.updateview();this._loadrows()}if(this.vScrollBar[0].style.visibility=="hidden"){o=0}if(!this.pageable){var L=this._findvisiblerow(o,this._pageviews);if(L==-1){this._clearvisualrows();this._renderemptyrow();this._updaterowdetailsvisibility();return}if(L!=this.dataview.pagenum){this.dataview.pagenum=L;this.dataview.updateview();this._loadrows()}else{if(!this._pagescache[this.dataview.pagenum]){this._loadrows()}}}var am=this.groupable&&this.groups.length>0?this.groups.length:0;if(!this.columns.records){return}var r=this.columns.records.length-am;var ac=this._findvisiblerow(o,this._pagescache[this.dataview.pagenum]);var M=this._pagescache[this.dataview.pagenum];var S=ac;if(S<0){S=0}var af=0;var ab=0;var Q=0;var e=0;var U=this.virtualsizeinfo.visiblerecords;var P=this.groupable?this.groups.length:0;var B=this.toTP("jqx-grid-cell")+" "+this.toTP("jqx-item");if(this.rtl){B+=" "+this.toTP("jqx-grid-cell-rtl")}if((this.autoheight||this.autorowheight)&&this.pageable){if(!this.groupable||(this.groupable&&this.groups.length===0)){U=this.dataview.pagesize}}if(D){B=" "+this.toTP("jqx-grid-group-cell")}if(this.isTouchDevice()){B+=" "+this.toTP("jqx-touch")}if(this.autorowheight){B+=" jqx-grid-cell-wrap"}var O=this.rowsheight;var G=S;var al=this._rendercell;var u=true;var q=this._getvisualcolumnsindexes(l,J,am,r,D,true);var d=q.start;var aa=q.end;var t=this._getvirtualcolumnsindexes(l,J,am,r,D);var I=t.start;var h=t.end;var ae=b.jqx.browser.msie&&b.jqx.browser.version<9;if((this.autoheight||this.pageable)&&this.autorowheight){if(this._pageviews[0]){this._oldpageviewheight=this._pageviews[0].height}}if(this.autorowheight){S=0}if(S>=0){this._updaterowdetailsvisibility();this._startboundindex=M!=null?M[S].bounddata.boundindex:0;this._startvisibleindex=M!=null?M[S].bounddata.visibleindex:0;var A=this.table[0].rows;if(this.columns.records.length>10&&this.enablecolumnsvirtualization){var H=function(i){if(i.parentNode&&i.parentNode.nodeName!="#document-fragment"){return true}return false};for(var ag=0;ag<A.length;ag++){var k=A[ag];for(var V=0;V<I;V++){var ai=V;if(this.columns.records[ai].pinned){continue}if(this.columns.records[ai].datafield==null){continue}var ah=k.cells[ai];if(H(ah)){ah.parentNode.removeChild(ah)}var R=this.columns.records[ai].element;if(H(R)){this.columnsrow[0].removeChild(R)}if(this.filterrow){if(H(this.filterrow[0].cells[ai])&&this.columns.records[ai].filterable){this.filterrow[0].cells[ai].parentNode.removeChild(this.filterrow[0].cells[ai])}}}for(var V=h;V<this.columns.records.length;V++){var ai=V;if(this.columns.records[ai].pinned){continue}if(this.columns.records[ai].datafield==null){continue}var ah=k.cells[ai];if(H(ah)){ah.parentNode.removeChild(ah)}var R=this.columns.records[ai].element;if(H(R)){this.columnsrow[0].removeChild(R)}if(this.filterrow){if(H(this.filterrow[0].cells[ai])&&this.columns.records[ai].filterable){this.filterrow[0].cells[ai].parentNode.removeChild(this.filterrow[0].cells[ai])}}}for(var V=I;V<h;V++){var ai=V;var ah=k.cells[ai];if(!H(ah)){k.appendChild(ah)}var R=this.columns.records[ai].element;if(!H(R)){this.columnsrow[0].appendChild(R)}if(this.filterrow&&!H(this.filterrow[0].cells[ai])&&this.columns.records[ai].filterable){this.filterrow[0].firstChild.appendChild(this.filterrow[0].cells[ai])}}}}for(var n=0;n<U&&ab<U;n++){var ad=M!=undefined?M[S+n]:null;if(ad==null){S=-n;if(this._pagescache[this.dataview.pagenum+1]){M=this._pagescache[this.dataview.pagenum+1];this.dataview.pagenum++}else{var s=this._pageviews.length;do{if(this.dataview.pagenum<this._pageviews.length-1){this.dataview.pagenum++;M=undefined;if(this._pageviews[this.dataview.pagenum].height>0){this.dataview.updateview();this._loadrows();M=this._pagescache[this.dataview.pagenum]}}else{M=undefined;break}}while(M==undefined&&this.dataview.pagenum<s)}if(M!=undefined){ad=M[S+n]}}if(ad!=null){if(ad.hidden){continue}this._endboundindex=this._startboundindex+n;this._endvisibleindex=this._startvisibleindex+n;if(n==0){var m=Math.abs(o-ad.top);this.table[0].style.top=-m+"px";e=-m}var k=this.table[0].rows[ab];if(!k){continue}if(parseInt(k.style.height)!=ad.height){k.style.height=parseInt(ad.height)+"px"}Q+=ad.height;var X=this.rowdetails&&ad.rowdetails;var w=!ad.rowdetailshidden;if(X&&w){k.style.height=parseInt(ad.height-ad.rowdetailsheight)+"px";U++}var K=this._isrowselected(u,ad);for(var V=d;V<aa;V++){var ai=V;this._rendervisualcell(al,B,K,X,w,D,P,k,ad,ai,ab,ak)}if(ad.group!=undefined&&this._rendergroup){this._rendergroup(P,k,ad,am,r,ab,J)}if(this.autorowheight&&(this.autoheight||this.pageable)){var O=this.rowsheight;for(var V=d;V<aa;V++){if(this.editable&&this.editcell&&this.editcell.column==this.columns.records[V].datafield&&this.editcell.row==this.getboundindex(ad)){if(this.editcell.editor){O=Math.max(O,this.editcell.editor.height());continue}}if(k.cells[V].firstChild){O=Math.max(O,8+parseInt(k.cells[V].firstChild.offsetHeight))}}k.style.height=parseInt(O)+"px";this.heights[this._startboundindex+n]=O;if(X&&w){O+=ad.rowdetailsheight}ad.height=O}this.visiblerows[this.visiblerows.length]=ad;this.hittestinfo[this.hittestinfo.length]={row:ad,visualrow:k,details:false};if(X&&w){ab++;var k=this.table[0].rows[ab];this._renderrowdetails(B,k,ad,am,r,ab);this.visiblerows[this.visiblerows.length]=ad;this.hittestinfo[this.hittestinfo.length]={row:ad,visualrow:k,details:true}}if(!this.autorowheight){if(Q+e>=x){break}}}else{cansetheight=true;this._clearvisualrow(l,D,ab,am,r);if(Q+af+e<=x){af+=O}}ab++}this._horizontalvalue=l;if(af>0){if(this.vScrollBar[0].style.visibility=="visible"){var aj=parseInt(this.table.css("top"));var F=this._pageviews[this._pageviews.length-1];var v=Y.max;var E=F.top+F.height-x;if(this.hScrollBar.css("visibility")=="visible"){E+=this.scrollbarsize+20}if(v!=E&&!this.autorowheight){if(E>=0){if(this.scrollmode!="deferred"){Y.max=E;Y.setPosition(Y.max)}else{if(this._newmax!=E){this._newmax=E;this._rendervisualrows()}}}}}}}if((this.autoheight||this.pageable)&&this.autorowheight){this._pagescache=new Array();var W=0;var g=0;for(var ag=0;ag<this.visiblerows.length;ag++){var z=this.visiblerows[ag];z.top=W;W+=z.height;g+=z.height;var X=this.rowdetails&&z.rowdetails;var w=!z.rowdetailshidden;var k=this.table[0].rows[ag];if(X&&w){ag++}for(var V=d;V<aa;V++){var Z=this.columns.records[V];if(!Z.hidden){if(!Z.cellsrenderer){var N=k.cells[V];var f=0;if(N.firstChild){var f=(z.height-parseInt(N.firstChild.offsetHeight)-8)/2;if(X&&w){var f=(z.height-z.rowdetailsheight-b(N.firstChild).height()-8)/2}}else{var f=(z.height-parseInt(b(N).height())-8)/2}if(f>=0){f=parseInt(f)+4;if(N.firstChild){if(N.firstChild.className.indexOf("jqx-grid-groups-row")==-1){if(Z.columntype!="checkbox"&&Z.columntype!="button"){if(this.editable&&this.editcell&&this.editcell.column==Z.datafield&&this.editcell.row==this.getboundindex(z)){continue}N.firstChild.style.marginTop=f+"px"}}}}}}}}if(this._pageviews[0]){this._pageviews[0].height=g}this._arrange()}this._renderemptyrow();if(this.toCompile&&this.toCompile.length>0){var T=this;b.each(T.toCompile,function(y,an){if(this.compiled){return true}var i=this.cell;if(!i){return true}if(b.jqx.angularCompile){b.jqx.angularCompile(i,"<div>"+this.value+"</div>")}this.compiled=true})}},_hideemptyrow:function(){if(!this.showemptyrow){return}if(!this.table){return}if(!this.table[0].rows){return}var f=this.table[0].rows[0];if(!f){return}var g=false;for(var e=0;e<f.cells.length;e++){var d=b(f.cells[e]);if(d.css("display")!="none"&&!g){if(d.width()==this.host.width()||d.text()==this.gridlocalization.emptydatastring){d[0].checkbox=null;d[0].button=null;g=true;d[0].innerHTML=""}}}},_renderemptyrow:function(){if(this._loading){return}if(this.dataview.records.length==0&&this.showemptyrow){var l=false;var e=this.toTP("jqx-grid-cell");if(this.table&&this.table.length>0&&this.table[0].rows&&this.table[0].rows.length>0){var k=this.table[0].rows[0];this.table[0].style.top="0px";for(var f=0;f<k.cells.length;f++){var d=b(k.cells[f]);if(d.css("display")!="none"&&!l){d[0].checkbox=null;d[0].button=null;d[0].className=e;l=true;d[0].innerHTML="";var g=b("<span style='white-space: nowrap; float: left; margin-left: 50%; position: relative;'></span>");g.text(this.gridlocalization.emptydatastring);d.append(g);var j=0;if(!this.oldhscroll){j=parseInt(this.table[0].style.marginLeft);if(this.rtl){d.css("z-index",999);d.css("overflow","visible")}}g.css("left",-j-(g.width()/2));g.css("top",this._gettableheight()/2-g.height()/2);if(b.jqx.browser.msie&&b.jqx.browser.version<8){g.css("margin-left","0px");g.css("left",this.host.width()/2-g.width()/2)}var h=Math.abs(parseInt(this.table[0].style.top));if(isNaN(h)){h=0}b(k).height(this._gettableheight()+h);d.css("margin-left","0px");d.width(this.host.width());if(this.table.width()<this.host.width()){this.table.width(this.host.width())}}d.addClass(this.toThemeProperty("jqx-grid-empty-cell"))}}}},_clearvisualrows:function(){var e=this.virtualsizeinfo.visiblerecords;var f=this.hScrollInstance;var d=f.value;var g=parseInt(d);var i=this.groupable&&this.groups.length>0;if(!this.columns.records){return}for(var h=0;h<e;h++){this._clearvisualrow(g,i,h,0,this.columns.records.length)}},_iscellselected:function(j,i,g){var f=false;var e=0;if(this.virtualmode&&this.pageable&&this.groupable){if(this.groups.length>0){e=this.dataview.pagesize*this.dataview.pagenum}}if(this.groups.length>0&&this.pageable&&this.groupable){var d=this.getrowboundindexbyid(i.bounddata.uid);for(var h in this.selectedcells){if(h==d+"_"+g){f=true}}return f}if(j&&i.bounddata!=null){if(this.selectionmode!="singlerow"){if(this.dataview.filters.length>0){if(!this.virtualmode&&i.bounddata.dataindex!=undefined){for(var h in this.selectedcells){if(h==e+i.bounddata.dataindex+"_"+g){f=true}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex+"_"+g){f=true}}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex+"_"+g){f=true;break}}}}else{if(this.dataview.filters.length>0){if(!this.virtualmode&&i.bounddata.dataindex!=undefined){for(var h in this.selectedcells){if(h==e+i.bounddata.dataindex+"_"+g){f=true;break}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex+"_"+g){f=true;break}}}}else{for(var h in this.selectedcells){if(h==e+i.bounddata.boundindex==this.selectedrowindex){f=true;break}}}}}return f},_isrowselected:function(h,g){var f=false;var e=0;if(this.virtualmode&&this.pageable&&this.groupable){if(this.groups.length>0){e=this.dataview.pagesize*this.dataview.pagenum}}if(this.groupable&&this.groups.length>0&&this.pageable){var d=this.getrowboundindexbyid(g.bounddata.uid);if(d==undefined||d==-1){return false}if(this.selectedrowindexes.indexOf(d)!=-1){f=true}if(!f){f=d==this.selectedrowindex&&this.selectedrowindex!=-1}return f}if(h&&g.bounddata!=null){if(this.selectionmode!="singlerow"){if(this.dataview.filters.length>0){if(!this.virtualmode&&g.bounddata.dataindex!=undefined){if(this.selectedrowindexes.indexOf(e+g.bounddata.dataindex)!=-1){f=true}}else{if(this.selectedrowindexes.indexOf(e+g.bounddata.boundindex)!=-1){f=true}}}else{if(this.selectedrowindexes.indexOf(e+g.bounddata.boundindex)!=-1){f=true}}}else{if(this.dataview.filters.length>0){if(!this.virtualmode&&g.bounddata.dataindex!=undefined){if(this.selectedrowindexes.indexOf(e+g.bounddata.dataindex)!=-1){f=true}}else{if(this.selectedrowindexes.indexOf(e+g.bounddata.boundindex)!=-1){f=true}}}else{if(e+g.bounddata.boundindex==this.selectedrowindex){f=true}}}}return f},_rendervisualcell:function(z,i,p,k,t,x,j,q,d,h,s,n){var f=null;var g=this.columns.records[h];if(g.hidden){var e=q.cells[h];e.innerHTML="";return}cellvalue=this._getcellvalue(g,d);var e=q.cells[h];var w=i;if(this.selectionmode.indexOf("cell")!=-1){if(this.dataview.filters.length>0){if(this.selectedcells[d.bounddata.dataindex+"_"+g.datafield]){p=true}else{p=false}}else{if(this.selectedcells[d.boundindex+"_"+g.datafield]){p=true}else{p=false}}if(this.editcell){if(this.editcell.row===d.boundindex&&this.editcell.column===g.datafield){if(g.columntype!=="checkbox"){p=false}}}if(this.virtualmode||(this.groupable&&this.groups.length>0&&this.pageable)){p=this._iscellselected(true,d,g.datafield)}}if(g.cellclassname!=""&&g.cellclassname){if(typeof g.cellclassname=="string"){w+=" "+g.cellclassname}else{var m=g.cellclassname(this.getboundindex(d),g.datafield,cellvalue,d.bounddata);if(m){w+=" "+m}}}var o=this.showsortcolumnbackground&&this.sortcolumn&&g.displayfield==this.sortcolumn;if(o){w+=" "+this.toTP("jqx-grid-cell-sort")}if(g.filter&&this.showfiltercolumnbackground){w+=" "+this.toTP("jqx-grid-cell-filter")}if((g.pinned&&this.showpinnedcolumnbackground)||g.grouped){if(x){w+=" "+this.toTP("jqx-grid-cell-pinned")}else{w+=" "+this.toTP("jqx-grid-cell-pinned")}}if(this.altrows&&d.group==undefined){var y=d.visibleindex;if(y>=this.altstart){if((this.altstart+y)%(1+this.altstep)==0){if(!o){w+=" "+this.toTP("jqx-grid-cell-alt")}else{w+=" "+this.toTP("jqx-grid-cell-sort-alt")}if(g.filter&&this.showfiltercolumnbackground){w+=" "+this.toTP("jqx-grid-cell-filter-alt")}if(g.pinned&&this.showpinnedcolumnbackground){w+=" "+this.toTP("jqx-grid-cell-pinned-alt")}}}}if(h<=j){if(x||this.rowdetails){var u=b(e);var l=this.columns.records[h].width;if(e.style.width!=parseInt(l)+"px"){u.width(l)}}}else{if(x||this.rowdetails){if(this._hiddencolumns){var u=b(e);var l=this.columns.records[h].width;if(parseInt(e.style.width)!=l){u.width(l)}}}}var v=true;if(this.rowdetails&&k){if(t&&!x){w+=" "+this.toTP("jqx-grid-details-cell")}else{if(x){w+=" "+this.toTP("jqx-grid-group-details-cell")}}if(this.showrowdetailscolumn){if(!this.rtl){if(d.group==undefined&&h==j){var r=this.toThemeProperty("jqx-icon-arrow-down");if(t){w+=" "+this.toTP("jqx-grid-group-expand");w+=" "+r}else{w+=" "+this.toTP("jqx-grid-group-collapse");var r=this.toThemeProperty("jqx-icon-arrow-right");w+=" "+r}v=false;e.title="";e.innerHTML="";if(e.className!=w){e.className=w}return}}else{if(d.group==undefined&&h==q.cells.length-j-1){var r=this.toThemeProperty("jqx-icon-arrow-down");if(t){w+=" "+this.toTP("jqx-grid-group-expand-rtl");w+=" "+r}else{w+=" "+this.toTP("jqx-grid-group-collapse-rtl");var r=this.toThemeProperty("jqx-icon-arrow-left");w+=" "+r}v=false;e.title="";e.innerHTML="";if(e.className!=w){e.className=w}return}}}}if(p&&v&&h>=j){w+=" "+this.toTP("jqx-grid-cell-selected");w+=" "+this.toTP("jqx-fill-state-pressed")}if(e.className!=w){e.className=w}if(d.group!=undefined){cellvalue="";e.title="";e.innerHTML="";return}z(this,g,d,cellvalue,e,n)},_rendercell:function(u,f,j,s,d,q){var g=s+"_"+f.visibleindex;if(f.columntype=="number"||f.cellsrenderer!=null){var g=j.uniqueid+"_"+f.visibleindex}if(f.columntype=="number"){s=j.visibleindex}if(u.editcell&&u.editrow==undefined){if(u.editmode=="selectedrow"&&f.editable&&u.editable){if(u.editcell.row==u.getboundindex(j)){if(u._showcelleditor){if(!u.hScrollInstance.isScrolling()&&!u.vScrollInstance.isScrolling()){u._showcelleditor(u.editcell.row,f,d,u.editcell.init)}else{u._showcelleditor(u.editcell.row,f,d,false,false)}return}}}else{if(u.editcell.row==u.getboundindex(j)&&u.editcell.column==f.datafield){u.editcell.element=d;if(u.editcell.editing){if(u._showcelleditor){if(!u.hScrollInstance.isScrolling()&&!u.vScrollInstance.isScrolling()){u._showcelleditor(u.editcell.row,f,u.editcell.element,u.editcell.init)}else{u._showcelleditor(u.editcell.row,f,u.editcell.element,u.editcell.init,false)}return}}}}}var r=u._defaultcellsrenderer(s,f);var n=u._cellscache[g];if(n){if(f.columntype=="inline"){u._renderinlinecell(u,d,f,j,s);if(f.cellsrenderer!=null){var h=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata);if(h!=undefined){d.innerHTML=h}}return}else{if(f.columntype=="checkbox"){if(u.host.jqxCheckBox){if(s===""){s=null}var m=d.innerHTML.toString().length==0;if(d.checkbox&&!u.groupable&&!m){d.checkboxrow=u.getboundindex(j);if(s==""){s=false}if(s=="1"){s=true}if(s=="0"){s=false}if(s==1){s=true}if(s==0){s=false}if(s=="true"){s=true}if(s=="false"){s=false}if(s==null&&!f.threestatecheckbox){s=false}if(f.checkboxcolumn){s=false;if(u.dataview.filters.length>0&&!u.virtualmode&&j.bounddata.dataindex!=undefined){if(u.selectedrowindexes.indexOf(j.bounddata.dataindex)!=-1){s=true}}else{if(u.selectedrowindexes.indexOf(j.bounddata.boundindex)!=-1){s=true}}}if(!u.disabled){if(d.checkboxinstance){d.checkboxinstance._setState(s)}else{d.checkbox.jqxCheckBox("_setState",s)}}}else{u._rendercheckboxcell(u,d,f,j,s)}if(f.cellsrenderer!=null){var h=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata);if(h!=undefined){d.innerHTML=h}}return}}else{if(f.columntype=="button"){if(u.host.jqxButton){if(s==""){s=false}if(f.cellsrenderer!=null){s=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata)}if(d.innerHTML==""){d.buttonrow=u.getboundindex(j);d.button=null;u._renderbuttoncell(u,d,f,j,s)}if(d.button&&!u.groupable){d.buttonrow=u.getboundindex(j);d.button.val(s)}else{u._renderbuttoncell(u,d,f,j,s)}return}}}}var t=n.element;if(f.cellsrenderer!=null||(d.childNodes&&d.childNodes.length==0)||u.groupable||u.rowdetails){if(d.innerHTML!=t){d.innerHTML=t}}else{if(d.innerHTML.indexOf("editor")>=0){d.innerHTML=t}else{if(q){var o=t.indexOf(">");var l=t.indexOf("</");var p=t.substring(o+1,l);var i=d.childNodes[0];if(p.indexOf(">")>=0){d.innerHTML=t}else{if(i.childNodes[0]){if(p!=i.childNodes[0].nodeValue){if(p.indexOf("&")>=0){d.innerHTML=t}else{i.childNodes[0].nodeValue=p}}}else{var e=document.createTextNode(p);i.appendChild(e)}}}else{if(d.innerHTML!=t){d.innerHTML=t}}}}if(u.enabletooltips&&f.enabletooltips){d.title=n.title}return}if(f.columntype=="checkbox"){u._rendercheckboxcell(u,d,f,j,s);u._cellscache[g]={element:"",title:s};if(u.enabletooltips&&f.enabletooltips){d.title=s}return}else{if(f.columntype=="button"){if(f.cellsrenderer!=null){s=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata)}u._renderbuttoncell(u,d,f,j,s);u._cellscache[g]={element:"",title:s};if(u.enabletooltips&&f.enabletooltips){d.title=s}return}else{if(f.columntype=="number"){s=j.visibleindex}else{if(f.columntype=="inline"){u._renderinlinecell(u,d,f,j,s);u._cellscache[g]={element:"",title:s};if(u.enabletooltips&&f.enabletooltips){d.title=s}return}}}}var t=null;if(f.cellsrenderer!=null){t=f.cellsrenderer(u.getboundindex(j),f.datafield,s,r,f.getcolumnproperties(),j.bounddata);if(t&&(t.indexOf("<jqx-")>=0||t.indexOf(" ng-")>=0)){if(u.toCompile){u.toCompile.push({cell:d,value:t,row:u.getboundindex(j)})}return}}else{t=r}if(t==null){t=r}var k=s;if(u.enabletooltips&&f.enabletooltips){if(f.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(s)){k=b.jqx.dataFormat.formatdate(k,f.cellsformat,u.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(s)){k=b.jqx.dataFormat.formatnumber(k,f.cellsformat,u.gridlocalization)}}}}d.title=k}if(u.WinJS){b(d).html(t)}else{d.innerHTML=t}u._cellscache[g]={element:d.innerHTML,title:k};return true},_isIE10:function(){if(this._browser==undefined){var e=b.jqx.utilities.getBrowser();if(e.browser=="msie"&&parseInt(e.version)>9){this._browser=true}else{this._browser=false;if(e.browser=="msie"){var d="Browser CodeName: "+navigator.appCodeName+"";d+="Browser Name: "+navigator.appName+"";d+="Browser Version: "+navigator.appVersion+"";d+="Platform: "+navigator.platform+"";d+="User-agent header: "+navigator.userAgent+"";if(d.indexOf("Zune 4.7")!=-1){this._browser=true}}}}return this._browser},_renderinlinecell:function(f,d,e,i,g){var h=b(d);d.innerHTML='<div style="position: absolute;"></div>'},_rendercheckboxcell:function(g,e,f,k,h){if(g.host.jqxCheckBox){var j=b(e);if(h===""){if(f.threestatecheckbox){h=null}else{h=false}}if(h=="1"){h=true}if(h=="0"){h=false}if(h==1){h=true}if(h==0){h=false}if(h=="true"){h=true}if(h=="false"){h=false}if(f.checkboxcolumn){h=false;var d=this.getboundindex(k);if(this.selectedrowindexes.indexOf(d)!=-1){h=true}}if(j.find(".jqx-checkbox").length==0){e.innerHTML='<div style="position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -10px;"></div>';b(e.firstChild).jqxCheckBox({disabled:g.disabled,_canFocus:false,hasInput:false,hasThreeStates:f.threestatecheckbox,enableContainerClick:false,animationShowDelay:0,animationHideDelay:0,locked:true,theme:g.theme,checked:h});if(this.editable&&f.editable){b(e.firstChild).jqxCheckBox({locked:false})}if(f.checkboxcolumn){b(e.firstChild).jqxCheckBox({locked:false})}e.checkbox=b(e.firstChild);e.checkboxinstance=e.checkbox.data().jqxCheckBox.instance;e.checkboxrow=this.getboundindex(k);var i=b.data(e.firstChild,"jqxCheckBox").instance;i.updated=function(l,s,m){if(g.disabled){s=m;var p=g.table[0].rows.length;var r=g._getcolumnindex(f.datafield);for(var o=0;o<p;o++){var n=g.table[0].rows[o].cells[r].firstChild;if(n){b(n).jqxCheckBox({disabled:g.disabled})}}}if(f.editable&&!g.disabled){var p=g.table[0].rows.length;var r=g._getcolumnindex(f.datafield);if(g.editrow==undefined){if(f.cellbeginedit){var u=f.cellbeginedit(e.checkboxrow,f.datafield,f.columntype,!s);if(u==false){g.setcellvalue(e.checkboxrow,f.datafield,!s,true);return}}if(f.cellvaluechanging){var t=f.cellvaluechanging(e.checkboxrow,f.datafield,f.columntype,m,s);if(t!=undefined){s=t}}if(g.editmode!=="selectedrow"){for(var o=0;o<p;o++){var n=g.table[0].rows[o].cells[r].firstChild;if(n){b(n).jqxCheckBox("destroy")}}}if(g.editcell&&g.editcell.validated==false){g.setcellvalue(e.checkboxrow,f.datafield,!s,true)}else{if(g.editmode!=="selectedrow"||g.editcell==null){var q=g.getrowdata(e.checkboxrow);g._raiseEvent(17,{rowindex:e.checkboxrow,row:q,datafield:f.datafield,value:m,columntype:f.columntype});g.setcellvalue(e.checkboxrow,f.datafield,s,true);g._raiseEvent(18,{rowindex:e.checkboxrow,row:q,datafield:f.datafield,oldvalue:m,value:s,columntype:f.columntype})}else{g.setcellvalue(e.checkboxrow,f.datafield,s,false,false)}}if(f.cellendedit){f.cellendedit(e.checkboxrow,f.datafield,f.columntype,s)}}}else{if(f.checkboxcolumn){if(g.editcell){g.endcelledit(g.editcell.row,g.editcell.column,false,true)}if(!g.disabled){if(s){g.selectrow(e.checkboxrow)}else{g.unselectrow(e.checkboxrow)}if(g.autosavestate){if(g.savestate){g.savestate()}}}}}}}else{e.checkboxrow=this.getboundindex(k);b(e.firstChild).jqxCheckBox("_setState",h,!(this.editable&&f.editable)&&!f.checkboxcolumn)}}},_renderbuttoncell:function(h,e,g,k,i){if(h.host.jqxButton){var j=b(e);if(i==""){i=false}if(j.find(".jqx-button").length==0){e.innerHTML='<input type="button" style="opacity: 0.99; position: absolute; top: 0%; left: 0%; padding: 0px; margin-top: 2px; margin-left: 2px;"/>';b(e.firstChild).val(i);b(e.firstChild).attr("hideFocus","true");b(e.firstChild).jqxButton({disabled:h.disabled,theme:h.theme,height:h.rowsheight-4,width:g.width-4});e.button=b(e.firstChild);e.buttonrow=h.getboundindex(k);var d=this.isTouchDevice();if(d){var f=b.jqx.mobile.getTouchEventName("touchend");h.addHandler(b(e.firstChild),f,function(l){if(g.buttonclick){g.buttonclick(e.buttonrow,l)}})}else{h.addHandler(b(e.firstChild),"click",function(l){if(g.buttonclick){g.buttonclick(e.buttonrow,l)}})}}else{e.buttonrow=h.getboundindex(k);b(e.firstChild).val(i)}}},_clearvisualrow:function(g,f,o,i,n){var m=this.toTP("jqx-grid-cell");if(f){m=" "+this.toTP("jqx-grid-group-cell")}m+=" "+this.toTP("jqx-grid-cleared-cell");var p=this.table[0].rows;for(var k=0;k<i+n;k++){if(p[o]){var e=p[o].cells[k];if(e.className!=m){e.className=m}var d=this.columns.records[k];if(this._horizontalvalue!=g&&!d.pinned){if(this.oldhscroll==true){var h=-g;e.style.marginLeft=-g+"px"}}var l=d.width;if(l<d.minwidth){l=d.minwidth}if(l>d.maxwidth){l=d.maxwidth}if(parseInt(e.style.width)!=l){if(l!="auto"){b(e)[0].style.width=l+"px"}else{b(e)[0].style.width=l}}if(e.title!=""){e.title=""}if(e.innerHTML!=""){e.innerHTML=""}}}if(p[o]){if(parseInt(p[o].style.height)!=this.rowsheight){p[o].style.height=parseInt(this.rowsheight)+"px"}}},_findgroupstate:function(e){var d=this._findgroup(e);if(d==null){return false}return d.expanded},_findgroup:function(e){var d=null;if(this.expandedgroups[e]){return this.expandedgroups[e]}return d},_clearcaches:function(){this._columnsbydatafield=new Array();this._pagescache=new Array();this._pageviews=new Array();this._cellscache=new Array();this.heights=new Array();this.hiddens=new Array();this.hiddenboundrows=new Array();this.heightboundrows=new Array();this.detailboundrows=new Array();this.details=new Array();this.expandedgroups=new Array();this._rowdetailscache=new Array();this._rowdetailselementscache=new Array();if(b.jqx.dataFormat){b.jqx.dataFormat.cleardatescache()}this.tableheight=null},_getColumnText:function(d){if(this._columnsbydatafield==undefined){this._columnsbydatafield=new Array()}if(this._columnsbydatafield[d]){return this._columnsbydatafield[d]}var f=d;var e=null;b.each(this.columns.records,function(){if(this.datafield==d||this.displayfield==d){f=this.text;e=this;return false}});this._columnsbydatafield[d]={label:f,column:e};return this._columnsbydatafield[d]},_getcolumnbydatafield:function(d){if(this.__columnsbydatafield==undefined){this.__columnsbydatafield=new Array()}if(this.__columnsbydatafield[d]){return this.__columnsbydatafield[d]}var f=d;var e=null;b.each(this.columns.records,function(){if(this.datafield==d||this.displayfield==d){f=this.text;e=this;return false}});this.__columnsbydatafield[d]=e;return this.__columnsbydatafield[d]},isscrollingvertically:function(){var d=(this.vScrollBar.jqxScrollBar("isScrolling"));return d},_renderrowdetails:function(q,y,d,x,n,A){if(y==undefined){return}var E=b(y);var g=0;var t=this.rowdetails&&this.showrowdetailscolumn?(1+this.groups.length)*this.groupindentwidth:(this.groups.length)*this.groupindentwidth;if(this.groupable&&this.groups.length>0){for(var r=0;r<=n;r++){var e=b(y.cells[r]);e[0].innerHTML="";e[0].className="jqx-grid-details-cell"}}var e=b(y.cells[g]);if(e[0].style.display=="none"){var o=y.cells[g];var B=2;var l=g;while(o!=undefined&&o.style.display=="none"&&B<10){o=y.cells[l+B-1];B++}e=b(o)}if(this.rtl){for(var v=x;v<n;v++){y.cells[v].innerHTML="";y.cells[v].className="jqx-grid-details-cell"}}e.css("width","100%");E.height(d.rowdetailsheight);e[0].className=q;var p=this.getboundindex(d);var j=p+"_";if(this._rowdetailscache[j]){var u=this._rowdetailscache[j];var C=u.html;if(this.initrowdetails){if(this._rowdetailscache[j].element){var f=this._rowdetailscache[j].element;var i=e.coord();var z=this.gridcontent.coord();var w=parseInt(i.top)-parseInt(z.top);var k=parseInt(i.left)-parseInt(z.left);if(this.rtl){k=0}b(f).css("top",w);b(f).css("left",k);b(f).css("display","block");b(f).width(this.host.width()-t);if(this.layoutrowdetails){this.layoutrowdetails(p,f,this.element,this.getrowdata(p))}}}else{e[0].innerHTML=C}return}e[0].innerHTML="";if(!this.enablerowdetailsindent){t=0}var h='<div class="jqx-enableselect" role="rowgroup" style="border: none; overflow: hidden; width: 100%; height: 100%; margin-left: '+t+'px;">'+d.rowdetails+"</div>";if(this.rtl){var h='<div class="jqx-enableselect" role="rowgroup" style="border: none; overflow: hidden; width: 100%; height: 100%; margin-left: '+0+"px; margin-right: "+t+'px;">'+d.rowdetails+"</div>"}this._rowdetailscache[j]={id:y.id,html:h};if(this.initrowdetails){var f=b(h)[0];b(this.gridcontent).prepend(b(f));b(f).css("position","absolute");b(f).width(this.host.width()-t);b(f).height(e.height());var i=e.coord();b(f).css("z-index",9999);if(this.isTouchDevice()){b(f).css("z-index",99999)}b(f).addClass(this.toThemeProperty("jqx-widget-content"));var i=e.coord();var z=this.gridcontent.coord();var w=parseInt(i.top)-parseInt(z.top);var k=parseInt(i.left)-parseInt(z.left);b(f).css("top",w);b(f).css("left",k);this.content[0].scrollTop=0;this.content[0].scrollLeft=0;var D=b(b(f).children()[0]);if(D[0].id!=""){D[0].id=D[0].id+p}this.initrowdetails(p,f,this.element,this.getrowdata(p));this._rowdetailscache[j].element=f;this._rowdetailselementscache[p]=f}else{e[0].innerHTML=h}},_defaultcellsrenderer:function(f,d){if(d.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(f)){f=b.jqx.dataFormat.formatdate(f,d.cellsformat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(f)){f=b.jqx.dataFormat.formatnumber(f,d.cellsformat,this.gridlocalization)}}}}var e="4px";if(this.rowsheight!=25){e=(this.rowsheight/2-this._cellheight/2);if(e<0){e=4}e+="px"}if(this.enableellipsis){if(d.cellsalign=="center"||d.cellsalign=="middle"){return'<div style="text-overflow: ellipsis; overflow: hidden; padding-bottom: 2px; text-align: center; margin-top: '+e+';">'+f+"</div>"}if(d.cellsalign=="left"){return'<div style="overflow: hidden; text-overflow: ellipsis; padding-bottom: 2px; text-align: left; margin-right: 2px; margin-left: 4px; margin-top: '+e+';">'+f+"</div>"}if(d.cellsalign=="right"){return'<div style="overflow: hidden;  text-overflow: ellipsis; padding-bottom: 2px; text-align: right; margin-right: 2px; margin-left: 4px; margin-top: '+e+';">'+f+"</div>"}}if(d.cellsalign=="center"||d.cellsalign=="middle"){return'<div style="text-align: center; margin-top: '+e+';">'+f+"</div>"}return'<span style="margin-left: 4px; margin-right: 2px; margin-top: '+e+"; float: "+d.cellsalign+';">'+f+"</span>"},getcelltext:function(g,e){if(g==null||e==null){return null}var d=this.getcellvalue(g,e);var f=this.getcolumn(e);if(f&&f.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(d)){d=b.jqx.dataFormat.formatdate(d,f.cellsformat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(d)){d=b.jqx.dataFormat.formatnumber(d,f.cellsformat,this.gridlocalization)}}}}return d},getcelltextbyid:function(g,e){if(g==null||e==null){return null}var d=this.getcellvaluebyid(g,e);var f=this.getcolumn(e);if(f&&f.cellsformat!=""){if(b.jqx.dataFormat){if(b.jqx.dataFormat.isDate(d)){d=b.jqx.dataFormat.formatdate(d,f.cellsformat,this.gridlocalization)}else{if(b.jqx.dataFormat.isNumber(d)){d=b.jqx.dataFormat.formatnumber(d,f.cellsformat,this.gridlocalization)}}}}return d},_getcellvalue:function(d,f){var e=null;e=f.bounddata[d.datafield];if(d.displayfield!=null){e=f.bounddata[d.displayfield]}if(e==null){e=""}return e},getcell:function(h,d){if(h==null||d==null){return null}var e=parseInt(h);var g=h;var f="";if(!isNaN(e)){g=this.getrowdata(e)}if(g!=null){f=g[d]}return this._getcellresult(f,h,d)},getrenderedcell:function(h,d){if(h==null||d==null){return null}var e=parseInt(h);var g=h;var f="";if(!isNaN(e)){g=this.getrenderedrowdata(e)}if(g!=null){f=g[d]}return this._getcellresult(f,h,d)},_getcellresult:function(k,n,e){var f=this.getcolumn(e);if(f==null||f==undefined){return null}var i=f.getcolumnproperties();var g=i.hidden;var d=i.width;var m=i.pinned;var h=i.cellsalign;var j=i.cellsformat;var l=this.getrowheight(n);if(l==false){return null}return{value:k,row:n,column:e,datafield:e,width:d,height:l,hidden:g,pinned:m,align:h,format:j}},setcellvaluebyid:function(i,d,h,f,g){var e=this.getrowboundindexbyid(i);return this.setcellvalue(e,d,h,f,g)},getcellvaluebyid:function(f,d){var e=this.getrowboundindexbyid(f);return this.getcellvalue(e,d)},setcellvalue:function(m,D,F,N,i){if(m==null||D==null){return false}var h=parseInt(m);var r=h;var A=m;if(!isNaN(h)){A=this.getrowdata(h)}var L=false;if(this.filterable&&this._initfilterpanel&&this.dataview.filters.length){L=true}if(this.virtualmode){this._pagescache=new Array()}if(this.sortcache){this.sortcache={}}var n="";var d="";if(A!=null&&A[D]!==F){if(A[D]===null&&F===""){return}var G=this._getcolumnbydatafield(D);var O="string";var t=this.source.datafields||((this.source._source)?this.source._source.datafields:null);if(t){var B="";b.each(t,function(){if(this.name==G.displayfield){if(this.type){B=this.type}return false}});if(B){O=B}d=A[G.displayfield]}n=A[D];if(!G.nullable||(F!=null&&F!==""&&G.nullable&&F.label===undefined)){if(b.jqx.dataFormat.isNumber(n)||O=="number"||O=="float"||O=="int"||O=="decimal"&&O!="date"){if(this.gridlocalization&&this.gridlocalization.decimalseparator==","){if(F&&F.indexOf&&F.indexOf(",")>=0){F=F.replace(",",".")}}F=new Number(F);F=parseFloat(F);if(isNaN(F)){F=0}}else{if(b.jqx.dataFormat.isDate(n)||O=="date"){if(F!=""){var J=F;J=new Date(J);if(J!="Invalid Date"&&J!=null){F=J}else{if(J=="Invalid Date"){J=new Date();F=J}}}}}if(A[D]===F){if(!this._updating&&N!=false){this._renderrows(this.virtualsizeinfo)}return}}var y=this.source&&this.source._source.localdata&&this.source._source.localdata.name==="observableArray";A[D]=F;if(y){var M=this.source._source.localdata;if(!M._updating){M._updating=true;M[m][D]=F;M._updating=false}}var k=this.getrenderedrowdata(h,true);if(!k){return}k[D]=F;if(F!=null&&F.label!=null){var G=this._getcolumnbydatafield(D);A[G.displayfield]=F.label;k[G.displayfield]=F.label;A[D]=F.value;k[D]=F.value;if(y&&!M._updating){M._updating=true;M[m][D]=F.value;M[m][G.displayfield]=F.label;M._updating=false}}if(L){if(A.dataindex!=undefined){r=A.dataindex;this.dataview.cachedrecords[A.dataindex][D]=F;if(F!=null&&F.label!=undefined){this.dataview.cachedrecords[A.dataindex][D]=F.value;this.dataview.cachedrecords[A.dataindex][G.displayfield]=F.label}}}}else{if(!this._updating&&N!=false){this._renderrows(this.virtualsizeinfo)}return false}if(this.source&&this.source._knockoutdatasource&&!this._updateFromAdapter&&this.autokoupdates){if(this.source._source._localdata){var C=h;if(L){if(A.dataindex!=undefined){C=A.dataindex}}var g=this.source._source._localdata()[C];this.source.suspendKO=true;var E=g;if(E[D]&&E[D].subscribe){if(F!=null&&F.label!=null){E[G.displayfield](F.label);E[D](F.value)}else{E[D](F)}}else{var t=this.source._source.datafields;var z=null;var v=null;if(t){b.each(t,function(){if(this.name==D){v=this.map;return false}})}if(v==null){if(F!=null&&F.label!=null){E[D]=F.value;E[G.displayfield]=F.label}else{E[D]=F}}else{var f=v.split(this.source.mapChar);if(f.length>0){var l=E;for(var K=0;K<f.length-1;K++){l=l[f[K]]}l[f[f.length-1]]=F}}this.source._source._localdata.replace(g,b.extend({},E))}this.source.suspendKO=false}}if(this.sortcolumn&&this.dataview.sortby&&!this._updating){var x=this.getsortinformation();if(this.sortcolumn==D){this.dataview.clearsortdata();this.dataview.sortby(x.sortcolumn,x.sortdirection.ascending)}}else{if(!this._updating){if(this.dataview.sortby){if(this.dataview.sortcache[D]){this.dataview.sortcache[D]=null}}}}this._cellscache=new Array();this._pagescache=new Array();if(this.source.updaterow&&(i==undefined||i==true)){var H=false;var o=this.that;var q=function(p){if(false==p){o.setcellvalue(m,D,n,true,false);if(n!=d){o.setcellvalue(m,o.getcolumn(D).displayfield,d,true,false)}}};try{var j=this.getrowid(h);H=this.source.updaterow(j,A,q);if(H==undefined){H=true}}catch(u){H=false;o.setcellvalue(m,D,n,true,false);if(n!=d){o.setcellvalue(m,o.getcolumn(D).displayfield,d,true,false)}return}}var I=this.vScrollInstance.value;if(this._updating&&N!=true){N=false}if(N==true||N==undefined){var o=this.that;var e=function(){if(o.pageable&&o.updatepagerdetails){o.updatepagerdetails();if(o.autoheight||o.autorowheight){o._updatepageviews()}}};var s=this.groupable&&this.groups.length>0;if(L&&!s){if(this.autoheight||this.autorowheight){this.prerenderrequired=true}this.dataview.refresh();this.rendergridcontent(true,false);e();this._renderrows(this.virtualsizeinfo)}else{if(this.sortcolumn&&!s){if(this.autoheight||this.autorowheight){this.prerenderrequired=true}this.dataview.reloaddata();this.rendergridcontent(true,false);e();this._renderrows(this.virtualsizeinfo)}else{if(this.groupable&&this.groups.length>0){if(this.autoheight||this.autorowheight){this.prerenderrequired=true}if(this.pageable){if(this.groups.indexOf(D)!=-1){this._pagescache=new Array();this._cellscache=new Array();this.dataview.refresh();this._render(true,true,false,false)}else{this._pagescache=new Array();this._cellscache=new Array();this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}}else{this._pagescache=new Array();this._cellscache=new Array();this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}}else{this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}}}}this.vScrollInstance.setPosition(I);if(this.showaggregates&&this._updatecolumnsaggregates){this._updatecolumnsaggregates()}if(this.showfilterrow&&this.filterable&&this.filterrow){var w=this.getcolumn(D).filtertype;if(w=="list"||w=="checkedlist"){this._updatelistfilters(true)}}this._raiseEvent(19,{rowindex:m,datafield:D,newvalue:F,value:F,oldvalue:n});return true},getcellvalue:function(h,d){if(h==null||d==null){return null}var e=parseInt(h);var g=h;if(!isNaN(e)){g=this.getrowdata(e)}if(g!=null){var f=g[d];return f}return null},getrows:function(){var h=this.dataview.records.length;if(this.virtualmode){var j=new Array();for(var e=0;e<this.dataview.records.length;e++){var d=this.dataview.records[e];if(d){j.push(d)}}if(this.dataview.records.length===undefined){b.each(this.dataview.records,function(){var i=this;if(i){j.push(i)}})}var g=0;if(this.pageable){g=this.dataview.pagenum*this.dataview.pagesize}if(j.length>this.source._source.totalrecords-g){return j.slice(0,this.source._source.totalrecords-g)}return j}if(this.dataview.sortdata){var j=new Array();for(var e=0;e<h;e++){var f={};f=b.extend({},this.dataview.sortdata[e].value);j[e]=f}return j}else{return this.dataview.records}},getrowboundindexbyid:function(g){var f=this.dataview.recordsbyid["id"+g];if(f){if(f.boundindex){return this.getboundindex(f)}}var e=this.getboundrows();for(var d=0;d<e.length;d++){if(e[d]){if(e[d].uid==g){return d}}}return -1},getrowdatabyid:function(f){var e=this.dataview.recordsbyid["id"+f];if(e){return e}else{var d=this.getrowboundindexbyid(f);return this.getboundrows()[d]}return null},getrowdata:function(d){if(d==undefined){d=0}if(this.virtualmode){var e=this.dataview.records[d];return e}else{var e=this.getboundrows()[d];return e}return null},getrenderedrowdata:function(d,f){if(d==undefined){d=0}if(this.virtualmode){var g=this.getrowvisibleindex(d);var e=this.dataview.loadedrecords[g];return e}var g=this.getrowvisibleindex(d);if(g>=0){if(this.groupable&&this.groups.length>0){var e=this.dataview.loadedrecords[g]}else{var e=this.dataview.loadedrecords[g];if(this.pageable&&(f==undefined||f==false)){var e=this.dataview.loadedrecords[this.dataview.pagesize*this.dataview.pagenum+d]}}return e}return null},getboundrows:function(){return this.dataview.cachedrecords},getrowdisplayindex:function(d){var f=this.getdisplayrows();for(var e=0;e<f.length;e++){if(!f[e]){continue}if(f[e].dataindex!==undefined){if(f[e].dataindex==d){return f[e].visibleindex}}else{if(f[e].boundindex==d){return f[e].visibleindex}}}return -1},getboundindex:function(e){var d=e.boundindex;if(this.groupable&&this.groups.length>0&&this.pageable){if(e.bounddata){d=this.getrowboundindexbyid(e.bounddata.uid)}}if(this.dataview.filters.length>0){if(e.bounddata){if(e.bounddata.dataindex!==undefined){d=e.bounddata.dataindex}}else{if(e.dataindex!==undefined){d=e.dataindex}}}return d},getrowboundindex:function(d){var e=this.getdisplayrows()[d];if(e){if(e.dataindex!==undefined){return e.dataindex}return e.boundindex}return -1},getdisplayrows:function(){return this.dataview.loadedrecords},getloadedrows:function(){return this.getdisplayrows()},getvisiblerowdata:function(e){var d=this.getvisiblerows();if(d){return d[e]}return null},getloadedrowdata:function(e){var d=this.getloadedrows();if(d){return d[e]}return null},getvisiblerows:function(){if(this.virtualmode){return this.dataview.loadedrecords}if(this.pageable){var f=[];for(var e=0;e<this.dataview.pagesize;e++){var d=this.dataview.loadedrecords[e+(this.dataview.pagesize*this.dataview.pagenum)];if(d==undefined){break}f.push(d)}return f}else{if(this._startboundindex!=undefined&&this._endboundindex!=undefined){var f=[];for(var e=this._startvisibleindex;e<=this._endvisibleindex;e++){var d=this.dataview.loadedrecords[e];if(d==undefined){break}f.push(d)}return f}}return this.dataview.loadedrecords},getrowid:function(d){if(d==undefined){d=0}if(this.virtualmode){var g=this.getrowvisibleindex(d);var f=this.dataview.loadedrecords[g];if(f){return f.uid}}else{var f=null;var e=this.dataview.filters.length>0;if(d>=0&&d<this.dataview.bounditems.length&&!e){if(this.groupable&&this.groups.length>0){var g=this.getrowvisibleindex(d);var f=this.dataview.loadedrecords[g]}else{var g=this.getrowvisibleindex(d);var f=this.dataview.loadedrecords[g]}if(f){return f.uid}}if(this.dataview.filters.length>0){var f=this.getboundrows()[d];if(f){if(f.uid!=null){return f.uid}}return null}}return null},_updateGridData:function(e){var d=false;if(this.filterable&&this._initfilterpanel&&this.dataview.filters.length){d=true}if(d){this.dataview.refresh();if(e=="updaterow"){this._render(true,true,false,false,false);this.invalidate()}else{this.render()}}else{if(this.sortcolumn||(this.groupable&&this.groups.length>0)){this.dataview.reloaddata();this.render()}else{this._cellscache=new Array();this._pagescache=new Array();this._renderrows(this.virtualsizeinfo)}}if(this.showfilterrow&&this.filterable&&this.filterrow){this._updatelistfilters(true)}},updaterow:function(i,k,g){if(i!=undefined&&k!=undefined){var h=this.that;var j=false;h._datachanged=true;var e=function(q,l,u){if(q._loading){throw new Error("jqxGrid: "+q.loadingerrormessage);return false}var s=false;if(!b.isArray(l)){s=q.dataview.updaterow(l,u)}else{b.each(l,function(v,w){s=q.dataview.updaterow(this,u[v],false)});q._cellscache=new Array();q._pagescache=new Array();q.dataview.refresh()}var m=q.vScrollInstance.value;if(g==undefined||g==true){if(q._updating==undefined||q._updating==false){q._updateGridData("updaterow")}}if(q.showaggregates&&q._updatecolumnsaggregates){q._updatecolumnsaggregates()}if(q.source&&q.source._knockoutdatasource&&!q._updateFromAdapter&&q.autokoupdates){if(q.source._source._localdata){var n=q.dataview.recordsbyid["id"+l];var o=q.dataview.records.indexOf(n);var p=q.source._source._localdata()[o];q.source.suspendKO=true;q.source._source._localdata.replace(p,b.extend({},n));q.source.suspendKO=false}}var r=q.source&&q.source._source.localdata&&q.source._source.localdata.name==="observableArray";if(r){if(!q.source._source.localdata._updating){q.source._source.localdata._updating=true;var t=q.getrowboundindexbyid(l);q.source._source.localdata.set(t,u);q.source._source.localdata._updating=false}}q.vScrollInstance.setPosition(m);return s};if(this.source.updaterow){var d=function(l){if(l==true||l==undefined){e(h,i,k)}else{j=false}};try{j=this.source.updaterow(i,k,d);if(j==undefined){j=true}}catch(f){j=false}}else{j=e(h,i,k)}return j}return false},deleterow:function(d,k){if(d!=undefined){this._datachanged=true;var o=false;var m=this.that;var p=this.getrowboundindexbyid(d);var e=new Array();var j=new Array();if(p!=undefined){if(this.selectedrowindexes.indexOf(p)>=0){this.selectedrowindexes.splice(this.selectedrowindexes.indexOf(p),1)}if(this.selectedrowindex==p){this.selectedrowindex=-1}if(!this.virtualmode){if(m.selectionmode.indexOf("row")>=0){b.each(this.selectedrowindexes,function(){var q=m.getrowid(this);e.push(q)});this.selectedrowindexes=new Array();this.selectedrowindex=-1}else{if(m.selectionmode.indexOf("cell")>=0){for(var i in m.selectedcells){var n=m.selectedcells[i];var h=m.getrowid(n.rowindex);n.rowid=h}}}}}var f=function(w,r){if(w._loading){throw new Error("jqxGrid: "+w.loadingerrormessage);return false}var z=false;var t=w.vScrollInstance.value;if(!b.isArray(r)){var z=w.dataview.deleterow(r)}else{b.each(r,function(){z=w.dataview.deleterow(this,false)});w._cellscache=new Array();w._pagescache=new Array();w.dataview.refresh()}if(!w.virtualmode){if(w.selectionmode.indexOf("row")>=0){b.each(e,function(){var B=w.getrowboundindexbyid(this);if(B!=-1){w.selectrow(B,false)}})}else{var A=new Array();for(var v in w.selectedcells){var y=w.selectedcells[v];var u=y.rowid;var s=w.getrowboundindexbyid(u);if(s!=-1){y.rowindex=s;A[s+"_"+y.datafield]=y}}w.selectedcells=A}}if(w._updating==undefined||w._updating==false){if(k==undefined||k==true){w._render(true,true,false,false);if(w.vScrollBar.css("visibility")!="visible"){w._arrange();w._updatecolumnwidths();w._updatecellwidths();w._renderrows(w.virtualsizeinfo)}}}if(w.source&&w.source._knockoutdatasource&&!w._updateFromAdapter&&w.autokoupdates){if(w.source._source._localdata){w.source.suspendKO=true;w.source._source._localdata.pop(rowdata);w.source.suspendKO=false}}var x=w.source&&w.source._source.localdata&&w.source._source.localdata.name==="observableArray";if(x){if(!w.source._source.localdata._updating){w.source._source.localdata._updating=true;w.source._source.localdata.splice(p,1);w.source._source.localdata._updating=false}}if(w.dataview.sortby){var q=w.getsortinformation();w.dataview.clearsortdata();w.dataview.sortby(q.sortcolumn,q.sortdirection?q.sortdirection.ascending:null)}w.vScrollInstance.setPosition(t);return z};if(this.source.deleterow){var g=function(q){if(q==true||q==undefined){f(m,d)}};try{this.source.deleterow(d,g);if(o==undefined){o=true}}catch(l){o=false}}else{o=f(m,d)}return o}return false},addrow:function(f,o,j){if(o!=undefined){this._datachanged=true;if(j==undefined){j="last"}var n=false;var m=this.that;if(f==null){var g=this.dataview.filters&&this.dataview.filters.length>0;var l=!g?this.dataview.totalrecords:this.dataview.cachedrecords.length;if(!b.isArray(o)){f=this.dataview.getid(this.dataview.source.id,o,l);while(null!=this.dataview.recordsbyid["id"+f]){f++}}else{var d=new Array();b.each(o,function(e,p){var q=m.dataview.getid(m.dataview.source.id,o[e],l+e);d.push(q)});f=d}}var h=function(s,r,v,e){if(s._loading){throw new Error("jqxGrid: "+s.loadingerrormessage);return false}var u=s.vScrollInstance.value;var t=false;if(!b.isArray(v)){if(v!=undefined&&v.dataindex!=undefined){delete v.dataindex}t=s.dataview.addrow(r,v,e)}else{b.each(v,function(w,x){if(this.dataindex!=undefined){delete this.dataindex}var y=null;if(r!=null&&r[w]!=null){y=r[w]}t=s.dataview.addrow(y,this,e,false)});s._cellscache=new Array();s._pagescache=new Array();s.dataview.refresh()}if(s._updating==undefined||s._updating==false){s._render(true,true,false,false);s.invalidate()}if(s.source&&s.source._knockoutdatasource&&!s._updateFromAdapter&&s.autokoupdates){if(s.source._source._localdata){s.source.suspendKO=true;s.source._source._localdata.push(v);s.source.suspendKO=false}}var p=s.source&&s.source._source.localdata&&s.source._source.localdata.name==="observableArray";if(p){if(!s.source._source.localdata._updating){s.source._source.localdata._updating=true;var q=s.getrowboundindexbyid(r);s.source._source.localdata.set(q,v);s.source._source.localdata._updating=false}}if(s.scrollmode!="deferred"){s.vScrollInstance.setPosition(u)}else{s.vScrollInstance.setPosition(0)}return t};if(this.source.addrow){var i=function(e,p){if(e==true||e==undefined){if(p!=undefined){f=p}h(m,f,o,j)}};try{n=this.source.addrow(f,o,j,i);if(n==undefined){n=true}}catch(k){n=false}if(n==false){return false}}else{h(this,f,o,j)}return n}return false},_findvisiblerow:function(g,h){if(g==undefined){g=parseInt(this.vScrollInstance.value)}var e=0;if(h==undefined||h==null){h=this.rows.records}var d=h.length;while(e<=d){mid=parseInt((e+d)/2);var f=h[mid];if(f==undefined){break}if(f.top>g&&f.top+f.height>g){d=mid-1}else{if(f.top<g&&f.top+f.height<g){e=mid+1}else{return mid;break}}}return -1},_updatecellwidths:function(){var f=this.virtualsizeinfo;if(!f){return}var p=this.that;if(p.gridcontent==undefined){return}if(p.table==undefined){p.table=p.gridcontent.find("#contenttable"+p.element.id)}var k=p.groupable&&p.groups.length>0;var q=0;var l=f.visiblerecords;if(p.pageable&&(p.autoheight||p.autorowheight)){l=p.dataview.pagesize;if(p.groupable){p.dataview.updateview();l=p.dataview.rows.length}}if(!p.groupable&&!p.pageable&&(p.autoheight||p.autorowheight)){l=p.dataview.totalrecords}if(p.rowdetails){l+=p.dataview.pagesize}if(!p.columns.records){return}var r=p.columns.records.length;var t=p.table[0].rows;for(var n=0;n<l;n++){var d=t[n];if(!d){break}var s=d.cells;var h=0;for(var m=0;m<r;m++){var g=p.columns.records[m];var e=g.width;var o=s[m];if(parseInt(o.style.left)!=h){o.style.left=h+"px"}if(parseInt(o.style.width)!=e){o.style.width=e+"px"}if(!(g.hidden&&g.hideable)){h+=parseFloat(e)}else{o.style.display="none"}}if(q==0){p.table.width(parseFloat(h)+2);q=h}}if(p.showaggregates&&p._updateaggregates){p._updateaggregates()}if(p.showfilterrow&&p.filterable&&p._updatefilterrowui){p._updatefilterrowui()}if(p.showeverpresentrow){p._updateaddnewrowui()}p._updatescrollbarsafterrowsprerender();if(k){p._renderrows(p.virtualsizeinfo)}},_updatescrollbarsafterrowsprerender:function(){var g=this.that;var f=g.hScrollBar[0].style.visibility;var i=0;var d=g.vScrollBar[0].style.visibility;if(d=="visible"){i=g.scrollbarsize+3}if(g.scrollbarautoshow){i=0}var e=g.element.style.width;if(e.toString().indexOf("%")>=0){e=g.host.width()}else{e=parseInt(e)}if(parseInt(g.table[0].style.width)-2>e-i){if(f!="visible"){if(!g.autowidth){g.hScrollBar[0].style.visibility="visible"}g._arrange()}if(d=="visible"){if(g.scrollmode!="deferred"&&!g.virtualmode){if(g.virtualsizeinfo){var h=g.virtualsizeinfo.virtualheight-g._gettableheight();if(!isNaN(h)&&h>0){if(f!="hidden"){g.vScrollBar.jqxScrollBar("max",h+g.scrollbarsize+4)}else{g.vScrollBar.jqxScrollBar("max",h)}}}}else{g._updatevscrollbarmax()}}else{i=-2}g.hScrollBar.jqxScrollBar("max",i+g.table.width()-g.host.width())}else{if(f!="hidden"){g.hScrollBar.css("visibility","hidden");g._arrange()}}g._renderhorizontalscroll()},_prerenderrows:function(o){var B=this.that;if(B.prerenderrequired==true){B.prerenderrequired=false;if(B.editable&&B._destroyeditors){B._destroyeditors()}if(B.gridcontent==undefined){return}B.gridcontent.find("#contenttable"+B.element.id).remove();if(B.table!=null){B.table.remove();B.table=null}B.table=b('<div id="contenttable'+B.element.id+'" style="overflow: hidden; position: relative;"></div>');B.gridcontent.addClass(B.toTP("jqx-grid-content"));B.gridcontent.addClass(B.toTP("jqx-widget-content"));B.gridcontent.append(B.table);var A=B.groupable&&B.groups.length>0;var p=0;B.table[0].rows=new Array();var l=B.toTP("jqx-grid-cell");if(A){l=" "+B.toTP("jqx-grid-group-cell")}var u=o.visiblerecords;if(B.pageable&&(B.autoheight||B.autorowheight)){u=B.dataview.pagesize;if(B.groupable){B.dataview.updateview();u=B.dataview.rows.length;if(u<B.dataview.pagesize){u=B.dataview.pagesize}}}if(!B.pageable&&(B.autoheight||B.autorowheight)){u=B.dataview.totalrecords}if(B.groupable&&B.groups.length>0&&(B.autoheight||B.autorowheight)&&!B.pageable){u=B.dataview.rows.length}if(B.rowdetails){if(B.autoheight||B.autorowheight){u+=B.dataview.pagesize}else{u+=u}}if(!B.columns.records){return}var z=B.columns.records.length;if(b.jqx.browser.msie&&b.jqx.browser.version>8){B.table.css("opacity","0.99")}if(b.jqx.browser.mozilla){}if(navigator.userAgent.indexOf("Safari")!=-1){B.table.css("opacity","0.99")}var r=b.jqx.browser.msie&&b.jqx.browser.version<8;if(r){B.host.attr("hideFocus","true")}var k=B.tableZIndex;if(u*z>k){k=u*z}var g=B.dataview.records.length==0;var n=B.isTouchDevice();var v="";B._hiddencolumns=false;for(var y=0;y<u;y++){var s='<div role="row" style="position: relative; height:'+B.rowsheight+'px;" id="row'+y+B.element.id+'">';if(r){var s='<div role="row" style="position: relative; z-index: '+k+"; height:"+B.rowsheight+'px;" id="row'+y+B.element.id+'">';k--}var f=0;for(var w=0;w<z;w++){var x=B.columns.records[w];var t=x.width;if(t<x.minwidth){t=x.minwidth}if(t>x.maxwidth){t=x.maxwidth}if(B.rtl){var q=k-z+2*w;var d='<div role="gridcell" style="left: '+f+"px; z-index: "+q+"; width:"+t+"px;";k--}else{var d='<div role="gridcell" style="left: '+f+"px; z-index: "+k--+"; width:"+t+"px;"}if(!(x.hidden&&x.hideable)){f+=t}else{d+="display: none;";B._hiddencolumns=true;k++}d+='" class="'+l+'"></div>';s+=d}if(p==0){B.table.width(parseInt(f)+2);p=f}s+="</div>";v+=s}if(B.WinJS){MSApp.execUnsafeLocalFunction(function(){B.table.html(v)})}else{B.table[0].innerHTML=v}B.table[0].rows=new Array();var m=B.table.children();for(var y=0;y<u;y++){var h=m[y];B.table[0].rows.push(h);h.cells=new Array();var e=b(h).children();for(var w=0;w<z;w++){h.cells.push(e[w])}}if(u==0){var f=0;if(B.showemptyrow){var s=b('<div style="position: relative;" id="row0'+B.element.id+'"></div>');B.table.append(s);s.height(B.rowsheight);B.table[0].rows[0]=s[0];B.table[0].rows[0].cells=new Array()}for(var w=0;w<z;w++){var x=B.columns.records[w];var t=x.width;if(B.showemptyrow){var d=b('<div style="position: absolute; height: 100%; left: '+f+"px; z-index: "+k--+"; width:"+t+'px;" class="'+l+'"></div>');d.height(B.rowsheight);s.append(d);B.table[0].rows[0].cells[w]=d[0]}if(t<x.minwidth){t=x.minwidth}if(t>x.maxwidth){t=x.maxwidth}if(!(x.hidden&&x.hideable)){f+=t}}B.table.width(parseInt(f)+2);p=f}B._updatescrollbarsafterrowsprerender();if(B.rendered){B.rendered("rows")}B.toCompile=new Array();B._addoverlayelement()}},_groupsheader:function(){return this.groupable&&this.showgroupsheader},_arrange:function(){var A=null;var x=null;this.tableheight=null;var F=this.that;var n=false;var m=false;if(F.width!=null&&F.width.toString().indexOf("px")!=-1){A=F.width}else{if(F.width!=undefined&&!isNaN(F.width)){A=F.width}}if(F.width!=null&&F.width.toString().indexOf("%")!=-1){A=F.width;n=true}if(F.scrollbarautoshow){F.vScrollBar[0].style.display="none";F.hScrollBar[0].style.display="none";F.vScrollBar[0].style.zIndex=F.tableZIndex+F.headerZIndex;F.hScrollBar[0].style.zIndex=F.tableZIndex+F.headerZIndex}if(F.autowidth){var p=0;for(var B=0;B<F.columns.records.length;B++){var e=F.columns.records[B].width;if(e=="auto"){e=F._measureElementWidth(F.columns.records[B].text);p+=e}else{p+=e}}if(F.vScrollBar.css("visibility")!="hidden"){p+=F.scrollbarsize+4}A=p;F.width=A}if(F.height!=null&&F.height.toString().indexOf("px")!=-1){x=F.height}else{if(F.height!=undefined&&!isNaN(F.height)){x=F.height}}if(F.height!=null&&F.height.toString().indexOf("%")!=-1){x=F.height;m=true}var k=function(){var i=0;var w=F.showheader?F.columnsheader!=null?F.columnsheader.height()+2:0:0;i+=w;if(F.pageable){i+=F.pagerheight}if(F._groupsheader()){i+=F.groupsheaderheight}if(F.showtoolbar){i+=F.toolbarheight}if(F.showstatusbar){i+=F.statusbarheight}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){i+=F.everpresentrowheight}if(F.hScrollBar[0].style.visibility=="visible"){i+=20}return i};if(F.autoheight&&F.virtualsizeinfo){if(F.pageable&&F.gotopage){var C=0;x=C+(F._pageviews[0]?F._pageviews[0].height:0);x+=k();if(F.showemptyrow&&F.dataview.totalrecords==0){x+=F.rowsheight}}else{var C=F.host.height()-F._gettableheight();if(F._pageviews.length>0){x=C+F._pageviews[F._pageviews.length-1].height+F._pageviews[F._pageviews.length-1].top;F.vScrollBar[0].style.visibility="hidden"}else{x=k();if(F.showemptyrow){x+=F.rowsheight}}}}else{if(F.autoheight){x=F.dataview.totalrecords*F.rowsheight;if(F.pageable&&F.gotopage){x=F.pagesize*F.rowsheight}if(F._loading){x=250;F.dataloadelement.height(x)}x+=k();if(x>10000){x=10000}}}if(A!=null){A=parseInt(A);if(!n){if(F.element.style.width!=parseInt(F.width)+"px"){F.element.style.width=parseInt(F.width)+"px"}}else{F.element.style.width=F.width}if(n){A=F.host.width();if(A<=2){A=600;F.host.width(A)}if(!F._oldWidth){F._oldWidth=A}}}else{F.host.width(250)}if(x!=null){if(!m){x=parseInt(x)}if(!m){if(F.element.style.height!=parseInt(x)+"px"){F.element.style.height=parseInt(x)+"px"}}else{F.element.style.height=F.height}if(m&&!F.autoheight){x=F.host.height();if(x==0){x=400;F.host.height(x)}if(!F._oldHeight){F._oldHeight=x}}}else{F.host.height(250)}if(F.autoheight){F.tableheight=null;F._gettableheight()}var v=0;if(F.showtoolbar){F.toolbar.width(A);F.toolbar.height(F.toolbarheight-1);F.toolbar.css("top",0);v+=F.toolbarheight;x-=parseInt(F.toolbarheight)}else{F.toolbar[0].style.height="0px"}if(F.showstatusbar){if(F.showaggregates){F.statusbar.width(!F.table?A:Math.max(A,F.table.width()))}else{F.statusbar.width(A)}F.statusbar.height(-1+F.statusbarheight)}else{F.statusbar[0].style.height="0px"}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){F.addnewrow.width(A);F.addnewrow.height(F.everpresentrowheight)}else{F.addnewrow[0].style.height="0px"}if(F._groupsheader()){F.groupsheader.width(A);F.groupsheader.height(F.groupsheaderheight);F.groupsheader.css("top",v);var y=F.groupsheader.height()+1;v+=y;if(x>y){x-=parseInt(y)}}else{if(F.groupsheader[0].style.width!=A+"px"){F.groupsheader[0].style.width=parseInt(A)+"px"}F.groupsheader[0].style.height="0px";if(F.groupsheader[0].style.top!=v+"px"){F.groupsheader.css("top",v)}var y=F.showgroupsheader&&F.groupable?F.groupsheaderheight:0;var f=v+y+"px";if(F.content[0].style.top!=f){F.content.css("top",v+F.groupsheaderheight)}}var d=F.scrollbarsize;if(isNaN(d)){d=parseInt(d);if(isNaN(d)){d="17px"}else{d=d+"px"}}d=parseInt(d);var s=4;var h=2;var j=0;if(F.vScrollBar[0].style.visibility=="visible"){j=d+s}if(F.hScrollBar[0].style.visibility=="visible"){h=d+s+2}var r=0;if(F.pageable){r=F.pagerheight;h+=F.pagerheight}if(F.showstatusbar){h+=F.statusbarheight;r+=F.statusbarheight}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){h+=F.everpresentrowheight;r+=F.everpresentrowheight}if(F.hScrollBar[0].style.height!=d+"px"){F.hScrollBar[0].style.height=parseInt(d)+"px"}if(F.hScrollBar[0].style.top!=v+x-s-d-r+"px"||F.hScrollBar[0].style.left!="0px"){F.hScrollBar.css({top:v+x-s-d-r+"px",left:"0px"})}var q=F.hScrollBar[0].style.width;var l=false;var D=false;if(j==0){if(q!=(A-2)+"px"){F.hScrollBar.width(A-2);l=true}}else{if(q!=(A-d-s)+"px"){F.hScrollBar.width(A-d-s+"px");l=true}}if(!F.autoheight){if(F.vScrollBar[0].style.width!=d+"px"){F.vScrollBar.width(d);D=true}if(F.vScrollBar[0].style.height!=parseInt(x)-h+"px"){F.vScrollBar.height(parseInt(x)-h+"px");D=true}if(F.vScrollBar[0].style.left!=parseInt(A)-parseInt(d)-s+"px"||F.vScrollBar[0].style.top!=v+"px"){F.vScrollBar.css({left:parseInt(A)-parseInt(d)-s+"px",top:v})}}if(F.rtl){F.vScrollBar.css({left:"0px",top:v});if(F.vScrollBar.css("visibility")!="hidden"){F.hScrollBar.css({left:d+2})}}var o=F.vScrollInstance;o.disabled=F.disabled;if(!F.autoheight){if(D){o.refresh()}}var z=F.hScrollInstance;z.disabled=F.disabled;if(l){z.refresh()}if(F.autowidth){F.hScrollBar[0].style.visibility="hidden"}F.statusbarheight=parseInt(F.statusbarheight);F.toolbarheight=parseInt(F.toolbarheight);var t=function(w){if((w.vScrollBar[0].style.visibility=="visible")&&(w.hScrollBar[0].style.visibility=="visible")){w.bottomRight[0].style.visibility="visible";w.bottomRight.css({left:1+parseInt(w.vScrollBar.css("left")),top:parseInt(w.hScrollBar.css("top"))});if(w.rtl){w.bottomRight.css("left","0px")}w.bottomRight.width(parseInt(d)+3);w.bottomRight.height(parseInt(d)+4);var G=w.showeverpresentrow&&w.everpresentrowposition=="bottom";var i=G?w.everpresentrowheight:0;if(i>0&&!w.showaggregates){w.bottomRight.css("z-index",99);w.bottomRight.height(parseInt(d)+4+i);w.bottomRight.css({top:parseInt(w.hScrollBar.css("top"))-i})}if(w.showaggregates){w.bottomRight.css("z-index",99);w.bottomRight.height(parseInt(d)+4+w.statusbarheight+i);w.bottomRight.css({top:parseInt(w.hScrollBar.css("top"))-w.statusbarheight-i})}}else{w.bottomRight[0].style.visibility="hidden"}};t(this);if(F.content[0].style.width!=A-j+"px"){F.content.width(A-j)}if(F.content[0].style.height!=x-h+3+"px"){F.content.height(x-h+3)}if(F.scrollbarautoshow){if(F.content[0].style.width!=A+"px"){F.content.width(A)}if(F.content[0].style.height!=x+"px"){F.content.height(x)}}if(F.content[0].style.top!=v+"px"){F.content.css("top",v)}if(F.rtl){F.content.css("left",j);if(F.scrollbarautoshow){F.content.css("left","0px")}if(F.table){var u=F.table.width();if(u<A-j){F.content.css("left",A-u)}}}if(F.showstatusbar){F.statusbar.css("top",v+x-F.statusbarheight-(F.pageable?F.pagerheight:0));if(F.showaggregates){if(F.hScrollBar.css("visibility")=="visible"){F.hScrollBar.css({top:v+x-s-d-r+F.statusbarheight+"px"});F.statusbar.css("top",1+v+x-d-5-F.statusbarheight-(F.pageable?F.pagerheight:0))}t(this)}if(F.rtl){if(F.hScrollBar.css("visibility")!="visible"){F.statusbar.css("left",F.content.css("left"))}else{F.statusbar.css("left","0px")}}}if(F.showeverpresentrow&&F.everpresentrowposition==="bottom"){F.addnewrow.css("top",v+x-(F.showstatusbar?F.statusbarheight:0)-(F.pageable?F.pagerheight:0)-F.everpresentrowheight);if(F.rtl){if(F.hScrollBar.css("visibility")!="visible"){F.addnewrow.css("left",F.content.css("left"))}else{F.addnewrow.css("left","0px")}}}if(F.pageable){F.pager.width(A);F.pager.height(F.pagerheight);F.pager.css("top",v+x-F.pagerheight-1)}else{F.pager[0].style.height="0px"}if(F.table!=null){var g=-2;if(F.vScrollBar[0].style.visibility=="visible"){g=F.scrollbarsize+3}if(F.hScrollBar[0].style.visibility=="visible"){var E=g+F.table.width()-F.host.width();if(E>=0){F.hScrollBar.jqxScrollBar("max",E)}if(F.hScrollBar[0].style.visibility=="visible"&&E==0){F.hScrollBar[0].style.visibility="hidden";F._arrange()}}}if(A!=parseInt(F.dataloadelement[0].style.width)){F.dataloadelement[0].style.width=F.element.style.width}if(x!=parseInt(F.dataloadelement[0].style.height)){F.dataloadelement[0].style.height=F.element.style.height}F._hostwidth=A},destroy:function(){delete b.jqx.dataFormat.datescache;delete this.gridlocalization;b.jqx.utilities.resize(this.host,null,true);if(this.table&&this.table[0]){var m=this.table[0].rows.length;for(var k=0;k<m;k++){var q=this.table[0].rows[k];var p=q.cells;var f=p.length;for(var h=0;h<f;h++){b(q.cells[h]).remove();q.cells[h]=null;delete q.cells[h]}q.cells=null;if(q.cells){delete q.cells}b(this.table[0].rows[k]).remove();this.table[0].rows[k]=null}try{delete this.table[0].rows}catch(n){}this.table.remove();delete this.table}if(this.columns&&this.columns.records){for(var k=0;k<this.columns.records.length;k++){var e=this.columns.records[k];if(e.addnewrowwidget){if(e.destroyeverpresentrowwidget){e.destroyeverpresentrowwidget(e.addnewrowwidget)}}this._removecolumnhandlers(this.columns.records[k]);if(e.element){b(e.element).remove();b(e.sortasc).remove();b(e.sortdesc).remove();b(e.filtericon).remove();b(e.menu).remove();e.element=null;e.uielement=null;e.sortasc=null;e.sortdesc=null;e.filtericon=null;e.menu=null;delete e.element;delete e.uielement;delete e.sortasc;delete e.sortdesc;delete e.filtericon;delete e.menu;delete this.columnsrow[0].cells[k]}}try{delete this.columnsrow[0].cells}catch(n){}delete this.columnsrow}b.removeData(document.body,"contextmenu"+this.element.id);if(this.host.jqxDropDownList){if(this._destroyfilterpanel){this._destroyfilterpanel()}}if(this.editable&&this._destroyeditors){this._destroyeditors()}if(this.filterable&&this._destroyedfilters&&this.showfilterrow){this._destroyedfilters()}if(this.host.jqxMenu){if(this.gridmenu){this.removeHandler(b(document),"click.menu"+this.element.id);this.removeHandler(this.gridmenu,"keydown");this.removeHandler(this.gridmenu,"closed");this.removeHandler(this.gridmenu,"itemclick");this.gridmenu.jqxMenu("destroy");this.gridmenu=null}}if(this.pagershowrowscombo){this.pagershowrowscombo.jqxDropDownList("destroy");this.pagershowrowscombo=null}if(this.pagerrightbutton){this.removeHandler(this.pagerrightbutton,"mousedown");this.removeHandler(this.pagerrightbutton,"mouseup");this.removeHandler(this.pagerrightbutton,"click");this.pagerrightbutton.jqxButton("destroy");this.pagerrightbutton=null}if(this.pagerleftbutton){this.removeHandler(this.pagerleftbutton,"mousedown");this.removeHandler(this.pagerleftbutton,"mouseup");this.removeHandler(this.pagerleftbutton,"click");this.pagerleftbutton.jqxButton("destroy");this.removeHandler(b(document),"mouseup.pagerbuttons"+this.element.id);this.pagerleftbutton=null}this.removeHandler(b(document),"selectstart."+this.element.id);this.removeHandler(b(document),"mousedown.resize"+this.element.id);this.removeHandler(b(document),"mouseup.resize"+this.element.id);this.removeHandler(b(document),"mousemove.resize"+this.element.id);if(this.isTouchDevice()){var l=b.jqx.mobile.getTouchEventName("touchmove")+".resize"+this.element.id;var d=b.jqx.mobile.getTouchEventName("touchstart")+".resize"+this.element.id;var g=b.jqx.mobile.getTouchEventName("touchend")+".resize"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g)}this.removeHandler(b(document),"mousedown.reorder"+this.element.id);this.removeHandler(b(document),"mouseup.reorder"+this.element.id);this.removeHandler(b(document),"mousemove.reorder"+this.element.id);if(this.isTouchDevice()){var l=b.jqx.mobile.getTouchEventName("touchmove")+".reorder"+this.element.id;var d=b.jqx.mobile.getTouchEventName("touchstart")+".reorder"+this.element.id;var g=b.jqx.mobile.getTouchEventName("touchend")+".reorder"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g)}this.removeHandler(b(window),"resize."+this.element.id);if(this.groupable){var l="mousemove.grouping"+this.element.id;var d="mousedown.grouping"+this.element.id;var g="mouseup.grouping"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g)}if(this.columnsreorder){var l="mousemove.reorder"+this.element.id;var d="mousedown.reorder"+this.element.id;var g="mouseup.reorder"+this.element.id;this.removeHandler(b(document),l);this.removeHandler(b(document),d);this.removeHandler(b(document),g);delete this.columnsbounds}if(this.content){this.removeHandler(this.content,"mousedown");this.removeHandler(this.content,"scroll")}this._removeHandlers();this.hScrollInstance.destroy();this.vScrollInstance.destroy();this.hScrollBar.remove();this.vScrollBar.remove();this._clearcaches();delete this.hScrollInstance;delete this.vScrollInstance;delete this.visiblerows;delete this.hittestinfo;delete this.rows;delete this.columns;delete this.columnsbydatafield;delete this.pagescache;delete this.pageviews;delete this.cellscache;delete this.heights;delete this.hiddens;delete this.hiddenboundrows;delete this.heightboundrows;delete this.detailboundrows;delete this.details;delete this.expandedgroups;delete this._rowdetailscache;delete this._rowdetailselementscache;delete this.columnsmenu;if(this.columnsheader){this.columnsheader.remove();delete this.columnsheader}if(this.selectionarea){this.selectionarea.remove();delete this.selectionarea}if(this.menuitemsarray&&this.menuitemsarray.length){var o=this.menuitemsarray.length;for(var k=0;k<o;k++){b(this.menuitemsarray[k]).remove()}}delete this.menuitemsarray;this.dataview._clearcaches();this.content.removeClass();this.content.remove();this.content=null;delete this.content;this.vScrollBar=null;this.hScrollBar=null;delete this.hScrollBar;delete this.hScrollBar;if(this.gridcontent){this.gridcontent.remove();delete this.gridcontent}if(this.gridmenu){this.gridmenu=null;delete this.gridmenu}delete this._mousemovefunc;delete this._mousewheelfunc;this.dataview.destroy();delete this.dataview;this.bottomRight.remove();delete this.bottomRight;this.wrapper.remove();delete this.wrapper;if(this.pagerdiv){this.pagerdiv.remove();delete this.pagerdiv}if(this.pagerpageinput){this.pagerpageinput.remove();delete this.pagerpageinput}if(this.pagergoto){this.pagergoto.remove();delete this.pagergoto}if(this.pagershowrows){this.pagershowrows.remove();delete this.pagershowrows}if(this.pagerfirstbutton){this.pagerfirstbutton.remove();delete this.pagerfirstbutton}if(this.pagerlastbutton){this.pagerlastbutton.remove();delete this.pagerlastbutton}if(this.pagerbuttons){this.pagerbuttons.remove();delete this.pagerbuttons}if(this.pagerdetails){this.pagerdetails.remove();delete this.pagerdetails}if(this.pagergotoinput){this.pagergotoinput.remove();delete this.pagergotoinput}this.pager.remove();delete this.pager;this.groupsheader.remove();delete this.groupsheader;this.dataloadelement.remove();delete this.dataloadelement;this.toolbar.remove();delete this.toolbar;this.statusbar.remove();delete this.statusbar;this.host.removeData();this.host.removeClass();this.host.remove();this.host=null;delete this.host;delete this.element;delete this.set;delete this.get;delete this.that;delete this.call},_initializeColumns:function(){var f=this.source?this.source.datafields:null;if(f==null&&this.source&&this.source._source){f=this.source._source.datafields}var j=f?f.length>0:false;if(this.autogeneratecolumns){var l=new Array();if(f){b.each(f,function(){var i={datafield:this.name,text:this.text||this.name,cellsformat:this.format||""};l.push(i)})}else{if(this.source.records.length>0){var n=this.source.records[0];for(obj in n){if(obj!="uid"){var g={width:100,datafield:obj,text:obj};l.push(g)}}}}this.columns=l}if(this.columns&&this.columns.records){for(var h=0;h<this.columns.records.length;h++){this._removecolumnhandlers(this.columns.records[h])}}var k=this.that;var e=new b.jqx.collection(this.element);var d=0;this._haspinned=false;if(!this._columns){this._columns=this.columns}else{this.columns=this._columns}if(this.groupable){b.each(this.groups,function(i){var o=new c(k,this);o.visibleindex=d++;o.width=k.groupindentwidth;e.add(o);o.grouped=true;o.filterable=false;o.sortable=false;o.editable=false;o.resizable=false;o.draggable=false})}if(this.rowdetails&&this.showrowdetailscolumn){var g=new c(k,this);g.visibleindex=d++;g.width=k.groupindentwidth;g.pinned=true;g.editable=false;g.filterable=false;g.draggable=false;g.groupable=false;g.resizable=false;e.add(g);k._haspinned=true}if(this.selectionmode=="checkbox"){var g=new c(k,null);g.visibleindex=d++;g.width=k.groupindentwidth;g.checkboxcolumn=true;g.editable=false;g.columntype="checkbox";g.groupable=false;g.draggable=false;g.filterable=false;g.resizable=false;g.datafield="_checkboxcolumn";e.add(g)}var m=new Array();b.each(this.columns,function(i){if(k.columns[i]!=undefined){var o=new c(k,this);o.visibleindex=d++;if(this.dataField!=undefined){this.datafield=this.dataField}if(this.pinned){k._haspinned=true}if(k.showeverpresentrow){if(this.datafield==="addButtonColumn"||this.datafield==="resetButtonColumn"||this.datafield==="updateButtonColumn"||this.datafield==="deleteButtonColumn"){o.editable=false;o.groupable=false;o.draggable=false;o.filterable=false;o.resizable=false;o.menu=false}}if(this.datafield==null){if(k.source&&k.source._source&&(k.source._source.datatype=="array")){if(!j){if(!k.source._source.datafields){k.source._source.datafields=new Array();k.source._source.datafields.push({name:i.toString()})}else{k.source._source.datafields.push({name:i.toString()})}}this.datafield=i.toString();this.displayfield=i.toString();o.datafield=this.datafield;o.displayfield=this.displayfield}}else{if(m[this.datafield]){throw new Error("jqxGrid: Invalid column 'datafield' setting. jqxGrid's columns should be initialized with unique data fields.");k.host.remove();return false}else{m[this.datafield]=true}}e.add(o)}});if(this.rtl){e.records.reverse()}this.columns=e},_initializeRows:function(){var d=new b.jqx.collection(this.element);if(this.rows){this.rows.clear()}this.rows=d},_raiseEvent:function(i,e){if(e==undefined){e={owner:null}}if(this._trigger===false){return}var f=this.events[i];if(!this._camelCase){f=f.toLowerCase()}if(i==2||i==15){if(this.showeverpresentrow&&(this.everpresentrowactions.indexOf("delete")>=0||this.everpresentrowactions.indexOf("update")>=0)){if(this.updateeverpresentrow){var h=this}setTimeout(function(){h.updateeverpresentrow()},50)}}args=e;args.owner=this;var g=new b.Event(f);g.owner=this;g.args=args;var d=this.host.trigger(g);e=g.args;return d},wheel:function(f,e){if(e.autoheight&&e.hScrollBar.css("visibility")!="visible"){f.returnValue=true;return true}var g=0;if(!f){f=window.event}if(f.originalEvent&&f.originalEvent.wheelDelta){f.wheelDelta=f.originalEvent.wheelDelta}if(f.wheelDelta){g=f.wheelDelta/120}else{if(f.detail){g=-f.detail/3}}if(g){var d=e._handleDelta(g);if(d){if(f.preventDefault){f.preventDefault()}if(f.originalEvent!=null){f.originalEvent.mouseHandled=true}if(f.stopPropagation!=undefined){f.stopPropagation()}}if(d){d=false;f.returnValue=d;return d}else{return false}}if(f.preventDefault){f.preventDefault()}f.returnValue=false},_handleDelta:function(f){if(this.vScrollBar.css("visibility")!="hidden"){var e=this.vScrollInstance.value;if(f<0){this.scrollDown()}else{this.scrollUp()}var d=this.vScrollInstance.value;if(e!=d){return true}}else{if(this.hScrollBar.css("visibility")!="hidden"){var e=this.hScrollInstance.value;if(f>0){if(this.hScrollInstance.value>2*this.horizontalscrollbarstep){this.hScrollInstance.setPosition(this.hScrollInstance.value-2*this.horizontalscrollbarstep)}else{this.hScrollInstance.setPosition(0)}}else{if(this.hScrollInstance.value<this.hScrollInstance.max){this.hScrollInstance.setPosition(this.hScrollInstance.value+2*this.horizontalscrollbarstep)}else{this.hScrollInstance.setPosition(this.hScrollInstance.max)}}var d=this.hScrollInstance.value;if(e!=d){return true}}}return false},scrollDown:function(){if(this.vScrollBar.css("visibility")=="hidden"){return}var d=this.vScrollInstance;if(d.value+this.rowsheight<=d.max){d.setPosition(parseInt(d.value)+this.rowsheight)}else{d.setPosition(d.max)}},scrollUp:function(){if(this.vScrollBar.css("visibility")=="hidden"){return}var d=this.vScrollInstance;if(d.value-this.rowsheight>=d.min){d.setPosition(parseInt(d.value)-this.rowsheight)}else{d.setPosition(d.min)}},_removeHandlers:function(){var d=this.that;d.removeHandler(b(window),"orientationchange.jqxgrid"+d.element.id);d.removeHandler(b(window),"orientationchanged.jqxgrid"+d.element.id);d.removeHandler(d.vScrollBar,"valueChanged");d.removeHandler(d.hScrollBar,"valueChanged");d.vScrollInstance.valueChanged=null;d.hScrollInstance.valueChanged=null;var e="mousedown.jqxgrid";if(d.isTouchDevice()){e=b.jqx.mobile.getTouchEventName("touchend")}d.removeHandler(d.host,"dblclick.jqxgrid");d.removeHandler(d.host,e);d.removeHandler(d.content,"mousemove",d._mousemovefunc);d.removeHandler(d.host,"mouseleave.jqxgrid");d.removeHandler(d.content,"mouseenter");d.removeHandler(d.content,"mouseleave");d.removeHandler(d.content,"mousedown");d.removeHandler(d.content,"scroll");d.removeHandler(d.content,"selectstart."+d.element.id);d.removeHandler(d.host,"dragstart."+d.element.id);d.removeHandler(d.host,"keydown.edit"+d.element.id);d.removeHandler(b(document),"keydown.edit"+d.element.id);d.removeHandler(b(document),"keyup.edit"+d.element.id);if(d._mousemovedocumentfunc){d.removeHandler(b(document),"mousemove.selection"+d.element.id,d._mousemovedocumentfunc)}d.removeHandler(b(document),"mouseup.selection"+d.element.id);if(d._mousewheelfunc){d.removeHandler(d.host,"mousewheel",d._mousewheelfunc)}if(d.editable){d.removeHandler(b(document),"mousedown.gridedit"+d.element.id)}if(d.host.off){d.content.off("mousemove");d.host.off("mousewheel")}},_addHandlers:function(){var e=this.that;var d=e.isTouchDevice();if(!d){e.addHandler(e.host,"dragstart."+e.element.id,function(j){return false})}if(e.scrollbarautoshow){e.addHandler(e.host,"mouseenter.gridscroll"+e.element.id,function(j){e.vScrollBar.fadeIn("fast");e.hScrollBar.fadeIn("fast")});e.addHandler(e.host,"mouseleave.gridscroll"+e.element.id,function(j){if(!e.vScrollInstance.isScrolling()&&!e.hScrollInstance.isScrolling()){e.vScrollBar.fadeOut("fast");e.hScrollBar.fadeOut("fast")}})}if(e.editable){e.addHandler(b(document),"mousedown.gridedit"+e.element.id,function(m){if(e.editable&&e.begincelledit){if(e.editcell){if(!e.vScrollInstance.isScrolling()&&!e.vScrollInstance.isScrolling()){var r=e.host.coord();var q=e.host.width();var n=e.host.height();var v=false;var k=false;var t=false;if(m.pageY<r.top||m.pageY>r.top+n){v=true;k=true}if(m.pageX<r.left||m.pageX>r.left+q){v=true;t=true}if(v){var u=false;if(e.editcell&&e.editcell.editor){switch(e.editcell.columntype){case"datetimeinput":if(e.editcell.editor.jqxDateTimeInput&&e.editcell.editor.jqxDateTimeInput("container")&&e.editcell.editor.jqxDateTimeInput("container")[0].style.display=="block"){var s=e.editcell.editor.jqxDateTimeInput("container").coord().top;var j=e.editcell.editor.jqxDateTimeInput("container").coord().top+e.editcell.editor.jqxDateTimeInput("container").height();if(k&&(m.pageY<s||m.pageY>j)){v=true;e.editcell.editor.jqxDateTimeInput("close")}else{return}}break;case"combobox":if(e.editcell.editor.jqxComboBox&&e.editcell.editor.jqxComboBox("container")&&e.editcell.editor.jqxComboBox("container")[0].style.display=="block"){var s=e.editcell.editor.jqxComboBox("container").coord().top;var j=e.editcell.editor.jqxComboBox("container").coord().top+e.editcell.editor.jqxComboBox("container").height();if(k&&(m.pageY<s||m.pageY>j)){v=true;e.editcell.editor.jqxComboBox("close")}else{return}}break;case"dropdownlist":if(e.editcell.editor.jqxDropDownList&&e.editcell.editor.jqxDropDownList("container")&&e.editcell.editor.jqxDropDownList("container")[0].style.display=="block"){var s=e.editcell.editor.jqxDropDownList("container").coord().top;var j=e.editcell.editor.jqxDropDownList("container").coord().top+e.editcell.editor.jqxDropDownList("container").height();if(k&&(m.pageY<s||m.pageY>j)){v=true;e.editcell.editor.jqxDropDownList("close")}else{return}}break;case"template":case"custom":var l=["jqxDropDownList","jqxComboBox","jqxDropDownButton","jqxDateTimeInput"];var p=function(A){var z=e.editcell.editor.data();if(z[A]&&z[A].instance.container&&z[A].instance.container[0].style.display=="block"){var x=z[A].instance;var B=x.container.coord().top;var y=x.container.coord().top+x.container.height();if(k&&(m.pageY<B||m.pageY>y)){v=true;x.close();return true}else{return false}}};for(var o=0;o<l.length;o++){var w=p(l[o]);if(w==false){return}}break}}e.endcelledit(e.editcell.row,e.editcell.column,false,true);e._oldselectedcell=null}}}}})}e.vScrollInstance.valueChanged=function(j){if(e.virtualsizeinfo){e._closemenu();if(e.scrollmode!="physical"){e._renderrows(e.virtualsizeinfo);e.currentScrollValue=j.currentValue}else{if(e.currentScrollValue!=undefined&&Math.abs(e.currentScrollValue-j.currentValue)>=5){e._renderrows(e.virtualsizeinfo);e.currentScrollValue=j.currentValue}else{e._renderrows(e.virtualsizeinfo);e.currentScrollValue=j.currentValue}}if(!e.pageable&&!e.groupable&&e.dataview.virtualmode){if(e.loadondemandupdate){clearTimeout(e.loadondemandupdate)}e.loadondemandupdate=setTimeout(function(){e.loadondemand=true;e._renderrows(e.virtualsizeinfo)},100)}if(d){e._lastScroll=new Date()}}};e.hScrollInstance.valueChanged=function(l){if(e.virtualsizeinfo){e._closemenu();var k=function(){e._renderhorizontalscroll();e._renderrows(e.virtualsizeinfo);if(e.editcell&&!e.editrow){if(e._showcelleditor&&e.editcell.editing){if(!e.hScrollInstance.isScrolling()){e._showcelleditor(e.editcell.row,e.getcolumn(e.editcell.column),e.editcell.element,e.editcell.init)}}}};var j=e._browser==undefined?e._isIE10():e._browser;if(navigator&&navigator.userAgent.indexOf("Safari")!=-1&&navigator.userAgent.indexOf("Chrome")==-1){if(e._hScrollTimer){clearTimeout(e._hScrollTimer)}e._hScrollTimer=setTimeout(function(){k()},1)}else{if(b.jqx.browser.msie){if(e._hScrollTimer){clearTimeout(e._hScrollTimer)}e._hScrollTimer=setTimeout(function(){k()},0.01)}else{k()}}if(d){e._lastScroll=new Date()}}};e._mousewheelfunc=e._mousewheelfunc||function(j){if(!e.editcell&&e.enablemousewheel){e.wheel(j,e);return false}};e.removeHandler(e.host,"mousewheel",e._mousewheelfunc);e.addHandler(e.host,"mousewheel",e._mousewheelfunc);var h="mousedown.jqxgrid";if(d){h=b.jqx.mobile.getTouchEventName("touchend")}e.addHandler(e.host,h,function(k){if(e.isTouchDevice()){e._newScroll=new Date();if(e._newScroll-e._lastScroll<500){return false}if(b(k.target).ischildof(e.vScrollBar)){return false}if(b(k.target).ischildof(e.hScrollBar)){return false}}e._mousedown=new Date();var j=e._handlemousedown(k,e);if(e.isNestedGrid){if(!e.resizablecolumn&&!e.columnsreorder){k.stopPropagation()}}e._lastmousedown=new Date();return j});if(!d){e.addHandler(e.host,"dblclick.jqxgrid",function(k){if(e.editable&&e.begincelledit&&e.editmode=="dblclick"){e._handledblclick(k,e)}else{if(b.jqx.browser.msie&&b.jqx.browser.version<9){var j=e._handlemousedown(k,e)}}e.mousecaptured=false;e._lastmousedown=new Date();return true});e._mousemovefunc=function(j){if(e._handlemousemove){return e._handlemousemove(j,e)}};e.addHandler(e.content,"mousemove",e._mousemovefunc);if(e._handlemousemoveselection){e._mousemovedocumentfunc=function(j){if(e._handlemousemoveselection){return e._handlemousemoveselection(j,e)}};e.addHandler(b(document),"mousemove.selection"+e.element.id,e._mousemovedocumentfunc)}e.addHandler(b(document),"mouseup.selection"+e.element.id,function(j){if(e._handlemouseupselection){e._handlemouseupselection(j,e)}})}try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var i=null;if(window.parent&&document.referrer){i=document.referrer}if(i&&i.indexOf(document.location.host)!=-1){var g=function(k){if(e._handlemouseupselection){try{e._handlemouseupselection(k,e)}catch(j){}}};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}}catch(f){}e.focused=false;if(!d){e.addHandler(e.content,"mouseenter",function(j){e.focused=true;if(e.wrapper){e.wrapper.attr("tabindex",1);e.content.attr("tabindex",2)}if(e._overlayElement){if(e.vScrollInstance.isScrolling()||e.hScrollInstance.isScrolling()){e._overlayElement[0].style.visibility="visible"}else{e._overlayElement[0].style.visibility="hidden"}}});e.addHandler(e.content,"mouseleave",function(j){if(e._handlemousemove){if(e.enablehover){e._clearhoverstyle()}}if(e._overlayElement){e._overlayElement[0].style.visibility="hidden"}e.focused=false});if(e.groupable||e.columnsreorder){e.addHandler(b(document),"selectstart."+e.element.id,function(j){if(e.__drag===true){return false}})}e.addHandler(e.content,"selectstart."+e.element.id,function(j){if(e.enablebrowserselection){return true}if(e.showfilterrow){if(b(j.target).ischildof(e.filterrow)){return true}}if(e.showeverpresentrow){if(b(j.target).ischildof(e.addnewrow)){return true}if(e.addnewrowtop){if(b(j.target).ischildof(e.addnewrowtop)){return true}}}if(!e.editcell){return false}if(j.stopPropagation){j.stopPropagation()}});e.addHandler(b(document),"keyup.edit"+e.element.id,function(j){e._keydown=false});e.addHandler(b(document),"keydown.edit"+e.element.id,function(l){e._keydown=true&&!e.editcell;var k=l.charCode?l.charCode:l.keyCode?l.keyCode:0;if(e.handlekeyboardnavigation){var m=e.handlekeyboardnavigation(l);if(m==true){return false}}if(e.editable&&e.editcell){if(k==13||k==27){if(e._handleeditkeydown){j=e._handleeditkeydown(l,e)}}}if(k==27){e.mousecaptured=false;if(e.selectionarea.css("visibility")=="visible"){e.selectionarea.css("visibility","hidden")}}if(b.jqx.browser.msie&&b.jqx.browser.version<12&&e.focused&&!e.isNestedGrid){if(k==13&&j==false){return j}var j=true;var k=l.charCode?l.charCode:l.keyCode?l.keyCode:0;if(!e.editcell&&e.editable&&e.editmode!="programmatic"){if(e._handleeditkeydown){j=e._handleeditkeydown(l,e)}}if(j&&e.keyboardnavigation&&e._handlekeydown){j=e._handlekeydown(l,e);if(!j){if(l.preventDefault){l.preventDefault()}if(l.stopPropagation!=undefined){l.stopPropagation()}}return j}}return true});e.addHandler(e.host,"keydown.edit"+e.element.id,function(k){var j=true;if(e.handlekeyboardnavigation){var l=e.handlekeyboardnavigation(k);if(l==true){return false}}if(e.editable&&e.editmode!="programmatic"){if(e._handleeditkeydown){j=e._handleeditkeydown(k,e);if(e.isNestedGrid){k.stopPropagation()}}}if(!(b.jqx.browser.msie&&b.jqx.browser.version<8)){if(j&&e.keyboardnavigation&&e._handlekeydown){j=e._handlekeydown(k,e);if(e.isNestedGrid){k.stopPropagation()}}}else{if(e.isNestedGrid){if(j&&e.keyboardnavigation&&e._handlekeydown){j=e._handlekeydown(k,e);k.stopPropagation()}}}if(!j){if(k.preventDefault){k.preventDefault()}if(k.stopPropagation!=undefined){k.stopPropagation()}}return j})}},_hittestrow:function(s,q){if(this.vScrollInstance==null||this.hScrollInstance==null){return}if(s==undefined){s=0}if(q==undefined){q==0}var l=this.vScrollInstance;var k=this.hScrollInstance;var f=l.value;if(this.vScrollBar.css("visibility")!="visible"){f=0}var m=k.value;if(this.hScrollBar.css("visibility")!="visible"){m=0}if(this.scrollmode=="deferred"&&this._newmax!=null){if(f>this._newmax){f=this._newmax}}var r=parseInt(f)+q;var j=parseInt(m)+s;if(this.visiblerows==null){return}if(this.visiblerows.length==0){return}var e=false;var i=this._findvisiblerow(r,this.visiblerows);if(i>=0){var o=this.visiblerows[i];var d=this.rowdetails&&o.rowdetails;var n=!o.rowdetailshidden;if(d){var g=this.visiblerows[i-1];if(g==o){o=g;i--}if(n){var h=b(this.hittestinfo[i].visualrow).position().top+parseInt(this.table.css("top"));var p=b(this.hittestinfo[i].visualrow).height();if(!(q>=h&&q<=h+p)){i++;o=this.visiblerows[i];e=true}}}}return{index:i,row:o,details:e}},getcellatposition:function(j,q){var r=this.that;var z=this.showheader?this.columnsheader.height()+2:0;var s=this._groupsheader()?this.groupsheader.height():0;var B=this.showtoolbar?this.toolbarheight:0;s+=B;var g=this.host.coord();if(this.hasTransform){g=b.jqx.utilities.getOffset(this.host)}var p=j-g.left;var n=q-z-g.top-s;var d=this._hittestrow(p,n);var k=d.row;var l=d.index;var t=this.table[0].rows[l];if(this.dataview&&this.dataview.records.length==0){var o=this.table[0].rows;var C=0;for(var w=0;w<o.length;w++){if(n>=C&&n<C+this.rowsheight){t=o[w];break}C+=this.rowsheight}k={boundindex:w}}if(t==null){return true}var u=this.hScrollInstance;var v=u.value;var f=0;var m=this.groupable?this.groups.length:0;for(var w=0;w<t.cells.length;w++){var h=parseInt(b(this.columnsrow[0].cells[w]).css("left"));var j=h-v;if(r.columns.records[w].pinned){j=h}if(r.columns.records[w].hidden){continue}var A=j+b(this.columnsrow[0].cells[w]).width();if(A>=p&&p>=j){f=w;break}}if(k!=null){var e=this._getcolumnat(f);return{row:this.getboundindex(k),column:e.datafield,value:this.getcellvalue(this.getboundindex(k),e.datafield)}}return null},_handlemousedown:function(P,l){if(P.target==null){return true}if(l.disabled){return true}if(b(P.target).ischildof(this.columnsheader)||b(P.target).ischildof(this.hScrollBar)||b(P.target).ischildof(this.vScrollBar)){return true}var m;if(P.which){m=(P.which==3)}else{if(P.button){m=(P.button==2)}}var I;if(P.which){I=(P.which==2)}else{if(P.button){I=(P.button==1)}}if(I){return true}if(this.showstatusbar){if(b(P.target).ischildof(this.statusbar)){return true}if(P.target==this.statusbar[0]){return true}}if(this.showtoolbar){if(b(P.target).ischildof(this.toolbar)){return true}if(P.target==this.toolbar[0]){return true}}if(this.pageable){if(b(P.target).ischildof(this.pager)){return true}if(P.target==this.pager[0]){return true}}if(!this.columnsheader){return true}if(!this.editcell){if(this.pageable){if(b(P.target).ischildof(this.pager)){return true}}}var N=this.showheader?this.columnsheader.height()+2:0;var u=this._groupsheader()?this.groupsheader.height():0;var z=this.showtoolbar?this.toolbarheight:0;u+=z;var L=this.host.coord();if(this.hasTransform){L=b.jqx.utilities.getOffset(this.host);var R=this._getBodyOffset();L.left-=R.left;L.top-=R.top}var h=parseInt(P.pageX);var j=parseInt(P.pageY);if(this.isTouchDevice()){var Q=l.getTouches(P);var H=Q[0];h=parseInt(H.pageX);j=parseInt(H.pageY);if(l.touchmode==true){if(H._pageX!=undefined){h=parseInt(H._pageX);j=parseInt(H._pageY)}}}var C=h-L.left;var B=j-N-L.top-u;if(this.pageable&&!this.autoheight&&this.gotopage){var d=this.pager.coord().top-L.top-u-N;if(B>d){return}}var M=this._hittestrow(C,B);if(!M){return}if(M.details){return}var p=M.row;var w=M.index;var q=P.target.className;var g=this.table[0].rows[w];if(g==null){if(l.editable&&l.begincelledit){if(l.editcell){l.endcelledit(l.editcell.row,l.editcell.column,false,true)}}return true}l.mousecaptured=true;l.mousecaptureposition={left:P.pageX,top:P.pageY-u,clickedrow:g};var k=this.hScrollInstance;var s=k.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){s=k.max-k.value}}var A=-1;var v=this.groupable?this.groups.length:0;if(this.rtl){if(this.vScrollBar[0].style.visibility!="hidden"){s-=this.scrollbarsize+4}if(this.hScrollBar[0].style.visibility=="hidden"){s=-parseInt(this.content.css("left"))}}for(var J=0;J<g.cells.length;J++){var K=parseInt(b(this.columnsrow[0].cells[J]).css("left"));var h=K-s;if(l.columns.records[J].pinned&&!l.rtl){h=K}var D=this._getcolumnat(J);if(D!=null&&D.hidden){continue}var E=h+b(this.columnsrow[0].cells[J]).width();if(E>=C&&C>=h){A=J;l.mousecaptureposition.clickedcell=J;break}}if(this.rtl&&this._haspinned){for(var J=g.cells.length-1;J>=0;J--){if(!l.columns.records[J].pinned){break}var K=b(this.columnsrow[0].cells[J]).coord().left-this.host.coord().left;var h=K;var D=this._getcolumnat(J);if(D!=null&&D.hidden){continue}var E=h+b(this.columnsrow[0].cells[J]).width();if(E>=C&&C>=h){A=J;l.mousecaptureposition.clickedcell=J;break}}}if(p!=null&&A>=0){this._raiseEvent(1,{rowindex:this.getboundindex(p),visibleindex:p.visibleindex,row:p,group:p.group,rightclick:m,originalEvent:P});var D=this._getcolumnat(A);var F=this.getcellvalue(this.getboundindex(p),D.datafield);if(this.editable&&this.editcell){if(D.datafield==this.editcell.column){if(this.getboundindex(p)==this.editcell.row){this.mousecaptured=false}}}this._raiseEvent(8,{rowindex:this.getboundindex(p),column:D?D.getcolumnproperties():null,row:p,visibleindex:p.visibleindex,datafield:D?D.datafield:null,columnindex:A,value:F,rightclick:m,originalEvent:P});if(this.isTouchDevice()){if(D.columntype=="checkbox"&&this.editable&&this._overlayElement){if(!this.editcell){this._overlayElement.css("visibility","hidden");this.editcell=this.getcell(w,D.datafield);return true}}else{if(D.columntype=="button"&&this._overlayElement){if(D.buttonclick){D.buttonclick(g.cells[A].buttonrow,P)}return true}}}var f=false;if(this._lastmousedown!=null){if(this._mousedown-this._lastmousedown<300){if(this._clickedrowindex==this.getboundindex(p)){this._raiseEvent(22,{rowindex:this.getboundindex(p),row:p,visibleindex:p.visibleindex,group:p.group,rightclick:m,originalEvent:P});if(this._clickedcolumn==D.datafield){this._raiseEvent(23,{rowindex:this.getboundindex(p),row:p,visibleindex:p.visibleindex,column:D?D.getcolumnproperties():null,datafield:D?D.datafield:null,columnindex:A,value:F,rightclick:m,originalEvent:P})}f=true;this._clickedrowindex=-1;this._clickedcolumn=null;if(P.isPropagationStopped&&P.isPropagationStopped()){return false}}}}if(m){return true}if(!f){this._clickedrowindex=this.getboundindex(p);this._clickedcolumn=D.datafield}var e=b.jqx.utilities.getBrowser();if(e.browser=="msie"&&parseInt(e.version)<=7){if(A==0&&this.rowdetails){q="jqx-grid-group-collapse"}if(v>0){if(A<=v){q="jqx-grid-group-collapse"}}}if(q.indexOf("jqx-grid-group-expand")!=-1||q.indexOf("jqx-grid-group-collapse")!=-1){if(!this.rtl){if(v>0&&A<v&&this._togglegroupstate){this._togglegroupstate(p.bounddata,true)}else{if(A==v&&this.rowdetails&&this.showrowdetailscolumn){this._togglerowdetails(p.bounddata,true);this.gridcontent[0].scrollTop=0;this.gridcontent[0].scrollLeft=0}}}else{if(v>0&&A>g.cells.length-v-1&&this._togglegroupstate){this._togglegroupstate(p.bounddata,true)}else{if(A==g.cells.length-1-v&&this.rowdetails&&this.showrowdetailscolumn){this._togglerowdetails(p.bounddata,true);this.gridcontent[0].scrollTop=0;this.gridcontent[0].scrollLeft=0}}}}else{if(p.boundindex!=-1){var n=this.selectedrowindexes.slice(0);var O=false;if(l.selectionmode!="none"&&l.selectionmode!="checkbox"&&this._selectrowwithmouse){if(l.selectionmode=="multiplecellsadvanced"||l.selectionmode=="multiplecellsextended"||l.selectionmode=="multiplerowsextended"||l.selectionmode=="multiplerowsadvanced"){if(!P.ctrlKey&&!P.shiftKey&&!P.metaKey){l.selectedrowindexes=new Array();l.selectedcells=new Array()}}var t=false;var o=this.getboundindex(p);if(l._oldselectedrow===o||l.selectionmode==="none"){t=true}if(l.selectionmode.indexOf("cell")==-1){if((l.selectionmode!="singlerow")||(l.selectedrowindex!=o&&l.selectionmode=="singlerow")){this._applyrowselection(o,true,false,null,D.datafield);this._selectrowwithmouse(l,M,n,D.datafield,P.ctrlKey||P.metaKey,P.shiftKey)}}else{if(D.datafield!=null){this._selectrowwithmouse(l,M,n,D.datafield,P.ctrlKey||P.metaKey,P.shiftKey);if(!P.shiftKey){this._applycellselection(o,D.datafield,true,false)}}}if(l._oldselectedcell){if(l._oldselectedcell.datafield==l.selectedcell.datafield&&l._oldselectedcell.rowindex==l.selectedcell.rowindex){O=true}}l._oldselectedcell=l.selectedcell;l._oldselectedrow=o}if(l.autosavestate){if(l.savestate){l.savestate()}}if(l.editable&&l.begincelledit&&l.editmode!="programmatic"){if(P.isPropagationStopped&&P.isPropagationStopped()){return false}if(l.editmode=="selectedrow"){if(t&&!l.editcell){if(D.columntype!=="checkbox"){var r=l.beginrowedit(this.getboundindex(p))}}else{if(l.editcell&&!t&&l.selectionmode!="none"){var r=l.endrowedit(l.editcell.row)}}}else{var G=l.editmode=="click"||(O&&l.editmode=="selectedcell");if(l.selectionmode.indexOf("cell")==-1){if(l.editmode!="dblclick"){G=true}}if(G){if(p.boundindex!=undefined&&D.editable){var r=l.begincelledit(this.getboundindex(p),D.datafield,D.defaulteditorvalue);if(l.selectionmode.indexOf("cell")!=-1){l._applycellselection(o,D.datafield,false,false)}}}if(l.selectionmode.indexOf("cell")!=-1){if(l.editmode=="selectedcell"&&!O&&l.editcell){l.endcelledit(l.editcell.row,l.editcell.column,false,true)}}}return true}}}}return true},_columnPropertyChanged:function(e,d,g,f){},_rowPropertyChanged:function(g,d,f,e){},_serializeObject:function(d){if(d==null){return""}var e="";b.each(d,function(g){var h=this;if(g>0){e+=", "}e+="[";var f=0;for(obj in h){if(f>0){e+=", "}e+="{"+obj+":"+h[obj]+"}";f++}e+="]"});return e},isbindingcompleted:function(){return !this._loading},propertyChangedHandler:function(e,f,i,h){if(this.isInitialized==undefined||this.isInitialized==false){return}f=f.toLowerCase();switch(f){case"editable":e.refresh();break;case"everpresentrowactionsmode":if(i!=h){e._removeaddnewrow();e.render()}break;case"everpresentrowactions":e._updateaddnewrowui();break;case"showeverpresentrow":case"everpresentrowposition":case"everpresentrowheight":if(i!=h){e._removeaddnewrow();e.render()}break;case"rtl":e.content.css("left","");e.columns=e._columns;e._filterrowcache=[];e.vScrollBar.jqxScrollBar({rtl:h});e.hScrollBar.jqxScrollBar({rtl:h});if(e._initpager){e._initpager()}if(e._initgroupsheader){e._initgroupsheader()}e.render();break;case"enablebrowserselection":if(!e.showfilterrow){if(!e.showstatusbar&&!e.showtoolbar){e.host.addClass("jqx-disableselect")}e.content.addClass("jqx-disableselect")}if(e.enablebrowserselection){e.content.removeClass("jqx-disableselect");e.host.removeClass("jqx-disableselect")}break;case"columnsheight":if(e.columnsheight!=25||e.columngroups){e._measureElement("column")}e._render(true,true,true,false,false);break;case"rowsheight":if(h!=i){if(e.rowsheight!=25){e._measureElement("cell")}e.virtualsizeinfo=null;e.rendergridcontent(true,false);e.refresh()}break;case"scrollMode":e.vScrollInstance.thumbStep=e.rowsheight;break;case"showdefaultloadelement":e._builddataloadelement();break;case"showfiltermenuitems":case"showsortmenuitems":case"showgroupmenuitems":case"filtermode":e._initmenu();break;case"touchmode":if(i!=h){e._removeHandlers();e.touchDevice=null;e.vScrollBar.jqxScrollBar({touchMode:h});e.hScrollBar.jqxScrollBar({touchMode:h});e._updateTouchScrolling();e._arrange();e._updatecolumnwidths();e._updatecellwidths();e._addHandlers()}break;case"autoshowcolumnsmenubutton":if(i!=h){e._rendercolumnheaders()}break;case"rendergridrows":if(i!=h){e.updatebounddata()}break;case"editmode":if(i!=h){e._removeHandlers();e._addHandlers()}break;case"source":e.updatebounddata();if(e.virtualmode&&!e._loading){e.loadondemand=true;e._renderrows(e.virtualsizeinfo)}break;case"horizontalscrollbarstep":case"verticalscrollbarstep":case"horizontalscrollbarlargestep":case"verticalscrollbarlargestep":this.vScrollBar.jqxScrollBar({step:this.verticalscrollbarstep,largestep:this.verticalscrollbarlargestep});this.hScrollBar.jqxScrollBar({step:this.horizontalscrollbarstep,largestep:this.horizontalscrollbarlargestep});break;case"closeablegroups":if(e._initgroupsheader){e._initgroupsheader()}break;case"showgroupsheader":if(i!=h){e._arrange();if(e._initgroupsheader){e._initgroupsheader()}e._renderrows(e.virtualsizeinfo)}break;case"theme":if(h!=i){b.jqx.utilities.setTheme(i,h,e.host);if(e.gridmenu){e.gridmenu.jqxMenu({theme:h})}if(e.pageable){e._updatepagertheme()}if(e.filterable){e._updatefilterrowui(true)}if(e.showeverpresentrow){e._updateaddnewrowui(true)}}break;case"showtoolbar":case"toolbarheight":if(i!=h){e._arrange();e.refresh()}break;case"showstatusbar":if(i!=h){if(e.statusbar){if(h){e.statusbar.show()}else{e.statusbar.hide()}}e._arrange();e.refresh()}break;case"statusbarheight":if(i!=h){e._arrange();e.refresh()}break;case"filterable":case"showfilterrow":if(i!=h){e.render()}break;case"autoshowfiltericon":case"showfiltercolumnbackground":case"showpinnedcolumnbackground":case"showsortcolumnbackground":if(i!=h){e.rendergridcontent()}break;case"showrowdetailscolumn":if(i!=h){e.render()}break;case"scrollbarsize":if(i!=h){e._arrange()}break;case"width":case"height":if(i!=h){e._updatesize(true,true);e._resizeWindow();if(e.virtualmode&&!e._loading){e.vScrollInstance.setPosition(0)}else{setTimeout(function(){e._renderrows(e.virtualsizeinfo)},100)}}break;case"altrows":case"altstart":case"altstep":if(i!=h){e._renderrows(e.virtualsizeinfo)}break;case"groupsheaderheight":if(i!=h){e._arrange();if(e._initgroupsheader){e._initgroupsheader()}}break;case"pagerheight":if(i!=h){e._initpager()}break;case"selectedrowindex":e.selectrow(h);break;case"selectionmode":if(i!=h){if(h=="none"){e.selectedrowindexes=new Array();e.selectedcells=new Array();e.selectedrowindex=-1}e._renderrows(e.virtualsizeinfo);if(h=="checkbox"){e._render(false,false,true,false,false)}}break;case"showheader":if(h){e.columnsheader.css("display","block")}else{e.columnsheader.css("display","none")}break;case"virtualmode":if(i!=h){e.dataview.virtualmode=e.virtualmode;e.dataview.refresh(false);e._render(false,false,false)}break;case"columnsmenu":if(i!=h){e.render()}break;case"columngroups":e._render(true,true,true,false,false);break;case"columns":if(e._serializeObject(e._cachedcolumns)!==e._serializeObject(h)){var d=false;if(e.filterable){if(i&&i.records){b.each(i.records,function(){if(this.filter){d=true}e.dataview.removefilter(this.displayfield,this.filter)})}}e._columns=null;e._filterrowcache=[];e.render();if(d){e.applyfilters()}e._cachedcolumns=e.columns;if(e.removesort){e.removesort()}}else{e[f]=i}break;case"autoheight":if(i!=h){e._render(false,false,true)}break;case"pagermode":case"pagerbuttonscount":if(i!=h){if(e._initpager){if(e.pagershowrowscombo){e.pagershowrowscombo.jqxDropDownList("destroy");e.pagershowrowscombo=null}if(e.pagerrightbutton){e.removeHandler(e.pagerrightbutton,"mousedown");e.removeHandler(e.pagerrightbutton,"mouseup");e.removeHandler(e.pagerrightbutton,"click");e.pagerrightbutton.jqxButton("destroy");e.pagerrightbutton=null}if(e.pagerleftbutton){e.removeHandler(e.pagerleftbutton,"mousedown");e.removeHandler(e.pagerleftbutton,"mouseup");e.removeHandler(e.pagerleftbutton,"click");e.pagerleftbutton.jqxButton("destroy");e.removeHandler(b(document),"mouseup.pagerbuttons"+e.element.id);e.pagerleftbutton=null}e.pagerdiv.remove();e._initpager()}}break;case"pagesizeoptions":case"pageable":case"pagesize":if(i!=h){if(e._loading){throw new Error("jqxGrid: "+e.loadingerrormessage);return}if(!e.host.jqxDropDownList||!e.host.jqxListBox){e._testmodules();return}if(e._initpager){if(f!="pageable"&&f!="pagermode"){if(typeof(h)=="string"){var g="The expected value type is: Int.";if(f!="pagesize"){var g="The expected value type is: Array of Int values."}throw new Error("Invalid Value for: "+f+". "+g)}}e.dataview.pageable=e.pageable;e.dataview.pagenum=0;e.dataview.pagesize=e._getpagesize();if(e.virtualmode){e.updatebounddata()}e.dataview.refresh(true);e._initpager();if(f=="pagesizeoptions"){if(h!=null&&h.length>0){e.pagesize=parseInt(h[0]);e.dataview.pagesize=parseInt(h[0]);e.prerenderrequired=true;e._requiresupdate=true;e.dataview.pagenum=-1;e.gotopage(0)}}}e._render(false,false,false)}break;case"groups":if(e._serializeObject(i)!==e._serializeObject(h)){e.dataview.groups=h;e._refreshdataview();e._render(true,true,true,false)}break;case"groupable":if(i!=h){e.dataview.groupable=e.groupable;e.dataview.pagenum=0;e.dataview.refresh(false);e._render(false,false,true)}break;case"renderstatusbar":if(h!=null){e.renderstatusbar(e.statusbar)}break;case"rendertoolbar":if(h!=null){e.rendertoolbar(e.toolbar)}break;case"disabled":if(h){e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}else{e.host.removeClass(e.toThemeProperty("jqx-fill-state-disabled"))}b.jqx.aria(e,"aria-disabled",e.disabled);if(e.pageable){if(e.pagerrightbutton){e.pagerrightbutton.jqxButton({disabled:h});e.pagerleftbutton.jqxButton({disabled:h});e.pagershowrowscombo.jqxDropDownList({disabled:h});e.pagergotoinput.attr("disabled",h)}if(e.pagerfirstbutton){e.pagerfirstbutton.jqxButton({disabled:h});e.pagerlastbutton.jqxButton({disabled:h})}}e.vScrollBar.jqxScrollBar({disabled:h});e.hScrollBar.jqxScrollBar({disabled:h});if(e.filterable&&e.showfilterrow){e._updatefilterrowui(true)}if(e.showeverpresentrow){e._updateaddnewrowui(true)}break}}});function c(d,e){this.owner=d;this.datafield=null;this.displayfield=null;this.text="";this.createfilterpanel=null;this.sortable=true;this.hideable=true;this.editable=true;this.hidden=false;this.groupable=true;this.renderer=null;this.cellsrenderer=null;this.checkchange=null,this.threestatecheckbox=false;this.buttonclick=null,this.columntype=null;this.cellsformat="";this.align="left";this.cellsalign="left";this.width="auto";this.minwidth=25;this.maxwidth="auto";this.pinned=false;this.visibleindex=-1;this.filterable=true;this.filter=null;this.filteritems=[];this.resizable=true;this.initeditor=null;this.createeditor=null;this.destroyeditor=null;this.geteditorvalue=null;this.validation=null;this.classname="";this.cellclassname="";this.cellendedit=null;this.cellbeginedit=null;this.cellvaluechanging=null;this.aggregates=null;this.aggregatesrenderer=null;this.menu=true;this.createfilterwidget=null;this.filtertype="default";this.filtercondition=null;this.rendered=null;this.exportable=true;this.exporting=false;this.draggable=true;this.nullable=true;this.clipboard=true;this.enabletooltips=true;this.columngroup=null;this.filterdelay=800;this.reseteverpresentrowwidgetvalue=null;this.geteverpresentrowwidgetvalue=null;this.createeverpresentrowwidget=null;this.initeverpresentrowwidget=null;this.validateeverpresentrowwidgetvalue=null;this.destroyeverpresentrowwidget=null;this.getcolumnproperties=function(){return{nullable:this.nullable,sortable:this.sortable,hideable:this.hideable,hidden:this.hidden,groupable:this.groupable,width:this.width,align:this.align,editable:this.editable,minwidth:this.minwidth,maxwidth:this.maxwidth,resizable:this.resizable,datafield:this.datafield,text:this.text,exportable:this.exportable,cellsalign:this.cellsalign,pinned:this.pinned,cellsformat:this.cellsformat,columntype:this.columntype,classname:this.classname,cellclassname:this.cellclassname,menu:this.menu}},this.setproperty=function(f,g){if(this[f]){var h=this[f];this[f]=g;this.owner._columnPropertyChanged(this,f,g,h)}else{if(this[f.toLowerCase()]){var h=this[f.toLowerCase()];this[f.toLowerCase()]=g;this.owner._columnPropertyChanged(this,f.toLowerCase(),g,h)}}};this._initfields=function(g){if(g!=null){var f=this.that;if(b.jqx.hasProperty(g,"dataField")){this.datafield=b.jqx.get(g,"dataField")}if(b.jqx.hasProperty(g,"displayField")){this.displayfield=b.jqx.get(g,"displayField")}else{this.displayfield=this.datafield}if(b.jqx.hasProperty(g,"enableTooltips")){this.enabletooltips=b.jqx.get(g,"enableTooltips")}if(b.jqx.hasProperty(g,"text")){this.text=b.jqx.get(g,"text")}else{this.text=this.displayfield}if(b.jqx.hasProperty(g,"createfilterpanel")){this.createfilterpanel=b.jqx.get(g,"createfilterpanel")}if(b.jqx.hasProperty(g,"sortable")){this.sortable=b.jqx.get(g,"sortable")}if(b.jqx.hasProperty(g,"hideable")){this.hideable=b.jqx.get(g,"hideable")}if(b.jqx.hasProperty(g,"hidden")){this.hidden=b.jqx.get(g,"hidden")}if(b.jqx.hasProperty(g,"groupable")){this.groupable=b.jqx.get(g,"groupable")}if(b.jqx.hasProperty(g,"renderer")){this.renderer=b.jqx.get(g,"renderer")}if(b.jqx.hasProperty(g,"align")){this.align=b.jqx.get(g,"align")}if(b.jqx.hasProperty(g,"cellsAlign")){this.cellsalign=b.jqx.get(g,"cellsAlign")}if(b.jqx.hasProperty(g,"clipboard")){this.cellsalign=b.jqx.get(g,"clipboard")}if(b.jqx.hasProperty(g,"cellsFormat")){this.cellsformat=b.jqx.get(g,"cellsFormat")}if(b.jqx.hasProperty(g,"width")){this.width=b.jqx.get(g,"width")}if(b.jqx.hasProperty(g,"minWidth")){this.minwidth=parseInt(b.jqx.get(g,"minWidth"));if(isNaN(this.minwidth)){this.minwidth=25}}if(b.jqx.hasProperty(g,"maxWidth")){this.maxwidth=parseInt(b.jqx.get(g,"maxWidth"));if(isNaN(this.maxwidth)){this.maxwidth="auto"}}if(b.jqx.hasProperty(g,"cellsRenderer")){this.cellsrenderer=b.jqx.get(g,"cellsRenderer")}else{if(g.cellsRenderer){this.cellsrenderer=g.cellsRenderer}}if(b.jqx.hasProperty(g,"columnType")){this.columntype=b.jqx.get(g,"columnType")}if(b.jqx.hasProperty(g,"checkChange")){this.checkchange=b.jqx.get(g,"checkChange")}if(b.jqx.hasProperty(g,"buttonClick")){this.buttonclick=b.jqx.get(g,"buttonClick")}else{if(g.buttonClick){this.buttonclick=g.buttonClick}}if(b.jqx.hasProperty(g,"pinned")){this.pinned=b.jqx.get(g,"pinned")}if(b.jqx.hasProperty(g,"visibleIndex")){this.visibleindex=b.jqx.get(g,"visibleIndex")}if(b.jqx.hasProperty(g,"filterable")){this.filterable=b.jqx.get(g,"filterable")}if(b.jqx.hasProperty(g,"filter")){this.filter=b.jqx.get(g,"filter")}if(b.jqx.hasProperty(g,"resizable")){this.resizable=b.jqx.get(g,"resizable")}if(b.jqx.hasProperty(g,"editable")){this.editable=b.jqx.get(g,"editable")}if(b.jqx.hasProperty(g,"initEditor")){this.initeditor=b.jqx.get(g,"initEditor")}else{if(g.initEditor){this.initeditor=g.initEditor}}if(b.jqx.hasProperty(g,"createEditor")){this.createeditor=b.jqx.get(g,"createEditor")}else{if(g.createEditor){this.createeditor=g.createEditor}}if(b.jqx.hasProperty(g,"reseteverpresentrowwidgetvalue")||b.jqx.hasFunction(g,"reseteverpresentrowwidgetvalue")){this.reseteverpresentrowwidgetvalue=b.jqx.get(g,"reseteverpresentrowwidgetvalue")}else{if(g.resetEverPresentRowWidgetValue){this.reseteverpresentrowwidgetvalue=g.resetEverPresentRowWidgetValue}}if(b.jqx.hasProperty(g,"geteverpresentrowwidgetvalue")||b.jqx.hasFunction(g,"geteverpresentrowwidgetvalue")){this.geteverpresentrowwidgetvalue=b.jqx.get(g,"geteverpresentrowwidgetvalue")}else{if(g.getEverPresentRowWidgetValue){this.geteverpresentrowwidgetvalue=g.getEverPresentRowWidgetValue}}if(b.jqx.hasProperty(g,"createeverpresentrowwidget")||b.jqx.hasFunction(g,"createeverpresentrowwidget")){this.createeverpresentrowwidget=b.jqx.get(g,"createeverpresentrowwidget")}else{if(g.createEverPresentRowWidget){this.createeverpresentrowwidget=g.createEverPresentRowWidget}}if(b.jqx.hasProperty(g,"initeverpresentrowwidget")||b.jqx.hasFunction(g,"initeverpresentrowwidget")){this.initeverpresentrowwidget=b.jqx.get(g,"initeverpresentrowwidget")}else{if(g.initEverPresentRowWidget){this.initeverpresentrowwidget=g.initEverPresentRowWidget}}if(b.jqx.hasProperty(g,"validateeverpresentrowwidgetvalue")){this.validateeverpresentrowwidgetvalue=b.jqx.get(g,"validateeverpresentrowwidgetvalue")}else{if(g.validateEverPresentRowWidgetValue){this.validateeverpresentrowwidgetvalue=g.validateEverPresentRowWidgetValue}}if(b.jqx.hasProperty(g,"destroyeverpresentrowwidget")||b.jqx.hasFunction(g,"destroyeverpresentrowwidget")){this.destroyeverpresentrowwidget=b.jqx.get(g,"destroyeverpresentrowwidget")}else{if(g.destroyEverPresentRowWidget){this.destroyEverPresentRowWidget=g.destroyEverPresentRowWidget}}if(b.jqx.hasProperty(g,"destroyEditor")){this.destroyeditor=b.jqx.get(g,"destroyEditor")}else{if(g.destroyEditor){this.destroyeditor=g.destroyEditor}}if(b.jqx.hasProperty(g,"getEditorValue")){this.geteditorvalue=b.jqx.get(g,"getEditorValue")}else{if(g.getEditorValue){this.geteditorvalue=g.getEditorValue}}if(b.jqx.hasProperty(g,"validation")){this.validation=b.jqx.get(g,"validation")}else{if(g.validation){this.validation=g.validation}}if(b.jqx.hasProperty(g,"cellBeginEdit")){this.cellbeginedit=b.jqx.get(g,"cellBeginEdit")}else{if(g.cellBeginEdit){this.cellbeginedit=g.cellBeginEdit}}if(b.jqx.hasProperty(g,"cellEndEdit")){this.cellendedit=b.jqx.get(g,"cellEndEdit")}else{if(g.cellEndEdit){this.cellendedit=g.cellEndEdit}}if(b.jqx.hasProperty(g,"className")){this.classname=b.jqx.get(g,"className")}if(b.jqx.hasProperty(g,"cellClassName")){this.cellclassname=b.jqx.get(g,"cellClassName")}else{if(g.cellClassName){this.cellclassname=g.cellClassName}}if(b.jqx.hasProperty(g,"menu")){this.menu=b.jqx.get(g,"menu")}if(b.jqx.hasProperty(g,"aggregates")){this.aggregates=b.jqx.get(g,"aggregates")}if(b.jqx.hasProperty(g,"aggregatesRenderer")){this.aggregatesrenderer=b.jqx.get(g,"aggregatesRenderer")}if(b.jqx.hasProperty(g,"createFilterWidget")){this.createfilterwidget=b.jqx.get(g,"createFilterWidget")}if(b.jqx.hasProperty(g,"filterType")){this.filtertype=b.jqx.get(g,"filterType")}if(b.jqx.hasProperty(g,"filterDelay")){this.filterdelay=b.jqx.get(g,"filterDelay")}if(b.jqx.hasProperty(g,"rendered")){this.rendered=b.jqx.get(g,"rendered")}if(b.jqx.hasProperty(g,"exportable")){this.exportable=b.jqx.get(g,"exportable")}if(b.jqx.hasProperty(g,"filterItems")){this.filteritems=b.jqx.get(g,"filterItems")}if(b.jqx.hasProperty(g,"cellValueChanging")){this.cellvaluechanging=b.jqx.get(g,"cellValueChanging")}if(b.jqx.hasProperty(g,"draggable")){this.draggable=b.jqx.get(g,"draggable")}if(b.jqx.hasProperty(g,"filterCondition")){this.filtercondition=b.jqx.get(g,"filterCondition")}if(b.jqx.hasProperty(g,"threeStateCheckbox")){this.threestatecheckbox=b.jqx.get(g,"threeStateCheckbox")}if(b.jqx.hasProperty(g,"nullable")){this.nullable=b.jqx.get(g,"nullable")}if(b.jqx.hasProperty(g,"columnGroup")){this.columngroup=b.jqx.get(g,"columnGroup")}if(!g instanceof String&&!(typeof g=="string")){for(var h in g){if(!f.hasOwnProperty(h)){if(!f.hasOwnProperty(h.toLowerCase())){d.host.remove();throw new Error("jqxGrid: Invalid property name - "+h+".")}}}}}};this._initfields(e);return this}function a(d,e){this.setdata=function(f){if(f!=null){this.bounddata=f;this.boundindex=f.boundindex;this.visibleindex=f.visibleindex;this.group=f.group;this.parentbounddata=f.parentItem;this.uniqueid=f.uniqueid;this.level=f.level}};this.setdata(e);this.parentrow=null;this.subrows=new Array();this.owner=d;this.height=25;this.hidden=false;this.rowdetails=null;this.rowdetailsheight=100;this.rowdetailshidden=true;this.top=-1;this.setrowinfo=function(f){this.hidden=f.hidden;this.rowdetails=f.rowdetails;this.rowdetailsheight=f.rowdetailsheight;this.rowdetailshidden=!f.showdetails;this.height=f.height};return this}b.jqx.collection=function(d){this.records=new Array();this.owner=d;this.updating=false;this.beginupdate=function(){this.updating=true};this.resumeupdate=function(){this.updating=false};this._raiseEvent=function(e){};this.clear=function(){this.records=new Array()};this.replace=function(f,e){this.records[f]=e;if(!this.updating){this._raiseEvent({type:"replace",element:e})}};this.isempty=function(e){if(this.records[e]==undefined){return true}return false};this.initialize=function(e){if(e<1){e=1}this.records[e-1]=-1};this.length=function(){return this.records.length};this.indexOf=function(e){return this.records.indexOf(e)};this.add=function(e){if(e==null){return false}this.records[this.records.length]=e;if(!this.updating){this._raiseEvent({type:"add",element:e})}return true};this.insertAt=function(f,e){if(f==null||f==undefined){return false}if(e==null){return false}if(f>=0){if(f<this.records.length){this.records.splice(f,0,e);if(!this.updating){this._raiseEvent({type:"insert",index:f,element:e})}return true}else{return this.add(e)}}return false};this.remove=function(f){if(f==null||f==undefined){return false}var e=this.records.indexOf(f);if(e!=-1){this.records.splice(e,1);if(!this.updating){this._raiseEvent({type:"remove",element:f})}return true}return false};this.removeAt=function(f){if(f==null||f==undefined){return false}if(f<0){return false}if(f<this.records.length){var e=this.records[f];this.records.splice(f,1);if(!this.updating){this._raiseEvent({type:"removeAt",index:f,element:e})}return true}return false};return this};b.jqx.dataview=function(){this.self=this;this.grid=null;this.uniqueId="id";this.records=[];this.rows=[];this.columns=[];this.groups=[];this.filters=new Array();this.updated=null;this.update=null;this.suspend=false;this.pagesize=0;this.pagenum=0;this.totalrows=0;this.totalrecords=0;this.groupable=true;this.loadedrecords=[];this.loadedrootgroups=[];this.loadedgroups=[];this.loadedgroupsByKey=[];this.virtualmode=true;this._cachegrouppages=new Array();this.source=null;this.changedrecords=new Array();this.rowschangecallback=null;this.that=this;this.destroy=function(){delete this.self;delete this.grid;delete this.uniqueId;delete this.records;delete this.rows;delete this.columns;delete this.groups;delete this.filters;delete this.updated;delete this.update;delete this.suspend;delete this.pagesize;delete this.pagenum;delete this.totalrows;delete this.totalrecords;delete this.groupable;delete this.loadedrecords;delete this.loadedrootgroups;delete this.loadedgroups;delete this.loadedgroupsByKey;delete this.virtualmode;delete this._cachegrouppages;delete this.source;delete this.changedrecords;delete this.rowschangecallback;delete this.that},this.suspendupdate=function(){this.suspend=true},this.isupdating=function(){return this.suspend},this.resumeupdate=function(d){this.suspend=false;if(d==undefined){d=true}this.refresh(d)},this.getrecords=function(){return this.records},this.clearrecords=function(){this.recordids=new Array()};this.databind=function(q,l){var p=q._source?true:false;var g=null;if(p){g=q;q=q._source}else{g=new b.jqx.dataAdapter(q,{autoBind:false})}var e=function(m){g.recordids=[];g.records=new Array();g.cachedrecords=new Array();g.originaldata=new Array();g._options.virtualmode=m.virtualmode;g._options.totalrecords=m.totalrecords;g._options.originaldata=m.originaldata;g._options.recordids=m.recordids;g._options.cachedrecords=new Array();g._options.pagenum=m.pagenum;g._options.pageable=m.pageable;if(q.type!=undefined){g._options.type=q.type}if(q.formatdata!=undefined){g._options.formatData=q.formatdata}if(q.contenttype!=undefined){g._options.contentType=q.contenttype}if(q.async!=undefined){g._options.async=q.async}if(q.updaterow!=undefined){g._options.updaterow=q.updaterow}if(q.addrow!=undefined){g._options.addrow=q.addrow}if(q.deleterow!=undefined){g._options.deleterow=q.deleterow}if(m.pagesize==0){m.pagesize=10}g._options.pagesize=m.pagesize};var t=function(C){C.totalrecords=g.totalrecords;if(!C.virtualmode){C.originaldata=g.originaldata;C.records=g.records;C.recordids=g.recordids;C.cachedrecords=g.cachedrecords}else{var x={startindex:C.pagenum*C.pagesize,endindex:(C.pagenum*C.pagesize+C.pagesize)};if(q.recordstartindex!=undefined){x.startindex=parseInt(q.recordstartindex)}if(q.recordendindex!=undefined){x.endindex=parseInt(q.recordendindex)}else{if(!C.grid.pageable){x.endindex=x.startindex+100;if(C.grid.autoheight){x.endindex=x.startindex+C.totalrecords}}}if(!q.recordendindex){if(!C.grid.pageable){x.endindex=x.startindex+100;if(C.grid.autoheight){x.endindex=x.startindex+C.totalrecords}}else{x={startindex:C.pagenum*C.pagesize,endindex:(C.pagenum*C.pagesize+C.pagesize)}}}x.data=g.records;if(C.grid.rendergridrows&&C.totalrecords>0){var E=0;q.records=C.grid.rendergridrows(x);if(q.records.length){E=q.records.length}if(q.records&&!q.records[x.startindex]){var m=new Array();var D=x.startindex;b.each(q.records,function(){m[D]=this;D++;E++});q.records=m}if(E==0){if(q.records){b.each(q.records,function(){E++})}}if(E>0&&E<x.endindex-x.startindex&&!C.grid.groupable){var A=q.records[0];for(var z=0;z<x.endindex-x.startindex-E;z++){var B={};for(obj in A){B[obj]=""}if(q.records.push){q.records.push(B)}}}}if(!q.records||C.totalrecords==0){q.records=new Array()}C.originaldata=q.records;C.records=q.records;C.cachedrecords=q.records}};e(this);this.source=q;if(l!==undefined){uniqueId=l}var y=this.that;switch(q.datatype){case"local":case"array":default:if(q.localdata==null){q.localdata=[]}if(q.localdata!=null){g.unbindBindingUpdate(y.grid.element.id);if((!y.grid.autobind&&y.grid.isInitialized)||y.grid.autobind){g.dataBind()}var k=function(x){if(x!=undefined&&x!=""){var z=g._changedrecords[0];if(z){var A=new Array();b.each(g._changedrecords,function(E){var B=this.index;var C=this.record;y.grid._updateFromAdapter=true;switch(x){case"update":var D=y.grid.getrowid(B);if(E==g._changedrecords.length-1){y.grid.updaterow(D,C)}else{y.grid.updaterow(D,C,false)}y.grid._updateFromAdapter=false;return;case"add":y.grid.addrow(null,C);y.grid._updateFromAdapter=false;return;case"remove":var D=y.grid.getrowid(B);A.push(D);return}});if(A.length>0){y.grid.deleterow(A,false);y.grid._updateFromAdapter=false}}if(x=="update"){return}}var m=y.totalrecords;t(y,x);if(q.localdata.notifier===null&&q.localdata.name=="observableArray"){q.localdata.notifier=function(F){if(this._updating){return}this._updating=true;var E=y.grid.getrowid(F.index);switch(F.type){case"add":var B=b.extend({},F.object[F.index]);var D=g.getid(q.id,B,F.index);if(F.index===0){y.grid.addrow(D,B,"first")}else{y.grid.addrow(D,B)}break;case"delete":y.grid.deleterow(E);break;case"update":if(F.path&&F.path.split(".").length>1){var C=F.path.split(".");y.grid.setcellvalue(F.index,C[C.length-1],F.newValue)}else{var B=b.extend({},F.object[F.index]);y.grid.updaterow(E,B)}break}this._updating=false}}if(x=="updateData"){y.refresh();y.grid._updateGridData()}else{if(q.recordstartindex&&this.virtualmode){y.updateview(q.recordstartindex,q.recordstartindex+y.pagesize)}else{y.refresh()}y.update(m!=y.totalrecords)}};k();g.bindBindingUpdate(y.grid.element.id,k)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(q.localdata!=null){g.unbindBindingUpdate(y.grid.element.id);if((!y.grid.autobind&&y.grid.isInitialized)||y.grid.autobind){g.dataBind()}var k=function(x){var m=y.totalrecords;t(y);if(x=="updateData"){y.refresh();y.grid._updateGridData()}else{if(q.recordstartindex&&y.virtualmode){y.updateview(q.recordstartindex,q.recordstartindex+y.pagesize)}else{y.refresh()}y.update(m!=y.totalrecords)}};k();g.bindBindingUpdate(y.grid.element.id,k);return}var u={};var o=0;var v={};for(var i=0;i<this.filters.length;i++){var f=this.filters[i].datafield;var j=this.filters[i].filter;if(!j.getfilters){continue}var h=j.getfilters();v[f+"operator"]=j.operator;for(var s=0;s<h.length;s++){h[s].datafield=f;var n=h[s].value;if(h[s].type=="datefilter"){if(h[s].value&&h[s].value.toLocaleString){var d=this.grid.getcolumn(h[s].datafield);if(d&&d.cellsformat){var r=this.grid.source.formatDate(h[s].value,d.cellsformat,this.grid.gridlocalization);if(r){v["filtervalue"+o]=r}else{v["filtervalue"+o]=h[s].value.toLocaleString()}}else{v["filtervalue"+o]=n.toString()}}else{v["filtervalue"+o]=n.toString()}}else{v["filtervalue"+o]=n.toString();if(h[s].data){v["filterid"+o]=h[s].data.toString()}if(h[s].id){v["filterid"+o]=h[s].id.toString()}}v["filtercondition"+o]=h[s].condition;v["filteroperator"+o]=h[s].operator;v["filterdatafield"+o]=f;o++}}v.filterscount=o;v.groupscount=y.groups.length;for(var i=0;i<y.groups.length;i++){v["group"+i]=y.groups[i]}if(q.recordstartindex==undefined){q.recordstartindex=0}if(q.recordendindex==undefined||q.recordendindex==0){if(y.grid.height&&y.grid.height.toString().indexOf("%")==-1){q.recordendindex=parseInt(y.grid.height)/y.grid.rowsheight;q.recordendindex+=2;q.recordendindex=parseInt(q.recordendindex)}else{q.recordendindex=b(window).height()/y.grid.rowsheight;q.recordendindex=parseInt(q.recordendindex)}if(this.pageable){q.recordendindex=this.pagesize}}if(this.pageable){q.recordstartindex=(this.pagenum)*this.pagesize;q.recordendindex=(this.pagenum+1)*this.pagesize}b.extend(v,{sortdatafield:y.sortfield,sortorder:y.sortfielddirection,pagenum:y.pagenum,pagesize:y.grid.pagesize,recordstartindex:q.recordstartindex,recordendindex:q.recordendindex});var w=g._options.data;if(g._options.data){b.extend(g._options.data,v)}else{if(q.data){b.extend(v,q.data)}g._options.data=v}var k=function(){var x=b.jqx.browser.msie&&b.jqx.browser.version<9;var z=function(){var A=y.totalrecords;t(y);if(q.recordstartindex&&y.virtualmode){y.updateview(q.recordstartindex,q.recordstartindex+y.pagesize)}else{y.refresh()}y.update(A!=y.totalrecords)};if(x){try{z()}catch(m){}}else{z()}};g.unbindDownloadComplete(y.grid.element.id);g.bindDownloadComplete(y.grid.element.id,k);if((!y.grid.autobind&&y.grid.isInitialized)||y.grid.autobind){g.dataBind()}else{if(!y.grid.isInitialized&&!y.grid.autobind){k()}}g._options.data=w}};this.getid=function(g,e,f){if(b(g,e).length>0){return b(g,e).text()}if(g){if(g.toString().length>0){var d=b(e).attr(g);if(d!=null&&d.toString().length>0){return d}}}return f};this.getvaluebytype=function(g,d){var e=g;if(d.type=="date"){var f=new Date(g);if(f.toString()=="NaN"||f.toString()=="Invalid Date"){if(b.jqx.dataFormat){g=b.jqx.dataFormat.tryparsedate(g)}else{g=f}}else{g=f}if(g==null){g=e}}else{if(d.type=="float"){var g=parseFloat(g);if(isNaN(g)){g=e}}else{if(d.type=="int"){var g=parseInt(g);if(isNaN(g)){g=e}}else{if(d.type=="bool"){if(g!=null){if(g.toLowerCase()=="false"){g=false}else{if(g.toLowerCase()=="true"){g=true}}}if(g==1){g=true}else{if(g==0){g=false}else{g=""}}}}}}return g};this.setpaging=function(d){if(d.pageSize!=undefined){this.pagesize=d.pageSize}if(d.pageNum!=undefined){this.pagenum=Math.min(d.pageNum,Math.ceil(this.totalrows/this.pagesize))}this.refresh()};this.getpagingdetails=function(){return{pageSize:this.pagesize,pageNum:this.pagenum,totalrows:this.totalrows}};this._clearcaches=function(){this.sortcache={};this.sortdata=null;this.changedrecords=new Array();this.records=new Array();this.rows=new Array();this.cacheddata=new Array();this.originaldata=new Array();this.bounditems=new Array();this.loadedrecords=new Array();this.loadedrootgroups=new Array();this.loadedgroups=new Array();this.loadedgroupsByKey=new Array();this._cachegrouppages=new Array();this.recordsbyid=new Array();this.cachedrecords=new Array();this.recordids=new Array()};this.addfilter=function(g,f){var e=-1;for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==g){e=d;break}}if(e==-1){this.filters[this.filters.length]={filter:f,datafield:g}}else{this.filters[e]={filter:f,datafield:g}}};this.removefilter=function(e){for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==e){this.filters.splice(d,1);break}}};this.getItemFromIndex=function(d){return this.records[d]};this.updaterow=function(d,n,l){var e=this.filters&&this.filters.length>0&&!this.virtualmode;if(!e&&n!=undefined&&d!=undefined){n.uid=d;if(!(n[this.source.id])){n[this.source.id]=n.uid}var j=this.recordsbyid["id"+d];var k=this.records.indexOf(j);if(k==-1){return false}this.records[k]=n;if(this.cachedrecords){this.cachedrecords[k]=n}if(l==true||l==undefined){this.refresh()}this.changedrecords[n.uid]={Type:"Update",OldData:j,Data:n};return true}else{if(this.filters&&this.filters.length>0){var f=this.cachedrecords;var j=null;var k=-1;for(var h=0;h<f.length;h++){if(f[h].uid==d){j=f[h];k=h;break}}if(j){var m=this.that;for(var g in n){m.cachedrecords[k][g]=n[g]}if(l==true||l==undefined){this.refresh()}return true}}}return false};this.addrow=function(h,i,d,g){if(i!=undefined){if(b.isEmptyObject(i)){if(this.source&&this.source.datafields){b.each(this.source.datafields,function(){var j="";if(this.type=="number"){j=null}if(this.type=="date"){j=null}if(this.type=="bool"||this.type=="boolean"){j=false}i[this.name]=j})}}if(!h||this.recordsbyid["id"+h]){i.uid=this.getid(this.source.id,i,this.totalrecords);var e=this.recordsbyid["id"+i.uid];while(e!=null){var f=Math.floor(Math.random()*10000).toString();i.uid=f;e=this.recordsbyid["id"+f]}}else{i.uid=h}if(!(i[this.source.id])){if(this.source.id!=undefined){i[this.source.id]=i.uid}}if(d=="last"){this.records.push(i)}else{if(typeof d==="number"&&isFinite(d)){this.records.splice(d,0,i)}else{this.records.splice(0,0,i)}}if(this.filters&&this.filters.length>0){if(d=="last"){this.cachedrecords.push(i)}else{if(typeof d==="number"&&isFinite(d)){this.cachedrecords.splice(d,0,i)}else{this.cachedrecords.splice(0,0,i)}}}this.totalrecords++;if(this.virtualmode){this.source.totalrecords=this.totalrecords}if(g==true||g==undefined){this.refresh()}this.changedrecords[i.uid]={Type:"New",Data:i};return true}return false};this.deleterow=function(j,h){if(j!=undefined){var d=this.filters&&this.filters.length>0;if(this.recordsbyid["id"+j]&&!d){var e=this.recordsbyid["id"+j];var k=this.records.indexOf(e);this.changedrecords[j]={Type:"Delete",Data:this.records[k]};this.records.splice(k,1);this.totalrecords--;if(this.virtualmode){this.source.totalrecords=this.totalrecords}if(h==true||h==undefined){this.refresh()}return true}else{if(this.filters&&this.filters.length>0){var f=this.cachedrecords;var e=null;var k=-1;for(var g=0;g<f.length;g++){if(f[g].uid==j){e=f[g];k=g;break}}if(e){this.cachedrecords.splice(k,1);if(h==true||h==undefined){this.totalrecords=0;this.records=this.cachedrecords;this.refresh()}return true}}}return false}return false};this.reload=function(f,d,r,g,h,u,t){var m=this.that;var l=new Array();var o=f;var i=d;var j=r;var p=g;var k=i.length;var w=0;var e=0;var s,n;this.columns=[];this.bounditems=new Array();this.loadedrecords=new Array();this.loadedrootgroups=new Array();this.loadedgroups=new Array();this.loadedgroupsByKey=new Array();this._cachegrouppages=new Array();this.recordsbyid={};if(this.totalrecords==0){Object.size=function(z){var y=0,x;for(x in z){if(z.hasOwnProperty(x)){y++}}return y};var v=Object.size(o);this.totalrecords=v;b.each(this.records,function(y){var z=this;var x=0;b.each(z,function(A,B){m.columns[x++]=A});return false})}if(this.virtualmode){if(this.pageable){this.updateview();return}var u=0;if(!this.groupable){this.updateview();return}else{var t=this.totalrecords}}else{var u=0;var t=this.totalrecords}if(this.groupable&&this.groups.length>0&&this.loadgrouprecords){var q=u;q=this.loadgrouprecords(0,u,t,j,e,p,i,k,l)}else{w=this.loadflatrecords(u,t,j,e,p,i,k,l)}if(k>e){i.splice(e,k-e)}if(this.groups.length>0&&this.groupable){this.totalrows=q}else{this.totalrows=w}return l};this.loadflatrecords=function(d,o,e,p,l,u,n,q){var t=this.that;var k=d;var m=d;o=Math.min(o,this.totalrecords);var g=this.sortdata!=null;var f=this.source.id&&(this.source.datatype=="local"||this.source.datatype=="array"||this.source.datatype=="");var j=g?this.sortdata:this.records;for(var h=d;h<o;h++){var s={};if(!g){s=b.extend({},j[h]);id=s[t.uniqueId];s.boundindex=k;t.loadedrecords[k]=s;if(s.uid==undefined){s.uid=t.getid(t.source.id,s,k)}t.recordsbyid["id"+s.uid]=j[h];s.uniqueid=t.generatekey();t.bounditems[this.bounditems.length]=s}else{s=b.extend({},j[h].value);id=s[t.uniqueId];s.boundindex=j[h].index;if(s.uid==undefined){s.uid=t.getid(t.source.id,s,s.boundindex)}t.recordsbyid["id"+s.uid]=j[h].value;t.loadedrecords[k]=s;s.uniqueid=t.generatekey();t.bounditems[s.boundindex]=s}if(p>=n||id!=u[p][t.uniqueId]||(l&&l[id])){q[q.length]=p}u[p]=s;p++;s.visibleindex=m;m++;k++}if(t.grid.summaryrows){var r=k;b.each(t.grid.summaryrows,function(){var i=b.extend({},this);i.boundindex=o++;t.loadedrecords[r]=i;i.uniqueid=t.generatekey();t.bounditems[t.bounditems.length]=i;u[p]=i;p++;i.visibleindex=m;m++;r++})}return m},this.updateview=function(o,p){var r=this.that;var k=this.pagesize*this.pagenum;var n=0;var s=new Array();var e=this.filters;var j=this.updated;var l=s.length;if(this.pageable){if(this.virtualmode){if(!this.groupable||this.groups.length==0){this.loadflatrecords(this.pagesize*this.pagenum,this.pagesize*(1+this.pagenum),e,n,j,s,l,[]);this.totalrows=s.length}else{if(this.groupable&&this.groups.length>0&&this.loadgrouprecords){if(this._cachegrouppages[this.pagenum+"_"+this.pagesize]!=undefined){this.rows=this._cachegrouppages[this.pagenum+"_"+this.pagesize];this.totalrows=this.rows.length;return}var m=this.pagesize*(1+this.pagenum);if(m>this.totalrecords){m=this.totalrecords}this.loadgrouprecords(0,this.pagesize*this.pagenum,m,e,n,j,s,l,[]);this._cachegrouppages[this.pagenum+"_"+this.pagesize]=this.rows;this.totalrows=this.rows.length;return}}}}else{if(this.virtualmode&&(!this.groupable||this.groups.length==0)){var g=this.pagesize;if(g==0){g=Math.min(100,this.totalrecords)}var d=g*this.pagenum;if(this.loadedrecords.length==0){d=0}if(o!=null&&p!=null){this.loadflatrecords(o,p,e,n,j,s,l,[])}else{this.loadflatrecords(this.pagesize*this.pagenum,this.pagesize*(1+this.pagenum),e,n,j,s,l,[])}this.totalrows=this.loadedrecords.length;this.rows=s;if(s.length>=g){return}}}if(this.groupable&&this.pageable&&this.groups.length>0&&this._updategroupsinpage){s=this._updategroupsinpage(r,e,k,n,l,this.pagesize*this.pagenum,this.pagesize*(1+this.pagenum))}else{for(var h=this.pagesize*this.pagenum;h<this.pagesize*(1+this.pagenum);h++){var q=h<this.loadedrecords.length?this.loadedrecords[h]:null;if(q==null){continue}if(!this.pagesize||(k>=this.pagesize*this.pagenum&&k<=this.pagesize*(this.pagenum+1))){s[n]=q;n++}k++}}if((s.length==0||s.length<this.pagesize)&&!this.pageable&&this.virtualmode){n=s.length;var f=s.length;for(var h=this.pagesize*this.pagenum;h<this.pagesize*(1+this.pagenum)-f;h++){var q={};q.boundindex=h+f;q.visibleindex=h+f;q.uniqueid=r.generatekey();q.empty=true;r.bounditems[h+f]=q;s[n]=q;n++}}this.rows=s};this.generatekey=function(){var d=function(){return(((1+Math.random())*16)|0)};return(""+d()+d()+"-"+d()+"-"+d()+"-"+d()+"-"+d()+d()+d())};this.reloaddata=function(){this.reload(this.records,this.rows,this.filter,this.updated,true)};this.refresh=function(h){if(this.suspend){return}if(h==undefined){h=true}var l=this.rows.length;var k=this.totalrows;if(this.filters.length>0&&!this.virtualmode){var e="";var g=this.cachedrecords.length;var s=new Array();this.totalrecords=0;var n=this.cachedrecords;this._dataIndexToBoundIndex=new Array();var f=this.filters.length;if(this.source!=null&&this.source.filter!=undefined&&this.source.localdata!=undefined){s=this.source.filter(this.filters,n,g);if(s==undefined){s=new Array()}this.records=s}else{if(this.source.filter==null||this.source.filter==undefined){for(var u=0;u<g;u++){var o=n[u];var d=undefined;for(var m=0;m<f;m++){var e=this.filters[m].filter;var r=o[this.filters[m].datafield];var t=e.evaluate(r);if(d==undefined){d=t}else{if(e.operator=="or"){d=d||t}else{d=d&&t}}}if(d){s[s.length]=b.extend({dataindex:u},o);this._dataIndexToBoundIndex[u]={boundindex:s.length-1}}else{this._dataIndexToBoundIndex[u]=null}}this.records=s}}if(this.sortdata){var i=this.sortfield;if(this.sortcache[i]){this.sortdata=null;var p=this.sortcache[i].direction;this.sortcache[i]=null;this.sortby(this.sortfield,p);return}}}else{if(this.filters.length==0&&!this.virtualmode){if(this.cachedrecords){this.totalrecords=0;var n=this.cachedrecords;this.records=n;if(this.sortdata){var i=this.sortfield;if(this.sortcache[i]){this.sortdata=null;var p=this.sortcache[i].direction;this.sortcache[i]=null;this.sortby(this.sortfield,p);return}}}}}var q=this.reload(this.records,this.rows,this.filter,this.updated,h);this.updated=null;if(this.rowschangecallback!=null){if(k!=totalrows){this.rowschangecallback({type:"PagingChanged",data:getpagingdetails()})}if(l!=rows.length){this.rowschangecallback({type:"RowsCountChanged",data:{previous:l,current:rows.length}})}if(q.length>0||l!=rows.length){this.rowschangecallback({type:"RowsChanged",data:{previous:l,current:rows.length,diff:q}})}}};return this}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.pager.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.pager.js
new file mode 100644 (file)
index 0000000..0739e2b
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{_initpager:function(){var r=this.that;var j=this.gridlocalization.pagergotopagestring;var s=this.gridlocalization.pagerrangestring;var l=this.gridlocalization.pagershowrowsstring;var m=(this.pagerheight-17)/2;this.pagerdiv=this.pagerdiv||a('<div style="width: 100%; height: 100%; position: relative;"></div>');if(!this.pageable){this.pagerdiv.remove();this.vScrollBar.jqxScrollBar({thumbSize:0});return}if(!this.pagerrenderer){this.pagerdiv.css("top",m);this.pager.append(this.pagerdiv);this.pagergotoinput=this.pagergotoinput||a('<div style="margin-right: 7px; width: 27px; height: 17px; float: right;"><input style="margin-top: 0px; text-align: right; width: 27px;" type="text"/></div>');this.pagergoto=this.pagergoto||a('<div style="float: right; margin-right: 7px;"></div>');this.pagerrightbutton=this.pagerrightbutton||a('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagerleftbutton=this.pagerleftbutton||a('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagerdetails=this.pagerdetails||a('<div style="margin-right: 7px; float: right;"></div>');this.pagershowrows=this.pagershowrows||a('<div style="margin-right: 7px; float: right;"></div>');this.pagerbuttons=a('<div style="margin-right: 3px; float: right;"></div>');if(this.pagershowrowscombo&&this.pagershowrowscombo.jqxDropDownList){this.pagershowrowscombo.remove();this.pagershowrowscombo=null}this.pagergotoinput.attr("disabled",this.disabled);this.pagerfirstbutton=a('<div type="button" style="padding: 0px; margin-top: 0px; margin-left: 3px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagerlastbutton=a('<div type="button" style="padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: right;"></div>');this.pagershowrowscombo=this.pagershowrowscombo||a('<div id="gridpagerlist" style="margin-top: 0px; margin-right: 7px; float: right;"></div>');this.pagerdiv.children().remove();this.pagershowrowscombo[0].id="gridpagerlist"+this.element.id;this.removeHandler(this.pagerrightbutton,"mousedown");this.removeHandler(this.pagerrightbutton,"mouseup");this.removeHandler(this.pagerrightbutton,"click");this.removeHandler(this.pagerleftbutton,"mousedown");this.removeHandler(this.pagerleftbutton,"mouseup");this.removeHandler(this.pagerleftbutton,"click");this.removeHandler(this.pagerfirstbutton,"mousedown");this.removeHandler(this.pagerfirstbutton,"mouseup");this.removeHandler(this.pagerfirstbutton,"click");this.removeHandler(this.pagerlastbutton,"mousedown");this.removeHandler(this.pagerlastbutton,"mouseup");this.removeHandler(this.pagerlastbutton,"click");this.pagerleftbutton.attr("title",this.gridlocalization.pagerpreviousbuttonstring);this.pagerrightbutton.attr("title",this.gridlocalization.pagernextbuttonstring);if(this.pagermode=="simple"){if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.pagerbuttons.css("overflow","visible");this.pagerbuttons.css("padding","3px")}this.pagerfirstbutton.attr("title",this.gridlocalization.pagerfirstbuttonstring);this.pagerlastbutton.attr("title",this.gridlocalization.pagerlastbuttonstring);var n=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");n.addClass(this.toThemeProperty("jqx-icon-arrow-first"));this.pagerfirstbutton.wrapInner(n);var g=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");g.addClass(this.toThemeProperty("jqx-icon-arrow-last"));this.pagerlastbutton.wrapInner(g);if(!this.rtl){this.pagerdiv.append(this.pagerfirstbutton);this.pagerdiv.append(this.pagerleftbutton);this.pagerdiv.append(this.pagerbuttons);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerlastbutton)}else{this.pagerdiv.append(this.pagerlastbutton);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerbuttons);this.pagerdiv.append(this.pagerleftbutton);this.pagerdiv.append(this.pagerfirstbutton)}this.pagerlastbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerfirstbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});var t=!this.rtl?"left":"right";this.pagerbuttons.css("float",t);this.pagerlastbutton.css("float",t);this.pagerfirstbutton.css("float",t);this.pagerrightbutton.css("float",t);this.pagerleftbutton.css("float",t);this.pagerdetails.css("float",this.rtl?"left":"right");if(this.rtl){this.pagerdetails.css("margin-left","7px");this.pagerdetails.css("margin-right","0px")}else{this.pagerdetails.css("margin-left","0px");this.pagerdetails.css("margin-right","7px")}this.pagergotoinput.hide();this.pagershowrowscombo.hide();this.pagergoto.hide();this.pagershowrows.hide()}else{this.pagergotoinput.show();this.pagershowrowscombo.show();this.pagergoto.show();this.pagershowrows.show();if(!this.rtl){this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerleftbutton)}}this.pagerrightbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerleftbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerleftbutton.find(".jqx-icon-arrow-left").remove();this.pagerrightbutton.find(".jqx-icon-arrow-right").remove();var c=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");c.addClass(this.toThemeProperty("jqx-icon-arrow-left"));this.pagerleftbutton.wrapInner(c);var d=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");d.addClass(this.toThemeProperty("jqx-icon-arrow-right"));this.pagerrightbutton.wrapInner(d);this.pagerdiv.append(this.pagerdetails);if(this.pagermode!="simple"){if(!this.rtl){this.pagerdiv.append(this.pagershowrowscombo);this.pagerdiv.append(this.pagershowrows);this.pagerdiv.append(this.pagergotoinput);this.pagerdiv.append(this.pagergoto)}else{this.pagerdiv.append(this.pagergoto);this.pagerdiv.append(this.pagergotoinput);this.pagerdiv.append(this.pagershowrows);this.pagerdiv.append(this.pagershowrowscombo);this.pagerdiv.append(this.pagerdetails);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerleftbutton)}}var o=this.pagesizeoptions;if(!this.pagershowrowscombo.jqxDropDownList){throw new Error("jqxGrid: jqxdropdownlist.js is not loaded.");return}this.pagershowrowscombo.jqxDropDownList({rtl:this.rtl,disabled:this.disabled,source:o,enableBrowserBoundsDetection:true,keyboardSelection:false,autoDropDownHeight:true,width:"auto",height:16,theme:this.theme});var q=0;for(var p=0;p<o.length;p++){if(this.pagesize>=o[p]){q=p}}this.pagershowrows[0].innerHTML=l;this.pagergoto[0].innerHTML=j;this.updatepagerdetails();this.pagershowrowscombo.jqxDropDownList({selectedIndex:q});this.pagerpageinput=this.pagergotoinput.find("input");this.pagerpageinput.addClass(this.toThemeProperty("jqx-input"));this.pagerpageinput.addClass(this.toThemeProperty("jqx-widget-content"));if(this.rtl){this.pagerpageinput.css("direction","rtl")}var r=this.that;this.removeHandler(this.pagershowrowscombo,"select");this.addHandler(this.pagershowrowscombo,"select",function(w){if(w.args){if(r.vScrollInstance){r.vScrollInstance.setPosition(0)}if(r.editcell!=null&&r.endcelledit){r.endcelledit(r.editcell.row,r.editcell.column,true,false)}var u=w.args.index;var x=r.dataview.pagenum*r.dataview.pagesize;var v=o[u];var y=r.pagesize;r.pagesize=parseInt(v);if(isNaN(r.pagesize)){r.pagesize=10}if(v>=100){r.pagershowrowscombo.jqxDropDownList({width:"auto"})}else{r.pagershowrowscombo.jqxDropDownList({width:44})}r.dataview.pagesize=r.pagesize;var i=Math.floor(x/r.dataview.pagesize);r.prerenderrequired=true;r._requiresupdate=true;r._raiseEvent(10,{pagenum:i,oldpagesize:y,pagesize:r.dataview.pagesize});r.gotopage(i);if(r.autoheight&&r._updatesizeonwindowresize){r._updatesize(true);setTimeout(function(){r._updatesize(true)},500)}}});var k=this.pagergotoinput.find("input");k.addClass(this.toThemeProperty("jqx-grid-pager-input"));k.addClass(this.toThemeProperty("jqx-rc-all"));this.removeHandler(k,"keydown");this.removeHandler(k,"change");this.addHandler(k,"keydown",function(i){if(i.keyCode>=65&&i.keyCode<=90){return false}if(i.keyCode=="13"){var u=k.val();u=parseInt(u);if(!isNaN(u)){r.gotopage(u-1)}return false}});this.addHandler(k,"change",function(){var i=k.val();i=parseInt(i);if(!isNaN(i)){r.gotopage(i-1)}});this.addHandler(this.pagerrightbutton,"mouseenter",function(){d.addClass(r.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseenter",function(){c.addClass(r.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mouseleave",function(){d.removeClass(r.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseleave",function(){c.removeClass(r.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mousedown",function(){d.addClass(r.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerrightbutton,"mouseup",function(){d.removeClass(r.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerleftbutton,"mousedown",function(){c.addClass(r.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(this.pagerleftbutton,"mouseup",function(){c.removeClass(r.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(a(document),"mouseup.pagerbuttons"+this.element.id,function(){d.removeClass(r.toThemeProperty("jqx-icon-arrow-right-selected"));c.removeClass(r.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(this.pagerrightbutton,"click",function(){if(!r.pagerrightbutton.jqxButton("disabled")){if(!r.rtl){r.gotonextpage()}else{r.gotoprevpage()}}});this.addHandler(this.pagerleftbutton,"click",function(){if(!r.pagerleftbutton.jqxButton("disabled")){if(!r.rtl){r.gotoprevpage()}else{r.gotonextpage()}}});var f=this;if(this.pagermode==="simple"){var e=this.pagerfirstbutton;var h=this.pagerlastbutton;this.addHandler(h,"mouseenter",function(){g.addClass(f.toThemeProperty("jqx-icon-arrow-last-hover"))});this.addHandler(e,"mouseenter",function(){n.addClass(f.toThemeProperty("jqx-icon-arrow-first-hover"))});this.addHandler(h,"mouseleave",function(){g.removeClass(f.toThemeProperty("jqx-icon-arrow-last-hover"))});this.addHandler(e,"mouseleave",function(){n.removeClass(f.toThemeProperty("jqx-icon-arrow-first-hover"))});this.addHandler(h,"mousedown",function(){g.addClass(f.toThemeProperty("jqx-icon-arrow-last-selected"))});this.addHandler(e,"mousedown",function(){n.addClass(f.toThemeProperty("jqx-icon-arrow-first-selected"))});this.addHandler(h,"mouseup",function(){g.removeClass(f.toThemeProperty("jqx-icon-arrow-last-selected"))});this.addHandler(e,"mouseup",function(){n.removeClass(f.toThemeProperty("jqx-icon-arrow-first-selected"))});this.addHandler(a(document),"mouseup.pagerbuttons"+name+this.element.id,function(){d.removeClass(f.toThemeProperty("jqx-icon-arrow-right-selected"));c.removeClass(f.toThemeProperty("jqx-icon-arrow-left-selected"));if(g){g.removeClass(f.toThemeProperty("jqx-icon-arrow-last-selected"));n.removeClass(f.toThemeProperty("jqx-icon-arrow-first-selected"))}});this.addHandler(e,"click",function(){if(!e.jqxButton("disabled")){if(!f.rtl){f.gotopage(0)}else{var u=f.dataview.totalrecords;var i=Math.ceil(u/f.pagesize);f.gotopage(i-1)}}});this.addHandler(h,"click",function(){if(!h.jqxButton("disabled")){if(!f.rtl){var u=f.dataview.totalrecords;var i=Math.ceil(u/f.pagesize);f.gotopage(i-1)}else{f.gotopage(0)}}})}}else{this.pagerdiv.children().remove();var b=this.pagerrenderer();if(b!=null){this.pagerdiv.append(a(b))}this.pager.append(this.pagerdiv)}this.vScrollBar.jqxScrollBar("refresh");this._arrange()},_updatepagertheme:function(){if(this.pagershowrowscombo==null){return}this.pagershowrowscombo.jqxDropDownList({theme:this.theme});this.pagerrightbutton.jqxButton({theme:this.theme});this.pagerleftbutton.jqxButton({theme:this.theme});this.pagerpageinput.removeClass();var c=this.pagergotoinput.find("input");c.removeClass();c.addClass(this.toThemeProperty("jqx-grid-pager-input"));c.addClass(this.toThemeProperty("jqx-rc-all"));this.pagerpageinput.addClass(this.toThemeProperty("jqx-input"));this.pagerpageinput.addClass(this.toThemeProperty("jqx-widget-content"));this.pagerleftbutton.find(".jqx-icon-arrow-left").remove();this.pagerrightbutton.find(".jqx-icon-arrow-right").remove();var d=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");d.addClass(this.toThemeProperty("jqx-icon-arrow-left"));this.pagerleftbutton.wrapInner(d);var e=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");e.addClass(this.toThemeProperty("jqx-icon-arrow-right"));this.pagerrightbutton.wrapInner(e);if(this.pagermode=="simple"){if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.pagerbuttons.css("overflow","visible");this.pagerbuttons.css("padding","3px")}this.pagerfirstbutton.attr("title",this.gridlocalization.pagerfirstbuttonstring);this.pagerlastbutton.attr("title",this.gridlocalization.pagerlastbuttonstring);var h=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");h.addClass(this.toThemeProperty("jqx-icon-arrow-first"));this.pagerfirstbutton.wrapInner(h);var g=a("<div style='margin-left: 6px; width: 15px; height: 15px;'></div>");g.addClass(this.toThemeProperty("jqx-icon-arrow-last"));this.pagerlastbutton.wrapInner(g);this.pagerdiv.append(this.pagerfirstbutton);this.pagerdiv.append(this.pagerleftbutton);this.pagerdiv.append(this.pagerbuttons);this.pagerdiv.append(this.pagerrightbutton);this.pagerdiv.append(this.pagerlastbutton);this.pagerlastbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerfirstbutton.jqxButton({cursor:"pointer",disabled:this.disabled,theme:this.theme});this.pagerbuttons.css("float","left");this.pagerlastbutton.css("float","left");this.pagerfirstbutton.css("float","left");this.pagerrightbutton.css("float","left");this.pagerleftbutton.css("float","left");this.pagergotoinput.hide();this.pagershowrowscombo.hide();this.pagergoto.hide();this.pagershowrows.hide()}else{this.pagergotoinput.show();this.pagershowrowscombo.show();this.pagergoto.show();this.pagershowrows.show()}var b=function(j,i){j.removeHandler(i,"mouseenter");j.removeHandler(i,"mouseleave");j.removeHandler(i,"mousedown");j.removeHandler(i,"mouseup")};b(this,this.pagerrightbutton);b(this,this.pagerleftbutton);var f=this.that;this.addHandler(this.pagerrightbutton,"mouseenter",function(){e.addClass(f.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseenter",function(){d.addClass(f.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mouseleave",function(){e.removeClass(f.toThemeProperty("jqx-icon-arrow-right-hover"))});this.addHandler(this.pagerleftbutton,"mouseleave",function(){d.removeClass(f.toThemeProperty("jqx-icon-arrow-left-hover"))});this.addHandler(this.pagerrightbutton,"mousedown",function(){e.addClass(f.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerrightbutton,"mouseup",function(){e.removeClass(f.toThemeProperty("jqx-icon-arrow-right-selected"))});this.addHandler(this.pagerleftbutton,"mousedown",function(){d.addClass(f.toThemeProperty("jqx-icon-arrow-left-selected"))});this.addHandler(this.pagerleftbutton,"mouseup",function(){d.removeClass(f.toThemeProperty("jqx-icon-arrow-left-selected"))})},gotopage:function(d){if(d==null||d==undefined){d=0}if(d==-1){d=0}if(d<0){return}var c=this.dataview.totalrecords;if(this.summaryrows){c+=this.summaryrows.length}var e=this.pagenum;this._raiseEvent(25,{oldpagenum:this.dataview.pagenum,pagenum:d,pagesize:this.dataview.pagesize});var b=Math.ceil(c/this.pagesize);if(d>=b){if(this.dataview.totalrecords==0){this.dataview.pagenum=0;this.updatepagerdetails()}if(d>0){d=b-1}if(d<0){d=0}}if(this.dataview.pagenum!=d||this._requiresupdate){if(this.pageable){if(this.source.pager){this.source.pager(d,this.dataview.pagesize,this.dataview.pagenum)}this.dataview.pagenum=d;if(this.virtualmode){this.hiddens=new Array();this.expandedgroups=new Array();if(this.rendergridrows){var h=d*this.dataview.pagesize;var g=h+this.dataview.pagesize;if(h!=null&&g!=null){if(this.pagerrightbutton){this.pagerrightbutton.jqxButton({disabled:true});this.pagerleftbutton.jqxButton({disabled:true});this.pagershowrowscombo.jqxDropDownList({disabled:true})}if(this.pagerfirstbutton){this.pagerfirstbutton.jqxButton({disabled:true});this.pagerlastbutton.jqxButton({disabled:true})}this.updatebounddata("pagechanged");this._raiseEvent(9,{pagenum:d,oldpagenum:e,pagesize:this.dataview.pagesize});this.updatepagerdetails();if(this.autosavestate){if(this.savestate){this.savestate()}}return}}}else{this.dataview.updateview()}this._loadrows();this._updatepageviews();this.tableheight=null;this._updatecolumnwidths();this._updatecellwidths();this._renderrows(this.virtualsizeinfo);this.updatepagerdetails();if(this.autoheight||this.autorowheight){var f=this.host.height()-this._gettableheight();height=f+this._pageviews[0].height;if(height!=this.host.height()){this._arrange();this._updatepageviews();if(this.autorowheight){this._renderrows(this.virtualsizeinfo)}}}if(this.editcell!=null&&this.endcelledit){this.endcelledit(this.editcell.row,this.editcell.column,false,false)}this.focus();this._raiseEvent(9,{pagenum:d,oldpagenum:e,pagesize:this.dataview.pagesize});if(this.autosavestate){if(this.savestate){this.savestate()}}}}},gotoprevpage:function(){if(this.dataview.pagenum>0){this.gotopage(this.dataview.pagenum-1)}else{if(this.pagermode!="simple"){var c=this.dataview.totalrecords;if(this.summaryrows){c+=this.summaryrows.length}var b=Math.ceil(c/this.pagesize);this.gotopage(b-1)}}},gotonextpage:function(){var c=this.dataview.totalrecords;if(this.summaryrows){c+=this.summaryrows.length}var b=Math.ceil(c/this.pagesize);if(this.dataview.pagenum<b-1){this.gotopage(this.dataview.pagenum+1)}else{if(this.pagermode!="simple"){this.gotopage(0)}}},updatepagerdetails:function(){if(this.pagerdetails!=null&&this.pagerdetails.length>0){var n=this.dataview.pagenum*this.pagesize;var d=(this.dataview.pagenum+1)*this.pagesize;if(d>=this.dataview.totalrecords){d=this.dataview.totalrecords}var q=this.dataview.totalrecords;if(this.summaryrows){q+=this.summaryrows.length;if((this.dataview.pagenum+1)*this.pagesize>this.dataview.totalrecords){d=q}}n++;var g=Math.ceil(q/this.dataview.pagesize);if(g>=1){g--}g++;if(this.pagermode!=="simple"){var o=this.pagergotoinput.find("input");o.val(this.dataview.pagenum+1)}else{var b="";var f=this.pagerbuttonscount;if(f==0||!f){f=5}var h=0;if(this.rtl){h=f-1}while((this.rtl&&h>=0)||(!this.rtl&&h<f)){var m=1+h;var k=this.dataview.pagenum/f;var e=Math.floor(k);m+=e*f;var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(m>g){break}if(!this.rtl){if(h==0&&m>f){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(-1+m)+"'>...</a>"}}if(this.dataview.pagenum===m-1){l+=" "+this.toTP("jqx-fill-state-pressed")}if(!this.rtl){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+m+"'>"+m+"</a>";if(h===f-1){var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(g>=1+m){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(1+m)+"'>...</a>"}}}else{if(h===f-1){var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(g>=1+m){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(1+m)+"'>...</a>"}}if(this.dataview.pagenum===m-1){l+=" "+this.toTP("jqx-fill-state-pressed")}b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+m+"'>"+m+"</a>"}if(this.rtl){var l=this.toTP("jqx-grid-pager-number");l+=" "+this.toTP("jqx-rc-all");if(h==0&&m>f){b+="<a class='"+l+"' tabindex=-1 href='javascript:;' data-page='"+(-1+m)+"'>...</a>"}}if(!this.rtl){h++}else{h--}}var p=this["pagerbuttons"].find("a");this.removeHandler(p,"click");this.removeHandler(p,"mouseenter");this.removeHandler(p,"mouseleave");this["pagerbuttons"][0].innerHTML=b;var j=this;var c=function(){j.addHandler(p,"click",function(i){var r=a(i.target).attr("data-page");j.gotopage(parseInt(r)-1);return false});j.addHandler(p,"mouseenter",function(i){a(i.target).addClass(j.toTP("jqx-fill-state-hover"))});j.addHandler(p,"mouseleave",function(i){a(i.target).removeClass(j.toTP("jqx-fill-state-hover"))})};var p=this["pagerbuttons"].find("a");c(p)}this.pagergotoinput.attr("title","1 - "+g);if(d==0&&d<n){n=0}if(!this.rtl){this.pagerdetails[0].innerHTML=n+"-"+d+this.gridlocalization.pagerrangestring+q}else{this.pagerdetails[0].innerHTML=q+this.gridlocalization.pagerrangestring+d+"-"+n}if(n>d){this.gotoprevpage()}}},_updatepagedview:function(e,g,b){var j=this.that;if(this.dataview.rows.length!=this.dataview.pagesize){this.dataview.updateview()}var k=this.dataview.rows.length;for(var d=0;d<k;d++){var f=this.dataview.rows[d].visibleindex;var h={index:f,height:this.heights[f],hidden:this.hiddens[f],details:this.details[f]};if(this.heights[f]==undefined){this.heights[f]=this.rowsheight;h.height=this.rowsheight}if(this.hiddens[f]==undefined){this.hiddens[f]=false;h.hidden=false}if(this.details[f]==undefined){this.details[f]=null}if(h.height!=j.rowsheight){g-=j.rowsheight;g+=h.height}if(h.hidden){g-=h.height}else{b+=h.height;var c=0;if(this.rowdetails){if(h.details&&h.details.rowdetails&&!h.details.rowdetailshidden){c=h.details.rowdetailsheight;b+=c;g+=c}}}}this._pageviews[0]={top:0,height:b};return g}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.selection.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.selection.js
new file mode 100644 (file)
index 0000000..fbfdaf5
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{selectallrows:function(){this._trigger=false;var d=this.virtualmode?this.dataview.totalrecords:this.dataview.loadedrecords.length;this.selectedrowindexes=new Array();var e=this.dataview.loadedrecords;for(var c=0;c<d;c++){var f=e[c];if(!f){this.selectedrowindexes[c]=c;continue}var b=this.getboundindex(f);if(b!=undefined){this.selectedrowindexes[c]=b}}if(this.selectionmode=="checkbox"&&!this._checkboxcolumnupdating){if(this._checkboxcolumn){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:true})}}this._renderrows(this.virtualsizeinfo);this._trigger=true;if(this.selectionmode=="checkbox"){this._raiseEvent(2,{rowindex:this.selectedrowindexes})}},unselectallrows:function(){this._trigger=false;var c=this.virtualmode?this.dataview.totalrecords:this.dataview.loadedrecords.length;this.selectedrowindexes=new Array();var d=this.dataview.loadedrecords;for(var b=0;b<c;b++){var e=d[b];if(!e){this.selectedrowindexes[b]=b;continue}delete this.selectedrowindexes[b]}if(this.selectionmode=="checkbox"&&!this._checkboxcolumnupdating){if(this._checkboxcolumn){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false})}}this._renderrows(this.virtualsizeinfo);this._trigger=true;if(this.selectionmode=="checkbox"){this._raiseEvent(2,{rowindex:this.selectedrowindexes})}},selectrow:function(b,c){this._applyrowselection(b,true,c);if(c!==false){this._updatecheckboxselection()}},_updatecheckboxselection:function(){if(this.selectionmode=="checkbox"){var d=this.getrows();if(d&&this._checkboxcolumn){if(d.length===0){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false});return}var c=d.length;if(this.groupable){c=this.dataview.loadedrecords.length}if(this.virtualmode){c=this.source._source.totalrecords}var b=this.selectedrowindexes.length;if(b===c){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:true})}else{if(b===0){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false})}else{this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:null})}}}}},unselectrow:function(b,c){this._applyrowselection(b,false,c);if(c!==false){this._updatecheckboxselection()}},selectcell:function(c,b){this._applycellselection(c,b,true)},unselectcell:function(c,b){this._applycellselection(c,b,false)},clearselection:function(c,d){this._trigger=false;this.selectedrowindex=-1;this._oldselectedcell=null;if(d!==false){for(var b=0;b<this.selectedrowindexes.length;b++){this._raiseEvent(3,{rowindex:this.selectedrowindexes[b]})}}this.selectedrowindexes=new Array();this.selectedcells=new Array();this.selectedcell=null;if(this.selectionmode=="checkbox"&&!this._checkboxcolumnupdating){this._checkboxcolumn.checkboxelement.jqxCheckBox({checked:false})}if(false===c){this._trigger=true;return}this._renderrows(this.virtualsizeinfo);this._trigger=true;if(this.selectionmode=="checkbox"){this._raiseEvent(3,{rowindex:this.selectedrowindexes})}},getselectedrowindex:function(){if(this.selectedrowindex==-1||this.selectedrowindex==undefined){for(var b=0;b<this.selectedrowindexes.length;b++){return this.selectedrowindexes[b]}}return this.selectedrowindex},getselectedrowindexes:function(){return this.selectedrowindexes},getselectedcell:function(){if(!this.selectedcell){return null}var b=this.selectedcell;b.row=this.selectedcell.rowindex;b.column=this.selectedcell.datafield;b.value=this.getcellvalue(b.row,b.column);return b},getselectedcells:function(){var b=new Array();for(obj in this.selectedcells){b[b.length]=this.selectedcells[obj]}return b},_getcellsforcopypaste:function(){var e=new Array();if(this.selectionmode.indexOf("cell")==-1){var h=this.selectedrowindexes;for(var d=0;d<h.length;d++){var c=h[d];for(var f=0;f<this.columns.records.length;f++){if(this.columns.records[f].datafield==="_checkboxcolumn"){continue}var g=c+"_"+this.columns.records[f].datafield;var b={rowindex:c,datafield:this.columns.records[f].datafield};e.push(b)}}}return e},deleteselection:function(){var d=this;var f=d.getselectedcells();if(this.selectionmode.indexOf("cell")==-1){f=this._getcellsforcopypaste()}if(f!=null&&f.length>0){for(var e=0;e<f.length;e++){var b=f[e];var g=d.getcolumn(b.datafield);var h=d.getcellvalue(b.rowindex,b.datafield);if(!g){continue}if(h!==""){var c=null;if(g.columntype=="checkbox"){if(!g.threestatecheckbox){c=false}}d._raiseEvent(17,{rowindex:b.rowindex,datafield:b.datafield,value:h});if(e==f.length-1){d.setcellvalue(b.rowindex,b.datafield,c,true);if(g.displayfield!=g.datafield){d.setcellvalue(b.rowindex,g.displayfield,c,true)}}else{d.setcellvalue(b.rowindex,b.datafield,c,false);if(g.displayfield!=g.datafield){d.setcellvalue(b.rowindex,g.displayfield,c,true)}}d._raiseEvent(18,{rowindex:b.rowindex,datafield:b.datafield,oldvalue:h,value:c})}}this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}},copyselection:function(){var n="";var s=this;this.clipboardselection={};this.logicalclipboardselection={};this._clipboardselection=[];var r=s.getselectedcells();if(this.selectionmode.indexOf("cell")==-1){r=this._getcellsforcopypaste()}var b=0;var e=new Array();if(r!=null&&r.length>0){var t=999999999999999;var q=-1;for(var j=0;j<r.length;j++){var l=r[j];var d=s.getcolumn(l.datafield);if(d!=null&&d.clipboard&&(!d.hidden||this.copytoclipboardhiddencolumns)){if(e.indexOf(d.text)==-1){e.push(d.text)}var p=s.getcelltext(l.rowindex,d.displayfield);var h=this.getrowdisplayindex(l.rowindex);if(!this.clipboardselection[h]){this.clipboardselection[h]={}}this.clipboardselection[h][d.displayfield]=p;if(!this.logicalclipboardselection[h]){this.logicalclipboardselection[h]={}}this.logicalclipboardselection[h][d.displayfield]=p;if(d.displayfield!=d.datafield){this.logicalclipboardselection[h][d.datafield]=s.getcellvalue(l.rowindex,d.datafield)}t=Math.min(t,h);q=Math.max(q,h)}}var g=new Array();for(var f=t;f<=q;f++){if(!this.logicalclipboardselection[f]){continue}var o=a.extend({},this.logicalclipboardselection[f]);g.push(o)}this.logicalclipboardselection=g;if(this.copytoclipboardwithheaders){for(var c=0;c<e.length;c++){if(c>0){n+="\t"}n+=e[c]}n+="\r\n"}for(var f=t;f<=q;f++){var k=0;this._clipboardselection[this._clipboardselection.length]=new Array();if(this.clipboardselection[f]!=undefined){a.each(this.clipboardselection[f],function(i,m){if(k>0){n+="\t"}var u=m;if(m==null){u=""}s._clipboardselection[s._clipboardselection.length-1][k]=u;k++;n+=u})}else{continue}if(f<q){n+="\r\n"}}}this.clipboardselectedtext=n;return n},pasteselection:function(){var g=this.getselectedcells();this._oldselectedcell=null;if(this.selectionmode.indexOf("cell")==-1){g=this._getcellsforcopypaste()}if(g!=null&&g.length>0){var h=g[0].rowindex;var w=this.getrowdisplayindex(h);var q=g[0].datafield;var u=this._getcolumnindex(q);var o=0;this.selectedrowindexes=new Array();this.selectedcells=new Array();var k=g.length;var B=0;var d=new Array();if(this.copytoclipboardwithheaders){this._clipboardselection.splice(0,1)}for(var z=0;z<this._clipboardselection.length;z++){B+=this._clipboardselection[z].length;d[z]=new Array();for(var y=0;y<this._clipboardselection[z].length;y++){var r=this._clipboardselection[z][y];d[z].push(r)}}if(B<g.length){var n=new Array();for(var z=0;z<g.length;z++){var e=g[z];if(!n[e.rowindex]){n[e.rowindex]=new Array()}n[e.rowindex].push(e)}var A=0;var D=0;for(var z=0;z<n.length;z++){if(!n[z]){continue}for(var y=0;y<n[z].length;y++){var e=n[z][y];var m=e.rowindex;var f=this.getcolumn(e.datafield);if(f.datafield==="_checkboxcolumn"){continue}if(f.hidden){continue}var r="";if(!d[A][D]){D=0}r=d[A][D];D++;if(f.cellsformat){if(f.cellsformat.indexOf("p")!=-1||f.cellsformat.indexOf("c")!=-1||f.cellsformat.indexOf("n")!=-1||f.cellsformat.indexOf("f")!=-1){if(r.indexOf(this.gridlocalization.currencysymbol)>-1){r=r.replace(this.gridlocalization.currencysymbol,"")}var b=function(x,j,t){var c=x;if(j==t){return x}var i=c.indexOf(j);while(i!=-1){c=c.replace(j,t);i=c.indexOf(j)}return c};r=b(r,this.gridlocalization.thousandsseparator,"");r=r.replace(this.gridlocalization.decimalseparator,".");if(r.indexOf(this.gridlocalization.percentsymbol)>-1){r=r.replace(this.gridlocalization.percentsymbol,"")}var E="";for(var s=0;s<r.length;s++){var p=r.substring(s,s+1);if(p==="-"){E+="-"}if(p==="."){E+="."}if(p.match(/^[0-9]+$/)!=null){E+=p}}r=E;r=r.replace(/ /g,"");r=new Number(r);if(isNaN(r)){r=""}}}this._raiseEvent(17,{rowindex:m,datafield:e.datafield,value:r});this.setcellvalue(m,f.displayfield,r,false);if(f.displayfield!=f.datafield&&this.logicalclipboardselection){if(this.logicalclipboardselection[m]){var v=this.logicalclipboardselection[m][f.datafield];if(v!=undefined){this.setcellvalue(m,f.datafield,v,false)}}}this._raiseEvent(18,{rowindex:m,datafield:e.datafield,oldvalue:this.getcellvalue(e.rowindex,e.datafield),value:r});this._applycellselection(m,e.datafield,true,false)}A++;if(!d[A]){A=0}}}else{if(!this._clipboardselection){return}for(var l=0;l<this._clipboardselection.length;l++){for(var C=0;C<this._clipboardselection[l].length;C++){var f=this.getcolumnat(u+C);if(!f){continue}if(f.datafield==="_checkboxcolumn"){continue}if(f.hidden){continue}var m=this.getrowboundindex(w+l);var e=this.getcell(m,f.datafield);var r=null;r=this._clipboardselection[l][C];if(r!=null){if(f.cellsformat){if(f.cellsformat.indexOf("p")!=-1||f.cellsformat.indexOf("c")!=-1||f.cellsformat.indexOf("n")!=-1||f.cellsformat.indexOf("f")!=-1){if(r.indexOf(this.gridlocalization.currencysymbol)>-1){r=r.replace(this.gridlocalization.currencysymbol,"")}var b=function(x,j,t){var c=x;if(j==t){return x}var i=c.indexOf(j);while(i!=-1){c=c.replace(j,t);i=c.indexOf(j)}return c};r=b(r,this.gridlocalization.thousandsseparator,"");r=r.replace(this.gridlocalization.decimalseparator,".");if(r.indexOf(this.gridlocalization.percentsymbol)>-1){r=r.replace(this.gridlocalization.percentsymbol,"")}var E="";for(var s=0;s<r.length;s++){var p=r.substring(s,s+1);if(p==="-"){E+="-"}if(p==="."){E+="."}if(p.match(/^[0-9]+$/)!=null){E+=p}}r=E;r=r.replace(/ /g,"");r=new Number(r);if(isNaN(r)){r=""}}}this._raiseEvent(17,{rowindex:m,datafield:e.datafield,value:r});this.setcellvalue(m,f.displayfield,r,false);if(f.displayfield!=f.datafield&&this.logicalclipboardselection){var v=this.logicalclipboardselection[l][f.datafield];if(v!=undefined){this.setcellvalue(m,f.datafield,v,false)}}this._raiseEvent(18,{rowindex:m,datafield:e.datafield,oldvalue:this.getcellvalue(e.rowindex,e.datafield),value:r});this._applycellselection(m,e.datafield,true,false)}}}}if(this.selectionmode=="checkbox"){this._updatecheckboxselection()}this.dataview.updateview();this._renderrows(this.virtualsizeinfo)}if(this.clipboardend){this.clipboardend("paste")}},_applyrowselection:function(e,i,f,h,b){if(e==null){return false}var j=this.selectedrowindex;if(this.selectionmode=="singlerow"){if(i){this._raiseEvent(2,{rowindex:e,row:this.getrowdata(e)})}else{this._raiseEvent(3,{rowindex:e,row:this.getrowdata(e)})}this._raiseEvent(3,{rowindex:j});this.selectedrowindexes=new Array();this.selectedcells=new Array()}if(h==true){this.selectedrowindexes=new Array()}if(this.dataview.filters.length>0){var c=this.getrowdata(e);if(c&&c.dataindex!==undefined){e=c.dataindex}else{if(c&&c.dataindex===undefined){if(c.uid!=undefined){e=this.getrowboundindexbyid(c.uid)}}}}var d=this.selectedrowindexes.indexOf(e);if(i){this.selectedrowindex=e;if(d==-1){this.selectedrowindexes.push(e);if(this.selectionmode!="singlerow"){this._raiseEvent(2,{rowindex:e,row:this.getrowdata(e)})}}else{if(this.selectionmode=="multiplerows"){this.selectedrowindexes.splice(d,1);this._raiseEvent(3,{rowindex:this.selectedrowindex,row:this.getrowdata(e)});this.selectedrowindex=this.selectedrowindexes.length>0?this.selectedrowindexes[this.selectedrowindexes.length-1]:-1}}}else{if(d>=0||this.selectionmode=="singlerow"||this.selectionmode=="multiplerowsextended"||this.selectionmode=="multiplerowsadvanced"){var g=this.selectedrowindexes[d];this.selectedrowindexes.splice(d,1);this._raiseEvent(3,{rowindex:g,row:this.getrowdata(e)});this.selectedrowindex=-1}}if(f==undefined||f){this._rendervisualrows()}return true},_applycellselection:function(e,b,h,f){if(e==null){return false}if(b==null){return false}var j=this.selectedrowindex;if(this.selectionmode=="singlecell"){var d=this.selectedcell;if(d!=null){this._raiseEvent(16,{rowindex:d.rowindex,datafield:d.datafield})}this.selectedcells=new Array()}if(this.selectionmode=="multiplecellsextended"||this.selectionmode=="multiplecellsadvanced"){var d=this.selectedcell;if(d!=null){this._raiseEvent(16,{rowindex:d.rowindex,datafield:d.datafield})}}var g=e+"_"+b;if(this.dataview.filters.length>0){var c=this.getrowdata(e);if(c&&c.dataindex!==undefined){e=c.dataindex;var g=e+"_"+b}else{if(c&&c.dataindex===undefined){if(c.uid){e=this.getrowboundindexbyid(c.uid);var g=e+"_"+b}}}}var i={rowindex:e,datafield:b};if(h){this.selectedcell=i;if(!this.selectedcells[g]){this.selectedcells[g]=i;this.selectedcells.length++;this._raiseEvent(15,i)}else{if(this.selectionmode=="multiplecells"||this.selectionmode=="multiplecellsextended"||this.selectionmode=="multiplecellsadvanced"){delete this.selectedcells[g];if(this.selectedcells.length>0){this.selectedcells.length--}this._raiseEvent(16,i)}}}else{delete this.selectedcells[g];if(this.selectedcells.length>0){this.selectedcells.length--}this._raiseEvent(16,i)}if(f==undefined||f){this._rendervisualrows()}return true},_getcellindex:function(b){var c=-1;a.each(this.selectedcells,function(){c++;if(this[b]){return false}});return c},_clearhoverstyle:function(){if(undefined==this.hoveredrow||this.hoveredrow==-1){return}if(this.vScrollInstance.isScrolling()){return}if(this.hScrollInstance.isScrolling()){return}var b=this.table.find(".jqx-grid-cell-hover");if(b.length>0){b.removeClass(this.toTP("jqx-grid-cell-hover"));b.removeClass(this.toTP("jqx-fill-state-hover"))}this.hoveredrow=-1},_clearselectstyle:function(){var k=this.table[0].rows.length;var p=this.table[0].rows;var l=this.toTP("jqx-grid-cell-selected");var c=this.toTP("jqx-fill-state-pressed");var m=this.toTP("jqx-grid-cell-hover");var h=this.toTP("jqx-fill-state-hover");for(var g=0;g<k;g++){var b=p[g];var f=b.cells.length;var o=b.cells;for(var e=0;e<f;e++){var d=o[e];var n=a(d);if(d.className.indexOf("jqx-grid-cell-selected")!=-1){n.removeClass(l);n.removeClass(c)}if(d.className.indexOf("jqx-grid-cell-hover")!=-1){n.removeClass(m);n.removeClass(h)}}}},_selectpath:function(n,e){var l=this;var i=this._lastClickedCell?Math.min(this._lastClickedCell.row,n):0;var k=this._lastClickedCell?Math.max(this._lastClickedCell.row,n):0;if(i<=k){var h=this._getcolumnindex(this._lastClickedCell.column);var g=this._getcolumnindex(e);var f=Math.min(h,g);var d=Math.max(h,g);this.selectedcells=new Array();var m=this.dataview.loadedrecords;for(var b=i;b<=k;b++){for(var j=f;j<=d;j++){var n=m[b];this._applycellselection(l.getboundindex(n),l._getcolumnat(j).datafield,true,false)}}this._rendervisualrows()}},_selectrowpath:function(g){if(this.selectionmode=="multiplerowsextended"){var c=this;var b=this._lastClickedCell?Math.min(this._lastClickedCell.row,g):0;var h=this._lastClickedCell?Math.max(this._lastClickedCell.row,g):0;var f=this.dataview.loadedrecords;if(b<=h){this.selectedrowindexes=new Array();for(var e=b;e<=h;e++){var g=f[e];var d=this.getrowboundindex(e);this._applyrowselection(d,true,false)}this._rendervisualrows()}}},_selectrowwithmouse:function(p,b,c,f,d,s){var j=b.row;if(j==undefined){return}var k=b.index;if(this.hittestinfo[k]==undefined){return}var t=this.hittestinfo[k].visualrow;if(this.hittestinfo[k].details){return}var m=t.cells[0].className;if(j.group){return}if(this.selectionmode=="multiplerows"||this.selectionmode=="multiplecells"||this.selectionmode=="checkbox"||(this.selectionmode.indexOf("multiple")!=-1&&(s==true||d==true))){var l=this.getboundindex(j);if(this.dataview.filters.length>0){var v=this.getrowdata(l);if(v){l=v.dataindex;if(l==undefined){var l=this.getboundindex(j)}}}var q=c.indexOf(l)!=-1;var w=this.getboundindex(j)+"_"+f;if(this.selectionmode.indexOf("cell")!=-1){var h=this.selectedcells[w]!=undefined;if(this.selectedcells[w]!=undefined&&h){this._selectcellwithstyle(p,false,k,f,t)}else{this._selectcellwithstyle(p,true,k,f,t)}if(s&&this._lastClickedCell==undefined){var g=this.getselectedcells();if(g&&g.length>0){this._lastClickedCell={row:g[0].rowindex,column:g[0].datafield}}}if(s&&this._lastClickedCell){this._selectpath(j.visibleindex,f);this.mousecaptured=false;if(this.selectionarea.css("visibility")=="visible"){this.selectionarea.css("visibility","hidden")}}}else{if(q){if(d){this._applyrowselection(this.getboundindex(j),false)}else{this._selectrowwithstyle(p,t,false,f)}}else{this._selectrowwithstyle(p,t,true,f)}if(s&&this._lastClickedCell==undefined){var i=this.getselectedrowindexes();if(i&&i.length>0){this._lastClickedCell={row:i[0],column:f}}}if(s&&this._lastClickedCell){this.selectedrowindexes=new Array();var e=this._lastClickedCell?Math.min(this._lastClickedCell.row,j.visibleindex):0;var u=this._lastClickedCell?Math.max(this._lastClickedCell.row,j.visibleindex):0;var n=this.dataview.loadedrecords;for(var o=e;o<=u;o++){var j=n[o];if(j){this._applyrowselection(this.getboundindex(j),true,false,false)}}this._rendervisualrows()}}}else{this._clearselectstyle();this._selectrowwithstyle(p,t,true,f);if(this.selectionmode.indexOf("cell")!=-1){this._selectcellwithstyle(p,true,k,f,t)}}if(!s){this._lastClickedCell={row:j.visibleindex,column:f}}},_selectcellwithstyle:function(d,c,g,f,e){var b=a(e.cells[d._getcolumnindex(f)]);b.removeClass(this.toTP("jqx-grid-cell-hover"));b.removeClass(this.toTP("jqx-fill-state-hover"));if(c){b.addClass(this.toTP("jqx-grid-cell-selected"));b.addClass(this.toTP("jqx-fill-state-pressed"))}else{b.removeClass(this.toTP("jqx-grid-cell-selected"));b.removeClass(this.toTP("jqx-fill-state-pressed"))}},_selectrowwithstyle:function(e,h,b,j){var c=h.cells.length;var f=0;if(e.rowdetails&&e.showrowdetailscolumn){if(!this.rtl){f=1+this.groups.length}else{c-=1;c-=this.groups.length}}else{if(this.groupable){if(!this.rtl){f=this.groups.length}else{c-=this.groups.length}}}for(var g=f;g<c;g++){var d=h.cells[g];if(b){a(d).removeClass(this.toTP("jqx-grid-cell-hover"));a(d).removeClass(this.toTP("jqx-fill-state-hover"));if(e.selectionmode.indexOf("cell")==-1){a(d).addClass(this.toTP("jqx-grid-cell-selected"));a(d).addClass(this.toTP("jqx-fill-state-pressed"))}}else{a(d).removeClass(this.toTP("jqx-grid-cell-hover"));a(d).removeClass(this.toTP("jqx-grid-cell-selected"));a(d).removeClass(this.toTP("jqx-fill-state-hover"));a(d).removeClass(this.toTP("jqx-fill-state-pressed"))}}},_handlemousemoveselection:function(ab,o){if(o.hScrollInstance.isScrolling()||o.vScrollInstance.isScrolling()){return false}if((o.selectionmode=="multiplerowsextended"||o.selectionmode=="multiplecellsextended"||o.selectionmode=="multiplecellsadvanced")&&o.mousecaptured){if(o.multipleselectionbegins){var b=o.multipleselectionbegins(ab);if(b===false){return true}}var aa=this.showheader?this.columnsheader.height()+2:0;var I=this._groupsheader()?this.groupsheader.height():0;var K=this.showtoolbar?this.toolbar.height():0;I+=K;var Z=this.host.coord();if(this.hasTransform){Z=a.jqx.utilities.getOffset(this.host);var ad=this._getBodyOffset();Z.left-=ad.left;Z.top-=ad.top}if(this.host.css("border-top-width")==="0px"){I-=2}var M=ab.pageX;var L=ab.pageY-I;if(Math.abs(this.mousecaptureposition.left-M)>3||Math.abs(this.mousecaptureposition.top-L)>3){var f=parseInt(this.columnsheader.coord().top);if(this.hasTransform){f=a.jqx.utilities.getOffset(this.columnsheader).top}if(M<Z.left){M=Z.left}if(M>Z.left+this.host.width()){M=Z.left+this.host.width()}var X=Z.top+aa;if(L<X){L=X+5}var J=parseInt(Math.min(o.mousecaptureposition.left,M));var g=-5+parseInt(Math.min(o.mousecaptureposition.top,L));var H=parseFloat(Math.abs(o.mousecaptureposition.left-M));var P=parseInt(Math.abs(o.mousecaptureposition.top-L));J-=Z.left;g-=Z.top;this.selectionarea.css("visibility","visible");if(o.selectionmode=="multiplecellsadvanced"){var M=J;var t=M+H;var G=M;var n=o.hScrollInstance;var v=n.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){v=n.max-n.value}if(this.vScrollBar[0].style.visibility!="hidden"){}}var h=o.table[0].rows[0];var T=0;var B=o.mousecaptureposition.clickedcell;var A=B;var m=false;var r=0;var ac=h.cells.length;if(o.mousecaptureposition.left<=ab.pageX){r=B}for(var W=r;W<ac;W++){var Y=parseFloat(a(this.columnsrow[0].cells[W]).css("left"));var j=Y-v;if(o.columns.records[W].pinned){j=Y;continue}var O=this._getcolumnat(W);if(O!=null&&O.hidden){continue}if(o.groupable&&o.groups.length>0){if(W<o.groups.length){continue}}var S=j+a(this.columnsrow[0].cells[W]).width();if(o.mousecaptureposition.left>ab.pageX){if(S>=M&&M>=j){A=W;m=true;break}}else{if(S>=t&&t>=j){A=W;m=true;break}}}if(!m){if(o.mousecaptureposition.left>ab.pageX){a.each(this.columns.records,function(i,k){if(o.groupable&&o.groups.length>0){if(i<o.groups.length){return true}}if(!this.pinned&&!this.hidden){A=i;return false}})}else{if(!o.groupable||(o.groupable&&!o.groups.length>0)){A=h.cells.length-1}}}var N=B;B=Math.min(B,A);A=Math.max(N,A);g+=5;g+=I;var R=o.table[0].rows.indexOf(o.mousecaptureposition.clickedrow);var w=0;var e=-1;var u=-1;var d=0;for(var W=0;W<o.table[0].rows.length;W++){var s=a(o.table[0].rows[W]);if(W==0){d=s.coord().top}var F=s.height();var z=d-Z.top;if(e==-1&&z+F>=g){var c=false;for(var Q=0;Q<o.groups.length;Q++){var V=s[0].cells[Q].className;if(V.indexOf("jqx-grid-group-collapse")!=-1||V.indexOf("jqx-grid-group-expand")!=-1){c=true;break}}if(c){continue}e=W}d+=F;if(o.groupable&&o.groups.length>0){var c=false;for(var Q=0;Q<o.groups.length;Q++){var V=s[0].cells[Q].className;if(V.indexOf("jqx-grid-group-collapse")!=-1||V.indexOf("jqx-grid-group-expand")!=-1){c=true;break}}if(c){continue}var T=0;for(var U=o.groups.length;U<s[0].cells.length;U++){var E=s[0].cells[U];if(a(E).html()==""){T++}}if(T==s[0].cells.length-o.groups.length){continue}}if(e!=-1){w+=F}if(z+F>g+P){u=W;break}}if(e!=-1){g=a(o.table[0].rows[e]).coord().top-Z.top-I-2;var D=0;if(this.filterable&&this.showfilterrow){D=this.filterrowheight}if(parseFloat(o.table[0].style.top)<0&&g<this.rowsheight+D){g-=parseFloat(o.table[0].style.top);w+=parseFloat(o.table[0].style.top)}P=w;var l=a(this.columnsrow[0].cells[B]);var C=a(this.columnsrow[0].cells[A]);J=parseFloat(l.css("left"));H=parseFloat(C.css("left"))-parseFloat(J)+C.width()-2;J-=v;if(o.editcell&&o.editable&&o.endcelledit&&(B!=A||e!=u)){if(o.editcell.validated==false){return}o.endcelledit(o.editcell.row,o.editcell.column,true,true)}}}this.selectionarea.width(H);this.selectionarea.height(P);this.selectionarea.css("left",J);this.selectionarea.css("top",g)}}},_handlemouseupselection:function(u,o){if(!this.selectionarea){return}if(this.selectionarea[0].style.visibility!="visible"){o.mousecaptured=false;return true}if(o.mousecaptured&&(o.selectionmode=="multiplerowsextended"||o.selectionmode=="multiplerowsadvanced"||o.selectionmode=="multiplecellsextended"||o.selectionmode=="multiplecellsadvanced")){o.mousecaptured=false;if(this.selectionarea.css("visibility")=="visible"){this.selectionarea.css("visibility","hidden");var w=this.showheader?this.columnsheader.height()+2:0;var p=this._groupsheader()?this.groupsheader.height():0;if(this.host.css("border-top-width")==="0px"){p-=2}var B=this.showtoolbar?this.toolbar.height():0;p+=B;var C=this.selectionarea.coord();var c=this.host.coord();if(this.hasTransform){c=a.jqx.utilities.getOffset(this.host);C=a.jqx.utilities.getOffset(this.selectionarea)}if(this.host.css("border-top-width")==="0px"){p-=2}var n=C.left-c.left;var k=C.top-w-c.top-p;var s=k;var g=n+this.selectionarea.width();var D=n;var l=new Array();var e=new Array();if(o.selectionmode=="multiplerowsextended"){while(k<s+this.selectionarea.height()){var b=this._hittestrow(n,k);var f=b.row;var h=b.index;if(h!=-1){if(!e[h]){e[h]=true;l[l.length]=b}}k+=20}var s=0;a.each(l,function(){var i=this;var m=this.row;if(o.selectionmode!="none"&&o._selectrowwithmouse){if(u.ctrlKey||u.metaKey){o._applyrowselection(o.getboundindex(m),true,false,false)}else{if(s==0){o._applyrowselection(o.getboundindex(m),true,false,true)}else{o._applyrowselection(o.getboundindex(m),true,false,false)}}s++}})}else{if(o.selectionmode=="multiplecellsadvanced"){k+=2}var r=o.hScrollInstance;var t=r.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){t=r.max-r.value}if(this.vScrollBar[0].style.visibility!="hidden"){t-=this.scrollbarsize+4}}var q=o.table[0].rows[0];var j=o.selectionarea.height();if(!u.ctrlKey&&!u.metaKey&&j>0){o.selectedcells=new Array()}var A=j;while(k<s+A){var b=o._hittestrow(n,k);if(!b){k+=5;continue}var f=b.row;var h=b.index;if(h!=-1){if(!e[h]){e[h]=true;for(var v=0;v<q.cells.length;v++){var d=parseFloat(a(o.columnsrow[0].cells[v]).css("left"))-t;var z=d+a(o.columnsrow[0].cells[v]).width();if((D>=d&&D<=z)||(g>=d&&g<=z)||(d>=D&&d<=g)){o._applycellselection(o.getboundindex(f),o._getcolumnat(v).datafield,true,false)}}}}k+=5}}if(o.autosavestate){if(o.savestate){o.savestate()}}o._renderrows(o.virtualsizeinfo)}}},selectprevcell:function(e,c){var f=this._getcolumnindex(c);var b=this.columns.records.length;var d=this._getprevvisiblecolumn(f);if(d!=null){this.clearselection();this.selectcell(e,d.datafield)}},selectnextcell:function(e,d){var f=this._getcolumnindex(d);var c=this.columns.records.length;var b=this._getnextvisiblecolumn(f);if(b!=null){this.clearselection();this.selectcell(e,b.datafield)}},_getfirstvisiblecolumn:function(){var b=this;var e=this.columns.records.length;for(var c=0;c<e;c++){var d=this.columns.records[c];if(!d.hidden&&d.datafield!=null){return d}}return null},_getlastvisiblecolumn:function(){var b=this;var e=this.columns.records.length;for(var c=e-1;c>=0;c--){var d=this.columns.records[c];if(!d.hidden&&d.datafield!=null){return d}}return null},_handlekeydown:function(A,t){if(t.groupable&&t.groups.length>0){}if(t.disabled){return false}var H=A.charCode?A.charCode:A.keyCode?A.keyCode:0;if(t.editcell&&t.selectionmode!="multiplecellsadvanced"){return true}else{if(t.editcell&&t.selectionmode=="multiplecellsadvanced"){if(H>=33&&H<=40){if(!A.altKey){if(t._cancelkeydown==undefined||t._cancelkeydown==false){if(t.editmode!=="selectedrow"){t.endcelledit(t.editcell.row,t.editcell.column,false,true);t._cancelkeydown=false;if(t.editcell&&!t.editcell.validated){t._rendervisualrows();t.endcelledit(t.editcell.row,t.editcell.column,false,true);return false}}else{return true}}else{t._cancelkeydown=false;return true}}else{t._cancelkeydown=false;return true}}else{return true}}}if(t.selectionmode=="none"){return true}if(t.showfilterrow&&t.filterable){if(this.filterrow){if(a(A.target).ischildof(t.filterrow)){return true}}}if(t.showeverpresentrow){if(t.addnewrowtop){if(a(A.target).ischildof(t.addnewrowtop)){return true}}if(t.addnewrowbottom){if(a(A.target).ischildof(t.addnewrowbottom)){return true}}}if(t.pageable){if(a(A.target).ischildof(this.pager)){return true}}if(this.showtoolbar){if(a(A.target).ischildof(this.toolbar)){return true}}if(this.showstatusbar){if(a(A.target).ischildof(this.statusbar)){return true}}var r=false;if(A.altKey){return true}if(A.ctrlKey||A.metaKey){if(this.clipboard){var b=String.fromCharCode(H).toLowerCase();if(this.clipboardbegin){var j=null;if(b=="c"){j=this.clipboardbegin("copy",this.copyselection())}else{if(b=="x"){j=this.clipboardbegin("cut",this.copyselection())}else{if(b=="v"){j=this.clipboardbegin("paste")}}}if(j===false){return false}}if(b=="c"||b=="x"){var q=this.copyselection();if(b=="c"&&this.clipboardend){this.clipboardend("copy")}if(b=="x"&&this.clipboardend){this.clipboardend("cut")}if(window.clipboardData){window.clipboardData.setData("Text",q)}else{var g=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');g.val(q);a("body").append(g);g.select();setTimeout(function(){document.designMode="off";g.select();g.remove();t.focus()},100)}if(b=="c"&&a.jqx.browser.msie){return false}else{if(b=="c"){return true}}}else{if(b=="v"){var F=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');a("body").append(F);F.select();var k=this;setTimeout(function(){k._clipboardselection=new Array();var M=F.val();if(M.length==0&&window.clipboardData){F.val(window.clipboardData.getData("Text"));var M=F.val()}var L=M.split("\n");for(var K=0;K<L.length;K++){if(L[K].split("\t").length>0){var J=L[K].split("\t");if(J.length==1&&K==L.length-1&&J[0]==""){continue}if(J.length>0){k._clipboardselection.push(J)}}}k.pasteselection();F.remove();k.focus()},100);return true}}if(b=="x"){this.deleteselection();this.host.focus();return false}}}var n=Math.round(t._gettableheight());var y=Math.round(n/t.rowsheight);var f=t.getdatainformation();switch(t.selectionmode){case"singlecell":case"multiplecells":case"multiplecellsextended":case"multiplecellsadvanced":var I=t.getselectedcell();if(I!=null){var e=this.getrowvisibleindex(I.rowindex);var i=e;var p=I.datafield;var w=t._getcolumnindex(p);var c=t.columns.records.length;var v=function(Q,K,P,O){var J=function(ab,U){var W=t.dataview.loadedrecords[ab];if(t.groupable&&t.groups.length>0){var X=ab;if(O=="up"){X++}if(O=="down"){X--}var W=t.getdisplayrows()[X];var R=function(ac){if(ac.group){if(t.expandedgroups[ac.uniqueid]){return t.expandedgroups[ac.uniqueid].expanded}}else{return false}};var Z=1;var S=true;while(S&&Z<300){S=false;if(O=="down"){W=t.getdisplayrows()[X+Z]}else{if(O=="up"){W=t.getdisplayrows()[X-Z]}}if(!W){break}if(W&&W.group){S=true}var aa=W.parentItem;while(aa){if(aa&&!R(aa)){S=true}aa=aa.parentItem}if(!S){break}Z++}if(Z==300){W=null}if(t.pageable){var Y=false;if(W){for(var V=0;V<t.dataview.rows.length;V++){if(t.dataview.rows[V].boundindex==W.boundindex){Y=true}}if(!Y){W=null}}}}if(W!=undefined&&U!=null){if(P||P==undefined){t.clearselection()}var T=t.getboundindex(W);t.selectcell(T,U);t._oldselectedcell=t.selectedcell;r=true;t.ensurecellvisible(ab,U);return true}return false};if(!J(Q,K)){t.ensurecellvisible(Q,K);J(Q,K);if(t.virtualmode){t.host.focus()}}var M=t.groupable&&t.groups.length>0;if(!M){if(A.shiftKey&&A.keyCode!=9){if(t.selectionmode=="multiplecellsextended"||t.selectionmode=="multiplecellsadvanced"){if(t._lastClickedCell){t._selectpath(Q,K);var N=t.dataview.loadedrecords[Q];var L=t.getboundindex(N);t.selectedcell={rowindex:L,datafield:K};return}}}else{if(!A.shiftKey){t._lastClickedCell={row:Q,column:K}}}}};var B=A.shiftKey&&t.selectionmode!="singlecell"&&t.selectionmode!="multiplecells";var C=function(){v(0,p,!B)};var h=function(){var J=f.rowscount-1;v(J,p,!B)};var d=H==9&&!A.shiftKey;var m=H==9&&A.shiftKey;if(t.rtl){var s=d;d=m;m=s}if(d||m){B=false}if(d||m){if(document.activeElement&&document.activeElement.className&&document.activeElement.className.indexOf("jqx-grid-cell-add-new-row")>=0){return true}}var o=A.ctrlKey||A.metaKey;if(o&&H==37){var E=t._getfirstvisiblecolumn(w);if(E!=null){v(i,E.datafield)}}else{if(o&&H==39){var u=t._getlastvisiblecolumn(w);if(u!=null){v(i,u.datafield)}}else{if(H==39||d){var x=t._getnextvisiblecolumn(w);if(x!=null){v(i,x.datafield,!B)}else{if(!d){r=true}else{var G=t._getfirstvisiblecolumn();H=40;p=G.displayfield}}}else{if(H==37||m){var E=t._getprevvisiblecolumn(w);if(E!=null){v(i,E.datafield,!B)}else{if(!m){r=true}else{var l=t._getlastvisiblecolumn();H=38;p=l.displayfield}}}else{if(H==36){C()}else{if(H==35){h()}else{if(H==33){if(i-y>=0){var D=i-y;v(D,p,!B)}else{C()}}else{if(H==34){if(f.rowscount>i+y){var D=i+y;v(D,p,!B)}else{h()}}}}}}}}}if(H==38){if(o){C()}else{if(i>0){v(i-1,p,!B,"up")}else{r=true}}}if(H==40){if(o){h()}else{if((f.rowscount>i+1)||(t.groupable&&t.groups.length>0)){v(i+1,p,!B,"down")}else{r=true}}}}break;case"singlerow":case"multiplerows":case"multiplerowsextended":case"multiplerowsadvanced":var i=t.getselectedrowindex();if(i==null||i==-1){return true}i=this.getrowvisibleindex(i);var z=function(K,N,M){var J=function(V){var U=t.dataview.loadedrecords[V];if(t.groupable&&t.groups.length>0){if(M=="up"){V++}if(M=="down"){V--}var U=t.getdisplayrows()[V];var O=function(Z){if(Z.group){if(t.expandedgroups[Z.uniqueid]){return t.expandedgroups[Z.uniqueid].expanded}}else{return false}};var X=1;var P=true;while(P&&X<300){P=false;if(M=="down"){U=t.getdisplayrows()[V+X]}else{if(M=="up"){U=t.getdisplayrows()[V-X]}}if(!U){break}if(U&&U.group){P=true}var Y=U.parentItem;while(Y){if(Y&&!O(Y)){P=true}Y=Y.parentItem}if(!P){break}X++}if(X==300){U=null}if(t.pageable){var W=false;if(U){for(var T=0;T<t.dataview.rows.length;T++){if(t.dataview.rows[T].boundindex==U.boundindex){W=true}}if(!W){U=null}}}}if(U!=undefined){var Q=t.getboundindex(U);var S=t.selectedrowindex;if(N||N==undefined){t.clearselection()}t.selectedrowindex=S;t.selectrow(Q,false);var R=t.ensurerowvisible(V);if(!R||t.autoheight||t.groupable){t._rendervisualrows()}r=true;return true}return false};if(!J(K)){t.ensurerowvisible(K);J(K,N);if(t.virtualmode){setTimeout(function(){J(K,N)},25)}if(t.virtualmode){t.host.focus()}}var L=t.groupable&&t.groups.length>0;if(!L){if(A.shiftKey&&H!=9){if(t.selectionmode=="multiplerowsextended"){if(t._lastClickedCell){t._selectrowpath(K);t.selectedrowindex=t.getrowboundindex(K);return}}}else{if(!A.shiftKey){t._lastClickedCell={row:K};t.selectedrowindex=t.getrowboundindex(K)}}}};var B=A.shiftKey&&t.selectionmode!="singlerow"&&t.selectionmode!="multiplerows";var C=function(){z(0,!B)};var h=function(){var J=f.rowscount-1;z(J,!B)};var o=A.ctrlKey||A.metaKey;if(H==36||(o&&H==38)){C()}else{if(H==35||(o&&H==40)){h()}else{if(H==33){if(i-y>=0){var D=i-y;z(D,!B)}else{C()}}else{if(H==34){if(f.rowscount>i+y){var D=i+y;z(D,!B)}else{h()}}else{if(H==38){if(i>0){z(i-1,!B,"up")}else{r=true}}else{if(H==40){if((f.rowscount>i+1)||(t.groupable&&t.groups.length>0)){z(i+1,!B,"down")}else{r=true}}}}}}}break}if(r){if(t.autosavestate){if(t.savestate){t.savestate()}}return false}return true},_handlemousemove:function(u,p){if(p.vScrollInstance.isScrolling()){return}if(p.hScrollInstance.isScrolling()){return}var w;var q;var f;var n;var m;if(p.enablehover||p.selectionmode=="multiplerows"){w=this.showheader?this.columnsheader.height()+2:0;q=this._groupsheader()?this.groupsheader.height():0;var A=this.showtoolbar?this.toolbarheight:0;q+=A;f=this.host.coord();if(this.hasTransform){f=a.jqx.utilities.getOffset(this.host);var k=this._getBodyOffset();f.left-=k.left;f.top-=k.top}n=u.pageX-f.left;m=u.pageY-w-f.top-q}if(p.selectionmode=="multiplerowsextended"||p.selectionmode=="multiplecellsextended"||p.selectionmode=="multiplecellsadvanced"){if(p.mousecaptured==true){return}}if(p.enablehover){if(p.disabled){return}if(this.vScrollInstance.isScrolling()||this.hScrollInstance.isScrolling()){return}var c=this._hittestrow(n,m);if(!c){return}var h=c.row;var j=c.index;if(this.hoveredrow!=-1&&j!=-1&&this.hoveredrow==j&&this.selectionmode.indexOf("cell")==-1&&this.selectionmode!="checkbox"){return}this._clearhoverstyle();if(j==-1||h==undefined){return}var r=this.hittestinfo[j].visualrow;if(r==null){return}if(this.hittestinfo[j].details){return}if(u.clientX>a(r).width()+a(r).coord().left){return}var B=0;var o=r.cells.length;if(p.rowdetails&&p.showrowdetailscolumn){if(!this.rtl){B=1+this.groups.length}else{o-=1;o-=this.groups.length}}else{if(this.groupable){if(!this.rtl){B=this.groups.length}else{o-=this.groups.length}}}if(r.cells.length==0){return}var l=r.cells[B].className;if(h.group||(this.selectionmode.indexOf("row")>=0&&l.indexOf("jqx-grid-cell-selected")!=-1)){return}this.hoveredrow=j;if(this.selectionmode.indexOf("cell")!=-1||this.selectionmode=="checkbox"){var e=-1;var s=this.hScrollInstance;var t=s.value;if(this.rtl){if(this.hScrollBar.css("visibility")!="hidden"){t=s.max-s.value}}for(var v=B;v<o;v++){var g=parseInt(a(this.columnsrow[0].cells[v]).css("left"))-t;var z=g+a(this.columnsrow[0].cells[v]).width();if(z>=n&&n>=g){e=v;break}}if(e!=-1){var b=r.cells[e];if(this.cellhover){this.cellhover(b,u.pageX,u.pageY)}if(b.className.indexOf("jqx-grid-cell-selected")==-1){if(this.editcell){var d=this._getcolumnat(e);if(d){if(this.editcell.row==j&&this.editcell.column==d.datafield){return}}}a(b).addClass(this.toTP("jqx-grid-cell-hover"));a(b).addClass(this.toTP("jqx-fill-state-hover"))}}return}for(var v=B;v<o;v++){var b=r.cells[v];a(b).addClass(this.toTP("jqx-grid-cell-hover"));a(b).addClass(this.toTP("jqx-fill-state-hover"));if(this.cellhover){this.cellhover(b,u.pageX,u.pageY)}}}else{return true}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.sort.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.sort.js
new file mode 100644 (file)
index 0000000..dc89d81
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.dataview.sort=function(){this.sortby=function(d,f,p){var m=Object.prototype.toString;if(f==null){this.sortdata=null;this.sortcache={};this.grid._pagescache=new Array();this.grid._cellscache=new Array();this.refresh();return}if(f==undefined){f=true}if(f=="a"||f=="asc"||f=="ascending"||f==true){f=true}else{f=false}var g=d;this.sortfield=d;this.sortfielddirection=f?"asc":"desc";if(this.sortcache==undefined){this.sortcache={}}this.sortdata=[];var b=[];var c=false;if(g=="constructor"){g=""}if(!this.virtualmode&&this.sortcache[g]!=null){var o=this.sortcache[g];b=o._sortdata;if(o.direction==f){b.reverse()}else{if(!o.direction&&f){b.reverse()}c=true}if(b.length<this.totalrecords){this.sortcache={};c=false;b=[]}}Object.prototype.toString=(typeof d=="function")?d:function(){return this[d]};var r=this.records;var t=this.that;var n="";if(this.source.datafields){a.each(this.source.datafields,function(){if(this.name==d){if(this.type){n=this.type}return false}})}if(b.length==0){if(r.length){var h=r.length;for(var q=0;q<h;q++){var e=r[q];if(e!=null){var j=e;var s=j.toString();b.push({sortkey:s,value:j,index:q})}}}else{var l=false;for(obj in r){var e=r[obj];if(e==undefined){l=true;break}var j=e;b.push({sortkey:j.toString(),value:j,index:obj})}if(l){a.each(r,function(u,v){b.push({sortkey:v.toString(),value:v,index:u})})}}}if(!c){if(p==null){this._sortcolumntype=n;var k=this;b.sort(function(u,i){return k._compare(u,i,n)})}else{b.sort(p)}}if(!f){b.reverse()}Object.prototype.toString=m;this.sortdata=b;this.sortcache[g]={_sortdata:b,direction:f};this.reload(this.records,this.rows,this.filters,this.updated,true)},this.clearsortdata=function(){this.sortcache={};this.sortdata=null};this._compare=function(c,b,e){var c=c.sortkey;var b=b.sortkey;if(c===undefined){c=null}if(b===undefined){b=null}if(c===null&&b===null){return 0}if(c===null&&b!==null){return -1}if(c!==null&&b===null){return 1}if(a.jqx.dataFormat){if(e&&e!=""){switch(e){case"number":case"int":case"float":if(c<b){return -1}if(c>b){return 1}return 0;case"date":case"time":if(c<b){return -1}if(c>b){return 1}return 0;case"string":case"text":c=String(c).toLowerCase();b=String(b).toLowerCase();break}}else{if(a.jqx.dataFormat.isNumber(c)&&a.jqx.dataFormat.isNumber(b)){if(c<b){return -1}if(c>b){return 1}return 0}else{if(a.jqx.dataFormat.isDate(c)&&a.jqx.dataFormat.isDate(b)){if(c<b){return -1}if(c>b){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(c)&&!a.jqx.dataFormat.isNumber(b)){c=String(c).toLowerCase();b=String(b).toLowerCase()}}}}}try{if(c<b){return -1}if(c>b){return 1}}catch(d){var f=d}return 0};this._equals=function(c,b){return(this._compare(c,b)===0)}};a.extend(a.jqx._jqxGrid.prototype,{_rendersortcolumn:function(){var b=this.that;var d=this.getsortcolumn();if(this.sortdirection){var c=function(f,g){var e=b.getcolumn(f);if(e){if(g.ascending){a.jqx.aria(e.element,"aria-sort","ascending")}else{if(g.descending){a.jqx.aria(e.element,"aria-sort","descending")}else{a.jqx.aria(e.element,"aria-sort","none")}}}};if(this._oldsortinfo){if(this._oldsortinfo.column){c(this._oldsortinfo.column,{ascending:false,descending:false})}}c(d,this.sortdirection)}this._oldsortinfo={column:d,direction:this.sortdirection};if(this.sortdirection){a.each(this.columns.records,function(f,g){var e=a.data(document.body,"groupsortelements"+this.displayfield);if(d==null||this.displayfield!=d){a(this.sortasc).hide();a(this.sortdesc).hide();if(e!=null){e.sortasc.hide();e.sortdesc.hide()}}else{if(b.sortdirection.ascending){a(this.sortasc).show();a(this.sortdesc).hide();if(e!=null){e.sortasc.show();e.sortdesc.hide()}}else{a(this.sortasc).hide();a(this.sortdesc).show();if(e!=null){e.sortasc.hide();e.sortdesc.show()}}}})}},getsortcolumn:function(){if(this.sortcolumn!=undefined){return this.sortcolumn}return null},removesort:function(){this.sortby(null)},sortby:function(d,g,f,e,b){if(this._loading&&b!==false){throw new Error("jqxGrid: "+this.loadingerrormessage);return false}if(d==null){g=null;d=this.sortcolumn}if(d!=undefined){var c=this.that;if(f==undefined&&c.source.sortcomparer!=null){f=c.source.sortcomparer}if(g=="a"||g=="asc"||g=="ascending"||g==true){ascending=true}else{ascending=false}if(g!=null){c.sortdirection={ascending:ascending,descending:!ascending}}else{c.sortdirection={ascending:false,descending:false}}if(g!=null){c.sortcolumn=d}else{c.sortcolumn=null}if(c.source.sort||c.virtualmode){c.dataview.sortfield=d;if(g==null){c.dataview.sortfielddirection=""}else{c.dataview.sortfielddirection=ascending?"asc":"desc"}if(c.source.sort&&!this._loading){c.source.sort(d,g);c._raiseEvent(6,{sortinformation:c.getsortinformation()});return}}else{c.dataview.sortby(d,g,f)}if(e===false){return}if(c.groupable&&c.groups.length>0){c._render(true,false,false);if(c._updategroupheadersbounds&&c.showgroupsheader){c._updategroupheadersbounds()}}else{if(c.pageable){c.dataview.updateview()}c._updaterowsproperties();c.rendergridcontent(true)}c._raiseEvent(6,{sortinformation:c.getsortinformation()})}},_togglesort:function(d){var b=this.that;if(this.disabled){return}if(d.sortable&&b.sortable){var c=b.getsortinformation();var e=null;if(c.sortcolumn!=null&&c.sortcolumn==d.displayfield){e=c.sortdirection.ascending;if(b.sorttogglestates>1){if(e==true){e=false}else{e=null}}else{e=!e}}else{e=true}b.sortby(d.displayfield,e,null)}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.storage.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxgrid.storage.js
new file mode 100644 (file)
index 0000000..4bac5b1
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.extend(a.jqx._jqxGrid.prototype,{savestate:function(b){var c=this.getstate();if(b!==undefined&&!a.isEmptyObject(b)){if(b.indexOf("sort")==-1){delete c.sortcolumn;delete c.sortdirection}if(b.indexOf("pager")==-1){delete c.pagenum;delete c.pagesizeoptions;delete c.pagesize}if(b.indexOf("selection")==-1){delete c.selectedcells;delete c.selectedrowindexes;delete c.selectedrowindex}if(b.indexOf("grouping")==-1){delete c.groups}if(b.indexOf("filter")==-1){delete c.filters}a.each(this.columns.records,function(e){var d=c.columns[this.datafield];if(b.indexOf("hidden_columns")==-1){delete d.hidden}if(b.indexOf("reorder")==-1){delete d.index}if(b.indexOf("columns_width")==-1){delete d.width}if(b.indexOf("columns_text")==-1){delete d.text}if(b.indexOf("alignment")==-1){delete d.align;delete d.cellsalign}})}if(window.localStorage){window.localStorage["jqxGrid"+this.element.id]=this._stringify(c)}this._savedstate=c;return c},loadstate:function(d,j){var g="";if(d!=undefined&&d.width!=undefined){g=d}else{if(window.localStorage){var c=window.localStorage["jqxGrid"+this.element.id];if(c){var g=a.parseJSON(window.localStorage["jqxGrid"+this.element.id])}}else{if(this._savedstate){var g=this._savedstate}}}if(g!=null&&g!==""){if(this.virtualmode||(this.source._source.url&&this.source._source.url!="")){this.source.beginUpdate()}var f=g;if(f.width!==undefined){this.width=f.width}if(f.height!==undefined){this.height=f.height}if(this.pageable){if(f.pagesize!=undefined){this.pagesize=f.pagesize;this.dataview.pagesize=f.pagesize}if(f.pagenum!=undefined){this.dataview.pagenum=f.pagenum}if(f.pagesizeoptions!=undefined){this.pagesizeoptions=f.pagesizeoptions}if(this.pagesizeoptions){var e=0;for(var b=0;b<this.pagesizeoptions.length;b++){if(this.pagesize>=this.pagesizeoptions[b]){e=b}}if(this.pagershowrowscombo){this.pagershowrowscombo.jqxDropDownList({selectedIndex:e})}}}if(this.sortable){if(this._loading){this._loading=false}if(f.sortdirection){if(f.sortdirection.ascending||f.sortdirection.descending){this.dataview.sortfield=f.sortcolumn;var h=f.sortdirection.ascending?"asc":"desc";this.dataview.sortfielddirection=h;this.source.sortcolumn=f.sortcolumn;this.source.sortdirection=h;this.sortby(f.sortcolumn,h)}}else{if(this.dataview.sortfield!=null&&(this.dataview.sortfielddirection=="asc"||this.dataview.sortfielddirection=="desc")){this.sortby(this.dataview.sortfield,null)}}}if(this.groupable&&f.groups){this.dataview.groups=f.groups;this.groups=f.groups}this.loadingstate=true;if(this.virtualsizeinfo){this._loadselectionandcolumnwidths(f)}this.loadingstate=false;if(this.virtualmode||(this.source._source.url&&this.source._source.url!="")){if(j==true){this.source.endUpdate(false)}else{this.source.endUpdate(false);if(this.virtualmode||this.source._source.filter||this.source._source.sort){this.updatebounddata("state")}}}}},_loadselectionandcolumnwidths:function(j){this.loadingstate=true;var m="";if(j!=undefined&&j.width!=undefined){m=j}else{if(window.localStorage){if(window.localStorage["jqxGrid"+this.element.id]){var m=a.parseJSON(window.localStorage["jqxGrid"+this.element.id])}}else{if(this._savedstate){var m=this._savedstate}}}if(m!=null&&m!=""){var E=this._loading;this._loading=false;var G=m;var F=this;var g=false;var d=[];d.length=0;var D=[];a.each(this.columns.records,function(I){var i=G.columns[this.datafield];if(i!=undefined){if(this.text!=i.text){g=true}if(this.hidden!=i.hidden){g=true}if(i.width!==undefined){this.width=i.width;if(this._width){this._width=null}if(this._percentagewidth){this._percentagewidth=null}}if(i.hidden!==undefined){this.hidden=i.hidden}if(i.pinned!==undefined){this.pinned=i.pinned}if(i.groupable!==undefined){this.groupable=i.groupable}if(i.resizable!==undefined){this.resizable=i.resizable}this.draggable=i.draggable;if(i.text!==undefined){this.text=i.text}if(i.align!==undefined){this.align=i.align}if(i.cellsalign!==undefined){this.cellsalign=i.cellsalign}if(F._columns){for(var H=0;H<F._columns.length;H++){if(F._columns[H].datafield==this.datafield){if(i.hidden!==undefined){F._columns[H]["hidden"]=i.hidden}if(i.width!==undefined){F._columns[H]["width"]=i.width}}}}if(i.index!==undefined){d[this.datafield]=i.index;d.length++}}});if(d.length>0){if(this.setcolumnindex){var x=this.rowdetails?1:0;x+=this.groupable?this.groups.length:0;var v=new Array();for(var C=0;C<this.columns.records.length;C++){v.push(this.columns.records[C])}var B=0;var f=new Array();for(var C=0;C<v.length;C++){var k=v[C];var n=d[k.datafield];if(this.groupable&&k.grouped){B++;continue}if(C==0&&this.rowdetails){B++;continue}if(C!==n||this.groupable||this.rowdetails){var q=B+n;f.push({column:k,key:q})}}f.sort(function(H,i){if(H.key<i.key){return -1}if(H.key>i.key){return 1}return 0});f.reverse();a.each(f,function(i,I){var H=this.key;F.setcolumnindex(this.column.datafield,H,false)})}this.prerenderrequired=true;if(this.groupable){this._refreshdataview()}this.rendergridcontent(true);if(this._updatefilterrowui&&this.filterable&&this.showfilterrow){this._updatefilterrowui()}this._renderrows(this.virtualsizeinfo)}if(this.filterable&&G.filters!==undefined){if(this.clearfilters){this._loading=false;this.clearfilters(false)}var c="";var p=new a.jqx.filter();for(var C=0;C<G.filters.filterscount;C++){var A=G.filters["filtercondition"+C];var u=G.filters["filterdatafield"+C];var k=this.getcolumn(u);if(u!=c){p=new a.jqx.filter()}c=u;if(k&&k.filterable){var y=G.filters["filtervalue"+C];var r=G.filters["filteroperator"+C];var b=G.filters["filtertype"+C];if(b=="datefilter"){var s=p.createfilter(b,y,A,null,k.cellsformat,this.gridlocalization)}else{var s=p.createfilter(b,y,A)}p.addfilter(r,s);if(this.showfilterrow){var l=k._filterwidget;var e=k._filterwidget.parent();if(l!=null){switch(k.filtertype){case"number":e.find("input").val(y);if(this.host.jqxDropDownList){var o=p.getoperatorsbyfiltertype("numericfilter");l.find(".filter").jqxDropDownList("selectIndex",o.indexOf(A))}break;case"date":if(this.host.jqxDateTimeInput){a(e.children()[0]).jqxDateTimeInput("setDate",y)}else{l.val(y)}break;case"range":if(this.host.jqxDateTimeInput){var t=G.filters["filtervalue"+(C+1)];var b=G.filters["filtertype"+C];var s=p.createfilter(b,t,"LESS_THAN_OR_EQUAL");p.addfilter(r,s);var z=new Date(y);var h=new Date(t);if(isNaN(z)){z=a.jqx.dataFormat.tryparsedate(y)}if(isNaN(h)){h=a.jqx.dataFormat.tryparsedate(y)}a(e.children()[0]).jqxDateTimeInput("setRange",z,h);C++}else{l.val(y)}break;case"textbox":case"default":l.val(y);F["_oldWriteText"+l[0].id]=y;break;case"list":if(this.host.jqxDropDownList){var w=a(e.children()[0]).jqxDropDownList("getItems");var n=-1;a.each(w,function(H){if(this.value==y){n=H;return false}});a(e.children()[0]).jqxDropDownList("selectIndex",n)}else{l.val(y)}break;case"checkedlist":if(!this.host.jqxDropDownList){l.val(y)}break;case"bool":case"boolean":if(!this.host.jqxCheckBox){l.val(y)}else{a(e.children()[0]).jqxCheckBox({checked:y})}break}}}this.addfilter(u,p)}}if(G.filters&&G.filters.filterscount>0){this.applyfilters();if(this.showfilterrow){a.each(this.columns.records,function(){if(this.filtertype=="checkedlist"&&this.filterable){if(F.host.jqxDropDownList){var L=this;var J=L._filterwidget;var O=J.jqxDropDownList("getItems");var H=J.jqxDropDownList("listBox");H.checkAll(false);if(L.filter){H.uncheckAll(false);var N=L.filter.getfilters();for(var K=0;K<H.items.length;K++){var I=H.items[K].label;a.each(N,function(){if(this.condition=="NOT_EQUAL"){return true}if(I==this.value){H.checkIndex(K,false,false)}})}H._updateCheckedItems();var M=H.getCheckedItems().length;if(H.items.length!=M&&M>0){H.host.jqxListBox("indeterminateIndex",0,true,false)}}}}})}}if(this.pageable&&G.pagenum!==undefined){if(this.gotopage&&!this.virtualmode){this.dataview.pagenum=-1;this.gotopage(G.pagenum)}else{if(this.gotopage&&this.virtualmode){this.gotopage(G.pagenum)}}}}if(G.selectedrowindexes&&G.selectedrowindexes&&G.selectedrowindexes.length>0){this.selectedrowindexes=G.selectedrowindexes;this.selectedrowindex=G.selectedrowindex;if(this.selectionmode==="checkbox"){this._updatecheckboxselection()}}if(G.selectedcells){if(this._applycellselection){a.each(G.selectedcells,function(){F._applycellselection(this.rowindex,this.datafield,true,false)})}}if(this.groupable&&G.groups!==undefined){this._refreshdataview();this.render();this._loading=E;this.loadingstate=false;return}if(g){this.prerenderrequired=true;this.rendergridcontent(true);this._loading=E;this.loadingstate=false;if(this.updating()){return false}}else{this._loading=E;this._updatecolumnwidths();this._updatecellwidths();this.loadingstate=false}this.loadingstate=false;this._loading=E;this._renderrows(this.virtualsizeinfo)}this.loadingstate=false},getstate:function(){var p=this.getdatainformation();var h={};h.width=this.width;h.height=this.height;h.pagenum=p.paginginformation.pagenum;h.pagesize=p.paginginformation.pagesize;h.pagesizeoptions=this.pagesizeoptions;h.sortcolumn=p.sortinformation.sortcolumn;h.sortdirection=p.sortinformation.sortdirection;if(this.selectionmode!=null){if(this.getselectedcells){if(this.selectionmode.toString().indexOf("cell")!=-1){var o=this.getselectedcells();var q=new Array();a.each(o,function(){q.push({datafield:this.datafield,rowindex:this.rowindex})});h.selectedcells=q}else{var n=this.getselectedrowindexes();h.selectedrowindexes=n;h.selectedrowindex=this.selectedrowindex}}}var i={};var d=0;if(this.dataview.filters){for(var j=0;j<this.dataview.filters.length;j++){var e=this.dataview.filters[j].datafield;var b=this.dataview.filters[j].filter;var c=b.getfilters();i[e+"operator"]=b.operator;for(var f=0;f<c.length;f++){c[f].datafield=e;if(c[f].type=="datefilter"){if(c[f].value&&c[f].value.toLocaleString){var g=this.getcolumn(c[f].datafield);if(g.cellsformat){var l=this.source.formatDate(c[f].value,g.cellsformat,this.gridlocalization);if(l){i["filtervalue"+d]=l}else{i["filtervalue"+d]=c[f].value.toLocaleString()}}else{i["filtervalue"+d]=c[f].value.toLocaleString()}}else{i["filtervalue"+d]=c[f].value}}else{i["filtervalue"+d]=c[f].value}i["filtercondition"+d]=c[f].condition;i["filteroperator"+d]=c[f].operator;i["filterdatafield"+d]=e;i["filtertype"+d]=c[f].type;d++}}}i.filterscount=d;h.filters=i;h.groups=this.groups;h.columns={};var k=0;if(this.columns.records){a.each(this.columns.records,function(m,r){if(!this.datafield){return true}var s={};s.width=this.width;s.hidden=this.hidden;s.pinned=this.pinned;s.groupable=this.groupable;s.resizable=this.resizable;s.draggable=this.draggable;s.text=this.text;s.align=this.align;s.cellsalign=this.cellsalign;s.index=k++;h.columns[this.datafield]=s})}return h},_stringify:function(e){if(window.JSON&&typeof window.JSON.stringify==="function"){var d=this;var c="";try{c=window.JSON.stringify(e)}catch(b){return d._str("",{"":e})}return c}var c=this._str("",{"":e});return c},_quote:function(b){var d=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,c={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};return'"'+b.replace(d,function(e){var f=c[e];return typeof f==="string"?f:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"'},_stringifyArray:function(e){var b=e.length,c=[],d;for(var d=0;d<b;d++){c.push(this._str(d,e)||"null")}return"["+c.join(",")+"]"},_stringifyObject:function(f){var c=[],d,b;var e=this;for(d in f){if(Object.prototype.hasOwnProperty.call(f,d)){b=e._str(d,f);if(b){c.push(e._quote(d)+":"+b)}}}return"{"+c.join(",")+"}"},_stringifyReference:function(b){switch(Object.prototype.toString.call(b)){case"[object Array]":return this._stringifyArray(b)}return this._stringifyObject(b)},_stringifyPrimitive:function(c,b){switch(b){case"string":return this._quote(c);case"number":return isFinite(c)?c:"null";case"boolean":return c}return"null"},_str:function(c,b){var e=b[c],d=typeof e;if(e&&typeof e==="object"&&typeof e.toJSON==="function"){e=e.toJSON(c);d=typeof e}if(/(number|string|boolean)/.test(d)||(!e&&d==="object")){return this._stringifyPrimitive(e,d)}else{return this._stringifyReference(e)}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxinput.js
new file mode 100644 (file)
index 0000000..482f7de
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxInput","",{});a.extend(a.jqx._jqxInput.prototype,{defineInstance:function(){var c=this;var b={disabled:false,filter:c._filter,sort:c._sort,highlight:c._highlight,dropDownWidth:null,renderer:c._renderer,opened:false,$popup:a("<ul></ul>"),source:[],roundedCorners:true,searchMode:"default",placeHolder:"",width:null,height:null,value:"",rtl:false,displayMember:"",valueMember:"",events:["select","open","close","change"],popupZIndex:20000,items:8,item:'<li><a href:"#"></a></li>',minLength:1,maxLength:null};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){if(this.element.nodeName.toLowerCase()=="textarea"){this.element.style.overflow="auto"}else{if(this.element.nodeName.toLowerCase()=="div"){this.baseHost=this.element;var b=this.host.find("input");var d=false;a.each(b,function(){var f=this.type;if(f==null||f=="text"||f=="textarea"){b=a(this);d=true;return false}});if(!d){throw new Error("jqxInput: Missing Text Input in the Input Group")}if(b.length>0){this.baseHost=a(this.element);this.host=b;this.element=b[0];this.baseHost.addClass(this.toThemeProperty("jqx-widget"));this.baseHost.addClass(this.toThemeProperty("jqx-rc-all"));this.baseHost.addClass(this.toThemeProperty("jqx-input-group"));var c=this.baseHost.children();var e=this;a.each(c,function(f){a(this).addClass(e.toThemeProperty("jqx-input-group-addon"));a(this).removeClass(e.toThemeProperty("jqx-rc-all"));if(f==0){a(this).addClass(e.toThemeProperty("jqx-rc-l"))}if(f==c.length-1){a(this).addClass(e.toThemeProperty("jqx-rc-r"))}if(this!=e.element){a(this).addClass(e.toThemeProperty("jqx-fill-state-normal"))}})}}}this.addHandlers();if(this.rtl){this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.host.attr("role","textbox");a.jqx.aria(this,"aria-autocomplete","both");a.jqx.aria(this,"aria-disabled",this.disabled);a.jqx.aria(this,"aria-readonly",false);a.jqx.aria(this,"aria-multiline",false);if(this.source&&this.source.length){a.jqx.aria(this,"aria-haspopup",true)}if(this.value!=""){this.element.value=this.value}this._oldsource=this.source;this._updateSource()},_updateSource:function(){var d=this;var b=function(f){var e=new Array();e=a.map(f,function(h){if(h==undefined){return null}if(typeof h==="string"||h instanceof String){return{label:h,value:h}}if(typeof h!="string"&&h instanceof String==false){var g="";var i="";if(d.displayMember!=""&&d.displayMember!=undefined){if(h[d.displayMember]){g=h[d.displayMember]}}if(d.valueMember!=""&&d.valueMember!=undefined){i=h[d.valueMember]}if(g==""){g=h.label}if(i==""){i=h.value}return{label:g,value:i}}return h});return e};if(this.source&&this.source._source){this.adapter=this.source;if(this.adapter._source.localdata!=null){this.adapter.unbindBindingUpdate(this.element.id);this.adapter.bindBindingUpdate(this.element.id,function(e){d.source=b(d.adapter.records)})}else{var c={};if(this.adapter._options.data){a.extend(d.adapter._options.data,c)}else{if(this.source._source.data){a.extend(c,this.source._source.data)}this.adapter._options.data=c}this.adapter.unbindDownloadComplete(this.element.id);this.adapter.bindDownloadComplete(this.element.id,function(e){d.source=b(d.adapter.records)})}this.source.dataBind();return}if(!a.isFunction(this.source)){this.source=b(this.source)}},_refreshClasses:function(c){var b=c?"addClass":"removeClass";this.host[b](this.toThemeProperty("jqx-widget-content"));this.host[b](this.toThemeProperty("jqx-input"));this.host[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){this.$popup[b](this.toThemeProperty("jqx-noshadow"))}this.$popup[b](this.toThemeProperty("jqx-input-popup"));this.$popup[b](this.toThemeProperty("jqx-menu"));this.$popup[b](this.toThemeProperty("jqx-menu-vertical"));this.$popup[b](this.toThemeProperty("jqx-menu-dropdown"));this.$popup[b](this.toThemeProperty("jqx-widget"));this.$popup[b](this.toThemeProperty("jqx-widget-content"));if(this.roundedCorners){this.host[b](this.toThemeProperty("jqx-rc-all"));this.$popup[b](this.toThemeProperty("jqx-rc-all"))}if(this.disabled){this.host[b](this.toThemeProperty("jqx-fill-state-disabled"))}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}},selectAll:function(){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},selectLast:function(){var b=this.host;this.selectStart(b[0].value.length)},selectFirst:function(){var b=this.host;this.selectStart(0)},selectStart:function(c){var b=this.host;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(c,c)}else{var d=b[0].createTextRange();d.collapse(true);d.moveEnd("character",c);d.moveStart("character",c);d.select()}},10)},focus:function(){try{this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},refresh:function(){this._refreshClasses(false);this._refreshClasses(true);if(!this.baseHost){if(this.width){this.host.width(this.width)}if(this.height){this.host.height(this.height)}}else{if(this.width){this.baseHost.width(this.width)}if(this.height){this.baseHost.height(this.height);var d=this;var c=0;var b=this.baseHost.height()-2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.baseHost.css("display","inline-block")}a.each(this.baseHost.children(),function(){a(this).css("height","100%");if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(this).css("height",b+"px")}if(this!==d.element){c+=a(this).outerWidth()+2}});this.host.css("width",this.baseHost.width()-c-4+"px");if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.host.css("min-height",b+"px");this.host.css("line-height",b+"px")}}}this.host.attr("disabled",this.disabled);if(this.maxLength){this.host.attr("maxlength",this.maxLength)}if(!this.host.attr("placeholder")){this._refreshPlaceHolder()}},_refreshPlaceHolder:function(){if("placeholder" in this.element){this.host.attr("placeHolder",this.placeHolder)}else{var b=this;if(this.element.value==""){this.element.value=this.placeHolder;this.host.focus(function(){if(b.element.value==b.placeHolder){b.element.value=""}});this.host.blur(function(){if(b.element.value==""||b.element.value==b.placeHolder){b.element.value=b.placeHolder}})}}},destroy:function(){this.removeHandlers();if(this.baseHost){this.baseHost.remove()}else{this.host.remove()}if(this.$popup){this.$popup.remove()}},propertyChangedHandler:function(b,c,e,d){if(c=="placeHolder"){b._refreshPlaceHolder();return}if(c==="theme"){a.jqx.utilities.setTheme(e,d,b.host)}if(c=="opened"){if(d){b.open()}else{b.close()}return}if(c=="source"){b._oldsource=d;b._updateSource()}if(c=="displayMember"||c=="valueMember"){b.source=b._oldsource;b._updateSource()}if(c=="disabled"){a.jqx.aria(b,"aria-disabled",b.disabled)}if(c=="value"){b.element.value=d}b.refresh()},select:function(c,d){var e=this.$popup.find(".jqx-fill-state-pressed").attr("data-value");var b=this.$popup.find(".jqx-fill-state-pressed").attr("data-name");this.element.value=this.renderer(b,this.element.value);this.selectedItem={label:b,value:e};this.host.attr("data-value",e);this.host.attr("data-label",b);this._raiseEvent("0",{item:{label:b,value:e},label:b,value:e});this._raiseEvent("3",{item:{label:b,value:e},label:b,value:e});return this.close()},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object"&&!b.label&&!b.value)){if(this.displayMember!=""&&this.valueMember!=""&&this.selectedItem){if(this.element.value===""){return""}return this.selectedItem}return this.element.value}if(b&&b.label){this.selectedItem={label:b.label,value:b.value};this.host.attr("data-value",b.value);this.host.attr("data-label",b.label);this.value=b;this.element.value=b.label;return this.element.value}this.value=b;this.element.value=b;this.host.attr("data-value",b);this.host.attr("data-label",b);if(b&&b.label){this._raiseEvent("3",{item:{label:b.label,value:b.value},label:b.label,value:b.value})}else{this._raiseEvent("3",{item:{label:b,value:b},label:b,value:b})}return this.element.value},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_renderer:function(b){return b},open:function(){if(a.jqx.isHidden(this.host)){return}var c=a.extend({},this.host.coord(true),{height:this.host[0].offsetHeight});if(this.$popup.parent().length==0){var e=this.element.id+"_popup";this.$popup[0].id=e;a.jqx.aria(this,"aria-owns",e)}this.$popup.appendTo(a(document.body)).css({position:"absolute",zIndex:this.popupZIndex,top:c.top+c.height,left:c.left}).show();var b=0;var d=this.$popup.children();a.each(d,function(){b+=a(this).outerHeight(true)-1});this.$popup.height(b);this.opened=true;this._raiseEvent("1",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",true);return this},close:function(){this.$popup.hide();this.opened=false;this._raiseEvent("2",{popup:this.$popup});a.jqx.aria(this,"aria-expanded",false);return this},suggest:function(c){var b;this.query=this.element.value;if(!this.query||this.query.length<this.minLength){return this.opened?this.close():this}if(a.isFunction(this.source)){b=this.source(this.query,a.proxy(this.load,this))}else{b=this.source}if(b){return this.load(b)}return this},load:function(b){var c=this;b=a.grep(b,function(d){return c.filter(d)});b=this.sort(b);if(!b.length){if(this.opened){return this.close()}else{return this}}return this._render(b.slice(0,this.items)).open()},_filter:function(b){var c=this.query;var d=b;if(b.label!=null){d=b.label}else{if(this.displayMember){d=b[this.displayMember]}}switch(this.searchMode){case"none":break;case"containsignorecase":default:return a.jqx.string.containsIgnoreCase(d,c);case"contains":return a.jqx.string.contains(d,c);case"equals":return a.jqx.string.equals(d,c);case"equalsignorecase":return a.jqx.string.equalsIgnoreCase(d,c);case"startswith":return a.jqx.string.startsWith(d,c);case"startswithignorecase":return a.jqx.string.startsWithIgnoreCase(d,c);case"endswith":return a.jqx.string.endsWith(d,c);case"endswithignorecase":return a.jqx.string.endsWithIgnoreCase(d,c)}},_sort:function(b){var h=[],d=[],f=[],e;for(var c=0;c<b.length;c++){var e=b[c];var g=e;if(e.label){g=e.label}else{if(this.displayMember){g=e[this.displayMember]}}if(g.toString().toLowerCase().indexOf(this.query.toString().toLowerCase())===0){h.push(e)}else{if(g.toString().indexOf(this.query)>=0){d.push(e)}else{if(g.toString().toLowerCase().indexOf(this.query.toString().toLowerCase())>=0){f.push(e)}}}}return h.concat(d,f)},_highlight:function(c){var d=this.query;d=d.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var b=new RegExp("("+d+")","ig");return c.replace(b,function(e,f){return"<b>"+f+"</b>"})},_render:function(b){var c=this;b=a(b).map(function(e,f){var g=f;if(f.value!=undefined){if(f.label!=undefined){e=a(c.item).attr({"data-name":f.label,"data-value":f.value})}else{e=a(c.item).attr({"data-name":f.value,"data-value":f.value})}}else{if(f.label!=undefined){e=a(c.item).attr({"data-value":f.label,"data-name":f.label})}else{if(c.displayMember!=undefined&&c.displayMember!=""){e=a(c.item).attr({"data-name":f[c.displayMember],"data-value":f[c.valueMember]})}else{e=a(c.item).attr({"data-value":f,"data-name":f})}}}if(f.label){g=f.label}else{if(c.displayMember){g=f[c.displayMember]}}e.find("a").html(c.highlight(g));var d="";if(c.rtl){d=" "+c.toThemeProperty("jqx-rtl")}e[0].className=c.toThemeProperty("jqx-item")+" "+c.toThemeProperty("jqx-menu-item")+" "+c.toThemeProperty("jqx-rc-all")+d;return e[0]});b.first().addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.$popup.html(b);if(!this.dropDownWidth){this.$popup.width(this.host.outerWidth()-6)}else{this.$popup.width(this.dropDownWidth)}return this},next:function(c){var d=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=d.next();if(!b.length){b=a(this.$popup.find("li")[0])}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},prev:function(c){var d=this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed")),b=d.prev();if(!b.length){b=this.$popup.find("li").last()}b.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},addHandlers:function(){this.addHandler(this.host,"focus",a.proxy(this.onFocus,this));this.addHandler(this.host,"blur",a.proxy(this.onBlur,this));this.addHandler(this.host,"keypress",a.proxy(this.keypress,this));this.addHandler(this.host,"keyup",a.proxy(this.keyup,this));this.addHandler(this.host,"keydown",a.proxy(this.keydown,this));this.addHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.on){this.$popup.on("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.bind("mouseenter","li",a.proxy(this.mouseenter,this))}},removeHandlers:function(){this.removeHandler(this.host,"focus",a.proxy(this.onFocus,this));this.removeHandler(this.host,"blur",a.proxy(this.onBlur,this));this.removeHandler(this.host,"keypress",a.proxy(this.keypress,this));this.removeHandler(this.host,"keyup",a.proxy(this.keyup,this));this.removeHandler(this.host,"keydown",a.proxy(this.keydown,this));this.removeHandler(this.$popup,"mousedown",a.proxy(this.click,this));if(this.host.off){this.$popup.off("mouseenter","li",a.proxy(this.mouseenter,this))}else{this.$popup.unbind("mouseenter","li",a.proxy(this.mouseenter,this))}},move:function(b){if(!this.opened){return}switch(b.keyCode){case 9:case 13:case 27:b.preventDefault();break;case 38:if(!b.shiftKey){b.preventDefault();this.prev()}break;case 40:if(!b.shiftKey){b.preventDefault();this.next()}break}b.stopPropagation()},keydown:function(b){this.suppressKeyPressRepeat=~a.inArray(b.keyCode,[40,38,9,13,27]);this.move(b)},keypress:function(b){if(this.suppressKeyPressRepeat){return}this.move(b)},keyup:function(c){switch(c.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!this.opened){return}this.select(c,this);break;case 27:if(!this.opened){return}this.close();break;default:var b=this;if(this.timer){clearTimeout(this.timer)}this.timer=setTimeout(function(){b.suggest()},300)}c.stopPropagation();c.preventDefault()},clear:function(){this.host.val("")},onBlur:function(c){var b=this;setTimeout(function(){b.close()},150);b.host.removeClass(b.toThemeProperty("jqx-fill-state-focus"));this.value=this.host.val()},onFocus:function(c){var b=this;b.host.addClass(b.toThemeProperty("jqx-fill-state-focus"))},click:function(b){b.stopPropagation();b.preventDefault();this.select(b,this)},mouseenter:function(b){this.$popup.find(".jqx-fill-state-pressed").removeClass(this.toThemeProperty("jqx-fill-state-pressed"));a(b.currentTarget).addClass(this.toThemeProperty("jqx-fill-state-pressed"))}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxknockout.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxknockout.js
new file mode 100644 (file)
index 0000000..428f060
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+try{(function(j,c){c.jqwidgets=c.jqwidgets||{};c.jqwidgets.knockout=function(D){var E=this;var F={},C=D.name;F.init=function(K,L,H,J){var G=c.utils.unwrapObservable(L());var N=c.toJS(G);if(D.reset){D.reset()}if(j.data(K)[C]==undefined){var I=[];j(K)[C]();widget=j.data(K)[C].instance;j.each(D,function(P,Q){if(widget.hasOwnProperty(P)&&N.hasOwnProperty(P)){if(!widget.koupdating){widget.koupdatingFromObservable=true;try{var R=false;if(D.serialize){if(D.serialize(widget,P)){if(c.toJSON(N[P])!=c.toJSON(D.serialize(widget,P))){D.setProperty(widget,P,widget[P],N[P])}R=true}}if(!R){if(c.toJSON(N[P])!=c.toJSON(widget[P])){D.setProperty(widget,P,widget[P],N[P])}}}catch(O){D.setProperty(widget,P,widget[P],N[P])}I[P]=P;widget.koupdatingFromObservable=false}}});var M={};j.each(N,function(O,P){if(I[O]==undefined){M[O]=N[O]}});widget.host[C](M)}widget=j.data(K)[C].instance;widget.koupdatingFromObservable=false;widget.koupdating=false;if(D.events){j.each(D.events,function(){var O=this;j(K).on(O+"."+K.id,function(Q){widget=j.data(K)[C].instance;if(!widget.koupdatingFromObservable){var P=widget;P.koupdating=true;var S=L();var R=D.getProperty(widget,Q,O,G);if(R!=undefined){if(S.hasOwnProperty(R.name)&&j.isFunction(S[R.name])){if(c.isObservable(S[R.name])&&S[R.name].push){L(R.value)}else{S[R.name](R.value)}}else{if(S[R.name]){L(R.value)}}}P.koupdating=false}})})}};F.update=function(K,L,I,J,H){var G=c.utils.unwrapObservable(L());var M=c.toJS(G);widget=j.data(K)[C].instance;if(widget.koupdating){return}j.each(D,function(N,O){if(widget.hasOwnProperty(N)&&M.hasOwnProperty(N)){if(!widget.koupdating){widget.koupdatingFromObservable=true;var P=false;if(D.serialize){if(D.serialize(widget,N)){if(c.toJSON(M[N])!=c.toJSON(D.serialize(widget,N))){D.setProperty(widget,N,widget[N],M[N])}P=true}}if(!P){if(c.toJSON(M[N])!=c.toJSON(widget[N])){D.setProperty(widget,N,widget[N],M[N])}}widget.koupdatingFromObservable=false}}})};c.bindingHandlers[D.name]=F};var y=new c.jqwidgets.knockout({name:"jqxGauge",disabled:false,min:0,max:220,value:0,reset:function(){this.value=0;this.max=220;this.min=0;this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxGauge({disabled:F})}if(D=="min"){C.host.jqxGauge({min:F})}if(D=="max"){C.host.jqxGauge({max:F})}if(D=="value"){C.host.jqxGauge({value:F})}}});var e=new c.jqwidgets.knockout({name:"jqxLinearGauge",disabled:false,min:0,max:220,value:0,reset:function(){this.value=0;this.max=220;this.min=0;this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxLinearGauge({disabled:F})}if(D=="min"){C.host.jqxLinearGauge({min:F})}if(D=="max"){C.host.jqxLinearGauge({max:F})}if(D=="value"){C.host.jqxLinearGauge({value:F})}}});var x=new c.jqwidgets.knockout({name:"jqxSlider",disabled:false,min:0,max:10,value:0,reset:function(){this.value=0;this.max=10;this.min=0;this.disabled=false},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"value",value:E.args.value}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxSlider({disabled:F})}if(D=="min"){C.host.jqxSlider({min:parseFloat(F)})}if(D=="max"){C.host.jqxSlider({max:parseFloat(F)})}if(D=="value"){C.host.jqxSlider({value:parseFloat(F)})}}});var q=new c.jqwidgets.knockout({name:"jqxScrollBar",disabled:false,min:0,max:10,value:0,reset:function(){this.value=0;this.max=10;this.min=0;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:parseInt(E.currentValue)}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxScrollBar({disabled:F})}if(D=="min"){C.host.jqxScrollBar({min:parseFloat(F)})}if(D=="max"){C.host.jqxScrollBar({max:parseFloat(F)})}if(D=="value"){C.host.jqxScrollBar({value:parseFloat(F)})}}});var a=new c.jqwidgets.knockout({name:"jqxProgressBar",disabled:false,value:0,reset:function(){this.value=0;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:parseInt(E.currentValue)}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxProgressBar({disabled:F})}if(D=="value"){C.host.jqxProgressBar({value:parseFloat(F)})}}});var f=new c.jqwidgets.knockout({name:"jqxButton",disabled:false,reset:function(){this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxButton({disabled:F})}}});var i=new c.jqwidgets.knockout({name:"jqxCheckBox",checked:false,disabled:false,reset:function(){this.checked=false;this.disabled=false},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"checked",value:E.args.checked}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxCheckBox({disabled:F})}if(D=="checked"){if(E!=F){C.host.jqxCheckBox({checked:F})}}}});var z=new c.jqwidgets.knockout({name:"jqxRadioButton",checked:false,disabled:false,reset:function(){this.checked=false;this.disabled=false},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"checked",value:E.args.checked}}},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxRadioButton({disabled:F})}if(D=="checked"){if(E!=F){C.host.jqxRadioButton({checked:F})}}}});var p=new c.jqwidgets.knockout({name:"jqxDateTimeInput",value:null,disabled:false,reset:function(){this.value=null;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:E.args.date}}},setProperty:function(C,D,E,F){if(D=="value"){C.setDate(F)}if(D=="disabled"){C.host.jqxDateTimeInput({disabled:F})}}});var B=new c.jqwidgets.knockout({name:"jqxCalendar",value:null,disabled:false,reset:function(){this.value=null;this.disabled=false},events:["valueChanged"],getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:E.args.date}}},setProperty:function(C,D,E,F){if(D=="value"){C.setDate(F)}if(D=="disabled"){C.host.jqxCalendar({disabled:F})}}});var s=new c.jqwidgets.knockout({name:"jqxNumberInput",value:null,events:["valueChanged"],disabled:false,reset:function(){this.value=null;this.disabled=false},getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:D.val()}}},setProperty:function(C,D,E,F){if(D=="value"){C.host.jqxNumberInput("val",F)}if(D=="disabled"){C.host.jqxNumberInput({disabled:F})}}});var l=new c.jqwidgets.knockout({name:"jqxMaskedInput",value:null,events:["valueChanged"],disabled:false,reset:function(){this.value=null;this.disabled=false},getProperty:function(D,E,C){if(C=="valueChanged"){return{name:"value",value:D.val()}}},setProperty:function(C,D,E,F){if(D=="value"){C.host.jqxMaskedInput("val",F)}if(D=="disabled"){C.host.jqxMaskedInput({disabled:F})}}});var d=new c.jqwidgets.knockout({name:"jqxListBox",source:null,disabled:false,selectedIndex:-1,reset:function(){this.disabled=false;this.selectedIndex=-1;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){this.selectedIndex=D.selectedIndex;return{name:"selectedIndex",value:D.selectedIndex}}},setProperty:function(C,D,F,G){if(D=="source"){C.source=G;C.refresh()}if(D=="disabled"){C.disabled=G;C._renderItems()}if(D=="selectedIndex"){var E=C.disabled;C.disabled=false;C.selectIndex(G);C.disabled=E;if(E){C._renderItems()}}}});var t=new c.jqwidgets.knockout({name:"jqxDropDownList",source:null,disabled:false,selectedIndex:-1,reset:function(){this.disabled=false;this.selectedIndex=-1;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"selectedIndex",value:D.selectedIndex}}},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxDropDownList({source:F})}if(D=="disabled"){C.host.jqxDropDownList({disabled:F})}if(D=="selectedIndex"){C.host.jqxDropDownList({selectedIndex:F})}}});var k=new c.jqwidgets.knockout({name:"jqxComboBox",source:null,disabled:false,selectedIndex:-1,reset:function(){this.disabled=false;this.selectedIndex=-1;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"selectedIndex",value:D.selectedIndex}}},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxComboBox({source:F})}if(D=="disabled"){C.host.jqxComboBox({disabled:F})}if(D=="selectedIndex"){C.host.jqxComboBox({selectedIndex:F})}}});var v=new c.jqwidgets.knockout({name:"jqxInput",source:null,disabled:false,value:"",reset:function(){this.disabled=false;this.source=null},events:["change"],getProperty:function(D,E,C){if(C=="change"){return{name:"value",value:D.host.val()}}},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxInput({source:F})}if(D=="disabled"){C.host.jqxInput({disabled:F})}if(D=="value"){C.host.jqxInput({value:F})}}});var A=new c.jqwidgets.knockout({name:"jqxTree",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxTree({source:F})}if(D=="disabled"){C.host.jqxTree({disabled:F})}}});var g=new c.jqwidgets.knockout({name:"jqxTabs",disabled:false,reset:function(){this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxTabs({disabled:F})}}});var r=new c.jqwidgets.knockout({name:"jqxWindow",disabled:false,content:"",title:"",reset:function(){this.disabled=false;this.title="";this.content=""},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){C.host.jqxWindow({disabled:F})}else{if(D=="content"){C.host.jqxWindow("setContent",F)}else{if(D=="title"){C.host.jqxWindow({title:F})}}}}});var u=new c.jqwidgets.knockout({name:"jqxNavigationBar",disabled:false,reset:function(){this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="disabled"){if(F!=this.disabled){this.disabled=F;C.host.jqxNavigationBar({disabled:F})}}}});var o=new c.jqwidgets.knockout({name:"jqxMenu",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){C.host.jqxMenu({source:F})}if(D=="disabled"){C.host.jqxMenu({disabled:F})}}});var w=new c.jqwidgets.knockout({name:"jqxChart",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){this.source=F;C.host.jqxChart({source:F})}if(D=="disabled"){this.disabled=F;C.host.jqxChart({disabled:F})}}});var b=new c.jqwidgets.knockout({name:"jqxDataTable",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){this.source=F;C.host.jqxDataTable({source:F})}if(D=="disabled"){this.disabled=F;C.host.jqxDataTable({disabled:F})}}});var n=new c.jqwidgets.knockout({name:"jqxTreeGrid",source:null,disabled:false,reset:function(){this.disabled=false;this.source=null},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="source"){this.source=F;C.host.jqxTreeGrid({source:F})}if(D=="disabled"){this.disabled=F;C.host.jqxTreeGrid({disabled:F})}}});var m=new c.jqwidgets.knockout({name:"jqxGrid",source:null,disabled:false,selectedRowIndex:-1,reset:function(){this.disabled=false;this.source=null;this.selectedRowIndex=-1},serialize:function(D,C){if(C=="source"){if(D.source&&D.source._source){return D.source.records}}return false},events:["cellvaluechanged","cellselect","rowselect"],getProperty:function(G,E,I,H){if(I=="cellvaluechanged"){var F=G.host.jqxGrid("getrowid",E.args.rowindex);var M=G.host.jqxGrid("getrowdata",F);var D=H.source;if(D!=undefined){var L={};var C={};var K=false;var J=false;if(D()[F]){j.each(D()[F],function(N,O){L[N]=O;C[N]="";if(c.isObservable(O)&&!c.isComputed(O)){K=true;O(M[N])}if(c.isObservable(O)&&c.isComputed(O)){J=true}})}if(!K){L=M;if(D.replace){D.replace(D()[F],C);D.replace(D()[F],L)}}else{L=M;if(D.replace){D.replace(D()[F],L)}}if(J){G.host.jqxGrid("updaterow",F,c.toJS(D)[F])}return{name:"source",value:D}}}},setProperty:function(F,M,L,D){if(M=="selectedRowIndex"){F.host.jqxGrid("selectrow",D)}if(M=="source"){if(this.source==null||D==null){if(this.source!=D){this.source=D;var C={localdata:D,datatype:"local"};var K=new j.jqx.dataAdapter(C);F.host.jqxGrid({source:K})}}else{var C={localdata:D,datatype:"local"};var K=new j.jqx.dataAdapter(C);K.dataBind();if(!L.records||!K.records){return}var O=Math.max(L.records.length,K.records.length);var J=Math.abs(L.records.length-K.records.length);if(J==0){if(O>10){F.host.jqxGrid({source:K});return}}if(J>1){F.host.jqxGrid("beginupdate")}var N=new Array();for(var H=0;H<O;H++){var I=K.records[H];if(I==undefined){var E=F.host.jqxGrid("getrowid",H);N.push(E)}else{var G=L.records[H]!=undefined;if(G){if(c.toJSON(I)!=c.toJSON(L.records[H])){if(L.records[H].uid!=undefined){I.uid=L.records[H].uid;if(c.toJSON(I)==c.toJSON(L.records[H])){continue}}var E=F.host.jqxGrid("getrowid",H);F.host.jqxGrid("updaterow",E,I)}}else{F.host.jqxGrid("addrow",null,I)}}}if(N.length>0){F.host.jqxGrid("deleterow",N)}if(J>1){F.host.jqxGrid("endupdate")}}}if(M=="disabled"){F.host.jqxGrid({disabled:D})}}});var h=new c.jqwidgets.knockout({name:"jqxBulletChart",pointer:{value:0},target:{value:0},disabled:false,reset:function(){this.pointer.value=0;this.target.value=0;this.disabled=false},getProperty:function(D,E,C){},setProperty:function(C,D,E,F){if(D=="pointer"){C.host.jqxBulletChart({pointer:F})}if(D=="target"){C.host.jqxBulletChart({target:F})}if(D=="disabled"){C.host.jqxBulletChart({disabled:F})}}})}(jqxBaseFramework,ko))}catch(error){var er=error};
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxlayout.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxlayout.js
new file mode 100644 (file)
index 0000000..288aaec
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxLayout","",{});a.extend(a.jqx._jqxLayout.prototype,{defineInstance:function(){var b={width:null,height:null,minGroupWidth:100,minGroupHeight:100,layout:[],resizable:true,contextMenu:false,rtl:false,events:["create","resize","pin","unpin"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._originalElement=b.host.clone();b._coordinates=[];b._ie7=a.jqx.browser.msie&&a.jqx.browser.version<8;b._touchDevice=a.jqx.mobile.isTouchDevice();b.render()},render:function(){var e=this,g,b,h;e._tabbedGroupsList=[];if(e.dockingLayout){e._overlayGroups=[];if(e._isInitialized===true){g=e.dockingLayout._overlay.detach();b=e.dockingLayout._dropOverlay.detach();h=e.dockingLayout._edgeOverlays.detach()}}if(e._isInitialized===true){e._detachContent(e.layout[0].items)}e.host.empty();if(!e.host.jqxRibbon){throw new Error("jqxLayout: Missing reference to jqxribbon.js.")}e._setSize();e._addClasses();e._removeHandlers();if(!e._isInitialized){if(e.layout[0].type!=="layoutGroup"){throw new Error('jqxLayout: Invalid layout structure. The first member of the layout array has to be with type: "layoutGroup".')}var f=e.layout[0].items[0].width,d=e.layout[0].items[0].height;if(!(f&&typeof f==="string"&&f.charAt(f.length-1)==="%"||d&&typeof d==="string"&&d.charAt(d.length-1)==="%")){e.layout[0].initialPxWidth=e.host.width();e.layout[0].initialPxHeight=e.host.height();e._pxToPercent(e.layout[0],true)}}e._createLayout(e.layout,e.host,{type:"host"},0);if(e.resizable===true){e._addResizeFeedbacks();e._getGroupCoordinates();e._addHandlers()}if(e.contextMenu===true){e._initMenu()}if(!e._isInitialized){e._isInitialized=true;e._raiseEvent("0");if(e._ie7){a.jqx.utilities.resize(e.host,function(){e.render()})}}else{if(e.dockingLayout){if(!e._ie7){e.host.append(g,b,h)}else{a("body").append(g,b,h)}e.dockingLayout._trackFloatGroups()}}for(var c=0;c<e._tabbedGroupsList.length;c++){e._validateTabbedGroup(e._tabbedGroupsList[c])}},refresh:function(b){if(b!==true){this.render()}},destroy:function(){var b=this;b._mouseupHandler=null;b._docUP=null;b._removeHandlers();if(b.contextMenu===true){b._menu.jqxMenu("destroy")}b.host.remove()},saveLayout:function(){var d=this,b=[];for(var c=0;c<d.layout.length;c++){d._copyItem(d.layout[c],b)}return b},loadLayout:function(c){if(c!==undefined&&a.isEmptyObject(c)===false){var b=this;b.layout=c;b._isInitialized=false;b.render()}},propertyChangedHandler:function(b,d,g,f){if(d!=="layout"){if(f!==g){switch(d){case"width":case"height":b.host.css(d,f);break;case"theme":a.jqx.utilities.setTheme(g,f,b.host);if(b._menuInitialized){a.jqx.utilities.setTheme(g,f,b._menu)}if(b.dockingLayout){if(a("."+b.element.id+"FloatGroup").length>0){a("."+b.element.id+"FloatGroup").jqxWindow({theme:f})}}break;case"layout":case"resizable":b.render();break;case"contextMenu":if(f===true&&!b._menuInitialized){b.render()}break;case"rtl":var c=a("."+b.element.id+"FloatGroup");if(c.length>0){c.jqxWindow({rtl:f})}var e=b.host.add(c);if(f===true){e.find(".jqx-layout-pseudo-window-title-ltr").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-title-ltr")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-title-rtl"));e.find(".jqx-layout-pseudo-window-pin-background-ltr").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-ltr")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-rtl"));e.find(".jqx-layout-pseudo-window-close-background-ltr").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-ltr")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-rtl"));e.find(".jqx-layout-ribbon-header").removeClass(b.toThemeProperty("jqx-layout-ribbon-header-ltr")).addClass(b.toThemeProperty("jqx-layout-ribbon-header-rtl"))}else{e.find(".jqx-layout-pseudo-window-title-rtl").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-title-rtl")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-title-ltr"));e.find(".jqx-layout-pseudo-window-pin-background-rtl").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-rtl")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-pin-background-ltr"));e.find(".jqx-layout-pseudo-window-close-background-rtl").removeClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-rtl")).addClass(b.toThemeProperty("jqx-layout-pseudo-window-close-background-ltr"));e.find(".jqx-layout-ribbon-header").removeClass(b.toThemeProperty("jqx-layout-ribbon-header-rtl")).addClass(b.toThemeProperty("jqx-layout-ribbon-header-ltr"))}e.find(".jqx-ribbon").jqxRibbon({rtl:f});break}}}else{b.render()}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_setSize:function(){var b=this;b.host.css({width:b.width,height:b.height})},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-layout jqx-widget jqx-widget-content jqx-rc-all"))},_getPercentage:function(c,b,d){return(c/b.widget[d]())*100},_addHandlers:function(){var g=this,b=g.element.id,d,j;g._resize={allowed:false};g._clickedToResize=false;function i(l,o){for(var m=0;m<g._coordinates.length;m++){var n=g._coordinates[m];if(l>=n.x.from&&l<=n.x.to&&o>=n.y.from&&o<=n.y.to){if(n.orientation==="horizontal"){g.element.style.cursor="col-resize"}else{g.element.style.cursor="row-resize"}g._resize={allowed:true,widget:n.widget,side:n.side};break}else{g.element.style.cursor="default";g._resize.allowed=false}}}function k(l){if(g._resize.allowed===true){var r=g._resize.widget,w=r.current.parent,x=g._percentToPx("width",r.current.minWidth,w),t=g._percentToPx("height",r.current.minHeight,w),n=w.items[r.current.index-1],q=w.items[r.current.index+1];g._resizeStartPosition={x:l.pageX,y:l.pageY};if(!x){x=g._percentToPx("width",g.minGroupWidth,w)}if(!t){t=g._percentToPx("height",g.minGroupHeight,w)}switch(g._resize.side){case"left":var u=g._percentToPx("width",n.minWidth,w);if(!u){u=g._percentToPx("width",g.minGroupWidth,w)}d=n.widget.offset().left+u;j=r.offset().left+r.width()-x;break;case"right":var m=g._percentToPx("width",q.minWidth,w);if(!m){m=g._percentToPx("width",g.minGroupWidth,w)}d=r.offset().left+x;j=q.widget.offset().left+q.widget.width()-m;break;case"top":var v=g._percentToPx("height",n.minHeight,w);if(!v){v=g._percentToPx("height",g.minGroupHeight,w)}d=n.widget.offset().top+v;j=r.offset().top+r.height()-t;break;case"bottom":var o=g._percentToPx("height",q.minHeight,w);if(!o){o=g._percentToPx("height",g.minGroupHeight,w)}d=r.offset().top+t;j=q.widget.offset().top+q.widget.height()-o;break}var p=function(z,A){A=(typeof A==="undefined")?{top:0,left:0}:A;if(z!==top){var y=z.frameElement.getBoundingClientRect();A.left+=y.left;A.top+=y.top;A=p(z.parent,A)}return A},s;g._clickedToResize=true;g._overlay[0].style.display="block";if(g._resize.side==="left"||g._resize.side==="right"){g._verticalFeedback[0].style.height=g._resize.widget.height()+"px";s=g._ie7?p(window).top:0;g._verticalFeedback.offset({top:g._resize.widget.offset().top-g.host.offset().top+a(window).scrollTop()-s})}else{g._horizontalFeedback[0].style.width=g._resize.widget.width()+"px";s=g._ie7?p(window).left:0;g._horizontalFeedback.offset({left:g._resize.widget.offset().left-g.host.offset().left+a(window).scrollLeft()+1-s})}}}function c(n,o,t,r,m){var p=m.charAt(0).toUpperCase()+m.slice(1),s=o.parent,l,q;if(n){l=g._percentToPx(m,t["min"+p],s);q=parseFloat(t[m])/100*o.parent.widget[m]()-r}else{l=g._percentToPx(m,o["min"+p],s);q=parseFloat(o[m])/100*o.parent.widget[m]()-r}if(!l){l=g._percentToPx(m,g["minGroup"+p],s)}if(q<l){return l}else{return q}}function e(l){if(g._clickedToResize===true){var r=function(){g._clickedToResize=false;g._overlay[0].style.display="none";g._verticalFeedback[0].style.display="none";g._horizontalFeedback[0].style.display="none"},p=l.pageX,o=l.pageY,u=g._resize.widget.current,x=g._resize.widget.offset(),t=x.left,m=x.top,y,v,q,w,s,n;if(l.pageX===g._resizeStartPosition.x&&l.pageY===g._resizeStartPosition.y){r();return}if(g._resize.side==="left"||g._resize.side==="right"){n=u.width;if(g._resize.side==="left"){y=u.parent.items[u.index-1];v=t;q=p<v}else{y=u.parent.items[u.index+1];v=t+u.widget.width();q=p>=v}w=Math.abs(p-v);if(w===0){r();return}if(q){s=g._getPercentage(c(true,u,y,w,"width"),u.parent,"width");w=Math.abs(s-parseFloat(y.width));y.width=s+"%";u.width=parseFloat(u.width)+w+"%"}else{s=g._getPercentage(c(false,u,y,w,"width"),u.parent,"width");w=Math.abs(s-parseFloat(u.width));u.width=s+"%";y.width=parseFloat(y.width)+w+"%"}if(u.width===n){r();return}}else{n=u.height;if(g._resize.side==="top"){y=u.parent.items[u.index-1];v=m;q=o<v}else{y=u.parent.items[u.index+1];v=m+u.widget.height();q=o>=v}w=Math.abs(o-v);if(w===0){r();return}if(q){s=g._getPercentage(c(true,u,y,w,"height"),u.parent,"height");w=Math.abs(s-parseFloat(y.height));y.height=s+"%";u.height=parseFloat(u.height)+w+"%"}else{s=g._getPercentage(c(false,u,y,w,"height"),u.parent,"height");w=Math.abs(s-parseFloat(u.height));u.height=s+"%";y.height=parseFloat(y.height)+w+"%"}if(u.height===n){r();return}}r();g.render();g._raiseEvent("1",{item:u})}}function f(m){if(g._clickedToResize===true){var l=m.pageX,n=m.pageY;if(g._resize.side==="left"||g._resize.side==="right"){g._verticalFeedback[0].style.display="block";if(l<d){l=d;g._verticalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{if(l>j){l=j;g._verticalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{g._verticalFeedback.removeClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}}g._verticalFeedback.offset({left:l-2})}else{g._horizontalFeedback[0].style.display="block";if(n<d){n=d;g._horizontalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{if(n>j){n=j;g._horizontalFeedback.addClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}else{g._horizontalFeedback.removeClass(g.toThemeProperty("jqx-layout-resize-feedback-warning"))}}g._horizontalFeedback.offset({top:n-2});g._horizontalFeedback.offset({left:g._resize.widget.offset().left+a(window).scrollLeft()+1})}}}g._docUP=e;if(!g._touchDevice){g.addHandler(g.host,"mousemove.jqxLayout"+b,function(m){if(g._clickedToResize===false&&(!g.dockingLayout||g.dockingLayout&&g.dockingLayout._windowDragged!==true)){var l=m.pageX,n=m.pageY;i(l,n)}});g.addHandler(a(document),"mousemove.jqxLayout"+b,function(l){f(l)});g.addHandler(g.host,"mousedown.jqxLayout"+b,function(l){k(l)});g.addHandler(a(document),"mouseup.jqxLayout"+b,function(l){e(l)})}else{g.addHandler(a(document),"touchstart.jqxDockingLayout"+b,function(m){var l=m.originalEvent.touches[0];i(l.pageX,l.pageY);k(l)});g.addHandler(a(document),"touchmove.jqxDockingLayout"+b,function(m){var l=m.originalEvent.touches[0];f(l)});g.addHandler(a(document),"touchend.jqxDockingLayout"+b,function(m){var l=m.originalEvent.changedTouches[0];e(l)})}g.addHandler(a(document),"selectstart.jqxLayout"+b,function(){if(g._clickedToResize===true){return false}});if(g.dockingLayout){try{if(document.referrer!=""||window.frameElement){if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g._mouseupHandler,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g._mouseupHandler)}}}}catch(h){}}},_removeHandlers:function(){var c=this,d=c.element.id;if(!c._touchDevice){c.removeHandler(c.host,"mousemove.jqxLayout"+d);c.removeHandler(a(document),"mousemove.jqxLayout"+d);c.removeHandler(c.host,"mousedown.jqxLayout"+d);c.removeHandler(a(document),"mouseup.jqxLayout"+d)}else{c.removeHandler(a(document),"touchstart.jqxLayout"+d);c.removeHandler(a(document),"touchmove.jqxLayout"+d);c.removeHandler(a(document),"touchend.jqxLayout"+d)}c.removeHandler(a(document),"selectstart.jqxLayout"+d);if(c.dockingLayout){try{if(document.referrer!=""||window.frameElement){if(window.top.document.removeEventListener){window.top.document.removeEventListener("mouseup",c._mouseupHandler,false)}else{if(window.top.document.detachEvent){window.top.document.detachEvent("onmouseup",c._mouseupHandler)}}}}catch(b){}}a("."+d+"FloatGroup").off("close")},_createLayout:function(o,e,k){function m(w){var v=e.children(),x=v.eq(0),i=v.eq(1);x.text(w.title);c=f._originalElement.find('[data-container="'+w.contentContainer+'"]').html();if(c===undefined){c=""}i.html(c)}var f=this,d=k.type;for(var s=0;s<o.length;s++){var p=o[s],b,c,q,l;switch(p.type){case"layoutGroup":b=a("<div></div>");b.addClass(f.toThemeProperty("jqx-layout-group-default"));if(p.orientation==="horizontal"){b.addClass(f.toThemeProperty("jqx-layout-group-default-horizontal"))}e.append(b);if(d==="host"){b.addClass(f.toThemeProperty("jqx-layout-group-root"))}else{var r=k.orientation==="horizontal"?p.width:"100%";var n=k.orientation==="horizontal"?"100%":p.height;b.css({width:r,height:n})}break;case"tabbedGroup":if(d!=="floatGroup"){b=a('<div class="'+f.toThemeProperty("jqx-layout-group-tabbed")+'"><div class="jqx-layout-window-header"><div></div></div><div><div class="jqx-layout-ribbon"><ul class="jqx-layout-ribbon-header jqx-layout-ribbon-header-'+(f.rtl?"rtl":"ltr")+'"></ul><div class="jqx-layout-ribbon-content"></div></div></div></div>');e.append(b);f._addRightClickHandler(b.find(".jqx-layout-window-header"),b)}else{b=a('<div class="jqx-layout-ribbon"><ul class="jqx-layout-ribbon-header jqx-layout-ribbon-header-'+(f.rtl?"rtl":"ltr")+'"></ul><div class="jqx-layout-ribbon-content"></div></div>');e.children().eq(1).append(b)}break;case"documentGroup":case"autoHideGroup":b=a("<div><ul></ul><div></div></div>");e.append(b);if(p.type==="documentGroup"){b.find("ul").addClass("jqx-layout-ribbon-header jqx-layout-ribbon-header-"+(f.rtl?"rtl":"ltr"))}if(f._ie7&&p.type==="autoHideGroup"){b.css("z-index",9999-500*s)}break;case"floatGroup":if(!f._isInitialized){if(!f.dockingLayout){throw new Error("Float groups are only available in the jqxDockingLayout widget. Initialize a jqxDockingLayout (requires jqxdockinglayout.js) instead of a jqxLayout.")}b=a('<div class="'+f.toThemeProperty("jqx-docking-layout-group-floating")+'"><div></div><div></div></div>');e.append(b)}else{return}break;case"layoutPanel":b={};if(d==="tabbedGroup"){var t=e.find(".jqx-layout-window-header").text();if(t===""){e.find(".jqx-layout-window-header div:eq(0)").text(p.title)}l=a("<li>"+p.title+"</li>");e.find(".jqx-layout-ribbon-header").append(l);if(!f._isInitialized){c=f._originalElement.find('[data-container="'+p.contentContainer+'"]').html();if(c===undefined){c=""}}else{c=p.detachedContent}q=a("<div></div>");q.append(c);e.find(".jqx-layout-ribbon-content").append(q);f._addRightClickHandler(l,b)}else{if(d==="autoHideGroup"){a(e.children()[0]).append("<li>"+p.title+"</li>");if(!f._isInitialized){c=f._originalElement.find('[data-container="'+p.contentContainer+'"]').html();if(c===undefined){c=""}}else{c=p.detachedContent}q=a("<div></div>");q.append(c);var h;if(k.alignment==="left"||k.alignment==="right"){h="jqx-layout-group-auto-hide-content-vertical"}else{h="jqx-layout-group-auto-hide-content-horizontal"}q.addClass(f.toThemeProperty(h));var g=a('<div><div class="jqx-layout-window"><div><div>'+p.title+"</div></div></div></div>");g.children().append(q);a(e.children()[1]).append(g);f._addRightClickHandler(g.find(".jqx-layout-window"),b)}else{if(d==="floatGroup"){m(p)}}}break;case"documentPanel":b={};if(d==="floatGroup"){m(p)}else{l=a("<li>"+p.title+"</li>");a(e.children()[0]).append(l);if(!f._isInitialized){c=f._originalElement.find('[data-container="'+p.contentContainer+'"]').html();if(c===undefined){c=""}}else{c=p.detachedContent}q=a("<div></div>");q.append(c);a(e.children()[1]).append(q);f._addRightClickHandler(l,b)}break}if(p.items&&p.items.length>0){var j=b;f._createLayout(p.items,j,p)}f._createWidget(k,e,p,b,s);if(f.dockingLayout&&(p.type==="documentGroup"||p.type==="tabbedGroup"||(p.type==="layoutGroup"&&p.items.length===0))){var u={element:b,width:b.width(),height:b.height(),offset:b.offset(),settings:p};f._overlayGroups.push(u);if(p.parent.type==="floatGroup"){p.parent._overlayGroup=u}}}},_createWidget:function(m,k,i,e,g){var f=this,b=m.orientation==="horizontal"?i.width:"100%",l=m.orientation==="horizontal"?"100%":i.height,d=false;i.parent=m;i.widget=e;i.index=g;if(i.widget){i.widget.current=i}function h(){var o=0;for(var n=0;n<i.items.length;n++){if(i.items[n].selected===true){o=n;break}}i.items[o].selected=true;return o}switch(i.type){case"tabbedGroup":var j,c;if(m.type!=="floatGroup"){j=f._initWindowPanel(e,b,l,i.type);c=e.find(".jqx-layout-ribbon");f._tabbedGroupsList.push(i)}else{c=e}if(f.dockingLayout&&(i.allowDrag!==false)){d=true}c.jqxRibbon({theme:f.theme,width:"100%",height:"100%",position:"bottom",selectionMode:"click",animationType:"none",rtl:f.rtl,_roundedCorners:false,initContent:function(n){var o=i.items[n];if(!o.initialized&&o.initContent){o.initContent(c.find(".jqx-ribbon-content-section").eq(n));o.initialized=true}},_removeByDrag:d,reorder:true});c.on("select",function(p){p.stopPropagation();if(p.target.id===c[0].id){p.stopPropagation();var n=p.args.selectedIndex;i.items[n].selected=true;var o=a(a(c.children()[1]).children()[n]).text();if(m.type!=="floatGroup"){j.html(o)}else{m.widget.find(".jqx-window-header").children().eq(0).html(o)}}});c.on("unselect",function(n){n.stopPropagation();if(n.target.id===c[0].id){i.items[n.args.unselectedIndex].selected=false}});c.on("reorder",function(o){f._swapPanelsInLayout(i.items,o.args.newIndex,o.args.oldIndex);var n=o.args.newIndex;setTimeout(function(){if(i.items[n]){f._addRightClickHandler(a(c.find(".jqx-ribbon-item")[n]),i.items[n].widget)}},200)});if(d){c.on("_removeByDrag",function(n){f.dockingLayout._removeByDragHandler(n,i,c);if(i.parent.type==="floatGroup"&&i.items.length===1){c.jqxRibbon({_removeByDrag:false})}});f.dockingLayout._addTabbedGroupHandlers(i,e)}c.jqxRibbon("selectAt",h());break;case"documentGroup":if(f.dockingLayout&&(i.allowDrag!==false)){d=true}e.jqxRibbon({theme:f.theme,width:b,height:l,_roundedCorners:false,position:"top",selectedIndex:h(),selectionMode:"click",animationType:"none",rtl:f.rtl,initContent:function(n){var o=i.items[n];if(!o.initialized&&o.initContent){o.initContent(e.find(".jqx-ribbon-content-section").eq(n));o.initialized=true}},_removeByDrag:d,reorder:true});e.on("select",function(n){n.stopPropagation();if(n.target.id===e[0].id){i.items[n.args.selectedIndex].selected=true}});e.on("unselect",function(n){n.stopPropagation();if(n.target.id===e[0].id){i.items[n.args.unselectedIndex].selected=false}});e.on("reorder",function(o){f._swapPanelsInLayout(i.items,o.args.newIndex,o.args.oldIndex);var n=o.args.newIndex;setTimeout(function(){f._addRightClickHandler(a(e.find(".jqx-ribbon-item")[n]),i.items[n].widget)},200)});if(d){e.on("_removeByDrag",function(n){f.dockingLayout._removeByDragHandler(n,i,e)})}e.addClass(f.toThemeProperty("jqx-layout-group-document"));break;case"autoHideGroup":e.jqxRibbon({theme:f.theme,width:b,height:l,mode:"popup",popupCloseMode:"click",position:i.alignment,selectionMode:"click",animationType:"none",_roundedCorners:false,rtl:f.rtl,initContent:function(o){var q=i.alignment==="top"||i.alignment==="left"?1:0,p=a(a(e.children()[q]).children()[o]),n=p.find(".jqx-layout-window");n.current=e.current.items[o];n.css("border","none");f._initWindowPanel(n,"100%","100%",i.type);if(!i.items[o].initialized&&i.items[o].initContent){i.items[o].initContent(e.find(".jqx-ribbon-content-section").eq(o).children().children().eq(1));i.items[o].initialized=true}}});e.addClass(f.toThemeProperty("jqx-layout-group-auto-hide"));break;case"floatGroup":e.addClass(f.element.id+"FloatGroup");e.jqxWindow({theme:f.theme,width:i.width,maxWidth:null,height:i.height,maxHeight:null,position:{x:i.position.x,y:i.position.y},showCloseButton:i.allowClose!==false,closeButtonAction:"close",rtl:f.rtl,initContent:function(){var o=e.find(".jqx-window-header");o.on("mousedown",function(){f.dockingLayout._windowDragged=true;if(i._overlayGroup){i._overlayGroup.self=true}f.dockingLayout._interval();if(f.resizable){f._overlay[0].style.display="block"}var r,p,q;if(i.items[0].type==="documentPanel"){r={type:"documentGroup"};p=i.items[0];q=p.title}else{if(i.items[0].type==="layoutPanel"){r={type:"tabbedGroup"};p=i.items[0];q=p.title}else{if(i.items[0].type==="tabbedGroup"){r=i.items[0]}}}f.dockingLayout._draggedWindow={fromGroup:r,fromPanel:p,title:q,element:e};f.dockingLayout._showEdgeOverlays()});o.on("mouseup",function(){f.dockingLayout._hideOverlays()});if(i.items[0].type==="tabbedGroup"){var n=i.items[0].items[e.find(".jqx-ribbon").jqxRibbon("selectedIndex")].title;e.jqxWindow("setTitle",n)}}});e.on("moved",function(n){i.position.x=n.args.x;i.position.y=n.args.y;if(i._overlayGroup){f.dockingLayout._updateOverlayGroup(i._overlayGroup)}f.dockingLayout._windowCreate=false;f.dockingLayout._hideOverlays();f.dockingLayout._clearTextSelection()});e.on("resized",function(n){i.width=n.args.width;i.height=n.args.height;var o=a(this).offset();i.position.x=o.left;i.position.y=o.top;if(i._overlayGroup){f.dockingLayout._updateOverlayGroup(i._overlayGroup)}});e.on("close",function(n){n.stopPropagation();if(n.target.id===e[0].id){if(e.current._overlayGroup){e.current._overlayGroup.removed=true;f.dockingLayout._updateOverlayGroups()}f.dockingLayout._removeFloatGroupObject(e.current)}});break}},_initWindowPanel:function(d,n,m,e){var i=this;d.addClass(i.toThemeProperty("jqx-widget jqx-widget-content jqx-window jqx-layout-pseudo-window jqx-rc-all"));if(!i._ie7){d.css({width:n,height:m})}else{var k=d.parent();if(e==="tabbedGroup"){var b=parseInt(d.css("border-left-width"),10),t=parseInt(d.css("border-right-width"),10),r=parseInt(d.css("border-top-width"),10),g=parseInt(d.css("border-bottom-width"),10),q,s;if(n==="100%"){q=k.width()}else{q=parseFloat(n)/100*k.width()}q-=b+t;if(m==="100%"){s=k.height()}else{s=parseFloat(m)/100*k.height()}s-=r+g;d.css({width:q,height:s})}else{if(e==="autoHideGroup"){d.css({width:n,height:m})}}}var f=i.rtl?"rtl":"ltr";var p=a(d.children()[0]);var u=p.children();u.addClass(i.toThemeProperty("jqx-layout-pseudo-window-title jqx-layout-pseudo-window-title-"+f));p.addClass(i.toThemeProperty("jqx-widget-header jqx-window-header jqx-disableselect jqx-layout-pseudo-window-header"));if(i._ie7){p.css("width",p.width()-parseInt(p.css("padding-left"),10)-parseInt(p.css("padding-right"),10));p.css("height",p.height()-parseInt(p.css("padding-top"),10)-parseInt(p.css("padding-bottom"),10))}var j=0,c,h;if((i.dockingLayout&&d.current.allowClose!==false)||(!i.dockingLayout&&d.current.allowClose===true)){c=a('<div class="'+i.toThemeProperty("jqx-window-close-button-background jqx-layout-pseudo-window-close-background jqx-layout-pseudo-window-close-background-"+f)+'" title="Close"><div class="'+i.toThemeProperty("jqx-window-close-button jqx-icon-close jqx-layout-pseudo-window-close-icon")+'"></div></div>');p.append(c);j+=16}if((e==="tabbedGroup"&&d.current.allowPin!==false)||(e==="autoHideGroup"&&d.current.parent.allowUnpin!==false)){var l;switch(e){case"tabbedGroup":l="jqx-layout-pseudo-window-pin-icon";d.pinned=false;break;case"autoHideGroup":l="jqx-layout-pseudo-window-pinned-icon";d.pinned=true;break}h=a('<div class="'+i.toThemeProperty("jqx-window-close-button-background jqx-layout-pseudo-window-pin-background")+'" title="Auto Hide"><div class="'+i.toThemeProperty(l)+'"></div></div>');if(c){h.addClass(i.toThemeProperty("jqx-layout-pseudo-window-pin-background-"+f))}else{if(i.rtl===false){h.css("right",0)}}p.append(h);j+=16;if(i.dockingLayout&&e==="autoHideGroup"){i.dockingLayout._addAutoHideGroupHandlers(d.current,p,d.current.title,a(d.children()[1]).contents())}}u.css("max-width",p.width()-j);var o=a(d.children()[1]);o.css("height",1+d.height()-p.outerHeight());o.css("margin-left","-1px");o.css("margin-right","-1px");i._addWindowPanelHandlers(c,h,d);return u},_addWindowPanelHandlers:function(g,c,b){var f=this,h=f.element.id,e=b.current,d=e.type;if(g){f.addHandler(g,"click.jqxLayout"+h,function(){if(d==="tabbedGroup"&&e.items.length>1){var i=b.find(".jqx-ribbon-item-selected")[0]._index;f._close(e.items[i])}else{b.fadeOut(function(){f._close(e);b.remove()})}})}if(c){f.addHandler(c,"click.jqxLayout"+h,function(){if(d==="tabbedGroup"&&e.pinValid===true){f._pin(e)}else{if(d==="layoutPanel"){f._unPin(e.parent)}}})}},_getGroupCoordinates:function(){var d=this;d._coordinates=[];function b(e){return e==="layoutGroup"||e==="tabbedGroup"||e==="documentGroup"}function c(n){for(var j=0;j<n.length;j++){var p=n[j];if(b(p.type)){var g=n[j-1],k=n[j+1],h=p.widget.offset(),o,e,m,f,l;if(g&&b(g.type)){if(p.parent.orientation==="horizontal"){o=h.left-5;e=o+10;m=h.top-5;f=m+p.widget.height()+10;l="left"}else{o=h.left-5;e=o+p.widget.width()+10;m=h.top-5;f=m+10;l="top"}d._coordinates.push({x:{from:o,to:e},y:{from:m,to:f},widget:p.widget,side:l,orientation:p.parent.orientation})}if(k&&b(k.type)){if(p.parent.orientation==="horizontal"){o=h.left+p.widget.width()-5;e=o+10;m=h.top-5;f=m+p.widget.height()+10;l="right"}else{o=h.left-5;e=o+p.widget.width()+10;m=h.top+p.widget.height()-5;f=m+10;l="bottom"}d._coordinates.push({x:{from:o,to:e},y:{from:m,to:f},widget:p.widget,side:l,orientation:p.parent.orientation})}if(p.items){c(p.items)}}}}c(d.layout[0].items)},_close:function(e){var g=this,i;e.removed=true;if(e.type==="tabbedGroup"||e.type==="autoHideGroup"||e.type==="documentGroup"){i=e.type==="tabbedGroup"?e.widget.find(".jqx-ribbon"):e.widget;i.jqxRibbon("destroy");if(e.parent.items){var f=e.parent.items[e.index-1],d=e.parent.items[e.index+1],h=e.parent.orientation==="vertical"?"height":"width";var c=function(k){var j=(parseFloat(k[h])+parseFloat(e[h]))+"%";if(k.type==="documentGroup"){if(h==="height"){k.widget.jqxRibbon({height:j})}else{k.widget.jqxRibbon({width:j})}}else{if(k.type==="layoutGroup"||k.type==="tabbedGroup"){k.widget.css(h,j)}}k[h]=j;g._raiseEvent("1",{item:k})};if(f&&f.type!=="autoHideGroup"&&f.type!=="floatGroup"){c(f)}else{if(d&&d.type!=="autoHideGroup"&&d.type!=="floatGroup"){c(d)}}}}else{if(e.type==="layoutPanel"){if(e.parent.type==="tabbedGroup"){i=e.parent.widget.find(".jqx-ribbon");i.jqxRibbon("removeAt",e.index);g._updateLayout(g.layout);if(e.index===0){i.jqxRibbon("selectAt",0)}else{i.jqxRibbon("selectAt",e.index-1)}return}else{if(e.parent.type==="autoHideGroup"){i=e.parent.widget;i.jqxRibbon("removeAt",e.index);var b=i.children("ul").children();if(b.length===0){g._close(i.current)}}}}}g._updateLayout(g.layout);g.render()},_updateLayout:function(b){for(var d=0;d<b.length;d++){if(b[d].removed===true){b.splice(d,1);for(var c=0;c<b.length;c++){b[c].index=c}}else{if(b[d].items){this._updateLayout(b[d].items)}}}},_pin:function(d){var h=this,l=d.parent,k,g,i;if(d.alignment){k=d.alignment}else{var f=Math.abs(d.parent.items.length-1-d.index),c=Math.abs(0-d.index);if(c<f){k=d.parent.orientation==="horizontal"?"left":"top"}else{k=d.parent.orientation==="horizontal"?"right":"bottom"}}var b=k==="top"||k==="left"?d.index+1:d.index-1;if(k==="left"||k==="right"){g="width";i=d.pinnedWidth}else{g="height";i=d.pinnedHeight}if(!i){if(g==="width"){i=(8000/d.parent.widget.width())+"%"}else{if(g==="height"){i=(3000/d.parent.widget.height())+"%"}}}h._detachContent(d.items,true);var j={type:"autoHideGroup",alignment:k,items:d.items};j[g]=i;j["min"+g.charAt(0).toUpperCase()+g.slice(1)]=d["min"+g.charAt(0).toUpperCase()+g.slice(1)];j["unpinned"+g.charAt(0).toUpperCase()+g.slice(1)]=d[g];j.allowDrag=d.allowDrag;j.allowDrop=d.allowDrop;var e=l.items[b];e[g]=parseFloat(e[g])+parseFloat(d[g])-parseFloat(i)+"%";l.items.splice(d.index,0,j);d.removed=true;d.widget.find(".jqx-ribbon").jqxRibbon("destroy");d.widget.remove();h._updateLayout(h.layout);h.render();h._raiseEvent("1",{item:e});h._raiseEvent("2",{item:j})},_unPin:function(f){var h=this,k=f.parent,j=f.alignment,b=j==="top"||j==="left"?f.index+1:f.index-1,m=k.items[b],g,c,e;if(j==="left"||j==="right"){g="width";c=f.unpinnedWidth}else{g="height";c=f.unpinnedHeight}if(!c){c="10%"}h._detachContent(f.items,true);var i={type:"tabbedGroup",alignment:j,items:f.items};i["pinned"+g.charAt(0).toUpperCase()+g.slice(1)]=f[g];i.allowDrag=f.allowDrag;i.allowDrop=f.allowDrop;if(m){var d=parseFloat(m[g])+parseFloat(f[g])-parseFloat(c)+"%",l=m["min"+g.charAt(0).toUpperCase()+g.slice(1)];if(!l){l=h["minGroup"+g.charAt(0).toUpperCase()+g.slice(1)]}if(parseFloat(d)<h._getPercentage(l,k,g)){c=f[g];d=h._getPercentage(l,k,g)+"%";i["min"+g.charAt(0).toUpperCase()+g.slice(1)]=f.widget.width()}else{i["min"+g.charAt(0).toUpperCase()+g.slice(1)]=f["min"+g.charAt(0).toUpperCase()+g.slice(1)]}i[g]=c;m[g]=d;e=m}else{i["min"+g.charAt(0).toUpperCase()+g.slice(1)]=f["min"+g.charAt(0).toUpperCase()+g.slice(1)];i[g]="100%";e=i}k.items.splice(f.index,0,i);f.removed=true;f.widget.jqxRibbon("destroy");h._updateLayout(h.layout);h.render();h._raiseEvent("1",{item:e});h._raiseEvent("3",{item:i})},_copyItem:function(c,g){var f={};for(var e in c){if(c.hasOwnProperty(e)&&e!=="parent"&&e!=="widget"&&e!=="initialized"){if(e==="position"){f.position={x:c.position.x,y:c.position.y}}else{if(e==="items"){var b=[];for(var d=0;d<c.items.length;d++){this._copyItem(c.items[d],b)}f.items=b}else{f[e]=c[e]}}}}g.push(f)},_addResizeFeedbacks:function(){var b=this;b._horizontalFeedback=a('<div class="'+b.toThemeProperty("jqx-fill-state-normal jqx-layout-resize-feedback jqx-layout-resize-feedback-horizontal")+'"></div>');b._verticalFeedback=a('<div class="'+b.toThemeProperty("jqx-fill-state-normal jqx-layout-resize-feedback jqx-layout-resize-feedback-vertical")+'"></div>');b._overlay=a('<div class="'+b.toThemeProperty("jqx-layout-overlay")+'"></div>');if(b.dockingLayout&&b.dockingLayout._windowDragged){b._overlay[0].style.display="block"}b.host.append(b._horizontalFeedback,b._verticalFeedback,b._overlay)},_detachContent:function(h,d){function c(l){if(l.prevent===true){l.prevent=false}else{var i=l.parent.widget.find(".jqx-ribbon-content-section").eq(l.index);f=i.contents().detach();i.remove();l.detachedContent=f;if(d===true){l.prevent=true}}}for(var e=h.length-1;e>=0;e--){var k=h[e],j=k.type,f;if(j==="layoutGroup"||j==="tabbedGroup"||j==="documentGroup"||j==="autoHideGroup"||j==="floatGroup"){if(k.items&&k.items.length>0){this._detachContent(k.items)}}else{if(j==="layoutPanel"){if(k.parent.type==="tabbedGroup"){c(k)}else{if(k.parent.type==="autoHideGroup"){if(k.prevent===true){k.prevent=false}else{if(k.parent.alignment==="left"||k.parent.alignment==="right"){var b=k.parent.widget.find(".jqx-layout-group-auto-hide-content-vertical").eq(e);f=b.contents().detach();b.remove()}else{var g=k.parent.widget.find(".jqx-layout-group-auto-hide-content-horizontal").eq(e);f=g.contents().detach();g.remove()}k.detachedContent=f;if(d===true){k.prevent=true}}}}}else{if(j==="documentPanel"){c(k)}}}}},_pxToPercent:function(f,b){function g(k,j){var h,i;k=parseInt(k,10);if(b){i=e.host[j]()}else{i=f["initialPx"+j.charAt(0).toUpperCase()+j.slice(1)]}h=(100*k/i).toString()+"%";return h}var e=this;for(var d=0;d<f.items.length;d++){var c=f.items[d];if(c.width!==undefined){c.initialPxWidth=c.width;c.width=g(c.width,"width")}else{c.initialPxWidth=f.initialPxWidth}if(c.height!==undefined){c.initialPxHeight=c.height;c.height=g(c.height,"height")}else{c.initialPxHeight=f.initialPxHeight}if(c.unpinnedWidth!==undefined){c.unpinnedWidth=g(c.unpinnedWidth,"width")}if(c.pinnedWidth!==undefined){c.pinnedWidth=g(c.pinnedWidth,"width")}if(c.unpinnedHeight!==undefined){c.unpinnedHeight=g(c.unpinnedHeight,"height")}if(c.pinnedHeight!==undefined){c.pinnedHeight=g(c.pinnedHeight,"height")}if(c.type==="layoutGroup"&&c.items&&c.items.length>0){e._pxToPercent(c,false)}}},_percentToPx:function(d,c,b){if(c===undefined){return undefined}else{if(typeof c!=="string"||(typeof c==="string"&&c.charAt(c.length-1)!=="%")){return parseFloat(c)}else{return parseFloat(c.slice(0,c.length-1))/100*b.widget[d]()}}},_swapPanelsInLayout:function(f,d,c){var e=f[d];f[d]=f[c];f[d].index=d;f[c]=e;f[c].index=c},_initMenu:function(){var c=this;if(!c._menuInitialized){var f=c.element.id,e="",d=function(h,g,i){c._menu.jqxMenu("disable","dockOption"+f,h);c._menu.jqxMenu("disable","autoHideOption"+f,g);c._menu.jqxMenu("disable","closeOption"+f,i)};if(!c.host.jqxMenu){throw new Error("jqxLayout: Missing reference to jqxmenu.js.")}if(c.dockingLayout){e='<li id="floatOption'+f+'">Float</li>'}c._menu=a('<div class="'+c.toThemeProperty("jqx-layout-context-menu jqx-layout-context-menu-"+f)+'"><ul>'+e+'<li id="dockOption'+f+'">Dock</li><li id="autoHideOption'+f+'" style="white-space: nowrap;">Auto Hide</li><li id="closeOption'+f+'">Close</li></ul></div>');a("body").append(c._menu);c._menu.jqxMenu({theme:c.theme,width:100,height:"auto",autoOpenPopup:false,mode:"popup",popupZIndex:99999,rtl:c.rtl});c._menuInitialized=true;c._menu.on("itemclick",function(g){c._handleMenuItemClick(a(g.target).text())});function b(g){if(c.dockingLayout){return g.allowClose===false}else{return g.allowClose!==true}}c._menu.on("shown",function(){switch(c._contextMenuTarget.type){case"tabbedGroup":d(true,c._contextMenuTarget.allowPin===false||c._contextMenuTarget.pinValid===false,b(c._contextMenuTarget));break;case"layoutPanel":var g=c._contextMenuTarget.parent;if(g.type==="tabbedGroup"){d(true,g.allowPin===false||c._isMiddleTabbedGroup(g),b(g))}else{if(g.type==="autoHideGroup"){d(g.allowUnpin===false,true,b(c._contextMenuTarget))}}break;case"documentPanel":d(true,true,b(c._contextMenuTarget));break}})}},_addRightClickHandler:function(d,b){var c=this;if(c.contextMenu===true){c.addHandler(d,"mousedown.jqxLayout"+c.element.id,function(e){if(c.contextMenu===true&&((e.which&&e.which===3)||(e.button&&e.button===2))){var f=a(window).scrollTop(),g=a(window).scrollLeft();c._contextMenuTarget=b.current;c._menu.jqxMenu("open",parseInt(e.clientX,10)+5+g,parseInt(e.clientY,10)+5+f)}});c.addHandler(d,"contextmenu.jqxLayout"+c.element.id,function(){if(c.contextMenu===true){return false}})}},_handleMenuItemClick:function(f){var e=this,c=e._contextMenuTarget.type,b=e._contextMenuTarget.parent;switch(f){case"Float":switch(c){case"tabbedGroup":e.dockingLayout._floatTabbedGroup(e._contextMenuTarget,e._contextMenuTarget.widget);break;case"layoutPanel":if(b.type==="tabbedGroup"){e.dockingLayout._removeByDragHandler(undefined,b,b.widget,e._contextMenuTarget.index,false)}else{if(b.type==="autoHideGroup"){var d=e._contextMenuTarget.parent.widget.find(".jqx-ribbon-content").children().eq(e._contextMenuTarget.index).find(".jqx-layout-window").children().eq(1).contents();e.dockingLayout._floatAutoHideGroup(e._contextMenuTarget,e._contextMenuTarget.title,d)}}break;case"documentPanel":e.dockingLayout._removeByDragHandler(undefined,b,b.widget,e._contextMenuTarget.index,false);break}break;case"Dock":e._unPin(e._contextMenuTarget.parent);break;case"Auto Hide":switch(c){case"tabbedGroup":e._pin(e._contextMenuTarget);break;case"layoutPanel":e._pin(e._contextMenuTarget.parent);break}break;case"Close":switch(c){case"tabbedGroup":e._close(e._contextMenuTarget);break;case"layoutPanel":if(e._contextMenuTarget.parent.items.length>1){e._close(e._contextMenuTarget)}else{e._close(e._contextMenuTarget.parent)}break;case"documentPanel":e._closeDocumentPanel(e._contextMenuTarget.index,e._contextMenuTarget.parent.items,e._contextMenuTarget.parent,e._contextMenuTarget.parent.widget,false);break}}},_closeDocumentPanel:function(c,f,b,j,e){var g=this;if(e===false){j.jqxRibbon("removeAt",c)}if(f.length>1){var h=false;f[c].removed=true;g._updateLayout(f);for(var d=0;d<f.length;d++){if(f[d].selected===true){h=true;break}}setTimeout(function(){if(h===false){if(f[c]){j.jqxRibbon("selectAt",c)}else{j.jqxRibbon("selectAt",c-1)}}else{j.jqxRibbon("render")}},0)}else{g._close(b)}},_isMiddleTabbedGroup:function(b){return !(b.index===0||b.index===b.parent.items.length-1)},_validateTabbedGroup:function(c){var e=this,d=true;d=d&&c.parent.items.length>1;if(d){if(c.parent.items.length===2){var b=c.index===0?1:0;if(c.parent.items[b].type==="autoHideGroup"){d=false}}}if(d){d=d&&!e._isMiddleTabbedGroup(c)}c.pinValid=d;if(d===false){c.widget.find(".jqx-layout-pseudo-window-pin-background").addClass("jqx-fill-state-disabled")}},_mouseupHandler:function(d){var c=this;try{if(c.dockingLayout){c._docUP(d);c.dockingLayout._windowCreate=false;c.dockingLayout._hideOverlays()}}catch(b){}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxlistbox.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxlistbox.js
new file mode 100644 (file)
index 0000000..e358b8c
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxListBox","",{});a.extend(a.jqx._jqxListBox.prototype,{defineInstance:function(){var b={disabled:false,width:null,height:null,items:new Array(),multiple:false,selectedIndex:-1,selectedIndexes:new Array(),source:null,scrollBarSize:a.jqx.utilities.scrollBarSize,enableHover:true,enableSelection:true,visualItems:new Array(),groups:new Array(),equalItemsWidth:true,itemHeight:-1,visibleItems:new Array(),emptyGroupText:"Group",checkboxes:false,hasThreeStates:false,autoHeight:false,autoItemsHeight:false,roundedcorners:true,touchMode:"auto",displayMember:"",groupMember:"",valueMember:"",searchMember:"",searchMode:"startswithignorecase",incrementalSearch:true,incrementalSearchDelay:1000,incrementalSearchKeyDownDelay:300,allowDrag:false,allowDrop:true,dropAction:"default",touchModeStyle:"auto",keyboardNavigation:true,enableMouseWheel:true,multipleextended:false,selectedValues:new Array(),emptyString:"",rtl:false,rendered:null,renderer:null,dragStart:null,dragEnd:null,focusable:true,ready:null,_checkForHiddenParent:true,autoBind:true,_renderOnDemand:false,filterable:false,filterHeight:27,filterPlaceHolder:"Looking for",filterDelay:100,aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["select","unselect","change","checkChange","dragStart","dragEnd","bindingComplete"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;if(a.jqx.utilities.scrollBarSize!=15){b.scrollBarSize=a.jqx.utilities.scrollBarSize}if(b.width==null){b.width=200}if(b.height==null){b.height=200}b.render();var d=b;a.jqx.utilities.resize(b.host,function(){d._updateSize()},false,b._checkForHiddenParent)},resize:function(c,b){this.width=c;this.height=b;this._updateSize()},render:function(){var m=this;var l=m.element.nodeName.toLowerCase();if(l=="select"||l=="ul"||l=="ol"){m.field=m.element;if(m.field.className){m._className=m.field.className}var i={title:m.field.title};if(m.field.id.length){i.id=m.field.id.replace(/[^\w]/g,"_")+"_jqxListBox"}else{i.id=a.jqx.utilities.createId()+"_jqxListBox"}var b=a("<div></div>",i);if(!m.width){m.width=a(m.field).width()}if(!m.height){m.height=a(m.field).outerHeight()}a(m.field).hide().after(b);var f=m.host.data();m.host=b;m.host.data(f);m.element=b[0];m.element.id=m.field.id;m.field.id=i.id;if(m._className){m.host.addClass(m._className);a(m.field).removeClass(m._className)}if(m.field.tabIndex){var c=m.field.tabIndex;m.field.tabIndex=-1;m.element.tabIndex=c}}m.element.innerHTML="";var m=m;var h=m.element.className;h+=" "+m.toThemeProperty("jqx-listbox");h+=" "+m.toThemeProperty("jqx-reset");h+=" "+m.toThemeProperty("jqx-rc-all");h+=" "+m.toThemeProperty("jqx-widget");h+=" "+m.toThemeProperty("jqx-widget-content");m.element.className=h;var g=false;if(m.width!=null&&m.width.toString().indexOf("%")!=-1){m.host.width(m.width);g=true}if(m.height!=null&&m.height.toString().indexOf("%")!=-1){m.host.height(m.height);if(m.host.height()==0){m.host.height(200)}g=true}if(m.width!=null&&m.width.toString().indexOf("px")!=-1){m.host.width(m.width)}else{if(m.width!=undefined&&!isNaN(m.width)){m.element.style.width=parseInt(m.width)+"px"}}if(m.height!=null&&m.height.toString().indexOf("px")!=-1){m.host.height(m.height)}else{if(m.height!=undefined&&!isNaN(m.height)){m.element.style.height=parseInt(m.height)+"px"}}if(m.multiple||m.multipleextended||m.checkboxes){a.jqx.aria(m,"aria-multiselectable",true)}else{a.jqx.aria(m,"aria-multiselectable",false)}var e="<div style='-webkit-appearance: none; background: transparent; outline: none; width:100%; height: 100%; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div style='-webkit-appearance: none; border: none; background: transparent; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; align:left; left: 0px; top: 0px; valign:top; position: relative;'><div id='filter"+m.element.id+"' style='display: none; visibility: inherit; align:left; valign:top; left: 0px; top: 0px; position: absolute;'><input style='position: absolute;'/></div><div id='listBoxContent' style='-webkit-appearance: none; border: none; background: transparent; outline: none; border: none; padding: 0px; overflow: hidden; margin: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='verticalScrollBar"+m.element.id+"' style='visibility: inherit; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='horizontalScrollBar"+m.element.id+"' style='visibility: inherit; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; border: none; position: absolute;'/></div></div>";m.host.attr("role","listbox");m.element.innerHTML=e;if(m._checkForHiddenParent){m._addInput();if(!m.host.attr("tabIndex")){m.host.attr("tabIndex",1)}}m.filter=a(m.element.firstChild.firstChild.firstChild);m.filterInput=a(m.filter[0].firstChild);m.filterInput.attr("placeholder",m.filterPlaceHolder);m.filterInput.addClass(m.toThemeProperty("jqx-widget jqx-input jqx-rc-all"));m.addHandler(m.filterInput,"keyup.textchange",function(o){if(o.keyCode==13){m._search(o)}else{if(m.filterDelay>0){if(m._filterTimer){clearTimeout(m._filterTimer)}m._filterTimer=setTimeout(function(){m._search(o)},m.filterDelay)}}o.stopPropagation()});var j=a(m.element.firstChild.firstChild.firstChild.nextSibling.nextSibling);if(!m.host.jqxButton){throw new Error("jqxListBox: Missing reference to jqxbuttons.js.");return}if(!j.jqxScrollBar){throw new Error("jqxListBox: Missing reference to jqxscrollbar.js.");return}var d=parseInt(m.host.height())/2;if(d==0){d=10}m.vScrollBar=j.jqxScrollBar({_initialLayout:true,vertical:true,rtl:m.rtl,theme:m.theme,touchMode:m.touchMode,largestep:d});var n=a(m.element.firstChild.firstChild.firstChild.nextSibling.nextSibling.nextSibling);m.hScrollBar=n.jqxScrollBar({_initialLayout:true,vertical:false,rtl:m.rtl,touchMode:m.touchMode,theme:m.theme});m.content=a(m.element.firstChild.firstChild.firstChild.nextSibling);m.content[0].id="listBoxContent"+m.element.id;m.bottomRight=a(m.element.firstChild.firstChild.firstChild.nextSibling.nextSibling.nextSibling.nextSibling).addClass(m.toThemeProperty("jqx-listbox-bottomright")).addClass(m.toThemeProperty("jqx-scrollbar-state-normal"));m.bottomRight[0].id="bottomRight"+m.element.id;m.vScrollInstance=a.data(m.vScrollBar[0],"jqxScrollBar").instance;m.hScrollInstance=a.data(m.hScrollBar[0],"jqxScrollBar").instance;if(m.isTouchDevice()){if(!(a.jqx.browser.msie&&a.jqx.browser.version<9)){var k=a("<div class='overlay' unselectable='on' style='z-index: 99; -webkit-appearance: none; border: none; background: black; opacity: 0.01; outline: none; border: none; padding: 0px; overflow: hidden; margin: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div>");m.content.parent().append(k);m.overlayContent=m.host.find(".overlay");if(m.filterable){m.overlayContent.css("top","30px")}}}m._updateTouchScrolling();m.host.addClass("jqx-disableselect");if(m.host.jqxDragDrop){jqxListBoxDragDrop()}},_highlight:function(b,c){var d=c.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&");return b.replace(new RegExp("("+d+")","ig"),function(e,f){return"<b>"+f+"</b>"})},_addInput:function(){var b=this.host.attr("name");if(b){this.host.attr("name","")}this.input=a("<input type='hidden'/>");this.host.append(this.input);this.input.attr("name",b)},_updateTouchScrolling:function(){var b=this;if(this.isTouchDevice()){b.enableHover=false;var c=this.overlayContent?this.overlayContent:this.content;this.removeHandler(a(c),a.jqx.mobile.getTouchEventName("touchstart")+".touchScroll");this.removeHandler(a(c),a.jqx.mobile.getTouchEventName("touchmove")+".touchScroll");this.removeHandler(a(c),a.jqx.mobile.getTouchEventName("touchend")+".touchScroll");this.removeHandler(a(c),"touchcancel.touchScroll");a.jqx.mobile.touchScroll(c,b.vScrollInstance.max,function(f,e){if(b.vScrollBar.css("visibility")!="hidden"){var d=b.vScrollInstance.value;b.vScrollInstance.setPosition(d+e);b._lastScroll=new Date()}if(b.hScrollBar.css("visibility")!="hidden"){var d=b.hScrollInstance.value;b.hScrollInstance.setPosition(d+f);b._lastScroll=new Date()}},this.element.id,this.hScrollBar,this.vScrollBar);if(b.vScrollBar.css("visibility")!="visible"&&b.hScrollBar.css("visibility")!="visible"){a.jqx.mobile.setTouchScroll(false,this.element.id)}else{a.jqx.mobile.setTouchScroll(true,this.element.id)}this._arrange()}},isTouchDevice:function(){var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){if(this.touchDevice){return true}if(a.jqx.browser.msie&&a.jqx.browser.version<9){return false}this.touchDevice=true;b=true;a.jqx.mobile.setMobileSimulator(this.element)}else{if(this.touchMode==false){b=false}}if(b&&this.touchModeStyle!=false){this.scrollBarSize=a.jqx.utilities.touchScrollBarSize}if(b){this.host.addClass(this.toThemeProperty("jqx-touch"))}return b},beginUpdate:function(){this.updatingListBox=true},endUpdate:function(){this.updatingListBox=false;this._addItems();this._renderItems()},beginUpdateLayout:function(){this.updating=true},resumeUpdateLayout:function(){this.updating=false;this.vScrollInstance.value=0;this._render(false)},propertiesChangedHandler:function(b,c,d){b._cachedItemHtml=new Array();b.clearSelection();b.refresh()},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(b.batchUpdate&&c!="touchMode"&&c!="rtl"){return}if(c=="_renderOnDemand"){b._render(false,true);if(b.selectedIndex!=-1){var f=b.selectedIndex;b.selectedIndex=-1;b._stopEvents=true;b.selectIndex(f,false,true);if(b.selectedIndex==-1){b.selectedIndex=f}b._stopEvents=false}}if(c=="filterable"){b.refresh()}if(c=="filterHeight"){b._arrange()}if(c=="filterPlaceHolder"){b.filterInput.attr("placeholder",d)}if(c=="renderer"){b._cachedItemHtml=new Array();b.refresh()}if(c=="itemHeight"){b.refresh()}if(c=="source"||c=="checkboxes"){if(d==null&&e&&e.unbindBindingUpdate){e.unbindBindingUpdate(b.element.id);e.unbindDownloadComplete(b.element.id)}b.clearSelection();b.refresh()}if(c=="scrollBarSize"||c=="equalItemsWidth"){if(d!=e){b._updatescrollbars()}}if(c=="disabled"){b._renderItems();b.vScrollBar.jqxScrollBar({disabled:d});b.hScrollBar.jqxScrollBar({disabled:d})}if(c=="touchMode"||c=="rtl"){b._removeHandlers();b.vScrollBar.jqxScrollBar({touchMode:d});b.hScrollBar.jqxScrollBar({touchMode:d});if(c=="touchMode"){if(!(a.jqx.browser.msie&&a.jqx.browser.version<9)){var h=a("<div class='overlay' unselectable='on' style='z-index: 99; -webkit-appearance: none; border: none; background: black; opacity: 0.01; outline: none; border: none; padding: 0px; overflow: hidden; margin: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div>");b.content.parent().append(h);b.overlayContent=b.host.find(".overlay")}}if(b.filterable&&b.filterInput){if(c=="rtl"&&d){b.filterInput.addClass(b.toThemeProperty("jqx-rtl"))}else{if(c=="rtl"&&!d){b.filterInput.removeClass(b.toThemeProperty("jqx-rtl"))}}b._arrange()}b._updateTouchScrolling();b._addHandlers();b._render(false)}if(!this.updating){if(c=="width"||c=="height"){b._updateSize()}}if(c=="theme"){if(e!=d){b.hScrollBar.jqxScrollBar({theme:b.theme});b.vScrollBar.jqxScrollBar({theme:b.theme});b.host.removeClass();b.host.addClass(b.toThemeProperty("jqx-listbox"));b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-reset"));b.host.addClass(b.toThemeProperty("jqx-rc-all"));b.refresh()}}if(c=="selectedIndex"){b.clearSelection();b.selectIndex(d,true)}if(c=="displayMember"||c=="valueMember"){if(e!=d){var g=b.selectedIndex;b.refresh();b.selectedIndex=g;b.selectedIndexes[g]=g}b._renderItems()}if(c=="autoHeight"){if(e!=d){b._render(false)}else{b._updatescrollbars();b._renderItems()}}if(b._checkForHiddenParent&&a.jqx.isHidden(b.host)){a.jqx.utilities.resize(this.host,function(){b._updateSize()},false,b._checkForHiddenParent)}},loadFromSelect:function(g){if(g==null){return}var c="#"+g;var d=a(c);if(d.length>0){var b=a.jqx.parseSourceTag(d[0]);var f=b.items;var e=b.index;this.source=f;this.fromSelect=true;this.clearSelection();this.selectedIndex=e;this.selectedIndexes[this.selectedIndex]=this.selectedIndex;this.refresh()}},invalidate:function(){this._cachedItemHtml=[];this._renderItems();this.virtualSize=null;this._updateSize()},refresh:function(c){var b=this;if(this.vScrollBar==undefined){return}this._cachedItemHtml=[];this.visibleItems=new Array();var d=function(e){if(e==true){if(b.selectedIndex!=-1){var f=b.selectedIndex;b.selectedIndex=-1;b._stopEvents=true;b.selectIndex(f,false,true);if(b.selectedIndex==-1){b.selectedIndex=f}b._stopEvents=false}}};if(this.itemswrapper!=null){this.itemswrapper.remove();this.itemswrapper=null}if(a.jqx.dataAdapter&&this.source!=null&&this.source._source){this.databind(this.source,c);d(c);return}if(this.autoBind||(!this.autoBind&&!c)){if(this.field){this.loadSelectTag()}this.items=this.loadItems(this.source)}this._raiseEvent("6");this._render(false,c==true);d(c)},loadSelectTag:function(){var b=a.jqx.parseSourceTag(this.field);this.source=b.items;if(this.selectedIndex==-1){this.selectedIndex=b.index}},_render:function(c,b){if(this._renderOnDemand){this.visibleItems=new Array();this.renderedVisibleItems=new Array();this._renderItems();return}this._addItems();this._renderItems();this.vScrollInstance.setPosition(0);this._cachedItemHtml=new Array();if(c==undefined||c){if(this.items!=undefined&&this.items!=null){if(this.selectedIndex>=0&&this.selectedIndex<this.items.length){this.selectIndex(this.selectedIndex,true,true,true)}}}if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop();if(this.isTouchDevice()){this._removeHandlers();if(this.overlayContent){this.overlayContent.remove();this.overlayContent=null}this._updateTouchScrolling();this._addHandlers();return}}this._updateTouchScrolling();if(this.rendered){this.rendered()}if(this.ready){this.ready()}},_hitTest:function(c,f){if(this.filterable){f-=this.filterHeight;if(f<0){f=0}}var e=parseInt(this.vScrollInstance.value);var b=this._searchFirstVisibleIndex(f+e,this.renderedVisibleItems);if(this.renderedVisibleItems[b]!=undefined&&this.renderedVisibleItems[b].isGroup){return null}if(this.renderedVisibleItems.length>0){var d=this.renderedVisibleItems[this.renderedVisibleItems.length-1];if(d.height+d.top<f+e){return null}}b=this._searchFirstVisibleIndex(f+e);return this.visibleItems[b];return null},_searchFirstVisibleIndex:function(e,f){if(e==undefined){e=parseInt(this.vScrollInstance.value)}var c=0;if(f==undefined||f==null){f=this.visibleItems}var b=f.length;while(c<=b){mid=parseInt((c+b)/2);var d=f[mid];if(d==undefined){break}if(d.initialTop>e&&d.initialTop+d.height>e){b=mid-1}else{if(d.initialTop<e&&d.initialTop+d.height<=e){c=mid+1}else{return mid;break}}}return 0},_renderItems:function(){if(this.items==undefined||this.items.length==0){this.visibleItems=new Array();return}if(this.updatingListBox==true){return}var N=this.isTouchDevice();var G=this.vScrollInstance;var h=this.hScrollInstance;var g=parseInt(G.value);var f=parseInt(h.value);if(this.rtl){if(this.hScrollBar[0].style.visibility!="hidden"){f=h.max-f}}var B=this.items.length;var M=this.host.width();var K=parseInt(this.content[0].style.width);var b=K+parseInt(h.max);var q=parseInt(this.vScrollBar[0].style.width)+2;if(this.vScrollBar[0].style.visibility=="hidden"){q=0}if(this.hScrollBar[0].style.visibility!="visible"){b=K}var l=this._getVirtualItemsCount();var L=new Array();var F=0;var E=parseInt(this.element.style.height)+2;if(this.element.style.height.indexOf("%")!=-1){E=this.host.outerHeight()}if(isNaN(E)){E=0}var t=0;var s=0;var Q=0;if(G.value==0||this.visibleItems.length==0){for(var r=0;r<this.items.length;r++){var x=this.items[r];if(x.visible){x.top=-g;x.initialTop=-g;if(!x.isGroup&&x.visible){this.visibleItems[s++]=x;x.visibleIndex=s-1}this.renderedVisibleItems[Q++]=x;x.left=-f;var c=x.top+x.height;if(c>=0&&x.top-x.height<=E){L[F++]={index:r,item:x}}g-=x.height}}}var m=g>0?this._searchFirstVisibleIndex(this.vScrollInstance.value,this.renderedVisibleItems):0;var O=0;F=0;var z=this.vScrollInstance.value;var J=0;while(O<100+E){var x=this.renderedVisibleItems[m];if(x==undefined){break}if(x.visible){x.left=-f;var c=x.top+x.height-z;if(c>=0&&x.initialTop-z-x.height<=2*E){L[F++]={index:m,item:x}}}m++;if(x.visible){O+=x.initialTop-z+x.height-O}J++;if(J>this.items.length-1){break}}if(this._renderOnDemand){return}var o=this.toThemeProperty("jqx-listitem-state-normal")+" "+this.toThemeProperty("jqx-item");var i=this.toThemeProperty("jqx-listitem-state-group");var P=this.toThemeProperty("jqx-listitem-state-disabled")+" "+this.toThemeProperty("jqx-fill-state-disabled");var C=0;var n=this;for(var r=0;r<this.visualItems.length;r++){var D=this.visualItems[r];var I=function(){var y=D[0].firstChild;if(n.checkboxes){y=D[0].lastChild}if(y!=null){y.style.visibility="hidden";y.className=""}if(n.checkboxes){var R=D.find(".chkbox");R.css({visibility:"hidden"})}};if(r<L.length){var x=L[r].item;if(x.initialTop-z>=E){I();continue}var A=a(D[0].firstChild);if(this.checkboxes){A=a(D[0].lastChild)}if(A.length==0){continue}if(A[0]==null){continue}A[0].className="";A[0].style.display="block";A[0].style.visibility="inherit";var p="";if(!x.isGroup&&!this.selectedIndexes[x.index]>=0){p=o}else{p=i}if(x.disabled||this.disabled){p+=" "+P}if(this.roundedcorners){p+=" "+this.toThemeProperty("jqx-rc-all")}if(N){p+=" "+this.toThemeProperty("jqx-listitem-state-normal-touch")}A[0].className=p;if(this.renderer){if(!x.key){x.key=this.generatekey()}if(!this._cachedItemHtml){this._cachedItemHtml=new Array()}if(this._cachedItemHtml[x.key]){if(A[0].innerHTML!=this._cachedItemHtml[x.key]){A[0].innerHTML=this._cachedItemHtml[x.key]}}else{var w=this.renderer(x.index,x.label,x.value);A[0].innerHTML=w;this._cachedItemHtml[x.key]=A[0].innerHTML}}else{if(this.itemHeight!==-1){var k=2+2*parseInt(A.css("padding-top"));A[0].style.lineHeight=(x.height-k)+"px";A.css("vertical-align","middle")}if(x.html!=null&&x.html.toString().length>0){A[0].innerHTML=x.html}else{if(x.label!=null||x.value!=null){if(x.label!=null){if(A[0].innerHTML!==x.label){A[0].innerHTML=x.label}if(a.trim(x.label)==""){A[0].innerHTML=this.emptyString;if(this.emptyString==""){A[0].style.height=(x.height-8)+"px"}}if(!this.incrementalSearch&&!x.disabled){if(this.searchString!=undefined&&this.searchString!=""){A[0].innerHTML=this._highlight(x.label.toString(),this.searchString)}}}else{if(x.label===null){A[0].innerHTML=this.emptyString;if(this.emptyString==""){A[0].style.height=(x.height-8)+"px"}}else{if(A[0].innerHTML!==x.value){A[0].innerHTML=x.value}else{if(x.label==""){A[0].innerHTML=" "}}}}}else{if(x.label==""||x.label==null){A[0].innerHTML="";A[0].style.height=(x.height-8)+"px"}}}}D[0].style.left=x.left+"px";D[0].style.top=x.initialTop-z+"px";x.element=A[0];if(x.title){A[0].title=x.title}if(this.equalItemsWidth&&!x.isGroup){if(t==0){var d=parseInt(b);var v=parseInt(A.outerWidth())-parseInt(A.width());d-=v;var H=1;if(H!=null){H=parseInt(H)}else{H=0}d-=2*H;t=d;if(this.checkboxes&&this.hScrollBar[0].style.visibility=="hidden"){t-=18}}if(K>this.virtualSize.width){A[0].style.width=t+"px";x.width=t}else{A[0].style.width=-4+this.virtualSize.width+"px";x.width=this.virtualSize.width-4}}else{if(A.width()<this.host.width()){A.width(this.host.width()-2)}}if(this.rtl){A[0].style.textAlign="right"}if(this.autoItemsHeight){A[0].style.whiteSpace="pre-line";A.width(t);x.width=t}C=0;if(this.checkboxes&&!x.isGroup){if(C==0){C=(x.height-16)/2;C++}var e=a(D.children()[0]);e[0].item=x;if(!this.rtl){if(A[0].style.left!="18px"){A[0].style.left="18px"}}else{if(A[0].style.left!="0px"){A[0].style.left="0px"}}if(this.rtl){e.css("left",8+x.width+"px")}e[0].style.top=C+"px";e[0].style.display="block";e[0].style.visibility="inherit";var u=x.checked;var j=x.checked?" "+this.toThemeProperty("jqx-checkbox-check-checked"):"";if(e[0].firstChild&&e[0].firstChild.firstChild&&e[0].firstChild.firstChild.firstChild){if(e[0].firstChild.firstChild){if(u){e[0].firstChild.firstChild.firstChild.className=j}else{if(u===false){e[0].firstChild.firstChild.firstChild.className=""}else{if(u===null){e[0].firstChild.firstChild.firstChild.className=this.toThemeProperty("jqx-checkbox-check-indeterminate")}}}}}if(a.jqx.ariaEnabled){if(u){D[0].setAttribute("aria-selected",true)}else{D[0].removeAttribute("aria-selected")}}}else{if(this.checkboxes){var e=a(D.children()[0]);e.css({display:"none",visibility:"inherit"})}}if(!x.disabled&&((!this.filterable&&this.selectedIndexes[x.visibleIndex]>=0)||(x.selected&&this.filterable))){A.addClass(this.toThemeProperty("jqx-listitem-state-selected"));A.addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(a.jqx.ariaEnabled){D[0].setAttribute("aria-selected",true);this._activeElement=D[0]}}else{if(!this.checkboxes){if(a.jqx.ariaEnabled){D[0].removeAttribute("aria-selected")}}}}else{I()}}},generatekey:function(){var b=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(b()+b()+"-"+b()+"-"+b()+"-"+b()+"-"+b()+b()+b())},_calculateVirtualSize:function(l){if(this._renderOnDemand){return}var p=0;var n=2;var g=0;var o=document.createElement("span");if(this.equalItemsWidth){a(o).css("float","left")}o.style.whiteSpace="pre";var h=0;var i=undefined===l?this.host.outerHeight():l+2;document.body.appendChild(o);var e=this.items.length;var j=this.host.width();if(this.autoItemsHeight){j-=10;if(this.vScrollBar.css("visibility")!="hidden"){j-=20}}if(this.autoItemsHeight||this.renderer||this.groups.length>=1||(e>0&&this.items[0].html!=null&&this.items[0].html!="")){for(var g=0;g<e;g++){var s=this.items[g];if(s.isGroup&&(s.label==""&&s.html=="")){continue}if(!s.visible){continue}var d="";if(!s.isGroup){d+=this.toThemeProperty("jqx-listitem-state-normal jqx-rc-all")}else{d+=this.toThemeProperty("jqx-listitem-state-group jqx-rc-all")}d+=" "+this.toThemeProperty("jqx-fill-state-normal");if(this.isTouchDevice()){d+=" "+this.toThemeProperty("jqx-touch")}o.className=d;if(this.autoItemsHeight){o.style.whiteSpace="pre-line";var b=this.checkboxes?-20:0;o.style.width=(b+j)+"px"}if(this.renderer){var k=this.renderer(s.index,s.label,s.value);o.innerHTML=k}else{if(s.html!=null&&s.html.toString().length>0){o.innerHTML=s.html}else{if(s.label!=null||s.value!=null){if(s.label!=null){o.innerHTML=s.label;if(s.label==""){o.innerHTML="Empty"}}else{o.innerHTML=s.value}}}}var r=o.offsetHeight;var t=o.offsetWidth;if(this.itemHeight>-1){r=this.itemHeight}s.height=r;s.width=t;n+=r;p=Math.max(p,t);if(n<=i){h++}}}else{var n=0;var m=0;var c="";var u=0;var f=0;var q=-1;for(var g=0;g<e;g++){var s=this.items[g];if(s.isGroup&&(s.label==""&&s.html=="")){continue}if(!s.visible){continue}q++;var d="";if(q==0){d+=this.toThemeProperty("jqx-listitem-state-normal jqx-rc-all");d+=" "+this.toThemeProperty("jqx-fill-state-normal");d+=" "+this.toThemeProperty("jqx-widget");d+=" "+this.toThemeProperty("jqx-listbox");d+=" "+this.toThemeProperty("jqx-widget-content");if(this.isTouchDevice()){d+=" "+this.toThemeProperty("jqx-touch");d+=" "+this.toThemeProperty("jqx-listitem-state-normal-touch")}o.className=d;if(this.autoItemsHeight){o.style.whiteSpace="pre-line";var b=this.checkboxes?-20:0;o.style.width=(b+j)+"px"}if(s.html==null||(s.label==""||s.label==null)){o.innerHTML="Item"}else{if(s.html!=null&&s.html.toString().length>0){o.innerHTML=s.html}else{if(s.label!=null||s.value!=null){if(s.label!=null){if(s.label.toString().match(new RegExp("\\w"))!=null||s.label.toString().match(new RegExp("\\d"))!=null){o.innerHTML=s.label}else{o.innerHTML="Item"}}else{o.innerHTML=s.value}}}}var r=1+o.offsetHeight;if(this.itemHeight>-1){r=this.itemHeight}m=r}if(u!=undefined){f=u}if(s.html!=null&&s.html.toString().length>0){u=Math.max(u,s.html.toString().length);if(f!=u){c=s.html}}else{if(s.label!=null){u=Math.max(u,s.label.length);if(f!=u){c=s.label}}else{if(s.value!=null){u=Math.max(u,s.value.length);if(f!=u){c=s.value}}}}s.height=m;n+=m;if(n<=i){h++}}o.innerHTML=c;p=o.offsetWidth}n+=2;if(h<10){h=10}if(this.filterable){n+=this.filterHeight}o.parentNode.removeChild(o);return{width:p,height:n,itemsPerPage:h}},_getVirtualItemsCount:function(){if(this.virtualItemsCount==0){var b=parseInt(this.host.height())/5;if(b>this.items.length){b=this.items.length}return b}else{return this.virtualItemsCount}},_addItems:function(r){if(this._renderOnDemand){return}var v=this;if(v.updatingListBox==true){return}if(v.items==undefined||v.items.length==0){v.virtualSize={width:0,height:0,itemsPerPage:0};v._updatescrollbars();v.renderedVisibleItems=new Array();if(v.itemswrapper){v.itemswrapper.children().remove()}return}var h=v.host.height();if(r==false){var b=v._calculateVirtualSize(h);var g=b.itemsPerPage*2;if(v.autoHeight){g=v.items.length}v.virtualItemsCount=Math.min(g,v.items.length);var q=b.width;v.virtualSize=b;v._updatescrollbars();return}var n=this;var l=0;v.visibleItems=new Array();v.renderedVisibleItems=new Array();v._removeHandlers();if(v.allowDrag&&v._enableDragDrop){v.itemswrapper=null}if(v.itemswrapper==null){v.content[0].innerHTML="";v.itemswrapper=a('<div style="outline: 0 none; overflow:hidden; width:100%; position: relative;"></div>');v.itemswrapper[0].style.height=(2*h)+"px";v.content[0].appendChild(v.itemswrapper[0])}var b=v._calculateVirtualSize(h);var g=b.itemsPerPage*2;if(v.autoHeight){g=v.items.length}v.virtualItemsCount=Math.min(g,v.items.length);var v=this;var q=b.width;v.virtualSize=b;var c=Math.max(v.host.width(),17+b.width);v.itemswrapper[0].style.width=c+"px";var e=0;var i="";var f=a.jqx.browser.msie&&a.jqx.browser.version<9;var s=f?' unselectable="on"':"";for(var j=e;j<v.virtualItemsCount;j++){var u=v.items[j];var p="listitem"+j+v.element.id;i+="<div"+s+" role='option' id='"+p+"' class='jqx-listitem-element'>";if(v.checkboxes){i+='<div style="background-color: transparent; padding: 0; margin: 0; position: absolute; float: left; width: 16px; height: 16px;" class="chkbox">';var o='<div class="'+v.toThemeProperty("jqx-checkbox-default")+" "+v.toThemeProperty("jqx-fill-state-normal")+" "+v.toThemeProperty("jqx-rc-all")+'"><div style="cursor: pointer; width: 13px; height: 13px;">';var w=u.checked?" "+v.toThemeProperty("jqx-checkbox-check-checked"):"";o+='<span style="width: 13px; height: 13px;" class="checkBoxCheck'+w+'"></span>';o+="</div></div>";i+=o;i+="</div>"}i+="<span"+s+" style='white-space: pre; -ms-touch-action: none;'></span></div>"}if(n.WinJS){v.itemswrapper.html(i)}else{v.itemswrapper[0].innerHTML=i}var d=v.itemswrapper.children();for(var j=e;j<v.virtualItemsCount;j++){var u=v.items[j];var t=a(d[j]);if(v.allowDrag&&v._enableDragDrop){t.addClass("draggable")}if(v.checkboxes){var k=a(t.children()[0]);t.css("float","left");var m=a(t[0].firstChild);m.css("float","left")}t[0].style.height=u.height+"px";t[0].style.top=l+"px";l+=u.height;v.visualItems[j]=t}v._addHandlers();v._updatescrollbars();if(v.autoItemsHeight){var b=v._calculateVirtualSize(h);var g=b.itemsPerPage*2;if(v.autoHeight){g=v.items.length}v.virtualItemsCount=Math.min(g,v.items.length);var v=this;var q=b.width;v.virtualSize=b;v._updatescrollbars()}if(a.jqx.browser.msie&&a.jqx.browser.version<8){v.host.attr("hideFocus",true);v.host.find("div").attr("hideFocus",true)}},_updatescrollbars:function(){var k=this;if(!k.virtualSize){return}var n=k.virtualSize.height;var j=k.virtualSize.width;var f=k.vScrollInstance;var e=k.hScrollInstance;k._arrange(false);var l=false;var o=k.host.outerWidth();var m=k.host.outerHeight();var b=0;if(j>o){b=k.hScrollBar.outerHeight()+2}if(n+b>m){var d=f.max;f.max=2+parseInt(n)+b-parseInt(m-2);if(k.vScrollBar[0].style.visibility!="inherit"){k.vScrollBar[0].style.visibility="inherit";l=true}if(d!=f.max){f._arrange()}}else{if(k.vScrollBar[0].style.visibility!="hidden"){k.vScrollBar[0].style.visibility="hidden";l=true;f.setPosition(0)}}var h=0;if(k.vScrollBar[0].style.visibility!="hidden"){h=k.scrollBarSize+6}var g=k.checkboxes?20:0;if(k.autoItemsHeight){k.hScrollBar[0].style.visibility="hidden"}else{if(j>=o-h-g){var i=e.max;if(k.vScrollBar[0].style.visibility=="inherit"){e.max=g+h+parseInt(j)-k.host.width()+4}else{e.max=g+parseInt(j)-k.host.width()+6}if(k.hScrollBar[0].style.visibility!="inherit"){k.hScrollBar[0].style.visibility="inherit";l=true}if(i!=e.max){e._arrange()}if(k.vScrollBar[0].style.visibility=="inherit"){f.max=2+parseInt(n)+k.hScrollBar.outerHeight()+2-parseInt(k.host.height())}}else{if(k.hScrollBar[0].style.visibility!="hidden"){k.hScrollBar[0].style.visibility="hidden";l=true}}}e.setPosition(0);if(l){k._arrange()}if(k.itemswrapper){k.itemswrapper[0].style.width=Math.max(0,Math.max(o-2,17+j))+"px";k.itemswrapper[0].style.height=Math.max(0,2*m)+"px"}var c=k.isTouchDevice();if(c){if(k.vScrollBar.css("visibility")!="visible"&&k.hScrollBar.css("visibility")!="visible"){a.jqx.mobile.setTouchScroll(false,k.element.id)}else{a.jqx.mobile.setTouchScroll(true,k.element.id)}}},clear:function(){this.source=null;this.clearSelection();this.refresh()},clearSelection:function(b){for(var c=0;c<this.selectedIndexes.length;c++){if(this.selectedIndexes[c]&&this.selectedIndexes[c]!=-1){this._raiseEvent("1",{index:c,type:"api",item:this.getVisibleItem(c),originalEvent:null})}this.selectedIndexes[c]=-1}this.selectedIndex=-1;this.selectedValue=null;this.selectedValues=new Array();if(b!=false){this._renderItems()}},unselectIndex:function(c,d){if(isNaN(c)){return}this.selectedIndexes[c]=-1;var g=false;for(var e=0;e<this.selectedIndexes.length;e++){var b=this.selectedIndexes[e];if(b!=-1&&b!=undefined){g=true}}if(!g){this.selectedValue=null;this.selectedIndex=-1;var f=this.getVisibleItem(c);if(f){if(this.selectedValues[f.value]){this.selectedValues[f.value]=null}}}if(d==undefined||d==true){this._renderItems();this._raiseEvent("1",{index:c,type:"api",item:this.getVisibleItem(c),originalEvent:null})}this._updateInputSelection();this._raiseEvent("2",{index:c,type:"api",item:this.getItem(c)})},getInfo:function(){var d=this;var c=this.getItems();var b=this.getVisibleItems();var e=function(){var h=d.vScrollInstance.value;if(d.filterable){h-=d.filterHeight}var m=new Array();for(var g=0;g<b.length;g++){var j=b[g];if(j){var f=j.initialTop;var l=j.height;var k=true;if(f+l-h<0||f-h>=d.host.height()){k=false}if(k){m.push(j)}}}return m}();return{items:c,visibleItems:b,viewItems:e}},getItem:function(c){if(c==-1||isNaN(c)||typeof(c)==="string"){if(c===-1){return null}return this.getItemByValue(c)}var b=null;var d=a.each(this.items,function(){if(this.index==c){b=this;return false}});return b},getVisibleItem:function(b){if(b==-1||isNaN(b)||typeof(b)==="string"){if(b===-1){return null}return this.getItemByValue(b)}return this.visibleItems[b]},getVisibleItems:function(){return this.visibleItems},checkIndex:function(b,c,e){if(!this.checkboxes){return}if(isNaN(b)){return}if(b<0||b>=this.visibleItems.length){return}if(this.visibleItems[b]!=null&&this.visibleItems[b].disabled){return}if(this.disabled){return}var d=this.getItem(b);if(this.groups.length>0||this.filterable){var d=this.getVisibleItem(b)}if(d!=null){var f=a(d.checkBoxElement);d.checked=true;if(c==undefined||c==true){this._updateCheckedItems()}}if(e==undefined||e==true){this._raiseEvent(3,{label:d.label,value:d.value,checked:true,item:d})}},getCheckedItems:function(){if(!this.checkboxes){return null}var b=new Array();if(this.items==undefined){return}a.each(this.items,function(){if(this.checked){b[b.length]=this}});return b},checkAll:function(b){if(!this.checkboxes){return}if(this.disabled){return}var c=this;a.each(this.items,function(){var d=this;if(b!==false&&d.checked!==true){c._raiseEvent(3,{label:d.label,value:d.value,checked:true,item:d})}this.checked=true});this._updateCheckedItems()},uncheckAll:function(b){if(!this.checkboxes){return}if(this.disabled){return}var c=this;a.each(this.items,function(){var d=this;if(b!==false&&d.checked!==false){this.checked=false;c._raiseEvent(3,{label:d.label,value:d.value,checked:false,item:d})}this.checked=false});this._updateCheckedItems()},uncheckIndex:function(b,c,e){if(!this.checkboxes){return}if(isNaN(b)){return}if(b<0||b>=this.visibleItems.length){return}if(this.visibleItems[b]!=null&&this.visibleItems[b].disabled){return}if(this.disabled){return}var d=this.getItem(b);if(this.groups.length>0||this.filterable){var d=this.getVisibleItem(b)}if(d!=null){var f=a(d.checkBoxElement);d.checked=false;if(c==undefined||c==true){this._updateCheckedItems()}}if(e==undefined||e==true){this._raiseEvent(3,{label:d.label,value:d.value,checked:false,item:d})}},indeterminateIndex:function(b,c,e){if(!this.checkboxes){return}if(isNaN(b)){return}if(b<0||b>=this.visibleItems.length){return}if(this.visibleItems[b]!=null&&this.visibleItems[b].disabled){return}if(this.disabled){return}var d=this.getItem(b);if(this.groups.length>0||this.filterable){var d=this.getVisibleItem(b)}if(d!=null){var f=a(d.checkBoxElement);d.checked=null;if(c==undefined||c==true){this._updateCheckedItems()}}if(e==undefined||e==true){this._raiseEvent(3,{checked:null})}},getSelectedIndex:function(){return this.selectedIndex},getSelectedItems:function(){var b=this.getVisibleItems();var e=this.selectedIndexes;var d=[];for(var c in e){if(e[c]!=-1){d[d.length]=b[c]}}return d},getSelectedItem:function(){var b=this.getSelectedItems();if(b&&b.length>0){return b[0]}return null},_updateCheckedItems:function(){var b=this.selectedIndex;this.clearSelection(false);var c=this.getCheckedItems();this.selectedIndex=b;this._renderItems();var d=a.data(this.element,"hoveredItem");if(d!=null){a(d).addClass(this.toThemeProperty("jqx-listitem-state-hover"));a(d).addClass(this.toThemeProperty("jqx-fill-state-hover"))}this._updateInputSelection()},getItemByValue:function(d){if(this.visibleItems==null){return}if(d&&d.value){d=d.value}if(this.itemsByValue){return this.itemsByValue[a.trim(d).split(" ").join("_")]}var b=this.visibleItems;for(var c=0;c<b.length;c++){if(b[c].value==d){return b[c];break}}},checkItem:function(c){if(c!=null){var b=this._getItemByParam(c);return this.checkIndex(b.visibleIndex,true)}return false},uncheckItem:function(c){if(c!=null){var b=this._getItemByParam(c);return this.uncheckIndex(b.visibleIndex,true)}return false},indeterminateItem:function(c){if(c!=null){var b=this._getItemByParam(c);return this.indeterminateIndex(b.visibleIndex,true)}return false},val:function(c){if(!this.input){return}var d=function(f){for(var e in f){if(f.hasOwnProperty(e)){return false}}if(typeof c=="number"){return false}if(typeof c=="date"){return false}if(typeof c=="boolean"){return false}if(typeof c=="string"){return false}return true};if(d(c)||arguments.length==0){return this.input.val()}var b=this.getItemByValue(c);if(b!=null){this.selectItem(b)}if(this.input){return this.input.val()}},selectItem:function(c){if(c!=null){if(c.index==undefined){var b=this.getItemByValue(c);if(b){c=b}}return this.selectIndex(c.visibleIndex,true)}return false},unselectItem:function(c){if(c!=null){if(c.index==undefined){var b=this.getItemByValue(c);if(b){c=b}}return this.unselectIndex(c.visibleIndex,true)}return false},selectIndex:function(j,r,c,d,m,b){if(isNaN(j)){return}var q=this.selectedIndex;if(this.filterable){this.selectedIndex=-1}if(j<-1||j>=this.visibleItems.length){return}if(this.visibleItems[j]!=null&&this.visibleItems[j].disabled){return}if(this.disabled){return}if(!this.multiple&&!this.multipleextended&&this.selectedIndex==j&&!d&&!this.checkboxes){if(this.visibleItems&&this.items&&this.visibleItems.length!=this.items.length){h=this.getVisibleItem(j);if(h){this.selectedValue=h.value;this.selectedValues[h.value]=h.value}}return}if(this.checkboxes){this._updateCheckedItems();var p=q;if(this.selectedIndex==j&&!this.multiple){p=-1}if(m==undefined){m="none"}var h=this.getItem(j);var s=this.getItem(p);if(this.visibleItems&&this.items&&this.visibleItems.length!=this.items.length){h=this.getVisibleItem(j);s=this.getVisibleItem(p)}this._raiseEvent("1",{index:p,type:m,item:s,originalEvent:b});this.selectedIndex=j;this.selectedIndexes[p]=-1;this.selectedIndexes[j]=j;if(h){this.selectedValue=h.value;this.selectedValues[h.value]=h.value}this._raiseEvent("0",{index:j,type:m,item:h,originalEvent:b});this._renderItems();return}this.focused=true;var o=false;if(this.selectedIndex!=j){o=true}var p=q;if(this.selectedIndex==j&&!this.multiple){p=-1}if(m==undefined){m="none"}var h=this.getItem(j);var s=this.getItem(p);if(this.visibleItems&&this.items&&this.visibleItems.length!=this.items.length){h=this.getVisibleItem(j);s=this.getVisibleItem(p)}if(d!=undefined&&d){this._raiseEvent("1",{index:p,type:m,item:s,originalEvent:b});this.selectedIndex=j;this.selectedIndexes[p]=-1;this.selectedIndexes[j]=j;if(h){this.selectedValue=h.value;this.selectedValues[h.value]=h.value}this._raiseEvent("0",{index:j,type:m,item:h,originalEvent:b})}else{var l=this;var e=function(t,x,v,w,u,i){l._raiseEvent("1",{index:x,type:v,item:w,originalEvent:i});l.selectedIndex=t;l.selectedIndexes=[];x=t;l.selectedIndexes[t]=t;l.selectedValues=new Array();if(u){l.selectedValues[u.value]=u.value}l._raiseEvent("0",{index:t,type:v,item:u,originalEvent:i})};var k=function(t,x,v,w,u,i){if(l.selectedIndexes[t]==undefined||l.selectedIndexes[t]==-1){l.selectedIndexes[t]=t;l.selectedIndex=t;if(u){l.selectedValues[u.value]=u.value;l._raiseEvent("0",{index:t,type:v,item:u,originalEvent:i})}}else{x=l.selectedIndexes[t];w=l.getVisibleItem(x);if(w){l.selectedValues[w.value]=null}l.selectedIndexes[t]=-1;l.selectedIndex=-1;l._raiseEvent("1",{index:x,type:v,item:w,originalEvent:i})}};if(this.multipleextended){if(!this._shiftKey&&!this._ctrlKey){if(m!="keyboard"&&m!="mouse"){k(j,p,m,s,h,b);l._clickedIndex=j}else{this.clearSelection(false);l._clickedIndex=j;e(j,p,m,s,h,b)}}else{if(this._ctrlKey){if(m=="keyboard"){this.clearSelection(false);l._clickedIndex=j}k(j,p,m,s,h,b)}else{if(this._shiftKey){if(l._clickedIndex==undefined){l._clickedIndex=p}var f=Math.min(l._clickedIndex,j);var n=Math.max(l._clickedIndex,j);this.clearSelection(false);for(var g=f;g<=n;g++){l.selectedIndexes[g]=g;l.selectedValues[l.getVisibleItem(g).value]=l.getVisibleItem(g).value;l._raiseEvent("0",{index:g,type:m,item:this.getVisibleItem(g),originalEvent:b})}if(m!="keyboard"){l.selectedIndex=l._clickedIndex}else{l.selectedIndex=j}}}}}else{if(this.multiple){k(j,p,m,s,h,b)}else{if(h){this.selectedValue=h.value}e(j,p,m,s,h,b)}}}if(c==undefined||c==true){this._renderItems()}if(r!=undefined&&r!=null&&r==true){this.ensureVisible(j)}this._raiseEvent("2",{index:j,item:h,oldItem:s,type:m,originalEvent:b});this._updateInputSelection();return o},_updateInputSelection:function(){this._syncSelection();var c=new Array();if(this.input){if(this.selectedIndex==-1){this.input.val("")}else{if(this.items){if(this.items[this.selectedIndex]!=undefined){this.input.val(this.items[this.selectedIndex].value);c.push(this.items[this.selectedIndex].value)}}}if(this.multiple||this.multipleextended||this.checkboxes){var b=!this.checkboxes?this.getSelectedItems():this.getCheckedItems();var e="";if(b){for(var d=0;d<b.length;d++){if(undefined!=b[d]){if(d==b.length-1){e+=b[d].value}else{e+=b[d].value+","}c.push(b[d].value)}}this.input.val(e)}}}if(this.field&&this.input){if(this.field.nodeName.toLowerCase()=="select"){a.each(this.field,function(f,g){a(this).removeAttr("selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this).attr("selected",true)}})}else{a.each(this.items,function(f,g){a(this.originalItem.originalItem).removeAttr("data-selected");this.selected=c.indexOf(this.value)>=0;if(this.selected){a(this.originalItem.originalItem).attr("data-selected",true)}})}}},isIndexInView:function(c){if(isNaN(c)){return false}if(!this.items){return false}if(c<0||c>=this.items.length){return false}var e=this.vScrollInstance.value;var d=0;if(this.filterable){d=this.filterHeight}var f=this.visibleItems[c];if(f==undefined){return true}var b=f.initialTop;var g=f.height;if(b-e<d||b-e+d+g>=this.host.outerHeight()){return false}return true},_itemsInPage:function(){var b=0;var c=this;if(this.items){a.each(this.items,function(){if((this.initialTop+this.height)>=c.content.height()){return false}b++})}return b},_firstItemIndex:function(){if(this.visibleItems!=null){if(this.visibleItems[0]){if(this.visibleItems[0].isGroup){return this._nextItemIndex(0)}else{return 0}}else{return 0}}return -1},_lastItemIndex:function(){if(this.visibleItems!=null){if(this.visibleItems[this.visibleItems.length-1]){if(this.visibleItems[this.visibleItems.length-1].isGroup){return this._prevItemIndex(this.visibleItems.length-1)}else{return this.visibleItems.length-1}}else{return this.visibleItems.length-1}}return -1},_nextItemIndex:function(b){for(indx=b+1;indx<this.visibleItems.length;indx++){if(this.visibleItems[indx]){if(!this.visibleItems[indx].disabled&&!this.visibleItems[indx].isGroup){return indx}}}return -1},_prevItemIndex:function(b){for(indx=b-1;indx>=0;indx--){if(this.visibleItems[indx]){if(!this.visibleItems[indx].disabled&&!this.visibleItems[indx].isGroup){return indx}}}return -1},clearFilter:function(){this.filterInput.val("");this._updateItemsVisibility("")},_search:function(c){var b=this;var d=b.filterInput.val();if(c.keyCode==9){return}if(b.searchMode=="none"||b.searchMode==null||b.searchMode=="undefined"){return}if(c.keyCode==16||c.keyCode==17||c.keyCode==20){return}if(c.keyCode==37||c.keyCode==39){return false}if(c.altKey||c.keyCode==18){return}if(c.keyCode>=33&&c.keyCode<=40){return}if(c.ctrlKey||c.metaKey||b.ctrlKey){if(c.keyCode!=88&&c.keyCode!=86){return}}if(d===b.searchString){return}b._updateItemsVisibility(d)},_updateItemsVisibility:function(h){var e=this.getItems();if(e==undefined){return{index:-1,matchItem:new Array()}}var f=this;var d=-1;var i=new Array();var g=0;a.each(e,function(k){var m="";if(!this.isGroup){if(this.searchLabel){m=this.searchLabel}else{if(this.label){m=this.label}else{if(this.value){m=this.value}else{if(this.title){m=this.title}else{m="jqxItem"}}}}m=m.toString();var l=false;switch(f.searchMode){case"containsignorecase":l=a.jqx.string.containsIgnoreCase(m,h);break;case"contains":l=a.jqx.string.contains(m,h);break;case"equals":l=a.jqx.string.equals(m,h);break;case"equalsignorecase":l=a.jqx.string.equalsIgnoreCase(m,h);break;case"startswith":l=a.jqx.string.startsWith(m,h);break;case"startswithignorecase":l=a.jqx.string.startsWithIgnoreCase(m,h);break;case"endswith":l=a.jqx.string.endsWith(m,h);break;case"endswithignorecase":l=a.jqx.string.endsWithIgnoreCase(m,h);break}if(!l){this.visible=false}if(l){i[g++]=this;this.visible=true;d=this.visibleIndex}if(h==""){this.visible=true;l=false}}});f.renderedVisibleItems=new Array();f.visibleItems=new Array();f.vScrollInstance.setPosition(0,true);f._addItems(false);f._renderItems();for(var b=0;b<f.items.length;b++){f.selectedIndexes[b]=-1}f.selectedIndex=-1;for(var c in f.selectedValues){var h=f.selectedValues[c];var j=f.getItemByValue(h);if(j){if(j.visible){f.selectedIndex=j.visibleIndex;f.selectedIndexes[j.visibleIndex]=j.visibleIndex}}}f._syncSelection()},_getMatches:function(g,d){if(g==undefined||g.length==0){return -1}if(d==undefined){d=0}var b=this.getItems();var f=this;var c=-1;var e=0;a.each(b,function(h){var k="";if(!this.isGroup){if(this.searchLabel){k=this.searchLabel.toString()}else{if(this.label){k=this.label.toString()}else{if(this.value){k=this.value.toString()}else{if(this.title){k=this.title.toString()}else{k="jqxItem"}}}}var j=false;switch(f.searchMode){case"containsignorecase":j=a.jqx.string.containsIgnoreCase(k,g);break;case"contains":j=a.jqx.string.contains(k,g);break;case"equals":j=a.jqx.string.equals(k,g);break;case"equalsignorecase":j=a.jqx.string.equalsIgnoreCase(k,g);break;case"startswith":j=a.jqx.string.startsWith(k,g);break;case"startswithignorecase":j=a.jqx.string.startsWithIgnoreCase(k,g);break;case"endswith":j=a.jqx.string.endsWith(k,g);break;case"endswithignorecase":j=a.jqx.string.endsWithIgnoreCase(k,g);break}if(j&&this.visibleIndex>=d){c=this.visibleIndex;return false}}});return c},findItems:function(e){var b=this.getItems();var d=this;var c=0;var f=new Array();a.each(b,function(g){var j="";if(!this.isGroup){if(this.label){j=this.label}else{if(this.value){j=this.value}else{if(this.title){j=this.title}else{j="jqxItem"}}}var h=false;switch(d.searchMode){case"containsignorecase":h=a.jqx.string.containsIgnoreCase(j,e);break;case"contains":h=a.jqx.string.contains(j,e);break;case"equals":h=a.jqx.string.equals(j,e);break;case"equalsignorecase":h=a.jqx.string.equalsIgnoreCase(j,e);break;case"startswith":h=a.jqx.string.startsWith(j,e);break;case"startswithignorecase":h=a.jqx.string.startsWithIgnoreCase(j,e);break;case"endswith":h=a.jqx.string.endsWith(j,e);break;case"endswithignorecase":h=a.jqx.string.endsWithIgnoreCase(j,e);break}if(h){f[c++]=this}}});return f},_syncSelection:function(){var d=this;if(d.filterable){if(d.items){for(var b=0;b<d.items.length;b++){var c=d.items[b];c.selected=false}}for(var b=0;b<d.visibleItems.length;b++){var c=d.visibleItems[b];if(d.selectedIndexes&&d.selectedIndexes[b]==c.visibleIndex){c.selected=true}}if(d.itemswrapper){d._renderItems()}}},_handleKeyDown:function(n){var s=n.keyCode;var k=this;var g=k.selectedIndex;var d=k.selectedIndex;var l=false;if(!this.keyboardNavigation||!this.enableSelection){return}if(this.filterInput&&n.target==this.filterInput[0]){return}var j=function(){if(k.multiple||k.checkboxes){k.clearSelection(false)}};if(n.altKey){s=-1}if(s==32&&this.checkboxes){var f=this.getItem(g);if(f!=null){k._updateItemCheck(f,g);n.preventDefault()}k._searchString="";k.selectIndex(f.visibleIndex,false,true,true,"keyboard",n);k._renderItems();return}if(k.incrementalSearch){var o=-1;if(!k._searchString){k._searchString=""}if((s==8||s==46)&&k._searchString.length>=1){k._searchString=k._searchString.substr(0,k._searchString.length-1)}var r=String.fromCharCode(s);var m=(!isNaN(parseInt(r)));var i=false;if((s>=65&&s<=97)||m||s==8||s==32||s==46){if(!n.shiftKey){r=r.toLocaleLowerCase()}var e=1+k.selectedIndex;if(s!=8&&s!=32&&s!=46){if(k._searchString.length>0&&k._searchString.substr(0,1)==r){e=1+k.selectedIndex}else{k._searchString+=r}}if(s==32){k._searchString+=" "}var b=this._getMatches(k._searchString,e);o=b;if(o==k._lastMatchIndex||o==-1){var b=this._getMatches(k._searchString,0);o=b}k._lastMatchIndex=o;if(o>=0){var h=function(){j();k.selectIndex(o,false,false,false,"keyboard",n);var t=k.isIndexInView(o);if(!t){k.ensureVisible(o)}else{k._renderItems()}};if(k._toSelectTimer){clearTimeout(k._toSelectTimer)}k._toSelectTimer=setTimeout(function(){h()},k.incrementalSearchKeyDownDelay)}i=true}if(k._searchTimer!=undefined){clearTimeout(k._searchTimer)}if(s==27||s==13){k._searchString=""}k._searchTimer=setTimeout(function(){k._searchString="";k._renderItems()},k.incrementalSearchDelay);if(o>=0){return}if(i){return false}}if(s==33){var p=k._itemsInPage();if(k.selectedIndex-p>=0){j();k.selectIndex(d-p,false,false,false,"keyboard",n)}else{j();k.selectIndex(k._firstItemIndex(),false,false,false,"keyboard",n)}k._searchString=""}if(s==32&&this.checkboxes){var f=this.getItem(g);if(f!=null){k._updateItemCheck(f,g);n.preventDefault()}k._searchString=""}if(s==36){j();k.selectIndex(k._firstItemIndex(),false,false,false,"keyboard",n);k._searchString=""}if(s==35){j();k.selectIndex(k._lastItemIndex(),false,false,false,"keyboard",n);k._searchString=""}if(s==34){var p=k._itemsInPage();if(k.selectedIndex+p<k.visibleItems.length){j();k.selectIndex(d+p,false,false,false,"keyboard",n)}else{j();k.selectIndex(k._lastItemIndex(),false,false,false,"keyboard",n)}k._searchString=""}if(s==38){k._searchString="";if(k.selectedIndex>0){var c=k._prevItemIndex(k.selectedIndex);if(c!=k.selectedIndex&&c!=-1){j();k.selectIndex(c,false,false,false,"keyboard",n)}else{return true}}else{return false}}else{if(s==40){k._searchString="";if(k.selectedIndex+1<k.visibleItems.length){var c=k._nextItemIndex(k.selectedIndex);if(c!=k.selectedIndex&&c!=-1){j();k.selectIndex(c,false,false,false,"keyboard",n)}else{return true}}else{return false}}}if(s==35||s==36||s==38||s==40||s==34||s==33){var q=k.isIndexInView(k.selectedIndex);if(!q){k.ensureVisible(k.selectedIndex)}else{k._renderItems()}return false}return true},_updateItemCheck:function(b,c){if(this.disabled){return}if(b.checked==true){b.checked=(b.hasThreeStates&&this.hasThreeStates)?null:false}else{b.checked=b.checked!=null}switch(b.checked){case true:this.checkIndex(c);break;case false:this.uncheckIndex(c);break;default:this.indeterminateIndex(c);break}},wheel:function(d,c){if(c.autoHeight||!c.enableMouseWheel){d.returnValue=true;return true}if(c.disabled){return true}var e=0;if(!d){d=window.event}if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(b){if(d.preventDefault){d.preventDefault()}if(d.originalEvent!=null){d.originalEvent.mouseHandled=true}if(d.stopPropagation!=undefined){d.stopPropagation()}}if(b){b=false;d.returnValue=b;return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(d){var c=this.vScrollInstance.value;if(d<0){this.scrollDown()}else{this.scrollUp()}var b=this.vScrollInstance.value;if(c!=b){return true}return false},focus:function(){try{this.focused=true;this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},_removeHandlers:function(){var b=this;this.removeHandler(a(document),"keydown.listbox"+this.element.id);this.removeHandler(a(document),"keyup.listbox"+this.element.id);this.removeHandler(this.vScrollBar,"valueChanged");this.removeHandler(this.hScrollBar,"valueChanged");if(this._mousewheelfunc){this.removeHandler(this.host,"mousewheel",this._mousewheelfunc)}else{this.removeHandler(this.host,"mousewheel")}this.removeHandler(this.host,"keydown");this.removeHandler(this.content,"mouseleave");this.removeHandler(this.content,"focus");this.removeHandler(this.content,"blur");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur");this.removeHandler(this.content,"mouseenter");this.removeHandler(this.content,"mouseup");this.removeHandler(this.content,"mousedown");this.removeHandler(this.content,"touchend");if(this._mousemovefunc){this.removeHandler(this.content,"mousemove",this._mousemovefunc)}else{this.removeHandler(this.content,"mousemove")}this.removeHandler(this.content,"selectstart");if(this.overlayContent){this.removeHandler(this.overlayContent,a.jqx.mobile.getTouchEventName("touchend"))}},_updateSize:function(){if(!this.virtualSize){this._oldheight=null;this.virtualSize=this._calculateVirtualSize()}var b=this;b._arrange();if(b.host.height()!=b._oldheight||b.host.width()!=b._oldwidth){var c=b.host.width()!=b._oldwidth;if(b.autoItemsHeight){b._render(false)}else{if(b.items){if(b.items.length>0&&b.virtualItemsCount*b.items[0].height<b._oldheight-2){b._render(false)}else{var d=b.vScrollInstance.value;b._updatescrollbars();b._renderItems();if(d<b.vScrollInstance.max){b.vScrollInstance.setPosition(d)}else{b.vScrollInstance.setPosition(b.vScrollInstance.max)}}}}b._oldwidth=b.host.width();b._oldheight=b.host.height()}},_addHandlers:function(){var l=this;this.focused=false;var m=false;var j=0;var g=null;var j=0;var b=0;var h=new Date();var e=this.isTouchDevice();this.addHandler(this.vScrollBar,"valueChanged",function(n){if(a.jqx.browser.msie&&a.jqx.browser.version>9){setTimeout(function(){l._renderItems()},1)}else{l._renderItems()}});this.addHandler(this.hScrollBar,"valueChanged",function(){l._renderItems()});if(this._mousewheelfunc){this.removeHandler(this.host,"mousewheel",this._mousewheelfunc)}this._mousewheelfunc=function(n){l.wheel(n,l)};this.addHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(a(document),"keydown.listbox"+this.element.id,function(n){l._ctrlKey=n.ctrlKey||n.metaKey;l._shiftKey=n.shiftKey});this.addHandler(a(document),"keyup.listbox"+this.element.id,function(n){l._ctrlKey=n.ctrlKey||n.metaKey;l._shiftKey=n.shiftKey});this.addHandler(this.host,"keydown",function(n){return l._handleKeyDown(n)});this.addHandler(this.content,"mouseleave",function(n){l.focused=false;var o=a.data(l.element,"hoveredItem");if(o!=null){a(o).removeClass(l.toThemeProperty("jqx-listitem-state-hover"));a(o).removeClass(l.toThemeProperty("jqx-fill-state-hover"));a.data(l.element,"hoveredItem",null)}});this.addHandler(this.content,"focus",function(n){if(!l.disabled){l.host.addClass(l.toThemeProperty("jqx-fill-state-focus"));l.focused=true}});this.addHandler(this.content,"blur",function(n){l.focused=false;l.host.removeClass(l.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"focus",function(n){if(!l.disabled){l.host.addClass(l.toThemeProperty("jqx-fill-state-focus"));l.focused=true}});this.addHandler(this.host,"blur",function(n){if(a.jqx.browser.msie&&a.jqx.browser.version<9&&l.focused){return}l.host.removeClass(l.toThemeProperty("jqx-fill-state-focus"));l.focused=false});this.addHandler(this.content,"mouseenter",function(n){l.focused=true});var c=a.jqx.utilities.hasTransform(this.host);if(this.enableSelection){var f=l.isTouchDevice()&&this.touchMode!==true;var i=!f?"mousedown":"touchend";var k=!f?"mouseup":"touchend";if(this.overlayContent){this.addHandler(this.overlayContent,a.jqx.mobile.getTouchEventName("touchend"),function(p){if(!l.enableSelection){return true}if(f){l._newScroll=new Date();if(l._newScroll-l._lastScroll<500){return true}}var s=a.jqx.mobile.getTouches(p);var t=s[0];if(t!=undefined){var n=l.host.offset();var r=parseInt(t.pageX);var q=parseInt(t.pageY);if(l.touchMode==true){if(t._pageX!=undefined){r=parseInt(t._pageX);q=parseInt(t._pageY)}}r=r-n.left;q=q-n.top;var o=l._hitTest(r,q);if(o!=null&&!o.isGroup){l._newScroll=new Date();if(l._newScroll-l._lastScroll<500){return false}if(l.checkboxes){l._updateItemCheck(o,o.visibleIndex);return}if(o.html.indexOf("href")!=-1){setTimeout(function(){l.selectIndex(o.visibleIndex,false,true,false,"mouse",p);l.content.trigger("click");return false},100)}else{l.selectIndex(o.visibleIndex,false,true,false,"mouse",p);if(p.preventDefault){p.preventDefault()}l.content.trigger("click");return false}}}})}else{var d=false;this.addHandler(this.content,i,function(n){if(!l.enableSelection){return true}d=true;if(f){l._newScroll=new Date();if(l._newScroll-l._lastScroll<500){return false}}l.focused=true;if(!l.isTouchDevice()&&l.focusable){l.host.focus()}if(n.target.id!=("listBoxContent"+l.element.id)&&l.itemswrapper[0]!=n.target){var r=n.target;var z=a(r).offset();var q=l.host.offset();if(c){var o=a.jqx.mobile.getLeftPos(r);var t=a.jqx.mobile.getTopPos(r);z.left=o;z.top=t;o=a.jqx.mobile.getLeftPos(l.element);t=a.jqx.mobile.getTopPos(l.element);q.left=o;q.top=t}var s=parseInt(z.top)-parseInt(q.top);var v=parseInt(z.left)-parseInt(q.left);var w=l._hitTest(v,s);if(w!=null&&!w.isGroup){var p=function(y,x){if(!l._shiftKey){l._clickedIndex=y.visibleIndex}if(!l.checkboxes){l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}else{v=20+x.pageX-z.left;if(l.rtl){var A=l.hScrollBar.css("visibility")!="hidden"?l.hScrollInstance.max:l.host.width();if(v<=l.host.width()-20){if(!l.allowDrag){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}else{setTimeout(function(){if(!l._dragItem){if(!d){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}}},200)}}}else{if(v+l.hScrollInstance.value>=20){if(!l.allowDrag){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}else{setTimeout(function(){if(!l._dragItem){if(!d){l._updateItemCheck(y,y.visibleIndex);l.selectIndex(y.visibleIndex,false,true,false,"mouse",x)}}},200)}}}}};if(!w.disabled){if(w.html.indexOf("href")!=-1){setTimeout(function(){p(w,n)},100)}else{p(w,n)}}}if(i=="mousedown"){var u=false;if(n.which){u=(n.which==3)}else{if(n.button){u=(n.button==2)}}if(u){return true}return false}}return true})}this.addHandler(this.content,"mouseup",function(n){l.vScrollInstance.handlemouseup(l,n);d=false});if(a.jqx.browser.msie){this.addHandler(this.content,"selectstart",function(n){return false})}}var e=this.isTouchDevice();if(this.enableHover&&!e){this._mousemovefunc=function(n){if(e){return true}if(!l.enableHover){return true}var p=a.jqx.browser.msie==true&&a.jqx.browser.version<9?0:1;if(n.target==null){return true}if(l.disabled){return true}l.focused=true;var r=l.vScrollInstance.isScrolling();if(!r&&n.target.id!=("listBoxContent"+l.element.id)){if(l.itemswrapper[0]!=n.target){var t=n.target;var B=a(t).offset();var s=l.host.offset();if(c){var o=a.jqx.mobile.getLeftPos(t);var v=a.jqx.mobile.getTopPos(t);B.left=o;B.top=v;o=a.jqx.mobile.getLeftPos(l.element);v=a.jqx.mobile.getTopPos(l.element);s.left=o;s.top=v}var u=parseInt(B.top)-parseInt(s.top);var w=parseInt(B.left)-parseInt(s.left);var A=l._hitTest(w,u);if(A!=null&&!A.isGroup&&!A.disabled){var q=a.data(l.element,"hoveredItem");if(q!=null){a(q).removeClass(l.toThemeProperty("jqx-listitem-state-hover"));a(q).removeClass(l.toThemeProperty("jqx-fill-state-hover"))}a.data(l.element,"hoveredItem",A.element);var z=a(A.element);z.addClass(l.toThemeProperty("jqx-listitem-state-hover"));z.addClass(l.toThemeProperty("jqx-fill-state-hover"))}}}};this.addHandler(this.content,"mousemove",this._mousemovefunc)}},_arrange:function(u){if(u==undefined){u=true}var t=this;var p=null;var n=null;var g=t.filterable?t.filterHeight:0;var j=function(h){h=t.host.height();if(h==0){h=200;t.host.height(h)}return h};if(t.width!=null&&t.width.toString().indexOf("px")!=-1){p=t.width}else{if(t.width!=undefined&&!isNaN(t.width)){p=t.width}}if(t.height!=null&&t.height.toString().indexOf("px")!=-1){n=t.height}else{if(t.height!=undefined&&!isNaN(t.height)){n=t.height}}if(t.width!=null&&t.width.toString().indexOf("%")!=-1){t.host.css("width",t.width);p=t.host.width()}if(t.height!=null&&t.height.toString().indexOf("%")!=-1){t.host.css("height",t.height);n=j(n)}if(p!=null){p=parseInt(p);if(parseInt(t.element.style.width)!=parseInt(t.width)){t.host.width(t.width)}}if(!t.autoHeight){if(n!=null){n=parseInt(n);if(parseInt(t.element.style.height)!=parseInt(t.height)){t.host.height(t.height);j(n)}}}else{if(t.virtualSize){if(t.hScrollBar.css("visibility")!="hidden"){t.host.height(t.virtualSize.height+parseInt(t.scrollBarSize)+3);t.height=t.virtualSize.height+parseInt(t.scrollBarSize)+3;n=t.height}else{t.host.height(t.virtualSize.height);t.height=t.virtualSize.height;n=t.virtualSize.height}}}var c=t.scrollBarSize;if(isNaN(c)){c=parseInt(c);if(isNaN(c)){c="17px"}else{c=c+"px"}}c=parseInt(c);var m=4;var e=2;var f=1;if(t.vScrollBar){if(t.vScrollBar[0].style.visibility!="hidden"){f=c+m}else{t.vScrollInstance.setPosition(0)}}else{return}if(t.hScrollBar){if(t.hScrollBar[0].style.visibility!="hidden"){e=c+m}else{t.hScrollInstance.setPosition(0)}}else{return}if(t.autoItemsHeight){t.hScrollBar[0].style.visibility="hidden";e=0}if(n==null){n=0}var q=parseInt(n)-m-c;if(q<0){q=0}if(parseInt(t.hScrollBar[0].style.height)!=c){if(parseInt(c)<0){c=0}t.hScrollBar[0].style.height=parseInt(c)+"px"}if(t.hScrollBar[0].style.top!=q+"px"){t.hScrollBar[0].style.top=q+"px";t.hScrollBar[0].style.left="0px"}var b=p-c-m;if(b<0){b=0}var l=b+"px";if(t.hScrollBar[0].style.width!=l){t.hScrollBar[0].style.width=l}if(f<=1){if(p>=2){t.hScrollBar[0].style.width=parseInt(p-2)+"px"}}if(c!=parseInt(t.vScrollBar[0].style.width)){t.vScrollBar[0].style.width=parseInt(c)+"px"}if((parseInt(n)-e)!=parseInt(t.vScrollBar[0].style.height)){var s=parseInt(n)-e;if(s<0){s=0}t.vScrollBar[0].style.height=s+"px"}if(p==null){p=0}var d=parseInt(p)-parseInt(c)-m+"px";if(d!=t.vScrollBar[0].style.left){if(parseInt(d)>=0){t.vScrollBar[0].style.left=d}t.vScrollBar[0].style.top="0px"}var k=t.vScrollInstance;k.disabled=t.disabled;if(u){k._arrange()}var o=t.hScrollInstance;o.disabled=t.disabled;if(u){o._arrange()}if((t.vScrollBar[0].style.visibility!="hidden")&&(t.hScrollBar[0].style.visibility!="hidden")){t.bottomRight[0].style.visibility="inherit";t.bottomRight[0].style.left=1+parseInt(t.vScrollBar[0].style.left)+"px";t.bottomRight[0].style.top=1+parseInt(t.hScrollBar[0].style.top)+"px";if(t.rtl){t.bottomRight.css({left:0})}t.bottomRight[0].style.width=parseInt(c)+3+"px";t.bottomRight[0].style.height=parseInt(c)+3+"px"}else{t.bottomRight[0].style.visibility="hidden"}if(parseInt(t.content[0].style.width)!=(parseInt(p)-f)){var i=parseInt(p)-f;if(i<0){i=0}t.content[0].style.width=i+"px"}if(t.rtl){t.vScrollBar.css({left:0+"px",top:"0px"});t.hScrollBar.css({left:t.vScrollBar.width()+2+"px"});if(t.vScrollBar[0].style.visibility!="hidden"){t.content.css("margin-left",4+t.vScrollBar.width())}else{t.content.css("margin-left",0);t.hScrollBar.css({left:"0px"})}if(t.filterable&&t.filterInput){t.filterInput.css({left:t.vScrollBar.width()+6+"px"})}}if(parseInt(t.content[0].style.height)!=(parseInt(n)-e)){var r=parseInt(n)-e;if(r<0){r=0}t.content[0].style.height=r+"px";t.content[0].style.top="0px"}if(g>0){t.content[0].style.top=g+"px";t.content[0].style.height=parseInt(t.content[0].style.height)-g+"px"}if(t.filterable){t.filterInput[0].style.height=(g-6)+"px";t.filterInput[0].style.top="3px";if(!t.rtl){t.filterInput[0].style.left=parseInt(t.content.css("left"))+3+"px"}t.filterInput[0].style.width=parseInt(t.content.css("width"))-7+"px";t.filter[0].style.display="block"}else{t.filter[0].style.display="none"}if(t.overlayContent){t.overlayContent.width(parseInt(p)-f);t.overlayContent.height(parseInt(n)-e)}},ensureVisible:function(h,i){if(isNaN(h)){var l=this.getItemByValue(h);if(l){h=l.index}}var f=this.isIndexInView(h);if(!f){if(h<0){return}if(this.autoHeight){var g=a.data(this.vScrollBar[0],"jqxScrollBar").instance;g.setPosition(0)}else{for(indx=0;indx<this.visibleItems.length;indx++){var l=this.visibleItems[indx];if(l.visibleIndex==h&&!l.isGroup){var g=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var k=g.value;var b=!this.filterable?0:this.filterHeight+2;var e=this.hScrollBar.css("visibility")==="hidden";var d=e?0:this.scrollBarSize+4;if(l.initialTop<k){g.setPosition(l.initialTop);if(indx==0){g.setPosition(0)}}else{if(l.initialTop+l.height>k+this.host.height()-b){var c=this.host.height();if(this.filterable){g.setPosition(this.filterHeight+2+l.initialTop+l.height+2-c+d)}else{g.setPosition(l.initialTop+l.height+2-c+d);if(indx===this.visibleItems.length-1){g.setPosition(g.max)}}if(i){var k=g.value;var j=l.initialTop;if(this.filterable){j=this.filterHeight+2+l.initialTop}if(k+c<g.max){g.setPosition(j)}}}}break}}}}else{if(i){for(indx=0;indx<this.visibleItems.length;indx++){var l=this.visibleItems[indx];if(l.visibleIndex==h&&!l.isGroup){var k=this.vScrollInstance.value;var j=l.initialTop;if(this.filterable){j=this.filterHeight+2+l.initialTop}if(k+this.host.height()<this.vScrollInstance.max){this.vScrollInstance.setPosition(j)}}}}}this._renderItems()},scrollTo:function(c,b){if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollInstance.setPosition(b)}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollInstance.setPosition(c)}},scrollDown:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value+b.largestep<=b.max){b.setPosition(b.value+b.largestep);return true}else{b.setPosition(b.max);return true}return false},scrollUp:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value-b.largestep>=b.min){b.setPosition(b.value-b.largestep);return true}else{if(b.value!=b.min){b.setPosition(b.min);return true}}return false},databind:function(b,d){this.records=new Array();var f=b._source?true:false;var c=new a.jqx.dataAdapter(b,{autoBind:false});if(f){c=b;b=b._source}var e=function(k){if(b.type!=undefined){c._options.type=b.type}if(b.formatdata!=undefined){c._options.formatData=b.formatdata}if(b.contenttype!=undefined){c._options.contentType=b.contenttype}if(b.async!=undefined){c._options.async=b.async}};var h=function(q,r){var s=function(w){var D=null;if(typeof w==="string"){var z=w;var A=w;var C=""}else{if(q.displayMember!=undefined&&q.displayMember!=""){var A=w[q.valueMember];var z=w[q.displayMember]}}var C="";if(q.groupMember){C=w[q.groupMember]}else{if(w&&w.group!=undefined){C=w.group}}if(q.searchMember){D=w[q.searchMember]}else{if(w&&w.searchLabel!=undefined){D=w.searchLabel}}if(!q.valueMember&&!q.displayMember){if(a.type(w)=="string"){z=A=w.toString()}}if(w&&w.label!=undefined){var z=w.label}if(w&&w.value!=undefined){var A=w.value}var B=false;if(w&&w.checked!=undefined){B=w.checked}var v="";if(w&&w.html!=undefined){v=w.html}var t=true;if(w&&w.visible!=undefined){t=w.visible}var u=false;if(w&&w.disabled!=undefined){u=w.disabled}var y=false;if(w&&w.hasThreeStates!=undefined){y=w.hasThreeStates}var x={};x.label=z;x.value=A;x.searchLabel=D;x.html=v;x.visible=t;x.originalItem=w;x.group=C;x.groupHtml="";x.disabled=u;x.checked=B;x.hasThreeStates=y;return x};if(r!=undefined){var k=c._changedrecords[0];if(k){a.each(c._changedrecords,function(){var t=this.index;var u=this.record;if(r!="remove"){var v=s(u)}switch(r){case"update":q.updateAt(v,t);break;case"add":q.insertAt(v,t);break;case"remove":q.removeAt(t);break}});return}}q.records=c.records;var m=q.records.length;var p=new Array();for(var l=0;l<m;l++){var n=q.records[l];var o=s(n);o.index=l;p[l]=o}q.items=q.loadItems(p,true);q._render();q._raiseEvent("6")};e(this);var i=this;switch(b.datatype){case"local":case"array":default:if(b.localdata!=null||a.isArray(b)){c.unbindBindingUpdate(this.element.id);if(this.autoBind||(!this.autoBind&&!d)){c.dataBind()}h(this);c.bindBindingUpdate(this.element.id,function(k){h(i,k)})}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(b.localdata!=null){c.unbindBindingUpdate(this.element.id);if(this.autoBind||(!this.autoBind&&!d)){c.dataBind()}h(this);c.bindBindingUpdate(this.element.id,function(){h(i)});return}var j={};if(c._options.data){a.extend(c._options.data,j)}else{if(b.data){a.extend(j,b.data)}c._options.data=j}var g=function(){h(i)};c.unbindDownloadComplete(i.element.id);c.bindDownloadComplete(i.element.id,g);if(this.autoBind||(!this.autoBind&&!d)){c.dataBind()}}},loadItems:function(m,o){if(m==null){this.groups=new Array();this.items=new Array();this.visualItems=new Array();return}var t=this;var k=0;var d=0;var b=0;this.groups=new Array();this.items=new Array();this.visualItems=new Array();var e=new Array();this.itemsByValue=new Array();a.map(m,function(x){if(x==undefined){return null}var j=new a.jqx._jqxListBox.item();var y=x.group;var i=x.groupHtml;var z=x.title;var v=null;if(t.searchMember){v=x[t.searchMember]}else{if(x&&x.searchLabel!=undefined){v=x.searchLabel}}if(z==null||z==undefined){z=""}if(y==null||y==undefined){y=""}if(t.groupMember){y=x[t.groupMember]}if(i==null||i==undefined){i=""}if(!t.groups[y]){t.groups[y]={items:new Array(),index:-1,caption:y,captionHtml:i};k++;var u=k+"jqxGroup";t.groups[u]=t.groups[y];d++;t.groups.length=d}var w=t.groups[y];w.index++;w.items[w.index]=j;if(typeof x==="string"){j.label=x;j.value=x;if(arguments.length>1&&arguments[1]&&a.type(arguments[1])=="string"){j.label=x;j.value=arguments[1]}}else{if(x.label==null&&x.value==null&&x.html==null&&x.group==null&&x.groupHtml==null){j.label=x.toString();j.value=x.toString()}else{j.label=x.label;j.value=x.value;if(j.label===undefined){j.label=x.value}if(j.value===undefined){j.value=x.label}}}if(typeof x!="string"){if(x.label===undefined){if(t.displayMember!=""){if(x[t.displayMember]!=undefined){j.label=x[t.displayMember]}else{j.label=""}}}if(x.value===undefined){if(t.valueMember!=""){j.value=x[t.valueMember]}}}j.hasThreeStates=x.hasThreeStates!=undefined?x.hasThreeStates:true;j.originalItem=x;if(o){j.originalItem=x.originalItem}j.title=z;if(z&&j.value===undefined&&j.label===undefined){j.value=j.label=z}j.html=x.html||"";if(x.html&&x.html!=""){if(z&&z!=""){}}j.group=y;j.checked=x.checked||false;j.groupHtml=x.groupHtml||"";j.disabled=x.disabled||false;j.visible=x.visible!=undefined?x.visible:true;j.searchLabel=v;j.index=b;e[b]=j;b++;return j});var c=new Array();var p=0;if(this.fromSelect==undefined||this.fromSelect==false){for(var h=0;h<d;h++){var k=h+1;var n=k+"jqxGroup";var r=this.groups[n];if(r==undefined||r==null){break}if(h==0&&r.caption==""&&r.captionHtml==""&&d<=1){for(var g=0;g<r.items.length;g++){var q=r.items[g].value;if(r.items[g].value==undefined||r.items[g].value==null){q=g}this.itemsByValue[a.trim(q).split(" ").join("_")]=r.items[g]}return r.items}else{var l=new a.jqx._jqxListBox.item();l.isGroup=true;l.label=r.caption;if(r.caption==""&&r.captionHtml==""){r.caption=this.emptyGroupText;l.label=r.caption}l.html=r.captionHtml;c[p]=l;p++}for(var f=0;f<r.items.length;f++){c[p]=r.items[f];var q=r.items[f].value;if(r.items[f].value==""||r.items[f].value==null){q=p}t.itemsByValue[a.trim(q).split(" ").join("_")]=r.items[f];p++}}}else{var p=0;var s=new Array();a.each(e,function(){if(!s[this.group]){if(this.group!=""){var i=new a.jqx._jqxListBox.item();i.isGroup=true;i.label=this.group;c[p]=i;p++;s[this.group]=true}}c[p]=this;var j=this.value;if(this.value==""||this.value==null){j=p-1}t.itemsByValue[a.trim(j).split(" ").join("_")]=this;p++})}return c},_mapItem:function(c){var b=new a.jqx._jqxListBox.item();if(this.displayMember){if(c.label==undefined){c.label=c[this.displayMember]}if(c.value==undefined){c.value=c[this.valueMember]}}if(typeof c==="string"){b.label=c;b.value=c}else{if(typeof c==="number"){b.label=c.toString();b.value=c.toString()}else{b.label=c.label!==undefined?c.label:c.value;b.value=c.value!==undefined?c.value:c.label}}if(b.label==undefined&&b.value==undefined&&b.html==undefined){b.label=b.value=c}b.html=c.html||"";b.group=c.group||"";b.checked=c.checked||false;b.title=c.title||"";b.groupHtml=c.groupHtml||"";b.disabled=c.disabled||false;b.visible=c.visible||true;return b},addItem:function(b){return this.insertAt(b,this.items?this.items.length:0)},_getItemByParam:function(c){if(c!=null){if(c.index==undefined){var b=this.getItemByValue(c);if(b){c=b}}}return c},insertItem:function(d,b){var c=this._getItemByParam(d);return this.insertAt(c,b)},updateItem:function(c,d){var b=this._getItemByParam(d);if(b&&b.index!=undefined){return this.updateAt(c,b.index)}return false},updateAt:function(d,c){if(d!=null){var b=this._mapItem(d);this.itemsByValue[a.trim(b.value).split(" ").join("_")]=this.items[c];this.items[c].value=b.value;this.items[c].label=b.label;this.items[c].html=b.html;this.items[c].disabled=b.disabled}this._cachedItemHtml=[];this._renderItems();if(this.rendered){this.rendered()}},insertAt:function(l,f){if(l==null){return false}this._cachedItemHtml=[];if(this.items==undefined||this.items.length==0){this.source=new Array();this.refresh();var g=this._mapItem(l);g.index=0;this.items[this.items.length]=g;this._addItems(true);this._renderItems();if(this.rendered){this.rendered()}if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop()}var k=g.value;if(g.value==""||g.value==null){k=f}this.itemsByValue[a.trim(k).split(" ").join("_")]=g;return false}var g=this._mapItem(l);if(f==-1||f==undefined||f==null||f>=this.items.length){g.index=this.items.length;this.items[this.items.length]=g}else{var c=new Array();var j=0;var e=false;var h=0;for(var b=0;b<this.items.length;b++){if(this.items[b].isGroup==false){if(h>=f&&!e){c[j++]=g;g.index=f;h++;e=true}}c[j]=this.items[b];if(!this.items[b].isGroup){c[j].index=h;h++}j++}this.items=c}var k=g.value;if(g.value==""||g.value==null){k=f}this.itemsByValue[a.trim(k).split(" ").join("_")]=g;this.visibleItems=new Array();this.renderedVisibleItems=new Array();var d=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var i=d.value;d.setPosition(0);if((this.allowDrag&&this._enableDragDrop)||(this.virtualSize&&this.virtualSize.height<10+this.host.height())){this._addItems(true)}else{this._addItems(false)}if(this.groups.length>1){}this._renderItems();if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop()}d.setPosition(i);if(this.rendered){this.rendered()}return true},removeAt:function(j){if(j<0||j>this.items.length-1){return false}if(j==undefined){return false}var d=this.items[j].height;var n=this.items[j].value;if(n==""||n==null){n=j}this.itemsByValue[a.trim(n).split(" ").join("_")]=null;if(this.groups.length>1){var h=new Array();for(var b=0;b<this.items.length;b++){if(!this.items[b].isGroup){h.push({item:this.items[b],key:b})}}if(h[j]){this.items.splice(h[j].key,1)}else{return false}}else{this.items.splice(j,1)}var c=new Array();var m=0;var f=false;var k=0;for(var b=0;b<this.items.length;b++){c[m]=this.items[b];if(!this.items[b].isGroup){c[m].index=k;k++}m++}this.items=c;var e=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var e=a.data(this.vScrollBar[0],"jqxScrollBar").instance;var l=e.value;e.setPosition(0);this.visibleItems=new Array();this.renderedVisibleItems=new Array();if(this.items.length>0){if(this.virtualSize){this.virtualSize.height-=d;var o=this.virtualSize.itemsPerPage*2;if(this.autoHeight){o=this.items.length}this.virtualItemsCount=Math.min(o,this.items.length)}this._updatescrollbars()}else{this._addItems()}this._renderItems();if(this.allowDrag&&this._enableDragDrop){this._enableDragDrop()}if(this.vScrollBar.css("visibility")!="hidden"){e.setPosition(l)}else{e.setPosition(0)}this.itemsByValue=new Array();for(var g=0;g<this.items.length;g++){var n=this.items[g].value;if(this.items[g].value==""||this.items[g].value==null){n=g}this.itemsByValue[a.trim(n).split(" ").join("_")]=this.items[g]}if(this.rendered){this.rendered()}return true},removeItem:function(e,f){var d=this._getItemByParam(e);var b=-1;if(d&&d.index!=undefined&&f!==true){for(var c=0;c<this.items.length;c++){if(this.items[c].label==d.label&&this.items[c].value==d.value){b=c;break}}if(b!=-1){return this.removeAt(b)}}if(b==-1){return this.removeAt(d.index)}},getItems:function(){return this.items},disableItem:function(c){var b=this._getItemByParam(c);this.disableAt(b.index)},enableItem:function(c){var b=this._getItemByParam(c);this.enableAt(b.index)},disableAt:function(b){if(!this.items){return false}if(b<0||b>this.items.length-1){return false}this.items[b].disabled=true;this._renderItems();return true},enableAt:function(b){if(!this.items){return false}if(b<0||b>this.items.length-1){return false}this.items[b].disabled=false;this._renderItems();return true},destroy:function(){if(this.source&&this.source.unbindBindingUpdate){this.source.unbindBindingUpdate(this.element.id)}this._removeHandlers();this.vScrollBar.jqxScrollBar("destroy");this.hScrollBar.jqxScrollBar("destroy");this.vScrollBar.remove();this.hScrollBar.remove();this.content.remove();a.jqx.utilities.resize(this.host,null,true);var b=a.data(this.element,"jqxListBox");delete this.hScrollInstance;delete this.vScrollInstance;delete this.vScrollBar;delete this.hScrollBar;delete this.content;delete this.bottomRight;delete this.itemswrapper;delete this.visualItems;delete this.visibleItems;delete this.items;delete this.groups;delete this.renderedVisibleItems;delete this._mousewheelfunc;delete this._mousemovefunc;delete this._cachedItemHtml;delete this.itemsByValue;delete this._activeElement;delete this.source;delete this.events;if(this.input){this.input.remove();delete this.input}if(b){delete b.instance}this.host.removeData();this.host.removeClass();this.host.remove();this.element=null;delete this.element;this.host=null;delete this.set;delete this.get;delete this.call;delete this.host},_raiseEvent:function(f,c){if(this._stopEvents==true){return true}if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;this._updateInputSelection();var e=new a.Event(d);e.owner=this;e.args=args;if(this.host!=null){var b=this.host.trigger(e)}return b}})})(jqxBaseFramework);(function(a){a.jqx.parseSourceTag=function(m){var l=new Array();var o=a(m).find("option");var b=a(m).find("optgroup");var k=false;if(o.length===0){o=a(m).find("li");if(o.length>0){k=true}}var d=null;var j=0;var d=-1;var h=this;var c=new Array();a.each(o,function(p){var q=b.find(this).length>0;var s=null;if(this.text!=null&&(this.label==null||this.label=="")){this.label=this.text}if(k===true){this.label=a(this).text();this.selected=a(this).attr("data-selected");this.checked=this.selected;this.value=a(this).attr("data-value")||p;this.disabled=a(this).attr("disabled")}var r={style:this.style.cssText,selected:this.selected,html:this.innerHTML,classes:this.className,disabled:this.disabled,value:this.value,label:this.label,title:this.title,originalItem:this};var i=a.jqx.browser.msie&&a.jqx.browser.version<8;if(i&&!k){if(r.value==""&&this.text!=null&&this.text.length>0){r.value=this.text}}if(q){s=b.find(this).parent()[0].label;r.group=s;if(!c[s]){c[s]=new Array();c.length++}c[s].push(r)}if(this.selected){d=p}r.checked=this.selected;if(r.label!==undefined){l.push(r)}});if(c.length>0){var n=new Array();for(var f in c){if(f==="indexOf"){continue}var g=null;for(var e=0;e<b.length;e++){if(f===b[e].label||b[e].text){g=b[e];break}}a.each(c[f],function(i,p){if(this.label!==undefined){n.push(this)}})}}if(n&&n.length>0){return{items:n,index:d}}else{return{items:l,index:d}}};a.jqx._jqxListBox.item=function(){var b={group:"",groupHtml:"",selected:false,isGroup:false,highlighted:false,value:null,label:"",html:null,visible:true,disabled:false,element:null,width:null,height:null,initialTop:null,top:null,left:null,title:"",index:-1,checkBoxElement:null,originalItem:null,checked:false,visibleIndex:-1};return b}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxlistmenu.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxlistmenu.js
new file mode 100644 (file)
index 0000000..6164698
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(c){c.jqx.jqxWidget("jqxListMenu","",{});var a=0,b=0;c.extend(c.jqx._jqxListMenu.prototype,{defineInstance:function(){var d={filterCallback:function(g,f){var e=c.jqx.string.containsIgnoreCase(c.trim(g),f);return e},placeHolder:"Filter list items...",showFilter:false,showHeader:true,showBackButton:true,showNavigationArrows:true,alwaysShowNavigationArrows:false,backLabel:"Back",width:"100%",height:"auto",animationType:"slide",animationDuration:0,headerAnimationDuration:0,autoSeparators:false,readOnly:false,roundedCorners:true,disabled:false,enableScrolling:true,touchMode:false,_childrenMap:{},_parentMap:{},_lock:false,_backButton:null,_currentPage:null,_header:null,_oldHost:undefined,rtl:false,aria:{"aria-disabled":{name:"disabled",type:"boolean"}}};c.extend(true,this,d);return d},destroy:function(){this.host.remove()},createInstance:function(){c.jqx.aria(this);this.host.attr("data-role","listmenu");this.host.attr("role","tree")},refresh:function(d){this._render();this._removeClasses();this._addClasses();this._currentPage=this._currentPage||this.host.children(".jqx-listmenu").first();this._changeHeader(this._currentPage);this._removeEventHandlers();this._addEventHandlers()},_render:function(){this._renderHost();this._renderAutoSeparators();this._renderSublists();this._renderFilterBar();this._renderHeader();this.host.css({width:this.width,height:this.height});if(this.disabled){this.disable()}if(this.enableScrolling&&this.host.jqxPanel&&this.panel){this.panel.jqxPanel("_arrange")}},resize:function(e,d){this.width=e;this.height=d;this.host.css({width:this.width,height:this.height});if(this.panel){this.panel.jqxPanel("_arrange")}},_renderHost:function(){if(!this.host.is("div")){this._oldHost=this.host;this.host.wrap("<div/>");this.host=this.host.parent();this.element=this.host[0];if(this.host.jqxPanel&&this.enableScrolling){this.host.wrap("<div/>");this.panel=this.host.parent();this.panel[0].id="panel"+this.element.id;this.panel.jqxPanel({theme:this.theme,autoUpdate:true,width:this.width,height:this.height,touchMode:this.touchMode});this.host.css({width:"100%"});this.host.css({height:"auto"});this.host.css("border","none")}}else{this.element.style.overflow="hidden"}if(!this.enableScrolling){this.element.style.overflow="hidden"}if(c.jqx.browser.msie&&c.jqx.browser.version<8){this.element.style.position="relative"}if(this.enableScrolling&&this.panel){this.panel.jqxPanel("_arrange")}},_renderAutoSeparators:function(g){var f=this.host.find(".jqx-listmenu-auto-separator"),d=this.host.find('[data-role="listmenu"]'),g,e;f.remove();for(e=0;e<d.length;e+=1){g=c(d[e]);if(g.data("auto-separators")||this.autoSeparators){this._renderListAutoSeparators(g)}}},_renderSublists:function(){var e=[(this.host.find(".jqx-listmenu").first()[0]||this.host.find("ul,ol").first()[0])],g,d,k,f,j;this._refreshList(e[0]);while(e.length){k=e.pop();g=this._getChildrenByTagName(k,"li","LI");f=g.length;for(var h=0;h<f;h+=1){d=g[h];c(d).attr("role","treeitem");j=this._getChildList(d);this._refreshLi(d,h,f);if(j){e.push(j);this._refreshList(j,d,true)}}}},_refreshList:function(f,e,d){f=c(f);if(f.data("role")==="listmenu"){if(!f.is(".jqx-listmenu")){this._renderList(f);this._handleListId(f);this._addListClasses(f)}if(e){this._expandHierarchy(f[0],e)}if(d){this._handleSublist(f[0])}}},_renderList:function(d){d=c(d);if(!d.is(".jqx-listmenu")){d.detach();d.appendTo(this.host)}},_handleListId:function(d){if(!d[0].id){d[0].id="jqx-listmenu-"+b;b+=1}},_renderListAutoSeparators:function(h){var e=h.children("li"),k,d;var j={};for(var g=0;g<e.length;g+=1){d=c(e[g]);if(!d.data("role")){if(c.trim(d.text())[0]!==k){k=c.trim(d.text())[0];var f=c('<li data-role="separator" class="'+this.toThemeProperty("jqx-listmenu-auto-separator")+'">'+k+"</li>");f.insertBefore(d);f[0].items=new Array();j=f[0]}if(j.items){j.items[j.items.length]=d[0]}}}},_addListClasses:function(d){d.addClass("jqx-listmenu")},_expandHierarchy:function(g,f){if(f&&g){var e=f.id,d=g.id;this._childrenMap[e]=d;this._parentMap[d]=e}},_handleSublist:function(d){if(!this._currentPage||d!==this._currentPage[0]){d.style.display="none"}else{d.style.display="block"}},_getChildrenByTagName:function(f,e,g){var d=[],h={};h[e]=h[g]=true;f=f.firstChild;while(f){if(h[f.nodeName]){d.push(f)}f=f.nextSibling}return d},_renderFilterBar:function(){if(!this._filterBar){this._filterBar=c("<div/>");this._filterInput=c('<input type="text" />');this._filterBar.append(this._filterInput);this.host.prepend(this._filterBar)}var d=false;if(c.jqx.browser.msie&&c.jqx.browser.version<8){d=true}if(!d){this._filterInput.attr("placeholder",this.placeHolder)}if(!this.showFilter){this._filterBar.css("display","none")}else{this._filterBar.css("display","block")}},_renderHeader:function(){if(!this._header){this._header=c("<div/>");this.host.prepend(this._header);this._renderHeaderLabel()}this._renderBackButton();if(!this.showHeader){this._header.css("display","none")}else{this._header.css("display","block")}},_renderHeaderLabel:function(){this._headerLabel=c("<span/>");this._headerLabel.addClass(this.toThemeProperty("jqx-listmenu-header-label"));this._header.append(this._headerLabel)},_renderBackButton:function(){if(!this._backButton){this._backButton=c('<div><div style="float: left;"></div><span style="float: left;">'+this.backLabel+'</span><div style="clear:both;"></div></div>');this._header.prepend(this._backButton);this._backButton.jqxButton({theme:this.theme});this._backButton.find("div:first").addClass(this.toThemeProperty("jqx-listmenu-backbutton-arrow"));if(!this.showBackButton){this._backButton.css("display","none")}else{this._backButton.css("display","inline-block")}if(this.rtl){var d=c.jqx.browser.msie&&c.jqx.browser.version<8;if(!d){this._backButton.css("position","relative");this._backButton.css("margin-left","100%");this._backButton.css("left",-this._backButton.outerWidth()-15)}else{this._backButton.css("position","relative");this._backButton.css("left","100%");this._backButton.css("margin-left",-this._backButton.outerWidth()-45+"px")}}}if(!this.showBackButton){this._backButton.css("display","none")}else{this._backButton.css("display","inline-block")}},_removeEventHandlers:function(){var d=this.isTouchDevice()&&!this.touchMode;var e=c.jqx.mobile.getTouchEventName("touchstart");this.removeHandler(this._backButton,!d?"click":e);this.removeHandler(this._filterInput,"keyup");this.removeHandler(this._filterInput,"change")},_addEventHandlers:function(){var d=this;var e=this.isTouchDevice()&&!this.touchMode;var f=c.jqx.mobile.getTouchEventName("touchstart");this.addHandler(this._backButton,!e?"click":f,function(){d.back()});this.addHandler(this._filterInput,"keyup change",function(){d._filter(c(this).val())})},_getChildList:function(d){if(!d){return}var h=this._childrenMap[d.id],g;if(d.className.indexOf("jqx-listmenu-item")>=0&&h){return document.getElementById(h)}var f=this._getChildrenByTagName(d,"ul","UL")[0],e=this._getChildrenByTagName(d,"ol","OL")[0];g=f||e;return g},_refreshLi:function(d,g,f){if(d.parentNode&&d.parentNode.getAttribute("data-role")==="listmenu"){if(d.id==""){var e=2}this._handleLiId(d);this._renderLi(d);this._removeLiEventHandlers(d);this._addLiEventHandlers(d);this._addLiClasses(d,g,f)}},_handleLiId:function(d){if(!d.id){d.id="jqx-listmenu-item-"+a;a+=1}},_renderLi:function(d){if((/(separator|header)/).test(c(d).data("role"))||c(d).children(".jqx-listmenu-arrow-right").length>0){return}c(d).wrapInner('<span class="'+this.toThemeProperty("jqx-listmenu-item-label")+'"></span>');if(this.showNavigationArrows||this.alwaysShowNavigationArrows){var f=c("<span/>");var g=c(d).find("ul");var e=c(d).find("ol");if(this.alwaysShowNavigationArrows||(((g.length>0)&&(/(listmenu)/).test(g.data("role")))||((e.length>0)&&(/(listmenu)/).test(e.data("role"))))){f.addClass(this.toThemeProperty("jqx-listmenu-arrow-right"));if(!this.rtl){f.addClass(this.toThemeProperty("jqx-icon-arrow-right"));f.appendTo(d)}else{f.addClass(this.toThemeProperty("jqx-icon-arrow-left"));f.addClass(this.toThemeProperty("jqx-listmenu-arrow-rtl"));f.prependTo(d)}}}},_removeLiEventHandlers:function(d){var g=this.isTouchDevice();var j=c.jqx.mobile.getTouchEventName("touchstart");var i=c.jqx.mobile.getTouchEventName("touchend");var e=c.jqx.mobile.getTouchEventName("touchmove");var f=(!g?"mousedown":j)+".listmenu";var h=(!g?"mouseup":i)+".listmenu";this.removeHandler(c(d),f);this.removeHandler(c(document),h+"."+d.id)},isTouchDevice:function(){var d=c.jqx.mobile.isTouchDevice();if(this.touchMode==true){d=true}return d},_addLiEventHandlers:function(m){m=c(m);var o=this,f=this.toThemeProperty("jqx-listmenu-arrow-right-pressed"),k=m.children(".jqx-listmenu-arrow-right");var d=c.jqx.mobile.isTouchDevice();var j=c.jqx.mobile.getTouchEventName("touchstart");var l=c.jqx.mobile.getTouchEventName("touchend");var g=c.jqx.mobile.getTouchEventName("touchmove");var h=(!d?"mousedown":j)+".listmenu";var e=(!d?"mouseup":l)+".listmenu";var n=null;var i="";if(!(/(separator|readonly)/).test(m.data("role"))&&!this.readOnly){this.addHandler(m,"dragstart",function(){return false});this.addHandler(m,h,function(p){if(!o.disabled){n=p.target;i=c.jqx.position(p);if(m.find('div[data-role="content"]').length==0){if(!d){m.addClass(o.toThemeProperty("jqx-fill-state-pressed"));k.addClass(f)}}}});this.addHandler(m,e,function(p){if(!o.disabled){if(n==p.target||!d){if(d){if(c.jqx.position(p).top===i.top){o.next(m)}}else{if(c.jqx.position(p).top===i.top){o.next(m)}}}}});this.addHandler(c(document),e+"."+m[0].id,function(){if(!o.disabled){m.removeClass(o.toThemeProperty("jqx-fill-state-pressed"));k.removeClass(f)}})}},_addLiClasses:function(d,f,e){d=c(d);if(d.data("role")==="separator"){this._handleSeparatorStyle(d)}else{if(d.data("role")==="header"){this._handleHeaderStyle(d)}else{if(this.readOnly||d.data("role")==="readonly"){d.addClass(this.toThemeProperty("jqx-listmenu-item-readonly"))}else{d.removeClass(this.toThemeProperty("jqx-listmenu-item-readonly"))}this._handleItemStyle(d)}}if(f===0&&!this.showHeader&&!this.showFilter){d.addClass(this.toThemeProperty("jqx-rc-t"))}if(f===e-1){d.addClass(this.toThemeProperty("jqx-rc-b"))}},_handleSeparatorStyle:function(d){d.addClass(this.toThemeProperty("jqx-listmenu-separator"));d.addClass(this.toThemeProperty("jqx-fill-state-pressed"));d[0].style.listStyle="none"},_handleHeaderStyle:function(d){d.css("display","none")},_handleItemStyle:function(d){d.addClass(this.toThemeProperty("jqx-listmenu-item"));if(this.rtl){d.addClass(this.toThemeProperty("jqx-rtl"))}d.addClass(this.toThemeProperty("jqx-fill-state-normal"));d.addClass(this.toThemeProperty("jqx-item"))},back:function(){var e=this._currentPage,d;if(e){d=this._parentMap[e[0].id]}this._back=true;if(c("#"+d).length>0){c.jqx.aria(c("#"+d),"aria-expanded",false)}this._changePage(e,c("#"+d).parent(),this.animationDuration,true);this._back=false},next:function(d){var h=d.attr("id"),f=this._childrenMap[h],g=c("#"+f),e=c("#"+h).parent();c.jqx.aria(d,"aria-expanded",true);this._changePage(e,g,this.animationDuration)},changePage:function(d){if(typeof d==="string"){d=c(d)}if(!d[0]||(d.attr("data-role")!=="listmenu")||d.parents().index(this.host)<0){throw new Error("Invalid newPage. The chosen newPage is not listmenu or it's not part of the selected jqxListMenu hierarchy.")}if(this._currentPage[0]==d[0]){return}this._changePage(this._currentPage,d,this.animationDuration)},_changePage:function(h,f,g,e){if(!this._lock){var d="_"+this.animationType+"Change"+(e?"Back":"");if(f[0]){if(this.showFilter){if(f.find('div[data-role="content"]').length>0){c.each(f.find("li"),function(){if(c(this).data("role")==="separator"){c(this).hide()}});this._filterBar.css("display","none")}else{this._filterBar.css("display","block")}}this._lock=true;this[d](h,f,this.animationDuration,function(){this._lock=false;this._changeHeader(f);this._currentPage=f})}}},_changeHeader:function(e){var f=c(e).find('li[data-role="header"]').first();if(f[0]){var d=this;this._headerLabel.fadeOut(this.headerAnimationDuration/2,function(){d._headerLabel.html(f.html());d._headerLabel.fadeIn(d.headerAnimationDuration/2)})}},_slideChange:function(h,e,g,i){var d=this;if(this.enableScrolling&&this.panel!=null){this.panel.jqxPanel("scrollTo",0,0)}var f=this.rtl;this._initSlide(h,e);if(!f){h.animate({"margin-left":-h.width()-parseInt(h.css("margin-right"),10)||0},g,"easeInOutSine");e.animate({"margin-left":0},g,"easeInOutSine",function(){d._slideEnd(h,e);i.call(d,c(this))})}else{h.animate({"margin-left":h.width()+parseInt(h.css("margin-right"),10)||0},g,"easeInOutSine");e.animate({"margin-left":0},g,"easeInOutSine",function(){d._slideEnd(h,e);i.call(d,c(this))})}},_initSlide:function(f,d){var e=this.rtl;f.width(f.width());d.css({marginTop:-(f.outerHeight(true)),marginLeft:!e?f.width()+(parseInt(f.css("margin-right"),10)||0):-f.width()-(parseInt(f.css("margin-right"),10)||0),display:"block",height:"auto",width:f.width()})},_slideEnd:function(e,d){this.host.css("height","auto");e.css({display:"none",width:"auto",height:"auto",marginTop:0,marginLeft:0});d.css({marginTop:0,marginLeft:0,height:"auto",width:"auto",display:"block"})},_slideChangeBack:function(g,e,f,h){var d=this;this._initSlideBack(g,e);g.animate({"margin-left":!this.rtl?g.width()+parseInt(g.css("margin-right"),10)||0:-g.width()-parseInt(g.css("margin-right"),10)||0},f);e.animate({"margin-left":0},f,function(){d._slideEnd(g,e);h.call(d,c(this))})},_initSlideBack:function(e,d){e.css({marginTop:-(d.outerHeight(true)),width:e.width()});d.css({width:e.width(),marginLeft:!this.rtl?-e.width()-parseInt(e.css("margin-right"),10)||0:e.width()+parseInt(e.css("margin-right"),10)||0,display:"block",height:"auto"})},_fadeChangeBack:function(f,d,e,g){this._fadeChange(f,d,e,g)},_fadeChange:function(g,e,f,h){var d=this;g.fadeOut(f/2,function(){e.fadeIn(f/2,function(){h.call(d,c(this))})})},_removeClasses:function(){this._filterBar.removeClass(this.toThemeProperty("jqx-listmenu-filter"));this._filterBar.removeClass(this.toThemeProperty("jqx-widget-header"));this._filterInput.removeClass(this.toThemeProperty("jqx-listmenu-filter-input"));this._filterInput.removeClass(this.toThemeProperty("jqx-input"));this._header.removeClass(this.toThemeProperty("jqx-listmenu-header"));this._header.removeClass(this.toThemeProperty("jqx-widget-header"));this._header.removeClass(this.toThemeProperty("jqx-rc-t"));if(this.roundedCorners){this.host.removeClass(this.toThemeProperty("jqx-rc-all"))}this.host.removeClass(this.toThemeProperty("jqx-widget"));this.host.removeClass(this.toThemeProperty("jqx-listmenu-widget"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-normal"));this.host.removeClass(this.toThemeProperty("jqx-reset"));if(this.host.find('div[data-role="content"]').length>0){this.host.find('div[data-role="content"]').removeClass(this.toThemeProperty("jqx-widget-content"))}},_addClasses:function(){if(this.roundedCorners){this.host.addClass(this.toThemeProperty("jqx-rc-all"))}else{this.host.removeClass(this.toThemeProperty("jqx-rc-all"))}this.host.addClass("jqx-widget");this.host.addClass("jqx-listmenu-widget");this.host.addClass("jqx-fill-state-normal");this.host.addClass("jqx-reset");this._filterBar.addClass(this.toThemeProperty("jqx-listmenu-filter"));this._filterBar.addClass(this.toThemeProperty("jqx-widget-header"));this._filterInput.addClass(this.toThemeProperty("jqx-listmenu-filter-input"));this._filterInput.addClass(this.toThemeProperty("jqx-input"));this._header.addClass(this.toThemeProperty("jqx-listmenu-header"));this._header.addClass(this.toThemeProperty("jqx-widget-header"));this._header.addClass(this.toThemeProperty("jqx-rc-t"));if(this.host.find('div[data-role="content"]').length>0){this.host.find('div[data-role="content"]').addClass(this.toThemeProperty("jqx-widget-content"))}},_raiseEvent:function(){},_filter:function(h){var f=this.host.find(".jqx-listmenu-item");for(var e=0;e<f.length;e+=1){var g=c.trim(c(f[e]).text());if(!this.filterCallback(g,h)){f[e].style.display="none"}else{f[e].style.display="block"}}var f=this.host.find(".jqx-listmenu-separator");for(var e=0;e<f.length;e+=1){var d=false;c.each(f[e].items,function(){if(c(this).css("display")!="none"){d=true;return false}});if(!d){f[e].style.display="none"}else{f[e].style.display="block"}}},disable:function(){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.disabled=true},enable:function(){this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.disabled=false},propertyChangedHandler:function(d,e,g,f){if(e=="disabled"){if(f){d.disable()}else{d.enable()}}if(e==="backLabel"){d._backButton.html(f);return}else{if(e==="placeHolder"){d._filterInput.attr("placeholder",f)}else{if((/(showFilter|showHeader|showBackButton|width|height|autoSeparators|readOnly)/).test(e)){d._render();return}}}}})}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxloader.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxloader.js
new file mode 100644 (file)
index 0000000..8f48f38
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxLoader","",{});a.extend(a.jqx._jqxLoader.prototype,{defineInstance:function(){var b={width:200,height:150,text:"Loading...",html:null,textPosition:"bottom",imagePosition:"center",isModal:false,autoOpen:false,rtl:false,events:["create"]};a.extend(true,this,b)},createInstance:function(b){var c=this;c._render(true);c._raiseEvent("0")},render:function(){this._render()},open:function(){var b=this;if(this.width!==null&&this.width.toString().indexOf("%")!==-1){b.host.css("width",this.width)}if(this.height!==null&&this.height.toString().indexOf("%")!==-1){b.host.css("height",this.height)}b.host.show();b.host.css("left",-b.host.width()/2);b.host.css("top",-b.host.height()/2);if(b.isModal){b._modal.show()}},close:function(){var b=this;b.host.hide();if(b.isModal){b._modal.hide()}},_checkBrowser:function(){var b=this;if(a.jqx.browser.browser==="msie"){if(a.jqx.browser.version==="7.0"){if(b.isModal===false){b.host.addClass(b.toThemeProperty("jqx-loader-ie-transparency"))}b.host.css("top",Math.max(0,((a(window).height()-a(b.host).outerHeight())/2)+a(window).scrollTop())+"px");b.host.css("left",Math.max(0,((a(window).width()-a(b.host).outerWidth())/2)+a(window).scrollLeft())+"px");a(window).resize(function(){b.host.css("top",Math.max(0,((a(window).height()-a(b.host).outerHeight())/2)+a(window).scrollTop())+"px");b.host.css("left",Math.max(0,((a(window).width()-a(b.host).outerWidth())/2)+a(window).scrollLeft())+"px")});this.host.css({"margin-top":"0","margin-left":"0"})}else{if(a.jqx.browser.version==="8.0"){if(b.isModal===false){b.host.addClass(b.toThemeProperty("jqx-loader-ie-transparency"))}}}}},_textPos:function(){var b=this;this._text=b.host.children("div:eq(1)");if(this._image){this._image.css("background-position-y",b.imagePosition)}if(b.textPosition==="top"){this._text.addClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-bottom"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-right"))}else{if(b.textPosition==="bottom"){this._text.addClass(b.toThemeProperty("jqx-loader-text-bottom"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-right"))}else{if(b.textPosition==="left"){this._text.addClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-right"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-bottom"))}else{if(b.textPosition==="right"){this._text.addClass(b.toThemeProperty("jqx-loader-text-right"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-left"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-top"));this._text.removeClass(b.toThemeProperty("jqx-loader-text-bottom"))}}}}},refresh:function(b){if(b!==true){this._render(false)}},destroy:function(){var b=this;b._removeHandlers();b.host.remove()},propertyChangedHandler:function(b,c,e,d){if(d!==e){switch(c){case"width":b.host.width(d);break;case"height":b.host.height(d);break;case"text":b._text.text(d);break;case"html":b.host.html(d);break;case"textPosition":b._textPos(d);break;case"rtl":if(d===true){b._text.addClass(b.toThemeProperty("jqx-loader-rtl"))}else{b._text.removeClass(b.toThemeProperty("jqx-loader-rtl"))}break}}},_raiseEvent:function(h,e){var g=this;var c=g.events[h];var f=new a.Event(c);f.owner=g;f.args=e;try{var b=g.host.trigger(f)}catch(d){}return b},_render:function(b){var c=this;c.host.width(c.width);c.host.height(c.height);if(c.autoOpen===false){c.host.hide()}if(b){if(c.html===null){c.host.append('<div class="'+c.toThemeProperty("jqx-loader-icon")+'"></div><div class="'+c.toThemeProperty("jqx-loader-text")+'">'+c.text+"</div>");c._image=c.host.children("div:eq(0)");c._text=c.host.children("div:eq(1)")}else{c.host.html(this.html)}if(c.isModal===true){var d=c.host.css("display");c._modal=a('<div id="'+c.element.id+'Modal" class="'+c.toThemeProperty("jqx-loader-modal")+'" style="display: '+d+';"></div>');a("body").append(c._modal)}}c._checkBrowser();c._textPos();c._addClass();c._removeHandlers();c._addHandlers()},_addHandlers:function(){var b=this;if(b.isModal===true){b.addHandler(a(document),"keyup.loader"+b.element.id,function(c){if(c.keyCode===27){b.close()}})}},_removeHandlers:function(){var b=this;b.removeHandler(a(document),"keyup.loader"+b.element.id)},_addClass:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-loader"));b.host.addClass(b.toThemeProperty("jqx-rc-all"));b.host.addClass(b.toThemeProperty("jqx-fill-state-normal"));if(b.rtl){b._text.addClass(b.toThemeProperty("jqx-loader-rtl"))}if(a.jqx.browser.msie){b.host.addClass(this.toThemeProperty("jqx-noshadow"))}b.host.addClass(this.toThemeProperty("jqx-rc-t"));b.host.addClass(this.toThemeProperty("jqx-rc-b"));b.host.addClass(this.toThemeProperty("jqx-popup"))}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxmaskedinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxmaskedinput.js
new file mode 100644 (file)
index 0000000..5a403ed
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxMaskedInput","",{});a.extend(a.jqx._jqxMaskedInput.prototype,{defineInstance:function(){var b={value:null,mask:"99999",width:null,height:25,textAlign:"left",readOnly:false,cookies:false,promptChar:"_",inputMode:"advanced",rtl:false,disabled:false,events:["valueChanged","textchanged","mousedown","mouseup","keydown","keyup","keypress","change"],aria:{"aria-valuenow":{name:"value",type:"string"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var e=this;e.host.attr({role:"textbox"});e.host.attr("data-role","input");var f=e.host.attr("value");if(f!=undefined&&f!=""){e.value=f}a.jqx.aria(this);a.jqx.aria(this,"aria-multiline",false);a.jqx.aria(this,"aria-readonly",e.readOnly);e.host.addClass(e.toThemeProperty("jqx-input"));e.host.addClass(e.toThemeProperty("jqx-rc-all"));e.host.addClass(e.toThemeProperty("jqx-widget"));e.host.addClass(e.toThemeProperty("jqx-widget-content"));maskEditor=this;if(e.element.nodeName.toLowerCase()=="div"){e.element.innerHTML="";e.maskbox=a("<input autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' type='textarea'/>").appendTo(e.host)}else{e.maskbox=e.host;e.maskbox.attr("autocomplete","off");e.maskbox.attr("autocorrect","off");e.maskbox.attr("autocapitalize","off");e.maskbox.attr("spellcheck",false)}e.maskbox.addClass(e.toThemeProperty("jqx-reset"));e.maskbox.addClass(e.toThemeProperty("jqx-input-content"));e.maskbox.addClass(e.toThemeProperty("jqx-widget-content"));var b=e.host.attr("name");if(b){e.maskbox.attr("name",b)}if(e.rtl){e.maskbox.addClass(e.toThemeProperty("jqx-rtl"))}var d=this;e.propertyChangeMap.disabled=function(g,j,h,k){if(k){g.maskbox.addClass(d.toThemeProperty("jqx-input-disabled"))}else{g.maskbox.removeClass(d.toThemeProperty("jqx-input-disabled"))}};if(e.disabled){e.maskbox.addClass(e.toThemeProperty("jqx-input-disabled"));e.maskbox.attr("disabled",true);e.host.addClass(e.toThemeProperty("jqx-fill-state-disabled"))}e.selectedText="";e.self=this;e.oldValue=e._value();e.items=new Array();e._initializeLiterals();e._render();if(e.value!=null){e.inputValue(e.value.toString())}var d=this;if(e.host.parents("form").length>0){e.host.parents("form").on("reset",function(){setTimeout(function(){d.clearValue()},10)})}e.addHandlers();if(e.cookies){var c=a.jqx.cookie.cookie("maskedInput."+e.element.id);if(c){e.val(c)}}},addHandlers:function(){var d=this;if(a.jqx.mobile.isTouchDevice()){}var b="";var c=function(j,f){var h=String.fromCharCode(f);var k=parseInt(h);var g=true;if(!isNaN(k)){g=true;var e=this.maskbox.val().toString().length;if(e>=this.items.length&&this._selection().length==0){g=false}}if(!j.ctrlKey&&!j.shiftKey&&!j.metaKey){if(f>=65&&f<=90){g=false}}return g};this.addHandler(this.maskbox,"blur",function(e){if(d.inputMode=="simple"){d._exitSimpleInputMode(e,d,false,b);return false}if(d.rtl){d.maskbox.css("direction","ltr")}d.host.removeClass(d.toThemeProperty("jqx-fill-state-focus"));if(d.maskbox.val()!=b){d._raiseEvent(7,e);if(d.cookies){a.jqx.cookie.cookie("maskedInput."+d.element.id,d.maskbox.val())}}});this.addHandler(this.maskbox,"focus",function(e){b=d.maskbox.val();if(d.inputMode=="simple"){d.maskbox[0].value=d._getEditValue();a.data(d.maskbox,"simpleInputMode",true);return false}if(d.rtl){d.maskbox.css("direction","rtl")}d.host.addClass(d.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"keydown",function(g){var h=d.readOnly;var f=g.charCode?g.charCode:g.keyCode?g.keyCode:0;if(h||d.disabled){return false}if(d.inputMode!="simple"){var e=d._handleKeyDown(g,f);if(!e){if(g.preventDefault){g.preventDefault()}if(g.stopPropagation){g.stopPropagation()}}return e}else{return c.call(d,g,f)}});this.addHandler(this.host,"keyup",function(f){var g=d.readOnly;var e=f.charCode?f.charCode:f.keyCode?f.keyCode:0;if(g||d.disabled){return true}if(d.inputMode=="simple"){return c.call(d,f,e)}else{if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}return false}});this.addHandler(this.host,"keypress",function(g){var h=d.readOnly;var f=g.charCode?g.charCode:g.keyCode?g.keyCode:0;if(h||d.disabled){return true}if(d.inputMode=="simple"){return c.call(d,g,f)}else{var e=d._handleKeyPress(g,f);if(!e){if(g.preventDefault){g.preventDefault()}if(g.stopPropagation){g.stopPropagation()}}return e}})},focus:function(){try{this.maskbox.focus()}catch(b){}},_exitSimpleInputMode:function(b,n,h,d){if(n==undefined){n=b.data}if(n==null){return}if(h==undefined){if(b.target!=null&&n.element!=null){if((b.target.id!=undefined&&b.target.id.toString().length>0&&n.host.find("#"+b.target.id).length>0)||b.target==n.element){return}}var f=n.host.offset();var e=f.left;var g=f.top;var c=n.host.width();var l=n.host.height();var o=a(b.target).offset();if(o.left>=e&&o.left<=e+c){if(o.top>=g&&o.top<=g+l){return}}}if(n.disabled||n.readOnly){return}var k=a.data(n.maskbox,"simpleInputMode");if(k==null){return}var j=n.maskbox[0].value;n.val(j);a.data(n.maskbox,"simpleInputMode",null);return false},_getString:function(){var c="";for(var b=0;b<this.items.length;b++){var d=this.items[b].character;if((this.items[b].character==this.promptChar)&&(this.promptChar!=this.items[b].defaultCharacter)){c+=this.items[b].defaultCharacter}else{c+=d}}return c},_initializeLiterals:function(){if(this.mask==undefined||this.mask==null){this.items=new Array();return}this.mask=this.mask.toString();var c=this.mask.length;for(var f=0;f<c;f++){var g=this.mask.substring(f,f+1);var h="";var b=false;if(g=="["){for(var d=f;d<c;d++){var e=this.mask.substring(d,d+1);if(e=="]"){break}}h="("+this.mask.substring(f,d+1)+")";f=d;b=true}if(g=="#"){h="(\\d|[+]|[-])";b=true}else{if(g=="9"||g=="0"){h="\\d";b=true}else{if(g=="$"){b=false}else{if(g=="/"||g==":"){b=false}else{if(g=="A"||g=="a"){h="\\w";b=true}else{if(g=="c"||g=="C"){h=".";b=true}else{if(g=="L"||g=="l"){h="([a-zA-Z])";b=true}}}}}}}var l=this;var k=function(o,n,j){k.character=o;k.regex=n;k.canEdit=j;k.defaultCharacter=l.promptChar};if(b){k(this.promptChar,h,b)}else{k(g,h,b)}this.items.push(k)}},setRegex:function(d,e,b,c){if((d==null||d==undefined)||(e==null||e==undefined)){return}if(d<this.items.length){this.items[d].regex=e;if(b!=null&&b!=undefined){this.items[d].canEdit=b}if(c!=null&&c!=undefined){this.items[d].defaultCharacter=c}}},_match:function(c,b){var d=new RegExp(b,"i");return d.test(c)},_raiseEvent:function(j,c){var d=this.events[j];var e={};e.owner=this;var f=c.charCode?c.charCode:c.keyCode?c.keyCode:0;var b=true;var h=this.readOnly;var g=new a.Event(d);g.owner=this;e.value=this.inputValue();e.text=this.maskedValue();g.args=e;if(j<2||j>6){b=this.host.trigger(g)}return b},_handleKeyPress:function(d,b){var c=this._isSpecialKey(b,d);return c},_insertKey:function(c){var d=this._selection();var b=this;if(d.start>=0&&d.start<this.items.length){var e=String.fromCharCode(c);var f=false;a.each(this.items,function(h,l){if(h<d.start){return}var k=b.items[h];if(!k.canEdit){return}if(b._match(e,k.regex)){if(!f&&d.length>0){for(var g=d.start;g<d.end;g++){if(b.items[g].canEdit){b.items[g].character=b.promptChar}}var n=b._getString();b.maskedValue(n);f=true}k.character=e;var n=b._getString();b.maskedValue(n);if(d.start<b.items.length){b._setSelectionStart(h+1)}return false}else{return false}})}},_deleteSelectedText:function(){var c=this._selection();var b=false;if(c.start>0||c.length>0){for(i=c.start;i<c.end;i++){if(i<this.items.length&&this.items[i].canEdit&&this.items[i].character!=this.promptChar){this.items[i].character=this.promptChar;b=true}}var d=this._getString();this.maskedValue(d);return b}},_saveSelectedText:function(){var b=this._selection();var d="";if(b.start>0||b.length>0){for(i=b.start;i<b.end;i++){if(this.items[i].canEdit){d+=this.items[i].character}}}if(window.clipboardData){window.clipboardData.setData("Text",d)}else{var c=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');c.val(d);a("body").append(c);c.select();setTimeout(function(){document.designMode="off";c.select();c.remove()},100)}return d},_pasteSelectedText:function(){var j=this._selection();var l="";var c=0;var h=j.start;var g="";var f=this;var b=function(k){if(k!=f.selectedText&&k.length>0){f.selectedText=k;if(f.selectedText==null||f.selectedText==undefined){return}}if(j.start>=0||j.length>0){for(i=j.start;i<f.items.length;i++){if(f.items[i].canEdit){if(c<f.selectedText.length){f.items[i].character=f.selectedText[c];c++;h=1+i}}}}var n=f._getString();f.maskedValue(n);if(h<f.items.length){f._setSelectionStart(h)}else{f._setSelectionStart(f.items.length)}};if(window.clipboardData){g=window.clipboardData.getData("Text");b(g)}else{var d=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');a("body").append(d);d.select();var e=this;setTimeout(function(){var k=d.val();b(k);d.remove()},100)}},_handleKeyDown:function(k,o){var n=this._selection();if(o>=96&&o<=105){o=o-48}var d=k.ctrlKey||k.metaKey;if((d&&o==97)||(d&&o==65)){return true}if((d&&o==120)||(d&&o==88)){this.selectedText=this._saveSelectedText(k);this._deleteSelectedText(k);if(a.jqx.browser.msie){return false}return true}if((d&&o==99)||(d&&o==67)){this.selectedText=this._saveSelectedText(k);if(a.jqx.browser.msie){return false}return true}if((d&&o==122)||(d&&o==90)){return false}if((d&&o==118)||(d&&o==86)||(k.shiftKey&&o==45)){this._pasteSelectedText();if(a.jqx.browser.msie){return false}return true}if(n.start>=0&&n.start<this.items.length){var g=String.fromCharCode(o);var p=this.items[n.start]}if(o==8){if(n.length==0){for(j=this.items.length-1;j>=0;j--){if(this.items[j].canEdit&&j<n.end&&this.items[j].character!=this.promptChar){this._setSelection(j,j+1);break}}}n=this._selection();var h=this._deleteSelectedText();if(n.start>0||n.length>0){if(n.start<=this.items.length){if(h){this._setSelectionStart(n.start)}else{this._setSelectionStart(n.start-1)}}}return false}if(o==190){var c=n.start;for(var j=c;j<this.items.length;j++){if(this.items[j].character=="."){this._setSelectionStart(j+1);break}}}if(o==191){var c=n.start;for(var j=c;j<this.items.length;j++){if(this.items[j].character=="/"){this._setSelectionStart(j+1);break}}}if(o==189){var c=n.start;for(var j=c;j<this.items.length;j++){if(this.items[j].character=="-"){this._setSelectionStart(j+1);break}}}if(o==46){if(n.length==0){for(var j=0;j<this.items.length;j++){if(this.items[j].canEdit&&j>=n.start&&this.items[j].character!=this.promptChar){this._setSelection(j,j+1);break}}}var b=n;n=this._selection();var f=this._deleteSelectedText();if(n.start>=0||n.length>=0){if(n.start<this.items.length){if(n.length<=1){if(b.end!=n.end){this._setSelectionStart(n.end)}else{this._setSelectionStart(n.end+1)}}else{this._setSelectionStart(n.start)}}}return false}this._insertKey(o);var l=this._isSpecialKey(o,k);return l},_isSpecialKey:function(b,c){if(b==189||b==9||b==13||b==35||b==36||b==37||b==39||b==46){return true}if((b===16&&c.shiftKey)||c.ctrlKey||c.metaKey){return true}return false},_selection:function(){if("selectionStart" in this.maskbox[0]){var f=this.maskbox[0];var g=f.selectionEnd-f.selectionStart;return{start:f.selectionStart,end:f.selectionEnd,length:g,text:f.value}}else{var c=document.selection.createRange();if(c==null){return{start:0,end:f.value.length,length:0}}var b=this.maskbox[0].createTextRange();var d=b.duplicate();b.moveToBookmark(c.getBookmark());d.setEndPoint("EndToStart",b);var g=c.text.length;return{start:d.text.length,end:d.text.length+c.text.length,length:g,text:c.text}}},_setSelection:function(d,b){if("selectionStart" in this.maskbox[0]){this.maskbox[0].focus();this.maskbox[0].setSelectionRange(d,b)}else{var c=this.maskbox[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",d);c.select()}},_setSelectionStart:function(b){this._setSelection(b,b)},refresh:function(b){if(!b){this._render()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_render:function(){var c=parseInt(this.host.css("border-left-width"));var g=parseInt(this.host.css("border-left-width"));var f=parseInt(this.host.css("border-left-width"));var d=parseInt(this.host.css("border-left-width"));var j=parseInt(this.host.css("height"))-f-d;var e=parseInt(this.host.css("width"))-c-g;if(this.width!=null&&this.width.toString().indexOf("px")!=-1){e=this.width}else{if(this.width!=undefined&&!isNaN(this.width)){e=this.width}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){j=this.height}else{if(this.height!=undefined&&!isNaN(this.height)){j=this.height}}e=parseInt(e);j=parseInt(j);if(this.maskbox[0]!=this.element){this.maskbox.css({"border-left-width":0,"border-right-width":0,"border-bottom-width":0,"border-top-width":0})}this.maskbox.css("text-align",this.textAlign);var k=this.maskbox.css("font-size");if(!isNaN(j)){this.maskbox.css("height",parseInt(k)+4+"px")}if(!isNaN(e)){this.maskbox.css("width",e-2)}var h=parseInt(j)-2*parseInt(f)-2*parseInt(d)-parseInt(k);if(isNaN(h)){h=0}if(!isNaN(j)){this.host.height(j)}if(!isNaN(e)){this.host.width(e)}if(this.maskbox[0]!=this.element){var b=h/2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){b=h/4}this.maskbox.css("padding-right","0px");this.maskbox.css("padding-left","0px");this.maskbox.css("padding-top",b);this.maskbox.css("padding-bottom",h/2)}this.maskbox[0].value=this._getString();if(this.width){if(this.width.toString().indexOf("%")>=0){this.element.style.width=this.width}if(this.height.toString().indexOf("%")>=0){this.element.style.height=this.height}}},destroy:function(){this.host.remove()},maskedValue:function(b){if(b===undefined){return this._value()}this.value=b;this._refreshValue();if(this.oldValue!==b){this._raiseEvent(1,b);this.oldValue=b;this._raiseEvent(0,b)}return this},_value:function(){var b=this.maskbox.val();return b},propertyChangedHandler:function(c,d,b,e){if(this.isInitialized==undefined||this.isInitialized==false){return}if(d=="rtl"){if(c.rtl){c.maskbox.addClass(c.toThemeProperty("jqx-rtl"))}else{c.maskbox.removeClass(c.toThemeProperty("jqx-rtl"))}}if(d==="value"){if(e==undefined||e==null){e=""}if(e===""){this.clear()}else{e=e.toString();this.inputValue(e)}c._raiseEvent(7,e)}if(d==="theme"){a.jqx.utilities.setTheme(b,e,this.host)}if(d=="disabled"){if(e){c.maskbox.addClass(c.toThemeProperty("jqx-input-disabled"));c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"));c.maskbox.attr("disabled",true)}else{c.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));c.host.removeClass(this.toThemeProperty("jqx-input-disabled"));c.maskbox.attr("disabled",false)}a.jqx.aria(c,"aria-disabled",e)}if(d=="readOnly"){this.readOnly=e}if(d=="promptChar"){for(i=0;i<c.items.length;i++){if(c.items[i].character==c.promptChar){c.items[i].character=e;c.items[i].defaultCharacter=e}}c.promptChar=e}if(d=="textAlign"){c.maskbox.css("text-align",e);c.textAlign=e}if(d=="mask"){c.mask=e;c.items=new Array();c._initializeLiterals();c.value=c._getString();c._refreshValue()}if(d=="width"){c.width=e;c._render()}else{if(d=="height"){c.height=e;c._render()}}},_value:function(){var b=this.value;return b},_getEditStringLength:function(){var b="";for(i=0;i<this.items.length;i++){if(this.items[i].canEdit){b+=this.items[i].character}}return b.length},_getEditValue:function(){var b="";for(i=0;i<this.items.length;i++){if(this.items[i].canEdit&&this.items[i].character!=this.promptChar){b+=this.items[i].character}}return b},parseValue:function(e){if(e==undefined||e==null){return null}var c=e.toString();var f="";var b=0;for(m=0;m<c.length;m++){var d=c.substring(m,m+1);for(i=b;i<this.items.length;i++){if(this.items[i].canEdit&&this._match(d,this.items[i].regex)){f+=d;b=i;break}}}return f},clear:function(){this.clearValue()},clearValue:function(){this.inputValue("",true)},val:function(b){if(b!=undefined&&typeof b!="object"){if(typeof b==="number"&&isFinite(b)){b=b.toString()}this.maskedValue(b)}return this.maskbox[0].value},inputValue:function(g,c){if(g==undefined||g==null){var f="";for(var e=0;e<this.items.length;e++){if(this.items[e].canEdit){f+=this.items[e].character}}return f}else{var b=0;g=g.toString();for(var e=0;e<this.items.length;e++){if(this.items[e].canEdit){if(this._match(g.substring(b,b+1),this.items[e].regex)){this.items[e].character=g.substring(b,b+1);b++}else{if(c){this.items[e].character=this.promptChar;b++}}}}var d=this._getString();this.maskedValue(d);return this.inputValue()}},_refreshValue:function(){var d=this.maskedValue();var b=0;for(var c=0;c<this.items.length;c++){if(d.length>b){if(this.items[c].canEdit&&this.items[c].character!=d[b]){if((this._match(d[b],this.items[c].regex)||d[b]==this.promptChar)&&d[b].length==1){this.items[c].character=d[b]}}b++}}this.value=this._getString();d=this.value;this.maskbox[0].value=d;a.jqx.aria(this,"aria-valuenow",d)}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxmenu.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxmenu.js
new file mode 100644 (file)
index 0000000..44d5d26
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxMenu","",{});a.extend(a.jqx._jqxMenu.prototype,{defineInstance:function(){var b={items:new Array(),mode:"horizontal",width:null,height:null,minimizeWidth:"auto",easing:"easeInOutSine",animationShowDuration:200,animationHideDuration:200,autoCloseInterval:0,animationHideDelay:100,animationShowDelay:100,menuElements:new Array(),autoSizeMainItems:false,autoCloseOnClick:true,autoCloseOnMouseLeave:true,enableRoundedCorners:true,disabled:false,autoOpenPopup:true,enableHover:true,autoOpen:true,autoGenerate:true,clickToOpen:false,showTopLevelArrows:false,touchMode:"auto",source:null,popupZIndex:17000,rtl:false,keyboardNavigation:false,lockFocus:false,title:"",events:["shown","closed","itemclick","initialized","open","close"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.attr("role","menubar");a.jqx.utilities.resize(this.host,function(){b.refresh()},false,this.mode!="popup");if(this.minimizeWidth!="auto"&&this.minimizeWidth!=null&&this.width&&this.width.toString().indexOf("%")==-1){a(window).resize(function(){b.refresh()})}this.host.css("outline","none");if(this.source){if(this.source!=null){var d=this.loadItems(this.source);this.element.innerHTML=d}}this._tmpHTML=this.element.innerHTML;if(this.element.innerHTML.indexOf("UL")){var e=this.host.find("ul:first");if(e.length>0){this._createMenu(e[0])}}this.host.data("autoclose",{});this._render();this.setSize();if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.host.attr("hideFocus",true)}},focus:function(){try{this.host.focus();if(this.mode==="popup"){var d=this.host.closest("div.jqx-menu-wrapper");d.focus()}if(this.keyboardNavigation){var c=this;var e=function(){if(!a.jqx.isHidden(a(c.items[0].element))){a(c.items[0].element).addClass(c.toThemeProperty("jqx-fill-state-focus"));c.activeItem=c.items[0]}else{var f=c._nextVisibleItem(c.items[0],0);if(f){a(f.element).addClass(c.toThemeProperty("jqx-fill-state-focus"));c.activeItem=f}}};if(!this.activeItem){e()}else{if(!a.jqx.isHidden(a(this.activeItem.element))){a(this.activeItem.element).addClass(this.toThemeProperty("jqx-fill-state-focus"))}else{a(this.activeItem.element).removeClass(this.toThemeProperty("jqx-fill-state-focus"));e()}}}}catch(b){}},loadItems:function(c,e){if(c==null){return}if(c.length==0){return""}var b=this;this.items=new Array();var d='<ul class="jqx-menu-ul">';if(e){d='<ul class="jqx-menu-ul" style="width:'+e+';">'}a.map(c,function(f){if(f==undefined){return null}d+=b._parseItem(f)});d+="</ul>";return d},_parseItem:function(f){var c="";if(f==undefined){return null}var b=f.label;if(!f.label&&f.html){b=f.html}if(!b){b="Item"}if(typeof f==="string"){b=f}var e=false;if(f.selected!=undefined&&f.selected){e=true}var d=false;if(f.disabled!=undefined&&f.disabled){d=true}c+="<li";if(d){c+=' item-disabled="true" '}if(f.label&&!f.html){c+=' item-label="'+b+'" '}if(f.value!=null){c+=' item-value="'+f.value+'" '}if(f.id!=undefined){c+=' id="'+f.id+'" '}c+=">"+b;if(f.items){if(f.subMenuWidth){c+=this.loadItems(f.items,f.subMenuWidth)}else{c+=this.loadItems(f.items)}}c+="</li>";return c},setSize:function(){if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height)}else{if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}}if(this.height===null){this.host.height("auto")}var g=this;if(this.minimizeWidth!=null&&this.mode!="popup"){var f=a(window).width();if(!a.jqx.response){var e=false;if(navigator.userAgent.match(/Windows|Linux|MacOS/)){var b=navigator.userAgent.indexOf("Windows Phone")>=0||navigator.userAgent.indexOf("WPDesktop")>=0||navigator.userAgent.indexOf("IEMobile")>=0||navigator.userAgent.indexOf("ZuneWP7")>=0;if(!b){e=true}}var c=this.minimizeWidth;if(e&&this.minimizeWidth=="auto"){return}}if(this.minimizeWidth=="auto"&&a.jqx.response){var d=new a.jqx.response();if(d.device.type=="Phone"||d.device.type=="Tablet"){if(!this.minimized){this.minimize()}}}else{if((f<c)&&!this.minimized){this.minimize()}else{if(this.minimized&&f>=c){this.restore()}}}}},minimize:function(){if(this.minimized){return}var e=this;this.host.addClass(this.toThemeProperty("jqx-menu-minimized"));this.minimized=true;this._tmpMode=this.mode;this.mode="simple";var h=this.host.closest("div.jqx-menu-wrapper");h.remove();a("#menuWrapper"+this.element.id).remove();a.each(this.items,function(){var k=this;var j=a(k.element);var i=a(k.subMenuElement);var l=i.closest("div.jqx-menu-popup");l.remove()});if(this.source){var d=this.loadItems(this.source);this.element.innerHTML=d;this._tmpHTML=this.element.innerHTML}this.element.innerHTML=this._tmpHTML;if(this.element.innerHTML.indexOf("UL")){var g=this.host.find("ul:first");if(g.length>0){this._createMenu(g[0])}}this._render();var c=this.host.find("ul:first");c.wrap('<div class="jqx-menu-wrapper" style="z-index:'+this.popupZIndex+'; padding: 0px; display: none; margin: 0px; height: auto; width: auto; position: absolute; top: 0; left: 0; display: block; visibility: visible;"></div>');var h=c.closest("div.jqx-menu-wrapper");h[0].id="menuWrapper"+this.element.id;h.detach();h.appendTo(a(document.body));h.addClass(this.toThemeProperty("jqx-widget"));h.addClass(this.toThemeProperty("jqx-menu"));h.addClass(this.toThemeProperty("jqx-menu-minimized"));h.addClass(this.toThemeProperty("jqx-widget-header"));c.children().hide();h.hide();h.find("ul").addClass(this.toThemeProperty("jqx-menu-ul-minimized"));this.minimizedItem=a("<div></div>");this.minimizedItem.addClass(this.toThemeProperty("jqx-item"));this.minimizedItem.addClass(this.toThemeProperty("jqx-menu-item-top"));this.addHandler(h,"keydown",function(i){return e.handleKeyDown(i)});this.minimizedItem.addClass(this.toThemeProperty("jqx-menu-minimized-button"));this.minimizedItem.prependTo(this.host);this.titleElement=a("<div>"+this.title+"</div>");this.titleElement.addClass(this.toThemeProperty("jqx-item"));this.titleElement.addClass(this.toThemeProperty("jqx-menu-title"));this.titleElement.prependTo(this.host);a("<div style='clear:both;'></div>").insertAfter(this.minimizedItem);e.minimizedHidden=true;var b=function(j){e.minimizedHidden=true;e.minimizedItem.show();var i=false;if(e.minimizedItem.css("float")=="right"){i=true}h.animate({left:!i?-h.outerWidth():e.host.coord().left+e.host.width()+h.width(),opacity:0},e.animationHideDuration,function(){h.find("ul:first").children().hide();h.hide()})};var f=function(k){if(e.minimizedHidden){h.find("ul:first").children().show();e.minimizedHidden=false;h.show();h.css("opacity",0);h.css("left",-h.outerWidth());var j=false;var i=h.width();if(e.minimizedItem.css("float")=="right"){h.css("left",e.host.coord().left+e.host.width()+i);j=true}h.css("top",e.host.coord().top+e.host.height());h.animate({left:!j?e.host.coord().left:e.host.coord().left+e.host.width()-i,opacity:0.95},e.animationShowDuration,function(){})}else{b(k)}e._raiseEvent("2",{type:"mouse",item:e.minimizedItem[0],event:k});e.setSize()};this.addHandler(a(window),"orientationchange.jqxmenu"+this.element.id,function(i){setTimeout(function(){if(!e.minimizedHidden){var j=h.width();var k=false;var j=h.width();if(e.minimizedItem.css("float")=="right"){k=true}h.css("top",e.host.coord().top+e.host.height());h.css({left:!k?e.host.coord().left:e.host.coord().left+e.host.width()-j})}},25)});this.addHandler(this.minimizedItem,"click",function(i){f(i)})},restore:function(){if(!this.minimized){return}this.host.find("ul").removeClass(this.toThemeProperty("jqx-menu-ul-minimized"));this.host.removeClass(this.toThemeProperty("jqx-menu-minimized"));this.minimized=false;this.mode=this._tmpMode;if(this.minimizedItem){this.minimizedItem.remove()}var d=a("#menuWrapper"+this.element.id);d.remove();if(this.source){var b=this.loadItems(this.source);this.element.innerHTML=b;this._tmpHTML=b}this.element.innerHTML=this._tmpHTML;if(this.element.innerHTML.indexOf("UL")){var c=this.host.find("ul:first");if(c.length>0){this._createMenu(c[0])}}this.setSize();this._render()},isTouchDevice:function(){if(this._isTouchDevice!=undefined){return this._isTouchDevice}var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){b=true}else{if(this.touchMode==false){b=false}}if(b){this.host.addClass(this.toThemeProperty("jqx-touch"));a(".jqx-menu-item").addClass(this.toThemeProperty("jqx-touch"))}this._isTouchDevice=b;return b},refresh:function(b){if(!b){this.setSize()}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_closeAll:function(f){var d=f!=null?f.data:this;var b=d.items;a.each(b,function(){var e=this;if(e.hasItems==true){if(e.isOpen){d._closeItem(d,e)}}});if(d.mode=="popup"){if(f!=null){var c=d._isRightClick(f);if(!c){d.close()}}}},closeItem:function(e){if(e==null){return false}var b=e;var c=document.getElementById(b);var d=this;a.each(d.items,function(){var f=this;if(f.isOpen==true&&f.element==c){d._closeItem(d,f);if(f.parentId){d.closeItem(f.parentId)}}});return true},openItem:function(e){if(e==null){return false}var b=e;var c=document.getElementById(b);var d=this;a.each(d.items,function(){var f=this;if(f.isOpen==false&&f.element==c){d._openItem(d,f);if(f.parentId){d.openItem(f.parentId)}}});return true},_getClosedSubMenuOffset:function(c){var b=a(c.subMenuElement);var f=-b.outerHeight();var e=-b.outerWidth();var d=c.level==0&&this.mode=="horizontal";if(d){e=0}else{f=0}switch(c.openVerticalDirection){case"up":case"center":f=b.outerHeight();break}switch(c.openHorizontalDirection){case this._getDir("left"):if(d){e=0}else{e=b.outerWidth()}break;case"center":if(d){e=0}else{e=b.outerWidth()}break}return{left:e,top:f}},_closeItem:function(l,o,g,c){if(l==null||o==null){return false}var j=a(o.subMenuElement);var b=o.level==0&&this.mode=="horizontal";var f=this._getClosedSubMenuOffset(o);var m=f.top;var e=f.left;var i=a(o.element);var k=j.closest("div.jqx-menu-popup");if(k!=null){var h=l.animationHideDelay;if(c==true){h=0}if(j.data("timer")&&j.data("timer").show!=null){clearTimeout(j.data("timer").show);j.data("timer").show=null}var n=function(){o.isOpen=false;if(b){j.stop().animate({top:m},l.animationHideDuration,function(){a(o.element).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.element).removeClass(l.toThemeProperty("jqx-menu-item-top-selected"));a(o.element).removeClass(l.toThemeProperty("jqx-rc-b-expanded"));k.removeClass(l.toThemeProperty("jqx-rc-t-expanded"));var p=a(o.arrow);if(p.length>0&&l.showTopLevelArrows){p.removeClass();if(o.openVerticalDirection=="down"){p.addClass(l.toThemeProperty("jqx-menu-item-arrow-down"));p.addClass(l.toThemeProperty("jqx-icon-arrow-down"))}else{p.addClass(l.toThemeProperty("jqx-menu-item-arrow-up"));p.addClass(l.toThemeProperty("jqx-icon-arrow-up"))}}a.jqx.aria(a(o.element),"aria-expanded",false);k.css({display:"none"});if(l.animationHideDuration==0){j.css({top:m})}l._raiseEvent("1",o)})}else{if(!a.jqx.browser.msie){}j.stop().animate({left:e},l.animationHideDuration,function(){if(l.animationHideDuration==0){j.css({left:e})}if(o.level>0){a(o.element).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.element).removeClass(l.toThemeProperty("jqx-menu-item-selected"));var p=a(o.arrow);if(p.length>0){p.removeClass();if(o.openHorizontalDirection!="left"){p.addClass(l.toThemeProperty("jqx-menu-item-arrow-"+l._getDir("right")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("right")))}else{p.addClass(l.toThemeProperty("jqx-menu-item-arrow-"+l._getDir("left")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("left")))}}}else{a(o.element).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.element).removeClass(l.toThemeProperty("jqx-menu-item-top-selected"));var p=a(o.arrow);if(p.length>0){p.removeClass();if(o.openHorizontalDirection!="left"){p.addClass(l.toThemeProperty("jqx-menu-item-arrow-top-"+l._getDir("right")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("right")))}else{p.addClass(l.toThemeProperty("jqx-menu-item-arrow-top-"+l._getDir("left")));p.addClass(l.toThemeProperty("jqx-icon-arrow-"+l._getDir("left")))}}}a.jqx.aria(a(o.element),"aria-expanded",false);k.css({display:"none"});l._raiseEvent("1",o)})}};if(h>0){if(j.data("timer")){j.data("timer").hide=setTimeout(function(){n()},h)}}else{n()}if(g!=undefined&&g){var d=j.children();a.each(d,function(){if(l.menuElements[this.id]&&l.menuElements[this.id].isOpen){var p=a(l.menuElements[this.id].subMenuElement);l._closeItem(l,l.menuElements[this.id],true,true)}})}}},getSubItems:function(i,h){if(i==null){return false}var g=this;var c=new Array();if(h!=null){a.extend(c,h)}var d=i;var f=this.menuElements[d];var b=a(f.subMenuElement);var e=b.find(".jqx-menu-item");a.each(e,function(){c[this.id]=g.menuElements[this.id];var j=g.getSubItems(this.id,c);a.extend(c,j)});return c},disable:function(g,d){if(g==null){return}var c=g;var f=this;if(this.menuElements[c]){var e=this.menuElements[c];e.disabled=d;var b=a(e.element);e.element.disabled=d;a.each(b.children(),function(){this.disabled=d});if(d){b.addClass(f.toThemeProperty("jqx-menu-item-disabled"));b.addClass(f.toThemeProperty("jqx-fill-state-disabled"))}else{b.removeClass(f.toThemeProperty("jqx-menu-item-disabled"));b.removeClass(f.toThemeProperty("jqx-fill-state-disabled"))}}},getItem:function(c){if(this.menuElements[c]){var b=this.menuElements[c];return b}return null},disableItem:function(b){this.disable(b,true)},hideItem:function(c){if(this.menuElements[c]){var b=this.menuElements[c];a(b.element).hide()}},showItem:function(c){if(this.menuElements[c]){var b=this.menuElements[c];a(b.element).show()}},enableItem:function(b){this.disable(b,false)},_setItemProperty:function(g,c,f){if(g==null){return}var b=g;var e=this;if(this.menuElements[b]){var d=this.menuElements[b];if(d[c]){d[c]=f}}},setItemOpenDirection:function(d,c,e){if(d==null){return}var j=d;var g=this;var f=a.jqx.browser.msie&&a.jqx.browser.version<8;if(this.menuElements[j]){var i=this.menuElements[j];if(c!=null){i.openHorizontalDirection=c;if(i.hasItems&&i.level>0){var h=a(i.element);if(h!=undefined){var b=a(i.arrow);if(i.arrow==null){b=a('<span id="arrow'+h[0].id+'"></span>');if(!f){b.prependTo(h)}else{b.appendTo(h)}i.arrow=b[0]}b.removeClass();if(i.openHorizontalDirection=="left"){b.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("left")));b.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("left")))}else{b.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("right")));b.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")))}b.css("visibility","visible");if(!f){b.css("display","block");b.css("float","right")}else{b.css("display","inline-block");b.css("float","none")}}}}if(e!=null){i.openVerticalDirection=e;var b=a(i.arrow);var h=a(i.element);if(!g.showTopLevelArrows){return}if(h!=undefined){if(i.arrow==null){b=a('<span id="arrow'+h[0].id+'"></span>');if(!f){b.prependTo(h)}else{b.appendTo(h)}i.arrow=b[0]}b.removeClass();if(i.openVerticalDirection=="down"){b.addClass(g.toThemeProperty("jqx-menu-item-arrow-down"));b.addClass(g.toThemeProperty("jqx-icon-arrow-down"))}else{b.addClass(g.toThemeProperty("jqx-menu-item-arrow-up"));b.addClass(g.toThemeProperty("jqx-icon-arrow-up"))}b.css("visibility","visible");if(!f){b.css("display","block");b.css("float","right")}else{b.css("display","inline-block");b.css("float","none")}}}}},_getSiblings:function(d){var e=new Array();var b=0;for(var c=0;c<this.items.length;c++){if(this.items[c]==d){continue}if(this.items[c].parentId==d.parentId&&this.items[c].hasItems){e[b++]=this.items[c]}}return e},_openItem:function(s,r,q){if(s==null||r==null){return false}if(r.isOpen){return false}if(r.disabled){return false}if(s.disabled){return false}var l=s.popupZIndex;if(q!=undefined){l=q}var e=s.animationHideDuration;s.animationHideDuration=0;s._closeItem(s,r,true,true);s.animationHideDuration=e;a(r.element).focus();var f=[5,5];var t=a(r.subMenuElement);if(t!=null){t.stop()}if(t.data("timer")&&t.data("timer").hide!=null){clearTimeout(t.data("timer").hide)}var o=t.closest("div.jqx-menu-popup");var h=a(r.element);var i=r.level==0?this._getOffset(r.element):h.position();if(r.level>0&&this.hasTransform){var p=parseInt(h.coord().top)-parseInt(this._getOffset(r.element).top);i.top+=p}if(r.level==0&&this.mode=="popup"){i=h.coord()}var j=r.level==0&&this.mode=="horizontal";var b=j?i.left:this.menuElements[r.parentId]!=null&&this.menuElements[r.parentId].subMenuElement!=null?parseInt(a(a(this.menuElements[r.parentId].subMenuElement).closest("div.jqx-menu-popup")).outerWidth())-f[0]:parseInt(t.outerWidth());o.css({visibility:"visible",display:"block",left:b,top:j?i.top+h.outerHeight():i.top,zIndex:l});t.css("display","block");if(this.mode!="horizontal"&&r.level==0){var d=this._getOffset(this.element);o.css("left",-1+d.left+this.host.outerWidth());t.css("left",-t.outerWidth())}else{var c=this._getClosedSubMenuOffset(r);t.css("left",c.left);t.css("top",c.top)}o.css({height:parseInt(t.outerHeight())+parseInt(f[1])+"px"});var n=0;var g=0;switch(r.openVerticalDirection){case"up":if(j){t.css("top",t.outerHeight());n=f[1];var k=parseInt(t.parent().css("padding-bottom"));if(isNaN(k)){k=0}if(k>0){o.addClass(this.toThemeProperty("jqx-menu-popup-clear"))}t.css("top",t.outerHeight()-k);o.css({display:"block",top:i.top-o.outerHeight(),zIndex:l})}else{n=f[1];t.css("top",t.outerHeight());o.css({display:"block",top:i.top-o.outerHeight()+f[1]+h.outerHeight(),zIndex:l})}break;case"center":if(j){t.css("top",0);o.css({display:"block",top:i.top-o.outerHeight()/2+f[1],zIndex:l})}else{t.css("top",0);o.css({display:"block",top:i.top+h.outerHeight()/2-o.outerHeight()/2+f[1],zIndex:l})}break}switch(r.openHorizontalDirection){case this._getDir("left"):if(j){o.css({left:i.left-(o.outerWidth()-h.outerWidth()-f[0])})}else{g=0;t.css("left",o.outerWidth());o.css({left:i.left-(o.outerWidth())+2*r.level})}break;case"center":if(j){o.css({left:i.left-(o.outerWidth()/2-h.outerWidth()/2-f[0]/2)})}else{o.css({left:i.left-(o.outerWidth()/2-h.outerWidth()/2-f[0]/2)});t.css("left",o.outerWidth())}break}if(j){if(parseInt(t.css("top"))==n){r.isOpen=true;return}}else{if(parseInt(t.css("left"))==g){r.isOpen==true;return}}a.each(s._getSiblings(r),function(){s._closeItem(s,this,true,true)});var m=a.data(s.element,"animationHideDelay");s.animationHideDelay=m;if(this.autoCloseInterval>0){if(this.host.data("autoclose")!=null&&this.host.data("autoclose").close!=null){clearTimeout(this.host.data("autoclose").close)}if(this.host.data("autoclose")!=null){this.host.data("autoclose").close=setTimeout(function(){s._closeAll()},this.autoCloseInterval)}}if(t.data("timer")){t.data("timer").show=setTimeout(function(){if(o!=null){if(j){t.stop();t.css("left",g);if(!a.jqx.browser.msie){}h.addClass(s.toThemeProperty("jqx-fill-state-pressed"));h.addClass(s.toThemeProperty("jqx-menu-item-top-selected"));if(r.openVerticalDirection=="down"){a(r.element).addClass(s.toThemeProperty("jqx-rc-b-expanded"));o.addClass(s.toThemeProperty("jqx-rc-t-expanded"))}else{a(r.element).addClass(s.toThemeProperty("jqx-rc-t-expanded"));o.addClass(s.toThemeProperty("jqx-rc-b-expanded"))}var u=a(r.arrow);if(u.length>0&&s.showTopLevelArrows){u.removeClass();if(r.openVerticalDirection=="down"){u.addClass(s.toThemeProperty("jqx-menu-item-arrow-down-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-down"))}else{u.addClass(s.toThemeProperty("jqx-menu-item-arrow-up-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-up"))}}if(s.animationShowDuration==0){t.css({top:n});r.isOpen=true;s._raiseEvent("0",r);a.jqx.aria(a(r.element),"aria-expanded",true)}else{t.animate({top:n},s.animationShowDuration,s.easing,function(){r.isOpen=true;a.jqx.aria(a(r.element),"aria-expanded",true);s._raiseEvent("0",r)})}}else{t.stop();t.css("top",n);if(!a.jqx.browser.msie){}if(r.level>0){h.addClass(s.toThemeProperty("jqx-fill-state-pressed"));h.addClass(s.toThemeProperty("jqx-menu-item-selected"));var u=a(r.arrow);if(u.length>0){u.removeClass();if(r.openHorizontalDirection!="left"){u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("right")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("right")))}else{u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("left")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("left")))}}}else{h.addClass(s.toThemeProperty("jqx-fill-state-pressed"));h.addClass(s.toThemeProperty("jqx-menu-item-top-selected"));var u=a(r.arrow);if(u.length>0){u.removeClass();if(r.openHorizontalDirection!="left"){u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("right")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("right")))}else{u.addClass(s.toThemeProperty("jqx-menu-item-arrow-"+s._getDir("left")+"-selected"));u.addClass(s.toThemeProperty("jqx-icon-arrow-"+s._getDir("left")))}}}if(!a.jqx.browser.msie){}if(s.animationShowDuration==0){t.css({left:g});s._raiseEvent("0",r);r.isOpen=true;a.jqx.aria(a(r.element),"aria-expanded",true)}else{t.animate({left:g},s.animationShowDuration,s.easing,function(){s._raiseEvent("0",r);r.isOpen=true;a.jqx.aria(a(r.element),"aria-expanded",true)})}}}},this.animationShowDelay)}},_getDir:function(b){switch(b){case"left":return !this.rtl?"left":"right";case"right":return this.rtl?"left":"right"}return"left"},_applyOrientation:function(i,d){var g=this;var f=0;g.host.removeClass(g.toThemeProperty("jqx-menu-horizontal"));g.host.removeClass(g.toThemeProperty("jqx-menu-vertical"));g.host.removeClass(g.toThemeProperty("jqx-menu"));g.host.removeClass(g.toThemeProperty("jqx-widget"));g.host.addClass(g.toThemeProperty("jqx-widget"));g.host.addClass(g.toThemeProperty("jqx-menu"));if(i!=undefined&&d!=undefined&&d=="popup"){if(g.host.parent().length>0&&g.host.parent().parent().length>0&&g.host.parent().parent()[0]==document.body){var h=a.data(document.body,"jqxMenuOldHost"+g.element.id);if(h!=null){var e=g.host.closest("div.jqx-menu-wrapper");e.remove();e.appendTo(h);g.host.css("display","block");g.host.css("visibility","visible");e.css("display","block");e.css("visibility","visible")}}}else{if(i==undefined&&d==undefined){a.data(document.body,"jqxMenuOldHost"+g.element.id,g.host.parent()[0])}}if(g.autoOpenPopup){if(g.mode=="popup"){g.addHandler(a(document),"contextmenu."+g.element.id,function(j){return false});g.addHandler(a(document),"mousedown.menu"+g.element.id,function(j){g._openContextMenu(j)})}else{g.removeHandler(a(document),"contextmenu."+g.element.id);g.removeHandler(a(document),"mousedown.menu"+g.element.id)}}else{g.removeHandler(a(document),"contextmenu."+g.element.id);g.removeHandler(a(document),"mousedown.menu"+g.element.id);g.addHandler(a(document),"contextmenu."+g.element.id,function(j){if(j.target&&j.target.className.indexOf("jqx-menu")>=0){return false}})}if(g.rtl){g.host.addClass(g.toThemeProperty("jqx-rtl"))}switch(g.mode){case"horizontal":g.host.addClass(g.toThemeProperty("jqx-widget-header"));g.host.addClass(g.toThemeProperty("jqx-menu-horizontal"));a.each(g.items,function(){var l=this;$element=a(l.element);var k=a(l.arrow);k.removeClass();if(l.hasItems&&l.level>0){var k=a('<span style="border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');k.prependTo($element);k.css("float",g._getDir("right"));k.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("right")));k.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")));l.arrow=k[0]}if(l.level==0){a(l.element).css("float",g._getDir("left"));if(!l.ignoretheme&&l.hasItems&&g.showTopLevelArrows){var k=a('<span style="border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');var j=a.jqx.browser.msie&&a.jqx.browser.version<8;if(l.arrow==null){if(!j){k.prependTo($element)}else{k.appendTo($element)}}else{k=a(l.arrow)}if(l.openVerticalDirection=="down"){k.addClass(g.toThemeProperty("jqx-menu-item-arrow-down"));k.addClass(g.toThemeProperty("jqx-icon-arrow-down"))}else{k.addClass(g.toThemeProperty("jqx-menu-item-arrow-up"));k.addClass(g.toThemeProperty("jqx-icon-arrow-up"))}k.css("visibility","visible");if(!j){k.css("display","block");k.css("float","right")}else{k.css("display","inline-block")}l.arrow=k[0]}else{if(!l.ignoretheme&&l.hasItems&&!g.showTopLevelArrows){if(l.arrow!=null){var k=a(l.arrow);k.remove();l.arrow=null}}}f=Math.max(f,$element.height())}});break;case"vertical":case"popup":case"simple":g.host.addClass(g.toThemeProperty("jqx-menu-vertical"));a.each(g.items,function(){var k=this;$element=a(k.element);if(k.hasItems&&!k.ignoretheme){if(k.arrow){a(k.arrow).remove()}if(g.mode=="simple"){return true}var j=a('<span style="border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');j.prependTo($element);j.css("float","right");if(k.level==0){j.addClass(g.toThemeProperty("jqx-menu-item-arrow-top-"+g._getDir("right")));j.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")))}else{j.addClass(g.toThemeProperty("jqx-menu-item-arrow-"+g._getDir("right")));j.addClass(g.toThemeProperty("jqx-icon-arrow-"+g._getDir("right")))}k.arrow=j[0]}$element.css("float","none")});if(g.mode=="popup"){g.host.addClass(g.toThemeProperty("jqx-widget-content"));g.host.wrap('<div tabindex=0 class="jqx-menu-wrapper" style="z-index:'+g.popupZIndex+'; border: none; background-color: transparent; padding: 0px; margin: 0px; position: absolute; top: 0; left: 0; display: block; visibility: visible;"></div>');var e=g.host.closest("div.jqx-menu-wrapper");g.host.addClass(g.toThemeProperty("jqx-popup"));e[0].id="menuWrapper"+g.element.id;e.appendTo(a(document.body));g.addHandler(e,"keydown",function(j){return g.handleKeyDown(j)})}else{g.host.addClass(g.toThemeProperty("jqx-widget-header"))}if(g.mode=="popup"){var b=g.host.height();g.host.css("position","absolute");g.host.css("top","0");g.host.css("left","0");if(g.mode!="simple"){g.host.height(b);g.host.css("display","none")}}break}var c=g.isTouchDevice();if(g.autoCloseOnClick){g.removeHandler(a(document),"mousedown.menu"+g.element.id,g._closeAfterClick);g.addHandler(a(document),"mousedown.menu"+g.element.id,g._closeAfterClick,g);if(c){g.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+".menu"+g.element.id,g._closeAfterClick,g);g.addHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+".menu"+g.element.id,g._closeAfterClick,g)}}},_getBodyOffset:function(){var c=0;var b=0;if(a("body").css("border-top-width")!="0px"){c=parseInt(a("body").css("border-top-width"));if(isNaN(c)){c=0}}if(a("body").css("border-left-width")!="0px"){b=parseInt(a("body").css("border-left-width"));if(isNaN(b)){b=0}}return{left:b,top:c}},_getOffset:function(c){var e=a.jqx.mobile.isSafariMobileBrowser();var i=a(c).coord(true);var h=i.top;var g=i.left;if(a("body").css("border-top-width")!="0px"){h=parseInt(h)+this._getBodyOffset().top}if(a("body").css("border-left-width")!="0px"){g=parseInt(g)+this._getBodyOffset().left}var d=a.jqx.mobile.isWindowsPhone();var f=a.jqx.mobile.isTouchDevice();if(this.hasTransform||(e!=null&&e)||d||f){var b={left:a.jqx.mobile.getLeftPos(c),top:a.jqx.mobile.getTopPos(c)};return b}else{return{left:g,top:h}}},_isRightClick:function(c){var b;if(!c){var c=window.event}if(c.which){b=(c.which==3)}else{if(c.button){b=(c.button==2)}}return b},_openContextMenu:function(d){var c=this;var b=c._isRightClick(d);if(b){c.open(parseInt(d.clientX)+5,parseInt(d.clientY)+5)}},close:function(){var c=this;var d=a.data(this.element,"contextMenuOpened"+this.element.id);if(d){var b=this.host;a.each(c.items,function(){var e=this;if(e.hasItems){c._closeItem(c,e)}});a.each(c.items,function(){var e=this;if(e.isOpen==true){$submenu=a(e.subMenuElement);var f=$submenu.closest("div.jqx-menu-popup");f.hide(this.animationHideDuration)}});this.host.hide(this.animationHideDuration);a.data(c.element,"contextMenuOpened"+this.element.id,false);c._raiseEvent("1",c);c._raiseEvent("5")}},open:function(e,d){if(this.mode=="popup"){var c=0;if(this.host.css("display")=="block"){this.close();c=this.animationHideDuration}var b=this;if(e==undefined||e==null){e=0}if(d==undefined||d==null){d=0}setTimeout(function(){b.host.show(b.animationShowDuration);b.host.css("visibility","visible");a.data(b.element,"contextMenuOpened"+b.element.id,true);b._raiseEvent("0",b);b._raiseEvent("4",{left:e,top:d});b.host.css("z-index",9999);if(e!=undefined&&d!=undefined){b.host.css({left:e,top:d})}b.focus()},c)}},_renderHover:function(c,e,b){var d=this;if(!e.ignoretheme){this.addHandler(c,"mouseenter",function(){d.hoveredItem=e;if(!e.disabled&&!e.separator&&d.enableHover&&!d.disabled){if(e.level>0){c.addClass(d.toThemeProperty("jqx-fill-state-hover"));c.addClass(d.toThemeProperty("jqx-menu-item-hover"))}else{c.addClass(d.toThemeProperty("jqx-fill-state-hover"));c.addClass(d.toThemeProperty("jqx-menu-item-top-hover"))}}});this.addHandler(c,"mouseleave",function(){if(!e.disabled&&!e.separator&&d.enableHover&&!d.disabled){if(e.level>0){c.removeClass(d.toThemeProperty("jqx-fill-state-hover"));c.removeClass(d.toThemeProperty("jqx-menu-item-hover"))}else{c.removeClass(d.toThemeProperty("jqx-fill-state-hover"));c.removeClass(d.toThemeProperty("jqx-menu-item-top-hover"))}}})}},_closeAfterClick:function(c){var b=c!=null?c.data:this;var d=false;if(b.autoCloseOnClick){a.each(a(c.target).parents(),function(){if(this.className.indexOf){if(this.className.indexOf("jqx-menu")!=-1){d=true;return false}}});if(!d){c.data=b;b._closeAll(c)}}},_autoSizeHorizontalMenuItems:function(){var c=this;if(c.autoSizeMainItems&&this.mode=="horizontal"){var b=this.maxHeight;if(parseInt(b)>parseInt(this.host.height())){b=parseInt(this.host.height())}b=parseInt(this.host.height());a.each(this.items,function(){var l=this;$element=a(l.element);if(l.level==0&&b>0){var d=$element.children().length>0?parseInt($element.children().height()):$element.height();var g=c.host.find("ul:first");var h=parseInt(g.css("padding-top"));var m=parseInt(g.css("margin-top"));var j=b-2*(m+h);var i=parseInt(j)/2-d/2;var e=parseInt(i);var k=parseInt(i);$element.css("padding-top",e);$element.css("padding-bottom",k);if(parseInt($element.outerHeight())>j){var f=1;$element.css("padding-top",e-f);e=e-f}}})}a.each(this.items,function(){var f=this;$element=a(f.element);if(f.hasItems&&f.level>0){if(f.arrow){var e=a(f.arrow);var d=a(f.element).height();if(d>15){e.css("margin-top",(d-15)/2)}}}})},_nextVisibleItem:function(c,d){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.nextItem;if(this._isVisible(b)&&!b.disabled&&b.type!=="separator"){if(this.minimized){return b}if(d!=undefined){if(b&&b.level!=d){continue}}return b}}return null},_prevVisibleItem:function(c,d){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.prevItem;if(this._isVisible(b)&&!b.disabled&&b.type!=="separator"){if(this.minimized){return b}if(d!=undefined){if(b&&b.level!=d){continue}}return b}}return null},_parentItem:function(d){if(d==null||d==undefined){return null}var c=d.parentElement;if(!c){return null}var b=null;a.each(this.items,function(){if(this.element==c){b=this;return false}});return b},_isElementVisible:function(b){if(b==null){return false}if(a(b).css("display")!="none"&&a(b).css("visibility")!="hidden"){return true}return false},_isVisible:function(c){if(c==null||c==undefined){return false}if(!this._isElementVisible(c.element)){return false}var b=this._parentItem(c);if(b==null){return true}if(this.minimized){return true}if(b!=null){if(!this._isElementVisible(b.element)){return false}if(b.isOpen||this.minimized){while(b!=null){b=this._parentItem(b);if(b!=null&&!this._isElementVisible(b.element)){return false}if(b!=null&&!b.isOpen){return false}}}else{return false}}return true},_render:function(f,g){if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.host.addClass(this.toThemeProperty("jqx-menu-disabled"))}if(this.host.attr("tabindex")==undefined){this.host.attr("tabindex",0)}var i=this.popupZIndex;var d=[5,5];var h=this;a.data(h.element,"animationHideDelay",h.animationHideDelay);var e=this.isTouchDevice();var c=e&&(a.jqx.mobile.isWindowsPhone()||navigator.userAgent.indexOf("Touch")>=0);var j=false;if(navigator.platform.toLowerCase().indexOf("win")!=-1){if(navigator.userAgent.indexOf("Windows Phone")>=0||navigator.userAgent.indexOf("WPDesktop")>=0||navigator.userAgent.indexOf("IEMobile")>=0||navigator.userAgent.indexOf("ZuneWP7")>=0){this.touchDevice=true}else{if(navigator.userAgent.indexOf("Touch")>=0){var b=("MSPointerDown" in window);if(b||a.jqx.mobile.isWindowsPhone()||navigator.userAgent.indexOf("ARM")>=0){j=true;c=true;h.clickToOpen=true;h.autoCloseOnClick=false;h.enableHover=false}}}}a.data(document.body,"menuel",this);this.hasTransform=a.jqx.utilities.hasTransform(this.host);this._applyOrientation(f,g);this.removeHandler(this.host,"blur");this.removeHandler(this.host,"focus");this.addHandler(this.host,"blur",function(k){if(h.keyboardNavigation){if(h.activeItem){if(h.mode==="popup"){if(document.activeElement&&document.activeElement.className.indexOf("jqx-menu-wrapper")>=0){return}}a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=null}}});this.addHandler(this.host,"focus",function(k){if(h.keyboardNavigation){if(!h.activeItem){if(h.hoveredItem){a(h.hoveredItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=h.hoveredItem}else{var l=function(){if(!a.jqx.isHidden(a(h.items[0].element))){a(h.items[0].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=h.items[0]}else{var m=h._nextVisibleItem(h.items[0],0);if(m){a(m.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=m}}};if(!h.activeItem){l()}else{if(!a.jqx.isHidden(a(h.activeItem.element))){a(h.activeItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"))}else{a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));l()}}}}}});this.removeHandler(this.host,"keydown");h.handleKeyDown=function(k){if(h.keyboardNavigation){if(k.target.nodeName.toLowerCase()==="input"){return true}var q=null;var o=null;a.each(h.items,function(){var A=this;if(this.disabled){return true}if(this.element.className.indexOf("pressed")>=0){o=this}if(this.element.className.indexOf("focus")>=0){q=this;return false}});if(!q&&o){q=o}if(!q){a(h.items[0].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=h.items[0];q=h.activeItem}var t=false;if(k.keyCode==27){k.data=h;h._closeAll(k);if(q){var z=q;while(z!=null){if(z.parentItem){z=z.parentItem}else{a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=z;a(h.activeItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));z=z.parentItem}}}t=true}if(k.keyCode==13){if(q){t=true;h._raiseEvent("2",{item:q.element,event:k,type:"keyboard"});var r=q.anchor!=null?a(q.anchor):null;if(r!=null&&r.length>0){var l=r.attr("href");var u=r.attr("target");if(l!=null){if(u!=null){window.open(l,u)}else{window.location=l}}}k.preventDefault();k.stopPropagation();a(q.element).focus()}}var n=function(D){if(D==null){return new Array()}var C=new Array();var A=0;for(var B=0;B<h.items.length;B++){if(h.items[B].parentId==D.parentId){C[A++]=h.items[B]}}return C};var v="";switch(k.keyCode){case 40:v="down";break;case 38:v="up";break;case 39:v="right";break;case 37:v="left";break}if(q&&q.openHorizontalDirection==="left"&&v==="left"){v="right"}if(q&&q.openHorizontalDirection==="left"&&v==="right"){v="left"}if(q&&q.openVerticalDirection==="top"&&v==="top"){v="bottom"}if(q&&q.openVerticalDirection==="top"&&v==="bottom"){v="top"}if(h.rtl){if(v==="right"){v="left"}else{if(v==="left"){v="right"}}}if(v==="right"&&!h.minimized){if(k.altKey&&(q.level!=0&&q.hasItems||h.mode!="horizontal")){h._openItem(h,q)}else{var x=h._nextVisibleItem(q,0);var m=h._nextVisibleItem(q);var w=n(m);if(!x){x=m}if(x&&((x.parentId===q.parentId&&x.level==0&&h.mode=="horizontal")||(m.id==w[0].id&&m.level!=0))){if(m.id==w[0].id&&((q.level!=0)||(q.level==0&&h.mode!="horizontal"))){x=m}a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}k.preventDefault();k.stopPropagation()}if(v==="left"&&!h.minimized){if(k.altKey&&((q.level!=0&&h.mode!=="horizontal")||(q.level>1&&h.mode==="horizontal")||(q.level==1&&q.hasItems&&h.mode==="horizontal"))){if(q.hasItems){h._closeItem(h,q)}else{if(q.parentItem){h._closeItem(h,q.parentItem);a(q.parentItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=q.parentItem}}}else{var x=h._prevVisibleItem(q,0);var y=q.parentItem;if(x&&(x.parentId===q.parentId&&x.level==0&&h.mode=="horizontal")){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}else{if(!(y&&y.level==0&&h.mode=="horizontal")&&y&&y.level==q.level-1){a(y.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=y}}}k.preventDefault();k.stopPropagation()}if(v==="down"){if(k.altKey){if(q.level==0&&q.hasItems){h._openItem(h,q)}if(h.minimized){if(h.minimizedHidden){h.minimizedItem.trigger("click")}}}else{var x=h._nextVisibleItem(q,q.level);var w=n(x);if(h.minimized&&x){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}else{if(x&&(x.parentId===q.parentId||(x.id==w[0].id&&h.mode=="horizontal"))){if(!(x.level==0&&h.mode=="horizontal")){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}if(h.mode==="horizontal"&&q.level===0&&q.isOpen&&q.hasItems){var x=h._nextVisibleItem(q);a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}}k.preventDefault();k.stopPropagation()}else{if(v==="up"){if(k.altKey){if(q.parentItem&&q.parentItem.level==0){h._closeItem(h,q.parentItem);a(q.parentItem.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=q.parentItem}else{if(q.parentItem===null&&q.level===0&&h.mode==="horizontal"){h._closeItem(h,q)}}if(h.minimized){if(!h.minimizedHidden){h.minimizedItem.trigger("click")}}}else{var x=h._prevVisibleItem(q,q.level);var w=n(q);if(h.minimized&&x){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}else{if(x&&(x.parentId===q.parentId||(x.id==q.parentId&&x.level==0&&h.mode=="horizontal"))){if(!(x.level==0&&h.mode==="horizontal"&&q.level===0)){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}else{if(q&&q.id==w[0].id&&q.parentItem&&q.parentItem.level===0&&h.mode==="horizontal"){var x=q.parentItem;a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x}}}}k.preventDefault();k.stopPropagation()}}if(k.keyCode==9){var x=k.shiftKey?h._prevVisibleItem(q):h._nextVisibleItem(q);if(x){a(x.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=x;k.preventDefault();k.stopPropagation()}else{if(h.lockFocus){var w=new Array();var s=0;for(var p=0;p<h.items.length;p++){if(h.items[p]==q){continue}if(h.items[p].parentId==q.parentId){w[s++]=h.items[p]}}if(w.length>0){if(k.shiftKey){a(w[w.length-1].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=w[w.length-1]}else{a(w[0].element).addClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=w[0]}a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"))}k.preventDefault();k.stopPropagation()}else{if(q){a(q.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"));h.activeItem=null}}}}}else{return true}};this.addHandler(this.host,"keydown",function(k){h.handleKeyDown(k)});if(h.enableRoundedCorners){this.host.addClass(h.toThemeProperty("jqx-rc-all"))}a.each(this.items,function(){var r=this;var n=a(r.element);n.attr("role","menuitem");if(h.enableRoundedCorners){n.addClass(h.toThemeProperty("jqx-rc-all"))}h.removeHandler(n,"click");h.addHandler(n,"click",function(w){if(r.disabled){return}if(h.disabled){return}if(h.keyboardNavigation){if(h.activeItem){a(h.activeItem.element).removeClass(h.toThemeProperty("jqx-fill-state-focus"))}h.activeItem=r;a(r.element).addClass(h.toThemeProperty("jqx-fill-state-focus"));if(h.minimized){w.stopPropagation()}}h._raiseEvent("2",{type:"mouse",item:r.element,event:w});if(!h.autoOpen){if(r.level>0){if(h.autoCloseOnClick&&!e&&!h.clickToOpen){w.data=h;h._closeAll(w)}}}else{if(h.autoCloseOnClick&&!e&&!h.clickToOpen){if(r.closeOnClick){w.data=h;h._closeAll(w)}}}if(e&&h.autoCloseOnClick){w.data=h;if(!r.hasItems){h._closeAll(w)}}if(w.target.tagName!="A"&&w.target.tagName!="a"){var u=r.anchor!=null?a(r.anchor):null;if(u!=null&&u.length>0){var t=u.attr("href");var v=u.attr("target");if(t!=null){if(v!=null){window.open(t,v)}else{window.location=t}}}}});h.removeHandler(n,"mouseenter");h.removeHandler(n,"mouseleave");if(!c&&h.mode!="simple"){h._renderHover(n,r,e)}if(r.subMenuElement!=null){var o=a(r.subMenuElement);if(h.mode=="simple"){o.show();return true}o.wrap('<div class="jqx-menu-popup '+h.toThemeProperty("jqx-menu-popup")+'" style="border: none; background-color: transparent; z-index:'+i+'; padding: 0px; margin: 0px; position: absolute; top: 0; left: 0; display: block; visibility: hidden;"><div style="background-color: transparent; border: none; position:absolute; overflow:hidden; left: 0; top: 0; right: 0; width: 100%; height: 100%;"></div></div>');o.css({overflow:"hidden",position:"absolute",left:0,display:"inherit",top:-o.outerHeight()});o.data("timer",{});if(r.level>0){o.css("left",-o.outerWidth())}else{if(h.mode=="horizontal"){o.css("left",0)}}i++;var q=a(r.subMenuElement).closest("div.jqx-menu-popup").css({width:parseInt(a(r.subMenuElement).outerWidth())+parseInt(d[0])+"px",height:parseInt(a(r.subMenuElement).outerHeight())+parseInt(d[1])+"px"});var s=n.closest("div.jqx-menu-popup");if(s.length>0){var k=o.css("margin-left");var m=o.css("margin-right");var l=o.css("padding-left");var p=o.css("padding-right");q.appendTo(s);o.css("margin-left",k);o.css("margin-right",m);o.css("padding-left",l);o.css("padding-right",p)}else{var k=o.css("margin-left");var m=o.css("margin-right");var l=o.css("padding-left");var p=o.css("padding-right");q.appendTo(a(document.body));o.css("margin-left",k);o.css("margin-right",m);o.css("padding-left",l);o.css("padding-right",p)}if(!h.clickToOpen){if(e||c){h.removeHandler(n,a.jqx.mobile.getTouchEventName("touchstart"));h.addHandler(n,a.jqx.mobile.getTouchEventName("touchstart"),function(t){clearTimeout(o.data("timer").hide);if(o!=null){o.stop()}if(r.level==0&&!r.isOpen&&h.mode!="popup"){t.data=h;h._closeAll(t)}if(!r.isOpen){h._openItem(h,r)}else{h._closeItem(h,r,true)}return false})}if(!c){h.addHandler(n,"mouseenter",function(){if(h.autoOpen||(r.level>0&&!h.autoOpen)){clearTimeout(o.data("timer").hide)}if(r.parentId&&r.parentId!=0){if(h.menuElements[r.parentId]){var t=h.menuElements[r.parentId].isOpen;if(!t){return}}}if(h.autoOpen||(r.level>0&&!h.autoOpen)){h._openItem(h,r)}return false});h.addHandler(n,"mousedown",function(){if(!h.autoOpen&&r.level==0){clearTimeout(o.data("timer").hide);if(o!=null){o.stop()}if(!r.isOpen){h._openItem(h,r)}else{h._closeItem(h,r,true)}}});h.addHandler(n,"mouseleave",function(u){if(h.autoCloseOnMouseLeave){clearTimeout(o.data("timer").hide);var x=a(r.subMenuElement);var t={left:parseInt(u.pageX),top:parseInt(u.pageY)};var w={left:parseInt(x.coord().left),top:parseInt(x.coord().top),width:parseInt(x.outerWidth()),height:parseInt(x.outerHeight())};var v=true;if(w.left-5<=t.left&&t.left<=w.left+w.width+5){if(w.top<=t.top&&t.top<=w.top+w.height){v=false}}if(v){h._closeItem(h,r,true)}}});h.removeHandler(q,"mouseenter");h.addHandler(q,"mouseenter",function(){clearTimeout(o.data("timer").hide)});h.removeHandler(q,"mouseleave");h.addHandler(q,"mouseleave",function(t){if(h.autoCloseOnMouseLeave){clearTimeout(o.data("timer").hide);clearTimeout(o.data("timer").show);if(o!=null){o.stop()}h._closeItem(h,r,true)}})}}else{h.removeHandler(n,"mousedown");h.addHandler(n,"mousedown",function(t){clearTimeout(o.data("timer").hide);if(o!=null){o.stop()}if(r.level==0&&!r.isOpen){t.data=h;h._closeAll(t)}if(!r.isOpen){h._openItem(h,r)}else{h._closeItem(h,r,true)}})}}});if(this.mode=="simple"){this._renderSimpleMode()}this._autoSizeHorizontalMenuItems();this._raiseEvent("3",this)},_renderSimpleMode:function(){this.host.show()},createID:function(){var b=Math.random()+"";b=b.replace(".","");b="99"+b;b=b/1;while(this.items[b]){b=Math.random()+"";b=b.replace(".","");b=b/1}return"menuItem"+b},_createMenu:function(c,f){if(c==null){return}if(f==undefined){f=true}if(f==null){f=true}var o=this;var u=a(c).find("li");var q=0;this.itemMapping=new Array();for(var j=0;j<u.length;j++){var m=u[j];var s=a(m);if(m.className.indexOf("jqx-menu")==-1&&this.autoGenerate==false){continue}var p=m.id;if(!p){p=this.createID()}if(f){m.id=p;this.items[q]=new a.jqx._jqxMenu.jqxMenuItem();this.menuElements[p]=this.items[q]}q+=1;var t=0;var x=this;var h=s.children();h.each(function(){if(!f){this.className="";if(x.autoGenerate){a(x.items[q-1].subMenuElement)[0].className="";if(!x.minimized){a(x.items[q-1].subMenuElement).addClass(x.toThemeProperty("jqx-widget-content"))}a(x.items[q-1].subMenuElement).addClass(x.toThemeProperty("jqx-menu-dropdown"));a(x.items[q-1].subMenuElement).addClass(x.toThemeProperty("jqx-popup"))}}if(this.className.indexOf("jqx-menu-dropdown")!=-1){if(f){x.items[q-1].subMenuElement=this}return false}else{if(x.autoGenerate&&(this.tagName=="ul"||this.tagName=="UL")){if(f){x.items[q-1].subMenuElement=this}this.className="";if(!x.minimized){a(this).addClass(x.toThemeProperty("jqx-widget-content"))}a(this).addClass(x.toThemeProperty("jqx-menu-dropdown"));a(this).addClass(x.toThemeProperty("jqx-popup"));a(this).attr("role","menu");if(x.rtl){a(this).addClass(x.toThemeProperty("jqx-rc-l"))}else{a(this).addClass(x.toThemeProperty("jqx-rc-r"))}a(this).addClass(x.toThemeProperty("jqx-rc-b"));return false}}});var w=s.parents();w.each(function(){if(this.className.indexOf("jqx-menu-item")!=-1){t=this.id;return false}else{if(x.autoGenerate&&(this.tagName=="li"||this.tagName=="LI")){t=this.id;return false}}});var e=false;var d=m.getAttribute("type");var b=m.getAttribute("ignoretheme")||m.getAttribute("data-ignoretheme");if(b){if(b=="true"||b==true){b=true}}else{b=false}if(!d){d=m.type}else{if(d=="separator"){var e=true}}if(!e){if(t){d="sub"}else{d="top"}}var g=this.items[q-1];if(f){g.id=p;g.parentId=t;g.type=d;g.separator=e;g.element=u[j];var l=s.children("a");g.disabled=m.getAttribute("item-disabled")=="true"?true:false;g.level=s.parents("li").length;g.anchor=l.length>0?l:null;if(g.anchor){a(g.anchor).attr("tabindex",-1)}}g.ignoretheme=b;var n=this.menuElements[t];if(n!=null){if(n.ignoretheme){g.ignoretheme=n.ignoretheme;b=n.ignoretheme}g.parentItem=n;g.parentElement=n.element}if(this.autoGenerate){if(d=="separator"){s.removeClass();s.addClass(this.toThemeProperty("jqx-menu-item-separator"));s.attr("role","separator")}else{if(!b){s[0].className="";if(this.rtl){s.addClass(this.toThemeProperty("jqx-rtl"))}if(g.level>0&&!x.minimized){s.addClass(this.toThemeProperty("jqx-item"));s.addClass(this.toThemeProperty("jqx-menu-item"))}else{s.addClass(this.toThemeProperty("jqx-item"));s.addClass(this.toThemeProperty("jqx-menu-item-top"))}}}}if(g.disabled){s.addClass(x.toThemeProperty("jqx-menu-item-disabled"));s.addClass(x.toThemeProperty("jqx-fill-state-disabled"))}this.itemMapping[j]={element:u[j],item:g};this.itemMapping["id"+u[j].id]=this.itemMapping[j];if(f&&!b){g.hasItems=s.find("li").length>0;if(g.hasItems){if(g.element){a.jqx.aria(a(g.element),"aria-haspopup",true);if(!g.subMenuElement.id){g.subMenuElement.id=a.jqx.utilities.createId()}a.jqx.aria(a(g.element),"aria-owns",g.subMenuElement.id)}}}}for(var r=0;r<u.length;r++){var v=u[r];if(this.itemMapping["id"+v.id]){var g=this.itemMapping["id"+v.id].item;if(!g){continue}g.prevItem=null;g.nextItem=null;if(r>0){if(this.itemMapping["id"+u[r-1].id]){g.prevItem=this.itemMapping["id"+u[r-1].id].item}}if(r<u.length-1){if(this.itemMapping["id"+u[r+1].id]){g.nextItem=this.itemMapping["id"+u[r+1].id].item}}}}},destroy:function(){var b=this;a.jqx.utilities.resize(b.host,null,true);var d=b.host.closest("div.jqx-menu-wrapper");b.removeHandler(d,"keydown");d.remove();b.removeHandler(a("#menuWrapper"+b.element.id),"keydown");a("#menuWrapper"+b.element.id).remove();b.removeHandler(b.host,"keydown");b.removeHandler(b.host,"focus");b.removeHandler(b.host,"blur");b.removeHandler(a(document),"mousedown.menu"+b.element.id,b._closeAfterClick);b.removeHandler(a(document),"mouseup.menu"+b.element.id,b._closeAfterClick);b.removeHandler(a(document),"contextmenu."+b.element.id);b.removeHandler(b.host,"contextmenu."+b.element.id);a.data(document.body,"jqxMenuOldHost"+b.element.id,null);if(b.isTouchDevice()){b.removeHandler(a(document),a.jqx.mobile.getTouchEventName("touchstart")+".menu"+b.element.id,b._closeAfterClick,this)}if(a(window).off){a(window).off("resize.menu"+b.element.id)}a.each(b.items,function(){var g=this;var f=a(g.element);b.removeHandler(f,"click");b.removeHandler(f,"selectstart");b.removeHandler(f,"mouseenter");b.removeHandler(f,"mouseleave");b.removeHandler(f,"mousedown");b.removeHandler(f,"mouseleave");var e=a(g.subMenuElement);var h=e.closest("div.jqx-menu-popup");h.remove();delete this.subMenuElement;delete this.element});a.data(document.body,"menuel",null);delete b.menuElements;b.items=new Array();delete b.items;var c=a.data(b.element,"jqxMenu");if(c){delete c.instance}b.host.removeClass();b.host.remove();delete b.host;delete b.element},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);if(f=="2"){args=c.item;args.owner=this;args.clickType=c.type;a.extend(e,c.event);e.type="itemclick"}e.owner=this;e.args=args;var b=this.host.trigger(e);return b},propertyChangedHandler:function(b,d,h,g){if(this.isInitialized==undefined||this.isInitialized==false){return}if(d=="disabled"){if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"));b.host.addClass(b.toThemeProperty("jqx-menu-disabled"))}else{b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));b.host.removeClass(b.toThemeProperty("jqx-menu-disabled"))}}if(g==h){return}if(d=="touchMode"){this._isTouchDevice=null;b._render(g,h)}if(d==="width"||d==="height"){b.setSize();if(b.mode==="popup"){var e=this.host.closest("div.jqx-menu-wrapper");e[d](g);var i=this.host[0].id;a("#"+i)[d](g)}return}if(d=="source"){if(b.source!=null){var c=b.loadItems(b.source);b.element.innerHTML=c;var f=b.host.find("ul:first");if(f.length>0){b.refresh();b._createMenu(f[0]);b._render()}}}if(d=="autoCloseOnClick"){if(g==false){b.removeHandler(a(document),"mousedown.menu"+this.element.id,b._closeAll)}else{b.addHandler(a(document),"mousedown.menu"+this.element.id,b,b._closeAll)}}else{if(d=="mode"||d=="width"||d=="height"||d=="showTopLevelArrows"){b.refresh();if(d=="mode"){b._render(g,h)}else{b._applyOrientation()}}else{if(d=="theme"){a.jqx.utilities.setTheme(h,g,b.host)}}}}})})(jqxBaseFramework);(function(a){a.jqx._jqxMenu.jqxMenuItem=function(e,d,c){var b={id:e,parentId:d,parentItem:null,anchor:null,type:c,disabled:false,level:0,isOpen:false,hasItems:false,element:null,subMenuElement:null,arrow:null,openHorizontalDirection:"right",openVerticalDirection:"down",closeOnClick:true};return b}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxnavbar.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxnavbar.js
new file mode 100644 (file)
index 0000000..0368276
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxNavBar","",{});a.extend(a.jqx._jqxNavBar.prototype,{defineInstance:function(){var b={height:"auto",minimizedHeight:30,popupAnimationDelay:250,minimizeButtonPosition:"left",width:"100%",selectedItem:0,selection:true,disabled:false,rtl:false,minimized:false,columns:null,minimizedTitle:"",orientation:"horizontal",events:["change"]};a.extend(true,this,b)},createInstance:function(b){this.render()},render:function(){var b=this;if(b.ul&&b.ul.parent()[0]!==b.element){b.ul.detach();b.host.children().remove();b.host.append(b.ul);if(b.popup){b.popup.remove()}b.host.height(null);b.host.removeClass(b.toThemeProperty("jqx-widget-header"));b.host.removeClass(b.toThemeProperty("jqx-navbar-minimized"))}b.ul=b.host.children();b._items=b.ul.children();a.each(b._items,function(){a(this).removeClass()});if(this.width!==null&&(this.width.toString().indexOf("%")>=0||this.width.toString().indexOf("px")>=0)){this.element.style.width=this.width}else{this.element.style.width=this.width+"px"}b._layoutItems();b._addClasses();b._addHandlers();b._handleMinimize();a.jqx.utilities.resize(this.host,function(){b._resizePopup()})},_layoutItems:function(){var k=this;var t=1;var s=0;var o=this.height===null||this.height==="auto";if(k.orientation==="horizontal"){if(k._items.length>5){var c=50+"%";k._items.css("width",c);var q=k.height;t=Math.ceil(k._items.length/2);if(!o){var p;var h=false;if(q.toString().indexOf("%")>=0){p=parseInt(q)/t;p+="%";h=true}else{p=parseInt(q)/t}s=2;if(h){k._items.css("height",p);k._items.css("line-height",k._items.height()+"px")}else{k._items.height(p);k._items.css("line-height",p+"px")}}}else{var c=k.host.width/2;var g=k._items.length;var c=100/g+"%";k._items.css("width",c);if(!o){if(k.height.toString().indexOf("%")>=0){k._items.css("height",p);k._items.css("line-height",k.height)}else{k._items.height(k.height);k._items.css("line-height",parseInt(k.height)+"px")}}s=g}if(k.columns){var q=k.height;var l=0;for(var e=0;e<k._items.length;e++){var r=k._items[e];a(r).css("width",k.columns[l]);l++;if(l>=k.columns.length){l=0;if(k.columns.length!==k._items.length){t++}}}var h=false;var p;if(q.toString().indexOf("%")>=0){p=parseInt(q)/t;p+="%";h=true}else{p=parseInt(q)/t}if(!o){if(h){k._items.css("height",p);k._items.css("line-height",k._items.height()+"px")}else{k._items.height(p);k._items.css("line-height",p+"px")}}s=k.columns.length}}else{var q=k.height;var l=0;for(var e=0;e<k._items.length;e++){var r=k._items[e];a(r).css("width","100%")}t=k._items.length;if(!o){var h=false;var p;if(q.toString().indexOf("%")>=0){p=parseInt(q)/t;p+="%";h=true}else{p=parseInt(q)/t}if(h){k._items.css("height",p);k._items.css("line-height",k._items.height()+"px")}else{k._items.height(p);k._items.css("line-height",p+"px")}}s=1}if(k.selection){var b=0;var f=k._items.length/s;var n=false;if(f<t){n=true}for(var e=0;e<t;e++){for(var d=0;d<s;d++){if(d<s-1){var m=k.rtl?"left":"right";a(k._items[b]).css("border-"+m+"-width","1px");a(k._items[b]).css("border-"+m+"-style","solid")}if(t>1&&e>0){a(k._items[b]).css("border-top-width","1px");a(k._items[b]).css("border-top-style","solid")}if(n&&e===t-2&&d===s-1){a(k._items[b]).css("border-bottom-width","1px");a(k._items[b]).css("border-bottom-style","solid")}b++}}}if(a.jqx.browser.msie&&a.jqx.browser.version<8){k._items.css("padding-left","0px");k._items.css("padding-right","0px");a.each(k._items,function(){a(this).css("border-left-width","0px");a(this).css("border-right-width","0px");a(this).css("position","relative");a(this).css("margin-left","-1px")});k.host.css("border","none")}},_handlePopupHeight:function(){var b=this;if(!b.minimized){return}var d;var c=false;if(b.height.toString().indexOf("%")>=0){b.host.css("height",b.height);d=b.host.height()-b.minimizedHeight-1;c=true}if(c){b.popup.height(d);b.ul.height(d);b.host.height(b.minimizedHeight);b._layoutItems()}},_handleMinimize:function(){var d=this;if(d.minimized){var f=d.host;f.height(d.minimizedHeight);f.css("box-sizing","border-box");f.addClass(d.toThemeProperty("jqx-widget-header"));f.addClass(d.toThemeProperty("jqx-navbar-minimized"));var c=a('<div style="cursor: pointer; height: 100%; margin:0px; margin-left: 5px; margin-right:5px;"></div>');f.append(c);c.css("float",d.minimizeButtonPosition);var e=a('<div style="height: 100%; margin:0px; margin-left: 5px; margin-right:5px;"></div>');e.append(d.minimizedTitle);e.css("float",d.minimizeButtonPosition==="left"?"right":"left");if(d.minimizedHeight!=="auto"){if(d.minimizedHeight.toString().indexOf("%")>=0){e.css("line-height",d.minimizedHeight)}else{e.css("line-height",parseInt(d.minimizedHeight)+"px")}}f.append(e);c.addClass(d.toThemeProperty("jqx-menu-minimized-button"));f.removeClass(d.toThemeProperty("jqx-widget-content"));d.ul.detach();var b=a("<div style='box-sizing: border-box; z-index: 999999; display: none; position: absolute;'></div>");b.addClass(d.toThemeProperty("jqx-widget jqx-widget-content jqx-popup jqx-navbar jqx-navbar-popup"));b.append(d.ul);d.popup=b;a(document.body).append(b);d.opened=false;c.click(function(){if(!d.opened){d.open()}else{d.close()}});d.button=c}},close:function(){var b=this;b.popup.fadeOut(b.popupAnimationDelay);b.opened=false},open:function(){var b=this;b.popup.fadeIn(b.popupAnimationDelay);b.popup.css("top",parseInt(b.host.coord().top)+b.host.outerHeight()-1);b.popup.width(b.host.width());var c=b.host.coord().left;b.popup.css("left",c);if(c.toString().indexOf(".5")>=0){b.popup.width(b.host.width()-0.5)}b._handlePopupHeight();b.opened=true},_resizePopup:function(){var b=this;if(b.minimized&&b.popup){b.popup.width(b.host.width());var c=b.host.coord().left;b.popup.css("left",c);if(c.toString().indexOf(".5")>=0){b.popup.width(b.host.width()-0.5)}b.popup.css("top",parseInt(b.host.coord().top)+b.host.outerHeight()-1);b._handlePopupHeight()}},selectAt:function(c){var d=this;if(!d.selection){return}a(d._items[d.selectedItem]).removeClass(d.toThemeProperty("jqx-fill-state-pressed"));a(d._items[c]).addClass(d.toThemeProperty("jqx-fill-state-pressed"));var b=d.selectedItem;d.selectedItem=c;d._raiseEvent("0",{selectedItem:c,oldSelectedItem:b})},getSelectedIndex:function(){return this.selectedItem},destroy:function(){var b=this;b._removeHandlers();b.host.remove()},propertyChangedHandler:function(b,c,e,d){b.render()},_raiseEvent:function(h,e){var g=this;var c=g.events[h];var f=new a.Event(c);f.owner=g;f.args=e;try{var b=g.host.trigger(f)}catch(d){}return b},_removeHandlers:function(){var b=this;b.removeHandler(b._items,"click.navbar"+b.element.id);b.removeHandler(b._items,"mouseenter.navbar"+b.element.id);b.removeHandler(b._items,"mouseleave.navbar"+b.element.id)},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-navbar"));if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}b._items.addClass(b.toThemeProperty("jqx-navbar-block"));if(b.selection){b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-fill-state-normal"));b._items.addClass(b.toThemeProperty("jqx-fill-state-normal"));b._items.addClass(b.toThemeProperty("jqx-button"));if(b.selectedItem!==-1){a(b._items[b.selectedItem]).addClass(b.toThemeProperty("jqx-fill-state-pressed"))}}else{this.host.css("border","none")}if(b.rtl){b._items.addClass(b.toThemeProperty("jqx-navbar-block-rtl"))}},_addHandlers:function(){var b=this;b.addHandler(b._items,"click.navbar"+b.element.id,function(d){if(!b.disabled&&b.selection){var c=a(b._items).index(this);b.selectAt(c)}});b.addHandler(b._items,"mouseenter.navbar"+b.element.id,function(c){if(!b.disabled&&b.selection){a(c.target).addClass(b.toThemeProperty("jqx-fill-state-hover"))}});b.addHandler(b._items,"mouseleave.navbar"+b.element.id,function(c){if(!b.disabled&&b.selection){a(c.target).removeClass(b.toThemeProperty("jqx-fill-state-hover"))}})}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxnavigationbar.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxnavigationbar.js
new file mode 100644 (file)
index 0000000..5099ea7
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxNavigationBar","",{});a.extend(a.jqx._jqxNavigationBar.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",expandAnimationDuration:250,collapseAnimationDuration:250,animationType:"slide",toggleMode:"click",showArrow:true,arrowPosition:"right",disabled:false,initContent:null,rtl:false,easing:"easeInOutSine",expandMode:"singleFitHeight",expandedIndexes:[],_expandModes:["singleFitHeight","single","multiple","toggle","none"],aria:{"aria-disabled":{name:"disabled",type:"boolean"}},events:["expandingItem","expandedItem","collapsingItem","collapsedItem"]};a.extend(true,this,b);return b},createInstance:function(b){this._isTouchDevice=a.jqx.mobile.isTouchDevice();a.jqx.aria(this);this.render()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.expandedIndexes}if(typeof b=="string"){this.expandedIndexes.push(parseInt(b));this._applyExpandedIndexes()}else{if(a.isArray(b)){this.expandedIndexes=b}else{this.expandedIndexes=new Array();this.expandedIndexes.push(b)}this._applyExpandedIndexes()}return this.expandedIndexes},expandAt:function(d){var g=this;if(this.expandMode=="single"||this.expandMode=="singleFitHeight"||this.expandMode=="toggle"){a.each(this.items,function(j,k){if(j!=d){g.collapseAt(j)}})}var h=this.items[d];if(h.disabled==false&&h.expanded==false&&h._expandChecker==1){var g=this;h._expandChecker=0;this._raiseEvent("0",{item:d});h._header.removeClass(this.toThemeProperty("jqx-fill-state-normal"));h._header.addClass(this.toThemeProperty("jqx-fill-state-pressed"));h._header.addClass(this.toThemeProperty("jqx-expander-header-expanded"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-hover"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-hover"));h._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));h._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top"));h._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));h._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));h._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-bottom"));h._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-expanded"));if(this.heightFlag==false){this.host.css({"overflow-x":"hidden","overflow-y":"hidden"})}this.eCFlag=1;switch(this.animationType){case"slide":var f=h._content;var b=f.height();var c={};c.height=c.paddingTop=c.paddingBottom=c.borderTopWidth=c.borderBottomWidth="show";var i=0;var e=f.outerHeight();if(a.jqx.browser.msie&&a.jqx.browser.version<9){var c={};c.height=c.paddingTop=c.paddingBottom="show"}f.animate(c,{duration:this.expandAnimationDuration,easing:this.easing,step:function(j,k){k.now=Math.round(j);if(k.prop!=="height"){i+=k.now}else{if(g._collapseContent){k.now=Math.round(e-g._collapseContent.outerHeight()-i);i=0}else{k.now=Math.round(j)}}},complete:function(){h.expanded=true;a.jqx.aria(h._header,"aria-expanded",true);a.jqx.aria(h._content,"aria-hidden",false);g._updateExpandedIndexes();g._raiseEvent("1",{item:d});g._checkHeight();if(g.heightFlag==true){g.host.css({"overflow-x":"hidden","overflow-y":"auto"})}if(g.initContent&&h._initialized==false){g.initContent(d);h._initialized=true}g.eCFlag=0}});break;case"fade":setTimeout(function(){h._content.fadeIn(this.expandAnimationDuration,function(){h.expanded=true;a.jqx.aria(h._header,"aria-expanded",true);a.jqx.aria(h._content,"aria-hidden",false);g._updateExpandedIndexes();g._raiseEvent("1",{item:d});g._checkHeight();if(g.heightFlag==true){g.host.css({"overflow-x":"hidden","overflow-y":"auto"})}if(g.initContent&&h._initialized==false){g.initContent(d);h._initialized=true}g.eCFlag=0})},this.collapseAnimationDuration);break;case"none":h._content.css("display","inherit");h.expanded=true;a.jqx.aria(h._header,"aria-expanded",true);a.jqx.aria(h._content,"aria-hidden",false);this._updateExpandedIndexes();this._raiseEvent("1",{item:d});this._checkHeight();if(this.heightFlag==true){this.host.css({"overflow-x":"hidden","overflow-y":"auto"})}if(this.initContent&&h._initialized==false){this.initContent(d);h._initialized=true}this.eCFlag=0;break}}},collapseAt:function(b){var f=this.items[b];if(f.disabled==false&&f.expanded==true&&f._expandChecker==0){var d=this;f._expandChecker=1;this._raiseEvent("2",{item:b});f._header.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));f._header.removeClass(this.toThemeProperty("jqx-expander-header-expanded"));f._header.addClass(this.toThemeProperty("jqx-fill-state-normal"));f._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));f._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up-selected"));f._arrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down-selected"));f._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-bottom"));f._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-expanded"));f._arrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));f._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top"));if(this.heightFlag==false){this.host.css({"overflow-x":"hidden","overflow-y":"hidden"})}this.eCFlag=1;this._collapseContent=f._content;switch(this.animationType){case"slide":var e={};e.height=e.paddingTop=e.paddingBottom=e.borderTopWidth=e.borderBottomWidth="hide";if(a.jqx.browser.msie&&a.jqx.browser.version<9){var e={};e.height=e.paddingTop=e.paddingBottom="hide"}var c=f._content;c.animate(e,{duration:this.collapseAnimationDuration,step:function(g,h){h.now=Math.round(g)},easing:this.easing,complete:function(){f.expanded=false;c.hide();a.jqx.aria(f._header,"aria-expanded",false);a.jqx.aria(f._content,"aria-hidden",true);d._updateExpandedIndexes();d._raiseEvent("3",{item:b});d._checkHeight();if(d.heightFlag==true){d.host.css({"overflow-x":"hidden","overflow-y":"auto"})}d.eCFlag=0;d._collapseContent=null}});break;case"fade":f._content.fadeOut(this.collapseAnimationDuration,function(){f.expanded=false;a.jqx.aria(f._header,"aria-expanded",false);a.jqx.aria(f._content,"aria-hidden",true);d._updateExpandedIndexes();d._raiseEvent("3",{item:b});d._checkHeight();if(d.heightFlag==true){d.host.css({"overflow-x":"hidden","overflow-y":"auto"})}d.eCFlag=0});break;case"none":f._content.css("display","none");f.expanded=false;a.jqx.aria(f._header,"aria-expanded",false);a.jqx.aria(f._content,"aria-hidden",true);this._updateExpandedIndexes();this._raiseEvent("3",{item:b});this._checkHeight();if(this.heightFlag==true){this.host.css({"overflow-x":"hidden","overflow-y":"auto"})}this.eCFlag=0;break}}},setHeaderContentAt:function(b,c){this.items[b]._header_text.html(c)},getHeaderContentAt:function(b){return this.items[b]._header_text.html()},setContentAt:function(b,c){this.items[b]._content.html(c);this._checkContent(b)},getContentAt:function(b){return this.items[b]._content.html()},showArrowAt:function(b){this.items[b]._arrow.css("display","block")},hideArrowAt:function(b){this.items[b]._arrow.css("display","none")},enable:function(){this.disabled=false;a.each(this.items,function(b,c){this.disabled=false});this._enabledDisabledCheck();this.refresh();a.jqx.aria(this,"aria-disabled",false)},disable:function(){this.disabled=true;a.each(this.items,function(b,c){this.disabled=true});this._enabledDisabledCheck();this.refresh();a.jqx.aria(this,"aria-disabled",true)},enableAt:function(b){this.items[b].disabled=false;this.refresh()},disableAt:function(b){this.items[b].disabled=true;this.refresh()},invalidate:function(){this.refresh()},refresh:function(b){if(b==true){return}this._removeHandlers();if(this.showArrow==true){a.each(this.items,function(c,e){var d=this;d._arrow.css("display","block")})}else{a.each(this.items,function(c,e){var d=this;d._arrow.css("display","none")})}this._updateExpandedIndexes();this._setTheme();this._setSize();this._toggle();this._keyBoard()},render:function(){this.widgetID=this.element.id;var m=this;if(this._expandModes.indexOf(this.expandMode)==-1){this.expandMode="singleFitHeight"}a.jqx.utilities.resize(this.host,function(){m._setSize()});this.host.attr("role","tablist");if(this.items){this._removeHandlers();a.each(this.items,function(){this._header.removeClass();this._header.attr("tabindex",null);this._content.attr("tabindex",null);this._header[0].className="";this._header_text.removeClass();this._header_text[0].className="";this._header.css("margin-top",0);this._header[0].innerHTML=this._header_text[0].innerHTML})}this.items=new Array();var h=this.host.children().length;var n="Invalid jqxNavigationBar structure. Please add an even number of child div elements that will represent each item's header and content.";try{if(h%2!=0){throw n}}catch(d){alert(d)}var e="Invalid jqxNavigationBar structure. Please make sure all the children elements of the navigationbar are divs.";try{var c=this.host.children();for(var l=0;l<h;l++){if(c[l].tagName.toLowerCase()!="div"){throw e}}}catch(d){alert(d)}var o;for(var p=0;p<h;p+=2){o=this.host.children("div:eq("+p+")");o.wrap("<div></div>")}var l=0;var f;for(var g=0;g<h/2;g++){f=l+1;this.items[g]=new Object();this.items[g]._header=this.host.children("div:eq("+l+")");this.items[g]._header.attr("role","tab");this.items[g]._content=this.host.children("div:eq("+f+")");this.items[g]._content.attr("role","tabpanel");l+=2}var b=this.expandedIndexes.length;a.each(this.items,function(i,j){this.expandedFlag=false;this.focusedH=false;this.focusedC=false});if(this.items&&this.items.length==0){return}if(this.expandMode=="single"||this.expandMode=="singleFitHeight"||this.expandMode=="toggle"||this.expandMode=="none"){a.each(this.items,function(i,k){var j=this;j.expanded=false});if(b!=0){this.items[this.expandedIndexes[0]].expanded=true}else{if(b==0&&(this.expandMode=="single"||this.expandMode=="singleFitHeight")){this.items[0].expanded=true}}}else{if(this.expandMode=="multiple"){if(b!=0){a.each(this.items,function(j,r){var q=this;for(var k=0;k<b;k++){if(m.expandedIndexes[k]==j){q.expanded=true;break}else{q.expanded=false}}})}else{a.each(this.items,function(i,k){var j=this;j.expanded=false})}}else{if(this.expandMode=="none"){a.each(this.items,function(i,k){var j=this;j.expanded=false})}}}this._enabledDisabledCheck();a.each(this.items,function(i,k){var j=this;j._header_text=j._header.children("div:eq(0)");if(!m.rtl){j._header_text.addClass(m.toThemeProperty("jqx-expander-header-content"))}else{j._header_text.addClass(m.toThemeProperty("jqx-expander-header-content-rtl"))}j._header.append("<div></div>");j._arrow=j._header.children("div:eq(1)");if(m.showArrow==true){j._arrow.css("display","block")}else{j._arrow.css("display","none")}});a.each(this.items,function(i,k){var j=this;if(j.expanded==true){j._arrow.addClass(m.toThemeProperty("jqx-icon-arrow-up"));j._arrow.addClass(m.toThemeProperty("jqx-icon-arrow-up-selected"));j._arrow.addClass(m.toThemeProperty("jqx-expander-arrow-bottom"));j._arrow.addClass(m.toThemeProperty("jqx-expander-arrow-expanded"));if(m.initContent){setTimeout(function(){m.initContent(i)},10)}j._initialized=true;j._expandChecker=0;a.jqx.aria(j._header,"aria-expanded",true);a.jqx.aria(j._content,"aria-hidden",false)}else{if(j.expanded==false){j._arrow.addClass(m.toThemeProperty("jqx-icon-arrow-down"));j._arrow.addClass(m.toThemeProperty("jqx-expander-arrow-top"));j._initialized=false;j._expandChecker=1;j._content.css("display","none");a.jqx.aria(j._header,"aria-expanded",false);a.jqx.aria(j._content,"aria-hidden",true)}}});this.tI=0;a.each(this.items,function(i,k){var j=this;if(j._header.attr("tabindex")==undefined){m.tI++;j._header.attr("tabindex",m.tI)}if(j._content.attr("tabindex")==undefined){m.tI++;j._content.attr("tabindex",m.tI)}});this._setTheme();a.each(this.items,function(i,k){var j=this;m._checkContent(i)});this._setSize();this._toggle();this._keyBoard()},insert:function(c,f,d){var b="<div>"+f+"</div><div>"+d+"</div>";if(c!=-1){a(b).insertBefore(this.items[c]._header)}else{var e=this.items.length-1;a(b).insertAfter(this.items[e]._content)}this.render()},add:function(c,b){this.insert(-1,c,b)},update:function(b,d,c){this.setHeaderContentAt(b,d);this.setContentAt(b,c)},remove:function(b){if(isNaN(b)){b=this.items.length-1}if(!this.items[b]){return}this.items[b]._header.remove();this.items[b]._content.remove();this.items.splice(b,1);var c=this.expandedIndexes.indexOf(b);if(c>-1){this.expandedIndexes.splice(c,1)}this.render()},destroy:function(){this._removeHandlers();this.host.remove()},focus:function(){try{a.each(this.items,function(c,e){var d=this;if(d.disabled==false){d._header.focus();return false}})}catch(b){}},_applyExpandedIndexes:function(){var d=this;var c=this.expandedIndexes.length;for(var b=0;b<c;b++){var e=d.expandedIndexes[b];a.each(this.items,function(f,h){var g=this;if(f==e){g.expandedFlag=true;if(g.expanded==false){d.expandAt(f)}if(d.expandMode=="single"||d.expandMode=="singleFitHeight"||d.expandMode=="toggle"||d.expandMode=="none"){return false}}});a.each(this.items,function(f,h){var g=this;if(f!=e&&g.expandedFlag==false){d.collapseAt(f)}})}a.each(this.items,function(f,g){this.expandedFlag=false})},propertyChangedHandler:function(c,d,g,f){var e=c;var b=f;if(d=="disabled"){c._enabledDisabledCheck()}else{if(d=="expandedIndexes"){c._applyExpandedIndexes()}else{c.refresh()}}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;f.item=f.args.item;try{var b=this.host.trigger(f)}catch(d){}return b},resize:function(c,b){this.width=c;this.height=b;this._setSize()},_setSize:function(){var e=this;this.headersHeight=0;var d=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-left")):0;var f=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-right")):0;var b=2;var c=d+f+b;if(isNaN(c)){c=12}if(this.width=="auto"){this.host.width(this.width)}else{if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}else{this.host.width(parseInt(this.width)+c)}}this.host.height(this.height);a.each(this.items,function(g,j){var i=this;var h=e.arrowPosition;if(e.rtl){switch(h){case"left":h="right";break;case"right":h="left";break}}if(h=="right"){i._header_text.css({"float":"left","margin-left":"0px"});i._arrow.css({"float":"right",position:"relative"})}else{if(h=="left"){if(e.width=="auto"){i._header_text.css({"float":"left","margin-left":"17px"});i._arrow.css({"float":"left",position:"absolute"})}else{i._header_text.css({"float":"right","margin-left":"0px"});i._arrow.css({"float":"left",position:"relative"})}}}i._header.height("auto");i._header_text.css("min-height",i._arrow.height());e.headersHeight+=i._header.outerHeight();i._arrow.css("margin-top",i._header_text.height()/2-i._arrow.height()/2)});a.each(this.items,function(g,i){var h=this;if(e.height!="auto"){if(e.expandMode=="single"||e.expandMode=="toggle"||e.expandMode=="multiple"){e.host.css({"overflow-x":"hidden","overflow-y":"auto"})}else{if(e.expandMode=="singleFitHeight"){var j=parseInt(h._content.css("padding-top"))+parseInt(h._content.css("padding-bottom"));if(e.height&&e.height.toString().indexOf("%")>=0){h._content.height(e.host.height()-e.headersHeight-j+2)}else{h._content.height(e.host.height()-e.headersHeight-j)}}}}});e._checkHeight()},_toggle:function(){var b=this;if(this._isTouchDevice==false){switch(this.toggleMode){case"click":a.each(this.items,function(c,e){var d=this;if(d.disabled==false){b.addHandler(d._header,"click.navigationbar"+b.widgetID,function(){b.focusedH=true;b._animate(c)})}});break;case"dblclick":a.each(this.items,function(c,e){var d=this;if(d.disabled==false){b.addHandler(d._header,"dblclick.navigationbar"+b.widgetID,function(){b.focusedH=true;b._animate(c)})}});break;case"none":break}}else{if(this.toggleMode!="none"){a.each(this.items,function(c,e){var d=this;if(d.disabled==false){b.addHandler(d._header,a.jqx.mobile.getTouchEventName("touchstart")+"."+b.widgetID,function(){b._animate(c)})}})}else{return}}},_animate:function(c,b){var d=this;this.eCFlag;var e=this.items[c];if(this.expandMode!="none"&&this.eCFlag!=1){if(this.items[c].expanded==true){if(this.expandMode=="multiple"||this.expandMode=="toggle"){this.collapseAt(c)}}else{this.expandAt(c)}if(!d._isTouchDevice){if(b!=true){e._header.addClass(this.toThemeProperty("jqx-fill-state-hover"));e._header.addClass(this.toThemeProperty("jqx-expander-header-hover"));e._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));e._arrow.addClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}else{e._header.removeClass(this.toThemeProperty("jqx-fill-state-hover"));e._header.removeClass(this.toThemeProperty("jqx-expander-header-hover"));e._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-top-hover"));e._arrow.removeClass(this.toThemeProperty("jqx-expander-arrow-down-hover"))}}}},_removeHandlers:function(){var b=this;this.removeHandler(this.host,"keydown.navigationbar"+this.widgetID);a.each(this.items,function(c,e){var d=this;b.removeHandler(d._header,"click.navigationbar"+b.widgetID);b.removeHandler(d._header,"dblclick.navigationbar"+b.widgetID);b.removeHandler(d._header,"mouseenter.navigationbar"+b.widgetID);b.removeHandler(d._header,"mouseleave.navigationbar"+b.widgetID);b.removeHandler(d._header,"focus.navigationbar"+b.widgetID);b.removeHandler(d._header,"blur.navigationbar"+b.widgetID);b.removeHandler(d._content,"focus.navigationbar"+b.widgetID);b.removeHandler(d._content,"blur.navigationbar"+b.widgetID);b.removeHandler(d._header_text,"focus.navigationbar"+b.widgetID);b.removeHandler(d._arrow,"focus.navigationbar"+b.widgetID)})},_setTheme:function(){var b=this;this.host.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-widget"));if(this.rtl==true){this.host.addClass(this.toThemeProperty("jqx-rtl"))}a.each(this.items,function(c,e){var d=this;d._header.css("position","relative");d._content.css("position","relative");d._header.addClass(b.toThemeProperty("jqx-widget-header"));d._header.addClass(b.toThemeProperty("jqx-item"));d._content.addClass(b.toThemeProperty("jqx-widget-content"));if(d.disabled==false){d._header.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));d._content.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));if(d.expanded==true){d._header.addClass(b.toThemeProperty("jqx-fill-state-pressed"));d._header.addClass(b.toThemeProperty("jqx-expander-header-expanded"))}else{d._header.addClass(b.toThemeProperty("jqx-fill-state-normal"));d._header.removeClass(b.toThemeProperty("jqx-expander-header-expanded"))}if(!b._isTouchDevice){b.addHandler(d._header,"mouseenter.navigationbar"+b.widgetID,function(){if(d._expandChecker==1){if(!d.focusedH){d._header.css("z-index",5)}d._header.removeClass(b.toThemeProperty("jqx-fill-state-normal"));d._header.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));d._header.addClass(b.toThemeProperty("jqx-fill-state-hover"));d._header.addClass(b.toThemeProperty("jqx-expander-header-hover"));d._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));d._arrow.addClass(b.toThemeProperty("jqx-expander-arrow-down-hover"));if(d.expanded){d._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-up-hover"))}else{d._arrow.addClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))}}});b.addHandler(d._header,"mouseleave.navigationbar"+b.widgetID,function(){if(!d.focusedH){d._header.css("z-index",0)}d._header.removeClass(b.toThemeProperty("jqx-fill-state-hover"));d._header.removeClass(b.toThemeProperty("jqx-expander-header-hover"));d._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-top-hover"));d._arrow.removeClass(b.toThemeProperty("jqx-expander-arrow-down-hover"));if(d._expandChecker==1){d._header.addClass(b.toThemeProperty("jqx-fill-state-normal"))}else{d._header.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}d._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-up-hover"));d._arrow.removeClass(b.toThemeProperty("jqx-icon-arrow-down-hover"))})}}else{d._header.addClass(b.toThemeProperty("jqx-fill-state-disabled"));d._content.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}b.host.addClass(b.toThemeProperty("jqx-navigationbar"));d._header.addClass(b.toThemeProperty("jqx-expander-header"));d._content.addClass(b.toThemeProperty("jqx-expander-content"));d._content.addClass(b.toThemeProperty("jqx-expander-content-bottom"));if(c!=0){d._header.css("margin-top",-1)}d._arrow.addClass(b.toThemeProperty("jqx-expander-arrow"))})},_checkContent:function(b){var d=this.items[b];var c=d._content;this._cntntEmpty=/^\s*$/.test(this.items[b]._content.html());if(this._cntntEmpty==true){c.css("display","none");c.height(0);c.addClass(this.toThemeProperty("jqx-expander-content-empty"))}else{if(d.expanded){c.css("display","block")}if(this.expandMode=="singleFitHeight"){var e=1;if(b!=0){e=2}c.height(this.host.height()-this.headersHeight+e)}else{c.height("auto")}c.removeClass(this.toThemeProperty("jqx-expander-content-empty"))}},_checkHeight:function(){var f=this;this.totalHeight=0;this.heightFlag;var e=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-left")):0;var g=this.items&&this.items.length>0?parseInt(this.items[0]._header.css("padding-right")):0;var b=2;var c=e+g+b;if(isNaN(c)){c=12}var d=17;a.each(this.items,function(h,j){var i=this;f.totalHeight+=(i.expanded?i._content.outerHeight():0)+i._header.outerHeight()});if(this.width!="auto"&&this.height!="auto"&&this.expandMode!="singleFitHeight"){if(this.totalHeight>this.host.height()){this.host.width(this.width+c+d);this.heightFlag=true}else{this.host.width(this.width+c);this.heightFlag=false}}},_enabledDisabledCheck:function(){var b=this;if(this.disabled==true){a.each(this.items,function(c,e){var d=this;d.disabled=true})}else{a.each(this.items,function(c,e){var d=this;d.disabled=false})}},_updateExpandedIndexes:function(){var b=this;this.expandedIndexes=[];a.each(this.items,function(c,e){var d=this;if(d.expanded==true){b.expandedIndexes.push(c);if(b.expandMode=="single"||b.expandMode=="singleFitHeight"||b.expandMode=="toggle"||b.expandMode=="none"){return false}}})},_keyBoard:function(){var b=this;this._focus();this.addHandler(this.host,"keydown.navigationbar"+this.widgetID,function(c){var d=false;a.each(b.items,function(e,h){var g=this;var f=b.items.length;if((g.focusedH==true||g.focusedC==true)&&g.disabled==false){switch(c.keyCode){case 13:case 32:if(b.toggleMode!="none"){if(g.focusedH==true){b._animate(e,true)}d=true}break;case 37:if(e!=0){b.items[e-1]._header.focus()}else{var f=b.items.length;b.items[f-1]._header.focus()}d=true;break;case 38:if(c.ctrlKey==false){if(e!=0){b.items[e-1]._header.focus()}else{var f=b.items.length;b.items[f-1]._header.focus()}}else{if(g.focusedC==true){g._header.focus()}}d=true;break;case 39:if(e!=f-1){b.items[e+1]._header.focus()}else{b.items[0]._header.focus()}d=true;break;case 40:if(c.ctrlKey==false){if(e!=f-1){b.items[e+1]._header.focus()}else{b.items[0]._header.focus()}}else{if(g.expanded==true){g._content.focus()}}d=true;break;case 35:if(e!=f-1){b.items[f-1]._header.focus()}d=true;break;case 36:if(e!=0){b.items[0]._header.focus()}d=true;break}return false}});if(d&&c.preventDefault){c.preventDefault()}return !d})},_focus:function(){var b=this;if(this.disabled){return}a.each(this.items,function(c,e){var d=this;b.addHandler(d._header,"focus.navigationbar"+this.widgetID,function(){d.focusedH=true;a.jqx.aria(d._header,"aria-selected",true);d._header.addClass(b.toThemeProperty("jqx-fill-state-focus"));d._header.css("z-index",10)});b.addHandler(d._header,"blur.navigationbar"+this.widgetID,function(){d.focusedH=false;a.jqx.aria(d._header,"aria-selected",false);if(d._header.hasClass("jqx-expander-header-hover")){d._header.css("z-index",5)}else{d._header.css("z-index",0)}d._header.removeClass(b.toThemeProperty("jqx-fill-state-focus"))});b.addHandler(d._header_text,"focus.navigationbar"+this.widgetID,function(){d._header.focus()});b.addHandler(d._arrow,"focus.navigationbar"+this.widgetID,function(){d._header.focus()});b.addHandler(d._content,"focus.navigationbar"+this.widgetID,function(){d.focusedC=true;d._content.addClass(b.toThemeProperty("jqx-fill-state-focus"))});b.addHandler(d._content,"blur.navigationbar"+this.widgetID,function(){d.focusedC=false;d._content.removeClass(b.toThemeProperty("jqx-fill-state-focus"))})})}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxnotification.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxnotification.js
new file mode 100644 (file)
index 0000000..ba971c0
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxNotification","",{});a.extend(a.jqx._jqxNotification.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",appendContainer:null,position:"top-right",zIndex:99999,browserBoundsOffset:5,notificationOffset:5,opacity:0.9,hoverOpacity:1,autoOpen:false,animationOpenDelay:400,animationCloseDelay:800,closeOnClick:true,autoClose:true,autoCloseDelay:3000,showCloseButton:true,template:"info",icon:null,blink:false,disabled:false,rtl:false,events:["open","close","click"]};a.extend(true,this,b);return b},createInstance:function(b){var c=this;c.render();if(c.autoOpen==true){c.open()}},render:function(){var c=this;if(c.host.hasClass("jqx-notification")==false){c.host.addClass(c.toThemeProperty("jqx-rc-all"));c.host.addClass(c.toThemeProperty("jqx-notification"));c.host.css({zIndex:c.zIndex,display:"none",opacity:c.opacity});c._container=c._notificationContainer();c._appendContent();c._setHoverFunctions();c._instances=new Array();c._instanceKey=0;var b=a.data(document.body,"jqxNotifications");if(b==undefined){b=0}a.data(document.body,"jqxNotifications",(b+1))}else{c.refresh()}},refresh:function(b){if(!b){this._appendContent(true)}},open:function(){var c=this;if(c.disabled==false){var b=c.host.clone();b.removeAttr("id");b.width(c.width);b.height(c.height);if(this.width!=null&&this.width.toString().indexOf("%")!=-1){b.css("width",this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){b.css("height",this.height)}if(!c.appendContainer&&(c.position=="bottom-left"||c.position=="bottom-right")){b.css("margin-top",c.notificationOffset);c._container.prepend(b)}else{b.css("margin-bottom",c.notificationOffset);c._container.append(b)}c._addHandlers(b);b.fadeIn(c.animationOpenDelay,function(){c._raiseEvent("0")});if(c.blink==true){b._blinkInterval=setInterval(function(){b.fadeTo(400,c.opacity/1.5,function(){b.fadeTo(400,c.opacity)})},850)}if(c.autoClose==true){b._autoCloseTimeout=setTimeout(function(){c._close(b)},c.autoCloseDelay)}b._key=c._instanceKey;c._instances[c._instanceKey]=b;c._instanceKey++}},closeAll:function(){var c=this;for(var b=0;b<c._instances.length;b++){if(c._instances[b]){c._close(c._instances[b])}}},closeLast:function(){var c=this;for(var b=c._instances.length;b>=0;b--){if(c._instances[b]){c._close(c._instances[b]);break}}},destroy:function(){var c=this;c.closeAll();c.host.remove();var b=a.data(document.body,"jqxNotifications");a.data(document.body,"jqxNotifications",(b-1));c._destroyContainers(b-1)},propertyChangedHandler:function(c,d,h,f){var e=this;if(f!=h){switch(d){case"width":case"height":var b=h.indexOf&&h.indexOf("%")!=-1;b==undefined?b=false:b=b;var g=f.indexOf&&f.indexOf("%")!=-1;g==undefined?g=false:g=g;if(g!=b){e[d]=h}break;case"appendContainer":case"position":e._container=e._notificationContainer();break;case"browserBoundsOffset":if(!e.appendContainer){e._position(e._container)}break;case"opacity":e.host.css("opacity",f);break;case"showCloseButton":case"template":case"icon":case"rtl":e._appendContent(true);break}}},_raiseEvent:function(h,e){var g=this;var c=g.events[h];var f=new a.Event(c);f.owner=g;f.args=e;try{var b=g.host.trigger(f)}catch(d){}return b},_close:function(b){var c=this;if(c._instances[b._key]){c._instances[b._key]=false;clearInterval(b._blinkInterval);clearTimeout(b._autoCloseTimeout);b.fadeOut(c.animationCloseDelay,function(){c._removeHandlers(b);b.remove();c._raiseEvent("1")})}},_addHandlers:function(b){var d=this;d.addHandler(b,"click.notification"+d.element.id,function(e){d._raiseEvent("2");if(d.closeOnClick==true){d._close(b)}});d.addHandler(b,"mouseenter.notification"+d.element.id,function(e){if(!b._blinkInterval){d.mouseenterFunction(b)}});d.addHandler(b,"mouseleave.notification"+d.element.id,function(e){if(!b._blinkInterval&&b.css("display")!="none"){d.mouseleaveFunction(b)}});if(d.showCloseButton==true){var c=b.find(".jqx-notification-close-button");d.addHandler(c,"click.notification"+d.element.id,function(e){e.stopPropagation();d._close(b)})}},_removeHandlers:function(b){var d=this;d.removeHandler(b,"click.notification"+d.element.id);d.removeHandler(b,"click.mouseenter"+d.element.id);d.removeHandler(b,"click.mouseleave"+d.element.id);var c=b.find(".jqx-notification-close-button");if(c.length>0){d.removeHandler(c,"click.notification"+d.element.id)}},_appendContent:function(g){var j=this;var e;var b=j.host.html();if(!g){e=j.host.children().detach()}if(g){j.host.removeAttr("class");j.host.addClass(j.toThemeProperty("jqx-rc-all"));j.host.addClass(j.toThemeProperty("jqx-notification"))}var m=a("<table class='"+j.toThemeProperty("jqx-notification-table")+"'></table>");var d=a("<tr></tr>");m.append(d);var h=j.rtl?"jqx-notification-content-rtl":"";if(!g){var i=a("<td class='"+j.toThemeProperty("jqx-notification-content")+" "+h+"'></td>")}else{var i=j.host.find(".jqx-notification-content");b=i.html();e=i.detach();if(j.rtl){i.addClass("jqx-notification-content-rtl")}else{i.removeClass("jqx-notification-content-rtl")}}d.html(i);var f=function(){if(j.rtl==false){k.addClass("jqx-notification-icon-ltr");i.before(k)}else{k.addClass("jqx-notification-icon-rtl");i.after(k)}};var k;if(j.template){j.host.addClass("jqx-widget");j.host.addClass("jqx-popup");j.host.addClass("jqx-notification-"+j.template);k=a("<td class='"+j.toThemeProperty("jqx-notification-icon")+" jqx-notification-icon-"+j.template+"'></td>");f()}else{j.host.addClass(j.toThemeProperty("jqx-widget"));j.host.addClass(j.toThemeProperty("jqx-popup"));j.host.addClass(j.toThemeProperty("jqx-fill-state-normal"));if(j.icon){k=a("<td class='"+j.toThemeProperty("jqx-notification-icon")+"'></td>");j.icon.padding=j.icon.padding?parseInt(j.icon.padding):5;k.css({width:(parseInt(j.icon.width)+j.icon.padding),height:j.icon.height,"background-image":"url('"+j.icon.url+"')"});f()}}if(j.showCloseButton==true){var l;if(j.template){l="jqx-notification-close-button jqx-notification-close-button-"+j.template}else{l=j.toThemeProperty("jqx-icon-close")+" "+j.toThemeProperty("jqx-notification-close-button")}var c=a("<td class='"+j.toThemeProperty("jqx-notification-close-button-container")+"'><div class='"+l+" "+j.element.id+"CloseButton' title='Close'></div></td>");if(j.rtl==false){c.find("div").addClass("jqx-notification-close-button-ltr");i.after(c)}else{c.find("div").addClass("jqx-notification-close-button-rtl");i.before(c)}}j.host[0].innerHTML="";j.host.append(m);if(e.length>0){j.host.find(".jqx-notification-content").append(e)}else{j.host.find(".jqx-notification-content").html(b)}},_position:function(b){var e=this;var g;var d;var f;var c;switch(e.position){case"top-right":g="";d=e.browserBoundsOffset;f=e.browserBoundsOffset;c="";break;case"top-left":g=e.browserBoundsOffset;d="";f=e.browserBoundsOffset;c="";break;case"bottom-left":g=e.browserBoundsOffset;d="";f="";c=e.browserBoundsOffset;break;case"bottom-right":g="";d=e.browserBoundsOffset;f="";c=e.browserBoundsOffset;break}b.css({left:g,right:d,top:f,bottom:c})},_notificationContainer:function(){var c=this;var b;if(!c.appendContainer){b=a("#jqxNotificationDefaultContainer-"+c.position);if(b.length==0){a("body").append("<div id='jqxNotificationDefaultContainer-"+c.position+"' class='jqx-notification-container'></div>");b=a("#jqxNotificationDefaultContainer-"+c.position);if(c.width.indexOf&&c.width.indexOf("%")!=-1){b.addClass(c.toThemeProperty("jqx-notification-container-full-width"))}if(c.height.indexOf&&c.height.indexOf("%")!=-1){b.addClass(c.toThemeProperty("jqx-notification-container-full-height"))}c._position(b)}}else{b=a(c.appendContainer);if(b.length==0){throw new Error("jqxNotification: Invalid appendContainer jQuery Selector - "+c.appendContainer+"! Please, check whether the used ID or CSS Class name is correct.")}}return b},_destroyContainers:function(b){if(b==0){a(".jqx-notification-container").remove()}},_setHoverFunctions:function(){var b=this;var c=false;if(a.jqx.browser.browser=="msie"&&a.jqx.browser.version=="9.0"){c=true}if(c==false){b.mouseenterFunction=function(d){d.fadeTo("fast",b.hoverOpacity)};b.mouseleaveFunction=function(d){d.fadeTo("fast",b.opacity)}}else{b.mouseenterFunction=function(d){d.css("filter","alpha(opacity = "+(b.hoverOpacity*100)+")")};b.mouseleaveFunction=function(d){d.css("filter","alpha(opacity = "+(b.opacity*100)+")")}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxnumberinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxnumberinput.js
new file mode 100644 (file)
index 0000000..d4759f5
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxNumberInput","",{});a.extend(a.jqx._jqxNumberInput.prototype,{defineInstance:function(){var b={value:null,decimal:0,min:-99999999,max:99999999,width:200,validationMessage:"Invalid value",height:25,textAlign:"right",readOnly:false,promptChar:"_",decimalDigits:2,decimalSeparator:".",groupSeparator:",",groupSize:3,symbol:"",symbolPosition:"left",digits:8,negative:false,negativeSymbol:"-",disabled:false,inputMode:"advanced",spinButtons:false,spinButtonsWidth:18,spinButtonsStep:1,autoValidate:true,spinMode:"advanced",enableMouseWheel:true,touchMode:"auto",rtl:false,events:["valueChanged","textchanged","mousedown","mouseup","keydown","keyup","keypress","change"],aria:{"aria-valuenow":{name:"decimal",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},invalidArgumentExceptions:["invalid argument exception"]};a.extend(true,this,b);return b},createInstance:function(b){var c=this.host.attr("value");if(c!=undefined){this.decimal=c}if(this.value!=null){this.decimal=this.value}this.render()},_doTouchHandling:function(){var e=this;var g=e.savedValue;if(!e.parsing){e.parsing=true}if(e.parsing){if(e.numberInput.val()&&e.numberInput.val().indexOf("-")==0){e.setvalue("negative",true)}else{e.setvalue("negative",false)}var f=e.numberInput.val();for(var c=0;c<f.length-1;c++){var d=f.substring(c,c+1);if(isNaN(parseFloat(d))&&d!=e.symbol&&d!="%"&&d!="$"&&d!="."&&d!=","&&d!="-"){e.numberInput[0].value=g;e.parsing=false;return}}e.ValueString=e.GetValueString(e.numberInput.val(),e.decimalSeparator,e.decimalSeparator!="");e.ValueString=new Number(e.ValueString).toFixed(e.decimalDigits);e._parseDecimalInSimpleMode();e.decimal=e.ValueString;var b=e.getvalue("negative");if(b){e.decimal="-"+e.ValueString}e.parsing=false}},render:function(){this.host.attr({role:"spinbutton"});this.host.attr("data-role","input");a.jqx.aria(this);a.jqx.aria(this,"aria-multiline",false);var f=this;if(this.officeMode||(this.theme&&this.theme.indexOf("office")!=-1)){if(this.spinButtonsWidth==18){this.spinButtonsWidth=15}}if(a.jqx.mobile.isTouchDevice()||this.touchMode===true){this.inputMode="textbox";this.spinMode="simple"}if(this.decimalSeparator==""){this.decimalSeparator=" "}this.host.addClass(this.toThemeProperty("jqx-input"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-numberinput"));if(this.spinButtons){this._spinButtons()}else{this.numberInput=a("<input autocomplete='off' type='textarea'/>").appendTo(this.host);this.numberInput.addClass(this.toThemeProperty("jqx-input-content"));this.numberInput.addClass(this.toThemeProperty("jqx-widget-content"))}var d=this.host.attr("name");if(d){this.numberInput.attr("name",d)}if(this.host.attr("tabindex")){this.numberInput.attr("tabindex",this.host.attr("tabindex"));this.host.removeAttr("tabindex")}if(a.jqx.mobile.isTouchDevice()||this.touchMode===true||this.inputMode=="textbox"){var f=this;f.savedValue="";this.addHandler(this.numberInput,"focus",function(){f.savedValue=f.numberInput[0].value});this.addHandler(this.numberInput,"change",function(){f._doTouchHandling()})}var h=a.data(this.host[0],"jqxNumberInput");h.jqxNumberInput=this;var f=this;if(this.host.parents("form").length>0){this.addHandler(this.host.parents("form"),"reset",function(){setTimeout(function(){f.setDecimal(0)},10)})}this.propertyChangeMap.disabled=function(n,q,o,r){if(r){n.numberInput.addClass(c.toThemeProperty("jqx-input-disabled"));n.numberInput.attr("disabled",true)}else{n.host.removeClass(c.toThemeProperty("jqx-input-disabled"));n.numberInput.attr("disabled",false)}if(n.spinButtons&&n.host.jqxRepeatButton){n.upbutton.jqxRepeatButton({disabled:r});n.downbutton.jqxRepeatButton({disabled:r})}};if(this.disabled){this.numberInput.addClass(this.toThemeProperty("jqx-input-disabled"));this.numberInput.attr("disabled",true);this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this.selectedText="";this.decimalSeparatorPosition=-1;var l=this.element.id;var e=this.element;var c=this;this.oldValue=this._value();this.items=new Array();var g=this.value;var b=this.decimal;this._initializeLiterals();this._render();this.setDecimal(b);var f=this;setTimeout(function(){},100);this._addHandlers();a.jqx.utilities.resize(this.host,function(){f._render()})},refresh:function(b){if(!b){this._render()}},wheel:function(d,c){if(!c.enableMouseWheel){return}var e=0;if(!d){d=window.event}if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(d.preventDefault){d.preventDefault()}if(d.originalEvent!=null){d.originalEvent.mouseHandled=true}if(d.stopPropagation!=undefined){d.stopPropagation()}if(b){b=false;d.returnValue=b;return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(b){if(b<0){this.spinDown()}else{this.spinUp()}return true},_addHandlers:function(){var b=this;this.addHandler(this.numberInput,"paste",function(f){var d=b._selection();f.preventDefault();if(f.originalEvent.clipboardData){content=(f.originalEvent||f).clipboardData.getData("text/plain")}else{if(window.clipboardData){content=window.clipboardData.getData("Text")}}this.selectedText=content;a.data(document.body,"jqxSelection",this.selectedText);if(b.inputMode!="simple"){b._pasteSelectedText()}else{b.val(content)}setTimeout(function(){b._setSelectionStart(d.start)})});this.addHandler(this.numberInput,"mousedown",function(d){return b._raiseEvent(2,d)});this._mousewheelfunc=this._mousewheelfunc||function(d){if(!b.editcell){b.wheel(d,b);return false}};this.removeHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"mousewheel",this._mousewheelfunc);var c="";this.addHandler(this.numberInput,"focus",function(d){a.data(b.numberInput,"selectionstart",b._selection().start);b.host.addClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.spincontainer){b.spincontainer.addClass(b.toThemeProperty("jqx-numberinput-focus"))}c=b.numberInput.val()});this.addHandler(this.numberInput,"blur",function(e){if(b.inputMode=="simple"){b._exitSimpleInputMode(e,b,false,c)}if(b.autoValidate){var f=parseFloat(b.decimal);var d=b.getvalue("negative");if(d&&b.decimal>0){f=-parseFloat(b.decimal)}if(f>b.max){b._disableSetSelection=true;b.setDecimal(b.max);b._disableSetSelection=false}if(f<b.min){b._disableSetSelection=true;b.setDecimal(b.min);b._disableSetSelection=false}}b.host.removeClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.spincontainer){b.spincontainer.removeClass(b.toThemeProperty("jqx-numberinput-focus"))}if(b.numberInput.val()!=c){b._raiseEvent(7,e);a.jqx.aria(b,"aria-valuenow",b.decimal);b.element.value=b.decimal}return true});this.addHandler(this.numberInput,"mouseup",function(d){return b._raiseEvent(3,d)});this.addHandler(this.numberInput,"keydown",function(d){return b._raiseEvent(4,d)});this.addHandler(this.numberInput,"keyup",function(d){return b._raiseEvent(5,d)});this.addHandler(this.numberInput,"keypress",function(d){return b._raiseEvent(6,d)})},focus:function(){try{this.numberInput.focus()}catch(b){}},_removeHandlers:function(){var b=this;this.removeHandler(this.numberInput,"mousedown");var c=a.jqx.mobile.isOperaMiniMobileBrowser();if(c){this.removeHandler(a(document),"click."+this.element.id,b._exitSimpleInputMode,b)}this.removeHandler(this.numberInput,"paste");this.removeHandler(this.numberInput,"focus");this.removeHandler(this.numberInput,"blur");this.removeHandler(this.numberInput,"mouseup");this.removeHandler(this.numberInput,"keydown");this.removeHandler(this.numberInput,"keyup");this.removeHandler(this.numberInput,"keypress")},_spinButtons:function(){if(this.host.jqxRepeatButton){if(!this.numberInput){this.numberInput=a("<input autocomplete='off' style='position: relative; float: left;' type='textarea'/>");this.numberInput.appendTo(this.host);this.numberInput.addClass(this.toThemeProperty("jqx-input-content"));this.numberInput.addClass(this.toThemeProperty("jqx-widget-content"))}else{this.numberInput.css("float","left")}if(this.spincontainer){if(this.upbutton){this.upbutton.jqxRepeatButton("destroy")}if(this.downbutton){this.downbutton.jqxRepeatButton("destroy")}this.spincontainer.remove()}this.spincontainer=a('<div style="float: right; height: 100%; overflow: hidden; position: relative;"></div>');if(this.rtl){this.spincontainer.css("float","right");this.numberInput.css("float","right");this.spincontainer.css("left","-1px")}this.host.append(this.spincontainer);this.upbutton=a('<div style="overflow: hidden; padding: 0px; margin-left: -1px; position: relative;"><div></div></div>');this.spincontainer.append(this.upbutton);this.upbutton.jqxRepeatButton({overrideTheme:true,disabled:this.disabled,roundedCorners:"top-right"});this.downbutton=a('<div style="overflow: hidden; padding: 0px; margin-left: -1px; position: relative;"><div></div></div>');this.spincontainer.append(this.downbutton);this.downbutton.jqxRepeatButton({overrideTheme:true,disabled:this.disabled,roundedCorners:"bottom-right"});var d=this;this.downbutton.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.upbutton.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.upbutton.addClass(this.toThemeProperty("jqx-rc-tr"));this.downbutton.addClass(this.toThemeProperty("jqx-rc-br"));this.addHandler(this.downbutton,"mouseup",function(e){if(!d.disabled){d.downbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-selected"))}});this.addHandler(this.upbutton,"mouseup",function(e){if(!d.disabled){d.upbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-selected"))}});this.removeHandler(a(document),"mouseup."+this.element.id);this.addHandler(a(document),"mouseup."+this.element.id,function(e){d.upbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-selected"));d.downbutton.removeClass(d.toThemeProperty("jqx-fill-state-pressed"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-selected"))});this.addHandler(this.downbutton,"mousedown",function(e){if(!d.disabled){if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._inputSelection=d._selection()}d.downbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-selected"));e.preventDefault();e.stopPropagation();return false}});this.addHandler(this.upbutton,"mousedown",function(e){if(!d.disabled){if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._inputSelection=d._selection()}d.upbutton.addClass(d.toThemeProperty("jqx-fill-state-pressed"));d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-selected"));e.preventDefault();e.stopPropagation();return false}});this.addHandler(this.upbutton,"mouseenter",function(e){d.upbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))});this.addHandler(this.upbutton,"mouseleave",function(e){d.upbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))});this.addHandler(this.downbutton,"mouseenter",function(e){d.downbutton.addClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))});this.addHandler(this.downbutton,"mouseleave",function(e){d.downbutton.removeClass(d.toThemeProperty("jqx-fill-state-hover"));d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))});this.upbutton.css("border-width","0px");this.downbutton.css("border-width","0px");if(this.disabled){this.upbutton[0].disabled=true;this.downbutton[0].disabled=true}else{this.upbutton[0].disabled=false;this.downbutton[0].disabled=false}this.spincontainer.addClass(this.toThemeProperty("jqx-input"));this.spincontainer.addClass(this.toThemeProperty("jqx-rc-r"));this.spincontainer.css("border-width","0px");if(!this.rtl){this.spincontainer.css("border-left-width","1px")}else{this.spincontainer.css("border-right-width","1px")}this._upArrow=this.upbutton.find("div");this._downArrow=this.downbutton.find("div");this._upArrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._downArrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"));this._upArrow.addClass(this.toThemeProperty("jqx-input-icon"));this._downArrow.addClass(this.toThemeProperty("jqx-input-icon"));var d=this;this._upArrow.hover(function(){if(!d.disabled){d._upArrow.addClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))}},function(){d._upArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-up-hover"))});this._downArrow.hover(function(){if(!d.disabled){d._downArrow.addClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))}},function(){d._downArrow.removeClass(d.toThemeProperty("jqx-icon-arrow-down-hover"))});var b=a.jqx.mobile.isTouchDevice();var c="click";if(b){c=a.jqx.mobile.getTouchEventName("touchstart")}if(b){this.addHandler(this.downbutton,"click",function(e){d.spinDown()});this.addHandler(this.upbutton,"click",function(e){d.spinUp()})}this.addHandler(this.downbutton,c,function(e){if(!b){if(d._selection().start==0){d._setSelectionStart(d.numberInput.val().length)}if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._setSelectionStart(d._inputSelection.start)}}else{e.preventDefault();e.stopPropagation()}d.spinDown();return false});this.addHandler(this.upbutton,c,function(e){if(!b){if(d._selection().start==0){d._setSelectionStart(d.numberInput.val().length)}if(a.jqx.browser.msie&&a.jqx.browser.version<9){d._setSelectionStart(d._inputSelection.start)}}else{e.preventDefault();e.stopPropagation()}d.spinUp();return false})}else{throw new Error("jqxNumberInput: Missing reference to jqxbuttons.js.")}},spinDown:function(){var o=this;if(o.spinMode=="none"){return}if(this.decimal==null){this.setDecimal(-1);return}var b=this.getvalue("negative");var t=b?-1:0;if(a.jqx.mobile.isTouchDevice()||this.inputMode=="textbox"){o._doTouchHandling()}if(!o.disabled){var r=this._selection();var q=this.decimal;var l=this.getDecimal();if(l<this.min){l=this.min;this.setDecimal(this.min);this._setSelectionStart(r.start);this.spinDown();return}else{if(l>this.max){l=this.max;this.setDecimal(this.max);this._setSelectionStart(r.start);this.spinDown();return}}if(o.spinButtonsStep<0){o.spinButtonsStep=1}var d=parseInt(o.decimal)-o.spinButtonsStep;d=d.toString().length;var f=t+d<=o.digits;if(o.spinMode!="advanced"){if(l-o.spinButtonsStep>=o.min&&f){var v=1;for(g=0;g<o.decimalDigits;g++){v=v*10}var e=(v*l)-(v*o.spinButtonsStep);e=e/v;e=this._parseDecimalValueToEditorValue(e);o.setDecimal(e)}}else{var s=this._getspindecimal();var n=this._getSeparatorPosition();var l=parseFloat(s.decimal);if(o.spinButtonsStep<0){o.spinButtonsStep=1}var d=parseInt(l)-o.spinButtonsStep;d=d.toString().length;var f=t+d<=o.digits;var v=1;var c=s.decimal.indexOf(".");if(c!=-1){var h=s.decimal.length-c-1;var v=1;for(var g=0;g<h;g++){v=v*10}l-=new Number(o.spinButtonsStep/v);l=l.toFixed(h);var c=l.toString().indexOf(".");if(c==-1){l=l.toString()+"."}var u=l.toString()+s.afterdecimal;u=new Number(u);u=u.toFixed(o.decimalDigits);if(u>=o.min){u=this._parseDecimalValueToEditorValue(u);o.setDecimal(u)}}else{if(l-o.spinButtonsStep>=o.min&&f){var e=(v*l)-(v*o.spinButtonsStep);e=e/v;var u=e.toString()+s.afterdecimal;if(u>=o.min){u=this._parseDecimalValueToEditorValue(u);o.setDecimal(u)}}}}if(u==undefined||this.inputMode!="simple"){this._setSelectionStart(r.start);o.savedValue=o.numberInput[0].value;if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal);return}u=this.decimal.toString();var b=this.getvalue("negative");if(t==0&&b){this._setSelectionStart(r.start+1)}else{if((u!=undefined&&(q==undefined||q.toString().length==u.length))){this._setSelectionStart(r.start)}else{if(b){this._setSelectionStart(r.start+1)}else{this._setSelectionStart(r.start-1)}}}if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal)}},_getspindecimal:function(){var q=this._selection();var r="";var n=this._getSeparatorPosition();var t=this._getVisibleItems();var e=this._getHiddenPrefixCount();var s=this.numberInput.val();if(this.numberInput.val().length==q.start&&q.length==0){this._setSelection(q.start,q.start+1);q=this._selection()}var l=this.inputMode!="advanced";for(var c=0;c<q.start;c++){if(l){var o=s.substring(c,c+1);var h=(!isNaN(parseInt(o)));if(h){r+=o}if(o==this.decimalSeparator){r+=o}continue}if(t[c].canEdit&&t[c].character!=this.promptChar){r+=t[c].character}else{if(!t[c].canEdit&&this.decimalSeparatorPosition!=-1&&t[c]==t[this.decimalSeparatorPosition-e]){if(r.length==0){r="0"}r+=t[c].character}}}var g="";for(var c=q.start;c<t.length;c++){if(l){var o=s.substring(c,c+1);var h=(!isNaN(parseInt(o)));if(h){g+=o}if(o==this.decimalSeparator){g+=o}continue}if(t[c].canEdit&&t[c].character!=this.promptChar){g+=t[c].character}else{if(!t[c].canEdit&&this.decimalSeparatorPosition!=-1&&t[c]==t[this.decimalSeparatorPosition-e]){g+=t[c].character}}}var b=this.getvalue("negative");var f=b?"-"+this._parseDecimalValue(r).toString():this._parseDecimalValue(r).toString();return{decimal:f,afterdecimal:this._parseDecimalValue(g)}},_parseDecimalValue:function(c){if(this.decimalSeparator!="."){var d=c.toString().indexOf(this.decimalSeparator);if(d>=0){var b=c.toString().substring(0,d)+"."+c.toString().substring(d+1);return b}}return c},_parseDecimalValueToEditorValue:function(c){if(this.decimalSeparator!="."){var d=c.toString().indexOf(".");if(d>=0){var b=c.toString().substring(0,d)+this.decimalSeparator+c.toString().substring(d+1);return b}}return c},spinUp:function(){var q=this;if(q.spinMode=="none"){return}if(this.decimal==null){this.setDecimal(1);return}if(a.jqx.mobile.isTouchDevice()||this.inputMode=="textbox"){q._doTouchHandling()}var b=this.getvalue("negative");var u=b?-1:0;if(!q.disabled){var s=this._selection();var r=q.decimal;var n=q.getDecimal();if(n<this.min){n=this.min;this.setDecimal(this.min);this._setSelectionStart(s.start);this.spinUp();return}else{if(n>this.max){n=this.max;this.setDecimal(this.max);this._setSelectionStart(s.start);this.spinUp();return}}if(q.spinButtonsStep<0){q.spinButtonsStep=1}var d=parseInt(q.decimal)+q.spinButtonsStep;d=d.toString().length;var g=u+d<=q.digits;if(q.spinMode!="advanced"){if(n+q.spinButtonsStep<=q.max&&g){var w=1;for(var l=0;l<q.decimalDigits;l++){w=w*10}var f=(w*n)+(w*q.spinButtonsStep);f=f/w;f=this._parseDecimalValueToEditorValue(f);q.setDecimal(f)}}else{var t=this._getspindecimal();var o=this._getSeparatorPosition();var n=parseFloat(t.decimal);if(q.spinButtonsStep<0){q.spinButtonsStep=1}var d=parseInt(n)+q.spinButtonsStep;d=d.toString().length;var g=u+d<=q.digits;var w=1;var c=t.decimal.indexOf(".");if(c!=-1){var h=t.decimal.length-c-1;var w=1;for(var l=0;l<h;l++){w=w*10}n+=new Number(q.spinButtonsStep/w);n=n.toFixed(h);var c=n.toString().indexOf(".");if(c==-1){n=n.toString()+"."}var v=n.toString()+t.afterdecimal;v=new Number(v);v=v.toFixed(q.decimalDigits);var e=new Number(v).toFixed(q.decimalDigits);if(e<=q.max){v=this._parseDecimalValueToEditorValue(v);q.setDecimal(v)}else{v=undefined}}else{if(n+q.spinButtonsStep<=q.max&&g){var f=(w*n)+(w*q.spinButtonsStep);f=f/w;var v=f.toString()+t.afterdecimal;var e=new Number(v).toFixed(q.decimalDigits);if(e<=q.max){v=this._parseDecimalValueToEditorValue(v);if(b&&v.indexOf("-")==-1){if(t.decimal!="-0"){v="-"+v}}q.setDecimal(v)}else{v=undefined}}}}if(v==undefined||this.inputMode!="simple"){this._setSelectionStart(s.start);q.savedValue=q.numberInput[0].value;if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal);return}v=this.decimal.toString();var b=this.getvalue("negative");if(u==-1&&!b){this._setSelectionStart(-1+s.start)}else{if((v!=undefined&&(r==undefined||r.toString().length==v.length))){this._setSelectionStart(s.start)}else{if(b){this._setSelectionStart(s.start)}else{this._setSelectionStart(1+s.start)}}}if(a.jqx.mobile.isTouchDevice()){this._raiseEvent(0,{})}this._raiseEvent(7,{});a.jqx.aria(self,"aria-valuenow",this.decimal)}},_exitSimpleInputMode:function(b,o,h,d){if(o==undefined){o=b.data}if(o==null){return}if(h==undefined){if(b.target!=null&&o.element!=null){if((b.target.id!=undefined&&b.target.id.toString().length>0&&o.host.find("#"+b.target.id).length>0)||b.target==o.element){return}}var f=o.host.offset();var e=f.left;var g=f.top;var c=o.host.width();var n=o.host.height();var q=a(b.target).offset();if(q.left>=e&&q.left<=e+c){if(q.top>=g&&q.top<=g+n){return}}}if(a.jqx.mobile.isOperaMiniBrowser()){o.numberInput.attr("readonly",true)}if(o.disabled||o.readOnly){return}var l=a.data(o.numberInput,"simpleInputMode");if(l==null){return}a.data(o.numberInput,"simpleInputMode",null);this._parseDecimalInSimpleMode();return false},_getDecimalInSimpleMode:function(){var d=this.decimal;if(this.decimalSeparator!="."){var b=d.toString().indexOf(this.decimalSeparator);if(b>0){var c=d.toString().substring(0,b);var d=c+"."+d.toString().substring(b+1)}}return d},_parseDecimalInSimpleMode:function(d){var o=this;var b=o.getvalue("negative");var e=this.ValueString;if(e==undefined){e=this.GetValueString(this.numberInput.val(),this.decimalSeparator,this.decimalSeparator!="")}if(this.decimalSeparator!="."){var g=e.toString().indexOf(".");if(g>0){var f=e.toString().substring(0,g);var c=f+this.decimalSeparator+e.toString().substring(g+1);e=c}}var h=b?"-":"";if(this.symbolPosition=="left"){h+=this.symbol}var l=this.digits%this.groupSize;if(l==0){l=this.groupSize}var n=e.toString();if(n.indexOf("-")>=0){n=n.substring(n.indexOf("-")+1)}h+=n;if(this.symbolPosition=="right"){h+=this.symbol}if(d!=false){o.numberInput.val(h)}},_enterSimpleInputMode:function(f,d){if(d==undefined){d=f.data}var e=this._selection();if(d==null){return}var c=d.getvalue("negative");var b=d.decimal;if(c){if(b>0){b=-b}}d.numberInput.val(b);a.data(d.numberInput,"simpleInputMode",true);if(a.jqx.mobile.isOperaMiniBrowser()){d.numberInput.attr("readonly",false)}this._parseDecimalInSimpleMode();this._setSelectionStart(e.start)},setvalue:function(b,c){if(this[b]!==undefined){if(b=="decimal"){this._setDecimal(c)}else{this[b]=c;this.propertyChangedHandler(this,b,c,c)}}},getvalue:function(b){if(b=="decimal"){if(this.negative!=undefined&&this.negative==true){return -Math.abs(this[b])}}if(b in this){return this[b]}return null},_getString:function(){var c="";for(var b=0;b<this.items.length;b++){var d=this.items[b].character;c+=d}return c},_literal:function(d,b,c,e){return{character:d,regex:b,canEdit:c,isSeparator:e}},_initializeLiterals:function(){if(this.inputMode=="textbox"){return}var h=0;var e=this.negativeSymbol.length;for(var d=0;d<e;d++){var g=this.negativeSymbol.substring(d,d+1);var n="";var b=false;var o=null;if(this.negative){o=this._literal(g,n,b,false)}else{o=this._literal("",n,b,false)}this.items[h]=o;h++}var c=this.symbol.length;if(this.symbolPosition=="left"){for(d=0;d<c;d++){var g=this.symbol.substring(d,d+1);var n="";var b=false;var o=this._literal(g,n,b,false);this.items[h]=o;h++}}var f=this.digits%this.groupSize;if(f==0){f=this.groupSize}for(var d=0;d<this.digits;d++){var g=this.promptChar;var n="\\d";var b=true;var o=this._literal(g,n,b,false);this.items[h]=o;h++;if(d<this.digits-1&&this.groupSeparator!=undefined&&this.groupSeparator.length>0){f--;if(f==0){f=this.groupSize;var l=this._literal(this.groupSeparator,"",false,false);this.items[h]=l;h++}}else{if(d==this.digits-1){o.character=0}}}this.decimalSeparatorPosition=-1;if(this.decimalDigits!=undefined&&this.decimalDigits>0){var g=this.decimalSeparator;if(g.length==0){g="."}var o=this._literal(g,"",false,true);this.items[h]=o;this.decimalSeparatorPosition=h;h++;for(var d=0;d<this.decimalDigits;d++){var r=0;var n="\\d";var q=this._literal(r,n,true,false);this.items[h]=q;h++}}if(this.symbolPosition=="right"){for(var d=0;d<c;d++){var g=this.symbol.substring(d,d+1);var n="";var b=false;var o=this._literal(g,n,b);this.items[h]=o;h++}}},_match:function(c,b){var d=new RegExp(b,"i");return d.test(c)},_raiseEvent:function(r,d){var o=this.events[r];var c={};c.owner=this;if(this.host.css("display")=="none"){return true}var x=d.charCode?d.charCode:d.keyCode?d.keyCode:0;var f=true;var h=this.readOnly;var v=this;if(r==3||r==2){if(!this.disabled){if(this.inputMode!="simple"&&this.inputMode!="textbox"){this._handleMouse(d)}else{return true}}}if(r==0){var g=this.getvalue("decimal");if((this.max<g)||(this.min>g)){this.host.addClass(this.toThemeProperty("jqx-input-invalid"))}else{this.host.removeClass(this.toThemeProperty("jqx-input-invalid"));this.host.addClass(this.toThemeProperty("jqx-input"));this.host.addClass(this.toThemeProperty("jqx-rc-all"))}}var s=new a.Event(o);s.owner=this;c.value=this.getvalue("decimal");c.text=this.numberInput.val();s.args=c;if(o!=undefined){if(r!=4&&r!=5&&r!=6){f=this.host.trigger(s)}}var v=this;if(this.inputMode=="textbox"){return f}if(this.inputMode!="simple"){if(r==4){if(h||this.disabled){return false}f=v._handleKeyDown(d,x)}else{if(r==5){if(h||this.disabled){f=false}}else{if(r==6){if(h||this.disabled){return false}f=v._handleKeyPress(d,x)}}}}else{if(r==4||r==5||r==6){if(a.jqx.mobile.isTouchDevice()||this.touchMode===true){return true}if(h||this.disabled){return false}var w=String.fromCharCode(x);var q=parseInt(w);var t=true;if(!d.ctrlKey&&!d.shiftKey&&!d.metaKey){if(x>=65&&x<=90){t=false}}if(r==6&&a.jqx.browser.opera!=undefined){if(x==8){return false}}if(t){if(r==4){t=v._handleSimpleKeyDown(d,x)}if(x==189||x==45||x==109||x==173){var y=v._selection();if(r==4){var l=v.getvalue("negative");if(l==false){v.setvalue("negative",true)}else{v.setvalue("negative",false)}v.decimal=v.ValueString;v._parseDecimalInSimpleMode();v._setSelectionStart(y.start);t=false;v._raiseEvent(0,v.value);v._raiseEvent(1,v.numberInput.val())}}var b=c.ctrlKey||c.metaKey;if(!a.jqx.browser.msie){var u=d;if((b&&x==99)||(b&&x==67)||(b&&x==122)||(b&&x==90)||(b&&x==118)||(b&&x==86)||(u.shiftKey&&x==45)){if(a.jqx.browser.webkit||a.jqx.browser.chrome){v._handleSimpleKeyDown(d,x)}if(x==67){return true}return false}}if((b&&x==97)||(b&&x==65)){return true}if(r==6&&t){var n=this._isSpecialKey(x);return n}}return t}}return f},GetSelectionInValue:function(h,g,f,e){var c=0;for(i=0;i<g.length;i++){if(i>=h){break}var d=g.substring(i,i+1);var b=(!isNaN(parseInt(d)));if(b||(e&&g.substring(i,i+1)==f)){c++}}return c},GetSelectionLengthInValue:function(g,h,f,e){var c=0;for(i=0;i<f.length;i++){if(i>=g+h){break}var d=f.substring(i,i+1);var b=(!isNaN(parseInt(d)));if(h>0&&i>=g&&b||(i>=g&&f[i].toString()==e)){c++}}return c},GetInsertTypeByPositionInValue:function(e,g,h,f){var c="before";var b=this.GetValueString(h,g,f);var d=this.GetDigitsToSeparator(0,b,g);if(e>d){c="after"}return c},RemoveRange:function(f,e,q,g,w,b){var h=this.digits;var r=f;var x=e;var c=0;var s=this.decimal;var B=this._selection();var g=this.decimalSeparator;var l=g!="";if(x==0&&this.ValueString.length<this.decimalPossibleChars-1){return c}var y=this.GetSeparatorPositionInText(g,q);if(!w){y=this.GetSeparatorPositionInText(g,q)}if(y<0&&!l&&q.length>1){y=q.length}if(y==-1){y=q.length}var d=l?1:0;if(e<2&&b==true){var A=this.ValueString.length-this.decimalDigits-d;if((A)==h&&f+e<y){x++}}var n="";for(var v=0;v<q.length;v++){if(v<r||v>=r+x){n+=q.substring(v,v+1);continue}else{var u=q.substring(v,v+1);if(u==g){n+=g;continue}else{var u=q.substring(v,v+1);if(this.symbol&&this.symbol!=""&&this.symbol.indexOf(u)>=0){continue}if(v>y){n+="0";continue}}}var u=q.substring(v,v+1);var t=(!isNaN(parseInt(u)));if(t){c++}}if(n.length==0){n="0"}if(w){this.numberInput.val(n)}else{this.ValueString=n}var o=n.substring(0,1);if(o==g&&isNaN(parseInt(o))){var z="0"+n;n=z}this.ValueString=this.GetValueString(n,g,l);this.decimal=this.ValueString;this._parseDecimalInSimpleMode();this._setSelectionStart(r);return c},InsertDigit:function(v,B){if(typeof this.digits!="number"){this.digits=parseInt(this.digits)}if(typeof this.decimalDigits!="number"){this.decimalDigits=parseInt(this.decimalDigits)}var l=1+this.digits;var C=this._selection();var q=this.getvalue("negative");var d=false;if(C.start==0&&this.symbol!=""&&this.symbolPosition=="left"){this._setSelectionStart(C.start+1);C=this._selection();d=true}if((q&&d)||(q&&!d&&C.start==0)){this._setSelectionStart(C.start+1);C=this._selection()}var z=this.numberInput.val().substring(C.start,C.start+1);var s=this.numberInput.val();var g=this.decimalSeparator;var n=g!=""&&this.decimalDigits>0;if(z==this.symbol&&this.symbolPosition=="right"){if(this.decimalDigits==0){this.ValueString=this.GetValueString(s,g,n);if(this.ValueString.length>=l){return}}else{return}}this.ValueString=this.GetValueString(s,g,n);if(this.ValueString==""){this.ValueString=new Number(0).toFixed(this.decimalDigits)}var y=this.ValueString;if(this.decimalDigits>0&&B>=y.length){B=y.length-1}var t="";if(B<y.length){t=y.substring(B,B+1)}var h=false;var A=false;var e=this.GetInsertTypeByPositionInValue(B,g,s,n);if(e=="after"){h=true}var b=n?1:0;if(t!=g&&(this.ValueString.length-this.decimalDigits-b)>=l-1){h=true}if(t==="0"&&this.ValueString.length===1&&this.decimalDigits===0){h=true}var u=false;var w=n?1:0;if(!h&&this.ValueString&&this.ValueString.length>=this.digits+this.decimalDigits+w){return}if(h&&t!=g){if(u){B++}var r=y.substring(0,B);if(r.length==y.length){if(this.ValueString.length>=this.digits+this.decimalDigits+w){return}}var x=v;var c="";if(B+1<y.length){c=y.substring(B+1)}var o=r+x+c;this.ValueString=o}else{var r=y.substring(0,B);var x=v;var c=y.substring(B);var o=r+x+c;if(y.substring(0,1)=="0"&&y.substring(1,2)==g){o=x+y.substring(1);if(t==g){this._setSelectionStart(C.start-1);C=this._selection()}}this.ValueString=o}if(q){this.decimal=-this.ValueString}else{this.decimal=this.ValueString}this._parseDecimalInSimpleMode();var f=C.start;f+=1;this._setSelectionStart(f);this.value=this.decimal;this._raiseEvent(0,this.value);this._raiseEvent(1,this.numberInput.val())},GetStringToSeparator:function(h,f,e){var d="";var b=f;var g=this.GetSeparatorPositionInText(f,h);var c=h.subString(0,g);d=this.GetValueString(c,f,e);return d},GetSeparatorPositionInText:function(c,d){var b=-1;for(i=0;i<d.length;i++){if(d.substring(i,i+1)==c){b=i;break}}return b},GetValueString:function(h,g,f){var d="";for(var c=0;c<h.length;c++){var e=h.substring(c,c+1);var b=(!isNaN(parseInt(e)));if(b){d+=e}if(e==g){d+=g}}return d},Backspace:function(){var d=this._selection();var e=this._selection();var f=this.numberInput.val();if(d.start==0&&d.length==0){return}this.isBackSpace=true;var c=f.substring[d.start,d.start+1];var b=(!isNaN(parseInt(c)));if(d.start>0&&d.length==0){this._setSelectionStart(d.start-1);var d=this._selection()}this.Delete();this._setSelectionStart(e.start-1);this.isBackSpace=false},Delete:function(c){var e=this._selection();var g=this.numberInput.val();if(e.start===0&&g.substring(0,1)=="-"){this.setvalue("negative",false);var e=this._selection();var g=this.numberInput.val()}var f=e.start;var h=e.length;h=Math.max(h,1);this.ValueString=this.GetValueString(g,this.decimalSeparator,this.decimalSeparator!="");this.RemoveRange(e.start,h,this.ValueString,".",false);var d=this.ValueString.substring(0,1);var b=(!isNaN(parseInt(d)));if(!b){this.ValueString="0"+this.ValueString}this.decimal=this.ValueString;this._parseDecimalInSimpleMode();this._setSelectionStart(f);this.value=this.decimal;this._raiseEvent(0,this.value);this._raiseEvent(1,this.numberInput.val())},insertsimple:function(d){var l=this._selection();var n=this.numberInput.val();if(l.start==n.length&&this.decimal!=null&&this.decimalDigits>0){return}var b=this.decimal;var g=this.decimalSeparator;this.ValueString=this.GetValueString(n,g,g!="");var h=this.GetSelectionInValue(l.start,n,g,g!="");var e=this.GetSelectionLengthInValue(l.start,l.length,n,g);var f=this.GetDigitsToSeparator(0,this.ValueString,g);var c=false;if(this.decimalDigits>0&&h>=this.ValueString.length){h--}if(this.ValueString==""){this.ValueString=new Number(0).toFixed(this.decimalDigits);this.InsertDigit(d,h,l);return}this.RemoveRange(l.start,e,this.ValueString,g,false,true);this.InsertDigit(d,h,l)},GetDigitsToSeparator:function(c,b,d){if(d==undefined){d="."}if(b.indexOf(d)<0){return b.length}for(i=0;i<b.length;i++){if(b.substring(i,i+1)==d){c=i;break}}return c},_handleSimpleKeyDown:function(n,v){var u=this._selection();var b=n.ctrlKey||n.metaKey;if((v==8||v==46)&&b){this.setDecimal(null);return false}if(u.start>=0&&u.start<this.items.length){var d=String.fromCharCode(v)}if(this.rtl&&v==37){var c=n.shiftKey;var g=c?1:0;if(c){this._setSelection(u.start+1-g,u.start+u.length+1)}else{this._setSelection(u.start+1-g,u.start+1)}return false}else{if(this.rtl&&v==39){var c=n.shiftKey;var g=c?1:0;if(c){this._setSelection(u.start-1,u.length+g+u.start-1)}else{this._setSelection(u.start-1,u.start-1)}return false}}if(v==8){this.Backspace();return false}if(v==190||v==110){var l=this.GetSeparatorPositionInText(this.decimalSeparator,this.numberInput.val());if(l!=-1){this._setSelectionStart(l+1)}return false}if(v==188){var t=this.numberInput.val();for(h=u.start;h<t.length;h++){if(t[h]==this.groupSeparator){this._setSelectionStart(1+h);break}}return false}var b=n.ctrlKey||n.metaKey;if((b&&v==99)||(b&&v==67)){var u=this._selection();var w="";var s=this.numberInput.val();if(u.start>0||u.length>0){for(var h=u.start;h<u.end;h++){w+=s.substring(h,h+1)}}a.data(document.body,"jqxSelection",w);if(a.jqx.browser.msie){window.clipboardData.setData("Text",w)}else{var o=this;var f=a('<textarea style="position: absolute; left: -1000px; top: -1000px;"/>');f.val(w);a("body").append(f);f.select();setTimeout(function(){document.designMode="off";f.select();f.remove();o.focus()},100)}this.savedText=w;return true}if((b&&v==122)||(b&&v==90)){return false}if((b&&v==118)||(b&&v==86)||(n.shiftKey&&v==45)){if(a.jqx.browser.msie&&!this.savedText){this.savedText=window.clipboardData.getData("Text")}if(this.savedText!=null&&this.savedText.length>0){this.val(this.savedText)}else{this.val(a.data(document.body,"jqxSelection"))}return false}var d=String.fromCharCode(v);var q=parseInt(d);if(v>=96&&v<=105){q=v-96;v=v-48}if(!isNaN(q)){var o=this;this.insertsimple(q);return false}if(v==46){this.Delete();return false}if(v==38){this.spinUp();return false}else{if(v==40){this.spinDown();return false}}var r=this._isSpecialKey(v);if(!a.jqx.browser.mozilla){return true}return r},_getEditRange:function(){var c=0;var b=0;for(i=0;i<this.items.length;i++){if(this.items[i].canEdit){c=i;break}}for(i=this.items.length-1;i>=0;i--){if(this.items[i].canEdit){b=i;break}}return{start:c,end:b}},_getVisibleItems:function(){var b=new Array();var c=0;for(i=0;i<this.items.length;i++){if(this.items[i].character.toString().length>0){b[c]=this.items[i];c++}}return b},_hasEmptyVisibleItems:function(){var b=this._getVisibleItems();for(i=0;i<b.length;i++){if(b[i].canEdit&&b[i].character==this.promptChar){return true}}return false},_getFirstVisibleNonEmptyIndex:function(){var b=this._getVisibleItems();for(i=0;i<b.length;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){return i}}},_handleMouse:function(f,b){var d=this._selection();if(d.length<=1){var c=this._getFirstVisibleNonEmptyIndex();if(d.start<c){this._setSelectionStart(c)}}},_insertKey:function(l){this.numberInput[0].focus();var d=String.fromCharCode(l);var e=parseInt(d);if(isNaN(e)){return}var q=0;for(i=0;i<this.items.length;i++){if(this.items[i].character.length==0){q++}}var g=this._selection();var b=this;if(g.start>=0&&g.start<=this.items.length){var f=false;var h=this._getFirstVisibleNonEmptyIndex();if(g.start<h&&g.length==0){if(!isNaN(d)||d==" "){this._setSelectionStart(h);g=this._selection()}}var c=this._getFirstEditableItemIndex();var o=this._getLastEditableItemIndex();var n=this._getVisibleItems();a.each(n,function(x,B){if(g.start>x&&x!=n.length-1){return}var E=n[x];if(x>o){E=n[o]}if(isNaN(d)||d==" "){return}if(!E.canEdit){return}var A=b._getSeparatorPosition();if(b._match(d,E.regex)){if(!f&&g.length>0){for(j=g.start+q;j<g.end+q;j++){if(b.items[j].canEdit){if(j>A){b.items[j].character="0"}else{b.items[j].character=b.promptChar}}}var D=b._getString();f=true}var A=b._getSeparatorPosition();var y=b._hasEmptyVisibleItems();if(b.decimal==null){g.start=A-1;if(g.start<0){g.start=0}g.end=g.start}if(g.start<=A&&y){var v=x;if(b.decimalSeparatorPosition==-1&&g.start==A){v=x+1}if(b.decimal==null){v=g.start}var u="";for(p=0;p<v;p++){if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}}u+=d;var w=b.decimal<1?1:0;if(g.start==A&&b.decimalSeparatorPosition!=-1){u+=b.decimalSeparator;w=0}for(p=v+w;p<n.length;p++){if(n[p].character==b.decimalSeparator&&n[p].isSeparator){u+=n[p].character}else{if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}}}if(b.decimalSeparator!="."){u=b._parseDecimalValue(u)}u=parseFloat(u).toString();u=new Number(u);u=u.toFixed(b.decimalDigits);if(b.decimalSeparator!="."){u=b._parseDecimalValueToEditorValue(u)}b.setvalue("decimal",u);var D=b._getString();if(g.end<A){b._setSelectionStart(g.end+w)}else{b._setSelectionStart(g.end)}if(g.length>=1){b._setSelectionStart(g.end)}if(g.length==b.numberInput.val().length){var r=b._moveCaretToDecimalSeparator();var C=b.decimalSeparatorPosition>=0?1:0;b._setSelectionStart(r-C)}}else{if(g.start<A||g.start>A){if(b.numberInput.val().length==g.start&&b.decimalSeparatorPosition!=-1){return false}else{if(b.numberInput.val().length==g.start&&b.decimalSeparatorPosition==-1&&!y){return false}}var u="";var s=false;for(p=0;p<x;p++){if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}if(n[p].character==b.decimalSeparator&&n[p].isSeparator){u+=n[p].character;s=true}}u+=d;var w=b.decimal<1?1:0;if(!s&&g.start==A-1){u+=b.decimalSeparator;s=true}for(p=x+1;p<n.length;p++){if(!s&&n[p].character==b.decimalSeparator&&n[p].isSeparator){u+=n[p].character}else{if(n[p].canEdit&&n[p].character!=b.promptChar){u+=n[p].character}}}b.setvalue("decimal",u);var D=b._getString();if(b.decimalSeparatorPosition<0&&E==n[o]){b._setSelectionStart(x);return false}var z=D.indexOf(b.symbol);var t=!b.getvalue("negative")?0:1;if(z<=t){z=D.length}if(g.start<z){b._setSelectionStart(x+1)}else{b._setSelectionStart(x)}if(g.length>=1){}if(g.length==b.numberInput.val().length){var r=b._moveCaretToDecimalSeparator();b._setSelectionStart(r-1)}}}return false}})}},_handleKeyPress:function(h,d){var f=this._selection();var b=this;var l=h.ctrlKey||h.metaKey;if((l&&d==97)||(l&&d==65)){return true}if(d==8){if(f.start>0){b._setSelectionStart(f.start)}return false}if(d==46){if(f.start<this.items.length){b._setSelectionStart(f.start)}return false}if(!a.jqx.browser.mozilla){if(d==45||d==173||d==109||d==189){var c=this.getvalue("negative");if(c==false){this.setvalue("negative",true)}else{this.setvalue("negative",false)}}}if(a.jqx.browser.msie){this._insertKey(d)}var g=this._isSpecialKey(d);return g},_deleteSelectedText:function(){var d=this._selection();var c="";var f=this._getSeparatorPosition();var b=this._getVisibleItems();var e=this._getHiddenPrefixCount();if(this.numberInput.val().length==d.start&&d.length==0){this._setSelection(d.start,d.start+1);d=this._selection()}for(i=0;i<d.start;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){c+=b[i].character}else{if(!b[i].canEdit&&this.decimalSeparatorPosition!=-1&&b[i]==b[this.decimalSeparatorPosition-e]){if(c.length==0){c="0"}c+=b[i].character}}}for(i=d.start;i<d.end;i++){if(i>f&&this.decimalSeparatorPosition!=-1){if(b[i].canEdit&&b[i].character!=this.promptChar){c+="0"}}else{if(!b[i].canEdit&&this.decimalSeparatorPosition!=-1&&b[i]==b[this.decimalSeparatorPosition-e]){if(c.length==0){c="0"}c+=b[i].character}}}for(i=d.end;i<b.length;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){c+=b[i].character}else{if(!b[i].canEdit&&this.decimalSeparatorPosition!=-1&&b[i]==b[this.decimalSeparatorPosition-e]){if(c.length==0){c="0"}c+=b[i].character}}}this.setvalue("decimal",c);return d.length>0},_restoreInitialState:function(){var b=parseInt(this.decimalDigits);if(b>0){b+=2}for(k=this.items.length-1;k>this.items.length-1-b;k--){if(this.items[k].canEdit&&this.items[k].character==this.promptChar){this.items[k].character=0}}},clear:function(){this.setDecimal(0)},clearDecimal:function(){if(this.inputMode=="textbox"){this.numberInput.val();return}for(var b=0;b<this.items.length;b++){if(this.items[b].canEdit){this.items[b].character=this.promptChar}}this._restoreInitialState()},_saveSelectedText:function(){var c=this._selection();var d="";var b=this._getVisibleItems();if(c.start>0||c.length>0){for(i=c.start;i<c.end;i++){if(b[i].canEdit&&b[i].character!=this.promptChar){d+=b[i].character}else{if(b[i].isSeparator){d+=b[i].character}}}}if(a.jqx.browser.msie){window.clipboardData.setData("Text",d)}return d},_pasteSelectedText:function(){var f=this._selection();var h="";var c=0;this.selectedText=a.data(document.body,"jqxSelection");if(window.clipboardData){var d=window.clipboardData.getData("Text");if(d!=this.selectedText&&d.length>0){this.selectedText=window.clipboardData.getData("Text");if(this.selectedText==null||this.selectedText==undefined){return}}}var e=f.start;var n=this._getVisibleItems();if(this.selectedText!=null){for(var l=0;l<this.selectedText.length;l++){var b=parseInt(this.selectedText[l]);if(!isNaN(b)){var g=48+b;this._insertKey(g)}}}},_getHiddenPrefixCount:function(){var b=0;if(!this.negative){b++}if(this.symbolPosition=="left"){for(i=0;i<this.symbol.length;i++){if(this.symbol.substring(i,i+1)==""){b++}}}return b},_getEditableItem:function(){var b=this._selection();for(i=0;i<this.items.length;i++){if(i<b.start){if(this.items[i].canEdit&&this.items[i].character!=this.promptChar){return this.items[i]}}}return null},_getEditableItems:function(){var c=new Array();var b=0;for(i=0;i<this.items.length;i++){if(this.items[i].canEdit){c[b]=this.items[i];b++}}return c},_getValidSelectionStart:function(b){for(i=this.items.length-1;i>=0;i--){if(this.items[i].canEdit&&this.items[i].character!=this.promptChar){return i}}return -1},_getEditableItemIndex:function(c){var e=this._selection();var f=this._getHiddenPrefixCount();var b=this._getVisibleItems();var d=e.start;var g=-1;for(i=0;i<d;i++){if(i<b.length&&b[i].canEdit){g=i+f}}if(g==-1&&e.length>0){d=e.end;for(i=0;i<d;i++){if(i<b.length&&b[i].canEdit){g=i+f;break}}}return g},_getEditableItemByIndex:function(b){for(k=0;k<this.items.length;k++){if(k>b){if(this.items[k].canEdit&&this.items[k].character!=this.promptChar){return k}}}return -1},_getFirstEditableItemIndex:function(){var b=this._getVisibleItems();for(m=0;m<b.length;m++){if(b[m].character!=this.promptChar&&b[m].canEdit&&b[m].character!="0"){return m}}return -1},_getLastEditableItemIndex:function(){var b=this._getVisibleItems();for(m=b.length-1;m>=0;m--){if(b[m].character!=this.promptChar&&b[m].canEdit){return m}}return -1},_moveCaretToDecimalSeparator:function(){for(i=this.items.length-1;i>=0;i--){if(this.items[i].character==this.decimalSeparator&&this.items[i].isSeparator){if(!this.negative){this._setSelectionStart(i);return i}else{this._setSelectionStart(i+1);return i}break}}return this.numberInput.val().length},_handleBackspace:function(){var g=this._selection();var h=this._getHiddenPrefixCount();var b=this._getEditableItemIndex()-h;var f=this._getFirstVisibleNonEmptyIndex();var c=false;if(this.negative){c=true;if(f>=b+1||g.start==0){this.setvalue("negative",false);if(g.length==0){this._setSelectionStart(g.start-1);var g=this._selection()}}}if(b>=0){if(g.length==0&&b!=-1){this._setSelection(b,b+1)}var l=g.start>this._getSeparatorPosition()+1&&this.decimalSeparatorPosition>0;if(l){g=this._selection()}var e=this._deleteSelectedText();if(g.length<1||l){this._setSelectionStart(g.start)}else{if(g.length>=1){this._setSelectionStart(g.end)}}if(g.length==this.numberInput.val().length||c){var d=this._moveCaretToDecimalSeparator();this._setSelectionStart(d-1)}}else{this._setSelectionStart(g.start)}},_handleKeyDown:function(h,s){var r=this._selection();var c=h.ctrlKey||h.metaKey;if((s==8||s==46)&&c){this.setDecimal(null);return false}if(this.rtl&&s==37){var d=h.shiftKey;var g=d?1:0;if(d){this._setSelection(r.start+1-g,r.start+r.length+1)}else{this._setSelection(r.start+1-g,r.start+1)}return false}else{if(this.rtl&&s==39){var d=h.shiftKey;var g=d?1:0;if(d){this._setSelection(r.start-1,r.length+g+r.start-1)}else{this._setSelection(r.start-1,r.start-1)}return false}}if((c&&s==97)||(c&&s==65)){return true}if((c&&s==120)||(c&&s==88)){this.selectedText=this._saveSelectedText(h);a.data(document.body,"jqxSelection",this.selectedText);this._handleBackspace();return false}if((c&&s==99)||(c&&s==67)){this.selectedText=this._saveSelectedText(h);a.data(document.body,"jqxSelection",this.selectedText);return false}if((c&&s==122)||(c&&s==90)){return false}if((c&&s==118)||(c&&s==86)||(h.shiftKey&&s==45)){this._pasteSelectedText();return false}if(r.start>=0&&r.start<this.items.length){var f=String.fromCharCode(s);var u=this.items[r.start]}if(s==8){this._handleBackspace();return false}if(s==190||s==110){this._moveCaretToDecimalSeparator();return false}if(s==188){var q=this.numberInput.val();for(i=r.start;i<q.length;i++){if(q[i]==this.groupSeparator){this._setSelectionStart(1+i);break}}return false}if(a.jqx.browser.msie==null){var f=String.fromCharCode(s);var n=parseInt(f);if(s>=96&&s<=105){n=s-96;s=s-48}if(!isNaN(n)){var l=this;l._insertKey(s);return false}}if(s==46){var t=this._getVisibleItems();if(r.start<t.length){var g=t[r.start].canEdit==false?2:1;if(r.start==0){if(this.negative){this.setvalue("negative",false);if(r.length==0){this._setSelectionStart(0)}var r=this._selection();if(r.length==0){return false}}}if(r.length==0){this._setSelection(r.start+g,r.start+g+r.length)}this._handleBackspace();if(new Number(this.decimal)<1||r.start>this._getSeparatorPosition()){this._setSelectionStart(r.end+g)}else{if(r.start+1<this.decimalSeparatorPosition){this._setSelectionStart(r.end+g)}}}return false}if(s==38){this.spinUp();return false}else{if(s==40){this.spinDown();return false}}var o=this._isSpecialKey(s);if(a.jqx.browser.mozilla){if(s==45||s==173||s==109||s==189){var b=this.getvalue("negative");if(b==false){this.setvalue("negative",true)}else{this.setvalue("negative",false)}}}if(!a.jqx.browser.mozilla){return true}return o},_isSpecialKey:function(b){if(b!=8&&b!=9&&b!=13&&b!=35&&b!=36&&b!=37&&b!=39&&b!=27&&b!=46){return false}return true},_selection:function(){try{if("selectionStart" in this.numberInput[0]){var g=this.numberInput[0];var h=g.selectionEnd-g.selectionStart;return{start:g.selectionStart,end:g.selectionEnd,length:h,text:g.value}}else{var d=document.selection.createRange();if(d==null){return{start:0,end:g.value.length,length:0}}var c=this.numberInput[0].createTextRange();var f=c.duplicate();c.moveToBookmark(d.getBookmark());f.setEndPoint("EndToStart",c);var h=d.text.length;return{start:f.text.length,end:f.text.length+d.text.length,length:h,text:d.text}}}catch(b){return{start:0,end:0,length:0}}},selectAll:function(){var b=this.numberInput;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},_setSelection:function(f,b){if(this._disableSetSelection==true){return}var e=a.jqx.mobile.isTouchDevice();if(e||this.touchMode==true){return}try{if("selectionStart" in this.numberInput[0]){this.numberInput[0].focus();this.numberInput[0].setSelectionRange(f,b)}else{var c=this.numberInput[0].createTextRange();c.collapse(true);c.moveEnd("character",b);c.moveStart("character",f);c.select()}}catch(d){}},_setSelectionStart:function(b){this._setSelection(b,b);a.data(this.numberInput,"selectionstart",b)},resize:function(c,b){this.width=c;this.height=b;this._render(false)},_render:function(f){var c=parseInt(this.host.css("border-left-width"));var h=parseInt(this.host.css("border-left-width"));var g=parseInt(this.host.css("border-left-width"));var d=parseInt(this.host.css("border-left-width"));this.numberInput.css("padding-top","0px");this.numberInput.css("padding-bottom","0px");this.host.height(this.height);this.host.width(this.width);var e=this.host.width();var o=this.host.height();this.numberInput.css({"border-left-width":0,"border-right-width":0,"border-bottom-width":0,"border-top-width":0});this.numberInput.css("text-align",this.textAlign);var q=this.numberInput.css("font-size");this.numberInput.css("height",parseInt(q)+4+"px");this.numberInput.css("width",e-2);var n=o-2*g-parseInt(q)-2;if(isNaN(n)){n=0}if(n<0){n=0}if(this.spinButtons&&this.spincontainer){e-=parseInt(this.spinButtonsWidth-2);var l=a.jqx.mobile.isTouchDevice();if(!l&&this.touchMode!==true){this.spincontainer.width(this.spinButtonsWidth);this.upbutton.width(this.spinButtonsWidth+2);this.downbutton.width(this.spinButtonsWidth+2);this.upbutton.height("50%");this.downbutton.height("50%");this.spincontainer.width(this.spinButtonsWidth)}else{this.spincontainer.width(2*(this.spinButtonsWidth));e-=this.spinButtonsWidth;this.upbutton.height("100%");this.downbutton.height("100%");this.downbutton.css("float","left");this.upbutton.css("float","right");this.upbutton.width(this.spinButtonsWidth);this.downbutton.width(1+this.spinButtonsWidth)}this._upArrow.height("100%");this._downArrow.height("100%");this.numberInput.css("width",e-6);this.numberInput.css("margin-right","2px")}var b=n/2;if(a.jqx.browser.msie&&a.jqx.browser.version<8){b=n/4}this.numberInput.css("padding-left","0px");this.numberInput.css("padding-right","0px");this.numberInput.css("padding-top",Math.round(b)+"px");this.numberInput.css("padding-bottom",Math.round(b)+"px");if(f==undefined||f==true){this.numberInput.val(this._getString());if(this.inputMode!="advanced"){this._parseDecimalInSimpleMode()}}},destroy:function(){this._removeHandlers();this.host.remove()},inputValue:function(b){if(b===undefined){return this._value()}this.propertyChangedHandler(this,"value",this._value,b);this._refreshValue();return this},_value:function(){var b=this.numberInput.val();return b},val:function(c){if(c!==undefined&&typeof c!="object"||c===null){if(c===null){this.setDecimal(null);return}else{var f=c;f=f.toString();if(f.indexOf(this.symbol)>-1){f=f.replace(this.symbol,"")}var b=function(q,n,o){var h=q;if(n==o){return q}var l=h.indexOf(n);while(l!=-1){h=h.replace(n,o);l=h.indexOf(n)}return h};f=b(f,this.groupSeparator,"");f=f.replace(this.decimalSeparator,".");var g="";for(var d=0;d<f.length;d++){var e=f.substring(d,d+1);if(e==="-"){g+="-"}if(e==="."){g+="."}if(e.match(/^[0-9]+$/)!=null){g+=e}}f=g;f=f.replace(/ /g,"");f=new Number(f);this.setDecimal(f)}}else{return this.getDecimal()}},getDecimal:function(){if(this.decimal==null){return null}if(this.inputMode=="simple"){this._parseDecimalInSimpleMode(false);this.decimal=this._getDecimalInSimpleMode(this.decimal)}if(this.decimal==""){return 0}var b=this.getvalue("negative");if(b&&this.decimal>0){return -parseFloat(this.decimal)}return parseFloat(this.decimal)},setDecimal:function(e){var b=e;if(this.decimalSeparator!="."){if(e===null){this._setDecimal(e)}else{var d=e;if(typeof(e)!="number"){e=e.toString();var g=e.indexOf(".");if(g!=-1){var c=e.substring(0,g);var f=e.substring(g+1);d=c+"."+f;if(c.indexOf("-")!=-1){c=c.substring(1)}if(this.inputMode!="advanced"){e=c+"."+f}else{e=c+this.decimalSeparator+f}}else{var g=e.indexOf(this.decimalSeparator);if(g!=-1){var c=e.substring(0,g);var f=e.substring(g+1);d=c+"."+f;if(c.indexOf("-")!=-1){c=c.substring(1)}if(this.inputMode!="advanced"){e=c+"."+f}else{e=c+this.decimalSeparator+f}}}}if(d<0){this.setvalue("negative",true)}else{this.setvalue("negative",false)}this._setDecimal(e)}}else{if(e<0){this.setvalue("negative",true)}else{this.setvalue("negative",false)}if(e===null){this._setDecimal(e)}else{this._setDecimal(Math.abs(e))}}if(b==null){this.numberInput.val("")}},_setDecimal:function(r){if(r==null){this.decimal=null;this.value=null;this._refreshValue();this.decimal=null;this.value=null;return}if(r==null||r==undefined){r=0}if(r.toString().indexOf("e")!=-1){r=new Number(r).toFixed(this.decimalDigits).toString()}this.clearDecimal();var s=r.toString();var t="";var b="";var d=true;if(s.length==0){s="0"}for(var g=0;g<s.length;g++){if(s.substring(g,g+1)==this.decimalSeparator){d=false;continue}if(d){t+=s.substring(g,g+1)}else{b+=s.substring(g,g+1)}}if(t.length>0){t=parseFloat(t).toString()}var o=this.digits;if(o<t.length){t=t.substr(0,o)}var f=0;var q=this._getSeparatorPosition();var n=this._getHiddenPrefixCount();q=q+n;for(var g=q;g>=0;g--){if(g<this.items.length&&this.items[g].canEdit){if(f<t.length){this.items[g].character=t.substring(t.length-f-1,t.length-f);f++}}}f=0;for(var g=q;g<this.items.length;g++){if(this.items[g].canEdit){if(f<b.length){this.items[g].character=b.substring(f,f+1);f++}}}this._refreshValue();if(this.decimalSeparator=="."){this.ValueString=new Number(r).toFixed(this.decimalDigits)}else{var l=r.toString().indexOf(this.decimalSeparator);if(l>0){var h=r.toString().substring(0,l);var e=h+"."+r.toString().substring(l+1);this.ValueString=new Number(e).toFixed(this.decimalDigits)}else{this.ValueString=new Number(r).toFixed(this.decimalDigits)}}if(this.inputMode!="advanced"){this._parseDecimalInSimpleMode();this._raiseEvent(1,this.ValueString)}if(this.inputMode=="textbox"){this.decimal=this.ValueString;var c=this.getvalue("negative");if(c){this.decimal="-"+this.ValueString}}var r=this.val();if(r<this.min||r>this.max){this.host.addClass("jqx-input-invalid")}else{this.host.removeClass("jqx-input-invalid")}},_getSeparatorPosition:function(){var b=this._getHiddenPrefixCount();if(this.decimalSeparatorPosition>0){return this.decimalSeparatorPosition-b}return this.items.length-b},_setTheme:function(){this.host.removeClass();this.host.addClass(this.toThemeProperty("jqx-input"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-numberinput"));if(this.spinButtons){this.downbutton.removeClass();this.upbutton.removeClass();this.downbutton.addClass(this.toThemeProperty("jqx-scrollbar-button-state-normal"));this.upbutton.addClass(this.toThemeProperty("jqx-scrollbar-button-state-normal"));this._upArrow.removeClass();this._downArrow.removeClass();this._upArrow.addClass(this.toThemeProperty("jqx-icon-arrow-up"));this._downArrow.addClass(this.toThemeProperty("jqx-icon-arrow-down"))}this.numberInput.removeClass();this.numberInput.addClass(this.toThemeProperty("jqx-input-content"))},propertyChangedHandler:function(c,d,g,f){if(d=="digits"||d=="groupSize"||d=="decimalDigits"){if(f<0){throw new Exception(this.invalidArgumentExceptions[0])}}if(d==="theme"){a.jqx.utilities.setTheme(g,f,c.host)}if(d=="digits"){if(f!=g){c.digits=parseInt(f)}}if(d=="min"||d=="max"){a.jqx.aria(c,"aria-value"+d,f.toString());c._refreshValue()}if(d=="decimalDigits"){if(f!=g){c.decimalDigits=parseInt(f)}}if(d=="decimalSeparator"||d=="digits"||d=="symbol"||d=="symbolPosition"||d=="groupSize"||d=="groupSeparator"||d=="decimalDigits"||d=="negativeSymbol"){var b=c.decimal;if(d=="decimalSeparator"&&f==""){f=" "}if(g!=f){var e=c._selection();c.items=new Array();c._initializeLiterals();c.value=c._getString();c._refreshValue();c._setDecimal(b)}}if(d=="rtl"){if(c.rtl){if(c.spincontainer){c.spincontainer.css("float","right");c.spincontainer.css("border-right-width","1px")}c.numberInput.css("float","right")}else{if(c.spincontainer){c.spincontainer.css("float","right");c.spincontainer.css("border-right-width","1px")}c.numberInput.css("float","left")}}if(d=="spinButtons"){if(c.spincontainer){if(!f){c.spincontainer.css("display","none")}else{c.spincontainer.css("display","block")}c._render()}else{c._spinButtons()}}if(d==="touchMode"){c.inputMode="textbox";c.spinMode="simple";c.render()}if(d=="negative"&&c.inputMode=="advanced"){var e=c._selection();var h=0;if(f){c.items[0].character=c.negativeSymbol[0];h=1}else{c.items[0].character="";h=-1}c._refreshValue();if(c.isInitialized){c._setSelection(e.start+h,e.end+h)}}if(d=="decimal"){c.value=f;c.setDecimal(f)}if(d==="value"){c.value=f;c.setDecimal(f);c._raiseEvent(1,f)}if(d=="textAlign"){c.textAlign=f;c._render()}if(d=="disabled"){c.numberInput.attr("disabled",f);if(c.disabled){c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{c.host.removeClass(c.toThemeProperty("jqx-fill-state-disabled"))}a.jqx.aria(c,"aria-disabled",f.toString())}if(d=="readOnly"){c.readOnly=f}if(d=="promptChar"){for(i=0;i<c.items.length;i++){if(c.items[i].character==c.promptChar){c.items[i].character=f}}c.promptChar=f}if(d=="width"){c.width=f;c._render()}else{if(d=="height"){c.height=f;c._render()}}},_value:function(){var b=this.value;return b},_refreshValue:function(){var g=this.value;var b=0;if(this.inputMode==="textbox"){return}this.value=this._getString();g=this.value;var f="";for(var c=0;c<this.items.length;c++){var e=this.items[c];if(e.canEdit&&e.character!=this.promptChar){f+=e.character}if(c==this.decimalSeparatorPosition){f+="."}}this.decimal=f;var d=false;if(this.oldValue!==g){this.oldValue=g;this._raiseEvent(0,g);d=true}if(this.inputMode!="simple"){this.numberInput.val(g);if(d){this._raiseEvent(1,g)}}if(g==null){this.numberInput.val("")}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxpanel.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxpanel.js
new file mode 100644 (file)
index 0000000..718a2a6
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxPanel","",{});a.extend(a.jqx._jqxPanel.prototype,{defineInstance:function(){var b={width:null,height:null,disabled:false,scrollBarSize:a.jqx.utilities.scrollBarSize,sizeMode:"fixed",autoUpdate:false,autoUpdateInterval:500,touchMode:"auto",horizontalScrollBarMax:null,verticalScrollBarMax:null,touchModeStyle:"auto",rtl:false,events:["layout"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var b=this;if(a.jqx.utilities.scrollBarSize!=15){this.scrollBarSize=a.jqx.utilities.scrollBarSize}this.host.addClass(this.toThemeProperty("jqx-panel"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));var c=a("<div id='panelWrapper' style='overflow: hidden; width: 100%; height: 100%; background-color: transparent; -webkit-appearance: none; outline: none; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div id='panelContent' style='-webkit-appearance: none; -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; height: 100%; outline: none; border: none; padding: 0px; position: absolute; margin: 0px; align:left; valign:top; left: 0px; top: 0px;'/><div id='verticalScrollBar' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'/><div id='horizontalScrollBar' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'/><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'/></div>");if(!this.host.jqxButton){throw new Error("jqxPanel: Missing reference to jqxbuttons.js.")}if(!this.host.jqxScrollBar){throw new Error("jqxPanel: Missing reference to jqxscrollbar.js.")}var d=this.host.children();this._rtl=false;if(d.length>0&&d.css("direction")=="rtl"){this.rtl=true;this._rtl=true}this.host.wrapInner(c);var g=this.host.find("#verticalScrollBar");g[0].id=this.element.id+"verticalScrollBar";this.vScrollBar=g.jqxScrollBar({vertical:true,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme});var f=this.host.find("#horizontalScrollBar");f[0].id=this.element.id+"horizontalScrollBar";this.hScrollBar=f.jqxScrollBar({vertical:false,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme});this.content=this.host.find("#panelContent");this.wrapper=this.host.find("#panelWrapper");this.content.addClass(this.toThemeProperty("jqx-widget-content"));this.wrapper[0].id=this.wrapper[0].id+this.element.id;this.content[0].id=this.content[0].id+this.element.id;this.bottomRight=this.host.find("#bottomRight").addClass(this.toThemeProperty("jqx-panel-bottomright")).addClass(this.toThemeProperty("jqx-scrollbar-state-normal"));this.bottomRight[0].id="bottomRight"+this.element.id;this.vScrollBar.css("visibility","inherit");this.hScrollBar.css("visibility","inherit");this.vScrollInstance=a.data(this.vScrollBar[0],"jqxScrollBar").instance;this.hScrollInstance=a.data(this.hScrollBar[0],"jqxScrollBar").instance;var e=this;this.propertyChangeMap.disabled=function(h,j,i,k){e.vScrollBar.jqxScrollBar({disabled:e.disabled});e.hScrollBar.jqxScrollBar({disabled:e.disabled})};this.vScrollBar.jqxScrollBar({disabled:this.disabled});this.hScrollBar.jqxScrollBar({disabled:this.disabled});this._addHandlers();if(this.width==null){this.width=this.content.width()}if(this.height==null){this.height=this.content.height()}this._arrange();this.contentWidth=e.content[0].scrollWidth;this.contentHeight=e.content[0].scrollHeight;if(this.autoUpdate){e._autoUpdate()}this.propertyChangeMap.autoUpdate=function(h,j,i,k){if(e.autoUpdate){e._autoUpdate()}else{clearInterval(e.autoUpdateId);e.autoUpdateId=null}};this.addHandler(a(window),"unload",function(){if(e.autoUpdateId!=null){clearInterval(e.autoUpdateId);e.autoUpdateId=null;e.destroy()}});this._updateTouchScrolling();this._render()},hiddenParent:function(){return a.jqx.isHidden(this.host)},_updateTouchScrolling:function(){var b=this;if(this.touchMode==true){a.jqx.mobile.setMobileSimulator(this.element)}var c=this.isTouchDevice();if(c){a.jqx.mobile.touchScroll(this.element,b.vScrollInstance.max,function(f,e){if(b.vScrollBar.css("visibility")!="hidden"){var d=b.vScrollInstance.value;b.vScrollInstance.setPosition(d+e)}if(b.hScrollBar.css("visibility")!="hidden"){var d=b.hScrollInstance.value;b.hScrollInstance.setPosition(d+f)}},this.element.id,this.hScrollBar,this.vScrollBar);this._arrange()}this.vScrollBar.jqxScrollBar({touchMode:this.touchMode});this.hScrollBar.jqxScrollBar({touchMode:this.touchMode})},isTouchDevice:function(){var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){b=true}else{if(this.touchMode==false){b=false}}if(b&&this.touchModeStyle!=false){this.scrollBarSize=a.jqx.utilities.touchScrollBarSize}return b},append:function(b){if(b!=null){this.content.append(b);this._arrange()}},setcontent:function(b){this.content[0].innerHTML=b;this._arrange();var c=this;setTimeout(function(){c._arrange()},100)},prepend:function(b){if(b!=null){this.content.prepend(b);this._arrange()}},clearcontent:function(){this.content.text("");this.content.children().remove();this._arrange()},remove:function(b){if(b!=null){a(b).remove();this._arrange()}},_autoUpdate:function(){var b=this;this.autoUpdateId=setInterval(function(){var d=b.content[0].scrollWidth;var c=b.content[0].scrollHeight;var e=false;if(b.contentWidth!=d){b.contentWidth=d;e=true}if(b.contentHeight!=c){b.contentHeight=c;e=true}if(e){b._arrange()}},this.autoUpdateInterval)},_addHandlers:function(){var b=this;this.addHandler(this.vScrollBar,"valueChanged",function(c){b._render(b)});this.addHandler(this.hScrollBar,"valueChanged",function(c){b._render(b)});this.addHandler(this.host,"mousewheel",function(c){b.wheel(c,b)});this.addHandler(this.wrapper,"scroll",function(c){if(b.wrapper[0].scrollTop!=0){b.wrapper[0].scrollTop=0}if(b.wrapper[0].scrollLeft!=0){b.wrapper[0].scrollLeft=0}});this.addHandler(this.host,"mouseleave",function(c){b.focused=false});this.addHandler(this.host,"focus",function(c){b.focused=true});this.addHandler(this.host,"blur",function(c){b.focused=false});this.addHandler(this.host,"mouseenter",function(c){b.focused=true});a.jqx.utilities.resize(this.host,function(){if(a.jqx.isHidden(b.host)){return}b._arrange(false)})},resize:function(c,b){this.width=c;this.height=b;this._arrange(false)},_removeHandlers:function(){var b=this;this.removeHandler(this.vScrollBar,"valueChanged");this.removeHandler(this.hScrollBar,"valueChanged");this.removeHandler(this.host,"mousewheel");this.removeHandler(this.host,"mouseleave");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.wrapper,"scroll");this.removeHandler(a(window),"resize."+this.element.id)},wheel:function(d,c){var e=0;if(d.originalEvent&&a.jqx.browser.msie&&d.originalEvent.wheelDelta){e=d.originalEvent.wheelDelta/120}if(!d){d=window.event}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}}if(e){var b=c._handleDelta(e);if(!b){if(d.preventDefault){d.preventDefault()}}if(!b){return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},scrollDown:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value+b.largestep<=b.max){b.setPosition(b.value+b.largestep);return true}else{if(b.value+b.largestep!=b.max){b.setPosition(b.max);return true}}return false},scrollUp:function(){if(this.vScrollBar.css("visibility")=="hidden"){return false}var b=this.vScrollInstance;if(b.value-b.largestep>=b.min){b.setPosition(b.value-b.largestep);return true}else{if(b.value-b.largestep!=b.min){b.setPosition(b.min);return true}}return false},_handleDelta:function(d){if(this.focused){var c=this.vScrollInstance.value;if(d<0){this.scrollDown()}else{this.scrollUp()}var b=this.vScrollInstance.value;if(c!=b){return false}}return true},_render:function(c){if(c==undefined){c=this}var b=c.vScrollInstance.value;var d=c.hScrollInstance.value;if(this.rtl){if(this.hScrollBar[0].style.visibility!="hidden"){if(this._rtl==false){d=c.hScrollInstance.max-d}else{d=-c.hScrollInstance.value}}}c.content.css({left:-d+"px",top:-b+"px"})},scrollTo:function(c,b){if(c==undefined||b==undefined){return}this.vScrollInstance.setPosition(b);this.hScrollInstance.setPosition(c)},getScrollHeight:function(){return this.vScrollInstance.max},getVScrollPosition:function(){return this.vScrollInstance.value},getScrollWidth:function(){return this.hScrollInstance.max},getHScrollPosition:function(){return this.hScrollInstance.value},_getScrollSize:function(){var b=this.scrollBarSize;if(isNaN(b)){b=parseInt(b);if(isNaN(b)){b="17px"}else{b=b+"px"}}if(this.isTouchDevice()){b=a.jqx.utilities.touchScrollBarSize}b=parseInt(b);return b},_getScrollArea:function(){var c=0;this.content.css("margin-right","0px");this.content.css("max-width","9999999px");if(a.jqx.browser.msie&&a.jqx.browser.version<10){c=parseInt(this.content.css("left"));this.content.css("left",0)}this.content.css("overflow","auto");if(this.rtl){this.content.css("direction","rtl")}var b=parseInt(this.content[0].scrollWidth);a.each(this.content.children(),function(){b=Math.max(b,this.scrollWidth);b=Math.max(b,a(this).outerWidth())});if(a.jqx.browser.msie&&a.jqx.browser.version<10){this.content.css("left",c)}var d=parseInt(this.content[0].scrollHeight);this.content.css("overflow","visible");if(a.jqx.browser.msie&&a.jqx.browser.version<9){var d=parseInt(this.content[0].scrollHeight);switch(this.sizeMode){case"wrap":var d=parseInt(this.content[0].scrollHeight);var b=parseInt(this.content[0].scrollWidth);break;case"horizontalWrap":case"horizontalwrap":break;case"verticalWrap":case"verticalwrap":var d=parseInt(this.content[0].scrollHeight);break}}if(this.rtl){this.content.css("direction","ltr")}return{width:b,height:d}},_arrange:function(h){if(h!==false){if(this.width!=null){this.host.width(this.width)}if(this.height!=null){this.host.height(this.height)}}var b=this._getScrollSize();var d=this.host.width();var l=this.host.height();var e=this._getScrollArea();var c=e.width;var k=e.height;var i=k-parseInt(Math.round(this.host.height()));var g=c-parseInt(Math.round(this.host.width()));if(this.horizontalScrollBarMax!=undefined){g=this.horizontalScrollBarMax}if(this.verticalScrollBarMax!=undefined){i=this.verticalScrollBarMax}var j=function(o,p){var n=5;if(p>n){o.vScrollBar.jqxScrollBar({max:p});o.vScrollBar.css("visibility","inherit")}else{o.vScrollBar.jqxScrollBar("setPosition",0);o.vScrollBar.css("visibility","hidden")}};var m=function(o,n){if(n>0){if(a.jqx.browser.msie&&a.jqx.browser.version<8){if(n-10<=b){o.hScrollBar.css("visibility","hidden");o.hScrollBar.jqxScrollBar("setPosition",0)}else{o.hScrollBar.jqxScrollBar({max:n+4});o.hScrollBar.css("visibility","inherit")}}else{o.hScrollBar.jqxScrollBar({max:n+4});o.hScrollBar.css("visibility","inherit")}}else{o.hScrollBar.css("visibility","hidden");o.hScrollBar.jqxScrollBar("setPosition",0)}};switch(this.sizeMode){case"wrap":this.host.width(c);this.host.height(k);this.vScrollBar.css("visibility","hidden");this.hScrollBar.css("visibility","hidden");return;case"horizontalWrap":case"horizontalwrap":this.host.width(c);this.hScrollBar.css("visibility","hidden");j(this,i);this._arrangeScrollbars(b,c,l);return;case"verticalWrap":case"verticalwrap":this.host.height(k);this.vScrollBar.css("visibility","hidden");m(this,g);this._arrangeScrollbars(b,d,l);return}j(this,i);var f=2;if(this.vScrollBar.css("visibility")!="hidden"){if(this.horizontalScrollBarMax==undefined){if((!this.isTouchDevice()&&g>0)||(g>0)){g+=b+f}}}m(this,g);if(this.hScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar({max:i+b+f})}this._arrangeScrollbars(b,d,l)},_arrangeScrollbars:function(b,d,j){var i=this.vScrollBar[0].style.visibility!="hidden";var f=this.hScrollBar[0].style.visibility!="hidden";var h=2;var g=2;this.hScrollBar.height(b);this.hScrollBar.css({top:j-b-h-g+"px",left:"0px"});this.hScrollBar.width(d-h+"px");this.vScrollBar.width(b);this.vScrollBar.height(parseInt(j)-h+"px");this.vScrollBar.css({left:parseInt(d)-parseInt(b)-h-g+"px",top:"0px"});if(this.rtl){this.vScrollBar.css({left:"0px"});var c=i?parseInt(b)+"px":0;if(this.content.children().css("direction")!="rtl"){var e=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){e=true}if(!e){this.content.css("padding-left",c)}}}else{if(this.vScrollBar.css("visibility")!="hidden"){this.content.css("max-width",this.host.width()-this.vScrollBar.outerWidth())}}if((this.vScrollBar.css("visibility")!="hidden")&&(this.hScrollBar.css("visibility")!="hidden")){this.bottomRight.css("visibility","inherit");this.bottomRight.css({left:1+parseInt(this.vScrollBar.css("left")),top:1+parseInt(this.hScrollBar.css("top"))});this.bottomRight.width(parseInt(b)+3);this.bottomRight.height(parseInt(b)+3);if(this.rtl){this.bottomRight.css({left:"0px"});this.hScrollBar.css({left:b+g+"px"})}this.hScrollBar.width(d-(1*b)-h-g+"px");this.vScrollBar.height(parseInt(j)-h-b-g+"px")}else{this.bottomRight.css("visibility","hidden")}this.hScrollInstance.refresh();this.vScrollInstance.refresh()},destroy:function(){clearInterval(this.autoUpdateId);this.autoUpdateId=null;this.autoUpdate=false;a.jqx.utilities.resize(this.host,null,true);this._removeHandlers();this.removeHandler(a(window),"unload");this.vScrollBar.jqxScrollBar("destroy");this.hScrollBar.jqxScrollBar("destroy");this.host.remove()},_raiseevent:function(g,d,f){if(this.isInitialized!=undefined&&this.isInitialized==true){var c=this.events[g];var e=new a.Event(c);e.previousValue=d;e.currentValue=f;e.owner=this;var b=this.host.trigger(e);return b}},beginUpdateLayout:function(){this.updating=true},resumeUpdateLayout:function(){this.updating=false;this.vScrollInstance.value=0;this.hScrollInstance.value=0;this._arrange();this._render()},propertyChangedHandler:function(c,d,b,e){if(!c.isInitialized){return}if(d=="rtl"){this.vScrollBar.jqxScrollBar({rtl:e});this.hScrollBar.jqxScrollBar({rtl:e});c._arrange()}if(!c.updating){if(d=="scrollBarSize"||d=="width"||d=="height"){if(b!=e){c._arrange()}}}if(d=="touchMode"){if(e!="auto"){c._updateTouchScrolling()}}if(d=="theme"){c.host.removeClass();c.host.addClass(this.toThemeProperty("jqx-panel"));c.host.addClass(this.toThemeProperty("jqx-widget"));c.host.addClass(this.toThemeProperty("jqx-widget-content"));c.host.addClass(this.toThemeProperty("jqx-rc-all"));c.vScrollBar.jqxScrollBar({theme:this.theme});c.hScrollBar.jqxScrollBar({theme:this.theme});c.bottomRight.removeClass();c.bottomRight.addClass(this.toThemeProperty("jqx-panel-bottomright"));c.bottomRight.addClass(this.toThemeProperty("jqx-scrollbar-state-normal"));c.content.removeClass();c.content.addClass(this.toThemeProperty("jqx-widget-content"))}},invalidate:function(){if(a.jqx.isHidden(this.host)){return}this.refresh()},refresh:function(b){this._arrange()}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxpasswordinput.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxpasswordinput.js
new file mode 100644 (file)
index 0000000..f43122d
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxPasswordInput","",{});a.extend(a.jqx._jqxPasswordInput.prototype,{defineInstance:function(){var b={width:null,height:null,disabled:false,rtl:false,placeHolder:null,showStrength:false,showStrengthPosition:"right",maxLength:null,minLength:null,showPasswordIcon:true,strengthTypeRenderer:null,passwordStrength:null,localization:{passwordStrengthString:"Password strength",tooShort:"Too short",weak:"Weak",fair:"Fair",good:"Good",strong:"Strong",showPasswordString:"Show Password"},strengthColors:{tooShort:"rgb(170, 0, 51)",weak:"rgb(170, 0, 51)",fair:"rgb(255, 204, 51)",good:"rgb(45, 152, 243)",strong:"rgb(118, 194, 97)"}};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){var e=this;var c=a.jqx.browser.browser;var b=a.jqx.browser.version;this._browserCheck=c!="msie"||(b!="7.0"&&b!="8.0");this.widgetID=e.element.id;var f=e.host;var d="Invalid input type. Please set the type attribute of the input element to password.";if(f.attr("type")!="password"){throw d}e._hidden=true;e._setTheme();e._setAttributes();e._showPassword();e._showStrength()},refresh:function(c){var b=this;if(c==true){return}b.removeHandler(b.host,"focus.passwordinput"+b.widgetID);b.removeHandler(b.host,"blur.passwordinput"+b.widgetID);b.removeHandler(b.host,"click.passwordinput"+b.widgetID);b.removeHandler(a(window),"resize.passwordinput"+b.widgetID);b.removeHandler(b.host,"keyup.passwordinput"+b.widgetID);b.removeHandler(b.icon,"mousedown.passwordinput"+b.iconID);b.removeHandler(b.icon,"mouseup.passwordinput"+b.iconID);b.removeHandler(a(document),"mousedown.passwordinput"+b.iconID);b._setAttributes();b._setTheme();b._showPassword();b._showStrength()},val:function(d){var c=this,e=c.element.value,b="placeholder" in c.element;if(a.isEmptyObject(d)&&d!=""){if(!b&&e===c.placeHolder){e=""}return e}else{if(b&&d===e){return}if(!b){if(d===""){if(e!==c.placeHolder){c.element.value=c.placeHolder;c.host.attr("type","text")}return}else{c.host.attr("type","password")}}c.element.value=d;if(c.showStrength===true){c._evaluateStrength()}}},propertyChangedHandler:function(b,c,f,e){var d=this.host;if(c==="theme"){a.jqx.utilities.setTheme(f,e,b.host);return}if(c=="disabled"){if(b.disabled==true){b.host.attr("disabled","disabled");b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}else{b.host.removeAttr("disabled");b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}return}if(c=="placeHolder"){if(this._browserCheck){if("placeholder" in this.element){d.attr("placeholder",this.placeHolder)}else{if(d.val()==""){d.attr("type","text");b.element.value=e}else{if(d.val()==f){b.element.value=e}}}}}else{this.refresh()}},resize:function(c,b){this.width=c;this.height=b;this.host.width(this.width);this.host.height(this.height)},_setAttributes:function(){var b=this;var c=b.host;c.width(b.width);c.height(b.height);if(b.maxLength){c.attr("maxlength",b.maxLength)}if(b.minLength){c.attr("minLength",b.minLength)}if(b.placeHolder&&b._browserCheck){if("placeholder" in b.element){c.attr("placeholder",b.placeHolder)}else{if(c.val()==""){c.attr("type","text");b.element.value=b.placeHolder}}}if(b.disabled==true){c.attr("disabled","disabled");c.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{c.removeAttr("disabled");c.removeClass(b.toThemeProperty("jqx-fill-state-disabled"))}b.addHandler(c,"click.passwordinput"+b.widgetID,function(){if(b.showPasswordIcon&&b.icon){b.icon.show();b._positionIcon()}});b.interval=null;b.addHandler(c,"keydown.passwordinput"+b.widgetID,function(){if(b.showPasswordIcon&&b.icon){if(b.interval){clearInterval(b.interval)}var d=0;b.interval=setInterval(function(){if(b.icon[0].style.display!="none"){b._positionIcon();d++;if(d>5){clearInterval(b.interval)}}else{clearInterval(b.interval)}},100)}});b.addHandler(c,"focus.passwordinput"+b.widgetID,function(){b._focused=true;b.host.addClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.placeHolder&&b._browserCheck&&!("placeholder" in b.element)&&c.val()==b.placeHolder){c.val("");if(b._hidden==true){c.attr("type","password")}}if(b.val().length>0){if(b.showStrength==true){var d=c.jqxTooltip("content");if(d){c.jqxTooltip("open")}}}if(b.showPasswordIcon&&b.icon){b.icon.show();b._positionIcon()}});b.addHandler(c,"blur.passwordinput"+b.widgetID,function(){b._focused=false;b.host.removeClass(b.toThemeProperty("jqx-fill-state-focus"));if(b.placeHolder&&b._browserCheck&&!("placeholder" in b.element)&&c.val()==""){b.element.value=b.placeHolder;c.attr("type","text")}if(b.showPasswordIcon==true&&b._browserCheck){if(b.rtl==false){b.host.removeClass(b.toThemeProperty("jqx-passwordinput-password-icon-ltr"))}else{b.host.removeClass(b.toThemeProperty("jqx-passwordinput-password-icon-rtl"))}}if(b.showStrength==true){c.jqxTooltip("close")}if(b.showPasswordIcon&&b.icon){b.icon.hide()}})},destroy:function(){if(this.host.jqxTooltip){this.host.jqxTooltip("destroy")}this.host.remove()},_setTheme:function(){var c=this.host;var b=this;c.addClass(b.toThemeProperty("jqx-widget"));c.addClass(b.toThemeProperty("jqx-widget-content"));c.addClass(b.toThemeProperty("jqx-input"));c.addClass(b.toThemeProperty("jqx-rc-all"));if(b.rtl==true){c.addClass(b.toThemeProperty("jqx-rtl"));c.css("direction","rtl")}else{c.removeClass(b.toThemeProperty("jqx-rtl"));c.css("direction","ltr")}},_showPassword:function(){if(this.showPasswordIcon==true&&this._browserCheck){var f=this;this.iconID=this.widgetID+"-password-icon";a("<span tabindex='-1' hasfocus='false' style='position: absolute; display: none;' id='"+f.iconID+"'></span>").insertAfter(f.host);var e=a("#"+f.iconID);f.icon=e;e.addClass(f.toThemeProperty("jqx-passwordinput-password-icon"));e.attr("title",f.localization.showPasswordString);f._positionIcon();var d=function(){f.host.attr("type","password");f._hidden=true;e.attr("title",f.localization.showPasswordString)};var b=function(){if(f._hidden==false){d()}else{if(f._hidden==true){f.host.attr("type","text");f._hidden=false}}};var c=a.jqx.mobile.isTouchDevice();if(c){f.addHandler(f.icon,"mousedown.passwordinput"+f.iconID,function(g){b();return false})}else{f.addHandler(f.icon,"mousedown.passwordinput"+f.iconID,function(g){b();return false});f.addHandler(f.icon,"mouseup.passwordinput"+f.iconID,function(g){d();return false});f.addHandler(a(document),"mousedown.passwordinput"+f.iconID,function(g){if(f._focused){d()}})}}},_positionIcon:function(){var c=this.host.offset();var b=this.host.outerWidth();var d=this.host.outerHeight();if(this.rtl==true){this.icon.offset({top:parseInt(c.top+d/2-10/2),left:c.left+2})}else{this.icon.offset({top:parseInt(c.top+d/2-10/2),left:c.left+b-18})}},_showStrength:function(){var g=this;if(g.showStrength==true){if(g.host.jqxTooltip!=undefined){var e=g.widgetID+"Strength";var i=e+"Value";var c=e+"Indicator";var f;if(!g.strengthTypeRenderer){f="<div style='width: 220px;' id='"+e+"'><div><span style='font-weight: bold;'>"+g.localization.passwordStrengthString+": </span><span id='"+i+"'></span></div><div id='"+c+"'></div></div>"}else{var d=g.host.val();if(!("placeholder" in g.element)&&g._browserCheck&&d==g.placeHolder){d=""}g._countCharacters();var b=g.localization.tooShort;var h=g.strengthTypeRenderer(d,{letters:g.letters,numbers:g.numbers,specialKeys:g.specials},b);f=h}g.host.jqxTooltip({theme:g.theme,position:g.showStrengthPosition,content:f,trigger:"none",autoHide:false,rtl:g.rtl});if(!g.strengthTypeRenderer){a("#"+i).html(g.localization.tooShort);a("#"+c).addClass("jqx-passwordinput-password-strength-inicator").css("background-color",g.strengthColors.tooShort);if(g.rtl==false){a("#"+c).css("float","left")}else{a("#"+c).css("float","right")}}g._checkStrength()}else{throw new Error("jqxPasswordInput: Missing reference to jqxtooltip.js")}}},_checkStrength:function(){var b=this;b.addHandler(a(window),"resize.passwordinput"+b.widgetID,function(){if(b.icon){b.icon.hide()}});b.addHandler(b.host,"keyup.passwordinput"+b.widgetID,function(){b._evaluateStrength()})},_evaluateStrength:function(){var f=this;var d=f.host.val();var e=d.length;f._countCharacters();if(e>0){if(f.showStrength==true){var i=!f.host.jqxTooltip("opened");if(i){f.host.jqxTooltip("open")}}}var c=f.letters+f.numbers+2*f.specials+f.letters*f.numbers/2+e;var b;if(e<8){b=f.localization.tooShort}else{if(c<20){b=f.localization.weak}else{if(c<30){b=f.localization.fair}else{if(c<40){b=f.localization.good}else{b=f.localization.strong}}}}if(f.strengthTypeRenderer){var h=f.strengthTypeRenderer(d,{letters:f.letters,numbers:f.numbers,specialKeys:f.specials},b);f.host.jqxTooltip({content:h})}else{if(f.passwordStrength){var h=f.passwordStrength(d,{letters:f.letters,numbers:f.numbers,specialKeys:f.specials},b);a.each(f.localization,function(){var j=this;if(h==j){b=h;return false}})}a("#"+f.widgetID+"StrengthValue").html(b);var g=a("#"+f.widgetID+"StrengthIndicator");switch(b){case f.localization.tooShort:g.css({width:"20%","background-color":f.strengthColors.tooShort});break;case f.localization.weak:g.css({width:"40%","background-color":f.strengthColors.weak});break;case f.localization.fair:g.css({width:"60%","background-color":f.strengthColors.fair});break;case f.localization.good:g.css({width:"80%","background-color":f.strengthColors.good});break;case f.localization.strong:g.css({width:"100%","background-color":f.strengthColors.strong});break}}},_countCharacters:function(){var g=this;g.letters=0;g.numbers=0;g.specials=0;var d="<>@!#$%^&*()_+[]{}?:;|'\"\\,./~`-=";var b=g.host.val();var f=b.length;for(var c=0;c<f;c++){var h=b.charAt(c);var e=b.charCodeAt(c);if((e>64&&e<91)||(e>96&&e<123)||(e>127&&e<155)||(e>159&&e<166)){g.letters+=1;continue}if(isNaN(h)==false){g.numbers+=1;continue}if(d.indexOf(h)!=-1){g.specials+=1;continue}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxpopover.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxpopover.js
new file mode 100644 (file)
index 0000000..feadf61
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxPopover","",{});a.extend(a.jqx._jqxPopover.prototype,{defineInstance:function(){var b={arrowOffsetValue:null,animationType:"fade",position:"bottom",animationOpenDelay:"fast",animationCloseDelay:"fast",autoClose:true,isModal:false,height:null,initContent:null,offset:null,rtl:false,showArrow:true,showCloseButton:false,selector:null,title:"",width:null,_toggleElement:null,_popover:null,_popoverTop:0,_popoverLeft:0,_init:false,_ie8:(a.jqx.browser.msie&&a.jqx.browser.version===8),_ie7:(a.jqx.browser.msie&&a.jqx.browser.version<8),_left:0,_top:0,events:["open","close"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._content=b.host.children()},render:function(){var h=this;var c=h.element.id;h._content.detach();h._toggleElement=a(h.selector);if(h._toggleElement.length===0){throw new Error('jqxPopover: Invalid Popover toggler: "'+h.selector+'".')}else{if(h._toggleElement===null){throw new Error("jqxPopover: Missing Popover toggler.")}}var k=a('<div id="'+c+'" class="'+h.toThemeProperty("jqx-popover")+'"><div class="'+h.toThemeProperty("jqx-popover-arrow")+'"></div><div class="'+h.toThemeProperty("jqx-popover-title")+'"></div><div class="'+h.toThemeProperty("jqx-popover-content")+'"></div></div>');a("body").append(k);var g=h.host.data();h.host.detach();h.host=k;h.host.data(g);h.element=k[0];h.element.id=c;h._popover=a("#"+c);var j=h._popover.find(".jqx-popover-title");j.append(h.title);var i=h._popover.find(".jqx-popover-content");i.append(h._content);h._popover.hide();h._removeHandlers();h._addHandlers();h._popover.addClass(h.position);j.addClass(h.toThemeProperty("jqx-widget-header"));h._popover.addClass(h.toThemeProperty("jqx-widget jqx-widget-content jqx-rc-all"));if(h.showArrow){h._popover.addClass(h.toThemeProperty("jqx-popover-arrow-"+h.position))}if(h.rtl){j.addClass(h.toThemeProperty("jqx-rtl"));j.css("direction","rtl");i.css("direction","rtl")}if(h.showCloseButton){var d=a('<div class="'+this.toThemeProperty("jqx-window-close-button-background")+'"></div>');var e=a('<div style="width: 100%; height: 100%;" class="'+this.toThemeProperty("jqx-window-close-button")+" "+this.toThemeProperty("jqx-icon-close")+'"></div>');d.append(e);j.append(d);j.css("min-height","16px");d.addClass(h.toThemeProperty("jqx-popover-close-button"));h.closeButton=e;if(h.rtl){d.addClass(h.toThemeProperty("jqx-popover-close-button-rtl"))}}if(h.arrowOffsetValue){if(h.position=="bottom"||h.position=="top"){var b=a(".jqx-popover-arrow").css("margin-left");a(".jqx-popover-arrow").css("margin-left",parseInt(b)+h.arrowOffsetValue)}else{var f=a(".jqx-popover-arrow").css("margin-top");a(".jqx-popover-arrow").css("margin-top",parseInt(f)+h.arrowOffsetValue)}}if(h.width||h.height){h._popover.css("width",h.width);h._popover.css("height",h.height)}},refresh:function(b){this.render()},destroy:function(){var b=this;if(b.length!==0){b._removeHandlers();b._popover.remove();b._removeModalBackground()}},propertyChangedHandler:function(b,c,f,e){var d=this;d.render()},_stickToToggleElement:function(){var g=this;g._popover.css("left","0px");g._popover.css("top","0px");var j=g._toggleElement;var e=j.offset();var b=j.outerHeight();var h=j.outerWidth();var d=g._popover.height();var i=g._popover.width();switch(g.position){case"left":g._popoverTop=e.top-d/2+b/2;g._popoverLeft=e.left-g._popover.outerWidth();break;case"right":g._popoverTop=e.top-d/2+b/2;g._popoverLeft=e.left+h;break;case"top":g._popoverTop=e.top-g._popover.outerHeight();g._popoverLeft=e.left-i/2+h/2;break;case"bottom":g._popoverTop=e.top+b;g._popoverLeft=e.left-i/2+h/2;break}var c=g.offset?g.offset.left:0;var f=g.offset?g.offset.top:0;g._popover.css("top",f+g._popoverTop);g._popover.css("left",c+g._popoverLeft)},open:function(){var c=this;c._stickToToggleElement();function d(){c._popover.show();c._raiseEvent("0");c._isOpen=true}function b(){if(c.initContent&&c._init===false){c.initContent();c._init=true;c._stickToToggleElement()}}if(c._ie7===true){d();b();return}switch(c.animationType){case"fade":c._popover.fadeIn(c.animationOpenDelay,function(){c._raiseEvent("0");b()});break;case"none":d();b();break}c._makeModalBackground()},close:function(){var c=this;function b(){c._popover.hide();c._raiseEvent("1")}if(c._ie7===true){b();return}switch(c.animationType){case"fade":c._popover.fadeOut(c.animationCloseDelay,function(){c._raiseEvent("1")});break;case"none":b();break}c._removeModalBackground()},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this._popover.trigger(e);return b},_makeModalBackground:function(){var b=this;if(b.isModal===true){b.modalBackground=a("<div></div>");b.modalBackground.addClass(this.toThemeProperty("jqx-popover-modal-background"));a(document.body).prepend(b.modalBackground);a(document.body).addClass(b.toThemeProperty("jqx-unselectable"));b.host.addClass(b.toThemeProperty("jqx-selectable"))}},_removeModalBackground:function(){var b=this;if((b.isModal===true)&&(b.modalBackground!==undefined)){b.modalBackground.remove();a(document.body).removeClass(b.toThemeProperty("jqx-unselectable"));b.host.removeClass(b.toThemeProperty("jqx-selectable"))}},_addHandlers:function(){var b=this,c=b.element.id;b.addHandler(a(document),"keydown.jqxPopover"+c,function(d){if(d.keyCode==27){b.close()}});b.addHandler(a(document),"click.jqxPopover"+c,function(d){if(b.closeButton&&d.target==b.closeButton[0]){b.close()}if(b.autoClose===true){if(d.target!=b.element&&!a(d.target).ischildof(b._popover)){if(!b.isModal){b.close()}}}});b.addHandler(a(window),"resize.jqxPopover"+c,function(d){if(b.element.style.display!="none"){b._stickToToggleElement()}});if(b.selector){b.addHandler(b._toggleElement,"click.jqxPopover"+c,function(d){d.stopPropagation();if(b.host.css("display")!="none"){b.close()}else{b.open()}})}},_removeHandlers:function(){var b=this,c=b.element.id;b.removeHandler(a(document),"click.jqxPopover"+c);if(b.selector){b.removeHandler(b._toggleElement,"click.jqxPopover"+c)}b.removeHandler(a(document),"keydown.jqxPopover"+c);b.removeHandler(a(window),"resize.jqxPopover"+c)}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxprogressbar.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxprogressbar.js
new file mode 100644 (file)
index 0000000..6a19aa4
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxProgressBar","",{});a.extend(a.jqx._jqxProgressBar.prototype,{defineInstance:function(){var b={value:0,oldValue:null,max:100,min:0,orientation:"horizontal",layout:"normal",width:null,height:null,showText:false,animationDuration:300,disabled:false,rtl:false,renderText:null,aria:{"aria-valuenow":{name:"value",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},events:["valueChanged","invalidValue","complete","change"]};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.addClass(this.toThemeProperty("jqx-progressbar"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.addClass(this.toThemeProperty("jqx-rc-all"));a.jqx.aria(this);if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}else{this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}else{this.host.height(this.height)}}this.valueDiv=a("<div></div>").appendTo(this.element);if(this.orientation=="horizontal"){this.valueDiv.width(0);this.valueDiv.addClass(this.toThemeProperty("jqx-progressbar-value"))}else{this.valueDiv.height(0);this.valueDiv.addClass(this.toThemeProperty("jqx-progressbar-value-vertical"))}this.valueDiv.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this.feedbackElementHost=a("<div style='width: 100%; height: 100%; position: relative;'></div>").appendTo(this.host);this.feedbackElement=a("<span class='text'></span>").appendTo(this.feedbackElementHost);this.feedbackElement.addClass(this.toThemeProperty("jqx-progressbar-text"));this.oldValue=this._value();this.refresh();a.jqx.utilities.resize(this.host,function(){b.refresh()})},resize:function(c,b){this.width=c;this.height=b;this.refresh()},destroy:function(){this.host.removeClass();this.valueDiv.removeClass();this.valueDiv.remove();this.feedbackElement.remove()},_raiseevent:function(g,d,f){if(this.isInitialized!=undefined&&this.isInitialized==true){var c=this.events[g];var e=new a.Event(c);e.previousValue=d;e.currentValue=f;e.owner=this;var b=this.host.trigger(e);return b}},actualValue:function(b){if(b===undefined){return this._value()}a.jqx.aria(this,"aria-valuenow",b);a.jqx.setvalueraiseevent(this,"value",b);return this._value()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.actualValue()}return this.actualValue(b)},propertyChangedHandler:function(c,d,b,f){if(!this.isInitialized){return}var e=this;if(d=="min"&&c.value<f){c.value=f}else{if(d=="max"&&c.value>f){c.value=f}}if(d==="value"&&e.value!=undefined){e.value=f;e.oldValue=b;a.jqx.aria(c,"aria-valuenow",f);if(f<e.min||f>e.max){e._raiseevent(1,b,f)}e.refresh()}if(d=="theme"){a.jqx.utilities.setTheme(b,f,c.host)}if(d=="renderText"||d=="orientation"||d=="layout"||d=="showText"||d=="min"||d=="max"){e.refresh()}else{if(d=="width"&&e.width!=undefined){if(e.width!=undefined&&!isNaN(e.width)){e.host.width(e.width);e.refresh()}}else{if(d=="height"&&e.height!=undefined){if(e.height!=undefined&&!isNaN(e.height)){e.host.height(e.height);e.refresh()}}}}if(d=="disabled"){e.refresh()}},_value:function(){var c=this.value;if(typeof c!=="number"){var b=parseInt(c);if(isNaN(b)){c=0}else{c=b}}return Math.min(this.max,Math.max(this.min,c))},_percentage:function(){return 100*this._value()/this.max},_textwidth:function(d){var c=a("<span>"+d+"</span>");a(this.host).append(c);var b=c.width();c.remove();return b},_textheight:function(d){var c=a("<span>"+d+"</span>");a(this.host).append(c);var b=c.height();c.remove();return b},_initialRender:true,refresh:function(){var l=this.actualValue();var p=this._percentage();if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-progressbar-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));return}else{this.host.removeClass(this.toThemeProperty("jqx-progressbar-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));a(this.element.children[0]).show()}if(isNaN(l)){return}if(isNaN(p)){return}if(this.oldValue!==l){this._raiseevent(0,this.oldValue,l);this._raiseevent(3,this.oldValue,l);this.oldValue=l}var b=this.oldValue;var n=this.host.outerHeight();var c=this.host.outerWidth();if(this.width!=null){c=parseInt(this.width)}if(this.height!=null){n=parseInt(this.height)}var f=parseInt(this.host.outerWidth())/2;var i=parseInt(this.host.outerHeight())/2;if(isNaN(p)){p=0}var j=this;try{var m=this.element.children[0];a(m)[0].style.position="relative";if(this.orientation=="horizontal"){a(m).toggle(l>=this.min);var c=this.host.outerWidth()*p/100;var e=0;if(this.layout=="reverse"||this.rtl){if(this._initialRender){a(m)[0].style.left=this.host.width()+"px";a(m)[0].style.width=0}e=this.host.outerWidth()-c}a(m).animate({width:c,left:e+"px"},this.animationDuration,function(){if(j._value()===j.max){j._raiseevent(2,b,j.max)}});this.feedbackElementHost.css("margin-top",-this.host.height())}else{a(m).toggle(l>=this.min);var n=this.host.height()*p/100;var d=0;if(this.layout=="reverse"){if(this._initialRender){a(m)[0].style.top=this.host.height()+"px";a(m)[0].style.height=0}d=this.host.height()-n}this.feedbackElementHost.animate({"margin-top":-(p.toFixed(0)*j.host.height())/100},this.animationDuration,function(){});a(m).animate({height:n,top:d+"px"},this.animationDuration,function(){var q=j._percentage();if(isNaN(q)){q=0}if(q.toFixed(0)==j.min){a(m).hide();if(j._value()===j.max){j._raiseevent(2,b,j.max)}}})}}catch(h){}this._initialRender=false;this.feedbackElement.html(p.toFixed(0)+"%").toggle(this.showText==true);if(this.renderText){this.feedbackElement.html(this.renderText(p.toFixed(0)+"%"))}this.feedbackElement.css("position","absolute");this.feedbackElement.css("top","50%");this.feedbackElement.css("left","0");var k=this.feedbackElement.height();var g=this.feedbackElement.width();var o=Math.floor(f-(parseInt(g)/2));this.feedbackElement.css({left:(o),"margin-top":-parseInt(k)/2+"px"})}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxradiobutton.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxradiobutton.js
new file mode 100644 (file)
index 0000000..be3d17b
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxRadioButton","",{});a.extend(a.jqx._jqxRadioButton.prototype,{defineInstance:function(){var b={animationShowDelay:300,animationHideDelay:300,width:null,height:null,boxSize:"13px",checked:false,hasThreeStates:false,disabled:false,enableContainerClick:true,locked:false,groupName:"",rtl:false,aria:{"aria-checked":{name:"checked",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}},events:["checked","unchecked","indeterminate","change"]};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){this.setSize();var c=this;this.propertyChangeMap.width=function(d,f,e,g){c.setSize()};this.propertyChangeMap.height=function(d,f,e,g){c.setSize()};if(this.radiobutton){this.radiobutton.remove()}this.radiobutton=a("<div><div><span></span></div></div>");this.host.attr("role","radio");if(!this.host.attr("tabIndex")){this.host.attr("tabIndex",0)}this.host.prepend(this.radiobutton);this.host.append(a('<div style="clear: both;"></div>'));this.checkMark=a(this.radiobutton).find("span");this.box=a(this.radiobutton).find("div");this._supportsRC=true;if(a.jqx.browser.msie&&a.jqx.browser.version<9){this._supportsRC=false}this.box.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.box.addClass(this.toThemeProperty("jqx-radiobutton-default"));this.host.addClass(this.toThemeProperty("jqx-widget"));if(this.disabled){this.disable()}this.host.addClass(this.toThemeProperty("jqx-radiobutton"));if(this.locked){this.host.css("cursor","auto")}var b=this.element.getAttribute("checked");if(b=="checked"||b=="true"||b==true){this.checked=true}this._addInput();this._render();this._addHandlers();a.jqx.aria(this)},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}},refresh:function(b){if(!b){this.setSize();this._render()}},resize:function(c,b){this.width=c;this.height=b;this.setSize()},setSize:function(){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}},_addHandlers:function(){var b=this;this.addHandler(this.box,"click",function(c){if(!b.disabled&&!b.enableContainerClick){b.toggle("click");c.preventDefault();return false}});this.addHandler(this.host,"keydown",function(c){if(!b.disabled&&!b.locked){if(c.keyCode==32){b.toggle("click");c.preventDefault();return false}}});this.addHandler(this.host,"click",function(c){if(!b.disabled&&b.enableContainerClick){b.toggle("click");c.preventDefault();return false}});this.addHandler(this.host,"selectstart",function(c){if(!b.disabled&&b.enableContainerClick){c.preventDefault()}});this.addHandler(this.host,"mouseup",function(c){if(!b.disabled&&b.enableContainerClick){c.preventDefault()}});this.addHandler(this.host,"focus",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.addClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.addClass(b.toThemeProperty("jqx-fill-state-focus"));c.preventDefault();return false}});this.addHandler(this.host,"blur",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.removeClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.removeClass(b.toThemeProperty("jqx-fill-state-focus"));c.preventDefault();return false}});this.addHandler(this.host,"mouseenter",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.addClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.addClass(b.toThemeProperty("jqx-fill-state-hover"));c.preventDefault();return false}});this.addHandler(this.host,"mouseleave",function(c){if(!b.disabled&&b.enableContainerClick&&!b.locked){b.box.removeClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.removeClass(b.toThemeProperty("jqx-fill-state-hover"));c.preventDefault();return false}});this.addHandler(this.box,"mouseenter",function(){if(!b.disabled&&!b.enableContainerClick){b.box.addClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.addClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.box,"mouseleave",function(){if(!b.disabled&&!b.enableContainerClick){b.box.removeClass(b.toThemeProperty("jqx-radiobutton-hover"));b.box.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}})},focus:function(){try{this.host.focus()}catch(b){}},_removeHandlers:function(){this.removeHandler(this.box,"click");this.removeHandler(this.box,"mouseenter");this.removeHandler(this.box,"mouseleave");this.removeHandler(this.host,"click");this.removeHandler(this.host,"mouseup");this.removeHandler(this.host,"mousedown");this.removeHandler(this.host,"selectstart");this.removeHandler(this.host,"mouseenter");this.removeHandler(this.host,"mouseleave");this.removeHandler(this.host,"keydown");this.removeHandler(this.host,"focus");this.removeHandler(this.host,"blur")},_render:function(){if(this.boxSize==null){this.boxSize=13}this.box.width(this.boxSize);this.box.height(this.boxSize);if(!this.disabled){if(this.enableContainerClick){this.host.css("cursor","pointer")}else{this.host.css("cursor","auto")}}else{this.disable()}if(this.rtl){this.box.addClass(this.toThemeProperty("jqx-radiobutton-rtl"));this.host.addClass(this.toThemeProperty("jqx-rtl"))}this.updateStates()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.checked}if(typeof b=="string"){if(b=="true"){this.check("api")}if(b=="false"){this.uncheck("api")}if(b==""){this.indeterminate("api")}}else{if(b==true){this.check("api")}if(b==false){this.uncheck("api")}if(b==null){this.indeterminate("api")}}return this.checked},check:function(c){this.checked=true;var d=this;this.checkMark.removeClass();this.checkMark.addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(a.jqx.browser.msie){if(!this.disabled){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-disabled"));this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}}else{if(!this.disabled){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-disabled"));this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-checked"))}this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}var e=a.find(".jqx-radiobutton");if(this.groupName==null){this.groupName=""}a.each(e,function(){var f=a(this).jqxRadioButton("groupName");if(f==d.groupName&&this!=d.element){a(this).jqxRadioButton("uncheck","api")}});this._raiseEvent("0");this._raiseEvent("3",{type:c,checked:true});if(this.checkMark.height()==0){var b=parseInt(this.boxSize)/2;this.checkMark.height(b);this.checkMark.width(b)}else{if(this.boxSize!="13px"){var b=parseInt(this.boxSize)/2;this.checkMark.height(b);this.checkMark.width(b);this.checkMark.css("margin-left",1+(b/4));this.checkMark.css("margin-top",1+(b/4))}}this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)},uncheck:function(b){var d=this.checked;this.checked=false;var c=this;if(a.jqx.browser.msie){c.checkMark.removeClass()}else{this.checkMark.css("opacity",1);this.checkMark.stop().animate({opacity:0},this.animationHideDelay,function(){c.checkMark.removeClass()})}if(d){this._raiseEvent("1");this._raiseEvent("3",{type:b,checked:false})}this.input.val(this.checked);a.jqx.aria(this,"aria-checked",this.checked)},indeterminate:function(b){var c=this.checked;this.checked=null;this.checkMark.removeClass();if(a.jqx.browser.msie){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate"))}else{this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate"));this.checkMark.css("opacity",0);this.checkMark.stop().animate({opacity:1},this.animationShowDelay,function(){})}if(c!=null){this._raiseEvent("2");this._raiseEvent("3",{type:b,checked:null})}this.input.val(this.checked);a.jqx.aria(this,"aria-checked","undefined")},toggle:function(c){if(this.disabled){return}if(this.locked){return}var b=this.checked;if(this.checked==true){this.checked=this.hasTreeStates?null:true}else{this.checked=true}if(b!=this.checked){this.updateStates(c)}this.input.val(this.checked)},updateStates:function(b){if(this.checked){this.check(b)}else{if(this.checked==false){this.uncheck(b)}else{if(this.checked==null){this.indeterminate(b)}}}},disable:function(){this.disabled=true;if(this.checked==true){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-disabled"))}else{if(this.checked==null){this.checkMark.addClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate-disabled"))}}this.box.addClass(this.toThemeProperty("jqx-radiobutton-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));a.jqx.aria(this,"aria-disabled",this.disabled)},enable:function(){this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));if(this.checked==true){this.checkMark.removeClass(this.toThemeProperty("jqx-radiobutton-check-disabled"))}else{if(this.checked==null){this.checkMark.removeClass(this.toThemeProperty("jqx-radiobutton-check-indeterminate-disabled"))}}this.box.removeClass(this.toThemeProperty("jqx-radiobutton-disabled"));this.disabled=false;a.jqx.aria(this,"aria-disabled",this.disabled)},destroy:function(){this._removeHandlers();this.host.remove()},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(c==this.enableContainerClick&&!this.disabled&&!this.locked){if(d){this.host.css("cursor","pointer")}else{this.host.css("cursor","auto")}}if(c=="rtl"){if(d){b.box.addClass(b.toThemeProperty("jqx-radiobutton-rtl"));b.host.addClass(b.toThemeProperty("jqx-rtl"))}else{b.box.removeClass(b.toThemeProperty("jqx-radiobutton-rtl"));b.host.removeClass(b.toThemeProperty("jqx-rtl"))}}if(c=="checked"){switch(d){case true:this.check("api");break;case false:this.uncheck("api");break;case null:this.indeterminate();break}}if(c=="theme"){a.jqx.utilities.setTheme(e,d,this.host)}if(c=="disabled"){if(d){this.disable()}else{this.enable()}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxrangeselector.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxrangeselector.js
new file mode 100644 (file)
index 0000000..9677f2b
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxRangeSelector","",{});a.extend(a.jqx._jqxRangeSelector.prototype,{defineInstance:function(){var b={width:400,height:100,min:0,max:100,range:{from:0,to:Infinity,min:0,max:Infinity},majorTicksInterval:10,minorTicksInterval:1,showMajorTicks:true,showMinorTicks:false,snapToTicks:true,labelsFormat:null,markersFormat:null,showLabels:true,labelsOnTicks:true,markersPosition:"top",labelsFormatFunction:null,groupLabelsFormatFunction:null,markersFormatFunction:null,showGroupLabels:false,showMarkers:true,resizable:true,moveOnClick:true,disabled:false,rtl:false,padding:"auto",events:["change"]};a.extend(true,this,b);return b},createInstance:function(c){var e=this;this._isTouchDevice=a.jqx.mobile.isTouchDevice();if(!a.jqx.dataAdapter){throw new Error("jqxRangeSelector: Missing reference to the following module: 'jqxdata.js'.")}var f=a.jqx.isHidden(this.host);this.render();var d=this.host.width();var b=this.host.height();a.jqx.utilities.resize(this.host,function(){var h=e.host.width();var g=e.host.height();e.range=e.getRange();if(f){e.refresh();f=false}else{if(d!=h||b!=g){e.refresh()}}d=e.host.width();b=e.host.height()})},render:function(){if(this.host.children().length>1||this.rangeSelector){this._removeHandlers();if(this.rangeSelector){this.rangeSelector.remove()}}this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-rangeselector"));this.host.children(":eq(0)").addClass(this.toThemeProperty("jqx-rangeselector-content"));this._id=this.element.id;if(typeof this.min=="string"||this.min instanceof Date){this._dataType="date"}else{this._dataType="number"}this._privateProperties();this._checkProperties();this._setSize();this._scale();this._initSlider()},refresh:function(b){if(b==true){return}this.host.children(".jqx-rangeselector-ticks-container").remove();this._removeHandlers();this._privateProperties();this._checkProperties();this._setSize();this._scale();this._initSlider()},destroy:function(){this._removeHandlers();this.host.remove()},setRange:function(k,l){if(k>l){throw new Error("jqxRangeSelector: range object initialization error. 'min' should be less than 'max'");return}var g=this._getValue();if(g.from!=k||g.to!=l){var d=this._dataType=="number"?"numeric":"date";var i="The set values are in the wrong format. Please set "+d+" values.";if(typeof k=="string"||k instanceof Date){if(this._dataType=="number"){throw new Error(i)}}else{if(this._dataType=="date"){throw new Error(i)}}k=this._validateInput(k);l=this._validateInput(l);if(k>this._max){k=this._max}if(k<this._min){k=this._min}if(l>this._max){l=this._max}if(l<this._min){l=this._min}var f=l-k;if(f>this._range._max){l=k+this._range._max}else{if(f<this._range._min){l=k+this._range._min}}var j=this._valuesArray.indexOf(k);var e=this._valuesArray.indexOf(l);var m=this._ticksArray[j];var h=this._ticksArray[e];var b=Math.abs(h-m);this.slider[0].style.width=b+"px";var c=!this.rtl?m:h;this.slider[0].style.left=c;this._moveSlider(c);if(this._dataType=="date"){var k=new Date(k);var l=new Date(l)}this._raiseEvent("0",{from:k,to:l})}},val:function(b){if(arguments.length==0){return this.getRange()}if(b.from!=undefined){this.setRange(b.from,b.to)}},getRange:function(){var b=this._getValue();return b},propertyChangedHandler:function(b,c,e,d){switch(c){case"showMinorTicks":if(d==true){a("#"+this._id+" .jqx-rangeselector-ticks-minor").css("visibility","visible")}else{a("#"+this._id+" .jqx-rangeselector-ticks-minor").css("visibility","hidden")}break;case"showMarkers":var f=a("#"+this._id+"LeftMarker, #"+this._id+"RightMarker, #"+this._id+"LeftMarkerArrow, #"+this._id+"RightMarkerArrow");if(d==true){f.css("visibility","visible")}else{f.css("visibility","hidden")}break;default:this.refresh()}},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},_setSize:function(){this.host.width(this.width);this.host.height(this.height)},resize:function(c,b){this.width=c;this.height=b;this.refresh()},_scale:function(){var c=this.host.width();var b=this._max-this._min;this._unitPerPixel=parseFloat((b/c).toFixed(4));this._pixelPerUnit=c/b;4;this._minWidth=this._roundNumber(this._range._min/this._unitPerPixel);this._maxWidth=this._roundNumber(this._range._max/this._unitPerPixel);this._minWidth=parseInt(this._minWidth);this._maxWidth=parseInt(this._maxWidth);if(this._dataType=="number"){this._majorTicksCount=b/this.majorTicksInterval;this._majorTicksCount=Math.floor(this._majorTicksCount)+1;this._majorTicksDistance=parseInt(this._roundNumber(c/(b/this.majorTicksInterval)));this._unitsCount=b/this.minorTicksInterval;this._unitsCount=Math.floor(this._unitsCount)+1;this._unitsDistance=parseInt(this._roundNumber(c/(b/this.minorTicksInterval)))}this._addTicks()},_addTicks:function(){var f=this;this.host.append("<div id='"+this._id+"TicksContainer' class='jqx-rangeselector-ticks-container'></div>");this.rangeSelector=a("#"+this._id+"TicksContainer");this._majorTicksArray=new Array();this._ticksArray=new Array();this._valuesArray=new Array();var c=new String();a("#"+this._id+"TicksContainer").append("<div id='labelPlaceholder' style='visibility: hidden; position: absolute;'></div>");var e=this.rangeSelector.height();if(this._dataType=="number"){c=this._addNumericTicks(e)}else{c=this._addDateTicks(e)}var b=0;if(this.showLabels){b+=a("#labelPlaceholder").outerHeight()+6}if(this._dataType!="number"){if(this.showGroupLabels){b+=a("#labelPlaceholder").outerHeight()+6}}if(this.padding=="auto"){this.host.css("padding-bottom",b)}a("#labelPlaceholder").remove();a("#"+this._id+"TicksContainer").append(c);this._ticksArray.sort(function(h,g){return h-g});for(var d=1;d<this._ticksArray.length;d++){this._ticksArray[d]=this._roundNumber(this._ticksArray[d])}this._valuesArray.sort(function(h,g){return h-g});if(this._dataType=="number"){for(var d=1;d<this._valuesArray.length;d++){this._valuesArray[d]=this._roundNumber(this._valuesArray[d],"marker",true)}}for(var d=1;d<this._ticksArray.length;d++){if(this._ticksArray[d-1]==this._ticksArray[d]){this._ticksArray.splice(d,1);this._valuesArray.splice(d,1)}}if(this.rtl){this._valuesArray=this._valuesArray.reverse()}},_addNumericTicks:function(g){var n=this;var l=new String();var h=0;var f=this._min;var r=this._max;for(var k=0;k<this._majorTicksCount;k++){var e=this._id+"LabelTick"+(k+1);if(k==this._majorTicksCount-1){h=this.host.width()}var m=n.showMajorTicks?"visible":"hidden";l+="<div id='"+e+"' class='"+this.toThemeProperty("jqx-rangeselector-ticks")+" "+this.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+m+"; left: "+h+"px;'></div>";this._ticksArray.push(h);this._majorTicksArray.push(h);var c=this._id+"Label"+(k+1);var j=f;this._valuesArray.push(parseFloat(j.toFixed(4)));if(n.rtl){j=r}j=this._formatOutput(j,this.labelsFormat,this.minorTicksInterval>=1?0:2,"label");a("#labelPlaceholder").html(j);var q=a("#labelPlaceholder").width();var p=n.showLabels?"visible":"hidden";if(n.labelsOnTicks){l+="<div id='"+c+"' class='"+this.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+p+"; left: "+(h-q/2)+"px; top: "+g+"px;'>"+j+"</div>"}var d=h;f=f+this.majorTicksInterval;r=r-this.majorTicksInterval;var h=(f-n._min)/n._unitPerPixel;h=parseInt(h);if(!this.labelsOnTicks&&k<this._majorTicksCount-1){var o=Math.abs(d-h);l+="<div id='"+c+"' class='"+this.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+p+"; left: "+(d+o/2-q/2)+"px; top: "+g+"px;'>"+j+"</div>"}}var h=0;var b=this.showMinorTicks?"visible":"hidden";var f=this._min;for(var k=0;k<this._unitsCount;k++){var e=this._id+"MinorTick"+(k+1);if(k==this._unitsCount-1){h=this.host.width()}l+="<div id='"+e+"' class='"+this.toThemeProperty("jqx-rangeselector-ticks")+" "+this.toThemeProperty("jqx-rangeselector-ticks-minor")+" "+this.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+b+"; left: "+h+"px;'></div>";var s=f;if(this._valuesArray.indexOf(parseFloat(s.toFixed(4)))===-1){this._valuesArray.push(parseFloat(s.toFixed(4)));this._ticksArray.push(h)}f=f+this.minorTicksInterval;var h=(f-n._min)/n._unitPerPixel;h=parseInt(h)}return l},_getMillisecondsByInterval:function(c){var b={};if(c=="year"||c.years){b.divisor=c.years?c.years:1;return b.divisor*(365*24*3600*1000)}else{if(c=="month"||c.months){b.divisor=c.months?c.months:1;return b.divisor*(30*24*3600*1000)}else{if(c=="week"||c.weeks){b.divisor=c.weeks?c.weeks:1;return b.divisor*(7*24*3600*1000)}else{if(c=="day"||c.days){b.divisor=c.days?c.days:1;return b.divisor*(24*3600*1000)}else{if(c=="hour"||c.hours){b.divisor=c.hours?c.hours:1;return b.divisor*(3600*1000)}else{if(c=="minute"||c.minutes){b.divisor=c.minutes?c.minutes:1;return b.divisor*60*1000}else{if(c=="second"||c.seconds){b.divisor=c.seconds?c.seconds:1;return b.divisor*1000}else{if(c=="millisecond"||c.milliseconds){b.divisor=c.milliseconds?c.milliseconds:1;return b.divisor*1}}}}}}}}return b},_addDateTicks:function(e){var d=this;var c=new String();var b=function(k){var j=k=="majorTicksInterval"?d.majorTicksInterval:d.minorTicksInterval;var i=new Object();if(j=="year"||j.years){i.period="year";i.interval=86400000;i.divisor=j.years?j.years:1;i.value=i.divisor*(365*24*3600*1000)}else{if(j=="month"||j.months){i.period="month";i.interval=86400000;i.divisor=j.months?j.months:1;i.value=i.divisor*(30*24*3600*1000)}else{if(j=="week"||j.weeks){i.period="week";i.interval=86400000;i.divisor=j.weeks?j.weeks:1;i.value=i.divisor*(7*24*3600*1000)}else{if(j=="day"||j.days){i.period="day";i.interval=3600000;i.divisor=j.days?j.days:1;i.value=i.divisor*(24*3600*1000)}else{if(j=="hour"||j.hours){i.period="hour";i.interval=60000;i.divisor=j.hours?j.hours:1;i.value=i.divisor*(3600*1000)}else{if(j=="minute"||j.minutes){i.period="minute";i.interval=60*1000;i.divisor=j.minutes?j.minutes:1;i.value=i.divisor*60*1000}else{if(j=="second"||j.seconds){i.period="second";i.interval=1000;i.divisor=j.seconds?j.seconds:1;i.value=i.divisor*1000}else{if(j=="millisecond"||j.milliseconds){i.period="millisecond";i.interval=1;i.divisor=j.milliseconds?j.milliseconds:1;i.value=i.divisor*1}}}}}}}}return i};var f=function(n,q){var l=new Date(n);var r=l.getDate();var s=q=="year"&&l.getMonth()==0&&r==1;var k=q=="month"&&r==1;var t=q=="week"&&l.getDay()==0;var j=q=="day"&&l.getHours()==0;var i=q=="hour"&&l.getMinutes()==0;var o=q=="minute"&&l.getSeconds()==0;var m=q=="minute"&&l.getMilliseconds()==0;var p=q=="millisecond";if(s||k||t||j||i||o||m||p){return true}else{return false}};var h=function(p,u,n){var l=(p-d._min)/d._unitPerPixel;if(d.rtl){if(u=="majorTicksInterval"){p=d._dateMajorTicks[d._dateMajorTicks.length-n]}else{p=d._dateMinorTicks[d._dateMinorTicks.length-n]}}l=parseInt(l);var v=p;if(d._valuesArray.indexOf(v)===-1){d._ticksArray.push(l);d._valuesArray.push(v);if(u=="majorTicksInterval"){d._majorTicksArray.push(l)}}if(u=="majorTicksInterval"){var q=d._id+"LabelTick"+n;var k=d.showMajorTicks?"visible":"hidden";c+="<div id='"+q+"' class='"+d.toThemeProperty("jqx-rangeselector-ticks")+" "+d.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+k+"; left: "+l+"px;'></div>";var o=v;o=d._formatOutput(o,d.labelsFormat,d.labelPrecision,"label");a("#labelPlaceholder").html(o);var t=a("#labelPlaceholder").width();var j=d._id+"Label"+n;var s=d.showLabels?"visible":"hidden";if(!d.labelsOnTicks){var w=d._getMillisecondsByInterval(d.majorTicksInterval)/d._unitPerPixel;var r=w/2;c+="<div id='"+j+"' class='"+d.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+s+"; left: "+(r+l-t/2)+"px; top: "+e+"px;'>"+o+"</div>"}else{if(d.labelsOnTicks){c+="<div id='"+j+"' class='"+d.toThemeProperty("jqx-rangeselector-labels")+"' style='visibility: "+s+"; left: "+(l-t/2)+"px; top: "+e+"px;'>"+o+"</div>"}}}else{var k=d.showMinorTicks?"visible":"hidden";var m=d._id+"MinorTick"+n;c+="<div id='"+m+"' class='"+d.toThemeProperty("jqx-rangeselector-ticks")+" "+d.toThemeProperty("jqx-rangeselector-ticks-minor")+" "+d.toThemeProperty("jqx-slider-tick-horizontal")+"' style='visibility: "+k+"; left: "+l+"px;'></div>"}};var g=function(s,o,j){var p=0;var l=1;var m=new Date(d._min).getHours();var r=o.interval==86400000?true:false;var k=0;var t=new Array();for(var n=d._min;n<=d._max;n+=o.interval){if(r==true){var u=new Date(n).getHours();if(m!=u){var q;if(u==1){q=1}else{if(u==23){q=-1}}n=n-q*3600000;m=new Date(n).getHours()}}var v=f(n,o.period);if(v==true){if(p%o.divisor==0){if(j){t.push(n)}else{h(n,s,l,o.interval)}l++}p++}}return t};d._dateMajorTicks=g("majorTicksInterval",b("majorTicksInterval"),true);d._dateMinorTicks=g("minorTicksInterval",b("minorTicksInterval"),true);g("majorTicksInterval",b("majorTicksInterval"));g("minorTicksInterval",b("minorTicksInterval"));if(this.showGroupLabels==true&&this.showLabels){this._addGroupLabels(a("#labelPlaceholder").height()+e)}return c},_addGroupLabels:function(n){var k=this;var e=new Date(this._min);var m=new Date(this._max);if(m.getFullYear()-e.getFullYear()>0){var l="year";var b=86400000}else{if(m.getMonth()-e.getMonth()>0){var l="month";var b=86400000}else{if(m.getDate()-e.getDate()>0){var l="day";var b=3600000}else{return}}}var j=function(q){var p=new Date(q);var s=p.getFullYear();var r=p.getMonth();var u=p.getDate();var v;var i=true;if(l=="year"&&r==0&&u==1){v=s}else{if(l=="month"&&u==1){v=a.jqx.dataFormat.formatdate(p,"MMMM");if(r==0){v=s+" "+v}}else{if(l=="day"&&p.getHours()==0){v=a.jqx.dataFormat.formatdate(p,"dddd")}else{i=false}}}var t;if((i==true)&&k.groupLabelsFormatFunction){t=k.groupLabelsFormatFunction(v,p)}else{t=v}var w={check:i,value:t};return w};var h=new String();var g=this.toThemeProperty("jqx-rangeselector-group-labels-ticks")+" "+this.toThemeProperty("jqx-slider-tick-horizontal");var d=1;for(var f=this._min;f<this._max;f+=b){var o=j(f);if(o.check==true){var c=(f-this._min)/this._unitPerPixel;h+="<div class='"+this.toThemeProperty("jqx-rangeselector-labels")+"' style='left: "+c+"px; top: "+n+"px;'><div class='"+g+"'></div><div id='"+this._id+"GroupLabel"+d+"' class='"+this.toThemeProperty("jqx-rangeselector-group-labels")+"' style='margin-left: 5px;'>"+o.value+"</div></div>";d++}}a("#"+this._id+"TicksContainer").append(h)},_updateCursor:function(b,g){var f=this.element.style.cursor;var e=this.slider.offset().left;var d=parseInt(this.slider[0].style.width);var c=e+d;if((((b>e-5)&&(b<e+5))||((b>c-5)&&(b<c+5)))){if(f==""||f=="auto"){this.element.style.cursor="e-resize"}}else{if(f=="e-resize"){this.element.style.cursor="auto"}}},_handleMouseMove:function(w){var j=this;var s=j.slider;var l=w.pageX;var k=w.pageY;if(j._isTouchDevice){var h=a.jqx.position(w);l=h.left;k=h.top}var D=j._hostOffset.left;var t=j._hostWidth;if(j.resizable&&!j.dragging&&j.resizeDirection=="none"){if(l>=D&&l<=D+t){if(k>=j._hostOffset.top&&k<=j._hostOffset.top+j._hostHeight){this._updateCursor(l,k)}}}if(!j.isMouseDown){return true}if(j._isTouchDevice){if(k<j._hostOffset.top||k>j._hostOffset.top+j._hostHeight){return true}}var f=j._findNearestTick(j._sliderLeftOffset+l-j._mouseDownX);var c=parseInt(f);if(c<0){return true}if(c<0){c=0}var b=parseInt(s[0].style.width);var i=c+b;var r=function(G){var y=parseInt(j._maxWidth);var x=parseInt(j._minWidth);if(G<x||G>y){return false}var I=parseInt(j.rightMarker[0].style.left);var H=parseInt(j.leftMarker[0].style.left);if(H>I){return false}return true};if(j.resizable==true&&!j.dragging){var A=c*j._unitPerPixel+j._min;if(j.resizeDirection=="left"||j.isLeftMarkerCaptured){var E=j.isLeftMarkerCaptured?j.leftMarker.outerWidth():0;if(l<D-E){l=D-E}if(l>D+t+E){l=D+t+E+1}var q=s[0].style.left;var g=c-parseInt(q);var o=parseInt(b-g);if(!r(o)){if(l>j._mouseDownX){l=j.sliderRight-j._minWidth-D;o=j._minWidth;if(b==o){return true}var f=j._findNearestTick(l);c=f;if(c<0){return true}var p=parseInt(q)*j._unitPerPixel+j._min;var A=c*j._unitPerPixel+j._min}else{if(j._maxWidth!=0&&l<j._mouseDownX&&o>j._maxWidth){l=j.sliderRight-j._maxWidth-D;o=j._maxWidth;if(b==o){return true}var f=j._findNearestTick(l);c=f;if(c<0){return true}var p=parseInt(q)*j._unitPerPixel+j._min;var A=c*j._unitPerPixel+j._min}else{return true}}}j.slider[0].style.left=c+"px";if(q!=s[0].style.left){j.slider[0].style.width=o+"px"}var n=j._findNearestTick(c);var v=j._valuesArray[j._ticksArray.indexOf(n)];if(v!=undefined){j.leftMarkerValue[0].innerHTML=j._formatOutput(v,j.markersFormat,0,"left");if(c!=n){j.slider[0].style.left=n+"px"}}else{j.leftMarkerValue[0].innerHTML=j._formatOutput(A,j.markersFormat,0,"left")}j.oldX=l;j.moved=true}else{if(j.resizeDirection=="right"||j.isRightMarkerCaptured){var E=j.isRightMarkerCaptured?j.rightMarker.outerWidth():0;var F=false;var u=false;if(l<D-E){l=D-E;u=true}if(l>D+t+E){l=D+t+E;F=true}var e=j._sliderInitialWidth;var m=j._findNearestTick(e+j._sliderLeftOffset);var C=j._findNearestTick(e+l-j._mouseDownX+j._sliderLeftOffset);if(C<0){return true}var g=m-C;var o=e-g;if(o<=0){g=e;o=0}var B=parseInt(j.element.style.width);if(j.element.style.width.indexOf("%")>=0){B=j.host.width()}if(F||(j._sliderLeftOffset+o>=B)){o=B-j._sliderLeftOffset;boundDetected=true}if(o>parseInt(this._maxWidth)){o=parseInt(this._maxWidth)}if(o<parseInt(this._minWidth)){o=parseInt(this._minWidth)}j.slider[0].style.width=o+"px";var A=(j._sliderLeftOffset+o)*j._unitPerPixel+j._min;var z=j._findNearestTick(j._sliderLeftOffset+o);var d=j._valuesArray[j._ticksArray.indexOf(z)];if(d!=undefined){if(j._sliderLeftOffset+o!=z){j.slider[0].style.width=z-j._sliderLeftOffset+"px"}j.rightMarkerValue[0].innerHTML=j._formatOutput(d,j.markersFormat,0,"right")}else{j.rightMarkerValue[0].innerHTML=(j._formatOutput(A,j.markersFormat,0,"right"))}j.oldX=l}}j._layoutShutter();j._layoutMarkers();j.moved=true}if(j.dragging==1){j._moveSlider(c,true);j.oldX=l}},_moveSlider:function(b,d){var g=this;g.moved=true;var e=parseInt(this.slider[0].style.width);var c=parseInt((b+e));var n=this._hostWidth;var j=b;if(j<0){j=0;b=j}if(j+e>n){j=n-e;b=j}if((j>=0)&&((j+e)<=(n))){this.slider[0].style.left=j+"px";var o=this._findNearestTick(j);var k=this._majorTicksArray.indexOf(o)!=-1;var m=this._valuesArray[this._ticksArray.indexOf(o)];if(m!=undefined){this.leftMarkerValue[0].innerHTML=this._formatOutput(m,this.markersFormat,0,"left");if(b!=o&&k){if(d){this.slider[0].style.left=o+"px";var c=parseInt((o+e))}}}else{this.leftMarkerValue[0].innerHTML=this._formatOutput(((j)*this._unitPerPixel+this._min),this.markersFormat,0,"left")}var i=this._findNearestTick(c);var l=this._valuesArray[this._ticksArray.indexOf(i)];if(l!=undefined){var h=this._majorTicksArray.indexOf(i)!=-1;this.rightMarkerValue[0].innerHTML=this._formatOutput(l,this.markersFormat,0,"right");if(c!=i&&h&&k){if(d){var f=(i-o);this.slider[0].style.width=f+"px"}}}else{this.rightMarkerValue[0].innerHTML=this._formatOutput(((j+e)*this._unitPerPixel+this._min),this.markersFormat,0,"right")}}this._layoutShutter();this._layoutMarkers()},_initSlider:function(){var n=this;var r=this.toThemeProperty("jqx-rangeselector-shutter")+" "+this.toThemeProperty("jqx-scrollbar-state-normal");a("#"+this._id+"TicksContainer").append("<div id='"+this._id+"ShutterLeft' class='"+r+"'></div><div id='"+this._id+"Slider' class='"+this.toThemeProperty("jqx-rangeselector-slider")+" "+this.toThemeProperty("jqx-scrollbar-thumb-state-normal")+"'><div class='"+this.toThemeProperty("jqx-rangeselector-inner-slider")+"'></div></div><div id='"+this._id+"ShutterRight' class='"+r+"'></div>");this.slider=a("#"+this._id+"Slider");this.shutterLeft=a("#"+this._id+"ShutterLeft");this.shutterRight=a("#"+this._id+"ShutterRight");this._hostOffset=this.rangeSelector.offset();this._hostWidth=this.rangeSelector.width();this._hostHeight=this.rangeSelector.height();var o=this._hostOffset;var m=this._initRange();var q=m.left;var c=m.right-q;var g=c/this._unitPerPixel;this.slider[0].style.width=Math.round(g)+"px";var h=o.left+parseInt((q-this._min)/this._unitPerPixel);this.slider.offset({left:h});this._layoutShutter();this._initMarkers();if(this.disabled==false){this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.addHandler(this.host,"dragstart.rangeselector"+this._id,function(){return false});this.addHandler(a(window),"jqxReady.rangeselector",function(){n._layoutMarkers();return false});this.isSliderCaptured=false;this.resizeDirection="none";this.isLeftMarkerCaptured=false;this.isRightMarkerCaptured=false;this.dragging=false;this._mouseDownX;var d;var f;var i="mousedown.rangeselector"+this.element.id;if(this._isTouchDevice){i=a.jqx.mobile.getTouchEventName("touchstart")+".rangeselector"+this.element.id}this.addHandler(this.host,i,function(t){n.isMouseDown=true;n._hostOffset=n.rangeSelector.offset();n._hostWidth=n.rangeSelector.width();n._hostHeight=n.rangeSelector.height();n._sliderLeftOffset=parseInt(n.slider[0].style.left);var A=t.pageX;var v=t.pageY;if(n._isTouchDevice){var z=a.jqx.position(t);A=z.left;v=z.top}n._initialSliderOffset=A-n.slider.offset().left;var B=n.slider.width();n._sliderInitialWidth=B;d=n.slider.offset().left;f=n._sliderInitialWidth;n.initialOffset=d;var s=parseInt((d+f));n.oldX=A;n._mouseDownX=A;n.resizeDirection="none";n.sliderRight=s;if((A>d-5)&&(A<d+5)&&n._heightCheck(v)){n.isSliderCaptured=false;n.dragging=false;n.resizeDirection="left"}else{if((A>s-5)&&(A<s+5)&&n._heightCheck(v)){n.isSliderCaptured=false;n.dragging=false;n.resizeDirection="right"}else{if((A>=d+5)&&(A<=s+5)&&n._heightCheck(v)){n.isSliderCaptured=true;n.dragging=true}else{n.isSliderCaptured=false;n.dragging=false;if(n.moveOnClick){if(n.isLeftMarkerCaptured||n.isRightMarkerCaptured){return false}var l=n._sliderLeftOffset+n._initialSliderOffset;var C=n._findNearestTick(l);l=C;if(l<0){l=0}var u=parseInt(n.slider[0].style.width);if(v>=n.slider.offset().top){if(A>s){n._moveSlider(l-u,true)}else{n._moveSlider(l,true)}}}}}}});this.addHandler(n.leftMarker,i,function(l){n.leftMarkerAndArrow.addClass(n.toThemeProperty("jqx-fill-state-pressed"));n.oldLeftX=l.pageX;if(n._isTouchDevice){var s=a.jqx.position(l);oldLeftX=s.left}n._mouseDownX=n.oldLeftX;n.isLeftMarkerCaptured=true});this.addHandler(n.rightMarker,i,function(l){n.rightMarkerAndArrow.addClass(n.toThemeProperty("jqx-fill-state-pressed"));n.oldRightX=l.pageX;if(n._isTouchDevice){var s=a.jqx.position(l);oldRightX=s.left}n._mouseDownX=n.oldRightX;n.isRightMarkerCaptured=true});this.addHandler(a(document),"selectstart.rangeselector"+this._id,function(l){if(n.isSliderCaptured==true||n.isLeftMarkerCaptured==true||n.isRightMarkerCaptured==true||n.dragging==true){l.preventDefault();return false}});var b="mousemove.rangeselector"+this.element.id;if(this._isTouchDevice){b=a.jqx.mobile.getTouchEventName("touchmove")+".rangeselector"+this.element.id}this.addHandler(a(document),b,function(l){n._handleMouseMove(l)});var k=function(t){try{var s=n.moved;n.moved=false;n.isMouseDown=false;n.dragging=false;n.resizeDirection="none";if(n.isLeftMarkerCaptured==true){n.leftMarkerAndArrow.removeClass(n.toThemeProperty("jqx-fill-state-pressed"));n.isLeftMarkerCaptured=false}if(n.isRightMarkerCaptured==true){n.rightMarkerAndArrow.removeClass(n.toThemeProperty("jqx-fill-state-pressed"));n.isRightMarkerCaptured=false}if(s){var u=n._getValue();n._raiseEvent("0",{from:u.from,to:u.to})}}catch(l){}};this.addHandler(a(document),"mouseup.rangeselector"+this._id,function(l){k(l)});try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var j=function(l){k(l)};var e=null;if(window.parent&&document.referrer){e=document.referrer}if(e&&e.indexOf(document.location.host)!=-1){if(window.top.document){if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",j,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",j)}}}}}}}catch(p){}}else{this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._moveSlider(parseInt(n.slider[0].style.left));this.moved=false},_initMarkers:function(){var c=a("#"+this._id+"TicksContainer");var d=this.toThemeProperty("jqx-rangeselector-markers")+" "+this.toThemeProperty("jqx-disableselect")+" "+this.toThemeProperty("jqx-fill-state-normal");c.append("<div id='"+this._id+"LeftMarker' class='"+d+"'></div><div id='"+this._id+"RightMarker' class='"+d+"'></div>");var e=this.toThemeProperty("jqx-rangeselector-marker-arrow")+" "+this.toThemeProperty("jqx-fill-state-normal");if(this.markersPosition=="bottom"){e+=" "+this.toThemeProperty("jqx-rangeselector-marker-arrow-bottom")}else{e+=" "+this.toThemeProperty("jqx-rangeselector-marker-arrow-top")}c.append("<div id='"+this._id+"LeftMarkerArrow' class='"+e+" "+this.toThemeProperty("jqx-rangeselector-marker-left-arrow")+"'></div>");c.append("<div id='"+this._id+"RightMarkerArrow' class='"+e+" "+this.toThemeProperty("jqx-rangeselector-marker-right-arrow")+"'></div>");a("#"+this._id+"LeftMarker").append("<div id='"+this._id+"LeftMarkerValue' class='"+this.toThemeProperty("jqx-disableselect")+" "+this.toThemeProperty("jqx-rangeselector-markers-value")+"'></div>");a("#"+this._id+"RightMarker").append("<div id='"+this._id+"RightMarkerValue' class='"+this.toThemeProperty("jqx-disableselect")+" "+this.toThemeProperty("jqx-rangeselector-markers-value")+"'></div>");var i=a("#"+this._id+"LeftMarker, #"+this._id+"RightMarker, #"+this._id+"LeftMarkerArrow, #"+this._id+"RightMarkerArrow");var h=a("#"+this._id+"LeftMarker, #"+this._id+"LeftMarkerArrow");var b=a("#"+this._id+"RightMarker, #"+this._id+"RightMarkerArrow");if(this.showMarkers==true){i.css("visibility","visible")}else{i.css("visibility","hidden")}if(this.disabled==false&&this.resizable==true){var f=this;this.addHandler(h,"mouseenter.rangeselector"+this._id,function(j){f.element.style.cursor="pointer";h.addClass(f.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(h,"mouseleave.rangeselector"+this._id,function(j){f.element.style.cursor="auto";h.removeClass(f.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(b,"mouseenter.rangeselector"+this._id,function(j){f.element.style.cursor="pointer";b.addClass(f.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(b,"mouseleave.rangeselector"+this._id,function(j){f.element.style.cursor="auto";b.removeClass(f.toThemeProperty("jqx-fill-state-hover"))})}this.leftMarkerAndArrow=h;this.rightMarkerAndArrow=b;this.leftMarkerArrow=a("#"+this._id+"LeftMarkerArrow");this.rightMarkerArrow=a("#"+this._id+"RightMarkerArrow");this.leftMarker=a("#"+this._id+"LeftMarker");this.rightMarker=a("#"+this._id+"RightMarker");this.leftMarkerValue=a("#"+this._id+"LeftMarkerValue");this.rightMarkerValue=a("#"+this._id+"RightMarkerValue");var g=this._initRange();this._updateMarkersValues(g.left,g.right);this._layoutMarkers();if(this.padding=="auto"){this.host.css("padding-left",this.leftMarker[0].offsetWidth);this.host.css("padding-right",this.rightMarker[0].offsetWidth);this.host.css("padding-top",this._leftMarkerHeight+7)}else{this.host.css("padding",this.padding)}},_layoutMarkers:function(){if(this.showMarkers!=true){return}if(!this._hostOffset){this._hostOffset=this.rangeSelector.offset()}if(!this._leftMarkerHeight){this._leftMarkerHeight=this.leftMarker.outerHeight();this._rightMarkerHeight=this.rightMarker.outerHeight()}var e=this._hostOffset.top;var g=parseInt(this.slider[0].style.left)+this._hostOffset.left;var d=-5;if(this.markersPosition=="bottom"){d=parseInt(this.element.style.height)+4+this._rightMarkerHeight}var c=d-this._leftMarkerHeight;var f=d-this._rightMarkerHeight;if(this.markersPosition=="bottom"){d=parseInt(this.element.style.height)-6}var i=this.leftMarker[0].offsetWidth;var b=1+g-i-this._hostOffset.left;this.leftMarker[0].style.left=b+"px";this.leftMarker[0].style.top=c+"px";this.leftMarkerArrow[0].style.left=2+b+i+"px";this.leftMarkerArrow[0].style.top=6+d+"px";var h=g+parseInt(this.slider[0].style.width)-this._hostOffset.left;this.rightMarker[0].style.left=h+"px";this.rightMarker[0].style.top=f+"px";this.rightMarkerArrow[0].style.left=7+h+"px";this.rightMarkerArrow[0].style.top=6+d+"px"},_updateMarkersValues:function(e,d){var c=e;var b=d;this.leftMarkerValue[0].innerHTML=this._formatOutput(c,this.markersFormat,0,"left",true);this.rightMarkerValue[0].innerHTML=this._formatOutput(b,this.markersFormat,0,"right",true)},_removeHandlers:function(){var f=this.element.id;var e=a("#"+f+"LeftMarker, #"+f+"LeftMarkerArrow");var b=a("#"+f+"RightMarker, #"+f+"RightMarkerArrow");var d="mousemove.rangeselector"+f;var c="mousedown.rangeselector"+f;if(this._isTouchDevice){d=a.jqx.mobile.getTouchEventName("touchmove")+".rangeselector"+f;c=a.jqx.mobile.getTouchEventName("touchstart")+".rangeselector"+f}this.removeHandler(a(document),d);this.removeHandler(a(document),"mouseup.rangeselector"+f);this.removeHandler(this.host,c);this.removeHandler(this.host,"click.rangeselector"+f);this.removeHandler(this.host,"dragstart.rangeselector"+f);this.removeHandler(e,"mouseenter.rangeselector"+f);this.removeHandler(e,"mouseleave.rangeselector"+f);this.removeHandler(b,"mouseenter.rangeselector"+f);this.removeHandler(b,"mouseleave.rangeselector"+f);this.removeHandler(a("#"+f+"LeftMarker"),c);this.removeHandler(a("#"+f+"RightMarker"),c);this.removeHandler(a("#"+f+"LeftMarkerValue, #"+f+"RightMarkerValue"),"selectstart.rangeselector"+f)},_heightCheck:function(b){var d=this.slider;var c=d.offset().top;if(b>=c&&b<=c+d.height()){return true}else{return false}},_checkProperties:function(){if(this._range._from<this._min){this._range._from=this._min}else{if(this._range._from>this._min&&this._range._from>this._max){this._range._from=this._min}}if(this._range._to>this._max){this._range._to=this._max}else{if(this._range._to<this._min&&this._range._to<this._max){this._range._to=this._max}}var c=this._max-this._min;if(this._range._min>c){this._range._min=c}if(this._range._max>c){this._range._max=c}var b=this._range._to-this._range._from;if(b<this._range._min){this._range._to=this._range._from+this._range._min}else{if(b>this._range._max){this._range._to=this._range._from+this._range._max}}},_findNearestTick:function(d){var f=0;var e=Math.abs(d-this._ticksArray[0]);for(var c=1;c<this._ticksArray.length;c++){var b=Math.abs(d-this._ticksArray[c]);if(e>b){e=b;f=c}}return this._ticksArray[f]},_privateProperties:function(){this._min=this._validateInput(this.min);this._max=this._validateInput(this.max);this._range=new Object();this._range._from=this._validateInput(this.range.from!=undefined?this.range.from:0);this._range._to=this._validateInput(this.range.to!=undefined?this.range.to:Infinity);this._range._min=this._minMaxDate(this.range.min!=undefined?this.range.min:0);this._range._max=this._minMaxDate(this.range.max!=undefined?this.range.max:Infinity)},_validateInput:function(c){var b;if(typeof c=="number"){b=c}else{if(typeof c=="string"){b=Date.parse(c)}else{if(c instanceof Date){b=c.getTime()}}}return b},_minMaxDate:function(c){if(typeof c!="number"){var b;switch(c){case"millisecond":b=1;break;case"second":b=1000;break;case"minute":b=60000;break;case"hour":b=3600000;break;case"day":b=86400000;break;case"week":b=604800000;break;default:b=c.milliseconds?c.milliseconds:0+c.seconds?1000*c.seconds:0+c.minutes?60000*c.minutes:0+c.hours?3600000*c.hours:0+c.days?86400000*c.days:0+c.weeks?604800000*c.weeks:0}return b}else{return c}},_formatOutput:function(f,g,c,e,h){var d;if(!this.values){this.values=new Array()}this.values[e]=f;if((e=="label")&&this.labelsFormatFunction){if(this._dataType=="date"){d=this._roundDate(f)}else{d=this._roundNumber(f,"label")}d=this.labelsFormatFunction(d)}else{if(e!="label"&&this.markersFormatFunction){if(this._dataType=="date"){d=this._roundDate(f)}d=this.markersFormatFunction(f,e)}else{if(!g){if(this._dataType=="date"){var b;if(this.labelsFormat==null&&this.markersFormat==null){b="both labelsFormat and markersFormat"}else{if(this.labelsFormat==null){b="labelsFormat"}else{if(this.markersFormat==null){b="markersFormat"}}}var i="When the data format is date, "+b+" should be set.";throw new Error(i)}d=f.toFixed(c)}else{if(this._dataType=="number"){d=a.jqx.dataFormat.formatnumber(f,g)}else{d=this._roundDate(f);d=a.jqx.dataFormat.formatdate(d,g)}}}}return d},_getValue:function(i){var f=this.slider;var e=f.width();var b=new Object();var d=f.offset().left-this.rangeSelector.offset().left;var h=(d*this._unitPerPixel+this._min);b.from=this._roundNumber(h,"marker");b.to=this._roundNumber(h+e*this._unitPerPixel,"marker");if(!i&&this.snapToTicks==true){var g=this._findNearestTick((b.from-this._min)/this._unitPerPixel);b.from=this._valuesArray[this._ticksArray.indexOf(g)];var c=this._findNearestTick((b.to-this._min)/this._unitPerPixel);b.to=this._valuesArray[this._ticksArray.indexOf(c)]}if(this._dataType=="date"){b.from=new Date(b.from);b.to=new Date(b.to)}return b},_roundNumber:function(e,b,d){var c;if(b=="marker"){if(d==true){e=parseFloat(e)}c=parseFloat(e)}else{if(b=="label"){c=parseFloat(e)}else{c=parseFloat(e)}}return c},_roundDate:function(c){if(typeof c=="number"){c=new Date(c)}var d=this._max-this._min;if(d>1209600000){var e=c.getDate();var b=c.getHours();if(b>12){c.setDate(e+1);c.setHours(0);c.setMinutes(0);c.setSeconds(0)}}else{if(d>172800000){c.setHours(c.getHours()+Math.round(c.getMinutes()/60));c.setMinutes(0);c.setSeconds(0)}}return c},_layoutShutter:function(){var d=parseInt(this.slider[0].style.left);this.shutterLeft[0].style.width=d+"px";this.shutterLeft[0].style.left="0px";if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.shutterLeft[0].style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";this.shutterRight[0].style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"}var c=1+d+parseInt(this.slider[0].style.width);this.shutterRight[0].style.left=c+"px";var e=parseInt(this.element.style.width);if(this.element.style.width.indexOf("%")>=0){var e=parseInt(this.host.width())}var b=e-1-d-parseInt(this.slider[0].style.width);if(b<0){b=0}this.shutterRight[0].style.width=1+b+"px";if(c+1+b<2+e){this.shutterRight[0].style.width=2+b+"px"}if(b==0){this.shutterRight[0].style.width="0px"}},_initRange:function(){if(this._range._from>this._range._to){throw new Error("jqxRangeSelector: range object initialization error. 'min' should be less than 'max'");return}var c=this;var e=this._range._from;var b=this._range._to;var d={left:e,right:b};return d}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxrating.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxrating.js
new file mode 100644 (file)
index 0000000..c436b79
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxRating","",{});a.extend(a.jqx._jqxRating.prototype,{defineInstance:function(){var b={count:5,disabled:false,value:0,height:"auto",width:"auto",precision:1,singleVote:false,itemHeight:"20",itemWidth:"20",_itemHeight:undefined,_itemWidth:undefined,_images:[],aria:{"aria-valuenow":{name:"value",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}},_events:["change"],_invalidArgumentExceptions:{invalidPrecision:"The value of the precision property is invalid!",invalidWidth:"Width you've entered is invalid!",invalidHeight:"Height you've entered is invalid!",invalidCount:"You've entered invalid value for the count property!",invalidValue:"You've entered invalid value property!"}};a.extend(true,this,b);return b},createInstance:function(b){a.jqx.aria(this);this._createRating()},destroy:function(){this.host.remove()},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this.value}if(typeof b=="string"){this.value=parseInt(b)}else{this.value=b}this.setValue(this.value);return this.value},_createRating:function(){this.host.css("display","none");this.host.empty();this._addInput();this._validateProperties();this._render();this._performLayout();this._removeEventHandlers();this._addEventHandlers();this.host.css("display","block");this.host.addClass(this.toThemeProperty("jqx-widget"));if(this.disabled){this.disable()}},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}this.input.val(this.value.toString())},_render:function(){for(var b=1;b<=this.count;b++){this._images[b-1]=a('<div style="float:left;width:auto;height:auto;"><div style="position:absolute;width:auto;height:auto;visibility:hidden;" class="jqx-rating-hoverWrapper"><div style="width:auto;height:auto;float:left;" class="'+this.toThemeProperty("jqx-rating-image-hover")+'"></div><div style="visibility:hidden;width:auto;height:auto;" class="'+this.toThemeProperty("jqx-rating-image-backward")+'"></div></div><div style="position:absolute;width:auto;height:auto;" class="jqx-rating-voteWrapper"><div style="width:auto;height:auto;float:left;" class="'+this.toThemeProperty("jqx-rating-image-default")+'"></div><div style="width:0;height:auto;float:left;" class="'+this.toThemeProperty("jqx-rating-image-backward")+'"></div></div></div>');this.host.append(this._images[b-1])}},_performLayout:function(){for(var d=1;d<=this.count;d++){var e=this._images[d-1].find(this.toThemeProperty(".jqx-rating-image-backward",true)),h=this._images[d-1].find(this.toThemeProperty(".jqx-rating-image-default",true)),c=this._images[d-1].find(this.toThemeProperty(".jqx-rating-image-hover",true)),b=this._getImageName(h),f=this._getImageName(c),g=this._getImageName(e);h.css("background-image","none");c.css("background-image","none");e.css("background-image","none");this._appendImage(c,f,d-1);this._appendImage(e,g,d-1);this._appendImage(h,b,d-1)}},resize:function(c,b){this.width=c;this.height=b;this._setControlSize(this.width,this.height)},_setControlSize:function(c,b){this.host.css("height",this.height);this.host.css("width",this.width);if(this.itemHeight&&this.itemHeight!=="auto"){this._itemHeight=parseInt(this.itemHeight)}else{this._itemHeight=b}if(this.itemWidth&&this.itemWidth!=="auto"){this._itemWidth=parseInt(this.itemWidth)}else{this._itemWidth=c}},_appendImage:function(b,d,e){var c=this;var f=a('<img style="-moz-user-select:-moz-none;-khtml-user-select: none;-webkit-user-select:none;user-select:none;" class="'+this.toThemeProperty("jqx-rating-image")+'" src="'+d+'" />');b.append(f);f.load(function(){if(!c._initialized){c._setControlSize(a(this).width(),a(this).height());c._setValue(c.value,".jqx-rating-voteWrapper",".jqx-rating-image-default",".jqx-rating-image-backward");c._initialized=true}c._images[e].height(c._itemHeight);a(this).height(c._itemHeight);c._images[e].width(c._itemWidth);a(this).width(c._itemWidth)});return f},_validateProperties:function(){try{if(this.precision<0.001||this.precision>1){throw this._invalidArgumentExceptions.invalidPrecision}if(this.height!=="auto"&&parseInt(this.height)<0){throw this._invalidArgumentExceptions.invalidHeight}if(this.width!=="auto"&&parseInt(this.width)<0){throw this._invalidArgumentExceptions.invalidWidth}if(this.count<=0){throw this._invalidArgumentExceptions.invalidCount}if(this.value>this.count||this.value<0){throw this._invalidArgumentExceptions.invalidValue}}catch(b){alert(b)}},_getImageIndex:function(c){var b=0;while(c!==this._images[b][0]){b++}return ++b},_getRating:function(h,d){var g=this._getImageIndex(h);if(this.precision<1){var f=parseInt(d)-parseInt(a(h).position().left),c=this._itemWidth*this.precision,e=0;while(e<f){e+=c}if(e>parseInt(this._itemWidth)-c){e=parseInt(this._itemWidth)}var b=e/a(h).width();g-=1-b}return g},_addEventHandlers:function(){var b=this;for(var c=0;c<this.count;c++){if(!a.jqx.mobile.isTouchDevice()){this.addHandler(this._images[c],"mousemove",function(d){var e=b._getRating(this,d.pageX);b._setValue(e,".jqx-rating-hoverWrapper",".jqx-rating-image-hover",".jqx-rating-image-backward")});this.addHandler(this._images[c],"mouseenter",function(e){var f=b._getImageIndex(this);for(var d=0;d<f;d++){b._images[d].children(".jqx-rating-hoverWrapper").css("z-index","10");b._images[d].children(".jqx-rating-voteWrapper").css("z-index","1");b._images[d].children(".jqx-rating-hoverWrapper").css("visibility","visible")}});this.addHandler(this._images[c],"mouseleave",function(e){var f=b._getImageIndex(this);for(var d=0;d<f;d++){b._images[d].children(".jqx-rating-voteWrapper").css("z-index","10");b._images[d].children(".jqx-rating-hoverWrapper").css("z-index","1");b._images[d].children(".jqx-rating-hoverWrapper").css("visibility","hidden")}})}this.addHandler(this._images[c],"click",function(d){var e=b._getRating(this,d.pageX);b._setValue(e,".jqx-rating-voteWrapper",".jqx-rating-image-default",".jqx-rating-image-backward");if(b.singleVote){b.disable()}d.stopPropagation();b._raiseEvent(0,e)});this.addHandler(this._images[c],"dragstart",function(d){return false})}},_removeEventHandlers:function(){for(var b=0;b<this.count;b++){this.removeHandler(this._images[b],"mousemove");this.removeHandler(this._images[b],"mouseenter");this.removeHandler(this._images[b],"mouseleave");this.removeHandler(this._images[b],"click");this.removeHandler(this._images[b],"dragstart")}},_getImageName:function(c){var b=c.css("background-image");b=b.replace('url("',"");b=b.replace('")',"");b=b.replace("url(","");b=b.replace(")","");return b},_setValue:function(d,k,h,f){for(var e=1;e<=this.count;e++){var j=1,g=this._images[e-1].children(k),c=g.children(h),b=g.children(f);if(e>d){if(Math.abs(e-d)<1){j=1-Math.abs(e-d)}else{j=0}}c.width(this._itemWidth*j);b.width(this._itemWidth-parseInt(c.width()));g.children(this.toThemeProperty(f)).children(0).css("margin-left",-this._itemWidth*j+"px")}a.jqx.aria(this,"aria-valuenow",d)},_raiseEvent:function(d,c){var b=new a.Event(this._events[d]);b.owner=this;b.value=c;b.oldvalue=this.value;this.value=c;if(this.input){this.input.val(this.value.toString())}return this.host.trigger(b)},setValue:function(b){this._setValue(b,".jqx-rating-voteWrapper",".jqx-rating-image-default",".jqx-rating-image-backward");this.value=b;this._raiseEvent(0,this.value)},getValue:function(){return this.value},disable:function(){this._removeEventHandlers();this.disabled=true;a.jqx.aria(this,"aria-disabled",true)},enable:function(){this._removeEventHandlers();this._addEventHandlers();this.disabled=false;a.jqx.aria(this,"aria-disabled",false)},propertyChangedHandler:function(b,c,e,d){if(c==="disabled"){if(d){this.disable()}else{this.enable()}return}else{if(c==="value"){b.setValue(d)}else{b._createRating()}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxresponse.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxresponse.js
new file mode 100644 (file)
index 0000000..62b8c3b
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function($){$.jqx.response=function(){this.defineInstance()};$.jqx.response.prototype={defineInstance:function(){this._handlers=new Array();this.refresh();var that=this;this.addHandler($(document),"scroll.jqxresponse",function(){that.scroll=that.getScroll()})},refresh:function(){this.os=this.getOS();this.browser=this.getBrowser();this.device=this.getDevice();this.viewPort=this.getViewPort();this.document=this.getDocument();this.scroll=this.getScroll();this.media=window.matchMedia||window.msMatchMedia||function(){return{}}},refreshSize:function(){this.viewPort=this.getViewPort();this.document=this.getDocument()},addHandler:function(source,event,func,data){switch(event){case"mousemove":if(window.addEventListener&&!data){source[0].addEventListener("mousemove",func,false);return false}break}if(source.on){source.on(event,func)}else{source.bind(event,func)}},removeHandler:function(source,event,func){if(event==undefined){if(source.off){source.off()}else{source.unbind()}return}if(func==undefined){if(source.off){source.off(event)}else{source.unbind(event)}}else{if(source.off){source.off(event,func)}else{source.unbind(event,func)}}},destroy:function(){this.removeHandler($(window),"resize.jqxresponse");this.removeHandler($(document),"scroll.jqxresponse");for(var i=0;i<this._handlers.length;i++){var element=this._handlers[i];this.removeHandler($(element),"mousedown.response"+element[0].id);this.removeHandler($(element),"touchstart.response"+element[0].id);this.removeHandler($(element),"mousemove.response"+element[0].id);this.removeHandler($(element),"touchmove.response"+element[0].id);this.removeHandler($(element),"mouseup.response"+element[0].id);this.removeHandler($(element),"touchend.response"+element[0].id)}},resize:function(resizeFuncs){var that=this;this.removeHandler($(window),"resize.jqxresponse");this.addHandler($(window),"resize.jqxresponse",function(event){if(resizeFuncs){if($.isArray(resizeFuncs)){for(var i=0;i<resizeFuncs.length;i++){resizeFuncs[i]()}}else{resizeFuncs()}}that.refreshSize()});if(resizeFuncs==null){this.removeHandler($(window),"resize.jqxresponse")}},pointerDown:function(element,func){if(element&&func){var touchDevice=$.jqx.mobile.isTouchDevice();var that=this;var canCallFunc=true;if(touchDevice){var touchstart=$.jqx.mobile.getTouchEventName("touchstart")+".response"+element[0].id;if(func!=null){this.addHandler($(element),touchstart,function(event){var position=$.jqx.position(event);var result=func(event,position,"touch");canCallFunc=false;setTimeout(function(){canCallFunc=true},500);return result})}else{this.removeHandler($(element),touchstart)}}if(func!=null){this.addHandler($(element),"mousedown.response"+element[0].id,function(event){var position=$.jqx.position(event);if(canCallFunc){return func(event,position,"mouse")}})}else{this.removeHandler($(element),"mousedown.response"+element[0].id)}this._handlers.push(element)}},pointerUp:function(element,func){if(element){var touchDevice=$.jqx.mobile.isTouchDevice();var that=this;var canCallFunc=true;if(touchDevice){var touchend=$.jqx.mobile.getTouchEventName("touchend")+".response"+element[0].id;if(func!=null){this.addHandler($(element),touchend,function(event){var position=$.jqx.position(event);var result=func(event,position,"touch");canCallFunc=false;setTimeout(function(){canCallFunc=true},500);return result})}else{this.removeHandler($(element),touchend)}}if(func!=null){this.addHandler($(element),"mouseup.response"+element[0].id,function(event){var position=$.jqx.position(event);if(canCallFunc){return func(event,position,"mouse")}})}else{this.removeHandler($(element),"mouseup.response"+element[0].id)}this._handlers.push(element)}},pointerMove:function(element,func){if(element){var touchDevice=$.jqx.mobile.isTouchDevice();if(touchDevice){var touchmove=$.jqx.mobile.getTouchEventName("touchmove")+".response"+element[0].id;if(func!=null){this.addHandler($(element),touchmove,function(event){var touches=$.jqx.mobile.getTouches(event);if(touches.length==1){var position=$.jqx.position(event);return func(event,position,"touch")}})}else{this.removeHandler($(element),touchmove)}}else{if(func!=null){this.addHandler($(element),"mousemove.response"+element[0].id,function(event){var position=$.jqx.position(event);return func(event,position,"mouse")})}else{this.removeHandler($(element),"mousemove.response"+element[0].id)}}this._handlers.push(element)}},isHidden:function(element){return $.jqx.isHidden($(element))},inViewPort:function(element){var viewPort=this.viewPort;if(element.getBoundingClientRect){var r=element.getBoundingClientRect?element.getBoundingClientRect():{};return r&&(r.bottom>=0&&r.top<=viewPort.height&&r.right>=0&&r.left<=viewPort.width)}return false},getScroll:function(){var obj={left:window.pageXOffset||document.scrollLeft,top:window.pageYOffset||document.scrollTop};if(obj.left==undefined){obj.left=0}if(obj.top==undefined){obj.top=0}return obj},getDocument:function(){return{width:$(document).width(),height:$(document).height()}},getViewPort:function(){return{width:$(window).width(),height:$(window).height()}},getTouch:function(){var eventName="ontouchstart";var supported=(eventName in window);if(supported){return true}else{var eventName="MSPointerDown";var supported=(eventName in window);if(supported){return true}}if($.jqx.mobile.isWindowsPhone()){return true}return false},getDevice:function(){var osName=this.os.name;var match=window.location.search.match(/deviceType=(Tablet|Phone)/),nativeDeviceType=window.deviceType;var deviceType="";if(match&&match[1]){deviceType=match[1]}else{if(nativeDeviceType==="iPhone"){deviceType="Phone"}else{if(nativeDeviceType==="iPad"){deviceType="Tablet"}else{if(osName!="Android"&&osName!="iOS"&&/Windows|Linux|MacOS|Mac OS|Mac OS X/.test(osName)){deviceType="Desktop"}else{if(osName=="iOS"&&navigator.userAgent.toLowerCase().indexOf("ipad")>=0){deviceType="Tablet"}else{if(osName=="RIMTablet"){deviceType="Tablet"}else{if(osName=="Android"){if(this.os.version&&this.os.version.substring(0,1).indexOf("3")>=0){deviceType="Tablet"}else{if(this.os.version&&this.os.version.substring(0,1).indexOf("4")>=0&&navigator.userAgent.search(/mobile/i)==-1){deviceType="Tablet"}else{deviceType="Phone"}}if(navigator.userAgent.toLowerCase().indexOf("kindle fire")>=0){deviceType="Tablet"}}else{deviceType="Phone"}}}}}}}if(/Windows/.test(osName)){if(navigator.userAgent.indexOf("Windows Phone")>=0||navigator.userAgent.indexOf("WPDesktop")>=0||navigator.userAgent.indexOf("IEMobile")>=0||navigator.userAgent.indexOf("ZuneWP7")>=0){deviceType="Phone"}else{if(navigator.userAgent.indexOf("Touch")>=0){deviceType="Tablet";if(!this.getTouch()){deviceType="Desktop"}}}}return{type:deviceType,touch:this.getTouch(),width:window.screen.width,height:window.screen.height,availWidth:window.screen.availWidth,availHeight:window.screen.availHeight}},canvas:function(){var canvasSupport=false;var canvas=document.createElement("canvas");if(canvas&&canvas.getContext&&canvas.getContext("2d")){canvasSupport=true}return canvasSupport},vml:function(){if(this._vmlSupport==undefined){var a=document.body.appendChild(document.createElement("div"));a.innerHTML='<v:shape id="vml_flag1" adj="1" />';var b=a.firstChild;b.style.behavior="url(#default#VML)";this._vmlSupport=b?typeof b.adj=="object":true;a.parentNode.removeChild(a)}return this._vmlSupport},svg:function(){return document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Image","1.1")},getBrowser:function(){var ua=navigator.userAgent.toLowerCase();var name="";var match=null;var that=this;browserNames={msie:{name:"Internet Explorer",eval:/(msie) ([\w.]+)/.exec(ua)},webkit:{name:"Webkit",eval:/(webkit)[ \/]([\w.]+)/.exec(ua)},chrome:{name:"Chrome",eval:/(chrome)[ \/]([\w.]+)/.exec(ua)},safari:{name:"Safari",eval:/(safari)[ \/]([\w.]+)/.exec(ua)},edge:{name:"Edge",eval:/(edge) ([\w.]+)/.exec(ua)},opera:{name:"Opera",eval:/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)},operamobile:{name:"Opera Mobile",eval:/(opera mobi)(?:.*version|)[ \/]([\w.]+)/.exec(ua)||/(opera tablet)(?:.*version|)[ \/]([\w.]+)/.exec(ua)},dolphin:{name:"Dolphin",eval:/(dolphin)[ \/]([\w.]+)/.exec(ua)},webosbrowser:{name:"webOSBrowser",eval:/(wosbrowser)(?:.*version|)[ \/]([\w.]+)/.exec(ua)},chromemobile:{name:"Chrome Mobile",eval:/(crmo)[ \/]([\w.]+)/.exec(ua)},silk:{name:"Silk",eval:/(silk)[ \/]([\w.]+)/.exec(ua)},firefox:{name:"Firefox",eval:/(firefox)[ \/]([\w.]+)/.exec(ua)},msie11:{name:"Internet Explorer 11",eval:ua.indexOf("rv:11.0")>=0&&ua.indexOf(".net4.0c")>=0},winphone:{name:"Internet Explorer Mobile",eval:ua.indexOf("windows phone 8.1")>=0},other:{name:"Other",eval:ua.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)}};$.each(browserNames,function(index,value){if(this.eval){if(this.name=="Other"){if(!match){match=this.eval;name=this.name}}else{if(this.name=="Internet Explorer 11"){if(!match){match=["","msie",11];name="Internet Explorer"}}else{if(this.name=="Internet Explorer Mobile"){if(!match){match=["","msie",11];name="Internet Explorer"}}else{if(name=="Chrome"&&this.name=="Safari"){return true}match=this.eval;name=this.name}}}}});if(match){var browser={name:name,accessName:match[1]||"",version:match[2]||"0",canvas:this.canvas(),svg:this.svg(),vml:this.vml()};browser[match[1]]=match[1]}else{browser={name:"Other",browser:"other",version:""}}return browser},getOS:function(){var match=null;var version="";var userAgent=navigator.userAgent;var os="Other";var osTypes={ios:{name:"iOS",regex:new RegExp("(?:i(?:Pad|Phone|Pod)(?:.*)CPU(?: iPhone)? OS )([^\\s;]+)")},android:{name:"Android",regex:new RegExp("(?:(Android |HTC_|Silk/))([^\\s;]+)")},webos:{name:"webOS",regex:new RegExp("(?:(?:webOS|hpwOS)/)([^\\s;]+)")},blackberry:{name:"BlackBerry",regex:new RegExp("(?:BlackBerry(?:.*)Version/)([^\\s;]+)")},rimTablet:{name:"RIMTablet",regex:new RegExp("(?:RIM Tablet OS )([^\\s;]+)")},chrome:{name:"Chrome OS",regex:new RegExp("CrOS")},mac:{name:"MacOS",regex:new RegExp("mac")},win:{name:"Windows",regex:new RegExp("win")},linux:{name:"Linux",regex:new RegExp("linux")},bada:{name:"Bada",regex:new RegExp("(?:Bada/)([^\\s;]+)")},other:{name:"Other"}};var osys="";var clientStrings=[{s:"Windows 3.11",r:/Win16/},{s:"Windows 95",r:/(Windows 95|Win95|Windows_95)/},{s:"Windows ME",r:/(Win 9x 4.90|Windows ME)/},{s:"Windows 98",r:/(Windows 98|Win98)/},{s:"Windows CE",r:/Windows CE/},{s:"Windows 2000",r:/(Windows NT 5.0|Windows 2000)/},{s:"Windows XP",r:/(Windows NT 5.1|Windows XP)/},{s:"Windows Server 2003",r:/Windows NT 5.2/},{s:"Windows Vista",r:/Windows NT 6.0/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 10",r:/(Windows 10|Windows NT 10)/},{s:"Windows NT 4.0",r:/(Windows NT 4.0|WinNT4.0|WinNT|Windows NT)/},{s:"Windows ME",r:/Windows ME/},{s:"Android",r:/Android/},{s:"Open BSD",r:/OpenBSD/},{s:"Sun OS",r:/SunOS/},{s:"Linux",r:/(Linux|X11)/},{s:"BB10",r:/BB10/},{s:"MeeGo",r:/MeeGo/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:"QNX",r:/QNX/},{s:"UNIX",r:/UNIX/},{s:"BeOS",r:/BeOS/},{s:"OS/2",r:/OS\/2/},{s:"Search Bot",r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/}];for(var id in clientStrings){var cs=clientStrings[id];if(cs.r.test(userAgent)){osys=cs.s;break}}var osVersion="";if(/Windows/.test(osys)){osVersion=/Windows (.*)/.exec(osys)[1];osys="Windows"}if(/BB10/.test(osys)){osVersion="10";osys="BlackBerry"}switch(os){case"Mac OS X":osVersion=/Mac OS X (10[\.\_\d]+)/.exec(userAgent)[1];break;case"Android":osVersion=/Android ([\.\_\d]+)/.exec(userAgent)[1];break;case"iOS":osVersion=/OS (\d+)_(\d+)_?(\d+)?/.exec(nVer);osVersion=osVersion[1]+"."+osVersion[2]+"."+(osVersion[3]|0);break}if(osVersion!=""){version=osVersion}$.each(osTypes,function(index,value){match=userAgent.match(this.regex)||userAgent.toLowerCase().match(this.regex);if(match){if(!this.name.match(/Windows|Linux|MacOS/)){if(match[1]&&(match[1]=="HTC_"||match[1]=="Silk/")){version="2.3"}else{version=match[match.length-1]}}os={name:this.name,version:version,platform:navigator.platform};return false}});if(os&&os.name=="Other"){os.name=osys}if(os&&os.name!=""&&osys!=""){os.name=osys}if(os&&os.version==""&&osVersion!=""){os.version=osVersion}return os}}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxresponsivepanel.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxresponsivepanel.js
new file mode 100644 (file)
index 0000000..9efb492
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxResponsivePanel","",{});a.extend(a.jqx._jqxResponsivePanel.prototype,{defineInstance:function(){var b={width:null,height:null,collapseBreakpoint:1000,collapseWidth:null,toggleButton:null,toggleButtonSize:30,animationType:"fade",animationDirection:"left",animationShowDelay:"fast",animationHideDelay:"fast",autoClose:true,initContent:null,_collapsed:false,_opened:false,_init:false,_ie7:(a.jqx.browser.msie&&a.jqx.browser.version<8),events:["collapse","expand","open","close"]};a.extend(true,this,b)},createInstance:function(){var b=this;if(b.initContent&&b._init===false){b.initContent();b._init=true}b._render(true)},_render:function(c){var d=this;if(c===true&&d.toggleButton){d._toggleButton=a(d.toggleButton);if(d._toggleButton.length===0){throw new Error('jqxResponsivePanel: Invalid toggleButton selector: "'+d.toggleButton+'".')}var b=a('<div class="'+d.toThemeProperty("jqx-menu-minimized-button")+" "+d.toThemeProperty("jqx-responsive-panel-button-inner")+'"></div>');d._toggleButton.append(b)}d._setSize();d._addClasses();if(c===false){d._removeHandlers()}d._addHandlers();d._checkWindowSize()},render:function(){this._render(false)},refresh:function(b){if(b!==true){this._checkWindowSize()}},destroy:function(b){var c=this;c._removeHandlers();c.host.remove();if(b!==true&&c.toggleButton){c._toggleButton.remove()}},propertyChangedHandler:function(b,c,e,d){if(d!==e&&c!=="toggleButton"&&c!=="initContent"){switch(c){case"width":case"height":b.host.css(c,d);break;case"collapseBreakpoint":b._checkWindowSize();break;case"toggleButtonSize":if(b.toggleButton){b._toggleButton.css({width:d,height:d})}break;default:b.render()}}},open:function(){var b=this;if(b._collapsed===true&&b._opened===false){function d(){b.host.show();b._opened=true;b._raiseEvent("2");if(b.initContent&&b._init===false){b.initContent();b._init=true}}if(b._ie7===true){d();return}switch(b.animationType){case"fade":b.host.fadeIn(b.animationShowDelay,function(){b._raiseEvent("2");b._opened=true;if(b.initContent&&b._init===false){b.initContent();b._init=true}});break;case"slide":var c=b.animationDirection;if(c==="top"){c="up"}else{if(c==="bottom"){c="down"}}b._slide(b.host,{mode:"show",direction:c,duration:b.animationShowDelay});break;case"none":d();break}}},close:function(){var b=this;if(b._collapsed===true&&b._opened===true){if(b._ie7===true){b.host.hide();b._opened=false;b._raiseEvent("3");return}switch(b.animationType){case"fade":b.host.fadeOut(b.animationHideDelay,function(){b._opened=false;b._raiseEvent("3")});break;case"slide":var c=b.animationDirection;if(c==="top"){c="up"}else{if(c==="bottom"){c="down"}}b._slide(b.host,{mode:"hide",direction:c,duration:b.animationHideDelay});break;case"none":b.host.hide();b._opened=false;b._raiseEvent("3");break}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_setSize:function(){var b=this;b.host.css("width",b.width);b.host.css("height",b.height);if(b.toggleButton){b._toggleButton.css({width:b.toggleButtonSize,height:b.toggleButtonSize})}},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-responsive-panel"));b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-rc-all"));if(b.toggleButton){b._toggleButton.addClass(b.toThemeProperty("jqx-responsive-panel-button"));b._toggleButton.addClass(b.toThemeProperty("jqx-fill-state-normal"));b._toggleButton.addClass(b.toThemeProperty("jqx-rc-all"))}},isCollapsed:function(){return this._collapsed},isOpened:function(){return this._opened},_addHandlers:function(){var b=this,c=b.element.id;b.addHandler(b.host,"click.jqxResponsivePanel"+c,function(d){d.stopPropagation()});b.addHandler(a(document),"click.jqxResponsivePanel"+c,function(){if(b._collapsed===true&&b.autoClose===true){b.close()}});b.addHandler(a(window),"resize.jqxResponsivePanel"+c,function(){setTimeout(function(){b._checkWindowSize()},0)});if(b.toggleButton){b.addHandler(b._toggleButton,"mouseenter.jqxResponsivePanel"+c,function(){b._toggleButton.addClass(b.toThemeProperty("jqx-fill-state-hover"))});b.addHandler(b._toggleButton,"mouseleave.jqxResponsivePanel"+c,function(){b._toggleButton.removeClass(b.toThemeProperty("jqx-fill-state-hover"))});b.addHandler(b._toggleButton,"mousedown.jqxResponsivePanel"+c,function(){b._toggleButton.addClass(b.toThemeProperty("jqx-fill-state-pressed"))});b.addHandler(a(document),"mouseup.jqxResponsivePanel"+c,function(){b._toggleButton.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))});b.addHandler(b._toggleButton,"click.jqxResponsivePanel"+c,function(d){d.stopPropagation();if(b._opened===true){b.close()}else{b.open()}})}},_removeHandlers:function(){var b=this,c=b.element.id;b.removeHandler(b.host,"click.jqxResponsivePanel"+c);b.removeHandler(a(document),"click.jqxResponsivePanel"+c);b.removeHandler(a(window),"resize.jqxResponsivePanel"+c);if(b.toggleButton){b.removeHandler(b._toggleButton,"mouseenter.jqxResponsivePanel"+c);b.removeHandler(b._toggleButton,"mouseleave.jqxResponsivePanel"+c);b.removeHandler(b._toggleButton,"mousedown.jqxResponsivePanel"+c);b.removeHandler(a(document),"mouseup.jqxResponsivePanel"+c);b.removeHandler(b._toggleButton,"click.jqxResponsivePanel"+c)}},_checkWindowSize:function(){var c=this;var b=this.host.parent().width();if(c._collapsed===false&&b<=c.collapseBreakpoint){if(c.toggleButton){c._toggleButton.show()}if(c._opened===false){c.host.hide()}c.host.removeClass(c.toThemeProperty("jqx-responsive-panel-expanded"));c.host.addClass(c.toThemeProperty("jqx-responsive-panel-collapsed"));c._collapsed=true;c._raiseEvent("0");if(c.collapseWidth){c.host.width(c.collapseWidth)}c.host.trigger("resize")}else{if(c._collapsed===true&&b>c.collapseBreakpoint){if(c.collapseWidth){c.host.width(c.width)}if(c.toggleButton){c._toggleButton.hide()}if(c._opened===false){c.host.show()}c.host.removeClass(c.toThemeProperty("jqx-responsive-panel-collapsed"));c.host.addClass(c.toThemeProperty("jqx-responsive-panel-expanded"));c._collapsed=false;c._raiseEvent("1");if(c.initContent&&c._init===false){c.initContent();c._init=true}c.host.trigger("resize")}}},_slide:function(f,e){var m=this;if(!m.activeAnimations){m.activeAnimations=[]}if(m.activeAnimations.length>0){for(var k=0;k<m.activeAnimations.length;k++){m.activeAnimations[k].clearQueue();m.activeAnimations[k].finish()}}else{f.clearQueue();f.finish()}var h="ui-effects-";var d={save:function(s,t){for(var o=0;o<t.length;o++){if(t[o]!==null&&s.length>0){s.data(h+t[o],s[0].style[t[o]])}}},restore:function(s,u){var t,o;for(o=0;o<u.length;o++){if(u[o]!==null){t=s.data(h+u[o]);if(t===undefined){t=""}s.css(u[o],t)}}},createWrapper:function(o){if(o.parent().is(".ui-effects-wrapper")){return o.parent()}var s={width:o.outerWidth(true),height:o.outerHeight(true),"float":o.css("float")},v=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i={width:o.width(),height:o.height()},u=document.activeElement;try{u.id}catch(t){u=document.body}o.wrap(v);if(o[0]===u||a.contains(o[0],u)){a(u).focus()}v=o.parent();if(o.css("position")==="static"){v.css({position:"relative"});o.css({position:"relative"})}else{a.extend(s,{position:o.css("position"),zIndex:o.css("z-index")});a.each(["top","left","bottom","right"],function(w,x){s[x]=o.css(x);if(isNaN(parseInt(s[x],10))){s[x]="auto"}});o.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}o.css(i);return v.css(s).show()},removeWrapper:function(i){var o=document.activeElement;if(i.parent().is(".ui-effects-wrapper")){i.parent().replaceWith(i);if(i[0]===o||a.contains(i[0],o)){a(o).focus()}}return i}};var p=["position","top","bottom","left","right","width","height"],l=e.mode,r=l==="show",q=e.direction||"left",g=(q==="up"||q==="down")?"top":"left",c=(q==="up"||q==="left"),b,j={};d.save(f,p);f.show();b=e.distance||f[g==="top"?"outerHeight":"outerWidth"](true);d.createWrapper(f).css({overflow:"hidden"});if(r){f.css(g,c?(isNaN(b)?"-"+b:-b):b)}j[g]=(r?(c?"+=":"-="):(c?"-=":"+="))+b;var n=function(){f.clearQueue();f.stop(true,true)};m.activeAnimations.push(f);f.animate(j,{duration:e.duration,easing:e.easing,complete:function(){m.activeAnimations.pop(f);if(l==="show"){m._opened=true;m._raiseEvent("2");if(m.initContent&&m._init===false){m.initContent();m._init=true}}else{if(l==="hide"){f.hide();m._opened=false;m._raiseEvent("3")}}d.restore(f,p);d.removeWrapper(f)}});return n}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxribbon.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxribbon.js
new file mode 100644 (file)
index 0000000..0095df6
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxRibbon","",{});a.extend(a.jqx._jqxRibbon.prototype,{defineInstance:function(){var b={width:null,height:"auto",mode:"default",position:"top",selectedIndex:-1,selectionMode:"click",popupCloseMode:"click",animationType:"fade",animationDelay:400,scrollPosition:"both",disabled:false,rtl:false,scrollStep:10,scrollDelay:30,reorder:false,initContent:null,_roundedCorners:true,_removeByDrag:false,events:["select","unselect","change","_removeByDrag","reorder"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._browser=a.jqx.browser;if(b.mode!=="popup"&&b.selectedIndex===-1){b.selectedIndex=0}b._originalHTML=b.host.html();b._render(true)},render:function(){this._render()},refresh:function(b){if(b!==true){this._render()}},destroy:function(){var b=this;b._removeHandlers();b.host.remove()},selectAt:function(b){this._selectAt(b)},clearSelection:function(){this._clearSelection()},disableAt:function(b){var c=this;c._items[b]._disabled=true;a(c._items[b]).addClass(c.toThemeProperty("jqx-fill-state-disabled"));if(b===c.selectedIndex){c._clearSelection()}},enableAt:function(b){var c=this;c._items[b]._disabled=false;a(c._items[b]).removeClass(c.toThemeProperty("jqx-fill-state-disabled"))},hideAt:function(b){var c=this;a(c._items[b]).css("display","none");c._checkScrollButtons();if(b===c.selectedIndex){c._clearSelection()}else{c._updatePositions()}},showAt:function(b){var c=this;if(c._orientation==="horizontal"){a(c._items[b]).css("display","inline-block")}else{a(c._items[b]).css("display","inherit")}c._checkScrollButtons();c._updatePositions()},val:function(b){var c=this;if(b){c._selectAt(b)}else{return c.selectedIndex}},addAt:function(b,e){var c=this;c._removeHandlers();var f=a('<li class="'+c.toThemeProperty("jqx-ribbon-item")+" "+c.toThemeProperty("jqx-ribbon-item-"+c.position)+'">'+e.title+"</li>");var d=a('<div class="'+c.toThemeProperty("jqx-widget-content")+" "+c.toThemeProperty("jqx-ribbon-content-section")+" "+c.toThemeProperty("jqx-ribbon-content-section-"+c.position)+'"></div>');d.append(e.content);switch(c.position){case"top":f.addClass(c.toThemeProperty("jqx-rc-t"));d.addClass(c.toThemeProperty("jqx-rc-b"));break;case"bottom":f.addClass(c.toThemeProperty("jqx-rc-b"));d.addClass(c.toThemeProperty("jqx-rc-t"));break;case"left":f.addClass(c.toThemeProperty("jqx-rc-l"));d.addClass(c.toThemeProperty("jqx-rc-r"));break;case"right":f.addClass(c.toThemeProperty("jqx-rc-r"));d.addClass(c.toThemeProperty("jqx-rc-l"));break}if(c.mode==="popup"){d.addClass(c.toThemeProperty("jqx-ribbon-content-section-popup"));if(c._orientation==="horizontal"){d.addClass(c.toThemeProperty("jqx-ribbon-content-section-horizontal-popup"))}else{d.addClass(c.toThemeProperty("jqx-ribbon-content-section-vertical-popup"))}}if(c.rtl===true){f.addClass(c.toThemeProperty("jqx-ribbon-item-rtl"))}if(c._items.length-1>=b){a(c._items[b]).before(f);a(c._contentSections[b]).before(d)}else{c._header.append(f);c._content.append(d)}c._updateItems();c._addHandlers();c._checkScrollButtons();if(b<=c.selectedIndex){c.selectedIndex++}c._updatePositions()},removeAt:function(b){var c=this;if(b===c.selectedIndex){c._clearSelection()}a(c._items[b]).add(c._contentSections[b]).remove();c._updateItems();c._updatePositions()},updateAt:function(b,c){var d=this;a(d._items[b]).html(c.newTitle);a(d._contentSections[b]).html(c.newContent);d._items[b]._isInitialized=false;if(d.initContent&&b===d.selectedIndex){d.initContent(b);d._items[b]._isInitialized=true}d._updatePositions()},setPopupLayout:function(c,f,d,b){var e=this;if(e.mode==="popup"){if(!a(e._contentSections[c]).attr("data-width")){if(a(e._contentSections[c])[0].style.width){a(e._contentSections[c]).attr("data-width",a(e._contentSections[c])[0].style.width)}if(a(e._contentSections[c])[0].style.height){a(e._contentSections[c]).attr("data-height",a(e._contentSections[c])[0].style.height)}}if(d){a(e._contentSections[c]).css("width",d)}if(b){a(e._contentSections[c]).css("height",b)}e._contentSections[c]._layout=f;e._positionContent(c)}},propertyChangedHandler:function(c,d,f,e){if(e!==f){switch(d){case"width":case"height":c.host.css(d,e);c._updateSize();break;case"position":c._render();break;case"mode":c._content.width("auto");c._removeHandlers(null,f);c._render();break;case"selectedIndex":c._selectAt(e,f);break;case"selectionMode":c._removeHandlers(f);c._addHandlers();break;case"scrollPosition":c._scrollButtons.removeClass(c.toThemeProperty("jqx-ribbon-scrollbutton-"+f));c._scrollButtons.addClass(c.toThemeProperty("jqx-ribbon-scrollbutton-"+e));var b=a(c._scrollButtons[0]);var g=a(c._scrollButtons[1]);c._scrollButtons.removeClass(c.toThemeProperty("jqx-rc-tr"));c._scrollButtons.removeClass(c.toThemeProperty("jqx-rc-bl"));b.removeClass(c.toThemeProperty("jqx-rc-tl"));g.removeClass(c.toThemeProperty("jqx-rc-br"));c._scrollButtonRc(b,g);c._checkScrollButtons();c._updatePositions();break;case"disabled":if(e===true){c._removeHandlers();c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"))}else{c.host.removeClass(c.toThemeProperty("jqx-fill-state-disabled"));c._addHandlers()}break;case"theme":a.jqx.utilities.setTheme(f,e,c.host);break;case"rtl":if(e===true){c._header.addClass(c.toThemeProperty("jqx-ribbon-header-rtl"));c._items.addClass(c.toThemeProperty("jqx-ribbon-item-rtl"))}else{c._header.removeClass(c.toThemeProperty("jqx-ribbon-header-rtl"));c._items.removeClass(c.toThemeProperty("jqx-ribbon-item-rtl"))}c._positionSelectionToken(c.selectedIndex);break}}},_raiseEvent:function(g,e){var c=this.events[g];var f=new jQuery.Event(c);f.owner=this;f.args=e;var b;try{b=this.host.trigger(f)}catch(d){}return b},_render:function(c){var d=this;if(c!==true){d._removeHandlers()}d._selectionTokenOffsetY=0;switch(d._browser.browser){case"mozilla":d._browserWidthRtlFlag=0;d._browserScrollRtlFlag=1;d._selectionTokenOffsetX=1;break;case"msie":d._browserWidthRtlFlag=0;d._browserScrollRtlFlag=-1;if(d._browser.version==="8.0"){d._selectionTokenOffsetX=1}else{if(d._browser.version==="7.0"){d._selectionTokenOffsetX=0;if(d.mode==="popup"&&(d.position==="bottom"||d.position==="right")){d._selectionTokenOffsetY=2}}else{d._selectionTokenOffsetX=0}}break;default:d._browserWidthRtlFlag=1;d._browserScrollRtlFlag=1;d._selectionTokenOffsetX=0}if(c===true){var b=d.host.children();d._header=a(b[0]);d._content=a(b[1]);d._checkStructure(b)}d._header.css("float","none");d._content.css("padding","0px");d.host.width(d.width);d.host.height(d.height);if(d.position==="bottom"||d.position==="right"){d._content.after(d._header)}if(d.position==="top"||d.position==="bottom"){d._orientation="horizontal"}else{d._orientation="vertical"}if(d.position==="right"){d._header.css("float","right")}else{if(d.position==="left"){d._header.css("float","left")}}d._contentSections=d._content.children();a.each(d._contentSections,function(){if(a(this).attr("data-width")!==undefined){a(this).css("width",a(this).attr("data-width"));a(this).css("height",a(this).attr("data-height"));a(this).removeAttr("data-width");a(this).removeAttr("data-height")}});if(c===true){d._selectionToken=a('<div class="'+d.toThemeProperty("jqx-ribbon-selection-token")+" "+d.toThemeProperty("jqx-ribbon-selection-token-"+d.position)+" "+d.toThemeProperty("jqx-widget-content")+'"></div>');d.host.append(d._selectionToken)}d._updateItems();d._addClasses();if(c===true){d._appendScrollButtons();d._checkScrollButtons()}d._allowSelection=true;if(d.selectedIndex!==-1){a(d._items[d.selectedIndex]).addClass(d.toThemeProperty("jqx-widget-content")).addClass(d.toThemeProperty("jqx-ribbon-item-selected"));d._positionSelectionToken(d.selectedIndex);a(d._contentSections[d.selectedIndex]).css("display","block");if(d.initContent){d.initContent(d.selectedIndex);d._items[d.selectedIndex]._isInitialized=true}}if(!d.disabled){d._addHandlers()}else{d.host.addClass(d.toThemeProperty("jqx-fill-state-disabled"))}a.jqx.utilities.resize(d.host,function(){d._updateSize()})},_updateSize:function(){var b=this;if(b._browser.version==="7.0"&&b._browser.browser==="msie"){if(b._orientation==="horizontal"){b._header.css("width",(b.host.width()-parseInt(b._header.css("padding-left"),10)-parseInt(b._header.css("padding-right"),10)-parseInt(b._header.css("border-left-width"),10)-parseInt(b._header.css("border-right-width"),10)));b._contentSections.width(b._content.width()-parseInt(b._contentSections.css("border-left-width"),10)-parseInt(b._contentSections.css("border-right-width"),10)-parseInt(b._contentSections.css("padding-left"),10)-parseInt(b._contentSections.css("padding-right"),10));if(b.mode==="default"&&typeof b.height==="string"&&b.height.indexOf("%")!==-1){b._contentSections.height(b._content.height()-b._header.height()-parseInt(b._contentSections.css("border-bottom-width"),10)-parseInt(b._contentSections.css("border-top-width"),10)-1)}}else{b._header.css("height",(b.host.height()-parseInt(b._header.css("padding-top"),10)-parseInt(b._header.css("padding-bottom"),10)-parseInt(b._header.css("border-top-width"),10)-parseInt(b._header.css("border-bottom-width"),10)));b._contentSections.height(b._content.height()-parseInt(b._contentSections.css("border-top-width"),10)-parseInt(b._contentSections.css("border-bottom-width"),10)-parseInt(b._contentSections.css("padding-top"),10)-parseInt(b._contentSections.css("padding-bottom"),10));if(b.mode==="default"&&typeof b.width==="string"&&b.height.indexOf("%")!==-1){var c=b.position==="left"?parseInt(b._contentSections.css("border-left-width"),10)+parseInt(b._contentSections.css("border-right-width"),10)+1:0;b._contentSections.width(b._content.width()-b._header.width()-c)}}}b._checkScrollButtons(true);b._updatePositions();if(b.mode==="popup"){b._positionPopup()}},_stopAnimation:function(){var b=this;if(!b._allowSelection){b.selectedIndex=b._animatingIndex;a(b._contentSections[b._animatingIndex]).finish();b._clearSelection(true,b._animatingIndex);b._allowSelection=true}},_selectAt:function(b,e){var c=this;if(e===undefined){e=c.selectedIndex}if(b!==e){c._stopAnimation();if(c._allowSelection){c._animatingIndex=b;c._clearSelection(true,e);c._allowSelection=false;c._selecting=b;if(c.selectionMode==="click"){a(c._items[b]).removeClass(c.toThemeProperty("jqx-fill-state-hover"));a(c._items[b]).removeClass(c.toThemeProperty("jqx-ribbon-item-hover"))}if(c.mode==="popup"&&c._roundedCorners){c._header.removeClass(c.toThemeProperty("jqx-rc-all"));switch(c.position){case"top":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-t"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-b"));break;case"bottom":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-b"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-t"));break;case"left":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-l"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-r"));break;case"right":c._header.add(c._items).addClass(c.toThemeProperty("jqx-rc-r"));c._contentSections.addClass(c.toThemeProperty("jqx-rc-l"));break}}a(c._items[b]).addClass(c.toThemeProperty("jqx-widget-content")).addClass(c.toThemeProperty("jqx-ribbon-item-selected"));c._selectionToken.css("display","block");c._updatePositions(b);switch(c.animationType){case"fade":a(c._contentSections[b]).fadeToggle(c.animationDelay,function(){c._animationComplete(b,e)});break;case"slide":var d=c.position;if(d==="top"){d="up"}else{if(d==="bottom"){d="down"}}c.slideAnimation=c._slide(a(c._contentSections[b]),{mode:"show",direction:d,duration:c.animationDelay},b,e);break;case"none":a(c._contentSections[b]).css("display","block");c._animationComplete(b,e);break}}else{}}},_clearSelection:function(b,e){var c=this;if(c.mode==="popup"){if(c._roundedCorners){c._header.addClass(c.toThemeProperty("jqx-rc-all"))}}c._selecting=-1;if(e===undefined){e=c.selectedIndex}a(c._items[e]).removeClass(c.toThemeProperty("jqx-widget-content")).removeClass(c.toThemeProperty("jqx-ribbon-item-selected"));c._selectionToken.css("display","none");if(b!==true&&c.animationType!=="none"){if(c.animationType==="fade"){a(c._contentSections[e]).fadeOut(c.animationDelay,function(){c._clearSelectionComplete(e)})}else{if(c.animationType==="slide"){var d=c.position;if(d==="top"){d="up"}else{if(d==="bottom"){d="down"}}c._stopAnimation();e=c.selectedIndex;c.slideAnimation=c._slide(a(c._contentSections[e]),{mode:"hide",direction:d,duration:c.animationDelay},e);c.selectedIndex=-1}}}else{a(c._contentSections[e]).css("display","none");c._clearSelectionComplete(e,b)}},_addHandlers:function(){var g=this,b=g.element.id;var i=function(m){if(g.popupCloseMode==="click"&&g.mode==="popup"){if(m.target.tagName==="svg"){return}var l=a(m.target).closest(".jqx-ribbon");if(l.length>0&&l.attr("id")!==b){g._clearSelection();return}if(m.target.className.indexOf("jqx-ribbon-content-popup")!==-1){g._clearSelection();return}if(a(m.target).ischildof(g.host)){return}var k=false;a.each(a(m.target).parents(),function(){if(this.className!==undefined){if(this.className.indexOf){if(this.className.indexOf("jqx-ribbon")!==-1){k=true;return false}if(this.className.indexOf("jqx-ribbon")!==-1){if(b===this.id){k=true}return false}}}});if(!k){g._clearSelection()}}};if(g.selectionMode==="click"){g.addHandler(g._items,"click.ribbon"+b,function(l){var m=a(l.target).closest("li")[0],k=m._index;if(!g._items[k]._disabled){if(k!==g.selectedIndex){g._selectAt(k)}else{if(g.mode==="popup"){if(g.popupCloseMode!=="none"){a(m).addClass(g.toThemeProperty("jqx-fill-state-hover"));a(m).addClass(g.toThemeProperty("jqx-ribbon-item-hover"));g._clearSelection()}}}}});var d=function(k){return((g._selecting!==k&&g._allowSelection===false)||((g._selecting===-1||g.selectedIndex!==k)&&g._allowSelection===true))&&!g._items[k]._disabled};g.addHandler(g._items,"mouseenter.ribbon"+b,function(k){var l=a(k.target).closest("li")[0];if(d(l._index)){a(l).addClass(g.toThemeProperty("jqx-fill-state-hover"));a(l).addClass(g.toThemeProperty("jqx-ribbon-item-hover"))}});g.addHandler(g._items,"mouseleave.ribbon"+b,function(k){var l=a(k.target).closest("li")[0];if(d(l._index)){a(l).removeClass(g.toThemeProperty("jqx-fill-state-hover"));a(l).removeClass(g.toThemeProperty("jqx-ribbon-item-hover"))}});if(g.mode==="popup"){g.addHandler(g.host,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(g._contentSections,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(a(document),"mousedown.ribbon"+b,function(k){i(k)})}var j=false,e;if(g._removeByDrag===true){g._items.addClass(g.toThemeProperty("jqx-ribbon-item-docking-layout"))}g.addHandler(g._items,"mousedown.ribbon"+b,function(k){var l=a(k.target).closest("li")[0];if((g.reorder===true||g._removeByDrag===true)&&l._index===g.selectedIndex){j=true;e=l._index;l.style.cursor="move"}});g.addHandler(g.host,"mouseup.ribbon"+b,function(){j=false;g._items.css("cursor","")});g.addHandler(g._items,"mouseenter.ribbon"+b,function(n){if(g.reorder===true&&j===true){var l=a(n.target).closest("li")[0]._index,m=a(g._items[e]).html(),k=a(g._contentSections[e]).contents().detach();g._supressSelectionEvents=true;g._oldReorderIndex=e;g.removeAt(e);g.clearSelection();g.addAt(l,{title:m,content:k});g.selectAt(l);setTimeout(function(){a(g._items[l]).mousedown()},0)}});g.addHandler(g._header,"mouseleave.ribbon"+b,function(k){if(g._removeByDrag===true&&j===true){g._raiseEvent("3",{draggedIndex:e,x:k.pageX,y:k.pageY});if(g._items.length>1){g.removeAt(e)}j=false;k.target.style.cursor=""}})}else{if(g.selectionMode==="hover"){g.addHandler(g._items,"mouseenter.ribbon"+b,function(l){var k=a(l.target).closest("li")[0]._index;if(!g._items[k]._disabled&&k!==g.selectedIndex){g._selectAt(k)}});if(g.mode==="popup"){g.addHandler(g.host,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(g._contentSections,"mouseleave.ribbon"+b,function(){if(g.popupCloseMode==="mouseLeave"&&g.mode==="popup"){g._clearSelection()}});g.addHandler(a(document),"mousedown.ribbon"+b,function(k){i(k)});g.addHandler(g._items,"click.ribbon"+b,function(l){var k=a(l.target).closest("li")[0]._index;if(!g._items[k]._disabled){if(g.mode==="popup"){if(g.popupCloseMode!=="none"){g._clearSelection()}}}})}}}var h=(g.rtl&&g._browser.browser==="msie")?-1:1;var c=a(g._scrollButtons[0]);g.addHandler(c,"mousedown.ribbon"+b,function(){if(g._orientation==="horizontal"){g._timeoutNear=setInterval(function(){var k=g._header.scrollLeft();g._header.scrollLeft(k-g.scrollStep*h);g._updatePositions()},g.scrollDelay)}else{g._timeoutNear=setInterval(function(){var k=g._header.scrollTop();g._header.scrollTop(k-g.scrollStep);g._updatePositions()},g.scrollDelay)}return false});g.addHandler(c,"mouseup.ribbon"+b,function(){clearInterval(g._timeoutNear)});var f=a(g._scrollButtons[1]);g.addHandler(f,"mousedown.ribbon"+b,function(){if(g._orientation==="horizontal"){g._timeoutFar=setInterval(function(){var k=g._header.scrollLeft();g._header.scrollLeft(k+g.scrollStep*h);g._updatePositions()},g.scrollDelay)}else{g._timeoutFar=setInterval(function(){var k=g._header.scrollTop();g._header.scrollTop(k+g.scrollStep);g._updatePositions()},g.scrollDelay)}return false});g.addHandler(f,"mouseup.ribbon"+b,function(){clearInterval(g._timeoutFar)})},_removeHandlers:function(f,e){var c=this,g=c.element.id;if(!f){f=c.selectionMode}if(!e){e=c.mode}c.removeHandler(c._items,"mouseenter.ribbon"+g);if(f==="click"){c.removeHandler(c._items,"click.ribbon"+g);c.removeHandler(c._items,"mouseleave.ribbon"+g);c.removeHandler(c._items,"mousedown.ribbon"+g);c.removeHandler(c.host,"mouseup.ribbon"+g);c.removeHandler(c._header,"mouseleave.ribbon"+g)}else{if(f==="hover"){if(e==="popup"){c.removeHandler(c.host,"mouseleave.ribbon"+g)}}}var b=a(c._scrollButtons[0]);c.removeHandler(b,"mousedown.ribbon"+g);c.removeHandler(b,"mouseup.ribbon"+g);var d=a(c._scrollButtons[1]);c.removeHandler(d,"mousedown.ribbon"+g);c.removeHandler(d,"mouseup.ribbon"+g)},_checkStructure:function(c){var d=this;var f=c.length;if(f!==2){throw new Error("jqxRibbon: Invalid HTML structure. You need to add a ul and a div to the widget container.")}var b=d._header.children().length;var e=d._content.children().length;if(b!==e){throw new Error("jqxRibbon: Invalid HTML structure. For each list item you must have a corresponding div element.")}},_addClasses:function(){var d=this;d._contentSections.removeClass();d._content.removeClass();d._header.removeClass(d.toThemeProperty("jqx-rc-all jqx-widget-header jqx-disableselect jqx-rc-t jqx-rc-b jqx-rc-l jqx-rc-r jqx-rc-all jqx-ribbon-header-"+d._orientation+"-popup jqx-ribbon-header-bottom jqx-ribbon-header-auto jqx-ribbon-header-right jqx-ribbon-header-rtl"));d._items.removeClass(d.toThemeProperty("jqx-fill-state-disabled jqx-ribbon-item-rtl jqx-widget-content jqx-ribbon-item-selected jqx-rc-t jqx-rc-b jqx-rc-l jqx-rc-r jqx-ribbon-item-docking-layout jqx-ribbon-item jqx-ribbon-item-"+d.position));d.host.removeClass();d.host.addClass(d.toThemeProperty("jqx-widget")+" "+d.toThemeProperty("jqx-ribbon"));d._header.addClass(d.toThemeProperty("jqx-widget-header")+" "+d.toThemeProperty("jqx-disableselect")+" "+d.toThemeProperty("jqx-ribbon-header")+" "+d.toThemeProperty("jqx-ribbon-header-"+d._orientation));d._items.addClass(d.toThemeProperty("jqx-ribbon-item")+" "+d.toThemeProperty("jqx-ribbon-item-"+d.position));d._content.addClass(d.toThemeProperty("jqx-widget-content")+" "+d.toThemeProperty("jqx-ribbon-content")+" "+d.toThemeProperty("jqx-ribbon-content-"+d._orientation));d._contentSections.addClass(d.toThemeProperty("jqx-widget-content")+" "+d.toThemeProperty("jqx-ribbon-content-section")+" "+d.toThemeProperty("jqx-ribbon-content-section-"+d.position));if(d._roundedCorners){switch(d.position){case"top":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-t"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-b"));break;case"bottom":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-b"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-t"));break;case"left":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-l"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-r"));break;case"right":d._header.add(d._items).addClass(d.toThemeProperty("jqx-rc-r"));d._contentSections.addClass(d.toThemeProperty("jqx-rc-l"));break}}else{switch(d.position){case"top":d._items.addClass(d.toThemeProperty("jqx-rc-t"));break;case"bottom":d._items.addClass(d.toThemeProperty("jqx-rc-b"));break;case"left":d._items.addClass(d.toThemeProperty("jqx-rc-l"));break;case"right":d._items.addClass(d.toThemeProperty("jqx-rc-r"));break}}var c,b;if(d.mode==="popup"){if(d.selectedIndex===-1){if(d._roundedCorners){d.host.addClass(d.toThemeProperty("jqx-rc-all"));d._header.addClass(d.toThemeProperty("jqx-rc-all"))}}d.host.addClass(d.toThemeProperty("jqx-ribbon-popup"));d._header.addClass(d.toThemeProperty("jqx-ribbon-header-"+d._orientation+"-popup"));d._content.addClass(d.toThemeProperty("jqx-ribbon-content-popup"));d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-section-popup"));d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-popup-"+d.position));if(d._orientation==="horizontal"){d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-section-horizontal-popup"))}else{d._contentSections.addClass(d.toThemeProperty("jqx-ribbon-content-section-vertical-popup"))}d._positionPopup()}else{if(d._orientation==="horizontal"){if(d.height!=="auto"){b=d._header.outerHeight();if(d.position==="top"){d._content.css("padding-top",b)}else{d._header.addClass(d.toThemeProperty("jqx-ribbon-header-bottom"));d._content.css("padding-bottom",b)}}else{d._header.addClass(d.toThemeProperty("jqx-ribbon-header-auto"))}}else{if(d._orientation==="vertical"){if(d.width!=="auto"){c=d._header.outerWidth();if(d.position==="left"){d._content.css("padding-left",c)}else{d._header.addClass(d.toThemeProperty("jqx-ribbon-header-right"));d._content.css("padding-right",c)}}else{d.host.addClass(d.toThemeProperty("jqx-ribbon-auto"));d._header.addClass(d.toThemeProperty("jqx-ribbon-header-auto"));d._content.addClass(d.toThemeProperty("jqx-ribbon-content-auto-width"))}}}}if(d._browser.version==="7.0"&&d._browser.browser==="msie"){if(d._orientation==="horizontal"){d._header.css("width",(d.host.width()-parseInt(d._header.css("padding-left"),10)-parseInt(d._header.css("padding-right"),10)-parseInt(d._header.css("border-left-width"),10)-parseInt(d._header.css("border-right-width"),10)));d._items.height(d._items.height()-parseInt(d._items.css("padding-top"),10)-parseInt(d._items.css("padding-bottom"),10)-parseInt(d._items.css("border-top-width"),10)-parseInt(d._items.css("border-bottom-width"),10));d._contentSections.width(d._contentSections.width()-parseInt(d._contentSections.css("border-left-width"),10)-parseInt(d._contentSections.css("border-right-width"),10)-parseInt(d._contentSections.css("padding-left"),10)-parseInt(d._contentSections.css("padding-right"),10));if(d.mode==="default"){if(d.height!=="auto"){if(d.position==="top"){d._contentSections.css("padding-top",b)}else{d._contentSections.css("padding-bottom",b)}d._content.css("height",d.host.height()+2);d._contentSections.css("height",d._content.height()-parseInt(d._contentSections.css("border-bottom-width"),10)-parseInt(d._contentSections.css("border-top-width"),10)-1)}}else{}}else{var e;if(d.position==="left"){d._content.addClass(d.toThemeProperty("jqx-ribbon-content-left"));e=parseInt(d._contentSections.css("border-left-width"),10)+parseInt(d._contentSections.css("border-right-width"),10)+1}else{d._content.addClass(d.toThemeProperty("jqx-ribbon-content-right"));e=0}d._header.css("height",(d.host.height()-parseInt(d._header.css("padding-top"),10)-parseInt(d._header.css("padding-bottom"),10)-parseInt(d._header.css("border-top-width"),10)-parseInt(d._header.css("border-bottom-width"),10)));d._items.width(d._items.width()-parseInt(d._items.css("padding-left"),10)-parseInt(d._items.css("padding-right"),10)-parseInt(d._items.css("border-left-width"),10)-parseInt(d._items.css("border-right-width"),10));d._contentSections.height(d._contentSections.height()-parseInt(d._contentSections.css("border-top-width"),10)-parseInt(d._contentSections.css("border-bottom-width"),10)-parseInt(d._contentSections.css("padding-top"),10)-parseInt(d._contentSections.css("padding-bottom"),10));if(d.mode==="default"){if(d.width!=="auto"){if(d.position==="left"){d._contentSections.css("padding-left",c)}else{d._contentSections.css("padding-right",c)}d._contentSections.width(d._content.width()-d._header.width()-e)}}else{}}}if(d.rtl===true){d._header.addClass(d.toThemeProperty("jqx-ribbon-header-rtl"));d._items.addClass(d.toThemeProperty("jqx-ribbon-item-rtl"))}},_positionPopup:function(){var e=this;var c=(e._browser.version==="7.0"&&e._browser.browser==="msie");switch(e.position){case"top":e._content.css("top",e._header.outerHeight());break;case"bottom":if(!c){e._content.css("bottom",e._header.outerHeight())}else{e._content.css("bottom",e._header.height())}break;case"left":e._content.css("left",e._header.outerWidth());break;case"right":e._content.css("right",e._header.outerWidth());if(c){var b=e._content.children();for(var d=0;d<b.length;d++){var f=a(b[d]);f.css("right",f.outerWidth())}}break}},_appendScrollButtons:function(){var d=this;var e='<div class="'+d.toThemeProperty("jqx-ribbon-scrollbutton")+" "+d.toThemeProperty("jqx-ribbon-scrollbutton-"+d.position)+" "+d.toThemeProperty("jqx-ribbon-scrollbutton-"+d.scrollPosition)+" "+d.toThemeProperty("jqx-widget-header")+'"><div class="'+d.toThemeProperty("jqx-ribbon-scrollbutton-inner")+'"></div></div>';var b=a(e);var f=a(e);var c=(d._orientation==="horizontal")?["left","right"]:["up","down"];b.find(".jqx-ribbon-scrollbutton-inner").addClass(d.toThemeProperty("jqx-icon-arrow-"+c[0]));f.find(".jqx-ribbon-scrollbutton-inner").addClass(d.toThemeProperty("jqx-icon-arrow-"+c[1]));b.addClass(d.toThemeProperty("jqx-ribbon-scrollbutton-lt"));f.addClass(d.toThemeProperty("jqx-ribbon-scrollbutton-rb"));d._scrollButtons=b.add(f);d.host.append(d._scrollButtons);if(d._orientation==="horizontal"){d._scrollButtons.height(d._header.height())}else{d._scrollButtons.width(d._header.width())}d._scrollButtonRc(b,f);switch(d.position){case"top":case"bottom":b.css("margin-left","-1px");f.css("margin-right","-1px");break;case"right":case"left":b.css("margin-top","-1px");f.css("margin-bottom","-1px");break}},_scrollButtonRc:function(b,d){var c=this;if(!c.roundedCorners){return}switch(c.position){case"top":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-tl"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-tr"))}break;case"bottom":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-bl"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-br"))}break;case"left":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-tl"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-bl"))}break;case"right":if(c.scrollPosition!=="far"){b.addClass(c.toThemeProperty("jqx-rc-tr"))}if(c.scrollPosition!=="near"){d.addClass(c.toThemeProperty("jqx-rc-br"))}break}},_updateItems:function(){var c=this;c._items=c._header.children();c._items.attr("unselectable","on");c._contentSections=c._content.children();for(var b=0;b<c._items.length;b++){if(c._items[b]._index===undefined){c._items[b]._disabled=false;c._items[b]._isInitialized=false;c._contentSections[b]._layout="default"}if(c._items[b]._index===c.selectedIndex){c.selectedIndex=b}c._items[b]._index=b;c._contentSections[b]._index=b}},_positionContent:function(f){var g=this;var c,k,l,h,b,j;if(g._orientation==="horizontal"){c=g.host.outerWidth();k=g.host.offset().left;l=a(g._items[f]).outerWidth();h=a(g._items[f]).offset().left;b=a(g._contentSections[f]).outerWidth();j="left"}else{c=g.host.outerHeight();k=g.host.offset().top;l=a(g._items[f]).outerHeight();h=a(g._items[f]).offset().top;b=a(g._contentSections[f]).outerHeight();j="top"}var e=a(g._contentSections[f]);var d=function(m){if(m<0){m=0}else{if(m+b>c){m=c-b}}e.css(j,m)};var i;switch(e[0]._layout){case"near":i=h-k;d(i);break;case"far":i=h-k-(b-l);d(i);break;case"center":i=h-k-(b-l)/2;d(i);break;default:e.css(j,"")}},_checkScrollButtons:function(d){var f=this;var g=0;a.each(f._items,function(){var i=a(this);if(i.css("display")!=="none"){g+=(f._orientation==="horizontal")?i.outerWidth(true):i.outerHeight(true)}});var h=f._orientation==="horizontal"?["margin-left","margin-right"]:["margin-top","margin-bottom"];var b=(f._orientation==="horizontal")?f._header.width():f._header.height();if(!f._itemMargins){f._itemMargins=[];f._itemMargins.push(a(f._items[0]).css(h[0]));f._itemMargins.push(a(f._items[f._items.length-1]).css(h[1]))}if(g>b){f._scrollButtons.css("display","block");var e=f.rtl?f._itemMargins[0]:17;var c=f.rtl?f._itemMargins[0]:17;switch(f.scrollPosition){case"near":c=0;e=34;break;case"far":c=34;e=17;break}a(f._items[0]).css(h[0],e);a(f._items[f._items.length-1]).css(h[1],c)}else{a(f._items[0]).css(h[0],f._itemMargins[0]);a(f._items[f._items.length-1]).css(h[1],f._itemMargins[1]);f._scrollButtons.css("display","none")}if(d===true){if(f._orientation==="horizontal"){f._scrollButtons.height(f._header.height())}else{f._scrollButtons.width(f._header.width())}}},_positionSelectionToken:function(h){var i=this;if(h!==-1){var e=a(i._items[h]);var j,b,d,k,g;if(i._orientation==="horizontal"){var f,m;if(i.rtl===true){if(i._browserWidthRtlFlag===1){f=i._header[0].scrollWidth-i._header[0].clientWidth}else{f=0}m=i._browserScrollRtlFlag}else{f=0;m=1}d=e[0].offsetLeft+f-i._header[0].scrollLeft*m-i._selectionTokenOffsetX+2;g=i._header.outerHeight()-1;var c=e.width()+parseInt(e.css("padding-left"),10)+parseInt(e.css("padding-right"),10);if(i.position==="top"){j=g-i._selectionTokenOffsetY;b=""}else{j="";b=g-i._selectionTokenOffsetY}i._selectionToken.css({top:j,bottom:b,left:d,width:c})}else{j=e[0].offsetTop-i._header[0].scrollTop-i._selectionTokenOffsetX+2;g=i._header.outerWidth()-1;var l=e.height()+parseInt(e.css("padding-top"),10)+parseInt(e.css("padding-bottom"),10);if(i.position==="left"){d=g-i._selectionTokenOffsetY;k=""}else{d="";k=g-i._selectionTokenOffsetY}i._selectionToken.css({top:j,left:d,right:k,height:l})}}},_updatePositions:function(b){var c=this;if(isNaN(b)){b=c.selectedIndex}if(b!==-1){c._positionSelectionToken(b);if(c.mode==="popup"&&c._contentSections[b]._layout!=="default"){c._positionContent(b)}if(c.mode==="popup"&&(c.position==="left"||c.position==="right")){c._content.width("auto");var d=c._contentSections[b].style.width&&c._contentSections[b].style.width.toString().indexOf("%")>=0;if(d){c._content[0].style.width=c._contentSections[b].style.width;c._content.width(a(c._contentSections[b]).width()-c._header.width())}else{c._content.width(a(c._contentSections[b]).width())}}}},_animationComplete:function(c,e){var d=this,b=e!==-1?e:null;d._content.css("pointer-events","auto");if(d._supressSelectionEvents!==true){d._raiseEvent("0",{selectedIndex:c});d._raiseEvent("2",{unselectedIndex:b,selectedIndex:c})}else{if(c!==d._oldReorderIndex){d._raiseEvent("4",{newIndex:c,oldIndex:d._oldReorderIndex})}d._supressSelectionEvents=false}d.selectedIndex=c;if(d.initContent&&d._items[c]._isInitialized===false){d.initContent(c);d._items[c]._isInitialized=true}d._allowSelection=true;d._selecting=null},_clearSelectionComplete:function(d,b){var c=this;c._selecting=null;if(d===undefined){d=c.selectedIndex}if(d!==-1){c._content.css("pointer-events","none");if(c._supressSelectionEvents!==true){c._raiseEvent("1",{unselectedIndex:d})}}if(b!==true){c.selectedIndex=-1}},_slide:function(f,e,m,s){var q=this;if(!q.activeAnimations){q.activeAnimations=[]}if(q.activeAnimations.length>0){for(var k=0;k<q.activeAnimations.length;k++){q.activeAnimations[k].clearQueue();q.activeAnimations[k].finish()}}else{f.clearQueue();f.finish()}var h="ui-effects-";var d={save:function(u,v){for(var o=0;o<v.length;o++){if(v[o]!==null&&u.length>0){u.data(h+v[o],u[0].style[v[o]])}}},restore:function(u,w){var v,o;for(o=0;o<w.length;o++){if(w[o]!==null){v=u.data(h+w[o]);if(v===undefined){v=""}u.css(w[o],v)}}},createWrapper:function(o){if(o.parent().is(".ui-effects-wrapper")){return o.parent()}var u={width:o.outerWidth(true),height:o.outerHeight(true),"float":o.css("float")},x=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i={width:o.width(),height:o.height()},w=document.activeElement;try{w.id}catch(v){w=document.body}o.wrap(x);if(o[0]===w||a.contains(o[0],w)){a(w).focus()}x=o.parent();if(o.css("position")==="static"){x.css({position:"relative"});o.css({position:"relative"})}else{a.extend(u,{position:o.css("position"),zIndex:o.css("z-index")});a.each(["top","left","bottom","right"],function(y,z){u[z]=o.css(z);if(isNaN(parseInt(u[z],10))){u[z]="auto"}});o.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}o.css(i);return x.css(u).show()},removeWrapper:function(i){var o=document.activeElement;if(i.parent().is(".ui-effects-wrapper")){i.parent().replaceWith(i);if(i[0]===o||a.contains(i[0],o)){a(o).focus()}}return i}};var p=["position","top","bottom","left","right","width","height"],l=e.mode,t=l==="show",r=e.direction||"left",g=(r==="up"||r==="down")?"top":"left",c=(r==="up"||r==="left"),b,j={};d.save(f,p);f.show();b=e.distance||f[g==="top"?"outerHeight":"outerWidth"](true);d.createWrapper(f).css({overflow:"hidden"});if(t){f.css(g,c?(isNaN(b)?"-"+b:-b):b)}j[g]=(t?(c?"+=":"-="):(c?"-=":"+="))+b;var n=function(){f.clearQueue();f.stop(true,true)};q.activeAnimations.push(f);f.animate(j,{duration:e.duration,easing:e.easing,complete:function(){q.activeAnimations.pop(f);if(l==="show"){q._animationComplete(m,s)}else{if(l==="hide"){f.hide();q._clearSelectionComplete(m)}}d.restore(f,p);d.removeWrapper(f)}});return n}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxscheduler.api.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxscheduler.api.js
new file mode 100644 (file)
index 0000000..4e79117
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){if(!a.jqx.scheduler){a.jqx.scheduler={}}a.jqx.scheduler.utilities={weekDays:{Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6},guid:function(){function b(){return Math.floor((1+Math.random())*65536).toString(16).substring(1)}return b()+b()},areWeekDaysIncluded:function(d,c){var b=false;a.each(d,function(e,f){if(f===c){b=true;return false}});return b},getStartOfDay:function(c){var b=new a.jqx.date(c.year(),c.month(),c.day(),0,0,0);b.timeZone=c.timeZone;return b},getEndOfDay:function(c){var b=new a.jqx.date(c.year(),c.month(),c.day(),23,59,59);b.timeZone=c.timeZone;return b},getDaysCount:function(d,c){var b=1;while(d<c){if(d.day()!=c.day()){b++}d=d.addDays(1)}return b},getStartOfWeek:function(e,g){var c=e.dayOfWeek();var b=g.firstDay;if(c<b){c+=7}var d=c-b;var f=e.addDays(-d);return f.date()},getEndOfWeek:function(d,e,c){var f=7;var b=that.getStartOfWeek(d,dateTimeFormat,c);return b.addDays(f)},getEndOfMonth:function(d,e){var c=d.daysInMonth();var b=new a.jqx.date(d.year(),d.month(),c,23,59,59);b.timeZone=d.timeZone;return b},rangeIntersection:function(i,h,f,e){var g=i.valueOf();var d=f.valueOf();var c=h.valueOf();var b=e.valueOf();if(d>=g&&d<c){return true}if(d<g&&b>g){return true}if(g==d||c==b){return true}if(g<d){if(c>d&&c<b){return true}if(c>b){return true}}else{if(b>g&&b<c){return true}if(b>c){return true}}return false},rangeContains:function(e,d,c,b){return(e<=c&&b<=d)},monthDays:[31,28,31,30,31,30,31,31,30,31,30,31],msPerDay:1000*60*60*24,maxYear:9999,ORDINAL_BASE:new Date(1970,0,1),getYearDay:function(b){var c=new Date(b.getFullYear(),b.getMonth(),b.getDate());return Math.ceil((c-new Date(b.getFullYear(),0,1))/a.jqx.scheduler.utilities.msPerDay)+1},isLeapYear:function(b){if(b instanceof Date){b=b.getFullYear()}return((b%4===0)&&(b%100!==0))||(b%400===0)},tzOffset:function(b){return b.getTimezoneOffset()*60*1000},monthRange:function(c,d){var b=new Date(c,d,1);return[a.jqx.scheduler.utilities.getWeekday(b),a.jqx.scheduler.utilities.getMonthDays(b)]},getMonthDays:function(b){var c=b.getMonth();return c==1&&a.jqx.scheduler.utilities.isLeapYear(b)?29:a.jqx.scheduler.utilities.monthDays[c]},getWeekday:function(b){var c=[6,0,1,2,3,4,5];return c[b.getDay()]},combine:function(b,c){c=c||b;return new Date(b.getFullYear(),b.getMonth(),b.getDate(),c.getHours(),c.getMinutes(),c.getSeconds())},sort:function(b){b.sort(function(d,c){return d.getTime()-c.getTime()})},timeToUntilString:function(e){var c=new Date(e);var b,f=[c.getUTCFullYear(),c.getUTCMonth()+1,c.getUTCDate(),"T",c.getUTCHours(),c.getUTCMinutes(),c.getUTCSeconds(),"Z"];for(var d=0;d<f.length;d++){b=f[d];if(!/[TZ]/.test(b)&&b<10){f[d]="0"+String(b)}}return f.join("")},untilStringToDate:function(d){var b=/^(\d{4})(\d{2})(\d{2})(T(\d{2})(\d{2})(\d{2})Z)?$/;var c=b.exec(d);if(!c){throw new Error("Invalid UNTIL value: "+d)}return new Date(Date.UTC(c[1],c[2]-1,c[3],c[5]||0,c[6]||0,c[7]||0))},Time:function(b,d,c){this.hour=b;this.minute=d;this.second=c;this.that=this;this.getHours=function(){return that.hour};this.getMinutes=function(){return that.minute},this.getSeconds=function(){return that.second},this.getTime=function(){return((that.hour*60*60)+(that.minute*60)+that.second)*1000}}};a.jqx.scheduler.appointment=function(){var c=this;c.from=new a.jqx.date();c.to=new a.jqx.date().addHours(1);c.subject="";c.description="";c.location="";c.tooltip="";c.hidden=false;c.resourceId=null;c.id="";c.background=null;c.color=null;c.borderColor=null;c.status="busy";c.style=null;c.exceptions=new Array();c.exceptionDates=new Array();c.recurrencePattern=null;c.recurrenceException=new Array();c.occurrenceEnumerator=null;c.rootAppointment=null;c.hiddenByResourceId=false;c.draggable=true;c.resizable=true;c.recurrentAppointment=false;c.allDay=false;c.readOnly=false;c.showStatus=true;c.timeZone=null;c.scheduler=null;c.elements=new Array();c.duration=function(){var e=c.to-c.from;var f=e*10000;return new a.jqx.timeSpan(f)};c.range=function(){if(!c.allDay){return{from:c.from,to:c.to}}else{return{from:a.jqx.scheduler.utilities.getStartOfDay(c.from),to:a.jqx.scheduler.utilities.getEndOfDay(c.to)}}};c.clearRecurrence=function(){if(c.recurrencePattern){c.exceptions=new Array();c.exceptionDates=new Array();c.recurrencePattern=null;c.recurrenceException=new Array();c.hidden=false}};c.isAllDayAppointment=function(){return this.duration().days()>=1||this.allDay};c.cloneAppointmentAttributes=function(e){e.subject=c.subject;e.description=c.description;e.location=c.location;e.tooltip=c.tooltip;e.resourceId=c.resourceId;e.category=c.category;e.status=c.status;e.rootAppointment=c;e.color=c.color;e.borderColor=c.borderColor;e.background=c.background;e.hidden=c.hidden;e.timezone=c.timeZone;e.style=c.style;e.hiddenByResourceId=c.hiddenByResourceId};c.createOccurrence=function(g){if(g==null){return null}var f=new a.jqx.scheduler.appointment();f.allDay=c.allDay;var e=c.duration();if(c.allDay){e=new a.jqx.timeSpan(10000*(c.to-c.from))}f.from=g;f.to=g.add(e);f.occurrenceFrom=g.clone();f.subject=c.subject;f.description=c.description;f.location=c.location;f.tooltip=c.tooltip;f.resourceId=c.resourceId;f.category=c.category;f.status=c.status;f.rootAppointment=c;f.color=c.color;f.borderColor=c.borderColor;f.background=c.background;f.recurrentAppointment=true;f.timeZone=c.timeZone;f.style=c.style;f.hiddenByResourceId=c.hiddenByResourceId;if(c.hiddenByResourceId){f.hidden=true}f.id=c.id+"."+a.jqx.scheduler.utilities.guid();c.hidden=true;c.occurrenceIndex++;return f};c.clone=function(){var e=new a.jqx.scheduler.appointment();e.allDay=c.allDay;e.from=c.from.clone();e.to=c.to.clone();e.subject=c.subject;e.description=c.description;e.location=c.location;e.tooltip=c.tooltip;e.resourceId=c.resourceId;e.category=c.category;e.status=c.status;e.color=c.color;e.borderColor=c.borderColor;e.background=c.background;e.style=c.style;e.timeZone=c.timeZone;e.hiddenByResourceId=c.hiddenByResourceId;if(c.hiddenByResourceId){e.hidden=true}e.id=c.id+"."+a.jqx.scheduler.utilities.guid();return e};c.isRecurrentAppointment=function(){return c.recurrentAppointment||c.recurrencePattern!=null};c.anyExceptions=function(){return c.exceptions!=null&&c.exceptions.length>0};c.anyOccurrences=function(){return c.occurrenceEnumerator!=null&&c.occurrenceEnumerator.getNextAppointment()};c.isException=function(){var g=c.rootAppointment||this;if(!g.recurrenceException){return false}for(var f=0;f<g.recurrenceException.length;f++){var e=g.recurrenceException[f];if(c.occurrenceFrom&&e.equals(c.occurrenceFrom)){return true}}return false};c.getOccurrences=function(h,g){c.occurrenceIndex=0;var f=h!==null?h:c.from;var e=new a.jqx.scheduler.recurrentAppointmentsList(c,c.calendar,f,g,c.scheduler);c.occurrences=e.list;return e.list};if(arguments.length===1){if(a.type(arguments[0])=="object"){for(var b in arguments[0]){var d=arguments[0][b];if(this[b]!==undefined){this[b]=d}}}else{c.from=arguments[0];c.to=new a.jqx.date(c.from).addHours(1)}}else{if(arguments.length===2){c.from=arguments[0];c.to=arguments[1]}else{if(arguments.length===3){c.from=arguments[0];c.to=arguments[1];c.subject=arguments[2]}else{if(arguments.length===3){c.from=arguments[0];c.to=arguments[1];c.subject=arguments[2];c.description=arguments[3]}}}}if(c.recurrencePattern!=null){c.recurrencePattern.setFrom(c.from)}};a.jqx.scheduler.recurrentAppointmentsList=function(){var b=this;b.recurrentAppointment=null;b.currentTime=null;b.calendar=a.jqx.scheduler.calendar;b.from=new a.jqx.date(0);b.to=new a.jqx.date(9999,12,31);b.foundItems=0;b.list=new Array();b.scheduler=null;b.getOccurrences=function(c,e,d){if(c==undefined){return b.list}return new a.jqx.scheduler.recurrentAppointmentsList(c,b.calendar,e,d).list};b.current=function(){return b.recurrentAppointment.createOccurrence(b.currentTime)};b.fillList=function(){b.currentTime=null;b.foundItems=0;b.list=new Array();var c=b.recurrentAppointment.recurrencePattern;c.step=0;c.current=0;c.currentYearDay=0;if(c==null){return false}while(b.getNextAppointment(c)){var d=b.current();if(d){b.list.push(d)}}};b.getNextAppointment=function(h){if(b.recurrentAppointment==null){return false}var d=4294967295;var j=this.scheduler._views[this.scheduler._view].type;var l=this.scheduler._views[this.scheduler._view];var f=0;switch(h.freq){case"weekly":f=7;break;case"monthly":f=31;break;case"yearly":f=365;break}for(var e=0;e<d;e++){var k=h.getNewOccurenceDate();h.currentTime=k;if((h.to<k&&h.to.addDays(f)>=k)||(b.to<k&&b.to.addDays(f)>=k)){b.currentTime=null;return true}if(h.to.addDays(f)<k||b.to.addDays(f)<k){b.currentTime=null;return false}var g=true;g=b.getCanSetTime(h,k,g);if(h.canCreateNewOccurence(k,b.calendar)){var c=true;if(false===l.showWeekends){if(k.dayOfWeek()==6||k.dayOfWeek()==0){c=false}}if(c){b.foundItems++}}if(!g){continue}b.currentTime=k;if(b.foundItems>h.count){return false}return true}return false};b.getCanSetTime=function(c,e,d){if(!c.canCreateNewOccurence(e,b.calendar)){d=false}if(e<b.from&&e.add(b.recurrentAppointment.duration())<=b.from){d=false}if(b.to<=e){d=false}return d};b.isException=function(f,c,g){var e=b.recurrentAppointment.exceptions;for(var d=0;d<e.length;d++){if(g.isDateInExceptionAppointment(f,c,e[d])){if(-1===g.newExceptions.indexOf(e[d])){return true}}}return false};if(arguments&&arguments.length>0){b.recurrentAppointment=arguments[0];if(arguments[1]){b.calendar=arguments[1]}if(arguments[2]){b.from=arguments[2]}if(arguments[3]){b.to=arguments[3]}if(arguments[4]){b.scheduler=arguments[4]}if(arguments[2]===undefined){b.from=new a.jqx.date(0);b.to=new a.jqx.date(9999,12,31)}b.fillList()}return b};a.jqx.scheduler.recurrencePattern=function(){var c=this;var b={from:new a.jqx.date(0),to:new a.jqx.date(9999,12,31),count:1000,interval:1,exceptions:new Array(),newExceptions:new Array(),month:1,day:1,current:0,currentYearDay:0,step:0,days:[],bynweekday:[],isEveryWeekDay:true,timeZone:null,weekDays:{Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6},freq:"daily",bymonth:null,bymonthday:null,byyearday:null,byweekno:null,byweekday:null};a.extend(true,c,b);c.getNewOccurenceDate=function(){var o=function(n,C){var k=0,D=[];if(n instanceof Array){for(;k<C;k++){D[k]=[].concat(n)}}else{for(;k<C;k++){D[k]=n}}return D};var d=function(k,i){var n=k%i;return(n*i<0)?n+i:n};var v=function(D,k){if(arguments.length===1){k=D;D=0}var n=[];for(var C=D;C<k;C++){n.push(C)}return n};var u=[0,31,60,91,121,152,182,213,244,274,305,335,366];var l=[0,31,59,90,120,151,181,212,243,273,304,334,365];var t=c.from.year();var j=[6,0,1,2,3,4,5];var r=function(i){c.yearlen=i%4==0&&(i%100!=0||i%400==0)?366:365;c.nextyearlen=(1+i)%4==0&&((1+i)%100!=0||(1+i)%400==0)?366:365;var k=new Date(i,0,1);var C=j[new Date(i,0,1).getDay()];var n=(function(){for(var D=[],E=0;E<55;E++){D=D.concat(v(7))}return D}());if(c.yearlen==365){c.wdaymask=n.slice(C);c.mrange=[].concat(l)}else{c.wdaymask=n.slice(C);c.mrange=[].concat(u)}};r(t);switch(c.freq){case"daily":default:var g=c.from.add(new a.jqx.timeSpan(c.step*c.interval,0,0,0));c.step++;return g;case"weekly":if(c.byweekday){var g=new a.jqx.date(c.from,c.timeZone);g=g.addDays(7*(c.step*c.interval));if(c.step>=1){g=g.addDays(-c.from.dayOfWeek());var s=g.addDays(7)}else{var s=g.addDays(7-c.from.dayOfWeek())}var e=g;for(var z=0;z<7;z++){if(j[e.dayOfWeek()]===c.byweekday[c.current]){break}if(e>=s){break}e=e.addDays(1)}g=e;c.current++;if(undefined==c.byweekday[c.current]){c.current=0;c.step++}}return g;case"monthly":if(c.bynweekday.length>0){var g=new a.jqx.date(c.from.year(),c.from.month(),1,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths(c.step*c.interval);var B=g.month();var f=[c.mrange.slice(B-1,B+1)][0];var h=f[0];var m=f[1];m-=1;c.nwdaymask=o(0,c.yearlen);c.step++;for(var y=0;y<c.bynweekday.length;y++){var q=c.bynweekday[y][0],x=c.bynweekday[y][1];if(x<0){z=m+(x+1)*7;z-=d(c.wdaymask[z]-q,7)}else{z=h+(x-1)*7;z+=d(7-c.wdaymask[z]+q,7)}if(h<=z&&z<=m){c.nwdaymask[z]=1}}var w=z+1;var A=w-h;var g=new a.jqx.date(c.from.year(),c.from.month(),A,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths((c.step-1)*c.interval)}else{if(c.bymonthday.length>0){var g=new a.jqx.date(c.from.year(),c.from.month(),c.bymonthday[c.current],c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths(c.step*c.interval);c.current++;if(!c.bymonthday[c.current]){c.current=0;c.step++}}else{var g=new a.jqx.date(c.from.year(),c.from.month(),c.day,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addMonths(c.step*c.interval);c.step++}}return g;case"yearly":if(c.bymonth&&c.bymonth.length>0){if(c.bynweekday.length>0){var g=new a.jqx.date(c.from.year(),c.bymonth[c.current],1,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);r(g.year());var B=g.month();var f=[c.mrange.slice(B-1,B+1)][0];var h=f[0];var m=f[1];m-=1;c.nwdaymask=o(0,c.yearlen);for(var y=0;y<c.bynweekday.length;y++){var q=c.bynweekday[y][0],x=c.bynweekday[y][1];if(x<0){z=m+(x+1)*7;z-=d(c.wdaymask[z]-q,7)}else{z=h+(x-1)*7;z+=d(7-c.wdaymask[z]+q,7)}if(h<=z&&z<=m){c.nwdaymask[z]=1}}var w=z+1;var A=w-h;g=new a.jqx.date(g.year(),c.bymonth[c.current],A,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;c.step++}else{if(c.byyearday.length>0){var g=new a.jqx.date(c.from.year(),c.bymonth[c.current],c.byyearday[c.currentYearDay],c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.currentYearDay++;if(!c.byyearday[c.currentYearDay]){c.currentYearDay=0;c.current++;if(!c.bymonth[c.current]){c.current=0;c.step++}}}else{var g=new a.jqx.date(c.from.year(),c.bymonth[c.current],c.from.day(),c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.current++;if(!c.bymonth[c.current]){c.current=0;c.step++}}}}else{if(c.byyearday&&c.byyearday.length>0){var g=new a.jqx.date(c.from.year(),c.from.month(),c.byyearday[c.current],c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.current++;if(!c.byyearday[c.current]){c.current=0;c.step++}}else{if(c.byweekno!=null){var p=function(n,k){var i=1;var C=new a.jqx.date(k.year(),1,1,k.hour(),k.minute(),k.second());C.timeZone=c.timeZone;while(i!=n){C=C.addDays(7);i++;if(i>53){break}}while(a.jqx.scheduler.utilities.getWeekday(C.toDate())!=c.wkst){C=C.addDays(1)}return C};var g=c.from.addYears(c.step*c.interval);g=p(c.byweekno[c.current],g);if(c.byweekday){var e=g;for(var z=0;z<7;z++){if(j[e.dayOfWeek()]===c.byweekday[c.currentYearDay]){break}e=e.addDays(1)}g=e;c.currentYearDay++;if(!c.byweekday[c.currentYearDay]){c.currentYearDay=0;c.current++;if(!c.byweekno[c.current]){c.current=0;c.step++}}}else{c.current++;if(!c.byweekno[c.current]){c.current=0;c.step++}}}else{var g=new a.jqx.date(c.from.year(),c.month,c.day,c.from.hour(),c.from.minute(),c.from.second());g.timeZone=c.timeZone;g=g.addYears(c.step*c.interval);c.step++}}}return g}};c.isDateInExceptionAppointment=function(d,e,f){switch(c.freq){case"daily":case"weekly":default:return d.year()==f.from.year()&&d.dayOfYear()==f.from.dayOfYear()}};c.createNewPattern=function(){if(c.ical){var d=new a.jqx.scheduler.recurrencePattern(c.ical);return d}else{var d=new a.jqx.scheduler.recurrencePattern();d.from=c.from;d.to=c.to;d.count=c.count;d.interval=c.interval;d.exceptions=c.exceptions;d.newExceptions=c.newExceptions;d.weekDays=c.weekDays;d.isEveryWeekDay=c.isEveryWeekDay;d.month=c.month;d.day=c.day;d.current=c.current;d.currentYearDay=c.currentYearDay;d.step=c.step;d.days=c.days;d.bynweekday=c.bynweekday;d.bymonth=c.bymonth;d.bymonthday=c.bymonthday;d.byyearday=c.byyearday;d.byweekno=c.byweekno;d.byweekday=c.byweekday;d.freq=d.freq;d.timeZone=d.timeZone;return d}};c.equals=function(e){var d=c.from==e.from&&c.to==e.to&&c.count===e.count&&c.interval===e.interval&&c.day===e.day&&c.month===e.month;return d};c.isDayOfWeekIncluded=function(e){var d=e.dayOfWeek();return a.jqx.scheduler.utilities.areWeekDaysIncluded(c.weekDays,d)};c.getWeekIndexFromDate=function(g,f){var e=f.firstDay;var h=a.jqx.scheduler.utilities.getStartOfWeek(c.from,f,e);var d=new a.jqx.timeSpan(g.subtract(h));return parseInt(d.days()/7)};c.canCreateNewOccurence=function(e,g){var d=e.toDate();switch(c.freq){case"daily":default:if(c.bymonth){if(c.bymonth.indexOf(e.month())==-1){return false}}if(c.isEveryWeekDay){if(!c.isDayOfWeekIncluded(e,g)){return false}else{return true}}else{return true}break;case"weekly":var f=c.getWeekIndexFromDate(e,g);if(c.bymonth){if(c.bymonth.indexOf(e.month())==-1){return false}}if((f%c.interval)!=0){return false}if(c.weekDays=={}){if(c.from.dayOfWeek()!=start.dayOfWeek()){return false}}else{if(!c.isDayOfWeekIncluded(e,g)){return false}}break;case"monthly":case"yearly":if(c.bymonth){if(c.bymonth.indexOf(e.month())==-1){return false}}if(e<c.from){return false}break}return true};c.toString=function(){var d={};d.dtstart=this.from.toDate();d.until=this.to?this.to.toDate():null;d.count=this.count;d.bymonth=this.bymonth?this.bymonth:new Array().push(this.month);var e={};e.YEARLY=0;e.MONTHLY=1;e.WEEKLY=2;e.DAILY=3;e.HOURLY=4;e.MINUTELY=5;e.SECONDLY=6;d.freq=e[this.freq.toUpperCase()];d.byweekday=new Array();var g=["MO","TU","WE","TH","FR","SA","SU"];a.each(this.weekDays,function(){d.byweekday.push(this)});if(this.byyearday!=undefined){d.byyearday=this.byyearday}if(this.byweekno!=undefined){d.byweekno=this.byweekno}d.bymonthday=this.bymonthday;d.wkst=g[this.wkst];d.interval=this.interval;var f=new a.jqx.ICalRule(d);return f.toString()};c.init=function(j){var d=new a.jqx.ICalRule(c.ical,j);var f=d.options;c.from=f.dtstart?new a.jqx.date(f.dtstart,c.timeZone):c.from;c.count=f.count!=undefined?f.count:c.count;c.freq=d.FREQUENCIES[f.freq].toLowerCase();c.interval=f.interval!=undefined?f.interval:c.interval;c.to=f.until?new a.jqx.date(f.until,c.timeZone):c.to;c.wkst=f.wkst;c.bymonth=f.bymonth;if(c.bymonth&&c.bymonth.length>0){c.month=c.bymonth[0]}else{c.month=c.from.month()}c.day=c.from.day();if(f.byweekday!=undefined){var h={Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6};c.weekDays={};for(var g=0;g<f.byweekday.length;g++){var e=f.byweekday[g];switch(e){case 0:c.weekDays.Monday=1;break;case 1:c.weekDays.Tuesday=2;break;case 2:c.weekDays.Wednesday=3;break;case 3:c.weekDays.Thursday=4;break;case 4:c.weekDays.Friday=5;break;case 5:c.weekDays.Saturday=6;break;case 6:c.weekDays.Sunday=0;break}}c.byweekday=f.byweekday}c.byweekno=f.byweekno;if(f.bynweekday){c.bynweekday=f.bynweekday}if(f.bymonthday!=undefined){c.bymonthday=f.bymonthday.sort();if(c.bymonthday[0]){c.day=c.bymonthday[0]}}if(f.byyearday!=undefined){c.day=f.byyearday[0];c.byyearday=f.byyearday.sort()}return f};c.setFrom=function(d){c.from=d.clone();if(c.ical){c.init(d)}};if(arguments.length==1){c.ical=arguments[0];c.init()}return c};a.jqx.scheduler.calendar={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff"},percentsymbol:"%",currencysymbol:"$",currencysymbolposition:"before",decimalseparator:".",thousandsseparator:","};a.jqx.ICalRule=function(u,n){var D=this;var m=function(R,j){if(arguments.length===1){j=R;R=0}var k=[];for(var v=R;v<j;v++){k.push(v)}return k};var A=function(k,v){var j=0,R=[];if(k instanceof Array){for(;j<v;j++){R[j]=[].concat(k)}}else{for(;j<v;j++){R[j]=k}}return R};var C=function(i){return(i instanceof Array&&i.length==0)?false:Boolean(i)};var B=function(i,j){return i.indexOf(j)!=-1};var G=[].concat(A(1,31),A(2,28),A(3,31),A(4,30),A(5,31),A(6,30),A(7,31),A(8,31),A(9,30),A(10,31),A(11,30),A(12,31),A(1,7));var s=[].concat(A(1,31),A(2,29),A(3,31),A(4,30),A(5,31),A(6,30),A(7,31),A(8,31),A(9,30),A(10,31),A(11,30),A(12,31),A(1,7));var h=m(1,29),g=m(1,30),P=m(1,31),O=m(1,32);var J=[].concat(O,g,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));var b=[].concat(O,h,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));h=m(-28,0);g=m(-29,0);P=m(-30,0);O=m(-31,0);var K=[].concat(O,g,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));var e=[].concat(O,h,O,P,O,P,O,O,P,O,P,O,O.slice(0,7));var c=[0,31,60,91,121,152,182,213,244,274,305,335,366];var z=[0,31,59,90,120,151,181,212,243,273,304,334,365];var q=(function(){for(var j=[],k=0;k<55;k++){j=j.concat(m(7))}return j}());var f=function(j,k){var i=this;if(k===0){throw new Error("Can't create weekday with n == 0")}this.weekday=j;this.n=k;this.nth=function(v){return i.n==v?i:new f(i.weekday,v)};this.equals=function(v){return i.weekday==v.weekday&&i.n==v.n};this.toString=function(){var v=["MO","TU","WE","TH","FR","SA","SU"][i.weekday];if(this.n){v=(i.n>0?"+":"")+String(i.n)+v}return v};this.getJsWeekday=function(){return i.weekday==6?0:i.weekday+1}};this.FREQUENCIES=["YEARLY","MONTHLY","WEEKLY","DAILY","HOURLY","MINUTELY","SECONDLY"];this.YEARLY=0;this.MONTHLY=1;this.WEEKLY=2;this.DAILY=3;this.HOURLY=4;this.MINUTELY=5;this.SECONDLY=6;this.MO=new f(0);this.TU=new f(1);this.WE=new f(2);this.TH=new f(3);this.FR=new f(4);this.SA=new f(5);this.SU=new f(6);var d={freq:null,dtstart:null,interval:1,wkst:D.MO,count:null,until:null,bysetpos:null,bymonth:null,bymonthday:null,byyearday:null,byweekno:null,byweekday:null,byhour:null,byminute:null,bysecond:null,byeaster:null};this._string=null;this.toString=function(){var aa=this.origOptions;var Y,Z,V,W,U,k=[];Z=Object.keys(aa);V=Object.keys(d);for(var R=0;R<Z.length;R++){if(!B(V,Z[R])){continue}Y=Z[R].toUpperCase();W=aa[Z[R]];U=[];if(W===null||W instanceof Array&&!W.length){continue}switch(Y){case"FREQ":W=D.FREQUENCIES[aa.freq];break;case"WKST":W=W.toString();break;case"BYWEEKDAY":Y="BYDAY";if(!(W instanceof Array)){W=[W]}for(var T,v=0;v<W.length;v++){T=W[v];if(T instanceof f){}else{if(T instanceof Array){T=new f(T[0],T[1])}else{T=new f(T)}}U[v]=T.toString()}W=U;break;case"DTSTART":case"UNTIL":W=a.jqx.scheduler.utilities.timeToUntilString(W);break;default:if(W instanceof Array){for(var v=0;v<W.length;v++){U[v]=String(W[v])}W=U}else{W=String(W)}}k.push([Y,W])}var X=[];for(var R=0;R<k.length;R++){var S=k[R];X.push(S[0]+"="+S[1].toString())}return X.join(";")};this.parseString=function(v){v=v.replace(/^\s+|\s+$/,"");if(!v.length){return null}var S,R,X,W,T,Y=v.split(";"),aa={};for(S=0;S<Y.length;S++){T=Y[S].split("=");X=T[0];W=T[1];if(X==""){continue}switch(X){case"COUNT":case"INTERVAL":case"BYSETPOS":case"BYMONTH":case"BYMONTHDAY":case"BYYEARDAY":case"BYWEEKNO":case"BYHOUR":case"BYMINUTE":case"BYSECOND":if(W.indexOf(",")!=-1){W=W.split(",");for(R=0;R<W.length;R++){if(/^[+-]?\d+$/.test(W[R])){W[R]=Number(W[R])}}}else{if(/^[+-]?\d+$/.test(W)){W=Number(W)}}X=X.toLowerCase();aa[X]=W;break;case"BYDAY":var k,U,V,Z=W.split(",");aa.byweekday=[];for(R=0;R<Z.length;R++){V=Z[R];if(V.length==2){U=D[V];aa.byweekday.push(U)}else{V=V.match(/^([+-]?\d)([A-Z]{2})$/);k=Number(V[1]);U=V[2];U=D[U].weekday;aa.byweekday.push(new f(U,k))}}break;case"FREQ":aa.freq=D[W];break;case"WKST":aa.wkst=D[W];break;case"DTSTART":aa.dtstart=a.jqx.scheduler.utilities.untilStringToDate(W);break;case"UNTIL":aa.until=a.jqx.scheduler.utilities.untilStringToDate(W);break;case"BYEASTER":aa.byeaster=Number(W);break;default:throw new Error("Unknown ICalRule property '"+X+"'")}}D.options=aa;return aa};if(a.type(u)==="string"){this.options=this.parseString(u)}else{this.options=u||{}}var u=this.options;if(!Array.prototype.forEach){Array.prototype.forEach=function(V,j){var R,v;if(this==null){throw new TypeError(" this is null or not defined")}var U=Object(this);var i=U.length>>>0;if(typeof V!=="function"){throw new TypeError(V+" is not a function")}if(arguments.length>1){R=j}v=0;while(v<i){var S;if(v in U){S=U[v];V.call(R,S,v,U)}v++}}}if(!Object.keys){Object.keys=(function(){var k=Object.prototype.hasOwnProperty,v=!({toString:null}).propertyIsEnumerable("toString"),j=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],i=j.length;return function(T){if(typeof T!=="object"&&(typeof T!=="function"||T===null)){throw new TypeError("Object.keys called on non-object")}var R=[],U,S;for(U in T){if(k.call(T,U)){R.push(U)}}if(v){for(S=0;S<i;S++){if(k.call(T,j[S])){R.push(j[S])}}}return R}}())}this.origOptions={};var E=[],w=Object.keys(this.options),p=Object.keys(d);w.forEach(function(i){this.origOptions[i]=this.options[i];if(!B(p,i)){E.push(i)}},this);if(E.length){throw new Error("Invalid options: "+E.join(", "))}if(!D.FREQUENCIES[this.options.freq]&&u.byeaster===null){throw new Error("Invalid Frequency: "+String(u.freq))}p.forEach(function(i){if(!B(w,i)){u[i]=d[i]}});var x=this.options;if(x.byeaster!==null){x.freq=this.YEARLY}if(!x.dtstart){x.dtstart=new Date();x.dtstart.setMilliseconds(0)}if(n){x.dtstart=n.toDate()}if(x.wkst===null){x.wkst=this.MO.weekday}else{if(typeof x.wkst=="number"){}else{x.wkst=x.wkst.weekday}}if(x.bysetpos!==null){if(typeof x.bysetpos=="number"){x.bysetpos=[x.bysetpos]}for(var N=0;N<x.bysetpos.length;N++){var H=x.bysetpos[N];if(H==0||!(-366<=H&&H<=366)){throw new Error("bysetpos must be between 1 and 366, or between -366 and -1")}}}if(!(C(x.byweekno)||C(x.byyearday)||C(x.bymonthday)||x.byweekday!==null||x.byeaster!==null)){switch(x.freq){case this.YEARLY:if(!x.bymonth){x.bymonth=x.dtstart.getMonth()+1}x.bymonthday=x.dtstart.getDate();break;case this.MONTHLY:x.bymonthday=x.dtstart.getDate();break;case this.WEEKLY:x.byweekday=a.jqx.scheduler.utilities.getWeekday(x.dtstart);break}}if(x.bymonth!==null&&!(x.bymonth instanceof Array)){x.bymonth=[x.bymonth]}if(x.byyearday!==null&&!(x.byyearday instanceof Array)){x.byyearday=[x.byyearday]}if(x.bymonthday===null){x.bymonthday=[];x.bynmonthday=[]}else{if(x.bymonthday instanceof Array){var Q=[],I=[];for(N=0;N<x.bymonthday.length;N++){var H=x.bymonthday[N];if(H>0){Q.push(H)}else{if(H<0){I.push(H)}}}x.bymonthday=Q;x.bynmonthday=I}else{if(x.bymonthday<0){x.bynmonthday=[x.bymonthday];x.bymonthday=[]}else{x.bynmonthday=[];x.bymonthday=[x.bymonthday]}}}if(x.byweekno!==null&&!(x.byweekno instanceof Array)){x.byweekno=[x.byweekno]}if(x.byweekday===null){x.bynweekday=null}else{if(typeof x.byweekday=="number"){x.byweekday=[x.byweekday];x.bynweekday=null}else{if(x.byweekday instanceof f){if(!x.byweekday.n||x.freq>this.MONTHLY){x.byweekday=[x.byweekday.weekday];x.bynweekday=null}else{x.bynweekday=[[x.byweekday.weekday,x.byweekday.n]];x.byweekday=null}}else{var r=[],F=[];for(N=0;N<x.byweekday.length;N++){var o=x.byweekday[N];if(typeof o=="number"){r.push(o)}else{if(!o.n||x.freq>this.MONTHLY){r.push(o.weekday)}else{F.push([o.weekday,o.n])}}}x.byweekday=C(r)?r:null;x.bynweekday=C(F)?F:null}}}if(x.byhour===null){x.byhour=(x.freq<this.HOURLY)?[x.dtstart.getHours()]:null}else{if(typeof x.byhour=="number"){x.byhour=[x.byhour]}}if(x.byminute===null){x.byminute=(x.freq<this.MINUTELY)?[x.dtstart.getMinutes()]:null}else{if(typeof x.byminute=="number"){x.byminute=[x.byminute]}}if(x.bysecond===null){x.bysecond=(x.freq<this.SECONDLY)?[x.dtstart.getSeconds()]:null}else{if(typeof x.bysecond=="number"){x.bysecond=[x.bysecond]}}if(x.freq>=this.HOURLY){this.timeset=null}else{this.timeset=[];if(x.byhour){for(N=0;N<x.byhour.length;N++){var t=x.byhour[N];for(var M=0;M<x.byminute.length;M++){var l=x.byminute[M];for(var L=0;L<x.bysecond.length;L++){var y=x.bysecond[L];this.timeset.push(new a.jqx.scheduler.utilities.Time(t,l,y))}}}}a.jqx.scheduler.utilities.sort(this.timeset)}return this}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxscheduler.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxscheduler.js
new file mode 100644 (file)
index 0000000..14037d4
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){if(!a.jqx.scheduler){a.jqx.scheduler={}}a.jqx.jqxWidget("jqxScheduler","",{});a.extend(a.jqx._jqxScheduler.prototype,{defineInstance:function(){var c={altRows:false,autoShowLoadElement:true,columnsHeight:30,columns:[],columnGroups:null,dataview:null,disabled:false,enableHover:true,appointmentOpacity:0.8,headerZIndex:359,height:600,timeRulerWidth:60,loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxScheduler raises the 'bindingComplete' event when the binding is completed.",localization:null,ready:null,renderToolBar:null,renderAppointment:null,rendered:null,rendering:null,rtl:false,showToolbar:true,showLegend:false,legendPosition:"bottom",legendHeight:34,rowsHeight:27,touchRowsHeight:36,appointmentsMinHeight:18,touchAppointmentsMinHeight:27,serverProcessing:false,selectionMode:"multiplerows",scrollBarSize:a.jqx.utilities.scrollBarSize,touchScrollBarSize:a.jqx.utilities.touchScrollBarSize,showHeader:true,maxHeight:999999,maxWidth:999999,autoBind:true,showAllDayRow:true,changedAppointments:new Array(),renderMode:"simple",views:new Array(),view:0,min:new a.jqx.date(0),max:new a.jqx.date(9999,12,31),date:new a.jqx.date("todayDate"),colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF","#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8","#E8601A","#FF9639","#F5BD6A","#599994","#115D6E","#D02841","#FF7C41","#FFC051","#5B5F4D","#364651","#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00","#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B","#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63","#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6","#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F","#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825","#993144","#FFA257","#CCA56A","#ADA072","#949681","#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932","#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54","#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3","#444546","#FFBB6E","#F28D00","#D94F00","#7F203B","#583C39","#674E49","#948658","#F0E99A","#564E49","#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17","#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5","#844341","#D5CC92","#BBA146","#897B26","#55591C","#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472","#96003A","#FF7347","#FFBC7B","#FF4154","#642223","#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E","#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7","#7B1A25","#BF5322","#9DA860","#CEA457","#B67818","#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46","#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800","#FF6800","#A0A700","#FF8D00","#678900","#0069A5"],colorSchemes:[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]}],resources:null,contextMenu:true,contextMenuOpen:null,contextMenuClose:null,contextMenuItemClick:null,contextMenuCreate:null,timeZone:null,statuses:{free:"white",tentative:"tentative",busy:"transparent",outOfOffice:"#800080"},appointmentDataFields:{from:"from",to:"to",id:"id",calendarId:"calendarId",description:"description",location:"location",subject:"subject",background:"background",color:"color",borderColor:"borderColor",style:"style",recurrencePattern:"recurrencePattern",recurrenceException:"recurrenceException",draggable:"draggable",resizable:"resizable",resourceId:"resourceId",status:"status",tooltip:"tooltip",hidden:"hidden",allDay:"allDay",timeZone:"timeZone",ownerId:"ownerId"},appointmentTooltips:true,tableColumns:1,tableRows:1,dayNameFormat:"full",touchDayNameFormat:"abbr",toolBarRangeFormat:"dd MMMM yyyy",toolBarRangeFormatAbbr:"dd MM yyyy",columnRenderer:null,exportSettings:{columnsHeader:true,hiddenColumns:false,serverURL:null,characterSet:null,collapsedRecords:false,recordsInView:true,fileName:"jqxScheduler"},source:{beforeprocessing:null,beforesend:null,loaderror:null,localdata:null,data:null,datatype:"array",datafields:[],url:"",root:"",record:"",id:"",totalrecords:0,recordstartindex:0,recordendindex:0,loadallrecords:true,sortcolumn:null,sortdirection:null,sort:null,filter:null,sortcomparer:null},editDialogDateTimeFormatString:"dd/MM/yyyy hh:mm tt",editDialogDateFormatString:"dd/MM/yyyy",editDialogOpen:null,editDialogCreate:null,editDialogKeyDown:null,editDialogClose:null,toolbarHeight:54,tableZIndex:369,_updating:false,touchMode:"auto",width:800,that:this,beginDrag:null,endDrag:null,dragging:null,timeZones:[{id:"Dateline Standard Time",offset:-720,offsetHours:-12,displayName:"(UTC-12:00) International Date Line West",supportsDaylightSavingTime:false},{id:"UTC-11",offset:-660,offsetHours:-11,displayName:"(UTC-11:00) Coordinated Universal Time-11",supportsDaylightSavingTime:false},{id:"Hawaiteratoran Standard Time",offset:-600,offsetHours:-10,displayName:"(UTC-10:00) Hawaiterator",supportsDaylightSavingTime:false},{id:"Alaskan Standard Time",offset:-540,offsetHours:-9,displayName:"(UTC-09:00) Alaska",supportsDaylightSavingTime:true},{id:"Pacific Standard Time (Mexico)",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Baja California",supportsDaylightSavingTime:true},{id:"Pacific Standard Time",offset:-480,offsetHours:-8,displayName:"(UTC-08:00) Pacific Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Arizona",supportsDaylightSavingTime:false},{id:"Mountain Standard Time (Mexico)",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",supportsDaylightSavingTime:true},{id:"Mountain Standard Time",offset:-420,offsetHours:-7,displayName:"(UTC-07:00) Mountain Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central Time (US & Canada)",supportsDaylightSavingTime:true},{id:"Central America Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Central America",supportsDaylightSavingTime:false},{id:"Canada Central Standard Time",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Saskatchewan",supportsDaylightSavingTime:false},{id:"Central Standard Time (Mexico)",offset:-360,offsetHours:-6,displayName:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",supportsDaylightSavingTime:true},{id:"SA Pacific Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Bogota, Lima, Quito, Rio Branco",supportsDaylightSavingTime:false},{id:"Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Eastern Time (US & Canada)",supportsDaylightSavingTime:true},{id:"US Eastern Standard Time",offset:-300,offsetHours:-5,displayName:"(UTC-05:00) Indiana (East)",supportsDaylightSavingTime:true},{id:"Venezuela Standard Time",offset:-270,offsetHours:-4.5,displayName:"(UTC-04:30) Caracas",supportsDaylightSavingTime:false},{id:"Atlantic Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Atlantic Time (Canada)",supportsDaylightSavingTime:true},{id:"Paraguay Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Asuncion",supportsDaylightSavingTime:true},{id:"Central Brazilian Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Cuiaba",supportsDaylightSavingTime:true},{id:"Pacific SA Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Santiago",supportsDaylightSavingTime:true},{id:"SA Western Standard Time",offset:-240,offsetHours:-4,displayName:"(UTC-04:00) Georgetown, La Paz, Manaus",supportsDaylightSavingTime:false},{id:"Newfoundland Standard Time",offset:-210,offsetHours:-3.5,displayName:"(UTC-03:30) Newfoundland",supportsDaylightSavingTime:true},{id:"SA Eastern Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Cayenne, Fortaleza",supportsDaylightSavingTime:false},{id:"Argentina Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Buenos Aires",supportsDaylightSavingTime:true},{id:"E. South America Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Brasilia",supportsDaylightSavingTime:true},{id:"Bahia Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Salvador",supportsDaylightSavingTime:true},{id:"Montevideo Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Montevideo",supportsDaylightSavingTime:true},{id:"Greenland Standard Time",offset:-180,offsetHours:-3,displayName:"(UTC-03:00) Greenland",supportsDaylightSavingTime:true},{id:"UTC-02",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Coordinated Universal Time-02",supportsDaylightSavingTime:false},{id:"Mid-Atlantic Standard Time",offset:-120,offsetHours:-2,displayName:"(UTC-02:00) Mid-Atlantic - Old",supportsDaylightSavingTime:true},{id:"Azores Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Azores",supportsDaylightSavingTime:true},{id:"Cape Verde Standard Time",offset:-60,offsetHours:-1,displayName:"(UTC-01:00) Cape Verde Is.",supportsDaylightSavingTime:false},{id:"Morocco Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Casablanca",supportsDaylightSavingTime:true},{id:"UTC",offset:0,offsetHours:0,displayName:"(UTC) Coordinated Universal Time",supportsDaylightSavingTime:false},{id:"GMT Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Dublin, Edinburgh, Lisbon, London",supportsDaylightSavingTime:true},{id:"Greenwich Standard Time",offset:0,offsetHours:0,displayName:"(UTC) Monrovia, Reykjavik",supportsDaylightSavingTime:false},{id:"Central European Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",supportsDaylightSavingTime:true},{id:"Namibia Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Windhoek",supportsDaylightSavingTime:true},{id:"W. Central Africa Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) West Central Africa",supportsDaylightSavingTime:false},{id:"W. Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Amsterdam, Berlin, Rome",supportsDaylightSavingTime:true},{id:"Central Europe Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Belgrade, Budapest, Prague",supportsDaylightSavingTime:true},{id:"Romance Standard Time",offset:60,offsetHours:1,displayName:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",supportsDaylightSavingTime:true},{id:"FLE Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia",supportsDaylightSavingTime:true},{id:"South Africa Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Harare, Pretoria",supportsDaylightSavingTime:false},{id:"Turkey Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Istanbul",supportsDaylightSavingTime:true},{id:"GTB Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Athens, Bucharest",supportsDaylightSavingTime:true},{id:"Libya Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Tripoli",supportsDaylightSavingTime:true},{id:"E. Europe Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) E. Europe",supportsDaylightSavingTime:true},{id:"Jordan Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Amman",supportsDaylightSavingTime:true},{id:"Middle East Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Beirut",supportsDaylightSavingTime:true},{id:"Egypt Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Cairo",supportsDaylightSavingTime:true},{id:"Syria Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Damascus",supportsDaylightSavingTime:true},{id:"Israel Standard Time",offset:120,offsetHours:2,displayName:"(UTC+02:00) Jerusalem",supportsDaylightSavingTime:true},{id:"Arab Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kuwait, Riyadh",supportsDaylightSavingTime:false},{id:"E. Africa Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Nairobi",supportsDaylightSavingTime:false},{id:"Arabic Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Baghdad",supportsDaylightSavingTime:true},{id:"Kaliningrad Standard Time",offset:180,offsetHours:3,displayName:"(UTC+03:00) Kaliningrad, Minsk",supportsDaylightSavingTime:true},{id:"Iran Standard Time",offset:210,offsetHours:3.5,displayName:"(UTC+03:30) Tehran",supportsDaylightSavingTime:true},{id:"Mauritius Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Port Louis",supportsDaylightSavingTime:true},{id:"Georgian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Tbilisi",supportsDaylightSavingTime:false},{id:"Caucasus Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Yerevan",supportsDaylightSavingTime:true},{id:"Arabian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Abu Dhabi, Muscat",supportsDaylightSavingTime:false},{id:"Azerbaijan Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Baku",supportsDaylightSavingTime:true},{id:"Russian Standard Time",offset:240,offsetHours:4,displayName:"(UTC+04:00) Moscow, St. Petersburg, Volgograd",supportsDaylightSavingTime:true},{id:"Afghanistan Standard Time",offset:270,offsetHours:4.5,displayName:"(UTC+04:30) Kabul",supportsDaylightSavingTime:false},{id:"Pakistan Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Islamabad, Karachi",supportsDaylightSavingTime:true},{id:"West Asia Standard Time",offset:300,offsetHours:5,displayName:"(UTC+05:00) Ashgabat, Tashkent",supportsDaylightSavingTime:false},{id:"India Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",supportsDaylightSavingTime:false},{id:"Sri Lanka Standard Time",offset:330,offsetHours:5.5,displayName:"(UTC+05:30) Sri Jayawardenepura",supportsDaylightSavingTime:false},{id:"Nepal Standard Time",offset:345,offsetHours:5.75,displayName:"(UTC+05:45) Kathmandu",supportsDaylightSavingTime:false},{id:"Central Asia Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Astana",supportsDaylightSavingTime:false},{id:"Bangladesh Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Dhaka",supportsDaylightSavingTime:true},{id:"Ekaterinburg Standard Time",offset:360,offsetHours:6,displayName:"(UTC+06:00) Ekaterinburg",supportsDaylightSavingTime:true},{id:"Myanmar Standard Time",offset:390,offsetHours:6.5,displayName:"(UTC+06:30) Yangon (Rangoon)",supportsDaylightSavingTime:false},{id:"SE Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Bangkok, Hanoi, Jakarta",supportsDaylightSavingTime:false},{id:"N. Central Asia Standard Time",offset:420,offsetHours:7,displayName:"(UTC+07:00) Novosibirsk",supportsDaylightSavingTime:true},{id:"Ulaanbaatar Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Ulaanbaatar",supportsDaylightSavingTime:false},{id:"China Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Beijing, Chongqing, Hong Kong",supportsDaylightSavingTime:false},{id:"Singapore Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Kuala Lumpur, Singapore",supportsDaylightSavingTime:false},{id:"North Asia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Krasnoyarsk",supportsDaylightSavingTime:true},{id:"Taipei Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Taipei",supportsDaylightSavingTime:false},{id:"W. Australia Standard Time",offset:480,offsetHours:8,displayName:"(UTC+08:00) Perth",supportsDaylightSavingTime:true},{id:"Korea Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Seoul",supportsDaylightSavingTime:false},{id:"North Asia East Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Irkutsk",supportsDaylightSavingTime:true},{id:"Tokyo Standard Time",offset:540,offsetHours:9,displayName:"(UTC+09:00) Osaka, Sapporo, Tokyo",supportsDaylightSavingTime:false},{id:"AUS Central Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Darwin",supportsDaylightSavingTime:false},{id:"Cen. Australia Standard Time",offset:570,offsetHours:9.5,displayName:"(UTC+09:30) Adelaide",supportsDaylightSavingTime:true},{id:"West Pacific Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Guam, Port Moresby",supportsDaylightSavingTime:false},{id:"Tasmania Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Hobart",supportsDaylightSavingTime:true},{id:"E. Australia Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Brisbane",supportsDaylightSavingTime:false},{id:"AUS Eastern Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Canberra, Melbourne, Sydney",supportsDaylightSavingTime:true},{id:"Yakutsk Standard Time",offset:600,offsetHours:10,displayName:"(UTC+10:00) Yakutsk",supportsDaylightSavingTime:true},{id:"Vladivostok Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Vladivostok",supportsDaylightSavingTime:true},{id:"Central Pacific Standard Time",offset:660,offsetHours:11,displayName:"(UTC+11:00) Solomon Is., New Caledonia",supportsDaylightSavingTime:false},{id:"Magadan Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Magadan",supportsDaylightSavingTime:true},{id:"Kamchatka Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",supportsDaylightSavingTime:true},{id:"Fiji Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Fiji",supportsDaylightSavingTime:true},{id:"New Zealand Standard Time",offset:720,offsetHours:12,displayName:"(UTC+12:00) Auckland, Wellington",supportsDaylightSavingTime:true},{id:"UTC+12",offset:720,offsetHours:12,displayName:"(UTC+12:00) Coordinated Universal Time+12",supportsDaylightSavingTime:false},{id:"Tonga Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Nuku'alofa",supportsDaylightSavingTime:false},{id:"Samoa Standard Time",offset:780,offsetHours:13,displayName:"(UTC+13:00) Samoa",supportsDaylightSavingTime:true}]};a.extend(true,this,c);this.that=this;return c},createInstance:function(d){var h=this;h._views=new Array();h._view=h.view;for(var e=0;e<h.views.length;e++){if(a.type(h.views[e])==="string"){h._views.push({type:h.views[e]})}else{h._views.push(h.views[e])}}for(var e=0;e<h._views.length;e++){if(h._views[e].type==h.view){h._view=e;break}}if(a.jqx.utilities.scrollBarSize!=15){h.scrollBarSize=a.jqx.utilities.scrollBarSize}if(h.source&&!h.source.dataBind){h.source=new a.jqx.dataAdapter(h.source)}var c=h.source._source.datafields;if(c&&c.length>0){h._camelCase=h.source._source.dataFields!==undefined;h.selectionMode=h.selectionMode.toLowerCase()}if(h.host.attr("tabindex")==null){h.host.attr("tabindex","0")}h.host.attr("role","grid");h.host.attr("align","left");h.host.addClass(h.toTP("jqx-grid"));h.host.addClass(h.toTP("jqx-scheduler"));h.host.addClass(h.toTP("jqx-reset"));h.host.addClass(h.toTP("jqx-rc-all"));h.host.addClass(h.toTP("jqx-widget"));h.host.addClass(h.toTP("jqx-widget-content jqx-disableselect"));if(h._testmodules()){return}h.overlay=a("<div style='z-index: 999; position:absolute;'></div>");h.overlay.hide();h.overlay.appendTo(h.host);h.render(true);a.jqx.utilities.resize(h.host,function(){var l=a(window).width();var i=a(window).height();h._hostWidth=null;h._hostHeight=null;var k=h.host.width();var m=h.host.height();h._hostWidth=k;h._hostHeight=m;if(h._lastHostWidth!=k||h._lastHostHeight!=m){h._updatesize(h._lastHostWidth!=k,h._lastHostHeight!=m)}h._lastWidth=l;h._lastHeight=i;h._lastHostWidth=k;h._lastHostHeight=m});h.editRecurrenceDialog=null;var f=a("<div><div>"+h.schedulerLocalization.editRecurringAppointmentDialogTitleString+"</div><div><div>"+h.schedulerLocalization.editRecurringAppointmentDialogContentString+"</div><div style='position: absolute; white-space:nowrap; text-overflow: ellipsis; left:0px; width:100%; bottom: 0px;'><button title='"+h.schedulerLocalization.editRecurringAppointmentDialogOccurrenceString+"' id='editRecurringAppointmentOccurrence."+h.element.id+"' style='white-space:nowrap; text-overflow: ellipsis; border-left-width: 0px;  border-bottom-width: 0px; border-radius:0px; width:50%;'>"+h.schedulerLocalization.editRecurringAppointmentDialogOccurrenceString+"</button><button title='"+h.schedulerLocalization.editRecurringAppointmentDialogSeriesString+"' id='editRecurringAppointmentSeries."+h.element.id+"' style=' white-space:nowrap; text-overflow: ellipsis; border-bottom-width: 0px;  border-left-width: 0px; border-right-width:0px; width:50%; border-radius:0px;'>"+h.schedulerLocalization.editRecurringAppointmentDialogSeriesString+"</button></div></div></div>");a(f).jqxWindow({rtl:h.rtl,autoFocus:false,animationType:"none",autoOpen:false,theme:h.theme,minWidth:300,minHeight:110,resizable:false});var g=f.find("button");g.jqxButton({theme:h.theme,width:"50%",height:30});var j=false;g.mousedown(function(){j=true;var i=this.id;if(i.indexOf("editRecurringAppointmentOccurrence")>=0){h.editSeries(false)}else{h.editSeries(true)}a(f).jqxWindow("close")});this.addHandler(a(f),"open",function(i){h._raiseEvent("editRecurrenceDialogOpen",{dialog:f,appointment:h.selectedJQXAppointment?h.selectedJQXAppointment.boundAppointment:null})});h.addHandler(a(f),"keydown",function(i){if(i.keyCode==13){if(a(document.activeElement).ischildof(a(f))){if(document.activeElement.nodeName.toLowerCase()=="button"){a(document.activeElement).trigger("mousedown");a(document.activeElement).trigger("mouseup");return true}}}});this.addHandler(a(f),"close",function(i){if(!j){h._removeFeedbackAndStopResize();h.overlay.hide();h.focus();h._raiseEvent("editRecurrenceDialogClose",{dialog:f,appointment:h.selectedJQXAppointment?h.selectedJQXAppointment.boundAppointment:null});return false}j=false;h.overlay.hide();h.focus();h._raiseEvent("editRecurrenceDialogClose",{dialog:f,appointment:h.selectedJQXAppointment?h.selectedJQXAppointment.boundAppointment:null})});h.editRecurrenceDialog=f},_initMenu:function(){var d=this;if(this.host.jqxMenu){if(this.menu){if(this._hasOpenedMenu){return}this.removeHandler(this.menu,"keydown");this.removeHandler(this.menu,"closed");this.removeHandler(this.menu,"itemclick");this.menu.jqxMenu("destroy");this.menu.removeData();this.menu.remove()}this.menuitemsarray=new Array();this.menu=a('<div id="menu.jqxscheduler'+this.element.id+'" style="white-space: nowrap; z-index: 9999999999999;"></div>');this.host.append(this.menu);this.addHandler(a(window),"orientationchange.jqxscheduler"+this.element.id,function(){d.menu.jqxMenu("close");d._hasOpenedMenu=false});this.addHandler(a(window),"orientationchanged.jqxscheduler"+this.element.id,function(){d.menu.jqxMenu("close");d._hasOpenedMenu=false});this.removeHandler(this.menu,"keydown");this.addHandler(this.menu,"keydown",function(f){if(f.keyCode==27){d.menu.jqxMenu("close");d._hasOpenedMenu=false;d.focus()}});this.addHandler(this.menu,"open",function(f){if(d.contextMenuOpen){d.contextMenuOpen(d.menu,d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null,f)}d._raiseEvent("contextMenuOpen",{menu:d.menu,appointment:d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null});d._removeFeedbackAndStopResize()});this.addHandler(this.menu,"close",function(f){if(d.contextMenuClose){d.contextMenuClose(d.menu,d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null,f)}d._hasOpenedMenu=false;if(document.activeElement&&document.activeElement.className.indexOf("jqx-menu")>=0){d.focus()}d._raiseEvent("contextMenuClose",{menu:d.menu,appointment:d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null})});this.addHandler(this.host,"contextmenu",function(f){f.preventDefault();f.stopPropagation();return false});this.addHandler(this.menu,"itemclick",function(i){var h=d.menu.jqxMenu("getItem",i.args.id);d._raiseEvent("contextMenuItemClick",{item:h,menu:d.menu,appointment:d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null});if(d.contextMenuItemClick){var g=d.contextMenuItemClick(d.menu,d.selectedJQXAppointment?d.selectedJQXAppointment.boundAppointment:null,i);if(g==true){if(new Date()-d.renderedTime>500){d._renderrows()}d.menu.jqxMenu("close");d._hasOpenedMenu=false;return}}if(h.id=="createAppointment"){d._initDialog();d._openDialog();if(i.args.clickType=="keyboard"){d.menu.jqxMenu("close");d._hasOpenedMenu=false}}else{if(h.id=="editAppointment"){var f=d.getJQXAppointmentByElement(d.selectedAppointment);if(!f.readOnly){var g=d._initDialog(f);if(g!==false){d._openDialog()}}if(i.args.clickType=="keyboard"){d.menu.jqxMenu("close");d._hasOpenedMenu=false}}else{if(i.args.clickType=="keyboard"){d.menu.jqxMenu("close");d._hasOpenedMenu=false}return true}}});var e=new Array();e.push({label:this.schedulerLocalization.contextMenuEditAppointmentString,id:"editAppointment"});e.push({label:this.schedulerLocalization.contextMenuCreateAppointmentString,id:"createAppointment"});var c={rtl:this.rtl,keyboardNavigation:true,source:e,popupZIndex:999999,autoOpenPopup:false,mode:"popup",theme:this.theme,animationShowDuration:0,animationHideDuration:0,animationShowDelay:0};if(d.contextMenuCreate){d.contextMenuCreate(d.menu,c)}d._raiseEvent("contextMenuCreate",{menu:d.menu,settings:c});this.menu.jqxMenu(c)}},getViewStart:function(){var e=this.getVisibleDate();var c=this._views[this._view].type;var f=this._views[this._view];switch(c){case"dayView":case"timelineDayView":return e}var d=this.getFirstDayOfWeek(e);return d},getViewEnd:function(){var f=this.getViewStart();var e=1;var c=this._views[this._view].type;var d=this._views[this._view];switch(c){case"dayView":case"timelineDayView":e=1;break;case"weekView":case"timelineWeekView":e=7;break;case"monthView":case"timelineMonthView":e=41;break}return f.addDays(e)},getFirstDayOfWeek:function(e){var d=e;var c=this.schedulerLocalization.firstDay;if(c<0||c>6){c=6}while(d.dayOfWeek()!=c){d.addDays(-1,false)}return d},getVisibleDate:function(){var e=this.date;if(e<this.min){e=this.min}if(e>this.max){e=this.max}var c=this._views[this._view].type;var g=this._views[this._view];e=e.clearTime();switch(c){case"dayView":case"weekView":case"timelineDayView":case"timelineWeekView":return e}var f=e.day();var d=e.addDays(-f+1);e=d;return e},_builddataloadelement:function(){if(this.dataloadelement){this.dataloadelement.remove()}this.dataloadelement=a('<div class="jqx-datatable-load" style="z-index: 99998; background-color:rgba(50,50,50,0.1); overflow: hidden; position: absolute;"></div>');var d=a('<div style="z-index: 99999; margin-left: -66px; left: 50%; top: 50%; margin-top: -24px; position: relative; width: 100px; height: 33px; padding: 5px; font-family: verdana; font-size: 12px; color: #767676; border-color: #898989; border-width: 1px; border-style: solid; background: #f6f6f6; border-collapse: collapse;"><div style="float: left;"><div style="float: left; overflow: hidden; width: 32px; height: 32px;" class="jqx-grid-load"/><span style="margin-top: 10px; float: left; display: block; margin-left: 5px;" >'+this.schedulerLocalization.loadString+"</span></div></div>");d.addClass(this.toTP("jqx-rc-all"));this.dataloadelement.addClass(this.toTP("jqx-rc-all"));d.addClass(this.toTP("jqx-fill-state-normal"));this.dataloadelement.append(d);this.dataloadelement.width(this.width);this.dataloadelement.height(this.height);this.host.prepend(this.dataloadelement);if(this.source._source.url!=""){var c=false;if(this.height==="auto"||this.height===null||this.autoheight){if(this.maxHeight==999999){c=true}}if(c){this.host.height(100);this.dataloadelement.height(100)}else{this.host.height(this.height);this.dataloadelement.height(this.height)}var e=false;if(this.width==="auto"||this.width===null||this.autoWidth){e=true}if(e){this.host.width(300);this.dataloadelement.width(300)}else{this.host.width(this.width);this.dataloadelement.width(this.width)}}},_measureElement:function(d){var c=a("<span style='visibility: hidden; white-space: nowrap;'>measure Text</span>");c.addClass(this.toTP("jqx-widget"));a(document.body).append(c);if(d=="cell"){this._cellheight=c.height()}else{this._columnheight=c.height()}c.remove()},_testmodules:function(){var f="";var d=this;var c=function(){if(f.length!=""){f+=","}};if(!this.host.jqxScrollBar){c();f+=" jqxscrollbar.js"}if(!this.host.jqxButton){c();f+=" jqxbuttons.js"}if(!a.jqx.dataAdapter){c();f+=" jqxdata.js"}if(!this.host.jqxDateTimeInput){c();f+=" jqxdatetimeinput.js"}if(!this.host.jqxCalendar){c();f+=" jqxcalendar.js"}try{if(!Globalize){c();f+=" globalize.js"}}catch(e){}if(f!=""){throw new Error("jqxScheduler: Missing references to the following module(s): "+f);this.host.remove();return true}return false},focus:function(){try{if(this.editDialog&&this.editDialog.jqxWindow("isOpen")){var d=this;setTimeout(function(){d.editDialogFields.subject.focus();d.editDialogFields.subject.select()},1);this.focused=true;return}if(document.activeElement==this.element){return}this.host.focus();var d=this;setTimeout(function(){d.host.focus()},25);this.focused=true}catch(c){}},hiddenParent:function(){return a.jqx.isHidden(this.host)},_updatesize:function(i,h){if(this._loading){return}var f=this;var g=f.host.width();var e=f.host.height();if(!f._oldWidth){f._oldWidth=g}if(!f._oldHeight){f._oldHeight=e}if(f._resizeTimer!=undefined){clearTimeout(f._resizeTimer);f._resizeTimer=null}var d=300;var c=function(){if(f._resizeTimer){clearTimeout(f._resizeTimer)}f.resizingGrid=true;if(a.jqx.isHidden(f.host)){return}f._updatecolumnwidths();f.refresh();f._oldWidth=g;f._oldHeight=e;f.resizingGrid=false};c();f._resizeTimer=setTimeout(function(){var k=f.host.width();var j=f.host.height();if(f._oldWidth!=k||f._oldHeight!=j){c()}},d)},resize:function(d,c){if(d!=undefined){this.width=d}if(c!=undefined){this.height=c}this._updatecolumnwidths();this.refresh()},isTouchDevice:function(){if(this.touchDevice!=undefined){return this.touchDevice}var c=a.jqx.mobile.isTouchDevice();this.touchDevice=c;if(this.touchMode==true){c=true;a.jqx.mobile.setMobileSimulator(this.element);this.touchDevice=c}else{if(this.touchMode==false){c=false}}if(c){this.touchDevice=true;this.host.addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-content").addClass(this.toThemeProperty("jqx-touch"));this.host.find("jqx-widget-header").addClass(this.toThemeProperty("jqx-touch"));this.scrollBarSize=this.touchScrollBarSize}return c},toTP:function(c){return this.toThemeProperty(c)},localizestrings:function(c,d){this._cellscache=new Array();if(a.jqx.dataFormat){a.jqx.dataFormat.cleardatescache()}if(this._loading){throw new Error("jqxScheduler: "+this.loadingErrorMessage);return false}if(c!=null){for(var e in this.schedulerLocalization){if(c[e]){this.schedulerLocalization[e]=c[e]}}if(c.loadingErrorMessage){this.loadingErrorMessage=c.loadingErrorMessage}if(d!==false){this._builddataloadelement();a(this.dataloadelement).css("visibility","hidden");a(this.dataloadelement).css("display","none")}}else{this.schedulerLocalization={"/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",d3:"dd-MMMM-yyyy",d4:"dd-MM-yy",d5:"H:mm",d6:"HH:mm",d7:"HH:mm tt",d8:"dd/MMMM/yyyy",d9:"MMMM-dd",d10:"MM-dd",d11:"MM-dd-yyyy"},agendaDateColumn:"Date",agendaTimeColumn:"Time",agendaAppointmentColumn:"Appointment",backString:"Back",forwardString:"Forward",toolBarPreviousButtonString:"previous",toolBarNextButtonString:"next",emptyDataString:"No data to display",loadString:"Loading...",clearString:"Clear",todayString:"Today",dayViewString:"Day",weekViewString:"Week",monthViewString:"Month",timelineDayViewString:"Timeline Day",timelineWeekViewString:"Timeline Week",timelineMonthViewString:"Timeline Month",loadingErrorMessage:"The data is still loading and you cannot set a property or call a method. You can do that once the data binding is completed. jqxScheduler raises the 'bindingComplete' event when the binding is completed.",editRecurringAppointmentDialogTitleString:"Edit Recurring Appointment",editRecurringAppointmentDialogContentString:"Do you want to edit only this occurrence or the series?",editRecurringAppointmentDialogOccurrenceString:"Edit Occurrence",editRecurringAppointmentDialogSeriesString:"Edit The Series",editDialogTitleString:"Edit Appointment",editDialogCreateTitleString:"Create New Appointment",contextMenuEditAppointmentString:"Edit Appointment",contextMenuCreateAppointmentString:"Create New Appointment",editDialogSubjectString:"Subject",editDialogLocationString:"Location",editDialogFromString:"From",editDialogToString:"To",editDialogAllDayString:"All day",editDialogExceptionsString:"Exceptions",editDialogResetExceptionsString:"Reset on Save",editDialogDescriptionString:"Description",editDialogResourceIdString:"Owner",editDialogStatusString:"Status",editDialogColorString:"Color",editDialogColorPlaceHolderString:"Select Color",editDialogTimeZoneString:"Time Zone",editDialogSelectTimeZoneString:"Select Time Zone",editDialogSaveString:"Save",editDialogDeleteString:"Delete",editDialogCancelString:"Cancel",editDialogRepeatString:"Repeat",editDialogRepeatEveryString:"Repeat every",editDialogRepeatEveryWeekString:"week(s)",editDialogRepeatEveryYearString:"year(s)",editDialogRepeatEveryDayString:"day(s)",editDialogRepeatNeverString:"Never",editDialogRepeatDailyString:"Daily",editDialogRepeatWeeklyString:"Weekly",editDialogRepeatMonthlyString:"Monthly",editDialogRepeatYearlyString:"Yearly",editDialogRepeatEveryMonthString:"month(s)",editDialogRepeatEveryMonthDayString:"Day",editDialogRepeatFirstString:"first",editDialogRepeatSecondString:"second",editDialogRepeatThirdString:"third",editDialogRepeatFourthString:"fourth",editDialogRepeatLastString:"last",editDialogRepeatEndString:"End",editDialogRepeatAfterString:"After",editDialogRepeatOnString:"On",editDialogRepeatOfString:"of",editDialogRepeatOccurrencesString:"occurrence(s)",editDialogRepeatSaveString:"Save Occurrence",editDialogRepeatSaveSeriesString:"Save Series",editDialogRepeatDeleteString:"Delete Occurrence",editDialogRepeatDeleteSeriesString:"Delete Series",editDialogStatuses:{free:"Free",tentative:"Tentative",busy:"Busy",outOfOffice:"Out of Office"}}}},_updateScrollbars:function(s){var k=false;var e=this;if(e.width==="auto"||e.width===null||e.autowidth){if(e.maxWidth==999999){k=true}}var i=e._views[e._view].type;var h=e._views[e._view];if(i=="monthView"&&e.resources&&e.resources.orientation=="none"){var l=e.vScrollBar[0].style.visibility;e.hScrollBar[0].style.visibility="hidden";e.vScrollBar[0].style.visibility="hidden";if((l!=e.vScrollBar[0].style.visibility)){e._updatecolumnwidths()}return}var c=parseInt(e.scrollBarSize);var t=e.table?e.table.height():0;var j=0;var o="inherit";var l=e.vScrollBar[0].style.visibility;var p=e.hScrollBar[0].style.visibility;if(!s){var g=e.host.height()}else{var g=s}if(!e.columnGroups){g-=e.showHeader?e.columnsHeight:0}else{g-=e.showHeader?e.columnsheader.height():0}if(e.filterable){g-=e.filter.height()}if(e.pageable){g-=e.pagerHeight;if(e.pagerPosition==="both"){g-=e.pagerHeight}}if(e.showToolbar){g-=e.toolbarHeight}if(e.showLegend&&e._resources.length>0){g-=e.legendHeight}var n=false;if(e.height==="auto"||e.height===null||e.autoheight){if(e.maxHeight==999999){n=true}}if(!n&&t>g&&(e.getRows().length>0)){e.vScrollBar[0].style.visibility=o;j=4+parseInt(c);e.vScrollBar.jqxScrollBar({max:t-g})}else{e.vScrollBar[0].style.visibility="hidden"}if((l!=e.vScrollBar[0].style.visibility)){e._updatecolumnwidths()}var q=e.table?e.table.width():0;if(q>4){q-=4}var r=parseInt(e.host.css("border-left-width"))+parseInt(e.host.css("border-right-width"));var m=r+e.host.width()-j;if(q>m&&!k){e.hScrollBar[0].style.visibility=o;e.hScrollBar.jqxScrollBar({max:2+r+q-m});j=4+parseInt(c);if(!n&&t!=g){if(t>g-j+4&&(e.getRows().length>0)){e.hScrollBar.jqxScrollBar({max:r+q-m});var d=e.vScrollBar[0].style.visibility==="hidden";e.vScrollBar[0].style.visibility=o;e._updatecolumnwidths();if(d){e.hScrollBar.jqxScrollBar({max:q-m+r})}var f=e.table?e.table.width():0;if(f>3){f-=3}if(f!=q){if(f<m){e.hScrollBar.jqxScrollBar({max:r+f-m});e.hScrollBar[0].style.visibility="hidden";j=0}else{if(!d){e.hScrollBar.jqxScrollBar({max:q-m+r-c})}}}}if(t-g>0){e.vScrollBar.jqxScrollBar({max:t-g+j})}else{e.vScrollBar[0].style.visibility="hidden"}}}else{e.hScrollBar[0].style.visibility="hidden"}if(e.getRows().length===0){e.vScrollBar[0].style.visibility="hidden";e.bottomRight[0].style.visibility="hidden"}if(e.vScrollBar[0].style.visibility=="hidden"){if(e.vScrollInstance.value!=0){e.vScrollInstance.setPosition(0)}}},_measureElementWidth:function(e){var d=a("<span style='visibility: hidden; white-space: nowrap;'>"+e+"</span>");d.addClass(this.toTP("jqx-widget"));d.addClass(this.toTP("jqx-grid"));d.addClass(this.toTP("jqx-grid-column-header"));d.addClass(this.toTP("jqx-widget-header"));a(document.body).append(d);var c=d.outerWidth()+20;d.remove();return c},_arrangeAutoHeight:function(e){if(!e){e=0}if(this.height==="auto"||this.height===null||this.autoheight){var h=this.table.height();var g=0;if(!this.columnGroups){g+=this.showHeader?this.columnsHeight:-1}else{g+=this.showHeader?this.columnsheader.height():-1}g+=this.showLegend&&this._resources.length>0?this.legendHeight:0;g+=this.showToolbar?this.toolbarHeight:0;g+=this.pageable?this.pagerHeight:0;if(this.pagerPosition==="both"){g+=this.pageable?this.pagerHeight:0}g+=h;if(this.filterable){var f=this.filter.find(".filterrow");var c=this.filter.find(".filterrow-hidden");var d=1;if(c.length>0){d=0}g+=this.filterHeight-1+this.filterHeight*f.length*d}if(g+e>this.maxHeight){this.host.height(this.maxHeight)}else{this.host.height(g+e)}return true}return false},_arrangeAutoWidth:function(e){if(!e){e=0}if(this.width==="auto"||this.width===null||this.autowidth){var d=0;for(var f=0;f<this.columns.records.length;f++){var c=this.columns.records[f].width;if(this.columns.records[f].hidden){continue}if(c=="auto"){c=this._measureElementWidth(this.columns.records[f].text);d+=c}else{d+=c}}width=d;if(width+e>this.maxWidth){this.host.width(this.maxWidth)}else{this.host.width(width+e)}return true}return false},_measureTopAndHeight:function(){var c=this.host.height();var d=0;if(this.showToolbar){d+=this.toolbarHeight;c-=parseInt(this.toolbarHeight)}if(this.showLegend&&this.legendPosition!="bottom"&&this._resources.length>0){d+=parseInt(this.legendHeight)+1}return{top:d,height:c}},_arrange:function(){if(!this.table){return}this._arrangeAutoHeight();this._arrangeAutoWidth();var e=this.legendHeight;if(this._resources.length==0){e=0}var u=this._hostWidth?this._hostWidth:this.host.width();var r=this._hostHeight?this._hostHeight:this.host.height();var k=r;var j=this;if(this.showLegend&&this.legendPosition=="top"){this.legendbartop[0].style.visibility="inherit"}else{this.legendbartop[0].style.visibility="hidden"}var q=0;if(this.showToolbar){this.toolbar.width(u);this.toolbar[0].style.height=this.toolbarHeight-1+"px";this.toolbar[0].style.top="0px";q+=this.toolbarHeight;r-=parseInt(this.toolbarHeight)}else{this.toolbar[0].style.height="0px"}if(this.showLegend&&this.legendPosition=="bottom"){this.legendbarbottom[0].style.width=u+"px";this.legendbarbottom[0].style.height=e+"px"}else{this.legendbarbottom[0].style.height="0px"}if(this.showLegend&&this.legendPosition=="top"){if(this.legendbartop[0].style.width!=u+"px"){this.legendbartop[0].style.width=parseInt(u)+"px"}if(this.legendbartop[0].style.height!=e+"px"){this.legendbartop[0].style.height=parseInt(e-1)+"px"}if(this.legendbartop[0].style.top!=q+"px"){this.legendbartop[0].style.top=q+"px"}var f=q+e+"px";if(this.content[0].style.top!=f){q=q+e;this.content[0].style.top=q+"px"}}this._updateScrollbars(k);var c=parseInt(this.scrollBarSize);var n=4;var g=2;var h=0;if(this.vScrollBar[0].style.visibility!="hidden"){h=c+n}if(this.hScrollBar[0].style.visibility!="hidden"){g=c+n+2}if("hidden"!=this.vScrollBar[0].style.visibility||"hidden"!=this.hScrollBar[0].style.visibility){var v=this._arrangeAutoHeight(g-2);var s=this._arrangeAutoWidth(h+1);if(v||s){this.legendbartop[0].style.width=parseInt(u)+"px";this.toolbar[0].style.width=parseInt(u)+"px";this.legendbarbottom[0].style.width=parseInt(u)+"px";this.filter[0].style.width=parseInt(u)+"px"}if(v){var x=this._measureTopAndHeight();q=x.top;r=x.height}}var o=0;if(this.showLegend&&this.legendPosition=="bottom"){g+=e;o+=e}else{if(this.showLegend){g+=e}}if(this.hScrollBar[0].style.height!=c+"px"){this.hScrollBar[0].style.height=parseInt(c)+"px"}if(this.hScrollBar[0].style.top!=q+r-n-c-o+"px"||this.hScrollBar[0].style.left!="0px"){this.hScrollBar[0].style.top=q+r-n-c-o-1+"px";this.hScrollBar[0].style.left="0px"}var m=this.hScrollBar[0].style.width;var i=false;var w=false;if(h==0){if(m!=(u-2)+"px"){this.hScrollBar[0].style.width=(u-2)+"px";i=true}}else{if(m!=(u-c-n)+"px"){this.hScrollBar[0].style.width=(u-c-n+"px");i=true}}if(this.vScrollBar[0].style.width!=c+"px"){this.vScrollBar[0].style.width=c+"px";w=true}if(this.vScrollBar[0].style.height!=parseInt(r)-g+"px"){this.vScrollBar[0].style.height=(parseInt(r)-g+"px");w=true}if(this.vScrollBar[0].style.left!=parseInt(u)-parseInt(c)-n+"px"||this.vScrollBar[0].style.top!=q+"px"){this.vScrollBar[0].style.top=q+"px";this.vScrollBar[0].style.left=parseInt(u)-parseInt(c)-n+"px"}if(this.rtl){this.vScrollBar.css({left:"0px",top:q});if(this.vScrollBar.css("visibility")!="hidden"){this.hScrollBar.css({left:c+2})}}var l=this.vScrollInstance;l.disabled=this.disabled;var t=this.hScrollInstance;t.disabled=this.disabled;if(i){t.refresh()}if(w){l.refresh()}var p=function(y){if((y.vScrollBar[0].style.visibility!="hidden")&&(y.hScrollBar[0].style.visibility!="hidden")){y.bottomRight[0].style.visibility="inherit";y.bottomRight[0].style.left=1+parseInt(y.vScrollBar.css("left"))+"px";y.bottomRight[0].style.top=parseInt(y.hScrollBar.css("top"))+"px";if(y.rtl){y.bottomRight.css("left","0px")}y.bottomRight[0].style.width=parseInt(c)+3+"px";y.bottomRight[0].style.height=parseInt(c)+4+"px"}else{y.bottomRight[0].style.visibility="hidden"}};p(this);if(this.content[0].style.width!=u-h+"px"){this.content[0].style.width=u-h+"px"}if(this.content[0].style.height!=r-g+3+"px"){this.content[0].style.height=r-g+3+"px"}if(this.content[0].style.top!=q+"px"){this.content[0].style.top=parseInt(q)+"px"}if(this.rtl){this.content.css("left",h)}if(this.showLegend&&this.legendPosition=="bottom"){this.legendbarbottom.css("top",q-1+r-e-(this.pageable?this.pagerHeight:0));if(this.rtl){if(this.hScrollBar.css("visibility")=="hidden"){this.legendbarbottom.css("left",this.content.css("left"))}else{this.legendbarbottom.css("left","0px")}}}this.vScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;this.hScrollBar[0].style.zIndex=this.tableZIndex+this.headerZIndex+10+this.columns.records.length;if(u!=parseInt(this.dataloadelement[0].style.width)){this.dataloadelement[0].style.width=this.element.style.width}if(r!=parseInt(this.dataloadelement[0].style.height)){this.dataloadelement[0].style.height=this.element.style.height}this._hostWidth=u;this._hostHeight=k;var d=this.schedulercontent.coord();this._tableOffset=d},scrollOffset:function(e,d){if(arguments.length==0||(e!=null&&typeof(e)=="object"&&!e.top)){return{left:this.hScrollBar.jqxScrollBar("value"),top:this.vScrollBar.jqxScrollBar("value")}}if(e!=null&&typeof(e)=="object"){var d=e.left;var c=e.top;var e=c}if(e==null||d==null||e==undefined||d==undefined){return}this.vScrollBar.jqxScrollBar("setPosition",e);this.hScrollBar.jqxScrollBar("setPosition",d)},scrollleft:function(c){if(c==null||c==undefined){return}if(this.hScrollBar.css("visibility")!="hidden"){this.hScrollBar.jqxScrollBar("setPosition",c)}},scrolltop:function(c){if(c==null||c==undefined){return}if(this.vScrollBar.css("visibility")!="hidden"){this.vScrollBar.jqxScrollBar("setPosition",c)}},beginAppointmentsUpdate:function(){this._appupdating=true},endAppointmentsUpdate:function(){this._appupdating=false;this._renderrows()},beginUpdate:function(){this._updating=true;this._datachanged=false},endUpdate:function(c){this._updating=false;if(c===false){return}this._rendercolumnheaders();this.refresh()},updating:function(){return this._updating},databind:function(i,j,d){if(this.loadingstate===true){return}if(this.host.css("display")=="block"){if(this.autoShowLoadElement){a(this.dataloadelement).css("visibility","visible");a(this.dataloadelement).css("display","block");this.dataloadelement.width(this.host.width());this.dataloadelement.height(this.host.height())}else{a(this.dataloadelement).css("visibility","hidden");a(this.dataloadelement).css("display","none")}}var h=this;if(i==null){i={}}if(i.sortcomparer==undefined||i.sortcomparer==null){i.sortcomparer=null}if(i.filter==undefined||i.filter==null){i.filter=null}if(i.sort==undefined||i.sort==null){i.sort=null}if(i.data==undefined||i.data==null){i.data=null}var f=null;if(i!=null){f=i._source!=undefined?i._source.url:i.url}this.dataview=this.dataview||new a.jqx.scheduler.dataView("dataView");this.resourcesDataView=this.resourcesDataView||new a.jqx.scheduler.dataView("resourcesDataView");this.dataview.pageable=this.pageable;this.dataview.scheduler=this;this.resourcesDataView.scheduler=this;this._loading=true;this.appointments=new Array();this.uiappointments=new Array();var c=1;if(this.resources&&this.resources.source){c=2}var e=0;var g=function(){if(e==c){var l=h._resources.length>1?h._resources.length:1;if(h.resources&&h.resources.orientation==="horizontal"){h.tableColumns=l;h.tableRows=1}else{if(h.resources&&h.resources.orientation==="vertical"){h.tableRows=l;h.tableColumns=1}else{h.tableColumns=1;h.tableRows=1}}h._render();if(h.autoShowLoadElement&&!h._loading){a(h.dataloadelement).css("visibility","hidden");a(h.dataloadelement).css("display","none")}h._updateTouchScrolling();h._raiseEvent("bindingComplete");if(d){d()}if(!h.initializedcall){h.initializedcall=true;h.isInitialized=true;if((h.width!=null&&h.width.toString().indexOf("%")!=-1)||(h.height!=null&&h.height.toString().indexOf("%")!=-1)){h._updatesize(true)}if(h.ready){h.ready()}if(h.host.css("visibility")=="hidden"){var k=a.jqx.browser.msie&&a.jqx.browser.version<8;if(h.vScrollBar.css("visibility")=="visible"){h.vScrollBar.css("visibility","inherit")}if(h.hScrollBar.css("visibility")=="visible"){h.hScrollBar.css("visibility","inherit")}h._intervalTimer=setInterval(function(){if(h.host.css("visibility")=="visible"){h._updatesize(true);clearInterval(h._intervalTimer)}},100)}}}};this.dataview.update=function(B){h._loading=false;h.appointmentsByKey=new Array();var H=h.source._source.datafields;if(h.groups&&h.groups.length>0){var t=Object.prototype.toString;var l=h.groups[0];Object.prototype.toString=(typeof l=="function")?l:function(){return this[l]};if(!h.source.records.sort){var y=new Array();var q=0;a.each(data,function(){y[startindex+q++]=this});data=y}h.source.records.sort(function(L,K){if(L===undefined){L=null}if(K===undefined){K=null}if(L===null&&K===null){return 0}if(L===null&&K!==null){return -1}if(L!==null&&K===null){return 1}var O=0;var N=0;if(L&&L.uid){O=L.uid}if(K&&K.uid){N=K.uid}L=L.toString();K=K.toString();if(a.jqx.dataFormat.isNumber(L)&&a.jqx.dataFormat.isNumber(K)){if(L<K){return -1}if(L>K){return 1}return 0}else{if(a.jqx.dataFormat.isDate(L)&&a.jqx.dataFormat.isDate(K)){if(L<K){return -1}if(L>K){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(L)&&!a.jqx.dataFormat.isNumber(K)){L=String(L).toLowerCase();K=String(K).toLowerCase()}}}try{if(L<K){return -1}if(L>K){return 1}}catch(M){var P=M}if(typeof(O)=="number"){if(O<N){return -1}if(O>N){return 1}}return 0});Object.prototype.toString=t}var o=["from","to","id","style","description","location","subject","background","color","borderColor","recurrencePattern","recurrenceException","draggable","resizable","tooltip","hidden","allDay","timeZone","ownerId","resourceId"];var m=new Array();for(var C=0;C<h.source.records.length;C++){var p=h.source.records[C];var n={};for(var J in h.appointmentDataFields){var l=h.appointmentDataFields[J];var A=p[l];if(J=="from"||J=="to"){A=new a.jqx.date(A)}if(J=="style"){if(A){var u=h.getAppointmentColors(A);n.color=u.color;n.background=u.background;n.borderColor=u.border}}if(J=="recurrencePattern"){if(A){A=new a.jqx.scheduler.recurrencePattern(A);A.timeZone=p.timeZone||h.timeZone}}if(J=="recurrenceException"){var E=new Array();if(A){if(A.indexOf("EXDATE:")>=0){A=A.substring(A.indexOf("EXDATE:")+7)}var v=new Array();if(A.indexOf(",")>=0){v=A.split(",")}else{v.push(A)}for(var D=0;D<v.length;D++){var z=v[D];if(z.indexOf(";")>=0){var r=z.split(";")[1];z=z.split(";")[0];if(r.toLowerCase().indexOf("display")>=0&&r.toLowerCase().indexOf("none")){n.hidden=true}}try{var G=a.jqx.scheduler.utilities.untilStringToDate(z);if(G!="Invalid Date"){if(n.timeZone){G=new a.jqx.date(G,n.timeZone)}else{if(h.timeZone){G=G.toTimeZone(h.timeZone)}else{G=new a.jqx.date(G)}}}}catch(I){var G=new a.jqx.date(z,h.timeZone)}E.push(G)}}A=E}n[J]=A}for(var w in o){var J=o[w];if(n[J]==undefined){var A="";if(J=="originalData"){continue}if(J=="ownerId"){A=null}if(J=="timeZone"){A=null}if(J=="recurrencePattern"){A=null}if(J=="recurrenceException"){A=null}if(J=="allDay"){A=false}if(J=="draggable"){A=true}if(J=="resizable"){A=true}if(J=="hidden"){A=false}if(J=="resourceId"){A=null}if(J=="from"){A=new a.jqx.date()}if(J=="to"){A=new a.jqx.date().addHours(1)}n[J]=A}}n.originalData=p;if(h.resources&&!h.resources.source){if(m.indexOf(n.resourceId)==-1){m.push(n.resourceId)}}h.appointmentsByKey[p.uid]=n;h.appointments.push(n);var x=new a.jqx.scheduler.appointment(n);if(n.timeZone){x.from=x.from.toTimeZone(n.timeZone);x.to=x.to.toTimeZone(n.timeZone)}if(h.timeZone){if(!n.timeZone){x.timeZone=h.timeZone}x.from=x.from.toTimeZone(h.timeZone);x.to=x.to.toTimeZone(h.timeZone)}else{x.from=x.from.toTimeZone(null);x.to=x.to.toTimeZone(null)}n.jqxAppointment=x;if(n.recurrenceException){for(var F=0;F<n.recurrenceException.length;F++){var G=x.recurrenceException[F];var s=x.clone();s.occurrenceFrom=G;var k=x.duration();if(h.allDay){k=new a.jqx.timeSpan(10000*(h.to-h.from))}s.from=G;s.to=G.add(k);s.rootAppointment=x;s.hidden=true;x.exceptions.push(s)}}x.boundAppointment=n;x.scheduler=h;h.uiappointments.push(x)}h._resources=m;e++;g()};this.resourcesDataView.update=function(k){if(h.resources.dataField){h._resources=new Array();for(var l=0;l<k.length;l++){if(h._resources.indexOf(k[l][h.resources.dataField])>=0){continue}h._resources.push(k[l][h.resources.dataField])}}else{h._resources=k}if(h.resources.orientation==undefined){h.resources.orientation="none"}e++;g()};this.dataview.databind(i);if(this.resources&&this.resources.source){this.resourcesDataView.databind(this.resources.source)}},_raiseEvent:function(h,d){if(d==undefined){d={owner:null}}var e=h;var f=d;f.owner=this;var g=new a.Event(e);g.owner=this;g.args=f;var c=this.host.trigger(g);d=g.args;return c},ensureAppointmentVisible:function(c){if(this.appointmentsByKey[c]){return this._ensureAppointmentVisible(this.appointmentsByKey[c].jqxAppointment)}return false},_ensureAppointmentVisible:function(i){if(this.vScrollBar[0].style.visibility==="hidden"&&this.hScrollBar[0].style.visibility==="hidden"){return false}if(!i){return false}var E=i.id;var r=a('[data-key="'+E+'"]');if(r.length>0){var d=r[0]}else{if(i.elements&&i.elements.length>0){var g=i.elements[0];var d=g.element}else{return false}}var x=this.vScrollInstance.value;var w=this.hScrollInstance.value;if(this.rtl){var w=this.hScrollInstance.max-w}var q=this.element.clientHeight;var t=this.element.clientWidth;var z=0;if(!this.columnGroups){z+=this.showHeader?this.columnsHeight:0}else{z+=this.showHeader?this.columnsheader.height():0}var p=this._views[this._view].type;var m=this._views[this._view];var B=0;if(p=="dayView"||p=="weekView"){var v=this.showAllDayRow;if(m.timeRuler&&(p==="dayView"||p==="weekView")){if(m.timeRuler.showAllDayRow!=undefined){v=m.timeRuler.showAllDayRow}}if(v){if(this.tableRows==1){B=this.table[0].rows[0].clientHeight}else{B=this.table[0].rows[1].clientHeight}}var o=i.duration().days()>=1||i.allDay;if(o&&this.tableRows==1&&this.tableColumns==1){return false}}if(this.showToolbar){z+=this.toolbarHeight}q-=z;if(this.showLegend&&this._resources.length>0){q-=this.legendHeight}var f=0;var k=0;var e=x-f;var A=q+e-B;var u=w-k;var D=t+u;var C=d;C=a(C);var h=C[0].clientHeight;var j=C.position().top-B;var l=j+h;if(j<=e){var y=j;if(y<0){y=0}if(!o||(o&&this.tableRows>1)){this.vScrollBar.jqxScrollBar("setPosition",y)}}else{if(j>=A){var y=j;if(y<0){y=0}if(!o||(o&&this.tableRows>1)){this.vScrollBar.jqxScrollBar("setPosition",y-2)}}}var s=C.position().left;s=Math.round(s);var c=s+C.outerWidth();if(Math.round(C.position().left)===0){this.hScrollBar.jqxScrollBar("setPosition",0)}if(s<=u){var n=s-C.outerWidth()+k;if(n<0){n=0}if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",s)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-s)}}if(s>D){if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",s)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-s)}}},ensureDateVisible:function(e,m){var h=this;var n=a.type(e)=="date"?e:e.toDate();for(var g=0;g<h.rows.length;g++){for(var f=0;f<h.rows[g].cells.length;f++){var l=h.rows[g].cells[f];if(m){if(l.getAttribute("data-view")!==m){continue}}var k=l.getAttribute("data-date");var c=h._getDateByString;var d=c(k);if(d.valueOf()==n.valueOf()){return h.ensureVisible(l)}}}},ensureVisible:function(c){if(this.vScrollBar[0].style.visibility==="hidden"&&this.hScrollBar[0].style.visibility==="hidden"){return false}var u=this.vScrollBar.jqxScrollBar("value");var t=this.hScrollBar.jqxScrollBar("value");if(this.rtl){t=this.hScrollBar.jqxScrollBar("max")-t}var n=this._hostHeight;var q=this._hostWidth;var x=0;if(!this.columnGroups){x+=this.showHeader?this.columnsHeight:0}else{x+=this.showHeader?this.columnsheader.height():0}if(this.showToolbar){x+=this.toolbarHeight}n-=x;if(this.showLegend&&this._resources.length>0){n-=this.legendHeight}if(this.hScrollBar.css("visibility")!="hidden"){n-=20}var f=0;var i=0;var m=this._views[this._view].type;var k=this._views[this._view];var z=0;if(m=="dayView"||m=="weekView"){var s=this.showAllDayRow;if(k.timeRuler&&(m==="dayView"||m==="weekView")){if(k.timeRuler.showAllDayRow!=undefined){s=k.timeRuler.showAllDayRow}}if(s){if(this.tableRows==1){z=this.table[0].rows[0].clientHeight}else{z=this.table[0].rows[1].clientHeight}}}var e=u-f;var y=n+e-z;var r=t-i;var B=q+r;var A=c;A=a(A);var g=A.position().top-z;var j=g+A.outerHeight();var p=A.position().left;p=Math.round(p);var d=p+A.outerWidth();if(Math.round(A.position().left)===0){this.hScrollBar.jqxScrollBar("setPosition",0)}if(p<=r){var l=p-A.outerWidth()+i;if(l<0){l=0}if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",l)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-l)}}if(d>=B){if(!this.rtl){this.hScrollBar.jqxScrollBar("setPosition",2+i+d-q)}else{this.hScrollBar.jqxScrollBar("setPosition",this.hScrollBar.jqxScrollBar("max")-(2+i+d-q))}}var h=A.parent().index();if(this.tableRows>0){h--}if(Math.round(A.position().top)===0||h===0){return this.vScrollBar.jqxScrollBar("setPosition",0)}else{var o=this.table[0].rows.length-1;var w=this.table[0].rows[o];if(w[0]===A.parent()[0]){return this.vScrollBar.jqxScrollBar("setPosition",this.vScrollBar.jqxScrollBar("max"))}}if(g<=e){var v=g;if(v<0){v=0}return this.vScrollBar.jqxScrollBar("setPosition",v)}if(j>=y){return this.vScrollBar.jqxScrollBar("setPosition",4+j-n+z)}},getColumn:function(c){var d=null;if(this.columns.records){a.each(this.columns.records,function(){if(this.datafield==c||this.displayfield==c){d=this;return false}})}return d},_setcolumnproperty:function(d,f,g){if(d==null||f==null||g==null){return null}f=f.toLowerCase();var e=this.getColumn(d);if(e==null){return}var h=e[f];e[f]=g;var c=this.getColumn(d);if(c!=null){c[f]=g}switch(f){case"text":case"hidden":case"hideable":case"renderer":case"align":case"cellsalign":case"contenttype":case"cellclass":case"cellclassname":case"class":case"width":case"minwidth":case"maxwidth":if(f=="align"){this._rendercolumnheaders();this.refresh()}else{if(f=="text"||f=="class"||f=="hidden"||f=="pinned"||f=="resizable"||f=="renderer"){this._rendercolumnheaders();this.refresh()}else{if(f=="width"||f=="maxwidth"||f=="minwidth"){e._width=null;e._percentagewidth=null;this._updatecolumnwidths();this.refresh()}else{this.refresh()}}}break}},getColumnProperty:function(c,e){if(c==null||e==null){return null}e=e.toLowerCase();var d=this.getColumn(c);return d[e]},setColumnProperty:function(c,d,e){this._setcolumnproperty(c,d,e)},hideColumn:function(c){this._setcolumnproperty(c,"hidden",true)},showColumn:function(c){this._setcolumnproperty(c,"hidden",false)},updateBoundData:function(d,c){this.databind(this.source,d,c)},_refreshColumns:function(){this._initializeColumns();this.columnsheader=this.columnsheader||a('<div style="overflow: hidden;"></div>');this.columnsheader.children().remove();var c=this.columnsHeight;c=this._preparecolumnGroups();this.columnsheader.height(c);this._rendercolumnheaders()},_refreshColumnTitles:function(){var q=this._views[this._view].type;var p=this._views[this._view];var m=this;var e=new Array();if(m.columns.records[0].timeColumn){e.push({})}if(p.timeRuler&&p.timeRuler.timeZones){for(var w=0;w<p.timeRuler.timeZones.length;w++){e.push({})}}var r=function(B,H,J){var C="halfHour";if(p.timeRuler&&p.timeRuler.scale){C=p.timeRuler.scale}var L=24;var A=0;var K=23;if(p.timeRuler){if(p.timeRuler.scaleStartHour!=undefined){var A=parseInt(p.timeRuler.scaleStartHour)}if(p.timeRuler.scaleEndHour!=undefined){var K=parseInt(p.timeRuler.scaleEndHour)}if(A<0){A=0}if(K<0){K=23}if(A>23){A=0}if(K>23){K=23}L=K-A+1}var E=60;var I=2;if(C){switch(C){case"sixtyMinutes":case"hour":I=1;break;case"thirdyMinutes":case"halfHour":I=2;break;case"fifteenMinutes":case"quarterHour":I=4;break;case"tenMinutes":I=6;break;case"fiveMinutes":I=12;break}}var N=new Array();var M="auto";if(p.timeRuler&&p.timeRuler.formatString){M=p.timeRuler.formatString}var z=A;var F=L;var j=B.addHours(z);for(var G=0;G<F;G++){var y=j.toDate();if(M==="auto"){if((y.getHours()==0&&y.getMinutes()==0)||(y.getHours()==12&&y.getMinutes()==0)){var D="hh tt"}else{var D="hh:mm"}}else{if(a.isFunction(M)){var D=M(y)}}if(a.jqx.dataFormat.isDate(y)){y=a.jqx.dataFormat.formatdate(y,D,m.schedulerLocalization)}j=j.addMinutes(E);e.push({});m.columns.records[e.length-1].text=y}};var l=this.tableColumns;for(var u=0;u<this.tableColumns;u++){switch(q){case"dayView":var h=this.getViewStart();if(false===p.showWeekends){if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}}e.push({});this.columns.records[e.length-1].text=this._getDayName(h.dayOfWeek());break;case"weekView":case"monthView":for(var w=0;w<7;w++){var v=this.schedulerLocalization.firstDay+w;if(false===p.showWeekends){if(w===0||w===6){continue}}e.push({});this.columns.records[e.length-1].text=this._getDayName(v)}break;case"timelineDayView":var g=m._resources[u]?m._resources[u]:"Resource"+u;r(m.getViewStart(),g);break;case"timelineWeekView":for(var w=0;w<7;w++){var v=this.schedulerLocalization.firstDay+w;if(false===p.showWeekends){if(w===0||w===6){continue}}r(m.getViewStart().addDays(w),this._getDayName(v))}break;case"timelineMonthView":var o=m.getViewStart();var x="auto";if(p.timeRuler&&p.timeRuler.formatString){x=p.timeRuler.formatString}for(var w=0;w<41;w++){var v=o.dayOfWeek();if(false===p.showWeekends){if(v===0||v===6){continue}}var s=o.toDate();if(x==="auto"){var d="dd";s=o.toDate();if(s.getDate()===1){d="MMM dd"}}else{if(a.isFunction(x)){var d=x(s)}}if(a.jqx.dataFormat.isDate(s)){s=a.jqx.dataFormat.formatdate(s,d,m.schedulerLocalization)}o=o.addDays(1);e.push({});m.columns.records[e.length-1].text=s}break}}var k=m.columnsHeight;var c=function(j,y){var i=m.columnGroupslevel*m.columnsHeight;i=i-(y.level*m.columnsHeight);return i};var t=0;for(var w=0;w<this.columns.records.length;w++){var f=this.columns.records[w];if(f.timeColumn){continue}if(m.columnGroups){if(m.columnGroups.length){k=c(f.datafield,f)}}var n=f.renderer!=null?f.renderer(f.text,f.align,k):m._rendercolumnheader(f.text,f.align,k,f);if(n==null){n=m._rendercolumnheader(f.text,f.align,k,m)}if(f.renderer!=null){n=a(n)}a(f.element).html(n)}},refresh:function(d){if(d!=true){var c=this;if(a.jqx.isHidden(c.host)){return}c.table[0].style.top="0px";c.vScrollInstance.setPosition(0);c._renderrows();c._arrange();c._renderhorizontalscroll();c._updateTouchScrolling();c._refreshToolBar();c._updateFocusedCell()}},_updateFocusedCell:function(){var k=this;if(k.focusedCell){k._updateCellsSelection();return}var e=k._views[k._view].type;var h=k._views[k._view];var d=k.showAllDayRow;if(h.timeRuler&&(e==="dayView"||e==="weekView")){if(h.timeRuler.showAllDayRow!=undefined){d=h.timeRuler.showAllDayRow}}if(!d||(e!="dayView"&&e!="weekView")){k.focusedCell=k.rows[0].cells[0];if(k.rtl){k.focusedCell=k.rows[0].cells[k.rows[0].cells.length-1]}}else{k.focusedCell=k.rows[1].cells[0];if(k.rtl){k.focusedCell=k.rows[1].cells[k.rows[1].cells.length-1]}}if(k.focusedCell.className.indexOf("jqx-scheduler-disabled-cell")>=0){k.focusedCell=null;for(var g=0;g<this.rows.length;g++){for(var f=0;f<this.rows[g].cells.length;f++){var c=this.rows[g].cells[f];if(c.className.indexOf("jqx-scheduler-disabled-cell")==-1){k.focusedCell=c;break}}if(k.focusedCell){break}}}k._lastSelectedCell=k.focusedCell;k._updateCellsSelection()},_updateTouchScrolling:function(){var d=this.that;return;if(d.isTouchDevice()){var f=a.jqx.mobile.getTouchEventName("touchstart");var e=a.jqx.mobile.getTouchEventName("touchend");var c=a.jqx.mobile.getTouchEventName("touchmove");if(d.schedulercontent){d.removeHandler(d.schedulercontent,f+".touchScroll");d.removeHandler(d.schedulercontent,c+".touchScroll");d.removeHandler(d.schedulercontent,e+".touchScroll");d.removeHandler(d.schedulercontent,"touchcancel.touchScroll");a.jqx.mobile.touchScroll(d.schedulercontent[0],Math.max(d.vScrollInstance.max,d.hScrollInstance.max),function(i,h){if(d.vScrollBar.css("visibility")!="hidden"){var g=d.vScrollInstance.value;d.vScrollInstance.setPosition(g+h)}if(d.hScrollBar.css("visibility")!="hidden"){var g=d.hScrollInstance.value;d.hScrollInstance.setPosition(g+i)}d.scrolled=new Date();d.vScrollInstance.thumbCapture=true},this.element.id,this.hScrollBar,this.vScrollBar)}}},scrollWidth:function(){return this.hScrollInstance.max},scrollHeight:function(){return this.vScrollInstance.max},scrollLeft:function(c){if(this.hScrollBar[0].style.visibility!="hidden"){this.hScrollInstance.setPosition(c)}},scrollTop:function(c){if(this.vScrollBar[0].style.visibility!="hidden"){this.vScrollInstance.setPosition(c)}},render:function(j){var f="<div style='overflow: hidden; -webkit-appearance: none; outline: none; width:100%; height: 100%; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;'><div id='wrapper"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; width:100%; height: 100%; padding: 0px; margin: 0px; align:left; left: 0px; top: 0px; valign:top; position: relative;'><div id='toolbar' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='legendbartop' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='filter' style='visibility: hidden; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='content"+this.element.id+"' style='overflow: hidden; -webkit-appearance: none; border: none; background: transparent; outline: none; border: none; padding: 0px; margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='verticalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='horizontalScrollBar"+this.element.id+"' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='bottomRight' style='align:left; valign:top; left: 0px; top: 0px; border: none; position: absolute;'></div><div id='aggregates' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='legendbarbottom' style='align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='pager' style='z-index: 20; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div></div></div>";this.element.innerHTML=f;this.wrapper=this.host.find("#wrapper"+this.element.id);this.content=this.host.find("#content"+this.element.id);this.content.addClass(this.toTP("jqx-reset"));var h=this.host.find("#verticalScrollBar"+this.element.id);var l=this.host.find("#horizontalScrollBar"+this.element.id);this.bottomRight=this.host.find("#bottomRight").addClass(this.toTP("jqx-grid-bottomright")).addClass(this.toTP("jqx-scrollbar-state-normal"));if(this.vScrollBar){this.vScrollBar.jqxScrollBar("destroy")}if(this.hScrollBar){this.hScrollBar.jqxScrollBar("destroy")}this.vScrollBar=h.jqxScrollBar({vertical:true,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme,_triggervaluechanged:false});this.hScrollBar=l.jqxScrollBar({vertical:false,rtl:this.rtl,touchMode:this.touchMode,theme:this.theme,_triggervaluechanged:false});this.vScrollBar.css("visibility","hidden");this.hScrollBar.css("visibility","hidden");this.vScrollInstance=a.data(this.vScrollBar[0],"jqxScrollBar").instance;this.hScrollInstance=a.data(this.hScrollBar[0],"jqxScrollBar").instance;this.pager=this.host.find("#pager");this.pager[0].id="pager"+this.element.id;this.toolbar=this.host.find("#toolbar");this.toolbar[0].id="toolbar"+this.element.id;this.toolbar.addClass(this.toTP("jqx-scheduler-toolbar"));this.toolbar.addClass(this.toTP("jqx-widget-header"));this.legendbarbottom=this.host.find("#legendbarbottom");this.legendbarbottom[0].id="legendbarbottom"+this.element.id;this.legendbarbottom.addClass(this.toTP("jqx-scheduler-legend-bar-bottom"));this.legendbarbottom.addClass(this.toTP("jqx-scheduler-legend-bar"));this.legendbarbottom.addClass(this.toTP("jqx-widget-header"));this.pager.addClass(this.toTP("jqx-grid-pager"));this.pager.addClass(this.toTP("jqx-widget-header"));this.legendbartop=this.host.find("#legendbartop");this.legendbartop.addClass(this.toTP("jqx-scheduler-legend-bar-top"));this.legendbartop.addClass(this.toTP("jqx-scheduler-legend-bar"));this.legendbartop.addClass(this.toTP("jqx-widget-header"));this.schedulertable=null;if(this.localizestrings){this.localizestrings();if(this.localization!=null){this.localizestrings(this.localization,false)}}this._builddataloadelement();this._cachedcolumns=this.columns;var c=this.source.datafields;if(c==null&&this.source._source){c=this.source._source.datafields}if(c){for(var d=0;d<this.columns.length;d++){var e=this.columns[d];if(e&&e.cellsFormat&&e.cellsFormat.length>2){for(var k=0;k<c.length;k++){if(c[k].name==e.datafield&&!c[k].format){c[k].format=e.cellsFormat;break}}}}}this.databind(this.source);if(this.showToolbar){this.toolbar.css("visibility","inherit")}if(this.showLegend){this.legendbarbottom.css("visibility","inherit")}this.tableheight=null;var g=this;var i=function(){if(g.content){g.content[0].scrollTop=0;g.content[0].scrollLeft=0}if(g.schedulercontent){g.schedulercontent[0].scrollLeft=0;g.schedulercontent[0].scrollTop=0}};this.removeHandler(this.content,"scroll");this.removeHandler(this.content,"mousedown");this.addHandler(this.content,"scroll",function(m){i();return false});if(j!==true){this._render()}},_render:function(){var h=this;if(h.dataview==null){return}if(h._loading){return}if(h.columnsHeight!=25||h.columnGroups){h._measureElement("column")}h.rowinfo=new Array();h._removeHandlers();if(h.columns==null){h.columns=new a.jqx.dataCollection(h.element)}else{h._initializeColumns()}h.host.height(h.height);h.host.width(h.width);a.jqx.utilities.html(h.content,"");h.columnsheader=h.columnsheader||a('<div style="overflow: hidden;"></div>');h.columnsheader.remove();h.columnsheader.addClass(h.toTP("jqx-widget-header"));h.columnsheader.addClass(h.toTP("jqx-grid-header"));if(!h.showHeader){h.columnsheader.css("display","none")}else{if(h.columnsheader){h.columnsheader.css("display","block")}}h.schedulercontent=h.schedulercontent||a('<div style="width: 100%; overflow: hidden; position: absolute;"></div>');h.schedulercontent.remove();var f=h.columnsHeight;f=h._preparecolumnGroups();h.columnsheader.height(f);h.content.append(h.columnsheader);h.content.append(h.schedulercontent);h._rendercolumnheaders();h.tableheight=null;h.schedulercontent.find("#contenttable"+h.element.id).remove();if(h.table!=null){h.table.remove();h.table=null}if(h.pinnedtable!=null){h.pinnedtable.remove();h.pinnedtable=null}h.table=a('<div id="contenttable'+h.element.id+'" style="overflow: hidden; position: relative;"></div>');h.pinnedtable=a('<div id="contenttable2'+h.element.id+'" style="display: none; overflow: hidden; position: relative;"></div>');h.schedulercontent.addClass(h.toTP("jqx-grid-content"));h.schedulercontent.addClass(h.toTP("jqx-widget-content"));h.schedulercontent.append(h.table);if(h.tableRows==1){h.schedulercontent.append(h.pinnedtable)}h._renderrows();h._arrange();h._resourcesElements=new Array();var e=function(i,j){var i=a("<div style='margin:5px; position: relative;'></div>").appendTo(i);h._resourcesElements[j]=new Array();a.each(h._resources,function(o){var m=h.getColors(o);var n=this;var p=a("<div data-toggle='on' style='border-color: "+m.border+"; background: "+m.background+";' class='"+h.toThemeProperty("jqx-scheduler-legend")+"'></div>");p.appendTo(i);var l=a("<div class='"+h.toThemeProperty("jqx-scheduler-legend-label")+"'>"+n+"</div>");l.appendTo(i);h._resourcesElements[j][n]=p;var k=function(){if(p.attr("data-toggle")=="on"){h.hideAppointmentsByResource(n)}else{h.showAppointmentsByResource(n)}};h.addHandler(p,"mousedown",function(){k();return false});h.addHandler(l,"mousedown",function(){k();return false})})};e(h.legendbarbottom,"bottom");e(h.legendbartop,"top");if(h.legendPosition=="top"){h.legendbarbottom.hide()}else{h.legendbartop.hide()}if(h._resources.length==0){h.legendbarbottom.hide();h.legendbartop.hide()}if(h.renderToolBar){h.renderToolBar(h.toolbar)}else{h._renderToolBar()}if(h.disabled){h.host.addClass(h.toThemeProperty("jqx-fill-state-disabled"))}h._renderhorizontalscroll();h._addHandlers();h.clearSelection();var d=h._views[h._view].type;var g=h._views[h._view];var c=h.showAllDayRow;if(g.timeRuler&&(d==="dayView"||d==="weekView")){if(g.timeRuler.showAllDayRow!=undefined){c=g.timeRuler.showAllDayRow}}if(!c||(d!="dayView"&&d!="weekView")){h.focusedCell=h.rows[0].cells[0]}else{h.focusedCell=h.rows[1].cells[0]}h._lastSelectedCell=h.focusedCell;h._updateCellsSelection()},clear:function(){if(this.source){this.source.records=new Array();this.source.hierarchy=new Array()}this.dataview._filteredData=new Array();this.databind(null);this._render()},getJQXAppointmentByElement:function(e){var g=this;var f=e.getAttribute?e.getAttribute("data-key"):e.attr("data-key");if(f.indexOf(".")>=0){var d=f.substring(0,f.indexOf("."));var i=f.substring(f.indexOf(".")+1);var h=g.appointmentsByKey[d];var c=h.jqxAppointment.renderedAppointments[f]}else{var h=g.appointmentsByKey[f];var c=h.jqxAppointment}return c},_renderToolBar:function(){var j=this;var c=a('<div style="width: 100%; height: 100%; position: relative;"></div>');var l=(this.toolbarHeight-20)/2;c.css("top",l);j.toolbarLeftButton=a('<div type="button" style="outline: none; padding: 0px; margin-top: 3px; margin-left: 3px; margin-right: 3px; width: 27px; float: left;"></div>');j.toolbarRightButton=a('<div type="button" style="outline: none; padding: 0px; margin-top: 3px; margin-right: 3px; width: 27px; float: left;"></div>');j.toolbarLeftButton.attr("title",j.schedulerLocalization.toolBarPreviousButtonString);j.toolbarRightButton.attr("title",j.schedulerLocalization.toolBarNextButtonString);j.toolbarRightButton.jqxButton({enableHover:false,enableDefault:false,enablePressed:false,cursor:"pointer",disabled:j.disabled,theme:j.theme});j.toolbarLeftButton.jqxButton({enableHover:false,enableDefault:false,enablePressed:false,cursor:"pointer",disabled:j.disabled,theme:j.theme});j.dateTimeInput=a('<div style="outline: none; padding: 0px; margin-top: 0px; margin-right: 3px; width: 27px; float: left;"></div>');j.toolbarLeftButton.find(".jqx-icon-arrow-left").remove();j.toolbarRightButton.find(".jqx-icon-arrow-right").remove();var f=a("<div style='outline: none; margin-left: 6px; width: 15px; height: 15px;'></div>");f.addClass(j.toThemeProperty("jqx-icon-arrow-left"));j.toolbarLeftButton.wrapInner(f);var k=a("<div style='outline: none; margin-left: 6px; width: 15px; height: 15px;'></div>");k.addClass(j.toThemeProperty("jqx-icon-arrow-right"));j.toolbarRightButton.wrapInner(k);if(j.rtl){j.toolbarLeftButton.css("float","right");j.toolbarRightButton.css("float","right");j.dateTimeInput.css("float","right")}j.addHandler(j.toolbarRightButton,"mouseenter",function(){k.addClass(j.toThemeProperty("jqx-icon-arrow-right-hover"))});j.addHandler(j.toolbarLeftButton,"mouseenter",function(){f.addClass(j.toThemeProperty("jqx-icon-arrow-left-hover"))});j.addHandler(j.toolbarRightButton,"mouseleave",function(){k.removeClass(j.toThemeProperty("jqx-icon-arrow-right-hover"))});j.addHandler(j.toolbarLeftButton,"mouseleave",function(){f.removeClass(j.toThemeProperty("jqx-icon-arrow-left-hover"))});j.addHandler(j.toolbarRightButton,"mousedown",function(){k.addClass(j.toThemeProperty("jqx-icon-arrow-right-selected"))});j.addHandler(j.toolbarRightButton,"mouseup",function(){k.removeClass(j.toThemeProperty("jqx-icon-arrow-right-selected"))});j.addHandler(j.toolbarLeftButton,"mousedown",function(){f.addClass(j.toThemeProperty("jqx-icon-arrow-left-selected"))});j.addHandler(j.toolbarLeftButton,"mouseup",function(){f.removeClass(j.toThemeProperty("jqx-icon-arrow-left-selected"))});j.addHandler(a(document),"mouseup.pagerbuttons"+j.element.id,function(){k.removeClass(j.toThemeProperty("jqx-icon-arrow-right-selected"));f.removeClass(j.toThemeProperty("jqx-icon-arrow-left-selected"))});j.addHandler(j.toolbarRightButton,"click",function(){if(!j.toolbarRightButton.jqxButton("disabled")){if(!j.rtl){j.navigateForward()}else{j.navigateBackward()}j.focus()}});j.addHandler(j.toolbarLeftButton,"click",function(){if(!j.toolbarLeftButton.jqxButton("disabled")){if(!j.rtl){j.navigateBackward()}else{j.navigateForward()}j.focus()}});j.toolbar.children().remove();j.toolbar.append(c);if(!j.rtl){c.append(j.toolbarLeftButton);c.append(j.dateTimeInput);c.append(j.toolbarRightButton)}else{c.append(j.toolbarRightButton);c.append(j.dateTimeInput);c.append(j.toolbarLeftButton)}j.toolbarDetails=a('<div class="'+j.toTP("jqx-scheduler-toolbar-details")+'" style="margin-left: 7px; margin-top:2px; float: left;"></div>');j.toolbarViews=a('<div style="margin-right: 10px; margin-top:0px; float: right;"></div>');if(j.rtl){j.toolbarDetails.css("float","right");j.toolbarDetails.css("margin-left","0px");j.toolbarDetails.css("margin-right","7px");j.toolbarViews.css("margin-left","10px");j.toolbarViews.css("margin-right","0px");j.toolbarViews.css("float","left")}var i=new Array();if(!j.rtl){i.push(j.toolbarLeftButton);i.push(j.dateTimeInput);i.push(j.toolbarRightButton)}else{i.push(j.toolbarRightButton);i.push(j.dateTimeInput);i.push(j.toolbarLeftButton)}var m=j._views.length-1;a.each(j._views,function(q){var r="";var o=q;if(j.rtl){o=m-q}if(j._views[o].text!=undefined){r=j._views[o].text}else{switch(j._views[o].type){case"dayView":r=j.schedulerLocalization.dayViewString;break;case"weekView":r=j.schedulerLocalization.weekViewString;break;case"monthView":r=j.schedulerLocalization.monthViewString;break;case"agendaView":r=j.schedulerLocalization.agendaViewString;break;case"timelineDayView":r=j.schedulerLocalization.timelineDayViewString;break;case"timelineWeekView":r=j.schedulerLocalization.timelineWeekViewString;break;case"timelineMonthView":r=j.schedulerLocalization.timelineMonthViewString;break}}var p='<span data-type="'+j._views[o].type+'" style="cursor: pointer; outline: none; margin-left: -1px; position: relative;">'+r+"</span>";var n=a(p);n.addClass(j.toTP("jqx-group-button-normal jqx-button jqx-fill-state-normal"));i.push(n);if(o==0){n.addClass(j.toTP("jqx-rc-l"))}if(o==j._views.length-1){n.addClass(j.toTP("jqx-rc-r"))}if(o===j._view){n.addClass(j.toTP("jqx-fill-state-pressed"))}n.mouseenter(function(){n.addClass(j.toTP("jqx-fill-state-hover"))});n.mouseleave(function(){n.removeClass(j.toTP("jqx-fill-state-hover"))});n.mousedown(function(){j._setView(o);j.focus()});a(j.toolbarViews).append(n)});c.append(j.toolbarDetails);c.append(j.toolbarViews);if(j._views.length<2){j.toolbarViews.hide()}j.dateTimeInput.jqxDateTimeInput({rtl:j.rtl,localization:j._getDateTimeInputLocalization(),firstDayOfWeek:j.schedulerLocalization.firstDay,todayString:j.schedulerLocalization.todayString,clearString:j.schedulerLocalization.clearString,showFooter:true,height:19,width:18,renderMode:"simple"});j.addHandler(j.dateTimeInput,"change",function(n){if(!j.fromNavigate){j.navigateTo(new a.jqx.date(n.args.date,j.timeZone));j.focus()}});j.tabKeyElements=i;var h=j._views[j._view].type;var e=function(n){var p=a.jqx.formatDate(j.getViewStart().toDate(),n,j.schedulerLocalization);var o=a.jqx.formatDate(j.getViewEnd().toDate(),n,j.schedulerLocalization);if(h==="dayView"||h==="timelineDayView"){j.toolbarDetails.html(p)}else{j.toolbarDetails.html(p+" - "+o)}if(j.rtl){j.toolbarDetails.addClass("jqx-rtl");j.toolbarDetails.html("<span style='direction:rtl;'>"+o+"<span> - <span style='direction:rtl;'>"+p+"</span>")}else{j.toolbarDetails[0].style.direction="ltr"}};e(j.toolBarRangeFormat);var d=j.toolbarViews.width()+j.toolbarDetails.width()+120;var g=j.toolBarRangeFormat;if(d>j.host.width()){g=j.toolBarRangeFormatAbbr;e(g);var d=j.toolbarViews.width()+j.toolbarDetails.width()+120;if(d>j.host.width()){j.toolbarDetails.hide();var d=j.toolbarViews.width()+120;if(d>j.host.width()){j.toolbarViews.hide()}}}else{j.currentToolbarFormat=j.toolBarRangeFormat}},_setView:function(c){var d=this;d.toolbarViews.find(".jqx-fill-state-pressed").removeClass(d.toTP("jqx-fill-state-pressed"));if(!d.rtl){a(d.toolbarViews.children()[c]).addClass(d.toTP("jqx-fill-state-pressed"))}else{a(d.toolbarViews.children()[d._views.length-1-c]).addClass(d.toTP("jqx-fill-state-pressed"))}if(d._view===c){return}d._view=c;d._refreshColumns();var f=d.hScrollBar[0].style.visibility;d.refresh();var e=d.hScrollBar[0].style.visibility;if(f!==e){d._renderrows()}if(d.selectedJQXAppointment){d._ensureAppointmentVisible(d.selectedJQXAppointment)}},_getDateTimeInputLocalization:function(){var c=this;var d={};d.backString=c.schedulerLocalization.backString;d.forwardString=c.schedulerLocalization.forwardString;d.todayString=c.schedulerLocalization.todayString;d.clearString=c.schedulerLocalization.clearString;d.calendar=c.schedulerLocalization;return d},setView:function(c){switch(c){case"dayView":this._setView(0);break;case"weekView":this._setView(1);break;case"monthView":this._setView(2);break;case"timelineDayView":this._setView(3);break;case"timelineWeekView":this._setView(4);break;case"timelineMonthView":this._setView(5);break}this.view=c},navigateForward:function(){var e=this;var i=this._views[this._view].type;var j=this._views[this._view];var d=new a.jqx.date(this.date,e.timeZone);var k=function(){while((d.dayOfWeek()==0||d.dayOfWeek()==6)&&false===j.showWeekends){d=d.addDays(1)}return d};switch(i){case"dayView":case"timelineDayView":d=d.addDays(1);d=k();break;case"weekView":case"timelineWeekView":d=d.addDays(7);break;case"monthView":case"timelineMonthView":var h=d.day();var f=d.month();var g=d.year();var c=new a.jqx.date(g,f,1);c.timeZone=e.timeZone;d=c.addMonths(1);break}return this.navigateTo(d)},navigateBackward:function(){var e=this;var i=this._views[this._view].type;var j=this._views[this._view];var d=new a.jqx.date(this.date,e.timeZone);var k=function(){while((d.dayOfWeek()==0||d.dayOfWeek()==6)&&false===j.showWeekends){d=d.addDays(-1)}return d};switch(i){case"dayView":case"timelineDayView":d=d.addDays(-1);d=k();break;case"weekView":case"timelineWeekView":d=d.addDays(-7);break;case"monthView":case"timelineMonthView":var h=d.day();var f=d.month();var g=d.year();var c=new a.jqx.date(g,f,1);c.timeZone=e.timeZone;d=c.addMonths(-1);break}return this.navigateTo(d)},_refreshToolBar:function(e){var g=this;var h=g.getViewStart();var f=g.getViewEnd();var d=function(j){var m=a.jqx.formatDate(h.toDate(),j,g.schedulerLocalization);var k=a.jqx.formatDate(f.toDate(),j,g.schedulerLocalization);var i=g._views[g._view].type;var l=g._views[g._view];if(l.showWeekends===false){if(h.dayOfWeek()==0||h.dayOfWeek()==6){h=h.addDays(1)}if(h.dayOfWeek()==0||h.dayOfWeek()==6){h=h.addDays(1)}if(f.dayOfWeek()==0||f.dayOfWeek()==6){f=f.addDays(-1)}if(f.dayOfWeek()==0||f.dayOfWeek()==6){f=f.addDays(-1)}var m=a.jqx.formatDate(h.toDate(),j,g.schedulerLocalization);var k=a.jqx.formatDate(f.toDate(),j,g.schedulerLocalization)}if(i==="dayView"||i==="timelineDayView"){g.toolbarDetails.html(m)}else{g.toolbarDetails.html(m+" - "+k)}if(g.rtl){g.toolbarDetails.addClass("jqx-rtl");g.toolbarDetails.html("<span style='direction:rtl;'>"+k+"<span> - <span style='direction:rtl;'>"+m+"</span>")}else{g.toolbarDetails[0].style.direction="ltr"}};if(e){d(g._lastFormatString||g.toolBarRangeFormat);return}d(g.toolBarRangeFormat);g.toolbarDetails.show();g.toolbarViews.show();var c=g.toolbarViews.width()+g.toolbarDetails.width()+120;if(c>g.host.width()){d(g.toolBarRangeFormatAbbr);var c=g.toolbarViews.width()+g.toolbarDetails.width()+120;if(c>g.host.width()){g.toolbarDetails.hide();var c=g.toolbarViews.width()+120;if(c>g.host.width()){g.toolbarViews.hide()}}}},navigateTo:function(c){var d=this;if(a.type(c)=="date"){c=new a.jqx.date(c)}if(c<this.min){return}if(c>this.max){return}c.timeZone=d.timeZone;d.date=c;d._refreshToolBar(true);d.fromNavigate=true;d.dateTimeInput.val(c.toDate());d.fromNavigate=false;d._refreshColumnTitles();d._renderrows();d._updateFocusedCell()},_preparecolumnGroups:function(){var o=this.columnsHeight;if(this.columnGroups){this.columnshierarchy=new Array();if(this.columnGroups.length){var m=this;for(var g=0;g<this.columnGroups.length;g++){this.columnGroups[g].parent=null;this.columnGroups[g].groups=null}for(var g=0;g<this.columns.records.length;g++){this.columns.records[g].parent=null;this.columns.records[g].groups=null}var n=function(j){for(var t=0;t<m.columnGroups.length;t++){var u=m.columnGroups[t];if(u.name===j){return u}}return null};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];if(!p.groups){p.groups=null}if(p.parentGroup){p.parentgroup=p.parentGroup}if(p.parentgroup){var r=n(p.parentgroup);if(r){p.parent=r;if(!r.groups){r.groups=new Array()}if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];if(p.columngroup){var r=n(p.columngroup);if(r){if(!r.groups){r.groups=new Array()}p.parent=r;if(r.groups.indexOf(p)===-1){r.groups.push(p)}}}}var q=0;for(var g=0;g<this.columns.records.length;g++){var p=this.columns.records[g];var d=p;p.level=0;while(d.parent){d=d.parent;p.level++}var d=p;var c=p.level;q=Math.max(q,p.level);while(d.parent){d=d.parent;if(d){d.level=--c}}}var l=function(x){var w=new Array();if(x.columngroup){w.push(x)}if(!x.groups){return new Array()}for(var v=0;v<x.groups.length;v++){if(x.groups[v].columngroup){w.push(x.groups[v])}else{if(x.groups[v].groups){var u=l(x.groups[v]);for(var t=0;t<u.length;t++){w.push(u[t])}}}}return w};for(var g=0;g<this.columnGroups.length;g++){var p=this.columnGroups[g];var e=l(p);p.columns=e;var h=new Array();var s=0;for(var f=0;f<e.length;f++){h.push(this.columns.records.indexOf(e[f]));if(e[f].pinned){s++}}if(s!=0){throw new Error("jqxScheduler: Column Groups initialization Error. Please, check the initialization of the jqxScheduler's columns array. The columns in a column group cannot be pinned.")}h.sort(function(j,i){j=parseInt(j);i=parseInt(i);if(j<i){return -1}if(j>i){return 1}return 0});for(var k=1;k<h.length;k++){if(h[k]!=h[k-1]+1){throw new Error("jqxScheduler: Column Groups initialization Error. Please, check the initialization of the jqxScheduler's columns array. The columns in a column group are expected to be siblings in the columns array.");this.host.remove()}}}}this.columnGroupslevel=1+q;o=this.columnGroupslevel*this.columnsHeight}return o},wheel:function(e,d){if(d.editRecurrenceDialog&&d.editRecurrenceDialog.jqxWindow("isOpen")){return true}if(d.editDialog&&d.editDialog.jqxWindow("isOpen")){return true}if(d.autoheight&&d.hScrollBar.css("visibility")=="hidden"){e.returnValue=true;return true}var f=0;if(!e){e=window.event}if(e.originalEvent&&e.originalEvent.wheelDelta){e.wheelDelta=e.originalEvent.wheelDelta}if(e.wheelDelta){f=e.wheelDelta/120}else{if(e.detail){f=-e.detail/3}}if(f){var c=d._handleDelta(f);if(c){if(e.preventDefault){e.preventDefault()}if(e.originalEvent!=null){e.originalEvent.mouseHandled=true}if(e.stopPropagation!=undefined){e.stopPropagation()}}if(c){c=false;e.returnValue=c;return c}else{return false}}if(e.preventDefault){e.preventDefault()}e.returnValue=false},_handleDelta:function(e){if(this.vScrollBar.css("visibility")!="hidden"){var d=this.vScrollInstance.value;if(e<0){this.vScrollInstance.setPosition(this.vScrollInstance.value+2*10)}else{this.vScrollInstance.setPosition(this.vScrollInstance.value-2*10)}var c=this.vScrollInstance.value;if(d!=c){return true}}else{if(this.hScrollBar.css("visibility")!="hidden"){var d=this.hScrollInstance.value;if(e>0){if(this.hScrollInstance.value>2*10){this.hScrollInstance.setPosition(this.hScrollInstance.value-2*10)}else{this.hScrollInstance.setPosition(0)}}else{if(this.hScrollInstance.value<this.hScrollInstance.max){this.hScrollInstance.setPosition(this.hScrollInstance.value+2*10)}else{this.hScrollInstance.setPosition(this.hScrollInstance.max)}}var c=this.hScrollInstance.value;if(d!=c){return true}}}return false},_removeHandlers:function(){var f=this;if(f._mousewheelfunc){f.removeHandler(this.host,"mousewheel",f._mousewheelfunc)}f.removeHandler(a(document),"keydown.scheduler"+f.element.id);f.removeHandler(f.host,"focus");f.removeHandler(f.host,"blur");f.removeHandler(f.host,"dragstart."+f.element.id);f.removeHandler(f.host,"selectstart."+f.element.id);f.removeHandler(a(window),"jqxReady."+f.element.id);f.removeHandler(f.host,"mousewheel",f._mousewheelfunc);var e="mousedown";if(f.isTouchDevice()){e=a.jqx.mobile.getTouchEventName("touchstart");if(a.jqx.browser.msie&&a.jqx.browser.version<10){e="mousedown"}}if(f.table){f.removeHandler(f.table,"mouseleave")}var d="mousemove.scheduler"+f.element.id;var g="mouseup.scheduler"+f.element.id;if(f.isTouchDevice()&&f.touchMode!==true){d=a.jqx.mobile.getTouchEventName("touchmove")+".scheduler"+f.element.id;g=a.jqx.mobile.getTouchEventName("touchend")+".scheduler"+f.element.id}f.removeHandler(a(document),d);f.removeHandler(a(document),g);if(!f.isTouchDevice()){try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var h=null;if(window.parent&&document.referrer){h=document.referrer}if(h&&h.indexOf(document.location.host)!=-1){f.removeHandler(a(window.top.document),"mouseup.jqxscheduler"+f.element.id)}}}}catch(c){}}f.removeHandler(f.host,d);f.removeHandler(a(document),"keydown.jqxscheduler"+f.element.id);f.removeHandler(f.host,"keydown");if(f.table){f.removeHandler(f.table,"dblclick");f.removeHandler(f.pinnedtable,e);f.removeHandler(f.table,e)}},selectAppointment:function(c){if(this.appointmentsByKey[c]){this._selectAppointment(this.appointmentsByKey[c].jqxAppointment)}},_selectAppointment:function(e,j,g){if(!e){return}var i=this;if(i.selectedAppointment){i.clearAppointmentsSelection()}var f=e.id;var d=a('[data-key="'+f+'"]');if(d.length>0){i.selectedJQXAppointment=e;if(!j){i.selectedAppointment=a(d[0])}else{i.selectedAppointment=a(j)}d.addClass(i.toTP("jqx-scheduler-selected-appointment"));if(e.resizable){d.find(".jqx-scheduler-appointment-resize-indicator").show()}var c=i._views[i._view].type;var h=i._views[i._view];switch(c){case"dayView":case"weekView":break;case"monthView":case"timeLineMonthView":case"timeLineDayView":case"timeLineWeekView":if(d.length>1){a.each(d,function(k){if(!i.rtl){if(k>0){a(this).find(".jqx-scheduler-appointment-left-resize-indicator").hide()}if(k<d.length-1){a(this).find(".jqx-scheduler-appointment-right-resize-indicator").hide()}}else{if(k>0){a(this).find(".jqx-scheduler-appointment-right-resize-indicator").hide()}if(k<d.length-1){a(this).find(".jqx-scheduler-appointment-left-resize-indicator").hide()}}})}break}if(g=="mouse"){i.clearSelection();return}}i.clearSelection()},clearAppointmentsSelection:function(){var e=this;if(e.selectedAppointment){var d=e.selectedAppointment.attr("data-key");var c=a('[data-key="'+d+'"]');c.removeClass(e.toTP("jqx-scheduler-selected-appointment"));c.find(".jqx-scheduler-appointment-resize-indicator").hide();e.selectedAppointment=null;e.selectedJQXAppointment=null}},selectCell:function(d,n,m){var h=this;var o=d.toDate();for(var g=0;g<h.rows.length;g++){for(var f=0;f<h.rows[g].cells.length;f++){var l=h.rows[g].cells[f];if(m){if(l.getAttribute("data-view")!==m){continue}}var k=l.getAttribute("data-date");var c=h._getDateByString;var e=c(k);if(n&&l.getAttribute("data-end-date")){if(e.valueOf()==d.valueOf()){l.setAttribute("data-selected",true);h.focusedCell=l;h._lastSelectedCell=l;h._updateCellsSelection();h.ensureVisible(h.focusedCell);return}}else{if(!n&&l.getAttribute("data-end-date")){continue}}if(e.valueOf()==o.valueOf()){l.setAttribute("data-selected",true);h.focusedCell=l;h._lastSelectedCell=l;h._updateCellsSelection();h.ensureVisible(h.focusedCell);return}}}h._updateCellsSelection()},selectRange:function(n,o,r,q){var l=this;if(n<this.min){n=this.min}if(o>this.max){o=this.max}var g=n.toDate();var e=o.toDate();var h=false;for(var k=0;k<l.rows.length;k++){for(var f=0;f<l.rows[k].cells.length;f++){var p=l.rows[k].cells[f];if(q){if(p.getAttribute("data-view")!==q){continue}}var m=p.getAttribute("data-date");var c=l._getDateByString;var d=c(m);if(r&&p.getAttribute("data-end-date")){if(d.valueOf()>=g.valueOf()&&d.valueOf()<=e.valueOf()){p.setAttribute("data-selected",true)}}else{if(!r&&p.getAttribute("data-end-date")){continue}}if(d.valueOf()>=g.valueOf()&&d.valueOf()<=e.valueOf()){p.setAttribute("data-selected",true);if(!h){l._lastSelectedCell=p;l.focusedCell=p;h=true}}}}l._updateCellsSelection()},_selectRange:function(c,s){var k=this;var l=c;var w=s.getAttribute("data-view");if(c.getAttribute("data-view")!==w){return}var r=s.getAttribute("data-date");var n=l.getAttribute("data-date");if(null==r||null==n){return}var D=s.getAttribute("data-end-date");var G=l.getAttribute("data-end-date");var I=D!=null||G!=null;var t=D!=null&&G!=null;var o=k._getDateByString;var v=o(r);var u=o(n);if(v<this.min.toDate()){v=this.min.toDate()}if(u<this.min.toDate()){u=this.min.toDate()}if(v>this.max.toDate()){v=this.max.toDate()}if(u>this.max.toDate()){u=this.max.toDate()}var x=Math.min(v,u);var B=Math.max(v,u);var q=k.rows;var g=0;var f=0;if(g>0&&k.rtl){g=0;f=1}var e=q.length;if(I){e=1;if(c.getAttribute("data-end-date")==null){u.setHours(0,0,0,0);var C=new a.jqx.date(u,k.timeZone).toString();var F=a(l).parent().index();a.each(q[0].cells,function(){var i=this.getAttribute("data-date");if(i===C){c=this;t=s.getAttribute("data-end-date")!=null&&c.getAttribute("data-end-date")!=null;var J=s.getAttribute("data-date");var j=c.getAttribute("data-date");var L=o(J);var K=o(j);x=Math.min(L,K);B=Math.max(L,K);return false}})}}for(var A=0;A<e;A++){var h=q[A];if(I&&this.tableRows>1){var z=parseInt(c.getAttribute("data-view"));var m=q.length/k.tableRows;var p=(-1+z)*m;d=q[p];h=q[p]}var d=h.cells;for(var y=g;y<d.length-f;y++){if(d[y].getAttribute("data-view")!==w){continue}d[y].removeAttribute("data-selected");if(!t&&d[y].getAttribute("data-end-date")){continue}var H=d[y].getAttribute("data-date");var E=o(H).valueOf();if(x<=E&&E<=B){d[y].setAttribute("data-selected","true")}}}k._updateCellsSelection()},findCell:function(t,q){var l=this;var m=null;if(!l._tableOffset){var d=l.schedulercontent.coord();l._tableOffset=d}var h=l._tableOffset;var f=h.top;var o=h.left;if(q<f){return null}if(t<o){return null}if(q>f+l._hostHeight){return null}if(t>o+l._hostWidth){return null}var r=false;var s=l.table[0].rows;var p=l._views[l._view];var u=p.type;var E=0;var n=l.vScrollInstance.value;var v=l.hScrollInstance.value;for(var C=0;C<s.length;C++){if(r){break}var k=s[C];var e=k.cells;var A=false;if(C==0&&u=="dayView"||u=="weekView"){A=l.showAllDayRow;if(p.timeRuler&&(u==="dayView"||u==="weekView")){if(p.timeRuler.showAllDayRow!=undefined){A=p.timeRuler.showAllDayRow}}if(A){E=l._allDayRowFullHeight}}for(var D=0;D<e.length;D++){var c=e[D];if(D==0&&c.getAttribute("data-time-slot")){continue}if(!c._left){var g=c.offsetLeft+o;var w=c.offsetTop+f;var B=c.offsetWidth;var z=c.offsetHeight;c._left=g;c._top=w;c._width=B;c._height=z}else{var g=c._left;var w=c._top;var B=c._width;var z=c._height}c._left=g;c._top=w;c._width=B;c._height=z;if(B===0||z===0){continue}if(!l.rtl){g-=v}else{if(l.hScrollInstance.element.style.visibility!="hidden"){g-=(l.hScrollInstance.max-v)}}w-=n;if(C==0&&A){w+=n}if(w<=q&&q<w+z){if(g<=t&&t<g+B){m=c;r=true;break}}else{break}}}return m},_removeFeedbackAndStopResize:function(){var e=this;if(!e.feedback){return}e.feedback.remove();e.feedback=null;e.pinnedfeedback.remove();e.pinnedfeedback=null;if(e.feedbacks){for(var d=0;d<e.feedbacks.length;d++){e.feedbacks[d].remove()}}e.feedbacks=new Array();e.leftResize=false;e.rightResize=false;e.topResize=false;e.bottomResize=false;e.overlay.hide();e.resizing=false;e.resizeFrom=null;e._dragCell=null;e._dragStartCell=null;e.resizeTo=null;e.dragOrResize=false;e.isMouseDown=false;if(e.selectedJQXAppointment){var c=a('[data-key="'+e.selectedJQXAppointment.id+'"]');c.removeClass(e.toTP("jqx-scheduler-feedback-appointment jqx-disableselect"))}if(e.openedMonthCellPopup){e.openedMonthCellPopup.remove()}},_saveChangesAfterDragOrResize:function(f,c,s,n){var m=this;if(f===false){if(!c.isException()){if(!c.rootAppointment.recurrenceException){c.rootAppointment.recurrenceException=new Array()}if(c.rootAppointment!=null){c.rootAppointment.exceptions.push(c);c.rootAppointment.recurrenceException.push(c.occurrenceFrom)}else{c.exceptions.push(c);c.recurrenceException.push(c.occurrenceFrom)}}else{var e=c.rootAppointment?c.rootAppointment.exceptions:c.exceptions;for(var k=0;k<e.length;k++){if(e[k].occurrenceFrom.equals(c.occurrenceFrom)){e[k]=c;break}}}}else{if(f===true){if(c.isException()){var e=c.rootAppointment?c.rootAppointment.exceptions:c.exceptions;for(var k=0;k<e.length;k++){if(e[k].occurrenceFrom.equals(c.occurrenceFrom)){for(var h=0;h<c.rootAppointment.recurrenceException.length;h++){if(c.rootAppointment.recurrenceException[h].equals(e[k].occurrenceFrom)){var r=c.from;var g=new a.jqx.date(e[k].occurrenceFrom.year(),e[k].occurrenceFrom.month(),e[k].occurrenceFrom.day(),c.from.hour(),c.from.minute(),c.from.second());c.rootAppointment.recurrenceException[h]=g;break}}e[k]=c;var r=c.from;var g=new a.jqx.date(e[k].occurrenceFrom.year(),e[k].occurrenceFrom.month(),e[k].occurrenceFrom.day(),c.from.hour(),c.from.minute(),c.from.second());e[k].occurrenceFrom=g;break}}}if(c.rootAppointment!=null){c.rootAppointment.recurrencePattern=c.rootAppointment.recurrencePattern.createNewPattern();var q=c.rootAppointment.from;var o=c.rootAppointment.duration();var d=c.rootAppointment.recurrencePattern.freq;var g=null;switch(d){case"daily":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break;case"weekly":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break;case"monthly":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break;case"yearly":g=new a.jqx.date(q.year(),q.month(),q.day(),c.from.hour(),c.from.minute(),c.from.second());break}if(n){c.rootAppointment.from=q;c.rootAppointment.to=q.add(c.duration())}else{c.rootAppointment.from=g;c.rootAppointment.to=g.add(o)}c.rootAppointment.allDay=c.allDay;c.rootAppointment.resourceId=c.resourceId;c.rootAppointment.color=c.color;c.rootAppointment.borderColor=c.borderColor;c.rootAppointment.background=c.background;c.rootAppointment.timezone=c.timezone;c.rootAppointment.subject=c.subject;c.rootAppointment.description=c.description;c.rootAppointment.location=c.location;c.rootAppointment.category=c.category;c.rootAppointment.status=c.status;if(!m.resizing){c.rootAppointment.recurrencePattern.setFrom(g)}else{c.rootAppointment.recurrencePattern.setFrom(q)}}else{c.recurrencePattern=c.recurrencePattern.createNewPattern();c.recurrencePattern.setFrom(c.from)}var p=a(s).attr("data-view");var l=m._resources[parseInt(p)-1];if(l!=null){if(c.rootAppointment!=null){c.rootAppointment.resourceId=l}else{c.resourceId=l}}}}},_handleMouseUp:function(l,j,h){var g=this;clearInterval(g._verticalIntervalDragVelocity);clearInterval(g._horizontalIntervalDragVelocity);clearInterval(g._intervalDrag);clearInterval(g._horizontalIntervalDrag);var c=l;var k=false;if(!h){if(g._dragStartCell==j){k=true}}else{if(g.resizeTo){if(c.to.equals(g.resizeTo)){k=true}}else{if(g.resizeFrom){if(c.from.equals(g.resizeFrom)){k=true}}}}if(k){var i=a('[data-key="'+l.id+'"]');i.removeClass(g.toTP("jqx-scheduler-feedback-appointment jqx-disableselect"));g._removeFeedbackAndStopResize();return}var e=c.duration();var d=c.duration().days()>=1||c.allDay;var f=function(p,m){if(m.allDay||d){var u=g.getMaxAllDayAppointments(g.appointmentsToRender)}if(h){if(g.resizeTo){if(g.resizeTo>g.max){g.resizeTo=g.max}if(g.resizeTo<g.min){g.resizeTo=g.min}m.to=g.resizeTo}else{if(g.resizeFrom){if(g.resizeFrom>g.max){g.resizeFrom=g.max}if(g.resizeFrom<g.min){g.resizeFrom=g.min}m.from=g.resizeFrom}}}else{var z=g._views[g._view].type;var B=g._views[g._view];var q=a(j).attr("data-date");var y=a(j).attr("data-end-date")!=null;var t=new a.jqx.date(q,g.timeZone);if(t<g.min){t=g.min}if(t>g.max){t=g.max}if(g.rtl&&d&&y){m.to=a.jqx.scheduler.utilities.getEndOfDay(t)}else{if(g.rtl&&(z=="monthView"||z=="timelineMonthView")){m.to=a.jqx.scheduler.utilities.getEndOfDay(t)}else{if(g.rtl&&(z=="timelineDayView"||z=="timelineWeekView")){var o=g.getMinutesPerScale();m.to=t.addMinutes(o)}else{m.from=t}}}if(z==="dayView"||z==="weekView"){if(!d&&!y){m.to=t.add(e);m.allDay=false}else{if(!d&&y){m.to=a.jqx.scheduler.utilities.getEndOfDay(t);m.allDay=true}else{if(d&&y&&!g.rtl){m.to=t.add(e);m.allDay=true}else{if(d&&y&&g.rtl){m.from=a.jqx.scheduler.utilities.getStartOfDay(m.to.add(new a.jqx.timeSpan(-e)));m.allDay=true}else{if(d&&!y){var s=30;var r=B.timeRuler&&B.timeRuler.scale;switch(r){case"sixtyMinutes":case"hour":s=60;break;case"fifteenMinutes":case"quarterHour":s=15;break;case"tenMinutes":s=10;break;case"fiveMinutes":s=5;break}m.to=t.addMinutes(s);m.allDay=false}}}}}}else{if(z==="monthView"){if(!g.rtl){m.to=t.add(e)}else{m.from=a.jqx.scheduler.utilities.getStartOfDay(m.to.add(new a.jqx.timeSpan(-e)))}}else{if(z==="timelineDayView"||z==="timelineWeekView"||z==="timelineMonthView"){if(!g.rtl){m.to=t.add(e)}else{if(z=="timelineMonthView"){m.from=a.jqx.scheduler.utilities.getStartOfDay(m.to.add(new a.jqx.timeSpan(-e)))}else{var o=g.getMinutesPerScale();m.from=t.addMinutes(o).add(new a.jqx.timeSpan(-e))}}}}}}g._saveChangesAfterDragOrResize(p,m,j,g.resizing);var z=a(j).attr("data-view");var w=g._resources[parseInt(z)-1];if(w!=null){m.resourceId=w}g.resizing=false;g.resizeFrom=null;g._dragCell=null;g.resizeTo=null;g._raiseEvent("appointmentChange",{appointment:m.boundAppointment});g.changedAppointments[m.id]={type:"Update",appointment:m.boundAppointment};g.table.find(".jqx-icon-arrow-down").hide();if((g._views[g._view].type=="weekView"||g._views[g._view].type=="dayView")&&(m.allDay||d)){if(g.tableRows>1){g._renderrows()}else{var v=g.getViewStart();var A=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(v,A);g._renderAppointments(v,A);var x=g.getMaxAllDayAppointments(g.appointmentsToRender);if(x!=u){var n=x*(g._defaultRowHeight-2);if(g.isTouchDevice()){n=Math.max(22+g._defaultRowHeight,17+n)}else{n=Math.max(3*g._defaultRowHeight,17+n)}if(g.tableRows==1){a(a(g.table[0].rows[0]).find("td")).css("height",n+"px")}else{a(a(g.table[0].rows[1]).find("td")).css("height",n+"px")}a(g.oldRow).find("td").css("height",n+"px");g.pinnedtable.height(n);g._updateScrollbars(g._hostHeight?g._hostHeight:g.host.height())}}}else{var v=g.getViewStart();var A=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(v,A);g._renderAppointments(v,A)}g._removeFeedbackAndStopResize()};if(c.isRecurrentAppointment()){f(false,c)}else{f(null,c)}},_handleResize:function(O,M,k,P,u){var L=this;var h=L._views[L._view].type;var K=L._views[L._view];if(h==="dayView"||h==="weekView"){var B=u.duration().days()>=1||u.allDay;if(!B&&!k.getAttribute("data-end-date")){var g=function(i){if(i<10){return false}return true};var m=L.findCell(L.feedback.coord().left,M);if(L.topResize){if(!L._lastResizeY){L._lastResizeY=L.mouseDownPosition.top}if(M>L._lastResizeY+a(k).height()/2){var H=L.selectedAppointmentTableBounds.height+L.selectedAppointmentTableBounds.top-P.top-a(k).height()-3;if(g(H)){L.feedback.css("top",2+P.top+a(k).height());L.feedback.height(H);L._lastResizeY=L.feedback.coord().top;var W=new a.jqx.date(m.getAttribute("data-date"),L.timeZone);L.resizeFrom=W.addMinutes(L.getMinutesPerScale())}}else{if(M<L._lastResizeY-a(k).height()/2){var H=L.selectedAppointmentTableBounds.height+L.selectedAppointmentTableBounds.top-P.top-3;if(g(H)){L.feedback.css("top",2+P.top);L.feedback.height(H);L._lastResizeY=L.feedback.coord().top;L.resizeFrom=new a.jqx.date(m.getAttribute("data-date"),L.timeZone)}}}}else{if(L.bottomResize){if(!L._lastResizeY){L._lastResizeY=L.mouseDownPosition.top}if(M>L._lastResizeY+a(k).height()/2){var Q=-5+a(k).height()+P.top-L.selectedAppointmentTableBounds.height-L.selectedAppointmentTableBounds.top;var H=L.selectedAppointmentTableBounds.height+Q;if(g(H)){L.feedback.height(H);L._lastResizeY=L.selectedAppointmentTableBounds.height+Q+L.feedback.coord().top;L.resizeTo=new a.jqx.date(m.getAttribute("data-date"),L.timeZone).addMinutes(L.getMinutesPerScale())}}else{if(M<L._lastResizeY-a(k).height()/2){var Q=-5+P.top-L.selectedAppointmentTableBounds.height-L.selectedAppointmentTableBounds.top;var H=L.selectedAppointmentTableBounds.height+Q;if(g(H)){L.feedback.height(H);L._lastResizeY=L.selectedAppointmentTableBounds.height+Q+L.feedback.coord().top;L.resizeTo=new a.jqx.date(m.getAttribute("data-date"),L.timeZone)}}}}}}else{var A=function(i){if(i<10){return false}return true};if(L.leftResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left-L.cellWidth;if(A(e)){L.feedback.css("left",5+P.left+L.cellWidth);L.feedback.width(e-5);L.feedback.hide();L.pinnedfeedback.css("left",5+P.left+L.cellWidth);L.pinnedfeedback.width(e-5);L._lastResizeX=L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone).addDays(1)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone)).addDays(-1)}}}else{if(O<L._lastResizeX-a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left;if(A(e)){L.feedback.css("left",5+P.left);L.feedback.width(e-5);L.feedback.hide();L.pinnedfeedback.css("left",5+P.left);L.pinnedfeedback.width(e-5);L._lastResizeX=L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone))}}}}}else{if(L.rightResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var Q=a(k).width()+P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.hide();L.feedback.width(e-6);L.pinnedfeedback.width(e-6);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone))}else{L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var Q=P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.hide();L.feedback.width(e-6);L.pinnedfeedback.width(e-6);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.pinnedfeedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone).addDays(-1))}else{L.resizeFrom=new a.jqx.date(k.getAttribute("data-date"),L.timeZone).addDays(1)}}}}}}}}else{if(h==="timelineMonthView"){var A=function(i){if(i<10){return false}return true};var s=L.findCell(O,L.feedback.coord().top);if(L.leftResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left-a(k).width();if(A(e)){L.feedback.css("left",P.left+a(k).width());L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(1)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(-1))}}}else{if(O<L._lastResizeX-a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left;if(A(e)){L.feedback.css("left",P.left);L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}else{L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone))}}}}}else{if(L.rightResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var Q=a(k).width()+P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q-5;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone))}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var Q=P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q-5;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(-1))}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addDays(1)}}}}}}}else{if(h==="monthView"){var A=function(i){if(i<10){return false}return true};var v=-5;if(L.tableColumns>1){v=parseInt(-5/L.tableColumns)}for(var V=0;V<L.columns.records.length/L.tableColumns;V++){v+=L.columns.records[V].width}var t=L.selectedJQXAppointment.resourceId;var n=L._resources.indexOf(t);if(L.resources&&L.resources.orientation=="none"){n=-1}var f="0px";if(n!=-1&&L.tableRows==1){f=v*n+"px"}var J=k.offsetWidth;var T=k.offsetHeight;var I=18;if(L.isTouchDevice()){I=2}for(var V=0;V<6;V++){L.feedbacks[V][0].style.left=f;L.feedbacks[V][0].style.width=v+"px";L.feedbacks[V][0].style.display="block";L.feedbacks[V][0].style.top=parseInt(L.rows[V].top)+I+"px";if(L.tableRows>1){L.feedbacks[V][0].style.top=parseInt(L.rows[6*n+V].top)+I+"px"}a(L.feedbacks[V][0]).find(".jqx-scheduler-appointment-resize-indicator").css("visibility","inherit")}var o=L.selectedJQXAppointment.elements;var c=o[0].cells[0].cell;var N=o[o.length-1];var S=N.lastCellY;var l=N.lastCellX;var q=o[0].cellY;var E=o[0].cellX;var z=parseInt(P.top);var X=parseInt(P.left);if(!L.rtl){if(L.leftResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}else{for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.width=o[U].width+"px";F[0].style.top=o[U].y+"px"}}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){F[0].style.left=1+P.left+"px";F[0].style.width=-1+w.x+w.width-P.left+"px"}else{if(z>q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z<q){F[0].style.left=f;F[0].style.width=w.x+w.width-parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=v-P.left+parseInt(f)+"px";F[0].style.left=P.left+"px"}}if(D>S){F[0].style.display="none"}if(D<z){F[0].style.display="none"}if(z>=S){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(z>S||(z==S&&X>l)){if(r==D){F[0].style.display="block";F[0].style.width=o[U].width+"px";F[0].style.left=o[U].x+"px"}}else{if(z==S&&X<=l){if(q!=S){F[0].style.width=o[U].width-P.left+parseInt(f)+"px"}}}}}}var G=new a.jqx.date(k.getAttribute("data-date"),L.timeZone);if(G<L.selectedJQXAppointment.to){L.resizeFrom=G}else{L.resizeFrom=L.selectedJQXAppointment.from}}else{if(L.rightResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.top=o[U].y+"px"}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){if(X>=E){F[0].style.width=X+J-E-5+"px"}else{F[0].style.width=w.width+"px"}}else{if(z<q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z>q){F[0].style.left=p+"px";F[0].style.width=v-E+parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=X+J-5-parseInt(f)+"px"}}if(D<q){F[0].style.display="none"}if(D>z&&D>q){F[0].style.display="none"}if(z<=q){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(z<q||(z==q&&X<E)){if(r==D){F[0].style.display="block";F[0].style.width=o[U].width+"px"}}}}}var G=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone));if(G>L.selectedJQXAppointment.from){L.resizeTo=G}else{L.resizeTo=L.selectedJQXAppointment.to}}}}else{if(L.leftResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}else{for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.width=o[U].width+"px";F[0].style.top=o[U].y+"px"}}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){F[0].style.left=1+P.left+"px";F[0].style.width=-1+w.x+w.width-P.left+"px"}else{if(z<q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z>q){F[0].style.left=f;F[0].style.width=w.x+w.width-parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=v-P.left+parseInt(f)+"px";F[0].style.left=P.left+"px"}}if(D<q){F[0].style.display="none"}if(D>z){F[0].style.display="none"}if(z<q){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.display="block";F[0].style.width=o[U].width+"px";F[0].style.left=o[U].cellX+"px"}}}if(z==q){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(z<q||(z==q)){if(r==D&&q!=S){F[0].style.left=1+P.left+parseInt(f)+"px";if(1+P.left+parseInt(f)>w.x+w.width){F[0].style.left=w.x+"px"}F[0].style.width=-1+w.x+w.width-P.left+"px"}}}}}var G=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(k.getAttribute("data-date"),L.timeZone));if(G>L.selectedJQXAppointment.from){L.resizeTo=G}else{L.resizeTo=L.selectedJQXAppointment.to}}else{if(L.rightResize){for(var V=0;V<6;V++){var F=L.feedbacks[V];var D=parseInt(F[0].style.top)-I;var C=parseInt(F[0].style.left);if(D<z){F[0].style.width=v+"px"}for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.top=o[U].y+"px"}}var w=o[0];var p=parseInt(w.x);if(D==q){F[0].style.left=p+"px";if(z==q){if(X>=E){F[0].style.width=X+J-E-5+"px"}else{F[0].style.width=w.width+"px"}}else{if(z>q){F[0].style.left=p+"px";F[0].style.width=w.width+"px"}else{if(z<q){F[0].style.left=p+"px";F[0].style.width=v-E+parseInt(f)+"px"}}}}else{if(D==z){F[0].style.width=X+J-5-parseInt(f)+"px"}}if(D>S){F[0].style.display="none"}if(D<z){F[0].style.display="none"}if(z>S){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(r==D){F[0].style.display="block"}if(D==S){F[0].style.width=o[U].width+"px";F[0].style.left=o[U].cellX+"px"}}}if(z<=S){if(D==S){for(var U=0;U<o.length;U++){var r=o[U].cellY;if(D!=z&&r==D&&q!=S){F[0].style.width=o[U].width+"px";F[0].style.left=o[U].cellX+"px"}else{if(D==z&&r==D&&q!=S){F[0].style.left=o[U].cellX+"px";F[0].style.width=X+J-5-parseInt(f)-o[U].cellX+"px"}}}}}}var G=new a.jqx.date(k.getAttribute("data-date"),L.timeZone);if(G<L.selectedJQXAppointment.to){L.resizeFrom=G}else{L.resizeFrom=L.selectedJQXAppointment.from}}}}var d=new Array();for(var V=0;V<6;V++){var F=L.feedbacks[V];if(F[0].style.display=="block"){d.push(F)}}a.each(d,function(i){if(!L.rtl){if(i>0){a(this).find(".jqx-scheduler-appointment-left-resize-indicator")[0].style.visibility="hidden"}if(i<d.length-1){a(this).find(".jqx-scheduler-appointment-right-resize-indicator")[0].style.visibility="hidden"}}else{if(i>0){a(this).find(".jqx-scheduler-appointment-right-resize-indicator")[0].style.visibility="hidden"}if(i<d.length-1){a(this).find(".jqx-scheduler-appointment-left-resize-indicator")[0].style.visibility="hidden"}}})}else{if(h==="timelineDayView"||h==="timelineWeekView"){var R=L.getMinutesPerScale();var A=function(i){if(i<10){return false}return true};var s=L.findCell(O,L.feedback.coord().top);if(L.leftResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left-a(k).width();if(A(e)){L.feedback.css("left",2+P.left+a(k).width());L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}else{L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var e=L.selectedAppointmentTableBounds.width+L.selectedAppointmentTableBounds.left-P.left;if(A(e)){L.feedback.css("left",2+P.left);L.feedback.width(e);L._lastResizeX=L.feedback.coord().left;if(!L.rtl){L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}else{L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}}}}}else{if(L.rightResize){if(!L._lastResizeX){L._lastResizeX=L.mouseDownPosition.left}if(O>L._lastResizeX+a(k).width()/2){var Q=a(k).width()+P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}}}else{if(O<L._lastResizeX-a(k).width()/2){var Q=P.left-L.selectedAppointmentTableBounds.width-L.selectedAppointmentTableBounds.left;var e=L.selectedAppointmentTableBounds.width+Q;if(A(e)){L.feedback.width(e);L._lastResizeX=L.selectedAppointmentTableBounds.width+Q+L.feedback.coord().left;if(!L.rtl){L.resizeTo=new a.jqx.date(s.getAttribute("data-date"),L.timeZone)}else{L.resizeFrom=new a.jqx.date(s.getAttribute("data-date"),L.timeZone).addMinutes(R)}}}}}}}}}}if(h==="timelineDayView"||h==="timelineMonthView"||h==="timelineWeekView"){clearInterval(L._horizontalIntervalDrag);L._horizontalIntervalDrag=setInterval(function(){var j=L.host.width();var y=L.host.coord().left;var i=y+25;var x=j+i-45;if(!L.rtl){if(O<i){L.hScrollInstance.setPosition(L.hScrollInstance.value-5)}else{if(O>x){L.hScrollInstance.setPosition(L.hScrollInstance.value+5)}}}else{if(O>x){L.hScrollInstance.setPosition(L.hScrollInstance.value-5)}else{if(O<i){L.hScrollInstance.setPosition(L.hScrollInstance.value+5)}}}},5)}else{if(h==="dayView"||h==="weekView"){clearInterval(L._intervalDrag);L._intervalDrag=setInterval(function(){var Y=L.host.height();var j=0;if(!L.columnGroups){j+=L.showHeader?L.columnsHeight:0}else{j+=L.showHeader?L.columnsheader.height():0}if(L.showToolbar){j+=L.toolbarHeight}Y-=j;var y=L.legendHeight;if(L._resources.length==0){y=0}if(L.showLegend){Y-=y}var ab=j+L.host.coord().top;var i=L.showAllDayRow;if(K.timeRuler&&(h==="dayView"||h==="weekView")){if(K.timeRuler.showAllDayRow!=undefined){i=K.timeRuler.showAllDayRow}}var x=u.duration().days()>=1||u.allDay;if(i&&x){ab-=20}else{if(i&&L.resizing){ab+=a(L.table[0].rows[0]).height();Y-=a(L.table[0].rows[0]).height()}}var aa=ab+25;var Z=Y+aa-45;if(M<aa){L.vScrollInstance.setPosition(L.vScrollInstance.value-5)}else{if(M>Z){L.vScrollInstance.setPosition(L.vScrollInstance.value+5)}}},5)}}L.resizing=true},_startTimers:function(c,i,e){var g=this;var h=g.host.coord();var f=0;var d=0;if(g.hScrollInstance.element.style.visibility!="hidden"){clearInterval(g._horizontalIntervalDragVelocity);g._horizontalIntervalDragVelocity=setInterval(function(){f++;if(f>40){f=40}},100);clearInterval(g._horizontalIntervalDrag);g._horizontalIntervalDrag=setInterval(function(){var k=g._hostWidth;var m=h.left;var j=m+30;var l=k+j-60;if(!g.rtl){if(c<j){g.hScrollInstance.setPosition(g.hScrollInstance.value-10-f)}else{if(c>l){g.hScrollInstance.setPosition(g.hScrollInstance.value+10+f)}else{f=0}}}else{if(c<j){g.hScrollInstance.setPosition(g.hScrollInstance.value+10+f)}else{if(c>l){g.hScrollInstance.setPosition(g.hScrollInstance.value-10-f)}else{f=0}}}},10)}if(g.vScrollInstance.element.style.visibility!="hidden"){clearInterval(g._verticalIntervalDragVelocity);g._verticalIntervalDragVelocity=setInterval(function(){d++;if(d>40){d=40}},100);clearInterval(g._intervalDrag);g._intervalDrag=setInterval(function(){var n=g._hostHeight;var p=0;if(!g.columnGroups){p+=g.showHeader?g.columnsHeight:0}else{p+=g.showHeader?g.columnsheader.height():0}var q=g._views[g._view].type;var s=g._views[g._view];if(g.showToolbar){p+=g.toolbarHeight}n-=p;if(g.showLegend&&g._resources.length>0){n-=g.legendHeight}var l=h.top;var r=p+l;if(q=="dayView"||q=="weekView"){var k=g.showAllDayRow;if(s.timeRuler&&(q==="dayView"||q==="weekView")){if(s.timeRuler.showAllDayRow!=undefined){k=s.timeRuler.showAllDayRow}}var m=e.duration().days()>=1||e.allDay;if(k&&m){r-=20}else{if(k&&g.resizing){r+=a(g.table[0].rows[0]).height()}}}var o=r+30;var j=l+n+p-30;if(i<o){g.vScrollInstance.setPosition(g.vScrollInstance.value-10-d)}else{if(i>j){g.vScrollInstance.setPosition(g.vScrollInstance.value+10+d)}else{d=0}}},10)}},_hoverCell:function(c){var d=this;if(!d.enableHover){return true}if(d._resources.length>0){if(c.className.indexOf("pinned")>=0){return true}}if(c.className.indexOf("time-column")>=0){return true}if(c.className.indexOf("jqx-scheduler-disabled-cell")>=0){return true}d.hoveredCell=c;if(!c){return true}c.className+=" "+d.toTP("jqx-fill-state-hover")+" "+d.toTP("jqx-grid-cell-hover")+" "+d.toTP("jqx-scheduler-cell-hover")},_removeHoveredCell:function(){var e=this;if(e.hoveredCell){var d=e.hoveredCell;var c=function(f){var g=d.className;g=g.replace(" "+e.toTP("jqx-fill-state-hover"),"");g=g.replace(" "+e.toTP("jqx-grid-cell-hover"),"");g=g.replace(" "+e.toTP("jqx-scheduler-cell-hover"),"");d.className=g};c(d)}e.hoveredCell=null},_addHandlers:function(){var i=this;this._mousewheelfunc=this._mousewheelfunc||function(m){i.wheel(m,i);return false};this.focused=false;var f=false;this.addHandler(a(document),"keydown.scheduler"+i.element.id,function(m){f=false;if(m.keyCode===9&&m.shiftKey&&!i.focused){f=true}});this.addHandler(this.host,"focus",function(n){if(i.focusedCell&&!i.selectedAppointment&&!f){a(i.focusedCell).addClass(i.toThemeProperty("jqx-scheduler-cell-focus"))}i.focused=true;if(f){if(i.appointmentsToRender.length>0){var m=i.appointmentsToRender[i.appointmentsToRender.length-1];i._selectAppointment(m);i._lastSelectedAppointment=m}else{if(!i.focusedCell){i._updateFocusedCell()}else{if(i.focusedCell){if(i.focusedCell.className.indexOf("-focus")==-1){i._updateCellsSelection();return false}}}}}});this.addHandler(this.host,"blur",function(m){if(i.focusedCell){if(document.activeElement==i.element){return true}if(a(document.activeElement).ischildof(i.host)){return true}a(i.focusedCell).removeClass(i.toThemeProperty("jqx-scheduler-cell-focus"));i.focused=false}});this.addHandler(this.host,"dragstart."+this.element.id,function(m){return false});this.addHandler(this.host,"selectstart."+this.element.id,function(m){if(i.enableBrowserSelection){return true}if(i.showToolBar){if(a(m.target).ischildof(i.toolbar)){return true}}if(i.rowDetails){if(a(m.target).parents("[data-role=details]").length>0){return true}}if(undefined==i.editKey){return false}});this.addHandler(a(window),"jqxReady."+this.element.id,function(){});this.removeHandler(this.host,"mousewheel",this._mousewheelfunc);this.addHandler(this.host,"mousewheel",this._mousewheelfunc);this.vScrollInstance.valueChanged=function(m){if(i._timer){clearTimeout(i._timer)}i._timer=setTimeout(function(){if(i.table){i.table[0].style.top=0-i.vScrollInstance.value+"px"}},1)};this.hScrollInstance.valueChanged=function(m){if(i._htimer){clearTimeout(i._htimer)}i._htimer=setTimeout(function(){if(i.table){i._renderhorizontalscroll()}},1)};var d="mousedown";if(this.isTouchDevice()){d=a.jqx.mobile.getTouchEventName("touchstart");if(a.jqx.browser.msie&&a.jqx.browser.version<10){d="mousedown"}}this.addHandler(this.table,"mouseleave",function(m){i._removeHoveredCell()});if(i.isTouchDevice()){i.enableHover=false}var g="mousemove.scheduler"+this.element.id;var e="mouseup.scheduler"+this.element.id;if(this.isTouchDevice()&&this.touchMode!==true){g=a.jqx.mobile.getTouchEventName("touchmove")+".scheduler"+this.element.id;e=a.jqx.mobile.getTouchEventName("touchend")+".scheduler"+this.element.id}this.addHandler(a(document),g,function(P){var B=P.pageX;var A=P.pageY;if(i.isTouchDevice()){var W=a.jqx.position(P);B=W.left;A=W.top;if(isNaN(B)||isNaN(A)){var W=a.jqx.position(P.originalEvent);B=W.left;A=W.top}}if(i.disabled||P.which===3){return true}if(!i.isMouseDown){return true}if(i.hScrollInstance.isScrolling()||i.vScrollInstance.isScrolling()){return true}if(i._hostWidth){var o=i.host.coord();if(o.left+i._hostWidth<B||B<o.left){return true}if(o.top+i._hostHeight<A||A<o.top){return true}}if(i.mouseDownPosition){if((Math.abs(i.mouseDownPosition.left-B)>=3&&Math.abs(i.mouseDownPosition.left-B)<=10)||(Math.abs(i.mouseDownPosition.top-A)>=3&&Math.abs(i.mouseDownPosition.top-A)<=10)){i.dragOrResize=true}}if(i.selectedAppointment&&i.dragOrResize){var s=null;if(i._hasOpenedMenu){return true}if(i.editRecurrenceDialog.jqxWindow("isOpen")){return true}var F=i._views[i._view].type;var z=i._views[i._view];var E=false;if(P.target.nodeName.toLowerCase()==="td"){var u=P.target}else{var u=i.findCell(B,A)}if(!u){return true}if(u.getAttribute("data-time-slot")!=undefined){return true}if(u.className.indexOf("jqx-grid-cell-pinned")>=0){return true}if(!i.feedback){s=i.getJQXAppointmentByElement(i.selectedAppointment);if(!s.draggable&&!s.resizable){s=null;return true}if(i.beginDrag){var T=i.beginDrag(s);if(!T){return true}}var p=a('[data-key="'+s.id+'"]');var N=i.selectedAppointment.position();i.feedback=i.selectedAppointment.clone(true);i.pinnedfeedback=i.selectedAppointment.clone(true);var U=!(i.selectedAppointment[0].style.cursor=="row-resize"||i.selectedAppointment[0].style.cursor=="col-resize"||i.resizing);var r=function(x){if(U){x.find(".jqx-scheduler-appointment-resize-indicator").hide()}p.addClass(i.toTP("jqx-scheduler-feedback-appointment jqx-disableselect"));x.addClass(i.toTP("jqx-scheduler-feedback-appointment"));x.addClass(i.toTP("jqx-scheduler-feedback-drag-appointment"));if(!U){x.css("z-index",400)}else{x.css("z-index",401)}};r(i.feedback);r(i.pinnedfeedback);if(i._views[i._view].type!="monthView"||U){i.table.append(i.feedback);if(i.tableRows==1){i.pinnedtable.append(i.pinnedfeedback)}else{i.table.append(i.pinnedfeedback)}i.feedback.css("left",N.left);i.feedback.css("top",N.top);i.pinnedfeedback.css("left",N.left);i.pinnedfeedback.css("top",N.top);if(i._views[i._view].type=="monthView"&&i.isTouchDevice()){i.feedbacks=new Array();for(var R=0;R<6;R++){i.feedbacks.push(i.feedback.clone(true));a(i.feedbacks[R]).hide();i.table.append(a(i.feedbacks[R]))}}}else{i.feedbacks=new Array();for(var R=0;R<6;R++){i.feedbacks.push(i.feedback.clone(true));a(i.feedbacks[R]).hide();i.table.append(a(i.feedbacks[R]))}}}if(i.dragging){var T=i.dragging(s,u,i.feedback);if(false===T){return true}}var W=a(u).position();if(i.endDrag){var q=i.feedback.css("left");var n=i.feedback.css("top");var I=i.feedback.width();var v=i.feedback.height}if(!s){s=i.selectedJQXAppointment}var H=s.resourceId;var Q=i._resources.indexOf(H);if(i.resources&&i.resources.orientation=="none"){Q=-1}var K=false;var S=i.isTouchDevice();if(S&&i.touchMode!==true&&i._dragCell==null&&!(i.leftResize||i.rightResize||i.topResize||i.bottomResize||i.resizing)){switch(F){case"dayView":case"weekView":var E=s.duration().days()>=1||s.allDay;if(!E){if(A>=i.selectedAppointmentBounds.top-15&&A<=i.selectedAppointmentBounds.top+15){K=true;i.topResize=true}if(A>=i.selectedAppointmentBounds.top-15+i.selectedAppointmentBounds.height&&A<=i.selectedAppointmentBounds.top+i.selectedAppointmentBounds.height+15){K=true;i.bottomResize=true}}else{if(B>=i.selectedAppointmentBounds.left-15&&B<=i.selectedAppointmentBounds.left+15){K=true;i.leftResize=true}if(B>=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width-15&&B<=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width+15){K=true;i.rightResize=true}}break;default:if(B>=i.selectedAppointmentBounds.left-15&&B<=i.selectedAppointmentBounds.left+15){K=true;i.leftResize=true}if(B>=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width-15&&B<=i.selectedAppointmentBounds.left+i.selectedAppointmentBounds.width+15){K=true;i.rightResize=true}break}}if(S&&(i.leftResize||i.rightResize||i.topResize||i.bottomResize||i.resizing)||K){if(u.getAttribute("data-view")!=Q+1){if(i.resources.orientation!="none"){return true}}var w=i._getDateByString(u.getAttribute("data-date"));if(w<i.min.toDate()||w>i.max.toDate()){return}i._handleResize(B,A,u,W,s);i._oldResizeTD=u}else{if(!S&&i.selectedAppointment[0].style.cursor=="row-resize"||i.selectedAppointment[0].style.cursor=="col-resize"||i.resizing){if(u.getAttribute("data-view")!=Q+1){if(i.resources&&i.resources.orientation!="none"){return true}}var w=i._getDateByString(u.getAttribute("data-date"));if(w<i.min.toDate()||w>i.max.toDate()){return}i._handleResize(B,A,u,W,s);i._oldResizeTD=u}else{if(!s.draggable){i._removeFeedbackAndStopResize();return true}if(i._dragCell==u){i._startTimers(B,A,s);if(i.isTouchDevice()&&i.touchMode!==true){P.stopPropagation();return false}else{return}}var w=i._getDateByString(u.getAttribute("data-date"));if(w<i.min.toDate()||w>i.max.toDate()){return}var m=s.duration();if(F.indexOf("month")>=0&&new a.jqx.date(w).add(m)>i.max){return}var D=i.vScrollBar[0].style.visibility=="hidden"?0:6+i.vScrollBar.outerWidth();i._dragCell=u;i.feedback[0].style.left=2+W.left+"px";i.feedback[0].style.top=2+W.top+"px";if(F==="dayView"||F==="weekView"){i.pinnedfeedback.css("left",2+W.left);i.pinnedfeedback.css("top",2+W.top);var M=0;if(u.getAttribute("data-end-date")){var J=i.appointmentsMinHeight;if(i.isTouchDevice()){J=i.touchAppointmentsMinHeight}if(z.appointmentHeight){J=z.appointmentHeight}E=s.duration().days()>=1||s.allDay;i.feedback.css("top",2+W.top+J);i.pinnedfeedback.css("top",2+W.top+18);if(E){i.pinnedfeedback.css("top",s.elements[0].y);M=i.selectedAppointment.width();if(2+W.left+M>i.host.width()-D){var C=2+W.left+M-i.host.width()+D+6;M-=C}i.feedback.width(M);i.feedback.height(J);i.pinnedfeedback.width(M);i.pinnedfeedback.height(J)}else{M=a(u).width()-4;i.feedback.width(M);i.feedback.height(J);i.pinnedfeedback.width(M);i.pinnedfeedback.height(J)}i.feedback.hide();i.pinnedfeedback.show()}else{i.feedback.show();i.pinnedfeedback.hide();var t=2;var O=30;var V=z.timeRuler&&z.timeRuler.scale;switch(V){case"sixtyMinutes":case"hour":t=1;break;case"thirdyMinutes":case"halfHour":t=2;break;case"fifteenMinutes":case"quarterHour":t=4;break;case"tenMinutes":t=6;break;case"fiveMinutes":t=12;break}M=a(u).width()-4;i.feedback.width(M);E=s.duration().days()>=1||s.allDay;if(E){i.feedback.height((a(u).height())-6)}else{i.feedback.height(i.selectedAppointment.height())}}i._startTimers(B,A,s)}else{if(F==="monthView"){i.feedback.css("left",1+W.left);var G=i.selectedAppointmentTableBounds;var L=parseInt(G.top);if(L>W.top&&L<W.top+u.offsetHeight){i.feedback.css("top",L+"px")}else{i.feedback.css("top",i.selectedAppointment.height()+W.top-2)}if(i.isTouchDevice()){i.feedback.css("top",W.top+2)}M=i.selectedAppointment.width();i.feedback.width(M);i.feedback.height(i.selectedAppointment.height());i._startTimers(B,A,s)}else{if(F==="timelineDayView"||F==="timelineMonthView"||F==="timelineWeekView"){var G=i.selectedAppointmentTableBounds;var L=parseInt(G.top);if(L>W.top&&L<W.top+u.offsetHeight){i.feedback.css("top",L+"px")}i._startTimers(B,A,s)}}}}}if(i.endDrag){var T=i.endDrag(s,u,i.feedback);if(!T){i.feedback.width(I)}i.feedback.height(v);i.feedback.css("top",n);i.feedback.css("left",q);return true}if(i.isTouchDevice()&&i.touchMode!==true){P.stopPropagation();return false}}});var l=function(m){i.isMouseDown=false;i.dragOrResize=false;if(i.contextMenu&&i.menu&&m.which!==3){i.menu.jqxMenu("close");i._hasOpenedMenu=false}if(m.which===3){return true}if(i.selectedAppointment&&i.feedback){if(i.editRecurrenceDialog.jqxWindow("isOpen")){return}i._handleMouseUp(i.selectedJQXAppointment,i._dragCell,i.resizing)}};this.addHandler(a(document),e,function(m){return l(m)});if(!this.isTouchDevice()){try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var c=null;if(window.parent&&document.referrer){c=document.referrer}if(c&&c.indexOf(document.location.host)!=-1){var h=function(m){if(!self.disabled){return l(m)}};i.addHandler(a(window.top.document),"mouseup.jqxscheduler"+i.element.id,h)}}}}catch(k){}}this.addHandler(this.host,g,function(o){var C=o.pageX;var A=o.pageY;if(i.disabled||o.which===3){return true}if(i.selectedAppointment&&i.isMouseDown){return true}if(i.hScrollInstance.isScrolling()||i.vScrollInstance.isScrolling()){return true}if(i._hasOpenedMenu){return true}if(i.overlay[0].style.display!=="none"){return true}var n=null;if(o.target.className.indexOf("jqx-scheduler-appointment")>=0&&o.target.className.indexOf("jqx-scheduler-appointment-inner-content")==-1&&o.target.className.indexOf("jqx-scheduler-appointment-content")==-1&&o.target.className.indexOf("jqx-scheduler-appointment-resize-indicator")==-1){n=o.target}var u=o.target;for(var v=0;v<4;v++){if(u.parentNode){if(u.className.indexOf("jqx-scheduler-appointment")>=0&&u.className.indexOf("jqx-scheduler-appointment-innter-content")==-1&&u.className.indexOf("jqx-scheduler-appointment-content")==-1&&u.className.indexOf("jqx-scheduler-appointment-resize-indicator")==-1){n=u}u=u.parentNode}else{break}}if(n){var B=i._views[i._view].type;var E=i._views[i._view];var D=i.getJQXAppointmentByElement(n);if(D.resizable){var t=D.duration();var p=D.allDay||t.days()>=1||(t.hours()==23&&t.minutes==59&&t.seconds==59);var z=a(n).coord();var w=a(n).position();i.selectedAppointmentBounds={top:z.top,left:z.left,width:a(n).width(),height:a(n).height()};i.selectedAppointmentTableBounds={top:w.top,left:w.left,width:a(n).width(),height:a(n).height()};var m=i.selectedAppointmentBounds;if(B=="weekView"||B=="dayView"){if(!p){if(A>=m.top-3&&A<=m.top+6){n.style.cursor="row-resize";i.topResize=true;i.bottomResize=false}else{if(A>=m.top+m.height-6&&A<=m.top+m.height+3){n.style.cursor="row-resize";i.topResize=false;i.bottomResize=true}else{n.style.cursor="pointer"}}}else{if(C>=m.left-3&&C<=m.left+6){n.style.cursor="col-resize";i.leftResize=true;i.rightResize=false}else{if(C>=m.left+m.width-6&&C<=m.left+m.width+3){n.style.cursor="col-resize";i.leftResize=false;i.rightResize=true}else{n.style.cursor="pointer"}}}}else{if(B=="monthView"&&D.elements.length>1){var s=i.table.coord();for(var v=0;v<D.elements.length;v++){var q=D.elements[v];var m={top:s.top+q.y,left:s.left+q.x,width:q.width,height:q.height};if((v==0&&!i.rtl)||(v==D.elements.length-1&&i.rtl)){if(C>=m.left-3&&C<=m.left+6){if(A>=m.top&&A<=m.top+m.height){n.style.cursor="col-resize";i.leftResize=true;i.rightResize=false;i.selectedAppointment=a(n);break}else{n.style.cursor="pointer"}}else{n.style.cursor="pointer"}}else{if((v==D.elements.length-1&&!i.rtl)||(v==0&&i.rtl)){if(C>=m.left+m.width-6&&C<=m.left+m.width+3){if(A>=m.top&&A<=m.top+m.height){n.style.cursor="col-resize";i.leftResize=false;i.rightResize=true;i.selectedAppointment=a(n);break}else{n.style.cursor="pointer"}}else{n.style.cursor="pointer"}}}}}else{if(C>=m.left-3&&C<=m.left+6){n.style.cursor="col-resize";i.leftResize=true;i.rightResize=false}else{if(C>=m.left+m.width-6&&C<=m.left+m.width+3){n.style.cursor="col-resize";i.leftResize=false;i.rightResize=true}else{n.style.cursor="pointer"}}}}}}if(!i.enableHover){return true}if(o.target.nodeName.toLowerCase()==="td"){var r=o.target}else{var r=i.findCell(C,A)}if(!r){return true}i._removeHoveredCell();if(i.renderedRecords&&i.renderedRecords.length===0){return true}if(i.isMouseDown){if(Math.abs(i.mousecaptureposition.left-C)>3||Math.abs(i.mousecaptureposition.top-A)>3){if(i.mousecaptureposition.clickedcell.length===0){i.selectionarea[0].style.visibility="hidden";return}if(i.lastHoveredCell!=r){if(i._selectRangeTimer){clearTimeout(i._selectRangeTimer)}i._selectRangeTimer=setTimeout(function(){i._selectRange(r,i.mousecaptureposition.clickedcell[0])},1)}i.lastHoveredCell=r}}else{if(!n){i._hoverCell(r)}}return true});this.addHandler(a(document),"keydown.jqxscheduler"+i.element.id,function(m){if(i.focused&&m.ctrlKey){if(m.keyCode==68){return false}}});this.addHandler(this.host,"keydown",function(m){return i._handleKey(m)});if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.addHandler(this.table,"dblclick",function(m){i.table.trigger("mousedown",m)})}var j=function(G){var H=G.target;var t=null;if(i.disabled){return true}if(!i.menu&&G.which==3){i._initMenu()}var m=i.table.coord();var z=G.pageX;var v=G.pageY;if(a.jqx.browser.msie&&a.jqx.browser.version<9){if(arguments&&arguments.length==2){z=arguments[1].pageX;v=arguments[1].pageY}}if(i.isTouchDevice()){var I=a.jqx.position(G);z=I.left;v=I.top;if(isNaN(z)||isNaN(v)){var I=a.jqx.position(G.originalEvent);z=I.left;v=I.top}}var t=i.findCell(z,v);if(G.target.nodeName.toLowerCase()==="td"){var t=G.target}else{var t=i.findCell(z,v)}if(G.target.nodeName.toLowerCase()==="span"&&(G.target.className.indexOf("jqx-icon-arrow-down")>=0||G.target.className.indexOf("jqx-icon-close")>=0)){if(G.target.mousedown){G.target.mousedown()}return true}var r=a(t).parent();var K=r.attr("data-key");i.mousecaptureposition={left:G.pageX,top:G.pageY,clickedrow:a(r).index(),clickedcell:a(t)};if(G.which!==3){i.isMouseDown=true}else{i.isMouseDown=false}if(i.contextMenu&&i.menu&&G.which!==3){i.menu.jqxMenu("close");i._hasOpenedMenu=false}var q=function(y){if(G.which===3){if(i.contextMenu&&i.menu){if(y){i.menu.find("li:first").show()}else{i.menu.find("li:first").hide()}var x=i.menu.coord();if(i.menu.css("display")=="block"&&x.left==G.pageX&&x.top==G.pageY){i._hasOpenedMenu=true;G.preventDefault();G.stopPropagation();return}i.menu.jqxMenu("open",G.pageX,G.pageY);i._hasOpenedMenu=true;G.preventDefault();G.stopPropagation();setTimeout(function(){i.menu.jqxMenu("focus")},50)}}};var F=function(){for(var L=0;L<w.length;L++){var y=w[L].cells;for(var x=0;x<y.length;x++){y[x].removeAttribute("data-selected")}}};var p=G.target.className.indexOf("jqx-scheduler-appointment")>=0&&G.target.className.indexOf("jqx-scheduler-appointment-inner-content")==-1&&G.target.className.indexOf("jqx-scheduler-appointment-status")==-1&&G.target.className.indexOf("jqx-scheduler-appointment-resize-indicator")==-1&&G.target.className.indexOf("jqx-scheduler-appointment-content")==-1?a(G.target):a(G.target).parents(".jqx-scheduler-appointment");if(p.length==0){p=null}if(p&&p[0].className.indexOf("feedback")==-1){if(p.parents(".jqx-scheduler-month-cell-popup").length>0){return true}i.mouseDownPosition={top:v,left:z};var E=a(p).coord();i.selectedAppointmentBounds={top:E.top,left:E.left,width:a(p).width(),height:a(p).height()};var I=a(p).position();i.selectedAppointmentTableBounds={top:I.top,left:I.left,width:a(p).width(),height:a(p).height()};if(!i._dragStartCell){i._dragStartCell=i.findCell(E.left,E.top)}var o=i.getJQXAppointmentByElement(p);i._selectAppointment(o,p,"mouse");i._raiseEvent("appointmentClick",{appointment:o.boundAppointment});i.clearSelection();var s=new Date().getTime();var C=300;if(a.jqx.browser.msie&&a.jqx.browser.version<9){C=1000}if(!i.clickTime){i.clickTime=new Date()}if((s-i.clickTime.getTime()<C)&&i._lastSelectedAppointment&&o.id==i._lastSelectedAppointment.id&&G.which!=3){if(!o.readOnly&&!i.editRecurrenceDialog.jqxWindow("isOpen")){var A=i._initDialog(o);if(A!==false){i._openDialog()}}i.mouseDownPosition=null;i.isMouseDown=false;if(G.preventDefault){G.preventDefault()}i._raiseEvent("appointmentDoubleClick",{appointment:o.boundAppointment})}else{i.focus()}i._lastSelectedAppointment=o;if(G.preventDefault){G.preventDefault()}G.stopPropagation();i.clickTime=new Date();if(!o.readOnly){if(G.which==3){q(true)}}return}else{if(G.which===3){var J=i.getSelection();if(J!==null){q(false)}else{i.clearAppointmentsSelection();t.setAttribute("data-selected","true");i._lastSelectedCell=t;i.focusedCell=t;i._updateCellsSelection(t);q(false);i._raiseEvent("cellClick",{cell:t})}}else{if(G.which!=3){i.clearAppointmentsSelection()}}}var B=function(){if(!i.enableBrowserSelection){if(G.preventDefault){G.preventDefault()}}var x=a(document).scrollTop();i.host.focus();a(document).scrollTop(x)};if(K!==undefined&&G.which!=3){i.clickedTD=t;i._raiseEvent("cellClick",{cell:t});var n=i.rowinfo[K];var D=false;if(n){var s=new Date().getTime();var C=300;if(!i.clickTime){i.clickTime=new Date()}i.focus();if(i._lastSelectedCell&&i._lastSelectedCell.getAttribute("data-selected")=="true"&&t.getAttribute("data-selected")==="true"&&(s-i.clickTime.getTime()<C)){i._raiseEvent("cellDoubleClick",{cell:t});D=true;i._initDialog();i._openDialog();if(G.preventDefault){G.preventDefault()}}}var w=i.table[0].rows;if(t.getAttribute("data-selected")!="true"||G.shiftKey||s-i.clickTime.getTime()>C){if(t.getAttribute("data-time-slot")=="true"){return}if(!G.shiftKey){i.shiftSelectedCell=null}if(G.shiftKey&&i._lastSelectedCell){if(!i.shiftSelectedCell){i.shiftSelectedCell=i._lastSelectedCell}if(t.getAttribute("data-view")===i.shiftSelectedCell.getAttribute("data-view")){F()}i._selectRange(t,i.shiftSelectedCell)}if(!G.shiftKey){F();var u=i._getDateByString(t.getAttribute("data-date"));if(u>=i.min.toDate()&&u<=i.max.toDate()){t.setAttribute("data-selected","true")}else{t.setAttribute("data-selected","false")}}a('[data-key="'+K+'"]').removeClass(i.toTP("jqx-scheduler-selected-appointment"));i.selectedAppointment=null;var u=i._getDateByString(t.getAttribute("data-date"));if(u>=i.min.toDate()&&u<=i.max.toDate()){i._lastSelectedCell=t;i.focusedCell=t}i._updateCellsSelection(t);if(i.openedMonthCellPopup){i.openedMonthCellPopup.remove()}}i.clickTime=new Date();if(G.stopPropagation){G.stopPropagation()}}};this.addHandler(this.pinnedtable,d,function(n){var m=j(n);if(m!=undefined){return m}});this.addHandler(this.table,d,function(n){var m=j(n);if(m!=undefined){return m}})},moveAppointment:function(l,d,h,g,k){var i=this;var j=g.getAttribute("data-end-date");if(l){if(i.editRecurrenceDialog.jqxWindow("isOpen")){return}clearInterval(i._verticalIntervalDragVelocity);clearInterval(i._horizontalIntervalDragVelocity);clearInterval(i._intervalDrag);clearInterval(i._horizontalIntervalDrag);var e=l.duration();var c=l.duration().days()>=1||l.allDay;var f=function(s){if(!k){var m=i._views[i._view].type;var p=i._views[i._view];var q=d;l.from=q;if(m==="dayView"||m==="weekView"){if(!c&&!j){l.to=q.add(e);l.allDay=false}else{if(!c&&j){l.to=a.jqx.scheduler.utilities.getEndOfDay(q);l.allDay=true}else{if(c&&j){l.to=q.add(e)}else{if(c&&!j){var o=30;var r=p.timeRuler&&p.timeRuler.scale;switch(r){case"sixtyMinutes":case"hour":o=60;break;case"fifteenMinutes":case"quarterHour":o=15;break;case"tenMinutes":o=10;break;case"fiveMinutes":o=5;break}l.to=q.addMinutes(o);l.allDay=false}}}}}else{if(m==="monthView"){l.to=q.add(e)}else{if(m==="timelineDayView"||m==="timelineWeekView"||m==="timelineMonthView"){l.to=q.add(e)}}}}i._saveChangesAfterDragOrResize(s,l,g,k);if(h!=null){l.resourceId=h}i.table.find(".jqx-icon-arrow-down").hide();if(l.allDay||c){i._renderrows()}else{var t=i.getViewStart();var n=a.jqx.scheduler.utilities.getEndOfDay(i.getViewEnd());i._prepareAppointmentsInView(t,n);i._renderAppointments(t,n)}i._raiseEvent("appointmentChange",{appointment:l.boundAppointment});i.changedAppointments[l.id]={type:"Update",appointment:l.boundAppointment};i._ensureAppointmentVisible(i.selectedJQXAppointment)};if(l.isRecurrentAppointment()){f(false)}else{f(null)}}},getAppointmentProperty:function(e,c){var f=this;var d=null;if(this.appointmentsByKey[e]){d=this.appointmentsByKey[e].jqxAppointment}if(!d){return}return d[c]},setAppointmentProperty:function(f,c,h){var g=this;var d=null;if(this.appointmentsByKey[f]){d=this.appointmentsByKey[f].jqxAppointment}if(!d){return}d[c]=h;g.changedAppointments[f]={type:c,appointment:d.boundAppointment};switch(f){case"draggable":case"resizable":break;case"background":case"color":case"borderColor":case"status":case"tooltip":case"subject":case"location":case"description":case"style":var i=g.getViewStart();var e=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(i,e);g._renderAppointments(i,e);break;case"hidden":case"timeZone":if(d.isAllDayAppointment()){g._renderrows()}else{var i=g.getViewStart();var e=a.jqx.scheduler.utilities.getEndOfDay(g.getViewEnd());g._prepareAppointmentsInView(i,e);g._renderAppointments(i,e)}break;default:g._renderrows()}},deleteAppointment:function(c){if(this.appointmentsByKey[c]){this._deleteAppointment(this.appointmentsByKey[c].jqxAppointment)}},_deleteAppointment:function(c){var h=this;if(c.rootAppointment){if(!c.isException()){if(c.rootAppointment!=null){c.rootAppointment.exceptions.push(h.editAppointment);c.rootAppointment.recurrenceException.push(h.editAppointment.occurrenceFrom)}else{c.exceptions.push(h.editAppointment);c.recurrenceException.push(h.editAppointment.occurrenceFrom)}}else{var g=c.rootAppointment?c.rootAppointment.exceptions:c.exceptions;for(var f=0;f<g.length;f++){if(g[f].occurrenceFrom.equals(h.editAppointment.occurrenceFrom)){g[f]=c;break}}}c.hidden=true;h._renderrows();return}h._raiseEvent("appointmentDelete",{appointment:c.boundAppointment});var e=c.id;delete h.appointmentsByKey[e];var d=-1;for(var f=0;f<h.appointments.length;f++){if(h.appointments[f]==c.boundAppointment||h.appointments[f].id==c.boundAppointment.id){d=f;break}}if(d!=-1){h.appointments.splice(d,1)}d=-1;for(var f=0;f<h.uiappointments.length;f++){if(h.uiappointments[f]==c||h.uiappointments[f].id==c.id){d=f;break}}if(d!=-1){h.uiappointments.splice(d,1)}if(h.selectedJQXAppointment==c){h.clearAppointmentsSelection();if(h.uiappointments[d+1]){h.selectAppointment(h.uiappointments[d+1].id)}else{if(h.uiappointments[d-1]){h.selectAppointment(h.uiappointments[d-1].id)}else{if(h.uiappointments[0]){h.selectAppointment(h.uiappointments[0].id)}}}}h.changedAppointments[e]={type:"Delete",appointment:c.boundAppointment};h._renderrows()},addAppointment:function(n){var h=this;if(!n.scheduler){n.scheduler=this}if(!n.duration){if(!n.from&&!n.to){var g=n;var e={};var f=["from","to","id","style","description","location","subject","background","color","borderColor","recurrencePattern","recurrenceException","draggable","resizable","tooltip","hidden","allDay","timeZone","ownerId","resourceId"];for(var u in h.appointmentDataFields){var c=h.appointmentDataFields[u];var p=g[c];if(u=="from"||u=="to"){p=new a.jqx.date(p)}if(u=="style"){if(p){var k=h.getAppointmentColors(p);e.color=k.color;e.background=k.background;e.borderColor=k.border}}if(u=="recurrencePattern"){if(p){p=new a.jqx.scheduler.recurrencePattern(p);p.timeZone=g.timeZone||h.timeZone}}if(u=="recurrenceException"){var r=new Array();if(p){if(p.indexOf("EXDATE:")>=0){p=p.substring(p.indexOf("EXDATE:")+7)}var l=new Array();if(p.indexOf(",")>=0){l=p.split(",")}else{l.push(p)}for(var q=0;q<l.length;q++){var o=l[q];if(o.indexOf(";")>=0){var i=o.split(";")[1];o=o.split(";")[0];if(i.toLowerCase().indexOf("display")>=0&&i.toLowerCase().indexOf("none")){e.hidden=true}}try{var s=a.jqx.scheduler.utilities.untilStringToDate(o);if(s!="Invalid Date"){if(e.timeZone){s=new a.jqx.date(s,e.timeZone)}else{if(h.timeZone){s=s.toTimeZone(h.timeZone)}else{s=new a.jqx.date(s)}}}}catch(t){var s=new a.jqx.date(o,h.timeZone)}r.push(s)}}p=r}e[u]=p}for(var m in f){var u=f[m];if(e[u]==undefined){var p="";if(u=="originalData"){continue}if(u=="ownerId"){p=null}if(u=="timeZone"){p=null}if(u=="recurrencePattern"){p=null}if(u=="recurrenceException"){p=null}if(u=="allDay"){p=false}if(u=="draggable"){p=true}if(u=="resizable"){p=true}if(u=="hidden"){p=false}if(u=="resourceId"){p=null}if(u=="from"){p=new a.jqx.date()}if(u=="to"){p=new a.jqx.date().addHours(1)}e[u]=p}}e.originalData=g;var n=new a.jqx.scheduler.appointment(e);if(e.timeZone){n.from=n.from.toTimeZone(e.timeZone);n.to=n.to.toTimeZone(e.timeZone)}if(h.timeZone){if(!e.timeZone){n.timeZone=h.timeZone}n.from=n.from.toTimeZone(h.timeZone);n.to=n.to.toTimeZone(h.timeZone)}else{n.from=n.from.toTimeZone(null);n.to=n.to.toTimeZone(null)}}else{var j=new a.jqx.scheduler.appointment();for(var u in n){j[u]=n[u]}n=j}}var u=h.dataview.generatekey();n.id=u;h.appointmentsByKey[u]=n;h.appointments.push(n);var d={};for(var u in h.appointmentDataFields){var c=h.appointmentDataFields[u];var p=n[u];if(u=="from"||u=="to"){p=p.toDate()}d[c]=p}n.boundAppointment=d;n.jqxAppointment=n;h._raiseEvent("appointmentAdd",{appointment:n.boundAppointment});h.uiappointments.push(n);h.changedAppointments[u]={type:"Add",appointment:n.boundAppointment};if(h.hiddenResources&&h.hiddenResources[n.resourceId]){h.hideAppointmentsByResource(n.resourceId)}else{h._renderrows()}h._selectAppointment(n);h._lastSelectedAppointment=n},initRepeatPanels:function(i,k,d){var j=this;var c=a("<div></div>");k.append(c);var l=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatString+"</div>").appendTo(c);var n=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(c);var m=a("<div></div>").appendTo(n);var s=a("<div></div>");k.append(s);var o=a("<div></div>");s.append(o);var q=function(I,B){var v=a("<div></div>").appendTo(I);var F=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEndString+"</div>").appendTo(v);var E=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(v);var H=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatNeverString+"</span></div>").appendTo(E);H.jqxRadioButton({rtl:j.rtl,groupName:"end"+B,theme:j.theme,width:200,height:25,checked:true});j.editDialogFields[B].repeatEndNever=H;j.editDialogFields[B].repeatEndNeverLabel=F;var A=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(v);var z=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(v);var G=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatAfterString+"</span></div>").appendTo(z);G.jqxRadioButton({rtl:j.rtl,groupName:"end"+B,theme:j.theme,width:60,height:25,checked:false});var C=a("<div style='margin-left: 3px; float:left;'></div>").appendTo(z);C.jqxNumberInput({rtl:j.rtl,decimal:10,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var w=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatOccurrencesString+"</div>").appendTo(z);j.editDialogFields[B].repeatEndAfter=G;j.editDialogFields[B].repeatEndAfterValue=C;j.editDialogFields[B].repeatEndAfterLabel=A;var y=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(v);var x=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(v);var u=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatOnString+"</span></div>").appendTo(x);u.jqxRadioButton({rtl:j.rtl,groupName:"end"+B,theme:j.theme,height:25,checked:false});var D=a("<div style='margin-left: 3px; float:left;'></div>").appendTo(x);D.jqxDateTimeInput({rtl:j.rtl,localization:j._getDateTimeInputLocalization(),firstDayOfWeek:j.schedulerLocalization.firstDay,todayString:j.schedulerLocalization.todayString,clearString:j.schedulerLocalization.clearString,value:d,formatString:j.editDialogDateFormatString,height:25,width:150,theme:j.theme});var t=D.jqxDateTimeInput("getInstance");j.editDialogFields[B].repeatEndOn=u;j.editDialogFields[B].repeatEndOnValue=D;j.editDialogFields[B].repeatEndOnLabel=y;return v};o.detach();j.editDialogFields.repeatEndPanel={};j.editDialogFields.repeatEndPanelContainer=o;q(o,"repeatEndPanel");var r=function(){var A=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var ae=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(A);var az=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(A);var an=a("<div style='float:left;'></div>").appendTo(az);an.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var W=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryDayString+"</div>").appendTo(az);j.editDialogFields.daily={};j.editDialogFields.daily.repeatDayInterval=an;j.editDialogFields.daily.repeatDayLabel=ae;j.editDialogFields.daily.panel=A;A.detach();j.editDialogFields.weekly={};var F=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var ah=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(F);var u=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(F);var au=a("<div style='float:left;'></div>").appendTo(u);au.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var X=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryWeekString+"</div>").appendTo(u);j.editDialogFields.weekly.repeatWeekInterval=au;j.editDialogFields.weekly.repeatWeekIntervalLabel=ah;var G=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatOnString+"</div>").appendTo(F);var aa=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(F);var U=a("<div style='float:left;'></div>").appendTo(aa);j.editDialogFields.weekly.repeatDaysLabel=G;j.editDialogFields.weekly.repeatDays=new Array();for(var ax=0;ax<7;ax++){var Q=j._getDayName(ax,"firstTwoLetters");var C=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+Q+"</span></div>");U.append(C);var Z=ax==1?true:false;C.jqxCheckBox({rtl:j.rtl,height:25,checked:Z,width:50,theme:j.theme});j.editDialogFields.weekly.repeatDays.push(C)}j.editDialogFields.weekly.panel=F;F.detach();j.editDialogFields.monthly={};var V=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var aw=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(V);var N=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(V);var B=a("<div style='float:left;'></div>").appendTo(N);B.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var aj=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryMonthString+"</div>").appendTo(N);j.editDialogFields.monthly.repeatMonth=B;j.editDialogFields.monthly.repeatMonthLabel=aw;var ao=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatOnString+"</div>").appendTo(V);var I=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(V);var y=a("<div style='float:left;'></div>").appendTo(I);var am=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'>"+j.schedulerLocalization.editDialogRepeatEveryMonthDayString+"</span></div>").appendTo(y);am.jqxRadioButton({rtl:j.rtl,groupName:"month",height:25,width:60,checked:true,theme:j.theme});var ap=a("<div style='float:left;'></div>").appendTo(y);ap.jqxNumberInput({rtl:j.rtl,decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});j.editDialogFields.monthly.repeatMonthDay=ap;j.editDialogFields.monthly.repeatMonthDayBool=am;j.editDialogFields.monthly.repeatMonthDayLabel=ao;var P=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(V);var ak=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(V);var ab=a("<div style='float:left;'></div>").appendTo(ak);var H=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'></span></div>").appendTo(ab);H.jqxRadioButton({groupName:"month",height:25,width:25,checked:false,theme:j.theme});var M=a("<div style='float:left;'></div>").appendTo(ab);var R=new Array();R.push(j.schedulerLocalization.editDialogRepeatFirstString);R.push(j.schedulerLocalization.editDialogRepeatSecondString);R.push(j.schedulerLocalization.editDialogRepeatThirdString);R.push(j.schedulerLocalization.editDialogRepeatFourthString);R.push(j.schedulerLocalization.editDialogRepeatLastString);M.jqxDropDownList({dropDownWidth:150,selectedIndex:0,source:R,autoDropDownHeight:true,height:25,width:"auto",theme:j.theme});var T=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(ab);var ad=new Array();for(var ax=0;ax<7;ax++){var Q=j._getDayName(ax);ad.push(Q)}T.jqxDropDownList({rtl:j.rtl,dropDownWidth:150,autoDropDownHeight:true,selectedIndex:1,source:ad,height:25,width:"auto",theme:j.theme});j.editDialogFields.monthly.repeatDayOfWeekBool=H;j.editDialogFields.monthly.repeatDayOfWeek=T;j.editDialogFields.monthly.repeatDayOfWeekLabel=P;j.editDialogFields.monthly.repeatDayOfWeekType=M;j.editDialogFields.monthly.panel=V;V.detach();j.editDialogFields.yearly={};var ar=a("<div style='visibility: hidden;'></div>").appendTo(a(document.body));var S=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatEveryString+"</div>").appendTo(ar);var al=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ar);var ac=a("<div style='float:left;'></div>").appendTo(al);ac.jqxNumberInput({decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});var E=a("<div style='float: left; margin-left: 5px; line-height:25px;'>"+j.schedulerLocalization.editDialogRepeatEveryYearString+"</div>").appendTo(al);j.editDialogFields.yearly.repeatYear=ac;j.editDialogFields.yearly.repeatYearLabel=S;var O=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogRepeatOnString+"</div>").appendTo(ar);var ai=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ar);var Y=a("<div style='float:left;'></div>").appendTo(ai);var ag=a("<div style='position:relative; top: 6px; float:left;'></span></div>").appendTo(Y);ag.jqxRadioButton({rtl:j.rtl,groupName:"year",height:25,width:25,checked:true,theme:j.theme});j.editDialogFields.yearly.repeatYearBool=ag;j.editDialogFields.yearly.repeatYearBoolLabel=O;var w=a("<div style='float:left;'></div>").appendTo(Y);var aq=new Array();for(var ax=0;ax<12;ax++){var ay=j.schedulerLocalization.months.names[ax];aq.push(ay)}w.jqxDropDownList({selectedIndex:0,height:25,dropDownWidth:150,width:"auto",source:aq,theme:j.theme});j.editDialogFields.yearly.repeatYearMonth=w;var z=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(Y);z.jqxNumberInput({decimal:1,min:1,inputMode:"simple",height:25,width:50,spinButtons:true,decimalDigits:0,theme:j.theme});j.editDialogFields.yearly.repeatYearDay=z;var af=a("<div class='jqx-scheduler-edit-dialog-label'></div>").appendTo(ar);var t=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ar);var at=a("<div style='float:left;'></div>").appendTo(t);var D=a("<div style='position:relative; top: 6px; float:left;'><span style='margin-left:2px;'></span></div>").appendTo(at);D.jqxRadioButton({rtl:j.rtl,groupName:"year",height:25,width:25,checked:false,theme:j.theme});var av=a("<div style='float:left;'></div>").appendTo(at);j.editDialogFields.yearly.repeatDayOfWeekBool=D;j.editDialogFields.yearly.repeatDayOfWeekType=av;j.editDialogFields.yearly.repeatDayOfWeekLabel=af;var L=new Array();L.push(j.schedulerLocalization.editDialogRepeatFirstString);L.push(j.schedulerLocalization.editDialogRepeatSecondString);L.push(j.schedulerLocalization.editDialogRepeatThirdString);L.push(j.schedulerLocalization.editDialogRepeatFourthString);L.push(j.schedulerLocalization.editDialogRepeatLastString);av.jqxDropDownList({dropDownWidth:150,selectedIndex:0,source:L,autoDropDownHeight:true,height:25,width:"auto",theme:j.theme});var J=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(at);j.editDialogFields.yearly.repeatDayOfWeek=J;var v=new Array();for(var ax=0;ax<7;ax++){var Q=j._getDayName(ax);v.push(Q)}J.jqxDropDownList({rtl:j.rtl,dropDownWidth:150,selectedIndex:1,autoDropDownHeight:true,source:v,height:25,width:"auto",theme:j.theme});var aq=new Array();var K=a("<div style='line-height:25px; height: 25px; margin-left: 5px; float:left;'>"+j.schedulerLocalization.editDialogRepeatOfString+"</div>").appendTo(at);var x=a("<div style='margin-left: 5px; float:left;'></div>").appendTo(at);for(var ax=0;ax<12;ax++){var ay=j.schedulerLocalization.months.names[ax];aq.push(ay)}j.editDialogFields.yearly.repeatDayOfWeekMonth=x;x.jqxDropDownList({rtl:j.rtl,dropDownWidth:150,selectedIndex:0,source:aq,height:25,width:"auto",theme:j.theme});j.editDialogFields.yearly.panel=ar;ar.detach()};if(j.editAppointment&&j.editAppointment.rootAppointment){r()}else{r()}var h=a("<div></div>");k.append(h);var g=a("<div class='jqx-scheduler-edit-dialog-label'>"+j.schedulerLocalization.editDialogExceptionsString+"</div>").appendTo(h);var f=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(h);var e=a("<div style='position:relative; top: 6px;'>"+j.schedulerLocalization.editDialogResetExceptionsString+"</div>").appendTo(f);e.jqxCheckBox({height:25,width:25,theme:j.theme});h.hide();j.editDialogFields.resetExceptions=e;j.editDialogFields.resetExceptionsLabel=g;j.editDialogFields.resetExceptionsContainer=h;var p=new Array();p.push(j.schedulerLocalization.editDialogRepeatNeverString);p.push(j.schedulerLocalization.editDialogRepeatDailyString);p.push(j.schedulerLocalization.editDialogRepeatWeeklyString);p.push(j.schedulerLocalization.editDialogRepeatMonthlyString);p.push(j.schedulerLocalization.editDialogRepeatYearlyString);m.jqxDropDownList({rtl:j.rtl,width:"100%",height:25,autoDropDownHeight:true,theme:j.theme,source:p,selectedIndex:0});j.editDialogFields.repeat=m;j.editDialogFields.repeatLabel=l;j.editDialogFields.repeatContainer=c;j.editDialogFields.repeatPanel=s;this.addHandler(m,"change",function(v){var u=v.args.item.index;var t=function(){s.children().detach();switch(u){case 0:break;case 1:j.editDialogFields.daily.panel.css("visibility","visible");s.append(j.editDialogFields.daily.panel);break;case 2:j.editDialogFields.weekly.panel.css("visibility","visible");s.append(j.editDialogFields.weekly.panel);break;case 3:j.editDialogFields.monthly.panel.css("visibility","visible");s.append(j.editDialogFields.monthly.panel);break;case 4:j.editDialogFields.yearly.panel.css("visibility","visible");s.append(j.editDialogFields.yearly.panel);break}s.append(o);if(u==0){j.editDialogFields.repeatEndPanelContainer.hide()}else{j.editDialogFields.repeatEndPanelContainer.show()}if(!j.isTouchDevice()){i.jqxWindow({height:150});i.jqxWindow({height:k[0].scrollHeight+40})}}()})},_initDialog:function(c,d){var o=this;var l=null;if(c&&c.isRecurrentAppointment()&&!o.editRecurrenceDialog.jqxWindow("isOpen")){var n=o.host.coord();var q=n.top+o.host.height()/2-o.editRecurrenceDialog.height()/2;var h=n.left+o.host.width()/2-o.editRecurrenceDialog.width()/2;o.editRecurrenceDialog.find("button:first").focus();setTimeout(function(){o.editRecurrenceDialog.find("button:first").focus()},25);o.editRecurrenceDialog.jqxWindow("move",h,q);o.editRecurrenceDialog.jqxWindow("open");o.editSeries=function(i){if(i){o._initDialog(c.rootAppointment);o._openDialog()}else{o._initDialog(c);o._openDialog()}};o.overlay.show();o.overlay.width(o.host.width());o.overlay.height(o.host.height());var n=o.host.coord();o.overlay.offset(n);if(!o.editDialog){o._initDialog()}return false}o.editAppointment=c;if(!c){l=o.getSelection();if(!l){o.focus();o.focusedCell.setAttribute("data-selected","true");o._lastSelectedCell=o.focusedCell;o._updateCellsSelection(o.focusedCell);l=o.getSelection()}}if(l||c){var e=l?l.from:c.from;var j=l?l.to:c.to;var p=o.getSelectedCells();if(p.length>0){var g=p[p.length-1].getAttribute("data-end-date");if(g){j=a.jqx.scheduler.utilities.getEndOfDay(j)}}o._editStart=e;o._editEnd=j}if(o.editDialogFields&&o.editDialogFields.resourceContainer&&o._resources.length>0){var f=new Array();for(var k=0;k<o._resources.length;k++){f.push(o._resources[k])}var s=true;if(f.length>10){s=false}o.editDialogFields.resource.jqxDropDownList({source:f,selectedIndex:0,autoDropDownHeight:s});if(!c){o.editDialogFields.resource.val(l.resourceId)}}if(o.editDialogFields&&o.editDialogFields.repeatContainer){if(c&&c.rootAppointment){o.editDialogFields.repeatContainer.hide();o.editDialogFields.repeatPanel.hide()}else{o.editDialogFields.repeatContainer.show();o.editDialogFields.repeatPanel.show()}}if(o.editDialog==null){o.editDialog=null;var r=c==null?o.schedulerLocalization.editDialogCreateTitleString:o.schedulerLocalization.editDialogTitleString;var m=a("<div><div>"+r+"</div><div id='dialog"+this.element.id+"'></div></div>");a(m).jqxWindow({rtl:o.rtl,autoFocus:false,autoOpen:false,animationType:"none",theme:o.theme,width:530,maxHeight:800,minHeight:110,resizable:false,initContent:function(){o.editDialogFields={};if(e==null&&j==null&&o._editStart&&o._editEnd){e=o._editStart;j=o._editEnd}m.jqxWindow("setTitle",r);var I=a(m.children()[1]);var B=a("<div></div>");I.append(B);var D=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogSubjectString+"</div>").appendTo(B);var ae=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(B);var V=a("<input/>").appendTo(ae);V.jqxInput({rtl:o.rtl,width:"100%",height:25,theme:o.theme});o.editDialogFields.subject=V;o.editDialogFields.subjectLabel=D;o.editDialogFields.subjectContainer=B;var Q=a("<div></div>");I.append(Q);var A=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogLocationString+"</div>").appendTo(Q);var aa=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(Q);var U=a("<input/>").appendTo(aa);U.jqxInput({rtl:o.rtl,width:"100%",height:25,theme:o.theme});o.editDialogFields.location=U;o.editDialogFields.locationLabel=A;o.editDialogFields.locationContainer=Q;var M=a("<div></div>");I.append(M);var Y=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogFromString+"</div>").appendTo(M);var aw=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(M);var ar=a("<div></div>").appendTo(aw);var W=null;if(!e){var az=new Date();az.setHours(9,0,0);W=az}else{W=e.toDate()}ar.jqxDateTimeInput({rtl:o.rtl,localization:o._getDateTimeInputLocalization(),firstDayOfWeek:o.schedulerLocalization.firstDay,todayString:o.schedulerLocalization.todayString,clearString:o.schedulerLocalization.clearString,value:W,formatString:o.editDialogDateTimeFormatString,width:"100%",showTimeButton:true,height:25,theme:o.theme});o.editDialogFields.from=ar;o.editDialogFields.fromLabel=Y;o.editDialogFields.fromContainer=M;var aD=a("<div></div>");I.append(aD);var z=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogToString+"</div>").appendTo(aD);var Z=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(aD);var T=a("<div></div>").appendTo(Z);var y=null;if(!j){var az=new Date();az.setHours(10,0,0);y=az}else{y=j.toDate()}T.jqxDateTimeInput({rtl:o.rtl,localization:o._getDateTimeInputLocalization(),firstDayOfWeek:o.schedulerLocalization.firstDay,todayString:o.schedulerLocalization.todayString,clearString:o.schedulerLocalization.clearString,value:y,formatString:o.editDialogDateTimeFormatString,width:"100%",showTimeButton:true,height:25,theme:o.theme});o.editDialogFields.to=T;o.editDialogFields.toLabel=z;o.editDialogFields.toContainer=aD;o._changeFromUser=true;o.addHandler(ar,"change",function(aI){if(!o._changeFromUser){return}var aG=aI.args;var aL=aI.args.oldValue;var aK=T.val("date");var aF=new a.jqx.date(aK)-new a.jqx.date(aL);if(aF>0){var aH=aF*10000;var aJ=a.jqx.timeSpan(aH);var i=new a.jqx.date(aI.args.newValue).add(aJ);T.val(i.toDate())}});o.addHandler(T,"change",function(aF){if(!o._changeFromUser){return}var i=aF.args;var aH=aF.args.oldValue;var aG=T.val("date");if(ar.val("date")>=aG){T.val(aH)}});var u=a("<div></div>");I.append(u);var S=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogAllDayString+"</div>").appendTo(u);var at=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(u);var aj=a("<div style='position:relative; top: 6px;'></div>").appendTo(at);aj.jqxCheckBox({rtl:o.rtl,height:25,width:25,theme:o.theme});o.editDialogFields.allDay=aj;o.editDialogFields.allDayLabel=S;o.editDialogFields.allDayContainer=u;o.addHandler(u,"change",function(i){if(i.args.checked){T.jqxDateTimeInput({showTimeButton:false,formatString:o.editDialogDateFormatString});ar.jqxDateTimeInput({showTimeButton:false,formatString:o.editDialogDateFormatString})}else{T.jqxDateTimeInput({showTimeButton:true,formatString:o.editDialogDateTimeFormatString});ar.jqxDateTimeInput({showTimeButton:true,formatString:o.editDialogDateTimeFormatString})}});if(a.jqx.scheduler.utilities.getStartOfDay(e).equals(e)&&a.jqx.scheduler.utilities.getEndOfDay(j).equals(j)){o.editDialogFields.allDay.val(true)}if(o._views[o._view].type.indexOf("month")>=0||(e&&e.equals(j))||(j&&j.equals(a.jqx.scheduler.utilities.getEndOfDay(j)))){o.editDialogFields.allDay.val(true)}var x=a("<div></div>");I.append(x);var X=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogTimeZoneString+"</div>").appendTo(x);var au=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(x);var ap=a("<div></div>").appendTo(au);var v=new Array();v.push({displayName:o.schedulerLocalization.editDialogSelectTimeZoneString,id:null});v=v.concat(o.timeZones);for(var ax=0;ax<v.length;ax++){var av=v[ax];var H=av.displayName.indexOf(")");if(H>=0){var ag=av.displayName.substring(2+H)}else{var ag=av.displayName}av.searchName=ag}ap.jqxDropDownList({rtl:o.rtl,placeHolder:o.schedulerLocalization.editDialogSelectTimeZoneString,width:"100%",height:25,theme:o.theme,searchMember:"searchName",source:v,displayMember:"displayName",valueMember:"id"});o.editDialogFields.timeZone=ap;o.editDialogFields.timeZoneLabel=X;o.editDialogFields.timeZoneContainer=x;o.initRepeatPanels(m,I,j.toDate());if(o.editDialogFields&&o.editDialogFields.repeatContainer){if(o.editAppointment&&o.editAppointment.rootAppointment){o.editDialogFields.repeatContainer.hide();o.editDialogFields.repeatPanel.hide()}else{o.editDialogFields.repeatContainer.show();o.editDialogFields.repeatPanel.show()}}var L=a("<div></div>");I.append(L);var aB=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogDescriptionString+"</div>").appendTo(L);var P=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(L);var E=a("<textarea resizable='off' style='position:relative; top: 3px;'></textarea>").appendTo(P);E.jqxInput({rtl:o.rtl,height:40,width:"100%",theme:o.theme});o.editDialogFields.description=E;o.editDialogFields.descriptionLabel=aB;o.editDialogFields.descriptionContainer=L;var ad=a("<div></div>");I.append(ad);var aE=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogColorString+"</div>").appendTo(ad);var R=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ad);var G=a("<div></div>").appendTo(R);var J=function(aF){if(aF==-1){return""}var i=o.colors[aF];var aG="";var aG="";aG+="<div style='margin-top: 1px; float: left; border-radius: 3px; width: 96%; height: 20px; border: none; background:"+i+"; margin-left: 2%;'></div>";return aG};var ao=function(aH,aF){if(aF<0){aH.css("top","4px");aH.css("position","relative");return aH[0].outerHTML}var i=o.colors[aF];var aG="";aG+="<div style='margin-top: 2px; float: left; border-radius: 3px; width: 96%; height: 20px; border: none; background:"+i+"; margin-left: 2%;'></div>";return aG};G.jqxDropDownList({rtl:o.rtl,selectedIndex:-1,placeHolder:o.schedulerLocalization.editDialogColorPlaceHolderString,selectionRenderer:ao,renderer:J,source:o.colors,height:25,width:"100%",theme:o.theme});o.editDialogFields.color=G;o.editDialogFields.colorLabel=aE;o.editDialogFields.colorContainer=ad;var ai=a("<div></div>");I.append(ai);var aA=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogStatusString+"</div>").appendTo(ai);var O=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ai);var C=a("<div></div>").appendTo(O);C.jqxDropDownList({rtl:o.rtl,selectedIndex:2,autoDropDownHeight:true,source:o.schedulerLocalization.editDialogStatuses,height:25,width:"100%",theme:o.theme});o.editDialogFields.status=C;o.editDialogFields.statusLabel=aA;o.editDialogFields.statusContainer=ai;var ah=a("<div></div>");I.append(ah);var N=a("<div class='jqx-scheduler-edit-dialog-label'>"+o.schedulerLocalization.editDialogResourceIdString+"</div>").appendTo(ah);var an=a("<div class='jqx-scheduler-edit-dialog-field'></div>").appendTo(ah);var ac=a("<div></div>").appendTo(an);var F=new Array();for(var ax=0;ax<o._resources.length;ax++){F.push(o._resources[ax])}var w=true;if(F.length>10){w=false}ac.jqxDropDownList({rtl:o.rtl,source:F,selectedIndex:0,autoDropDownHeight:w,height:25,width:"100%",theme:o.theme});o.editDialogFields.resource=ac;o.editDialogFields.resourceLabel=N;o.editDialogFields.resourceContainer=ah;if(F.length==0){ah.hide()}if(!c&&l){o.editDialogFields.resource.val(l.resourceId)}var af=a("<div></div>");I.append(af);var am=a("<div style='width:100%;' class='jqx-scheduler-edit-dialog-field'></div>").appendTo(af);var aq=a("<button style='margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogCancelString+"</button>").appendTo(am);var ak=a("<button style='margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogDeleteString+"</button>").appendTo(am);var al=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatDeleteSeriesString+"</button>").appendTo(am);var K=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatDeleteString+"</button>").appendTo(am);var ab=a("<button style='margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogSaveString+"</button>").appendTo(am);var aC=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatSaveSeriesString+"</button>").appendTo(am);var t=a("<button style='display: none; margin-left: 5px; float:right;'>"+o.schedulerLocalization.editDialogRepeatSaveString+"</button>").appendTo(am);var ay=25;if(o.isTouchDevice()){ay=null}ak.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});al.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});K.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});ab.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});aq.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});aC.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});t.jqxButton({rtl:o.rtl,theme:o.theme,height:ay});aC.hide();t.hide();o.editDialogFields.saveOccurrenceButton=t;o.editDialogFields.saveSeriesButton=aC;o.editDialogFields.saveButton=ab;o.editDialogFields.cancelButton=aq;o.editDialogFields.deleteButton=ak;o.editDialogFields.deleteSeriesButton=al;o.editDialogFields.deleteExceptionsButton=K;o.editDialogFields.buttons=am;o.addHandler(ak,"click",function(){m.jqxWindow("close");o.overlay.hide();o._deleteAppointment(o.editAppointment)});o.addHandler(aq,"click",function(){m.jqxWindow("close");o.overlay.hide()});o.addHandler(t,"click",function(){if(!o.editAppointment.isException()){if(o.editAppointment.rootAppointment!=null){o.editAppointment.rootAppointment.exceptions.push(o.editAppointment);o.editAppointment.rootAppointment.recurrenceException.push(o.editAppointment.occurrenceFrom)}else{o.editAppointment.exceptions.push(o.editAppointment);o.editAppointment.recurrenceException.push(o.editAppointment.occurrenceFrom)}}else{var aH=o.editAppointment.rootAppointment?o.editAppointment.rootAppointment.exceptions:o.editAppointment.exceptions;for(var aG=0;aG<aH.length;aG++){if(aH[aG].occurrenceFrom.equals(o.editAppointment.occurrenceFrom)){aH[aG]=o.editAppointment;break}}}var aF=o._setAppointmentPropertiesFromDialog(o.editAppointment,"occurrence");if(!aF){return}o.changedAppointments[o.editAppointment.id]={type:"Update",appointment:o.editAppointment.boundAppointment};o._raiseEvent("appointmentChange",{appointment:o.editAppointment.boundAppointment});o._renderrows();m.jqxWindow("close");o.overlay.hide()});o.addHandler(aC,"click",function(){var aF=o.editAppointment;if(aF.rootAppointment){aF=aF.rootAppointment}var i=o._setAppointmentPropertiesFromDialog(aF,"series");if(!i){return}o.changedAppointments[aF.id]={type:"Update",appointment:aF.boundAppointment};o._raiseEvent("appointmentChange",{appointment:aF.boundAppointment});o._renderrows();m.jqxWindow("close");o.overlay.hide()});o.addHandler(ab,"click",function(){var i=true;if(o.editAppointment==null){var aF=new a.jqx.scheduler.appointment();i=o._setAppointmentPropertiesFromDialog(aF,"none");if(i){o.addAppointment(aF)}}else{if(o.editAppointment.rootAppointment){t.trigger("click");i=false}else{if(o.editAppointment.isRecurrentAppointment()){aC.trigger("click");i=false}else{i=o._setAppointmentPropertiesFromDialog(o.editAppointment,"none");if(i){o.changedAppointments[o.editAppointment.id]={type:"Update",appointment:o.editAppointment?o.editAppointment.boundAppointment:null};o._raiseEvent("appointmentChange",{appointment:o.editAppointment.boundAppointment});o._renderrows()}}}}if(i){m.jqxWindow("close");o.overlay.hide()}});o.addHandler(m,"close",function(i){o.overlay.hide();o.focus();if(o.editDialogClose){o.editDialogClose(m,o.editDialogFields,o.editAppointment?o.editAppointment.boundAppointment:null)}o._raiseEvent("editDialogClose",{dialog:m,fields:o.editDialogFields,appointment:o.editAppointment?o.editAppointment.boundAppointment:null})});if(o.editDialogCreate){o.editDialogCreate(m,o.editDialogFields,o.editAppointment)}o._raiseEvent("editDialogCreate",{dialog:m,fields:o.editDialogFields,appointment:o.editAppointment?o.editAppointment.boundAppointment:null});m.jqxWindow({height:I[0].scrollHeight+40})}});o.editDialog=m}if(!o.dialogOpenings){o.dialogOpenings=0}o.removeHandler(o.editDialog,"open");o.addHandler(o.editDialog,"open",function(u){if(o.editDialogOpen&&o.editDialogFields){var i=o.editDialogOpen(m,o.editDialogFields,o.editAppointment?o.editAppointment.boundAppointment:null);if(i==true){return}}o._raiseEvent("editDialogOpen",{dialog:m,fields:o.editDialogFields,appointment:o.editAppointment?o.editAppointment.boundAppointment:null});var t=function(){setTimeout(function(){if(!d){o.editDialogFields.subject.focus();o.editDialogFields.subject.select()}else{o.editDialogFields.deleteButton.focus()}},1)};if(0==o.dialogOpenings&&!c){o.dialogOpenings++;if(!o.isTouchDevice()){o.editDialog.jqxWindow({height:150});o.editDialog.jqxWindow({height:a(o.editDialog.children())[1].scrollHeight+40})}t();return}if(o.editDialogFields){o.editDialogFields.subject.val("");t();o.editDialogFields.resetExceptions.val(false);o.editDialogFields.description.val("");if(!c){o.editDialogFields.deleteButton.hide()}if(c){o.dialogOpenings++;o.editDialogFields.deleteButton.show();o.editDialogFields.subject.val(c.subject);o.editDialogFields.description.val(c.description);o.editDialogFields.timeZone.val(c.timeZone);if(o.colors.indexOf(c.borderColor)>=0){o.editDialogFields.color.val(c.borderColor)}else{o.editDialogFields.color.jqxDropDownList("clearSelection")}o.editDialogFields.allDay.val(c.allDay);o.editDialogFields.resource.val(c.resourceId);o.editDialogFields.status.val(c.status);if(c.timeZone){c.from=c.from.toTimeZone(c.timeZone);c.to=c.to.toTimeZone(c.timeZone)}e=c.from;j=c.to;if(a.jqx.scheduler.utilities.getStartOfDay(e).equals(e)&&a.jqx.scheduler.utilities.getEndOfDay(j).equals(j)){o.editDialogFields.allDay.val(true)}o._setAppointmentPropertiesToDialog(c,e,j,l?l.resourceId:null)}else{o.editDialogFields.saveButton.show();o._setAppointmentPropertiesToDialog(null,e,j,l?l.resourceId:null)}if(e&&j){o._changeFromUser=false;o.editDialogFields.from.val(e.toDate());o.editDialogFields.to.val(j.toDate());o._changeFromUser=true}if(!o.isTouchDevice()){o.editDialog.jqxWindow({height:150});o.editDialog.jqxWindow({height:a(o.editDialog.children())[1].scrollHeight+40})}}});o.removeHandler(o.editDialog,"keydown");o.addHandler(o.editDialog,"keydown",function(t){if(o.editDialogKeyDown){var i=o.editDialogKeyDown(m,o.editDialogFields,o.editAppointment,t);if(i!=undefined){return i}}if(t.keyCode==13){if(a(document.activeElement).ischildof(o.editDialog)){if(document.activeElement.nodeName.toLowerCase()=="button"){return true}if(c){if(c.isException()||c.rootAppointment){o.editDialogFields.saveOccurrenceButton.trigger("click")}else{if(c.isRecurrentAppointment()){o.editDialogFields.saveSeriesButton.trigger("click")}else{o.editDialogFields.saveButton.trigger("click")}}}else{o.editDialogFields.saveButton.trigger("click")}}}else{if(t.keyCode==27){o.editDialogFields.cancelButton.trigger("click")}}})},openMenu:function(e,c){var d=this;if(!d.menu){d._initMenu()}if(d.contextMenu&&d.menu){if(!d.selectedAppointment){d.menu.jqxMenu("hideItem","editAppointment")}else{d.menu.jqxMenu("showItem","editAppointment")}if(arguments.length<2){if(d.selectedAppointment){var f=d.selectedAppointment.coord();e=f.left;c=f.top}else{if(d.focusedCell){var f=a(d.focusedCell).coord()}}e=f.left;c=f.top}d.menu.jqxMenu("open",e,c);d._hasOpenedMenu=true}},closeMenu:function(){var c=this;if(c.contextMenu&&c.menu){setTimeout(function(){c.menu.jqxMenu("close")})}},closeDialog:function(){that.editDialog.jqxWindow("close")},openDialog:function(d,e){var f=this;if(f.selectedJQXAppointment){var c=f._initDialog(f.selectedJQXAppointment);if(c!==false){f._openDialog(d,e)}}else{if(f.getSelection()==null){f.focus();f.focusedCell.setAttribute("data-selected","true");f._lastSelectedCell=f.focusedCell;f._updateCellsSelection(f.focusedCell)}f._initDialog();f._openDialog(d,e)}},_openDialog:function(c,e){var f=this;var j=f.host.coord();f.overlay.show();f.overlay.css("z-index",9999999);f.overlay.width(f.host.width());f.overlay.height(f.host.height());f.overlay.offset(j);var i=f.isTouchDevice();if(i){f.editDialog.jqxWindow("move",j.left,j.top);f.editDialog.jqxWindow({draggable:false,maxWidth:f.host.width(),maxHeight:f.host.height()});f.editDialog.jqxWindow({width:f.host.width(),height:f.host.height()});f.editDialog.jqxWindow("open")}else{if(c!=undefined&&e!=undefined){f.editDialog.jqxWindow("move",c,e);f.editDialog.jqxWindow("open")}else{var d=f.editDialog.height();if(d<400){d=400}var h=j.top+f.host.height()/2-d/2;var g=j.left+f.host.width()/2-f.editDialog.width()/2;f.editDialog.jqxWindow("move",g,h);f.editDialog.jqxWindow("open")}}setTimeout(function(){f.overlay.css("z-index",999)},50)},_setAppointmentPropertiesFromDialog:function(d,e){var f=this;var c=function(m){var v=f._views[f._view].type;var s=f._views[f._view];var x=f.editDialogFields.from.val("date");var h=f.editDialogFields.to.val("date");if(x>h){f.editDialogFields.from.jqxDateTimeInput("focus");return false}if(x==h){if(v.indexOf("month")>=0){return true}return false}m.resourceId=f.editDialogFields.resource.val();m.description=f.editDialogFields.description.val();m.allDay=f.editDialogFields.allDay.val();m.status=f.editDialogFields.status.val();m.location=f.editDialogFields.location.val();m.timeZone=f.editDialogFields.timeZone.val();if(m.timeZone==""&&f.timeZone!=""){m.timeZone=f.timeZone}m.from=new a.jqx.date(x,m.timeZone);m.to=new a.jqx.date(h,m.timeZone);if(f.timeZone){m.from=m.from.toTimeZone(f.timeZone);m.to=m.to.toTimeZone(f.timeZone)}else{m.from=m.from.toTimeZone(null);m.to=m.to.toTimeZone(null)}if(m.allDay){m.from=a.jqx.scheduler.utilities.getStartOfDay(m.from);m.to=a.jqx.scheduler.utilities.getEndOfDay(m.to)}if(f.editDialogFields.color.val()){var t=f.getAppointmentColors(f.editDialogFields.color.val());m.color=t.color;m.background=t.background;m.borderColor=t.border}m.subject=f.editDialogFields.subject.val();var g=f.editDialogFields.repeat.jqxDropDownList("selectedIndex");var q=new a.jqx.scheduler.recurrencePattern();var j=f.editDialogFields.repeatEndPanel;q.timeZone=f.timeZone;q.from=m.from.clone();if(e=="occurrence"){if(m.rootAppointment){q.from=m.rootAppointment.from.clone()}}if(f.editDialogFields.resetExceptions.val()){m.exceptions=new Array();m.recurrenceException=new Array()}if(j.repeatEndNever.val()){q.count=1000;q.to=new a.jqx.date(9999,12,31)}else{if(j.repeatEndAfter.val()){q.count=j.repeatEndAfterValue.val();q.to=new a.jqx.date(9999,12,31)}else{if(j.repeatEndOn.val()){q.count=1000;var h=new a.jqx.date(j.repeatEndOnValue.jqxDateTimeInput("getDate"),f.timeZone);q.to=h}}}switch(g){case 0:default:m.clearRecurrence();break;case 1:var k=f.editDialogFields.daily;var C=k.repeatDayInterval.val();q.interval=C;q.freq="daily";break;case 2:var u=f.editDialogFields.weekly;var C=u.repeatWeekInterval.val();var p=[{Sunday:0},{Monday:1},{Tuesday:2},{Wednesday:3},{Thursday:4},{Friday:5},{Saturday:6}];var o=u.repeatDays;var n=new Array();q.weekDays={};for(var z=0;z<7;z++){var y=o[z].val();if(y){if(z==0){n.push(6)}else{n.push(z-1)}a.extend(q.weekDays,p[z])}}q.freq="weekly";q.byweekday=n;q.interval=C;break;case 3:var A=f.editDialogFields.monthly;var C=A.repeatMonth.val();if(A.repeatMonthDayBool.val()){q.day=A.repeatMonthDay.val();q.bymonthday=new Array();q.bymonthday.push(q.day)}else{var w=A.repeatDayOfWeek.jqxDropDownList("selectedIndex");var r=new Array();if(w==0){w=6}else{w--}var l=A.repeatDayOfWeekType.jqxDropDownList("selectedIndex");var B="";switch(l){case 0:B=1;break;case 1:B=2;break;case 2:B=3;break;case 3:B=4;break;case 4:B=-1;break}r.push([w,B]);q.bynweekday=r}q.freq="monthly";q.interval=C;break;case 4:var D=f.editDialogFields.yearly;var C=D.repeatYear.val();if(D.repeatYearBool.val()){q.day=D.repeatYearDay.val();q.month=D.repeatYearMonth.jqxDropDownList("selectedIndex");q.bymonth=new Array();q.bymonth.push(1+q.month);q.byyearday=new Array();q.byyearday.push(q.day)}else{q.month=D.repeatDayOfWeekMonth.jqxDropDownList("selectedIndex");q.bymonth=new Array();q.bymonth.push(1+q.month);var w=D.repeatDayOfWeek.jqxDropDownList("selectedIndex");var r=new Array();if(w==0){w=6}else{w--}var l=D.repeatDayOfWeekType.jqxDropDownList("selectedIndex");var B="";switch(l){case 0:B=1;break;case 1:B=2;break;case 2:B=3;break;case 3:B=4;break;case 4:B=-1;break}r.push([w,B]);q.bynweekday=r}q.freq="yearly";q.interval=C;break}if(m.rootAppointment){m.rootAppointment.recurrencePattern=q}else{if(g>0){m.recurrencePattern=q}}return true}(d);return c},_setAppointmentPropertiesToDialog:function(f,i,e,h){var g=this;var d=function(){var p=g.editDialogFields.repeatEndPanel;p.repeatEndNever.jqxRadioButton({checked:true});p.repeatEndAfterValue.val(1);p.repeatEndOnValue.val(l);var l=e.toDate();if(g.editDialogFields.daily){var j=g.editDialogFields.daily;j.repeatDayInterval.val(1)}if(g.editDialogFields.weekly){var o=g.editDialogFields.weekly;for(var m=0;m<o.repeatDays.length;m++){if(m==1){o.repeatDays[m].jqxCheckBox({checked:true})}else{o.repeatDays[m].jqxCheckBox({checked:false})}}o.repeatWeekInterval.val(1)}if(g.editDialogFields.monthly){var n=g.editDialogFields.monthly;n.repeatDayOfWeek.jqxDropDownList("selectIndex",1);n.repeatDayOfWeekBool.jqxRadioButton({checked:false});n.repeatDayOfWeekType.jqxDropDownList("selectIndex",0);n.repeatMonthDayBool.jqxRadioButton({checked:true});n.repeatMonthDay.val(1);n.repeatMonth.val(1)}if(g.editDialogFields.yearly){var k=g.editDialogFields.yearly;k.repeatDayOfWeekMonth.jqxDropDownList("selectIndex",0);k.repeatDayOfWeekBool.jqxRadioButton({checked:false});k.repeatDayOfWeekType.jqxDropDownList("selectIndex",0);k.repeatDayOfWeek.jqxDropDownList("selectIndex",1);k.repeatYear.val(1);k.repeatYearMonth.jqxDropDownList("selectIndex",0);k.repeatYearDay.val(1);k.repeatYearBool.val(true)}};d();if(f&&f.isRecurrentAppointment()){if(!f.rootAppointment){g.editDialogFields.resetExceptionsContainer.show()}else{g.editDialogFields.resetExceptionsContainer.hide()}}else{if(f){g.editDialogFields.resetExceptionsContainer.hide();g.editDialogFields.repeat.jqxDropDownList("selectIndex",0)}}if(!f){g.editDialogFields.timeZone.jqxDropDownList("clearSelection");if(!h){g.editDialogFields.resource.jqxDropDownList("selectIndex",0)}else{g.editDialogFields.resource.val(h)}g.editDialogFields.allDay.val(false);if(g._views[g._view].type.indexOf("month")>=0||(i&&i.equals(e))||(e&&e.equals(a.jqx.scheduler.utilities.getEndOfDay(e)))){g.editDialogFields.allDay.val(true)}g.editDialogFields.color.jqxDropDownList("clearSelection");g.editDialogFields.description.val("");g.editDialogFields.subject.val("");g.editDialogFields.repeat.jqxDropDownList("selectIndex",0);return}var c=function(j){var r=j.recurrencePattern;if(j.rootAppointment){var r=j.rootAppointment.recurrencePattern}if(r==null){return}var k=r.freq;var p=0;if(k=="daily"){p=1}if(k=="weekly"){p=2}if(k=="monthly"){p=3}if(k=="yearly"){p=4}var n=g.editDialogFields.repeatEndPanel;if(r.count!=1000){n.repeatEndAfter.jqxRadioButton({checked:true});n.repeatEndAfterValue.val(r.count)}else{if(r.to.year()!=9999){n.repeatEndOn.jqxRadioButton({checked:true});n.repeatEndOnValue.val(r.to.toDate())}else{n.repeatEndNever.jqxRadioButton({checked:true})}}g.editDialogFields.repeat.jqxDropDownList("selectIndex",p);switch(p){case 1:var l=r.interval;var q=g.editDialogFields.daily;q.repeatDayInterval.val(l);break;case 2:var l=r.interval;var z=g.editDialogFields.weekly;z.repeatWeekInterval.val(l);var y=r.byweekday;for(var o=0;o<7;o++){var w=z.repeatDays[o];w.val(false)}for(var o=0;o<y.length;o++){var w=y[o];if(w==6){z.repeatDays[0].val(true)}else{z.repeatDays[w+1].val(true)}}break;case 3:var u=g.editDialogFields.monthly;u.repeatMonth.val(r.interval);if(r.bymonthday.length>0){u.repeatMonthDayBool.jqxRadioButton({checked:true});u.repeatMonthDay.val(r.day)}else{u.repeatDayOfWeekBool.jqxRadioButton({checked:true});var s=r.bynweekday;var m=s[0][0];m++;if(m==7){m=0}u.repeatDayOfWeek.jqxDropDownList("selectIndex",m);var x=s[0][1];var v="";switch(x){case 1:v=0;break;case 2:v=1;break;case 3:v=2;break;case 4:v=3;break;case -1:v=4;break}u.repeatDayOfWeekType.jqxDropDownList("selectIndex",v)}break;case 4:var t=g.editDialogFields.yearly;if(r.byyearday&&r.byyearday.length>0){t.repeatYearDay.val(r.byyearday[0]);t.repeatYearBool.val(true)}if(r.bymonth&&r.bymonth.length>0){t.repeatYearMonth.val(r.bymonth[0]);t.repeatYearBool.val(true)}if(!r.byyearday||(r.byyearday&&r.byyearday.length==0)){t.repeatDayOfWeekMonth.val(r.bymonth[0]);t.repeatDayOfWeekBool.jqxRadioButton({checked:true});var s=r.bynweekday;var m=s[0][0];m++;if(m==7){m=0}t.repeatDayOfWeek.jqxDropDownList("selectIndex",m);var x=s[0][1];var v="";switch(x){case 1:v=0;break;case 2:v=1;break;case 3:v=2;break;case 4:v=3;break;case -1:v=4;break}t.repeatDayOfWeekType.jqxDropDownList("selectIndex",v)}break}};c(f)},_updateCellsSelection:function(){var g=this;var m=g.rows;var c=0;var d=0;if(c>0&&g.rtl){c=0;d=1}for(var f=0;f<m.length;f++){var l=m[f].cells;for(var e=c;e<l.length-d;e++){var k=l[e];if(k.getAttribute("data-selected")=="true"){var h=k.jqxClassName||k.className;if(h.indexOf("jqx-fill-state-pressed")>=0){if(k!=g.focusedCell){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"")}else{if(k==g.focusedCell&&g.focused){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");if(!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}}}if(k.className!=h){k.className=h}k.jqxClassName=h;continue}h=h.replace(" jqx-fill-state-pressed","");h=h.replace(" jqx-fill-state-pressed-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");h=h.replace(" jqx-grid-cell-selected","");h=h.replace(" jqx-grid-cell-selected-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-selected","");h=h.replace(" jqx-scheduler-cell-selected-"+g.theme,"");h=h+=" "+g.toTP("jqx-fill-state-pressed jqx-grid-cell-selected jqx-scheduler-cell-selected");if(k==g.focusedCell&&g.focused&&!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}if(k.className!=h){k.className=h}k.jqxClassName=h}else{var h=k.jqxClassName||k.className;if(h.indexOf("jqx-fill-state-pressed")==-1){if(k!=g.focusedCell){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"")}else{if(k==g.focusedCell&&g.focused){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");if(!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}}}if(k.className!=h){k.className=h}k.jqxClassName=h;continue}else{if(k==g.focusedCell&&g.focused){h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");if(!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}if(k.className!=h){k.className=h}k.jqxClassName=h}}h=h.replace(" jqx-fill-state-pressed","");h=h.replace(" jqx-fill-state-pressed-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-focus","");h=h.replace(" jqx-scheduler-cell-focus-"+g.theme,"");h=h.replace(" jqx-grid-cell-selected","");h=h.replace(" jqx-grid-cell-selected-"+g.theme,"");h=h.replace(" jqx-scheduler-cell-selected","");h=h.replace(" jqx-scheduler-cell-selected-"+g.theme,"");if(k==g.focusedCell&&g.focused&&!g.selectedAppointment){h=h+=" "+g.toTP("jqx-scheduler-cell-focus")}if(k.className!=h){k.className=h}k.jqxClassName=h;k.removeAttribute("data-selected")}}}},_getuikey:function(d,g){var f=null;var e=this.table[0].rows;f=a(e[d]).attr("data-key");if(a(e[d]).attr("data-role")){var c=a(e[d]);if(g=="next"){while(c){c=c.next();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}else{if(g=="prev"){while(c){c=c.prev();if(c){var h=c.attr("data-role");if(!h){f=c.attr("data-key");return f}}}}}return null}return f},getRows:function(){var j=this._views[this._view].type;var l=this._views[this._view];var e="halfHour";if(l.timeRuler&&l.timeRuler.scale){e=l.timeRuler.scale}var k=24;var c=this.showAllDayRow;if(l.timeRuler&&(j==="dayView"||j==="weekView")){var d=0;var g=23;if(l.timeRuler.scaleStartHour!=undefined){var d=parseInt(l.timeRuler.scaleStartHour)}if(l.timeRuler.scaleEndHour!=undefined){var g=parseInt(l.timeRuler.scaleEndHour)}if(d<0){d=0}if(g<0){g=23}if(d>23){d=0}if(g>23){g=23}k=g-d+1;if(l.timeRuler.showAllDayRow!=undefined){c=l.timeRuler.showAllDayRow}}var m=new Array();var h=0;switch(j){case"dayView":case"weekView":default:var h=k*2;if(e==="hour"||e==="sixtyMinutes"){var h=k}else{if(e==="quarterHour"||e==="fifteenMinutes"){var h=k*4}else{if(e==="tenMinutes"){var h=k*6}else{if(e==="fiveMinutes"){var h=k*12}}}}if(c){h++}break;case"monthView":var h=6;break;case"timelineDayView":case"timelineWeekView":case"timelineMonthView":var h=1;break;case"agendaView":var h=this.appointments?this.appointments.length:0;break}for(var f=0;f<h;f++){m.push({uid:f})}return m},getKey:function(c){var d=this.getRows();if(d){return d[c].uid}else{return -1}},_getkey:function(e){if(this._loading){throw new Error("jqxScheduler: "+this.loadingErrorMessage);return false}var f=null;var d=function(){var l=this.table[0].rows;var k=null;var n=0;if(this.pageable){n-=this.dataview.pagenum*this.dataview.pagesize}if(this.groups.length>0){var h=0;for(var j=0;j<l.length;j++){var o=a(l[j]);var m=o.children()[0].getAttribute("colspan");if(m>0){continue}if(h===n+e){k=o.attr("data-key");return k}h++}return k}if(this.rowDetails){var h=0;for(var j=0;j<l.length;j++){if(h===e+n){k=a(l[j]).attr("data-key");return k}if(j%2==1){h++}}}else{k=a(l[n+e]).attr("data-key")}return k};f=d.call(this);if(f==null){if(this.pageable){var c=Math.floor(e/this.dataview.pagesize);if(this.dataview.pagenum!=c){var g=this.getRows()[e];if(g&&g.uid!=null){return g.uid}else{if(isNaN(c)){return null}this.goToPage(c);f=d.call(this)}}}}return f},_getDateByString:function(k){var f=k.split(" ");var m=f[0].split("-");var i=f[1].split(":");var h=parseInt(m[0],10);var g=parseInt(m[1],10)-1;var j=parseInt(m[2],10);var e=parseInt(i[0],10);var d=parseInt(i[1],10);var l=parseInt(i[2],10);var c=new Date(h,g,j,e,d,l);if(h<1970){c.setFullYear(h,g,j)}return c},_getCellByDate:function(c,e,d){var n=this.table[0].rows;if(e===undefined){e=false}if(d===undefined){if(this.focusedCell){d=this.focusedCell.getAttribute("data-view")}}for(var h=0;h<n.length;h++){var m=n[h];if(m.getAttribute("data-group-row")){continue}for(var g=0;g<m.cells.length;g++){var l=m.cells[g];if(l.getAttribute("rowspan")!=null){continue}if(l.getAttribute("data-view")!==d){continue}if(l.getAttribute("data-time-slot")){continue}if(e&&l.getAttribute("data-end-date")!=null){continue}var k=l.getAttribute("data-date");var f=this._getDateByString(k);if(f.valueOf()==c.valueOf()){return l}}}},_handleKey:function(t){if(this._loading){return true}var u=t.shiftKey;var n=t.ctrlKey||t.metaKey;var j=this;var x=t.charCode?t.charCode:t.keyCode?t.keyCode:0;if(j._hasOpenedMenu){if(x==27){j.closeMenu()}else{j.menu.jqxMenu("focus")}return true}if(x===13||(j.selectedAppointment&&x==46)){if(j.editRecurrenceDialog&&j.editRecurrenceDialog.jqxWindow("isOpen")){return true}if(j.editDialog&&j.editDialog.jqxWindow("isOpen")){return true}if(!j.selectedAppointment){j._initDialog();j._openDialog()}else{var d=j.getJQXAppointmentByElement(j.selectedAppointment);if(!d.readOnly){var p=j._initDialog(d,"delete");if(p!==false){j._openDialog()}}}}if(x===27){if(j.dragOrResize){j.table.find(".jqx-icon-arrow-down").hide();var g=j.getViewStart();var f=a.jqx.scheduler.utilities.getEndOfDay(j.getViewEnd());j._prepareAppointmentsInView(g,f);j._renderAppointments(g,f);j._removeFeedbackAndStopResize();return false}}var s=function(A){var C=j.selectedAppointment;var z=j.getJQXAppointmentByElement(C);var y=z.elements[0].cells[0].cell;var M=z.elements[z.elements.length-1].cells[z.elements[z.elements.length-1].cells.length-1].cell;var F=j.rows[j.rows.length-1].cells[j.rows[j.rows.length-1].cells.length-1];if(u||(!u&&!n&&(A=="down"||A=="right"))){y=M}var I=j._views[j._view].type;var H=j._views[j._view];var J=y;switch(A){case"left":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);if(G>0&&!u){J=E.cells[G-1]}else{if(I=="monthView"&&!u){var B=E.aboveRow;if(B){J=B.cells[B.cells.length-1]}}}break;case"right":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);if(G<E.cells.length-1){J=E.cells[G+1]}else{if(I=="monthView"){var Q=E.belowRow;if(Q){J=Q.cells[0]}}}if(I=="monthView"&&!u&&n&&M==F){J=y}break;case"up":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);var B=E.aboveRow;if(B&&!u){J=B.cells[G]}break;case"down":var E=j.rowByCell[y.getAttribute("data-key")];var G=E.indexOf(y);var Q=E.belowRow;if(Q){J=Q.cells[G]}break}var O=J.getAttribute("data-date");var N=new a.jqx.date(O,j.timeZone);var I=a(J).attr("data-view");var K=j._resources[parseInt(I)-1];if(u){var I=j._views[j._view].type;var H=j._views[j._view];var D=false;if(I==="dayView"||I==="weekView"){if(y.getAttribute("data-end-date")){if(A=="left"&&(z.elements[0].cells.length>1||j.rtl)){if(!j.rtl){z.to=a.jqx.scheduler.utilities.getEndOfDay(N.addDays(-1))}else{z.to=a.jqx.scheduler.utilities.getEndOfDay(N.addDays(1))}D=true}else{if(A=="right"){if(!j.rtl||(j.rtl&&z.elements[0].cells.length>1)){z.to=a.jqx.scheduler.utilities.getEndOfDay(N)}D=true}}}else{if(A=="up"&&z.elements[0].cells.length>1){z.to=N;D=true}else{if(A=="down"){z.to=N.addMinutes(j.getMinutesPerScale());D=true}}}}else{if(I.indexOf("month")>=0){if(A=="left"&&(z.elements[0].cells.length>1||z.elements.length>1)){z.to=a.jqx.scheduler.utilities.getEndOfDay(N.addDays(-1));D=true}else{if(A=="right"){z.to=a.jqx.scheduler.utilities.getEndOfDay(N);D=true}}}else{if((!j.rtl&&A=="left"&&z.elements[0].cells.length>1)||(j.rtl&&A=="right"&&z.elements[0].cells.length>1)){z.to=N;if(j.rtl){z.to=N.addMinutes(j.getMinutesPerScale())}D=true}else{if((!j.rtl&&A=="right")||(j.rtl&&A=="left")){z.to=N.addMinutes(j.getMinutesPerScale());if(j.rtl){z.to=z.to.addMinutes(j.getMinutesPerScale())}D=true}}}}if(D){j.moveAppointment(z,N,K,J,true)}}else{if(n){j.moveAppointment(z,N,K,J)}else{j.clearAppointmentsSelection();var L=true;if(A=="down"){L=false}j.selectCell(N,L,I);j.ensureVisible(J)}}if(j.selectedAppointment){j.selectedAppointment.removeClass(j.toTP("jqx-scheduler-selected-appointment"));var P=j.selectedAppointment.attr("data-key");a('[data-key="'+P+'"]').addClass(j.toTP("jqx-scheduler-selected-appointment"));j.clearSelection()}};if(t.altKey&&j._resourcesElements&&j._resources&&j._resources.length>0){var h=function(y){var z=j._resourcesElements.bottom[y];if(z.attr("data-toggle")=="on"){j.hideAppointmentsByResource(y)}else{j.showAppointmentsByResource(y)}};var k=x>=49&&x<=58?k=x-48:-1;if(k>=1){a.each(j._resources,function(y,z){if(y==k-1){h(z);return false}});return false}}if(t.ctrlKey){if(!j.selectedAppointment){if(x==37){j.toolbarLeftButton.trigger("click");j.ensureVisible(j.focusedCell);return false}else{if(x==39){j.toolbarRightButton.trigger("click");j.ensureVisible(j.focusedCell);return false}}}if(x==49){j._setView(0);return false}else{if(x==50){j._setView(1);return false}else{if(x==51){j._setView(2);return false}else{if(x==52){j._setView(3);return false}else{if(x==53){j._setView(4);return false}else{if(x==54){j._setView(5);return false}else{if(x==68){j.dateTimeInput.jqxDateTimeInput("open");return false}else{if(x==77){j.openMenu();return false}}}}}}}}}if(x==9){if(!t.shiftKey){if(j.selectedAppointment){j.clearSelection();var e=j.selectedAppointment;var d=j.getJQXAppointmentByElement(e);var i=j.tabKeyAppointments.indexOf(d);if(i<j.tabKeyAppointments.length-1){d=j.tabKeyAppointments[i+1];j._selectAppointment(d);j._lastSelectedAppointment=d;j._ensureAppointmentVisible(d);return false}else{j.clearAppointmentsSelection();return true}}else{var d=j.tabKeyAppointments[0];if(d){j._selectAppointment(d);j._lastSelectedAppointment=d;j._ensureAppointmentVisible(d);return false}else{if(!j.focusedCell){j._updateFocusedCell();j.ensureVisible(j.focusedCell);return false}else{if(j.focusedCell){if(j.focusedCell.className.indexOf("-focus")==-1){j._updateCellsSelection();j.ensureVisible(j.focusedCell);return false}}}}}}else{if(j.selectedAppointment){j.clearSelection();var e=j.selectedAppointment;var d=j.getJQXAppointmentByElement(e);if(d){var i=j.tabKeyAppointments.indexOf(d);if(i>0){d=j.tabKeyAppointments[i-1];j._selectAppointment(d);j._lastSelectedAppointment=d;j._ensureAppointmentVisible(d);return false}else{j.clearAppointmentsSelection();if(!j.focusedCell){j._updateFocusedCell();j.ensureVisible(j.focusedCell);return false}else{if(j.focusedCell){if(j.focusedCell.className.indexOf("-focus")==-1){j._updateCellsSelection();j.ensureVisible(j.focusedCell);return false}}}return true}}}else{if(!j.focusedCell){j._updateFocusedCell();j.ensureVisible(j.focusedCell)}else{if(j.focusedCell){if(j.focusedCell.className.indexOf("-focus")==-1){j._updateCellsSelection();j.ensureVisible(j.focusedCell);return false}}}}}}if(j.selectedAppointment){if(x==37){s("left")}else{if(x==38){s("up")}else{if(x==40){s("down")}else{if(x==39){s("right")}}}}if(x>=37&&x<=40){return false}return}var l=this._lastSelectedCell;if(!l){return}if(!a(this._lastSelectedCell).parent()[0]){this._lastSelectedCell=this.rows[0].cells[0];l=this._lastSelectedCell}var o=this.table[0].rows;var q=this._views[this._view].type;var m=this._views[this._view];var w="halfHour";if(m.timeRuler&&m.timeRuler.scale){w=m.timeRuler.scale}var r=function(K,G){var C=30;switch(w){case"sixtyMinutes":case"hour":C=60;break;case"thirdyMinutes":case"halfHour":C=30;break;case"fifteenMinutes":case"quarterHour":C=15;break;case"tenMinutes":C=10;break;case"fiveMinutes":C=5;break}var I=K.getAttribute("data-date");var H=function(U,N,P){if(U&&U.getAttribute("rowspan")==null&&U.getAttribute("data-time-slot")==null){if(P<j.min||P>j.max){return}var S=j.table[0].rows;var R=j._lastSelectedCell;j._lastSelectedCell=U;if(t.shiftKey&&j._lastSelectedCell){if(!j.shiftSelectedCell){j.shiftSelectedCell=l}}else{if(!t.shiftKey){j.shiftSelectedCell=null}}if(!j.shiftSelectedCell){for(var Q=0;Q<S.length;Q++){var T=S[Q];if(T.getAttribute("data-group-row")){continue}for(var O=0;O<T.cells.length;O++){var N=T.cells[O];N.removeAttribute("data-selected","false")}}U.setAttribute("data-selected","true");j.focusedCell=U}else{if(U.getAttribute("data-end-date")&&j.shiftSelectedCell.getAttribute("data-end-date")){j.focusedCell=U;j._selectRange(U,j.shiftSelectedCell)}else{if(!U.getAttribute("data-end-date")&&!j.shiftSelectedCell.getAttribute("data-end-date")){j.focusedCell=U;j._selectRange(U,j.shiftSelectedCell)}else{j.focusedCell=R;j._lastSelectedCell=R}}}j.ensureVisible(j.focusedCell)}};var z=new a.jqx.date(I,j.timeZone);var A=K.getAttribute("data-view");switch(G){case"left":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);if(F>0){var D=M.cells[F-1];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone)}H(D,K,J);break;case"right":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);if(F<M.cells.length-1){var D=M.cells[F+1];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone)}H(D,K,J);break;case"up":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var y=M.aboveRow;if(y){var D=y.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J)}break;case"down":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var E=M.belowRow;if(E){var D=E.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J)}break;case"home":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var B=j.rows[0];var D=B.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J);break;case"end":var M=j.rowByCell[K.getAttribute("data-key")];var F=M.indexOf(K);var L=j.rows[j.rows.length-1];var D=L.cells[F];var J=new a.jqx.date(D.getAttribute("data-date"),j.timeZone);H(D,K,J);break}j._updateCellsSelection()};var v=function(){r(l,"home")};var c=function(){r(l,"end")};if(x==36||(n&&x==38)){v();return false}else{if(x==35||(n&&x==40)){c();return false}else{if(x==37){if(j.selectedAppointment){s(l,"left")}else{r(l,"left")}return false}else{if(x==38){if(j.selectedAppointment){s(l,"up")}else{r(l,"up")}return false}else{if(x==40){if(j.selectedAppointment){s(l,"down")}else{r(l,"down")}return false}else{if(x==39){if(j.selectedAppointment){s(l,"right")}else{r(l,"right")}return false}}}}}}},getSelectedCells:function(){var h=this;var k=h.table[0].rows;var g=k.length;var c=new Array();for(var f=0;f<g;f++){var e=k[f].cells;for(var d=0;d<e.length;d++){if(e[d].getAttribute("data-selected")){c.push(e[d])}}}return c.sort(function(i,j){return h._sortByDate(i,j)})},getSelection:function(){var f=this;var c=f.getSelectedCells();if(c.length==0){return null}var i=c[0].getAttribute("data-date");var h=c[c.length-1].getAttribute("data-date");var e=f.getMinutesPerScale();var d=f._views[f._view].type;if(d.toLowerCase().indexOf("month")>=0){e=0}if(c[0].getAttribute("data-end-date")){e=0}h=new a.jqx.date(h,f.timeZone).addMinutes(e);var d=parseInt(c[0].getAttribute("data-view"))-1;var g=f._resources[d];if(f._views[f._view].type.toLowerCase().indexOf("month")>=0){return{from:new a.jqx.date(i,f.timeZone),to:a.jqx.scheduler.utilities.getEndOfDay(h),resourceId:g}}return{from:new a.jqx.date(i,f.timeZone),to:h,resourceId:g}},clearSelection:function(){var g=this;var h=g.table[0].rows;var f=h.length;for(var e=0;e<f;e++){var d=h[e].cells;for(var c=0;c<d.length;c++){d[c].removeAttribute("data-selected")}}g._updateCellsSelection()},_getvirtualcolumnsindexes:function(d,l,h,k,c){if(this.rtl){d=this.hScrollInstance.max-d}var e=0;var i=-1;var f=h+k;if(this.autorowheight){return{start:0,end:h+k}}if(!c){for(var g=0;g<h+k;g++){var m=g;if(!this.columns.records[g].hidden){e+=this.columns.records[g].width}if(e>=d&&i==-1){i=g}if(e>l+d){f=g;break}}}f++;if(f>h+k){f=h+k}if(i==-1){i=0}return{start:i,end:f}},_renderhorizontalscroll:function(){var l=this;var h=l.hScrollInstance;var j=h.value;if(l.hScrollBar[0].style.visibility==="hidden"){h.value=0;j=0}var e=parseInt(j);if(l.table==null){return}var c=function(t){if(t.parentNode&&t.parentNode.nodeName!="#document-fragment"){return true}return false};var k=l._getvirtualcolumnsindexes(e,l._hostWidth,0,l.columns.records.length,false);var n=k.start;var q=k.end;var g=l.table[0].rows;for(var s=0;s<n;s++){var r=s;var d=l.columns.records[r].element[0];if(c(d)){d.parentNode.removeChild(d)}}for(var s=q;s<l.columns.records.length;s++){var r=s;var d=l.columns.records[r].element[0];if(c(d)){d.parentNode.removeChild(d)}}for(var s=n;s<q;s++){var r=s;d=l.columns.records[r].element[0];if(!c(d)){l.columnsrow[0].appendChild(d)}}var p=l.columnsrow;var i=0;var o=l.columns.records.length-i;var f=l.columns.records;var m=l.source.records.length==0;if(l.rtl){if(l.hScrollBar.css("visibility")!="hidden"){e=h.max-e}}l.table[0].style.left=-e+"px";if(l.pinnedtable[0].style.display=="block"){l.pinnedtable[0].style.left=-e+"px"}p[0].style.marginLeft=-e+"px"},_getDayName:function(c,e){if(c>=7){c-=7}if(!e){e=this.dayNameFormat;if(this.isTouchDevice()){e=this.touchDayNameFormat}}var d=this.schedulerLocalization.days.names[c];switch(e){case"full":d=this.schedulerLocalization.days.names[c];break;case"abbr":d=this.schedulerLocalization.days.namesAbbr[c];break;case"shortest":d=this.schedulerLocalization.days.namesShort[c];break;case"firstTwoLetters":d=d.substring(0,2);break;case"firstLetter":d=d.substring(0,1);break}return d},_initializeColumns:function(){if(this._views.length===0){this._views.push({type:"dayView"})}var o=this._views[this._view].type;var m=this._views[this._view];if(this.columns&&this.columns.records){for(var x=0;x<this.columns.records.length;x++){this._removecolumnhandlers(this.columns.records[x])}}this.columns=new Array();var z=new Array();var k=this;var p=function(F,L){var G="halfHour";if(m.timeRuler&&m.timeRuler.scale){G=m.timeRuler.scale}var O=24;var E=0;var N=23;if(m.timeRuler){if(m.timeRuler.scaleStartHour!=undefined){var E=parseInt(m.timeRuler.scaleStartHour)}if(m.timeRuler.scaleEndHour!=undefined){var N=parseInt(m.timeRuler.scaleEndHour)}if(E<0){E=0}if(N<0){N=23}if(E>23){E=0}if(N>23){N=23}O=N-E+1}var I=60;var M=2;if(G){switch(G){case"sixtyMinutes":case"hour":M=1;break;case"thirdyMinutes":case"halfHour":M=2;break;case"fifteenMinutes":case"quarterHour":M=4;break;case"tenMinutes":M=6;break;case"fiveMinutes":M=12;break}}var Q=new Array();var P="auto";if(m.timeRuler&&m.timeRuler.formatString){P=m.timeRuler.formatString}var D=E;var J=O;var B=F.addHours(D);var j="auto";if(m.columnWidth){j=M*m.columnWidth}else{j=M*80}for(var K=0;K<J;K++){var C=B.toDate();if(P==="auto"){if((C.getHours()==0&&C.getMinutes()==0)||(C.getHours()==12&&C.getMinutes()==0)){var H="hh tt"}else{var H="hh:mm"}}else{if(a.isFunction(P)){var H=P(C)}}if(a.jqx.dataFormat.isDate(C)){C=a.jqx.dataFormat.formatdate(C,H,k.schedulerLocalization)}B=B.addMinutes(I,false);k.columns.push({columnGroup:L,text:C,width:j})}};for(var v=0;v<this.tableColumns;v++){if(this.tableColumns>1){var g=k._resources[v]?k._resources[v]:"Resource"+v;z.push({text:g,name:g})}var u="left";if(this.rtl){u="right"}switch(o){case"dayView":var h=this.getViewStart();if(false===m.showWeekends){if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}if(h.dayOfWeek()===0||h.dayOfWeek()===6){h=h.addDays(1)}}var t="auto";if(m&&m.columnWidth){t=m.columnWidth}var g=k._resources[v]?k._resources[v]:"Resource"+v;this.columns.push({align:u,width:t,columnGroup:g,text:this._getDayName(h.dayOfWeek())});break;case"weekView":case"monthView":for(var x=0;x<7;x++){var w=this.schedulerLocalization.firstDay+x;if(false===m.showWeekends){if(x===0||x===6){continue}}var t="auto";if(m&&m.columnWidth){t=m.columnWidth}var g=k._resources[v]?k._resources[v]:"Resource"+v;this.columns.push({align:o=="weekView"?u:"center",width:t,columnGroup:g,text:this._getDayName(w)})}break;case"timelineDayView":var g=k._resources[v]?k._resources[v]:"Resource"+v;p(k.getViewStart(),g);break;case"timelineWeekView":for(var x=0;x<7;x++){var w=this.schedulerLocalization.firstDay+x;if(false===m.showWeekends){if(x===0||x===6){continue}}var g=k._resources[v]?k._resources[v]:"Resource"+v;z.push({align:k.rtl?"right":"left",parentGroup:g,name:this._getDayName(w)+v,text:this._getDayName(w)});p(k.getViewStart().addDays(x),this._getDayName(w)+v)}break;case"timelineMonthView":var l=k.getViewStart();var y="auto";if(m.timeRuler&&m.timeRuler.formatString){y=m.timeRuler.formatString}for(var x=0;x<41;x++){var w=l.dayOfWeek();if(false===m.showWeekends){if(w===0||w===6){continue}}var t="auto";if(m.columnWidth){t=m.columnWidth}else{t=100}var q=l.toDate();if(y==="auto"){var d="dd";q=l.toDate();if(q.getDate()===1){d="MMM dd"}}else{if(a.isFunction(y)){var d=y(q)}}if(a.jqx.dataFormat.isDate(q)){q=a.jqx.dataFormat.formatdate(q,d,k.schedulerLocalization)}l=l.addDays(1);var g=k._resources[v]?k._resources[v]:"Resource"+v;k.columns.push({columnGroup:g,text:q,width:t})}break;case"agendaView":k.columns.push({text:k.schedulerLocalization.agendaDateColumn});k.columns.push({text:k.schedulerLocalization.agendaTimeColumn});k.columns.push({text:k.schedulerLocalization.agendaAppointmentColumn});break}}if(z.length>0){this.columnGroups=z}var k=this;var r=new a.jqx.dataCollection(this.element);var e=0;this._columns=this.columns;var A="left";var f=new b(k,this);f.visibleindex=e++;f.text="";f.width=k.timeRulerWidth;f.editable=false;f.timeColumn=true;A="left";f.text="";f.hidden=false;f.width=k.timeRulerWidth;var c=false;if(m.timeRuler&&(o==="dayView"||o==="weekView")){f._text=m.timeRuler.text||"";A=m.timeRuler.position||"left";f.hidden=m.timeRuler.hidden||false;f.width=m.timeRuler.width||k.timeRulerWidth;if(m.timeRuler.timeZones){c=true}}else{if(o!=="dayView"&&o!=="weekView"){f.hidden=true}}var n=function(i){var j=new b(k,k);j.visibleindex=e++;j.text="";j.width=k.timeRulerWidth;j.editable=false;j.timeColumn=true;A="left";j.text="";j.hidden=false;j.timeZone=m.timeRuler.timeZones[i].id;j.width=k.timeRulerWidth;if(m.timeRuler&&(o==="dayView"||o==="weekView")){j._text=m.timeRuler.timeZones[x].text||"";j.hidden=m.timeRuler.hidden||false;j.width=m.timeRuler.width||k.timeRulerWidth;r.add(j)}};if(A==="left"&&(o==="dayView"||o==="weekView")){if(m.timeRuler&&m.timeRuler.timeZones){for(var x=0;x<m.timeRuler.timeZones.length;x++){n(x)}}r.add(f)}var s=new Array();a.each(this.columns,function(i){if(k.columns[i]!=undefined){var j=new b(k,this);j.visibleindex=e++;r.add(j)}});if(A==="right"&&(o==="dayView"||o==="weekView")){if(m.timeRuler){for(var x=0;x<m.timeRuler.timeZones.length;x++){n(x)}}r.add(f)}if(this.rtl){r.records.reverse()}this.columns=r},_getColumnsLengthPerView:function(){var c=this._views[this._view].type;var e=this._views[this._view];var d=1;switch(c){case"dayView":d=1;break;case"weekView":if(e.showWeekends!==false){d=7}else{d=5}break;case"monthView":if(e.showWeekends!==false){d=7}else{d=5}break;case"timelineDayView":case"timelineWeekView":case"timelineMonthView":d=this.columns.records.length;break;case"agendaView":d=this.columns.records.length;break}return d},shadeColor:function(c,h){var i=parseInt(c.slice(1),16),d=h<0?0:255,j=h<0?h*-1:h,g=i>>16,e=i>>8&255,k=i&255;return"#"+(16777216+(Math.round((d-g)*j)+g)*65536+(Math.round((d-e)*j)+e)*256+(Math.round((d-k)*j)+k)).toString(16).slice(1)},hexToRgba:function(d,f){var c=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(d);var e=function(){var g=a.jqx.browser.msie&&a.jqx.browser.version<10;if(this.alpha==undefined||g){return"rgb("+this.r+", "+this.g+", "+this.b+")"}if(this.alpha>1){this.alpha=1}else{if(this.alpha<0){this.alpha=0}}return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"};if(f==undefined){return c?{r:parseInt(c[1],16),g:parseInt(c[2],16),b:parseInt(c[3],16),toString:e}:null}if(f>1){f=1}else{if(f<0){f=0}}return c?{r:parseInt(c[1],16),g:parseInt(c[2],16),b:parseInt(c[3],16),alpha:f,toString:e}:null},getAppointmentColors:function(g){var f="";var e="";var d="";f=this.hexToRgba(g,this.appointmentOpacity).toString();e=g;var c=function(i){var h=105;var j=(i.r*0.299)+(i.g*0.587)+(i.b*0.114);var k=(255-j<h)?"Black":"White";return k};d=c(this.hexToRgba(g,0.7));return{background:f,color:d,border:e}},getColors:function(h){if(h==-1){h=0}var d="";var f="";var g="";var j=this.resources?this.resources.colorScheme:null;if(!j){j="scheme01"}var c=new Array();for(var e=0;e<this.colorSchemes.length;e++){if(this.colorSchemes[e].name==j){c=this.colorSchemes[e].colors;break}}while(h>c.length-1){var k=parseInt(j.substring(6));if(k>=27){k=0}c=c.concat(this.colorSchemes[k].colors);k++}d=c[h];d=this.hexToRgba(c[h],0.7).toString();f=c[h];var i=function(m){var l=105;var n=(m.r*0.299)+(m.g*0.587)+(m.b*0.114);var o=(255-n<l)?"Black":"White";return o};g=i(this.hexToRgba(c[h],0.7));return{background:d,color:g,border:f}},_renderrows:function(){var T=this;if(T._loading){return}if(T._updating||T._appupdating){return}if(T.rendering){T.rendering()}var T=this;var aC=T._views[T._view].type;var F=T._views[T._view];var ax=1;var e=T.getViewStart();var aK=a.jqx.scheduler.utilities.getEndOfDay(T.getViewEnd());T._prepareAppointmentsInView(e,aK);if(aC==="weekView"||aC==="dayView"){var ax=T.getMaxAllDayAppointments(T.appointmentsToRender)}var Y=T.tableRows>1?T.tableRows:0;var aI="halfHour";var A=null;var aM;if(F.rowHeight){A=F.rowHeight}if(F&&F.allDayRowHeight){aM=F.allDayRowHeight}if(F.timeRuler&&F.timeRuler.scale){aI=F.timeRuler.scale}var aJ=0;T.table[0].rows=new Array();T.rows=new Array();var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-widget-content");if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}var d=T.columns.records.length;var at=T._getColumnsLengthPerView();var U=a.jqx.browser.msie&&a.jqx.browser.version<8;if(U){T.host.attr("hideFocus","true")}T._lastSelectedCell=null;T.focusedCell=null;var D=new Array();var aA=T.source.records;aA=T.dataview.evaluate(aA);T.dataViewRecords=aA;T.cells=new Array();var D=T.dataViewRecords;T.renderedRecords=T.getRows();var aV=T.tableZIndex;var ag=T.getRows().length;var o=0;var aE=0;if(U){for(var V=0;V<d;V++){var aa=T.columns.records[V];var aH=aa.width;if(aH<aa.minwidth){aH=aa.minwidth}if(aH>aa.maxwidth){aH=aa.maxwidth}var aG=a('<table><tr><td role="gridcell" style="max-width: '+aH+"px; width:"+aH+'px;" class="'+a1+'"></td></tr></table>');a(document.body).append(aG);var aq=aG.find("td");o=1+parseInt(aq.css("padding-left"))+parseInt(aq.css("padding-right"));aG.remove();break}}var J=T.rtl?" "+T.toTP("jqx-grid-table-rtl"):"";var G="<table cellspacing='0' cellpadding='0' class='"+T.toTP("jqx-grid-table")+J+"' id='table"+T.element.id+"'><colgroup>";var aU=0;var a0=d;var aO=2;var al=30;switch(aI){case"sixtyMinutes":case"hour":al=60;aO=1;break;case"thirtyMinutes":case"halfHour":al=30;aO=2;break;case"fifteenMinutes":case"quarterHour":al=15;aO=4;break;case"tenMinutes":al=10;aO=6;break;case"fiveMinutes":al=5;aO=12;break}var aZ=1;if(aC==="timelineDayView"||aC==="timelineWeekView"){d=aO*d;aZ=aO;at=d/T.tableColumns}else{if(aC==="timelineMonthView"){at=d/T.tableColumns}else{if(aC==="monthView"){at=d/T.tableColumns}}}var h=function(i){var c=T.columns.records[i];if(c){return c}while(i>=T.columns.records.length){i-=T.columns.records.length}var c=T.columns.records[i];return c};for(var V=0;V<d;V++){var aa=h(V);if(aa.hidden){aU++;a0--;continue}var aH=aa.width/aZ;if(aH<aa.minwidth){aH=aa.minwidth/aZ}if(aH>aa.maxwidth){aH=aa.maxwidth/aZ}aH-=o;if(aH<0){aH=0}if(U){var N=aH;if(V==aU){N++}G+="<col style='max-width: "+N+"px; width: "+N+"px;'>"}else{G+="<col style='max-width: "+aH+"px; width: "+aH+"px;'>"}aE+=aH}G+="</colgroup>";T._hiddencolumns=false;if(ag===0){var s='<tr role="row">';var y=T.host.height();if(T.pageable){y-=T.pagerHeight;if(T.pagerPosition==="both"){y-=T.pagerHeight}}y-=T.columnsHeight;if(T.showLegend&&T._resources.length>0){y-=T.legendHeight}if(y<25){y=25}if(T.hScrollBar[0].style.visibility!="hidden"){y-=T.hScrollBar.outerHeight()}if(T.height==="auto"||T.height===null||T.autoheight){y=300}var aG='<td colspan="'+T.columns.records.length+'" role="gridcell" style="border: none; min-height: '+y+"px; height: "+y+"px; max-width:"+aE+"px; width:"+aE+"px;";var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}a1+=" "+T.toTP("jqx-center-align");aG+='" class="'+a1+'">';aG+=T.schedulerLocalization.emptyDataString;aG+="</td>";s+=aG;G+=s;T.table[0].style.width=aE+2+"px";aJ=aE}var ar=T.getRows();var e=T.getViewStart();var y=T._hostHeight?T._hostHeight:T.host.height();var aY=0;if(!T.columnGroups){aY+=T.showHeader?T.columnsHeight:0}else{aY+=T.showHeader?T.columnsheader.height():0}if(T.showToolbar){aY+=T.toolbarHeight}if(T.showLegend&&T._resources.length>0){aY+=T.legendHeight}var g=T.showAllDayRow;var n=23;if(F.resourceHeaderRowHeight){n=F.resourcesRowHeight}n+=2;if(F.showAllDayRow!=undefined){g=F.showAllDayRow}var k=T._columnswidth>T._hostWidth;var aj=k?(3+T.scrollBarSize):0;var ae=T.tableRows>1?T.resources.unitsInView:1;if(ae==undefined){ae=T._resources.length}if(T.resources&&T.resources.resourceRowHeight){A=T.resources.resourceRowHeight}if(A==null||A=="auto"){var p=T.rowsHeight;var an=3*p;if(T.isTouchDevice()){p=T.touchRowsHeight;var an=22+p}if(T.tableRows==1){A=y>0?(y-aY):p;if(T.columns.records.length>10){A=y>0?(y-T.scrollBarSize-5-aY):p}}else{A=y>0?(y-aY-n)/(ag):p;if(T.columns.records.length>10){A=y>0?(y-T.scrollBarSize-5-aY-ae*n)/(ae*ag):p}}if(aC==="dayView"||aC==="weekView"){if(g){if(aM==null||aM=="auto"){A=y>0?(y-aY)/(T.tableRows*(ag)):an;aM=A}else{A=y>0?(y-aY-aM-ae*n)/(ae*(ag-1)):p}}}else{if(aC==="monthView"){if(T.hScrollBar[0].style.visibility=="hidden"){aj=0}if(T.tableRows==1){A=y>0?(y-aY-aj)/ag:p}else{A=y>0?(y-aY-n-aj)/(ag):p}}}A=Math.max(p,A);if(!aM){aM=an}aM=Math.max(an,aM);T._allDayRowHeight=aM;T._defaultRowHeight=p;aM=ax*(p-2);aM=Math.max(an,17+aM);T._allDayRowFullHeight=aM;if(F.allDayRowHeight){T._allDayRowHeight=F.allDayRowHeight;aM=ax*(F.allDayRowHeight-2);T._allDayRowFullHeight=aM}}var az=new Array();if(T.resources&&T.resources.colorScheme){for(var am=0;am<T.colorSchemes.length;am++){if(T.colorSchemes[am].name==T.resources.colorScheme){az=T.colorSchemes[am].colors;break}}while(T._resources.length>az.length-1){var aS=parseInt(T.resources.colorScheme.substring(6));if(aS>=27){aS=0}az=az.concat(T.colorSchemes[aS].colors);aS++}}for(var aB=0;aB<T.tableRows;aB++){var ao=0;var Q=0;var f=23;if(F.timeRuler&&F.timeRuler.scaleStartHour!=undefined){var Q=parseInt(F.timeRuler.scaleStartHour)}if(F.timeRuler&&F.timeRuler.scaleEndHour!=undefined){var f=parseInt(F.timeRuler.scaleEndHour)}var z=e;if(false===F.showWeekends){if(z.dayOfWeek()==0||z.dayOfWeek()==6){z=z.addDays(1)}}var ap=new Array();var l=aC!="monthView"&&aC!="timelineDayView"&&aC!="timelineWeekView"&&aC!="timelineMonthView"&&g?1:0;if(T.tableRows>1){var s='<tr data-group-row="true" role="row">';var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}if(!U){a1+=" "+T.toTP("jqx-grid-cell-pinned");X+=' colspan="'+d+'"';var N=0;for(var O=0;O<d;O++){var Z=h(O);var ai=Z.width/aZ;if(ai<Z.minwidth){aH=Z.minwidth/aZ}if(ai>Z.maxwidth){aH=Z.maxwidth/aZ}ai-=o;if(ai<0){ai=0}if(!Z.hidden){N+=ai}}aH=N}else{a1+=" "+T.toTP("jqx-grid-cell-pinned")}var aG='<td style="height:'+n+"px;";if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}if(T._resources.length>0&&T.resources.colorScheme&&T.resources.orientation!="none"){var aL="";var x="";var C="";var K=function(i){var c=105;var j=(i.r*0.299)+(i.g*0.587)+(i.b*0.114);var q=(255-j<c)?"Black":"White";return q};aL=az[aB];aL=T.hexToRgba(az[aB],0.7).toString();C=K(T.hexToRgba(az[aB],0.7));x=az[aB];aG+="background: "+aL+";";aG+="border-color: "+x+";";aG+="color: "+C+";"}aG+='" class="'+a1+'" role="gridcell" '+X+"";var aT=T._resources[aB];aG+=">"+aT;aG+="</td>";s+=aG;G+=s}for(var W=0;W<ag;W++){var aF={};var ak=W;aF.uid=ak;var s='<tr data-key="'+ak+'" role="row">';var ab=0;var v=0;if(ap[0]&&W>l){var al=30;if(aC!="monthView"){switch(aI){case"sixtyMinutes":case"hour":al=60;break;case"thirdyMinutes":case"halfHour":al=30;break;case"fifteenMinutes":case"quarterHour":al=15;break;case"tenMinutes":al=10;break;case"fiveMinutes":al=5;break}for(var R=0;R<d;R++){ap[R]=ap[R].addMinutes(al,false)}}else{for(var R=0;R<d;R++){ap[R]=ap[R].addDays(7,false)}}}var av=0;var ac=1;var ah=0;if(F.showWeekends||F.showWeekends==undefined){ah=(T.columns.records.length)/(7*T.tableColumns);ah*=aO}else{ah=(T.columns.records.length)/(5*T.tableColumns);ah*=aO}var au=0;if(T.rtl){au=1}var aQ=0;for(var V=0;V<d;V++){var P=h(V);if(av>=at){av=0;aQ=0;au=0;if(T.rtl){au=1}ac++}if(!ap[V]){if(!T.rtl){if(aC.toString().indexOf("timelineDayView")>=0){var H=V;ap[V]=z.addHours(Q).addMinutes(H*al,false)}else{if(aC.toString().indexOf("timelineWeekView")>=0){ap[V]=z.addDays(aQ).addHours(Q,false).addMinutes(au*al,false)}else{ap[V]=z.addDays(av).addHours(Q,false)}}if(T.timeZone){ap[V].timeZone=T.timeZone}}else{if(aC.toString().indexOf("timelineDayView")>=0){var H=1+V;ap[V]=z.addHours(1+f).addMinutes(-H*al,false)}else{if(aC.toString().indexOf("timelineWeekView")>=0){if(F.showWeekends||F.showWeekends==undefined){ap[V]=z.addDays(6-aQ).addHours(1+f,false).addMinutes(-au*al,false)}else{ap[V]=z.addDays(4-aQ).addHours(1+f,false).addMinutes(-au*al,false)}}else{if(aC=="dayView"||aC=="monthView"||aC=="weekView"){if(F.showWeekends||F.showWeekends==undefined){ap[V]=z.addDays(6-av).addHours(Q,false)}else{ap[V]=z.addDays(4-av).addHours(Q,false)}}else{ap[V]=z.addDays(at-av-1).addHours(Q,false)}}}if(T.timeZone){ap[V].timeZone=T.timeZone}}}au++;if(au>=ah){au=0;aQ++}if(!P.timeColumn&&(aC==="dayView"||aC==="weekView")){av++}else{if(aC==="monthView"||aC==="timelineMonthView"){av++}else{if(aC=="timelineDayView"||aC=="timelineWeekView"){av++}}}var B=ap[V];var aH=P.width/aZ;if(aH<P.minwidth){aH=P.minwidth/aZ}if(aH>P.maxwidth){aH=P.maxwidth/aZ}aH-=o;if(aH<0){aH=0}var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(P.pinned){a1+=" "+T.toTP("jqx-grid-cell-pinned")}if(T.sortcolumn===P.displayfield){a1+=" "+T.toTP("jqx-grid-cell-sort")}if(T.altRows&&W%2!=0){a1+=" "+T.toTP("jqx-grid-cell-alt")}if(W==0&&g&&(aC==="dayView"||aC==="weekView")){a1+=" "+T.toTP("jqx-grid-cell-alt")}if(B>T.max||B<T.min){a1+=" "+T.toTP("jqx-scheduler-disabled-cell")}if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}var X="";var ak=T.dataview.generatekey();var aD=aB+ac;if(T.resources&&T.resources.orientation=="none"){aD=-1}var aG='<td data-key="'+ak+'" data-view="'+(aD)+'" data-date="'+B.toString()+'" role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px;  height:"+A+"px;";if(W==0&&g&&(aC==="dayView"||aC==="weekView")){var aG='<td  data-key="'+ak+'" data-view="'+(aD)+'" data-end-date="'+a.jqx.scheduler.utilities.getEndOfDay(B).toString()+'" data-date="'+B.clearTime().toString()+'" role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px; height:"+aM+"px;"}if(T.resources&&T._resources.length>0&&T.resources.colorScheme&&T.resources.orientation!=="none"){var aL="";var x="";aL=az[aB+ac-1];if(!(W==0&&g&&(aC==="dayView"||aC==="weekView"))){aL=T.hexToRgba(az[aB+ac-1],0.3).toString()}else{aL=T.shadeColor(az[aB+ac-1],0.3).toString()}if(!(W==0&&g&&(aC==="dayView"||aC==="weekView"))){if(aC.indexOf("month")==-1){if(!P.timeColumn){if(F.showWorkTime!==false){var M=1;var I=5;var aw=8;var m=18;if(F.workTime){var M=F.workTime.fromDayOfWeek?F.workTime.fromDayOfWeek:0;var I=F.workTime.toDayOfWeek?F.workTime.toDayOfWeek:0;var aw=F.workTime.fromHour?F.workTime.fromHour:8;var m=F.workTime.toHour?F.workTime.toHour:8}if(B.dayOfWeek()>=M&&B.dayOfWeek()<=I){if(B.hour()>=aw&&B.hour()<m){aL=T.hexToRgba(az[aB+ac-1],0.1).toString()}}}}}}x=az[ac+aB-1];aG+="background: "+aL+";";aG+="border-color: "+x+";"}if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}if(P.timeColumn&&!P.hidden&&(aC==="dayView"||aC==="weekView")){var a1=T.toTP("jqx-scheduler-time-column")+" "+T.toTP("jqx-widget-header")+" "+T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item");if(T.tableRows>1){var a1=T.toTP("jqx-cell")+" "+T.toTP("jqx-grid-cell")+" "+T.toTP("jqx-item")}if(T.rtl){a1+=" "+T.toTP("jqx-cell-rtl")}if(W>0){if(B.minute()===0){var aG='<td classname="jqx-disableselect" data-time-slot="true" data-date="'+B.toString()+'" rowspan='+aO+' role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px;";if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}else{if(T.rtl&&V==0){aG+="border-left-color: transparent;"}}}else{v++;continue}}else{if(T.resources&&T.resources.orientation=="none"){aD=-1}if(W==0&&g&&(aC==="dayView"||aC==="weekView")){var aG='<td data-view="'+(aD)+'" data-time-slot="true" data-end-date="'+a.jqx.scheduler.utilities.getEndOfDay(B).toString()+'" data-date="'+B.toString()+'" role="gridcell" '+X+' style="max-width:'+aH+"px; width:"+aH+"px;"}if(V==d-1&&d==1&&!T.rtl){aG+="border-right-color: transparent;"}else{if(V==0&&d==1&&T.rtl){aG+="border-right-color: transparent;"}}if(T.rtl){aG+="border-left-width: 1px;"}if(T.tableRows>1){aG+="background: "+aL+";";aG+="border-color: "+x+";"}}}else{if(W>0){aG+="border-left-width: 1px;"}}if(P.cellsalign!="left"){if(P.cellsalign==="right"){a1+=" "+T.toTP("jqx-right-align")}else{a1+=" "+T.toTP("jqx-center-align")}}if(!P.timeColumn){if(T.rowinfo[aF.uid]){if(T.rowinfo[aF.uid].selected){if(T.editKey!==aF.uid){if(T.selectionMode!=="none"){a1+=" "+T.toTP("jqx-grid-cell-selected");a1+=" "+T.toTP("jqx-fill-state-pressed");a1+=" "+T.toTP("jqx-scheduler-cell-selected")}}}}}if(!(P.hidden)){ab+=o+aH;if(v==0&&!T.rtl){aG+="border-left-width: 0px;"}v++}else{aG+="display: none;";T._hiddencolumns=true}if(!(W==0&&g&&(aC==="dayView"||aC==="weekView"))){if(aC.indexOf("month")==-1){a1+=" "+T.toTP("jqx-grid-cell-nowrap");if(W%2==1&&!P.timeColumn){a1+=" "+T.toTP("jqx-scheduler-middle-cell")}if(!P.timeColumn){if(F.showWorkTime!==false){var M=1;var I=5;var aw=8;var m=18;if(F.workTime){var M=F.workTime.fromDayOfWeek?F.workTime.fromDayOfWeek:0;var I=F.workTime.toDayOfWeek?F.workTime.toDayOfWeek:0;var aw=F.workTime.fromHour?F.workTime.fromHour:8;var m=F.workTime.toHour?F.workTime.toHour:8}if(B.dayOfWeek()>=M&&B.dayOfWeek()<=I){if(B.hour()>=aw&&B.hour()<m){a1+=" "+T.toTP("jqx-scheduler-work-time-cell")}else{a1+=" "+T.toTP("jqx-scheduler-not-work-time-cell")}}else{a1+=" "+T.toTP("jqx-scheduler-not-work-time-cell")}}}}}var af="";if(aC==="monthView"){if(!T.touchDevice){a1+=" "+T.toTP("jqx-top-align")}var ad="dd";af=B.toDate();var aX=T.toTP("jqx-scheduler-month-outer-cell")+" ";var ay=T.toTP("jqx-scheduler-month-weekend-cell");if(T.date.month()==B.month()){aX=""}if(!B.isWeekend()){ay=""}else{a1+=" "+ay}if(af.getDate()===1){ad="MMM dd"}if(T.touchDevice){if(A>16){af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell-touch")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer; width:16px; height: 16px;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}else{af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell-touch")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}}else{if(A>16){af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer; width:16px; height: 16px;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}else{af="<div class='"+aX+T.toTP("jqx-scheduler-month-cell")+"'>"+a.jqx.dataFormat.formatdate(af,ad,T.schedulerLocalization)+"<span style='display: none; float: right; cursor: pointer;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span></div>"}}}else{if(aC==="timelineWeekView"||aC==="timelineDayView"||aC==="timelineMonthView"){a1+=" "+T.toTP("jqx-right-align jqx-bottom-align");af="<span style='display: none; float: right; cursor: pointer; width:16px; height: 16px;' class='"+T.toTP("jqx-icon-arrow-down")+"'></span>"}}if(W==0&&g&&(aC==="dayView"||aC==="weekView")&&!P.timeColumn){a1+=" "+T.toTP("jqx-top-align");a1+=" "+T.toTP("jqx-scheduler-all-day-cell");if(T.rtl){a1+=" "+T.toTP("jqx-rtl")}af=B.toDate();af="<span>"+a.jqx.dataFormat.formatdate(af,"dd",T.schedulerLocalization)+"</span>"}var r=P.cellsFormat;if(P.timeColumn&&!P.hidden){af=B.toDate();if(P.timeZone){af=B.clone().toTimeZone(P.timeZone);af=af.toDate()}if(!P.timeColumn.format){if(af.getHours()==0||af.getHours()==12){r="hh tt"}else{r="hh:mm"}}if(a.jqx.dataFormat.isDate(af)){af=a.jqx.dataFormat.formatdate(af,r,T.schedulerLocalization)}if(W<l){if(!T.rtl){a1+=" "+T.toTP("jqx-scheduler-time-column-header-cell")}else{a1+=" "+T.toTP("jqx-scheduler-time-column-header-cell-rtl")}af=""}if(W<l){if(P._text){a1+=" "+T.toTP("jqx-bottom-align")}if(F.timeRuler&&F.timeRuler.timeZones&&F.timeRuler.timeZones.length>0){if(V<F.timeRuler.timeZones.length){af=P._text}}}}else{if(r!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(af)){af=a.jqx.dataFormat.formatdate(af,r,T.schedulerLocalization)}else{if(a.jqx.dataFormat.isNumber(af)||(!isNaN(parseFloat(af))&&isFinite(af))){af=a.jqx.dataFormat.formatnumber(af,r,T.schedulerLocalization)}}}}}if(P.cellclassname!=""&&P.cellclassname){if(typeof P.cellclassname=="string"){a1+=" "+P.cellclassname}else{var aW=P.cellclassname(W,P.datafield,af,aF);if(aW){a1+=" "+aW}}}if(P.cellsRenderer!=""&&P.cellsRenderer){var aP=ar.indexOf(aF);af=P.cellsRenderer(aP,P.datafield,af,aF)}aG+='" class="'+a1+'">';aG+=af;aG+="</td>";s+=aG}if(aJ==0){T.table[0].style.width=ab+2+"px";T.pinnedtable[0].style.width=ab+2+"px";aJ=ab}s+="</tr>";G+=s;if(!T.rowinfo[aF.uid]){T.rowinfo[aF.uid]={row:aF}}else{if(!("row" in T.rowinfo[aF.uid])){T.rowinfo[aF.uid].row=aF}}}}G+="</table>";T.table[0].innerHTML=G;T.pinnedtable[0].innerHTML=G;T.table[0].rows=T.table[0].firstChild.rows;var aN=a.jqx.browser.msie&&a.jqx.browser.version<9;if(g&&(aC==="dayView"||aC==="weekView")&&T.tableRows==1){T.pinnedtable[0].style.display="block";T.pinnedtable[0].style.zIndex="400";T.pinnedtable[0].style.position="absolute";T.pinnedtable[0].style.top="0px";T.pinnedtable[0].style.height=aM+"px";if(!aN){if(T.tableRows==1){T.oldRow=T.table[0].rows[0];T.table[0].rows[0]=T.pinnedtable.find("tr")[0]}else{T.oldRow=T.table[0].rows[1];T.table[0].rows[1]=T.pinnedtable.find("tr")[1]}}}else{T.pinnedtable[0].style.display="none"}var O=a(T.table[0].firstChild);var aR=a(T.pinnedtable[0].firstChild);T._table=O;T._pinnedtable=aR;if(a.jqx.browser.msie&&a.jqx.browser.version<10){T._table[0].style.width=aJ+"px";T._pinnedtable[0].style.width=aJ+"px"}if(ag===0){T._table[0].style.width=(2+aJ)+"px";T._pinnedtable[0].style.width=(2+aJ)+"px"}T._table.addClass("jqx-grid-table-one-cell jqx-disableselect");T._pinnedtable.addClass("jqx-grid-table-one-cell jqx-disableselect");T.rowByCell=new Array();T.columnCells=new Array();function E(){var c={};c.cells=new Array();c.indexOf=function(j){for(var q=0;q<c.cells.length;q++){if(c.cells[q].getAttribute("data-key")==j.getAttribute("data-key")){return q}}return -1};return c}T.cellWidth=0;T.cellHeight=0;var S=T.table[0].rows.length;for(var W=0;W<S;W++){var u=T.table[0].rows[W];if(u.getAttribute("data-group-row")){continue}var aF=new E();aF.aboveRow=null;aF.belowRow=null;if(T.rows.length>0){aF.aboveRow=T.rows[T.rows.length-1];T.rows[T.rows.length-1].belowRow=aF}if(T._views[T._view].type=="monthView"){aF.top=a(u).position().top}T.rows.push(aF);for(var V=0;V<u.cells.length;V++){var L=u.cells[V];if(L.getAttribute("data-time-slot")){continue}if(L.style.display==="none"){continue}if(L.className.indexOf("jqx-grid-cell-pinned")>=0){continue}if(!T.columnCells[aF.cells.length]){T.columnCells[aF.cells.length]=new Array()}T.columnCells[aF.cells.length].push(L);if(T.cellWidth==0){T.cellWidth=L.clientWidth}if(T.cellHeight==0&&(S==1||W>1)){T.cellHeight=L.clientHeight}aF.cells.push(L);T.rowByCell[L.getAttribute("data-key")]=aF}}if(ag===0){T._table[0].style.tableLayout="auto"}T._renderAppointments(e,aK);if(T.pinnedtable[0].style.display!="none"||((aC=="dayView"||aC=="weekView")&&T.tableRows>1)){T._updateScrollbars(T.host.height())}if(T.rendered){T.rendered()}T.renderedTime=new Date()},showAppointmentsByResource:function(g){var f=this;for(var e=0;e<f.uiappointments.length;e++){var h=f.uiappointments[e];if(h.resourceId==g){h.hidden=false;h.hiddenByResourceId=false;if(h.exceptions){for(var d=0;d<h.exceptions.length;d++){h.exceptions[d].hiddenByResourceId=false;h.exceptions[d].hidden=false}}}}if(f._resourcesElements){var c=f.getColors(f._resources.indexOf(g));f._resourcesElements.top[g].attr("data-toggle","on");f._resourcesElements.top[g].css("background",c.background);f._resourcesElements.bottom[g].attr("data-toggle","on");f._resourcesElements.bottom[g].css("background",c.background)}if(f.hiddenResources){delete f.hiddenResources[g]}f._renderrows()},hideAppointmentsByResource:function(f){var e=this;for(var d=0;d<e.uiappointments.length;d++){var g=e.uiappointments[d];if(g.resourceId==f){g.hidden=true;g.hiddenByResourceId=true;if(g.exceptions){for(var c=0;c<g.exceptions.length;c++){g.exceptions[c].hiddenByResourceId=true;g.exceptions[c].hidden=true}}}}if(e._resourcesElements){e._resourcesElements.top[f].attr("data-toggle","off");e._resourcesElements.top[f].css("background","transparent");e._resourcesElements.bottom[f].attr("data-toggle","off");e._resourcesElements.bottom[f].css("background","transparent")}if(!e.hiddenResources){e.hiddenResources=new Array()}e.hiddenResources[f]=true;e._renderrows()},_prepareAppointmentsInView:function(h,g){var k=this;if(k._appupdating){return}var n=new Array();for(var t=0;t<this.uiappointments.length;t++){var o=this.uiappointments[t];if(o.hidden&&o.recurrencePattern==null){continue}var p=a.jqx.scheduler.utilities.rangeIntersection(o.from,o.to,h,g);if(p&&!o.recurrencePattern){n.push(o)}o.renderedAppointments=new Array();var w=false;if(o.recurrencePattern){var v=o.getOccurrences(h,g);var u=o.exceptions;for(var s=0;s<v.length;s++){var f=v[s];if(f.hidden){continue}var d=true;for(var q=0;q<u.length;q++){var l=u[q];var x=l.occurrenceFrom?l.occurrenceFrom:l;if(k.selectedJQXAppointment&&k.selectedJQXAppointment.rootAppointment){if(!w&&k.selectedJQXAppointment.occurrenceFrom.clearTime().equals(x.clearTime())){k.selectedJQXAppointment=l;w=true}}if(x.clearTime().equals(f.from.clearTime())){d=false;break}}if(!d){continue}if(k.selectedJQXAppointment&&k.selectedJQXAppointment.rootAppointment){if(!w&&k.selectedJQXAppointment.occurrenceFrom.clearTime().equals(f.occurrenceFrom.clearTime())){k.selectedJQXAppointment=f;w=true}}o.renderedAppointments[f.id]=f;n.push(f)}for(var q=0;q<u.length;q++){var l=u[q];var x=l.occurrenceFrom?l.from:l;var r=o.createOccurrence(x);if(l.occurrenceFrom){l.cloneAppointmentAttributes(r);if(l.hidden){continue}}if(r!=o){n.push(l);o.renderedAppointments[l.id]=l}}}}var c=new Array();this.tabKeyAppointments=new Array();for(var t=0;t<n.length;t++){var e=n[t];c.push(e);this.tabKeyAppointments.push(e)}c.sort(this._sortAppointmentsByFrom);if(this._resources.length>0){this.tabKeyAppointments.sort(function(j,i){return k._sortAppointmentsByResourceId(j,i,k)})}else{this.tabKeyAppointments.sort(this._sortAppointmentsByFrom)}this.appointmentsToRender=c},_renderDayWeekAppointments:function(){var M=this;var aa=M._views[M._view].type;var L=M._views[M._view];var B=new Array();var J=new Array();var Y=this.rows;var F=M.showAllDayRow;if(L.timeRuler&&L.timeRuler.showAllDayRow!=undefined){F=L.timeRuler.showAllDayRow}for(var g=0;g<this.appointmentsToRender.length;g++){var t=this.appointmentsToRender[g];var v=t.from;var ac=t.to;var U=a.jqx.scheduler.utilities.getEndOfDay(ac);var E=v.day();var f=t.allDay;var w=M._getDateByString;var G=new Array();var s=new Array();var q=t.resourceId;var k=M._resources.indexOf(q);if(M.resources&&M.resources.orientation=="none"){k=-1}var C=v.toDate().valueOf();var l=ac.toDate().valueOf();var P=U.toDate().valueOf();var ad=function(j,i){if(j.date<i.date){return -1}if(j.date==i.date){return 0}if(j.date>i.date){return 1}};if(!t.allDay&&t.duration().days()<1||!F){var r=ac.toDate();var H=false;if(r.getHours()==0&&r.getMinutes()==0){H=true}for(var W=0;W<M.columnCells.length;W++){if(!M.columnCells[W]){continue}var z=M.columnCells[W];if(M.rtl){z=M.columnCells[M.columnCells.length-1-W]}for(var V=0;V<z.length;V++){if(z[V].getAttribute("data-end-date")){continue}var o=z[V].getAttribute("data-date");var X=w(o);var n=X.valueOf();if(n>ac){continue}if(C<=n&&n<l){if(k!=-1){if((1+k)!=z[V].getAttribute("data-view")){continue}}if(E!=X.getDate()){G.sort(ad);s.push(G);G=new Array();E=v.addDays(1).day()}G.push({cell:z[V],date:X})}}}G.sort(ad);s.push(G);var D=new Array();for(var W=0;W<s.length;W++){var z=s[W];if(z.length==0){continue}var d=M.cellWidth;var e=z[z.length-1].cell.offsetTop+M.cellHeight;var O=z[0].cell.offsetLeft;var N=z[0].cell.offsetTop;var R=M.getMinutesPerScale();var r=new a.jqx.date(z[z.length-1].date,M.timeZone).addMinutes(R);var ab={cells:z,x:O,y:N,height:e-N,width:d,appointment:t,from:new a.jqx.date(z[0].date,M.timeZone),to:r};D.push(ab);B.push(ab)}t.elements=D;if(t.rootAppointment){t.rootAppointment.elements=t.rootAppointment.elements.concat(t.elements)}}else{var z=Y[0].cells;if(this.tableRows>1){var T=Y.length/M.tableRows;var c=k*T;z=Y[c].cells}for(var V=0;V<z.length;V++){var o=z[V].getAttribute("data-date");var ae=w(o);var X=new a.jqx.date(ae,M.timeZone);X=a.jqx.scheduler.utilities.getEndOfDay(X);var n=X.toDate().valueOf();if(n>U){continue}if(v<=X&&X<=U){if(k!=-1){if((1+k)!=z[V].getAttribute("data-view")){continue}}if(G.length==0){X=a.jqx.scheduler.utilities.getStartOfDay(X)}G.push({cell:z[V],date:X})}}G.sort(ad);s.push(G);var D=new Array();for(var W=0;W<s.length;W++){var z=s[W];if(z.length==0){break}var m=a(z[0].cell).position();var d=a(z[z.length-1].cell).position().left+this.cellWidth-m.left;var e=a(z[z.length-1].cell).position().top;var O=m.left;var N=m.top;if(this.rtl){var m=a(z[z.length-1].cell).position();var O=m.left;var d=a(z[0].cell).position().left+this.cellWidth-m.left}var S=z[z.length-1].date;S=new a.jqx.date(a.jqx.scheduler.utilities.getEndOfDay(S),M.timeZone);var ab={cells:z,x:O,y:N,height:e-N+this.cellHeight,width:d,appointment:t,from:a.jqx.scheduler.utilities.getStartOfDay(new a.jqx.date(z[0].date,M.timeZone)),to:S};D.push(ab);J.push(ab)}t.elements=D;if(t.rootAppointment){t.rootAppointment.elements=t.rootAppointment.elements.concat(t.elements)}}}var A=this.getViewStart();var Q=this.getViewEnd();if(this._resources.length<2||this.resources.orientation=="none"){var Z=new Array();var h=A;var I=0;while(h<Q){Z[I]=new Array();for(var W=0;W<B.length;W++){var u=B[W];if(u.from.day()==h.day()){u.column=-1;u.columnSpan=1;Z[I].push(u)}}I++;h=h.addDays(1)}for(var W=0;W<Z.length;W++){this._renderAppointmentsInDay(Z[W])}this._renderAllDayAppointments(J)}else{for(var V=0;V<this._resources.length;V++){var K=this._resources[V];var Z=new Array();var h=A;var I=0;while(h<Q){Z[I]=new Array();for(var W=0;W<B.length;W++){var u=B[W];if(u.from.day()==h.day()){u.column=-1;u.columnSpan=1;if(u.appointment.resourceId==K){Z[I].push(u)}}}I++;h=h.addDays(1)}for(var W=0;W<Z.length;W++){this._renderAppointmentsInDay(Z[W])}var p=new Array();for(var W=0;W<J.length;W++){if(J[W].appointment.resourceId==K){p.push(J[W])}}this._renderAllDayAppointments(p)}}},_renderAllDayAppointments:function(am){var Z=this;var H=this.showAllDayRow;var Y=this._views[this._view];if(Y.timeRuler&&Y.timeRuler.showAllDayRow!=undefined){H=Y.timeRuler.showAllDayRow}if(!H){return}if(am.length==0){return}var C=am;var G=1;G=this.getMaxAllDayAppointments(am);if(this.tableRows==1){var B=this.table[0].rows[0].clientHeight/G}else{var B=this.table[0].rows[1].clientHeight/G}for(var ak=0;ak<am.length;ak++){var z=am[ak];z.row=-1;var e=this.getCollisionAppointments(z,am);e.sort(this._sortAppointmentsByFrom);var t=e.indexOf(z);if(t>=0){for(var af=t;af<e.length;af++){e[af].row=-1}}for(var ah=0;ah<G;ah++){var o=ah;for(var R in e){if(R=="indexOf"){break}var V=e[R];if(V.row==-1&&!this.isBusyRow(o,e)){V.row=o;var ai=G;var d=this.getMaxAllDayAppointments(e);if(ai>d){ai=d}V.rowsCount=ai}}}}for(var ah=0;ah<C.length;ah++){var z=C[ah];var e=this.getCollisionAppointments(z,C);e.sort(this._sortAppointmentsByFrom);var n=1;for(var R in e){if(R=="indexOf"){break}var L=e[R];n=Math.max(n,L.rowsCount)}for(var R in e){if(R=="indexOf"){break}var L=e[R];L.rowsCount=n}if(e.length==1){z.rowSpan=n}else{var E=0;var g=true;for(var af=z.row;af<n;af++){for(var R in e){if(R=="indexOf"){break}var V=e[R];if(V==z){continue}if(V.row==af){g=false}}if(!g){break}E++}z.rowSpan=E}}var al=Z.appointmentsMinHeight+2;if(Z.isTouchDevice()){var al=Z.touchAppointmentsMinHeight+2}for(var ab=0;ab<C.length;ab++){var aa=al;var z=C[ab];z.height=al;var D=aa*z.row;z.y=18+z.y+D+(4*z.row);z.x+=3;z.width-=8}for(var ab=0;ab<C.length;ab++){var ag=C[ab];var K="";var M="auto";var Y=this._views[this._view];var q=ag.appointment.from;var ap=ag.appointment.to;if(Y.timeRuler&&Y.timeRuler.formatString){M=Y.timeRuler.formatString}var ac=M;if(M==="auto"){if((q.hour()==0&&q.minute()==0)||(q.hour()==12&&q.minute()==0)){var ac="hh tt"}else{var ac="hh:mm"}if((ap.hour()==0&&ap.minute()==0)||(ap.hour()==12&&ap.minute()==0)){var A="hh tt"}else{var A="hh:mm"}}var v=q.toString(ac);var w=ap.toString(A);var I=ag.appointment.duration();var f=ag.appointment.allDay||(I.hours===23&&I.minutes===59&&I.seconds===59);var X=ag.appointment.background;var Q=ag.appointment.subject?ag.appointment.subject:"(No Title)";var J=ag.appointment.color;var k=ag.appointment.resourceId;var ad=Z.getColors(Z._resources.indexOf(k));var ae=" data-resourceId='"+k+"' ";var U=ag.appointment.borderColor;var u=ag.appointment.location;if(u.length>0){u=", "+u}if(!X){X=ad.background}if(!U){U=ad.border}if(!J){J=ad.color}var c=ag.appointment.isRecurrentAppointment();var s=ag.appointment.isException();var h=v+"-"+w;if(f){h=""}var aj="";var y=Z.toTP("jqx-scheduler-appointment-status");var P="";var O=Z.statuses[ag.appointment.status];var l=false;if(O){if(O=="transparent"){l=false}else{P="<div style='background: "+O+"; border-right-color: "+U+"' class='"+y+"'></div>";if(O=="tentative"){y=Z.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");P="<div style='background-color: "+U+"; border-right-color: "+U+"' class='"+y+"'></div>"}l=true}}var F="";if(Z.rtl){var y=Z.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");P="<div style='background: "+O+"; border-left-color: "+U+"' class='"+y+"'></div>";if(O=="tentative"){y=Z.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");P="<div style='background-color: "+U+"; border-left-color: "+U+"' class='"+y+"'></div>"}F=P;P=""}var T="";var N=Q+u;if(Z.renderAppointment){var ao=Z.renderAppointment({appointment:ag.appointment.boundAppointment,textColor:J,background:X,borderColor:U,html:N,cssClass:"",style:"",width:ag.width,height:ag.height,view:Z._views[Z._view].type});if(ao){var K=ao.html;if(K!=N){N=K}J=ao.textColor;X=ao.background;U=ao.borderColor;if(ao.cssClass){T=ao.cssClass+" "}if(ao.style!=""){var ad=Z.getAppointmentColors(ao.style);X=ad.background;U=ad.border;J=ad.color}}}if(aj===""){if(l){var aj="<div style='white-space:nowrap;' class='"+Z.toTP("jqx-scheduler-appointment-content")+"'>"+P+"<div class='"+Z.toTP("jqx-scheduler-appointment-inner-content")+"'>"+N+"</div>"+F+"</div>"}else{var aj="<div style='white-space:nowrap;' class='"+Z.toTP("jqx-scheduler-appointment-content")+"'><div class='"+Z.toTP("jqx-scheduler-appointment-inner-content")+"'>"+N+"</div></div>"}}var an="";if(Z.rtl){an=Z.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(s){var i=J.toLowerCase()=="white"?Z.toTP("jqx-icon-recurrence-exception-white"):Z.toTP("jqx-icon-recurrence-exception");K="<div data-key='"+ag.appointment.id+"'"+ae+"class='"+an+T+Z.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ag.x+"px; top: "+ag.y+"px; width: "+ag.width+"px; line-height: "+ag.height+"px; height: "+ag.height+"px; border-color:"+U+"; color:"+J+"; background:"+X+";'><div class='"+i+"'></div>"+aj+"<div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{if(c){var r=J.toLowerCase()=="white"?Z.toTP("jqx-icon-recurrence-white"):Z.toTP("jqx-icon-recurrence");K="<div data-key='"+ag.appointment.id+"'"+ae+"class='"+an+T+Z.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ag.x+"px; top: "+ag.y+"px; width: "+ag.width+"px; line-height: "+ag.height+"px; height: "+ag.height+"px; border-color:"+U+"; color:"+J+"; background:"+X+";'><div class='"+r+"'></div>"+aj+"<div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{K="<div data-key='"+ag.appointment.id+"'"+ae+"class='"+an+T+Z.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ag.x+"px; top: "+ag.y+"px; width: "+ag.width+"px; line-height: "+ag.height+"px; height: "+ag.height+"px; border-color:"+U+"; color:"+J+"; background:"+X+";'>"+aj+"<div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+Z.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}}var S=a(K);if(this.tableRows==1){S.appendTo(this.pinnedtable)}else{S.appendTo(this.table)}ag.element=S;if(this.appointmentTooltips){if(!ag.appointment.tooltip){var W=ag.appointment.subject;if(W){var u=ag.appointment.location;if(u){W+="\n"+u}S[0].setAttribute("title",W)}}else{S[0].setAttribute("title",ag.appointment.tooltip)}}}},_renderAppointmentsInDay:function(al,ak){if(al.length==0){return}var Y=this;var X=this._views[this._view];var C=al;var D=this.getViewStart();var ab=this.getViewEnd();var ag=1;var q=0;if(X.timeRuler){q=this.columns.records[1].width;if(X.timeRuler.timeZones){q=this.columns.records[1+X.timeRuler.timeZones.length].width}}else{q=this.columns.records[1].width}ag=this.getMaxColumnsInADay(al);var o=q/ag;if(o<0){return}for(var aj=0;aj<al.length;aj++){var A=al[aj];A.column=-1;var e=this.getCollisionAppointments(A,al);e.sort(this._sortAppointmentsByFrom);var u=e.indexOf(A);if(u>=0){for(var ae=u;ae<e.length;ae++){e[ae].column=-1}}for(var ah=0;ah<ag;ah++){var f=ah;for(var Q in e){if(Q=="indexOf"){break}var U=e[Q];if(U.column==-1&&!this.isBusyColumn(f,e)){U.column=f;var h=ag;var d=this.getMaxColumnsInADay(e);if(h>d){h=d}U.columnsCount=h}}}}for(var ah=0;ah<C.length;ah++){var A=C[ah];var e=this.getCollisionAppointments(A,C);e.sort(this._sortAppointmentsByFrom);var H=1;for(var Q in e){if(Q=="indexOf"){break}var K=e[Q];if(K.columnsCount==undefined){continue}H=Math.max(H,K.columnsCount)}for(var Q in e){if(Q=="indexOf"){break}var K=e[Q];K.columnsCount=H}if(e.length==1){A.columnSpan=H}else{var E=0;var g=true;for(var ae=A.column;ae<H;ae++){for(var Q in e){if(Q=="indexOf"){break}var U=e[Q];if(U.column==undefined){continue}if(U==A){continue}if(U.column==ae){g=false}}if(!g){break}E++}A.columnSpan=E}}for(var Z=0;Z<C.length;Z++){var F=q/C[Z].columnsCount;var A=C[Z];A.width=-5+(F*A.columnSpan);var an=F*A.column;A.x=2+A.x+an;A.height-=5;A.y+=1}for(var Z=0;Z<C.length;Z++){var af=C[Z];var J="";var L="auto";var X=this._views[this._view];var r=af.appointment.from;var ap=af.appointment.to;if(X.timeRuler&&X.timeRuler.formatString){L=X.timeRuler.formatString}var aa=L;if(L==="auto"){if((r.hour()==0&&r.minute()==0)||(r.hour()==12&&r.minute()==0)){var aa="hh tt"}else{var aa="hh:mm"}if((ap.hour()==0&&ap.minute()==0)||(ap.hour()==12&&ap.minute()==0)){var B="hh tt"}else{var B="hh:mm"}}var w=r.toString(aa);var y=ap.toString(B);var W=af.appointment.background;var P=af.appointment.subject?af.appointment.subject:"(No Title)";var v=af.appointment.location?af.appointment.location:"";var I=af.appointment.color;var l=af.appointment.resourceId;var ac=Y.getColors(Y._resources.indexOf(l));var ad=" data-resourceId='"+l+"' ";var T=af.appointment.borderColor;if(!W){W=ac.background}if(!T){T=ac.border}if(!I){I=ac.color}var c=af.appointment.isRecurrentAppointment();var t=af.appointment.isException();var ai="";var z=Y.toTP("jqx-scheduler-appointment-status");var O="";var N=Y.statuses[af.appointment.status];var n=false;if(N){if(N=="transparent"){n=false}else{O="<div style='background: "+N+"; border-right-color: "+T+"' class='"+z+"'></div>";if(N=="tentative"){z=Y.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");O="<div style='background-color: "+T+"; border-right-color: "+T+"' class='"+z+"'></div>"}n=true}}var G="";if(Y.rtl){var z=Y.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");O="<div style='background: "+N+"; border-left-color: "+T+"' class='"+z+"'></div>";if(N=="tentative"){z=Y.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");O="<div style='background-color: "+T+"; border-left-color: "+T+"' class='"+z+"'></div>"}G=O;O=""}var S="";var M=P+"<br/>"+v;if(!v){var M=P}if(Y.renderAppointment){var ao=Y.renderAppointment({appointment:af.appointment.boundAppointment,textColor:I,background:W,borderColor:T,html:M,cssClass:"",style:"",width:af.width,height:af.height,view:Y._views[Y._view].type});if(ao){var J=ao.html;if(J!=M){M=J}I=ao.textColor;W=ao.background;T=ao.borderColor;if(ao.cssClass){S=ao.cssClass+" "}if(ao.style!=""){var ac=Y.getAppointmentColors(ao.style);W=ac.background;T=ac.border;I=ac.color}}}if(ai===""){if(n){var ai="<div class='"+Y.toTP("jqx-scheduler-appointment-content")+"'>"+O+"<div class='"+Y.toTP("jqx-scheduler-appointment-inner-content")+"'>"+M+"</div>"+G+"</div>"}else{var ai="<div class='"+Y.toTP("jqx-scheduler-appointment-content")+"'><div class='"+Y.toTP("jqx-scheduler-appointment-inner-content")+"'>"+M+"</div></div>"}}var am="";if(Y.rtl){am=Y.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(t){var k=I.toLowerCase()=="white"?Y.toTP("jqx-icon-recurrence-exception-white"):Y.toTP("jqx-icon-recurrence-exception");J="<div data-key='"+af.appointment.id+"'"+ad+"class='"+am+S+Y.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; border-color:"+T+"; color:"+I+"; background:"+W+";'><div class='"+k+"'></div>"+ai+"<div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-top-resize-indicator")+"'></div><div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-bottom-resize-indicator")+"'></div></div>"}else{if(c){var s=I.toLowerCase()=="white"?Y.toTP("jqx-icon-recurrence-white"):Y.toTP("jqx-icon-recurrence");J="<div data-key='"+af.appointment.id+"'"+ad+"class='"+am+S+Y.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; border-color:"+T+"; color:"+I+"; background:"+W+";'><div class='"+s+"'></div>"+ai+"<div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-top-resize-indicator")+"'></div><div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-bottom-resize-indicator")+"'></div></div>"}else{J="<div data-key='"+af.appointment.id+"'"+ad+"class='"+am+S+Y.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; border-color:"+T+"; color:"+I+"; background:"+W+";'>"+ai+"<div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-top-resize-indicator")+"'></div><div class='"+Y.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-bottom-resize-indicator")+"'></div></div>"}}var R=a(J);R.appendTo(this.table);af.element=R;if(this.appointmentTooltips){if(!af.appointment.tooltip){var V=af.appointment.subject;if(V){var v=af.appointment.location;if(v){V+="\n"+v}R[0].setAttribute("title",V)}}else{R[0].setAttribute("title",af.appointment.tooltip)}}}},getCollisionAppointments:function(c,g){var k=new Array();var h=c.from;var j=c.to;for(var e=0;e<g.length;e++){var l=g[e];var f=l.from;var d=l.to;if(a.jqx.scheduler.utilities.rangeIntersection(h,j,f,d)){k.push(l)}}return k},getAllDayCollisionAppointments:function(c,g){var k=new Array();var h=a.jqx.scheduler.utilities.getStartOfDay(c.from);var j=a.jqx.scheduler.utilities.getEndOfDay(c.to);for(var e=0;e<g.length;e++){var l=g[e];var f=a.jqx.scheduler.utilities.getStartOfDay(l.from);var d=a.jqx.scheduler.utilities.getEndOfDay(l.to);if(a.jqx.scheduler.utilities.rangeIntersection(h,j,f,d)){k.push(l)}}return k},_renderAppointments:function(f,d){var e=this;if(e._appupdating){return}e.table.find(".jqx-scheduler-appointment").remove();e.pinnedtable.find(".jqx-scheduler-appointment").remove();var c=e._views[e._view].type;if(c==="dayView"||c==="weekView"){e._renderDayWeekAppointments(f,d)}else{if(c==="monthView"){e._renderMonthAppointments(f,d)}else{if(c==="timelineWeekView"||c==="timelineDayView"||c==="timelineMonthView"){e._renderTimelineAppointments(f,d)}}}if(e.selectedJQXAppointment){e._selectAppointment(e.selectedJQXAppointment)}},_renderTimelineAppointments:function(u,H){var D=this;var P=D._views[D._view].type;var C=D._views[D._view];var v=new Array();var O=this.rows;var K=this.cellHeight;var J=this.cellWidth;var I=D.getMinutesPerScale();for(var e=0;e<this.appointmentsToRender.length;e++){var p=this.appointmentsToRender[e];var q=p.from;var R=p.to;var s=D._getDateByString;var A=new Array();var w=q.toDate().valueOf();var h=R.toDate().valueOf();if(P==="timelineMonthView"){w=q.clearTime().toDate().valueOf()}var S=function(j,i){if(j.date<i.date){return -1}if(j.date==i.date){return 0}if(j.date>i.date){return 1}};var r=D.rows[0];var n=p.resourceId;var g=D._resources.indexOf(n);if(D._resources.length>0){if(D.resources.orientation!=="horizontal"){if(g>=1){r=D.rows[g]}}}if(D.resources&&D.resources.orientation=="none"){g=-1;var r=D.rows[0]}var t=r.cells;for(var L=0;L<t.length;L++){var l=t[L].getAttribute("data-date");t[L].appointments=new Array();var N=s(l);var k=N.valueOf();if(k>R){continue}if(w<=k&&k<h){if(g!=-1){if((1+g)!=t[L].getAttribute("data-view")){continue}}A.push({cell:t[L],date:N});r=M}}A.sort(S);var z=new Array();var t=A;if(t.length==0){break}var m=D.appointmentsMinHeight;if(D.isTouchDevice()){m=D.touchAppointmentsMinHeight}if(C.appointmentHeight){m=C.appointmentHeight}var G=a(t[0].cell).position();var d=m;var c=a(t[t.length-1].cell).position().left-G.left+J;var F=G.left;var E=G.top;if(D.rtl){var G=a(t[t.length-1].cell).position();var c=a(t[0].cell).position().left-G.left+J;var F=G.left;var E=G.top}var o=new a.jqx.date(t[t.length-1].date,D.timeZone).addMinutes(I);if(P==="timelineMonthView"){var o=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(t[t.length-1].date,D.timeZone))}var Q={cellX:F,cellY:E,cellHeight:K,cells:t,x:F,y:E,height:d,width:c,appointment:p,from:new a.jqx.date(t[0].date,D.timeZone),to:o};z.push(Q);v.push(Q);p.elements=z;if(p.rootAppointment){p.rootAppointment.elements=p.rootAppointment.elements.concat(p.elements)}}if(this._resources.length<2||this.resources.orientation=="none"){this._renderUITimelineAppointments(v,u,H)}else{for(var L=0;L<this._resources.length;L++){var B=this._resources[L];var f=new Array();for(var M=0;M<v.length;M++){if(v[M].appointment.resourceId==B){f.push(v[M])}}this._renderUITimelineAppointments(f,u,H)}}},_renderUITimelineAppointments:function(ak,w,Z){var V=this;var al=V._views[V._view].type;var T=V._views[V._view];var D=ak;var C=1;var V=this;var Q=new Array();C=V.getMaxTimelineAppointments(ak,Q,w,Z);var h=V.appointmentsMinHeight;if(V.isTouchDevice()){h=V.touchAppointmentsMinHeight}if(T.appointmentHeight){h=T.appointmentHeight}for(var aj=0;aj<ak.length;aj++){var g=ak[aj];g.row=-1;var e=V.getCollisionAppointments(g,ak);e.sort(V._sortAppointmentsByFrom);var t=e.indexOf(g);if(t>=0){for(var ae=t;ae<e.length;ae++){e[ae].row=-1}}for(var ag=0;ag<C;ag++){var o=ag;for(var M in e){if(M=="indexOf"){break}var R=e[M];if(R.row==-1&&!V.isBusyRow(o,e)){R.row=o;var ah=C;var d=V.getMaxTimelineAppointments(e,Q,w,Z);if(ah>d){ah=d}R.rowsCount=ah}}}}for(var ag=0;ag<D.length;ag++){var g=D[ag];var e=V.getCollisionAppointments(g,D);e.sort(V._sortAppointmentsByFrom);var n=1;for(var M in e){if(M=="indexOf"){break}var G=e[M];n=Math.max(n,G.rowsCount)}for(var M in e){if(M=="indexOf"){break}var G=e[M];G.rowsCount=n}if(e.length==1){g.rowSpan=n}else{var z=0;var f=true;for(var ae=g.row;ae<n;ae++){for(var M in e){if(M=="indexOf"){break}var R=e[M];if(R==g){continue}if(R.row==ae){f=false}}if(!f){break}z++}g.rowSpan=z}}for(var X=0;X<D.length;X++){var W=h;var g=D[X];g.height=W;var y=2+(3+W)*g.row;g.y=g.y+y;g.x+=1;g.width-=5}var ad="";for(var X=0;X<D.length;X++){var af=D[X];var F="";var H="auto";var T=V._views[V._view];var q=af.appointment.from;var ao=af.appointment.to;if(T.timeRuler&&T.timeRuler.formatString){H=T.timeRuler.formatString}var U=af.appointment.background;var L=af.appointment.subject?af.appointment.subject:"(No Title)";var u=af.appointment.location;if(u&&u.length>1){u=", "+u}var E=af.appointment.color;var k=af.appointment.resourceId;var aa=V.getColors(V._resources.indexOf(k));var ab=" data-resourceId='"+k+"' ";var P=af.appointment.borderColor;if(!U){U=aa.background}if(!P){P=aa.border}if(!E){E=aa.color}var c=af.appointment.isRecurrentAppointment();var s=af.appointment.isException();var ai="";var v=V.toTP("jqx-scheduler-appointment-status");var K="";var J=V.statuses[af.appointment.status];var l=false;if(J){if(J=="transparent"){l=false}else{K="<div style='background: "+J+"; border-right-color: "+P+"' class='"+v+"'></div>";if(J=="tentative"){v=V.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");K="<div style='background-color: "+P+"; border-right-color: "+P+"' class='"+v+"'></div>"}l=true}}var A="";if(V.rtl){var v=V.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");K="<div style='background: "+J+"; border-left-color: "+P+"' class='"+v+"'></div>";if(J=="tentative"){v=V.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");K="<div style='background-color: "+P+"; border-left-color: "+P+"' class='"+v+"'></div>"}A=K;K=""}var O="";var I=L+"<br/>"+u;if(V.renderAppointment){var an=V.renderAppointment({appointment:af.appointment.boundAppointment,textColor:E,background:U,borderColor:P,html:I,cssClass:"",style:"",width:af.width,height:af.height,view:V._views[V._view].type});if(an){var F=an.html;if(F!=I){I=F}E=an.textColor;U=an.background;P=an.borderColor;if(an.cssClass){O=an.cssClass+" "}if(an.style!=""){var aa=V.getAppointmentColors(an.style);U=aa.background;P=aa.border;E=aa.color}}}if(ai===""){if(l){var ai="<div style='white-space:nowrap;' class='"+V.toTP("jqx-scheduler-appointment-content")+"'>"+K+"<div class='"+V.toTP("jqx-scheduler-appointment-inner-content")+"'>"+I+"</div>"+A+"</div>"}else{var ai="<div style='white-space:nowrap;' class='"+V.toTP("jqx-scheduler-appointment-content")+"'><div class='"+V.toTP("jqx-scheduler-appointment-inner-content")+"'>"+I+"</div></div>"}}var am="";if(V.rtl){am=V.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(s){var i=E.toLowerCase()=="white"?V.toTP("jqx-icon-recurrence-exception-white"):V.toTP("jqx-icon-recurrence-exception");F="<div data-key='"+af.appointment.id+"'"+ab+"class='"+am+O+V.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; line-height: "+af.height+"px; border-color:"+P+"; color:"+E+"; background:"+U+";'><div class='"+i+"'></div>"+ai+"<div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{if(c){var r=E.toLowerCase()=="white"?V.toTP("jqx-icon-recurrence-white"):V.toTP("jqx-icon-recurrence");F="<div data-key='"+af.appointment.id+"'"+ab+"class='"+am+O+V.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; line-height: "+af.height+"px; border-color:"+P+"; color:"+E+"; background:"+U+";'><div class='"+r+"'></div>"+ai+"<div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{F="<div data-key='"+af.appointment.id+"'"+ab+"class='"+am+O+V.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+af.x+"px; top: "+af.y+"px; width: "+af.width+"px; height: "+af.height+"px; line-height: "+af.height+"px; border-color:"+P+"; color:"+E+"; background:"+U+";'>"+ai+"<div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+V.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}}ad=F;var N=a(F);N.appendTo(this.table);af.element=N;if(this.appointmentTooltips){if(!af.appointment.tooltip){var S=af.appointment.subject;if(S){var u=af.appointment.location;if(u){S+="\n"+u}N[0].setAttribute("title",S)}}else{N[0].setAttribute("title",af.appointment.tooltip)}}}var ac=V.table.find(".jqx-scheduler-appointment");var B=function(m){for(var j=0;j<ac.length;j++){var p=ac[j].getAttribute("data-key");if(p==m){return ac[j]}}};for(var X=0;X<D.length;X++){var af=D[X];var Y=false;var N=a(B(af.appointment.id));a.each(af.cells,function(p){var m=a(this.cell);var aq=af.cellY;var ap=af.cellX;var j=af.cellHeight;if(!m[0].appointments){m[0].appointments=new Array()}m[0].appointments.push({ui:N,appointment:af});N=N;if(af.y+af.height>=aq+j-12){N[0].style.visibility="hidden";var x=m.find(".jqx-icon-arrow-down");if(x.length>0){x[0].style.display="block";x[0].mousedown=function(){if(V.openedMonthCellPopup){V.openedMonthCellPopup.remove()}var ar=a("<div></div>");var av=new a.jqx.date(m.attr("data-date"),V.timeZone);var ay=a("<div class='"+V.toTP("jqx-scheduler-month-cell")+"'><span style='float: right; cursor: pointer; width:16px; height: 16px;' class='"+V.toTP("jqx-icon-close")+"'></span></div>");ay.height(16);ay.find("span")[0].mousedown=function(){ar.remove()};ay.addClass(V.toTP("jqx-widget-header"));ar.addClass(V.toTP("jqx-widget"));ar.addClass(V.toTP("jqx-window"));ar.addClass(V.toTP("jqx-scheduler-month-cell-popup"));ar.addClass(V.toTP("jqx-popup"));var az=a("<div></div>");ar.append(ay);ar.append(az);az.addClass(V.toTP("jqx-widget-content"));var at=m.width();var aB=21;for(var aw=0;aw<m[0].appointments.length;aw++){var au=m[0].appointments[aw].ui.clone(true);au.css("left","3px");au.css("top","0px");au.css("margin-top","2px");au.css("position","relative");au.css("visibility","visible");au.width(at-6);aB+=au.outerHeight()+4;az.append(au)}ar.css("overflow","hidden");ar.css("position","absolute");var aA=V.table.height()-aq-25;if(aA<j){aA=j}ar.css("max-height",aA);ar.height(aB);ar.width(at);ar.css("z-index","999999");var ax=m.position();ar.css("top",ax.top);ar.css("left",ax.left);V.table.append(ar);V.openedMonthCellPopup=ar}}}})}},_renderMonthAppointments:function(){var L=this;var V=L._views[L._view].type;var K=L._views[L._view];var B=new Array();var T=this.rows;var P=a(".jqx-scheduler-month-cell:first").height();for(var f=0;f<this.appointmentsToRender.length;f++){var s=this.appointmentsToRender[f];var u=a.jqx.scheduler.utilities.getStartOfDay(s.from);var X=a.jqx.scheduler.utilities.getEndOfDay(s.to);var d=s.allDay;var w=L._getDateByString;var G=new Array();var r=new Array();var C=u.toDate().valueOf();var l=X.toDate().valueOf();var Y=function(j,i){if(j.date<i.date){return -1}if(j.date==i.date){return 0}if(j.date>i.date){return 1}};var v=-1;var p=s.resourceId;var k=L._resources.indexOf(p);if(L.resources&&L.resources.orientation=="none"){k=-1}for(var R=0;R<L.rows.length;R++){var z=L.rows[R].cells;for(var Q=0;Q<z.length;Q++){var n=z[Q].getAttribute("data-date");var S=w(n);var m=S.valueOf();if(m>X){continue}z[Q].appointments=new Array();if(k!=-1){if((1+k)!=z[Q].getAttribute("data-view")){continue}}if(C<=m&&m<l){if(v!=R&&v!=-1){G.sort(Y);r.push(G);G=new Array()}G.push({cell:z[Q],date:S});v=R}}}G.sort(Y);r.push(G);var D=new Array();for(var R=0;R<r.length;R++){var z=r[R];if(z.length==0){break}var o=L.appointmentsMinHeight;if(L.isTouchDevice()){o=L.touchAppointmentsMinHeight}if(K.appointmentHeight){o=K.appointmentHeight}var e=o;var F=a(z[z.length-1].cell).position().left;var c=F-a(z[0].cell).position().left+L.columns.records[0].width;var H=a(z[0].cell).position();var N=H.left;var M=H.top+P;var q=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(z[z.length-1].date,L.timeZone));var E=new a.jqx.date(z[0].date,L.timeZone);if(L.rtl){var q=a.jqx.scheduler.utilities.getEndOfDay(new a.jqx.date(z[0].date,L.timeZone));var E=new a.jqx.date(z[z.length-1].date,L.timeZone);var H=a(z[z.length-1].cell).position();var N=H.left;var M=H.top+P;var F=a(z[0].cell).position().left;var c=F-a(z[z.length-1].cell).position().left+L.columns.records[0].width}var W={cells:z,cellY:parseInt(H.top),cellX:parseInt(H.left),lastCellY:parseInt(H.top),lastCellX:F,x:N,y:M,height:e,width:c,appointment:s,from:E,to:q};D.push(W);B.push(W)}s.elements=D;if(s.rootAppointment){s.rootAppointment.elements=s.rootAppointment.elements.concat(s.elements)}}var A=this.getViewStart();var O=this.getViewEnd();if(this._resources.length<2||this.resources.orientation=="none"){var U=new Array();var g=A;var I=0;while(g<O){U[I]=new Array();for(var R=0;R<B.length;R++){var t=B[R];if(g<=t.from&&t.to<g.addDays(7)){t.row=-1;t.rowSpan=1;U[I].push(t)}}I++;g=g.addDays(7)}for(var R=0;R<U.length;R++){if(U[R].length>0){this._renderUIMonthAppointments(U[R])}}}else{for(var Q=0;Q<this._resources.length;Q++){var J=this._resources[Q];var h=new Array();var U=new Array();var g=A;var I=0;while(g<O){U[I]=new Array();for(var R=0;R<B.length;R++){var t=B[R];if(g<=t.from&&t.to<g.addDays(7)){t.row=-1;t.rowSpan=1;if(t.appointment.resourceId==J){U[I].push(t)}}}I++;g=g.addDays(7)}for(var R=0;R<U.length;R++){if(U[R].length>0){this._renderUIMonthAppointments(U[R])}}}}},_renderUIMonthAppointments:function(ag){var R=this._views[this._view];var C=ag;var w=this.getViewStart();var X=this.getViewEnd();var B=1;var T=this;B=this.getMaxMonthAppointments(ag);var h=T.appointmentsMinHeight;if(T.isTouchDevice()){h=T.touchAppointmentsMinHeight}if(R.appointmentHeight){h=R.appointmentHeight}for(var af=0;af<ag.length;af++){var g=ag[af];g.row=-1;var e=this.getCollisionAppointments(g,ag);e.sort(this._sortAppointmentsByFrom);var t=e.indexOf(g);if(t>=0){for(var aa=t;aa<e.length;aa++){e[aa].row=-1}}for(var ac=0;ac<B;ac++){var o=ac;for(var L in e){if(L=="indexOf"){break}var P=e[L];if(P.row==-1&&!this.isBusyRow(o,e)){P.row=o;var ad=B;var d=this.getMaxMonthAppointments(e);if(ad>d){ad=d}P.rowsCount=ad}}}}for(var ac=0;ac<C.length;ac++){var g=C[ac];var e=this.getCollisionAppointments(g,C);e.sort(this._sortAppointmentsByFrom);var n=1;for(var L in e){if(L=="indexOf"){break}var F=e[L];n=Math.max(n,F.rowsCount)}for(var L in e){if(L=="indexOf"){break}var F=e[L];F.rowsCount=n}if(e.length==1){g.rowSpan=n}else{var z=0;var f=true;for(var aa=g.row;aa<n;aa++){for(var L in e){if(L=="indexOf"){break}var P=e[L];if(P==g){continue}if(P.row==aa){f=false}}if(!f){break}z++}g.rowSpan=z}}for(var V=0;V<C.length;V++){var U=h;var g=C[V];g.height=U;var y=2+(3+U)*g.row;g.y=g.y+y;g.x+=1;g.width-=5}for(var V=0;V<C.length;V++){var ab=C[V];var E="";var G="auto";var R=this._views[this._view];var q=ab.appointment.from;var aj=ab.appointment.to;if(R.timeRuler&&R.timeRuler.formatString){G=R.timeRuler.formatString}var S=ab.appointment.background;var K=ab.appointment.subject?ab.appointment.subject:"(No Title)";var D=ab.appointment.color;var k=ab.appointment.resourceId;var Y=T.getColors(T._resources.indexOf(k));var Z=" data-resourceId='"+k+"' ";var O=ab.appointment.borderColor;var u=ab.appointment.location;if(u&&u.length>1){u=", "+u}if(!S){S=Y.background}if(!O){O=Y.border}if(!D){D=Y.color}var c=ab.appointment.isRecurrentAppointment();var s=ab.appointment.isException();var ae="";var v=T.toTP("jqx-scheduler-appointment-status");var J="";var I=T.statuses[ab.appointment.status];var l=false;if(I){if(I=="transparent"){l=false}else{J="<div style='background: "+I+"; border-right-color: "+O+"' class='"+v+"'></div>";if(I=="tentative"){v=T.toTP("jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");J="<div style='background-color: "+O+"; border-right-color: "+O+"' class='"+v+"'></div>"}l=true}}var A="";if(T.rtl){var v=T.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status");J="<div style='background: "+I+"; border-left-color: "+O+"' class='"+v+"'></div>";if(I=="tentative"){v=T.toTP("jqx-scheduler-appointment-status-rtl jqx-scheduler-appointment-status jqx-scheduler-appointment-status-stripes");J="<div style='background-color: "+O+"; border-left-color: "+O+"' class='"+v+"'></div>"}A=J;J=""}var N="";var H=K+u;if(T.renderAppointment){var ai=T.renderAppointment({appointment:ab.appointment.boundAppointment,textColor:D,background:S,borderColor:O,html:H,cssClass:"",style:"",width:ab.width,height:ab.height,view:T._views[T._view].type});if(ai){var E=ai.html;if(E!=H){H=E}D=ai.textColor;S=ai.background;O=ai.borderColor;if(ai.cssClass){N=ai.cssClass+" "}if(ai.style!=""){var Y=T.getAppointmentColors(ai.style);S=Y.background;O=Y.border;D=Y.color}}}if(ae===""){if(l){var ae="<div style='white-space:nowrap;' class='"+T.toTP("jqx-scheduler-appointment-content")+"'>"+J+"<div class='"+T.toTP("jqx-scheduler-appointment-inner-content")+"'>"+H+"</div>"+A+"</div>"}else{var ae="<div style='white-space:nowrap;' class='"+T.toTP("jqx-scheduler-appointment-content")+"'><div class='"+T.toTP("jqx-scheduler-appointment-inner-content")+"'>"+H+"</div></div>"}}var ah="";if(T.rtl){ah=T.toTP("jqx-rtl jqx-scheduler-appointment-rtl")+" "}if(s){var i=D.toLowerCase()=="white"?T.toTP("jqx-icon-recurrence-exception-white"):T.toTP("jqx-icon-recurrence-exception");E="<div data-key='"+ab.appointment.id+"'"+Z+"class='"+ah+N+T.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ab.x+"px; top: "+ab.y+"px; width: "+ab.width+"px; line-height: "+ab.height+"px; height: "+ab.height+"px; border-color:"+O+"; color:"+D+"; background:"+S+";'><div class='"+i+"'></div>"+ae+"<div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{if(c){var r=D.toLowerCase()=="white"?T.toTP("jqx-icon-recurrence-white"):T.toTP("jqx-icon-recurrence");E="<div data-key='"+ab.appointment.id+"'"+Z+"class='"+ah+N+T.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ab.x+"px; top: "+ab.y+"px; width: "+ab.width+"px; line-height: "+ab.height+"px; height: "+ab.height+"px; border-color:"+O+"; color:"+D+"; background:"+S+";'><div class='"+r+"'></div>"+ae+"<div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}else{E="<div data-key='"+ab.appointment.id+"'"+Z+"class='"+ah+N+T.toTP("jqx-scheduler-appointment jqx-rc-all")+"' style='position:absolute; z-index: 399; left: "+ab.x+"px; top: "+ab.y+"px; width: "+ab.width+"px; line-height: "+ab.height+"px; height: "+ab.height+"px; border-color:"+O+"; color:"+D+"; background:"+S+";'>"+ae+"<div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-left-resize-indicator")+"'></div><div class='"+T.toTP("jqx-scheduler-appointment-resize-indicator jqx-scheduler-appointment-right-resize-indicator")+"'></div>"}}var M=a(E);M.appendTo(this.table);ab.element=M;if(this.appointmentTooltips){if(!ab.appointment.tooltip){var Q=ab.appointment.subject;if(Q){var u=ab.appointment.location;if(u){Q+="\n"+u}M[0].setAttribute("title",Q)}}else{M[0].setAttribute("title",ab.appointment.tooltip)}}var W=false;a.each(ab.cells,function(){var m=a(this.cell);var j=m.position();if(!m[0].appointments){m[0].appointments=new Array()}m[0].appointments.push({ui:M,appointment:ab});if(ab.y+ab.height+2>=j.top+m.height()){M.css("visibility","hidden");var p=m.find(".jqx-icon-arrow-down");p.show();p[0].mousedown=function(){if(T.openedMonthCellPopup){T.openedMonthCellPopup.remove()}var ak=a("<div></div>");var ap=m.find("div").clone(true);ap.find("span").removeClass().addClass(T.toTP("jqx-icon-close"));ap.find("span")[0].mousedown=function(){ak.remove()};ap.addClass(T.toTP("jqx-widget-header"));ak.addClass(T.toTP("jqx-widget"));ak.addClass(T.toTP("jqx-window"));ak.addClass(T.toTP("jqx-scheduler-month-cell-popup"));ak.addClass(T.toTP("jqx-popup"));var an=a("<div></div>");ak.append(ap);ak.append(an);an.addClass(T.toTP("jqx-widget-content jqx-disableselect"));var am=m.width();var x=5+m.find("div").outerHeight();for(var al=0;al<m[0].appointments.length;al++){var ao=m[0].appointments[al].ui.clone(true);ao.css("left","3px");ao.css("top","0px");ao.css("margin-top","2px");ao.css("position","relative");ao.css("visibility","visible");ao.width(am-6);x+=ao.outerHeight()+4;an.append(ao)}ak.css("overflow","hidden");ak.css("position","absolute");ak.height(x);ak.width(am);ak.css("z-index","999999");ak.css("top",j.top);ak.css("left",j.left);T.table.append(ak);T.openedMonthCellPopup=ak}}})}},_sortByDate:function(c,f){var e=c.getAttribute("data-date");e=this._getDateByString(e);var d=f.getAttribute("data-date");d=this._getDateByString(d);if(e<d){return -1}if(e>d){return 1}if(e==d){return 0}},_sortAppointmentsByFrom:function(c,g){if(c.from==g.from){var e=c.to-c.from;var f=e*10000;var e=g.to-g.from;var d=e*10000;if(f>d){return -1}}if(c.from<g.from){return -1}if(c.from>g.from){return 1}if(c.from==g.from){return 0}},_sortAppointmentsByResourceId:function(c,g,f){var e=f._resources.indexOf(c.resourceId);var d=f._resources.indexOf(g.resourceId);if(e==d){return 0}if(e<d){return -1}if(e>d){return -1}},isBusyRow:function(f,e){for(var d=0;d<e.length;d++){var c=e[d];if(c.row==f){return true}}return false},isBusyColumn:function(f,e){for(var d=0;d<e.length;d++){var c=e[d];if(c.column==f){return true}}return false},getMaxTimelineAppointments:function(d,t,g,f){if(d.length==0){return 1}var j=this;var u=j._views[j._view].type;var k=j._views[j._view];var l=1;var n=g;var v=f;var r=this.getMinutesPerScale();var o=null;var s=null;var x="";for(var h in d){if(h=="indexOf"){break}var e=d[h];if(!o){o=e.from}if(!s){s=e.to}o=Math.min(e.from,o);s=Math.max(e.to,s);x+=e.appointment.id}x+=o;x+=s;if(t[x]){return t[x]}o=new a.jqx.date(o,j.timeZone);s=new a.jqx.date(s,j.timeZone);var n=o;while(o<s){var q=n;if(u==="timelineMonthView"){var c=q.addDays(1)}else{var c=q.addMinutes(r)}var p=0;for(var h in d){if(h=="indexOf"){break}var e=d[h];var i=e.from;var w=e.to;var m=a.jqx.scheduler.utilities.rangeIntersection(q,c,i,w);if(m){p++}}l=Math.max(p,l);if(u==="timelineMonthView"){n=n.addDays(1,false)}else{n=n.addMinutes(r,false)}}t[x]=l;return l},getMaxMonthAppointments:function(h){var j=this._views[this._view].type;var m=this._views[this._view];if(h.length==0){return 1}var p=1;var i=this.getViewStart().clone();var f=this.getViewEnd();while(i<f){var k=i;var l=a.jqx.scheduler.utilities.getEndOfDay(k);var o=0;for(var g in h){if(g=="indexOf"){break}var c=h[g];var e=c.from;var d=c.to;var n=a.jqx.scheduler.utilities.rangeIntersection(k,l,e,d);if(n){o++}}p=Math.max(o,p);i=i.addDays(1,false)}return p},getMaxAllDayAppointments:function(f){var k=this._views[this._view].type;var m=this._views[this._view];var g=this;if(f.length==0){return 1}var o=function(s){var z=1;var t=g.getViewStart();var q=g.getViewEnd();while(t<q){var u=t;var v=a.jqx.scheduler.utilities.getEndOfDay(u);var y=0;for(var r in s){if(r=="indexOf"){break}var i=s[r];var w=i;if(i.appointment){w=i.appointment}if(w.hidden==true){continue}if(!w.duration){continue}if(w.allDay||w.duration().days()>=1){var p=i.from;var j=i.to;var x=a.jqx.scheduler.utilities.rangeIntersection(u,v,p,j);if(x){y++}}}z=Math.max(y,z);t=t.addDays(1,false)}return z};if(this._resources.length<2||(!this.resources.orientation||this.resources.orientation=="none")){var n=o(f)}else{var l=1;for(var d=0;d<this._resources.length;d++){var c=this._resources[d];var h=new Array();for(var e=0;e<f.length;e++){if(f[e].appointment&&f[e].appointment.resourceId==c){h.push(f[e])}else{if(f[e].resourceId!=undefined&&f[e].resourceId==c){h.push(f[e])}}}var n=o(h);l=Math.max(l,n)}n=l}return n},getMinutesPerScale:function(){var c=this._views[this._view].type;var e=this._views[this._view];var d=30;var f="halfHour";if(e.timeRuler&&e.timeRuler.scale){f=e.timeRuler.scale}switch(f){case"sixtyMinutes":case"hour":d=60;break;case"thirdyMinutes":case"halfHour":d=30;break;case"fifteenMinutes":case"quarterHour":d=15;break;case"tenMinutes":d=10;break;case"fiveMinutes":d=5;break}return d},getMaxColumnsInADay:function(l){var n=this._views[this._view].type;var q=this._views[this._view];var f=30;var d="halfHour";if(q.timeRuler&&q.timeRuler.scale){d=q.timeRuler.scale}switch(d){case"sixtyMinutes":case"hour":f=60;break;case"thirdyMinutes":case"halfHour":f=30;break;case"fifteenMinutes":case"quarterHour":f=15;break;case"tenMinutes":f=10;break;case"fiveMinutes":f=5;break}if(l.length==0){return 1}var e=1;var m=l[0].from.clone();var j=m.addMinutes(f);var i=a.jqx.scheduler.utilities.getEndOfDay(m);while(m<i){var p=m;var o=j;var s=0;for(var k in l){if(k=="indexOf"){break}var c=l[k];if(!c.from&&!c.to){continue}var h=c.from;var g=c.to;var r=a.jqx.scheduler.utilities.rangeIntersection(p,o,h,g);if(r){s++}}e=Math.max(s,e);m=m.addMinutes(f,false);j=j.addMinutes(f,false)}return e},getTouches:function(c){return a.jqx.mobile.getTouches(c)},_updatecolumnwidths:function(){var i=this;var k=this._hostWidth;var c=k;if(this.vScrollBar.css("visibility")!=="hidden"){k-=parseInt(this.scrollBarSize)+6;if(this.rtl){k+=3}c=k}var j="";if(this.columns==undefined||this.columns.records==undefined){return}var i=this;var h=false;a.each(this.columns.records,function(l,m){if(!(this.hidden)){if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){var m=0;var n=i.vScrollBar[0].style.visibility=="hidden"?0:i.scrollBarSize+5;m=parseFloat(this.width)*c/100;if(this._percentagewidth!=undefined){m=parseFloat(this._percentagewidth)*(c)/100}if(m<this.minwidth&&this.minwidth!="auto"){m=this.minwidth}if(m>this.maxwidth&&this.maxwidth!="auto"){m=this.maxwidth}k-=Math.round(m)}else{if(this.width!="auto"&&!this._width){k-=this.width}else{j+=this.text}}}});var f=this.columnsheader.find("#columntable"+this.element.id);if(f.length==0){return}var d=0;var g=f.find(".jqx-grid-column-header");var e=0;a.each(this.columns.records,function(o,t){var m=this.element;var w=false;var v=this.width;var q=this.width;if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){v=parseFloat(this._percentagewidth)*c/100}else{v=parseFloat(this.width)*c/100}v=Math.round(v);w=true}if(this.width!="auto"&&!this._width&&!w){if(parseInt(m[0].style.width)!=this.width){m.width(this.width)}}else{if(w){if(v<this.minwidth&&this.minwidth!="auto"){v=this.minwidth;this.width=v}if(v>this.maxwidth&&this.maxwidth!="auto"){v=this.maxwidth;this.width=v}if(parseInt(m[0].style.width)!=v){m.width(v);this.width=v}}else{var n=i.columns.records.length;var p=i._views[i._view].type;if(p==="dayView"||p==="weekView"){var r=i._views[i._view];if(r.timeRuler){if(r.timeRuler.timeZones){n-=r.timeRuler.timeZones.length}n--}else{n--}}var l=Math.floor(k*(1/n));if(i.resources&&i.resources.resourceColumnWidth&&i.resources.resourceColumnWidth!="auto"){l=i.resources.resourceColumnWidth}else{if(i.resources&&i.resources.resourceColumnWidth&&i.resources.resourceColumnWidth=="auto"){if(i.resources.orientation=="horizontal"){l=Math.round((2+k)*(1/i._getColumnsLengthPerView()))}}}var s=(k*(1/n))-l;d+=s;if(d>=1){d-=1;l++}if(d>=0.5&&o==i.columns.records.length-1){l++}if(l<0){var u=a("<span>"+this.text+"</span>");a(document.body).append(u);l=10+u.width();u.remove()}if(l<this.minwidth){l=this.minwidth}if(l>this.maxwidth){l=this.maxwidth}this._width="auto";this.width=l;m.width(this.width)}}if(parseInt(m[0].style.left)!=e){m.css("left",e)}if(!(this.hidden)){e+=this.width}this._requirewidthupdate=true;if(q!==this.width){h=true}});this.columnsheader.width(2+e);f.width(this.columnsheader.width());this._resizecolumnGroups();if(h){this._renderrows()}},_rendercolumnheaders:function(){var h=this;if(this._updating){return}var m=this._views[this._view];this._columnsbydatafield=new Array();this.columnsheader.find("#columntable"+this.element.id).remove();var i=a('<div id="columntable'+this.element.id+'" style="height: 100%; position: relative;"></div>');i[0].cells=new Array();var s=0;var e=0;var o="";var q=this._hostWidth;if(!q){this._hostWidth=this.host.width()}var v=this._hostWidth;var n=v;var w=this.getRows().length;var u=this.rowsHeight;if(this.isTouchDevice()){u=this.touchRowsHeight}if(w*u>this.host.height()){this.vScrollBar[0].style.visibility="inherit"}if(this.vScrollBar.css("visibility")!=="hidden"){v-=parseInt(this.scrollBarSize)+6;if(this.rtl){v+=3}n=v}var r=new Array();a.each(this.columns.records,function(j,k){if(!(this.hidden)){if(this.width!="auto"&&!this._width){if(this.width<this.minwidth&&this.minwidth!="auto"){v-=this.minwidth}else{if(this.width>this.maxwidth&&this.maxwidth!="auto"){v-=this.maxwidth}else{if(this.width.toString().indexOf("%")!=-1){var k=0;k=parseFloat(this.width)*n/100;if(k<this.minwidth&&this.minwidth!="auto"){k=this.minwidth}if(k>this.maxwidth&&this.maxwidth!="auto"){k=this.maxwidth}v-=k}else{if(typeof this.width=="string"){this.width=parseInt(this.width)}v-=this.width}}}}else{o+=this.text}}r[r.length]=this});if(this.rtl){for(var t=0;t<r.length;t++){this.columns.replace(t,r[t])}}var g=this.headerZIndex;var l=0;var f=h.columnsHeight;var c=function(k,x){var j=h.columnGroupslevel*h.columnsHeight;j=j-(x.level*h.columnsHeight);return j};var p=0;var d=document.createDocumentFragment();a.each(this.columns.records,function(D,I){this.height=h.columnsHeight;if(h.columnGroups){if(h.columnGroups.length){this.height=c(this.datafield,this);f=this.height}}var y=h.toTP("jqx-grid-column-header")+" "+h.toTP("jqx-widget-header");if(h.rtl){y+=" "+h.toTP("jqx-grid-column-header-rtl")}if(!h.enableBrowserSelection){y+=" "+h.toTP("jqx-disableselect")}var E=!h.rtl?g--:g++;var k=document.createElement("div");k.setAttribute("role","columnheader");k.style.position="absolute";k.style.zIndex=E;k.style.height="100%";k.className=y;var z=a(k);if(h.rtl&&D===0){z[0].style.borderLeftColor="transparent"}if(h.columnGroups){z[0].style.height=f+"px";z[0].style.bottom="0px"}else{if(!this.timeColumn){z[0].style.height=-1+f+"px"}}this.uielement=z;this.element=z;if(this.classname!=""&&this.classname){z.addClass(this.classname)}var J=this.width;var K=false;if(this.width===null){this.width="auto"}if(this.width.toString().indexOf("%")!=-1||this._percentagewidth!=undefined){if(this._percentagewidth!=undefined){J=parseFloat(this._percentagewidth)*n/100}else{J=parseFloat(this.width)*n/100}J=Math.round(J);K=true}if(this.width!="auto"&&!this._width&&!K){if(J<this.minwidth&&this.minwidth!="auto"){J=this.minwidth}if(J>this.maxwidth&&this.maxwidth!="auto"){J=this.maxwidth}z[0].style.width=parseInt(J)+"px"}else{if(K){if(J<this.minwidth&&this.minwidth!="auto"){J=this.minwidth}if(J>this.maxwidth&&this.maxwidth!="auto"){J=this.maxwidth}if(this._percentagewidth==undefined||this.width.toString().indexOf("%")!=-1){this._percentagewidth=this.width}z.width(J);this.width=J}else{var A=h.columns.records.length;var C=h._views[h._view].type;if(C==="dayView"||C==="weekView"){var G=h._views[h._view];if(G.timeRuler){if(G.timeRuler.timeZones){A-=G.timeRuler.timeZones.length}A--}else{A--}}var j=Math.floor(v*(1/A));if(h.resources&&h.resources.resourceColumnWidth&&h.resources.resourceColumnWidth!="auto"){j=h.resources.resourceColumnWidth}else{if(h.resources&&h.resources.resourceColumnWidth&&h.resources.resourceColumnWidth=="auto"){if(h.resources.orientation=="horizontal"){j=Math.round((2+v)*(1/h._getColumnsLengthPerView()))}}}var H=(v*(1/A))-j;p+=H;if(p>=1){p-=1;j++}if(p>=0.5&&D==h.columns.records.length-1){j++}if(isNaN(j)){j=this.minwidth}if(j<0){$element=a("<span>"+this.text+"</span>");a(document.body).append($element);j=10+$element.width();$element.remove()}if(j<this.minwidth){j=this.minwidth}if(j>this.maxwidth){j=this.maxwidth}this._width="auto";this.width=parseInt(j);J=this.width;z.width(this.width)}}if(this.timeColumn){z.css("border-bottom-color","transparent");if(m.timeRuler&&m.timeRuler.timeZones){if(D<m.timeRuler.timeZones.length){z.css("border-right-color","transparent")}}if(this.tableRows==1){z.addClass(h.toTP("jqx-scheduler-time-column"))}}if(this.hidden){z.css("display","none")}var x=a(z.children()[0]);i[0].cells[D]=z[0];var B=h._rendercolumnheader(this.text,this.align,f,h);z[0].innerHTML=B;d.appendChild(z[0]);var F=this;z[0].style.left=e+"px";if(!(this.hidden)){e+=J}});i[0].appendChild(d);if(e>0){this.columnsheader[0].style.width=2+e+"px"}else{this.columnsheader[0].style.width=e+"px"}this._columnswidth=e;this.columnsrow=i;h.columnsheader.append(i);i[0].style.width=e+"px";if(this.columnGroups){this._rendercolumnGroups()}},_rendercolumnGroups:function(){if(!this.columnGroups){return}var s=this.headerZIndex+this.columns.records.length;var n=this;var g=n.toTP("jqx-grid-column-header")+" "+n.toTP("jqx-grid-columngroup-header")+" "+n.toTP("jqx-widget-header");if(n.rtl){g+=" "+n.toTP("jqx-grid-columngroup-header-rtl")}var e=this.columnsheader.find("#columntable"+this.element.id);e.find("jqx-grid-columngroup-header").remove();for(var h=0;h<this.columnGroupslevel-1;h++){for(var l=0;l<this.columnGroups.length;l++){var p=this.columnGroups[l];var c=p.level;if(c!==h){continue}var o=c*this.columnsHeight;var d=99999;if(p.groups){var r=function(v){var u=0;for(var t=0;t<v.groups.length;t++){var i=v.groups[t];if(!i.groups){if(!i.hidden){u+=i.width;d=Math.min(parseInt(i.element[0].style.left),d)}}else{u+=r(i)}}return u};p.width=r(p);p.left=d;var q=this.columnsHeight;var m=s--;var f=a('<div role="columnheader" style="z-index: '+m+';position: absolute;" class="'+g+'"></div>');var k=a(this._rendercolumnheader(p.text,p.align,this.columnsHeight,this));if(p.renderer){p.renderer(f,p.text)}f.append(k);f[0].style.left=d+"px";if(d===0){f[0].style.borderLeftColor="transparent"}f[0].style.top=o+"px";f[0].style.height=q+"px";f[0].style.width=-1+p.width+"px";e.append(f);p.element=f}}}},_resizecolumnGroups:function(){if(!this.columnGroups){return}for(var d=0;d<this.columnGroups.length;d++){var j=this.columnGroups[d];var k=j.level;var h=k*this.columnsHeight;var g=99999;if(j.groups){var f=function(n){var m=0;for(var l=0;l<n.groups.length;l++){var i=n.groups[l];if(!i.groups){m+=i.width;g=Math.min(parseInt(i.element[0].style.left),g)}else{m+=f(i)}}return m};j.width=f(j);j.left=g;var c=this.columnsHeight;var e=j.element;e[0].style.left=g+"px";e[0].style.top=h+"px";e[0].style.height=c+"px";e[0].style.width=-1+j.width+"px"}}},_removecolumnhandlers:function(f){var d=this;var c=a(f.element);if(c.length>0){d.removeHandler(c,"mouseenter");d.removeHandler(c,"mouseleave");var e=a(f.filtericon);d.removeHandler(e,"mousedown");d.removeHandler(e,"click");d.removeHandler(c,"click")}},destroy:function(){var c=this;c._removeHandlers();if(c.editDialog){c.editDialog.jqxWindow("destroy")}if(c.menu){c.menu.jqxMenu("destroy")}c.editRecurrenceDialog.jqxWindow("destroy");c.vScrollBar.jqxScrollBar("destroy");c.hScrollBar.jqxScrollBar("destroy");delete c.vScrollBar;delete c.hScrollBar;delete c._mousewheelfunc;a.jqx.utilities.resize(c.host,null,true);c.host.remove()},propertyChangedHandler:function(c,d,f,e){if(this.isInitialized==undefined||this.isInitialized==false){return}if(e!==f){if(d=="filterable"){c._render()}else{if(d==="height"){c.host.height(c.height);c.host.width(c.width);c._updatesize(false,true)}else{if(d==="width"){c.host.height(c.height);c.host.width(c.width);c._updatesize(true,false)}else{if(d==="source"){c.updateBoundData()}else{if(d=="resources"){c.updateBoundData()}else{if(d==="columns"||d==="columnGroups"){c._columns=null;c._render()}else{if(d==="selectionMode"){c.selectionMode=e.toLowerCase()}else{if(d=="touchMode"){c._removeHandlers();c.touchDevice=null;c.vScrollBar.jqxScrollBar({touchMode:e});c.hScrollBar.jqxScrollBar({touchMode:e});c.refresh();c._addHandlers()}else{if(d=="enableHover"){return}else{if(d=="disabled"){if(e){c.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{c.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}c.host.find(".jqx-grid-group-collapse").css("cursor",e?"default":"pointer");c.host.find(".jqx-grid-group-expand").css("cursor",e?"default":"pointer")}else{if(d=="columnsHeight"){c._render()}else{if(d=="theme"){a.jqx.utilities.setTheme(f,e,c.host);if(c.editDialog){a.jqx.utilities.setTheme(f,e,c.editDialog)}if(c.editRecurrenceDialog){a.jqx.utilities.setTheme(f,e,c.editRecurrenceDialog)}if(c.menu){c.menu.jqxMenu({theme:c.theme})}c.vScrollBar.jqxScrollBar({theme:c.theme});c.hScrollBar.jqxScrollBar({theme:c.theme});c.refresh()}else{c.refresh()}}}}}}}}}}}}}},_rendercolumnheader:function(h,i,e,f){var g="4px";if(f.columnGroups){g=(e/2-this._columnheight/2);if(g<0){g=4}g+="px"}else{if(this.columnsHeight!=25){g=(this.columnsHeight/2-this._columnheight/2);if(g<0){g=4}g+="px"}}var d='<div style="overflow: hidden; text-overflow: ellipsis; text-align: '+i+"; margin-left: 4px; margin-right: 4px; margin-bottom: "+g+"; margin-top: "+g+';"><span style="text-overflow: ellipsis; cursor: default;">'+h+"</span></div>";if(this.columnRenderer){var c=this.columnRenderer(h,i,e,d);if(c!=undefined){return c}}return d}});function b(c,d){this.owner=c;this.datafield=null;this.displayfield=null;this.text="";this.sortable=true;this.editable=true;this.hidden=false;this.hideable=true;this.groupable=true;this.renderer=null;this.cellsRenderer=null;this.columntype=null;this.cellsFormat="";this.align="center";this.cellsalign="center";this.width="auto";this.minwidth=60;this.maxwidth="auto";this.pinned=false;this.visibleindex=-1;this.filterable=true;this.filter=null;this.resizable=true;this.draggable=true;this.initeditor=null;this.createeditor=null;this.destroyeditor=null;this.geteditorvalue=null;this.autoCellHeight=true;this.validation=null;this.classname="";this.cellclassname="";this.rendered=null;this.exportable=true;this.nullable=true;this.columngroup=null;this.columntype="textbox";this.getcolumnproperties=function(){return{nullable:this.nullable,sortable:this.sortable,hidden:this.hidden,groupable:this.groupable,width:this.width,align:this.align,editable:this.editable,minwidth:this.minwidth,maxwidth:this.maxwidth,resizable:this.resizable,datafield:this.datafield,text:this.text,exportable:this.exportable,cellsalign:this.cellsalign,pinned:this.pinned,cellsFormat:this.cellsFormat,columntype:this.columntype,classname:this.classname,cellclassname:this.cellclassname,menu:this.menu}},this.setproperty=function(e,f){if(this[e]){var g=this[e];this[e]=f;this.owner._columnPropertyChanged(this,e,f,g)}else{if(this[e.toLowerCase()]){var g=this[e.toLowerCase()];this[e.toLowerCase()]=f;this.owner._columnPropertyChanged(this,e.toLowerCase(),f,g)}}};this._initfields=function(f){if(f!=null){var e=this;if(a.jqx.hasProperty(f,"dataField")){this.datafield=a.jqx.get(f,"dataField")}if(a.jqx.hasProperty(f,"displayField")){this.displayfield=a.jqx.get(f,"displayField")}else{this.displayfield=this.datafield}if(a.jqx.hasProperty(f,"columnType")){this.columntype=a.jqx.get(f,"columnType")}if(a.jqx.hasProperty(f,"validation")){this.validation=a.jqx.get(f,"validation")}if(a.jqx.hasProperty(f,"autoCellHeight")){this.autoCellHeight=a.jqx.get(f,"autoCellHeight")}if(a.jqx.hasProperty(f,"text")){this.text=a.jqx.get(f,"text")}else{this.text=this.displayfield}if(a.jqx.hasProperty(f,"sortable")){this.sortable=a.jqx.get(f,"sortable")}if(a.jqx.hasProperty(f,"hidden")){this.hidden=a.jqx.get(f,"hidden")}if(a.jqx.hasProperty(f,"groupable")){this.groupable=a.jqx.get(f,"groupable")}if(a.jqx.hasProperty(f,"renderer")){this.renderer=a.jqx.get(f,"renderer")}if(a.jqx.hasProperty(f,"align")){this.align=a.jqx.get(f,"align")}if(a.jqx.hasProperty(f,"cellsAlign")){this.cellsalign=a.jqx.get(f,"cellsAlign")}if(a.jqx.hasProperty(f,"cellsFormat")){this.cellsFormat=a.jqx.get(f,"cellsFormat")}if(a.jqx.hasProperty(f,"width")){this.width=a.jqx.get(f,"width")}if(a.jqx.hasProperty(f,"minWidth")){this.minwidth=a.jqx.get(f,"minWidth")}if(a.jqx.hasProperty(f,"maxWidth")){this.maxwidth=a.jqx.get(f,"maxWidth")}if(a.jqx.hasProperty(f,"cellsRenderer")){this.cellsRenderer=a.jqx.get(f,"cellsRenderer")}if(a.jqx.hasProperty(f,"columnType")){this.columntype=a.jqx.get(f,"columnType")}if(a.jqx.hasProperty(f,"pinned")){this.pinned=a.jqx.get(f,"pinned")}if(a.jqx.hasProperty(f,"filterable")){this.filterable=a.jqx.get(f,"filterable")}if(a.jqx.hasProperty(f,"filter")){this.filter=a.jqx.get(f,"filter")}if(a.jqx.hasProperty(f,"resizable")){this.resizable=a.jqx.get(f,"resizable")}if(a.jqx.hasProperty(f,"draggable")){this.draggable=a.jqx.get(f,"draggable")}if(a.jqx.hasProperty(f,"editable")){this.editable=a.jqx.get(f,"editable")}if(a.jqx.hasProperty(f,"initEditor")){this.initeditor=a.jqx.get(f,"initEditor")}if(a.jqx.hasProperty(f,"createEditor")){this.createeditor=a.jqx.get(f,"createEditor")}if(a.jqx.hasProperty(f,"destroyEditor")){this.destroyeditor=a.jqx.get(f,"destroyEditor")}if(a.jqx.hasProperty(f,"getEditorValue")){this.geteditorvalue=a.jqx.get(f,"getEditorValue")}if(a.jqx.hasProperty(f,"className")){this.classname=a.jqx.get(f,"className")}if(a.jqx.hasProperty(f,"cellClassName")){this.cellclassname=a.jqx.get(f,"cellClassName")}if(a.jqx.hasProperty(f,"rendered")){this.rendered=a.jqx.get(f,"rendered")}if(a.jqx.hasProperty(f,"exportable")){this.exportable=a.jqx.get(f,"exportable")}if(a.jqx.hasProperty(f,"nullable")){this.nullable=a.jqx.get(f,"nullable")}if(a.jqx.hasProperty(f,"columnGroup")){this.columngroup=a.jqx.get(f,"columnGroup")}if(!f instanceof String&&!(typeof f=="string")){for(var g in f){if(!e.hasOwnProperty(g)){if(!e.hasOwnProperty(g.toLowerCase())){c.host.remove();throw new Error("jqxScheduler: Invalid property name - "+g+".")}}}}}};this._initfields(d);return this}a.jqx.dataCollection=function(c){this.records=new Array();this.owner=c;this.updating=false;this.beginUpdate=function(){this.updating=true};this.resumeupdate=function(){this.updating=false};this.clear=function(){this.records=new Array()};this.replace=function(e,d){this.records[e]=d};this.isempty=function(d){if(this.records[d]==undefined){return true}return false};this.initialize=function(d){if(d<1){d=1}this.records[d-1]=-1};this.length=function(){return this.records.length};this.indexOf=function(d){return this.records.indexOf(d)};this.add=function(d){if(d==null){return false}this.records[this.records.length]=d;return true};this.insertAt=function(e,d){if(e==null||e==undefined){return false}if(d==null){return false}if(e>=0){if(e<this.records.length){this.records.splice(e,0,d);return true}else{return this.add(d)}}return false};this.remove=function(e){if(e==null||e==undefined){return false}var d=this.records.indexOf(e);if(d!=-1){this.records.splice(d,1);return true}return false};this.removeAt=function(e){if(e==null||e==undefined){return false}if(e<0){return false}if(e<this.records.length){var d=this.records[e];this.records.splice(e,1);return true}return false};return this};a.jqx.scheduler.dataView=function(c){this.that=this;this.scheduler=null;this.records=[];this.rows=[];this.columns=[];this.filters=new Array();this.pagesize=0;this.pagenum=0;this.source=null;this.databind=function(q,l){var g=this;if(a.isArray(q)){g.update(q);return}var p=q._source?true:false;var f=null;this._sortData=null;this._sortHierarchyData=null;if(p){f=q;q=q._source}else{f=new a.jqx.dataAdapter(q,{autoBind:false})}var d=function(m){f.recordids=[];f.records=new Array();f.cachedrecords=new Array();f.originaldata=new Array();f._options.totalrecords=m.totalrecords;f._options.originaldata=m.originaldata;f._options.recordids=m.recordids;f._options.cachedrecords=new Array();f._options.pagenum=m.pagenum;f._options.pageable=m.pageable;if(q.type!=undefined){f._options.type=q.type}if(q.formatdata!=undefined){f._options.formatData=q.formatdata}if(q.contenttype!=undefined){f._options.contentType=q.contenttype}if(q.async!=undefined){f._options.async=q.async}if(q.updaterow!=undefined){f._options.updaterow=q.updaterow}if(q.addrow!=undefined){f._options.addrow=q.addrow}if(q.deleterow!=undefined){f._options.deleterow=q.deleterow}if(m.pagesize==0){m.pagesize=10}f._options.pagesize=m.pagesize};var s=function(m){m.originaldata=f.originaldata;m.records=f.records;m.hierarchy=f.hierarchy;if(!m.scheduler.serverProcessing){m._sortData=null;m._sortfield=null;m._filteredData=null;m._sortHierarchyData=null}if(!m.hierarchy){m.hierarchy=new Array();f.hierarchy=new Array()}if(f._source.totalrecords){m.totalrecords=f._source.totalrecords}else{if(f._source.totalRecords){m.totalrecords=f._source.totalRecords}else{if(m.hierarchy.length!==0){m.totalrecords=m.hierarchy.length}else{m.totalrecords=m.records.length}}}m.cachedrecords=f.cachedrecords};d(this);this.source=q;if(l!==undefined){uniqueId=l}var g=this;switch(q.datatype){case"local":case"array":default:if(q.localdata==null){q.localdata=[]}if(q.localdata!=null){f.unbindBindingUpdate(c+g.scheduler.element.id);if((!g.scheduler.autoBind&&g.scheduler.isInitialized)||g.scheduler.autoBind){f.dataBind()}var k=function(){s(g);g.update(f.records)};k();f.bindBindingUpdate(c+g.scheduler.element.id,k)}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(q.localdata!=null){f.unbindBindingUpdate(c+g.scheduler.element.id);if((!g.scheduler.autoBind&&g.scheduler.isInitialized)||g.scheduler.autoBind){f.dataBind()}var k=function(m){s(g);g.update(f.records)};k();f.bindBindingUpdate(c+g.scheduler.element.id,k);return}var t={};var o=0;var u={};for(var i=0;i<this.filters.length;i++){var e=this.filters[i].datafield;var j=this.filters[i].filter;var h=j.getfilters();u[e+"operator"]=j.operator;for(var r=0;r<h.length;r++){h[r].datafield=e;var n=h[r].value;u["filtervalue"+o]=n.toString();u["filtercondition"+o]=h[r].condition;u["filteroperator"+o]=h[r].operator;u["filterdatafield"+o]=e;o++}}u.filterslength=o;a.extend(u,{sortdatafield:g.sortfield,sortorder:g.sortfielddirection,pagenum:g.pagenum,pagesize:g.scheduler.pageSize});var v=f._options.data;if(f._options.data){a.extend(f._options.data,u)}else{if(q.data){a.extend(u,q.data)}f._options.data=u}var k=function(){var w=a.jqx.browser.msie&&a.jqx.browser.version<9;var x=function(){s(g);g.update(q.records)};if(w){try{x()}catch(m){}}else{x()}};f.unbindDownloadComplete(c+g.scheduler.element.id);f.bindDownloadComplete(c+g.scheduler.element.id,k);f._source.loaderror=function(x,m,w){k()};if((!g.scheduler.autoBind&&g.scheduler.isInitialized)||g.scheduler.autoBind){f.dataBind()}f._options.data=v}};this.addFilter=function(g,f){this._sortData=null;this._sortHierarchyData=null;var e=-1;for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==g){e=d;break}}if(e==-1){this.filters[this.filters.length]={filter:f,datafield:g}}else{this.filters[e]={filter:f,datafield:g}}};this.removeFilter=function(e){this._sortData=null;this._sortHierarchyData=null;for(var d=0;d<this.filters.length;d++){if(this.filters[d].datafield==e){this.filters.splice(d,1);break}}};this._compare=function(e,d,g){var e=e;var d=d;if(e===undefined){e=null}if(d===undefined){d=null}if(e===null&&d===null){return 0}if(e===null&&d!==null){return 1}if(e!==null&&d===null){return 1}e=e.toString();d=d.toString();if(a.jqx.dataFormat){if(g&&g!=""){switch(g){case"number":case"int":case"float":if(e<d){return -1}if(e>d){return 1}return 0;case"date":case"time":if(e<d){return -1}if(e>d){return 1}return 0;case"string":case"text":e=String(e).toLowerCase();d=String(d).toLowerCase();break}}else{if(a.jqx.dataFormat.isNumber(e)&&a.jqx.dataFormat.isNumber(d)){if(e<d){return -1}if(e>d){return 1}return 0}else{if(a.jqx.dataFormat.isDate(e)&&a.jqx.dataFormat.isDate(d)){if(e<d){return -1}if(e>d){return 1}return 0}else{if(!a.jqx.dataFormat.isNumber(e)&&!a.jqx.dataFormat.isNumber(d)){e=String(e).toLowerCase();d=String(d).toLowerCase()}}}}}try{if(e<d){return -1}if(e>d){return 1}}catch(f){var h=f}return 0};this._equals=function(e,d){return(this._compare(e,d)===0)};this.evaluate=function(m){if(this.scheduler.serverProcessing){return m}var d=new Array();if(this.filters.length){var g=new Array();var l=function(p,t){for(var r=0;r<p.length;r++){var s=p[r];s._visible=true;var n=undefined;for(var q=0;q<this.filters.length;q++){var o=this.filters[q].filter;var u=s[this.filters[q].datafield];var v=o.evaluate(u);if(n==undefined){n=v}else{if(o.operator=="or"){n=n||v}else{n=n&&v}}}s._visible=false;if(n||s.aggregate){s._visible=true;t.push(s);g[s.uid]=s}}};if(!this._filteredData){if(this.source.hierarchy||(this.scheduler.source.hierarchy&&this.scheduler.source.hierarchy.length>0)){var k=new Array();var h=function(o,p){for(var n=0;n<p.length;n++){var q=p[n];k.push(q);if(q.records&&q.records.length>0){h(q,q.records)}}};h(null,m);l.call(this,k,d);for(var e=0;e<d.length;e++){var f=d[e];while(f.parent){var j=f.parent;if(!g[j.uid]){j._visible=true;g[j.uid]=j}f=j}}d=m}else{l.call(this,m,d)}this._filteredData=d;this.rows=d}else{this.rows=this._filteredData}}else{this.rows=m}return this.rows};this.getid=function(k,e,f){if(a(k,e).length>0){return a(k,e).text()}if(this.rows&&k!=""&&k!=undefined&&this.rows.length>0){var j=this.rows[this.rows.length-1][k];if(j==null){j=null}for(var g=1;g<=100;g++){var h=this.scheduler.appointmentsByKey[g+j];if(!h){if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){var h=this.scheduler.appointmentsByKey["jqx"+j+g];if(h){continue}return"jqx"+j+g}return j+g}}}if(k!=undefined){if(k.toString().length>0){var d=a(e).attr(k);if(d!=null&&d.toString().length>0){if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){return"jqx"+d}return d}}}if(this.rows&&this.rows.length>0){var h=this.scheduler.appointmentsByKey[f];if(h){var j=this.rows[this.rows.length-1][k];if(j==null){j=""}for(var g=1;g<=1000;g++){var h=this.scheduler.appointmentsByKey[g+j];if(!h){if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){var h=this.scheduler.appointmentsByKey["jqx"+j+g];if(h){continue}return"jqx"+j+g}return j+g}}}}if(this.scheduler&&this.scheduler.treeGrid&&this.scheduler.treescheduler.virtualModeCreateRecords){var h=this.scheduler.appointmentsByKey["jqx"+f];if(!h){return"jqx"+f}else{for(var g=f+1;g<=100;g++){var h=this.scheduler.appointmentsByKey["jqx"+g];if(!h){var h=this.scheduler.appointmentsByKey["jqx"+g];if(h){continue}return"jqx"+g}}}}return f};this.generatekey=function(){var d=function(){return(((1+Math.random())*16)|0)};return(""+d()+d()+"-"+d()+"-"+d()+"-"+d()+"-"+d())};return this}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxscrollbar.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxscrollbar.js
new file mode 100644 (file)
index 0000000..ed6eb72
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxScrollBar","",{});a.extend(a.jqx._jqxScrollBar.prototype,{defineInstance:function(){var b={height:null,width:null,vertical:false,min:0,max:1000,value:0,step:10,largestep:50,thumbMinSize:10,thumbSize:0,thumbStep:"auto",roundedCorners:"all",showButtons:true,disabled:false,touchMode:"auto",touchModeStyle:"auto",thumbTouchSize:0,_triggervaluechanged:true,rtl:false,areaDownCapture:false,areaUpCapture:false,_initialLayout:false};a.extend(true,this,b);return b},createInstance:function(b){this.render()},render:function(){this._mouseup=new Date();var c=this;var d="<div id='jqxScrollOuterWrap' style='box-sizing: content-box; width:100%; height: 100%; align:left; border: 0px; valign:top; position: relative;'><div id='jqxScrollWrap' style='box-sizing: content-box; width:100%; height: 100%; left: 0px; top: 0px; align:left; valign:top; position: absolute;'><div id='jqxScrollBtnUp' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'><div></div></div><div id='jqxScrollAreaUp' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='jqxScrollThumb' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='jqxScrollAreaDown' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'></div><div id='jqxScrollBtnDown' style='box-sizing: content-box; align:left; valign:top; left: 0px; top: 0px; position: absolute;'><div></div></div></div></div>";if(a.jqx.utilities&&a.jqx.utilities.scrollBarButtonsVisibility=="hidden"){this.showButtons=false}if(c.WinJS){MSApp.execUnsafeLocalFunction(function(){c.host.html(d)})}else{this.element.innerHTML=d}if(this.width!=undefined&&parseInt(this.width)>0){this.host.width(parseInt(this.width))}if(this.height!=undefined&&parseInt(this.height)>0){this.host.height(parseInt(this.height))}this.isPercentage=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width);this.isPercentage=true}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height);this.isPercentage=true}if(this.isPercentage){var e=this;a.jqx.utilities.resize(this.host,function(){e._arrange()},false)}this.thumbCapture=false;this.scrollOuterWrap=a(this.element.firstChild);this.scrollWrap=a(this.scrollOuterWrap[0].firstChild);this.btnUp=a(this.scrollWrap[0].firstChild);this.areaUp=a(this.btnUp[0].nextSibling);this.btnThumb=a(this.areaUp[0].nextSibling);this.arrowUp=a(this.btnUp[0].firstChild);this.areaDown=a(this.btnThumb[0].nextSibling);this.btnDown=a(this.areaDown[0].nextSibling);this.arrowDown=a(this.btnDown[0].firstChild);var b=this.element.id;this.btnUp[0].id="jqxScrollBtnUp"+b;this.btnDown[0].id="jqxScrollBtnDown"+b;this.btnThumb[0].id="jqxScrollThumb"+b;this.areaUp[0].id="jqxScrollAreaUp"+b;this.areaDown[0].id="jqxScrollAreaDown"+b;this.scrollWrap[0].id="jqxScrollWrap"+b;this.scrollOuterWrap[0].id="jqxScrollOuterWrap"+b;if(!this.host.jqxRepeatButton){throw new Error("jqxScrollBar: Missing reference to jqxbuttons.js.");return}this.btnUp.jqxRepeatButton({_ariaDisabled:true,overrideTheme:true,disabled:this.disabled});this.btnDown.jqxRepeatButton({_ariaDisabled:true,overrideTheme:true,disabled:this.disabled});this.btnDownInstance=a.data(this.btnDown[0],"jqxRepeatButton").instance;this.btnUpInstance=a.data(this.btnUp[0],"jqxRepeatButton").instance;this.areaUp.jqxRepeatButton({_scrollAreaButton:true,_ariaDisabled:true,overrideTheme:true});this.areaDown.jqxRepeatButton({_scrollAreaButton:true,_ariaDisabled:true,overrideTheme:true});this.btnThumb.jqxButton({_ariaDisabled:true,overrideTheme:true,disabled:this.disabled});this.propertyChangeMap.value=function(f,h,g,i){if(!(isNaN(i))){if(g!=i){f.setPosition(parseFloat(i),true)}}};this.propertyChangeMap.width=function(f,h,g,i){if(f.width!=undefined&&parseInt(f.width)>0){f.host.width(parseInt(f.width));f._arrange()}};this.propertyChangeMap.height=function(f,h,g,i){if(f.height!=undefined&&parseInt(f.height)>0){f.host.height(parseInt(f.height));f._arrange()}};this.propertyChangeMap.theme=function(f,h,g,i){f.setTheme()};this.propertyChangeMap.max=function(f,h,g,i){if(!(isNaN(i))){if(g!=i){f.max=parseInt(i);if(f.min>f.max){f.max=f.min+1}f._arrange();f.setPosition(f.value)}}};this.propertyChangeMap.min=function(f,h,g,i){if(!(isNaN(i))){if(g!=i){f.min=parseInt(i);if(f.min>f.max){f.max=f.min+1}f._arrange();f.setPosition(f.value)}}};this.propertyChangeMap.disabled=function(f,h,g,i){if(g!=i){if(i){f.host.addClass(f.toThemeProperty("jqx-fill-state-disabled"))}else{f.host.removeClass(f.toThemeProperty("jqx-fill-state-disabled"))}f.btnUp.jqxRepeatButton("disabled",f.disabled);f.btnDown.jqxRepeatButton("disabled",f.disabled);f.btnThumb.jqxButton("disabled",f.disabled)}};this.propertyChangeMap.touchMode=function(f,h,g,i){if(g!=i){f._updateTouchBehavior();if(i===true){f.showButtons=false;f.refresh()}else{if(i===false){f.showButtons=true;f.refresh()}}}};this.propertyChangeMap.rtl=function(f,h,g,i){if(g!=i){f.refresh()}};this.buttonUpCapture=false;this.buttonDownCapture=false;this._updateTouchBehavior();this.setPosition(this.value);this._addHandlers();this.setTheme()},resize:function(c,b){this.width=c;this.height=b;this._arrange()},_updateTouchBehavior:function(){this.isTouchDevice=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){if(a.jqx.browser.msie&&a.jqx.browser.version<9){this.setTheme();return}this.isTouchDevice=true;a.jqx.mobile.setMobileSimulator(this.btnThumb[0]);this._removeHandlers();this._addHandlers();this.setTheme()}else{if(this.touchMode==false){this.isTouchDevice=false}}},_addHandlers:function(){var j=this;var e=false;try{if(("ontouchstart" in window)||window.DocumentTouch&&document instanceof DocumentTouch){e=true;this._touchSupport=true}}catch(f){}if(j.isTouchDevice||e){this.addHandler(this.btnThumb,a.jqx.mobile.getTouchEventName("touchend"),function(k){var l=j.vertical?j.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):j.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");var m=j.toThemeProperty("jqx-fill-state-pressed");j.btnThumb.removeClass(l);j.btnThumb.removeClass(m);if(!j.disabled){j.handlemouseup(j,k)}return false});this.addHandler(this.btnThumb,a.jqx.mobile.getTouchEventName("touchstart"),function(k){if(!j.disabled){if(j.touchMode==true){k.clientX=k.originalEvent.clientX;k.clientY=k.originalEvent.clientY}else{var l=k;if(l.originalEvent.touches&&l.originalEvent.touches.length){k.clientX=l.originalEvent.touches[0].clientX;k.clientY=l.originalEvent.touches[0].clientY}else{k.clientX=k.originalEvent.clientX;k.clientY=k.originalEvent.clientY}}j.handlemousedown(k);if(k.preventDefault){k.preventDefault()}}});a.jqx.mobile.touchScroll(this.element,j.max,function(q,p,l,k,m){if(j.host.css("visibility")=="visible"){if(j.touchMode==true){m.clientX=m.originalEvent.clientX;m.clientY=m.originalEvent.clientY}else{var o=m;if(o.originalEvent.touches&&o.originalEvent.touches.length){m.clientX=o.originalEvent.touches[0].clientX;m.clientY=o.originalEvent.touches[0].clientY}else{m.clientX=m.originalEvent.clientX;m.clientY=m.originalEvent.clientY}}var n=j.vertical?j.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):j.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");j.btnThumb.addClass(n);j.btnThumb.addClass(j.toThemeProperty("jqx-fill-state-pressed"));j.thumbCapture=true;j.handlemousemove(m)}},j.element.id)}if(!this.isTouchDevice){try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var b=null;if(window.parent&&document.referrer){b=document.referrer}if(b&&b.indexOf(document.location.host)!=-1){var g=function(k){if(!j.disabled){j.handlemouseup(j,k)}};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}}catch(i){}var c="click mouseup mousedown";this.addHandler(this.btnDown,c,function(l){var k=j.step;if(Math.abs(j.max-j.min)<=k){k=1}if(j.rtl&&!j.vertical){k=-j.step}switch(l.type){case"click":if(j.buttonDownCapture&&!j.isTouchDevice){if(!j.disabled){j.setPosition(j.value+k)}}else{if(!j.disabled&&j.isTouchDevice){j.setPosition(j.value+k)}}break;case"mouseup":if(!j.btnDownInstance.base.disabled&&j.buttonDownCapture){j.buttonDownCapture=false;j.btnDown.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j.btnDown.removeClass(j.toThemeProperty("jqx-fill-state-pressed"));j._removeArrowClasses("pressed","down");j.handlemouseup(j,l);j.setPosition(j.value+k);return false}break;case"mousedown":if(!j.btnDownInstance.base.disabled){j.buttonDownCapture=true;j.btnDown.addClass(j.toThemeProperty("jqx-fill-state-pressed"));j.btnDown.addClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j._addArrowClasses("pressed","down");return false}break}});this.addHandler(this.btnUp,c,function(l){var k=j.step;if(Math.abs(j.max-j.min)<=k){k=1}if(j.rtl&&!j.vertical){k=-j.step}switch(l.type){case"click":if(j.buttonUpCapture&&!j.isTouchDevice){if(!j.disabled){j.setPosition(j.value-k)}}else{if(!j.disabled&&j.isTouchDevice){j.setPosition(j.value-k)}}break;case"mouseup":if(!j.btnUpInstance.base.disabled&&j.buttonUpCapture){j.buttonUpCapture=false;j.btnUp.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j.btnUp.removeClass(j.toThemeProperty("jqx-fill-state-pressed"));j._removeArrowClasses("pressed","up");j.handlemouseup(j,l);j.setPosition(j.value-k);return false}break;case"mousedown":if(!j.btnUpInstance.base.disabled){j.buttonUpCapture=true;j.btnUp.addClass(j.toThemeProperty("jqx-fill-state-pressed"));j.btnUp.addClass(j.toThemeProperty("jqx-scrollbar-button-state-pressed"));j._addArrowClasses("pressed","up");return false}break}})}var h="click";if(this.isTouchDevice){h=a.jqx.mobile.getTouchEventName("touchend")}this.addHandler(this.areaUp,h,function(l){if(!j.disabled){var k=j.largestep;if(j.rtl&&!j.vertical){k=-j.largestep}j.setPosition(j.value-k);return false}});this.addHandler(this.areaDown,h,function(l){if(!j.disabled){var k=j.largestep;if(j.rtl&&!j.vertical){k=-j.largestep}j.setPosition(j.value+k);return false}});this.addHandler(this.areaUp,"mousedown",function(k){if(!j.disabled){j.areaUpCapture=true;return false}});this.addHandler(this.areaDown,"mousedown",function(k){if(!j.disabled){j.areaDownCapture=true;return false}});this.addHandler(this.btnThumb,"mousedown dragstart",function(k){if(k.type==="dragstart"){return false}if(!j.disabled){j.handlemousedown(k)}if(k.preventDefault){k.preventDefault()}});this.addHandler(a(document),"mouseup."+this.element.id,function(k){if(!j.disabled){j.handlemouseup(j,k)}});if(!this.isTouchDevice){this.mousemoveFunc=function(k){if(!j.disabled){j.handlemousemove(k)}};this.addHandler(a(document),"mousemove."+this.element.id,this.mousemoveFunc);this.addHandler(a(document),"mouseleave."+this.element.id,function(k){if(!j.disabled){j.handlemouseleave(k)}});this.addHandler(a(document),"mouseenter."+this.element.id,function(k){if(!j.disabled){j.handlemouseenter(k)}});if(!j.disabled){this.addHandler(this.btnUp,"mouseenter mouseleave",function(k){if(k.type==="mouseenter"){if(!j.disabled&&!j.btnUpInstance.base.disabled&&j.touchMode!=true){j.btnUp.addClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnUp.addClass(j.toThemeProperty("jqx-fill-state-hover"));j._addArrowClasses("hover","up")}}else{if(!j.disabled&&!j.btnUpInstance.base.disabled&&j.touchMode!=true){j.btnUp.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnUp.removeClass(j.toThemeProperty("jqx-fill-state-hover"));j._removeArrowClasses("hover","up")}}});var d=j.toThemeProperty("jqx-scrollbar-thumb-state-hover");if(!j.vertical){d=j.toThemeProperty("jqx-scrollbar-thumb-state-hover-horizontal")}this.addHandler(this.btnThumb,"mouseenter mouseleave",function(k){if(k.type==="mouseenter"){if(!j.disabled&&j.touchMode!=true){j.btnThumb.addClass(d);j.btnThumb.addClass(j.toThemeProperty("jqx-fill-state-hover"))}}else{if(!j.disabled&&j.touchMode!=true){j.btnThumb.removeClass(d);j.btnThumb.removeClass(j.toThemeProperty("jqx-fill-state-hover"))}}});this.addHandler(this.btnDown,"mouseenter mouseleave",function(k){if(k.type==="mouseenter"){if(!j.disabled&&!j.btnDownInstance.base.disabled&&j.touchMode!=true){j.btnDown.addClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnDown.addClass(j.toThemeProperty("jqx-fill-state-hover"));j._addArrowClasses("hover","down")}}else{if(!j.disabled&&!j.btnDownInstance.base.disabled&&j.touchMode!=true){j.btnDown.removeClass(j.toThemeProperty("jqx-scrollbar-button-state-hover"));j.btnDown.removeClass(j.toThemeProperty("jqx-fill-state-hover"));j._removeArrowClasses("hover","down")}}})}}},destroy:function(){var b=this.btnUp;var f=this.btnDown;var d=this.btnThumb;var c=this.scrollWrap;var h=this.areaUp;var e=this.areaDown;this.arrowUp.remove();delete this.arrowUp;this.arrowDown.remove();delete this.arrowDown;e.removeClass();h.removeClass();f.removeClass();b.removeClass();d.removeClass();b.jqxRepeatButton("destroy");f.jqxRepeatButton("destroy");h.jqxRepeatButton("destroy");e.jqxRepeatButton("destroy");d.jqxButton("destroy");var g=a.data(this.element,"jqxScrollBar");this._removeHandlers();this.btnUp=null;this.btnDown=null;this.scrollWrap=null;this.areaUp=null;this.areaDown=null;this.scrollOuterWrap=null;delete this.mousemoveFunc;delete this.btnDownInstance;delete this.btnUpInstance;delete this.scrollOuterWrap;delete this.scrollWrap;delete this.btnDown;delete this.areaDown;delete this.areaUp;delete this.btnDown;delete this.btnUp;delete this.btnThumb;delete this.propertyChangeMap.value;delete this.propertyChangeMap.min;delete this.propertyChangeMap.max;delete this.propertyChangeMap.touchMode;delete this.propertyChangeMap.disabled;delete this.propertyChangeMap.theme;delete this.propertyChangeMap;if(g){delete g.instance}this.host.removeData();this.host.remove();delete this.host;delete this.set;delete this.get;delete this.call;delete this.element},_removeHandlers:function(){this.removeHandler(this.btnUp,"mouseenter");this.removeHandler(this.btnDown,"mouseenter");this.removeHandler(this.btnThumb,"mouseenter");this.removeHandler(this.btnUp,"mouseleave");this.removeHandler(this.btnDown,"mouseleave");this.removeHandler(this.btnThumb,"mouseleave");this.removeHandler(this.btnUp,"click");this.removeHandler(this.btnDown,"click");this.removeHandler(this.btnDown,"mouseup");this.removeHandler(this.btnUp,"mouseup");this.removeHandler(this.btnDown,"mousedown");this.removeHandler(this.btnUp,"mousedown");this.removeHandler(this.areaUp,"mousedown");this.removeHandler(this.areaDown,"mousedown");this.removeHandler(this.areaUp,"click");this.removeHandler(this.areaDown,"click");this.removeHandler(this.btnThumb,"mousedown");this.removeHandler(this.btnThumb,"dragstart");this.removeHandler(a(document),"mouseup."+this.element.id);if(!this.mousemoveFunc){this.removeHandler(a(document),"mousemove."+this.element.id)}else{this.removeHandler(a(document),"mousemove."+this.element.id,this.mousemoveFunc)}this.removeHandler(a(document),"mouseleave."+this.element.id);this.removeHandler(a(document),"mouseenter."+this.element.id);var b=this},_addArrowClasses:function(c,b){if(c=="pressed"){c="selected"}if(c!=""){c="-"+c}if(this.vertical){if(b=="up"||b==undefined){this.arrowUp.addClass(this.toThemeProperty("jqx-icon-arrow-up"+c))}if(b=="down"||b==undefined){this.arrowDown.addClass(this.toThemeProperty("jqx-icon-arrow-down"+c))}}else{if(b=="up"||b==undefined){this.arrowUp.addClass(this.toThemeProperty("jqx-icon-arrow-left"+c))}if(b=="down"||b==undefined){this.arrowDown.addClass(this.toThemeProperty("jqx-icon-arrow-right"+c))}}},_removeArrowClasses:function(c,b){if(c=="pressed"){c="selected"}if(c!=""){c="-"+c}if(this.vertical){if(b=="up"||b==undefined){this.arrowUp.removeClass(this.toThemeProperty("jqx-icon-arrow-up"+c))}if(b=="down"||b==undefined){this.arrowDown.removeClass(this.toThemeProperty("jqx-icon-arrow-down"+c))}}else{if(b=="up"||b==undefined){this.arrowUp.removeClass(this.toThemeProperty("jqx-icon-arrow-left"+c))}if(b=="down"||b==undefined){this.arrowDown.removeClass(this.toThemeProperty("jqx-icon-arrow-right"+c))}}},setTheme:function(){var o=this.btnUp;var m=this.btnDown;var p=this.btnThumb;var e=this.scrollWrap;var g=this.areaUp;var h=this.areaDown;var f=this.arrowUp;var i=this.arrowDown;this.scrollWrap[0].className=this.toThemeProperty("jqx-reset");this.scrollOuterWrap[0].className=this.toThemeProperty("jqx-reset");var k=this.toThemeProperty("jqx-reset");this.areaDown[0].className=k;this.areaUp[0].className=k;var d=this.toThemeProperty("jqx-scrollbar")+" "+this.toThemeProperty("jqx-widget")+" "+this.toThemeProperty("jqx-widget-content");this.host.addClass(d);m[0].className=this.toThemeProperty("jqx-scrollbar-button-state-normal");o[0].className=this.toThemeProperty("jqx-scrollbar-button-state-normal");var q="";if(this.vertical){f[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-up");i[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-down");q=this.toThemeProperty("jqx-scrollbar-thumb-state-normal")}else{f[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-left");i[0].className=k+" "+this.toThemeProperty("jqx-icon-arrow-right");q=this.toThemeProperty("jqx-scrollbar-thumb-state-normal-horizontal")}q+=" "+this.toThemeProperty("jqx-fill-state-normal");p[0].className=q;if(this.disabled){e.addClass(this.toThemeProperty("jqx-fill-state-disabled"));e.removeClass(this.toThemeProperty("jqx-scrollbar-state-normal"))}else{e.addClass(this.toThemeProperty("jqx-scrollbar-state-normal"));e.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}if(this.roundedCorners=="all"){this.host.addClass(this.toThemeProperty("jqx-rc-all"));if(this.vertical){var j=a.jqx.cssroundedcorners("top");j=this.toThemeProperty(j);o.addClass(j);var c=a.jqx.cssroundedcorners("bottom");c=this.toThemeProperty(c);m.addClass(c)}else{var n=a.jqx.cssroundedcorners("left");n=this.toThemeProperty(n);o.addClass(n);var l=a.jqx.cssroundedcorners("right");l=this.toThemeProperty(l);m.addClass(l)}}else{var b=a.jqx.cssroundedcorners(this.roundedCorners);b=this.toThemeProperty(b);elBtnUp.addClass(b);elBtnDown.addClass(b)}var b=a.jqx.cssroundedcorners(this.roundedCorners);b=this.toThemeProperty(b);if(!p.hasClass(b)){p.addClass(b)}if(this.isTouchDevice&&this.touchModeStyle!=false){this.showButtons=false;p.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-normal-touch"))}},isScrolling:function(){if(this.thumbCapture==undefined||this.buttonDownCapture==undefined||this.buttonUpCapture==undefined||this.areaDownCapture==undefined||this.areaUpCapture==undefined){return false}return this.thumbCapture||this.buttonDownCapture||this.buttonUpCapture||this.areaDownCapture||this.areaUpCapture},handlemousedown:function(c){if(this.thumbCapture==undefined||this.thumbCapture==false){this.thumbCapture=true;var b=this.btnThumb;if(b!=null){b.addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(this.vertical){b.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"))}else{b.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal"))}}}this.dragStartX=c.clientX;this.dragStartY=c.clientY;this.dragStartValue=this.value},toggleHover:function(c,b){},refresh:function(){this._arrange()},_setElementPosition:function(c,b,d){if(!isNaN(b)){if(parseInt(c[0].style.left)!=parseInt(b)){c[0].style.left=b+"px"}}if(!isNaN(d)){if(parseInt(c[0].style.top)!=parseInt(d)){c[0].style.top=d+"px"}}},_setElementTopPosition:function(b,c){if(!isNaN(c)){b[0].style.top=c+"px"}},_setElementLeftPosition:function(c,b){if(!isNaN(b)){c[0].style.left=b+"px"}},handlemouseleave:function(e){var b=this.btnUp;var d=this.btnDown;if(this.buttonDownCapture||this.buttonUpCapture){b.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));d.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));this._removeArrowClasses("pressed")}if(this.thumbCapture!=true){return}var c=this.btnThumb;var f=this.vertical?this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");c.removeClass(f);c.removeClass(this.toThemeProperty("jqx-fill-state-pressed"))},handlemouseenter:function(e){var b=this.btnUp;var d=this.btnDown;if(this.buttonUpCapture){b.addClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));b.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._addArrowClasses("pressed","up")}if(this.buttonDownCapture){d.addClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));d.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._addArrowClasses("pressed","down")}if(this.thumbCapture!=true){return}var c=this.btnThumb;if(this.vertical){c.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"))}else{c.addClass(this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal"))}c.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},handlemousemove:function(b){var i=this.btnUp;var e=this.btnDown;var d=0;if(e==null||i==null){return}if(i!=null&&e!=null&&this.buttonDownCapture!=undefined&&this.buttonUpCapture!=undefined){if(this.buttonDownCapture&&b.which==d){e.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));e.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._removeArrowClasses("pressed","down");this.buttonDownCapture=false}else{if(this.buttonUpCapture&&b.which==d){i.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));i.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._removeArrowClasses("pressed","up");this.buttonUpCapture=false}}}if(this.thumbCapture!=true){return false}var k=this.btnThumb;if(b.which==d&&!this.isTouchDevice&&!this._touchSupport){this.thumbCapture=false;this._arrange();var j=this.vertical?this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");k.removeClass(j);k.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));return true}if(b.preventDefault!=undefined){b.preventDefault()}if(b.originalEvent!=null){b.originalEvent.mouseHandled=true}if(b.stopPropagation!=undefined){b.stopPropagation()}var l=0;try{if(!this.vertical){l=b.clientX-this.dragStartX}else{l=b.clientY-this.dragStartY}var f=this._btnAndThumbSize;if(!this._btnAndThumbSize){f=(this.vertical)?i.height()+e.height()+k.height():i.width()+e.width()+k.width()}var g=(this.max-this.min)/(this.scrollBarSize-f);if(this.thumbStep=="auto"){l*=g}else{l*=g;if(Math.abs(this.dragStartValue+l-this.value)>=parseInt(this.thumbStep)){var c=Math.round(parseInt(l)/this.thumbStep)*this.thumbStep;if(this.rtl&&!this.vertical){this.setPosition(this.dragStartValue-c)}else{this.setPosition(this.dragStartValue+c)}return false}else{return false}}var c=l;if(this.rtl&&!this.vertical){c=-l}this.setPosition(this.dragStartValue+c)}catch(h){alert(h)}return false},handlemouseup:function(d,g){var c=false;if(this.thumbCapture){this.thumbCapture=false;var e=this.btnThumb;var h=this.vertical?this.toThemeProperty("jqx-scrollbar-thumb-state-pressed"):this.toThemeProperty("jqx-scrollbar-thumb-state-pressed-horizontal");e.removeClass(h);e.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));c=true;this._mouseup=new Date()}this.areaDownCapture=this.areaUpCapture=false;if(this.buttonUpCapture||this.buttonDownCapture){var b=this.btnUp;var f=this.btnDown;this.buttonUpCapture=false;this.buttonDownCapture=false;b.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));f.removeClass(this.toThemeProperty("jqx-scrollbar-button-state-pressed"));b.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));f.removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._removeArrowClasses("pressed");c=true;this._mouseup=new Date()}if(c){if(g.preventDefault!=undefined){g.preventDefault()}if(g.originalEvent!=null){g.originalEvent.mouseHandled=true}if(g.stopPropagation!=undefined){g.stopPropagation()}}},setPosition:function(b,g){var d=this.element;if(b==undefined||b==NaN){b=this.min}if(b>=this.max){b=this.max}if(b<this.min){b=this.min}if(this.value!==b||g==true){if(b==this.max){var c=new a.Event("complete");this.host.trigger(c)}var f=this.value;if(this._triggervaluechanged){var e=new a.Event("valueChanged");e.previousValue=this.value;e.currentValue=b}this.value=b;this._positionelements();if(this._triggervaluechanged){this.host.trigger(e)}if(this.valueChanged){this.valueChanged({currentValue:this.value,previousvalue:f})}}return b},val:function(b){var c=function(e){for(var d in e){if(e.hasOwnProperty(d)){return false}}if(typeof b=="number"){return false}if(typeof b=="date"){return false}if(typeof b=="boolean"){return false}if(typeof b=="string"){return false}return true};if(c(b)||arguments.length==0){return this.value}else{this.setPosition(b);return b}},_getThumbSize:function(c){var b=this.max-this.min;var d=0;if(b>1){d=(c/(b+c)*c)}else{if(b==1){d=c-1}else{if(b==0){d=c}}}if(this.thumbSize>0){d=this.thumbSize}if(d<this.thumbMinSize){d=this.thumbMinSize}return Math.min(d,c)},_positionelements:function(){var g=this.element;var n=this.areaUp;var e=this.areaDown;var h=this.btnUp;var f=this.btnDown;var o=this.btnThumb;var b=this.scrollWrap;var p=this._height?this._height:this.host.height();var c=this._width?this._width:this.host.width();var l=(!this.vertical)?p:c;if(!this.showButtons){l=0}var m=(!this.vertical)?c:p;this.scrollBarSize=m;var d=this._getThumbSize(m-2*l);d=Math.floor(d);if(d<this.thumbMinSize){d=this.thumbMinSize}if(p==NaN||p<10){p=10}if(c==NaN||c<10){c=10}l+=2;this.btnSize=l;var i=this._btnAndThumbSize;if(!this._btnAndThumbSize){var i=(this.vertical)?2*this.btnSize+o.outerHeight():2*this.btnSize+o.outerWidth();i=Math.round(i)}var k=(m-i)/(this.max-this.min)*(this.value-this.min);if(this.rtl&&!this.vertical){k=(m-i)/(this.max-this.min)*(this.max-this.value-this.min)}k=Math.round(k);if(k<0){k=0}if(this.vertical){var j=m-k-i;if(j<0){j=0}e[0].style.height=j+"px";n[0].style.height=k+"px";this._setElementTopPosition(n,l);this._setElementTopPosition(o,l+k);this._setElementTopPosition(e,l+k+d)}else{n[0].style.width=k+"px";if(m-k-i>=0){e[0].style.width=m-k-i+"px"}else{e[0].style.width="0px"}this._setElementLeftPosition(n,l);this._setElementLeftPosition(o,l+k);this._setElementLeftPosition(e,2+l+k+d)}},_arrange:function(){var m=this;if(m._initialLayout){m._initialLayout=false;return}if(m.min>m.max){var x=m.min;m.min=m.max;m.max=x}if(m.min<0){var k=m.max-m.min;m.min=0;m.max=k}var d=m.element;var g=m.areaUp;var t=m.areaDown;var c=m.btnUp;var l=m.btnDown;var u=m.btnThumb;var p=m.scrollWrap;var n=parseInt(m.element.style.height);var q=parseInt(m.element.style.width);if(m.isPercentage){var n=m.host.height();var q=m.host.width()}if(isNaN(n)){n=0}if(isNaN(q)){q=0}m._width=q;m._height=n;var b=(!m.vertical)?n:q;if(!m.showButtons){b=0}c[0].style.width=b+"px";c[0].style.height=b+"px";l[0].style.width=b+"px";l[0].style.height=b+"px";if(m.vertical){p[0].style.width=q+2+"px"}else{p[0].style.height=n+2+"px"}m._setElementPosition(c,0,0);var s=b+2;if(m.vertical){m._setElementPosition(l,0,n-s)}else{m._setElementPosition(l,q-s,0)}var f=(!m.vertical)?q:n;m.scrollBarSize=f;var h=m._getThumbSize(f-2*s);h=Math.floor(h-2);if(h<m.thumbMinSize){h=m.thumbMinSize}var o=false;if(m.isTouchDevice&&m.touchModeStyle!=false){o=true}if(!m.vertical){u[0].style.width=h+"px";u[0].style.height=n+"px";if(o&&m.thumbTouchSize!==0){u.css({height:m.thumbTouchSize+"px"});u.css("margin-top",(m.host.height()-m.thumbTouchSize)/2)}}else{u[0].style.width=q+"px";u[0].style.height=h+"px";if(o&&m.thumbTouchSize!==0){u.css({width:m.thumbTouchSize+"px"});u.css("margin-left",(m.host.width()-m.thumbTouchSize)/2)}}if(n==NaN||n<10){n=10}if(q==NaN||q<10){q=10}m.btnSize=b;var e=(m.vertical)?2*s+(2+parseInt(u[0].style.height)):2*s+(2+parseInt(u[0].style.width));e=Math.round(e);m._btnAndThumbSize=e;var w=(f-e)/(m.max-m.min)*(m.value-m.min);if(m.rtl&&!m.vertical){w=(f-e)/(m.max-m.min)*(m.max-m.value-m.min)}w=Math.round(w);if(isNaN(w)||w<0||w===-Infinity||w===Infinity){w=0}if(m.vertical){var v=(f-w-e);if(v<0){v=0}t[0].style.height=v+"px";t[0].style.width=q+"px";g[0].style.height=w+"px";g[0].style.width=q+"px";var i=parseInt(m.element.style.height);if(m.isPercentage){i=m.host.height()}u[0].style.visibility="inherit";if(i-3*parseInt(b)<0||i<e){u[0].style.visibility="hidden"}m._setElementPosition(g,0,s);m._setElementPosition(u,0,s+w);m._setElementPosition(t,0,s+w+h)}else{if(w>0){g[0].style.width=w+"px"}if(n>0){g[0].style.height=n+"px"}var j=(f-w-e);if(j<0){j=0}t[0].style.width=j+"px";t[0].style.height=n+"px";var r=parseInt(m.element.style.width);if(m.isPercentage){r=m.host.width()}u[0].style.visibility="inherit";if((r-3*parseInt(b)<0)||(r<e)){u[0].style.visibility="hidden"}m._setElementPosition(g,s,0);m._setElementPosition(u,s+w,0);m._setElementPosition(t,s+w+h,0)}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxscrollview.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxscrollview.js
new file mode 100644 (file)
index 0000000..6baf72e
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(b){var a=0;b.jqx.jqxWidget("jqxScrollView","",{});b.extend(b.jqx._jqxScrollView.prototype,{defineInstance:function(){var c={width:320,height:320,buttonsOffset:[0,0],moveThreshold:0.5,currentPage:0,animationDuration:300,showButtons:true,bounceEnabled:true,slideShow:false,slideDuration:3000,disabled:false,_mouseDown:false,_movePermited:false,_startX:-1,_startOffset:-1,_lastOffset:-1,_events:["pageChanged"],_eventsMap:{mousedown:b.jqx.mobile.getTouchEventName("touchstart"),mouseup:b.jqx.mobile.getTouchEventName("touchend"),mousemove:b.jqx.mobile.getTouchEventName("touchmove")}};b.extend(true,this,c);return c},createInstance:function(){a+=1;this._instanceId=a;this._isTouchDevice=b.jqx.mobile.isTouchDevice();var c=this;b.jqx.utilities.resize(this.host,function(){c.refresh()})},resize:function(d,c){this.width=d;this.height=c;this.refresh()},refresh:function(){this.host.width(this.width);this.host.height(this.height);this._render();this._performLayout();if(this.moveThreshold.toString().indexOf("%")>=0){this.moveThreshold=parseInt(this.moveThreshold,10)/100}this._refreshPages();this._refreshButtons();this._removeEventListeners();this._addEventListeners();this._changePage(this.currentPage,false,0);if(this.slideShow){var c=this;this.slideShowTimer=setInterval(function(){if(c.currentPage>=c._pages.length-1){c._changePage(0,true,c.animationDuration)}else{c._changePage(c.currentPage+1,true,c.animationDuration)}},this.slideDuration)}else{if(this.slideShowTimer!=undefined){clearInterval(this.slideShowTimer)}}},destroy:function(){this.host.remove()},_getEvent:function(c){if(this._isTouchDevice){return this._eventsMap[c]}return c},_eventNamespace:function(){return".scrollview"+this._instanceId},_removeEventListeners:function(){this.removeHandler(this._innerWrapper);this.removeHandler(this.host,this._getEvent("mousemove")+this._eventNamespace());this.removeHandler(b(document),this._getEvent("mouseup")+this._eventNamespace())},_getCoordinate:function(c,d){if(this._isTouchDevice){var e=b.jqx.position(c);if(d=="pageX"){return e.left}if(d=="pageY"){return e.top}if(c.originalEvent.touches){return c.originalEvent.touches[0][d]}}return c[d]},_draggedRight:function(){if(this.currentPage>0){var e=this.currentPage-1,d=b(this._pages[e]),c=d.offset().left+d.outerWidth(),f=c-this.host.offset().left;if(f>=(this.host.width()*this.moveThreshold)){this.changePage(e);return true}}return false},_draggedLeft:function(){if(this.currentPage+1<this._pages.length){var d=this.currentPage+1,c=b(this._pages[d]),e=this.host.width()-(c.offset().left-this.host.offset().left);if(e>=(this.host.width()*this.moveThreshold)){this.changePage(d);return true}}return false},_dropTarget:function(){var c;if(this._movedLeft){c=this._draggedLeft()}else{c=this._draggedRight()}if(!c){this.changePage(this.currentPage,false)}},_scrollEnabled:function(c){if(!this._mouseDown){return false}if(!this._movePermited){if(Math.abs(this._getCoordinate(c,"pageX")-this._startX)>=15){this._movePermited=true}}return this._movePermited},_setMoveDirection:function(c){if(this._lastOffset>c){this._movedLeft=true}else{this._movedLeft=false}},_getBounceOffset:function(d){var c=-(this._innerWrapper.width()-this.host.width());if(d>0){d=0}else{if(d<c){d=c}}return d},_addEventListeners:function(){var c=this;this.addHandler(this._innerWrapper,this._getEvent("mousedown")+this._eventNamespace(),function(f){c._mouseDown=true;c._startX=c._getCoordinate(f,"pageX");c._startOffset=c._lastOffset=parseInt(c._innerWrapper.css("margin-left"),10)});this.addHandler(this.host,"dragstart",function(){return false});this.addHandler(this.host,this._getEvent("mousemove")+this._eventNamespace(),function(f){if(c._scrollEnabled(f)){var g=c._startOffset+c._getCoordinate(f,"pageX")-c._startX;if(!c.bounceEnabled){g=c._getBounceOffset(g)}c._innerWrapper.css("margin-left",g);c._setMoveDirection(g);c._lastOffset=g;f.preventDefault();return false}return true});this.addHandler(b(document),this._getEvent("mouseup")+this._eventNamespace(),function(f){if(c._movePermited){c._dropTarget()}c._movePermited=false;c._mouseDown=false});try{if(document.referrer!=""||window.frameElement){if(window.top!=null){if(window.parent&&document.referrer){parentLocation=document.referrer}}if(parentLocation.indexOf(document.location.host)!=-1){var e=function(f){if(c._movePermited){c._dropTarget()}c._movePermited=false;c._mouseDown=false};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",e,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",e)}}}}}catch(d){}},_render:function(){this.host.addClass(this.toThemeProperty("jqx-scrollview"));this.host.css({overflow:"hidden",position:"relative"})},_performLayout:function(){this.host.css({width:this.width,height:this.height})},_renderPages:function(){if(!this._innerWrapper){this._innerWrapper=b("<div/>");this.host.wrapInner(this._innerWrapper);this._innerWrapper=this.host.children().first()}this._innerWrapper.addClass(this.toThemeProperty("jqx-scrollview-inner-wrapper"));this._innerWrapper.height(this.host.height())},_refreshPage:function(c){c.addClass(this.toThemeProperty("jqx-scrollview-page"));this._performPageLayout(c)},_refreshPages:function(){var c=this,d=0;this._renderPages();this._pages=this._innerWrapper.children();this._pages.each(function(){c._refreshPage(b(this));d+=b(this).outerWidth(true)});this._innerWrapper.width(d)},_performPageLayout:function(c){c.css("float","left");c.width(this.host.width());c.height(this.host.height())},_refreshButtons:function(){this._renderButtons();this._removeButtonsEventListeners();this._addButtonsEventListeners();this._performButtonsLayout()},_removeButtonsEventListeners:function(){var c=this;this._buttonsContainer.children().each(function(){c.removeHandler(b(this))})},_addButtonsEventListeners:function(){var c=this;this._buttonsContainer.children().each(function(d){c.addHandler(b(this),"click",function(){c.changePage(d)})})},_performButtonsLayout:function(){var d=(this.host.width()-this._buttonsContainer.width())/2;var c=this._buttonsContainer.outerHeight()!=0?this._buttonsContainer.outerHeight():14;this._buttonsContainer.css({position:"absolute",left:d+parseInt(this.buttonsOffset[0],10),top:this.host.height()-2*c+parseInt(this.buttonsOffset[1],10)-1})},_renderButtons:function(){if(this._buttonsContainer){this._buttonsContainer.remove()}var e,d;this._buttons=[];this._buttonsContainer=b("<span/>");for(var c=0;c<this._pages.length;c+=1){d=b('<span class="'+this.toThemeProperty("jqx-scrollview-button")+" "+this.toThemeProperty("jqx-fill-state-normal")+'"></span>');this._buttonsContainer.append(d);this._buttons[c]=d}this._buttonsContainer.appendTo(this.host);if(!this.showButtons){this._buttonsContainer.hide()}},_raiseEvent:function(c,e){var d=new b.Event(this._events[c]);d.args=e;return this.host.trigger(d)},_swapButtons:function(c,d){this._buttons[c].removeClass(this.toThemeProperty("jqx-scrollview-button-selected"));this._buttons[c].removeClass(this.toThemeProperty("jqx-fill-state-pressed"));this._buttons[d].addClass(this.toThemeProperty("jqx-scrollview-button-selected"));this._buttons[d].addClass(this.toThemeProperty("jqx-fill-state-pressed"))},_changePage:function(d,f,i){if(this.disabled){return}var h=b(this._pages[d]),g=(this.host.width()-h.width())/2,e=h.offset().left-this._innerWrapper.offset().left-g,j=this.currentPage,c=this;if(typeof i==="undefined"){i=this.animationDuration}this._innerWrapper.stop();this._swapButtons(this.currentPage,d);this.currentPage=d;this._innerWrapper.animate({marginLeft:-e},i,function(){if(f){c._raiseEvent(0,{currentPage:d,oldPage:j})}})},propertyChangedHandler:function(c,d,f,e){if(d==="currentPage"){c.currentPage=f;c.changePage(e)}else{if((/(buttonsOffset|width|height)/).test(d)){c.refresh()}else{if(d==="showButtons"){if(!e){c._buttonsContainer.css("display","none")}else{c._buttonsContainer.css("display","block")}return}else{if(d=="slideShow"){c.refresh()}}}}},changePage:function(c){if(c>=this._pages.length||c<0){throw new Error("Invalid index!")}this._changePage(c,true)},forward:function(){if(this.currentPage+1<this._pages.length){this.changePage(this.currentPage+1)}},back:function(){if(this.currentPage-1>=0){this.changePage(this.currentPage-1)}}})}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxslider.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxslider.js
new file mode 100644 (file)
index 0000000..11ec738
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxSlider","",{});a.extend(a.jqx._jqxSlider.prototype,{defineInstance:function(){var b={disabled:false,width:300,height:30,step:1,max:10,min:0,int64:false,orientation:"horizontal",showTicks:true,ticksPosition:"both",ticksFrequency:2,minorTicksFrequency:1,showMinorTicks:false,showButtons:true,buttonsPosition:"both",mode:"default",showRange:true,rangeSlider:false,value:0,values:[0,10],tooltip:false,tooltipFormatFunction:null,tooltipPosition:"near",tooltipHideDelay:500,sliderButtonSize:14,tickSize:7,minorTickSize:4,showTickLabels:false,tickLabelFormatFunction:null,layout:"normal",rtl:false,_settings:{vertical:{size:"height",oSize:"width",outerOSize:"outerWidth",outerSize:"outerHeight",left:"top",top:"left",start:"_startY",mouse:"_mouseStartY",page:"pageY",opposite:"horizontal"},horizontal:{size:"width",oSize:"height",outerOSize:"outerHeight",outerSize:"outerWidth",left:"left",top:"top",start:"_startX",mouse:"_mouseStartX",page:"pageX",opposite:"vertical"}},_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),click:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_events:["change","slide","slideEnd","slideStart","created"],_invalidArgumentExceptions:{invalidWidth:"Invalid width.",invalidHeight:"Invalid height.",invalidStep:"Invalid step.",invalidMaxValue:"Invalid maximum value.",invalidMinValue:"Invalid minimum value.",invalidTickFrequency:"Invalid tick frequency.",invalidValue:"Invalid value.",invalidValues:"Invalid values.",invalidTicksPosition:"Invalid ticksPosition",invalidButtonsPosition:"Invalid buttonsPosition"},_lastValue:[],_track:null,_leftButton:null,_rightButton:null,_slider:null,_rangeBar:null,_slideEvent:null,_capturedElement:null,_slideStarted:false,aria:{"aria-valuenow":{name:"value",type:"number"},"aria-valuemin":{name:"min",type:"number"},"aria-valuemax":{name:"max",type:"number"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(b){var c=this;if(c.int64===true){if(!a.jqx.longInt){throw new Error("jqxSlider: Missing reference to jqxdata.js")}a.jqx.longInt(c);c._value64=new a.jqx.math().fromString(c.value.toString(),10);c._values64=[new a.jqx.math().fromString(c.values[0].toString(),10),new a.jqx.math().fromString(c.values[1].toString(),10)];c._min64=new a.jqx.math().fromString(c.min.toString(),10);c._max64=new a.jqx.math().fromString(c.max.toString(),10);c._step64=new a.jqx.math().fromString(c.step.toString(),10);c._ticksFrequency64=new a.jqx.math().fromString(c.ticksFrequency.toString(),10);c._minorTicksFrequency64=new a.jqx.math().fromString(c.minorTicksFrequency.toString(),10)}this.render()},render:function(){this.element.innerHTML="";this.host.attr("role","slider");this.host.addClass(this.toThemeProperty("jqx-slider"));this.host.addClass(this.toThemeProperty("jqx-widget"));a.jqx.aria(this);this._isTouchDevice=a.jqx.mobile.isTouchDevice();this.host.width(this.width);this.host.height(this.height);this._refresh();this._raiseEvent(4,{value:this.getValue()});this._addInput();var c=this;var b=c.host.attr("tabindex")==null;if(b){c.host.attr("tabindex",0)}a.jqx.utilities.resize(this.host,function(){c.__trackSize=null;c.__thumbSize=null;c.host.width(c.width);c.host.height(c.height);c._performLayout();c._initialSettings()})},resize:function(c,b){this.width=c;this.height=b;this.refresh();this.host.width(me.width);this.host.height(me.height);this._performLayout();this._initialSettings()},focus:function(){try{this.host.focus()}catch(b){}},destroy:function(){this.host.remove()},_addInput:function(){var b=this.host.attr("name");this.input=a("<input type='hidden'/>");this.host.append(this.input);if(b){this.input.attr("name",b)}if(!this.rangeSlider){this.input.val(this.value.toString())}else{if(this.values){this.input.val(this.value.rangeStart.toString()+"-"+this.value.rangeEnd.toString())}}},_getSetting:function(b){return this._settings[this.orientation][b]},_getEvent:function(b){if(this._isTouchDevice){return this._touchEvents[b]}else{return b}},refresh:function(b){if(!b){this._refresh()}},_refresh:function(){this._render();this._performLayout();this._removeEventHandlers();this._addEventHandlers();this._initialSettings()},_render:function(){this._addTrack();this._addSliders();this._addTickContainers();this._addContentWrapper();this._addButtons();this._addRangeBar()},_addTrack:function(){if(this._track===null||this._track.length<1){this._track=a('<div class="'+this.toThemeProperty("jqx-slider-track")+'"></div>');this.host.append(this._track)}this._track.attr("style","");this._track.removeClass(this.toThemeProperty("jqx-slider-track-"+this._getSetting("opposite")));this._track.addClass(this.toThemeProperty("jqx-slider-track-"+this.orientation));this._track.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._track.addClass(this.toThemeProperty("jqx-rc-all"))},_addSliders:function(){if(this._slider===null||this._slider.length<1){this._slider={};this._slider.left=a('<div class="'+this.toThemeProperty("jqx-slider-slider")+'"></div>');this._track.append(this._slider.left);this._slider.right=a('<div class="'+this.toThemeProperty("jqx-slider-slider")+'"></div>');this._track.append(this._slider.right)}this._slider.left.removeClass(this.toThemeProperty("jqx-slider-slider-"+this._getSetting("opposite")));this._slider.left.addClass(this.toThemeProperty("jqx-slider-slider-"+this.orientation));this._slider.right.removeClass(this.toThemeProperty("jqx-slider-slider-"+this._getSetting("opposite")));this._slider.right.addClass(this.toThemeProperty("jqx-slider-slider-"+this.orientation));this._slider.right.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._slider.left.addClass(this.toThemeProperty("jqx-fill-state-normal"))},_addTickContainers:function(){if(this._bottomTicks!==null||this._bottomTicks.length<1||this._topTicks!==null||this._topTicks.length<1){this._addTickContainers()}var b="visible";if(!this.showTicks){b="hidden"}this._bottomTicks.css("visibility",b);this._topTicks.css("visibility",b)},_addTickContainers:function(){if(typeof this._bottomTicks==="undefined"||this._bottomTicks.length<1){this._bottomTicks=a('<div class="'+this.toThemeProperty("jqx-slider-tickscontainer")+'" style=""></div>');this.host.prepend(this._bottomTicks)}if(typeof this._topTicks==="undefined"||this._topTicks.length<1){this._topTicks=a('<div class="'+this.toThemeProperty("jqx-slider-tickscontainer")+'" style=""></div>');this.host.append(this._topTicks)}},_addButtons:function(){if(this._leftButton===null||this._leftButton.length<1||this._rightButton===null||this._rightButton.length<1){this._createButtons()}var b="block";if(!this.showButtons||this.rangeSlider){b="none"}this._rightButton.css("display",b);this._leftButton.css("display",b)},_createButtons:function(){this._leftButton=a('<div class="jqx-slider-left"><div style="width: 100%; height: 100%;"></div></div>');this._rightButton=a('<div class="jqx-slider-right"><div style="width: 100%; height: 100%;"></div></div>');this.host.prepend(this._rightButton);this.host.prepend(this._leftButton);if(!this.host.jqxRepeatButton){throw new Error("jqxSlider: Missing reference to jqxbuttons.js.")}this._leftButton.jqxRepeatButton({theme:this.theme,delay:50,width:this.sliderButtonSize,height:this.sliderButtonSize});this._rightButton.jqxRepeatButton({theme:this.theme,delay:50,width:this.sliderButtonSize,height:this.sliderButtonSize})},_addContentWrapper:function(){if(this._contentWrapper===undefined||this._contentWrapper.length===0){this.host.wrapInner("<div></div>");this._contentWrapper=this.host.children(0)}if(this.orientation==="horizontal"){this._contentWrapper.css("float","left")}else{this._contentWrapper.css("float","none")}},_addTicks:function(c){if(!this.showTicks){return}var e=c[this._getSetting("size")](),m,f,n,k,h,o;if(this.int64===false){m=this.max-this.min;f=Math.round(m/this.ticksFrequency);n=Math.round(m/this.minorTicksFrequency);h=this.min;o=this.max}else{m=this._max64.subtract(this._min64);f=m.div(this._ticksFrequency64).toNumber();n=m.div(this._minorTicksFrequency64).toNumber();h=this._min64.toString();o=this._max64.toString()}var b=e/f,k=e/n;c.empty();var r="",d;if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(h):h}else{d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(o):o}var q=a("<span style='visibility: hidden;'></span>");q.addClass(this.toThemeProperty("jqx-widget jqx-widget-content jqx-slider"));q.appendTo(document.body);q.html("0");var l={width:q.width(),height:q.height()};q.detach();var s=c[this._getSetting("oSize")]();r+=this._addTick(c,0,this.min,s,d,l);for(var j=1;j<f;j++){var g=j*b;g=Math.floor(g);var p;if(this.int64===false){if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){p=this.min+this.ticksFrequency*j}else{p=this.max-this.ticksFrequency*j}}else{if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){p=this._min64.add(this._ticksFrequency64.multiply(new a.jqx.math().fromString(j.toString(),10))).toString()}else{p=this._max64.subtract(this._ticksFrequency64.multiply(new a.jqx.math().fromString(j.toString(),10))).toString()}}var d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(p):p;r+=this._addTick(c,g,j,s,d,l)}if(this.showMinorTicks){for(var j=1;j<n;j++){var g=j*k;g=Math.floor(g);var d="";r+=this._addTick(c,g,j,s,d,l,true)}}if((this.layout==="normal"&&this.orientation==="horizontal")||(this.layout==="reverse"&&this.orientation==="vertical")){d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(o):o}else{d=this.tickLabelFormatFunction?this.tickLabelFormatFunction(h):h}r+=this._addTick(c,f*b,this.max,s,d,l);c.append(a(r))},_addTick:function(b,i,n,p,c,j,o){var q="";q=this.toThemeProperty("jqx-slider-tick");q+=" "+this.toThemeProperty("jqx-fill-state-pressed");var e;var l=this._getSetting("top");var d="2px";var f=this.tickSize;if(o){f=this.minorTickSize}if(b[0]!==this._topTicks[0]){d=p-f-2+"px"}if(this.orientation==="horizontal"){e='<div style="'+l+": "+d+"; "+this._getSetting("oSize")+":  "+f+"px; float: left; position:absolute; left:"+i+'px;" class="'+this.toThemeProperty("jqx-slider-tick-horizontal")+" "+q+'"></div>';if(this.showTickLabels){if(b[0]!==this._topTicks[0]){d=p-f-j.height-2+"px"}else{d=2+f+"px"}var m=j.width*c.toString().length;m=m/2;var k=i-m;e+='<div style="'+l+": "+d+"; float: left; position:absolute; left:"+k+'px;">'+c+"</div>"}}else{e='<div style="'+l+": "+d+"; "+this._getSetting("oSize")+":  "+f+"px; float: none; position:absolute; top:"+i+'px;" class="'+this.toThemeProperty("jqx-slider-tick-vertical")+" "+q+'"></div>';if(this.showTickLabels){if(b[0]!==this._topTicks[0]){d=p-f-c.toString().length*j.width-6+"px"}else{d=6+f+"px"}var g=j.height;g=g/2;var k=i-g;e+='<div style="'+l+": "+d+"; float: none; position:absolute; top:"+k+'px;">'+c+"</div>"}}return e},_addRangeBar:function(){if(this._rangeBar===null||this._rangeBar.length<1){this._rangeBar=a('<div class="'+this.toThemeProperty("jqx-slider-rangebar")+'"></div>');this._rangeBar.addClass(this.toThemeProperty("jqx-fill-state-pressed"));this._rangeBar.addClass(this.toThemeProperty("jqx-rc-all"));this._track.append(this._rangeBar)}if(!this.showRange){this._rangeBar.css("display","none")}else{this._rangeBar.css("display","block")}this._thumbSize=this._slider.left.outerWidth()},_getLeftDisplacement:function(){if(!this.showButtons){return 0}if(this.rangeSlider){return 0}switch(this.buttonsPosition){case"left":return this._leftButton[this._getSetting("outerSize")](true)+this._rightButton[this._getSetting("outerSize")](true);case"right":return 0;default:return this._leftButton[this._getSetting("outerSize")](true)}return 0},_performLayout:function(){this.host.width(this.width);this.host.height(this.height);var b=this.host.height();if(this._getSetting("size")=="width"){b=this.host.width()}this._performButtonsLayout();this._performTrackLayout(b-1);this._contentWrapper[this._getSetting("size")](this._track[this._getSetting("size")]());this._contentWrapper[this._getSetting("oSize")](this[this._getSetting("oSize")]);this._performTicksLayout();this._performRangeBarLayout();if(this.rangeSlider){this._slider.left.css("visibility","visible")}else{this._slider.left.css("visibility","hidden")}this._refreshRangeBar();if(this.orientation=="vertical"){if(this.showButtons){var c=parseInt((this._leftButton.width()-this._track.width())/2);this._track.css("margin-left",-3+c+"px")}}},_performTrackLayout:function(b){this._track[this._getSetting("size")](b-((this.showButtons&&!this.rangeSlider)?this._leftButton[this._getSetting("outerSize")](true)+this._rightButton[this._getSetting("outerSize")](true):0));this._slider.left.css("left",0);this._slider.left.css("top",0);this._slider.right.css("left",0);this._slider.right.css("top",0)},_performTicksLayout:function(){this._performTicksContainerLayout();this._addTicks(this._topTicks);this._addTicks(this._bottomTicks);this._topTicks.css("visibility","hidden");this._bottomTicks.css("visibility","hidden");if((this.ticksPosition==="top"||this.ticksPosition==="both")&&this.showTicks){this._bottomTicks.css("visibility","visible")}if((this.ticksPosition==="bottom"||this.ticksPosition==="both")&&this.showTicks){this._topTicks.css("visibility","visible")}},_performTicksContainerLayout:function(){var f=this._getSetting("size");var e=this._getSetting("oSize");var b=this._getSetting("outerOSize");this._topTicks[f](this._track[f]());this._bottomTicks[f](this._track[f]());var d=-2+(parseInt(this[e])-this._track[b](true))/2;this._topTicks[e](parseInt(d));var c=-2+(parseInt(this[e])-this._track[b](true))/2;this._bottomTicks[e](parseInt(c));if(this.orientation==="vertical"){this._topTicks.css("float","left");this._track.css("float","left");this._bottomTicks.css("float","left")}else{this._topTicks.css("float","none");this._track.css("float","none");this._bottomTicks.css("float","none")}},_performButtonsLayout:function(){this._addButtonsStyles();this._addButtonsClasses();this._addButtonsHover();this._orderButtons();this._centerElement(this._rightButton);this._centerElement(this._leftButton);this._layoutButtons()},_addButtonsStyles:function(){this._leftButton.css("background-position","center");this._rightButton.css("background-position","center");if(this.orientation==="vertical"){this._leftButton.css("float","none");this._rightButton.css("float","none")}else{this._leftButton.css("float","left");this._rightButton.css("float","left")}},_addButtonsClasses:function(){var b={prev:"left",next:"right"};if(this.orientation==="vertical"){b={prev:"up",next:"down"}}this._leftButton.addClass(this.toThemeProperty("jqx-rc-all"));this._rightButton.addClass(this.toThemeProperty("jqx-rc-all"));this._leftButton.addClass(this.toThemeProperty("jqx-slider-button"));this._rightButton.addClass(this.toThemeProperty("jqx-slider-button"));this._leftArrow=this._leftButton.find("div");this._rightArrow=this._rightButton.find("div");this._leftArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-left"));this._rightArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-right"));this._leftArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-up"));this._rightArrow.removeClass(this.toThemeProperty("jqx-icon-arrow-down"));this._leftArrow.addClass(this.toThemeProperty("jqx-icon-arrow-"+b.prev));this._rightArrow.addClass(this.toThemeProperty("jqx-icon-arrow-"+b.next))},_addButtonsHover:function(){var c=this,b={prev:"left",next:"right"};if(this.orientation==="vertical"){b={prev:"up",next:"down"}}this.addHandler(a(document),"mouseup.arrow"+this.element.id,function(){c._leftArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-selected"));c._rightArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-selected"));if(c.sliderTooltip){if(c.sliderTooltipTimer){clearTimeout(c.sliderTooltipTimer)}c.sliderTooltipTimer=setTimeout(function(){c.sliderTooltip.fadeOut("fast");c._mouseDown=false},c.tooltipHideDelay)}else{c._mouseDown=false}});this.addHandler(this._leftButton,"mousedown",function(){if(!c.disabled){c._leftArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-selected"));c._mouseDown=true}});this.addHandler(this._leftButton,"mouseup",function(){if(!c.disabled){c._leftArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-selected"))}});this.addHandler(this._rightButton,"mousedown",function(){if(!c.disabled){c._rightArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-selected"));c._mouseDown=true}});this.addHandler(this._rightButton,"mouseup",function(){if(!c.disabled){c._rightArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-selected"))}});this._leftButton.hover(function(){if(!c.disabled){c._leftArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-hover"))}},function(){if(!c.disabled){c._leftArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.prev+"-hover"))}});this._rightButton.hover(function(){if(!c.disabled){c._rightArrow.addClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-hover"))}},function(){if(!c.disabled){c._rightArrow.removeClass(c.toThemeProperty("jqx-icon-arrow-"+b.next+"-hover"))}})},_layoutButtons:function(){if(this.orientation==="horizontal"){this._horizontalButtonsLayout()}else{this._verticalButtonsLayout()}},_horizontalButtonsLayout:function(){var b=(2+Math.ceil(this.sliderButtonSize/2));if(this.buttonsPosition=="left"){this._leftButton.css("margin-right","0px");this._rightButton.css("margin-right",b)}else{if(this.buttonsPosition=="right"){this._leftButton.css("margin-left",2+b);this._rightButton.css("margin-right","0px")}else{this._leftButton.css("margin-right",b);this._rightButton.css("margin-left",2+b)}}},_verticalButtonsLayout:function(){var c=(2+Math.ceil(this.sliderButtonSize/2));if(this.buttonsPosition=="left"){this._leftButton.css("margin-bottom","0px");this._rightButton.css("margin-bottom",c)}else{if(this.buttonsPosition=="right"){this._leftButton.css("margin-top",2+c);this._rightButton.css("margin-bottom","0px")}else{this._leftButton.css("margin-bottom",c);this._rightButton.css("margin-top",2+c)}}var b=this._leftButton.css("margin-left");this._leftButton.css("margin-left",parseInt(b)-1);this._rightButton.css("margin-left",parseInt(b)-1)},_orderButtons:function(){this._rightButton.detach();this._leftButton.detach();switch(this.buttonsPosition){case"left":this.host.prepend(this._rightButton);this.host.prepend(this._leftButton);break;case"right":this.host.append(this._leftButton);this.host.append(this._rightButton);break;case"both":this.host.prepend(this._leftButton);this.host.append(this._rightButton);break}},_performRangeBarLayout:function(){this._rangeBar[this._getSetting("oSize")](this._track[this._getSetting("oSize")]());this._rangeBar[this._getSetting("size")](this._track[this._getSetting("size")]());this._rangeBar.css("position","absolute");this._rangeBar.css("left",0);this._rangeBar.css("top",0)},_centerElement:function(c){var b=-1+(a(c.parent())[this._getSetting("oSize")]()-c[this._getSetting("outerOSize")]())/2;c.css("margin-"+[this._getSetting("left")],0);c.css("margin-"+[this._getSetting("top")],b);return c},_raiseEvent:function(f,c){var d=this._events[f];var e=new a.Event(d);if(this._triggerEvents===false){return true}e.args=c;if(f===1){e.args.cancel=false;this._slideEvent=e}this._lastValue[f]=c.value;e.owner=this;var b=this.host.trigger(e);return b},_initialSettings:function(){if(this.int64===false){if(this.rangeSlider){if(typeof this.value!=="number"){this.setValue(this.value)}else{this.setValue(this.values)}}else{if(this.value==undefined){this.value=0}this.setValue(this.value)}}else{if(this.rangeSlider===false||Array.isArray(this._value64)===true){this.setValue(this._value64)}else{this.setValue(this._values64)}}if(this.disabled){this.disable()}},_addEventHandlers:function(){var b=this;this.addHandler(this._slider.right,this._getEvent("mousedown"),this._startDrag,{self:this});this.addHandler(this._slider.left,this._getEvent("mousedown"),this._startDrag,{self:this});this.addHandler(a(document),this._getEvent("mouseup")+"."+this.element.id,function(){b._stopDrag()});try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var d=function(g){b._stopDrag()};var f=null;if(window.parent&&document.referrer){f=document.referrer}if(f&&f.indexOf(document.location.host)!=-1){if(window.top.document){if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",d,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",d)}}}}}}}catch(c){}this.addHandler(a(document),this._getEvent("mousemove")+"."+this.element.id,this._performDrag,{self:this});var e=this;this.addHandler(this._slider.left,"mouseenter",function(){if(!e.disabled){b._slider.left.addClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.right,"mouseenter",function(){if(!e.disabled){b._slider.right.addClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.left,"mouseleave",function(){if(!e.disabled){b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.right,"mouseleave",function(){if(!e.disabled){b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this._slider.left,"mousedown",function(){if(!e.disabled){b._slider.left.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._slider.right,"mousedown",function(){if(!e.disabled){b._slider.right.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._slider.left,"mouseup",function(){if(!e.disabled){b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._slider.right,"mouseup",function(){if(!e.disabled){b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))}});this.addHandler(this._leftButton,this._getEvent("click"),this._leftButtonHandler,{self:this});this.addHandler(this._rightButton,this._getEvent("click"),this._rightButtonHandler,{self:this});this.addHandler(this._track,this._getEvent("mousedown"),this._trackMouseDownHandler,{self:this});this.addHandler(this.host,"focus",function(){b._track.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._leftButton.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._rightButton.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.right.addClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.left.addClass(b.toThemeProperty("jqx-fill-state-focus"))});this.addHandler(this.host,"blur",function(){b._leftButton.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._rightButton.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._track.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-focus"));b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-focus"))});this.element.onselectstart=function(){return false};this._addMouseWheelListeners();this._addKeyboardListeners()},_addMouseWheelListeners:function(){var b=this;this.addHandler(this.host,"mousewheel",function(d){if(b.disabled){return true}if(document.activeElement&&!a(document.activeElement).ischildof(b.host)){return true}var c=d.wheelDelta;if(d.originalEvent&&d.originalEvent.wheelDelta){d.wheelDelta=d.originalEvent.wheelDelta}if(!("wheelDelta" in d)){c=d.detail*-40}if(c>0){b.incrementValue()}else{b.decrementValue()}d.preventDefault()})},_addKeyboardListeners:function(){var b=this;this.addHandler(this.host,"keydown",function(c){switch(c.keyCode){case 40:case 37:if(b.layout=="normal"&&!b.rtl){b.decrementValue()}else{b.incrementValue()}return false;case 38:case 39:if(b.layout=="normal"&&!b.rtl){b.incrementValue()}else{b.decrementValue()}return false;case 36:if(b.rangeSlider){b.setValue([b.values[0],b.max])}else{b.setValue(b.min)}return false;case 35:if(b.rangeSlider){b.setValue([b.min,b.values[1]])}else{b.setValue(b.max)}return false}})},_trackMouseDownHandler:function(b){var e=a.jqx.mobile.getTouches(b);var d=e[0];var i=b.data.self,b=(i._isTouchDevice)?d:b,f=i._track.coord()[i._getSetting("left")],h=b[i._getSetting("page")]-i._slider.left[i._getSetting("size")]()/2,c=i._getClosest(h),j=parseInt(i._track[i._getSetting("size")]());var g=i._getValueByPosition(h);i._mouseDown=true;i._setValue(g,c);if(i.input){a.jqx.aria(i,"aria-valuenow",i.input.val())}},_getClosest:function(b){if(!this.rangeSlider){return this._slider.right}else{b=b-this._track.coord()[this._getSetting("left")]-this._slider.left[this._getSetting("size")]()/2;if(Math.abs(parseInt(this._slider.left.css(this._getSetting("left")),10)-b)<Math.abs(parseInt(this._slider.right.css(this._getSetting("left")),10)-b)){return this._slider.left}else{return this._slider.right}}},_removeEventHandlers:function(){this.removeHandler(this._slider.right,this._getEvent("mousedown"),this._startDrag);this.removeHandler(this._slider.left,this._getEvent("mousedown"),this._startDrag);this.removeHandler(a(document),this._getEvent("mouseup")+"."+this.host.attr("id"),this._stopDrag);this.removeHandler(a(document),this._getEvent("mousemove")+"."+this.host.attr("id"),this._performDrag);this.removeHandler(this._leftButton,this._getEvent("click"),this._leftButtonHandler);this.removeHandler(this._rightButton,this._getEvent("click"),this._rightButtonHandler);this.removeHandler(this._track,this._getEvent("mousedown"),this._trackMouseDownHandler);this.element.onselectstart=null;this.removeHandler(this.host,this._getEvent("mousewheel"));this.removeHandler(this.host,this._getEvent("keydown"))},_rightButtonClick:function(){if(this.orientation=="horizontal"&&!this.rtl){this.incrementValue()}else{this.decrementValue()}},_leftButtonClick:function(){if(this.orientation=="horizontal"&&!this.rtl){this.decrementValue()}else{this.incrementValue()}},_rightButtonHandler:function(c){var b=c.data.self;if(b.layout=="normal"){b._rightButtonClick()}else{b._leftButtonClick()}return false},_leftButtonHandler:function(c){var b=c.data.self;if(b.layout=="normal"){b._leftButtonClick()}else{b._rightButtonClick()}return false},_startDrag:function(d){var e=a.jqx.mobile.getTouches(d);var f=e[0];var c=d.data.self;c._capturedElement=a(d.target);c._startX=a(d.target).coord().left;c._startY=a(d.target).coord().top;var b=a.jqx.position(d);c._mouseStartX=b.left;c._mouseStartY=b.top;c._mouseDown=true;if(c.tooltip){c._showTooltip(c._capturedElement,c.value)}if(c._isTouchDevice){return false}},_stopDrag:function(){var b=this;if(b._slideStarted){b._raiseEvent(2,{value:b.getValue()})}if(!b._slideStarted||b._capturedElement==null){b._capturedElement=null;return}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}b._slider.left.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._slider.right.removeClass(b.toThemeProperty("jqx-fill-state-pressed"));b._slideStarted=false;b._capturedElement=null;if(b.sliderTooltip){b.sliderTooltip.fadeOut("fast")}},_performDrag:function(d){var c=d.data.self;if(c._capturedElement!==null){var f=a.jqx.mobile.getTouches(d);var g=f[0];if(d.which===0&&a.jqx.browser.msie&&a.jqx.browser.version<9){c._stopDrag();return false}var b=a.jqx.position(d);var e=c.orientation=="horizontal"?b.left:b.top;c._isDragged(e);if(c._slideStarted||c._isTouchDevice){return c._dragHandler(e)}}},_isDragged:function(b){if(Math.abs(b-this[this._getSetting("mouse")])>2&&!this._slideStarted){this._slideStarted=true;if(this._valueChanged(3)){this._raiseEvent(3,{value:this.getValue()})}}else{if(this._capturedElement===null){this._slideStarted=false}}},_dragHandler:function(b){b=(b-this[this._getSetting("mouse")])+this[this._getSetting("start")];var c=this._getValueByPosition(b);if(this.rangeSlider){var d=this._slider.right,f=this._slider.left;var e=this._getSetting("left");if(this._capturedElement[0]===f[0]){if(parseFloat(b)>d.coord()[e]){b=d.coord()[e]}}else{if(parseFloat(b)<f.coord()[e]){b=f.coord()[e]}}}this._setValue(c,this._capturedElement,b);return false},_getValueByPosition:function(b){if(this.mode==="default"){return this._getFloatingValueByPosition(b)}else{return this._getFixedValueByPosition(b)}},_getFloatingValueByPosition:function(b){var c=b-this._track.coord()[this._getSetting("left")]+this._slider.left.width()/2,g=c/this._track[this._getSetting("size")](),h;if(c<0){c=0}if(this.int64===false){h=(this.max-this.min)*g+this.min}else{var f=new a.jqx.math().fromNumber(this._track[this._getSetting("size")](),10);var d=this._max64.subtract(this._min64);var e=Math.round(this._divide64(d,f)*c);h=new a.jqx.math().fromNumber(e,10).add(this._min64)}if(this.layout=="normal"){if(this.orientation==="horizontal"&&!this.rtl){return h}else{return(this.max+this.min)-h}}else{if(this.orientation==="horizontal"&&!this.rtl){if(this.int64===false){return(this.max+this.min)-h}else{return(this._max64.add(this._min64)).subtract(h)}}else{return h}}},_getThumbSize:function(){if(this.__thumbSize){return this.__thumbSize}var b=this._slider.left[this._getSetting("size")]();this.__thumbSize=b;return b},_getTrackSize:function(){if(this.__trackSize){return this.__trackSize}var b=this._track[this._getSetting("size")]();this.__trackSize=b;return b},_getFixedValueByPosition:function(f){var i=this._getTrackSize(),d=this._getThumbSize(),k={number:-1,distance:Number.MAX_VALUE},c,h,g,j;if(this.int64===false){c=this.step;g=(this.max-this.min)/c;h=(i)/g;j=this._track.coord()[this._getSetting("left")]-d/2;for(var e=this.min;e<=this.max+this.step;e+=this.step){if(Math.abs(k.distance-f)>Math.abs(j-f)){k.distance=j;k.number=e}j+=h}}else{c=this._step64;g=(this._max64.subtract(this._min64)).div(this._step64);h=new a.jqx.math().fromNumber(i,10).div(g).toNumber();j=this._track.coord()[this._getSetting("left")]-d/2;k={number:new a.jqx.math().fromString(this._min64.toString(),10),distance:j};for(var b=new a.jqx.math().fromString(this._min64.toString(),10);b.lessThanOrEqual(this._max64.add(this._step64));b=b.add(this._step64)){if(Math.abs(k.distance-f)>Math.abs(j-f)){k.distance=j;k.number=new a.jqx.math().fromString(b.toString(),10)}j+=h}}if(this.layout=="normal"){if(this.orientation==="horizontal"&&!this.rtl){return k.number}else{return(this.max+this.min)-k.number}}else{if(this.orientation==="horizontal"&&!this.rtl){return(this.max+this.min)-k.number}else{return k.number}}},_setValue:function(e,d,b){if(!this._slideEvent||!this._slideEvent.args.cancel){e=this._handleValue(e,d);this._setSliderPosition(e,d,b);this._fixZIndexes();if(this._valueChanged(1)){var c=this._raiseEvent(1,{value:this.getValue()})}if(this._valueChanged(0)){this._raiseEvent(0,{value:this.getValue()})}if(this.input){if(!this.rangeSlider){this.input.val(this.value.toString())}else{if(this.values){if(this.value.rangeEnd!=undefined&&this.value.rangeStart!=undefined){this.input.val(this.value.rangeStart.toString()+"-"+this.value.rangeEnd.toString())}}}}}},_valueChanged:function(c){var b=this.getValue();return(!this.rangeSlider&&this._lastValue[c]!==b)||(this.rangeSlider&&(typeof this._lastValue[c]!=="object"||parseFloat(this._lastValue[c].rangeEnd)!==parseFloat(b.rangeEnd)||parseFloat(this._lastValue[c].rangeStart)!==parseFloat(b.rangeStart)))},_handleValue:function(c,b){c=this._validateValue(c,b);if(b[0]===this._slider.left[0]){this.values[0]=this.int64?c.toString():c;if(this.int64===true){this._value64[0]=c}}if(b[0]===this._slider.right[0]){this.values[1]=this.int64?c.toString():c;if(this.int64===true){this._values64[1]=c}}if(this.rangeSlider){this.value={rangeStart:this.values[0],rangeEnd:this.values[1]};if(this.int64===true){this._value64={rangeStart:this._values64[0],rangeEnd:this._values64[1]}}}else{if(this.int64===false){this.value=c}else{this.value=c.toString();this._value64=c}}return c},_fixZIndexes:function(){if(this.values[1]-this.values[0]<0.5&&this.max-this.values[0]<0.5){this._slider.left.css("z-index",20);this._slider.right.css("z-index",15)}else{this._slider.left.css("z-index",15);this._slider.right.css("z-index",20)}},_refreshRangeBar:function(){var e=this._getSetting("left");var c=this._getSetting("size");var d=this.rtl&&this.orientation=="horizontal";if(this.layout=="normal"){var b=this._slider.left.position()[e];if(this.orientation==="vertical"||d){b=this._slider.right.position()[e]}}else{var b=this._slider.right.position()[e];if(this.orientation==="vertical"||d){var b=this._slider.left.position()[e]}}this._rangeBar.css(e,b+this._slider.left[c]()/2);this._rangeBar[c](Math.abs(this._slider.right.position()[e]-this._slider.left.position()[e]))},_validateValue:function(c,b){if(this.int64===false){if(c>this.max){c=this.max}if(c<this.min){c=this.min}if(this.rangeSlider){if(b[0]===this._slider.left[0]){if(c>=this.values[1]){c=this.values[1]}}else{if(c<=this.values[0]){c=this.values[0]}}}}else{if(c.greaterThan(this._max64)){c=this._max64}if(c.lessThan(this._min64)){c=this._min64}}return c},_setSliderPosition:function(h,c,b){var f=this._track[this._getSetting("size")](),e,i;if(b){b-=this._track.coord()[this._getSetting("left")]}if(this.int64){if(typeof h==="number"){h=new a.jqx.math().fromNumber(h,10)}else{if(typeof h==="string"){h=new a.jqx.math().fromString(h,10)}}if(h.greaterThan(this._max64)){h=new a.jqx.math().fromString(this._max64.toString(),10)}if(h.lessThan(this._min64)){h=new a.jqx.math().fromString(this._min64.toString(),10)}var g=this._divide64(h.subtract(this._min64),this._max64.subtract(this._min64));var d=1-g;if(this.layout=="normal"){var e=g;if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=d}}else{var e=d;if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=g}}i=f*e-this._slider.left[this._getSetting("size")]()/2;c.css(this._getSetting("left"),i)}else{if(this.layout=="normal"){var e=(h-this.min)/(this.max-this.min);if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=1-((h-this.min)/(this.max-this.min))}}else{var e=1-((h-this.min)/(this.max-this.min));if(this.orientation!="horizontal"||(this.orientation=="horizontal"&&this.rtl)){e=(h-this.min)/(this.max-this.min)}}i=f*e-this._slider.left[this._getSetting("size")]()/2;c.css(this._getSetting("left"),i)}if(this.tooltip){this._showTooltip(c,this.value)}this._refreshRangeBar()},_divide64:function(e,b){var h,j,c,k,m;h=e.toString();c=b.toString();if(c.length>15){var l=c.length-15;c=c.slice(0,15)+"."+c.slice(15);k=parseFloat(c);if(h.length>l){var g=h.length-l;h=h.slice(0,g)+"."+h.slice(g)}else{if(h.length===l){h="0."+h}else{var f="0.";for(var d=0;d<l-h.length;d++){f+="0"}h=f+""+h}}j=parseFloat(h)}else{j=e.toNumber();k=b.toNumber()}m=j/k;return m},_showTooltip:function(s,n){var g=this;if(g._slideStarted||g._capturedElement!=null||g._mouseDown){if(g.tooltipFormatFunction){n=g.tooltipFormatFunction(n)}else{if(g.mode==="default"){n=new Number(n).toFixed(2)}}if(!g.toolTipCreated){var c="tooltip"+g.element.id;var d=a('<div id="'+c+'"><div id ="'+c+'Main"><div id="'+c+'Text"></div></div><div id="'+c+'Arrow"></div></div>');d.css("visibility","hidden");d.css("display","none");d.css("z-index",99999);d.css("box-shadow","none");g.sliderTooltip=d;g.sliderTooltip.appendTo(a(document.body));a("#"+c+"Text").html(n);var l="#"+c;var h=a(l+"Main");var p=a(l+"Text");var q=a(l+"Arrow");h.addClass(g.toThemeProperty("jqx-widget"));p.addClass(g.toThemeProperty("jqx-widget"));q.addClass(g.toThemeProperty("jqx-widget"));h.addClass(g.toThemeProperty("jqx-fill-state-normal"));p.addClass(g.toThemeProperty("jqx-fill-state-normal"));q.addClass(g.toThemeProperty("jqx-fill-state-normal"));a(l).addClass(g.toThemeProperty("jqx-tooltip"));a(l).addClass(g.toThemeProperty("jqx-popup"));h.addClass(g.toThemeProperty("jqx-tooltip-main"));p.addClass(g.toThemeProperty("jqx-tooltip-text"));q.addClass(g.toThemeProperty("jqx-tooltip-arrow"));g.sliderTooltipContent=p;g.sliderTooltipArrow=q;g.sliderTooltipMain=h;g.arrow_size=5;g.toolTipCreated=true;if(g.rangeSlider){g.sliderTooltipArrow.css("visibility","hidden")}}var j=s.coord();g.sliderTooltip[0].style.display="block";g.sliderTooltip[0].style.visibility="visible";var k=g.sliderButtonSize+g.tickSize;if(!g.rangeSlider){g.sliderTooltipContent[0].innerHTML=n}else{var o=g.value?g.value.rangeStart:"";var b=g.value?g.value.rangeEnd:"";if(o!==""){g.sliderTooltipContent[0].innerHTML=o+" - "+b}else{g.sliderTooltip[0].style.display="none";g.sliderTooltip[0].style.visibility="hidden"}}var r=g.sliderTooltip.width();if(g.orientation=="horizontal"){var f=j.left+g.sliderButtonSize/2-r/2;if(g.rangeSlider){var e=(g._slider.right.coord().left-g._slider.left.coord().left-g._thumbSize)/2;f=g._slider.left.coord().left-r/2+e+g._thumbSize}switch(g.tooltipPosition){case"far":var i=j.top+k+g.arrow_size;g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-t-b"));g.sliderTooltipArrow.css({"border-width":"0 "+g.arrow_size+"px "+g.arrow_size+"px"});g.sliderTooltipArrow.offset({top:i-g.arrow_size,left:f-g.arrow_size/2-1+r/2});break;case"near":var i=j.top-g.arrow_size-g.sliderTooltip.height()-1;g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-t-b"));g.sliderTooltipArrow.css({"border-width":g.arrow_size+"px "+g.arrow_size+"px  0px"});g.sliderTooltipArrow.offset({top:i+g.sliderTooltip.height(),left:f-g.arrow_size/2-1+r/2});break}}else{var m=g.sliderTooltip.height();var f=j.left-r-g.arrow_size-g.tickSize;var i=j.top+g._thumbSize/2-m/2-1;if(g.rangeSlider){var e=(g._slider.right.coord().top-g._slider.left.coord().top-g._thumbSize)/2;i=g._slider.left.coord().top-m/2+e+g._thumbSize}switch(g.tooltipPosition){case"far":var f=j.left+g._thumbSize+g.arrow_size+g.tickSize;g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-l-r"));g.sliderTooltipArrow.css({"border-width":g.arrow_size+"px "+g.arrow_size+"px "+g.arrow_size+"px 0px"});g.sliderTooltipArrow.offset({top:i+g.sliderTooltip.height()/2-g.arrow_size/2-2,left:f-g.arrow_size});break;case"near":g.sliderTooltip.offset({top:i,left:f});g.sliderTooltipArrow.addClass(g.toThemeProperty("jqx-tooltip-arrow-l-r"));g.sliderTooltipArrow.css({"border-width":g.arrow_size+"px 0px "+g.arrow_size+"px "+g.arrow_size+"px"});g.sliderTooltipArrow.offset({top:i+g.sliderTooltip.height()/2-g.arrow_size/2-2,left:f+r+2});break}}}},_validateDropPosition:function(e,b){var c=this._track[this._getSetting("size")](),d=b[this._getSetting("size")]();if(e<-d/2){e=-d/2}if(e>c-d/2){e=c-d/2}return Math.floor(e)},propertyChangedHandler:function(b,c,f,e){b.__trackSize=null;b.__thumbSize=null;switch(c){case"theme":a.jqx.utilities.setTheme(f,e,b.host);b._leftButton.jqxRepeatButton({theme:e});b._rightButton.jqxRepeatButton({theme:e});break;case"disabled":if(e){b.disabled=true;b.disable()}else{b.disabled=false;b.enable()}break;case"width":case"height":b.__trackSize=null;b.__thumbSize=null;b._performLayout();b._initialSettings();break;case"min":case"max":b._performLayout();b.__trackSize=null;b.__thumbSize=null;if(b.int64===true){b["_"+c+"64"]=new a.jqx.math().fromString(e.toString(),10)}b._initialSettings();break;case"showTicks":case"ticksPosition":case"tickSize":b._performLayout();b._initialSettings();break;case"ticksFrequency":case"minorTicksFrequency":if(b.int64===true){b["_"+c+"64"]=new a.jqx.math().fromString(e.toString(),10)}b._performLayout();b._initialSettings();break;case"showRange":case"showButtons":case"orientation":case"rtl":b._render();b._performLayout();b._initialSettings();break;case"buttonsPosition":b._refresh();break;case"rangeSlider":if(!e){b.value=b.value.rangeEnd}else{b.value={rangeEnd:b.value,rangeStart:b.value}}b._render();b._performLayout();b._initialSettings();break;case"value":var g=e;if(b.int64===true){g=new a.jqx.math().fromString(e.toString(),10);b._value64=g}else{if(!b.rangeSlider){b.value=parseFloat(e)}}b.setValue(g);break;case"values":var d=e;if(b.int64===true){d=[new a.jqx.math().fromString(e[0].toString(),10),new a.jqx.math().fromString(e[1].toString(),10)];b._values64=d}b.setValue(d);break;case"tooltip":break;case"step":b._step64=new a.jqx.math().fromString(e.toString(),10);break;default:b._refresh()}},incrementValue:function(b){if(this.int64===false){if(b==undefined||isNaN(parseFloat(b))){b=this.step}if(this.rangeSlider){if(this.values[1]<this.max){this._setValue(this.values[1]+b,this._slider.right)}}else{if(this.values[1]>=this.min&&this.values[1]<this.max){this._setValue(this.values[1]+b,this._slider.right)}}}else{if(b==undefined||isNaN(parseFloat(b))){b=this._step64}else{b=new a.jqx.math().fromString(b.toString(),10)}var c=this._values64[1].add(b);if(c.lessThan(this._values64[1])){c=this._max64}if(this.rangeSlider){if(this._values64[1].lessThan(this._max64)){this._setValue(c,this._slider.right)}}else{if(this._values64[1].greaterThanOrEqual(this._min64)&&this._values64[1].lessThan(this._max64)){this._setValue(c,this._slider.right)}}}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}},decrementValue:function(b){if(this.int64===false){if(b==undefined||isNaN(parseFloat(b))){b=this.step}if(this.rangeSlider){if(this.values[0]>this.min){this._setValue(this.values[0]-b,this._slider.left)}}else{if(this.values[1]<=this.max&&this.values[1]>this.min){this._setValue(this.values[1]-b,this._slider.right)}}}else{if(b==undefined||isNaN(parseFloat(b))){b=this._step64}else{b=new a.jqx.math().fromString(b.toString(),10)}var c;if(this.rangeSlider){c=this._values64[0].subtract(b);if(c.greaterThan(this._values64[0])){c=this._min64}if(this._values64[0].greaterThan(this._min64)){this._setValue(c,this._slider.left)}}else{c=this._values64[1].subtract(b);if(c.greaterThan(this._values64[1])){c=this._min64}if(this._values64[1].lessThanOrEqual(this._max64)&&this._values64[1].greaterThan(this._min64)){this._setValue(c,this._slider.right)}}}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}},val:function(b){if(arguments.length==0||(!a.isArray(b)&&typeof(b)=="object")){return this.getValue()}if(this.int64===false){this.setValue(b)}else{value64=new a.jqx.math().fromString(b.toString(),10);this.setValue(value64)}},setValue:function(e){if(this.rangeSlider){var c,b;if(arguments.length<2){if(e instanceof Array){c=e[0];b=e[1]}else{if(typeof e==="object"&&typeof e.rangeStart!=="undefined"&&typeof e.rangeEnd!=="undefined"){c=e.rangeStart;b=e.rangeEnd}}}else{c=arguments[0];b=arguments[1]}this._triggerEvents=false;this._setValue(b,this._slider.right);this._triggerEvents=true;this._setValue(c,this._slider.left)}else{this._triggerEvents=false;var d=this.int64?this._min64:this.min;this._setValue(d,this._slider.left);this._triggerEvents=true;this._setValue(e,this._slider.right)}if(this.input){a.jqx.aria(this,"aria-valuenow",this.input.val())}},getValue:function(){var b=this.value;if(this.int64===true){b=this._value64.toString()}return b},_enable:function(b){if(b){this._addEventHandlers();this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{this._removeEventHandlers();this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._leftButton.jqxRepeatButton({disabled:this.disabled});this._rightButton.jqxRepeatButton({disabled:this.disabled})},disable:function(){this._enable(false);a.jqx.aria(this,"aria-disabled",true)},enable:function(){this._enable(true);a.jqx.aria(this,"aria-disabled",false)}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxsplitter.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxsplitter.js
new file mode 100644 (file)
index 0000000..910d738
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxSplitter","",{});a.extend(a.jqx._jqxSplitter.prototype,{defineInstance:function(){var b={width:300,height:300,panels:[],orientation:"vertical",disabled:false,splitBarSize:5,touchSplitBarSize:15,panel1:null,panel2:null,_eventsMap:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave"},_isTouchDevice:false,_isNested:false,resizable:true,touchMode:"auto",showSplitBar:true,initContent:null,_events:["resize","expanded","collapsed","resizeStart","layout"]};a.extend(true,this,b);return b},createInstance:function(){this.render()},_initOverlay:function(b){if(this.overlay||b=="undefined"){this.overlay.remove();this.overlay=null}else{if(b==true){this.overlay=a("<div style='z-index: 100; background: #fff;'></div>");this.overlay.css("opacity",0.01);this.overlay.css("position","absolute");this.overlay.appendTo(a(document.body));var c=this.host.coord();this.overlay.css("left","0px");this.overlay.css("top","0px");this.overlay.width(a(window).width());this.overlay.height(a(window).height());this.overlay.addClass("jqx-disableselect");if(this.orientation=="horizontal"){this.overlay.css("cursor","row-resize")}else{this.overlay.css("cursor","col-resize")}}}},_startDrag:function(b){if(b.target==this.splitBarButton[0]||this.disabled){return true}if(this.panels[0].collapsed||this.panels[1].collapsed||!this.resizable){return true}if(this.overlay==null){this._dragging=true;this._initOverlay(true);this._dragStart=a.jqx.position(b);return false}return true},_drag:function(b){if(this.panels[0].collapsed||this.panels[1].collapsed||this.disabled){return true}if(!this._dragging){return true}var i=this.orientation=="horizontal"?"top":"left";var k=this.orientation=="vertical"?"width":"height";this._position=a.jqx.position(b);if(this.overlay&&!this._splitBarClone){if(Math.abs(this._position[i]-this._dragStart[i])>=3){var m=this.splitBar.coord();this._cloneStart={left:m.left,top:m.top};this._splitBarClone=this._createSplitBarClone();this._raiseEvent(3,{panels:this.panels});return}}if(this._splitBarClone){var j,c;var n=this.host[k]();var d=n/100;var f=1/d;var h=0;var l=this._splitBarClone[k]()+2;var g=parseInt(this.host.coord()[i]);var e=this._position[i]-this._dragStart[i]+this._cloneStart[i]-g;if(h>e){e=h}if(e>n+h-l){e=n+h-l}j=this.panels[0].min;c=this.panels[1].min;if(c.toString().indexOf("%")!=-1){c=parseFloat(c)*d}if(j.toString().indexOf("%")!=-1){j=parseFloat(j)*d}this._splitBarClone.removeClass(this.toThemeProperty("jqx-splitter-splitbar-invalid"));if(e<j){this._splitBarClone.addClass(this.toThemeProperty("jqx-splitter-splitbar-invalid"));e=j}if(e>n+h-l-c){this._splitBarClone.addClass(this.toThemeProperty("jqx-splitter-splitbar-invalid"));e=n+h-l-c}this._splitBarClone.css(i,e);if(b.preventDefault){b.preventDefault()}if(b.stopPropagation){b.stopPropagation()}return false}return true},resize:function(c,b){this.width=c;this.height=b;this._arrange()},_resize:function(){var h=this.orientation=="horizontal"?"height":"width";var f=this.orientation=="horizontal"?"top":"left";var c=this._splitBarClone.css(f);var b=this.host[h]();var e=b/100;var d=1/e;var g=this.panels[0].size;if(g.toString().indexOf("%")!=-1){this.panels[0].size=parseFloat(c)*d+"%"}else{this.panels[0].size=parseFloat(c)}this._layoutPanels();this._raiseEvent(0,{panels:this.panels})},_stopDrag:function(){if(this._dragging){this._initOverlay()}this._dragging=false;if(this._splitBarClone){if(this.panels[0].collapsed||this.panels[1].collapsed||this.disabled){return true}this._resize();this._splitBarClone.remove();this._splitBarClone=null}},_createSplitBarClone:function(){var b=this.splitBar.clone();b.fadeTo(0,0.7);b.css("z-index",99999);if(this.orientation=="vertical"){b.css("cursor","col-resize")}else{b.css("cursor","row-resize")}this.host.append(b);return b},_eventName:function(b){if(this._isTouchDevice){return this._eventsMap[b]}else{return b}},_addHandlers:function(){var c=this;a.jqx.utilities.resize(this.host,function(){c._layoutPanels()});this.addHandler(this.splitBar,"dragstart."+this.element.id,function(e){return false});if(this.splitBarButton){this.addHandler(this.splitBarButton,"click."+this.element.id,function(){var e=function(f){if(!f.collapsed){c.collapse()}else{c.expand()}};if(c.panels[0].collapsible){e(c.panels[0])}else{if(c.panels[1].collapsible){e(c.panels[1])}}});this.addHandler(this.splitBarButton,this._eventName("mouseenter"),function(){c.splitBarButton.addClass(c.toThemeProperty("jqx-splitter-collapse-button-hover"));c.splitBarButton.addClass(c.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(this.splitBarButton,this._eventName("mouseleave"),function(){c.splitBarButton.removeClass(c.toThemeProperty("jqx-splitter-collapse-button-hover"));c.splitBarButton.removeClass(c.toThemeProperty("jqx-fill-state-hover"))})}this.addHandler(a(document),this._eventName("mousemove")+"."+this.element.id,function(e){return c._drag(e)});this.addHandler(a(document),this._eventName("mouseup")+"."+this.element.id,function(){return c._stopDrag()});this.addHandler(this.splitBar,this._eventName("mousedown"),function(e){return c._startDrag(e)});this.addHandler(this.splitBar,this._eventName("mouseenter"),function(){if(c.resizable&&!c.disabled){c.splitBar.addClass(c.toThemeProperty("jqx-splitter-splitbar-hover"));c.splitBar.addClass(c.toThemeProperty("jqx-fill-state-hover"))}});this.addHandler(this.splitBar,this._eventName("mouseleave"),function(){if(c.resizable&&!c.disabled){c.splitBar.removeClass(c.toThemeProperty("jqx-splitter-splitbar-hover"));c.splitBar.removeClass(c.toThemeProperty("jqx-fill-state-hover"))}});if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var d=null;if(window.parent&&document.referrer){d=document.referrer}if(d&&d.indexOf(document.location.host)!=-1){var b=function(e){c._stopDrag()};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",b,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",b)}}}}}},_removeHandlers:function(){this.removeHandler(a(window),"resize."+this.element.id);if(this.splitBarButton){this.removeHandler(this.splitBarButton,"click."+this.element.id);this.removeHandler(this.splitBarButton,this._eventName("mouseenter"));this.removeHandler(this.splitBarButton,this._eventName("mouseleave"))}this.removeHandler(a(document),this._eventName("mousemove")+"."+this.element.id);this.removeHandler(a(document),this._eventName("mouseup")+"."+this.element.id);if(this.splitBar){this.removeHandler(this.splitBar,"dragstart."+this.element.id);this.removeHandler(this.splitBar,this._eventName("mousedown"));this.removeHandler(this.splitBar,this._eventName("mouseenter"));this.removeHandler(this.splitBar,this._eventName("mouseleave"))}},render:function(){if(this.splitBar){this.splitBar.remove()}var c=this.host.children();if(c.length!=2){throw"Invalid HTML Structure! jqxSplitter requires 1 container DIV tag and 2 nested DIV tags."}if(c.length==2){var e=c[0].className.split(" ");var b=c[1].className.split(" ");if(e.indexOf("jqx-reset")!=-1&&e.indexOf("jqx-splitter")!=-1&&e.indexOf("jqx-widget")!=-1){throw"Invalid HTML Structure! Nested jqxSplitter cannot be initialized from a Splitter Panel. You need to add a new DIV tag inside the Splitter Panel and initialize the nested jqxSplitter from it!"}if(b.indexOf("jqx-reset")!=-1&&b.indexOf("jqx-splitter")!=-1&&b.indexOf("jqx-widget")!=-1){throw"Invalid HTML Structure! Nested jqxSplitter cannot be initialized from a Splitter Panel. You need to add a new DIV tag inside the Splitter Panel and initialize the nested jqxSplitter from it!"}}if(this.host.parent().length>0&&this.host.parent()[0].className.indexOf("jqx-splitter")!=-1){if(this.element.className.indexOf("jqx-splitter-panel")!=-1){throw"Invalid HTML Structure! Nested jqxSplitter cannot be initialized from a Splitter Panel. You need to add a new DIV tag inside the Splitter Panel and initialize the nested jqxSplitter from it!"}this._isNested=true;if(this.width==300){this.width="100%"}if(this.height==300){this.height="100%"}if(this.width=="100%"&&this.height=="100%"){this.host.addClass("jqx-splitter-nested");if(this.host.parent()[0].className.indexOf("jqx-splitter-panel")!=-1){this.host.parent().addClass("jqx-splitter-panel-nested")}}}this._hasBorder=(this.host.hasClass("jqx-hideborder")==false)||this.element.style.borderTopWidth!="";this._removeHandlers();this._isTouchDevice=a.jqx.mobile.isTouchDevice();this._validate();this.panel1.css("left","0px");this.panel1.css("top","0px");this.panel2.css("left","0px");this.panel2.css("top","0px");this.splitBar=a("<div><div></div></div>");if(!this.resizable){this.splitBar.css("cursor","default")}this.splitBarButton=this.splitBar.find("div:last");this._setTheme();this.splitBar.insertAfter(this.panel1);this._arrange();if(this.panels[0].collapsible==false&&this.panels[1].collapsible==false){this.splitBarButton.hide()}var d=this;this._addHandlers();if(this.initContent){this.initContent()}if(this.disabled){this.disable()}},_hiddenParent:function(){return a.jqx.isHidden(this.host)},_setTheme:function(){this.panel1.addClass(this.toThemeProperty("jqx-widget-content"));this.panel2.addClass(this.toThemeProperty("jqx-widget-content"));this.panel1.addClass(this.toThemeProperty("jqx-splitter-panel"));this.panel2.addClass(this.toThemeProperty("jqx-splitter-panel"));this.panel1.addClass(this.toThemeProperty("jqx-reset"));this.panel2.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-reset"));this.host.addClass(this.toThemeProperty("jqx-splitter"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.splitBar.addClass(this.toThemeProperty("jqx-splitter-splitbar-"+this.orientation));this.splitBar.addClass(this.toThemeProperty("jqx-fill-state-normal"));this.splitBarButton.addClass(this.toThemeProperty("jqx-splitter-collapse-button-"+this.orientation));this.splitBarButton.addClass(this.toThemeProperty("jqx-fill-state-pressed"))},_validate:function(){var b=this.host.children();if(b.length!=2){throw"Invalid HTML Structure! jqxSplitter requires two nested DIV tags!"}if(this.panels&&!this.panels[1]){if(!this.panels[0]){this.panels=[{size:"50%"},{size:"50%"}]}else{this.panels[1]={}}}else{if(this.panels==undefined){this.panels=[{size:"50%"},{size:"50%"}]}}var b=this.host.children();this.panel1=this.panels[0].element=a(b[0]);this.panel2=this.panels[1].element=a(b[1]);this.panel1[0].style.minWidth="";this.panel1[0].style.maxWidth="";this.panel2[0].style.minWidth="";this.panel2[0].style.maxWidth="";a.each(this.panels,function(){if(this.min==undefined){this.min=0}if(this.size==undefined){this.size=0}if(this.size<0){this.size=0}if(this.min<0){this.min=0}if(this.collapsible==undefined){this.collapsible=true}if(this.collapsed==undefined){this.collapsed=false}if(this.size!=0){if(this.size.toString().indexOf("px")!=-1){this.size=parseInt(this.size)}if(this.size.toString().indexOf("%")==-1){if(parseInt(this.min)>parseInt(this.size)){this.min=this.size}}else{if(this.min.toString().indexOf("%")!=-1){if(parseInt(this.min)>parseInt(this.size)){this.min=this.size}}}}})},_arrange:function(){if(this.width!=null){var d=this.width;if(typeof d!="string"){d=parseInt(this.width)+"px"}this.host.css("width",d)}if(this.height!=null){var b=this.height;if(typeof b!="string"){b=parseInt(this.height)+"px"}this.host.css("height",b)}this._splitBarSize=!this._isTouchDevice?this.splitBarSize:this.touchSplitBarSize;if(!this.showSplitBar){this._splitBarSize=0;this.splitBar.hide()}var c=this.orientation=="horizontal"?"width":"height";this.splitBar.css(c,"100%");this.panel1.css(c,"100%");this.panel2.css(c,"100%");if(this.orientation=="horizontal"){this.splitBar.height(this._splitBarSize)}else{this.splitBar.width(this._splitBarSize)}if(this.orientation==="vertical"){this.splitBarButton.width(this._splitBarSize);this.splitBarButton.height(45)}else{this.splitBarButton.height(this._splitBarSize);this.splitBarButton.width(45)}this.splitBarButton.css("position","relative");if(this.orientation==="vertical"){this.splitBarButton.css("top","50%");this.splitBarButton.css("left","0");this.splitBarButton.css("margin-top","-23px");this.splitBarButton.css("margin-left","-0px")}else{this.splitBarButton.css("left","50%");this.splitBarButton.css("top","0");this.splitBarButton.css("margin-left","-23px");this.splitBarButton.css("margin-top","-0px")}this._layoutPanels()},collapse:function(){if(this.disabled){return}var b=-1;this.panels[0].collapsed=this.panels[1].collapsed=false;this.panels[0].element[0].style.visibility="inherit";this.panels[1].element[0].style.visibility="inherit";if(this.panels[0].collapsible){b=0}else{if(this.panels[1].collapsible){b=1}}if(b!=-1){this.panels[b].collapsed=true;this.panels[b].element[0].style.visibility="hidden";this.splitBar.addClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this._layoutPanels();this._raiseEvent(2,{index:b,panels:this.panels});this._raiseEvent(0,{panels:this.panels})}},expand:function(){if(this.disabled){return}var b=-1;this.panels[0].collapsed=this.panels[1].collapsed=false;this.panels[0].element[0].style.visibility="inherit";this.panels[1].element[0].style.visibility="inherit";if(this.panels[0].collapsible){b=0}else{if(this.panels[1].collapsible){b=1}}if(b!=-1){this.panels[b].collapsed=false;this.panels[b].element[0].style.visibility="inherit";this.splitBar.removeClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this._layoutPanels();this._raiseEvent(1,{index:b,panels:this.panels});this._raiseEvent(0,{panels:this.panels})}},disable:function(){this.disabled=true;this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this.splitBar.addClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this.splitBarButton.addClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"))},enable:function(){this.disabled=false;this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.splitBar.removeClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"));this.splitBarButton.removeClass(this.toThemeProperty("jqx-splitter-splitbar-collapsed"))},refresh:function(b){if(b!=true){this._arrange()}},propertyChangedHandler:function(b,c,e,d){if(c==="panels"||c==="orientation"||c==="showSplitBar"){b.render();return}if(c==="touchMode"){b._isTouchDevice=d}if(c==="disabled"){if(d){b.disable()}else{b.enable()}}else{if(c==="theme"){a.jqx.utilities.setTheme(e,d,b.host)}else{b.refresh()}}},_layoutPanels:function(){var j=this;var q=this.orientation=="horizontal"?"height":"width";var t=this.orientation=="horizontal"?"top":"left";var l,r,e,u;var m=parseInt(this._splitBarSize)+2;if(!this.showSplitBar){m=0}var i=this.host[q]();var k=i/100;var s=1/k;var p=s*m;var h=this.panel1;var g=this.panel2;var n=this.panels[0].size;if(this.panels[0].collapsed){e=true}if(this.panels[1].collapsed){u=true}l=this.panels[0].min;r=this.panels[1].min;if(r.toString().indexOf("%")!=-1){r=parseFloat(r)*k}if(l.toString().indexOf("%")!=-1){l=parseFloat(l)*k}if(this._isNested&&this._isTouchDevice){if(this.orientation=="horizontal"){h.width(this.host.width());g.width(this.host.width())}else{h.height(this.host.height());g.height(this.host.height())}}var f=function(){var w=j.panel1[q]();if(j.splitBar[0].style[t]!=w+"px"){var x=w;if(j.orientation=="vertical"){j.splitBar[0].style.borderLeftColor="";j.splitBar[0].style.borderRightColor="";j.splitBarButton[0].style.width=parseInt(j._splitBarSize)+"px";j.splitBarButton[0].style.left="0px"}else{j.splitBar[0].style.borderTopColor="";j.splitBar[0].style.borderBottomColor="";j.splitBarButton[0].style.height=parseInt(j._splitBarSize)+"px";j.splitBarButton[0].style.top="0px"}if(j._hasBorder){if(i-m==w){if(j.orientation=="vertical"){j.splitBar[0].style.borderRightColor="transparent";j.splitBarButton[0].style.width=parseInt(j._splitBarSize+1)+"px"}else{j.splitBar[0].style.borderBottomColor="transparent";j.splitBarButton[0].style.height=parseInt(j._splitBarSize+1)+"px"}}else{if(w==0){if(j.orientation=="vertical"){j.splitBar[0].style.borderLeftColor="transparent";j.splitBarButton[0].style.width=parseInt(j._splitBarSize+1)+"px";j.splitBarButton[0].style.left="-1px"}else{j.splitBar[0].style.borderTopColor="transparent";j.splitBarButton[0].style.height=parseInt(j._splitBarSize+1)+"px";j.splitBarButton[0].style.top="-1px"}}}}j.splitBar[0].style[t]=x+"px"}if(j.panel2[0].style[t]!=w+m+"px"){j.panel2[0].style[t]=w+m+"px"}};if(e){var b=Math.max(r,i-m);h[q](0);g[q](b)}else{if(u){var b=Math.max(l,i-m);g[q](0);h[q](b)}else{if(n.toString().indexOf("%")!=-1){var c=100-parseFloat(n);h.css(q,parseFloat(n)+"%");c-=p;g.css(q,c+"%");var d=g[q]();if(d<r){var b=d-r;var o=b*s;n=parseFloat(n)+parseFloat(o);var c=100-parseFloat(n);h.css(q,parseFloat(n)+"%");c-=p;g.css(q,c+"%")}var v=h[q]();if(v<l){var o=l*s;h.css(q,parseFloat(o)+"%")}}else{var d=i-n-m;if(h[0].style[q]!=n+"px"){h[q](n)}if(g[0].style[q]!=d+"px"){g[q](d)}if(d<r){n+=d-r;g[q](r);h[q](n)}if(n<l){h[q](l)}}}}f();this._raiseEvent(4,{panels:this.panels})},destroy:function(){this._removeHandlers();a.jqx.utilities.resize(this.host,null,true);this.host.remove()},_raiseEvent:function(d,f){var e=new a.Event(this._events[d]);e.owner=this;e.args=f;var c=this.orientation=="vertical"?"width":"height";var b=new Array();b[0]={};b[1]={};b[0].size=this.orientation=="vertical"?this.panel1[0].offsetWidth:this.panel1[0].offsetHeight;b[1].size=this.orientation=="vertical"?this.panel2[0].offsetWidth:this.panel2[0].offsetHeight;b[0].min=this.panels[0].min;b[1].min=this.panels[1].min;b[0].collapsible=this.panels[0].collapsible;b[1].collapsible=this.panels[1].collapsible;b[0].collapsed=this.panels[0].collapsed;b[1].collapsed=this.panels[1].collapsed;e.args.panels=b;return this.host.trigger(e)}})}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxswitchbutton.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxswitchbutton.js
new file mode 100644 (file)
index 0000000..274ec9d
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxSwitchButton","",{});a.extend(a.jqx._jqxSwitchButton.prototype,{defineInstance:function(){var b={disabled:false,checked:false,onLabel:"On",offLabel:"Off",toggleMode:"default",animationDuration:250,width:90,height:30,animationEnabled:true,thumbSize:"40%",orientation:"horizontal",switchRatio:"50%",metroMode:false,_isMouseDown:false,rtl:false,_dimensions:{horizontal:{size:"width",opSize:"height",oSize:"outerWidth",opOSize:"outerHeight",pos:"left",oPos:"top",opposite:"vertical"},vertical:{size:"height",opSize:"width",oSize:"outerHeight",opOSize:"outerWidth",pos:"top",oPos:"left",opposite:"horizontal"}},_touchEvents:{mousedown:"touchstart",click:"touchend",mouseup:"touchend",mousemove:"touchmove",mouseenter:"mouseenter",mouseleave:"mouseleave"},_borders:{},_isTouchDevice:false,_distanceRequired:3,_isDistanceTraveled:false,_thumb:undefined,_onLabel:undefined,_offLabel:undefined,_wrapper:undefined,_animationActive:false,aria:{"aria-checked":{name:"checked",type:"boolean"},"aria-disabled":{name:"disabled",type:"boolean"}},_events:["checked","unchecked","change"]};a.extend(true,this,b);return b},createInstance:function(b){if(this.element.nodeName){if(this.element.nodeName=="INPUT"||this.element.nodeName=="BUTTON"){throw"jqxSwitchButton can be rendered only from a DIV tag."}}this.host.attr("role","checkbox");a.jqx.aria(this);this.render();var c=this;a.jqx.utilities.resize(this.host,function(){c.element.innerHTML="";c.render()})},resize:function(c,b){this.width=c;this.height=b;this.render()},render:function(){this.innerHTML="";if(this.theme&&this.theme!=""&&(this.theme.indexOf("metro")!=-1||this.theme.indexOf("windowsphone")!=-1||this.theme.indexOf("office")!=-1)){if(this.thumbSize=="40%"){this.thumbSize=12}this.metroMode=true}var c=a.data(document.body,"jqx-switchbutton")||1;this._idHandler(c);a.data(document.body,"jqx-draggables",++c);this._isTouchDevice=a.jqx.mobile.isTouchDevice();this.switchRatio=parseInt(this.switchRatio,10);this._render();this._addClasses();this._performLayout();this._removeEventHandlers();this._addEventHandles();this._disableSelection();var b=this;if(!this.checked){this._switchButton(false,0,true)}if(this.disabled){this.element.disabled=true}},setOnLabel:function(b){this._onLabel.html('<div style="display: inline-block;">'+b+"</div>");this._centerLabels()},setOffLabel:function(b){this._offLabel.html('<div style="display: inline-block;">'+b+"</div>");this._centerLabels()},toggle:function(){if(this.checked){this.uncheck()}else{this.check()}},val:function(b){if(arguments.length==0||(b!=null&&typeof(b)=="object")){return this.checked}if(typeof b=="string"){if(b=="true"){this.check()}if(b=="false"){this.uncheck()}if(b==""){this.indeterminate()}}else{if(b==true){this.check()}if(b==false){this.uncheck()}if(b==null){this.indeterminate()}}return this.checked},uncheck:function(){var b=this;this._switchButton(false);a.jqx.aria(this,"aria-checked",this.checked)},check:function(){var b=this;this._switchButton(true);a.jqx.aria(this,"aria-checked",this.checked)},_idHandler:function(b){if(!this.element.id){var c="jqx-switchbutton-"+b;this.element.id=c}},_dir:function(b){return this._dimensions[this.orientation][b]},_getEvent:function(c){if(this._isTouchDevice){var b=this._touchEvents[c];return a.jqx.mobile.getTouchEventName(b)}else{return c}},_render:function(){this._thumb=a("<div/>");this._onLabel=a("<div/>");this._offLabel=a("<div/>");this._wrapper=a("<div/>");this._onLabel.appendTo(this.host);this._thumb.appendTo(this.host);this._offLabel.appendTo(this.host);this.host.wrapInner(this._wrapper);this._wrapper=this.host.children();this.setOnLabel(this.onLabel);this.setOffLabel(this.offLabel)},_addClasses:function(){var c=this._thumb,d=this._onLabel,b=this._offLabel;this.host.addClass(this.toThemeProperty("jqx-switchbutton"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this._wrapper.addClass(this.toThemeProperty("jqx-switchbutton-wrapper"));c.addClass(this.toThemeProperty("jqx-fill-state-normal"));c.addClass(this.toThemeProperty("jqx-switchbutton-thumb"));d.addClass(this.toThemeProperty("jqx-switchbutton-label-on"));d.addClass(this.toThemeProperty("jqx-switchbutton-label"));b.addClass(this.toThemeProperty("jqx-switchbutton-label-off"));b.addClass(this.toThemeProperty("jqx-switchbutton-label"));if(this.checked){this.host.addClass(this.toThemeProperty("jqx-switchbutton-on"))}else{this.host.removeClass(this.toThemeProperty("jqx-switchbutton-on"))}},_performLayout:function(){var g=this.host,e=this._dir("opSize"),f=this._dir("size"),i=this._wrapper,d;g.css({width:this.width,height:this.height});i.css(e,g[e]());this._thumbLayout();this._labelsLayout();d=this._borders[this._dir("opposite")];i.css(f,g[f]()+this._offLabel[this._dir("oSize")]()+d);i.css(e,g[e]());if(this.metroMode||(this.theme&&this.theme!=""&&(this.theme.indexOf("metro")!=-1||this.theme.indexOf("office")!=-1))){var c=this._thumb,h=this._onLabel,b=this._offLabel;h.css("position","relative");h.css("top","1px");h.css("margin-left","1px");b.css("position","relative");b.css("top","1px");b.css("left","-2px");b.css("margin-right","1px");b.height(h.height()-2);b.width(h.width()-3);h.height(h.height()-2);h.width(h.width()-3);this._thumb[this._dir("size")](this.thumbSize+3);this._thumb.css("top","-1px");this._thumb[this._dir("opSize")](g[this._dir("opSize")]()+2);this._thumb.css("position","relative");this.host.css("overflow","hidden");if(this.checked){this._onLabel.css("visibility","visible");this._offLabel.css("visibility","hidden");this._thumb.css("left","0px")}else{this._onLabel.css("visibility","hidden");this._offLabel.css("visibility","visible");this._thumb.css("left","-2px")}}},_thumbLayout:function(){var d=this.thumbSize,e=this.host,b=0,f={horizontal:0,vertical:0},c=this;if(d.toString().indexOf("%")>=0){d=e[this._dir("size")]()*parseInt(d,10)/100}this._thumb[this._dir("size")](d);this._thumb[this._dir("opSize")](e[this._dir("opSize")]());this._handleThumbBorders()},_handleThumbBorders:function(){this._borders.horizontal=parseInt(this._thumb.css("border-left-width"),10)||0;this._borders.horizontal+=parseInt(this._thumb.css("border-right-width"),10)||0;this._borders.vertical=parseInt(this._thumb.css("border-top-width"),10)||0;this._borders.vertical+=parseInt(this._thumb.css("border-bottom-width"),10)||0;var b=this._borders[this._dir("opposite")];if(this.orientation==="horizontal"){this._thumb.css("margin-top",-b/2);this._thumb.css("margin-left",0)}else{this._thumb.css("margin-left",-b/2);this._thumb.css("margin-top",0)}},_labelsLayout:function(){var g=this.host,c=this._thumb,e=this._dir("opSize"),h=this._dir("size"),b=this._dir("oSize"),f=g[h]()-c[b](),d=this._borders[this._dir("opposite")]/2;this._onLabel[h](f+d);this._offLabel[h](f+d);if(this.rtl){this._onLabel[h](f+2*d)}this._onLabel[e](g[e]());this._offLabel[e](g[e]());this._orderLabels();this._centerLabels()},_orderLabels:function(){if(this.orientation==="horizontal"){var b="left";if(this.rtl){b="right"}this._onLabel.css("float",b);this._thumb.css("float",b);this._offLabel.css("float",b)}else{this._onLabel.css("display","block");this._offLabel.css("display","block")}},_centerLabels:function(){var c=this._onLabel.children("div"),b=this._offLabel.children("div"),e=c.parent(),f=e.height(),g=c.outerHeight(),d=this._borders[this.orientation]/2||0;if(g==0){g=14}var h=Math.floor((f-g)/2)+d;c.css("margin-top",h);b.css("margin-top",h)},_removeEventHandlers:function(){var b="."+this.element.id;this.removeHandler(this._wrapper,this._getEvent("click")+b,this._clickHandle);this.removeHandler(this._thumb,this._getEvent("mousedown")+b,this._mouseDown);this.removeHandler(a(document),this._getEvent("mouseup")+b,this._mouseUp);this.removeHandler(a(document),this._getEvent("mousemove")+b,this._mouseMove);this.removeHandler(this._thumb,"mouseenter"+b);this.removeHandler(this._thumb,"mouseleave"+b)},_addEventHandles:function(){var c="."+this.element.id,b=this;this.addHandler(this._thumb,"mouseenter"+c,function(){b._thumb.addClass(b.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(this._thumb,"mouseleave"+c,function(){b._thumb.removeClass(b.toThemeProperty("jqx-fill-state-hover"))});this.addHandler(this._wrapper,this._getEvent("click")+c,this._clickHandle,{self:this});this.addHandler(this._thumb,this._getEvent("mousedown")+c,this._mouseDown,{self:this});this.addHandler(a(document),this._getEvent("mouseup")+c,this._mouseUp,{self:this});this.addHandler(a(document),this._getEvent("mousemove")+c,this._mouseMove,{self:this})},enable:function(){this.disabled=false;this.element.disabled=false;a.jqx.aria(this,"aria-disabled",this.disabled)},disable:function(){this.disabled=true;this.element.disabled=true;a.jqx.aria(this,"aria-disabled",this.disabled)},_clickHandle:function(c){var b=c.data.self;if((b.toggleMode==="click"||b.toggleMode==="default")&&!b.disabled){if(!b._isDistanceTraveled&&!b._dragged){b._wrapper.stop();b.toggle()}}b._thumb.removeClass(b.toThemeProperty("jqx-fill-state-pressed"))},_mouseDown:function(c){var b=c.data.self,d=b._wrapper;if(b.metroMode){b.host.css("overflow","hidden");b._onLabel.css("visibility","visible");b._offLabel.css("visibility","visible")}b._mouseStartPosition=b._getMouseCoordinates(c);b._buttonStartPosition={left:parseInt(d.css("margin-left"),10)||0,top:parseInt(d.css("margin-top"),10)||0};if(!b.disabled&&(b.toggleMode==="slide"||b.toggleMode==="default")){b._wrapper.stop();b._isMouseDown=true;b._isDistanceTraveled=false;b._dragged=false}b._thumb.addClass(b.toThemeProperty("jqx-fill-state-pressed"))},_mouseUp:function(d){var c=d.data.self;if(c.metroMode){}c._isMouseDown=false;c._thumb.removeClass(c.toThemeProperty("jqx-fill-state-pressed"));if(!c._isDistanceTraveled){return}var f=c._wrapper,b=parseInt(f.css("margin-"+c._dir("pos")),10)||0,e=c._dropHandler(b);if(e){c._switchButton(!c.checked)}else{c._switchButton(c.checked,null,true)}c._isDistanceTraveled=false},_mouseMove:function(f){var d=f.data.self,b=d._getMouseCoordinates(f);if(d._isMouseDown&&d._distanceTraveled(b)){var e=d._dir("pos"),h=d._wrapper,c=d._buttonStartPosition[e],g=c+b[e]-d._mouseStartPosition[e],g=d._validatePosition(g);d._dragged=true;h.css("margin-"+d._dir("pos"),g);d._onLabel.css("visibility","visible");d._offLabel.css("visibility","visible");return false}},_distanceTraveled:function(b){if(this._isDistanceTraveled){return true}else{if(!this._isMouseDown){return false}else{var d=this._mouseStartPosition,c=this._distanceRequired;this._isDistanceTraveled=Math.abs(b.left-d.left)>=c||Math.abs(b.top-d.top)>=c;return this._isDistanceTraveled}}},_validatePosition:function(c){var d=this._borders[this._dir("opposite")],b=0,e=-(this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]())-d;if(b<c){return b}if(e>c){return e}return c},_dropHandler:function(c){var b=0,d=-(this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]()),g=Math.abs(d-b),e=Math.abs(c-this._buttonStartPosition[this._dir("pos")]),f=g*(this.switchRatio/100);if(e>=f){return true}return false},_switchButton:function(c,h,g){if(this.metroMode){this.host.css("overflow","hidden");this._onLabel.css("visibility","visible");this._offLabel.css("visibility","visible");if(c){this._thumb.css("left","0px")}else{this._thumb.css("left","-2px")}}else{this._onLabel.css("visibility","visible");this._offLabel.css("visibility","visible")}var i=this._wrapper,d=this,f={},e=this._borders[this._dir("opposite")],b=0;if(typeof h==="undefined"){h=(this.animationEnabled?this.animationDuration:0)}if(!this.rtl){if(!c){b=this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]()+e}}else{if(c){b=this.host[this._dir("size")]()-this._thumb[this._dir("oSize")]()+e;if(this.metroMode){b+=5}}else{if(this.metroMode){b-=3}}}f["margin-"+this._dir("pos")]=-b;if(c){d.host.addClass(d.toThemeProperty("jqx-switchbutton-on"))}else{d.host.removeClass(d.toThemeProperty("jqx-switchbutton-on"))}i.animate(f,h,function(){if(c){d._onLabel.css("visibility","visible");d._offLabel.css("visibility","hidden")}else{d._onLabel.css("visibility","hidden");d._offLabel.css("visibility","visible")}d.checked=c;if(!g){d._handleEvent(!c)}})},_handleEvent:function(b){if(b!==this.checked){this._raiseEvent(2,{check:this.checked,checked:this.checked})}if(b){this._raiseEvent(0,{checked:this.checked})}else{this._raiseEvent(1,{checked:this.checked})}},_disableSelection:function(){var c=this.host,b=c.find("*");a.each(b,function(d,e){e.onselectstart=function(){return false};a(e).addClass("jqx-disableselect")})},_getMouseCoordinates:function(b){if(this._isTouchDevice){return{left:b.originalEvent.touches[0].pageX,top:b.originalEvent.touches[0].pageY}}else{return{left:b.pageX,top:b.pageY}}},destroy:function(){this._removeEventHandlers();this.host.removeClass(this.toThemeProperty("jqx-switchbutton"));this._wrapper.remove()},_raiseEvent:function(d,b){var c=a.Event(this._events[d]);c.args=b;return this.host.trigger(c)},_themeChanger:function(f,g,e){if(!f){return}if(typeof e==="undefined"){e=this.host}var h=e[0].className.split(" "),b=[],j=[],d=e.children();for(var c=0;c<h.length;c+=1){if(h[c].indexOf(f)>=0){b.push(h[c]);j.push(h[c].replace(f,g))}}this._removeOldClasses(b,e);this._addNewClasses(j,e);for(var c=0;c<d.length;c+=1){this._themeChanger(f,g,a(d[c]))}},_removeOldClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.removeClass(d[b])}},_addNewClasses:function(d,c){for(var b=0;b<d.length;b+=1){c.addClass(d[b])}},propertyChangedHandler:function(b,c,e,d){switch(c){case"disabled":if(d){this.disable()}else{this.enable()}break;case"switchRatio":this.switchRatio=parseInt(this.switchRatio,10);break;case"checked":if(d){this.check()}else{this.uncheck()}break;case"onLabel":this.setOnLabel(d);break;case"offLabel":this.setOffLabel(d);break;case"theme":a.jqx.utilities.setTheme(e,d,b.host);break;case"width":case"height":case"thumbSize":case"orientation":this._wrapper.css("margin-left","0px");this._wrapper.css("margin-top","0px");this._performLayout();this._wrapper.css("left","0px");this._wrapper.css("top","0px");this._switchButton(this.checked,0,true);break}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtabs.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtabs.js
new file mode 100644 (file)
index 0000000..4c7531d
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxTabs","",{});a.extend(a.jqx._jqxTabs.prototype,{defineInstance:function(){var b={scrollAnimationDuration:200,enabledHover:true,disabled:false,collapsible:false,animationType:"none",enableScrollAnimation:true,contentTransitionDuration:450,toggleMode:"click",selectedItem:0,height:"auto",width:"auto",position:"top",selectionTracker:false,scrollable:true,scrollPosition:"right",scrollStep:70,autoHeight:true,headerHeight:null,showCloseButtons:false,canCloseAllTabs:true,closeButtonSize:16,arrowButtonSize:16,keyboardNavigation:true,reorder:false,selectionTrackerAnimationDuration:300,_isTouchDevice:false,roundedCorners:true,_headerExpandingBalance:0,_dragStarted:false,_tabCaptured:false,_lastUnorderedListPosition:0,_selectedItem:0,_titleList:[],_contentList:[],_contentWrapper:null,_unorderedList:null,_scrollTimeout:null,isCollapsed:false,touchMode:false,initTabContent:null,enableDropAnimation:false,_currentEvent:null,_needScroll:true,_isAnimated:{},_events:["created","selected","add","removed","enabled","disabled","selecting","unselecting","unselected","dragStart","dragEnd","locked","unlocked","collapsed","expanded","tabclick"],_initTabContentList:[],_invalidArgumentExceptions:{invalidScrollAnimationDuration:"The scroll animation duration is not valid!",invalidWidth:"Width you've entered is invalid!",invalidHeight:"Height you've entered is invalid!",invalidAnimationType:"You've entered invalid animation type!",invalidcontentTransitionDuration:"You've entered invalid value for contentTransitionDuration!",invalidToggleMode:"You've entered invalid value for toggleMode!",invalidPosition:"You've entered invalid position!",invalidScrollPosition:"You've entered invalid scroll position!",invalidScrollStep:"You've entered invalid scroll step!",invalidStructure:"Invalid structure!",invalidArrowSize:"Invalid scroll button size!",invalidCloseSize:"Invalid close button size!"},aria:{"aria-disabled":{name:"disabled",type:"boolean"}},rtl:false};a.extend(true,this,b);return b},createInstance:function(){a.jqx.aria(this);this.host.addClass(this.toThemeProperty("jqx-tabs"));this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this.host.attr("role","tablist");this._unorderedList=this.host.children("ul");this._titleList=this.host.children("ul").children("li");this._contentList=this.host.children("div");this._selectedItem=this.selectedItem;this._isTouchDevice=a.jqx.mobile.isTouchDevice();this._needScroll=this.scrollable;if(this.selectionTracker){this.selectionTracker=this._seletionTrackerBrowserCheck()}if(this._isTouchDevice){this.reorder=false;this.keyboardNavigation=false}var b=this.length();while(b){b--;this._titleList[b]=a(this._titleList[b]);this._titleList[b].attr("role","tab");this._contentList[b]=a(this._contentList[b]);this._contentList[b].attr("role","tabpanel")}this._validateProperties();this._refresh();this._moveSelectionTrack(this._selectedItem,0);if(this.disabled){this.disable()}this.element.tabIndex=0;this._raiseEvent(0);this._enableWindowResize()},_hiddenParent:function(){var c=this;if(c.host.css("display")=="none"){return true}var b=false;a.each(c.host.parents(),function(){if(a(this).css("display")=="none"){b=true;return false}});return b},_enableWindowResize:function(){var b=this;var c=a.jqx.isHidden(b.host);a.jqx.utilities.resize(this.host,function(){if(c){b._uiRefresh(true);c=false}else{b.refresh()}})},resize:function(c,b){this.width=c;this.height=b;var d=a.jqx.isHidden(this.host);if(d){this._uiRefresh(true);d=false}else{this.refresh()}},refresh:function(b){if(true!=b||b==undefined){this._performResize()}},_seletionTrackerBrowserCheck:function(){var b="Browser CodeName: "+navigator.appCodeName+"";b+="Browser Name: "+navigator.appName+"";b+="Browser Version: "+navigator.appVersion+"";b+="Platform: "+navigator.platform+"";b+="User-agent header: "+navigator.userAgent+"";if(b.indexOf("IEMobile")!=-1){return false}if(b.indexOf("Windows Phone OS")!=-1){return false}if(a.jqx.browser.msie&&a.jqx.browser.version<=7){return false}return true},render:function(){this._refresh()},_uiRefresh:function(b){this._unorderedListLeftBackup=this._unorderedList.css("left");if(b){this._render()}this._addStyles();this._performLayout();this._prepareTabs();this._removeEventHandlers();this._addEventHandlers();if(this._unorderedListLeftBackup==="auto"){this._unorderedListLeftBackup=this._getArrowsDisplacement()}this._unorderedList.css("left",this._unorderedListLeftBackup);if(this.rtl){if(this.scrollable&&this._rightArrow&&this._rightArrow.css("visibility")!="hidden"){var d=2*this.arrowButtonSize;var c=this.host.width()-parseInt(this._unorderedList.width()+d+ +parseInt(this._unorderedList.css("margin-left")),10);this._unorderedList.css("left",c+"px")}}},_refresh:function(){if(a.jqx.isHidden(this.host)){return}this._uiRefresh(true)},_addStyles:function(){this._unorderedList.addClass(this.toThemeProperty("jqx-tabs-title-container"));this._unorderedList.css({outline:"none","white-space":"nowrap","margin-top":"0px","margin-bottom":"0px",padding:"0px",background:"transparent",border:"none","border-style":"none","text-indent":"0px"});var b=this.length();while(b){b--;this._titleList[b].removeClass();this._titleList[b].css("padding","");this._titleList[b].addClass("jqx-reset");this._titleList[b].addClass("jqx-disableselect");this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title"));this._titleList[b].addClass(this.toThemeProperty("jqx-item"));if(this.position=="bottom"){this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title-bottom"))}if(this._titleList[b].disabled){this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title-disable"));this._titleList[b].addClass(this.toThemeProperty("jqx-fill-state-disabled"))}this._titleList[b].removeClass(this.toThemeProperty("jqx-rc-b"));this._titleList[b].removeClass(this.toThemeProperty("jqx-rc-t"));this._contentList[b].removeClass(this.toThemeProperty("jqx-rc-b"));this._contentList[b].removeClass(this.toThemeProperty("jqx-rc-t"));switch(this.position){case"top":this._titleList[b].addClass(this.toThemeProperty("jqx-rc-t"));this._contentList[b].addClass(this.toThemeProperty("jqx-rc-b"));break;case"bottom":this._titleList[b].addClass(this.toThemeProperty("jqx-rc-b"));this._contentList[b].addClass(this.toThemeProperty("jqx-rc-t"));break}}if(this.selectionTracker){this._selectionTracker.removeClass(this.toThemeProperty("jqx-rc-b"));this._selectionTracker.removeClass(this.toThemeProperty("jqx-rc-t"));switch(this.position){case"top":this._selectionTracker.addClass(this.toThemeProperty("jqx-rc-t"));break;case"bottom":this._selectionTracker.addClass(this.toThemeProperty("jqx-rc-b"));break}}},_raiseEvent:function(d,g){var f=new a.Event(this._events[d]);f.owner=this;f.args=g;if(d===6||d===7){f.cancel=false;this._currentEvent=f}var b="";try{b=this.host.trigger(f);if(d==1){var e=this;if(this.selectionTracker||this.animationType!="none"){setTimeout(function(){if(!e._initTabContentList[e.selectedItem]){if(e.initTabContent){e.initTabContent(e.selectedItem);e._initTabContentList[e.selectedItem]=true}}var h=new a.Event("loadContent");h.owner=this;if(e._contentList.length>0&&e._contentList[e.selectedItem]){e._contentList[e.selectedItem].find("div").trigger(h)}},50+e.selectionTrackerAnimationDuration)}else{var f=new a.Event("loadContent");if(!e._initTabContentList[e.selectedItem]){if(e.initTabContent){e.initTabContent(e.selectedItem);e._initTabContentList[e.selectedItem]=true}}f.owner=this;var f=new a.Event("resize");this.host.trigger(f)}}}catch(c){}return b},_getArrowsDisplacement:function(){if(!this._needScroll){return 0}var d;var c=this.arrowButtonSize;var b=this.arrowButtonSize;if(this.scrollPosition==="left"){d=c+b}else{if(this.scrollPosition==="both"){d=c}else{d=0}}return d},_scrollRight:function(e,h){this._unorderedList.stop();this._unlockAnimation("unorderedList");var f=parseInt(this._unorderedList.width()+parseInt(this._unorderedList.css("margin-left")),10),i=parseInt(this.host.width(),10),g,j,b=parseInt(this._unorderedList.css("left"),10),c=this._getArrowsDisplacement(),d=0,k=undefined;if(this.scrollable){g=parseInt(this._leftArrow.outerWidth(),10);j=parseInt(this._rightArrow.outerWidth(),10)}else{g=0;j=0}e=(this.enableScrollAnimation)?e:0;if(parseInt(this._headerWrapper.width(),10)>parseInt(this._unorderedList.css("margin-left"))+parseInt(this._unorderedList.width(),10)){d=c}else{if(Math.abs(b)+this.scrollStep<Math.abs(i-f)+g+j+c){d=b-this.scrollStep;k=b-this.scrollStep+parseInt(this._titleList[this._selectedItem].position().left)}else{d=i-f-(2*this.arrowButtonSize-c);if(d<parseInt(this._unorderedList.css("left"),10)-4&&d>parseInt(this._unorderedList.css("left"),10)+4){k=i-f-g-j+parseInt(this._titleList[this._selectedItem].position().left)}}}this._performScrollAnimation(d,k,e)},_scrollLeft:function(f,g){this._unorderedList.stop();this._unlockAnimation("unorderedList");var b=parseInt(this._unorderedList.css("left")),c=this._getArrowsDisplacement(),e=0,d=undefined;f=(this.enableScrollAnimation)?f:0;if(parseInt(this._headerWrapper.width())>=parseInt(this._unorderedList.width())){e=c}else{if(b+this.scrollStep<c){e=b+this.scrollStep;d=b+this.scrollStep+parseInt(this._titleList[this._selectedItem].position().left)}else{e=c;if(e<parseInt(this._unorderedList.css("left"))-4&&e>parseInt(this._unorderedList.css("left"))+4){d=parseInt(this._titleList[this._selectedItem].position().left)}}}this._performScrollAnimation(e,d,f)},_performScrollAnimation:function(e,d,c){var b=this;if(d!==undefined){this._moveSelectionTrack(this._selectedItem,0,d)}this._lockAnimation("unorderedList");this._unorderedList.animate({left:e},c,function(){b._moveSelectionTrack(b.selectedItem,0);b._unlockAnimation("unorderedList")})},_addKeyboardHandlers:function(){var b=this;if(this.keyboardNavigation){this.addHandler(this.host,"keydown",function(e){if(!b._activeAnimation()){var f=b._selectedItem;var d=b.selectionTracker;var c=b.getContentAt(f);if(a(e.target).ischildof(c)){return true}switch(e.keyCode){case 37:if(b.rtl){b.next()}else{b.previous()}return false;case 39:if(b.rtl){b.previous()}else{b.next()}return false;case 36:b.first();return false;case 35:b.last();return false;case 27:if(b._tabCaptured){b._cancelClick=true;b._uncapture(null,b.selectedItem);b._tabCaptured=false}break}b.selectionTracker=d}return true})}},_addScrollHandlers:function(){var b=this;this.addHandler(this._leftArrow,"mousedown",function(){b._startScrollRepeat(true,b.scrollAnimationDuration)});this.addHandler(this._rightArrow,"mousedown",function(){b._startScrollRepeat(false,b.scrollAnimationDuration)});this.addHandler(this._rightArrow,"mouseleave",function(){clearTimeout(b._scrollTimeout)});this.addHandler(this._leftArrow,"mouseleave",function(){clearTimeout(b._scrollTimeout)});this.addHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpScrollDocumentHandler,this);this.addHandler(a(document),"mouseleave.tab"+this.element.id,this._mouseLeaveScrollDocumentHandler,this)},_mouseLeaveScrollDocumentHandler:function(c){var b=c.data;if(!b._scrollTimeout){return}clearTimeout(b._scrollTimeout)},_mouseUpScrollDocumentHandler:function(c){var b=c.data;clearTimeout(b._scrollTimeout)},_mouseUpDragDocumentHandler:function(c){var b=c.data;if(b._tabCaptured&&b._dragStarted){b._uncapture(c)}b._tabCaptured=false},_addReorderHandlers:function(){var b=this;this.addHandler(a(document),"mousemove.tab"+this.element.id,this._moveElement,this);this.addHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpDragDocumentHandler,this)},_addEventHandlers:function(){var e=this.length();while(e){e--;this._addEventListenerAt(e)}if(this.keyboardNavigation){this._addKeyboardHandlers()}if(this.scrollable){this._addScrollHandlers()}if(this.reorder&&!this._isTouchDevice){this._addReorderHandlers()}var d=this;try{if(document.referrer!=""||window.frameElement){if(window.top!=null&&window.top!=window.self){var c=function(g){if(d._tabCaptured){d._cancelClick=true;d._uncapture(null,d.selectedItem);d._tabCaptured=false}};var f=null;if(window.parent&&document.referrer){f=document.referrer}if(f&&f.indexOf(document.location.host)!=-1){if(window.top.document){this.addHandler(a(window.top.document),"mouseup",c)}}}}}catch(b){}},focus:function(){try{this.host.focus();var c=this;setTimeout(function(){c.host.focus()},25)}catch(b){}},_getFocusedItem:function(f,e){var i=this.length();while(i){i--;var h=this._titleList[i],g=parseInt(h.outerWidth(true)),d=parseInt(h.offset().left),c=parseInt(this._unorderedList.offset().left),j=parseInt(this.host.offset().left),b=d;if((b<=f&&b+g>=f)&&(h!==this._capturedElement)&&(!this._titleList[i].locked)&&(this._titleList[i].disabled!==true)){return i}}return -1},_uncapture:function(e){var d=this.selectionTracker;this._unorderedListLeftBackup=this._unorderedList.css("left");this._dragStarted=false;this._tabCaptured=false;var b=this._indexOf(this._capturedElement);if(!this._capturedElement){return}switch(this.position){case"top":this._capturedElement.css("bottom",0);break;case"bottom":this._capturedElement.css("top",0);break}if(e){var c=this._getFocusedItem(e.clientX,e.clientY)}if(c===-1||!e){this._capturedElement.css("left",0)}else{this._raiseEvent(10,{item:b,dropIndex:c});this._reorderItems(c,b)}a.each(this._titleList,function(){this.css("position","static")});this._reorderHeaderElements();this._unorderedList.css({position:"relative",top:"0px"});this._prepareTabs();if(c===-1||!e){this._selectedItem=b;this._moveSelectionTrack(b,0);this._addSelectStyle(this._selectedItem,true)}else{this._moveSelectionTrack(this._selectedItem,0);this._addSelectStyle(this._selectedItem,true)}if(document.selection){document.selection.clear()}this._unorderedList.css("left",this._unorderedListLeftBackup);this.selectionTracker=d},_reorderItems:function(c,b){var d=this._titleList[this.selectedItem];var e=this._contentList[b];if(typeof this._capturedElement==="undefined"){this._capturedElement=this._titleList[b]}this._titleList[b].remove();if(b<c){this._titleList[b].insertAfter(this._titleList[c])}else{this._titleList[b].insertBefore(this._titleList[c])}this._reorderElementArrays(c,b);this._getSelectedItem(d);this._removeEventHandlers();this._addEventHandlers()},_reorderElementArrays:function(d,b){var e=this._titleList[this.selectedItem];var f=this._contentList[b];if(b<d){for(var c=b;c<=d;c++){this._titleList[c]=this._titleList[c+1];this._contentList[c]=this._contentList[c+1]}this._contentList[d]=f;this._titleList[d]=this._capturedElement}else{for(var c=b;c>=d;c--){this._titleList[c]=this._titleList[c-1];this._contentList[c]=this._contentList[c-1]}this._contentList[d]=f;this._titleList[d]=this._capturedElement}},getSelectedItem:function(){return this.selectedItem},_getSelectedItem:function(c){var b=this.length();while(b){b--;if(this._titleList[b]===c){this._selectedItem=this.selectedItem=b;break}}},_moveElement:function(c,b){var b=c.data;if(b._tabCaptured){if(document.selection){document.selection.clear()}if(!b._dragStarted){unorderedListLeft=-parseInt(b._unorderedList.css("left"),10);if(c.clientX+unorderedListLeft>b._startX+3||c.clientX+unorderedListLeft<b._startX-3){b._prepareTabForDragging();b._dragStarted=true}}else{b._performDrag(c);clearTimeout(b._scrollTimeout)}}},_performDrag:function(c){var b=this.getZoomFactor();unorderedListLeft=-parseInt(this._unorderedList.css("left"),10);this._capturedElement.css("left",unorderedListLeft+c.clientX/b-this._startX/b);this._lastX=c.clientX/b;this._moveSelectionTrack(this.selectedItem,0)},getZoomFactor:function(){var c=1;if(document.body.getBoundingClientRect){var d=document.body.getBoundingClientRect();var e=d.right-d.left;var b=document.body.offsetWidth;c=Math.round((e/b)*100)/100}return c},_prepareTabForDragging:function(){this._capturedElement.css({position:"relative",left:"0px",top:"0px","z-index":"300"});this.selectedItem=this._indexOf(this._capturedElement);switch(this.position){case"top":this._capturedElement.css("bottom",parseInt(this._capturedElement.css("top")));break;case"bottom":this._capturedElement.css("top",parseInt(this._capturedElement.css("top")));break}this._raiseEvent(9,{item:this._indexOf(this._capturedElement)})},_dragScroll:function(d){var c=parseInt(this._unorderedList.css("left"));var b=this;var e=parseInt(this._capturedElement.css("left"));if(d.clientX<=this._headerWrapper.offset().left){this._scrollLeft(this.scrollAnimationDuration);this._capturedElement.css("left",parseInt(this._capturedElement.css("left"))+this._lastUnorderedListPosition-c)}else{if(d.clientX>this._headerWrapper.offset().left+parseInt(this._headerWrapper.width(),10)){this._scrollRight(this.scrollAnimationDuration);this._capturedElement.css("left",parseInt(this._capturedElement.css("left"))+this._lastUnorderedListPosition-c)}else{this._unorderedList.stop();this._unlockAnimation("unorderedList");clearTimeout(this._scrollTimeout)}}var b=this;this._scrollTimeout=setTimeout(function(){b._dragScroll(d)},this.scrollAnimationDuration);this._lastUnorderedListPosition=c},_captureElement:function(c,b){if(!this._tabCaptured&&!this._titleList[b].locked&&this._titleList[b].disabled!==true&&!this._activeAnimation()){unorderedListLeft=-parseInt(this._unorderedList.css("left"),10);this._startX=unorderedListLeft+c.clientX;this._startY=c.clientY;this._lastX=c.clientX;this._lastY=c.clientY;this._tabCaptured=true;this._capturedElement=this._titleList[b]}},_titleInteractionTrigger:function(b){if(this._headerExpandingBalance>0){this._removeOppositeBorder()}if(this._selectedItem!==b){this.select(this._titleList[b],"toggle");this._titleList[b].collapsed=false;if(!this.collapsible){if(this.height!=="auto"){this._contentWrapper.css("visibility","visible")}else{this._contentWrapper.css("display","block")}}}else{if(this.collapsible){if(this.isCollapsed){this.expand()}else{this.collapse()}}}},collapse:function(){var c=this._selectedItem,b=this;this.isCollapsed=true;if(b.height!=="auto"){b._contentWrapper.css("visibility","hidden")}else{b._contentWrapper.hide()}b._raiseEvent(13,{item:c});if(this.position=="top"){b._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header-collapsed"));b.host.addClass(this.toThemeProperty("jqx-tabs-collapsed"))}else{b._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header-collapsed-bottom"));b.host.addClass(this.toThemeProperty("jqx-tabs-collapsed-bottom"))}},expand:function(){var c=this._selectedItem,b=this;this.isCollapsed=false;this._select(c,b.contentTransitionDuration,null,false,true);if(b.height!=="auto"){b._contentWrapper.css("visibility","visible")}else{b._contentWrapper.show()}b._raiseEvent(14,{item:c});if(this.position=="top"){b._headerWrapper.removeClass(this.toThemeProperty("jqx-tabs-header-collapsed"));b.host.removeClass(this.toThemeProperty("jqx-tabs-collapsed"))}else{b._headerWrapper.removeClass(this.toThemeProperty("jqx-tabs-header-collapsed-bottom"));b.host.removeClass(this.toThemeProperty("jqx-tabs-collapsed-bottom"))}},_addSelectHandler:function(c){var b=this;this.addHandler(this._titleList[c],"selectstart",function(d){return false});this.addHandler(this._titleList[c],this.toggleMode,function(d){return function(){b._raiseEvent("15",{item:d});if(!b._tabCaptured&&!b._cancelClick){b._titleInteractionTrigger(d)}return true}}(c))},_addDragDropHandlers:function(c){var b=this;this.addHandler(this._titleList[c],"mousedown",function(d){b._captureElement(d,c);return false});this.addHandler(this._titleList[c],"mouseup",function(d){if(b._tabCaptured&&b._dragStarted){b._cancelClick=true;b._uncapture(d,c)}else{b._cancelClick=false}b._tabCaptured=false;return false})},_removeHoverStates:function(){var b=this;a.each(this._titleList,function(){this.removeClass(b.toThemeProperty("jqx-tabs-title-hover-top"));this.removeClass(b.toThemeProperty("jqx-tabs-title-hover-bottom"))})},_addHoverHandlers:function(c){var b=this;var d=this._titleList[c];this.addHandler(d,"mouseenter",function(f){if(c!=b._selectedItem){if(b.position=="top"){d.addClass(b.toThemeProperty("jqx-tabs-title-hover-top"))}else{d.addClass(b.toThemeProperty("jqx-tabs-title-hover-bottom"))}d.addClass(b.toThemeProperty("jqx-fill-state-hover"));if(b.showCloseButtons){var e=d.children(0).children(b.toThemeProperty(".jqx-tabs-close-button",true));e.addClass(b.toThemeProperty("jqx-tabs-close-button-hover",true))}}});this.addHandler(d,"mouseleave",function(f){if(c!=b._selectedItem){if(b.position=="top"){d.removeClass(b.toThemeProperty("jqx-tabs-title-hover-top"))}else{d.removeClass(b.toThemeProperty("jqx-tabs-title-hover-bottom"))}d.removeClass(b.toThemeProperty("jqx-fill-state-hover"));if(b.showCloseButtons){var e=d.children(0).children(b.toThemeProperty(".jqx-tabs-close-button",true));e.removeClass(b.toThemeProperty("jqx-tabs-close-button-hover",true))}}})},_addEventListenerAt:function(d){var c=this;if(this._titleList[d].disabled){return}if(this.reorder&&!this._isTouchDevice){this._addDragDropHandlers(d)}this._addSelectHandler(d);if(this.enabledHover){this._addHoverHandlers(d)}var b=this._titleList[d].find(this.toThemeProperty(".jqx-tabs-close-button",true));this.removeHandler(b,"click");this.addHandler(b,"click",function(e){c.removeAt(d);return false})},_removeEventHandlers:function(){var b=this;var c=this.length();while(c){c--;this._removeEventListenerAt(c)}if(this.scrollable){this.removeHandler(this._leftArrow,"mousedown");this.removeHandler(this._rightArrow,"mousedown")}this.removeHandler(a(document),"mousemove.tab"+this.element.id,this._moveElement);this.removeHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpScrollDocumentHandler);this.removeHandler(a(document),"mouseup.tab"+this.element.id,this._mouseUpDragDocumentHandler);this.removeHandler(this.host,"keydown")},_removeEventListenerAt:function(d){var c=this;this.removeHandler(this._titleList[d],this.toggleMode);this.removeHandler(this._titleList[d],"mouseenter");this.removeHandler(this._titleList[d],"mouseleave");this.removeHandler(this._titleList[d],"mousedown");this.removeHandler(this._titleList[d],"mouseup");var b=this._titleList[d].children(0).children(this.toThemeProperty(".jqx-tabs-close-button",true));this.removeHandler(b,"click")},_moveSelectionTrack:function(l,c,b){var m=this;if(l==-1){return}if(this._titleList.length==0){return}if(l>=this._titleList.length){return}if(this.selectionTracker&&this._selectionTracker){this._selectionTracker.stop();this._unlockAnimation("selectionTracker");if(b===undefined){var h=parseInt(this._titleList[l].position().left);if(!isNaN(parseInt(this._unorderedList.css("left")))){h+=parseInt(this._unorderedList.css("left"))}if(!isNaN(parseInt(this._unorderedList.css("margin-left")))){h+=parseInt(this._unorderedList.css("margin-left"))}if(!isNaN(parseInt(this._titleList[l].css("margin-left")))){h+=parseInt(this._titleList[l].css("margin-left"))}if(!isNaN(parseInt(this._titleList[l].css("margin-right")))){}}else{var h=b}var g=0;var e=0;if(this.position==="top"){g=parseInt(this._headerWrapper.height())-parseInt(this._titleList[l].outerHeight());if(!this.autoHeight){e+=parseInt(this._titleList[l].css("margin-top"))}}this._lockAnimation("selectionTracker");var k=parseInt(this._titleList[l].css("padding-left"))+parseInt(this._titleList[l].css("padding-right"));var f=this.position=="top"?0:1;var j=parseInt(this._headerWrapper.css("padding-top"));var i=parseInt(this._titleList[l].css("padding-top"))+parseInt(this._titleList[l].css("padding-bottom"));this._selectionTracker.css("visibility","visible");this._moveSelectionTrackerContainer.css("visibility","visible");var d=parseInt(this._titleList[l].css("margin-top"));if(isNaN(d)){d=0}this._selectionTracker.animate({top:j+d-f,left:h+"px",height:parseInt(this._titleList[l].height()+i),width:this._titleList[l].width()+k},c,function(){m._unlockAnimation("selectionTracker");m._selectionTracker.css("visibility","hidden");m._addSelectStyle(l,true);m._moveSelectionTrackerContainer.css("visibility","hidden")})}},destroy:function(){a.jqx.utilities.resize(this.host,null,true);this.host.remove()},_switchTabs:function(b,d){if(b!==d&&!this._activeAnimation()&&!this._tabCaptured){var c=this;this._raiseEvent(7,{item:d});this._raiseEvent(6,{item:b});if(this._currentEvent){if(this._currentEvent.cancel){this._currentEvent=null;return}}this._unselect(d,null,true);this._select(b,c.contentTransitionDuration,null,true);return true}return false},_activeAnimation:function(){for(child in this._isAnimated){if(this._isAnimated.hasOwnProperty(child)){if(this._isAnimated[child]){return true}}}return false},_indexOf:function(c){var b=this.length();while(b){b--;if(this._titleList[b][0]===c[0]||this._contentList[b][0]===c[0]){return b}}return -1},_validateProperties:function(){try{if(this.scrollAnimationDuration<0||isNaN(this.scrollAnimationDuration)){throw new Error(this._invalidArgumentExceptions.invalidScrollAnimationDuration)}if(parseInt(this.width)<0&&this.width!=="auto"){throw new Error(this._invalidArgumentExceptions.invalidWidth)}if(parseInt(this.height)<0&&this.height!=="auto"){throw new Error(this._invalidArgumentExceptions.invalidHeight)}if(this.animationType!=="none"&&this.animationType!=="fade"){throw new Error(this._invalidArgumentExceptions.invalidAnimationType)}if(this.contentTransitionDuration<0||isNaN(this.contentTransitionDuration)){throw new Error(this._invalidArgumentExceptions.invalidcontentTransitionDuration)}if(this.toggleMode!=="click"&&this.toggleMode!=="dblclick"&&this.toggleMode!=="mouseenter"&&this.toggleMode!=="none"){throw new Error(this._invalidArgumentExceptions.invalidToggleMode)}if(this.position!=="top"&&this.position!=="bottom"){throw new Error(this._invalidArgumentExceptions.invalidPosition)}if(this.scrollPosition!=="left"&&this.scrollPosition!=="right"&&this.scrollPosition!=="both"){throw new Error(this._invalidArgumentExceptions.invalidScrollPosition)}if(this.scrollStep<0||isNaN(this.scrollStep)){throw new Error(this._invalidArgumentExceptions.invalidScrollStep)}if(this._titleList.length!==this._contentList.length||this._titleList.length==0){throw new Error(this._invalidArgumentExceptions.invalidStructure)}if(this.arrowButtonSize<0||isNaN(this.arrowButtonSize)){throw new Error(this._invalidArgumentExceptions.invalidArrowSize)}if(this.closeButtonSize<0||isNaN(this.closeButtonSize)){throw new Error(this._invalidArgumentExceptions.invalidCloseSize)}}catch(b){alert(b)}},_startScrollRepeat:function(d,c){var b=this;if(d){this._scrollLeft(c)}else{this._scrollRight(c)}if(this._scrollTimeout){clearTimeout(this._scrollTimeout)}this._scrollTimeout=setTimeout(function(){b._startScrollRepeat(d,b.scrollAnimationDuration)},c)},_performLayout:function(){var b=this.length();while(b){b--;if(this.position==="top"||this.position==="bottom"){if(this.rtl){this._titleList[b].css("float","right")}else{this._titleList[b].css("float","left")}}}this._fitToSize();this._performHeaderLayout();this._fitToSize()},updatetabsheader:function(){this._performHeaderLayout()},_performResize:function(){var b=this;this._fitToSize();this._positionArrows(this._totalItemsWidth);if(this._totalItemsWidth>this.element.offsetWidth){this._unorderedList.width(this._totalItemsWidth)}else{this._unorderedList[0].style.width=this.element.offsetWidth-2+"px"}this._fitToSize()},_addArrows:function(){if(this._leftArrow&&this._rightArrow){this._leftArrow.remove();this._rightArrow.remove()}this._leftArrow=a('<div><span style="display: block; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-tabs-arrow-left")+'"></span></div>');this._rightArrow=a('<div><span style="display: block; width: 16px; height: 16px;" class="'+this.toThemeProperty("jqx-tabs-arrow-right")+'"></span></div>');this._leftArrow.addClass(this.toThemeProperty("jqx-tabs-arrow-background"));this._rightArrow.addClass(this.toThemeProperty("jqx-tabs-arrow-background"));this._leftArrow.addClass(this.toThemeProperty("jqx-widget-header"));this._rightArrow.addClass(this.toThemeProperty("jqx-widget-header"));this._headerWrapper.append(this._leftArrow);this._headerWrapper.append(this._rightArrow);this._leftArrow.width(this.arrowButtonSize);this._leftArrow.height("100%");this._rightArrow.width(this.arrowButtonSize);this._rightArrow.height("100%");this._leftArrow.css({"z-index":"30"});this._rightArrow.css({"z-index":"30"});this._leftArrow.css("display","none");this._rightArrow.css("display","none")},_tabsWithVisibleCloseButtons:function(){if(!this.showCloseButtons){return 0}var c=this.length();var b=this;a.each(this._titleList,function(){var d=this.attr("hasclosebutton");if(d!=undefined&&d!=null){if(d=="false"||d==false){c--}}});return c},_calculateTitlesSize:function(){var g=0;var d=0;var c=this.length();if(this.rtl&&a.jqx.browser.msie&&a.jqx.browser.version<8){this._measureItem=a("<span style='position: relative; visibility: hidden;'></span>");a(document.body).append(this._measureItem)}while(c){c--;if(this._measureItem){this._measureItem.html(this._titleList[c].html());this._titleList[c].width(this._measureItem.width())}this._titleList[c].css("position","static");this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none");d+=parseInt(this._titleList[c].outerWidth(true));if(g<this._titleList[c].outerHeight(true)){g=Math.round(parseInt(this._titleList[c].outerHeight(true)))}if(this._titleList[c].height()==0){var f=this._titleList[c].clone();a(document.body).append(f);g=Math.round(parseInt(f.outerHeight(true)));f.remove()}var b=this._titleList[c].attr("hasCloseButton");if(b!=undefined&&b!=null){var e=false;if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none");e=true}}if(!e){if(b=="true"||b==true){d+=this.closeButtonSize;this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","block")}else{if(b=="false"||b==false){this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none")}}}}else{if(this.showCloseButtons&&(this.canCloseAllTabs||this._tabsWithVisibleCloseButtons()>1)){var e=false;if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","none");e=true}}if(!e){d+=this.closeButtonSize;this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true)).css("display","block")}}}this._titleList[c].height(this._titleList[c].height())}if(this._measureItem){this._measureItem.remove()}return{height:g,width:10+d}},_reorderHeaderElements:function(){if(this.selectionTracker){this._moveSelectionTrackerContainer.css({position:"absolute",height:"100%",top:"0px",left:"0px",width:"100%"})}this._headerWrapper.css({position:"relative",left:"0px",top:"0px"});if(this.scrollable){this._rightArrow.css({width:this.arrowButtonSize,position:"absolute",top:"0px"});this._leftArrow.css({width:this.arrowButtonSize,position:"absolute",top:"0px"});var c=this.theme&&this.theme.indexOf("ui-")!=-1?3:0;if(c>0){this._rightArrow.addClass(this.toThemeProperty("jqx-rc-r"));this._leftArrow.addClass(this.toThemeProperty("jqx-rc-l"))}var b=this.scrollPosition;if(this.rtl){if(b=="left"){b="right"}if(b=="right"){b="left"}}switch(b){case"both":this._rightArrow.css("right","0px");this._leftArrow.css("left","0px");break;case"left":this._rightArrow.css("left",this.arrowButtonSize+"px");this._leftArrow.css("left","0px");break;case"right":this._rightArrow.css("right",-c+"px");this._leftArrow.css("right",(this.arrowButtonSize-c)+"px");break}}},_positionArrows:function(b){if(b>=parseInt(this._headerWrapper[0].offsetWidth)&&this.scrollable){this._needScroll=true;if(this._unorderedList.position().left===0){this._unorderedListLeftBackup=this._getArrowsDisplacement()+"px"}this._leftArrow.css("display","block");this._rightArrow.css("display","block")}else{this._needScroll=false;this._leftArrow[0].style.display="none";this._rightArrow[0].style.display="none";this._unorderedList[0].style.left="0px"}},_performHeaderLayout:function(){this._removeSelectStyle();var b=this._calculateTitlesSize();var d=b.height;var c=b.width;this._headerWrapper.height(d);this._unorderedList.height(d);if(this.headerHeight!=null&&this.headerHeight!="auto"){this._headerWrapper.height(this.headerHeight);this._unorderedList.height(this.headerHeight)}if(c>this.host.width()){this._unorderedList.width(c)}else{this._unorderedList.width(this.host.width())}if(a.jqx.browser.msie&&a.jqx.browser.version<8){this._unorderedList.css("position","relative");this._headerWrapper.css("overflow","hidden")}this._reorderHeaderElements();c=c+parseInt(this._unorderedList.css("margin-left"));this._totalItemsWidth=c;this._positionArrows(c);this._unorderedList.css({position:"relative",top:"0px"});this._verticalAlignElements();this._moveSelectionTrack(this._selectedItem,0);this._addSelectStyle(this.selectedItem)},_verticalAlignElements:function(){var k=this.length();var p=this._maxHeightTab();while(k){k--;var b=this._titleList[k].find(".jqx-tabs-titleContentWrapper"),l=b.height(),o=this._titleList[k].find(this.toThemeProperty(".jqx-tabs-close-button",true)),m=parseInt(this._titleList[k].css("padding-top"));if(!m){m=0}if(this.autoHeight){var h=this._titleList[k].outerHeight(true)-this._titleList[k].height();var c=parseInt(this._titleList[k].css("padding-top"));var q=parseInt(this._titleList[k].css("padding-bottom"));var j=parseInt(this._titleList[k].css("border-top-width"));var f=parseInt(this._titleList[k].css("border-bottom-width"));this._titleList[k].height(this._unorderedList.outerHeight()-c-q-j-f)}else{if(this.position==="top"){var i=parseInt(this._unorderedList.height())-parseInt(this._titleList[k].outerHeight(true));if(parseInt(this._titleList[k].css("margin-top"))!==i&&i!==0){this._titleList[k].css("margin-top",i)}}else{this._titleList[k].height(this._titleList[k].height())}}this._titleList[k].children(0).height("100%");var e=parseInt(this._titleList[k].height());var g=parseInt(e)/2-parseInt(o.height())/2;o.css("margin-top",1+g);var n=parseInt(e)/2-parseInt(b.height())/2;b.css("margin-top",n)}if(this.scrollable){var h=parseInt(this._headerWrapper.outerHeight())-this.arrowButtonSize;var d=h/2;this._rightArrow.children(0).css("margin-top",d);this._rightArrow.height("100%");this._leftArrow.height("100%");this._leftArrow.children(0).css("margin-top",d)}},_getImageUrl:function(c){var b=c.css("background-image");b=b.replace('url("',"");b=b.replace('")',"");b=b.replace("url(","");b=b.replace(")","");return b},_fitToSize:function(){var c=false;var e=false;var d=this;if(d.width!=null&&d.width.toString().indexOf("%")!=-1){c=true}if(d.height!=null&&d.height.toString().indexOf("%")!=-1){e=true}if(c){this.host[0].style.width=this.width;this._contentWrapper[0].style.width="100%"}if(e){this.host[0].style.height=this.height;this._contentWrapper[0].style.width="100%";this._contentWrapper[0].style.height="auto";var b=this.element.offsetHeight-this._headerWrapper[0].offsetHeight;this._contentWrapper[0].style.height=b+"px"}if(!c){this.host.width(this.width);if(this.width!="auto"){this._contentWrapper.css("width","100%")}}if(!e){if(this.height!=="auto"){this.host.height(this.height);var b=this.host.height()-this._headerWrapper.outerHeight();this._contentWrapper.height(b)}else{this._contentWrapper.css("height","auto")}}},_maxHeightTab:function(){var c=this.length();var d=-1;var b=-1;while(c){c--;if(d<parseInt(this._titleList[c].outerHeight(true))){b=c}}return b},_addSelectionTracker:function(){if(this._moveSelectionTrackerContainer){this._moveSelectionTrackerContainer.remove()}this._moveSelectionTrackerContainer=a('<div class="'+this.toThemeProperty("jqx-tabs-selection-tracker-container")+'">');var b=this.toThemeProperty("jqx-tabs-selection-tracker-"+this.position);this._selectionTracker=a('<div class="'+b+'">');this._selectionTracker.css("color","inherit");this._moveSelectionTrackerContainer.append(this._selectionTracker);this._headerWrapper.append(this._moveSelectionTrackerContainer);this._selectionTracker.css({position:"absolute","z-index":"10",left:"0px",top:"0px",display:"inline-block"})},_addContentWrapper:function(){var d="none";var b=this._contentWrapper==undefined;this._contentWrapper=this._contentWrapper||a('<div class="'+this.toThemeProperty("jqx-tabs-content")+'" style="float:'+d+';">');this._contentWrapper.addClass(this.toThemeProperty("jqx-widget-content"));var c=this.length();while(c){c--;this._contentList[c].addClass(this.toThemeProperty("jqx-tabs-content-element"))}if(b){this.host.find(".jqx-tabs-content-element").wrapAll(this._contentWrapper);this._contentWrapper=this.host.find(".jqx-tabs-content")}if(this.roundedCorners){if(this.position=="top"){this._contentWrapper.addClass(this.toThemeProperty("jqx-rc-b"))}else{this._contentWrapper.addClass(this.toThemeProperty("jqx-rc-t"))}this.host.addClass(this.toThemeProperty("jqx-rc-all"))}},_addHeaderWrappers:function(){var b=this.length();this._unorderedList.remove();this._headerWrapper=this._headerWrapper||a('<div class="jqx-tabs-headerWrapper" style="outline: none;">');this._headerWrapper.remove();if(this.position=="top"){this._headerWrapper.prependTo(this.host)}else{this._headerWrapper.appendTo(this.host)}this._unorderedList.appendTo(this._headerWrapper);this._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header"));this._headerWrapper.addClass(this.toThemeProperty("jqx-widget-header"));if(this.position=="bottom"){this._headerWrapper.addClass(this.toThemeProperty("jqx-tabs-header-bottom"))}else{this._headerWrapper.removeClass(this.toThemeProperty("jqx-tabs-header-bottom"))}if(this.roundedCorners){if(this.position=="top"){this._headerWrapper.addClass(this.toThemeProperty("jqx-rc-t"));this._headerWrapper.removeClass(this.toThemeProperty("jqx-rc-b"))}else{this._headerWrapper.removeClass(this.toThemeProperty("jqx-rc-t"));this._headerWrapper.addClass(this.toThemeProperty("jqx-rc-b"))}}while(b){b--;if(this._titleList[b].children(".jqx-tabs-titleWrapper").length<=0){var c=a('<div class="jqx-tabs-titleWrapper" style="outline: none; position: relative;">');c.append(this._titleList[b].html());this._titleList[b].empty();c.appendTo(this._titleList[b])}this._titleList[b].children(".jqx-tabs-titleWrapper").css("z-index","15")}},_render:function(){this._addCloseButtons();this._addHeaderWrappers();this._addContentWrapper();if(this.selectionTracker){this._addSelectionTracker()}this._addArrows()},_addCloseButton:function(c){var f=c;if(this._titleList[f].find(this.toThemeProperty(".jqx-tabs-close-button",true)).length<=0&&this._titleList[f].find(".jqx-tabs-titleContentWrapper").length<=0){var d=a('<div class="jqx-tabs-titleContentWrapper"></div>');var g="left";if(this.rtl){g="right"}d.css("float",g);d.addClass("jqx-disableselect");d.append(this._titleList[f].html());this._titleList[f].html("");var b=a('<div class="'+this.toThemeProperty("jqx-tabs-close-button")+'"></div>');b.css({height:this.closeButtonSize,width:this.closeButtonSize,"float":g,"font-size":"1px"});var e=this;this._titleList[f].append(d);this._titleList[f].append(b);if(!this.showCloseButtons){b.css("display","none")}else{if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){b.css("display","none")}}}}},_addCloseButtons:function(){var b=this.length();while(b){b--;this._addCloseButton(b)}},_prepareTabs:function(){var c=this.length();var b=this.selectionTracker;this.selectionTracker=false;while(c){c--;if(this._selectedItem!==c){this._unselect(c,null,false)}}this._select(this._selectedItem,0,null,false);this.selectionTracker=b;if(this.initTabContent){if(!this._initTabContentList[this.selectedItem]){if(!this._hiddenParent()){this.initTabContent(this.selectedItem);this._initTabContentList[this.selectedItem]=true}}}},_isValidIndex:function(b){return(b>=0&&b<this.length())},_removeSelectStyle:function(){var c=this.length();while(c){c--;var b=null;if(this.showCloseButtons){var b=this._titleList[c].children(0).children(this.toThemeProperty(".jqx-tabs-close-button",true));b.removeClass(this.toThemeProperty("jqx-tabs-close-button-selected"))}if(this.position=="top"){this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-selected-top"))}else{this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-selected-bottom"))}this._titleList[c].removeClass(this.toThemeProperty("jqx-fill-state-pressed"))}},_addSelectStyle:function(c,e){var d=this.length();this._removeSelectStyle();if(!this.selectionTracker||(e!=undefined&&e)){if(c>=0&&this._titleList[c]!=undefined){var b=null;if(this.showCloseButtons){var b=this._titleList[c].children(0).children(this.toThemeProperty(".jqx-tabs-close-button",true));if(this.hiddenCloseButtons){if(this.hiddenCloseButtons[c]==1){b=null}}}this._titleList[c].removeClass(this.toThemeProperty("jqx-fill-state-hover"));if(this.position=="top"){this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-hover-top"));this._titleList[c].addClass(this.toThemeProperty("jqx-tabs-title-selected-top"))}else{this._titleList[c].removeClass(this.toThemeProperty("jqx-tabs-title-hover-bottom"));this._titleList[c].addClass(this.toThemeProperty("jqx-tabs-title-selected-bottom"))}this._titleList[c].addClass(this.toThemeProperty("jqx-fill-state-pressed"));if(b!=null){b.addClass(this.toThemeProperty("jqx-tabs-close-button-selected"))}}}},_addItemTo:function(g,c,e){if(c<g.length){var b=undefined,f=undefined;for(var d=c;d+1<g.length;d++){if(b===undefined){b=g[d+1];g[d+1]=g[d]}else{f=g[d+1];g[d+1]=b;b=f}}if(b===undefined){b=g[c]}g[c]=e;g.push(b)}else{g.push(e)}},_select:function(d,g,h,b,f){if(!this._tabCaptured){this.host.attr("hideFocus","true");var c=this;if(f==undefined){this._addSelectStyle(d)}else{this._addSelectStyle(d,f)}if(this.isCollapsed&&this.collapsible){this._contentList[d].css("display","none");this._selectCallback(d,h,b);return}switch(this.animationType){case"none":if(!c.selectionTracker){for(var e=0;e<this._contentList.length;e++){if(d!=e&&this._contentList[e].css("display")=="block"){this._contentList[e].css("display","none");a.jqx.aria(this._titleList[e],"aria-selected",false);a.jqx.aria(this._contentList[e],"aria-hidden",true)}}this._contentList[d].css("display","block");a.jqx.aria(this._titleList[d],"aria-selected",true);a.jqx.aria(this._contentList[d],"aria-hidden",false);a.jqx.aria(this,"aria-activedescendant",this._titleList[d][0].id)}else{setTimeout(function(){c._contentList[d].css("display","block");a.jqx.aria(c._titleList[d],"aria-selected",true);a.jqx.aria(c._contentList[d],"aria-hidden",false);a.jqx.aria(c,"aria-activedescendant",c._titleList[d][0].id)},this.selectionTrackerAnimationDuration)}this._selectCallback(d,h,b);break;case"fade":this._lockAnimation("contentListSelect");c._selectCallback(d,h,b);this._contentList[d].fadeIn(g,function(){c._unlockAnimation("contentListSelect");a.jqx.aria(c._titleList[d],"aria-selected",true);a.jqx.aria(c._contentList[d],"aria-hidden",false);a.jqx.aria(c,"aria-activedescendant",c._titleList[d][0].id)});break}}},_selectCallback:function(c,d,b){this._selectedItem=c;this.selectedItem=this._selectedItem;if(d){d()}if(b){this._raiseEvent(1,{item:c})}},_unselect:function(d,e,b){if(d>=0){if(!this._tabCaptured){var c=this;this._contentList[d].stop();if(this.animationType=="fade"){this._contentList[d].css("display","none");a.jqx.aria(c._titleList[d],"aria-selected",false);a.jqx.aria(c._contentList[d],"aria-hidden",true)}else{if(this.selectionTracker){setTimeout(function(){c._contentList[d].css("display","none");a.jqx.aria(c._titleList[d],"aria-selected",false);a.jqx.aria(c._contentList[d],"aria-hidden",true)},this.selectionTrackerAnimationDuration)}else{this._contentList[d].css("display","none");a.jqx.aria(c._titleList[d],"aria-selected",false);a.jqx.aria(c._contentList[d],"aria-hidden",true)}}this._unselectCallback(d,e,b);if(!this.selectionTracker){this._titleList[d].removeClass(this.toThemeProperty("jqx-tabs-title-selected"));this._titleList[d].removeClass(this.toThemeProperty("jqx-fill-state-pressed"))}}}},_unselectCallback:function(c,d,b){if(b){this._raiseEvent(8,{item:c})}if(d){d()}},disable:function(){var b=this.length();while(b){b--;this.disableAt(b)}},enable:function(){var b=this.length();while(b){b--;this.enableAt(b)}},getEnabledTabsCount:function(){var b=0;a.each(this._titleList,function(){if(!this.disabled){b++}});return b},getDisabledTabsCount:function(){var b=0;a.each(this._titleList,function(){if(this.disabled){b++}});return b},removeAt:function(d){if(this._isValidIndex(d)&&(this.canCloseAllTabs||this.length()>1)){this._removeHoverStates();var b=this,c=this._titleList[this._selectedItem],e=parseInt(this._titleList[d].outerWidth(true)),i=this.getTitleAt(d);this._unorderedList.width(parseInt(this._unorderedList.width())-e);this._titleList[d].remove();this._contentList[d].remove();var h=0;this._titleList.splice(d,1);this._contentList.splice(d,1);this._addStyles();this._performHeaderLayout();this._removeEventHandlers();this._addEventHandlers();this._raiseEvent(3,{item:d,title:i});this._isAnimated={};if(this.selectedItem>0){this._selectedItem=-1;var g=this._getPreviousIndex(this.selectedItem);this.select(g)}else{this._selectedItem=-1;var g=this._getNextIndex(this.selectedItem);this.select(g)}if(parseInt(this._unorderedList.css("left"))>this._getArrowsDisplacement()){this._unorderedList.css("left",this._getArrowsDisplacement())}if(parseInt(this._unorderedList.width())<=parseInt(this._headerWrapper.width())){var f=(this.enableScrollAnimation)?this.scrollAnimationDuration:0;this._lockAnimation("unorderedList");this._unorderedList.animate({left:0},f,function(){b._unlockAnimation("unorderedList")})}}},removeFirst:function(){this.removeAt(0)},removeLast:function(){this.removeAt(this.length()-1)},disableAt:function(b){if(!this._titleList[b].disabled||this._titleList[b].disabled===undefined){if(this.selectedItem==b){var c=this.next();if(!c){c=this.previous()}}this._titleList[b].disabled=true;this.removeHandler(this._titleList[b],this.toggleMode);if(this.enabledHover){this._titleList[b].off("mouseenter").off("mouseleave")}this._removeEventListenerAt(b);this._titleList[b].addClass(this.toThemeProperty("jqx-tabs-title-disable"));this._titleList[b].addClass(this.toThemeProperty("jqx-fill-state-disabled"));this._raiseEvent(5,{item:b})}},enableAt:function(b){if(this._titleList[b].disabled){this._titleList[b].disabled=false;this._addEventListenerAt(b);this._titleList[b].removeClass(this.toThemeProperty("jqx-tabs-title-disable"));this._titleList[b].removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this._raiseEvent(4,{item:b})}},addAt:function(d,g,e){if(d>=0||d<=this.length()){this._removeHoverStates();var b=a("<li>"+g+"</li>");var f=a("<div>"+e+"</div>");b.addClass(this.toThemeProperty("jqx-tabs-title"));b.addClass(this.toThemeProperty("jqx-item"));f.addClass(this.toThemeProperty("jqx-tabs-content-element"));if(this.position=="bottom"){b.addClass(this.toThemeProperty("jqx-tabs-title-bottom"))}var c=false;if(this._titleList.length==0){this._unorderedList.append(b)}else{if(d<this.length()&&d>=0){this._titleList[d].before(b)}else{this._titleList[this.length()-1].after(b)}}f.appendTo(this._contentWrapper);this._addItemTo(this._titleList,d,b);this._addItemTo(this._contentList,d,f);if(this._selectedItem>d){this._selectedItem++}this._switchTabs(d,this._selectedItem);this._selectedItem=d;if(this.showCloseButtons&&this._titleList.length>0){this._addCloseButton(d)}this._uiRefresh(c);this._raiseEvent(2,{item:d});this._moveSelectionTrack(this._selectedItem,0)}},addFirst:function(c,b){this.addAt(0,c,b)},addLast:function(c,b){this.addAt(this.length(),c,b)},val:function(b){if(arguments.length==0||typeof(b)=="object"){return this._selectedItem}this.select(b);return this._selectedItem},select:function(c,b){if(typeof(c)==="object"){c=this._indexOf(c)}var e=c>=0&&c<this._titleList.length?this._titleList[c].attr("canselect"):true;if(e==undefined||e=="true"||e==true){if(c!==this._selectedItem&&this._isValidIndex(c)){if(!this._activeAnimation()&&!this._titleList[c].disabled){var d=this._switchTabs(c,this._selectedItem);if(d){this.ensureVisible(c)}}}}},previous:function(c){var b=this._selectedItem;if(c!=undefined&&!isNaN(c)){b=c}while(b>0&&b<this._titleList.length){b--;if(!this._titleList[b].disabled){this.select(b);return true}}return false},_getPreviousIndex:function(c){if(c!=undefined&&!isNaN(c)){var b=c;while(c>0&&c<=this._titleList.length){c--;if(!this._titleList[c].disabled){return c;break}}return b}else{return 0}},_getNextIndex:function(c){if(c!=undefined&&!isNaN(c)){var b=c;while(c>=0&&c<this._titleList.length){if(!this._titleList[c].disabled){return c;break}c++}return b}else{return 0}},next:function(c){var b=this._selectedItem;if(c!=undefined&&!isNaN(c)){b=c}while(b>=0&&b<this._titleList.length-1){b++;if(!this._titleList[b].disabled){this.select(b);return true}}return false},first:function(){var b=0;if(this._titleList[b].disabled){this.next(b)}else{this.select(b)}},last:function(){var b=this._titleList.length-1;if(this._titleList[b].disabled){this.previous(b)}else{this.select(b)}},length:function(){return this._titleList.length},lockAt:function(b){if(this._isValidIndex(b)&&(!this._titleList[b].locked||this._titleList[b].locked===undefined)){this._titleList[b].locked=true;this._raiseEvent(11,{item:b})}},unlockAt:function(b){if(this._isValidIndex(b)&&this._titleList[b].locked){this._titleList[b].locked=false;this._raiseEvent(12,{item:b})}},lockAll:function(){var b=this.length();while(b){b--;this.lockAt(b)}},unlockAll:function(){var b=this.length();while(b){b--;this.unlockAt(b)}},showCloseButtonAt:function(c){if(this._isValidIndex(c)){if(!this.showCloseButtons){this.showCloseButtons=true;this.updatetabsheader()}var b=this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true));b.css("display","block");if(!this.hiddenCloseButtons){this.hiddenCloseButtons=new Array()}this.hiddenCloseButtons[c]=0}},hideCloseButtonAt:function(c){if(this._isValidIndex(c)){var b=this._titleList[c].find(this.toThemeProperty(".jqx-tabs-close-button",true));b.css("display","none");if(!this.hiddenCloseButtons){this.hiddenCloseButtons=new Array()}this.hiddenCloseButtons[c]=1}},hideAllCloseButtons:function(){var b=this.length();while(b){b--;this.hideCloseButtonAt(b)}},showAllCloseButtons:function(){var b=this.length();while(b){b--;this.showCloseButtonAt(b)}},getTitleAt:function(b){if(this._titleList[b]){return this._titleList[b].text()}return null},getContentAt:function(b){if(this._contentList[b]){return this._contentList[b]}return null},setTitleAt:function(b,c){if(this._titleList[b]){this._titleList[b].text(c);if(this.showCloseButtons){this._addCloseButton(b);this._removeEventHandlers();this._addEventHandlers()}this.render();this.refresh()}},setContentAt:function(b,c){if(this._contentList[b]){this._contentList[b].html(c)}},ensureVisible:function(d){var k=this;if(d==undefined||d==-1||d==null){d=this.selectedItem}if(!this._isValidIndex(d)){return false}var j=parseInt(this._titleList[d].position().left)+parseInt(this._unorderedList.css("margin-left"));var f=parseInt(this._unorderedList.css("left"));var i=parseInt(this._headerWrapper.outerWidth(true));var e=parseInt(this._titleList[d].outerWidth(true));var h=f-this._getArrowsDisplacement();var b=i-this._getArrowsDisplacement()-h;var g,c;if(j<-h){g=-j+this._getArrowsDisplacement();c=this._getArrowsDisplacement()}else{if(j+e>b-this._getArrowsDisplacement()){g=-j+i-e-((this.scrollable)?(2*this.arrowButtonSize-this._getArrowsDisplacement()):0);c=i-e-this._getArrowsDisplacement()}else{this._moveSelectionTrack(d,this.selectionTrackerAnimationDuration);return true}}this._lockAnimation("unorderedList");this._unorderedList.animate({left:g},this.scrollAnimationDuration,function(){k._unlockAnimation("unorderedList");k._moveSelectionTrack(k._selectedItem,0);return true});this._moveSelectionTrack(d,this.selectionTrackerAnimationDuration,c);return true},isVisibleAt:function(d){var k=this;if(d==undefined||d==-1||d==null){d=this.selectedItem}if(!this._isValidIndex(d)){return false}var j=parseInt(this._titleList[d].position().left)+parseInt(this._unorderedList.css("margin-left"));var f=parseInt(this._unorderedList.css("left"));var i=parseInt(this._headerWrapper.outerWidth(true));var e=parseInt(this._titleList[d].outerWidth(true));var h=f-this._getArrowsDisplacement();var b=i-this._getArrowsDisplacement()-h;var g,c;if(j<-h){return false}else{if(j+e>b){return false}else{return true}}return true},isDisabled:function(b){return this._titleList[b].disabled},_lockAnimation:function(b){if(this._isAnimated){this._isAnimated[b]=true}},_unlockAnimation:function(b){if(this._isAnimated){this._isAnimated[b]=false}},propertyChangedHandler:function(b,c,e,d){this._validateProperties();switch(c){case"touchMode":if(d){b.enabledHover=false;b.keyboardNavigation=false}break;case"width":case"height":b._performResize();return;case"disabled":if(d){this.disable()}else{this.enable()}return;case"showCloseButtons":if(d){this.showAllCloseButtons()}else{this.hideAllCloseButtons()}this._moveSelectionTrack(this._selectedItem,this.selectionTrackerAnimationDuration);return;case"selectedItem":if(this._isValidIndex(d)){this.select(d)}return;case"scrollStep":case"contentTransitionDuration":case"scrollAnimationDuration":case"enableScrollAnimation":return;case"selectionTracker":if(d){this._refresh();this.select(this._selectedItem)}else{if(this._selectionTracker!=null){this._selectionTracker.remove()}}return;case"scrollable":if(d){this._refresh();this.select(this._selectedItem)}else{this._leftArrow.remove();this._rightArrow.remove();this._performHeaderLayout()}return;case"autoHeight":this._performHeaderLayout();return;case"theme":a.jqx.utilities.setTheme(e,d,this.host);return}this._unorderedList.css("left","0px");this._refresh();this.select(this._selectedItem);this._addSelectStyle(this._selectedItem,true)}})}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtagcloud.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtagcloud.js
new file mode 100644 (file)
index 0000000..ba818f1
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxTagCloud","",{});a.extend(a.jqx._jqxTagCloud.prototype,{defineInstance:function(){var b={width:null,height:null,source:null,disabled:false,rtl:false,valueMember:"value",displayMember:"label",urlMember:"url",urlBase:"",autoBind:true,takeTopWeightedItems:false,displayLimit:null,minValueToDisplay:0,maxValueToDisplay:0,minFontSize:10,maxFontSize:24,fontSizeUnit:"px",displayValue:false,sortBy:"none",alterTextCase:"none",sortOrder:"ascending",textColor:null,minColor:null,maxColor:null,tagRenderer:null};a.extend(true,this,b);return b},createInstance:function(){var b=this;b.render();b.dataBind(b.source,true)},dataBind:function(b,c){var h=this;h.records=[];var e=b._source?true:false;var i;if(e){i=b;b=b._source}else{b.datafields=[{name:h.displayMember},{name:h.valueMember},{name:h.urlMember}];i=new a.jqx.dataAdapter(b,{autoBind:true})}var j=function(){if(b.type!==undefined){i._options.type=b.type}if(b.formatdata!==undefined){i._options.formatData=b.formatdata}if(b.contenttype!==undefined){i._options.contentType=b.contenttype}if(b.async!==undefined){i._options.async=b.async}};var f=function(k){k._setSourceData(i);k._raiseEvent(1,{records:k.records});k._renderTags()};j(this);switch(b.datatype){case"local":case"array":default:if(b.localdata!=null||a.isArray(b)){i.unbindBindingUpdate(h.element.id);if(h.autoBind||(!h.autoBind&&!c)){i.dataBind()}f(h);i.bindBindingUpdate(h.element.id,function(k){f(h,k)})}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(b.localdata!=null){i.unbindBindingUpdate(h.element.id);if(h.autoBind||(!h.autoBind&&!c)){i.dataBind()}f(h);i.bindBindingUpdate(h.element.id,function(){f(h)});return}var d={};if(i._options.data){a.extend(i._options.data,d)}else{if(b.data){a.extend(d,b.data)}i._options.data=d}var g=function(){f(h)};i.unbindDownloadComplete(h.element.id);i.bindDownloadComplete(h.element.id,g);if(h.autoBind||(!h.autoBind&&!c)){i.dataBind()}}h._raiseEvent(2,{records:h.records})},destroy:function(){var b=this;b.removeHandler(b._el,"keydown");b.removeHandler(b._el,"click");b.host.empty();b.host.remove()},findTagIndex:function(c){var d=this;for(var b=0;b<d.records.length;b++){if(d.records[b][d.displayMember]===c){return d.records[b].index}}return -1},getHiddenTagsList:function(){return this.hiddenList.slice()},getRenderedTags:function(){return this.renderedData.slice()},getTagsList:function(){return this.records.slice()},insertAt:function(b,e){var d=this;e.index=b;if(e[this.displayMember]===undefined){throw new Error("jqxTagCloud: Insert tag requires a valid displayMember field to be supplied in the parameter")}var f=e[d.valueMember]!==undefined?parseFloat(e[d.valueMember]):0;e[d.valueMember]=isNaN(f)?0:f;if(d.source.insertTag&&typeof(d.source.insertTag)==="function"){d.source.insertTag(b,e,function(h){if(h){d.records.splice(b,0,e);for(var g=b+1;g<d.records.length;g++){d.records[g].index+=1}for(g=0;g<d.hiddenList.length;g++){if(d.hiddenList[g]>=b){d.hiddenList[g]++}}d._renderTags()}})}else{d.records.splice(b,0,e);for(var c=b+1;c<d.records.length;c++){d.records[c].index+=1}for(c=0;c<d.hiddenList.length;c++){if(d.hiddenList[c]>=b){d.hiddenList[c]++}}d._renderTags()}},updateAt:function(b,d){var c=this;if(d[this.displayMember]===undefined){throw new Error("jqxTagCloud: Update tag requires a valid displayMember field to be supplied in the parameter")}d.index=b;d.uid=c.records[b].uid;if(c.source.updateTag&&typeof(c.source.updateTag)==="function"){c.source.updateTag(b,d,function(e){if(e){a.each(d,function(f,g){c.records[b][f]=g});c._renderTags()}})}else{a.each(d,function(e,f){c.records[b][e]=f});c._renderTags()}},removeAt:function(b){var d=this;if(d.source.deleteTag&&typeof(d.source.deleteTag)==="function"){d.source.deleteTag(b,function(f){if(f){d.records.splice(b,1);for(var e=b;e<d.records.length;e++){d.records[e].index-=1}for(e=0;e<d.hiddenList.length;e++){if(d.hiddenList[e]>b){d.hiddenList[e]--}else{if(d.hiddenList[e]===b){d.hiddentList.splice(b,1)}}}}})}else{d.records.splice(b,1);for(var c=b;c<d.records.length;c++){d.records[c].index-=1}for(c=0;c<d.hiddenList.length;c++){if(d.hiddenList[c]>b){d.hiddenList[c]--}else{if(d.hiddenList[c]===b){d.hiddentList.splice(b,1)}}}}d._renderTags()},hideItem:function(b){var d=this;if(!(typeof(b)!=="number"||d.hiddenList.indexOf(b)!==-1)){d.hiddenList.push(b);var e=-1;for(var c=0;c<d.renderedData.length;c++){if(d.renderedData[c].index===b){e=c}}if(e!==-1){a(d._el).find("li")[e].style.display="none"}}},showItem:function(b){var d=this;if(d.hiddenList.indexOf(b)!==-1){var e=-1;for(var c=0;c<d.renderedData.length;c++){if(d.renderedData[c].index===b){e=c}}if(e!==-1){a(d._el).find("li")[e].style.display=""}d.hiddenList.splice(d.hiddenList.indexOf(b),1)}},render:function(){var b=this;b._updateSize();b.renderedData=[];b._el=a("<ul>");b.host.addClass(b.toThemeProperty("jqx-widget jqx-tag-cloud"));b._setRtl();b.host.append(b._el);b.focusedItem=null;b.minColor=b._parseColor(b.minColor);b.maxColor=b._parseColor(b.maxColor);b.displayLimit=parseInt(b.displayLimit);if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"))}b.addHandler(b._el,"click",function(d){if(a(document.activeElement).parents("#"+b._el[0].parentElement.id).length){}else{if(b.focusedItem!=null){a(b.focusedItem).focus()}else{a(b._el).find("a")[0].focus();b.focusedItem=document.activeElement}}if(b.disabled){d.preventDefault()}if(d.target.tagName.toLowerCase()==="a"){d.target.focus();b.focusedItem=document.activeElement}if(d.target.tagName.toLowerCase()==="li"){a(d.target).find("a").focus();b.focusedItem=document.activeElement}var c=a(d.target).closest("li").index();if(c!==-1){b._raiseEvent(0,{label:b.renderedData[c][b.displayMember],url:b.renderedData[c][b.urlMember],value:b.renderedData[c][b.valueMember],visibleIndex:c,index:b.renderedData[c].index,target:a(d.target).closest("li")[0],originalEvent:d})}});b._addKeyboardSupport()},resize:function(c,b){var d=this;d.width=c;d.height=b;d._updateSize()},propertyChangedHandler:function(b,c,f,e){var d=this;if(c==="source"){d.dataBind(b.source)}if(c==="displayLimit"){d[c]=parseInt(e)}if(c==="minColor"||c==="maxColor"){d[c]=d._parseColor(e)}if(c==="rtl"){d._setRtl();return}if(c==="width"||c==="height"){d._updateSize();return}if(c==="textColor"){if(!(d.minColor&&d.maxColor)){d._updateColor();return}}d._renderTags()},_alterCase:function(d){var c=this;function e(f){return f.replace(/\w\S*/g,function(g){return g.charAt(0).toUpperCase()+g.substr(1).toLowerCase()})}if(c.alterTextCase!=="none"){switch(c.alterTextCase){case"allLower":for(var b=0;b<d.length;b++){d[b][c.displayMember]=d[b][c.displayMember].toString().toLowerCase()}break;case"allUpper":for(b=0;b<d.length;b++){d[b][c.displayMember]=d[b][c.displayMember].toString().toUpperCase()}break;case"firstUpper":for(b=0;b<d.length;b++){d[b][c.displayMember]=d[b][c.displayMember].toString().toLowerCase();d[b][c.displayMember]=d[b][c.displayMember].substr(0,1).toUpperCase()+d[b][c.displayMember].substr(1)}break;case"titleCase":for(b=0;b<d.length;b++){d[b][c.displayMember]=e(d[b][c.displayMember].toString())}break;default:throw new Error("jqxTagCloud: Invalid alterTextCase value. Possible values: 'none', 'allLower', 'allUpper', 'firstUpper', 'titleCase'")}}return d},_addKeyboardSupport:function(){var b=this;b.addHandler(b._el,"keydown",function(c){if(c.keyCode==39){a("a:focus").closest("li").next().find("a").focus();b.focusedItem=document.activeElement}if(c.keyCode==37){a("a:focus").closest("li").prev().find("a").focus();b.focusedItem=document.activeElement}})},_renderTags:function(){var c=this;var f=c.records.slice();a.each(c.records,function(i,j){if(j[c.displayMember]===undefined){throw new Error("jqxTagCloud: 'label' property must be specified for every element.")}});f=c._filter(f);f=c._sort(f);f=c._alterCase(f);c._el.empty();if(f.length===0){return}var h=c._getMaxValue(f);var e=c._getMinValue(f);var g=h-e;for(var b=0;b<f.length;b++){var d=c._prepareTag(f[b],e,g);c._el.append(d);if(c.hiddenList.indexOf(f[b].index)!=-1){d[0].style.display="none"}}c.renderedData=f;c.focusedItem=null},_prepareTag:function(k,q,o){var m=this;if(!o){o=1}var f=a("<li>");var l="";if(null!==m.tagRenderer&&typeof(m.tagRenderer)==="function"){l=m.tagRenderer.apply(m,arguments)}else{l=k[m.displayMember]+(m.displayValue?"("+k[m.valueMember]+")":"")}l=a('<a rel="tag">').append(l);var g="javascript:void(0)";if(undefined!==k[m.urlMember]){g=(m.urlBase!=null?m.urlBase:"")+k[m.urlMember]}l.attr("href",g);f.append(l);f.addClass(m.toThemeProperty("jqx-tag-cloud-item"));var s=+m.minFontSize+((m.maxFontSize-m.minFontSize)*((k[m.valueMember]-q)/o));f[0].style.fontSize=s+m.fontSizeUnit;if(m.minColor&&m.maxColor){var p=m.minColor.split("(")[1].split(")")[0];p=p.split(",");var h=parseInt(p[0]);var j=parseInt(p[1]);var r=parseInt(p[2]);var i=parseFloat(p[3]);p=m.maxColor.split("(")[1].split(")")[0];p=p.split(",");var b=parseInt(p[0]);var e=parseInt(p[1]);var n=parseInt(p[2]);var d=parseFloat(p[3]);h+=Math.floor(((k[m.valueMember]-q)/o)*(b-h));j+=Math.floor(((k[m.valueMember]-q)/o)*(e-j));r+=Math.floor(((k[m.valueMember]-q)/o)*(n-r));i+=((k[m.valueMember]-q)/o)*(d-i);f[0].style.color="rgba("+h+","+j+","+r+","+i+")";f.find("a")[0].style.color="inherit"}else{if(m.textColor!==null){f[0].style.color=m.textColor;f.find("a")[0].style.color="inherit"}}return f},_parseColor:function(e){function k(b){var c={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};if(typeof c[b.toLowerCase()]!="undefined"){return c[b.toLowerCase()]}return false}var f=a("<span>").css("color",e);e=f.css("color");var i,h,d;if(e.substr(0,4)==="rgba"){return e}else{if(e.substr(0,3)==="rgb"){var j=e.split("(")[1].split(")")[0];j=j.split(",");i=parseInt(j[0]);h=parseInt(j[1]);d=parseInt(j[2]);return("rgba("+i+","+h+","+d+",1)")}else{if(e.substr(0,1)==="#"&&e.length===7){i=parseInt(e.substr(1,2),16);h=parseInt(e.substr(3,2),16);d=parseInt(e.substr(5,2),16);return("rgba("+i+","+h+","+d+",1)")}else{if(e.substr(0,1)==="#"&&e.length===4){i=parseInt(e.substr(1,1)+e.substr(1,1),16);h=parseInt(e.substr(2,1)+e.substr(2,1),16);d=parseInt(e.substr(3,1)+e.substr(3,1),16);return("rgba("+i+","+h+","+d+",1)")}else{if(e=k(e)){i=parseInt(e.substr(1,2),16);h=parseInt(e.substr(3,2),16);d=parseInt(e.substr(5,2),16);return("rgba("+i+","+h+","+d+",1)")}}}}}return e},_events:["itemClick","bindingUpdateComplete","bindingComplete"],_raiseEvent:function(d,b){var c=this._events[d],e=a.Event(c);e.args=b;return this.host.trigger(e)},_filter:function(d){var c=this;if(c.minValueToDisplay!=0){for(var b=0;b<d.length;){if(d[b][c.valueMember]<c.minValueToDisplay){d.splice(b,1)}else{b++}}}if(c.maxValueToDisplay!=0){for(var b=0;b<d.length;){if(d[b][c.valueMember]>c.maxValueToDisplay){d.splice(b,1)}else{b++}}}if(c.displayLimit!=null&&!isNaN(c.displayLimit)){if(c.takeTopWeightedItems===true){d.sort(function(f,e){if(f[c.valueMember]<e[c.valueMember]){return 1}if(f[c.valueMember]>e[c.valueMember]){return -1}return 0});d=d.slice(0,c.displayLimit);d.sort(function(f,e){if(f.index<e.index){return -1}if(f.index>e.index){return 1}return 0})}else{d=d.slice(0,c.displayLimit)}}return d},_sort:function(c){var b=this;if(b.sortBy!=="none"){if(b.sortBy==="label"){c.sort(function(e,d){if(e[b.displayMember]<d[b.displayMember]){return -1}if(e[b.displayMember]>d[b.displayMember]){return 1}return 0})}else{if(b.sortBy==="value"){c.sort(function(e,d){if(e[b.valueMember]<d[b.valueMember]){return -1}if(e[b.valueMember]>d[b.valueMember]){return 1}return 0})}else{throw new Error("jqxTagCloud: sortBy option needs to be either 'none' or 'label' or 'value'")}}if(b.sortOrder==="ascending"){return c}else{if(b.sortOrder==="descending"){return c.reverse()}else{throw new Error("jqxTagCloud: sortOrder option needs to be either 'ascending' or 'descending'")}}}return c},_getMaxValue:function(e){var d=this;var b=e[0][d.valueMember];for(var c=0;c<e.length;c++){if(b<e[c][d.valueMember]){b=e[c][d.valueMember]}}return b},_getMinValue:function(e){var d=this;var c=e[0][d.valueMember];for(var b=0;b<e.length;b++){if(c>e[b][d.valueMember]){c=e[b][d.valueMember]}}return c},_setSourceData:function(d){var c=this;c.records=d.records;for(var b=0;b<c.records.length;b++){var e=c.records[b][c.valueMember]!==undefined?parseFloat(c.records[b][c.valueMember]):0;c.records[b][c.valueMember]=isNaN(e)?0:e;c.records[b].index=b}c.hiddenList=[]},_updateColor:function(){var b=this;if(b.textColor){a(b._el).find("li").css("color",b.textColor)}},_updateSize:function(){var b=this;if(b.width){b.host.width(b.width)}if(b.height){b.host.height(b.height)}},_setRtl:function(){var b=this;if(b.rtl){b.host.addClass(b.toThemeProperty("jqx-rtl"))}else{b.host.removeClass(b.toThemeProperty("jqx-rtl"))}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtextarea.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtextarea.js
new file mode 100644 (file)
index 0000000..bb01585
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxTextArea","",{});a.extend(a.jqx._jqxTextArea.prototype,{defineInstance:function(){var b=this;var c={disabled:false,filter:b._filter,sort:b._sort,highlight:b._highlight,dropDownWidth:null,renderer:b._renderer,opened:false,$popup:a("<ul></ul>"),source:[],roundedCorners:true,searchMode:"default",placeHolder:"",width:null,height:null,rtl:false,displayMember:"",valueMember:"",popupZIndex:20000,items:8,item:'<li><a href="#"></a></li>',minLength:1,maxLength:null,scrollBarSize:a.jqx.utilities.scrollBarSize,query:"",events:["change","select","open","close"]};a.extend(true,b,c)},createInstance:function(){var b=this;b.render();b.isInitialized=true},render:function(){var c=this,f=c.element.id;if(c.isInitialized===true){c.refresh();return}if(a.jqx.utilities.scrollBarSize!==15){c.scrollBarSize=a.jqx.utilities.scrollBarSize}var b=a('<div id="panelWrapper'+f+'" style="overflow: hidden; width: 100%; height: 100%; background-color: transparent; -webkit-appearance: none; outline: none; align:left; border: 0px; padding: 0px; margin: 0px; left: 0px; top: 0px; valign:top; position: relative;"></div>');var e=a('<div id="verticalScrollBar'+f+'" style="align: left; valign: top; left: 0px; top: 0px; position: absolute;"></div>');c._id=c.element.id;if(c.element.tagName.toLowerCase()==="div"){c._baseHost=c.host;c.host.append(b);b.append('<textarea id="area'+f+'" class="'+c.toThemeProperty("jqx-text-area-element")+'"></textarea>');b.append(e)}else{if(c.element.tagName.toLowerCase()==="textarea"){c._baseHost=a(c.element);c._baseHost.wrap("<div></div>");c._baseHost.wrap(b);c._baseHost.after(e);c.host=c._baseHost.parent().parent();c.host[0].style.cssText=c.element.style.cssText;c.element.style.cssText="";c._baseHost.addClass(c.toThemeProperty("jqx-text-area-element"))}}var d=c.host;c.wrapper=b;c.textarea=d.find("textarea");c._addClasses();if(!d.jqxButton){throw new Error("jqxTextArea: Missing reference to jqxbuttons.js.")}if(!d.jqxScrollBar){throw new Error("jqxTextArea: Missing reference to jqxscrollbar.js.")}if(null===c.width&&d[0].style&&null!==d[0].style.width){c.width=d[0].style.width}if(null===c.height&&d[0].style&&null!==d[0].style.height){c.height=d[0].style.height}c._setSize();if(a.trim(c.textarea.val())===""){c.textarea.val("")}c.textarea.attr("placeholder",c.placeHolder);if(c.maxLength!==null){c.textarea.attr("maxlength",c.maxLength)}if(a.jqx.browser.msie&&a.jqx.browser.version<10&&c.textarea.val()===""){c.textarea.val(c.placeHolder)}c.vScrollBar=e;e.jqxScrollBar({vertical:true,width:15,height:"100%",max:c.height,theme:c.theme});if((c.source instanceof Array&&c.source.length)||c.source._source||a.isFunction(c.source)){c._oldsource=c.source;c._updateSource();c._addPopupClasses();a.jqx.aria(c,"aria-haspopup",true)}c._arrange();c._addHandlers()},refresh:function(c){if(c!==true){var b=this;b._setSize();b._arrange();b._removeHandlers();b._addHandlers();if(b.opened===true){b.open()}}},_arrange:function(){var d=this;var e=d.textarea;var c=e[0].scrollHeight-e.height();var b=e[0].scrollHeight-e.height();if(b<0){b=0}d.vScrollBar.jqxScrollBar({max:b,value:e[0].scrollTop});if(c<5){e.width(d.host.width());d.vScrollBar.css("visibility","hidden")}else{e.width(d.host.width()-d.scrollBarSize);d.vScrollBar.css("visibility","visible");d._arrangeScrollbars(d.scrollBarSize)}},val:function(e){var d=this,c=d.textarea,f=c.val(),b;if(a.jqx.browser.msie&&a.jqx.browser.version<10&&f===d.placeHolder){f=""}if(arguments.length===0||(typeof e==="object"&&a.isEmptyObject(e)===true)){if(d.displayMember!==""&&d.valueMember!==""&&d.selectedItem){if(f===""){return""}return d.selectedItem}return f}if(e&&e.label){if(d.selectedItem&&e.label===d.selectedItem.label&&e.value===d.selectedItem.value){return e.label}d.selectedItem={label:e.label,value:e.value};d.host.attr("data-value",e.value);d.host.attr("data-label",e.label);c.val(e.label);b=e.label}else{if(f===e){return e}c.val(e);d.host.attr("data-value",e);d.host.attr("data-label",e);b=e}d._arrange();d._raiseEvent("0");return b},focus:function(){this.textarea.focus()},selectAll:function(){var b=this.textarea;setTimeout(function(){if("selectionStart" in b[0]){b[0].focus();b[0].setSelectionRange(0,b[0].value.length)}else{var c=b[0].createTextRange();c.collapse(true);c.moveEnd("character",b[0].value.length);c.moveStart("character",0);c.select()}},10)},_arrangeScrollbars:function(b){var k=this;var d=k.host.width();var j=k.host.height();var i=k.vScrollBar;var h=i[0].style.visibility!=="hidden";var g=2;var f=2;i.width(b);i.height(parseInt(j,10)-g+"px");i.css({left:parseInt(d,10)-parseInt(b,10)-g-f+"px",top:"0px"});if(k.rtl){i.css({left:"0px"});var c=h?parseInt(b,10)+"px":0;if(k.textarea.children().css("direction")!=="rtl"){var e=false;if(a.jqx.browser.msie&&a.jqx.browser.version<8){e=true}if(!e){k.textarea.css("padding-left",c)}}}else{if(i.css("visibility")!=="hidden"){k.textarea.css("width",k.host.width()-k.vScrollBar.outerWidth())}}i.jqxScrollBar("refresh")},destroy:function(){var b=this;if(b.opened){b._removeItemHandlers()}b.$popup.remove();b.vScrollBar.jqxScrollBar("destroy");b._removeHandlers();b.host.remove()},propertyChangedHandler:function(b,c,e,d){if(b.isInitialized===undefined||b.isInitialized===false){return}if(d!==e){switch(c){case"theme":b.vScrollBar.jqxScrollBar({theme:b.theme});break;case"width":b.host.css("width",d);b._arrange();break;case"height":b.host.css("height",d);b._arrange();break;case"source":b._oldsource=d;b._updateSource();break;case"displayMember":case"valueMember":b.source=b._oldsource;b._updateSource();break;case"opened":if(d===true){b.open()}else{b.close()}break;case"maxLength":b.textarea.attr("maxlength",d);break;case"placeHolder":b.textarea.attr("placeholder",d);if(a.jqx.browser.msie&&a.jqx.browser.version<10&&b.textarea.val()===e){b.textarea.val(d)}break;case"scrollBarSize":b._arrange();break;case"dropDownWidth":b.$popup.width(d);break;case"roundedCorners":if(d===true){b.host.add(b.$popup).addClass(b.toThemeProperty("jqx-rc-all"))}else{b.host.add(b.$popup).removeClass(b.toThemeProperty("jqx-rc-all"))}break;case"disabled":b.vScrollBar.jqxScrollBar({disabled:d});if(d===true){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"));b.textarea.attr("disabled","")}else{b.host.removeClass(b.toThemeProperty("jqx-fill-state-disabled"));b.textarea.removeAttr("disabled")}a.jqx.aria(b,"aria-disabled",d);break;case"rtl":if(d===true){b.textarea.addClass(b.toThemeProperty("jqx-text-area-element-rtl"))}else{b.textarea.removeClass(b.toThemeProperty("jqx-text-area-element-rtl"))}b._arrange();break}}},_raiseEvent:function(h,c){var e=this;if(c===undefined){c={owner:null}}var d=e.events[h];c.owner=e;var g=new a.Event(d);g.owner=e;g.args=c;if(g.preventDefault){g.preventDefault()}var f;if(d==="change"||e._baseHost[0].tagName.toLowerCase()==="div"){f=e.host}else{f=e._baseHost}var b=f.trigger(g);return b},_addHandlers:function(){var c=this,f=c.element.id,e=c.host,d=c.textarea;a.jqx.utilities.resize(c._baseHost,function(){c._ttimer=setTimeout(function(){c._arrange()},100)},false,true);var b=a.jqx.browser.mozilla?"wheel":"mousewheel";c.addHandler(e,b+".jqxTextArea"+f,function(g){c.wheel(g,c)});c.addHandler(e,"mouseenter.jqxTextArea"+f,function(){c.focused=true});c.addHandler(e,"mouseleave.jqxTextArea"+f,function(){c.focused=false});c.addHandler(e,"focus.jqxTextArea"+f,function(){c.focused=true});c.addHandler(e,"blur.jqxTextArea"+f,function(){c.focused=false});c.addHandler(c.wrapper,"scroll.jqxTextArea"+f,function(){if(c.wrapper[0].scrollTop!==0){c.wrapper[0].scrollTop=0}if(c.wrapper[0].scrollLeft!==0){c.wrapper[0].scrollLeft=0}});c.addHandler(d,"change.jqxTextArea"+f,function(g){g.stopPropagation();g.preventDefault();c._arrange();c._raiseEvent("0")});c.addHandler(d,"select.jqxTextArea"+f,function(g){g.stopPropagation();g.preventDefault()});c.addHandler(d,"scroll.jqxTextArea"+f,function(){c._arrange()});c.addHandler(d,"focus.jqxTextArea"+f,function(){c.host.addClass(c.toThemeProperty("jqx-fill-state-focus"));if(a.jqx.browser.msie&&a.jqx.browser.version<10&&c.textarea.val()===c.placeHolder){c.textarea.val("")}});c.addHandler(d,"blur.jqxTextArea"+f,function(){c.host.removeClass(c.toThemeProperty("jqx-fill-state-focus"));if(a.jqx.browser.msie&&a.jqx.browser.version<10){var g=c.textarea.val();if(g===""){c.textarea.val(c.placeHolder)}else{if(c.maxLength!==null&&g.length>c.maxLength){c.textarea.val(g.substr(0,c.maxLength))}}}});c.addHandler(d,"keydown.jqxTextArea"+f,function(g){c._suppressKeyPressRepeat=~a.inArray(g.keyCode,[40,38,9,13,27]);c._move(g)});c.addHandler(d,"keypress.jqxTextArea"+f,function(g){if(c.maxLength!==null&&a.jqx.browser.msie&&a.jqx.browser.version<10&&d.val().length>c.maxLength){return false}if(c._suppressKeyPressRepeat){return}c._move(g)});c.addHandler(d,"keyup.jqxTextArea"+f,function(g){switch(g.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!c.opened){return}c._select();break;case 27:if(!c.opened){return}c.close();break;default:if(c.timer){clearTimeout(c.timer)}c.timer=setTimeout(function(){c._suggest()},300)}g.stopPropagation();g.preventDefault();c._arrange()});c.addHandler(c.vScrollBar,"valueChanged.jqxTextArea"+f,function(g){d.scrollTop(g.currentValue)});c.addHandler(c.$popup,"mousedown.jqxTextArea"+f,function(g){g.stopPropagation();g.preventDefault();c._select()})},_removeHandlers:function(){var b=this,e=b.element.id,d=b.host,c=b.textarea;a.jqx.utilities.resize(b._baseHost,null,true);b.removeHandler(d,"mousewheel.jqxTextArea"+e);b.removeHandler(d,"mouseenter.jqxTextArea"+e);b.removeHandler(d,"mouseleave.jqxTextArea"+e);b.removeHandler(d,"focus.jqxTextArea"+e);b.removeHandler(d,"blur.jqxTextArea"+e);b.removeHandler(b.wrapper,"scroll.jqxTextArea"+e);b.removeHandler(c,"change.jqxTextArea"+e);b.removeHandler(c,"select.jqxTextArea"+e);b.removeHandler(c,"scroll.jqxTextArea"+e);b.removeHandler(c,"focus.jqxTextArea"+e);b.removeHandler(c,"blur.jqxTextArea"+e);b.removeHandler(c,"keydown.jqxTextArea"+e);b.removeHandler(c,"keypress.jqxTextArea"+e);b.removeHandler(c,"keyup.jqxTextArea"+e);b.removeHandler(b.vScrollBar,"valueChanged.jqxTextArea"+e);b.removeHandler(b.$popup,"mousedown.jqxTextArea"+e)},_addItemHandlers:function(){var b=this;b.addHandler(b.$popup.find("li"),"mouseenter.jqxTextArea"+b.element.id,function(c){b.$popup.find(".jqx-fill-state-pressed").removeClass(b.toThemeProperty("jqx-fill-state-pressed"));a(c.currentTarget).addClass(b.toThemeProperty("jqx-fill-state-pressed"))})},_removeItemHandlers:function(){var b=this;b.removeHandler(b.$popup.find("li"),"mouseenter.jqxTextArea"+b.element.id)},wheel:function(d,c){var e=0;if(d.originalEvent&&a.jqx.browser.msie&&d.originalEvent.wheelDelta){e=d.originalEvent.wheelDelta/120}if(!d){d=window.event}if(d.wheelDelta){e=d.wheelDelta/120}else{if(d.detail){e=-d.detail/3}else{if(d.originalEvent.wheelDelta){e=d.originalEvent.wheelDelta/120}else{if(d.originalEvent.detail){e=-d.originalEvent.detail/3}else{if(d.originalEvent.deltaY){e=-d.originalEvent.deltaY/3}}}}}if(e){var b=c._handleDelta(e);if(!b){if(d.preventDefault){d.preventDefault()}}if(!b){return b}else{return false}}if(d.preventDefault){d.preventDefault()}d.returnValue=false},_handleDelta:function(f){var c=this,d=c.vScrollBar.jqxScrollBar("getInstance");if(c.focused){var e=d.value;if(f<0){c.scrollDown()}else{c.scrollUp()}var b=d.value;if(e!==b){return false}}return true},scrollDown:function(){var b=this;if(b.vScrollBar.css("visibility")==="hidden"){return false}var d=b.vScrollBar.jqxScrollBar("getInstance");var c=Math.min(d.value+d.largestep,d.max);d.setPosition(c);b._arrange();return true},scrollUp:function(){var b=this;if(b.vScrollBar.css("visibility")==="hidden"){return false}var d=b.vScrollBar.jqxScrollBar("getInstance");var c=Math.max(d.value-d.largestep,d.min);d.setPosition(c);b._arrange();return true},_setSize:function(){var b=this;b.host.css("width",b.width);b.host.css("height",b.height)},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-panel"));b.host.addClass(b.toThemeProperty("jqx-widget"));b.host.addClass(b.toThemeProperty("jqx-widget-content"));b.host.addClass(b.toThemeProperty("jqx-text-area"));b.textarea.addClass(b.toThemeProperty("jqx-widget-content"));if(b.roundedCorners===true){b.host.addClass(b.toThemeProperty("jqx-rc-all"))}if(b.disabled===true){b.host.addClass(b.toThemeProperty("jqx-fill-state-disabled"));b.textarea.attr("disabled","");a.jqx.aria(b,"aria-disabled",true)}else{a.jqx.aria(b,"aria-disabled",false)}if(b.rtl===true){b.textarea.addClass(b.toThemeProperty("jqx-text-area-element-rtl"))}},_addPopupClasses:function(){var c=this,b=c.$popup;b.addClass(c.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){b.addClass(c.toThemeProperty("jqx-noshadow"))}b.addClass(c.toThemeProperty("jqx-input-popup"));b.addClass(c.toThemeProperty("jqx-menu"));b.addClass(c.toThemeProperty("jqx-menu-vertical"));b.addClass(c.toThemeProperty("jqx-menu-dropdown"));b.addClass(c.toThemeProperty("jqx-widget"));b.addClass(c.toThemeProperty("jqx-widget-content"));if(c.roundedCorners){b.addClass(c.toThemeProperty("jqx-rc-all"))}},_updateSource:function(){var d=this;var b=function(f){var e=[];e=a.map(f,function(h){if(h===undefined){return null}if(typeof h==="string"||h instanceof String){return{label:h,value:h}}if(typeof h!=="string"&&h instanceof String===false){var g="";var i="";if(d.displayMember!==""&&d.displayMember!==undefined){if(h[d.displayMember]){g=h[d.displayMember]}}if(d.valueMember!==""&&d.valueMember!==undefined){i=h[d.valueMember]}if(g===""){g=h.label}if(i===""){i=h.value}return{label:g,value:i}}return h});return e};if(d.source&&d.source._source){d.adapter=d.source;if(d.adapter._source.localdata){d.adapter.unbindBindingUpdate(d.element.id);d.adapter.bindBindingUpdate(d.element.id,function(){d.source=b(d.adapter.records)})}else{var c={};if(d.adapter._options.data){a.extend(d.adapter._options.data,c)}else{if(d.source._source.data){a.extend(c,d.source._source.data)}d.adapter._options.data=c}d.adapter.unbindDownloadComplete(d.element.id);d.adapter.bindDownloadComplete(d.element.id,function(){d.source=b(d.adapter.records)})}d.source.dataBind();return}if(!a.isFunction(d.source)){d.source=b(d.source)}},open:function(){var d=this;if(a.jqx.isHidden(d.host)){return}var c=a.extend({},d.host.coord(true),{height:d.host[0].offsetHeight});if(d.$popup.parent().length===0){var f=d._id+"_popup";d.$popup[0].id=f;a.jqx.aria(d,"aria-owns",f)}d.$popup.appendTo(a(document.body)).css({position:"absolute",zIndex:d.popupZIndex,top:c.top+c.height,left:c.left}).show();var b=0;var e=d.$popup.children();a.each(e,function(){b+=a(this).outerHeight(true)-1});d.$popup.height(b);d.opened=true;d._raiseEvent("2",{popup:d.$popup});a.jqx.aria(d,"aria-expanded",true);d._addItemHandlers();return d},close:function(){var b=this;b._removeItemHandlers();b.$popup.hide();b.opened=false;b._raiseEvent("3",{popup:b.$popup});a.jqx.aria(b,"aria-expanded",false);return b},_suggest:function(){var c=this,b;c.query=c.textarea[0].value;if(!c.query||c.query.length<c.minLength){return c.opened?c.close():c}if(a.isFunction(c.source)){b=c.source(c.query,a.proxy(c._load,this))}else{b=c.source}if(b){return c._load(b)}return c},_load:function(b){var c=this;b=a.grep(b,function(d){return c.filter(d)});b=c.sort(b);if(!b.length){if(c.opened){return c.close()}else{return c}}return c._render(b.slice(0,c.items)).open()},_filter:function(c){var b=this;var d=b.query;var e=c;if(c.label!==undefined){e=c.label}else{if(b.displayMember){e=c[b.displayMember]}}switch(b.searchMode){case"none":break;case"contains":return a.jqx.string.contains(e,d);case"equals":return a.jqx.string.equals(e,d);case"equalsignorecase":return a.jqx.string.equalsIgnoreCase(e,d);case"startswith":return a.jqx.string.startsWith(e,d);case"startswithignorecase":return a.jqx.string.startsWithIgnoreCase(e,d);case"endswith":return a.jqx.string.endsWith(e,d);case"endswithignorecase":return a.jqx.string.endsWithIgnoreCase(e,d);default:return a.jqx.string.containsIgnoreCase(e,d)}},_sort:function(c){var b=this,j=[],e=[],g=[];for(var d=0;d<c.length;d++){var f=c[d];var h=f;if(f.label){h=f.label}else{if(b.displayMember){h=f[b.displayMember]}}if(h.toString().toLowerCase().indexOf(b.query.toString().toLowerCase())===0){j.push(f)}else{if(h.toString().indexOf(b.query)>=0){e.push(f)}else{if(h.toString().toLowerCase().indexOf(b.query.toString().toLowerCase())>=0){g.push(f)}}}}return j.concat(e,g)},_render:function(b){var c=this;b=a(b).map(function(e,f){var h=f;if(f.value!==undefined){if(f.label!==undefined){e=a(c.item).attr({"data-name":f.label,"data-value":f.value})}else{e=a(c.item).attr({"data-name":f.value,"data-value":f.value})}}else{if(f.label!==undefined){e=a(c.item).attr({"data-value":f.label,"data-name":f.label})}else{if(c.displayMember!==undefined&&c.displayMember!==""){e=a(c.item).attr({"data-name":f[c.displayMember],"data-value":f[c.valueMember]})}else{e=a(c.item).attr({"data-value":f,"data-name":f})}}}if(f.label){h=f.label}else{if(c.displayMember){h=f[c.displayMember]}}e.find("a").html(c.highlight(h));var g="",d="";if(c.roundedCorners===true){g=" "+c.toThemeProperty("jqx-rc-all")}if(c.rtl){d=" "+c.toThemeProperty("jqx-rtl")}e[0].className=c.toThemeProperty("jqx-item")+" "+c.toThemeProperty("jqx-menu-item")+g+d;return e[0]});b.first().addClass(c.toThemeProperty("jqx-fill-state-pressed"));c.$popup.html(b);if(!c.dropDownWidth){c.$popup.width(c.host.outerWidth()-6)}else{c.$popup.width(c.dropDownWidth)}return c},_highlight:function(c){var d=this.query;d=d.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var b=new RegExp("("+d+")","ig");return c.replace(b,function(e,f){return"<b>"+f+"</b>"})},_select:function(){var b=this;var d=b.$popup.find(".jqx-fill-state-pressed").attr("data-value");var c=b.$popup.find(".jqx-fill-state-pressed").attr("data-name");b.textarea[0].value=b.renderer(c,b.textarea[0].value);b.selectedItem={label:c,value:d};b.host.attr("data-value",d);b.host.attr("data-label",c);b._raiseEvent("1",{item:{label:c,value:d}});b._arrange();b.textarea[0].scrollTop=b.textarea[0].scrollHeight;b._raiseEvent("0");return b.close()},_renderer:function(b){return b},_move:function(c){var b=this;if(!b.opened){return}switch(c.keyCode){case 9:case 13:case 27:c.preventDefault();break;case 38:if(!c.shiftKey){c.preventDefault();b._prev()}break;case 40:if(!c.shiftKey){c.preventDefault();b._next()}break}c.stopPropagation()},_next:function(){var b=this,d=b.$popup.find(".jqx-fill-state-pressed").removeClass(b.toThemeProperty("jqx-fill-state-pressed")),c=d.next();if(!c.length){c=a(b.$popup.find("li")[0])}c.addClass(b.toThemeProperty("jqx-fill-state-pressed"))},_prev:function(){var b=this,d=b.$popup.find(".jqx-fill-state-pressed").removeClass(b.toThemeProperty("jqx-fill-state-pressed")),c=d.prev();if(!c.length){c=b.$popup.find("li").last()}c.addClass(b.toThemeProperty("jqx-fill-state-pressed"))}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtoolbar.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtoolbar.js
new file mode 100644 (file)
index 0000000..efb55a6
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxToolBar","",{});a.extend(a.jqx._jqxToolBar.prototype,{defineInstance:function(){var b={width:"100%",minWidth:null,maxWidth:null,height:35,tools:"",initTools:null,minimizeWidth:200,disabled:false,rtl:false,events:["open","close"]};a.extend(true,this,b)},createInstance:function(){var b=this;b._toolToWidgetMapping={button:"jqxButton",toggleButton:"jqxToggleButton",dropdownlist:"jqxDropDownList",combobox:"jqxComboBox",input:"jqxInput"};b._toolChanges=new Array();b.render()},render:function(){var c=this,b=true;c.host.html("");c.host.removeClass(c.toThemeProperty("jqx-widget jqx-fill-state-normal jqx-rc-all jqx-toolbar jqx-fill-state-disabled"));c._setSize();c._destroyTools(false);if(c._toolWidgets){b=false;c._minimizeButton.add(c._minimizePopup).remove()}c._appendMinimizeButton();c._addClasses();c._createTools();if(c.disabled===true){c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"));c._disableTools(true)}c._minimize();c._removeHandlers();c._addHandlers();if(b===false&&c._toolChanges.length>0){c._restoreChanges()}},refresh:function(b){if(b!==true){this.render()}},getTools:function(){return this._toolWidgets},destroy:function(){var b=this;b._removeHandlers();b._destroyTools();b.host.remove()},_destroyTools:function(d){var c=this;if(d!==false){d=true}if(c._toolWidgets){for(var b=c._toolWidgets.length-1;b>=0;b--){c._destroyTool(b,d)}}},_destroyTool:function(c,g){var e=this;c=parseInt(c,10);var b=e._toolWidgets[c];if(b){var d=b.type;var f=e._getBothTools(b);if(d!=="custom"){f[e._toolToWidgetMapping[d]]("destroy")}else{f.remove()}if(b.menuSeparator){b.menuSeparator.remove()}e._toolWidgets.splice(c,1);if(e._checkType(d)){e._refreshButtonGroups()}e._minimize();if(g!==false){e._toolChanges.push({action:"destroyTool",index:c})}}},destroyTool:function(b){this._destroyTool(b,true)},addTool:function(j,g,f,b){var h=this,i,d,c,e;if(g==="first"){i=0}else{i=h._toolWidgets.length}if(h._toolWidgets[i-1]){d=h._toolWidgets[i-1].tool;if(h._toolWidgets[i-1].separatorAfterWidget){c="|"}else{c=h._toolWidgets[i-1].type}}if(f===true){e="|"}else{if(h._toolWidgets[i+1]){e=h._toolWidgets[i+1].type}}var k=h._initializeTool(i,j,d,c,e,b,false);if(g==="first"){h._toolWidgets.splice(0,0,k)}else{h._toolWidgets.push(k)}h._removeHandlers();h._addHandlers();if(h._checkType(j)){h._refreshButtonGroups()}if(g!=="first"&&h._minimizedTools>0){h._minimizeTool(true)}else{h._minimize()}h._toolChanges.push({action:"addTool",type:j,position:g,separator:f,initCallback:b})},_disableTools:function(b){var d=this;for(var c=0;c<d._toolWidgets.length;c++){d.disableTool(c,b)}},disableTool:function(d,c){var f=this;d=parseInt(d,10);var b=f._toolWidgets[d];if(b){var e=b.type;var g=f._getBothTools(b);if(e!=="custom"){g[f._toolToWidgetMapping[e]]({disabled:c})}f._toolChanges.push({action:"disableTool",index:d,disable:c})}},propertyChangedHandler:function(c,n,b,m){if(n!=="initTools"){if(m!==b){switch(n){case"theme":if(b!==""){c.host.removeClass("jqx-widget-"+b+" jqx-fill-state-normal-"+b+" jqx-rc-all-"+b+" jqx-toolbar-"+b);c._minimizePopup.removeClass("jqx-popup-"+b+" jqx-fill-state-normal-"+b+" jqx-rc-b-"+b+" jqx-toolbar-minimized-popup-"+b)}c._addClasses();c._minimizePopup.addClass(c.toThemeProperty("jqx-popup jqx-fill-state-normal jqx-rc-b jqx-toolbar-minimized-popup"));for(var e=0;e<c._toolWidgets.length;e++){var f=c._toolWidgets[e];if(f.type!=="custom"){var k=c._getBothTools(f);if(f.menuTool){if(f.menuSeparator){f.menuSeparator.removeClass("jqx-fill-state-pressed-"+b+" jqx-toolbar-minimized-popup-separator-"+b);f.menuSeparator.addClass(c.toThemeProperty("jqx-fill-state-pressed jqx-toolbar-minimized-popup-separator"))}}k[c._toolToWidgetMapping[c._toolWidgets[e].type]]({theme:m})}}a.jqx.utilities.setTheme(b,m,c.host);break;case"width":c.host.width(m);c._minimize();break;case"minWidth":c.host.css("min-width",m);c._minimize();break;case"maxWidth":c.host.css("max-width",m);c._minimize();break;case"height":c.host.height(m);for(var d=0;d<c._toolWidgets.length;d++){var o=c._toolWidgets[d];var h=o.type;var g=c._getBothTools(o);if(h==="button"||h==="toggleButton"||h==="repeatButton"||h==="linkButton"){g.css("height",m)}else{if(h==="dropdownlist"||h==="combobox"||h==="input"){g[c._toolToWidgetMapping[h]]({height:m-2})}}}break;case"tools":c._removeHandlers();c._destroyTools();c._createTools();c._addHandlers();c._minimize();break;case"minimizeWidth":if(c._isOpen===true){var l=parseInt(c._minimizePopup.css("left"),10)-(m-b);c._minimizePopup.css({width:m+"px",left:l+"px"})}else{c._minimizePopup.width(m)}break;case"rtl":c.render();break;case"disabled":if(m===true){c.host.addClass(c.toThemeProperty("jqx-fill-state-disabled"));c._disableTools(true)}else{c.host.removeClass(c.toThemeProperty("jqx-fill-state-disabled"));c._disableTools(false)}break}}}},_raiseEvent:function(f,c){if(c===undefined){c={owner:null}}var d=this.events[f];c.owner=this;var e=new a.Event(d);e.owner=this;e.args=c;if(e.preventDefault){e.preventDefault()}var b=this.host.trigger(e);return b},_addClasses:function(){var b=this;b.host.addClass(b.toThemeProperty("jqx-widget jqx-fill-state-normal jqx-rc-all jqx-toolbar"));if(b.rtl===true){b.host.addClass(b.toThemeProperty("jqx-toolbar-rtl"))}},_checkType:function(b){if(b==="button"||b==="toggleButton"||b==="repeatButton"||b==="linkButton"){return true}return false},_refreshButtonGroups:function(){var c=this;function b(g,f,h,e,i,d){g[f+"Class"](c.toThemeProperty("jqx-toolbar-tool-inner-button"));g[h+"Class"](c.toThemeProperty("jqx-rc-all"));g[e+"Class"](c.toThemeProperty("jqx-rc-l"));g[i+"Class"](c.toThemeProperty("jqx-rc-r"));g.css("border-left-width",d+"px")}a.each(c._toolWidgets,function(e,i){if(c._checkType(i.type)){var g,f;var k=c._getBothTools(i);if(e>0){if(c._toolWidgets[e-1].separatorAfterWidget){g="|"}else{g=c._toolWidgets[e-1]}}if(i.separatorAfterWidget){f="|"}else{if(e<c._toolWidgets.length-1){f=c._toolWidgets[e+1]}}var d=g&&c._checkType(g.type);var j=i.separatorAfterWidget===false&&f&&c._checkType(f.type);if(!d&&!j){b(k,"remove","add","remove","remove",1)}else{if(!d&&j){b(k,"remove","remove","add","remove",1)}else{if(d&&j){b(k,"add","remove","remove","remove",0)}else{if(d&&!j){b(k,"remove","remove","remove","add",0)}}}}var h=c.rtl?"rtl":"ltr";if(!j){if(i.separatorAfterWidget){k.removeClass(c.toThemeProperty("jqx-toolbar-tool-no-separator-"+h));k.addClass(c.toThemeProperty("jqx-toolbar-tool-separator-"+h))}else{k.removeClass(c.toThemeProperty("jqx-toolbar-tool-separator-"+h));k.addClass(c.toThemeProperty("jqx-toolbar-tool-no-separator-"+h))}}else{k.removeClass(c.toThemeProperty("jqx-toolbar-tool-separator-"+h));k.removeClass(c.toThemeProperty("jqx-toolbar-tool-no-separator-"+h))}}})},_addHandlers:function(){var b=this;var c=b.element.id;a.jqx.utilities.resize(b.host,function(){if(a.jqx.browser.msie&&a.jqx.browser.version<8&&typeof b.width==="string"&&b.width.charAt(b.width.length-1)==="%"){var e=b.host.parent().width();var f=e*parseFloat(b.width.replace("%",""))/100;var d=parseInt(b.host.css("border-left-width"),10)+parseInt(b.host.css("border-right-width"),10)+parseInt(b.host.css("padding-left"),10)+parseInt(b.host.css("padding-right"),10);b.host.css("width",f-d-1)}if(b._isOpen===true){b._minimizePopup.hide();b._isOpen=false;b._raiseEvent("1")}b._minimize()});b.addHandler(a(document),"click.jqxToolbar"+c,function(){if(b._isOpen===true){b._openMinimizePopup()}});b.addHandler(b._minimizeButton,"click.jqxToolbar"+c,function(d){d.stopPropagation();b._openMinimizePopup()});b.addHandler(a(".jqx-popup"),"click.jqxToolbar"+c,function(d){if(!a(d.target).hasClass("jqx-window-content")){d.stopPropagation()}})},_removeHandlers:function(){var b=this;var c=b.element.id;b.removeHandler(a(document),"click.jqxToolbar"+c);b.removeHandler(b._minimizeButton,"click.jqxToolbar"+c);b.removeHandler(a(".jqx-popup"),"click.jqxToolbar"+c)},_setSize:function(){var b=this;b.host.width(b.width);b.host.height(b.height);if(b.minWidth){b.host.css("min-width",b.minWidth)}if(b.maxWidth){b.host.css("max-width",b.maxWidth)}},_createTools:function(){var c=this;var d=c.tools.split(" ");var e=a.trim(c.tools.replace(/\|/g,""));e=e.replace(/\s+/g," ");e=e.split(" ");c._toolWidgets=new Array();var b=0;a.each(e,function(j,m){if(e[j]!==d[j+b]){b++}var l=j+b;var h;if(c._toolWidgets[j-1]){h=c._toolWidgets[j-1].tool}var k=d[l];var g=d[l-1];var i=d[l+1];var f=c.initTools;var n=c._initializeTool(j,k,h,g,i,f,true);c._toolWidgets.push(n)});c._minimizePopup.css({display:"none",visibility:"visible"})},_initializeTool:function(k,h,d,p,q,f,n){var m=this,e,o;var g=m._initializeWidget(h,e,o,d);e=g.tool;o=g.menuTool;var c=true;e.addClass(m.toThemeProperty("jqx-toolbar-tool"));if(m.rtl===true){e.addClass(m.toThemeProperty("jqx-toolbar-tool-rtl"))}if(m.initTools){var t;if(n===true){t=m.initTools(h,k,e,false)}else{t=f(h,e,false)}if(!t||(t.minimizable!==false&&t.menuTool!==false)){if(n===true){m.initTools(h,k,o,true)}else{f(h,o,true)}o.addClass(m.toThemeProperty("jqx-toolbar-tool-minimized"))}else{if(h!=="custom"){o[m._toolToWidgetMapping[h]]("destroy")}else{o.remove()}if(t.minimizable===false){c=false}o=false}}var b=false;var u=e;if(o){u=u.add(o);o.css("display","none")}var l;var j=m.rtl?"rtl":"ltr";var s=["button","toggleButton","repeatButton","linkButton"];var r={button:"jqxButton",toggleButton:"jqxToggleButton",repeatButton:"jqxRepeatButton",linkButton:"jqxRepeatButton"};if(q==="|"){b=true;u.addClass(m.toThemeProperty("jqx-toolbar-tool-separator-"+j));if(o){l=a('<div class="'+m.toThemeProperty("jqx-fill-state-pressed jqx-toolbar-minimized-popup-separator")+'"></div>');m._minimizePopup.append(l)}}else{if(s.indexOf(h)===-1||(s.indexOf(h)!==-1&&s.indexOf(q)===-1)){u.addClass(m.toThemeProperty("jqx-toolbar-tool-no-separator-"+j))}}if(s.indexOf(p)===-1&&s.indexOf(h)!==-1&&s.indexOf(q)!==-1){if(m.rtl===false){u[r[h]]({roundedCorners:"left"})}else{u[r[h]]({roundedCorners:"right"});u.css("border-left-width",0)}}else{if(s.indexOf(p)!==-1&&s.indexOf(h)!==-1&&s.indexOf(q)!==-1){u.addClass(m.toThemeProperty("jqx-toolbar-tool-inner-button"));u.css("border-left-width",0)}else{if(s.indexOf(p)!==-1&&s.indexOf(h)!==-1&&s.indexOf(q)===-1){if(m.rtl===false){u[r[h]]({roundedCorners:"right"});u.css("border-left-width",0)}else{u[r[h]]({roundedCorners:"left"})}}}}if(a.jqx.browser.msie&&a.jqx.browser.version<8&&h==="combobox"){u.find(".jqx-combobox-arrow-normal").width(18)}var i={type:h,tool:e,separatorAfterWidget:b,minimizable:c,minimized:false,menuTool:o,menuSeparator:l};return i},_initializeWidget:function(f,e,d,h){var g=this;function c(){d=e.clone();if(h){h.after(e);g._minimizePopup.append(d)}else{g.host.prepend(e);g._minimizePopup.prepend(d)}}if(f!=="custom"&&g.host[g._toolToWidgetMapping[f]]===undefined){var b=g._toolToWidgetMapping[f].toLowerCase();throw new Error("jqxToolBar: Missing reference to "+b+".js")}switch(f){case"button":case"toggleButton":e=a("<button></button>");c();e.add(d)[g._toolToWidgetMapping[f]]({theme:g.theme,height:g.host.height(),disabled:g.disabled,rtl:g.rtl});break;case"dropdownlist":case"combobox":e=a("<div></div>");c();e.add(d)[g._toolToWidgetMapping[f]]({theme:g.theme,autoDropDownHeight:true,height:g.host.height()-2,disabled:g.disabled,rtl:g.rtl});break;case"input":e=a('<input type="text" />');c();e.add(d).jqxInput({theme:g.theme,height:g.host.height()-2,disabled:g.disabled,rtl:g.rtl});break;case"custom":e=a("<div></div>");c();break}return{tool:e,menuTool:d}},_appendMinimizeButton:function(){var b=this;b._minimizedTools=0;b._minimizeButton=a('<div class="'+b.toThemeProperty("jqx-menu-minimized-button jqx-toolbar-minimized-button")+'"></div>');b._minimizePopup=a('<div id="'+b.element.id+'Popup" class="'+b.toThemeProperty("jqx-popup jqx-fill-state-normal jqx-rc-b jqx-toolbar-minimized-popup")+'"></div>');if(b.rtl===true){b._minimizeButton.addClass(b.toThemeProperty("jqx-toolbar-minimized-button-rtl"));b._minimizePopup.addClass(b.toThemeProperty("jqx-toolbar-minimized-popup-rtl"))}b.host.append(b._minimizeButton);a("body").append(b._minimizePopup);b._isOpen=false;b._minimizePopup.width(b.minimizeWidth)},_openMinimizePopup:function(){var c=this;if(c._isOpen===false){var b=c.host.offset();var e=b.left;if(c.rtl===false){e+=c.host.outerWidth()-c._minimizePopup.outerWidth()}var d=b.top+c.host.outerHeight()-1;c._minimizePopup.css({left:e,top:d});c._minimizePopup.slideDown("fast");c._isOpen=true;c._raiseEvent("0")}else{c._minimizePopup.slideUp("fast");c._isOpen=false;c._raiseEvent("1")}},_minimize:function(){var g=this,e=0;if(g._minimizedTools>0){e=g._minimizeButton.outerWidth()+parseInt(g._minimizeButton.css("margin-left"),10)}var c=g.host.width()-parseInt(g.host.css("padding-left"),10)-parseInt(g.host.css("padding-right"),10)-e;if(c<0){return}var b=0;var d;for(var f=0;f<g._toolWidgets.length;f++){if(g._toolWidgets[f].minimized===false){var h=g._toolWidgets[f].tool.outerWidth(true);b+=h}else{if(d===undefined){d=g._toolWidgets[f].tool.outerWidth(true)}}}if(b>c){g._minimizeTool(true);g._minimize()}else{if(d!==undefined&&(b+d)<c){g._minimizeTool(false);g._minimize()}}},_minimizeTool:function(g){var e=this,b,f;if(g===true){for(var d=e._toolWidgets.length-1;d>=0;d--){b=e._toolWidgets[d];if(b.minimizable===false){continue}if(b.minimized===false){f=e._getToolValue(b.tool,b.type);b.tool[0].style.display="none";if(b.menuTool){b.menuTool.show();e._setToolValue(f,b.menuTool,b.type)}if(b.menuSeparator){b.menuSeparator.show()}e._toolWidgets[d].minimized=true;e._minimizedTools++;if(e._minimizedTools===1){e._minimizeButton.show()}break}}}else{for(var c=0;c<e._toolWidgets.length;c++){b=e._toolWidgets[c];if(b.minimized===true){if(b.menuTool){f=e._getToolValue(b.menuTool,b.type);b.menuTool.hide()}if(b.menuSeparator){b.menuSeparator.hide()}b.tool.show();if(b.menuTool){e._setToolValue(f,b.tool,b.type)}e._toolWidgets[c].minimized=false;e._minimizedTools--;if(e._minimizedTools===0){e._minimizeButton.hide()}break}}}},_getToolValue:function(b,c){var d;switch(c){case"button":case"custom":d=undefined;break;case"toggleButton":var e=b.hasClass("jqx-fill-state-pressed");d={text:b.text(),toggled:e};break;case"dropdownlist":case"combobox":d=b[this._toolToWidgetMapping[c]]("getSelectedIndex");break;case"input":d=b.val();break}return d},_setToolValue:function(d,b,c){if(d!==undefined){switch(c){case"button":case"custom":break;case"toggleButton":b.text(d.text);var e=b.hasClass("jqx-fill-state-pressed");if(e!==d.toggled){b.jqxToggleButton("toggle")}break;case"dropdownlist":case"combobox":d=b[this._toolToWidgetMapping[c]]("selectIndex",d);break;case"input":b.val(d);break}}},_restoreChanges:function(){var b=this;a.each(b._toolChanges,function(c,d){if(d.action==="addTool"){b.addTool(d.type,d.position,d.separator,d.initCallback)}else{if(d.action==="destroyTool"){b._destroyTool(d.index)}else{if(d.action==="disableTool"){b.disableTool(d.index,d.disable)}}}})},_getBothTools:function(b){var c=b.tool;if(b.menuTool){c=c.add(b.menuTool)}return c}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtooltip.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtooltip.js
new file mode 100644 (file)
index 0000000..6f4d12a
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxTooltip","",{});a.extend(a.jqx._jqxTooltip.prototype,{defineInstance:function(){var b={width:"auto",height:"auto",position:"default",enableBrowserBoundsDetection:true,content:"",left:0,top:0,absolutePositionX:0,absolutePositionY:0,trigger:"hover",showDelay:100,autoHide:true,autoHideDelay:3000,closeOnClick:true,disabled:false,animationShowDelay:200,animationHideDelay:"fast",showArrow:true,name:"",opacity:0.9,rtl:false,_isOpen:false,opening:null,value:null,_eventsMap:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend")},events:["open","close","opening","closing"]};a.extend(true,this,b);return b},createInstance:function(d){this._isTouchDevice=a.jqx.mobile.isTouchDevice();var f=a.data(document.body,"_tooltipIDArray"+this.name);if(!f){this.ID_Array=new Array();a.data(document.body,"_tooltipIDArray"+this.name,this.ID_Array)}else{this.ID_Array=f}var e=this._generatekey();var c="jqxtooltip"+e;this.ID_Array.push({tooltipID:c,tooltipHost:this.host});var b=a('<div id="'+c+'"><div id ="'+c+'Main"><div id="'+c+'Text"></div></div><div id="'+c+'Arrow"></div></div>');if(a.jqx.browser.msie){b.addClass(this.toThemeProperty("jqx-noshadow"))}a("body").append(b);this._setTheme();var g=a("#"+c);g.css("visibility","hidden");g.css("display","none");g.css("opacity",0);g.css("z-index",99999);if(this.showArrow==false){a("#"+c+"Arrow").css("visibility","hidden");a("#"+c+"Arrow").css("display","none")}this._setSize();this._setContent();if(this.disabled==false){this._trigger();if(this.closeOnClick==true){this._clickHide()}}},open:function(){if(arguments){if(arguments.length){if(arguments.length==2){this.position="absolute";this.left=arguments[0];this.top=arguments[1];this.absolutePositionX=arguments[0];this.absolutePositionY=arguments[1]}}}if(this.disabled==false&&this._id()!="removed"){if(this.position=="mouse"||this.position=="mouseenter"){var b=this.position;this.position="default";this._raiseEvent("2");this._setPosition();this._animateShow();this.position=b}else{this._raiseEvent("2");this._setPosition();this._animateShow()}}},close:function(c){var e=this;if(typeof(c)==="object"&&a.isEmptyObject(c)){c=this.animationHideDelay}var b=new Number(a(this._id()).css("opacity")).toFixed(2);var d=function(){clearTimeout(e.autoHideTimeout);e._raiseEvent("3");a(e._id()).animate({opacity:0},c,function(){a(e._id()).css("visibility","hidden");a(e._id()).css("display","none");e._raiseEvent("1");e._isOpen=false})};if(this._isOpen==false&&b!=0){a(e._id()).stop();d();return}if(this._isOpen==true&&b==this.opacity){d()}},destroy:function(){var c=this.ID_Array.length;this._removeHandlers();a(this._id()).remove();for(var b=0;b<c;b++){if(this.ID_Array[b].tooltipHost===this.host){this.ID_Array.splice(b,1);break}}a(this.element).removeData("jqxTooltip")},refresh:function(d){if(d==true){return}if(this.rtl){a(this._id()+"Text").addClass(this.toThemeProperty("jqx-rtl"));a(this._id()+"Text").css({direction:"rtl"})}var c=this;var b=new Number(a(this._id()).css("opacity")).toFixed(2);if(this._id()!="removed"){if(this.disabled==true&&this._isOpen==true&&b==this.opacity){clearTimeout(this.autoHideTimeout);a(this._id()).stop();a(this._id()).animate({opacity:0},this.animationHideDelay,function(){a(c._id()).css("visibility","hidden");a(c._id()).css("display","none");c._isOpen=false})}this._setTheme();this._setContent();this._setSize();if(this.position!="mouse"&&this.position!="mouseenter"){this._setPosition()}this._removeHandlers();if(this.disabled==false){this._trigger();if(this.closeOnClick==true){this._clickHide()}}}},propertyChangedHandler:function(b,c,e,d){if(c=="content"){this.changeContentFlag=true}b.refresh()},_raiseEvent:function(g,e){var c=this.events[g];var f=new a.Event(c);f.owner=this;f.args=e;try{var b=this.host.trigger(f)}catch(d){}return b},_generatekey:function(){var b=function(){return(((1+Math.random())*65536)|0).toString(16).substring(1)};return(b()+b())},_id:function(){var b,c;var e=this.ID_Array.length;for(var d=0;d<e;d++){if(this.ID_Array[d].tooltipHost===this.host){b=this.ID_Array[d].tooltipID;c="#"+b;break}}if(c==undefined){c="removed"}return c},_setPosition:function(f){if((this._isOpen==false&&a(this._id()).css("opacity")==0)||this.changeContentFlag==true){if(!f&&(this.position=="mouse"||this.position=="mouseenter")){return}a(this._id()).css("display","block");this.changeContentFlag=false;this.documentTop=a(document).scrollTop();this.documentLeft=a(document).scrollLeft();this.windowWidth=a(window).width();this.windowHeight=a(window).height();this.host_width=this.host.outerWidth();this.host_height=this.host.outerHeight();this.tooltip_width=a(this._id()).width();this.tooltip_height=a(this._id()).height();this.host_offset=this.host.offset();this.tooltip_offset=a(this._id()).offset();this.default_offset=30;this.offset_horizontal=parseInt(this.left);this.offset_vertical=parseInt(this.top);var d=a(this._id()+"Arrow");var g=a(this._id()+"Main");this.arrow_size=5;this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset;switch(this.position){case"top":this.tooltip_offset.left=this.host_offset.left+this.host_width/2-this.tooltip_width/2+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"bottom":this.tooltip_offset.left=this.host_offset.left+this.host_width/2-this.tooltip_width/2+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"left":this.tooltip_offset.left=-1+this.host_offset.left-this.tooltip_width-this.arrow_size+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height/2-this.tooltip_height/2+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px 0px "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=1+this.tooltip_main_offset.left+g.width();this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"right":this.tooltip_offset.left=this.host_offset.left+this.host_width+this.arrow_size+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height/2-this.tooltip_height/2+this.offset_vertical;this.tooltip_offset.top=parseInt(this.tooltip_offset.top);this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px "+this.arrow_size+"px 0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=(this.tooltip_main_offset.left-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"top-left":this.tooltip_offset.left=this.host_offset.left+this.default_offset-this.tooltip_width+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+g.width()-6*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"bottom-left":this.tooltip_offset.left=this.host_offset.left+this.default_offset-this.tooltip_width+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+g.width()-6*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"top-right":this.tooltip_offset.left=this.host_offset.left+this.host_width-this.default_offset+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+4*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"bottom-right":this.tooltip_offset.left=this.host_offset.left+this.host_width-this.default_offset+this.offset_horizontal;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size+this.offset_vertical;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+4*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break;case"absolute":a(this._id()).offset({top:this.absolutePositionY,left:this.absolutePositionX});d.css({"border-width":"0px"});break;case"mouse":var e=this;if(this._isTouchDevice==false){switch(this.trigger){case"hover":if(this.mouseHoverTimeout){clearTimeout(this.mouseHoverTimeout)}this.mouseHoverTimeout=setTimeout(function(){e.tooltip_offset.left=f.pageX+10;e.tooltip_offset.top=f.pageY+10;e._detectBrowserBounds()},this.showDelay);break;case"click":this.tooltip_offset.left=f.pageX+10;this.tooltip_offset.top=f.pageY+10;this._detectBrowserBounds();break}}else{var b=f.pageX;var i=f.pageY;if(f.originalEvent){var h=null;if(f.originalEvent.touches&&f.originalEvent.touches.length){var h=f.originalEvent.touches[0]}else{if(f.originalEvent.changedTouches&&f.originalEvent.changedTouches.length){var h=f.originalEvent.changedTouches[0]}}if(h!=undefined){b=h.pageX;i=h.pageY}}this.tooltip_offset.left=b+10;this.tooltip_offset.top=i+10;this._detectBrowserBounds()}d.css({"border-width":"0px"});break;case"mouseenter":var c={top:f.pageY,left:f.pageX};if((c.top<(this.host_offset.top+10))&&(c.top>(this.host_offset.top-10))){this.tooltip_offset.left=c.left-this.tooltip_width/2;this.tooltip_offset.top=this.host_offset.top-this.tooltip_height-this.arrow_size;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px  0px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+g.height();d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}else{if((c.top<((this.host_offset.top+this.host_height)+10))&&(c.top>((this.host_offset.top+this.host_height)-10))){this.tooltip_offset.left=c.left-this.tooltip_width/2;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+((g.width())/2-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}else{if((c.left<(this.host_offset.left+10))&&(c.left>(this.host_offset.left-10))){this.tooltip_offset.left=this.host_offset.left-this.tooltip_width-this.arrow_size;this.tooltip_offset.top=c.top-this.tooltip_height/2;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px 0px "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+g.width();this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}else{if((c.left<(this.host_offset.left+this.host_width+10))&&(c.left>(this.host_offset.left+this.host_width-10))){this.tooltip_offset.left=this.host_offset.left+this.host_width+this.arrow_size;this.tooltip_offset.top=c.top-this.tooltip_height/2;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.css({"border-width":this.arrow_size+"px "+this.arrow_size+"px "+this.arrow_size+"px 0px"});this.tooltip_main_offset=g.offset();this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=(this.tooltip_main_offset.left-this.arrow_size);this.tooltip_arrow_offset.top=this.tooltip_main_offset.top+(g.height())/2-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left})}}}}break;case"default":this.tooltip_offset.left=this.host_offset.left+this.host_width-this.default_offset;this.tooltip_offset.top=this.host_offset.top+this.host_height+this.arrow_size;this._detectBrowserBounds();this.tooltip_main_offset=g.offset();d.removeClass(this.toThemeProperty("jqx-tooltip-arrow-l-r"));d.addClass(this.toThemeProperty("jqx-tooltip-arrow-t-b"));d.css({"border-width":"0 "+this.arrow_size+"px "+this.arrow_size+"px"});this.tooltip_arrow_offset=d.offset();this.tooltip_arrow_offset.left=this.tooltip_main_offset.left+4*this.arrow_size;this.tooltip_arrow_offset.top=this.tooltip_main_offset.top-this.arrow_size;d.offset({top:this.tooltip_arrow_offset.top,left:this.tooltip_arrow_offset.left});break}}},_setContent:function(){a(this._id()+"Text").html(this.content)},opened:function(){return this._isOpen&&this.host.css("display")=="block"&&this.host.css("visibility")=="visible"},_animateShow:function(){this._closeAll();clearTimeout(this.autoHideTimeout);var b=new Number(a(this._id()).css("opacity")).toFixed(2);if(this._isOpen==false&&b==0){var c=this;var e=a(this._id());e.css("visibility","visible");e.css("display","block");e.stop();e.css("opacity",0);if(this.opening){var d=this.opening(this);if(d===false){return}}e.animate({opacity:this.opacity},this.animationShowDelay,function(){c._raiseEvent("0");c._isOpen=true;var f=a.data(document.body,"_openedTooltip"+c.name);c.openedTooltip=c;a.data(document.body,"_openedTooltip"+c.name,c);if(c.autoHideTimeout){clearTimeout(c.autoHideTimeout)}if(c.autoHideDelay>0&&c.autoHide===true){c.autoHideTimeout=setTimeout(function(){c._autoHide()},c.autoHideDelay)}})}},_trigger:function(){if(this._id()!="removed"){this._enterFlag;this._leaveFlag;var b=this;if(this._isTouchDevice==false){switch(this.trigger){case"hover":if(this.position=="mouse"){this.addHandler(this.host,"mousemove.tooltip",function(c){if(b._enterFlag==1){b._raiseEvent("2");b._setPosition(c);clearTimeout(b.hoverShowTimeout);b.hoverShowTimeout=setTimeout(function(){b._animateShow();b._enterFlag=0},b.showDelay)}});this.addHandler(this.host,"mouseenter.tooltip",function(){if(b._leaveFlag!=0){b._enterFlag=1}});this.addHandler(this.host,"mouseleave.tooltip",function(e){b._leaveFlag=1;clearTimeout(b.hoverShowTimeout);var f=a(b._id()).offset();var d=a(b._id()).width();var c=a(b._id()).height();if(parseInt(e.pageX)<parseInt(f.left)||parseInt(e.pageX)>parseInt(f.left)+d){b.close()}if(parseInt(e.pageY)<parseInt(f.top)||parseInt(e.pageY)>parseInt(f.top)+c){b.close()}});this.addHandler(a(this._id()),"mouseleave.tooltip",function(c){b._checkBoundariesAuto(c);if(b._clickFlag!=0&&b._autoFlag!=0){b._leaveFlag=0}else{b._leaveFlag=1;b.close()}})}else{this.addHandler(this.host,"mouseenter.tooltip",function(c){clearTimeout(b.hoverShowTimeout);b.hoverShowTimeout=setTimeout(function(){b._raiseEvent("2");b._setPosition(c);b._animateShow()},b.showDelay)});this.addHandler(this.host,"mouseleave.tooltip",function(f){b._leaveFlag=1;clearTimeout(b.hoverShowTimeout);if(b.autoHide){var d=f.pageX;var j=f.pageY;var g=a(b._id()).offset();var i=g.left;var h=g.top;var e=a(b._id()).width();var c=a(b._id()).height();if(parseInt(d)<parseInt(i)||parseInt(d)>parseInt(i)+e||parseInt(j)<parseInt(h)||parseInt(j)>parseInt(h)+c){b.close()}}});this.addHandler(a(this._id()),"mouseleave.tooltip",function(c){b._checkBoundariesAuto(c);if(b._clickFlag!=0&&b._autoFlag!=0){b._leaveFlag=0}else{b._leaveFlag=1;if(b.autoHide){b.close()}}})}break;case"click":this.addHandler(this.host,"click.tooltip",function(c){if(b.position=="mouseenter"){b.position="mouse"}b._raiseEvent("2");b._setPosition(c);b._animateShow()});break;case"none":break}}else{if(this.trigger!="none"){this.addHandler(this.host,"touchstart.tooltip",function(c){if(b.position=="mouseenter"){b.position="mouse"}b._raiseEvent("2");b._setPosition(c);b._animateShow()})}}}},_autoHide:function(){var c=this;var b=new Number(a(this._id()).css("opacity")).toFixed(2);if(this.autoHide==true&&this._isOpen==true&&b>=this.opacity){c._raiseEvent("3");a(c._id()).animate({opacity:0},c.animationHideDelay,function(){a(c._id()).css("visibility","hidden");a(c._id()).css("display","none");c._raiseEvent("1");c._isOpen=false})}},_clickHide:function(){var b=this;this.addHandler(a(this._id()),"click.tooltip",function(c){b._checkBoundariesClick(c);b.close()})},_setSize:function(){a(this._id()).css({width:this.width,height:this.height})},resize:function(){this._setSize()},_setTheme:function(){var e=this._id();var d=a(e+"Main");var c=a(e+"Text");var b=a(e+"Arrow");d.addClass(this.toThemeProperty("jqx-widget"));c.addClass(this.toThemeProperty("jqx-widget"));b.addClass(this.toThemeProperty("jqx-widget"));d.addClass(this.toThemeProperty("jqx-fill-state-normal"));c.addClass(this.toThemeProperty("jqx-fill-state-normal"));b.addClass(this.toThemeProperty("jqx-fill-state-normal"));a(e).addClass(this.toThemeProperty("jqx-tooltip"));a(e).addClass(this.toThemeProperty("jqx-popup"));d.addClass(this.toThemeProperty("jqx-tooltip-main"));c.addClass(this.toThemeProperty("jqx-tooltip-text"));b.addClass(this.toThemeProperty("jqx-tooltip-arrow"))},_initialPosition:function(){var b=this.position;this.position="default";this._setPosition();this.position=b},_detectBrowserBounds:function(){var b=this._id();if(this.enableBrowserBoundsDetection){if(this.tooltip_offset.top<this.documentTop&&this.tooltip_offset.left<0){a(b).offset({top:this.documentTop,left:this.documentLeft})}else{if(this.tooltip_offset.top<this.documentTop&&(this.tooltip_offset.left+this.tooltip_width)>this.windowWidth+this.documentLeft){a(b).offset({top:this.documentTop,left:(this.windowWidth+this.documentLeft-this.tooltip_width)})}else{if(this.tooltip_offset.top<this.documentTop){a(b).offset({top:this.documentTop,left:this.tooltip_offset.left})}else{if((this.tooltip_offset.top+this.tooltip_height)>(this.windowHeight+this.documentTop)&&this.tooltip_offset.left<0){a(b).offset({top:(this.windowHeight+this.documentTop-this.tooltip_height),left:this.documentLeft})}else{if((this.tooltip_offset.top+this.tooltip_height)>(this.windowHeight+this.documentTop)&&(this.tooltip_offset.left+this.tooltip_width)>this.windowWidth+this.documentLeft){a(b).offset({top:(this.windowHeight+this.documentTop-this.tooltip_height),left:(this.windowWidth+this.documentLeft-this.tooltip_width)})}else{if((this.tooltip_offset.top+this.tooltip_height)>(this.windowHeight+this.documentTop)){a(b).offset({top:(this.windowHeight+this.documentTop-this.tooltip_height),left:this.tooltip_offset.left})}else{if(this.tooltip_offset.left<0){a(b).offset({top:this.tooltip_offset.top,left:this.documentLeft})}else{if((this.tooltip_offset.left+this.tooltip_width)>this.windowWidth+this.documentLeft){a(b).offset({top:this.tooltip_offset.top,left:(this.windowWidth+this.documentLeft-this.tooltip_width)})}else{a(b).offset({top:this.tooltip_offset.top,left:this.tooltip_offset.left})}}}}}}}}}else{a(b).offset({top:this.tooltip_offset.top,left:this.tooltip_offset.left})}},_checkBoundaries:function(b){if(b.pageX>=this.host_offset.left&&b.pageX<=(this.host_offset.left+this.host_width)&&b.pageY>=this.host_offset.top&&b.pageY<=(this.host_offset.top+this.host_height)){return true}else{return false}},_checkBoundariesClick:function(b){if(this._checkBoundaries(b)){this._clickFlag=1}else{this._clickFlag=0}},_checkBoundariesAuto:function(b){if(this._checkBoundaries(b)){this._autoFlag=1}else{this._autoFlag=0}},_removeHandlers:function(){this.removeHandler(this.host,"mouseenter.tooltip");this.removeHandler(this.host,"mousemove.tooltip");this.removeHandler(this.host,"mouseleave.tooltip");this.removeHandler(this.host,"click.tooltip");this.removeHandler(this.host,"touchstart.tooltip");this.removeHandler(a(this._id()),"click.tooltip");this.removeHandler(a(this._id()),"mouseleave.tooltip")},_closeAll:function(){var d=this.ID_Array.length;for(var c=0;c<d;c++){var b="#"+this.ID_Array[c].tooltipID;if(b!=this._id()){a(b).css({opacity:0,visibility:"hidden",display:"none"});this._isOpen=false}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtouch.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtouch.js
new file mode 100644 (file)
index 0000000..5dcd50f
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(b){var a=0;b.jqx.jqxWidget("jqxTouch","",{});b.extend(b.jqx._jqxTouch.prototype,{defineInstance:function(){this.swipeMin=50;this.swipeMax=500;this.swipeDelay=1000;this.tapHoldDelay=750;this.swipeMaxVerticalDisance=100;this.swipeMaxHorizontalDisance=100;this.orientationChangeEnabled=true;this._eventsMap={mousedown:b.jqx.mobile.getTouchEventName("touchstart"),mouseup:b.jqx.mobile.getTouchEventName("touchend"),mousemove:b.jqx.mobile.getTouchEventName("touchmove")};this._swipeLocked=false;this._rotationInterval=200;this._events=["tap","taphold","swipe","swipeleft","swiperight","swipetop","swipebottom","orientationchange"];this._instanceId=-1},createInstance:function(){a+=1;this._instanceId=a;this._isTouchDevice=b.jqx.mobile.isTouchDevice();this._defineRotateHandler()},refresh:function(){this._removeEventListeners();this._addEventListeners()},_defineRotateHandler:function(){var c=this;if(!this._rotateHandler){this._rotateHandler=function(){c._checkOrientation()}}},_getEvent:function(c){if(this._isTouchDevice){c=this._eventsMap[c]}return c+this._getEventNamespace()},_getEventNamespace:function(){return".swipe"+this._instanceId},_removeEventListeners:function(){clearInterval(this._rotateInterval);this.removeHandler(b(document),this._getEvent("mouseup"));this.removeHandler(this.host,this._getEvent("mousedown"));this.removeHandler(this.host,this._getEvent("mousemove"));if(window.removeEventListener){window.removeEventListener("resize",this._rotateHandler);window.removeEventListener("orientationchange",this._rotateHandler)}},_addEventListeners:function(){var c=this;this.addHandler(this.host,this._getEvent("mouseup"),function(d){c._resetSwipe();c._resetTap()});this.addHandler(this.host,this._getEvent("mousedown"),function(d){c._initSwipe(d);c._initTap(d)});this.addHandler(this.host,this._getEvent("mousemove"),function(d){c._maxSwipeVerticalDistance=Math.max(c._maxSwipeVerticalDistance,Math.abs(c._startY-c._getCoordinates(d).y));c._maxSwipeHorizontalDistance=Math.max(c._maxSwipeHorizontalDistance,Math.abs(c._startX-c._getCoordinates(d).x));c._mouseMoved=true;return c._handleSwipeEvents(d)});this._rotationListeners()},_handleSwipeEvents:function(d){var c=true;if(this._mouseDown&&!this._tapHoldFired){c=this._handleVerticalSwipeEvents(d);c=this._handleHorizontalSwipeEvents(d)}this._lastPosition=this._getCoordinates(d);return c},_handleVerticalSwipeEvents:function(f){var d,c;d=this._getCoordinates(f).y;c=d-this._startY;if(this._maxSwipeHorizontalDistance<this.swipeMaxHorizontalDisance){return this._swiped(f,c,2)}return true},_handleHorizontalSwipeEvents:function(f){var d,c;d=this._getCoordinates(f).x;c=d-this._startX;if(this._maxSwipeVerticalDistance<this.swipeMaxVerticalDisance){return this._swiped(f,c)}return true},_swiped:function(f,d,c){c=c||0;if(Math.abs(d)>=this.swipeMin&&!this._swipeEvent&&!this._swipeLocked){this._swipeEvent=this._getSwipeEvent(d,c)}if(Math.abs(d)<=this.swipeMax){f.stopImmediatePropagation();return false}return true},_getSwipeEvent:function(e,d){var c;if(e<0){c={eventId:3+d,data:{target:this.host}}}else{c={eventId:4+d,data:{target:this.host}}}return c},_resetSwipe:function(){if(this._swipeEvent&&!this._swipeLocked){this._raiseEvent(2,this._swipeEvent.data);this._raiseEvent(this._swipeEvent.eventId,this._swipeEvent.data)}clearTimeout(this._swipeTimeout);this._mouseDown=false},_resetTap:function(){clearTimeout(this._tapHoldTimeout);if(!this._tapHoldFired&&!this._mouseMoved){this._raiseEvent(0,{target:this.host})}},_initTap:function(d){var c=this;this._mouseMoved=false;this._tapHoldFired=false;this._tapHoldTimeout=setTimeout(function(){if(!c._mouseMoved){c._raiseEvent(1,{target:this.host});c._tapHoldFired=true}},this.tapHoldDelay)},_initSwipe:function(d){var c=this;this._mouseDown=true;this._maxSwipeVerticalDistance=0;this._maxSwipeHorizontalDistance=0;this._startX=this._getCoordinates(d).x;this._startY=this._getCoordinates(d).y;this._swipeLocked=false;this._swipeEvent=null;this._swipeTimeout=setTimeout(function(){c._swipeLocked=true},this.swipeDelay)},_rotationListeners:function(){var c=this;this._previousOrientation=window.orientation;this._previousWidth=screen.width;if(this.orientationChangeEnabled){if(window.addEventListener){window.addEventListener("resize",this._rotateHandler,false);window.addEventListener("orientationchange",this._rotateHandler,false)}this._rotateInterval=setInterval(function(){c._checkOrientation()},this._rotationInterval)}},_checkOrientation:function(){var c="vertical";if(window.orientation!==this._previousOrientation||this._previousWidth!==screen.width){if(window.orientation===90||screen.width>screen.height){c="horizontal"}this._raiseEvent(7,{orientation:c})}this._previousOrientation=window.orientation;this._previousWidth=screen.width},_raiseEvent:function(d,c){var e=b.Event(this._events[d]);e.args=c;return this.host.trigger(e)},_getCoordinates:function(d){var f=b.jqx.position(d);f.x=f.left;f.y=f.top;return f},propertyChangedHandler:function(c,d,f,e){if(d==="orientationChangeEnabled"){this.refresh()}else{return}},isTouchDevice:function(){return this._isTouchDevice}})}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtree.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtree.js
new file mode 100644 (file)
index 0000000..bb95e8d
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxTree","",{});a.extend(a.jqx._jqxTree.prototype,{defineInstance:function(){var b={items:new Array(),width:null,height:null,easing:"easeInOutCirc",animationShowDuration:"fast",animationHideDuration:"fast",treeElements:new Array(),disabled:false,enableHover:true,keyboardNavigation:true,enableKeyboardNavigation:true,toggleMode:"dblclick",source:null,checkboxes:false,checkSize:13,toggleIndicatorSize:16,hasThreeStates:false,selectedItem:null,touchMode:"auto",allowDrag:true,allowDrop:true,searchMode:"startswithignorecase",incrementalSearch:true,incrementalSearchDelay:700,animationHideDelay:0,submitCheckedItems:false,dragStart:null,dragEnd:null,rtl:false,dropAction:"default",events:["expand","collapse","select","initialized","added","removed","checkChange","dragEnd","dragStart"],aria:{"aria-activedescendant":{name:"getActiveDescendant",type:"string"},"aria-disabled":{name:"disabled",type:"boolean"}}};a.extend(true,this,b);return b},createInstance:function(c){var b=this;this.host.attr("role","tree");this.host.attr("data-role","treeview");this.enableKeyboardNavigation=this.keyboardNavigation;this.propertyChangeMap.disabled=function(f,h,g,j){if(b.disabled){b.host.addClass(b.toThemeProperty("jqx-tree-disabled"))}else{b.host.removeClass(b.toThemeProperty("jqx-tree-disabled"))}a.jqx.aria(b,"aria-disabled",j)};if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.width!=null&&this.width.toString().indexOf("%")!=-1){this.host.width(this.width)}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){this.host.height(this.height)}if(!this.host.attr("tabindex")){this.host.attr("tabIndex",1)}if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-tree-disabled"));a.jqx.aria(this,"aria-disabled",true)}if(this.host.jqxDragDrop){jqxTreeDragDrop()}this.originalInnerHTML=this.element.innerHTML;this.createdTree=false;if(this.element.innerHTML.indexOf("UL")){var e=this.host.find("ul:first");if(e.length>0){this.createTree(e[0]);this.createdTree=true}}if(this.source!=null){var d=this.loadItems(this.source);this.element.innerHTML=d;var e=this.host.find("ul:first");if(e.length>0){this.createTree(e[0]);this.createdTree=true}}this._itemslength=this.items.length;if(!this.createdTree){if(this.host.find("ul").length==0){this.host.append(a("<ul></ul>"));var e=this.host.find("ul:first");if(e.length>0){this.createTree(e[0]);this.createdTree=true}this.createdTree=true}}if(this.createdTree==true){this._render();this._handleKeys()}this._updateCheckLayout()},checkItems:function(f,h){var e=this;if(f!=null){var d=0;var g=false;var b=0;var j=a(f.element).find("li");b=j.length;a.each(j,function(k){var l=e.itemMapping["id"+this.id].item;if(l.checked!=false){if(l.checked==null){g=true}d++}});if(f!=h){if(d==b){this.checkItem(f.element,true,"tree")}else{if(d>0){this.checkItem(f.element,null,"tree")}else{this.checkItem(f.element,false,"tree")}}}else{var c=h.checked;var j=a(h.element).find("li");a.each(j,function(){var k=e.itemMapping["id"+this.id].item;e.checkItem(this,c,"tree")})}this.checkItems(this._parentItem(f),h)}else{var c=h.checked;var j=a(h.element).find("li");a.each(j,function(){var k=e.itemMapping["id"+this.id].item;e.checkItem(this,c,"tree")})}},_getMatches:function(e,f){if(e==undefined||e.length==0){return -1}var c=this.items;var b=new Array();for(var d=0;d<c.length;d++){if(this._isVisible(c[d])&&!c[d].disabled){b.push(c[d])}}c=b;if(f!=undefined){c=c.slice(f)}var g=new Array();a.each(c,function(j){var k=this.label;if(!k){k=""}var h=a.jqx.string.startsWithIgnoreCase(k.toString(),e);if(h){g.push({id:this.id,element:this.element})}});return g},_handleKeys:function(){var b=this;this.addHandler(this.host,"keydown",function(d){var s=d.keyCode;if(b.keyboardNavigation||b.enableKeyboardNavigation){if(b.selectedItem!=null){var l=b.selectedItem.element;if(b.incrementalSearch&&(!(s>=33&&s<=40))){var t=-1;if(!b._searchString){b._searchString=""}if((s==8||s==46)&&b._searchString.length>=1){b._searchString=b._searchString.substr(0,b._searchString.length-1)}var h=String.fromCharCode(s);var o=(!isNaN(parseInt(h)));var n=false;if((s>=65&&s<=97)||o||s==8||s==32||s==46){if(!d.shiftKey){h=h.toLocaleLowerCase()}if(s!=8&&s!=32&&s!=46){if(!(b._searchString.length>0&&b._searchString.substr(0,1)==h)){b._searchString+=h}}if(s==32){b._searchString+=" "}b._searchTime=new Date();var r=b.selectedItem;if(r){var g=r.id;var m=-1;for(var k=0;k<b.items.length;k++){if(b.items[k].id==g){m=k+1;break}}var f=b._getMatches(b._searchString,m);if(f.length==0||(f.length>0&&f[0].id==g)){var f=b._getMatches(b._searchString)}}else{var f=b._getMatches(b._searchString)}if(f.length>0){var r=b.selectedItem;if(b.selectedItem&&b.selectedItem.id!=f[0].id){b.clearSelection();b.selectItem(f[0].element)}b._lastSearchString=b._searchString}}if(b._searchTimer!=undefined){clearTimeout(b._searchTimer)}if(s==27||s==13){b._searchString="";b._lastSearchString=""}b._searchTimer=setTimeout(function(){b._searchString="";b._lastSearchString=""},500);if(t>=0){return}if(n){return false}}switch(s){case 32:if(b.checkboxes){b.fromKey=true;var q=a(b.selectedItem.checkBoxElement).jqxCheckBox("checked");b.checkItem(b.selectedItem.element,!q,"tree");if(b.hasThreeStates){b.checkItems(b.selectedItem,b.selectedItem)}return false}return true;case 33:var j=b._getItemsOnPage();var p=b.selectedItem;for(var k=0;k<j;k++){p=b._prevVisibleItem(p)}if(p!=null){b.selectItem(p.element);b.ensureVisible(p.element)}else{b.selectItem(b._firstItem().element);b.ensureVisible(b._firstItem().element)}return false;case 34:var j=b._getItemsOnPage();var c=b.selectedItem;for(var k=0;k<j;k++){c=b._nextVisibleItem(c)}if(c!=null){b.selectItem(c.element);b.ensureVisible(c.element)}else{b.selectItem(b._lastItem().element);b.ensureVisible(b._lastItem().element)}return false;case 37:case 39:if((s==37&&!b.rtl)||(s==39&&b.rtl)){if(b.selectedItem.hasItems&&b.selectedItem.isExpanded){b.collapseItem(l)}else{var e=b._parentItem(b.selectedItem);if(e!=null){b.selectItem(e.element);b.ensureVisible(e.element)}}}if((s==39&&!b.rtl)||(s==37&&b.rtl)){if(b.selectedItem.hasItems){if(!b.selectedItem.isExpanded){b.expandItem(l)}else{var c=b._nextVisibleItem(b.selectedItem);if(c!=null){b.selectItem(c.element);b.ensureVisible(c.element)}}}}return false;case 13:if(b.selectedItem.hasItems){if(b.selectedItem.isExpanded){b.collapseItem(l)}else{b.expandItem(l)}}return false;case 36:b.selectItem(b._firstItem().element);b.ensureVisible(b._firstItem().element);return false;case 35:b.selectItem(b._lastItem().element);b.ensureVisible(b._lastItem().element);return false;case 38:var p=b._prevVisibleItem(b.selectedItem);if(p!=null){b.selectItem(p.element);b.ensureVisible(p.element)}return false;case 40:var c=b._nextVisibleItem(b.selectedItem);if(c!=null){b.selectItem(c.element);b.ensureVisible(c.element)}return false}}}})},_firstItem:function(){var d=null;var c=this;var f=this.host.find("ul:first");var e=a(f).find("li");for(i=0;i<=e.length-1;i++){var b=e[i];d=this.itemMapping["id"+b.id].item;if(c._isVisible(d)){return d}}return null},_lastItem:function(){var d=null;var c=this;var f=this.host.find("ul:first");var e=a(f).find("li");for(i=e.length-1;i>=0;i--){var b=e[i];d=this.itemMapping["id"+b.id].item;if(c._isVisible(d)){return d}}return null},_parentItem:function(d){if(d==null||d==undefined){return null}var c=d.parentElement;if(!c){return null}var b=null;a.each(this.items,function(){if(this.element==c){b=this;return false}});return b},_nextVisibleItem:function(c){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.nextItem;if(this._isVisible(b)&&!b.disabled){return b}}return null},_prevVisibleItem:function(c){if(c==null||c==undefined){return null}var b=c;while(b!=null){b=b.prevItem;if(this._isVisible(b)&&!b.disabled){return b}}return null},_isVisible:function(c){if(c==null||c==undefined){return false}if(!this._isElementVisible(c.element)){return false}var b=this._parentItem(c);if(b==null){return true}if(b!=null){if(!this._isElementVisible(b.element)){return false}if(b.isExpanded){while(b!=null){b=this._parentItem(b);if(b!=null&&!this._isElementVisible(b.element)){return false}if(b!=null&&!b.isExpanded){return false}}}else{return false}}return true},_getItemsOnPage:function(){var d=0;var c=this.panel.jqxPanel("getVScrollPosition");var b=parseInt(this.host.height());var f=0;var e=this._firstItem();if(parseInt(a(e.element).height())>0){while(f<=b){f+=parseInt(a(e.element).outerHeight());d++}}return d},_isElementVisible:function(b){if(b==null){return false}if(a(b).css("display")!="none"&&a(b).css("visibility")!="hidden"){return true}return false},refresh:function(c){if(this.width!=null&&this.width.toString().indexOf("px")!=-1){this.host.width(this.width)}else{if(this.width!=undefined&&!isNaN(this.width)){this.host.width(this.width)}}if(this.height!=null&&this.height.toString().indexOf("px")!=-1){this.host.height(this.height)}else{if(this.height!=undefined&&!isNaN(this.height)){this.host.height(this.height)}}if(this.panel){if(this.width!=null&&this.width.toString().indexOf("%")!=-1){var b=this;this.panel.jqxPanel("width","100%");b.removeHandler(a(window),"resize.jqxtree"+b.element.id);b.addHandler(a(window),"resize.jqxtree"+b.element.id,function(){b._calculateWidth()})}else{this.panel.jqxPanel("width",this.host.width())}this.panel.jqxPanel("_arrange")}this._calculateWidth();if(a.jqx.isHidden(this.host)){var b=this;if(this._hiddenTimer){clearInterval(this._hiddenTimer)}this._hiddenTimer=setInterval(function(){if(!a.jqx.isHidden(b.host)){clearInterval(b._hiddenTimer);b._calculateWidth()}},100)}if(c!=true){if(this.checkboxes){this._updateCheckLayout(null)}}},resize:function(c,b){this.width=c;this.height=b;this.refresh()},loadItems:function(c){if(c==null){return}var b=this;this.items=new Array();var d="<ul>";a.map(c,function(e){if(e==undefined){return null}d+=b._parseItem(e)});d+="</ul>";return d},_parseItem:function(m){var g="";if(m==undefined){return null}var k=m.label;if(!m.label&&m.html){k=m.html}if(!k){k="Item"}if(typeof m==="string"){k=m}var h=false;if(m.expanded!=undefined&&m.expanded){h=true}var f=false;if(m.locked!=undefined&&m.locked){f=true}var d=false;if(m.selected!=undefined&&m.selected){d=true}var e=false;if(m.disabled!=undefined&&m.disabled){e=true}var l=false;if(m.checked!=undefined&&m.checked){l=true}var j=m.icon;var c=m.iconsize;g+="<li";if(h){g+=' item-expanded="true" '}if(f){g+=' item-locked="true" '}if(e){g+=' item-disabled="true" '}if(d){g+=' item-selected="true" '}if(c){g+=' item-iconsize="'+m.iconsize+'" '}if(j!=null&&j!=undefined){g+=' item-icon="'+j+'" '}if(m.label&&!m.html){g+=' item-label="'+k+'" '}if(m.value!=null){g+=' item-value="'+m.value+'" '}if(m.checked!=undefined){g+=' item-checked="'+l+'" '}var b="";if(m.id!=undefined){b=m.id;g+=' id="'+b+'" '}else{b=this.createID();g+=' id="'+b+'" '}g+=">"+k;if(m.items){g+=this.loadItems(m.items)}if(!this._valueList){this._valueList=new Array()}this._valueList[b]=m.value;g+="</li>";return g},ensureVisible:function(d){if(d==null||d==undefined){return}var c=this.panel.jqxPanel("getVScrollPosition");var e=this.panel.jqxPanel("getHScrollPosition");var b=parseInt(this.host.height());var f=a(d).position().top;if(f<=c||f>=b+c){this.panel.jqxPanel("scrollTo",e,f-b+a(d).outerHeight())}},_syncItems:function(c){this._visibleItems=new Array();var b=this;a.each(c,function(){var e=a(this);if(e.css("display")!="none"){var d=e.outerHeight();if(e.height()>0){var f=parseInt(e.offset().top);b._visibleItems[b._visibleItems.length]={element:this,top:f,height:d,bottom:f+d}}}})},hitTest:function(h,g){var d=this;var b=this;var f=null;var e=this.host.find(".jqx-item");this._syncItems(e);if(b._visibleItems){var c=parseInt(b.host.offset().left);var j=b.host.outerWidth();a.each(b._visibleItems,function(l){if(h>=c&&h<c+j){if(this.top+5<g&&g<this.top+this.height){var k=a(this.element).parents("li:first");if(k.length>0){f=b.getItem(k[0]);if(f!=null){f.height=this.height;f.top=this.top;return false}}}}})}return f},addBefore:function(b,d,c){return this.addBeforeAfter(b,d,true,c)},addAfter:function(b,d,c){return this.addBeforeAfter(b,d,false,c)},addBeforeAfter:function(o,r,q,n){var l=this;var m=new Array();if(r&&r.treeInstance!=undefined){r=r.element}if(!a.isArray(o)){m[0]=o}else{m=o}var g="";var p=this;a.each(m,function(){g+=p._parseItem(this)});var b=a(g);if(l.element.innerHTML.indexOf("UL")){var h=l.host.find("ul:first")}if(r==undefined&&r==null){h.append(b)}else{if(q){a(r).before(b)}else{a(r).after(b)}}var d=b;for(var k=0;k<d.length;k++){this._createItem(d[k]);var c=a(d[k]).find("li");if(c.length>0){for(var f=0;f<c.length;f++){this._createItem(c[f])}}}var e=function(j){p._refreshMapping(false);p._updateItemsNavigation();if(j&&p.allowDrag&&p._enableDragDrop){p._enableDragDrop()}if(p.selectedItem!=null){a(p.selectedItem.titleElement).addClass(p.toThemeProperty("jqx-fill-state-pressed"));a(p.selectedItem.titleElement).addClass(p.toThemeProperty("jqx-tree-item-selected"))}};if(n==false){e(true);this._raiseEvent("4",{items:this.getItems()});return}e(false);p._render();this._raiseEvent("4",{items:this.getItems()});if(p.checkboxes){p._updateCheckLayout(null)}},addTo:function(q,s,p){var n=this;var o=new Array();if(s&&s.treeInstance!=undefined){s=s.element}if(!a.isArray(q)){o[0]=q}else{o=q}var k="";var r=this;a.each(o,function(){k+=r._parseItem(this)});var b=a(k);if(n.element.innerHTML.indexOf("UL")){var l=n.host.find("ul:first")}if(s==undefined&&s==null){l.append(b)}else{s=a(s);var e=s.find("ul:first");if(e.length==0){ulElement=a("<ul></ul>");a(s).append(ulElement);e=s.find("ul:first");var t=n.itemMapping["id"+s[0].id].item;t.subtreeElement=e[0];t.hasItems=true;e.addClass(n.toThemeProperty("jqx-tree-dropdown"));if(r.rtl){e.addClass(n.toThemeProperty("jqx-tree-dropdown-rtl"))}e.append(b);var h=e.find("li:first");t.parentElement=h}else{e.append(b)}}var d=b;for(var m=0;m<d.length;m++){this._createItem(d[m]);var c=a(d[m]).find("li");if(c.length>0){for(var g=0;g<c.length;g++){this._createItem(c[g])}}}var f=function(j){r._refreshMapping(false);r._updateItemsNavigation();if(j&&r.allowDrag&&r._enableDragDrop){r._enableDragDrop()}if(r.selectedItem!=null){a(r.selectedItem.titleElement).addClass(r.toThemeProperty("jqx-fill-state-pressed"));a(r.selectedItem.titleElement).addClass(r.toThemeProperty("jqx-tree-item-selected"))}};if(p==false){f(true);this._raiseEvent("4",{items:this.getItems()});return}f(false);r._render();if(r.checkboxes){r._updateCheckLayout(null)}this._raiseEvent("4",{items:this.getItems()})},updateItem:function(e,j){var h=e.treeInstance!=undefined?e:this.getItem(e);if(!h){var d=e;e=j;j=d;var h=e.treeInstance!=undefined?e:this.getItem(e)}if(h){if(typeof(j)==="string"){j={label:j}}if(j.value){h.value=j.value}if(j.label){h.label=j.label;a.jqx.utilities.html(a(h.titleElement),j.label);var b=a.jqx.browser.msie&&a.jqx.browser.version<8;if(b){a(document.body).append(this._measureItem);this._measureItem.html(a(h.titleElement).text());var g=this._measureItem.width();if(h.icon){g+=20}if(a(a(h.titleElement).find("img")).length>0){g+=20}a(h.titleElement).css("max-width",g+"px");this._measureItem.remove()}}if(j.icon){if(a(h.element).children(".itemicon").length>0){a(h.element).find(".itemicon")[0].src=j.icon}else{var c=j.iconsize;if(!c){c=16}var f=a('<img width="'+c+'" height="'+c+'" style="float: left;" class="itemicon" src="'+j.icon+'"/>');a(h.titleElement).prepend(f);f.css("margin-right","4px");if(this.rtl){f.css("margin-right","0px");f.css("margin-left","4px");f.css("float","right")}}}if(j.expanded){this.expandItem(h)}if(j.disabled){this.disableItem(h)}if(j.selected){this.selectItem(h)}return true}return false},removeItem:function(b,d){if(b==undefined||b==null){return}if(b.treeInstance!=undefined){b=b.element}var e=this;var h=b.id;var c=-1;var f=this.getItem(b);if(f){c=this.items.indexOf(f);if(c!=-1){(function g(p){var n=-1;n=this.items.indexOf(p);if(n!=-1){this.items.splice(n,1)}var k=a(p.element).find("li");var j=k.length;var o=this;var l=new Array();if(j>0){a.each(k,function(q){var r=o.itemMapping["id"+this.id].item;l.push(r)});for(var m=0;m<l.length;m++){g.apply(this,[l[m]])}}}).apply(this,[f])}}if(this.host.find("#"+b.id).length>0){a(b).remove()}if(d==false){this._raiseEvent("5");return}e._updateItemsNavigation();if(e.allowDrag&&e._enableDragDrop){e._render(true,false)}else{e._render()}if(e.selectedItem!=null){if(e.selectedItem.element==b){a(e.selectedItem.titleElement).removeClass(e.toThemeProperty("jqx-fill-state-pressed"));a(e.selectedItem.titleElement).removeClass(e.toThemeProperty("jqx-tree-item-selected"));e.selectedItem=null}}this._raiseEvent("5");if(e.checkboxes){e._updateCheckLayout(null)}},clear:function(){this.items=new Array();this.itemMapping=new Array();var b=this.host.find("ul:first");if(b.length>0){b[0].innerHTML=""}this.selectedItem=null},disableItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.disabled=true;a(d.titleElement).addClass(c.toThemeProperty("jqx-fill-state-disabled"));a(d.titleElement).addClass(c.toThemeProperty("jqx-tree-item-disabled"));if(c.checkboxes&&d.checkBoxElement){a(d.checkBoxElement).jqxCheckBox({disabled:true})}return false}})},_updateInputSelection:function(){if(this.input){if(this.selectedItem==null){this.input.val("")}else{var c=this.selectItem.value;if(c==null){c=this.selectedItem.label}this.input.val(c)}if(this.checkboxes){var b=this.getCheckedItems();if(this.submitCheckedItems){var f="";for(var d=0;d<b.length;d++){var e=b[d].value;if(e==null){e=b[d].label}if(d==b.length-1){f+=e}else{f+=e+","}}this.input.val(f)}}}},getCheckedItems:function(){var b=new Array();var c=this;a.each(c.items,function(){var d=this;if(d.checked){b.push(d)}});return b},getUncheckedItems:function(){var b=new Array();var c=this;a.each(c.items,function(){var d=this;if(!d.checked){b.push(d)}});return b},checkAll:function(){var b=this;a.each(b.items,function(){var c=this;if(!c.disabled){c.checked=true;a(c.checkBoxElement).jqxCheckBox("_setState",true)}});this._raiseEvent("6",{element:this,checked:true})},uncheckAll:function(){var b=this;a.each(b.items,function(){var c=this;if(!c.disabled){c.checked=false;a(c.checkBoxElement).jqxCheckBox("_setState",false)}});this._raiseEvent("6",{element:this,checked:false})},checkItem:function(d,f,b){if(d==null){return false}if(f===undefined){f=true}if(d.treeInstance!=undefined){d=d.element}var e=this;var c=false;var g=null;a.each(e.items,function(){var h=this;if(h.element==d&&!h.disabled){c=true;h.checked=f;g=h;a(h.checkBoxElement).jqxCheckBox({checked:f});return false}});if(c){this._raiseEvent("6",{element:d,checked:f});this._updateInputSelection()}if(b==undefined){if(g){if(this.hasThreeStates){this.checkItems(g,g)}}}},uncheckItem:function(b){this.checkItem(b,false)},enableItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.disabled=false;a(d.titleElement).removeClass(c.toThemeProperty("jqx-fill-state-disabled"));a(d.titleElement).removeClass(c.toThemeProperty("jqx-tree-item-disabled"));if(c.checkboxes&&d.checkBoxElement){a(d.checkBoxElement).jqxCheckBox({disabled:false})}return false}})},enableAll:function(){var b=this;a.each(b.items,function(){var c=this;c.disabled=false;a(c.titleElement).removeClass(b.toThemeProperty("jqx-tree-item-disabled"));a(c.titleElement).removeClass(b.toThemeProperty("jqx-fill-state-disabled"));if(b.checkboxes&&c.checkBoxElement){a(c.checkBoxElement).jqxCheckBox({disabled:false})}})},lockItem:function(b){if(b==null){return false}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.locked=true;return false}})},unlockItem:function(b){if(b==null){return false}var c=this;a.each(c.items,function(){var d=this;if(d.element==b){d.locked=false;return false}})},getItems:function(){return this.items},getItem:function(b){if(b==null||b==undefined){return null}if(this.itemMapping["id"+b.id]){var c=this.itemMapping["id"+b.id].item;return c}return null},isExpanded:function(b){if(b==null||b==undefined){return false}var c=this.itemMapping["id"+b.id].item;if(c!=null){return c.isExpanded}return false},isSelected:function(b){if(b==null||b==undefined){return false}var c=this.itemMapping["id"+b.id].item;if(c!=null){return c==this.selectedItem}return false},getPrevItem:function(c){var d=this.getItem(c);if(c.treeInstance!=undefined){d=c}var b=this._prevVisibleItem(d);return b},getNextItem:function(c){var d=this.getItem(c);if(c.treeInstance!=undefined){d=c}var b=this._nextVisibleItem(d);return b},getSelectedItem:function(b){return this.selectedItem},val:function(d){if(arguments.length==0||typeof(d)=="object"){return this.selectedItem}if(typeof d=="string"){var b=this.host.find("#"+d);if(b.length>0){var c=this.getItem(b[0]);this.selectItem(c)}}else{var c=this.getItem(d);this.selectItem(c)}},getActiveDescendant:function(){if(this.selectedItem){return this.selectedItem.element.id}return""},clearSelection:function(){this.selectItem(null)},selectItem:function(b){if(this.disabled){return}var c=this;if(b&&b.treeInstance!=undefined){b=b.element}if(b==null||b==undefined){if(c.selectedItem!=null){a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-fill-state-pressed"));a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-tree-item-selected"));c.selectedItem=null}return}if(this.selectedItem!=null&&this.selectedItem.element==b){return}var d=this.selectedItem!=null?this.selectedItem.element:null;if(d){a(d).removeAttr("aria-selected")}a.each(c.items,function(){var e=this;this.selected=false;if(!e.disabled){if(e.element==b){if(c.selectedItem==null||(c.selectedItem!=null&&c.selectedItem.titleElement!=e.titleElement)){if(c.selectedItem!=null){a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-fill-state-pressed"));a(c.selectedItem.titleElement).removeClass(c.toThemeProperty("jqx-tree-item-selected"))}a(e.titleElement).addClass(c.toThemeProperty("jqx-fill-state-pressed"));a(e.titleElement).addClass(c.toThemeProperty("jqx-tree-item-selected"));c.selectedItem=e;this.selected=true;a(e.element).attr("aria-selected","true");a.jqx.aria(c,"aria-activedescendant",e.element.id)}}}});this._updateInputSelection();this._raiseEvent("2",{element:b,prevElement:d})},collapseAll:function(){this.isUpdating=true;var d=this;var b=d.items;var c=this.animationHideDuration;this.animationHideDuration=0;a.each(b,function(){var e=this;if(e.isExpanded==true){d._collapseItem(d,e)}});setTimeout(function(){d.isUpdating=false;d._calculateWidth()},this.animationHideDuration);this.animationHideDuration=c},expandAll:function(){var c=this;this.isUpdating=true;var b=this.animationShowDuration;this.animationShowDuration=0;a.each(this.items,function(){var d=this;if(d.hasItems){c._expandItem(c,d)}});setTimeout(function(){c.isUpdating=false;c._calculateWidth()},this.animationShowDuration);this.animationShowDuration=b},collapseItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(this.items,function(){var d=this;if(d.isExpanded==true&&d.element==b){c._collapseItem(c,d);return false}});return true},expandItem:function(b){if(b==null){return false}if(b.treeInstance!=undefined){b=b.element}var c=this;a.each(c.items,function(){var d=this;if(d.isExpanded==false&&d.element==b&&!d.disabled&&!d.locked){c._expandItem(c,d);if(d.parentElement){c.expandItem(d.parentElement)}}});return true},_getClosedSubtreeOffset:function(c){var b=a(c.subtreeElement);var e=-b.outerHeight();var d=-b.outerWidth();d=0;return{left:d,top:e}},_collapseItem:function(g,k,d,b){if(g==null||k==null){return false}if(k.disabled){return false}if(g.disabled){return false}if(g.locked){return false}var e=a(k.subtreeElement);var l=this._getClosedSubtreeOffset(k);var h=l.top;var c=l.left;$treeElement=a(k.element);var f=g.animationHideDelay;f=0;if(e.data("timer").show!=null){clearTimeout(e.data("timer").show);e.data("timer").show=null}var j=function(){k.isExpanded=false;if(g.checkboxes){var n=e.find(".chkbox");n.stop();n.css("opacity",1);e.find(".chkbox").animate({opacity:0},50)}var m=a(k.arrow);g._arrowStyle(m,"",k.isExpanded);e.slideUp(g.animationHideDuration,function(){k.isCollapsing=false;g._calculateWidth();var o=a(k.arrow);g._arrowStyle(o,"",k.isExpanded);e.hide();g._raiseEvent("1",{element:k.element})})};if(f>0){e.data("timer").hide=setTimeout(function(){j()},f)}else{j()}},_expandItem:function(g,k){if(g==null||k==null){return false}if(k.isExpanded){return false}if(k.locked){return false}if(k.disabled){return false}if(g.disabled){return false}var e=a(k.subtreeElement);if((e.data("timer"))!=null&&e.data("timer").hide!=null){clearTimeout(e.data("timer").hide)}var j=a(k.element);var h=0;var d=0;if(parseInt(e.css("top"))==h){k.isExpanded=true;return}var c=a(k.arrow);g._arrowStyle(c,"",k.isExpanded);if(g.checkboxes){var f=e.find(".chkbox");f.stop();f.css("opacity",0);f.animate({opacity:1},g.animationShowDuration)}e.slideDown(g.animationShowDuration,g.easing,function(){var l=a(k.arrow);k.isExpanded=true;g._arrowStyle(l,"",k.isExpanded);k.isExpanding=false;g._raiseEvent("0",{element:k.element});g._calculateWidth()});if(g.checkboxes){g._updateCheckItemLayout(k);if(k.subtreeElement){var b=a(k.subtreeElement).find("li");a.each(b,function(){var l=g.getItem(this);if(l!=null){g._updateCheckItemLayout(l)}})}}},_calculateWidth:function(){var f=this;var g=this.checkboxes?20:0;var e=0;if(this.isUpdating){return}a.each(this.items,function(){var h=a(this.element).height();if(h!=0){var l=a(this.titleElement).outerWidth()+10+g+(1+this.level)*20;e=Math.max(e,l);if(this.hasItems){var j=parseInt(a(this.titleElement).css("padding-top"));if(isNaN(j)){j=0}j=j*2;j+=2;var k=(j+a(this.titleElement).height())/2-17/2;if(a.jqx.browser.msie&&a.jqx.browser.version<9){a(this.arrow).css("margin-top","3px")}else{if(parseInt(k)>=0){a(this.arrow).css("margin-top",parseInt(k)+"px")}}}}});if(this.toggleIndicatorSize>16){e=e+this.toggleIndicatorSize-16}if(f.panel){if(e>this.host.width()){var b=e-this.host.width();var d=f.panel.jqxPanel("vScrollBar").css("visibility")!=="hidden"?10:0;b+=d;f.panel.jqxPanel({horizontalScrollBarMax:b})}else{f.panel.jqxPanel({horizontalScrollBarMax:0})}}this.host.find("ul:first").width(e);var c=this.host.width()-30;if(c>0){this.host.find("ul:first").css("min-width",c)}if(f.panel){f.panel.jqxPanel("_arrange")}},_arrowStyle:function(c,h,b){var e=this;if(c.length>0){c.removeClass();var g="";if(h=="hover"){g="-"+h}var f=b?"-expand":"-collapse";var d="jqx-tree-item-arrow"+f+g;c.addClass(e.toThemeProperty(d));if(!this.rtl){var f=!b?"-right":"-down";c.addClass(e.toThemeProperty("jqx-icon-arrow"+f+""))}if(this.rtl){c.addClass(e.toThemeProperty(d+"-rtl"));var f=!b?"-left":"-down";c.addClass(e.toThemeProperty("jqx-icon-arrow"+f+""))}}},_initialize:function(f,c){var e=this;var d=0;this.host.addClass(e.toThemeProperty("jqx-widget"));this.host.addClass(e.toThemeProperty("jqx-widget-content"));this.host.addClass(e.toThemeProperty("jqx-tree"));this._updateDisabledState();var b=a.jqx.browser.msie&&a.jqx.browser.version<8;a.each(this.items,function(){var m=this;$element=a(m.element);var k=null;if(e.checkboxes&&!m.hasItems&&m.checkBoxElement){a(m.checkBoxElement).css("margin-left","0px")}if(!b){if(!m.hasItems){if(!e.rtl){m.element.style.marginLeft=parseInt(e.toggleIndicatorSize)+"px"}else{m.element.style.marginRight=parseInt(e.toggleIndicatorSize)+"px"}var j=a(m.arrow);if(j.length>0){j.remove();m.arrow=null}return true}else{if(!e.rtl){m.element.style.marginLeft="0px"}else{m.element.style.marginRight="0px"}}}else{if(!m.hasItems&&a(m.element).find("ul").length>0){a(m.element).find("ul").remove()}}var j=a(m.arrow);if(j.length>0){j.remove()}k=a('<span style="height: 17px; border: none; background-color: transparent;" id="arrow'+$element[0].id+'"></span>');k.prependTo($element);if(!e.rtl){k.css("float","left")}else{k.css("float","right")}k.css("clear","both");k.width(e.toggleIndicatorSize);e._arrowStyle(k,"",m.isExpanded);var l=parseInt(a(this.titleElement).css("padding-top"));if(isNaN(l)){l=0}l=l*2;l+=2;var n=(l+a(this.titleElement).height())/2-17/2;if(a.jqx.browser.msie&&a.jqx.browser.version<9){k.css("margin-top","3px")}else{if(parseInt(n)>=0){k.css("margin-top",parseInt(n)+"px")}}$element.addClass(e.toThemeProperty("jqx-disableselect"));k.addClass(e.toThemeProperty("jqx-disableselect"));var g="click";var h=e.isTouchDevice();if(h){g=a.jqx.mobile.getTouchEventName("touchend")}e.addHandler(k,g,function(){if(!m.isExpanded){e._expandItem(e,m)}else{e._collapseItem(e,m)}return false});e.addHandler(k,"selectstart",function(){return false});e.addHandler(k,"mouseup",function(){if(!h){return false}});m.hasItems=a(m.element).find("li").length>0;m.arrow=k[0];if(!m.hasItems){k.css("visibility","hidden")}$element.css("float","none")})},_getOffset:function(b){var f=a(window).scrollTop();var h=a(window).scrollLeft();var c=a.jqx.mobile.isSafariMobileBrowser();var g=a(b).offset();var e=g.top;var d=g.left;if(c!=null&&c){return{left:d-h,top:e-f}}else{return a(b).offset()}},_renderHover:function(c,e,b){var d=this;if(!b){var f=a(e.titleElement);d.addHandler(f,"mouseenter",function(){if(!e.disabled&&d.enableHover&&!d.disabled){f.addClass(d.toThemeProperty("jqx-fill-state-hover"));f.addClass(d.toThemeProperty("jqx-tree-item-hover"))}});d.addHandler(f,"mouseleave",function(){if(!e.disabled&&d.enableHover&&!d.disabled){f.removeClass(d.toThemeProperty("jqx-fill-state-hover"));f.removeClass(d.toThemeProperty("jqx-tree-item-hover"))}})}},_updateDisabledState:function(){if(this.disabled){this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"))}else{this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"))}},_addInput:function(){if(this.input==null){var b=this.host.attr("name");if(b){this.host.attr("name","")}this.input=a("<input type='hidden'/>");this.host.append(this.input);this.input.attr("name",b);this._updateInputSelection()}},render:function(){this._updateItemsNavigation();this._render()},_render:function(f,j){if(a.jqx.browser.msie&&a.jqx.browser.version<8){var g=this;a.each(this.items,function(){var n=a(this.element);var p=n.parent();var m=parseInt(this.titleElement.css("margin-left"))+this.titleElement[0].scrollWidth+13;n.css("min-width",m);var o=parseInt(p.css("min-width"));if(isNaN(o)){o=0}var l=n.css("min-width");if(o<parseInt(n.css("min-width"))){p.css("min-width",l)}this.titleElement[0].style.width=null})}var h=1000;var c=[5,5];var g=this;a.data(g.element,"animationHideDelay",g.animationHideDelay);a.data(document.body,"treeel",this);this._initialize();var d=this.isTouchDevice();if(d&&this.toggleMode=="dblclick"){this.toggleMode="click"}if(f==undefined||f==true){a.each(this.items,function(){g._updateItemEvents(g,this)})}if(this.allowDrag&&this._enableDragDrop&&(j==undefined||j==true)){this._enableDragDrop()}this._addInput();if(this.host.jqxPanel){if(this.host.find("#panel"+this.element.id).length>0){this.panel.jqxPanel({touchMode:this.touchMode});this.panel.jqxPanel("refresh");return}this.host.find("ul:first").wrap('<div style="background-color: transparent; overflow: hidden; width: 100%; height: 100%;" id="panel'+this.element.id+'"></div>');var b=this.host.find("div:first");var k="fixed";if(this.height==null||this.height=="auto"){k="verticalwrap"}if(this.width==null||this.width=="auto"){if(k=="fixed"){k="horizontalwrap"}else{k="wrap"}}b.jqxPanel({rtl:this.rtl,theme:this.theme,width:"100%",height:"100%",touchMode:this.touchMode,sizeMode:k});if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.jqxPanel("content").css("left","0px")}b.data({nestedWidget:true});if(this.height==null||(this.height!=null&&this.height.toString().indexOf("%")!=-1)){if(this.isTouchDevice()){this.removeHandler(b,a.jqx.mobile.getTouchEventName("touchend")+".touchScroll touchcancel.touchScroll");this.removeHandler(b,a.jqx.mobile.getTouchEventName("touchmove")+".touchScroll");this.removeHandler(b,a.jqx.mobile.getTouchEventName("touchstart")+".touchScroll")}}var e=a.data(b[0],"jqxPanel").instance;if(e!=null){this.vScrollInstance=e.vScrollInstance;this.hScrollInstance=e.hScrollInstance}this.panelInstance=e;if(a.jqx.browser.msie&&a.jqx.browser.version<8){this.host.attr("hideFocus",true);this.host.find("div").attr("hideFocus",true);this.host.find("ul").attr("hideFocus",true)}b[0].className="";this.panel=b}this._raiseEvent("3",this)},focus:function(){try{this.host.focus()}catch(b){}},_updateItemEvents:function(h,k){var b=this.isTouchDevice();if(b){this.toggleMode=a.jqx.mobile.getTouchEventName("touchend")}var j=a(k.element);if(h.enableRoundedCorners){j.addClass(h.toThemeProperty("jqx-rc-all"))}var e=!b?"mousedown":a.jqx.mobile.getTouchEventName("touchend");if(h.touchMode===true){h.removeHandler(a(k.checkBoxElement),"mousedown")}h.removeHandler(a(k.checkBoxElement),e);h.addHandler(a(k.checkBoxElement),e,function(l){if(!h.disabled){if(!this.treeItem.disabled){this.treeItem.checked=!this.treeItem.checked;h.checkItem(this.treeItem.element,this.treeItem.checked,"tree");if(h.hasThreeStates){h.checkItems(this.treeItem,this.treeItem)}}}return false});var c=a(k.titleElement);h.removeHandler(j);var f=this.allowDrag&&this._enableDragDrop;if(!f){h.removeHandler(c)}else{h.removeHandler(c,"mousedown.item");h.removeHandler(c,"click");h.removeHandler(c,"dblclick");h.removeHandler(c,"mouseenter");h.removeHandler(c,"mouseleave")}h._renderHover(j,k,b);var d=a(k.subtreeElement);if(d.length>0){var g=k.isExpanded?"block":"none";d.css({overflow:"hidden",display:g});d.data("timer",{})}h.addHandler(c,"selectstart",function(l){return false});if(a.jqx.browser.opera){h.addHandler(c,"mousedown.item",function(l){return false})}if(h.toggleMode!="click"){h.addHandler(c,"click",function(l){h.selectItem(k.element);if(h.panel!=null){h.panel.jqxPanel({focused:true})}c.focus()})}h.addHandler(c,h.toggleMode,function(l){if(d.length>0){clearTimeout(d.data("timer").hide)}if(h.panel!=null){h.panel.jqxPanel({focused:true})}h.selectItem(k.element);if(k.isExpanding==undefined){k.isExpanding=false}if(k.isCollapsing==undefined){k.isCollapsing=false}if(d.length>0){if(!k.isExpanded){if(false==k.isExpanding){k.isExpanding=true;h._expandItem(h,k)}}else{if(false==k.isCollapsing){k.isCollapsing=true;h._collapseItem(h,k,true)}}return false}})},isTouchDevice:function(){if(this._isTouchDevice!=undefined){return this._isTouchDevice}var b=a.jqx.mobile.isTouchDevice();if(this.touchMode==true){b=true}else{if(this.touchMode==false){b=false}}this._isTouchDevice=b;return b},createID:function(){return a.jqx.utilities.createId()},createTree:function(b){if(b==null){return}var d=this;var f=a(b).find("li");var c=0;this.items=new Array();this.itemMapping=new Array();a(b).addClass(d.toThemeProperty("jqx-tree-dropdown-root"));if(this.rtl){a(b).addClass(d.toThemeProperty("jqx-tree-dropdown-root-rtl"))}if(this.rtl||a.jqx.browser.msie&&a.jqx.browser.version<8){this._measureItem=a("<span style='position: relative; visibility: hidden;'></span>");this._measureItem.addClass(this.toThemeProperty("jqx-widget"));this._measureItem.addClass(this.toThemeProperty("jqx-fill-state-normal"));this._measureItem.addClass(this.toThemeProperty("jqx-tree-item"));this._measureItem.addClass(this.toThemeProperty("jqx-item"));a(document.body).append(this._measureItem)}if(a.jqx.browser.msie&&a.jqx.browser.version<8){}for(var e=0;e<f.length;e++){this._createItem(f[e])}if(this.rtl||a.jqx.browser.msie&&a.jqx.browser.version<8){this._measureItem.remove()}this._updateItemsNavigation();this._updateCheckStates()},_updateCheckLayout:function(c){var b=this;if(!this.checkboxes){return}a.each(this.items,function(){if(this.level==c||c==undefined){b._updateCheckItemLayout(this)}})},_updateCheckItemLayout:function(b){if(this.checkboxes){if(a(b.titleElement).css("display")!="none"){var c=a(b.checkBoxElement);var d=a(b.titleElement).outerHeight()/2-1-parseInt(this.checkSize)/2;c.css("margin-top",d);if(!this.rtl){if(a.jqx.browser.msie&&a.jqx.browser.version<8){b.titleElement.css("margin-left",parseInt(this.checkSize)+25)}else{if(b.hasItems){c.css("margin-left",this.toggleIndicatorSize)}}}}}},_updateCheckStates:function(){var b=this;if(b.hasThreeStates){a.each(this.items,function(){b._updateCheckState(this)})}else{a.each(this.items,function(){if(this.checked==null){b.checkItem(this.element,false,"tree")}})}},_updateCheckState:function(e){if(e==null||e==undefined){return}var d=this;var c=0;var f=false;var b=0;var g=a(e.element).find("li");b=g.length;if(e.checked&&b>0){a.each(g,function(h){var k=d.itemMapping["id"+this.id].item;var j=k.element.getAttribute("item-checked");if(j==undefined||j==null||j=="true"||j==true){d.checkItem(k.element,true,"tree")}})}a.each(g,function(h){var j=d.itemMapping["id"+this.id].item;if(j.checked!=false){if(j.checked==null){f=true}c++}});if(b>0){if(c==b){this.checkItem(e.element,true,"tree")}else{if(c>0){this.checkItem(e.element,null,"tree")}else{this.checkItem(e.element,false,"tree")}}}},_updateItemsNavigation:function(){var g=this.host.find("ul:first");var f=a(g).find("li");var c=0;for(var d=0;d<f.length;d++){var b=f[d];if(this.itemMapping["id"+b.id]){var e=this.itemMapping["id"+b.id].item;if(!e){continue}e.prevItem=null;e.nextItem=null;if(d>0){if(this.itemMapping["id"+f[d-1].id]){e.prevItem=this.itemMapping["id"+f[d-1].id].item}}if(d<f.length-1){if(this.itemMapping["id"+f[d+1].id]){e.nextItem=this.itemMapping["id"+f[d+1].id].item}}}}},_applyTheme:function(e,h){var f=this;this.host.removeClass("jqx-tree-"+e);this.host.removeClass("jqx-widget-"+e);this.host.removeClass("jqx-widget-content-"+e);this.host.addClass(f.toThemeProperty("jqx-tree"));this.host.addClass(f.toThemeProperty("jqx-widget"));var b=this.host.find("ul:first");a(b).removeClass(f.toThemeProperty("jqx-tree-dropdown-root-"+e));a(b).addClass(f.toThemeProperty("jqx-tree-dropdown-root"));if(this.rtl){a(b).removeClass(f.toThemeProperty("jqx-tree-dropdown-root-rtl-"+e));a(b).addClass(f.toThemeProperty("jqx-tree-dropdown-root-rtl"))}var g=a(b).find("li");for(var d=0;d<g.length;d++){var c=g[d];a(c).children().each(function(){if(this.tagName=="ul"||this.tagName=="UL"){a(this).removeClass(f.toThemeProperty("jqx-tree-dropdown-"+e));a(this).addClass(f.toThemeProperty("jqx-tree-dropdown"));if(f.rtl){a(this).removeClass(f.toThemeProperty("jqx-tree-dropdown-rtl-"+e));a(this).addClass(f.toThemeProperty("jqx-tree-dropdown-rtl"))}return false}})}a.each(this.items,function(){var l=this;var k=a(l.element);k.removeClass(f.toThemeProperty("jqx-tree-item-li-"+e));k.addClass(f.toThemeProperty("jqx-tree-item-li"));if(this.rtl){k.removeClass(f.toThemeProperty("jqx-tree-item-li-"+e));k.addClass(f.toThemeProperty("jqx-tree-item-li"))}a(l.titleElement).removeClass(f.toThemeProperty("jqx-tree-item-"+e));a(l.titleElement).addClass(f.toThemeProperty("jqx-tree-item"));a(l.titleElement).removeClass("jqx-item-"+e);a(l.titleElement).addClass(f.toThemeProperty("jqx-item"));var j=a(l.arrow);if(j.length>0){f._arrowStyle(j,"",l.isExpanded)}if(l.checkBoxElement){a(l.checkBoxElement).jqxCheckBox({theme:h})}if(f.enableRoundedCorners){k.removeClass("jqx-rc-all-"+e);k.addClass(f.toThemeProperty("jqx-rc-all"))}});if(this.host.jqxPanel){this.panel.jqxPanel({theme:h})}},_refreshMapping:function(f,q){var e=this.host.find("li");var b=new Array();var p=new Array();var h=a.data(document.body,"treeItemsStorage");var l=this;for(var j=0;j<e.length;j++){var k=e[j];var d=a(k);var o=h[k.id];if(o==null){continue}p[p.length]=o;if(f==undefined||f==true){this._updateItemEvents(this,o)}o.level=d.parents("li").length;o.treeInstance=this;var n=null;var g=null;if(o.titleElement[0].className.indexOf("jqx-fill-state-pressed")!=-1){a(o.titleElement).removeClass(l.toThemeProperty("jqx-fill-state-pressed"));a(o.titleElement).removeClass(l.toThemeProperty("jqx-tree-item-selected"))}var c=d.children();c.each(function(){if(this.tagName=="ul"||this.tagName=="UL"){o.subtreeElement=this;a(this).addClass(l.toThemeProperty("jqx-tree-dropdown"));if(l.rtl){a(this).addClass(l.toThemeProperty("jqx-tree-dropdown-rtl"))}return false}});var m=d.parents();m.each(function(){if((this.tagName=="li"||this.tagName=="LI")){g=this.id;n=this;return false}});o.parentElement=n;o.parentId=g;o.hasItems=a(o.element).find("li").length>0;if(o!=null){b[j]={element:k,item:o};b["id"+k.id]=b[j]}}this.itemMapping=b;this.items=p},_createItem:function(c){if(c==null||c==undefined){return}var r=c.id;if(!r){r=this.createID()}var F=c;var m=a(c);F.id=r;var g=a.data(document.body,"treeItemsStorage");if(g==undefined){g=new Array()}var x=this.items.length;this.items[x]=new a.jqx._jqxTree.jqxTreeItem();this.treeElements[r]=this.items[x];g[F.id]=this.items[x];a.data(document.body,"treeItemsStorage",g);x=this.items.length;var A=0;var H=this;var e=null;m.attr("role","treeitem");m.children().each(function(){if(this.tagName=="ul"||this.tagName=="UL"){H.items[x-1].subtreeElement=this;a(this).addClass(H.toThemeProperty("jqx-tree-dropdown"));if(H.rtl){a(this).addClass(H.toThemeProperty("jqx-tree-dropdown-rtl"));a(this).css("clear","both")}return false}});m.parents().each(function(){if((this.tagName=="li"||this.tagName=="LI")){A=this.id;e=this;return false}});var w=c.getAttribute("item-expanded");if(w==null||w==undefined||(w!="true"&&w!=true)){w=false}else{w=true}F.removeAttribute("item-expanded");var G=c.getAttribute("item-locked");if(G==null||G==undefined||(G!="true"&&G!=true)){G=false}else{G=true}F.removeAttribute("item-locked");var s=c.getAttribute("item-selected");if(s==null||s==undefined||(s!="true"&&s!=true)){s=false}else{s=true}F.removeAttribute("item-selected");var d=c.getAttribute("item-disabled");if(d==null||d==undefined||(d!="true"&&d!=true)){d=false}else{d=true}F.removeAttribute("item-disabled");var j=c.getAttribute("item-checked");if(j==null||j==undefined||(j!="true"&&j!=true)){j=false}else{j=true}var I=c.getAttribute("item-title");if(I==null||I==undefined||(I!="true"&&I!=true)){I=false}F.removeAttribute("item-title");var D=c.getAttribute("item-icon");var t=c.getAttribute("item-iconsize");var l=c.getAttribute("item-label");var v=c.getAttribute("item-value");F.removeAttribute("item-icon");F.removeAttribute("item-iconsize");F.removeAttribute("item-label");F.removeAttribute("item-value");var C=this.items[x-1];C.id=r;if(C.value==undefined){if(this._valueList&&this._valueList[r]){C.value=this._valueList[r]}else{C.value=v}}C.icon=D;C.iconsize=t;C.parentId=A;C.disabled=d;C.parentElement=e;C.element=c;C.locked=G;C.selected=s;C.checked=j;C.isExpanded=w;C.treeInstance=this;this.itemMapping[x-1]={element:F,item:C};this.itemMapping["id"+F.id]=this.itemMapping[x-1];var h=false;var E=false;h=false;if(this.rtl){a(C.element).css("float","right");a(C.element).css("clear","both")}if(!h||!E){if(a(F.firstChild).length>0){if(C.icon){var t=C.iconsize;if(!t){t=16}var D=a('<img width="'+t+'" height="'+t+'" style="float: left;" class="itemicon" src="'+C.icon+'"/>');a(F).prepend(D);D.css("margin-right","4px");if(this.rtl){D.css("margin-right","0px");D.css("margin-left","4px");D.css("float","right")}}var b=F.innerHTML.indexOf("<ul");if(b==-1){b=F.innerHTML.indexOf("<UL")}if(b==-1){C.originalTitle=F.innerHTML;F.innerHTML='<div style="display: inline-block;">'+F.innerHTML+"</div>";C.titleElement=a(a(F)[0].firstChild)}else{var B=F.innerHTML.substring(0,b);B=a.trim(B);C.originalTitle=B;B=a('<div style="display: inline-block;">'+B+"</div>");var o=a(F).find("ul:first");o.remove();F.innerHTML="";a(F).prepend(B);a(F).append(o);C.titleElement=B;if(this.rtl){B.css("float","right");o.css("padding-right","10px")}}if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(a(F)[0].firstChild).css("display","inline-block");var n=false;if(this._measureItem.parents().length==0){a(document.body).append(this._measureItem);n=true}this._measureItem.css("min-width","20px");this._measureItem[0].innerHTML=(a(C.titleElement).text());var u=this._measureItem.width();if(C.icon){u+=20}if(a(a(item.titleElement).find("img")).length>0){u+=20}a(a(F)[0].firstChild).css("max-width",u+"px");if(n){this._measureItem.remove()}}}else{C.originalTitle="Item";a(F).append(a("<span>Item</span>"));a(F.firstChild).wrap("<span/>");C.titleElement=a(F)[0].firstChild;if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(F.firstChild).css("display","inline-block")}}}var z=a(C.titleElement);var q=this.toThemeProperty("jqx-rc-all");if(this.allowDrag){z.addClass("draggable")}if(l==null||l==undefined){l=C.titleElement;C.label=a.trim(z.text())}else{C.label=l}a(F).addClass(this.toThemeProperty("jqx-tree-item-li"));if(this.rtl){a(F).addClass(this.toThemeProperty("jqx-tree-item-li-rtl"))}q+=" "+this.toThemeProperty("jqx-tree-item")+" "+this.toThemeProperty("jqx-item");if(this.rtl){q+=" "+this.toThemeProperty("jqx-tree-item-rtl")}z[0].className=z[0].className+" "+q;C.level=a(c).parents("li").length;C.hasItems=a(c).find("li").length>0;if(this.rtl&&C.parentElement){if(!this.checkboxes){}}if(this.checkboxes){if(this.host.jqxCheckBox){var p=a('<div style="position: absolute; width: 18px; height: 18px;" tabIndex=0 class="chkbox"/>');p.width(parseInt(this.checkSize));p.height(parseInt(this.checkSize));a(F).prepend(p);if(this.rtl){p.css("float","right");p.css("position","static")}p.jqxCheckBox({hasInput:false,checked:C.checked,boxSize:this.checkSize,animationShowDelay:0,animationHideDelay:0,disabled:d,theme:this.theme});if(!this.rtl){z.css("margin-left",parseInt(this.checkSize)+6)}else{var y=5;if(C.parentElement){p.css("margin-right",y+5+"px")}else{p.css("margin-right",y+"px")}}C.checkBoxElement=p[0];p[0].treeItem=C;var f=z.outerHeight()/2-1-parseInt(this.checkSize)/2;p.css("margin-top",f);if(a.jqx.browser.msie&&a.jqx.browser.version<8){z.css("width","1%");z.css("margin-left",parseInt(this.checkSize)+25)}else{if(C.hasItems){if(!this.rtl){p.css("margin-left",this.toggleIndicatorSize)}}}}else{throw new Error("jqxTree: Missing reference to jqxcheckbox.js.");return}}else{if(a.jqx.browser.msie&&a.jqx.browser.version<8){z.css("width","1%")}}if(d){this.disableItem(C.element)}if(s){this.selectItem(C.element)}if(a.jqx.browser.msie&&a.jqx.browser.version<8){a(F).css("margin","0px");a(F).css("padding","0px")}},destroy:function(){this.removeHandler(a(window),"resize.jqxtree"+this.element.id);this.host.removeClass();if(this.isTouchDevice()){this.removeHandler(this.panel,a.jqx.mobile.getTouchEventName("touchend")+".touchScroll touchcancel.touchScroll");this.removeHandler(this.panel,a.jqx.mobile.getTouchEventName("touchmove")+".touchScroll");this.removeHandler(this.panel,a.jqx.mobile.getTouchEventName("touchstart")+".touchScroll")}var c=this;var b=this.isTouchDevice();a.each(this.items,function(){var g=this;var e=a(this.element);var d=!b?"click":a.jqx.mobile.getTouchEventName("touchend");c.removeHandler(a(g.checkBoxElement),d);var h=a(g.titleElement);c.removeHandler(e);var f=c.allowDrag&&c._enableDragDrop;if(!f){c.removeHandler(h)}else{c.removeHandler(h,"mousedown.item");c.removeHandler(h,"click");c.removeHandler(h,"dblclick");c.removeHandler(h,"mouseenter");c.removeHandler(h,"mouseleave")}$arrowSpan=a(g.arrow);if($arrowSpan.length>0){c.removeHandler($arrowSpan,d);c.removeHandler($arrowSpan,"selectstart");c.removeHandler($arrowSpan,"mouseup");if(!b){c.removeHandler($arrowSpan,"mouseenter");c.removeHandler($arrowSpan,"mouseleave")}c.removeHandler(h,"selectstart")}if(a.jqx.browser.opera){c.removeHandler(h,"mousedown.item")}if(c.toggleMode!="click"){c.removeHandler(h,"click")}c.removeHandler(h,c.toggleMode)});if(this.panel){this.panel.jqxPanel("destroy");this.panel=null}this.host.remove()},_raiseEvent:function(f,c){if(c==undefined){c={owner:null}}var d=this.events[f];args=c;args.owner=this;var e=new a.Event(d);e.owner=this;e.args=args;var b=this.host.trigger(e);return b},propertyChangedHandler:function(d,l,b,j){if(this.isInitialized==undefined||this.isInitialized==false){return}if(l=="submitCheckedItems"){d._updateInputSelection()}if(l=="disabled"){d._updateDisabledState()}if(l=="theme"){d._applyTheme(b,j)}if(l=="keyboardNavigation"){d.enableKeyboardNavigation=j}if(l=="width"||l=="height"){d.refresh();d._initialize();d._calculateWidth();if(d.host.jqxPanel){var k="fixed";if(this.height==null||this.height=="auto"){k="verticalwrap"}if(this.width==null||this.width=="auto"){if(k=="fixed"){k="horizontalwrap"}else{k="wrap"}}d.panel.jqxPanel({sizeMode:k})}}if(l=="touchMode"){d._isTouchDevice=null;if(j){d.enableHover=false}d._render()}if(l=="source"||l=="checkboxes"){if(this.source!=null){var m=[];a.each(d.items,function(){if(this.isExpanded){m[m.length]={label:this.label,level:this.level}}});var f=d.loadItems(d.source);if(!d.host.jqxPanel){d.element.innerHTML=f}else{d.panel.jqxPanel("setcontent",f)}var e=d.disabled;var g=d.host.find("ul:first");if(g.length>0){d.createTree(g[0]);d._render()}var h=d;var c=h.animationShowDuration;h.animationShowDuration=0;d.disabled=false;if(m.length>0){a.each(d.items,function(){for(var n=0;n<m.length;n++){if(m[n].label==this.label&&m[n].level==this.level){var o=h.getItem(this.element);h._expandItem(h,o)}}})}d.disabled=e;h.animationShowDuration=c}}if(l=="hasThreeStates"){d._render();d._updateCheckStates()}if(l=="toggleIndicatorSize"){d._updateCheckLayout();d._render()}}})})(jqxBaseFramework);(function(a){a.jqx._jqxTree.jqxTreeItem=function(e,d,b){var c={label:null,id:e,parentId:d,parentElement:null,parentItem:null,disabled:false,selected:false,locked:false,checked:false,level:0,isExpanded:false,hasItems:false,element:null,subtreeElement:null,checkBoxElement:null,titleElement:null,arrow:null,prevItem:null,nextItem:null};return c}})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtreegrid.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtreegrid.js
new file mode 100644 (file)
index 0000000..f0d1f85
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxTreeGrid","jqxDataTable",{});a.extend(a.jqx._jqxTreeGrid.prototype,{defineInstance:function(){this.base.treeGrid=this;this.base.exportSettings={recordsInView:false,columnsHeader:true,hiddenColumns:false,serverURL:null,characterSet:null,collapsedRecords:false,fileName:"jqxTreeGrid"};var b={pageSizeMode:"default",checkboxes:false,hierarchicalCheckboxes:false,icons:false,showSubAggregates:false,rowDetailsRenderer:null,virtualModeCreateRecords:null,virtualModeRecordCreating:null,loadingFailed:false};a.extend(true,this,b);return b},createInstance:function(b){this.theme=this.base.theme;var c=this},deleteRow:function(b){var c=this.base;c.deleterowbykey(b)},updateRow:function(b,d){var c=this.base;c.updaterowbykey(b,d)},setCellValue:function(c,b,e){var d=this.base;d.setCellValueByKey(c,b,e)},getCellValue:function(c,b){var d=this.base;return d.getCellValueByKey(c,b)},lockRow:function(b){var c=this.base;c.lockrowbykey(b)},unlockRow:function(b){var c=this.base;c.unlockrowbykey(b)},selectRow:function(b){var c=this.base;c.selectrowbykey(b)},unselectRow:function(b){var c=this.base;c.unselectrowbykey(b)},ensureRowVisible:function(b){var c=this.base;c.ensurerowvisiblebykey(b)},beginCellEdit:function(c,b){var e=this.base;var d=e.getColumn(b);e.beginroweditbykey(c,d)},beginRowEdit:function(b){var c=this.base;c.beginroweditbykey(b)},endCellEdit:function(c,b,e){var d=this.base;d.endroweditbykey(c,e)},endRowEdit:function(b,d){var c=this.base;c.endroweditbykey(b,d)},_showLoadElement:function(){var b=this.base;if(b.host.css("display")=="block"){if(b.autoShowLoadElement){a(b.dataloadelement).css("visibility","visible");a(b.dataloadelement).css("display","block");b.dataloadelement.width(b.host.width());b.dataloadelement.height(b.host.height())}}},_hideLoadElement:function(){var b=this.base;if(b.host.css("display")=="block"){if(b.autoShowLoadElement){a(b.dataloadelement).css("visibility","hidden");a(b.dataloadelement).css("display","none");b.dataloadelement.width(b.host.width());b.dataloadelement.height(b.host.height())}}},getKey:function(b){if(b){return b.uid}},getRows:function(){var b=this.base;if(b.source.hierarchy){if(b.source.hierarchy.length!=0){return b.source.hierarchy}}return b.source.records},getCheckedRows:function(){var c=this.base;var d=c._names();var e=new Array();var b=function(j,g){if(!g){return}for(var h=0;h<g.length;h++){if(!g[h]){continue}var f=a.extend({},g[h]);var k=c.rowinfo[g[h].uid];if(k&&k[d.checked]){j.push(f)}else{if(f[d.checked]){j.push(f)}}b(e,g[h].records)}};b(e,c.dataViewRecords);return e},getRow:function(d){var e=this.base;var b=e.source.records;if(e.source.hierarchy){var f=function(h){for(var j=0;j<h.length;j++){if(!h[j]){continue}if(h[j].uid==d){return h[j]}if(h[j].records){var k=f(h[j].records);if(k){return k}}}};var g=f(e.source.hierarchy);return g}else{for(var c=0;c<b.length;c++){if(!b[c]){continue}if(b[c].uid==d){return b[c]}}}},_renderrows:function(){var N=this.base;var ar=this;if(N._loading){return}if(N._updating){return}var J=N._names();if(N.source.hierarchy.length===0&&!N.loadingFailed){if(this.virtualModeCreateRecords){var am=function(c){if(c===false||(c&&c.length==0)){N._loading=false;N.loadingFailed=true;N.source.hierarchy=new Array();ar._hideLoadElement();N._renderrows();N._updateScrollbars();N._arrange();return}for(var j=0;j<c.length;j++){c[j].level=0;ar.virtualModeRecordCreating(c[j]);N.rowsByKey[c[j].uid]=c[j]}N.source.hierarchy=c;if(!N.source._source.hierarchy){N.source._source.hierarchy={}}N._loading=false;ar._hideLoadElement();N._renderrows();N._updateScrollbars();N._arrange()};N._loading=true;this.virtualModeCreateRecords(null,am);this._showLoadElement()}}if(N.rendering){N.rendering()}var ay=0;N.table[0].rows=new Array();var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-widget-content")+" "+N.toTP("jqx-item");if(N.rtl){aI+=" "+N.toTP("jqx-cell-rtl")}var b=N.columns.records.length;var O=a.jqx.browser.msie&&a.jqx.browser.version<8;if(O){N.host.attr("hideFocus","true")}var v=new Array();var aF=function(s,w){for(var aJ=0;aJ<s.length;aJ++){var c=s[aJ];if(!c){continue}var j=!N.rowinfo[c.uid]?c.expanded:N.rowinfo[c.uid].expanded;if(N.dataview.filters.length==0){c._visible=true}if(c._visible!==false){if(j||c[J.leaf]){w.push(c);if(c.records&&c.records.length>0){var aK=aF(c.records,new Array());for(var x=0;x<aK.length;x++){w.push(aK[x])}}}else{w.push(c)}}}return w};var ao=N.source.hierarchy.length===0?N.source.records:N.source.hierarchy;ao=N.dataview.evaluate(ao);N.dataViewRecords=ao;if(this.showSubAggregates){var p=function(s,c){if(s!=0){if(c.length>0){if(c[c.length-1]){if(!c[c.length-1].aggregate){c.push({_visible:true,level:s,siblings:c,aggregate:true,leaf:true})}}else{if(a.jqx.browser.msie&&a.jqx.browser.version<9){if(c[c.length-2]){if(!c[c.length-2].aggregate){c.push({_visible:true,level:s,siblings:c,aggregate:true,leaf:true})}}}}}}for(var j=0;j<c.length;j++){if(c[j]&&c[j].records){p(s+1,c[j].records)}}};p(0,ao)}var ap=function(s){var w=0;var i=new Array();for(var c=0;c<s.length;c++){var j=s[c];if(j[J.level]==0){w++}if(w>N.dataview.pagesize*N.dataview.pagenum&&w<=N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize){i.push(j)}if(w>N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize){break}}return i};if(N.source.hierarchy.length===0){if(N.dataview.pagesize=="all"||!N.pageable||N.serverProcessing){var ak=ao;if(N.pageable&&N.serverProcessing&&ao.length>N.dataview.pagesize){var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize)}}else{var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize)}var v=ak}else{var ao=aF.call(N,ao,new Array());if(N.dataview.pagesize=="all"||!N.pageable){var ak=ao}else{var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize);if(this.pageSizeMode=="root"){ak=ap(ao)}}var v=ak;var I=N.dataview.pagenum;N.updatepagerdetails();if(N.dataview.pagenum!=I){if(N.dataview.pagesize=="all"||!N.pageable){var ak=ao}else{var ak=ao.slice(N.dataview.pagesize*N.dataview.pagenum,N.dataview.pagesize*N.dataview.pagenum+N.dataview.pagesize);if(this.pageSizeMode=="root"){ak=ap(ao)}}var v=ak}}N.renderedRecords=v;var D=v.length;var aG=N.tableZIndex;var k=0;var aq=0;if(O){for(var P=0;P<b;P++){var T=N.columns.records[P];var aw=T.width;if(aw<T.minwidth){aw=T.minwidth}if(aw>T.maxwidth){aw=T.maxwidth}var av=a('<table><tr><td role="gridcell" style="max-width: '+aw+"px; width:"+aw+'px;" class="'+aI+'"></td></tr></table>');a(document.body).append(av);var ag=av.find("td");k=1+parseInt(ag.css("padding-left"))+parseInt(ag.css("padding-right"));av.remove();break}}var B=N.rtl?" "+N.toTP("jqx-grid-table-rtl"):"";var y="<table cellspacing='0' class='"+N.toTP("jqx-grid-table")+B+"' id='table"+N.element.id+"'><colgroup>";var W="<table cellspacing='0' class='"+N.toTP("jqx-grid-table")+B+"' id='pinnedtable"+N.element.id+"'><colgroup>";var ab=null;for(var P=0;P<b;P++){var T=N.columns.records[P];if(T.hidden){continue}ab=T;var aw=T.width;if(aw<T.minwidth){aw=T.minwidth}if(aw>T.maxwidth){aw=T.maxwidth}aw-=k;if(aw<0){aw=0}if(O){var H=aw;if(P==0){H++}W+="<col style='max-width: "+aw+"px; width: "+H+"px;'>";y+="<col style='max-width: "+aw+"px; width: "+H+"px;'>"}else{W+="<col style='max-width: "+aw+"px; width: "+aw+"px;'>";y+="<col style='max-width: "+aw+"px; width: "+aw+"px;'>"}aq+=aw}y+="</colgroup>";W+="</colgroup>";N._hiddencolumns=false;var r=false;if(D===0){var n='<tr role="row">';var q=N.host.height();if(N.pageable){q-=N.pagerHeight;if(N.pagerPosition==="both"){q-=N.pagerHeight}}q-=N.columnsHeight;if(N.filterable){var aB=N.filter.find(".filterrow");var A=N.filter.find(".filterrow-hidden");var E=1;if(A.length>0){E=0}q-=N.filterHeight+N.filterHeight*aB.length*E}if(N.showstatusbar){q-=N.statusBarHeight}if(N.showAggregates){q-=N.aggregatesHeight}if(q<25){q=25}if(N.hScrollBar[0].style.visibility!="hidden"){q-=N.hScrollBar.outerHeight()}if(N.height==="auto"||N.height===null||N.autoheight){q=100}var aw=N.host.width()+2;var av='<td colspan="'+N.columns.records.length+'" role="gridcell" style="border-right-color: transparent; min-height: '+q+"px; height: "+q+"px;  min-width:"+aq+"px; max-width:"+aq+"px; width:"+aq+"px;";var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-grid-cell")+" "+N.toTP("jqx-item");aI+=" "+N.toTP("jqx-center-align");av+='" class="'+aI+'">';if(!N._loading){av+=N.gridlocalization.emptydatastring}av+="</td>";n+=av;y+=n;W+=n;N.table[0].style.width=aq+2+"px";ay=aq}var m=N.source._source.hierarchy&&N.source._source.hierarchy.groupingDataFields?N.source._source.hierarchy.groupingDataFields.length:0;for(var Q=0;Q<v.length;Q++){var at=v[Q];var ac=at.uid;if(m>0){if(at[J.level]<m){ac=at.uid}}if(at.uid===undefined){at.uid=N.dataview.generatekey()}var n='<tr data-key="'+ac+'" role="row" id="row'+Q+N.element.id+'">';var an='<tr data-key="'+ac+'" role="row" id="row'+Q+N.element.id+'">';if(at.aggregate){var n='<tr data-role="summaryrow" role="row" id="row'+Q+N.element.id+'">';var an='<tr data-role="summaryrow" role="row" id="row'+Q+N.element.id+'">'}var U=0;if(!N.rowinfo[ac]){var z=at[J.checked];if(z===undefined){z=false}N.rowinfo[ac]={selected:at[J.selected],checked:z,icon:at[J.icon],aggregate:at.aggregate,row:at,leaf:at[J.leaf],expanded:at[J.expanded]}}else{if(N.rowinfo[ac].checked===undefined){N.rowinfo[ac].checked=at[J.checked]}if(N.rowinfo[ac].icon===undefined){N.rowinfo[ac].icon=at[J.icon]}if(N.rowinfo[ac].aggregate===undefined){N.rowinfo[ac].aggregate=at[J.aggregate]}if(N.rowinfo[ac].row===undefined){N.rowinfo[ac].row=at}if(N.rowinfo[ac].leaf===undefined){N.rowinfo[ac].leaf=at[J.leaf]}if(N.rowinfo[ac].expanded===undefined){N.rowinfo[ac].expanded=at[J.expanded]}}var h=N.rowinfo[ac];h.row=at;if(at.originalRecord){h.originalRecord=at.originalRecord}var o=0;for(var P=0;P<b;P++){var M=N.columns.records[P];if(M.pinned||(N.rtl&&N.columns.records[b-1].pinned)){r=true}var aw=M.width;if(aw<M.minwidth){aw=M.minwidth}if(aw>M.maxwidth){aw=M.maxwidth}aw-=k;if(aw<0){aw=0}var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-grid-cell")+" "+N.toTP("jqx-item");if(M.pinned){aI+=" "+N.toTP("jqx-grid-cell-pinned")}if(N.sortcolumn===M.displayfield){aI+=" "+N.toTP("jqx-grid-cell-sort")}if(N.altRows&&Q%2!=0){aI+=" "+N.toTP("jqx-grid-cell-alt")}if(N.rtl){aI+=" "+N.toTP("jqx-cell-rtl")}var R="";if(m>0&&!O&&!at.aggregate){if(at[J.level]<m){R+=' colspan="'+b+'"';var H=0;for(var K=0;K<b;K++){var S=N.columns.records[K];if(S.hidden){continue}var Z=S.width;if(Z<S.minwidth){aw=S.minwidth}if(Z>S.maxwidth){aw=S.maxwidth}Z-=k;if(Z<0){Z=0}H+=Z}aw=H}}var av='<td role="gridcell"'+R+' style="max-width:'+aw+"px; width:"+aw+"px;";var aj='<td role="gridcell"'+R+' style="pointer-events: none; visibility: hidden; border-color: transparent; max-width:'+aw+"px; width:"+aw+"px;";if(P==b-1&&b==1){av+="border-right-color: transparent;";aj+="border-right-color: transparent;"}if(m>0&&at[J.level]<m&&!at.aggregate){if(N.rtl){aI+=" "+N.toTP("jqx-right-align")}}else{if(M.cellsalign!="left"){if(M.cellsalign==="right"){aI+=" "+N.toTP("jqx-right-align")}else{aI+=" "+N.toTP("jqx-center-align")}}}if(h){if(h.selected){if(N.editKey!==ac){if(N.selectionMode!=="none"){aI+=" "+N.toTP("jqx-grid-cell-selected");aI+=" "+N.toTP("jqx-fill-state-pressed")}}}if(h.locked){aI+=" "+N.toTP("jqx-grid-cell-locked")}if(h.aggregate){aI+=" "+N.toTP("jqx-grid-cell-pinned")}}if(!(M.hidden)){if(o==0&&!N.rtl){av+="border-left-width: 0px;";aj+="border-left-width: 0px;"}else{av+="border-right-width: 0px;";aj+="border-right-width: 0px;"}o++;U+=k+aw}else{av+="display: none;";aj+="display: none;";N._hiddencolumns=true}if(M.pinned){av+="pointer-events: auto;";aj+="pointer-events: auto;"}var u="";if((N.source.hierarchy.length==0||(!at.records||(at.records&&at.records.length===0)))&&!this.virtualModeCreateRecords){h.leaf=true}if(at.records&&at.records.length>0){h.leaf=false}if(N.dataview.filters.length>0){if(at.records&&at.records.length>0){var aa=false;for(var L=0;L<at.records.length;L++){if(at.records[L]._visible!==false&&at.records[L].aggregate==undefined){aa=true;break}}if(!aa){h.leaf=true}else{h.leaf=false}}}if(h&&!h.leaf){if(h.expanded){u+=N.toTP("jqx-tree-grid-expand-button")+" ";if(!N.rtl){u+=N.toTP("jqx-grid-group-expand")}else{u+=N.toTP("jqx-grid-group-expand-rtl")}u+=" "+N.toTP("jqx-icon-arrow-down")}else{u+=N.toTP("jqx-tree-grid-collapse-button")+" ";if(!N.rtl){u+=N.toTP("jqx-grid-group-collapse");u+=" "+N.toTP("jqx-icon-arrow-right")}else{u+=N.toTP("jqx-grid-group-collapse-rtl");u+=" "+N.toTP("jqx-icon-arrow-left")}}}if(!N.autoRowHeight||o===1||(N.autoRowHeight&&!M.autoCellHeight)){aI+=" "+N.toTP("jqx-grid-cell-nowrap")}var V=N._getcellvalue(M,h.row);if(m>0&&!at.aggregate){if(at[J.level]<m){V=at.label}}if(M.cellsFormat!=""){if(a.jqx.dataFormat){if(a.jqx.dataFormat.isDate(V)){V=a.jqx.dataFormat.formatdate(V,M.cellsFormat,N.gridlocalization)}else{if(a.jqx.dataFormat.isNumber(V)||(!isNaN(parseFloat(V))&&isFinite(V))){V=a.jqx.dataFormat.formatnumber(V,M.cellsFormat,N.gridlocalization)}}}}if(M.cellclassname!=""&&M.cellclassname){if(typeof M.cellclassname=="string"){aI+=" "+M.cellclassname}else{var aH=M.cellclassname(Q,M.datafield,N._getcellvalue(M,h.row),h.row,V);if(aH){aI+=" "+aH}}}if(M.cellsRenderer!=""&&M.cellsRenderer){var C=M.cellsRenderer(ac,M.datafield,N._getcellvalue(M,h.row),h.row,V);if(C!==undefined){V=C}}if(h.aggregate){if(M.aggregates){var au=at.siblings.slice(0,at.siblings.length-1);var X=N._calculateaggregate(M,null,true,au);at[M.displayfield]="";if(X){if(M.aggregatesRenderer){if(X){var G=M.aggregatesRenderer(X[M.datafield],M,null,N.getcolumnaggregateddata(M.datafield,M.aggregates,false,au),"subAggregates");V=G;at[M.displayfield]+=name+":"+X[M.datafield]+"\n"}}else{V="";at[M.displayfield]="";a.each(X,function(){var i=this;for(obj in i){var c=obj;c=N._getaggregatename(c);var j='<div style="position: relative; margin: 0px; overflow: hidden;">'+c+":"+i[obj]+"</div>";V+=j;at[M.displayfield]+=c+":"+i[obj]+"\n"}})}}else{V=""}}}if((o===1&&!N.rtl)||(M==ab&&N.rtl)||(m>0&&at[J.level]<m)){var ae="";var d=N.toThemeProperty("jqx-tree-grid-indent");var Y=h.leaf?1:0;for(var F=0;F<at[J.level]+Y;F++){ae+="<span class='"+d+"'></span>"}var al="<span class='"+u+"'></span>";var az="";var e="";if(this.checkboxes&&!at.aggregate){var aC=N.toThemeProperty("jqx-tree-grid-checkbox")+" "+d+" "+N.toThemeProperty("jqx-checkbox-default")+" "+N.toThemeProperty("jqx-fill-state-normal")+" "+N.toThemeProperty("jqx-rc-all");var g=true;if(a.isFunction(this.checkboxes)){g=this.checkboxes(ac,at);if(g==undefined){g=false}}if(g){if(h){var ax=h.checked;if(this.hierarchicalCheckboxes==false&&ax===null){ax=false}if(ax){az+="<span class='"+aC+"'><div class='"+N.toThemeProperty("jqx-tree-grid-checkbox-tick")+" "+N.toThemeProperty("jqx-checkbox-check-checked")+"'></div></span>"}else{if(ax===false){az+="<span class='"+aC+"'></span>"}else{az+="<span class='"+aC+"'><div class='"+N.toThemeProperty("jqx-tree-grid-checkbox-tick")+" "+N.toThemeProperty("jqx-checkbox-check-indeterminate")+"'></div></span>"}}}else{az+="<span class='"+aC+"'></span>"}}}if(this.icons&&!at.aggregate){var af=N.toThemeProperty("jqx-tree-grid-icon")+" "+d;if(N.rtl){var af=N.toThemeProperty("jqx-tree-grid-icon")+" "+N.toThemeProperty("jqx-tree-grid-icon-rtl")+" "+d}var aA=N.toThemeProperty("jqx-tree-grid-icon-size")+" "+d;var f=h.icon;if(a.isFunction(this.icons)){h.icon=this.icons(ac,at);if(h.icon){f=true}}if(f){if(h.icon){e+="<span class='"+af+"'><img class='"+aA+"' src='"+h.icon+"'/></span>"}else{e+="<span class='"+af+"'></span>"}}}var ad=N.autoRowHeight&&o===1&&M.autoCellHeight?" "+N.toTP("jqx-grid-cell-wrap"):"";var ai=ae+al+az+e+"<span class='"+N.toThemeProperty("jqx-tree-grid-title")+ad+"'>"+V+"</span>";if(!N.rtl){V=ai}else{V="<span class='"+N.toThemeProperty("jqx-tree-grid-title")+ad+"'>"+V+"</span>"+e+az+al+ae}}if(m>0&&O&&P>=m){if(at[J.level]<m){av+="padding-left: 5px; border-left-width: 0px;";aj+="padding-left: 5px; border-left-width: 0px;";V="<span style='visibility: hidden;'>-</span>"}}av+='" class="'+aI+'">';av+=V;av+="</td>";aj+='" class="'+aI+'">';aj+=V;aj+="</td>";if(!M.pinned){n+=av;if(r){an+=aj}}else{an+=av;n+=av}if(m>0&&!O){if(at[J.level]<m&&!at.aggregate){break}}}if(ay==0){N.table[0].style.width=U+2+"px";ay=U}n+="</tr>";an+="</tr>";y+=n;W+=an;if(N.rowDetails&&!at.aggregate&&this.rowDetailsRenderer){var l='<tr data-role="row-details"><td valign="top" align="left" style="pointer-events: auto; max-width:'+aw+"px; width:"+aw+'px; overflow: hidden; border-left: none; border-right: none;" colspan="'+N.columns.records.length+'" role="gridcell"';var aI=N.toTP("jqx-cell")+" "+N.toTP("jqx-grid-cell")+" "+N.toTP("jqx-item");aI+=" "+N.toTP("jqx-details");aI+=" "+N.toTP("jqx-reset");var ah=this.rowDetailsRenderer(ac,at);if(ah){l+='" class="'+aI+'"><div style="pointer-events: auto; overflow: hidden;"><div data-role="details">'+ah+"</div></div></td></tr>";y+=l;W+=l}}}y+="</table>";W+="</table>";if(r){if(N.WinJS){MSApp.execUnsafeLocalFunction(function(){N.table.html(W+y)})}else{N.table[0].innerHTML=W+y}var aD=N.table.find("#table"+N.element.id);var aE=N.table.find("#pinnedtable"+N.element.id);aE.css("float","left");aE.css("pointer-events","none");aD.css("float","left");aE[0].style.position="absolute";aD[0].style.position="relative";aD[0].style.zIndex=aG-10;aE[0].style.zIndex=aG+10;N._table=aD;N._table[0].style.left="0px";N._pinnedTable=aE;if(O){aE[0].style.left="0px"}N._table[0].style.width=ay+"px";N._pinnedTable[0].style.width=ay+"px";if(N.rtl&&N._haspinned){N._pinnedTable[0].style.left=3-ay+parseInt(N.element.style.width)+"px"}}else{if(N.WinJS){MSApp.execUnsafeLocalFunction(function(){N.table.html(y)})}else{N.table[0].innerHTML=y}var K=N.table.find("#table"+N.element.id);N._table=K;if(a.jqx.browser.msie&&a.jqx.browser.version<10){N._table[0].style.width=ay+"px"}if(D===0){N._table[0].style.width=(2+ay)+"px"}}if(D===0){N._table[0].style.tableLayout="auto";if(N._pinnedTable){N._pinnedTable[0].style.tableLayout="auto"}}if(N.showAggregates){N._updatecolumnsaggregates()}if(N._loading&&D==0){N._arrange();this._showLoadElement()}if(N.rendered){N.rendered()}},propertyChangedHandler:function(b,c,e,d){if(b.isInitialized==undefined||b.isInitialized==false){return}if(c=="pageSizeMode"||c=="hierarchicalCheckboxes"){b._renderrows()}},checkRow:function(c,d,b){var e=this.base;var g=e._names();if(e._loading){return}var f=e.rowinfo[c];if(f){f.checked=true;f.row[g.checked]=true;if(f.originalRecord){f.originalRecord[g.checked]=true}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(f.row,f.row)}if(d!==false){e._renderrows()}e._raiseEvent("rowCheck",{key:c,row:f.row})}else{var h=this.getRow(c);if(h){e.rowinfo[c]={row:h,checked:true};e.rowinfo[c].row[g.checked]=true;if(h.originalRecord){e.rowinfo[c].originalRecord=h.originalRecord}e._raiseEvent("rowCheck",{key:c,row:h});if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(h,h)}if(d!==false){e._renderrows()}}}},checkRows:function(d,n){var e=this.base;var j=this;var i=e._names();var l=function(o){var p=new Array();var q=function(s){for(var r=0;r<s.length;r++){p.push(s[r]);if(s[r].records){q(s[r].records)}}};if(o.records){q(o.records)}return p};if(d!=null){var f=0;var c=false;var g=0;var b=function(o){for(var p=0;p<o.length;p++){var q=o[p][i.checked];if(q===undefined){q=false}if(q!=false){if(o[p][i.checked]==null){c=true}if(o[p].records){b(o[p].records)}f++}g++}};if(d.records){b(d.records)}if(d!=n){if(f==g){this.checkRow(d.uid,false,"tree")}else{if(f>0){this.indeterminateRow(d.uid,false,"tree")}else{this.uncheckRow(d.uid,false,"tree")}}}else{var k=n[i.checked];var h=l(n);a.each(h,function(){if(k===true){j.checkRow(this.uid,false,"tree")}else{if(k===false){j.uncheckRow(this.uid,false,"tree")}else{j.indeterminateRow(this.uid,false,"tree")}}})}var m=d[i.parent]?d[i.parent]:null;this.checkRows(m,n)}else{var k=n[i.checked];var h=l(n);a.each(h,function(){if(k===true){j.checkRow(this.uid,false,"tree")}else{if(k===false){j.uncheckRow(this.uid,false,"tree")}else{j.indeterminateRow(this.uid,false,"tree")}}})}},indeterminateRow:function(c,d,b){var f=this.base;var h=f._names();if(f._loading){return}var e=this;var g=f.rowinfo[c];if(g){g.checked=null;g.row[h.checked]=null;if(g.originalRecord){g.originalRecord[h.checked]=null}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(g.row,g.row)}if(d!==false){f._renderrows()}}else{var i=this.getRow(c);if(i){f.rowinfo[c]={row:i,checked:null};f.rowinfo[c].row[h.checked]=null;if(i.originalRecord){f.rowinfo[c].originalRecord=i.originalRecord}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(i,i)}if(d!==false){f._renderrows()}}}},uncheckRow:function(c,d,b){var f=this.base;var h=f._names();if(f._loading){return}var e=this;var g=f.rowinfo[c];if(g){g.checked=false;g.row[h.checked]=false;if(g.originalRecord){g.originalRecord[h.checked]=false}if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(g.row,g.row)}if(d!==false){f._renderrows()}f._raiseEvent("rowUncheck",{key:c,row:g.row})}else{var i=this.getRow(c);if(i){f.rowinfo[c]={row:i,checked:false};f.rowinfo[c].row[h.checked]=false;if(i.originalRecord){f.rowinfo[c].originalRecord=i.originalRecord}f._raiseEvent("rowUncheck",{key:c,row:i});if(b==undefined&&this.hierarchicalCheckboxes){this.checkRows(i,i)}if(d!==false){f._renderrows()}}}},expandRows:function(c){var e=this;if(!c){return}if(e.virtualModeCreateRecords){a.each(c,function(){var f=this;var g=function(){e.base._loading=false;e.expandRows(f.records)};e.base._loading=false;e.expandRow(f.uid,g)})}else{for(var d=0;d<c.length;d++){var b=c[d];e.expandRow(b.uid);e.expandRows(b.records)}}},collapseRows:function(b){if(!b){return}for(var c=0;c<b.length;c++){this.collapseRow(b[c].uid);this.collapseRows(b[c].records)}},expandAll:function(){var b=this.base;b.beginUpdate();this.expandRows(this.getRows());b.endUpdate()},collapseAll:function(){var b=this.base;b.beginUpdate();this.collapseRows(this.getRows());b.endUpdate()},expandRow:function(h,j){var d=this.base;if(d._loading){return}var e=d._names();var f=this;var b=d.rowinfo[h];if(!b){var k=this.getRow(h);if(k){d.rowinfo[h]={row:k};if(k.originalRecord){d.rowinfo[h].originalRecord=k.originalRecord}b=d.rowinfo[h]}}if(b){if(b.expanded){b.row[e.expanded]=true;return}b.expanded=true;b.row[e.expanded]=true;if(b.originalRecord){b.originalRecord[e.expanded]=true}if(this.virtualModeCreateRecords&&!b.row._loadedOnDemand){var c=function(m){b.row._loadedOnDemand=true;if(m===false){d._loading=false;f._hideLoadElement();b.leaf=true;b.row[e.leaf]=true;d._renderrows();if(j){j()}return}for(var n=0;n<m.length;n++){m[n][e.level]=b.row[e.level]+1;m[n][e.parent]=b.row;if(d.rowsByKey[m[n].uid]){d._loading=false;f._hideLoadElement();b.leaf=true;b.row[e.leaf]=true;d._renderrows();if(j){j()}throw new Error("Please, check whether you Add Records with unique ID/Key. ")}d.rowsByKey[m[n].uid]=m[n];f.virtualModeRecordCreating(m[n])}if(!b.row.records){b.row.records=m}else{b.row.records=b.row.records.concat(m)}if((!m)||(m&&m.length==0)){b.leaf=true;b.row[e.leaf]=true}if(b.originalRecord){b.originalRecord.records=m;b.originalRecord[e.expanded]=true;if(m.length==0){b.originalRecord[e.leaf]=true}}d._loading=false;f._hideLoadElement();var l=d.vScrollBar.css("visibility");d._renderrows();d._updateScrollbars();var o=l!=d.vScrollBar.css("visibility");if(d.height==="auto"||d.height===null||d.autoheight||o){d._arrange()}d._renderhorizontalscroll();if(j){j()}};if(!b.row[e.leaf]){d._loading=true;this._showLoadElement();this.virtualModeCreateRecords(b.row,c);return}}if(!d.updating()){var g=d.vScrollBar.css("visibility");d._renderrows();d._updateScrollbars();var i=g!=d.vScrollBar.css("visibility");if(d.height==="auto"||d.height===null||d.autoheight||i){d._arrange()}d._renderhorizontalscroll();d._raiseEvent("rowExpand",{row:b.row,key:h})}}},collapseRow:function(c){var d=this.base;var g=d._names();if(d._loading){return}var f=d.rowinfo[c];if(!f){var h=this.getRow(c);if(h){d.rowinfo[c]={row:h};if(h.originalRecord){d.rowinfo[c].originalRecord=h.originalRecord}f=d.rowinfo[c]}}if(f){if(!f.expanded){f.row[g.expanded]=false;return}f.expanded=false;f.row[g.expanded]=false;if(f.originalRecord){f.originalRecord[g.expanded]=false}if(!d.updating()){var b=d.vScrollBar.css("visibility");d._renderrows();d._updateScrollbars();var e=b!=d.vScrollBar.css("visibility");if(d.height==="auto"||d.height===null||d.autoheight||e){d._arrange()}d._renderhorizontalscroll();d._raiseEvent("rowCollapse",{row:f.row,key:c})}}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxtreemap.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxtreemap.js
new file mode 100644 (file)
index 0000000..abd0812
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(c){c.jqx.jqxWidget("jqxTreeMap","",{});var d={};d["default"]=(function(){function g(r,s,q,p){this.height=p;this.width=q;this.xoffset=r;this.yoffset=s;this.shortestEdge=function(){return Math.min(this.height,this.width)};this.getCoordinates=function(y){var x=[],v=this.xoffset,z=this.yoffset,w=j(y)/this.height,u=j(y)/this.width;if(this.width>=this.height){for(var t=0;t<y.length;t+=1){x.push([v,z,v+w,z+y[t]/w]);z=z+y[t]/w}}else{for(var t=0;t<y.length;t+=1){x.push([v,z,v+y[t]/u,z+u]);v=v+y[t]/u}}return x};this.cutArea=function(w){var y;if(this.width>=this.height){var x=w/this.height,t=this.width-x;y=new g(this.xoffset+x,this.yoffset,t,this.height)}else{var v=w/this.width,u=this.height-v;y=new g(this.xoffset,this.yoffset+v,this.width,u)}return y}}function o(t,r){var s=[],q=j(t),u=r/q;for(var p=0;p<t.length;p+=1){s[p]=t[p]*u}return s}function e(s,q,x,u,p){u=(typeof u==="undefined")?0:u;p=(typeof p==="undefined")?0:p;var v=[],w,t=[];if(h(s[0])){for(var r=0;r<s.length;r+=1){v[r]=i(s[r])}w=m(v,q,x,u,p);for(var r=0;r<s.length;r+=1){t.push(e(s[r],w[r][2]-w[r][0],w[r][3]-w[r][1],w[r][0],w[r][1]))}}else{t=m(s,q,x,u,p)}return t}function m(s,r,p,t,u){t=(typeof t==="undefined")?0:t;u=(typeof u==="undefined")?0:u;var q=f(o(s,r*p),[],new g(t,u,r,p),[]);return n(q)}function n(r){var s=[];for(var q=0;q<r.length;q+=1){for(var p=0;p<r[q].length;p+=1){s.push(r[q][p])}}return s}function f(u,t,q,p){var s,r,v;if(u.length===0){p.push(q.getCoordinates(t));return}s=q.shortestEdge();r=u[0];if(l(t,r,s)){t.push(r);f(u.slice(1),t,q,p)}else{v=q.cutArea(j(t),p);p.push(q.getCoordinates(t));f(u,[],v,p)}return p}function l(t,q,r){var s;if(t.length===0){return true}s=t.slice();s.push(q);var u=k(t,r),p=k(s,r);return u>=p}function k(t,s){var q=Math.min.apply(Math,t),p=Math.max.apply(Math,t),r=j(t);return Math.max(Math.pow(s,2)*p/Math.pow(r,2),Math.pow(r,2)/(Math.pow(s,2)*q))}function h(p){return p&&p.constructor===Array}function j(p){var r=0;for(var q=0;q<p.length;q+=1){r+=p[q]}return r}function i(p){var r=0;if(h(p[0])){for(var q=0;q<p.length;q+=1){r+=i(p[q])}}else{r=j(p)}return r}return e}());function b(g,l,i,h,j,f,k,e){this.label=g;this.value=l;this.parent=i;this.children=h;this.area=j||null;this.color=f;this.data=k;this.record=e}var a={HORIZONTAL:0,VERTICAL:1,BOTH:2};c.extend(c.jqx._jqxTreeMap.prototype,{defineInstance:function(){var e={width:600,height:600,renderCallbacks:{},legendScaleCallback:function(f){return f},hoverEnabled:false,selectionEnabled:true,singleSelection:true,showLegend:true,legendLabel:"Legend",headerHeight:25,colorRange:100,layout:"default",source:[],displayMember:null,valueMember:null,colorMode:"parent",baseColor:"#C2EEFF",legendPosition:{x:0,y:0},colorRanges:[{color:"#aa9988",min:0,max:10},{color:"#ccbbcc",min:11,max:50},{color:"#000",min:50,max:100}],_root:[]};c.extend(true,this,e);return e},createInstance:function(){this.render()},render:function(){this.host.addClass(this.toThemeProperty("jqx-widget"));this._destroy();this._root=new b(undefined,0,null,[],this.host);var e=function(h,k){var n={},l;var m=null;for(var j=0;j<h.length;j+=1){if(h[j].items){m=true;break}}var f=new Array();if(m){var g=function(v,s){for(var q=0;q<v.length;q+=1){v[q].parent=s;if(!v[q].data){v[q].data=v[q].value}if(v[q].value==null){v[q].value=0}if(isNaN(parseFloat(v[q].value))){var w=v[q].value.toString();var u="";for(var p=0;p<w.length;p++){var r=w.substring(p,p+1);if(r.match(/^[0-9]+$/)!=null||r=="."){u+=r}}v[q].value=new Number(u)}else{v[q].value=parseFloat(v[q].value)}f.push(v[q]);if(v[q].items){g(v[q].items,v[q].label)}}};g(h,null);h=f}for(var j=0;j<h.length;j+=1){l=h[j];if(l.value){if(l.parent!=null){if(!n[l.parent]){n[l.parent]=0}n[l.parent]+=l.value}}}for(var j=0;j<h.length;j+=1){l=h[j];if(n[l.label]!==undefined){l.value=n[l.label]}}k._buildTree(h,k._root);k._dataList=k._buildList();k._setStyles();var o=d["default"];if(k.layout==="simple"){o=d.simple}k._render(k._root,o);k._renderLegend()};if(c.jqx.dataAdapter&&this.source!=null&&this.source._source){this.dataBind(this.source,e);return}e(this.source,this);this._trigger("bindingComplete")},dataBind:function(e,m){this.records=new Array();var h=e._source?true:false;var f=new c.jqx.dataAdapter(e,{autoBind:false});if(h){f=e;e=e._source}var g=function(n){if(e.type!=undefined){f._options.type=e.type}if(e.formatdata!=undefined){f._options.formatData=e.formatdata}if(e.contenttype!=undefined){f._options.contentType=e.contenttype}if(e.async!=undefined){f._options.async=e.async}};var j=function(p,o){p.records=f.records;var q=new Array();for(var n=0;n<p.records.length;n++){var r=p.records[n];if(p.displayMember){r.label=r[p.displayMember]}if(p.valueMember){r.value=r[p.valueMember]}r.record=r;q.push(r)}p._trigger("bindingComplete");m(q,p)};g(this);var k=this;switch(e.datatype){case"local":case"array":default:if(e.localdata!=null){f.unbindBindingUpdate(this.element.id);f.dataBind();j(this);f.bindBindingUpdate(this.element.id,function(n){j(k,n)})}break;case"json":case"jsonp":case"xml":case"xhtml":case"script":case"text":case"csv":case"tab":if(e.localdata!=null){f.unbindBindingUpdate(this.element.id);f.dataBind();j(this);f.bindBindingUpdate(this.element.id,function(){j(k)});return}var l={};if(f._options.data){c.extend(f._options.data,l)}else{if(e.data){c.extend(l,e.data)}f._options.data=l}var i=function(){j(k)};f.unbindDownloadComplete(k.element.id);f.bindDownloadComplete(k.element.id,i);f.dataBind()}},_destroy:function(){this.host.children().remove()},destroy:function(){this.host.remove()},refresh:function(e){if(!e){this._refresh()}},_refresh:function(){this.render()},_setStyles:function(){this.host.css({position:"relative",width:this.width,height:this.height});var e=false;if(this.width!=null&&this.width.toString().indexOf("%")!=-1){e=true}if(this.height!=null&&this.height.toString().indexOf("%")!=-1){e=true}var f=this;c.jqx.utilities.resize(this.host,function(){if(f.resizeTimer){clearTimeout(f.resizeTimer)}f.resizeTimer=setTimeout(function(){f.performLayout()},50)})},resize:function(f,e){this.width=f;this.height=e;this.performLayout()},performLayout:function(){var e=d["default"];this.clearSelection();this._layout(this._root,e)},_getValues:function(g){var e=[];for(var f=0;f<g.length;f+=1){e.push(g[f].value)}return e},_isColor:function(e){if(!e){return false}var f=this._colorEvaluator;if(f._isRgb(e)||f._isHex(e)){return true}return false},_colorEvaluator:{_toRgb:function(f){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(f);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null},_toHex:function(f){var i=f.r.toString(16),h=f.g.toString(16),e=f.b.toString(16);i=i.length===1?"0"+i:i;h=h.length===1?"0"+h:h;e=e.length===1?"0"+e:e;return"#"+i+h+e},_isRgb:function(e){return(/(rgb|rgba)\s*\(\s*\d+\s*(,\s*\d+\s*){2}(,\d+\.\d+)?\)(;?)/i).test(e)},_isHex:function(e){return(/^(#([0-9A-F]{3})([0-9A-F]{3})?)$/i).test(e)},getColorByValue:function(n,j,k){var o=this._colorEvaluator,m,l,e,f,g,j;if(o._isRgb(k)){k=o._toHex(k)}k=o._toRgb(k);e=j.length;m=-Infinity;for(var h=0;h<e;h+=1){if(m<j[h].value){m=j[h].value}}l=n/m;f=Math.round(l*this.colorRange);g=o._toHex({r:Math.max(k.r-f,0),g:Math.max(k.g-f,0),b:Math.max(k.b-f,0)});return g},parent:function(g){var f=g.parent.color,e=this._colorEvaluator;if(!g.parent){return"#fff"}if(!f){f=this.baseColor}f=e.getColorByValue.call(this,g.value,g.parent.children,f);g.color=f;return f},autoColors:function(g){var f=this.baseColor,e=this._colorEvaluator;f=e.getColorByValue.call(this,g.value,this._dataList,f);g.color=f;return f},rangeColors:function(f){var h=f.value,g;for(var e=0;e<this.colorRanges.length;e+=1){g=this.colorRanges[e];if(g.min<h&&g.max>=h){return g.color}}return"#fff"}},_getColor:function(f){var e=f.color,g=this.colorMode;if(this._isColor(e)){return e}if(typeof this._colorEvaluator[g]==="function"){return this._colorEvaluator[g].call(this,f)}else{throw"Invalid colorMode"}},_renderRect:function(i,f){var j=c("<div/>"),e=i[2]-i[0],l=i[3]-i[1];var g=this._getColor(f);j.css({position:"absolute",left:i[0]-1,top:i[1]-1,width:e,height:l,backgroundColor:g});j.addClass(this.toThemeProperty("jqx-treemap-rectangle"));var k=this._colorEvaluator;var h={data:f.data,label:f.label,value:f.value,parent:f.parent,record:f.record,color:g,rgb:k._toRgb(g)};if(f.parent==this._root){h.parent=null}if(typeof this.renderCallbacks["*"]==="function"){var m=this.renderCallbacks["*"](j,h);if(m!==undefined){return j}}if(typeof this.renderCallbacks[f.label]==="function"){this.renderCallbacks[f.label](j,h)}else{var e=j.width()-2;j.html('<span style="max-width:'+e+'px;" class="jqx-treemap-label">'+f.label+"</span>")}return j},_centerLabel:function(g,f){var e=g[0].firstChild;e.style.position="absolute";if(f===a.HORIZONTAL||f===a.BOTH){e.style.left=(g[0].offsetWidth-e.offsetWidth)/2+"px"}if(f===a.VERTICAL||f===a.BOTH){e.style.top=(g[0].offsetHeight-e.offsetHeight)/2+"px"}},_trigger:function(g,f){var h=c.Event(g);h.args=f;return this.host.trigger(h)},_addHandlers:function(e,g){var f=this;e.bind("mouseenter",function(h){if(f.hoverEnabled){f.host.find(".jqx-treemap-rectangle").removeClass("jqx-treemap-rectangle-hover");e.addClass(f.toThemeProperty("jqx-treemap-rectangle-hover"))}f._trigger("mouseenterSector",g)});e.bind("mouseleave",function(h){if(f.hoverEnabled){e.removeClass("jqx-treemap-rectangle-hover")}f._trigger("mouseleaveSector",g)});e.bind("click",function(i){if(f.selectionEnabled){var h=c.data(this,"jqx-treemap-selected")||false;if(f.singleSelection){f.host.find(".jqx-treemap-rectangle-hover").each(function(j,k){c.data(k,"jqx-treemap-selected",false);c(k).removeClass("jqx-treemap-rectangle-hover")})}if(h){e.removeClass("jqx-treemap-rectangle-hover");h=false}else{e.addClass(f.toThemeProperty("jqx-treemap-rectangle-hover"));h=true}c.data(this,"jqx-treemap-selected",h);i.stopImmediatePropagation()}})},clearSelection:function(){this.host.find(".jqx-treemap-rectangle-hover").removeClass(this.toThemeProperty("jqx-treemap-rectangle-hover"));c.data(this,"jqx-treemap-selected",false)},_layoutArea:function(f,e){if(f.children.length&&f.children.length>0){this._centerLabel(e,a.HORIZONTAL);e.addClass(this.toThemeProperty("jqx-treemap-rectangle-parent"))}else{this._centerLabel(e,a.BOTH)}},_render:function(f,l){if(!f.children.length){return}var e=0;if(f.value){e=this.headerHeight}var n=this._getValues(f.children),g=f.area.offset(),j=l(n,f.area.width(),f.area.height()-e,0,e),k,m;for(var h=0;h<f.children.length;h+=1){k=f.children[h];m=this._renderRect(j[h],k);k.area=m;f.area.append(m);this._addHandlers(m,{label:k.label,value:k.value,color:k.color,sector:k.area,data:k.data});this._layoutArea(k,m);this._render(k,l)}},_layout:function(f,l){if(!f.children.length){return}var e=0;if(f.value){e=this.headerHeight}var n=this._getValues(f.children),g=f.area.offset(),h=l(n,f.area.width(),f.area.height()-e,0,e),m;for(var j=0;j<f.children.length;j+=1){var k=f.children[j];this._layoutRect(h[j],k);this._layoutArea(k,k.area);this._layout(k,l)}if(this.showLegend){c(".jqx-treemap-legend").remove();this._renderLegend()}},_layoutRect:function(i,f){var j=f.area,e=i[2]-i[0],l=i[3]-i[1];j.css({left:i[0]-1,top:i[1]-1,width:e,height:l});var k=this._colorEvaluator;var g=this._getColor(f);var h={data:f.data,label:f.label,value:f.value,parent:f.parent,record:f.record,color:g,rgb:k._toRgb(g)};if(f.parent==this._root){h.parent=null}if(typeof this.renderCallbacks["*"]==="function"){var m=this.renderCallbacks["*"](j,h);if(m!==undefined){return j}}if(typeof this.renderCallbacks[f.label]==="function"){this.renderCallbacks[f.label](j,h)}else{var e=j.width()-2;j.find(".jqx-treemap-label:first").css("max-width",e)}},_getBoundValues:function(){var g=this._root,f=[],k,j={},e={};j.value=g.value||Infinity;e.value=g.value||-Infinity;f.push(g);while(f.length){k=f.pop();if(j.value>k.value){j=k}if(e.value<k.value){e=k}for(var h=0;h<k.children.length;h+=1){f.push(k.children[h])}}return[j,e]},_getAutocolorRanges:function(){var l=this._getBoundValues(),g=5,e=l[1].value,j=l[0].value,f=(e-j)/g,m,k=[];for(var h=j;h<e;h+=f){m=Math.round(h);k.push({min:m,max:h+f,color:this._colorEvaluator.getColorByValue.call(this,m,this._dataList,this.baseColor)})}return k},_renderLegend:function(){if(!(/autoColors|rangeColors/).test(this.colorMode)||!this.showLegend){return}var e=this.colorRanges;if(this.colorMode==="autoColors"){e=this._getAutocolorRanges()}var f=this._renderColorLegend(e);this._renderLegendLabel(f)},_renderLegendLabel:function(f){var g=c('<tr><td colspan="'+f.find("td").length/2+'"/></tr>'),e=c('<div class="'+this.toThemeProperty("jqx-treemap-legend-label")+'" />');e.text(this.legendLabel);g.children().append(e);f.prepend(g)},_renderColorLegend:function(e){var o=c('<div class="'+this.toThemeProperty("jqx-treemap-legend")+'"/>'),q,n,r,p=function(i){return i};if(typeof this.legendScaleCallback==="function"){p=this.legendScaleCallback}var s=c('<table class="'+this.toThemeProperty("jqx-treemap-legend-table")+'"/>');o.append(s);s.append("<tr/>");o.append("<div/>");this.host.append(o);q=c(o.find("tr")[0]);n=c(o.find("div")[0]);n.addClass(this.toThemeProperty("jqx-treemap-legend-values"));var g=function(t,i){try{if(t.min<i.min){return -1}if(t.min>i.min){return 1}}catch(u){var v=u}return 0};e.sort(g);var f=Math.round(o.width()/e.length);var m=-2;var h=0;for(var k=0;k<e.length;k+=1){var j=c('<td class="'+this.toThemeProperty("jqx-treemap-legend-color")+'"/>');j.css("backgroundColor",e[k].color);q.append(j);if(k===0){var l=c('<span class="'+this.toThemeProperty("jqx-treemap-legend-max-value")+" "+this.toThemeProperty("jqx-treemap-legend-value")+'"/>');l.text(p(e[k].min));n.append(l);s.css("margin-left",l.width()/2);m+=l.width()/2;h=m}var l=c('<span class="'+this.toThemeProperty("jqx-treemap-legend-max-value")+" "+this.toThemeProperty("jqx-treemap-legend-value")+'"/>');m+=f;l.text(p(e[k].max));n.append(l);if(k==e.length-1){h+=l.width()/2;o.css("padding-right",h+5);m-=2}m-=l.width()/2;l.css("left",m);m+=l.width()/2}o.css({position:"absolute",left:this.legendPosition.x,bottom:this.legendPosition.y,visibility:(this.showLegend)?"visible":"hidden"});return o},_buildTree:function(k,f){var g=null,m,l,e=[];e.push(f);while(e.length){g=e.pop();for(var h=0;h<k.length;h+=1){l=k[h];if(l.parent===g.label||(!l.parent&&!g.label)){var j=g;m=new b(l.label,parseFloat(l.value,10),j,[],null,l.color,l.data,l.record);g.children.push(m);e.push(m)}}}return f},_buildList:function(){var f=[],e=[],h;e.push(this._root);while(e.length){h=e.pop();if(h!==this._root){f.push(h)}for(var g=0;g<h.children.length;g+=1){e.push(h.children[g])}}return f},propertyChangedHandler:function(g,e,h){if(e==="renderCallbacks"){return}if((/hoverEnabled|selectionEnabled/).test(e)){if(!h){this.host.find("jqx-treemap-rectangle-hover")}}else{if(e==="showLegend"){this.host.find("jqx-treemap-legend").toggle()}else{this._refresh()}}}})}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxvalidator.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxvalidator.js
new file mode 100644 (file)
index 0000000..1f6dec7
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxValidator","",{});a.extend(a.jqx._jqxValidator.prototype,{defineInstance:function(){var b={rules:null,scroll:true,focus:true,scrollDuration:300,scrollCallback:null,position:"right",arrow:true,animation:"fade",animationDuration:150,closeOnClick:true,onError:null,onSuccess:null,ownerElement:null,_events:["validationError","validationSuccess"],hintPositionOffset:5,_inputHint:[],rtl:false,hintType:"tooltip"};a.extend(true,this,b);return b},createInstance:function(){if(this.hintType=="label"&&this.animationDuration==150){this.animationDuration=0}this._configureInputs();this._removeEventListeners();this._addEventListeners()},destroy:function(){this._removeEventListeners();this.hide()},validate:function(q){var b=true,p,f=Infinity,j,h,c,k=[],o;this.updatePosition();var l=this;var d=0;for(var g=0;g<this.rules.length;g+=1){if(typeof this.rules[g].rule==="function"){d++}}this.positions=new Array();for(var g=0;g<this.rules.length;g+=1){var n=a(this.rules[g].input);if(typeof this.rules[g].rule==="function"){var m=function(s,r){p=s;if(false==p){b=false;var i=a(r.input);c=a(r.input);k.push(c);var t=c.offset();if(t){j=t.top;if(f>j){f=j;h=c}}}d--;if(d==0){if(typeof q==="function"){l._handleValidation(b,f,h,k);if(q){q(b)}}}};this._validateRule(this.rules[g],m)}else{p=this._validateRule(this.rules[g])}if(false==p){b=false;c=a(this.rules[g].input);k.push(c);var e=c.offset();if(e){j=e.top;if(f>j){f=j;h=c}}}}if(d==0){this._handleValidation(b,f,h,k);return b}else{return undefined}},validateInput:function(b){var e=this._getRulesForInput(b),d=true;for(var c=0;c<e.length;c+=1){if(!this._validateRule(e[c])){d=false}}return d},hideHint:function(b){var d=this._getRulesForInput(b);for(var c=0;c<d.length;c+=1){this._hideHintByRule(d[c])}},hide:function(){var c;for(var b=0;b<this.rules.length;b+=1){c=this.rules[b];this._hideHintByRule(this.rules[b])}},updatePosition:function(){var c;this.positions=new Array();for(var b=0;b<this.rules.length;b+=1){c=this.rules[b];if(c.hint){this._hintLayout(c.hint,a(c.input),c.position,c)}}},_getRulesForInput:function(b){var d=[];for(var c=0;c<this.rules.length;c+=1){if(this.rules[c].input===b){d.push(this.rules[c])}}return d},_validateRule:function(f,i){var b=a(f.input),h,e=true;var d=this;var g=function(k){if(!k){var j=d.animation;d.animation=null;if(f.hint){d._hideHintByRule(f)}if(a(b).css("display")=="none"){d._hideHintByRule(f);return}if(a(b).parents().length==0){d._hideHintByRule(f);return}h=f.hintRender.apply(d,[f.message,b]);d._hintLayout(h,b,f.position,f);d._showHint(h);f.hint=h;d._removeLowPriorityHints(f);if(i){i(false,f)}d.animation=j}else{d._hideHintByRule(f);if(i){i(true,f)}}};var c=false;if(typeof f.rule==="function"){c=f.rule.call(this,b,g);if(c==true&&i){i(true,f)}}if(typeof f.rule==="function"&&c==false){if(typeof f.hintRender==="function"&&!f.hint&&!this._higherPriorityActive(f)&&b.is(":visible")){h=f.hintRender.apply(this,[f.message,b]);this._removeLowPriorityHints(f);this._hintLayout(h,b,f.position,f);this._showHint(h);f.hint=h}e=false;if(i){i(false,f)}}else{this._hideHintByRule(f)}return e},_hideHintByRule:function(e){var c=a(e.input);var b=this,f;var d=function(){if(b.hintType!="label"){return}var g=b;if(g.position=="top"||g.position=="left"){if(c.prev().hasClass(".jqx-validator-error-label")){return}}else{if(c.next().hasClass(".jqx-validator-error-label")){return}}if(c[0].nodeName.toLowerCase()!="input"){if(c.find("input").length>0){if(c.find(".jqx-input").length>0){c.find(".jqx-input").removeClass(g.toThemeProperty("jqx-validator-error-element"))}else{if(c.is(".jqx-checkbox")){c.find(".jqx-checkbox-default").removeClass(g.toThemeProperty("jqx-validator-error-element"))}}if(c.is(".jqx-radiobutton")){c.find(".jqx-radiobutton-default").removeClass(g.toThemeProperty("jqx-validator-error-element"))}else{c.removeClass(g.toThemeProperty("jqx-validator-error-element"))}}}else{c.removeClass(g.toThemeProperty("jqx-validator-error-element"))}};if(e){f=e.hint;if(f){if(this.positions){if(this.positions[Math.round(f.offset().top)+"_"+Math.round(f.offset().left)]){this.positions[Math.round(f.offset().top)+"_"+Math.round(f.offset().left)]=null}}if(this.animation==="fade"){f.fadeOut(this.animationDuration,function(){f.remove();d()})}else{f.remove();d()}}e.hint=null}},_handleValidation:function(b,e,d,c){if(!b){this._scrollHandler(e);if(this.focus){d.focus()}this._raiseEvent(0,{invalidInputs:c});if(typeof this.onError==="function"){this.onError(c)}}else{this._raiseEvent(1);if(typeof this.onSuccess==="function"){this.onSuccess()}}},_scrollHandler:function(c){if(this.scroll){var b=this;a("html,body").animate({scrollTop:c},this.scrollDuration,function(){if(typeof b.scrollCallback==="function"){b.scrollCallback.call(b)}})}},_higherPriorityActive:function(d){var e=false,c;for(var b=this.rules.length-1;b>=0;b-=1){c=this.rules[b];if(e&&c.input===d.input&&c.hint){return true}if(c===d){e=true}}return false},_removeLowPriorityHints:function(d){var e=false,c;for(var b=0;b<this.rules.length;b+=1){c=this.rules[b];if(e&&c.input===d.input){this._hideHintByRule(c)}if(c===d){e=true}}},_getHintRuleByInput:function(b){var d;for(var c=0;c<this.rules.length;c+=1){d=this.rules[c];if(a(d.input)[0]===b[0]&&d.hint){return d}}return null},_removeEventListeners:function(){var f,b,e;for(var d=0;d<this.rules.length;d+=1){f=this.rules[d];e=f.action.split(",");b=a(f.input);for(var c=0;c<e.length;c+=1){this.removeHandler(b,a.trim(e[c])+".jqx-validator")}}},_addEventListeners:function(){var f,c;if(this.host.parents(".jqx-window").length>0){var b=this;var g=function(){b.updatePosition()};var e=this.host.parents(".jqx-window");this.addHandler(e,"closed",function(){b.hide()});this.addHandler(e,"moved",g);this.addHandler(e,"moving",g);this.addHandler(e,"resized",g);this.addHandler(e,"resizing",g);this.addHandler(a(document.parentWindow),"scroll",function(){if(b.scroll){g()}})}for(var d=0;d<this.rules.length;d+=1){f=this.rules[d];c=a(f.input);this._addListenerTo(c,f)}},_addListenerTo:function(c,h){var b=this,f=h.action.split(",");var e=false;if(this._isjQWidget(c)){e=true}for(var d=0;d<f.length;d+=1){var g=a.trim(f[d]);if(e&&(g=="blur"||g=="focus")){if(c&&c[0].nodeName.toLowerCase()!="input"){c=c.find("input")}}this.addHandler(c,g+".jqx-validator",function(i){b._validateRule(h)})}},_configureInputs:function(){var b,d;this.rules=this.rules||[];for(var c=0;c<this.rules.length;c+=1){this._handleInput(c)}},_handleInput:function(b){var c=this.rules[b];if(!c.position){c.position=this.position}if(!c.message){c.message="Validation Failed!"}if(!c.action){c.action="blur"}if(!c.hintRender){c.hintRender=this._hintRender}if(!c.rule){c.rule=null}else{this._handleRule(c)}},_handleRule:function(f){var c=f.rule,e,d,b=false;if(typeof c==="string"){if(c.indexOf("=")>=0){c=c.split("=");d=c[1].split(",");c=c[0]}e=this["_"+c];if(e){f.rule=function(g,h){return e.apply(this,[g].concat(d))}}else{b=true}}else{if(typeof c!=="function"){b=true}else{f.rule=c}}if(b){throw new Error("Wrong parameter!")}},_required:function(b){switch(this._getType(b)){case"textarea":case"password":case"jqx-input":case"text":var d=a.data(b[0]);if(d.jqxMaskedInput){var e=b.jqxMaskedInput("promptChar"),c=b.jqxMaskedInput("value");return c&&c.indexOf(e)<0}else{if(d.jqxNumberInput){return b.jqxNumberInput("inputValue")!==""}else{if(d.jqxDateTimeInput){return true}else{return a.trim(b.val())!==""}}}case"checkbox":return b.is(":checked");case"radio":return b.is(":checked");case"div":if(b.is(".jqx-checkbox")){return b.jqxCheckBox("checked")}if(b.is(".jqx-radiobutton")){return b.jqxRadioButton("checked")}return false}return false},_notNumber:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/\d/;return !c.test(d)})},_startWithLetter:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/\d/;return !c.test(d.substring(0,1))})},_number:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=new Number(d);return !isNaN(c)&&isFinite(c)})},_phone:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/^\(\d{3}\)(\d){3}-(\d){4}$/;return c.test(d)})},_length:function(c,d,b){return this._minLength(c,d)&&this._maxLength(c,b)},_maxLength:function(c,b){b=parseInt(b,10);return this._validateText(c,function(d){return d.length<=b})},_minLength:function(c,b){b=parseInt(b,10);return this._validateText(c,function(d){return d.length>=b})},_email:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return c.test(d)})},_zipCode:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/^(^\d{5}$)|(^\d{5}-\d{4}$)|(\d{3}-\d{2}-\d{4})$/;return c.test(d)})},_ssn:function(b){return this._validateText(b,function(d){if(d==""){return true}var c=/\d{3}-\d{2}-\d{4}/;return c.test(d)})},_validateText:function(b,d){var c;if(this._isTextInput(b)){if(this._isjQWidget(b)){if(b.find("input").length>0){c=b.find("input").val()}else{c=b.val()}}else{c=b.val()}return d(c)}return false},_isjQWidget:function(b){var c=a.data(b[0]);if(c.jqxMaskedInput||c.jqxNumberInput||c.jqxDateTimeInput){return true}return false},_isTextInput:function(b){var c=this._getType(b);return c==="text"||c==="textarea"||c==="password"||b.is(".jqx-input")},_getType:function(c){if(!c[0]){return}var b=c[0].tagName.toLowerCase(),d;if(b==="textarea"){return"textarea"}else{if(c.is(".jqx-input")){return"jqx-input"}else{if(b==="input"){d=a(c).attr("type")?a(c).attr("type").toLowerCase():"text";return d}}}return b},_hintRender:function(e,c){if(this.hintType=="label"){var f=a('<label class="'+this.toThemeProperty("jqx-validator-error-label")+'"></label>');f.html(e);var d=this;if(this.closeOnClick){f.click(function(){d.hideHint(c.selector)})}if(this.position=="left"||this.position=="top"){f.insertBefore(a(c))}else{f.insertAfter(a(c))}return f}var f=a('<div class="'+this.toThemeProperty("jqx-validator-hint")+' jqx-rc-all"></div>'),b=this;f.html(e);if(this.closeOnClick){f.click(function(){b.hideHint(c.selector)})}if(this.ownerElement==null){f.appendTo(document.body)}else{if(this.ownerElement.innerHTML){f.appendTo(a(this.ownerElement))}else{f.appendTo(this.ownerElement)}}return f},_hintLayout:function(h,c,b,f){if(this._hintRender===f.hintRender){var i;i=this._getPosition(c,b,h,f);if(this.hintType=="label"){var e="2px";if(this.position=="left"||this.position=="top"){e="-2px"}if(c[0].nodeName.toLowerCase()!="input"){if(c.find("input").length>0){if(c.find(".jqx-input").length>0){c.find(".jqx-input").addClass(this.toThemeProperty("jqx-validator-error-element"))}else{if(c.is(".jqx-checkbox")){c.find(".jqx-checkbox-default").addClass(this.toThemeProperty("jqx-validator-error-element"))}}if(c.is(".jqx-radiobutton")){c.find(".jqx-radiobutton-default").addClass(this.toThemeProperty("jqx-validator-error-element"))}else{c.addClass(this.toThemeProperty("jqx-validator-error-element"))}}}else{c.addClass(this.toThemeProperty("jqx-validator-error-element"))}var d=a("<span></span>");d.addClass(this.toThemeProperty("jqx-validator-hint"));d.html(h.text());d.appendTo(a(document.body));var g=d.outerWidth();d.remove();h.css({position:"relative",left:a(c).css("margin-left"),width:a(c).width(),top:e});if(b=="center"){h.css("width",g);h.css("left","0px");h.css("margin-left","auto");h.css("margin-right","auto")}return}h.css({position:"absolute",left:i.left,top:i.top});if(this.arrow){this._addArrow(c,h,b,i)}}},_showHint:function(b){if(b){if(this.animation==="fade"){b.fadeOut(0);b.fadeIn(this.animationDuration)}}},_getPosition:function(i,f,d,g){var e=i.offset(),h,c;var b=i.outerWidth();var j=i.outerHeight();if(this.rtl&&f.indexOf("left")>=0){f="right"}if(this.rtl&&f.indexOf("right")>=0){f="left"}if(this.ownerElement!=null){e={left:0,top:0};e.top=parseInt(e.top)+i.position().top;e.left=parseInt(e.left)+i.position().left}if(g&&g.hintPositionRelativeElement){var k=a(g.hintPositionRelativeElement);e=k.offset();b=k.width();j=k.height()}if(f.indexOf("top")>=0){h=e.top-j}else{if(f.indexOf("bottom")>=0){h=e.top+d.outerHeight()+this.hintPositionOffset+5}else{h=e.top}}if(f.indexOf("center")>=0){c=e.left+this.hintPositionOffset+(b-d.outerWidth())/2}else{if(f.indexOf("left")>=0){c=e.left-d.outerWidth()-this.hintPositionOffset}else{if(f.indexOf("right")>=0){c=e.left+b+this.hintPositionOffset}else{c=e.left+this.hintPositionOffset}}}if(f.indexOf(":")>=0){f=f.split(":")[1].split(",");c+=parseInt(f[0],10);h+=parseInt(f[1],10)}if(!this.positions){this.positions=new Array()}if(this.positions[Math.round(h)+"_"+Math.round(c)]){if(this.positions[Math.round(h)+"_"+Math.round(c)].top==h){h+=i.outerHeight()}}this.positions[Math.round(h)+"_"+Math.round(c)]={left:c,top:h};return{left:c,top:h}},_addArrow:function(j,e,g,k){var l=a('<div class="'+this.toThemeProperty("jqx-validator-hint-arrow")+'"></div>'),d,i;if(this.rtl&&g.indexOf("left")>=0){g="right"}if(this.rtl&&g.indexOf("right")>=0){g="left"}e.children(".jqx-validator-hint-arrow").remove();e.append(l);var c=l.outerHeight(),f=l.outerWidth(),h=e.outerHeight(),b=e.outerWidth();this._addImage(l);if(g.indexOf("top")>=0){i=h-c}else{if(g.indexOf("bottom")>=0){i=-c}else{i=(h-c)/2-c/2}}if(g.indexOf("center")>=0){d=(b-f)/2}else{if(g.indexOf("left")>=0){d=b-f/2-1}else{if(g.indexOf("right")>=0){d=-f/2}}}if(g.indexOf("topright")>=0||g.indexOf("bottomright")>=0){d=0}if(g.indexOf("topleft")>=0||g.indexOf("bottomleft")>=0){d=b-f}l.css({position:"absolute",left:d,top:i})},_addImage:function(b){var c=b.css("background-image");c=c.replace('url("',"");c=c.replace('")',"");c=c.replace("url(","");c=c.replace(")","");b.css("background-image","none");b.append('<img src="'+c+'" alt="Arrow" style="position: relative; top: 0px; left: 0px; width: '+b.width()+"px; height: "+b.height()+'px;" />')},_raiseEvent:function(b,d){var c=a.Event(this._events[b]);c.args=d;return this.host.trigger(c)},propertyChangedHandler:function(b,c,e,d){if(c==="rules"){this._configureInputs();this._removeEventListeners();this._addEventListeners()}}})})(jqxBaseFramework);
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/jqxwindow.js b/wrt/wrt_support/sample/launcher/jqwidgets/jqxwindow.js
new file mode 100644 (file)
index 0000000..235de8a
--- /dev/null
@@ -0,0 +1,7 @@
+/*\r
+jQWidgets v3.9.0 (2015-Oct)\r
+Copyright (c) 2011-2015 jQWidgets.\r
+License: http://jqwidgets.com/license/\r
+*/\r
+\r
+(function(a){a.jqx.jqxWidget("jqxWindow","",{});a.extend(a.jqx._jqxWindow.prototype,{defineInstance:function(){var e={height:"auto",width:200,minHeight:50,maxHeight:600,minWidth:50,maxWidth:800,showCloseButton:true,disabled:false,autoOpen:true,keyboardCloseKey:"esc",title:"",content:"",draggable:true,resizable:true,animationType:"fade",closeAnimationDuration:250,showAnimationDuration:250,isModal:false,position:"center",closeButtonSize:16,closeButtonAction:"hide",modalOpacity:0.3,dragArea:null,okButton:null,cancelButton:null,dialogResult:{OK:false,Cancel:false,None:true},collapsed:false,showCollapseButton:false,collapseAnimationDuration:150,collapseButtonSize:16,rtl:false,keyboardNavigation:true,headerHeight:null,_events:["created","closed","moving","moved","open","collapse","expand","open","close","resize"],initContent:null,enableResize:true,restricter:null,autoFocus:true,closing:null,_invalidArgumentExceptions:{invalidHeight:"Invalid height!",invalidWidth:"Invalid width!",invalidMinHeight:"Invalid minHeight!",invalidMaxHeight:"Invalid maxHeight!",invalidMinWidth:"Invalid minWidth!",invalidMaxWidth:"Invalid maxWidth",invalidKeyCode:"Invalid keyCode!",invalidAnimationType:"Invalid animationType!",invalidCloseAnimationDuration:"Invalid closeAnimationDuration!",invalidShowAnimationDuration:"Invalid showAnimationDuration!",invalidPosition:"Invalid position!",invalidCloseButtonSize:"Invalid closeButtonSize!",invalidCollapseButtonSize:"Invalid collapseButtonSize!",invalidCloseButtonAction:"Invalid cluseButtonAction!",invalidModalOpacity:"Invalid modalOpacity!",invalidDragArea:"Invalid dragArea!",invalidDialogResult:"Invalid dialogResult!",invalidIsModal:"You can have just one modal window!"},_enableResizeCollapseBackup:null,_enableResizeBackup:undefined,_heightBeforeCollapse:null,_minHeightBeforeCollapse:null,_mouseDown:false,_isDragging:false,_rightContentWrapper:null,_leftContentWrapper:null,_headerContentWrapper:null,_closeButton:null,_collapseButton:null,_title:null,_content:null,_mousePosition:{},_windowPosition:{},_modalBackground:null,_SCROLL_WIDTH:21,_visible:true,modalBackgroundZIndex:12990,modalZIndex:18000,zIndex:9001,_touchEvents:{mousedown:a.jqx.mobile.getTouchEventName("touchstart"),mouseup:a.jqx.mobile.getTouchEventName("touchend"),mousemove:a.jqx.mobile.getTouchEventName("touchmove"),mouseenter:"mouseenter",mouseleave:"mouseleave",click:a.jqx.mobile.getTouchEventName("touchstart")}};a.extend(true,this,e);return e},createInstance:function(){this.host.attr("role","dialog");this.host.removeAttr("data-bind");this.host.detach();a(document.body).append(this.host);var f=this;var g=function(){var i=parseInt(a(f.restricter).css("padding-top"));var h=parseInt(a(f.restricter).css("padding-left"));var k=parseInt(a(f.restricter).css("padding-bottom"));var m=parseInt(a(f.restricter).css("padding-right"));var l=a(f.restricter).coord();f.dragArea={left:h+l.left,top:i+l.top,width:1+m+a(f.restricter).width(),height:1+k+a(f.restricter).height()}};if(this.restricter){g()}if(this.restricter){this.addHandler(a(window),"resize."+this.element.id,function(){g()});this.addHandler(a(window),"orientationchanged."+this.element.id,function(){g()});this.addHandler(a(window),"orientationchange."+this.element.id,function(){g()})}this._isTouchDevice=a.jqx.mobile.isTouchDevice();this._validateProperties();this._createStructure();this._refresh();if(!this.autoOpen){this.host.css("display","none")}if(a.jqx.browser.msie){this.host.addClass(this.toThemeProperty("jqx-noshadow"))}if(!this.isModal){this._fixWindowZIndex()}this._setStartupSettings();this._positionWindow();this._raiseEvent(0);if(this.autoOpen){this._performLayout();var e=this;if(this.isModal){this._fixWindowZIndex("modal-show")}if(e.initContent){e.initContent();e._contentInitialized=true}this._raiseEvent(7);this._raiseEvent(9)}},refresh:function(){this._performLayout()},_setStartupSettings:function(){if(this.disabled){this.disable()}if(this.collapsed){this.collapsed=false;this.collapse(0)}if(!this.autoOpen){this.hide(null,0.001,true);this._visible=false}if(this.title!==null&&this.title!==""){this.setTitle(this.title)}if(this.content!==null&&this.content!==""){this.setContent(this.content)}this.title=this._headerContentWrapper.html();this.content=this._content.html()},_fixWindowZIndex:function(m){var e=a.data(document.body,"jqxwindows-list")||[],n=this.zIndex,h;if(!this.isModal){if(this._indexOf(this.host,e)<0){e.push(this.host)}a.data(document.body,"jqxwindows-list",e);if(e.length>1){var f=e[e.length-2];n=parseInt(f.css("z-index"),10)+1}}else{if(e){e=this._removeFromArray(this.host,e);a.data(document.body,"jqxwindows-list",e)}var g=a.data(document.body,"jqxwindows-modallist");if(!g){if(m=="modal-show"){var k=new Array();k.push(this.host);a.data(document.body,"jqxwindows-modallist",k);g=k}else{a.data(document.body,"jqxwindows-modallist",new Array());g=new Array()}}else{if(m=="modal-show"){g.push(this.host)}else{var i=g.indexOf(this.host);if(i!=-1){g.splice(i,1)}}}n=this.modalZIndex;var l=this;a.each(g,function(q){if(this.data()){if(this.data().jqxWindow){var o=this.data().jqxWindow.instance;o._modalBackground.css("z-index",n);o.host.css("z-index",n+1);n+=2}}});a.data(document.body,"jqxwindow-modal",this.host);return}this.host.css("z-index",n);this._sortByStyle("z-index",e)},_validateProperties:function(){try{this._validateSize();this._validateAnimationProperties();this._validateInteractionProperties();this._validateModalProperties();if(!this.position){throw new Error(this._invalidArgumentExceptions.invalidPosition)}if(isNaN(this.closeButtonSize)||parseInt(this.closeButtonSize)<0){throw new Error(this._invalidArgumentExceptions.invalidCloseButtonSize)}if(isNaN(this.collapseButtonSize)||parseInt(this.collapseButtonSize)<0){throw new Error(this._invalidArgumentExceptions.invalidCollapseButtonSize)}}catch(e){alert(e)}},_validateModalProperties:function(){if(this.modalOpacity<0||this.modalOpacity>1){throw new Error(this._invalidArgumentExceptions.invalidModalOpacity)}if(this.isModal&&!this._singleModalCheck()){throw new Error(this._invalidArgumentExceptions.invalidIsModal)}},_validateSize:function(){this._validateSizeLimits();if(this.height!=="auto"&&isNaN(parseInt(this.height))){throw new Error(this._invalidArgumentExceptions.invalidHeight)}if(this.width!=="auto"&&isNaN(parseInt(this.width))){throw new Error(this._invalidArgumentExceptions.invalidWidth)}if(this.height!=="auto"&&this.height<this.minHeight){this.height=this.minHeight}if(this.width<this.minWidth){this.width=this.minWidth}if(this.height!=="auto"&&this.height>this.maxHeight){this.height=this.maxHeight}if(this.width>this.maxWidth){this.width=this.maxWidth}if(this.dragArea===null){return}if(this.dragArea&&((this.dragArea.height!==null&&this.host.height()>this.dragArea.height)||(parseInt(this.height,10)>this.dragArea.height))||(this.dragArea.width!==null&&this.width>this.dragArea.width)||(this.maxHeight>this.dragArea.height||this.maxWidth>this.dragArea.width)){}},_validateSizeLimits:function(){if(this.maxHeight==null){this.maxHeight=9999}if(this.minWidth==null){this.minWidth=0}if(this.maxWidth==null){this.maxWidth=9999}if(this.minHeight==null){this.minHeight=0}if(isNaN(parseInt(this.minHeight))){throw new Error(this._invalidArgumentExceptions.invalidMinHeight)}if(isNaN(parseInt(this.maxHeight))){throw new Error(this._invalidArgumentExceptions.invalidMaxHeight)}if(isNaN(parseInt(this.minWidth))){throw new Error(this._invalidArgumentExceptions.invalidMinWidth)}if(isNaN(parseInt(this.maxWidth))){throw new Error(this._invalidArgumentExceptions.invalidMaxWidth)}if(this.minHeight>this.maxHeight){throw new Error(this._invalidArgumentExceptions.invalidMinHeight)}if(this.minWidth>this.maxWidth){throw new Error(this._invalidArgumentExceptions.invalidMinWidth)}},_validateAnimationProperties:function(){if(this.animationType!=="fade"&&this.animationType!=="slide"&&this.animationType!=="combined"&&this.animationType!=="none"){throw new Error(this._invalidArgumentExceptions.invalidAnimationType)}if(isNaN(parseInt(this.closeAnimationDuration),10)||this.closeAnimationDuration<0){throw new Error(this._invalidArgumentExceptions.invalidCloseAnimationDuration)}if(isNaN(parseInt(this.showAnimationDuration),10)||this.showAnimationDuration<0){throw new Error(this._invalidArgumentExceptions.invalidShowAnimationDuration)}},_validateInteractionProperties:function(){if(parseInt(this.keyCode,10)<0||parseInt(this.keyCode,10)>130&&this.keyCode!=="esc"){throw new Error(this._invalidArgumentExceptions.invalidKeyCode)}if(this.dragArea!==null&&(typeof this.dragArea.width==="undefined"||typeof this.dragArea.height==="undefined"||typeof this.dragArea.left==="undefined"||typeof this.dragArea.top==="undefined")){throw new Error(this._invalidArgumentExceptions.invalidDragArea)}if(!this.dialogResult||(!this.dialogResult.OK&&!this.dialogResult.Cancel&&!this.dialogResult.None)){throw new Error(this._invalidArgumentExceptions.invalidDialogResult)}if(this.closeButtonAction!=="hide"&&this.closeButtonAction!=="close"){throw new Error(this._invalidArgumentExceptions.invalidCloseButtonAction)}},_singleModalCheck:function(){var e=a.data(document.body,"jqxwindows-list")||[],f=e.length;while(f){f-=1;if(a(e[f].attr("id")).length>0){if(a(e[f].attr("id")).jqxWindow("isModal")){return false}}}return true},_createStructure:function(){var e=this.host.children("DIV");if(e.length===1){this._header=a("<div>"+this.host.attr("caption")+"</div>");this.host.prepend(this._header);this.host.attr("caption","");this._content=a(e[0])}else{if(e.length===2){this._header=a(e[0]);this._content=a(e[1])}else{throw new Error("Invalid structure!")}}},_refresh:function(){this._render();this._addStyles();this._performLayout();this._removeEventHandlers();this._addEventHandlers();this._initializeResize()},_render:function(){this._addHeaderWrapper();this._addCloseButton();this._addCollapseButton();this._removeModal();this._makeModal()},_addHeaderWrapper:function(){if(!this._headerContentWrapper){this._header.wrapInner('<div style="float:left;"></div>');this._headerContentWrapper=this._header.children(0);if(this.headerHeight!==null){this._header.height(this.headerHeight)}}},_addCloseButton:function(){if(!this._closeButton){this._closeButtonWrapper=a('<div class="'+this.toThemeProperty("jqx-window-close-button-background")+'"></div>');this._closeButton=a('<div style="width: 100%; height: 100%;" class="'+this.toThemeProperty("jqx-window-close-button")+" "+this.toThemeProperty("jqx-icon-close")+'"></div>');this._closeButtonWrapper.append(this._closeButton);this._header.append(this._closeButtonWrapper)}},_addCollapseButton:function(){if(!this._collapseButton){this._collapseButtonWrapper=a('<div class="'+this.toThemeProperty("jqx-window-collapse-button-background")+'"></div>');this._collapseButton=a('<div style="width: 100%; height: 100%;" class="'+this.toThemeProperty("jqx-window-collapse-button")+" "+this.toThemeProperty("jqx-icon-arrow-up")+'"></div>');this._collapseButtonWrapper.append(this._collapseButton);this._header.append(this._collapseButtonWrapper)}},_removeModal:function(){if(!this.isModal&&typeof this._modalBackground==="object"&&this._modalBackground!==null&&this._modalBackground.length>=1){a("."+this.toThemeProperty("jqx-window-modal")).remove();this._modalBackground=null}},focus:function(){try{this.host.focus();var f=this;setTimeout(function(){f.host.focus()},10)}catch(e){}},_makeModal:function(){if(this.isModal&&(!this._modalBackground||this._modalBackground.length<1)){var g=a.data(document.body,"jqxwindows-list");if(g){this._removeFromArray(this.host,g);a.data(document.body,"jqxwindows-list",g)}this._modalBackground=a("<div></div>");this._modalBackground.addClass(this.toThemeProperty("jqx-window-modal"));this._setModalBackgroundStyles();a(document.body).append(this._modalBackground);this.addHandler(this._modalBackground,this._getEvent("click"),function(){return false});var f=this;var e=function(i,k){var h=a(i).parents().get();for(j=0;j<h.length;j++){if(a(h[j]).is(k)){return true}}return false};this.addHandler(this._modalBackground,"mouseup",function(h){f._stopResizing(f);h.preventDefault()});this.addHandler(this._modalBackground,"mousedown",function(i){var h=f._getTabbables();if(h.length>0){h[0].focus(1);setTimeout(function(){h[0].focus(1)},100)}i.preventDefault();return false});this.addHandler(a(document),"keydown.window"+this.element.id,function(l){if(l.keyCode!==9){return}var h=a.data(document.body,"jqxwindows-modallist");if(h.length>1){if(h[h.length-1][0]!=f.element){return}}var k=f._getTabbables();var m=null;var i=null;if(k.length>0){m=k[0];i=k[k.length-1]}if(l.target==f.element){return}if(m==null){return}if(!e(l.target,f.host)){m.focus(1);return false}if(l.target===i&&!l.shiftKey){m.focus(1);return false}else{if(l.target===m&&l.shiftKey){i.focus(1);return false}}})}},_addStyles:function(){this.host.addClass(this.toThemeProperty("jqx-rc-all"));this.host.addClass(this.toThemeProperty("jqx-window"));this.host.addClass(this.toThemeProperty("jqx-popup"));if(a.jqx.browser.msie){this.host.addClass(this.toThemeProperty("jqx-noshadow"))}this.host.addClass(this.toThemeProperty("jqx-widget"));this.host.addClass(this.toThemeProperty("jqx-widget-content"));this._header.addClass(this.toThemeProperty("jqx-window-header"));this._content.addClass(this.toThemeProperty("jqx-window-content"));this._header.addClass(this.toThemeProperty("jqx-widget-header"));this._content.addClass(this.toThemeProperty("jqx-widget-content"));this._header.addClass(this.toThemeProperty("jqx-disableselect"));this._header.addClass(this.toThemeProperty("jqx-rc-t"));this._content.addClass(this.toThemeProperty("jqx-rc-b"));if(!this.host.attr("tabindex")){this.element.tabIndex=0;this.host.children().css("tab-index",0)}this.host.attr("hideFocus","true").css("outline","none")},_performHeaderLayout:function(){this._handleHeaderButtons();this._header.css("position","relative");if(this.rtl){this._headerContentWrapper.css("direction","rtl");this._headerContentWrapper.css("float","right")}else{this._headerContentWrapper.css("direction","ltr");this._headerContentWrapper.css("float","left")}this._performHeaderCloseButtonLayout();this._performHeaderCollapseButtonLayout();this._centerElement(this._headerContentWrapper,this._header,"y","margin");if(this.headerHeight){this._centerElement(this._closeButtonWrapper,this._header,"y","margin");this._centerElement(this._collapseButtonWrapper,this._header,"y","margin")}},_handleHeaderButtons:function(){if(!this._closeButtonWrapper){return}if(!this.showCloseButton){this._closeButtonWrapper.css("visibility","hidden")}else{this._closeButtonWrapper.css("visibility","visible");this._closeButtonWrapper.width(this.closeButtonSize);this._closeButtonWrapper.height(this.closeButtonSize)}if(!this.showCollapseButton){this._collapseButtonWrapper.css("visibility","hidden")}else{this._collapseButtonWrapper.css("visibility","visible");this._collapseButtonWrapper.width(this.collapseButtonSize);this._collapseButtonWrapper.height(this.collapseButtonSize)}},_performHeaderCloseButtonLayout:function(){if(!this._closeButtonWrapper){return}var e=parseInt(this._header.css("padding-right"),10);if(!isNaN(e)){this._closeButtonWrapper.width(this._closeButton.width());if(!this.rtl){this._closeButtonWrapper.css("margin-right",e);this._closeButtonWrapper.css("margin-left","0px")}else{this._closeButtonWrapper.css("margin-left",e);this._closeButtonWrapper.css("margin-right","0px")}}if(!this.rtl){this._closeButtonWrapper.css({position:"absolute",right:"0px",left:""})}else{this._closeButtonWrapper.css({position:"absolute",left:"0px",right:""})}},_performHeaderCollapseButtonLayout:function(){if(!this._closeButtonWrapper){return}var e=parseInt(this._header.css("padding-right"),10);if(!isNaN(e)){this._collapseButtonWrapper.width(this.collapseButtonSize);this._collapseButtonWrapper.height(this.collapseButtonSize);if(!this.rtl){this._collapseButtonWrapper.css("margin-right",e);this._collapseButtonWrapper.css("margin-left","0px")}else{this._collapseButtonWrapper.css("margin-left",e);this._collapseButtonWrapper.css("margin-right","0px")}}if(!this.rtl){this._collapseButtonWrapper.css({position:"absolute",right:(this.showCloseButton)?this._closeButton.outerWidth(true):0,left:""})}else{this._collapseButtonWrapper.css({position:"absolute",left:(this.showCloseButton)?this._closeButton.outerWidth(true):0,right:""})}this._centerElement(this._collapseButton,this._collapseButton.parent(),"y")},_performWidgetLayout:function(){var e;if(this.width!=="auto"){this.host.css("width",this.width)}if(!this.collapsed){if(this.height!=="auto"){this.host.height(this.height)}else{this.host.height(this.host.height())}this.host.css("min-height",this.minHeight)}this._setChildrenLayout();e=this._validateMinSize();this.host.css({"max-height":this.maxHeight,"min-width":this.minWidth,"max-width":this.maxWidth});if(!e){this._setChildrenLayout()}},_setChildrenLayout:function(){this._header.width(this.host.width()-(this._header.outerWidth(true)-this._header.width()));this._content.width(this.host.width()-(this._content.outerWidth(true)-this._content.width()));this._content.height(this.host.height()-this._header.outerHeight(true)-(this._content.outerHeight(true)-this._content.height()))},_validateMinSize:function(){var f=true;if(this.minHeight<this._header.height()){this.minHeight=this._header.height();f=false}var h=this._header.children(0).outerWidth(true),e=this._header.children(1).outerWidth(true),g=h+e;if(this.minWidth<100){this.minWidth=Math.min(g,100);f=false}return f},_centerElement:function(h,f,e,g){if(typeof f.left==="number"&&typeof f.top==="number"&&typeof f.height==="number"&&typeof f.width==="number"){this._centerElementInArea(h,f,e)}else{this._centerElementInParent(h,f,e,g)}},_centerElementInParent:function(e,m,h,f){h=h.toLowerCase();if(f){f+="-"}else{f=""}if(h.indexOf("y")>=0){var g=e.outerHeight(true),k=m.height(),i=(Math.max(0,k-g))/2;e.css(f+"top",i+"px")}if(h.indexOf("x")>=0){var o=e.outerWidth(true);var n=m.width();var l=(Math.max(0,n-o))/2;e.css(f+"left",l+"px")}},_centerElementInArea:function(f,e,h){h=h.toLowerCase();if(h.indexOf("y")>=0){var g=f.outerHeight(true);var k=e.height;var i=(k-g)/2;f.css("top",i+e.top+"px")}if(h.indexOf("x")>=0){var n=f.outerWidth(true);var m=e.width;var l=(m-n)/2;f.css("left",l+e.left+"px")}},_removeEventHandlers:function(){this.removeHandler(this._header,this._getEvent("mousedown"));this.removeHandler(this._header,this._getEvent("mousemove"));this.removeHandler(this._header,"focus");this.removeHandler(a(document),this._getEvent("mousemove")+"."+this.host.attr("id"));this.removeHandler(a(document),this._getEvent("mouseup")+"."+this.host.attr("id"));this.removeHandler(this.host,"keydown");this.removeHandler(this._closeButton,this._getEvent("click"));this.removeHandler(this._closeButton,this._getEvent("mouseenter"));this.removeHandler(this._closeButton,this._getEvent("mouseleave"));this.removeHandler(this._collapseButton,this._getEvent("click"));this.removeHandler(this._collapseButton,this._getEvent("mouseenter"));this.removeHandler(this._collapseButton,this._getEvent("mouseleave"));this.removeHandler(this.host,this._getEvent("mousedown"));this.removeHandler(a(this.okButton),this._getEvent("click"),this._setDialogResultHandler);this.removeHandler(a(this.cancelButton),this._getEvent("click"),this._setDialogResultHandler);this.removeHandler(this._header,this._getEvent("mouseenter"));this.removeHandler(this._header,this._getEvent("mouseleave"));this.removeHandler(this.host,"resizing",this._windowResizeHandler)},_removeFromArray:function(e,g){var f=this._indexOf(e,g);if(f>=0){return g.splice(this._indexOf(e,g),1)}else{return g}},_sortByStyle:function(e,l){for(var h=0;h<l.length;h++){for(var f=l.length-1;f>h;f--){var m=l[f],k=l[f-1],g;if(parseInt(m.css(e),10)<parseInt(k.css(e),10)){g=m;l[f]=k;l[f-1]=g}}}},_initializeResize:function(){if(this.resizable){var e=this;this.initResize({target:this.host,alsoResize:e._content,maxWidth:e.maxWidth,minWidth:e.minWidth,maxHeight:e.maxHeight,minHeight:e.minHeight,indicatorSize:10,resizeParent:e.dragArea})}},_removeResize:function(){this.removeResize()},_getEvent:function(e){if(this._isTouchDevice){return this._touchEvents[e]}else{return e}},_addEventHandlers:function(){this._addDragDropHandlers();this._addCloseHandlers();this._addCollapseHandlers();this._addFocusHandlers();this._documentResizeHandlers();this._closeButtonHover();this._collapseButtonHover();this._addDialogButtonsHandlers();this._addHeaderHoverEffect();this._addResizeHandlers();var e=this;this.addHandler(this._header,this._getEvent("mousemove"),function(f){e._addHeaderCursorHandlers(e)})},_addResizeHandlers:function(){var e=this;this.addHandler(this.host,"resizing",this._windowResizeHandler,{self:this})},_windowResizeHandler:function(f){var e=f.data.self;e._header.width(e.host.width()-(e._header.outerWidth(true)-e._header.width()));e.width=f.args.width;e.height=f.args.height},_addHeaderHoverEffect:function(){var e=this;this.addHandler(this._header,this._getEvent("mouseenter"),function(){a(this).addClass(e.toThemeProperty("jqx-window-header-hover"))});this.addHandler(this._header,this._getEvent("mouseleave"),function(){a(this).removeClass(e.toThemeProperty("jqx-window-header-hover"))})},_addDialogButtonsHandlers:function(){if(this.okButton){this.addHandler(a(this.okButton),this._getEvent("click"),this._setDialogResultHandler,{self:this,result:"ok"})}if(this.cancelButton){this.addHandler(a(this.cancelButton),this._getEvent("click"),this._setDialogResultHandler,{self:this,result:"cancel"})}},_documentResizeHandlers:function(){var e=this;if(this.isModal){this.addHandler(a(window),"resize.window"+this.element.id,function(){if(typeof e._modalBackground==="object"&&e._modalBackground!==null){if(e.isOpen()){e._modalBackground.hide()}if(!e.restricter){e._modalBackground.width(e._getDocumentSize().width);e._modalBackground.height(e._getDocumentSize().height)}else{e._modalBackground.css("left",e.dragArea.left);e._modalBackground.css("top",e.dragArea.top);e._modalBackground.width(e.dragArea.width);e._modalBackground.height(e.dragArea.height)}if(e.isOpen()){e._modalBackground.show()}}})}},_setDialogResultHandler:function(f){var e=f.data.self;e._setDialogResult(f.data.result);e.closeWindow()},_setDialogResult:function(e){this.dialogResult.OK=false;this.dialogResult.None=false;this.dialogResult.Cancel=false;e=e.toLowerCase();switch(e){case"ok":this.dialogResult.OK=true;break;case"cancel":this.dialogResult.Cancel=true;break;default:this.dialogResult.None=true}},_getDocumentSize:function(){var e=a.jqx.browser.msie&&a.jqx.browser.version<9;var f=e?4:0;var g=f;if(document.body.scrollHeight>document.body.clientHeight&&e){f=this._SCROLL_WIDTH}if(document.body.scrollWidth>document.body.clientWidth&&e){g=this._SCROLL_WIDTH}return{width:a(document).width()-f,height:a(document).height()-g}},_closeButtonHover:function(){var e=this;this.addHandler(this._closeButton,this._getEvent("mouseenter"),function(){e._closeButton.addClass(e.toThemeProperty("jqx-window-close-button-hover"))});this.addHandler(this._closeButton,this._getEvent("mouseleave"),function(){e._closeButton.removeClass(e.toThemeProperty("jqx-window-close-button-hover"))})},_collapseButtonHover:function(){var e=this;this.addHandler(this._collapseButton,this._getEvent("mouseenter"),function(){e._collapseButton.addClass(e.toThemeProperty("jqx-window-collapse-button-hover"))});this.addHandler(this._collapseButton,this._getEvent("mouseleave"),function(){e._collapseButton.removeClass(e.toThemeProperty("jqx-window-collapse-button-hover"))})},_setModalBackgroundStyles:function(){if(this.isModal){this._modalBackground.fadeTo(0,this.modalOpacity);this._modalBackground.css({position:"absolute",top:"0px",left:"0px",width:this._getDocumentSize().width,height:this._getDocumentSize().height,"z-index":this.modalBackgroundZIndex});if(!this.autoOpen){this._modalBackground.css("display","none")}}},_addFocusHandlers:function(){var e=this;this.addHandler(this.host,this._getEvent("mousedown"),function(){if(!e.isModal){e.bringToFront()}})},_indexOf:function(f,g){for(var e=0;e<g.length;e++){if(g[e][0]===f[0]){return e}}return -1},_addCloseHandlers:function(){var e=this;this.addHandler(this._closeButton,this._getEvent("click"),function(f){return e._closeWindow(f)});if(this.keyboardCloseKey!=="none"){if(typeof this.keyboardCloseKey!=="number"&&this.keyboardCloseKey.toLowerCase()==="esc"){this.keyboardCloseKey=27}}this.addHandler(this.host,"keydown",function(f){if(f.keyCode===e.keyboardCloseKey&&e.keyboardCloseKey!=null&&e.keyboardCloseKey!="none"){e._closeWindow(f)}else{e._handleKeys(f)}},{self:this});this.addHandler(this.host,"keyup",function(f){if(!e.keyboardNavigation){return}if(e._moved){var i=e.host.coord();var h=i.left;var g=i.top;e._raiseEvent(3,h,g,h,g);e._moved=false}})},_handleKeys:function(f){if(!this.keyboardNavigation){return}if(!this._headerFocused){return}if(a(document.activeElement).ischildof(this._content)){return}var e=f.ctrlKey;var n=f.keyCode;var l=this.host.coord();var k=l.left;var m=l.top;var g=this._getDraggingArea();var h=this.host.width();var o=this.host.height();var p=true;var i=10;switch(n){case 37:if(!e){if(this.draggable){if(k-i>=0){this.move(k-i,m)}}}else{if(this.resizable){this.resize(h-i,o)}}p=false;break;case 38:if(!e){if(this.draggable){if(m-i>=0){this.move(k,m-i)}}}else{if(this.resizable){this.resize(h,o-i)}}p=false;break;case 39:if(!e){if(this.draggable){if(k+h+i<=g.width){this.move(k+i,m)}}}else{if(this.resizable){this.resize(h+i,o)}}p=false;break;case 40:if(!e){if(this.draggable){if(m+o+i<=g.height){this.move(k,m+i)}}}else{if(this.resizable){this.resize(h,o+i)}}p=false;break}if(!p){if(f.preventDefault){f.preventDefault()}if(f.stopPropagation){f.stopPropagation()}}return p},_addCollapseHandlers:function(){var e=this;this.addHandler(this._collapseButton,this._getEvent("click"),function(){if(!e.collapsed){e.collapse()}else{e.expand()}})},_closeWindow:function(e){this.closeWindow();return false},_addHeaderCursorHandlers:function(e){if(e.resizeArea&&e.resizable&&!e.collapsed){e._header.css("cursor",e._resizeWrapper.css("cursor"));return}else{if(e.draggable){e._header.css("cursor","move");return}}e._header.css("cursor","default");if(e._resizeWrapper&&e._resizeWrapper.length>0){e._resizeWrapper.css("cursor","default")}},_addDragDropHandlers:function(){if(this.draggable){var e=this;this.addHandler(this.host,"focus",function(){e._headerFocused=true});this.addHandler(this.host,"blur",function(){e._headerFocused=false});this.addHandler(this._header,"focus",function(){e._headerFocused=true;return false});this.addHandler(this._header,this._getEvent("mousedown"),function(k,i,l){if(i){k.pageX=i}if(l){k.pageY=l}e._headerMouseDownHandler(e,k);return true});this.addHandler(this._header,"dragstart",function(i){if(i.preventDefault){i.preventDefault()}return false});this.addHandler(this._header,this._getEvent("mousemove"),function(i){return e._headerMouseMoveHandler(e,i)});this.addHandler(a(document),this._getEvent("mousemove")+"."+this.host.attr("id"),function(i){return e._dragHandler(e,i)});this.addHandler(a(document),this._getEvent("mouseup")+"."+this.host.attr("id"),function(i){return e._dropHandler(e,i)});try{if(document.referrer!=""||window.frameElement){var h=null;if(window.top!=null&&window.top!=window.self){if(window.parent&&document.referrer){h=document.referrer}}if(h&&h.indexOf(document.location.host)!=-1){var g=function(i){e._dropHandler(e,i)};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",g,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",g)}}}}}catch(f){}}},_headerMouseDownHandler:function(f,g){if(!f.isModal){f.bringToFront()}if(f._resizeDirection==null){var h=a.jqx.mobile.getTouches(g);var i=h[0];var e=a.jqx.position(g);f._mousePosition.x=e.left;f._mousePosition.y=e.top;f._mouseDown=true;f._isDragging=false}},_headerMouseMoveHandler:function(f,i){if(f._mouseDown&&!f._isDragging){var k=a.jqx.mobile.getTouches(i);var l=k[0];var h=l.pageX,g=l.pageY;var e=a.jqx.position(i);h=e.left;g=e.top;if((h+3<f._mousePosition.x||h-3>f._mousePosition.x)||(g+3<f._mousePosition.y||g-3>f._mousePosition.y)){f._isDragging=true;f._mousePosition={x:h,y:g};f._windowPosition={x:f.host.coord().left,y:f.host.coord().top};a(document.body).addClass(f.toThemeProperty("jqx-disableselect"))}if(f._isTouchDevice){i.preventDefault();return true}return false}if(f._isDragging){if(f._isTouchDevice){i.preventDefault();return true}return false}return true},_dropHandler:function(g,k){var f=true;if(g._isDragging&&!g.isResizing&&!g._resizeDirection){var e=parseInt(g.host.css("left"),10),l=parseInt(g.host.css("top"),10),i=(g._isTouchDevice)?0:k.pageX,h=(g._isTouchDevice)?0:k.pageY;g.enableResize=g._enableResizeBackup;g._enableResizeBackup="undefined";g._raiseEvent(3,e,l,i,h);f=false;if(k.preventDefault!="undefined"){k.preventDefault()}if(k.originalEvent!=null){k.originalEvent.mouseHandled=true}if(k.stopPropagation!="undefined"){k.stopPropagation()}}g._isDragging=false;g._mouseDown=false;a(document.body).removeClass(g.toThemeProperty("jqx-disableselect"));return f},_dragHandler:function(p,h){if(p._isDragging&&!p.isResizing&&!p._resizeDirection){var o=(p._isTouchDevice)?h.originalEvent.which:h.which;if(typeof p._enableResizeBackup==="undefined"){p._enableResizeBackup=p.enableResize}p.enableResize=false;if(o===0&&a.jqx.browser.msie&&a.jqx.browser.version<8){return p._dropHandler(p,h)}var m=a.jqx.mobile.getTouches(h);var l=m[0];var n=a.jqx.position(h);var k=n.left,i=n.top,g=k-p._mousePosition.x,f=i-p._mousePosition.y,e=p._windowPosition.x+g,q=p._windowPosition.y+f;p.move(e,q,h);h.preventDefault();return false}return true},_validateCoordinates:function(e,l,i,k){var h=this._getDraggingArea();e=(e<h.left)?h.left:e;l=(l<h.top)?h.top:l;var f=this.host.outerWidth(true);var g=this.host.outerHeight(true);if(e+f>=h.width+h.left-2*k){e=h.width+h.left-f-k}if(l+g>=h.height+h.top-i){l=h.height+h.top-g-i}return{x:e,y:l}},_performLayout:function(){this._performHeaderLayout();this._performWidgetLayout()},_parseDragAreaAttributes:function(){if(this.dragArea!==null){this.dragArea.height=parseInt(this.dragArea.height,10);this.dragArea.width=parseInt(this.dragArea.width,10);this.dragArea.top=parseInt(this.dragArea.top,10);this.dragArea.left=parseInt(this.dragArea.left,10)}},_positionWindow:function(){this._parseDragAreaAttributes();if(this.position instanceof Array&&this.position.length===2&&typeof this.position[0]==="number"&&typeof this.position[1]==="number"){this.host.css({left:this.position[0],top:this.position[1]})}else{if(this.position instanceof Object){if(this.position.left){this.host.offset(this.position)}else{if(this.position.x!==undefined&&this.position.y!=undefined){this.host.css({left:this.position.x,top:this.position.y})}else{if(this.position.center){this._centerElement(this.host,this.position.center,"xy");var g=this.position.center.coord();var f=parseInt(this.host.css("left"));var e=parseInt(this.host.css("top"));this.host.css({left:f+g.left,top:e+g.top})}}}}else{this._positionFromLiteral()}}},_getDraggingArea:function(){var e={};e.left=((this.dragArea&&this.dragArea.left)?this.dragArea.left:0);e.top=((this.dragArea&&this.dragArea.top)?this.dragArea.top:0);e.width=((this.dragArea&&this.dragArea.width)?this.dragArea.width:this._getDocumentSize().width);e.height=((this.dragArea&&this.dragArea.height)?this.dragArea.height:this._getDocumentSize().height);return e},_positionFromLiteral:function(){if(!(this.position instanceof Array)){this.position=this.position.split(",")}var e=this.position.length,f=this._getDraggingArea();while(e){e-=1;this.position[e]=this.position[e].replace(/ /g,"");switch(this.position[e]){case"top":this.host.css("top",f.top);break;case"left":this.host.css("left",f.left);break;case"bottom":this.host.css("top",f.height-this.host.height()+f.top);break;case"right":this.host.css("left",f.left+f.width-this.host.width());break;default:if(!this.dragArea){f=a(window)}this._centerElement(this.host,f,"xy");break}}},_raiseEvent:function(g){var f=this._events[g],h=a.Event(f),e={};if(g===2||g===3){e.x=arguments[1];e.y=arguments[2];e.pageX=arguments[3];e.pageY=arguments[4]}if(f==="closed"||f==="close"){e.dialogResult=this.dialogResult}h.args=e;return this.host.trigger(h)},destroy:function(){this.removeHandler(a(window),"resize.window"+this.element.id);this._removeEventHandlers();this._destroy()},_destroy:function(){if(this.restricter){this.removeHandler(a(window),"resize."+this.element.id);this.removeHandler(a(window),"orientationchanged."+this.element.id);this.removeHandler(a(window),"orientationchange."+this.element.id)}this.host.remove();if(this._modalBackground!==null){this._modalBackground.remove()}},_toClose:function(f,e){return((f&&e[0]===this.element)||(e[0]!==this.element&&typeof e[0]==="object"))},propertyChangedHandler:function(e,f,h,g){this._validateProperties();switch(f){case"rtl":this._performLayout();break;case"dragArea":this._positionWindow();break;case"collapseButtonSize":this._performLayout();break;case"closeButtonSize":this._performLayout();break;case"isModal":this._refresh();this._fixWindowZIndex();break;case"keyboardCloseKey":this._removeEventHandlers();this._addEventHandlers();break;case"disabled":if(g){this.disable()}else{this.disabled=true;this.enable()}break;case"showCloseButton":case"showCollapseButton":this._performLayout();break;case"height":this._performLayout();break;case"width":this._performLayout();break;case"title":this.setTitle(g);this.title=g;break;case"content":this.setContent(g);break;case"draggable":this._removeEventHandlers();this._addEventHandlers();this._removeResize();this._initializeResize();break;case"resizable":this.enableResize=g;if(g){this._initializeResize()}else{this._removeResize()}break;case"position":this._positionWindow();break;case"modalOpacity":this._setModalBackgroundStyles();break;case"okButton":if(g){this._addDialogButtonsHandlers()}else{this.removeHandler(this.okButton)}break;case"cancelButton":if(g){this._addDialogButtonsHandlers()}else{this.removeHandler(this.cancelButton)}break;case"collapsed":if(g){if(!h){this.collapsed=false;this.collapse(0)}}else{if(h){this.collapsed=true;this.expand(0)}}case"theme":a.jqx.utilities.setTheme(h,g,this.host);break;case"enableResize":return;case"maxWidth":case"maxHeight":case"minWidth":case"minHeight":e._performLayout();e._removeResize();e._initializeResize();return;default:return}},collapse:function(g){if(!this.collapsed&&!this.host.is(":animated")){if(this.host.css("display")=="none"){return}var e=this,h=this._header.outerHeight(true),i=parseInt(this._header.css("border-bottom-width"),10),f=parseInt(this._header.css("margin-bottom"),10),g=!isNaN(parseInt(g))?g:this.collapseAnimationDuration;if(!isNaN(i)){h-=2*i}if(!isNaN(f)){h+=f}this._heightBeforeCollapse=this.host.height();this._minHeightBeforeCollapse=this.host.css("min-height");this.host.css("min-height",h);this.host.animate({height:h},g,function(){e.collapsed=true;e._collapseButton.addClass(e.toThemeProperty("jqx-window-collapse-button-collapsed"));e._collapseButton.addClass(e.toThemeProperty("jqx-icon-arrow-down"));e._content.css("display","none");e._raiseEvent(5);e._raiseEvent(9);a.jqx.aria(e,"aria-expanded",false)})}},expand:function(f){if(this.collapsed&&!this.host.is(":animated")){var e=this,f=!isNaN(parseInt(f))?f:this.collapseAnimationDuration;this.host.animate({height:this._heightBeforeCollapse},f,function(){e.collapsed=false;e.host.css("min-height",e._minHeightBeforeCollapse);e._collapseButton.removeClass(e.toThemeProperty("jqx-window-collapse-button-collapsed"));e._collapseButton.removeClass(e.toThemeProperty("jqx-icon-arrow-down"));e._content.css("display","block");e._raiseEvent(6);e._performWidgetLayout();e._raiseEvent(9);a.jqx.aria(e,"aria-expanded",true)})}},closeAll:function(h){var h=true;var g=a.data(document.body,"jqxwindows-list"),f=g.length,e=a.data(document.body,"jqxwindow-modal")||[];while(f){f-=1;if(this._toClose(h,g[f])){g[f].jqxWindow("closeWindow","close");g.splice(f,1)}}if(this._toClose(h,e)){e.jqxWindow("closeWindow","close");a.data(document.body,"jqxwindow-modal",[])}a.data(document.body,"jqxwindows-list",g)},setTitle:function(e){a.jqx.utilities.html(this._headerContentWrapper,e);this.title=e;this._performLayout()},setContent:function(f){this._contentInitialized=false;var e=this._content,g=false;while(!g){e.css("height","auto");e.css("width","auto");if(e.is(".jqx-window")){g=true}else{e=e.parent()}}a.jqx.utilities.html(this._content,f);this._performLayout()},disable:function(){this.disabled=true;this._removeEventHandlers();this._header.addClass(this.toThemeProperty("jqx-window-header-disabled"));this._closeButton.addClass(this.toThemeProperty("jqx-window-close-button-disabled"));this._collapseButton.addClass(this.toThemeProperty("jqx-window-collapse-button-disabled"));this._content.addClass(this.toThemeProperty("jqx-window-content-disabled"));this.host.addClass(this.toThemeProperty("jqx-window-disabled"));this.host.addClass(this.toThemeProperty("jqx-fill-state-disabled"));this._removeResize()},enable:function(){if(this.disabled){this._addEventHandlers();this._header.removeClass(this.toThemeProperty("jqx-window-header-disabled"));this._content.removeClass(this.toThemeProperty("jqx-window-content-disabled"));this._closeButton.removeClass(this.toThemeProperty("jqx-window-close-button-disabled"));this._collapseButton.removeClass(this.toThemeProperty("jqx-window-collapse-button-disabled"));this.host.removeClass(this.toThemeProperty("jqx-window-disabled"));this.host.removeClass(this.toThemeProperty("jqx-fill-state-disabled"));this.disabled=false;this._initializeResize()}},isOpen:function(){return this._visible},closeWindow:function(f){var e=this;f=(typeof f==="undefined")?this.closeButtonAction:f;this.hide(function(){if(f==="close"){e._destroy()}})},bringToFront:function(){var f=a.data(document.body,"jqxwindows-list");if(this.isModal){f=a.data(document.body,"jqxwindows-modallist");this._fixWindowZIndex("modal-hide");this._fixWindowZIndex("modal-show");return}var l=f[f.length-1],k=parseInt(l.css("z-index"),10),g=this._indexOf(this.host,f);for(var e=f.length-1;e>g;e-=1){var h=parseInt(f[e].css("z-index"),10)-1;f[e].css("z-index",h)}this.host.css("z-index",k);this._sortByStyle("z-index",f)},hide:function(h,g,e){if(this.closing){var f=this.closing();if(f==false){return}}g=g||this.closeAnimationDuration;switch(this.animationType){case"none":this.host.css("display","none");break;case"fade":this.host.fadeOut(g,function(){if(h instanceof Function){h()}});case"slide":this.host.slideUp(g,function(){if(h instanceof Function){h()}});case"combined":this.host.hide(g,function(){if(h instanceof Function){h()}})}this._visible=false;if(this.isModal){this._modalBackground.hide();this._fixWindowZIndex("modal-hide")}if(e!==true){this._raiseEvent(1);this._raiseEvent(8)}},open:function(f,e){this.show(f,e)},close:function(g,f,e){this.hide(g,f,e)},show:function(h,g){this._setDialogResult("none");g=g||this.showAnimationDuration;switch(this.animationType){case"none":this.host.css("display","block");break;case"fade":this.host.fadeIn(g,function(){if(h instanceof Function){h()}});break;case"slide":this.host.slideDown(g,function(){if(h instanceof Function){h()}});break;case"combined":this.host.show(g,function(){if(h instanceof Function){h()}});break}if(this.isModal){this._modalBackground.show();this._fixWindowZIndex("modal-show")}var f=this;if(!this._visible){if(g>150&&this.animationType!="none"){setTimeout(function(){if(!f._contentInitialized){if(f.initContent){f.initContent();f._contentInitialized=true}}f._raiseEvent(7);f._raiseEvent(9)},g-150)}else{if(!f._contentInitialized){if(f.initContent){f.initContent();f._contentInitialized=true}}this._raiseEvent(7);f._raiseEvent(9)}}this._visible=true;this._performLayout();if(this.autoFocus){var e=function(){if(!f._isTouchDevice){f._content.focus()}};e();setTimeout(function(){e()},100)}},_getTabbables:function(){var f=this._content.find("*");var e=new Array();a.each(f,function(){if(d(this)){e[e.length]=this}});return e},move:function(q,p,e,h){var g=0,f=0,n,k,i,q=parseInt(q,10),p=parseInt(p,10);if(a.jqx.browser.msie){if(a(window).width()>a(document).width()&&!this.dragArea){f=this._SCROLL_WIDTH}if(a(window).height()<a(document).height()&&document.documentElement.clientWidth>document.documentElement.scrollWidth&&!this.dragArea){g=this._SCROLL_WIDTH}}n=this._validateCoordinates(q,p,f,g);if(parseInt(this.host.css("left"),10)!==n.x||parseInt(this.host.css("top"),10)!==n.y){if(e){var m=a.jqx.mobile.getTouches(e);var l=m[0];var o=a.jqx.position(e);k=o.left;i=o.top}if(k==undefined){k=q}if(i==undefined){i=p}if(h!==false){this._raiseEvent(2,n.x,n.y,k,i)}}this.element.style.left=n.x+"px";this.element.style.top=n.y+"px";this._moved=true}});function c(g,e){var k=g.nodeName.toLowerCase();if("area"===k){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(k)?!g.disabled:"a"==k?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.css(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function d(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}}(jqxBaseFramework));(function(b){var a=(function(c){return{resizeConfig:function(){this.resizeTarget=null;this.resizeIndicatorSize=5;this.resizeTargetChildren=null;this.isResizing=false;this.resizeArea=false;this.minWidth=1;this.maxWidth=100;this.minHeight=1;this.maxHeight=100;this.resizeParent=null;this.enableResize=true;this._cursorBackup;this._resizeEvents=["resizing","resized","resize"];this._resizeMouseDown=false;this._resizeCurrentMode=null;this._mouseResizePosition={};this._resizeMethods=null;this._SCROLL_WIDTH=21},_resizeExceptions:{invalidTarget:"Invalid target!",invalidMinHeight:"Invalid minimal height!",invalidMaxHeight:"Invalid maximum height!",invalidMinWidth:"Invalid minimum width!",invalidMaxWidth:"Invalid maximum width!",invalidIndicatorSize:"Invalid indicator size!",invalidSize:"Invalid size!"},removeResize:function(){if(this.resizeTarget){var f=c(this.resizeTarget.children(".jqx-resize"));f.detach();var e=f.children();this._removeResizeEventListeners();for(var d=0;d<e.length;d+=1){c(e[d]).detach();this.resizeTarget.append(e[d])}f.remove()}},initResize:function(d){this.resizeConfig();this.resizeTarget=c(d.target);this.resizeIndicatorSize=d.indicatorSize||10;this.maxWidth=d.maxWidth||100;this.minWidth=d.minWidth||1;this.maxHeight=d.maxHeight||100;this.minHeight=d.minHeight||1;this.resizeParent=d.resizeParent;this._parseResizeParentProperties();this._validateResizeProperties();this._validateResizeTargetDimensions();this._getChildren(this.resizeTarget.maxWidth,this.resizeTarget.minWidth,this.resizeTarget.maxHeight,this.resizeTarget.minHeight,d.alsoResize);this._refreshResize();this._cursorBackup=this.resizeTarget.css("cursor");if(this._cursorBackup==="auto"){this._cursorBackup="default"}},_validateResizeTargetDimensions:function(){this.resizeTarget.maxWidth=this.maxWidth;this.resizeTarget.minWidth=((3*this.resizeIndicatorSize>this.minWidth)?3*this.resizeIndicatorSize:this.minWidth);this.resizeTarget.maxHeight=this.maxHeight;this.resizeTarget.minHeight=((3*this.resizeIndicatorSize>this.minHeight)?3*this.resizeIndicatorSize:this.minHeight)},_parseResizeParentProperties:function(){if(this.resizeParent){this.resizeParent.left=parseInt(this.resizeParent.left,10);this.resizeParent.top=parseInt(this.resizeParent.top,10);this.resizeParent.width=parseInt(this.resizeParent.width,10);this.resizeParent.height=parseInt(this.resizeParent.height,10)}},_getChildren:function(h,e,g,i,d){this.resizeTargetChildren=c(d);this.resizeTargetChildren.toArray();var f=this.resizeTargetChildren.length;while(f){f-=1;this.resizeTargetChildren[f]=c(this.resizeTargetChildren[f])}},_refreshResize:function(){this._renderResize();this._performResizeLayout();this._removeResizeEventListeners();this._addResizeEventHandlers()},_renderResize:function(){this.resizeTarget.wrapInner(c("<div></div>"));this._resizeWrapper=this.resizeTarget.children(0);this._resizeWrapper.addClass("jqx-resize");this._resizeWrapper.addClass("jqx-rc-all");this._resizeWrapper.css("z-index",8000)},_performResizeLayout:function(){this._resizeWrapper.height(this.resizeTarget.height());this._resizeWrapper.width(this.resizeTarget.width())},_removeResizeEventListeners:function(){var d=this.resizeTarget.attr("id");this.removeHandler(this._resizeWrapper,"mousemove.resize"+d);this.removeHandler(this._resizeWrapper,"mousedown.resize"+d);this.removeHandler(c(document),"mousemove.resize"+d);this.removeHandler(c(document),"mouseup.resize"+d)},_addResizeEventHandlers:function(){var g=this.resizeTarget.attr("id");var d=this;this.addHandler(this._resizeWrapper,"mousemove.resize."+g,function(h){d._resizeCursorChangeHandler(d,h)});this.addHandler(this._resizeWrapper,"mousedown.resize."+g,function(h){d._resizeMouseDownHandler(d,h)});this.addHandler(c(document),"mousemove.resize."+g,function(h){return d._resizeHandler(d,h)});this.addHandler(c(document),"mouseup.resize."+g,function(h){d._stopResizing(d,h)});try{if(document.referrer!=""||window.frameElement){var f=function(h){d._stopResizing(d,h)};if(window.top.document.addEventListener){window.top.document.addEventListener("mouseup",f,false)}else{if(window.top.document.attachEvent){window.top.document.attachEvent("onmouseup",f)}}}}catch(e){}},_stopResizing:function(d,e){if(d.enableResize){if(d.isResizing){d._raiseResizeEvent(1)}d._resizeMouseDown=false;d.isResizing=false;d._resizeDirection=null;if(d.resizeTarget){d.resizeTarget.removeClass("jqx-disableselect")}}if(d._cursorBackup=="undefined"){d._cursorBackup="default"}if(d._resizeWrapper){d._resizeWrapper.css("cursor",d._cursorBackup)}},_resizeHandler:function(d,e){if(d.enableResize&&!d.collapsed){if(d.isResizing&&d._resizeDirection){if(e.which===0&&c.jqx.browser.msie&&c.jqx.browser.version<9){d._stopResizing(e)}d._performResize(e.pageX,e.pageY);return false}else{return d._resizeCaptureCursor(e.pageX,e.pageY)}}},_resizeCaptureCursor:function(e,d){if(this._resizeMouseDown&&!this.isResizing&&this._resizeDirection){if((e+3<this._mouseResizePosition.x||e-3>this._mouseResizePosition.x)||(d+3<this._mouseResizePosition.y||d-3>this._mouseResizePosition.y)){this._changeCursor(e-parseInt(this.resizeTarget.css("left")),d-parseInt(this.resizeTarget.css("top")));this._mouseResizePosition={x:e,y:d};this._prepareResizeMethods(this._resizeDirection);this._resizeBackupData();this.isResizing=true;this.resizeTarget.addClass("jqx-disableselect");return false}}},_resizeBackupData:function(){this.resizeTarget.lastWidth=this.resizeTarget.width();this.resizeTarget.lastHeight=this.resizeTarget.height();this.resizeTarget.x=parseInt(this.resizeTarget.css("left"),10);this.resizeTarget.y=parseInt(this.resizeTarget.css("top"),10);this._resizeBackupChildrenSize()},_resizeBackupChildrenSize:function(){var d=this.resizeTargetChildren.length,e;while(d){d-=1;e=this.resizeTargetChildren[d];this.resizeTargetChildren[d].lastWidth=e.width();this.resizeTargetChildren[d].lastHeight=e.height()}},_performResize:function(g,f){var e=g-this._mouseResizePosition.x,d=f-this._mouseResizePosition.y;if(this._resizeDirection){this._resize(this.resizeTarget,e,d)}},_resizeCursorChangeHandler:function(d,e){if(d.enableResize&&!d.collapsed){if(!d.isResizing){d._changeCursor(e.pageX-parseInt(d.resizeTarget.css("left")),e.pageY-parseInt(d.resizeTarget.css("top")))}}},_resizeMouseDownHandler:function(d,e){if(d.enableResize){if(d._resizeDirection!==null){d._resizeMouseDown=true;d._mouseResizePosition.x=e.pageX;d._mouseResizePosition.y=e.pageY;e.preventDefault()}}},_validateResizeProperties:function(){try{if(!this.resizeTarget||this.resizeTarget.length!==1){throw new Error(this._resizeExceptions.invalidTarget)}if(this.minHeight<0||isNaN(parseInt(this.minHeight))){throw new Error(this._resizeExceptions.invalidMinHeight)}if(this.maxHeight<=0||isNaN(parseInt(this.maxHeight))){throw new Error(this._resizeExceptions.invalidMaxHeight)}if(this.minWidth<0||isNaN(parseInt(this.minWidth))){throw new Error(this._resizeExceptions.invalidMinWidth)}if(this.maxWidth<0||isNaN(parseInt(this.maxWidth))){throw new Error(this._resizeExceptions.invalidMaxWidth)}if(this.resizeIndicatorSize<0||isNaN(parseInt(this.resizeIndicatorSize))){throw new Error(this._resizeExceptions.invalidIndicatorSize)}if(this.minHeight>this.maxHeight||this.minWidth>this.maxWidth){throw new Error(this._resizeExceptions.invalidSize)}}catch(d){alert(d)}},_changeCursor:function(d,e){if(this.isResizing||this._resizeMouseDown){return}this.resizeArea=true;if(d<=this.resizeIndicatorSize&&d>=0&&e<=this.resizeIndicatorSize&&e>0){this._resizeWrapper.css("cursor","nw-resize");this._resizeDirection="topleft"}else{if(e<=this.resizeIndicatorSize&&e>0&&d>=this.resizeTarget.width()-this.resizeIndicatorSize){this._resizeWrapper.css("cursor","ne-resize");this._resizeDirection="topright"}else{if(e>=this.resizeTarget.height()-this.resizeIndicatorSize&&e<this.resizeTarget.height()&&d<=this.resizeIndicatorSize&&d>=0){this._resizeWrapper.css("cursor","sw-resize");this._resizeDirection="bottomleft"}else{if(e>=this.resizeTarget.height()-this.resizeIndicatorSize&&e<this.resizeTarget.height()&&d>=this.resizeTarget.width()-this.resizeIndicatorSize&&d<this.resizeTarget.width()){this._resizeWrapper.css("cursor","se-resize");this._resizeDirection="bottomright"}else{if(d<=this.resizeIndicatorSize&&d>=0){this._resizeWrapper.css("cursor","e-resize");this._resizeDirection="left"}else{if(e<=this.resizeIndicatorSize&&e>0){this._resizeWrapper.css("cursor","n-resize");this._resizeDirection="top"}else{if(e>=this.resizeTarget.height()-this.resizeIndicatorSize&&e<this.resizeTarget.height()){this._resizeWrapper.css("cursor","n-resize");this._resizeDirection="bottom"}else{if(d>=this.resizeTarget.width()-this.resizeIndicatorSize&&d<this.resizeTarget.width()){this._resizeWrapper.css("cursor","e-resize");this._resizeDirection="right"}else{this._resizeWrapper.css("cursor",this._cursorBackup);this._resizeDirection=null;this.resizeArea=false}}}}}}}}},_prepareResizeMethods:function(d){this._resizeMethods=[];if(d.indexOf("left")>=0){this._resizeMethods.push(this._resizeLeft)}if(d.indexOf("top")>=0){this._resizeMethods.push(this._resizeTop)}if(d.indexOf("right")>=0){this._resizeMethods.push(this._resizeRight)}if(d.indexOf("bottom")>=0){this._resizeMethods.push(this._resizeBottom)}},_validateResize:function(g,d,h,f,e){if(h==="horizontal"||h==="both"){return this._validateWidth(g,f,e)}else{if(h==="vertical"||h==="both"){return this._validateHeight(d,f,e)}}return{result:false,fix:0}},_getParent:function(){if(this.resizeParent!==null&&this.resizeParent!=="undefined"&&this.resizeParent.height&&this.resizeParent.width&&this.resizeParent.top&&this.resizeParent.left){return this.resizeParent}return{left:0,top:0,width:c(document).width(),height:c(document).height()}},_validateHeight:function(f,k,i){var l=0,e=2,d=false,h=f,g=this._getParent();if(c(window).width()>c(document).width()&&c.jqx.browser.msie&&g.height===c(document).height()){l=this._SCROLL_WIDTH}if(i==="bottom"&&(f+k.position().top+l+e>g.height+g.top)){return{fix:g.height-k.position().top-l-e+g.top,result:false}}if(i==="top"&&k.lastHeight-f+k.y<g.top){return{fix:f+(k.lastHeight-f+k.y)-g.top,result:false}}if(f<k.minHeight){return{fix:k.minHeight,result:false}}if(f>k.maxHeight){return{fix:k.maxHeight,result:false}}return{result:true,fix:f}},_validateWidth:function(k,i,h){var l=0,e=2,d=false,g=k,f=this._getParent();if(c(window).height()<c(document).height()&&c.jqx.browser.msie&&document.documentElement.clientWidth>=document.documentElement.scrollWidth&&f.width===c(document).width()){l=this._SCROLL_WIDTH}if(h==="right"&&(k+i.position().left+l+e>f.width+f.left)){return{fix:f.width-i.position().left-l-e+f.left,result:false}}if(h==="left"&&(i.lastWidth-k+i.x<f.left)){return{fix:k+(i.lastWidth-k+i.x)-f.left,result:false}}if(k<i.minWidth){return{fix:i.minWidth,result:false}}if(k>i.maxWidth){return{fix:i.maxWidth,result:false}}return{result:true,fix:k}},_resize:function(h,e,d){var l=this._resizeDirection;var k=this._resizeMethods.length;for(var g=0;g<k;g++){if(this._resizeMethods[g] instanceof Function){var f={element:h,x:e,y:d,self:this};this._resizeMethods[g](f)}}this._performResizeLayout()},resize:function(g,d){if(this.resizable){var f=g-this.host.width();var e=d-this.host.height();var h="right";if(e!=0){h="bottom"}this._resizeDirection=h;this._prepareResizeMethods(this._resizeDirection);this._resizeBackupData();this.isResizing=true;this._resize(this.resizeTarget,f,e);this.isResizing=false}},_setResizeChildrenSize:function(e,f){var h=this.resizeTargetChildren.length;while(h){h--;if(f==="width"){var g=this.resizeTargetChildren[h].lastWidth-(this.resizeTarget.lastWidth-e);if(g<this.resizeTarget.maxWidth&&g>0){this.resizeTargetChildren[h].width(g)}}else{var d=this.resizeTargetChildren[h].lastHeight-(this.resizeTarget.lastHeight-e);if(d<this.resizeTarget.maxHeight&&d>0){this.resizeTargetChildren[h].height(d)}}}},_resizeRight:function(e){var f=e.element.lastWidth+e.x,d=e.self._validateResize(f,0,"horizontal",e.element,"right");if(!d.result){f=d.fix}if(e.element.width()!==f){e.self._setResizeChildrenSize(f,"width");e.element.width(f);e.self._raiseResizeEvent(0)}return f},_resizeLeft:function(f){var g=f.element.lastWidth-f.x,e=f.self._validateResize(g,0,"horizontal",f.element,"left"),d=f.element.x+f.x;if(!e.result){d=f.element.x+(f.element.lastWidth-e.fix);g=e.fix;return}if(f.element.width()!==g){f.self._setResizeChildrenSize(g,"width");f.element.width(g);f.element.css("left",d);f.self._raiseResizeEvent(0)}return g},_resizeBottom:function(f){var e=f.element.lastHeight+f.y,d=f.self._validateResize(0,e,"vertical",f.element,"bottom");if(!d.result){e=d.fix}if(f.element.height()!==e){f.self._setResizeChildrenSize(e,"height");f.element.height(e);f.self._raiseResizeEvent(0)}return e},_resizeTop:function(f){var e=f.element.lastHeight-f.y,d=f.self._validateResize(0,e,"vertical",f.element,"top"),g=f.element.y+f.y;if(!d.result){g=f.element.y+(f.element.lastHeight-d.fix);e=d.fix;return}if(f.element.height()!==e){f.self._setResizeChildrenSize(e,"height");f.element.height(e);f.element.css("top",g);f.self._raiseResizeEvent(0)}return e},_raiseResizeEvent:function(f){var e=this._resizeEvents[f],g=c.Event(e),d={};d.width=parseInt(this.resizeTarget[0].style.width);d.height=parseInt(this.resizeTarget[0].style.height);g.args=d;if(f==0){var e=this._resizeEvents[2],h=c.Event(e);h.args=d;this.resizeTarget.trigger(h)}return this.resizeTarget.trigger(g)}}}(jqxBaseFramework));b.extend(b.jqx._jqxWindow.prototype,a)}(jqxBaseFramework));
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backImage.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backImage.png
new file mode 100644 (file)
index 0000000..ed61972
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backImage.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backgroundTop.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backgroundTop.png
new file mode 100644 (file)
index 0000000..c57c8e0
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/backgroundTop.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black.png
new file mode 100644 (file)
index 0000000..be8b194
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black_horizontal.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black_horizontal.png
new file mode 100644 (file)
index 0000000..09ff693
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_black_horizontal.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover.png
new file mode 100644 (file)
index 0000000..ea6b236
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover_horizontal.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover_horizontal.png
new file mode 100644 (file)
index 0000000..96a7720
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackhover_horizontal.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed.png
new file mode 100644 (file)
index 0000000..e7e8f5e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed_horizontal.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed_horizontal.png
new file mode 100644 (file)
index 0000000..3c6bd38
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blackpressed_horizontal.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blueenergy.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blueenergy.png
new file mode 100644 (file)
index 0000000..a1ec7a4
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_blueenergy.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkblue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkblue.png
new file mode 100644 (file)
index 0000000..17ac627
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkblue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluehover.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluehover.png
new file mode 100644 (file)
index 0000000..35fd0d9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluehover.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluepressed.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluepressed.png
new file mode 100644 (file)
index 0000000..0a401c1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/bg_darkbluepressed.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/black_gradient.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/black_gradient.png
new file mode 100644 (file)
index 0000000..d6e5ba0
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/black_gradient.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/blackbackground.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/blackbackground.png
new file mode 100644 (file)
index 0000000..694b3cc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/blackbackground.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_black.png
new file mode 100644 (file)
index 0000000..4056ad2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue.png
new file mode 100644 (file)
index 0000000..67c3824
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue_indeterminate.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue_indeterminate.png
new file mode 100644 (file)
index 0000000..60aa3c2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_blue_indeterminate.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_disabled.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_disabled.png
new file mode 100644 (file)
index 0000000..391cb00
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_disabled.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_black.png
new file mode 100644 (file)
index 0000000..fa308ea
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_disabled.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_disabled.png
new file mode 100644 (file)
index 0000000..fd5a82a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_disabled.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_white.png
new file mode 100644 (file)
index 0000000..be0eaf5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_indeterminate_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue.png
new file mode 100644 (file)
index 0000000..a22973a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue_indeterminate.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue_indeterminate.png
new file mode 100644 (file)
index 0000000..d6cc5e8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_lightblue_indeterminate.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_white.png
new file mode 100644 (file)
index 0000000..4485813
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/check_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close.png
new file mode 100644 (file)
index 0000000..ac6ceef
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_black.png
new file mode 100644 (file)
index 0000000..e72d6e8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_blue.png
new file mode 100644 (file)
index 0000000..23c1331
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_white.png
new file mode 100644 (file)
index 0000000..ba4cb88
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/close_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/ReadMe.txt
new file mode 100644 (file)
index 0000000..4e35c6e
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the jqx.base.css and are used by the jqxColorPicker widget.\r
+\r
+The images are downloaded from http://johndyer.name and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-hue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-hue.png
new file mode 100644 (file)
index 0000000..549b719
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-hue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-saturation.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-saturation.png
new file mode 100644 (file)
index 0000000..047fb16
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/bar-saturation.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-hue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-hue.png
new file mode 100644 (file)
index 0000000..eae13e9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-hue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation-overlay.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation-overlay.png
new file mode 100644 (file)
index 0000000..6b30e2a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation-overlay.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation.png
new file mode 100644 (file)
index 0000000..8bd743d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/colorpicker/map-saturation.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair-white.png
new file mode 100644 (file)
index 0000000..1f51cd5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair.png
new file mode 100644 (file)
index 0000000..97f1867
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/crosshair.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_30_cccccc_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_30_cccccc_40x100.png
new file mode 100644 (file)
index 0000000..5473aff
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_30_cccccc_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_50_5c5c5c_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_50_5c5c5c_40x100.png
new file mode 100644 (file)
index 0000000..5950a8d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_flat_50_5c5c5c_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_20_555555_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_20_555555_1x400.png
new file mode 100644 (file)
index 0000000..1ad224a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_20_555555_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_0078a3_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_0078a3_1x400.png
new file mode 100644 (file)
index 0000000..1cf1cac
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_0078a3_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_ffc73d_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_ffc73d_1x400.png
new file mode 100644 (file)
index 0000000..35ec0d9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_glass_40_ffc73d_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_gloss-wave_25_333333_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_gloss-wave_25_333333_500x100.png
new file mode 100644 (file)
index 0000000..b1b03b6
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_gloss-wave_25_333333_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_highlight-soft_80_eeeeee_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_highlight-soft_80_eeeeee_1x100.png
new file mode 100644 (file)
index 0000000..e56eefd
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_highlight-soft_80_eeeeee_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_25_000000_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_25_000000_1x100.png
new file mode 100644 (file)
index 0000000..3525eb9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_25_000000_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_30_f58400_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_30_f58400_1x100.png
new file mode 100644 (file)
index 0000000..2b6a9f9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-bg_inset-soft_30_f58400_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_222222_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_222222_256x240.png
new file mode 100644 (file)
index 0000000..b273ff1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_222222_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_4b8e0b_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_4b8e0b_256x240.png
new file mode 100644 (file)
index 0000000..3bdb67b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_4b8e0b_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_a83300_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_a83300_256x240.png
new file mode 100644 (file)
index 0000000..020371b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_a83300_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_cccccc_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_cccccc_256x240.png
new file mode 100644 (file)
index 0000000..9254e05
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_cccccc_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_ffffff_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_ffffff_256x240.png
new file mode 100644 (file)
index 0000000..42f8f99
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkness/ui-icons_ffffff_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkred_gradient.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkred_gradient.png
new file mode 100644 (file)
index 0000000..6e4758d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/darkred_gradient.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/drag.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/drag.png
new file mode 100644 (file)
index 0000000..c87aa87
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/drag.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/dragcancel.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/dragcancel.png
new file mode 100644 (file)
index 0000000..23845b7
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/dragcancel.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/error.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/error.png
new file mode 100644 (file)
index 0000000..11a67f7
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/error.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/filter.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/filter.png
new file mode 100644 (file)
index 0000000..65c0dd1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/filter.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor.png
new file mode 100644 (file)
index 0000000..97c9410
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor_white.png
new file mode 100644 (file)
index 0000000..9d9cc86
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/html_editor_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar-white.png
new file mode 100644 (file)
index 0000000..439839a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar.png
new file mode 100644 (file)
index 0000000..060eb28
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-calendar.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel-white.png
new file mode 100644 (file)
index 0000000..038fbc7
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel.png
new file mode 100644 (file)
index 0000000..60fa9e9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-cancel.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete-white.png
new file mode 100644 (file)
index 0000000..0c17736
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete.png
new file mode 100644 (file)
index 0000000..f4c24db
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-delete.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-blue.png
new file mode 100644 (file)
index 0000000..c8913a2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-transparent.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-transparent.png
new file mode 100644 (file)
index 0000000..c8d75a1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-transparent.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-white.png
new file mode 100644 (file)
index 0000000..c867887
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down.png
new file mode 100644 (file)
index 0000000..6abcf80
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-down.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit-white.png
new file mode 100644 (file)
index 0000000..e019317
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit.png
new file mode 100644 (file)
index 0000000..761581b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-edit.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-blue.png
new file mode 100644 (file)
index 0000000..a7fee7e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-transparent.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-transparent.png
new file mode 100644 (file)
index 0000000..df20021
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-transparent.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-white.png
new file mode 100644 (file)
index 0000000..b160a6c
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first.png
new file mode 100644 (file)
index 0000000..ce94de2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-first.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-blue.png
new file mode 100644 (file)
index 0000000..d7d6b60
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-transparent.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-transparent.png
new file mode 100644 (file)
index 0000000..f94e684
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-transparent.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-white.png
new file mode 100644 (file)
index 0000000..9c73b25
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last.png
new file mode 100644 (file)
index 0000000..330b2ce
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-last.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-blue.png
new file mode 100644 (file)
index 0000000..ed5a6fd
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-transparent.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-transparent.png
new file mode 100644 (file)
index 0000000..23ea69c
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-transparent.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-white.png
new file mode 100644 (file)
index 0000000..77c2ad9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left.png
new file mode 100644 (file)
index 0000000..f222a3a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-left.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized-white.png
new file mode 100644 (file)
index 0000000..2c774b1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized.png
new file mode 100644 (file)
index 0000000..020e496
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-menu-minimized.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception-white.png
new file mode 100644 (file)
index 0000000..0c62d96
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception.png
new file mode 100644 (file)
index 0000000..db4f8f7
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-exception.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-white.png
new file mode 100644 (file)
index 0000000..d9b7f07
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence.png
new file mode 100644 (file)
index 0000000..76ed1d2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-recurrence.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-blue.png
new file mode 100644 (file)
index 0000000..0a43f36
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-transparent.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-transparent.png
new file mode 100644 (file)
index 0000000..26b7e06
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-transparent.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-white.png
new file mode 100644 (file)
index 0000000..6fa8e37
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right.png
new file mode 100644 (file)
index 0000000..2476d82
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-right.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save-white.png
new file mode 100644 (file)
index 0000000..12ec7cd
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save.png
new file mode 100644 (file)
index 0000000..416e92e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-save.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword-white.png
new file mode 100644 (file)
index 0000000..40180e3
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword.png
new file mode 100644 (file)
index 0000000..839c9eb
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-showpassword.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time-white.png
new file mode 100644 (file)
index 0000000..84967dd
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time.png
new file mode 100644 (file)
index 0000000..19e01f1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-time.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-blue.png
new file mode 100644 (file)
index 0000000..dd0689a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-transparent.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-transparent.png
new file mode 100644 (file)
index 0000000..9352de1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-transparent.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-white.png
new file mode 100644 (file)
index 0000000..9489ad5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up.png
new file mode 100644 (file)
index 0000000..ef9452e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/icon-up.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/info.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/info.png
new file mode 100644 (file)
index 0000000..d6871b5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/info.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-small_0_aaaaaa_40x40.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-small_0_aaaaaa_40x40.png
new file mode 100644 (file)
index 0000000..d535973
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-small_0_aaaaaa_40x40.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_15_444444_40x40.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_15_444444_40x40.png
new file mode 100644 (file)
index 0000000..88e46a6
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_15_444444_40x40.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_95_ffdc2e_40x40.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_95_ffdc2e_40x40.png
new file mode 100644 (file)
index 0000000..a4f59e1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_diagonals-thick_95_ffdc2e_40x40.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_glass_55_fbf5d0_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_glass_55_fbf5d0_1x400.png
new file mode 100644 (file)
index 0000000..f25dd91
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_glass_55_fbf5d0_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-hard_30_285c00_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-hard_30_285c00_1x100.png
new file mode 100644 (file)
index 0000000..c341f5e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-hard_30_285c00_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_33_3a8104_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_33_3a8104_1x100.png
new file mode 100644 (file)
index 0000000..3b32c4f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_33_3a8104_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_50_4eb305_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_50_4eb305_1x100.png
new file mode 100644 (file)
index 0000000..6551869
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_50_4eb305_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_60_4ca20b_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_60_4ca20b_1x100.png
new file mode 100644 (file)
index 0000000..e0c83c0
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_highlight-soft_60_4ca20b_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_inset-soft_10_285c00_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_inset-soft_10_285c00_1x100.png
new file mode 100644 (file)
index 0000000..d0e7d80
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-bg_inset-soft_10_285c00_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_4eb305_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_4eb305_256x240.png
new file mode 100644 (file)
index 0000000..bae3420
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_4eb305_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_72b42d_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_72b42d_256x240.png
new file mode 100644 (file)
index 0000000..faf1253
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_72b42d_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_cd0a0a_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_cd0a0a_256x240.png
new file mode 100644 (file)
index 0000000..2ab019b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_cd0a0a_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_ffffff_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_ffffff_256x240.png
new file mode 100644 (file)
index 0000000..42f8f99
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/le-frog/ui-icons_ffffff_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-first.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-first.png
new file mode 100644 (file)
index 0000000..bb46057
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-first.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-last.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-last.png
new file mode 100644 (file)
index 0000000..99c5610
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/icon-last.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_18_b81900_40x40.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_18_b81900_40x40.png
new file mode 100644 (file)
index 0000000..954e22d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_18_b81900_40x40.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_20_666666_40x40.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_20_666666_40x40.png
new file mode 100644 (file)
index 0000000..64ece57
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_diagonals-thick_20_666666_40x40.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_flat_10_000000_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_flat_10_000000_40x100.png
new file mode 100644 (file)
index 0000000..abdc010
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_flat_10_000000_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_f6f6f6_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_f6f6f6_1x400.png
new file mode 100644 (file)
index 0000000..9b383f4
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_f6f6f6_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_fdf5ce_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_fdf5ce_1x400.png
new file mode 100644 (file)
index 0000000..a23baad
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_100_fdf5ce_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_65_ffffff_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_65_ffffff_1x400.png
new file mode 100644 (file)
index 0000000..42ccba2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_glass_65_ffffff_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_gloss-wave_35_f6a828_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_gloss-wave_35_f6a828_500x100.png
new file mode 100644 (file)
index 0000000..39d5824
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_gloss-wave_35_f6a828_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_100_eeeeee_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_100_eeeeee_1x100.png
new file mode 100644 (file)
index 0000000..f127367
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_100_eeeeee_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_75_ffe45c_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_75_ffe45c_1x100.png
new file mode 100644 (file)
index 0000000..359397a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-bg_highlight-soft_75_ffe45c_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_222222_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_222222_256x240.png
new file mode 100644 (file)
index 0000000..b273ff1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_222222_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_228ef1_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_228ef1_256x240.png
new file mode 100644 (file)
index 0000000..a641a37
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_228ef1_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ef8c08_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ef8c08_256x240.png
new file mode 100644 (file)
index 0000000..85e63e9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ef8c08_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffd27a_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffd27a_256x240.png
new file mode 100644 (file)
index 0000000..e117eff
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffd27a_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffffff_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffffff_256x240.png
new file mode 100644 (file)
index 0000000..42f8f99
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/lightness/ui-icons_ffffff_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader-small.gif b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader-small.gif
new file mode 100644 (file)
index 0000000..f7eaf1e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader-small.gif differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader.gif b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader.gif
new file mode 100644 (file)
index 0000000..a534f19
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/loader.gif differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/mail.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/mail.png
new file mode 100644 (file)
index 0000000..dd0b2ea
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/mail.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/menubutton.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/menubutton.png
new file mode 100644 (file)
index 0000000..6abcf80
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/menubutton.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down-white.png
new file mode 100644 (file)
index 0000000..f06b9dc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down.png
new file mode 100644 (file)
index 0000000..42163e5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-down.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first-white.png
new file mode 100644 (file)
index 0000000..26b1273
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first.png
new file mode 100644 (file)
index 0000000..03d02e7
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-first.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last-white.png
new file mode 100644 (file)
index 0000000..6a88126
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last.png
new file mode 100644 (file)
index 0000000..ea1b086
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-last.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left-white.png
new file mode 100644 (file)
index 0000000..62f9292
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left.png
new file mode 100644 (file)
index 0000000..6dd8ef9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-left.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right - Copy.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right - Copy.png
new file mode 100644 (file)
index 0000000..ca67728
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right - Copy.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right-white.png
new file mode 100644 (file)
index 0000000..c0a47dd
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right.png
new file mode 100644 (file)
index 0000000..ca67728
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-right.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up-white.png
new file mode 100644 (file)
index 0000000..c0d10c2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up.png
new file mode 100644 (file)
index 0000000..a0cfc5b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/metro-icon-up.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/multi-arrow.gif b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/multi-arrow.gif
new file mode 100644 (file)
index 0000000..257a7a8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/multi-arrow.gif differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-down.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-down.png
new file mode 100644 (file)
index 0000000..5358fb0
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-down.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-first.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-first.png
new file mode 100644 (file)
index 0000000..27a6301
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-first.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-last.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-last.png
new file mode 100644 (file)
index 0000000..b3eb100
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-last.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-left.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-left.png
new file mode 100644 (file)
index 0000000..7f4c254
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-left.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-right.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-right.png
new file mode 100644 (file)
index 0000000..a51fc97
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-right.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-up.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-up.png
new file mode 100644 (file)
index 0000000..f6492e1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/office-icon-up.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_aaaaaa_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_aaaaaa_40x100.png
new file mode 100644 (file)
index 0000000..5b5dab2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_aaaaaa_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_eeeeee_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_eeeeee_40x100.png
new file mode 100644 (file)
index 0000000..e44f861
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_0_eeeeee_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_c0402a_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_c0402a_40x100.png
new file mode 100644 (file)
index 0000000..881ea6b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_c0402a_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_eeeeee_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_eeeeee_40x100.png
new file mode 100644 (file)
index 0000000..e44f861
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_flat_55_eeeeee_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_100_f8f8f8_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_100_f8f8f8_1x400.png
new file mode 100644 (file)
index 0000000..cd79e9f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_100_f8f8f8_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_35_dddddd_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_35_dddddd_1x400.png
new file mode 100644 (file)
index 0000000..3550f06
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_35_dddddd_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_60_eeeeee_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_60_eeeeee_1x400.png
new file mode 100644 (file)
index 0000000..8ad921a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_glass_60_eeeeee_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-hard_75_999999_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-hard_75_999999_1x100.png
new file mode 100644 (file)
index 0000000..89b88d8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-hard_75_999999_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-soft_50_c9c9c9_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-soft_50_c9c9c9_1x100.png
new file mode 100644 (file)
index 0000000..1c6203e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-bg_inset-soft_50_c9c9c9_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_3383bb_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_3383bb_256x240.png
new file mode 100644 (file)
index 0000000..905274f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_3383bb_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_454545_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_454545_256x240.png
new file mode 100644 (file)
index 0000000..59bd45b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_454545_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_70b2e1_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_70b2e1_256x240.png
new file mode 100644 (file)
index 0000000..ed8543e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_70b2e1_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_999999_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_999999_256x240.png
new file mode 100644 (file)
index 0000000..50ff803
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_999999_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_fbc856_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_fbc856_256x240.png
new file mode 100644 (file)
index 0000000..9d1b027
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/overcast/ui-icons_fbc856_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-black.png
new file mode 100644 (file)
index 0000000..f88283d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-blue.png
new file mode 100644 (file)
index 0000000..428e335
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-lightblue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-lightblue.png
new file mode 100644 (file)
index 0000000..8369691
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-lightblue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-white.png
new file mode 100644 (file)
index 0000000..47ea640
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-yellow.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-yellow.png
new file mode 100644 (file)
index 0000000..53bb6bb
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin-yellow.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin.png
new file mode 100644 (file)
index 0000000..be5d524
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pin.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-black.png
new file mode 100644 (file)
index 0000000..ec48674
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-blue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-blue.png
new file mode 100644 (file)
index 0000000..b2a3872
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-blue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-lightblue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-lightblue.png
new file mode 100644 (file)
index 0000000..64446ee
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-lightblue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-white.png
new file mode 100644 (file)
index 0000000..bebeac8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-yellow.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-yellow.png
new file mode 100644 (file)
index 0000000..0de817f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned-yellow.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned.png
new file mode 100644 (file)
index 0000000..fe40bee
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pinned.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus.png
new file mode 100644 (file)
index 0000000..7077679
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus_white.png
new file mode 100644 (file)
index 0000000..a3df877
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/plus_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pointer.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pointer.png
new file mode 100644 (file)
index 0000000..cd23fdd
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/pointer.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_classic.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_classic.png
new file mode 100644 (file)
index 0000000..33c237f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_classic.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_darkblue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_darkblue.png
new file mode 100644 (file)
index 0000000..c9fb593
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_darkblue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_shinyblack.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_shinyblack.png
new file mode 100644 (file)
index 0000000..7df8745
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_shinyblack.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_summer.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_summer.png
new file mode 100644 (file)
index 0000000..4a2e269
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/rangebar_summer.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_down.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_down.png
new file mode 100644 (file)
index 0000000..d41c93b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_down.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_up.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_up.png
new file mode 100644 (file)
index 0000000..59e370a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_arrow_up.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_gradient.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_gradient.png
new file mode 100644 (file)
index 0000000..9d2c770
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/red_gradient.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-first.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-first.png
new file mode 100644 (file)
index 0000000..4cdfdc5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-first.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-last.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-last.png
new file mode 100644 (file)
index 0000000..a2fb1ac
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/icon-last.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_0_aaaaaa_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_0_aaaaaa_40x100.png
new file mode 100644 (file)
index 0000000..5b5dab2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_0_aaaaaa_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_55_fbec88_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_55_fbec88_40x100.png
new file mode 100644 (file)
index 0000000..8ff0d29
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_flat_55_fbec88_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_75_d0e5f5_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_75_d0e5f5_1x400.png
new file mode 100644 (file)
index 0000000..9fb564f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_75_d0e5f5_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_85_dfeffc_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_85_dfeffc_1x400.png
new file mode 100644 (file)
index 0000000..7c448c5
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_85_dfeffc_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_95_fef1ec_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_95_fef1ec_1x400.png
new file mode 100644 (file)
index 0000000..4443fdc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_glass_95_fef1ec_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_gloss-wave_55_5c9ccc_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_gloss-wave_55_5c9ccc_500x100.png
new file mode 100644 (file)
index 0000000..81ecc36
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_gloss-wave_55_5c9ccc_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png
new file mode 100644 (file)
index 0000000..4f3faf8
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_fcfdfd_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_fcfdfd_1x100.png
new file mode 100644 (file)
index 0000000..38c3833
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-bg_inset-hard_100_fcfdfd_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_217bc0_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_217bc0_256x240.png
new file mode 100644 (file)
index 0000000..6f4bd87
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_217bc0_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_2e83ff_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_2e83ff_256x240.png
new file mode 100644 (file)
index 0000000..09d1cdc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_2e83ff_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_469bdd_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_469bdd_256x240.png
new file mode 100644 (file)
index 0000000..bd2cf07
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_469bdd_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_6da8d5_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_6da8d5_256x240.png
new file mode 100644 (file)
index 0000000..3d6f567
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_6da8d5_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_cd0a0a_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_cd0a0a_256x240.png
new file mode 100644 (file)
index 0000000..2ab019b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_cd0a0a_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_d8e7f3_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_d8e7f3_256x240.png
new file mode 100644 (file)
index 0000000..ad2dc6f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_d8e7f3_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_f9bd01_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_f9bd01_256x240.png
new file mode 100644 (file)
index 0000000..7862502
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/redmond/ui-icons_f9bd01_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_black.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_black.png
new file mode 100644 (file)
index 0000000..da66035
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_black.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_disabled.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_disabled.png
new file mode 100644 (file)
index 0000000..07c3eb9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_disabled.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_indeterminate.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_indeterminate.png
new file mode 100644 (file)
index 0000000..07c3eb9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_indeterminate.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_white.png
new file mode 100644 (file)
index 0000000..501a67b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_check_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_hover.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_hover.png
new file mode 100644 (file)
index 0000000..0de1a3f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_hover.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_normal.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_normal.png
new file mode 100644 (file)
index 0000000..be38cde
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_classic_normal.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_disabled.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_disabled.png
new file mode 100644 (file)
index 0000000..06fa322
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/roundbg_disabled.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search.png
new file mode 100644 (file)
index 0000000..ecbff1f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search_white.png
new file mode 100644 (file)
index 0000000..e10505a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/search_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_0_aaaaaa_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_0_aaaaaa_40x100.png
new file mode 100644 (file)
index 0000000..5b5dab2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_0_aaaaaa_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_75_ffffff_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_75_ffffff_40x100.png
new file mode 100644 (file)
index 0000000..ac8b229
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_flat_75_ffffff_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_55_fbf9ee_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_55_fbf9ee_1x400.png
new file mode 100644 (file)
index 0000000..ad3d634
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_55_fbf9ee_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_65_ffffff_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_65_ffffff_1x400.png
new file mode 100644 (file)
index 0000000..42ccba2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_65_ffffff_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_dadada_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_dadada_1x400.png
new file mode 100644 (file)
index 0000000..5a46b47
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_dadada_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png
new file mode 100644 (file)
index 0000000..86c2baa
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_95_fef1ec_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_95_fef1ec_1x400.png
new file mode 100644 (file)
index 0000000..4443fdc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_glass_95_fef1ec_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png
new file mode 100644 (file)
index 0000000..7c9fa6c
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_222222_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_222222_256x240.png
new file mode 100644 (file)
index 0000000..b273ff1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_222222_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_2e83ff_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_2e83ff_256x240.png
new file mode 100644 (file)
index 0000000..09d1cdc
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_2e83ff_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_454545_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_454545_256x240.png
new file mode 100644 (file)
index 0000000..59bd45b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_454545_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_888888_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_888888_256x240.png
new file mode 100644 (file)
index 0000000..6d02426
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_888888_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_cd0a0a_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_cd0a0a_256x240.png
new file mode 100644 (file)
index 0000000..2ab019b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/smoothness/ui-icons_cd0a0a_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortasc.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortasc.png
new file mode 100644 (file)
index 0000000..ece4718
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortasc.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortascbutton.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortascbutton.png
new file mode 100644 (file)
index 0000000..64ed9a1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortascbutton.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdesc.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdesc.png
new file mode 100644 (file)
index 0000000..b54c93b
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdesc.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdescbutton.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdescbutton.png
new file mode 100644 (file)
index 0000000..d5b921e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortdescbutton.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortremove.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortremove.png
new file mode 100644 (file)
index 0000000..3b35765
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sortremove.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star.png
new file mode 100644 (file)
index 0000000..314b501
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_disabled.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_disabled.png
new file mode 100644 (file)
index 0000000..57ab22a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_disabled.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_hover.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_hover.png
new file mode 100644 (file)
index 0000000..5f531e9
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/star_hover.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_55_999999_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_55_999999_40x100.png
new file mode 100644 (file)
index 0000000..6b6de7d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_55_999999_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_75_aaaaaa_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_75_aaaaaa_40x100.png
new file mode 100644 (file)
index 0000000..5b5dab2
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_flat_75_aaaaaa_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_45_0078ae_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_45_0078ae_1x400.png
new file mode 100644 (file)
index 0000000..3dac650
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_45_0078ae_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_55_f8da4e_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_55_f8da4e_1x400.png
new file mode 100644 (file)
index 0000000..b383704
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_55_f8da4e_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_75_79c9ec_1x400.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_75_79c9ec_1x400.png
new file mode 100644 (file)
index 0000000..d384e42
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_glass_75_79c9ec_1x400.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_45_e14f1c_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_45_e14f1c_500x100.png
new file mode 100644 (file)
index 0000000..b9851ba
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_45_e14f1c_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_50_6eac2c_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_50_6eac2c_500x100.png
new file mode 100644 (file)
index 0000000..76dac56
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_50_6eac2c_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_75_2191c0_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_75_2191c0_500x100.png
new file mode 100644 (file)
index 0000000..eeacf69
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_gloss-wave_75_2191c0_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_inset-hard_100_fcfdfd_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_inset-hard_100_fcfdfd_1x100.png
new file mode 100644 (file)
index 0000000..e301db6
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-bg_inset-hard_100_fcfdfd_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_0078ae_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_0078ae_256x240.png
new file mode 100644 (file)
index 0000000..5b36315
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_0078ae_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_056b93_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_056b93_256x240.png
new file mode 100644 (file)
index 0000000..a3db109
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_056b93_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_d8e7f3_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_d8e7f3_256x240.png
new file mode 100644 (file)
index 0000000..ad2dc6f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_d8e7f3_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_e0fdff_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_e0fdff_256x240.png
new file mode 100644 (file)
index 0000000..8648d51
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_e0fdff_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f5e175_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f5e175_256x240.png
new file mode 100644 (file)
index 0000000..eda3b8a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f5e175_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f7a50d_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f7a50d_256x240.png
new file mode 100644 (file)
index 0000000..4a1145f
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_f7a50d_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_fcd113_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_fcd113_256x240.png
new file mode 100644 (file)
index 0000000..057a85e
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/start/ui-icons_fcd113_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/stripes.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/stripes.png
new file mode 100644 (file)
index 0000000..1bf654a
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/stripes.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/success.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/success.png
new file mode 100644 (file)
index 0000000..778902d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/success.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ReadMe.txt b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ReadMe.txt
new file mode 100644 (file)
index 0000000..5581fc3
--- /dev/null
@@ -0,0 +1,4 @@
+The images in this folder are referenced by the following themes: jqx.ui-lightness.css, jqx.ui-darkness.css, jqx.ui-le-frog.css, jqx.ui-overcast.css, jqx-ui-redmond.css, jqx-ui-smoothness.css, jqx-ui-start.css and jqx-ui-sunny.css.\r
+\r
+The images are downloaded from http://jqueryui.com and are MIT Licensed.\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_diagonals-medium_20_d34d17_40x40.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_diagonals-medium_20_d34d17_40x40.png
new file mode 100644 (file)
index 0000000..d8bd1be
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_diagonals-medium_20_d34d17_40x40.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_30_cccccc_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_30_cccccc_40x100.png
new file mode 100644 (file)
index 0000000..5473aff
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_30_cccccc_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_50_5c5c5c_40x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_50_5c5c5c_40x100.png
new file mode 100644 (file)
index 0000000..5950a8d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_flat_50_5c5c5c_40x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_45_817865_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_45_817865_500x100.png
new file mode 100644 (file)
index 0000000..ccca730
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_45_817865_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png
new file mode 100644 (file)
index 0000000..01ccab3
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png
new file mode 100644 (file)
index 0000000..66a7dec
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_90_fff9e5_500x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_90_fff9e5_500x100.png
new file mode 100644 (file)
index 0000000..6e3ad2d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_gloss-wave_90_fff9e5_500x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_highlight-soft_100_feeebd_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_highlight-soft_100_feeebd_1x100.png
new file mode 100644 (file)
index 0000000..8c5c35c
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_highlight-soft_100_feeebd_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_inset-soft_30_ffffff_1x100.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_inset-soft_30_ffffff_1x100.png
new file mode 100644 (file)
index 0000000..820b017
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-bg_inset-soft_30_ffffff_1x100.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_3d3d3d_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_3d3d3d_256x240.png
new file mode 100644 (file)
index 0000000..12b7518
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_3d3d3d_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_bd7b00_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_bd7b00_256x240.png
new file mode 100644 (file)
index 0000000..e81995d
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_bd7b00_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_d19405_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_d19405_256x240.png
new file mode 100644 (file)
index 0000000..e993eaa
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_d19405_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_eb990f_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_eb990f_256x240.png
new file mode 100644 (file)
index 0000000..436ea95
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_eb990f_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ed9f26_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ed9f26_256x240.png
new file mode 100644 (file)
index 0000000..668e030
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ed9f26_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_fadc7a_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_fadc7a_256x240.png
new file mode 100644 (file)
index 0000000..f7a4dbf
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_fadc7a_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ffe180_256x240.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ffe180_256x240.png
new file mode 100644 (file)
index 0000000..048e8e1
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/sunny/ui-icons_ffe180_256x240.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/tick.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/tick.png
new file mode 100644 (file)
index 0000000..d9e7ad3
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/tick.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/time.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/time.png
new file mode 100644 (file)
index 0000000..47c86bb
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/time.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_classic.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_classic.png
new file mode 100644 (file)
index 0000000..40e31ec
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_classic.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_darkblue.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_darkblue.png
new file mode 100644 (file)
index 0000000..bfd7602
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_darkblue.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_shinyblack.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_shinyblack.png
new file mode 100644 (file)
index 0000000..5cf5d68
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_shinyblack.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_summer.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_summer.png
new file mode 100644 (file)
index 0000000..40e31ec
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/track_summer.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/warning.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/warning.png
new file mode 100644 (file)
index 0000000..3d0eaff
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/warning.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_indeterminate_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_indeterminate_white.png
new file mode 100644 (file)
index 0000000..78cc3e6
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_indeterminate_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_white.png b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_white.png
new file mode 100644 (file)
index 0000000..1c3c433
Binary files /dev/null and b/wrt/wrt_support/sample/launcher/jqwidgets/styles/images/wp_check_white.png differ
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.android.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.android.css
new file mode 100644 (file)
index 0000000..4fe67e6
--- /dev/null
@@ -0,0 +1,523 @@
+.jqx-rc-tl-android\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+}\r
+.jqx-rc-tr-android\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+.jqx-rc-bl-android\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+.jqx-rc-br-android\r
+{\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-android\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-android\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-android\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-android\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-android\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+.jqx-widget-android {\r
+    font-size: 16px; \r
+    font-family: Roboto,HelveticaNeue,sans-serif;\r
+    color: inherit;\r
+}\r
+input[type=text].jqx-input-android, input[type=password].jqx-input-android, .jqx-input-group-addon-android{\r
+   font-size: 16px; \r
+   font-family: Roboto,HelveticaNeue,sans-serif;\r
+   border-color: #636466;\r
+}\r
+.jqx-widget-content-android{font-size: 16px;  font-family: Roboto,HelveticaNeue,sans-serif; border-color: #3c4648; color: #ffffff; background-color: #000;}\r
+.jqx-widget-header-android{\r
+    font-size: 16px; \r
+    font-family: Roboto,HelveticaNeue,sans-serif; \r
+    color: #ffffff; \r
+    border-color:#000;\r
+    border-bottom-color: #32abda;\r
+    background: #000;\r
+}\r
+.jqx-fill-state-normal-android, .jqx-fill-state-hover-android{font-size: 16px;  font-family: Roboto,HelveticaNeue,sans-serif; border-color: #1C1C1E; color: #ffffff; background: #3E3E42;}\r
+\r
+.jqx-button-android, .jqx-grid-pager-number-android {\r
+   background: #4b4c4e;\r
+   border-color: #636466;\r
+   color: #fbfbfd;\r
+}\r
+.jqx-fill-state-focus-android {\r
+    border-color: #3C4648;\r
+}\r
+.jqx-listitem-state-normal-android, .jqx-listmenu-item-android {\r
+    background: #000;\r
+    border-top: 1px solid #191919;\r
+}\r
+.jqx-listmenu-header-label-android {\r
+    font-size: 24px;\r
+    margin-left: -5px;\r
+}\r
+.jqx-listmenu-item-label-android {\r
+    display: inline-block;\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-listmenu-item-android a:link, .jqx-listmenu-item-android a:visited {\r
+    display: inline-block;\r
+    text-decoration: none;\r
+    color: inherit;\r
+    font-size: 16px;\r
+    font-family: Roboto,HelveticaNeue,sans-serif;\r
+    color: #fff;\r
+    width: 100%;\r
+    height: 100%;\r
+    padding: 15px;\r
+}\r
+.jqx-listmenu-separator-mobile {\r
+    font-size: 16px; \r
+    font-family: Roboto,HelveticaNeue,sans-serif;\r
+}\r
+\r
+.jqx-listmenu-item-android {\r
+    padding: 0px;\r
+}\r
+\r
+.jqx-listitem-state-normal-touch-android {\r
+    padding-top: 5px;\r
+    padding-bottom: 5px;\r
+}\r
+.jqx-listitem-element:first-child .jqx-listitem-state-normal-android {\r
+    border-top: 1px solid #000;\r
+}\r
+\r
+.jqx-listitem-state-hover-android {\r
+    background: #000;\r
+    border-color: #000;\r
+    border-bottom-color: #191919;\r
+}\r
+\r
+.jqx-listmenu-auto-separator-android, .jqx-listitem-state-group-android {\r
+    background: #293943  !important;\r
+}\r
+.jqx-fill-state-pressed-android{border-color:#10618c; color: #fff; background-color:#10618c;\r
+\r
+}\r
+.jqx-fill-state-disabled-android {\r
+    color: #898989;\r
+}\r
+.jqx-scrollbar-state-normal-android, .jqx-grid-bottomright-android, .jqx-panel-bottomright-android, .jqx-listbox-bottomright-android{background-color:#3E3E42;}\r
+.jqx-widget-android .jqx-grid-column-header-android, .jqx-grid-cell-android, .jqx-widget-android .jqx-grid-cell-android, .jqx-widget-android .jqx-grid-group-cell-android, .jqx-grid-group-cell-android{font-size: 16px;  font-family: Roboto,HelveticaNeue,sans-serif; border-color: #1C1C1E; background-color: #000; color: #fff;}\r
+.jqx-widget-android .jqx-grid-cell-alt-android, .jqx-widget-android .jqx-grid-cell-sort-android, .jqx-widget-android .jqx-grid-cell-pinned-android, .jqx-widget-android .jqx-grid-cell-filter-android, .jqx-grid-cell-sort-alt-android, .jqx-grid-cell-filter-alt-android, .jqx-grid-cell-pinned-android, .jqx-grid-cell-alt-android, .jqx-grid-cell-sort-android{border-color: #202023; background-color:#3E3E42; color: #fff;}\r
+.jqx-menu-vertical-android{background: #3E3E42; border-color: #3E3E42;}\r
+.jqx-widget-android .jqx-grid-cell-android, .jqx-widget-android .jqx-grid-column-header-android, .jqx-widget-android .jqx-grid-group-cell-android { border-color: #202023;}\r
+\r
+.jqx-widget-android .jqx-grid-column-menubutton-android, .jqx-widget-android .jqx-grid-column-sortascbutton-android, .jqx-widget-android .jqx-grid-column-sortdescbutton-android, .jqx-widget-android .jqx-grid-column-filterbutton-android {\r
+    background-color: transparent;\r
+    border-color: #010f18;\r
+}\r
+.jqx-grid-cell-filter-row-android, .jqx-grid-android .jqx-widget-header-android, .jqx-grid-header-android, .jqx-grid-column-header-android {font-size: 16px;  font-family: Roboto,HelveticaNeue,sans-serif; \r
+    border-color:#000 !important;\r
+    border-bottom-color: #32b3e3 !important;\r
+    background: #000 !important;\r
+}\r
+.jqx-grid-cell-filter-row-android {\r
+   border-top: 2px solid transparent;\r
+   border-bottom: 1px solid #32b3e3 !important;\r
+   margin-top: -1px;\r
+}\r
+\r
+.jqx-widget-header-android .jqx-calendar-title-header-android, .jqx-calendar-title-header-android, .jqx-input-button-header-android, .jqx-window-header-android {\r
+   background: #262626;\r
+   border-color: #262626;\r
+   border-bottom-color: #262626 !important;\r
+}\r
+.jqx-window-content-android {\r
+    background: #262626;\r
+ }\r
+.jqx-calendar-month-android {\r
+    border-top: 1px solid #262626;\r
+   background: #262626;\r
+ }\r
+.jqx-calendar-column-header-android {\r
+   background: #262626;\r
+   border-color: #262626;\r
+ }\r
+.jqx-grid-column-menubutton-android {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+ }\r
+.jqx-input-android {\r
+    border-color: #3C4648;\r
+}\r
+.jqx-widget-android .jqx-grid-cell-selected-android, .jqx-grid-cell-selected-android{ background-color:#10638d !important; border-color: #10638d !important; font-size: 16px;  color:#fff !important}\r
+.jqx-widget-android .jqx-grid-cell-hover-android, .jqx-grid-cell-hover-android{ background-color:#3E3E42;}\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton-android {\r
+    background-image: url('images/metro-icon-up-white.png');\r
+ }\r
+.jqx-grid-column-sortdescbutton-android {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-checkbox-default-android {\r
+    background: #000;\r
+    border-color: #636466;\r
+}\r
+.jqx-checkbox-check-checked-android{position: relative; background:transparent url(images/check_lightblue.png) center center no-repeat}\r
+.jqx-checkbox-check-indeterminate-android{background:transparent url(images/check_lightblue_indeterminate.png) center center no-repeat}\r
+.jqx-checkbox-hover-android, .jqx-radiobutton-hover-android {\r
+\r
+}\r
+.jqx-radiobutton-check-checked-android {\r
+    background: #33b5e5;\r
+    border-color: #33b5e5;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-normal-horizontal-android, .jqx-scrollbar-thumb-state-normal-android {\r
+    background: #686868; border-color: #686868;\r
+    -moz-border-radius: 10px;\r
+    -webkit-border-radius: 10px;\r
+    border-radius: 10px;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-android, .jqx-scrollbar-thumb-state-hover-android {\r
+    background: #9E9E9E; border-color: #9E9E9E;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-android, .jqx-scrollbar-thumb-state-pressed-android {\r
+    background: #ffffff; border-color: #ffffff;\r
+}\r
+.jqx-scrollbar-button-state-normal-android\r
+{\r
+    border: 1px solid #3E3E42; \r
+    background: #3E3E42;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-android\r
+{\r
+    border: 1px solid #3E3E42;\r
+    background: #3E3E42;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-android\r
+{\r
+    border: 1px solid #3E3E42;\r
+    background: #3E3E42;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-android\r
+{\r
+    background-image: url(images/metro-icon-up-white.png);\r
+}\r
+.jqx-window-collapse-button-collapsed-android {\r
+  background-image: url(images/metro-icon-down-white.png);\r
+}\r
+.jqx-icon-arrow-up-android, .jqx-expander-arrow-bottom-android, .jqx-menu-item-arrow-up-android\r
+{\r
+    background-image: url('images/metro-icon-up-white.png');\r
+}\r
+.jqx-icon-arrow-down-android, .jqx-expander-arrow-top-android, .jqx-tree-item-arrow-expand-android, .jqx-tree-item-arrow-expand-hover-android, .jqx-menu-item-arrow-down-android\r
+{\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-icon-arrow-left-android, .jqx-menu-item-arrow-left-android\r
+{\r
+    background-image: url('images/metro-icon-left-white.png');\r
+}\r
+.jqx-icon-arrow-right-android, .jqx-menu-item-arrow-right-android, .jqx-tree-item-arrow-collapse-android, .jqx-tree-item-arrow-collapse-hover-android\r
+{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+}\r
+.jqx-tabs-arrow-left-android, .jqx-tree-item-arrow-collapse-rtl-android, .jqx-tree-item-arrow-collapse-hover-rtl-android\r
+{\r
+    background-image: url('images/metro-icon-left-white.png');\r
+}\r
+.jqx-tabs-arrow-right-android\r
+{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+}\r
+.jqx-menu-item-arrow-up-selected-android, .jqx-icon-arrow-up-selected-android{background-image:url('images/metro-icon-up-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-android, .jqx-icon-arrow-down-selected-android{background-image:url('images/metro-icon-down-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-android, .jqx-icon-arrow-left-selected-android{background-image:url('images/metro-icon-left-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-android, .jqx-icon-arrow-right-selected-android{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-window-close-button-android, .jqx-icon-close-android, .jqx-tabs-close-button-android, .jqx-tabs-close-button-hover-android, .jqx-tabs-close-button-selected-android{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+.jqx-listbox-feedback-android {\r
+    border-top: 1px dashed #fff;\r
+}\r
+\r
+.jqx-scrollbar-android .jqx-icon-arrow-up-selected-android{background-image:url('images/metro-icon-up-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-android .jqx-icon-arrow-down-selected-android{background-image:url('images/metro-icon-down-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-android .jqx-icon-arrow-left-selected-android{background-image:url('images/metro-icon-left-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-android .jqx-icon-arrow-right-selected-android{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat; background-position:center;}\r
+\r
+.jqx-input-button-content-android\r
+{  \r
+    background: #262626;\r
+    border-color: #262626; \r
+    font-size: 13px;\r
+}\r
+.jqx-input-button-header-android {\r
+    padding-top: 2px !important;\r
+    padding-bottom: 2px !important;\r
+}\r
+.jqx-button-android {\r
+   padding: 10px 7px;\r
+}\r
+.jqx-slider-button-android\r
+{\r
+    border-radius: 100%;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    padding: 4px !important;\r
+}\r
+.jqx-slider-slider-android {\r
+    width: 25px;\r
+    height: 25px;\r
+    margin-top: -10px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background: rgba(51,181,229,0.6);\r
+    background-image: -moz-radial-gradient(#33b5e5 10%,transparent 90%);\r
+    background-image: radial-gradient(#33b5e5 10%,transparent 90%);\r
+    border: none;\r
+}\r
+.jqx-slider-rangebar-android {\r
+    background: rgba(51,181,229,0.5);\r
+ }\r
+.jqx-dropdownlist-state-normal-android, .jqx-dropdownlist-state-hover-android, .jqx-dropdownlist-state-selected-android,\r
+.jqx-scrollbar-button-state-hover-android, .jqx-scrollbar-button-state-normal-android, .jqx-scrollbar-button-state-pressed-android,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-android, .jqx-scrollbar-thumb-state-hover-horizontal-android, .jqx-scrollbar-thumb-state-pressed-horizontal-android,\r
+.jqx-scrollbar-thumb-state-normal-android, .jqx-scrollbar-thumb-state-pressed-android, .jqx-button-android, .jqx-tree-item-hover-android, .jqx-tree-item-selected-android,\r
+.jqx-tree-item-android, .jqx-menu-item-android, .jqx-menu-item-hover-android, .jqx-menu-item-selected-android, .jqx-menu-item-top-android, .jqx-menu-item-top-hover-android, \r
+.jqx-menu-item-top-selected-android, .jqx-slider-button-android, .jqx-slider-slider-android\r
+ {\r
+    -webkit-transition: background-color 100ms linear;\r
+     -moz-transition: background-color 100ms linear;\r
+     -o-transition: background-color 100ms linear;\r
+     -ms-transition: background-color 100ms linear;\r
+     transition: background-color 100ms linear;\r
+}\r
+.jqx-switchbutton-android {\r
+    -moz-border-radius: 0px; \r
+    -webkit-border-radius: 0px; \r
+    border-radius: 0px;\r
+    border: 2px solid #010f18;\r
+}\r
+.jqx-switchbutton-thumb-android {\r
+    width: 16px;\r
+    background: #222222;\r
+    border: 1px solid #222222;\r
+}\r
+.jqx-switchbutton-label-on-android {\r
+    background: #32b3e3;\r
+    color: #fff;\r
+}\r
+.jqx-switchbutton-label-off-android {\r
+    background: #444;\r
+    color: #fff;\r
+}\r
+.jqx-tabs-android {\r
+    border: 1px solid #1a1a1a;\r
+}\r
+.jqx-tabs-title-android {\r
+    background: transparent;\r
+    border-color: transparent;\r
+    border-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    -moz-border-radius: 0px;\r
+    -moz-border-top-left-radius: 0px;\r
+    -moz-border-top-right-radius: 0px;\r
+    -moz-border-bottom-left-radius: 0px;\r
+    -moz-border-bottom-right-radius: 0px;\r
+}\r
+.jqx-tabs-header-android, .jqx-tabs-arrow-background {\r
+    background: #000;\r
+    color: #fff;\r
+    border-bottom-color: #636466 !important;\r
+}\r
+.jqx-tabs-header-bottom-android {\r
+    background: #000;\r
+    color: #fff;\r
+    border-top-color: #636466 !important;\r
+    border-top-style: solid;\r
+    border-top-width: 1px;\r
+}\r
+.jqx-tabs-title-selected-top-android, .jqx-tabs-selection-tracker-top-android {\r
+    border-bottom: 1px solid #000;\r
+    border-bottom: 2px solid #32b3e3;\r
+    color: #fff;\r
+    background: #000;\r
+    box-shadow: 0 0px 5px #000;\r
+    -webkit-box-shadow: 0 0px 5px #000;\r
+    padding-top: 5px;\r
+    padding-bottom: 5px;\r
+}\r
+\r
+.jqx-tabs-title-selected-bottom-android, .jqx-tabs-selection-tracker-bottom-android {\r
+    border-top: 2px solid #32b3e3;\r
+    color: #fff;\r
+   background: #000;  \r
+    box-shadow: 0 0px 5px #000;\r
+    -webkit-box-shadow: 0 0px 5px #000;\r
+    padding-top: 6px;\r
+    padding-bottom: 6px;\r
+}\r
+.jqx-tabs-title-hover-top-android, .jqx-tabs-title-hover-bottom-android, .jqx-tabs-header-android\r
+{\r
+    color: #fff;\r
+}\r
+.jqx-switchbutton-wrapper-android {\r
+}\r
+.jqx-icon-arrow-first-android\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-android\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-progressbar-text-android {\r
+    font-size: 16px;\r
+}\r
+.jqx-grid-pager-android .jqx-button-android {\r
+    padding: 3px !important;\r
+}\r
+.jqx-grid-pager-number-android {\r
+    top: 2px;\r
+    position: relative;\r
+    padding: 1px 7px;\r
+}\r
+.jqx-widget-android .jqx-grid-groups-header-android,\r
+.jqx-grid-groups-header-android {\r
+    border-bottom-color: #000 !important;\r
+ }\r
+.jqx-grid-group-collapse-android {\r
+    background-image: url(images/metro-icon-right-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-android\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-left-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-android, .jqx-grid-group-expand-rtl-android\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-down-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-tree-grid-expand-button-android {\r
+    margin-top: 4px;\r
+}\r
+.jqx-tree-grid-checkbox-android {\r
+    margin-top: 2px;\r
+}\r
+.jqx-grid-table-android {\r
+    border-color: #000;\r
+}\r
+.jqx-icon-search-android\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-passwordinput-password-icon-android, .jqx-passwordinput-password-icon-rtl-android\r
+{\r
+    background-image: url(images/icon-showpassword-white.png) !important;\r
+    background-repeat: no-repeat !important;\r
+}\r
+.jqx-icon-calendar-android, .jqx-icon-calendar-hover-android, .jqx-icon-calendar-pressed-android {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-android, .jqx-icon-time-hover-android, .jqx-icon-time-pressed-android {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-calendar-cell-today-android {\r
+    color: black;\r
+}\r
+.jqx-editor-toolbar-icon-android {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-menu-minimized-button-android {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-file-upload-file-name-android{padding:3px;}\r
+.jqx-file-upload-file-row-android{ height: 40px;}\r
+.jqx-layout-android\r
+{\r
+    background-color: #000;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-android\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-android\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-android, .jqx-scheduler-time-column-android, .jqx-scheduler-toolbar-details-android {\r
+    color: white !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.arctic.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.arctic.css
new file mode 100644 (file)
index 0000000..72caadc
--- /dev/null
@@ -0,0 +1,531 @@
+/*Rounded Corners*/\r
+/*top-left rounded Corners*/\r
+.jqx-rc-tl-arctic {\r
+    -moz-border-radius-topleft: 4px;\r
+    -webkit-border-top-left-radius: 4px;\r
+    border-top-left-radius: 4px;\r
+}\r
+/*top-right rounded Corners*/\r
+.jqx-rc-tr-arctic {\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+}\r
+/*bottom-left rounded Corners*/\r
+.jqx-rc-bl-arctic {\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+}\r
+/*bottom-right rounded Corners*/\r
+.jqx-rc-br-arctic {\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-arctic {\r
+    -moz-border-radius-topleft: 4px;\r
+    -webkit-border-top-left-radius: 4px;\r
+    border-top-left-radius: 4px;\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-arctic {\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-arctic {\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-arctic {\r
+    -moz-border-radius-topleft: 4px;\r
+    -webkit-border-top-left-radius: 4px;\r
+    border-top-left-radius: 4px;\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-arctic {\r
+    -moz-border-radius: 4px;\r
+    -webkit-border-radius: 4px;\r
+    border-radius: 4px;\r
+}\r
+\r
+.jqx-widget-arctic, .jqx-widget-header-arctic, .jqx-fill-state-normal-arctic,\r
+.jqx-widget-content-arctic, .jqx-fill-state-hover-arctic, .jqx-fill-state-pressed-arctic {\r
+    -webkit-transition: box-shadow linear 0.2s;\r
+    -moz-transition: box-shadow linear 0.1s;\r
+    -o-transition: box-shadow linear 0.1s;\r
+    transition: box-shadow linear 0.1s;\r
+}\r
+\r
+.jqx-widget-content-arctic {\r
+    background-color: #ffffff;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-widget-header-arctic {\r
+    color: #333333;\r
+    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);\r
+       background-color:#f0f0f0; \r
+       background:#f0f0f0;\r
+       background:-webkit-gradient(linear, 0 0, 0 100%, from(#f8f8f8), to(#eaeaea));\r
+       background:-moz-linear-gradient(100% 100% 90deg, #eaeaea, #f8f8f8);\r
+       background:-ms-linear-gradient(top, #f8f8f8 0%,#eaeaea 100%);\r
+       background:linear-gradient(top, #f8f8f8 0%,#eaeaea 100%);       \r
+    border-color:#cccccc;\r
+    *zoom: 1;\r
+    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+}\r
+\r
+.jqx-button-arctic, .jqx-fill-state-normal-arctic  {\r
+    color: #333333;\r
+    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);\r
+       background:#f0f0f0;\r
+       background:-webkit-gradient(linear, 0 0, 0 100%, from(#f8f8f8), to(#eaeaea));\r
+       background:-moz-linear-gradient(100% 100% 90deg, #eaeaea, #f8f8f8);\r
+       background:-ms-linear-gradient(top, #f8f8f8 0%,#eaeaea 100%);\r
+       background:linear-gradient(top, #f8f8f8 0%,#eaeaea 100%);       \r
+    border-color: #cccccc;\r
+    *zoom: 1;\r
+    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+}\r
+\r
+.jqx-fill-state-hover-arctic {\r
+    text-shadow: 0 1px 0 rgb(240, 240, 240);\r
+    border-color: #b2b2b2;\r
+    border-color: rgba(0, 0, 0, 0.3);\r
+    color: black;\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -webkit-linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -moz-linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -o-linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    box-shadow: 0 1px 0 #f0f0f0, inset 0 1px 2px #f0f0f0;\r
+    -webkit-box-shadow: 0 1px 0 #f0f0f0, inset 0 1px 2px #f0f0f0;\r
+    -moz-box-shadow: 0 1px 0 #f0f0f0, inset 0 1px 2px #f0f0f0;\r
+}\r
+.jqx-fill-state-pressed-arctic {\r
+    color: #333333;\r
+    background-color: #e6e6e6;\r
+    *background-color: #d9d9d9;\r
+}\r
+\r
+.jqx-fill-state-hover-arctic, .jqx-fill-state-focus-arctic {\r
+    color: #333333;\r
+    text-decoration: none;\r
+}\r
+\r
+.jqx-fill-state-pressed-arctic {\r
+    background-image: none;\r
+    outline: 0;\r
+    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+}\r
+\r
+.jqx-grid-cell-arctic {\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-grid-column-menubutton-arctic {\r
+    background-color: transparent;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-calendar-row-header-arctic, .jqx-calendar-top-left-header-arctic {\r
+    background-color: #f0f0f0;\r
+    border: 0px solid #f2f2f2;\r
+}\r
+\r
+.jqx-calendar-column-header-arctic {\r
+    background-color: #FFF;\r
+    border-top: 1px solid #FFF;\r
+    border-bottom: 1px solid #e9e9e9;\r
+}\r
+\r
+.jqx-expander-header-arctic {\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);\r
+       background:#f0f0f0;\r
+       background:-webkit-gradient(linear, 0 0, 0 100%, from(#f8f8f8), to(#eaeaea));\r
+       background:-moz-linear-gradient(100% 100% 90deg, #eaeaea, #f8f8f8);\r
+       background:-ms-linear-gradient(top, #f8f8f8 0%,#eaeaea 100%);\r
+       background:linear-gradient(top, #f8f8f8 0%,#eaeaea 100%);       \r
+    border-color:#cccccc;\r
+    *zoom: 1;\r
+    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+}\r
+.jqx-ribbon-header-vertical-arctic, .jqx-widget-header-vertical-arctic {\r
+       background:#f0f0f0;\r
+       background:-ms-linear-gradient(left, #f8f8f8 0%,#eaeaea 100%);\r
+       background:linear-gradient(left, #f8f8f8 0%,#eaeaea 100%);      \r
+}\r
+\r
+.jqx-scrollbar-state-normal-arctic {\r
+    background-color: #f8f8f8;\r
+    border: 1px solid #f8f8f8;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-normal-arctic, .jqx-scrollbar-thumb-state-normal-horizontal-arctic {\r
+    background: #f5f5f5;\r
+    border-color: #b3b3b3;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-hover-arctic, .jqx-scrollbar-thumb-state-hover-horizontal-arctic {\r
+    background: #e6e6e6;\r
+    border-color: #b3b3b3;\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+\r
+.jqx-progressbar-arctic {\r
+    background: #f7f7f7 !important;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-progressbar-value-arctic, .jqx-splitter-collapse-button-horizontal-arctic {\r
+    background-color: #0081c2;\r
+    background-repeat: repeat-x;\r
+    background-image: linear-gradient(to bottom, #149bdf, #0480be);\r
+}\r
+\r
+.jqx-splitter-collapse-button-vertical-arctic, .jqx-progressbar-value-vertical-arctic {\r
+    background-color: #0081c2;\r
+    background-repeat: repeat-x;\r
+    background-image: linear-gradient(to right, #149bdf, #0480be);\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-pressed-arctic, .jqx-splitter-splitbar-vertical-arctic, .jqx-splitter-splitbar-horizontal-arctic, .jqx-scrollbar-thumb-state-pressed-horizontal-arctic {\r
+    background: #d9d9d9;\r
+    border-color: #b3b3b3;\r
+     box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+\r
+.jqx-grid-column-sortdescbutton-arctic, jqx-grid-column-filterbutton-arctic, .jqx-grid-column-sortascbutton-arctic {\r
+    background-color: transparent;\r
+    border-style: solid;\r
+    border-width: 0px 0px 0px 0px;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-slider-rangebar-arctic {\r
+    background: #cccccc;\r
+}\r
+\r
+.jqx-menu-vertical-arctic {\r
+    background: #ffffff;\r
+    filter: none;\r
+}\r
+\r
+.jqx-checkbox-check-checked-arctic {\r
+    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAAcklEQVQY02NgwA/YoJgoEA/Es4DYgJBCJSBeD8SboRinBiYg7kZS2IosyQ/Eakh8LySFq4FYHFlxGRBvBOJYqMRqJMU+yApNkSRAeC0Sux3dfSCTetE0wKyXxOWhMKhTYIr9CAUXyJMzgLgBagBBgDPGAI2LGdNt0T1AAAAAAElFTkSuQmCC');\r
+}\r
+.jqx-checkbox-hover {\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+.jqx-combobox-content-arctic, .jqx-input-arctic {\r
+}\r
+\r
+.jqx-combobox-content-arctic {\r
+    border-color: #cccccc;\r
+    border-color: rgba(0, 0, 0, 0.25);\r
+}\r
+\r
+.jqx-grid-bottomright-arctic, .jqx-panel-bottomright-arctic, .jqx-listbox-bottomright-arctic {\r
+    background-color: #efefef;\r
+}\r
+\r
+.jqx-window-arctic, .jqx-tooltip-arctic {\r
+    box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);\r
+}\r
+\r
+.jqx-docking-arctic .jqx-window-arctic {\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-docking-panel-arctic .jqx-window-arctic {\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-radiobutton-arctic {\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+    background: none;\r
+}\r
+\r
+.jqx-radiobutton-arctic-arctic, .jqx-radiobutton-hover-arctic {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+}\r
+\r
+.jqx-radiobutton-check-checked-arctic {\r
+    filter: none;\r
+    background: #666;\r
+    background-repeat: no-repeat;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-radiobutton-check-indeterminate-arctic {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-radiobutton-check-indeterminate-disabled-arctic {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-slider-track-horizontal-arctic, .jqx-slider-track-vertical-arctic {\r
+    border-color: #cccccc;\r
+    background: #f0f0f0;\r
+}\r
+\r
+.jqx-slider-button-arctic {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+/*applied to a list item when the item is selected.*/\r
+.jqx-listitem-state-hover-arctic, .jqx-menu-item-hover-arctic, .jqx-tree-item-hover-arctic, .jqx-calendar-cell-hover-arctic, .jqx-grid-cell-hover-arctic,\r
+.jqx-menu-vertical-arctic .jqx-menu-item-top-hover-arctic, .jqx-input-popup-arctic .jqx-fill-state-hover-arctic,\r
+.jqx-input-popup-arctic .jqx-fill-state-pressed-arctic {\r
+    color: #ffffff !important;\r
+    border-color: #316293 #316293 #29547E !important;\r
+    text-decoration: none;\r
+    background-color: #0081c2;\r
+    background-repeat: repeat-x;\r
+    outline: 0;\r
+    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\r
+    background: #2f7eb6; /* Old browsers */\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    background-position: 0 0;\r
+}\r
+\r
+.jqx-listitem-state-selected-arctic, .jqx-menu-item-selected-arctic, .jqx-tree-item-selected-arctic, .jqx-calendar-cell-selected-arctic, .jqx-grid-cell-selected-arctic,\r
+.jqx-menu-vertical-arctic .jqx-menu-item-top-selected-arctic, .jqx-grid-selectionarea-arctic, .jqx-input-button-header-arctic, .jqx-input-button-innerHeader-arctic {\r
+    color: #ffffff !important;\r
+    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\r
+    background-color: #003399;\r
+    *background-color: #003399;\r
+    background-repeat: repeat-x;\r
+    border-color: #316293 #316293 #29547E !important;\r
+    background: #356aa0; /* Old browsers */\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-grid-cell-arctic .jqx-button-arctic, .jqx-grid-cell-arctic .jqx-button-arctic.jqx-fill-state-hover-arctic, .jqx-grid-cell-arctic .jqx-button-arctic.jqx-fill-state-pressed-arctic {\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+   -webkit-transition: none;\r
+    -moz-transition: none;\r
+    -o-transition: none;\r
+    transition: none;\r
+}\r
+\r
+.jqx-popup-arctic {\r
+    border: 1px solid #ccc;\r
+    *border-right-width: 2px;\r
+    *border-bottom-width: 2px;\r
+    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);\r
+}\r
+.jqx-grid-column-sortascbutton-arctic, .jqx-expander-arrow-bottom-arctic, .jqx-window-collapse-button-arctic, .jqx-menu-item-arrow-up-arctic, .jqx-menu-item-arrow-up-selected-arctic, .jqx-menu-item-arrow-top-up-arctic, .jqx-icon-arrow-up-arctic, .jqx-icon-arrow-up-hover-arctic, .jqx-icon-arrow-up-selected-arctic {\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-widget-arctic .jqx-grid-group-expand-arctic, .jqx-grid-group-expand-arctic, .jqx-grid-column-menubutton-arctic, .jqx-grid-column-sortdescbutton-arctic, .jqx-expander-arrow-top-arctic, .jqx-window-collapse-button-collapsed-arctic, .jqx-menu-item-arrow-down-arctic, .jqx-menu-item-arrow-down-selected-arctic, .jqx-menu-item-arrow-down-arctic, .jqx-icon-arrow-down-arctic, .jqx-icon-arrow-down-hover-arctic, .jqx-icon-arrow-down-selected-arctic {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-tabs-arrow-left-arctic, .jqx-menu-item-arrow-left-selected-arctic, .jqx-menu-item-arrow-top-left, .jqx-icon-arrow-left-arctic, .jqx-icon-arrow-down-left-arctic, .jqx-icon-arrow-left-selected-arctic {\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-widget-arctic .jqx-grid-group-collapse-arctic, .jqx-grid-group-collapse-arctic, .jqx-tabs-arrow-right-arctic, .jqx-menu-item-arrow-right-selected-arctic, .jqx-menu-item-arrow-top-right-arctic, .jqx-icon-arrow-right-arctic, .jqx-icon-arrow-right-hover-arctic, .jqx-icon-arrow-right-selected-arctic {\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-tree-item-arrow-collapse-rtl-arctic, .jqx-tree-item-arrow-collapse-hover-rtl-arctic {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-menu-item-arrow-left-selected-arctic {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-menu-item-arrow-right-selected-arctic {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-input-button-content-arctic {\r
+    font-size: 10px;\r
+}\r
+.jqx-widget .jqx-grid-cell, .jqx-widget .jqx-grid-column-header, .jqx-widget .jqx-grid-group-cell {border-color: #ccc;}\r
+.jqx-combobox-content-arctic, .jqx-input-arctic {\r
+    border-color: #cccccc;\r
+    color: #555555;\r
+    background-color: #ffffff;\r
+    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\r
+    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\r
+}\r
+\r
+.jqx-combobox-content-arctic, .jqx-combobox-arctic, .jqx-combobox-state-normal-arctic {\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-combobox-content-focus-arctic, .jqx-combobox-state-focus-arctic, .jqx-fill-state-focus-arctic,\r
+.jqx-numberinput-focus-arctic {\r
+    outline: none;\r
+    border-color: #959595;\r
+}\r
+\r
+\r
+input[type="text"].jqx-input-arctic, input[type="password"].jqx-input-arctic, input[type="text"].jqx-widget-content-arctic, input[type="textarea"].jqx-widget-content-arctic, textarea.jqx-input-arctic {\r
+    padding-left: 0px !important;\r
+}\r
+\r
+input[type="text"].jqx-input-arctic:-moz-placeholder, input[type="text"].jqx-widget-content-arctic:-moz-placeholder, input[type="textarea"].jqx-widget-content-arctic:-moz-placeholder, textarea.jqx-input-arctic:-moz-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="text"].jqx-input-arctic:-webkit-input-placeholder, input[type="text"].jqx-widget-content-arctic:-webkit-input-placeholder, input[type="textarea"].jqx-widget-content-arctic:-webkit-input-placeholder, textarea.jqx-input-arctic:-webkit-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="text"].jqx-input-arctic:-ms-input-placeholder, input[type="text"].jqx-widget-content-arctic:-ms-input-placeholder, input[type="textarea"].jqx-widget-content-arctic:-ms-input-placeholder, textarea.jqx-input-arctic:-ms-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+.jqx-slider-rangebar-arctic {\r
+    border-color: #0081c2;\r
+    background: #0081c2;\r
+}\r
+\r
+.jqx-grid-cell-arctic.jqx-grid-cell-selected-arctic>.jqx-grid-group-expand-arctic,\r
+.jqx-grid-cell-arctic.jqx-grid-cell-hover-arctic>.jqx-grid-group-expand-arctic {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-arctic.jqx-grid-cell-selected-arctic>.jqx-grid-group-collapse-arctic,\r
+.jqx-grid-cell-arctic.jqx-grid-cell-hover-arctic>.jqx-grid-group-collapse-arctic {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-arctic.jqx-grid-cell-selected-arctic>.jqx-grid-group-collapse-rtl-arctic,\r
+.jqx-grid-cell-arctic.jqx-grid-cell-hover-arctic>.jqx-grid-group-collapse-rtl-arctic {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-arctic.jqx-grid-cell-selected-arctic>.jqx-grid-group-expand-rtl-arctic,\r
+.jqx-grid-cell-arctic.jqx-grid-cell-hover-arctic>.jqx-grid-group-expand-rtl-arctic {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tabs-title-selected-top-arctic, .jqx-tabs-selection-tracker-top-arctic {\r
+    border-color: #CCCCCC;\r
+    border-bottom: 1px solid #fff;\r
+    text-shadow: 0 1px 0 #f2f2f2;\r
+    filter: none;\r
+    background: #fff;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-tabs-title-selected-bottom-arctic, .jqx-tabs-selection-tracker-bottom-arctic {\r
+    border-color: #CCCCCC;\r
+    border-top: 1px solid #fff;\r
+    text-shadow: 0 1px 0 #f2f2f2;\r
+    filter: none;\r
+    background: #fff;\r
+   -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+.jqx-tabs-title-hover-top-arctic, .jqx-tabs-title-hover-bottom-arctic, .jqx-tabs-header-arctic\r
+{\r
+   -webkit-box-shadow: none !important;\r
+    -moz-box-shadow: none !important;\r
+    box-shadow: none !important;\r
+}\r
+.jqx-window-collapse-button-arctic\r
+{\r
+    margin-top: 2px;\r
+}\r
+.jqx-window-collapse-button-collapsed-arctic {\r
+    margin-top: 0px;\r
+}\r
+.jqx-layout-arctic\r
+{\r
+    background-color: #cccccc;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.base.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.base.css
new file mode 100644 (file)
index 0000000..fa6da48
--- /dev/null
@@ -0,0 +1,6156 @@
+/*Rounded Corners*/\r
+/*top-left rounded Corners*/\r
+.jqx-rc-tl\r
+{\r
+    -moz-border-radius-topleft: 3px;\r
+    -webkit-border-top-left-radius: 3px;\r
+    border-top-left-radius: 3px;\r
+}\r
+/*top-right rounded Corners*/\r
+.jqx-rc-tr\r
+{\r
+    -moz-border-radius-topright: 3px;\r
+    -webkit-border-top-right-radius: 3px;\r
+    border-top-right-radius: 3px;\r
+}\r
+/*bottom-left rounded Corners*/\r
+.jqx-rc-bl\r
+{\r
+    -moz-border-radius-bottomleft: 3px;\r
+    -webkit-border-bottom-left-radius: 3px;\r
+    border-bottom-left-radius: 3px;\r
+}\r
+/*bottom-right rounded Corners*/\r
+.jqx-rc-br\r
+{\r
+    -moz-border-radius-bottomright: 3px;\r
+    -webkit-border-bottom-right-radius: 3px;\r
+    border-bottom-right-radius: 3px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t\r
+{\r
+    -moz-border-radius-topleft: 3px;\r
+    -webkit-border-top-left-radius: 3px;\r
+    border-top-left-radius: 3px;\r
+    -moz-border-radius-topright: 3px;\r
+    -webkit-border-top-right-radius: 3px;\r
+    border-top-right-radius: 3px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b\r
+{\r
+    -moz-border-radius-bottomleft: 3px;\r
+    -webkit-border-bottom-left-radius: 3px;\r
+    border-bottom-left-radius: 3px;\r
+    -moz-border-radius-bottomright: 3px;\r
+    -webkit-border-bottom-right-radius: 3px;\r
+    border-bottom-right-radius: 3px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r\r
+{\r
+    -moz-border-radius-topright: 3px;\r
+    -webkit-border-top-right-radius: 3px;\r
+    border-top-right-radius: 3px;\r
+    -moz-border-radius-bottomright: 3px;\r
+    -webkit-border-bottom-right-radius: 3px;\r
+    border-bottom-right-radius: 3px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l\r
+{\r
+    -moz-border-radius-topleft: 3px;\r
+    -webkit-border-top-left-radius: 3px;\r
+    border-top-left-radius: 3px;\r
+    -moz-border-radius-bottomleft: 3px;\r
+    -webkit-border-bottom-left-radius: 3px;\r
+    border-bottom-left-radius: 3px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all\r
+{\r
+    -moz-border-radius: 3px;\r
+    -webkit-border-radius: 3px;\r
+    border-radius: 3px;\r
+}\r
+/*reset rounded corners*/\r
+.jqx-rc-reset\r
+{\r
+    -moz-border-radius: 0px !important;\r
+    -webkit-border-radius: 0px !important;\r
+    border-radius: 0px !important;\r
+}\r
+\r
+/*Reset Style*/\r
+.jqx-reset\r
+{\r
+    padding: 0;\r
+    margin: 0;\r
+    border: none;\r
+    background: transparent;\r
+    outline: none;\r
+    box-sizing: content-box;\r
+}\r
+.jqx-clear {\r
+    align:left; valign:top; left: 0px; top: 0px; -webkit-appearance: none !important; outline: none !important; padding: 0px; margin: 0px;\r
+}\r
+.jqx-popup {\r
+    box-sizing: content-box;\r
+}\r
+.jqx-position-reset {\r
+    position: static !important; \r
+}\r
+.jqx-border-reset {\r
+    border: none !important;\r
+}\r
+.jqx-overflow-hidden {\r
+    overflow: hidden !important;\r
+}\r
+.jqx-position-relative {\r
+    position: relative !important;\r
+}\r
+.jqx-position-absolute {\r
+    position: absolute !important;\r
+}\r
+.jqx-max-size {\r
+    width: 100% !important;\r
+    height: 100% !important;\r
+}\r
+.jqx-background-reset {\r
+    background: transparent !important;\r
+}\r
+/*Disable browser selection*/\r
+.jqx-disableselect\r
+{\r
+    -webkit-user-select: none;\r
+    -khtml-user-select: none;\r
+    -moz-user-select: none;\r
+    -o-user-select: none;\r
+    user-select: none;\r
+    -ms-user-select:none;\r
+    -webkit-touch-callout:none;\r
+    -webkit-tap-highlight-color: rgba(0,0,0,0);\r
+}\r
+.jqx-enableselect {\r
+    -webkit-user-select: text;\r
+    -khtml-user-select: text;\r
+    -moz-user-select: text;\r
+    -o-user-select: auto;\r
+    -ms-user-select:text;\r
+    user-select:all;\r
+}\r
+.jqx-hideborder\r
+{\r
+    border: none !important;\r
+}\r
+.jqx-hidescrollbars\r
+{\r
+    overflow: hidden !important;\r
+}\r
+/*jqxButton, jqxToggleButton, jqxRepeatButton Style*/\r
+.jqx-button{outline: none; border: 1px solid transparent; padding: 3px; text-align: center; vertical-align: central; margin: 0 0 0 0; cursor: default; }\r
+button.jqx-button, input[type=button].jqx-button,  input[type=submit].jqx-button {\r
+    box-sizing: border-box !important; -moz-box-sizing: border-box !important; \r
+}\r
+\r
+.jqx-buttongroup{}\r
+.jqx-group-button-normal {\r
+    vertical-align: middle;\r
+    text-align: center;\r
+}\r
+/*applied to the link button's anchor element.*/\r
+.jqx-link\r
+{\r
+    text-decoration: none;\r
+    color: #111111;\r
+}\r
+\r
+/*shows elements.*/\r
+.jqx-visible\r
+{\r
+    display: block;\r
+}\r
+/*hides elements.*/\r
+.jqx-hidden\r
+{\r
+    display: none;\r
+}\r
+.jqx-widget, .jqx-widget-content, .jqx-widget-header, .jqx-fill-state-normal {\r
+    line-height: 1.231;\r
+}\r
+/*jqxGauge Style*/\r
+.jqx-gauge-label, .jqx-gauge-caption\r
+{\r
+    fill: #333333;\r
+    color: #333333;\r
+    font-size: 11px;\r
+    font-family: Verdana;\r
+}\r
+/*jqxChart Style*/\r
+.jqx-chart-axis-text,\r
+.jqx-chart-label-text, \r
+.jqx-chart-tooltip-text, \r
+.jqx-chart-legend-text\r
+{\r
+    fill: #333333;\r
+    color: #333333;\r
+    font-size: 11px;\r
+    font-family: Verdana;\r
+}\r
+.jqx-chart-axis-description\r
+{\r
+    fill: #555555;\r
+    color: #555555;\r
+    font-size: 11px;\r
+    font-family: Verdana;\r
+}\r
+.jqx-chart-title-text\r
+{\r
+    fill: #111111;\r
+    color: #111111;\r
+    font-size: 14px;\r
+    font-weight: bold;\r
+    font-family: Verdana;\r
+}\r
+.jqx-chart-title-description\r
+{\r
+    fill: #111111;\r
+    color: #111111;\r
+    font-size: 12px;\r
+    font-weight: normal;\r
+    font-family: Verdana;\r
+}\r
+\r
+/*applied to the Grid's element.*/\r
+.jqx-grid\r
+{\r
+    overflow: hidden;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+}\r
+/*applied to the Pager.*/\r
+.jqx-grid-pager\r
+{\r
+    border: none;\r
+    border-top: 1px solid transparent;\r
+}\r
+/*applied to the Top Pager.*/\r
+.jqx-grid-pager-top\r
+{\r
+    border: none;\r
+    border-bottom: 1px solid transparent;\r
+}\r
+.jqx-grid-pager-number{\r
+    padding: 2px 5px;\r
+    text-decoration: none;\r
+    margin: 1px;\r
+    border: 1px solid transparent;\r
+    color: inherit !important;\r
+    *color: expression(this.parentNode.currentStyle['color']) !important;     \r
+    outline: none;\r
+    font-weight: normal !important;\r
+}\r
+\r
+/*applied to the Grid's bottom-right area between the horizontal and vertical scrollbars.*/\r
+.jqx-grid-bottomright\r
+{\r
+   \r
+}\r
+/*applied to the Grid's header area.*/\r
+.jqx-grid-header \r
+{\r
+    border-style: solid;\r
+    border-width: 0px 0px 1px 0px;\r
+    overflow: hidden;\r
+    border-color: transparent;\r
+    margin: 0px;\r
+    padding: 0px;\r
+ }\r
+ /*applied to the columns.*/\r
+.jqx-grid-column-header, .jqx-grid-columngroup-header {\r
+    border-style: solid;\r
+    border-width: 0px 1px 0px 0px;\r
+    border-color: transparent;\r
+    white-space: nowrap;\r
+    border-style: solid;\r
+    font-weight: normal;  \r
+    overflow: hidden;\r
+    text-align: left;\r
+    padding: 0px;\r
+    margin: 0px;\r
+ }\r
+.jqx-grid-column-header-rtl, .jqx-grid-columngroup-header-rtl {\r
+    border-width: 0px 0px 0px 1px;\r
+}\r
+.jqx-grid-columngroup-header {\r
+    border-bottom-width: 1px;\r
+    border-left-width: 1px;\r
+}\r
+ /*applied to the column's button.*/\r
+ .jqx-grid-column-menubutton {\r
+    border-style: solid;\r
+    border-width: 0px 0px 0px 1px;\r
+    border-color: transparent;\r
+    background-image: url('images/menubutton.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    cursor: pointer;\r
+ }\r
+.jqx-grid-column-menubutton-rtl {\r
+    border-width: 0px 1px 0px 0px;\r
+}\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton {\r
+    border: none;\r
+    background-image: url('images/sortascbutton.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    cursor: pointer;\r
+ }\r
+ /*applied to the column's sort button when the sort order is descending.*/\r
+  .jqx-grid-column-sortdescbutton {\r
+    border: none;\r
+    background-image: url('images/sortdescbutton.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    cursor: pointer;\r
+ }\r
+  /*applied to the column's filter button.*/\r
+  .jqx-grid-column-filterbutton\r
+ {\r
+    border: none;\r
+    background-image: url('images/filter.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+ }\r
+  /*applied to the column's resize line.*/\r
+ .jqx-grid-column-resizeline {\r
+   border-right: 1px dotted #555; \r
+ }\r
+ /*applied to the validation popup during cell editing.*/\r
+ .jqx-grid-validation\r
+ {\r
+    background: #df2227 !important;\r
+    color: #fff  !important;\r
+    padding: 4px 8px;\r
+ }\r
+.jqx-grid-validation-label {\r
+    color: #fff !important;\r
+    background: #df2227 !important;\r
+    border: 1px solid #df2227 !important;    \r
+}\r
+  .jqx-grid-validation-arrow-up\r
+ {\r
+    background-image: url('images/red_arrow_up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center center;\r
+ }\r
+  .jqx-grid-validation-arrow-down\r
+ {\r
+    background-image: url('images/red_arrow_down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center center;\r
+ }\r
+  /*applied to the column's resize start line.*/\r
+  .jqx-grid-column-resizestartline {\r
+   border-right: 1px solid #444; \r
+ }\r
+  /*applied to the sort ascending menu item in the Grid's Context Menu*/\r
+ .jqx-grid-sortasc-icon\r
+ {\r
+    background-image: url('images/sortasc.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    width: 16px;\r
+    height: 16px;\r
+    float: left;\r
+    margin-left: -4px;\r
+    margin-right: 4px;\r
+ }\r
+  /*applied to the sort ascending menu item in the Grid's Context Menu*/\r
+ .jqx-grid-sortdesc-icon\r
+ {\r
+    background-image: url('images/sortdesc.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    width: 16px;\r
+    height: 16px;\r
+    float: left;\r
+    margin-left: -4px;\r
+    margin-right: 4px;\r
+ }\r
+  /*applied to the grid menu's sort remove item/*/\r
+ .jqx-grid-sortremove-icon\r
+ {\r
+    background-image: url('images/sortremove.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    width: 16px;\r
+    height: 16px;\r
+    float: left;\r
+    margin-left: -4px;\r
+    margin-right: 4px;\r
+ }\r
+   /*applied to the grouping column's drag and drop item when the drop operation is allowed.*/\r
+ .jqx-grid-drag-icon\r
+ {\r
+    background-image: url('images/drag.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    width: 16px;\r
+    height: 16px;\r
+ }\r
+   /*applied to the grouping column's drag and drop item when the drop operation is not allowed.*/\r
+ .jqx-grid-dragcancel-icon\r
+ {\r
+    background-image: url('images/dragcancel.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    width: 16px;\r
+    height: 16px;\r
+ }\r
+ /*applied to the 'group by' menu item.*/\r
+ .jqx-grid-groupby-icon\r
+ {\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    width: 16px;\r
+    height: 16px;\r
+    float: left;\r
+    margin-left: -4px;\r
+    margin-right: 4px;\r
+ }\r
+/*applied to the column anchor tags.*/\r
+ .jqx-grid-column-header a:link, .jqx-grid-column-header a:visited\r
+ {\r
+    display: block;\r
+    margin: 4px;\r
+    height: 18px;\r
+    line-height: 18px !important;\r
+    color: inherit;\r
+    outline: 0 none;\r
+    text-decoration: none;\r
+    cursor: pointer;\r
+}\r
+.jqx-grid-toolbar a:link, .jqx-grid-toolbar a:visited {\r
+    margin: 4px;\r
+    height: 18px;\r
+    line-height: 18px !important;\r
+    color: inherit;\r
+    outline: 0 none;\r
+    text-decoration: none;\r
+    cursor: pointer;\r
+}\r
+/*applied to the groups header area.*/\r
+ .jqx-grid-groups-header, .jqx-grid-toolbar, .jqx-scheduler-toolbar {\r
+    border-style: solid;\r
+    border-width: 0px 0px 1px 0px;\r
+    border-color: #aaa;\r
+    white-space: nowrap;\r
+    overflow: hidden;\r
+    text-align: left;\r
+    padding: 0px;\r
+    margin: 0px;\r
+ }\r
+/*applied to a grouping row.*/\r
+ .jqx-grid-groups-row {\r
+    font-weight:bold;\r
+    white-space: nowrap;\r
+    text-align: left;\r
+    padding: 0px;\r
+    top: 50%;\r
+    margin-top: -8px;\r
+ }\r
+ /*applied to the row details.*/\r
+ .jqx-grid-groups-row-details {\r
+    font-weight: normal;\r
+ }\r
+ /*applied to a grouping column.*/\r
+ .jqx-grid-group-column \r
+ {\r
+    border: 1px solid transparent;\r
+    white-space: nowrap;\r
+    border-style: solid;\r
+    font-weight: normal;  \r
+    overflow: hidden;\r
+    text-align: left;\r
+    padding: 0px;\r
+    margin: 0px;\r
+ }\r
+ /*applied to the lines between the group columns.*/\r
+  .jqx-grid-group-column-line\r
+ {\r
+    background: #aaa;\r
+ }\r
+ /*applied to the drop line indicators displayed in the grouping header.*/\r
+  .jqx-grid-group-drag-line\r
+ {\r
+    background: #80be09;\r
+ }\r
+ /*applied to the anchor tags inside a grouping column.*/\r
+ .jqx-grid-group-column  a:link{\r
+    display: block;\r
+    margin: 4px;\r
+    height: 18px;\r
+    line-height: 18px !important;\r
+    outline: 0 none;\r
+    text-decoration: none;\r
+    cursor: pointer;\r
+    color: inherit;\r
+    *color: expression(this.parentNode.currentStyle['color']);     \r
+}\r
+ .jqx-grid-group-column  a:visited{\r
+    color: inherit;\r
+    display: block;\r
+    margin: 4px;\r
+    height: 18px;\r
+    line-height: 18px !important;\r
+    outline: 0 none;\r
+    text-decoration: none;\r
+    cursor: pointer;\r
+     *color: expression(this.parentNode.currentStyle['color']);    \r
+}\r
+/*applied to a grid cell*/\r
+.jqx-grid-cell {\r
+    border-style: solid;\r
+    border-width: 0px 1px 1px 0px;\r
+    margin-right: 1px;\r
+    margin-bottom: 1px;\r
+    border-color: transparent;  \r
+    background: #fff;\r
+    white-space: nowrap;\r
+    font-weight: normal; \r
+    font-size: inherit;\r
+    overflow: hidden; \r
+    position: absolute !important; \r
+    height: 100%; \r
+ }\r
+.jqx-grid-cell-locked {\r
+    color: #aaa !important;\r
+}\r
+/*applied to a grid cell that is part of a rows group.*/\r
+ .jqx-grid-group-cell{ \r
+    overflow: hidden; \r
+    position: absolute !important; \r
+    height: 100%; \r
+    background: #fff;\r
+ }\r
+/*applied to the grid cells in the sort column*/\r
+ .jqx-grid-cell-sort {\r
+    background-color: #f0f0f0;\r
+ }\r
+\r
+ /*applied to the grid cells in the filter column*/\r
+ .jqx-grid-cell-filter {\r
+    background-color: #e6e6e6;\r
+ }\r
+.jqx-grid-cell-add-new-row {\r
+    background: #fdfcf3 !important;\r
+    color: #000 !important;\r
+}\r
+\r
+ /*applied to the grid cells area.*/\r
+.jqx-grid-content {\r
+    border-style: solid;\r
+    border-width: 0px 0px 0px 0px;\r
+    border-color: transparent;\r
+    white-space: nowrap;\r
+    overflow: hidden;\r
+ }\r
+ /*applied to a grid cell that is part of a rows group.*/\r
+.jqx-grid-group-cell, .jqx-grid-empty-cell {\r
+    border-style: solid;\r
+    border-width: 0px 0px 1px 0px;\r
+    white-space: nowrap;\r
+    font-weight: normal;   \r
+ }\r
+.jqx-widget .jqx-grid-cleared-cell, .jqx-grid-cleared-cell {\r
+    border: transparent !important;\r
+}\r
+.jqx-grid-cell-wrap {white-space: normal !important;}\r
+\r
+.jqx-tree-grid-indent {\r
+    width: 14px;\r
+    display: inline-block;\r
+    height: 8px;\r
+    overflow: hidden;\r
+    vertical-align: top;\r
+}\r
+.jqx-tree-grid-title {\r
+    text-decoration: none;\r
+    vertical-align: top;\r
+    white-space: nowrap;\r
+    overflow: hidden;\r
+    text-overflow: ellipsis;\r
+}\r
+.jqx-tree-grid-collapse-button, .jqx-tree-grid-expand-button {\r
+    display: inline-block;\r
+    margin-top: 2px;\r
+    margin-right: 0px;\r
+    position: relative;\r
+    width: 14px;\r
+    height: 13px;   \r
+    vertical-align: top;\r
+}\r
+.jqx-tree-grid-checkbox {\r
+   float: none !important; \r
+   width: 14px;\r
+   height: 14px;\r
+   cursor: pointer;\r
+   margin-right: 2px !important;\r
+   margin-left: 2px !important;\r
+}\r
+.jqx-tree-grid-icon {\r
+   float: none !important; \r
+   width: 14px;\r
+   height: 14px;\r
+   margin-right: 4px;\r
+}\r
+.jqx-tree-grid-icon-rtl {\r
+   margin-right: 0px;\r
+   margin-left: 4px;\r
+}\r
+.jqx-tree-grid-icon-size {\r
+   width: 14px;\r
+   height: 14px;\r
+   line-height: 16px;\r
+}\r
+\r
+.jqx-tree-grid-checkbox-tick {\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-tree-grid-expand-button {\r
+    height: 10px;\r
+    width: 14px;\r
+    vertical-align: top;\r
+}\r
+\r
+/*applied to a cell in jqxDataTable*/\r
+.jqx-cell {\r
+    min-height: 23px;\r
+    padding: 6px 4px;\r
+    margin: 0;\r
+    border-collapse: separate;\r
+    border-spacing: 0px;\r
+    overflow: hidden;\r
+    text-overflow: ellipsis;\r
+    border: 1px solid transparent;\r
+    border-top-width: 0px;\r
+    border-left-width: 0px;\r
+    box-sizing: border-box;\r
+    -moz-box-sizing: border-box;\r
+    white-space: normal;\r
+    line-height: 1.231;\r
+}\r
+.jqx-grid-cell-nowrap {white-space: nowrap;}\r
+\r
+.jqx-cell-editor {\r
+    padding-left: 4px !important;\r
+    padding-right: 3px !important;\r
+}\r
+.jqx-left-align {\r
+    text-align: left;\r
+}\r
+.jqx-center-align {\r
+    text-align: center;\r
+}\r
+.jqx-right-align {\r
+    text-align: right;\r
+}\r
+.jqx-top-align {\r
+    vertical-align:top;\r
+}\r
+.jqx-bottom-align {\r
+    vertical-align: bottom;\r
+}\r
+\r
+.jqx-grid-table .jqx-grid-cell {\r
+    position: static !important;\r
+    zoom: 1 !important;\r
+}\r
+/*applied to the Grid's Table element.*/\r
+.jqx-grid-table {\r
+    font-size: 13px;\r
+    table-layout: fixed;\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border-collapse: separate;\r
+    border-spacing: 0px;\r
+    -webkit-overflow-scrolling: touch;\r
+    outline: none;\r
+    zoom: 1 !important;\r
+    empty-cells: show;\r
+    border-right: 1px solid #aaa;\r
+    line-height: 1.231;\r
+    width: auto;\r
+    border: none;\r
+}\r
+.jqx-grid-table-rtl {\r
+    border-left-width: 1px;\r
+    border-right-width: 0px;\r
+}\r
+.jqx-details table {\r
+   border-collapse: collapse;\r
+   table-layout: fixed;\r
+   border-spacing: 0px;\r
+}\r
+\r
+ /*applied to a grid cell that is part of a details row and grouping is enabled.*/\r
+.jqx-grid-group-details-cell {\r
+\r
+ }\r
+ /*applied to a grid cell that is part of a details row.*/\r
+.jqx-grid-details-cell {\r
+    border-width: 0px 1px 0px 0px;\r
+ }\r
+  /*applied to a grid cell. Represents the alternating cell background.*/\r
+.jqx-grid-cell-alt {\r
+    background: #f9f9f9;  \r
+ }\r
+/*applied to a sorted and alternating grid cell*/\r
+.jqx-grid-cell-sort-alt {\r
+    background-color: #e5e5e5;\r
+ }/*applied to a sorted and alternating grid cell*/\r
+.jqx-grid-cell-filter-alt {\r
+    background-color: #f0f0f0;\r
+ }\r
+  /*applied to a pinned grid cell.*/\r
+.jqx-grid-cell-pinned {\r
+    background-color: #e5e5e5;\r
+ }\r
+ /*applied to a pinned grid cell. Represents the alternating cell background.*/\r
+.jqx-grid-cell-pinned-alt {\r
+    background-color: #e5e5e5;\r
+ }\r
+ /*applied to a selected grid cell.*/\r
+ .jqx-grid-cell-selected {\r
+    border-left: 0px solid transparent;\r
+ }\r
+ .jqx-cell-rtl {\r
+   border-left-width: 1px;\r
+   border-right-width: 0px;\r
+ }\r
+ .jqx-grid-cell-rtl {\r
+    border-width: 0px 0px 1px 1px;\r
+ }\r
+ .jqx-grid-table .jqx-grid-cell {\r
+   border-width: 0px 0px 1px 1px;\r
+ }\r
+.jqx-grid-table-one-cell {\r
+    border: none;\r
+    border-right-width: 1px;\r
+    border-right-style:solid;\r
+    border-right-color:#aaa;\r
+}\r
+\r
+ .jqx-grid-table .jqx-grid-cell:first-child {\r
+    border-left-width: 0px;\r
+ }\r
+\r
+  /*applied to the selection area.*/\r
+ .jqx-grid-selectionarea {\r
+    border: 1px solid transparent;\r
+    opacity: 0.5;\r
+    filter: alpha(opacity=50);\r
+ }\r
+ /*applied to a hovered grid cell.*/\r
+ .jqx-grid-cell-hover {\r
+    border-color: transparent;\r
+ }\r
+  /*applied to a grid cell when the grid is empty.*/\r
+ .jqx-grid-empty-cell{ overflow: visible; border-bottom: none;}\r
+\r
+ /*applied to the Grid when its loading the data.*/\r
+ .jqx-grid-load\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/loader.gif);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;  \r
+    z-index: 9999;\r
+    display: block;\r
+}\r
+/*applied to a group's collapse button.*/\r
+.jqx-grid-group-collapse\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/icon-right.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+}\r
+.jqx-grid-group-collapse-rtl\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/icon-left.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+}\r
+/*applied to a group's expand button.*/\r
+.jqx-grid-group-expand, .jqx-grid-group-expand-rtl\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/icon-down.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+}\r
+/*jqxProgresBar Style*/\r
+.jqx-progressbar\r
+{\r
+    overflow: hidden;\r
+    outline: none;\r
+    border: 1px solid transparent;\r
+    height: 2em;\r
+}\r
+/*applied to the progressbar's value element*/\r
+.jqx-progressbar-value\r
+{\r
+    outline: none;\r
+    border: 0px solid transparent;\r
+    height: 100%;\r
+}\r
+/*applied to the progress bar's vertical value element- when the widget's orientation is 'vertical'*/\r
+.jqx-progressbar-value-vertical\r
+{\r
+    outline: none;\r
+    border: 0px solid transparent;\r
+    height: 100%;\r
+    background: transparent;\r
+}\r
+/*applied to the progressbar's text element*/\r
+.jqx-progressbar-text\r
+{\r
+    font-size: 10px;\r
+    border: none;\r
+}\r
+/*applied to the progress bar when the widget is in disabled state*/\r
+.jqx-progressbar-disabled\r
+{\r
+    outline: none;\r
+    border: 1px solid transparent; \r
+    height: 2em;\r
+}\r
+\r
+/*jqxMenu Style*/\r
+.jqx-menu\r
+{\r
+    border: 1px solid transparent;\r
+    float: none;\r
+    margin: 0px;\r
+    height: 100%;\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    text-align: left;\r
+}\r
+.jqx-menu-dropdown-column\r
+{\r
+    float: left;\r
+}\r
+/*applied to the menu when it is horizontal. Sets the menu's background*/\r
+.jqx-menu-horizontal\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    text-align: center;\r
+}\r
+/*applied to the menu when it is vertical. Sets the menu's background*/\r
+.jqx-menu-vertical\r
+{\r
+    text-align: left;\r
+}\r
+/*applied to the sub menu. Sets the sub menu's background*/\r
+.jqx-menu-dropdown\r
+{\r
+    left: 100%;\r
+    margin: 0px;\r
+    padding: 0px;\r
+    right: 0;\r
+    overflow: hidden;\r
+    display: none;\r
+    float: none;\r
+    width: 150px;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+    text-align: left;\r
+    padding: 2px;\r
+}\r
+/*applied to the sub menu's ul elements.*/\r
+.jqx-menu-dropdown ul\r
+{\r
+    left: 100%;\r
+    margin: 0px;\r
+    padding: 0px;\r
+    right: 0;\r
+    overflow: hidden;\r
+    border: none;\r
+}\r
+/*applied to the menu's ul elements.*/\r
+.jqx-menu ul\r
+{\r
+    left: 100%;\r
+    margin: 0px;\r
+    padding: 2px;\r
+    right: 0;\r
+    overflow: hidden;\r
+    background-color: transparent;\r
+    border: none;\r
+}\r
+/*applied to the menu's li elements.*/\r
+.jqx-menu li, .jqx-menu-dropdown li\r
+{\r
+    line-height: 1.3 !important;\r
+}\r
+/*applied to the top level menu items.*/\r
+.jqx-menu-item-top\r
+{\r
+    border: 1px solid transparent;\r
+    text-indent: 0;\r
+    list-style: none;\r
+    padding: 4px 8px 4px 8px;\r
+    left: 100%;\r
+    overflow: hidden;\r
+    color: inherit;\r
+    right: 0;\r
+    margin: 0px 1px 0px 1px;\r
+    cursor: pointer;\r
+}\r
+/*applied to the sub menu items.*/\r
+.jqx-menu-item\r
+{\r
+    border: 1px solid transparent;\r
+    text-indent: 0;\r
+    list-style: none;\r
+    padding: 4px 8px 4px 8px;\r
+    margin: 1px;\r
+    float: none;\r
+    overflow: hidden;\r
+    left: 100%;\r
+    color: inherit;\r
+    right: 0;\r
+    text-align: left;\r
+    cursor: pointer;\r
+    *color: expression(this.parentNode.currentStyle['color']);     \r
+}\r
+/*applied to a sub menu item when the mouse is over the item.*/\r
+.jqx-menu-item-hover\r
+{\r
+    color: inherit;\r
+    right: 0;\r
+    list-style: none;\r
+    margin: 1px;\r
+    left: 100%;\r
+    padding: 4px 8px 4px 8px;\r
+    text-align: left;\r
+    cursor: pointer;\r
+    *color: expression(this.parentNode.currentStyle['color']);     \r
+}\r
+/*applied to a top-level menu item when the mouse is over it.*/\r
+.jqx-menu-item-top-hover\r
+{\r
+    color: inherit;\r
+    right: 0;\r
+    list-style: none;\r
+    margin: 0px 1px 0px 1px;\r
+    left: 100%;\r
+    padding: 4px 8px 4px 8px;\r
+    top: 50%;\r
+    cursor: pointer;\r
+    *color: expression(this.parentNode.currentStyle['color']);     \r
+}\r
+/*applied to a sub menu item when its sub menu is opened.*/\r
+.jqx-menu-item-selected\r
+{\r
+    right: 0;\r
+    list-style: none;\r
+    margin: 1px;\r
+    left: 100%;\r
+    padding: 4px 8px 4px 8px;\r
+    text-align: left;\r
+    cursor: pointer;\r
+    *color: expression(this.parentNode.currentStyle['color']);     \r
+}\r
+/*applied to a disabled sub menu item.*/\r
+.jqx-menu-item-disabled\r
+{\r
+\r
+}\r
+/*applied to a top-level menu item when its sub menu is opened.*/\r
+.jqx-menu-item-top-selected\r
+{\r
+    right: 0;\r
+    list-style: none;\r
+    margin: 0px 1px 0px 1px;\r
+    left: 100%;\r
+    padding: 4px 8px 4px 8px;\r
+    cursor: pointer;\r
+}\r
+/*applied to the menu separator items.*/\r
+.jqx-menu-item-separator\r
+{\r
+    text-indent: 0;\r
+    background-color: #ddd;\r
+    border: none;\r
+    list-style: none;\r
+    height: 1px;\r
+    line-height:0 !important;\r
+    padding: 0px;\r
+    margin: 1px 2px 1px 2px;\r
+    float: none;\r
+    overflow: hidden;\r
+    left: 100%;\r
+    color: inherit;\r
+    right: 0;\r
+    font-size: 1px;\r
+}\r
+/*applied to a sub menu item when it has sub menu items. Displays right arrow icon.*/\r
+.jqx-menu-item-arrow-right\r
+{\r
+    background-image: url(images/icon-right.png);\r
+}\r
+/*applied to a sub menu item when it has sub menu items. Displays down arrow icon.*/\r
+.jqx-menu-item-arrow-down\r
+{\r
+    background-image: url(images/icon-down.png);\r
+}\r
+/*applied to a sub menu item when it has sub menu items. Displays up arrow icon.*/\r
+.jqx-menu-item-arrow-up\r
+{\r
+    background-image: url(images/icon-up.png);\r
+}\r
+.jqx-menu-minimized {\r
+    position: relative;\r
+}\r
+.jqx-menu-title {\r
+    position: relative;\r
+    float: right;\r
+    margin-top: 4px;\r
+    padding-top: 4px;\r
+    padding-right: 20px;\r
+}\r
+.jqx-menu-minimized-button\r
+{\r
+    background-image: url('images/icon-menu-minimized.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left center;\r
+    height: 24px;\r
+    width: 24px;\r
+    padding: 0px;\r
+    margin-left: 7px;\r
+    margin-top: 4px;\r
+    float : left;\r
+}\r
+.jqx-menu-ul-minimized {\r
+    display: block!important;\r
+    width: auto !important;\r
+}\r
+.jqx-menu-ul-minimized ul {\r
+    margin-top: 0px;\r
+    margin-bottom: 0px;\r
+    padding-top: 0px;\r
+    padding-bottom: 0px;\r
+    -webkit-box-shadow: none !important;\r
+    -moz-box-shadow   : none !important;\r
+    -o-box-shadow     : none !important;\r
+    box-shadow        : none !important;\r
+}\r
+.jqx-menu-minimized li:last-child {\r
+    padding-bottom: 0px;\r
+    margin: 0px;\r
+}\r
+.jqx-menu-item-arrow-right, .jqx-menu-item-arrow-down, .jqx-menu-item-arrow-up, .jqx-menu-item-arrow-right {\r
+    background-position: 100% 50%;\r
+    background-repeat: no-repeat;\r
+    padding-right: 0px;\r
+    margin-right: -8px;\r
+    width: 17px;\r
+    height: 15px;\r
+}\r
+/*applied to a sub menu item when it has sub menu items. Displays left arrow icon.*/\r
+.jqx-menu-item-arrow-left\r
+{\r
+    padding-right: 0px;\r
+    padding-left: 5px;\r
+    width: 17px;\r
+    height: 15px;\r
+    background-image: url(images/icon-left.png);\r
+    background-position: 0 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+/*applied to a sub menu item when it has sub menu items and its sub menu is opened. Displays right arrow icon.*/\r
+.jqx-menu-item-arrow-right-selected\r
+{\r
+    background-image: url(images/icon-right.png);\r
+}\r
+/*applied to a sub menu item when it has sub menu items and its sub menu is opened. Displays down arrow icon.*/\r
+.jqx-menu-item-arrow-down-selected\r
+{\r
+    background-image: url(images/icon-down.png);\r
+}\r
+/*applied to a sub menu item when it has sub menu items and its sub menu is opened. Displays up arrow icon.*/\r
+.jqx-menu-item-arrow-up-selected\r
+{\r
+    background-image: url(images/icon-up.png);\r
+}\r
+.jqx-menu-item-arrow-right-selected, .jqx-menu-item-arrow-up-selected, .jqx-menu-item-arrow-down-selected, .jqx-menu-item-arrow-top-right {\r
+    padding-right: 0px;\r
+    margin-right: -8px;\r
+    width: 17px;\r
+    height: 15px;\r
+    background-position: 100% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+/*applied to a top-level menu item when it has sub menu items. Displays right arrow icon.*/\r
+.jqx-menu-item-arrow-top-right\r
+{\r
+    background-image: url(images/icon-right.png);\r
+}\r
+/*applied to a sub menu item when it has sub menu items and its sub menu is opened. Displays left arrow icon.*/\r
+.jqx-menu-item-arrow-left-selected\r
+{\r
+    background-image: url(images/icon-left.png);\r
+}\r
+/*applied to a top-level menu item when it has sub menu items. Displays left arrow icon.*/\r
+.jqx-menu-item-arrow-top-left\r
+{\r
+    background-image: url(images/icon-left.png);\r
+}\r
+.jqx-menu-item-arrow-left-selected, .jqx-menu-item-arrow-top-left {\r
+    background-position: 0 50%;\r
+    background-repeat: no-repeat;\r
+    padding-right: 0px;\r
+    padding-left: 5px;\r
+    width: 17px;\r
+    height: 15px;\r
+}\r
+/*applied to the anchor elements*/\r
+.jqx-menu-item a:link, .jqx-menu-item a:visited, .jqx-menu-item a:hover, .jqx-menu-item-top a:link, .jqx-menu-item-top a:visited, .jqx-menu-item-top a:hover\r
+{\r
+    text-decoration: none;\r
+    color: inherit;\r
+    outline: none;\r
+    background-color: transparent;\r
+    *color: expression(this.parentNode.currentStyle['color']);     \r
+}\r
+\r
+/*applied to the menu widget when it is disabled.*/\r
+.jqx-menu-disabled\r
+{\r
+    cursor: default;\r
+}\r
+/*applied to the anchor elements of all disabled menu items.*/\r
+.jqx-menu-disabled a:link\r
+{\r
+    cursor: default;\r
+    text-decoration: none;\r
+}\r
+.jqx-menu-disabled a:visited\r
+{\r
+    cursor: default;\r
+    text-decoration: none;\r
+}\r
+.jqx-menu-disabled a:hover\r
+{\r
+    cursor: default;\r
+}\r
+.jqx-menu-dropdown\r
+{\r
+    right: -1px;\r
+}\r
+\r
+/*jqxtree Style*/\r
+.jqx-tree\r
+{\r
+    left: 100%;\r
+    right: 0;\r
+    float: none;\r
+    margin: 0px;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    text-align: left;\r
+    outline: none;\r
+    white-space: nowrap;\r
+    line-height: 14px !important;\r
+}\r
+/*applied to the jqxTree root UL element.*/\r
+.jqx-tree-dropdown-root\r
+{\r
+    left: 100%;\r
+    padding: 0px 5px 0px 5px;\r
+    right: 0;\r
+    display: block;\r
+    float: none;\r
+    background-color: transparent;\r
+    border-style: solid;\r
+    border-width: 0px;\r
+    border-color: #fff;\r
+    text-align: left;\r
+    outline: none;\r
+    white-space: nowrap;\r
+    margin: 0px;\r
+}\r
+.jqx-tree-dropdown-root-rtl {\r
+    padding: 0px 5px 0px 0px;\r
+    text-align: right;\r
+    float: right;\r
+    margin: 0px;\r
+}\r
+\r
+/*applied to the jqxTree UL elements.*/\r
+.jqx-tree-dropdown\r
+{\r
+    left: 100%;\r
+    margin: 0px;\r
+    padding: 0px 0px 0px 10px;\r
+    right: 0;\r
+     display: block;\r
+    float: none;\r
+    background-color: transparent;\r
+    border-style: solid;\r
+    border-width: 0px;\r
+    border-color: transparent;\r
+    text-align: left;\r
+    outline: none;\r
+}\r
+.jqx-tree-dropdown-rtl {\r
+   padding: 3px 0px 0px 0px;\r
+   text-align: right;\r
+}\r
+\r
+/*applied to a tree item.*/\r
+.jqx-tree-item\r
+{\r
+    border: 1px solid transparent;\r
+    text-indent: 0;\r
+    list-style: none;\r
+    padding: 3px;\r
+    margin: 0px;\r
+    float: none;\r
+    overflow: hidden;\r
+    left: 100%;\r
+    right: 0;\r
+    text-align: left;\r
+    cursor: default;\r
+    text-decoration: none;\r
+}\r
+/*applied to the jqxTree LI elements.*/\r
+.jqx-tree-item-li\r
+{\r
+    text-indent: 0;\r
+    background-color: transparent;\r
+    border: 0px solid transparent;\r
+    list-style: none;\r
+    left: 100%; \r
+    right: 0;\r
+    text-align: left;\r
+    outline: none;\r
+    margin: 0px;\r
+    margin-top: 1px;\r
+    padding: 0px;\r
+}\r
+/*applied to the last LI elements in an UL element.*/\r
+.jqx-tree-item-u-last\r
+{\r
+    margin: 0px 0px 0px 0px;\r
+}\r
+/*applied to a tree item when the mouse is over the item.*/\r
+.jqx-tree-item-hover\r
+{\r
+    color: inherit;\r
+    right: 0;\r
+    padding: 3px;\r
+    margin: 0px;\r
+    list-style: none;\r
+    left: 100%;\r
+    cursor: pointer;\r
+    text-decoration: none;\r
+}\r
+/*applied to a tree item when the item is selected.*/\r
+.jqx-tree-item-selected\r
+{\r
+    color: inherit;\r
+    right: 0;\r
+    padding: 3px;\r
+    margin: 0px;\r
+    list-style: none;\r
+    left: 100%;\r
+    cursor: pointer;\r
+    text-decoration: none;\r
+}\r
+.jqx-tree-item-rtl {\r
+    text-align: right;\r
+}\r
+.jqx-tree-item-li-rtl {\r
+    text-align: right;\r
+}\r
+/*applied to the anchor element of a tree item.*/\r
+.jqx-tree-item a:link, .jqx-tree-item a:visited\r
+{\r
+    text-indent: 0;\r
+    background-color: transparent;\r
+    border: 0px solid transparent;\r
+    list-style: none;\r
+    padding: 0px;\r
+    margin: 0px;\r
+    float: none;\r
+    overflow: hidden;\r
+    left: 100%;\r
+    color: inherit;\r
+    right: 0;\r
+    text-align: left;\r
+    cursor: pointer;\r
+    text-decoration: none;\r
+    outline: none;\r
+}\r
+.jqx-tree-item-selected, .jqx-tree-item-hover a:hover\r
+{\r
+    color: inherit;\r
+}\r
+.jqx-tree-item-selected, .jqx-tree-item-hover a:visited\r
+{\r
+    color: inherit;\r
+}\r
+\r
+/*applied to a tree item when the item is disabled.*/\r
+.jqx-tree-item-disabled\r
+{\r
+\r
+}\r
+/*applied to a tree item when it has sub items and is collapsed. Displays an arrow icon next to the item.*/\r
+.jqx-tree-item-arrow-collapse, .jqx-tree-item-arrow-collapse-hover\r
+{\r
+    padding-right: 0px;\r
+    width: 17px;\r
+    height: 17px;\r
+    background-image: url(images/icon-right.png);\r
+    background-position: 100% 50%;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+}\r
+.jqx-tree-item-arrow-collapse-rtl, .jqx-tree-item-arrow-collapse-hover-rtl {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+/*applied to a tree item when it has sub items and is expanded. Displays an arrow icon next to the item.*/\r
+.jqx-tree-item-arrow-expand, .jqx-tree-item-arrow-expand-hover\r
+{\r
+    padding-right: 0px;\r
+    width: 17px;\r
+    height: 17px;\r
+    background-image: url(images/icon-down.png);\r
+    background-position: 100% 50%;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+}\r
+/*applied to the tree when it is disabled.*/\r
+.jqx-tree-disabled\r
+{\r
+    cursor: default;\r
+}\r
+/*applied to the anchor elements in a tree when it is disabled.*/\r
+.jqx-tree-disabled a:link\r
+{\r
+    cursor: default;\r
+    text-decoration: none;\r
+}\r
+.jqx-tree-disabled a:visited\r
+{\r
+    cursor: default;\r
+    text-decoration: none;\r
+}\r
+.jqx-tree-disabled a:hover\r
+{\r
+    cursor: default;\r
+}\r
+\r
+\r
+/*jqxTabs*/\r
+.jqx-tabs\r
+{\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    background: transparent;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the tab close button.*/\r
+.jqx-tabs-close-button\r
+{\r
+    outline: none;\r
+    background-image: url(images/close.png);\r
+    cursor: pointer;\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+    position: relative;\r
+    left: 5px;\r
+}\r
+/*applied to the tab close button when the tab is selected.*/\r
+.jqx-tabs-close-button-selected\r
+{\r
+    outline: none;\r
+    background-image: url(images/close.png);\r
+    cursor: pointer;\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+}\r
+/*applied to the tab close button when the mouse is over the tab.*/\r
+.jqx-tabs-close-button-hover\r
+{\r
+    outline: none;\r
+    background-image: url(images/close.png);\r
+    cursor: pointer;\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+}\r
+/*applied to the tab's left scroll arrow.*/\r
+.jqx-tabs-arrow-left\r
+{\r
+    outline: none;\r
+    position: relative;\r
+    z-index: 15;\r
+    float: left;\r
+    cursor: pointer;\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+/*applied to the tab's right scroll arrow.*/\r
+.jqx-tabs-arrow-right\r
+{\r
+    outline: none;\r
+    position: relative;\r
+    z-index: 15;\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    float: left;\r
+    cursor: pointer;\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+}\r
+.jqx-tabs-arrow-background\r
+{\r
+    background: #eeeeee;\r
+}\r
+/*applied to the tab's title.*/\r
+.jqx-tabs-title\r
+{\r
+    outline: none;\r
+    display: block;\r
+    cursor: pointer;\r
+    white-space: nowrap;\r
+    left: 100%;\r
+    right: 0;\r
+    text-indent: 0px;\r
+    list-style: none;\r
+    border: 1px solid transparent;\r
+    margin: 0px 2px 0px 0px;\r
+    overflow: hidden;\r
+    z-index: 1;\r
+    padding-left: 13px;\r
+    padding-right: 13px;\r
+    padding-bottom: 5px;\r
+    padding-top: 5px;\r
+    background: transparent;\r
+    height: auto;\r
+    position: relative; \r
+}\r
+.jqx-tabs-title-bottom\r
+{\r
+}\r
+.jqx-tabs-title a:link\r
+{\r
+    color: inherit;\r
+    *color: expression(this.parentNode.currentStyle['color']);    \r
+    text-decoration: none;\r
+}\r
+.jqx-tabs-title a:hover\r
+{\r
+    color: inherit;\r
+    *color: expression(this.parentNode.currentStyle['color']);\r
+    text-decoration: none;\r
+}\r
+.jqx-tabs-title a:active\r
+{\r
+    color: inherit;\r
+    *color: expression(this.parentNode.currentStyle['color']);\r
+    text-decoration: none;\r
+}\r
+.jqx-tabs-title a:visited\r
+{\r
+    color: inherit;\r
+    *color: expression(this.parentNode.currentStyle['color']);\r
+    text-decoration: none;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'top' .*/\r
+.jqx-tabs-title-selected-top\r
+{\r
+    z-index: 99;\r
+    outline: none;\r
+    border-top: 1px solid transparent;\r
+    border-left: 1px solid transparent;\r
+    border-right: 1px solid transparent;\r
+    border-bottom: 1px solid #fff;\r
+    background-color: #fff;\r
+    padding-bottom: 7px;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom\r
+{\r
+    outline: none;\r
+    border-top: 1px solid #fff;\r
+    border-left: 1px solid transparent;\r
+    border-right: 1px solid transparent;\r
+    border-bottom: 1px solid transparent;\r
+    padding-top: 7px;\r
+    padding-bottom: 5px;\r
+    margin-top: -2px;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's title when the tab is hovered and the jqxTab's position property is set to 'top' .*/\r
+.jqx-tabs-title-hover-top\r
+{\r
+    outline: none;\r
+    border: 1px solid transparent;    \r
+    padding-bottom: 5px;\r
+}\r
+/*applied to the tab's title when the tab is hovered and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-hover-bottom\r
+{\r
+    outline: none;\r
+    border: 1px solid transparent;\r
+    padding-top: 5px;\r
+}\r
+/*applied to the tab's title when the tab is disabled.*/\r
+.jqx-tabs-title-disable\r
+{\r
\r
+}\r
+/*applied to the tab's header.*/\r
+.jqx-tabs-header\r
+{\r
+    padding-left: 0px;\r
+    padding-right: 0px;\r
+    padding-top: 3px;\r
+    padding-bottom: 1px;\r
+    margin: 0px;\r
+    border-top: 0px solid transparent;\r
+    border-left: 0px solid transparent;\r
+    border-right: 0px solid transparent;\r
+    border-bottom: 1px solid #aaa;\r
+    background: #eeeeee;\r
+}\r
+/*applied to the tab's header when the position is bottom.*/\r
+.jqx-tabs-header-bottom\r
+{\r
+    padding-top: 1px;\r
+    padding-bottom: 3px;\r
+    border-top: 0px solid #aaa;\r
+    border-left: 0px solid transparent;\r
+    border-right: 0px solid transparent;\r
+    border-bottom: 1px solid transparent;\r
+}\r
+/*applied to the tab's header when the tab is collapsed.*/\r
+.jqx-tabs-header-collapsed\r
+{\r
+    border: 1px solid #aaa;\r
+}\r
+/*applied to the tab's header when the position is bottom and tab is collapsed.*/\r
+.jqx-tabs-header-collapsed-bottom\r
+{\r
+    border: 1px solid #aaa;\r
+}\r
+.jqx-tabs-collapsed\r
+{\r
+    border: 0px solid transparent;\r
+}\r
+.jqx-tabs-collapsed-bottom\r
+{\r
+    border: 0px solid transparent;\r
+}\r
+/*applied to the tab's selection tracker container element.*/\r
+.jqx-tabs-selection-tracker-container\r
+{\r
+    outline: none;\r
+    position: relative;\r
+    text-indent: 0px;\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+    width: 100%;\r
+    background: transparent;\r
+    height: 0px;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top\r
+{\r
+    border-top: 1px solid transparent;\r
+    border-left: 1px solid transparent;\r
+    border-right: 1px solid transparent;\r
+    padding-bottom: 2px;\r
+    background-color: #fff;\r
+    outline: none;\r
+    position: absolute;\r
+    z-index: 10;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom\r
+{\r
+    border-left: 1px solid transparent;\r
+    border-right: 1px solid transparent;\r
+    border-bottom: 1px solid transparent;\r
+    background-color: #fff;\r
+    outline: none;\r
+    position: absolute;\r
+    z-index: 10;\r
+    margin-top: -1px;\r
+    padding-bottom: 2px;\r
+}\r
+/*applied to the tab's content element which represents a DIV element.*/\r
+.jqx-tabs-content\r
+{\r
+    outline: none;\r
+    border-bottom: 0px solid transparent;\r
+    border-left: 0px solid transparent;\r
+    border-right: 0px solid transparent;\r
+    border-top: 0px solid transparent;\r
+    text-align: left;\r
+    clear: both;\r
+}\r
+.jqx-tabs-content-element\r
+{\r
+    height: 100%;\r
+    overflow: auto;\r
+}\r
+\r
+/*jqxCheckBox*/\r
+.jqx-checkbox\r
+{\r
+    text-align: left;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+    white-space: nowrap;\r
+    text-overflow: ellipsis;\r
+}\r
+/*applied to the check box.*/\r
+.jqx-checkbox-default\r
+{\r
+    text-align: left;\r
+    float: left;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    margin: 0px 3px 0px 3px;\r
+}\r
+/*applied to the check box when the mouse cursor is over it.*/\r
+.jqx-checkbox-hover\r
+{\r
+    cursor: pointer;\r
+    float: left;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    margin: 0px 3px 0px 3px;\r
+}\r
+/*applied to the widget when it is disabled.*/\r
+.jqx-checkbox-disabled\r
+{\r
+    cursor: default;\r
+    background: transparent;\r
+    padding: 0px;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0px 0px 0px 0px;\r
+}\r
+/*applied to the check box when the widget is disabled.*/\r
+.jqx-checkbox-disabled-box\r
+{\r
+    float: left;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    margin: 0px 3px 0px 3px;\r
+}\r
+/*applied to the check box when it is checked. Displays a check icon.*/\r
+.jqx-checkbox-check-checked\r
+{\r
+    float: left;\r
+    background: transparent url(images/check_black.png) center center no-repeat;\r
+    padding: 0px;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the check box when the widget is disabled. Displays a disabled check icon.*/\r
+.jqx-checkbox-check-disabled\r
+{\r
+    float: left;\r
+    background: transparent url(images/check_disabled.png) center center no-repeat;\r
+    padding: 0px;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the check box when its state is indeterminate.*/\r
+.jqx-checkbox-check-indeterminate\r
+{\r
+    float: left;\r
+    background: transparent url(images/check_indeterminate_black.png) center center no-repeat;\r
+    padding: 0px;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the check box when its state is indeterminate and it is disabled.*/\r
+.jqx-checkbox-check-indeterminate-disabled\r
+{\r
+    float: left;\r
+    background: transparent url(images/check_indeterminate_disabled.png) center center no-repeat;\r
+    padding: 0px;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the check box when its in rtl mode.*/\r
+.jqx-checkbox-rtl {\r
+    float: right;\r
+}\r
+/*jqxRadioButton*/\r
+.jqx-radiobutton\r
+{\r
+    text-overflow: ellipsis;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+    white-space: nowrap;\r
+}\r
+/*applied to the radio button.*/\r
+.jqx-radiobutton-default\r
+{\r
+    cursor: pointer;\r
+    float: left;\r
+    background: transparent url(images/roundbg_classic_normal.png) left center scroll repeat-x;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    margin: 1px 3px 0px 3px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+/*applied to the radio button when the mouse is over it.*/\r
+.jqx-radiobutton-hover\r
+{\r
+    cursor: pointer;\r
+    float: left;\r
+    background: transparent;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    margin: 1px 3px 0px 3px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+/*applied to the radio button when it is disabled.*/\r
+.jqx-radiobutton-disabled\r
+{\r
+    cursor: default;\r
+}\r
+/*applied to the radio button's radio icon when it is disabled.*/\r
+.jqx-radiobutton-disabled-box\r
+{\r
+}\r
+/*applied to the radio button when it is checked.*/\r
+.jqx-radiobutton-check-checked\r
+{\r
+    float: left;\r
+    background: transparent url(images/roundbg_check_black.png) left top no-repeat;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    width: 7px; \r
+    height: 7px;\r
+    margin-left: 2px;\r
+    margin-top: 2px;\r
+}\r
+/*applied to the radio button when it is checked and disabled.*/\r
+.jqx-radiobutton-check-disabled\r
+{\r
+}\r
+/*applied to the radio button when it is in indeterminate state.*/\r
+.jqx-radiobutton-check-indeterminate\r
+{\r
+    float: left;\r
+    background: transparent url(images/roundbg_check_indeterminate.png) left top no-repeat;\r
+    padding: 0px;\r
+    border: none;\r
+    outline: none;\r
+    margin: 0 0 0 0;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%; \r
+    width: 6px; \r
+    height: 6px;\r
+    margin-left: 2px;\r
+    margin-top: 2px;  \r
+}\r
+/*applied to the radio button when it is in indeterminate state and disabled.*/\r
+.jqx-radiobutton-check-indeterminate-disabled\r
+{\r
+}\r
+/*applied to the radio button when its in rtl mode.*/\r
+.jqx-radiobutton-rtl {\r
+    float: right;\r
+}\r
+\r
+/*jqxRating*/\r
+.jqx-rating\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    outline: none;\r
+    overflow: hidden;\r
+}\r
+.jqx-rating-image\r
+{\r
+    border-width: 0px;\r
+}\r
+.jqx-rating-image-default\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    outline: none;    \r
+    background-color: transparent;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+    background-image: url(images/star.png);\r
+    overflow: hidden;\r
+}\r
+/*applied to the rating when it is hovered.*/\r
+.jqx-rating-image-hover\r
+{\r
+    background-color: transparent;\r
+    padding: 0px;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+    background-image: url(images/star_hover.png);\r
+    overflow: hidden;\r
+}\r
+/*applied to the rating when it is disabled.*/\r
+.jqx-rating-image-backward\r
+{\r
+    background-color: transparent;\r
+    padding: 0px;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+    background-image: url(images/star_disabled.png);\r
+    overflow: hidden;\r
+}\r
+/*jqxCalendar Style*/\r
+.jqx-calendar\r
+{\r
+    border: 1px solid transparent;\r
+    -webkit-appearance: none;\r
+    overflow: hidden;\r
+    outline: none;\r
+    padding: 0px;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+    border-collapse: separate;\r
+}\r
+.jqx-calendar td {\r
+    padding-top: 0px;\r
+    padding-bottom: 0px;\r
+    border-collapse: separate;\r
+    border-spacing: 1px;\r
+    font-size: 13px;\r
+    line-height: 1.231;\r
+}\r
+.jqx-calendar table {\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border-collapse: separate;\r
+    border-spacing: 1px;\r
+    font-size: 13px;\r
+    line-height: 1.231;\r
+}\r
+/*applied to the calendar's row header. This header displays the week numbers.*/\r
+.jqx-calendar-row-header\r
+{\r
+    outline: none;\r
+    border: 0px solid #f2f2f2;\r
+    padding: 0;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+}\r
+/*applied to the calendar's column. This header displays the day names.*/\r
+.jqx-calendar-column-header\r
+{\r
+    outline: none;\r
+    text-align: right;\r
+    padding: 3px;\r
+    border-top: none;\r
+    border-bottom: 1px solid transparent;\r
+    border-left: none;\r
+    border-right: none;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+}\r
+/*applied to the calendar's top-left header. This header is displayed before the day names and above the week numbers.*/\r
+.jqx-calendar-top-left-header\r
+{\r
+    outline: none;\r
+    border: 0px solid #f2f2f2;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+}\r
+/*applied to the calendar's navigation buttons.*/\r
+.jqx-calendar-title-navigation\r
+{\r
+    cursor: pointer;\r
+    background-color: transparent; \r
+    margin: 0; \r
+    padding: 0; \r
+    border: none; \r
+    width: 25px;\r
+    height: 25px;\r
+}\r
+/*applied to the month table*/\r
+.jqx-calendar-month\r
+{\r
+    margin: 0; padding: 0;\r
+    border: none;\r
+    width: 100%; \r
+}\r
+/*applied to the calendar's title content.*/\r
+.jqx-calendar-title-content\r
+{\r
+    cursor: pointer;\r
+    text-align: center;\r
+}\r
+/*applied to the calendar's navigation title.*/\r
+.jqx-calendar-title-header\r
+{\r
+    border-left: none;\r
+    border-top: none;\r
+    border-right: none;\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+    margin: 0 0 0 0;\r
+}\r
+.jqx-calendar-title-header td {\r
+    padding-left: 0px;\r
+    padding-right: 0px;\r
+    border: none;\r
+}\r
+/*applied to the calendar's navigation title when the calendar is disabled.*/\r
+.jqx-calendar-title-header-disabled\r
+{   \r
+    border-bottom-width: 1px;\r
+    border-bottom-style:solid; \r
+    margin: 0 0 0 0;    \r
+    border-left: 0px solid transparent;\r
+    border-right: 0px solid transparent;\r
+    border-top: 0px solid transparent;    \r
+    \r
+}\r
+/*applied to a calendar cell.*/\r
+.jqx-calendar-cell\r
+{\r
+    border: 1px solid transparent;\r
+    margin: 0px;\r
+    outline: none;\r
+    text-align: center;\r
+    padding: 1px;\r
+    cursor: pointer;\r
+    background-color: transparent;\r
+}\r
+.jqx-calendar-cell td\r
+{\r
+    padding: 0;\r
+    margin: 0;\r
+}\r
+/*applied to a calendar cell in decade and year views.*/\r
+.jqx-calendar-cell-decade, .jqx-calendar-cell-year {\r
+   text-align: center;\r
+ }\r
+\r
+.jqx-calendar .jqx-fill-state-normal\r
+{\r
+    background: transparent;\r
+    border: 1px solid transparent;\r
+}\r
+\r
+/*applied to a calendar cell when the cell is hidden. A cell can be hidden when the showOtherMonthDays property is false and the calendar hides the cells with dates from the other months*/\r
+.jqx-calendar-cell-hidden\r
+{\r
+    margin: 0 0 0 0;\r
+    visibility: hidden;\r
+    cursor: default;\r
+}\r
+/*applied to a calendar cell when the cell's date is a weekend date.*/\r
+.jqx-calendar-cell-weekend\r
+{\r
+    color: #898989 !important;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to a calendar cell when the cell's date is a special date(holiday, vacation, birthay. See the SpecialDates demo).*/\r
+.jqx-calendar-cell-specialDate\r
+{\r
+    color: #FF0000 !important;\r
+    background-color: transparent;\r
+    border: 1px solid #fff;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to a calendar cell when the cell's date is a restricted date.*/\r
+.jqx-calendar-cell-restrictedDate\r
+{\r
+    background-color: rgba(251, 132, 153, 1);\r
+    border: 1px solid #fff;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+.jqx-calendar-cell-selected-invalid\r
+{\r
+    color: #FFF !important;\r
+    background: #FF0000 !important;\r
+    border: 1px solid #FF0000 !important;\r
+}\r
+/*applied to a calendar cell when the cell's date is the today date.*/\r
+.jqx-calendar-cell-today\r
+{\r
+    color: #898989;\r
+    background-color: #ffffdb;\r
+    border: 1px solid #fdc066;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to a calendar cell when the cell is hovered.*/\r
+.jqx-calendar-cell-hover\r
+{\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to a calendar cell when the cell is selected.*/\r
+.jqx-calendar-cell-selected\r
+{\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to a calendar cell when the cell's date represents a date from the previous or next month.*/\r
+.jqx-calendar-cell-othermonth\r
+{\r
+    color: #898989 !important;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to a calendar cell when the calendar is disabled.*/\r
+.jqx-calendar-cell-disabled\r
+{\r
+    color: #ccc;\r
+}\r
+/*applied to a calendar cell when the cell is from the row header that displays the week numbers.*/\r
+.jqx-calendar-row-cell\r
+{\r
+    outline: none;\r
+    text-align: center;\r
+    border: 1px solid transparent;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+}\r
+/*applied to a calendar cell when the cell is from the row header that displays the week numbers and the calendar is disabled.*/\r
+.jqx-calendar-row-cell-disabled\r
+{\r
+\r
+}\r
+.jqx-calendar-footer\r
+{\r
+    margin: 5px;\r
+    color: inherit;\r
+    font-size: 13px;\r
+}\r
+\r
+.jqx-calendar-title-container\r
+{\r
+    overflow: hidden;\r
+}\r
+/*applied to a calendar cell when the cell is from the column header that displays the day names.*/\r
+.jqx-calendar-column-cell\r
+{\r
+    overflow: hidden;\r
+    text-align: center;\r
+    outline: none;\r
+    font-weight: normal;\r
+    padding: 1px;\r
+    border: 1px solid transparent;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+}\r
+/*applied to a calendar cell when the cell is from the column header that displays the day names and the calendar is disabled.*/\r
+.jqx-calendar-column-cell-disabled\r
+{\r
+\r
+}\r
+/*applied to the calendar's cell area element.*/\r
+.jqx-calendar-view\r
+{\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    padding: 0px;\r
+    border: 0px solid #fff;\r
+    margin: 0 0 0 0;\r
+    cursor: default;\r
+}\r
+\r
+/*jqxExpander and jqxNavigationBar Style*/\r
+.jqx-expander\r
+{\r
+}\r
+/*applied to the Expander's header and content*/\r
+.jqx-expander-header, .jqx-expander-content\r
+{\r
+    border-left-width: 1px;\r
+    border-right-width: 1px;\r
+    border-left-style: solid;\r
+    border-right-style: solid;\r
+    padding-top: 5px;\r
+    padding-bottom: 5px;\r
+    outline: 0;\r
+}\r
+/*applid to the content of the expander header.*/\r
+.jqx-expander-header-content\r
+{\r
+    padding-left: 3px;\r
+}\r
+/*applid to the content of the expander header.*/\r
+.jqx-expander-header-content-rtl\r
+{\r
+    padding-right: 3px;\r
+}\r
+ .jqx-expander-content{padding-top: 0px;padding-bottom:0px; overflow: auto; outline: 0;}\r
+/*applied to the Expander's header and its content when it is on the top of the header*/\r
+.jqx-expander-header, .jqx-expander-content-top\r
+{\r
+    border-top-width: 1px;\r
+    border-top-style: solid;\r
+}\r
+/*applied to the Expander's header and its content when it is on the bottom of the header*/\r
+.jqx-expander-header, .jqx-expander-content-bottom\r
+{\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+}\r
+/*applied to the Expander's header*/\r
+.jqx-expander-header\r
+{\r
+    cursor: pointer;\r
+    overflow: hidden;\r
+}\r
+/*applied to the Expander's header when the expander is disabled or the toggleMode is "none"*/\r
+.jqx-expander-header-disabled\r
+{\r
+    cursor: default;\r
+}\r
+/*applied to the Expander's arrow*/\r
+.jqx-expander-arrow\r
+{\r
+    width: 17px;\r
+    height: 17px;\r
+    position: relative;\r
+}\r
+/*applied to the Expander's content if it is empty*/\r
+.jqx-expander-content-empty\r
+{\r
+    border-width: 0px;\r
+    padding: 0px;\r
+}\r
+\r
+/*applied to jqxNavigationBar. The NavigationBar internally uses jqxExpander's classes and inherits all header and content style settings from the Expander.*/\r
+.jqx-navigationbar\r
+{\r
+    border: none;\r
+    margin: 0px;\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+}\r
+/*jqxPanel Style*/\r
+.jqx-panel\r
+{\r
+    border: 1px solid transparent;\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    padding: 0px;\r
+    margin: 0px;\r
+    cursor: default;\r
+    overflow: hidden;\r
+}\r
+/*applied to the Panel's element displayed when the horizontal and vertical scrollbars are visible and the element is positioned below the vertical scrollbar and on the right\r
+of the horizontal scrollbar.*/\r
+.jqx-panel-bottomright\r
+{\r
+  \r
+}\r
+/*applied to the DropDownButton's Popup.*/\r
+.jqx-dropdownbutton-popup {\r
+   -webkit-appearance: none;\r
+    outline: none;\r
+    border: 1px solid transparent;\r
+ }\r
+\r
+.jqx-listbox\r
+{\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    border: 1px solid transparent;\r
+    padding: 0px;\r
+    margin: 0px;\r
+    cursor: default;\r
+    overflow: hidden;\r
+}\r
+/*applied to the ListBox's element displayed when the horizontal and vertical scrollbars are visible and the element is positioned below the vertical scrollbar and on the right\r
+of the horizontal scrollbar.*/\r
+.jqx-listbox-bottomright\r
+{\r
+\r
+}\r
+/*applied to the ListBox's groups.*/\r
+.jqx-listitem-state-group\r
+{\r
+    white-space: nowrap;\r
+    padding: 4px 2px 4px 2px;\r
+    background: transparent;\r
+    font-weight: bold;\r
+    text-align: left;\r
+    outline: none;\r
+    overflow: hidden;\r
+    vertical-align: middle;\r
+    cursor: default;\r
+}\r
+/*applied to a list item in default state.*/\r
+.jqx-listitem-state-normal\r
+{\r
+    white-space: nowrap;\r
+    padding: 3px;\r
+    margin: 1px;\r
+    border: 1px solid transparent;\r
+    outline: none;\r
+    visibility: inherit;\r
+    display: inherit;\r
+    text-align: left;\r
+    overflow: hidden;\r
+    position: absolute;\r
+    left: 0;\r
+    top: 0;\r
+    cursor: default;\r
+}\r
+/*applied to a list item in hovered state.*/\r
+.jqx-listitem-state-hover\r
+{\r
+    white-space: nowrap;\r
+    background: transparent;\r
+    padding: 3px 3px 3px 3px;\r
+    margin: 1px;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to a list item when the item is selected.*/\r
+.jqx-listitem-state-selected\r
+{\r
+    white-space: nowrap;\r
+    padding: 3px 3px 3px 3px;\r
+    margin: 1px;\r
+    border: 1px solid transparent;\r
+}\r
+.jqx-listbox-feedback\r
+{\r
+    height: 1px;\r
+    border-top: 1px dashed #000;\r
+}\r
+.jqx-listitem-element\r
+{\r
+  -ms-touch-action: none;\r
+  border: none; \r
+  width:100%; \r
+  height: 100%; \r
+  align:left; \r
+  valign:top; \r
+  position: absolute;\r
+}\r
+/*jqxComboBox Style*/\r
+/*applied to the jqxComboBox's content which displays the text.*/\r
+.jqx-combobox-content\r
+{\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    padding-left: 0px;\r
+    padding-top: 0px;\r
+    padding-bottom: 0px;\r
+    padding-right: 0px;\r
+    margin: 0px;\r
+    text-align: left;\r
+    vertical-align: middle;\r
+    white-space: nowrap;\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    border: none;\r
+    -moz-border-radius-topleft: 3px;\r
+    -webkit-border-top-left-radius: 3px;\r
+    border-top-left-radius: 3px;\r
+    -moz-border-radius-bottomleft: 3px;\r
+    -webkit-border-bottom-left-radius: 3px;\r
+    border-bottom-left-radius: 3px;\r
+    border-right: 1px solid transparent; \r
+    -moz-background-clip: padding; background-clip: padding-box; -webkit-background-clip: padding-box;    \r
+}\r
+.jqx-combobox-content-rtl {\r
+    border: none;\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+     -moz-border-radius-topleft: 3px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-right-radius: 3px;\r
+    -moz-border-radius-bottomright: 3px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 3px;\r
+    border-right: none;\r
+    border-left: 1px solid transparent; \r
+    -moz-background-clip: padding; background-clip: padding-box; -webkit-background-clip: padding-box;  \r
+}\r
+/*applied to the ComboBox's input field.*/\r
+.jqx-combobox-input\r
+{\r
+    -webkit-appearance: none;\r
+    -webkit-border-radius: 0px;\r
+    padding: 0 0 0 0;\r
+    outline: none;\r
+    border: 0px solid #aaa;\r
+    -moz-background-clip: padding; background-clip: padding-box; -webkit-background-clip: padding-box;\r
+}\r
+.jqx-combobox-input::-ms-clear {\r
+    display: none;\r
+}\r
+/*applied to the ComboBox's content when the widget is disabled.*/\r
+.jqx-combobox-content-disabled\r
+{\r
+    color: #AAA;\r
+}\r
+/*applied to the ComboBox's arrow button.*/\r
+.jqx-combobox-arrow-normal, .jqx-action-button\r
+{\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    overflow: hidden;\r
+    margin: 0 0 0 0;\r
+    border: none;\r
+    cursor: pointer;\r
+}\r
+/*applied to the ComboBox's arrow button*/\r
+.jqx-combobox-arrow-hover, .jqx-combobox-arrow-selected\r
+{\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    overflow: hidden;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the ComboBox in normal state.*/\r
+.jqx-combobox-state-normal\r
+{\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    border: 1px solid transparent;\r
+    overflow: hidden;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the ComboBox when the mouse is over the widget.*/\r
+.jqx-combobox-state-hover\r
+{\r
+    overflow: hidden;\r
+    border: 1px solid transparent;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the ComboBox when the popup ListBox is shown.*/\r
+.jqx-combobox-state-selected\r
+{\r
+    overflow: hidden;\r
+    border: 1px solid transparent;\r
+    margin: 0 0 0 0;\r
+}\r
+/*applied to the ComboBox when the widget is focused.*/\r
+.jqx-combobox-state-focus\r
+{\r
+    border: 1px solid transparent;\r
+}\r
+.jqx-combobox-multi-item {\r
+    padding: 1px 3px;\r
+    margin: 2px;\r
+    white-space: nowrap;\r
+    border-style: solid;\r
+    font-weight: normal;  \r
+    overflow: hidden;\r
+    text-align: left;\r
+\r
+}\r
+.jqx-combobox-multi-item a:link, .jqx-combobox-multi-item a:visited  {\r
+    color: inherit;\r
+    display: block;\r
+    outline: 0 none;\r
+    text-decoration: none;\r
+    cursor: pointer;\r
+    *color: expression(this.parentNode.currentStyle['color']);    \r
+}\r
+/*applied to the ComboBox when the widget is disabled.*/\r
+.jqx-combobox-state-disabled\r
+{\r
+    white-space: nowrap;\r
+    margin: 0px;\r
+    color: #AAA;\r
+}\r
+/*jqxSelect Style*/\r
+.jqx-select {\r
+    overflow: hidden;\r
+    padding-left: 3px;\r
+    padding-top: 0px;\r
+    padding-bottom: 0px;\r
+    margin: 0px;\r
+    -webkit-appearance: none;\r
+    outline: 0 none;\r
+}\r
+.jqx-select-content {\r
+    cursor: pointer;\r
+    text-overflow: ellipsis;\r
+}\r
+.jqx-select-container {\r
+    padding: 0;\r
+}\r
+.jqx-select-item\r
+{\r
+    padding: 3px;\r
+    margin: 1px;\r
+    white-space: normal !important; \r
+    cursor: default;\r
+}\r
+/*jqxDropDownList Style*/\r
+/*applied to the dropdownlist's content element which displays the selected item's text or html.*/\r
+.jqx-dropdownlist-content\r
+{\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    padding-left: 3px;\r
+    padding-top: 0px;\r
+    padding-bottom: 0px;\r
+    margin: 0px;\r
+    text-align: left;\r
+    vertical-align: middle;\r
+    white-space: nowrap;\r
+    -webkit-appearance: none;\r
+    outline: 0 none;\r
+    border: none;\r
+}\r
+.jqx-dropdownlist-content-rtl {\r
+    padding-left: 0px;\r
+    padding-right: 3px;\r
+}\r
+\r
+/*applied to the dropdownlist's content element which displays the selected item's text or html and the widget is disabled. */\r
+.jqx-dropdownlist-content-disabled\r
+{\r
+}\r
+/*applied to the dropdownlist in default state.*/\r
+.jqx-dropdownlist-state-normal\r
+{\r
+    -webkit-appearance: none;\r
+    outline: none;\r
+    border: 1px solid transparent;\r
+    overflow: hidden;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to the dropdownlist in hovered state.*/\r
+.jqx-dropdownlist-state-hover\r
+{\r
+    overflow: hidden;\r
+    border: 1px solid transparent;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to the dropdownlist in selected state.*/\r
+.jqx-dropdownlist-state-selected\r
+{ \r
+    overflow: hidden;\r
+    background-color: transparent;\r
+    border: 1px solid transparent;\r
+    margin: 0 0 0 0;\r
+    cursor: pointer;\r
+}\r
+/*applied to the dropdownlist in focused state.*/\r
+.jqx-dropdownlist-state-focus\r
+{\r
+    border: 1px solid #909090;\r
+}\r
+/*applied to the dropdownlist in disabled state.*/\r
+.jqx-dropdownlist-state-disabled\r
+{\r
+\r
+}\r
+/*jqxScrollBar Style*/\r
+.jqx-scrollbar\r
+{\r
+    background: transparent;\r
+    margin: 0;\r
+    padding: 0;\r
+    border: none;\r
+}\r
+/*applied to the scrollbar in default state.*/\r
+.jqx-scrollbar-state-normal\r
+{\r
+    background: #efefef;\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the scrollbar buttons in default state.*/\r
+.jqx-scrollbar-button-state-normal\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border: 1px solid transparent; \r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the horizontal scrollbar thumb in default state.*/\r
+.jqx-scrollbar-thumb-state-normal-horizontal\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    background: transparent;\r
+    border: 1px solid transparent;\r
+    touch-action:none;\r
+}\r
+/*applied to the horizontal scrollbar thumb in hovered state.*/\r
+.jqx-scrollbar-thumb-state-hover-horizontal\r
+{\r
+    margin: 0px;\r
+    padding: 0px;   \r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the horizontal scrollbar thumb in default state.*/\r
+.jqx-scrollbar-thumb-state-pressed-horizontal\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the vertical scrollbar thumb in default state.*/\r
+.jqx-scrollbar-thumb-state-normal\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    border: 1px solid transparent;\r
+    touch-action:none;\r
+}\r
+/*applied to the vertical scrollbar thumb in default state.*/\r
+.jqx-scrollbar-thumb-state-hover\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    background: transparent;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the vertical scrollbar thumb in default state.*/\r
+.jqx-scrollbar-thumb-state-pressed\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    background: #d1d1d1;\r
+    border: 1px solid #909090;\r
+}\r
+\r
+/* jqxWindow */\r
+.jqx-window\r
+{\r
+    position: absolute;\r
+    overflow: hidden;\r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the jqxWindow when it’s disabled*/\r
+.jqx-window-disabled\r
+{\r
+}\r
+/*applied to the window’s header*/\r
+.jqx-window-header\r
+{\r
+    outline: none;\r
+    border-width: 0px;\r
+    border-bottom: 1px solid transparent; \r
+    overflow: hidden;\r
+    padding: 5px;\r
+    height: auto;\r
+    white-space: nowrap;\r
+    overflow: hidden;  \r
+}\r
+/*applied to the window’s header when the window is disabled*/\r
+.jqx-window-header-disabled\r
+{\r
+\r
+}\r
+/*applied to the window’s content*/\r
+.jqx-window-content\r
+{\r
+    outline: none;\r
+    overflow: auto;\r
+    text-align: left;\r
+    background-color: transparent;\r
+    padding: 5px;\r
+    -webkit-background-clip: padding-box; background-clip: padding-box;\r
+}\r
+/*applied to the window’s content when the window is disabled*/\r
+.jqx-window-content-disabled\r
+{\r
+    outline: none;\r
+    overflow: auto;\r
+    text-align: left;\r
+    padding: 5px;\r
+}\r
+/*applied to the window’s close button*/\r
+.jqx-window-close-button\r
+{\r
+    cursor: pointer;\r
+    background-image: url(images/close.png);\r
+    background-repeat: no-repeat;    \r
+}\r
+/*applied to the window's collapse button*/\r
+.jqx-window-collapse-button\r
+{\r
+    background-image: url(images/icon-up.png);\r
+    cursor: pointer;\r
+    margin-top: 1px;\r
+}\r
+/*applied to the window's collapse button when the window is collapsed*/\r
+.jqx-window-collapse-button-collapsed\r
+{\r
+    margin-top: 0px;\r
+    cursor: pointer;\r
+    background-image: url(images/icon-down.png);\r
+}\r
+/*setting styles of the modal window’s background*/\r
+.jqx-window-modal\r
+{\r
+   background-color: Black;\r
+}\r
+.jqx-window-close-button-hover\r
+{\r
+}\r
+.jqx-docking\r
+{\r
+    overflow: hidden;\r
+}\r
+.jqx-docking-panel\r
+{\r
+    margin: 0px;\r
+    padding: 0px;\r
+    min-height: 100px;\r
+}\r
+.jqx-docking-drop-indicator\r
+{\r
+    border-style: dashed;\r
+    border-width: 1px;\r
+    margin: 0px;\r
+}\r
+.jqx-docking-window\r
+{\r
+    margin: 0px;\r
+}\r
+\r
+/* jxSlider */\r
+/* applied to jqxSlider widget */\r
+.jqx-slider\r
+{\r
+    outline: none;\r
+    clear: both;\r
+}\r
+/*applied to the ticks which can be in the top/bottom/both sides of the jqxSlider*/\r
+.jqx-slider-tick\r
+{\r
+    border-left: 1px solid transparent;\r
+    z-index: 9; \r
+}\r
+/*applied to the ticks when the slider is in horizontal mode*/\r
+.jqx-slider-tick-horizontal\r
+{\r
+    width: 1px;\r
+    border-left: none;\r
+    margin-top: 1px;\r
+}\r
+/*applied to the ticks when the slider is in vertical mode*/\r
+.jqx-slider-tick-vertical\r
+{\r
+    height: 1px;\r
+    border-top: none;\r
+}\r
+/*applied to the ticks container*/\r
+.jqx-slider-tickscontainer\r
+{\r
+    z-index: 10;\r
+    position: relative;\r
+    margin-top: 0px;\r
+    margin-bottom: 0px;\r
+    z-index: 9;\r
+}\r
+/*applied to the jqxSlider thumb used for changing/indicating current value*/\r
+.jqx-slider-slider\r
+{\r
+    cursor: pointer;\r
+    width: 16px;\r
+    height: 16px;\r
+    z-index: 15;\r
+    position: absolute;\r
+    left: 0px;\r
+    top: 0px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;   \r
+}\r
+.jqx-slider-button\r
+{\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;  \r
+    box-sizing: content-box !important;\r
+}\r
+/*applied to the slider's thumb when the slider is in horizontal mode*/\r
+.jqx-slider-slider-horizontal\r
+{   \r
+    margin-top: -5px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;  \r
+    border: 1px solid transparent;\r
+}\r
+/*applied to the slider's thumb when the slider is in vertical mode*/\r
+.jqx-slider-slider-vertical\r
+{\r
+    margin-left: -5px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    border: 1px solid transparent;\r
+ }\r
+/*applied to the track where is located the thumb*/\r
+.jqx-slider-track\r
+{\r
+    height: 8px;\r
+    float:left;\r
+    position: relative;\r
+    z-index: 20;\r
+}\r
+/*used in horizontal slider*/\r
+.jqx-slider-track-horizontal\r
+{\r
+    height: 8px;\r
+    margin-top: 2px;\r
+}\r
+/*used in vertical slider*/\r
+.jqx-slider-track-vertical\r
+{\r
+    width: 8px;\r
+}\r
+/*applied to the div which is between the thumbs in a range slider or from beginning of the track to the current thumb position in the default slider*/\r
+.jqx-slider-rangebar\r
+{\r
\r
+}\r
+\r
+/* jqxSplitter */\r
+.jqx-splitter\r
+{\r
+    overflow: hidden;\r
+    border: 1px solid transparent;\r
+    position: relative;\r
+}\r
+/* Split bar's class when the jqxSplitter is with horizontal orientation */\r
+.jqx-splitter-splitbar-vertical\r
+{\r
+    border: 1px solid transparent;\r
+    border-top-width: 0px;\r
+    border-bottom-width: 0px;\r
+    cursor: e-resize;\r
+    cursor: col-resize;\r
+    position: absolute;\r
+}\r
+/* Split bar's mouse over state */\r
+.jqx-splitter-splitbar-hover\r
+{\r
+    background-color: transparent;\r
+}\r
+/* Split bar's class when the jqxSplitter is with horizontal orientation. */\r
+.jqx-splitter-splitbar-horizontal\r
+{\r
+    position: absolute;\r
+    border: 1px solid transparent;\r
+    border-left-width: 0px;\r
+    border-right-width: 0px;   \r
+    cursor: n-resize;\r
+    cursor: row-resize;\r
+}\r
+/* This class is applied to the splitter when it's dragged to it's max left/right boundary */\r
+.jqx-splitter-splitbar-invalid\r
+{\r
+   background: #FF0000 !important;\r
+}\r
+/* This class is added to split bar's collapse button when the splitter is with vectical orientation. */\r
+.jqx-splitter-collapse-button-horizontal\r
+{\r
+    cursor: pointer;\r
+    width: 45px;\r
+    height: 5px;\r
+}\r
+/* This class is added to split bar's collapse button when the splitter is with horizontal orientation. */\r
+.jqx-splitter-collapse-button-vertical\r
+{\r
+    cursor: pointer;\r
+    width: 5px;\r
+    height: 45px;\r
+}\r
+/* This class is added when the user disable the splitter. */\r
+.jqx-splitter-splitbar-collapsed\r
+{\r
+    cursor: default;\r
+}\r
+/* Applied to the jqxSplitter panels. */\r
+.jqx-splitter-panel\r
+{\r
+    border: none;\r
+    outline: none;   \r
+    position: absolute;\r
+    overflow: hidden;\r
+}\r
+/* This class is added to a nested splitter.*/\r
+.jqx-splitter-nested, .jqx-splitter-panel-nested\r
+{\r
+    border: none;\r
+    overflow: hidden;\r
+}\r
+.jqx-draggable\r
+{\r
+    \r
+}\r
+.jqx-draggable-dragging\r
+{\r
+    border: 0px solid black;\r
+}\r
+.jqx-draggable-disabled\r
+{\r
+    cursor: default;\r
+}\r
+.jqx-validator-hint\r
+{\r
+    height: 18px;\r
+    width: auto;\r
+    display: inline-block;\r
+    cursor: pointer;\r
+    padding-left: 5px;\r
+    padding-right: 5px;\r
+    font-family: Verdana;\r
+    font-size: 13px;\r
+    border: 1px solid #6E0000;\r
+    background-color: #942724;\r
+    color: #fff;\r
+    z-index: 99999;\r
+    white-space: nowrap;\r
+}\r
+.jqx-validator-hint-arrow\r
+{\r
+    z-index: 99999;\r
+    height: 9px;\r
+    width: 9px;\r
+    padding: 0px;\r
+    margin: 0px;\r
+    background-color: transparent;\r
+    background-image: url(images/multi-arrow.gif);\r
+}\r
+.jqx-validator-error-label {\r
+   color: #dd4b39;\r
+   vertical-align:top;\r
+   text-align: left;\r
+   display: block;\r
+   cursor: default;\r
+   line-height: 17px;\r
+ }\r
+.jqx-validator-error-element {\r
+   border-color: #dd4b39 !important;\r
+}\r
+\r
+.jqx-switchbutton\r
+{\r
+    overflow: hidden;\r
+    -moz-border-radius: 5px; \r
+    -webkit-border-radius: 5px; \r
+    border-radius: 5px;\r
+    border: 1px solid #ccc;\r
+}\r
+.jqx-switchbutton-thumb\r
+{\r
+    display: inline-block;\r
+    cursor: pointer;\r
+    border: 1px solid #ccc;\r
+}\r
+.jqx-switchbutton-label\r
+{\r
+    font-size: 15px;\r
+    font-family: Sans-Serif;\r
+    text-align: center;\r
+    text-transform: uppercase;\r
+    font-weight: bold;\r
+}\r
+.jqx-switchbutton-wrapper\r
+{\r
+}\r
+.jqx-switchbutton-label-on\r
+{\r
+    \r
+}\r
+.jqx-switchbutton-label-off\r
+{\r
+    \r
+}\r
+\r
+/*left, right, up and down arrow icons.*/\r
+.jqx-left-arrow\r
+{\r
+    background: transparent;\r
+    background-image: url('icon-left.png');\r
+    cursor: pointer;\r
+}\r
+.jqx-right-arrow\r
+{\r
+    background: transparent;\r
+    background-image: url('icon-right.png');\r
+    cursor: pointer;\r
+}\r
+.jqx-icon-delete\r
+{\r
+    background-image: url('images/icon-delete.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-edit\r
+{\r
+    background-image: url('images/icon-edit.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-save\r
+{\r
+    background-image: url('images/icon-save.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-cancel\r
+{\r
+    background-image: url('images/icon-cancel.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-up, .jqx-icon-arrow-up-hover, .jqx-icon-arrow-up-selected\r
+{\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-down, .jqx-icon-arrow-down-hover, .jqx-icon-arrow-down-selected\r
+{\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-left, .jqx-icon-arrow-left-hover, .jqx-icon-arrow-left-selected\r
+{\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-right, .jqx-icon-arrow-right-hover, .jqx-icon-arrow-right-selected\r
+{\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first, .jqx-icon-arrow-first-hover, .jqx-icon-arrow-first-selected\r
+{\r
+    background-image: url('images/icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last, .jqx-icon-arrow-last-hover, .jqx-icon-arrow-last-selected\r
+{\r
+    background-image: url('images/icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-up-hover\r
+{\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-down-hover\r
+{\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-left-hover\r
+{\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-right-hover\r
+{\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-icon-arrow-up-selected\r
+{\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-down-selected\r
+{\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-left-selected\r
+{\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-right-selected\r
+{\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-close\r
+{\r
+    cursor: pointer;\r
+    background-image: url(images/close.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-close-hover\r
+{\r
+    cursor: pointer;\r
+    background-image: url(images/close.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search\r
+{\r
+    cursor: pointer;\r
+    background-image: url(images/search.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    margin-top: 1px;\r
+    background-size: 13px;\r
+    width: 13px;\r
+    height: 13px;\r
+}\r
+.jqx-icon-plus\r
+{\r
+    background-image: url(images/plus.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    background-size: 16px;\r
+    width: 16px;\r
+    height: 16px;\r
+}\r
+/* jqxScrollView */\r
+.jqx-scrollview-button\r
+{\r
+    width: 10px;\r
+    height: 10px;\r
+    border-radius: 10px;\r
+    -moz-border-radius: 10px;\r
+    -webkit-border-radius: 10px;\r
+    display: inline-block;\r
+    margin: 2px;\r
+    cursor: pointer;\r
+    background-color: #aaaeaf;\r
+}\r
+.jqx-scrollview\r
+{\r
+    background-color: #000;\r
+    -ms-touch-action: auto !important;\r
+}\r
+.jqx-icon-calendar, .jqx-icon-calendar-hover, .jqx-icon-calendar-pressed\r
+{\r
+    background-image: url('images/icon-calendar.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left top;\r
+    position: relative;\r
+    width: 15px !important;\r
+    height: 15px !important;\r
+    margin-top: -7.5px !important;\r
+}\r
+/*applied to Inputs*/\r
+.jqx-input{overflow: hidden; background-color: inherit; border-color: #c7c7c7;}\r
+.jqx-input-invalid {\r
+    color: red !important;\r
+}\r
+.jqx-input-group {overflow: hidden;}\r
+.jqx-input-group-addon {border: 1px solid transparent; position: relative; -webkit-box-sizing: border-box !important; -moz-box-sizing: border-box !important; box-sizing: border-box !important; padding: 2px 8px !important; float: left; white-space: nowrap; vertical-align: middle; }\r
+.jqx-input-group-addon:first-child {\r
+  border-right-width: 0px;\r
+  border-bottom-right-radius: 0 !important;\r
+  border-top-right-radius: 0 !important;\r
+}\r
+.jqx-input-group-addon:last-child {\r
+  border-left-width: 0px;\r
+  border-bottom-left-radius: 0 !important;\r
+  border-top-left-radius: 0 !important;\r
+}\r
+.jqx-input-group-addon:not(:last-child):not(:first-child) {\r
+  border-bottom-left-radius: 0 !important;\r
+  border-top-left-radius: 0 !important;\r
+  border-bottom-right-radius: 0 !important;\r
+  border-top-right-radius: 0 !important;\r
+  border-left-width: 0px;\r
+}\r
+.jqx-input-group .jqx-input {\r
+    padding: 2px 1px !important;\r
+    border-left-width: 1px !important;\r
+    border-right-width: 1px !important;\r
+}\r
+.jqx-editor {\r
+    border-style: solid;\r
+    border-width: 1px;\r
+    border-color: transparent;\r
+    overflow:  hidden;\r
+    box-sizing: border-box !important;\r
+}\r
+.jqx-editor-window {\r
+    overflow: hidden;\r
+}\r
+.jqx-editor-inline {\r
+    padding: 0px;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    border-color: transparent;\r
+}\r
+.jqx-editor-inline p {\r
+    margin: 0px;padding:0 .2em; \r
+}\r
+.jqx-editor-inline-focus {\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    overflow: auto;\r
+}\r
+.jqx-editor iframe {\r
+    border: 0;\r
+    margin: 0;\r
+    padding: 0;\r
+    background: #fff;\r
+    display: inline;\r
+    vertical-align: top;\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-editor-color-bar {\r
+    height: 3px;\r
+}\r
+.jqx-editor-color-picker table {\r
+    margin: 0;\r
+    padding: 0 4px 4px;\r
+    empty-cells: show;\r
+    border-collapse: separate; \r
+}\r
+.jqx-editor-color-picker td {\r
+    border-collapse: separate; \r
+    border: 1px solid transparent;\r
+    cursor: pointer;\r
+    margin: 0;\r
+    position: relative;\r
+}\r
+.jqx-editor-color-picker td:hover {\r
+    border: 1px solid #000;\r
+}\r
+.jqx-editor-color-picker-selected-cell {\r
+    outline: 1px solid #000;\r
+}\r
+.jqx-editor-color-picker td div{\r
+    width: 16px;\r
+    height: 16px;\r
+}\r
+.jqx-editor-content {\r
+    width: 100%;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+    outline: 0;\r
+    left: 0px;\r
+    position: relative;\r
+    box-sizing: border-box !important;\r
+}\r
+.jqx-editor-container {\r
+    position: relative;\r
+    padding: 4px;\r
+    padding-top: 0px;\r
+    width: 100%;\r
+    height: 100%;\r
+    box-sizing: border-box !important;\r
+}\r
+.jqx-editor-toolbar-container {\r
+    top: 0px; left: 0px;\r
+    box-sizing: border-box !important;\r
+}\r
+.jqx-editor-toolbar-inline {\r
+    padding: 0px 4px;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+}\r
+.jqx-editor-toolbar {\r
+    margin: 0;\r
+    padding: 0px;\r
+    padding-bottom: 4px;\r
+}\r
+.jqx-editor-toolbar-icon {\r
+    height: 21px;\r
+    width: 21px;\r
+    vertical-align: middle;\r
+    opacity: .667;\r
+    margin: 2px 0;\r
+    background: url('images/html_editor.png') no-repeat;\r
+}\r
+.jqx-editor-toolbar-icon-bold {\r
+    background-position: 0px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-italic {\r
+    background-position: -21px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-underline {\r
+    background-position: -42px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-fontname {\r
+    background-position: -63px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-fontsize {\r
+    background-position: -84px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-createlink {\r
+    background-position: -147px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-insertorderedlist {\r
+    background-position: -168px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-insertunorderedlist {\r
+    background-position: -189px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-outdent {\r
+    background-position: -210px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-indent {\r
+    background-position: -231px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-insertimage {\r
+    background-position:  -337px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-justifyleft {\r
+    background-position: -252px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-justifycenter {\r
+    background-position: -273px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-justifyright {\r
+    background-position: -294px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-removeformat {\r
+    background-position: -316px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-viewsource {\r
+    background-position: -359px 0px !important;\r
+}\r
+.jqx-editor-toolbar-icon-forecolor {\r
+    background-position: -105px 0px !important;\r
+    height: 15px;\r
+}\r
+.jqx-editor-toolbar-icon-backcolor {\r
+    background-position: -380px 0px !important;\r
+    height: 15px;\r
+}\r
+\r
+.jqx-editor-toolbar-icon:hover {\r
+    opacity: 1;\r
+}\r
+.jqx-fill-state-disabled .jqx-editor-toolbar-icon {\r
+  opacity: .667;\r
+}\r
+.jqx-editor-toolbar-item {\r
+    display: inline-block;\r
+    margin-left: 2px;    \r
+    vertical-align: middle;\r
+}\r
+.jqx-editor-toolbar-separator {\r
+    border-left: 1px solid #ccc;\r
+    margin: 0 2px;\r
+    outline: none;\r
+    overflow: hidden;\r
+    padding: 0;\r
+    text-decoration: none;\r
+    vertical-align: middle;\r
+    width: 0;\r
+    display: inline-block;\r
+}\r
+.jqx-editor-toolbar-group {\r
+    display: inline-block;\r
+    margin-right: 4px;\r
+    margin-top: 4px;\r
+    white-space: nowrap;\r
+}\r
+.jqx-editor-toolbar-button {\r
+    text-decoration: none;\r
+    vertical-align: middle;\r
+    cursor: default;\r
+    display: inline-block;\r
+    padding: 0px !important;\r
+    margin-right: 2px;\r
+}\r
+.jqx-editor-toolbar-group .jqx-editor-toolbar-button {\r
+    margin-right: -1px;\r
+    box-shadow: none;\r
+    position: relative;\r
+    margin-left: 0px !important;\r
+}\r
+.jqx-editor-toolbar-group .jqx-editor-toolbar-button:hover, .jqx-editor-toolbar-group .jqx-editor-toolbar-button:active {\r
+    z-index: 55;\r
+}\r
+.jqx-editor-toolbar-group .jqx-editor-toolbar-button.jqx-fill-state-normal {\r
+    background: transparent !important;\r
+}\r
+\r
+.jqx-date-time-input-popup table td a\r
+{\r
+  border: 1px transparent solid;\r
+  width: 100%;\r
+  display: inline-block;\r
+  margin: 0;\r
+  padding: 0;\r
+  outline: 0;\r
+  color: #333;\r
+}\r
+.jqx-date-time-input-popup table td input {\r
+  width: 25px;\r
+  margin: 0;\r
+  text-align: center;\r
+  padding: 4px 6px;\r
+  height:20px;\r
+  line-height: 20px;\r
+  vertical-align: middle;\r
+}\r
+\r
+.jqx-scheduler .jqx-cell {\r
+    padding: 0px !important;\r
+    cursor: default;\r
+}\r
+.jqx-scheduler .jqx-widget-header.jqx-grid-header\r
+{\r
+    border-bottom-color: transparent;\r
+    border-bottom-width: 0px;\r
+}\r
+.jqx-scheduler .jqx-grid-column-header, .jqx-scheduler.jqx-widget .jqx-grid-column-header\r
+{\r
+    border-bottom: 1px solid #c5c5c5;\r
+}\r
+\r
+.jqx-scheduler-all-day-cell\r
+{\r
+    text-align: left;\r
+}\r
+.jqx-scheduler-all-day-cell span\r
+{\r
+    margin-left:3px;\r
+}\r
+\r
+.jqx-scheduler-month-cell {\r
+    background: #f2f2f2;\r
+    color: #000;\r
+    opacity: 0.8;\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+    border-bottom-color: inherit;\r
+    vertical-align: top;\r
+    text-align: left;\r
+}\r
+.jqx-scheduler-month-cell-touch {\r
+    background: transparent;\r
+    border:none;\r
+    vertical-align:middle;\r
+    text-align:center;\r
+}\r
+.jqx-scheduler-month-cell-popup {\r
+    border: 1px solid #333;\r
+    background: #f2f2f2;\r
+    box-shadow: 0 5px 0px rgba(0,0,0,.15)!important;\r
+}\r
+.jqx-widget .jqx-scheduler-middle-cell, .jqx-scheduler-middle-cell {\r
+    border-bottom-color: #ddd !important;\r
+}\r
+.jqx-scheduler-cell-selected.jqx-scheduler-middle-cell\r
+{\r
+    border-bottom-style:dotted;\r
+}\r
+.jqx-scheduler-work-time-cell\r
+{\r
+    background: #fff;\r
+}\r
+.jqx-scheduler-not-work-time-cell\r
+{\r
+    background: #eee;\r
+}\r
+.jqx-scheduler-month-outer-cell\r
+{\r
+    color: #555;\r
+}\r
+.jqx-scheduler-month-weekend-cell\r
+{\r
+    background: #eee;\r
+}\r
+.jqx-scheduler-disabled-cell {\r
+    background: #e9edf1;\r
+}\r
+.jqx-scheduler-toolbar\r
+{\r
+    font-size: 14px;\r
+}\r
+.jqx-scheduler-time-column, .jqx-scheduler-toolbar {\r
+    background-image: none !important;\r
+    background: #fff !important;\r
+    color: #333 !important;\r
+}\r
+.jqx-scheduler-time-column-header-cell\r
+{\r
+    border-left-color:transparent !important;\r
+}\r
+.jqx-scheduler-time-column-header-cell-rtl\r
+{\r
+    border-right-color:transparent !important;\r
+}\r
+.jqx-scheduler-appointment {\r
+    overflow: visible;\r
+    border: 1px solid #555;\r
+    white-space:pre-line;\r
+    cursor:pointer;\r
+    vertical-align: middle;\r
+    text-overflow:ellipsis;\r
+    user-select: none;\r
+}\r
+.jqx-scheduler-appointment-rtl {\r
+    direction: rtl;\r
+    text-align: right;\r
+}\r
+\r
+.jqx-scheduler-appointment-content {\r
+    overflow: hidden;\r
+    text-overflow:ellipsis;\r
+    height:100%;\r
+    padding-left:5px;\r
+    padding-right:5px;\r
+}\r
+.jqx-scheduler-appointment-inner-content {\r
+    overflow:hidden;\r
+    width:100%;\r
+    text-overflow: ellipsis;\r
+    padding-bottom: 3px;\r
+}\r
+.jqx-scheduler-appointment-status {\r
+    width: 4px;\r
+    height: 100%;\r
+    border-right-width: 1px;\r
+    border-right-style:solid;\r
+    position:absolute;\r
+    top: 0px; left: 0px;\r
+}\r
+.jqx-scheduler-appointment-status-rtl {\r
+    width: 4px;\r
+    height: 100%;\r
+    border-right-width: 0px;\r
+    border-right-style:none;\r
+    border-left-width: 1px;\r
+    border-left-style:solid;\r
+    position:absolute;\r
+    top: 0px; right:0px;\r
+}\r
+.jqx-scheduler-appointment-status-stripes {\r
+    background-image: url('images/stripes.png');\r
+    background-repeat:repeat-y;\r
+    background-position: left top;\r
+}\r
+.jqx-scheduler-appointment-resize-indicator {\r
+    width: 4px;\r
+    height: 4px;\r
+    position: absolute;\r
+    border: 1px solid black;\r
+    background: white;\r
+    display: none;\r
+}\r
+.jqx-scheduler-appointment-top-resize-indicator {\r
+    top: -3px;\r
+    left: 50%;\r
+    margin-left:-2px;\r
+    cursor: row-resize;\r
+}\r
+.jqx-scheduler-appointment-bottom-resize-indicator {\r
+    cursor: row-resize;\r
+    bottom: -3px;\r
+    left: 50%;\r
+    margin-left:-2px;\r
+}\r
+.jqx-scheduler-appointment-left-resize-indicator {\r
+    cursor: col-resize;\r
+    top: 50%;\r
+    left: -3px;\r
+    margin-top: -2px;\r
+}\r
+.jqx-scheduler-appointment-right-resize-indicator {\r
+    cursor: col-resize;\r
+    top: 50%;\r
+    margin-top: -2px;\r
+    right: -3px;\r
+}\r
+\r
+.jqx-scheduler-appointment span {\r
+    vertical-align: middle;\r
+    text-overflow:ellipsis;\r
+    position: relative;\r
+    top: -1px;\r
+}\r
+.jqx-scheduler-feedback-appointment {\r
+    opacity: 0.7;\r
+    position:absolute;\r
+    z-index:99999;\r
+}\r
+.jqx-scheduler-selected-appointment {\r
+    border: 1px solid #316293 !important;\r
+  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) !important;\r
+     -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) !important;\r
+          box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) !important;\r
+    white-space:pre-line;\r
+}\r
+.jqx-scheduler-appointment:hover {\r
+   border: 1px solid #3f7ebe !important;\r
+ }\r
+.jqx-scheduler-feedback-drag-appointment {\r
+    background: #aaa !important;\r
+}\r
+.jqx-icon-recurrence, .jqx-icon-recurrence-exception,.jqx-icon-recurrence-white, .jqx-icon-recurrence-exception-white, .jqx-icon-time\r
+{\r
+    background-image: url('images/icon-recurrence.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    width: 16px;\r
+    height: 16px;\r
+    float: left;\r
+    margin:3px;\r
+    margin-left:5px;\r
+}\r
+.jqx-icon-time\r
+{\r
+    background-image: url('images/icon-time.png');\r
+    margin:0px;\r
+    position: relative;\r
+    left: 1px;\r
+    margin-top:-8px;\r
+}\r
+.jqx-icon-time-white\r
+{\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-icon-recurrence-exception\r
+{\r
+    background-image: url('images/icon-recurrence-exception.png');\r
+}\r
+.jqx-icon-recurrence-exception-white {\r
+    background-image: url('images/icon-recurrence-exception-white.png');\r
+}\r
+.jqx-icon-recurrence-white {\r
+   background-image: url('images/icon-recurrence-white.png');\r
+ }\r
+.jqx-scheduler-cell-hover {\r
+    border-color: #3f7ebe !important;\r
+    background: #a2c0df !important;\r
+}\r
+.jqx-scheduler-cell-selected {\r
+    border-color: #316293 !important;\r
+    background: #2f7eb6 !important;\r
+}\r
+.jqx-scheduler-edit-dialog-label {\r
+    clear: both;\r
+    float: left;\r
+    margin-left: 2%;\r
+    padding: 4px;\r
+    text-align: right;\r
+    width: 18%;\r
+    line-height: 25px;\r
+}\r
+.jqx-scheduler-edit-dialog-field {\r
+    clear: right;\r
+    float: right;\r
+    margin-right: 2%;\r
+    padding: 4px;\r
+    width: 72%;\r
+}\r
+.jqx-scheduler-legend-bar\r
+{\r
+    overflow:hidden;\r
+    border-color:inherit;\r
+    border: none;\r
+}\r
+.jqx-scheduler-legend-bar-bottom\r
+{\r
+    border-top-width: 1px;\r
+    border-top-style:solid;\r
+}\r
+.jqx-scheduler-legend-bar-top\r
+{\r
+    border-bottom-width: 1px;\r
+    border-bottom-style:solid;\r
+}\r
+.jqx-scheduler-legend {\r
+    width:14px;\r
+    height:14px;\r
+    float: left;\r
+    margin-right: 3px;\r
+    border-style:solid;\r
+    border-width:1px;\r
+    cursor: pointer;\r
+    vertical-align: middle;\r
+    margin-top:4px;\r
+}\r
+.jqx-scheduler-legend-label {\r
+    float: left;\r
+    margin-right: 12px;\r
+    cursor: pointer;\r
+    vertical-align: middle;\r
+    margin-top:4px;\r
+}\r
+.jqx-scheduler-cell-focus\r
+{\r
+    border-style:dotted;\r
+    border-color: #59a0d5 !important;\r
+    background: #59a0d5 !important;\r
+}\r
+/*applied to all widgets*/\r
+.jqx-widget{-moz-box-sizing: content-box; box-sizing: content-box; -ms-touch-action: none; zoom: 1 !important; color: #000000; -moz-background-clip: padding; background-clip: padding-box; -webkit-text-size-adjust: none; -ms-text-size-adjust: none; -webkit-appearance: none; -webkit-background-clip: padding-box; direction: ltr !important; -webkit-tap-highlight-color: rgba(0,0,0,0); font-family: Verdana,Arial,sans-serif; font-style: normal; font-size: 13px;}\r
+\r
+.jqx-item{-ms-touch-action: none; -moz-box-sizing: content-box; box-sizing: content-box;  color: inherit; -webkit-text-size-adjust: none;}\r
+\r
+/*applied to containers to set a background and border color. Tabs, NavigationBar, Calendar content.*/\r
+.jqx-widget-content {-moz-box-sizing: content-box; box-sizing: content-box; -ms-touch-action: none; -moz-background-clip: padding; -webkit-text-size-adjust: none; background-clip: padding-box; -webkit-background-clip: padding-box; -webkit-tap-highlight-color: rgba(0,0,0,0); font-family: Verdana,Arial,sans-serif; font-style: normal; font-size: 13px; border-color: #c7c7c7; background: #fff; }\r
+/*applied to header areas. Tabs, Menu, Window, Calendar.*/\r
+.jqx-widget-header {-moz-box-sizing: content-box; box-sizing: content-box; -ms-touch-action: none;-moz-background-clip: padding; -webkit-text-size-adjust: none; background-clip: padding-box; -webkit-background-clip: padding-box; -webkit-tap-highlight-color: rgba(0,0,0,0); border-color: #c5c5c5; background: #e8e8e8; }\r
+\r
+.jqx-fill-state-normal{-moz-box-sizing: content-box; box-sizing: content-box; -ms-touch-action: none;font-family: Verdana,Arial,sans-serif; font-style: normal; font-size: 13px; border-color:#aaa; background: #efefef; }\r
+.jqx-fill-state-hover {-moz-box-sizing: content-box; box-sizing: content-box; border-color:#999;  background: #e8e8e8;}\r
+.jqx-fill-state-pressed{-moz-box-sizing: content-box; box-sizing: content-box; border-color:#999; background: #d1d1d1;}\r
+.jqx-fill-state-focus {border-color: #555; }\r
+.jqx-fill-state-disabled {cursor: default; color: #000; opacity: .55; filter:Alpha(Opacity=45);}\r
+.jqx-fill-state-normal td, .jqx-fill-state-hover td, .jqx-fill-state-pressed td, .jqx-fill-state-disabled td, .jqx-fill-state-focus td, .jqx-widget td, .jqx-widget-content td, .jqx-widget-header td {\r
+    box-sizing: border-box; -moz-box-sizing: border-box; \r
+}\r
+.jqx-widget .jqx-grid-cell, .jqx-widget .jqx-grid-column-header, .jqx-widget .jqx-grid-group-cell {border-color: #aaa;}\r
+.jqx-widget .jqx-grid-column-menubutton, .jqx-widget .jqx-grid-column-sortascbutton, .jqx-widget .jqx-grid-column-sortdescbutton, .jqx-widget .jqx-grid-column-filterbutton\r
+{\r
+   background-color: transparent;\r
+   border-color: #aaa;\r
+}\r
+.jqx-grid-column-header a:link, .jqx-grid-column-header a:visited\r
+{\r
+   *color: expression(this.parentNode.currentStyle['color']);    \r
+}\r
+.jqx-grid-bottomright, .jqx-panel-bottomright, .jqx-listbox-bottomright\r
+{\r
+   background-color: #e5e5e5;\r
+}\r
+\r
+.jqx-tabs-title-selected-top\r
+{\r
+    border-color: #aaa;\r
+    border-bottom: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom\r
+{\r
+    border-color: #aaa;\r
+    border-top: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top\r
+{\r
+   border-color: #aaa;\r
+   border-bottom: 1px solid #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom\r
+{\r
+   border-color: #aaa;\r
+   border-top: 1px solid #fff;\r
+}\r
+/*jqxMaskedInput and jqxNumberInput Styles*/\r
+.jqx-input\r
+{\r
+    -webkit-appearance: none;\r
+    padding: 0 0 0 0;\r
+    outline: none;\r
+    border-width: 1px;\r
+    border-style: solid; \r
+    -moz-background-clip: padding; background-clip: padding-box; -webkit-background-clip: padding-box;\r
+}\r
+input[type=text].jqx-input, input[type=password].jqx-input {\r
+    min-height: 16px;\r
+    min-width: 16px;\r
+    margin: 0px;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    font-size: 13px;\r
+    padding: 0px;\r
+}\r
+.jqx-input::-ms-reveal {\r
+    display: none;\r
+}\r
+.jqx-input::-ms-clear {\r
+    display: none;\r
+}\r
+.jqx-input-content::-ms-clear {\r
+    display: none;\r
+}\r
+.jqx-input::-ms-value {\r
+    margin: 0px;\r
+    padding: 0px;\r
+    min-height: 13px;\r
+    line-height: 13px;\r
+}\r
+\r
+/*applied to the input when the validation fails.*/\r
+.jqx-input-invalid\r
+{\r
+    border-color: #dd4b39 !important;\r
+}\r
+\r
+/*applied to the input's content.*/\r
+.jqx-input-content\r
+{\r
+    -webkit-appearance: none;\r
+    padding: 1px;\r
+    resize: none;\r
+    outline: none;\r
+    outline-width: 0px;\r
+    -webkit-user-modify:inherit; -moz-user-modify:inherit;\r
+    -moz-background-clip: padding; background-clip: padding-box; -webkit-background-clip: padding-box;\r
+}\r
+/*applied to the input when it is disabled.*/\r
+.jqx-input-disabled\r
+{\r
+    -webkit-appearance: none;\r
+    resize: none;\r
+    outline: none;\r
+    outline-width: 0px;\r
+}\r
+/*applied to the list menu.*/\r
+.jqx-listmenu-widget {\r
+    -ms-touch-action: auto;\r
+}\r
+.jqx-listmenu-widget .jqx-widget-content{\r
+    -ms-touch-action: auto;\r
+}\r
+.jqx-listmenu-widget .jqx-widget-header{\r
+    -ms-touch-action: auto;\r
+}\r
+.jqx-listmenu-widget li{\r
+    -ms-touch-action: auto;\r
+}\r
+.jqx-menu-popup {\r
+   \r
+}\r
+.jqx-menu-vertical\r
+{\r
+    background-color: #efefef;\r
+}\r
+.jqx-color-picker\r
+{\r
\r
+}\r
+.jqx-color-picker-panel\r
+{\r
+}\r
+.jqx-color-picker-map\r
+{\r
+    border: 1px solid #A0A0A0;\r
+    background-color: transparent;\r
+    background-image: url('images/colorpicker/map-saturation.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left top;\r
+    overflow: hidden;\r
+}\r
+.jqx-color-picker-map-hue\r
+{\r
+    border: 1px solid #A0A0A0;\r
+    background-color: transparent;\r
+    background-image: url('images/colorpicker/map-hue.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left top;\r
+    overflow: hidden;\r
+}\r
+.jqx-color-picker-map-overlay\r
+{ \r
+    background-color: transparent;\r
+    background-image: url('images/colorpicker/map-saturation-overlay.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left top;\r
+}\r
+.jqx-color-picker-bar\r
+{\r
+    border: 1px solid #A0A0A0;\r
+    background-color: transparent;\r
+    background-image: url('images/colorpicker/bar-saturation.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left top;\r
+}\r
+.jqx-color-picker-bar-hue\r
+{\r
+    border: 1px solid #A0A0A0;\r
+    background-color: transparent;\r
+    background-image: url('images/colorpicker/bar-hue.png');\r
+    background-repeat: no-repeat;\r
+    background-position: left top;\r
+}\r
+.jqx-color-picker-preview\r
+{\r
+    border: 1px solid #A0A0A0;\r
+}\r
+.jqx-color-picker-pointer\r
+{\r
+    background-image: url('images/crosshair.png');\r
+    background-repeat: no-repeat;\r
+    height: 16px;\r
+    width: 16px;\r
+}\r
+.jqx-color-picker-pointer-alt\r
+{\r
+    background-image: url('images/crosshair-white.png');\r
+    background-repeat: no-repeat;\r
+    height: 16px;\r
+    width: 16px;\r
+}\r
+.jqx-color-picker-bar-pointer\r
+{\r
+    background-image: url('images/pointer.png');\r
+    background-repeat: no-repeat;\r
+    height: 15px;\r
+    margin-left: 6px;\r
+    background-position: right top;\r
+}\r
+.jqx-icon\r
+{\r
+    width: 16px;\r
+    height: 16px;\r
+    margin: 0 auto;\r
+    position: relative;\r
+    top: 50%; \r
+    margin-top: -8px;\r
+}\r
+.jqx-input-icon\r
+{\r
+    width: 13px;\r
+    height: 13px;\r
+    margin: 0 auto;\r
+}\r
+.jqx-scrollbar-thumb-state-normal-touch\r
+{\r
+    border-color:#c3c3c3;  background: #c3c3c3;\r
+}\r
+.jqx-touch, .jqx-touch .jqx-fill-state-normal, .jqx-touch .jqx-widget-content, .jqx-touch .jqx-widget-header, .jqx-touch a:link{}\r
+.jqx-scrollbar .jqx-icon-arrow-up{width: 100%; height: 100%;}\r
+.jqx-scrollbar .jqx-icon-arrow-down{width: 100%; height: 100%;}\r
+.jqx-scrollbar .jqx-icon-arrow-left{width: 100%; height: 100%;}\r
+.jqx-scrollbar .jqx-icon-arrow-right{width: 100%; height: 100%;}\r
+/*jqx-listmenu*/\r
+.jqx-listmenu-widget\r
+{\r
+    border-width: 1px;\r
+    border-style: solid;\r
+}\r
+ol.jqx-listmenu, ul.jqx-listmenu\r
+{\r
+    margin: 0;\r
+    padding: 0;\r
+    border: 0;\r
+    outline: 0;\r
+    font-size: 100%;\r
+    vertical-align: baseline;\r
+    line-height: 1;\r
+     counter-reset: section;\r
+}\r
+.jqx-listmenu li \r
+{\r
+   margin-left: 0px;\r
+   list-style: none;\r
+   line-height: 1;\r
+}\r
+.jqx-listmenu\r
+{\r
+    width: 100%;\r
+}\r
+.jqx-listmenu-header\r
+{\r
+    padding: 15px;\r
+}\r
+.jqx-listmenu-item \r
+{\r
+    cursor: pointer;\r
+    padding: 15px;\r
+    float: none;\r
+    overflow: hidden;\r
+    text-align: left;\r
+    position: relative;\r
+}\r
+\r
+.jqx-listmenu-separator\r
+{\r
+    padding: 10px;\r
+    counter-reset: section;\r
+}\r
+.jqx-listmenu-header-label\r
+{\r
+    margin-left: 30px;\r
+}\r
+.jqx-listmenu-arrow-right\r
+{\r
+    width: 16px;\r
+    height: 16px;\r
+    position: absolute;\r
+    top: 50%;\r
+    margin-top: -7px;\r
+    right: 7px;\r
+}\r
+.jqx-listmenu-arrow-rtl {\r
+    right: 0px;\r
+    left: 7px;\r
+}\r
+.jqx-listmenu-arrow-right-pressed\r
+{\r
+    width: 16px;\r
+    height: 16px;\r
+}\r
+.jqx-listmenu-header .jqx-button\r
+{\r
+    -moz-border-radius: 10px;\r
+    -webkit-border-radius: 10px;\r
+    -o-border-radius: 10px;\r
+    border-radius: 10px;\r
+    padding: 6px 10px;\r
+}\r
+.jqx-listmenu-filter-input\r
+{\r
+    -moz-border-radius: 3px;\r
+    -webkit-border-radius: 3px;\r
+    border-radius: 3px;\r
+    border: 1px solid;\r
+    outline: none;    \r
+    width: 97%;   \r
+    padding: 3px; \r
+    padding-left: 10px;\r
+    padding-right: 10px;\r
+    border-color: #c7c7c7;\r
+    background-color: #fff;\r
+    font-size: 20px;\r
+    min-height: 25px !important;\r
+    height: 25px;\r
+}\r
+.jqx-listmenu-filter\r
+{\r
+    text-align: center;\r
+    padding: 4px;\r
+}\r
+ol li .jqx-listmenu-item-label:before\r
+{\r
+  content: counter(section) ". ";\r
+  counter-increment: section;\r
+}\r
+.jqx-listmenu div\r
+{\r
+   clear: both; \r
+}\r
+.jqx-listmenu-auto-separator\r
+{\r
+}\r
+.jqx-listmenu-item-readonly\r
+{   \r
+    cursor: default;\r
+}\r
+.jqx-tooltip\r
+{\r
+    position: absolute;\r
+    width: auto;\r
+    height: auto;\r
+}\r
+.jqx-tooltip-main\r
+{\r
+    position: relative;\r
+    width: 100%;\r
+    height: 100%;\r
+    text-align: center;\r
+    filter: inherit;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+}\r
+.jqx-tooltip-text\r
+{\r
+    padding: 5px 8px;\r
+    overflow: hidden;\r
+    filter: inherit;\r
+}\r
+.jqx-tooltip, .jqx-tooltip-text, .jqx-tooltip-main {\r
+    -moz-border-radius: 5px;\r
+    -webkit-border-radius: 5px;\r
+    border-radius: 5px;\r
+    -moz-background-clip: padding; background-clip: padding-box; -webkit-background-clip: padding-box;   \r
+}\r
+.jqx-tooltip-arrow\r
+{\r
+    position: absolute;\r
+    width: 0px;\r
+    height: 0px;\r
+    display: block;\r
+    border-style: solid;\r
+    margin: -6px 0 0 -7px;\r
+    background: transparent !important;\r
+    filter: inherit;\r
+}\r
+.jqx-tooltip-arrow-t-b\r
+{\r
+    border-left-color: transparent !important;\r
+    border-right-color: transparent !important;\r
+}\r
+.jqx-tooltip-arrow-l-r\r
+{\r
+    border-top-color: transparent !important;\r
+    border-bottom-color: transparent !important;\r
+}\r
+/*Sets the text-alignment to right.*/\r
+.jqx-rtl{text-align: right !important;}\r
+.jqx-shadow{\r
+    -webkit-box-shadow: 0 2px 3px rgba(0,0,0,.15)!important;\r
+    -moz-box-shadow   : 0 2px 3px rgba(0,0,0,.15)!important;\r
+    -o-box-shadow     : 0 2px 3px rgba(0,0,0,.15)!important;\r
+    box-shadow        : 0 2px 3px rgba(0,0,0,.15)!important;\r
+}\r
+.jqx-noshadow {\r
+    -webkit-box-shadow: none !important;\r
+    -moz-box-shadow   : none !important;\r
+    -o-box-shadow     : none !important;\r
+    box-shadow        : none !important;\r
+}\r
+.jqx-passwordinput-password-icon, .jqx-passwordinput-password-icon-rtl\r
+{\r
+    background-image: url(images/icon-showpassword.png) !important;\r
+    background-repeat: no-repeat !important;\r
+    width: 14px;\r
+    height: 9px;\r
+}\r
+.jqx-passwordinput-password-icon-ltr\r
+{\r
+    background-position: right !important;\r
+}\r
+.jqx-passwordinput-password-icon-rtl\r
+{\r
+    background-position: left !important;\r
+}\r
+.jqx-passwordinput-password-strength-inicator\r
+{\r
+    width: 20%;\r
+    height: 5px;\r
+    margin-top: 5px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-expanded\r
+{\r
+    -moz-border-radius-topleft: 0px !important;\r
+    -webkit-border-top-left-radius: 0px !important;\r
+    border-top-left-radius: 0px !important;\r
+    -moz-border-radius-topright: 0px !important;\r
+    -webkit-border-top-right-radius: 0px !important;\r
+    border-top-right-radius: 0px !important;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-expanded\r
+{\r
+    -moz-border-radius-bottomleft: 0px !important;\r
+    -webkit-border-bottom-left-radius: 0px !important;\r
+    border-bottom-left-radius: 0px !important;\r
+    -moz-border-radius-bottomright: 0px !important;\r
+    -webkit-border-bottom-right-radius: 0px !important;\r
+    border-bottom-right-radius: 0px !important;\r
+}\r
+.jqx-treemap-rectangle {\r
+    font-size: 13px;\r
+    font-weight: normal;\r
+    border: 1px solid #555;\r
+    color: #222;\r
+    text-shadow: 0px 0px 0px;\r
+    overflow: hidden;\r
+    text-overflow: ellipsis;\r
+}\r
+.jqx-treemap-label {\r
+    text-overflow: ellipsis;\r
+    overflow: hidden;\r
+}\r
+.jqx-treemap-rectangle-parent {\r
+    color: #222;\r
+    font-size: 15px;\r
+    font-family: Verdana;\r
+    font-weight: bold;\r
+}\r
+.jqx-treemap-legend-label {\r
+    color: #fff;\r
+}\r
+.jqx-treemap-legend {\r
+    width: 350px;\r
+    background-color: rgba(0, 0, 0, 0.1);\r
+    z-index: 41;\r
+    overflow: hidden;\r
+}\r
+.jqx-treemap-legend-table {\r
+    table-layout: fixed;\r
+    width: 100%;\r
+}\r
+.jqx-treemap-legend-color {\r
+    height: 3px;\r
+}\r
+.jqx-treemap-legend-values {\r
+    height: 12px;\r
+    width: 100%;\r
+}\r
+.jqx-treemap-legend-value {\r
+    font-size: 9px;\r
+    position: absolute;\r
+    color: #fff;\r
+}\r
+.jqx-treemap-rectangle-hover {\r
+    -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);\r
+    -moz-box-shadow:    0px 0px 5px rgba(0, 0, 0, 0.5);\r
+    box-shadow:         0px 0px 5px rgba(0, 0, 0, 0.5);\r
+    z-index: 40;\r
+}\r
+/*jqxRangeSelector*/\r
+.jqx-rangeselector, .jqx-rangeselector-content, .jqx-rangeselector-slider, .jqx-rangeselector-markers,\r
+.jqx-rangeselector-ticks-container, .jqx-rangeselector-ticks, .jqx-rangeselector-shutter\r
+{\r
+    box-shadow: none !important;\r
+    -webkit-box-shadow: none !important;\r
+    -moz-box-shadow: none !important;\r
+    box-sizing: content-box !important;\r
+}\r
+.jqx-rangeselector-markers {\r
+    \r
+}\r
+.jqx-rangeselector-content, .jqx-rangeselector-ticks, .jqx-rangeselector-labels, .jqx-rangeselector-shutter, .jqx-rangeselector-markers, .jqx-rangeselector-marker-arrow\r
+{\r
+    position: absolute;\r
+}\r
+.jqx-rangeselector-ticks-container, .jqx-rangeselector-ticks, .jqx-rangeselector-shutter, .jqx-rangeselector-slider\r
+{\r
+    height: 100%;\r
+}\r
+.jqx-rangeselector-ticks-container, .jqx-rangeselector-slider\r
+{\r
+    width: 100%;\r
+    box-shadow: none !important;\r
+    -webkit-box-shadow: none !important;\r
+    -moz-box-shadow: none !important;\r
+    -moz-border-radius: 0px !important;\r
+    -webkit-border-radius: 0px !important;\r
+    border-radius: 0px !important;\r
+}\r
+.jqx-rangeselector-group-labels-rtl, .jqx-rangeselector-group-labels-ticks, .jqx-rangeselector-slider\r
+{\r
+    float: left;\r
+}\r
+.jqx-rangeselector-slider, .jqx-rangeselector-markers, .jqx-rangeselector-marker-arrow\r
+{\r
+    border-style: solid;\r
+}\r
+.jqx-rangeselector-ticks, .jqx-rangeselector-group-labels-ticks\r
+{\r
+    width: 1px;\r
+    background: #aaa;\r
+}\r
+.jqx-rangeselector-labels, .jqx-rangeselector-markers\r
+{\r
+    white-space: nowrap;\r
+    width: auto;\r
+}\r
+.jqx-rangeselector-slider, .jqx-rangeselector-markers\r
+{\r
+    border-width: 1px !important;\r
+}\r
+.jqx-rangeselector-ticks-container\r
+{\r
+    background-color: transparent;\r
+    position: relative;\r
+}\r
+.jqx-rangeselector-shutter\r
+{\r
+    opacity: 0.75;\r
+    background: #efefef;\r
+    border-width: 0px !important;\r
+}\r
+.jqx-rangeselector-slider\r
+{\r
+    background-color: transparent !important;\r
+    border-top: none  !important;\r
+    background-image: none !important;\r
+    border-bottom: none !important;\r
+    border-color: #aaa;\r
+    border-right-color: transparent !important;\r
+    position: relative;\r
+    overflow: hidden;\r
+}\r
+.jqx-rangeselector-inner-slider\r
+{\r
+    position: absolute;\r
+    right: 0;\r
+    background: #aaa;\r
+    width: 1px;\r
+    height: 100%;\r
+}\r
+.jqx-rangeselector-ticks\r
+{\r
+    margin-top: 0px;\r
+}\r
+.jqx-rangeselector-labels, .jqx-rangeselector-group-labels\r
+{\r
+    margin-top: 4px;\r
+}\r
+.jqx-rangeselector-markers\r
+{\r
+    height: 20px;\r
+    padding: 5px;\r
+    opacity: 0.75;\r
+}\r
+.jqx-rangeselector-marker-arrow\r
+{\r
+    width: 0px;\r
+    height: 0px;\r
+    display: block;\r
+    margin: -6px 0 0 -7px;\r
+    background-color: transparent !important;\r
+    filter: inherit;\r
+    border-top-width: 5px;\r
+    border-bottom-width: 5px;\r
+    border-right-color: transparent !important;\r
+    border-left-color: transparent !important;\r
+    background-clip: border-box;\r
+    background-repeat: repeat;\r
+    box-shadow: none !important;\r
+    -webkit-box-shadow: none !important;\r
+    background-image: none !important;\r
+}\r
+.jqx-rangeselector-marker-arrow-top {\r
+    border-bottom-color: transparent !important; \r
+}\r
+.jqx-rangeselector-marker-arrow-bottom {\r
+    border-top-color: transparent !important; \r
+}\r
+.jqx-rangeselector-marker-left-arrow\r
+{\r
+    border-right-width: 0px;\r
+    border-left-width: 5px;\r
+}\r
+.jqx-rangeselector-marker-right-arrow\r
+{\r
+    border-right-width: 5px;\r
+    border-left-width: 0px;\r
+}\r
+.jqx-rangeselector-markers-value\r
+{\r
+    overflow: hidden;\r
+    white-space: nowrap;\r
+}\r
+.jqx-rangeselector-group-labels-rtl\r
+{\r
+    margin-right: 10px;\r
+    direction: rtl;\r
+}\r
+.jqx-rangeselector-group-labels-ticks\r
+{\r
+    height: 17px;\r
+}\r
+.jqx-rangeselector-group-labels-ticks-rtl\r
+{\r
+    margin-left: 5px;\r
+}\r
+.jqx-action-button {\r
+    border: none;\r
+    border-left: 1px solid #c7c7c7; \r
+}\r
+.jqx-action-button-rtl {\r
+    border: none;\r
+    border-right: 1px solid #c7c7c7;     \r
+    cursor: pointer;\r
+}\r
+/*jqxBulletChart*/\r
+.jqx-bulletchart\r
+{\r
+}\r
+.jqx-bulletchart, .jqx-bulletchart-title-container-horizontal, .jqx-bulletchart-title-container-vertical, .jqx-bulletchart-chart-container-horizontal, .jqx-bulletchart-chart-container-vertical\r
+{\r
+    position: relative;\r
+}\r
+.jqx-bulletchart-title-inner-container, .jqx-bulletchart-range, .jqx-bulletchart-pointer, .jqx-bulletchart-target, .jqx-bulletchart-ticks, .jqx-bulletchart-labels\r
+{\r
+    position: absolute;\r
+}\r
+.jqx-bulletchart-title-container-vertical, .jqx-bulletchart-title, .jqx-bulletchart-description, .jqx-bulletchart-range-vertical\r
+{\r
+    width: 100%;\r
+}\r
+.jqx-bulletchart-title-container-horizontal, .jqx-bulletchart-chart-container-horizontal\r
+{\r
+    float: left;\r
+    overflow: hidden;\r
+}\r
+.jqx-bulletchart-title, .jqx-bulletchart-description\r
+{\r
+    text-align: center;\r
+}\r
+.jqx-bulletchart-title-inner-container\r
+{\r
+    margin: auto;\r
+    top: 0;\r
+    left: 0;\r
+    right: 0;\r
+    bottom: 0;\r
+}\r
+.jqx-bulletchart-title-inner-container-ltr\r
+{\r
+    padding-right: 5px;\r
+}\r
+.jqx-bulletchart-title-inner-container-rtl\r
+{\r
+    padding-left: 5px;\r
+}\r
+.jqx-bulletchart-title-description-ltr\r
+{\r
+    text-align: right;\r
+}\r
+.jqx-bulletchart-title-description-rtl\r
+{\r
+    text-align: left;\r
+}\r
+.jqx-bulletchart-title-description-vertical\r
+{\r
+    text-align: center;\r
+}\r
+.jqx-bulletchart-title\r
+{\r
+    font-size: 110%;\r
+    font-weight: bold;\r
+}\r
+.jqx-bulletchart-description\r
+{\r
+    font-size: 90%;\r
+}\r
+.jqx-bulletchart-range-horizontal\r
+{\r
+    height: 100%;\r
+}\r
+.jqx-bulletchart-target-horizontal\r
+{\r
+    top: 10%;\r
+    height: 80%;\r
+}\r
+.jqx-bulletchart-target-vertical\r
+{\r
+    left: 10%;\r
+    width: 80%;\r
+}\r
+.jqx-bulletchart-ticks\r
+{\r
+    background-color: #AAAAAA;\r
+}\r
+.jqx-bulletchart-ticks-horizontal\r
+{\r
+    width: 1px;\r
+}\r
+.jqx-bulletchart-ticks-vertical\r
+{\r
+    height: 1px;\r
+}\r
+.jqx-bulletchart-zero-tick\r
+{\r
+}\r
+.jqx-bulletchart-labels\r
+{\r
+}\r
+/*jqxNotification*/\r
+.jqx-notification\r
+{\r
+    padding: 10px;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    box-sizing: border-box;\r
+    pointer-events: auto;\r
+}\r
+.jqx-notification-table\r
+{\r
+    width: 100%;\r
+    font-size: inherit; \r
+    font-weight: inherit; \r
+    font-style: inherit;\r
+    color:inherit;\r
+}\r
+.jqx-notification-container\r
+{\r
+    position: fixed;\r
+    height: auto;\r
+    width: auto;\r
+    pointer-events: none;\r
+}\r
+.jqx-notification-container-full-width\r
+{\r
+    width: 100%;\r
+}\r
+.jqx-notification-container-full-height\r
+{\r
+    height: 100%;\r
+}\r
+#jqxNotificationDefaultContainer-top-right, #jqxNotificationDefaultContainer-bottom-left\r
+{\r
+    direction: rtl;\r
+}\r
+.jqx-notification-icon, .jqx-notification-content\r
+{\r
+    vertical-align: middle;\r
+}\r
+.jqx-notification-content\r
+{\r
+}\r
+.jqx-notification-content-rtl\r
+{\r
+    direction: rtl;\r
+}\r
+.jqx-link, .jqx-inverse, .jqx-primary, .jqx-warning, .jqx-danger, .jqx-success, .jqx-info {\r
+    background: none !important;\r
+    box-shadow: none !important;\r
+    text-shadow: none !important;\r
+}\r
+.jqx-notification-info, .jqx-info\r
+{\r
+  color: #ffffff  !important;\r
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25)  !important;\r
+  background-color: #49afcd  !important;\r
+  *background-color: #2f96b4  !important;\r
+  background-repeat: repeat-x  !important;\r
+    background-image: linear-gradient(to bottom, #5bc0de, #2f96b4)  !important;\r
+    border-left-color: #2f96b4 !important;\r
+    border-right-color: #2f96b4 !important;\r
+    border-top-color: #2f96b4 !important;\r
+    border-bottom-color: #1f6377 !important;\r
+}\r
+.jqx-info:hover,\r
+.jqx-info:focus,\r
+.jqx-info:active,\r
+.jqx-info.active,\r
+.jqx-info.disabled,\r
+.jqx-info[disabled] {\r
+  color: #ffffff  !important;\r
+  background-color: #2f96b4  !important;\r
+  *background-color: #2a85a0  !important;\r
+}\r
+\r
+.jqx-fill-state-pressed.jqx-info,\r
+.jqx-info:active,\r
+.jqx-info.active {\r
+   background-color: #24748c \9  !important;\r
+   background-image: linear-gradient(to bottom, #5bc0de, #24748c)  !important;\r
+}\r
+.jqx-notification-warning, .jqx-warning\r
+{\r
+  color: #ffffff  !important;\r
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25)  !important;\r
+  background-color: #faa732  !important;\r
+  *background-color: #f89406  !important;\r
+  background-repeat: repeat-x  !important;\r
+    background-image: linear-gradient(to bottom, #fbb450, #f89406)  !important;\r
+    border-left-color: #f89406 !important;\r
+    border-right-color: #f89406 !important;\r
+    border-top-color: #f89406 !important;\r
+    border-bottom-color: #ad6704 !important;\r
+}\r
+.jqx-warning:hover,\r
+.jqx-warning:focus,\r
+.jqx-warning:active,\r
+.jqx-warning.active,\r
+.jqx-warning.disabled,\r
+.jqx-warning[disabled] {\r
+  color: #ffffff  !important;\r
+  background-color: #f89406  !important;\r
+  *background-color: #df8505  !important;\r
+}\r
+\r
+.jqx-fill-state-pressed.jqx-warning,\r
+.jqx-warning:active,\r
+.jqx-warning.active {\r
+  background-color: #c67605 \9  !important;\r
+  background-image: linear-gradient(to bottom, #fbb450, #c67605)  !important;\r
+}\r
+.jqx-notification-success, .jqx-success\r
+{\r
+  color: #ffffff  !important;\r
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25)  !important;\r
+  background-color: #5bb75b  !important;\r
+  *background-color: #51a351  !important;\r
+  background-repeat: repeat-x  !important;\r
+    background-image: linear-gradient(to bottom, #62c462, #51a351)  !important;\r
+    border-left-color: #51a351 !important;\r
+    border-right-color: #51a351 !important;\r
+    border-top-color: #51a351 !important;\r
+    border-bottom-color: #387038 !important;\r
+}\r
+.jqx-success:hover,\r
+.jqx-success:focus,\r
+.jqx-success:active,\r
+.jqx-success.active,\r
+.jqx-success.disabled,\r
+.jqx-success[disabled] {\r
+  color: #ffffff  !important;\r
+  background-color: #51a351  !important;\r
+  *background-color: #499249  !important;\r
+}\r
+.jqx-fill-state-pressed.jqx-success,\r
+.jqx-success:active,\r
+.jqx-success.active {\r
+  background-color: #408140  !important;\r
+  background-image: linear-gradient(to bottom, #62c462, #408140)  !important;\r
+}\r
+.jqx-notification-error, .jqx-danger\r
+{\r
+  color: #ffffff  !important;\r
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25)  !important;\r
+  background-color: #da4f49  !important;\r
+  *background-color: #bd362f  !important;\r
+  background-repeat: repeat-x  !important;\r
+    background-image: linear-gradient(to bottom, #ee5f5b, #bd362f)  !important;\r
+    border-left-color: #bd362f !important;\r
+    border-right-color: #bd362f !important;\r
+    border-top-color: #bd362f !important;\r
+    border-bottom-color: #802420 !important;\r
+}\r
+.jqx-danger:hover,\r
+.jqx-danger:focus,\r
+.jqx-danger:active,\r
+.jqx-danger.active,\r
+.jqx-danger.disabled,\r
+.jqx-danger[disabled] {\r
+  color: #ffffff  !important;\r
+  background-color: #bd362f  !important;\r
+  *background-color: #a9302a  !important;\r
+}\r
+\r
+.jqx-fill-state-pressed.jqx-danger, .jqx-danger:active,\r
+.jqx-danger.active {\r
+  background-color: #942a25 !important;\r
+  background-image: linear-gradient(to bottom, #ee5f5b, #942a25)  !important;\r
+}\r
+.jqx-notification-mail, .jqx-primary\r
+{\r
+  color: #ffffff  !important;\r
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25)  !important;\r
+  background-color: #006dcc  !important;\r
+  *background-color: #0044cc  !important;\r
+  background-repeat: repeat-x  !important;\r
+    background-image: linear-gradient(to bottom, #0088cc, #0044cc)  !important;\r
+    border-left-color: #0044cc !important;\r
+    border-right-color: #0044cc !important;\r
+    border-top-color: #0044cc !important;\r
+    border-bottom-color: #002a80 !important;\r
+}\r
+.jqx-primary:hover,\r
+.jqx-primary:focus,\r
+.jqx-primary:active,\r
+.jqx-primary.active,\r
+.jqx-primary.disabled,\r
+.jqx-primary[disabled] {\r
+  color: #ffffff  !important;\r
+  background-color: #0044cc  !important;\r
+  *background-color: #003bb3  !important;\r
+}\r
+\r
+.jqx-fill-state-pressed.jqx-primary,\r
+.jqx-primary:active,\r
+.jqx-primary.active {\r
+  background-color: #003399 !important;\r
+  background-image: linear-gradient(to bottom, #0088cc, #003399)  !important;\r
+}\r
+.jqx-notification-time, .jqx-inverse\r
+{\r
+  color: #ffffff  !important;\r
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25)  !important;\r
+  background-color: #363636  !important;\r
+  *background-color: #222222  !important;\r
+  background-repeat: repeat-x  !important;\r
+    background-image: linear-gradient(to bottom, #444444, #222222)  !important;\r
+    border-left-color: #222222 !important;\r
+    border-right-color: #222222 !important;\r
+    border-top-color: #222222 !important;\r
+    border-bottom-color: #000000 !important;\r
+}\r
+.jqx-inverse:hover,\r
+.jqx-inverse:focus,\r
+.jqx-inverse:active,\r
+.jqx-inverse.active,\r
+.jqx-inverse.disabled,\r
+.jqx-inverse[disabled] {\r
+  color: #ffffff  !important;\r
+  background-color: #222222  !important;\r
+  *background-color: #151515  !important;\r
+}\r
+\r
+.jqx-fill-state-pressed.jqx-inverse,\r
+.jqx-inverse:active,\r
+.jqx-inverse.active {\r
+  background-color: #080808  !important;\r
+  background-image: linear-gradient(to bottom, #444444, #080808)  !important;\r
+}\r
+.jqx-link,\r
+.jqx-link:active,\r
+.jqx-link[disabled] {\r
+  background-color: transparent !important;\r
+  background-image: none !important;\r
+  -webkit-box-shadow: none !important;\r
+     -moz-box-shadow: none !important;\r
+          box-shadow: none !important;\r
+}\r
+\r
+.jqx-link {\r
+  color: #0088cc !important;\r
+  cursor: pointer !important;\r
+  border-color: transparent !important;\r
+  -webkit-border-radius: 0 !important;\r
+     -moz-border-radius: 0 !important;\r
+          border-radius: 0 !important;\r
+}\r
+\r
+.jqx-link:hover,\r
+.jqx-link:focus {\r
+  color: #005580 !important;\r
+  text-decoration: underline !important;\r
+  background-color: transparent !important;\r
+}\r
+\r
+.jqx-link[disabled]:hover,\r
+.jqx-link[disabled]:focus {\r
+  color: #333333 !important;\r
+  text-decoration: none !important;\r
+}\r
+.jqx-link:focus, .jqx-inverse:focus, .jqx-primary:focus, .jqx-warning:focus, .jqx-danger:focus, .jqx-success:focus, .jqx-info:focus,\r
+.jqx-link:hover, .jqx-inverse:hover, .jqx-primary:hover, .jqx-warning:hover, .jqx-danger:hover, .jqx-success:hover, .jqx-info:hover {\r
+  background-position: 0 -15px !important;\r
+  -webkit-transition: background-position 0.1s linear !important;\r
+     -moz-transition: background-position 0.1s linear !important;\r
+       -o-transition: background-position 0.1s linear !important;\r
+          transition: background-position 0.1s linear !important;\r
+}\r
+.jqx-link:active, .jqx-inverse:active, .jqx-primary:active, .jqx-warning:active, .jqx-danger:active, .jqx-success:active, .jqx-info:active {\r
+  background-image: none !important;\r
+  outline: 0 !important;\r
+  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) !important;\r
+     -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) !important;\r
+          box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05) !important;\r
+}\r
+.jqx-notification-icon\r
+{\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-notification-icon-ltr\r
+{\r
+    background-position: left center;\r
+}\r
+.jqx-notification-icon-rtl\r
+{\r
+    background-position: right center;\r
+}\r
+.jqx-notification-icon-info, .jqx-notification-icon-warning, .jqx-notification-icon-success, .jqx-notification-icon-error, .jqx-notification-icon-mail, .jqx-notification-icon-time\r
+{\r
+    width: 30px;\r
+    height: 25px;\r
+}\r
+.jqx-notification-icon-info\r
+{\r
+    background-image: url('images/info.png');\r
+}\r
+.jqx-notification-icon-warning\r
+{\r
+    background-image: url('images/warning.png');\r
+}\r
+.jqx-notification-icon-success\r
+{\r
+    background-image: url('images/success.png');\r
+}\r
+.jqx-notification-icon-error\r
+{\r
+    background-image: url('images/error.png');\r
+}\r
+.jqx-notification-icon-mail\r
+{\r
+    background-image: url('images/mail.png');\r
+}\r
+.jqx-notification-icon-time\r
+{\r
+    background-image: url('images/time.png');\r
+}\r
+.jqx-notification-close-button-info, .jqx-notification-close-button-success, .jqx-notification-close-button-mail, .jqx-notification-close-button-time, .jqx-notification-close-button-error\r
+{\r
+    background-image: url('images/close_white.png');\r
+}\r
+.jqx-notification-close-button-warning\r
+{\r
+    background-image: url('images/close_black.png');\r
+}\r
+.jqx-notification-close-button-container, .jqx-notification-close-button\r
+{\r
+    width: 16px;\r
+    height: 16px;\r
+}\r
+.jqx-notification-close-button-container\r
+{\r
+    vertical-align: top;\r
+}\r
+.jqx-notification-close-button\r
+{\r
+    position: relative;\r
+    top: -11px;\r
+    background-repeat: no-repeat;\r
+    cursor: pointer;\r
+}\r
+.jqx-notification-close-button-ltr\r
+{\r
+    right: -11px;\r
+    background-position: right top;\r
+}\r
+.jqx-notification-close-button-rtl\r
+{\r
+    left: -11px;\r
+    background-position: left top;\r
+}\r
+.jqx-navbar {\r
+       width: 100%;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+}\r
+.jqx-navbar ul:before,\r
+.jqx-navbar ul:after {\r
+       content: "";\r
+       display: table;\r
+}\r
+.jqx-navbar ul:after {\r
+       clear: both;\r
+}\r
+.jqx-navbar ul {\r
+       list-style: none;\r
+       margin: 0;\r
+       padding: 0;\r
+       position: relative;\r
+       display: block;\r
+       border: 0;\r
+       max-width: 100%;\r
+       overflow: visible;\r
+}\r
+.jqx-navbar-block {\r
+    margin: 0;\r
+       padding: 0px 12px;\r
+       border-width:0px;\r
+       float: left;\r
+       min-height: 1px;\r
+       -webkit-box-sizing: border-box;\r
+       -moz-box-sizing: border-box;\r
+       box-sizing: border-box;\r
+    box-shadow: none !important;\r
+    border-radius: 0px !important;\r
+}\r
+.jqx-navbar-block-rtl {\r
+    float:right;\r
+}\r
+.jqx-ribbon\r
+{\r
+    position: relative;\r
+    overflow: hidden;\r
+}\r
+.jqx-ribbon-auto\r
+{\r
+    display: inline-block;\r
+}\r
+.jqx-ribbon-popup\r
+{\r
+    overflow: visible;\r
+}\r
+.jqx-ribbon-header\r
+{\r
+    position: absolute;\r
+    margin: 0;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    box-sizing: border-box;\r
+    overflow: hidden;\r
+    float: left;\r
+    display: block;\r
+    box-shadow: none !important;\r
+}\r
+.jqx-ribbon-header-auto\r
+{\r
+    position: relative;\r
+}\r
+.jqx-ribbon-header-horizontal\r
+{\r
+    width: 100%;\r
+    min-height: 30px;\r
+    padding: 0px;\r
+    white-space: nowrap;\r
+}\r
+.jqx-ribbon-header-bottom\r
+{\r
+    bottom: 0;\r
+}\r
+.jqx-ribbon-header-vertical\r
+{\r
+    min-width: 75px;\r
+    height: 100%;\r
+    float: left;\r
+    padding: 0px;\r
+}\r
+.jqx-ribbon-header-right\r
+{\r
+    right: 0;\r
+}\r
+.jqx-ribbon-header-horizontal-popup, .jqx-ribbon-header-vertical-popup\r
+{\r
+    position: relative;\r
+}\r
+.jqx-ribbon-header-horizontal-popup\r
+{\r
+   height:100%;\r
+}\r
+.jqx-ribbon-header-vertical-popup\r
+{\r
+    width: 100%;\r
+}\r
+.jqx-ribbon-item\r
+{\r
+    position: relative;\r
+    list-style-type: none;\r
+    padding: 5px;\r
+    border: 1px solid transparent;\r
+    box-sizing: border-box;\r
+    text-overflow: ellipsis;\r
+    cursor: default;\r
+    min-width: 10px;\r
+    vertical-align: top;\r
+}\r
+.jqx-ribbon-item-top, .jqx-ribbon-item-bottom\r
+{\r
+    height: 100%;\r
+    display: inline-block;\r
+    margin-left: 1px;\r
+    margin-right: 1px;\r
+}\r
+.jqx-ribbon-item-top\r
+{\r
+    margin-top: 1px;\r
+}\r
+.jqx-ribbon-item-bottom\r
+{\r
+    margin-top: -1px;\r
+}\r
+.jqx-ribbon-item-left, .jqx-ribbon-item-right\r
+{\r
+    width: 100%;\r
+    margin-top: 2px;\r
+}\r
+.jqx-ribbon-item-left\r
+{\r
+    margin-left: 1px;\r
+}\r
+.jqx-ribbon-item-right\r
+{\r
+    margin-left: -1px;\r
+}\r
+.jqx-ribbon-item-hover\r
+{\r
+    border-color: inherit;\r
+}\r
+.jqx-ribbon-item-top.jqx-ribbon-item-hover\r
+{\r
+    border-bottom-color: inherit !important;\r
+}\r
+.jqx-ribbon-item-bottom.jqx-ribbon-item-hover\r
+{\r
+    border-top-color: inherit !important;\r
+}\r
+.jqx-ribbon-item-left.jqx-ribbon-item-hover\r
+{\r
+    border-right-color: inherit !important;\r
+}\r
+.jqx-ribbon-item-right.jqx-ribbon-item-hover\r
+{\r
+    border-left-color: inherit !important;\r
+}\r
+.jqx-ribbon-item-selected\r
+{\r
+    border-color: inherit;\r
+}\r
+.jqx-ribbon-item-top.jqx-ribbon-item-selected\r
+{\r
+    border-bottom-color: transparent;\r
+}\r
+.jqx-ribbon-item-bottom.jqx-ribbon-item-selected\r
+{\r
+    border-top-color: transparent;\r
+}\r
+.jqx-ribbon-item-left.jqx-ribbon-item-selected\r
+{\r
+    border-right-color: transparent;\r
+}\r
+.jqx-ribbon-item-right.jqx-ribbon-item-selected\r
+{\r
+    border-left-color:transparent;\r
+}\r
+.jqx-ribbon-content\r
+{\r
+    background-image: none !important;\r
+    background-color: transparent !important;\r
+    box-sizing: border-box;\r
+}\r
+.jqx-ribbon-content-horizontal\r
+{\r
+    clear: both;\r
+    height: 100%;\r
+}\r
+.jqx-ribbon-content-vertical\r
+{\r
+    height: 100%;\r
+    width: 100%;\r
+    float: left;\r
+    border-width: 1px;\r
+}\r
+.jqx-ribbon-content-popup\r
+{\r
+    z-index:99999;\r
+    position: absolute;\r
+    border-left: none;\r
+}\r
+.jqx-ribbon-content-popup.jqx-ribbon-content-horizontal\r
+{\r
+    width: 100%;\r
+    height: auto;\r
+}\r
+.jqx-ribbon-content-popup.jqx-ribbon-content-vertical\r
+{\r
+    width: auto;\r
+    height: 100%;\r
+}\r
+.jqx-ribbon-content-popup-top {\r
+    -webkit-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+}\r
+.jqx-ribbon-content-popup-bottom {\r
+    -webkit-box-shadow: 0 -6px 15px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 -6px 15px rgba(0, 0, 0, 0.15);\r
+    box-shadow: 0 -6px 15px rgba(0, 0, 0, 0.15);\r
+}\r
+.jqx-ribbon-content-popup-left {\r
+    -webkit-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+}\r
+.jqx-ribbon-content-popup-right {\r
+    -webkit-box-shadow: -6px 6px 15px 0 rgba(0,0,0,0.15);\r
+    box-shadow: -6px 6px 15px 0 rgba(0,0,0,0.15);\r
+}\r
+\r
+.jqx-ribbon-content-auto-width\r
+{\r
+    width: auto;\r
+}\r
+.jqx-ribbon-content-section\r
+{\r
+    width: 100%;\r
+    height: 100%;\r
+    display: none;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    box-sizing: inherit;\r
+    overflow: auto;\r
+}\r
+.jqx-ribbon-content-section-top\r
+{\r
+    border-top: none;\r
+}\r
+.jqx-ribbon-content-section-bottom\r
+{\r
+    bottom: 0;\r
+    border-bottom: none;\r
+}\r
+.jqx-ribbon-content-section-left\r
+{\r
+    border-left: none;\r
+}\r
+.jqx-ribbon-content-section-right\r
+{\r
+    border-right: none;\r
+    right: 0;\r
+}\r
+.jqx-ribbon-content-section-popup\r
+{\r
+    position: relative;\r
+}\r
+.jqx-ribbon-content-section-horizontal-popup\r
+{\r
+    height: auto;\r
+}\r
+.jqx-ribbon-content-section-vertical-popup\r
+{\r
+    width: auto;\r
+}\r
+.jqx-ribbon-header-rtl\r
+{\r
+    text-align: right;\r
+}\r
+.jqx-ribbon-header-horizontal.jqx-ribbon-header-rtl\r
+{\r
+    direction: rtl;\r
+}\r
+.jqx-ribbon-item-rtl\r
+{\r
+    direction: rtl;\r
+}\r
+.jqx-ribbon-scrollbutton\r
+{\r
+    position: absolute;\r
+    display: none;\r
+    box-sizing: border-box;\r
+    cursor: pointer;\r
+    background-repeat: no-repeat !important;\r
+    background-position: center !important;\r
+    z-index: 1000;\r
+}\r
+.jqx-ribbon-scrollbutton-top, .jqx-ribbon-scrollbutton-bottom\r
+{\r
+    width: 17px;\r
+}\r
+.jqx-ribbon-scrollbutton-left, .jqx-ribbon-scrollbutton-right\r
+{\r
+    height: 17px;\r
+}\r
+.jqx-ribbon-scrollbutton-top\r
+{\r
+    top: 1px;\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-bottom\r
+{\r
+    bottom: 1px;\r
+    border-top-width: 1px;\r
+    border-top-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-left\r
+{\r
+    left: 1px;\r
+    border-right-width: 1px;\r
+    border-right-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-right\r
+{\r
+    right: 1px;\r
+    border-left-width: 1px;\r
+    border-left-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-top.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-top.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-near, .jqx-ribbon-scrollbutton-bottom.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-bottom.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-near\r
+{\r
+    left: 1px;\r
+    border-right-width: 1px;\r
+    border-right-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-top.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-far, .jqx-ribbon-scrollbutton-bottom.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-far\r
+{\r
+    right: 18px;\r
+    border-left-width: 1px;\r
+    border-left-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-top.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-top.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-far, .jqx-ribbon-scrollbutton-bottom.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-bottom.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-far\r
+{\r
+    right: 1px;\r
+    border-left-width: 1px;\r
+    border-left-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-top.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-near, .jqx-ribbon-scrollbutton-bottom.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-near\r
+{\r
+    left: 18px;\r
+    border-right-width: 1px;\r
+    border-right-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-left.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-left.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-near, .jqx-ribbon-scrollbutton-right.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-right.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-near\r
+{\r
+    top: 1px;\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-left.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-far, .jqx-ribbon-scrollbutton-right.jqx-ribbon-scrollbutton-lt.jqx-ribbon-scrollbutton-far\r
+{\r
+    bottom: 18px;\r
+    border-top-width: 1px;\r
+    border-top-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-left.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-left.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-far, .jqx-ribbon-scrollbutton-right.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-both, .jqx-ribbon-scrollbutton-right.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-far\r
+{\r
+    bottom: 1px;\r
+    border-top-width: 1px;\r
+    border-top-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-left.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-near, .jqx-ribbon-scrollbutton-right.jqx-ribbon-scrollbutton-rb.jqx-ribbon-scrollbutton-near\r
+{\r
+    top: 18px;\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+}\r
+.jqx-ribbon-scrollbutton-inner\r
+{\r
+    width: 100%;\r
+    height: 100%;\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-ribbon-selection-token\r
+{\r
+    position: absolute;\r
+    z-index: 1000;\r
+}\r
+.jqx-ribbon-selection-token-top, .jqx-ribbon-selection-token-bottom\r
+{\r
+    height: 1px;\r
+}\r
+.jqx-ribbon-selection-token-left, .jqx-ribbon-selection-token-right\r
+{\r
+    width: 1px;\r
+}\r
+.jqx-ribbon-auto, .jqx-ribbon-item-top, .jqx-ribbon-item-bottom, .jqx-ribbon-content\r
+{\r
+    *display: inline;\r
+}\r
+.jqx-ribbon-content-left\r
+{\r
+    *float: none;\r
+}\r
+.jqx-ribbon-content-right\r
+{\r
+    *float: left;\r
+}\r
+.jqx-ribbon-content.jqx-ribbon-content-popup\r
+{\r
+    *left: 0;\r
+}\r
+.jqx-ribbon-content-popup .jqx-ribbon-content-section\r
+{\r
+    *overflow: visible;\r
+}\r
+.jqx-ribbon-content-section-popup\r
+{\r
+    *position: absolute;\r
+}\r
+.jqx-toolbar, .jqx-toolbar-minimized-popup-separator\r
+{\r
+    box-sizing: border-box;\r
+}\r
+.jqx-toolbar, .jqx-toolbar-minimized-popup\r
+{\r
+    padding: 5px;\r
+}\r
+.jqx-toolbar\r
+{\r
+    position: relative;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    overflow: hidden;\r
+}\r
+.jqx-toolbar-tool\r
+{\r
+    float: left;\r
+    margin-top: 0;\r
+    margin-bottom: 0;\r
+}\r
+.jqx-toolbar-tool-rtl\r
+{\r
+    float: right;\r
+}\r
+.jqx-toolbar-tool-no-separator-ltr\r
+{\r
+    margin-right: 2px !important;\r
+}\r
+.jqx-toolbar-tool-no-separator-rtl\r
+{\r
+    margin-left: 2px !important;\r
+}\r
+.jqx-toolbar-tool-separator-ltr\r
+{\r
+    margin-right: 6px !important;\r
+}\r
+.jqx-toolbar-tool-separator-rtl\r
+{\r
+    margin-left: 6px !important;\r
+}\r
+.jqx-toolbar-tool-inner-button\r
+{\r
+    margin-right: 0;\r
+    margin-left: 0;\r
+    border-radius: 0 !important;\r
+}\r
+.jqx-toolbar-minimized-button, .jqx-toolbar-minimized-popup\r
+{\r
+    position: absolute;\r
+}\r
+.jqx-toolbar-minimized-button\r
+{\r
+    height: 100%;\r
+    right: 0;\r
+    cursor: pointer;\r
+    margin-top: -5px;\r
+    margin-right: 5px;\r
+    display: none;\r
+}\r
+.jqx-toolbar-minimized-button-rtl\r
+{\r
+    left: 0;\r
+    margin-left: 5px;\r
+    margin-right: 0;\r
+}\r
+.jqx-toolbar-minimized-popup\r
+{\r
+    border-width: 1px;\r
+    border-top-width: 0;\r
+    border-style: solid;\r
+    visibility: hidden;\r
+    z-index: 99999;\r
+}\r
+.jqx-toolbar-tool-minimized\r
+{\r
+    margin: 1px 0 !important;\r
+}\r
+.jqx-toolbar-minimized-popup-separator\r
+{\r
+    width: 100%;\r
+    height: 2px;\r
+    margin: 5px 0;\r
+    display: none;\r
+}\r
+.jqx-complex-input-spin-buttons-container\r
+{\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    position: relative;\r
+    -webkit-box-sizing: border-box !important;\r
+    -moz-box-sizing: border-box !important;\r
+    box-sizing: border-box !important;\r
+    padding: 2px 8px !important;\r
+    white-space: nowrap;\r
+    vertical-align: middle;\r
+}\r
+.jqx-formatted-input, .jqx-complex-input\r
+{\r
+    padding-right: 2px !important;\r
+    text-align: right;\r
+}\r
+.jqx-formatted-input-lower-case, .jqx-complex-input\r
+{\r
+    text-transform: lowercase;\r
+}\r
+.jqx-formatted-input-upper-case\r
+{\r
+    text-transform: uppercase;\r
+}\r
+.jqx-formatted-input-item\r
+{\r
+    word-wrap: break-word;\r
+}\r
+.jqx-formatted-input-item-rtl, .jqx-complex-input-rtl\r
+{\r
+    direction: rtl !important;\r
+}\r
+.jqx-formatted-input-spin-buttons-container, .jqx-formatted-input-addon\r
+{\r
+    height: 100%;\r
+}\r
+.jqx-formatted-input-spin-buttons-container\r
+{\r
+    width: 18px;\r
+    padding: 0 0 0 1px !important;\r
+    overflow: hidden;\r
+}\r
+.jqx-formatted-input-spin-buttons-container-rtl\r
+{\r
+    border-right-width: 0px;\r
+    padding: 0 0 0 2px !important;\r
+}\r
+.jqx-formatted-input-spin-buttons-container-rtl-border\r
+{\r
+    border-left-width: 1px !important;\r
+}\r
+.jqx-formatted-input-spin-button\r
+{\r
+    position: relative;\r
+    width: 17px;\r
+    height: 50%;\r
+    margin-left: -1px;\r
+    border-width: 0px;\r
+    padding: 0px;\r
+    overflow: hidden;\r
+    cursor: pointer;\r
+}\r
+.jqx-formatted-input-addon\r
+{\r
+    width: 19px;\r
+    padding: 0 !important;\r
+    cursor: pointer;\r
+}\r
+.jqx-formatted-input-addon-rtl\r
+{\r
+    border-right-width: 1px !important;\r
+}\r
+.jqx-complex-input-parent\r
+{\r
+    overflow: hidden;\r
+}\r
+.jqx-complex-input-child\r
+{\r
+    height: 100%;\r
+    float: left;\r
+    box-sizing: border-box;\r
+}\r
+.jqx-complex-input-child-rtl\r
+{\r
+    float: right;\r
+}\r
+.jqx-complex-input-spin-buttons-container-ltr\r
+{\r
+    border-left-width: 0;\r
+}\r
+.jqx-complex-input-spin-buttons-container-rtl\r
+{\r
+    border-left-width: 1px !important;\r
+    border-right-width: 0;\r
+}\r
+.jqx-file-upload\r
+{\r
+    position: relative;\r
+    overflow: auto;\r
+}\r
+.jqx-file-upload, .jqx-file-upload-file-row, .jqx-file-upload-file-name, .jqx-file-upload-file-cancel, .jqx-file-upload-file-upload\r
+{\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    box-sizing: border-box;\r
+}\r
+.jqx-file-upload-buttons-container, .jqx-file-upload-iframe, .jqx-file-upload-loading-element\r
+{\r
+    display: none;\r
+}\r
+.jqx-file-upload-file-input-ie9, .jqx-file-upload-buttons-container, .jqx-file-upload-file-row, .jqx-file-upload-icon\r
+{\r
+    width: 100%;\r
+}\r
+.jqx-file-upload-file-input-ie9, .jqx-file-upload-file-name, .jqx-file-upload-file-cancel, .jqx-file-upload-file-upload, .jqx-file-upload-icon, .jqx-file-upload-loading-element\r
+{\r
+    height: 100%;\r
+}\r
+.jqx-file-input-iframe, .jqx-file-upload-form-ie9\r
+{\r
+    position: absolute;\r
+}\r
+.jqx-file-input-iframe\r
+{\r
+    width: 0;\r
+    height: 0;\r
+    border: none;\r
+}\r
+.jqx-file-upload-form, .jqx-file-upload-file-input\r
+{\r
+    visibility: hidden;\r
+    display: none;\r
+}\r
+.jqx-file-upload-form-ie9, .jqx-file-upload-file-input-ie9\r
+{\r
+    display: block;\r
+    visibility: visible;\r
+}\r
+.jqx-file-upload-form-ie9\r
+{\r
+    z-index: 10000;\r
+    opacity: 0;\r
+    filter: alpha(opacity=0);\r
+}\r
+.jqx-file-upload-file-name\r
+{\r
+    width: auto;\r
+    padding: 0 2px 0 2px;\r
+    overflow: hidden;\r
+    white-space: nowrap;\r
+    text-overflow: ellipsis;\r
+    *float: left;\r
+}\r
+.jqx-file-upload-button-browse-rtl, .jqx-file-upload-button-upload-rtl, .jqx-file-upload-button-cancel-rtl, .jqx-file-upload-file-name-rtl, .jqx-file-upload-file-cancel, .jqx-file-upload-file-upload, .jqx-file-upload-loading-element\r
+{\r
+    float: right;\r
+}\r
+.jqx-file-upload, .jqx-file-upload-file-row\r
+{\r
+    padding: 5px;\r
+}\r
+.jqx-file-upload-button-browse\r
+{\r
+    display: block;\r
+}\r
+.jqx-file-upload-buttons-container\r
+{\r
+    height: auto;\r
+    margin-top: 10px;\r
+}\r
+.jqx-file-upload-button-browse-rtl, .jqx-file-upload-button-upload-rtl, .jqx-file-upload-button-cancel-rtl, .jqx-file-upload-file-name-rtl, .jqx-file-upload-file-cancel-rtl, .jqx-file-upload-file-upload-rtl\r
+{\r
+    direction: rtl !important;\r
+}\r
+.jqx-file-upload-button-cancel, .jqx-file-upload-button-upload-rtl\r
+{\r
+    margin-left: 5px;\r
+}\r
+.jqx-file-upload-button-upload-rtl-ie\r
+{\r
+    margin-right: 5px;\r
+}\r
+.jqx-file-upload-button-cancel-rtl, .jqx-file-upload-button-upload-rtl-ie\r
+{\r
+    margin-left: 0;\r
+}\r
+.jqx-file-upload-file-row\r
+{\r
+    height: 30px;\r
+    margin-bottom: 3px;\r
+    clear: both;\r
+}\r
+.jqx-file-upload-file-cancel, .jqx-file-upload-file-upload, .jqx-file-upload-loading-element\r
+{\r
+    width: 17px;\r
+    margin: 0 1px 0 1px;\r
+}\r
+.jqx-file-upload-file-cancel-rtl, .jqx-file-upload-file-upload-rtl, .jqx-file-upload-loading-element-rtl\r
+{\r
+    float: none;\r
+    *float: left;\r
+}\r
+.jqx-file-upload-button-browse, .jqx-file-upload-button-upload, .jqx-file-upload-button-cancel, .jqx-file-upload-form-ie9, .jqx-file-upload-file-input-ie9, .jqx-file-upload-file-cancel, .jqx-file-upload-file-upload\r
+{\r
+    cursor: pointer;\r
+    white-space:nowrap;\r
+}\r
+.jqx-file-upload-file-name, .jqx-file-upload-file-cancel, .jqx-file-upload-file-upload\r
+{\r
+    display: inline-block;\r
+}\r
+.jqx-file-upload-icon-upload, .jqx-file-upload-loading-element\r
+{\r
+    margin-top: 1px;\r
+}\r
+.jqx-file-upload-loading-element\r
+{\r
+    background-image: url('images/loader-small.gif');\r
+    background-repeat: no-repeat;\r
+}\r
+\r
+.jqx-date-time-input-popup .jqx-icon {\r
+    margin-top:0px;\r
+}\r
+\r
+\r
+.jqx-text-area-element\r
+{\r
+    height: 100%;\r
+    width: 100%;\r
+    overflow: hidden;\r
+    border: none;\r
+    outline: none;\r
+    left: 0px;\r
+    top: 0px;\r
+    margin: 0px;\r
+    position: absolute;\r
+    resize: none;\r
+}\r
+.jqx-text-area-element-rtl\r
+{\r
+    direction: rtl;\r
+}\r
+.jqx-responsive-panel\r
+{\r
+    overflow: auto;\r
+}\r
+.jqx-responsive-panel, .jqx-responsive-panel-button\r
+{\r
+    border-width: 1px;\r
+    border-style: solid;\r
+}\r
+.jqx-responsive-panel-button\r
+{\r
+    display: none;\r
+    cursor: pointer;\r
+}\r
+.jqx-responsive-panel-button-inner\r
+{\r
+    margin: 0;\r
+    width: 100%;\r
+    height: 100%;\r
+    background-position: center;\r
+}\r
+.jqx-loader\r
+{\r
+    margin: auto;\r
+    position: absolute;\r
+    top: 0;\r
+    left: 0;\r
+    bottom: 0;\r
+    right: 0;\r
+    background-color: rgba(255,255,255,0.5);\r
+    z-index: 999;\r
+    border-style: solid;\r
+    border-width: 1px;\r
+}\r
+.jqx-loader-ie-transparency\r
+{\r
+    background: transparent;\r
+    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#7fffffff, endColorstr=#7fffffff)"; /*For IE 8*/\r
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#7fffffff, endColorstr=#7fffffff); /*For IE 7*/\r
+}\r
+.jqx-loader-modal\r
+{\r
+    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";\r
+    filter: alpha(opacity=50);\r
+    position: fixed;\r
+    height: 100%;\r
+    width: 100%;\r
+    z-index: 99;\r
+    cursor: default;\r
+    top: 0;\r
+    left: 0;\r
+    background-color: black;\r
+    opacity: 0.6;\r
+}\r
+.jqx-loader-icon\r
+{\r
+    background-image: url("../../jqwidgets/styles/images/loader.gif");\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+    width: 100%;\r
+    height: 100%;\r
+    position: absolute;\r
+    z-index: 999;\r
+}\r
+.jqx-loader-text\r
+{\r
+    z-index: 999;\r
+    position: relative;\r
+}\r
+.jqx-loader-text-left\r
+{\r
+    margin-left: 5px;\r
+    position: absolute;\r
+    top: 50%;\r
+}\r
+.jqx-loader-text-right\r
+{\r
+    margin-right: 5px;\r
+    position: absolute;\r
+    top: 50%;\r
+    right: 0px;\r
+}\r
+.jqx-loader-text-top\r
+{\r
+    text-align: center;\r
+    margin-top: 5px;\r
+}\r
+.jqx-loader-text-bottom\r
+{\r
+    bottom: 0px;\r
+    position: absolute;\r
+    text-align: center;\r
+    margin: 0 auto;\r
+    width: 100%;\r
+    margin-bottom: 5px;\r
+}\r
+.jqx-loader-rtl\r
+{\r
+    direction: rtl;\r
+}\r
+/* jqxLayout and jqxDockingLayout */\r
+.jqx-layout, .jqx-layout-group-root, .jqx-layout-pseudo-window-header, .jqx-docking-layout-overlay-inner-square-content\r
+{\r
+    position: relative;\r
+}\r
+.jqx-layout-pseudo-window-pin-background, .jqx-layout-pseudo-window-close-background, .jqx-layout-resize-feedback, .jqx-layout-overlay, .jqx-docking-layout-overlay, .jqx-docking-layout-overlay-highlight-right, .jqx-docking-layout-overlay-highlight-bottom, .jqx-docking-layout-overlay-square-edge, .jqx-docking-layout-drop-overlay\r
+{\r
+    position: absolute;\r
+}\r
+.jqx-layout\r
+{\r
+    background-color: #c5c5c5;\r
+}\r
+.jqx-layout-group-root, .jqx-layout-pseudo-window-pin-icon, .jqx-layout-pseudo-window-pinned-icon, .jqx-layout-pseudo-window-close-icon, .jqx-layout-overlay\r
+{\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-layout-group-default-horizontal > div, .jqx-layout-pseudo-window-title-ltr, .jqx-docking-layout-overlay-square, .jqx-docking-layout-overlay-mini-window-edge-horizontal, .jqx-docking-layout-overlay-square-edge-arrow-container-horizontal\r
+{\r
+    float: left;\r
+}\r
+.jqx-layout-group-tabbed\r
+{\r
+    position: static;\r
+    box-sizing: border-box;\r
+    min-height: 0 !important;\r
+}\r
+.jqx-layout-group-tabbed .jqx-window-content, .jqx-docking-layout-group-floating .jqx-window-content\r
+{\r
+    padding: 0;\r
+}\r
+.jqx-layout-group-tabbed .jqx-ribbon-content-section, .jqx-layout-window, .jqx-docking-layout-group-floating .jqx-ribbon-content-section\r
+{\r
+    border: none;\r
+}\r
+.jqx-layout-window\r
+{\r
+    position: static;\r
+}\r
+.jqx-layout-group-auto-hide-content-vertical, .jqx-layout-group-auto-hide-content-horizontal\r
+{\r
+    overflow: auto;\r
+}\r
+.jqx-layout-group-auto-hide-content-vertical\r
+{\r
+    width: 150px;\r
+}\r
+.jqx-layout-group-auto-hide-content-horizontal\r
+{\r
+    width: 100%;\r
+    height: 150px;\r
+}\r
+.jqx-layout-pseudo-window\r
+{\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    box-sizing: border-box;\r
+    box-shadow: none !important;\r
+}\r
+.jqx-layout-pseudo-window-header, .jqx-layout-pseudo-window-content\r
+{\r
+    width: 100%;\r
+    box-sizing: border-box;\r
+}\r
+.jqx-layout-pseudo-window-header\r
+{\r
+    height: 30px;\r
+}\r
+.jqx-layout-pseudo-window-pin-background, .jqx-layout-pseudo-window-close-background\r
+{\r
+    width: 16px;\r
+    height: 16px;\r
+    top: 5px;\r
+}\r
+.jqx-layout-pseudo-window-pin-background-ltr\r
+{\r
+    right: 15px;\r
+}\r
+.jqx-layout-pseudo-window-close-background-ltr\r
+{\r
+    right: 0;\r
+}\r
+.jqx-layout-pseudo-window-pin-background-rtl\r
+{\r
+    left: 15px;\r
+}\r
+.jqx-layout-pseudo-window-close-background-rtl\r
+{\r
+    left: 0;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon, .jqx-layout-pseudo-window-pinned-icon, .jqx-layout-pseudo-window-close-icon\r
+{\r
+    cursor: pointer;\r
+}\r
+.jqx-layout-pseudo-window-title\r
+{\r
+    white-space: nowrap;\r
+    overflow: hidden;\r
+    text-overflow: ellipsis;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon\r
+{\r
+    background-image: url("images/pin.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon\r
+{\r
+    background-image: url("images/pinned.png");\r
+}\r
+.jqx-layout-pseudo-window-title-rtl\r
+{\r
+    float: right;\r
+}\r
+.jqx-layout-resize-feedback\r
+{\r
+    z-index: 9999;\r
+    top: 0;\r
+    left: 0;\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    box-sizing: border-box;\r
+    opacity: 0.6;\r
+    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";\r
+    *filter: alpha(opacity=60);\r
+    display: none;\r
+}\r
+.jqx-layout-resize-feedback-horizontal\r
+{\r
+    width: 100%;\r
+    height: 4px;\r
+    cursor: row-resize;\r
+}\r
+.jqx-layout-resize-feedback-vertical\r
+{\r
+    width: 4px;\r
+    height: 100%;\r
+    cursor: col-resize;\r
+}\r
+.jqx-layout-resize-feedback-warning\r
+{\r
+    border-color: #800000 !important;\r
+    background-color: Red !important;\r
+}\r
+.jqx-layout-overlay\r
+{\r
+    top: 0;\r
+    left: 0;\r
+    display: none;\r
+    background-color: transparent;\r
+    z-index: 8999;\r
+}\r
+.jqx-layout-ribbon-header-ltr\r
+{\r
+    padding-left: 20px;\r
+}\r
+.jqx-layout-ribbon-header-rtl\r
+{\r
+    padding-right: 20px;\r
+}\r
+\r
+/* jqxDockingLayout-specific */\r
+.jqx-docking-layout-group-floating\r
+{\r
+    border-color: #FFD280 !important;\r
+}\r
+.jqx-docking-layout-group-floating .jqx-window-header\r
+{\r
+    border-color: #FFD280;\r
+    background-color: #FFD280 !important;\r
+    background: -webkit-linear-gradient(#FFE4B5,  #FFD280) !important;\r
+    background: -o-linear-gradient(#FFE4B5,  #FFD280) !important;\r
+    background: -moz-linear-gradient(#FFE4B5,  #FFD280) !important;\r
+    background: linear-gradient(#FFE4B5,  #FFD280 ) !important;\r
+}\r
+.jqx-docking-layout-overlay, .jqx-docking-layout-overlay-square-edge\r
+{\r
+    display: none;\r
+    z-index: 99999;\r
+    opacity: 0.9;\r
+    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";\r
+    *filter: alpha(opacity=90);\r
+}\r
+.jqx-docking-layout-overlay\r
+{\r
+    width: 100px;\r
+    height: 100px;\r
+    left: 100px;\r
+    top: 70px;\r
+}\r
+.jqx-docking-layout-overlay-section\r
+{\r
+    height: 33px;\r
+    width: 100px;\r
+}\r
+.jqx-docking-layout-overlay-square\r
+{\r
+    width: 26px;\r
+    height: 26px;\r
+    padding: 3px;\r
+}\r
+.jqx-docking-layout-overlay-square-invisible\r
+{\r
+    background-color: transparent !important;\r
+    background-image: none !important;\r
+}\r
+.jqx-docking-layout-overlay-square-top, .jqx-docking-layout-overlay-square-left, .jqx-docking-layout-overlay-square-center, .jqx-docking-layout-overlay-square-right, .jqx-docking-layout-overlay-highlight-bottom\r
+{\r
+    border-top-width: 1px;\r
+    border-top-style: solid;\r
+}\r
+.jqx-docking-layout-overlay-square-top, .jqx-docking-layout-overlay-square-left, .jqx-docking-layout-overlay-square-bottom, .jqx-docking-layout-overlay-highlight-right\r
+{\r
+    border-left-width: 1px;\r
+    border-left-style: solid;\r
+}\r
+.jqx-docking-layout-overlay-square-top, .jqx-docking-layout-overlay-square-right, .jqx-docking-layout-overlay-square-bottom, .jqx-docking-layout-overlay-highlight-left\r
+{\r
+    border-right-width: 1px;\r
+    border-right-style: solid;\r
+}\r
+.jqx-docking-layout-overlay-square-left, .jqx-docking-layout-overlay-square-center, .jqx-docking-layout-overlay-square-right, .jqx-docking-layout-overlay-square-bottom, .jqx-docking-layout-overlay-inner-square-header, .jqx-docking-layout-overlay-highlight-top\r
+{\r
+    border-bottom-width: 1px;\r
+    border-bottom-style: solid;\r
+}\r
+.jqx-docking-layout-overlay-square-center\r
+{\r
+    border-color: transparent !important;\r
+}\r
+.jqx-docking-layout-overlay-inner-square, .jqx-docking-layout-overlay-inner-square-header, .jqx-docking-layout-overlay-inner-square-content, .jqx-docking-layout-overlay-highlight-top, .jqx-docking-layout-overlay-highlight-bottom, .jqx-docking-layout-overlay-mini-window-edge-vertical\r
+{\r
+    width: 24px;\r
+}\r
+.jqx-docking-layout-overlay-inner-square\r
+{\r
+    border-width: 1px;\r
+    border-style: solid;\r
+    height: 24px;\r
+}\r
+.jqx-docking-layout-overlay-inner-square-header\r
+{\r
+    height: 5px;\r
+}\r
+.jqx-docking-layout-overlay-inner-square-content\r
+{\r
+    height: 18px;\r
+}\r
+.jqx-docking-layout-overlay-highlight\r
+{\r
+}\r
+.jqx-docking-layout-overlay-highlight-top\r
+{\r
+    height: 9px;\r
+    border-bottom-style: dashed;\r
+}\r
+.jqx-docking-layout-overlay-highlight-left, .jqx-docking-layout-overlay-highlight-right\r
+{\r
+    width: 12px;\r
+    height: 18px;\r
+}\r
+.jqx-docking-layout-overlay-highlight-left\r
+{\r
+    border-right-style: dashed;\r
+}\r
+.jqx-docking-layout-overlay-highlight-right\r
+{\r
+    right: 0;\r
+    border-left-style: dashed;\r
+}\r
+.jqx-docking-layout-overlay-highlight-bottom\r
+{\r
+    bottom: 0;\r
+    height: 9px;\r
+    border-top-style: dashed;\r
+}\r
+.jqx-docking-layout-drop-overlay\r
+{\r
+    display: none;\r
+    background-color: #6495ED;\r
+    opacity: 0.5;\r
+    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";\r
+    *filter: alpha(opacity=50);\r
+    z-index: 10000;\r
+}\r
+.jqx-docking-layout-square-disabled\r
+{\r
+    visibility: hidden;\r
+}\r
+.jqx-docking-layout-overlay-square-edge, .jqx-docking-layout-overlay-mini-window-edge-horizontal, .jqx-docking-layout-overlay-mini-window-edge-vertical\r
+{\r
+    border-style: solid;\r
+    border-width: 1px;\r
+}\r
+.jqx-docking-layout-overlay-inner-square-edge\r
+{\r
+    width: 26px;\r
+    height: 26px;\r
+}\r
+.jqx-docking-layout-overlay-mini-window-edge-horizontal\r
+{\r
+    height: 24px;\r
+}\r
+.jqx-docking-layout-overlay-mini-window-edge-vertical\r
+{\r
+    height: 13px;\r
+}\r
+.jqx-docking-layout-overlay-mini-window-edge-horizontal, .jqx-docking-layout-overlay-inner-square-header-horizontal, .jqx-docking-layout-overlay-inner-square-content-horizontal\r
+{\r
+    width: 13px;\r
+}\r
+.jqx-docking-layout-overlay-inner-square-content-vertical\r
+{\r
+    height: 7px;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow\r
+{\r
+    border-style: solid;\r
+    border-width: 5px;\r
+    width: 0px;\r
+    height: 0px;\r
+    display: block;\r
+    background: transparent !important;\r
+    *filter: inherit;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow-left, .jqx-docking-layout-overlay-square-edge-arrow-right, .jqx-docking-layout-overlay-square-edge-arrow-top\r
+{\r
+    border-top-color: transparent !important;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow-left, .jqx-docking-layout-overlay-square-edge-arrow-right, .jqx-docking-layout-overlay-square-edge-arrow-bottom\r
+{\r
+    border-bottom-color: transparent !important;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow-left, .jqx-docking-layout-overlay-square-edge-arrow-top, .jqx-docking-layout-overlay-square-edge-arrow-bottom\r
+{\r
+    border-left-color: transparent !important;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow-right, .jqx-docking-layout-overlay-square-edge-arrow-top, .jqx-docking-layout-overlay-square-edge-arrow-bottom\r
+{\r
+    border-right-color: transparent !important;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow-left, .jqx-docking-layout-overlay-square-edge-arrow-right\r
+{\r
+    margin-top: 8px;\r
+}\r
+.jqx-docking-layout-overlay-square-edge-arrow-top, .jqx-docking-layout-overlay-square-edge-arrow-bottom\r
+{\r
+    margin-left: 8px;\r
+}\r
+\r
+.jqx-tag-cloud ul {\r
+    padding-left: 5px;\r
+}\r
+\r
+.jqx-tag-cloud-item{\r
+    padding: 3px;\r
+    display:inline-block;\r
+}\r
+\r
+.jqx-tag-cloud-item a {\r
+    text-decoration: initial;\r
+}\r
+\r
+.jqx-tag-cloud-item a:hover {\r
+    text-decoration: underline;\r
+}\r
+.jqx-popover {\r
+  position: absolute;\r
+  top: 0;\r
+  left: 0;\r
+  z-index: 1010;\r
+  display: none;\r
+  max-width: 276px;\r
+  padding: 1px;\r
+  text-align: left;\r
+  white-space: normal;\r
+  background-color: #ffffff;\r
+  border: 1px solid #ccc;\r
+  border: 1px solid rgba(0, 0, 0, 0.2);\r
+  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\r
+     -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\r
+          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\r
+  -webkit-background-clip: padding-box;\r
+     -moz-background-clip: padding;\r
+          background-clip: padding-box;\r
+}\r
+.jqx-popover-modal-background\r
+{\r
+    position:fixed;\r
+    left:0px;\r
+    top:0px;\r
+    width:100%;\r
+    height:100%;\r
+    z-index:999;\r
+     /* Fallback for web browsers that don't support RGBa */\r
+    background-color: rgb(0, 0, 0);\r
+    /* RGBa with 0.6 opacity */\r
+    background-color: rgba(0, 0, 0, 0.6);\r
+    /* For IE 5.5 - 7*/\r
+    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000);\r
+    /* For IE 8*/\r
+    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";\r
+}\r
+.jqx-popover-close-button {\r
+    width:16px;\r
+    height:16px;\r
+    float:right;\r
+}\r
+.jqx-popover-close-button-rtl {\r
+    float:left;\r
+}\r
+.jqx-popover.top {\r
+  margin-top: -10px;\r
+}\r
+\r
+.jqx-popover.right {\r
+  margin-left: 10px;\r
+}\r
+\r
+.jqx-popover.bottom {\r
+  margin-top: 10px;\r
+}\r
+\r
+.jqx-popover.left {\r
+  margin-left: -10px;\r
+}\r
+\r
+.jqx-popover-title {\r
+  padding: 8px 14px;\r
+  margin: 0;\r
+  border-bottom: 1px solid inherit;\r
+  -webkit-border-radius: 3px 3px 0 0;\r
+     -moz-border-radius: 3px 3px 0 0;\r
+          border-radius: 3px 3px 0 0;\r
+}\r
+\r
+.jqx-popover-title:empty {\r
+  display: none;\r
+}\r
+\r
+.jqx-popover-content {\r
+  padding: 9px 14px;\r
+}\r
+\r
+.jqx-popover .jqx-popover-arrow,\r
+.jqx-popover .jqx-popover-arrow:after {\r
+  position: absolute;\r
+  display: block;\r
+  width: 0;\r
+  height: 0;\r
+  border-color: transparent;\r
+  border-style: solid;\r
+}\r
+\r
+.jqx-popover .jqx-popover-arrow {\r
+  border-width: 11px;\r
+}\r
+\r
+.jqx-popover .jqx-popover-arrow:after {\r
+  border-width: 10px;\r
+  content: "";\r
+}\r
+\r
+.jqx-popover.top .jqx-popover-arrow {\r
+  bottom: -11px;\r
+  left: 50%;\r
+  margin-left: -11px;\r
+  border-top-color: inherit;\r
+  border-bottom-width: 0;\r
+}\r
+\r
+.jqx-popover.top .jqx-popover-arrow:after {\r
+  bottom: 1px;\r
+  margin-left: -10px;\r
+  border-top-color: #ffffff;\r
+  border-bottom-width: 0;\r
+}\r
+\r
+.jqx-popover.right .jqx-popover-arrow {\r
+  top: 50%;\r
+  left: -11px;\r
+  margin-top: -11px;\r
+  border-right-color: inherit;\r
+  border-left-width: 0;\r
+}\r
+\r
+.jqx-popover.right .jqx-popover-arrow:after {\r
+  bottom: -10px;\r
+  left: 1px;\r
+  border-right-color: #ffffff;\r
+  border-left-width: 0;\r
+}\r
+\r
+.jqx-popover.bottom .jqx-popover-arrow {\r
+  top: -11px;\r
+  left: 50%;\r
+  margin-left: -11px;\r
+  border-bottom-color:inherit;\r
+  border-top-width: 0;\r
+}\r
+\r
+.jqx-popover.bottom .jqx-popover-arrow:after {\r
+  top: 1px;\r
+  margin-left: -10px;\r
+  border-bottom-color: #ffffff;\r
+  border-top-width: 0;\r
+}\r
+\r
+.jqx-popover.left .jqx-popover-arrow {\r
+  top: 50%;\r
+  right: -11px;\r
+  margin-top: -11px;\r
+  border-right-width: 0; border-left-color: inherit;\r
+}\r
+\r
+.jqx-popover.left .jqx-popover-arrow:after {\r
+  right: 1px;\r
+  bottom: -10px;\r
+  border-left-color: #ffffff;\r
+  border-right-width: 0;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.black.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.black.css
new file mode 100644 (file)
index 0000000..c0f80e8
--- /dev/null
@@ -0,0 +1,250 @@
+.jqx-rc-tl-black\r
+{\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+}\r
+/*top-right rounded Corners*/\r
+.jqx-rc-tr-black\r
+{\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+}\r
+/*bottom-left rounded Corners*/\r
+.jqx-rc-bl-black\r
+{\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+}\r
+/*bottom-right rounded Corners*/\r
+.jqx-rc-br-black\r
+{\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-black\r
+{\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-black\r
+{\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-black\r
+{\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-black\r
+{\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-black\r
+{\r
+    -moz-border-radius: 5px;\r
+    -webkit-border-radius: 5px;\r
+    border-radius: 5px;\r
+}\r
+.jqx-widget-black {\r
+    color: inherit;\r
+}\r
+ .jqx-grid-selectionarea-black{background-color:#262626; border:1px solid #262626; opacity:0.5}\r
+.jqx-grid-group-cell-black{border-color:#262626; background-color:#fff}\r
+.jqx-grid-cell-sort-black, .jqx-grid-cell-filter-black, .jqx-grid-cell-pinned-black{ background-color:#eaf8ff}\r
+.jqx-grid-cell-alt-black, .jqx-grid-cell-sort-alt-black, .jqx-grid-cell-filter-alt-black{ background-color:#deedf5}\r
+.jqx-widget-black .jqx-grid-cell-black{background: #000; border-color:#555}\r
+.jqx-widget-black .jqx-grid-group-cell-black{background-color: #000; border-color: #555;}\r
+.jqx-widget-black .jqx-grid-cell-selected-black{color:#fff !important}\r
+.jqx-widget-black .jqx-grid-cell-hover-black{color:#fff !important}\r
+.jqx-widget-black{font-family:Tahoma,"Lucida Sans",Verdana,Helvetica,Arial,sans-serif; border-color:#222;}\r
+.jqx-widget-content-black{font-family:Tahoma,"Lucida Sans",Verdana,Helvetica,Arial,sans-serif; color:#fff; border-color:#262626; background: #111;}\r
+.jqx-fill-state-normal-black, .jqx-widget-header-black, .jqx-input-button-content-black{font-family:Tahoma,"Lucida Sans",Verdana,Helvetica,Arial,sans-serif; color:#fff; border-color:#000; background: #a4a4a4;\r
+background: -moz-linear-gradient(top, #a4a4a4 0%, #757575 4%, #4f4f4f 37%, #464646 48%, #000000 52%, #000000 56%, #0c0c0c 67%, #1e1e1e 78%, #414141 96%, #666666 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a4a4a4), color-stop(4%,#757575), color-stop(37%,#4f4f4f), color-stop(48%,#464646), color-stop(52%,#000000), color-stop(56%,#000000), color-stop(67%,#0c0c0c), color-stop(78%,#1e1e1e), color-stop(96%,#414141), color-stop(100%,#666666));\r
+background: -webkit-linear-gradient(top, #a4a4a4 0%,#757575 4%,#4f4f4f 37%,#464646 48%,#000000 52%,#000000 56%,#0c0c0c 67%,#1e1e1e 78%,#414141 96%,#666666 100%);\r
+background: -o-linear-gradient(top, #a4a4a4 0%,#757575 4%,#4f4f4f 37%,#464646 48%,#000000 52%,#000000 56%,#0c0c0c 67%,#1e1e1e 78%,#414141 96%,#666666 100%);\r
+background: -ms-linear-gradient(top, #a4a4a4 0%,#757575 4%,#4f4f4f 37%,#464646 48%,#000000 52%,#000000 56%,#0c0c0c 67%,#1e1e1e 78%,#414141 96%,#666666 100%);\r
+background: linear-gradient(top, #a4a4a4 0%,#757575 4%,#4f4f4f 37%,#464646 48%,#000000 52%,#000000 56%,#0c0c0c 67%,#1e1e1e 78%,#414141 96%,#666666 100%);}\r
+.jqx-fill-state-hover-black, .jqx-input-button-header-black, .jqx-widget-black .jqx-grid-cell-hover-black{background: #f87948;\r
+background: -moz-linear-gradient(top, #f87948 0%, #fb4e0b 4%, #f44501 11%, #e24000 19%, #983600 44%, #983600 48%, #5c2900 52%, #692b00 67%, #c23700 96%, #bd3800 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f87948), color-stop(4%,#fb4e0b), color-stop(11%,#f44501), color-stop(19%,#e24000), color-stop(44%,#983600), color-stop(48%,#983600), color-stop(52%,#5c2900), color-stop(67%,#692b00), color-stop(96%,#c23700), color-stop(100%,#bd3800));\r
+background: -webkit-linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+background: -o-linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+background: -ms-linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+background: linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+ border-color:#262626; color:#fff}\r
+.jqx-fill-state-pressed-black, .jqx-menu-item-top-hover-black, .jqx-widget-black .jqx-grid-cell-selected-black{background: #db4200;\r
+background: -moz-linear-gradient(top, #db4200 0%, #902e00 4%, #7d2a01 19%, #531c03 44%, #531c03 48%, #0f0906 52%, #221105 63%, #2b1705 67%, #592903 89%, #642e02 96%, #902e00 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#db4200), color-stop(4%,#902e00), color-stop(19%,#7d2a01), color-stop(44%,#531c03), color-stop(48%,#531c03), color-stop(52%,#0f0906), color-stop(63%,#221105), color-stop(67%,#2b1705), color-stop(89%,#592903), color-stop(96%,#642e02), color-stop(100%,#902e00));\r
+background: -webkit-linear-gradient(top, #db4200 0%,#902e00 4%,#7d2a01 19%,#531c03 44%,#531c03 48%,#0f0906 52%,#221105 63%,#2b1705 67%,#592903 89%,#642e02 96%,#902e00 100%);\r
+background: -o-linear-gradient(top, #db4200 0%,#902e00 4%,#7d2a01 19%,#531c03 44%,#531c03 48%,#0f0906 52%,#221105 63%,#2b1705 67%,#592903 89%,#642e02 96%,#902e00 100%);\r
+background: -ms-linear-gradient(top, #db4200 0%,#902e00 4%,#7d2a01 19%,#531c03 44%,#531c03 48%,#0f0906 52%,#221105 63%,#2b1705 67%,#592903 89%,#642e02 96%,#902e00 100%);\r
+background: linear-gradient(top, #db4200 0%,#902e00 4%,#7d2a01 19%,#531c03 44%,#531c03 48%,#0f0906 52%,#221105 63%,#2b1705 67%,#592903 89%,#642e02 96%,#902e00 100%);\r
+border-color:#262626; color:#fff}\r
+.jqx-fill-state-disabled-black {cursor: default; color: #fff; opacity: .55; filter:Alpha(Opacity=45);}\r
+\r
+.jqx-checkbox-check-checked-black{background:transparent url(images/check_white.png) left top no-repeat}\r
+.jqx-checkbox-check-indeterminate-black{background:transparent url(images/check_indeterminate_white.png) left top no-repeat}\r
+.jqx-grid-black, .jqx-grid-header-black, .jqx-grid-cell-black{border-color:#262626}\r
+.jqx-widget-black .jqx-grid-column-menubutton-black, .jqx-widget-black .jqx-grid-column-sortascbutton-black, .jqx-widget-black .jqx-grid-column-sortdescbutton-black, .jqx-widget-black .jqx-grid-column-filterbutton-black{border-color:#262626}\r
+.jqx-widget-black .jqx-grid-column-header-black{border-color:#262626}\r
+.jqx-calendar-cell-today-black {\r
+    color: #35353A;\r
+}\r
+.jqx-grid-bottomright-black, .jqx-panel-bottomright-black, .jqx-listbox-bottomright-black{background-color:#262626}\r
+.jqx-widget-black .jqx-grid-column-menubutton-black, .jqx-menu-vertical-black{background-color:#262626; border-color:#262626}\r
+.jqx-menu-vertical-black{background: #222; color:#fff;}\r
+.jqx-scrollbar-state-normal-black{background:#111; border:1px solid #111}\r
+.jqx-scrollbar-button-state-normal-black{border:1px solid #111; background:#111}\r
+.jqx-scrollbar-button-state-hover-black{background: #f87948;\r
+background: -moz-linear-gradient(top, #f87948 0%, #fb4e0b 4%, #f44501 11%, #e24000 19%, #983600 44%, #983600 48%, #5c2900 52%, #692b00 67%, #c23700 96%, #bd3800 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f87948), color-stop(4%,#fb4e0b), color-stop(11%,#f44501), color-stop(19%,#e24000), color-stop(44%,#983600), color-stop(48%,#983600), color-stop(52%,#5c2900), color-stop(67%,#692b00), color-stop(96%,#c23700), color-stop(100%,#bd3800));\r
+background: -webkit-linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+background: -o-linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+background: -ms-linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%);\r
+background: linear-gradient(top, #f87948 0%,#fb4e0b 4%,#f44501 11%,#e24000 19%,#983600 44%,#983600 48%,#5c2900 52%,#692b00 67%,#c23700 96%,#bd3800 100%); border:1px solid #000}\r
+.jqx-scrollbar-button-state-pressed-black{background:#555 url(images/darkred_gradient.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-normal-horizontal-black{ background:#555; background-image:-webkit-gradient(linear,0 0,0 100%,from(#717171),to(#494949));  background-image:-moz-linear-gradient(top,#717171,#494949);  background-image:-o-linear-gradient(top,#717171,#494949);  border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-black{ background:#983600; background-image:-webkit-gradient(linear,0 0,0 100%,from(#fb4e0b),to(#983600));  background-image:-moz-linear-gradient(top,#fb4e0b,#983600);  background-image:-o-linear-gradient(top,#fb4e0b,#983600);  border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-black{ background:#902e00; background-image:-webkit-gradient(linear,0 0,0 100%,from(#902e00),to(#531c03));    background-image:-moz-linear-gradient(top,#902e00,#531c03);    background-image:-o-linear-gradient(top,#902e00,#531c03); border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-normal-black{ background:#555; background-image:-webkit-gradient(linear,left top,right top,from(#717171),to(#494949));  background-image:-moz-linear-gradient(left,#717171,#494949);  background-image:-o-linear-gradient(left,#717171,#494949); border:1px solid #000;}\r
+.jqx-scrollbar-thumb-state-hover-black{ background:#983600; background-image:-webkit-gradient(linear,left top,right top,from(#fb4e0b),to(#983600));  background-image:-moz-linear-gradient(left,#fb4e0b,#983600);  background-image:-o-linear-gradient(left,#fb4e0b,#983600); border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-pressed-black{ background:#902e00; background-image:-webkit-gradient(linear,left top,right top,from(#902e00),to(#531c03));    background-image:-moz-linear-gradient(left,#902e00,#531c03);    background-image:-o-linear-gradient(left,#902e00,#531c03); border:1px solid #000}\r
+\r
+.jqx-splitter-splitbar-horizontal-black, .jqx-splitter-splitbar-vertical-black, .jqx-splitter-splitbar-hover-black, .jqx-splitter-splitbar-hover-horizontal-black{background: #555;}\r
+.jqx-splitter-collapse-button-horizontal-black, .jqx-splitter-collapse-button-vertical-black{background: #7f7f7f;}\r
+.jqx-grid-column-sortascbutton-black, .jqx-expander-arrow-bottom-black, .jqx-window-collapse-button-black, .jqx-menu-item-arrow-up-black, .jqx-menu-item-arrow-up-selected-black, .jqx-menu-item-arrow-top-up-black, .jqx-icon-arrow-up-black, .jqx-icon-arrow-up-hover-black, .jqx-icon-arrow-up-selected-black{background-image:url('images/icon-up-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-widget-black .jqx-grid-group-expand-black, .jqx-grid-group-expand-black, .jqx-grid-column-menubutton-black, .jqx-grid-column-sortdescbutton-black, .jqx-expander-arrow-top-black, .jqx-window-collapse-button-collapsed-black, .jqx-menu-item-arrow-down-black, .jqx-menu-item-arrow-down-selected-black, .jqx-menu-item-arrow-down-black, .jqx-icon-arrow-down-black, .jqx-icon-arrow-down-hover-black, .jqx-icon-arrow-down-selected-black{background-image:url('images/icon-down-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-tabs-arrow-left-black, .jqx-menu-item-arrow-left-selected-black, .jqx-menu-item-arrow-top-left, .jqx-icon-arrow-left-black, .jqx-icon-arrow-down-left-black, .jqx-icon-arrow-left-selected-black{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-widget-black .jqx-grid-group-collapse-black, .jqx-grid-group-collapse-black,.jqx-tabs-arrow-right-black, .jqx-menu-item-arrow-right-selected-black, .jqx-menu-item-arrow-top-right-black, .jqx-icon-arrow-right-black, .jqx-icon-arrow-right-hover-black, .jqx-icon-arrow-right-selected-black{background-image:url('images/icon-right-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-window-close-button-black, .jqx-icon-close-black, .jqx-tabs-close-button-black, .jqx-tabs-close-button-hover-black, .jqx-tabs-close-button-selected-black{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+.jqx-tree-item-arrow-collapse-rtl-black, .jqx-tree-item-arrow-collapse-hover-rtl-black{background-image: url(images/icon-left.png);}\r
+.jqx-listitem-state-group-black{background: #222;}\r
+.jqx-calendar-cell-specialDate-black{border: 1px solid black;}\r
+.jqx-tabs-selection-tracker-top-black, .jqx-tabs-selection-tracker-bottom-black{background-color: #000; border-color: #000;}\r
+.jqx-widget-black .jqx-grid-cell-sort-black,  .jqx-widget-black .jqx-grid-cell-alt-black, .jqx-widget-black .jqx-grid-cell-filter-black, .jqx-widget-black .jqx-grid-cell-pinned-black{background-color:#333}\r
+.jqx-listbox-feedback-black{ border-top: 1px dashed #ccc;}\r
+.jqx-combobox-input-black, .jqx-combobox-content-black, .jqx-input-black, .jqx-input-content-black{background: #f7f7f7; color: #000;}\r
+.jqx-widget-black, .jqx-widget-header-black, .jqx-widget-content-black{-webkit-background-clip: padding-box; background-clip: padding-box;}\r
+.jqx-fill-state-focus-black .jqx-widget-content{border-color: #000;}   \r
+.jqx-radiobutton-check-checked-black{background: #fff;}\r
+.jqx-icon-arrow-first-black\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-black\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-black.jqx-grid-cell-selected-black>.jqx-grid-group-expand-black,\r
+.jqx-grid-cell-black.jqx-grid-cell-hover-black>.jqx-grid-group-expand-black {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-black.jqx-grid-cell-selected-black>.jqx-grid-group-collapse-black,\r
+.jqx-grid-cell-black.jqx-grid-cell-hover-black>.jqx-grid-group-collapse-black {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-black.jqx-grid-cell-selected-black>.jqx-grid-group-collapse-rtl-black,\r
+.jqx-grid-cell-black.jqx-grid-cell-hover-black>.jqx-grid-group-collapse-rtl-black {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-black.jqx-grid-cell-selected-black>.jqx-grid-group-expand-rtl-black,\r
+.jqx-grid-cell-black.jqx-grid-cell-hover-black>.jqx-grid-group-expand-rtl-black {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-black, .jqx-icon-calendar-hover-black, .jqx-icon-calendar-pressed-black {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-black, .jqx-icon-time-hover-black, .jqx-icon-time-pressed-black {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+\r
+.jqx-icon-delete-black\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-black\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-black\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-black\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-black\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-black\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+.jqx-menu-minimized-button-black {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-black {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-black\r
+{\r
+    background-color: #000;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-black\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-black\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-black, .jqx-scheduler-time-column-black, .jqx-scheduler-toolbar-black\r
+{\r
+    background: #35353A !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-black .jqx-scheduler-middle-cell-black, .jqx-scheduler-middle-cell-black {\r
+    border-bottom-color: #35353A !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.blackberry.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.blackberry.css
new file mode 100644 (file)
index 0000000..e8da340
--- /dev/null
@@ -0,0 +1,656 @@
+.jqx-rc-tl-blackberry\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+}\r
+.jqx-rc-tr-blackberry\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+.jqx-rc-bl-blackberry\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+.jqx-rc-br-blackberry\r
+{\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-blackberry\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-blackberry\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-blackberry\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-blackberry\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-blackberry\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+.jqx-widget-blackberry {\r
+    font-size: 16px;\r
+    font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+    color: inherit;\r
+}\r
+.jqx-widget-content-blackberry {\r
+   font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+    background-color: #ffffff;\r
+    border-color: #ccc;\r
+    border-color: rgba(0,0,0,0.2);\r
+    font-size: 16px;\r
+    color: #000;\r
+ }\r
+\r
+.jqx-widget-blackberry {\r
+    border-color: #015e98;\r
+}\r
+.jqx-widget-header-blackberry {\r
+    color: #fff;\r
+    background-color: #0076ae;\r
+    border-color: #296b8e;\r
+    font-size: 16px;\r
+    font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+}\r
+.jqx-grid-cell-blackberry {\r
+    font-size: 16px;\r
+}\r
+.jqx-button-blackberry, .jqx-fill-state-normal-blackberry, .jqx-fill-state-hover-blackberry   {\r
+    border-color: #CECACE;\r
+    font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c6c3c6), color-stop(100%, #e7e7e7));\r
+    background: -webkit-linear-gradient(#c6c3c6, #e7e7e7);\r
+    background: -moz-linear-gradient(#c6c3c6, #e7e7e7);\r
+    background: -o-linear-gradient(#c6c3c6, #e7e7e7);\r
+    background: linear-gradient(#c6c3c6, #e7e7e7);\r
+    font-size: 16px;\r
+    color: #000;\r
+}\r
+.jqx-fill-state-pressed-blackberry, .jqx-combobox-multi-item-blackberry {\r
+    background: #2b85a2;\r
+    border-color: #5e5e5e;\r
+    color: #fff;\r
+    font-size: 16px;\r
+    font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+}\r
+.jqx-grid-group-column-blackberry {\r
+    color: #fff;\r
+    background: #0076ae;\r
+    border-color: #296b8e;\r
+}\r
+.jqx-radiobutton-default-blackberry {\r
+   background: #e7e7e7; \r
+}\r
+.jqx-button-blackberry {\r
+    border-width: 2px;\r
+    -webkit-border-radius: 5px;\r
+    -moz-border-radius: 5px;\r
+    -ms-border-radius: 5px;\r
+    -o-border-radius: 5px;\r
+    border-radius: 5px;\r
+}\r
+.jqx-widget-blackberry .jqx-grid-column-menubutton-blackberry, .jqx-grid-column-menubutton-blackberry {\r
+    background-color: transparent;\r
+    border-color: #0076ae;\r
+}\r
+\r
+.jqx-calendar-row-header-blackberry, .jqx-calendar-top-left-header-blackberry {\r
+    background-color: #f0f0f0;\r
+    border: 0px solid rgba(0,0,0,0.2);\r
+}\r
+\r
+.jqx-calendar-column-header-blackberry {\r
+    background-color: #FFF;\r
+    border-top: 1px solid #FFF;\r
+    border-bottom: 1px solid #e9e9e9;\r
+}\r
+\r
+.jqx-scrollbar-state-normal-blackberry {\r
+    background-color: #f8f8f8;\r
+    border: 1px solid #f8f8f8;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-normal-blackberry, .jqx-scrollbar-thumb-state-normal-horizontal-blackberry {\r
+    background: #9b9b9b;\r
+    border-color: #b3b3b3;\r
+    -moz-border-radius: 10px;\r
+    -webkit-border-radius: 10px;\r
+    border-radius: 10px;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-hover-blackberry, .jqx-scrollbar-thumb-state-hover-horizontal-blackberry {\r
+    background: #e6e6e6;\r
+    border-color: #b3b3b3;\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+\r
+.jqx-progressbar-blackberry {\r
+    background: #f7f7f7 !important;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-progressbar-value-blackberry, .jqx-splitter-collapse-button-horizontal-blackberry {\r
+    background-color: #00aae7;\r
+    background-repeat: repeat-x;\r
+    background-image: linear-gradient(to bottom, #00aae7, #00aae7);\r
+}\r
+\r
+.jqx-splitter-collapse-button-vertical-blackberry, .jqx-progressbar-value-vertical-blackberry {\r
+    background-color: #00aae7;\r
+    background-repeat: repeat-x;\r
+    background-image: linear-gradient(to right, #00aae7, #00aae7);\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-pressed-blackberry, .jqx-splitter-splitbar-vertical-blackberry, .jqx-splitter-splitbar-horizontal-blackberry, .jqx-scrollbar-thumb-state-pressed-horizontal-blackberry {\r
+    background: #d9d9d9;\r
+    border-color: #b3b3b3;\r
+     box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+\r
+.jqx-grid-column-sortdescbutton-blackberry, jqx-grid-column-filterbutton-blackberry, .jqx-grid-column-sortascbutton-blackberry {\r
+    background-color: transparent;\r
+    border-style: solid;\r
+    border-width: 0px 0px 0px 0px;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-slider-rangebar-blackberry {\r
+    background: #cccccc;\r
+}\r
+\r
+.jqx-menu-vertical-blackberry {\r
+    background: #ffffff;\r
+    filter: none;\r
+}\r
+\r
+.jqx-checkbox-check-checked-blackberry {\r
+    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAAcklEQVQY02NgwA/YoJgoEA/Es4DYgJBCJSBeD8SboRinBiYg7kZS2IosyQ/Eakh8LySFq4FYHFlxGRBvBOJYqMRqJMU+yApNkSRAeC0Sux3dfSCTetE0wKyXxOWhMKhTYIr9CAUXyJMzgLgBagBBgDPGAI2LGdNt0T1AAAAAAElFTkSuQmCC');\r
+}\r
+.jqx-checkbox-hover {\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+.jqx-combobox-content-blackberry, .jqx-input-blackberry {\r
+}\r
+\r
+.jqx-combobox-content-blackberry {\r
+    border-color: #cccccc;\r
+    border-color: rgba(0,0,0,0.2);\r
+}\r
+\r
+.jqx-grid-bottomright-blackberry, .jqx-panel-bottomright-blackberry, .jqx-listbox-bottomright-blackberry {\r
+    background-color: #efefef;\r
+}\r
+.jqx-listitem-state-normal-touch-blackberry {\r
+    padding-top: 5px;\r
+    padding-bottom: 5px;\r
+}\r
+.jqx-window-blackberry, .jqx-tooltip-blackberry {\r
+    box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);\r
+}\r
+\r
+.jqx-docking-blackberry .jqx-window-blackberry {\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-docking-panel-blackberry .jqx-window-blackberry {\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-radiobutton-blackberry {\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+    background: none;\r
+}\r
+\r
+.jqx-radiobutton-blackberry-blackberry, .jqx-radiobutton-hover-blackberry {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+}\r
+\r
+.jqx-radiobutton-check-checked-blackberry {\r
+    filter: none;\r
+    background: #666;\r
+    background-repeat: no-repeat;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-radiobutton-check-indeterminate-blackberry {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-radiobutton-check-indeterminate-disabled-blackberry {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-slider-track-horizontal-blackberry, .jqx-slider-track-vertical-blackberry {\r
+    border-color: #cccccc;\r
+    background: #f0f0f0;\r
+}\r
+\r
+.jqx-slider-button-blackberry {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-popup-blackberry {\r
+    border: 1px solid #ccc;\r
+    *border-right-width: 2px;\r
+    *border-bottom-width: 2px;\r
+    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15);\r
+}\r
+.jqx-grid-column-sortascbutton-blackberry, .jqx-expander-arrow-bottom-blackberry, .jqx-window-collapse-button-blackberry, .jqx-menu-item-arrow-up-blackberry, .jqx-menu-item-arrow-up-selected-blackberry, .jqx-menu-item-arrow-top-up-blackberry, .jqx-icon-arrow-up-blackberry, .jqx-icon-arrow-up-hover-blackberry, .jqx-icon-arrow-up-selected-blackberry {\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-widget-blackberry .jqx-grid-group-expand-blackberry, .jqx-grid-group-expand-blackberry, .jqx-grid-column-menubutton-blackberry, .jqx-grid-column-sortdescbutton-blackberry, .jqx-expander-arrow-top-blackberry, .jqx-window-collapse-button-collapsed-blackberry, .jqx-menu-item-arrow-down-blackberry, .jqx-menu-item-arrow-down-selected-blackberry, .jqx-menu-item-arrow-down-blackberry, .jqx-icon-arrow-down-blackberry, .jqx-icon-arrow-down-hover-blackberry, .jqx-icon-arrow-down-selected-blackberry {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-tabs-arrow-left-blackberry, .jqx-menu-item-arrow-left-selected-blackberry, .jqx-menu-item-arrow-top-left, .jqx-icon-arrow-left-blackberry, .jqx-icon-arrow-down-left-blackberry, .jqx-icon-arrow-left-selected-blackberry {\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-widget-blackberry .jqx-grid-group-collapse-blackberry, .jqx-grid-group-collapse-blackberry, .jqx-tabs-arrow-right-blackberry, .jqx-menu-item-arrow-right-selected-blackberry, .jqx-menu-item-arrow-top-right-blackberry, .jqx-icon-arrow-right-blackberry, .jqx-icon-arrow-right-hover-blackberry, .jqx-icon-arrow-right-selected-blackberry {\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-item-arrow-collapse-blackberry {\r
+    background-image: url('images/icon-right.png') !important;\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-item-arrow-collapse-rtl-blackberry, .jqx-tree-item-arrow-collapse-hover-rtl-blackberry {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-menu-item-arrow-left-selected-blackberry {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-menu-item-arrow-right-selected-blackberry {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-input-button-content-blackberry\r
+{  \r
+    font-size: 13px;\r
+}\r
+.jqx-input-button-header-blackberry {\r
+    padding-top: 2px !important;\r
+    padding-bottom: 2px !important;\r
+}\r
+.jqx-widget .jqx-grid-cell, .jqx-widget .jqx-grid-column-header, .jqx-widget .jqx-grid-group-cell {border-color: #ccc; border-color: rgba(0,0,0,0.2);}\r
+.jqx-combobox-content-blackberry, .jqx-input-blackberry, .jqx-input-group-addon-blackberry {\r
+    border-color: #cccccc;\r
+    border-color: rgba(0,0,0,0.2);\r
+    color: #555555;\r
+    background-color: #ffffff;\r
+    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\r
+    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\r
+}\r
+\r
+.jqx-combobox-content-blackberry, .jqx-combobox-blackberry, .jqx-combobox-state-normal-blackberry {\r
+    border-color: #cccccc;\r
+    border-color: rgba(0,0,0,0.2);\r
+}\r
+\r
+.jqx-combobox-content-focus-blackberry, .jqx-combobox-state-focus-blackberry, .jqx-fill-state-focus-blackberry,\r
+.jqx-numberinput-focus-blackberry {\r
+    outline: none;\r
+    border-color: #959595;\r
+}\r
+\r
+input[type="text"].jqx-input-blackberry:-moz-placeholder, input[type="text"].jqx-widget-content-blackberry:-moz-placeholder, input[type="textarea"].jqx-widget-content-blackberry:-moz-placeholder, textarea.jqx-input-blackberry:-moz-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="text"].jqx-input-blackberry:-webkit-input-placeholder, input[type="text"].jqx-widget-content-blackberry:-webkit-input-placeholder, input[type="textarea"].jqx-widget-content-blackberry:-webkit-input-placeholder, textarea.jqx-input-blackberry:-webkit-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="text"].jqx-input-blackberry:-ms-input-placeholder, input[type="text"].jqx-widget-content-blackberry:-ms-input-placeholder, input[type="textarea"].jqx-widget-content-blackberry:-ms-input-placeholder, textarea.jqx-input-blackberry:-ms-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+.jqx-slider-rangebar-blackberry {\r
+    border-color: #00aae7;\r
+    background: #00aae7;\r
+}\r
+.jqx-tabs-blackberry {\r
+    border: 1px solid #1a1a1a;\r
+}\r
+.jqx-tabs-title-blackberry {\r
+    background: transparent;\r
+    border-color: transparent;\r
+    border-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    -moz-border-radius: 0px;\r
+    -moz-border-top-left-radius: 0px;\r
+    -moz-border-top-right-radius: 0px;\r
+    -moz-border-bottom-left-radius: 0px;\r
+    -moz-border-bottom-right-radius: 0px;\r
+}\r
+.jqx-tabs-header-blackberry, .jqx-tabs-arrow-background {\r
+    background-color: #1a1a1a;\r
+    background-image: -webkit-gradient(linear,50% 0,50% 100%,color-stop(0,rgba(255,255,255,0.18)),color-stop(1,rgba(255,255,255,0)));\r
+    background-image: -moz-linear-gradient(top,rgba(255,255,255,0.18),rgba(255,255,255,0));\r
+    background-image: linear-gradient(top,rgba(255,255,255,0.18),rgba(255,255,255,0));\r
+    background-image: -ms-linear-gradient(top,rgba(255,255,255,0.18),rgba(255,255,255,0));\r
+    background-image: -o-linear-gradient(top,rgba(255,255,255,0.18),rgba(255,255,255,0));\r
+    color: #fff;\r
+    border-color: #000;\r
+}\r
+.jqx-tabs-title-selected-top-blackberry, .jqx-tabs-selection-tracker-top-blackberry {\r
+    border-bottom: 0px solid transparent;\r
+    border-top: 2px solid #057fe4;\r
+    color: #fff;\r
+    background: #3a3a3a;\r
+    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3f3f3f), color-stop(100%, #353535));\r
+    background-image: -webkit-linear-gradient(top, #3f3f3f, #353535);\r
+    background-image: -moz-linear-gradient(top, #3f3f3f, #353535);\r
+    background-image: -o-linear-gradient(top, #3f3f3f, #353535);\r
+    background-image: linear-gradient(top, #3f3f3f, #353535);\r
+    box-shadow: 0 0px 5px #000;\r
+    -webkit-box-shadow: 0 0px 5px #000;\r
+    padding-top: 4px;\r
+    padding-bottom: 4px;\r
+}\r
+\r
+.jqx-tabs-title-selected-bottom-blackberry, .jqx-tabs-selection-tracker-bottom-blackberry {\r
+    border-top: 2px solid #057fe4;\r
+    color: #fff;\r
+    margin-top: 0px;\r
+    background: #3a3a3a;\r
+    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3f3f3f), color-stop(100%, #353535));\r
+    background-image: -webkit-linear-gradient(top, #3f3f3f, #353535);\r
+    background-image: -moz-linear-gradient(top, #3f3f3f, #353535);\r
+    background-image: -o-linear-gradient(top, #3f3f3f, #353535);\r
+    background-image: linear-gradient(top, #3f3f3f, #353535);\r
+    box-shadow: 0 0px 5px #000;\r
+    -webkit-box-shadow: 0 0px 5px #000;\r
+    padding-top: 4px;\r
+    padding-bottom: 4px;\r
+}\r
+.jqx-tabs-title-hover-top-blackberry, .jqx-tabs-title-hover-bottom-blackberry, .jqx-tabs-header-blackberry\r
+{\r
+    color: #fff;\r
+}\r
+.jqx-expander-arrow-expanded-blackberry, .jqx-icon-arrow-up-selected-blackberry{background-image:url('images/icon-up-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-down-selected-blackberry{background-image:url('images/icon-down-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-left-selected-blackberry{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-right-selected-blackberry{background-image:url('images/icon-right-white.png');background-repeat:no-repeat; background-position:center}\r
+.jqx-grid-column-sortdescbutton-blackberry, jqx-grid-column-filterbutton-blackberry, .jqx-grid-column-sortascbutton-blackberry{ background-color:transparent;  border-style:solid;  border-width:0px 0px 0px 0px;  border-color:#0076ae}\r
+\r
+.jqx-menu-item-arrow-right-selected-blackberry{background-image:url(images/icon-right-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-down-selected-blackberry{background-image:url(images/icon-down-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-up-selected-blackberry{background-image:url(images/icon-up-white.png);background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-left-selected-blackberry{background-image:url(images/icon-left-white.png); background-position:0 50%; background-repeat:no-repeat}\r
+\r
+.jqx-button-blackberry .jqx-icon-arrow-left-blackberry {\r
+    background-image:url('images/icon-left.png');\r
+}\r
+.jqx-button-blackberry .jqx-icon-arrow-right-blackberry {\r
+    background-image:url('images/icon-right.png');\r
+}\r
+.jqx-listmenu-item-blackberry.jqx-fill-state-normal-blackberry .jqx-icon-arrow-left-blackberry {\r
+    background-image:url('images/icon-left.png');\r
+}\r
+.jqx-listmenu-item-blackberry.jqx-fill-state-normal-blackberry .jqx-icon-arrow-right-blackberry {\r
+    background-image:url('images/icon-right.png');\r
+}\r
+.jqx-listmenu-item-blackberry.jqx-fill-state-pressed-blackberry .jqx-icon-arrow-left-blackberry {\r
+    background-image:url('images/icon-left-white.png');\r
+}\r
+.jqx-listmenu-item-blackberry.jqx-fill-state-pressed-blackberry .jqx-icon-arrow-right-blackberry {\r
+    background-image:url('images/icon-right-white.png');\r
+}\r
+.jqx-listmenu-header-label-blackberry {\r
+    font-size: 24px;\r
+    margin-left: -5px;\r
+}\r
+.jqx-listmenu-item-label-blackberry {\r
+    display: inline-block;\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-listmenu-item-blackberry a:link, .jqx-listmenu-item-blackberry a:visited {\r
+    display: inline-block;\r
+    text-decoration: none;\r
+    color: inherit;\r
+    font-size: 16px;\r
+    width: 100%;\r
+    height: 100%;\r
+    padding: 15px;\r
+}\r
+.jqx-listmenu-item-blackberry {\r
+    padding: 0px;\r
+}\r
+.jqx-listmenu-separator-blackberry {\r
+    font-size: 16px; \r
+    font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+}\r
+\r
+.jqx-grid-column-sortascbutton-blackberry, .jqx-window-collapse-button-blackberry, .jqx-menu-item-arrow-up-selected-blackberry, .jqx-menu-item-arrow-top-up-blackberry, .jqx-icon-arrow-up-selected-blackberry{background-image:url('images/icon-up-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-grid-column-menubutton-blackberry, .jqx-grid-column-sortdescbutton-blackberry, .jqx-window-collapse-button-collapsed-blackberry, .jqx-menu-item-arrow-down-selected-blackberry, .jqx-menu-item-arrow-down-blackberry, .jqx-icon-arrow-down-selected-blackberry{background-image:url('images/icon-down-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-tabs-arrow-left-blackberry, .jqx-menu-item-arrow-left-selected-blackberry, .jqx-icon-arrow-left-blackberry, .jqx-menu-item-arrow-top-left-blackberry{background-image:url('images/icon-left-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-tabs-arrow-right-blackberry, .jqx-menu-item-arrow-right-selected-blackberry, .jqx-menu-item-arrow-top-right-blackberry, .jqx-icon-arrow-right-blackberry, .jqx-icon-arrow-right-hover-blackberry, .jqx-icon-arrow-right-selected-blackberry{background-image:url('images/icon-right-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-window-close-button-blackberry, .jqx-icon-close-blackberry, .jqx-tabs-close-button-blackberry, .jqx-tabs-close-button-hover-blackberry, .jqx-tabs-close-button-selected-blackberry{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+.jqx-button-blackberry {\r
+   padding: 10px 7px;\r
+}\r
+input[type=text].jqx-input-blackberry, input[type=password].jqx-input-blackberry{\r
+   font-size: 16px; \r
+    font-family: Slate Pro, Slate, Helvetica, sans-serif;\r
+}\r
+\r
+.jqx-group-button-normal-blackberry{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+     -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+.jqx-progressbar-text-blackberry {\r
+    font-size: 16px;\r
+}\r
+.jqx-slider-button-blackberry\r
+{\r
+    border-radius: 100%;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    padding: 4px !important;\r
+}\r
+.jqx-slider-slider-blackberry {\r
+    width: 25px;\r
+    height: 25px;\r
+    margin-top: -10px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+.jqx-slider-button-blackberry.jqx-fill-state-pressed-blackberry .jqx-icon-arrow-right-blackberry {\r
+      background-image: url('images/icon-right-white.png');\r
+}\r
+.jqx-slider-button-blackberry.jqx-fill-state-pressed-blackberry .jqx-icon-arrow-left-blackberry {\r
+      background-image: url('images/icon-left-white.png');\r
+}\r
+.jqx-slider-button-blackberry.jqx-fill-state-pressed-blackberry .jqx-icon-arrow-up-blackberry {\r
+      background-image: url('images/icon-up-white.png');\r
+}\r
+.jqx-slider-button-blackberry.jqx-fill-state-pressed-blackberry .jqx-icon-arrow-down-blackberry {\r
+      background-image: url('images/icon-down-white.png');\r
+}\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-selected-blackberry>.jqx-grid-group-expand-blackberry,\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-hover-blackberry>.jqx-grid-group-expand-blackberry {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-selected-blackberry>.jqx-grid-group-collapse-blackberry,\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-hover-blackberry>.jqx-grid-group-collapse-blackberry {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-selected-blackberry>.jqx-grid-group-collapse-rtl-blackberry,\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-hover-blackberry>.jqx-grid-group-collapse-rtl-blackberry {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-selected-blackberry>.jqx-grid-group-expand-rtl-blackberry,\r
+.jqx-grid-cell-blackberry.jqx-grid-cell-hover-blackberry>.jqx-grid-group-expand-rtl-blackberry {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-grid-expand-button-blackberry, .jqx-tree-grid-collapse-button-blackberry {\r
+    margin-top: 3px;\r
+}\r
+.jqx-tree-grid-checkbox-blackberry {\r
+    margin-top: 1px;\r
+}\r
+.jqx-icon-arrow-first-selected-blackberry\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-selected-blackberry\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-button-blackberry .jqx-icon-arrow-left-selected-blackberry, .jqx-icon-arrow-left-selected-blackberry\r
+{\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-button-blackberry .jqx-icon-arrow-right-selected-blackberry, .jqx-icon-arrow-right-selected-blackberry\r
+{\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+ .jqx-icon-calendar-pressed-blackberry {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+ .jqx-icon-time-pressed-blackberry {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+ .jqx-file-upload-blackberry .jqx-icon-arrow-up-blackberry {\r
+  background-image: url('images/icon-up-white.png');\r
+}\r
+.jqx-file-upload-file-name-blackberry{padding:3px;}\r
+.jqx-file-upload-file-row-blackberry{ height: 40px;}\r
+.jqx-layout-blackberry\r
+{\r
+    background-color: #296b8e;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-blackberry\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-blackberry\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.bootstrap.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.bootstrap.css
new file mode 100644 (file)
index 0000000..44fa19d
--- /dev/null
@@ -0,0 +1,927 @@
+/*Rounded Corners*/\r
+/*top-left rounded Corners*/\r
+.jqx-rc-tl-bootstrap {\r
+    -moz-border-radius-topleft: 4px;\r
+    -webkit-border-top-left-radius: 4px;\r
+    border-top-left-radius: 4px;\r
+}\r
+/*top-right rounded Corners*/\r
+.jqx-rc-tr-bootstrap {\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+}\r
+/*bottom-left rounded Corners*/\r
+.jqx-rc-bl-bootstrap {\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+}\r
+/*bottom-right rounded Corners*/\r
+.jqx-rc-br-bootstrap {\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-bootstrap {\r
+    -moz-border-radius-topleft: 4px;\r
+    -webkit-border-top-left-radius: 4px;\r
+    border-top-left-radius: 4px;\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-bootstrap {\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-bootstrap {\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-bootstrap {\r
+    -moz-border-radius-topleft: 4px;\r
+    -webkit-border-top-left-radius: 4px;\r
+    border-top-left-radius: 4px;\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-bootstrap {\r
+    -moz-border-radius: 4px;\r
+    -webkit-border-radius: 4px;\r
+    border-radius: 4px;\r
+}\r
+\r
+.jqx-widget-bootstrap, .jqx-widget-header-bootstrap, .jqx-fill-state-normal-bootstrap,\r
+.jqx-widget-content-bootstrap, .jqx-fill-state-hover-bootstrap, .jqx-fill-state-pressed-bootstrap {\r
+    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\r
+    -webkit-transition: box-shadow linear 0.2s;\r
+    -moz-transition: box-shadow linear 0.1s;\r
+    -o-transition: box-shadow linear 0.1s;\r
+    transition: box-shadow linear 0.1s;\r
+}\r
+\r
+.jqx-widget-content-bootstrap {\r
+    background-color: #ffffff;\r
+    border-color: #e6e6e6;\r
+}\r
+\r
+.jqx-widget-header-bootstrap {\r
+    background-color: #f5f5f5;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap {\r
+    color: #333333;\r
+    background-color: #ffffff;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-button-bootstrap {\r
+     padding: 4px 12px;\r
+    -webkit-border-radius: 4px;\r
+    -moz-border-radius: 4px;\r
+    border-radius: 4px;\r
+    *zoom: 1;\r
+    color: #333333;\r
+    background-color: #ffffff;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-combobox-multi-item-bootstrap {\r
+    padding: 1px 3px;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap, .jqx-fill-state-pressed-bootstrap {\r
+    color: #333333;\r
+    background-color: #ebebeb;\r
+    border-color: #adadad;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap, .jqx-fill-state-focus-bootstrap {\r
+    color: #333333;\r
+    text-decoration: none;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap {\r
+    background-image: none;\r
+    outline: 0;\r
+    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+}\r
+\r
+.jqx-grid-cell-bootstrap {\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-grid-column-menubutton-bootstrap {\r
+    background-color: transparent;\r
+}\r
+\r
+.jqx-calendar-row-header-bootstrap, .jqx-calendar-top-left-header-bootstrap {\r
+    background-color: #f0f0f0;\r
+    border: 0px solid #f2f2f2;\r
+}\r
+\r
+.jqx-calendar-column-header-bootstrap {\r
+    background-color: #FFF;\r
+    border-top: 1px solid #FFF;\r
+    border-bottom: 1px solid #e9e9e9;\r
+}\r
+\r
+.jqx-expander-header-bootstrap {\r
+    background: #fff;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    border-color: #e6e6e6;\r
+}\r
+\r
+.jqx-widget-bootstrap, .jqx-widget-header-bootstrap, .jqx-widget-content-bootstrap {\r
+    -webkit-background-clip: padding-box;\r
+    -moz-background-clip: padding-box;\r
+    background-clip: padding-box;\r
+}\r
+\r
+.jqx-scrollbar-state-normal-bootstrap {\r
+    background-color: #f0f0f0;\r
+    border: 1px solid #f0f0f0;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-normal-bootstrap, .jqx-scrollbar-thumb-state-normal-horizontal-bootstrap {\r
+    background: #f5f5f5;\r
+    border-color: #b3b3b3;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-hover-bootstrap, .jqx-scrollbar-thumb-state-hover-horizontal-bootstrap {\r
+    background: #e6e6e6;\r
+    border-color: #b3b3b3;\r
+}\r
+\r
+.jqx-progressbar-bootstrap {\r
+    background: #f7f7f7 !important;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-progressbar-value-bootstrap, .jqx-splitter-collapse-button-horizontal-bootstrap {\r
+    background-color: #428bca;\r
+}\r
+\r
+.jqx-splitter-collapse-button-vertical-bootstrap, .jqx-progressbar-value-vertical-bootstrap {\r
+    background-color: #428bca;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-pressed-bootstrap, .jqx-splitter-splitbar-vertical-bootstrap, .jqx-splitter-splitbar-horizontal-bootstrap, .jqx-scrollbar-thumb-state-pressed-horizontal-bootstrap {\r
+    background: #d9d9d9;\r
+    border-color: #b3b3b3;\r
+}\r
+\r
+.jqx-grid-column-sortdescbutton-bootstrap, jqx-grid-column-filterbutton-bootstrap, .jqx-grid-column-sortascbutton-bootstrap {\r
+    background-color: transparent;\r
+    border-style: solid;\r
+    border-width: 0px 0px 0px 0px;\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-slider-rangebar-bootstrap {\r
+    background: #cccccc;\r
+}\r
+\r
+.jqx-menu-vertical-bootstrap {\r
+    background: #ffffff;\r
+    filter: none;\r
+}\r
+\r
+.jqx-checkbox-check-checked-bootstrap {\r
+    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAAcklEQVQY02NgwA/YoJgoEA/Es4DYgJBCJSBeD8SboRinBiYg7kZS2IosyQ/Eakh8LySFq4FYHFlxGRBvBOJYqMRqJMU+yApNkSRAeC0Sux3dfSCTetE0wKyXxOWhMKhTYIr9CAUXyJMzgLgBagBBgDPGAI2LGdNt0T1AAAAAAElFTkSuQmCC');\r
+}\r
+\r
+.jqx-combobox-content-bootstrap, .jqx-input-bootstrap {\r
+}\r
+\r
+.jqx-combobox-content-bootstrap {\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-fill-state-focus-bootstrap, .jqx-combobox-content-focus-bootstrap, .jqx-numberinput-focus-bootstrap {\r
+    outline: none;\r
+    border-color: #b3b3b3;\r
+}\r
+\r
+.jqx-grid-bottomright-bootstrap, .jqx-panel-bottomright-bootstrap, .jqx-listbox-bottomright-bootstrap {\r
+    background-color: #efefef;\r
+}\r
+\r
+.jqx-tabs-title-bootstrap,\r
+.jqx-tabs-title-bottom-bootstrap, .jqx-expander-header-bootstrap {\r
+    color: #0088cc !important;\r
+}\r
+\r
+    .jqx-expander-header-bootstrap:hover {\r
+        color: #005580 !important;\r
+        cursor: pointer;\r
+    }\r
+\r
+.jqx-tabs-title-hover-top-bootstrap,\r
+.jqx-tabs-title-hover-bottom-bootstrap {\r
+    color: #005580 !important;\r
+    background: #eee;\r
+    border-color: #eee;\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+\r
+.jqx-tabs-title-selected-top-bootstrap, .jqx-tabs-selection-tracker-top-bootstrap {\r
+    border-color: #ddd;\r
+    border-bottom: 1px solid #fff;\r
+    filter: none;\r
+    color: #555555 !important;\r
+    background: #fff;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-tabs-title-selected-bottom-bootstrap, .jqx-tabs-selection-tracker-bottom-bootstrap {\r
+    border-color: #ddd;\r
+    border-top: 1px solid #fff;\r
+    filter: none;\r
+    color: #555555 !important;\r
+    background: #fff;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-tabs-header-bootstrap {\r
+    background: #fff;\r
+    border-color: #ddd;\r
+    -webkit-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-tabs-bootstrap {\r
+    border-color: #ddd;\r
+}\r
+\r
+.jqx-window-bootstrap, .jqx-tooltip-bootstrap {\r
+    box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);\r
+}\r
+\r
+.jqx-docking-bootstrap .jqx-window-bootstrap {\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-docking-panel-bootstrap .jqx-window-bootstrap {\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-radiobutton-bootstrap {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+    background: none;\r
+}\r
+\r
+.jqx-radiobutton-bootstrap-bootstrap, .jqx-radiobutton-hover-bootstrap {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+}\r
+\r
+.jqx-radiobutton-check-checked-bootstrap {\r
+    filter: none;\r
+    background: #666;\r
+    background-repeat: no-repeat;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-radiobutton-check-indeterminate-bootstrap {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-radiobutton-check-indeterminate-disabled-bootstrap {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-slider-track-horizontal-bootstrap, .jqx-slider-track-vertical-bootstrap {\r
+    border-color: #cccccc;\r
+    background: #f0f0f0;\r
+}\r
+\r
+.jqx-slider-button-bootstrap {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap.jqx-primary {\r
+    color: #ffffff;\r
+    background-color: #428bca;\r
+    border-color: #357ebd;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap.jqx-primary {\r
+    color: #ffffff;\r
+    background-color: #3276b1;\r
+    border-color: #285e8e;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap.jqx-primary {\r
+    color: #ffffff;\r
+    background-color: #3276b1;\r
+    border-color: #285e8e;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap.jqx-warning {\r
+    color: #ffffff;\r
+    background-color: #f0ad4e;\r
+    border-color: #eea236;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap.jqx-warning {\r
+    color: #ffffff;\r
+    background-color: #ed9c28;\r
+    border-color: #d58512;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap.jqx-warning {\r
+    color: #ffffff;\r
+    background-color: #ed9c28;\r
+    border-color: #d58512;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap.jqx-danger {\r
+    color: #ffffff;\r
+    background-color: #d9534f;\r
+    border-color: #d43f3a;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap.jqx-danger {\r
+    color: #ffffff;\r
+    background-color: #d2322d;\r
+    border-color: #ac2925;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap.jqx-danger {\r
+    color: #ffffff;\r
+    background-color: #d2322d;\r
+    border-color: #ac2925;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap.jqx-success {\r
+    color: #ffffff;\r
+    background-color: #5cb85c;\r
+    border-color: #4cae4c;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap.jqx-success {\r
+    color: #ffffff;\r
+    background-color: #47a447;\r
+    border-color: #398439;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap.jqx-success {\r
+    color: #ffffff;\r
+    background-color: #47a447;\r
+    border-color: #398439;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap.jqx-info {\r
+    color: #ffffff;\r
+    background-color: #5bc0de;\r
+    border-color: #46b8da;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap.jqx-info {\r
+    color: #ffffff;\r
+    background-color: #39b3d7;\r
+    border-color: #269abc;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap.jqx-info {\r
+    color: #ffffff;\r
+    background-color: #39b3d7;\r
+    border-color: #269abc;\r
+}\r
+\r
+.jqx-fill-state-normal-bootstrap.jqx-inverse {\r
+    color: #ffffff;\r
+    background-color: #222222;\r
+    border-color: #080808;\r
+}\r
+\r
+.jqx-fill-state-hover-bootstrap.jqx-inverse {\r
+    color: #ffffff;\r
+    background-color: #080808;\r
+}\r
+\r
+.jqx-fill-state-pressed-bootstrap.jqx-inverse {\r
+    color: #ffffff;\r
+    background-color: #080808;\r
+}\r
+\r
+/*applied to a list item when the item is selected.*/\r
+.jqx-listitem-state-hover-bootstrap, .jqx-menu-item-hover-bootstrap, .jqx-tree-item-hover-bootstrap, .jqx-calendar-cell-hover-bootstrap, .jqx-grid-cell-hover-bootstrap,\r
+.jqx-menu-vertical-bootstrap .jqx-menu-item-top-hover-bootstrap, .jqx-input-popup-bootstrap .jqx-fill-state-hover-bootstrap,\r
+.jqx-input-button-header-bootstrap, .jqx-input-popup-bootstrap .jqx-fill-state-pressed-bootstrap,\r
+.jqx-input-button-header-bootstrap {\r
+    color: #ffffff !important;\r
+    color: #333333 !important;\r
+    background-color: #ebebeb !important;\r
+    border-color: #ebebeb !important;\r
+    outline: 0;\r
+}\r
+.jqx-grid-cell-hover-bootstrap {\r
+    border-color: #ccc !important;\r
+}\r
+.jqx-listitem-state-selected-bootstrap, .jqx-menu-item-selected-bootstrap, .jqx-tree-item-selected-bootstrap, .jqx-calendar-cell-selected-bootstrap, .jqx-grid-cell-selected-bootstrap,\r
+.jqx-menu-vertical-bootstrap .jqx-menu-item-top-selected-bootstrap, .jqx-grid-selectionarea-bootstrap {\r
+    color: #ffffff !important;\r
+    background-color: #428bca !important;\r
+    border-color: #357ebd !important;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-expanded-bootstrap {\r
+    -moz-border-radius-topleft: 4px !important;\r
+    -webkit-border-top-left-radius: 4px !important;\r
+    border-top-left-radius: 4px !important;\r
+    -moz-border-radius-topright: 4px !important;\r
+    -webkit-border-top-right-radius: 4px !important;\r
+    border-top-right-radius: 4px !important;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-expanded-bootstrap {\r
+    -moz-border-radius-bottomleft: 4px !important;\r
+    -webkit-border-bottom-left-radius: 4px !important;\r
+    border-bottom-left-radius: 4px !important;\r
+    -moz-border-radius-bottomright: 4px !important;\r
+    -webkit-border-bottom-right-radius: 4px !important;\r
+    border-bottom-right-radius: 4px !important;\r
+}\r
+\r
+.jqx-popup-bootstrap.jqx-listbox-bootstrap, .jqx-popup-bootstrap.jqx-calendar-bootstrap {\r
+    top: 2px !important;\r
+    position: relative;\r
+}\r
+\r
+.jqx-popup-up-bootstrap.jqx-listbox-bootstrap, .jqx-popup-up-bootstrap.jqx-calendar-bootstrap {\r
+    top: 23px !important;\r
+    position: relative;\r
+}\r
+\r
+.jqx-menu-popup-bootstrap > div:first-child {\r
+    padding-bottom: 15px !important;\r
+    padding-right: 15px !important;\r
+}\r
+\r
+.jqx-menu-dropdown-bootstrap, .jqx-popup-bootstrap.jqx-dropdownbutton-popup-bootstrap {\r
+    margin-top: 2px !important;\r
+}\r
+\r
+.jqx-popup-bootstrap {\r
+    border: 1px solid #ccc;\r
+    *border-right-width: 2px;\r
+    *border-bottom-width: 2px;\r
+    -webkit-border-radius: 4px !important;\r
+    -moz-border-radius: 4px !important;\r
+    border-radius: 4px !important;\r
+    -webkit-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    -webkit-background-clip: padding-box !important;\r
+    -moz-background-clip: padding !important;\r
+    background-clip: padding-box !important;\r
+}\r
+\r
+.jqx-widget-bootstrap .jqx-grid-cell-bootstrap, .jqx-widget-bootstrap .jqx-grid-column-header-bootstrap, .jqx-widget-bootstrap .jqx-grid-group-cell {\r
+    border-color: #ccc;\r
+}\r
+\r
+.jqx-widget-bootstrap .jqx-grid-column-menubutton-bootstrap, .jqx-widget-bootstrap .jqx-grid-column-sortascbutton-bootstrap, .jqx-widget-bootstrap .jqx-grid-column-sortdescbutton-bootstrap, .jqx-widget .jqx-grid-column-filterbutton-bootstrap {\r
+    border-color: #ccc;\r
+}\r
+\r
+.jqx-grid-column-sortascbutton-bootstrap, .jqx-expander-arrow-bottom-bootstrap, .jqx-window-collapse-button-bootstrap, .jqx-menu-item-arrow-up-bootstrap, .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-menu-item-arrow-top-up-bootstrap, .jqx-icon-arrow-up-bootstrap, .jqx-icon-arrow-up-hover-bootstrap, .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-widget-bootstrap .jqx-grid-group-expand-bootstrap, .jqx-grid-group-expand-bootstrap, .jqx-grid-column-menubutton-bootstrap, .jqx-grid-column-sortdescbutton-bootstrap, .jqx-expander-arrow-top-bootstrap, .jqx-window-collapse-button-collapsed-bootstrap, .jqx-menu-item-arrow-down-bootstrap, .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-menu-item-arrow-down-bootstrap, .jqx-icon-arrow-down-bootstrap, .jqx-icon-arrow-down-hover-bootstrap, .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-tabs-arrow-left-bootstrap, .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-menu-item-arrow-top-left, .jqx-icon-arrow-left-bootstrap, .jqx-icon-arrow-down-left-bootstrap, .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-widget-bootstrap .jqx-grid-group-collapse-bootstrap, .jqx-grid-group-collapse-bootstrap, .jqx-tabs-arrow-right-bootstrap, .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-menu-item-arrow-top-right-bootstrap, .jqx-icon-arrow-right-bootstrap, .jqx-icon-arrow-right-hover-bootstrap, .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-menu-item-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-menu-item-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-primary .jqx-grid-column-sortascbutton-bootstrap, .jqx-primary .jqx-expander-arrow-bottom-bootstrap, .jqx-primary .jqx-window-collapse-button-bootstrap, .jqx-primary .jqx-menu-item-arrow-up-bootstrap, .jqx-primary .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-primary .jqx-menu-item-arrow-top-up-bootstrap, .jqx-primary .jqx-icon-arrow-up-bootstrap, .jqx-primary .jqx-icon-arrow-up-hover-bootstrap, .jqx-primary .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-primary .jqx-widget-bootstrap .jqx-primary .jqx-grid-group-expand-bootstrap, .jqx-primary .jqx-grid-group-expand-bootstrap, .jqx-primary .jqx-grid-column-menubutton-bootstrap, .jqx-primary .jqx-grid-column-sortdescbutton-bootstrap, .jqx-primary .jqx-expander-arrow-top-bootstrap, .jqx-primary .jqx-window-collapse-button-collapsed-bootstrap, .jqx-primary .jqx-menu-item-arrow-down-bootstrap, .jqx-primary .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-primary .jqx-menu-item-arrow-down-bootstrap, .jqx-primary .jqx-icon-arrow-down-bootstrap, .jqx-primary .jqx-icon-arrow-down-hover-bootstrap, .jqx-primary .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-primary .jqx-tabs-arrow-left-bootstrap, .jqx-primary .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-primary .jqx-menu-item-arrow-top-left, .jqx-primary .jqx-icon-arrow-left-bootstrap, .jqx-primary .jqx-icon-arrow-down-left-bootstrap, .jqx-primary .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-primary .jqx-widget-bootstrap .jqx-primary .jqx-grid-group-collapse-bootstrap, .jqx-primary .jqx-grid-group-collapse-bootstrap, .jqx-primary .jqx-tabs-arrow-right-bootstrap, .jqx-primary .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-primary .jqx-menu-item-arrow-top-right-bootstrap, .jqx-primary .jqx-icon-arrow-right-bootstrap, .jqx-primary .jqx-icon-arrow-right-hover-bootstrap, .jqx-primary .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-primary .jqx-window-close-button-bootstrap, .jqx-primary .jqx-icon-close-bootstrap, .jqx-primary .jqx-tabs-close-button-bootstrap, .jqx-primary .jqx-tabs-close-button-hover-bootstrap, .jqx-primary .jqx-tabs-close-button-selected-bootstrap {\r
+    background-image: url(images/close_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-primary .jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-primary .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-warning .jqx-grid-column-sortascbutton-bootstrap, .jqx-warning .jqx-expander-arrow-bottom-bootstrap, .jqx-warning .jqx-window-collapse-button-bootstrap, .jqx-warning .jqx-menu-item-arrow-up-bootstrap, .jqx-warning .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-warning .jqx-menu-item-arrow-top-up-bootstrap, .jqx-warning .jqx-icon-arrow-up-bootstrap, .jqx-warning .jqx-icon-arrow-up-hover-bootstrap, .jqx-warning .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-warning .jqx-widget-bootstrap .jqx-warning .jqx-grid-group-expand-bootstrap, .jqx-warning .jqx-grid-group-expand-bootstrap, .jqx-warning .jqx-grid-column-menubutton-bootstrap, .jqx-warning .jqx-grid-column-sortdescbutton-bootstrap, .jqx-warning .jqx-expander-arrow-top-bootstrap, .jqx-warning .jqx-window-collapse-button-collapsed-bootstrap, .jqx-warning .jqx-menu-item-arrow-down-bootstrap, .jqx-warning .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-warning .jqx-menu-item-arrow-down-bootstrap, .jqx-warning .jqx-icon-arrow-down-bootstrap, .jqx-warning .jqx-icon-arrow-down-hover-bootstrap, .jqx-warning .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-warning .jqx-tabs-arrow-left-bootstrap, .jqx-warning .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-warning .jqx-menu-item-arrow-top-left, .jqx-warning .jqx-icon-arrow-left-bootstrap, .jqx-warning .jqx-icon-arrow-down-left-bootstrap, .jqx-warning .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-warning .jqx-widget-bootstrap .jqx-warning .jqx-grid-group-collapse-bootstrap, .jqx-warning .jqx-grid-group-collapse-bootstrap, .jqx-warning .jqx-tabs-arrow-right-bootstrap, .jqx-warning .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-warning .jqx-menu-item-arrow-top-right-bootstrap, .jqx-warning .jqx-icon-arrow-right-bootstrap, .jqx-warning .jqx-icon-arrow-right-hover-bootstrap, .jqx-warning .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-warning .jqx-window-close-button-bootstrap, .jqx-warning .jqx-icon-close-bootstrap, .jqx-warning .jqx-tabs-close-button-bootstrap, .jqx-warning .jqx-tabs-close-button-hover-bootstrap, .jqx-warning .jqx-tabs-close-button-selected-bootstrap {\r
+    background-image: url(images/close_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-warning .jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-warning .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-danger .jqx-grid-column-sortascbutton-bootstrap, .jqx-danger .jqx-expander-arrow-bottom-bootstrap, .jqx-danger .jqx-window-collapse-button-bootstrap, .jqx-danger .jqx-menu-item-arrow-up-bootstrap, .jqx-danger .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-danger .jqx-menu-item-arrow-top-up-bootstrap, .jqx-danger .jqx-icon-arrow-up-bootstrap, .jqx-danger .jqx-icon-arrow-up-hover-bootstrap, .jqx-danger .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-danger .jqx-widget-bootstrap .jqx-danger .jqx-grid-group-expand-bootstrap, .jqx-danger .jqx-grid-group-expand-bootstrap, .jqx-danger .jqx-grid-column-menubutton-bootstrap, .jqx-danger .jqx-grid-column-sortdescbutton-bootstrap, .jqx-danger .jqx-expander-arrow-top-bootstrap, .jqx-danger .jqx-window-collapse-button-collapsed-bootstrap, .jqx-danger .jqx-menu-item-arrow-down-bootstrap, .jqx-danger .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-danger .jqx-menu-item-arrow-down-bootstrap, .jqx-danger .jqx-icon-arrow-down-bootstrap, .jqx-danger .jqx-icon-arrow-down-hover-bootstrap, .jqx-danger .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-danger .jqx-tabs-arrow-left-bootstrap, .jqx-danger .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-danger .jqx-menu-item-arrow-top-left, .jqx-danger .jqx-icon-arrow-left-bootstrap, .jqx-danger .jqx-icon-arrow-down-left-bootstrap, .jqx-danger .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-danger .jqx-widget-bootstrap .jqx-danger .jqx-grid-group-collapse-bootstrap, .jqx-danger .jqx-grid-group-collapse-bootstrap, .jqx-danger .jqx-tabs-arrow-right-bootstrap, .jqx-danger .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-danger .jqx-menu-item-arrow-top-right-bootstrap, .jqx-danger .jqx-icon-arrow-right-bootstrap, .jqx-danger .jqx-icon-arrow-right-hover-bootstrap, .jqx-danger .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-danger .jqx-window-close-button-bootstrap, .jqx-danger .jqx-icon-close-bootstrap, .jqx-danger .jqx-tabs-close-button-bootstrap, .jqx-danger .jqx-tabs-close-button-hover-bootstrap, .jqx-danger .jqx-tabs-close-button-selected-bootstrap {\r
+    background-image: url(images/close_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-danger .jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-danger .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-info .jqx-grid-column-sortascbutton-bootstrap, .jqx-info .jqx-expander-arrow-bottom-bootstrap, .jqx-info .jqx-window-collapse-button-bootstrap, .jqx-info .jqx-menu-item-arrow-up-bootstrap, .jqx-info .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-info .jqx-menu-item-arrow-top-up-bootstrap, .jqx-info .jqx-icon-arrow-up-bootstrap, .jqx-info .jqx-icon-arrow-up-hover-bootstrap, .jqx-info .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-info .jqx-widget-bootstrap .jqx-info .jqx-grid-group-expand-bootstrap, .jqx-info .jqx-grid-group-expand-bootstrap, .jqx-info .jqx-grid-column-menubutton-bootstrap, .jqx-info .jqx-grid-column-sortdescbutton-bootstrap, .jqx-info .jqx-expander-arrow-top-bootstrap, .jqx-info .jqx-window-collapse-button-collapsed-bootstrap, .jqx-info .jqx-menu-item-arrow-down-bootstrap, .jqx-info .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-info .jqx-menu-item-arrow-down-bootstrap, .jqx-info .jqx-icon-arrow-down-bootstrap, .jqx-info .jqx-icon-arrow-down-hover-bootstrap, .jqx-info .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-info .jqx-tabs-arrow-left-bootstrap, .jqx-info .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-info .jqx-menu-item-arrow-top-left, .jqx-info .jqx-icon-arrow-left-bootstrap, .jqx-info .jqx-icon-arrow-down-left-bootstrap, .jqx-info .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-info .jqx-widget-bootstrap .jqx-info .jqx-grid-group-collapse-bootstrap, .jqx-info .jqx-grid-group-collapse-bootstrap, .jqx-info .jqx-tabs-arrow-right-bootstrap, .jqx-info .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-info .jqx-menu-item-arrow-top-right-bootstrap, .jqx-info .jqx-icon-arrow-right-bootstrap, .jqx-info .jqx-icon-arrow-right-hover-bootstrap, .jqx-info .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-info .jqx-window-close-button-bootstrap, .jqx-info .jqx-icon-close-bootstrap, .jqx-info .jqx-tabs-close-button-bootstrap, .jqx-info .jqx-tabs-close-button-hover-bootstrap, .jqx-info .jqx-tabs-close-button-selected-bootstrap {\r
+    background-image: url(images/close_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-info .jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-info .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-success .jqx-grid-column-sortascbutton-bootstrap, .jqx-success .jqx-expander-arrow-bottom-bootstrap, .jqx-success .jqx-window-collapse-button-bootstrap, .jqx-success .jqx-menu-item-arrow-up-bootstrap, .jqx-success .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-success .jqx-menu-item-arrow-top-up-bootstrap, .jqx-success .jqx-icon-arrow-up-bootstrap, .jqx-success .jqx-icon-arrow-up-hover-bootstrap, .jqx-success .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-success .jqx-widget-bootstrap .jqx-success .jqx-grid-group-expand-bootstrap, .jqx-success .jqx-grid-group-expand-bootstrap, .jqx-success .jqx-grid-column-menubutton-bootstrap, .jqx-success .jqx-grid-column-sortdescbutton-bootstrap, .jqx-success .jqx-expander-arrow-top-bootstrap, .jqx-success .jqx-window-collapse-button-collapsed-bootstrap, .jqx-success .jqx-menu-item-arrow-down-bootstrap, .jqx-success .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-success .jqx-menu-item-arrow-down-bootstrap, .jqx-success .jqx-icon-arrow-down-bootstrap, .jqx-success .jqx-icon-arrow-down-hover-bootstrap, .jqx-success .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-success .jqx-tabs-arrow-left-bootstrap, .jqx-success .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-success .jqx-menu-item-arrow-top-left, .jqx-success .jqx-icon-arrow-left-bootstrap, .jqx-success .jqx-icon-arrow-down-left-bootstrap, .jqx-success .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-success .jqx-widget-bootstrap .jqx-success .jqx-grid-group-collapse-bootstrap, .jqx-success .jqx-grid-group-collapse-bootstrap, .jqx-success .jqx-tabs-arrow-right-bootstrap, .jqx-success .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-success .jqx-menu-item-arrow-top-right-bootstrap, .jqx-success .jqx-icon-arrow-right-bootstrap, .jqx-success .jqx-icon-arrow-right-hover-bootstrap, .jqx-success .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-success .jqx-window-close-button-bootstrap, .jqx-success .jqx-icon-close-bootstrap, .jqx-success .jqx-tabs-close-button-bootstrap, .jqx-success .jqx-tabs-close-button-hover-bootstrap, .jqx-success .jqx-tabs-close-button-selected-bootstrap {\r
+    background-image: url(images/close_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-success .jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-success .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+.jqx-inverse .jqx-grid-column-sortascbutton-bootstrap, .jqx-inverse .jqx-expander-arrow-bottom-bootstrap, .jqx-inverse .jqx-window-collapse-button-bootstrap, .jqx-inverse .jqx-menu-item-arrow-up-bootstrap, .jqx-inverse .jqx-menu-item-arrow-up-selected-bootstrap, .jqx-inverse .jqx-menu-item-arrow-top-up-bootstrap, .jqx-inverse .jqx-icon-arrow-up-bootstrap, .jqx-inverse .jqx-icon-arrow-up-hover-bootstrap, .jqx-inverse .jqx-icon-arrow-up-selected-bootstrap {\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-inverse .jqx-widget-bootstrap .jqx-inverse .jqx-grid-group-expand-bootstrap, .jqx-inverse .jqx-grid-group-expand-bootstrap, .jqx-inverse .jqx-grid-column-menubutton-bootstrap, .jqx-inverse .jqx-grid-column-sortdescbutton-bootstrap, .jqx-inverse .jqx-expander-arrow-top-bootstrap, .jqx-inverse .jqx-window-collapse-button-collapsed-bootstrap, .jqx-inverse .jqx-menu-item-arrow-down-bootstrap, .jqx-inverse .jqx-menu-item-arrow-down-selected-bootstrap, .jqx-inverse .jqx-menu-item-arrow-down-bootstrap, .jqx-inverse .jqx-icon-arrow-down-bootstrap, .jqx-inverse .jqx-icon-arrow-down-hover-bootstrap, .jqx-inverse .jqx-icon-arrow-down-selected-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-inverse .jqx-tabs-arrow-left-bootstrap, .jqx-inverse .jqx-menu-item-arrow-left-selected-bootstrap, .jqx-inverse .jqx-menu-item-arrow-top-left, .jqx-inverse .jqx-icon-arrow-left-bootstrap, .jqx-inverse .jqx-icon-arrow-down-left-bootstrap, .jqx-inverse .jqx-icon-arrow-left-selected-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-inverse .jqx-widget-bootstrap .jqx-inverse .jqx-grid-group-collapse-bootstrap, .jqx-inverse .jqx-grid-group-collapse-bootstrap, .jqx-inverse .jqx-tabs-arrow-right-bootstrap, .jqx-inverse .jqx-menu-item-arrow-right-selected-bootstrap, .jqx-inverse .jqx-menu-item-arrow-top-right-bootstrap, .jqx-inverse .jqx-icon-arrow-right-bootstrap, .jqx-inverse .jqx-icon-arrow-right-hover-bootstrap, .jqx-inverse .jqx-icon-arrow-right-selected-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-inverse .jqx-window-close-button-bootstrap, .jqx-inverse .jqx-icon-close-bootstrap, .jqx-inverse .jqx-tabs-close-button-bootstrap, .jqx-inverse .jqx-tabs-close-button-hover-bootstrap, .jqx-inverse .jqx-tabs-close-button-selected-bootstrap {\r
+    background-image: url(images/close_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-inverse .jqx-tree-item-arrow-collapse-rtl-bootstrap, .jqx-inverse .jqx-tree-item-arrow-collapse-hover-rtl-bootstrap {\r
+    background-image: url(images/icon-left.png);\r
+}\r
+\r
+\r
+.jqx-input-button-content-bootstrap {\r
+    font-size: 10px;\r
+}\r
+\r
+.jqx-combobox-content-bootstrap, .jqx-input-bootstrap {\r
+    border-color: #cccccc;\r
+    color: #555555;\r
+    background-color: #ffffff;\r
+    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\r
+    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\r
+    -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;\r
+    -moz-transition: border linear 0.2s, box-shadow linear 0.2s;\r
+    -o-transition: border linear 0.2s, box-shadow linear 0.2s;\r
+    transition: border linear 0.2s, box-shadow linear 0.2s;\r
+}\r
+\r
+.jqx-combobox-content-bootstrap, .jqx-combobox-bootstrap, .jqx-combobox-state-normal-bootstrap {\r
+    border-color: #cccccc;\r
+}\r
+\r
+.jqx-combobox-content-focus-bootstrap, .jqx-combobox-state-focus-bootstrap, .jqx-fill-state-focus-bootstrap,\r
+.jqx-numberinput-focus-bootstrap {\r
+    outline: none;\r
+    border-color: rgba(82, 168, 236, 0.8);\r
+    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);\r
+    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);\r
+}\r
+\r
+.jqx-datetimeinput-content, .jqx-datetimeinput-container {\r
+    overflow: visible !important;\r
+}\r
+\r
+input[type="text"].jqx-input-bootstrap, input[type="text"].jqx-widget-content-bootstrap, input[type="textarea"].jqx-widget-content-bootstrap, textarea.jqx-input-bootstrap {\r
+    padding-left: 0px !important;\r
+}\r
+\r
+input[type="text"].jqx-input-bootstrap:-moz-placeholder, input[type="text"].jqx-widget-content-bootstrap:-moz-placeholder, input[type="textarea"].jqx-widget-content-bootstrap:-moz-placeholder, textarea.jqx-input-bootstrap:-moz-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="text"].jqx-input-bootstrap:-webkit-input-placeholder, input[type="text"].jqx-widget-content-bootstrap:-webkit-input-placeholder, input[type="textarea"].jqx-widget-content-bootstrap:-webkit-input-placeholder, textarea.jqx-input-bootstrap:-webkit-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="text"].jqx-input-bootstrap:-ms-input-placeholder, input[type="text"].jqx-widget-content-bootstrap:-ms-input-placeholder, input[type="textarea"].jqx-widget-content-bootstrap:-ms-input-placeholder, textarea.jqx-input-bootstrap:-ms-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="password"].jqx-input-bootstrap, input[type="password"].jqx-widget-content-bootstrap, input[type="textarea"].jqx-widget-content-bootstrap, textarea.jqx-input-bootstrap {\r
+    padding-left: 0px !important;\r
+}\r
+\r
+input[type="password"].jqx-input-bootstrap:-moz-placeholder, input[type="password"].jqx-widget-content-bootstrap:-moz-placeholder, input[type="textarea"].jqx-widget-content-bootstrap:-moz-placeholder, textarea.jqx-input-bootstrap:-moz-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="password"].jqx-input-bootstrap:-webkit-input-placeholder, input[type="password"].jqx-widget-content-bootstrap:-webkit-input-placeholder, input[type="textarea"].jqx-widget-content-bootstrap:-webkit-input-placeholder, textarea.jqx-input-bootstrap:-webkit-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+input[type="password"].jqx-input-bootstrap:-ms-input-placeholder, input[type="password"].jqx-widget-content-bootstrap:-ms-input-placeholder, input[type="textarea"].jqx-widget-content-bootstrap:-ms-input-placeholder, textarea.jqx-input-bootstrap:-ms-input-placeholder {\r
+    color: #999999;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap, .jqx-listbox-bootstrap.jqx-fill-state-focus-bootstrap {\r
+    outline: none;\r
+    border-color: #b2b2b2;\r
+    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap.jqx-primary {\r
+    border-color: #0044cc #0044cc #002a80;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap.jqx-warning {\r
+    border-color: #f89406 #f89406 #ad6704;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap.jqx-danger {\r
+    border-color: #bd362f #bd362f #802420;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap.jqx-success {\r
+    border-color: #51a351 #51a351 #387038;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap.jqx-info {\r
+    border-color: #2f96b4 #2f96b4 #1f6377;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-bootstrap.jqx-fill-state-focus-bootstrap.jqx-inverse {\r
+    border-color: #222222 #222222 #000000;\r
+}\r
+\r
+.jqx-popup-bootstrap.jqx-fill-state-focus-bootstrap {\r
+    border: 1px solid #ccc;\r
+    *border-right-width: 2px;\r
+    *border-bottom-width: 2px;\r
+    -webkit-border-radius: 4px !important;\r
+    -moz-border-radius: 4px !important;\r
+    border-radius: 4px !important;\r
+    -webkit-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    -moz-box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);\r
+}\r
+\r
+.jqx-expander-content-bootstrap.jqx-fill-state-focus-bootstrap {\r
+    z-index: 20;\r
+}\r
+\r
+.jqx-slider-rangebar-bootstrap {\r
+    border-color: #428bca;\r
+    background: #428bca;\r
+}\r
+\r
+.jqx-slider-button-bootstrap {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    padding: 3px;\r
+}\r
+\r
+.jqx-grid-cell-bootstrap.jqx-grid-cell-selected-bootstrap > .jqx-grid-group-expand-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-bootstrap.jqx-grid-cell-selected-bootstrap > .jqx-grid-group-collapse-bootstrap {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-bootstrap.jqx-grid-cell-selected-bootstrap > .jqx-grid-group-collapse-rtl-bootstrap {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-bootstrap.jqx-grid-cell-selected-bootstrap > .jqx-grid-group-expand-rtl-bootstrap {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-layout-bootstrap\r
+{\r
+    background-color: #cccccc;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.classic.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.classic.css
new file mode 100644 (file)
index 0000000..90ccedd
--- /dev/null
@@ -0,0 +1,82 @@
+.jqx-widget-classic{}\r
+.jqx-fill-state-normal-classic, .jqx-widget-header-classic{ border-color: #aaa; background-color:#E8E8E8; background-image:-webkit-gradient(linear,0 0,0 100%,from(#fafafa),to(#dadada));  background-image:-moz-linear-gradient(top,#fafafa,#dadada);  background-image:-o-linear-gradient(top,#fafafa,#dadada)}\r
+.jqx-fill-state-hover-classic{ border-color:#999;  background-color:#E8E8E8; background-image:-webkit-gradient(linear,0 0,0 100%,from(#fafafa),to(#dadada));  background-image:-moz-linear-gradient(top,#fafafa,#dadada);  background-image:-o-linear-gradient(top,#fafafa,#dadada)}\r
+.jqx-fill-state-pressed-classic{ background-color:#7A7A7A; background-image:-webkit-gradient(linear,0 0,0 100%,from(#989898),to(#696969));  background-image:-moz-linear-gradient(top,#989898,#696969);  background-image:-o-linear-gradient(top,#989898,#696969);  border-color:#666;  color:white;  text-shadow:0 1px 0 #333;  border-image:initial}\r
+\r
+.jqx-grid-column-menubutton-classic{ background-color:transparent}\r
+.jqx-calendar-row-header-classic, .jqx-calendar-top-left-header-classic{ background-color:#f2f2f2;  border:0px solid #f2f2f2}\r
+.jqx-calendar-column-header-classic{ background-color:#FFF;  border-top:1px solid #FFF;  border-bottom:1px solid #e9e9e9}\r
+.jqx-scrollbar-state-normal-classic{ background-color:#efefef;  border:1px solid #efefef}\r
+.jqx-scrollbar-button-state-normal-classic{ border:1px solid #ececed;  background-color:#ececed}\r
+.jqx-scrollbar-thumb-state-normal-classic{ background-color:#E8E8E8; background-image:-webkit-gradient(linear,left top,right top,from(#fafafa),to(#dadada));  background-image:-moz-linear-gradient(left,#fafafa,#dadada);  background-image:-o-linear-gradient(left,#fafafa,#dadada);  border:1px solid #bbb}\r
+.jqx-scrollbar-thumb-state-hover-classic{ background-color:#e8e8e8;  border:1px solid #aaa}\r
+.jqx-scrollbar-thumb-state-pressed-classic, .jqx-progressbar-value-vertical-classic{ background-color:#7A7A7A; background-image:-webkit-gradient(linear,left top,right top,from(#989898),to(#696969));    background-image:-moz-linear-gradient(left,#989898,#696969);    background-image:-o-linear-gradient(left,#989898,#696969); border:1px solid #666}\r
+\r
+.jqx-icon-arrow-up-selected-classic{background-image:url('images/icon-up-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-down-selected-classic{background-image:url('images/icon-down-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-left-selected-classic{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-right-selected-classic{background-image:url('images/icon-right-white.png');background-repeat:no-repeat; background-position:center}\r
+.jqx-scrollbar-classic .jqx-icon-arrow-up-selected-classic{background-image:url('images/icon-up.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-scrollbar-classic .jqx-icon-arrow-down-selected-classic{background-image:url('images/icon-down.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-scrollbar-classic .jqx-icon-arrow-left-selected-classic{background-image:url('images/icon-left.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-scrollbar-classic .jqx-icon-arrow-right-selected-classic{background-image:url('images/icon-right.png');background-repeat:no-repeat; background-position:center}\r
+\r
+.jqx-slider-track-horizontal-classic, .jqx-slider-track-vertical-classic{border-color: #e8e8e8; background: #e8e8e8;}\r
+.jqx-slider-rangebar-classic{background:#7A7A7A;}\r
+.jqx-menu-vertical-classic{ background:#E8E8E8; filter: none;}\r
+.jqx-menu-item-arrow-right-selected-classic{background-image:url(images/icon-right-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-down-selected-classic{background-image:url(images/icon-down-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-up-selected-classic{background-image:url(images/icon-up-white.png);background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-left-selected-classic{background-image:url(images/icon-left-white.png); background-position:0 50%; background-repeat:no-repeat}\r
+.jqx-icon-arrow-first-selected-classic\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-selected-classic\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-radiobutton-classic{border:none; background: none;}\r
+.jqx-radiobutton-default-classic{filter: none; background:transparent url(images/roundbg_classic_normal.png) left center scroll repeat-x;  border:0px solid #c9c9c9; -moz-border-radius:0px; -webkit-border-radius:0px; border-radius:0px}\r
+.jqx-radiobutton-hover-classic{filter: none;  -moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px;background:transparent url(images/roundbg_classic_hover.png) left center scroll repeat-x;     border:0px solid #000}\r
+.jqx-radiobutton-check-checked-classic{filter: none; margin:0px; width:12px;height:12px;background:transparent url(images/roundbg_check_black.png) left top no-repeat; border:none}\r
+.jqx-radiobutton-check-indeterminate-classic{filter: none; background:transparent url(images/roundbg_check_indeterminate.png) left top no-repeat; border:none}\r
+.jqx-radiobutton-check-indeterminate-disabled-classic{filter: none; background:transparent url(images/roundbg_check_disabled.png) left top no-repeat;border:none}\r
+.jqx-fill-state-focus-classic { border-color: #747474;}\r
+.jqx-grid-bottomright-classic, .jqx-panel-bottomright-classic, .jqx-listbox-bottomright-classic{background-color: #efefef;}\r
+.jqx-tabs-title-selected-top-classic, .jqx-tabs-selection-tracker-top-classic {border-color: #aaa; border-bottom: 1px solid #fff; text-shadow:0 1px 0 #f2f2f2; filter: none; color: #222; background: #fff;}\r
+.jqx-tabs-title-selected-bottom-classic, .jqx-tabs-selection-tracker-bottom-classic {border-color: #aaa; border-top: 1px solid #fff; text-shadow:0 1px 0 #f2f2f2; filter: none; color: #222; background: #fff;}\r
+.jqx-icon-calendar-pressed-classic {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-pressed-classic {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-grid-cell-classic.jqx-grid-cell-selected-classic>.jqx-grid-group-expand-classic {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-classic.jqx-grid-cell-selected-classic>.jqx-grid-group-collapse-classic{\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-classic.jqx-grid-cell-selected-classic>.jqx-grid-group-collapse-rtl-classic {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-classic.jqx-grid-cell-selected-classic>.jqx-grid-group-expand-rtl-classic{\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-layout-classic\r
+{\r
+    background-color: #aaa;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.darkblue.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.darkblue.css
new file mode 100644 (file)
index 0000000..a80fbd7
--- /dev/null
@@ -0,0 +1,153 @@
+/*states, content and header*/\r
+.jqx-widget-darkblue{border-color:#004a73}\r
+.jqx-widget-content-darkblue{color:#004a73; border-color:#004a73}\r
+.jqx-fill-state-normal-darkblue, .jqx-widget-header-darkblue, .jqx-menu-vertical-darkblue{color: #fff; border-color: #004a73; background-color:#449bca; background-image:-webkit-gradient(linear,0 0,0 100%,from(#3c91c2),to(#449bca));  background-image:-moz-linear-gradient(top,#3c91c2,#449bca);  background-image:-o-linear-gradient(top,#3c91c2,#449bca)}\r
+.jqx-grid-cell-sort-darkblue, .jqx-grid-cell-filter-darkblue, .jqx-grid-cell-pinned-darkblue{color: #000; background-color:#deedf5}\r
+.jqx-grid-cell-alt-darkblue, .jqx-grid-cell-sort-alt-darkblue, .jqx-grid-cell-filter-alt-darkblue{color: #000; background-color:#deedf5}\r
+.jqx-checkbox-check-checked-darkblue{background:transparent url(images/check_white.png) left top no-repeat}\r
+.jqx-checkbox-check-indeterminate-darkblue{background:transparent url(images/check_indeterminate_white.png) left top no-repeat}\r
+.jqx-grid-darkblue, .jqx-grid-header-darkblue, .jqx-grid-cell-darkblue{border-color:#60aad2}\r
+.jqx-widget-darkblue .jqx-grid-cell-darkblue, .jqx-widget-darkblue .jqx-grid-group-cell-darkblue{border-color:#60aad2}\r
+.jqx-widget-darkblue .jqx-grid-column-menubutton-darkblue, .jqx-widget-darkblue .jqx-grid-column-sortascbutton-darkblue, .jqx-widget-darkblue .jqx-grid-column-sortdescbutton-darkblue, .jqx-widget-darkblue .jqx-grid-column-filterbutton-darkblue{   background-color:#449bca;border-color:#449bca}\r
+.jqx-widget-darkblue .jqx-grid-column-header-darkblue{border-color:#449bca}\r
+.jqx-grid-bottomright-darkblue, .jqx-panel-bottomright-darkblue, .jqx-listbox-bottomright-darkblue{   background-color:#449bca}\r
+.jqx-widget-darkblue .jqx-grid-column-menubutton-darkblue, .jqx-menu-vertical-darkblue{background-color:#0a73a7;border-color:#0a73a7}\r
+.jqx-grid-group-cell-darkblue{border-color:#60aad2; background-color:#fff}\r
+.jqx-fill-state-hover-darkblue{background: #2f7097; background-image: none; border-color:#004a73; color:#fff}\r
+.jqx-fill-state-pressed-darkblue, .jqx-menu-item-top-hover-darkblue{background: #004a73; background-image: none; border-color:#004a73; color:#fff}\r
+ .jqx-grid-selectionarea-darkblue{background-color:#60aad2;border:1px solid #60aad2; opacity:0.5}\r
+.jqx-scrollbar-state-normal-darkblue{background-color:#449bca; border:1px solid #449bca;}\r
+.jqx-tabs-title-selected-bottom-darkblue, .jqx-tabs-selection-tracker-bottom-darkblue, .jqx-tabs-title-selected-top-darkblue, .jqx-tabs-selection-tracker-top-darkblue{color: #ffffff; border-color:#004a73; border-bottom:1px solid #004a73; background:#004a73}\r
+\r
+/*icons*/\r
+.jqx-grid-column-sortascbutton-darkblue, .jqx-expander-arrow-bottom-darkblue, .jqx-window-collapse-button-darkblue, .jqx-menu-item-arrow-up-darkblue, .jqx-menu-item-arrow-up-selected-darkblue, .jqx-menu-item-arrow-top-up-darkblue, .jqx-icon-arrow-up-darkblue, .jqx-icon-arrow-up-hover-darkblue, .jqx-icon-arrow-up-selected-darkblue{background-image:url('images/icon-up-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-grid-column-menubutton-darkblue, .jqx-grid-column-sortdescbutton-darkblue, .jqx-expander-arrow-top-darkblue, .jqx-window-collapse-button-collapsed-darkblue, .jqx-menu-item-arrow-down-darkblue, .jqx-menu-item-arrow-down-selected-darkblue, .jqx-menu-item-arrow-down-darkblue, .jqx-icon-arrow-down-darkblue, .jqx-icon-arrow-down-hover-darkblue, .jqx-icon-arrow-down-selected-darkblue{background-image:url('images/icon-down-white.png');background-repeat:no-repeat;background-position:center}\r
+\r
+.jqx-icon-arrow-left-darkblue{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-right-darkblue{background-image:url('images/icon-right-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-menu-item-arrow-left-darkblue{background-image:url('images/icon-left.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-menu-item-arrow-right-darkblue{background-image:url('images/icon-right.png'); background-repeat:no-repeat; background-position:center}\r
+\r
+.jqx-tabs-arrow-left-darkblue, .jqx-menu-item-arrow-left-selected-darkblue, .jqx-menu-item-arrow-top-left-darkblue, .jqx-icon-arrow-down-left-darkblue, .jqx-icon-arrow-left-selected-darkblue{background-image:url('images/icon-left-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-tabs-arrow-right-darkblue, .jqx-menu-item-arrow-right-selected-darkblue, .jqx-menu-item-arrow-top-right-darkblue, .jqx-icon-arrow-right-hover-darkblue, .jqx-icon-arrow-right-selected-darkblue{background-image:url('images/icon-right-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-window-close-button-darkblue, .jqx-icon-close-darkblue, .jqx-tabs-close-button-darkblue, .jqx-tabs-close-button-hover-darkblue, .jqx-tabs-close-button-selected-darkblue{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+.jqx-icon-arrow-first-darkblue\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-darkblue\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search-darkblue\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-darkblue, .jqx-icon-calendar-hover-darkblue, .jqx-icon-calendar-pressed-darkblue {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-darkblue, .jqx-icon-time-hover-darkblue, .jqx-icon-time-pressed-darkblue {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-icon-delete-darkblue\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-darkblue\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-darkblue\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-darkblue\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-darkblue\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-darkblue\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+\r
+.jqx-grid-group-expand-darkblue, .jqx-grid-cell-darkblue>.jqx-grid-group-expand-darkblue, .jqx-tree-item-arrow-expand-darkblue {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-collapse-darkblue, .jqx-grid-cell-darkblue>.jqx-grid-group-collapse-darkblue, .jqx-tree-item-arrow-collapse-darkblue {\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-collapse-rtl-darkblue, .jqx-grid-cell-darkblue>.jqx-grid-group-collapse-rtl-darkblue, .jqx-tree-item-arrow-collapse-rtl-darkblue {\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-expand-rtl-darkblue, .jqx-grid-cell-darkblue>.jqx-grid-group-expand-rtl-darkblue {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-selected-darkblue>.jqx-grid-group-expand-darkblue,\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-hover-darkblue>.jqx-grid-group-expand-darkblue {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-selected-darkblue>.jqx-grid-group-collapse-darkblue,\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-hover-darkblue>.jqx-grid-group-collapse-darkblue {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-selected-darkblue>.jqx-grid-group-collapse-rtl-darkblue,\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-hover-darkblue>.jqx-grid-group-collapse-rtl-darkblue {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-selected-darkblue>.jqx-grid-group-expand-rtl-darkblue,\r
+.jqx-grid-cell-darkblue.jqx-grid-cell-hover-darkblue>.jqx-grid-group-expand-rtl-darkblue {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-menu-minimized-button-darkblue {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-darkblue {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-darkblue\r
+{\r
+    background-color: #004a73;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-darkblue\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-darkblue\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-darkblue, .jqx-scheduler-time-column-darkblue, .jqx-scheduler-toolbar-darkblue\r
+{\r
+    background: #449bca !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-darkblue .jqx-scheduler-middle-cell-darkblue, .jqx-scheduler-middle-cell-darkblue {\r
+    border-bottom-color: #449bca !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.energyblue.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.energyblue.css
new file mode 100644 (file)
index 0000000..577f0ef
--- /dev/null
@@ -0,0 +1,16 @@
+.jqx-widget-content-energyblue{border-color: #a4bed4;}\r
+.jqx-fill-state-normal-energyblue, .jqx-widget-header-energyblue{border-color:#a4bed4; background-color:#e0e9f5}\r
+.jqx-fill-state-hover-energyblue{border-color:#a4bed4;  background-color:#cfdde9}\r
+.jqx-fill-state-pressed-energyblue{border-color:#5e8cb3; background-color:#cfdde9}\r
+.jqx-fill-state-focus-energyblue { border-color: #477396; }\r
+.jqx-scrollbar-state-normal-energyblue, .jqx-grid-bottomright-energyblue, .jqx-panel-bottomright-energyblue, .jqx-listbox-bottomright-energyblue{background-color:#e0e9f5}\r
+.jqx-widget-energyblue .jqx-grid-column-header-energyblue, .jqx-grid-cell-energyblue, .jqx-widget-energyblue .jqx-grid-cell-energyblue, .jqx-widget-energyblue .jqx-grid-group-cell-energyblue, .jqx-grid-group-cell-energyblue{border-color:#a4bed4}\r
+.jqx-tabs-title-selected-bottom-energyblue, .jqx-tabs-selection-tracker-bottom-energyblue, .jqx-tabs-title-selected-top-energyblue, .jqx-tabs-selection-tracker-top-energyblue{border-color:#a4bed4; border-bottom:1px solid #fff; background:#fff}\r
+.jqx-grid-cell-sort-alt-energyblue, .jqx-grid-cell-filter-alt-energyblue, .jqx-grid-cell-pinned-energyblue, .jqx-grid-cell-alt-energyblue, .jqx-grid-cell-sort-energyblue{ background-color:#e7eef8}\r
+.jqx-grid-cell-selected-energyblue{ background-color:#cfdde9 !important;  color:#2b465e !important;}\r
+.jqx-grid-cell-hover-energyblue{ background-color:#cfdde9 !important;}\r
+.jqx-menu-vertical-energyblue{background: #e0e9f5;}\r
+.jqx-layout-energyblue\r
+{\r
+    background-color: #a4bed4;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.fresh.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.fresh.css
new file mode 100644 (file)
index 0000000..b6486d3
--- /dev/null
@@ -0,0 +1,138 @@
+.jqx-widget-content-fresh{border-color: #8e8e97; background-color: #f7f7f7;}\r
+.jqx-fill-state-normal-fresh, .jqx-widget-header-fresh{ border-color: #8e8e97; text-shadow:0 1px 0 #f1f1f5;\r
+background: #ffffff;\r
+background: -moz-linear-gradient(top, #ffffff 0%, #efeff1 1%, #ededf0 4%, #d2d2d8 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(1%,#efeff1), color-stop(4%,#ededf0), color-stop(100%,#d2d2d8));\r
+background: -webkit-linear-gradient(top, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+background: -o-linear-gradient(top, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+background: -ms-linear-gradient(top, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+background: linear-gradient(top, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+}\r
+.jqx-widget-fresh .jqx-grid-cell-fresh, .jqx-widget-fresh .jqx-grid-column-header-fresh, .jqx-widget-fresh .jqx-grid-group-cell-fresh {border-color: #8e8e97; background-color: #f7f7f7;}\r
+.jqx-widget-fresh .jqx-grid-cell-sort-fresh, .jqx-widget-fresh .jqx-grid-cell-filter-fresh, .jqx-widget-fresh .jqx-grid-cell-alt-fresh, .jqx-widget-fresh .jqx-grid-cell-pinned-fresh{background-color:#d7d9df}\r
+.jqx-widget-fresh, .jqx-widget-header-fresh, .jqx-widget-content-fresh{-webkit-background-clip: padding-box; background-clip: padding-box;}\r
+.jqx-fill-state-hover-fresh, .jqx-widget-fresh .jqx-grid-cell-hover-fresh{ border-color:#5a5e64; color:#000; text-shadow:0 1px 0 #aaa;\r
+background: #cacdd5;\r
+background: -moz-linear-gradient(top, #cacdd5 0%, #a3a7b4 93%, #a6aab7 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cacdd5), color-stop(93%,#a3a7b4), color-stop(100%,#a6aab7));\r
+background: -webkit-linear-gradient(top, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+background: -o-linear-gradient(top, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+background: -ms-linear-gradient(top, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+background: linear-gradient(top, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+}\r
+.jqx-fill-state-pressed-fresh, .jqx-widget-fresh .jqx-grid-cell-selected-fresh{\r
+background: #058cf5;\r
+background: -moz-linear-gradient(top, #058cf5 0%, #0385f3 19%, #0167e9 72%, #015de6 100%);\r
+background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#058cf5), color-stop(19%,#0385f3), color-stop(72%,#0167e9), color-stop(100%,#015de6));\r
+background: -webkit-linear-gradient(top, #058cf5 0%,#0385f3 19%,#0167e9 72%,#015de6 100%);\r
+background: -o-linear-gradient(top, #058cf5 0%,#0385f3 19%,#0167e9 72%,#015de6 100%);\r
+background: -ms-linear-gradient(top, #058cf5 0%,#0385f3 19%,#0167e9 72%,#015de6 100%);\r
+background: linear-gradient(top, #058cf5 0%,#0385f3 19%,#0167e9 72%,#015de6 100%); border-color:#014ab8; \r
+ color:white; text-shadow:0 1px 0 #555; border-image:initial;\r
+ }\r
+.jqx-fill-state-focus-fresh { border-color: #555; }\r
+.jqx-fill-state-normal-fresh, .jqx-fill-state-pressed-fresh, .jqx-fill-state-hover-fresh\r
+{\r
+    -webkit-box-shadow: 0 2px 3px rgba(0,0,0,.15);\r
+    -moz-box-shadow   : 0 2px 3px rgba(0,0,0,.15);\r
+    -o-box-shadow     : 0 2px 3px rgba(0,0,0,.15);\r
+    box-shadow        : 0 2px 3px rgba(0,0,0,.15);\r
+}\r
+\r
+.jqx-grid-column-menubutton-fresh{ background-color:transparent}\r
+.jqx-calendar-row-header-fresh, .jqx-calendar-top-left-header-fresh{ background-color:#f2f2f2;  border:0px solid #f2f2f2}\r
+.jqx-calendar-column-header-fresh{ background-color:#FFF;  border-top:1px solid #FFF;  border-bottom:1px solid #e9e9e9}\r
+.jqx-scrollbar-state-normal-fresh{ background-color:#efefef;  border:1px solid #efefef}\r
+.jqx-scrollbar-button-state-normal-fresh{ border:1px solid #efefef;  background-color:#ececed}\r
+.jqx-scrollbar-button-state-hover-fresh{ border:1px solid #8e8e97;}\r
+.jqx-scrollbar-button-state-pressed-fresh{ border:1px solid #8e8e97;}\r
+.jqx-scrollbar-thumb-state-normal-fresh{background: #ffffff;                                       \r
+background: -moz-linear-gradient(left, #ffffff 0%, #efeff1 1%, #ededf0 4%, #d2d2d8 100%);\r
+background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffffff), color-stop(1%,#efeff1), color-stop(4%,#ededf0), color-stop(100%,#d2d2d8));\r
+background: -webkit-linear-gradient(left, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+background: -o-linear-gradient(left, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+background: -ms-linear-gradient(left, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);\r
+background: linear-gradient(left, #ffffff 0%,#efeff1 1%,#ededf0 4%,#d2d2d8 100%);  border:1px solid #8e8e97}\r
+.jqx-scrollbar-thumb-state-hover-fresh{background: #cacdd5;\r
+background: -moz-linear-gradient(left, #cacdd5 0%, #a3a7b4 93%, #a6aab7 100%);\r
+background: -webkit-gradient(linear, left top, right top, color-stop(0%,#cacdd5), color-stop(93%,#a3a7b4), color-stop(100%,#a6aab7));\r
+background: -webkit-linear-gradient(left, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+background: -o-linear-gradient(left, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+background: -ms-linear-gradient(left, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+background: linear-gradient(left, #cacdd5 0%,#a3a7b4 93%,#a6aab7 100%);\r
+ border:1px solid #8e8e97}\r
+.jqx-scrollbar-thumb-state-pressed-fresh, .jqx-progressbar-value-vertical-fresh{\r
+background: #9cbbed;\r
+background: -moz-linear-gradient(left, #9cbbed 0%, #3a78dc 1%, #1543bb 100%);\r
+background: -webkit-gradient(linear, left top, right top, color-stop(0%,#9cbbed), color-stop(1%,#3a78dc), color-stop(100%,#1543bb));\r
+background: -webkit-linear-gradient(left, #9cbbed 0%,#3a78dc 1%,#1543bb 100%);\r
+background: -o-linear-gradient(left, #9cbbed 0%,#3a78dc 1%,#1543bb 100%);\r
+background: -ms-linear-gradient(left, #9cbbed 0%,#3a78dc 1%,#1543bb 100%);\r
+background: linear-gradient(left, #9cbbed 0%,#3a78dc 1%,#1543bb 100%);\r
+ border:1px solid #014ab8}\r
+\r
+.jqx-expander-arrow-expanded-fresh, .jqx-icon-arrow-up-selected-fresh{background-image:url('images/icon-up-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-down-selected-fresh{background-image:url('images/icon-down-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-left-selected-fresh{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-right-selected-fresh{background-image:url('images/icon-right-white.png');background-repeat:no-repeat; background-position:center}\r
+.jqx-slider-track-horizontal-fresh, .jqx-slider-track-vertical-fresh{border-color: #e8e8e8; background: #e8e8e8;}\r
+.jqx-grid-column-sortdescbutton-fresh, jqx-grid-column-filterbutton-fresh, .jqx-grid-column-sortascbutton-fresh{ background-color:transparent;  border-style:solid;  border-width:0px 0px 0px 0px;  border-color:#8e8e97}\r
+\r
+.jqx-menu-item-arrow-right-selected-fresh{background-image:url(images/icon-right-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-down-selected-fresh{background-image:url(images/icon-down-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-up-selected-fresh{background-image:url(images/icon-up-white.png);background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-left-selected-fresh{background-image:url(images/icon-left-white.png); background-position:0 50%; background-repeat:no-repeat}\r
+\r
+.jqx-grid-bottomright-fresh, .jqx-panel-bottomright-fresh, .jqx-listbox-bottomright-fresh{background-color: #efefef;}\r
+.jqx-tabs-title-selected-top-fresh, .jqx-tabs-selection-tracker-top-fresh {border-color: #8e8e97; border-bottom: 1px solid #f7f7f7; text-shadow:0 1px 0 #f2f2f2; filter: none; color: #222; background: #f7f7f7;}\r
+.jqx-tabs-title-selected-bottom-fresh, .jqx-tabs-selection-tracker-bottom-fresh {border-color: #8e8e97; border-top: 1px solid #f7f7f7; text-shadow:0 1px 0 #f2f2f2; filter: none; color: #222; background: #f7f7f7;}\r
+.jqx-tabs-title-fresh, .jqx-window-fresh, .jqx-docking-fresh, .jqx-widget-fresh .jqx-window-fresh {-webkit-box-shadow: none;-moz-box-shadow:none;-o-box-shadow: none;box-shadow :none;}\r
+.jqx-splitter-splitbar-horizontal-fresh, .jqx-splitter-splitbar-vertical-fresh, .jqx-splitter-splitbar-hover-fresh, .jqx-splitter-splitbar-hover-horizontal-fresh{background: #a5a9b6;}\r
+.jqx-splitter-collapse-button-horizontal-fresh, .jqx-splitter-collapse-button-vertical-fresh{background: #1847bd;}\r
+.jqx-slider-tick-horizontal-black, .jqx-slider-tick-vertical-black{background: #1847bd; border-color: #1847bd;}\r
+.jqx-menu-vertical-fresh{ background:#d2d2d8; filter: none;}\r
+.jqx-grid-cell-fresh.jqx-grid-cell-selected-fresh>.jqx-grid-group-expand-fresh {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-fresh.jqx-grid-cell-selected-fresh>.jqx-grid-group-collapse-fresh\r
+{\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-fresh.jqx-grid-cell-selected-fresh>.jqx-grid-group-collapse-rtl-fresh\r
+{\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-fresh.jqx-grid-cell-selected-fresh>.jqx-grid-group-expand-rtl-fresh\r
+{\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-selected-fresh\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-selected-fresh\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-pressed-fresh {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-pressed-fresh {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-layout-fresh\r
+{\r
+    background-color: #8e8e97;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.glacier.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.glacier.css
new file mode 100644 (file)
index 0000000..4b29bdd
--- /dev/null
@@ -0,0 +1,257 @@
+\r
+.jqx-widget-glacier {\r
+    font-size: 12px;\r
+    font-family: 'segoe ui', arial, sans-serif;\r
+}\r
+.jqx-widget-content-glacier{font-family: 'segoe ui', arial, sans-serif; border-color: #d7d7d7; color: #131619; background-color: #fff;}\r
+.jqx-widget-header-glacier{font-family: 'segoe ui', arial, sans-serif; color: #131619; border-color:#d7d7d7; background-color:#ebebeb;}\r
+.jqx-fill-state-normal-glacier{font-family: 'segoe ui', arial, sans-serif; border-color: #d7d7d7; color: #131619; background: #ffffff;}\r
+.jqx-fill-state-hover-glacier{border-color:#dedede; color: #131619; background-color:#dedede;\r
+\r
+}\r
+.jqx-fill-state-focus-glacier { border-color: #cdcdcd; }\r
+.jqx-fill-state-pressed-glacier{border-color:#006aae; color: #fff; background-color:#006aae;}\r
+.jqx-fill-state-pressed-glacier.jqx-calendar-cell-othermonth-glacier {color: #f7f3f2 !important;}\r
+.jqx-fill-state-pressed-glacier.jqx-grid-pager-number-glacier {color: #f7f3f2 !important;}\r
+.jqx-buttongroup-glacier .jqx-fill-state-pressed{border-color:#d7d7d7;}\r
+.jqx-listitem-state-group-glacier {\r
+    color: #006aae;\r
+    padding-left:6px;\r
+}\r
+\r
+.jqx-input-glacier {\r
+    border-color: #d7d7d7;\r
+}\r
+.jqx-scrollbar-state-normal-glacier, .jqx-grid-bottomright-glacier, .jqx-panel-bottomright-glacier, .jqx-listbox-bottomright-glacier{background-color:#f4f4f4;}\r
+.jqx-widget-glacier .jqx-grid-column-header-glacier, .jqx-grid-cell-glacier, .jqx-widget-glacier .jqx-grid-cell-glacier, .jqx-widget-glacier .jqx-grid-group-cell-glacier, .jqx-grid-group-cell-glacier{font-family: 'segoe ui', arial, sans-serif; border-color:#d7d7d7;}\r
+.jqx-tabs-title-selected-bottom-glacier, .jqx-tabs-selection-tracker-bottom-glacier, .jqx-tabs-title-selected-top-glacier, .jqx-tabs-selection-tracker-top-glacier{color: #131619; border-color:#d7d7d7; border-bottom:1px solid #fff; background:#fff}\r
+.jqx-grid-cell-sort-alt-glacier, .jqx-grid-cell-filter-alt-glacier, .jqx-grid-cell-pinned-glacier, .jqx-grid-cell-alt-glacier, .jqx-grid-cell-sort-glacier{ background-color:#ededed; color: #131619;}\r
+.jqx-menu-vertical-glacier{background: #fff; border-color: #bcb6b8;}\r
+.jqx-widget-glacier .jqx-grid-cell-glacier, .jqx-widget-glacier .jqx-grid-column-header-glacier, .jqx-widget-glacier .jqx-grid-group-cell-glacier {color: #131619; border-color: #d7d7d7;}\r
+.jqx-widget-glacier .jqx-grid-column-menubutton-glacier, .jqx-widget-glacier .jqx-grid-column-sortascbutton-glacier, .jqx-widget-glacier .jqx-grid-column-sortdescbutton-glacier, .jqx-widget-glacier .jqx-grid-column-filterbutton-glacier {\r
+    background-color: transparent;\r
+    border-color: #d7d7d7;\r
+}\r
+.jqx-window-header-glacier, .jqx-input-button-header-glacier, .jqx-calendar-title-header-glacier, .jqx-grid-glacier .jqx-widget-header-glacier, .jqx-grid-header-glacier, .jqx-grid-column-header-glacier {font-family: 'segoe ui', arial, sans-serif; border-color:#d7d7d7; background-color:#ebebeb; color: #131619;}\r
+.jqx-grid-column-menubutton-glacier {\r
+    background-image: url('images/metro-icon-down.png');\r
+ }\r
+.jqx-widget-glacier .jqx-grid-cell-selected-glacier, .jqx-grid-cell-selected-glacier{ background-color:#006aae; border-color: #006aae;  color:#fff;}\r
+.jqx-grid-cell-hover-glacier{ background-color:#dedede;}\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton-glacier {\r
+    background-image: url('images/metro-icon-up.png');\r
+ }\r
+.jqx-grid-column-sortdescbutton-glacier {\r
+    background-image: url('images/metro-icon-down.png');\r
+}\r
+.jqx-checkbox-hover-glacier {\r
+    background-color: #fff;\r
+}\r
+.jqx-radiobutton-hover-glacier {\r
+    background-color: #fff;\r
+}\r
+.jqx-scrollbar-thumb-state-normal-horizontal-glacier, .jqx-scrollbar-thumb-state-normal-glacier {\r
+    background: #cdcdcd; border-color: #cdcdcd;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-glacier, .jqx-scrollbar-thumb-state-hover-glacier {\r
+    background: #a6a6a6; border-color: #a6a6a6;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-glacier, .jqx-scrollbar-thumb-state-pressed-glacier {\r
+    background: #606060; border-color: #606060;\r
+}\r
+.jqx-scrollbar-button-state-normal-glacier\r
+{\r
+    border: 1px solid #f4f4f4; \r
+    background: #f4f4f4;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-glacier\r
+{\r
+    border: 1px solid #dadada;\r
+    background: #dadada;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-glacier\r
+{\r
+    border: 1px solid #606060;\r
+    background: #606060;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-glacier\r
+{\r
+    background-image: url(images/metro-icon-up.png);\r
+}\r
+.jqx-window-collapse-button-collapsed-glacier {\r
+  background-image: url(images/metro-icon-down.png);\r
+}\r
+.jqx-icon-arrow-up-glacier, .jqx-expander-arrow-bottom-glacier, .jqx-menu-item-arrow-up-glacier\r
+{\r
+    background-image: url('images/metro-icon-up.png');\r
+}\r
+.jqx-icon-arrow-down-glacier, .jqx-expander-arrow-top-glacier, .jqx-tree-item-arrow-expand-glacier, .jqx-tree-item-arrow-expand-hover-glacier, .jqx-menu-item-arrow-down-glacier\r
+{\r
+    background-image: url('images/metro-icon-down.png');\r
+}\r
+.jqx-icon-arrow-left-glacier, .jqx-menu-item-arrow-left-glacier\r
+{\r
+    background-image: url('images/metro-icon-left.png');\r
+}\r
+.jqx-icon-arrow-right-glacier, .jqx-menu-item-arrow-right-glacier, .jqx-tree-item-arrow-collapse-glacier, .jqx-tree-item-arrow-collapse-hover-glacier\r
+{\r
+    background-image: url('images/metro-icon-right.png');\r
+}\r
+.jqx-tabs-arrow-left-glacier, .jqx-tree-item-arrow-collapse-rtl-glacier, .jqx-tree-item-arrow-collapse-hover-rtl-glacier\r
+{\r
+    background-image: url('images/metro-icon-left.png');\r
+}\r
+.jqx-tabs-arrow-right-glacier\r
+{\r
+    background-image: url('images/metro-icon-right.png');\r
+}\r
+.jqx-menu-item-arrow-up-selected-glacier, .jqx-icon-arrow-up-selected-glacier{background-image:url('images/metro-icon-up-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-glacier, .jqx-icon-arrow-down-selected-glacier{background-image:url('images/metro-icon-down-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-glacier, .jqx-icon-arrow-left-selected-glacier{background-image:url('images/metro-icon-left-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-glacier, .jqx-icon-arrow-right-selected-glacier{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-tabs-close-button-glacier{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-tabs-close-button-selected-glacier{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-tabs-close-button-hover-glacier{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-scrollbar-glacier .jqx-icon-arrow-up-selected-glacier{background-image:url('images/metro-icon-up-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-glacier .jqx-icon-arrow-down-selected-glacier{background-image:url('images/metro-icon-down-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-glacier .jqx-icon-arrow-left-selected-glacier{background-image:url('images/metro-icon-left-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-glacier .jqx-icon-arrow-right-selected-glacier{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat; background-position:center;}\r
+.jqx-slider-slider-glacier\r
+{\r
+    border-color:#cdcdcd;\r
+}\r
+.jqx-slider-button-glacier\r
+{\r
+    -moz-border-radius: 9px;\r
+    -webkit-border-radius: 9px;\r
+    border-radius: 9px;\r
+    border-color: #cdcdcd;\r
+}\r
+.jqx-input-button-content-glacier\r
+{  \r
+    font-size: 10px;\r
+}\r
+.jqx-dropdownlist-state-normal-glacier, .jqx-dropdownlist-state-hover-glacier, .jqx-dropdownlist-state-selected-glacier,\r
+.jqx-scrollbar-button-state-hover-glacier, .jqx-scrollbar-button-state-normal-glacier, .jqx-scrollbar-button-state-pressed-glacier,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-glacier, .jqx-scrollbar-thumb-state-hover-horizontal-glacier, .jqx-scrollbar-thumb-state-pressed-horizontal-glacier,\r
+.jqx-scrollbar-thumb-state-normal-glacier, .jqx-scrollbar-thumb-state-pressed-glacier, .jqx-button-glacier, .jqx-tree-item-hover-glacier, .jqx-tree-item-selected-glacier,\r
+.jqx-tree-item-glacier, .jqx-menu-item-glacier, .jqx-menu-item-hover-glacier, .jqx-menu-item-selected-glacier, .jqx-menu-item-top-glacier, .jqx-menu-item-top-hover-glacier, \r
+.jqx-menu-item-top-selected-glacier, .jqx-slider-button-glacier, .jqx-slider-slider-glacier\r
+ {\r
+    -webkit-transition: background-color 100ms linear;\r
+     -moz-transition: background-color 100ms linear;\r
+     -o-transition: background-color 100ms linear;\r
+     -ms-transition: background-color 100ms linear;\r
+     transition: background-color 100ms linear;\r
+}\r
+.jqx-switchbutton-glacier {\r
+    -moz-border-radius: 0px; \r
+    -webkit-border-radius: 0px; \r
+    border-radius: 0px;\r
+    border: 2px solid #a6a6a6;\r
+}\r
+.jqx-switchbutton-thumb-glacier {\r
+    width: 12px;\r
+    background: #000;\r
+    border: 1px solid #000;\r
+}\r
+.jqx-switchbutton-label-on-glacier {\r
+    background: #006aae;\r
+    color: #006aae;\r
+}\r
+.jqx-switchbutton-label-off-glacier {\r
+    background: #a6a6a6;\r
+    color: #a6a6a6;\r
+}\r
+\r
+.jqx-switchbutton-wrapper-glacier {\r
+}\r
+.jqx-grid-cell-glacier.jqx-grid-cell-selected-glacier>.jqx-grid-group-expand-glacier {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-glacier.jqx-grid-cell-selected-glacier>.jqx-grid-group-collapse-glacier{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-glacier.jqx-grid-cell-selected-glacier>.jqx-grid-group-collapse-rtl-glacier {\r
+    background-image: url('images/metro-icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-glacier.jqx-grid-cell-selected-glacier>.jqx-grid-group-expand-rtl-glacier{\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-collapse-glacier {\r
+    background-image: url(images/metro-icon-right.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-glacier\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-left.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-glacier, .jqx-grid-group-expand-rtl-glacier\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-down.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-icon-arrow-first-glacier\r
+{\r
+    background-image: url('images/metro-icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-glacier\r
+{\r
+    background-image: url('images/metro-icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-hover-glacier\r
+{\r
+    background-image: url('images/metro-icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-hover-glacier\r
+{\r
+    background-image: url('images/metro-icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-selected-glacier\r
+{\r
+    background-image: url('images/metro-icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-selected-glacier\r
+{\r
+    background-image: url('images/metro-icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-grid-collapse-button-glacier {\r
+    margin-top: 1px;\r
+}\r
+.jqx-icon-calendar-pressed-glacier {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-pressed-glacier {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.highcontrast.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.highcontrast.css
new file mode 100644 (file)
index 0000000..be88d22
--- /dev/null
@@ -0,0 +1,125 @@
+.jqx-widget-content-highcontrast{color: #000; border-color: #000; background-color: #fff;}\r
+.jqx-fill-state-normal-highcontrast {color: #000;background-color: #fff;}\r
+.jqx-widget-header-highcontrast{color: #fff; border-color:#000; background-color:#000}\r
+.jqx-fill-state-hover-highcontrast{border-color:#000; color: #fff; background-color:#000}\r
+.jqx-fill-state-pressed-highcontrast{border-color:#37006e; color: #fff; background-color:#37006e}\r
+.jqx-fill-state-focus-highcontrast { border-color: #37006e; }\r
+.jqx-scrollbar-state-normal-highcontrast, .jqx-grid-bottomright-highcontrast, .jqx-panel-bottomright-highcontrast, .jqx-listbox-bottomright-highcontrast{background-color:#000}\r
+.jqx-widget-highcontrast .jqx-grid-column-header-highcontrast, .jqx-grid-cell-highcontrast, .jqx-widget-highcontrast .jqx-grid-cell-highcontrast, .jqx-widget-highcontrast .jqx-grid-group-cell-highcontrast, .jqx-grid-group-cell-highcontrast{border-color:#000}\r
+.jqx-tabs-title-selected-bottom-highcontrast, .jqx-tabs-selection-tracker-bottom-highcontrast, .jqx-tabs-title-selected-top-highcontrast, .jqx-tabs-selection-tracker-top-highcontrast{color: #000; border-color:#000; border-bottom:1px solid #fff; background:#fff}\r
+.jqx-grid-cell-sort-alt-highcontrast, .jqx-grid-cell-filter-alt-highcontrast, .jqx-grid-cell-pinned-highcontrast, .jqx-grid-cell-alt-highcontrast, .jqx-grid-cell-sort-highcontrast{ background-color:#000; color: #fff;}\r
+.jqx-grid-cell-selected-highcontrast{ background-color:#37006e;  color:#fff}\r
+.jqx-grid-cell-hover-highcontrast{ background-color:#000; color: #fff;}\r
+.jqx-menu-vertical-highcontrast{background: #000; color: #fff;}\r
+.jqx-checkbox-hover-highcontrast {\r
+    background-color: #fff;\r
+}\r
+.jqx-radiobutton-hover-highcontrast {\r
+    background-color: #fff;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-highcontrast, .jqx-scrollbar-thumb-state-hover-highcontrast {\r
+    background: #fff;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-highcontrast, .jqx-scrollbar-thumb-state-pressed-highcontrast {\r
+    background: #fff;\r
+}\r
+.jqx-icon-arrow-up-hover-highcontrast, .jqx-icon-arrow-up-selected-highcontrast\r
+{\r
+    background-image: url('images/icon-up-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-down-hover-highcontrast, .jqx-icon-arrow-down-selected-highcontrast\r
+\r
+{\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-left-hover-highcontrast, .jqx-icon-arrow-left-selected-highcontrast\r
+{\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-right-hover-highcontrast, .jqx-icon-arrow-right-selected-highcontrast\r
+{\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-hover-highcontrast, .jqx-icon-arrow-last-selected-highcontrast\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-hover-highcontrast, .jqx-icon-arrow-last-selected-highcontrast\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-hover-highcontrast, .jqx-icon-calendar-pressed-highcontrast {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-highcontrast, .jqx-icon-time-hover-highcontrast, .jqx-icon-time-pressed-highcontrast {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-selected-highcontrast>.jqx-grid-group-expand-highcontrast,\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-hover-highcontrast>.jqx-grid-group-expand-highcontrast {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-selected-highcontrast>.jqx-grid-group-collapse-highcontrast,\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-hover-highcontrast>.jqx-grid-group-collapse-highcontrast {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-selected-highcontrast>.jqx-grid-group-collapse-rtl-highcontrast,\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-hover-highcontrast>.jqx-grid-group-collapse-rtl-highcontrast {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-selected-highcontrast>.jqx-grid-group-expand-rtl-highcontrast,\r
+.jqx-grid-cell-highcontrast.jqx-grid-cell-hover-highcontrast>.jqx-grid-group-expand-rtl-highcontrast {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-menu-item-arrow-right-hover-highcontrast, .jqx-menu-item-arrow-right-selected-highcontrast{background-image:url(images/icon-right-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-down-hover-highcontrast, .jqx-menu-item-arrow-down-selected-highcontrast{background-image:url(images/icon-down-white.png); background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-up-hover-highcontrast, .jqx-menu-item-arrow-up-selected-highcontrast{background-image:url(images/icon-up-white.png);background-position:100% 50%; background-repeat:no-repeat}\r
+.jqx-menu-item-arrow-left-hover-highcontrast, .jqx-menu-item-arrow-left-selected-highcontrast{background-image:url(images/icon-left-white.png); background-position:0 50%; background-repeat:no-repeat}\r
+\r
+.jqx-icon-delete-highcontrast\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-highcontrast\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-highcontrast\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-highcontrast\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-highcontrast\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-highcontrast\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+.jqx-layout-highcontrast\r
+{\r
+    background-color: #000;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.metro.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.metro.css
new file mode 100644 (file)
index 0000000..f44de94
--- /dev/null
@@ -0,0 +1,323 @@
+.jqx-rc-tl-metro\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+}\r
+.jqx-rc-tr-metro\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+.jqx-rc-bl-metro\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+.jqx-rc-br-metro\r
+{\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-metro\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-metro\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-metro\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-metro\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-metro\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+.jqx-widget-metro {\r
+    font-size: 12px;\r
+    font-family: 'segoe ui', arial, sans-serif;\r
+}\r
+.jqx-widget-content-metro{font-size: 12px; font-family: 'segoe ui', arial, sans-serif; border-color: #e5e5e5; color: #767676; background-color: #fff;}\r
+.jqx-widget-header-metro{font-size: 12px; font-family: 'segoe ui', arial, sans-serif; color: #767676; border-color:#e5e5e5; background-color:#f4f4f4;}\r
+.jqx-fill-state-normal-metro{font-size: 12px; font-family: 'segoe ui', arial, sans-serif; border-color: #e5e5e5; color: #767676; background: #ffffff;}\r
+.jqx-button-metro {border-color: #e5e5e5;}\r
+.jqx-fill-state-hover-metro{border-color:#dedede; color: #000; background-color:#dedede;\r
+\r
+}\r
+.jqx-fill-state-focus-metro { border-color: #cdcdcd; }\r
+.jqx-fill-state-pressed-metro{border-color:#1faeff; color: #fff; background-color:#1faeff;\r
+\r
+}\r
+.jqx-input-metro {\r
+    border-color: #e5e5e5;\r
+}\r
+.jqx-scrollbar-state-normal-metro, .jqx-grid-bottomright-metro, .jqx-panel-bottomright-metro, .jqx-listbox-bottomright-metro{background-color:#f0f0f0;}\r
+.jqx-widget-metro .jqx-grid-column-header-metro, .jqx-grid-cell-metro, .jqx-widget-metro .jqx-grid-cell-metro, .jqx-widget-metro .jqx-grid-group-cell-metro, .jqx-grid-group-cell-metro{font-size: 12px; font-family: 'segoe ui', arial, sans-serif; border-color:#f0f0f0;}\r
+.jqx-tabs-title-selected-bottom-metro, .jqx-tabs-selection-tracker-bottom-metro, .jqx-tabs-title-selected-top-metro, .jqx-tabs-selection-tracker-top-metro{color: #767676; border-color:#e5e5e5; border-bottom:1px solid #fff; background:#fff}\r
+.jqx-grid-cell-sort-alt-metro, .jqx-grid-cell-filter-alt-metro, .jqx-grid-cell-pinned-metro, .jqx-grid-cell-alt-metro, .jqx-grid-cell-sort-metro{ background-color:#ededed; color: #000;}\r
+.jqx-menu-vertical-metro{background: #fff; border-color: #e5e5e5;}\r
+.jqx-widget-metro .jqx-grid-cell-metro, .jqx-widget-metro .jqx-grid-column-header-metro, .jqx-widget-metro .jqx-grid-group-cell-metro {color: #000; border-color: #e5e5e5;}\r
+.jqx-widget-metro .jqx-grid-column-menubutton-metro, .jqx-widget-metro .jqx-grid-column-sortascbutton-metro, .jqx-widget-metro .jqx-grid-column-sortdescbutton-metro, .jqx-widget-metro .jqx-grid-column-filterbutton-metro {\r
+    background-color: transparent;\r
+    border-color: #e5e5e5;\r
+}\r
+.jqx-window-header-metro, .jqx-input-button-header-metro, .jqx-calendar-title-header-metro, .jqx-grid-metro .jqx-widget-header-metro, .jqx-grid-header-metro, .jqx-grid-column-header-metro {font-size: 12px; font-family: 'segoe ui', arial, sans-serif; border-color: #e5e5e5; color: #767676; background: #f4f4f4;}\r
+.jqx-grid-column-menubutton-metro {\r
+    background-image: url('images/metro-icon-down.png');\r
+ }\r
+.jqx-widget-metro .jqx-grid-cell-selected-metro, .jqx-grid-cell-selected-metro{ background-color:#1faeff; border-color: #1faeff; font-size: 12px;  color:#fff;}\r
+.jqx-grid-cell-hover-metro{ background-color:#dedede;}\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton-metro {\r
+    background-image: url('images/metro-icon-up.png');\r
+ }\r
+.jqx-grid-column-sortdescbutton-metro {\r
+    background-image: url('images/metro-icon-down.png');\r
+}\r
+.jqx-checkbox-hover-metro {\r
+    background-color: #fff;\r
+}\r
+.jqx-radiobutton-hover-metro {\r
+    background-color: #fff;\r
+}\r
+.jqx-scrollbar-thumb-state-normal-horizontal-metro, .jqx-scrollbar-thumb-state-normal-metro {\r
+    background: #cdcdcd; border-color: #cdcdcd;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-metro, .jqx-scrollbar-thumb-state-hover-metro {\r
+    background: #a6a6a6; border-color: #a6a6a6;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-metro, .jqx-scrollbar-thumb-state-pressed-metro {\r
+    background: #606060; border-color: #606060;\r
+}\r
+.jqx-scrollbar-button-state-normal-metro\r
+{\r
+    border: 1px solid #f0f0f0; \r
+    background: #f0f0f0;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-metro\r
+{\r
+    border: 1px solid #dadada;\r
+    background: #dadada;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-metro\r
+{\r
+    border: 1px solid #606060;\r
+    background: #606060;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-metro\r
+{\r
+    background-image: url(images/metro-icon-up.png);\r
+}\r
+.jqx-window-collapse-button-collapsed-metro {\r
+  background-image: url(images/metro-icon-down.png);\r
+}\r
+.jqx-icon-arrow-up-metro, .jqx-expander-arrow-bottom-metro, .jqx-menu-item-arrow-up-metro\r
+{\r
+    background-image: url('images/metro-icon-up.png');\r
+}\r
+.jqx-icon-arrow-down-metro, .jqx-expander-arrow-top-metro, .jqx-tree-item-arrow-expand-metro, .jqx-tree-item-arrow-expand-hover-metro, .jqx-menu-item-arrow-down-metro\r
+{\r
+    background-image: url('images/metro-icon-down.png');\r
+}\r
+.jqx-icon-arrow-left-metro, .jqx-menu-item-arrow-left-metro\r
+{\r
+    background-image: url('images/metro-icon-left.png');\r
+}\r
+.jqx-icon-arrow-right-metro, .jqx-menu-item-arrow-right-metro, .jqx-tree-item-arrow-collapse-metro, .jqx-tree-item-arrow-collapse-hover-metro\r
+{\r
+    background-image: url('images/metro-icon-right.png');\r
+}\r
+.jqx-tabs-arrow-left-metro, .jqx-tree-item-arrow-collapse-rtl-metro, .jqx-tree-item-arrow-collapse-hover-rtl-metro\r
+{\r
+    background-image: url('images/metro-icon-left.png');\r
+}\r
+.jqx-tabs-arrow-right-metro\r
+{\r
+    background-image: url('images/metro-icon-right.png');\r
+}\r
+.jqx-menu-item-arrow-up-selected-metro, .jqx-icon-arrow-up-selected-metro{background-image:url('images/metro-icon-up-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-metro, .jqx-icon-arrow-down-selected-metro{background-image:url('images/metro-icon-down-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-metro, .jqx-icon-arrow-left-selected-metro{background-image:url('images/metro-icon-left-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-metro, .jqx-icon-arrow-right-selected-metro{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-tabs-close-button-metro{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-tabs-close-button-selected-metro{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-tabs-close-button-hover-metro{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-scrollbar-metro .jqx-icon-arrow-up-selected-metro{background-image:url('images/metro-icon-up-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-metro .jqx-icon-arrow-down-selected-metro{background-image:url('images/metro-icon-down-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-metro .jqx-icon-arrow-left-selected-metro{background-image:url('images/metro-icon-left-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-metro .jqx-icon-arrow-right-selected-metro{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat; background-position:center;}\r
+.jqx-slider-slider-metro\r
+{\r
+    border-color:#cdcdcd;\r
+}\r
+.jqx-slider-button-metro\r
+{\r
+    -moz-border-radius: 9px;\r
+    -webkit-border-radius: 9px;\r
+    border-radius: 9px;\r
+    border-color: #cdcdcd;\r
+}\r
+.jqx-input-button-content-metro\r
+{  \r
+    font-size: 10px;\r
+}\r
+.jqx-dropdownlist-state-normal-metro, .jqx-dropdownlist-state-hover-metro, .jqx-dropdownlist-state-selected-metro,\r
+.jqx-scrollbar-button-state-hover-metro, .jqx-scrollbar-button-state-normal-metro, .jqx-scrollbar-button-state-pressed-metro,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-metro, .jqx-scrollbar-thumb-state-hover-horizontal-metro, .jqx-scrollbar-thumb-state-pressed-horizontal-metro,\r
+.jqx-scrollbar-thumb-state-normal-metro, .jqx-scrollbar-thumb-state-pressed-metro, .jqx-button-metro, .jqx-tree-item-hover-metro, .jqx-tree-item-selected-metro,\r
+.jqx-tree-item-metro, .jqx-menu-item-metro, .jqx-menu-item-hover-metro, .jqx-menu-item-selected-metro, .jqx-menu-item-top-metro, .jqx-menu-item-top-hover-metro, \r
+.jqx-menu-item-top-selected-metro, .jqx-slider-button-metro, .jqx-slider-slider-metro\r
+ {\r
+    -webkit-transition: background-color 100ms linear;\r
+     -moz-transition: background-color 100ms linear;\r
+     -o-transition: background-color 100ms linear;\r
+     -ms-transition: background-color 100ms linear;\r
+     transition: background-color 100ms linear;\r
+}\r
+.jqx-switchbutton-metro {\r
+    -moz-border-radius: 0px; \r
+    -webkit-border-radius: 0px; \r
+    border-radius: 0px;\r
+    border: 2px solid #a6a6a6;\r
+}\r
+.jqx-switchbutton-thumb-metro {\r
+    width: 12px;\r
+    background: #000;\r
+    border: 1px solid #000;\r
+}\r
+.jqx-switchbutton-label-on-metro {\r
+    background: #1faeff;\r
+    color: #1faeff;\r
+}\r
+.jqx-switchbutton-label-off-metro {\r
+    background: #a6a6a6;\r
+    color: #a6a6a6;\r
+}\r
+\r
+.jqx-switchbutton-wrapper-metro {\r
+}\r
+.jqx-grid-cell-metro.jqx-grid-cell-selected-metro>.jqx-grid-group-expand-metro {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metro.jqx-grid-cell-selected-metro>.jqx-grid-group-collapse-metro{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metro.jqx-grid-cell-selected-metro>.jqx-grid-group-collapse-rtl-metro {\r
+    background-image: url('images/metro-icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metro.jqx-grid-cell-selected-metro>.jqx-grid-group-expand-rtl-metro{\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-collapse-metro {\r
+    background-image: url(images/metro-icon-right.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-metro\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-left.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-metro, .jqx-grid-group-expand-rtl-metro\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-down.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-icon-arrow-first-metro\r
+{\r
+    background-image: url('images/metro-icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-metro\r
+{\r
+    background-image: url('images/metro-icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-hover-metro\r
+{\r
+    background-image: url('images/metro-icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-hover-metro\r
+{\r
+    background-image: url('images/metro-icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-selected-metro\r
+{\r
+    background-image: url('images/metro-icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-selected-metro\r
+{\r
+    background-image: url('images/metro-icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-grid-collapse-button-metro {\r
+    margin-top: 1px;\r
+}\r
+.jqx-icon-calendar-pressed-metro {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-layout-metro\r
+{\r
+    background-color: #e5e5e5;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.metrodark.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.metrodark.css
new file mode 100644 (file)
index 0000000..7b2bd50
--- /dev/null
@@ -0,0 +1,373 @@
+.jqx-rc-tl-metrodark\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+}\r
+.jqx-rc-tr-metrodark\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+.jqx-rc-bl-metrodark\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+.jqx-rc-br-metrodark\r
+{\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-metrodark\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-metrodark\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-metrodark\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-metrodark\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-metrodark\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+.jqx-widget-metrodark {\r
+    font-size: 12px; line-height: 17px;\r
+    font-family: 'segoe ui', arial, sans-serif;\r
+    color: inherit;\r
+}\r
+.jqx-widget-content-metrodark{font-size: 12px; line-height: 17px; font-family: 'segoe ui', arial, sans-serif; border-color: #35353A; color: #ffffff; background-color: #252526;}\r
+.jqx-widget-header-metrodark{font-size: 12px; line-height: 17px; font-family: 'segoe ui', arial, sans-serif; color: #ffffff; border-color:#35353A; background-color:#3E3E42;}\r
+.jqx-fill-state-normal-metrodark{font-size: 12px; line-height: 17px; font-family: 'segoe ui', arial, sans-serif; border-color: #35353A; color: #ffffff; background: #3E3E42;}\r
+.jqx-fill-state-hover-metrodark{font-size: 12px; line-height: 17px; font-family: 'segoe ui', arial, sans-serif; border-color:#1C97EA; color: #fff; background-color:#1C97EA;\r
+\r
+}\r
+.jqx-fill-state-focus-metrodark { border-color: #000; }\r
+.jqx-fill-state-pressed-metrodark{border-color:#007ACC; color: #fff; background-color:#007ACC;\r
+\r
+}\r
+.jqx-fill-state-disabled-metrodark {\r
+    color: #898989;\r
+}\r
+.jqx-input-metrodark {\r
+    border-color: #35353A;\r
+}\r
+.jqx-scrollbar-state-normal-metrodark, .jqx-grid-bottomright-metrodark, .jqx-panel-bottomright-metrodark, .jqx-listbox-bottomright-metrodark{background-color:#3E3E42;}\r
+.jqx-widget-metrodark .jqx-grid-column-header-metrodark, .jqx-grid-cell-metrodark, .jqx-widget-metrodark .jqx-grid-cell-metrodark, .jqx-widget-metrodark .jqx-grid-group-cell-metrodark, .jqx-grid-group-cell-metrodark{font-size: 12px; line-height: 17px; font-family: 'segoe ui', arial, sans-serif; border-color: #1C1C1E; background-color: #2A2A2C; color: #fff;}\r
+.jqx-tabs-title-selected-bottom-metrodark, .jqx-tabs-selection-tracker-bottom-metrodark, .jqx-tabs-title-selected-top-metrodark, .jqx-tabs-selection-tracker-top-metrodark{color: #ffffff; border-color:#35353A; border-bottom:1px solid #252526; background:#007ACC}\r
+.jqx-widget-metrodark .jqx-grid-cell-alt-metrodark, .jqx-widget-metrodark .jqx-grid-cell-sort-metrodark, .jqx-widget-metrodark .jqx-grid-cell-pinned-metrodark, .jqx-widget-metrodark .jqx-grid-cell-filter-metrodark, .jqx-grid-cell-sort-alt-metrodark, .jqx-grid-cell-filter-alt-metrodark, .jqx-grid-cell-pinned-metrodark, .jqx-grid-cell-alt-metrodark, .jqx-grid-cell-sort-metrodark{ background-color:#3E3E42; color: #fff;}\r
+.jqx-menu-vertical-metrodark{background: #3E3E42; border-color: #3E3E42;}\r
+.jqx-widget-metrodark .jqx-grid-cell-metrodark, .jqx-widget-metrodark .jqx-grid-column-header-metrodark, .jqx-widget-metrodark .jqx-grid-group-cell-metrodark { border-color: #35353A;}\r
+\r
+.jqx-widget-metrodark .jqx-grid-column-menubutton-metrodark, .jqx-widget-metrodark .jqx-grid-column-sortascbutton-metrodark, .jqx-widget-metrodark .jqx-grid-column-sortdescbutton-metrodark, .jqx-widget-metrodark .jqx-grid-column-filterbutton-metrodark {\r
+    background-color: transparent;\r
+    border-color: #35353A;\r
+}\r
+.jqx-window-header-metrodark, .jqx-input-button-header-metrodark, .jqx-calendar-title-header-metrodark, .jqx-grid-metrodark .jqx-widget-header-metrodark, .jqx-grid-header-metrodark, .jqx-grid-column-header-metrodark {font-size: 12px; line-height: 17px; font-family: 'segoe ui', arial, sans-serif; border-color: #35353A; color: #ffffff; background: #3E3E42;}\r
+.jqx-grid-column-menubutton-metrodark {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+ }\r
+.jqx-calendar-cell-today-metrodark {\r
+    color: #35353A;\r
+}\r
+\r
+.jqx-widget-metrodark .jqx-grid-cell-selected-metrodark, .jqx-grid-cell-selected-metrodark{ background-color:#007ACC; border-color: #007ACC; font-size: 12px;  color:#fff;}\r
+.jqx-widget-metrodark .jqx-grid-cell-hover-metrodark, .jqx-grid-cell-hover-metrodark{ background-color:#1C97EA; border-color: #1C97EA;}\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton-metrodark {\r
+    background-image: url('images/metro-icon-up-white.png');\r
+ }\r
+.jqx-grid-column-sortdescbutton-metrodark {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-checkbox-check-checked-metrodark{background:transparent url(images/check_white.png) center center no-repeat}\r
+.jqx-checkbox-check-indeterminate-metrodark{background:transparent url(images/check_indeterminate_white.png) center center no-repeat}\r
+.jqx-checkbox-hover-metrodark, .jqx-radiobutton-hover-metrodark {\r
+    background-color: #3E3E42;\r
+    border-color: #3E3E42;\r
+}\r
+.jqx-radiobutton-check-checked-metrodark {\r
+    background: #fff;\r
+    border-color: #fff;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-normal-horizontal-metrodark, .jqx-scrollbar-thumb-state-normal-metrodark {\r
+    background: #686868; border-color: #686868;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-metrodark, .jqx-scrollbar-thumb-state-hover-metrodark {\r
+    background: #9E9E9E; border-color: #9E9E9E;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-metrodark, .jqx-scrollbar-thumb-state-pressed-metrodark {\r
+    background: #ffffff; border-color: #ffffff;\r
+}\r
+.jqx-scrollbar-button-state-normal-metrodark\r
+{\r
+    border: 1px solid #3E3E42; \r
+    background: #3E3E42;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-metrodark\r
+{\r
+    border: 1px solid #3E3E42;\r
+    background: #3E3E42;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-metrodark\r
+{\r
+    border: 1px solid #3E3E42;\r
+    background: #3E3E42;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-metrodark\r
+{\r
+    background-image: url(images/metro-icon-up-white.png);\r
+}\r
+.jqx-window-collapse-button-collapsed-metrodark {\r
+  background-image: url(images/metro-icon-down-white.png);\r
+}\r
+.jqx-icon-arrow-up-metrodark, .jqx-expander-arrow-bottom-metrodark, .jqx-menu-item-arrow-up-metrodark\r
+{\r
+    background-image: url('images/metro-icon-up-white.png');\r
+}\r
+.jqx-icon-arrow-down-metrodark, .jqx-expander-arrow-top-metrodark, .jqx-tree-item-arrow-expand-metrodark, .jqx-tree-item-arrow-expand-hover-metrodark, .jqx-menu-item-arrow-down-metrodark\r
+{\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-icon-arrow-left-metrodark, .jqx-menu-item-arrow-left-metrodark\r
+{\r
+    background-image: url('images/metro-icon-left-white.png');\r
+}\r
+.jqx-icon-arrow-right-metrodark, .jqx-menu-item-arrow-right-metrodark, .jqx-tree-item-arrow-collapse-metrodark, .jqx-tree-item-arrow-collapse-hover-metrodark\r
+{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+}\r
+.jqx-tabs-arrow-left-metrodark, .jqx-tree-item-arrow-collapse-rtl-metrodark, .jqx-tree-item-arrow-collapse-hover-rtl-metrodark\r
+{\r
+    background-image: url('images/metro-icon-left-white.png');\r
+}\r
+.jqx-tabs-arrow-right-metrodark\r
+{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+}\r
+.jqx-menu-item-arrow-up-selected-metrodark, .jqx-icon-arrow-up-selected-metrodark{background-image:url('images/metro-icon-up-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-metrodark, .jqx-icon-arrow-down-selected-metrodark{background-image:url('images/metro-icon-down-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-metrodark, .jqx-icon-arrow-left-selected-metrodark{background-image:url('images/metro-icon-left-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-metrodark, .jqx-icon-arrow-right-selected-metrodark{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-window-close-button-metrodark, .jqx-icon-close-metrodark, .jqx-tabs-close-button-metrodark, .jqx-tabs-close-button-hover-metrodark, .jqx-tabs-close-button-selected-metrodark{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+.jqx-listbox-feedback-metrodark {\r
+    border-top: 1px dashed #fff;\r
+}\r
+\r
+.jqx-scrollbar-metrodark .jqx-icon-arrow-up-selected-metrodark{background-image:url('images/metro-icon-up-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-metrodark .jqx-icon-arrow-down-selected-metrodark{background-image:url('images/metro-icon-down-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-metrodark .jqx-icon-arrow-left-selected-metrodark{background-image:url('images/metro-icon-left-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-metrodark .jqx-icon-arrow-right-selected-metrodark{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat; background-position:center;}\r
+.jqx-slider-button-metrodark\r
+{\r
+    border-radius: 100%;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+}\r
+.jqx-input-button-content-metrodark\r
+{  \r
+    font-size: 10px;\r
+}\r
+.jqx-dropdownlist-state-normal-metrodark, .jqx-dropdownlist-state-hover-metrodark, .jqx-dropdownlist-state-selected-metrodark,\r
+.jqx-scrollbar-button-state-hover-metrodark, .jqx-scrollbar-button-state-normal-metrodark, .jqx-scrollbar-button-state-pressed-metrodark,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-metrodark, .jqx-scrollbar-thumb-state-hover-horizontal-metrodark, .jqx-scrollbar-thumb-state-pressed-horizontal-metrodark,\r
+.jqx-scrollbar-thumb-state-normal-metrodark, .jqx-scrollbar-thumb-state-pressed-metrodark, .jqx-button-metrodark, .jqx-tree-item-hover-metrodark, .jqx-tree-item-selected-metrodark,\r
+.jqx-tree-item-metrodark, .jqx-menu-item-metrodark, .jqx-menu-item-hover-metrodark, .jqx-menu-item-selected-metrodark, .jqx-menu-item-top-metrodark, .jqx-menu-item-top-hover-metrodark, \r
+.jqx-menu-item-top-selected-metrodark, .jqx-slider-button-metrodark, .jqx-slider-slider-metrodark\r
+ {\r
+    -webkit-transition: background-color 100ms linear;\r
+     -moz-transition: background-color 100ms linear;\r
+     -o-transition: background-color 100ms linear;\r
+     -ms-transition: background-color 100ms linear;\r
+     transition: background-color 100ms linear;\r
+}\r
+.jqx-switchbutton-metrodark {\r
+    -moz-border-radius: 0px; \r
+    -webkit-border-radius: 0px; \r
+    border-radius: 0px;\r
+    border: 2px solid #35353A;\r
+}\r
+.jqx-switchbutton-thumb-metrodark {\r
+    width: 12px;\r
+    background: #000;\r
+    border: 1px solid #000;\r
+}\r
+.jqx-switchbutton-label-on-metrodark {\r
+    background: #007ACC;\r
+    color: #007ACC;\r
+}\r
+.jqx-switchbutton-label-off-metrodark {\r
+    background: #a6a6a6;\r
+    color: #a6a6a6;\r
+}\r
+\r
+.jqx-switchbutton-wrapper-metrodark {\r
+}\r
+.jqx-grid-group-collapse-metrodark {\r
+    background-image: url(images/metro-icon-right-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-metrodark\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-left-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-metrodark, .jqx-grid-group-expand-rtl-metrodark\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-down-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-icon-arrow-first-metrodark, .jqx-icon-arrow-first-hover-metrodark, .jqx-icon-arrow-first-selected-metrodark\r
+{\r
+    background-image: url('images/metro-icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-metrodark, .jqx-icon-arrow-last-hover-metrodark, .jqx-icon-arrow-last-selected-metrodark\r
+{\r
+    background-image: url('images/metro-icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-selected-metrodark>.jqx-grid-group-expand-metrodark,\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-hover-metrodark>.jqx-grid-group-expand-metrodark {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-selected-metrodark>.jqx-grid-group-collapse-metrodark,\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-hover-metrodark>.jqx-grid-group-collapse-metrodark {\r
+    background-image: url('images/metro-icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-selected-metrodark>.jqx-grid-group-collapse-rtl-metrodark,\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-hover-metrodark>.jqx-grid-group-collapse-rtl-metrodark {\r
+    background-image: url('images/metro-icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-selected-metrodark>.jqx-grid-group-expand-rtl-metrodark,\r
+.jqx-grid-cell-metrodark.jqx-grid-cell-hover-metrodark>.jqx-grid-group-expand-rtl-metrodark {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-grid-expand-button-metrodark {\r
+    margin-top: 3px;\r
+}\r
+.jqx-icon-search-metrodark\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-passwordinput-password-icon-metrodark, .jqx-passwordinput-password-icon-rtl-metrodark\r
+{\r
+    background-image: url(images/icon-showpassword-white.png) !important;\r
+    background-repeat: no-repeat !important;\r
+}\r
+.jqx-icon-calendar-metrodark, .jqx-icon-calendar-hover-metrodark, .jqx-icon-calendar-pressed-metrodark {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-metrodark, .jqx-icon-time-hover-metrodark, .jqx-icon-time-pressed-metrodark {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-icon-delete-metrodark\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-metrodark\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-metrodark\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-metrodark\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-metrodark\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-metrodark\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+.jqx-menu-minimized-button-metrodark {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-metrodark {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-metrodark\r
+{\r
+    background-color: #35353A;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-metrodark\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-metrodark\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-metrodark, .jqx-scheduler-time-column-metrodark, .jqx-scheduler-toolbar-metrodark\r
+{\r
+    background: #35353A !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-metrodark .jqx-scheduler-middle-cell-metrodark, .jqx-scheduler-middle-cell-metrodark {\r
+    border-bottom-color: #35353A !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.mobile.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.mobile.css
new file mode 100644 (file)
index 0000000..e4cbbc3
--- /dev/null
@@ -0,0 +1,777 @@
+.jqx-rc-tl-mobile {\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+}\r
+\r
+.jqx-rc-tr-mobile {\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+}\r
+\r
+.jqx-rc-bl-mobile {\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+}\r
+\r
+.jqx-rc-br-mobile {\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-mobile {\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-mobile {\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-mobile {\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-mobile {\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-mobile {\r
+    -moz-border-radius: 5px;\r
+    -webkit-border-radius: 5px;\r
+    border-radius: 5px;\r
+}\r
+\r
+.jqx-widget-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+    color: inherit;\r
+}\r
+\r
+input[type=text].jqx-input-mobile, input[type=password].jqx-input-mobile, .jqx-input-group-addon-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+    border-color: #b2b2b2 !important;\r
+    background: #fff;\r
+}\r
+\r
+.jqx-widget-content-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+    border-color: #b2b2b2;\r
+    color: #000;\r
+    background-color: #f8f8f8;\r
+}\r
+\r
+.jqx-listbox-mobile, .jqx-calendar-mobile .jqx-widget-content-mobile {\r
+    background: #fff;\r
+}\r
+\r
+.jqx-calendar-mobile .jqx-widget-header-mobile {\r
+    background: #f6f5f1;\r
+}\r
+\r
+.jqx-widget-header-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+    color: #000;\r
+    border-color: #b2b2b2;\r
+    background: #f8f8f8;\r
+}\r
+\r
+.jqx-fill-state-normal-mobile, .jqx-fill-state-hover-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+    border-color: #f1f2f3;\r
+    color: #040404;\r
+    background: #f9f9fa;\r
+}\r
+\r
+.jqx-button-mobile, .jqx-grid-pager-number-mobile {\r
+    padding: 10px 7px;\r
+    background: #f9f9fa;\r
+    border-color: #f1f2f3;\r
+    color: #040404;\r
+    -webkit-box-shadow: 0px 2px 2px rgba(133, 133, 133, 0.8);\r
+    -moz-box-shadow: 0px 2px 2px rgba(133, 133, 133, 0.8);\r
+    box-shadow: 0px 2px 2px rgba(133, 133, 133, 0.8);\r
+}\r
+.jqx-grid-group-column-mobile {\r
+    border-color: #b2b2b2;\r
+    color: #040404;\r
+}\r
+\r
+.jqx-listitem-state-normal-mobile, .jqx-listmenu-item-mobile {\r
+    background: #ffffff;\r
+    border-top: 1px solid #cccccc;\r
+    -moz-border-radius-topleft: 0px !important;\r
+    -webkit-border-top-left-radius: 0px!important;\r
+    border-top-left-radius: 0px!important;\r
+    -moz-border-radius-topright: 0px!important;\r
+    -webkit-border-top-right-radius: 0px!important;\r
+    border-top-right-radius: 0px!important;\r
+    -moz-border-radius-bottomleft: 0px!important;\r
+    -webkit-border-bottom-left-radius: 0px!important;\r
+    border-bottom-left-radius: 0px!important;\r
+    -moz-border-radius-bottomright: 0px!important;\r
+    -webkit-border-bottom-right-radius: 0px!important;\r
+    border-bottom-right-radius: 0px!important;\r
+}\r
+.jqx-listitem-state-normal-touch-mobile {\r
+    padding-top: 5px;\r
+    padding-bottom: 5px;\r
+}\r
+.jqx-listmenu-header-label-mobile {\r
+    font-size: 24px;\r
+    margin-left: -5px;\r
+}\r
+.jqx-listmenu-item-label-mobile {\r
+    display: inline-block;\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-listmenu-separator-mobile {\r
+    font-size: 100%; \r
+    font-family: HelveticaNeue,sans-serif;\r
+}\r
+.jqx-listmenu-item-mobile a:link, .jqx-listmenu-item-mobile a:visited {\r
+    display: inline-block;\r
+    text-decoration: none;\r
+    color: inherit;\r
+    font-size: 100%;\r
+    color: #000;\r
+    width: 100%;\r
+    height: 100%;\r
+    padding: 15px;\r
+}\r
+.jqx-listmenu-item-mobile {\r
+    padding: 0px;\r
+}\r
+.jqx-navigationbar-mobile .jqx-widget-header-mobile, .jqx-navigationbar-mobile .jqx-fill-state-hover-mobile {\r
+    background: #ffffff;\r
+    border-top: 1px solid #cccccc;\r
+}\r
+\r
+.jqx-menu-item-top-selected-mobile {\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+\r
+.jqx-listitem-element:first-child .jqx-listitem-state-normal-mobile {\r
+    border-top: 1px solid #ffffff;\r
+}\r
+\r
+.jqx-listitem-state-hover-mobile {\r
+    background: #ffffff;\r
+    border-color: #ffffff;\r
+    border-top: 1px solid #cccccc;\r
+}\r
+\r
+.jqx-listitem-state-selected-mobile {\r
+    -moz-border-radius-topleft: 5px;\r
+    -webkit-border-top-left-radius: 5px;\r
+    border-top-left-radius: 5px;\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+}\r
+\r
+.jqx-listmenu-auto-separator-mobile, .jqx-listmenu-separator-mobile, .jqx-listitem-state-group-mobile {\r
+    background: #f8f8f8 !important;\r
+    color: #8D8D8D !important;\r
+    padding-top: 15px !important;\r
+}\r
+\r
+.jqx-fill-state-pressed-mobile {\r
+    border-color: #c0c3c7;\r
+    color: #000;\r
+    background-color: #c0c3c7;\r
+}\r
+\r
+.jqx-combobox-multi-item-mobile {\r
+    background: #fff;\r
+    border-color: #cccccc;\r
+    color: #000;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    padding: 7px;\r
+}\r
+\r
+.jqx-fill-state-focus-mobile {\r
+    border-color: #b2b2b2;\r
+}\r
+\r
+.jqx-fill-state-disabled-mobile {\r
+    color: #898989;\r
+}\r
+\r
+.jqx-scrollbar-state-normal-mobile, .jqx-grid-bottomright-mobile, .jqx-panel-bottomright-mobile, .jqx-listbox-bottomright-mobile {\r
+    background-color: #fff;\r
+}\r
+\r
+\r
+.jqx-widget-mobile .jqx-grid-column-header-mobile, .jqx-grid-cell-mobile, .jqx-widget-mobile .jqx-grid-cell-mobile, .jqx-widget-mobile .jqx-grid-group-cell-mobile, .jqx-grid-group-cell-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+}\r
+\r
+.jqx-widget-mobile .jqx-grid-cell-alt-mobile, .jqx-widget-mobile .jqx-grid-cell-sort-mobile, .jqx-widget-mobile .jqx-grid-cell-pinned-mobile, .jqx-widget-mobile .jqx-grid-cell-filter-mobile, .jqx-grid-cell-sort-alt-mobile, .jqx-grid-cell-filter-alt-mobile, .jqx-grid-cell-pinned-mobile, .jqx-grid-cell-alt-mobile, .jqx-grid-cell-sort-mobile {\r
+}\r
+\r
+.jqx-widget-mobile .jqx-grid-cell-mobile, .jqx-widget-mobile .jqx-grid-column-header-mobile, .jqx-widget-mobile .jqx-grid-group-cell-mobile {\r
+    \r
+}\r
+\r
+.jqx-widget-mobile .jqx-grid-column-menubutton-mobile, .jqx-widget-mobile .jqx-grid-column-sortascbutton-mobile, .jqx-widget-mobile .jqx-grid-column-sortdescbutton-mobile, .jqx-widget-mobile .jqx-grid-column-filterbutton-mobile {\r
+    background-color: transparent;\r
+}\r
+\r
+.jqx-grid-cell-filter-row-mobile, .jqx-grid-mobile .jqx-widget-header-mobile, .jqx-grid-header-mobile, .jqx-grid-column-header-mobile {\r
+    font-size: 100%;\r
+    font-family: HelveticaNeue,sans-serif;\r
+    color: #167efc;\r
+}\r
+\r
+.jqx-calendar-title-content-mobile {\r
+    font-weight: bold;\r
+}\r
+\r
+.jqx-calendar-column-cell-mobile {\r
+    font-size: 12px;\r
+}\r
+\r
+.calendar-header-mobile {\r
+    background: #f6f5f1;\r
+}\r
+\r
+.jqx-calendar-cell-mobile {\r
+    border-radius: 100%;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+}\r
+\r
+.jqx-window-header-mobile, .jqx-window-content-mobile {\r
+    background: #d9dedf;\r
+    border-color: #979797;\r
+}\r
+\r
+.jqx-grid-column-menubutton-mobile {\r
+    background-image: url('images/icon-down-transparent.png');\r
+}\r
+\r
+.jqx-input-mobile {\r
+    border-color: #b2b2b2;\r
+}\r
+\r
+.jqx-widget-mobile .jqx-grid-cell-selected-mobile, .jqx-grid-cell-selected-mobile {\r
+    font-size: 100%;\r
+}\r
+\r
+.jqx-widget-mobile .jqx-grid-cell-hover-mobile, .jqx-grid-cell-hover-mobile {\r
+}\r
+/*applied to the column's sort button when the sort order is ascending.*/\r
+.jqx-grid-column-sortascbutton-mobile {\r
+    background-image: url('images/icon-up-transparent.png');\r
+}\r
+\r
+.jqx-grid-column-sortdescbutton-mobile {\r
+    background-image: url('images/icon-down-transparent.png');\r
+}\r
+\r
+.jqx-checkbox-default-mobile {\r
+    background: #f9f9fa;\r
+    border-color: #f1f2f3;\r
+}\r
+\r
+.jqx-widget-mobile .jqx-checkbox-default-mobile {\r
+    border-color: #b2b2b2;\r
+}\r
+\r
+.jqx-checkbox-check-checked-mobile {\r
+    position: relative;\r
+    background: transparent url(images/check_blue.png) center center no-repeat;\r
+}\r
+\r
+.jqx-checkbox-check-indeterminate-mobile {\r
+    background: transparent url(images/check_blue_indeterminate.png) center center no-repeat;\r
+}\r
+\r
+.jqx-radiobutton-check-checked-mobile {\r
+    background: #1c7efb;\r
+    border-color: #2078e9;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-normal-horizontal-mobile, .jqx-scrollbar-thumb-state-normal-mobile {\r
+    background: #b5b5b6;\r
+    border-color: #b5b5b6;\r
+    -moz-border-radius: 10px;\r
+    -webkit-border-radius: 10px;\r
+    border-radius: 10px;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-hover-horizontal-mobile, .jqx-scrollbar-thumb-state-hover-mobile {\r
+    background: #b5b5b6;\r
+    border-color: #b5b5b6;\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-mobile, .jqx-scrollbar-thumb-state-pressed-mobile {\r
+    background: #1c7efb;\r
+    border-color: #1c7efb;\r
+}\r
+\r
+.jqx-scrollbar-button-state-normal-mobile {\r
+    border: 1px solid #fff;\r
+    background: #fff;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-mobile {\r
+    border: 1px solid #fff;\r
+    background: #fff;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-mobile {\r
+    border: 1px solid #1c7efb;\r
+    background: #1c7efb;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-mobile {\r
+    background-image: url(images/icon-up-transparent.png);\r
+}\r
+\r
+.jqx-window-collapse-button-collapsed-mobile {\r
+    background-image: url(images/icon-down-transparent.png);\r
+}\r
+\r
+.jqx-icon-arrow-up-mobile, .jqx-expander-arrow-bottom-mobile, .jqx-menu-item-arrow-up-mobile {\r
+    background-image: url('images/icon-up-transparent.png');\r
+}\r
+\r
+.jqx-icon-arrow-down-mobile, .jqx-expander-arrow-top-mobile, .jqx-menu-item-arrow-down-mobile {\r
+    background-image: url('images/icon-down-transparent.png');\r
+}\r
+\r
+.jqx-icon-arrow-left-mobile, .jqx-menu-item-arrow-left-mobile {\r
+    background-image: url('images/icon-left-transparent.png');\r
+}\r
+\r
+.jqx-icon-arrow-right-mobile, .jqx-menu-item-arrow-right-mobile {\r
+    background-image: url('images/icon-right-transparent.png');\r
+}\r
+\r
+.jqx-tree-item-arrow-collapse-rtl-mobile, .jqx-tree-item-arrow-collapse-hover-rtl-mobile {\r
+    background-image: url('images/icon-left-blue.png');\r
+}\r
+\r
+.jqx-tabs-arrow-left-mobile, .jqx-grid-pager-mobile .jqx-icon-arrow-left-mobile {\r
+    background-image: url('images/icon-left-blue.png');\r
+}\r
+.jqx-tree-item-arrow-expand-hover-mobile, .jqx-tree-item-arrow-expand-mobile {\r
+    background-image: url('images/icon-down-blue.png');\r
+} \r
+.jqx-tree-item-arrow-collapse-hover-mobile, .jqx-tree-item-arrow-collapse-mobile, .jqx-tabs-arrow-right-mobile, .jqx-grid-pager-mobile .jqx-icon-arrow-right-mobile {\r
+    background-image: url('images/icon-right-blue.png');\r
+}\r
+\r
+.jqx-calendar-mobile .jqx-icon-arrow-right-mobile {\r
+    background-image: url('images/icon-right-blue.png');\r
+}\r
+\r
+.jqx-calendar-mobile .jqx-icon-arrow-left-mobile {\r
+    background-image: url('images/icon-left-blue.png');\r
+}\r
+\r
+.jqx-menu-item-arrow-up-selected-mobile, .jqx-icon-arrow-up-selected-mobile {\r
+    background-image: url('images/icon-up-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-menu-item-arrow-down-selected-mobile, .jqx-icon-arrow-down-selected-mobile {\r
+    background-image: url('images/icon-down-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-menu-item-arrow-left-selected-mobile, .jqx-icon-arrow-left-selected-mobile {\r
+    background-image: url('images/icon-left-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-menu-item-arrow-right-selected-mobile, .jqx-icon-arrow-right-selected-mobile {\r
+    background-image: url('images/icon-right-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-window-close-button-mobile, .jqx-icon-close-mobile, .jqx-tabs-close-button-mobile, .jqx-tabs-close-button-hover-mobile, .jqx-tabs-close-button-selected-mobile {\r
+    background-image: url(images/close_blue.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-listbox-feedback-mobile {\r
+    border-top: 1px dashed #fff;\r
+}\r
+\r
+.jqx-scrollbar-mobile .jqx-icon-arrow-up-selected-mobile {\r
+    background-image: url('images/icon-up-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-scrollbar-mobile .jqx-icon-arrow-down-selected-mobile {\r
+    background-image: url('images/icon-down-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-scrollbar-mobile .jqx-icon-arrow-left-selected-mobile {\r
+    background-image: url('images/icon-left-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-scrollbar-mobile .jqx-icon-arrow-right-selected-mobile {\r
+    background-image: url('images/icon-right-transparent.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-input-button-content-mobile {\r
+    font-size: 13px;\r
+}\r
+\r
+.jqx-input-button-header-mobile {\r
+    padding-top: 2px !important;\r
+    padding-bottom: 2px !important;\r
+}\r
+\r
+.jqx-slider-button-mobile {\r
+    border-radius: 100%;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    padding: 4px !important;\r
+}\r
+\r
+.jqx-slider-slider-mobile {\r
+    width: 25px;\r
+    height: 25px;\r
+    margin-top: -10px;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    -webkit-box-shadow: 0px 2px 2px rgba(133, 133, 133, 0.5);\r
+    -moz-box-shadow: 0px 2px 2px rgba(133, 133, 133, 0.5);\r
+    box-shadow: 0px 2px 2px rgba(133, 133, 133, 0.5);\r
+}\r
+.jqx-file-upload-mobile .jqx-icon-arrow-up-mobile {\r
+  background-image: url('images/icon-up-blue.png');\r
+}\r
+.jqx-slider-track-mobile {\r
+    background: #b4b4b5;\r
+    border-color: #b4b4b5;\r
+}\r
+\r
+.jqx-slider-rangebar-mobile {\r
+    background: #167efc;\r
+}\r
+.jqx-splitter-splitbar-vertical-mobile, .jqx-splitter-splitbar-horizontal-mobile {\r
+    background: #bec1c5;\r
+    border-color: #bec1c5;\r
+}\r
+.jqx-splitter-collapse-button-horizontal-mobile, .jqx-splitter-collapse-button-vertical-mobile {\r
+    background: #167efc;\r
+}\r
+\r
+.jqx-progressbar-value-mobile, .jqx-progressbar-value-vertical-mobile  {\r
+    background: #167efc;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-mobile, .jqx-dropdownlist-state-hover-mobile, .jqx-dropdownlist-state-selected-mobile,\r
+.jqx-scrollbar-button-state-hover-mobile, .jqx-scrollbar-button-state-normal-mobile, .jqx-scrollbar-button-state-pressed-mobile,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-mobile, .jqx-scrollbar-thumb-state-hover-horizontal-mobile, .jqx-scrollbar-thumb-state-pressed-horizontal-mobile,\r
+.jqx-scrollbar-thumb-state-normal-mobile, .jqx-scrollbar-thumb-state-pressed-mobile, .jqx-button-mobile, .jqx-tree-item-hover-mobile, .jqx-tree-item-selected-mobile,\r
+.jqx-tree-item-mobile, .jqx-menu-item-mobile, .jqx-menu-item-hover-mobile, .jqx-menu-item-selected-mobile, .jqx-menu-item-top-mobile, .jqx-menu-item-top-hover-mobile,\r
+.jqx-menu-item-top-selected-mobile, .jqx-slider-button-mobile, .jqx-slider-slider-mobile {\r
+    -webkit-transition: background-color 100ms linear;\r
+    -moz-transition: background-color 100ms linear;\r
+    -o-transition: background-color 100ms linear;\r
+    -ms-transition: background-color 100ms linear;\r
+    transition: background-color 100ms linear;\r
+}\r
+\r
+.jqx-switchbutton-mobile {\r
+    -moz-border-radius-topleft: 15px;\r
+    -webkit-border-top-left-radius: 15px;\r
+    border-top-left-radius: 15px;\r
+    -moz-border-radius-bottomleft: 15px;\r
+    -webkit-border-bottom-left-radius: 15px;\r
+    border-bottom-left-radius: 15px;\r
+    -moz-border-radius-topright: 15px;\r
+    -webkit-border-top-right-radius: 15px;\r
+    border-top-right-radius: 15px;\r
+    -moz-border-radius-bottomright: 15px;\r
+    -webkit-border-bottom-right-radius: 15px;\r
+    border-bottom-right-radius: 15px;\r
+    border: 1px solid #e4e4e4;\r
+    background: #fff;\r
+}\r
+\r
+.jqx-switchbutton-thumb-mobile {\r
+    background: #fff;\r
+    border: 1px solid transparent;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.25);\r
+    -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.25);\r
+    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.25);\r
+    z-index: 99;\r
+    left: 1px;\r
+    position: relative;\r
+}\r
+\r
+.jqx-switchbutton-on-mobile {\r
+    background: #4cd964;\r
+    color: #4cd964;\r
+}\r
+\r
+    .jqx-switchbutton-on-mobile .jqx-switchbutton-thumb-mobile {\r
+    }\r
+\r
+.jqx-switchbutton-label-on-mobile {\r
+    background: #4cd964;\r
+    color: #4cd964;\r
+}\r
+\r
+.jqx-switchbutton-label-off-mobile {\r
+    background: #fff;\r
+    color: #fff;\r
+}\r
+\r
+\r
+.jqx-tabs-title-mobile {\r
+    background: transparent;\r
+    border-color: transparent;\r
+    color: #157efb;\r
+}\r
+\r
+.jqx-tabs-header-bottom-mobile {\r
+    color: #929292;\r
+}\r
+\r
+.jqx-tabs-title-selected-top-mobile, .jqx-tabs-selection-tracker-top-mobile {\r
+    color: #fff;\r
+    background: #157efb;\r
+}\r
+\r
+.jqx-tabs-title-selected-bottom-mobile, .jqx-tabs-selection-tracker-bottom-mobile {\r
+    color: #fff;\r
+    background: #157efb;\r
+}\r
+\r
+.jqx-tabs-title-hover-top-mobile, .jqx-tabs-title-hover-bottom-mobile, .jqx-tabs-header-mobile {\r
+    color: #157efb;\r
+}\r
+.jqx-listmenu-header-mobile .jqx-button-mobile {\r
+    background: transparent;\r
+    border: none;\r
+    color: #1c7efb;\r
+    box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+}\r
+.jqx-listmenu-header-mobile .jqx-button-mobile span {\r
+    min-height: 16px;\r
+    line-height: 19px;\r
+}\r
+.jqx-widget-header-mobile .jqx-button-mobile {\r
+    margin-left: -10px;\r
+}\r
+.jqx-listmenu-backbutton-arrow-mobile {\r
+   background-image: url('images/icon-left-blue.png'); \r
+   background-repeat: no-repeat;\r
+   width: 16px;\r
+   height: 16px;\r
+   margin-right: 2px;\r
+   margin-top: 1px;\r
+}\r
+\r
+.jqx-switchbutton-wrapper-mobile {\r
+}\r
+\r
+.jqx-icon-arrow-first-mobile {\r
+    background-image: url('images/icon-first-blue.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-icon-arrow-last-mobile {\r
+    background-image: url('images/icon-last-blue.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-progressbar-text-mobile {\r
+    font-size: 100%;\r
+}\r
+\r
+.jqx-grid-pager-mobile {\r
+    color: #157efb;\r
+}\r
+\r
+    .jqx-grid-pager-mobile .jqx-button-mobile {\r
+        padding: 3px !important;\r
+    }\r
+\r
+.jqx-grid-pager-number-mobile {\r
+    top: 1px;\r
+    position: relative;\r
+    padding: 1px 7px;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    border-radius: 100%;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    color: #157efb;\r
+}\r
+\r
+.jqx-grid-pager-number-mobile.jqx-fill-state-pressed-mobile {\r
+    color: #fff;\r
+    background: #157efb;\r
+    border-color: #157efb;\r
+}\r
+\r
+.jqx-grid-pager-mobile .jqx-button-mobile {\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+    color: #157efb;\r
+}\r
+\r
+.jqx-listbox-mobile {\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+\r
+.jqx-group-button-normal-mobile {\r
+    background: #f6f5f1;\r
+    color: #157efb;\r
+    border-color: #157efb;\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    box-shadow: none;\r
+}\r
+\r
+.jqx-group-button-pressed-mobile {\r
+    background: #157efb;\r
+    color: #fff;\r
+}\r
+.jqx-grid-group-collapse-mobile {\r
+    background-image: url(images/icon-right-blue.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-mobile\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/icon-left-blue.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-mobile, .jqx-grid-group-expand-rtl-mobile\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/icon-down-blue.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-tree-grid-indent-mobile, .jqx-tree-grid-collapse-button-mobile, .jqx-tree-grid-expand-button-mobile {\r
+    width: 20px;\r
+}\r
+.jqx-tree-grid-checkbox-mobile {\r
+    width: 16px; height: 16px;\r
+}\r
+.jqx-tree-grid-expand-button-mobile {\r
+    margin-top: 3px;\r
+}\r
+.jqx-editor-toolbar-button-mobile {\r
+    border-radius: 0px;\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+}\r
+.jqx-file-upload-file-name-mobile{padding:3px;}\r
+.jqx-file-upload-file-row-mobile{ height: 40px;}\r
+.jqx-layout-mobile\r
+{\r
+    background-color: #b2b2b2;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-mobile\r
+{\r
+    background-image: url("images/pin-blue.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-mobile\r
+{\r
+    background-image: url("images/pinned-blue.png");\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.office.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.office.css
new file mode 100644 (file)
index 0000000..89a6a8a
--- /dev/null
@@ -0,0 +1,262 @@
+.jqx-rc-tl-office\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+}\r
+.jqx-rc-tr-office\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+.jqx-rc-bl-office\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+.jqx-rc-br-office\r
+{\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-office\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-office\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-office\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-office\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-office\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+.jqx-widget-office {\r
+    font-family: Calibri;\r
+}\r
+.jqx-widget-content-office{font-family: Calibri; border-color: #d4d4d4; color: #444444; background-color: #fff;}\r
+.jqx-widget-header-office{font-family: Calibri; color: #444444; border-color:#d4d4d4; background-color:#ffffff;}\r
+\r
+.jqx-fill-state-normal-office{font-family: Calibri; border-color: #d4d4d4; color: #444444; background: #fdfdfd;}\r
+.jqx-grid-cell-sort-alt-office, .jqx-grid-cell-filter-alt-office, .jqx-grid-cell-pinned-office, .jqx-grid-cell-alt-office, .jqx-grid-cell-sort-office{ background:#ededed; color: #000;}\r
+.jqx-button-office {border-color: #d4d4d4;}\r
+.jqx-fill-state-hover-office{border-color:#86bfa0; color: #000; background:#d3f0e0;}\r
+.jqx-input-office, .jqx-input-button-content-office {border-color: #d4d4d4;}\r
+.jqx-fill-state-focus-office, .jqx-combobox-content-focus-office, .jqx-numberinput-focus, .jqx-datetimeinput-office .jqx-fill-state-hover-office, .jqx-datetimeinput-office .jqx-fill-state-pressed-office{ border-color: #86bfa0; }\r
+.jqx-fill-state-pressed-office{border-color:#429366; color: #000; background:#86bfa0;}\r
+\r
+.jqx-scrollbar-state-normal-office, .jqx-grid-bottomright-office, .jqx-panel-bottomright-office, .jqx-listbox-bottomright-office{background:#f3f3f3;}\r
+.jqx-widget-office .jqx-grid-column-header-office, .jqx-grid-cell-office, .jqx-widget-office .jqx-grid-cell-office, .jqx-widget-office .jqx-grid-group-cell-office, .jqx-grid-group-cell-office{font-family: Calibri; border-color:#f3f3f3;}\r
+.jqx-tabs-title-bottom-office, .jqx-tabs-title-office{color: #666666;}\r
+.jqx-tabs-title-hover-bottom-office, .jqx-tabs-title-hover-top-office{color: #217346; background: transparent; border-color: transparent;}\r
+.jqx-tabs-title-selected-bottom-office, .jqx-tabs-selection-tracker-bottom-office, .jqx-tabs-title-selected-top-office, .jqx-tabs-selection-tracker-top-office{font-weight: bold; color: #217346; border-color:#d4d4d4; border-bottom:1px solid #fff; background:#fff}\r
+.jqx-menu-vertical-office{background: #fff; border-color: #d4d4d4;}\r
+.jqx-widget-office .jqx-grid-cell-office, .jqx-widget-office .jqx-grid-column-header-office, .jqx-widget-office .jqx-grid-group-cell-office {color: #000; border-color: #d4d4d4;}\r
+.jqx-widget-office .jqx-grid-column-menubutton-office, .jqx-widget-office .jqx-grid-column-sortascbutton-office, .jqx-widget-office .jqx-grid-column-sortdescbutton-office, .jqx-widget-office .jqx-grid-column-filterbutton-office {\r
+    background-color: transparent;\r
+    border-color: #d4d4d4;\r
+}\r
+ .jqx-input-button-header-office, .jqx-calendar-title-header-office, .jqx-grid-office .jqx-widget-header-office, .jqx-grid-header-office, .jqx-grid-column-header-office, .jqx-grid-office {font-family: Calibri; border-color: #d4d4d4; color: #444444; background: #fff;}\r
+.jqx-window-header-office{font-family: Calibri; color: #444444; background: #fff;}\r
+.jqx-grid-column-menubutton-office {\r
+    background-image: url('images/office-icon-down.png');\r
+ }\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton-office {\r
+    background-image: url('images/office-icon-up.png');\r
+ }\r
+.jqx-grid-column-sortdescbutton-office {\r
+    background-image: url('images/office-icon-down.png');\r
+}\r
+.jqx-checkbox-hover-office {\r
+    background: #fff;\r
+}\r
+.jqx-radiobutton-hover-office {\r
+    background: #fff;\r
+}\r
+.jqx-scrollbar-thumb-state-normal-horizontal-office, .jqx-scrollbar-thumb-state-normal-office {\r
+    background: #ffffff; border-color: #d4d4d4;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-office, .jqx-scrollbar-thumb-state-hover-office {\r
+    background: #f0f0f0; border-color: #d4d4d4;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-office, .jqx-scrollbar-thumb-state-pressed-office {\r
+    background: #f0f0f0; border-color: #777777;\r
+}\r
+.jqx-scrollbar-button-state-normal-office\r
+{\r
+    border: 1px solid #d4d4d4; \r
+    background: #fff;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-office\r
+{\r
+    border: 1px solid #777777;\r
+    background: #fff;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-office\r
+{\r
+    border: 1px solid #777777;\r
+    background: #f0f0f0;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-office\r
+{\r
+    background-image: url(images/office-icon-up.png);\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-window-collapse-button-collapsed-office {\r
+    background-image: url(images/office-icon-down.png);\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-icon-arrow-up-office, .jqx-expander-arrow-bottom-office, .jqx-menu-item-arrow-up-office\r
+{\r
+    background-image: url('images/office-icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-down-office, .jqx-expander-arrow-top-office, .jqx-tree-item-arrow-expand-office, .jqx-tree-item-arrow-expand-hover-office, .jqx-menu-item-arrow-down-office\r
+{\r
+    background-image: url('images/office-icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-left-office, .jqx-menu-item-arrow-left-office\r
+{\r
+    background-image: url('images/office-icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-right-office, .jqx-menu-item-arrow-right-office, .jqx-tree-item-arrow-collapse-office, .jqx-tree-item-arrow-collapse-hover-office\r
+{\r
+    background-image: url('images/office-icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tabs-arrow-left-office, .jqx-tree-item-arrow-collapse-rtl-office, .jqx-tree-item-arrow-collapse-hover-rtl-office\r
+{\r
+    background-image: url('images/office-icon-left.png');\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-tabs-arrow-right-office\r
+{\r
+    background-image: url('images/office-icon-right.png');\r
+    background-repeat: no-repeat;\r
+}\r
+\r
+.jqx-menu-item-arrow-up-selected-office, .jqx-icon-arrow-up-selected-office{background-image:url('images/office-icon-up.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-office, .jqx-icon-arrow-down-selected-office{background-image:url('images/office-icon-down.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-office, .jqx-icon-arrow-left-selected-office{background-image:url('images/office-icon-left.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-office, .jqx-icon-arrow-right-selected-office{background-image:url('images/office-icon-right.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-tabs-close-button-office{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-tabs-close-button-selected-office{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-tabs-close-button-hover-office{background-image:url(images/close.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-expander-arrow-bottom-office,.jqx-scrollbar-office .jqx-icon-arrow-up-selected-office{background-image:url('images/office-icon-up.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-expander-arrow-top-office, .jqx-scrollbar-office .jqx-icon-arrow-down-selected-office{background-image:url('images/office-icon-down.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-office .jqx-icon-arrow-left-selected-office{background-image:url('images/office-icon-left.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-office .jqx-icon-arrow-right-selected-office{background-image:url('images/office-icon-right.png');background-repeat:no-repeat; background-position:center;}\r
+.jqx-slider-slider-office\r
+{\r
+}\r
+.jqx-slider-button-office\r
+{\r
+    -moz-border-radius: 9px;\r
+    -webkit-border-radius: 9px;\r
+    border-radius: 9px;\r
+}\r
+.jqx-input-button-content-office\r
+{  \r
+    font-size: 10px;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-office, .jqx-dropdownlist-state-hover-office, .jqx-dropdownlist-state-selected-office,\r
+.jqx-scrollbar-button-state-hover-office, .jqx-scrollbar-button-state-normal-office, .jqx-scrollbar-button-state-pressed-office,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-office, .jqx-scrollbar-thumb-state-hover-horizontal-office, .jqx-scrollbar-thumb-state-pressed-horizontal-office,\r
+.jqx-scrollbar-thumb-state-normal-office, .jqx-scrollbar-thumb-state-pressed-office, .jqx-button-office, .jqx-tree-item-hover-office, .jqx-tree-item-selected-office,\r
+.jqx-tree-item-office, .jqx-menu-item-office, .jqx-menu-item-hover-office, .jqx-menu-item-selected-office, .jqx-menu-item-top-office, .jqx-menu-item-top-hover-office, \r
+.jqx-menu-item-top-selected-office, .jqx-slider-button-office, .jqx-slider-slider-office\r
+ {\r
+    -webkit-transition: background-color 100ms linear;\r
+     -moz-transition: background-color 100ms linear;\r
+     -o-transition: background-color 100ms linear;\r
+     -ms-transition: background-color 100ms linear;\r
+     transition: background-color 100ms linear;\r
+}\r
+.jqx-switchbutton-office {\r
+    -moz-border-radius: 0px; \r
+    -webkit-border-radius: 0px; \r
+    border-radius: 0px;\r
+    border: 2px solid #a6a6a6;\r
+}\r
+.jqx-switchbutton-thumb-office {\r
+    width: 12px;\r
+    background: #000;\r
+    border: 1px solid #000;\r
+}\r
+.jqx-switchbutton-label-on-office {\r
+    background: #429366;\r
+    color: #429366;\r
+}\r
+.jqx-switchbutton-label-off-office {\r
+    background: #a6a6a6;\r
+    color: #a6a6a6;\r
+}\r
+.jqx-icon-arrow-first-metro\r
+{\r
+    background-image: url('images/office-icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-metro\r
+{\r
+    background-image: url('images/office-icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-switchbutton-wrapper-office {\r
+}\r
+.jqx-layout-office\r
+{\r
+    background-color: #d4d4d4;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.orange.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.orange.css
new file mode 100644 (file)
index 0000000..884f510
--- /dev/null
@@ -0,0 +1,198 @@
+/*states, content and header*/\r
+.jqx-widget-orange{border-color:#E48605}\r
+.jqx-widget-content-orange{color:#000000; border-color:#E48605}\r
+.jqx-fill-state-normal-orange, .jqx-widget-header-orange, .jqx-menu-vertical-orange {\r
+    border-color: #E48605;\r
+    color: #ffffff;\r
+    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\r
+    background-color: #faa732;\r
+    *background-color: #f89406;\r
+    background-image: -moz-linear-gradient(top, #fbb450, #f89406);\r
+    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));\r
+    background-image: -webkit-linear-gradient(top, #fbb450, #f89406);\r
+    background-image: -o-linear-gradient(top, #fbb450, #f89406);\r
+    background-image: linear-gradient(to bottom, #fbb450, #f89406);\r
+    background-repeat: repeat-x;\r
+}\r
+.jqx-fill-state-hover-orange{\r
+    border-color: #E48605;\r
+    color: #ffffff;\r
+    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\r
+    background-color: #E74615;\r
+    *background-color: #E74615;\r
+    background-image: -moz-linear-gradient(top, #f89406, #E48605);\r
+    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f89406), to(#E48605));\r
+    background-image: -webkit-linear-gradient(top, #f89406, #E48605);\r
+    background-image: -o-linear-gradient(top, #f89406, #E48605);\r
+    background-image: linear-gradient(to bottom, #f89406, #E48605);\r
+    background-repeat: repeat-x;\r
+}\r
+.jqx-fill-state-pressed-orange, .jqx-menu-item-top-hover-orange{ background: #044062; /* Old browsers */\r
+    border-color: #325da7;\r
+    color: #ffffff;\r
+    background: #4d77c1; /* Old browsers */\r
+    background: -moz-linear-gradient(top, #4d77c1 0%, #325da7 100%); /* FF3.6+ */\r
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#4d77c1), color-stop(100%,#325da7)); /* Chrome,Safari4+ */\r
+    background: -webkit-linear-gradient(top, #4d77c1 0%,#325da7 100%); /* Chrome10+,Safari5.1+ */\r
+    background: -o-linear-gradient(top, #4d77c1 0%,#325da7 100%); /* Opera 11.10+ */\r
+    background: -ms-linear-gradient(top, #4d77c1 0%,#325da7 100%); /* IE10+ */\r
+    background: linear-gradient(to bottom, #4d77c1 0%,#325da7 100%); /* W3C */\r
+}\r
+/*checkbox images, grid cells*/\r
+.jqx-checkbox-check-checked-orange{background:transparent url(images/check_white.png) left top no-repeat}\r
+.jqx-checkbox-check-indeterminate-orange{background:transparent url(images/check_indeterminate_white.png) left top no-repeat}\r
+.jqx-grid-orange, .jqx-grid-header-orange, .jqx-grid-cell-orange{border-color:#E48605}\r
+.jqx-widget-orange .jqx-grid-cell-orange, .jqx-widget-orange .jqx-grid-group-cell-orange{border-color:#FBB34E}\r
+.jqx-widget-orange .jqx-grid-column-header-orange{border-color:#E48605}\r
+.jqx-grid-bottomright-orange, .jqx-panel-bottomright-orange, .jqx-listbox-bottomright-orange{   background-color:#FBB659}\r
+.jqx-widget-orange .jqx-grid-column-menubutton-orange, .jqx-menu-vertical-orange{border-color:#FBB34E}\r
+ .jqx-grid-selectionarea-orange{background-color:#6eaad3;border:1px solid #6eaad3; opacity:0.5}\r
+.jqx-grid-group-cell-orange{border-color:#FBB34E; background-color:#fff}\r
+.jqx-grid-cell-orange, .jqx-widget-orange .jqx-grid-cell-orange {\r
+border-color:#FBB34E; }\r
+.jqx-grid-cell-sort-orange, .jqx-grid-cell-filter-orange, .jqx-grid-cell-pinned-orange{background-color:#FCC67C}\r
+.jqx-grid-cell-alt-orange, .jqx-grid-cell-sort-alt-orange, .jqx-grid-cell-filter-alt-orange{background-color:#FCC67C}\r
+.jqx-scrollbar-state-normal-orange{background-color:#FBB659; border:1px solid #FBB659;}\r
+.jqx-tabs-title-selected-bottom-orange, .jqx-tabs-selection-tracker-bottom-orange, .jqx-tabs-title-selected-top-orange, .jqx-tabs-selection-tracker-top-orange{text-shadow: none; color: #000; border-color:#E48605; border-bottom:1px solid #ffffff; background:#ffffff}\r
+.jqx-radiobutton-check-checked-orange {\r
+    background: #fff;\r
+    border-color: #fff;\r
+}\r
+/*icons*/\r
+.jqx-icon-arrow-left-orange{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-right-orange{background-image:url('images/icon-right-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-menu-item-arrow-left-orange{background-image:url('images/icon-left.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-menu-item-arrow-right-orange{background-image:url('images/icon-right.png'); background-repeat:no-repeat; background-position:center}\r
+\r
+.jqx-grid-column-sortascbutton-orange, .jqx-expander-arrow-bottom-orange, .jqx-window-collapse-button-orange, .jqx-menu-item-arrow-up-orange, .jqx-menu-item-arrow-up-selected-orange, .jqx-menu-item-arrow-top-up-orange, .jqx-icon-arrow-up-orange, .jqx-icon-arrow-up-hover-orange, .jqx-icon-arrow-up-selected-orange{background-image:url('images/icon-up-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-grid-column-menubutton-orange, .jqx-grid-column-sortdescbutton-orange, .jqx-expander-arrow-top-orange, .jqx-window-collapse-button-collapsed-orange, .jqx-menu-item-arrow-down-orange, .jqx-menu-item-arrow-down-selected-orange, .jqx-menu-item-arrow-down-orange, .jqx-icon-arrow-down-orange, .jqx-icon-arrow-down-hover-orange, .jqx-icon-arrow-down-selected-orange{background-image:url('images/icon-down-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-tabs-arrow-left-orange, .jqx-menu-item-arrow-left-selected-orange, .jqx-menu-item-arrow-top-left-orange, .jqx-icon-arrow-down-left-orange, .jqx-icon-arrow-left-selected-orange{background-image:url('images/icon-left-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-tabs-arrow-right-orange, .jqx-menu-item-arrow-right-selected-orange, .jqx-menu-item-arrow-top-right-orange, .jqx-icon-arrow-right-hover-orange, .jqx-icon-arrow-right-selected-orange{background-image:url('images/icon-right-white.png');background-repeat:no-repeat;background-position:center}\r
+.jqx-window-close-button-orange, .jqx-icon-close-orange, .jqx-tabs-close-button-orange, .jqx-tabs-close-button-hover-orange, .jqx-tabs-close-button-selected-orange{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+\r
+.jqx-scrollbar-thumb-state-normal-horizontal-orange{ background:#F9960A; border:1px solid #E48605}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-orange{ background:#E48605; border:1px solid #E48605}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-orange{ background:#111086; border:1px solid #070734}\r
+.jqx-scrollbar-thumb-state-normal-orange{ background:#F9960A; border:1px solid #E48605;}\r
+.jqx-scrollbar-thumb-state-hover-orange{ background:#E48605; border:1px solid #E48605}\r
+.jqx-scrollbar-thumb-state-pressed-orange{ background:#111086; border:1px solid #070734}\r
+.jqx-icon-arrow-first-orange\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-orange\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-orange>.jqx-grid-group-expand-orange, .jqx-tree-item-arrow-expand-orange {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-orange>.jqx-grid-group-collapse-orange, .jqx-tree-item-arrow-collapse-orange {\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-orange>.jqx-grid-group-collapse-rtl-orange, .jqx-tree-item-arrow-collapse-rtl-orange {\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-orange>.jqx-grid-group-expand-rtl-orange {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-orange.jqx-grid-cell-selected-orange>.jqx-grid-group-expand-orange,\r
+.jqx-grid-cell-orange.jqx-grid-cell-hover-orange>.jqx-grid-group-expand-orange {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-orange.jqx-grid-cell-selected-orange>.jqx-grid-group-collapse-orange,\r
+.jqx-grid-cell-orange.jqx-grid-cell-hover-orange>.jqx-grid-group-collapse-orange {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-orange.jqx-grid-cell-selected-orange>.jqx-grid-group-collapse-rtl-orange,\r
+.jqx-grid-cell-orange.jqx-grid-cell-hover-orange>.jqx-grid-group-collapse-rtl-orange {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-orange.jqx-grid-cell-selected-orange>.jqx-grid-group-expand-rtl-orange,\r
+.jqx-grid-cell-orange.jqx-grid-cell-hover-orange>.jqx-grid-group-expand-rtl-orange {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search-orange\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-orange, .jqx-icon-calendar-hover-orange, .jqx-icon-calendar-pressed-orange {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-orange, .jqx-icon-time-hover-orange, .jqx-icon-time-pressed-orange {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-icon-delete-orange\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-orange\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-orange\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-orange\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-orange\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-orange\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+.jqx-menu-minimized-button-orange {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-orange {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-orange\r
+{\r
+    background-color: #E48605;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-orange\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-orange\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-orange, .jqx-scheduler-time-column-orange, .jqx-scheduler-toolbar-orange\r
+{\r
+    background: #E48605 !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-orange .jqx-scheduler-middle-cell-orange, .jqx-scheduler-middle-cell-orange {\r
+    border-bottom-color: #E48605 !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.shinyblack.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.shinyblack.css
new file mode 100644 (file)
index 0000000..f142e52
--- /dev/null
@@ -0,0 +1,177 @@
+.jqx-widget-shinyblack{border-color:#222}\r
+.jqx-widget-content-shinyblack{color:#222; border-color:#262626}\r
+.jqx-fill-state-normal-shinyblack, .jqx-widget-header-shinyblack{color:#fff; border-color:#000; background:#000 url(images/bg_black.png) left center scroll repeat-x}\r
+.jqx-fill-state-hover-shinyblack{background:transparent url(images/bg_blackhover.png) left center scroll repeat-x; border-color:#262626; color:#fff}\r
+.jqx-fill-state-pressed-shinyblack, .jqx-menu-item-top-hover-shinyblack{background:transparent url(images/bg_blackpressed.png) left center scroll repeat-x; border-color:#262626; color:#fff}\r
+\r
+.jqx-checkbox-check-checked-shinyblack{background:transparent url(images/check_white.png) left top no-repeat}\r
+.jqx-checkbox-check-indeterminate-shinyblack{background:transparent url(images/check_indeterminate_white.png) left top no-repeat}\r
+.jqx-grid-shinyblack, .jqx-grid-header-shinyblack, .jqx-grid-cell-shinyblack{border-color:#262626}\r
+.jqx-widget-shinyblack .jqx-grid-cell-shinyblack, .jqx-widget-shinyblack .jqx-grid-group-cell-shinyblack{border-color:#262626}\r
+.jqx-widget-shinyblack .jqx-grid-column-menubutton-shinyblack, .jqx-widget-shinyblack .jqx-grid-column-sortascbutton-shinyblack, .jqx-widget-shinyblack .jqx-grid-column-sortdescbutton-shinyblack, .jqx-widget-shinyblack .jqx-grid-column-filterbutton-shinyblack{border-color:#262626}\r
+.jqx-widget-shinyblack .jqx-grid-column-header-shinyblack{border-color:#262626}\r
+.jqx-grid-bottomright-shinyblack, .jqx-panel-bottomright-shinyblack, .jqx-listbox-bottomright-shinyblack{background-color:#262626}\r
+.jqx-widget-shinyblack .jqx-grid-column-menubutton-shinyblack, .jqx-menu-vertical-shinyblack{background-color:#262626; border-color:#262626}\r
+ .jqx-grid-selectionarea-shinyblack{background-color:#262626; border:1px solid #262626; opacity:0.5}\r
+.jqx-grid-group-cell-shinyblack{border-color:#262626; background-color:#fff}\r
+.jqx-grid-cell-sort-shinyblack, .jqx-grid-cell-filter-shinyblack, .jqx-grid-cell-pinned-shinyblack{ background-color:#eaf8ff}\r
+.jqx-grid-cell-alt-shinyblack, .jqx-grid-cell-sort-alt-shinyblack, .jqx-grid-cell-filter-alt-shinyblack{ background-color:#deedf5}\r
+.jqx-grid-cell-selected-shinyblack{background:#262626; color:#fff}\r
+.jqx-grid-cell-hover-shinyblack{background:#646464; color:#fff}\r
+.jqx-menu-vertical-shinyblack{background: #222; color:#fff;}\r
+.jqx-scrollbar-state-normal-shinyblack{background:#555; border:1px solid #555}\r
+.jqx-scrollbar-button-state-normal-shinyblack{border:1px solid #555; background:#555}\r
+.jqx-scrollbar-button-state-hover-shinyblack{background:#555 url(images/bg_blackhover.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-button-state-pressed-shinyblack{background:#555 url(images/bg_blackpressed.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-normal-horizontal-shinyblack{background:#555 url(images/bg_black.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-shinyblack{ background:#555 url(images/bg_blackhover.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-shinyblack{background:#555 url(images/bg_blackpressed.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-normal-shinyblack{background:#555 url(images/bg_black_horizontal.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-hover-shinyblack{background:#555 url(images/bg_blackhover_horizontal.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-scrollbar-thumb-state-pressed-shinyblack{background:#555 url(images/bg_blackpressed_horizontal.png) left top scroll repeat-x; border:1px solid #000}\r
+.jqx-splitter-splitbar-horizontal-shinyblack, .jqx-splitter-splitbar-vertical-shinyblack, .jqx-splitter-splitbar-hover-shinyblack, .jqx-splitter-splitbar-hover-horizontal-shinyblack{background: #555;}\r
+.jqx-splitter-collapse-button-horizontal-shinyblack, .jqx-splitter-collapse-button-vertical-shinyblack{background: #7f7f7f;}\r
+.jqx-grid-column-sortascbutton-shinyblack, .jqx-expander-arrow-bottom-shinyblack, .jqx-window-collapse-button-shinyblack, .jqx-menu-item-arrow-up-shinyblack, .jqx-menu-item-arrow-up-selected-shinyblack, .jqx-menu-item-arrow-top-up-shinyblack, .jqx-icon-arrow-up-shinyblack, .jqx-icon-arrow-up-hover-shinyblack, .jqx-icon-arrow-up-selected-shinyblack{background-image:url('images/icon-up-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-grid-column-menubutton-shinyblack, .jqx-grid-column-sortdescbutton-shinyblack, .jqx-expander-arrow-top-shinyblack, .jqx-window-collapse-button-collapsed-shinyblack, .jqx-menu-item-arrow-down-shinyblack, .jqx-menu-item-arrow-down-selected-shinyblack, .jqx-menu-item-arrow-down-shinyblack, .jqx-icon-arrow-down-shinyblack, .jqx-icon-arrow-down-hover-shinyblack, .jqx-icon-arrow-down-selected-shinyblack{background-image:url('images/icon-down-white.png'); background-repeat:no-repeat; background-position:center}\r
+\r
+.jqx-icon-arrow-left-shinyblack{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-icon-arrow-right-shinyblack{background-image:url('images/icon-right-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-menu-item-arrow-left-shinyblack{background-image:url('images/icon-left.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-menu-item-arrow-right-shinyblack{background-image:url('images/icon-right.png'); background-repeat:no-repeat; background-position:center}\r
+\r
+.jqx-tabs-arrow-left-shinyblack, .jqx-menu-item-arrow-left-selected-shinyblack, .jqx-menu-item-arrow-top-left, .jqx-icon-arrow-down-left-shinyblack, .jqx-icon-arrow-left-selected-shinyblack{background-image:url('images/icon-left-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-tabs-arrow-right-shinyblack, .jqx-menu-item-arrow-right-selected-shinyblack, .jqx-menu-item-arrow-top-right-shinyblack, .jqx-icon-arrow-right-hover-shinyblack, .jqx-icon-arrow-right-selected-shinyblack{background-image:url('images/icon-right-white.png'); background-repeat:no-repeat; background-position:center}\r
+.jqx-window-close-button-shinyblack, .jqx-icon-close-shinyblack, .jqx-tabs-close-button-shinyblack, .jqx-tabs-close-button-hover-shinyblack, .jqx-tabs-close-button-selected-shinyblack{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+/*applied to the progressbar's value element*/\r
+.jqx-progressbar-value-shinyblack{background: #555;}\r
+.jqx-progressbar-value-vertical-shinyblack{background: #555;}\r
+.jqx-icon-arrow-first-shinyblack\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-shinyblack\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-group-expand-shinyblack, .jqx-grid-cell-shinyblack>.jqx-grid-group-expand-shinyblack, .jqx-tree-item-arrow-expand-shinyblack {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-collapse-shinyblack, .jqx-grid-cell-shinyblack>.jqx-grid-group-collapse-shinyblack, .jqx-tree-item-arrow-collapse-shinyblack {\r
+    background-image: url('images/icon-right.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-collapse-rtl-shinyblack, .jqx-grid-cell-shinyblack>.jqx-grid-group-collapse-rtl-shinyblack, .jqx-tree-item-arrow-collapse-rtl-shinyblack {\r
+    background-image: url('images/icon-left.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-group-expand-rtl-shinyblack, .jqx-grid-cell-shinyblack>.jqx-grid-group-expand-rtl-shinyblack {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-date-time-input-popup-shinyblack .jqx-icon-arrow-down-shinyblack {\r
+    background-image: url('images/icon-down.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-date-time-input-popup-shinyblack .jqx-icon-arrow-up-shinyblack {\r
+    background-image: url('images/icon-up.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-selected-shinyblack>.jqx-grid-group-expand-shinyblack,\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-hover-shinyblack>.jqx-grid-group-expand-shinyblack {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-selected-shinyblack>.jqx-grid-group-collapse-shinyblack,\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-hover-shinyblack>.jqx-grid-group-collapse-shinyblack {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-selected-shinyblack>.jqx-grid-group-collapse-rtl-shinyblack,\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-hover-shinyblack>.jqx-grid-group-collapse-rtl-shinyblack {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-selected-shinyblack>.jqx-grid-group-expand-rtl-shinyblack,\r
+.jqx-grid-cell-shinyblack.jqx-grid-cell-hover-shinyblack>.jqx-grid-group-expand-rtl-shinyblack {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search-shinyblack\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-shinyblack, .jqx-icon-calendar-hover-shinyblack, .jqx-icon-calendar-pressed-shinyblack {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-shinyblack, .jqx-icon-time-hover-shinyblack, .jqx-icon-time-pressed-shinyblack {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-icon-delete-shinyblack\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-shinyblack\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-shinyblack\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-shinyblack\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-shinyblack\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-shinyblack\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+.jqx-menu-minimized-button-shinyblack {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-shinyblack {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-shinyblack\r
+{\r
+    background-color: #000;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-shinyblack\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-shinyblack\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-shinyblack, .jqx-scheduler-time-column-shinyblack, .jqx-scheduler-toolbar-shinyblack\r
+{\r
+    background: #35353A !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-shinyblack .jqx-scheduler-middle-cell-shinyblack, .jqx-scheduler-middle-cell-shinyblack {\r
+    border-bottom-color: #35353A !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.summer.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.summer.css
new file mode 100644 (file)
index 0000000..9998a27
--- /dev/null
@@ -0,0 +1,85 @@
+.jqx-widget-summer{border-color: #cacaca;}\r
+.jqx-fill-state-normal-summer, .jqx-widget-header-summer{ border-color: #cacaca; background-color:#e4e5e5;}\r
+.jqx-fill-state-hover-summer, .jqx-scrollbar-thumb-state-normal-summer, .jqx-scrollbar-thumb-state-normal-horizontal-summer{ border-color:#222;  background-color:#888888; color: #fff;}\r
+.jqx-fill-state-pressed-summer{border-color: #fe5815; background-color: #fe5815; color: #fff; }\r
+.jqx-fill-state-focus-summer { border-color: #555; }\r
+\r
+.jqx-scrollbar-state-normal-summer, .jqx-grid-bottomright-summer, .jqx-panel-bottomright-summer, .jqx-listbox-bottomright-summer{background-color: #e4e5e5;}\r
+.jqx-scrollbar-button-state-pressed, .jqx-scrollbar-button-state-hover{background-color: #e4e5e5; border-color: #222;}\r
+/*icons*/\r
+.jqx-menu-item-arrow-up-selected-summer, .jqx-icon-arrow-up-hover-summer, .jqx-icon-arrow-up-selected-summer{background-image:url('images/icon-up-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-summer, .jqx-icon-arrow-down-hover-summer, .jqx-icon-arrow-down-selected-summer{background-image:url('images/icon-down-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-summer, .jqx-icon-arrow-left-hover-summer, .jqx-icon-arrow-left-selected-summer{background-image:url('images/icon-left-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-summer, .jqx-icon-arrow-right-hover-summer, .jqx-icon-arrow-right-selected-summer{background-image:url('images/icon-right-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-tabs-close-button-hover-summer, .jqx-tabs-close-button-selected-summer{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center;}\r
+.jqx-scrollbar-summer .jqx-icon-arrow-up-selected-summer, .jqx-scrollbar-summer .jqx-icon-arrow-up-hover-summer{background-image:url('images/icon-up.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-summer .jqx-icon-arrow-down-selected-summer, .jqx-scrollbar-summer .jqx-icon-arrow-down-hover-summer{background-image:url('images/icon-down.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-summer .jqx-icon-arrow-left-selected-summer, .jqx-scrollbar-summer .jqx-icon-arrow-left-hover-summer{background-image:url('images/icon-left.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-summer .jqx-icon-arrow-right-selected-summer, .jqx-scrollbar-summer .jqx-icon-arrow-right-hover-summer{background-image:url('images/icon-right.png');background-repeat:no-repeat; background-position:center;}\r
+.jqx-grid-cell-summer.jqx-grid-cell-selected-summer>.jqx-grid-group-expand-summer,\r
+.jqx-grid-cell-summer.jqx-grid-cell-hover-summer>.jqx-grid-group-expand-summer {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-summer.jqx-grid-cell-selected-summer>.jqx-grid-group-collapse-summer,\r
+.jqx-grid-cell-summer.jqx-grid-cell-hover-summer>.jqx-grid-group-collapse-summer {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-summer.jqx-grid-cell-selected-summer>.jqx-grid-group-collapse-rtl-summer,\r
+.jqx-grid-cell-summer.jqx-grid-cell-hover-summer>.jqx-grid-group-collapse-rtl-summer {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-summer.jqx-grid-cell-selected-summer>.jqx-grid-group-expand-rtl-summer,\r
+.jqx-grid-cell-summer.jqx-grid-cell-hover-summer>.jqx-grid-group-expand-rtl-summer {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-summer\r
+{\r
+    background-image: url('images/icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-summer\r
+{\r
+    background-image: url('images/icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-hover-summer\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-hover-summer\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-first-selected-summer\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-selected-summer\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-hover-summer, .jqx-icon-calendar-pressed-summer {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-layout-summer\r
+{\r
+    background-color: #cacaca;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-darkness.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-darkness.css
new file mode 100644 (file)
index 0000000..678bcf9
--- /dev/null
@@ -0,0 +1,201 @@
+.jqx-rc-tl-ui-darkness{border-top-left-radius:6px; moz-border-radius-topleft:6px; webkit-border-top-left-radius:6px}\r
+.jqx-rc-tr-ui-darkness{border-top-right-radius:6px; moz-border-radius-topright:6px; webkit-border-top-right-radius:6px}\r
+.jqx-rc-bl-ui-darkness{border-bottom-left-radius:6px; moz-border-radius-bottomleft:6px; webkit-border-bottom-left-radius:6px}\r
+.jqx-rc-br-ui-darkness{border-bottom-right-radius:6px; moz-border-radius-bottomright:6px; webkit-border-bottom-right-radius:6px}\r
+.jqx-rc-t-ui-darkness{border-top-left-radius:6px; border-top-right-radius:6px; moz-border-radius-topleft:6px; moz-border-radius-topright:6px; webkit-border-top-left-radius:6px; webkit-border-top-right-radius:6px}\r
+.jqx-rc-b-ui-darkness{border-bottom-left-radius:6px; border-bottom-right-radius:6px; moz-border-radius-bottomleft:6px; moz-border-radius-bottomright:6px; webkit-border-bottom-left-radius:6px; webkit-border-bottom-right-radius:6px}\r
+.jqx-rc-r-ui-darkness{border-bottom-right-radius:6px; border-top-right-radius:6px; moz-border-radius-bottomright:6px; moz-border-radius-topright:6px; webkit-border-bottom-right-radius:6px; webkit-border-top-right-radius:6px}\r
+.jqx-rc-l-ui-darkness{border-bottom-left-radius:6px; border-top-left-radius:6px; moz-border-radius-bottomleft:6px; moz-border-radius-topleft:6px; webkit-border-bottom-left-radius:6px; webkit-border-top-left-radius:6px}\r
+.jqx-rc-all-ui-darkness{border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+.jqx-widget-ui-darkness {\r
+    color: inherit;\r
+}\r
+.jqx-grid-column-sortdescbutton-ui-darkness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;background-position:0 -16px; background-image:url(images/darkness/ui-icons_ffffff_256x240.png);}\r
+.jqx-grid-column-sortascbutton-ui-darkness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -16px; background-image:url(images/darkness/ui-icons_ffffff_256x240.png)}\r
+.jqx-grid-column-menubutton-ui-darkness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -16px; background-image:url(images/darkness/ui-icons_ffffff_256x240.png); border-width:0px}\r
+.jqx-grid-ui-darkness .jqx-widget-header-ui-darkness{border-width:0px !important}\r
+.jqx-tree-item-arrow-expand-ui-darkness, .jqx-tree-item-arrow-expand-hover-ui-darkness{background-position:-65px -16px; background-image:url(images/darkness/ui-icons_222222_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-darkness, .jqx-tree-item-arrow-collapse-hover-ui-darkness{background-position:-32px -16px; background-image:url(images/darkness/ui-icons_222222_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-darkness, .jqx-menu-item-arrow-right-selected-ui-darkness{background-position:-32px -16px; background-image:url(images/darkness/ui-icons_222222_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-darkness, .jqx-menu-item-arrow-left-selected-ui-darkness{background-position:-96px -16px; background-image:url(images/darkness/ui-icons_222222_256x240.png)}\r
+.jqx-progressbar-ui-darkness .jqx-fill-state-pressed-ui-darkness{background: #626262; border-width:0px; border-right:1px solid #626262; color:#fff; font-weight:bold}\r
+.jqx-progressbar-value-vertical-ui-darkness{border-width:0px !important; border-bottom: 1px solid #626262 !important}\r
+.jqx-tabs-title-ui-darkness{border:1px solid #666; background: #555 url(images/darkness/ui-bg_glass_20_555555_1x400.png) 50% 50% repeat-x;  color:#fff; font-weight:bold}\r
+.jqx-tabs-header-ui-darkness{margin:2px; border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+.jqx-tabs-header-bottom-ui-darkness{margin-top:-2px !important; padding-top:2px}\r
+.jqx-tabs-content-ui-darkness{border-width:0px !important}\r
+.jqx-radiobutton-ui-darkness .jqx-fill-state-pressed-ui-darkness{background:#ec8e0c; border:1px solid #fed22f}\r
+.jqx-calendar-cell-ui-darkness{background: #333333 url(images/darkness/ui-bg_gloss-wave_25_333333_500x100.png) 50% 50% repeat-x; border:1px solid #333; color:#fff; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-darkness{background:#ffe45c url(images/darkness/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-darkness{border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+.jqx-calendar-month-container-ui-darkness{border:none !important}\r
+.jqx-calendar-ui-darkness{padding:2px}\r
+.jqx-calendar-ui-darkness .jqx-icon-arrow-left-ui-darkness{background-image:url(images/darkness/ui-icons_ffffff_256x240.png); background-position:-80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-darkness .jqx-icon-arrow-right-ui-darkness{background-image:url(images/darkness/ui-icons_ffffff_256x240.png); background-position:-48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+.jqx-calendar-ui-darkness .jqx-icon-arrow-left-hover-ui-darkness{background-image:url(images/darkness/ui-icons_cccccc_256x240.png); background-position:-80px -192px}\r
+.jqx-calendar-ui-darkness .jqx-icon-arrow-right-hover-ui-darkness{background-image:url(images/darkness/ui-icons_cccccc_256x240.png); background-position:-48px -192px}\r
+.jqx-navigationbar-ui-lighness{overflow: auto;}\r
+.jqx-grid-column-header-ui-darkness{border-width:0px !important}\r
+\r
+.jqx-icon-arrow-up-ui-darkness, .jqx-menu-item-arrow-up-ui-darkness, .jqx-menu-item-arrow-up-ui-darkness, .jqx-menu-item-arrow-top-up-ui-darkness, .jqx-icon-arrow-up-ui-darkness, .jqx-icon-arrow-up-hover-ui-darkness, .jqx-icon-arrow-up-selected-ui-darkness{background-position:0 -16px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-down-ui-darkness, .jqx-tree-item-arrow-expand-ui-darkness, .jqx-tree-item-arrow-expand-hover-ui-darkness, .jqx-menu-item-arrow-down-ui-darkness, .jqx-menu-item-arrow-down-ui-darkness, .jqx-menu-item-arrow-down-ui-darkness{background-position:-65px -16px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-left-ui-darkness, .jqx-tabs-arrow-left-ui-darkness, .jqx-menu-item-arrow-left-ui-darkness, .jqx-menu-item-arrow-top-left{background-position:-96px -17px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-right-ui-darkness, .jqx-tree-item-arrow-collapse-ui-darkness, .jqx-tree-item-arrow-collapse-hover-ui-darkness, .jqx-tabs-arrow-right-ui-darkness, .jqx-menu-item-arrow-right-ui-darkness, .jqx-menu-item-arrow-top-right-ui-darkness{background-position:-32px -17px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-darkness{background-position:0 -16px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-darkness{background-position:-65px -16px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-darkness{background-position:-96px -17px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-darkness{background-position:-32px -17px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-darkness{background-position:0 -16px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-darkness{background-position:-65px -16px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-darkness, .jqx-tree-item-arrow-collapse-rtl-ui-darkness, .jqx-tree-item-arrow-collapse-hover-rtl-ui-darkness{background-position:-96px -17px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-darkness{background-position:-32px -17px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-icon-close-ui-darkness{background-image:url(images/darkness/ui-icons_cccccc_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-darkness{background-image:url(images/darkness/ui-icons_cccccc_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-window-ui-darkness{padding: 2px;}\r
+.jqx-window-header-ui-darkness{moz-border-radius:6px; border-radius:6px; webkit-border-radius:6px}\r
+.jqx-window-content-ui-darkness{border-width:0px !important}\r
+.jqx-window-close-button-ui-darkness{background-position:-96px -128px; background-image:url(images/darkness/ui-icons_ffffff_256x240.png);moz-border-radius:6px; border-radius:6px; webkit-border-radius:6px}\r
+.jqx-window-collapse-button-ui-darkness{background-position:0 -16px; background-image:url(images/darkness/ui-icons_ffffff_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-darkness{background-image:url(images/darkness/ui-icons_cccccc_256x240.png); background-color:#fff; border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+.jqx-window-collapse-button-collapsed-ui-darkness, .jqx-window-collapse-button-collapsed-hover-ui-darkness{background-position:-65px -16px}\r
+.jqx-window-modal-ui-darkness{}\r
+.jqx-window-close-button-hover-ui-darkness{background-color:#fff; background-position:-96px -128px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png); cursor:pointer; width:16px; height:16px}\r
+\r
+.jqx-grid-cell-ui-darkness, .jqx-grid-group-cell-ui-darkness\r
+{\r
+   background: #000;\r
+   color: #fff; \r
+}\r
+.jqx-widget-ui-darkness{ line-height: 17px; font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; font-size:12px; font-style:normal;}\r
+.jqx-widget-content-ui-darkness{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; background: #000000 url(images/darkness/ui-bg_inset-soft_25_000000_1x100.png) 50% bottom repeat-x; border-color:#666666; color:#fff; font-size:12px}\r
+.jqx-widget-content-ui-darkness a{color:#fff}\r
+.jqx-widget-header-ui-darkness{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; background: #333333 url(images/darkness/ui-bg_gloss-wave_25_333333_500x100.png) 50% 50% repeat-x; border-color: #333; color:#fff; font-size:12px}\r
+.jqx-widget-header-ui-darkness a{color:#fff}\r
+\r
+.jqx-fill-state-normal-ui-darkness{border-color: #666666; background: #555555 url(images/darkness/ui-bg_glass_20_555555_1x400.png) 50% 50% repeat-x; color: #eeeeee;}\r
+.jqx-fill-state-normal-ui-darkness a, .jqx-fill-state-normal-ui-darkness a:link, .jqx-fill-state-normal-ui-darkness a:visited{color:#eeeeee; text-decoration:none}\r
+.jqx-fill-state-hover-ui-darkness{border-color:#59b4d4; background: #0078a3 url(images/darkness/ui-bg_glass_40_0078a3_1x400.png) 50% 50% repeat-x; color: #ffffff;}\r
+.jqx-fill-state-hover-ui-darkness a, .jqx-fill-state-hover-ui-darkness a:hover{color:#fff; text-decoration:none}\r
+.jqx-fill-state-pressed-ui-darkness{border-color: #ffaf0f; background: #f58400 url(images/darkness/ui-bg_inset-soft_30_f58400_1x100.png) 50% 50% repeat-x; color: #ffffff; }\r
+.jqx-fill-state-pressed-ui-darkness a, .jqx-fill-state-pressed-ui-darkness a:link, .jqx-fill-state-pressed-ui-darkness a:visited{color:#ffffff; text-decoration:none}\r
+.jqx-fill-state-disabled-ui-darkness {cursor: default; color: #fff; opacity: .55; filter:Alpha(Opacity=45);}\r
+\r
+.jqx-input-button-content-ui-darkness{font-size:10px}\r
+.jqx-input-icon-ui-darkness{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-darkness{margin-top:0px; background-position:-65px -147px; background-image:url(images/darkness/ui-icons_cccccc_256x240.png)}\r
+.jqx-grid-cell-sort-ui-darkness, .jqx-grid-cell-filter-ui-darkness, .jqx-grid-cell-pinned-ui-darkness{background-color:#626262;}\r
+.jqx-grid-cell-alt-ui-darkness, .jqx-grid-cell-sort-alt-ui-darkness, .jqx-grid-cell-filter-alt-ui-darkness{background-color:#626262}\r
+.jqx-splitter-collapse-button-horizontal-ui-darkness, .jqx-splitter-collapse-button-vertical-ui-darkness{ background:#ec8e0c; border:1px solid #fdd02e}\r
+.jqx-dropdownlist-content-ui-darkness{ color:#fff}\r
+\r
+.jqx-input-ui-darkness, .jqx-input-content-ui-darkness, .jqx-combobox-content-ui-darkness, .jqx-combobox-input-ui-darkness\r
+{\r
+    background: #fff;\r
+    color: #333;\r
+}\r
+.jqx-input-ui-darkness{overflow: hidden;}\r
+.jqx-input-button-header-ui-darkness{background: #f58400;}\r
+.jqx-grid-bottomright-ui-darkness, .jqx-panel-bottomright-ui-darkness, .jqx-listbox-bottomright-ui-darkness, .jqx-scrollbar-state-normal-ui-darkness{background: #000000;}\r
+.jqx-grid-group-expand-ui-darkness{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-down-white.png);}\r
+.jqx-grid-group-collapse-ui-darkness{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-right-white.png);}\r
+.jqx-scrollbar-thumb-state-normal-ui-darkness, .jqx-scrollbar-thumb-state-normal-horizontal-ui-darkness{ background: #626262;}\r
+.jqx-scrollbar-thumb-state-hover-ui-darkness, .jqx-scrollbar-thumb-state-hover-horizontal-ui-darkness{ background: #0078a3;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-darkness, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-darkness{ background: #f58400;}\r
+.jqx-expander-header-ui-darkness{ border-color: #666; color:#fff; font-weight:bold; border-radius:6px !important; moz-border-radius:6px !important; webkit-border-radius:6px !important}\r
+.jqx-expander-header-hover-ui-darkness{ border-color:  #59b4d4; color:#fff; font-weight:bold}\r
+.jqx-expander-header-expanded-ui-darkness{ border-color:  #ffaf0f; color:#fff; font-weight:bold; border-top-left-radius:6px !important; border-top-right-radius:6px !important; moz-border-radius-topleft:6px !important; moz-border-radius-topright:6px !important; webkit-border-top-left-radius:6px !important; webkit-border-top-right-radius:6px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;}\r
+.jqx-expander-content-bottom-ui-darkness{border-bottom-left-radius:6px !important; border-bottom-right-radius:6px !important; moz-border-radius-bottomleft:6px !important; moz-border-radius-bottomright:6px !important; webkit-border-bottom-left-radius:6px !important; webkit-border-bottom-right-radius:6px !important;}\r
+.jqx-expander-arrow-top-ui-darkness{background-position:-65px -16px; background-image:url(images/darkness/ui-icons_222222_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-darkness{background-position:0 -16px; background-image:url(images/darkness/ui-icons_222222_256x240.png)}\r
+.jqx-tabs-selection-tracker-top-ui-darkness\r
+{\r
+   background: #f69727;\r
+   border-bottom: 1px solid transparent;\r
+}\r
+.jqx-tabs-selection-tracker-bottom-ui-darkness\r
+{\r
+   background-image: #f69727;\r
+   border-top: 1px solid transparent;\r
+}\r
+.jqx-scrollbar-ui-darkness .jqx-icon-arrow-up-ui-darkness{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-darkness .jqx-icon-arrow-down-ui-darkness{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-darkness .jqx-icon-arrow-left-ui-darkness{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-darkness .jqx-icon-arrow-right-ui-darkness{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-icon-arrow-first-ui-darkness\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-ui-darkness\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-darkness>.jqx-grid-group-expand-ui-darkness\r
+{\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-darkness>.jqx-grid-group-collapse-ui-darkness\r
+{\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-darkness>.jqx-grid-group-collapse-rtl-ui-darkness\r
+{\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-darkness>.jqx-grid-group-expand-rtl-ui-darkness {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search-ui-darkness\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-ui-darkness, .jqx-icon-calendar-hover-ui-darkness, .jqx-icon-calendar-pressed-ui-darkness {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-ui-darkness, .jqx-icon-time-hover-ui-darkness, .jqx-icon-time-pressed-ui-darkness {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-menu-minimized-button-ui-darkness {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-ui-darkness {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-ui-darkness\r
+{\r
+    background-color: #333;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-darkness\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-darkness\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-ui-darkness, .jqx-scheduler-time-column-ui-darkness, .jqx-scheduler-toolbar-ui-darkness\r
+{\r
+    background: #333 !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-ui-darkness .jqx-scheduler-middle-cell-ui-darkness, .jqx-scheduler-middle-cell-ui-darkness {\r
+    border-bottom-color: #333 !important;\r
+}\r
+.jqx-docking-layout-group-floating-ui-darkness .jqx-window-header-ui-darkness\r
+{\r
+    background-image: none;\r
+}\r
+\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-le-frog.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-le-frog.css
new file mode 100644 (file)
index 0000000..5dd1442
--- /dev/null
@@ -0,0 +1,251 @@
+.jqx-rc-tl-ui-le-frog{border-top-left-radius:10px; moz-border-radius-topleft:10px; webkit-border-top-left-radius:10px}\r
+.jqx-rc-tr-ui-le-frog{border-top-right-radius:10px; moz-border-radius-topright:10px; webkit-border-top-right-radius:10px}\r
+.jqx-rc-bl-ui-le-frog{border-bottom-left-radius:10px; moz-border-radius-bottomleft:10px; webkit-border-bottom-left-radius:10px}\r
+.jqx-rc-br-ui-le-frog{border-bottom-right-radius:10px; moz-border-radius-bottomright:10px; webkit-border-bottom-right-radius:10px}\r
+.jqx-rc-t-ui-le-frog{border-top-left-radius:10px; border-top-right-radius:10px; moz-border-radius-topleft:10px; moz-border-radius-topright:10px; webkit-border-top-left-radius:10px; webkit-border-top-right-radius:10px}\r
+.jqx-rc-b-ui-le-frog{border-bottom-left-radius:10px; border-bottom-right-radius:10px; moz-border-radius-bottomleft:10px; moz-border-radius-bottomright:10px; webkit-border-bottom-left-radius:10px; webkit-border-bottom-right-radius:10px}\r
+.jqx-rc-r-ui-le-frog{border-bottom-right-radius:10px; border-top-right-radius:10px; moz-border-radius-bottomright:10px; moz-border-radius-topright:10px; webkit-border-bottom-right-radius:10px; webkit-border-top-right-radius:10px}\r
+.jqx-rc-l-ui-le-frog{border-bottom-left-radius:10px; border-top-left-radius:10px; moz-border-radius-bottomleft:10px; moz-border-radius-topleft:10px; webkit-border-bottom-left-radius:10px; webkit-border-top-left-radius:10px}\r
+.jqx-rc-all-ui-le-frog{border-radius:10px; moz-border-radius:10px; webkit-border-radius:10px}\r
+/*Grid*/\r
+.jqx-grid-column-sortascbutton-ui-le-frog{background-position:-96px -192px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortdescbutton-ui-le-frog{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;background-position:-64px -192px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-grid-column-menubutton-ui-le-frog{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -192px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png); border-width:0px}\r
+.jqx-grid-cell-ui-le-frog{background: #35650f; border-color: #72b42d; color: #fff;}\r
+/*Tree*/\r
+.jqx-tree-item-arrow-expand-ui-le-frog, .jqx-tree-item-arrow-expand-hover-ui-le-frog{background-position:-65px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-le-frog, .jqx-tree-item-arrow-collapse-hover-ui-le-frog{background-position:-32px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-le-frog, .jqx-menu-item-arrow-right-selected-ui-le-frog{background-position:-32px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-le-frog, .jqx-menu-item-arrow-left-selected-ui-le-frog{background-position:-96px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+/*Tabs*/\r
+.jqx-tabs-title-ui-le-frog{border:1px solid transparent;}\r
+.jqx-tabs-header-ui-le-frog{border-width: 1px; margin:2px; border-radius:10px; moz-border-radius:10px; webkit-border-radius:10px}\r
+.jqx-tabs-header-bottom-ui-le-frog{margin-top:-2px !important; padding-bottom: 3px; padding-top:1px}\r
+.jqx-tabs-selection-tracker-top-ui-le-frog{background: #2d6006;border-bottom: 0px solid transparent;}\r
+.jqx-tabs-selection-tracker-bottom-ui-le-frog{background: #2d6006; border-top: 0px solid transparent;}\r
+/*Radio Button*/\r
+.jqx-radiobutton-ui-le-frog .jqx-fill-state-pressed-ui-le-frog{background:#fcfefc; border:1px solid #72b42d}\r
+/*Calendar*/\r
+.jqx-calendar-cell-ui-le-frog{font-size: 11px; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-le-frog{background:#ffe45c url(images/le-frog/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-le-frog{border: 1px solid #72b42d; border-bottom-width: 0px; border-radius:10px; moz-border-radius:10px; webkit-border-radius:10px; font-weight: bold;}\r
+.jqx-calendar-month-container-ui-le-frog{border:none !important}\r
+.jqx-calendar-ui-le-frog{padding:2px}\r
+.jqx-calendar-column-cell-ui-le-frog{font-size: 11px; font-weight: bold;}\r
+.jqx-calendar-ui-le-frog .jqx-icon-arrow-left-ui-le-frog{background-image:url(images/le-frog/ui-icons_ffffff_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-le-frog .jqx-icon-arrow-right-ui-le-frog{background-image:url(images/le-frog/ui-icons_ffffff_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+\r
+/*Icons*/\r
+.jqx-icon-arrow-up-ui-le-frog{background-position:0 -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-down-ui-le-frog{background-position:-65px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-left-ui-le-frog{background-position:-96px -17px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-right-ui-le-frog{background-position:-32px -17px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-le-frog{background-position:0 -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-le-frog{background-position:-65px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-le-frog{background-position:-96px -17px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-le-frog{background-position:-32px -17px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-le-frog, .jqx-menu-item-arrow-up-selected-ui-le-frog, .jqx-menu-item-arrow-up-ui-le-frog, .jqx-menu-item-arrow-up-hover-ui-le-frog{background-position:0 -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-le-frog, .jqx-menu-item-arrow-down-selected-ui-le-frog, .jqx-menu-item-arrow-down-ui-le-frog, .jqx-menu-item-arrow-down-hover-ui-le-frog{background-position:-65px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-le-frog, .jqx-tree-item-arrow-collapse-rtl-ui-le-frog, .jqx-tree-item-arrow-collapse-hover-rtl-ui-le-frog{background-position:-96px -17px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-le-frog{background-position:-32px -17px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-icon-close-ui-le-frog{background-image:url(images/le-frog/ui-icons_ffffff_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-le-frog{background-image:url(images/le-frog/ui-icons_ffffff_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+/*Window*/\r
+.jqx-window-ui-le-frog{padding: 2px;}\r
+.jqx-window-header-ui-le-frog{border: 1px solid #72b42d; font-weight: bold; font-size: 11px; moz-border-radius:10px; border-radius:10px; webkit-border-radius:10px}\r
+.jqx-window-content-ui-le-frog{border-width:0px !important}\r
+.jqx-window-close-button-ui-le-frog{background-position:-96px -128px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png);moz-border-radius:10px; border-radius:10px; webkit-border-radius:10px}\r
+.jqx-window-collapse-button-ui-le-frog{background-position:0 -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-le-frog{background-image:url(images/le-frog/ui-icons_72b42d_256x240.png); border-radius:10px; moz-border-radius:10px; webkit-border-radius:10px}\r
+.jqx-window-collapse-button-collapsed-ui-le-frog, .jqx-window-collapse-button-collapsed-hover-ui-le-frog{background-position:-65px -16px}\r
+.jqx-window-modal-ui-le-frog{}\r
+.jqx-window-close-button-hover-ui-le-frog{background-color:#fff; background-position:-96px -128px; background-image:url(images/le-frog/ui-icons_72b42d_256x240.png); cursor:pointer; width:16px; height:16px}\r
+\r
+/*Common Settings*/\r
+.jqx-widget-ui-le-frog{font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size:12px; font-style:normal;}\r
+.jqx-widget-content-ui-le-frog{font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; border-color: #72b42d; background: #285c00 url(images/le-frog/ui-bg_inset-soft_10_285c00_1x100.png) 50% bottom repeat-x; color: #ffffff; font-size:12px}\r
+.jqx-widget-content-ui-le-frog a{color:#ffffff}\r
+.jqx-widget-header-ui-le-frog{font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; border-color: #3f7506; background: #3a8104 url(images/le-frog/ui-bg_highlight-soft_33_3a8104_1x100.png) 50% 50% repeat-x; color: #ffffff; font-size:12px}\r
+.jqx-widget-header-ui-le-frog a{color:#ffffff}\r
+.jqx-fill-state-normal-ui-le-frog, .jqx-calendar-cell-ui-le-frog, .jqx-tabs-title-ui-le-frog, .jqx-expander-header-ui-le-frog{border-color: #45930b; background: #4ca20b url(images/le-frog/ui-bg_highlight-soft_60_4ca20b_1x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff;}\r
+.jqx-fill-state-normal-ui-le-frog a, .jqx-fill-state-normal-ui-le-frog a:link, .jqx-fill-state-normal-ui-le-frog a:visited{color:#ffffff; text-decoration:none}\r
+.jqx-fill-state-hover-ui-le-frog{border-color: #8bd83b; background: #4eb305 url(images/le-frog/ui-bg_highlight-soft_50_4eb305_1x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff; }\r
+.jqx-fill-state-hover-ui-le-frog a, .jqx-fill-state-hover-ui-le-frog a:hover{color:#ffffff; text-decoration:none}\r
+.jqx-fill-state-focus-ui-le-frog {border-color: #31630b; }\r
+.jqx-fill-state-pressed-ui-le-frog{border-color: #72b42d; background: #285c00 url(images/le-frog/ui-bg_highlight-hard_30_285c00_1x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff;}\r
+.jqx-fill-state-pressed-ui-le-frog a, .jqx-fill-state-pressed-ui-le-frog a:link, .jqx-fill-state-pressed-ui-le-frog a:visited{color:#ffffff; text-decoration:none}\r
+\r
+.jqx-input-button-content-ui-le-frog{font-size:10px}\r
+.jqx-input-icon-ui-le-frog{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-le-frog{margin-top:0px; background-position:-65px -147px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+/*Progress Bar*/\r
+.jqx-progressbar-ui-le-frog .jqx-fill-state-pressed-ui-le-frog{background: #498b18; border-bottom: none;}\r
+.jqx-progressbar-value-vertical-ui-le-frog{background: #498b18; border-right: none; border-bottom: 1px solid #72b42d;}\r
+/*ScrollBar */\r
+.jqx-scrollbar-thumb-state-normal-ui-le-frog, .jqx-scrollbar-thumb-state-normal-horizontal-ui-le-frog{ border: 1px solid #72b42d; background: #498b18;}\r
+.jqx-scrollbar-thumb-state-hover-ui-le-frog, .jqx-scrollbar-thumb-state-hover-horizontal-ui-le-frog{ background: #8bd83b;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-le-frog, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-le-frog{ background: #285c00;}\r
+.jqx-splitter-splitbar-horizontal-ui-le-frog, .jqx-splitter-splitbar-vertical-ui-le-frog{background: #72b42d;}\r
+.jqx-splitter-collapse-button-horizontal-ui-le-frog, .jqx-splitter-collapse-button-vertical-ui-le-frog{background: #285c00;}\r
+\r
+.jqx-tabs-title-selected-top-ui-le-frog\r
+{\r
+    border-bottom: 1px solid #285c00;\r
+    background-color: #285c00;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom-ui-le-frog\r
+{\r
+    border-top: 1px solid #285c00;\r
+    background-color: #285c00;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top-ui-le-frog\r
+{\r
+   border-bottom: 1px solid #285c00;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom-ui-le-frog\r
+{\r
+   border-top: 1px solid #285c00;\r
+}\r
+/*Slider*/\r
+.jqx-slider-ui-le-frog .jqx-fill-state-pressed-ui-le-frog{background:#619a35;}\r
+.jqx-slider-track-ui-le-frog{border: 1px solid #72b42d; background: #35650f;}\r
+/*Grid*/\r
+.jqx-grid-cell-sort-ui-le-frog, .jqx-grid-cell-filter-ui-le-frog, .jqx-grid-cell-pinned-ui-le-frog, .jqx-grid-cell-selected-ui-le-frog{background: #1c4000; color: #fcfefc;}\r
+.jqx-grid-bottomright-ui-le-frog, .jqx-panel-bottomright-ui-le-frog, .jqx-listbox-bottomright-ui-le-frog, .jqx-scrollbar-state-normal-ui-le-frog{background: #35650f;}\r
+.jqx-widget-ui-le-frog .jqx-grid-column-header-ui-le-frog, .jqx-grid-cell-ui-le-frog, .jqx-widget-ui-le-frog .jqx-grid-cell-ui-le-frog, .jqx-widget-ui-le-frog .jqx-grid-group-cell-ui-le-frog, .jqx-grid-group-cell-ui-le-frog{border-color:#72b42d}\r
+.jqx-grid-group-expand-ui-le-frog{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-down-white.png);}\r
+.jqx-grid-group-collapse-ui-le-frog{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-right-white.png);}\r
+.jqx-grid-group-cell-ui-le-frog {\r
+    background-color: transparent;\r
+}\r
+/*Menu*/\r
+.jqx-menu-dropdown-ui-le-frog\r
+{\r
+    -moz-border-radius-bottomleft: 10px;\r
+    -webkit-border-bottom-left-radius: 10px;\r
+    border-bottom-left-radius: 10px;\r
+    -moz-border-radius-topright: 10px;\r
+    -webkit-border-top-right-radius: 10px;\r
+    border-top-right-radius: 10px;\r
+    -moz-border-radius-bottomright: 10px;\r
+    -webkit-border-bottom-right-radius: 10px;\r
+    border-bottom-right-radius: 10px;\r
+    right: -1px;\r
+}\r
+/*Navigation Bar*/\r
+.jqx-navigationbar-ui-le-frog{overflow: visible;}\r
+.jqx-expander-header-ui-le-frog{border:1px solid transparent; border-radius:10px !important; moz-border-radius:10px !important; webkit-border-radius:10px !important}\r
+.jqx-expander-header-hover-ui-le-frog{border:1px solid #72b42d;}\r
+.jqx-expander-header-expanded-ui-le-frog{border-color: #72b42d; background: #285c00 url(images/le-frog/ui-bg_highlight-hard_30_285c00_1x100.png) 50% 50% repeat-x; border:1px solid #72b42d; border-bottom-width:1px; border-top-left-radius:10px !important; border-top-right-radius:10px !important; moz-border-radius-topleft:10px !important; moz-border-radius-topright:10px !important; webkit-border-top-left-radius:10px !important; webkit-border-top-right-radius:10px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-le-frog{border-bottom-left-radius:10px !important; border-bottom-right-radius:10px !important; moz-border-radius-bottomleft:10px !important; moz-border-radius-bottomright:10px !important; webkit-border-bottom-left-radius:10px !important; webkit-border-bottom-right-radius:10px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-le-frog{background-position:-65px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-le-frog{background-position:0 -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-tabs-arrow-right-ui-le-frog{background-position:-32px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+.jqx-tabs-arrow-left-ui-le-frog{background-position:-96px -16px; background-image:url(images/le-frog/ui-icons_ffffff_256x240.png)}\r
+\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-le-frog .jqx-icon-arrow-up-ui-le-frog{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-le-frog .jqx-icon-arrow-down-ui-le-frog{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-le-frog .jqx-icon-arrow-left-ui-le-frog{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-le-frog .jqx-icon-arrow-right-ui-le-frog{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-icon-arrow-first-ui-le-frog\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-ui-le-frog\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-le-frog>.jqx-grid-group-expand-ui-le-frog {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-le-frog>.jqx-grid-group-collapse-ui-le-frog {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-le-frog>.jqx-grid-group-collapse-rtl-ui-le-frog {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-le-frog>.jqx-grid-group-expand-rtl-ui-le-frog {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search-ui-le-frog\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-ui-le-frog, .jqx-icon-calendar-hover-ui-le-frog, .jqx-icon-calendar-pressed-ui-le-frog {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-ui-le-frog, .jqx-icon-time-hover-ui-le-frog, .jqx-icon-time-pressed-ui-le-frog {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-icon-delete-ui-le-frog\r
+{\r
+    background-image: url('images/icon-delete-white.png');\r
+}\r
+.jqx-icon-edit-ui-le-frog\r
+{\r
+    background-image: url('images/icon-edit-white.png');\r
+}\r
+.jqx-icon-save-ui-le-frog\r
+{\r
+    background-image: url('images/icon-save-white.png');\r
+}\r
+.jqx-icon-cancel-ui-le-frog\r
+{\r
+    background-image: url('images/icon-cancel-white.png');\r
+}\r
+.jqx-icon-search-ui-le-frog\r
+{\r
+    background-image: url(images/search_white.png);\r
+}\r
+.jqx-icon-plus-ui-le-frog\r
+{\r
+    background-image: url(images/plus_white.png);\r
+}\r
+.jqx-menu-minimized-button-ui-le-frog {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-ui-le-frog {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-ui-le-frog\r
+{\r
+    background-color: #3f7506;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-le-frog\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-le-frog\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-month-cell-ui-le-frog, .jqx-scheduler-time-column-ui-le-frog, .jqx-scheduler-toolbar-ui-le-frog\r
+{\r
+    background: #3f7506 !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-ui-le-frog .jqx-scheduler-middle-cell-ui-le-frog, .jqx-scheduler-middle-cell-ui-le-frog {\r
+    border-bottom-color: #3f7506 !important;\r
+}\r
+.jqx-docking-layout-group-floating-ui-le-frog .jqx-window-header-ui-le-frog\r
+{\r
+    background-image: none;\r
+}\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-lightness.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-lightness.css
new file mode 100644 (file)
index 0000000..436596a
--- /dev/null
@@ -0,0 +1,161 @@
+.jqx-rc-tl-ui-lightness{border-top-left-radius:4px; moz-border-radius-topleft:4px; webkit-border-top-left-radius:4px}\r
+.jqx-rc-tr-ui-lightness{border-top-right-radius:4px; moz-border-radius-topright:4px; webkit-border-top-right-radius:4px}\r
+.jqx-rc-bl-ui-lightness{border-bottom-left-radius:4px; moz-border-radius-bottomleft:4px; webkit-border-bottom-left-radius:4px}\r
+.jqx-rc-br-ui-lightness{border-bottom-right-radius:4px; moz-border-radius-bottomright:4px; webkit-border-bottom-right-radius:4px}\r
+.jqx-rc-t-ui-lightness{border-top-left-radius:4px; border-top-right-radius:4px; moz-border-radius-topleft:4px; moz-border-radius-topright:4px; webkit-border-top-left-radius:4px; webkit-border-top-right-radius:4px}\r
+.jqx-rc-b-ui-lightness{border-bottom-left-radius:4px; border-bottom-right-radius:4px; moz-border-radius-bottomleft:4px; moz-border-radius-bottomright:4px; webkit-border-bottom-left-radius:4px; webkit-border-bottom-right-radius:4px}\r
+.jqx-rc-r-ui-lightness{border-bottom-right-radius:4px; border-top-right-radius:4px; moz-border-radius-bottomright:4px; moz-border-radius-topright:4px; webkit-border-bottom-right-radius:4px; webkit-border-top-right-radius:4px}\r
+.jqx-rc-l-ui-lightness{border-bottom-left-radius:4px; border-top-left-radius:4px; moz-border-radius-bottomleft:4px; moz-border-radius-topleft:4px; webkit-border-bottom-left-radius:4px; webkit-border-top-left-radius:4px}\r
+.jqx-rc-all-ui-lightness{border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+.jqx-grid-column-sortdescbutton-ui-lightness{background-position:0 -16px; background-image:url(images/lightness/ui-icons_ffffff_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortascbutton-ui-lightness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -16px; background-image:url(images/lightness/ui-icons_ffffff_256x240.png)}\r
+.jqx-grid-ui-lightness .jqx-widget-header-ui-lightness{border-width:0px !important}\r
+.jqx-tree-item-arrow-expand-ui-lightness, .jqx-tree-item-arrow-expand-hover-ui-lightness{background-position:-65px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-lightness, .jqx-tree-item-arrow-collapse-hover-ui-lightness{background-position:-32px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-tabs-arrow-right-ui-lightness, .jqx-menu-item-arrow-right-ui-lightness, .jqx-menu-item-arrow-right-selected-ui-lightness{background-position:-32px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-tabs-arrow-left-ui-lightness, .jqx-menu-item-arrow-left-ui-lightness, .jqx-menu-item-arrow-left-selected-ui-lightness{background-position:-96px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-progressbar-ui-lightness .jqx-fill-state-pressed-ui-lightness{background:#f6a828; border-width:0px; border-right:1px solid #e78f08; color:#fff;}\r
+.jqx-progressbar-value-vertical-ui-lightness{border-width:0px !important; border-bottom: 1px solid #e78f08 !important}\r
+.jqx-tabs-title-ui-lightness{ border-color: #ccc; border-bottom-color: #fafafa; background:#f6f6f6 url(images/lightness/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; color:#1c94c4; font-weight:bold;}\r
+.jqx-tabs-title-selected-top-ui-lightness{background-color:#fff;}\r
+.jqx-tabs-title-selected-bottom-ui-lightness{}\r
+.jqx-tabs-title-bottom-ui-lightness{margin-top:-2px; border-top-color: #fafafa; bottom-bottom-color: #ccc;}\r
+.jqx-tabs-header-ui-lightness{margin:2px; border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+.jqx-tabs-header-bottom-ui-lightness{margin-top:-2px !important; padding-top:2px}\r
+.jqx-tabs-content-ui-lightness{border-width:0px !important}\r
+.jqx-radiobutton-ui-lightness .jqx-fill-state-pressed-ui-lightness{background:#ec8e0c; border:1px solid #fed22f}\r
+.jqx-calendar-cell-ui-lightness{background:#f6f6f6 url(images/lightness/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; border:1px solid #ccc; color:#1c94c4; font-weight:bold; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-lightness{background:#ffe45c url(images/lightness/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-lightness{border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+.jqx-calendar-month-container-ui-lightness{border:none !important}\r
+.jqx-calendar-ui-lightness{padding:2px}\r
+.jqx-calendar-ui-lightness .jqx-icon-arrow-left-ui-lightness{background-image:url(images/lightness/ui-icons_ffffff_256x240.png); background-position:-80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-lightness .jqx-icon-arrow-right-ui-lightness{background-image:url(images/lightness/ui-icons_ffffff_256x240.png); background-position:-48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+.jqx-calendar-ui-lightness .jqx-icon-arrow-left-hover-ui-lightness{background-image:url(images/lightness/ui-icons_ef8c08_256x240.png); background-position:-80px -192px}\r
+.jqx-calendar-ui-lightness .jqx-icon-arrow-right-hover-ui-lightness{background-image:url(images/lightness/ui-icons_ef8c08_256x240.png); background-position:-48px -192px}\r
+.jqx-navigationbar-ui-lighness{overflow: auto;}\r
+.jqx-window-ui-lightness{padding: 2px;}\r
+.jqx-window-header-ui-lightness{ moz-border-radius:4px; border-radius:4px; webkit-border-radius:4px}\r
+.jqx-window-content-ui-lightness{border-width:0px !important}\r
+.jqx-window-close-button-hover-ui-lightness{background-color:#fff; background-position:-96px -128px; background-image:url(images/lightness/ui-icons_ef8c08_256x240.png); cursor:pointer; width:16px; height:16px}\r
+.jqx-grid-column-header-ui-lightness{border-width:0px !important}\r
+.jqx-slider-ui-lightness .jqx-fill-state-pressed-ui-lightness{background:#f6a828 url(images/lightness/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x; border-color:#e78f08}\r
+.jqx-icon-arrow-up-ui-lightness{background-position:0 -16px; background-image:url(images/lightness/ui-icons_ef8c08_256x240.png)}\r
+.jqx-icon-arrow-down-ui-lightness{background-position:-65px -16px; background-image:url(images/lightness/ui-icons_ef8c08_256x240.png)}\r
+.jqx-icon-arrow-left-ui-lightness, .jqx-tree-item-arrow-collapse-rtl-ui-lightness, .jqx-tree-item-arrow-collapse-hover-rtl-ui-lightness{background-position:-96px -17px; background-image:url(images/lightness/ui-icons_ef8c08_256x240.png)}\r
+.jqx-icon-arrow-right-ui-lightness{background-position:-32px -17px; background-image:url(images/lightness/ui-icons_ef8c08_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-lightness{background-position:0 -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-lightness{background-position:-65px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-lightness{background-position:-96px -17px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-lightness{background-position:-32px -17px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-lightness{background-position:0 -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-lightness{background-position:-65px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-lightness{background-position:-96px -17px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-lightness{background-position:-32px -17px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-close-ui-lightness{background-image:url(images/lightness/ui-icons_222222_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-lightness{background-image:url(images/lightness/ui-icons_222222_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-grid-column-menubutton-ui-lightness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -16px; background-image:url(images/lightness/ui-icons_ffffff_256x240.png); border-width:0px}\r
+.jqx-window-close-button-ui-lightness{background-position:-96px -128px; background-image:url(images/lightness/ui-icons_ffffff_256x240.png);moz-border-radius:4px; border-radius:4px; webkit-border-radius:4px}\r
+.jqx-window-collapse-button-ui-lightness{background-position:0 -16px; background-image:url(images/lightness/ui-icons_ffffff_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-lightness{background-image:url(images/lightness/ui-icons_ef8c08_256x240.png); background-color:#fff; border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+.jqx-window-collapse-button-collapsed-ui-lightness, .jqx-window-collapse-button-collapsed-hover-ui-lightness{background-position:-65px -16px}\r
+.jqx-window-modal-ui-lightness{}\r
+\r
+.jqx-widget-ui-lightness{line-height: 17px; font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; font-size:12px; font-style:normal; webkit-tap-highlight-color:rgba(0,0,0,0)}\r
+.jqx-widget-content-ui-lightness{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; background-color:#f8f8f8; background-image:-webkit-gradient(linear,0 0,0 100%,from(#f8f8f8),to(#eee));  background-image:-moz-linear-gradient(top,#f8f8f8,#eee);  background-image:-o-linear-gradient(top,#f8f8f8,#eee); border-color:#ddd; color:#333; font-size:12px}\r
+.jqx-widget-content-ui-lightness a{color:#333}\r
+.jqx-widget-header-ui-lightness{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; background:#f6a828 url(images/lightness/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x; border-color: #e78f08; color:#fff; font-size:12px}\r
+.jqx-widget-header-ui-lightness a{color:#fff}\r
+.jqx-fill-state-normal-ui-lightness{background:#f6f6f6 url(images/lightness/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; border-color:#ccc; color:#1c94c4}\r
+.jqx-fill-state-normal-ui-lightness a, .jqx-fill-state-normal-ui-lightness a:link, .jqx-fill-state-normal-ui-lightness a:visited{color:#1c94c4; text-decoration:none}\r
+.jqx-fill-state-hover-ui-lightness{background:#fdf5ce url(images/lightness/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x; border-color:#fbcb09; color:#c77405}\r
+.jqx-fill-state-hover-ui-lightness a, .jqx-fill-state-hover-ui-lightness a:hover{color:#c77405; text-decoration:none}\r
+.jqx-fill-state-pressed-ui-lightness{background:#fff url(images/lightness/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; border-color:#fbd850; color:#eb8f00}\r
+.jqx-fill-state-pressed-ui-lightness a, .jqx-fill-state-pressed-ui-lightness a:link, .jqx-fill-state-pressed-ui-lightness a:visited{color:#eb8f00; text-decoration:none}\r
+\r
+.jqx-input-button-content-ui-lightness{font-size:10px}\r
+.jqx-input-icon-ui-lightness{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-lightness{margin-top:0px; background-position:-65px -147px; background-image:url(images/lightness/ui-icons_ef8c08_256x240.png)}\r
+.jqx-grid-cell-sort-ui-lightness, .jqx-grid-cell-filter-ui-lightness, .jqx-grid-cell-pinned-ui-lightness{background-color:#f8f8f8; color:#1c94c4}\r
+.jqx-splitter-collapse-button-horizontal-ui-lightness, .jqx-splitter-collapse-button-vertical-ui-lightness{ background:#ec8e0c;  border:1px solid #fdd02e}\r
+.jqx-dropdownlist-content-ui-lightness{ color:#333}\r
+\r
+.jqx-expander-header-ui-lightness{background:#f6f6f6 url(images/lightness/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x; border:1px solid #ccc; color:#1c94c4; font-weight:bold; border-radius:4px !important; moz-border-radius:4px !important; webkit-border-radius:4px !important}\r
+.jqx-expander-header-hover-ui-lightness{background:#fdf5ce url(images/lightness/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x; border:1px solid #fbcb09; color:#c77405; font-weight:bold}\r
+.jqx-expander-header-expanded-ui-lightness{background:#fff url(images/lightness/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; border:1px solid #fbd850; border-bottom-width:0px; color:#eb8f00; font-weight:bold; border-top-left-radius:4px !important; border-top-right-radius:4px !important; moz-border-radius-topleft:4px !important; moz-border-radius-topright:4px !important; webkit-border-top-left-radius:4px !important; webkit-border-top-right-radius:4px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-lightness{border-bottom-left-radius:4px !important; border-bottom-right-radius:4px !important; moz-border-radius-bottomleft:4px !important; moz-border-radius-bottomright:4px !important; webkit-border-bottom-left-radius:4px !important; webkit-border-bottom-right-radius:4px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-lightness{background-position:-65px -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-lightness{background-position:0 -16px; background-image:url(images/lightness/ui-icons_222222_256x240.png)}\r
+.jqx-tabs-title-selected-top-ui-lightness\r
+{\r
+    border-bottom: 1px solid #fff;\r
+}\r
+.jqx-tabs-title-selected-bottom-ui-lightness\r
+{\r
+    border-top: 1px solid #fff;\r
+}\r
+.jqx-tabs-selection-tracker-top-ui-lightness\r
+{\r
+   border-bottom: 1px solid #fff;\r
+}\r
+.jqx-tabs-selection-tracker-bottom-ui-lightness\r
+{\r
+   border-top: 1px solid #fff;\r
+}\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-lightness .jqx-icon-arrow-up-ui-lightness{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-lightness .jqx-icon-arrow-down-ui-lightness{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-lightness .jqx-icon-arrow-left-ui-lightness{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-lightness .jqx-icon-arrow-right-ui-lightness{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-icon-arrow-first-ui-lightness\r
+{\r
+    background-image: url('images/lightness/icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-ui-lightness\r
+{\r
+    background-image: url('images/lightness/icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-pager-number-ui-lightness.jqx-fill-state-pressed-ui-lightness {\r
+    color: #000;\r
+}\r
+.jqx-grid-pager-number-ui-lightness.jqx-fill-state-hover-ui-lightness {\r
+    color: #000;\r
+}\r
+.jqx-grid-group-collapse-ui-lightness\r
+{\r
+    background-image: url(images/icon-right.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-ui-lightness\r
+{\r
+    background-image: url(images/icon-left.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-ui-lightness, .jqx-grid-group-expand-rtl-ui-lightness\r
+{\r
+    background-image: url(images/icon-down.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-layout-ui-lightness\r
+{\r
+    background-color: #e78f08;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-lightness\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-lightness\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-docking-layout-group-floating .jqx-window-header-ui-lightness\r
+{\r
+    background-image: none;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-overcast.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-overcast.css
new file mode 100644 (file)
index 0000000..b505344
--- /dev/null
@@ -0,0 +1,177 @@
+.jqx-rc-tl-ui-overcast{border-top-left-radius:6px; moz-border-radius-topleft:6px; webkit-border-top-left-radius:6px}\r
+.jqx-rc-tr-ui-overcast{border-top-right-radius:6px; moz-border-radius-topright:6px; webkit-border-top-right-radius:6px}\r
+.jqx-rc-bl-ui-overcast{border-bottom-left-radius:6px; moz-border-radius-bottomleft:6px; webkit-border-bottom-left-radius:6px}\r
+.jqx-rc-br-ui-overcast{border-bottom-right-radius:6px; moz-border-radius-bottomright:6px; webkit-border-bottom-right-radius:6px}\r
+.jqx-rc-t-ui-overcast{border-top-left-radius:6px; border-top-right-radius:6px; moz-border-radius-topleft:6px; moz-border-radius-topright:6px; webkit-border-top-left-radius:6px; webkit-border-top-right-radius:6px}\r
+.jqx-rc-b-ui-overcast{border-bottom-left-radius:6px; border-bottom-right-radius:6px; moz-border-radius-bottomleft:6px; moz-border-radius-bottomright:6px; webkit-border-bottom-left-radius:6px; webkit-border-bottom-right-radius:6px}\r
+.jqx-rc-r-ui-overcast{border-bottom-right-radius:6px; border-top-right-radius:6px; moz-border-radius-bottomright:6px; moz-border-radius-topright:6px; webkit-border-bottom-right-radius:6px; webkit-border-top-right-radius:6px}\r
+.jqx-rc-l-ui-overcast{border-bottom-left-radius:6px; border-top-left-radius:6px; moz-border-radius-bottomleft:6px; moz-border-radius-topleft:6px; webkit-border-bottom-left-radius:6px; webkit-border-top-left-radius:6px}\r
+.jqx-rc-all-ui-overcast{border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+/*Grid*/\r
+.jqx-grid-column-sortascbutton-ui-overcast{background-position:-96px -192px; background-image:url(images/overcast/ui-icons_454545_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortdescbutton-ui-overcast{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -192px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-grid-column-menubutton-ui-overcast{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png); border-width:0px}\r
+/*Tree*/\r
+.jqx-tree-item-arrow-expand-ui-overcast, .jqx-tree-item-arrow-expand-hover-ui-overcast{background-position:-64px -16px; background-image:url(images/overcast/ui-icons_999999_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-overcast, .jqx-tree-item-arrow-collapse-hover-ui-overcast{background-position:-32px -16px; background-image:url(images/overcast/ui-icons_999999_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-overcast, .jqx-menu-item-arrow-right-selected-ui-overcast{background-position:-32px -16px; background-image:url(images/overcast/ui-icons_999999_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-overcast, .jqx-menu-item-arrow-left-selected-ui-overcast, .jqx-tree-item-arrow-collapse-rtl-ui-overcast, .jqx-tree-item-arrow-collapse-hover-rtl-ui-overcast{background-position:-96px -16px; background-image:url(images/overcast/ui-icons_999999_256x240.png)}\r
+/*Tabs*/\r
+.jqx-tabs-title-ui-overcast{font-weight: bold; border-color: #ccc; background: #eeeeee ; color: #3383bb;}\r
+.jqx-tabs-header-ui-overcast{border-width: 1px; margin:2px; border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+.jqx-tabs-header-bottom-ui-overcast{margin-top:-2px !important; padding-bottom: 3px; padding-top:1px}\r
+.jqx-tabs-title-bottom-ui-overcast{border-bottom-color:#ccc; border-top-color: transparent;}\r
+\r
+/*Radio Button*/\r
+.jqx-radiobutton-ui-overcast .jqx-fill-state-pressed-ui-overcast{background:#444644; border:1px solid #444644}\r
+/*Calendar*/\r
+.jqx-calendar-cell-ui-overcast{font-weight: bold; font-size: 11px; border-color: #ccc; background: #eeeeee url(images/overcast/ui-bg_glass_60_eeeeee_1x400.png) 50% 50% repeat-x; color: #3383bb;  padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-overcast{background:#ffe45c url(images/overcast/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-overcast{border: 1px solid #bbbbbb; border-bottom-width: 0px; border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px; font-weight: bold;}\r
+.jqx-calendar-month-container-ui-overcast{border:none !important}\r
+.jqx-calendar-ui-overcast{padding:2px}\r
+.jqx-calendar-column-cell-ui-overcast{font-size: 11px; font-weight: bold;}\r
+.jqx-calendar-ui-overcast .jqx-icon-arrow-left-ui-overcast{background-image:url(images/overcast/ui-icons_999999_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:6px; position:relative}\r
+.jqx-calendar-ui-overcast .jqx-icon-arrow-right-ui-overcast{background-image:url(images/overcast/ui-icons_999999_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:6px; position:relative}\r
+\r
+/*Icons*/\r
+.jqx-icon-arrow-up-ui-overcast{background-position:0 -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-down-ui-overcast{background-position:-64px -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-left-ui-overcast{background-position:-96px -17px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-right-ui-overcast{background-position:-32px -17px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-overcast{background-position:0 -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-overcast{background-position:-64px -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-left-hover-ui-overcast{background-position:-96px -17px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-right-hover-ui-overcast{background-position:-32px -17px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-overcast{background-position:-96px -17px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-overcast{background-position:-32px -17px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-overcast{background-position:0 -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-overcast{background-position:-64px -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-icon-close-ui-overcast{background-image:url(images/overcast/ui-icons_454545_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-overcast{background-image:url(images/overcast/ui-icons_454545_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+/*Window*/\r
+.jqx-window-ui-overcast{padding: 2px;}\r
+.jqx-window-header-ui-overcast{border: 1px solid #4297d7; font-weight: bold; font-size: 11px; moz-border-radius:6px; border-radius:6px; webkit-border-radius:6px}\r
+.jqx-window-content-ui-overcast{border-width:0px !important}\r
+.jqx-window-close-button-ui-overcast{background-position:-96px -128px; background-image:url(images/overcast/ui-icons_454545_256x240.png);moz-border-radius:6px; border-radius:6px; webkit-border-radius:6px}\r
+.jqx-window-close-button-hover-ui-overcast{background-color:#fff; background-position:-96px -128px; background-image:url(images/overcast/ui-icons_70b2e1_256x240.png); cursor:pointer; width:16px; height:16px}\r
+.jqx-window-collapse-button-ui-overcast{background-position:0 -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-overcast{background-image:url(images/overcast/ui-icons_70b2e1_256x240.png); background-color:#fff; border-radius:6px; moz-border-radius:6px; webkit-border-radius:6px}\r
+.jqx-window-collapse-button-collapsed-ui-overcast, .jqx-window-collapse-button-collapsed-hover-ui-overcast{background-position:-64px -16px}\r
+.jqx-window-modal-ui-overcast{background: #aaaaaa; opacity: .30;filter:Alpha(Opacity=30);}\r
+/*Common Settings*/\r
+.jqx-widget-ui-overcast{line-height: 17px; font-family: Trebuchet MS, Helvetica, Arial, sans-serif; font-size:12px; font-style:normal; webkit-tap-highlight-color:rgba(0,0,0,0)}\r
+.jqx-widget-content-ui-overcast{ font-family: Trebuchet MS, Helvetica, Arial, sans-serif; border-color: #aaaaaa; background: #c9c9c9; color: #333333; font-size:12px}\r
+.jqx-widget-content-ui-overcast a{color:#333333}\r
+.jqx-widget-header-ui-overcast{font-family: Trebuchet MS, Helvetica, Arial, sans-serif; border-color: #bbbbbb; background: #dddddd url(images/overcast/ui-bg_glass_35_dddddd_1x400.png) 50% 50% repeat-x; color: #444444; font-size:12px}\r
+.jqx-widget-header-ui-overcast a{color:#444444}\r
+.jqx-fill-state-normal-ui-overcast{border-color: #cccccc; background: #eeeeee ; color: #3383bb;}\r
+.jqx-fill-state-normal-ui-overcast a, .jqx-fill-state-normal-ui-overcast a:link, .jqx-fill-state-normal-ui-overcast a:visited{color:#3383bb; text-decoration:none}\r
+.jqx-fill-state-hover-ui-overcast{border-color: #bbbbbb; background: #f8f8f8 url(images/overcast/ui-bg_glass_100_f8f8f8_1x400.png) 50% 50% repeat-x; color: #599fcf;}\r
+.jqx-fill-state-hover-ui-overcast a, .jqx-fill-state-hover-ui-overcast a:hover{color:#599fcf; text-decoration:none}\r
+.jqx-fill-state-focus-ui-overcast {border-color: #555555;}\r
+.jqx-fill-state-pressed-ui-overcast{border-color: #999999; background: #999999 url(images/overcast/ui-bg_inset-hard_75_999999_1x100.png) 50% 50% repeat-x; color: #ffffff; }\r
+.jqx-fill-state-pressed-ui-overcast a, .jqx-fill-state-pressed-ui-overcast a:link, .jqx-fill-state-pressed-ui-overcast a:visited{color:#ffffff; text-decoration:none}\r
+.jqx-fill-state-disabled-ui-overcast {cursor: default; color: #000; opacity: .55; filter:Alpha(Opacity=45);}\r
+\r
+.jqx-input-button-content-ui-overcast{font-size:10px}\r
+.jqx-input-icon-ui-overcast{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-overcast{margin-top:0px; background-position:-64px -147px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+/*Progress Bar*/\r
+.jqx-progressbar-ui-overcast .jqx-fill-state-pressed-ui-overcast{background: #dddddd; border-bottom: none;}\r
+.jqx-progressbar-value-vertical-ui-overcast{background: #dddddd; border-right: none; border-bottom: 1px solid #cccccc;}\r
+/*ScrollBar */\r
+.jqx-scrollbar-thumb-state-normal-ui-overcast, .jqx-scrollbar-thumb-state-normal-horizontal-ui-overcast{ border: 1px solid #cccccc; background: #eeeeee;}\r
+.jqx-scrollbar-thumb-state-hover-ui-overcast, .jqx-scrollbar-thumb-state-hover-horizontal-ui-overcast{ border: 1px solid #bbbbbb; background: #f8f8f8;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-overcast, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-overcast{ border: 1px solid #999999; background: #999999;}\r
+\r
+.jqx-tabs-title-selected-top-ui-overcast\r
+{\r
+    border-color: #cccccc;\r
+    border-bottom: 1px solid #c9c9c9;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom-ui-overcast\r
+{\r
+    border-color: #cccccc;\r
+    border-top: 1px solid #c9c9c9;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top-ui-overcast\r
+{\r
+   border-color: #cccccc;\r
+   border-bottom: 1px solid #c9c9c9;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom-ui-overcast\r
+{\r
+   border-color: #cccccc;\r
+   border-top: 1px solid #c9c9c9;\r
+}\r
+/*Slider*/\r
+.jqx-slider-ui-overcast .jqx-fill-state-pressed-ui-overcast{background:#e1e1e1;}\r
+.jqx-slider-track-ui-overcast{border: 1px solid #aaaaaa; background: #d9d9d9;}\r
+/*Grid*/\r
+.jqx-grid-cell-sort-ui-overcast, .jqx-grid-cell-filter-ui-overcast, .jqx-grid-cell-pinned-ui-overcast{background:#e1e1e1;}\r
+.jqx-grid-bottomright-ui-overcast, .jqx-panel-bottomright-ui-overcast, .jqx-listbox-bottomright-ui-overcast, .jqx-scrollbar-state-normal-ui-overcast{background: #e1e1e1;}\r
+.jqx-grid-cell-sort-alt-ui-overcast, .jqx-grid-cell-alt-ui-overcast, .jqx-grid-cell-filter-alt-ui-overcast{background: #e1e1e1;}\r
+.jqx-widget-ui-overcast .jqx-grid-column-header-ui-overcast, .jqx-grid-cell-ui-overcast, .jqx-widget-ui-overcast .jqx-grid-cell-ui-overcast, .jqx-widget-ui-overcast .jqx-grid-group-cell-ui-overcast, .jqx-grid-group-cell-ui-overcast{border-color:#cccccc}\r
+.jqx-grid-column-header-ui-overcast{font-weight: bold;}\r
+.jqx-grid-cell-selected-ui-overcast{border-color: #cccccc; background: #999999 url(images/overcast/ui-bg_inset-hard_75_999999_1x100.png) 50% 50% repeat-x; color: #ffffff;}\r
+.jqx-grid-group-expand-ui-overcast{background-position: 50% 50%; background-repeat: no-repeat; background-image: url(images/icon-down.png);}\r
+.jqx-grid-group-collapse-ui-overcast{background-position: 50% 50%; background-repeat: no-repeat; background-image: url(images/icon-right.png);}\r
+/*Splitter*/\r
+.jqx-splitter-collapse-button-vertical, .jqx-splitter-collapse-button-horizontal\r
+{\r
+    background: #aaaaaa;\r
+}\r
+/*Menu*/\r
+.jqx-menu-item-top-ui-overcast\r
+{\r
+    font-weight: bold;\r
+}\r
+.jqx-menu-dropdown-ui-overcast\r
+{\r
+    -moz-border-radius-bottomleft: 6px;\r
+    -webkit-border-bottom-left-radius: 6px;\r
+    border-bottom-left-radius: 6px;\r
+    -moz-border-radius-topright: 6px;\r
+    -webkit-border-top-right-radius: 6px;\r
+    border-top-right-radius: 6px;\r
+    -moz-border-radius-bottomright: 6px;\r
+    -webkit-border-bottom-right-radius: 6px;\r
+    border-bottom-right-radius: 6px;\r
+    right: -1px;\r
+}\r
+/*Navigation Bar*/\r
+.jqx-navigationbar-ui-overcast{overflow: inherit;}\r
+.jqx-expander-header-ui-overcast{font-weight: bold; margin-bottom:2px; margin-top:2px}\r
+.jqx-expander-header-ui-overcast{background: #eeeeee url(images/overcast/ui-bg_glass_60_eeeeee_1x400.png) 50% 50% repeat-x; color: #3383bb; border-color: #cccccc; border-radius:6px !important; moz-border-radius:6px !important; webkit-border-radius:6px !important}\r
+.jqx-expander-header-hover-ui-overcast{background: #f8f8f8 url(images/overcast/ui-bg_glass_100_f8f8f8_1x400.png) 50% 50% repeat-x; color: #599fcf; border:1px solid #bbbbbb;}\r
+.jqx-expander-header-expanded-ui-overcast{background: #999999 url(images/overcast/ui-bg_inset-hard_75_999999_1x100.png) 50% 50% repeat-x; color: #ffffff; border:1px solid #999999; border-bottom-width:0px; border-top-left-radius:6px !important; border-top-right-radius:6px !important; moz-border-radius-topleft:6px !important; moz-border-radius-topright:6px !important; webkit-border-top-left-radius:6px !important; webkit-border-top-right-radius:6px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-overcast{border-bottom-left-radius:6px !important; border-bottom-right-radius:6px !important; moz-border-radius-bottomleft:6px !important; moz-border-radius-bottomright:6px !important; webkit-border-bottom-left-radius:6px !important; webkit-border-bottom-right-radius:6px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-overcast{width: 16px; height: 16px; position: relative; background-position:-64px -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-overcast{width: 16px; height: 16px; position: relative;  background-position:0 -16px; background-image:url(images/overcast/ui-icons_454545_256x240.png)}\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-overcast .jqx-icon-arrow-up-ui-overcast{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-overcast .jqx-icon-arrow-down-ui-overcast{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-overcast .jqx-icon-arrow-left-ui-overcast{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-overcast .jqx-icon-arrow-right-ui-overcast{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-layout-ui-overcast\r
+{\r
+    background-color: #bbbbbb;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-overcast\r
+{\r
+    background-image: url("images/pin-black.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-overcast\r
+{\r
+    background-image: url("images/pinned-black.png");\r
+}\r
+.jqx-docking-layout-group-floating .jqx-window-header-ui-overcast\r
+{\r
+    background-image: none;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-redmond.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-redmond.css
new file mode 100644 (file)
index 0000000..159d1a0
--- /dev/null
@@ -0,0 +1,183 @@
+.jqx-rc-tl-ui-redmond{border-top-left-radius:5px; moz-border-radius-topleft:5px; webkit-border-top-left-radius:5px}\r
+.jqx-rc-tr-ui-redmond{border-top-right-radius:5px; moz-border-radius-topright:5px; webkit-border-top-right-radius:5px}\r
+.jqx-rc-bl-ui-redmond{border-bottom-left-radius:5px; moz-border-radius-bottomleft:5px; webkit-border-bottom-left-radius:5px}\r
+.jqx-rc-br-ui-redmond{border-bottom-right-radius:5px; moz-border-radius-bottomright:5px; webkit-border-bottom-right-radius:5px}\r
+.jqx-rc-t-ui-redmond{border-top-left-radius:5px; border-top-right-radius:5px; moz-border-radius-topleft:5px; moz-border-radius-topright:5px; webkit-border-top-left-radius:5px; webkit-border-top-right-radius:5px}\r
+.jqx-rc-b-ui-redmond{border-bottom-left-radius:5px; border-bottom-right-radius:5px; moz-border-radius-bottomleft:5px; moz-border-radius-bottomright:5px; webkit-border-bottom-left-radius:5px; webkit-border-bottom-right-radius:5px}\r
+.jqx-rc-r-ui-redmond{border-bottom-right-radius:5px; border-top-right-radius:5px; moz-border-radius-bottomright:5px; moz-border-radius-topright:5px; webkit-border-bottom-right-radius:5px; webkit-border-top-right-radius:5px}\r
+.jqx-rc-l-ui-redmond{border-bottom-left-radius:5px; border-top-left-radius:5px; moz-border-radius-bottomleft:5px; moz-border-radius-topleft:5px; webkit-border-bottom-left-radius:5px; webkit-border-top-left-radius:5px}\r
+.jqx-rc-all-ui-redmond{border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px}\r
+/*Grid*/\r
+.jqx-grid-column-sortascbutton-ui-redmond{background-position:-96px -192px; background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortdescbutton-ui-redmond{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -192px; background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png)}\r
+/*Tree*/\r
+.jqx-tree-item-arrow-expand-ui-redmond, .jqx-tree-item-arrow-expand-hover-ui-redmond{background-position:-65px -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-redmond, .jqx-tree-item-arrow-collapse-hover-ui-redmond{background-position:-32px -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-redmond, .jqx-menu-item-arrow-right-selected-ui-redmond{background-position:-32px -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-redmond, .jqx-menu-item-arrow-left-selected-ui-redmond, .jqx-tree-item-arrow-collapse-rtl-ui-redmond, .jqx-tree-item-arrow-collapse-hover-rtl-ui-redmond{background-position:-96px -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+/*Tabs*/\r
+.jqx-tabs-title-ui-redmond{font-weight: bold; border-color: #c5dbec; background: #dfeffc url(images/redmond/ui-bg_glass_85_dfeffc_1x400.png) 50% 50% repeat-x; color: #2e6e9e;}\r
+.jqx-tabs-header-ui-redmond{margin-left:2px; margin-right: 2px; margin-top: 2px; border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px}\r
+.jqx-tabs-arrow-right-ui-redmond{background-position:-32px -16px; background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-tabs-arrow-left-ui-redmond{background-position:-96px -16px; background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png)}\r
+/*Radio Button*/\r
+.jqx-radiobutton-ui-redmond .jqx-fill-state-pressed-ui-redmond{background:#6caad4; border:1px solid #6caad4}\r
+/*Calendar*/\r
+.jqx-calendar-cell-ui-redmond{font-weight: bold; font-size: 11px; border-color: #c5dbec; background: #dfeffc url(images/redmond/ui-bg_glass_85_dfeffc_1x400.png) 50% 50% repeat-x; color: #2e6e9e; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-redmond{background:#ffe45c url(images/redmond/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-redmond{border: 1px solid #4297d7; border-bottom-width: 0px; border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px; font-weight: bold;}\r
+.jqx-calendar-month-container-ui-redmond{border:none !important}\r
+.jqx-calendar-ui-redmond{padding:2px}\r
+.jqx-calendar-column-cell-ui-redmond{font-size: 11px; font-weight: bold;}\r
+.jqx-calendar-ui-redmond .jqx-icon-arrow-left-ui-redmond{background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-redmond .jqx-icon-arrow-right-ui-redmond{background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+/*Icons*/\r
+.jqx-icon-arrow-up-ui-redmond{background-position:0 -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-icon-arrow-down-ui-redmond{background-position:-65px -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-icon-arrow-left-ui-redmond{background-position:-96px -17px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-icon-arrow-right-ui-redmond{background-position:-32px -17px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-redmond{background-position:0 -16px; background-image:url(images/redmond/ui-icons_217bc0_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-redmond{background-position:-65px -16px; background-image:url(images/redmond/ui-icons_217bc0_256x240.png)}\r
+.jqx-icon-arrow-left-hover-ui-redmond{background-position:-96px -17px; background-image:url(images/redmond/ui-icons_217bc0_256x240.png)}\r
+.jqx-icon-arrow-right-hover-ui-redmond{background-position:-32px -17px; background-image:url(images/redmond/ui-icons_217bc0_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-redmond{background-position:-96px -17px; background-image:url(images/redmond/ui-icons_f9bd01_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-redmond{background-position:-32px -17px; background-image:url(images/redmond/ui-icons_f9bd01_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-redmond{background-position:0 -16px; background-image:url(images/redmond/ui-icons_f9bd01_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-redmond{background-position:-65px -16px; background-image:url(images/redmond/ui-icons_f9bd01_256x240.png)}\r
+.jqx-icon-close-ui-redmond{background-image:url(images/redmond/ui-icons_6da8d5_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-redmond{background-image:url(images/redmond/ui-icons_217bc0_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+/*Window*/\r
+.jqx-window-ui-redmond{padding: 2px;}\r
+.jqx-window-header-ui-redmond{border: 1px solid #4297d7; font-weight: bold; font-size: 11px; moz-border-radius:5px; border-radius:5px; webkit-border-radius:5px}\r
+.jqx-window-content-ui-redmond{border-width:0px !important}\r
+.jqx-window-close-button-ui-redmond{background-position:-96px -128px; background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png);moz-border-radius:5px; border-radius:5px; webkit-border-radius:5px}\r
+.jqx-window-collapse-button-ui-redmond{background-position:0 -16px; background-image:url(images/redmond/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-redmond{background-image:url(images/redmond/ui-icons_217bc0_256x240.png); background-color:#fff; border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px}\r
+.jqx-window-collapse-button-collapsed-ui-redmond, .jqx-window-collapse-button-collapsed-hover-ui-redmond{background-position:-65px -16px}\r
+.jqx-window-modal-ui-redmond{background: #aaaaaa; opacity: .30;filter:Alpha(Opacity=30);}\r
+.jqx-window-close-button-hover-ui-redmond{background-color:#fff; background-position:-96px -128px; background-image:url(images/redmond/ui-icons_217bc0_256x240.png); cursor:pointer; width:16px; height:16px}\r
+/*Common Settings*/\r
+.jqx-widget-ui-redmond{font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size:13px; font-style:normal; webkit-tap-highlight-color:rgba(0,0,0,0)}\r
+.jqx-widget-content-ui-redmond{ font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; border-color: #a6c9e2; background: #fcfdfd url(images/redmond/ui-bg_inset-hard_100_fcfdfd_1x100.png) 50% bottom repeat-x; color: #222222; font-size:13px}\r
+.jqx-widget-content-ui-redmond a{color:#222}\r
+.jqx-widget-header-ui-redmond{font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; border-color: #4297d7; background: #5c9ccc url(images/redmond/ui-bg_gloss-wave_55_5c9ccc_500x100.png) 50% 50% repeat-x; color: #ffffff; font-size:13px}\r
+.jqx-widget-header-ui-redmond a{color:#222}\r
+.jqx-fill-state-normal-ui-redmond{border-color: #c5dbec; background: #dfeffc url(images/redmond/ui-bg_glass_85_dfeffc_1x400.png) 50% 50% repeat-x; color: #2e6e9e;}\r
+.jqx-fill-state-normal-ui-redmond a, .jqx-fill-state-normal-ui-redmond a:link, .jqx-fill-state-normal-ui-redmond a:visited{color:#2e6e9e; text-decoration:none}\r
+.jqx-fill-state-hover-ui-redmond{border-color: #79b7e7; background: #d0e5f5 url(images/redmond/ui-bg_glass_75_d0e5f5_1x400.png) 50% 50% repeat-x; color: #1d5987;}\r
+.jqx-fill-state-hover-ui-redmond a, .jqx-fill-state-hover-ui-redmond a:hover{color:#1d5987; text-decoration:none}\r
+.jqx-fill-state-focus-ui-redmond {border-color: #79b7e7; color: #1d5987; }\r
+.jqx-fill-state-pressed-ui-redmond{border-color: #79b7e7; background: #f5f8f9 url(images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png) 50% 50% repeat-x; color: #e17009; }\r
+.jqx-fill-state-pressed-ui-redmond a, .jqx-fill-state-pressed-ui-redmond a:link, .jqx-fill-state-pressed-ui-redmond a:visited{color:#e17009; text-decoration:none}\r
+.jqx-fill-state-disabled-ui-redmond {cursor: default; color: #000; opacity: .55; filter:Alpha(Opacity=45);}\r
+.jqx-grid-column-menubutton-ui-redmond{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -16px; background-image:url(images/redmond/ui-icons_f9bd01_256x240.png); border-width:0px}\r
+\r
+.jqx-input-button-content-ui-redmond{font-size:10px}\r
+.jqx-input-icon-ui-redmond{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-redmond{margin-top:0px; background-position:-65px -147px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+/*Progress Bar*/\r
+.jqx-progressbar-ui-redmond .jqx-fill-state-pressed-ui-redmond{background: #8db9db; border-bottom: none;}\r
+.jqx-progressbar-value-vertical-ui-redmond{background: #8db9db; border-right: none; border-bottom: 1px solid #c5dbec;}\r
+/*ScrollBar */\r
+.jqx-scrollbar-thumb-state-normal-ui-redmond, .jqx-scrollbar-thumb-state-normal-horizontal-ui-redmond{ border: 1px solid #c5dbec; background: #e1effb;}\r
+.jqx-scrollbar-thumb-state-hover-ui-redmond, .jqx-scrollbar-thumb-state-hover-horizontal-ui-redmond{ border: 1px solid #79b7e7; background: #d0e5f5;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-redmond, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-redmond{ border: 1px solid #79b7e7; background: #f5f8f9;}\r
+\r
+.jqx-tabs-title-selected-top-ui-redmond\r
+{\r
+    border-color: #c5dbec;\r
+    border-bottom: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom-ui-redmond\r
+{\r
+    border-color: #c5dbec;\r
+    border-top: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top-ui-redmond\r
+{\r
+   border-color: #c5dbec;\r
+   border-bottom: 1px solid #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom-ui-redmond\r
+{\r
+   border-color: #c5dbec;\r
+   border-top: 1px solid #fff;\r
+}\r
+/*Slider*/\r
+.jqx-slider-ui-redmond .jqx-fill-state-pressed-ui-redmond{background:#8db9db;}\r
+.jqx-slider-track-ui-redmond{border: 1px solid #c5dbec; background: #fdfefe;}\r
+/*Grid*/\r
+.jqx-grid-cell-selected-ui-redmond{border-color: #c5dbec; color: #e17009; background: #f5f8f9 url(images/redmond/ui-bg_inset-hard_100_f5f8f9_1x100.png) 50% 50% repeat-x;}\r
+.jqx-grid-cell-sort-ui-redmond, .jqx-grid-cell-filter-ui-redmond, .jqx-grid-cell-pinned-ui-redmond{background:#e1effb;}\r
+.jqx-grid-bottomright-ui-redmond, .jqx-panel-bottomright-ui-redmond, .jqx-listbox-bottomright-ui-redmond, .jqx-scrollbar-state-normal-ui-redmond{background: #fff;}\r
+.jqx-grid-cell-sort-alt-ui-redmond, .jqx-grid-cell-alt-ui-redmond, .jqx-grid-cell-filter-alt-ui-redmond{background: #e1effb;}\r
+.jqx-widget-ui-redmond .jqx-grid-column-header-ui-redmond, .jqx-grid-cell-ui-redmond, .jqx-widget-ui-redmond .jqx-grid-cell-ui-redmond, .jqx-widget-ui-redmond .jqx-grid-group-cell-ui-redmond, .jqx-grid-group-cell-ui-redmond{border-color:#c5dbec}\r
+.jqx-grid-column-header-ui-redmond{font-weight: bold;}\r
+.jqx-grid-group-expand-ui-redmond{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-down.png);}\r
+.jqx-grid-group-collapse-ui-redmond{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-right.png);}\r
+/*Menu*/\r
+.jqx-menu-item-top-ui-redmond\r
+{\r
+font-weight: bold;\r
+}\r
+.jqx-menu-dropdown-ui-redmond\r
+{\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+    right: -1px;\r
+}\r
+/*Navigation Bar*/\r
+.jqx-navigationbar-ui-redmond{overflow: inherit;}\r
+.jqx-expander-header-ui-redmond{font-weight: bold; margin-top:2px}\r
+.jqx-expander-header-ui-redmond{background: #dfeffc url(images/redmond/ui-bg_glass_85_dfeffc_1x400.png) 50% 50% repeat-x; color: #2e6e9e; border:1px solid #c5dbec; border-radius:5px !important; moz-border-radius:5px !important; webkit-border-radius:5px !important}\r
+.jqx-expander-header-hover-ui-redmond{background: #d0e5f5 url(images/redmond/ui-bg_glass_75_d0e5f5_1x400.png) 50% 50% repeat-x; color: #1d5987; border:1px solid #79b7e7;}\r
+.jqx-expander-header-expanded-ui-redmond{color: #e17009; background:#f5f8f9 url(images/redmond/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; border:1px solid #a6c9e2; border-bottom-width:0px; border-top-left-radius:5px !important; border-top-right-radius:5px !important; moz-border-radius-topleft:5px !important; moz-border-radius-topright:5px !important; webkit-border-top-left-radius:5px !important; webkit-border-top-right-radius:5px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-redmond{border-color: #a6c9e2; border-bottom-left-radius:5px !important; border-bottom-right-radius:5px !important; moz-border-radius-bottomleft:5px !important; moz-border-radius-bottomright:5px !important; webkit-border-bottom-left-radius:5px !important; webkit-border-bottom-right-radius:5px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-redmond{position: relative; width: 16px; height: 16px; background-position:-65px -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-redmond{position: relative; width: 16px; height: 16px;  background-position:0 -16px; background-image:url(images/redmond/ui-icons_6da8d5_256x240.png)}\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-redmond .jqx-icon-arrow-up-ui-redmond{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-redmond .jqx-icon-arrow-down-ui-redmond{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-redmond .jqx-icon-arrow-left-ui-redmond{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-redmond .jqx-icon-arrow-right-ui-redmond{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-icon-arrow-first-ui-redmond\r
+{\r
+    background-image: url('images/redmond/icon-first.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-ui-redmond\r
+{\r
+    background-image: url('images/redmond/icon-last.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-layout-ui-redmond\r
+{\r
+    background-color: #4297d7;\r
+    background-image: none;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-redmond\r
+{\r
+    background-image: url("images/pin-lightblue.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-redmond\r
+{\r
+    background-image: url("images/pinned-lightblue.png");\r
+}\r
+.jqx-docking-layout-group-floating .jqx-window-header-ui-redmond\r
+{\r
+    background-image: none;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-smoothness.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-smoothness.css
new file mode 100644 (file)
index 0000000..f5eca4c
--- /dev/null
@@ -0,0 +1,164 @@
+.jqx-rc-tl-ui-smoothness{border-top-left-radius:4px; moz-border-radius-topleft:4px; webkit-border-top-left-radius:4px}\r
+.jqx-rc-tr-ui-smoothness{border-top-right-radius:4px; moz-border-radius-topright:4px; webkit-border-top-right-radius:4px}\r
+.jqx-rc-bl-ui-smoothness{border-bottom-left-radius:4px; moz-border-radius-bottomleft:4px; webkit-border-bottom-left-radius:4px}\r
+.jqx-rc-br-ui-smoothness{border-bottom-right-radius:4px; moz-border-radius-bottomright:4px; webkit-border-bottom-right-radius:4px}\r
+.jqx-rc-t-ui-smoothness{border-top-left-radius:4px; border-top-right-radius:4px; moz-border-radius-topleft:4px; moz-border-radius-topright:4px; webkit-border-top-left-radius:4px; webkit-border-top-right-radius:4px}\r
+.jqx-rc-b-ui-smoothness{border-bottom-left-radius:4px; border-bottom-right-radius:4px; moz-border-radius-bottomleft:4px; moz-border-radius-bottomright:4px; webkit-border-bottom-left-radius:4px; webkit-border-bottom-right-radius:4px}\r
+.jqx-rc-r-ui-smoothness{border-bottom-right-radius:4px; border-top-right-radius:4px; moz-border-radius-bottomright:4px; moz-border-radius-topright:4px; webkit-border-bottom-right-radius:4px; webkit-border-top-right-radius:4px}\r
+.jqx-rc-l-ui-smoothness{border-bottom-left-radius:4px; border-top-left-radius:4px; moz-border-radius-bottomleft:4px; moz-border-radius-topleft:4px; webkit-border-bottom-left-radius:4px; webkit-border-top-left-radius:4px}\r
+.jqx-rc-all-ui-smoothness{border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+/*Grid*/\r
+.jqx-grid-column-sortascbutton-ui-smoothness{background-position:-96px -192px; background-image:url(images/smoothness/ui-icons_222222_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortdescbutton-ui-smoothness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -192px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-grid-column-menubutton-ui-smoothness{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -192px; background-image:url(images/smoothness/ui-icons_454545_256x240.png); border-width:0px}\r
+/*Tree*/\r
+.jqx-tree-item-arrow-expand-ui-smoothness, .jqx-tree-item-arrow-expand-hover-ui-smoothness{background-position:-65px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-smoothness, .jqx-tree-item-arrow-collapse-hover-ui-smoothness{background-position:-32px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-smoothness, .jqx-menu-item-arrow-right-selected-ui-smoothness{background-position:-32px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-smoothness, .jqx-menu-item-arrow-left-selected-ui-smoothness, .jqx-tree-item-arrow-collapse-rtl-ui-smoothness, .jqx-tree-item-arrow-collapse-hover-rtl-ui-smoothness{background-position:-96px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+/*Tabs*/\r
+.jqx-tabs-title-ui-smoothness{border:1px solid #ccc; background:#E6E6E6 url(images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;}\r
+.jqx-tabs-header-ui-smoothness{border-width: 1px; margin:2px; border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+.jqx-tabs-title-bottom-ui-smoothness{border-bottom-color:#ccc; border-top-color: transparent;}\r
+.jqx-tabs-header-bottom-ui-smoothness{margin-top:-2px !important; padding-bottom: 3px; padding-top:1px}\r
+\r
+/*Radio Button*/\r
+.jqx-radiobutton-ui-smoothness .jqx-fill-state-pressed-ui-smoothness{background:#222; border:1px solid #000}\r
+/*Calendar*/\r
+.jqx-calendar-cell-ui-smoothness{font-size: 11px; background: #e6e6e6 url(images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; border-color:#d3d3d3; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-smoothness{background:#ffe45c; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-smoothness{border: 1px solid #aaa; border-bottom-width: 0px; border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px; font-weight: bold;}\r
+.jqx-calendar-month-container-ui-smoothness{border:none !important}\r
+.jqx-calendar-ui-smoothness{padding:2px}\r
+.jqx-calendar-column-cell-ui-smoothness{font-size: 11px; font-weight: bold;}\r
+.jqx-calendar-ui-smoothness .jqx-icon-arrow-left-ui-smoothness{background-image:url(images/smoothness/ui-icons_222222_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-smoothness .jqx-icon-arrow-right-ui-smoothness{background-image:url(images/smoothness/ui-icons_222222_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+\r
+/*Icons*/\r
+.jqx-icon-arrow-up-ui-smoothness{background-position:0 -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-down-ui-smoothness{background-position:-65px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-left-ui-smoothness{background-position:-96px -17px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-right-ui-smoothness{background-position:-32px -17px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-smoothness{background-position:0 -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-smoothness{background-position:-65px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-smoothness{background-position:-96px -17px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-smoothness{background-position:-32px -17px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-smoothness{background-position:0 -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-smoothness{background-position:-65px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-smoothness{background-position:-96px -17px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-smoothness{background-position:-32px -17px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-icon-close-ui-smoothness{background-image:url(images/smoothness/ui-icons_222222_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-smoothness{background-image:url(images/smoothness/ui-icons_222222_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+/*Window*/\r
+.jqx-window-ui-smoothness{padding: 2px;}\r
+.jqx-window-header-ui-smoothness{border: 1px solid #aaa; font-weight: bold; font-size: 11px; moz-border-radius:4px; border-radius:4px; webkit-border-radius:4px}\r
+.jqx-window-content-ui-smoothness{border-width:0px !important}\r
+.jqx-window-close-button-ui-smoothness{background-position:-96px -128px; background-image:url(images/smoothness/ui-icons_222222_256x240.png);moz-border-radius:4px; border-radius:4px; webkit-border-radius:4px}\r
+.jqx-window-collapse-button-ui-smoothness{background-position:0 -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-smoothness{background-image:url(images/smoothness/ui-icons_222222_256x240.png); background-color:#fff; border-radius:4px; moz-border-radius:4px; webkit-border-radius:4px}\r
+.jqx-window-collapse-button-collapsed-ui-smoothness, .jqx-window-collapse-button-collapsed-hover-ui-smoothness{background-position:-65px -16px}\r
+.jqx-window-modal-ui-smoothness{}\r
+.jqx-window-close-button-hover-ui-smoothness{background-color:#fff; background-position:-96px -128px; background-image:url(images/smoothness/ui-icons_222222_256x240.png); cursor:pointer; width:16px; height:16px}\r
+\r
+/*Common Settings*/\r
+.jqx-widget-ui-smoothness{ font-size:12px; font-style:normal; webkit-tap-highlight-color:rgba(0,0,0,0)}\r
+.jqx-widget-content-ui-smoothness{ background: #ffffff url(images/smoothness/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; border-color: #aaa; font-size:12px}\r
+.jqx-widget-content-ui-smoothness a{color:#222}\r
+.jqx-widget-header-ui-smoothness{ background: #cccccc url(images/smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; border-color: #aaa; color: #222222; font-size:12px}\r
+.jqx-widget-header-ui-smoothness a{color:#222}\r
+.jqx-fill-state-normal-ui-smoothness{background: #e6e6e6 url(images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; border-color:#d3d3d3; color:#555}\r
+.jqx-fill-state-normal-ui-smoothness a, .jqx-fill-state-normal-ui-smoothness a:link, .jqx-fill-state-normal-ui-smoothness a:visited{color:#555; text-decoration:none}\r
+.jqx-fill-state-hover-ui-smoothness{border-color: #999999; background: #dadada url(images/smoothness/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121;}\r
+.jqx-fill-state-hover-ui-smoothness a, .jqx-fill-state-hover-ui-smoothness a:hover{color:#212121; text-decoration:none}\r
+.jqx-fill-state-focus-ui-smoothness {border-color: #aaaaaa; }\r
+.jqx-fill-state-pressed-ui-smoothness{border-color: #aaaaaa; background: #ffffff url(images/smoothness/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }\r
+.jqx-fill-state-pressed-ui-smoothness a, .jqx-fill-state-pressed-ui-smoothness a:link, .jqx-fill-state-pressed-ui-smoothness a:visited{color:#212121; text-decoration:none}\r
+\r
+.jqx-input-button-content-ui-smoothness{font-size:10px}\r
+.jqx-input-icon-ui-smoothness{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-smoothness{margin-top:0px; background-position:-65px -147px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+/*Progress Bar*/\r
+.jqx-progressbar-ui-smoothness .jqx-fill-state-pressed-ui-smoothness{background: #cccccc; border-bottom: none;}\r
+.jqx-progressbar-value-vertical-ui-smoothness{background: #cccccc; border-right: none; border-bottom: 1px solid #aaa;}\r
+/*ScrollBar */\r
+.jqx-scrollbar-thumb-state-normal-ui-smoothness, .jqx-scrollbar-thumb-state-normal-horizontal-ui-smoothness{ border: 1px solid #aaa; background: #cccccc;}\r
+.jqx-scrollbar-thumb-state-hover-ui-smoothness, .jqx-scrollbar-thumb-state-hover-horizontal-ui-smoothness{ background: #dadada;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-smoothness, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-smoothness{ background: #ffffff;}\r
+\r
+.jqx-tabs-title-selected-top-ui-smoothness\r
+{\r
+    border-color: #aaa;\r
+    border-bottom: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom-ui-smoothness\r
+{\r
+    border-color: #aaa;\r
+    border-top: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top-ui-smoothness\r
+{\r
+   border-color: #aaa;\r
+   border-bottom: 1px solid #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom-ui-smoothness\r
+{\r
+   border-color: #aaa;\r
+   border-top: 1px solid #fff;\r
+}\r
+/*Slider*/\r
+.jqx-slider-ui-smoothness .jqx-fill-state-pressed-ui-smoothness{background:#cccccc;}\r
+.jqx-slider-track-ui-smoothness{border: 1px solid #aaa; background: #fff;}\r
+/*Grid*/\r
+.jqx-grid-cell-sort-ui-smoothness, .jqx-grid-cell-filter-ui-smoothness, .jqx-grid-cell-pinned-ui-smoothness, .jqx-grid-cell-selected-ui-smoothness{background:#e2e2e2;}\r
+.jqx-grid-bottomright-ui-smoothness, .jqx-panel-bottomright-ui-smoothness, .jqx-listbox-bottomright-ui-smoothness, .jqx-scrollbar-state-normal-ui-smoothness{background: #fff;}\r
+.jqx-grid-group-expand-ui-smoothness{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-down.png);}\r
+.jqx-grid-group-collapse-ui-smoothness{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-right.png);}\r
+/*Menu*/\r
+.jqx-menu-dropdown-ui-smoothness\r
+{\r
+    -moz-border-radius-bottomleft: 4px;\r
+    -webkit-border-bottom-left-radius: 4px;\r
+    border-bottom-left-radius: 4px;\r
+    -moz-border-radius-topright: 4px;\r
+    -webkit-border-top-right-radius: 4px;\r
+    border-top-right-radius: 4px;\r
+    -moz-border-radius-bottomright: 4px;\r
+    -webkit-border-bottom-right-radius: 4px;\r
+    border-bottom-right-radius: 4px;\r
+    right: -1px;\r
+}\r
+/*Navigation Bar*/\r
+.jqx-navigationbar-ui-smoothness{overflow: inherit;}\r
+.jqx-expander-header-ui-smoothness{margin-bottom:2px; margin-top:2px}\r
+.jqx-expander-header-ui-smoothness{background:#e6e6e6 url(images/smoothness/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; border:1px solid #aaa; border-radius:4px !important; moz-border-radius:4px !important; webkit-border-radius:4px !important}\r
+.jqx-expander-header-hover-ui-smoothness{border:1px solid #aaa;}\r
+.jqx-expander-header-expanded-ui-smoothness{background:#fff url(images/smoothness/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; border:1px solid #aaa; border-bottom-width:0px; border-top-left-radius:4px !important; border-top-right-radius:4px !important; moz-border-radius-topleft:4px !important; moz-border-radius-topright:4px !important; webkit-border-top-left-radius:4px !important; webkit-border-top-right-radius:4px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-smoothness{border-bottom-left-radius:4px !important; border-bottom-right-radius:4px !important; moz-border-radius-bottomleft:4px !important; moz-border-radius-bottomright:4px !important; webkit-border-bottom-left-radius:4px !important; webkit-border-bottom-right-radius:4px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-smoothness{background-position:-65px -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-smoothness{background-position:0 -16px; background-image:url(images/smoothness/ui-icons_222222_256x240.png)}\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-smoothness .jqx-icon-arrow-up-ui-smoothness{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-smoothness .jqx-icon-arrow-down-ui-smoothness{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-smoothness .jqx-icon-arrow-left-ui-smoothness{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-smoothness .jqx-icon-arrow-right-ui-smoothness{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-layout-ui-smoothness\r
+{\r
+    background-color: #aaa;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-smoothness\r
+{\r
+    background-image: url("images/pin-black.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-smoothness\r
+{\r
+    background-image: url("images/pinned-black.png");\r
+}\r
+.jqx-docking-layout-group-floating .jqx-window-header-ui-smoothness\r
+{\r
+    background-image: none;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-start.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-start.css
new file mode 100644 (file)
index 0000000..d7cda4b
--- /dev/null
@@ -0,0 +1,227 @@
+.jqx-rc-tl-ui-start{border-top-left-radius:5px; moz-border-radius-topleft:5px; webkit-border-top-left-radius:5px}\r
+.jqx-rc-tr-ui-start{border-top-right-radius:5px; moz-border-radius-topright:5px; webkit-border-top-right-radius:5px}\r
+.jqx-rc-bl-ui-start{border-bottom-left-radius:5px; moz-border-radius-bottomleft:5px; webkit-border-bottom-left-radius:5px}\r
+.jqx-rc-br-ui-start{border-bottom-right-radius:5px; moz-border-radius-bottomright:5px; webkit-border-bottom-right-radius:5px}\r
+.jqx-rc-t-ui-start{border-top-left-radius:5px; border-top-right-radius:5px; moz-border-radius-topleft:5px; moz-border-radius-topright:5px; webkit-border-top-left-radius:5px; webkit-border-top-right-radius:5px}\r
+.jqx-rc-b-ui-start{border-bottom-left-radius:5px; border-bottom-right-radius:5px; moz-border-radius-bottomleft:5px; moz-border-radius-bottomright:5px; webkit-border-bottom-left-radius:5px; webkit-border-bottom-right-radius:5px}\r
+.jqx-rc-r-ui-start{border-bottom-right-radius:5px; border-top-right-radius:5px; moz-border-radius-bottomright:5px; moz-border-radius-topright:5px; webkit-border-bottom-right-radius:5px; webkit-border-top-right-radius:5px}\r
+.jqx-rc-l-ui-start{border-bottom-left-radius:5px; border-top-left-radius:5px; moz-border-radius-bottomleft:5px; moz-border-radius-topleft:5px; webkit-border-bottom-left-radius:5px; webkit-border-top-left-radius:5px}\r
+.jqx-rc-all-ui-start{border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px}\r
+/*Grid*/\r
+.jqx-grid-column-sortascbutton-ui-start{background-position:-96px -192px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png);position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortdescbutton-ui-start{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-64px -192px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-grid-column-menubutton-ui-start{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png); border-width:0px}\r
+.jqx-grid-cell-sort-ui-start, .jqx-grid-cell-filter-ui-start, .jqx-grid-cell-pinned-ui-start{background: #ecf2f2; color: #1482b4;} \r
+.jqx-grid-cell-sort-alt-ui-start, .jqx-grid-cell-filter-alt-ui-start, .jqx-grid-cell-alt-ui-start{background: #ecf2f2;}\r
+/*Tree*/\r
+.jqx-tree-item-arrow-expand-ui-start, .jqx-tree-item-arrow-expand-hover-ui-start{background-position:-65px -16px; background-image:url(images/start/ui-icons_222222_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-start, .jqx-tree-item-arrow-collapse-hover-ui-start{background-position:-32px -16px; background-image:url(images/start/ui-icons_222222_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-start, .jqx-menu-item-arrow-right-selected-ui-start{background-position:-32px -16px; background-image:url(images/start/ui-icons_222222_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-start, .jqx-menu-item-arrow-left-selected-ui-start, .jqx-tree-item-arrow-collapse-rtl-ui-start, .jqx-tree-item-arrow-collapse-hover-rtl-ui-start{background-position:-96px -16px; background-image:url(images/start/ui-icons_222222_256x240.png)}\r
+/*Tabs*/\r
+.jqx-tabs-title-ui-start{border-color:#77d5f7; border-bottom-color: transparent; background: #0078ae url(images/start/ui-bg_glass_45_0078ae_1x400.png) 50% 50% repeat-x;}\r
+.jqx-tabs-header-ui-start{border-width: 1px; padding-bottom: 0px; margin:2px; border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px}\r
+.jqx-tabs-title-bottom-ui-start{border-bottom-color:#77d5f7; border-top-color: transparent;}\r
+.jqx-tabs-header-bottom-ui-start{margin-top:-2px !important; padding-bottom: 3px; padding-top:1px}\r
+/*Radio Button*/\r
+.jqx-radiobutton-ui-start .jqx-fill-state-pressed-ui-start{background:#fdfefe; border:1px solid #fdfefe}\r
+/*Calendar*/\r
+.jqx-calendar-cell-ui-start{font-size: 11px; color: #fff; border-color: #77d5f7; background: #0078ae url(images/start/ui-bg_glass_45_0078ae_1x400.png) 50% 50% repeat-x; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-start{background:#ffe45c url(images/start/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-start{border: 1px solid #77d5f7; border-bottom-width: 0px; border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px; font-weight: bold;}\r
+.jqx-calendar-month-container-ui-start{border:none !important}\r
+.jqx-calendar-ui-start{padding:2px}\r
+.jqx-calendar-column-cell-ui-start{font-size: 11px; font-weight: bold;}\r
+.jqx-calendar-ui-start .jqx-icon-arrow-left-ui-start{background-image:url(images/start/ui-icons_d8e7f3_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-start .jqx-icon-arrow-right-ui-start{background-image:url(images/start/ui-icons_d8e7f3_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+\r
+/*Icons*/\r
+.jqx-icon-arrow-up-ui-start{background-position:0 -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-icon-arrow-down-ui-start{background-position:-65px -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-icon-arrow-left-ui-start{background-position:-96px -17px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-icon-arrow-right-ui-start{background-position:-32px -17px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-start{background-position:0 -16px; background-image:url(images/start/ui-icons_0078ae_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-start{background-position:-65px -16px; background-image:url(images/start/ui-icons_0078ae_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-start{background-position:-96px -17px; background-image:url(images/start/ui-icons_fcd113_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-start{background-position:-32px -17px; background-image:url(images/start/ui-icons_fcd113_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-start{background-position:0 -16px; background-image:url(images/start/ui-icons_fcd113_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-start{background-position:-65px -16px; background-image:url(images/start/ui-icons_fcd113_256x240.png)}\r
+.jqx-icon-close-ui-start{background-image:url(images/start/ui-icons_d8e7f3_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-start{background-image:url(images/start/ui-icons_0078ae_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+/*Window*/\r
+.jqx-window-ui-start{padding: 2px;}\r
+.jqx-window-header-ui-start{border: 1px solid #77d5f7; font-weight: bold; font-size: 11px; moz-border-radius:5px; border-radius:5px; webkit-border-radius:5px}\r
+.jqx-window-content-ui-start{border-width:0px !important}\r
+.jqx-window-close-button-ui-start{background-position:-96px -128px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png);moz-border-radius:5px; border-radius:5px; webkit-border-radius:5px}\r
+.jqx-window-collapse-button-ui-start{background-position:0 -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-start{background-image:url(images/start/ui-icons_d8e7f3_256x240.png); background-color:#fff; border-radius:5px; moz-border-radius:5px; webkit-border-radius:5px}\r
+.jqx-window-collapse-button-collapsed-ui-start, .jqx-window-collapse-button-collapsed-hover-ui-start{background-position:-65px -16px}\r
+.jqx-window-modal-ui-start{}\r
+.jqx-window-close-button-hover-ui-start{background-color:#fff; background-position:-96px -128px; background-image:url(images/start/ui-icons_056b93_256x240.png); cursor:pointer; width:16px; height:16px}\r
+\r
+/*Common Settings*/\r
+.jqx-widget-ui-start{ border-color: #a6c9e2; font-size:12px; font-style:normal;}\r
+.jqx-widget-content-ui-start{border-color: #a6c9e2; background: #fcfdfd url(images/start/ui-bg_inset-hard_100_fcfdfd_1x100.png) 50% bottom repeat-x; color: #222222;}\r
+.jqx-widget-content-ui-start a{color:#222}\r
+.jqx-widget-header-ui-start{ border-color: #4297d7; background: #2191c0 url(images/start/ui-bg_gloss-wave_75_2191c0_500x100.png) 50% 50% repeat-x; color: #eaf5f7; font-size:12px}\r
+.jqx-widget-header-ui-start a{color:#eaf5f7}\r
+.jqx-fill-state-normal-ui-start{border-color: #77d5f7; background: #0078ae url(images/start/ui-bg_glass_45_0078ae_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff;}\r
+.jqx-fill-state-normal-ui-start a, .jqx-fill-state-normal-ui-start a:link, .jqx-fill-state-normal-ui-start a:visited{color:#ffffff; text-decoration:none}\r
+.jqx-fill-state-hover-ui-start{border-color: #448dae; background: #79c9ec url(images/start/ui-bg_glass_75_79c9ec_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #026890;}\r
+.jqx-fill-state-hover-ui-start a, .jqx-fill-state-hover-ui-start a:hover{color:#026890; text-decoration:none}\r
+.jqx-fill-state-pressed-ui-start{border-color: #acdd4a; background: #6eac2c url(images/start/ui-bg_gloss-wave_50_6eac2c_500x100.png) 50% 50% repeat-x; font-weight: normal; color: #ffffff;  }\r
+.jqx-fill-state-pressed-ui-start a, .jqx-fill-state-pressed-ui-start a:link, .jqx-fill-state-pressed-ui-start a:visited{color:#ffffff; text-decoration:none}\r
+\r
+.jqx-input-button-content-ui-start{font-size:10px}\r
+.jqx-input-icon-ui-start{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-start{margin-top:0px; background-position:-65px -147px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+/*Progress Bar*/\r
+.jqx-progressbar-ui-start .jqx-fill-state-pressed-ui-start{background: #7bbdd9; border-bottom: none;}\r
+.jqx-progressbar-value-vertical-ui-start{background: #7bbdd9; border-right: none; border-bottom: 1px solid #77d5f7;}\r
+/*ScrollBar */\r
+.jqx-scrollbar-thumb-state-normal-ui-start, .jqx-scrollbar-thumb-state-normal-horizontal-ui-start{ border: 1px solid #77d5f7; background: #1482b4;}\r
+.jqx-scrollbar-thumb-state-hover-ui-start, .jqx-scrollbar-thumb-state-hover-horizontal-ui-start{ background: #46a3ca;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-start, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-start{border: 1px solid #acdd4a; background: #6eac2c;}\r
+\r
+/*Tabs */\r
+.jqx-tabs-title-ui-start\r
+{\r
+}\r
+.jqx-tabs-selection-tracker-top-ui-start\r
+{\r
+   background: #7cb441;\r
+   border-bottom: 0px solid transparent;\r
+}\r
+.jqx-tabs-selection-tracker-bottom-ui-start\r
+{\r
+   background: #7cb441;\r
+   border-top: 0px solid transparent;\r
+}\r
+.jqx-tabs-title-selected-top-ui-start\r
+{\r
+    padding-bottom: 5px;\r
+    border-bottom: 0px solid #7cb441;\r
+}\r
+.jqx-tabs-title-selected-bottom-ui-start\r
+{\r
+    border-top: 0px solid #7cb441;\r
+}\r
+\r
+/*Slider*/\r
+.jqx-slider-track-ui-start{border: 1px solid #77d5f7; background: #fdfefe}\r
+.jqx-slider-rangebar\r
+{\r
+    background: #7bbdd9;\r
+} \r
+\r
+/*Grid*/\r
+.jqx-grid-bottomright-ui-start, .jqx-panel-bottomright-ui-start, .jqx-listbox-bottomright-ui-start, .jqx-scrollbar-state-normal-ui-start{background: #7bbdd9;}\r
+.jqx-widget-ui-start .jqx-grid-column-header-ui-start, .jqx-grid-cell-ui-start, .jqx-widget-ui-start .jqx-grid-cell-ui-start, .jqx-widget-ui-start .jqx-grid-group-cell-ui-start, .jqx-grid-group-cell-ui-start{border-color:#77d5f7}\r
+.jqx-grid-group-expand-ui-start{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-down.png);}\r
+.jqx-grid-group-collapse-ui-start{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-right.png);}\r
+/*Menu*/\r
+.jqx-menu-dropdown-ui-start\r
+{\r
+    -moz-border-radius-bottomleft: 5px;\r
+    -webkit-border-bottom-left-radius: 5px;\r
+    border-bottom-left-radius: 5px;\r
+    -moz-border-radius-topright: 5px;\r
+    -webkit-border-top-right-radius: 5px;\r
+    border-top-right-radius: 5px;\r
+    -moz-border-radius-bottomright: 5px;\r
+    -webkit-border-bottom-right-radius: 5px;\r
+    border-bottom-right-radius: 5px;\r
+    right: -1px;\r
+}\r
+/*Navigation Bar*/\r
+.jqx-navigationbar-ui-start{overflow: inherit;}\r
+.jqx-expander-header-ui-start{margin-bottom:2px; margin-top:2px}\r
+.jqx-expander-header-ui-start{ background: #0078ae url(images/start/ui-bg_glass_45_0078ae_1x400.png) 50% 50% repeat-x; border:1px solid #77d5f7; border-radius:5px !important; moz-border-radius:5px !important; webkit-border-radius:5px !important}\r
+.jqx-expander-header-hover-ui-start{background: #79c9ec url(images/start/ui-bg_glass_75_79c9ec_1x400.png) 50% 50% repeat-x; border:1px solid #448dae;}\r
+.jqx-expander-header-expanded-ui-start{background: #6eac2c url(images/start/ui-bg_gloss-wave_50_6eac2c_500x100.png) 50% 50% repeat-x; border:1px solid #acdd4a; border-bottom-width:0px; border-top-left-radius:5px !important; border-top-right-radius:5px !important; moz-border-radius-topleft:5px !important; moz-border-radius-topright:5px !important; webkit-border-top-left-radius:5px !important; webkit-border-top-right-radius:5px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-start{border-bottom-left-radius:5px !important; border-bottom-right-radius:5px !important; moz-border-radius-bottomleft:5px !important; moz-border-radius-bottomright:5px !important; webkit-border-bottom-left-radius:5px !important; webkit-border-bottom-right-radius:5px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-start{width: 16px; height: 16px; position: relative; background-position:-65px -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png);}\r
+.jqx-expander-arrow-bottom-ui-start{width: 16px; height: 16px; position: relative; background-position:0 -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png);}\r
+.jqx-tabs-arrow-right-ui-start{background-position:-32px -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+.jqx-tabs-arrow-left-ui-start{background-position:-96px -16px; background-image:url(images/start/ui-icons_d8e7f3_256x240.png)}\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-start .jqx-icon-arrow-up-ui-start{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-start .jqx-icon-arrow-down-ui-start{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-start .jqx-icon-arrow-left-ui-start{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-start .jqx-icon-arrow-right-ui-start{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-icon-arrow-first-ui-start\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-ui-start\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-selected-ui-start>.jqx-grid-group-expand-ui-start,\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-hover-ui-start>.jqx-grid-group-expand-ui-start {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-selected-ui-start>.jqx-grid-group-collapse-ui-start,\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-hover-ui-start>.jqx-grid-group-collapse-ui-start {\r
+    background-image: url('images/icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-selected-ui-start>.jqx-grid-group-collapse-rtl-ui-start,\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-hover-ui-start>.jqx-grid-group-collapse-rtl-ui-start {\r
+    background-image: url('images/icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-selected-ui-start>.jqx-grid-group-expand-rtl-ui-start,\r
+.jqx-grid-cell-ui-start.jqx-grid-cell-hover-ui-start>.jqx-grid-group-expand-rtl-ui-start {\r
+    background-image: url('images/icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-search-ui-start\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-ui-start, .jqx-icon-calendar-hover-ui-start, .jqx-icon-calendar-pressed-ui-start {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-ui-start, .jqx-icon-time-hover-ui-start, .jqx-icon-time-pressed-ui-start {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-ui-start {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-layout-ui-start\r
+{\r
+    background-color: #4297d7;\r
+    background-image: none;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-start\r
+{\r
+    background-image: url("images/pin-lightblue.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-start\r
+{\r
+    background-image: url("images/pinned-lightblue.png");\r
+}\r
+.jqx-scheduler-month-cell-ui-start, .jqx-scheduler-time-column-ui-start, .jqx-scheduler-toolbar-ui-start\r
+{\r
+    background: #4297d7 !important;\r
+    color: #fff  !important;\r
+}\r
+.jqx-widget-ui-start .jqx-scheduler-middle-cell-ui-start, .jqx-scheduler-middle-cell-ui-start {\r
+    border-bottom-color: #4297d7 !important;\r
+}\r
+.jqx-docking-layout-group-floating-ui-start .jqx-window-header-ui-start\r
+{\r
+    background-image: none;\r
+}\r
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-sunny.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.ui-sunny.css
new file mode 100644 (file)
index 0000000..af9f487
--- /dev/null
@@ -0,0 +1,166 @@
+.jqx-rc-tl-ui-sunny{border-top-left-radius:8px; moz-border-radius-topleft:8px; webkit-border-top-left-radius:8px}\r
+.jqx-rc-tr-ui-sunny{border-top-right-radius:8px; moz-border-radius-topright:8px; webkit-border-top-right-radius:8px}\r
+.jqx-rc-bl-ui-sunny{border-bottom-left-radius:8px; moz-border-radius-bottomleft:8px; webkit-border-bottom-left-radius:8px}\r
+.jqx-rc-br-ui-sunny{border-bottom-right-radius:8px; moz-border-radius-bottomright:8px; webkit-border-bottom-right-radius:8px}\r
+.jqx-rc-t-ui-sunny{border-top-left-radius:8px; border-top-right-radius:8px; moz-border-radius-topleft:8px; moz-border-radius-topright:8px; webkit-border-top-left-radius:8px; webkit-border-top-right-radius:8px}\r
+.jqx-rc-b-ui-sunny{border-bottom-left-radius:8px; border-bottom-right-radius:8px; moz-border-radius-bottomleft:8px; moz-border-radius-bottomright:8px; webkit-border-bottom-left-radius:8px; webkit-border-bottom-right-radius:8px}\r
+.jqx-rc-r-ui-sunny{border-bottom-right-radius:8px; border-top-right-radius:8px; moz-border-radius-bottomright:8px; moz-border-radius-topright:8px; webkit-border-bottom-right-radius:8px; webkit-border-top-right-radius:8px}\r
+.jqx-rc-l-ui-sunny{border-bottom-left-radius:8px; border-top-left-radius:8px; moz-border-radius-bottomleft:8px; moz-border-radius-topleft:8px; webkit-border-bottom-left-radius:8px; webkit-border-top-left-radius:8px}\r
+.jqx-rc-all-ui-sunny{border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px}\r
+/*Grid*/\r
+.jqx-grid-column-sortascbutton-ui-sunny{background-position:-96px -192px; background-image:url(images/sunny/ui-icons_fadc7a_256x240.png); position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px;}\r
+.jqx-grid-column-sortdescbutton-ui-sunny{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -192px; background-image:url(images/sunny/ui-icons_fadc7a_256x240.png)}\r
+.jqx-grid-column-menubutton-ui-sunny{position: relative; max-height: 16px; height: 16px !important; top:50%; margin-top:-8px; background-position:-65px -192px; background-image:url(images/sunny/ui-icons_ffe180_256x240.png); border-width:0px}\r
+/*Tree*/\r
+.jqx-tree-item-arrow-expand-ui-sunny, .jqx-tree-item-arrow-expand-hover-ui-sunny{background-position:-65px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-tree-item-arrow-collapse-ui-sunny, .jqx-tree-item-arrow-collapse-hover-ui-sunny{background-position:-32px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-menu-item-arrow-right-ui-sunny, .jqx-menu-item-arrow-right-selected-ui-sunny{background-position:-32px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-menu-item-arrow-left-ui-sunny, .jqx-menu-item-arrow-left-selected-ui-sunny, .jqx-tree-item-arrow-collapse-rtl-ui-sunny, .jqx-tree-item-arrow-collapse-hover-rtl-ui-sunny{background-position:-96px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+/*Tabs*/\r
+.jqx-tabs-title-ui-sunny{font-weight: bold; border-color: #d19405; border-bottom-color: transparent; background: #fece2f url(images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x;color: #4c3000; }\r
+.jqx-tabs-title-bottom-ui-sunny{border-bottom-color:#d19405; border-top-color: transparent;}\r
+.jqx-tabs-header-ui-sunny{border-width: 1px; margin:2px; border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px}\r
+.jqx-tabs-header-bottom-ui-sunny{margin-top:-2px !important; padding-bottom: 3px; padding-top:1px}\r
+/*Radio Button*/\r
+.jqx-radiobutton-ui-sunny .jqx-fill-state-pressed-ui-sunny{background:#222; border:1px solid #000}\r
+/*Calendar*/\r
+.jqx-calendar-cell-ui-sunny{font-size: 11px; border-color: #d19405; background: #fece2f url(images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x; color: #4c3000; padding:.2em; text-align:right; text-decoration:none; moz-border-radius:0px !important; webkit-border-radius:0px !important; border-radius:0px !important}\r
+.jqx-calendar-cell-today-ui-sunny{background:#ffe45c; border:1px solid #fed22f; color:#363636}\r
+.jqx-calendar-title-container-ui-sunny{border: 1px solid #aaa; border-bottom-width: 0px; border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px; font-weight: bold;}\r
+.jqx-calendar-month-container-ui-sunny{border:none !important}\r
+.jqx-calendar-ui-sunny{padding:2px}\r
+.jqx-calendar-column-cell-ui-sunny{font-size: 11px; font-weight: bold;}\r
+.jqx-calendar-ui-sunny .jqx-icon-arrow-left-ui-sunny{background-image:url(images/sunny/ui-icons_fadc7a_256x240.png); background-position: -80px -192px; width:16px; height:16px; left:5px; position:relative}\r
+.jqx-calendar-ui-sunny .jqx-icon-arrow-right-ui-sunny{background-image:url(images/sunny/ui-icons_fadc7a_256x240.png); background-position: -48px -192px; width:16px; height:16px; right:5px; position:relative}\r
+\r
+/*Icons*/\r
+.jqx-icon-arrow-up-ui-sunny{background-position:0 -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-down-ui-sunny{background-position:-65px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-left-ui-sunny{background-position:-96px -17px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-right-ui-sunny{background-position:-32px -17px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-up-hover-ui-sunny{background-position:0 -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-down-hover-ui-sunny{background-position:-65px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-sunny{background-position:-96px -17px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-sunny{background-position:-32px -17px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-up-selected-ui-sunny{background-position:0 -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-down-selected-ui-sunny{background-position:-65px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-left-selected-ui-sunny{background-position:-96px -17px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-arrow-right-selected-ui-sunny{background-position:-32px -17px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-icon-close-ui-sunny{background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+.jqx-icon-close-hover-ui-sunny{background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png); background-position:-80px -128px; cursor:pointer}\r
+/*Window*/\r
+.jqx-window-ui-sunny{padding: 2px;}\r
+.jqx-window-header-ui-sunny{border: 1px solid #aaa; font-weight: bold; font-size: 11px; moz-border-radius:8px; border-radius:8px; webkit-border-radius:8px}\r
+.jqx-window-content-ui-sunny{border-width:0px !important}\r
+.jqx-window-close-button-ui-sunny{background-position:-96px -128px; background-image:url(images/sunny/ui-icons_fadc7a_256x240.png);moz-border-radius:8px; border-radius:8px; webkit-border-radius:8px}\r
+.jqx-window-collapse-button-ui-sunny{background-position:0 -16px; background-image:url(images/sunny/ui-icons_fadc7a_256x240.png)}\r
+.jqx-window-collapse-button-hover-ui-sunny{background-image:url(images/sunny/ui-icons_bd7b00_256x240.png); background-color:#fff; border-radius:8px; moz-border-radius:8px; webkit-border-radius:8px}\r
+.jqx-window-collapse-button-collapsed-ui-sunny, .jqx-window-collapse-button-collapsed-hover-ui-sunny{background-position:-65px -16px}\r
+.jqx-window-close-button-hover-ui-sunny{background-color:#fff; background-position:-96px -128px; background-image:url(images/sunny/ui-icons_bd7b00_256x240.png); cursor:pointer; width:16px; height:16px}\r
+\r
+/*Common Settings*/\r
+.jqx-widget-ui-sunny{font-family: Segoe UI, Arial, sans-serif; font-size:12px; font-style:normal;}\r
+.jqx-widget-content-ui-sunny{font-family: Segoe UI, Arial, sans-serif; background: #feeebd url(images/sunny/ui-bg_highlight-soft_100_feeebd_1x100.png) 50% top repeat-x; color: #383838; font-size:12px}\r
+.jqx-widget-content-ui-sunny a{color:#383838}\r
+.jqx-widget-header-ui-sunny{font-family: Segoe UI, Arial, sans-serif; border-color: #494437; background: #817865 url(images/sunny/ui-bg_gloss-wave_45_817865_500x100.png) 50% 50% repeat-x; color: #ffffff; font-size:12px}\r
+.jqx-widget-header-ui-sunny a{color:#fff}\r
+.jqx-fill-state-normal-ui-sunny{border-color: #d19405; background: #fece2f url(images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x;color: #4c3000;}\r
+.jqx-fill-state-normal-ui-sunny a, .jqx-fill-state-normal-ui-sunny a:link, .jqx-fill-state-normal-ui-sunny a:visited{color:#4c3000; text-decoration:none}\r
+.jqx-fill-state-hover-ui-sunny{border-color: #a45b13; background: #ffdd57 url(images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png) 50% 50% repeat-x; color: #381f00; }\r
+.jqx-fill-state-hover-ui-sunny a, .jqx-fill-state-hover-ui-sunny a:hover{color:#381f00; text-decoration:none}\r
+.jqx-fill-state-focus-ui-sunny {border-color: #494437;}\r
+.jqx-fill-state-pressed-ui-sunny{ border-color:#655e4e; background: #ffffff url(images/sunny/ui-bg_inset-soft_30_ffffff_1x100.png) 50% 50% repeat-x; color: #0074c7;}\r
+.jqx-fill-state-pressed-ui-sunny a, .jqx-fill-state-pressed-ui-sunny a:link, .jqx-fill-state-pressed-ui-sunny a:visited{color:#0074c7; text-decoration:none}\r
+.jqx-fill-state-disabled-ui-sunny {cursor: default; color: #000; opacity: .55; filter:Alpha(Opacity=45);}\r
+\r
+.jqx-input-button-content-ui-sunny{font-size:10px}\r
+.jqx-input-icon-ui-sunny{margin-left:2px; margin-top:-1px}\r
+.jqx-checkbox-check-checked-ui-sunny{margin-top:0px; background-position:-65px -147px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+/*Progress Bar*/\r
+.jqx-progressbar-ui-sunny .jqx-fill-state-pressed-ui-sunny{background: #9f998a; border-bottom: none;}\r
+.jqx-progressbar-value-vertical-ui-sunny{background: #9f998a; border-right: none; border-bottom: 1px solid #8e846b;}\r
+/*ScrollBar */\r
+.jqx-scrollbar-thumb-state-normal-ui-sunny, .jqx-scrollbar-thumb-state-normal-horizontal-ui-sunny{ border: 1px solid #8e846b; background: #9f998a;}\r
+.jqx-scrollbar-thumb-state-hover-ui-sunny, .jqx-scrollbar-thumb-state-hover-horizontal-ui-sunny{ background: #dadada;}\r
+.jqx-scrollbar-thumb-state-pressed-ui-sunny, .jqx-scrollbar-thumb-state-pressed-horizontal-ui-sunny{ background: #ffffff;}\r
+\r
+.jqx-tabs-title-selected-top-ui-sunny\r
+{\r
+    border-color: #aaa;\r
+    border-bottom: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's title when the tab is selected and the jqxTab's position property is set to 'bottom' .*/\r
+.jqx-tabs-title-selected-bottom-ui-sunny\r
+{\r
+    border-color: #aaa;\r
+    border-top: 1px solid #fff;\r
+    background-color: #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'top'.*/\r
+.jqx-tabs-selection-tracker-top-ui-sunny\r
+{\r
+   border-color: #aaa;\r
+   border-bottom: 1px solid #fff;\r
+}\r
+/*applied to the tab's selection tracker when the jqxTab's position property is set to 'bottom'.*/\r
+.jqx-tabs-selection-tracker-bottom-ui-sunny\r
+{\r
+   border-color: #aaa;\r
+   border-top: 1px solid #fff;\r
+}\r
+/*Slider*/\r
+.jqx-slider-ui-sunny .jqx-fill-state-pressed-ui-sunny{background:#9f998a;}\r
+.jqx-slider-track-ui-sunny{border: 1px solid #8e846b; background: #fef8e4;}\r
+/*Grid*/\r
+.jqx-grid-cell-sort-ui-sunny, .jqx-grid-cell-filter-ui-sunny, .jqx-grid-cell-pinned-ui-sunny, .jqx-grid-cell-selected-ui-sunny{background:#fef8e4;}\r
+.jqx-grid-bottomright-ui-sunny, .jqx-panel-bottomright-ui-sunny, .jqx-listbox-bottomright-ui-sunny, .jqx-scrollbar-state-normal-ui-sunny{background: #fef8e4;}\r
+.jqx-grid-group-expand-ui-sunny{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-down.png);}\r
+.jqx-grid-group-collapse-ui-sunny{background-position: 50% 50%; background-repeat: no-repeat;background-image: url(images/icon-right.png);}\r
+/*Menu*/\r
+.jqx-menu-dropdown-ui-sunny\r
+{\r
+    -moz-border-radius-bottomleft: 8px;\r
+    -webkit-border-bottom-left-radius: 8px;\r
+    border-bottom-left-radius: 8px;\r
+    -moz-border-radius-topright: 8px;\r
+    -webkit-border-top-right-radius: 8px;\r
+    border-top-right-radius: 8px;\r
+    -moz-border-radius-bottomright: 8px;\r
+    -webkit-border-bottom-right-radius: 8px;\r
+    border-bottom-right-radius: 8px;\r
+    right: -1px;\r
+}\r
+/*Navigation Bar*/\r
+.jqx-navigationbar-ui-sunny{overflow: inherit;}\r
+.jqx-expander-header-ui-sunny{font-weight: bold; margin-bottom:2px; margin-top:2px}\r
+.jqx-expander-header-ui-sunny{background: #fece2f url(images/sunny/ui-bg_gloss-wave_60_fece2f_500x100.png) 50% 50% repeat-x;color: #4c3000; border:1px solid #d19405; border-radius:8px !important; moz-border-radius:8px !important; webkit-border-radius:8px !important}\r
+.jqx-expander-header-hover-ui-sunny{border:1px solid #a45b13; background: #ffdd57 url(images/sunny/ui-bg_gloss-wave_70_ffdd57_500x100.png) 50% 50% repeat-x; color: #381f00;}\r
+.jqx-expander-header-expanded-ui-sunny{color: #0074c7; background:#fff url(images/sunny/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; border:1px solid #aaa; border-bottom-width:0px; border-top-left-radius:8px !important; border-top-right-radius:8px !important; moz-border-radius-topleft:8px !important; moz-border-radius-topright:8px !important; webkit-border-top-left-radius:8px !important; webkit-border-top-right-radius:8px !important; border-bottom-left-radius:0px !important; border-bottom-right-radius:0px !important; moz-border-radius-bottomleft:0px !important; moz-border-radius-bottomright:0px !important; webkit-border-bottom-left-radius:0px !important; webkit-border-bottom-right-radius:0px !important;  margin-bottom:0px}\r
+.jqx-expander-content-bottom-ui-sunny{border-bottom-left-radius:8px !important; border-bottom-right-radius:8px !important; moz-border-radius-bottomleft:8px !important; moz-border-radius-bottomright:8px !important; webkit-border-bottom-left-radius:8px !important; webkit-border-bottom-right-radius:8px !important; border-top-width:0px !important}\r
+.jqx-expander-arrow-top-ui-sunny{background-position:-65px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-expander-arrow-bottom-ui-sunny{background-position:0 -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-tabs-arrow-right-ui-sunny{background-position:-32px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+.jqx-tabs-arrow-left-ui-sunny{background-position:-96px -16px; background-image:url(images/sunny/ui-icons_3d3d3d_256x240.png)}\r
+/*Scroll Bar*/\r
+.jqx-scrollbar-ui-sunny .jqx-icon-arrow-up-ui-sunny{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-sunny .jqx-icon-arrow-down-ui-sunny{width: 16px; height: 16px; margin-left: auto;}\r
+.jqx-scrollbar-ui-sunny .jqx-icon-arrow-left-ui-sunny{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-scrollbar-ui-sunny .jqx-icon-arrow-right-ui-sunny{width: 16px; height: 16px; position: relative; top: 50%; margin-top: -8px;}\r
+.jqx-layout-ui-sunny\r
+{\r
+    background-color: #494437;\r
+    background-image: none;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-ui-sunny\r
+{\r
+    background-image: url("images/pin-yellow.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-ui-sunny\r
+{\r
+    background-image: url("images/pinned-yellow.png");\r
+}\r
+.jqx-docking-layout-group-floating .jqx-window-header-ui-sunny\r
+{\r
+    background-image: none;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.web.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.web.css
new file mode 100644 (file)
index 0000000..3661de2
--- /dev/null
@@ -0,0 +1,317 @@
+/*Rounded Corners*/\r
+/*top-left rounded Corners*/\r
+.jqx-rc-tl-web {\r
+    -moz-border-radius-topleft: 2px;\r
+    -webkit-border-top-left-radius: 2px;\r
+    border-top-left-radius: 2px;\r
+}\r
+/*top-right rounded Corners*/\r
+.jqx-rc-tr-web {\r
+    -moz-border-radius-topright: 2px;\r
+    -webkit-border-top-right-radius: 2px;\r
+    border-top-right-radius: 2px;\r
+}\r
+/*bottom-left rounded Corners*/\r
+.jqx-rc-bl-web {\r
+    -moz-border-radius-bottomleft: 2px;\r
+    -webkit-border-bottom-left-radius: 2px;\r
+    border-bottom-left-radius: 2px;\r
+}\r
+/*bottom-right rounded Corners*/\r
+.jqx-rc-br-web {\r
+    -moz-border-radius-bottomright: 2px;\r
+    -webkit-border-bottom-right-radius: 2px;\r
+    border-bottom-right-radius: 2px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-web {\r
+    -moz-border-radius-topleft: 2px;\r
+    -webkit-border-top-left-radius: 2px;\r
+    border-top-left-radius: 2px;\r
+    -moz-border-radius-topright: 2px;\r
+    -webkit-border-top-right-radius: 2px;\r
+    border-top-right-radius: 2px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-web {\r
+    -moz-border-radius-bottomleft: 2px;\r
+    -webkit-border-bottom-left-radius: 2px;\r
+    border-bottom-left-radius: 2px;\r
+    -moz-border-radius-bottomright: 2px;\r
+    -webkit-border-bottom-right-radius: 2px;\r
+    border-bottom-right-radius: 2px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-web {\r
+    -moz-border-radius-topright: 2px;\r
+    -webkit-border-top-right-radius: 2px;\r
+    border-top-right-radius: 2px;\r
+    -moz-border-radius-bottomright: 2px;\r
+    -webkit-border-bottom-right-radius: 2px;\r
+    border-bottom-right-radius: 2px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-web {\r
+    -moz-border-radius-topleft: 2px;\r
+    -webkit-border-top-left-radius: 2px;\r
+    border-top-left-radius: 2px;\r
+    -moz-border-radius-bottomleft: 2px;\r
+    -webkit-border-bottom-left-radius: 2px;\r
+    border-bottom-left-radius: 2px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-web {\r
+    -moz-border-radius: 2px;\r
+    -webkit-border-radius: 2px;\r
+    border-radius: 2px;\r
+}\r
+\r
+.jqx-widget-web, .jqx-widget-content, .jqx-widget-header, .jqx-input-web {\r
+    -webkit-transition: box-shadow linear 0.2s;\r
+     -moz-transition: box-shadow linear 0.2s;\r
+       -o-transition: box-shadow linear 0.2s;\r
+          transition: box-shadow linear 0.2s;\r
+}\r
+.jqx-listitem-state-normal-web, .jqx-listitem-state-hover-web,.jqx-listitem-state-selected-web,\r
+.jqx-tabs-title-selected-top-web, .jqx-tabs-title-selected-bottom-web{\r
+    -webkit-transition: none;\r
+     -moz-transition: none;\r
+       -o-transition: none;\r
+          transition: none;   \r
+}\r
+.jqx-fill-state-normal-web {\r
+  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08), inset 0 1px 2px rgba(255, 255, 255, 0.75);;\r
+  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08), inset 0 1px 2px rgba(255, 255, 255, 0.75);;\r
+  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08), inset 0 1px 2px rgba(255, 255, 255, 0.75);;\r
+}\r
+\r
+.jqx-widget-header-web, .jqx-fill-state-normal-web {\r
+    text-shadow: 0 1px 0 rgb(240, 240, 240);\r
+    border-color: #b2b2b2;\r
+    border-color: rgba(0, 0, 0, 0.25);\r
+    color: #444;\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(#ededed, #ededed 38%, #dedede);\r
+    background-image: -webkit-linear-gradient(#ededed, #ededed 38%, #dedede);\r
+    background-image: -moz-linear-gradient(#ededed, #ededed 38%, #dedede);\r
+    background-image: -o-linear-gradient(#ededed, #ededed 38%, #dedede);\r
+    -webkit-transition: color 200ms;\r
+}\r
+.jqx-widget-content-web {\r
+    border-color: #b2b2b2;\r
+    border-color: rgba(0, 0, 0, 0.25);\r
+}\r
+.jqx-fill-state-hover-web {\r
+    text-shadow: 0 1px 0 rgb(240, 240, 240);\r
+    border-color: #b2b2b2;\r
+    border-color: rgba(0, 0, 0, 0.3);\r
+    color: black;\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -webkit-linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -moz-linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -o-linear-gradient(#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12), inset 0 1px 2px rgba(255, 255, 255, 0.95);\r
+    -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12), inset 0 1px 2px rgba(255, 255, 255, 0.95);\r
+    -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12), inset 0 1px 2px rgba(255, 255, 255, 0.95);\r
+    -webkit-transition: color 200ms;\r
+}\r
+\r
+.jqx-fill-state-pressed-web {\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+    text-shadow: none;\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(#e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -webkit-linear-gradient(#e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -moz-linear-gradient(#e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -o-linear-gradient(#e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    -webkit-transition: color 200ms;\r
+}\r
+\r
+.jqx-grid-column-menubutton-web {\r
+    background-color: transparent;\r
+}\r
+\r
+.jqx-calendar-row-header-web, .jqx-calendar-top-left-header-web {\r
+    background-color: #f0f0f0;\r
+    border: 0px solid #f2f2f2;\r
+}\r
+\r
+.jqx-calendar-column-header-web {\r
+    background-color: #FFF;\r
+    border-top: 1px solid #FFF;\r
+    border-bottom: 1px solid #e9e9e9;\r
+}\r
+\r
+.jqx-scrollbar-state-normal-web {\r
+    background-color: #f0f0f0;\r
+    border: 1px solid #f0f0f0;\r
+}\r
+.jqx-grid-cell-hover-web {\r
+    box-shadow: none;\r
+    -webkit-box-shadow: none;\r
+    -moz-box-shadow: none;\r
+}\r
+.jqx-scrollbar-thumb-state-normal-web {\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(left, #ededed, #ededed 38%, #dedede);\r
+    background-image: -webkit-linear-gradient(left, #ededed, #ededed 38%, #dedede);\r
+    background-image: -moz-linear-gradient(left, #ededed, #ededed 38%, #dedede);\r
+    background-image: -o-linear-gradient(left, #ededed, #ededed 38%, #dedede);\r
+    background-image: -ms-linear-gradient(left, #ededed, #ededed 38%, #dedede);\r
+}\r
+\r
+.jqx-scrollbar-thumb-state-hover-web {\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(left,#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -webkit-linear-gradient(left,#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -moz-linear-gradient(left,#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -o-linear-gradient(left,#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+    background-image: -ms-linear-gradient(left,#f0f0f0, #f0f0f0 38%, #e0e0e0);\r
+}\r
+.jqx-splitter-collapse-button-vertical-web, .jqx-splitter-collapse-button-horizontal-web {\r
+    background: #b2b2b2;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-web, .jqx-progressbar-value-vertical-web{\r
+    background-color: #f0f0f0;\r
+    background-image: linear-gradient(left, #e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -webkit-linear-gradient(left, #e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -moz-linear-gradient(left, #e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -o-linear-gradient(left, #e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+    background-image: -ms-linear-gradient(left, #e7e7e7, #e7e7e7 38%, #d7d7d7);\r
+}\r
+\r
+.jqx-grid-column-sortdescbutton-web, jqx-grid-column-filterbutton-web, .jqx-grid-column-sortascbutton-web {\r
+    background-color: transparent;\r
+    border-style: solid;\r
+    border-width: 0px 0px 0px 0px;\r
+    border-color: #b2b2b2;\r
+}\r
+.jqx-slider-rangebar-web {\r
+    background: #C3C3C3;\r
+}\r
+.jqx-menu-vertical-web {\r
+    background: #f5f5f5;\r
+    filter: none;\r
+}\r
+\r
+.jqx-checkbox-check-checked-web {\r
+    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAAcklEQVQY02NgwA/YoJgoEA/Es4DYgJBCJSBeD8SboRinBiYg7kZS2IosyQ/Eakh8LySFq4FYHFlxGRBvBOJYqMRqJMU+yApNkSRAeC0Sux3dfSCTetE0wKyXxOWhMKhTYIr9CAUXyJMzgLgBagBBgDPGAI2LGdNt0T1AAAAAAElFTkSuQmCC');\r
+}\r
+\r
+.jqx-combobox-content-web, .jqx-input-web {\r
+    border-color: #b2b2b2;\r
+    box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);\r
+    -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);\r
+    -moz-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);\r
+}\r
+.jqx-combobox-content-web {\r
+    border-color: #b2b2b2;\r
+    border-color: rgba(0, 0, 0, 0.25);\r
+ }\r
+.jqx-fill-state-focus-web, .jqx-combobox-content-focus-web, .jqx-numberinput-focus-web {\r
+    outline: none;\r
+    border-color: #777777;\r
+}\r
+.jqx-dropdownbutton-popup-web.jqx-fill-state-focus-web {\r
+   \r
+}\r
+.jqx-grid-bottomright-web, .jqx-panel-bottomright-web, .jqx-listbox-bottomright-web {\r
+    background-color: #efefef;\r
+}\r
+\r
+.jqx-tabs-title-selected-top-web, .jqx-tabs-selection-tracker-top-web {\r
+    border-color: #b2b2b2;\r
+    border-bottom: 1px solid #fff;\r
+    text-shadow: 0 1px 0 #f2f2f2;\r
+    filter: none;\r
+    color: #222;\r
+    background: #fff;\r
+}\r
+\r
+.jqx-tabs-title-selected-bottom-web, .jqx-tabs-selection-tracker-bottom-web {\r
+    border-color: #b2b2b2;\r
+    border-top: 1px solid #fff;\r
+    text-shadow: 0 1px 0 #f2f2f2;\r
+    filter: none;\r
+    color: #222;\r
+    background: #fff;\r
+}\r
+\r
+.jqx-popup-web {\r
+  -webkit-box-shadow: 4px 4px 23px rgba(0, 0, 0, 0.15);\r
+  -moz-box-shadow: 4px 4px 23px rgba(0, 0, 0, 0.15);\r
+  box-shadow: 4px 4px 23px rgba(0, 0, 0, 0.15);\r
+}\r
+.jqx-menu-popup-web>div:first-child{\r
+    padding-bottom: 15px !important;\r
+    padding-right: 15px !important;\r
+}\r
+.jqx-menu-popup-clear-web>div:first-child{\r
+    padding-bottom: 0px !important;\r
+}\r
+.jqx-window-web, .jqx-tooltip-web {\r
+  -webkit-box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);\r
+  -moz-box-shadow:  0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);\r
+  box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);\r
+}\r
+.jqx-docking-web .jqx-window-web {\r
+  -webkit-box-shadow: none;\r
+  -moz-box-shadow: none;\r
+}\r
+.jqx-docking-panel-web .jqx-window-web {\r
+  -webkit-box-shadow: none;\r
+  -moz-box-shadow: none;\r
+  box-shadow: none;\r
+}\r
+.jqx-radiobutton-web {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+    background: none;\r
+}\r
+.jqx-radiobutton-web-web, .jqx-radiobutton-hover-web {\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-radiobutton-check-checked-web {\r
+    filter: none;\r
+    background: #666;\r
+    background-repeat: no-repeat;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+.jqx-radiobutton-check-indeterminate-web {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+.jqx-radiobutton-check-indeterminate-disabled-web {\r
+    filter: none;\r
+    background: #999;\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%;\r
+}\r
+.jqx-slider-track-horizontal-web, .jqx-slider-track-vertical-web {\r
+    border-color: #b2b2b2;\r
+    background: #f0f0f0;\r
+}\r
+.jqx-slider-button-web\r
+{\r
+    -moz-border-radius: 100%;\r
+    -webkit-border-radius: 100%;\r
+    border-radius: 100%; \r
+}\r
+.jqx-layout-web\r
+{\r
+    background-color: #b2b2b2;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.windowsphone.css b/wrt/wrt_support/sample/launcher/jqwidgets/styles/jqx.windowsphone.css
new file mode 100644 (file)
index 0000000..0a1b036
--- /dev/null
@@ -0,0 +1,496 @@
+.jqx-rc-tl-windowsphone\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+}\r
+.jqx-rc-tr-windowsphone\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+.jqx-rc-bl-windowsphone\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+.jqx-rc-br-windowsphone\r
+{\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*top rounded Corners*/\r
+.jqx-rc-t-windowsphone\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+}\r
+/*bottom rounded Corners*/\r
+.jqx-rc-b-windowsphone\r
+{\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*right rounded Corners*/\r
+.jqx-rc-r-windowsphone\r
+{\r
+    -moz-border-radius-topright: 0px;\r
+    -webkit-border-top-right-radius: 0px;\r
+    border-top-right-radius: 0px;\r
+    -moz-border-radius-bottomright: 0px;\r
+    -webkit-border-bottom-right-radius: 0px;\r
+    border-bottom-right-radius: 0px;\r
+}\r
+/*left rounded Corners*/\r
+.jqx-rc-l-windowsphone\r
+{\r
+    -moz-border-radius-topleft: 0px;\r
+    -webkit-border-top-left-radius: 0px;\r
+    border-top-left-radius: 0px;\r
+    -moz-border-radius-bottomleft: 0px;\r
+    -webkit-border-bottom-left-radius: 0px;\r
+    border-bottom-left-radius: 0px;\r
+}\r
+/*all rounded Corners*/\r
+.jqx-rc-all-windowsphone\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+}\r
+.jqx-widget-windowsphone {\r
+    font-size: 16px; \r
+    font-family: 'Segoe WP', 'segoe ui', arial, sans-serif;\r
+    color: inherit;\r
+}\r
+.jqx-widget-content-windowsphone{font-size: 16px; font-family: 'Segoe WP', 'segoe ui', arial, sans-serif; border-color: #2F2F2F; color: #ffffff; background-color: #000;}\r
+input[type=text].jqx-input-windowsphone, input[type=password].jqx-input-windowsphone, .jqx-input-group-addon-windowsphone{\r
+   font-size: 16px; \r
+   font-family: 'Segoe WP', 'segoe ui', arial, sans-serif;\r
+   background: #BEBEBE;\r
+   border-color: #D2D2D2;\r
+   color: #000;\r
+ }\r
+.jqx-widget-header-windowsphone{font-size: 16px;  font-family: 'Segoe WP', 'segoe ui', arial, sans-serif; color: #ffffff; border-color:#35353A; background-color:#3E3E42;}\r
+.jqx-fill-state-normal-windowsphone, .jqx-fill-state-hover-windowsphone{font-size: 16px; font-family: 'Segoe WP', 'segoe ui', arial, sans-serif; border-color: #35353A; color: #ffffff; background: #3E3E42;}\r
+.jqx-combobox-arrow-normal-windowsphone {\r
+  background: #BEBEBE;\r
+  border-color: #BEBEBE;\r
+}\r
+.jqx-dropdownlist-state-normal-windowsphone {\r
+   background: #BEBEBE;\r
+   border-color: #D2D2D2;\r
+   color: #000;\r
+}\r
+.jqx-listbox-windowsphone, .jqx-listmenu-windowsphone, .jqx-listmenu-item-windowsphone, .jqx-calendar-windowsphone .jqx-widget-content-windowsphone {\r
+    background: #000;\r
+}\r
+\r
+.jqx-fill-state-focus-windowsphone { border-color: #2F2F2F; }\r
+.jqx-button-windowsphone {\r
+   padding: 10px 7px;\r
+   border: 2px solid #fff; \r
+   background-color: #000;\r
+}\r
+.jqx-buttongroup-windowsphone .jqx-button-windowsphone {\r
+   border: 1px solid #fff; \r
+}\r
+.jqx-listmenu-header-windowsphone .jqx-button-windowsphone, .jqx-grid-pager-windowsphone .jqx-button-windowsphone {\r
+    background-color:#3E3E42;\r
+    border: 1px solid #35353A;\r
+}\r
+.jqx-fill-state-pressed-windowsphone{border-color:#008a00; color: #fff; background-color:#008a00;}\r
+.jqx-listmenu-header-windowsphone .jqx-button-windowsphone.jqx-fill-state-pressed-windowsphone {\r
+border-color:#008a00; color: #fff; background-color:#008a00;\r
+}\r
+\r
+.jqx-fill-state-disabled-windowsphone {\r
+    color: #898989;\r
+}\r
+.jqx-combobox-windowsphone {\r
+   border-color: #D2D2D2;\r
+ }\r
+.jqx-input-windowsphone, .jqx-datetimeinput-content-windowsphone, .jqx-input-content-windowsphone, .jqx-combobox-content-windowsphone, .jqx-combobox-input-windowsphone{\r
+   font-size: 16px; \r
+   font-family: 'Segoe WP', 'segoe ui', arial, sans-serif;\r
+   background: #BEBEBE;\r
+   border-color: #D2D2D2;\r
+   color: #000;\r
+}\r
+.jqx-combobox-content-windowsphone {\r
+    border-right-color: #BEBEBE;\r
+}\r
+.jqx-combobox-content-rtl-windowsphone {\r
+    border-left-color: #BEBEBE;\r
+}\r
+\r
+.jqx-dropdownlist-state-normal-windowsphone .jqx-icon-arrow-down-windowsphone {\r
+    background-image: url('images/metro-icon-down.png');\r
+}\r
+.jqx-dropdownlist-state-selected-windowsphone .jqx-icon-arrow-down-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-combobox-state-focus-windowsphone .jqx-combobox-arrow-normal-windowsphone .jqx-icon-arrow-down-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-combobox-state-focus-windowsphone, .jqx-combobox-state-focus-windowsphone .jqx-combobox-content-windowsphone, .jqx-combobox-state-focus-windowsphone .jqx-combobox-input-windowsphone,\r
+.jqx-combobox-state-focus-windowsphone .jqx-combobox-arrow-normal-windowsphone\r
+{\r
+    background-color:#008a00;\r
+    border-color: #008a00;\r
+    color: #fff;\r
+}\r
+.jqx-combobox-multi-item-windowsphone {\r
+    background-color:#008a00;\r
+    padding: 7px;\r
+    border-color: #008a00;\r
+}\r
+.jqx-combobox-multi-item-windowsphone a:link {\r
+    margin-top: -2px;\r
+}\r
+.jqx-numberinput-windowsphone {\r
+    border-color: #000;\r
+}\r
+.jqx-scrollbar-state-normal-windowsphone, .jqx-grid-bottomright-windowsphone, .jqx-panel-bottomright-windowsphone, .jqx-listbox-bottomright-windowsphone{background-color:#3E3E42;}\r
+.jqx-widget-windowsphone .jqx-grid-column-header-windowsphone, .jqx-grid-cell-windowsphone, .jqx-widget-windowsphone .jqx-grid-cell-windowsphone, .jqx-widget-windowsphone .jqx-grid-group-cell-windowsphone, .jqx-grid-group-cell-windowsphone{font-size: 16px;  font-family: 'segoe ui', arial, sans-serif; border-color: #1C1C1E; background-color: #000; color: #fff;}\r
+.jqx-tabs-title-selected-bottom-windowsphone, .jqx-tabs-selection-tracker-bottom-windowsphone, .jqx-tabs-title-selected-top-windowsphone, .jqx-tabs-selection-tracker-top-windowsphone{color: #ffffff; border-color:#35353A; border-bottom:1px solid #252526; background:#008a00}\r
+.jqx-widget-windowsphone .jqx-grid-cell-alt-windowsphone, .jqx-widget-windowsphone .jqx-grid-cell-sort-windowsphone, .jqx-widget-windowsphone .jqx-grid-cell-pinned-windowsphone, .jqx-widget-windowsphone .jqx-grid-cell-filter-windowsphone, .jqx-grid-cell-sort-alt-windowsphone, .jqx-grid-cell-filter-alt-windowsphone, .jqx-grid-cell-pinned-windowsphone, .jqx-grid-cell-alt-windowsphone, .jqx-grid-cell-sort-windowsphone{ background-color:#3E3E42; color: #fff;}\r
+.jqx-menu-vertical-windowsphone{}\r
+.jqx-widget-windowsphone .jqx-grid-cell-windowsphone, .jqx-widget-windowsphone .jqx-grid-column-header-windowsphone, .jqx-widget-windowsphone .jqx-grid-group-cell-windowsphone { border-color: #35353A;}\r
+\r
+.jqx-widget-windowsphone .jqx-grid-column-menubutton-windowsphone, .jqx-widget-windowsphone .jqx-grid-column-sortascbutton-windowsphone, .jqx-widget-windowsphone .jqx-grid-column-sortdescbutton-windowsphone, .jqx-widget-windowsphone .jqx-grid-column-filterbutton-windowsphone {\r
+    background-color: transparent;\r
+    border-color: #35353A;\r
+}\r
+.jqx-window-header-windowsphone, .jqx-input-button-header-windowsphone, .jqx-calendar-title-header-windowsphone, .jqx-grid-windowsphone .jqx-widget-header-windowsphone, .jqx-grid-header-windowsphone, .jqx-grid-column-header-windowsphone {font-size: 16px; font-family: 'Segoe WP', 'segoe ui', arial, sans-serif; border-color: #35353A; color: #ffffff; background: #3E3E42;}\r
+.jqx-grid-column-menubutton-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+ }\r
+.jqx-widget-windowsphone .jqx-grid-cell-selected-windowsphone, .jqx-grid-cell-selected-windowsphone{ background-color:#008a00 !important; border-color: #008a00 !important; font-size: 16px;  color:#fff !important}\r
+.jqx-widget-windowsphone .jqx-grid-cell-hover-windowsphone, .jqx-grid-cell-hover-windowsphone{ background-color:#3E3E42;}\r
+ /*applied to the column's sort button when the sort order is ascending.*/\r
+ .jqx-grid-column-sortascbutton-windowsphone {\r
+    background-image: url('images/metro-icon-up-white.png');\r
+ }\r
+.jqx-grid-column-sortdescbutton-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-checkbox-default-windowsphone {\r
+    background: black;\r
+    border-color: white;\r
+}\r
+.jqx-checkbox-check-checked-windowsphone{background:transparent url(images/wp_check_white.png) center center no-repeat}\r
+.jqx-checkbox-check-indeterminate-windowsphone{background:transparent url(images/wp_check_indeterminate_white.png) center center no-repeat}\r
+.jqx-checkbox-hover-windowsphone, .jqx-radiobutton-hover-windowsphone {\r
+    background-color: #000;\r
+    border-color: #fff;\r
+}\r
+.jqx-radiobutton-default-windowsphone {\r
+    background: #000;\r
+    border-color: #fff;\r
+}\r
+.jqx-radiobutton-check-checked-windowsphone {\r
+    background: #fff;\r
+    border-color: #fff;\r
+}\r
+.jqx-window-header-windowsphone {\r
+   background: #1f1f1f;\r
+   border-bottom-color: #1f1f1f !important;\r
+}\r
+.jqx-window-content-windowsphone {\r
+    background: #1f1f1f;\r
+ }\r
+.jqx-window-windowsphone {\r
+   border-color: #0c0c0c;\r
+}\r
+.jqx-scrollbar-thumb-state-normal-horizontal-windowsphone, .jqx-scrollbar-thumb-state-normal-windowsphone {\r
+    background: #686868; border-color: #686868;\r
+    -moz-border-radius: 10px;\r
+    -webkit-border-radius: 10px;\r
+    border-radius: 10px;\r
+}\r
+.jqx-scrollbar-thumb-state-hover-horizontal-windowsphone, .jqx-scrollbar-thumb-state-hover-windowsphone {\r
+    background: #9E9E9E; border-color: #9E9E9E;\r
+}\r
+.jqx-scrollbar-thumb-state-pressed-horizontal-windowsphone, .jqx-scrollbar-thumb-state-pressed-windowsphone {\r
+    background: #ffffff; border-color: #ffffff;\r
+}\r
+.jqx-scrollbar-button-state-normal-windowsphone\r
+{\r
+    border: 1px solid #3E3E42; \r
+    background: #3E3E42;\r
+}\r
+/*applied to the scrollbar buttons in hovered state.*/\r
+.jqx-scrollbar-button-state-hover-windowsphone\r
+{\r
+    border: 1px solid #3E3E42;\r
+    background: #3E3E42;\r
+}\r
+/*applied to the scrollbar buttons in pressed state.*/\r
+.jqx-scrollbar-button-state-pressed-windowsphone\r
+{\r
+    border: 1px solid #3E3E42;\r
+    background: #3E3E42;\r
+}\r
+\r
+/*icons*/\r
+.jqx-window-collapse-button-windowsphone\r
+{\r
+    background-image: url(images/metro-icon-up-white.png);\r
+}\r
+.jqx-window-collapse-button-collapsed-windowsphone {\r
+  background-image: url(images/metro-icon-down-white.png);\r
+}\r
+.jqx-icon-arrow-up-windowsphone, .jqx-expander-arrow-bottom-windowsphone, .jqx-menu-item-arrow-up-windowsphone\r
+{\r
+    background-image: url('images/metro-icon-up-white.png');\r
+}\r
+.jqx-icon-arrow-down-windowsphone, .jqx-expander-arrow-top-windowsphone, .jqx-tree-item-arrow-expand-windowsphone, .jqx-tree-item-arrow-expand-hover-windowsphone, .jqx-menu-item-arrow-down-windowsphone\r
+{\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+.jqx-icon-arrow-left-windowsphone, .jqx-menu-item-arrow-left-windowsphone\r
+{\r
+    background-image: url('images/metro-icon-left-white.png');\r
+}\r
+.jqx-icon-arrow-right-windowsphone, .jqx-menu-item-arrow-right-windowsphone, .jqx-tree-item-arrow-collapse-windowsphone, .jqx-tree-item-arrow-collapse-hover-windowsphone\r
+{\r
+    background-image: url('images/metro-icon-right-white.png') !important;\r
+}\r
+.jqx-tabs-arrow-left-windowsphone, .jqx-tree-item-arrow-collapse-rtl-windowsphone, .jqx-tree-item-arrow-collapse-hover-rtl-windowsphone\r
+{\r
+    background-image: url('images/metro-icon-left-white.png');\r
+}\r
+.jqx-tabs-arrow-right-windowsphone\r
+{\r
+    background-image: url('images/metro-icon-right-white.png');\r
+}\r
+.jqx-menu-item-arrow-up-selected-windowsphone, .jqx-icon-arrow-up-selected-windowsphone{background-image:url('images/metro-icon-up-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-down-selected-windowsphone, .jqx-icon-arrow-down-selected-windowsphone{background-image:url('images/metro-icon-down-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-left-selected-windowsphone, .jqx-icon-arrow-left-selected-windowsphone{background-image:url('images/metro-icon-left-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-menu-item-arrow-right-selected-windowsphone, .jqx-icon-arrow-right-selected-windowsphone{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat;background-position:center;}\r
+.jqx-window-close-button-windowsphone, .jqx-icon-close-windowsphone, .jqx-tabs-close-button-windowsphone, .jqx-tabs-close-button-hover-windowsphone, .jqx-tabs-close-button-selected-windowsphone{background-image:url(images/close_white.png);  background-repeat:no-repeat;  background-position:center}\r
+.jqx-listbox-feedback-windowsphone {\r
+    border-top: 1px dashed #fff;\r
+}\r
+.jqx-listitem-state-normal-touch-windowsphone {\r
+    padding-top: 5px;\r
+    padding-bottom: 5px;\r
+}\r
+.jqx-scrollbar-windowsphone .jqx-icon-arrow-up-selected-windowsphone{background-image:url('images/metro-icon-up-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-windowsphone .jqx-icon-arrow-down-selected-windowsphone{background-image:url('images/metro-icon-down-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-windowsphone .jqx-icon-arrow-left-selected-windowsphone{background-image:url('images/metro-icon-left-white.png'); background-repeat:no-repeat; background-position:center;}\r
+.jqx-scrollbar-windowsphone .jqx-icon-arrow-right-selected-windowsphone{background-image:url('images/metro-icon-right-white.png');background-repeat:no-repeat; background-position:center;}\r
+.jqx-combobox-arrow-normal-windowsphone .jqx-icon-arrow-down-windowsphone {\r
+    background-image: url('images/metro-icon-down.png');\r
+}\r
+.jqx-combobox-arrow-selected-windowsphone .jqx-icon-arrow-down-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+}\r
+\r
+.jqx-input-button-content-windowsphone\r
+{  \r
+    font-size: 13px;\r
+    background: #000;\r
+    border-color: #2F2F2F;\r
+}\r
+.jqx-input-button-header-windowsphone {\r
+    padding-top: 2px !important;\r
+    padding-bottom: 2px !important;\r
+    background: #3E3E42;\r
+    border-color: #2F2F2F;\r
+}\r
+.jqx-slider-button-windowsphone\r
+{\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+    padding: 4px !important;\r
+}\r
+.jqx-slider-slider-windowsphone {\r
+    width: 6px;\r
+    -moz-border-radius: 0px;\r
+    -webkit-border-radius: 0px;\r
+    border-radius: 0px;\r
+    background: #fff;\r
+    border-color: #D5D5D5;\r
+}\r
+.jqx-listmenu-header-label-windowsphone {\r
+    font-size: 24px;\r
+    margin-left: -5px;\r
+}\r
+.jqx-listmenu-separator-windowsphone {\r
+    font-size: 16px; \r
+    font-family: 'Segoe WP', 'segoe ui', arial, sans-serif;\r
+}\r
+.jqx-listmenu-item-label-windowsphone {\r
+    display: inline-block;\r
+    width: 100%;\r
+    height: 100%;\r
+}\r
+.jqx-listmenu-item-windowsphone a:link, .jqx-listmenu-item-windowsphone a:visited {\r
+    display: inline-block;\r
+    text-decoration: none;\r
+    color: inherit;\r
+    font-size: 16px;\r
+    color: #fff;\r
+    width: 100%;\r
+    height: 100%;\r
+    padding: 15px;\r
+}\r
+.jqx-listmenu-item-windowsphone {\r
+    padding: 0px;\r
+}\r
+.jqx-dropdownlist-state-normal-windowsphone, .jqx-dropdownlist-state-hover-windowsphone, .jqx-dropdownlist-state-selected-windowsphone,\r
+.jqx-scrollbar-button-state-hover-windowsphone, .jqx-scrollbar-button-state-normal-windowsphone, .jqx-scrollbar-button-state-pressed-windowsphone,\r
+.jqx-scrollbar-thumb-state-normal-horizontal-windowsphone, .jqx-scrollbar-thumb-state-hover-horizontal-windowsphone, .jqx-scrollbar-thumb-state-pressed-horizontal-windowsphone,\r
+.jqx-scrollbar-thumb-state-normal-windowsphone, .jqx-scrollbar-thumb-state-pressed-windowsphone, .jqx-button-windowsphone, .jqx-tree-item-hover-windowsphone, .jqx-tree-item-selected-windowsphone,\r
+.jqx-tree-item-windowsphone, .jqx-menu-item-windowsphone, .jqx-menu-item-hover-windowsphone, .jqx-menu-item-selected-windowsphone, .jqx-menu-item-top-windowsphone, .jqx-menu-item-top-hover-windowsphone, \r
+.jqx-menu-item-top-selected-windowsphone, .jqx-slider-button-windowsphone, .jqx-slider-slider-windowsphone\r
+ {\r
+    -webkit-transition: background-color 100ms linear;\r
+     -moz-transition: background-color 100ms linear;\r
+     -o-transition: background-color 100ms linear;\r
+     -ms-transition: background-color 100ms linear;\r
+     transition: background-color 100ms linear;\r
+}\r
+.jqx-switchbutton-windowsphone {\r
+    -moz-border-radius: 0px; \r
+    -webkit-border-radius: 0px; \r
+    border-radius: 0px;\r
+    border: 2px solid #FFFFFF;\r
+}\r
+.jqx-switchbutton-thumb-windowsphone {\r
+    width: 16px;\r
+    background: #fff;\r
+    border: 2px solid #000;\r
+}\r
+.jqx-switchbutton-label-on-windowsphone {\r
+    background: #008a00;\r
+    color: #008a00;\r
+    border-color: #000;\r
+}\r
+.jqx-switchbutton-label-off-windowsphone {\r
+    background: #000;\r
+    color: #000;\r
+}\r
+\r
+.jqx-switchbutton-wrapper-windowsphone {\r
+}\r
+.jqx-icon-arrow-first-windowsphone\r
+{\r
+    background-image: url('images/icon-first-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-arrow-last-windowsphone\r
+{\r
+    background-image: url('images/icon-last-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-progressbar-text-windowsphone {\r
+    font-size: 16px;\r
+}\r
+.jqx-grid-group-collapse-windowsphone {\r
+    background-image: url(images/metro-icon-right-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-collapse-rtl-windowsphone\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-left-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-group-expand-windowsphone, .jqx-grid-group-expand-rtl-windowsphone\r
+{\r
+    padding-right: 0px;\r
+    background-image: url(images/metro-icon-down-white.png);\r
+    background-position: 50% 50%;\r
+    background-repeat: no-repeat;\r
+}\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-selected-windowsphone>.jqx-grid-group-expand-windowsphone,\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-hover-windowsphone>.jqx-grid-group-expand-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-selected-windowsphone>.jqx-grid-group-collapse-windowsphone,\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-hover-windowsphone>.jqx-grid-group-collapse-windowsphone {\r
+    background-image: url('images/metro-icon-right-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-selected-windowsphone>.jqx-grid-group-collapse-rtl-windowsphone,\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-hover-windowsphone>.jqx-grid-group-collapse-rtl-windowsphone {\r
+    background-image: url('images/metro-icon-left-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-selected-windowsphone>.jqx-grid-group-expand-rtl-windowsphone,\r
+.jqx-grid-cell-windowsphone.jqx-grid-cell-hover-windowsphone>.jqx-grid-group-expand-rtl-windowsphone {\r
+    background-image: url('images/metro-icon-down-white.png');\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-tree-grid-expand-button-windowsphone {\r
+    margin-top: 5px;\r
+}\r
+.jqx-tree-grid-checkbox-windowsphone, .jqx-tree-grid-collapse-button-windowsphone {\r
+    margin-top: 3px;\r
+}\r
+.jqx-grid-table-windowsphone {\r
+    border-color: #000;\r
+}\r
+.jqx-icon-search-windowsphone\r
+{\r
+    background-image: url(images/search_white.png);\r
+    background-repeat: no-repeat;\r
+    background-position: center;\r
+}\r
+.jqx-icon-calendar-windowsphone, .jqx-icon-calendar-hover-windowsphone, .jqx-icon-calendar-pressed-windowsphone {\r
+    background-image: url('images/icon-calendar-white.png');\r
+}\r
+.jqx-icon-time-windowsphone, .jqx-icon-time-hover-windowsphone, .jqx-icon-time-pressed-windowsphone {\r
+    background-image: url('images/icon-time-white.png');\r
+}\r
+.jqx-calendar-cell-today-windowsphone {\r
+    color: black;\r
+}\r
+.jqx-menu-minimized-button-windowsphone {\r
+   background-image: url('images/icon-menu-minimized-white.png');\r
+}\r
+.jqx-editor-toolbar-icon-windowsphone {\r
+    background: url('images/html_editor_white.png') no-repeat;\r
+}\r
+.jqx-file-upload-file-name-windowsphone{padding:3px;}\r
+.jqx-file-upload-file-row-windowsphone{ height: 40px;}\r
+.jqx-layout-windowsphone\r
+{\r
+    background-color: #35353A;\r
+}\r
+.jqx-layout-pseudo-window-pin-icon-windowsphone\r
+{\r
+    background-image: url("images/pin-white.png");\r
+}\r
+.jqx-layout-pseudo-window-pinned-icon-windowsphone\r
+{\r
+    background-image: url("images/pinned-white.png");\r
+}\r
+.jqx-scheduler-windowsphone, .jqx-scheduler-toolbar-windowsphone, .jqx-scheduler-time-column-windowsphone, .jqx-scheduler-toolbar-details-windowsphone {\r
+    color: white !important;\r
+    background: black !important;\r
+}
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/templates/launcher.html b/wrt/wrt_support/sample/launcher/templates/launcher.html
new file mode 100644 (file)
index 0000000..3a246c6
--- /dev/null
@@ -0,0 +1,30 @@
+<script type="text/template" id="launcher-template">
+  <img id="wallpaper" class="abs" src="assets/images/misc/wallpaper.jpg">
+        <div class="abs desktop" id="desktop"></div>
+        <div class="abs" id="bar_top">
+            <span class="float_right" id="clock" title="October 6, 2015">Tuesday 9:40 PM</span>
+                         <ul>
+                <li>
+                    <a class="menu_trigger" href="#">WAS</a>
+                     <ul class="menu was_menu" style="display: none;">
+                    </ul>
+                </li>
+            </ul>
+            <ul>
+                <li>
+                    <a class="menu_trigger" href="#">Application</a>
+                    <ul class="menu app_menu" style="display: none;">
+                    </ul>
+                </li>
+            </ul>
+
+        </div>
+        <div class="abs" id="bar_bottom">
+            <a class="float_left" href="#" id="show_desktop" title="Show Desktop">
+            <img src="assets/images/icons/icon_22_desktop.png">
+            </a>
+            <a class="float_right" href="http://www.samsung.com" title="Secure Hosting">
+            <img src="assets/images/misc/samsung_small.png">
+            </a>
+        </div>
+</script>
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/templates/menu.html b/wrt/wrt_support/sample/launcher/templates/menu.html
new file mode 100644 (file)
index 0000000..8be39b9
--- /dev/null
@@ -0,0 +1,3 @@
+<script type="text/template" id="menu-item-template">
+       <a class="menu_item" href=""><%=name%></a>
+</script>
\ No newline at end of file
diff --git a/wrt/wrt_support/sample/launcher/templates/popover.html b/wrt/wrt_support/sample/launcher/templates/popover.html
new file mode 100644 (file)
index 0000000..cd0e9b6
--- /dev/null
@@ -0,0 +1,7 @@
+<script type="text/template" id="popover-template">
+   <div class="popover">
+               <ul>
+                       <li>Remove</li>
+               </ul>
+    </div>
+</script>
diff --git a/wrt/wrt_support/sample/launcher/templates/webapp.html b/wrt/wrt_support/sample/launcher/templates/webapp.html
new file mode 100644 (file)
index 0000000..cd57ce5
--- /dev/null
@@ -0,0 +1,4 @@
+<script type="text/template" id="webapp-template">
+    <img src="<%=icon %>"/">
+       <%=name %>
+</script>
diff --git a/wrt/wrt_support/sample/wgt/extensions_settings.wgt b/wrt/wrt_support/sample/wgt/extensions_settings.wgt
new file mode 100644 (file)
index 0000000..3cc95c4
Binary files /dev/null and b/wrt/wrt_support/sample/wgt/extensions_settings.wgt differ
diff --git a/wrt/wrt_support/sample/wgt/icon/icon_default.png b/wrt/wrt_support/sample/wgt/icon/icon_default.png
new file mode 100644 (file)
index 0000000..728efe0
Binary files /dev/null and b/wrt/wrt_support/sample/wgt/icon/icon_default.png differ
diff --git a/wrt/wrt_support/sample/wgt/icon/icon_extensions_settings.png b/wrt/wrt_support/sample/wgt/icon/icon_extensions_settings.png
new file mode 100644 (file)
index 0000000..6275fd8
Binary files /dev/null and b/wrt/wrt_support/sample/wgt/icon/icon_extensions_settings.png differ
diff --git a/wrt/wrt_support/sample/wgt/icon/icon_webgl.png b/wrt/wrt_support/sample/wgt/icon/icon_webgl.png
new file mode 100755 (executable)
index 0000000..d97c01d
Binary files /dev/null and b/wrt/wrt_support/sample/wgt/icon/icon_webgl.png differ
diff --git a/wrt/wrt_support/sample/wgt/webgl.wgt b/wrt/wrt_support/sample/wgt/webgl.wgt
new file mode 100644 (file)
index 0000000..26f2ba6
Binary files /dev/null and b/wrt/wrt_support/sample/wgt/webgl.wgt differ